@gooddata/sdk-backend-base 8.13.0-alpha.9 → 9.0.0-alpha.2
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/cachingBackend/index.d.ts +2 -2
- package/dist/cachingBackend/index.d.ts.map +1 -1
- package/dist/cachingBackend/index.js +310 -386
- package/dist/cachingBackend/index.js.map +1 -1
- package/dist/convertors/fromBackend/afm/result.d.ts +1 -1
- package/dist/convertors/fromBackend/afm/result.d.ts.map +1 -1
- package/dist/convertors/fromBackend/afm/result.js +3 -3
- package/dist/convertors/fromBackend/afm/result.js.map +1 -1
- package/dist/customBackend/config.d.ts +9 -9
- package/dist/customBackend/config.d.ts.map +1 -1
- package/dist/customBackend/execution.js +77 -92
- package/dist/customBackend/execution.js.map +1 -1
- package/dist/customBackend/index.d.ts +1 -1
- package/dist/customBackend/index.d.ts.map +1 -1
- package/dist/customBackend/index.js +78 -114
- package/dist/customBackend/index.js.map +1 -1
- package/dist/customBackend/workspace.js +39 -40
- package/dist/customBackend/workspace.js.map +1 -1
- package/dist/decoratedBackend/attributes.js +21 -22
- package/dist/decoratedBackend/attributes.js.map +1 -1
- package/dist/decoratedBackend/catalog.d.ts +1 -1
- package/dist/decoratedBackend/catalog.d.ts.map +1 -1
- package/dist/decoratedBackend/catalog.js +38 -50
- package/dist/decoratedBackend/catalog.js.map +1 -1
- package/dist/decoratedBackend/dashboards.js +61 -62
- package/dist/decoratedBackend/dashboards.js.map +1 -1
- package/dist/decoratedBackend/elements.js +47 -70
- package/dist/decoratedBackend/elements.js.map +1 -1
- package/dist/decoratedBackend/execution.d.ts +2 -1
- package/dist/decoratedBackend/execution.d.ts.map +1 -1
- package/dist/decoratedBackend/execution.js +63 -79
- package/dist/decoratedBackend/execution.js.map +1 -1
- package/dist/decoratedBackend/index.d.ts +7 -7
- package/dist/decoratedBackend/index.d.ts.map +1 -1
- package/dist/decoratedBackend/index.js +91 -105
- package/dist/decoratedBackend/index.js.map +1 -1
- package/dist/decoratedBackend/securitySettings.js +7 -8
- package/dist/decoratedBackend/securitySettings.js.map +1 -1
- package/dist/decoratedBackend/workspaceSettings.js +12 -26
- package/dist/decoratedBackend/workspaceSettings.js.map +1 -1
- package/dist/dummyBackend/index.d.ts +1 -1
- package/dist/dummyBackend/index.d.ts.map +1 -1
- package/dist/dummyBackend/index.js +369 -397
- package/dist/dummyBackend/index.js.map +1 -1
- package/dist/eventingBackend/index.d.ts +1 -1
- package/dist/eventingBackend/index.d.ts.map +1 -1
- package/dist/eventingBackend/index.js +44 -51
- package/dist/eventingBackend/index.js.map +1 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/ldmFactories/builder.d.ts +4 -4
- package/dist/ldmFactories/builder.d.ts.map +1 -1
- package/dist/ldmFactories/builder.js +15 -16
- package/dist/ldmFactories/builder.js.map +1 -1
- package/dist/ldmFactories/catalog/attributeFactory.js +27 -36
- package/dist/ldmFactories/catalog/attributeFactory.js.map +1 -1
- package/dist/ldmFactories/catalog/dateDatasetFactory.js +33 -47
- package/dist/ldmFactories/catalog/dateDatasetFactory.js.map +1 -1
- package/dist/ldmFactories/catalog/factFactory.js +14 -21
- package/dist/ldmFactories/catalog/factFactory.js.map +1 -1
- package/dist/ldmFactories/catalog/groupFactory.js +15 -27
- package/dist/ldmFactories/catalog/groupFactory.js.map +1 -1
- package/dist/ldmFactories/catalog/measureFactory.js +18 -27
- package/dist/ldmFactories/catalog/measureFactory.js.map +1 -1
- package/dist/ldmFactories/dashboard/insightWidgetFactory.js +22 -28
- package/dist/ldmFactories/dashboard/insightWidgetFactory.js.map +1 -1
- package/dist/ldmFactories/dashboard/kpiWidgetFactory.js +26 -35
- package/dist/ldmFactories/dashboard/kpiWidgetFactory.js.map +1 -1
- package/dist/ldmFactories/dashboard/widgetFactory.js +20 -39
- package/dist/ldmFactories/dashboard/widgetFactory.js.map +1 -1
- package/dist/ldmFactories/metadata/attributeFactory.js +14 -21
- package/dist/ldmFactories/metadata/attributeFactory.js.map +1 -1
- package/dist/ldmFactories/metadata/dashboardFactory.js +8 -15
- package/dist/ldmFactories/metadata/dashboardFactory.js.map +1 -1
- package/dist/ldmFactories/metadata/dataSetFactory.js +8 -15
- package/dist/ldmFactories/metadata/dataSetFactory.js.map +1 -1
- package/dist/ldmFactories/metadata/displayFormFactory.js +14 -21
- package/dist/ldmFactories/metadata/displayFormFactory.js.map +1 -1
- package/dist/ldmFactories/metadata/factFactory.js +8 -15
- package/dist/ldmFactories/metadata/factFactory.js.map +1 -1
- package/dist/ldmFactories/metadata/factory.js +17 -23
- package/dist/ldmFactories/metadata/factory.js.map +1 -1
- package/dist/ldmFactories/metadata/measureFactory.js +14 -21
- package/dist/ldmFactories/metadata/measureFactory.js.map +1 -1
- package/dist/ldmFactories/metadata/variableFactory.js +8 -15
- package/dist/ldmFactories/metadata/variableFactory.js.map +1 -1
- package/dist/normalizingBackend/index.d.ts +2 -2
- package/dist/normalizingBackend/index.d.ts.map +1 -1
- package/dist/normalizingBackend/index.js +79 -103
- package/dist/normalizingBackend/index.js.map +1 -1
- package/dist/normalizingBackend/normalizer.d.ts +2 -2
- package/dist/normalizingBackend/normalizer.d.ts.map +1 -1
- package/dist/normalizingBackend/normalizer.js +153 -160
- package/dist/normalizingBackend/normalizer.js.map +1 -1
- package/dist/toolkit/auth.d.ts +2 -2
- package/dist/toolkit/auth.d.ts.map +1 -1
- package/dist/toolkit/auth.js +47 -60
- package/dist/toolkit/auth.js.map +1 -1
- package/dist/toolkit/backend.d.ts +1 -1
- package/dist/toolkit/backend.d.ts.map +1 -1
- package/dist/toolkit/execution.js +41 -53
- package/dist/toolkit/execution.js.map +1 -1
- package/dist/toolkit/paging.d.ts +1 -1
- package/dist/toolkit/paging.d.ts.map +1 -1
- package/dist/toolkit/paging.js +77 -146
- package/dist/toolkit/paging.js.map +1 -1
- package/dist/toolkit/pluginUrlValidation.js +9 -9
- package/dist/toolkit/pluginUrlValidation.js.map +1 -1
- package/dist/workspaceSettingsBackend/index.d.ts +3 -3
- package/dist/workspaceSettingsBackend/index.d.ts.map +1 -1
- package/dist/workspaceSettingsBackend/index.js +23 -46
- package/dist/workspaceSettingsBackend/index.js.map +1 -1
- package/esm/cachingBackend/index.d.ts +2 -2
- package/esm/cachingBackend/index.d.ts.map +1 -1
- package/esm/cachingBackend/index.js +281 -358
- package/esm/cachingBackend/index.js.map +1 -1
- package/esm/convertors/fromBackend/afm/result.d.ts +1 -1
- package/esm/convertors/fromBackend/afm/result.d.ts.map +1 -1
- package/esm/convertors/fromBackend/afm/result.js +3 -3
- package/esm/convertors/fromBackend/afm/result.js.map +1 -1
- package/esm/customBackend/config.d.ts +9 -9
- package/esm/customBackend/config.d.ts.map +1 -1
- package/esm/customBackend/execution.js +72 -89
- package/esm/customBackend/execution.js.map +1 -1
- package/esm/customBackend/index.d.ts +1 -1
- package/esm/customBackend/index.d.ts.map +1 -1
- package/esm/customBackend/index.js +75 -112
- package/esm/customBackend/index.js.map +1 -1
- package/esm/customBackend/workspace.js +37 -39
- package/esm/customBackend/workspace.js.map +1 -1
- package/esm/decoratedBackend/attributes.js +21 -23
- package/esm/decoratedBackend/attributes.js.map +1 -1
- package/esm/decoratedBackend/catalog.d.ts +1 -1
- package/esm/decoratedBackend/catalog.d.ts.map +1 -1
- package/esm/decoratedBackend/catalog.js +36 -51
- package/esm/decoratedBackend/catalog.js.map +1 -1
- package/esm/decoratedBackend/dashboards.js +61 -63
- package/esm/decoratedBackend/dashboards.js.map +1 -1
- package/esm/decoratedBackend/elements.js +47 -73
- package/esm/decoratedBackend/elements.js.map +1 -1
- package/esm/decoratedBackend/execution.d.ts +2 -1
- package/esm/decoratedBackend/execution.d.ts.map +1 -1
- package/esm/decoratedBackend/execution.js +61 -81
- package/esm/decoratedBackend/execution.js.map +1 -1
- package/esm/decoratedBackend/index.d.ts +7 -7
- package/esm/decoratedBackend/index.d.ts.map +1 -1
- package/esm/decoratedBackend/index.js +88 -103
- package/esm/decoratedBackend/index.js.map +1 -1
- package/esm/decoratedBackend/securitySettings.js +7 -9
- package/esm/decoratedBackend/securitySettings.js.map +1 -1
- package/esm/decoratedBackend/workspaceSettings.js +12 -27
- package/esm/decoratedBackend/workspaceSettings.js.map +1 -1
- package/esm/dummyBackend/index.d.ts +1 -1
- package/esm/dummyBackend/index.d.ts.map +1 -1
- package/esm/dummyBackend/index.js +358 -387
- package/esm/dummyBackend/index.js.map +1 -1
- package/esm/eventingBackend/index.d.ts +1 -1
- package/esm/eventingBackend/index.d.ts.map +1 -1
- package/esm/eventingBackend/index.js +37 -45
- package/esm/eventingBackend/index.js.map +1 -1
- package/esm/ldmFactories/builder.d.ts +4 -4
- package/esm/ldmFactories/builder.d.ts.map +1 -1
- package/esm/ldmFactories/builder.js +14 -17
- package/esm/ldmFactories/builder.js.map +1 -1
- package/esm/ldmFactories/catalog/attributeFactory.js +15 -27
- package/esm/ldmFactories/catalog/attributeFactory.js.map +1 -1
- package/esm/ldmFactories/catalog/dateDatasetFactory.js +18 -37
- package/esm/ldmFactories/catalog/dateDatasetFactory.js.map +1 -1
- package/esm/ldmFactories/catalog/factFactory.js +5 -15
- package/esm/ldmFactories/catalog/factFactory.js.map +1 -1
- package/esm/ldmFactories/catalog/groupFactory.js +11 -27
- package/esm/ldmFactories/catalog/groupFactory.js.map +1 -1
- package/esm/ldmFactories/catalog/measureFactory.js +9 -21
- package/esm/ldmFactories/catalog/measureFactory.js.map +1 -1
- package/esm/ldmFactories/dashboard/insightWidgetFactory.js +16 -25
- package/esm/ldmFactories/dashboard/insightWidgetFactory.js.map +1 -1
- package/esm/ldmFactories/dashboard/kpiWidgetFactory.js +19 -31
- package/esm/ldmFactories/dashboard/kpiWidgetFactory.js.map +1 -1
- package/esm/ldmFactories/dashboard/widgetFactory.js +19 -39
- package/esm/ldmFactories/dashboard/widgetFactory.js.map +1 -1
- package/esm/ldmFactories/metadata/attributeFactory.js +9 -19
- package/esm/ldmFactories/metadata/attributeFactory.js.map +1 -1
- package/esm/ldmFactories/metadata/dashboardFactory.js +3 -13
- package/esm/ldmFactories/metadata/dashboardFactory.js.map +1 -1
- package/esm/ldmFactories/metadata/dataSetFactory.js +3 -13
- package/esm/ldmFactories/metadata/dataSetFactory.js.map +1 -1
- package/esm/ldmFactories/metadata/displayFormFactory.js +9 -19
- package/esm/ldmFactories/metadata/displayFormFactory.js.map +1 -1
- package/esm/ldmFactories/metadata/factFactory.js +3 -13
- package/esm/ldmFactories/metadata/factFactory.js.map +1 -1
- package/esm/ldmFactories/metadata/factory.js +16 -23
- package/esm/ldmFactories/metadata/factory.js.map +1 -1
- package/esm/ldmFactories/metadata/measureFactory.js +9 -19
- package/esm/ldmFactories/metadata/measureFactory.js.map +1 -1
- package/esm/ldmFactories/metadata/variableFactory.js +3 -13
- package/esm/ldmFactories/metadata/variableFactory.js.map +1 -1
- package/esm/normalizingBackend/index.d.ts +2 -2
- package/esm/normalizingBackend/index.d.ts.map +1 -1
- package/esm/normalizingBackend/index.js +65 -90
- package/esm/normalizingBackend/index.js.map +1 -1
- package/esm/normalizingBackend/normalizer.d.ts +2 -2
- package/esm/normalizingBackend/normalizer.d.ts.map +1 -1
- package/esm/normalizingBackend/normalizer.js +128 -138
- package/esm/normalizingBackend/normalizer.js.map +1 -1
- package/esm/toolkit/auth.d.ts +2 -2
- package/esm/toolkit/auth.d.ts.map +1 -1
- package/esm/toolkit/auth.js +47 -63
- package/esm/toolkit/auth.js.map +1 -1
- package/esm/toolkit/backend.d.ts +1 -1
- package/esm/toolkit/backend.d.ts.map +1 -1
- package/esm/toolkit/execution.js +38 -53
- package/esm/toolkit/execution.js.map +1 -1
- package/esm/toolkit/paging.d.ts +1 -1
- package/esm/toolkit/paging.d.ts.map +1 -1
- package/esm/toolkit/paging.js +72 -144
- package/esm/toolkit/paging.js.map +1 -1
- package/esm/toolkit/pluginUrlValidation.js +8 -8
- package/esm/toolkit/pluginUrlValidation.js.map +1 -1
- package/esm/tsdoc-metadata.json +1 -1
- package/esm/workspaceSettingsBackend/index.d.ts +3 -3
- package/esm/workspaceSettingsBackend/index.d.ts.map +1 -1
- package/esm/workspaceSettingsBackend/index.js +19 -43
- package/esm/workspaceSettingsBackend/index.js.map +1 -1
- package/package.json +15 -15
|
@@ -2,33 +2,30 @@
|
|
|
2
2
|
// (C) 2007-2023 GoodData Corporation
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
4
|
exports.withNormalization = void 0;
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
return new NormalizingPreparedExecution(original, _this.decorated, _this.config);
|
|
5
|
+
const tslib_1 = require("tslib");
|
|
6
|
+
const sdk_backend_spi_1 = require("@gooddata/sdk-backend-spi");
|
|
7
|
+
const decoratedBackend_1 = require("../decoratedBackend");
|
|
8
|
+
const execution_1 = require("../decoratedBackend/execution");
|
|
9
|
+
const sdk_model_1 = require("@gooddata/sdk-model");
|
|
10
|
+
const normalizer_1 = require("./normalizer");
|
|
11
|
+
const cloneDeep_1 = tslib_1.__importDefault(require("lodash/cloneDeep"));
|
|
12
|
+
class WithNormalizationExecutionFactory extends execution_1.DecoratedExecutionFactory {
|
|
13
|
+
constructor(decorated, config) {
|
|
14
|
+
super(decorated);
|
|
15
|
+
this.config = config;
|
|
16
|
+
this.wrap = (original) => {
|
|
17
|
+
return new NormalizingPreparedExecution(original, this.decorated, this.config);
|
|
19
18
|
};
|
|
20
|
-
return _this;
|
|
21
19
|
}
|
|
22
|
-
|
|
23
|
-
|
|
20
|
+
forInsightByRef(insight, filters) {
|
|
21
|
+
const isFallbackAllowed = this.config.executeByRefMode === "fallback";
|
|
24
22
|
if (isFallbackAllowed) {
|
|
25
23
|
return this.forInsight(insight, filters);
|
|
26
24
|
}
|
|
27
25
|
throw new sdk_backend_spi_1.NotSupported("Execution by reference is not supported when using normalizing backend. " +
|
|
28
26
|
"Use forInsight() instead.");
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
}(execution_1.DecoratedExecutionFactory));
|
|
27
|
+
}
|
|
28
|
+
}
|
|
32
29
|
/**
|
|
33
30
|
* Prepared execution which does normalization. The prepared execution works with the original
|
|
34
31
|
* exec definition all the time. All operations are done on top of it - except for the execution itself.
|
|
@@ -38,28 +35,25 @@ var WithNormalizationExecutionFactory = /** @class */ (function (_super) {
|
|
|
38
35
|
*
|
|
39
36
|
* It thus obtains the normalized execution and starts it, obtaining the normalized result.
|
|
40
37
|
*/
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
_this.execute = function () {
|
|
38
|
+
class NormalizingPreparedExecution extends execution_1.DecoratedPreparedExecution {
|
|
39
|
+
constructor(decorated, originalExecutionFactory, config) {
|
|
40
|
+
super(decorated);
|
|
41
|
+
this.originalExecutionFactory = originalExecutionFactory;
|
|
42
|
+
this.config = config;
|
|
43
|
+
this.execute = () => {
|
|
48
44
|
var _a, _b;
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
(_b = (_a =
|
|
52
|
-
return normalizedExecution.execute().then(
|
|
53
|
-
return new DenormalizingExecutionResult(result, normalizationState,
|
|
45
|
+
const normalizationState = normalizer_1.Normalizer.normalize(this.definition);
|
|
46
|
+
const normalizedExecution = this.originalExecutionFactory.forDefinition(normalizationState.normalized);
|
|
47
|
+
(_b = (_a = this.config).normalizationStatus) === null || _b === void 0 ? void 0 : _b.call(_a, normalizationState);
|
|
48
|
+
return normalizedExecution.execute().then((result) => {
|
|
49
|
+
return new DenormalizingExecutionResult(result, normalizationState, this, this.decorated);
|
|
54
50
|
});
|
|
55
51
|
};
|
|
56
|
-
|
|
57
|
-
return new NormalizingPreparedExecution(decorated,
|
|
52
|
+
this.createNew = (decorated) => {
|
|
53
|
+
return new NormalizingPreparedExecution(decorated, this.originalExecutionFactory, this.config);
|
|
58
54
|
};
|
|
59
|
-
return _this;
|
|
60
55
|
}
|
|
61
|
-
|
|
62
|
-
}(execution_1.DecoratedPreparedExecution));
|
|
56
|
+
}
|
|
63
57
|
/**
|
|
64
58
|
* An implementation of de-normalizing execution result.
|
|
65
59
|
*
|
|
@@ -77,102 +71,85 @@ var NormalizingPreparedExecution = /** @class */ (function (_super) {
|
|
|
77
71
|
* titles, formats and so on. See the export() implementation - this actually performs the original execution
|
|
78
72
|
* and exports result from it.
|
|
79
73
|
*/
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
var _this = this;
|
|
74
|
+
class DenormalizingExecutionResult {
|
|
75
|
+
constructor(normalizedResult, normalizationState, normalizingExecution, originalExecution) {
|
|
83
76
|
this.normalizedResult = normalizedResult;
|
|
84
77
|
this.normalizationState = normalizationState;
|
|
85
78
|
this.normalizingExecution = normalizingExecution;
|
|
86
79
|
this.originalExecution = originalExecution;
|
|
87
|
-
this.transform =
|
|
88
|
-
return
|
|
80
|
+
this.transform = () => {
|
|
81
|
+
return this.normalizingExecution;
|
|
89
82
|
};
|
|
90
|
-
this.export =
|
|
91
|
-
|
|
92
|
-
return
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
}); };
|
|
101
|
-
this.exportToBlob = function (options) { return tslib_1.__awaiter(_this, void 0, void 0, function () {
|
|
102
|
-
var originalResult;
|
|
103
|
-
return tslib_1.__generator(this, function (_a) {
|
|
104
|
-
switch (_a.label) {
|
|
105
|
-
case 0: return [4 /*yield*/, this.originalExecution.execute()];
|
|
106
|
-
case 1:
|
|
107
|
-
originalResult = _a.sent();
|
|
108
|
-
return [2 /*return*/, originalResult.exportToBlob(options)];
|
|
109
|
-
}
|
|
110
|
-
});
|
|
111
|
-
}); };
|
|
112
|
-
this.readAll = function () {
|
|
113
|
-
var promisedDataView = _this.normalizedResult.readAll();
|
|
83
|
+
this.export = async (options) => {
|
|
84
|
+
const originalResult = await this.originalExecution.execute();
|
|
85
|
+
return originalResult.export(options);
|
|
86
|
+
};
|
|
87
|
+
this.exportToBlob = async (options) => {
|
|
88
|
+
const originalResult = await this.originalExecution.execute();
|
|
89
|
+
return originalResult.exportToBlob(options);
|
|
90
|
+
};
|
|
91
|
+
this.readAll = () => {
|
|
92
|
+
const promisedDataView = this.normalizedResult.readAll();
|
|
114
93
|
return promisedDataView
|
|
115
|
-
.then(
|
|
116
|
-
return new DenormalizedDataView(
|
|
94
|
+
.then((dataView) => {
|
|
95
|
+
return new DenormalizedDataView(this, dataView, this.denormalizer);
|
|
117
96
|
})
|
|
118
|
-
.catch(
|
|
97
|
+
.catch(this.handleDataViewError);
|
|
119
98
|
};
|
|
120
|
-
this.readWindow =
|
|
121
|
-
|
|
99
|
+
this.readWindow = (offset, size) => {
|
|
100
|
+
const promisedDataView = this.normalizedResult.readWindow(offset, size);
|
|
122
101
|
return promisedDataView
|
|
123
|
-
.then(
|
|
124
|
-
return new DenormalizedDataView(
|
|
102
|
+
.then((dataView) => {
|
|
103
|
+
return new DenormalizedDataView(this, dataView, this.denormalizer);
|
|
125
104
|
})
|
|
126
|
-
.catch(
|
|
105
|
+
.catch(this.handleDataViewError);
|
|
127
106
|
};
|
|
128
|
-
this.equals =
|
|
129
|
-
return
|
|
107
|
+
this.equals = (other) => {
|
|
108
|
+
return this._fingerprint === other.fingerprint();
|
|
130
109
|
};
|
|
131
|
-
this.fingerprint =
|
|
132
|
-
return
|
|
110
|
+
this.fingerprint = () => {
|
|
111
|
+
return this._fingerprint;
|
|
133
112
|
};
|
|
134
|
-
this.handleDataViewError =
|
|
113
|
+
this.handleDataViewError = (error) => {
|
|
135
114
|
// make sure that errors with dataViews are repackaged with the dataView denormalized as well
|
|
136
115
|
// otherwise the dataViews will not make sense to the caller
|
|
137
|
-
if (sdk_backend_spi_1.isNoDataError(error) && error.dataView) {
|
|
138
|
-
throw new sdk_backend_spi_1.NoDataError(error.message, new DenormalizedDataView(
|
|
116
|
+
if ((0, sdk_backend_spi_1.isNoDataError)(error) && error.dataView) {
|
|
117
|
+
throw new sdk_backend_spi_1.NoDataError(error.message, new DenormalizedDataView(this, error.dataView, this.denormalizer));
|
|
139
118
|
}
|
|
140
119
|
throw error;
|
|
141
120
|
};
|
|
142
121
|
this.denormalizer = normalizer_1.Denormalizer.from(normalizationState);
|
|
143
122
|
this.definition = this.normalizationState.original;
|
|
144
123
|
this.dimensions = this.denormalizer.denormalizeDimDescriptors(normalizedResult.dimensions);
|
|
145
|
-
this._fingerprint =
|
|
124
|
+
this._fingerprint = `normalizedResult_${(0, sdk_model_1.defFingerprint)(this.definition)}`;
|
|
146
125
|
}
|
|
147
|
-
|
|
148
|
-
}());
|
|
126
|
+
}
|
|
149
127
|
/**
|
|
150
128
|
* Denormalized DataView takes mostly copies of the contents of the normalized data view. The only exception is the
|
|
151
129
|
* header items. The measure headers included therein may have normalized, incorrect measure names (defaulted by
|
|
152
130
|
* backend to localId).
|
|
153
131
|
*/
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
var _this = this;
|
|
132
|
+
class DenormalizedDataView {
|
|
133
|
+
constructor(result, normalizedDataView, denormalizer) {
|
|
157
134
|
this.normalizedDataView = normalizedDataView;
|
|
158
|
-
this.equals =
|
|
159
|
-
return
|
|
135
|
+
this.equals = (other) => {
|
|
136
|
+
return this._fingerprint === other.fingerprint();
|
|
160
137
|
};
|
|
161
|
-
this.fingerprint =
|
|
162
|
-
return
|
|
138
|
+
this.fingerprint = () => {
|
|
139
|
+
return this._fingerprint;
|
|
163
140
|
};
|
|
164
141
|
this.result = result;
|
|
165
142
|
this.definition = this.result.definition;
|
|
166
|
-
this.count = cloneDeep_1.default(this.normalizedDataView.count);
|
|
167
|
-
this.data = cloneDeep_1.default(this.normalizedDataView.data);
|
|
143
|
+
this.count = (0, cloneDeep_1.default)(this.normalizedDataView.count);
|
|
144
|
+
this.data = (0, cloneDeep_1.default)(this.normalizedDataView.data);
|
|
168
145
|
this.headerItems = denormalizer.denormalizeHeaders(this.normalizedDataView.headerItems);
|
|
169
|
-
this.offset = cloneDeep_1.default(this.normalizedDataView.offset);
|
|
170
|
-
this.totalCount = cloneDeep_1.default(this.normalizedDataView.totalCount);
|
|
171
|
-
this.totals = cloneDeep_1.default(this.normalizedDataView.totals);
|
|
172
|
-
this.
|
|
146
|
+
this.offset = (0, cloneDeep_1.default)(this.normalizedDataView.offset);
|
|
147
|
+
this.totalCount = (0, cloneDeep_1.default)(this.normalizedDataView.totalCount);
|
|
148
|
+
this.totals = (0, cloneDeep_1.default)(this.normalizedDataView.totals);
|
|
149
|
+
this.totalTotals = (0, cloneDeep_1.default)(this.normalizedDataView.totalTotals);
|
|
150
|
+
this._fingerprint = `${this.result.fingerprint()}/${this.offset.join(",")}-${this.count.join(",")}`;
|
|
173
151
|
}
|
|
174
|
-
|
|
175
|
-
}());
|
|
152
|
+
}
|
|
176
153
|
/**
|
|
177
154
|
* Decorates backend with logic which transparently normalizes execution definitions before they are dispatched
|
|
178
155
|
* to the underlying backend. The normalization standardizes local identifiers and removes any fields that do not
|
|
@@ -188,10 +165,9 @@ var DenormalizedDataView = /** @class */ (function () {
|
|
|
188
165
|
* @returns new instance of backend
|
|
189
166
|
* @beta
|
|
190
167
|
*/
|
|
191
|
-
function withNormalization(realBackend, config) {
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
execution: function (original) { return new WithNormalizationExecutionFactory(original, config); },
|
|
168
|
+
function withNormalization(realBackend, config = {}) {
|
|
169
|
+
return (0, decoratedBackend_1.decoratedBackend)(realBackend, {
|
|
170
|
+
execution: (original) => new WithNormalizationExecutionFactory(original, config),
|
|
195
171
|
});
|
|
196
172
|
}
|
|
197
173
|
exports.withNormalization = withNormalization;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/normalizingBackend/index.ts"],"names":[],"mappings":";AAAA,qCAAqC;;;;AAErC
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/normalizingBackend/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,13 +2,13 @@ import { IExecutionDefinition, IDimensionDescriptor, IResultHeader } from "@good
|
|
|
2
2
|
/**
|
|
3
3
|
* @beta
|
|
4
4
|
*/
|
|
5
|
-
export
|
|
5
|
+
export type LocalIdMap = {
|
|
6
6
|
[from: string]: string;
|
|
7
7
|
};
|
|
8
8
|
/**
|
|
9
9
|
* @beta
|
|
10
10
|
*/
|
|
11
|
-
export
|
|
11
|
+
export type NormalizationState = {
|
|
12
12
|
/**
|
|
13
13
|
* Normalized execution definition
|
|
14
14
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"normalizer.d.ts","sourceRoot":"","sources":["../../src/normalizingBackend/normalizer.ts"],"names":[],"mappings":"AACA,OAAO,EAOH,oBAAoB,EAyBpB,oBAAoB,EACpB,aAAa,
|
|
1
|
+
{"version":3,"file":"normalizer.d.ts","sourceRoot":"","sources":["../../src/normalizingBackend/normalizer.ts"],"names":[],"mappings":"AACA,OAAO,EAOH,oBAAoB,EAyBpB,oBAAoB,EACpB,aAAa,EAQhB,MAAM,qBAAqB,CAAC;AAM7B;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG;IAAE,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,CAAC;AAEpD;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG;IAC7B;;OAEG;IACH,QAAQ,CAAC,UAAU,EAAE,oBAAoB,CAAC;IAE1C;;OAEG;IACH,QAAQ,CAAC,QAAQ,EAAE,oBAAoB,CAAC;IAExC;;OAEG;IACH,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;CAC/B,CAAC;AAEF;;GAEG;AACH,qBAAa,YAAY;aAQe,KAAK,EAAE,kBAAkB;WAP/C,IAAI,CAAC,KAAK,EAAE,kBAAkB,GAAG,YAAY;IAI3D,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAoC;IACvE,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAkC;IAEnE,OAAO;IAKP;;;;;;;;;;;OAWG;IACI,yBAAyB,mBAAoB,oBAAoB,EAAE,KAAG,oBAAoB,EAAE,CA0DjG;IAEF;;;;;;;OAOG;IACI,kBAAkB,gBAAiB,aAAa,EAAE,EAAE,EAAE,KAAG,aAAa,EAAE,EAAE,EAAE,CAcjF;IAEF,OAAO,CAAC,eAAe,CAMrB;IAEF,OAAO,CAAC,wBAAwB,CAc9B;IAEF,OAAO,CAAC,oBAAoB,CAE1B;CACL;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IAC/B;;OAEG;IACH,uBAAuB,CAAC,EAAE,OAAO,CAAC;CACrC;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,UAAU;aAwBC,QAAQ,EAAE,oBAAoB;IAC9C,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,kBAAkB;WAxBpC,SAAS,CAAC,GAAG,EAAE,oBAAoB,EAAE,OAAO,CAAC,EAAE,kBAAkB,GAAG,kBAAkB;IAMpG,SAAgB,UAAU,EAAE,oBAAoB,CAAC;IAEjD;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAkB;IAEzC;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAkB;IAEzC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAsD;IAEvF,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAkB;IAEpD,OAAO;IAyBP;;;;;;;OAOG;IACH,OAAO,CAAC,mBAAmB,CAezB;IAEF,OAAO,CAAC,iBAAiB,CAMvB;IAEF,OAAO,CAAC,sBAAsB,CAE5B;IAEF,OAAO,CAAC,mBAAmB,CAazB;IAEF;;OAEG;IACH,OAAO,CAAC,eAAe,CAQrB;IAEF,OAAO,CAAC,YAAY,CAMlB;IAEF,OAAO,CAAC,uBAAuB,CAM7B;IAEF,OAAO,CAAC,mBAAmB,CAMzB;IAEF,OAAO,CAAC,gBAAgB,CAgDtB;IAEF,OAAO,CAAC,yBAAyB,CAM/B;IAEF,OAAO,CAAC,iBAAiB,CAEvB;IAEF,OAAO,CAAC,gBAAgB,CAkBtB;IAEF,OAAO,CAAC,cAAc,CAoBpB;IAEF,OAAO,CAAC,mBAAmB,CAiBzB;IAEF,OAAO,CAAC,SAAS,CAYf;CACL"}
|