@finos/legend-application-studio 28.19.114 → 28.19.115
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.
- package/lib/components/editor/editor-group/dataProduct/DataProductQueryBuilderHelper.d.ts.map +1 -1
- package/lib/components/editor/editor-group/dataProduct/DataProductQueryBuilderHelper.js +24 -7
- package/lib/components/editor/editor-group/dataProduct/DataProductQueryBuilderHelper.js.map +1 -1
- package/lib/components/editor/side-bar/Explorer.d.ts.map +1 -1
- package/lib/components/editor/side-bar/Explorer.js +1 -8
- package/lib/components/editor/side-bar/Explorer.js.map +1 -1
- package/lib/index.css +1 -1
- package/lib/package.json +1 -1
- package/package.json +9 -9
- package/src/components/editor/editor-group/dataProduct/DataProductQueryBuilderHelper.ts +54 -8
- package/src/components/editor/side-bar/Explorer.tsx +2 -19
- package/tsconfig.json +0 -2
- package/lib/components/editor/editor-group/database/IsolatedQueryDatabase.d.ts +0 -18
- package/lib/components/editor/editor-group/database/IsolatedQueryDatabase.d.ts.map +0 -1
- package/lib/components/editor/editor-group/database/IsolatedQueryDatabase.js +0 -58
- package/lib/components/editor/editor-group/database/IsolatedQueryDatabase.js.map +0 -1
- package/lib/stores/editor/editor-state/element-editor-state/database/QueryDatabaseState.d.ts +0 -37
- package/lib/stores/editor/editor-state/element-editor-state/database/QueryDatabaseState.d.ts.map +0 -1
- package/lib/stores/editor/editor-state/element-editor-state/database/QueryDatabaseState.js +0 -127
- package/lib/stores/editor/editor-state/element-editor-state/database/QueryDatabaseState.js.map +0 -1
- package/src/components/editor/editor-group/database/IsolatedQueryDatabase.tsx +0 -142
- package/src/stores/editor/editor-state/element-editor-state/database/QueryDatabaseState.ts +0 -240
package/lib/components/editor/editor-group/dataProduct/DataProductQueryBuilderHelper.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataProductQueryBuilderHelper.d.ts","sourceRoot":"","sources":["../../../../../src/components/editor/editor-group/dataProduct/DataProductQueryBuilderHelper.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,
|
|
1
|
+
{"version":3,"file":"DataProductQueryBuilderHelper.d.ts","sourceRoot":"","sources":["../../../../../src/components/editor/editor-group/dataProduct/DataProductQueryBuilderHelper.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EACL,KAAK,WAAW,EAKjB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0CAA0C,CAAC;AAiD5E,eAAO,MAAM,gBAAgB,GAC3B,aAAa,WAAW,EACxB,aAAa,WAAW,KACvB,OAAO,CAAC,IAAI,CAoEd,CAAC"}
|
|
@@ -13,28 +13,45 @@
|
|
|
13
13
|
* See the License for the specific language governing permissions and
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*/
|
|
16
|
-
import { ModelAccessPointGroup } from '@finos/legend-graph';
|
|
16
|
+
import { LakehouseAccessPoint, ModelAccessPointGroup, } from '@finos/legend-graph';
|
|
17
17
|
import { flowResult } from 'mobx';
|
|
18
|
-
import { DataProductQueryBuilderState, QueryBuilderActionConfig, QueryBuilderAdvancedWorkflowState, } from '@finos/legend-query-builder';
|
|
18
|
+
import { DataProductQueryBuilderState, QueryBuilderActionConfig, QueryBuilderAdvancedWorkflowState, buildDataProductAccessor, } from '@finos/legend-query-builder';
|
|
19
19
|
import { assertErrorThrown, assertTrue, filterByType, guaranteeNonNullable, } from '@finos/legend-shared';
|
|
20
20
|
const isQueryableDataProduct = (dataProduct) => {
|
|
21
21
|
return (Boolean(dataProduct.nativeModelAccess?.nativeModelExecutionContexts.length) ||
|
|
22
22
|
dataProduct.accessPointGroups.filter(filterByType(ModelAccessPointGroup))
|
|
23
|
-
.length > 0
|
|
23
|
+
.length > 0 ||
|
|
24
|
+
dataProduct.accessPointGroups
|
|
25
|
+
.map((group) => group.accessPoints)
|
|
26
|
+
.flat()
|
|
27
|
+
.filter(filterByType(LakehouseAccessPoint)).length > 0);
|
|
28
|
+
};
|
|
29
|
+
const resolveDefaultExecState = (dataProduct) => {
|
|
30
|
+
const nativeAccessPoints = dataProduct.nativeModelAccess?.defaultExecutionContext;
|
|
31
|
+
const modeled = dataProduct.accessPointGroups.filter(filterByType(ModelAccessPointGroup))[0];
|
|
32
|
+
const lakehouseAccessPoints = dataProduct.accessPointGroups
|
|
33
|
+
.map((group) => group.accessPoints)
|
|
34
|
+
.flat()
|
|
35
|
+
.filter(filterByType(LakehouseAccessPoint))[0];
|
|
36
|
+
return modeled ?? lakehouseAccessPoints ?? nativeAccessPoints;
|
|
24
37
|
};
|
|
25
38
|
export const queryDataProduct = async (dataProduct, editorStore) => {
|
|
26
39
|
try {
|
|
27
|
-
assertTrue(isQueryableDataProduct(dataProduct), 'Data Product is not queryable.
|
|
40
|
+
assertTrue(isQueryableDataProduct(dataProduct), 'Data Product is not queryable. Data Product must have either a lakehouse, model or native access point');
|
|
28
41
|
const embeddedQueryBuilderState = editorStore.embeddedQueryBuilderState;
|
|
29
|
-
const defaultExecutionContext = guaranteeNonNullable(dataProduct
|
|
30
|
-
|
|
42
|
+
const defaultExecutionContext = guaranteeNonNullable(resolveDefaultExecState(dataProduct), 'No execution context found for Data Product');
|
|
43
|
+
let accessor;
|
|
44
|
+
if (defaultExecutionContext instanceof LakehouseAccessPoint) {
|
|
45
|
+
const relationMetadata = await editorStore.graphManagerState.graphManager.getLambdaRelationType(defaultExecutionContext.func, editorStore.graphManagerState.graph);
|
|
46
|
+
accessor = buildDataProductAccessor(relationMetadata, dataProduct, defaultExecutionContext, editorStore.graphManagerState.graph);
|
|
47
|
+
}
|
|
31
48
|
await flowResult(embeddedQueryBuilderState.setEmbeddedQueryBuilderConfiguration({
|
|
32
49
|
setupQueryBuilderState: async () => {
|
|
33
50
|
const sourceInfo = Object.assign({}, editorStore.editorMode.getSourceInfo(), {
|
|
34
51
|
dataProduct: dataProduct.path,
|
|
35
52
|
});
|
|
36
53
|
const queryBuilderState = new DataProductQueryBuilderState(editorStore.applicationStore, editorStore.graphManagerState, QueryBuilderAdvancedWorkflowState.INSTANCE, dataProduct, undefined, QueryBuilderActionConfig.INSTANCE, defaultExecutionContext, undefined, async (val) => { }, undefined, undefined, editorStore.applicationStore.config.options.queryBuilderConfig, sourceInfo);
|
|
37
|
-
queryBuilderState.initWithDataProduct(dataProduct);
|
|
54
|
+
queryBuilderState.initWithDataProduct(dataProduct, accessor, defaultExecutionContext);
|
|
38
55
|
return queryBuilderState;
|
|
39
56
|
},
|
|
40
57
|
disableCompile: true,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataProductQueryBuilderHelper.js","sourceRoot":"","sources":["../../../../../src/components/editor/editor-group/dataProduct/DataProductQueryBuilderHelper.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,
|
|
1
|
+
{"version":3,"file":"DataProductQueryBuilderHelper.js","sourceRoot":"","sources":["../../../../../src/components/editor/editor-group/dataProduct/DataProductQueryBuilderHelper.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Explorer.d.ts","sourceRoot":"","sources":["../../../../src/components/editor/side-bar/Explorer.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;
|
|
1
|
+
{"version":3,"file":"Explorer.d.ts","sourceRoot":"","sources":["../../../../src/components/editor/side-bar/Explorer.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAk6CH,eAAO,MAAM,QAAQ;;CA4JnB,CAAC"}
|
|
@@ -45,7 +45,6 @@ import { CodeEditor } from '@finos/legend-lego/code-editor';
|
|
|
45
45
|
import { DatabaseBuilderWizard } from '../editor-group/connection-editor/DatabaseBuilderWizard.js';
|
|
46
46
|
import { DatabaseModelBuilder } from '../editor-group/connection-editor/DatabaseModelBuilder.js';
|
|
47
47
|
import { queryService } from '../editor-group/service-editor/ServiceExecutionQueryEditor.js';
|
|
48
|
-
import { QueryDatabaseState } from '../../../stores/editor/editor-state/element-editor-state/database/QueryDatabaseState.js';
|
|
49
48
|
import { isElementSupportedByDataCube, openDataCube, } from '../../../stores/editor/data-cube/LegendStudioDataCubeHelper.js';
|
|
50
49
|
import { queryDataProduct } from '../editor-group/dataProduct/DataProductQueryBuilderHelper.js';
|
|
51
50
|
import { queryAccessorSource } from '../editor-group/accessor/AccessorQueryBuilderHelper.js';
|
|
@@ -270,12 +269,6 @@ const ExplorerContextMenu = observer(forwardRef(function ExplorerContextMenu(pro
|
|
|
270
269
|
await openDataCube(node.packageableElement, editorStore);
|
|
271
270
|
}
|
|
272
271
|
});
|
|
273
|
-
const buildDatabaseQuery = editorStore.applicationStore.guardUnhandledError(async () => {
|
|
274
|
-
if (node?.packageableElement instanceof Database) {
|
|
275
|
-
const state = new QueryDatabaseState(node.packageableElement, editorStore);
|
|
276
|
-
flowResult(state.init()).catch(editorStore.applicationStore.alertUnhandledError);
|
|
277
|
-
}
|
|
278
|
-
});
|
|
279
272
|
const generateSampleData = editorStore.applicationStore.guardUnhandledError(async () => {
|
|
280
273
|
if (node?.packageableElement instanceof Class) {
|
|
281
274
|
editorStore.explorerTreeState.setClassToGenerateSampleData(node.packageableElement);
|
|
@@ -406,7 +399,7 @@ const ExplorerContextMenu = observer(forwardRef(function ExplorerContextMenu(pro
|
|
|
406
399
|
if (!node) {
|
|
407
400
|
return null;
|
|
408
401
|
}
|
|
409
|
-
return (_jsxs(MenuContent, { "data-testid": LEGEND_STUDIO_TEST_ID.EXPLORER_CONTEXT_MENU, children: [node.packageableElement instanceof DataProduct && (_jsxs(_Fragment, { children: [_jsx(MenuContentItem, { onClick: buildDataProductQuery, children: "Query..." }), _jsx(MenuContentItem, { onClick: openLegendSqlPlayground, children: "Run SQL..." }), _jsx(MenuContentDivider, {})] })), node.packageableElement instanceof Class && (_jsxs(_Fragment, { children: [_jsx(MenuContentItem, { onClick: buildQuery, children: "Query..." }), _jsx(MenuContentItem, { onClick: generateSampleData, children: "Generate Sample Data..." }), _jsx(MenuContentDivider, {})] })), node.packageableElement instanceof Service && (_jsx(_Fragment, { children: _jsx(MenuContentItem, { onClick: buildServiceQuery, children: "Query..." }) })), node.packageableElement instanceof IngestDefinition && (_jsxs(_Fragment, { children: [_jsx(MenuContentItem, { onClick: buildAccessorQuery, children: "Query..." }), _jsx(MenuContentItem, { onClick: openLegendSqlPlayground, children: "Run SQL..." }), _jsx(MenuContentDivider, {})] })), isElementSupportedByDataCube(node.packageableElement) && (_jsxs(_Fragment, { children: [_jsx(MenuContentItem, { onClick: openCubeViewer, children: "Data Cube (BETA)..." }), _jsx(MenuContentDivider, {})] })), isRelationalDatabaseConnection(node.packageableElement) && (_jsxs(_Fragment, { children: [_jsx(MenuContentItem, { onClick: openSQLPlayground, children: "Execute SQL..." }), _jsx(MenuContentItem, { onClick: buildDatabase, children: "Build Database..." }), _jsx(MenuContentDivider, {})] })), isRelationalDatabase(node.packageableElement) && (_jsxs(_Fragment, { children: [_jsx(MenuContentItem, { onClick:
|
|
402
|
+
return (_jsxs(MenuContent, { "data-testid": LEGEND_STUDIO_TEST_ID.EXPLORER_CONTEXT_MENU, children: [node.packageableElement instanceof DataProduct && (_jsxs(_Fragment, { children: [_jsx(MenuContentItem, { onClick: buildDataProductQuery, children: "Query..." }), _jsx(MenuContentItem, { onClick: openLegendSqlPlayground, children: "Run SQL..." }), _jsx(MenuContentDivider, {})] })), node.packageableElement instanceof Class && (_jsxs(_Fragment, { children: [_jsx(MenuContentItem, { onClick: buildQuery, children: "Query..." }), _jsx(MenuContentItem, { onClick: generateSampleData, children: "Generate Sample Data..." }), _jsx(MenuContentDivider, {})] })), node.packageableElement instanceof Service && (_jsx(_Fragment, { children: _jsx(MenuContentItem, { onClick: buildServiceQuery, children: "Query..." }) })), node.packageableElement instanceof IngestDefinition && (_jsxs(_Fragment, { children: [_jsx(MenuContentItem, { onClick: buildAccessorQuery, children: "Query..." }), _jsx(MenuContentItem, { onClick: openLegendSqlPlayground, children: "Run SQL..." }), _jsx(MenuContentDivider, {})] })), isElementSupportedByDataCube(node.packageableElement) && (_jsxs(_Fragment, { children: [_jsx(MenuContentItem, { onClick: openCubeViewer, children: "Data Cube (BETA)..." }), _jsx(MenuContentDivider, {})] })), isRelationalDatabaseConnection(node.packageableElement) && (_jsxs(_Fragment, { children: [_jsx(MenuContentItem, { onClick: openSQLPlayground, children: "Execute SQL..." }), _jsx(MenuContentItem, { onClick: buildDatabase, children: "Build Database..." }), _jsx(MenuContentDivider, {})] })), isRelationalDatabase(node.packageableElement) && (_jsxs(_Fragment, { children: [_jsx(MenuContentItem, { onClick: buildAccessorQuery, children: "Query..." }), _jsx(MenuContentItem, { onClick: generateModelsFromDatabaseSpecification, children: "Build Models" }), _jsx(MenuContentDivider, {})] })), extraExplorerContextMenuItems, Boolean(extraExplorerContextMenuItems.length) && (_jsx(MenuContentDivider, {})), !isReadOnly && (_jsxs(_Fragment, { children: [_jsx(MenuContentItem, { onClick: renameElement, children: "Rename" }), _jsx(MenuContentItem, { onClick: removeElement, children: "Remove" })] })), _jsx(MenuContentDivider, {}), !editorStore.isInViewerMode && !isDependencyProjectElement && (_jsx(MenuContentItem, { onClick: openElementInViewerMode, children: "View in Project" })), _jsx(MenuContentItem, { onClick: copyPath, children: "Copy Path" }), _jsx(MenuContentItem, { onClick: copyWorkspaceElementLink, children: "Copy Link" }), isDependencyProjectElement && (_jsx(MenuContentItem, { onClick: copySDLCProjectLink, children: "Copy SDLC Project Link" }))] }));
|
|
410
403
|
}));
|
|
411
404
|
const ProjectConfig = observer(() => {
|
|
412
405
|
const editorStore = useEditorStore();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Explorer.js","sourceRoot":"","sources":["../../../../src/components/editor/side-bar/Explorer.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Explorer.js","sourceRoot":"","sources":["../../../../src/components/editor/side-bar/Explorer.tsx"],"names":[],"mappings":"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"}
|
package/lib/index.css
CHANGED
package/lib/package.json
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@finos/legend-application-studio",
|
|
3
|
-
"version": "28.19.
|
|
3
|
+
"version": "28.19.115",
|
|
4
4
|
"description": "Legend Studio application core",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"legend",
|
|
@@ -48,15 +48,15 @@
|
|
|
48
48
|
"dependencies": {
|
|
49
49
|
"@finos/legend-application": "16.0.104",
|
|
50
50
|
"@finos/legend-art": "7.1.146",
|
|
51
|
-
"@finos/legend-code-editor": "2.0.
|
|
52
|
-
"@finos/legend-data-cube": "0.3.
|
|
53
|
-
"@finos/legend-extension-dsl-data-product": "0.0.
|
|
54
|
-
"@finos/legend-extension-dsl-diagram": "8.1.
|
|
55
|
-
"@finos/legend-graph": "32.5.
|
|
56
|
-
"@finos/legend-lego": "2.0.
|
|
57
|
-
"@finos/legend-query-builder": "4.18.
|
|
51
|
+
"@finos/legend-code-editor": "2.0.165",
|
|
52
|
+
"@finos/legend-data-cube": "0.3.82",
|
|
53
|
+
"@finos/legend-extension-dsl-data-product": "0.0.71",
|
|
54
|
+
"@finos/legend-extension-dsl-diagram": "8.1.229",
|
|
55
|
+
"@finos/legend-graph": "32.5.1",
|
|
56
|
+
"@finos/legend-lego": "2.0.184",
|
|
57
|
+
"@finos/legend-query-builder": "4.18.1",
|
|
58
58
|
"@finos/legend-server-depot": "6.1.10",
|
|
59
|
-
"@finos/legend-server-lakehouse": "0.3.
|
|
59
|
+
"@finos/legend-server-lakehouse": "0.3.46",
|
|
60
60
|
"@finos/legend-server-sdlc": "5.4.1",
|
|
61
61
|
"@finos/legend-server-showcase": "0.2.64",
|
|
62
62
|
"@finos/legend-shared": "11.0.23",
|
|
@@ -14,13 +14,20 @@
|
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*/
|
|
16
16
|
|
|
17
|
-
import {
|
|
17
|
+
import {
|
|
18
|
+
type DataProduct,
|
|
19
|
+
type DataProductAccessor,
|
|
20
|
+
type NativeModelExecutionContext,
|
|
21
|
+
LakehouseAccessPoint,
|
|
22
|
+
ModelAccessPointGroup,
|
|
23
|
+
} from '@finos/legend-graph';
|
|
18
24
|
import type { EditorStore } from '../../../../stores/editor/EditorStore.js';
|
|
19
25
|
import { flowResult } from 'mobx';
|
|
20
26
|
import {
|
|
21
27
|
DataProductQueryBuilderState,
|
|
22
28
|
QueryBuilderActionConfig,
|
|
23
29
|
QueryBuilderAdvancedWorkflowState,
|
|
30
|
+
buildDataProductAccessor,
|
|
24
31
|
} from '@finos/legend-query-builder';
|
|
25
32
|
import type { DepotEntityWithOrigin } from '@finos/legend-storage';
|
|
26
33
|
import {
|
|
@@ -36,10 +43,33 @@ const isQueryableDataProduct = (dataProduct: DataProduct): boolean => {
|
|
|
36
43
|
dataProduct.nativeModelAccess?.nativeModelExecutionContexts.length,
|
|
37
44
|
) ||
|
|
38
45
|
dataProduct.accessPointGroups.filter(filterByType(ModelAccessPointGroup))
|
|
39
|
-
.length > 0
|
|
46
|
+
.length > 0 ||
|
|
47
|
+
dataProduct.accessPointGroups
|
|
48
|
+
.map((group) => group.accessPoints)
|
|
49
|
+
.flat()
|
|
50
|
+
.filter(filterByType(LakehouseAccessPoint)).length > 0
|
|
40
51
|
);
|
|
41
52
|
};
|
|
42
53
|
|
|
54
|
+
const resolveDefaultExecState = (
|
|
55
|
+
dataProduct: DataProduct,
|
|
56
|
+
):
|
|
57
|
+
| ModelAccessPointGroup
|
|
58
|
+
| LakehouseAccessPoint
|
|
59
|
+
| NativeModelExecutionContext
|
|
60
|
+
| undefined => {
|
|
61
|
+
const nativeAccessPoints =
|
|
62
|
+
dataProduct.nativeModelAccess?.defaultExecutionContext;
|
|
63
|
+
const modeled = dataProduct.accessPointGroups.filter(
|
|
64
|
+
filterByType(ModelAccessPointGroup),
|
|
65
|
+
)[0];
|
|
66
|
+
const lakehouseAccessPoints = dataProduct.accessPointGroups
|
|
67
|
+
.map((group) => group.accessPoints)
|
|
68
|
+
.flat()
|
|
69
|
+
.filter(filterByType(LakehouseAccessPoint))[0];
|
|
70
|
+
return modeled ?? lakehouseAccessPoints ?? nativeAccessPoints;
|
|
71
|
+
};
|
|
72
|
+
|
|
43
73
|
export const queryDataProduct = async (
|
|
44
74
|
dataProduct: DataProduct,
|
|
45
75
|
editorStore: EditorStore,
|
|
@@ -47,16 +77,27 @@ export const queryDataProduct = async (
|
|
|
47
77
|
try {
|
|
48
78
|
assertTrue(
|
|
49
79
|
isQueryableDataProduct(dataProduct),
|
|
50
|
-
'Data Product is not queryable.
|
|
80
|
+
'Data Product is not queryable. Data Product must have either a lakehouse, model or native access point',
|
|
51
81
|
);
|
|
52
82
|
const embeddedQueryBuilderState = editorStore.embeddedQueryBuilderState;
|
|
53
83
|
const defaultExecutionContext = guaranteeNonNullable(
|
|
54
|
-
dataProduct
|
|
55
|
-
dataProduct.accessPointGroups.filter(
|
|
56
|
-
filterByType(ModelAccessPointGroup),
|
|
57
|
-
)[0],
|
|
84
|
+
resolveDefaultExecState(dataProduct),
|
|
58
85
|
'No execution context found for Data Product',
|
|
59
86
|
);
|
|
87
|
+
let accessor: DataProductAccessor | undefined;
|
|
88
|
+
if (defaultExecutionContext instanceof LakehouseAccessPoint) {
|
|
89
|
+
const relationMetadata =
|
|
90
|
+
await editorStore.graphManagerState.graphManager.getLambdaRelationType(
|
|
91
|
+
defaultExecutionContext.func,
|
|
92
|
+
editorStore.graphManagerState.graph,
|
|
93
|
+
);
|
|
94
|
+
accessor = buildDataProductAccessor(
|
|
95
|
+
relationMetadata,
|
|
96
|
+
dataProduct,
|
|
97
|
+
defaultExecutionContext,
|
|
98
|
+
editorStore.graphManagerState.graph,
|
|
99
|
+
);
|
|
100
|
+
}
|
|
60
101
|
await flowResult(
|
|
61
102
|
embeddedQueryBuilderState.setEmbeddedQueryBuilderConfiguration({
|
|
62
103
|
setupQueryBuilderState: async () => {
|
|
@@ -82,7 +123,12 @@ export const queryDataProduct = async (
|
|
|
82
123
|
editorStore.applicationStore.config.options.queryBuilderConfig,
|
|
83
124
|
sourceInfo,
|
|
84
125
|
);
|
|
85
|
-
|
|
126
|
+
|
|
127
|
+
queryBuilderState.initWithDataProduct(
|
|
128
|
+
dataProduct,
|
|
129
|
+
accessor,
|
|
130
|
+
defaultExecutionContext,
|
|
131
|
+
);
|
|
86
132
|
return queryBuilderState;
|
|
87
133
|
},
|
|
88
134
|
disableCompile: true,
|
|
@@ -148,7 +148,6 @@ import { CodeEditor } from '@finos/legend-lego/code-editor';
|
|
|
148
148
|
import { DatabaseBuilderWizard } from '../editor-group/connection-editor/DatabaseBuilderWizard.js';
|
|
149
149
|
import { DatabaseModelBuilder } from '../editor-group/connection-editor/DatabaseModelBuilder.js';
|
|
150
150
|
import { queryService } from '../editor-group/service-editor/ServiceExecutionQueryEditor.js';
|
|
151
|
-
import { QueryDatabaseState } from '../../../stores/editor/editor-state/element-editor-state/database/QueryDatabaseState.js';
|
|
152
151
|
import {
|
|
153
152
|
isElementSupportedByDataCube,
|
|
154
153
|
openDataCube,
|
|
@@ -580,19 +579,6 @@ const ExplorerContextMenu = observer(
|
|
|
580
579
|
}
|
|
581
580
|
},
|
|
582
581
|
);
|
|
583
|
-
const buildDatabaseQuery = editorStore.applicationStore.guardUnhandledError(
|
|
584
|
-
async () => {
|
|
585
|
-
if (node?.packageableElement instanceof Database) {
|
|
586
|
-
const state = new QueryDatabaseState(
|
|
587
|
-
node.packageableElement,
|
|
588
|
-
editorStore,
|
|
589
|
-
);
|
|
590
|
-
flowResult(state.init()).catch(
|
|
591
|
-
editorStore.applicationStore.alertUnhandledError,
|
|
592
|
-
);
|
|
593
|
-
}
|
|
594
|
-
},
|
|
595
|
-
);
|
|
596
582
|
const generateSampleData = editorStore.applicationStore.guardUnhandledError(
|
|
597
583
|
async () => {
|
|
598
584
|
if (node?.packageableElement instanceof Class) {
|
|
@@ -937,14 +923,11 @@ const ExplorerContextMenu = observer(
|
|
|
937
923
|
)}
|
|
938
924
|
{isRelationalDatabase(node.packageableElement) && (
|
|
939
925
|
<>
|
|
940
|
-
<MenuContentItem onClick={generateModelsFromDatabaseSpecification}>
|
|
941
|
-
Build Models
|
|
942
|
-
</MenuContentItem>
|
|
943
926
|
<MenuContentItem onClick={buildAccessorQuery}>
|
|
944
927
|
Query...
|
|
945
928
|
</MenuContentItem>
|
|
946
|
-
<MenuContentItem onClick={
|
|
947
|
-
|
|
929
|
+
<MenuContentItem onClick={generateModelsFromDatabaseSpecification}>
|
|
930
|
+
Build Models
|
|
948
931
|
</MenuContentItem>
|
|
949
932
|
<MenuContentDivider />
|
|
950
933
|
</>
|
package/tsconfig.json
CHANGED
|
@@ -132,7 +132,6 @@
|
|
|
132
132
|
"./src/stores/editor/editor-state/element-editor-state/data/DataEditorState.ts",
|
|
133
133
|
"./src/stores/editor/editor-state/element-editor-state/data/EmbeddedDataState.ts",
|
|
134
134
|
"./src/stores/editor/editor-state/element-editor-state/dataProduct/DataProductEditorState.ts",
|
|
135
|
-
"./src/stores/editor/editor-state/element-editor-state/database/QueryDatabaseState.ts",
|
|
136
135
|
"./src/stores/editor/editor-state/element-editor-state/external-format/DSL_ExternalFormat_BindingEditorState.ts",
|
|
137
136
|
"./src/stores/editor/editor-state/element-editor-state/external-format/DSL_ExternalFormat_SchemaSetEditorState.ts",
|
|
138
137
|
"./src/stores/editor/editor-state/element-editor-state/function-activator/HostedServiceFunctionActivatorEditorState.ts",
|
|
@@ -262,7 +261,6 @@
|
|
|
262
261
|
"./src/components/editor/editor-group/data-editor/RelationElementsDataEditor.tsx",
|
|
263
262
|
"./src/components/editor/editor-group/data-editor/RelationalCSVDataEditor.tsx",
|
|
264
263
|
"./src/components/editor/editor-group/dataProduct/DataProductEditor.tsx",
|
|
265
|
-
"./src/components/editor/editor-group/database/IsolatedQueryDatabase.tsx",
|
|
266
264
|
"./src/components/editor/editor-group/diff-editor/EntityChangeConflictEditor.tsx",
|
|
267
265
|
"./src/components/editor/editor-group/diff-editor/EntityDiffView.tsx",
|
|
268
266
|
"./src/components/editor/editor-group/diff-editor/ProjectConfigDiffView.tsx",
|
|
@@ -1,18 +0,0 @@
|
|
|
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 type { IsolatedDatabaseBuilderState } from '../../../../stores/editor/editor-state/element-editor-state/database/QueryDatabaseState.js';
|
|
17
|
-
export declare const renderDatabaseQueryBuilderSetupPanelContent: (queryBuilderState: IsolatedDatabaseBuilderState) => React.ReactNode;
|
|
18
|
-
//# sourceMappingURL=IsolatedQueryDatabase.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"IsolatedQueryDatabase.d.ts","sourceRoot":"","sources":["../../../../../src/components/editor/editor-group/database/IsolatedQueryDatabase.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAQH,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,4FAA4F,CAAC;AAiH/I,eAAO,MAAM,2CAA2C,GACtD,mBAAmB,4BAA4B,KAC9C,KAAK,CAAC,SAIR,CAAC"}
|
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
/**
|
|
3
|
-
* Copyright (c) 2020-present, Goldman Sachs
|
|
4
|
-
*
|
|
5
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
6
|
-
* you may not use this file except in compliance with the License.
|
|
7
|
-
* You may obtain a copy of the License at
|
|
8
|
-
*
|
|
9
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
-
*
|
|
11
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
12
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
13
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
14
|
-
* See the License for the specific language governing permissions and
|
|
15
|
-
* limitations under the License.
|
|
16
|
-
*/
|
|
17
|
-
import { getMappingCompatibleClasses, } from '@finos/legend-graph';
|
|
18
|
-
import { QueryBuilderClassSelector } from '@finos/legend-query-builder';
|
|
19
|
-
import { observer } from 'mobx-react-lite';
|
|
20
|
-
import { CustomSelectorInput, PanelHeader, compareLabelFn, } from '@finos/legend-art';
|
|
21
|
-
import { returnUndefOnError } from '@finos/legend-shared';
|
|
22
|
-
const IsolatedDatabseQueryBuilderSetupPanelContext = observer((props) => {
|
|
23
|
-
const { queryBuilderState } = props;
|
|
24
|
-
const globalGraphManagerState = queryBuilderState.globalGraphManagerState;
|
|
25
|
-
const getConnectionValue = (val) => returnUndefOnError(() => globalGraphManagerState.graph.getConnection(val));
|
|
26
|
-
const database = queryBuilderState.database;
|
|
27
|
-
const compConnections = queryBuilderState.compatibleConnections;
|
|
28
|
-
const compConnectionsOptions = Array.from(compConnections.keys())
|
|
29
|
-
.map((e) => ({ value: e, label: getConnectionValue(e)?.name ?? e }))
|
|
30
|
-
.sort(compareLabelFn);
|
|
31
|
-
const changeConnection = (val) => {
|
|
32
|
-
if (val) {
|
|
33
|
-
queryBuilderState.changeConnection(val.value);
|
|
34
|
-
}
|
|
35
|
-
};
|
|
36
|
-
const connection = compConnections.get(queryBuilderState.connectionKey);
|
|
37
|
-
const selectedConnection = connection
|
|
38
|
-
? {
|
|
39
|
-
label: queryBuilderState.connectionKey,
|
|
40
|
-
value: getConnectionValue(queryBuilderState.connectionKey)?.name ??
|
|
41
|
-
queryBuilderState.connectionKey,
|
|
42
|
-
}
|
|
43
|
-
: undefined;
|
|
44
|
-
const databaseOption = {
|
|
45
|
-
value: database,
|
|
46
|
-
label: database.path,
|
|
47
|
-
};
|
|
48
|
-
const classes = queryBuilderState.executionContextState.mapping
|
|
49
|
-
? getMappingCompatibleClasses(queryBuilderState.executionContextState.mapping, queryBuilderState.graphManagerState.usableClasses)
|
|
50
|
-
: [];
|
|
51
|
-
return (_jsxs("div", { className: "query-builder__setup__config-group", children: [_jsx(PanelHeader, { title: "properties" }), _jsxs("div", { className: "query-builder__setup__config-group__content", children: [_jsxs("div", { className: "query-builder__setup__config-group__item", children: [_jsx("label", { className: "btn--sm query-builder__setup__config-group__item__label", title: "store", htmlFor: "query-builder__setup__store-selector", children: "Store" }), _jsx(CustomSelectorInput, { inputId: "query-builder__setup__store-selector", className: "panel__content__form__section__dropdown query-builder__setup__config-group__item__selector", noMatchMessage: "No compatible mapping found for specified class", disabled: true, options: [], onChange: () => {
|
|
52
|
-
// do nothing
|
|
53
|
-
}, value: databaseOption, darkMode: !queryBuilderState.applicationStore.layoutService
|
|
54
|
-
.TEMPORARY__isLightColorThemeEnabled })] }), _jsxs("div", { className: "query-builder__setup__config-group__item", children: [_jsx("label", { className: "btn--sm query-builder__setup__config-group__item__label", title: "connection", htmlFor: "query-builder__setup__connection-selector", children: "Connection" }), _jsx(CustomSelectorInput, { inputId: "query-builder__setup__connection-selector", className: "panel__content__form__section__dropdown query-builder__setup__config-group__item__selector", noMatchMessage: "No compatible mapping found for specified class", disabled: compConnectionsOptions.length < 2, options: compConnectionsOptions, onChange: changeConnection, value: selectedConnection, darkMode: !queryBuilderState.applicationStore.layoutService
|
|
55
|
-
.TEMPORARY__isLightColorThemeEnabled })] }), _jsx("div", { className: "query-builder__setup__config-group__item", children: _jsx(QueryBuilderClassSelector, { queryBuilderState: queryBuilderState, classes: classes, noMatchMessage: "No entities selected from" }) })] })] }));
|
|
56
|
-
});
|
|
57
|
-
export const renderDatabaseQueryBuilderSetupPanelContent = (queryBuilderState) => (_jsx(IsolatedDatabseQueryBuilderSetupPanelContext, { queryBuilderState: queryBuilderState }));
|
|
58
|
-
//# sourceMappingURL=IsolatedQueryDatabase.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"IsolatedQueryDatabase.js","sourceRoot":"","sources":["../../../../../src/components/editor/editor-group/database/IsolatedQueryDatabase.tsx"],"names":[],"mappings":"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"}
|
package/lib/stores/editor/editor-state/element-editor-state/database/QueryDatabaseState.d.ts
DELETED
|
@@ -1,37 +0,0 @@
|
|
|
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 { EngineRuntime, Database, RelationalDatabaseConnection, GraphManagerState } from '@finos/legend-graph';
|
|
17
|
-
import type { EditorStore } from '../../../EditorStore.js';
|
|
18
|
-
import { type GeneratorFn } from '@finos/legend-shared';
|
|
19
|
-
import { QueryBuilderConfig, QueryBuilderState } from '@finos/legend-query-builder';
|
|
20
|
-
import { type GenericLegendApplicationStore } from '@finos/legend-application';
|
|
21
|
-
export declare class IsolatedDatabaseBuilderState extends QueryBuilderState {
|
|
22
|
-
readonly database: Database;
|
|
23
|
-
globalGraphManagerState: GraphManagerState;
|
|
24
|
-
engineRuntime: EngineRuntime;
|
|
25
|
-
connectionKey: string;
|
|
26
|
-
compatibleConnections: Map<string, RelationalDatabaseConnection>;
|
|
27
|
-
TEMPORARY__setupPanelContentRenderer: () => React.ReactNode;
|
|
28
|
-
constructor(applicationStore: GenericLegendApplicationStore, isolatedGraphManagerState: GraphManagerState, globalGraphManagerState: GraphManagerState, database: Database, connectionKey: string, runtime: EngineRuntime, compatibleConnections: Map<string, RelationalDatabaseConnection>, acceptedElementPaths?: string[], config?: QueryBuilderConfig | undefined);
|
|
29
|
-
changeConnection(key: string): void;
|
|
30
|
-
}
|
|
31
|
-
export declare class QueryDatabaseState {
|
|
32
|
-
editorStore: EditorStore;
|
|
33
|
-
database: Database;
|
|
34
|
-
constructor(database: Database, editorStore: EditorStore);
|
|
35
|
-
init(): GeneratorFn<void>;
|
|
36
|
-
}
|
|
37
|
-
//# sourceMappingURL=QueryDatabaseState.d.ts.map
|
package/lib/stores/editor/editor-state/element-editor-state/database/QueryDatabaseState.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"QueryDatabaseState.d.ts","sourceRoot":"","sources":["../../../../../../src/stores/editor/editor-state/element-editor-state/database/QueryDatabaseState.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAEL,aAAa,EACb,QAAQ,EACR,4BAA4B,EAI5B,iBAAiB,EAElB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAIL,KAAK,WAAW,EAEjB,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EAEL,kBAAkB,EAClB,iBAAiB,EAClB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAEL,KAAK,6BAA6B,EACnC,MAAM,2BAA2B,CAAC;AAyBnC,qBAAa,4BAA6B,SAAQ,iBAAiB;IACjE,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC5B,uBAAuB,EAAE,iBAAiB,CAAC;IAC3C,aAAa,EAAE,aAAa,CAAC;IAC7B,aAAa,EAAE,MAAM,CAAC;IACtB,qBAAqB,EAAE,GAAG,CAAC,MAAM,EAAE,4BAA4B,CAAC,CAAC;IAExD,oCAAoC,QAAO,KAAK,CAAC,SAAS,CACf;gBAGlD,gBAAgB,EAAE,6BAA6B,EAC/C,yBAAyB,EAAE,iBAAiB,EAC5C,uBAAuB,EAAE,iBAAiB,EAC1C,QAAQ,EAAE,QAAQ,EAClB,aAAa,EAAE,MAAM,EACrB,OAAO,EAAE,aAAa,EACtB,qBAAqB,EAAE,GAAG,CAAC,MAAM,EAAE,4BAA4B,CAAC,EAChE,oBAAoB,CAAC,EAAE,MAAM,EAAE,EAC/B,MAAM,CAAC,EAAE,kBAAkB,GAAG,SAAS;IAmCzC,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;CAWpC;AAED,qBAAa,kBAAkB;IAC7B,WAAW,EAAE,WAAW,CAAC;IACzB,QAAQ,EAAE,QAAQ,CAAC;gBAEP,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW;IAQvD,IAAI,IAAI,WAAW,CAAC,IAAI,CAAC;CA0F3B"}
|
|
@@ -1,127 +0,0 @@
|
|
|
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 { DEFAULT_GENERATION_PACKAGE, EngineRuntime, Database, RelationalDatabaseConnection, PackageableElementExplicitReference, StoreConnections, IdentifiedConnection, GraphManagerState, getMappingCompatibleClasses, } from '@finos/legend-graph';
|
|
17
|
-
import { ActionState, assertErrorThrown, guaranteeNonNullable, assertTrue, } from '@finos/legend-shared';
|
|
18
|
-
import { action, flow, flowResult, makeObservable, observable } from 'mobx';
|
|
19
|
-
import { QueryBuilderAdvancedWorkflowState, QueryBuilderConfig, QueryBuilderState, } from '@finos/legend-query-builder';
|
|
20
|
-
import { DEFAULT_TAB_SIZE, } from '@finos/legend-application';
|
|
21
|
-
import { payloadDebugger } from '../../../panel-group/DevToolPanelState.js';
|
|
22
|
-
import { renderDatabaseQueryBuilderSetupPanelContent } from '../../../../../components/editor/editor-group/database/IsolatedQueryDatabase.js';
|
|
23
|
-
const replaceConnectionInEngineRuntime = (engineRuntime, connection, databse) => {
|
|
24
|
-
const _storeConnection = new StoreConnections(PackageableElementExplicitReference.create(databse));
|
|
25
|
-
const newconnection = new RelationalDatabaseConnection(PackageableElementExplicitReference.create(databse), connection.type, connection.datasourceSpecification, connection.authenticationStrategy);
|
|
26
|
-
newconnection.localMode = connection.localMode;
|
|
27
|
-
newconnection.timeZone = connection.timeZone;
|
|
28
|
-
_storeConnection.storeConnections = [
|
|
29
|
-
new IdentifiedConnection('connection1', newconnection),
|
|
30
|
-
];
|
|
31
|
-
engineRuntime.connections = [_storeConnection];
|
|
32
|
-
};
|
|
33
|
-
export class IsolatedDatabaseBuilderState extends QueryBuilderState {
|
|
34
|
-
database;
|
|
35
|
-
globalGraphManagerState;
|
|
36
|
-
engineRuntime;
|
|
37
|
-
connectionKey;
|
|
38
|
-
compatibleConnections;
|
|
39
|
-
TEMPORARY__setupPanelContentRenderer = () => renderDatabaseQueryBuilderSetupPanelContent(this);
|
|
40
|
-
constructor(applicationStore, isolatedGraphManagerState, globalGraphManagerState, database, connectionKey, runtime, compatibleConnections, acceptedElementPaths, config) {
|
|
41
|
-
super(applicationStore, isolatedGraphManagerState, QueryBuilderAdvancedWorkflowState.INSTANCE, config);
|
|
42
|
-
makeObservable(this, {
|
|
43
|
-
connectionKey: observable,
|
|
44
|
-
engineRuntime: observable,
|
|
45
|
-
changeConnection: action,
|
|
46
|
-
});
|
|
47
|
-
this.database = database;
|
|
48
|
-
this.globalGraphManagerState = globalGraphManagerState;
|
|
49
|
-
this.engineRuntime = runtime;
|
|
50
|
-
this.compatibleConnections = compatibleConnections;
|
|
51
|
-
this.connectionKey = connectionKey;
|
|
52
|
-
const classes = isolatedGraphManagerState.usableClasses;
|
|
53
|
-
const electedMapping = guaranteeNonNullable(isolatedGraphManagerState.graph.mappings.filter((m) => acceptedElementPaths ? acceptedElementPaths.includes(m.path) : true)[0], 'Compatible mapping expected');
|
|
54
|
-
this.sourceElement = guaranteeNonNullable(getMappingCompatibleClasses(electedMapping, classes)[0], 'Compatible class expected for mapping');
|
|
55
|
-
this.executionContextState.mapping = electedMapping;
|
|
56
|
-
this.executionContextState.runtimeValue = runtime;
|
|
57
|
-
}
|
|
58
|
-
changeConnection(key) {
|
|
59
|
-
const connection = this.compatibleConnections.get(key);
|
|
60
|
-
if (connection) {
|
|
61
|
-
replaceConnectionInEngineRuntime(this.engineRuntime, connection, this.database);
|
|
62
|
-
this.connectionKey = key;
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
export class QueryDatabaseState {
|
|
67
|
-
editorStore;
|
|
68
|
-
database;
|
|
69
|
-
constructor(database, editorStore) {
|
|
70
|
-
this.database = database;
|
|
71
|
-
this.editorStore = editorStore;
|
|
72
|
-
makeObservable(this, {
|
|
73
|
-
init: flow,
|
|
74
|
-
});
|
|
75
|
-
}
|
|
76
|
-
*init() {
|
|
77
|
-
try {
|
|
78
|
-
const compConnections = new Map();
|
|
79
|
-
this.editorStore.graphManagerState.usableConnections.forEach((conn) => {
|
|
80
|
-
const val = conn.connectionValue;
|
|
81
|
-
if (val instanceof RelationalDatabaseConnection) {
|
|
82
|
-
compConnections.set(conn.path, val);
|
|
83
|
-
}
|
|
84
|
-
});
|
|
85
|
-
assertTrue(compConnections.size > 0, `No compatible connections found for database ${this.database.path}`);
|
|
86
|
-
const embeddedQueryBuilderState = this.editorStore.embeddedQueryBuilderState;
|
|
87
|
-
const databaseGraphManagerState = new GraphManagerState(this.editorStore.applicationStore.pluginManager, this.editorStore.applicationStore.logService);
|
|
88
|
-
yield databaseGraphManagerState.graphManager.initialize({
|
|
89
|
-
env: this.editorStore.applicationStore.config.env,
|
|
90
|
-
tabSize: DEFAULT_TAB_SIZE,
|
|
91
|
-
clientConfig: {
|
|
92
|
-
baseUrl: this.editorStore.applicationStore.config.engineServerUrl,
|
|
93
|
-
queryBaseUrl: this.editorStore.applicationStore.config.engineQueryServerUrl,
|
|
94
|
-
enableCompression: true,
|
|
95
|
-
payloadDebugger,
|
|
96
|
-
},
|
|
97
|
-
}, {
|
|
98
|
-
tracerService: this.editorStore.applicationStore.tracerService,
|
|
99
|
-
});
|
|
100
|
-
databaseGraphManagerState.graph =
|
|
101
|
-
this.editorStore.graphManagerState.createNewGraph();
|
|
102
|
-
const copiedDb = new Database(this.database.name);
|
|
103
|
-
databaseGraphManagerState.graph.addElement(copiedDb, guaranteeNonNullable(this.database.package?.path));
|
|
104
|
-
copiedDb.schemas = this.database.schemas;
|
|
105
|
-
copiedDb.joins = this.database.joins;
|
|
106
|
-
copiedDb.filters = this.database.filters;
|
|
107
|
-
const entities = (yield this.editorStore.graphManagerState.graphManager.generateModelsFromDatabaseSpecification(this.database.path, DEFAULT_GENERATION_PACKAGE, this.editorStore.graphManagerState.graph));
|
|
108
|
-
yield this.editorStore.graphManagerState.graphManager.buildGraph(databaseGraphManagerState.graph, entities, ActionState.create());
|
|
109
|
-
const engineRuntime = new EngineRuntime();
|
|
110
|
-
engineRuntime.mappings = databaseGraphManagerState.graph.mappings.map((e) => PackageableElementExplicitReference.create(e));
|
|
111
|
-
const connectionEntry = guaranteeNonNullable(Array.from(compConnections.entries())[0]);
|
|
112
|
-
const connection = connectionEntry[1];
|
|
113
|
-
replaceConnectionInEngineRuntime(engineRuntime, connection, copiedDb);
|
|
114
|
-
const config = new QueryBuilderConfig();
|
|
115
|
-
const queryBuilderState = new IsolatedDatabaseBuilderState(this.editorStore.applicationStore, databaseGraphManagerState, this.editorStore.graphManagerState, copiedDb, connectionEntry[0], engineRuntime, compConnections, entities.map((e) => e.path), config);
|
|
116
|
-
yield flowResult(embeddedQueryBuilderState.setEmbeddedQueryBuilderConfiguration({
|
|
117
|
-
setupQueryBuilderState: async () => queryBuilderState,
|
|
118
|
-
actionConfigs: [],
|
|
119
|
-
}));
|
|
120
|
-
}
|
|
121
|
-
catch (error) {
|
|
122
|
-
assertErrorThrown(error);
|
|
123
|
-
this.editorStore.applicationStore.notificationService.notifyError(`Unable to query database: ${error.message}`);
|
|
124
|
-
}
|
|
125
|
-
}
|
|
126
|
-
}
|
|
127
|
-
//# sourceMappingURL=QueryDatabaseState.js.map
|
package/lib/stores/editor/editor-state/element-editor-state/database/QueryDatabaseState.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"QueryDatabaseState.js","sourceRoot":"","sources":["../../../../../../src/stores/editor/editor-state/element-editor-state/database/QueryDatabaseState.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,142 +0,0 @@
|
|
|
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
|
-
|
|
17
|
-
import {
|
|
18
|
-
type Database,
|
|
19
|
-
type PackageableConnection,
|
|
20
|
-
getMappingCompatibleClasses,
|
|
21
|
-
} from '@finos/legend-graph';
|
|
22
|
-
import { QueryBuilderClassSelector } from '@finos/legend-query-builder';
|
|
23
|
-
import type { IsolatedDatabaseBuilderState } from '../../../../stores/editor/editor-state/element-editor-state/database/QueryDatabaseState.js';
|
|
24
|
-
import { observer } from 'mobx-react-lite';
|
|
25
|
-
import {
|
|
26
|
-
CustomSelectorInput,
|
|
27
|
-
PanelHeader,
|
|
28
|
-
compareLabelFn,
|
|
29
|
-
} from '@finos/legend-art';
|
|
30
|
-
import { returnUndefOnError } from '@finos/legend-shared';
|
|
31
|
-
|
|
32
|
-
const IsolatedDatabseQueryBuilderSetupPanelContext = observer(
|
|
33
|
-
(props: { queryBuilderState: IsolatedDatabaseBuilderState }) => {
|
|
34
|
-
const { queryBuilderState } = props;
|
|
35
|
-
const globalGraphManagerState = queryBuilderState.globalGraphManagerState;
|
|
36
|
-
const getConnectionValue = (
|
|
37
|
-
val: string,
|
|
38
|
-
): PackageableConnection | undefined =>
|
|
39
|
-
returnUndefOnError(() =>
|
|
40
|
-
globalGraphManagerState.graph.getConnection(val),
|
|
41
|
-
);
|
|
42
|
-
const database = queryBuilderState.database;
|
|
43
|
-
const compConnections = queryBuilderState.compatibleConnections;
|
|
44
|
-
const compConnectionsOptions = Array.from(compConnections.keys())
|
|
45
|
-
.map((e) => ({ value: e, label: getConnectionValue(e)?.name ?? e }))
|
|
46
|
-
.sort(compareLabelFn);
|
|
47
|
-
const changeConnection = (
|
|
48
|
-
val: { value: string; label: string } | null,
|
|
49
|
-
): void => {
|
|
50
|
-
if (val) {
|
|
51
|
-
queryBuilderState.changeConnection(val.value);
|
|
52
|
-
}
|
|
53
|
-
};
|
|
54
|
-
const connection = compConnections.get(queryBuilderState.connectionKey);
|
|
55
|
-
const selectedConnection = connection
|
|
56
|
-
? {
|
|
57
|
-
label: queryBuilderState.connectionKey,
|
|
58
|
-
value:
|
|
59
|
-
getConnectionValue(queryBuilderState.connectionKey)?.name ??
|
|
60
|
-
queryBuilderState.connectionKey,
|
|
61
|
-
}
|
|
62
|
-
: undefined;
|
|
63
|
-
const databaseOption = {
|
|
64
|
-
value: database,
|
|
65
|
-
label: database.path,
|
|
66
|
-
};
|
|
67
|
-
const classes = queryBuilderState.executionContextState.mapping
|
|
68
|
-
? getMappingCompatibleClasses(
|
|
69
|
-
queryBuilderState.executionContextState.mapping,
|
|
70
|
-
queryBuilderState.graphManagerState.usableClasses,
|
|
71
|
-
)
|
|
72
|
-
: [];
|
|
73
|
-
return (
|
|
74
|
-
<div className="query-builder__setup__config-group">
|
|
75
|
-
<PanelHeader title="properties" />
|
|
76
|
-
<div className="query-builder__setup__config-group__content">
|
|
77
|
-
<div className="query-builder__setup__config-group__item">
|
|
78
|
-
<label
|
|
79
|
-
className="btn--sm query-builder__setup__config-group__item__label"
|
|
80
|
-
title="store"
|
|
81
|
-
htmlFor="query-builder__setup__store-selector"
|
|
82
|
-
>
|
|
83
|
-
Store
|
|
84
|
-
</label>
|
|
85
|
-
<CustomSelectorInput
|
|
86
|
-
inputId="query-builder__setup__store-selector"
|
|
87
|
-
className="panel__content__form__section__dropdown query-builder__setup__config-group__item__selector"
|
|
88
|
-
noMatchMessage="No compatible mapping found for specified class"
|
|
89
|
-
disabled={true}
|
|
90
|
-
options={[] as { label: string; value: Database }[]}
|
|
91
|
-
onChange={() => {
|
|
92
|
-
// do nothing
|
|
93
|
-
}}
|
|
94
|
-
value={databaseOption}
|
|
95
|
-
darkMode={
|
|
96
|
-
!queryBuilderState.applicationStore.layoutService
|
|
97
|
-
.TEMPORARY__isLightColorThemeEnabled
|
|
98
|
-
}
|
|
99
|
-
/>
|
|
100
|
-
</div>
|
|
101
|
-
<div className="query-builder__setup__config-group__item">
|
|
102
|
-
<label
|
|
103
|
-
className="btn--sm query-builder__setup__config-group__item__label"
|
|
104
|
-
title="connection"
|
|
105
|
-
htmlFor="query-builder__setup__connection-selector"
|
|
106
|
-
>
|
|
107
|
-
Connection
|
|
108
|
-
</label>
|
|
109
|
-
<CustomSelectorInput
|
|
110
|
-
inputId="query-builder__setup__connection-selector"
|
|
111
|
-
className="panel__content__form__section__dropdown query-builder__setup__config-group__item__selector"
|
|
112
|
-
noMatchMessage="No compatible mapping found for specified class"
|
|
113
|
-
disabled={compConnectionsOptions.length < 2}
|
|
114
|
-
options={compConnectionsOptions}
|
|
115
|
-
onChange={changeConnection}
|
|
116
|
-
value={selectedConnection}
|
|
117
|
-
darkMode={
|
|
118
|
-
!queryBuilderState.applicationStore.layoutService
|
|
119
|
-
.TEMPORARY__isLightColorThemeEnabled
|
|
120
|
-
}
|
|
121
|
-
/>
|
|
122
|
-
</div>
|
|
123
|
-
<div className="query-builder__setup__config-group__item">
|
|
124
|
-
<QueryBuilderClassSelector
|
|
125
|
-
queryBuilderState={queryBuilderState}
|
|
126
|
-
classes={classes}
|
|
127
|
-
noMatchMessage="No entities selected from"
|
|
128
|
-
/>
|
|
129
|
-
</div>
|
|
130
|
-
</div>
|
|
131
|
-
</div>
|
|
132
|
-
);
|
|
133
|
-
},
|
|
134
|
-
);
|
|
135
|
-
|
|
136
|
-
export const renderDatabaseQueryBuilderSetupPanelContent = (
|
|
137
|
-
queryBuilderState: IsolatedDatabaseBuilderState,
|
|
138
|
-
): React.ReactNode => (
|
|
139
|
-
<IsolatedDatabseQueryBuilderSetupPanelContext
|
|
140
|
-
queryBuilderState={queryBuilderState}
|
|
141
|
-
/>
|
|
142
|
-
);
|
|
@@ -1,240 +0,0 @@
|
|
|
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
|
-
|
|
17
|
-
import {
|
|
18
|
-
DEFAULT_GENERATION_PACKAGE,
|
|
19
|
-
EngineRuntime,
|
|
20
|
-
Database,
|
|
21
|
-
RelationalDatabaseConnection,
|
|
22
|
-
PackageableElementExplicitReference,
|
|
23
|
-
StoreConnections,
|
|
24
|
-
IdentifiedConnection,
|
|
25
|
-
GraphManagerState,
|
|
26
|
-
getMappingCompatibleClasses,
|
|
27
|
-
} from '@finos/legend-graph';
|
|
28
|
-
import type { EditorStore } from '../../../EditorStore.js';
|
|
29
|
-
import {
|
|
30
|
-
ActionState,
|
|
31
|
-
assertErrorThrown,
|
|
32
|
-
guaranteeNonNullable,
|
|
33
|
-
type GeneratorFn,
|
|
34
|
-
assertTrue,
|
|
35
|
-
} from '@finos/legend-shared';
|
|
36
|
-
import { action, flow, flowResult, makeObservable, observable } from 'mobx';
|
|
37
|
-
import type { Entity } from '@finos/legend-storage';
|
|
38
|
-
import {
|
|
39
|
-
QueryBuilderAdvancedWorkflowState,
|
|
40
|
-
QueryBuilderConfig,
|
|
41
|
-
QueryBuilderState,
|
|
42
|
-
} from '@finos/legend-query-builder';
|
|
43
|
-
import {
|
|
44
|
-
DEFAULT_TAB_SIZE,
|
|
45
|
-
type GenericLegendApplicationStore,
|
|
46
|
-
} from '@finos/legend-application';
|
|
47
|
-
import { payloadDebugger } from '../../../panel-group/DevToolPanelState.js';
|
|
48
|
-
import { renderDatabaseQueryBuilderSetupPanelContent } from '../../../../../components/editor/editor-group/database/IsolatedQueryDatabase.js';
|
|
49
|
-
|
|
50
|
-
const replaceConnectionInEngineRuntime = (
|
|
51
|
-
engineRuntime: EngineRuntime,
|
|
52
|
-
connection: RelationalDatabaseConnection,
|
|
53
|
-
databse: Database,
|
|
54
|
-
): void => {
|
|
55
|
-
const _storeConnection = new StoreConnections(
|
|
56
|
-
PackageableElementExplicitReference.create(databse),
|
|
57
|
-
);
|
|
58
|
-
const newconnection = new RelationalDatabaseConnection(
|
|
59
|
-
PackageableElementExplicitReference.create(databse),
|
|
60
|
-
connection.type,
|
|
61
|
-
connection.datasourceSpecification,
|
|
62
|
-
connection.authenticationStrategy,
|
|
63
|
-
);
|
|
64
|
-
newconnection.localMode = connection.localMode;
|
|
65
|
-
newconnection.timeZone = connection.timeZone;
|
|
66
|
-
_storeConnection.storeConnections = [
|
|
67
|
-
new IdentifiedConnection('connection1', newconnection),
|
|
68
|
-
];
|
|
69
|
-
engineRuntime.connections = [_storeConnection];
|
|
70
|
-
};
|
|
71
|
-
export class IsolatedDatabaseBuilderState extends QueryBuilderState {
|
|
72
|
-
readonly database: Database;
|
|
73
|
-
globalGraphManagerState: GraphManagerState;
|
|
74
|
-
engineRuntime: EngineRuntime;
|
|
75
|
-
connectionKey: string;
|
|
76
|
-
compatibleConnections: Map<string, RelationalDatabaseConnection>;
|
|
77
|
-
|
|
78
|
-
override TEMPORARY__setupPanelContentRenderer = (): React.ReactNode =>
|
|
79
|
-
renderDatabaseQueryBuilderSetupPanelContent(this);
|
|
80
|
-
|
|
81
|
-
constructor(
|
|
82
|
-
applicationStore: GenericLegendApplicationStore,
|
|
83
|
-
isolatedGraphManagerState: GraphManagerState,
|
|
84
|
-
globalGraphManagerState: GraphManagerState,
|
|
85
|
-
database: Database,
|
|
86
|
-
connectionKey: string,
|
|
87
|
-
runtime: EngineRuntime,
|
|
88
|
-
compatibleConnections: Map<string, RelationalDatabaseConnection>,
|
|
89
|
-
acceptedElementPaths?: string[],
|
|
90
|
-
config?: QueryBuilderConfig | undefined,
|
|
91
|
-
) {
|
|
92
|
-
super(
|
|
93
|
-
applicationStore,
|
|
94
|
-
isolatedGraphManagerState,
|
|
95
|
-
QueryBuilderAdvancedWorkflowState.INSTANCE,
|
|
96
|
-
config,
|
|
97
|
-
);
|
|
98
|
-
makeObservable(this, {
|
|
99
|
-
connectionKey: observable,
|
|
100
|
-
engineRuntime: observable,
|
|
101
|
-
changeConnection: action,
|
|
102
|
-
});
|
|
103
|
-
this.database = database;
|
|
104
|
-
this.globalGraphManagerState = globalGraphManagerState;
|
|
105
|
-
this.engineRuntime = runtime;
|
|
106
|
-
this.compatibleConnections = compatibleConnections;
|
|
107
|
-
this.connectionKey = connectionKey;
|
|
108
|
-
const classes = isolatedGraphManagerState.usableClasses;
|
|
109
|
-
const electedMapping = guaranteeNonNullable(
|
|
110
|
-
isolatedGraphManagerState.graph.mappings.filter((m) =>
|
|
111
|
-
acceptedElementPaths ? acceptedElementPaths.includes(m.path) : true,
|
|
112
|
-
)[0],
|
|
113
|
-
'Compatible mapping expected',
|
|
114
|
-
);
|
|
115
|
-
|
|
116
|
-
this.sourceElement = guaranteeNonNullable(
|
|
117
|
-
getMappingCompatibleClasses(electedMapping, classes)[0],
|
|
118
|
-
'Compatible class expected for mapping',
|
|
119
|
-
);
|
|
120
|
-
|
|
121
|
-
this.executionContextState.mapping = electedMapping;
|
|
122
|
-
this.executionContextState.runtimeValue = runtime;
|
|
123
|
-
}
|
|
124
|
-
|
|
125
|
-
changeConnection(key: string): void {
|
|
126
|
-
const connection = this.compatibleConnections.get(key);
|
|
127
|
-
if (connection) {
|
|
128
|
-
replaceConnectionInEngineRuntime(
|
|
129
|
-
this.engineRuntime,
|
|
130
|
-
connection,
|
|
131
|
-
this.database,
|
|
132
|
-
);
|
|
133
|
-
this.connectionKey = key;
|
|
134
|
-
}
|
|
135
|
-
}
|
|
136
|
-
}
|
|
137
|
-
|
|
138
|
-
export class QueryDatabaseState {
|
|
139
|
-
editorStore: EditorStore;
|
|
140
|
-
database: Database;
|
|
141
|
-
|
|
142
|
-
constructor(database: Database, editorStore: EditorStore) {
|
|
143
|
-
this.database = database;
|
|
144
|
-
this.editorStore = editorStore;
|
|
145
|
-
|
|
146
|
-
makeObservable(this, {
|
|
147
|
-
init: flow,
|
|
148
|
-
});
|
|
149
|
-
}
|
|
150
|
-
*init(): GeneratorFn<void> {
|
|
151
|
-
try {
|
|
152
|
-
const compConnections = new Map<string, RelationalDatabaseConnection>();
|
|
153
|
-
this.editorStore.graphManagerState.usableConnections.forEach((conn) => {
|
|
154
|
-
const val = conn.connectionValue;
|
|
155
|
-
if (val instanceof RelationalDatabaseConnection) {
|
|
156
|
-
compConnections.set(conn.path, val);
|
|
157
|
-
}
|
|
158
|
-
});
|
|
159
|
-
assertTrue(
|
|
160
|
-
compConnections.size > 0,
|
|
161
|
-
`No compatible connections found for database ${this.database.path}`,
|
|
162
|
-
);
|
|
163
|
-
const embeddedQueryBuilderState =
|
|
164
|
-
this.editorStore.embeddedQueryBuilderState;
|
|
165
|
-
const databaseGraphManagerState = new GraphManagerState(
|
|
166
|
-
this.editorStore.applicationStore.pluginManager,
|
|
167
|
-
this.editorStore.applicationStore.logService,
|
|
168
|
-
);
|
|
169
|
-
yield databaseGraphManagerState.graphManager.initialize(
|
|
170
|
-
{
|
|
171
|
-
env: this.editorStore.applicationStore.config.env,
|
|
172
|
-
tabSize: DEFAULT_TAB_SIZE,
|
|
173
|
-
clientConfig: {
|
|
174
|
-
baseUrl: this.editorStore.applicationStore.config.engineServerUrl,
|
|
175
|
-
queryBaseUrl:
|
|
176
|
-
this.editorStore.applicationStore.config.engineQueryServerUrl,
|
|
177
|
-
enableCompression: true,
|
|
178
|
-
payloadDebugger,
|
|
179
|
-
},
|
|
180
|
-
},
|
|
181
|
-
{
|
|
182
|
-
tracerService: this.editorStore.applicationStore.tracerService,
|
|
183
|
-
},
|
|
184
|
-
);
|
|
185
|
-
databaseGraphManagerState.graph =
|
|
186
|
-
this.editorStore.graphManagerState.createNewGraph();
|
|
187
|
-
const copiedDb = new Database(this.database.name);
|
|
188
|
-
databaseGraphManagerState.graph.addElement(
|
|
189
|
-
copiedDb,
|
|
190
|
-
guaranteeNonNullable(this.database.package?.path),
|
|
191
|
-
);
|
|
192
|
-
copiedDb.schemas = this.database.schemas;
|
|
193
|
-
copiedDb.joins = this.database.joins;
|
|
194
|
-
copiedDb.filters = this.database.filters;
|
|
195
|
-
const entities =
|
|
196
|
-
(yield this.editorStore.graphManagerState.graphManager.generateModelsFromDatabaseSpecification(
|
|
197
|
-
this.database.path,
|
|
198
|
-
DEFAULT_GENERATION_PACKAGE,
|
|
199
|
-
this.editorStore.graphManagerState.graph,
|
|
200
|
-
)) as Entity[];
|
|
201
|
-
yield this.editorStore.graphManagerState.graphManager.buildGraph(
|
|
202
|
-
databaseGraphManagerState.graph,
|
|
203
|
-
entities,
|
|
204
|
-
ActionState.create(),
|
|
205
|
-
);
|
|
206
|
-
const engineRuntime = new EngineRuntime();
|
|
207
|
-
engineRuntime.mappings = databaseGraphManagerState.graph.mappings.map(
|
|
208
|
-
(e) => PackageableElementExplicitReference.create(e),
|
|
209
|
-
);
|
|
210
|
-
const connectionEntry = guaranteeNonNullable(
|
|
211
|
-
Array.from(compConnections.entries())[0],
|
|
212
|
-
);
|
|
213
|
-
const connection = connectionEntry[1];
|
|
214
|
-
replaceConnectionInEngineRuntime(engineRuntime, connection, copiedDb);
|
|
215
|
-
const config = new QueryBuilderConfig();
|
|
216
|
-
const queryBuilderState = new IsolatedDatabaseBuilderState(
|
|
217
|
-
this.editorStore.applicationStore,
|
|
218
|
-
databaseGraphManagerState,
|
|
219
|
-
this.editorStore.graphManagerState,
|
|
220
|
-
copiedDb,
|
|
221
|
-
connectionEntry[0],
|
|
222
|
-
engineRuntime,
|
|
223
|
-
compConnections,
|
|
224
|
-
entities.map((e) => e.path),
|
|
225
|
-
config,
|
|
226
|
-
);
|
|
227
|
-
yield flowResult(
|
|
228
|
-
embeddedQueryBuilderState.setEmbeddedQueryBuilderConfiguration({
|
|
229
|
-
setupQueryBuilderState: async () => queryBuilderState,
|
|
230
|
-
actionConfigs: [],
|
|
231
|
-
}),
|
|
232
|
-
);
|
|
233
|
-
} catch (error) {
|
|
234
|
-
assertErrorThrown(error);
|
|
235
|
-
this.editorStore.applicationStore.notificationService.notifyError(
|
|
236
|
-
`Unable to query database: ${error.message}`,
|
|
237
|
-
);
|
|
238
|
-
}
|
|
239
|
-
}
|
|
240
|
-
}
|