@finos/legend-application-query 13.7.193 → 13.7.195

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 (80) hide show
  1. package/lib/__lib__/LegendQueryNavigation.d.ts +18 -0
  2. package/lib/__lib__/LegendQueryNavigation.d.ts.map +1 -1
  3. package/lib/__lib__/LegendQueryNavigation.js +21 -0
  4. package/lib/__lib__/LegendQueryNavigation.js.map +1 -1
  5. package/lib/__lib__/LegendQueryUserDataHelper.d.ts +9 -9
  6. package/lib/__lib__/LegendQueryUserDataHelper.d.ts.map +1 -1
  7. package/lib/__lib__/LegendQueryUserDataHelper.js.map +1 -1
  8. package/lib/__lib__/LegendQueryUserDataSpaceHelper.d.ts +7 -7
  9. package/lib/__lib__/LegendQueryUserDataSpaceHelper.d.ts.map +1 -1
  10. package/lib/__lib__/LegendQueryUserDataSpaceHelper.js +5 -5
  11. package/lib/__lib__/LegendQueryUserDataSpaceHelper.js.map +1 -1
  12. package/lib/components/Core_LegendQueryApplicationPlugin.d.ts.map +1 -1
  13. package/lib/components/Core_LegendQueryApplicationPlugin.js +7 -7
  14. package/lib/components/Core_LegendQueryApplicationPlugin.js.map +1 -1
  15. package/lib/components/QueryEditor.d.ts.map +1 -1
  16. package/lib/components/QueryEditor.js +46 -50
  17. package/lib/components/QueryEditor.js.map +1 -1
  18. package/lib/components/data-space/DataSpaceQueryCreator.d.ts.map +1 -1
  19. package/lib/components/data-space/DataSpaceQueryCreator.js +2 -0
  20. package/lib/components/data-space/DataSpaceQueryCreator.js.map +1 -1
  21. package/lib/components/data-space/DataSpaceQuerySetup.d.ts +2 -2
  22. package/lib/components/data-space/DataSpaceQuerySetup.d.ts.map +1 -1
  23. package/lib/components/data-space/DataSpaceQuerySetup.js +32 -15
  24. package/lib/components/data-space/DataSpaceQuerySetup.js.map +1 -1
  25. package/lib/index.css +1 -1
  26. package/lib/index.d.ts +1 -1
  27. package/lib/index.d.ts.map +1 -1
  28. package/lib/index.js +1 -1
  29. package/lib/index.js.map +1 -1
  30. package/lib/light-mode.css +1 -1
  31. package/lib/package.json +1 -1
  32. package/lib/stores/QueryEditorStore.d.ts +3 -3
  33. package/lib/stores/QueryEditorStore.d.ts.map +1 -1
  34. package/lib/stores/QueryEditorStore.js +20 -12
  35. package/lib/stores/QueryEditorStore.js.map +1 -1
  36. package/lib/stores/data-product/query-builder/LegendQueryDataProductQueryBuilderState.d.ts +30 -0
  37. package/lib/stores/data-product/query-builder/LegendQueryDataProductQueryBuilderState.d.ts.map +1 -0
  38. package/lib/stores/data-product/query-builder/LegendQueryDataProductQueryBuilderState.js +41 -0
  39. package/lib/stores/data-product/query-builder/LegendQueryDataProductQueryBuilderState.js.map +1 -0
  40. package/lib/stores/data-space/DataSpaceQueryBuilderHelper.d.ts +0 -3
  41. package/lib/stores/data-space/DataSpaceQueryBuilderHelper.d.ts.map +1 -1
  42. package/lib/stores/data-space/DataSpaceQueryBuilderHelper.js +0 -6
  43. package/lib/stores/data-space/DataSpaceQueryBuilderHelper.js.map +1 -1
  44. package/lib/stores/data-space/DataSpaceQueryCreatorStore.d.ts +45 -17
  45. package/lib/stores/data-space/DataSpaceQueryCreatorStore.d.ts.map +1 -1
  46. package/lib/stores/data-space/DataSpaceQueryCreatorStore.js +195 -67
  47. package/lib/stores/data-space/DataSpaceQueryCreatorStore.js.map +1 -1
  48. package/lib/stores/data-space/DataSpaceTemplateQueryCreatorStore.d.ts.map +1 -1
  49. package/lib/stores/data-space/DataSpaceTemplateQueryCreatorStore.js +7 -3
  50. package/lib/stores/data-space/DataSpaceTemplateQueryCreatorStore.js.map +1 -1
  51. package/lib/stores/data-space/LegendQueryBareQueryBuilderState.d.ts +46 -0
  52. package/lib/stores/data-space/LegendQueryBareQueryBuilderState.d.ts.map +1 -0
  53. package/lib/stores/data-space/LegendQueryBareQueryBuilderState.js +63 -0
  54. package/lib/stores/data-space/LegendQueryBareQueryBuilderState.js.map +1 -0
  55. package/lib/stores/data-space/query-builder/LegendQueryDataSpaceQueryBuilderState.d.ts +47 -0
  56. package/lib/stores/data-space/query-builder/LegendQueryDataSpaceQueryBuilderState.d.ts.map +1 -0
  57. package/lib/stores/data-space/query-builder/LegendQueryDataSpaceQueryBuilderState.js +145 -0
  58. package/lib/stores/data-space/query-builder/LegendQueryDataSpaceQueryBuilderState.js.map +1 -0
  59. package/package.json +10 -10
  60. package/src/__lib__/LegendQueryNavigation.ts +43 -0
  61. package/src/__lib__/LegendQueryUserDataHelper.ts +14 -12
  62. package/src/__lib__/LegendQueryUserDataSpaceHelper.ts +14 -14
  63. package/src/components/Core_LegendQueryApplicationPlugin.tsx +5 -13
  64. package/src/components/QueryEditor.tsx +145 -103
  65. package/src/components/data-space/DataSpaceQueryCreator.tsx +4 -2
  66. package/src/components/data-space/DataSpaceQuerySetup.tsx +63 -20
  67. package/src/index.ts +1 -1
  68. package/src/stores/QueryEditorStore.ts +100 -91
  69. package/src/stores/data-product/query-builder/LegendQueryDataProductQueryBuilderState.ts +129 -0
  70. package/src/stores/data-space/DataSpaceQueryBuilderHelper.ts +0 -29
  71. package/src/stores/data-space/DataSpaceQueryCreatorStore.ts +293 -101
  72. package/src/stores/data-space/DataSpaceTemplateQueryCreatorStore.ts +11 -12
  73. package/src/stores/data-space/LegendQueryBareQueryBuilderState.ts +117 -0
  74. package/src/stores/data-space/query-builder/LegendQueryDataSpaceQueryBuilderState.ts +340 -0
  75. package/tsconfig.json +3 -1
  76. package/lib/stores/data-space/DataSpaceQuerySetupState.d.ts +0 -44
  77. package/lib/stores/data-space/DataSpaceQuerySetupState.d.ts.map +0 -1
  78. package/lib/stores/data-space/DataSpaceQuerySetupState.js +0 -89
  79. package/lib/stores/data-space/DataSpaceQuerySetupState.js.map +0 -1
  80. package/src/stores/data-space/DataSpaceQuerySetupState.ts +0 -171
