@gooddata/sdk-backend-base 9.6.0-alpha.6 → 9.6.0-alpha.8

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.
Files changed (61) hide show
  1. package/esm/cachingBackend/index.js +269 -260
  2. package/esm/cachingBackend/index.js.map +1 -1
  3. package/esm/customBackend/execution.js +107 -94
  4. package/esm/customBackend/execution.js.map +1 -1
  5. package/esm/customBackend/index.js +102 -95
  6. package/esm/customBackend/index.js.map +1 -1
  7. package/esm/customBackend/workspace.js +3 -0
  8. package/esm/customBackend/workspace.js.map +1 -1
  9. package/esm/decoratedBackend/analyticalWorkspace.js +3 -0
  10. package/esm/decoratedBackend/analyticalWorkspace.js.map +1 -1
  11. package/esm/decoratedBackend/attributes.js +1 -0
  12. package/esm/decoratedBackend/attributes.js.map +1 -1
  13. package/esm/decoratedBackend/catalog.js +5 -0
  14. package/esm/decoratedBackend/catalog.js.map +1 -1
  15. package/esm/decoratedBackend/dashboards.js +2 -0
  16. package/esm/decoratedBackend/dashboards.js.map +1 -1
  17. package/esm/decoratedBackend/elements.js +32 -6
  18. package/esm/decoratedBackend/elements.js.map +1 -1
  19. package/esm/decoratedBackend/execution.js +32 -13
  20. package/esm/decoratedBackend/execution.js.map +1 -1
  21. package/esm/decoratedBackend/index.js +4 -0
  22. package/esm/decoratedBackend/index.js.map +1 -1
  23. package/esm/decoratedBackend/organization.js +3 -0
  24. package/esm/decoratedBackend/organization.js.map +1 -1
  25. package/esm/decoratedBackend/organizations.js +2 -0
  26. package/esm/decoratedBackend/organizations.js.map +1 -1
  27. package/esm/decoratedBackend/securitySettings.js +2 -0
  28. package/esm/decoratedBackend/securitySettings.js.map +1 -1
  29. package/esm/decoratedBackend/workspaceSettings.js +1 -0
  30. package/esm/decoratedBackend/workspaceSettings.js.map +1 -1
  31. package/esm/dummyBackend/index.js +34 -10
  32. package/esm/dummyBackend/index.js.map +1 -1
  33. package/esm/eventingBackend/index.js +47 -44
  34. package/esm/eventingBackend/index.js.map +1 -1
  35. package/esm/ldmFactories/builder.js +2 -0
  36. package/esm/ldmFactories/builder.js.map +1 -1
  37. package/esm/ldmFactories/catalog/attributeFactory.js +1 -1
  38. package/esm/ldmFactories/catalog/attributeFactory.js.map +1 -1
  39. package/esm/ldmFactories/catalog/measureFactory.js +1 -1
  40. package/esm/ldmFactories/catalog/measureFactory.js.map +1 -1
  41. package/esm/ldmFactories/dashboard/insightWidgetFactory.js +5 -3
  42. package/esm/ldmFactories/dashboard/insightWidgetFactory.js.map +1 -1
  43. package/esm/ldmFactories/dashboard/kpiWidgetFactory.js +17 -9
  44. package/esm/ldmFactories/dashboard/kpiWidgetFactory.js.map +1 -1
  45. package/esm/ldmFactories/dashboard/widgetFactory.js +18 -18
  46. package/esm/ldmFactories/dashboard/widgetFactory.js.map +1 -1
  47. package/esm/normalizingBackend/index.js +79 -58
  48. package/esm/normalizingBackend/index.js.map +1 -1
  49. package/esm/normalizingBackend/normalizer.js +317 -297
  50. package/esm/normalizingBackend/normalizer.js.map +1 -1
  51. package/esm/toolkit/auth.js +33 -32
  52. package/esm/toolkit/auth.js.map +1 -1
  53. package/esm/toolkit/execution.js +2 -0
  54. package/esm/toolkit/execution.js.map +1 -1
  55. package/esm/toolkit/paging.js +48 -38
  56. package/esm/toolkit/paging.js.map +1 -1
  57. package/esm/toolkit/pluginUrlValidation.js +1 -2
  58. package/esm/toolkit/pluginUrlValidation.js.map +1 -1
  59. package/esm/workspaceSettingsBackend/index.js +11 -2
  60. package/esm/workspaceSettingsBackend/index.js.map +1 -1
  61. package/package.json +8 -10
@@ -4,61 +4,64 @@ import { v4 as uuid } from "uuid";
4
4
  import { decoratedBackend } from "../decoratedBackend/index.js";
5
5
  import { DecoratedExecutionFactory, DecoratedExecutionResult, DecoratedPreparedExecution, } from "../decoratedBackend/execution.js";
6
6
  class WithExecutionEventing extends DecoratedPreparedExecution {
7
+ callbacks;
7
8
  constructor(decorated, callbacks) {
8
9
  super(decorated);
9
10
  this.callbacks = callbacks;
10
- this.execute = () => {
11
- const { beforeExecute, successfulExecute, failedExecute } = this.callbacks;
12
- const executionId = uuid();
13
- beforeExecute === null || beforeExecute === void 0 ? void 0 : beforeExecute(this.definition, executionId);
14
- return super
15
- .execute()
16
- .then((result) => {
17
- successfulExecute === null || successfulExecute === void 0 ? void 0 : successfulExecute(result, executionId);
18
- return new WithExecutionResultEventing(result, this.createNew, this.callbacks, executionId);
19
- })
20
- .catch((error) => {
21
- failedExecute === null || failedExecute === void 0 ? void 0 : failedExecute(error, executionId);
22
- throw error;
23
- });
24
- };
25
- this.createNew = (decorated) => {
26
- return new WithExecutionEventing(decorated, this.callbacks);
27
- };
28
11
  }
12
+ execute = () => {
13
+ const { beforeExecute, successfulExecute, failedExecute } = this.callbacks;
14
+ const executionId = uuid();
15
+ beforeExecute?.(this.definition, executionId);
16
+ return super
17
+ .execute()
18
+ .then((result) => {
19
+ successfulExecute?.(result, executionId);
20
+ return new WithExecutionResultEventing(result, this.createNew, this.callbacks, executionId);
21
+ })
22
+ .catch((error) => {
23
+ failedExecute?.(error, executionId);
24
+ throw error;
25
+ });
26
+ };
27
+ createNew = (decorated) => {
28
+ return new WithExecutionEventing(decorated, this.callbacks);
29
+ };
29
30
  }
