@finos/legend-application-data-cube 0.4.3 → 0.4.5

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.
@@ -35,7 +35,7 @@ export declare const TEST__provideMockedLegendDataCubeBuilderStore: (customizati
35
35
  extraPlugins?: AbstractPlugin[];
36
36
  extraPresets?: AbstractPreset[];
37
37
  }) => Promise<LegendDataCubeBuilderStore>;
38
- export declare const TEST__setUpDataCubeBuilder: (MOCK__builderStore: LegendDataCubeBuilderStore, mockDataCube?: PersistentDataCube, mockQuery?: V1_Query, mockEntities?: PlainObject<Entity>[]) => Promise<{
38
+ export declare const TEST__setUpDataCubeBuilder: (MOCK__builderStore: LegendDataCubeBuilderStore, mockDataCube?: PersistentDataCube, mockQuery?: V1_Query, mockEntities?: PlainObject<Entity>[], forceUseInputModel?: boolean) => Promise<{
39
39
  renderResult: RenderResult;
40
40
  legendDataCubeBuilderState: LegendDataCubeBuilderState | undefined;
41
41
  }>;
@@ -1 +1 @@
1
- {"version":3,"file":"LegendDataCubeStoreTestUtils.d.ts","sourceRoot":"","sources":["../../../src/components/__test-utils__/LegendDataCubeStoreTestUtils.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,KAAK,YAAY,EAAmB,MAAM,wBAAwB,CAAC;AAC5E,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,WAAW,EACjB,MAAM,sBAAsB,CAAC;AAM9B,OAAO,EAAE,2BAA2B,EAAE,MAAM,kDAAkD,CAAC;AAG/F,OAAO,EACL,KAAK,0BAA0B,EAC/B,0BAA0B,EAC3B,MAAM,oDAAoD,CAAC;AAC5D,OAAO,EACL,KAAK,8BAA8B,EACnC,uBAAuB,EACxB,MAAM,yCAAyC,CAAC;AAQjD,OAAO,EACL,KAAK,kBAAkB,EAEvB,KAAK,QAAQ,EAOd,MAAM,qBAAqB,CAAC;AAW7B,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAGpD,eAAO,MAAM,0CAA0C,GAC9C,gBAAgB;IACrB,IAAI,CAAC,EAAE,uBAAuB,GAAG,SAAS,CAAC;IAC3C,gBAAgB,CAAC,EAAE,8BAA8B,GAAG,SAAS,CAAC;IAC9D,aAAa,CAAC,EAAE,2BAA2B,GAAG,SAAS,CAAC;IACxD,YAAY,CAAC,EAAE,cAAc,EAAE,GAAG,SAAS,CAAC;IAC5C,YAAY,CAAC,EAAE,cAAc,EAAE,GAAG,SAAS,CAAC;CAC7C,KAAG,OAAO,CAAC,uBAAuB,CA+BlC,CAAC;AAEJ,eAAO,MAAM,6CAA6C,GACjD,gBAAgB;IACrB,IAAI,CAAC,EAAE,0BAA0B,CAAC;IAClC,aAAa,CAAC,EAAE,uBAAuB,CAAC;IACxC,gBAAgB,CAAC,EAAE,8BAA8B,CAAC;IAClD,aAAa,CAAC,EAAE,2BAA2B,CAAC;IAC5C,YAAY,CAAC,EAAE,cAAc,EAAE,CAAC;IAChC,YAAY,CAAC,EAAE,cAAc,EAAE,CAAC;CACjC,KAAG,OAAO,CAAC,0BAA0B,CAmBrC,CAAC;AAEJ,eAAO,MAAM,0BAA0B,GACrC,oBAAoB,0BAA0B,EAC9C,eAAe,kBAAkB,EACjC,YAAY,QAAQ,EACpB,eAAe,WAAW,CAAC,MAAM,CAAC,EAAE,KACnC,OAAO,CAAC;IACT,YAAY,EAAE,YAAY,CAAC;IAC3B,0BAA0B,EAAE,0BAA0B,GAAG,SAAS,CAAC;CACpE,CA8GA,CAAC"}
1
+ {"version":3,"file":"LegendDataCubeStoreTestUtils.d.ts","sourceRoot":"","sources":["../../../src/components/__test-utils__/LegendDataCubeStoreTestUtils.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,KAAK,YAAY,EAAmB,MAAM,wBAAwB,CAAC;AAC5E,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,WAAW,EACjB,MAAM,sBAAsB,CAAC;AAM9B,OAAO,EAAE,2BAA2B,EAAE,MAAM,kDAAkD,CAAC;AAG/F,OAAO,EACL,KAAK,0BAA0B,EAC/B,0BAA0B,EAC3B,MAAM,oDAAoD,CAAC;AAC5D,OAAO,EACL,KAAK,8BAA8B,EACnC,uBAAuB,EACxB,MAAM,yCAAyC,CAAC;AAQjD,OAAO,EACL,KAAK,kBAAkB,EAEvB,KAAK,QAAQ,EAOd,MAAM,qBAAqB,CAAC;AAW7B,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAGpD,eAAO,MAAM,0CAA0C,GAC9C,gBAAgB;IACrB,IAAI,CAAC,EAAE,uBAAuB,GAAG,SAAS,CAAC;IAC3C,gBAAgB,CAAC,EAAE,8BAA8B,GAAG,SAAS,CAAC;IAC9D,aAAa,CAAC,EAAE,2BAA2B,GAAG,SAAS,CAAC;IACxD,YAAY,CAAC,EAAE,cAAc,EAAE,GAAG,SAAS,CAAC;IAC5C,YAAY,CAAC,EAAE,cAAc,EAAE,GAAG,SAAS,CAAC;CAC7C,KAAG,OAAO,CAAC,uBAAuB,CA+BlC,CAAC;AAEJ,eAAO,MAAM,6CAA6C,GACjD,gBAAgB;IACrB,IAAI,CAAC,EAAE,0BAA0B,CAAC;IAClC,aAAa,CAAC,EAAE,uBAAuB,CAAC;IACxC,gBAAgB,CAAC,EAAE,8BAA8B,CAAC;IAClD,aAAa,CAAC,EAAE,2BAA2B,CAAC;IAC5C,YAAY,CAAC,EAAE,cAAc,EAAE,CAAC;IAChC,YAAY,CAAC,EAAE,cAAc,EAAE,CAAC;CACjC,KAAG,OAAO,CAAC,0BAA0B,CAmBrC,CAAC;AAEJ,eAAO,MAAM,0BAA0B,GACrC,oBAAoB,0BAA0B,EAC9C,eAAe,kBAAkB,EACjC,YAAY,QAAQ,EACpB,eAAe,WAAW,CAAC,MAAM,CAAC,EAAE,EACpC,qBAAoB,OAAe,KAClC,OAAO,CAAC;IACT,YAAY,EAAE,YAAY,CAAC;IAC3B,0BAA0B,EAAE,0BAA0B,GAAG,SAAS,CAAC;CACpE,CAoHA,CAAC"}
@@ -73,7 +73,7 @@ export const TEST__provideMockedLegendDataCubeBuilderStore = async (customizatio
73
73
  MOCK__LegendDataCubeBuilderStoreProvider.useLegendDataCubeBuilderStore.mockReturnValue(value);
74
74
  return value;
75
75
  };
76
- export const TEST__setUpDataCubeBuilder = async (MOCK__builderStore, mockDataCube, mockQuery, mockEntities) => {
76
+ export const TEST__setUpDataCubeBuilder = async (MOCK__builderStore, mockDataCube, mockQuery, mockEntities, forceUseInputModel = false) => {
77
77
  if (mockDataCube) {
78
78
  createSpy(MOCK__builderStore.graphManager, 'getDataCube').mockResolvedValue(mockDataCube);
79
79
  }
@@ -85,17 +85,23 @@ export const TEST__setUpDataCubeBuilder = async (MOCK__builderStore, mockDataCub
85
85
  await V1_entitiesToPureModelContextData(mockEntities, pmcd, MOCK__builderStore.application.pluginManager.getPureProtocolProcessorPlugins(), undefined, undefined);
86
86
  createSpy(MOCK__builderStore.depotServerClient, 'getVersionEntities').mockResolvedValue(mockEntities);
87
87
  createSpy(MOCK__builderStore.engineServerClient, 'lambdaReturnType').mockImplementation(async (input) => {
88
- return ENGINE_TEST_SUPPORT__getLambdaReturnType(input.lambda, V1_serializePureModelContext(pmcd));
88
+ return ENGINE_TEST_SUPPORT__getLambdaReturnType(input.lambda, forceUseInputModel
89
+ ? input.model
90
+ : V1_serializePureModelContext(pmcd));
89
91
  });
90
92
  createSpy(MOCK__builderStore.engineServerClient, 'lambdaRelationType').mockImplementation(async (input) => {
91
- return ENGINE_TEST_SUPPORT__getLambdaRelationType(input.lambda, V1_serializePureModelContext(pmcd));
93
+ return ENGINE_TEST_SUPPORT__getLambdaRelationType(input.lambda, forceUseInputModel
94
+ ? input.model
95
+ : V1_serializePureModelContext(pmcd));
92
96
  });
93
97
  createSpy(MOCK__builderStore.engineServerClient, 'transformTdsToRelation_lambda').mockImplementation(async (input) => {
94
- return ENGINE_TEST_SUPPORT__transformTdsToRelation_lambda(input.lambda, V1_serializePureModelContext(pmcd));
98
+ return ENGINE_TEST_SUPPORT__transformTdsToRelation_lambda(input.lambda, forceUseInputModel
99
+ ? input.model
100
+ : V1_serializePureModelContext(pmcd));
95
101
  });
96
102
  createSpy(MOCK__builderStore.engineServerClient, 'runQuery').mockImplementation(async (input) => {
97
103
  const executeInput = V1_ExecuteInput.serialization.fromJson(input);
98
- executeInput.model = pmcd;
104
+ executeInput.model = forceUseInputModel ? executeInput.model : pmcd;
99
105
  return ENGINE_TEST_SUPPORT__execute(executeInput);
100
106
  });
101
107
  }
@@ -1 +1 @@
1
- {"version":3,"file":"LegendDataCubeStoreTestUtils.js","sourceRoot":"","sources":["../../../src/components/__test-utils__/LegendDataCubeStoreTestUtils.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LegendDataCubeStoreTestUtils.js","sourceRoot":"","sources":["../../../src/components/__test-utils__/LegendDataCubeStoreTestUtils.tsx"],"names":[],"mappings":"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"}
package/lib/index.css CHANGED
@@ -1,4 +1,4 @@
1
- /** @license @finos/legend-application-data-cube v0.4.3
1
+ /** @license @finos/legend-application-data-cube v0.4.5
2
2
  * Copyright (c) 2020-present, Goldman Sachs
3
3
  *
4
4
  * Licensed under the Apache License, Version 2.0 (the "License");
package/lib/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@finos/legend-application-data-cube",
3
- "version": "0.4.3",
3
+ "version": "0.4.5",
4
4
  "description": "Legend DataCube application core",
5
5
  "keywords": [
6
6
  "legend",
@@ -54,6 +54,7 @@ export declare class LegendDataCubeDataCubeEngine extends DataCubeEngine {
54
54
  executionTime: number;
55
55
  }>;
56
56
  exportData(query: V1_Lambda, source: DataCubeSource, format: DataCubeGridClientExportFormat, options?: DataCubeExecutionOptions | undefined): Promise<void | Response>;
57
+ private _processLegendQueryParams;
57
58
  buildExecutionContext(source: DataCubeSource): V1_AppliedFunction | undefined;
58
59
  initializeCache(source: DataCubeSource, options?: DataCubeCacheInitializationOptions | undefined): Promise<CachedDataCubeSource | undefined>;
59
60
  disposeCache(source: CachedDataCubeSource): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"LegendDataCubeDataCubeEngine.d.ts","sourceRoot":"","sources":["../../src/stores/LegendDataCubeDataCubeEngine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LegendDataCubeDataCubeEngine.d.ts","sourceRoot":"","sources":["../../src/stores/LegendDataCubeDataCubeEngine.ts"],"names":[],"mappings":"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"}
@@ -482,37 +482,7 @@ export class LegendDataCubeDataCubeEngine extends DataCubeEngine {
482
482
  result = await this._runQuery(query, source.model, undefined, options);
483
483
  }
484
484
  else if (source instanceof LegendQueryDataCubeSource) {
485
- // To handle parameter value with function calls we
486
- // 1. Separate the parameters with function calls from regular parameters
487
- // 2. Add let statements for function parameter values and store them in the source's letParameterValueSpec
488
- // 3. Prepend the let statements to the lambda body when we execute the query
489
- const letFuncs = [];
490
- const filteredParameterValues = (await Promise.all(source.parameterValues.map(async ({ variable, valueSpec }) => {
491
- if (variable.genericType?.rawType instanceof V1_PackageableType) {
492
- if (valueSpec instanceof V1_AppliedFunction) {
493
- const letFunc = guaranteeType(this.deserializeValueSpecification(await this._engineServerClient.grammarToJSON_lambda(`${LET_TOKEN} ${variable.name} ${DataCubeQueryFilterOperator.EQUAL} ${await this.getValueSpecificationCode(valueSpec)}`, '', undefined, undefined, false)), V1_Lambda);
494
- letFuncs.push(...letFunc.body);
495
- }
496
- else {
497
- const paramValue = new V1_ParameterValue();
498
- paramValue.name = variable.name;
499
- paramValue.value = valueSpec;
500
- return paramValue;
501
- }
502
- }
503
- return undefined;
504
- }))).filter(isNonNullable);
505
- query.parameters = source.lambda.parameters.filter((param) => filteredParameterValues.find((p) => p.name === param.name));
506
- // If the source lambda has multiple expressions, we should prepend all but the
507
- // last expression to the transformed query body (which came from the final
508
- // expression of the source lambda).
509
- query.body = [
510
- ...letFuncs,
511
- ...(source.lambda.body.length > 1
512
- ? source.lambda.body.slice(0, -1)
513
- : []),
514
- ...query.body,
515
- ];
485
+ const filteredParameterValues = await this._processLegendQueryParams(source, query);
516
486
  result = await this._runQuery(query, source.model, filteredParameterValues, options);
517
487
  }
518
488
  else if (source instanceof CachedDataCubeSource) {
@@ -594,37 +564,7 @@ export class LegendDataCubeDataCubeEngine extends DataCubeEngine {
594
564
  return (await this._runExportQuery(query, source.model, format, undefined, options));
595
565
  }
596
566
  else if (source instanceof LegendQueryDataCubeSource) {
597
- // To handle parameter value with function calls we
598
- // 1. Separate the parameters with function calls from regular parameters
599
- // 2. Add let statements for function parameter values and store them in the source's letParameterValueSpec
600
- // 3. Prepend the let statements to the lambda body when we execute the query
601
- const letFuncs = [];
602
- const filteredParameterValues = (await Promise.all(source.parameterValues.map(async ({ variable, valueSpec }) => {
603
- if (variable.genericType?.rawType instanceof V1_PackageableType) {
604
- if (valueSpec instanceof V1_AppliedFunction) {
605
- const letFunc = guaranteeType(this.deserializeValueSpecification(await this._engineServerClient.grammarToJSON_lambda(`${LET_TOKEN} ${variable.name} ${DataCubeQueryFilterOperator.EQUAL} ${await this.getValueSpecificationCode(valueSpec)}`, '', undefined, undefined, false)), V1_Lambda);
606
- letFuncs.push(...letFunc.body);
607
- }
608
- else {
609
- const paramValue = new V1_ParameterValue();
610
- paramValue.name = variable.name;
611
- paramValue.value = valueSpec;
612
- return paramValue;
613
- }
614
- }
615
- return undefined;
616
- }))).filter(isNonNullable);
617
- query.parameters = source.lambda.parameters.filter((param) => filteredParameterValues.find((p) => p.name === param.name));
618
- // If the source lambda has multiple expressions, we should prepend all but the
619
- // last expression to the transformed query body (which came from the final
620
- // expression of the source lambda).
621
- query.body = [
622
- ...letFuncs,
623
- ...(source.lambda.body.length > 1
624
- ? source.lambda.body.slice(0, -1)
625
- : []),
626
- ...query.body,
627
- ];
567
+ const filteredParameterValues = await this._processLegendQueryParams(source, query);
628
568
  return (await this._runExportQuery(query, source.model, format, filteredParameterValues, options));
629
569
  // TODO: implement export for duck-db sources like cache and localCSV
630
570
  }
@@ -645,6 +585,38 @@ export class LegendDataCubeDataCubeEngine extends DataCubeEngine {
645
585
  throw error;
646
586
  }
647
587
  }
588
+ async _processLegendQueryParams(source, query) {
589
+ // To handle parameter value with function calls we
590
+ // 1. Separate the parameters with function calls from regular parameters
591
+ // 2. Add let statements for function parameter values and store them in the source's letParameterValueSpec
592
+ // 3. Prepend the let statements to the lambda body when we execute the query
593
+ const letFuncs = [];
594
+ const filteredParameterValues = (await Promise.all(source.parameterValues.map(async ({ variable, valueSpec }) => {
595
+ if (variable.genericType?.rawType instanceof V1_PackageableType) {
596
+ if (valueSpec instanceof V1_AppliedFunction) {
597
+ const letFunc = guaranteeType(this.deserializeValueSpecification(await this._engineServerClient.grammarToJSON_lambda(`${LET_TOKEN} ${variable.name} ${DataCubeQueryFilterOperator.EQUAL} ${await this.getValueSpecificationCode(valueSpec)}`, '', undefined, undefined, false)), V1_Lambda);
598
+ letFuncs.push(...letFunc.body);
599
+ }
600
+ else {
601
+ const paramValue = new V1_ParameterValue();
602
+ paramValue.name = variable.name;
603
+ paramValue.value = valueSpec;
604
+ return paramValue;
605
+ }
606
+ }
607
+ return undefined;
608
+ }))).filter(isNonNullable);
609
+ query.parameters = source.lambda.parameters.filter((param) => filteredParameterValues.find((p) => p.name === param.name));
610
+ // If the source lambda has multiple expressions, we should prepend all but the
611
+ // last expression to the transformed query body (which came from the final
612
+ // expression of the source lambda).
613
+ query.body = [
614
+ ...letFuncs,
615
+ ...(source.lambda.body.length > 1 ? source.lambda.body.slice(0, -1) : []),
616
+ ...query.body,
617
+ ];
618
+ return filteredParameterValues;
619
+ }
648
620
  buildExecutionContext(source) {
649
621
  if (source instanceof FreeformTDSExpressionDataCubeSource) {
650
622
  return _function(DataCubeFunction.FROM, [
@@ -742,6 +714,9 @@ export class LegendDataCubeDataCubeEngine extends DataCubeEngine {
742
714
  return this._getLambdaRelationType(query, source.model);
743
715
  }
744
716
  else if (source instanceof LegendQueryDataCubeSource) {
717
+ const deserializedQuery = guaranteeType(this.deserializeValueSpecification(query), V1_Lambda);
718
+ await this._processLegendQueryParams(source, deserializedQuery);
719
+ query = this.serializeValueSpecification(deserializedQuery);
745
720
  return this._getLambdaRelationType(query, source.model);
746
721
  }
747
722
  else if (source instanceof CachedDataCubeSource) {
@@ -1 +1 @@
1
- {"version":3,"file":"LegendDataCubeDataCubeEngine.js","sourceRoot":"","sources":["../../src/stores/LegendDataCubeDataCubeEngine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LegendDataCubeDataCubeEngine.js","sourceRoot":"","sources":["../../src/stores/LegendDataCubeDataCubeEngine.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@finos/legend-application-data-cube",
3
- "version": "0.4.3",
3
+ "version": "0.4.5",
4
4
  "description": "Legend DataCube application core",
5
5
  "keywords": [
6
6
  "legend",
@@ -45,10 +45,10 @@
45
45
  "@duckdb/duckdb-wasm": "1.29.0",
46
46
  "@finos/legend-application": "16.0.58",
47
47
  "@finos/legend-art": "7.1.112",
48
- "@finos/legend-code-editor": "2.0.97",
49
- "@finos/legend-data-cube": "0.3.3",
50
- "@finos/legend-graph": "32.1.55",
51
- "@finos/legend-query-builder": "4.17.15",
48
+ "@finos/legend-code-editor": "2.0.99",
49
+ "@finos/legend-data-cube": "0.3.5",
50
+ "@finos/legend-graph": "32.1.57",
51
+ "@finos/legend-query-builder": "4.17.17",
52
52
  "@finos/legend-server-depot": "6.0.97",
53
53
  "@finos/legend-shared": "11.0.18",
54
54
  "@finos/legend-storage": "3.0.137",
@@ -141,6 +141,7 @@ export const TEST__setUpDataCubeBuilder = async (
141
141
  mockDataCube?: PersistentDataCube,
142
142
  mockQuery?: V1_Query,
143
143
  mockEntities?: PlainObject<Entity>[],
144
+ forceUseInputModel: boolean = false,
144
145
  ): Promise<{
145
146
  renderResult: RenderResult;
146
147
  legendDataCubeBuilderState: LegendDataCubeBuilderState | undefined;
@@ -176,7 +177,9 @@ export const TEST__setUpDataCubeBuilder = async (
176
177
  async (input: PlainObject<V1_LambdaReturnTypeInput>) => {
177
178
  return ENGINE_TEST_SUPPORT__getLambdaReturnType(
178
179
  input.lambda as PlainObject<V1_RawLambda>,
179
- V1_serializePureModelContext(pmcd),
180
+ forceUseInputModel
181
+ ? (input.model as PlainObject<V1_PureModelContextData>)
182
+ : V1_serializePureModelContext(pmcd),
180
183
  );
181
184
  },
182
185
  );
@@ -187,7 +190,9 @@ export const TEST__setUpDataCubeBuilder = async (
187
190
  async (input: PlainObject<V1_LambdaReturnTypeInput>) => {
188
191
  return ENGINE_TEST_SUPPORT__getLambdaRelationType(
189
192
  input.lambda as PlainObject<V1_RawLambda>,
190
- V1_serializePureModelContext(pmcd),
193
+ forceUseInputModel
194
+ ? (input.model as PlainObject<V1_PureModelContextData>)
195
+ : V1_serializePureModelContext(pmcd),
191
196
  );
192
197
  },
193
198
  );
@@ -198,7 +203,9 @@ export const TEST__setUpDataCubeBuilder = async (
198
203
  async (input: PlainObject<V1_LambdaReturnTypeInput>) => {
199
204
  return ENGINE_TEST_SUPPORT__transformTdsToRelation_lambda(
200
205
  input.lambda as PlainObject<V1_RawLambda>,
201
- V1_serializePureModelContext(pmcd),
206
+ forceUseInputModel
207
+ ? (input.model as PlainObject<V1_PureModelContextData>)
208
+ : V1_serializePureModelContext(pmcd),
202
209
  );
203
210
  },
204
211
  );
@@ -207,7 +214,7 @@ export const TEST__setUpDataCubeBuilder = async (
207
214
  'runQuery',
208
215
  ).mockImplementation(async (input: PlainObject<V1_ExecuteInput>) => {
209
216
  const executeInput = V1_ExecuteInput.serialization.fromJson(input);
210
- executeInput.model = pmcd;
217
+ executeInput.model = forceUseInputModel ? executeInput.model : pmcd;
211
218
  return ENGINE_TEST_SUPPORT__execute(executeInput);
212
219
  });
213
220
  }
@@ -831,54 +831,10 @@ export class LegendDataCubeDataCubeEngine extends DataCubeEngine {
831
831
  } else if (source instanceof UserDefinedFunctionDataCubeSource) {
832
832
  result = await this._runQuery(query, source.model, undefined, options);
833
833
  } else if (source instanceof LegendQueryDataCubeSource) {
834
- // To handle parameter value with function calls we
835
- // 1. Separate the parameters with function calls from regular parameters
836
- // 2. Add let statements for function parameter values and store them in the source's letParameterValueSpec
837
- // 3. Prepend the let statements to the lambda body when we execute the query
838
- const letFuncs: V1_ValueSpecification[] = [];
839
- const filteredParameterValues = (
840
- await Promise.all(
841
- source.parameterValues.map(async ({ variable, valueSpec }) => {
842
- if (variable.genericType?.rawType instanceof V1_PackageableType) {
843
- if (valueSpec instanceof V1_AppliedFunction) {
844
- const letFunc = guaranteeType(
845
- this.deserializeValueSpecification(
846
- await this._engineServerClient.grammarToJSON_lambda(
847
- `${LET_TOKEN} ${variable.name} ${DataCubeQueryFilterOperator.EQUAL} ${await this.getValueSpecificationCode(valueSpec)}`,
848
- '',
849
- undefined,
850
- undefined,
851
- false,
852
- ),
853
- ),
854
- V1_Lambda,
855
- );
856
- letFuncs.push(...letFunc.body);
857
- } else {
858
- const paramValue = new V1_ParameterValue();
859
- paramValue.name = variable.name;
860
- paramValue.value = valueSpec;
861
- return paramValue;
862
- }
863
- }
864
- return undefined;
865
- }),
866
- )
867
- ).filter(isNonNullable);
868
-
869
- query.parameters = source.lambda.parameters.filter((param) =>
870
- filteredParameterValues.find((p) => p.name === param.name),
834
+ const filteredParameterValues = await this._processLegendQueryParams(
835
+ source,
836
+ query,
871
837
  );
872
- // If the source lambda has multiple expressions, we should prepend all but the
873
- // last expression to the transformed query body (which came from the final
874
- // expression of the source lambda).
875
- query.body = [
876
- ...letFuncs,
877
- ...(source.lambda.body.length > 1
878
- ? source.lambda.body.slice(0, -1)
879
- : []),
880
- ...query.body,
881
- ];
882
838
  result = await this._runQuery(
883
839
  query,
884
840
  source.model,
@@ -997,54 +953,10 @@ export class LegendDataCubeDataCubeEngine extends DataCubeEngine {
997
953
  options,
998
954
  )) as Response;
999
955
  } else if (source instanceof LegendQueryDataCubeSource) {
1000
- // To handle parameter value with function calls we
1001
- // 1. Separate the parameters with function calls from regular parameters
1002
- // 2. Add let statements for function parameter values and store them in the source's letParameterValueSpec
1003
- // 3. Prepend the let statements to the lambda body when we execute the query
1004
- const letFuncs: V1_ValueSpecification[] = [];
1005
- const filteredParameterValues = (
1006
- await Promise.all(
1007
- source.parameterValues.map(async ({ variable, valueSpec }) => {
1008
- if (variable.genericType?.rawType instanceof V1_PackageableType) {
1009
- if (valueSpec instanceof V1_AppliedFunction) {
1010
- const letFunc = guaranteeType(
1011
- this.deserializeValueSpecification(
1012
- await this._engineServerClient.grammarToJSON_lambda(
1013
- `${LET_TOKEN} ${variable.name} ${DataCubeQueryFilterOperator.EQUAL} ${await this.getValueSpecificationCode(valueSpec)}`,
1014
- '',
1015
- undefined,
1016
- undefined,
1017
- false,
1018
- ),
1019
- ),
1020
- V1_Lambda,
1021
- );
1022
- letFuncs.push(...letFunc.body);
1023
- } else {
1024
- const paramValue = new V1_ParameterValue();
1025
- paramValue.name = variable.name;
1026
- paramValue.value = valueSpec;
1027
- return paramValue;
1028
- }
1029
- }
1030
- return undefined;
1031
- }),
1032
- )
1033
- ).filter(isNonNullable);
1034
-
1035
- query.parameters = source.lambda.parameters.filter((param) =>
1036
- filteredParameterValues.find((p) => p.name === param.name),
956
+ const filteredParameterValues = await this._processLegendQueryParams(
957
+ source,
958
+ query,
1037
959
  );
1038
- // If the source lambda has multiple expressions, we should prepend all but the
1039
- // last expression to the transformed query body (which came from the final
1040
- // expression of the source lambda).
1041
- query.body = [
1042
- ...letFuncs,
1043
- ...(source.lambda.body.length > 1
1044
- ? source.lambda.body.slice(0, -1)
1045
- : []),
1046
- ...query.body,
1047
- ];
1048
960
  return (await this._runExportQuery(
1049
961
  query,
1050
962
  source.model,
@@ -1069,6 +981,59 @@ export class LegendDataCubeDataCubeEngine extends DataCubeEngine {
1069
981
  }
1070
982
  }
1071
983
 
984
+ private async _processLegendQueryParams(
985
+ source: LegendQueryDataCubeSource,
986
+ query: V1_Lambda,
987
+ ) {
988
+ // To handle parameter value with function calls we
989
+ // 1. Separate the parameters with function calls from regular parameters
990
+ // 2. Add let statements for function parameter values and store them in the source's letParameterValueSpec
991
+ // 3. Prepend the let statements to the lambda body when we execute the query
992
+ const letFuncs: V1_ValueSpecification[] = [];
993
+ const filteredParameterValues = (
994
+ await Promise.all(
995
+ source.parameterValues.map(async ({ variable, valueSpec }) => {
996
+ if (variable.genericType?.rawType instanceof V1_PackageableType) {
997
+ if (valueSpec instanceof V1_AppliedFunction) {
998
+ const letFunc = guaranteeType(
999
+ this.deserializeValueSpecification(
1000
+ await this._engineServerClient.grammarToJSON_lambda(
1001
+ `${LET_TOKEN} ${variable.name} ${DataCubeQueryFilterOperator.EQUAL} ${await this.getValueSpecificationCode(valueSpec)}`,
1002
+ '',
1003
+ undefined,
1004
+ undefined,
1005
+ false,
1006
+ ),
1007
+ ),
1008
+ V1_Lambda,
1009
+ );
1010
+ letFuncs.push(...letFunc.body);
1011
+ } else {
1012
+ const paramValue = new V1_ParameterValue();
1013
+ paramValue.name = variable.name;
1014
+ paramValue.value = valueSpec;
1015
+ return paramValue;
1016
+ }
1017
+ }
1018
+ return undefined;
1019
+ }),
1020
+ )
1021
+ ).filter(isNonNullable);
1022
+
1023
+ query.parameters = source.lambda.parameters.filter((param) =>
1024
+ filteredParameterValues.find((p) => p.name === param.name),
1025
+ );
1026
+ // If the source lambda has multiple expressions, we should prepend all but the
1027
+ // last expression to the transformed query body (which came from the final
1028
+ // expression of the source lambda).
1029
+ query.body = [
1030
+ ...letFuncs,
1031
+ ...(source.lambda.body.length > 1 ? source.lambda.body.slice(0, -1) : []),
1032
+ ...query.body,
1033
+ ];
1034
+ return filteredParameterValues;
1035
+ }
1036
+
1072
1037
  override buildExecutionContext(source: DataCubeSource) {
1073
1038
  if (source instanceof FreeformTDSExpressionDataCubeSource) {
1074
1039
  return _function(
@@ -1203,6 +1168,12 @@ export class LegendDataCubeDataCubeEngine extends DataCubeEngine {
1203
1168
  } else if (source instanceof UserDefinedFunctionDataCubeSource) {
1204
1169
  return this._getLambdaRelationType(query, source.model);
1205
1170
  } else if (source instanceof LegendQueryDataCubeSource) {
1171
+ const deserializedQuery = guaranteeType(
1172
+ this.deserializeValueSpecification(query),
1173
+ V1_Lambda,
1174
+ );
1175
+ await this._processLegendQueryParams(source, deserializedQuery);
1176
+ query = this.serializeValueSpecification(deserializedQuery);
1206
1177
  return this._getLambdaRelationType(query, source.model);
1207
1178
  } else if (source instanceof CachedDataCubeSource) {
1208
1179
  return this._getLambdaRelationType(query, source.model);