@finos/legend-query-builder 4.19.15 → 4.19.17

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 (27) hide show
  1. package/lib/components/QueryBuilderSideBar.d.ts +3 -3
  2. package/lib/components/QueryBuilderSideBar.d.ts.map +1 -1
  3. package/lib/components/QueryBuilderSideBar.js +5 -3
  4. package/lib/components/QueryBuilderSideBar.js.map +1 -1
  5. package/lib/data-access-overview.css +1 -1
  6. package/lib/index.css +1 -1
  7. package/lib/index.d.ts +1 -1
  8. package/lib/index.d.ts.map +1 -1
  9. package/lib/index.js +1 -1
  10. package/lib/index.js.map +1 -1
  11. package/lib/package.json +1 -1
  12. package/lib/stores/__test-utils__/TEST_DATA__QueryBuilder_Accessors.d.ts +82 -0
  13. package/lib/stores/__test-utils__/TEST_DATA__QueryBuilder_Accessors.d.ts.map +1 -1
  14. package/lib/stores/__test-utils__/TEST_DATA__QueryBuilder_Accessors.js +97 -0
  15. package/lib/stores/__test-utils__/TEST_DATA__QueryBuilder_Accessors.js.map +1 -1
  16. package/lib/stores/workflows/accessor/AccessorQueryBuilderHelper.js +3 -3
  17. package/lib/stores/workflows/accessor/AccessorQueryBuilderHelper.js.map +1 -1
  18. package/lib/stores/workflows/dataProduct/DataProductQueryBuilderState.d.ts +7 -30
  19. package/lib/stores/workflows/dataProduct/DataProductQueryBuilderState.d.ts.map +1 -1
  20. package/lib/stores/workflows/dataProduct/DataProductQueryBuilderState.js +35 -117
  21. package/lib/stores/workflows/dataProduct/DataProductQueryBuilderState.js.map +1 -1
  22. package/package.json +11 -11
  23. package/src/components/QueryBuilderSideBar.tsx +9 -4
  24. package/src/index.ts +0 -2
  25. package/src/stores/__test-utils__/TEST_DATA__QueryBuilder_Accessors.ts +99 -0
  26. package/src/stores/workflows/accessor/AccessorQueryBuilderHelper.ts +3 -3
  27. package/src/stores/workflows/dataProduct/DataProductQueryBuilderState.ts +44 -174
@@ -13,11 +13,11 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
- import { DataProduct, ModelAccessPointGroup, NativeModelExecutionContext, CORE_PURE_PATH, PackageableRuntime, resolveUsableDataProductClasses, LakehouseRuntime, attachRuntimeFromQuery, attachWithFromQuery, PackageableElementExplicitReference, resolveDataProductExecutionState, RuntimePointer, QueryDataProductNativeExecutionContext, QueryDataProductModelAccessExecutionContext, QueryDataProductLakehouseExecutionContext, LakehouseAccessPoint, DataProductAccessor, RelationType, RelationColumn, GenericType, GenericTypeExplicitReference, findLakehouseAccessPointGroup, V1_buildRelationTypeFromAccessPointImplementation, LegendSDLC, DataProductAccessType, } from '@finos/legend-graph';
16
+ import { DataProduct, ModelAccessPointGroup, CORE_PURE_PATH, PackageableRuntime, resolveUsableDataProductClasses, LakehouseBaseRuntime, LakehouseRuntime, attachRuntimeFromQuery, attachWithFromQuery, PackageableElementExplicitReference, resolveDataProductExecutionState, RuntimePointer, QueryDataProductModelAccessExecutionContext, QueryDataProductLakehouseExecutionContext, LakehouseAccessPoint, DataProductAccessor, RelationType, RelationColumn, GenericType, GenericTypeExplicitReference, findLakehouseAccessPointGroup, V1_buildRelationTypeFromAccessPointImplementation, LegendSDLC, DataProductAccessType, } from '@finos/legend-graph';
17
17
  import { QueryBuilderState } from '../../QueryBuilderState.js';
