@finos/legend-application-studio 28.19.117 → 28.20.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (33) hide show
  1. package/lib/components/editor/editor-group/accessor/AccessorQueryBuilder.d.ts +22 -0
  2. package/lib/components/editor/editor-group/accessor/AccessorQueryBuilder.d.ts.map +1 -0
  3. package/lib/components/editor/editor-group/accessor/AccessorQueryBuilder.js +43 -0
  4. package/lib/components/editor/editor-group/accessor/AccessorQueryBuilder.js.map +1 -0
  5. package/lib/components/editor/editor-group/accessor/AccessorQueryBuilderHelper.d.ts.map +1 -1
  6. package/lib/components/editor/editor-group/accessor/AccessorQueryBuilderHelper.js +8 -16
  7. package/lib/components/editor/editor-group/accessor/AccessorQueryBuilderHelper.js.map +1 -1
  8. package/lib/components/editor/editor-group/dataProduct/DataProductEditor.d.ts.map +1 -1
  9. package/lib/components/editor/editor-group/dataProduct/DataProductEditor.js +111 -37
  10. package/lib/components/editor/editor-group/dataProduct/DataProductEditor.js.map +1 -1
  11. package/lib/components/editor/editor-group/uml-editor/ClassQueryBuilder.d.ts +3 -1
  12. package/lib/components/editor/editor-group/uml-editor/ClassQueryBuilder.d.ts.map +1 -1
  13. package/lib/components/editor/editor-group/uml-editor/ClassQueryBuilder.js +4 -5
  14. package/lib/components/editor/editor-group/uml-editor/ClassQueryBuilder.js.map +1 -1
  15. package/lib/index.css +2 -2
  16. package/lib/index.css.map +1 -1
  17. package/lib/package.json +1 -1
  18. package/lib/stores/editor/editor-state/element-editor-state/dataProduct/DataProductEditorState.d.ts +2 -1
  19. package/lib/stores/editor/editor-state/element-editor-state/dataProduct/DataProductEditorState.d.ts.map +1 -1
  20. package/lib/stores/editor/editor-state/element-editor-state/dataProduct/DataProductEditorState.js +12 -4
  21. package/lib/stores/editor/editor-state/element-editor-state/dataProduct/DataProductEditorState.js.map +1 -1
  22. package/lib/stores/graph-modifier/DSL_DataProduct_GraphModifierHelper.d.ts +5 -1
  23. package/lib/stores/graph-modifier/DSL_DataProduct_GraphModifierHelper.d.ts.map +1 -1
  24. package/lib/stores/graph-modifier/DSL_DataProduct_GraphModifierHelper.js +12 -0
  25. package/lib/stores/graph-modifier/DSL_DataProduct_GraphModifierHelper.js.map +1 -1
  26. package/package.json +9 -9
  27. package/src/components/editor/editor-group/accessor/AccessorQueryBuilder.tsx +81 -0
  28. package/src/components/editor/editor-group/accessor/{AccessorQueryBuilderHelper.ts → AccessorQueryBuilderHelper.tsx} +14 -1
  29. package/src/components/editor/editor-group/dataProduct/DataProductEditor.tsx +225 -34
  30. package/src/components/editor/editor-group/uml-editor/ClassQueryBuilder.tsx +16 -6
  31. package/src/stores/editor/editor-state/element-editor-state/dataProduct/DataProductEditorState.ts +14 -5
  32. package/src/stores/graph-modifier/DSL_DataProduct_GraphModifierHelper.ts +27 -0
  33. package/tsconfig.json +2 -1
@@ -13,7 +13,7 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
- import { type AccessPoint, type AccessPointGroup, type DataProduct, type DataProductIcon, type Email, type LakehouseAccessPoint, type RelationElementsData, DataProductLink, SupportInfo, type DataProductRuntimeInfo, type PackageableElementReference, type Mapping, type ModelAccessPointGroup, type DataProductDiagram, type DataProductElementScope, type DataProductType, type ExternalDataProductType, type Expertise, DataProductOperationalMetadata, type DataProduct_DeliveryFrequency, type DataProduct_Region } from '@finos/legend-graph';
16
+ import { type AccessPoint, type AccessPointGroup, type DataProduct, type DataProductIcon, type Email, type LakehouseAccessPoint, type RelationElementsData, DataProductLink, SupportInfo, type DataProductRuntimeInfo, type PackageableElementReference, type Mapping, type ModelAccessPointGroup, type DataProductDiagram, type DataProductElementScope, type DataProductType, type ExternalDataProductType, type Expertise, DataProductOperationalMetadata, type DataProduct_DeliveryFrequency, type DataProduct_Region, type DataProductOwner, type AppDirOwner, type AppDirNode } from '@finos/legend-graph';
17
17
  export declare const dataProduct_deleteAccessPoint: (group: AccessPointGroup, accessPoint: AccessPoint) => void;
