@finos/legend-application-query 13.6.5 → 13.6.7
Sign up to get free protection for your applications and to get access to all the features.
- package/lib/components/__test-utils__/QueryEditorComponentTestUtils.d.ts +9 -1
- package/lib/components/__test-utils__/QueryEditorComponentTestUtils.d.ts.map +1 -1
- package/lib/components/__test-utils__/QueryEditorComponentTestUtils.js +75 -3
- package/lib/components/__test-utils__/QueryEditorComponentTestUtils.js.map +1 -1
- package/lib/components/data-cube/ExistingQueryDataCubeViewer.d.ts.map +1 -1
- package/lib/components/data-cube/ExistingQueryDataCubeViewer.js +2 -4
- package/lib/components/data-cube/ExistingQueryDataCubeViewer.js.map +1 -1
- package/lib/index.css +1 -1
- package/lib/package.json +5 -5
- package/package.json +17 -17
- package/src/components/__test-utils__/QueryEditorComponentTestUtils.tsx +174 -4
- package/src/components/data-cube/ExistingQueryDataCubeViewer.tsx +2 -11
@@ -14,21 +14,29 @@
|
|
14
14
|
* limitations under the License.
|
15
15
|
*/
|
16
16
|
import { type RenderResult } from '@testing-library/react';
|
17
|
-
import { type
|
17
|
+
import { type PlainObject, type AbstractPlugin, type AbstractPreset } from '@finos/legend-shared';
|
18
|
+
import { type GraphManagerState, type RawMappingModelCoverageAnalysisResult, RawLambda } from '@finos/legend-graph';
|
18
19
|
import { LegendQueryPluginManager } from '../../application/LegendQueryPluginManager.js';
|
19
20
|
import type { Entity } from '@finos/legend-storage';
|
20
21
|
import { ExistingQueryEditorStore } from '../../stores/QueryEditorStore.js';
|
21
22
|
import type { LegendQueryApplicationStore } from '../../stores/LegendQueryBaseStore.js';
|
22
23
|
import { type QueryBuilderState } from '@finos/legend-query-builder';
|
24
|
+
import { type V1_DataSpaceAnalysisResult } from '@finos/legend-extension-dsl-data-space/graph';
|
23
25
|
export declare const TEST_QUERY_NAME = "MyTestQuery";
|
24
26
|
export declare const TEST__provideMockedQueryEditorStore: (customization?: {
|
25
27
|
mock?: ExistingQueryEditorStore;
|
26
28
|
applicationStore?: LegendQueryApplicationStore;
|
27
29
|
graphManagerState?: GraphManagerState;
|
28
30
|
pluginManager?: LegendQueryPluginManager;
|
31
|
+
extraPlugins?: AbstractPlugin[];
|
32
|
+
extraPresets?: AbstractPreset[];
|
29
33
|
}) => ExistingQueryEditorStore;
|
30
34
|
export declare const TEST__setUpQueryEditor: (MOCK__editorStore: ExistingQueryEditorStore, entities: Entity[], lambda: RawLambda, mappingPath: string, runtimePath: string, rawMappingModelCoverageAnalysisResult?: RawMappingModelCoverageAnalysisResult) => Promise<{
|
31
35
|
renderResult: RenderResult;
|
32
36
|
queryBuilderState: QueryBuilderState;
|
33
37
|
}>;
|
38
|
+
export declare const TEST__setUpDataSpaceExistingQueryEditor: (MOCK__editorStore: ExistingQueryEditorStore, v1_dataspaceAnalyticsResult: PlainObject<V1_DataSpaceAnalysisResult>, dataSpacePath: string, executionContext: string, lambda: RawLambda, mappingPath: string, entities: Entity[]) => Promise<{
|
39
|
+
renderResult: RenderResult;
|
40
|
+
queryBuilderState: QueryBuilderState;
|
41
|
+
}>;
|
34
42
|
//# sourceMappingURL=QueryEditorComponentTestUtils.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"QueryEditorComponentTestUtils.d.ts","sourceRoot":"","sources":["../../../src/components/__test-utils__/QueryEditorComponentTestUtils.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,KAAK,YAAY,EAAmB,MAAM,wBAAwB,CAAC;
|
1
|
+
{"version":3,"file":"QueryEditorComponentTestUtils.d.ts","sourceRoot":"","sources":["../../../src/components/__test-utils__/QueryEditorComponentTestUtils.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,KAAK,YAAY,EAAmB,MAAM,wBAAwB,CAAC;AAC5E,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,cAAc,EACnB,KAAK,cAAc,EAEpB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EACL,KAAK,iBAAiB,EACtB,KAAK,qCAAqC,EAG1C,SAAS,EAIV,MAAM,qBAAqB,CAAC;AAO7B,OAAO,EAAE,wBAAwB,EAAE,MAAM,+CAA+C,CAAC;AAEzF,OAAO,KAAK,EAAsB,MAAM,EAAE,MAAM,uBAAuB,CAAC;AACxE,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAC5E,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,sCAAsC,CAAC;AACxF,OAAO,EACL,KAAK,iBAAiB,EAEvB,MAAM,6BAA6B,CAAC;AASrC,OAAO,EACL,KAAK,0BAA0B,EAEhC,MAAM,8CAA8C,CAAC;AAGtD,eAAO,MAAM,eAAe,gBAAgB,CAAC;AAE7C,eAAO,MAAM,mCAAmC,mBAAoB;IAClE,IAAI,CAAC,EAAE,wBAAwB,CAAC;IAChC,gBAAgB,CAAC,EAAE,2BAA2B,CAAC;IAC/C,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC,aAAa,CAAC,EAAE,wBAAwB,CAAC;IACzC,YAAY,CAAC,EAAE,cAAc,EAAE,CAAC;IAChC,YAAY,CAAC,EAAE,cAAc,EAAE,CAAC;CACjC,KAAG,wBA8BH,CAAC;AAEF,eAAO,MAAM,sBAAsB,sBACd,wBAAwB,YACjC,MAAM,EAAE,UACV,SAAS,eACJ,MAAM,eACN,MAAM,0CACqB,qCAAqC,KAC5E,OAAO,CAAC;IACT,YAAY,EAAE,YAAY,CAAC;IAC3B,iBAAiB,EAAE,iBAAiB,CAAC;CACtC,CA0GA,CAAC;AAEF,eAAO,MAAM,uCAAuC,sBAC/B,wBAAwB,+BACd,WAAW,CAAC,0BAA0B,CAAC,iBACrD,MAAM,oBACH,MAAM,UAChB,SAAS,eACJ,MAAM,YACT,MAAM,EAAE,KACjB,OAAO,CAAC;IACT,YAAY,EAAE,YAAY,CAAC;IAC3B,iBAAiB,EAAE,iBAAiB,CAAC;CACtC,CA2IA,CAAC"}
|
@@ -15,9 +15,9 @@ import { jsx as _jsx } from "react/jsx-runtime";
|
|
15
15
|
* limitations under the License.
|
16
16
|
*/
|
17
17
|
import { render, waitFor } from '@testing-library/react';
|
18
|
-
import { guaranteeNonNullable } from '@finos/legend-shared';
|
18
|
+
import { guaranteeNonNullable, } from '@finos/legend-shared';
|
19
19
|
import { createMock, createSpy } from '@finos/legend-shared/test';
|
20
|
-
import { Query, LightQuery, RawLambda, PackageableElementExplicitReference, QueryExplicitExecutionContext, } from '@finos/legend-graph';
|
20
|
+
import { Query, LightQuery, RawLambda, PackageableElementExplicitReference, QueryExplicitExecutionContext, QueryDataSpaceExecutionContext, } from '@finos/legend-graph';
|
21
21
|
import { DepotServerClient } from '@finos/legend-server-depot';
|
22
22
|
import { ApplicationStoreProvider, ApplicationStore, } from '@finos/legend-application';
|
23
23
|
import { TEST__getTestLegendQueryApplicationConfig } from '../../stores/__test-utils__/LegendQueryApplicationTestUtils.js';
|
@@ -30,11 +30,18 @@ import { TEST__BrowserEnvironmentProvider } from '@finos/legend-application/test
|
|
30
30
|
import { Core_LegendQueryApplicationPlugin } from '../Core_LegendQueryApplicationPlugin.js';
|
31
31
|
import { Route, Routes } from '@finos/legend-application/browser';
|
32
32
|
import { generateExistingQueryEditorRoute, LEGEND_QUERY_ROUTE_PATTERN, } from '../../__lib__/LegendQueryNavigation.js';
|
33
|
+
import { DSL_DataSpace_getGraphManagerExtension, } from '@finos/legend-extension-dsl-data-space/graph';
|
33
34
|
const TEST_QUERY_ID = 'test-query-id';
|
34
35
|
export const TEST_QUERY_NAME = 'MyTestQuery';
|
35
36
|
export const TEST__provideMockedQueryEditorStore = (customization) => {
|
36
37
|
const pluginManager = customization?.pluginManager ?? LegendQueryPluginManager.create();
|
37
|
-
pluginManager
|
38
|
+
pluginManager
|
39
|
+
.usePlugins([
|
40
|
+
new Core_LegendQueryApplicationPlugin(),
|
41
|
+
...(customization?.extraPlugins ?? []),
|
42
|
+
])
|
43
|
+
.usePresets([...(customization?.extraPresets ?? [])])
|
44
|
+
.install();
|
38
45
|
const applicationStore = customization?.applicationStore ??
|
39
46
|
new ApplicationStore(TEST__getTestLegendQueryApplicationConfig(), pluginManager);
|
40
47
|
const value = customization?.mock ??
|
@@ -101,4 +108,69 @@ export const TEST__setUpQueryEditor = async (MOCK__editorStore, entities, lambda
|
|
101
108
|
queryBuilderState: guaranteeNonNullable(MOCK__editorStore.queryBuilderState, `Query builder state should have been initialized`),
|
102
109
|
};
|
103
110
|
};
|
111
|
+
export const TEST__setUpDataSpaceExistingQueryEditor = async (MOCK__editorStore, v1_dataspaceAnalyticsResult, dataSpacePath, executionContext, lambda, mappingPath, entities) => {
|
112
|
+
const projectData = {
|
113
|
+
id: 'test-id',
|
114
|
+
groupId: 'test.group',
|
115
|
+
artifactId: 'test-artifact',
|
116
|
+
projectId: 'test-project-id',
|
117
|
+
versions: ['0.0.0'],
|
118
|
+
latestVersion: '0.0.0',
|
119
|
+
};
|
120
|
+
const lightQuery = new LightQuery();
|
121
|
+
lightQuery.name = TEST_QUERY_NAME;
|
122
|
+
lightQuery.id = TEST_QUERY_ID;
|
123
|
+
lightQuery.versionId = '0.0.0';
|
124
|
+
lightQuery.groupId = 'test.group';
|
125
|
+
lightQuery.artifactId = 'test-artifact';
|
126
|
+
lightQuery.owner = 'test-artifact';
|
127
|
+
lightQuery.isCurrentUserQuery = true;
|
128
|
+
const graphManagerState = MOCK__editorStore.graphManagerState;
|
129
|
+
await graphManagerState.graphManager.initialize({
|
130
|
+
env: 'test',
|
131
|
+
tabSize: 2,
|
132
|
+
clientConfig: {},
|
133
|
+
});
|
134
|
+
await graphManagerState.initializeSystem();
|
135
|
+
await graphManagerState.graphManager.buildGraph(graphManagerState.graph, entities, graphManagerState.graphBuildState);
|
136
|
+
const query = new Query();
|
137
|
+
query.name = lightQuery.name;
|
138
|
+
query.id = lightQuery.id;
|
139
|
+
query.versionId = lightQuery.versionId;
|
140
|
+
query.groupId = lightQuery.groupId;
|
141
|
+
query.artifactId = lightQuery.artifactId;
|
142
|
+
query.owner = lightQuery.owner;
|
143
|
+
query.isCurrentUserQuery = lightQuery.isCurrentUserQuery;
|
144
|
+
const execContext = new QueryDataSpaceExecutionContext();
|
145
|
+
execContext.dataSpacePath = dataSpacePath;
|
146
|
+
execContext.executionKey = executionContext;
|
147
|
+
query.executionContext = execContext;
|
148
|
+
query.content = 'some content';
|
149
|
+
createSpy(MOCK__editorStore.depotServerClient, 'getProject').mockResolvedValue(projectData);
|
150
|
+
createSpy(MOCK__editorStore.depotServerClient, 'getEntities').mockResolvedValue([]);
|
151
|
+
createSpy(MOCK__editorStore.depotServerClient, 'getIndexedDependencyEntities').mockResolvedValue(new Map());
|
152
|
+
createSpy(MOCK__editorStore.depotServerClient, 'getEntitiesByClassifier').mockResolvedValue([]);
|
153
|
+
createSpy(graphManagerState.graphManager, 'getLightQuery').mockResolvedValue(lightQuery);
|
154
|
+
createSpy(graphManagerState.graphManager, 'pureCodeToLambda').mockResolvedValue(new RawLambda(lambda.parameters, lambda.body));
|
155
|
+
createSpy(graphManagerState.graphManager, 'lambdaToPureCode').mockResolvedValue('');
|
156
|
+
createSpy(graphManagerState.graphManager, 'getQuery').mockResolvedValue(query);
|
157
|
+
createSpy(MOCK__editorStore.depotServerClient, 'getGenerationContentByPath').mockResolvedValue('');
|
158
|
+
createSpy(graphManagerState.graphManager, 'surveyDatasets').mockResolvedValue([]);
|
159
|
+
createSpy(graphManagerState.graphManager, 'checkDatasetEntitlements').mockResolvedValue([]);
|
160
|
+
const graphManagerExtension = DSL_DataSpace_getGraphManagerExtension(graphManagerState.graphManager);
|
161
|
+
const dataspaceAnalyticsResult = await graphManagerExtension.buildDataSpaceAnalytics(v1_dataspaceAnalyticsResult, graphManagerState.graphManager.pluginManager.getPureProtocolProcessorPlugins());
|
162
|
+
createSpy(graphManagerExtension, 'analyzeDataSpace').mockResolvedValue(dataspaceAnalyticsResult);
|
163
|
+
const mappingAnalyticsResult = dataspaceAnalyticsResult.mappingToMappingCoverageResult?.get(mappingPath);
|
164
|
+
if (mappingAnalyticsResult) {
|
165
|
+
createSpy(graphManagerState.graphManager, 'analyzeMappingModelCoverage').mockResolvedValue(mappingAnalyticsResult);
|
166
|
+
}
|
167
|
+
MOCK__editorStore.buildGraph = createMock();
|
168
|
+
graphManagerState.graphManager.initialize = createMock();
|
169
|
+
const renderResult = render(_jsx(ApplicationStoreProvider, { store: MOCK__editorStore.applicationStore, children: _jsx(TEST__BrowserEnvironmentProvider, { initialEntries: [generateExistingQueryEditorRoute(lightQuery.id)], children: _jsx(LegendQueryFrameworkProvider, { children: _jsx(Routes, { children: _jsx(Route, { path: LEGEND_QUERY_ROUTE_PATTERN.EDIT_EXISTING_QUERY, element: _jsx(ExistingQueryEditor, {}) }) }) }) }) }));
|
170
|
+
await waitFor(() => renderResult.getByTestId(QUERY_BUILDER_TEST_ID.QUERY_BUILDER));
|
171
|
+
return {
|
172
|
+
renderResult,
|
173
|
+
queryBuilderState: guaranteeNonNullable(MOCK__editorStore.queryBuilderState, `Query builder state should have been initialized`),
|
174
|
+
};
|
175
|
+
};
|
104
176
|
//# sourceMappingURL=QueryEditorComponentTestUtils.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"QueryEditorComponentTestUtils.js","sourceRoot":"","sources":["../../../src/components/__test-utils__/QueryEditorComponentTestUtils.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAqB,MAAM,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAC5E,OAAO,
|
1
|
+
{"version":3,"file":"QueryEditorComponentTestUtils.js","sourceRoot":"","sources":["../../../src/components/__test-utils__/QueryEditorComponentTestUtils.tsx"],"names":[],"mappings":"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"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"ExistingQueryDataCubeViewer.d.ts","sourceRoot":"","sources":["../../../src/components/data-cube/ExistingQueryDataCubeViewer.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;
|
1
|
+
{"version":3,"file":"ExistingQueryDataCubeViewer.d.ts","sourceRoot":"","sources":["../../../src/components/data-cube/ExistingQueryDataCubeViewer.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAkBH,eAAO,MAAM,eAAe;;CAY1B,CAAC;AAEH,eAAO,MAAM,2BAA2B;;CAWtC,CAAC"}
|
@@ -21,8 +21,7 @@ import { useParams } from '@finos/legend-application/browser';
|
|
21
21
|
import { ExistingQueryDataCubeEditorStoreProvider, useExistingQueryDataCubeEditorStore, } from './ExistingQueryEditorStoreProviderProvider.js';
|
22
22
|
import { useEffect } from 'react';
|
23
23
|
import { flowResult } from 'mobx';
|
24
|
-
import { DataCube
|
25
|
-
import { QueryBuilderDataCubeApplicationEngine } from '@finos/legend-query-builder';
|
24
|
+
import { DataCube } from '@finos/legend-data-cube';
|
26
25
|
import { guaranteeNonNullable } from '@finos/legend-shared';
|
27
26
|
export const DataCubeWrapper = observer(() => {
|
28
27
|
const applicationStore = useApplicationStore();
|
@@ -33,8 +32,7 @@ export const DataCubeWrapper = observer(() => {
|
|
33
32
|
if (!store.engine) {
|
34
33
|
return null;
|
35
34
|
}
|
36
|
-
|
37
|
-
return (_jsx(DataCubeProvider, { application: _appEngine, engine: store.engine, children: _jsx(DataCube, {}) }));
|
35
|
+
return _jsx(DataCube, { engine: store.engine });
|
38
36
|
});
|
39
37
|
export const ExistingQueryDataCubeViewer = observer(() => {
|
40
38
|
const params = useParams();
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"ExistingQueryDataCubeViewer.js","sourceRoot":"","sources":["../../../src/components/data-cube/ExistingQueryDataCubeViewer.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EACL,gCAAgC,GAEjC,MAAM,wCAAwC,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,mCAAmC,CAAC;AAC9D,OAAO,EACL,wCAAwC,EACxC,mCAAmC,GACpC,MAAM,+CAA+C,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAClC,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAClC,OAAO,EAAE,QAAQ,EAAE,
|
1
|
+
{"version":3,"file":"ExistingQueryDataCubeViewer.js","sourceRoot":"","sources":["../../../src/components/data-cube/ExistingQueryDataCubeViewer.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EACL,gCAAgC,GAEjC,MAAM,wCAAwC,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,mCAAmC,CAAC;AAC9D,OAAO,EACL,wCAAwC,EACxC,mCAAmC,GACpC,MAAM,+CAA+C,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAClC,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAClC,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAE5D,MAAM,CAAC,MAAM,eAAe,GAAG,QAAQ,CAAC,GAAG,EAAE;IAC3C,MAAM,gBAAgB,GAAG,mBAAmB,EAAE,CAAC;IAC/C,MAAM,KAAK,GAAG,mCAAmC,EAAE,CAAC;IAEpD,SAAS,CAAC,GAAG,EAAE;QACb,UAAU,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,mBAAmB,CAAC,CAAC;IAC7E,CAAC,EAAE,CAAC,gBAAgB,EAAE,KAAK,CAAC,CAAC,CAAC;IAE9B,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;QAClB,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,KAAC,QAAQ,IAAC,MAAM,EAAE,KAAK,CAAC,MAAM,GAAI,CAAC;AAC5C,CAAC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,2BAA2B,GAAG,QAAQ,CAAC,GAAG,EAAE;IACvD,MAAM,MAAM,GAAG,SAAS,EAAiC,CAAC;IAC1D,MAAM,OAAO,GAAG,oBAAoB,CAClC,MAAM,CAAC,gCAAgC,CAAC,QAAQ,CAAC,CAClD,CAAC;IAEF,OAAO,CACL,KAAC,wCAAwC,IAAC,OAAO,EAAE,OAAO,YACxD,KAAC,eAAe,KAAG,GACsB,CAC5C,CAAC;AACJ,CAAC,CAAC,CAAC"}
|
package/lib/index.css
CHANGED
package/lib/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@finos/legend-application-query",
|
3
|
-
"version": "13.6.
|
3
|
+
"version": "13.6.7",
|
4
4
|
"description": "Legend Query application core",
|
5
5
|
"keywords": [
|
6
6
|
"legend",
|
@@ -57,12 +57,12 @@
|
|
57
57
|
"@testing-library/dom": "10.4.0",
|
58
58
|
"@testing-library/react": "16.0.1",
|
59
59
|
"@types/react": "18.3.11",
|
60
|
-
"@types/react-dom": "18.3.
|
61
|
-
"mobx": "6.13.
|
60
|
+
"@types/react-dom": "18.3.1",
|
61
|
+
"mobx": "6.13.5",
|
62
62
|
"mobx-react-lite": "4.0.7",
|
63
63
|
"react": "18.3.1",
|
64
64
|
"react-dom": "18.3.1",
|
65
|
-
"serializr": "3.0.
|
65
|
+
"serializr": "3.0.3"
|
66
66
|
},
|
67
67
|
"devDependencies": {
|
68
68
|
"@finos/legend-dev-utils": "workspace:*",
|
@@ -72,7 +72,7 @@
|
|
72
72
|
"jest": "29.7.0",
|
73
73
|
"npm-run-all": "4.1.5",
|
74
74
|
"rimraf": "6.0.1",
|
75
|
-
"sass": "1.
|
75
|
+
"sass": "1.80.2",
|
76
76
|
"typescript": "5.6.3"
|
77
77
|
},
|
78
78
|
"peerDependencies": {
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@finos/legend-application-query",
|
3
|
-
"version": "13.6.
|
3
|
+
"version": "13.6.7",
|
4
4
|
"description": "Legend Query application core",
|
5
5
|
"keywords": [
|
6
6
|
"legend",
|
@@ -43,36 +43,36 @@
|
|
43
43
|
"test:watch": "jest --watch"
|
44
44
|
},
|
45
45
|
"dependencies": {
|
46
|
-
"@finos/legend-application": "16.0.
|
47
|
-
"@finos/legend-art": "7.1.
|
48
|
-
"@finos/legend-code-editor": "2.0.
|
49
|
-
"@finos/legend-data-cube": "0.0.
|
50
|
-
"@finos/legend-extension-dsl-data-space": "10.3.
|
51
|
-
"@finos/legend-graph": "31.10.
|
52
|
-
"@finos/legend-lego": "2.0.
|
53
|
-
"@finos/legend-query-builder": "4.15.
|
54
|
-
"@finos/legend-server-depot": "6.0.
|
55
|
-
"@finos/legend-shared": "10.0.
|
56
|
-
"@finos/legend-storage": "3.0.
|
46
|
+
"@finos/legend-application": "16.0.5",
|
47
|
+
"@finos/legend-art": "7.1.64",
|
48
|
+
"@finos/legend-code-editor": "2.0.7",
|
49
|
+
"@finos/legend-data-cube": "0.0.12",
|
50
|
+
"@finos/legend-extension-dsl-data-space": "10.3.84",
|
51
|
+
"@finos/legend-graph": "31.10.41",
|
52
|
+
"@finos/legend-lego": "2.0.9",
|
53
|
+
"@finos/legend-query-builder": "4.15.6",
|
54
|
+
"@finos/legend-server-depot": "6.0.64",
|
55
|
+
"@finos/legend-shared": "10.0.58",
|
56
|
+
"@finos/legend-storage": "3.0.108",
|
57
57
|
"@testing-library/dom": "10.4.0",
|
58
58
|
"@testing-library/react": "16.0.1",
|
59
59
|
"@types/react": "18.3.11",
|
60
|
-
"@types/react-dom": "18.3.
|
61
|
-
"mobx": "6.13.
|
60
|
+
"@types/react-dom": "18.3.1",
|
61
|
+
"mobx": "6.13.5",
|
62
62
|
"mobx-react-lite": "4.0.7",
|
63
63
|
"react": "18.3.1",
|
64
64
|
"react-dom": "18.3.1",
|
65
|
-
"serializr": "3.0.
|
65
|
+
"serializr": "3.0.3"
|
66
66
|
},
|
67
67
|
"devDependencies": {
|
68
|
-
"@finos/legend-dev-utils": "2.1.
|
68
|
+
"@finos/legend-dev-utils": "2.1.26",
|
69
69
|
"@jest/globals": "29.7.0",
|
70
70
|
"cross-env": "7.0.3",
|
71
71
|
"eslint": "9.12.0",
|
72
72
|
"jest": "29.7.0",
|
73
73
|
"npm-run-all": "4.1.5",
|
74
74
|
"rimraf": "6.0.1",
|
75
|
-
"sass": "1.
|
75
|
+
"sass": "1.80.2",
|
76
76
|
"typescript": "5.6.3"
|
77
77
|
},
|
78
78
|
"peerDependencies": {
|
@@ -15,16 +15,22 @@
|
|
15
15
|
*/
|
16
16
|
|
17
17
|
import { type RenderResult, render, waitFor } from '@testing-library/react';
|
18
|
-
import {
|
18
|
+
import {
|
19
|
+
type PlainObject,
|
20
|
+
type AbstractPlugin,
|
21
|
+
type AbstractPreset,
|
22
|
+
guaranteeNonNullable,
|
23
|
+
} from '@finos/legend-shared';
|
19
24
|
import { createMock, createSpy } from '@finos/legend-shared/test';
|
20
25
|
import {
|
21
26
|
type GraphManagerState,
|
27
|
+
type RawMappingModelCoverageAnalysisResult,
|
22
28
|
Query,
|
23
29
|
LightQuery,
|
24
30
|
RawLambda,
|
25
31
|
PackageableElementExplicitReference,
|
26
|
-
type RawMappingModelCoverageAnalysisResult,
|
27
32
|
QueryExplicitExecutionContext,
|
33
|
+
QueryDataSpaceExecutionContext,
|
28
34
|
} from '@finos/legend-graph';
|
29
35
|
import { DepotServerClient } from '@finos/legend-server-depot';
|
30
36
|
import {
|
@@ -34,7 +40,7 @@ import {
|
|
34
40
|
import { TEST__getTestLegendQueryApplicationConfig } from '../../stores/__test-utils__/LegendQueryApplicationTestUtils.js';
|
35
41
|
import { LegendQueryPluginManager } from '../../application/LegendQueryPluginManager.js';
|
36
42
|
import { ExistingQueryEditor } from '../QueryEditor.js';
|
37
|
-
import type { Entity } from '@finos/legend-storage';
|
43
|
+
import type { EntitiesWithOrigin, Entity } from '@finos/legend-storage';
|
38
44
|
import { ExistingQueryEditorStore } from '../../stores/QueryEditorStore.js';
|
39
45
|
import type { LegendQueryApplicationStore } from '../../stores/LegendQueryBaseStore.js';
|
40
46
|
import {
|
@@ -49,6 +55,10 @@ import {
|
|
49
55
|
generateExistingQueryEditorRoute,
|
50
56
|
LEGEND_QUERY_ROUTE_PATTERN,
|
51
57
|
} from '../../__lib__/LegendQueryNavigation.js';
|
58
|
+
import {
|
59
|
+
type V1_DataSpaceAnalysisResult,
|
60
|
+
DSL_DataSpace_getGraphManagerExtension,
|
61
|
+
} from '@finos/legend-extension-dsl-data-space/graph';
|
52
62
|
|
53
63
|
const TEST_QUERY_ID = 'test-query-id';
|
54
64
|
export const TEST_QUERY_NAME = 'MyTestQuery';
|
@@ -58,10 +68,18 @@ export const TEST__provideMockedQueryEditorStore = (customization?: {
|
|
58
68
|
applicationStore?: LegendQueryApplicationStore;
|
59
69
|
graphManagerState?: GraphManagerState;
|
60
70
|
pluginManager?: LegendQueryPluginManager;
|
71
|
+
extraPlugins?: AbstractPlugin[];
|
72
|
+
extraPresets?: AbstractPreset[];
|
61
73
|
}): ExistingQueryEditorStore => {
|
62
74
|
const pluginManager =
|
63
75
|
customization?.pluginManager ?? LegendQueryPluginManager.create();
|
64
|
-
pluginManager
|
76
|
+
pluginManager
|
77
|
+
.usePlugins([
|
78
|
+
new Core_LegendQueryApplicationPlugin(),
|
79
|
+
...(customization?.extraPlugins ?? []),
|
80
|
+
])
|
81
|
+
.usePresets([...(customization?.extraPresets ?? [])])
|
82
|
+
.install();
|
65
83
|
const applicationStore =
|
66
84
|
customization?.applicationStore ??
|
67
85
|
new ApplicationStore(
|
@@ -201,3 +219,155 @@ export const TEST__setUpQueryEditor = async (
|
|
201
219
|
),
|
202
220
|
};
|
203
221
|
};
|
222
|
+
|
223
|
+
export const TEST__setUpDataSpaceExistingQueryEditor = async (
|
224
|
+
MOCK__editorStore: ExistingQueryEditorStore,
|
225
|
+
v1_dataspaceAnalyticsResult: PlainObject<V1_DataSpaceAnalysisResult>,
|
226
|
+
dataSpacePath: string,
|
227
|
+
executionContext: string,
|
228
|
+
lambda: RawLambda,
|
229
|
+
mappingPath: string,
|
230
|
+
entities: Entity[],
|
231
|
+
): Promise<{
|
232
|
+
renderResult: RenderResult;
|
233
|
+
queryBuilderState: QueryBuilderState;
|
234
|
+
}> => {
|
235
|
+
const projectData = {
|
236
|
+
id: 'test-id',
|
237
|
+
groupId: 'test.group',
|
238
|
+
artifactId: 'test-artifact',
|
239
|
+
projectId: 'test-project-id',
|
240
|
+
versions: ['0.0.0'],
|
241
|
+
latestVersion: '0.0.0',
|
242
|
+
};
|
243
|
+
|
244
|
+
const lightQuery = new LightQuery();
|
245
|
+
lightQuery.name = TEST_QUERY_NAME;
|
246
|
+
lightQuery.id = TEST_QUERY_ID;
|
247
|
+
lightQuery.versionId = '0.0.0';
|
248
|
+
lightQuery.groupId = 'test.group';
|
249
|
+
lightQuery.artifactId = 'test-artifact';
|
250
|
+
lightQuery.owner = 'test-artifact';
|
251
|
+
lightQuery.isCurrentUserQuery = true;
|
252
|
+
|
253
|
+
const graphManagerState = MOCK__editorStore.graphManagerState;
|
254
|
+
|
255
|
+
await graphManagerState.graphManager.initialize({
|
256
|
+
env: 'test',
|
257
|
+
tabSize: 2,
|
258
|
+
clientConfig: {},
|
259
|
+
});
|
260
|
+
|
261
|
+
await graphManagerState.initializeSystem();
|
262
|
+
await graphManagerState.graphManager.buildGraph(
|
263
|
+
graphManagerState.graph,
|
264
|
+
entities,
|
265
|
+
graphManagerState.graphBuildState,
|
266
|
+
);
|
267
|
+
|
268
|
+
const query = new Query();
|
269
|
+
query.name = lightQuery.name;
|
270
|
+
query.id = lightQuery.id;
|
271
|
+
query.versionId = lightQuery.versionId;
|
272
|
+
query.groupId = lightQuery.groupId;
|
273
|
+
query.artifactId = lightQuery.artifactId;
|
274
|
+
query.owner = lightQuery.owner;
|
275
|
+
query.isCurrentUserQuery = lightQuery.isCurrentUserQuery;
|
276
|
+
const execContext = new QueryDataSpaceExecutionContext();
|
277
|
+
execContext.dataSpacePath = dataSpacePath;
|
278
|
+
execContext.executionKey = executionContext;
|
279
|
+
query.executionContext = execContext;
|
280
|
+
query.content = 'some content';
|
281
|
+
createSpy(
|
282
|
+
MOCK__editorStore.depotServerClient,
|
283
|
+
'getProject',
|
284
|
+
).mockResolvedValue(projectData);
|
285
|
+
createSpy(
|
286
|
+
MOCK__editorStore.depotServerClient,
|
287
|
+
'getEntities',
|
288
|
+
).mockResolvedValue([]);
|
289
|
+
createSpy(
|
290
|
+
MOCK__editorStore.depotServerClient,
|
291
|
+
'getIndexedDependencyEntities',
|
292
|
+
).mockResolvedValue(new Map<string, EntitiesWithOrigin>());
|
293
|
+
createSpy(
|
294
|
+
MOCK__editorStore.depotServerClient,
|
295
|
+
'getEntitiesByClassifier',
|
296
|
+
).mockResolvedValue([]);
|
297
|
+
createSpy(graphManagerState.graphManager, 'getLightQuery').mockResolvedValue(
|
298
|
+
lightQuery,
|
299
|
+
);
|
300
|
+
createSpy(
|
301
|
+
graphManagerState.graphManager,
|
302
|
+
'pureCodeToLambda',
|
303
|
+
).mockResolvedValue(new RawLambda(lambda.parameters, lambda.body));
|
304
|
+
createSpy(
|
305
|
+
graphManagerState.graphManager,
|
306
|
+
'lambdaToPureCode',
|
307
|
+
).mockResolvedValue('');
|
308
|
+
createSpy(graphManagerState.graphManager, 'getQuery').mockResolvedValue(
|
309
|
+
query,
|
310
|
+
);
|
311
|
+
createSpy(
|
312
|
+
MOCK__editorStore.depotServerClient,
|
313
|
+
'getGenerationContentByPath',
|
314
|
+
).mockResolvedValue('');
|
315
|
+
createSpy(graphManagerState.graphManager, 'surveyDatasets').mockResolvedValue(
|
316
|
+
[],
|
317
|
+
);
|
318
|
+
createSpy(
|
319
|
+
graphManagerState.graphManager,
|
320
|
+
'checkDatasetEntitlements',
|
321
|
+
).mockResolvedValue([]);
|
322
|
+
|
323
|
+
const graphManagerExtension = DSL_DataSpace_getGraphManagerExtension(
|
324
|
+
graphManagerState.graphManager,
|
325
|
+
);
|
326
|
+
const dataspaceAnalyticsResult =
|
327
|
+
await graphManagerExtension.buildDataSpaceAnalytics(
|
328
|
+
v1_dataspaceAnalyticsResult,
|
329
|
+
graphManagerState.graphManager.pluginManager.getPureProtocolProcessorPlugins(),
|
330
|
+
);
|
331
|
+
createSpy(graphManagerExtension, 'analyzeDataSpace').mockResolvedValue(
|
332
|
+
dataspaceAnalyticsResult,
|
333
|
+
);
|
334
|
+
const mappingAnalyticsResult =
|
335
|
+
dataspaceAnalyticsResult.mappingToMappingCoverageResult?.get(mappingPath);
|
336
|
+
if (mappingAnalyticsResult) {
|
337
|
+
createSpy(
|
338
|
+
graphManagerState.graphManager,
|
339
|
+
'analyzeMappingModelCoverage',
|
340
|
+
).mockResolvedValue(mappingAnalyticsResult);
|
341
|
+
}
|
342
|
+
|
343
|
+
MOCK__editorStore.buildGraph = createMock();
|
344
|
+
graphManagerState.graphManager.initialize = createMock();
|
345
|
+
|
346
|
+
const renderResult = render(
|
347
|
+
<ApplicationStoreProvider store={MOCK__editorStore.applicationStore}>
|
348
|
+
<TEST__BrowserEnvironmentProvider
|
349
|
+
initialEntries={[generateExistingQueryEditorRoute(lightQuery.id)]}
|
350
|
+
>
|
351
|
+
<LegendQueryFrameworkProvider>
|
352
|
+
<Routes>
|
353
|
+
<Route
|
354
|
+
path={LEGEND_QUERY_ROUTE_PATTERN.EDIT_EXISTING_QUERY}
|
355
|
+
element={<ExistingQueryEditor />}
|
356
|
+
/>
|
357
|
+
</Routes>
|
358
|
+
</LegendQueryFrameworkProvider>
|
359
|
+
</TEST__BrowserEnvironmentProvider>
|
360
|
+
</ApplicationStoreProvider>,
|
361
|
+
);
|
362
|
+
await waitFor(() =>
|
363
|
+
renderResult.getByTestId(QUERY_BUILDER_TEST_ID.QUERY_BUILDER),
|
364
|
+
);
|
365
|
+
|
366
|
+
return {
|
367
|
+
renderResult,
|
368
|
+
queryBuilderState: guaranteeNonNullable(
|
369
|
+
MOCK__editorStore.queryBuilderState,
|
370
|
+
`Query builder state should have been initialized`,
|
371
|
+
),
|
372
|
+
};
|
373
|
+
};
|
@@ -27,8 +27,7 @@ import {
|
|
27
27
|
} from './ExistingQueryEditorStoreProviderProvider.js';
|
28
28
|
import { useEffect } from 'react';
|
29
29
|
import { flowResult } from 'mobx';
|
30
|
-
import { DataCube
|
31
|
-
import { QueryBuilderDataCubeApplicationEngine } from '@finos/legend-query-builder';
|
30
|
+
import { DataCube } from '@finos/legend-data-cube';
|
32
31
|
import { guaranteeNonNullable } from '@finos/legend-shared';
|
33
32
|
|
34
33
|
export const DataCubeWrapper = observer(() => {
|
@@ -42,15 +41,7 @@ export const DataCubeWrapper = observer(() => {
|
|
42
41
|
if (!store.engine) {
|
43
42
|
return null;
|
44
43
|
}
|
45
|
-
|
46
|
-
applicationStore,
|
47
|
-
);
|
48
|
-
|
49
|
-
return (
|
50
|
-
<DataCubeProvider application={_appEngine} engine={store.engine}>
|
51
|
-
<DataCube />
|
52
|
-
</DataCubeProvider>
|
53
|
-
);
|
44
|
+
return <DataCube engine={store.engine} />;
|
54
45
|
});
|
55
46
|
|
56
47
|
export const ExistingQueryDataCubeViewer = observer(() => {
|