18
18
  import {} from '@finos/legend-application';
19
19
  import { renderDataProductQueryBuilderSetupPanelContent } from '../../../components/workflows/DataProductQueryBuilder.js';
20
- import { ActionState, assertErrorThrown, filterByType, guaranteeNonNullable, } from '@finos/legend-shared';
20
+ import { ActionState, assertErrorThrown, filterByType, } from '@finos/legend-shared';
21
21
  import { action, computed, flow, makeObservable, observable } from 'mobx';
22
22
  import { DepotEntityWithOrigin, } from '@finos/legend-storage';
23
23
  import { compareLabelFn } from '@finos/legend-art';
@@ -44,12 +44,6 @@ export const buildDataProductOption = (value) => ({
44
44
  label: value.name,
45
45
  value,
46
46
  });
47
- export const buildExecOptions = (val) => {
48
- return {
49
- label: val.key,
50
- value: val,
51
- };
52
- };
53
47
  export const buildModelAccessPointGroupOption = (value) => ({
54
48
  label: value.title ?? value.id,
55
49
  value,
@@ -71,22 +65,6 @@ export class DataProductExecutionState {
71
65
  };
72
66
  }
73
67
  }
74
- export class NativeModelDataProductExecutionState extends DataProductExecutionState {
75
- nativeModelAccess;
76
- constructor(executionState, queryBuilderState) {
77
- super(executionState, queryBuilderState);
78
- this.nativeModelAccess = executionState.__owner;
79
- }
80
- get label() {
81
- return this.exectionValue.key;
82
- }
83
- get mapping() {
84
- return this.exectionValue.mapping.value;
85
- }
86
- get featuredElements() {
87
- return this.nativeModelAccess.featuredElements;
88
- }
89
- }
90
68
  export class ModelAccessPointDataProductExecutionState extends DataProductExecutionState {
91
69
  selectedRuntime;
92
70
  adhocRuntime = false;
@@ -123,7 +101,7 @@ export class ModelAccessPointDataProductExecutionState extends DataProductExecut
123
101
  return this.compatibleRuntimes.length > 1;
124
102
  }
125
103
  get compatibleRuntimes() {
126
- return this.queryBuilderState.graphManagerState.usableRuntimes.filter((runtime) => runtime.runtimeValue instanceof LakehouseRuntime);
104
+ return this.queryBuilderState.graphManagerState.usableRuntimes.filter((runtime) => runtime.runtimeValue instanceof LakehouseBaseRuntime);
127
105
  }
128
106
  }
129
107
  export class LakehouseDataProductExecutionState extends DataProductExecutionState {
@@ -158,7 +136,7 @@ export class LakehouseDataProductExecutionState extends DataProductExecutionStat
158
136
  return undefined;
159
137
  }
160
138
  get compatibleRuntimes() {
161
- return this.queryBuilderState.graphManagerState.usableRuntimes.filter((runtime) => runtime.runtimeValue instanceof LakehouseRuntime);
139
+ return this.queryBuilderState.graphManagerState.usableRuntimes.filter((runtime) => runtime.runtimeValue instanceof LakehouseBaseRuntime);
162
140
  }
