@wix/bex-core 1.440.0 → 1.441.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/InMemoryBackend/InMemoryBackend.js.map +1 -1
- package/dist/cjs/InMemoryBackend/index.js.map +1 -1
- package/dist/cjs/assets/locale/messages_cs.json +1 -1
- package/dist/cjs/assets/locale/messages_en.json +1 -1
- package/dist/cjs/assets/locale/messages_es.json +1 -1
- package/dist/cjs/assets/locale/messages_fr.json +1 -1
- package/dist/cjs/assets/locale/messages_nl.json +1 -1
- package/dist/cjs/assets/locale/messages_uk.json +1 -1
- package/dist/cjs/assets/locale/messages_visuale2e.json +3 -1
- package/dist/cjs/exports/InMemoryBackend.js.map +1 -1
- package/dist/cjs/exports/bi/index.js.map +1 -1
- package/dist/cjs/exports/events.js.map +1 -1
- package/dist/cjs/exports/history.js.map +1 -1
- package/dist/cjs/exports/mobx.js.map +1 -1
- package/dist/cjs/exports/react.js.map +1 -1
- package/dist/cjs/exports/testkit/client.js.map +1 -1
- package/dist/cjs/exports/testkit/internal.js.map +1 -1
- package/dist/cjs/exports/testkit/testkit.js.map +1 -1
- package/dist/cjs/exports/util.js.map +1 -1
- package/dist/cjs/hooks/collectionConfig.js.map +1 -1
- package/dist/cjs/hooks/collectionConfigPartials.js.map +1 -1
- package/dist/cjs/hooks/createCollection.js.map +1 -1
- package/dist/cjs/hooks/createCollectionConfig.js.map +1 -1
- package/dist/cjs/hooks/index.js.map +1 -1
- package/dist/cjs/hooks/paginationModeConfig.js.map +1 -1
- package/dist/cjs/hooks/useAmbassadorCollection.js.map +1 -1
- package/dist/cjs/hooks/useCollection/index.js.map +1 -1
- package/dist/cjs/hooks/useCollection/useCollection.js.map +1 -1
- package/dist/cjs/hooks/useCollectionPageState.js.map +1 -1
- package/dist/cjs/hooks/useEmptyStateTexts.js.map +1 -1
- package/dist/cjs/hooks/useExport.js.map +1 -1
- package/dist/cjs/hooks/useExportConfig.js.map +1 -1
- package/dist/cjs/hooks/useOptimisticActions.js.map +1 -1
- package/dist/cjs/hooks/usePicker.js.map +1 -1
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/mocks/PartialWindowMock.js.map +1 -1
- package/dist/cjs/mocks/partialLodashMock.js.map +1 -1
- package/dist/cjs/model/actionMove.js.map +1 -1
- package/dist/cjs/model/arrayField.js.map +1 -1
- package/dist/cjs/model/cairoEnvironment.js.map +1 -1
- package/dist/cjs/model/cairoEssentials.js.map +1 -1
- package/dist/cjs/model/cairoInitialProps.js.map +1 -1
- package/dist/cjs/model/collectionEvents.js.map +1 -1
- package/dist/cjs/model/commonTypes.js.map +1 -1
- package/dist/cjs/model/computedQuery/computedQuery.js.map +1 -1
- package/dist/cjs/model/computedQuery/index.js.map +1 -1
- package/dist/cjs/model/computedResult.js.map +1 -1
- package/dist/cjs/model/dataCapsule.js.map +1 -1
- package/dist/cjs/model/dataResultRaw/dataResultRaw.js.map +1 -1
- package/dist/cjs/model/dataResultRaw/index.js.map +1 -1
- package/dist/cjs/model/fetchDataFn.js.map +1 -1
- package/dist/cjs/model/filter.js.map +1 -1
- package/dist/cjs/model/fqdn.js.map +1 -1
- package/dist/cjs/model/httpClient.js.map +1 -1
- package/dist/cjs/model/index.js.map +1 -1
- package/dist/cjs/model/keyedItem.js.map +1 -1
- package/dist/cjs/model/queryOptions.js.map +1 -1
- package/dist/cjs/model/queryResult.js.map +1 -1
- package/dist/cjs/model/queryResultStatus.js.map +1 -1
- package/dist/cjs/model/queryStatus.js.map +1 -1
- package/dist/cjs/model/taskStatus.js.map +1 -1
- package/dist/cjs/model/toast.js.map +1 -1
- package/dist/cjs/providers/CairoContainerOverridesContext.js.map +1 -1
- package/dist/cjs/providers/CairoContainerProvider/CairoContainerProvider.js.map +1 -1
- package/dist/cjs/providers/CairoContainerProvider/index.js.map +1 -1
- package/dist/cjs/providers/CairoInitialPropsProvider.js.map +1 -1
- package/dist/cjs/providers/CairoProvider/CairoProvider.js +1 -1
- package/dist/cjs/providers/CairoProvider/CairoProvider.js.map +1 -1
- package/dist/cjs/providers/CairoProvider/index.js.map +1 -1
- package/dist/cjs/providers/CollectionContext.js.map +1 -1
- package/dist/cjs/providers/CollectionPageContext.js.map +1 -1
- package/dist/cjs/providers/FormWidgetContext.js.map +1 -1
- package/dist/cjs/providers/PageContext.js.map +1 -1
- package/dist/cjs/providers/createContext.js.map +1 -1
- package/dist/cjs/providers/index.js.map +1 -1
- package/dist/cjs/services/AccountPreferencesMergeStrategy.js.map +1 -1
- package/dist/cjs/services/AccountPreferencesStrategy.js.map +1 -1
- package/dist/cjs/services/AppSettingsCapsule.js.map +1 -1
- package/dist/cjs/services/CairoError.js.map +1 -1
- package/dist/cjs/services/CairoErrorCode.js.map +1 -1
- package/dist/cjs/services/DataCapsuleMergeStrategy.js.map +1 -1
- package/dist/cjs/services/ModalLayoutProps.js.map +1 -1
- package/dist/cjs/services/MonitorLogger.js.map +1 -1
- package/dist/cjs/services/cairoMonitor.js.map +1 -1
- package/dist/cjs/services/cairoTranslations.js.map +1 -1
- package/dist/cjs/services/createAccountComponentSettings.js.map +1 -1
- package/dist/cjs/services/createAppSettingsCapsule.js.map +1 -1
- package/dist/cjs/services/createComponentSettings.js.map +1 -1
- package/dist/cjs/services/dataExtensionService.js.map +1 -1
- package/dist/cjs/services/environment.js.map +1 -1
- package/dist/cjs/services/experiments.js.map +1 -1
- package/dist/cjs/services/fetchTranslations.js.map +1 -1
- package/dist/cjs/services/fetchTranslationsPreBundled.js.map +1 -1
- package/dist/cjs/services/focusManager.js.map +1 -1
- package/dist/cjs/services/getErrorMonitorCompat.js.map +1 -1
- package/dist/cjs/services/history.js.map +1 -1
- package/dist/cjs/services/index.js.map +1 -1
- package/dist/cjs/services/mapGuidComponentIdToNonGuid.js.map +1 -1
- package/dist/cjs/services/navigationManager.js.map +1 -1
- package/dist/cjs/services/onlineManager.js.map +1 -1
- package/dist/cjs/services/partialLodash.js.map +1 -1
- package/dist/cjs/services/partialWindow.js.map +1 -1
- package/dist/cjs/services/replaceSearchParamsWith.js.map +1 -1
- package/dist/cjs/services/reportBi.js.map +1 -1
- package/dist/cjs/services/translations.js.map +1 -1
- package/dist/cjs/services/translationsImportsMap.js +1 -1
- package/dist/cjs/services/translationsImportsMap.js.map +1 -1
- package/dist/cjs/state/ArrayFilterState/ArrayFilterState.js.map +1 -1
- package/dist/cjs/state/ArrayFilterState/index.js.map +1 -1
- package/dist/cjs/state/BeforeUnloadCompatState.js.map +1 -1
- package/dist/cjs/state/BulkActionModalState.js.map +1 -1
- package/dist/cjs/state/BulkSelectState.js.map +1 -1
- package/dist/cjs/state/CairoContainer.js.map +1 -1
- package/dist/cjs/state/CollectionBIReporter.js.map +1 -1
- package/dist/cjs/state/CollectionOptimisticActions.js.map +1 -1
- package/dist/cjs/state/CollectionOptimisticActionsState.js.map +1 -1
- package/dist/cjs/state/CollectionOptimisticExecutor.js.map +1 -1
- package/dist/cjs/state/CollectionOptimisticHelpers.js.map +1 -1
- package/dist/cjs/state/CollectionOptimisticPatch.js.map +1 -1
- package/dist/cjs/state/CollectionOptimisticProcessor.js.map +1 -1
- package/dist/cjs/state/CollectionOptimisticSequenceExecutor.js.map +1 -1
- package/dist/cjs/state/CollectionPageState.js.map +1 -1
- package/dist/cjs/state/CollectionState.js.map +1 -1
- package/dist/cjs/state/ConditionalModalState.js.map +1 -1
- package/dist/cjs/state/CustomFieldModalBiReporter.js.map +1 -1
- package/dist/cjs/state/CustomFieldModalState.js.map +1 -1
- package/dist/cjs/state/CustomFieldsViewWidgetState.js.map +1 -1
- package/dist/cjs/state/CustomFilterState/CustomFilterState.js.map +1 -1
- package/dist/cjs/state/CustomFilterState/index.js.map +1 -1
- package/dist/cjs/state/DataExtensionState.js.map +1 -1
- package/dist/cjs/state/DataExtensionStateBIReporter.js.map +1 -1
- package/dist/cjs/state/ExportJobState.js.map +1 -1
- package/dist/cjs/state/ExportState.js.map +1 -1
- package/dist/cjs/state/ExportStateBIReporter.js.map +1 -1
- package/dist/cjs/state/FedopsReporter.js.map +1 -1
- package/dist/cjs/state/FiltersPanelModalCompatBridge.js.map +1 -1
- package/dist/cjs/state/FormPageState.js.map +1 -1
- package/dist/cjs/state/ModalState.js.map +1 -1
- package/dist/cjs/state/MultiCollectionSupport.js.map +1 -1
- package/dist/cjs/state/OnlineState.js.map +1 -1
- package/dist/cjs/state/PageState.js.map +1 -1
- package/dist/cjs/state/Pagination.js.map +1 -1
- package/dist/cjs/state/PaginationMode.js.map +1 -1
- package/dist/cjs/state/PaginationModeCursor.js.map +1 -1
- package/dist/cjs/state/PaginationModeOffset.js.map +1 -1
- package/dist/cjs/state/PickerState.js.map +1 -1
- package/dist/cjs/state/PromiseState.js.map +1 -1
- package/dist/cjs/state/PromisesSequence.js.map +1 -1
- package/dist/cjs/state/PromisesState.js.map +1 -1
- package/dist/cjs/state/QueryHistoryState.js.map +1 -1
- package/dist/cjs/state/QueryPendingState.js.map +1 -1
- package/dist/cjs/state/QueryPendingStateBIReporter.js.map +1 -1
- package/dist/cjs/state/QueryResultSimulation.js.map +1 -1
- package/dist/cjs/state/QueryResultSimulationDefault.js.map +1 -1
- package/dist/cjs/state/QueryResultState.js.map +1 -1
- package/dist/cjs/state/QueryState.js.map +1 -1
- package/dist/cjs/state/RangeFilterState/RangeFilterState.js.map +1 -1
- package/dist/cjs/state/RangeFilterState/dateRangeUtils.js.map +1 -1
- package/dist/cjs/state/RangeFilterState/index.js.map +1 -1
- package/dist/cjs/state/RefObject.js.map +1 -1
- package/dist/cjs/state/ReturnFocus.js.map +1 -1
- package/dist/cjs/state/SelectMapState.js.map +1 -1
- package/dist/cjs/state/SelectState.js.map +1 -1
- package/dist/cjs/state/SelectionStatus.js.map +1 -1
- package/dist/cjs/state/SelectionStatusCairoPreset.js.map +1 -1
- package/dist/cjs/state/SidePanelState.js.map +1 -1
- package/dist/cjs/state/SortState.js.map +1 -1
- package/dist/cjs/state/StringFilterState/StringFilterState.js.map +1 -1
- package/dist/cjs/state/StringFilterState/index.js.map +1 -1
- package/dist/cjs/state/TaskState.js.map +1 -1
- package/dist/cjs/state/TextOverflowState.js.map +1 -1
- package/dist/cjs/state/ToggleState.js.map +1 -1
- package/dist/cjs/state/TransitionState.js.map +1 -1
- package/dist/cjs/state/ValueBox.js.map +1 -1
- package/dist/cjs/state/buildCairoContainer.js.map +1 -1
- package/dist/cjs/state/getJobItemsAbsoluteCounter.js.map +1 -1
- package/dist/cjs/state/index.js.map +1 -1
- package/dist/cjs/state/mutationObserverCompat.js.map +1 -1
- package/dist/cjs/state/onItemsCreated.js.map +1 -1
- package/dist/cjs/state/optimistic-simulation/filterPageByPatches.js.map +1 -1
- package/dist/cjs/state/optimistic-simulation/index.js.map +1 -1
- package/dist/cjs/state/optimistic-simulation/mergePatchedItems.js.map +1 -1
- package/dist/cjs/state/optimistic-simulation/orderByMoves.js.map +1 -1
- package/dist/cjs/state/optimistic-simulation/orderByOrders.js.map +1 -1
- package/dist/cjs/state/optimistic-simulation/prepareItemsToMergeIntoPage.js.map +1 -1
- package/dist/cjs/state/optimistic-simulation/transformItemByUpdateAllPatches.js.map +1 -1
- package/dist/cjs/state/optimistic-simulation/trimAddedItemsFromPagePredicate.js.map +1 -1
- package/dist/cjs/state/resizeObserverCompat.js.map +1 -1
- package/dist/cjs/state/snapshot.js.map +1 -1
- package/dist/cjs/state/useExperimentsCompat.js.map +1 -1
- package/dist/cjs/state/warmUpPickerStandalone.js.map +1 -1
- package/dist/cjs/test-utils/flush.js.map +1 -1
- package/dist/cjs/test-utils/index.js.map +1 -1
- package/dist/cjs/test-utils/jest.js.map +1 -1
- package/dist/cjs/testkit/CairoContainer.driver.js.map +1 -1
- package/dist/cjs/testkit/ProductsCollectionState.driver.js.map +1 -1
- package/dist/cjs/testkit/appSettingsMocks.js.map +1 -1
- package/dist/cjs/testkit/client.js.map +1 -1
- package/dist/cjs/testkit/country.js.map +1 -1
- package/dist/cjs/testkit/createCountriesBackend.js.map +1 -1
- package/dist/cjs/testkit/createFoldersBackend.js.map +1 -1
- package/dist/cjs/testkit/createProductsBackend.js.map +1 -1
- package/dist/cjs/testkit/exportServiceMocks.js.map +1 -1
- package/dist/cjs/testkit/folder.js.map +1 -1
- package/dist/cjs/testkit/folderFilters.js.map +1 -1
- package/dist/cjs/testkit/index.js.map +1 -1
- package/dist/cjs/testkit/internal.js.map +1 -1
- package/dist/cjs/testkit/matchMediaMock.js.map +1 -1
- package/dist/cjs/testkit/nestifyItems.js.map +1 -1
- package/dist/cjs/testkit/product.js.map +1 -1
- package/dist/cjs/testkit/productFilters.js.map +1 -1
- package/dist/cjs/util/OfflineError.js.map +1 -1
- package/dist/cjs/util/addEventListener.js.map +1 -1
- package/dist/cjs/util/assertKey.js.map +1 -1
- package/dist/cjs/util/index.js.map +1 -1
- package/dist/cjs/util/isHttpError.js.map +1 -1
- package/dist/cjs/util/parseFqdn.js.map +1 -1
- package/dist/cjs/util/shouldRedirectToLogin.js.map +1 -1
- package/dist/cjs/util/showToastCompat.js.map +1 -1
- package/dist/cjs/util/slugify.js.map +1 -1
- package/dist/cjs/util/syncWithSharedQuery.js.map +1 -1
- package/dist/cjs/util/typedEmitter.js.map +1 -1
- package/dist/cjs/util/withoutDefaults.js.map +1 -1
- package/dist/esm/assets/locale/messages_cs.json +1 -1
- package/dist/esm/assets/locale/messages_en.json +1 -1
- package/dist/esm/assets/locale/messages_es.json +1 -1
- package/dist/esm/assets/locale/messages_fr.json +1 -1
- package/dist/esm/assets/locale/messages_nl.json +1 -1
- package/dist/esm/assets/locale/messages_uk.json +1 -1
- package/dist/esm/assets/locale/messages_visuale2e.json +3 -1
- package/package.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["FedopsReporter","constructor","params","_defineProperty2","default","componentName","collection","internalMonitor","emitter","reportInteractionStart","once","isStale","customProps","cached","reportInteractionEnd","onFullRenderStart","exports"],"sources":["../../../src/state/FedopsReporter.ts"],"sourcesContent":["import { FiltersMap } from '../model';\nimport { WixPatternsMonitor } from '../services';\nimport { CollectionState } from './CollectionState';\n\nexport interface FedopsReporterParams<T, F extends FiltersMap> {\n componentName: string;\n collection: CollectionState<T, F>;\n internalMonitor: WixPatternsMonitor;\n}\n\nexport class FedopsReporter<T, F extends FiltersMap> {\n componentName;\n collection;\n internalMonitor;\n\n constructor(params: FedopsReporterParams<T, F>) {\n this.componentName = params.componentName;\n this.collection = params.collection;\n this.internalMonitor = params.internalMonitor;\n\n const {\n internalMonitor,\n componentName,\n collection: { emitter },\n } = this;\n\n internalMonitor.reportInteractionStart(componentName, 'initial-load');\n internalMonitor.reportInteractionStart(componentName, 'e2e');\n\n emitter.once('beforeInitialFetch', ({ isStale }) => {\n const customProps = { cached: !isStale };\n\n internalMonitor.reportInteractionEnd(componentName, 'initial-load');\n internalMonitor.reportInteractionStart(\n componentName,\n 'initial-fetch-data',\n customProps,\n );\n\n emitter.once('ready', () => {\n internalMonitor.reportInteractionEnd(\n componentName,\n 'initial-fetch-data',\n customProps,\n );\n });\n });\n }\n\n onFullRenderStart() {\n const { internalMonitor, componentName } = this;\n\n internalMonitor.reportInteractionStart(\n componentName,\n 'initial-full-render',\n );\n\n return () => {\n internalMonitor.reportInteractionEnd(\n componentName,\n 'initial-full-render',\n );\n internalMonitor.reportInteractionEnd(componentName, 'e2e');\n };\n }\n}\n"],"mappings":";;;;;;AAUO,MAAMA,cAAc,CAA0B;EAKnDC,WAAWA,CAACC,MAAkC,EAAE;IAAA,IAAAC,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAC9C,IAAI,CAACC,aAAa,GAAGH,MAAM,CAACG,aAAa;IACzC,IAAI,CAACC,UAAU,GAAGJ,MAAM,CAACI,UAAU;IACnC,IAAI,CAACC,eAAe,GAAGL,MAAM,CAACK,eAAe;IAE7C,MAAM;MACJA,eAAe;MACfF,aAAa;MACbC,UAAU,EAAE;QAAEE;MAAQ;IACxB,CAAC,GAAG,IAAI;IAERD,eAAe,CAACE,sBAAsB,CAACJ,aAAa,EAAE,cAAc,CAAC;IACrEE,eAAe,CAACE,sBAAsB,CAACJ,aAAa,EAAE,KAAK,CAAC;IAE5DG,OAAO,CAACE,IAAI,CAAC,oBAAoB,EAAE,CAAC;MAAEC;IAAQ,CAAC,KAAK;MAClD,MAAMC,WAAW,GAAG;QAAEC,MAAM,EAAE,CAACF;MAAQ,CAAC;MAExCJ,eAAe,CAACO,oBAAoB,CAACT,aAAa,EAAE,cAAc,CAAC;MACnEE,eAAe,CAACE,sBAAsB,CACpCJ,aAAa,EACb,oBAAoB,EACpBO,WACF,CAAC;MAEDJ,OAAO,CAACE,IAAI,CAAC,OAAO,EAAE,MAAM;QAC1BH,eAAe,CAACO,oBAAoB,CAClCT,aAAa,EACb,oBAAoB,EACpBO,WACF,CAAC;MACH,CAAC,CAAC;IACJ,CAAC,CAAC;EACJ;EAEAG,iBAAiBA,CAAA,EAAG;IAClB,MAAM;MAAER,eAAe;MAAEF;IAAc,CAAC,GAAG,IAAI;IAE/CE,eAAe,CAACE,sBAAsB,CACpCJ,aAAa,EACb,qBACF,CAAC;IAED,OAAO,MAAM;MACXE,eAAe,CAACO,oBAAoB,CAClCT,aAAa,EACb,qBACF,CAAC;MACDE,eAAe,CAACO,oBAAoB,CAACT,aAAa,EAAE,KAAK,CAAC;IAC5D,CAAC;EACH;AACF;AAACW,OAAA,CAAAhB,cAAA,GAAAA,cAAA"}
|
|
1
|
+
{"version":3,"names":["FedopsReporter","constructor","params","_defineProperty2","default","componentName","collection","internalMonitor","emitter","reportInteractionStart","once","isStale","customProps","cached","reportInteractionEnd","onFullRenderStart","exports"],"sources":["../../../src/state/FedopsReporter.ts"],"sourcesContent":["import { FiltersMap } from '../model';\nimport { WixPatternsMonitor } from '../services';\nimport { CollectionState } from './CollectionState';\n\nexport interface FedopsReporterParams<T, F extends FiltersMap> {\n componentName: string;\n collection: CollectionState<T, F>;\n internalMonitor: WixPatternsMonitor;\n}\n\nexport class FedopsReporter<T, F extends FiltersMap> {\n componentName;\n collection;\n internalMonitor;\n\n constructor(params: FedopsReporterParams<T, F>) {\n this.componentName = params.componentName;\n this.collection = params.collection;\n this.internalMonitor = params.internalMonitor;\n\n const {\n internalMonitor,\n componentName,\n collection: { emitter },\n } = this;\n\n internalMonitor.reportInteractionStart(componentName, 'initial-load');\n internalMonitor.reportInteractionStart(componentName, 'e2e');\n\n emitter.once('beforeInitialFetch', ({ isStale }) => {\n const customProps = { cached: !isStale };\n\n internalMonitor.reportInteractionEnd(componentName, 'initial-load');\n internalMonitor.reportInteractionStart(\n componentName,\n 'initial-fetch-data',\n customProps,\n );\n\n emitter.once('ready', () => {\n internalMonitor.reportInteractionEnd(\n componentName,\n 'initial-fetch-data',\n customProps,\n );\n });\n });\n }\n\n onFullRenderStart() {\n const { internalMonitor, componentName } = this;\n\n internalMonitor.reportInteractionStart(\n componentName,\n 'initial-full-render',\n );\n\n return () => {\n internalMonitor.reportInteractionEnd(\n componentName,\n 'initial-full-render',\n );\n internalMonitor.reportInteractionEnd(componentName, 'e2e');\n };\n }\n}\n"],"mappings":";;;;;;AAUO,MAAMA,cAAc,CAA0B;EAKnDC,WAAWA,CAACC,MAAkC,EAAE;IAAA,IAAAC,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAC9C,IAAI,CAACC,aAAa,GAAGH,MAAM,CAACG,aAAa;IACzC,IAAI,CAACC,UAAU,GAAGJ,MAAM,CAACI,UAAU;IACnC,IAAI,CAACC,eAAe,GAAGL,MAAM,CAACK,eAAe;IAE7C,MAAM;MACJA,eAAe;MACfF,aAAa;MACbC,UAAU,EAAE;QAAEE;MAAQ;IACxB,CAAC,GAAG,IAAI;IAERD,eAAe,CAACE,sBAAsB,CAACJ,aAAa,EAAE,cAAc,CAAC;IACrEE,eAAe,CAACE,sBAAsB,CAACJ,aAAa,EAAE,KAAK,CAAC;IAE5DG,OAAO,CAACE,IAAI,CAAC,oBAAoB,EAAE,CAAC;MAAEC;IAAQ,CAAC,KAAK;MAClD,MAAMC,WAAW,GAAG;QAAEC,MAAM,EAAE,CAACF;MAAQ,CAAC;MAExCJ,eAAe,CAACO,oBAAoB,CAACT,aAAa,EAAE,cAAc,CAAC;MACnEE,eAAe,CAACE,sBAAsB,CACpCJ,aAAa,EACb,oBAAoB,EACpBO,WACF,CAAC;MAEDJ,OAAO,CAACE,IAAI,CAAC,OAAO,EAAE,MAAM;QAC1BH,eAAe,CAACO,oBAAoB,CAClCT,aAAa,EACb,oBAAoB,EACpBO,WACF,CAAC;MACH,CAAC,CAAC;IACJ,CAAC,CAAC;EACJ;EAEAG,iBAAiBA,CAAA,EAAG;IAClB,MAAM;MAAER,eAAe;MAAEF;IAAc,CAAC,GAAG,IAAI;IAE/CE,eAAe,CAACE,sBAAsB,CACpCJ,aAAa,EACb,qBACF,CAAC;IAED,OAAO,MAAM;MACXE,eAAe,CAACO,oBAAoB,CAClCT,aAAa,EACb,qBACF,CAAC;MACDE,eAAe,CAACO,oBAAoB,CAACT,aAAa,EAAE,KAAK,CAAC;IAC5D,CAAC;EACH;AACF;AAACW,OAAA,CAAAhB,cAAA,GAAAA,cAAA","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_events2","require","FiltersPanelModalCompatBridge","constructor","_defineProperty2","default","EventEmitter","_events","emit","isOpen","isOpenFn","listeners","exports"],"sources":["../../../src/state/FiltersPanelModalCompatBridge.ts"],"sourcesContent":["import { WixPatternsContainer } from './CairoContainer';\nimport { EventEmitter } from 'events';\nimport { TypedEmitter } from '../util';\n\nexport interface FiltersPanelModalCompatBridgeParams {\n readonly container: WixPatternsContainer;\n readonly queryName: string;\n}\n\nexport class FiltersPanelModalCompatBridge {\n readonly _events = new EventEmitter() as TypedEmitter<{\n open: () => unknown;\n close: () => unknown;\n isOpen: () => boolean;\n }>;\n\n open = () => {\n const { _events } = this;\n _events.emit('open');\n };\n\n close = () => {\n const { _events } = this;\n _events.emit('close');\n };\n\n get isOpen() {\n const { _events } = this;\n const isOpenFn = _events.listeners('isOpen')[0];\n return isOpenFn?.() ?? false;\n }\n}\n"],"mappings":";;;;;;AACA,IAAAA,QAAA,GAAAC,OAAA;AAQO,MAAMC,6BAA6B,CAAC;EAAAC,YAAA;IAAA,IAAAC,gBAAA,CAAAC,OAAA,mBACtB,IAAIC,qBAAY,CAAC,CAAC;IAAA,IAAAF,gBAAA,CAAAC,OAAA,gBAM9B,MAAM;MACX,MAAM;QAAEE;MAAQ,CAAC,GAAG,IAAI;MACxBA,OAAO,CAACC,IAAI,CAAC,MAAM,CAAC;IACtB,CAAC;IAAA,IAAAJ,gBAAA,CAAAC,OAAA,iBAEO,MAAM;MACZ,MAAM;QAAEE;MAAQ,CAAC,GAAG,IAAI;MACxBA,OAAO,CAACC,IAAI,CAAC,OAAO,CAAC;IACvB,CAAC;EAAA;EAED,IAAIC,MAAMA,CAAA,EAAG;IACX,MAAM;MAAEF;IAAQ,CAAC,GAAG,IAAI;IACxB,MAAMG,QAAQ,GAAGH,OAAO,CAACI,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;IAC/C,OAAO,CAAAD,QAAQ,oBAARA,QAAQ,CAAG,CAAC,KAAI,KAAK;EAC9B;AACF;AAACE,OAAA,CAAAV,6BAAA,GAAAA,6BAAA"}
|
|
1
|
+
{"version":3,"names":["_events2","require","FiltersPanelModalCompatBridge","constructor","_defineProperty2","default","EventEmitter","_events","emit","isOpen","isOpenFn","listeners","exports"],"sources":["../../../src/state/FiltersPanelModalCompatBridge.ts"],"sourcesContent":["import { WixPatternsContainer } from './CairoContainer';\nimport { EventEmitter } from 'events';\nimport { TypedEmitter } from '../util';\n\nexport interface FiltersPanelModalCompatBridgeParams {\n readonly container: WixPatternsContainer;\n readonly queryName: string;\n}\n\nexport class FiltersPanelModalCompatBridge {\n readonly _events = new EventEmitter() as TypedEmitter<{\n open: () => unknown;\n close: () => unknown;\n isOpen: () => boolean;\n }>;\n\n open = () => {\n const { _events } = this;\n _events.emit('open');\n };\n\n close = () => {\n const { _events } = this;\n _events.emit('close');\n };\n\n get isOpen() {\n const { _events } = this;\n const isOpenFn = _events.listeners('isOpen')[0];\n return isOpenFn?.() ?? false;\n }\n}\n"],"mappings":";;;;;;AACA,IAAAA,QAAA,GAAAC,OAAA;AAQO,MAAMC,6BAA6B,CAAC;EAAAC,YAAA;IAAA,IAAAC,gBAAA,CAAAC,OAAA,mBACtB,IAAIC,qBAAY,CAAC,CAAC;IAAA,IAAAF,gBAAA,CAAAC,OAAA,gBAM9B,MAAM;MACX,MAAM;QAAEE;MAAQ,CAAC,GAAG,IAAI;MACxBA,OAAO,CAACC,IAAI,CAAC,MAAM,CAAC;IACtB,CAAC;IAAA,IAAAJ,gBAAA,CAAAC,OAAA,iBAEO,MAAM;MACZ,MAAM;QAAEE;MAAQ,CAAC,GAAG,IAAI;MACxBA,OAAO,CAACC,IAAI,CAAC,OAAO,CAAC;IACvB,CAAC;EAAA;EAED,IAAIC,MAAMA,CAAA,EAAG;IACX,MAAM;MAAEF;IAAQ,CAAC,GAAG,IAAI;IACxB,MAAMG,QAAQ,GAAGH,OAAO,CAACI,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;IAC/C,OAAO,CAAAD,QAAQ,oBAARA,QAAQ,CAAG,CAAC,KAAI,KAAK;EAC9B;AACF;AAACE,OAAA,CAAAV,6BAAA,GAAAA,6BAAA","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_mobx","require","FormPageState","constructor","_defineProperty2","default","observable","map","Map","makeObservable","registerWidget","action","bound","isDirty","computed","key","state","_widgets","set","validate","data","isValid","widget","entries","widgetData","values","some","w","get","exports"],"sources":["../../../src/state/FormPageState.ts"],"sourcesContent":["import { action, computed, makeObservable, observable } from 'mobx';\n\nexport type WidgetState = {\n isDirty: boolean;\n validate: () => Promise<{ isValid: boolean; values?: Record<string, any> }>;\n};\n\nexport class FormPageState {\n _widgets = observable.map<string, WidgetState>(new Map());\n\n constructor() {\n makeObservable(this, {\n registerWidget: action.bound,\n isDirty: computed,\n });\n }\n\n registerWidget(key: string, state: WidgetState) {\n this._widgets.set(key, state);\n }\n\n async validate(): Promise<{ isValid: boolean; data: Record<string, any> }> {\n const data: Record<string, any> = {};\n let isValid = true;\n\n for (const [key, widget] of this._widgets.entries()) {\n const widgetData = await widget.validate();\n\n if (!widgetData.isValid) {\n isValid = false;\n return { isValid: false, data: {} };\n }\n\n data[key] = widgetData.values;\n }\n\n return { isValid, data };\n }\n\n get isDirty() {\n return [...this._widgets.values()].some((w) => w.isDirty);\n }\n\n get(key: string) {\n return this._widgets.get(key);\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AAOO,MAAMC,aAAa,CAAC;EAGzBC,WAAWA,CAAA,EAAG;IAAA,IAAAC,gBAAA,CAAAC,OAAA,oBAFHC,gBAAU,CAACC,GAAG,CAAsB,IAAIC,GAAG,CAAC,CAAC,CAAC;IAGvD,IAAAC,oBAAc,EAAC,IAAI,EAAE;MACnBC,cAAc,EAAEC,YAAM,CAACC,KAAK;MAC5BC,OAAO,EAAEC;IACX,CAAC,CAAC;EACJ;EAEAJ,cAAcA,CAACK,GAAW,EAAEC,KAAkB,EAAE;IAC9C,IAAI,CAACC,QAAQ,CAACC,GAAG,CAACH,GAAG,EAAEC,KAAK,CAAC;EAC/B;EAEA,MAAMG,QAAQA,CAAA,EAA6D;IACzE,MAAMC,IAAyB,GAAG,CAAC,CAAC;IACpC,IAAIC,OAAO,GAAG,IAAI;IAElB,KAAK,MAAM,CAACN,GAAG,EAAEO,MAAM,CAAC,IAAI,IAAI,CAACL,QAAQ,CAACM,OAAO,CAAC,CAAC,EAAE;MACnD,MAAMC,UAAU,GAAG,MAAMF,MAAM,CAACH,QAAQ,CAAC,CAAC;MAE1C,IAAI,CAACK,UAAU,CAACH,OAAO,EAAE;QACvBA,OAAO,GAAG,KAAK;QACf,OAAO;UAAEA,OAAO,EAAE,KAAK;UAAED,IAAI,EAAE,CAAC;QAAE,CAAC;MACrC;MAEAA,IAAI,CAACL,GAAG,CAAC,GAAGS,UAAU,CAACC,MAAM;IAC/B;IAEA,OAAO;MAAEJ,OAAO;MAAED;IAAK,CAAC;EAC1B;EAEA,IAAIP,OAAOA,CAAA,EAAG;IACZ,OAAO,CAAC,GAAG,IAAI,CAACI,QAAQ,CAACQ,MAAM,CAAC,CAAC,CAAC,CAACC,IAAI,CAAEC,CAAC,IAAKA,CAAC,CAACd,OAAO,CAAC;EAC3D;EAEAe,GAAGA,CAACb,GAAW,EAAE;IACf,OAAO,IAAI,CAACE,QAAQ,CAACW,GAAG,CAACb,GAAG,CAAC;EAC/B;AACF;AAACc,OAAA,CAAA3B,aAAA,GAAAA,aAAA"}
|
|
1
|
+
{"version":3,"names":["_mobx","require","FormPageState","constructor","_defineProperty2","default","observable","map","Map","makeObservable","registerWidget","action","bound","isDirty","computed","key","state","_widgets","set","validate","data","isValid","widget","entries","widgetData","values","some","w","get","exports"],"sources":["../../../src/state/FormPageState.ts"],"sourcesContent":["import { action, computed, makeObservable, observable } from 'mobx';\n\nexport type WidgetState = {\n isDirty: boolean;\n validate: () => Promise<{ isValid: boolean; values?: Record<string, any> }>;\n};\n\nexport class FormPageState {\n _widgets = observable.map<string, WidgetState>(new Map());\n\n constructor() {\n makeObservable(this, {\n registerWidget: action.bound,\n isDirty: computed,\n });\n }\n\n registerWidget(key: string, state: WidgetState) {\n this._widgets.set(key, state);\n }\n\n async validate(): Promise<{ isValid: boolean; data: Record<string, any> }> {\n const data: Record<string, any> = {};\n let isValid = true;\n\n for (const [key, widget] of this._widgets.entries()) {\n const widgetData = await widget.validate();\n\n if (!widgetData.isValid) {\n isValid = false;\n return { isValid: false, data: {} };\n }\n\n data[key] = widgetData.values;\n }\n\n return { isValid, data };\n }\n\n get isDirty() {\n return [...this._widgets.values()].some((w) => w.isDirty);\n }\n\n get(key: string) {\n return this._widgets.get(key);\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AAOO,MAAMC,aAAa,CAAC;EAGzBC,WAAWA,CAAA,EAAG;IAAA,IAAAC,gBAAA,CAAAC,OAAA,oBAFHC,gBAAU,CAACC,GAAG,CAAsB,IAAIC,GAAG,CAAC,CAAC,CAAC;IAGvD,IAAAC,oBAAc,EAAC,IAAI,EAAE;MACnBC,cAAc,EAAEC,YAAM,CAACC,KAAK;MAC5BC,OAAO,EAAEC;IACX,CAAC,CAAC;EACJ;EAEAJ,cAAcA,CAACK,GAAW,EAAEC,KAAkB,EAAE;IAC9C,IAAI,CAACC,QAAQ,CAACC,GAAG,CAACH,GAAG,EAAEC,KAAK,CAAC;EAC/B;EAEA,MAAMG,QAAQA,CAAA,EAA6D;IACzE,MAAMC,IAAyB,GAAG,CAAC,CAAC;IACpC,IAAIC,OAAO,GAAG,IAAI;IAElB,KAAK,MAAM,CAACN,GAAG,EAAEO,MAAM,CAAC,IAAI,IAAI,CAACL,QAAQ,CAACM,OAAO,CAAC,CAAC,EAAE;MACnD,MAAMC,UAAU,GAAG,MAAMF,MAAM,CAACH,QAAQ,CAAC,CAAC;MAE1C,IAAI,CAACK,UAAU,CAACH,OAAO,EAAE;QACvBA,OAAO,GAAG,KAAK;QACf,OAAO;UAAEA,OAAO,EAAE,KAAK;UAAED,IAAI,EAAE,CAAC;QAAE,CAAC;MACrC;MAEAA,IAAI,CAACL,GAAG,CAAC,GAAGS,UAAU,CAACC,MAAM;IAC/B;IAEA,OAAO;MAAEJ,OAAO;MAAED;IAAK,CAAC;EAC1B;EAEA,IAAIP,OAAOA,CAAA,EAAG;IACZ,OAAO,CAAC,GAAG,IAAI,CAACI,QAAQ,CAACQ,MAAM,CAAC,CAAC,CAAC,CAACC,IAAI,CAAEC,CAAC,IAAKA,CAAC,CAACd,OAAO,CAAC;EAC3D;EAEAe,GAAGA,CAACb,GAAW,EAAE;IACf,OAAO,IAAI,CAACE,QAAQ,CAACW,GAAG,CAACb,GAAG,CAAC;EAC/B;AACF;AAACc,OAAA,CAAA3B,aAAA,GAAAA,aAAA","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_ToggleState","require","_mobx","_model","_events","ModalState","constructor","params","_defineProperty2","default","ToggleState","openToggle","toggle","queryStatus","idle","EventEmitter","events","emit","makeObservable","confirming","observable","open","action","bound","confirm","close","isOpen","computed","onConfirm","onClose","setOn","promise","Promise","resolve","once","options","_this$onConfirm","loading","call","runInAction","success","result","setOff","e","error","_this$onClose","decline","_this$onClose2","isOn","exports"],"sources":["../../../src/state/ModalState.ts"],"sourcesContent":["import { ToggleState } from './ToggleState';\nimport {\n action,\n computed,\n makeObservable,\n observable,\n runInAction,\n} from 'mobx';\nimport { QueryStatus, queryStatus } from '../model';\nimport { EventEmitter } from 'events';\nimport { TypedEmitter } from '../util';\n\ntype InteractionFn = () => void | Promise<unknown>;\n\nexport interface ModalStateParams {\n onConfirm?: InteractionFn;\n onClose?: InteractionFn;\n}\n\ninterface CloseOptions {\n result: 'confirmed' | 'declined' | 'dismissed';\n}\n\nexport class ModalState {\n public readonly openToggle = new ToggleState();\n public readonly toggle = this.openToggle.toggle;\n\n readonly onConfirm?: InteractionFn;\n readonly onClose?: InteractionFn;\n confirming: QueryStatus = queryStatus.idle;\n\n readonly events = new EventEmitter() as TypedEmitter<{\n open: () => void;\n close: (options: CloseOptions) => void;\n requestClose: () => void;\n }>;\n\n constructor(params: ModalStateParams = {}) {\n makeObservable(this, {\n confirming: observable,\n open: action.bound,\n confirm: action.bound,\n close: action.bound,\n isOpen: computed,\n });\n\n this.onConfirm = params.onConfirm;\n this.onClose = params.onClose;\n }\n\n open() {\n this.events.emit('open');\n this.openToggle.setOn();\n }\n\n promise() {\n return new Promise<CloseOptions>((resolve) => {\n this.events.once('close', (options) => {\n resolve(options);\n });\n });\n }\n\n async confirm() {\n try {\n this.confirming = queryStatus.loading;\n await this.onConfirm?.();\n runInAction(() => {\n this.confirming = queryStatus.success;\n this.events.emit('close', {\n result: 'confirmed',\n });\n return this.openToggle.setOff();\n });\n } catch (e) {\n runInAction(() => {\n this.confirming = queryStatus.error;\n });\n }\n }\n\n close() {\n this.onClose?.();\n this.events.emit('close', { result: 'dismissed' });\n return this.openToggle.setOff();\n }\n\n decline() {\n this.onClose?.();\n this.events.emit('close', { result: 'declined' });\n return this.openToggle.setOff();\n }\n\n requestClose = () => {\n this.events.emit('requestClose');\n };\n\n get isOpen() {\n return this.openToggle.isOn;\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,KAAA,GAAAD,OAAA;AAOA,IAAAE,MAAA,GAAAF,OAAA;AACA,IAAAG,OAAA,GAAAH,OAAA;AAcO,MAAMI,UAAU,CAAC;EActBC,WAAWA,CAACC,MAAwB,GAAG,CAAC,CAAC,EAAE;IAAA,IAAAC,gBAAA,CAAAC,OAAA,sBAbd,IAAIC,wBAAW,CAAC,CAAC;IAAA,IAAAF,gBAAA,CAAAC,OAAA,kBACrB,IAAI,CAACE,UAAU,CAACC,MAAM;IAAA,IAAAJ,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA,sBAIrBI,kBAAW,CAACC,IAAI;IAAA,IAAAN,gBAAA,CAAAC,OAAA,kBAExB,IAAIM,oBAAY,CAAC,CAAC;IAAA,IAAAP,gBAAA,CAAAC,OAAA,wBA8DrB,MAAM;MACnB,IAAI,CAACO,MAAM,CAACC,IAAI,CAAC,cAAc,CAAC;IAClC,CAAC;IAzDC,IAAAC,oBAAc,EAAC,IAAI,EAAE;MACnBC,UAAU,EAAEC,gBAAU;MACtBC,IAAI,EAAEC,YAAM,CAACC,KAAK;MAClBC,OAAO,EAAEF,YAAM,CAACC,KAAK;MACrBE,KAAK,EAAEH,YAAM,CAACC,KAAK;MACnBG,MAAM,EAAEC;IACV,CAAC,CAAC;IAEF,IAAI,CAACC,SAAS,GAAGrB,MAAM,CAACqB,SAAS;IACjC,IAAI,CAACC,OAAO,GAAGtB,MAAM,CAACsB,OAAO;EAC/B;EAEAR,IAAIA,CAAA,EAAG;IACL,IAAI,CAACL,MAAM,CAACC,IAAI,CAAC,MAAM,CAAC;IACxB,IAAI,CAACN,UAAU,CAACmB,KAAK,CAAC,CAAC;EACzB;EAEAC,OAAOA,CAAA,EAAG;IACR,OAAO,IAAIC,OAAO,CAAgBC,OAAO,IAAK;MAC5C,IAAI,CAACjB,MAAM,CAACkB,IAAI,CAAC,OAAO,EAAGC,OAAO,IAAK;QACrCF,OAAO,CAACE,OAAO,CAAC;MAClB,CAAC,CAAC;IACJ,CAAC,CAAC;EACJ;EAEA,MAAMX,OAAOA,CAAA,EAAG;IACd,IAAI;MAAA,IAAAY,eAAA;MACF,IAAI,CAACjB,UAAU,GAAGN,kBAAW,CAACwB,OAAO;MACrC,QAAAD,eAAA,GAAM,IAAI,CAACR,SAAS,qBAAdQ,eAAA,CAAAE,IAAA,KAAiB,CAAC;MACxB,IAAAC,iBAAW,EAAC,MAAM;QAChB,IAAI,CAACpB,UAAU,GAAGN,kBAAW,CAAC2B,OAAO;QACrC,IAAI,CAACxB,MAAM,CAACC,IAAI,CAAC,OAAO,EAAE;UACxBwB,MAAM,EAAE;QACV,CAAC,CAAC;QACF,OAAO,IAAI,CAAC9B,UAAU,CAAC+B,MAAM,CAAC,CAAC;MACjC,CAAC,CAAC;IACJ,CAAC,CAAC,OAAOC,CAAC,EAAE;MACV,IAAAJ,iBAAW,EAAC,MAAM;QAChB,IAAI,CAACpB,UAAU,GAAGN,kBAAW,CAAC+B,KAAK;MACrC,CAAC,CAAC;IACJ;EACF;EAEAnB,KAAKA,CAAA,EAAG;IAAA,IAAAoB,aAAA;IACN,CAAAA,aAAA,OAAI,CAAChB,OAAO,aAAZgB,aAAA,CAAAP,IAAA,KAAe,CAAC;IAChB,IAAI,CAACtB,MAAM,CAACC,IAAI,CAAC,OAAO,EAAE;MAAEwB,MAAM,EAAE;IAAY,CAAC,CAAC;IAClD,OAAO,IAAI,CAAC9B,UAAU,CAAC+B,MAAM,CAAC,CAAC;EACjC;EAEAI,OAAOA,CAAA,EAAG;IAAA,IAAAC,cAAA;IACR,CAAAA,cAAA,OAAI,CAAClB,OAAO,aAAZkB,cAAA,CAAAT,IAAA,KAAe,CAAC;IAChB,IAAI,CAACtB,MAAM,CAACC,IAAI,CAAC,OAAO,EAAE;MAAEwB,MAAM,EAAE;IAAW,CAAC,CAAC;IACjD,OAAO,IAAI,CAAC9B,UAAU,CAAC+B,MAAM,CAAC,CAAC;EACjC;EAMA,IAAIhB,MAAMA,CAAA,EAAG;IACX,OAAO,IAAI,CAACf,UAAU,CAACqC,IAAI;EAC7B;AACF;AAACC,OAAA,CAAA5C,UAAA,GAAAA,UAAA"}
|
|
1
|
+
{"version":3,"names":["_ToggleState","require","_mobx","_model","_events","ModalState","constructor","params","_defineProperty2","default","ToggleState","openToggle","toggle","queryStatus","idle","EventEmitter","events","emit","makeObservable","confirming","observable","open","action","bound","confirm","close","isOpen","computed","onConfirm","onClose","setOn","promise","Promise","resolve","once","options","_this$onConfirm","loading","call","runInAction","success","result","setOff","e","error","_this$onClose","decline","_this$onClose2","isOn","exports"],"sources":["../../../src/state/ModalState.ts"],"sourcesContent":["import { ToggleState } from './ToggleState';\nimport {\n action,\n computed,\n makeObservable,\n observable,\n runInAction,\n} from 'mobx';\nimport { QueryStatus, queryStatus } from '../model';\nimport { EventEmitter } from 'events';\nimport { TypedEmitter } from '../util';\n\ntype InteractionFn = () => void | Promise<unknown>;\n\nexport interface ModalStateParams {\n onConfirm?: InteractionFn;\n onClose?: InteractionFn;\n}\n\ninterface CloseOptions {\n result: 'confirmed' | 'declined' | 'dismissed';\n}\n\nexport class ModalState {\n public readonly openToggle = new ToggleState();\n public readonly toggle = this.openToggle.toggle;\n\n readonly onConfirm?: InteractionFn;\n readonly onClose?: InteractionFn;\n confirming: QueryStatus = queryStatus.idle;\n\n readonly events = new EventEmitter() as TypedEmitter<{\n open: () => void;\n close: (options: CloseOptions) => void;\n requestClose: () => void;\n }>;\n\n constructor(params: ModalStateParams = {}) {\n makeObservable(this, {\n confirming: observable,\n open: action.bound,\n confirm: action.bound,\n close: action.bound,\n isOpen: computed,\n });\n\n this.onConfirm = params.onConfirm;\n this.onClose = params.onClose;\n }\n\n open() {\n this.events.emit('open');\n this.openToggle.setOn();\n }\n\n promise() {\n return new Promise<CloseOptions>((resolve) => {\n this.events.once('close', (options) => {\n resolve(options);\n });\n });\n }\n\n async confirm() {\n try {\n this.confirming = queryStatus.loading;\n await this.onConfirm?.();\n runInAction(() => {\n this.confirming = queryStatus.success;\n this.events.emit('close', {\n result: 'confirmed',\n });\n return this.openToggle.setOff();\n });\n } catch (e) {\n runInAction(() => {\n this.confirming = queryStatus.error;\n });\n }\n }\n\n close() {\n this.onClose?.();\n this.events.emit('close', { result: 'dismissed' });\n return this.openToggle.setOff();\n }\n\n decline() {\n this.onClose?.();\n this.events.emit('close', { result: 'declined' });\n return this.openToggle.setOff();\n }\n\n requestClose = () => {\n this.events.emit('requestClose');\n };\n\n get isOpen() {\n return this.openToggle.isOn;\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_mobx","require","_TaskState","MultiCollectionSupport","constructor","params","_defineProperty2","default","TaskState","action","initTask","collections","status","isError","runOnce","forEach","c","retryErrorState","makeObservable","showInitialLoader","computed","showEmptyState","showErrorState","showRefreshLoader","errorStatus","hasAvailableItems","hasNonPersistentActiveFilters","hasNonPersistentCustomFilters","some","every","collection","showLoadingState","map","result","find","query","resultOriginQuerySearch","_this$collections$","originQuery","search","resultOriginQueryRawSearch","_this$collections$2","rawSearch","init","disposers","Promise","all","promise","d","exports"],"sources":["../../../src/state/MultiCollectionSupport.ts"],"sourcesContent":["import { action, computed, makeObservable } from 'mobx';\nimport { CollectionState } from './CollectionState';\nimport { DataResultKeyed, FiltersMap, QueryResultStatusError } from '../model';\nimport { TaskState } from './TaskState';\n\nexport interface MultiCollectionSupportParams<F extends FiltersMap> {\n readonly collections: CollectionState<any, F>[];\n}\n\nexport class MultiCollectionSupport<F extends FiltersMap> {\n readonly collections: CollectionState<unknown, F>[];\n readonly initTask = new TaskState();\n\n constructor(params: MultiCollectionSupportParams<F>) {\n this.collections = params.collections;\n\n makeObservable(this, {\n showInitialLoader: computed,\n showEmptyState: computed,\n showErrorState: computed,\n showRefreshLoader: computed,\n errorStatus: computed,\n hasAvailableItems: computed,\n hasNonPersistentActiveFilters: computed,\n hasNonPersistentCustomFilters: computed,\n });\n }\n\n get showInitialLoader() {\n return this.collections.some((c) => c.showInitialLoader);\n }\n\n get showEmptyState() {\n return this.collections.every((collection) => collection.showEmptyState);\n }\n\n get showErrorState() {\n return this.collections.some((collection) => collection.showErrorState);\n }\n\n get showRefreshLoader() {\n return this.collections.some((collection) => collection.showRefreshLoader);\n }\n\n get showLoadingState() {\n return this.showInitialLoader || this.showRefreshLoader;\n }\n\n get errorStatus() {\n return this.collections\n .map((c) => c.result.status)\n .find(\n (\n status,\n ): status is QueryResultStatusError<DataResultKeyed<unknown>, F> =>\n status.isError,\n );\n }\n\n get hasAvailableItems() {\n return this.collections.some((c) => c.result.hasAvailableItems);\n }\n\n get hasNonPersistentActiveFilters() {\n return this.collections.some((c) => c.query.hasNonPersistentActiveFilters);\n }\n\n get hasNonPersistentCustomFilters() {\n return this.collections.some((c) => c.query.hasNonPersistentCustomFilters);\n }\n\n get resultOriginQuerySearch() {\n return this.collections[0]?.result.originQuery.search;\n }\n\n get resultOriginQueryRawSearch() {\n return this.collections[0]?.result.originQuery.rawSearch;\n }\n\n retryErrorState = action(() => {\n const { initTask, collections } = this;\n\n if (initTask.status.isError) {\n initTask.runOnce();\n } else {\n collections.forEach((c) => c.retryErrorState());\n }\n });\n\n init() {\n const { collections, initTask } = this;\n const disposers = [...collections.map((c) => c.init())];\n\n initTask.runOnce(async () => {\n collections.forEach((c) => c.initTask.runOnce());\n await Promise.all(collections.map((c) => c.initTask.status.promise));\n });\n\n return () => {\n disposers.forEach((d) => d());\n };\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["_mobx","require","_TaskState","MultiCollectionSupport","constructor","params","_defineProperty2","default","TaskState","action","initTask","collections","status","isError","runOnce","forEach","c","retryErrorState","makeObservable","showInitialLoader","computed","showEmptyState","showErrorState","showRefreshLoader","errorStatus","hasAvailableItems","hasNonPersistentActiveFilters","hasNonPersistentCustomFilters","some","every","collection","showLoadingState","map","result","find","query","resultOriginQuerySearch","_this$collections$","originQuery","search","resultOriginQueryRawSearch","_this$collections$2","rawSearch","init","disposers","Promise","all","promise","d","exports"],"sources":["../../../src/state/MultiCollectionSupport.ts"],"sourcesContent":["import { action, computed, makeObservable } from 'mobx';\nimport { CollectionState } from './CollectionState';\nimport { DataResultKeyed, FiltersMap, QueryResultStatusError } from '../model';\nimport { TaskState } from './TaskState';\n\nexport interface MultiCollectionSupportParams<F extends FiltersMap> {\n readonly collections: CollectionState<any, F>[];\n}\n\nexport class MultiCollectionSupport<F extends FiltersMap> {\n readonly collections: CollectionState<unknown, F>[];\n readonly initTask = new TaskState();\n\n constructor(params: MultiCollectionSupportParams<F>) {\n this.collections = params.collections;\n\n makeObservable(this, {\n showInitialLoader: computed,\n showEmptyState: computed,\n showErrorState: computed,\n showRefreshLoader: computed,\n errorStatus: computed,\n hasAvailableItems: computed,\n hasNonPersistentActiveFilters: computed,\n hasNonPersistentCustomFilters: computed,\n });\n }\n\n get showInitialLoader() {\n return this.collections.some((c) => c.showInitialLoader);\n }\n\n get showEmptyState() {\n return this.collections.every((collection) => collection.showEmptyState);\n }\n\n get showErrorState() {\n return this.collections.some((collection) => collection.showErrorState);\n }\n\n get showRefreshLoader() {\n return this.collections.some((collection) => collection.showRefreshLoader);\n }\n\n get showLoadingState() {\n return this.showInitialLoader || this.showRefreshLoader;\n }\n\n get errorStatus() {\n return this.collections\n .map((c) => c.result.status)\n .find(\n (\n status,\n ): status is QueryResultStatusError<DataResultKeyed<unknown>, F> =>\n status.isError,\n );\n }\n\n get hasAvailableItems() {\n return this.collections.some((c) => c.result.hasAvailableItems);\n }\n\n get hasNonPersistentActiveFilters() {\n return this.collections.some((c) => c.query.hasNonPersistentActiveFilters);\n }\n\n get hasNonPersistentCustomFilters() {\n return this.collections.some((c) => c.query.hasNonPersistentCustomFilters);\n }\n\n get resultOriginQuerySearch() {\n return this.collections[0]?.result.originQuery.search;\n }\n\n get resultOriginQueryRawSearch() {\n return this.collections[0]?.result.originQuery.rawSearch;\n }\n\n retryErrorState = action(() => {\n const { initTask, collections } = this;\n\n if (initTask.status.isError) {\n initTask.runOnce();\n } else {\n collections.forEach((c) => c.retryErrorState());\n }\n });\n\n init() {\n const { collections, initTask } = this;\n const disposers = [...collections.map((c) => c.init())];\n\n initTask.runOnce(async () => {\n collections.forEach((c) => c.initTask.runOnce());\n await Promise.all(collections.map((c) => c.initTask.status.promise));\n });\n\n return () => {\n disposers.forEach((d) => d());\n };\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_events","require","OnlineState","constructor","params","_defineProperty2","default","EventEmitter","onlineManager","focusManager","showToast","translate","isOnline","showOfflineToast","_this$_removeOfflineT","t","_removeOfflineToast","call","type","message","biName","timeout","remove","init","events","disposers","subscribe","emit","_this$_removeOfflineT2","isFocused","forEach","d","_removeOfflineToastTimeoutId","clearTimeout","exports"],"sources":["../../../src/state/OnlineState.ts"],"sourcesContent":["import { FocusManager, OnlineManager, Translate } from '../services';\nimport { EventEmitter } from 'events';\nimport { TypedEmitter } from '../util';\nimport { ShowToast } from '../model';\n\nexport interface OnlineStateParams {\n readonly onlineManager: OnlineManager;\n readonly focusManager: FocusManager;\n readonly showToast?: ShowToast;\n readonly translate: Translate;\n}\n\nexport class OnlineState {\n readonly onlineManager;\n readonly focusManager;\n readonly showToast;\n readonly translate;\n\n readonly events = new EventEmitter() as TypedEmitter<{\n change: (isOnline: boolean) => void;\n }>;\n\n _removeOfflineToastTimeoutId: ReturnType<typeof setTimeout> | null = null;\n _removeOfflineToast: (() => void) | null = null;\n\n constructor(params: OnlineStateParams) {\n this.onlineManager = params.onlineManager;\n this.focusManager = params.focusManager;\n this.showToast = params.showToast;\n this.translate = params.translate;\n }\n\n get isOnline() {\n return this.onlineManager.isOnline();\n }\n\n showOfflineToast() {\n const { showToast, translate: t } = this;\n if (showToast == null) {\n return;\n }\n this._removeOfflineToast?.();\n this._removeOfflineToast = showToast({\n type: 'ERROR' as any,\n message: t('cairo.offline'),\n biName: 'cairo-offline-error',\n timeout: 'NONE',\n }).remove;\n\n // this._removeOfflineToastTimeoutId = setTimeout(() => {\n // this._removeOfflineToastTimeoutId = null;\n // this._removeOfflineToast?.();\n // }, 6000);\n }\n\n init() {\n const { focusManager, onlineManager, events } = this;\n const disposers = [\n onlineManager.subscribe(() => {\n const { isOnline } = this;\n\n events.emit('change', isOnline);\n\n if (!isOnline) {\n this.showOfflineToast();\n } else {\n this._removeOfflineToast?.();\n }\n }),\n focusManager.subscribe(() => {\n const { isOnline } = this;\n\n if (focusManager.isFocused() && isOnline && this._removeOfflineToast) {\n this._removeOfflineToast();\n }\n }),\n ];\n\n return () => {\n disposers.forEach((d) => d());\n if (this._removeOfflineToast) {\n this._removeOfflineToast();\n }\n\n if (this._removeOfflineToastTimeoutId != null) {\n clearTimeout(this._removeOfflineToastTimeoutId);\n }\n };\n }\n}\n"],"mappings":";;;;;;AACA,IAAAA,OAAA,GAAAC,OAAA;AAWO,MAAMC,WAAW,CAAC;EAavBC,WAAWA,CAACC,MAAyB,EAAE;IAAA,IAAAC,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA,kBAPrB,IAAIC,oBAAY,CAAC,CAAC;IAAA,IAAAF,gBAAA,CAAAC,OAAA,wCAIiC,IAAI;IAAA,IAAAD,gBAAA,CAAAC,OAAA,+BAC9B,IAAI;IAG7C,IAAI,CAACE,aAAa,GAAGJ,MAAM,CAACI,aAAa;IACzC,IAAI,CAACC,YAAY,GAAGL,MAAM,CAACK,YAAY;IACvC,IAAI,CAACC,SAAS,GAAGN,MAAM,CAACM,SAAS;IACjC,IAAI,CAACC,SAAS,GAAGP,MAAM,CAACO,SAAS;EACnC;EAEA,IAAIC,QAAQA,CAAA,EAAG;IACb,OAAO,IAAI,CAACJ,aAAa,CAACI,QAAQ,CAAC,CAAC;EACtC;EAEAC,gBAAgBA,CAAA,EAAG;IAAA,IAAAC,qBAAA;IACjB,MAAM;MAAEJ,SAAS;MAAEC,SAAS,EAAEI;IAAE,CAAC,GAAG,IAAI;IACxC,IAAIL,SAAS,IAAI,IAAI,EAAE;MACrB;IACF;IACA,CAAAI,qBAAA,OAAI,CAACE,mBAAmB,aAAxBF,qBAAA,CAAAG,IAAA,KAA2B,CAAC;IAC5B,IAAI,CAACD,mBAAmB,GAAGN,SAAS,CAAC;MACnCQ,IAAI,EAAE,OAAc;MACpBC,OAAO,EAAEJ,CAAC,CAAC,eAAe,CAAC;MAC3BK,MAAM,EAAE,qBAAqB;MAC7BC,OAAO,EAAE;IACX,CAAC,CAAC,CAACC,MAAM;;IAET;IACA;IACA;IACA;EACF;EAEAC,IAAIA,CAAA,EAAG;IACL,MAAM;MAAEd,YAAY;MAAED,aAAa;MAAEgB;IAAO,CAAC,GAAG,IAAI;IACpD,MAAMC,SAAS,GAAG,CAChBjB,aAAa,CAACkB,SAAS,CAAC,MAAM;MAC5B,MAAM;QAAEd;MAAS,CAAC,GAAG,IAAI;MAEzBY,MAAM,CAACG,IAAI,CAAC,QAAQ,EAAEf,QAAQ,CAAC;MAE/B,IAAI,CAACA,QAAQ,EAAE;QACb,IAAI,CAACC,gBAAgB,CAAC,CAAC;MACzB,CAAC,MAAM;QAAA,IAAAe,sBAAA;QACL,CAAAA,sBAAA,OAAI,CAACZ,mBAAmB,aAAxBY,sBAAA,CAAAX,IAAA,KAA2B,CAAC;MAC9B;IACF,CAAC,CAAC,EACFR,YAAY,CAACiB,SAAS,CAAC,MAAM;MAC3B,MAAM;QAAEd;MAAS,CAAC,GAAG,IAAI;MAEzB,IAAIH,YAAY,CAACoB,SAAS,CAAC,CAAC,IAAIjB,QAAQ,IAAI,IAAI,CAACI,mBAAmB,EAAE;QACpE,IAAI,CAACA,mBAAmB,CAAC,CAAC;MAC5B;IACF,CAAC,CAAC,CACH;IAED,OAAO,MAAM;MACXS,SAAS,CAACK,OAAO,CAAEC,CAAC,IAAKA,CAAC,CAAC,CAAC,CAAC;MAC7B,IAAI,IAAI,CAACf,mBAAmB,EAAE;QAC5B,IAAI,CAACA,mBAAmB,CAAC,CAAC;MAC5B;MAEA,IAAI,IAAI,CAACgB,4BAA4B,IAAI,IAAI,EAAE;QAC7CC,YAAY,CAAC,IAAI,CAACD,4BAA4B,CAAC;MACjD;IACF,CAAC;EACH;AACF;AAACE,OAAA,CAAAhC,WAAA,GAAAA,WAAA"}
|
|
1
|
+
{"version":3,"names":["_events","require","OnlineState","constructor","params","_defineProperty2","default","EventEmitter","onlineManager","focusManager","showToast","translate","isOnline","showOfflineToast","_this$_removeOfflineT","t","_removeOfflineToast","call","type","message","biName","timeout","remove","init","events","disposers","subscribe","emit","_this$_removeOfflineT2","isFocused","forEach","d","_removeOfflineToastTimeoutId","clearTimeout","exports"],"sources":["../../../src/state/OnlineState.ts"],"sourcesContent":["import { FocusManager, OnlineManager, Translate } from '../services';\nimport { EventEmitter } from 'events';\nimport { TypedEmitter } from '../util';\nimport { ShowToast } from '../model';\n\nexport interface OnlineStateParams {\n readonly onlineManager: OnlineManager;\n readonly focusManager: FocusManager;\n readonly showToast?: ShowToast;\n readonly translate: Translate;\n}\n\nexport class OnlineState {\n readonly onlineManager;\n readonly focusManager;\n readonly showToast;\n readonly translate;\n\n readonly events = new EventEmitter() as TypedEmitter<{\n change: (isOnline: boolean) => void;\n }>;\n\n _removeOfflineToastTimeoutId: ReturnType<typeof setTimeout> | null = null;\n _removeOfflineToast: (() => void) | null = null;\n\n constructor(params: OnlineStateParams) {\n this.onlineManager = params.onlineManager;\n this.focusManager = params.focusManager;\n this.showToast = params.showToast;\n this.translate = params.translate;\n }\n\n get isOnline() {\n return this.onlineManager.isOnline();\n }\n\n showOfflineToast() {\n const { showToast, translate: t } = this;\n if (showToast == null) {\n return;\n }\n this._removeOfflineToast?.();\n this._removeOfflineToast = showToast({\n type: 'ERROR' as any,\n message: t('cairo.offline'),\n biName: 'cairo-offline-error',\n timeout: 'NONE',\n }).remove;\n\n // this._removeOfflineToastTimeoutId = setTimeout(() => {\n // this._removeOfflineToastTimeoutId = null;\n // this._removeOfflineToast?.();\n // }, 6000);\n }\n\n init() {\n const { focusManager, onlineManager, events } = this;\n const disposers = [\n onlineManager.subscribe(() => {\n const { isOnline } = this;\n\n events.emit('change', isOnline);\n\n if (!isOnline) {\n this.showOfflineToast();\n } else {\n this._removeOfflineToast?.();\n }\n }),\n focusManager.subscribe(() => {\n const { isOnline } = this;\n\n if (focusManager.isFocused() && isOnline && this._removeOfflineToast) {\n this._removeOfflineToast();\n }\n }),\n ];\n\n return () => {\n disposers.forEach((d) => d());\n if (this._removeOfflineToast) {\n this._removeOfflineToast();\n }\n\n if (this._removeOfflineToastTimeoutId != null) {\n clearTimeout(this._removeOfflineToastTimeoutId);\n }\n };\n }\n}\n"],"mappings":";;;;;;AACA,IAAAA,OAAA,GAAAC,OAAA;AAWO,MAAMC,WAAW,CAAC;EAavBC,WAAWA,CAACC,MAAyB,EAAE;IAAA,IAAAC,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA,kBAPrB,IAAIC,oBAAY,CAAC,CAAC;IAAA,IAAAF,gBAAA,CAAAC,OAAA,wCAIiC,IAAI;IAAA,IAAAD,gBAAA,CAAAC,OAAA,+BAC9B,IAAI;IAG7C,IAAI,CAACE,aAAa,GAAGJ,MAAM,CAACI,aAAa;IACzC,IAAI,CAACC,YAAY,GAAGL,MAAM,CAACK,YAAY;IACvC,IAAI,CAACC,SAAS,GAAGN,MAAM,CAACM,SAAS;IACjC,IAAI,CAACC,SAAS,GAAGP,MAAM,CAACO,SAAS;EACnC;EAEA,IAAIC,QAAQA,CAAA,EAAG;IACb,OAAO,IAAI,CAACJ,aAAa,CAACI,QAAQ,CAAC,CAAC;EACtC;EAEAC,gBAAgBA,CAAA,EAAG;IAAA,IAAAC,qBAAA;IACjB,MAAM;MAAEJ,SAAS;MAAEC,SAAS,EAAEI;IAAE,CAAC,GAAG,IAAI;IACxC,IAAIL,SAAS,IAAI,IAAI,EAAE;MACrB;IACF;IACA,CAAAI,qBAAA,OAAI,CAACE,mBAAmB,aAAxBF,qBAAA,CAAAG,IAAA,KAA2B,CAAC;IAC5B,IAAI,CAACD,mBAAmB,GAAGN,SAAS,CAAC;MACnCQ,IAAI,EAAE,OAAc;MACpBC,OAAO,EAAEJ,CAAC,CAAC,eAAe,CAAC;MAC3BK,MAAM,EAAE,qBAAqB;MAC7BC,OAAO,EAAE;IACX,CAAC,CAAC,CAACC,MAAM;;IAET;IACA;IACA;IACA;EACF;EAEAC,IAAIA,CAAA,EAAG;IACL,MAAM;MAAEd,YAAY;MAAED,aAAa;MAAEgB;IAAO,CAAC,GAAG,IAAI;IACpD,MAAMC,SAAS,GAAG,CAChBjB,aAAa,CAACkB,SAAS,CAAC,MAAM;MAC5B,MAAM;QAAEd;MAAS,CAAC,GAAG,IAAI;MAEzBY,MAAM,CAACG,IAAI,CAAC,QAAQ,EAAEf,QAAQ,CAAC;MAE/B,IAAI,CAACA,QAAQ,EAAE;QACb,IAAI,CAACC,gBAAgB,CAAC,CAAC;MACzB,CAAC,MAAM;QAAA,IAAAe,sBAAA;QACL,CAAAA,sBAAA,OAAI,CAACZ,mBAAmB,aAAxBY,sBAAA,CAAAX,IAAA,KAA2B,CAAC;MAC9B;IACF,CAAC,CAAC,EACFR,YAAY,CAACiB,SAAS,CAAC,MAAM;MAC3B,MAAM;QAAEd;MAAS,CAAC,GAAG,IAAI;MAEzB,IAAIH,YAAY,CAACoB,SAAS,CAAC,CAAC,IAAIjB,QAAQ,IAAI,IAAI,CAACI,mBAAmB,EAAE;QACpE,IAAI,CAACA,mBAAmB,CAAC,CAAC;MAC5B;IACF,CAAC,CAAC,CACH;IAED,OAAO,MAAM;MACXS,SAAS,CAACK,OAAO,CAAEC,CAAC,IAAKA,CAAC,CAAC,CAAC,CAAC;MAC7B,IAAI,IAAI,CAACf,mBAAmB,EAAE;QAC5B,IAAI,CAACA,mBAAmB,CAAC,CAAC;MAC5B;MAEA,IAAI,IAAI,CAACgB,4BAA4B,IAAI,IAAI,EAAE;QAC7CC,YAAY,CAAC,IAAI,CAACD,4BAA4B,CAAC;MACjD;IACF,CAAC;EACH;AACF;AAACE,OAAA,CAAAhC,WAAA,GAAAA,WAAA","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_bexUtils","require","PageState","constructor","_defineProperty2","default","reactive","modalsContainerRef","current","stackingRootRef","sidePanelOpen","value","_sidePanelOpen","exports"],"sources":["../../../src/state/PageState.ts"],"sourcesContent":["import { reactive } from '@wix/bex-utils';\nimport { RefObject } from './RefObject';\n\nexport interface PageStateParams {}\n\nexport class PageState {\n readonly modalsContainerRef: RefObject<HTMLElement>;\n\n readonly stackingRootRef: RefObject<HTMLElement>;\n\n _sidePanelOpen = reactive<boolean>(false);\n\n constructor() {\n this.modalsContainerRef = { current: null };\n this.stackingRootRef = { current: null };\n }\n\n set sidePanelOpen(value: boolean) {\n this._sidePanelOpen.value = value;\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,SAAA,GAAAC,OAAA;AAKO,MAAMC,SAAS,CAAC;EAOrBC,WAAWA,CAAA,EAAG;IAAA,IAAAC,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA,0BAFG,IAAAC,kBAAQ,EAAU,KAAK,CAAC;IAGvC,IAAI,CAACC,kBAAkB,GAAG;MAAEC,OAAO,EAAE;IAAK,CAAC;IAC3C,IAAI,CAACC,eAAe,GAAG;MAAED,OAAO,EAAE;IAAK,CAAC;EAC1C;EAEA,IAAIE,aAAaA,CAACC,KAAc,EAAE;IAChC,IAAI,CAACC,cAAc,CAACD,KAAK,GAAGA,KAAK;EACnC;AACF;AAACE,OAAA,CAAAX,SAAA,GAAAA,SAAA"}
|
|
1
|
+
{"version":3,"names":["_bexUtils","require","PageState","constructor","_defineProperty2","default","reactive","modalsContainerRef","current","stackingRootRef","sidePanelOpen","value","_sidePanelOpen","exports"],"sources":["../../../src/state/PageState.ts"],"sourcesContent":["import { reactive } from '@wix/bex-utils';\nimport { RefObject } from './RefObject';\n\nexport interface PageStateParams {}\n\nexport class PageState {\n readonly modalsContainerRef: RefObject<HTMLElement>;\n\n readonly stackingRootRef: RefObject<HTMLElement>;\n\n _sidePanelOpen = reactive<boolean>(false);\n\n constructor() {\n this.modalsContainerRef = { current: null };\n this.stackingRootRef = { current: null };\n }\n\n set sidePanelOpen(value: boolean) {\n this._sidePanelOpen.value = value;\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,SAAA,GAAAC,OAAA;AAKO,MAAMC,SAAS,CAAC;EAOrBC,WAAWA,CAAA,EAAG;IAAA,IAAAC,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA,0BAFG,IAAAC,kBAAQ,EAAU,KAAK,CAAC;IAGvC,IAAI,CAACC,kBAAkB,GAAG;MAAEC,OAAO,EAAE;IAAK,CAAC;IAC3C,IAAI,CAACC,eAAe,GAAG;MAAED,OAAO,EAAE;IAAK,CAAC;EAC1C;EAEA,IAAIE,aAAaA,CAACC,KAAc,EAAE;IAChC,IAAI,CAACC,cAAc,CAACD,KAAK,GAAGA,KAAK;EACnC;AACF;AAACE,OAAA,CAAAX,SAAA,GAAAA,SAAA","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_mobx","require","initialCursor","exports","Pagination","constructor","params","_defineProperty2","default","limit","makeObservable","observable","ref","page","cursor","offset","computed","changeLimit","action","nextPage","prevPage","moveToPage","changeOffset","Math","floor","effectiveLimit","maxLimit","Infinity","eagerLimitQuery","limitQuery","toQueryString","String","pageBounds","from","to","pageOf","index"],"sources":["../../../src/state/Pagination.ts"],"sourcesContent":["import { action, computed, makeObservable, observable } from 'mobx';\n\nexport const initialCursor = {};\n\nexport interface PaginationParams {\n limit?: number;\n}\n\nexport class Pagination {\n limit: number;\n page = 1;\n cursor: string | typeof initialCursor | null = initialCursor;\n\n constructor(params: PaginationParams) {\n this.limit = params.limit ?? 100;\n\n makeObservable(this, {\n limit: observable.ref,\n page: observable.ref,\n cursor: observable.ref,\n offset: computed,\n changeLimit: action,\n nextPage: action,\n prevPage: action,\n moveToPage: action,\n });\n }\n\n changeOffset(offset: number) {\n this.page = Math.floor(offset / this.limit) + 1;\n }\n\n effectiveLimit(maxLimit = Infinity) {\n const { limit } = this;\n return limit > 0 ? limit : maxLimit;\n }\n\n eagerLimitQuery() {\n const limit = this.effectiveLimit();\n return limit === Infinity ? {} : this.limitQuery();\n }\n\n limitQuery(maxLimit?: number) {\n const { page } = this;\n const limit = this.effectiveLimit(maxLimit);\n return {\n limit,\n offset: limit * (page - 1),\n };\n }\n\n public toQueryString(): Record<string, string> {\n return {\n page: String(this.page),\n limit: String(this.limit),\n };\n }\n\n changeLimit(limit: number) {\n this.limit = limit;\n }\n\n nextPage() {\n this.page += 1;\n }\n\n prevPage() {\n this.page -= 1;\n }\n\n moveToPage(page = 0) {\n this.page = page;\n }\n\n get offset() {\n const { limit, page } = this;\n return limit * (page - 1);\n }\n\n pageBounds(page: number) {\n const { limit } = this;\n const from = limit * (page - 1);\n return {\n from,\n to: from + limit,\n };\n }\n\n pageOf(index: number) {\n return Math.floor(index / this.limit) + 1;\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["_mobx","require","initialCursor","exports","Pagination","constructor","params","_defineProperty2","default","limit","makeObservable","observable","ref","page","cursor","offset","computed","changeLimit","action","nextPage","prevPage","moveToPage","changeOffset","Math","floor","effectiveLimit","maxLimit","Infinity","eagerLimitQuery","limitQuery","toQueryString","String","pageBounds","from","to","pageOf","index"],"sources":["../../../src/state/Pagination.ts"],"sourcesContent":["import { action, computed, makeObservable, observable } from 'mobx';\n\nexport const initialCursor = {};\n\nexport interface PaginationParams {\n limit?: number;\n}\n\nexport class Pagination {\n limit: number;\n page = 1;\n cursor: string | typeof initialCursor | null = initialCursor;\n\n constructor(params: PaginationParams) {\n this.limit = params.limit ?? 100;\n\n makeObservable(this, {\n limit: observable.ref,\n page: observable.ref,\n cursor: observable.ref,\n offset: computed,\n changeLimit: action,\n nextPage: action,\n prevPage: action,\n moveToPage: action,\n });\n }\n\n changeOffset(offset: number) {\n this.page = Math.floor(offset / this.limit) + 1;\n }\n\n effectiveLimit(maxLimit = Infinity) {\n const { limit } = this;\n return limit > 0 ? limit : maxLimit;\n }\n\n eagerLimitQuery() {\n const limit = this.effectiveLimit();\n return limit === Infinity ? {} : this.limitQuery();\n }\n\n limitQuery(maxLimit?: number) {\n const { page } = this;\n const limit = this.effectiveLimit(maxLimit);\n return {\n limit,\n offset: limit * (page - 1),\n };\n }\n\n public toQueryString(): Record<string, string> {\n return {\n page: String(this.page),\n limit: String(this.limit),\n };\n }\n\n changeLimit(limit: number) {\n this.limit = limit;\n }\n\n nextPage() {\n this.page += 1;\n }\n\n prevPage() {\n this.page -= 1;\n }\n\n moveToPage(page = 0) {\n this.page = page;\n }\n\n get offset() {\n const { limit, page } = this;\n return limit * (page - 1);\n }\n\n pageBounds(page: number) {\n const { limit } = this;\n const from = limit * (page - 1);\n return {\n from,\n to: from + limit,\n };\n }\n\n pageOf(index: number) {\n return Math.floor(index / this.limit) + 1;\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_PaginationModeCursor","require","_PaginationModeOffset","PaginationMode","constructor","collection","_defineProperty2","default","cursorMode","PaginationModeCursor","offsetMode","PaginationModeOffset","mode","_paginationModeRef","current","fetchedLastPage","setCursor","cursor","id","exports"],"sources":["../../../src/state/PaginationMode.ts"],"sourcesContent":["import { PaginationModeCursor } from './PaginationModeCursor';\nimport { PaginationModeOffset } from './PaginationModeOffset';\nimport { CollectionState } from './CollectionState';\nimport { FiltersMap } from '../model';\n\nexport type PaginationModeRef = {\n current: 'offset' | 'cursor' | undefined;\n};\n\nexport class PaginationMode<T, F extends FiltersMap = FiltersMap> {\n readonly collection: CollectionState<T, F>;\n readonly cursorMode: PaginationModeCursor<T, F>;\n readonly offsetMode: PaginationModeOffset<T, F>;\n\n constructor(collection: CollectionState<T, F>) {\n this.collection = collection;\n this.cursorMode = new PaginationModeCursor({ collection });\n this.offsetMode = new PaginationModeOffset({ collection });\n }\n\n get mode(): PaginationModeCursor<T, F> | PaginationModeOffset<T, F> {\n return this.collection._paginationModeRef.current === 'cursor'\n ? this.cursorMode\n : this.offsetMode;\n }\n\n get fetchedLastPage() {\n return this.mode.fetchedLastPage;\n }\n\n setCursor(cursor: string | null) {\n this.mode.setCursor(cursor);\n }\n\n get id() {\n return this.mode.id;\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,qBAAA,GAAAC,OAAA;AACA,IAAAC,qBAAA,GAAAD,OAAA;AAQO,MAAME,cAAc,CAAuC;EAKhEC,WAAWA,CAACC,UAAiC,EAAE;IAAA,IAAAC,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAC7C,IAAI,CAACF,UAAU,GAAGA,UAAU;IAC5B,IAAI,CAACG,UAAU,GAAG,IAAIC,0CAAoB,CAAC;MAAEJ;IAAW,CAAC,CAAC;IAC1D,IAAI,CAACK,UAAU,GAAG,IAAIC,0CAAoB,CAAC;MAAEN;IAAW,CAAC,CAAC;EAC5D;EAEA,IAAIO,IAAIA,CAAA,EAA4D;IAClE,OAAO,IAAI,CAACP,UAAU,CAACQ,kBAAkB,CAACC,OAAO,KAAK,QAAQ,GAC1D,IAAI,CAACN,UAAU,GACf,IAAI,CAACE,UAAU;EACrB;EAEA,IAAIK,eAAeA,CAAA,EAAG;IACpB,OAAO,IAAI,CAACH,IAAI,CAACG,eAAe;EAClC;EAEAC,SAASA,CAACC,MAAqB,EAAE;IAC/B,IAAI,CAACL,IAAI,CAACI,SAAS,CAACC,MAAM,CAAC;EAC7B;EAEA,IAAIC,EAAEA,CAAA,EAAG;IACP,OAAO,IAAI,CAACN,IAAI,CAACM,EAAE;EACrB;AACF;AAACC,OAAA,CAAAhB,cAAA,GAAAA,cAAA"}
|
|
1
|
+
{"version":3,"names":["_PaginationModeCursor","require","_PaginationModeOffset","PaginationMode","constructor","collection","_defineProperty2","default","cursorMode","PaginationModeCursor","offsetMode","PaginationModeOffset","mode","_paginationModeRef","current","fetchedLastPage","setCursor","cursor","id","exports"],"sources":["../../../src/state/PaginationMode.ts"],"sourcesContent":["import { PaginationModeCursor } from './PaginationModeCursor';\nimport { PaginationModeOffset } from './PaginationModeOffset';\nimport { CollectionState } from './CollectionState';\nimport { FiltersMap } from '../model';\n\nexport type PaginationModeRef = {\n current: 'offset' | 'cursor' | undefined;\n};\n\nexport class PaginationMode<T, F extends FiltersMap = FiltersMap> {\n readonly collection: CollectionState<T, F>;\n readonly cursorMode: PaginationModeCursor<T, F>;\n readonly offsetMode: PaginationModeOffset<T, F>;\n\n constructor(collection: CollectionState<T, F>) {\n this.collection = collection;\n this.cursorMode = new PaginationModeCursor({ collection });\n this.offsetMode = new PaginationModeOffset({ collection });\n }\n\n get mode(): PaginationModeCursor<T, F> | PaginationModeOffset<T, F> {\n return this.collection._paginationModeRef.current === 'cursor'\n ? this.cursorMode\n : this.offsetMode;\n }\n\n get fetchedLastPage() {\n return this.mode.fetchedLastPage;\n }\n\n setCursor(cursor: string | null) {\n this.mode.setCursor(cursor);\n }\n\n get id() {\n return this.mode.id;\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,qBAAA,GAAAC,OAAA;AACA,IAAAC,qBAAA,GAAAD,OAAA;AAQO,MAAME,cAAc,CAAuC;EAKhEC,WAAWA,CAACC,UAAiC,EAAE;IAAA,IAAAC,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAC7C,IAAI,CAACF,UAAU,GAAGA,UAAU;IAC5B,IAAI,CAACG,UAAU,GAAG,IAAIC,0CAAoB,CAAC;MAAEJ;IAAW,CAAC,CAAC;IAC1D,IAAI,CAACK,UAAU,GAAG,IAAIC,0CAAoB,CAAC;MAAEN;IAAW,CAAC,CAAC;EAC5D;EAEA,IAAIO,IAAIA,CAAA,EAA4D;IAClE,OAAO,IAAI,CAACP,UAAU,CAACQ,kBAAkB,CAACC,OAAO,KAAK,QAAQ,GAC1D,IAAI,CAACN,UAAU,GACf,IAAI,CAACE,UAAU;EACrB;EAEA,IAAIK,eAAeA,CAAA,EAAG;IACpB,OAAO,IAAI,CAACH,IAAI,CAACG,eAAe;EAClC;EAEAC,SAASA,CAACC,MAAqB,EAAE;IAC/B,IAAI,CAACL,IAAI,CAACI,SAAS,CAACC,MAAM,CAAC;EAC7B;EAEA,IAAIC,EAAEA,CAAA,EAAG;IACP,OAAO,IAAI,CAACN,IAAI,CAACM,EAAE;EACrB;AACF;AAACC,OAAA,CAAAhB,cAAA,GAAAA,cAAA","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_mobx","require","PaginationModeCursor","constructor","params","_defineProperty2","default","collection","makeObservable","fetchedLastPage","computed","setCursor","action","query","pagination","cursor","id","exports"],"sources":["../../../src/state/PaginationModeCursor.ts"],"sourcesContent":["import { FiltersMap } from '../model';\nimport { CollectionState } from './CollectionState';\nimport { action, computed, makeObservable } from 'mobx';\n\nexport interface PaginationModeCursorParams<\n T,\n F extends FiltersMap = FiltersMap,\n> {\n collection: CollectionState<T, F>;\n}\n\nexport class PaginationModeCursor<T, F extends FiltersMap = FiltersMap> {\n static readonly id = 'cursor' as const;\n\n readonly collection: CollectionState<T, F>;\n\n constructor(params: PaginationModeCursorParams<T, F>) {\n this.collection = params.collection;\n makeObservable(this, {\n fetchedLastPage: computed,\n setCursor: action,\n });\n }\n\n get fetchedLastPage() {\n const {\n query: {\n pagination: { cursor },\n },\n } = this.collection;\n return cursor == null;\n }\n\n setCursor(cursor: string | null) {\n const { query } = this.collection;\n query.pagination.cursor = cursor;\n }\n\n get id() {\n return PaginationModeCursor.id;\n }\n}\n"],"mappings":";;;;;;AAEA,IAAAA,KAAA,GAAAC,OAAA;AASO,MAAMC,oBAAoB,CAAuC;EAKtEC,WAAWA,CAACC,MAAwC,EAAE;IAAA,IAAAC,gBAAA,CAAAC,OAAA;IACpD,IAAI,CAACC,UAAU,GAAGH,MAAM,CAACG,UAAU;IACnC,IAAAC,oBAAc,EAAC,IAAI,EAAE;MACnBC,eAAe,EAAEC,cAAQ;MACzBC,SAAS,EAAEC;IACb,CAAC,CAAC;EACJ;EAEA,IAAIH,eAAeA,CAAA,EAAG;IACpB,MAAM;MACJI,KAAK,EAAE;QACLC,UAAU,EAAE;UAAEC;QAAO;MACvB;IACF,CAAC,GAAG,IAAI,CAACR,UAAU;IACnB,OAAOQ,MAAM,IAAI,IAAI;EACvB;EAEAJ,SAASA,CAACI,MAAqB,EAAE;IAC/B,MAAM;MAAEF;IAAM,CAAC,GAAG,IAAI,CAACN,UAAU;IACjCM,KAAK,CAACC,UAAU,CAACC,MAAM,GAAGA,MAAM;EAClC;EAEA,IAAIC,EAAEA,CAAA,EAAG;IACP,OAAOd,oBAAoB,CAACc,EAAE;EAChC;AACF;AAACC,OAAA,CAAAf,oBAAA,GAAAA,oBAAA;AAAA,IAAAG,gBAAA,CAAAC,OAAA,EA9BYJ,oBAAoB,QACV,QAAQ"}
|
|
1
|
+
{"version":3,"names":["_mobx","require","PaginationModeCursor","constructor","params","_defineProperty2","default","collection","makeObservable","fetchedLastPage","computed","setCursor","action","query","pagination","cursor","id","exports"],"sources":["../../../src/state/PaginationModeCursor.ts"],"sourcesContent":["import { FiltersMap } from '../model';\nimport { CollectionState } from './CollectionState';\nimport { action, computed, makeObservable } from 'mobx';\n\nexport interface PaginationModeCursorParams<\n T,\n F extends FiltersMap = FiltersMap,\n> {\n collection: CollectionState<T, F>;\n}\n\nexport class PaginationModeCursor<T, F extends FiltersMap = FiltersMap> {\n static readonly id = 'cursor' as const;\n\n readonly collection: CollectionState<T, F>;\n\n constructor(params: PaginationModeCursorParams<T, F>) {\n this.collection = params.collection;\n makeObservable(this, {\n fetchedLastPage: computed,\n setCursor: action,\n });\n }\n\n get fetchedLastPage() {\n const {\n query: {\n pagination: { cursor },\n },\n } = this.collection;\n return cursor == null;\n }\n\n setCursor(cursor: string | null) {\n const { query } = this.collection;\n query.pagination.cursor = cursor;\n }\n\n get id() {\n return PaginationModeCursor.id;\n }\n}\n"],"mappings":";;;;;;AAEA,IAAAA,KAAA,GAAAC,OAAA;AASO,MAAMC,oBAAoB,CAAuC;EAKtEC,WAAWA,CAACC,MAAwC,EAAE;IAAA,IAAAC,gBAAA,CAAAC,OAAA;IACpD,IAAI,CAACC,UAAU,GAAGH,MAAM,CAACG,UAAU;IACnC,IAAAC,oBAAc,EAAC,IAAI,EAAE;MACnBC,eAAe,EAAEC,cAAQ;MACzBC,SAAS,EAAEC;IACb,CAAC,CAAC;EACJ;EAEA,IAAIH,eAAeA,CAAA,EAAG;IACpB,MAAM;MACJI,KAAK,EAAE;QACLC,UAAU,EAAE;UAAEC;QAAO;MACvB;IACF,CAAC,GAAG,IAAI,CAACR,UAAU;IACnB,OAAOQ,MAAM,IAAI,IAAI;EACvB;EAEAJ,SAASA,CAACI,MAAqB,EAAE;IAC/B,MAAM;MAAEF;IAAM,CAAC,GAAG,IAAI,CAACN,UAAU;IACjCM,KAAK,CAACC,UAAU,CAACC,MAAM,GAAGA,MAAM;EAClC;EAEA,IAAIC,EAAEA,CAAA,EAAG;IACP,OAAOd,oBAAoB,CAACc,EAAE;EAChC;AACF;AAACC,OAAA,CAAAf,oBAAA,GAAAA,oBAAA;AAAA,IAAAG,gBAAA,CAAAC,OAAA,EA9BYJ,oBAAoB,QACV,QAAQ","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_mobx","require","PaginationModeOffset","constructor","params","_defineProperty2","default","collection","makeObservable","fetchedLastPage","computed","totalPages","result","pages","length","setCursor","id","exports"],"sources":["../../../src/state/PaginationModeOffset.ts"],"sourcesContent":["import { FiltersMap } from '../model';\nimport { CollectionState } from './CollectionState';\nimport { computed, makeObservable } from 'mobx';\n\nexport interface PaginationModeOffsetParams<\n T,\n F extends FiltersMap = FiltersMap,\n> {\n collection: CollectionState<T, F>;\n}\n\nexport class PaginationModeOffset<T, F extends FiltersMap = FiltersMap> {\n static readonly id = 'offset' as const;\n\n readonly collection: CollectionState<T, F>;\n constructor(params: PaginationModeOffsetParams<T, F>) {\n this.collection = params.collection;\n makeObservable(this, {\n fetchedLastPage: computed,\n });\n }\n\n get fetchedLastPage() {\n const {\n totalPages,\n result: { pages },\n } = this.collection;\n return pages.length >= totalPages;\n }\n\n setCursor() {}\n\n get id() {\n return PaginationModeOffset.id;\n }\n}\n"],"mappings":";;;;;;AAEA,IAAAA,KAAA,GAAAC,OAAA;AASO,MAAMC,oBAAoB,CAAuC;EAItEC,WAAWA,CAACC,MAAwC,EAAE;IAAA,IAAAC,gBAAA,CAAAC,OAAA;IACpD,IAAI,CAACC,UAAU,GAAGH,MAAM,CAACG,UAAU;IACnC,IAAAC,oBAAc,EAAC,IAAI,EAAE;MACnBC,eAAe,EAAEC;IACnB,CAAC,CAAC;EACJ;EAEA,IAAID,eAAeA,CAAA,EAAG;IACpB,MAAM;MACJE,UAAU;MACVC,MAAM,EAAE;QAAEC;MAAM;IAClB,CAAC,GAAG,IAAI,CAACN,UAAU;IACnB,OAAOM,KAAK,CAACC,MAAM,IAAIH,UAAU;EACnC;EAEAI,SAASA,CAAA,EAAG,CAAC;EAEb,IAAIC,EAAEA,CAAA,EAAG;IACP,OAAOd,oBAAoB,CAACc,EAAE;EAChC;AACF;AAACC,OAAA,CAAAf,oBAAA,GAAAA,oBAAA;AAAA,IAAAG,gBAAA,CAAAC,OAAA,EAxBYJ,oBAAoB,QACV,QAAQ"}
|
|
1
|
+
{"version":3,"names":["_mobx","require","PaginationModeOffset","constructor","params","_defineProperty2","default","collection","makeObservable","fetchedLastPage","computed","totalPages","result","pages","length","setCursor","id","exports"],"sources":["../../../src/state/PaginationModeOffset.ts"],"sourcesContent":["import { FiltersMap } from '../model';\nimport { CollectionState } from './CollectionState';\nimport { computed, makeObservable } from 'mobx';\n\nexport interface PaginationModeOffsetParams<\n T,\n F extends FiltersMap = FiltersMap,\n> {\n collection: CollectionState<T, F>;\n}\n\nexport class PaginationModeOffset<T, F extends FiltersMap = FiltersMap> {\n static readonly id = 'offset' as const;\n\n readonly collection: CollectionState<T, F>;\n constructor(params: PaginationModeOffsetParams<T, F>) {\n this.collection = params.collection;\n makeObservable(this, {\n fetchedLastPage: computed,\n });\n }\n\n get fetchedLastPage() {\n const {\n totalPages,\n result: { pages },\n } = this.collection;\n return pages.length >= totalPages;\n }\n\n setCursor() {}\n\n get id() {\n return PaginationModeOffset.id;\n }\n}\n"],"mappings":";;;;;;AAEA,IAAAA,KAAA,GAAAC,OAAA;AASO,MAAMC,oBAAoB,CAAuC;EAItEC,WAAWA,CAACC,MAAwC,EAAE;IAAA,IAAAC,gBAAA,CAAAC,OAAA;IACpD,IAAI,CAACC,UAAU,GAAGH,MAAM,CAACG,UAAU;IACnC,IAAAC,oBAAc,EAAC,IAAI,EAAE;MACnBC,eAAe,EAAEC;IACnB,CAAC,CAAC;EACJ;EAEA,IAAID,eAAeA,CAAA,EAAG;IACpB,MAAM;MACJE,UAAU;MACVC,MAAM,EAAE;QAAEC;MAAM;IAClB,CAAC,GAAG,IAAI,CAACN,UAAU;IACnB,OAAOM,KAAK,CAACC,MAAM,IAAIH,UAAU;EACnC;EAEAI,SAASA,CAAA,EAAG,CAAC;EAEb,IAAIC,EAAEA,CAAA,EAAG;IACP,OAAOd,oBAAoB,CAACc,EAAE;EAChC;AACF;AAACC,OAAA,CAAAf,oBAAA,GAAAA,oBAAA;AAAA,IAAAG,gBAAA,CAAAC,OAAA,EAxBYJ,oBAAoB,QACV,QAAQ","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_CollectionState","require","_mapValues","_interopRequireDefault","_mobx","_TaskState","_v","_util","_snapshot","_MultiCollectionSupport","_onItemsCreated","DEFAULT_FLOATING_NOTIFICATION_HEIGHT","withoutDefaults","withoutIrrelevant","PickerState","constructor","params","_defineProperty2","default","TaskState","reportBi","startTime","performance","now","totalNewItems","loadMore","_commonDynamicBiParams","loadingTime","Math","round","loadedItems","collection","result","pickerModalUsability","action","searchTerm","query","search","value","cairoSearchResults","searchResultsCnt","total","ctaName","currentLevel","numLevels","cairoCtaClicked","ctaIndex","numCtas","location","moreActionsIndex","items","onItemsCreated","reportProps","runInAction","newItemCreationEnd","numSelectedItems","bulkSelect","select","selectedCount","resultType","getMaxItems","multi","MultiCollectionSupport","collections","shouldFilterNotAffectTotalCount","isScrollTop","minContentHeight","events","loadStartTime","filteredListSize","Snapshot","expression","Object","values","customFilters","map","f","effect","queryName","fetchData","history","queryCache","errorMonitor","onlineState","showToast","translate","itemKey","itemName","paginationMode","selectionConsistencyMode","lodash","noFilters","CollectionState","fetchErrorMessage","id","limit","pagination","onError","filters","mapValues","filter","clearedFilter","clone","reset","strictFiltersOnly","filterName","makeObservable","setFloatingNotificationHeight","someHidden","computed","toggle","updateIsScrollTop","onPrimaryButtonClick","observable","ref","clearResultAndMoveToStart","force","Promise","all","strictFiltersOnlyTotal","noFiltersTotal","newValue","listSize","maxItems","init","initTask","onReady","onInitialFetchError","emitter","on","onNewPage","onSearchStart","disposers","runOnce","status","promise","forceUpdate","loadEnd","url","window","href","initialItems","size","asComputed","e","captureException","err","isOnline","off","disposer","onCloseButtonClick","componentDismissed","origin","onBackButtonClick","_onButtonClick","onContinueButtonClick","onSecondaryButtonOnClick","pickerPickModalCtaButtonClickOrImmediateCta","isImmediate","itemsCnt","keyedItem","options","_bulkSelect$getCollec","onItemSelectClick","selectedCountOrTotal","numItemsBefore","selectedValues","prevSelected","clear","cairoItemSelectionToggled","isSelectAll","isFromSearch","isEmpty","searchQuery","itemIndex","index","hasAdditionalStep","itemId","key","clickType","isChecked","numItemsAfter","item","previousIndex","getCollectionItem","floatingNotificationHeight","exports"],"sources":["../../../src/state/PickerState.ts"],"sourcesContent":["import { CollectionState } from './CollectionState';\nimport {\n CollectionEvents,\n ComputedQuery,\n ComputedResult,\n FiltersMap,\n KeyedItem,\n} from '../model';\nimport mapValues from 'lodash/mapValues';\nimport {\n action,\n computed,\n makeObservable,\n observable,\n runInAction,\n} from 'mobx';\nimport { TaskState } from './TaskState';\nimport { ReportBI } from '../services';\nimport {\n cairoCtaClicked,\n cairoItemSelectionToggled,\n cairoSearchResults,\n componentDismissed,\n loadEnd,\n loadMore,\n newItemCreationEnd,\n pickerModalUsability,\n pickerPickModalCtaButtonClickOrImmediateCta,\n} from '@wix/bex-utils/@wix/bi-logger-cairo-os/v2';\nimport { withoutIrrelevant } from '../util';\nimport { Snapshot } from './snapshot';\nimport { MultiCollectionSupport } from './MultiCollectionSupport';\nimport { onItemsCreated } from './onItemsCreated';\n\nconst DEFAULT_FLOATING_NOTIFICATION_HEIGHT = 54;\n\nexport type OnPickerReady<F extends FiltersMap> = (params: {\n query: ComputedQuery<F>;\n result: ComputedResult;\n noFiltersTotal: ComputedResult['total'];\n}) => unknown;\n\nexport interface PickerEvents<T, F extends FiltersMap>\n extends CollectionEvents<F> {\n readonly onReady?: OnPickerReady<F>;\n readonly onInitialFetchError?: (params: {\n err: unknown;\n isOnline: boolean;\n }) => unknown;\n readonly onItemSelectClick?: (params: {\n item: T;\n index: number;\n previousIndex: number | null;\n }) => unknown;\n}\n\nexport interface PickerStateParams<T, F extends FiltersMap> {\n getMaxItems: () => number | undefined;\n collection: CollectionState<T, F>;\n minContentHeight?: string | number;\n events?: PickerEvents<T, F>;\n shouldFilterNotAffectTotalCount?: (filterName: keyof F) => boolean;\n loadStartTime?: number;\n reportBi: ReportBI;\n}\n\nconst withoutDefaults = withoutIrrelevant<\n 'currentTab' | 'currentFilters' | 'currentSortOrder' | 'currentView'\n>();\n\nexport class PickerState<T, F extends FiltersMap = FiltersMap> {\n readonly collection: PickerStateParams<T, F>['collection'];\n readonly multi;\n readonly strictFiltersOnly: PickerStateParams<T, F>['collection'];\n\n readonly noFilters: PickerStateParams<T, F>['collection'];\n readonly shouldFilterNotAffectTotalCount: (filterName: keyof F) => boolean;\n readonly events: PickerEvents<T, F>;\n\n readonly initTask = new TaskState();\n readonly reportBi;\n readonly loadStartTime;\n\n isScrollTop: boolean;\n\n minContentHeight: string | number;\n floatingNotificationHeight = 0;\n\n readonly getMaxItems;\n\n readonly filteredListSize;\n\n constructor(params: Readonly<PickerStateParams<T, F>>) {\n this.getMaxItems = params.getMaxItems;\n this.collection = params.collection;\n this.reportBi = params.reportBi;\n\n this.multi = new MultiCollectionSupport({\n collections: [this.collection],\n });\n\n this.shouldFilterNotAffectTotalCount =\n params.shouldFilterNotAffectTotalCount ?? (() => false);\n this.isScrollTop = true;\n this.minContentHeight = params.minContentHeight ?? 300;\n\n this.events = params.events ?? {};\n\n this.loadStartTime = params.loadStartTime ?? performance.now();\n\n this.filteredListSize = new Snapshot({\n expression: () =>\n Object.values(this.collection.query.customFilters).map((f) => f?.value),\n effect: () => this.collection.result.total,\n });\n\n const {\n queryName,\n fetchData,\n query,\n history,\n queryCache,\n errorMonitor,\n onlineState,\n showToast,\n translate,\n itemKey,\n itemName,\n paginationMode,\n selectionConsistencyMode,\n events,\n lodash,\n } = this.collection;\n\n this.noFilters = new CollectionState({\n queryName,\n fetchData,\n history,\n queryCache,\n errorMonitor,\n lodash,\n onlineState,\n showToast,\n translate,\n itemKey,\n itemName,\n fetchErrorMessage: () => null,\n paginationMode: paginationMode.id,\n limit: query.pagination.limit,\n selectionConsistencyMode,\n events: {\n onError: events.onError,\n },\n filters: mapValues(this.collection.query.customFilters, (filter) => {\n if (filter) {\n const clearedFilter = filter.clone();\n clearedFilter.reset(); // reset strict filter\n return clearedFilter;\n }\n\n return filter;\n }) as F,\n });\n\n this.strictFiltersOnly = new CollectionState({\n queryName,\n fetchData,\n history,\n queryCache,\n errorMonitor,\n lodash,\n onlineState,\n showToast,\n translate,\n itemKey,\n itemName,\n fetchErrorMessage: () => null,\n paginationMode: paginationMode.id,\n limit: query.pagination.limit,\n selectionConsistencyMode,\n events: {\n onError: events.onError,\n },\n filters: mapValues(\n this.collection.query.customFilters,\n (filter, filterName) => {\n // reset all filters that should not affect total count\n if (\n filter != null &&\n this.shouldFilterNotAffectTotalCount(filterName)\n ) {\n const clearedFilter = filter.clone();\n clearedFilter.reset();\n return clearedFilter;\n }\n\n return filter;\n },\n ) as F,\n });\n\n makeObservable(this, {\n setFloatingNotificationHeight: action,\n someHidden: computed,\n toggle: action,\n updateIsScrollTop: action,\n onPrimaryButtonClick: action,\n isScrollTop: observable.ref,\n });\n }\n\n async clearResultAndMoveToStart({ force }: { force?: boolean } = {}) {\n await Promise.all([\n this.collection.clearResultAndMoveToStart({ force }),\n this.strictFiltersOnly.clearResultAndMoveToStart({ force }),\n this.noFilters.clearResultAndMoveToStart({ force }),\n ]);\n }\n\n get someHidden() {\n const {\n strictFiltersOnly: {\n result: { total: strictFiltersOnlyTotal },\n },\n noFilters: {\n result: { total: noFiltersTotal },\n },\n } = this;\n return noFiltersTotal > strictFiltersOnlyTotal;\n }\n\n updateIsScrollTop(newValue: boolean) {\n this.isScrollTop = newValue;\n }\n\n _commonDynamicBiParams(): {\n filteredListSize?: number;\n listSize?: number;\n maxItems?: number;\n } {\n const { noFilters, collection, filteredListSize } = this;\n\n return {\n ...collection._commonDynamicBiParams(),\n listSize: noFilters.result.total,\n filteredListSize: filteredListSize.value,\n maxItems: this.getMaxItems(),\n };\n }\n\n onNewPage = () => {\n const { reportBi } = this;\n\n const startTime = performance.now();\n\n return ({ totalNewItems }: { totalNewItems: number }) => {\n reportBi(\n withoutDefaults(loadMore)({\n ...this._commonDynamicBiParams(),\n loadingTime: Math.round(performance.now() - startTime),\n loadedItems: totalNewItems,\n }),\n );\n };\n };\n\n onSearchStart = () => {\n const { collection, reportBi } = this;\n\n const { result } = collection;\n\n const startTime = performance.now();\n reportBi(\n pickerModalUsability({\n ...this._commonDynamicBiParams(),\n action: 'search',\n searchTerm: collection.query.search.value,\n }),\n );\n\n return () => {\n reportBi(\n cairoSearchResults({\n ...this._commonDynamicBiParams(),\n loadingTime: Math.round(performance.now() - startTime),\n searchResultsCnt: result.total,\n searchTerm: collection.query.search.value,\n }),\n );\n };\n };\n\n init() {\n const {\n collection,\n strictFiltersOnly,\n noFilters,\n initTask,\n events: { onReady, onInitialFetchError },\n reportBi,\n filteredListSize,\n } = this;\n\n collection.emitter.on('newPageStart', this.onNewPage);\n collection.emitter.on('searchStart', this.onSearchStart);\n\n const disposers = [\n collection.init(),\n filteredListSize.init(),\n strictFiltersOnly.init(),\n noFilters.init(),\n ];\n\n initTask.runOnce(async () => {\n const { result, query } = collection;\n\n try {\n await Promise.all([\n collection.initTask.status.promise,\n strictFiltersOnly.initTask.status.promise,\n noFilters.initTask.status.promise,\n ]);\n\n filteredListSize.forceUpdate();\n\n runInAction(() => {\n try {\n reportBi(\n withoutDefaults(loadEnd)({\n ...this._commonDynamicBiParams(),\n url: window.location.href,\n loadingTime: Math.round(performance.now() - this.loadStartTime),\n initialItems: result.size,\n }),\n );\n onReady?.({\n query: query.asComputed,\n result: result.asComputed,\n noFiltersTotal: noFilters.result.total,\n });\n } catch (e) {\n collection.errorMonitor.captureException(e);\n }\n });\n } catch (err) {\n await onInitialFetchError?.({\n err,\n isOnline: collection.onlineState.isOnline,\n });\n throw err;\n }\n });\n\n return () => {\n collection.emitter.off('newPageStart', this.onNewPage);\n collection.emitter.off('searchStart', this.onSearchStart);\n for (const disposer of disposers) {\n disposer();\n }\n };\n }\n\n onCloseButtonClick() {\n const { reportBi } = this;\n\n reportBi(\n withoutDefaults(componentDismissed)({\n origin: 'X button',\n }),\n );\n }\n\n onBackButtonClick() {\n const { _onButtonClick } = this;\n\n _onButtonClick({ ctaName: 'back', numLevels: 2, currentLevel: 2 });\n }\n\n onContinueButtonClick() {\n const { _onButtonClick } = this;\n\n _onButtonClick({ ctaName: 'continue-next', numLevels: 2, currentLevel: 1 });\n }\n\n onSecondaryButtonOnClick() {\n const { reportBi } = this;\n\n reportBi(\n withoutDefaults(componentDismissed)({\n origin: 'Cancel button',\n }),\n );\n }\n\n onPrimaryButtonClick({\n currentLevel,\n numLevels,\n }: {\n currentLevel: number;\n numLevels: number;\n }) {\n const {\n collection: { bulkSelect },\n _onButtonClick,\n reportBi,\n } = this;\n\n const { selectedCount } = bulkSelect;\n\n _onButtonClick({ ctaName: 'continue', currentLevel, numLevels });\n\n reportBi(\n pickerPickModalCtaButtonClickOrImmediateCta({\n ...this._commonDynamicBiParams(),\n isImmediate: false,\n itemsCnt: selectedCount,\n }),\n );\n }\n\n _onButtonClick = ({\n ctaName,\n currentLevel,\n numLevels,\n }: {\n ctaName: string;\n currentLevel: number;\n numLevels: number;\n }) => {\n this.reportBi(\n cairoCtaClicked({\n ...this._commonDynamicBiParams(),\n ctaIndex: 1,\n numCtas: 1,\n currentLevel,\n numLevels,\n location: 'picker',\n moreActionsIndex: 0,\n ctaName,\n }),\n );\n };\n\n toggle(\n keyedItem: KeyedItem<T>,\n options: { clear?: boolean; hasAdditionalStep?: boolean } = {},\n ) {\n const {\n collection,\n events: { onItemSelectClick },\n reportBi,\n } = this;\n const {\n bulkSelect,\n query: { search },\n } = collection;\n const { select, selectedCountOrTotal: numItemsBefore } = bulkSelect;\n\n const {\n selectedValues: [prevSelected],\n } = select;\n\n if (options.clear) {\n bulkSelect.select.clear();\n }\n\n bulkSelect.toggle(keyedItem);\n reportBi(\n cairoItemSelectionToggled({\n ...this._commonDynamicBiParams(),\n isSelectAll: false,\n isFromSearch: !search.isEmpty,\n searchQuery: search.value,\n itemIndex: keyedItem.index,\n numLevels: options.hasAdditionalStep ? 2 : 1,\n itemId: keyedItem.key,\n clickType: bulkSelect.isChecked(keyedItem.key)\n ? 'Selection'\n : 'Deselection',\n numItemsBefore,\n numItemsAfter: bulkSelect.selectedCountOrTotal,\n }),\n );\n onItemSelectClick?.({\n item: keyedItem.item,\n index: keyedItem.index,\n previousIndex:\n prevSelected != null\n ? (bulkSelect.getCollectionItem(prevSelected.key)?.index as\n | number\n | null)\n : null,\n });\n }\n\n setFloatingNotificationHeight(\n floatingNotificationHeight: number = DEFAULT_FLOATING_NOTIFICATION_HEIGHT,\n ) {\n this.floatingNotificationHeight = floatingNotificationHeight;\n }\n\n onCreateNew = action(async (items?: T[]) => {\n if (items) {\n await onItemsCreated(this.collection, {\n items,\n reportBi: (reportProps) => {\n this.reportBi({\n ...reportProps,\n params: {\n ...this._commonDynamicBiParams(),\n ...reportProps.params,\n },\n });\n },\n });\n } else {\n runInAction(() => {\n this.reportBi(\n newItemCreationEnd({\n ...this._commonDynamicBiParams(),\n numSelectedItems: this.collection.bulkSelect.select.selectedCount,\n resultType: 'dismissed',\n }),\n );\n });\n }\n });\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["_CollectionState","require","_mapValues","_interopRequireDefault","_mobx","_TaskState","_v","_util","_snapshot","_MultiCollectionSupport","_onItemsCreated","DEFAULT_FLOATING_NOTIFICATION_HEIGHT","withoutDefaults","withoutIrrelevant","PickerState","constructor","params","_defineProperty2","default","TaskState","reportBi","startTime","performance","now","totalNewItems","loadMore","_commonDynamicBiParams","loadingTime","Math","round","loadedItems","collection","result","pickerModalUsability","action","searchTerm","query","search","value","cairoSearchResults","searchResultsCnt","total","ctaName","currentLevel","numLevels","cairoCtaClicked","ctaIndex","numCtas","location","moreActionsIndex","items","onItemsCreated","reportProps","runInAction","newItemCreationEnd","numSelectedItems","bulkSelect","select","selectedCount","resultType","getMaxItems","multi","MultiCollectionSupport","collections","shouldFilterNotAffectTotalCount","isScrollTop","minContentHeight","events","loadStartTime","filteredListSize","Snapshot","expression","Object","values","customFilters","map","f","effect","queryName","fetchData","history","queryCache","errorMonitor","onlineState","showToast","translate","itemKey","itemName","paginationMode","selectionConsistencyMode","lodash","noFilters","CollectionState","fetchErrorMessage","id","limit","pagination","onError","filters","mapValues","filter","clearedFilter","clone","reset","strictFiltersOnly","filterName","makeObservable","setFloatingNotificationHeight","someHidden","computed","toggle","updateIsScrollTop","onPrimaryButtonClick","observable","ref","clearResultAndMoveToStart","force","Promise","all","strictFiltersOnlyTotal","noFiltersTotal","newValue","listSize","maxItems","init","initTask","onReady","onInitialFetchError","emitter","on","onNewPage","onSearchStart","disposers","runOnce","status","promise","forceUpdate","loadEnd","url","window","href","initialItems","size","asComputed","e","captureException","err","isOnline","off","disposer","onCloseButtonClick","componentDismissed","origin","onBackButtonClick","_onButtonClick","onContinueButtonClick","onSecondaryButtonOnClick","pickerPickModalCtaButtonClickOrImmediateCta","isImmediate","itemsCnt","keyedItem","options","_bulkSelect$getCollec","onItemSelectClick","selectedCountOrTotal","numItemsBefore","selectedValues","prevSelected","clear","cairoItemSelectionToggled","isSelectAll","isFromSearch","isEmpty","searchQuery","itemIndex","index","hasAdditionalStep","itemId","key","clickType","isChecked","numItemsAfter","item","previousIndex","getCollectionItem","floatingNotificationHeight","exports"],"sources":["../../../src/state/PickerState.ts"],"sourcesContent":["import { CollectionState } from './CollectionState';\nimport {\n CollectionEvents,\n ComputedQuery,\n ComputedResult,\n FiltersMap,\n KeyedItem,\n} from '../model';\nimport mapValues from 'lodash/mapValues';\nimport {\n action,\n computed,\n makeObservable,\n observable,\n runInAction,\n} from 'mobx';\nimport { TaskState } from './TaskState';\nimport { ReportBI } from '../services';\nimport {\n cairoCtaClicked,\n cairoItemSelectionToggled,\n cairoSearchResults,\n componentDismissed,\n loadEnd,\n loadMore,\n newItemCreationEnd,\n pickerModalUsability,\n pickerPickModalCtaButtonClickOrImmediateCta,\n} from '@wix/bex-utils/@wix/bi-logger-cairo-os/v2';\nimport { withoutIrrelevant } from '../util';\nimport { Snapshot } from './snapshot';\nimport { MultiCollectionSupport } from './MultiCollectionSupport';\nimport { onItemsCreated } from './onItemsCreated';\n\nconst DEFAULT_FLOATING_NOTIFICATION_HEIGHT = 54;\n\nexport type OnPickerReady<F extends FiltersMap> = (params: {\n query: ComputedQuery<F>;\n result: ComputedResult;\n noFiltersTotal: ComputedResult['total'];\n}) => unknown;\n\nexport interface PickerEvents<T, F extends FiltersMap>\n extends CollectionEvents<F> {\n readonly onReady?: OnPickerReady<F>;\n readonly onInitialFetchError?: (params: {\n err: unknown;\n isOnline: boolean;\n }) => unknown;\n readonly onItemSelectClick?: (params: {\n item: T;\n index: number;\n previousIndex: number | null;\n }) => unknown;\n}\n\nexport interface PickerStateParams<T, F extends FiltersMap> {\n getMaxItems: () => number | undefined;\n collection: CollectionState<T, F>;\n minContentHeight?: string | number;\n events?: PickerEvents<T, F>;\n shouldFilterNotAffectTotalCount?: (filterName: keyof F) => boolean;\n loadStartTime?: number;\n reportBi: ReportBI;\n}\n\nconst withoutDefaults = withoutIrrelevant<\n 'currentTab' | 'currentFilters' | 'currentSortOrder' | 'currentView'\n>();\n\nexport class PickerState<T, F extends FiltersMap = FiltersMap> {\n readonly collection: PickerStateParams<T, F>['collection'];\n readonly multi;\n readonly strictFiltersOnly: PickerStateParams<T, F>['collection'];\n\n readonly noFilters: PickerStateParams<T, F>['collection'];\n readonly shouldFilterNotAffectTotalCount: (filterName: keyof F) => boolean;\n readonly events: PickerEvents<T, F>;\n\n readonly initTask = new TaskState();\n readonly reportBi;\n readonly loadStartTime;\n\n isScrollTop: boolean;\n\n minContentHeight: string | number;\n floatingNotificationHeight = 0;\n\n readonly getMaxItems;\n\n readonly filteredListSize;\n\n constructor(params: Readonly<PickerStateParams<T, F>>) {\n this.getMaxItems = params.getMaxItems;\n this.collection = params.collection;\n this.reportBi = params.reportBi;\n\n this.multi = new MultiCollectionSupport({\n collections: [this.collection],\n });\n\n this.shouldFilterNotAffectTotalCount =\n params.shouldFilterNotAffectTotalCount ?? (() => false);\n this.isScrollTop = true;\n this.minContentHeight = params.minContentHeight ?? 300;\n\n this.events = params.events ?? {};\n\n this.loadStartTime = params.loadStartTime ?? performance.now();\n\n this.filteredListSize = new Snapshot({\n expression: () =>\n Object.values(this.collection.query.customFilters).map((f) => f?.value),\n effect: () => this.collection.result.total,\n });\n\n const {\n queryName,\n fetchData,\n query,\n history,\n queryCache,\n errorMonitor,\n onlineState,\n showToast,\n translate,\n itemKey,\n itemName,\n paginationMode,\n selectionConsistencyMode,\n events,\n lodash,\n } = this.collection;\n\n this.noFilters = new CollectionState({\n queryName,\n fetchData,\n history,\n queryCache,\n errorMonitor,\n lodash,\n onlineState,\n showToast,\n translate,\n itemKey,\n itemName,\n fetchErrorMessage: () => null,\n paginationMode: paginationMode.id,\n limit: query.pagination.limit,\n selectionConsistencyMode,\n events: {\n onError: events.onError,\n },\n filters: mapValues(this.collection.query.customFilters, (filter) => {\n if (filter) {\n const clearedFilter = filter.clone();\n clearedFilter.reset(); // reset strict filter\n return clearedFilter;\n }\n\n return filter;\n }) as F,\n });\n\n this.strictFiltersOnly = new CollectionState({\n queryName,\n fetchData,\n history,\n queryCache,\n errorMonitor,\n lodash,\n onlineState,\n showToast,\n translate,\n itemKey,\n itemName,\n fetchErrorMessage: () => null,\n paginationMode: paginationMode.id,\n limit: query.pagination.limit,\n selectionConsistencyMode,\n events: {\n onError: events.onError,\n },\n filters: mapValues(\n this.collection.query.customFilters,\n (filter, filterName) => {\n // reset all filters that should not affect total count\n if (\n filter != null &&\n this.shouldFilterNotAffectTotalCount(filterName)\n ) {\n const clearedFilter = filter.clone();\n clearedFilter.reset();\n return clearedFilter;\n }\n\n return filter;\n },\n ) as F,\n });\n\n makeObservable(this, {\n setFloatingNotificationHeight: action,\n someHidden: computed,\n toggle: action,\n updateIsScrollTop: action,\n onPrimaryButtonClick: action,\n isScrollTop: observable.ref,\n });\n }\n\n async clearResultAndMoveToStart({ force }: { force?: boolean } = {}) {\n await Promise.all([\n this.collection.clearResultAndMoveToStart({ force }),\n this.strictFiltersOnly.clearResultAndMoveToStart({ force }),\n this.noFilters.clearResultAndMoveToStart({ force }),\n ]);\n }\n\n get someHidden() {\n const {\n strictFiltersOnly: {\n result: { total: strictFiltersOnlyTotal },\n },\n noFilters: {\n result: { total: noFiltersTotal },\n },\n } = this;\n return noFiltersTotal > strictFiltersOnlyTotal;\n }\n\n updateIsScrollTop(newValue: boolean) {\n this.isScrollTop = newValue;\n }\n\n _commonDynamicBiParams(): {\n filteredListSize?: number;\n listSize?: number;\n maxItems?: number;\n } {\n const { noFilters, collection, filteredListSize } = this;\n\n return {\n ...collection._commonDynamicBiParams(),\n listSize: noFilters.result.total,\n filteredListSize: filteredListSize.value,\n maxItems: this.getMaxItems(),\n };\n }\n\n onNewPage = () => {\n const { reportBi } = this;\n\n const startTime = performance.now();\n\n return ({ totalNewItems }: { totalNewItems: number }) => {\n reportBi(\n withoutDefaults(loadMore)({\n ...this._commonDynamicBiParams(),\n loadingTime: Math.round(performance.now() - startTime),\n loadedItems: totalNewItems,\n }),\n );\n };\n };\n\n onSearchStart = () => {\n const { collection, reportBi } = this;\n\n const { result } = collection;\n\n const startTime = performance.now();\n reportBi(\n pickerModalUsability({\n ...this._commonDynamicBiParams(),\n action: 'search',\n searchTerm: collection.query.search.value,\n }),\n );\n\n return () => {\n reportBi(\n cairoSearchResults({\n ...this._commonDynamicBiParams(),\n loadingTime: Math.round(performance.now() - startTime),\n searchResultsCnt: result.total,\n searchTerm: collection.query.search.value,\n }),\n );\n };\n };\n\n init() {\n const {\n collection,\n strictFiltersOnly,\n noFilters,\n initTask,\n events: { onReady, onInitialFetchError },\n reportBi,\n filteredListSize,\n } = this;\n\n collection.emitter.on('newPageStart', this.onNewPage);\n collection.emitter.on('searchStart', this.onSearchStart);\n\n const disposers = [\n collection.init(),\n filteredListSize.init(),\n strictFiltersOnly.init(),\n noFilters.init(),\n ];\n\n initTask.runOnce(async () => {\n const { result, query } = collection;\n\n try {\n await Promise.all([\n collection.initTask.status.promise,\n strictFiltersOnly.initTask.status.promise,\n noFilters.initTask.status.promise,\n ]);\n\n filteredListSize.forceUpdate();\n\n runInAction(() => {\n try {\n reportBi(\n withoutDefaults(loadEnd)({\n ...this._commonDynamicBiParams(),\n url: window.location.href,\n loadingTime: Math.round(performance.now() - this.loadStartTime),\n initialItems: result.size,\n }),\n );\n onReady?.({\n query: query.asComputed,\n result: result.asComputed,\n noFiltersTotal: noFilters.result.total,\n });\n } catch (e) {\n collection.errorMonitor.captureException(e);\n }\n });\n } catch (err) {\n await onInitialFetchError?.({\n err,\n isOnline: collection.onlineState.isOnline,\n });\n throw err;\n }\n });\n\n return () => {\n collection.emitter.off('newPageStart', this.onNewPage);\n collection.emitter.off('searchStart', this.onSearchStart);\n for (const disposer of disposers) {\n disposer();\n }\n };\n }\n\n onCloseButtonClick() {\n const { reportBi } = this;\n\n reportBi(\n withoutDefaults(componentDismissed)({\n origin: 'X button',\n }),\n );\n }\n\n onBackButtonClick() {\n const { _onButtonClick } = this;\n\n _onButtonClick({ ctaName: 'back', numLevels: 2, currentLevel: 2 });\n }\n\n onContinueButtonClick() {\n const { _onButtonClick } = this;\n\n _onButtonClick({ ctaName: 'continue-next', numLevels: 2, currentLevel: 1 });\n }\n\n onSecondaryButtonOnClick() {\n const { reportBi } = this;\n\n reportBi(\n withoutDefaults(componentDismissed)({\n origin: 'Cancel button',\n }),\n );\n }\n\n onPrimaryButtonClick({\n currentLevel,\n numLevels,\n }: {\n currentLevel: number;\n numLevels: number;\n }) {\n const {\n collection: { bulkSelect },\n _onButtonClick,\n reportBi,\n } = this;\n\n const { selectedCount } = bulkSelect;\n\n _onButtonClick({ ctaName: 'continue', currentLevel, numLevels });\n\n reportBi(\n pickerPickModalCtaButtonClickOrImmediateCta({\n ...this._commonDynamicBiParams(),\n isImmediate: false,\n itemsCnt: selectedCount,\n }),\n );\n }\n\n _onButtonClick = ({\n ctaName,\n currentLevel,\n numLevels,\n }: {\n ctaName: string;\n currentLevel: number;\n numLevels: number;\n }) => {\n this.reportBi(\n cairoCtaClicked({\n ...this._commonDynamicBiParams(),\n ctaIndex: 1,\n numCtas: 1,\n currentLevel,\n numLevels,\n location: 'picker',\n moreActionsIndex: 0,\n ctaName,\n }),\n );\n };\n\n toggle(\n keyedItem: KeyedItem<T>,\n options: { clear?: boolean; hasAdditionalStep?: boolean } = {},\n ) {\n const {\n collection,\n events: { onItemSelectClick },\n reportBi,\n } = this;\n const {\n bulkSelect,\n query: { search },\n } = collection;\n const { select, selectedCountOrTotal: numItemsBefore } = bulkSelect;\n\n const {\n selectedValues: [prevSelected],\n } = select;\n\n if (options.clear) {\n bulkSelect.select.clear();\n }\n\n bulkSelect.toggle(keyedItem);\n reportBi(\n cairoItemSelectionToggled({\n ...this._commonDynamicBiParams(),\n isSelectAll: false,\n isFromSearch: !search.isEmpty,\n searchQuery: search.value,\n itemIndex: keyedItem.index,\n numLevels: options.hasAdditionalStep ? 2 : 1,\n itemId: keyedItem.key,\n clickType: bulkSelect.isChecked(keyedItem.key)\n ? 'Selection'\n : 'Deselection',\n numItemsBefore,\n numItemsAfter: bulkSelect.selectedCountOrTotal,\n }),\n );\n onItemSelectClick?.({\n item: keyedItem.item,\n index: keyedItem.index,\n previousIndex:\n prevSelected != null\n ? (bulkSelect.getCollectionItem(prevSelected.key)?.index as\n | number\n | null)\n : null,\n });\n }\n\n setFloatingNotificationHeight(\n floatingNotificationHeight: number = DEFAULT_FLOATING_NOTIFICATION_HEIGHT,\n ) {\n this.floatingNotificationHeight = floatingNotificationHeight;\n }\n\n onCreateNew = action(async (items?: T[]) => {\n if (items) {\n await onItemsCreated(this.collection, {\n items,\n reportBi: (reportProps) => {\n this.reportBi({\n ...reportProps,\n params: {\n ...this._commonDynamicBiParams(),\n ...reportProps.params,\n },\n });\n },\n });\n } else {\n runInAction(() => {\n this.reportBi(\n newItemCreationEnd({\n ...this._commonDynamicBiParams(),\n numSelectedItems: this.collection.bulkSelect.select.selectedCount,\n resultType: 'dismissed',\n }),\n );\n });\n }\n });\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_model","require","_mobx","_once","_interopRequireDefault","PromiseState","constructor","params","_defineProperty2","default","queryStatus","idle","error","isFetching","once","fetch","createPromise","makeObservable","status","observable","ref","action","loading","data","runInAction","success","exports"],"sources":["../../../src/state/PromiseState.ts"],"sourcesContent":["import { QueryResultStatus, queryStatus } from '../model';\nimport { action, makeObservable, observable, runInAction } from 'mobx';\nimport once from 'lodash/once';\n\nexport interface PromiseStateParams<T> {\n createPromise: () => Promise<T>;\n}\n\nexport class PromiseState<T> {\n private readonly createPromise: PromiseStateParams<T>['createPromise'];\n\n status: QueryResultStatus<T, unknown> = {\n ...queryStatus.idle,\n error: null,\n isFetching: false,\n };\n\n constructor(params: Readonly<PromiseStateParams<T>>) {\n this.createPromise = params.createPromise;\n\n makeObservable(this, {\n status: observable.ref,\n fetch: action,\n });\n }\n\n fetchOnce = once(() => this.fetch());\n\n async fetch() {\n try {\n this.status = {\n ...queryStatus.loading,\n error: null,\n isFetching: true,\n };\n const data = await this.createPromise();\n runInAction(() => {\n this.status = {\n ...queryStatus.success,\n error: null,\n isFetching: false,\n data,\n };\n });\n } catch (error) {\n runInAction(() => {\n this.status = {\n ...queryStatus.error,\n error,\n isFetching: false,\n };\n });\n }\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,KAAA,GAAAD,OAAA;AACA,IAAAE,KAAA,GAAAC,sBAAA,CAAAH,OAAA;AAMO,MAAMI,YAAY,CAAI;EAS3BC,WAAWA,CAACC,MAAuC,EAAE;IAAA,IAAAC,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA,kBANb;MACtC,GAAGC,kBAAW,CAACC,IAAI;MACnBC,KAAK,EAAE,IAAI;MACXC,UAAU,EAAE;IACd,CAAC;IAAA,IAAAL,gBAAA,CAAAC,OAAA,qBAWW,IAAAK,aAAI,EAAC,MAAM,IAAI,CAACC,KAAK,CAAC,CAAC,CAAC;IARlC,IAAI,CAACC,aAAa,GAAGT,MAAM,CAACS,aAAa;IAEzC,IAAAC,oBAAc,EAAC,IAAI,EAAE;MACnBC,MAAM,EAAEC,gBAAU,CAACC,GAAG;MACtBL,KAAK,EAAEM;IACT,CAAC,CAAC;EACJ;EAIA,MAAMN,KAAKA,CAAA,EAAG;IACZ,IAAI;MACF,IAAI,CAACG,MAAM,GAAG;QACZ,GAAGR,kBAAW,CAACY,OAAO;QACtBV,KAAK,EAAE,IAAI;QACXC,UAAU,EAAE;MACd,CAAC;MACD,MAAMU,IAAI,GAAG,MAAM,IAAI,CAACP,aAAa,CAAC,CAAC;MACvC,IAAAQ,iBAAW,EAAC,MAAM;QAChB,IAAI,CAACN,MAAM,GAAG;UACZ,GAAGR,kBAAW,CAACe,OAAO;UACtBb,KAAK,EAAE,IAAI;UACXC,UAAU,EAAE,KAAK;UACjBU;QACF,CAAC;MACH,CAAC,CAAC;IACJ,CAAC,CAAC,OAAOX,KAAK,EAAE;MACd,IAAAY,iBAAW,EAAC,MAAM;QAChB,IAAI,CAACN,MAAM,GAAG;UACZ,GAAGR,kBAAW,CAACE,KAAK;UACpBA,KAAK;UACLC,UAAU,EAAE;QACd,CAAC;MACH,CAAC,CAAC;IACJ;EACF;AACF;AAACa,OAAA,CAAArB,YAAA,GAAAA,YAAA"}
|
|
1
|
+
{"version":3,"names":["_model","require","_mobx","_once","_interopRequireDefault","PromiseState","constructor","params","_defineProperty2","default","queryStatus","idle","error","isFetching","once","fetch","createPromise","makeObservable","status","observable","ref","action","loading","data","runInAction","success","exports"],"sources":["../../../src/state/PromiseState.ts"],"sourcesContent":["import { QueryResultStatus, queryStatus } from '../model';\nimport { action, makeObservable, observable, runInAction } from 'mobx';\nimport once from 'lodash/once';\n\nexport interface PromiseStateParams<T> {\n createPromise: () => Promise<T>;\n}\n\nexport class PromiseState<T> {\n private readonly createPromise: PromiseStateParams<T>['createPromise'];\n\n status: QueryResultStatus<T, unknown> = {\n ...queryStatus.idle,\n error: null,\n isFetching: false,\n };\n\n constructor(params: Readonly<PromiseStateParams<T>>) {\n this.createPromise = params.createPromise;\n\n makeObservable(this, {\n status: observable.ref,\n fetch: action,\n });\n }\n\n fetchOnce = once(() => this.fetch());\n\n async fetch() {\n try {\n this.status = {\n ...queryStatus.loading,\n error: null,\n isFetching: true,\n };\n const data = await this.createPromise();\n runInAction(() => {\n this.status = {\n ...queryStatus.success,\n error: null,\n isFetching: false,\n data,\n };\n });\n } catch (error) {\n runInAction(() => {\n this.status = {\n ...queryStatus.error,\n error,\n isFetching: false,\n };\n });\n }\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,KAAA,GAAAD,OAAA;AACA,IAAAE,KAAA,GAAAC,sBAAA,CAAAH,OAAA;AAMO,MAAMI,YAAY,CAAI;EAS3BC,WAAWA,CAACC,MAAuC,EAAE;IAAA,IAAAC,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA,kBANb;MACtC,GAAGC,kBAAW,CAACC,IAAI;MACnBC,KAAK,EAAE,IAAI;MACXC,UAAU,EAAE;IACd,CAAC;IAAA,IAAAL,gBAAA,CAAAC,OAAA,qBAWW,IAAAK,aAAI,EAAC,MAAM,IAAI,CAACC,KAAK,CAAC,CAAC,CAAC;IARlC,IAAI,CAACC,aAAa,GAAGT,MAAM,CAACS,aAAa;IAEzC,IAAAC,oBAAc,EAAC,IAAI,EAAE;MACnBC,MAAM,EAAEC,gBAAU,CAACC,GAAG;MACtBL,KAAK,EAAEM;IACT,CAAC,CAAC;EACJ;EAIA,MAAMN,KAAKA,CAAA,EAAG;IACZ,IAAI;MACF,IAAI,CAACG,MAAM,GAAG;QACZ,GAAGR,kBAAW,CAACY,OAAO;QACtBV,KAAK,EAAE,IAAI;QACXC,UAAU,EAAE;MACd,CAAC;MACD,MAAMU,IAAI,GAAG,MAAM,IAAI,CAACP,aAAa,CAAC,CAAC;MACvC,IAAAQ,iBAAW,EAAC,MAAM;QAChB,IAAI,CAACN,MAAM,GAAG;UACZ,GAAGR,kBAAW,CAACe,OAAO;UACtBb,KAAK,EAAE,IAAI;UACXC,UAAU,EAAE,KAAK;UACjBU;QACF,CAAC;MACH,CAAC,CAAC;IACJ,CAAC,CAAC,OAAOX,KAAK,EAAE;MACd,IAAAY,iBAAW,EAAC,MAAM;QAChB,IAAI,CAACN,MAAM,GAAG;UACZ,GAAGR,kBAAW,CAACE,KAAK;UACpBA,KAAK;UACLC,UAAU,EAAE;QACd,CAAC;MACH,CAAC,CAAC;IACJ;EACF;AACF;AAACa,OAAA,CAAArB,YAAA,GAAAA,YAAA","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_events","require","PromisesSequence","constructor","_defineProperty2","default","EventEmitter","running","enqueue","fn","fns","events","state","push","Promise","resolve","once","emit","next","length","shift","e","unshift","clear","splice","exports"],"sources":["../../../src/state/PromisesSequence.ts"],"sourcesContent":["import { EventEmitter } from 'events';\nimport { TypedEmitter } from '../util';\n\nexport class PromisesSequence {\n readonly fns: (() => unknown)[] = [];\n\n readonly events = new EventEmitter() as TypedEmitter<{\n start: () => unknown;\n success: () => unknown;\n done: () => unknown;\n }>;\n\n readonly state = {\n running: false,\n };\n\n async enqueue<R>(fn: () => R) {\n const { fns, events, state } = this;\n fns.push(fn);\n\n if (state.running) {\n return new Promise<void>((resolve) => {\n events.once('success', resolve);\n });\n }\n\n events.emit('start');\n\n state.running = true;\n let next;\n try {\n while (fns.length) {\n next = fns.shift();\n await next?.();\n }\n events.emit('success');\n events.emit('done');\n state.running = false;\n } catch (e) {\n if (next) {\n fns.unshift(next);\n }\n events.emit('done');\n state.running = false;\n throw e;\n }\n }\n\n clear() {\n this.fns.splice(0);\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AAGO,MAAMC,gBAAgB,CAAC;EAAAC,YAAA;IAAA,IAAAC,gBAAA,CAAAC,OAAA,eACM,EAAE;IAAA,IAAAD,gBAAA,CAAAC,OAAA,kBAElB,IAAIC,oBAAY,CAAC,CAAC;IAAA,IAAAF,gBAAA,CAAAC,OAAA,iBAMnB;MACfE,OAAO,EAAE;IACX,CAAC;EAAA;EAED,MAAMC,OAAOA,CAAIC,EAAW,EAAE;IAC5B,MAAM;MAAEC,GAAG;MAAEC,MAAM;MAAEC;IAAM,CAAC,GAAG,IAAI;IACnCF,GAAG,CAACG,IAAI,CAACJ,EAAE,CAAC;IAEZ,IAAIG,KAAK,CAACL,OAAO,EAAE;MACjB,OAAO,IAAIO,OAAO,CAAQC,OAAO,IAAK;QACpCJ,MAAM,CAACK,IAAI,CAAC,SAAS,EAAED,OAAO,CAAC;MACjC,CAAC,CAAC;IACJ;IAEAJ,MAAM,CAACM,IAAI,CAAC,OAAO,CAAC;IAEpBL,KAAK,CAACL,OAAO,GAAG,IAAI;IACpB,IAAIW,IAAI;IACR,IAAI;MACF,OAAOR,GAAG,CAACS,MAAM,EAAE;QACjBD,IAAI,GAAGR,GAAG,CAACU,KAAK,CAAC,CAAC;QAClB,OAAMF,IAAI,oBAAJA,IAAI,CAAG,CAAC;MAChB;MACAP,MAAM,CAACM,IAAI,CAAC,SAAS,CAAC;MACtBN,MAAM,CAACM,IAAI,CAAC,MAAM,CAAC;MACnBL,KAAK,CAACL,OAAO,GAAG,KAAK;IACvB,CAAC,CAAC,OAAOc,CAAC,EAAE;MACV,IAAIH,IAAI,EAAE;QACRR,GAAG,CAACY,OAAO,CAACJ,IAAI,CAAC;MACnB;MACAP,MAAM,CAACM,IAAI,CAAC,MAAM,CAAC;MACnBL,KAAK,CAACL,OAAO,GAAG,KAAK;MACrB,MAAMc,CAAC;IACT;EACF;EAEAE,KAAKA,CAAA,EAAG;IACN,IAAI,CAACb,GAAG,CAACc,MAAM,CAAC,CAAC,CAAC;EACpB;AACF;AAACC,OAAA,CAAAvB,gBAAA,GAAAA,gBAAA"}
|
|
1
|
+
{"version":3,"names":["_events","require","PromisesSequence","constructor","_defineProperty2","default","EventEmitter","running","enqueue","fn","fns","events","state","push","Promise","resolve","once","emit","next","length","shift","e","unshift","clear","splice","exports"],"sources":["../../../src/state/PromisesSequence.ts"],"sourcesContent":["import { EventEmitter } from 'events';\nimport { TypedEmitter } from '../util';\n\nexport class PromisesSequence {\n readonly fns: (() => unknown)[] = [];\n\n readonly events = new EventEmitter() as TypedEmitter<{\n start: () => unknown;\n success: () => unknown;\n done: () => unknown;\n }>;\n\n readonly state = {\n running: false,\n };\n\n async enqueue<R>(fn: () => R) {\n const { fns, events, state } = this;\n fns.push(fn);\n\n if (state.running) {\n return new Promise<void>((resolve) => {\n events.once('success', resolve);\n });\n }\n\n events.emit('start');\n\n state.running = true;\n let next;\n try {\n while (fns.length) {\n next = fns.shift();\n await next?.();\n }\n events.emit('success');\n events.emit('done');\n state.running = false;\n } catch (e) {\n if (next) {\n fns.unshift(next);\n }\n events.emit('done');\n state.running = false;\n throw e;\n }\n }\n\n clear() {\n this.fns.splice(0);\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AAGO,MAAMC,gBAAgB,CAAC;EAAAC,YAAA;IAAA,IAAAC,gBAAA,CAAAC,OAAA,eACM,EAAE;IAAA,IAAAD,gBAAA,CAAAC,OAAA,kBAElB,IAAIC,oBAAY,CAAC,CAAC;IAAA,IAAAF,gBAAA,CAAAC,OAAA,iBAMnB;MACfE,OAAO,EAAE;IACX,CAAC;EAAA;EAED,MAAMC,OAAOA,CAAIC,EAAW,EAAE;IAC5B,MAAM;MAAEC,GAAG;MAAEC,MAAM;MAAEC;IAAM,CAAC,GAAG,IAAI;IACnCF,GAAG,CAACG,IAAI,CAACJ,EAAE,CAAC;IAEZ,IAAIG,KAAK,CAACL,OAAO,EAAE;MACjB,OAAO,IAAIO,OAAO,CAAQC,OAAO,IAAK;QACpCJ,MAAM,CAACK,IAAI,CAAC,SAAS,EAAED,OAAO,CAAC;MACjC,CAAC,CAAC;IACJ;IAEAJ,MAAM,CAACM,IAAI,CAAC,OAAO,CAAC;IAEpBL,KAAK,CAACL,OAAO,GAAG,IAAI;IACpB,IAAIW,IAAI;IACR,IAAI;MACF,OAAOR,GAAG,CAACS,MAAM,EAAE;QACjBD,IAAI,GAAGR,GAAG,CAACU,KAAK,CAAC,CAAC;QAClB,OAAMF,IAAI,oBAAJA,IAAI,CAAG,CAAC;MAChB;MACAP,MAAM,CAACM,IAAI,CAAC,SAAS,CAAC;MACtBN,MAAM,CAACM,IAAI,CAAC,MAAM,CAAC;MACnBL,KAAK,CAACL,OAAO,GAAG,KAAK;IACvB,CAAC,CAAC,OAAOc,CAAC,EAAE;MACV,IAAIH,IAAI,EAAE;QACRR,GAAG,CAACY,OAAO,CAACJ,IAAI,CAAC;MACnB;MACAP,MAAM,CAACM,IAAI,CAAC,MAAM,CAAC;MACnBL,KAAK,CAACL,OAAO,GAAG,KAAK;MACrB,MAAMc,CAAC;IACT;EACF;EAEAE,KAAKA,CAAA,EAAG;IACN,IAAI,CAACb,GAAG,CAACc,MAAM,CAAC,CAAC,CAAC;EACpB;AACF;AAACC,OAAA,CAAAvB,gBAAA,GAAAA,gBAAA","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_mobx","require","_PromiseState","PromisesState","constructor","_defineProperty2","default","observable","array","deep","makeObservable","push","action","bound","addPromise","isLoadingPromises","computed","createPromise","PromiseState","promise","promises","fetch","runInAction","remove","some","status","isLoading","exports"],"sources":["../../../src/state/PromisesState.ts"],"sourcesContent":["import {\n action,\n computed,\n makeObservable,\n observable,\n runInAction,\n} from 'mobx';\nimport { PromiseState } from './PromiseState';\n\nexport class PromisesState {\n readonly promises = observable.array<PromiseState<unknown>>([], {\n deep: false,\n });\n\n constructor() {\n makeObservable(this, {\n push: action.bound,\n addPromise: action.bound,\n isLoadingPromises: computed,\n });\n }\n\n async addPromise<P>(createPromise: () => Promise<P>) {\n return this.push(\n new PromiseState({\n createPromise,\n }),\n );\n }\n\n async push<P>(promise: PromiseState<P>) {\n this.promises.push(promise);\n await promise.fetch();\n runInAction(() => {\n this.promises.remove(promise);\n });\n }\n\n get isLoadingPromises() {\n return this.promises.some((promise) => promise.status.isLoading);\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AAOA,IAAAC,aAAA,GAAAD,OAAA;AAEO,MAAME,aAAa,CAAC;EAKzBC,WAAWA,CAAA,EAAG;IAAA,IAAAC,gBAAA,CAAAC,OAAA,oBAJMC,gBAAU,CAACC,KAAK,CAAwB,EAAE,EAAE;MAC9DC,IAAI,EAAE;IACR,CAAC,CAAC;IAGA,IAAAC,oBAAc,EAAC,IAAI,EAAE;MACnBC,IAAI,EAAEC,YAAM,CAACC,KAAK;MAClBC,UAAU,EAAEF,YAAM,CAACC,KAAK;MACxBE,iBAAiB,EAAEC;IACrB,CAAC,CAAC;EACJ;EAEA,MAAMF,UAAUA,CAAIG,aAA+B,EAAE;IACnD,OAAO,IAAI,CAACN,IAAI,CACd,IAAIO,0BAAY,CAAC;MACfD;IACF,CAAC,CACH,CAAC;EACH;EAEA,MAAMN,IAAIA,CAAIQ,OAAwB,EAAE;IACtC,IAAI,CAACC,QAAQ,CAACT,IAAI,CAACQ,OAAO,CAAC;IAC3B,MAAMA,OAAO,CAACE,KAAK,CAAC,CAAC;IACrB,IAAAC,iBAAW,EAAC,MAAM;MAChB,IAAI,CAACF,QAAQ,CAACG,MAAM,CAACJ,OAAO,CAAC;IAC/B,CAAC,CAAC;EACJ;EAEA,IAAIJ,iBAAiBA,CAAA,EAAG;IACtB,OAAO,IAAI,CAACK,QAAQ,CAACI,IAAI,CAAEL,OAAO,IAAKA,OAAO,CAACM,MAAM,CAACC,SAAS,CAAC;EAClE;AACF;AAACC,OAAA,CAAAxB,aAAA,GAAAA,aAAA"}
|
|
1
|
+
{"version":3,"names":["_mobx","require","_PromiseState","PromisesState","constructor","_defineProperty2","default","observable","array","deep","makeObservable","push","action","bound","addPromise","isLoadingPromises","computed","createPromise","PromiseState","promise","promises","fetch","runInAction","remove","some","status","isLoading","exports"],"sources":["../../../src/state/PromisesState.ts"],"sourcesContent":["import {\n action,\n computed,\n makeObservable,\n observable,\n runInAction,\n} from 'mobx';\nimport { PromiseState } from './PromiseState';\n\nexport class PromisesState {\n readonly promises = observable.array<PromiseState<unknown>>([], {\n deep: false,\n });\n\n constructor() {\n makeObservable(this, {\n push: action.bound,\n addPromise: action.bound,\n isLoadingPromises: computed,\n });\n }\n\n async addPromise<P>(createPromise: () => Promise<P>) {\n return this.push(\n new PromiseState({\n createPromise,\n }),\n );\n }\n\n async push<P>(promise: PromiseState<P>) {\n this.promises.push(promise);\n await promise.fetch();\n runInAction(() => {\n this.promises.remove(promise);\n });\n }\n\n get isLoadingPromises() {\n return this.promises.some((promise) => promise.status.isLoading);\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AAOA,IAAAC,aAAA,GAAAD,OAAA;AAEO,MAAME,aAAa,CAAC;EAKzBC,WAAWA,CAAA,EAAG;IAAA,IAAAC,gBAAA,CAAAC,OAAA,oBAJMC,gBAAU,CAACC,KAAK,CAAwB,EAAE,EAAE;MAC9DC,IAAI,EAAE;IACR,CAAC,CAAC;IAGA,IAAAC,oBAAc,EAAC,IAAI,EAAE;MACnBC,IAAI,EAAEC,YAAM,CAACC,KAAK;MAClBC,UAAU,EAAEF,YAAM,CAACC,KAAK;MACxBE,iBAAiB,EAAEC;IACrB,CAAC,CAAC;EACJ;EAEA,MAAMF,UAAUA,CAAIG,aAA+B,EAAE;IACnD,OAAO,IAAI,CAACN,IAAI,CACd,IAAIO,0BAAY,CAAC;MACfD;IACF,CAAC,CACH,CAAC;EACH;EAEA,MAAMN,IAAIA,CAAIQ,OAAwB,EAAE;IACtC,IAAI,CAACC,QAAQ,CAACT,IAAI,CAACQ,OAAO,CAAC;IAC3B,MAAMA,OAAO,CAACE,KAAK,CAAC,CAAC;IACrB,IAAAC,iBAAW,EAAC,MAAM;MAChB,IAAI,CAACF,QAAQ,CAACG,MAAM,CAACJ,OAAO,CAAC;IAC/B,CAAC,CAAC;EACJ;EAEA,IAAIJ,iBAAiBA,CAAA,EAAG;IACtB,OAAO,IAAI,CAACK,QAAQ,CAACI,IAAI,CAAEL,OAAO,IAAKA,OAAO,CAACM,MAAM,CAACC,SAAS,CAAC;EAClE;AACF;AAACC,OAAA,CAAAxB,aAAA,GAAAA,aAAA","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_mobx","require","_services","parseSortString","sortFromUrl","split","map","sortExpression","field","direction","decodeURIComponent","QueryHistoryState","constructor","params","_defineProperty2","default","query","history","makeObservable","init","action","persistAll","_preInitHistoryPersistence","searchParams","URLSearchParams","location","search","Object","values","filtersEntries","forEach","key","filter","valueFromUrl","get","_initializedFromHistory","applyFromQueryString","sortSearchParamName","sort","setSortQuery","emitChangeEvent","disposers","reaction","value","delay","d","_setFilterValueToSearchParams","isEmpty","set","toQueryString","delete","replaceSearchParamsWith","length","encodeURIComponent","join","exports"],"sources":["../../../src/state/QueryHistoryState.ts"],"sourcesContent":["import { action, makeObservable, reaction } from 'mobx';\nimport { Filter, FiltersMap } from '../model';\nimport { QueryState } from './QueryState';\nimport { replaceSearchParamsWith, History } from '../services';\n\nfunction parseSortString(sortFromUrl: string) {\n return sortFromUrl.split(',').map((sortExpression) => {\n const [field = '', direction = ''] = sortExpression.split(' ');\n\n return {\n field: decodeURIComponent(field),\n direction: direction === 'desc' ? ('desc' as const) : ('asc' as const),\n };\n });\n}\n\nexport interface QueryHistoryStateParams<F extends FiltersMap> {\n readonly query: QueryState<F>;\n readonly history: History;\n}\n\nexport class QueryHistoryState<F extends FiltersMap> {\n readonly query;\n readonly history;\n\n sortSearchParamName = 'sort';\n\n constructor(params: QueryHistoryStateParams<F>) {\n this.query = params.query;\n this.history = params.history;\n\n makeObservable(this, {\n init: action,\n persistAll: action,\n _preInitHistoryPersistence: action,\n });\n\n this._preInitHistoryPersistence();\n }\n\n _preInitHistoryPersistence() {\n const { query, history } = this;\n\n const searchParams = new URLSearchParams(history.location.search);\n\n Object.values(query.filtersEntries).forEach(([key, filter]) => {\n const valueFromUrl = searchParams.get(key);\n if (valueFromUrl != null) {\n query._initializedFromHistory = true;\n filter.applyFromQueryString(valueFromUrl);\n }\n });\n\n const sortFromUrl = searchParams.get(this.sortSearchParamName);\n\n if (sortFromUrl) {\n query._initializedFromHistory = true;\n query.sort.setSortQuery(parseSortString(sortFromUrl), {\n emitChangeEvent: true,\n });\n }\n }\n\n init() {\n const { history, query } = this;\n\n const searchParams = new URLSearchParams(history.location.search);\n\n const disposers = [\n ...Object.values(query.filtersEntries).map(([key, filter]) => {\n const valueFromUrl = searchParams.get(key);\n if (valueFromUrl != null) {\n filter.applyFromQueryString(valueFromUrl);\n }\n return reaction(\n () => filter.value,\n () => {\n this.persistAll();\n },\n {\n delay: 250,\n },\n );\n }),\n reaction(\n () =>\n query.sort.value.map(({ field, direction }) => ({\n field,\n direction,\n })),\n () => {\n this.persistAll();\n },\n {\n delay: 250,\n },\n ),\n ];\n\n this.persistAll();\n\n return () => {\n disposers.forEach((d) => d());\n };\n }\n\n _setFilterValueToSearchParams(\n searchParams: URLSearchParams,\n key: string,\n filter: Filter<unknown>,\n ) {\n if (!filter.isEmpty) {\n searchParams.set(key, filter.toQueryString);\n } else {\n searchParams.delete(key);\n }\n }\n\n persistAll() {\n const {\n history,\n sortSearchParamName,\n query: { filtersEntries, sort },\n } = this;\n\n replaceSearchParamsWith(history, (searchParams) => {\n for (const [key, filter] of filtersEntries) {\n this._setFilterValueToSearchParams(searchParams, key, filter);\n }\n\n if (sort.value.length) {\n searchParams.set(\n sortSearchParamName,\n sort.value\n .map(\n ({ field, direction }) =>\n `${encodeURIComponent(field)} ${direction}`,\n )\n .join(','),\n );\n } else {\n searchParams.delete(sortSearchParamName);\n }\n });\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["_mobx","require","_services","parseSortString","sortFromUrl","split","map","sortExpression","field","direction","decodeURIComponent","QueryHistoryState","constructor","params","_defineProperty2","default","query","history","makeObservable","init","action","persistAll","_preInitHistoryPersistence","searchParams","URLSearchParams","location","search","Object","values","filtersEntries","forEach","key","filter","valueFromUrl","get","_initializedFromHistory","applyFromQueryString","sortSearchParamName","sort","setSortQuery","emitChangeEvent","disposers","reaction","value","delay","d","_setFilterValueToSearchParams","isEmpty","set","toQueryString","delete","replaceSearchParamsWith","length","encodeURIComponent","join","exports"],"sources":["../../../src/state/QueryHistoryState.ts"],"sourcesContent":["import { action, makeObservable, reaction } from 'mobx';\nimport { Filter, FiltersMap } from '../model';\nimport { QueryState } from './QueryState';\nimport { replaceSearchParamsWith, History } from '../services';\n\nfunction parseSortString(sortFromUrl: string) {\n return sortFromUrl.split(',').map((sortExpression) => {\n const [field = '', direction = ''] = sortExpression.split(' ');\n\n return {\n field: decodeURIComponent(field),\n direction: direction === 'desc' ? ('desc' as const) : ('asc' as const),\n };\n });\n}\n\nexport interface QueryHistoryStateParams<F extends FiltersMap> {\n readonly query: QueryState<F>;\n readonly history: History;\n}\n\nexport class QueryHistoryState<F extends FiltersMap> {\n readonly query;\n readonly history;\n\n sortSearchParamName = 'sort';\n\n constructor(params: QueryHistoryStateParams<F>) {\n this.query = params.query;\n this.history = params.history;\n\n makeObservable(this, {\n init: action,\n persistAll: action,\n _preInitHistoryPersistence: action,\n });\n\n this._preInitHistoryPersistence();\n }\n\n _preInitHistoryPersistence() {\n const { query, history } = this;\n\n const searchParams = new URLSearchParams(history.location.search);\n\n Object.values(query.filtersEntries).forEach(([key, filter]) => {\n const valueFromUrl = searchParams.get(key);\n if (valueFromUrl != null) {\n query._initializedFromHistory = true;\n filter.applyFromQueryString(valueFromUrl);\n }\n });\n\n const sortFromUrl = searchParams.get(this.sortSearchParamName);\n\n if (sortFromUrl) {\n query._initializedFromHistory = true;\n query.sort.setSortQuery(parseSortString(sortFromUrl), {\n emitChangeEvent: true,\n });\n }\n }\n\n init() {\n const { history, query } = this;\n\n const searchParams = new URLSearchParams(history.location.search);\n\n const disposers = [\n ...Object.values(query.filtersEntries).map(([key, filter]) => {\n const valueFromUrl = searchParams.get(key);\n if (valueFromUrl != null) {\n filter.applyFromQueryString(valueFromUrl);\n }\n return reaction(\n () => filter.value,\n () => {\n this.persistAll();\n },\n {\n delay: 250,\n },\n );\n }),\n reaction(\n () =>\n query.sort.value.map(({ field, direction }) => ({\n field,\n direction,\n })),\n () => {\n this.persistAll();\n },\n {\n delay: 250,\n },\n ),\n ];\n\n this.persistAll();\n\n return () => {\n disposers.forEach((d) => d());\n };\n }\n\n _setFilterValueToSearchParams(\n searchParams: URLSearchParams,\n key: string,\n filter: Filter<unknown>,\n ) {\n if (!filter.isEmpty) {\n searchParams.set(key, filter.toQueryString);\n } else {\n searchParams.delete(key);\n }\n }\n\n persistAll() {\n const {\n history,\n sortSearchParamName,\n query: { filtersEntries, sort },\n } = this;\n\n replaceSearchParamsWith(history, (searchParams) => {\n for (const [key, filter] of filtersEntries) {\n this._setFilterValueToSearchParams(searchParams, key, filter);\n }\n\n if (sort.value.length) {\n searchParams.set(\n sortSearchParamName,\n sort.value\n .map(\n ({ field, direction }) =>\n `${encodeURIComponent(field)} ${direction}`,\n )\n .join(','),\n );\n } else {\n searchParams.delete(sortSearchParamName);\n }\n });\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_mobx","require","_ConditionalModalState","_QueryPendingStateBIReporter","createPendingFilter","origin","pending","clone","QueryPendingState","multi","toolbar","toolbarFiltersState","constructor","params","_defineProperty2","default","ConditionalModalState","_this$toolbarFiltersS","panelFilters","includes","container","allFilters","collections","reduce","filters","query","search","queryFilters","Object","values","filter","map","bi","QueryPendingStateBIReporter","makeObservable","apply","action","revert","clearSelected","getApplicableFilter","hasChanged","computed","trackedFilters","trackedFiltersCount","shouldTrackFilter","size","onCloseFiltersPanelClick","discardChangesModal","open","result","modal","promise","discard","_this$trackedFilters$","find","forEach","setValue","value","collection","clearResultAndMoveToStart","some","hasDiff","clear","reset","init","disposers","reaction","fireImmediately","d","exports"],"sources":["../../../src/state/QueryPendingState.ts"],"sourcesContent":["import { Filter, FiltersMap } from '../model';\nimport { action, computed, makeObservable, reaction } from 'mobx';\nimport { Experiments, ReportBI } from '../services';\nimport { MultiCollectionSupport } from './MultiCollectionSupport';\nimport { ConditionalModalState } from './ConditionalModalState';\nimport { QueryPendingStateBIReporter } from './QueryPendingStateBIReporter';\n\ninterface ToolbarFiltersState {\n readonly panelFilters: (Filter<any> | null | undefined)[];\n}\n\nexport interface QueryPendingStateParams {\n container: {\n experiments: Experiments;\n };\n toolbar: {\n multi: MultiCollectionSupport<{}>;\n toolbarFiltersState?: ToolbarFiltersState | null;\n reportBi: ReportBI;\n };\n}\n\nfunction createPendingFilter<T>(origin: Filter<T>) {\n return {\n origin,\n pending: origin.clone(),\n };\n}\n\nexport class QueryPendingState {\n readonly filters;\n readonly container;\n readonly toolbar;\n readonly discardChangesModal = new ConditionalModalState<null>();\n readonly bi;\n\n get multi() {\n return this.toolbar.multi;\n }\n\n get toolbarFiltersState() {\n return this.toolbar.toolbarFiltersState;\n }\n\n constructor(params: QueryPendingStateParams) {\n this.container = params.container;\n this.toolbar = params.toolbar;\n\n const allFilters = this.multi.collections.reduce((filters, { query }) => {\n const { search, ...queryFilters } = query.filters;\n return { ...filters, ...queryFilters };\n }, {} as FiltersMap);\n\n this.filters = Object.values(allFilters)\n .filter((filter): filter is Filter<any> => filter != null)\n .map(createPendingFilter);\n\n this.bi = new QueryPendingStateBIReporter(this);\n\n makeObservable(this, {\n apply: action,\n revert: action,\n clearSelected: action,\n getApplicableFilter: action,\n hasChanged: computed,\n trackedFilters: computed,\n trackedFiltersCount: computed,\n });\n }\n\n get trackedFilters() {\n return this.filters.filter(this.shouldTrackFilter());\n }\n\n get trackedFiltersCount() {\n return this.trackedFilters.reduce(\n (size, { pending }) => size + pending.size,\n 0,\n );\n }\n\n shouldTrackFilter = () => {\n const panelFilters = this.toolbarFiltersState?.panelFilters;\n\n return ({ origin }: { origin: Filter<any> }) =>\n origin != null && panelFilters?.includes(origin);\n };\n\n async onCloseFiltersPanelClick() {\n if (!this.hasChanged) {\n return;\n }\n\n this.discardChangesModal.open(null);\n const { result } = await this.discardChangesModal.modal.promise();\n if (result === 'confirmed') {\n this.bi.discard();\n this.revert();\n } else if (result === 'declined') {\n this.apply();\n }\n\n return result;\n }\n\n getApplicableFilter<A>(filter: A) {\n return (\n this.trackedFilters.find(({ origin }) => origin === (filter as unknown))\n ?.pending ?? filter\n );\n }\n\n revert() {\n this.trackedFilters.forEach(({ pending, origin }) => {\n pending.setValue(origin.value);\n });\n }\n\n apply() {\n this.bi.apply();\n this.trackedFilters.forEach(({ pending, origin }) => {\n origin.setValue(pending.value);\n });\n this.multi.collections.forEach((collection) => {\n collection.clearResultAndMoveToStart();\n });\n }\n\n get hasChanged() {\n return this.trackedFilters.some(({ pending, origin }) =>\n pending.hasDiff(origin.value),\n );\n }\n\n async clearSelected() {\n this.bi.clear();\n this.trackedFilters.forEach(({ pending }) => {\n pending.reset();\n });\n }\n\n init() {\n const disposers = [\n this.bi.init(),\n ...this.filters.map(({ pending, origin }) =>\n reaction(\n () => origin.value,\n (value) => {\n pending.setValue(value);\n },\n {\n fireImmediately: true,\n },\n ),\n ),\n ];\n\n return () => {\n disposers.forEach((d) => d());\n };\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["_mobx","require","_ConditionalModalState","_QueryPendingStateBIReporter","createPendingFilter","origin","pending","clone","QueryPendingState","multi","toolbar","toolbarFiltersState","constructor","params","_defineProperty2","default","ConditionalModalState","_this$toolbarFiltersS","panelFilters","includes","container","allFilters","collections","reduce","filters","query","search","queryFilters","Object","values","filter","map","bi","QueryPendingStateBIReporter","makeObservable","apply","action","revert","clearSelected","getApplicableFilter","hasChanged","computed","trackedFilters","trackedFiltersCount","shouldTrackFilter","size","onCloseFiltersPanelClick","discardChangesModal","open","result","modal","promise","discard","_this$trackedFilters$","find","forEach","setValue","value","collection","clearResultAndMoveToStart","some","hasDiff","clear","reset","init","disposers","reaction","fireImmediately","d","exports"],"sources":["../../../src/state/QueryPendingState.ts"],"sourcesContent":["import { Filter, FiltersMap } from '../model';\nimport { action, computed, makeObservable, reaction } from 'mobx';\nimport { Experiments, ReportBI } from '../services';\nimport { MultiCollectionSupport } from './MultiCollectionSupport';\nimport { ConditionalModalState } from './ConditionalModalState';\nimport { QueryPendingStateBIReporter } from './QueryPendingStateBIReporter';\n\ninterface ToolbarFiltersState {\n readonly panelFilters: (Filter<any> | null | undefined)[];\n}\n\nexport interface QueryPendingStateParams {\n container: {\n experiments: Experiments;\n };\n toolbar: {\n multi: MultiCollectionSupport<{}>;\n toolbarFiltersState?: ToolbarFiltersState | null;\n reportBi: ReportBI;\n };\n}\n\nfunction createPendingFilter<T>(origin: Filter<T>) {\n return {\n origin,\n pending: origin.clone(),\n };\n}\n\nexport class QueryPendingState {\n readonly filters;\n readonly container;\n readonly toolbar;\n readonly discardChangesModal = new ConditionalModalState<null>();\n readonly bi;\n\n get multi() {\n return this.toolbar.multi;\n }\n\n get toolbarFiltersState() {\n return this.toolbar.toolbarFiltersState;\n }\n\n constructor(params: QueryPendingStateParams) {\n this.container = params.container;\n this.toolbar = params.toolbar;\n\n const allFilters = this.multi.collections.reduce((filters, { query }) => {\n const { search, ...queryFilters } = query.filters;\n return { ...filters, ...queryFilters };\n }, {} as FiltersMap);\n\n this.filters = Object.values(allFilters)\n .filter((filter): filter is Filter<any> => filter != null)\n .map(createPendingFilter);\n\n this.bi = new QueryPendingStateBIReporter(this);\n\n makeObservable(this, {\n apply: action,\n revert: action,\n clearSelected: action,\n getApplicableFilter: action,\n hasChanged: computed,\n trackedFilters: computed,\n trackedFiltersCount: computed,\n });\n }\n\n get trackedFilters() {\n return this.filters.filter(this.shouldTrackFilter());\n }\n\n get trackedFiltersCount() {\n return this.trackedFilters.reduce(\n (size, { pending }) => size + pending.size,\n 0,\n );\n }\n\n shouldTrackFilter = () => {\n const panelFilters = this.toolbarFiltersState?.panelFilters;\n\n return ({ origin }: { origin: Filter<any> }) =>\n origin != null && panelFilters?.includes(origin);\n };\n\n async onCloseFiltersPanelClick() {\n if (!this.hasChanged) {\n return;\n }\n\n this.discardChangesModal.open(null);\n const { result } = await this.discardChangesModal.modal.promise();\n if (result === 'confirmed') {\n this.bi.discard();\n this.revert();\n } else if (result === 'declined') {\n this.apply();\n }\n\n return result;\n }\n\n getApplicableFilter<A>(filter: A) {\n return (\n this.trackedFilters.find(({ origin }) => origin === (filter as unknown))\n ?.pending ?? filter\n );\n }\n\n revert() {\n this.trackedFilters.forEach(({ pending, origin }) => {\n pending.setValue(origin.value);\n });\n }\n\n apply() {\n this.bi.apply();\n this.trackedFilters.forEach(({ pending, origin }) => {\n origin.setValue(pending.value);\n });\n this.multi.collections.forEach((collection) => {\n collection.clearResultAndMoveToStart();\n });\n }\n\n get hasChanged() {\n return this.trackedFilters.some(({ pending, origin }) =>\n pending.hasDiff(origin.value),\n );\n }\n\n async clearSelected() {\n this.bi.clear();\n this.trackedFilters.forEach(({ pending }) => {\n pending.reset();\n });\n }\n\n init() {\n const disposers = [\n this.bi.init(),\n ...this.filters.map(({ pending, origin }) =>\n reaction(\n () => origin.value,\n (value) => {\n pending.setValue(value);\n },\n {\n fireImmediately: true,\n },\n ),\n ),\n ];\n\n return () => {\n disposers.forEach((d) => d());\n };\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_v","require","_util","_mobx","QueryPendingStateBIReporter","constructor","state","_defineProperty2","default","init","disposers","trackedFilters","forEach","trackedFilter","push","reaction","pending","value","isClearing","origin","_reportWithDefaultParams","withoutDefaults","cairoChangesBeforeApply","fieldName","name","fieldValue","_getFilterBIValue","undefined","disposer","reportBi","toolbar","reportProps","params","feature","filter","isEmpty","toArray","map","itemKey","toString","currentStatus","filters","reduce","prev","cur","apply","cairoApplyButtonClicked","JSON","stringify","filteredListSize","multi","collections","result","total","listSize","available","numActiveFields","el","length","numOptionalFields","clear","isClearButton","Promise","resolve","setTimeout","discard","cairoDiscardChangesBeforeApply","exports"],"sources":["../../../src/state/QueryPendingStateBIReporter.ts"],"sourcesContent":["import { ReportProps } from '@wix/fe-essentials/bi';\nimport {\n cairoApplyButtonClicked,\n cairoChangesBeforeApply,\n cairoDiscardChangesBeforeApply,\n} from '@wix/bex-utils/@wix/bi-logger-cairo-os/v2';\nimport { withoutDefaults } from '../util';\nimport { QueryPendingState } from './QueryPendingState';\nimport { reaction } from 'mobx';\nimport { Filter } from '../model';\n\nexport class QueryPendingStateBIReporter {\n readonly state;\n\n isClearing: boolean = false;\n\n constructor(state: QueryPendingState) {\n this.state = state;\n }\n\n init() {\n const disposers: (() => void)[] = [];\n this.state.trackedFilters.forEach((trackedFilter) => {\n disposers.push(\n reaction(\n () => trackedFilter.pending.value,\n () => {\n if (\n this.isClearing ||\n trackedFilter.pending.value === trackedFilter.origin.value\n ) {\n return;\n }\n\n this._reportWithDefaultParams(\n withoutDefaults(cairoChangesBeforeApply)({\n fieldName: trackedFilter.pending.name,\n fieldValue:\n this._getFilterBIValue(trackedFilter.pending) ?? undefined,\n }),\n );\n },\n ),\n );\n });\n\n return () => {\n disposers.forEach((disposer) => disposer());\n };\n }\n\n get reportBi() {\n return this.state.toolbar.reportBi;\n }\n\n _reportWithDefaultParams(reportProps: ReportProps) {\n this.reportBi({\n ...reportProps,\n params: {\n ...reportProps.params,\n feature: 'Filters',\n },\n });\n }\n\n _getFilterBIValue(filter: Filter<any>) {\n return filter.value != null\n ? filter.isEmpty\n ? null\n : filter.toArray.map(filter.itemKey).toString()\n : null;\n }\n\n get currentStatus() {\n return this.state.filters.reduce((prev, cur) => {\n return [\n ...prev,\n {\n fieldName: cur.pending.name,\n fieldValue: this._getFilterBIValue(cur.pending),\n },\n ];\n }, [] as { fieldName: string; fieldValue: string | null }[]);\n }\n\n apply() {\n const currentStatus = this.currentStatus;\n this._reportWithDefaultParams(\n withoutDefaults(cairoApplyButtonClicked)({\n currentStatus: JSON.stringify(currentStatus),\n filteredListSize: this.state.multi.collections.reduce(\n (prev, cur) => prev + cur.result.total,\n 0,\n ),\n listSize:\n this.state.multi.collections.reduce(\n (prev, cur) => prev + (cur.result.available ?? 0),\n 0,\n ) || undefined,\n numActiveFields: currentStatus.filter((el) => el.fieldValue !== null)\n .length,\n numOptionalFields: currentStatus.length,\n }),\n );\n }\n\n async clear() {\n this.isClearing = true;\n this._reportWithDefaultParams(\n withoutDefaults(cairoChangesBeforeApply)({\n isClearButton: true,\n numActiveFields: this.currentStatus.filter(\n (el) => el.fieldValue !== null,\n ).length,\n }),\n );\n // Wait for the next tick in order not to send `cairoChangesBeforeApply` if value changed because of clear action\n await new Promise((resolve) => setTimeout(resolve, 0));\n this.isClearing = false;\n }\n\n discard() {\n const currentStatus = this.currentStatus;\n this._reportWithDefaultParams(\n withoutDefaults(cairoDiscardChangesBeforeApply)({\n currentStatus: JSON.stringify(currentStatus),\n numActiveFields: currentStatus.filter((el) => el.fieldValue !== null)\n .length,\n numOptionalFields: currentStatus.length,\n }),\n );\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["_v","require","_util","_mobx","QueryPendingStateBIReporter","constructor","state","_defineProperty2","default","init","disposers","trackedFilters","forEach","trackedFilter","push","reaction","pending","value","isClearing","origin","_reportWithDefaultParams","withoutDefaults","cairoChangesBeforeApply","fieldName","name","fieldValue","_getFilterBIValue","undefined","disposer","reportBi","toolbar","reportProps","params","feature","filter","isEmpty","toArray","map","itemKey","toString","currentStatus","filters","reduce","prev","cur","apply","cairoApplyButtonClicked","JSON","stringify","filteredListSize","multi","collections","result","total","listSize","available","numActiveFields","el","length","numOptionalFields","clear","isClearButton","Promise","resolve","setTimeout","discard","cairoDiscardChangesBeforeApply","exports"],"sources":["../../../src/state/QueryPendingStateBIReporter.ts"],"sourcesContent":["import { ReportProps } from '@wix/fe-essentials/bi';\nimport {\n cairoApplyButtonClicked,\n cairoChangesBeforeApply,\n cairoDiscardChangesBeforeApply,\n} from '@wix/bex-utils/@wix/bi-logger-cairo-os/v2';\nimport { withoutDefaults } from '../util';\nimport { QueryPendingState } from './QueryPendingState';\nimport { reaction } from 'mobx';\nimport { Filter } from '../model';\n\nexport class QueryPendingStateBIReporter {\n readonly state;\n\n isClearing: boolean = false;\n\n constructor(state: QueryPendingState) {\n this.state = state;\n }\n\n init() {\n const disposers: (() => void)[] = [];\n this.state.trackedFilters.forEach((trackedFilter) => {\n disposers.push(\n reaction(\n () => trackedFilter.pending.value,\n () => {\n if (\n this.isClearing ||\n trackedFilter.pending.value === trackedFilter.origin.value\n ) {\n return;\n }\n\n this._reportWithDefaultParams(\n withoutDefaults(cairoChangesBeforeApply)({\n fieldName: trackedFilter.pending.name,\n fieldValue:\n this._getFilterBIValue(trackedFilter.pending) ?? undefined,\n }),\n );\n },\n ),\n );\n });\n\n return () => {\n disposers.forEach((disposer) => disposer());\n };\n }\n\n get reportBi() {\n return this.state.toolbar.reportBi;\n }\n\n _reportWithDefaultParams(reportProps: ReportProps) {\n this.reportBi({\n ...reportProps,\n params: {\n ...reportProps.params,\n feature: 'Filters',\n },\n });\n }\n\n _getFilterBIValue(filter: Filter<any>) {\n return filter.value != null\n ? filter.isEmpty\n ? null\n : filter.toArray.map(filter.itemKey).toString()\n : null;\n }\n\n get currentStatus() {\n return this.state.filters.reduce((prev, cur) => {\n return [\n ...prev,\n {\n fieldName: cur.pending.name,\n fieldValue: this._getFilterBIValue(cur.pending),\n },\n ];\n }, [] as { fieldName: string; fieldValue: string | null }[]);\n }\n\n apply() {\n const currentStatus = this.currentStatus;\n this._reportWithDefaultParams(\n withoutDefaults(cairoApplyButtonClicked)({\n currentStatus: JSON.stringify(currentStatus),\n filteredListSize: this.state.multi.collections.reduce(\n (prev, cur) => prev + cur.result.total,\n 0,\n ),\n listSize:\n this.state.multi.collections.reduce(\n (prev, cur) => prev + (cur.result.available ?? 0),\n 0,\n ) || undefined,\n numActiveFields: currentStatus.filter((el) => el.fieldValue !== null)\n .length,\n numOptionalFields: currentStatus.length,\n }),\n );\n }\n\n async clear() {\n this.isClearing = true;\n this._reportWithDefaultParams(\n withoutDefaults(cairoChangesBeforeApply)({\n isClearButton: true,\n numActiveFields: this.currentStatus.filter(\n (el) => el.fieldValue !== null,\n ).length,\n }),\n );\n // Wait for the next tick in order not to send `cairoChangesBeforeApply` if value changed because of clear action\n await new Promise((resolve) => setTimeout(resolve, 0));\n this.isClearing = false;\n }\n\n discard() {\n const currentStatus = this.currentStatus;\n this._reportWithDefaultParams(\n withoutDefaults(cairoDiscardChangesBeforeApply)({\n currentStatus: JSON.stringify(currentStatus),\n numActiveFields: currentStatus.filter((el) => el.fieldValue !== null)\n .length,\n numOptionalFields: currentStatus.length,\n }),\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":[],"sources":["../../../src/state/QueryResultSimulation.ts"],"sourcesContent":["import { ComputedQuery, FiltersMap } from '../model';\nimport { IterateeShorthand } from 'lodash';\n\ntype Iterator<T> = (value: T, index: number) => unknown;\n\nexport interface Order<T> {\n fieldName: Iterator<T> | IterateeShorthand<T>;\n order: 'asc' | 'desc';\n}\n\nexport interface QueryResultSimulation<T, F extends FiltersMap> {\n readonly predicate: (computedQuery: ComputedQuery<F>) => (item: T) => boolean;\n readonly orderBy: (computedQuery: ComputedQuery<F>) => Order<T>[];\n}\n"],"mappings":""}
|
|
1
|
+
{"version":3,"names":[],"sources":["../../../src/state/QueryResultSimulation.ts"],"sourcesContent":["import { ComputedQuery, FiltersMap } from '../model';\nimport { IterateeShorthand } from 'lodash';\n\ntype Iterator<T> = (value: T, index: number) => unknown;\n\nexport interface Order<T> {\n fieldName: Iterator<T> | IterateeShorthand<T>;\n order: 'asc' | 'desc';\n}\n\nexport interface QueryResultSimulation<T, F extends FiltersMap> {\n readonly predicate: (computedQuery: ComputedQuery<F>) => (item: T) => boolean;\n readonly orderBy: (computedQuery: ComputedQuery<F>) => Order<T>[];\n}\n"],"mappings":"","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["getKey","item","maybeKeyOfT","QueryResultSimulationDefault","constructor","params","_defineProperty2","default","computedQuery","sort","collection","query","itemName","search","filters","filterName","value","Object","entries","filter","fieldValue","matches","toLowerCase","includes","exports"],"sources":["../../../src/state/QueryResultSimulationDefault.ts"],"sourcesContent":["import { ComputedQuery, FiltersMap } from '../model';\nimport { CollectionState } from './CollectionState';\nimport { Order, QueryResultSimulation } from './QueryResultSimulation';\n\nfunction getKey<T>(\n item: T,\n maybeKeyOfT: string | keyof T,\n): T[keyof T] | undefined | null {\n return item[maybeKeyOfT as keyof T];\n}\n\nexport interface QueryResultSimulationDefaultParams<T, F extends FiltersMap> {\n readonly collection: CollectionState<T, F>;\n}\nexport class QueryResultSimulationDefault<T, F extends FiltersMap>\n implements QueryResultSimulation<T, F>\n{\n readonly collection: CollectionState<T, F>;\n\n constructor(params: QueryResultSimulationDefaultParams<T, F>) {\n this.collection = params.collection;\n }\n\n orderBy = (computedQuery: ComputedQuery<F>): Order<T>[] => {\n const { sort } = computedQuery;\n\n return [...(sort ?? [])];\n };\n\n predicate = (computedQuery: ComputedQuery<F>) => {\n const { collection } = this;\n const { query, itemName } = collection;\n const { search, filters } = computedQuery;\n\n return (item: T) => {\n for (const [filterName, value] of Object.entries(filters)) {\n const filter = query.filters[filterName];\n\n if (filter == null) {\n return false;\n }\n\n const fieldValue = getKey(item, filterName);\n if (\n value != null &&\n fieldValue != null &&\n !filter.matches(fieldValue, value)\n ) {\n return false;\n }\n }\n\n if (search && !itemName(item).toLowerCase().includes(search)) {\n return false;\n }\n\n return true;\n };\n };\n}\n"],"mappings":";;;;;;AAIA,SAASA,MAAMA,CACbC,IAAO,EACPC,WAA6B,EACE;EAC/B,OAAOD,IAAI,CAACC,WAAW,CAAY;AACrC;AAKO,MAAMC,4BAA4B,CAEzC;EAGEC,WAAWA,CAACC,MAAgD,EAAE;IAAA,IAAAC,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA,mBAInDC,aAA+B,IAAiB;MACzD,MAAM;QAAEC;MAAK,CAAC,GAAGD,aAAa;MAE9B,OAAO,CAAC,IAAIC,IAAI,IAAI,EAAE,CAAC,CAAC;IAC1B,CAAC;IAAA,IAAAH,gBAAA,CAAAC,OAAA,qBAEYC,aAA+B,IAAK;MAC/C,MAAM;QAAEE;MAAW,CAAC,GAAG,IAAI;MAC3B,MAAM;QAAEC,KAAK;QAAEC;MAAS,CAAC,GAAGF,UAAU;MACtC,MAAM;QAAEG,MAAM;QAAEC;MAAQ,CAAC,GAAGN,aAAa;MAEzC,OAAQP,IAAO,IAAK;QAClB,KAAK,MAAM,CAACc,UAAU,EAAEC,KAAK,CAAC,IAAIC,MAAM,CAACC,OAAO,CAACJ,OAAO,CAAC,EAAE;UACzD,MAAMK,MAAM,GAAGR,KAAK,CAACG,OAAO,CAACC,UAAU,CAAC;UAExC,IAAII,MAAM,IAAI,IAAI,EAAE;YAClB,OAAO,KAAK;UACd;UAEA,MAAMC,UAAU,GAAGpB,MAAM,CAACC,IAAI,EAAEc,UAAU,CAAC;UAC3C,IACEC,KAAK,IAAI,IAAI,IACbI,UAAU,IAAI,IAAI,IAClB,CAACD,MAAM,CAACE,OAAO,CAACD,UAAU,EAAEJ,KAAK,CAAC,EAClC;YACA,OAAO,KAAK;UACd;QACF;QAEA,IAAIH,MAAM,IAAI,CAACD,QAAQ,CAACX,IAAI,CAAC,CAACqB,WAAW,CAAC,CAAC,CAACC,QAAQ,CAACV,MAAM,CAAC,EAAE;UAC5D,OAAO,KAAK;QACd;QAEA,OAAO,IAAI;MACb,CAAC;IACH,CAAC;IAtCC,IAAI,CAACH,UAAU,GAAGL,MAAM,CAACK,UAAU;EACrC;AAsCF;AAACc,OAAA,CAAArB,4BAAA,GAAAA,4BAAA"}
|
|
1
|
+
{"version":3,"names":["getKey","item","maybeKeyOfT","QueryResultSimulationDefault","constructor","params","_defineProperty2","default","computedQuery","sort","collection","query","itemName","search","filters","filterName","value","Object","entries","filter","fieldValue","matches","toLowerCase","includes","exports"],"sources":["../../../src/state/QueryResultSimulationDefault.ts"],"sourcesContent":["import { ComputedQuery, FiltersMap } from '../model';\nimport { CollectionState } from './CollectionState';\nimport { Order, QueryResultSimulation } from './QueryResultSimulation';\n\nfunction getKey<T>(\n item: T,\n maybeKeyOfT: string | keyof T,\n): T[keyof T] | undefined | null {\n return item[maybeKeyOfT as keyof T];\n}\n\nexport interface QueryResultSimulationDefaultParams<T, F extends FiltersMap> {\n readonly collection: CollectionState<T, F>;\n}\nexport class QueryResultSimulationDefault<T, F extends FiltersMap>\n implements QueryResultSimulation<T, F>\n{\n readonly collection: CollectionState<T, F>;\n\n constructor(params: QueryResultSimulationDefaultParams<T, F>) {\n this.collection = params.collection;\n }\n\n orderBy = (computedQuery: ComputedQuery<F>): Order<T>[] => {\n const { sort } = computedQuery;\n\n return [...(sort ?? [])];\n };\n\n predicate = (computedQuery: ComputedQuery<F>) => {\n const { collection } = this;\n const { query, itemName } = collection;\n const { search, filters } = computedQuery;\n\n return (item: T) => {\n for (const [filterName, value] of Object.entries(filters)) {\n const filter = query.filters[filterName];\n\n if (filter == null) {\n return false;\n }\n\n const fieldValue = getKey(item, filterName);\n if (\n value != null &&\n fieldValue != null &&\n !filter.matches(fieldValue, value)\n ) {\n return false;\n }\n }\n\n if (search && !itemName(item).toLowerCase().includes(search)) {\n return false;\n }\n\n return true;\n };\n };\n}\n"],"mappings":";;;;;;AAIA,SAASA,MAAMA,CACbC,IAAO,EACPC,WAA6B,EACE;EAC/B,OAAOD,IAAI,CAACC,WAAW,CAAY;AACrC;AAKO,MAAMC,4BAA4B,CAEzC;EAGEC,WAAWA,CAACC,MAAgD,EAAE;IAAA,IAAAC,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA,mBAInDC,aAA+B,IAAiB;MACzD,MAAM;QAAEC;MAAK,CAAC,GAAGD,aAAa;MAE9B,OAAO,CAAC,IAAIC,IAAI,IAAI,EAAE,CAAC,CAAC;IAC1B,CAAC;IAAA,IAAAH,gBAAA,CAAAC,OAAA,qBAEYC,aAA+B,IAAK;MAC/C,MAAM;QAAEE;MAAW,CAAC,GAAG,IAAI;MAC3B,MAAM;QAAEC,KAAK;QAAEC;MAAS,CAAC,GAAGF,UAAU;MACtC,MAAM;QAAEG,MAAM;QAAEC;MAAQ,CAAC,GAAGN,aAAa;MAEzC,OAAQP,IAAO,IAAK;QAClB,KAAK,MAAM,CAACc,UAAU,EAAEC,KAAK,CAAC,IAAIC,MAAM,CAACC,OAAO,CAACJ,OAAO,CAAC,EAAE;UACzD,MAAMK,MAAM,GAAGR,KAAK,CAACG,OAAO,CAACC,UAAU,CAAC;UAExC,IAAII,MAAM,IAAI,IAAI,EAAE;YAClB,OAAO,KAAK;UACd;UAEA,MAAMC,UAAU,GAAGpB,MAAM,CAACC,IAAI,EAAEc,UAAU,CAAC;UAC3C,IACEC,KAAK,IAAI,IAAI,IACbI,UAAU,IAAI,IAAI,IAClB,CAACD,MAAM,CAACE,OAAO,CAACD,UAAU,EAAEJ,KAAK,CAAC,EAClC;YACA,OAAO,KAAK;UACd;QACF;QAEA,IAAIH,MAAM,IAAI,CAACD,QAAQ,CAACX,IAAI,CAAC,CAACqB,WAAW,CAAC,CAAC,CAACC,QAAQ,CAACV,MAAM,CAAC,EAAE;UAC5D,OAAO,KAAK;QACd;QAEA,OAAO,IAAI;MACb,CAAC;IACH,CAAC;IAtCC,IAAI,CAACH,UAAU,GAAGL,MAAM,CAACK,UAAU;EACrC;AAsCF;AAACc,OAAA,CAAArB,4BAAA,GAAAA,4BAAA","ignoreList":[]}
|