@@ -0,0 +1,47 @@
1
+ /**
2
+ * Copyright (c) 2020-present, Goldman Sachs
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+ import { DataSpaceQueryBuilderState, ResolvedDataSpaceEntityWithOrigin } from '@finos/legend-extension-dsl-data-space/application';
17
+ import { type DataSpaceExecutionContext, type DataSpace, type DataSpaceExecutableAnalysisResult, type DataSpaceAnalysisResult } from '@finos/legend-extension-dsl-data-space/graph';
18
+ import { type DataSpaceOption } from '@finos/legend-extension-dsl-data-space/application-query';
19
+ import { type DepotServerClient } from '@finos/legend-server-depot';
20
+ import { LegendSDLC, type Class, type GraphData, type GraphManagerState, type Runtime } from '@finos/legend-graph';
21
+ import { ExtraOptionsConfig, type QueryBuilderActionConfig, type QueryBuilderConfig, type QueryBuilderWorkflowState } from '@finos/legend-query-builder';
22
+ import type { LegendQueryApplicationStore } from '../../LegendQueryBaseStore.js';
23
+ import { type GeneratorFn } from '@finos/legend-shared';
24
+ import type { DepotEntityWithOrigin, ProjectGAVCoordinates, QueryableSourceInfo } from '@finos/legend-storage';
25
+ /**
26
+ * Legend Query DataSpace query builder state.
27
+ */
28
+ export declare class LegendQueryDataSpaceQueryBuilderState extends DataSpaceQueryBuilderState {
29
+ applicationStore: LegendQueryApplicationStore;
30
+ depotServerClient: DepotServerClient;
31
+ project: ProjectGAVCoordinates;
32
+ disableDataProducts: boolean;
33
+ extraOptionsConfig: ExtraOptionsConfig<DepotEntityWithOrigin>;
34
+ constructor(applicationStore: LegendQueryApplicationStore, graphManagerState: GraphManagerState, workflow: QueryBuilderWorkflowState, actionConfig: QueryBuilderActionConfig, dataSpace: DataSpace, executionContext: DataSpaceExecutionContext, isLightGraphEnabled: boolean, depotServerClient: DepotServerClient, project: ProjectGAVCoordinates, prioritizeEntityFunc: ((val: ResolvedDataSpaceEntityWithOrigin) => boolean) | undefined, onDataSpaceChange: (val: ResolvedDataSpaceEntityWithOrigin) => Promise<void>, dataSpaceAnalysisResult?: DataSpaceAnalysisResult | undefined, onExecutionContextChange?: ((val: DataSpaceExecutionContext) => void) | undefined, onRuntimeChange?: ((val: Runtime) => void) | undefined, onClassChange?: ((val: Class) => void) | undefined, config?: QueryBuilderConfig | undefined, sourceInfo?: QueryableSourceInfo | undefined);
35
+ get isAdvancedDataSpaceSearchEnabled(): boolean;
36
+ get canVisitTemplateQuery(): boolean;
37
+ get sdlc(): LegendSDLC;
38
+ get isDataSpaceLinkable(): boolean;
39
+ withOptions(dataspaces: ResolvedDataSpaceEntityWithOrigin[] | undefined, products: DepotEntityWithOrigin[] | undefined): LegendQueryDataSpaceQueryBuilderState;
40
+ copyDataSpaceLinkToClipboard(): void;
41
+ get selectedDataSpaceOption(): DataSpaceOption;
42
+ loadEntities(): GeneratorFn<void>;
43
+ visitTemplateQuery(dataSpace: DataSpace, template: DataSpaceExecutableAnalysisResult): void;
44
+ showAdvancedSearchPanel(dataSpace: DataSpace): void;
45
+ getGraphData(): GraphData;
46
+ }
47
+ //# sourceMappingURL=LegendQueryDataSpaceQueryBuilderState.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LegendQueryDataSpaceQueryBuilderState.d.ts","sourceRoot":"","sources":["../../../../src/stores/data-space/query-builder/LegendQueryDataSpaceQueryBuilderState.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,145 @@
1
+ /**
2
+ * Copyright (c) 2020-present, Goldman Sachs
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+ import { DataSpaceQueryBuilderState, ResolvedDataSpaceEntityWithOrigin, } from '@finos/legend-extension-dsl-data-space/application';
17
+ import { DATA_SPACE_ELEMENT_CLASSIFIER_PATH, DataSpaceServiceExecutableInfo, extractDataSpaceInfo, } from '@finos/legend-extension-dsl-data-space/graph';
18
+ import { generateDataSpaceQueryCreatorRoute, generateDataSpaceTemplateQueryCreatorRoute, } from '../../../__lib__/DSL_DataSpace_LegendQueryNavigation.js';
19
+ import { DataSpaceAdvancedSearchState, } from '@finos/legend-extension-dsl-data-space/application-query';
20
+ import { DepotScope, extractDepotEntityInfo, resolveVersion, SNAPSHOT_VERSION_ALIAS, } from '@finos/legend-server-depot';
21
+ import { CORE_PURE_PATH, GraphDataWithOrigin, LegendSDLC, RuntimePointer, } from '@finos/legend-graph';
22
+ import { ExtraOptionsConfig, } from '@finos/legend-query-builder';
23
+ import { createViewProjectHandler, createViewSDLCProjectHandler, } from '../DataSpaceQueryBuilderHelper.js';
24
+ import { assertErrorThrown, LogEvent, } from '@finos/legend-shared';
25
+ import { APPLICATION_EVENT } from '@finos/legend-application';
26
+ /**
27
+ * Legend Query DataSpace query builder state.
28
+ */
29
+ export class LegendQueryDataSpaceQueryBuilderState extends DataSpaceQueryBuilderState {
30
+ depotServerClient;
31
+ project;
32
+ disableDataProducts = false;
33
+ constructor(applicationStore, graphManagerState, workflow, actionConfig, dataSpace, executionContext, isLightGraphEnabled, depotServerClient, project, prioritizeEntityFunc, onDataSpaceChange, dataSpaceAnalysisResult, onExecutionContextChange, onRuntimeChange, onClassChange, config, sourceInfo) {
34
+ super(applicationStore, graphManagerState, workflow, actionConfig, dataSpace, executionContext, isLightGraphEnabled, prioritizeEntityFunc, onDataSpaceChange, dataSpaceAnalysisResult, onExecutionContextChange, onRuntimeChange, onClassChange, config, sourceInfo);
35
+ this.project = project;
36
+ this.depotServerClient = depotServerClient;
37
+ this.extraOptionsConfig = new ExtraOptionsConfig('DataProduct', 'DEPOT_ENTITY_WITH_ORIGIN', undefined, undefined, (val) => val.path, undefined, undefined);
38
+ }
39
+ get isAdvancedDataSpaceSearchEnabled() {
40
+ return true;
41
+ }
42
+ get canVisitTemplateQuery() {
43
+ return true;
44
+ }
45
+ get sdlc() {
46
+ return new LegendSDLC(this.project.groupId, this.project.artifactId, resolveVersion(this.project.versionId));
47
+ }
48
+ get isDataSpaceLinkable() {
49
+ return true;
50
+ }
51
+ withOptions(dataspaces, products) {
52
+ this.entities = dataspaces;
53
+ if (products) {
54
+ this.extraOptionsConfig.setOptions(products.map((e) => ({
55
+ label: e.path,
56
+ value: e,
57
+ })));
58
+ }
59
+ return this;
60
+ }
61
+ copyDataSpaceLinkToClipboard() {
62
+ const dataSpace = this.dataSpace;
63
+ const executionContext = this.executionContext;
64
+ const runtimePath = this.executionContextState.runtimeValue instanceof RuntimePointer
65
+ ? this.executionContextState.runtimeValue.packageableRuntime.value.path
66
+ : undefined;
67
+ const route = this.applicationStore.navigationService.navigator.generateAddress(generateDataSpaceQueryCreatorRoute(this.project.groupId, this.project.artifactId, this.project.versionId, dataSpace.path, executionContext.name, runtimePath, this.class?.path));
68
+ navigator.clipboard
69
+ .writeText(route)
70
+ .catch(() => this.applicationStore.notificationService.notifyError('Error copying data product query set up link to clipboard'));
71
+ this.applicationStore.notificationService.notifySuccess('Copied data product query set up link to clipboard');
72
+ }
73
+ get selectedDataSpaceOption() {
74
+ return {
75
+ label: this.dataSpace.title ?? this.dataSpace.name,
76
+ value: new ResolvedDataSpaceEntityWithOrigin({
77
+ groupId: this.project.groupId,
78
+ artifactId: this.project.artifactId,
79
+ versionId: this.project.versionId,
80
+ }, this.dataSpace.title, this.dataSpace.name, this.dataSpace.path, this.dataSpace.defaultExecutionContext.name),
81
+ };
82
+ }
83
+ *loadEntities() {
84
+ if (this.entities === undefined) {
85
+ this.loadEntitiesState.inProgress();
86
+ const toGetSnapShot = this.project.versionId === SNAPSHOT_VERSION_ALIAS;
87
+ try {
88
+ // use promise
89
+ this.entities = (yield this.depotServerClient.getEntitiesByClassifier(DATA_SPACE_ELEMENT_CLASSIFIER_PATH, {
90
+ scope: toGetSnapShot ? DepotScope.SNAPSHOT : DepotScope.RELEASES,
91
+ })).map((storedEntity) => extractDataSpaceInfo(storedEntity, toGetSnapShot));
92
+ const dataProducts = this.disableDataProducts
93
+ ? []
94
+ : (yield this.depotServerClient.getEntitiesSummaryByClassifier(CORE_PURE_PATH.DATA_PRODUCT, {
95
+ scope: DepotScope.RELEASES,
96
+ summary: true,
97
+ })).map((storedEntity) => {
98
+ return extractDepotEntityInfo(storedEntity, false);
99
+ });
100
+ this.extraOptionsConfig.setOptions(dataProducts.map((e) => ({
101
+ label: e.name,
102
+ value: e,
103
+ })));
104
+ this.loadEntitiesState.pass();
105
+ }
106
+ catch (error) {
107
+ assertErrorThrown(error);
108
+ this.loadEntitiesState.fail();
109
+ this.applicationStore.notificationService.notifyError(error);
110
+ this.applicationStore.logService.error(LogEvent.create(APPLICATION_EVENT.GENERIC_FAILURE), error);
111
+ }
112
+ }
113
+ }
114
+ visitTemplateQuery(dataSpace, template) {
115
+ let templateId;
116
+ if (template.info) {
117
+ if (template.info.id) {
118
+ templateId = template.info.id;
119
+ }
120
+ else if (template.info instanceof DataSpaceServiceExecutableInfo) {
121
+ templateId = template.executable ?? template.info.pattern;
122
+ }
123
+ }
124
+ if (!templateId) {
125
+ this.applicationStore.notificationService.notifyWarning(`Can't visit template query without an Id`);
126
+ }
127
+ else {
128
+ this.applicationStore.navigationService.navigator.visitAddress(this.applicationStore.navigationService.navigator.generateAddress(generateDataSpaceTemplateQueryCreatorRoute(this.project.groupId, this.project.artifactId, this.project.versionId, dataSpace.path, templateId)));
129
+ }
130
+ }
131
+ showAdvancedSearchPanel(dataSpace) {
132
+ this.advancedSearchState = new DataSpaceAdvancedSearchState(this.applicationStore, this.graphManagerState, this.depotServerClient, {
133
+ viewProject: createViewProjectHandler(this.applicationStore),
134
+ viewSDLCProject: createViewSDLCProjectHandler(this.applicationStore, this.depotServerClient),
135
+ }, new ResolvedDataSpaceEntityWithOrigin({
136
+ groupId: this.project.groupId,
137
+ artifactId: this.project.artifactId,
138
+ versionId: this.project.versionId,
139
+ }, dataSpace.title, dataSpace.name, dataSpace.path, dataSpace.defaultExecutionContext.name), this.project.versionId === SNAPSHOT_VERSION_ALIAS);
140
+ }
141
+ getGraphData() {
142
+ return new GraphDataWithOrigin(this.sdlc);
143
+ }
144
+ }
145
+ //# sourceMappingURL=LegendQueryDataSpaceQueryBuilderState.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LegendQueryDataSpaceQueryBuilderState.js","sourceRoot":"","sources":["../../../../src/stores/data-space/query-builder/LegendQueryDataSpaceQueryBuilderState.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@finos/legend-application-query",
3
- "version": "13.7.193",
3
+ "version": "13.7.195",
4
4
  "description": "Legend Query application core",
