@gooddata/sdk-ui 8.13.0-alpha.2 → 8.13.0-alpha.21
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/base/constants/bucketNames.js +32 -32
- package/dist/base/constants/bucketNames.js.map +1 -1
- package/dist/base/errors/GoodDataSdkError.js +67 -98
- package/dist/base/errors/GoodDataSdkError.js.map +1 -1
- package/dist/base/errors/errorHandling.js +17 -18
- package/dist/base/errors/errorHandling.js.map +1 -1
- package/dist/base/headerMatching/HeaderPredicateFactory.js +50 -58
- package/dist/base/headerMatching/HeaderPredicateFactory.js.map +1 -1
- package/dist/base/headerMatching/MappingHeader.js +3 -3
- package/dist/base/headerMatching/MappingHeader.js.map +1 -1
- package/dist/base/helpers/CatalogHelper.js +33 -34
- package/dist/base/helpers/CatalogHelper.js.map +1 -1
- package/dist/base/localization/IntlStore.js +12 -14
- package/dist/base/localization/IntlStore.js.map +1 -1
- package/dist/base/localization/IntlWrapper.js +9 -10
- package/dist/base/localization/IntlWrapper.js.map +1 -1
- package/dist/base/localization/Locale.js +1 -1
- package/dist/base/localization/Locale.js.map +1 -1
- package/dist/base/localization/TranslationsCustomizationProvider/Context.js +11 -12
- package/dist/base/localization/TranslationsCustomizationProvider/Context.js.map +1 -1
- package/dist/base/localization/TranslationsCustomizationProvider/TranslationsCustomizationProvider.js +28 -38
- package/dist/base/localization/TranslationsCustomizationProvider/TranslationsCustomizationProvider.js.map +1 -1
- package/dist/base/localization/TranslationsCustomizationProvider/utils.js +25 -37
- package/dist/base/localization/TranslationsCustomizationProvider/utils.js.map +1 -1
- package/dist/base/localization/TranslationsProvider.js +12 -19
- package/dist/base/localization/TranslationsProvider.js.map +1 -1
- package/dist/base/localization/bundles/de-DE.json +23 -11
- package/dist/base/localization/bundles/en-US.json +93 -27
- package/dist/base/localization/bundles/es-ES.json +22 -10
- package/dist/base/localization/bundles/fr-FR.json +22 -10
- package/dist/base/localization/bundles/ja-JP.json +22 -10
- package/dist/base/localization/bundles/nl-NL.json +22 -10
- package/dist/base/localization/bundles/pt-BR.json +22 -10
- package/dist/base/localization/bundles/pt-PT.json +22 -10
- package/dist/base/localization/bundles/ru-RU.json +22 -10
- package/dist/base/localization/bundles/zh-Hans.json +22 -10
- package/dist/base/localization/intlUtils.js +18 -25
- package/dist/base/localization/intlUtils.js.map +1 -1
- package/dist/base/localization/messagesMap.js +12 -12
- package/dist/base/localization/messagesMap.js.map +1 -1
- package/dist/base/measureFormats/fillMissingFormat.js +5 -5
- package/dist/base/measureFormats/fillMissingFormat.js.map +1 -1
- package/dist/base/measureFormats/fillMissingFormats.js +3 -3
- package/dist/base/measureFormats/fillMissingFormats.js.map +1 -1
- package/dist/base/measureTitles/ArithmeticMeasureTitleFactory.js +27 -28
- package/dist/base/measureTitles/ArithmeticMeasureTitleFactory.js.map +1 -1
- package/dist/base/measureTitles/DerivedMeasureTitleSuffixFactory.js +14 -15
- package/dist/base/measureTitles/DerivedMeasureTitleSuffixFactory.js.map +1 -1
- package/dist/base/measureTitles/fillMissingTitles.js +49 -50
- package/dist/base/measureTitles/fillMissingTitles.js.map +1 -1
- package/dist/base/measureTitles/ignoreTitlesForSimpleMeasures.js +4 -4
- package/dist/base/measureTitles/ignoreTitlesForSimpleMeasures.js.map +1 -1
- package/dist/base/react/BackendContext.js +14 -16
- package/dist/base/react/BackendContext.js.map +1 -1
- package/dist/base/react/CancelablePromise.js +21 -24
- package/dist/base/react/CancelablePromise.js.map +1 -1
- package/dist/base/react/ClientWorkspaceContext/ClientWorkspaceContext.js +28 -28
- package/dist/base/react/ClientWorkspaceContext/ClientWorkspaceContext.js.map +1 -1
- package/dist/base/react/ClientWorkspaceContext/resolveLCMWorkspaceIdentifiers.js +30 -82
- package/dist/base/react/ClientWorkspaceContext/resolveLCMWorkspaceIdentifiers.js.map +1 -1
- package/dist/base/react/ErrorComponent.js +35 -40
- package/dist/base/react/ErrorComponent.js.map +1 -1
- package/dist/base/react/LoadingComponent.js +42 -36
- package/dist/base/react/LoadingComponent.js.map +1 -1
- package/dist/base/react/PromiseCache.js +31 -34
- package/dist/base/react/PromiseCache.js.map +1 -1
- package/dist/base/react/WorkspaceContext.js +14 -16
- package/dist/base/react/WorkspaceContext.js.map +1 -1
- package/dist/base/react/legacy/availableDrillTargets.js +15 -16
- package/dist/base/react/legacy/availableDrillTargets.js.map +1 -1
- package/dist/base/react/legacy/withEntireDataView.js +115 -139
- package/dist/base/react/legacy/withEntireDataView.js.map +1 -1
- package/dist/base/react/placeholders/base.js +4 -4
- package/dist/base/react/placeholders/base.js.map +1 -1
- package/dist/base/react/placeholders/context.js +12 -13
- package/dist/base/react/placeholders/context.js.map +1 -1
- package/dist/base/react/placeholders/factory.js +15 -17
- package/dist/base/react/placeholders/factory.js.map +1 -1
- package/dist/base/react/placeholders/hooks.js +34 -40
- package/dist/base/react/placeholders/hooks.js.map +1 -1
- package/dist/base/react/placeholders/resolve.js +9 -12
- package/dist/base/react/placeholders/resolve.js.map +1 -1
- package/dist/base/react/useCancelablePromise.js +24 -21
- package/dist/base/react/useCancelablePromise.js.map +1 -1
- package/dist/base/react/useCancelablePromiseUtils.js +16 -17
- package/dist/base/react/useCancelablePromiseUtils.js.map +1 -1
- package/dist/base/react/usePagedResource.js +25 -29
- package/dist/base/react/usePagedResource.js.map +1 -1
- package/dist/base/react/usePrevious.js +4 -4
- package/dist/base/react/usePrevious.js.map +1 -1
- package/dist/base/react/usePromiseCache.js +17 -18
- package/dist/base/react/usePromiseCache.js.map +1 -1
- package/dist/base/react/withContexts.js +5 -5
- package/dist/base/react/withContexts.js.map +1 -1
- package/dist/base/react/wrapDisplayName.js +5 -5
- package/dist/base/react/wrapDisplayName.js.map +1 -1
- package/dist/base/results/dataAccessConfig.js +10 -10
- package/dist/base/results/dataAccessConfig.js.map +1 -1
- package/dist/base/results/facade.js +35 -36
- package/dist/base/results/facade.js.map +1 -1
- package/dist/base/results/internal/dataAccessDigest.js +66 -80
- package/dist/base/results/internal/dataAccessDigest.js.map +1 -1
- package/dist/base/results/internal/dataAccessImpl.js +134 -145
- package/dist/base/results/internal/dataAccessImpl.js.map +1 -1
- package/dist/base/results/internal/dataAccessMethods.js +49 -58
- package/dist/base/results/internal/dataAccessMethods.js.map +1 -1
- package/dist/base/results/internal/definitionMethods.js +36 -37
- package/dist/base/results/internal/definitionMethods.js.map +1 -1
- package/dist/base/results/internal/lazyInitArray.js +18 -20
- package/dist/base/results/internal/lazyInitArray.js.map +1 -1
- package/dist/base/results/internal/resultDataMethods.js +26 -27
- package/dist/base/results/internal/resultDataMethods.js.map +1 -1
- package/dist/base/results/internal/resultMetaMethods.js +64 -72
- package/dist/base/results/internal/resultMetaMethods.js.map +1 -1
- package/dist/base/results/internal/utils.js +1 -1
- package/dist/base/results/internal/utils.js.map +1 -1
- package/dist/base/vis/DrillEvents.js +5 -5
- package/dist/base/vis/DrillEvents.js.map +1 -1
- package/dist/base/vis/drilling.d.ts.map +1 -1
- package/dist/base/vis/drilling.js +19 -24
- package/dist/base/vis/drilling.js.map +1 -1
- package/dist/base/vis/export.js +10 -10
- package/dist/base/vis/export.js.map +1 -1
- package/dist/execution/DataViewLoader.js +36 -80
- package/dist/execution/DataViewLoader.js.map +1 -1
- package/dist/execution/Execute.js +35 -35
- package/dist/execution/Execute.js.map +1 -1
- package/dist/execution/ExecuteInsight.js +54 -62
- package/dist/execution/ExecuteInsight.js.map +1 -1
- package/dist/execution/RawExecute.js +27 -27
- package/dist/execution/RawExecute.js.map +1 -1
- package/dist/execution/createExecution.js +17 -16
- package/dist/execution/createExecution.js.map +1 -1
- package/dist/execution/useDataExport.js +16 -19
- package/dist/execution/useDataExport.js.map +1 -1
- package/dist/execution/useDataView.js +18 -23
- package/dist/execution/useDataView.js.map +1 -1
- package/dist/execution/useExecution.js +12 -13
- package/dist/execution/useExecution.js.map +1 -1
- package/dist/execution/useExecutionDataView.js +23 -22
- package/dist/execution/useExecutionDataView.js.map +1 -1
- package/dist/execution/useInsight.js +10 -10
- package/dist/execution/useInsight.js.map +1 -1
- package/dist/execution/useInsightDataView.js +26 -27
- package/dist/execution/useInsightDataView.js.map +1 -1
- package/dist/execution/withExecution.js +27 -56
- package/dist/execution/withExecution.js.map +1 -1
- package/dist/execution/withExecutionLoading.js +87 -104
- package/dist/execution/withExecutionLoading.js.map +1 -1
- package/dist/index.d.ts +0 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -5
- package/dist/index.js.map +1 -1
- package/dist/kpi/FormattedNumber.js +8 -9
- package/dist/kpi/FormattedNumber.js.map +1 -1
- package/dist/kpi/Kpi.js +25 -26
- package/dist/kpi/Kpi.js.map +1 -1
- package/dist/kpi/KpiError.js +4 -4
- package/dist/kpi/KpiError.js.map +1 -1
- package/dist/locales.js +1 -1
- package/dist/locales.js.map +1 -1
- package/esm/base/constants/bucketNames.js +33 -33
- package/esm/base/constants/bucketNames.js.map +1 -1
- package/esm/base/constants/colorPalette.js +1 -1
- package/esm/base/constants/colorPalette.js.map +1 -1
- package/esm/base/errors/GoodDataSdkError.js +66 -112
- package/esm/base/errors/GoodDataSdkError.js.map +1 -1
- package/esm/base/errors/errorHandling.js +13 -14
- package/esm/base/errors/errorHandling.js.map +1 -1
- package/esm/base/headerMatching/HeaderPredicateFactory.js +49 -57
- package/esm/base/headerMatching/HeaderPredicateFactory.js.map +1 -1
- package/esm/base/headerMatching/MappingHeader.js +2 -2
- package/esm/base/headerMatching/MappingHeader.js.map +1 -1
- package/esm/base/helpers/CatalogHelper.js +33 -35
- package/esm/base/helpers/CatalogHelper.js.map +1 -1
- package/esm/base/interfaces/OverTimeComparison.js +1 -1
- package/esm/base/interfaces/OverTimeComparison.js.map +1 -1
- package/esm/base/localization/IntlStore.js +7 -10
- package/esm/base/localization/IntlStore.js.map +1 -1
- package/esm/base/localization/IntlWrapper.js +3 -4
- package/esm/base/localization/IntlWrapper.js.map +1 -1
- package/esm/base/localization/Locale.js +3 -3
- package/esm/base/localization/Locale.js.map +1 -1
- package/esm/base/localization/TranslationsCustomizationProvider/Context.js +7 -9
- package/esm/base/localization/TranslationsCustomizationProvider/Context.js.map +1 -1
- package/esm/base/localization/TranslationsCustomizationProvider/TranslationsCustomizationProvider.js +22 -33
- package/esm/base/localization/TranslationsCustomizationProvider/TranslationsCustomizationProvider.js.map +1 -1
- package/esm/base/localization/TranslationsCustomizationProvider/utils.js +23 -36
- package/esm/base/localization/TranslationsCustomizationProvider/utils.js.map +1 -1
- package/esm/base/localization/TranslationsProvider.js +8 -17
- package/esm/base/localization/TranslationsProvider.js.map +1 -1
- package/esm/base/localization/bundles/de-DE.json +23 -11
- package/esm/base/localization/bundles/en-US.json +93 -27
- package/esm/base/localization/bundles/es-ES.json +22 -10
- package/esm/base/localization/bundles/fr-FR.json +22 -10
- package/esm/base/localization/bundles/ja-JP.json +22 -10
- package/esm/base/localization/bundles/nl-NL.json +22 -10
- package/esm/base/localization/bundles/pt-BR.json +22 -10
- package/esm/base/localization/bundles/pt-PT.json +22 -10
- package/esm/base/localization/bundles/ru-RU.json +22 -10
- package/esm/base/localization/bundles/zh-Hans.json +22 -10
- package/esm/base/localization/intlUtils.js +12 -20
- package/esm/base/localization/intlUtils.js.map +1 -1
- package/esm/base/localization/messagesMap.js +1 -1
- package/esm/base/localization/messagesMap.js.map +1 -1
- package/esm/base/measureFormats/fillMissingFormat.js +4 -4
- package/esm/base/measureFormats/fillMissingFormat.js.map +1 -1
- package/esm/base/measureFormats/fillMissingFormats.js +1 -1
- package/esm/base/measureFormats/fillMissingFormats.js.map +1 -1
- package/esm/base/measureTitles/ArithmeticMeasureTitleFactory.js +25 -27
- package/esm/base/measureTitles/ArithmeticMeasureTitleFactory.js.map +1 -1
- package/esm/base/measureTitles/DerivedMeasureTitleSuffixFactory.js +11 -13
- package/esm/base/measureTitles/DerivedMeasureTitleSuffixFactory.js.map +1 -1
- package/esm/base/measureTitles/fillMissingTitles.js +44 -45
- package/esm/base/measureTitles/fillMissingTitles.js.map +1 -1
- package/esm/base/measureTitles/ignoreTitlesForSimpleMeasures.js +3 -3
- package/esm/base/measureTitles/ignoreTitlesForSimpleMeasures.js.map +1 -1
- package/esm/base/react/BackendContext.js +10 -13
- package/esm/base/react/BackendContext.js.map +1 -1
- package/esm/base/react/CancelablePromise.js +19 -24
- package/esm/base/react/CancelablePromise.js.map +1 -1
- package/esm/base/react/ClientWorkspaceContext/ClientWorkspaceContext.js +20 -21
- package/esm/base/react/ClientWorkspaceContext/ClientWorkspaceContext.js.map +1 -1
- package/esm/base/react/ClientWorkspaceContext/resolveLCMWorkspaceIdentifiers.js +27 -80
- package/esm/base/react/ClientWorkspaceContext/resolveLCMWorkspaceIdentifiers.js.map +1 -1
- package/esm/base/react/ErrorComponent.js +33 -40
- package/esm/base/react/ErrorComponent.js.map +1 -1
- package/esm/base/react/LoadingComponent.js +40 -36
- package/esm/base/react/LoadingComponent.js.map +1 -1
- package/esm/base/react/PromiseCache.js +28 -32
- package/esm/base/react/PromiseCache.js.map +1 -1
- package/esm/base/react/WorkspaceContext.js +10 -13
- package/esm/base/react/WorkspaceContext.js.map +1 -1
- package/esm/base/react/legacy/availableDrillTargets.js +12 -13
- package/esm/base/react/legacy/availableDrillTargets.js.map +1 -1
- package/esm/base/react/legacy/withEntireDataView.js +102 -127
- package/esm/base/react/legacy/withEntireDataView.js.map +1 -1
- package/esm/base/react/placeholders/base.js +2 -2
- package/esm/base/react/placeholders/base.js.map +1 -1
- package/esm/base/react/placeholders/context.js +9 -11
- package/esm/base/react/placeholders/context.js.map +1 -1
- package/esm/base/react/placeholders/factory.js +11 -13
- package/esm/base/react/placeholders/factory.js.map +1 -1
- package/esm/base/react/placeholders/hooks.js +27 -33
- package/esm/base/react/placeholders/hooks.js.map +1 -1
- package/esm/base/react/placeholders/resolve.js +6 -10
- package/esm/base/react/placeholders/resolve.js.map +1 -1
- package/esm/base/react/useCancelablePromise.js +18 -16
- package/esm/base/react/useCancelablePromise.js.map +1 -1
- package/esm/base/react/useCancelablePromiseUtils.js +13 -15
- package/esm/base/react/useCancelablePromiseUtils.js.map +1 -1
- package/esm/base/react/usePagedResource.js +23 -27
- package/esm/base/react/usePagedResource.js.map +1 -1
- package/esm/base/react/usePrevious.js +3 -3
- package/esm/base/react/usePrevious.js.map +1 -1
- package/esm/base/react/usePromiseCache.js +15 -16
- package/esm/base/react/usePromiseCache.js.map +1 -1
- package/esm/base/react/wrapDisplayName.js +5 -5
- package/esm/base/react/wrapDisplayName.js.map +1 -1
- package/esm/base/results/dataAccessConfig.js +6 -6
- package/esm/base/results/dataAccessConfig.js.map +1 -1
- package/esm/base/results/facade.js +30 -32
- package/esm/base/results/facade.js.map +1 -1
- package/esm/base/results/internal/dataAccessDigest.js +62 -77
- package/esm/base/results/internal/dataAccessDigest.js.map +1 -1
- package/esm/base/results/internal/dataAccessImpl.js +126 -138
- package/esm/base/results/internal/dataAccessImpl.js.map +1 -1
- package/esm/base/results/internal/dataAccessMethods.js +46 -55
- package/esm/base/results/internal/dataAccessMethods.js.map +1 -1
- package/esm/base/results/internal/definitionMethods.js +33 -34
- package/esm/base/results/internal/definitionMethods.js.map +1 -1
- package/esm/base/results/internal/lazyInitArray.js +16 -19
- package/esm/base/results/internal/lazyInitArray.js.map +1 -1
- package/esm/base/results/internal/resultDataMethods.js +23 -24
- package/esm/base/results/internal/resultDataMethods.js.map +1 -1
- package/esm/base/results/internal/resultMetaMethods.js +60 -68
- package/esm/base/results/internal/resultMetaMethods.js.map +1 -1
- package/esm/base/results/internal/utils.js +1 -1
- package/esm/base/results/internal/utils.js.map +1 -1
- package/esm/base/vis/DrillEvents.js +2 -2
- package/esm/base/vis/DrillEvents.js.map +1 -1
- package/esm/base/vis/drilling.d.ts.map +1 -1
- package/esm/base/vis/drilling.js +14 -20
- package/esm/base/vis/drilling.js.map +1 -1
- package/esm/base/vis/export.js +10 -10
- package/esm/base/vis/export.js.map +1 -1
- package/esm/base/vis/visualizationTypes.js +1 -1
- package/esm/base/vis/visualizationTypes.js.map +1 -1
- package/esm/execution/DataViewLoader.js +32 -78
- package/esm/execution/DataViewLoader.js.map +1 -1
- package/esm/execution/Execute.js +29 -30
- package/esm/execution/Execute.js.map +1 -1
- package/esm/execution/ExecuteInsight.js +49 -58
- package/esm/execution/ExecuteInsight.js.map +1 -1
- package/esm/execution/RawExecute.js +24 -24
- package/esm/execution/RawExecute.js.map +1 -1
- package/esm/execution/createExecution.js +12 -12
- package/esm/execution/createExecution.js.map +1 -1
- package/esm/execution/useDataExport.js +15 -18
- package/esm/execution/useDataExport.js.map +1 -1
- package/esm/execution/useDataView.js +17 -22
- package/esm/execution/useDataView.js.map +1 -1
- package/esm/execution/useExecution.js +10 -11
- package/esm/execution/useExecution.js.map +1 -1
- package/esm/execution/useExecutionDataView.js +18 -18
- package/esm/execution/useExecutionDataView.js.map +1 -1
- package/esm/execution/useInsight.js +8 -8
- package/esm/execution/useInsight.js.map +1 -1
- package/esm/execution/useInsightDataView.js +23 -24
- package/esm/execution/useInsightDataView.js.map +1 -1
- package/esm/execution/withExecution.js +24 -53
- package/esm/execution/withExecution.js.map +1 -1
- package/esm/execution/withExecutionLoading.js +82 -100
- package/esm/execution/withExecutionLoading.js.map +1 -1
- package/esm/index.d.ts +0 -1
- package/esm/index.d.ts.map +1 -1
- package/esm/index.js +1 -3
- package/esm/index.js.map +1 -1
- package/esm/kpi/FormattedNumber.js +5 -6
- package/esm/kpi/FormattedNumber.js.map +1 -1
- package/esm/kpi/Kpi.js +17 -19
- package/esm/kpi/Kpi.js.map +1 -1
- package/esm/kpi/KpiError.js +2 -2
- package/esm/kpi/KpiError.js.map +1 -1
- package/esm/locales.js +1 -1
- package/esm/locales.js.map +1 -1
- package/package.json +9 -14
- package/dist/polyfills.d.ts +0 -3
- package/dist/polyfills.d.ts.map +0 -1
- package/dist/polyfills.js +0 -8
- package/dist/polyfills.js.map +0 -1
- package/esm/polyfills.d.ts +0 -3
- package/esm/polyfills.d.ts.map +0 -1
- package/esm/polyfills.js +0 -6
- package/esm/polyfills.js.map +0 -1
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { __assign, __read } from "tslib";
|
|
2
1
|
import { useBackend, useResolveValuesWithPlaceholders, useWorkspace, } from "../base";
|
|
3
2
|
import { createExecution } from "./createExecution";
|
|
4
3
|
/**
|
|
@@ -11,15 +10,15 @@ import { createExecution } from "./createExecution";
|
|
|
11
10
|
* @beta
|
|
12
11
|
*/
|
|
13
12
|
export function useExecution(config) {
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
return createExecution(
|
|
18
|
-
workspace
|
|
19
|
-
seriesBy
|
|
20
|
-
slicesBy
|
|
21
|
-
totals
|
|
22
|
-
filters
|
|
23
|
-
sortBy
|
|
13
|
+
const backend = useBackend(config.backend);
|
|
14
|
+
const workspace = useWorkspace(config.workspace);
|
|
15
|
+
const [seriesBy, slicesBy, totals, filters, sortBy] = useResolveValuesWithPlaceholders([config.seriesBy, config.slicesBy, config.totals, config.filters, config.sortBy], config.placeholdersResolutionContext);
|
|
16
|
+
return createExecution(Object.assign(Object.assign({}, config), { backend,
|
|
17
|
+
workspace,
|
|
18
|
+
seriesBy,
|
|
19
|
+
slicesBy,
|
|
20
|
+
totals,
|
|
21
|
+
filters,
|
|
22
|
+
sortBy }));
|
|
24
23
|
}
|
|
25
24
|
//# sourceMappingURL=useExecution.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useExecution.js","sourceRoot":"","sources":["../../src/execution/useExecution.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"useExecution.js","sourceRoot":"","sources":["../../src/execution/useExecution.ts"],"names":[],"mappings":"AAEA,OAAO,EACH,UAAU,EACV,gCAAgC,EAChC,YAAY,GAMf,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAoEpD;;;;;;;;GAQG;AACH,MAAM,UAAU,YAAY,CAAC,MAA2B;IACpD,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAC3C,MAAM,SAAS,GAAG,YAAY,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IACjD,MAAM,CAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,GAAG,gCAAgC,CAClF,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,EAChF,MAAM,CAAC,6BAA6B,CACvC,CAAC;IAEF,OAAO,eAAe,iCACf,MAAM,KACT,OAAO;QACP,SAAS;QACT,QAAQ;QACR,QAAQ;QACR,MAAM;QACN,OAAO;QACP,MAAM,IACR,CAAC;AACP,CAAC"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { __assign, __read, __spread } from "tslib";
|
|
2
1
|
import { useBackendStrict, useWorkspaceStrict, useResolveValuesWithPlaceholders, } from "../base";
|
|
3
2
|
import { useDataView } from "./useDataView";
|
|
4
3
|
import isEmpty from "lodash/isEmpty";
|
|
@@ -17,31 +16,32 @@ function isExecutionConfiguration(obj) {
|
|
|
17
16
|
*/
|
|
18
17
|
export function useExecutionDataView(config, deps) {
|
|
19
18
|
var _a;
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
19
|
+
const { execution, window, onCancel, onError, onLoading, onPending, onSuccess } = config;
|
|
20
|
+
const backend = useBackendStrict(config.backend, "useExecutionDataView");
|
|
21
|
+
const workspace = useWorkspaceStrict(config.workspace, "useExecutionDataView");
|
|
22
|
+
const effectiveDeps = deps !== null && deps !== void 0 ? deps : [];
|
|
23
|
+
const propsToResolve = getExecutionConfigurationProps(config.execution);
|
|
24
|
+
const [seriesBy, slicesBy, totals, filters, sortBy] = useResolveValuesWithPlaceholders([
|
|
26
25
|
propsToResolve.seriesBy,
|
|
27
26
|
propsToResolve.slicesBy,
|
|
28
27
|
propsToResolve.totals,
|
|
29
28
|
propsToResolve.filters,
|
|
30
29
|
propsToResolve.sortBy,
|
|
31
|
-
], propsToResolve.placeholdersResolutionContext)
|
|
32
|
-
|
|
33
|
-
? createExecution(
|
|
34
|
-
totals
|
|
35
|
-
filters
|
|
36
|
-
sortBy
|
|
37
|
-
backend
|
|
38
|
-
workspace
|
|
30
|
+
], propsToResolve.placeholdersResolutionContext);
|
|
31
|
+
const preparedExecution = isExecutionConfiguration(execution)
|
|
32
|
+
? createExecution(Object.assign(Object.assign({}, execution), { seriesBy: seriesBy, slicesBy,
|
|
33
|
+
totals,
|
|
34
|
+
filters,
|
|
35
|
+
sortBy,
|
|
36
|
+
backend,
|
|
37
|
+
workspace }))
|
|
39
38
|
: execution;
|
|
40
|
-
return useDataView({ execution: preparedExecution, window
|
|
39
|
+
return useDataView({ execution: preparedExecution, window, onCancel, onError, onLoading, onPending, onSuccess }, [
|
|
41
40
|
backend,
|
|
42
41
|
workspace,
|
|
43
|
-
(_a = preparedExecution === null || preparedExecution === void 0 ? void 0 : preparedExecution.fingerprint()) !== null && _a !== void 0 ? _a : "__executionFingerprint__"
|
|
44
|
-
|
|
42
|
+
(_a = preparedExecution === null || preparedExecution === void 0 ? void 0 : preparedExecution.fingerprint()) !== null && _a !== void 0 ? _a : "__executionFingerprint__",
|
|
43
|
+
...effectiveDeps,
|
|
44
|
+
]);
|
|
45
45
|
}
|
|
46
46
|
/**
|
|
47
47
|
* @internal
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useExecutionDataView.js","sourceRoot":"","sources":["../../src/execution/useExecutionDataView.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"useExecutionDataView.js","sourceRoot":"","sources":["../../src/execution/useExecutionDataView.ts"],"names":[],"mappings":"AAGA,OAAO,EAGH,gBAAgB,EAChB,kBAAkB,EAElB,gCAAgC,GAOnC,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,OAAO,MAAM,gBAAgB,CAAC;AACrC,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAmDpD;;GAEG;AACH,SAAS,wBAAwB,CAAC,GAAY;;IAC1C,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,QAAE,GAA+B,0CAAE,QAAQ,CAAA,CAAC;AACzE,CAAC;AAgDD;;;;GAIG;AACH,MAAM,UAAU,oBAAoB,CAChC,MAAmE,EACnE,IAA2B;;IAE3B,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC;IACzF,MAAM,OAAO,GAAG,gBAAgB,CAAC,MAAM,CAAC,OAAO,EAAE,sBAAsB,CAAC,CAAC;IACzE,MAAM,SAAS,GAAG,kBAAkB,CAAC,MAAM,CAAC,SAAS,EAAE,sBAAsB,CAAC,CAAC;IAC/E,MAAM,aAAa,GAAG,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,EAAE,CAAC;IAEjC,MAAM,cAAc,GAAG,8BAA8B,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IACxE,MAAM,CAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,GAAG,gCAAgC,CAClF;QACI,cAAc,CAAC,QAAQ;QACvB,cAAc,CAAC,QAAQ;QACvB,cAAc,CAAC,MAAM;QACrB,cAAc,CAAC,OAAO;QACtB,cAAc,CAAC,MAAM;KACxB,EACD,cAAc,CAAC,6BAA6B,CAC/C,CAAC;IAEF,MAAM,iBAAiB,GAAG,wBAAwB,CAAC,SAAS,CAAC;QACzD,CAAC,CAAC,eAAe,iCACR,SAAS,KACZ,QAAQ,EAAE,QAAS,EACnB,QAAQ;YACR,MAAM;YACN,OAAO;YACP,MAAM;YACN,OAAO;YACP,SAAS,IACX;QACJ,CAAC,CAAC,SAAS,CAAC;IAEhB,OAAO,WAAW,CACd,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,EAC5F;QACI,OAAO;QACP,SAAS;cACT,iBAAiB,aAAjB,iBAAiB,uBAAjB,iBAAiB,CAAE,WAAW,qCAAM,0BAA0B;QAC9D,GAAG,aAAa;KACnB,CACJ,CAAC;AACN,CAAC;AAED;;GAEG;AACH,SAAS,8BAA8B,CACnC,SAAwD;IAExD,IAAI,wBAAwB,CAAC,SAAS,CAAC,EAAE;QACrC,OAAO,SAAS,CAAC;KACpB;IAED,OAAO,EAAE,CAAC;AACd,CAAC"}
|
|
@@ -1,18 +1,18 @@
|
|
|
1
|
-
import { __read, __spread } from "tslib";
|
|
2
1
|
import { objRefToString } from "@gooddata/sdk-model";
|
|
3
2
|
import { useBackendStrict, useWorkspaceStrict, useCancelablePromise, } from "../base";
|
|
4
3
|
/**
|
|
5
4
|
* @internal
|
|
6
5
|
*/
|
|
7
6
|
export function useInsight(config, deps) {
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
return useCancelablePromise({ promise
|
|
7
|
+
const { insight } = config;
|
|
8
|
+
const backend = useBackendStrict(config.backend, "useInsight");
|
|
9
|
+
const workspace = useWorkspaceStrict(config.workspace, "useInsight");
|
|
10
|
+
const promise = insight ? () => backend.workspace(workspace).insights().getInsight(insight) : null;
|
|
11
|
+
return useCancelablePromise({ promise }, [
|
|
13
12
|
backend,
|
|
14
13
|
workspace,
|
|
15
|
-
insight ? objRefToString(insight) : "__insightRef__"
|
|
16
|
-
|
|
14
|
+
insight ? objRefToString(insight) : "__insightRef__",
|
|
15
|
+
...(deps !== null && deps !== void 0 ? deps : []),
|
|
16
|
+
]);
|
|
17
17
|
}
|
|
18
18
|
//# sourceMappingURL=useInsight.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useInsight.js","sourceRoot":"","sources":["../../src/execution/useInsight.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"useInsight.js","sourceRoot":"","sources":["../../src/execution/useInsight.ts"],"names":[],"mappings":"AAEA,OAAO,EAAoB,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACvE,OAAO,EACH,gBAAgB,EAChB,kBAAkB,EAClB,oBAAoB,GAGvB,MAAM,SAAS,CAAC;AA4BjB;;GAEG;AACH,MAAM,UAAU,UAAU,CACtB,MAAyB,EACzB,IAA2B;IAE3B,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC;IAC3B,MAAM,OAAO,GAAG,gBAAgB,CAAC,MAAM,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IAC/D,MAAM,SAAS,GAAG,kBAAkB,CAAC,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;IACrE,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,QAAQ,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAEnG,OAAO,oBAAoB,CAAC,EAAE,OAAO,EAAE,EAAE;QACrC,OAAO;QACP,SAAS;QACT,OAAO,CAAC,CAAC,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,gBAAgB;QACpD,GAAG,CAAC,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,EAAE,CAAC;KAClB,CAAC,CAAC;AACP,CAAC"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { __read, __spread } from "tslib";
|
|
2
1
|
import { useBackendStrict, useWorkspaceStrict, resolveUseCancelablePromisesStatus, resolveUseCancelablePromisesError, } from "../base";
|
|
3
2
|
import { useExecutionDataView } from "./useExecutionDataView";
|
|
4
3
|
import { useInsight } from "./useInsight";
|
|
@@ -8,40 +7,40 @@ import { useInsight } from "./useInsight";
|
|
|
8
7
|
* @public
|
|
9
8
|
*/
|
|
10
9
|
export function useInsightDataView(config, deps) {
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
10
|
+
const { insight: insightRef, sorts, dateFormat, dimensions, filters, window, executeByReference, onCancel, onError, onLoading, onPending, onSuccess, } = config;
|
|
11
|
+
const backend = useBackendStrict(config.backend, "useInsightDataView");
|
|
12
|
+
const workspace = useWorkspaceStrict(config.workspace, "useInsightDataView");
|
|
13
|
+
const effectiveDeps = deps !== null && deps !== void 0 ? deps : [];
|
|
14
|
+
const insightPromise = useInsight({ insight: insightRef, backend, workspace }, effectiveDeps);
|
|
15
|
+
const executionFactory = backend.workspace(workspace).execution();
|
|
16
|
+
const executeFn = (executeByReference ? executionFactory.forInsightByRef : executionFactory.forInsight).bind(executionFactory);
|
|
17
|
+
let insightExecution = insightPromise.result && executeFn(insightPromise.result, filters);
|
|
19
18
|
if (insightExecution) {
|
|
20
19
|
if (sorts) {
|
|
21
|
-
|
|
22
|
-
insightExecution = insightExecution.withSorting
|
|
20
|
+
const resolvedSorts = typeof sorts === "function" ? sorts(insightExecution.definition) : sorts;
|
|
21
|
+
insightExecution = insightExecution.withSorting(...resolvedSorts);
|
|
23
22
|
}
|
|
24
23
|
if (dimensions) {
|
|
25
|
-
|
|
26
|
-
insightExecution = insightExecution.withDimensions
|
|
24
|
+
const resolvedDimensions = typeof dimensions === "function" ? dimensions(insightExecution.definition) : dimensions;
|
|
25
|
+
insightExecution = insightExecution.withDimensions(...resolvedDimensions);
|
|
27
26
|
}
|
|
28
27
|
if (dateFormat) {
|
|
29
|
-
|
|
28
|
+
const resolvedDateFormat = typeof dateFormat === "function" ? dateFormat(insightExecution.definition) : dateFormat;
|
|
30
29
|
insightExecution = insightExecution.withDateFormat(resolvedDateFormat);
|
|
31
30
|
}
|
|
32
31
|
}
|
|
33
|
-
|
|
32
|
+
const executionDataViewPromise = useExecutionDataView({
|
|
34
33
|
execution: insightExecution,
|
|
35
|
-
window
|
|
36
|
-
backend
|
|
37
|
-
workspace
|
|
38
|
-
onCancel
|
|
39
|
-
onError
|
|
40
|
-
onLoading
|
|
41
|
-
onPending
|
|
42
|
-
onSuccess
|
|
34
|
+
window,
|
|
35
|
+
backend,
|
|
36
|
+
workspace,
|
|
37
|
+
onCancel,
|
|
38
|
+
onError,
|
|
39
|
+
onLoading,
|
|
40
|
+
onPending,
|
|
41
|
+
onSuccess,
|
|
43
42
|
}, deps);
|
|
44
|
-
|
|
43
|
+
const cancelablePromises = [insightPromise, executionDataViewPromise];
|
|
45
44
|
return {
|
|
46
45
|
result: executionDataViewPromise.result,
|
|
47
46
|
error: resolveUseCancelablePromisesError(cancelablePromises),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useInsightDataView.js","sourceRoot":"","sources":["../../src/execution/useInsightDataView.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"useInsightDataView.js","sourceRoot":"","sources":["../../src/execution/useInsightDataView.ts"],"names":[],"mappings":"AAGA,OAAO,EACH,gBAAgB,EAChB,kBAAkB,EAClB,kCAAkC,EAClC,iCAAiC,GAKpC,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAE9D,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAwF1C;;;;GAIG;AACH,MAAM,UAAU,kBAAkB,CAC9B,MAA+D,EAC/D,IAA2B;IAE3B,MAAM,EACF,OAAO,EAAE,UAAU,EACnB,KAAK,EACL,UAAU,EACV,UAAU,EACV,OAAO,EACP,MAAM,EACN,kBAAkB,EAClB,QAAQ,EACR,OAAO,EACP,SAAS,EACT,SAAS,EACT,SAAS,GACZ,GAAG,MAAM,CAAC;IACX,MAAM,OAAO,GAAG,gBAAgB,CAAC,MAAM,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAC;IACvE,MAAM,SAAS,GAAG,kBAAkB,CAAC,MAAM,CAAC,SAAS,EAAE,oBAAoB,CAAC,CAAC;IAC7E,MAAM,aAAa,GAAG,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,EAAE,CAAC;IAEjC,MAAM,cAAc,GAAG,UAAU,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE,aAAa,CAAC,CAAC;IAE9F,MAAM,gBAAgB,GAAG,OAAO,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,SAAS,EAAE,CAAC;IAElE,MAAM,SAAS,GAAG,CACd,kBAAkB,CAAC,CAAC,CAAC,gBAAgB,CAAC,eAAe,CAAC,CAAC,CAAC,gBAAgB,CAAC,UAAU,CACtF,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IAEzB,IAAI,gBAAgB,GAAG,cAAc,CAAC,MAAM,IAAI,SAAS,CAAC,cAAc,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAE1F,IAAI,gBAAgB,EAAE;QAClB,IAAI,KAAK,EAAE;YACP,MAAM,aAAa,GAAG,OAAO,KAAK,KAAK,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;YAC/F,gBAAgB,GAAG,gBAAgB,CAAC,WAAW,CAAC,GAAG,aAAa,CAAC,CAAC;SACrE;QACD,IAAI,UAAU,EAAE;YACZ,MAAM,kBAAkB,GACpB,OAAO,UAAU,KAAK,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC;YAC5F,gBAAgB,GAAG,gBAAgB,CAAC,cAAc,CAAC,GAAG,kBAAkB,CAAC,CAAC;SAC7E;QACD,IAAI,UAAU,EAAE;YACZ,MAAM,kBAAkB,GACpB,OAAO,UAAU,KAAK,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC;YAC5F,gBAAgB,GAAG,gBAAgB,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAC;SAC1E;KACJ;IAED,MAAM,wBAAwB,GAAG,oBAAoB,CACjD;QACI,SAAS,EAAE,gBAAgB;QAC3B,MAAM;QACN,OAAO;QACP,SAAS;QACT,QAAQ;QACR,OAAO;QACP,SAAS;QACT,SAAS;QACT,SAAS;KACZ,EACD,IAAI,CACP,CAAC;IAEF,MAAM,kBAAkB,GAAG,CAAC,cAAc,EAAE,wBAAwB,CAAC,CAAC;IAEtE,OAAO;QACH,MAAM,EAAE,wBAAwB,CAAC,MAAM;QACvC,KAAK,EAAE,iCAAiC,CAAC,kBAAkB,CAAC;QAC5D,MAAM,EAAE,kCAAkC,CAAC,kBAAkB,CAAC;KACF,CAAC;AACrE,CAAC"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { __awaiter, __generator } from "tslib";
|
|
2
1
|
// (C) 2019-2022 GoodData Corporation
|
|
3
2
|
import { isNoDataError } from "@gooddata/sdk-backend-spi";
|
|
4
3
|
import { withExecutionLoading, } from "./withExecutionLoading";
|
|
@@ -11,59 +10,31 @@ import { DataViewFacade } from "../base";
|
|
|
11
10
|
* @internal
|
|
12
11
|
*/
|
|
13
12
|
export function withExecution(params) {
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
_c.label = 3;
|
|
31
|
-
case 3:
|
|
32
|
-
_execution = _a;
|
|
33
|
-
return [4 /*yield*/, _execution.execute()];
|
|
34
|
-
case 4:
|
|
35
|
-
executionResult = _c.sent();
|
|
36
|
-
_c.label = 5;
|
|
37
|
-
case 5:
|
|
38
|
-
_c.trys.push([5, 10, , 11]);
|
|
39
|
-
if (!!window) return [3 /*break*/, 7];
|
|
40
|
-
return [4 /*yield*/, executionResult.readAll()];
|
|
41
|
-
case 6:
|
|
42
|
-
_b = _c.sent();
|
|
43
|
-
return [3 /*break*/, 9];
|
|
44
|
-
case 7: return [4 /*yield*/, executionResult.readWindow(window.offset, window.size)];
|
|
45
|
-
case 8:
|
|
46
|
-
_b = _c.sent();
|
|
47
|
-
_c.label = 9;
|
|
48
|
-
case 9:
|
|
49
|
-
dataView = _b;
|
|
50
|
-
return [2 /*return*/, DataViewFacade.for(dataView)];
|
|
51
|
-
case 10:
|
|
52
|
-
err_1 = _c.sent();
|
|
53
|
-
// do not treat no data as error here to give the user a chance to decide if no data is ok or not
|
|
54
|
-
if (isNoDataError(err_1) && err_1.dataView) {
|
|
55
|
-
return [2 /*return*/, DataViewFacade.for(err_1.dataView)];
|
|
56
|
-
}
|
|
57
|
-
throw err_1;
|
|
58
|
-
case 11: return [2 /*return*/];
|
|
13
|
+
const { execution, events, loadOnMount, shouldRefetch, window, exportTitle } = params;
|
|
14
|
+
return (WrappedComponent) => {
|
|
15
|
+
const withLoadingParams = {
|
|
16
|
+
promiseFactory: async (props, window) => {
|
|
17
|
+
const _execution = typeof execution === "function" ? await execution(props) : execution;
|
|
18
|
+
const executionResult = await _execution.execute();
|
|
19
|
+
try {
|
|
20
|
+
const dataView = !window
|
|
21
|
+
? await executionResult.readAll()
|
|
22
|
+
: await executionResult.readWindow(window.offset, window.size);
|
|
23
|
+
return DataViewFacade.for(dataView);
|
|
24
|
+
}
|
|
25
|
+
catch (err) {
|
|
26
|
+
// do not treat no data as error here to give the user a chance to decide if no data is ok or not
|
|
27
|
+
if (isNoDataError(err) && err.dataView) {
|
|
28
|
+
return DataViewFacade.for(err.dataView);
|
|
59
29
|
}
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
30
|
+
throw err;
|
|
31
|
+
}
|
|
32
|
+
},
|
|
33
|
+
exportTitle,
|
|
34
|
+
loadOnMount,
|
|
35
|
+
events,
|
|
36
|
+
shouldRefetch,
|
|
37
|
+
window,
|
|
67
38
|
};
|
|
68
39
|
return withExecutionLoading(withLoadingParams)(WrappedComponent);
|
|
69
40
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"withExecution.js","sourceRoot":"","sources":["../../src/execution/withExecution.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"withExecution.js","sourceRoot":"","sources":["../../src/execution/withExecution.ts"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,OAAO,EAAsB,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC9E,OAAO,EACH,oBAAoB,GAIvB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AA0DzC;;;;;;GAMG;AACH,MAAM,UAAU,aAAa,CACzB,MAAyB;IAEzB,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,CAAC;IAEtF,OAAO,CAAC,gBAA4D,EAAE,EAAE;QACpE,MAAM,iBAAiB,GAAG;YACtB,cAAc,EAAE,KAAK,EAAE,KAAQ,EAAE,MAAuB,EAAE,EAAE;gBACxD,MAAM,UAAU,GAAG,OAAO,SAAS,KAAK,UAAU,CAAC,CAAC,CAAC,MAAM,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;gBACxF,MAAM,eAAe,GAAG,MAAM,UAAU,CAAC,OAAO,EAAE,CAAC;gBACnD,IAAI;oBACA,MAAM,QAAQ,GAAG,CAAC,MAAM;wBACpB,CAAC,CAAC,MAAM,eAAe,CAAC,OAAO,EAAE;wBACjC,CAAC,CAAC,MAAM,eAAe,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;oBAEnE,OAAO,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;iBACvC;gBAAC,OAAO,GAAG,EAAE;oBACV,iGAAiG;oBACjG,IAAI,aAAa,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,QAAQ,EAAE;wBACpC,OAAO,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,QAAS,CAAC,CAAC;qBAC5C;oBAED,MAAM,GAAG,CAAC;iBACb;YACL,CAAC;YACD,WAAW;YACX,WAAW;YACX,MAAM;YACN,aAAa;YACb,MAAM;SACT,CAAC;QAEF,OAAO,oBAAoB,CAAC,iBAAiB,CAAC,CAAC,gBAAgB,CAAC,CAAC;IACrE,CAAC,CAAC;AACN,CAAC"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { __assign, __awaiter, __extends, __generator } from "tslib";
|
|
2
1
|
// (C) 2019-2022 GoodData Corporation
|
|
3
2
|
import React from "react";
|
|
4
3
|
import noop from "lodash/noop";
|
|
@@ -13,117 +12,101 @@ import { CancelledSdkError, convertError, createExportErrorFunction, createExpor
|
|
|
13
12
|
* @internal
|
|
14
13
|
*/
|
|
15
14
|
export function withExecutionLoading(params) {
|
|
16
|
-
|
|
17
|
-
return
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
_this.state = {
|
|
15
|
+
const { promiseFactory, loadOnMount = true, events = {}, shouldRefetch = () => false, window, exportTitle, } = params;
|
|
16
|
+
return (WrappedComponent) => {
|
|
17
|
+
class WithLoading extends React.Component {
|
|
18
|
+
constructor(props) {
|
|
19
|
+
super(props);
|
|
20
|
+
this.isWithExecutionLoadingUnmounted = false;
|
|
21
|
+
this.state = {
|
|
24
22
|
error: undefined,
|
|
25
23
|
isLoading: false,
|
|
26
24
|
result: undefined,
|
|
27
25
|
};
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
return _this;
|
|
26
|
+
this.fetch = this.fetch.bind(this);
|
|
27
|
+
this.startLoading = this.startLoading.bind(this);
|
|
28
|
+
this.setError = this.setError.bind(this);
|
|
29
|
+
this.setResult = this.setResult.bind(this);
|
|
30
|
+
this.getEvents = this.getEvents.bind(this);
|
|
34
31
|
}
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
32
|
+
getEvents() {
|
|
33
|
+
const _events = typeof events === "function" ? events(this.props) : events;
|
|
34
|
+
const { onError = noop, onLoadingChanged = noop, onLoadingFinish = noop, onLoadingStart = noop, onExportReady = noop, } = _events;
|
|
38
35
|
return {
|
|
39
|
-
onError
|
|
40
|
-
onLoadingChanged
|
|
41
|
-
onLoadingFinish
|
|
42
|
-
onLoadingStart
|
|
43
|
-
onExportReady
|
|
36
|
+
onError,
|
|
37
|
+
onLoadingChanged,
|
|
38
|
+
onLoadingFinish,
|
|
39
|
+
onLoadingStart,
|
|
40
|
+
onExportReady,
|
|
44
41
|
};
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
|
|
42
|
+
}
|
|
43
|
+
startLoading() {
|
|
44
|
+
const { onLoadingStart, onLoadingChanged } = this.getEvents();
|
|
48
45
|
onLoadingStart(this.props);
|
|
49
46
|
onLoadingChanged(true, this.props);
|
|
50
47
|
this.effectiveProps = undefined;
|
|
51
|
-
this.setState(
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
|
|
48
|
+
this.setState((state) => (Object.assign(Object.assign({}, state), { isLoading: true, error: undefined, result: undefined })));
|
|
49
|
+
}
|
|
50
|
+
setError(error) {
|
|
51
|
+
const { onError, onLoadingChanged, onExportReady } = this.getEvents();
|
|
55
52
|
onError(error, this.props);
|
|
56
53
|
onLoadingChanged(false, this.props);
|
|
57
54
|
onExportReady(createExportErrorFunction(error));
|
|
58
|
-
this.setState(
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
55
|
+
this.setState((state) => (Object.assign(Object.assign({}, state), { isLoading: false, error })));
|
|
56
|
+
}
|
|
57
|
+
setResult(result) {
|
|
58
|
+
const { onLoadingFinish, onLoadingChanged, onExportReady } = this.getEvents();
|
|
59
|
+
const title = typeof exportTitle === "function" ? exportTitle(this.props) : exportTitle;
|
|
63
60
|
onLoadingFinish(result, this.props);
|
|
64
61
|
onLoadingChanged(false, this.props);
|
|
65
62
|
onExportReady(createExportFunction(result.result(), title));
|
|
66
63
|
this.effectiveProps = this.props;
|
|
67
|
-
this.setState(
|
|
68
|
-
}
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
// We throw cancel error immediately on refetch, when cancelablePromise was not fulfilled,
|
|
99
|
-
// but CancelablePromise throw cancel error after promise resolution, so here
|
|
100
|
-
// we don't care about it anymore.
|
|
101
|
-
if (!this.isWithExecutionLoadingUnmounted && !isCancelError(err_1)) {
|
|
102
|
-
sdkError = convertError(err_1);
|
|
103
|
-
this.setError(sdkError);
|
|
104
|
-
}
|
|
105
|
-
return [3 /*break*/, 4];
|
|
106
|
-
case 4: return [2 /*return*/];
|
|
107
|
-
}
|
|
108
|
-
});
|
|
109
|
-
});
|
|
110
|
-
};
|
|
111
|
-
WithLoading.prototype.isStaleResult = function () {
|
|
64
|
+
this.setState((state) => (Object.assign(Object.assign({}, state), { isLoading: false, error: undefined, result })));
|
|
65
|
+
}
|
|
66
|
+
async fetch() {
|
|
67
|
+
if (this.cancelablePromise) {
|
|
68
|
+
this.cancelablePromise.cancel();
|
|
69
|
+
// On refetch, when cancelablePromise was not fulfilled, throw cancel error immediately
|
|
70
|
+
if (!this.cancelablePromise.getHasFulfilled()) {
|
|
71
|
+
this.setError(new CancelledSdkError());
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
this.startLoading();
|
|
75
|
+
const readWindow = typeof window === "function" ? window(this.props) : window;
|
|
76
|
+
const promise = promiseFactory(this.props, readWindow);
|
|
77
|
+
this.cancelablePromise = makeCancelable(promise);
|
|
78
|
+
try {
|
|
79
|
+
const result = await this.cancelablePromise.promise;
|
|
80
|
+
if (!this.isWithExecutionLoadingUnmounted) {
|
|
81
|
+
this.setResult(result);
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
catch (err) {
|
|
85
|
+
// We throw cancel error immediately on refetch, when cancelablePromise was not fulfilled,
|
|
86
|
+
// but CancelablePromise throw cancel error after promise resolution, so here
|
|
87
|
+
// we don't care about it anymore.
|
|
88
|
+
if (!this.isWithExecutionLoadingUnmounted && !isCancelError(err)) {
|
|
89
|
+
const sdkError = convertError(err);
|
|
90
|
+
this.setError(sdkError);
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
isStaleResult() {
|
|
112
95
|
return this.effectiveProps !== undefined && shouldRefetch(this.props, this.effectiveProps);
|
|
113
|
-
}
|
|
114
|
-
|
|
96
|
+
}
|
|
97
|
+
componentDidMount() {
|
|
115
98
|
this.isWithExecutionLoadingUnmounted = false;
|
|
116
|
-
|
|
99
|
+
const _loadOnMount = typeof loadOnMount === "function" ? loadOnMount(this.props) : loadOnMount;
|
|
117
100
|
if (_loadOnMount) {
|
|
118
101
|
this.fetch();
|
|
119
102
|
}
|
|
120
|
-
}
|
|
121
|
-
|
|
103
|
+
}
|
|
104
|
+
componentDidUpdate(prevProps) {
|
|
122
105
|
if (shouldRefetch(prevProps, this.props)) {
|
|
123
106
|
this.fetch();
|
|
124
107
|
}
|
|
125
|
-
}
|
|
126
|
-
|
|
108
|
+
}
|
|
109
|
+
componentWillUnmount() {
|
|
127
110
|
this.isWithExecutionLoadingUnmounted = true;
|
|
128
111
|
if (this.cancelablePromise) {
|
|
129
112
|
this.cancelablePromise.cancel();
|
|
@@ -131,9 +114,9 @@ export function withExecutionLoading(params) {
|
|
|
131
114
|
this.setError(new CancelledSdkError());
|
|
132
115
|
}
|
|
133
116
|
}
|
|
134
|
-
}
|
|
135
|
-
|
|
136
|
-
|
|
117
|
+
}
|
|
118
|
+
render() {
|
|
119
|
+
const { result, isLoading, error } = this.state;
|
|
137
120
|
if (this.isStaleResult()) {
|
|
138
121
|
/*
|
|
139
122
|
* When props update, this render will be called first and state will still contain
|
|
@@ -145,24 +128,23 @@ export function withExecutionLoading(params) {
|
|
|
145
128
|
* assumptions that the result is always up to date and try access data that is just not
|
|
146
129
|
* there yet.
|
|
147
130
|
*/
|
|
148
|
-
|
|
131
|
+
const executionResult = {
|
|
149
132
|
result: undefined,
|
|
150
133
|
isLoading: true,
|
|
151
134
|
error: undefined,
|
|
152
135
|
reload: this.fetch,
|
|
153
136
|
};
|
|
154
|
-
return React.createElement(WrappedComponent,
|
|
137
|
+
return React.createElement(WrappedComponent, Object.assign({}, this.props, executionResult));
|
|
155
138
|
}
|
|
156
|
-
|
|
157
|
-
result
|
|
158
|
-
isLoading
|
|
159
|
-
error
|
|
139
|
+
const executionResult = {
|
|
140
|
+
result,
|
|
141
|
+
isLoading,
|
|
142
|
+
error,
|
|
160
143
|
reload: this.fetch,
|
|
161
144
|
};
|
|
162
|
-
return React.createElement(WrappedComponent,
|
|
163
|
-
}
|
|
164
|
-
|
|
165
|
-
}(React.Component));
|
|
145
|
+
return React.createElement(WrappedComponent, Object.assign({}, this.props, executionResult));
|
|
146
|
+
}
|
|
147
|
+
}
|
|
166
148
|
hoistNonReactStatics(WithLoading, WrappedComponent);
|
|
167
149
|
return WithLoading;
|
|
168
150
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"withExecutionLoading.js","sourceRoot":"","sources":["../../src/execution/withExecutionLoading.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"withExecutionLoading.js","sourceRoot":"","sources":["../../src/execution/withExecutionLoading.tsx"],"names":[],"mappings":"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"}
|