18
18
  export declare const dataProduct_addAccessPoint: (group: AccessPointGroup, accessPoint: AccessPoint) => void;
19
19
  export declare const accessPoint_setClassification: (accessPoint: LakehouseAccessPoint, classification: string | undefined) => void;
@@ -61,4 +61,8 @@ export declare const dataProduct_setOperationalMetadataIfAbsent: (product: DataP
61
61
  export declare const operationalMetadata_setUpdateFrequency: (operationalMetadata: DataProductOperationalMetadata, updateFrequency: DataProduct_DeliveryFrequency) => void;
62
62
  export declare const operationalMetadata_addCoverageRegion: (operationalMetadata: DataProductOperationalMetadata, region: DataProduct_Region) => void;
63
63
  export declare const operationalMetadata_deleteCoverageRegion: (operationalMetadata: DataProductOperationalMetadata, region: DataProduct_Region) => void;
64
+ export declare const dataProduct_setOwner: (product: DataProduct, owner: DataProductOwner | undefined) => void;
65
+ export declare const appDirOwner_setProduction: (owner: AppDirOwner, appDirNode: AppDirNode | undefined) => void;
66
+ export declare const appDirOwner_setProdParallel: (owner: AppDirOwner, appDirNode: AppDirNode | undefined) => void;
67
+ export declare const appDirNode_setAppDirId: (node: AppDirNode, appDirId: number) => void;
64
68
  //# sourceMappingURL=DSL_DataProduct_GraphModifierHelper.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"DSL_DataProduct_GraphModifierHelper.d.ts","sourceRoot":"","sources":["../../../src/stores/graph-modifier/DSL_DataProduct_GraphModifierHelper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DSL_DataProduct_GraphModifierHelper.d.ts","sourceRoot":"","sources":["../../../src/stores/graph-modifier/DSL_DataProduct_GraphModifierHelper.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,gBAAgB,EACrB,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,KAAK,KAAK,EACV,KAAK,oBAAoB,EACzB,KAAK,oBAAoB,EACzB,eAAe,EAKf,WAAW,EACX,KAAK,sBAAsB,EAC3B,KAAK,2BAA2B,EAChC,KAAK,OAAO,EACZ,KAAK,qBAAqB,EAC1B,KAAK,kBAAkB,EACvB,KAAK,uBAAuB,EAE5B,KAAK,eAAe,EACpB,KAAK,uBAAuB,EAE5B,KAAK,SAAS,EAEd,8BAA8B,EAC9B,KAAK,6BAA6B,EAClC,KAAK,kBAAkB,EACvB,KAAK,gBAAgB,EACrB,KAAK,WAAW,EAChB,KAAK,UAAU,EAChB,MAAM,qBAAqB,CAAC;AAI7B,eAAO,MAAM,6BAA6B,UAChC,gBAAgB,eAAe,WAAW,SAGnD,CAAC;AAEF,eAAO,MAAM,0BAA0B,UAC7B,gBAAgB,eAAe,WAAW,SAGnD,CAAC;AAEF,eAAO,MAAM,6BAA6B,gBAC1B,oBAAoB,kBAAkB,MAAM,GAAG,SAAS,SAGvE,CAAC;AAEF,eAAO,MAAM,2BAA2B,gBACxB,oBAAoB,gBAAgB,OAAO,GAAG,SAAS,SAGtE,CAAC;AAEF,eAAO,MAAM,0BAA0B,gBACvB,WAAW,eAAe,MAAM,GAAG,SAAS,SAG3D,CAAC;AAEF,eAAO,MAAM,oBAAoB,gBACjB,WAAW,SAAS,MAAM,GAAG,SAAS,SAGrD,CAAC;AAEF,eAAO,MAAM,+BAA+B,UAClC,gBAAgB,eAAe,MAAM,SAG9C,CAAC;AAEF,eAAO,MAAM,wBAAwB,UAC3B,gBAAgB,QAAQ,MAAM,SAGvC,CAAC;AAEF,eAAO,MAAM,yBAAyB,UAC5B,gBAAgB,SAAS,MAAM,GAAG,SAAS,SAGpD,CAAC;AAEF,eAAO,MAAM,gCAAgC,UAElC,qBAAqB,WACnB,2BAA2B,CAAC,OAAO,CAAC,SAIhD,CAAC;AAEF,eAAO,MAAM,gCAAgC,UACnC,qBAAqB,WAAW,uBAAuB,KAAG,IAGnE,CAAC;AAEF,eAAO,MAAM,mCAAmC,UACtC,qBAAqB,WAAW,uBAAuB,KAAG,IAGnE,CAAC;AAEF,eAAO,MAAM,uCAAuC,YACxC,uBAAuB,WAAW,OAAO,KAAG,IAGvD,CAAC;AAEF,eAAO,MAAM,gCAAgC,UACnC,qBAAqB,WAAW,kBAAkB,KAAG,IAG9D,CAAC;AAEF,eAAO,MAAM,mCAAmC,UACtC,qBAAqB,WAAW,kBAAkB,KAAG,IAG9D,CAAC;AAEF,eAAO,MAAM,2BAA2B,YAC5B,kBAAkB,SAAS,MAAM,KAAG,IAG/C,CAAC;AAEF,eAAO,MAAM,iCAAiC,YAClC,kBAAkB,QAAQ,MAAM,GAAG,SAAS,KAAG,IAG1D,CAAC;AAEF,eAAO,MAAM,iBAAiB,gBACd,sBAAsB,MAAM,MAAM,KAAG,IAGpD,CAAC;AAEF,eAAO,MAAM,0BAA0B,gBACvB,sBAAsB,QAAQ,MAAM,GAAG,SAAS,KAAG,IAGlE,CAAC;AAEF,eAAO,MAAM,iCAAiC,UAEnC,gBAAgB,YACb,WAAW,YACX,WAAW,KACpB,IAGJ,CAAC;AAEF,eAAO,MAAM,+BAA+B,YAChC,WAAW,oBAAoB,gBAAgB,SAI1D,CAAC;AAEF,eAAO,MAAM,kCAAkC,YACnC,WAAW,oBAAoB,gBAAgB,SAG1D,CAAC;AAEF,eAAO,MAAM,wBAAwB,gBACrB,WAAW,aAAa,SAAS,SAQhD,CAAC;AAEF,eAAO,MAAM,2BAA2B,gBACxB,WAAW,aAAa,SAAS,SAKhD,CAAC;AAEF,eAAO,MAAM,iCAAiC,YAEjC,WAAW,gBACN,oBAAoB,iBACnB,MAAM,SAYxB,CAAC;AAEF,eAAO,MAAM,wBAAwB,cACvB,SAAS,QAAQ,MAAM,SAGpC,CAAC;AAEF,eAAO,MAAM,eAAe,cAAsB,SAAS,MAAM,MAAM,SAMrE,CAAC;AAEH,eAAO,MAAM,kBAAkB,cAAsB,SAAS,MAAM,MAAM,SAIxE,CAAC;AAEH,eAAO,MAAM,iCAAiC,YAEjC,WAAW,eACP,gBAAgB,eAChB,gBAAgB,KAC5B,IAGJ,CAAC;AAEF,eAAO,MAAM,oBAAoB,YACrB,WAAW,SAAS,MAAM,SAGrC,CAAC;AAEF,eAAO,MAAM,0BAA0B,YAC3B,WAAW,eAAe,MAAM,SAG3C,CAAC;AAEF,eAAO,MAAM,mBAAmB,YACpB,WAAW,QAAQ,eAAe,SAG7C,CAAC;AAEF,eAAO,MAAM,uBAAuB,aACvB,uBAAuB,OAAO,MAAM,SAGhD,CAAC;AAEF,eAAO,MAAM,yBAAyB,aACzB,uBAAuB,SAAS,MAAM,GAAG,SAAS,SAG9D,CAAC;AAEF,eAAO,MAAM,mBAAmB,YACpB,WAAW,QAAQ,eAAe,GAAG,SAAS,SAGzD,CAAC;AAEF,eAAO,MAAM,kCAAkC,YACnC,WAAW,SAKtB,CAAC;AAEF,eAAO,MAAM,wBAAwB,SAC5B,eAAe,SAAS,MAAM,GAAG,SAAS,SAGlD,CAAC;AAEF,eAAO,MAAM,+BAA+B,gBAC5B,WAAW,oBAAoB,MAAM,SASpD,CAAC;AAEF,eAAO,MAAM,sBAAsB,gBACnB,WAAW,WAAW,MAAM,SAS3C,CAAC;AAEF,eAAO,MAAM,qBAAqB,gBAClB,WAAW,UAAU,MAAM,SAS1C,CAAC;AAEF,eAAO,MAAM,yBAAyB,gBACtB,WAAW,cAAc,MAAM,SAS9C,CAAC;AAEF,eAAO,MAAM,oBAAoB,gBACjB,WAAW,SAAS,KAAK,SAGxC,CAAC;AAEF,eAAO,MAAM,uBAAuB,gBACpB,WAAW,SAAS,KAAK,KAAG,IAM3C,CAAC;AAEF,eAAO,MAAM,0CAA0C,YAC3C,WAAW,SAOtB,CAAC;AAEF,eAAO,MAAM,sCAAsC,wBAE1B,8BAA8B,mBAClC,6BAA6B,SAIjD,CAAC;AAEF,eAAO,MAAM,qCAAqC,wBAEzB,8BAA8B,UAC3C,kBAAkB,SAQ7B,CAAC;AAEF,eAAO,MAAM,wCAAwC,wBAE5B,8BAA8B,UAC3C,kBAAkB,SAM7B,CAAC;AAEF,eAAO,MAAM,oBAAoB,YACrB,WAAW,SAAS,gBAAgB,GAAG,SAAS,SAG3D,CAAC;AAEF,eAAO,MAAM,yBAAyB,UAC5B,WAAW,cAAc,UAAU,GAAG,SAAS,SAGxD,CAAC;AAEF,eAAO,MAAM,2BAA2B,UAC9B,WAAW,cAAc,UAAU,GAAG,SAAS,SAGxD,CAAC;AAEF,eAAO,MAAM,sBAAsB,SAC1B,UAAU,YAAY,MAAM,SAGpC,CAAC"}
@@ -213,4 +213,16 @@ export const operationalMetadata_deleteCoverageRegion = action((operationalMetad
213
213
  deleteEntry(operationalMetadata.coverageRegions, region);
214
214
  }
215
215
  });
