@finos/legend-application-studio 28.18.115 → 28.18.117

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 (22) hide show
  1. package/lib/components/editor/editor-group/connection-editor/DatabaseSchemaExplorer.d.ts.map +1 -1
  2. package/lib/components/editor/editor-group/connection-editor/DatabaseSchemaExplorer.js +9 -4
  3. package/lib/components/editor/editor-group/connection-editor/DatabaseSchemaExplorer.js.map +1 -1
  4. package/lib/index.css +1 -1
  5. package/lib/package.json +1 -1
  6. package/lib/stores/editor/editor-state/element-editor-state/connection/DatabaseBuilderState.d.ts +10 -3
  7. package/lib/stores/editor/editor-state/element-editor-state/connection/DatabaseBuilderState.d.ts.map +1 -1
  8. package/lib/stores/editor/editor-state/element-editor-state/connection/DatabaseBuilderState.js +124 -18
  9. package/lib/stores/editor/editor-state/element-editor-state/connection/DatabaseBuilderState.js.map +1 -1
  10. package/lib/stores/editor/editor-state/element-editor-state/dataProduct/DataProductEditorState.d.ts +2 -1
  11. package/lib/stores/editor/editor-state/element-editor-state/dataProduct/DataProductEditorState.d.ts.map +1 -1
  12. package/lib/stores/editor/editor-state/element-editor-state/dataProduct/DataProductEditorState.js +21 -7
  13. package/lib/stores/editor/editor-state/element-editor-state/dataProduct/DataProductEditorState.js.map +1 -1
  14. package/lib/stores/graph-modifier/DSL_DataProduct_GraphModifierHelper.d.ts +5 -3
  15. package/lib/stores/graph-modifier/DSL_DataProduct_GraphModifierHelper.d.ts.map +1 -1
  16. package/lib/stores/graph-modifier/DSL_DataProduct_GraphModifierHelper.js +9 -3
  17. package/lib/stores/graph-modifier/DSL_DataProduct_GraphModifierHelper.js.map +1 -1
  18. package/package.json +8 -8
  19. package/src/components/editor/editor-group/connection-editor/DatabaseSchemaExplorer.tsx +14 -2
  20. package/src/stores/editor/editor-state/element-editor-state/connection/DatabaseBuilderState.ts +204 -20
  21. package/src/stores/editor/editor-state/element-editor-state/dataProduct/DataProductEditorState.ts +26 -7
  22. package/src/stores/graph-modifier/DSL_DataProduct_GraphModifierHelper.ts +20 -3