5
5
  "keywords": [
6
6
  "legend",
@@ -44,17 +44,17 @@
44
44
  "test:watch": "jest --watch"
45
45
  },
46
46
  "dependencies": {
47
- "@finos/legend-application": "16.0.93",
47
+ "@finos/legend-application": "16.0.95",
48
48
  "@finos/legend-art": "7.1.141",
49
- "@finos/legend-code-editor": "2.0.149",
50
- "@finos/legend-data-cube": "0.3.64",
51
- "@finos/legend-extension-dsl-data-space": "10.4.190",
52
- "@finos/legend-graph": "32.3.29",
53
- "@finos/legend-lego": "2.0.166",
54
- "@finos/legend-query-builder": "4.17.82",
55
- "@finos/legend-server-depot": "6.1.7",
49
+ "@finos/legend-code-editor": "2.0.151",
50
+ "@finos/legend-data-cube": "0.3.66",
51
+ "@finos/legend-extension-dsl-data-space": "10.4.192",
52
+ "@finos/legend-graph": "32.3.31",
53
+ "@finos/legend-lego": "2.0.168",
54
+ "@finos/legend-query-builder": "4.17.84",
55
+ "@finos/legend-server-depot": "6.1.9",
56
56
  "@finos/legend-shared": "11.0.22",
57
- "@finos/legend-storage": "3.0.141",
57
+ "@finos/legend-storage": "3.0.143",
58
58
  "@testing-library/dom": "10.4.0",
59
59
  "@testing-library/react": "16.2.0",
60
60
  "@types/react": "19.0.10",
@@ -32,6 +32,13 @@ export enum LEGEND_QUERY_ROUTE_PATTERN_TOKEN {
32
32
  SERVICE_PATH = 'servicePath',
33
33
  }
34
34
 
35
+ export enum DATA_PRODUCT_QUERY_CREATOR_ROUTE_PATTERN_TOKEN {
36
+ GAV = 'gav',
37
+ DATA_PRODUCT_PATH = 'dataProductPath',
38
+ EXECUTION_TYPE = 'type',
39
+ EXECUTION_CONTEXT_KEY = 'executionKey',
40
+ }
41
+
35
42
  export const LEGEND_QUERY_ROUTE_PATTERN = Object.freeze({
36
43
  DEFAULT: '/',
37
44
  SETUP: '/setup',
@@ -45,8 +52,44 @@ export const LEGEND_QUERY_ROUTE_PATTERN = Object.freeze({
45
52
  CREATE_FROM_SERVICE_QUERY: `/create-from-service/:${LEGEND_QUERY_ROUTE_PATTERN_TOKEN.GAV}/:${LEGEND_QUERY_ROUTE_PATTERN_TOKEN.SERVICE_PATH}`,
46
53
  EDIT_EXISTING_QUERY: `/edit/:${LEGEND_QUERY_ROUTE_PATTERN_TOKEN.QUERY_ID}`,
47
54
  DATA_CUBE_EXISTING_QUERY: `/edit/:${LEGEND_QUERY_ROUTE_PATTERN_TOKEN.QUERY_ID}/cube`,
55
+ DATA_PRODUCT: `/data-product/:${DATA_PRODUCT_QUERY_CREATOR_ROUTE_PATTERN_TOKEN.GAV}/:${DATA_PRODUCT_QUERY_CREATOR_ROUTE_PATTERN_TOKEN.DATA_PRODUCT_PATH}/:${DATA_PRODUCT_QUERY_CREATOR_ROUTE_PATTERN_TOKEN.EXECUTION_TYPE}/:${DATA_PRODUCT_QUERY_CREATOR_ROUTE_PATTERN_TOKEN.EXECUTION_CONTEXT_KEY}`,
48
56
  });
49
57
 
58
+ // DataProduct
59
+
60
+ export enum DATA_PRODUCT_EXECUTION_TYPE {
61
+ NATIVE = 'native',
62
+ ACCESS_GROUPS = 'access_groups',
63
+ }
64
+
65
+ export const generateDataProductRoute = (
66
+ groupId: string,
67
+ artifactId: string,
68
+ versionId: string,
69
+ dataProductPath: string,
70
+ executionType: string,
71
+ executionContextKey: string,
72
+ ): string =>
73
+ generatePath(LEGEND_QUERY_ROUTE_PATTERN.DATA_PRODUCT, {
74
+ [DATA_PRODUCT_QUERY_CREATOR_ROUTE_PATTERN_TOKEN.GAV]:
75
+ generateGAVCoordinates(groupId, artifactId, versionId),
76
+ [DATA_PRODUCT_QUERY_CREATOR_ROUTE_PATTERN_TOKEN.DATA_PRODUCT_PATH]:
77
+ dataProductPath,
78
+ [DATA_PRODUCT_QUERY_CREATOR_ROUTE_PATTERN_TOKEN.EXECUTION_TYPE]:
79
+ executionType,
80
+ [DATA_PRODUCT_QUERY_CREATOR_ROUTE_PATTERN_TOKEN.EXECUTION_CONTEXT_KEY]:
81
+ executionContextKey,
82
+ });
83
+
84
+ export type DataProductPathParams = {
85
+ [DATA_PRODUCT_QUERY_CREATOR_ROUTE_PATTERN_TOKEN.GAV]: string;
86
+ [DATA_PRODUCT_QUERY_CREATOR_ROUTE_PATTERN_TOKEN.DATA_PRODUCT_PATH]: string;
87
+ [DATA_PRODUCT_QUERY_CREATOR_ROUTE_PATTERN_TOKEN.EXECUTION_TYPE]: string;
88
+ [DATA_PRODUCT_QUERY_CREATOR_ROUTE_PATTERN_TOKEN.EXECUTION_CONTEXT_KEY]: string;
89
+ };
90
+
91
+ // setup
92
+
50
93
  export enum LEGEND_QUERY_SETUP_QUERY_PARAM_TOKEN {
51
94
  SHOW_ALL_GROUPS = 'showAllGroups',
52
95
  SHOW_ADVANCED_ACTIONS = 'showAdvancedActions',
@@ -27,10 +27,9 @@ import {
27
27
  createVisitedDataspaceFromInfo,
28
28
  createIdFromDataSpaceInfo,
29
29
  createVisitedDataSpaceId,
30
- type SavedVisitedDataSpaces,
31
- type VisitedDataspace,
30
+ type VisitedDataProduct,
32
31
  } from './LegendQueryUserDataSpaceHelper.js';
33
- import type { DataSpaceInfo } from '@finos/legend-extension-dsl-data-space/application';
32
+ import type { ResolvedDataSpaceEntityWithOrigin } from '@finos/legend-extension-dsl-data-space/application';
34
33
 
35
34
  export enum LEGEND_QUERY_USER_DATA_KEY {
36
35
  RECENTLY_VIEWED_QUERIES = 'query-editor.recent-queries',
@@ -133,7 +132,7 @@ export class LegendQueryUserDataHelper {
133
132
  // DataSpaces
134
133
  static getRecentlyVisitedDataSpaces(
135
134
  service: UserDataService,
136
- ): SavedVisitedDataSpaces {
135
+ ): VisitedDataProduct[] {
137
136
  const data = service.getObjectValue(
138
137
  LEGEND_QUERY_USER_DATA_KEY.RECENTLY_VIEWED_DATASPACES,
139
138
  );
@@ -150,7 +149,7 @@ export class LegendQueryUserDataHelper {
150
149
  {
151
150
  data,
152
151
  },
153
- ) as { data: SavedVisitedDataSpaces }
152
+ ) as { data: VisitedDataProduct[] }
154
153
  ).data,
155
154
  ) ?? []
156
155
  );
@@ -159,7 +158,7 @@ export class LegendQueryUserDataHelper {
159
158
  static findRecentlyVisitedDataSpace(
160
159
  service: UserDataService,
161
160
  id: string,
162
- ): VisitedDataspace | undefined {
161
+ ): VisitedDataProduct | undefined {
163
162
  return LegendQueryUserDataHelper.getRecentlyVisitedDataSpaces(service).find(
164
163
  (v) => v.id === id,
165
164
  );
@@ -167,14 +166,14 @@ export class LegendQueryUserDataHelper {
167
166
 
168
167
  static getRecentlyVisitedDataSpace(
169
168
  service: UserDataService,
170
- ): VisitedDataspace | undefined {
169
+ ): VisitedDataProduct | undefined {
171
170
  return LegendQueryUserDataHelper.getRecentlyVisitedDataSpaces(service)[0];
172
171
  }
173
172
 
174
173
  static persistVisitedDataspace(
175
174
  service: UserDataService,
176
- value: VisitedDataspace,
177
- persistedData: SavedVisitedDataSpaces,
175
+ value: VisitedDataProduct,
176
+ persistedData: VisitedDataProduct[],
178
177
  limit = USER_DATA_QUERY_DATASPACE_LIMIT,
179
178
  ): void {
180
179
  const key = LEGEND_QUERY_USER_DATA_KEY.RECENTLY_VIEWED_DATASPACES;
@@ -217,7 +216,10 @@ export class LegendQueryUserDataHelper {
217
216
  );
218
217
  }
219
218
 
220
- static removeDataSpace(service: UserDataService, info: DataSpaceInfo): void {
219
+ static removeDataSpace(
220
+ service: UserDataService,
221
+ info: ResolvedDataSpaceEntityWithOrigin,
222
+ ): void {
221
223
  const id = createIdFromDataSpaceInfo(info);
222
224
  if (id) {
223
225
  LegendQueryUserDataHelper.removeRecentlyViewedDataSpace(service, id);
@@ -226,7 +228,7 @@ export class LegendQueryUserDataHelper {
226
228
 
227
229
  static addRecentlyVistedDatspace(
228
230
  service: UserDataService,
229
- info: DataSpaceInfo,
231
+ info: ResolvedDataSpaceEntityWithOrigin,
230
232
  execContext: string | undefined,
231
233
  ): void {
232
234
  const visited = createVisitedDataspaceFromInfo(info, execContext);
@@ -242,7 +244,7 @@ export class LegendQueryUserDataHelper {
242
244
  }
243
245
  static addVisitedDatspace(
244
246
  service: UserDataService,
245
- visited: VisitedDataspace,
247
+ visited: VisitedDataProduct,
246
248
  ): void {
247
249
  const dataspaces =
248
250
  LegendQueryUserDataHelper.getRecentlyVisitedDataSpaces(service);
@@ -14,10 +14,10 @@
14
14
  * limitations under the License.
15
15
  */
16
16
 
17
- import type { DataSpaceInfo } from '@finos/legend-extension-dsl-data-space/application';
17
+ import type { ResolvedDataSpaceEntityWithOrigin } from '@finos/legend-extension-dsl-data-space/application';
18
18
  import { GAV_DELIMITER, generateGAVCoordinates } from '@finos/legend-storage';
19
19
 
20
- export interface VisitedDataspace {
20
+ export interface VisitedDataProduct {
21
21
  id: string;
22
22
  groupId: string;
23
23
  artifactId: string;
@@ -26,7 +26,7 @@ export interface VisitedDataspace {
26
26
  execContext?: string | undefined;
27
27
  }
28
28
 
29
- export type SavedVisitedDataSpaces = VisitedDataspace[];
29
+ export type SavedVisitedDataProducts = VisitedDataProduct[];
30
30
 
31
31
  export const createVisitedDataSpaceId = (
32
32
  groupId: string,
@@ -39,10 +39,10 @@ export const createVisitedDataSpaceId = (
39
39
  dataSpace;
40
40
 
41
41
  export const createIdFromDataSpaceInfo = (
42
- info: DataSpaceInfo,
42
+ info: ResolvedDataSpaceEntityWithOrigin,
43
43
  ): string | undefined => {
44
- const groupId = info.groupId;
45
- const artifactId = info.artifactId;
44
+ const groupId = info.origin?.groupId;
45
+ const artifactId = info.origin?.artifactId;
46
46
  if (groupId && artifactId) {
47
47
  return createVisitedDataSpaceId(groupId, artifactId, info.path);
48
48
  }
@@ -55,7 +55,7 @@ export const createSimpleVisitedDataspace = (
55
55
  versionId: string | undefined,
56
56
  path: string,
57
57
  exec: string | undefined,
58
- ): VisitedDataspace => ({
58
+ ): VisitedDataProduct => ({
59
59
  id: createVisitedDataSpaceId(groupId, artifactId, path),
60
60
  groupId,
61
61
  artifactId,
@@ -65,12 +65,12 @@ export const createSimpleVisitedDataspace = (
65
65
  });
66
66
 
67
67
  export const createVisitedDataspaceFromInfo = (
68
- info: DataSpaceInfo,
68
+ info: ResolvedDataSpaceEntityWithOrigin,
69
69
  execContext: string | undefined,
70
- ): VisitedDataspace | undefined => {
71
- const groupId = info.groupId;
72
- const artifactId = info.artifactId;
73
- const versionId = info.versionId;
70
+ ): VisitedDataProduct | undefined => {
71
+ const groupId = info.origin?.groupId;
72
+ const artifactId = info.origin?.artifactId;
73
+ const versionId = info.origin?.versionId;
74
74
  const path = info.path;
75
75
  if (groupId && artifactId) {
76
76
  return createSimpleVisitedDataspace(
@@ -85,8 +85,8 @@ export const createVisitedDataspaceFromInfo = (
85
85
  };
86
86
 
87
87
  export const hasDataSpaceInfoBeenVisited = (
88
- val: DataSpaceInfo,
89
- visited: SavedVisitedDataSpaces,
88
+ val: ResolvedDataSpaceEntityWithOrigin,
89
+ visited: VisitedDataProduct[],
90
90
  ): boolean =>
91
91
  Boolean(
92
92
  visited.find((_visit) => {
@@ -86,13 +86,11 @@ import {
86
86
  } from '../stores/QueryEditorStore.js';
87
87
  import {
88
88
  DataSpaceQueryBuilderState,
89
- DataSpacesDepotRepository,
90
89
  generateDataSpaceTemplateQueryPromotionRoute,
91
90
  } from '@finos/legend-extension-dsl-data-space/application';
92
91
  import {
93
92
  createGraphBuilderReport,
94
93
  GRAPH_MANAGER_EVENT,
95
- LegendSDLC,
96
94
  PackageableElementPointerType,
97
95
  resolvePackagePathAndElementName,
98
96
  RuntimePointer,
@@ -103,7 +101,7 @@ import {
103
101
  V1_PureGraphManager,
104
102
  } from '@finos/legend-graph';
105
103
  import { LegendQueryTelemetryHelper } from '../__lib__/LegendQueryTelemetryHelper.js';
106
- import { resolveVersion, StoreProjectData } from '@finos/legend-server-depot';
104
+ import { StoreProjectData } from '@finos/legend-server-depot';
107
105
  import {
108
106
  ActionState,
109
107
  assertErrorThrown,
@@ -133,6 +131,7 @@ import { LEGEND_QUERY_APP_EVENT } from '../__lib__/LegendQueryEvent.js';
133
131
  import { observer } from 'mobx-react-lite';
134
132
  import { useQueryEditorStore } from './QueryEditorStoreProvider.js';
135
133
  import { useLegendQueryApplicationStore } from './LegendQueryFrameworkProvider.js';
134
+ import { LegendQueryDataSpaceQueryBuilderState } from '../stores/data-space/query-builder/LegendQueryDataSpaceQueryBuilderState.js';
136
135
 
137
136
  export const QUERY_DATACUBE_USAGE_TITLE = 'Legend DataCube';
138
137
  const QUERY_DATACUBE_SOURCE_TYPE = 'legendQuery';
@@ -1051,17 +1050,10 @@ export class Core_LegendQueryApplicationPlugin extends LegendQueryApplicationPlu
1051
1050
  );
1052
1051
  let option;
1053
1052
  if (
1054
- dataSpaceQueryBuilderState.dataSpaceRepo instanceof
1055
- DataSpacesDepotRepository
1053
+ dataSpaceQueryBuilderState instanceof
1054
+ LegendQueryDataSpaceQueryBuilderState
1056
1055
  ) {
1057
- option = new LegendSDLC(
1058
- dataSpaceQueryBuilderState.dataSpaceRepo.project.groupId,
1059
- dataSpaceQueryBuilderState.dataSpaceRepo.project.artifactId,
1060
- resolveVersion(
1061
- dataSpaceQueryBuilderState.dataSpaceRepo.project
1062
- .versionId,
1063
- ),
1064
- );
1056
+ option = dataSpaceQueryBuilderState.sdlc;
1065
1057
  }
1066
1058
  await dataSpaceQueryBuilderState.graphManagerState.graphManager.buildGraph(
1067
1059
  graph,