216
+ export const dataProduct_setOwner = action((product, owner) => {
217
+ product.owner = owner;
218
+ });
219
+ export const appDirOwner_setProduction = action((owner, appDirNode) => {
220
+ owner.production = appDirNode;
221
+ });
222
+ export const appDirOwner_setProdParallel = action((owner, appDirNode) => {
223
+ owner.prodParallel = appDirNode;
224
+ });
225
+ export const appDirNode_setAppDirId = action((node, appDirId) => {
226
+ node.appDirId = appDirId;
227
+ });
216
228
  //# sourceMappingURL=DSL_DataProduct_GraphModifierHelper.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DSL_DataProduct_GraphModifierHelper.js","sourceRoot":"","sources":["../../../src/stores/graph-modifier/DSL_DataProduct_GraphModifierHelper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DSL_DataProduct_GraphModifierHelper.js","sourceRoot":"","sources":["../../../src/stores/graph-modifier/DSL_DataProduct_GraphModifierHelper.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@finos/legend-application-studio",
3
- "version": "28.19.117",
3
+ "version": "28.20.0",
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.105",
50
50
  "@finos/legend-art": "7.1.147",
51
- "@finos/legend-code-editor": "2.0.167",
52
- "@finos/legend-data-cube": "0.3.84",
53
- "@finos/legend-extension-dsl-data-product": "0.0.73",
54
- "@finos/legend-extension-dsl-diagram": "8.1.231",
55
- "@finos/legend-graph": "32.5.3",
56
- "@finos/legend-lego": "2.0.186",
57
- "@finos/legend-query-builder": "4.18.3",
51
+ "@finos/legend-code-editor": "2.0.168",
52
+ "@finos/legend-data-cube": "0.3.85",
53
+ "@finos/legend-extension-dsl-data-product": "0.0.74",
54
+ "@finos/legend-extension-dsl-diagram": "8.1.232",
55
+ "@finos/legend-graph": "32.6.0",
56
+ "@finos/legend-lego": "2.0.187",
57
+ "@finos/legend-query-builder": "4.18.4",
58
58
  "@finos/legend-server-depot": "6.1.11",
