@wix/bex-core 1.432.0 → 1.433.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/assets/locale/messages_de.json +3 -3
- package/dist/cjs/assets/locale/messages_es.json +3 -3
- package/dist/cjs/assets/locale/messages_fr.json +3 -3
- package/dist/cjs/assets/locale/messages_ko.json +3 -3
- package/dist/cjs/assets/locale/messages_pt.json +3 -3
- package/dist/cjs/assets/locale/messages_ru.json +3 -3
- package/dist/cjs/assets/locale/messages_th.json +3 -3
- package/dist/cjs/assets/locale/messages_visuale2e.json +3 -0
- package/dist/cjs/assets/locale/messages_zh.json +3 -3
- package/dist/cjs/hooks/useCollection/useCollection.js +1 -1
- package/dist/cjs/hooks/useCollection/useCollection.js.map +1 -1
- package/dist/cjs/model/cairoEnvironment.js +2 -2
- package/dist/cjs/model/cairoEnvironment.js.map +1 -1
- package/dist/cjs/providers/CairoContainerOverridesContext.js +5 -5
- package/dist/cjs/providers/CairoContainerOverridesContext.js.map +1 -1
- package/dist/cjs/providers/CairoContainerProvider/CairoContainerProvider.js +5 -5
- package/dist/cjs/providers/CairoContainerProvider/CairoContainerProvider.js.map +1 -1
- package/dist/cjs/providers/CairoInitialPropsProvider.js +2 -2
- package/dist/cjs/providers/CairoInitialPropsProvider.js.map +1 -1
- package/dist/cjs/providers/CairoProvider/CairoProvider.js +2 -2
- package/dist/cjs/providers/CairoProvider/CairoProvider.js.map +1 -1
- package/dist/cjs/services/CairoError.js +7 -7
- package/dist/cjs/services/CairoError.js.map +1 -1
- package/dist/cjs/services/CairoErrorCode.js.map +1 -1
- package/dist/cjs/services/cairoMonitor.js +5 -5
- package/dist/cjs/services/cairoMonitor.js.map +1 -1
- package/dist/cjs/services/experiments.js +2 -2
- package/dist/cjs/services/experiments.js.map +1 -1
- package/dist/cjs/state/CairoContainer.js +2 -2
- package/dist/cjs/state/CairoContainer.js.map +1 -1
- package/dist/cjs/state/CustomFieldsViewWidgetState.js +1 -1
- package/dist/cjs/state/CustomFieldsViewWidgetState.js.map +1 -1
- package/dist/cjs/state/ExportState.js +3 -3
- package/dist/cjs/state/ExportState.js.map +1 -1
- package/dist/cjs/state/FedopsReporter.js.map +1 -1
- package/dist/cjs/state/SelectState.js +1 -1
- package/dist/cjs/state/SelectState.js.map +1 -1
- package/dist/cjs/state/SelectionStatusCairoPreset.js +3 -3
- package/dist/cjs/state/SelectionStatusCairoPreset.js.map +1 -1
- package/dist/cjs/state/warmUpPickerStandalone.js +1 -1
- package/dist/cjs/state/warmUpPickerStandalone.js.map +1 -1
- package/dist/esm/assets/locale/messages_de.json +3 -3
- package/dist/esm/assets/locale/messages_es.json +3 -3
- package/dist/esm/assets/locale/messages_fr.json +3 -3
- package/dist/esm/assets/locale/messages_ko.json +3 -3
- package/dist/esm/assets/locale/messages_pt.json +3 -3
- package/dist/esm/assets/locale/messages_ru.json +3 -3
- package/dist/esm/assets/locale/messages_th.json +3 -3
- package/dist/esm/assets/locale/messages_visuale2e.json +3 -0
- package/dist/esm/assets/locale/messages_zh.json +3 -3
- package/dist/esm/hooks/useCollection/useCollection.js +2 -2
- package/dist/esm/hooks/useCollection/useCollection.js.map +1 -1
- package/dist/esm/model/cairoEnvironment.js +1 -1
- package/dist/esm/model/cairoEnvironment.js.map +1 -1
- package/dist/esm/providers/CairoContainerOverridesContext.js +3 -3
- package/dist/esm/providers/CairoContainerOverridesContext.js.map +1 -1
- package/dist/esm/providers/CairoContainerProvider/CairoContainerProvider.js +4 -4
- package/dist/esm/providers/CairoContainerProvider/CairoContainerProvider.js.map +1 -1
- package/dist/esm/providers/CairoInitialPropsProvider.js +1 -1
- package/dist/esm/providers/CairoInitialPropsProvider.js.map +1 -1
- package/dist/esm/providers/CairoProvider/CairoProvider.js +4 -4
- package/dist/esm/providers/CairoProvider/CairoProvider.js.map +1 -1
- package/dist/esm/services/CairoError.js +4 -4
- package/dist/esm/services/CairoError.js.map +1 -1
- package/dist/esm/services/cairoMonitor.js +4 -4
- package/dist/esm/services/cairoMonitor.js.map +1 -1
- package/dist/esm/services/experiments.js +1 -1
- package/dist/esm/services/experiments.js.map +1 -1
- package/dist/esm/state/CairoContainer.js +4 -4
- package/dist/esm/state/CairoContainer.js.map +1 -1
- package/dist/esm/state/CustomFieldsViewWidgetState.js +2 -2
- package/dist/esm/state/CustomFieldsViewWidgetState.js.map +1 -1
- package/dist/esm/state/ExportState.js +4 -4
- package/dist/esm/state/ExportState.js.map +1 -1
- package/dist/esm/state/SelectState.js +2 -2
- package/dist/esm/state/SelectState.js.map +1 -1
- package/dist/esm/state/SelectionStatusCairoPreset.js +2 -2
- package/dist/esm/state/SelectionStatusCairoPreset.js.map +1 -1
- package/dist/esm/state/warmUpPickerStandalone.js +2 -2
- package/dist/esm/state/warmUpPickerStandalone.js.map +1 -1
- package/dist/types/hooks/useCollection/useCollection.d.ts.map +1 -1
- package/dist/types/model/cairoEnvironment.d.ts +1 -1
- package/dist/types/model/cairoEnvironment.d.ts.map +1 -1
- package/dist/types/providers/CairoContainerOverridesContext.d.ts +3 -3
- package/dist/types/providers/CairoContainerOverridesContext.d.ts.map +1 -1
- package/dist/types/providers/CairoContainerProvider/CairoContainerProvider.d.ts +3 -3
- package/dist/types/providers/CairoContainerProvider/CairoContainerProvider.d.ts.map +1 -1
- package/dist/types/providers/CairoInitialPropsProvider.d.ts +1 -1
- package/dist/types/providers/CairoInitialPropsProvider.d.ts.map +1 -1
- package/dist/types/services/CairoError.d.ts +5 -5
- package/dist/types/services/CairoError.d.ts.map +1 -1
- package/dist/types/services/CairoErrorCode.d.ts +1 -1
- package/dist/types/services/CairoErrorCode.d.ts.map +1 -1
- package/dist/types/services/cairoMonitor.d.ts +2 -2
- package/dist/types/services/cairoMonitor.d.ts.map +1 -1
- package/dist/types/services/experiments.d.ts +1 -1
- package/dist/types/services/experiments.d.ts.map +1 -1
- package/dist/types/state/CairoContainer.d.ts +2 -2
- package/dist/types/state/CairoContainer.d.ts.map +1 -1
- package/dist/types/state/ExportState.d.ts +3 -3
- package/dist/types/state/ExportState.d.ts.map +1 -1
- package/dist/types/state/FedopsReporter.d.ts +3 -3
- package/dist/types/state/FedopsReporter.d.ts.map +1 -1
- package/dist/types/state/SelectionStatusCairoPreset.d.ts +2 -2
- package/dist/types/state/SelectionStatusCairoPreset.d.ts.map +1 -1
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_services","require","_model","_mobx","_TaskState","_OnlineState","_createComponentSettings","_ConditionalModalState","_events","_useExperimentsCompat","_uuid","_BeforeUnloadCompatState","CairoContainer","constructor","params","_params$initialProps","_defineProperty2","default","TaskState","defaultParams","_this$biLoggerFactory","environment","cairoSessionId","biLoggerFactory","call","updateDefaults","artifactId","componentName","cairoVersion","uiLibVersion","csid","logger","bi","createBI","reportProps","report","createEssentials","lodash","patchesCache","events","EventEmitter","_messagesEnImport","messagesEnImport","messagesEnImportGlobal","_fetchTranslations","fetchTranslations","onNavigationModal","ConditionalModalState","cairoEnvironment","user","createComponentSettings","errorMonitor","httpClient","onlineManager","focusManager","history","useTranslation","useExperiments","createUseExperimentsCompat","experiments","showToast","navigateTo","onNavigation","getHostContainer","window","queryCache","appendModalsToBody","onSidePanelOpen","closeSidePanel","onBeforeUnload","i18n","fedopsLogger","internalFedops","internalErrorMonitor","internalExperiments","useSuspense","disableAutoInit","asyncMessagesLoader","locale","messages","initialProps","dsn","process","env","NODE_ENV","fedops","appName","scopes","STORYBOOK_VISUAL_E2E","options","fallbackLng","uuid","internalMonitor","CairoMonitor","translate","args","initTask","status","t","Trans","onlineState","OnlineState","reportBi","createBILogger","makeObservable","init","action","bound","initialFetch","dateFormatters","computed","isLoading","isSuccess","promise","run","Promise","all","ready","catch","e","console","error","medium","Intl","DateTimeFormat","language","dateStyle","mediumTime","timeStyle","disposers","BeforeUnloadCompatState","forEach","d","exports"],"sources":["../../../src/state/CairoContainer.ts"],"sourcesContent":["import type { Essentials } from '@wix/fe-essentials/core';\nimport type { Trans, useTranslation } from '@wix/fe-essentials/react';\nimport type { ReportProps } from '@wix/fe-essentials/bi';\nimport {\n CairoMonitor,\n Environment,\n ErrorMonitor,\n fetchTranslations,\n FocusManager,\n History,\n messagesEnImportGlobal,\n ModalLayoutProps,\n OnlineManager,\n PartialLodash,\n PartialWindow,\n ReportBI,\n Translate,\n} from '../services';\nimport { QueryCache } from 'react-query/core';\nimport {\n CairoBILoggerFactory,\n cairoEnvironment,\n CairoEssentials,\n CairoInitialProps,\n CloseSidePanel,\n GetContentContainerY,\n GetHostContainer,\n OnNavigation,\n OnSidePanelOpen,\n ShowToast,\n} from '../model';\nimport { action, computed, IObservableArray, makeObservable } from 'mobx';\nimport { TaskState } from './TaskState';\nimport { OnlineState } from './OnlineState';\nimport { createComponentSettings } from '../services/createComponentSettings';\nimport { OptimisticPatch } from './CollectionOptimisticPatch';\nimport { ConditionalModalState } from './ConditionalModalState';\nimport { EventEmitter } from 'events';\nimport { TypedEmitter } from '../util';\nimport { TransitionState } from './TransitionState';\nimport { ReactElement } from 'react';\nimport { createUseExperimentsCompat } from './useExperimentsCompat';\nimport { v4 as uuid } from 'uuid';\nimport { BeforeUnloadCompatState } from './BeforeUnloadCompatState';\n\ntype CairoContainerEvents = TypedEmitter<{\n navigation: () => ModalLayoutProps | null | undefined;\n}>;\n\nexport interface CairoContainerParams {\n readonly initialProps?: CairoInitialProps;\n readonly createEssentials: CairoEssentials['createEssentials'];\n readonly messagesEnImport?: () => Promise<{}>;\n readonly fetchTranslations?: (p: {\n readonly errorMonitor: ErrorMonitor;\n }) => (locale: string) => Promise<{}>;\n readonly createComponentSettings?: CairoEssentials['createComponentSettings'];\n readonly errorMonitor: ErrorMonitor;\n readonly httpClient: CairoEssentials['httpClient'];\n readonly onlineManager: OnlineManager;\n readonly focusManager: FocusManager;\n readonly history: History;\n readonly window: PartialWindow;\n readonly useTranslation: typeof useTranslation;\n readonly Trans: typeof Trans;\n readonly useExperiments: CairoEssentials['useExperiments'];\n readonly experiments: CairoEssentials['experiments'];\n readonly environment: CairoEssentials['environment'];\n readonly user: CairoEssentials['user'];\n readonly showToast?: ShowToast;\n readonly navigateTo?: CairoEssentials['navigateTo'];\n readonly onNavigation?: OnNavigation;\n readonly getHostContainer?: GetHostContainer;\n readonly queryCache: QueryCache;\n readonly patchesCache: Map<string, IObservableArray<OptimisticPatch<any>>>;\n /**\n * @deprecated\n */\n readonly getContentContainerY?: GetContentContainerY;\n readonly onSidePanelOpen?: OnSidePanelOpen;\n readonly closeSidePanel?: CloseSidePanel;\n readonly lodash: PartialLodash;\n readonly events?: CairoContainerEvents;\n readonly sidePanel?: TransitionState<string>;\n readonly onNavigationModal?: ConditionalModalState<ModalLayoutProps>;\n readonly sidePanelComponents?: Map<string, ReactElement>;\n readonly appendModalsToBody?: boolean;\n readonly onBeforeUnload?: CairoEssentials['onBeforeUnload'];\n}\n\nexport class CairoContainer {\n readonly createEssentials;\n readonly errorMonitor: CairoContainerParams['errorMonitor'];\n readonly internalMonitor: CairoMonitor;\n readonly internalExperiments;\n readonly experiments;\n readonly httpClient: CairoContainerParams['httpClient'];\n readonly onlineManager;\n readonly focusManager;\n readonly history: CairoContainerParams['history'];\n readonly window: CairoContainerParams['window'];\n readonly useTranslation;\n readonly Trans: typeof Trans;\n readonly useExperiments;\n readonly showToast?;\n readonly navigateTo?;\n readonly onNavigation;\n readonly onBeforeUnload;\n readonly getHostContainer;\n readonly environment: Environment;\n readonly appendModalsToBody?: boolean;\n readonly onSidePanelOpen?: OnSidePanelOpen;\n readonly closeSidePanel?: CloseSidePanel;\n readonly translate: Translate;\n readonly lodash;\n readonly i18n: Essentials['i18n'];\n readonly reportBi: ReportBI;\n readonly _messagesEnImport;\n readonly _fetchTranslations;\n\n readonly queryCache: QueryCache;\n readonly patchesCache;\n\n readonly initTask = new TaskState<void>();\n readonly onlineState: OnlineState;\n\n readonly onNavigationModal;\n\n readonly events: TypedEmitter<{\n navigation: () => ModalLayoutProps | null | undefined;\n }>;\n\n readonly user;\n\n readonly cairoSessionId: string;\n // Why it might be undefined when creating essentials?\n private readonly biLoggerFactory?: () => CairoBILoggerFactory;\n\n readonly createComponentSettings;\n\n constructor(params: Readonly<CairoContainerParams>) {\n this.createEssentials = params.createEssentials;\n this.lodash = params.lodash;\n this.patchesCache = params.patchesCache;\n this.events = params.events ?? (new EventEmitter() as CairoContainerEvents);\n this._messagesEnImport = params.messagesEnImport ?? messagesEnImportGlobal;\n this._fetchTranslations = params.fetchTranslations ?? fetchTranslations;\n\n this.onNavigationModal =\n params.onNavigationModal ?? new ConditionalModalState();\n\n this.environment = cairoEnvironment(params.environment);\n this.user = params.user;\n\n this.createComponentSettings =\n params.createComponentSettings ?? createComponentSettings;\n\n this.errorMonitor = params.errorMonitor;\n this.httpClient = params.httpClient;\n this.onlineManager = params.onlineManager;\n this.focusManager = params.focusManager;\n this.history = params.history;\n this.useTranslation = params.useTranslation;\n this.useExperiments = createUseExperimentsCompat(params.useExperiments);\n this.experiments = params.experiments;\n this.showToast = params.showToast;\n this.navigateTo = params.navigateTo;\n this.onNavigation = params.onNavigation;\n this.getHostContainer = params.getHostContainer;\n this.window = params.window;\n this.queryCache = params.queryCache;\n this.appendModalsToBody = params.appendModalsToBody;\n this.onSidePanelOpen = params.onSidePanelOpen;\n this.closeSidePanel = params.closeSidePanel;\n this.onBeforeUnload = params.onBeforeUnload;\n\n const {\n i18n,\n biLoggerFactory,\n fedopsLogger: internalFedops,\n errorMonitor: internalErrorMonitor,\n experiments: internalExperiments,\n } = this.createEssentials({\n i18n: {\n useSuspense: false,\n disableAutoInit: true,\n asyncMessagesLoader: async (locale) => {\n if (locale === 'en') {\n return this._messagesEnImport();\n }\n return this._fetchTranslations(this)(locale);\n },\n messages: params.initialProps?.messages,\n },\n errorMonitor: {\n dsn:\n process.env.NODE_ENV === 'production'\n ? 'https://9b9586a905eb429cbda9ea49d5d721f6@sentry-next.wixpress.com/8780'\n : '',\n /*\n TODO: not used in sentry-next API, need to be merged from reportError API with tags & extraData\n For Example: errorMonitor.captureException(error, { tags, contexts: { runtime: extraData }})\n beforeSend: (event, hint) => {\n this.internalMonitor.reportErrorThrownOncePerFlow();\n\n if (!event.tags) {\n event.tags = {};\n }\n\n if (!event.extra) {\n event.extra = {};\n }\n\n if (hint && hint.originalException) {\n event.extra.exception = hint.originalException;\n\n if (hint.originalException instanceof Error) {\n event.fingerprint = [\n `${hint.originalException.name}:${hint.originalException.message}`,\n ];\n }\n }\n\n event.tags.componentName = this.environment.componentName;\n event.tags.componentId = this.environment.componentId;\n event.tags.artifactId = this.environment.artifactId;\n event.tags.cairoVersion = this.environment.uiLibVersion;\n\n return event;\n },\n */\n },\n fedops: {\n appName: 'cairo',\n },\n experiments: {\n scopes: ['cairo'],\n },\n });\n\n if (\n typeof process !== 'undefined' &&\n process.env.STORYBOOK_VISUAL_E2E === 'true'\n ) {\n i18n.options.fallbackLng = [];\n }\n\n this.cairoSessionId = uuid();\n this.biLoggerFactory = biLoggerFactory;\n this.i18n = i18n;\n this.internalMonitor = new CairoMonitor({\n errorMonitor: params.errorMonitor,\n internalErrorMonitor,\n internalFedops,\n environment: this.environment,\n csid: this.cairoSessionId,\n });\n this.internalExperiments = internalExperiments;\n\n this.translate = (...args) => {\n void this.initTask.status; // status is observable so reading it here starts mobx reactivity\n return this.i18n.t(...args);\n };\n\n this.Trans = params.Trans;\n\n this.onlineState = new OnlineState({\n onlineManager: this.onlineManager,\n focusManager: this.focusManager,\n translate: this.translate,\n showToast: this.showToast,\n });\n\n this.reportBi = this.createBILogger({});\n\n makeObservable(this, {\n init: action.bound,\n initialFetch: action.bound,\n dateFormatters: computed,\n });\n }\n\n _createComponentSettings(options: { namespace: string }) {\n return this.createComponentSettings(this)(options);\n }\n\n createBI = <P>(defaultParams: P) => {\n const { environment, cairoSessionId } = this;\n return this.biLoggerFactory?.()\n .updateDefaults({\n artifactId: environment.artifactId,\n componentName: environment.componentName,\n cairoVersion: environment.uiLibVersion,\n csid: cairoSessionId,\n ...defaultParams,\n })\n .logger();\n };\n\n createBILogger = <P>(defaultParams: P): ReportBI => {\n const bi = this.createBI(defaultParams);\n return (reportProps: ReportProps) => bi?.report(reportProps);\n };\n\n async initialFetch() {\n const { initTask, i18n, internalExperiments, experiments } = this;\n if (initTask.status.isLoading || initTask.status.isSuccess) {\n return initTask.status.promise;\n }\n\n await initTask.run(async () => {\n await Promise.all([\n i18n.init(),\n internalExperiments?.ready().catch((e) => {\n console.error(e);\n }),\n experiments.ready().catch((e) => {\n console.error(e);\n }),\n this._messagesEnImport(), // not all translation files contain all the keys, so en is required otherwise show error state\n ]);\n });\n\n return initTask.status.promise;\n }\n\n get dateFormatters() {\n return {\n medium: new Intl.DateTimeFormat(this.environment.language, {\n dateStyle: 'medium',\n }),\n mediumTime: new Intl.DateTimeFormat(this.environment.language, {\n dateStyle: 'medium',\n timeStyle: 'short',\n }),\n };\n }\n\n init() {\n const { onlineState } = this;\n\n this.initialFetch().catch((e) => {\n console.error(e);\n });\n\n const disposers = [\n onlineState.init(),\n new BeforeUnloadCompatState(this).init(),\n ];\n\n return () => {\n disposers.forEach((d) => d?.());\n };\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["_services","require","_model","_mobx","_TaskState","_OnlineState","_createComponentSettings","_ConditionalModalState","_events","_useExperimentsCompat","_uuid","_BeforeUnloadCompatState","CairoContainer","constructor","params","_params$initialProps","_defineProperty2","default","TaskState","defaultParams","_this$biLoggerFactory","environment","cairoSessionId","biLoggerFactory","call","updateDefaults","artifactId","componentName","cairoVersion","uiLibVersion","csid","logger","bi","createBI","reportProps","report","createEssentials","lodash","patchesCache","events","EventEmitter","_messagesEnImport","messagesEnImport","messagesEnImportGlobal","_fetchTranslations","fetchTranslations","onNavigationModal","ConditionalModalState","patternsEnvironment","user","createComponentSettings","errorMonitor","httpClient","onlineManager","focusManager","history","useTranslation","useExperiments","createUseExperimentsCompat","experiments","showToast","navigateTo","onNavigation","getHostContainer","window","queryCache","appendModalsToBody","onSidePanelOpen","closeSidePanel","onBeforeUnload","i18n","fedopsLogger","internalFedops","internalErrorMonitor","internalExperiments","useSuspense","disableAutoInit","asyncMessagesLoader","locale","messages","initialProps","dsn","process","env","NODE_ENV","fedops","appName","scopes","STORYBOOK_VISUAL_E2E","options","fallbackLng","uuid","internalMonitor","PatternsMonitor","translate","args","initTask","status","t","Trans","onlineState","OnlineState","reportBi","createBILogger","makeObservable","init","action","bound","initialFetch","dateFormatters","computed","isLoading","isSuccess","promise","run","Promise","all","ready","catch","e","console","error","medium","Intl","DateTimeFormat","language","dateStyle","mediumTime","timeStyle","disposers","BeforeUnloadCompatState","forEach","d","exports"],"sources":["../../../src/state/CairoContainer.ts"],"sourcesContent":["import type { Essentials } from '@wix/fe-essentials/core';\nimport type { Trans, useTranslation } from '@wix/fe-essentials/react';\nimport type { ReportProps } from '@wix/fe-essentials/bi';\nimport {\n PatternsMonitor,\n Environment,\n ErrorMonitor,\n fetchTranslations,\n FocusManager,\n History,\n messagesEnImportGlobal,\n ModalLayoutProps,\n OnlineManager,\n PartialLodash,\n PartialWindow,\n ReportBI,\n Translate,\n} from '../services';\nimport { QueryCache } from 'react-query/core';\nimport {\n CairoBILoggerFactory,\n patternsEnvironment,\n CairoEssentials,\n CairoInitialProps,\n CloseSidePanel,\n GetContentContainerY,\n GetHostContainer,\n OnNavigation,\n OnSidePanelOpen,\n ShowToast,\n} from '../model';\nimport { action, computed, IObservableArray, makeObservable } from 'mobx';\nimport { TaskState } from './TaskState';\nimport { OnlineState } from './OnlineState';\nimport { createComponentSettings } from '../services/createComponentSettings';\nimport { OptimisticPatch } from './CollectionOptimisticPatch';\nimport { ConditionalModalState } from './ConditionalModalState';\nimport { EventEmitter } from 'events';\nimport { TypedEmitter } from '../util';\nimport { TransitionState } from './TransitionState';\nimport { ReactElement } from 'react';\nimport { createUseExperimentsCompat } from './useExperimentsCompat';\nimport { v4 as uuid } from 'uuid';\nimport { BeforeUnloadCompatState } from './BeforeUnloadCompatState';\n\ntype CairoContainerEvents = TypedEmitter<{\n navigation: () => ModalLayoutProps | null | undefined;\n}>;\n\nexport interface CairoContainerParams {\n readonly initialProps?: CairoInitialProps;\n readonly createEssentials: CairoEssentials['createEssentials'];\n readonly messagesEnImport?: () => Promise<{}>;\n readonly fetchTranslations?: (p: {\n readonly errorMonitor: ErrorMonitor;\n }) => (locale: string) => Promise<{}>;\n readonly createComponentSettings?: CairoEssentials['createComponentSettings'];\n readonly errorMonitor: ErrorMonitor;\n readonly httpClient: CairoEssentials['httpClient'];\n readonly onlineManager: OnlineManager;\n readonly focusManager: FocusManager;\n readonly history: History;\n readonly window: PartialWindow;\n readonly useTranslation: typeof useTranslation;\n readonly Trans: typeof Trans;\n readonly useExperiments: CairoEssentials['useExperiments'];\n readonly experiments: CairoEssentials['experiments'];\n readonly environment: CairoEssentials['environment'];\n readonly user: CairoEssentials['user'];\n readonly showToast?: ShowToast;\n readonly navigateTo?: CairoEssentials['navigateTo'];\n readonly onNavigation?: OnNavigation;\n readonly getHostContainer?: GetHostContainer;\n readonly queryCache: QueryCache;\n readonly patchesCache: Map<string, IObservableArray<OptimisticPatch<any>>>;\n /**\n * @deprecated\n */\n readonly getContentContainerY?: GetContentContainerY;\n readonly onSidePanelOpen?: OnSidePanelOpen;\n readonly closeSidePanel?: CloseSidePanel;\n readonly lodash: PartialLodash;\n readonly events?: CairoContainerEvents;\n readonly sidePanel?: TransitionState<string>;\n readonly onNavigationModal?: ConditionalModalState<ModalLayoutProps>;\n readonly sidePanelComponents?: Map<string, ReactElement>;\n readonly appendModalsToBody?: boolean;\n readonly onBeforeUnload?: CairoEssentials['onBeforeUnload'];\n}\n\nexport class CairoContainer {\n readonly createEssentials;\n readonly errorMonitor: CairoContainerParams['errorMonitor'];\n readonly internalMonitor: PatternsMonitor;\n readonly internalExperiments;\n readonly experiments;\n readonly httpClient: CairoContainerParams['httpClient'];\n readonly onlineManager;\n readonly focusManager;\n readonly history: CairoContainerParams['history'];\n readonly window: CairoContainerParams['window'];\n readonly useTranslation;\n readonly Trans: typeof Trans;\n readonly useExperiments;\n readonly showToast?;\n readonly navigateTo?;\n readonly onNavigation;\n readonly onBeforeUnload;\n readonly getHostContainer;\n readonly environment: Environment;\n readonly appendModalsToBody?: boolean;\n readonly onSidePanelOpen?: OnSidePanelOpen;\n readonly closeSidePanel?: CloseSidePanel;\n readonly translate: Translate;\n readonly lodash;\n readonly i18n: Essentials['i18n'];\n readonly reportBi: ReportBI;\n readonly _messagesEnImport;\n readonly _fetchTranslations;\n\n readonly queryCache: QueryCache;\n readonly patchesCache;\n\n readonly initTask = new TaskState<void>();\n readonly onlineState: OnlineState;\n\n readonly onNavigationModal;\n\n readonly events: TypedEmitter<{\n navigation: () => ModalLayoutProps | null | undefined;\n }>;\n\n readonly user;\n\n readonly cairoSessionId: string;\n // Why it might be undefined when creating essentials?\n private readonly biLoggerFactory?: () => CairoBILoggerFactory;\n\n readonly createComponentSettings;\n\n constructor(params: Readonly<CairoContainerParams>) {\n this.createEssentials = params.createEssentials;\n this.lodash = params.lodash;\n this.patchesCache = params.patchesCache;\n this.events = params.events ?? (new EventEmitter() as CairoContainerEvents);\n this._messagesEnImport = params.messagesEnImport ?? messagesEnImportGlobal;\n this._fetchTranslations = params.fetchTranslations ?? fetchTranslations;\n\n this.onNavigationModal =\n params.onNavigationModal ?? new ConditionalModalState();\n\n this.environment = patternsEnvironment(params.environment);\n this.user = params.user;\n\n this.createComponentSettings =\n params.createComponentSettings ?? createComponentSettings;\n\n this.errorMonitor = params.errorMonitor;\n this.httpClient = params.httpClient;\n this.onlineManager = params.onlineManager;\n this.focusManager = params.focusManager;\n this.history = params.history;\n this.useTranslation = params.useTranslation;\n this.useExperiments = createUseExperimentsCompat(params.useExperiments);\n this.experiments = params.experiments;\n this.showToast = params.showToast;\n this.navigateTo = params.navigateTo;\n this.onNavigation = params.onNavigation;\n this.getHostContainer = params.getHostContainer;\n this.window = params.window;\n this.queryCache = params.queryCache;\n this.appendModalsToBody = params.appendModalsToBody;\n this.onSidePanelOpen = params.onSidePanelOpen;\n this.closeSidePanel = params.closeSidePanel;\n this.onBeforeUnload = params.onBeforeUnload;\n\n const {\n i18n,\n biLoggerFactory,\n fedopsLogger: internalFedops,\n errorMonitor: internalErrorMonitor,\n experiments: internalExperiments,\n } = this.createEssentials({\n i18n: {\n useSuspense: false,\n disableAutoInit: true,\n asyncMessagesLoader: async (locale) => {\n if (locale === 'en') {\n return this._messagesEnImport();\n }\n return this._fetchTranslations(this)(locale);\n },\n messages: params.initialProps?.messages,\n },\n errorMonitor: {\n dsn:\n process.env.NODE_ENV === 'production'\n ? 'https://9b9586a905eb429cbda9ea49d5d721f6@sentry-next.wixpress.com/8780'\n : '',\n /*\n TODO: not used in sentry-next API, need to be merged from reportError API with tags & extraData\n For Example: errorMonitor.captureException(error, { tags, contexts: { runtime: extraData }})\n beforeSend: (event, hint) => {\n this.internalMonitor.reportErrorThrownOncePerFlow();\n\n if (!event.tags) {\n event.tags = {};\n }\n\n if (!event.extra) {\n event.extra = {};\n }\n\n if (hint && hint.originalException) {\n event.extra.exception = hint.originalException;\n\n if (hint.originalException instanceof Error) {\n event.fingerprint = [\n `${hint.originalException.name}:${hint.originalException.message}`,\n ];\n }\n }\n\n event.tags.componentName = this.environment.componentName;\n event.tags.componentId = this.environment.componentId;\n event.tags.artifactId = this.environment.artifactId;\n event.tags.cairoVersion = this.environment.uiLibVersion;\n\n return event;\n },\n */\n },\n fedops: {\n appName: 'cairo',\n },\n experiments: {\n scopes: ['cairo'],\n },\n });\n\n if (\n typeof process !== 'undefined' &&\n process.env.STORYBOOK_VISUAL_E2E === 'true'\n ) {\n i18n.options.fallbackLng = [];\n }\n\n this.cairoSessionId = uuid();\n this.biLoggerFactory = biLoggerFactory;\n this.i18n = i18n;\n this.internalMonitor = new PatternsMonitor({\n errorMonitor: params.errorMonitor,\n internalErrorMonitor,\n internalFedops,\n environment: this.environment,\n csid: this.cairoSessionId,\n });\n this.internalExperiments = internalExperiments;\n\n this.translate = (...args) => {\n void this.initTask.status; // status is observable so reading it here starts mobx reactivity\n return this.i18n.t(...args);\n };\n\n this.Trans = params.Trans;\n\n this.onlineState = new OnlineState({\n onlineManager: this.onlineManager,\n focusManager: this.focusManager,\n translate: this.translate,\n showToast: this.showToast,\n });\n\n this.reportBi = this.createBILogger({});\n\n makeObservable(this, {\n init: action.bound,\n initialFetch: action.bound,\n dateFormatters: computed,\n });\n }\n\n _createComponentSettings(options: { namespace: string }) {\n return this.createComponentSettings(this)(options);\n }\n\n createBI = <P>(defaultParams: P) => {\n const { environment, cairoSessionId } = this;\n return this.biLoggerFactory?.()\n .updateDefaults({\n artifactId: environment.artifactId,\n componentName: environment.componentName,\n cairoVersion: environment.uiLibVersion,\n csid: cairoSessionId,\n ...defaultParams,\n })\n .logger();\n };\n\n createBILogger = <P>(defaultParams: P): ReportBI => {\n const bi = this.createBI(defaultParams);\n return (reportProps: ReportProps) => bi?.report(reportProps);\n };\n\n async initialFetch() {\n const { initTask, i18n, internalExperiments, experiments } = this;\n if (initTask.status.isLoading || initTask.status.isSuccess) {\n return initTask.status.promise;\n }\n\n await initTask.run(async () => {\n await Promise.all([\n i18n.init(),\n internalExperiments?.ready().catch((e) => {\n console.error(e);\n }),\n experiments.ready().catch((e) => {\n console.error(e);\n }),\n this._messagesEnImport(), // not all translation files contain all the keys, so en is required otherwise show error state\n ]);\n });\n\n return initTask.status.promise;\n }\n\n get dateFormatters() {\n return {\n medium: new Intl.DateTimeFormat(this.environment.language, {\n dateStyle: 'medium',\n }),\n mediumTime: new Intl.DateTimeFormat(this.environment.language, {\n dateStyle: 'medium',\n timeStyle: 'short',\n }),\n };\n }\n\n init() {\n const { onlineState } = this;\n\n this.initialFetch().catch((e) => {\n console.error(e);\n });\n\n const disposers = [\n onlineState.init(),\n new BeforeUnloadCompatState(this).init(),\n ];\n\n return () => {\n disposers.forEach((d) => d?.());\n };\n }\n}\n"],"mappings":"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"}
|
|
@@ -43,7 +43,7 @@ class CustomFieldsViewWidgetState {
|
|
|
43
43
|
var _this$dataExtension$i;
|
|
44
44
|
this.dataExtension.init();
|
|
45
45
|
await ((_this$dataExtension$i = this.dataExtension.initTask.status.promise) == null ? void 0 : _this$dataExtension$i.catch(err => {
|
|
46
|
-
const cairoError = new _services.
|
|
46
|
+
const cairoError = new _services.PatternsError({
|
|
47
47
|
errorCode: 'InitCustomFieldsDataExtensionFailed',
|
|
48
48
|
originalException: err
|
|
49
49
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_TaskState","require","_DataExtensionState","_services","_v","CustomFieldsViewWidgetState","constructor","container","fqdn","url","_defineProperty2","default","TaskState","performance","now","reportBi","createBILogger","componentType","dataExtension","DataExtensionState","loadStart","init","initTask","runOnce","_this$dataExtension$i","status","promise","catch","err","cairoError","
|
|
1
|
+
{"version":3,"names":["_TaskState","require","_DataExtensionState","_services","_v","CustomFieldsViewWidgetState","constructor","container","fqdn","url","_defineProperty2","default","TaskState","performance","now","reportBi","createBILogger","componentType","dataExtension","DataExtensionState","loadStart","init","initTask","runOnce","_this$dataExtension$i","status","promise","catch","err","cairoError","PatternsError","errorCode","originalException","internalMonitor","reportError","error","cairoErrorInLoadingAComponent","errorType","name","loadEnd","loadingTime","Math","round","startTime","retry","cairoTryAgainClicked","filteredListSize","availableUserCustomFields","length","actionName","loaction","isLoading","isIdle","isError","exports"],"sources":["../../../src/state/CustomFieldsViewWidgetState.ts"],"sourcesContent":["import { CairoContainer } from './CairoContainer';\nimport { Fqdn } from '../model';\nimport { TaskState } from './TaskState';\nimport { DataExtensionState } from './DataExtensionState';\nimport { PatternsError } from '../services';\nimport {\n cairoErrorInLoadingAComponent,\n cairoTryAgainClicked,\n loadEnd,\n loadStart,\n} from '@wix/bex-utils/@wix/bi-logger-cairo-os/v2';\n\nexport interface CustomFieldsViewWidgetStateParams {\n readonly container: CairoContainer;\n readonly fqdn: Fqdn;\n readonly url: string;\n}\nexport class CustomFieldsViewWidgetState {\n readonly container;\n readonly dataExtension;\n readonly initTask = new TaskState();\n readonly reportBi;\n readonly startTime = performance.now();\n readonly url;\n\n constructor({ container, fqdn, url }: CustomFieldsViewWidgetStateParams) {\n this.container = container;\n this.url = url;\n\n this.reportBi = container.createBILogger({\n componentType: 'CustomFieldsViewWidget',\n ...fqdn,\n });\n\n this.dataExtension = new DataExtensionState({\n container,\n fqdn,\n reportBi: this.reportBi,\n });\n\n this.reportBi(\n loadStart({\n url: this.url,\n }),\n );\n }\n\n init() {\n const { initTask } = this;\n\n initTask.runOnce(async () => {\n this.dataExtension.init();\n\n await this.dataExtension.initTask.status.promise?.catch((err) => {\n const cairoError = new PatternsError({\n errorCode: 'InitCustomFieldsDataExtensionFailed',\n originalException: err,\n });\n\n this.container.internalMonitor.reportError({\n error: cairoError,\n });\n\n this.reportBi(\n cairoErrorInLoadingAComponent({\n errorType: cairoError.name,\n }),\n );\n\n throw cairoError;\n });\n\n this.reportBi(\n loadEnd({\n url: this.url,\n loadingTime: Math.round(performance.now() - this.startTime),\n }),\n );\n });\n }\n\n retry() {\n this.reportBi(\n cairoTryAgainClicked({\n filteredListSize: this.dataExtension.availableUserCustomFields.length,\n actionName: 'Load custom fields',\n loaction: 'View only widget',\n }),\n );\n\n this.initTask.runOnce();\n }\n\n get isLoading() {\n const { status } = this.initTask;\n return status.isIdle || status.isLoading;\n }\n\n get isError() {\n return this.initTask.status.isError;\n }\n}\n"],"mappings":"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"}
|
|
@@ -636,7 +636,7 @@ class ExportState {
|
|
|
636
636
|
saveAs
|
|
637
637
|
});
|
|
638
638
|
});
|
|
639
|
-
throw new _services.
|
|
639
|
+
throw new _services.PatternsError({
|
|
640
640
|
errorCode: 'GetExportAsyncJob.offline',
|
|
641
641
|
originalException: error,
|
|
642
642
|
extraData: {
|
|
@@ -656,7 +656,7 @@ class ExportState {
|
|
|
656
656
|
query,
|
|
657
657
|
result: 'fail'
|
|
658
658
|
});
|
|
659
|
-
throw new _services.
|
|
659
|
+
throw new _services.PatternsError({
|
|
660
660
|
originalException: error,
|
|
661
661
|
errorCode: 'GetExportAsyncJob.failed'
|
|
662
662
|
});
|
|
@@ -677,7 +677,7 @@ class ExportState {
|
|
|
677
677
|
}
|
|
678
678
|
const job = getExportAsyncJobResponse == null ? void 0 : getExportAsyncJobResponse.data.job;
|
|
679
679
|
if ((job == null ? void 0 : job.data) == null) {
|
|
680
|
-
throw new _services.
|
|
680
|
+
throw new _services.PatternsError({
|
|
681
681
|
errorCode: 'GetExportAsyncJob.invalid'
|
|
682
682
|
});
|
|
683
683
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_http","require","_types","_mobx","_model","_services","_mapValues","_interopRequireDefault","_events","_ExportStateBIReporter","_getJobItemsAbsoluteCounter","defaultPlatformizedQuery","filter","sort","ExportState","constructor","props","_defineProperty2","default","queryStatus","idle","pollingDelay","stateJob","maxPolling","maxRetries","queryJobRetries","delay","max","iterationsCount","pollCount","retries","count","EventEmitter","selected","action","collection","bulkSelect","selectedCountOrTotal","filtered","result","total","supportTotal","all","allItemsQuery","query","asComputed","filtersKey","mapValues","customFilters","undefined","rawFilters","filters","queryKey","_queryKey","allItemsQueryResult","queryClient","fetchQuery","queryFn","_queryFn","e","preventDefault","returnValue","customTotal","differentQueryEndpointThanCollection","translate","createExportAsyncJobRequest","saveAs","window","httpClient","onlineState","exportModalState","collectionPageState","showToast","internalMonitor","reportBi","disabledRadios","transformPlatformizedQuery","bi","ExportStateBIReporter","makeObservable","exportStatus","observable","ref","iterationsCountPoll","isExporting","computed","totalForExport","selectedExportOption","counter","absoluteCounter","onExportToClick","bound","onExportCloseAttemptClick","onCancelExportCloseButtonClick","onCancelExportGoBackButtonClick","onExportSecondaryActionAttempt","onRetryExportToClick","onFailedClose","onFailedCancel","onCancelClick","onCloseClick","init","setTotalForExport","onExportTypeChange","hasFilters","totalForExportMap","hasSelectedRows","isAllSelected","currentStep","_onJobSuccess","_checkIfStaleJob","_throwJobError","_updateJobProgress","isModalOpen","isOpen","isLoading","isSuccess","_cancelJob","_reset","prev","next","_this$maybeToast","maybeToast","remove","clickOpenModal","onOnlineChanged","isOnline","events","emit","on","removeEventListener","beforeunload","removeAllListeners","off","hasActiveFilters","selectedIds","length","isSelectAll","totalForExportGettersMap","params","collectionTotalPromise","runInAction","close","onCancelExportVerifyButtonClick","onCancelExportButtonClick","onExportCancelAttemptClick","exportStartTime","performance","now","interactionStarted","reportExportEnd","onExportStart","_exportTo","onExportEnd","interactionEnded","job","_job$data","_this$showToast","t","data","signedUrl","once","Promise","resolve","setTimeout","success","_updateAbsoluteCounter","res","biState","beforeToast","call","message","biName","timeout","type","onToastDismissed","by","text","uiType","navigationTarget","url","openInNewTab","onClick","onToastActionClick","download","then","_job$data2","_job$data3","_job$data4","error","applicationError","code","Object","assign","Error","response","_job$data5","_job$data6","status","JobStatus","FINISHED","_job$data7","completionStep","config","_job$data8","newAbsoluteCounter","getJobItemsAbsoluteCounter","Math","floor","random","newCounter","round","_poll","jobId","current","_job$data$error","currentJob","promise","getExportAsyncJobResponse","request","getExportAsyncJob","catch","CairoError","errorCode","originalException","extraData","loading","FAILED","_job$data$error2","checkIfStaleJobResult","_job$data9","_job$data10","pagingMetadata","console","reportError","_this$saveAs","addEventListener","platformizedQuery","uncheckedInCurrentCollection","uncheckedValues","computedQuery","cairoQuery","exportPublicState","selectedItems","totalForExportPromise","pageTitle","_createExport","createExportAsyncJobResponse","createExportAsyncJob","fields","methodMetadata","err","_createExportAsyncJob","id","_createExportAsyncJob2","exports"],"sources":["../../../src/state/ExportState.ts"],"sourcesContent":["import {\n createExportAsyncJob,\n getExportAsyncJob,\n} from '@wix/bex-utils/@wix/ambassador-fedinfra-exportservice-v1-export-async-job/http';\nimport {\n CreateExportAsyncJobRequest,\n ExportAsyncJob,\n ExportQueryV2 as QueryV2,\n Status as JobStatus,\n} from '@wix/bex-utils/@wix/ambassador-fedinfra-exportservice-v1-export-async-job/types';\nimport {\n action,\n computed,\n makeObservable,\n observable,\n runInAction,\n} from 'mobx';\nimport {\n CairoEssentials,\n ComputedQueryFull,\n FiltersMap,\n queryStatus,\n ShowToast,\n TaskStatus,\n} from '../model';\nimport {\n CairoError,\n CairoMonitor,\n PartialWindow,\n ReportBI,\n Translate,\n} from '../services';\nimport { CollectionState } from './CollectionState';\nimport mapValues from 'lodash/mapValues';\nimport { EventEmitter } from 'events';\nimport { TypedEmitter } from '../util';\nimport { ExportStateBIReporter } from './ExportStateBIReporter';\nimport { ModalState } from './ModalState';\nimport { getJobItemsAbsoluteCounter } from './getJobItemsAbsoluteCounter';\nimport { ExportJobStateParams } from './ExportJobState';\nimport { ErrorDetails } from '../util/isHttpError';\nimport { OnlineState } from './OnlineState';\nimport { CollectionPageState } from './CollectionPageState';\n\nfunction defaultPlatformizedQuery(): QueryV2 {\n return {\n filter: {},\n sort: [],\n };\n}\n\ninterface ExportPublicState<T, F extends FiltersMap> {\n platformizedQuery: QueryV2;\n cairoQuery: ComputedQueryFull<F>;\n selectedItems?: string[];\n isSelectAll: boolean;\n uncheckedValues?: T[];\n}\n\nexport type CustomTotalFn<T, F extends FiltersMap> = (\n params: ExportPublicState<T, F> & {\n collectionTotalPromise: number | null | Promise<number | null | undefined>;\n },\n) => number | null | undefined | Promise<number | null | undefined>;\n\nexport type TransformQuery<T, F extends FiltersMap> = (\n params: ExportPublicState<T, F>,\n) => QueryV2 | Promise<QueryV2>;\n\nexport type SaveAsFn<T, F extends FiltersMap> = (\n params: ExportPublicState<T, F>,\n) => string;\n\nexport interface ExportStateProps<T, F extends FiltersMap> {\n transformPlatformizedQuery?: TransformQuery<T, F>;\n differentQueryEndpointThanCollection?: boolean;\n customTotal?: CustomTotalFn<T, F>;\n\n createExportAsyncJobRequest: Partial<CreateExportAsyncJobRequest>;\n saveAs?: SaveAsFn<T, F>;\n\n httpClient: CairoEssentials['httpClient'];\n showToast?: ShowToast;\n translate: Translate;\n collection: CollectionState<T, F>;\n reportBi: ReportBI;\n onlineState: OnlineState;\n internalMonitor: CairoMonitor;\n\n exportModalState: ModalState;\n collectionPageState: CollectionPageState;\n window: PartialWindow;\n}\n\nexport type SelectedExportOption = 'all' | 'selected' | 'filtered';\n\nexport class ExportState<T, F extends FiltersMap> {\n exportStatus: TaskStatus<ExportAsyncJob, unknown> = {\n ...queryStatus.idle,\n };\n\n readonly config = {\n pollingDelay: 2000,\n stateJob: {\n maxPolling: 14,\n maxRetries: 1,\n },\n queryJobRetries: {\n delay: 5000,\n max: 4,\n },\n };\n\n exportStartTime: number = 0;\n totalForExport: number | undefined | null = null;\n selectedExportOption: SelectedExportOption = 'all';\n disabledRadios: SelectedExportOption[];\n maybeToast?: { remove: () => void };\n iterationsCountPoll: {\n iterationsCount?: number;\n pollCount: number;\n retries: number;\n } = {\n iterationsCount: 0,\n pollCount: 0,\n retries: 0,\n };\n\n queryJobRetries: {\n count: number;\n } = {\n count: 0,\n };\n\n readonly differentQueryEndpointThanCollection;\n readonly customTotal;\n readonly translate;\n readonly createExportAsyncJobRequest;\n readonly saveAs;\n readonly window;\n readonly httpClient: CairoEssentials['httpClient'];\n readonly onlineState;\n readonly exportModalState;\n readonly collectionPageState;\n readonly transformPlatformizedQuery?: ExportStateProps<\n T,\n F\n >['transformPlatformizedQuery'];\n readonly showToast;\n readonly internalMonitor;\n readonly collection;\n readonly reportBi;\n readonly bi;\n\n readonly events = new EventEmitter() as TypedEmitter<{\n afterJobCreated: (params: { job: ExportAsyncJob }) => unknown;\n undoCancel: () => unknown;\n online: () => unknown;\n }>;\n\n counter = 0;\n absoluteCounter = 0;\n retries = 0;\n\n constructor(props: ExportStateProps<T, F>) {\n this.customTotal = props.customTotal;\n this.differentQueryEndpointThanCollection =\n props.differentQueryEndpointThanCollection;\n this.translate = props.translate;\n this.createExportAsyncJobRequest = props.createExportAsyncJobRequest;\n this.saveAs = props.saveAs;\n this.window = props.window;\n this.httpClient = props.httpClient;\n this.onlineState = props.onlineState;\n this.exportModalState = props.exportModalState;\n this.collectionPageState = props.collectionPageState;\n this.showToast = props.showToast;\n this.internalMonitor = props.internalMonitor;\n this.collection = props.collection;\n this.reportBi = props.reportBi;\n this.disabledRadios = [];\n this.transformPlatformizedQuery = props.transformPlatformizedQuery;\n\n this.bi = new ExportStateBIReporter(this);\n makeObservable(this, {\n exportStatus: observable.ref,\n iterationsCountPoll: observable.ref,\n isExporting: computed,\n totalForExport: observable.ref,\n selectedExportOption: observable.ref,\n disabledRadios: observable.ref,\n counter: observable.ref,\n absoluteCounter: observable.ref,\n onExportToClick: action.bound,\n onExportCloseAttemptClick: action.bound,\n onCancelExportCloseButtonClick: action.bound,\n onCancelExportGoBackButtonClick: action.bound,\n onExportSecondaryActionAttempt: action.bound,\n onRetryExportToClick: action.bound,\n onFailedClose: action.bound,\n onFailedCancel: action.bound,\n onCancelClick: action.bound,\n onCloseClick: action.bound,\n init: action.bound,\n setTotalForExport: action,\n onExportTypeChange: action,\n hasFilters: computed,\n totalForExportMap: computed,\n hasSelectedRows: computed,\n isAllSelected: computed,\n currentStep: observable.ref,\n _onJobSuccess: action,\n _checkIfStaleJob: action,\n _throwJobError: action,\n _updateJobProgress: action,\n });\n }\n\n get isModalOpen() {\n return this.exportModalState.isOpen;\n }\n\n currentStep: 'config' | 'progress' | 'error' | 'cancel' = 'config';\n\n get isExporting() {\n const { exportStatus } = this;\n return exportStatus.isLoading || exportStatus.isSuccess;\n }\n\n _cancelJob() {\n // const { events } = this;\n // events.once('afterJobCreated', ({ job }) => {\n // const { httpClient } = this;\n // httpClient.request(\n // cancelExportAsyncJob({\n // jobId: job.id as string,\n // }),\n // );\n // });\n }\n\n _reset() {\n this.exportStatus = {\n ...queryStatus.idle,\n };\n this.currentStep = 'config';\n this.counter = 0;\n this.absoluteCounter = 0;\n this.totalForExport = null;\n }\n\n onExportTypeChange(selectedExportOption: SelectedExportOption) {\n this.bi.onExportTypeChange({\n prev: this.selectedExportOption,\n next: selectedExportOption,\n });\n this.selectedExportOption = selectedExportOption;\n }\n\n init() {\n const { onlineState } = this;\n this.maybeToast?.remove();\n\n if (this.hasSelectedRows) {\n this.disabledRadios = this.hasFilters ? [] : ['filtered'];\n this.selectedExportOption = 'selected';\n } else if (this.hasFilters) {\n this.disabledRadios = ['selected'];\n this.selectedExportOption = 'filtered';\n } else {\n this.disabledRadios = ['selected', 'filtered'];\n this.selectedExportOption = 'all';\n }\n\n this.bi.clickOpenModal();\n\n const onOnlineChanged = action((isOnline: boolean) => {\n if (isOnline && this.currentStep === 'error') {\n this.currentStep = 'progress';\n this.events.emit('online');\n }\n });\n\n onlineState.events.on('change', onOnlineChanged);\n\n return () => {\n window.removeEventListener('beforeunload', this.beforeunload);\n this.events.removeAllListeners('undoCancel');\n this.events.removeAllListeners('online');\n onlineState.events.off('change', onOnlineChanged);\n };\n }\n\n get hasFilters() {\n return this.collection.query.hasActiveFilters;\n }\n\n get hasSelectedRows() {\n return (\n this.collection.bulkSelect.selectedIds.length !== undefined &&\n this.collection.bulkSelect.selectedIds.length > 0\n );\n }\n\n get isAllSelected() {\n return this.collection.bulkSelect.isSelectAll;\n }\n\n get totalForExportMap() {\n return {\n selected: this.totalForExportGettersMap.selected(),\n filtered: this.totalForExportGettersMap.filtered(),\n };\n }\n\n readonly totalForExportGettersMap = {\n selected: action(() => {\n const { collection } = this;\n\n const {\n bulkSelect: { selectedCountOrTotal },\n } = collection;\n\n return selectedCountOrTotal;\n }),\n filtered: action(() => {\n const { collection } = this;\n const {\n result: { total, supportTotal },\n } = collection;\n\n if (!supportTotal) {\n return null;\n }\n\n return total;\n }),\n all: action(async () => {\n const { collection } = this;\n\n const allItemsQuery = {\n ...collection.query.asComputed,\n filtersKey: mapValues(collection.query.customFilters, (filter) =>\n filter != null ? null : undefined,\n ),\n rawFilters: {},\n filters: {},\n };\n\n const queryKey = collection._queryKey(allItemsQuery);\n\n const allItemsQueryResult = await collection.queryClient.fetchQuery({\n queryFn: () => collection._queryFn(allItemsQuery),\n queryKey,\n });\n\n return allItemsQueryResult.total;\n }),\n };\n\n async setTotalForExport(params: ExportPublicState<T, F>) {\n const { selectedExportOption, collection } = this;\n const {\n result: { supportTotal },\n } = collection;\n\n if (this.differentQueryEndpointThanCollection === true) {\n return;\n }\n\n const collectionTotalPromise = (() => {\n if (selectedExportOption === 'selected') {\n return this.totalForExportGettersMap.selected();\n }\n\n if (selectedExportOption === 'filtered' && supportTotal) {\n return this.totalForExportGettersMap.filtered();\n }\n\n return this.totalForExportGettersMap.all();\n })();\n\n if (this.customTotal) {\n const totalForExport = await this.customTotal({\n ...params,\n collectionTotalPromise,\n });\n runInAction(() => {\n this.totalForExport = totalForExport;\n });\n return;\n }\n\n const totalForExport = await collectionTotalPromise;\n runInAction(() => {\n this.totalForExport = totalForExport;\n });\n }\n\n onCancelClick() {\n const { bi, exportModalState } = this;\n bi.onCancelClick();\n exportModalState.close();\n }\n\n onCancelExportVerifyButtonClick() {\n const { bi, exportModalState } = this;\n bi.onCancelExportButtonClick();\n exportModalState.close();\n }\n\n onCancelExportGoBackButtonClick() {\n this.currentStep = 'progress';\n const { bi, events } = this;\n bi.onCancelExportGoBackButtonClick();\n events.emit('undoCancel');\n }\n\n onCancelExportCloseButtonClick() {\n this.currentStep = 'progress';\n const { bi, events } = this;\n bi.onCancelExportCloseButtonClick();\n events.emit('undoCancel');\n }\n\n onExportCloseAttemptClick() {\n this.currentStep = 'cancel';\n const { bi } = this;\n bi.onExportCloseAttemptClick();\n }\n\n onExportSecondaryActionAttempt() {\n this.currentStep = 'cancel';\n const { bi } = this;\n bi.onExportCancelAttemptClick();\n }\n\n onCloseClick() {\n const { bi, exportModalState } = this;\n bi.onCloseClick();\n exportModalState.close();\n }\n\n async onExportToClick() {\n const { internalMonitor, bi } = this;\n this.retries += 1;\n this.iterationsCountPoll = {\n iterationsCount: 0,\n retries: 0,\n pollCount: 0,\n };\n this.queryJobRetries = {\n count: 0,\n };\n this.exportStartTime = performance.now();\n internalMonitor.interactionStarted('export-to');\n bi.onExportToClick();\n const reportExportEnd = bi.onExportStart();\n this._exportTo({\n onExportEnd: action((params) => {\n if (params.result !== 'fail') {\n internalMonitor.interactionEnded('export-to');\n }\n\n reportExportEnd(params);\n }),\n });\n }\n\n beforeunload = (e: BeforeUnloadEvent) => {\n e.preventDefault();\n e.returnValue = '';\n };\n\n async onRetryExportToClick() {\n const { bi } = this;\n bi.onRetryExportToClick();\n await this.onExportToClick();\n }\n\n async onFailedClose() {\n const { bi, exportModalState } = this;\n bi.onFailedClose();\n exportModalState.close();\n }\n\n async onFailedCancel() {\n const { bi, exportModalState } = this;\n bi.onFailedCancel();\n exportModalState.close();\n }\n\n async _onJobSuccess(job: ExportAsyncJob, params: ExportJobStateParams) {\n const { events, exportModalState, translate: t } = this;\n const { onExportEnd, query, saveAs } = params;\n\n if (job.data?.signedUrl == null) {\n return;\n }\n\n if (this.currentStep === 'cancel') {\n events.once('undoCancel', async () => {\n await new Promise((resolve) => setTimeout(resolve, 1000));\n return this._onJobSuccess(job, { onExportEnd, query, saveAs });\n });\n return;\n }\n\n runInAction(() => {\n this.exportStatus = {\n ...queryStatus.success,\n data: job,\n };\n this.counter = 100;\n this._updateAbsoluteCounter(job, params);\n });\n\n window.removeEventListener('beforeunload', this.beforeunload);\n await new Promise((res) => setTimeout(res, 1000)); // wait bit before starting the download for the progress indication animation completes\n\n const signedUrl = job.data.signedUrl;\n\n onExportEnd({ job, query, result: 'success', saveAs });\n const biState = this.bi.beforeToast();\n\n const maybeToast = this.showToast?.({\n message: t('cairo.export.successMessage'),\n biName: 'cairo-export-success-toast',\n timeout: 'NONE',\n type: 'SUCCESS',\n onCloseClick: () => {\n this.bi.onToastDismissed({\n ...biState,\n by: 'manual',\n });\n this.maybeToast = undefined;\n },\n action: {\n text: t('cairo.export.downloadManually'),\n uiType: 'LINK',\n navigationTarget: {\n url: signedUrl,\n openInNewTab: true,\n },\n onClick: () => {\n this.bi.onToastActionClick(biState);\n this.maybeToast = undefined;\n },\n },\n });\n\n this.maybeToast = maybeToast;\n\n this.window.download(signedUrl, saveAs);\n\n if (maybeToast) {\n new Promise((resolve) => setTimeout(resolve, 6000)).then(() => {\n if (maybeToast === this.maybeToast) {\n maybeToast.remove();\n this.bi.onToastDismissed({\n ...biState,\n by: 'automatic',\n });\n }\n });\n }\n\n exportModalState.close();\n }\n\n _throwJobError(\n job: ExportAsyncJob,\n { onExportEnd, query }: ExportJobStateParams,\n ) {\n if (job.data?.error?.applicationError?.code === 'job_cancelled_by_client') {\n onExportEnd({ job, query, result: 'stopped by user' });\n\n return;\n }\n\n onExportEnd({ job, query, result: 'fail' });\n\n throw Object.assign(\n new Error(`ExportAsyncJob.${job.data?.error?.applicationError?.code}`),\n {\n response: {\n data: job.data?.error,\n },\n job,\n query,\n },\n );\n }\n\n _checkIfStaleJob(\n job: ExportAsyncJob,\n { onExportEnd, query }: ExportJobStateParams,\n ) {\n const { internalMonitor } = this;\n\n if (job.status === JobStatus.FINISHED && !job.data?.signedUrl) {\n internalMonitor.interactionStarted(\n 'export-to-finished-without-download-url',\n );\n internalMonitor.interactionEnded(\n 'export-to-finished-without-download-url',\n );\n }\n\n if (\n job.data?.iterationsCount === this.iterationsCountPoll.iterationsCount\n ) {\n this.iterationsCountPoll = {\n ...this.iterationsCountPoll,\n pollCount: this.iterationsCountPoll.pollCount + 1,\n };\n\n if (\n job.data?.completionStep !== 'upload' &&\n this.iterationsCountPoll.pollCount > this.config.stateJob.maxPolling\n ) {\n if (\n this.iterationsCountPoll.retries < this.config.stateJob.maxRetries\n ) {\n internalMonitor.interactionStarted('export-to-max-polling-stale-job');\n internalMonitor.interactionEnded('export-to-max-polling-stale-job');\n runInAction(() => {\n this.iterationsCountPoll = {\n iterationsCount: 0,\n pollCount: 0,\n retries: this.iterationsCountPoll.retries + 1,\n };\n });\n window.removeEventListener('beforeunload', this.beforeunload);\n this._exportTo({ onExportEnd });\n return 'restarted';\n }\n\n onExportEnd({ job, query, result: 'fail' });\n\n throw Object.assign(new Error('ExportAsyncJob.max_polling_stale_job'), {\n response: {\n data: {\n applicationError: {\n code: 'max_polling_stale_job',\n },\n } as ErrorDetails,\n },\n });\n }\n } else {\n this.iterationsCountPoll = {\n ...this.iterationsCountPoll,\n iterationsCount: job.data?.iterationsCount,\n pollCount: 1,\n };\n }\n\n return;\n }\n\n _updateAbsoluteCounter(job: ExportAsyncJob, { query }: ExportJobStateParams) {\n if (job?.data == null) {\n return;\n }\n\n const { totalForExport } = this;\n\n const newAbsoluteCounter = getJobItemsAbsoluteCounter(job, {\n query,\n totalForExport,\n });\n\n this.absoluteCounter =\n totalForExport != null &&\n newAbsoluteCounter >= totalForExport &&\n !this.exportStatus.isSuccess\n ? this.absoluteCounter +\n Math.floor(\n Math.random() * (newAbsoluteCounter - this.absoluteCounter),\n )\n : newAbsoluteCounter;\n }\n\n _updateJobProgress(job: ExportAsyncJob, params: ExportJobStateParams) {\n this._updateAbsoluteCounter(job, params);\n\n const { totalForExport } = this;\n if (totalForExport) {\n if (this.absoluteCounter) {\n const newCounter = Math.round(\n (this.absoluteCounter / totalForExport) * 100,\n );\n\n this.counter =\n newCounter === 100\n ? this.counter + Math.round(Math.random() * (99 - this.counter))\n : newCounter;\n }\n } else if (this.counter < 90 && this.absoluteCounter > 0) {\n this.counter += 10;\n }\n }\n\n private async _poll({\n jobId,\n saveAs,\n query,\n onExportEnd,\n }: {\n query: QueryV2;\n saveAs?: string;\n onExportEnd: (params: {\n job: ExportAsyncJob | null;\n query: QueryV2;\n result: 'success' | 'fail' | 'stopped by user';\n }) => void;\n jobId: string;\n }) {\n const { httpClient, events, onlineState } = this;\n\n let current: ExportAsyncJob | null = null;\n\n try {\n // eslint-disable-next-line no-constant-condition\n while (true) {\n if (!this.isModalOpen) {\n const currentJob = await this.exportStatus.promise;\n if (currentJob) {\n onExportEnd({\n job: currentJob,\n query,\n result: 'stopped by user',\n });\n }\n\n break;\n }\n\n const getExportAsyncJobResponse = await httpClient\n .request(getExportAsyncJob({ jobId }))\n .catch((error) => ({ error }));\n\n if (\n getExportAsyncJobResponse &&\n !('data' in getExportAsyncJobResponse)\n ) {\n const error = getExportAsyncJobResponse.error;\n if (!onlineState.isOnline) {\n events.once('online', () => {\n this._poll({\n jobId,\n onExportEnd,\n query,\n saveAs,\n });\n });\n\n throw new CairoError({\n errorCode: 'GetExportAsyncJob.offline',\n originalException: error,\n extraData: {\n response: {\n data: {\n applicationError: {\n code: 'offline',\n },\n } as ErrorDetails,\n },\n },\n });\n }\n\n if (this.queryJobRetries.count > this.config.queryJobRetries.max) {\n onExportEnd({ job: current, query, result: 'fail' });\n throw new CairoError({\n originalException: error,\n errorCode: 'GetExportAsyncJob.failed',\n });\n }\n\n this.queryJobRetries = {\n ...this.queryJobRetries,\n count: this.queryJobRetries.count + 1,\n };\n\n setTimeout(() => {\n this._poll({\n jobId,\n onExportEnd,\n query,\n saveAs,\n });\n }, this.config.queryJobRetries.delay);\n\n break;\n }\n\n const job = getExportAsyncJobResponse?.data.job;\n\n if (job?.data == null) {\n throw new CairoError({ errorCode: 'GetExportAsyncJob.invalid' });\n }\n\n current = job;\n\n this.queryJobRetries = {\n count: 0,\n };\n\n runInAction(() => {\n this.exportStatus = {\n ...queryStatus.loading,\n promise: Promise.resolve(job),\n };\n });\n\n const isModalOpen = runInAction(() => this.isModalOpen);\n if (!isModalOpen) {\n break;\n }\n\n if (job.data.signedUrl) {\n await this._onJobSuccess(job, {\n onExportEnd,\n saveAs,\n query,\n });\n break;\n }\n\n if (\n job.status === JobStatus.FAILED ||\n job.data.error?.applicationError != null\n ) {\n if (\n job.data.error?.applicationError?.code ===\n 'media_generate_signed_url'\n ) {\n // await this._retryGenerateUrl(job);\n // continue;\n }\n\n this._throwJobError(job, {\n onExportEnd,\n query,\n saveAs,\n });\n break;\n }\n\n const checkIfStaleJobResult = this._checkIfStaleJob(job, {\n onExportEnd,\n saveAs,\n query,\n });\n\n if (checkIfStaleJobResult === 'restarted') {\n return;\n }\n\n await runInAction(async () => {\n if (\n !this.totalForExport &&\n (job.data?.iterationsCount == null || job.data.iterationsCount <= 1)\n ) {\n this.totalForExport = job.data?.pagingMetadata?.total;\n }\n });\n\n this._updateJobProgress(job, { onExportEnd, query, saveAs });\n\n await new Promise((res) => setTimeout(res, this.config.pollingDelay));\n }\n } catch (error) {\n console.error(error);\n\n this.internalMonitor.reportError({ error });\n\n runInAction(() => {\n this.currentStep = 'error';\n this.exportStatus = {\n ...queryStatus.error,\n error,\n };\n });\n }\n }\n\n private async _exportTo({\n onExportEnd,\n }: {\n onExportEnd: (params: {\n job: ExportAsyncJob | null;\n query: QueryV2;\n result: 'success' | 'fail' | 'stopped by user';\n }) => void;\n }) {\n const {\n createExportAsyncJobRequest,\n httpClient,\n transformPlatformizedQuery,\n selectedExportOption,\n events,\n onlineState,\n } = this;\n\n this._reset();\n window.addEventListener('beforeunload', this.beforeunload);\n\n const platformizedQuery = defaultPlatformizedQuery();\n\n const {\n bulkSelect: {\n selectedIds,\n isSelectAll,\n uncheckedInCurrentCollection: uncheckedValues,\n },\n query: { asComputed: computedQuery },\n } = this.collection;\n\n const cairoQuery =\n selectedExportOption !== 'all'\n ? computedQuery\n : {\n ...computedQuery,\n filtersKey: {},\n rawFilters: {},\n filters: {},\n };\n\n const exportPublicState = {\n platformizedQuery,\n cairoQuery,\n selectedItems:\n selectedExportOption === 'selected' ? selectedIds : undefined,\n isSelectAll,\n uncheckedValues,\n };\n\n const query =\n (await transformPlatformizedQuery?.(exportPublicState)) ??\n platformizedQuery;\n\n const totalForExportPromise = this.setTotalForExport({\n ...exportPublicState,\n platformizedQuery: query,\n });\n\n const saveAs =\n this.saveAs?.({\n platformizedQuery,\n cairoQuery,\n selectedItems:\n selectedExportOption === 'selected' ? selectedIds : undefined,\n isSelectAll,\n }) ?? this.collectionPageState.pageTitle;\n\n runInAction(() => {\n this.currentStep = 'progress';\n });\n\n const _createExport = async () => {\n try {\n const { data: createExportAsyncJobResponse } = await httpClient\n .request(\n createExportAsyncJob({\n fields: [],\n methodMetadata: {},\n ...createExportAsyncJobRequest,\n saveAs,\n query,\n }),\n )\n .catch((err) => {\n if (!onlineState.isOnline) {\n events.once('online', () => {\n this._exportTo({\n onExportEnd,\n });\n });\n throw Object.assign(new Error('CreateExportAsyncJob.offline'), {\n response: {\n data: {\n applicationError: {\n code: 'offline',\n },\n } as ErrorDetails,\n },\n });\n }\n onExportEnd({ job: null, query, result: 'fail' });\n\n throw err;\n });\n\n return createExportAsyncJobResponse;\n } catch (error) {\n runInAction(() => {\n this.currentStep = 'error';\n this.exportStatus = {\n ...queryStatus.error,\n error,\n };\n });\n\n throw error;\n }\n };\n\n try {\n const createExportAsyncJobResponse = await _createExport();\n\n if (!createExportAsyncJobResponse.job?.id) {\n throw new Error(\n `Invalid response from createExportAsyncJob \"jobId=${createExportAsyncJobResponse.job?.id}\"`,\n );\n }\n\n await totalForExportPromise;\n\n runInAction(() => {\n this.exportStatus = {\n ...queryStatus.loading,\n promise: Promise.resolve(\n createExportAsyncJobResponse.job as ExportAsyncJob,\n ),\n };\n });\n\n this.events.emit('afterJobCreated', {\n job: createExportAsyncJobResponse.job as ExportAsyncJob,\n });\n\n runInAction(() => {\n this.counter = 1;\n });\n\n await this._poll({\n onExportEnd,\n saveAs,\n query,\n jobId: createExportAsyncJobResponse.job.id,\n });\n } catch (error) {\n console.error(error);\n this.internalMonitor.reportError({ error });\n }\n\n window.removeEventListener('beforeunload', this.beforeunload);\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["_http","require","_types","_mobx","_model","_services","_mapValues","_interopRequireDefault","_events","_ExportStateBIReporter","_getJobItemsAbsoluteCounter","defaultPlatformizedQuery","filter","sort","ExportState","constructor","props","_defineProperty2","default","queryStatus","idle","pollingDelay","stateJob","maxPolling","maxRetries","queryJobRetries","delay","max","iterationsCount","pollCount","retries","count","EventEmitter","selected","action","collection","bulkSelect","selectedCountOrTotal","filtered","result","total","supportTotal","all","allItemsQuery","query","asComputed","filtersKey","mapValues","customFilters","undefined","rawFilters","filters","queryKey","_queryKey","allItemsQueryResult","queryClient","fetchQuery","queryFn","_queryFn","e","preventDefault","returnValue","customTotal","differentQueryEndpointThanCollection","translate","createExportAsyncJobRequest","saveAs","window","httpClient","onlineState","exportModalState","collectionPageState","showToast","internalMonitor","reportBi","disabledRadios","transformPlatformizedQuery","bi","ExportStateBIReporter","makeObservable","exportStatus","observable","ref","iterationsCountPoll","isExporting","computed","totalForExport","selectedExportOption","counter","absoluteCounter","onExportToClick","bound","onExportCloseAttemptClick","onCancelExportCloseButtonClick","onCancelExportGoBackButtonClick","onExportSecondaryActionAttempt","onRetryExportToClick","onFailedClose","onFailedCancel","onCancelClick","onCloseClick","init","setTotalForExport","onExportTypeChange","hasFilters","totalForExportMap","hasSelectedRows","isAllSelected","currentStep","_onJobSuccess","_checkIfStaleJob","_throwJobError","_updateJobProgress","isModalOpen","isOpen","isLoading","isSuccess","_cancelJob","_reset","prev","next","_this$maybeToast","maybeToast","remove","clickOpenModal","onOnlineChanged","isOnline","events","emit","on","removeEventListener","beforeunload","removeAllListeners","off","hasActiveFilters","selectedIds","length","isSelectAll","totalForExportGettersMap","params","collectionTotalPromise","runInAction","close","onCancelExportVerifyButtonClick","onCancelExportButtonClick","onExportCancelAttemptClick","exportStartTime","performance","now","interactionStarted","reportExportEnd","onExportStart","_exportTo","onExportEnd","interactionEnded","job","_job$data","_this$showToast","t","data","signedUrl","once","Promise","resolve","setTimeout","success","_updateAbsoluteCounter","res","biState","beforeToast","call","message","biName","timeout","type","onToastDismissed","by","text","uiType","navigationTarget","url","openInNewTab","onClick","onToastActionClick","download","then","_job$data2","_job$data3","_job$data4","error","applicationError","code","Object","assign","Error","response","_job$data5","_job$data6","status","JobStatus","FINISHED","_job$data7","completionStep","config","_job$data8","newAbsoluteCounter","getJobItemsAbsoluteCounter","Math","floor","random","newCounter","round","_poll","jobId","current","_job$data$error","currentJob","promise","getExportAsyncJobResponse","request","getExportAsyncJob","catch","PatternsError","errorCode","originalException","extraData","loading","FAILED","_job$data$error2","checkIfStaleJobResult","_job$data9","_job$data10","pagingMetadata","console","reportError","_this$saveAs","addEventListener","platformizedQuery","uncheckedInCurrentCollection","uncheckedValues","computedQuery","cairoQuery","exportPublicState","selectedItems","totalForExportPromise","pageTitle","_createExport","createExportAsyncJobResponse","createExportAsyncJob","fields","methodMetadata","err","_createExportAsyncJob","id","_createExportAsyncJob2","exports"],"sources":["../../../src/state/ExportState.ts"],"sourcesContent":["import {\n createExportAsyncJob,\n getExportAsyncJob,\n} from '@wix/bex-utils/@wix/ambassador-fedinfra-exportservice-v1-export-async-job/http';\nimport {\n CreateExportAsyncJobRequest,\n ExportAsyncJob,\n ExportQueryV2 as QueryV2,\n Status as JobStatus,\n} from '@wix/bex-utils/@wix/ambassador-fedinfra-exportservice-v1-export-async-job/types';\nimport {\n action,\n computed,\n makeObservable,\n observable,\n runInAction,\n} from 'mobx';\nimport {\n CairoEssentials,\n ComputedQueryFull,\n FiltersMap,\n queryStatus,\n ShowToast,\n TaskStatus,\n} from '../model';\nimport {\n PatternsError,\n PatternsMonitor,\n PartialWindow,\n ReportBI,\n Translate,\n} from '../services';\nimport { CollectionState } from './CollectionState';\nimport mapValues from 'lodash/mapValues';\nimport { EventEmitter } from 'events';\nimport { TypedEmitter } from '../util';\nimport { ExportStateBIReporter } from './ExportStateBIReporter';\nimport { ModalState } from './ModalState';\nimport { getJobItemsAbsoluteCounter } from './getJobItemsAbsoluteCounter';\nimport { ExportJobStateParams } from './ExportJobState';\nimport { ErrorDetails } from '../util/isHttpError';\nimport { OnlineState } from './OnlineState';\nimport { CollectionPageState } from './CollectionPageState';\n\nfunction defaultPlatformizedQuery(): QueryV2 {\n return {\n filter: {},\n sort: [],\n };\n}\n\ninterface ExportPublicState<T, F extends FiltersMap> {\n platformizedQuery: QueryV2;\n cairoQuery: ComputedQueryFull<F>;\n selectedItems?: string[];\n isSelectAll: boolean;\n uncheckedValues?: T[];\n}\n\nexport type CustomTotalFn<T, F extends FiltersMap> = (\n params: ExportPublicState<T, F> & {\n collectionTotalPromise: number | null | Promise<number | null | undefined>;\n },\n) => number | null | undefined | Promise<number | null | undefined>;\n\nexport type TransformQuery<T, F extends FiltersMap> = (\n params: ExportPublicState<T, F>,\n) => QueryV2 | Promise<QueryV2>;\n\nexport type SaveAsFn<T, F extends FiltersMap> = (\n params: ExportPublicState<T, F>,\n) => string;\n\nexport interface ExportStateProps<T, F extends FiltersMap> {\n transformPlatformizedQuery?: TransformQuery<T, F>;\n differentQueryEndpointThanCollection?: boolean;\n customTotal?: CustomTotalFn<T, F>;\n\n createExportAsyncJobRequest: Partial<CreateExportAsyncJobRequest>;\n saveAs?: SaveAsFn<T, F>;\n\n httpClient: CairoEssentials['httpClient'];\n showToast?: ShowToast;\n translate: Translate;\n collection: CollectionState<T, F>;\n reportBi: ReportBI;\n onlineState: OnlineState;\n internalMonitor: PatternsMonitor;\n\n exportModalState: ModalState;\n collectionPageState: CollectionPageState;\n window: PartialWindow;\n}\n\nexport type SelectedExportOption = 'all' | 'selected' | 'filtered';\n\nexport class ExportState<T, F extends FiltersMap> {\n exportStatus: TaskStatus<ExportAsyncJob, unknown> = {\n ...queryStatus.idle,\n };\n\n readonly config = {\n pollingDelay: 2000,\n stateJob: {\n maxPolling: 14,\n maxRetries: 1,\n },\n queryJobRetries: {\n delay: 5000,\n max: 4,\n },\n };\n\n exportStartTime: number = 0;\n totalForExport: number | undefined | null = null;\n selectedExportOption: SelectedExportOption = 'all';\n disabledRadios: SelectedExportOption[];\n maybeToast?: { remove: () => void };\n iterationsCountPoll: {\n iterationsCount?: number;\n pollCount: number;\n retries: number;\n } = {\n iterationsCount: 0,\n pollCount: 0,\n retries: 0,\n };\n\n queryJobRetries: {\n count: number;\n } = {\n count: 0,\n };\n\n readonly differentQueryEndpointThanCollection;\n readonly customTotal;\n readonly translate;\n readonly createExportAsyncJobRequest;\n readonly saveAs;\n readonly window;\n readonly httpClient: CairoEssentials['httpClient'];\n readonly onlineState;\n readonly exportModalState;\n readonly collectionPageState;\n readonly transformPlatformizedQuery?: ExportStateProps<\n T,\n F\n >['transformPlatformizedQuery'];\n readonly showToast;\n readonly internalMonitor;\n readonly collection;\n readonly reportBi;\n readonly bi;\n\n readonly events = new EventEmitter() as TypedEmitter<{\n afterJobCreated: (params: { job: ExportAsyncJob }) => unknown;\n undoCancel: () => unknown;\n online: () => unknown;\n }>;\n\n counter = 0;\n absoluteCounter = 0;\n retries = 0;\n\n constructor(props: ExportStateProps<T, F>) {\n this.customTotal = props.customTotal;\n this.differentQueryEndpointThanCollection =\n props.differentQueryEndpointThanCollection;\n this.translate = props.translate;\n this.createExportAsyncJobRequest = props.createExportAsyncJobRequest;\n this.saveAs = props.saveAs;\n this.window = props.window;\n this.httpClient = props.httpClient;\n this.onlineState = props.onlineState;\n this.exportModalState = props.exportModalState;\n this.collectionPageState = props.collectionPageState;\n this.showToast = props.showToast;\n this.internalMonitor = props.internalMonitor;\n this.collection = props.collection;\n this.reportBi = props.reportBi;\n this.disabledRadios = [];\n this.transformPlatformizedQuery = props.transformPlatformizedQuery;\n\n this.bi = new ExportStateBIReporter(this);\n makeObservable(this, {\n exportStatus: observable.ref,\n iterationsCountPoll: observable.ref,\n isExporting: computed,\n totalForExport: observable.ref,\n selectedExportOption: observable.ref,\n disabledRadios: observable.ref,\n counter: observable.ref,\n absoluteCounter: observable.ref,\n onExportToClick: action.bound,\n onExportCloseAttemptClick: action.bound,\n onCancelExportCloseButtonClick: action.bound,\n onCancelExportGoBackButtonClick: action.bound,\n onExportSecondaryActionAttempt: action.bound,\n onRetryExportToClick: action.bound,\n onFailedClose: action.bound,\n onFailedCancel: action.bound,\n onCancelClick: action.bound,\n onCloseClick: action.bound,\n init: action.bound,\n setTotalForExport: action,\n onExportTypeChange: action,\n hasFilters: computed,\n totalForExportMap: computed,\n hasSelectedRows: computed,\n isAllSelected: computed,\n currentStep: observable.ref,\n _onJobSuccess: action,\n _checkIfStaleJob: action,\n _throwJobError: action,\n _updateJobProgress: action,\n });\n }\n\n get isModalOpen() {\n return this.exportModalState.isOpen;\n }\n\n currentStep: 'config' | 'progress' | 'error' | 'cancel' = 'config';\n\n get isExporting() {\n const { exportStatus } = this;\n return exportStatus.isLoading || exportStatus.isSuccess;\n }\n\n _cancelJob() {\n // const { events } = this;\n // events.once('afterJobCreated', ({ job }) => {\n // const { httpClient } = this;\n // httpClient.request(\n // cancelExportAsyncJob({\n // jobId: job.id as string,\n // }),\n // );\n // });\n }\n\n _reset() {\n this.exportStatus = {\n ...queryStatus.idle,\n };\n this.currentStep = 'config';\n this.counter = 0;\n this.absoluteCounter = 0;\n this.totalForExport = null;\n }\n\n onExportTypeChange(selectedExportOption: SelectedExportOption) {\n this.bi.onExportTypeChange({\n prev: this.selectedExportOption,\n next: selectedExportOption,\n });\n this.selectedExportOption = selectedExportOption;\n }\n\n init() {\n const { onlineState } = this;\n this.maybeToast?.remove();\n\n if (this.hasSelectedRows) {\n this.disabledRadios = this.hasFilters ? [] : ['filtered'];\n this.selectedExportOption = 'selected';\n } else if (this.hasFilters) {\n this.disabledRadios = ['selected'];\n this.selectedExportOption = 'filtered';\n } else {\n this.disabledRadios = ['selected', 'filtered'];\n this.selectedExportOption = 'all';\n }\n\n this.bi.clickOpenModal();\n\n const onOnlineChanged = action((isOnline: boolean) => {\n if (isOnline && this.currentStep === 'error') {\n this.currentStep = 'progress';\n this.events.emit('online');\n }\n });\n\n onlineState.events.on('change', onOnlineChanged);\n\n return () => {\n window.removeEventListener('beforeunload', this.beforeunload);\n this.events.removeAllListeners('undoCancel');\n this.events.removeAllListeners('online');\n onlineState.events.off('change', onOnlineChanged);\n };\n }\n\n get hasFilters() {\n return this.collection.query.hasActiveFilters;\n }\n\n get hasSelectedRows() {\n return (\n this.collection.bulkSelect.selectedIds.length !== undefined &&\n this.collection.bulkSelect.selectedIds.length > 0\n );\n }\n\n get isAllSelected() {\n return this.collection.bulkSelect.isSelectAll;\n }\n\n get totalForExportMap() {\n return {\n selected: this.totalForExportGettersMap.selected(),\n filtered: this.totalForExportGettersMap.filtered(),\n };\n }\n\n readonly totalForExportGettersMap = {\n selected: action(() => {\n const { collection } = this;\n\n const {\n bulkSelect: { selectedCountOrTotal },\n } = collection;\n\n return selectedCountOrTotal;\n }),\n filtered: action(() => {\n const { collection } = this;\n const {\n result: { total, supportTotal },\n } = collection;\n\n if (!supportTotal) {\n return null;\n }\n\n return total;\n }),\n all: action(async () => {\n const { collection } = this;\n\n const allItemsQuery = {\n ...collection.query.asComputed,\n filtersKey: mapValues(collection.query.customFilters, (filter) =>\n filter != null ? null : undefined,\n ),\n rawFilters: {},\n filters: {},\n };\n\n const queryKey = collection._queryKey(allItemsQuery);\n\n const allItemsQueryResult = await collection.queryClient.fetchQuery({\n queryFn: () => collection._queryFn(allItemsQuery),\n queryKey,\n });\n\n return allItemsQueryResult.total;\n }),\n };\n\n async setTotalForExport(params: ExportPublicState<T, F>) {\n const { selectedExportOption, collection } = this;\n const {\n result: { supportTotal },\n } = collection;\n\n if (this.differentQueryEndpointThanCollection === true) {\n return;\n }\n\n const collectionTotalPromise = (() => {\n if (selectedExportOption === 'selected') {\n return this.totalForExportGettersMap.selected();\n }\n\n if (selectedExportOption === 'filtered' && supportTotal) {\n return this.totalForExportGettersMap.filtered();\n }\n\n return this.totalForExportGettersMap.all();\n })();\n\n if (this.customTotal) {\n const totalForExport = await this.customTotal({\n ...params,\n collectionTotalPromise,\n });\n runInAction(() => {\n this.totalForExport = totalForExport;\n });\n return;\n }\n\n const totalForExport = await collectionTotalPromise;\n runInAction(() => {\n this.totalForExport = totalForExport;\n });\n }\n\n onCancelClick() {\n const { bi, exportModalState } = this;\n bi.onCancelClick();\n exportModalState.close();\n }\n\n onCancelExportVerifyButtonClick() {\n const { bi, exportModalState } = this;\n bi.onCancelExportButtonClick();\n exportModalState.close();\n }\n\n onCancelExportGoBackButtonClick() {\n this.currentStep = 'progress';\n const { bi, events } = this;\n bi.onCancelExportGoBackButtonClick();\n events.emit('undoCancel');\n }\n\n onCancelExportCloseButtonClick() {\n this.currentStep = 'progress';\n const { bi, events } = this;\n bi.onCancelExportCloseButtonClick();\n events.emit('undoCancel');\n }\n\n onExportCloseAttemptClick() {\n this.currentStep = 'cancel';\n const { bi } = this;\n bi.onExportCloseAttemptClick();\n }\n\n onExportSecondaryActionAttempt() {\n this.currentStep = 'cancel';\n const { bi } = this;\n bi.onExportCancelAttemptClick();\n }\n\n onCloseClick() {\n const { bi, exportModalState } = this;\n bi.onCloseClick();\n exportModalState.close();\n }\n\n async onExportToClick() {\n const { internalMonitor, bi } = this;\n this.retries += 1;\n this.iterationsCountPoll = {\n iterationsCount: 0,\n retries: 0,\n pollCount: 0,\n };\n this.queryJobRetries = {\n count: 0,\n };\n this.exportStartTime = performance.now();\n internalMonitor.interactionStarted('export-to');\n bi.onExportToClick();\n const reportExportEnd = bi.onExportStart();\n this._exportTo({\n onExportEnd: action((params) => {\n if (params.result !== 'fail') {\n internalMonitor.interactionEnded('export-to');\n }\n\n reportExportEnd(params);\n }),\n });\n }\n\n beforeunload = (e: BeforeUnloadEvent) => {\n e.preventDefault();\n e.returnValue = '';\n };\n\n async onRetryExportToClick() {\n const { bi } = this;\n bi.onRetryExportToClick();\n await this.onExportToClick();\n }\n\n async onFailedClose() {\n const { bi, exportModalState } = this;\n bi.onFailedClose();\n exportModalState.close();\n }\n\n async onFailedCancel() {\n const { bi, exportModalState } = this;\n bi.onFailedCancel();\n exportModalState.close();\n }\n\n async _onJobSuccess(job: ExportAsyncJob, params: ExportJobStateParams) {\n const { events, exportModalState, translate: t } = this;\n const { onExportEnd, query, saveAs } = params;\n\n if (job.data?.signedUrl == null) {\n return;\n }\n\n if (this.currentStep === 'cancel') {\n events.once('undoCancel', async () => {\n await new Promise((resolve) => setTimeout(resolve, 1000));\n return this._onJobSuccess(job, { onExportEnd, query, saveAs });\n });\n return;\n }\n\n runInAction(() => {\n this.exportStatus = {\n ...queryStatus.success,\n data: job,\n };\n this.counter = 100;\n this._updateAbsoluteCounter(job, params);\n });\n\n window.removeEventListener('beforeunload', this.beforeunload);\n await new Promise((res) => setTimeout(res, 1000)); // wait bit before starting the download for the progress indication animation completes\n\n const signedUrl = job.data.signedUrl;\n\n onExportEnd({ job, query, result: 'success', saveAs });\n const biState = this.bi.beforeToast();\n\n const maybeToast = this.showToast?.({\n message: t('cairo.export.successMessage'),\n biName: 'cairo-export-success-toast',\n timeout: 'NONE',\n type: 'SUCCESS',\n onCloseClick: () => {\n this.bi.onToastDismissed({\n ...biState,\n by: 'manual',\n });\n this.maybeToast = undefined;\n },\n action: {\n text: t('cairo.export.downloadManually'),\n uiType: 'LINK',\n navigationTarget: {\n url: signedUrl,\n openInNewTab: true,\n },\n onClick: () => {\n this.bi.onToastActionClick(biState);\n this.maybeToast = undefined;\n },\n },\n });\n\n this.maybeToast = maybeToast;\n\n this.window.download(signedUrl, saveAs);\n\n if (maybeToast) {\n new Promise((resolve) => setTimeout(resolve, 6000)).then(() => {\n if (maybeToast === this.maybeToast) {\n maybeToast.remove();\n this.bi.onToastDismissed({\n ...biState,\n by: 'automatic',\n });\n }\n });\n }\n\n exportModalState.close();\n }\n\n _throwJobError(\n job: ExportAsyncJob,\n { onExportEnd, query }: ExportJobStateParams,\n ) {\n if (job.data?.error?.applicationError?.code === 'job_cancelled_by_client') {\n onExportEnd({ job, query, result: 'stopped by user' });\n\n return;\n }\n\n onExportEnd({ job, query, result: 'fail' });\n\n throw Object.assign(\n new Error(`ExportAsyncJob.${job.data?.error?.applicationError?.code}`),\n {\n response: {\n data: job.data?.error,\n },\n job,\n query,\n },\n );\n }\n\n _checkIfStaleJob(\n job: ExportAsyncJob,\n { onExportEnd, query }: ExportJobStateParams,\n ) {\n const { internalMonitor } = this;\n\n if (job.status === JobStatus.FINISHED && !job.data?.signedUrl) {\n internalMonitor.interactionStarted(\n 'export-to-finished-without-download-url',\n );\n internalMonitor.interactionEnded(\n 'export-to-finished-without-download-url',\n );\n }\n\n if (\n job.data?.iterationsCount === this.iterationsCountPoll.iterationsCount\n ) {\n this.iterationsCountPoll = {\n ...this.iterationsCountPoll,\n pollCount: this.iterationsCountPoll.pollCount + 1,\n };\n\n if (\n job.data?.completionStep !== 'upload' &&\n this.iterationsCountPoll.pollCount > this.config.stateJob.maxPolling\n ) {\n if (\n this.iterationsCountPoll.retries < this.config.stateJob.maxRetries\n ) {\n internalMonitor.interactionStarted('export-to-max-polling-stale-job');\n internalMonitor.interactionEnded('export-to-max-polling-stale-job');\n runInAction(() => {\n this.iterationsCountPoll = {\n iterationsCount: 0,\n pollCount: 0,\n retries: this.iterationsCountPoll.retries + 1,\n };\n });\n window.removeEventListener('beforeunload', this.beforeunload);\n this._exportTo({ onExportEnd });\n return 'restarted';\n }\n\n onExportEnd({ job, query, result: 'fail' });\n\n throw Object.assign(new Error('ExportAsyncJob.max_polling_stale_job'), {\n response: {\n data: {\n applicationError: {\n code: 'max_polling_stale_job',\n },\n } as ErrorDetails,\n },\n });\n }\n } else {\n this.iterationsCountPoll = {\n ...this.iterationsCountPoll,\n iterationsCount: job.data?.iterationsCount,\n pollCount: 1,\n };\n }\n\n return;\n }\n\n _updateAbsoluteCounter(job: ExportAsyncJob, { query }: ExportJobStateParams) {\n if (job?.data == null) {\n return;\n }\n\n const { totalForExport } = this;\n\n const newAbsoluteCounter = getJobItemsAbsoluteCounter(job, {\n query,\n totalForExport,\n });\n\n this.absoluteCounter =\n totalForExport != null &&\n newAbsoluteCounter >= totalForExport &&\n !this.exportStatus.isSuccess\n ? this.absoluteCounter +\n Math.floor(\n Math.random() * (newAbsoluteCounter - this.absoluteCounter),\n )\n : newAbsoluteCounter;\n }\n\n _updateJobProgress(job: ExportAsyncJob, params: ExportJobStateParams) {\n this._updateAbsoluteCounter(job, params);\n\n const { totalForExport } = this;\n if (totalForExport) {\n if (this.absoluteCounter) {\n const newCounter = Math.round(\n (this.absoluteCounter / totalForExport) * 100,\n );\n\n this.counter =\n newCounter === 100\n ? this.counter + Math.round(Math.random() * (99 - this.counter))\n : newCounter;\n }\n } else if (this.counter < 90 && this.absoluteCounter > 0) {\n this.counter += 10;\n }\n }\n\n private async _poll({\n jobId,\n saveAs,\n query,\n onExportEnd,\n }: {\n query: QueryV2;\n saveAs?: string;\n onExportEnd: (params: {\n job: ExportAsyncJob | null;\n query: QueryV2;\n result: 'success' | 'fail' | 'stopped by user';\n }) => void;\n jobId: string;\n }) {\n const { httpClient, events, onlineState } = this;\n\n let current: ExportAsyncJob | null = null;\n\n try {\n // eslint-disable-next-line no-constant-condition\n while (true) {\n if (!this.isModalOpen) {\n const currentJob = await this.exportStatus.promise;\n if (currentJob) {\n onExportEnd({\n job: currentJob,\n query,\n result: 'stopped by user',\n });\n }\n\n break;\n }\n\n const getExportAsyncJobResponse = await httpClient\n .request(getExportAsyncJob({ jobId }))\n .catch((error) => ({ error }));\n\n if (\n getExportAsyncJobResponse &&\n !('data' in getExportAsyncJobResponse)\n ) {\n const error = getExportAsyncJobResponse.error;\n if (!onlineState.isOnline) {\n events.once('online', () => {\n this._poll({\n jobId,\n onExportEnd,\n query,\n saveAs,\n });\n });\n\n throw new PatternsError({\n errorCode: 'GetExportAsyncJob.offline',\n originalException: error,\n extraData: {\n response: {\n data: {\n applicationError: {\n code: 'offline',\n },\n } as ErrorDetails,\n },\n },\n });\n }\n\n if (this.queryJobRetries.count > this.config.queryJobRetries.max) {\n onExportEnd({ job: current, query, result: 'fail' });\n throw new PatternsError({\n originalException: error,\n errorCode: 'GetExportAsyncJob.failed',\n });\n }\n\n this.queryJobRetries = {\n ...this.queryJobRetries,\n count: this.queryJobRetries.count + 1,\n };\n\n setTimeout(() => {\n this._poll({\n jobId,\n onExportEnd,\n query,\n saveAs,\n });\n }, this.config.queryJobRetries.delay);\n\n break;\n }\n\n const job = getExportAsyncJobResponse?.data.job;\n\n if (job?.data == null) {\n throw new PatternsError({ errorCode: 'GetExportAsyncJob.invalid' });\n }\n\n current = job;\n\n this.queryJobRetries = {\n count: 0,\n };\n\n runInAction(() => {\n this.exportStatus = {\n ...queryStatus.loading,\n promise: Promise.resolve(job),\n };\n });\n\n const isModalOpen = runInAction(() => this.isModalOpen);\n if (!isModalOpen) {\n break;\n }\n\n if (job.data.signedUrl) {\n await this._onJobSuccess(job, {\n onExportEnd,\n saveAs,\n query,\n });\n break;\n }\n\n if (\n job.status === JobStatus.FAILED ||\n job.data.error?.applicationError != null\n ) {\n if (\n job.data.error?.applicationError?.code ===\n 'media_generate_signed_url'\n ) {\n // await this._retryGenerateUrl(job);\n // continue;\n }\n\n this._throwJobError(job, {\n onExportEnd,\n query,\n saveAs,\n });\n break;\n }\n\n const checkIfStaleJobResult = this._checkIfStaleJob(job, {\n onExportEnd,\n saveAs,\n query,\n });\n\n if (checkIfStaleJobResult === 'restarted') {\n return;\n }\n\n await runInAction(async () => {\n if (\n !this.totalForExport &&\n (job.data?.iterationsCount == null || job.data.iterationsCount <= 1)\n ) {\n this.totalForExport = job.data?.pagingMetadata?.total;\n }\n });\n\n this._updateJobProgress(job, { onExportEnd, query, saveAs });\n\n await new Promise((res) => setTimeout(res, this.config.pollingDelay));\n }\n } catch (error) {\n console.error(error);\n\n this.internalMonitor.reportError({ error });\n\n runInAction(() => {\n this.currentStep = 'error';\n this.exportStatus = {\n ...queryStatus.error,\n error,\n };\n });\n }\n }\n\n private async _exportTo({\n onExportEnd,\n }: {\n onExportEnd: (params: {\n job: ExportAsyncJob | null;\n query: QueryV2;\n result: 'success' | 'fail' | 'stopped by user';\n }) => void;\n }) {\n const {\n createExportAsyncJobRequest,\n httpClient,\n transformPlatformizedQuery,\n selectedExportOption,\n events,\n onlineState,\n } = this;\n\n this._reset();\n window.addEventListener('beforeunload', this.beforeunload);\n\n const platformizedQuery = defaultPlatformizedQuery();\n\n const {\n bulkSelect: {\n selectedIds,\n isSelectAll,\n uncheckedInCurrentCollection: uncheckedValues,\n },\n query: { asComputed: computedQuery },\n } = this.collection;\n\n const cairoQuery =\n selectedExportOption !== 'all'\n ? computedQuery\n : {\n ...computedQuery,\n filtersKey: {},\n rawFilters: {},\n filters: {},\n };\n\n const exportPublicState = {\n platformizedQuery,\n cairoQuery,\n selectedItems:\n selectedExportOption === 'selected' ? selectedIds : undefined,\n isSelectAll,\n uncheckedValues,\n };\n\n const query =\n (await transformPlatformizedQuery?.(exportPublicState)) ??\n platformizedQuery;\n\n const totalForExportPromise = this.setTotalForExport({\n ...exportPublicState,\n platformizedQuery: query,\n });\n\n const saveAs =\n this.saveAs?.({\n platformizedQuery,\n cairoQuery,\n selectedItems:\n selectedExportOption === 'selected' ? selectedIds : undefined,\n isSelectAll,\n }) ?? this.collectionPageState.pageTitle;\n\n runInAction(() => {\n this.currentStep = 'progress';\n });\n\n const _createExport = async () => {\n try {\n const { data: createExportAsyncJobResponse } = await httpClient\n .request(\n createExportAsyncJob({\n fields: [],\n methodMetadata: {},\n ...createExportAsyncJobRequest,\n saveAs,\n query,\n }),\n )\n .catch((err) => {\n if (!onlineState.isOnline) {\n events.once('online', () => {\n this._exportTo({\n onExportEnd,\n });\n });\n throw Object.assign(new Error('CreateExportAsyncJob.offline'), {\n response: {\n data: {\n applicationError: {\n code: 'offline',\n },\n } as ErrorDetails,\n },\n });\n }\n onExportEnd({ job: null, query, result: 'fail' });\n\n throw err;\n });\n\n return createExportAsyncJobResponse;\n } catch (error) {\n runInAction(() => {\n this.currentStep = 'error';\n this.exportStatus = {\n ...queryStatus.error,\n error,\n };\n });\n\n throw error;\n }\n };\n\n try {\n const createExportAsyncJobResponse = await _createExport();\n\n if (!createExportAsyncJobResponse.job?.id) {\n throw new Error(\n `Invalid response from createExportAsyncJob \"jobId=${createExportAsyncJobResponse.job?.id}\"`,\n );\n }\n\n await totalForExportPromise;\n\n runInAction(() => {\n this.exportStatus = {\n ...queryStatus.loading,\n promise: Promise.resolve(\n createExportAsyncJobResponse.job as ExportAsyncJob,\n ),\n };\n });\n\n this.events.emit('afterJobCreated', {\n job: createExportAsyncJobResponse.job as ExportAsyncJob,\n });\n\n runInAction(() => {\n this.counter = 1;\n });\n\n await this._poll({\n onExportEnd,\n saveAs,\n query,\n jobId: createExportAsyncJobResponse.job.id,\n });\n } catch (error) {\n console.error(error);\n this.internalMonitor.reportError({ error });\n }\n\n window.removeEventListener('beforeunload', this.beforeunload);\n }\n}\n"],"mappings":"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"}
|
|
@@ -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 {
|
|
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 { PatternsMonitor } from '../services';\nimport { CollectionState } from './CollectionState';\n\nexport interface FedopsReporterParams<T, F extends FiltersMap> {\n componentName: string;\n collection: CollectionState<T, F>;\n internalMonitor: PatternsMonitor;\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"}
|
|
@@ -12,7 +12,7 @@ class SelectState {
|
|
|
12
12
|
(0, _defineProperty2.default)(this, "keyGetter", void 0);
|
|
13
13
|
(0, _defineProperty2.default)(this, "defaultStatus", void 0);
|
|
14
14
|
(0, _defineProperty2.default)(this, "map", new _SelectMapState.SelectMapState());
|
|
15
|
-
this.defaultStatus = params.defaultStatus ?? _SelectionStatusCairoPreset.
|
|
15
|
+
this.defaultStatus = params.defaultStatus ?? _SelectionStatusCairoPreset.selectionStatusPatternsPreset.unchecked;
|
|
16
16
|
(0, _mobx.makeObservable)(this, {
|
|
17
17
|
defaultStatus: _mobx.observable.ref,
|
|
18
18
|
selectedValues: _mobx.computed,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_mobx","require","_SelectionStatusCairoPreset","_SelectMapState","SelectState","constructor","params","_defineProperty2","default","SelectMapState","defaultStatus","selectionStatusCairoPreset","unchecked","makeObservable","observable","ref","selectedValues","computed","selectedKeys","isEmpty","isNotEmpty","isEmptyEnabledItems","isNotEmptyEnabledItems","selectedCount","toArray","selectedArray","set","action","delete","toggle","clear","syncValues","finalizeMany","setMany","filter","initSelected","keyGetter","startStatus","start","finalStatus","final","isChecked","key","_map$get","map","Boolean","get","status","value","entry","forceSet","deleteKey","length","Array","from","values","forceSetMany","entries","newEntry","startAll","predicate","selectedEnabledItems","selectionEntry","_map","events","listeners","every","listener","exports"],"sources":["../../../src/state/SelectState.ts"],"sourcesContent":["import { action, computed, makeObservable, observable } from 'mobx';\nimport { SelectionStatus } from './SelectionStatus';\nimport { selectionStatusCairoPreset } from './SelectionStatusCairoPreset';\nimport { SelectMapState } from './SelectMapState';\n\ntype KeyGetter<T> = (value: T) => string;\n\nexport interface SelectStateParams<T> {\n readonly keyGetter: KeyGetter<T>;\n readonly defaultStatus?: SelectionStatus;\n}\n\nexport interface SelectionEntry<T> {\n value: T;\n status: SelectionStatus;\n}\n\nexport class SelectState<T> {\n readonly keyGetter: KeyGetter<T>;\n\n defaultStatus;\n\n private readonly map = new SelectMapState<string, SelectionEntry<T>>();\n\n constructor(params: SelectStateParams<T>) {\n this.defaultStatus =\n params.defaultStatus ?? selectionStatusCairoPreset.unchecked;\n\n makeObservable(this, {\n defaultStatus: observable.ref,\n selectedValues: computed,\n selectedKeys: computed,\n isEmpty: computed,\n isNotEmpty: computed,\n isEmptyEnabledItems: computed,\n isNotEmptyEnabledItems: computed,\n selectedCount: computed,\n toArray: computed,\n selectedArray: computed,\n set: action,\n delete: action,\n toggle: action,\n clear: action,\n syncValues: action,\n finalizeMany: action,\n setMany: action,\n filter: action,\n initSelected: action,\n });\n\n this.keyGetter = params.keyGetter;\n }\n\n get startStatus() {\n return this.defaultStatus.start();\n }\n\n get finalStatus() {\n return this.defaultStatus.final();\n }\n\n isChecked(key: string) {\n const { map } = this;\n return Boolean(map.get(key)?.status.isChecked);\n }\n\n toggle(value: T, { clear }: { clear?: boolean } = {}) {\n const { map, keyGetter, defaultStatus } = this;\n\n if (clear) {\n this.clear();\n }\n const key = keyGetter(value);\n\n const entry = map.get(key) ?? { value, status: defaultStatus };\n map.set(key, {\n ...entry,\n status: entry.status.toggle(),\n });\n }\n\n set(value: T) {\n const { keyGetter, map, finalStatus } = this;\n const key = keyGetter(value);\n map.set(key, { value, status: finalStatus });\n }\n\n forceSet(value: T) {\n const { keyGetter, map, finalStatus } = this;\n const key = keyGetter(value);\n map.forceSet(key, { value, status: finalStatus });\n }\n\n delete(value: T) {\n const { keyGetter, map, defaultStatus } = this;\n const key = keyGetter(value);\n map.set(key, {\n value,\n status: defaultStatus.start(),\n });\n }\n\n deleteKey(key: string) {\n const { map } = this;\n const entry = map.get(key);\n\n if (entry) {\n map.set(key, {\n ...entry,\n status: entry.status.start(),\n });\n }\n }\n\n get selectedCount() {\n return this.selectedArray.length;\n }\n\n get toArray() {\n return Array.from(this.map.values());\n }\n\n get selectedArray() {\n return this.toArray.filter(({ status }) => status.isChecked);\n }\n\n get selectedValues() {\n return this.selectedArray.map(({ value }) => value);\n }\n\n get selectedKeys() {\n const { keyGetter } = this;\n return this.selectedValues.map(keyGetter);\n }\n\n clear() {\n const { map } = this;\n map.clear();\n }\n\n forceSetMany(entries: SelectionEntry<T>[]) {\n const { map, keyGetter } = this;\n for (const entry of entries) {\n const key = keyGetter(entry.value);\n map.forceSet(key, entry);\n }\n }\n\n // backwards compatibility\n setMany(entries: SelectionEntry<T>[]) {\n return this.forceSetMany(entries);\n }\n\n syncValues(values: T[], status = this.defaultStatus) {\n const { map, keyGetter } = this;\n for (const value of values) {\n const key = keyGetter(value);\n const entry = map.get(key);\n const newEntry = entry ? { ...entry, value } : { value, status };\n map.forceSet(key, newEntry);\n }\n }\n\n initSelected(values: T[]) {\n const { map } = this;\n map.clear();\n this.forceSetMany(\n values.map((value) => ({\n value,\n status: this.finalStatus,\n })),\n );\n }\n\n finalizeMany(values: T[]) {\n const { map, keyGetter, finalStatus } = this;\n for (const value of values) {\n const key = keyGetter(value);\n map.set(key, { value, status: finalStatus });\n }\n }\n\n startAll() {\n const { map, startStatus } = this;\n const entries = Array.from(map.entries());\n for (const [key, entry] of entries) {\n map.set(key, {\n ...entry,\n status: startStatus,\n });\n }\n }\n\n filter(predicate: (value: T) => boolean) {\n const { map, selectedArray, keyGetter } = this;\n for (const { value, status } of selectedArray) {\n if (!predicate(value)) {\n map.set(keyGetter(value), {\n value,\n status: status.start(),\n });\n }\n }\n }\n\n get isNotEmpty() {\n return !this.isEmpty;\n }\n\n get isEmpty() {\n const { selectedArray } = this;\n return !selectedArray.length;\n }\n\n get isNotEmptyEnabledItems() {\n return !this.isEmptyEnabledItems;\n }\n\n get isEmptyEnabledItems() {\n const { selectedArray } = this;\n\n const selectedEnabledItems = selectedArray.filter((selectionEntry) =>\n this._map.events\n .listeners('isDisabled')\n .every((listener) => !listener(selectionEntry)),\n );\n\n return !selectedEnabledItems.length;\n }\n\n get _map() {\n return this.map;\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["_mobx","require","_SelectionStatusCairoPreset","_SelectMapState","SelectState","constructor","params","_defineProperty2","default","SelectMapState","defaultStatus","selectionStatusPatternsPreset","unchecked","makeObservable","observable","ref","selectedValues","computed","selectedKeys","isEmpty","isNotEmpty","isEmptyEnabledItems","isNotEmptyEnabledItems","selectedCount","toArray","selectedArray","set","action","delete","toggle","clear","syncValues","finalizeMany","setMany","filter","initSelected","keyGetter","startStatus","start","finalStatus","final","isChecked","key","_map$get","map","Boolean","get","status","value","entry","forceSet","deleteKey","length","Array","from","values","forceSetMany","entries","newEntry","startAll","predicate","selectedEnabledItems","selectionEntry","_map","events","listeners","every","listener","exports"],"sources":["../../../src/state/SelectState.ts"],"sourcesContent":["import { action, computed, makeObservable, observable } from 'mobx';\nimport { SelectionStatus } from './SelectionStatus';\nimport { selectionStatusPatternsPreset } from './SelectionStatusCairoPreset';\nimport { SelectMapState } from './SelectMapState';\n\ntype KeyGetter<T> = (value: T) => string;\n\nexport interface SelectStateParams<T> {\n readonly keyGetter: KeyGetter<T>;\n readonly defaultStatus?: SelectionStatus;\n}\n\nexport interface SelectionEntry<T> {\n value: T;\n status: SelectionStatus;\n}\n\nexport class SelectState<T> {\n readonly keyGetter: KeyGetter<T>;\n\n defaultStatus;\n\n private readonly map = new SelectMapState<string, SelectionEntry<T>>();\n\n constructor(params: SelectStateParams<T>) {\n this.defaultStatus =\n params.defaultStatus ?? selectionStatusPatternsPreset.unchecked;\n\n makeObservable(this, {\n defaultStatus: observable.ref,\n selectedValues: computed,\n selectedKeys: computed,\n isEmpty: computed,\n isNotEmpty: computed,\n isEmptyEnabledItems: computed,\n isNotEmptyEnabledItems: computed,\n selectedCount: computed,\n toArray: computed,\n selectedArray: computed,\n set: action,\n delete: action,\n toggle: action,\n clear: action,\n syncValues: action,\n finalizeMany: action,\n setMany: action,\n filter: action,\n initSelected: action,\n });\n\n this.keyGetter = params.keyGetter;\n }\n\n get startStatus() {\n return this.defaultStatus.start();\n }\n\n get finalStatus() {\n return this.defaultStatus.final();\n }\n\n isChecked(key: string) {\n const { map } = this;\n return Boolean(map.get(key)?.status.isChecked);\n }\n\n toggle(value: T, { clear }: { clear?: boolean } = {}) {\n const { map, keyGetter, defaultStatus } = this;\n\n if (clear) {\n this.clear();\n }\n const key = keyGetter(value);\n\n const entry = map.get(key) ?? { value, status: defaultStatus };\n map.set(key, {\n ...entry,\n status: entry.status.toggle(),\n });\n }\n\n set(value: T) {\n const { keyGetter, map, finalStatus } = this;\n const key = keyGetter(value);\n map.set(key, { value, status: finalStatus });\n }\n\n forceSet(value: T) {\n const { keyGetter, map, finalStatus } = this;\n const key = keyGetter(value);\n map.forceSet(key, { value, status: finalStatus });\n }\n\n delete(value: T) {\n const { keyGetter, map, defaultStatus } = this;\n const key = keyGetter(value);\n map.set(key, {\n value,\n status: defaultStatus.start(),\n });\n }\n\n deleteKey(key: string) {\n const { map } = this;\n const entry = map.get(key);\n\n if (entry) {\n map.set(key, {\n ...entry,\n status: entry.status.start(),\n });\n }\n }\n\n get selectedCount() {\n return this.selectedArray.length;\n }\n\n get toArray() {\n return Array.from(this.map.values());\n }\n\n get selectedArray() {\n return this.toArray.filter(({ status }) => status.isChecked);\n }\n\n get selectedValues() {\n return this.selectedArray.map(({ value }) => value);\n }\n\n get selectedKeys() {\n const { keyGetter } = this;\n return this.selectedValues.map(keyGetter);\n }\n\n clear() {\n const { map } = this;\n map.clear();\n }\n\n forceSetMany(entries: SelectionEntry<T>[]) {\n const { map, keyGetter } = this;\n for (const entry of entries) {\n const key = keyGetter(entry.value);\n map.forceSet(key, entry);\n }\n }\n\n // backwards compatibility\n setMany(entries: SelectionEntry<T>[]) {\n return this.forceSetMany(entries);\n }\n\n syncValues(values: T[], status = this.defaultStatus) {\n const { map, keyGetter } = this;\n for (const value of values) {\n const key = keyGetter(value);\n const entry = map.get(key);\n const newEntry = entry ? { ...entry, value } : { value, status };\n map.forceSet(key, newEntry);\n }\n }\n\n initSelected(values: T[]) {\n const { map } = this;\n map.clear();\n this.forceSetMany(\n values.map((value) => ({\n value,\n status: this.finalStatus,\n })),\n );\n }\n\n finalizeMany(values: T[]) {\n const { map, keyGetter, finalStatus } = this;\n for (const value of values) {\n const key = keyGetter(value);\n map.set(key, { value, status: finalStatus });\n }\n }\n\n startAll() {\n const { map, startStatus } = this;\n const entries = Array.from(map.entries());\n for (const [key, entry] of entries) {\n map.set(key, {\n ...entry,\n status: startStatus,\n });\n }\n }\n\n filter(predicate: (value: T) => boolean) {\n const { map, selectedArray, keyGetter } = this;\n for (const { value, status } of selectedArray) {\n if (!predicate(value)) {\n map.set(keyGetter(value), {\n value,\n status: status.start(),\n });\n }\n }\n }\n\n get isNotEmpty() {\n return !this.isEmpty;\n }\n\n get isEmpty() {\n const { selectedArray } = this;\n return !selectedArray.length;\n }\n\n get isNotEmptyEnabledItems() {\n return !this.isEmptyEnabledItems;\n }\n\n get isEmptyEnabledItems() {\n const { selectedArray } = this;\n\n const selectedEnabledItems = selectedArray.filter((selectionEntry) =>\n this._map.events\n .listeners('isDisabled')\n .every((listener) => !listener(selectionEntry)),\n );\n\n return !selectedEnabledItems.length;\n }\n\n get _map() {\n return this.map;\n }\n}\n"],"mappings":"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"}
|
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
4
|
exports.__esModule = true;
|
|
5
|
-
exports.
|
|
5
|
+
exports.selectionStatusPatternsPreset = void 0;
|
|
6
6
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
7
|
-
class
|
|
7
|
+
class SelectionStatusPatternsPreset {
|
|
8
8
|
constructor() {
|
|
9
9
|
(0, _defineProperty2.default)(this, "unchecked", {
|
|
10
10
|
id: 'unchecked',
|
|
@@ -48,5 +48,5 @@ class SelectionStatusCairoPreset {
|
|
|
48
48
|
});
|
|
49
49
|
}
|
|
50
50
|
}
|
|
51
|
-
const
|
|
51
|
+
const selectionStatusPatternsPreset = exports.selectionStatusPatternsPreset = new SelectionStatusPatternsPreset();
|
|
52
52
|
//# sourceMappingURL=SelectionStatusCairoPreset.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["SelectionStatusPatternsPreset","constructor","_defineProperty2","default","id","toggle","checked","start","unchecked","final","isChecked","isIndeterminate","indeterminate","indeterminateUnchecked","indeterminateChecked","selectionStatusPatternsPreset","exports"],"sources":["../../../src/state/SelectionStatusCairoPreset.ts"],"sourcesContent":["import { SelectionStatus } from './SelectionStatus';\n\nclass SelectionStatusPatternsPreset {\n readonly unchecked: SelectionStatus = {\n id: 'unchecked',\n toggle: () => this.checked,\n start: () => this.unchecked,\n final: () => this.checked,\n isChecked: false,\n isIndeterminate: false,\n };\n\n readonly checked: SelectionStatus = {\n id: 'checked',\n toggle: () => this.unchecked,\n start: () => this.unchecked,\n final: () => this.checked,\n isChecked: true,\n isIndeterminate: false,\n };\n\n readonly indeterminateUnchecked: SelectionStatus = {\n id: 'indeterminateUnchecked',\n toggle: () => this.indeterminate,\n start: () => this.indeterminateUnchecked,\n final: () => this.indeterminateChecked,\n isChecked: false,\n isIndeterminate: false,\n };\n\n readonly indeterminate: SelectionStatus = {\n id: 'indeterminate',\n toggle: () => this.indeterminateChecked,\n start: () => this.indeterminateUnchecked,\n final: () => this.indeterminateChecked,\n isChecked: true,\n isIndeterminate: true,\n };\n\n readonly indeterminateChecked: SelectionStatus = {\n id: 'indeterminateChecked',\n toggle: () => this.indeterminateUnchecked,\n start: () => this.indeterminateUnchecked,\n final: () => this.indeterminateChecked,\n isChecked: true,\n isIndeterminate: false,\n };\n}\n\nexport const selectionStatusPatternsPreset =\n new SelectionStatusPatternsPreset();\n"],"mappings":";;;;;;AAEA,MAAMA,6BAA6B,CAAC;EAAAC,YAAA;IAAA,IAAAC,gBAAA,CAAAC,OAAA,qBACI;MACpCC,EAAE,EAAE,WAAW;MACfC,MAAM,EAAEA,CAAA,KAAM,IAAI,CAACC,OAAO;MAC1BC,KAAK,EAAEA,CAAA,KAAM,IAAI,CAACC,SAAS;MAC3BC,KAAK,EAAEA,CAAA,KAAM,IAAI,CAACH,OAAO;MACzBI,SAAS,EAAE,KAAK;MAChBC,eAAe,EAAE;IACnB,CAAC;IAAA,IAAAT,gBAAA,CAAAC,OAAA,mBAEmC;MAClCC,EAAE,EAAE,SAAS;MACbC,MAAM,EAAEA,CAAA,KAAM,IAAI,CAACG,SAAS;MAC5BD,KAAK,EAAEA,CAAA,KAAM,IAAI,CAACC,SAAS;MAC3BC,KAAK,EAAEA,CAAA,KAAM,IAAI,CAACH,OAAO;MACzBI,SAAS,EAAE,IAAI;MACfC,eAAe,EAAE;IACnB,CAAC;IAAA,IAAAT,gBAAA,CAAAC,OAAA,kCAEkD;MACjDC,EAAE,EAAE,wBAAwB;MAC5BC,MAAM,EAAEA,CAAA,KAAM,IAAI,CAACO,aAAa;MAChCL,KAAK,EAAEA,CAAA,KAAM,IAAI,CAACM,sBAAsB;MACxCJ,KAAK,EAAEA,CAAA,KAAM,IAAI,CAACK,oBAAoB;MACtCJ,SAAS,EAAE,KAAK;MAChBC,eAAe,EAAE;IACnB,CAAC;IAAA,IAAAT,gBAAA,CAAAC,OAAA,yBAEyC;MACxCC,EAAE,EAAE,eAAe;MACnBC,MAAM,EAAEA,CAAA,KAAM,IAAI,CAACS,oBAAoB;MACvCP,KAAK,EAAEA,CAAA,KAAM,IAAI,CAACM,sBAAsB;MACxCJ,KAAK,EAAEA,CAAA,KAAM,IAAI,CAACK,oBAAoB;MACtCJ,SAAS,EAAE,IAAI;MACfC,eAAe,EAAE;IACnB,CAAC;IAAA,IAAAT,gBAAA,CAAAC,OAAA,gCAEgD;MAC/CC,EAAE,EAAE,sBAAsB;MAC1BC,MAAM,EAAEA,CAAA,KAAM,IAAI,CAACQ,sBAAsB;MACzCN,KAAK,EAAEA,CAAA,KAAM,IAAI,CAACM,sBAAsB;MACxCJ,KAAK,EAAEA,CAAA,KAAM,IAAI,CAACK,oBAAoB;MACtCJ,SAAS,EAAE,IAAI;MACfC,eAAe,EAAE;IACnB,CAAC;EAAA;AACH;AAEO,MAAMI,6BAA6B,GAAAC,OAAA,CAAAD,6BAAA,GACxC,IAAIf,6BAA6B,CAAC,CAAC"}
|
|
@@ -11,7 +11,7 @@ function warmUpPickerStandalone(cairoEssentials, params) {
|
|
|
11
11
|
errorMonitor,
|
|
12
12
|
createEssentials
|
|
13
13
|
} = cairoEssentials;
|
|
14
|
-
const environment = (0, _model.
|
|
14
|
+
const environment = (0, _model.patternsEnvironment)(cairoEssentials.environment);
|
|
15
15
|
(0, _services.prefetchTranslations)({
|
|
16
16
|
errorMonitor
|
|
17
17
|
})(environment.language);
|