30
31
  class WithExecutionResultEventing extends DecoratedExecutionResult {
32
+ callbacks;
33
+ executionId;
31
34
  constructor(decorated, wrapper, callbacks, executionId) {
32
35
  super(decorated, wrapper);
33
36
  this.callbacks = callbacks;
34
37
  this.executionId = executionId;
35
- this.readAll = () => {
36
- const { successfulResultReadAll, failedResultReadAll } = this.callbacks;
37
- const promisedDataView = super.readAll();
38
- return promisedDataView
39
- .then((res) => {
40
- successfulResultReadAll === null || successfulResultReadAll === void 0 ? void 0 : successfulResultReadAll(res, this.executionId);
41
- return res;
42
- })
43
- .catch((e) => {
44
- failedResultReadAll === null || failedResultReadAll === void 0 ? void 0 : failedResultReadAll(e, this.executionId);
45
- throw e;
46
- });
47
- };
48
- this.readWindow = (offset, size) => {
49
- const { successfulResultReadWindow, failedResultReadWindow } = this.callbacks;
50
- const promisedDataView = super.readWindow(offset, size);
51
- return promisedDataView
52
- .then((res) => {
53
- successfulResultReadWindow === null || successfulResultReadWindow === void 0 ? void 0 : successfulResultReadWindow(offset, size, res, this.executionId);
54
- return res;
55
- })
56
- .catch((e) => {
57
- failedResultReadWindow === null || failedResultReadWindow === void 0 ? void 0 : failedResultReadWindow(offset, size, e, this.executionId);
58
- throw e;
59
- });
60
- };
61
38
  }
39
+ readAll = () => {
40
+ const { successfulResultReadAll, failedResultReadAll } = this.callbacks;
41
+ const promisedDataView = super.readAll();
42
+ return promisedDataView
43
+ .then((res) => {
44
+ successfulResultReadAll?.(res, this.executionId);
45
+ return res;
46
+ })
47
+ .catch((e) => {
48
+ failedResultReadAll?.(e, this.executionId);
49
+ throw e;
50
+ });
51
+ };
52
+ readWindow = (offset, size) => {
53
+ const { successfulResultReadWindow, failedResultReadWindow } = this.callbacks;
54
+ const promisedDataView = super.readWindow(offset, size);
55
+ return promisedDataView
56
+ .then((res) => {
57
+ successfulResultReadWindow?.(offset, size, res, this.executionId);
58
+ return res;
59
+ })
60
+ .catch((e) => {
61
+ failedResultReadWindow?.(offset, size, e, this.executionId);
62
+ throw e;
63
+ });
64
+ };
62
65
  }
63
66
  /**
64
67
  * This implementation of analytical backend decorates another implementation with support for eventing. Events
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/eventingBackend/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/eventingBackend/index.ts"],"names":[],"mappings":"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"}
@@ -10,6 +10,8 @@
10
10
  * @beta
11
11
  */