59
- "@finos/legend-server-lakehouse": "0.3.48",
59
+ "@finos/legend-server-lakehouse": "0.3.49",
60
60
  "@finos/legend-server-sdlc": "5.4.2",
61
61
  "@finos/legend-server-showcase": "0.2.65",
62
62
  "@finos/legend-shared": "11.0.24",
@@ -0,0 +1,81 @@
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 { observer } from 'mobx-react-lite';
18
+ import { useState } from 'react';
19
+ import type { QueryBuilderState } from '@finos/legend-query-builder';
20
+ import { useEditorStore } from '../../EditorStoreProvider.js';
21
+ import {
22
+ NewFunctionModal,
23
+ promoteQueryToFunction,
24
+ } from '../uml-editor/ClassQueryBuilder.js';
25
+
26
+ export const PromoteAccessorQueryToFunctionAction = observer(
27
+ (props: { queryBuilderState: QueryBuilderState }) => {
28
+ const { queryBuilderState } = props;
29
+ const editorStore = useEditorStore();
30
+ const queryBuilderExtension = editorStore.embeddedQueryBuilderState;
31
+ const [showPromoteModal, setShowPromoteModal] = useState(false);
32
+ const accessor = queryBuilderState.sourceAccessor;
33
+ const allowPromotion = Boolean(
34
+ accessor &&
35
+ queryBuilderState.executionContextState.runtimeValue &&
36
+ !queryBuilderState.allValidationIssues.length,
37
+ );
38
+
39
+ const renderSaveAsModal = (): React.ReactNode => {
40
+ if (!showPromoteModal || !accessor) {
41
+ return null;
42
+ }
43
+ const promoteToFunction = async (
44
+ packagePath: string,
45
+ functionName: string,
46
+ ): Promise<void> => {
47
+ if (allowPromotion) {
48
+ await promoteQueryToFunction(
49
+ packagePath,
50
+ functionName,
51
+ queryBuilderExtension,
52
+ queryBuilderState,
53
+ );
54
+ }
55
+ };
56
+ return (
57
+ <NewFunctionModal
58
+ defaultFunctionName={`${accessor.accessor}_QueryFunction`}
59
+ defaultPackagePath={accessor.parentElement.package?.path}
60
+ close={(): void => setShowPromoteModal(false)}
61
+ showModal={true}
62
+ promoteToFunction={promoteToFunction}
63
+ />
64
+ );
65
+ };
66
+
67
+ return (
68
+ <>
69
+ <button
70
+ className="query-builder__dialog__header__custom-action"
71
+ title="Save query as a function"
72
+ disabled={!allowPromotion}
73
+ onClick={(): void => setShowPromoteModal(true)}
74
+ >
75
+ Save As Function
76
+ </button>
77
+ {renderSaveAsModal()}
78
+ </>
79
+ );
80
+ },
81
+ );
@@ -22,8 +22,10 @@ import {
22
22
  QueryBuilderActionConfig,
23
23
  QueryBuilderAdvancedWorkflowState,
24
24
  getCompatibleRuntimesFromAccessorOwner,
25
+ type QueryBuilderState,
25
26
  } from '@finos/legend-query-builder';