163
141
  get showRuntimeOptions() {
164
142
  return this.compatibleRuntimes.length > 1;
@@ -185,20 +163,15 @@ export class DataProductQueryBuilderState extends QueryBuilderState {
185
163
  setExecutionState: action,
186
164
  selectedDataProductOption: computed,
187
165
  isProductLinkable: computed,
188
- isNativeMode: computed,
189
166
  isModelAccessPointGroupMode: computed,
190
167
  isLakehouseMode: computed,
191
- showExecutionContextOptions: computed,
192
168
  showModelAccessPointGroupSelector: computed,
193
169
  showExecutionIdSelector: computed,
194
170
  executionIdOptions: computed,
195
171
  selectedExecutionIdOption: computed,
196
- hasNativeModelAccess: computed,
197
- hasBothAccessModes: computed,
198
172
  showContextSelector: computed,
199
173
  allContextOptions: computed,
200
174
  selectedContextOption: computed,
201
- selectedExecOption: computed,
202
175
  selectedModelAccessPointGroupOption: computed,
203
176
  usableClasses: computed,
204
177
  modelAccessPointGroups: computed,
@@ -217,11 +190,9 @@ export class DataProductQueryBuilderState extends QueryBuilderState {
217
190
  this.dataProduct = dataProduct;
218
191
  this.dataProductArtifact = artifact;
219
192
  this.executionState =
220
- executionState instanceof NativeModelExecutionContext
221
- ? new NativeModelDataProductExecutionState(executionState, this)
222
- : executionState instanceof LakehouseAccessPoint
223
- ? new LakehouseDataProductExecutionState(executionState, this)
224
- : new ModelAccessPointDataProductExecutionState(executionState, this);
193
+ executionState instanceof LakehouseAccessPoint
194
+ ? new LakehouseDataProductExecutionState(executionState, this)
195
+ : new ModelAccessPointDataProductExecutionState(executionState, this);
225
196
  this.prioritizeEntityFunc = prioritizeEntityFunc;
226
197
  this.onDataProductChange = onDataProductChange;
227
198
  this.onClassChange = onClassChange;
@@ -230,13 +201,7 @@ export class DataProductQueryBuilderState extends QueryBuilderState {
230
201
  new QueryBuilderEmbeddedFromExecutionContextState(this);
231
202
  }
232
203
  async prepareAccessForExecution() {
233
- if (this.executionState instanceof NativeModelDataProductExecutionState) {
234
- const runtime = this.executionState.exectionValue.runtime;
235
- if (runtime) {
236
- this.changeRuntime(new RuntimePointer(runtime));
237
- }
238
- }
239
- else if (this.executionState instanceof
204
+ if (this.executionState instanceof
240
205
  ModelAccessPointDataProductExecutionState &&
241
206
  this.executionState.selectedRuntime) {
242
207
  this.changeRuntime(new RuntimePointer(PackageableElementExplicitReference.create(this.executionState.selectedRuntime)));
@@ -249,28 +214,16 @@ export class DataProductQueryBuilderState extends QueryBuilderState {
249
214
  get isProductLinkable() {
250
215
  return false;
251
216
  }
252
- get isNativeMode() {
253
- return this.executionState instanceof NativeModelDataProductExecutionState;
254
- }
255
217
  get isModelAccessPointGroupMode() {
256
218
  return (this.executionState instanceof ModelAccessPointDataProductExecutionState);
257
219
  }
258
220
  get isLakehouseMode() {
259
221
  return this.executionState instanceof LakehouseDataProductExecutionState;
260
222
  }
261
- get showExecutionContextOptions() {
262
- return this.isNativeMode && this.execOptions.length > 1;
263
- }
264
223
  get showModelAccessPointGroupSelector() {
265
224
  return (this.isModelAccessPointGroupMode &&
266
225
  this.modelAccessPointGroupOptions.length > 1);
267
226
  }
268
- get hasNativeModelAccess() {
269
- return this.dataProduct.nativeModelAccess !== undefined;
270
- }
271
- get hasBothAccessModes() {
272
- return this.hasModelAccessPointGroups && this.hasNativeModelAccess;
273
- }
274
227
  // showContextSelector / allContextOptions / selectedContextOption are aliases
275
228
  // over the upstream ExecutionIdOption API so existing UI code keeps working.
276
229
  get showContextSelector() {
@@ -283,11 +236,6 @@ export class DataProductQueryBuilderState extends QueryBuilderState {
283
236
  return this.selectedExecutionIdOption;
284
237
  }
285
238
  get executionIdOptions() {
286
- const nativeOptions = (this.dataProduct.nativeModelAccess?.nativeModelExecutionContexts ?? []).map((ctx) => ({
287
- label: ctx.key,
288
- tag: 'NATIVE',
289
- value: ctx,
290
- }));
291
239
  const modelOptions = this.modelAccessPointGroups.map((group) => ({
292
240
  label: group.title ?? group.id,
293
241
  tag: 'MODEL',
@@ -302,18 +250,11 @@ export class DataProductQueryBuilderState extends QueryBuilderState {
302
250
  groupId: ap.__owner.id,
303
251
  value: ap,
304
252
  }));
305
- return [...modelOptions, ...lakehouseOptions, ...nativeOptions].sort(compareLabelFn);
253
+ return [...modelOptions, ...lakehouseOptions].sort(compareLabelFn);
306
254
  }
307
255
  get selectedExecutionIdOption() {
308
256
  const state = this.executionState;
309
- if (state instanceof NativeModelDataProductExecutionState) {
310
- return {
311
- label: state.exectionValue.key,
312
- tag: 'NATIVE',
313
- value: state.exectionValue,
314
- };
315
- }
316
- else if (state instanceof ModelAccessPointDataProductExecutionState) {
257
+ if (state instanceof ModelAccessPointDataProductExecutionState) {
317
258
  return {
318
259
  label: state.exectionValue.title ?? state.exectionValue.id,
319
260
  tag: 'MODEL',
@@ -338,23 +279,9 @@ export class DataProductQueryBuilderState extends QueryBuilderState {
338
279
  if (val === this.executionState.exectionValue) {
339
280
  return;
340
281
  }
341
- const switchingToModel = val instanceof ModelAccessPointGroup;
342
- const switchingToNative = val instanceof NativeModelExecutionContext;
343
- const wasModeSwitch = (switchingToModel && this.isNativeMode) ||
344
- (switchingToNative && this.isModelAccessPointGroupMode);
345
- if (wasModeSwitch) {
346
- this.changeHistoryState.querySnapshotBuffer = [];
347
- this.changeHistoryState.pointer = -1;
348
- this.changeHistoryState.setCurrentQuery(undefined);
349
- }
350
282
  await this.changeExecutionState(val);
351
283
  await this.propagateExecutionContextChange();
352
284
  }
353
- get selectedExecOption() {
354
- return this.executionState instanceof NativeModelDataProductExecutionState
355
- ? buildExecOptions(this.executionState.exectionValue)
356
- : undefined;
357
- }
358
285
  get requiresMappingForExecution() {
359
286
  if (this.executionState instanceof LakehouseDataProductExecutionState) {
360
287
  return false;
@@ -380,13 +307,7 @@ export class DataProductQueryBuilderState extends QueryBuilderState {
380
307
  return this.buildQueryLambdaWithoutExecutionContext();
381
308
  }
382
309
  getQueryExecutionContext() {
383
- if (this.executionState instanceof NativeModelDataProductExecutionState) {
384
- const execContext = new QueryDataProductNativeExecutionContext();
385
- execContext.dataProductPath = this.dataProduct.path;
386
- execContext.executionKey = this.executionState.exectionValue.key;
387
- return execContext;
388
- }
389
- else if (this.executionState instanceof ModelAccessPointDataProductExecutionState) {
310
+ if (this.executionState instanceof ModelAccessPointDataProductExecutionState) {
390
311
  const execContext = new QueryDataProductModelAccessExecutionContext();
391
312
  execContext.dataProductPath = this.dataProduct.path;
392
313
  execContext.accessPointGroupId = this.executionState.exectionValue.id;
@@ -431,17 +352,17 @@ export class DataProductQueryBuilderState extends QueryBuilderState {
431
352
  initWithDataProduct(dataProduct, accessor, preResolvedState) {
432
353
  try {
433
354
  const execValue = preResolvedState ?? resolveDataProductExecutionState(dataProduct);
355
+ if (!(execValue instanceof ModelAccessPointGroup) &&
356
+ !(execValue instanceof LakehouseAccessPoint)) {
357
+ throw new Error(`Data product '${dataProduct.path}' is not supported for querying`);
358
+ }
434
359
  this.dataProduct = dataProduct;
435
360
  this.setExecutionState(execValue);
436
361
  const mapping = this.executionState.mapping;
437
362
  if (mapping) {
438
363
  this.changeMapping(mapping);
439
364
  }
440
- if (this.executionState instanceof NativeModelDataProductExecutionState) {
441
- const runtime = guaranteeNonNullable(this.executionState.exectionValue.runtime, 'runtime unable to be resolved');
442
- this.changeRuntime(new RuntimePointer(runtime));
443
- }
444
- else if (this.executionState instanceof
365
+ if (this.executionState instanceof
445
366
  ModelAccessPointDataProductExecutionState &&
446
367
  this.executionState.selectedRuntime instanceof PackageableRuntime) {
447
368
  this.changeRuntime(this.executionState.selectedRuntime);
@@ -486,11 +407,9 @@ export class DataProductQueryBuilderState extends QueryBuilderState {
486
407
  }
487
408
  setExecutionState(val) {
488
409
  this.executionState =
489
- val instanceof NativeModelExecutionContext
490
- ? new NativeModelDataProductExecutionState(val, this)
491
- : val instanceof LakehouseAccessPoint
492
- ? new LakehouseDataProductExecutionState(val, this)
493
- : new ModelAccessPointDataProductExecutionState(val, this);
410
+ val instanceof LakehouseAccessPoint
411
+ ? new LakehouseDataProductExecutionState(val, this)
412
+ : new ModelAccessPointDataProductExecutionState(val, this);
494
413
  }
495
414
  async changeExecutionState(val) {
496
415
  // preserve runtime selection when switching between Lakehouse access points
@@ -559,9 +478,12 @@ export class DataProductQueryBuilderState extends QueryBuilderState {
559
478
  this.executionState instanceof LakehouseDataProductExecutionState
560
479
  ? this.executionState.selectedRuntime
561
480
  : undefined;
562
- const lakehouseRuntime = selectedRuntime?.runtimeValue instanceof LakehouseRuntime
481
+ const lakehouseRuntime = selectedRuntime?.runtimeValue instanceof LakehouseBaseRuntime
563
482
  ? selectedRuntime.runtimeValue
564
483
  : undefined;
484
+ const snowflakeRuntime = lakehouseRuntime instanceof LakehouseRuntime
485
+ ? lakehouseRuntime
486
+ : undefined;
565
487
  // NOTE: `dataProduct` is declared with definite assignment, but is genuinely unset
566
488
  // on an artifact which was constructed rather than deserialized
567
489
  const artifactInfo = this.dataProductArtifact?.dataProduct;
@@ -574,7 +496,7 @@ export class DataProductQueryBuilderState extends QueryBuilderState {
574
496
  : undefined,
575
497
  deploymentId: artifactInfo?.deploymentId,
576
498
  environment: lakehouseRuntime?.environment,
577
- warehouse: lakehouseRuntime?.warehouse,
499
+ warehouse: snowflakeRuntime?.warehouse,
578
500
  supportEmails: (this.dataProduct.supportInfo?.emails ?? []).map((email) => email.address),
579
501
  };
580
502
  }
@@ -623,16 +545,12 @@ export class DataProductQueryBuilderState extends QueryBuilderState {
623
545
  };
624
546
  }
625
547
  get isSupported() {
626
- return (this.dataProduct.nativeModelAccess !== undefined ||
627
- // contains model access point group
628
- this.dataProduct.accessPointGroups.filter(filterByType(ModelAccessPointGroup)).length > 0 ||
548
+ return (
549
+ // contains model access point group
550
+ this.dataProduct.accessPointGroups.filter(filterByType(ModelAccessPointGroup)).length > 0 ||
629
551
  // contains lakehouse access point
630
552
  this.dataProduct.accessPointGroups.some((group) => group.accessPoints.some((ap) => ap instanceof LakehouseAccessPoint)));
631
553
  }
632
- // includes model access point group if more than one group
633
- get execOptions() {
634
- return (this.dataProduct.nativeModelAccess?.nativeModelExecutionContexts.map(buildExecOptions) ?? []).sort(compareLabelFn);
635
- }
636
554
  async propagateExecutionContextChange(requireReBuildingGraph) {
637
555
  const currentMapping = this.executionContextState.mapping;
638
556
  const newMapping = this.activeMapping;
@@ -640,7 +558,7 @@ export class DataProductQueryBuilderState extends QueryBuilderState {
640
558
  return;
641
559
  }
642
560
  const coverageResult = this.mappingToMappingCoverageResult?.get(newMapping.path);
643
- if (coverageResult && this.dataProductArtifact) {
561
+ if (this.dataProductArtifact) {
644
562
  const origin = this.graphManagerState.graph.origin;
645
563
  if (origin instanceof LegendSDLC) {
646
564
  const newGraph = this.graphManagerState.createNewGraph();
@@ -651,11 +569,7 @@ export class DataProductQueryBuilderState extends QueryBuilderState {
651
569
  };
652
570
  let accessPointId;
653
571
  let dataProductAccessType;
654
- if (this.executionState instanceof NativeModelDataProductExecutionState) {
655
- accessPointId = this.executionState.exectionValue.key;
656
- dataProductAccessType = DataProductAccessType.NATIVE;
657
- }
658
- else if (this.executionState instanceof LakehouseDataProductExecutionState) {
572
+ if (this.executionState instanceof LakehouseDataProductExecutionState) {
659
573
  accessPointId = this.executionState.exectionValue.id;
660
574
  dataProductAccessType = DataProductAccessType.LAKEHOUSE;
661
575
  }
@@ -666,7 +580,11 @@ export class DataProductQueryBuilderState extends QueryBuilderState {
666
580
  const analysisResult = await this.graphManagerState.graphManager.buildDataProductAnalysis(this.dataProductArtifact, this.dataProduct.path, newGraph, accessPointId, dataProductAccessType, projectInfo);
667
581
  this.graphManagerState.graph = newGraph;
668
582
  this.dataProduct = newGraph.getDataProduct(this.dataProduct.path);
669
- this.setExecutionState(analysisResult.targetExecState);
583
+ const targetExecState = analysisResult.targetExecState;
584
+ if (targetExecState instanceof ModelAccessPointGroup ||
585
+ targetExecState instanceof LakehouseAccessPoint) {
586
+ this.setExecutionState(targetExecState);
587
+ }
670
588
  if (analysisResult.dataProductAnalysis.mappingToMappingCoverageResult) {
671
589
  this.mappingToMappingCoverageResult =
672
590
  analysisResult.dataProductAnalysis.mappingToMappingCoverageResult;
@@ -677,7 +595,7 @@ export class DataProductQueryBuilderState extends QueryBuilderState {
677
595
  newCoverageResult;
678
596
  }
679
597
  }
680
- else {
598
+ else if (coverageResult) {
681
599
  this.explorerState.mappingModelCoverageAnalysisResult = coverageResult;
682
600
  }
683
601
  }
@@ -1 +1 @@
1
- {"version":3,"file":"DataProductQueryBuilderState.js","sourceRoot":"","sources":["../../../../src/stores/workflows/dataProduct/DataProductQueryBuilderState.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DataProductQueryBuilderState.js","sourceRoot":"","sources":["../../../../src/stores/workflows/dataProduct/DataProductQueryBuilderState.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@finos/legend-query-builder",
3
- "version": "4.19.15",
3
+ "version": "4.19.17",
4
4
  "description": "Legend query builder core",
5
5
  "keywords": [
6
6
  "legend",
@@ -43,15 +43,15 @@
43
43
  "test:watch": "jest --watch"
44
44
  },
45
45
  "dependencies": {
46
- "@finos/legend-application": "16.0.125",
47
- "@finos/legend-art": "7.1.165",
48
- "@finos/legend-code-editor": "2.0.206",
49
- "@finos/legend-data-cube": "0.3.124",
50
- "@finos/legend-graph": "32.7.2",
51
- "@finos/legend-lego": "2.0.226",
52
- "@finos/legend-server-depot": "6.1.22",
53
- "@finos/legend-shared": "11.0.30",
54
- "@finos/legend-storage": "3.0.152",
46
+ "@finos/legend-application": "16.0.126",
47
+ "@finos/legend-art": "7.1.166",
48
+ "@finos/legend-code-editor": "2.0.208",
49
+ "@finos/legend-data-cube": "0.3.126",
50
+ "@finos/legend-graph": "32.7.4",
51
+ "@finos/legend-lego": "2.0.228",
52
+ "@finos/legend-server-depot": "6.1.23",
53
+ "@finos/legend-shared": "11.0.31",
54
+ "@finos/legend-storage": "3.0.153",
55
55
  "@testing-library/dom": "10.4.0",
56
56
  "@testing-library/react": "16.2.0",
57
57
  "@types/react": "19.0.10",
@@ -69,7 +69,7 @@
69
69
  "sql-formatter": "15.4.11"
70
70
  },
71
71
  "devDependencies": {
72
- "@finos/legend-dev-utils": "2.2.7",
72
+ "@finos/legend-dev-utils": "2.2.8",
73
73
  "@jest/globals": "29.7.0",
74
74
  "cross-env": "7.0.3",
75
75
  "eslint": "9.22.0",
@@ -30,6 +30,7 @@ import {
30
30
  type Mapping,
31
31
  type Runtime,
32
32
  type ValueSpecification,
33
+ LakehouseBaseRuntime,
33
34
  LakehouseRuntime,
34
35
  LATEST_DATE,
35
36
  PrimitiveInstanceValue,
@@ -186,13 +187,17 @@ export const QueryBuilderClassSelector = observer(
186
187
  },
187
188
  );
188
189
 
189
- export const buildLakehouseRuntimeLabel = (runtime: LakehouseRuntime): string =>
190
- `${runtime.environment ?? '(no env)'} / ${runtime.warehouse ?? '(no warehouse)'}`;
190
+ export const buildLakehouseRuntimeLabel = (
191
+ runtime: LakehouseBaseRuntime,
192
+ ): string =>
193
+ runtime instanceof LakehouseRuntime
194
+ ? `${runtime.environment ?? '(no env)'} / ${runtime.warehouse ?? '(no warehouse)'}`
195
+ : `${runtime.environment ?? '(no env)'}`;
191
196
 
192
197
  export const resolveLakehouseRuntime = (
193
198
  runtime: Runtime | undefined,
194
- ): LakehouseRuntime | undefined => {
195
- if (runtime instanceof LakehouseRuntime) {
199
+ ): LakehouseBaseRuntime | undefined => {
200
+ if (runtime instanceof LakehouseBaseRuntime) {
196
201
  return runtime;
197
202
  }
198
203
  if (runtime instanceof RuntimePointer) {
package/src/index.ts CHANGED
@@ -67,12 +67,10 @@ export { FunctionQueryBuilderState } from './stores/workflows/FunctionQueryBuild
67
67
  export {
68
68
  DataProductQueryBuilderState,
69
69
  type DataProductOption,
70
- buildExecOptions,
71
70
  type ModelAccessPointGroupOption,
72
71
  buildModelAccessPointGroupOption,
73
72
  type ExecutionIdOption,
74
73
  resolveDataProductAccessor,
75
- NativeModelDataProductExecutionState,
76
74
  ModelAccessPointDataProductExecutionState,
77
75
  LakehouseDataProductExecutionState,
78
76
  } from './stores/workflows/dataProduct/DataProductQueryBuilderState.js';
@@ -859,3 +859,102 @@ export const TEST_DATA__QueryBuilder_Accessors = [
859
859
  'meta::external::ingest::specification::metamodel::IngestDefinition',
860
860
  },
861
861
  ];
862
+
863
+ export const TEST_DATA__QueryBuilder_Accessors_QuotedColumnDatabase = [
864
+ {
865
+ path: 'database::QuotedColumnDatabase',
866
+ content: {
867
+ _type: 'relational',
868
+ filters: [],
869
+ joins: [],
870
+ name: 'QuotedColumnDatabase',
871
+ package: 'database',
872
+ schemas: [
873
+ {
874
+ name: 'default',
875
+ tables: [
876
+ {
877
+ columns: [
878
+ {
879
+ name: 'ID',
880
+ nullable: false,
881
+ type: {
882
+ _type: 'Integer',
883
+ },
884
+ },
885
+ {
886
+ name: '"first name"',
887
+ nullable: true,
888
+ type: {
889
+ _type: 'Varchar',
890
+ size: 20,
891
+ },
892
+ },
893
+ ],
894
+ name: 'PERSON',
895
+ primaryKey: ['ID'],
896
+ },
897
+ ],
898
+ views: [],
899
+ },
900
+ ],
901
+ },
902
+ classifierPath: 'meta::relational::metamodel::Database',
903
+ },
904
+ ];
905
+
906
+ // |#>{database::QuotedColumnDatabase.default.PERSON}#->filter(x|$x.'first name' == 'John')
907
+ export const TEST_DATA__QueryBuilder_Accessors_FilterOnQuotedColumn = {
908
+ _type: 'lambda',
909
+ body: [
910
+ {
911
+ _type: 'func',
912
+ function: 'filter',
913
+ parameters: [
914
+ {
915
+ _type: 'classInstance',
916
+ multiplicity: {
917
+ lowerBound: 1,
918
+ upperBound: 1,
919
+ },
920
+ type: '>',
921
+ value: {
922
+ path: ['database::QuotedColumnDatabase', 'default', 'PERSON'],
923
+ },
924
+ },
925
+ {
926
+ _type: 'lambda',
927
+ body: [
928
+ {
929
+ _type: 'func',
930
+ function: 'equal',
931
+ parameters: [
932
+ {
933
+ _type: 'property',
934
+ parameters: [
935
+ {
936
+ _type: 'var',
937
+ name: 'x',
938
+ },
939
+ ],
940
+ property: 'first name',
941
+ },
942
+ {
943
+ _type: 'string',
944
+ value: 'John',
945
+ },
946
+ ],
947
+ },
948
+ ],
949
+ parameters: [
950
+ {
951
+ _type: 'var',
952
+ name: 'x',
953
+ },
954
+ ],
955
+ },
956
+ ],
957
+ },
958
+ ],
959
+ parameters: [],
960
+ };
@@ -22,7 +22,7 @@ import {
22
22
  Database,
23
23
  DataProduct,
24
24
  EngineRuntime,
25
- LakehouseRuntime,
25
+ LakehouseBaseRuntime,
26
26
  } from '@finos/legend-graph';
27
27
  import { UnsupportedOperationError } from '@finos/legend-shared';
28
28
 
@@ -37,13 +37,13 @@ export const getCompatibleRuntimesFromAccessorOwner = (
37
37
  }
38
38
  if (accessorOwner instanceof IngestDefinition) {
39
39
  return graphManagerState.usableRuntimes.filter(
40
- (runtime) => runtime.runtimeValue instanceof LakehouseRuntime,
40
+ (runtime) => runtime.runtimeValue instanceof LakehouseBaseRuntime,
41
41
  );
42
42
  } else if (accessorOwner instanceof Database) {
43
43
  return graphManagerState.usableRuntimes.filter(
44
44
  (runtime) =>
45
45
  runtime.runtimeValue instanceof EngineRuntime &&
46
- !(runtime.runtimeValue instanceof LakehouseRuntime) &&
46
+ !(runtime.runtimeValue instanceof LakehouseBaseRuntime) &&
47
47
  runtime.runtimeValue.mappings.length === 0,
48
48
  );
49
49
  }