@finos/legend-application-query 13.7.193 → 13.7.196
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/__lib__/LegendQueryNavigation.d.ts +18 -0
- package/lib/__lib__/LegendQueryNavigation.d.ts.map +1 -1
- package/lib/__lib__/LegendQueryNavigation.js +21 -0
- package/lib/__lib__/LegendQueryNavigation.js.map +1 -1
- package/lib/__lib__/LegendQueryUserDataHelper.d.ts +9 -9
- package/lib/__lib__/LegendQueryUserDataHelper.d.ts.map +1 -1
- package/lib/__lib__/LegendQueryUserDataHelper.js.map +1 -1
- package/lib/__lib__/LegendQueryUserDataSpaceHelper.d.ts +7 -7
- package/lib/__lib__/LegendQueryUserDataSpaceHelper.d.ts.map +1 -1
- package/lib/__lib__/LegendQueryUserDataSpaceHelper.js +5 -5
- package/lib/__lib__/LegendQueryUserDataSpaceHelper.js.map +1 -1
- package/lib/components/Core_LegendQueryApplicationPlugin.d.ts.map +1 -1
- package/lib/components/Core_LegendQueryApplicationPlugin.js +7 -7
- package/lib/components/Core_LegendQueryApplicationPlugin.js.map +1 -1
- package/lib/components/QueryEditor.d.ts.map +1 -1
- package/lib/components/QueryEditor.js +46 -50
- package/lib/components/QueryEditor.js.map +1 -1
- package/lib/components/data-space/DataSpaceQueryCreator.d.ts.map +1 -1
- package/lib/components/data-space/DataSpaceQueryCreator.js +2 -0
- package/lib/components/data-space/DataSpaceQueryCreator.js.map +1 -1
- package/lib/components/data-space/DataSpaceQuerySetup.d.ts +2 -2
- package/lib/components/data-space/DataSpaceQuerySetup.d.ts.map +1 -1
- package/lib/components/data-space/DataSpaceQuerySetup.js +32 -15
- package/lib/components/data-space/DataSpaceQuerySetup.js.map +1 -1
- package/lib/index.css +1 -1
- package/lib/index.d.ts +1 -1
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +1 -1
- package/lib/index.js.map +1 -1
- package/lib/light-mode.css +2 -2
- package/lib/light-mode.css.map +1 -1
- package/lib/package.json +1 -1
- package/lib/stores/QueryEditorStore.d.ts +3 -3
- package/lib/stores/QueryEditorStore.d.ts.map +1 -1
- package/lib/stores/QueryEditorStore.js +20 -12
- package/lib/stores/QueryEditorStore.js.map +1 -1
- package/lib/stores/data-product/query-builder/LegendQueryDataProductQueryBuilderState.d.ts +30 -0
- package/lib/stores/data-product/query-builder/LegendQueryDataProductQueryBuilderState.d.ts.map +1 -0
- package/lib/stores/data-product/query-builder/LegendQueryDataProductQueryBuilderState.js +41 -0
- package/lib/stores/data-product/query-builder/LegendQueryDataProductQueryBuilderState.js.map +1 -0
- package/lib/stores/data-space/DataSpaceQueryBuilderHelper.d.ts +0 -3
- package/lib/stores/data-space/DataSpaceQueryBuilderHelper.d.ts.map +1 -1
- package/lib/stores/data-space/DataSpaceQueryBuilderHelper.js +0 -6
- package/lib/stores/data-space/DataSpaceQueryBuilderHelper.js.map +1 -1
- package/lib/stores/data-space/DataSpaceQueryCreatorStore.d.ts +45 -17
- package/lib/stores/data-space/DataSpaceQueryCreatorStore.d.ts.map +1 -1
- package/lib/stores/data-space/DataSpaceQueryCreatorStore.js +195 -67
- package/lib/stores/data-space/DataSpaceQueryCreatorStore.js.map +1 -1
- package/lib/stores/data-space/DataSpaceTemplateQueryCreatorStore.d.ts.map +1 -1
- package/lib/stores/data-space/DataSpaceTemplateQueryCreatorStore.js +7 -3
- package/lib/stores/data-space/DataSpaceTemplateQueryCreatorStore.js.map +1 -1
- package/lib/stores/data-space/LegendQueryBareQueryBuilderState.d.ts +46 -0
- package/lib/stores/data-space/LegendQueryBareQueryBuilderState.d.ts.map +1 -0
- package/lib/stores/data-space/LegendQueryBareQueryBuilderState.js +63 -0
- package/lib/stores/data-space/LegendQueryBareQueryBuilderState.js.map +1 -0
- package/lib/stores/data-space/query-builder/LegendQueryDataSpaceQueryBuilderState.d.ts +47 -0
- package/lib/stores/data-space/query-builder/LegendQueryDataSpaceQueryBuilderState.d.ts.map +1 -0
- package/lib/stores/data-space/query-builder/LegendQueryDataSpaceQueryBuilderState.js +145 -0
- package/lib/stores/data-space/query-builder/LegendQueryDataSpaceQueryBuilderState.js.map +1 -0
- package/package.json +11 -11
- package/src/__lib__/LegendQueryNavigation.ts +43 -0
- package/src/__lib__/LegendQueryUserDataHelper.ts +14 -12
- package/src/__lib__/LegendQueryUserDataSpaceHelper.ts +14 -14
- package/src/components/Core_LegendQueryApplicationPlugin.tsx +5 -13
- package/src/components/QueryEditor.tsx +145 -103
- package/src/components/data-space/DataSpaceQueryCreator.tsx +4 -2
- package/src/components/data-space/DataSpaceQuerySetup.tsx +63 -20
- package/src/index.ts +1 -1
- package/src/stores/QueryEditorStore.ts +100 -91
- package/src/stores/data-product/query-builder/LegendQueryDataProductQueryBuilderState.ts +129 -0
- package/src/stores/data-space/DataSpaceQueryBuilderHelper.ts +0 -29
- package/src/stores/data-space/DataSpaceQueryCreatorStore.ts +293 -101
- package/src/stores/data-space/DataSpaceTemplateQueryCreatorStore.ts +11 -12
- package/src/stores/data-space/LegendQueryBareQueryBuilderState.ts +117 -0
- package/src/stores/data-space/query-builder/LegendQueryDataSpaceQueryBuilderState.ts +340 -0
- package/tsconfig.json +3 -1
- package/lib/stores/data-space/DataSpaceQuerySetupState.d.ts +0 -44
- package/lib/stores/data-space/DataSpaceQuerySetupState.d.ts.map +0 -1
- package/lib/stores/data-space/DataSpaceQuerySetupState.js +0 -89
- package/lib/stores/data-space/DataSpaceQuerySetupState.js.map +0 -1
- package/src/stores/data-space/DataSpaceQuerySetupState.ts +0 -171
|
@@ -119,10 +119,7 @@ import {
|
|
|
119
119
|
} from '@finos/legend-query-builder';
|
|
120
120
|
import { LegendQueryUserDataHelper } from '../__lib__/LegendQueryUserDataHelper.js';
|
|
121
121
|
import { LegendQueryTelemetryHelper } from '../__lib__/LegendQueryTelemetryHelper.js';
|
|
122
|
-
import {
|
|
123
|
-
DataSpaceQueryBuilderState,
|
|
124
|
-
type DataSpaceInfo,
|
|
125
|
-
} from '@finos/legend-extension-dsl-data-space/application';
|
|
122
|
+
import { type ResolvedDataSpaceEntityWithOrigin } from '@finos/legend-extension-dsl-data-space/application';
|
|
126
123
|
import {
|
|
127
124
|
type DataSpace,
|
|
128
125
|
type DataSpaceExecutionContext,
|
|
@@ -135,7 +132,7 @@ import {
|
|
|
135
132
|
} from '@finos/legend-extension-dsl-data-space/graph';
|
|
136
133
|
import { generateDataSpaceQueryCreatorRoute } from '../__lib__/DSL_DataSpace_LegendQueryNavigation.js';
|
|
137
134
|
import { hasDataSpaceInfoBeenVisited } from '../__lib__/LegendQueryUserDataSpaceHelper.js';
|
|
138
|
-
import {
|
|
135
|
+
import { LegendQueryDataSpaceQueryBuilderState } from './data-space/query-builder/LegendQueryDataSpaceQueryBuilderState.js';
|
|
139
136
|
|
|
140
137
|
export interface QueryPersistConfiguration {
|
|
141
138
|
defaultName?: string | undefined;
|
|
@@ -1100,7 +1097,7 @@ export class ExistingQueryUpdateState {
|
|
|
1100
1097
|
readonly editorStore: ExistingQueryEditorStore;
|
|
1101
1098
|
readonly updateQueryState = ActionState.create();
|
|
1102
1099
|
fetchProjectVersionState = ActionState.create();
|
|
1103
|
-
|
|
1100
|
+
isQueryRenameDialogOpen = false;
|
|
1104
1101
|
saveModal = false;
|
|
1105
1102
|
showQueryInfo = false;
|
|
1106
1103
|
queryVersionId: string | undefined;
|
|
@@ -1111,7 +1108,7 @@ export class ExistingQueryUpdateState {
|
|
|
1111
1108
|
this.editorStore = editorState;
|
|
1112
1109
|
|
|
1113
1110
|
makeObservable(this, {
|
|
1114
|
-
|
|
1111
|
+
isQueryRenameDialogOpen: observable,
|
|
1115
1112
|
saveModal: observable,
|
|
1116
1113
|
showQueryInfo: observable,
|
|
1117
1114
|
queryVersionId: observable,
|
|
@@ -1124,7 +1121,7 @@ export class ExistingQueryUpdateState {
|
|
|
1124
1121
|
setProjectVersions: action,
|
|
1125
1122
|
setQueryVersionId: action,
|
|
1126
1123
|
closeSaveModal: action,
|
|
1127
|
-
|
|
1124
|
+
setIsQueryRenameDialogOpen: action,
|
|
1128
1125
|
updateQuery: flow,
|
|
1129
1126
|
fetchProjectVersions: flow,
|
|
1130
1127
|
updateQueryVersionId: flow,
|
|
@@ -1132,8 +1129,8 @@ export class ExistingQueryUpdateState {
|
|
|
1132
1129
|
this.queryVersionId = this.editorStore.query?.versionId;
|
|
1133
1130
|
}
|
|
1134
1131
|
|
|
1135
|
-
|
|
1136
|
-
this.
|
|
1132
|
+
setIsQueryRenameDialogOpen(val: boolean): void {
|
|
1133
|
+
this.isQueryRenameDialogOpen = val;
|
|
1137
1134
|
}
|
|
1138
1135
|
|
|
1139
1136
|
setShowQueryInfo(val: boolean): void {
|
|
@@ -1186,6 +1183,7 @@ export class ExistingQueryUpdateState {
|
|
|
1186
1183
|
*updateQuery(
|
|
1187
1184
|
queryName: string | undefined,
|
|
1188
1185
|
queryVersionId: string | undefined,
|
|
1186
|
+
queryDescription?: string | undefined,
|
|
1189
1187
|
): GeneratorFn<void> {
|
|
1190
1188
|
try {
|
|
1191
1189
|
this.updateQueryState.inProgress();
|
|
@@ -1209,7 +1207,9 @@ export class ExistingQueryUpdateState {
|
|
|
1209
1207
|
query.versionId = queryVersionId ?? query.versionId;
|
|
1210
1208
|
|
|
1211
1209
|
query.description =
|
|
1212
|
-
|
|
1210
|
+
queryDescription ??
|
|
1211
|
+
this.editorStore.query?.description ??
|
|
1212
|
+
query.description;
|
|
1213
1213
|
const updatedQuery =
|
|
1214
1214
|
(yield this.editorStore.graphManagerState.graphManager.updateQuery(
|
|
1215
1215
|
query,
|
|
@@ -1515,92 +1515,101 @@ export class ExistingQueryEditorStore extends QueryEditorStore {
|
|
|
1515
1515
|
LegendQueryUserDataHelper.getRecentlyVisitedDataSpaces(
|
|
1516
1516
|
this.applicationStore.userDataService,
|
|
1517
1517
|
);
|
|
1518
|
-
const dataSpaceQueryBuilderState =
|
|
1519
|
-
|
|
1520
|
-
|
|
1521
|
-
|
|
1522
|
-
|
|
1523
|
-
|
|
1524
|
-
|
|
1525
|
-
|
|
1526
|
-
|
|
1527
|
-
this,
|
|
1528
|
-
|
|
1529
|
-
|
|
1530
|
-
|
|
1531
|
-
|
|
1518
|
+
const dataSpaceQueryBuilderState =
|
|
1519
|
+
new LegendQueryDataSpaceQueryBuilderState(
|
|
1520
|
+
this.applicationStore,
|
|
1521
|
+
this.graphManagerState,
|
|
1522
|
+
QueryBuilderDataBrowserWorkflow.INSTANCE,
|
|
1523
|
+
new QueryBuilderActionConfig_QueryApplication(this),
|
|
1524
|
+
dataSpace,
|
|
1525
|
+
matchingExecutionContext,
|
|
1526
|
+
isLightGraphEnabled,
|
|
1527
|
+
this.depotServerClient,
|
|
1528
|
+
{
|
|
1529
|
+
groupId: queryInfo.groupId,
|
|
1530
|
+
artifactId: queryInfo.artifactId,
|
|
1531
|
+
versionId: queryInfo.versionId,
|
|
1532
|
+
},
|
|
1533
|
+
(dataSpaceInfo: ResolvedDataSpaceEntityWithOrigin) =>
|
|
1532
1534
|
hasDataSpaceInfoBeenVisited(dataSpaceInfo, visitedDataSpaces),
|
|
1533
|
-
|
|
1534
|
-
async (dataSpaceInfo: DataSpaceInfo) => {
|
|
1535
|
-
if (dataSpaceInfo.defaultExecutionContext) {
|
|
1536
|
-
const proceed = (): void =>
|
|
1537
|
-
this.applicationStore.navigationService.navigator.goToLocation(
|
|
1538
|
-
generateDataSpaceQueryCreatorRoute(
|
|
1539
|
-
guaranteeNonNullable(dataSpaceInfo.groupId),
|
|
1540
|
-
guaranteeNonNullable(dataSpaceInfo.artifactId),
|
|
1541
|
-
LATEST_VERSION_ALIAS, //always default to latest
|
|
1542
|
-
dataSpaceInfo.path,
|
|
1543
|
-
guaranteeNonNullable(dataSpaceInfo.defaultExecutionContext),
|
|
1544
|
-
undefined,
|
|
1545
|
-
undefined,
|
|
1546
|
-
),
|
|
1547
|
-
);
|
|
1548
|
-
const updateQueryAndProceed = async (): Promise<void> => {
|
|
1549
|
-
try {
|
|
1550
|
-
await flowResult(
|
|
1551
|
-
this.updateState.updateQuery(undefined, undefined),
|
|
1552
|
-
);
|
|
1553
|
-
proceed();
|
|
1554
|
-
} catch (error) {
|
|
1555
|
-
assertErrorThrown(error);
|
|
1556
|
-
this.applicationStore.logService.error(
|
|
1557
|
-
LogEvent.create(LEGEND_QUERY_APP_EVENT.GENERIC_FAILURE),
|
|
1558
|
-
error,
|
|
1559
|
-
);
|
|
1560
|
-
this.applicationStore.notificationService.notifyError(error);
|
|
1561
|
-
}
|
|
1562
|
-
};
|
|
1535
|
+
async (dataSpaceInfo: ResolvedDataSpaceEntityWithOrigin) => {
|
|
1563
1536
|
if (
|
|
1564
|
-
|
|
1565
|
-
|
|
1537
|
+
dataSpaceInfo.defaultExecutionContext &&
|
|
1538
|
+
dataSpaceInfo.origin
|
|
1566
1539
|
) {
|
|
1567
|
-
|
|
1568
|
-
|
|
1569
|
-
|
|
1570
|
-
|
|
1540
|
+
const origin = dataSpaceInfo.origin;
|
|
1541
|
+
const proceed = (): void =>
|
|
1542
|
+
this.applicationStore.navigationService.navigator.goToLocation(
|
|
1543
|
+
generateDataSpaceQueryCreatorRoute(
|
|
1544
|
+
origin.groupId,
|
|
1545
|
+
origin.artifactId,
|
|
1546
|
+
LATEST_VERSION_ALIAS, //always default to latest
|
|
1547
|
+
dataSpaceInfo.path,
|
|
1548
|
+
guaranteeNonNullable(
|
|
1549
|
+
dataSpaceInfo.defaultExecutionContext,
|
|
1550
|
+
),
|
|
1551
|
+
undefined,
|
|
1552
|
+
undefined,
|
|
1553
|
+
),
|
|
1554
|
+
);
|
|
1555
|
+
const updateQueryAndProceed = async (): Promise<void> => {
|
|
1556
|
+
try {
|
|
1557
|
+
await flowResult(
|
|
1558
|
+
this.updateState.updateQuery(undefined, undefined),
|
|
1559
|
+
);
|
|
1560
|
+
proceed();
|
|
1561
|
+
} catch (error) {
|
|
1562
|
+
assertErrorThrown(error);
|
|
1563
|
+
this.applicationStore.logService.error(
|
|
1564
|
+
LogEvent.create(LEGEND_QUERY_APP_EVENT.GENERIC_FAILURE),
|
|
1565
|
+
error,
|
|
1566
|
+
);
|
|
1567
|
+
this.applicationStore.notificationService.notifyError(
|
|
1568
|
+
error,
|
|
1569
|
+
);
|
|
1570
|
+
}
|
|
1571
|
+
};
|
|
1572
|
+
if (
|
|
1573
|
+
!queryInfo.isCurrentUserQuery ||
|
|
1574
|
+
!this.queryBuilderState?.changeDetectionState.hasChanged
|
|
1575
|
+
) {
|
|
1576
|
+
proceed();
|
|
1577
|
+
} else {
|
|
1578
|
+
this.applicationStore.alertService.setActionAlertInfo({
|
|
1579
|
+
message: `To change the data product, you need to save the current query
|
|
1571
1580
|
to proceed`,
|
|
1572
|
-
|
|
1573
|
-
|
|
1574
|
-
|
|
1575
|
-
|
|
1576
|
-
|
|
1577
|
-
|
|
1578
|
-
|
|
1579
|
-
|
|
1580
|
-
|
|
1581
|
+
type: ActionAlertType.CAUTION,
|
|
1582
|
+
actions: [
|
|
1583
|
+
{
|
|
1584
|
+
label: 'Save query and Proceed',
|
|
1585
|
+
type: ActionAlertActionType.PROCEED_WITH_CAUTION,
|
|
1586
|
+
handler: () => {
|
|
1587
|
+
updateQueryAndProceed().catch(
|
|
1588
|
+
this.applicationStore.alertUnhandledError,
|
|
1589
|
+
);
|
|
1590
|
+
},
|
|
1581
1591
|
},
|
|
1582
|
-
|
|
1583
|
-
|
|
1584
|
-
|
|
1585
|
-
|
|
1586
|
-
|
|
1587
|
-
|
|
1588
|
-
|
|
1589
|
-
}
|
|
1592
|
+
{
|
|
1593
|
+
label: 'Abort',
|
|
1594
|
+
type: ActionAlertActionType.PROCEED,
|
|
1595
|
+
default: true,
|
|
1596
|
+
},
|
|
1597
|
+
],
|
|
1598
|
+
});
|
|
1599
|
+
}
|
|
1600
|
+
} else {
|
|
1601
|
+
this.applicationStore.notificationService.notifyWarning(
|
|
1602
|
+
`Can't switch data product: default execution context not specified`,
|
|
1603
|
+
);
|
|
1590
1604
|
}
|
|
1591
|
-
}
|
|
1592
|
-
|
|
1593
|
-
|
|
1594
|
-
|
|
1595
|
-
|
|
1596
|
-
|
|
1597
|
-
|
|
1598
|
-
|
|
1599
|
-
undefined,
|
|
1600
|
-
undefined,
|
|
1601
|
-
this.applicationStore.config.options.queryBuilderConfig,
|
|
1602
|
-
sourceInfo,
|
|
1603
|
-
);
|
|
1605
|
+
},
|
|
1606
|
+
dataSpaceAnalysisResult,
|
|
1607
|
+
undefined,
|
|
1608
|
+
undefined,
|
|
1609
|
+
undefined,
|
|
1610
|
+
this.applicationStore.config.options.queryBuilderConfig,
|
|
1611
|
+
sourceInfo,
|
|
1612
|
+
);
|
|
1604
1613
|
const mappingModelCoverageAnalysisResult =
|
|
1605
1614
|
dataSpaceAnalysisResult?.mappingToMappingCoverageResult?.get(
|
|
1606
1615
|
matchingExecutionContext.mapping.value.path,
|
|
@@ -0,0 +1,129 @@
|
|
|
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
|
+
DataProductQueryBuilderState,
|
|
19
|
+
type QueryBuilderActionConfig,
|
|
20
|
+
type QueryBuilderConfig,
|
|
21
|
+
type QueryBuilderWorkflowState,
|
|
22
|
+
type ExtraOptionsConfig,
|
|
23
|
+
} from '@finos/legend-query-builder';
|
|
24
|
+
import type { LegendQueryApplicationStore } from '../../LegendQueryBaseStore.js';
|
|
25
|
+
import {
|
|
26
|
+
resolveVersion,
|
|
27
|
+
type DepotServerClient,
|
|
28
|
+
} from '@finos/legend-server-depot';
|
|
29
|
+
import type {
|
|
30
|
+
DepotEntityWithOrigin,
|
|
31
|
+
ProjectGAVCoordinates,
|
|
32
|
+
QueryableSourceInfo,
|
|
33
|
+
} from '@finos/legend-storage';
|
|
34
|
+
import {
|
|
35
|
+
LegendSDLC,
|
|
36
|
+
type Class,
|
|
37
|
+
type DataProduct,
|
|
38
|
+
type GraphManagerState,
|
|
39
|
+
type NativeModelAccess,
|
|
40
|
+
type NativeModelExecutionContext,
|
|
41
|
+
type V1_DataProductArtifact,
|
|
42
|
+
} from '@finos/legend-graph';
|
|
43
|
+
import {
|
|
44
|
+
DATA_PRODUCT_EXECUTION_TYPE,
|
|
45
|
+
generateDataProductRoute,
|
|
46
|
+
} from '../../../__lib__/LegendQueryNavigation.js';
|
|
47
|
+
|
|
48
|
+
export class LegendQueryDataProductQueryBuilderState extends DataProductQueryBuilderState {
|
|
49
|
+
declare applicationStore: LegendQueryApplicationStore;
|
|
50
|
+
depotServerClient: DepotServerClient;
|
|
51
|
+
project: ProjectGAVCoordinates;
|
|
52
|
+
declare extraOptionsConfig: ExtraOptionsConfig<DepotEntityWithOrigin>;
|
|
53
|
+
|
|
54
|
+
constructor(
|
|
55
|
+
applicationStore: LegendQueryApplicationStore,
|
|
56
|
+
graphManagerState: GraphManagerState,
|
|
57
|
+
workflow: QueryBuilderWorkflowState,
|
|
58
|
+
actionConfig: QueryBuilderActionConfig,
|
|
59
|
+
dataProduct: DataProduct,
|
|
60
|
+
artifact: V1_DataProductArtifact | undefined,
|
|
61
|
+
nativeNativeModelAccess: NativeModelAccess,
|
|
62
|
+
nativeModelExecContext: NativeModelExecutionContext,
|
|
63
|
+
isLightGraphEnabled: boolean,
|
|
64
|
+
depotServerClient: DepotServerClient,
|
|
65
|
+
project: ProjectGAVCoordinates,
|
|
66
|
+
onDataProductChange: (val: DepotEntityWithOrigin) => Promise<void>,
|
|
67
|
+
onExecutionContextChange?:
|
|
68
|
+
| ((val: NativeModelExecutionContext) => void)
|
|
69
|
+
| undefined,
|
|
70
|
+
onClassChange?: ((val: Class) => void) | undefined,
|
|
71
|
+
config?: QueryBuilderConfig | undefined,
|
|
72
|
+
sourceInfo?: QueryableSourceInfo | undefined,
|
|
73
|
+
) {
|
|
74
|
+
super(
|
|
75
|
+
applicationStore,
|
|
76
|
+
graphManagerState,
|
|
77
|
+
workflow,
|
|
78
|
+
dataProduct,
|
|
79
|
+
artifact,
|
|
80
|
+
actionConfig,
|
|
81
|
+
nativeNativeModelAccess,
|
|
82
|
+
nativeModelExecContext,
|
|
83
|
+
undefined,
|
|
84
|
+
onDataProductChange,
|
|
85
|
+
onExecutionContextChange,
|
|
86
|
+
onClassChange,
|
|
87
|
+
config,
|
|
88
|
+
sourceInfo,
|
|
89
|
+
);
|
|
90
|
+
this.project = project;
|
|
91
|
+
this.depotServerClient = depotServerClient;
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
get sdlc(): LegendSDLC {
|
|
95
|
+
return new LegendSDLC(
|
|
96
|
+
this.project.groupId,
|
|
97
|
+
this.project.artifactId,
|
|
98
|
+
resolveVersion(this.project.versionId),
|
|
99
|
+
);
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
override copyDataProductLinkToClipBoard(): void {
|
|
103
|
+
const dataSpace = this.dataProduct;
|
|
104
|
+
const executionContext = this.selectedExecContext;
|
|
105
|
+
const route =
|
|
106
|
+
this.applicationStore.navigationService.navigator.generateAddress(
|
|
107
|
+
generateDataProductRoute(
|
|
108
|
+
this.project.groupId,
|
|
109
|
+
this.project.artifactId,
|
|
110
|
+
this.project.versionId,
|
|
111
|
+
dataSpace.path,
|
|
112
|
+
DATA_PRODUCT_EXECUTION_TYPE.NATIVE,
|
|
113
|
+
executionContext.key,
|
|
114
|
+
),
|
|
115
|
+
);
|
|
116
|
+
|
|
117
|
+
navigator.clipboard
|
|
118
|
+
.writeText(route)
|
|
119
|
+
.catch(() =>
|
|
120
|
+
this.applicationStore.notificationService.notifyError(
|
|
121
|
+
'Error copying data product query set up link to clipboard',
|
|
122
|
+
),
|
|
123
|
+
);
|
|
124
|
+
|
|
125
|
+
this.applicationStore.notificationService.notifySuccess(
|
|
126
|
+
'Copied data product query set up link to clipboard',
|
|
127
|
+
);
|
|
128
|
+
}
|
|
129
|
+
}
|
|
@@ -21,11 +21,6 @@ import {
|
|
|
21
21
|
import { EXTERNAL_APPLICATION_NAVIGATION__generateStudioSDLCProjectViewUrl } from '../../__lib__/LegendQueryNavigation.js';
|
|
22
22
|
import type { LegendQueryApplicationStore } from '../LegendQueryBaseStore.js';
|
|
23
23
|
import { parseProjectIdentifier } from '@finos/legend-storage';
|
|
24
|
-
import type { QueryEditorStore } from '../QueryEditorStore.js';
|
|
25
|
-
import {
|
|
26
|
-
DataSpacesDepotRepository,
|
|
27
|
-
type DataSpaceInfo,
|
|
28
|
-
} from '@finos/legend-extension-dsl-data-space/application';
|
|
29
24
|
import { EXTERNAL_APPLICATION_NAVIGATION__generateStudioProjectViewUrl } from '@finos/legend-application';
|
|
30
25
|
|
|
31
26
|
export const createViewProjectHandler =
|
|
@@ -80,27 +75,3 @@ export const createViewSDLCProjectHandler =
|
|
|
80
75
|
);
|
|
81
76
|
}
|
|
82
77
|
};
|
|
83
|
-
|
|
84
|
-
export const createDataSpaceDepoRepo = (
|
|
85
|
-
editorStore: QueryEditorStore,
|
|
86
|
-
groupId: string,
|
|
87
|
-
artifactId: string,
|
|
88
|
-
versionId: string,
|
|
89
|
-
prioritizeDataSpaceFunc: ((val: DataSpaceInfo) => boolean) | undefined,
|
|
90
|
-
): DataSpacesDepotRepository =>
|
|
91
|
-
new DataSpacesDepotRepository(
|
|
92
|
-
editorStore.depotServerClient,
|
|
93
|
-
editorStore.applicationStore,
|
|
94
|
-
editorStore.graphManagerState,
|
|
95
|
-
{
|
|
96
|
-
groupId,
|
|
97
|
-
artifactId,
|
|
98
|
-
versionId,
|
|
99
|
-
},
|
|
100
|
-
createViewProjectHandler(editorStore.applicationStore),
|
|
101
|
-
createViewSDLCProjectHandler(
|
|
102
|
-
editorStore.applicationStore,
|
|
103
|
-
editorStore.depotServerClient,
|
|
104
|
-
),
|
|
105
|
-
prioritizeDataSpaceFunc,
|
|
106
|
-
);
|