26
27
  import { assertErrorThrown, guaranteeNonNullable } from '@finos/legend-shared';
28
+ import { PromoteAccessorQueryToFunctionAction } from './AccessorQueryBuilder.js';
27
29
 
28
30
  export const queryAccessorSource = async (
29
31
  element: IngestDefinition | Database,
@@ -56,7 +58,18 @@ export const queryAccessorSource = async (
56
58
  return queryBuilderState;
57
59
  },
58
60
  disableCompile: true,
59
- actionConfigs: [],
61
+ actionConfigs: [
62
+ {
63
+ key: 'promote-accessor-query-to-function-btn',
64
+ renderer: (
65
+ queryBuilderState: QueryBuilderState,
66
+ ): React.ReactNode => (
67
+ <PromoteAccessorQueryToFunctionAction
68
+ queryBuilderState={queryBuilderState}
69
+ />
70
+ ),
71
+ },
72
+ ],
60
73
  }),
61
74
  );
62
75
  } catch (error) {
@@ -91,11 +91,22 @@ import {
91
91
  useState,
92
92
  } from 'react';
93
93
  import {
94
+ assertErrorThrown,
94
95
  filterByType,
96
+ guaranteeNonNullable,
95
97
  guaranteeType,
98
+ isNonNullable,
96
99
  UserSearchService,
97
100
  } from '@finos/legend-shared';
98
- import { InlineLambdaEditor, LineageViewer } from '@finos/legend-query-builder';
101
+ import {
102
+ AccessorQueryBuilderState,
103
+ getCompatibleRuntimesFromAccessorOwner,
104
+ InlineLambdaEditor,
105
+ LineageViewer,
106
+ QueryBuilderActionConfig,
107
+ QueryBuilderAdvancedWorkflowState,
108
+ type QueryBuilderState,
109
+ } from '@finos/legend-query-builder';
99
110
  import { action, autorun, flowResult } from 'mobx';
100
111
  import { useAuth } from 'react-oidc-context';
101
112
  import { CODE_EDITOR_LANGUAGE } from '@finos/legend-code-editor';
@@ -126,6 +137,11 @@ import {
126
137
  observer_DataProductLink,
127
138
  DataProduct_Region,
128
139
  DataProduct_DeliveryFrequency,
140
+ AppDirOwner,
141
+ AppDirNode,
142
+ observe_AppDirOwner,
143
+ observe_AppDirNode,
144
+ AppDirLevel,
129
145
  } from '@finos/legend-graph';
130
146
  import {
131
147
  accessPoint_setClassification,
@@ -159,6 +175,10 @@ import {
159
175
  dataProductDiagram_setTitle,
160
176
  dataProductDiagram_setDescription,
161
177
  operationalMetadata_setUpdateFrequency,
178
+ dataProduct_setOwner,
179
+ appDirOwner_setProduction,
180
+ appDirOwner_setProdParallel,
181
+ appDirNode_setAppDirId,
162
182
  } from '../../../../stores/graph-modifier/DSL_DataProduct_GraphModifierHelper.js';
163
183
  import { LEGEND_STUDIO_TEST_ID } from '../../../../__lib__/LegendStudioTesting.js';
164
184
  import { LEGEND_STUDIO_APPLICATION_NAVIGATION_CONTEXT_KEY } from '../../../../__lib__/LegendStudioApplicationNavigationContext.js';
@@ -802,6 +822,90 @@ export const LakehouseDataProductAccessPointEditor = observer(
802
822
  const generateLineage = editorStore.applicationStore.guardUnhandledError(
803
823
  () => flowResult(accessPointState.generateLineage()),
804
824
  );
825
+
826
+ const editLambdaInQueryBuilder =
827
+ editorStore.applicationStore.guardUnhandledError(async () => {
828
+ const embeddedQueryBuilderState = editorStore.embeddedQueryBuilderState;
829
+ const applicationStore = editorStore.applicationStore;
830
+ const ingestDefinition =
831
+ editorStore.graphManagerState.graph.ownIngests.find(isNonNullable);
832
+ if (!ingestDefinition) {
833
+ applicationStore.notificationService.notifyError(
834
+ 'No ingest definition found in this project',
835
+ );
836
+ return;
837
+ }
838
+ await flowResult(
839
+ embeddedQueryBuilderState.setEmbeddedQueryBuilderConfiguration({
840
+ setupQueryBuilderState: async (): Promise<QueryBuilderState> => {
841
+ const queryBuilderState = new AccessorQueryBuilderState(
842
+ applicationStore,
843
+ undefined,
844
+ editorStore.graphManagerState,
845
+ QueryBuilderAdvancedWorkflowState.INSTANCE,
846
+ QueryBuilderActionConfig.INSTANCE,
847
+ applicationStore.config.options.queryBuilderConfig,
848
+ editorStore.editorMode.getSourceInfo(),
849
+ );
850
+ queryBuilderState.changeAccessorOwner(ingestDefinition);
851
+ const compatibleRuntimes = getCompatibleRuntimesFromAccessorOwner(
852
+ ingestDefinition,
853
+ editorStore.graphManagerState,
854
+ );
855
+ if (compatibleRuntimes.length > 0) {
856
+ queryBuilderState.changeSelectedRuntime(
857
+ guaranteeNonNullable(compatibleRuntimes[0]),
858
+ );
859
+ }
860
+ queryBuilderState.initializeWithQuery(accessPoint.func);
861
+ return queryBuilderState;
862
+ },
863
+ actionConfigs: [
864
+ {
865
+ key: 'save-query-btn',
866
+ renderer: (
867
+ queryBuilderState: QueryBuilderState,
868
+ ): React.ReactNode => {
869
+ const save = applicationStore.guardUnhandledError(
870
+ async () => {
871
+ try {
872
+ const rawLambda =
873
+ queryBuilderState.buildQueryForPersistence();
874
+ accessPoint.func = rawLambda;
875
+ embeddedQueryBuilderState.setEmbeddedQueryBuilderConfiguration(
876
+ undefined,
877
+ );
878
+ await flowResult(
879
+ lambdaEditorState.convertLambdaObjectToGrammarString({
880
+ pretty: true,
881
+ }),
882
+ );
883
+ } catch (error) {
884
+ assertErrorThrown(error);
885
+ applicationStore.notificationService.notifyError(
886
+ `Can't save access point lambda: ${error.message}`,
887
+ );
888
+ }
889
+ },
890
+ );
891
+ return (
892
+ <button
893
+ className="query-builder__dialog__header__custom-action"
894
+ tabIndex={-1}
895
+ disabled={props.isReadOnly}
896
+ onClick={save}
897
+ >
898
+ Save Lambda
899
+ </button>
900
+ );
901
+ },
902
+ },
903
+ ],
904
+ disableCompile: true,
905
+ }),
906
+ );
907
+ });
908
+
805
909
  return (
806
910
  <PanelDnDEntry
807
911
  ref={ref}
@@ -866,17 +970,7 @@ export const LakehouseDataProductAccessPointEditor = observer(
866
970
  disabled={props.isReadOnly}
867
971
  title="Edit sample values"
868
972
  style={{
869
- border: '1px solid var(--color-blue-200)',
870
- borderRadius: '4px',
871
- padding: '0.5rem 0.75rem',
872
- background: 'var(--color-blue-200)',
873
973
  cursor: props.isReadOnly ? 'not-allowed' : 'pointer',
874
- display: 'flex',
875
- alignItems: 'center',
876
- gap: '0.5rem',
877
- color: 'white',
878
- fontSize: '1.2rem',
879
- whiteSpace: 'nowrap',
880
974
  }}
881
975
  >
882
976
  <PencilEditIcon />
@@ -894,16 +988,7 @@ export const LakehouseDataProductAccessPointEditor = observer(
894
988
  border: accessPointState.hasRelationElementMismatch
895
989
  ? '2px solid var(--color-red-300)'
896
990
  : '1px solid var(--color-blue-200)',
897
- borderRadius: '4px',
898
- padding: '0.5rem 0.75rem',
899
- background: 'var(--color-blue-200)',
900
991
  cursor: props.isReadOnly ? 'not-allowed' : 'pointer',
901
- display: 'flex',
902
- alignItems: 'center',
903
- gap: '0.5rem',
904
- color: 'white',
905
- fontSize: '1.2rem',
906
- whiteSpace: 'nowrap',
907
992
  }}
908
993
  >
909
994
  <PencilEditIcon />
@@ -918,17 +1003,7 @@ export const LakehouseDataProductAccessPointEditor = observer(
918
1003
  disabled={props.isReadOnly}
919
1004
  title="Add sample values"
920
1005
  style={{
921
- border: '1px solid var(--color-blue-200)',
922
- borderRadius: '4px',
923
- padding: '0.5rem 0.75rem',
924
- background: 'var(--color-blue-200)',
925
1006
  cursor: props.isReadOnly ? 'not-allowed' : 'pointer',
926
- display: 'flex',
927
- alignItems: 'center',
928
- gap: '0.5rem',
929
- color: 'white',
930
- fontSize: '1.2rem',
931
- whiteSpace: 'nowrap',
932
1007
  }}
933
1008
  >
934
1009
  <PlusIcon />
@@ -1138,6 +1213,15 @@ export const LakehouseDataProductAccessPointEditor = observer(
1138
1213
  <div className="access-point-editor__generic-entry">
1139
1214
  <div className="access-point-editor__entry__container">
1140
1215
  <div className="access-point-editor__entry">
1216
+ <button
1217
+ className="access-point-editor__query-builder-btn"
1218
+ onClick={editLambdaInQueryBuilder}
1219
+ disabled={props.isReadOnly}
1220
+ title="Edit lambda with query builder"
1221
+ >
1222
+ <PencilEditIcon />
1223
+ <span>Query Builder</span>
1224
+ </button>
1141
1225
  <InlineLambdaEditor
1142
1226
  className={'access-point-editor__lambda-editor'}
1143
1227
  disabled={
@@ -2370,6 +2454,112 @@ const DataProductIconEditor = observer(
2370
2454
  },
2371
2455
  );
2372
2456
 
2457
+ const DataProductOwnershipEditor = observer(
2458
+ (props: { product: DataProduct; isReadOnly: boolean }) => {
2459
+ const { product, isReadOnly } = props;
2460
+ const owner =
2461
+ product.owner instanceof AppDirOwner ? product.owner : undefined;
2462
+
2463
+ const ensureOwner = (): AppDirOwner => {
2464
+ if (owner) {
2465
+ return owner;
2466
+ }
2467
+ const newOwner = observe_AppDirOwner(new AppDirOwner());
2468
+ dataProduct_setOwner(product, newOwner);
2469
+ return newOwner;
2470
+ };
2471
+
2472
+ const handleProductionChange: ChangeEventHandler<HTMLInputElement> = (
2473
+ event,
2474
+ ) => {
2475
+ const currentOwner = ensureOwner();
2476
+ const val = event.target.value;
2477
+ if (val === '') {
2478
+ appDirOwner_setProduction(currentOwner, undefined);
2479
+ if (!currentOwner.prodParallel) {
2480
+ dataProduct_setOwner(product, undefined);
2481
+ }
2482
+ return;
2483
+ }
2484
+ const num = Number(val);
2485
+ if (Number.isNaN(num)) {
2486
+ return;
2487
+ }
2488
+ if (currentOwner.production) {
2489
+ appDirNode_setAppDirId(currentOwner.production, num);
2490
+ return;
2491
+ }
2492
+ const node = observe_AppDirNode(new AppDirNode());
2493
+ node.appDirId = num;
2494
+ node.level = AppDirLevel.DEPLOYMENT;
2495
+ appDirOwner_setProduction(currentOwner, node);
2496
+ };
2497
+
2498
+ const handleProdParallelChange: ChangeEventHandler<HTMLInputElement> = (
2499
+ event,
2500
+ ) => {
2501
+ const currentOwner = ensureOwner();
2502
+ const val = event.target.value;
2503
+ if (val === '') {
2504
+ appDirOwner_setProdParallel(currentOwner, undefined);
2505
+ if (!currentOwner.production) {
2506
+ dataProduct_setOwner(product, undefined);
2507
+ }
2508
+ return;
2509
+ }
2510
+ const num = Number(val);
2511
+ if (Number.isNaN(num)) {
2512
+ return;
2513
+ }
2514
+ if (currentOwner.prodParallel) {
2515
+ appDirNode_setAppDirId(currentOwner.prodParallel, num);
2516
+ return;
2517
+ }
2518
+ const node = observe_AppDirNode(new AppDirNode());
2519
+ node.appDirId = num;
2520
+ node.level = AppDirLevel.DEPLOYMENT;
2521
+ appDirOwner_setProdParallel(currentOwner, node);
2522
+ };
2523
+
2524
+ return (
2525
+ <>
2526
+ <div className="panel__content__form__section">
2527
+ <div className="panel__content__form__section__header__label">
2528
+ Ownership
2529
+ </div>
2530
+ <div className="panel__content__form__section__header__prompt">
2531
+ Set the AppDir ownership for this Data Product.
2532
+ </div>
2533
+ <div className="panel__content__form__section__header__prompt">
2534
+ Production AppDir ID
2535
+ </div>
2536
+ <input
2537
+ className="input input-group__input panel__content__form__section__input input--dark input--small"
2538
+ type="number"
2539
+ disabled={isReadOnly}
2540
+ value={owner?.production?.appDirId ?? ''}
2541
+ onChange={handleProductionChange}
2542
+ placeholder="Enter production AppDir ID"
2543
+ />
2544
+ </div>
2545
+ <div className="panel__content__form__section">
2546
+ <div className="panel__content__form__section__header__prompt">
2547
+ Prod Parallel AppDir ID
2548
+ </div>
2549
+ <input
2550
+ className="input input-group__input panel__content__form__section__input input--dark input--small"
2551
+ type="number"
2552
+ disabled={isReadOnly}
2553
+ value={owner?.prodParallel?.appDirId ?? ''}
2554
+ onChange={handleProdParallelChange}
2555
+ placeholder="Enter prod parallel AppDir ID"
2556
+ />
2557
+ </div>
2558
+ </>
2559
+ );
2560
+ },
2561
+ );
2562
+
2373
2563
  const HomeTab = observer(
2374
2564
  (props: {
2375
2565
  dataProductEditorState: DataProductEditorState;
@@ -2543,6 +2733,10 @@ const HomeTab = observer(
2543
2733
  )}
2544
2734
  </div>
2545
2735
  <DataProductIconEditor product={product} isReadOnly={isReadOnly} />
2736
+ <DataProductOwnershipEditor
2737
+ product={product}
2738
+ isReadOnly={isReadOnly}
2739
+ />
2546
2740
  </div>
2547
2741
  </div>
2548
2742
  );
@@ -3341,10 +3535,7 @@ export const DataProductEditor = observer(() => {
3341
3535
  </PanelHeaderActions>
3342
3536
  </div>
3343
3537
 
3344
- <div
3345
- className="panel"
3346
- style={{ padding: '1rem', flexDirection: 'row' }}
3347
- >
3538
+ <div className="panel data-product-editor__content-panel">
3348
3539
  <DataProductSidebar dataProductEditorState={dataProductEditorState} />
3349
3540
  <ResizablePanelGroup orientation="vertical">
3350
3541
  <ResizablePanel>{renderActivivtyBarTab()}</ResizablePanel>
@@ -183,7 +183,9 @@ enum PROMOTE_QUERY_TYPE {
183
183
 
184
184
  export const NewFunctionModal = observer(
185
185
  (props: {
186
- _class: Class | undefined;
186
+ _class?: Class | undefined;
187
+ defaultFunctionName?: string | undefined;
188
+ defaultPackagePath?: string | undefined;
187
189
  close: () => void;
188
190
  showModal: boolean;
189
191
  promoteToFunction: (
@@ -192,18 +194,26 @@ export const NewFunctionModal = observer(
192
194
  ) => Promise<void>;
193
195
  isReadOnly?: boolean;
194
196
  }) => {
195
- const { isReadOnly, close, _class, showModal, promoteToFunction } = props;
197
+ const {
198
+ isReadOnly,
199
+ close,
200
+ _class,
201
+ defaultFunctionName,
202
+ defaultPackagePath,
203
+ showModal,
204
+ promoteToFunction,
205
+ } = props;
196
206
  const editorStore = useEditorStore();
197
207
  const applicationStore = editorStore.applicationStore;
198
208
  const nameRef = useRef<HTMLInputElement>(null);
199
- const defaultFunctionname = _class
200
- ? `${_class.name}_QueryFunction`
201
- : `QueryFunction`;
209
+ const defaultFunctionname =
210
+ defaultFunctionName ??
211
+ (_class ? `${_class.name}_QueryFunction` : `QueryFunction`);
202
212
  const [functionPath, setFunctionPath] =
203
213
  useState<string>(defaultFunctionname);
204
214
  const [packagePath, funcName] = resolvePackagePathAndElementName(
205
215
  functionPath,
206
- _class?.package?.path ?? 'model::functions',
216
+ defaultPackagePath ?? _class?.package?.path ?? 'model::functions',
207
217
  );
208
218
  const [isValid, setIsValid] = useState(true);
209
219