@@ -1 +1 @@
1
- {"version":3,"file":"DatabaseSchemaExplorer.d.ts","sourceRoot":"","sources":["../../../../../src/components/editor/editor-group/connection-editor/DatabaseSchemaExplorer.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,EACL,KAAK,sBAAsB,EAY5B,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,KAAK,wBAAwB,EAC7B,KAAK,kCAAkC,EAIvC,KAAK,2BAA2B,EACjC,MAAM,gGAAgG,CAAC;AA4BxG,MAAM,MAAM,4CAA4C,GACtD,sBAAsB,CACpB,kCAAkC,EAClC;IACE,iBAAiB,EAAE,CAAC,IAAI,EAAE,kCAAkC,KAAK,IAAI,CAAC;IACtE,mBAAmB,EAAE,CACnB,IAAI,EAAE,kCAAkC,KACrC,OAAO,CAAC;IACb,WAAW,EAAE,CAAC,IAAI,EAAE,kCAAkC,KAAK,IAAI,CAAC;IAChE,qBAAqB,EAAE,CACrB,IAAI,EAAE,kCAAkC,KACrC,OAAO,CAAC;CACd,CACF,CAAC;AAEJ,eAAO,MAAM,uCAAuC,2OA4GnD,CAAC;AAEF,eAAO,MAAM,sBAAsB,WACzB;IACN,mBAAmB,EAAE,2BAA2B,CAAC;IACjD,QAAQ,EAAE,wBAAwB,CAAC;IACnC,UAAU,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACjC,0BAA0B,CAAC,EACvB,KAAK,CAAC,EAAE,CAAC,4CAA4C,CAAC,GACtD,SAAS,CAAC;CACf;;CAkEF,CAAC"}
1
+ {"version":3,"file":"DatabaseSchemaExplorer.d.ts","sourceRoot":"","sources":["../../../../../src/components/editor/editor-group/connection-editor/DatabaseSchemaExplorer.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,EACL,KAAK,sBAAsB,EAa5B,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,KAAK,wBAAwB,EAC7B,KAAK,kCAAkC,EAKvC,KAAK,2BAA2B,EACjC,MAAM,gGAAgG,CAAC;AAoCxG,MAAM,MAAM,4CAA4C,GACtD,sBAAsB,CACpB,kCAAkC,EAClC;IACE,iBAAiB,EAAE,CAAC,IAAI,EAAE,kCAAkC,KAAK,IAAI,CAAC;IACtE,mBAAmB,EAAE,CACnB,IAAI,EAAE,kCAAkC,KACrC,OAAO,CAAC;IACb,WAAW,EAAE,CAAC,IAAI,EAAE,kCAAkC,KAAK,IAAI,CAAC;IAChE,qBAAqB,EAAE,CACrB,IAAI,EAAE,kCAAkC,KACrC,OAAO,CAAC;CACd,CACF,CAAC;AAEJ,eAAO,MAAM,uCAAuC,2OA6GnD,CAAC;AAEF,eAAO,MAAM,sBAAsB,WACzB;IACN,mBAAmB,EAAE,2BAA2B,CAAC;IACjD,QAAQ,EAAE,wBAAwB,CAAC;IACnC,UAAU,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACjC,0BAA0B,CAAC,EACvB,KAAK,CAAC,EAAE,CAAC,4CAA4C,CAAC,GACtD,SAAS,CAAC;CACf;;CAmEF,CAAC"}
@@ -15,12 +15,12 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
15
15
  * limitations under the License.
16
16
  */
17
17
  import { observer } from 'mobx-react-lite';
18
- import { TreeView, PURE_DatabaseSchemaIcon, PURE_DatabaseTableIcon, CircleIcon, ChevronDownIcon, ChevronRightIcon, CheckCircleIcon, EmptyCircleIcon, KeyIcon, EyeIcon, compareLabelFn, } from '@finos/legend-art';
19
- import { DatabaseSchemaExplorerTreeColumnNodeData, DatabaseSchemaExplorerTreeSchemaNodeData, DatabaseSchemaExplorerTreeTableNodeData, } from '../../../../stores/editor/editor-state/element-editor-state/connection/DatabaseBuilderState.js';
18
+ import { TreeView, PURE_DatabaseSchemaIcon, PURE_DatabaseTableIcon, PURE_DatabaseTabularFunctionIcon, CircleIcon, ChevronDownIcon, ChevronRightIcon, CheckCircleIcon, EmptyCircleIcon, KeyIcon, EyeIcon, compareLabelFn, } from '@finos/legend-art';
19
+ import { DatabaseSchemaExplorerTreeColumnNodeData, DatabaseSchemaExplorerTreeSchemaNodeData, DatabaseSchemaExplorerTreeTableNodeData, DatabaseSchemaExplorerTreeTabularFunctionNodeData, } from '../../../../stores/editor/editor-state/element-editor-state/connection/DatabaseBuilderState.js';
20
20
  import { useApplicationStore } from '@finos/legend-application';
21
21
  import { renderColumnTypeIcon } from './DatabaseEditorHelper.js';
22
22
  import { flowResult } from 'mobx';
23
- import { stringifyDataType } from '@finos/legend-graph';
23
+ import { stringifyDataType, Table } from '@finos/legend-graph';
24
24
  import { forwardRef } from 'react';
25
25
  const getDatabaseSchemaNodeIcon = (node) => {
26
26
  if (node instanceof DatabaseSchemaExplorerTreeSchemaNodeData) {
@@ -29,6 +29,9 @@ const getDatabaseSchemaNodeIcon = (node) => {
29
29
  else if (node instanceof DatabaseSchemaExplorerTreeTableNodeData) {
30
30
  return (_jsx("div", { className: "database-schema-explorer__icon--table", children: _jsx(PURE_DatabaseTableIcon, {}) }));
31
31
  }
32
+ else if (node instanceof DatabaseSchemaExplorerTreeTabularFunctionNodeData) {
33
+ return (_jsx("div", { className: "database-schema-explorer__icon--tabularFunction", children: _jsx(PURE_DatabaseTabularFunctionIcon, {}) }));
34
+ }
32
35
  else if (node instanceof DatabaseSchemaExplorerTreeColumnNodeData) {
33
36
  return renderColumnTypeIcon(node.column.type);
34
37
  }
@@ -48,6 +51,7 @@ export const DatabaseSchemaExplorerTreeNodeContainer = observer(forwardRef(funct
48
51
  }
49
52
  };
50
53
  const isPrimaryKeyColumn = node instanceof DatabaseSchemaExplorerTreeColumnNodeData &&
54
+ node.owner instanceof Table &&
51
55
  node.owner.primaryKey.includes(node.column);
52
56
  const renderCheckedIcon = (_node) => {
53
57
  if (_node instanceof DatabaseSchemaExplorerTreeColumnNodeData) {
@@ -94,7 +98,8 @@ export const DatabaseSchemaExplorer = observer((props) => {
94
98
  flowResult(schemaExplorerState.previewData(node)).catch(applicationStore.alertUnhandledError);
95
99
  };
96
100
  const isPreviewDataDisabled = (node) => !(node instanceof DatabaseSchemaExplorerTreeTableNodeData ||
97
- node instanceof DatabaseSchemaExplorerTreeColumnNodeData);
101
+ node instanceof DatabaseSchemaExplorerTreeColumnNodeData ||
102
+ node instanceof DatabaseSchemaExplorerTreeTabularFunctionNodeData);
98
103
  return (_jsx(TreeView, { className: "database-schema-explorer", components: {
99
104
  TreeNodeContainer: treeNodeContainerComponent ??
100
105
  DatabaseSchemaExplorerTreeNodeContainer,
@@ -1 +1 @@
1
- {"version":3,"file":"DatabaseSchemaExplorer.js","sourceRoot":"","sources":["../../../../../src/components/editor/editor-group/connection-editor/DatabaseSchemaExplorer.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DatabaseSchemaExplorer.js","sourceRoot":"","sources":["../../../../../src/components/editor/editor-group/connection-editor/DatabaseSchemaExplorer.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAEL,QAAQ,EACR,uBAAuB,EACvB,sBAAsB,EACtB,gCAAgC,EAChC,UAAU,EACV,eAAe,EACf,gBAAgB,EAChB,eAAe,EACf,eAAe,EACf,OAAO,EACP,OAAO,EACP,cAAc,GACf,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAGL,wCAAwC,EACxC,wCAAwC,EACxC,uCAAuC,EACvC,iDAAiD,GAElD,MAAM,gGAAgG,CAAC;AACxG,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAClC,OAAO,EAAE,iBAAiB,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAC/D,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAEnC,MAAM,yBAAyB,GAAG,CAChC,IAAwC,EACvB,EAAE;IACnB,IAAI,IAAI,YAAY,wCAAwC,EAAE,CAAC;QAC7D,OAAO,CACL,cAAK,SAAS,EAAC,wCAAwC,YACrD,KAAC,uBAAuB,KAAG,GACvB,CACP,CAAC;IACJ,CAAC;SAAM,IAAI,IAAI,YAAY,uCAAuC,EAAE,CAAC;QACnE,OAAO,CACL,cAAK,SAAS,EAAC,uCAAuC,YACpD,KAAC,sBAAsB,KAAG,GACtB,CACP,CAAC;IACJ,CAAC;SAAM,IACL,IAAI,YAAY,iDAAiD,EACjE,CAAC;QACD,OAAO,CACL,cAAK,SAAS,EAAC,iDAAiD,YAC9D,KAAC,gCAAgC,KAAG,GAChC,CACP,CAAC;IACJ,CAAC;SAAM,IAAI,IAAI,YAAY,wCAAwC,EAAE,CAAC;QACpE,OAAO,oBAAoB,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAChD,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAiBF,MAAM,CAAC,MAAM,uCAAuC,GAAG,QAAQ,CAC7D,UAAU,CACR,SAAS,uCAAuC,CAAC,KAAK,EAAE,GAAG;IACzD,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,gBAAgB,EAAE,YAAY,EAAE,UAAU,EAAE,GAAG,KAAK,CAAC;IAC1E,MAAM,EACJ,iBAAiB,EACjB,mBAAmB,EACnB,qBAAqB,EACrB,WAAW,GACZ,GAAG,UAAU,CAAC;IACf,MAAM,YAAY,GAChB,OAAO,CAAC,CAAC,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;QACrD,CAAC,CAAC,IAAI,YAAY,wCAAwC,CAAC,CAAC;IAC9D,MAAM,cAAc,GAAG,YAAY,CAAC,CAAC,CAAC,CACpC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CACZ,KAAC,eAAe,KAAG,CACpB,CAAC,CAAC,CAAC,CACF,KAAC,gBAAgB,KAAG,CACrB,CACF,CAAC,CAAC,CAAC,CACF,eAAO,CACR,CAAC;IACF,MAAM,YAAY,GAAG,yBAAyB,CAAC,IAAI,CAAC,CAAC;IACrD,MAAM,gBAAgB,GAAG,GAAS,EAAE;QAClC,YAAY,EAAE,CAAC,IAAI,CAAC,CAAC;QACrB,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,iBAAiB,CAAC,IAAI,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC,CAAC;IACF,MAAM,kBAAkB,GACtB,IAAI,YAAY,wCAAwC;QACxD,IAAI,CAAC,KAAK,YAAY,KAAK;QAC3B,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAE9C,MAAM,iBAAiB,GAAG,CACxB,KAAyC,EACxB,EAAE;QACnB,IAAI,KAAK,YAAY,wCAAwC,EAAE,CAAC;YAC9D,OAAO,IAAI,CAAC;QACd,CAAC;aAAM,IAAI,mBAAmB,CAAC,KAAK,CAAC,EAAE,CAAC;YACtC,OAAO,KAAC,UAAU,KAAG,CAAC;QACxB,CAAC;aAAM,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;YAC3B,OAAO,KAAC,eAAe,KAAG,CAAC;QAC7B,CAAC;QACD,OAAO,KAAC,eAAe,KAAG,CAAC;IAC7B,CAAC,CAAC;IAEF,OAAO,CACL,eACE,SAAS,EAAC,4BAA4B,EACtC,GAAG,EAAE,GAAG,EACR,KAAK,EAAE;YACL,WAAW,EAAE,GAAG,KAAK,GAAG,CAAC,gBAAgB,IAAI,CAAC,CAAC,KAAK;YACpD,OAAO,EAAE,MAAM;SAChB,EACD,OAAO,EAAE,gBAAgB,aAEzB,eAAK,SAAS,EAAC,mEAAmE,aAChF,cAAK,SAAS,EAAC,uCAAuC,YACnD,cAAc,GACX,EACN,cACE,SAAS,EAAC,wCAAwC,EAClD,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;4BACjB,KAAK,CAAC,eAAe,EAAE,CAAC;4BACxB,iBAAiB,CAAC,IAAI,CAAC,CAAC;wBAC1B,CAAC,YAEA,iBAAiB,CAAC,IAAI,CAAC,GACpB,EACN,cAAK,SAAS,EAAC,qCAAqC,YACjD,YAAY,GACT,IACF,EACN,eAAK,SAAS,EAAC,8DAA8D,aAC1E,IAAI,CAAC,KAAK,EACV,IAAI,YAAY,wCAAwC,IAAI,CAC3D,cAAK,SAAS,EAAC,sCAAsC,YACnD,cAAK,SAAS,EAAC,6CAA6C,YACzD,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAChC,GACF,CACP,EACA,kBAAkB,IAAI,CACrB,cACE,SAAS,EAAC,oCAAoC,EAC9C,KAAK,EAAC,aAAa,YAEnB,KAAC,OAAO,KAAG,GACP,CACP,EACA,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAC/B,iBACE,SAAS,EAAC,2CAA2C,EACrD,QAAQ,EAAE,CAAC,CAAC,EACZ,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;4BACjB,KAAK,CAAC,eAAe,EAAE,CAAC;4BACxB,WAAW,CAAC,IAAI,CAAC,CAAC;wBACpB,CAAC,EACD,KAAK,EAAC,oBAAoB,YAE1B,KAAC,OAAO,KAAG,GACJ,CACV,IACG,IACF,CACP,CAAC;AACJ,CAAC,CACF,CACF,CAAC;AAEF,MAAM,CAAC,MAAM,sBAAsB,GAAG,QAAQ,CAC5C,CAAC,KAOA,EAAE,EAAE;IACH,MAAM,EAAE,QAAQ,EAAE,mBAAmB,EAAE,0BAA0B,EAAE,GAAG,KAAK,CAAC;IAC5E,MAAM,gBAAgB,GAAG,mBAAmB,EAAE,CAAC;IAC/C,MAAM,YAAY,GAAG,CAAC,IAAwC,EAAQ,EAAE;QACtE,UAAU,CAAC,mBAAmB,CAAC,YAAY,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,CAChE,gBAAgB,CAAC,mBAAmB,CACrC,CAAC;IACJ,CAAC,CAAC;IACF,MAAM,aAAa,GAAG,CACpB,IAAwC,EACF,EAAE,CACxC,mBAAmB,CAAC,aAAa,CAAC,IAAI,EAAE,QAAQ,CAAC,EAAE,IAAI,CAAC,cAAc,CAAC;QACvE,EAAE,CAAC;IACL,MAAM,mBAAmB,GAAG,CAC1B,IAAwC,EAC/B,EAAE;QACX,IACE,IAAI,YAAY,wCAAwC;YACxD,CAAC,IAAI,CAAC,SAAS,EACf,CAAC;YACD,OAAO,OAAO,CACZ,mBAAmB;iBAChB,aAAa,CAAC,IAAI,EAAE,QAAQ,CAAC;gBAC9B,EAAE,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,SAAS,KAAK,IAAI,CAAC,CACtD,CAAC;QACJ,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC,CAAC;IACF,MAAM,iBAAiB,GAAG,CACxB,IAAwC,EAClC,EAAE,CAAC,mBAAmB,CAAC,iBAAiB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IAEjE,MAAM,WAAW,GAAG,CAAC,IAAwC,EAAQ,EAAE;QACrE,UAAU,CAAC,mBAAmB,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CACrD,gBAAgB,CAAC,mBAAmB,CACrC,CAAC;IACJ,CAAC,CAAC;IAEF,MAAM,qBAAqB,GAAG,CAC5B,IAAwC,EAC/B,EAAE,CACX,CAAC,CACC,IAAI,YAAY,uCAAuC;QACvD,IAAI,YAAY,wCAAwC;QACxD,IAAI,YAAY,iDAAiD,CAClE,CAAC;IAEJ,OAAO,CACL,KAAC,QAAQ,IACP,SAAS,EAAC,0BAA0B,EACpC,UAAU,EAAE;YACV,iBAAiB,EACf,0BAA0B;gBAC1B,uCAAuC;SAC1C,EACD,UAAU,EAAE;YACV,iBAAiB;YACjB,mBAAmB;YACnB,WAAW;YACX,qBAAqB;SACtB,EACD,QAAQ,EAAE,QAAQ,EAClB,YAAY,EAAE,YAAY,EAC1B,aAAa,EAAE,aAAa,GAC5B,CACH,CAAC;AACJ,CAAC,CACF,CAAC"}
package/lib/index.css CHANGED
@@ -1,4 +1,4 @@
1
- /** @license @finos/legend-application-studio v28.18.115
1
+ /** @license @finos/legend-application-studio v28.18.117
2
2
  * Copyright (c) 2020-present, Goldman Sachs
3
3
  *
4
4
  * Licensed under the Apache License, Version 2.0 (the "License");
package/lib/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@finos/legend-application-studio",
3
- "version": "28.18.115",
3
+ "version": "28.18.117",
4
4
  "description": "Legend Studio application core",
5
5
  "keywords": [
6
6
  "legend",
@@ -17,7 +17,7 @@ import type { Entity } from '@finos/legend-storage';
17
17
  import type { TreeData, TreeNodeData } from '@finos/legend-art';
18
18
  import { type GeneratorFn, ActionState } from '@finos/legend-shared';
19
19
  import type { EditorStore } from '../../../EditorStore.js';
20
- import { TDSExecutionResult, type Schema, Table, RelationalDatabaseConnection, Column, Database } from '@finos/legend-graph';
20
+ import { TDSExecutionResult, type Schema, Table, type TabularFunction, RelationalDatabaseConnection, Column, Database } from '@finos/legend-graph';
21
21
  export declare abstract class DatabaseSchemaExplorerTreeNodeData implements TreeNodeData {
22
22
  isOpen?: boolean | undefined;
23
23
  id: string;
@@ -38,11 +38,17 @@ export declare class DatabaseSchemaExplorerTreeTableNodeData extends DatabaseSch
38
38
  table: Table;
39
39
  constructor(id: string, parentId: string, owner: Schema, table: Table);
40
40
  }
41
+ export declare class DatabaseSchemaExplorerTreeTabularFunctionNodeData extends DatabaseSchemaExplorerTreeNodeData {
42
+ parentId: string;
43
+ owner: Schema;
44
+ tabularFunction: TabularFunction;
45
+ constructor(id: string, parentId: string, owner: Schema, tabularFunction: TabularFunction);
46
+ }
41
47
  export declare class DatabaseSchemaExplorerTreeColumnNodeData extends DatabaseSchemaExplorerTreeNodeData {
42
48
  parentId: string;
43
- owner: Table;
49
+ owner: Table | TabularFunction;
44
50
  column: Column;
45
- constructor(id: string, parentId: string, owner: Table, column: Column);
51
+ constructor(id: string, parentId: string, owner: Table | TabularFunction, column: Column);
46
52
  }
47
53
  export interface DatabaseExplorerTreeData extends TreeData<DatabaseSchemaExplorerTreeNodeData> {
48
54
  database: Database;
@@ -71,6 +77,7 @@ export declare class DatabaseSchemaExplorerState {
71
77
  fetchDatabaseMetadata(): GeneratorFn<void>;
72
78
  fetchSchemaMetadata(schemaNode: DatabaseSchemaExplorerTreeSchemaNodeData, treeData: DatabaseExplorerTreeData): GeneratorFn<void>;
73
79
  fetchTableMetadata(tableNode: DatabaseSchemaExplorerTreeTableNodeData, treeData: DatabaseExplorerTreeData): GeneratorFn<void>;
80
+ fetchTabularFunctionMetadata(tabularFunctionNode: DatabaseSchemaExplorerTreeTabularFunctionNodeData, treeData: DatabaseExplorerTreeData): GeneratorFn<void>;
74
81
  private buildIntermediateDatabase;
75
82
  previewData(node: DatabaseSchemaExplorerTreeNodeData): GeneratorFn<void>;
76
83
  generateDatabase(): GeneratorFn<Entity>;
@@ -1 +1 @@
1
- {"version":3,"file":"DatabaseBuilderState.d.ts","sourceRoot":"","sources":["../../../../../../src/stores/editor/editor-state/element-editor-state/connection/DatabaseBuilderState.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DatabaseBuilderState.d.ts","sourceRoot":"","sources":["../../../../../../src/stores/editor/editor-state/element-editor-state/connection/DatabaseBuilderState.ts"],"names":[],"mappings":"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"}
@@ -185,6 +185,17 @@ export class DatabaseSchemaExplorerTreeTableNodeData extends DatabaseSchemaExplo
185
185
  this.table = table;
186
186
  }
187
187
  }
188
+ export class DatabaseSchemaExplorerTreeTabularFunctionNodeData extends DatabaseSchemaExplorerTreeNodeData {
189
+ parentId;
190
+ owner;
191
+ tabularFunction;
192
+ constructor(id, parentId, owner, tabularFunction) {
193
+ super(id, tabularFunction.name, parentId);
194
+ this.parentId = parentId;
195
+ this.owner = owner;
196
+ this.tabularFunction = tabularFunction;
197
+ }
198
+ }
188
199
  export class DatabaseSchemaExplorerTreeColumnNodeData extends DatabaseSchemaExplorerTreeNodeData {
189
200
  parentId;
190
201
  owner;
@@ -227,6 +238,7 @@ export class DatabaseSchemaExplorerState {
227
238
  fetchDatabaseMetadata: flow,
228
239
  fetchSchemaMetadata: flow,
229
240
  fetchTableMetadata: flow,
241
+ fetchTabularFunctionMetadata: flow,
230
242
  generateDatabase: flow,
231
243
  updateDatabase: flow,
232
244
  updateDatabaseAndGraph: flow,
@@ -269,6 +281,10 @@ export class DatabaseSchemaExplorerState {
269
281
  !node.childrenIds) {
270
282
  yield flowResult(this.fetchTableMetadata(node, treeData));
271
283
  }
284
+ else if (node instanceof DatabaseSchemaExplorerTreeTabularFunctionNodeData &&
285
+ !node.childrenIds) {
286
+ yield flowResult(this.fetchTabularFunctionMetadata(node, treeData));
287
+ }
272
288
  node.isOpen = !node.isOpen;
273
289
  this.setTreeData({ ...treeData });
274
290
  }
@@ -284,7 +300,8 @@ export class DatabaseSchemaExplorerState {
284
300
  childNode.setChecked(node.isChecked);
285
301
  });
286
302
  }
287
- else if (node instanceof DatabaseSchemaExplorerTreeTableNodeData) {
303
+ else if (node instanceof DatabaseSchemaExplorerTreeTableNodeData ||
304
+ node instanceof DatabaseSchemaExplorerTreeTabularFunctionNodeData) {
288
305
  if (node.parentId) {
289
306
  const parent = treeData.nodes.get(node.parentId);
290
307
  if (parent &&
@@ -304,8 +321,9 @@ export class DatabaseSchemaExplorerState {
304
321
  databaseBuilderInput.targetDatabase = new TargetDatabase(packagePath, name);
305
322
  databaseBuilderInput.config.maxTables = undefined;
306
323
  databaseBuilderInput.config.enrichTables = false;
324
+ databaseBuilderInput.config.enrichTableFunctions = false;
307
325
  databaseBuilderInput.config.patterns = [
308
- new DatabasePattern(undefined, undefined),
326
+ new DatabasePattern(undefined, undefined, undefined),
309
327
  ];
310
328
  const database = (yield this.buildIntermediateDatabase(databaseBuilderInput));
311
329
  const rootIds = [];
@@ -340,13 +358,16 @@ export class DatabaseSchemaExplorerState {
340
358
  databaseBuilderInput.targetDatabase = new TargetDatabase(packagePath, name);
341
359
  databaseBuilderInput.config.maxTables = undefined;
342
360
  databaseBuilderInput.config.enrichTables = true;
361
+ databaseBuilderInput.config.enrichTableFunctions = true;
343
362
  databaseBuilderInput.config.patterns = [
344
- new DatabasePattern(schema.name, undefined),
363
+ new DatabasePattern(schema.name, undefined, undefined),
345
364
  ];
346
365
  const database = (yield this.buildIntermediateDatabase(databaseBuilderInput));
347
366
  const tables = getSchema(database, schema.name).tables;
367
+ const tabularFunctions = getSchema(database, schema.name).tabularFunctions;
348
368
  const childrenIds = schemaNode.childrenIds ?? [];
349
369
  schema.tables = tables;
370
+ schema.tabularFunctions = tabularFunctions;
350
371
  tables
351
372
  .toSorted((tableA, tableB) => tableA.name.localeCompare(tableB.name))
352
373
  .forEach((table) => {
@@ -360,6 +381,19 @@ export class DatabaseSchemaExplorerState {
360
381
  ? getNullableTable(matchingSchema, table.name)
361
382
  : undefined));
362
383
  });
384
+ tabularFunctions
385
+ .toSorted((tabularFunctionA, tabularFunctionB) => tabularFunctionA.name.localeCompare(tabularFunctionB.name))
386
+ .forEach((tabularFunction) => {
387
+ tabularFunction.schema = schema;
388
+ const tabularFunctionId = `${schema.name}.${tabularFunction.name}`;
389
+ const tabularFunctionNode = new DatabaseSchemaExplorerTreeTabularFunctionNodeData(tabularFunctionId, schemaNode.id, schema, tabularFunction);
390
+ treeData.nodes.set(tabularFunctionId, tabularFunctionNode);
391
+ addUniqueEntry(childrenIds, tabularFunctionId);
392
+ const matchingSchema = getNullableSchema(this.database, schema.name);
393
+ tabularFunctionNode.setChecked(Boolean(matchingSchema
394
+ ? getNullableTable(matchingSchema, tabularFunction.name)
395
+ : undefined));
396
+ });
363
397
  schemaNode.childrenIds = childrenIds;
364
398
  this.setTreeData({ ...treeData });
365
399
  }
@@ -382,9 +416,12 @@ export class DatabaseSchemaExplorerState {
382
416
  const config = databaseBuilderInput.config;
383
417
  config.maxTables = undefined;
384
418
  config.enrichTables = true;
419
+ config.enrichTableFunctions = true;
385
420
  config.enrichColumns = true;
386
421
  config.enrichPrimaryKeys = true;
387
- config.patterns = [new DatabasePattern(table.schema.name, table.name)];
422
+ config.patterns = [
423
+ new DatabasePattern(table.schema.name, table.name, undefined),
424
+ ];
388
425
  const database = (yield this.buildIntermediateDatabase(databaseBuilderInput));
389
426
  const enrichedTable = database.schemas
390
427
  .find((s) => table.schema.name === s.name)
@@ -418,6 +455,54 @@ export class DatabaseSchemaExplorerState {
418
455
  this.isGeneratingDatabase = false;
419
456
  }
420
457
  }
458
+ *fetchTabularFunctionMetadata(tabularFunctionNode, treeData) {
459
+ try {
460
+ this.isGeneratingDatabase = true;
461
+ const databaseBuilderInput = new DatabaseBuilderInput(this.connection);
462
+ const [packagePath, name] = this.resolveDatabasePackageAndName;
463
+ databaseBuilderInput.targetDatabase = new TargetDatabase(packagePath, name);
464
+ const tabularFunction = tabularFunctionNode.tabularFunction;
465
+ const config = databaseBuilderInput.config;
466
+ config.maxTables = undefined;
467
+ config.enrichTables = false;
468
+ config.enrichTableFunctions = true;
469
+ config.enrichColumns = true;
470
+ config.enrichPrimaryKeys = true;
471
+ config.patterns = [
472
+ new DatabasePattern(tabularFunction.schema.name, undefined, tabularFunction.name),
473
+ ];
474
+ const database = (yield this.buildIntermediateDatabase(databaseBuilderInput));
475
+ const enrichedTabularFunction = database.schemas
476
+ .find((s) => tabularFunction.schema.name === s.name)
477
+ ?.tabularFunctions.find((t) => t.name === tabularFunction.name);
478
+ if (enrichedTabularFunction) {
479
+ const columns = enrichedTabularFunction.columns.filter(filterByType(Column));
480
+ tabularFunctionNode.tabularFunction.columns = columns;
481
+ tabularFunctionNode.childrenIds?.forEach((childId) => treeData.nodes.delete(childId));
482
+ tabularFunctionNode.childrenIds = undefined;
483
+ const childrenIds = [];
484
+ const tabularFunctionId = tabularFunctionNode.id;
485
+ columns
486
+ .toSorted((colA, colB) => colA.name.localeCompare(colB.name))
487
+ .forEach((column) => {
488
+ const columnId = `${tabularFunctionId}.${column.name}`;
489
+ const columnNode = new DatabaseSchemaExplorerTreeColumnNodeData(columnId, tabularFunctionId, tabularFunction, column);
490
+ column.owner = tabularFunctionNode.tabularFunction;
491
+ treeData.nodes.set(columnId, columnNode);
492
+ addUniqueEntry(childrenIds, columnId);
493
+ });
494
+ tabularFunctionNode.childrenIds = childrenIds;
495
+ }
496
+ }
497
+ catch (error) {
498
+ assertErrorThrown(error);
499
+ this.editorStore.applicationStore.logService.error(LogEvent.create(LEGEND_STUDIO_APP_EVENT.DATABASE_BUILDER_FAILURE), error);
500
+ this.editorStore.applicationStore.notificationService.notifyError(error);
501
+ }
502
+ finally {
503
+ this.isGeneratingDatabase = false;
504
+ }
505
+ }
421
506
  async buildIntermediateDatabase(databaseBuilderInput) {
422
507
  const entities = await this.editorStore.graphManagerState.graphManager.buildDatabase(databaseBuilderInput);
423
508
  const graph = this.editorStore.graphManagerState.createNewGraph();
@@ -429,19 +514,22 @@ export class DatabaseSchemaExplorerState {
429
514
  this.previewer = undefined;
430
515
  this.previewDataState.inProgress();
431
516
  let column;
432
- let table;
517
+ let nodeInstance;
433
518
  if (node instanceof DatabaseSchemaExplorerTreeTableNodeData) {
434
- table = node.table;
519
+ nodeInstance = node.table;
520
+ }
521
+ else if (node instanceof DatabaseSchemaExplorerTreeTabularFunctionNodeData) {
522
+ nodeInstance = node.tabularFunction;
435
523
  }
436
524
  else if (node instanceof DatabaseSchemaExplorerTreeColumnNodeData) {
437
- table = guaranteeType(node.column.owner, Table);
525
+ nodeInstance = guaranteeType(node.column.owner, Table);
438
526
  column = node.column;
439
527
  }
440
528
  else {
441
- throw new UnsupportedOperationError('Preview data only supported for column and table');
529
+ throw new UnsupportedOperationError('Preview data only supported for column, table and tabular function');
442
530
  }
443
- const schemaName = table.schema.name;
444
- const tableName = table.name;
531
+ const schemaName = nodeInstance.schema.name;
532
+ const tableName = nodeInstance.name;
445
533
  const dummyPackage = 'generation';
446
534
  const dummyName = 'myDB';
447
535
  const dummyDbPath = `${dummyPackage}::${dummyName}`;
@@ -449,10 +537,18 @@ export class DatabaseSchemaExplorerState {
449
537
  databaseBuilderInput.targetDatabase = new TargetDatabase(dummyPackage, dummyName);
450
538
  const config = databaseBuilderInput.config;
451
539
  config.maxTables = undefined;
452
- config.enrichTables = true;
453
540
  config.enrichColumns = true;
454
541
  config.enrichPrimaryKeys = true;
455
- config.patterns.push(new DatabasePattern(table.schema.name, table.name));
542
+ if (node instanceof DatabaseSchemaExplorerTreeTableNodeData) {
543
+ config.enrichTables = true;
544
+ config.enrichTableFunctions = false;
545
+ config.patterns.push(new DatabasePattern(schemaName, node.table.name, undefined));
546
+ }
547
+ else if (node instanceof DatabaseSchemaExplorerTreeTabularFunctionNodeData) {
548
+ config.enrichTables = false;
549
+ config.enrichTableFunctions = true;
550
+ config.patterns.push(new DatabasePattern(schemaName, undefined, node.tabularFunction.name));
551
+ }
456
552
  const entities = (yield this.editorStore.graphManagerState.graphManager.buildDatabase(databaseBuilderInput));
457
553
  assertTrue(entities.length === 1);
458
554
  const dbEntity = guaranteeNonNullable(entities[0]);
@@ -507,25 +603,35 @@ export class DatabaseSchemaExplorerState {
507
603
  databaseBuilderInput.targetDatabase = new TargetDatabase(packagePath, name);
508
604
  const config = databaseBuilderInput.config;
509
605
  config.maxTables = undefined;
510
- config.enrichTables = true;
511
606
  config.enrichColumns = true;
512
607
  config.enrichPrimaryKeys = true;
608
+ config.enrichTables = false;
609
+ config.enrichTableFunctions = false;
513
610
  treeData.rootIds
514
611
  .map((e) => treeData.nodes.get(e))
515
612
  .filter(isNonNullable)
516
613
  .forEach((schemaNode) => {
517
614
  if (schemaNode instanceof DatabaseSchemaExplorerTreeSchemaNodeData) {
518
- const tableNodes = this.getChildNodes(schemaNode, treeData);
519
- const allChecked = tableNodes?.every((t) => t.isChecked === true);
615
+ const nodes = this.getChildNodes(schemaNode, treeData);
616
+ const allChecked = nodes?.every((t) => t.isChecked === true);
520
617
  if (allChecked ||
521
618
  (schemaNode.isChecked && !schemaNode.childrenIds)) {
522
- config.patterns.push(new DatabasePattern(schemaNode.schema.name, undefined));
619
+ config.enrichTables = true;
620
+ config.enrichTableFunctions = true;
621
+ config.patterns.push(new DatabasePattern(schemaNode.schema.name, undefined, undefined));
523
622
  }
524
623
  else {
525
- tableNodes?.forEach((t) => {
624
+ nodes?.forEach((t) => {
526
625
  if (t instanceof DatabaseSchemaExplorerTreeTableNodeData &&
527
626
  t.isChecked) {
528
- config.patterns.push(new DatabasePattern(schemaNode.schema.name, t.table.name));
627
+ config.enrichTables = true;
628
+ config.patterns.push(new DatabasePattern(schemaNode.schema.name, t.table.name, undefined));
629
+ }
630
+ else if (t instanceof
631
+ DatabaseSchemaExplorerTreeTabularFunctionNodeData &&
632
+ t.isChecked) {
633
+ config.enrichTableFunctions = true;
634
+ config.patterns.push(new DatabasePattern(schemaNode.schema.name, undefined, t.tabularFunction.name));
529
635
  }
530
636
  });
531
637
  }
@@ -1 +1 @@
1
- {"version":3,"file":"DatabaseBuilderState.js","sourceRoot":"","sources":["../../../../../../src/stores/editor/editor-state/element-editor-state/connection/DatabaseBuilderState.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DatabaseBuilderState.js","sourceRoot":"","sources":["../../../../../../src/stores/editor/editor-state/element-editor-state/connection/DatabaseBuilderState.ts"],"names":[],"mappings":"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"}
@@ -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 { DataProduct, LakehouseAccessPoint, type PackageableElement, type AccessPoint } from '@finos/legend-graph';
16
+ import { DataProduct, LakehouseAccessPoint, type PackageableElement, type AccessPoint, AccessPointGroup } from '@finos/legend-graph';
17
17
  import type { EditorStore } from '../../../EditorStore.js';
18
18
  import { ElementEditorState } from '../ElementEditorState.js';
19
19
  import { type GeneratorFn } from '@finos/legend-shared';
@@ -49,6 +49,7 @@ export declare class DataProductEditorState extends ElementEditorState {
49
49
  setAccessPointModal(val: boolean): void;
50
50
  deleteAccessPoint(val: AccessPointState): void;
51
51
  addAccessPoint(id: string): void;
52
+ createBareGroupAndAdd(): AccessPointGroup;
52
53
  get product(): DataProduct;
53
54
  get accessPoints(): AccessPoint[];
54
55
  reprocess(newElement: PackageableElement, editorStore: EditorStore): DataProductEditorState;
@@ -1 +1 @@
1
- {"version":3,"file":"DataProductEditorState.d.ts","sourceRoot":"","sources":["../../../../../../src/stores/editor/editor-state/element-editor-state/dataProduct/DataProductEditorState.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EACL,WAAW,EACX,oBAAoB,EACpB,KAAK,kBAAkB,EACvB,KAAK,WAAW,EAQjB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAE9D,OAAO,EAGL,KAAK,WAAW,EAKjB,MAAM,sBAAsB,CAAC;AAK9B,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAEhE,qBAAa,gBAAgB;IAC3B,QAAQ,CAAC,KAAK,EAAE,sBAAsB,CAAC;IACvC,WAAW,EAAE,WAAW,CAAC;gBAEb,GAAG,EAAE,WAAW,EAAE,WAAW,EAAE,sBAAsB;CAIlE;AAED,qBAAa,4BAA6B,SAAQ,iBAAiB;IACjE,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC;IAClC,QAAQ,CAAC,GAAG,EAAE,yBAAyB,CAAC;gBAE5B,GAAG,EAAE,yBAAyB;IAM1C,IAAa,QAAQ,IAAI,MAAM,CAE9B;IAEA,kCAAkC,IAAI,WAAW,CAAC,IAAI,CAAC;IA2BvD,kCAAkC,CAAC,OAAO,CAAC,EAAE;QAC5C,MAAM,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;QAC7B,wBAAwB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;KAChD,GAAG,WAAW,CAAC,IAAI,CAAC;CAkCtB;AACD,qBAAa,yBAA0B,SAAQ,gBAAgB;IACrD,WAAW,EAAE,oBAAoB,CAAC;IAC1C,WAAW,EAAE,4BAA4B,CAAC;gBAE9B,GAAG,EAAE,oBAAoB,EAAE,WAAW,EAAE,sBAAsB;CAQ3E;AAED,qBAAa,sBAAuB,SAAQ,kBAAkB;IAC5D,gBAAgB,UAAS;IACzB,iBAAiB,EAAE,gBAAgB,EAAE,CAAM;IAC3C,kCAAkC,UAAS;gBAE/B,WAAW,EAAE,WAAW,EAAE,OAAO,EAAE,kBAAkB;IAkBhE,8BAA8B,IAAI,WAAW,CAAC,IAAI,CAAC;IAqCpD,qBAAqB,CAAC,GAAG,EAAE,WAAW,GAAG,gBAAgB;IAOzD,mBAAmB,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI;IAIvC,iBAAiB,CAAC,GAAG,EAAE,gBAAgB,GAAG,IAAI;IAM9C,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAahC,IAAI,OAAO,IAAI,WAAW,CAMzB;IAED,IAAI,YAAY,IAAI,WAAW,EAAE,CAEhC;IAEQ,SAAS,CAChB,UAAU,EAAE,kBAAkB,EAC9B,WAAW,EAAE,WAAW,GACvB,sBAAsB;CAI1B"}
1
+ {"version":3,"file":"DataProductEditorState.d.ts","sourceRoot":"","sources":["../../../../../../src/stores/editor/editor-state/element-editor-state/dataProduct/DataProductEditorState.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EACL,WAAW,EACX,oBAAoB,EACpB,KAAK,kBAAkB,EACvB,KAAK,WAAW,EAQhB,gBAAgB,EACjB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAE9D,OAAO,EAGL,KAAK,WAAW,EAKjB,MAAM,sBAAsB,CAAC;AAM9B,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAEhE,qBAAa,gBAAgB;IAC3B,QAAQ,CAAC,KAAK,EAAE,sBAAsB,CAAC;IACvC,WAAW,EAAE,WAAW,CAAC;gBAEb,GAAG,EAAE,WAAW,EAAE,WAAW,EAAE,sBAAsB;CAIlE;AAED,qBAAa,4BAA6B,SAAQ,iBAAiB;IACjE,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC;IAClC,QAAQ,CAAC,GAAG,EAAE,yBAAyB,CAAC;gBAE5B,GAAG,EAAE,yBAAyB;IAM1C,IAAa,QAAQ,IAAI,MAAM,CAE9B;IAEA,kCAAkC,IAAI,WAAW,CAAC,IAAI,CAAC;IA2BvD,kCAAkC,CAAC,OAAO,CAAC,EAAE;QAC5C,MAAM,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;QAC7B,wBAAwB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;KAChD,GAAG,WAAW,CAAC,IAAI,CAAC;CAkCtB;AACD,qBAAa,yBAA0B,SAAQ,gBAAgB;IACrD,WAAW,EAAE,oBAAoB,CAAC;IAC1C,WAAW,EAAE,4BAA4B,CAAC;gBAE9B,GAAG,EAAE,oBAAoB,EAAE,WAAW,EAAE,sBAAsB;CAQ3E;AAED,qBAAa,sBAAuB,SAAQ,kBAAkB;IAC5D,gBAAgB,UAAS;IACzB,iBAAiB,EAAE,gBAAgB,EAAE,CAAM;IAC3C,kCAAkC,UAAS;gBAE/B,WAAW,EAAE,WAAW,EAAE,OAAO,EAAE,kBAAkB;IAmBhE,8BAA8B,IAAI,WAAW,CAAC,IAAI,CAAC;IAqCpD,qBAAqB,CAAC,GAAG,EAAE,WAAW,GAAG,gBAAgB;IAOzD,mBAAmB,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI;IAIvC,iBAAiB,CAAC,GAAG,EAAE,gBAAgB,GAAG,IAAI;IAY9C,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAgBhC,qBAAqB,IAAI,gBAAgB;IAOzC,IAAI,OAAO,IAAI,WAAW,CAMzB;IAED,IAAI,YAAY,IAAI,WAAW,EAAE,CAEhC;IAEQ,SAAS,CAChB,UAAU,EAAE,kBAAkB,EAC9B,WAAW,EAAE,WAAW,GACvB,sBAAsB;CAI1B"}
@@ -13,11 +13,11 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
- import { DataProduct, LakehouseAccessPoint, stub_RawLambda, LakehouseTargetEnv, LAMBDA_PIPE, ParserError, GRAPH_MANAGER_EVENT, isStubbed_RawLambda, } from '@finos/legend-graph';
16
+ import { DataProduct, LakehouseAccessPoint, stub_RawLambda, LakehouseTargetEnv, LAMBDA_PIPE, ParserError, GRAPH_MANAGER_EVENT, isStubbed_RawLambda, AccessPointGroup, } from '@finos/legend-graph';
17
17
  import { ElementEditorState } from '../ElementEditorState.js';
18
18
  import { action, computed, flow, makeObservable, observable } from 'mobx';
19
19
  import { guaranteeType, addUniqueEntry, assertErrorThrown, LogEvent, deleteEntry, filterByType, } from '@finos/legend-shared';
20
- import { dataProduct_addAccessPoint, dataProduct_deleteAccessPoint, } from '../../../../graph-modifier/DSL_DataProduct_GraphModifierHelper.js';
20
+ import { dataProduct_addAccessPoint, dataProduct_addAccessPointGroup, dataProduct_deleteAccessPoint, } from '../../../../graph-modifier/DSL_DataProduct_GraphModifierHelper.js';
21
21
  import { LambdaEditorState } from '@finos/legend-query-builder';
22
22
  export class AccessPointState {
23
23
  state;
@@ -112,7 +112,10 @@ export class DataProductEditorState extends ElementEditorState {
112
112
  addAccessPoint: action,
113
113
  convertAccessPointsFuncObjects: flow,
114
114
  });
115
- this.accessPointStates = this.product.accessPoints.map((e) => this.buildAccessPointState(e));
115
+ this.accessPointStates = this.product.accessPointGroups
116
+ .map((e) => e.accessPoints)
117
+ .flat()
118
+ .map((e) => this.buildAccessPointState(e));
116
119
  }
117
120
  *convertAccessPointsFuncObjects() {
118
121
  const lambdas = new Map();
@@ -153,19 +156,30 @@ export class DataProductEditorState extends ElementEditorState {
153
156
  }
154
157
  deleteAccessPoint(val) {
155
158
  const ap = val.accessPoint;
156
- dataProduct_deleteAccessPoint(this.product, ap);
157
- deleteEntry(this.accessPointStates, val);
159
+ // find group
160
+ const group = this.product.accessPointGroups.find((g) => Boolean(g.accessPoints.find((v) => v === ap)));
161
+ if (group) {
162
+ dataProduct_deleteAccessPoint(group, ap);
163
+ deleteEntry(this.accessPointStates, val);
164
+ }
158
165
  }
159
166
  addAccessPoint(id) {
160
167
  const accesspoint = new LakehouseAccessPoint(id, LakehouseTargetEnv.Snowflake, stub_RawLambda());
161
- dataProduct_addAccessPoint(this.product, accesspoint);
168
+ const group = this.product.accessPointGroups[0] ?? this.createBareGroupAndAdd();
169
+ dataProduct_addAccessPoint(group, accesspoint);
162
170
  addUniqueEntry(this.accessPointStates, this.buildAccessPointState(accesspoint));
163
171
  }
172
+ createBareGroupAndAdd() {
173
+ const group = new AccessPointGroup();
174
+ group.id = 'default';
175
+ dataProduct_addAccessPointGroup(this.product, group);
176
+ return group;
177
+ }
164
178
  get product() {
165
179
  return guaranteeType(this.element, DataProduct, 'Element inside data product editor state must be a data product');
166
180
  }
167
181
  get accessPoints() {
168
- return this.product.accessPoints;
182
+ return this.product.accessPointGroups.map((e) => e.accessPoints).flat();
169
183
  }
170
184
  reprocess(newElement, editorStore) {
171
185
  const editorState = new DataProductEditorState(editorStore, newElement);
@@ -1 +1 @@
1
- {"version":3,"file":"DataProductEditorState.js","sourceRoot":"","sources":["../../../../../../src/stores/editor/editor-state/element-editor-state/dataProduct/DataProductEditorState.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DataProductEditorState.js","sourceRoot":"","sources":["../../../../../../src/stores/editor/editor-state/element-editor-state/dataProduct/DataProductEditorState.ts"],"names":[],"mappings":"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"}
@@ -13,7 +13,9 @@
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 DataProduct } from '@finos/legend-graph';
17
- export declare const dataProduct_deleteAccessPoint: (product: DataProduct, accessPoint: AccessPoint) => void;
18
- export declare const dataProduct_addAccessPoint: (product: DataProduct, accessPoint: AccessPoint) => void;
16
+ import { type AccessPoint, type AccessPointGroup, type DataProduct } from '@finos/legend-graph';
17
+ export declare const dataProduct_deleteAccessPoint: (group: AccessPointGroup, accessPoint: AccessPoint) => void;
18
+ export declare const dataProduct_addAccessPoint: (product: AccessPointGroup, accessPoint: AccessPoint) => void;
19
+ export declare const dataProduct_addAccessPointGroup: (product: DataProduct, accessPointGroup: AccessPointGroup) => void;
20
+ export declare const dataProduct_deleteAccessPointGroup: (product: DataProduct, accessPointGroup: AccessPointGroup) => void;
19
21
  //# 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":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,WAAW,EAEjB,MAAM,qBAAqB,CAAC;AAK7B,eAAO,MAAM,6BAA6B,YAC9B,WAAW,eAAe,WAAW,SAGhD,CAAC;AAEF,eAAO,MAAM,0BAA0B,YAC3B,WAAW,eAAe,WAAW,SAGhD,CAAC"}
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,EAGjB,MAAM,qBAAqB,CAAC;AAK7B,eAAO,MAAM,6BAA6B,UAChC,gBAAgB,eAAe,WAAW,SAGnD,CAAC;AAEF,eAAO,MAAM,0BAA0B,YAC3B,gBAAgB,eAAe,WAAW,SAGrD,CAAC;AAEF,eAAO,MAAM,+BAA+B,YAChC,WAAW,oBAAoB,gBAAgB,SAM1D,CAAC;AAEF,eAAO,MAAM,kCAAkC,YACnC,WAAW,oBAAoB,gBAAgB,SAG1D,CAAC"}
@@ -13,13 +13,19 @@
13
13
  * See the License for the specific language governing permissions and
14
14
  * limitations under the License.
15
15
  */
16
- import { observe_AccessPoint, } from '@finos/legend-graph';
16
+ import { observe_AccessPoint, observe_AccessPointGroup, } from '@finos/legend-graph';
17
17
  import { addUniqueEntry, deleteEntry } from '@finos/legend-shared';
18
18
  import { action } from 'mobx';
19
- export const dataProduct_deleteAccessPoint = action((product, accessPoint) => {
20
- deleteEntry(product.accessPoints, accessPoint);
19
+ export const dataProduct_deleteAccessPoint = action((group, accessPoint) => {
20
+ deleteEntry(group.accessPoints, accessPoint);
21
21
  });
22
22
  export const dataProduct_addAccessPoint = action((product, accessPoint) => {
23
23
  addUniqueEntry(product.accessPoints, observe_AccessPoint(accessPoint));
24
24
  });
25
+ export const dataProduct_addAccessPointGroup = action((product, accessPointGroup) => {
26
+ addUniqueEntry(product.accessPointGroups, observe_AccessPointGroup(accessPointGroup));
27
+ });
28
+ export const dataProduct_deleteAccessPointGroup = action((product, accessPointGroup) => {
29
+ deleteEntry(product.accessPointGroups, accessPointGroup);
30
+ });
25
31
  //# 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":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAGL,mBAAmB,GACpB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAEnE,OAAO,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAE9B,MAAM,CAAC,MAAM,6BAA6B,GAAG,MAAM,CACjD,CAAC,OAAoB,EAAE,WAAwB,EAAE,EAAE;IACjD,WAAW,CAAC,OAAO,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC;AACjD,CAAC,CACF,CAAC;AAEF,MAAM,CAAC,MAAM,0BAA0B,GAAG,MAAM,CAC9C,CAAC,OAAoB,EAAE,WAAwB,EAAE,EAAE;IACjD,cAAc,CAAC,OAAO,CAAC,YAAY,EAAE,mBAAmB,CAAC,WAAW,CAAC,CAAC,CAAC;AACzE,CAAC,CACF,CAAC"}
1
+ {"version":3,"file":"DSL_DataProduct_GraphModifierHelper.js","sourceRoot":"","sources":["../../../src/stores/graph-modifier/DSL_DataProduct_GraphModifierHelper.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAIL,mBAAmB,EACnB,wBAAwB,GACzB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAEnE,OAAO,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAE9B,MAAM,CAAC,MAAM,6BAA6B,GAAG,MAAM,CACjD,CAAC,KAAuB,EAAE,WAAwB,EAAE,EAAE;IACpD,WAAW,CAAC,KAAK,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC;AAC/C,CAAC,CACF,CAAC;AAEF,MAAM,CAAC,MAAM,0BAA0B,GAAG,MAAM,CAC9C,CAAC,OAAyB,EAAE,WAAwB,EAAE,EAAE;IACtD,cAAc,CAAC,OAAO,CAAC,YAAY,EAAE,mBAAmB,CAAC,WAAW,CAAC,CAAC,CAAC;AACzE,CAAC,CACF,CAAC;AAEF,MAAM,CAAC,MAAM,+BAA+B,GAAG,MAAM,CACnD,CAAC,OAAoB,EAAE,gBAAkC,EAAE,EAAE;IAC3D,cAAc,CACZ,OAAO,CAAC,iBAAiB,EACzB,wBAAwB,CAAC,gBAAgB,CAAC,CAC3C,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,MAAM,CAAC,MAAM,kCAAkC,GAAG,MAAM,CACtD,CAAC,OAAoB,EAAE,gBAAkC,EAAE,EAAE;IAC3D,WAAW,CAAC,OAAO,CAAC,iBAAiB,EAAE,gBAAgB,CAAC,CAAC;AAC3D,CAAC,CACF,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@finos/legend-application-studio",
3
- "version": "28.18.115",
3
+ "version": "28.18.117",
4
4
  "description": "Legend Studio application core",
5
5
  "keywords": [
6
6
  "legend",
@@ -45,13 +45,13 @@
45
45
  "test:watch": "jest --watch"
46
46
  },
47
47
  "dependencies": {
48
- "@finos/legend-application": "16.0.36",
49
- "@finos/legend-art": "7.1.93",
50
- "@finos/legend-code-editor": "2.0.62",
51
- "@finos/legend-data-cube": "0.1.25",
52
- "@finos/legend-graph": "32.1.20",
53
- "@finos/legend-lego": "2.0.66",
54
- "@finos/legend-query-builder": "4.16.26",
48
+ "@finos/legend-application": "16.0.37",
49
+ "@finos/legend-art": "7.1.94",
50
+ "@finos/legend-code-editor": "2.0.64",
51
+ "@finos/legend-data-cube": "0.1.27",
52
+ "@finos/legend-graph": "32.1.22",
53
+ "@finos/legend-lego": "2.0.68",
54
+ "@finos/legend-query-builder": "4.16.28",
55
55
  "@finos/legend-server-depot": "6.0.88",
56
56
  "@finos/legend-server-sdlc": "5.3.56",
57
57
  "@finos/legend-server-showcase": "0.2.52",
@@ -20,6 +20,7 @@ import {
20
20
  TreeView,
21
21
  PURE_DatabaseSchemaIcon,
22
22
  PURE_DatabaseTableIcon,
23
+ PURE_DatabaseTabularFunctionIcon,
23
24
  CircleIcon,
24
25
  ChevronDownIcon,
25
26
  ChevronRightIcon,
@@ -35,12 +36,13 @@ import {
35
36
  DatabaseSchemaExplorerTreeColumnNodeData,
36
37
  DatabaseSchemaExplorerTreeSchemaNodeData,
37
38
  DatabaseSchemaExplorerTreeTableNodeData,
39
+ DatabaseSchemaExplorerTreeTabularFunctionNodeData,
38
40
  type DatabaseSchemaExplorerState,
39
41
  } from '../../../../stores/editor/editor-state/element-editor-state/connection/DatabaseBuilderState.js';
40
42
  import { useApplicationStore } from '@finos/legend-application';
41
43
  import { renderColumnTypeIcon } from './DatabaseEditorHelper.js';
42
44
  import { flowResult } from 'mobx';
43
- import { stringifyDataType } from '@finos/legend-graph';
45
+ import { stringifyDataType, Table } from '@finos/legend-graph';
44
46
  import { forwardRef } from 'react';
45
47
 
46
48
  const getDatabaseSchemaNodeIcon = (
@@ -58,6 +60,14 @@ const getDatabaseSchemaNodeIcon = (
58
60
  <PURE_DatabaseTableIcon />
59
61
  </div>
60
62
  );
63
+ } else if (
64
+ node instanceof DatabaseSchemaExplorerTreeTabularFunctionNodeData
65
+ ) {
66
+ return (
67
+ <div className="database-schema-explorer__icon--tabularFunction">
68
+ <PURE_DatabaseTabularFunctionIcon />
69
+ </div>
70
+ );
61
71
  } else if (node instanceof DatabaseSchemaExplorerTreeColumnNodeData) {
62
72
  return renderColumnTypeIcon(node.column.type);
63
73
  }
@@ -110,6 +120,7 @@ export const DatabaseSchemaExplorerTreeNodeContainer = observer(
110
120
  };
111
121
  const isPrimaryKeyColumn =
112
122
  node instanceof DatabaseSchemaExplorerTreeColumnNodeData &&
123
+ node.owner instanceof Table &&
113
124
  node.owner.primaryKey.includes(node.column);
114
125
 
115
126
  const renderCheckedIcon = (
@@ -240,7 +251,8 @@ export const DatabaseSchemaExplorer = observer(
240
251
  ): boolean =>
241
252
  !(
242
253
  node instanceof DatabaseSchemaExplorerTreeTableNodeData ||
243
- node instanceof DatabaseSchemaExplorerTreeColumnNodeData
254
+ node instanceof DatabaseSchemaExplorerTreeColumnNodeData ||
255
+ node instanceof DatabaseSchemaExplorerTreeTabularFunctionNodeData
244
256
  );
245
257
 
246
258
  return (
@@ -54,6 +54,7 @@ import {
54
54
  TDSRow,
55
55
  type Schema,
56
56
  Table,
57
+ type TabularFunction,
57
58
  RelationalDatabaseConnection,
58
59
  DatabaseBuilderInput,
59
60
  DatabasePattern,
@@ -286,12 +287,35 @@ export class DatabaseSchemaExplorerTreeTableNodeData extends DatabaseSchemaExplo
286
287
  }
287
288
  }
288
289
 
290
+ export class DatabaseSchemaExplorerTreeTabularFunctionNodeData extends DatabaseSchemaExplorerTreeNodeData {
291
+ override parentId: string;
292
+ owner: Schema;
293
+ tabularFunction: TabularFunction;
294
+
295
+ constructor(
296
+ id: string,
297
+ parentId: string,
298
+ owner: Schema,
299
+ tabularFunction: TabularFunction,
300
+ ) {
301
+ super(id, tabularFunction.name, parentId);
302
+ this.parentId = parentId;
303
+ this.owner = owner;
304
+ this.tabularFunction = tabularFunction;
305
+ }
306
+ }
307
+
289
308
  export class DatabaseSchemaExplorerTreeColumnNodeData extends DatabaseSchemaExplorerTreeNodeData {
290
309
  override parentId: string;
291
- owner: Table;
310
+ owner: Table | TabularFunction;
292
311
  column: Column;
293
312
 
294
- constructor(id: string, parentId: string, owner: Table, column: Column) {
313
+ constructor(
314
+ id: string,
315
+ parentId: string,
316
+ owner: Table | TabularFunction,
317
+ column: Column,
318
+ ) {
295
319
  super(id, column.name, parentId);
296
320
  this.parentId = parentId;
297
321
  this.owner = owner;
@@ -341,6 +365,7 @@ export class DatabaseSchemaExplorerState {
341
365
  fetchDatabaseMetadata: flow,
342
366
  fetchSchemaMetadata: flow,
343
367
  fetchTableMetadata: flow,
368
+ fetchTabularFunctionMetadata: flow,
344
369
  generateDatabase: flow,
345
370
  updateDatabase: flow,
346
371
  updateDatabaseAndGraph: flow,
@@ -401,6 +426,11 @@ export class DatabaseSchemaExplorerState {
401
426
  !node.childrenIds
402
427
  ) {
403
428
  yield flowResult(this.fetchTableMetadata(node, treeData));
429
+ } else if (
430
+ node instanceof DatabaseSchemaExplorerTreeTabularFunctionNodeData &&
431
+ !node.childrenIds
432
+ ) {
433
+ yield flowResult(this.fetchTabularFunctionMetadata(node, treeData));
404
434
  }
405
435
  node.isOpen = !node.isOpen;
406
436
  this.setTreeData({ ...treeData });
@@ -424,7 +454,10 @@ export class DatabaseSchemaExplorerState {
424
454
  this.getChildNodes(node, treeData)?.forEach((childNode) => {
425
455
  childNode.setChecked(node.isChecked);
426
456
  });
427
- } else if (node instanceof DatabaseSchemaExplorerTreeTableNodeData) {
457
+ } else if (
458
+ node instanceof DatabaseSchemaExplorerTreeTableNodeData ||
459
+ node instanceof DatabaseSchemaExplorerTreeTabularFunctionNodeData
460
+ ) {
428
461
  if (node.parentId) {
429
462
  const parent = treeData.nodes.get(node.parentId);
430
463
  if (
@@ -453,8 +486,9 @@ export class DatabaseSchemaExplorerState {
453
486
  );
454
487
  databaseBuilderInput.config.maxTables = undefined;
455
488
  databaseBuilderInput.config.enrichTables = false;
489
+ databaseBuilderInput.config.enrichTableFunctions = false;
456
490
  databaseBuilderInput.config.patterns = [
457
- new DatabasePattern(undefined, undefined),
491
+ new DatabasePattern(undefined, undefined, undefined),
458
492
  ];
459
493
  const database = (yield this.buildIntermediateDatabase(
460
494
  databaseBuilderInput,
@@ -513,16 +547,22 @@ export class DatabaseSchemaExplorerState {
513
547
  );
514
548
  databaseBuilderInput.config.maxTables = undefined;
515
549
  databaseBuilderInput.config.enrichTables = true;
550
+ databaseBuilderInput.config.enrichTableFunctions = true;
516
551
  databaseBuilderInput.config.patterns = [
517
- new DatabasePattern(schema.name, undefined),
552
+ new DatabasePattern(schema.name, undefined, undefined),
518
553
  ];
519
554
  const database = (yield this.buildIntermediateDatabase(
520
555
  databaseBuilderInput,
521
556
  )) as Database;
522
557
 
523
558
  const tables = getSchema(database, schema.name).tables;
559
+ const tabularFunctions = getSchema(
560
+ database,
561
+ schema.name,
562
+ ).tabularFunctions;
524
563
  const childrenIds = schemaNode.childrenIds ?? [];
525
564
  schema.tables = tables;
565
+ schema.tabularFunctions = tabularFunctions;
526
566
  tables
527
567
  .toSorted((tableA, tableB) => tableA.name.localeCompare(tableB.name))
528
568
  .forEach((table) => {
@@ -546,6 +586,32 @@ export class DatabaseSchemaExplorerState {
546
586
  ),
547
587
  );
548
588
  });
589
+ tabularFunctions
590
+ .toSorted((tabularFunctionA, tabularFunctionB) =>
591
+ tabularFunctionA.name.localeCompare(tabularFunctionB.name),
592
+ )
593
+ .forEach((tabularFunction) => {
594
+ tabularFunction.schema = schema;
595
+ const tabularFunctionId = `${schema.name}.${tabularFunction.name}`;
596
+ const tabularFunctionNode =
597
+ new DatabaseSchemaExplorerTreeTabularFunctionNodeData(
598
+ tabularFunctionId,
599
+ schemaNode.id,
600
+ schema,
601
+ tabularFunction,
602
+ );
603
+ treeData.nodes.set(tabularFunctionId, tabularFunctionNode);
604
+ addUniqueEntry(childrenIds, tabularFunctionId);
605
+
606
+ const matchingSchema = getNullableSchema(this.database, schema.name);
607
+ tabularFunctionNode.setChecked(
608
+ Boolean(
609
+ matchingSchema
610
+ ? getNullableTable(matchingSchema, tabularFunction.name)
611
+ : undefined,
612
+ ),
613
+ );
614
+ });
549
615
  schemaNode.childrenIds = childrenIds;
550
616
  this.setTreeData({ ...treeData });
551
617
  } catch (error) {
@@ -577,9 +643,12 @@ export class DatabaseSchemaExplorerState {
577
643
  const config = databaseBuilderInput.config;
578
644
  config.maxTables = undefined;
579
645
  config.enrichTables = true;
646
+ config.enrichTableFunctions = true;
580
647
  config.enrichColumns = true;
581
648
  config.enrichPrimaryKeys = true;
582
- config.patterns = [new DatabasePattern(table.schema.name, table.name)];
649
+ config.patterns = [
650
+ new DatabasePattern(table.schema.name, table.name, undefined),
651
+ ];
583
652
  const database = (yield this.buildIntermediateDatabase(
584
653
  databaseBuilderInput,
585
654
  )) as Database;
@@ -625,6 +694,79 @@ export class DatabaseSchemaExplorerState {
625
694
  }
626
695
  }
627
696
 
697
+ *fetchTabularFunctionMetadata(
698
+ tabularFunctionNode: DatabaseSchemaExplorerTreeTabularFunctionNodeData,
699
+ treeData: DatabaseExplorerTreeData,
700
+ ): GeneratorFn<void> {
701
+ try {
702
+ this.isGeneratingDatabase = true;
703
+
704
+ const databaseBuilderInput = new DatabaseBuilderInput(this.connection);
705
+ const [packagePath, name] = this.resolveDatabasePackageAndName;
706
+ databaseBuilderInput.targetDatabase = new TargetDatabase(
707
+ packagePath,
708
+ name,
709
+ );
710
+ const tabularFunction = tabularFunctionNode.tabularFunction;
711
+ const config = databaseBuilderInput.config;
712
+ config.maxTables = undefined;
713
+ config.enrichTables = false;
714
+ config.enrichTableFunctions = true;
715
+ config.enrichColumns = true;
716
+ config.enrichPrimaryKeys = true;
717
+ config.patterns = [
718
+ new DatabasePattern(
719
+ tabularFunction.schema.name,
720
+ undefined,
721
+ tabularFunction.name,
722
+ ),
723
+ ];
724
+ const database = (yield this.buildIntermediateDatabase(
725
+ databaseBuilderInput,
726
+ )) as Database;
727
+
728
+ const enrichedTabularFunction = database.schemas
729
+ .find((s) => tabularFunction.schema.name === s.name)
730
+ ?.tabularFunctions.find((t) => t.name === tabularFunction.name);
731
+ if (enrichedTabularFunction) {
732
+ const columns = enrichedTabularFunction.columns.filter(
733
+ filterByType(Column),
734
+ );
735
+ tabularFunctionNode.tabularFunction.columns = columns;
736
+ tabularFunctionNode.childrenIds?.forEach((childId) =>
737
+ treeData.nodes.delete(childId),
738
+ );
739
+ tabularFunctionNode.childrenIds = undefined;
740
+ const childrenIds: string[] = [];
741
+ const tabularFunctionId = tabularFunctionNode.id;
742
+ columns
743
+ .toSorted((colA, colB) => colA.name.localeCompare(colB.name))
744
+ .forEach((column) => {
745
+ const columnId = `${tabularFunctionId}.${column.name}`;
746
+ const columnNode = new DatabaseSchemaExplorerTreeColumnNodeData(
747
+ columnId,
748
+ tabularFunctionId,
749
+ tabularFunction,
750
+ column,
751
+ );
752
+ column.owner = tabularFunctionNode.tabularFunction;
753
+ treeData.nodes.set(columnId, columnNode);
754
+ addUniqueEntry(childrenIds, columnId);
755
+ });
756
+ tabularFunctionNode.childrenIds = childrenIds;
757
+ }
758
+ } catch (error) {
759
+ assertErrorThrown(error);
760
+ this.editorStore.applicationStore.logService.error(
761
+ LogEvent.create(LEGEND_STUDIO_APP_EVENT.DATABASE_BUILDER_FAILURE),
762
+ error,
763
+ );
764
+ this.editorStore.applicationStore.notificationService.notifyError(error);
765
+ } finally {
766
+ this.isGeneratingDatabase = false;
767
+ }
768
+ }
769
+
628
770
  private async buildIntermediateDatabase(
629
771
  databaseBuilderInput: DatabaseBuilderInput,
630
772
  ): Promise<Database> {
@@ -650,19 +792,23 @@ export class DatabaseSchemaExplorerState {
650
792
  this.previewer = undefined;
651
793
  this.previewDataState.inProgress();
652
794
  let column: Column | undefined;
653
- let table: Table | undefined;
795
+ let nodeInstance: Table | TabularFunction | undefined;
654
796
  if (node instanceof DatabaseSchemaExplorerTreeTableNodeData) {
655
- table = node.table;
797
+ nodeInstance = node.table;
798
+ } else if (
799
+ node instanceof DatabaseSchemaExplorerTreeTabularFunctionNodeData
800
+ ) {
801
+ nodeInstance = node.tabularFunction;
656
802
  } else if (node instanceof DatabaseSchemaExplorerTreeColumnNodeData) {
657
- table = guaranteeType(node.column.owner, Table);
803
+ nodeInstance = guaranteeType(node.column.owner, Table);
658
804
  column = node.column;
659
805
  } else {
660
806
  throw new UnsupportedOperationError(
661
- 'Preview data only supported for column and table',
807
+ 'Preview data only supported for column, table and tabular function',
662
808
  );
663
809
  }
664
- const schemaName = table.schema.name;
665
- const tableName = table.name;
810
+ const schemaName = nodeInstance.schema.name;
811
+ const tableName = nodeInstance.name;
666
812
  const dummyPackage = 'generation';
667
813
  const dummyName = 'myDB';
668
814
  const dummyDbPath = `${dummyPackage}::${dummyName}`;
@@ -673,10 +819,23 @@ export class DatabaseSchemaExplorerState {
673
819
  );
674
820
  const config = databaseBuilderInput.config;
675
821
  config.maxTables = undefined;
676
- config.enrichTables = true;
677
822
  config.enrichColumns = true;
678
823
  config.enrichPrimaryKeys = true;
679
- config.patterns.push(new DatabasePattern(table.schema.name, table.name));
824
+ if (node instanceof DatabaseSchemaExplorerTreeTableNodeData) {
825
+ config.enrichTables = true;
826
+ config.enrichTableFunctions = false;
827
+ config.patterns.push(
828
+ new DatabasePattern(schemaName, node.table.name, undefined),
829
+ );
830
+ } else if (
831
+ node instanceof DatabaseSchemaExplorerTreeTabularFunctionNodeData
832
+ ) {
833
+ config.enrichTables = false;
834
+ config.enrichTableFunctions = true;
835
+ config.patterns.push(
836
+ new DatabasePattern(schemaName, undefined, node.tabularFunction.name),
837
+ );
838
+ }
680
839
  const entities =
681
840
  (yield this.editorStore.graphManagerState.graphManager.buildDatabase(
682
841
  databaseBuilderInput,
@@ -766,31 +925,56 @@ export class DatabaseSchemaExplorerState {
766
925
  );
767
926
  const config = databaseBuilderInput.config;
768
927
  config.maxTables = undefined;
769
- config.enrichTables = true;
770
928
  config.enrichColumns = true;
771
929
  config.enrichPrimaryKeys = true;
930
+ config.enrichTables = false;
931
+ config.enrichTableFunctions = false;
772
932
  treeData.rootIds
773
933
  .map((e) => treeData.nodes.get(e))
774
934
  .filter(isNonNullable)
775
935
  .forEach((schemaNode) => {
776
936
  if (schemaNode instanceof DatabaseSchemaExplorerTreeSchemaNodeData) {
777
- const tableNodes = this.getChildNodes(schemaNode, treeData);
778
- const allChecked = tableNodes?.every((t) => t.isChecked === true);
937
+ const nodes = this.getChildNodes(schemaNode, treeData);
938
+ const allChecked = nodes?.every((t) => t.isChecked === true);
779
939
  if (
780
940
  allChecked ||
781
941
  (schemaNode.isChecked && !schemaNode.childrenIds)
782
942
  ) {
943
+ config.enrichTables = true;
944
+ config.enrichTableFunctions = true;
783
945
  config.patterns.push(
784
- new DatabasePattern(schemaNode.schema.name, undefined),
946
+ new DatabasePattern(
947
+ schemaNode.schema.name,
948
+ undefined,
949
+ undefined,
950
+ ),
785
951
  );
786
952
  } else {
787
- tableNodes?.forEach((t) => {
953
+ nodes?.forEach((t) => {
788
954
  if (
789
955
  t instanceof DatabaseSchemaExplorerTreeTableNodeData &&
790
956
  t.isChecked
791
957
  ) {
958
+ config.enrichTables = true;
959
+ config.patterns.push(
960
+ new DatabasePattern(
961
+ schemaNode.schema.name,
962
+ t.table.name,
963
+ undefined,
964
+ ),
965
+ );
966
+ } else if (
967
+ t instanceof
968
+ DatabaseSchemaExplorerTreeTabularFunctionNodeData &&
969
+ t.isChecked
970
+ ) {
971
+ config.enrichTableFunctions = true;
792
972
  config.patterns.push(
793
- new DatabasePattern(schemaNode.schema.name, t.table.name),
973
+ new DatabasePattern(
974
+ schemaNode.schema.name,
975
+ undefined,
976
+ t.tabularFunction.name,
977
+ ),
794
978
  );
795
979
  }
796
980
  });
@@ -26,6 +26,7 @@ import {
26
26
  ParserError,
27
27
  GRAPH_MANAGER_EVENT,
28
28
  isStubbed_RawLambda,
29
+ AccessPointGroup,
29
30
  } from '@finos/legend-graph';
30
31
  import type { EditorStore } from '../../../EditorStore.js';
31
32
  import { ElementEditorState } from '../ElementEditorState.js';
@@ -41,6 +42,7 @@ import {
41
42
  } from '@finos/legend-shared';
42
43
  import {
43
44
  dataProduct_addAccessPoint,
45
+ dataProduct_addAccessPointGroup,
44
46
  dataProduct_deleteAccessPoint,
45
47
  } from '../../../../graph-modifier/DSL_DataProduct_GraphModifierHelper.js';
46
48
  import { LambdaEditorState } from '@finos/legend-query-builder';
@@ -166,9 +168,10 @@ export class DataProductEditorState extends ElementEditorState {
166
168
  addAccessPoint: action,
167
169
  convertAccessPointsFuncObjects: flow,
168
170
  });
169
- this.accessPointStates = this.product.accessPoints.map((e) =>
170
- this.buildAccessPointState(e),
171
- );
171
+ this.accessPointStates = this.product.accessPointGroups
172
+ .map((e) => e.accessPoints)
173
+ .flat()
174
+ .map((e) => this.buildAccessPointState(e));
172
175
  }
173
176
 
174
177
  *convertAccessPointsFuncObjects(): GeneratorFn<void> {
@@ -221,8 +224,14 @@ export class DataProductEditorState extends ElementEditorState {
221
224
 
222
225
  deleteAccessPoint(val: AccessPointState): void {
223
226
  const ap = val.accessPoint;
224
- dataProduct_deleteAccessPoint(this.product, ap);
225
- deleteEntry(this.accessPointStates, val);
227
+ // find group
228
+ const group = this.product.accessPointGroups.find((g) =>
229
+ Boolean(g.accessPoints.find((v) => v === ap)),
230
+ );
231
+ if (group) {
232
+ dataProduct_deleteAccessPoint(group, ap);
233
+ deleteEntry(this.accessPointStates, val);
234
+ }
226
235
  }
227
236
 
228
237
  addAccessPoint(id: string): void {
@@ -231,13 +240,23 @@ export class DataProductEditorState extends ElementEditorState {
231
240
  LakehouseTargetEnv.Snowflake,
232
241
  stub_RawLambda(),
233
242
  );
234
- dataProduct_addAccessPoint(this.product, accesspoint);
243
+
244
+ const group =
245
+ this.product.accessPointGroups[0] ?? this.createBareGroupAndAdd();
246
+ dataProduct_addAccessPoint(group, accesspoint);
235
247
  addUniqueEntry(
236
248
  this.accessPointStates,
237
249
  this.buildAccessPointState(accesspoint),
238
250
  );
239
251
  }
240
252
 
253
+ createBareGroupAndAdd(): AccessPointGroup {
254
+ const group = new AccessPointGroup();
255
+ group.id = 'default';
256
+ dataProduct_addAccessPointGroup(this.product, group);
257
+ return group;
258
+ }
259
+
241
260
  get product(): DataProduct {
242
261
  return guaranteeType(
243
262
  this.element,
@@ -247,7 +266,7 @@ export class DataProductEditorState extends ElementEditorState {
247
266
  }
248
267
 
249
268
  get accessPoints(): AccessPoint[] {
250
- return this.product.accessPoints;
269
+ return this.product.accessPointGroups.map((e) => e.accessPoints).flat();
251
270
  }
252
271
 
253
272
  override reprocess(
@@ -16,21 +16,38 @@
16
16
 
17
17
  import {
18
18
  type AccessPoint,
19
+ type AccessPointGroup,
19
20
  type DataProduct,
20
21
  observe_AccessPoint,
22
+ observe_AccessPointGroup,
21
23
  } from '@finos/legend-graph';
22
24
  import { addUniqueEntry, deleteEntry } from '@finos/legend-shared';
23
25
 
24
26
  import { action } from 'mobx';
25
27
 
26
28
  export const dataProduct_deleteAccessPoint = action(
27
- (product: DataProduct, accessPoint: AccessPoint) => {
28
- deleteEntry(product.accessPoints, accessPoint);
29
+ (group: AccessPointGroup, accessPoint: AccessPoint) => {
30
+ deleteEntry(group.accessPoints, accessPoint);
29
31
  },
30
32
  );
31
33
 
32
34
  export const dataProduct_addAccessPoint = action(
33
- (product: DataProduct, accessPoint: AccessPoint) => {
35
+ (product: AccessPointGroup, accessPoint: AccessPoint) => {
34
36
  addUniqueEntry(product.accessPoints, observe_AccessPoint(accessPoint));
35
37
  },
36
38
  );
39
+
40
+ export const dataProduct_addAccessPointGroup = action(
41
+ (product: DataProduct, accessPointGroup: AccessPointGroup) => {
42
+ addUniqueEntry(
43
+ product.accessPointGroups,
44
+ observe_AccessPointGroup(accessPointGroup),
45
+ );
46
+ },
47
+ );
48
+
49
+ export const dataProduct_deleteAccessPointGroup = action(
50
+ (product: DataProduct, accessPointGroup: AccessPointGroup) => {
51
+ deleteEntry(product.accessPointGroups, accessPointGroup);
52
+ },
53
+ );