12
12
  export class Builder {
13
+ item;
14
+ validator;
13
15
  constructor(item, validator) {
14
16
  this.item = item;
15
17
  this.validator = validator;
@@ -1 +1 @@
1
- {"version":3,"file":"builder.js","sourceRoot":"","sources":["../../src/ldmFactories/builder.ts"],"names":[],"mappings":"AAAA,qCAAqC;AACrC;;;;;;;;;GASG;AACH,MAAM,OAAO,OAAO;IAChB,YAAsB,IAAgB,EAAY,SAAsC;QAAlE,SAAI,GAAJ,IAAI,CAAY;QAAY,cAAS,GAAT,SAAS,CAA6B;IAAG,CAAC;IAErF,KAAK;QACR,OAAO,IAAI,CAAC,IAAS,CAAC;IAC1B,CAAC;IAEM,MAAM,CAAC,aAA4C;QACtD,IAAI,CAAC,IAAI,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC;QACxC,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,QAAQ;QACX,IAAI,OAAO,IAAI,CAAC,SAAS,KAAK,UAAU,EAAE;YACtC,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;SAClD;QACD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1B,OAAO,IAAI,CAAC;IAChB,CAAC;CACJ;AAsDD;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAG,CACxC,qBAAoD,EACpD,aAAqB,EACf,EAAE;AACR,2CAA2C;AAC3C,sEAAsE;AACtE,qBAAqB,YAAY,QAAQ,CAAC,CAAC,CAAC,qBAAqB,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,qBAAqB,CAAC;AAE7G;;;;GAIG;AACH,MAAM,UAAU,cAAc,CAK1B,OAA4B,EAC5B,WAA2B,EAC3B,aAAoD;IAEpD,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,WAAW,CAAC,CAAC;IACzC,OAAO,aAAa,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,CAAC;AAC1C,CAAC"}
1
+ {"version":3,"file":"builder.js","sourceRoot":"","sources":["../../src/ldmFactories/builder.ts"],"names":[],"mappings":"AAAA,qCAAqC;AACrC;;;;;;;;;GASG;AACH,MAAM,OAAO,OAAO;IACM;IAA4B;IAAlD,YAAsB,IAAgB,EAAY,SAAsC;QAAlE,SAAI,GAAJ,IAAI,CAAY;QAAY,cAAS,GAAT,SAAS,CAA6B;IAAG,CAAC;IAErF,KAAK;QACR,OAAO,IAAI,CAAC,IAAS,CAAC;IAC1B,CAAC;IAEM,MAAM,CAAC,aAA4C;QACtD,IAAI,CAAC,IAAI,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC;QACxC,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,QAAQ;QACX,IAAI,OAAO,IAAI,CAAC,SAAS,KAAK,UAAU,EAAE;YACtC,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;SAClD;QACD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1B,OAAO,IAAI,CAAC;IAChB,CAAC;CACJ;AAsDD;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAG,CACxC,qBAAoD,EACpD,aAAqB,EACf,EAAE;AACR,2CAA2C;AAC3C,sEAAsE;AACtE,qBAAqB,YAAY,QAAQ,CAAC,CAAC,CAAC,qBAAqB,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,qBAAqB,CAAC;AAE7G;;;;GAIG;AACH,MAAM,UAAU,cAAc,CAK1B,OAA4B,EAC5B,WAA2B,EAC3B,aAAoD;IAEpD,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,WAAW,CAAC,CAAC;IACzC,OAAO,aAAa,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,CAAC;AAC1C,CAAC"}
@@ -42,7 +42,7 @@ export class CatalogAttributeBuilder extends GroupableCatalogItemBuilder {
42
42
  if (!this.item.defaultDisplayForm) {
43
43
  throw new Error("Cannot convert catalog attribute to execution model, no displayForm found!");
44
44
  }
45
- const defaultModifications = (a) => { var _a; return a.alias((_a = this.item.defaultDisplayForm) === null || _a === void 0 ? void 0 : _a.title); };
45
+ const defaultModifications = (a) => a.alias(this.item.defaultDisplayForm?.title);
46
46
  return newAttribute(this.item.defaultDisplayForm.ref, (m) => modifications(defaultModifications(m)));
47
47
  }
48
48
  }
@@ -1 +1 @@
1
- {"version":3,"file":"attributeFactory.js","sourceRoot":"","sources":["../../../src/ldmFactories/catalog/attributeFactory.ts"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,OAAO,QAAQ,MAAM,oBAAoB,CAAC;AAC1C,OAAO,EAGH,YAAY,EAIZ,oCAAoC,EAEpC,yBAAyB,GAC5B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,2BAA2B,EAAE,MAAM,mBAAmB,CAAC;AAChE,OAAO,EAAE,cAAc,EAAwB,MAAM,eAAe,CAAC;AACrE,OAAO,EAAkC,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAC7G,OAAO,EAEH,qCAAqC,GACxC,MAAM,mCAAmC,CAAC;AAE3C;;;;;GAKG;AACH,MAAM,OAAO,uBAEX,SAAQ,2BAA8B;IAC7B,SAAS,CACZ,cAAiD,EACjD,aAAoE;QAEpE,IAAI,CAAC,yBAAyB,CAAC,cAAc,CAAC,EAAE;YAC5C,IAAI,CAAC,IAAI,CAAC,SAAS,GAAG,0BAA0B,CAAC,cAAc,EAAE,aAAa,CAAC,CAAC;SACnF;aAAM;YACH,IAAI,CAAC,IAAI,CAAC,SAAS,GAAG,cAAc,CAAC;SACxC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,kBAAkB,CACrB,gBAA8D,EAC9D,aAA+E;QAE/E,IAAI,CAAC,oCAAoC,CAAC,gBAAgB,CAAC,EAAE;YACzD,IAAI,CAAC,IAAI,CAAC,kBAAkB,GAAG,qCAAqC,CAChE,gBAAgB,EAChB,aAAa,CAChB,CAAC;SACL;aAAM;YACH,IAAI,CAAC,IAAI,CAAC,kBAAkB,GAAG,gBAAgB,CAAC;SACnD;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,YAAY,CAAC,YAAmD;QACnE,IAAI,CAAC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACtC,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,kBAAkB,CAAC,YAAmD;QACzE,IAAI,CAAC,IAAI,CAAC,kBAAkB,GAAG,YAAY,CAAC;QAE5C,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,gBAAgB,CAAC,gBAAwC,QAAQ;QACpE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE;YAC/B,MAAM,IAAI,KAAK,CAAC,4EAA4E,CAAC,CAAC;SACjG;QAED,MAAM,oBAAoB,GAA2B,CAAC,CAAC,EAAE,EAAE,WACvD,OAAA,CAAC,CAAC,KAAK,CAAC,MAAA,IAAI,CAAC,IAAI,CAAC,kBAAkB,0CAAE,KAAK,CAAC,CAAA,EAAA,CAAC;QAEjD,OAAO,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACzG,CAAC;CACJ;AAED;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAC/B,gBAA+D,QAAQ,EACtD,EAAE,CAAC,cAAc,CAAC,uBAAuB,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,aAAa,CAAC,CAAC"}
1
+ {"version":3,"file":"attributeFactory.js","sourceRoot":"","sources":["../../../src/ldmFactories/catalog/attributeFactory.ts"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,OAAO,QAAQ,MAAM,oBAAoB,CAAC;AAC1C,OAAO,EAGH,YAAY,EAIZ,oCAAoC,EAEpC,yBAAyB,GAC5B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,2BAA2B,EAAE,MAAM,mBAAmB,CAAC;AAChE,OAAO,EAAE,cAAc,EAAwB,MAAM,eAAe,CAAC;AACrE,OAAO,EAAkC,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAC7G,OAAO,EAEH,qCAAqC,GACxC,MAAM,mCAAmC,CAAC;AAE3C;;;;;GAKG;AACH,MAAM,OAAO,uBAEX,SAAQ,2BAA8B;IAC7B,SAAS,CACZ,cAAiD,EACjD,aAAoE;QAEpE,IAAI,CAAC,yBAAyB,CAAC,cAAc,CAAC,EAAE;YAC5C,IAAI,CAAC,IAAI,CAAC,SAAS,GAAG,0BAA0B,CAAC,cAAc,EAAE,aAAa,CAAC,CAAC;SACnF;aAAM;YACH,IAAI,CAAC,IAAI,CAAC,SAAS,GAAG,cAAc,CAAC;SACxC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,kBAAkB,CACrB,gBAA8D,EAC9D,aAA+E;QAE/E,IAAI,CAAC,oCAAoC,CAAC,gBAAgB,CAAC,EAAE;YACzD,IAAI,CAAC,IAAI,CAAC,kBAAkB,GAAG,qCAAqC,CAChE,gBAAgB,EAChB,aAAa,CAChB,CAAC;SACL;aAAM;YACH,IAAI,CAAC,IAAI,CAAC,kBAAkB,GAAG,gBAAgB,CAAC;SACnD;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,YAAY,CAAC,YAAmD;QACnE,IAAI,CAAC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACtC,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,kBAAkB,CAAC,YAAmD;QACzE,IAAI,CAAC,IAAI,CAAC,kBAAkB,GAAG,YAAY,CAAC;QAE5C,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,gBAAgB,CAAC,gBAAwC,QAAQ;QACpE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE;YAC/B,MAAM,IAAI,KAAK,CAAC,4EAA4E,CAAC,CAAC;SACjG;QAED,MAAM,oBAAoB,GAA2B,CAAC,CAAC,EAAE,EAAE,CACvD,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,KAAK,CAAC,CAAC;QAEjD,OAAO,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACzG,CAAC;CACJ;AAED;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAC/B,gBAA+D,QAAQ,EACtD,EAAE,CAAC,cAAc,CAAC,uBAAuB,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,aAAa,CAAC,CAAC"}
@@ -24,7 +24,7 @@ export class CatalogMeasureBuilder extends GroupableCatalogItemBuilder {
24
24
  if (!this.item.measure) {
25
25
  throw new Error("Cannot convert catalog measure to execution model, no measure found!");
26
26
  }
27
- const defaultModifications = (m) => { var _a, _b; return m.alias((_a = this.item.measure) === null || _a === void 0 ? void 0 : _a.title).format((_b = this.item.measure) === null || _b === void 0 ? void 0 : _b.format); };
27
+ const defaultModifications = (m) => m.alias(this.item.measure?.title).format(this.item.measure?.format);
28
28
  return newMeasure(this.item.measure.ref, (m) => modifications(defaultModifications(m)));
29
29
  }
30
30
  }
@@ -1 +1 @@
1
- {"version":3,"file":"measureFactory.js","sourceRoot":"","sources":["../../../src/ldmFactories/catalog/measureFactory.ts"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,OAAO,QAAQ,MAAM,oBAAoB,CAAC;AAC1C,OAAO,EAAE,2BAA2B,EAAE,MAAM,mBAAmB,CAAC;AAChE,OAAO,EAIH,UAAU,EAIV,uBAAuB,GAC1B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,cAAc,EAAwB,MAAM,eAAe,CAAC;AACrE,OAAO,EAAgC,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AAEvG;;;;;GAKG;AACH,MAAM,OAAO,qBAEX,SAAQ,2BAA8B;IAC7B,OAAO,CACV,YAA6C,EAC7C,aAAkE;QAElE,IAAI,CAAC,uBAAuB,CAAC,YAAY,CAAC,EAAE;YACxC,IAAI,CAAC,IAAI,CAAC,OAAO,GAAG,wBAAwB,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC;SAC7E;aAAM;YACH,IAAI,CAAC,IAAI,CAAC,OAAO,GAAG,YAAY,CAAC;SACpC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,gBAAgB,CAAC,gBAAsD,QAAQ;QAClF,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACpB,MAAM,IAAI,KAAK,CAAC,sEAAsE,CAAC,CAAC;SAC3F;QAED,MAAM,oBAAoB,GAAyC,CAAC,CAAC,EAAE,EAAE,eACrE,OAAA,CAAC,CAAC,KAAK,CAAC,MAAA,IAAI,CAAC,IAAI,CAAC,OAAO,0CAAE,KAAK,CAAC,CAAC,MAAM,CAAC,MAAA,IAAI,CAAC,IAAI,CAAC,OAAO,0CAAE,MAAM,CAAC,CAAA,EAAA,CAAC;QAExE,OAAO,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5F,CAAC;CACJ;AAED;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAC7B,gBAA6D,QAAQ,EACtD,EAAE,CAAC,cAAc,CAAC,qBAAqB,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,aAAa,CAAC,CAAC"}
1
+ {"version":3,"file":"measureFactory.js","sourceRoot":"","sources":["../../../src/ldmFactories/catalog/measureFactory.ts"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,OAAO,QAAQ,MAAM,oBAAoB,CAAC;AAC1C,OAAO,EAAE,2BAA2B,EAAE,MAAM,mBAAmB,CAAC;AAChE,OAAO,EAIH,UAAU,EAIV,uBAAuB,GAC1B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,cAAc,EAAwB,MAAM,eAAe,CAAC;AACrE,OAAO,EAAgC,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AAEvG;;;;;GAKG;AACH,MAAM,OAAO,qBAEX,SAAQ,2BAA8B;IAC7B,OAAO,CACV,YAA6C,EAC7C,aAAkE;QAElE,IAAI,CAAC,uBAAuB,CAAC,YAAY,CAAC,EAAE;YACxC,IAAI,CAAC,IAAI,CAAC,OAAO,GAAG,wBAAwB,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC;SAC7E;aAAM;YACH,IAAI,CAAC,IAAI,CAAC,OAAO,GAAG,YAAY,CAAC;SACpC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,gBAAgB,CAAC,gBAAsD,QAAQ;QAClF,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACpB,MAAM,IAAI,KAAK,CAAC,sEAAsE,CAAC,CAAC;SAC3F;QAED,MAAM,oBAAoB,GAAyC,CAAC,CAAC,EAAE,EAAE,CACrE,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAExE,OAAO,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5F,CAAC;CACJ;AAED;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAC7B,gBAA6D,QAAQ,EACtD,EAAE,CAAC,cAAc,CAAC,qBAAqB,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,aAAa,CAAC,CAAC"}
@@ -6,13 +6,12 @@ import { WidgetBaseBuilder } from "./widgetFactory.js";
6
6
  * @alpha
7
7
  */
8
8
  export class InsightWidgetBuilder extends WidgetBaseBuilder {
9
+ item;
10
+ validator;
9
11
  constructor(item, validator) {
10
12
  super(item, validator);
11
13
  this.item = item;
12
14
  this.validator = validator;
13
- this.drills = (valueOrUpdateCallback) => this.setWidgetProp("drills", valueOrUpdateCallback);
14
- this.insight = (valueOrUpdateCallback) => this.setWidgetProp("insight", valueOrUpdateCallback);
15
- this.properties = (valueOrUpdateCallback) => this.setWidgetProp("properties", valueOrUpdateCallback);
16
15
  }
17
16
  static for(insightWidget) {
18
17
  invariant(isInsightWidgetDefinition(insightWidget) || isInsightWidget(insightWidget), "Provided data must be IInsightWidget or IInsightWidgetDefinition!");
@@ -30,6 +29,9 @@ export class InsightWidgetBuilder extends WidgetBaseBuilder {
30
29
  };
31
30
  return InsightWidgetBuilder.for(emptyInsightWidget);
32
31
  }
32
+ drills = (valueOrUpdateCallback) => this.setWidgetProp("drills", valueOrUpdateCallback);
33
+ insight = (valueOrUpdateCallback) => this.setWidgetProp("insight", valueOrUpdateCallback);
34
+ properties = (valueOrUpdateCallback) => this.setWidgetProp("properties", valueOrUpdateCallback);
33
35
  }
34
36
  /**
35
37
  * @alpha
@@ -1 +1 @@
1
- {"version":3,"file":"insightWidgetFactory.js","sourceRoot":"","sources":["../../../src/ldmFactories/dashboard/insightWidgetFactory.ts"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAMH,yBAAyB,EACzB,eAAe,GAClB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAsB,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAc3E;;GAEG;AACH,MAAM,OAAO,oBAAqB,SAAQ,iBAAiC;IACvE,YACc,IAAoB,EACpB,SAAmD;QAE7D,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QAHb,SAAI,GAAJ,IAAI,CAAgB;QACpB,cAAS,GAAT,SAAS,CAA0C;QA2B1D,WAAM,GAAG,CAAC,qBAAsE,EAAQ,EAAE,CAC7F,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,qBAAqB,CAAC,CAAC;QAEjD,YAAO,GAAG,CAAC,qBAAoD,EAAQ,EAAE,CAC5E,IAAI,CAAC,aAAa,CAAC,SAAS,EAAE,qBAAqB,CAAC,CAAC;QAElD,eAAU,GAAG,CAChB,qBAAiF,EAC7E,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,qBAAqB,CAAC,CAAC;IAhCnE,CAAC;IAEM,MAAM,CAAC,GAAG,CAAC,aAAuC;QACrD,SAAS,CACL,yBAAyB,CAAC,aAAa,CAAC,IAAI,eAAe,CAAC,aAAa,CAAC,EAC1E,mEAAmE,CACtE,CAAC;QAEF,OAAO,IAAI,oBAAoB,CAAC,aAA+B,CAAC,CAAC;IACrE,CAAC;IAEM,MAAM,CAAC,MAAM,CAAC,OAAe;QAChC,MAAM,kBAAkB,GAA6B;YACjD,WAAW,EAAE,EAAE;YACf,MAAM,EAAE,EAAE;YACV,sBAAsB,EAAE,EAAE;YAC1B,2BAA2B,EAAE,EAAE;YAC/B,KAAK,EAAE,EAAE;YACT,IAAI,EAAE,SAAS;YACf,OAAO;SACV,CAAC;QACF,OAAO,oBAAoB,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;IACxD,CAAC;CAWJ;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC5B,OAAe,EACf,aAAsE,EACxD,EAAE;IAChB,OAAO,oBAAoB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,KAAK,EAAE,CAAC;AAC9E,CAAC,CAAC"}
1
+ {"version":3,"file":"insightWidgetFactory.js","sourceRoot":"","sources":["../../../src/ldmFactories/dashboard/insightWidgetFactory.ts"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAMH,yBAAyB,EACzB,eAAe,GAClB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAsB,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAc3E;;GAEG;AACH,MAAM,OAAO,oBAAqB,SAAQ,iBAAiC;IAEzD;IACA;IAFd,YACc,IAAoB,EACpB,SAAmD;QAE7D,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QAHb,SAAI,GAAJ,IAAI,CAAgB;QACpB,cAAS,GAAT,SAAS,CAA0C;IAGjE,CAAC;IAEM,MAAM,CAAC,GAAG,CAAC,aAAuC;QACrD,SAAS,CACL,yBAAyB,CAAC,aAAa,CAAC,IAAI,eAAe,CAAC,aAAa,CAAC,EAC1E,mEAAmE,CACtE,CAAC;QAEF,OAAO,IAAI,oBAAoB,CAAC,aAA+B,CAAC,CAAC;IACrE,CAAC;IAEM,MAAM,CAAC,MAAM,CAAC,OAAe;QAChC,MAAM,kBAAkB,GAA6B;YACjD,WAAW,EAAE,EAAE;YACf,MAAM,EAAE,EAAE;YACV,sBAAsB,EAAE,EAAE;YAC1B,2BAA2B,EAAE,EAAE;YAC/B,KAAK,EAAE,EAAE;YACT,IAAI,EAAE,SAAS;YACf,OAAO;SACV,CAAC;QACF,OAAO,oBAAoB,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;IACxD,CAAC;IAEM,MAAM,GAAG,CAAC,qBAAsE,EAAQ,EAAE,CAC7F,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,qBAAqB,CAAC,CAAC;IAEjD,OAAO,GAAG,CAAC,qBAAoD,EAAQ,EAAE,CAC5E,IAAI,CAAC,aAAa,CAAC,SAAS,EAAE,qBAAqB,CAAC,CAAC;IAElD,UAAU,GAAG,CAChB,qBAAiF,EAC7E,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,qBAAqB,CAAC,CAAC;CACtE;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC5B,OAAe,EACf,aAAsE,EACxD,EAAE;IAChB,OAAO,oBAAoB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,KAAK,EAAE,CAAC;AAC9E,CAAC,CAAC"}
@@ -7,19 +7,12 @@ import { resolveValueOrUpdateCallback } from "../builder.js";
7
7
  * @alpha
8
8
  */
9
9
  export class KpiWidgetBuilder extends WidgetBaseBuilder {
10
+ item;
11
+ validator;
10
12
  constructor(item, validator) {
11
13
  super(item, validator);
12
14
  this.item = item;
13
15
  this.validator = validator;
14
- // TODO: un-nest legacy kpi
15
- this.setKpiWidgetProp = (prop, valueOrUpdateCallback) => {
16
- this.setWidget((w) => (Object.assign(Object.assign({}, w), { kpi: Object.assign(Object.assign({}, w.kpi), { [prop]: resolveValueOrUpdateCallback(valueOrUpdateCallback, w.kpi[prop]) }) })));
17
- return this;
18
- };
19
- this.drills = (valueOrUpdateCallback) => this.setWidgetProp("drills", valueOrUpdateCallback);
20
- this.measure = (valueOrUpdateCallback) => this.setKpiWidgetProp("metric", valueOrUpdateCallback);
21
- this.comparisonType = (valueOrUpdateCallback) => this.setKpiWidgetProp("comparisonType", valueOrUpdateCallback);
22
- this.comparisonDirection = (valueOrUpdateCallback) => this.setKpiWidgetProp("comparisonDirection", valueOrUpdateCallback);
23
16
  }
24
17
  static for(kpiWidget) {
25
18
  invariant(isKpiWidgetDefinition(kpiWidget) || isKpiWidget(kpiWidget), "Provided data must be IKpiWidget or IKpiWidgetDefinition!");
@@ -39,6 +32,21 @@ export class KpiWidgetBuilder extends WidgetBaseBuilder {
39
32
  };
40
33
  return KpiWidgetBuilder.for(emptyKpiWidget);
41
34
  }
35
+ // TODO: un-nest legacy kpi
36
+ setKpiWidgetProp = (prop, valueOrUpdateCallback) => {
37
+ this.setWidget((w) => ({
38
+ ...w,
39
+ kpi: {
40
+ ...w.kpi,
41
+ [prop]: resolveValueOrUpdateCallback(valueOrUpdateCallback, w.kpi[prop]),
42
+ },
43
+ }));
44
+ return this;
45
+ };
46
+ drills = (valueOrUpdateCallback) => this.setWidgetProp("drills", valueOrUpdateCallback);
47
+ measure = (valueOrUpdateCallback) => this.setKpiWidgetProp("metric", valueOrUpdateCallback);
48
+ comparisonType = (valueOrUpdateCallback) => this.setKpiWidgetProp("comparisonType", valueOrUpdateCallback);
49
+ comparisonDirection = (valueOrUpdateCallback) => this.setKpiWidgetProp("comparisonDirection", valueOrUpdateCallback);
42
50
  }
43
51
  /**
44
52
  * @alpha
@@ -1 +1 @@
1
- {"version":3,"file":"kpiWidgetFactory.js","sourceRoot":"","sources":["../../../src/ldmFactories/dashboard/kpiWidgetFactory.ts"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAKH,qBAAqB,EACrB,WAAW,GAId,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAsB,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAC3E,OAAO,EAAE,4BAA4B,EAAyB,MAAM,eAAe,CAAC;AAgBpF;;GAEG;AACH,MAAM,OAAO,gBAAiB,SAAQ,iBAA6B;IAC/D,YAAsB,IAAgB,EAAY,SAA+C;QAC7F,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QADL,SAAI,GAAJ,IAAI,CAAY;QAAY,cAAS,GAAT,SAAS,CAAsC;QA4BjG,2BAA2B;QACjB,qBAAgB,GAAG,CACzB,IAAO,EACP,qBAAkE,EAC9D,EAAE;YACN,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,iCACf,CAAC,KACJ,GAAG,kCACI,CAAC,CAAC,GAAI,KACT,CAAC,IAAI,CAAC,EAAE,4BAA4B,CAAC,qBAAqB,EAAE,CAAC,CAAC,GAAI,CAAC,IAAI,CAAC,CAAC,OAE/E,CAAC,CAAC;YACJ,OAAO,IAAI,CAAC;QAChB,CAAC,CAAC;QAEK,WAAM,GAAG,CAAC,qBAAkE,EAAQ,EAAE,CACzF,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,qBAAqB,CAAC,CAAC;QAEjD,YAAO,GAAG,CAAC,qBAAoD,EAAQ,EAAE,CAC5E,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,qBAAqB,CAAC,CAAC;QAEpD,mBAAc,GAAG,CACpB,qBAA0E,EACtE,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,qBAAqB,CAAC,CAAC;QAEnE,wBAAmB,GAAG,CACzB,qBAAiF,EAC7E,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,qBAAqB,EAAE,qBAAqB,CAAC,CAAC;IArD/E,CAAC;IAEM,MAAM,CAAC,GAAG,CAAC,SAA+B;QAC7C,SAAS,CACL,qBAAqB,CAAC,SAAS,CAAC,IAAI,WAAW,CAAC,SAAS,CAAC,EAC1D,2DAA2D,CAC9D,CAAC;QAEF,OAAO,IAAI,gBAAgB,CAAC,SAAuB,CAAC,CAAC;IACzD,CAAC;IAEM,MAAM,CAAC,MAAM,CAAC,OAAe;QAChC,MAAM,cAAc,GAAyB;YACzC,WAAW,EAAE,EAAE;YACf,MAAM,EAAE,EAAE;YACV,sBAAsB,EAAE,EAAE;YAC1B,KAAK,EAAE,EAAE;YACT,IAAI,EAAE,KAAK;YACX,GAAG,EAAE;gBACD,MAAM,EAAE,OAAO;gBACf,cAAc,EAAE,MAAM;aACzB;SACJ,CAAC;QACF,OAAO,gBAAgB,CAAC,GAAG,CAAC,cAA4B,CAAC,CAAC;IAC9D,CAAC;CA8BJ;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CACxB,OAAe,EACf,aAA8D,EACpD,EAAE;IACZ,OAAO,gBAAgB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,KAAK,EAAE,CAAC;AAC1E,CAAC,CAAC"}
1
+ {"version":3,"file":"kpiWidgetFactory.js","sourceRoot":"","sources":["../../../src/ldmFactories/dashboard/kpiWidgetFactory.ts"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAKH,qBAAqB,EACrB,WAAW,GAId,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAsB,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAC3E,OAAO,EAAE,4BAA4B,EAAyB,MAAM,eAAe,CAAC;AAgBpF;;GAEG;AACH,MAAM,OAAO,gBAAiB,SAAQ,iBAA6B;IACzC;IAA4B;IAAlD,YAAsB,IAAgB,EAAY,SAA+C;QAC7F,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QADL,SAAI,GAAJ,IAAI,CAAY;QAAY,cAAS,GAAT,SAAS,CAAsC;IAEjG,CAAC;IAEM,MAAM,CAAC,GAAG,CAAC,SAA+B;QAC7C,SAAS,CACL,qBAAqB,CAAC,SAAS,CAAC,IAAI,WAAW,CAAC,SAAS,CAAC,EAC1D,2DAA2D,CAC9D,CAAC;QAEF,OAAO,IAAI,gBAAgB,CAAC,SAAuB,CAAC,CAAC;IACzD,CAAC;IAEM,MAAM,CAAC,MAAM,CAAC,OAAe;QAChC,MAAM,cAAc,GAAyB;YACzC,WAAW,EAAE,EAAE;YACf,MAAM,EAAE,EAAE;YACV,sBAAsB,EAAE,EAAE;YAC1B,KAAK,EAAE,EAAE;YACT,IAAI,EAAE,KAAK;YACX,GAAG,EAAE;gBACD,MAAM,EAAE,OAAO;gBACf,cAAc,EAAE,MAAM;aACzB;SACJ,CAAC;QACF,OAAO,gBAAgB,CAAC,GAAG,CAAC,cAA4B,CAAC,CAAC;IAC9D,CAAC;IAED,2BAA2B;IACjB,gBAAgB,GAAG,CACzB,IAAO,EACP,qBAAkE,EAC9D,EAAE;QACN,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACnB,GAAG,CAAC;YACJ,GAAG,EAAE;gBACD,GAAG,CAAC,CAAC,GAAI;gBACT,CAAC,IAAI,CAAC,EAAE,4BAA4B,CAAC,qBAAqB,EAAE,CAAC,CAAC,GAAI,CAAC,IAAI,CAAC,CAAC;aAC5E;SACJ,CAAC,CAAC,CAAC;QACJ,OAAO,IAAI,CAAC;IAChB,CAAC,CAAC;IAEK,MAAM,GAAG,CAAC,qBAAkE,EAAQ,EAAE,CACzF,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,qBAAqB,CAAC,CAAC;IAEjD,OAAO,GAAG,CAAC,qBAAoD,EAAQ,EAAE,CAC5E,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,qBAAqB,CAAC,CAAC;IAEpD,cAAc,GAAG,CACpB,qBAA0E,EACtE,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,qBAAqB,CAAC,CAAC;IAEnE,mBAAmB,GAAG,CACzB,qBAAiF,EAC7E,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,qBAAqB,EAAE,qBAAqB,CAAC,CAAC;CAClF;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CACxB,OAAe,EACf,aAA8D,EACpD,EAAE;IACZ,OAAO,gBAAgB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,KAAK,EAAE,CAAC;AAC1E,CAAC,CAAC"}
@@ -3,23 +3,23 @@ import { Builder, resolveValueOrUpdateCallback } from "../builder.js";
3
3
  * @alpha
4
4
  */
5
5
  export class WidgetBaseBuilder extends Builder {
6
- constructor() {
7
- super(...arguments);
8
- this.setWidget = (updateCallback) => {
9
- this.item = updateCallback(this.item);
10
- return this;
11
- };
12
- this.setWidgetProp = (prop, valueOrUpdateCallback) => {
13
- this.setWidget((w) => (Object.assign(Object.assign({}, w), { [prop]: resolveValueOrUpdateCallback(valueOrUpdateCallback, w[prop]) })));
14
- return this;
15
- };
16
- this.title = (valueOrUpdateCallback) => this.setWidgetProp("title", valueOrUpdateCallback);
17
- this.description = (valueOrUpdateCallback) => this.setWidgetProp("description", valueOrUpdateCallback);
18
- this.ignoreDashboardFilters = (valueOrUpdateCallback) => this.setWidgetProp("ignoreDashboardFilters", valueOrUpdateCallback);
19
- this.dateDataSet = (valueOrUpdateCallback) => this.setWidgetProp("dateDataSet", valueOrUpdateCallback);
20
- this.ref = (valueOrUpdateCallback) => this.setWidgetProp("ref", valueOrUpdateCallback);
21
- this.id = (valueOrUpdateCallback) => this.setWidgetProp("identifier", valueOrUpdateCallback);
22
- this.uri = (valueOrUpdateCallback) => this.setWidgetProp("uri", valueOrUpdateCallback);
23
- }
6
+ setWidget = (updateCallback) => {
7
+ this.item = updateCallback(this.item);
8
+ return this;
9
+ };
10
+ setWidgetProp = (prop, valueOrUpdateCallback) => {
11
+ this.setWidget((w) => ({
12
+ ...w,
13
+ [prop]: resolveValueOrUpdateCallback(valueOrUpdateCallback, w[prop]),
14
+ }));
15
+ return this;
16
+ };
17
+ title = (valueOrUpdateCallback) => this.setWidgetProp("title", valueOrUpdateCallback);
18
+ description = (valueOrUpdateCallback) => this.setWidgetProp("description", valueOrUpdateCallback);
19
+ ignoreDashboardFilters = (valueOrUpdateCallback) => this.setWidgetProp("ignoreDashboardFilters", valueOrUpdateCallback);
20
+ dateDataSet = (valueOrUpdateCallback) => this.setWidgetProp("dateDataSet", valueOrUpdateCallback);
21
+ ref = (valueOrUpdateCallback) => this.setWidgetProp("ref", valueOrUpdateCallback);
22
+ id = (valueOrUpdateCallback) => this.setWidgetProp("identifier", valueOrUpdateCallback);
23
+ uri = (valueOrUpdateCallback) => this.setWidgetProp("uri", valueOrUpdateCallback);
24
24
  }
25
25
  //# sourceMappingURL=widgetFactory.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"widgetFactory.js","sourceRoot":"","sources":["../../../src/ldmFactories/dashboard/widgetFactory.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAY,4BAA4B,EAAyB,MAAM,eAAe,CAAC;AAiBvG;;GAEG;AACH,MAAM,OAAO,iBAAqC,SAAQ,OAAU;IAApE;;QACc,cAAS,GAAG,CAAC,cAAkD,EAAQ,EAAE;YAC/E,IAAI,CAAC,IAAI,GAAG,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACtC,OAAO,IAAI,CAAC;QAChB,CAAC,CAAC;QAEQ,kBAAa,GAAG,CACtB,IAAO,EACP,qBAAkD,EAC9C,EAAE;YACN,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,iCACf,CAAC,KACJ,CAAC,IAAI,CAAC,EAAE,4BAA4B,CAAC,qBAAqB,EAAE,CAAC,CAAC,IAAI,CAAE,CAAC,IACvE,CAAC,CAAC;YACJ,OAAO,IAAI,CAAC;QAChB,CAAC,CAAC;QAEK,UAAK,GAAG,CAAC,qBAAoD,EAAQ,EAAE,CAC1E,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,qBAAqB,CAAC,CAAC;QAEhD,gBAAW,GAAG,CAAC,qBAAoD,EAAQ,EAAE,CAChF,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,qBAAqB,CAAC,CAAC;QAEtD,2BAAsB,GAAG,CAC5B,qBAAyE,EACrE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,wBAAwB,EAAE,qBAAqB,CAAC,CAAC;QAExE,gBAAW,GAAG,CAAC,qBAAgE,EAAQ,EAAE,CAC5F,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,qBAAqB,CAAC,CAAC;QAEtD,QAAG,GAAG,CAAC,qBAAoD,EAAQ,EAAE,CACxE,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,qBAAqB,CAAC,CAAC;QAE9C,OAAE,GAAG,CAAC,qBAAoD,EAAQ,EAAE,CACvE,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,qBAAqB,CAAC,CAAC;QAErD,QAAG,GAAG,CAAC,qBAAoD,EAAQ,EAAE,CACxE,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,qBAAqB,CAAC,CAAC;IACzD,CAAC;CAAA"}
1
+ {"version":3,"file":"widgetFactory.js","sourceRoot":"","sources":["../../../src/ldmFactories/dashboard/widgetFactory.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAY,4BAA4B,EAAyB,MAAM,eAAe,CAAC;AAiBvG;;GAEG;AACH,MAAM,OAAO,iBAAqC,SAAQ,OAAU;IACtD,SAAS,GAAG,CAAC,cAAkD,EAAQ,EAAE;QAC/E,IAAI,CAAC,IAAI,GAAG,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACtC,OAAO,IAAI,CAAC;IAChB,CAAC,CAAC;IAEQ,aAAa,GAAG,CACtB,IAAO,EACP,qBAAkD,EAC9C,EAAE;QACN,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACnB,GAAG,CAAC;YACJ,CAAC,IAAI,CAAC,EAAE,4BAA4B,CAAC,qBAAqB,EAAE,CAAC,CAAC,IAAI,CAAE,CAAC;SACxE,CAAC,CAAC,CAAC;QACJ,OAAO,IAAI,CAAC;IAChB,CAAC,CAAC;IAEK,KAAK,GAAG,CAAC,qBAAoD,EAAQ,EAAE,CAC1E,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,qBAAqB,CAAC,CAAC;IAEhD,WAAW,GAAG,CAAC,qBAAoD,EAAQ,EAAE,CAChF,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,qBAAqB,CAAC,CAAC;IAEtD,sBAAsB,GAAG,CAC5B,qBAAyE,EACrE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,wBAAwB,EAAE,qBAAqB,CAAC,CAAC;IAExE,WAAW,GAAG,CAAC,qBAAgE,EAAQ,EAAE,CAC5F,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,qBAAqB,CAAC,CAAC;IAEtD,GAAG,GAAG,CAAC,qBAAoD,EAAQ,EAAE,CACxE,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,qBAAqB,CAAC,CAAC;IAE9C,EAAE,GAAG,CAAC,qBAAoD,EAAQ,EAAE,CACvE,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,qBAAqB,CAAC,CAAC;IAErD,GAAG,GAAG,CAAC,qBAAoD,EAAQ,EAAE,CACxE,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,qBAAqB,CAAC,CAAC;CACxD"}
@@ -6,12 +6,10 @@ import { defFingerprint, } from "@gooddata/sdk-model";
6
6
  import { Denormalizer, Normalizer } from "./normalizer.js";
7
7
  import cloneDeep from "lodash/cloneDeep.js";
8
8
  class WithNormalizationExecutionFactory extends DecoratedExecutionFactory {
9
+ config;
9
10
  constructor(decorated, config) {
10
11
  super(decorated);
11
12
  this.config = config;
12
- this.wrap = (original) => {
13
- return new NormalizingPreparedExecution(original, this.decorated, this.config);
14
- };
15
13
  }
16
14
  forInsightByRef(insight, filters) {
17
15
  const isFallbackAllowed = this.config.executeByRefMode === "fallback";
@@ -21,6 +19,9 @@ class WithNormalizationExecutionFactory extends DecoratedExecutionFactory {
21
19
  throw new NotSupported("Execution by reference is not supported when using normalizing backend. " +
22
20
  "Use forInsight() instead.");
23
21
  }
22
+ wrap = (original) => {
23
+ return new NormalizingPreparedExecution(original, this.decorated, this.config);
24
+ };
24
25
  }
25
26
  /**
26
27
  * Prepared execution which does normalization. The prepared execution works with the original
@@ -32,23 +33,24 @@ class WithNormalizationExecutionFactory extends DecoratedExecutionFactory {
32
33
  * It thus obtains the normalized execution and starts it, obtaining the normalized result.
33
34
  */
34
35
  class NormalizingPreparedExecution extends DecoratedPreparedExecution {
36
+ originalExecutionFactory;
37
+ config;
35
38
  constructor(decorated, originalExecutionFactory, config) {
36
39
  super(decorated);
37
40
  this.originalExecutionFactory = originalExecutionFactory;
38
41
  this.config = config;
39
- this.execute = () => {
40
- var _a, _b;
41
- const normalizationState = Normalizer.normalize(this.definition);
42
- const normalizedExecution = this.originalExecutionFactory.forDefinition(normalizationState.normalized);
43
- (_b = (_a = this.config).normalizationStatus) === null || _b === void 0 ? void 0 : _b.call(_a, normalizationState);
44
- return normalizedExecution.execute().then((result) => {
45
- return new DenormalizingExecutionResult(result, normalizationState, this, this.decorated);
46
- });
47
- };
48
- this.createNew = (decorated) => {
49
- return new NormalizingPreparedExecution(decorated, this.originalExecutionFactory, this.config);
50
- };
51
42
  }
43
+ execute = () => {
44
+ const normalizationState = Normalizer.normalize(this.definition);
45
+ const normalizedExecution = this.originalExecutionFactory.forDefinition(normalizationState.normalized);
46
+ this.config.normalizationStatus?.(normalizationState);
47
+ return normalizedExecution.execute().then((result) => {
48
+ return new DenormalizingExecutionResult(result, normalizationState, this, this.decorated);
49
+ });
50
+ };
51
+ createNew = (decorated) => {
52
+ return new NormalizingPreparedExecution(decorated, this.originalExecutionFactory, this.config);
53
+ };
52
54
  }
53
55
  /**
54
56
  * An implementation of de-normalizing execution result.
@@ -68,53 +70,61 @@ class NormalizingPreparedExecution extends DecoratedPreparedExecution {
68
70
  * and exports result from it.
69
71
  */
70
72
  class DenormalizingExecutionResult {
73
+ normalizedResult;
74
+ normalizationState;
75
+ normalizingExecution;
76
+ originalExecution;
77
+ definition;
78
+ dimensions;
79
+ denormalizer;
80
+ _fingerprint;
71
81
  constructor(normalizedResult, normalizationState, normalizingExecution, originalExecution) {
72
82
  this.normalizedResult = normalizedResult;
73
83
  this.normalizationState = normalizationState;
74
84
  this.normalizingExecution = normalizingExecution;
75
85
  this.originalExecution = originalExecution;
76
- this.transform = () => {
77
- return this.normalizingExecution;
78
- };
79
- this.export = async (options) => {
80
- const originalResult = await this.originalExecution.execute();
81
- return originalResult.export(options);
82
- };
83
- this.readAll = () => {
84
- const promisedDataView = this.normalizedResult.readAll();
85
- return promisedDataView
86
- .then((dataView) => {
87
- return new DenormalizedDataView(this, dataView, this.denormalizer);
88
- })
89
- .catch(this.handleDataViewError);
90
- };
91
- this.readWindow = (offset, size) => {
92
- const promisedDataView = this.normalizedResult.readWindow(offset, size);
93
- return promisedDataView
94
- .then((dataView) => {
95
- return new DenormalizedDataView(this, dataView, this.denormalizer);
96
- })
97
- .catch(this.handleDataViewError);
98
- };
99
- this.equals = (other) => {
100
- return this._fingerprint === other.fingerprint();
101
- };
102
- this.fingerprint = () => {
103
- return this._fingerprint;
104
- };
105
- this.handleDataViewError = (error) => {
106
- // make sure that errors with dataViews are repackaged with the dataView denormalized as well
107
- // otherwise the dataViews will not make sense to the caller
108
- if (isNoDataError(error) && error.dataView) {
109
- throw new NoDataError(error.message, new DenormalizedDataView(this, error.dataView, this.denormalizer));
110
- }
111
- throw error;
112
- };
113
86
  this.denormalizer = Denormalizer.from(normalizationState);
114
87
  this.definition = this.normalizationState.original;
115
88
  this.dimensions = this.denormalizer.denormalizeDimDescriptors(normalizedResult.dimensions);
116
89
  this._fingerprint = `normalizedResult_${defFingerprint(this.definition)}`;
117
90
  }
91
+ transform = () => {
92
+ return this.normalizingExecution;
93
+ };
94
+ export = async (options) => {
95
+ const originalResult = await this.originalExecution.execute();
96
+ return originalResult.export(options);
97
+ };
98
+ readAll = () => {
99
+ const promisedDataView = this.normalizedResult.readAll();
100
+ return promisedDataView
101
+ .then((dataView) => {
102
+ return new DenormalizedDataView(this, dataView, this.denormalizer);
103
+ })
104
+ .catch(this.handleDataViewError);
105
+ };
106
+ readWindow = (offset, size) => {
107
+ const promisedDataView = this.normalizedResult.readWindow(offset, size);
108
+ return promisedDataView
109
+ .then((dataView) => {
110
+ return new DenormalizedDataView(this, dataView, this.denormalizer);
111
+ })
112
+ .catch(this.handleDataViewError);
113
+ };
114
+ equals = (other) => {
115
+ return this._fingerprint === other.fingerprint();
116
+ };
117
+ fingerprint = () => {
118
+ return this._fingerprint;
119
+ };
120
+ handleDataViewError = (error) => {
121
+ // make sure that errors with dataViews are repackaged with the dataView denormalized as well
122
+ // otherwise the dataViews will not make sense to the caller
123
+ if (isNoDataError(error) && error.dataView) {
124
+ throw new NoDataError(error.message, new DenormalizedDataView(this, error.dataView, this.denormalizer));
125
+ }
126
+ throw error;
127
+ };
118
128
  }
119
129
  /**
120
130
  * Denormalized DataView takes mostly copies of the contents of the normalized data view. The only exception is the
@@ -122,14 +132,19 @@ class DenormalizingExecutionResult {
122
132
  * backend to localId).
123
133
  */
124
134
  class DenormalizedDataView {
135
+ normalizedDataView;
136
+ definition;
137
+ result;
138
+ data;
139
+ headerItems;
140
+ offset;
141
+ count;
142
+ totalCount;
143
+ totals;
144
+ totalTotals;
145
+ _fingerprint;
125
146
  constructor(result, normalizedDataView, denormalizer) {
126
147
  this.normalizedDataView = normalizedDataView;
127
- this.equals = (other) => {
128
- return this._fingerprint === other.fingerprint();
129
- };
130
- this.fingerprint = () => {
131
- return this._fingerprint;
132
- };
133
148
  this.result = result;
134
149
  this.definition = this.result.definition;
135
150
  this.count = cloneDeep(this.normalizedDataView.count);
@@ -141,6 +156,12 @@ class DenormalizedDataView {
141
156
  this.totalTotals = cloneDeep(this.normalizedDataView.totalTotals);
142
157
  this._fingerprint = `${this.result.fingerprint()}/${this.offset.join(",")}-${this.count.join(",")}`;
143
158
  }
159
+ equals = (other) => {
160
+ return this._fingerprint === other.fingerprint();
161
+ };
162
+ fingerprint = () => {
163
+ return this._fingerprint;
164
+ };
144
165
  }
145
166
  /**
146
167
  * Decorates backend with logic which transparently normalizes execution definitions before they are dispatched
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/normalizingBackend/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/normalizingBackend/index.ts"],"names":[],"mappings":"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"}