@finos/legend-application-studio 28.18.114 → 28.18.116

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.
@@ -1 +1 @@
1
- {"version":3,"file":"DataPoductEditor.d.ts","sourceRoot":"","sources":["../../../../../src/components/editor/editor-group/dataProduct/DataPoductEditor.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAIH,OAAO,EAEL,yBAAyB,EAC1B,MAAM,mGAAmG,CAAC;AA8G3G,eAAO,MAAM,sCAAsC,WACzC;IACN,gBAAgB,EAAE,yBAAyB,CAAC;IAC5C,UAAU,EAAE,OAAO,CAAC;CACrB;;CA0DF,CAAC;AAqCF,eAAO,MAAM,iBAAiB;;CAkE5B,CAAC"}
1
+ {"version":3,"file":"DataPoductEditor.d.ts","sourceRoot":"","sources":["../../../../../src/components/editor/editor-group/dataProduct/DataPoductEditor.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAIH,OAAO,EAEL,yBAAyB,EAC1B,MAAM,mGAAmG,CAAC;AA+G3G,eAAO,MAAM,sCAAsC,WACzC;IACN,gBAAgB,EAAE,yBAAyB,CAAC;IAC5C,UAAU,EAAE,OAAO,CAAC;CACrB;;CA6DF,CAAC;AAqCF,eAAO,MAAM,iBAAiB;;CAwE5B,CAAC"}
@@ -21,6 +21,7 @@ import { clsx, LockIcon, PanelContent, PanelHeader, PanelHeaderActions, Dialog,
21
21
  import { useRef, useState, useEffect } from 'react';
22
22
  import { filterByType } from '@finos/legend-shared';
23
23
  import { InlineLambdaEditor } from '@finos/legend-query-builder';
24
+ import { flowResult } from 'mobx';
24
25
  const NewAccessPointAccessPOint = observer((props) => {
25
26
  const { dataProductEditorState: dataProductEditorState } = props;
26
27
  const accessPointInputRef = useRef(null);
@@ -79,7 +80,8 @@ export const LakehouseDataProductAcccessPointEditor = observer((props) => {
79
80
  .find((pm) => pm.lambdaState.parserError);
80
81
  return (_jsxs("div", { className: clsx('access-point-editor', {
81
82
  backdrop__element: propertyHasParserError,
82
- }), children: [_jsxs("div", { className: "access-point-editor__metadata", children: [_jsx("div", { className: clsx('access-point-editor__name', {}), children: _jsx("div", { className: "access-point-editor__name__label", children: accessPoint.id }) }), _jsx("div", { className: "access-point-editor__info", children: _jsx("div", { className: clsx('access-point-editor__type'), title: accessPoint.targetEnvironment, children: _jsx("div", { className: "access-point-editor__type__label", children: accessPoint.targetEnvironment }) }) })] }), _jsx("div", { className: "access-point-editor__content", children: _jsxs("div", { className: "access-point-editor__generic-entry", children: [_jsx("div", { className: "access-point-editor__entry__container", children: _jsx("div", { className: "access-point-editor__entry", children: _jsx(InlineLambdaEditor, { className: 'access-point-editor__lambda-editor', disabled: false, lambdaEditorState: lambdaEditorState, forceBackdrop: Boolean(lambdaEditorState.parserError) }) }) }), _jsx("button", { className: "access-point-editor__generic-entry__remove-btn", onClick: () => {
83
+ }), children: [_jsxs("div", { className: "access-point-editor__metadata", children: [_jsx("div", { className: clsx('access-point-editor__name', {}), children: _jsx("div", { className: "access-point-editor__name__label", children: accessPoint.id }) }), _jsx("div", { className: "access-point-editor__info", children: _jsx("div", { className: clsx('access-point-editor__type'), title: accessPoint.targetEnvironment, children: _jsx("div", { className: "access-point-editor__type__label", children: accessPoint.targetEnvironment }) }) })] }), _jsx("div", { className: "access-point-editor__content", children: _jsxs("div", { className: "access-point-editor__generic-entry", children: [_jsx("div", { className: "access-point-editor__entry__container", children: _jsx("div", { className: "access-point-editor__entry", children: _jsx(InlineLambdaEditor, { className: 'access-point-editor__lambda-editor', disabled: lambdaEditorState.val.state
84
+ .isConvertingTransformLambdaObjects, lambdaEditorState: lambdaEditorState, forceBackdrop: Boolean(lambdaEditorState.parserError) }) }) }), _jsx("button", { className: "access-point-editor__generic-entry__remove-btn", onClick: () => {
83
85
  productEditorState.deleteAccessPoint(accessPointState);
84
86
  }, tabIndex: -1, title: "Remove", children: _jsx(TimesIcon, {}) })] }) })] }));
85
87
  });
@@ -105,9 +107,11 @@ export const DataProductEditor = observer(() => {
105
107
  const openNewModal = () => {
106
108
  dataProductEditorState.setAccessPointModal(true);
107
109
  };
108
- return (_jsx("div", { className: "data-product-editor", children: _jsxs("div", { className: "panel", children: [_jsx("div", { className: "panel__header", children: _jsxs("div", { className: "panel__header__title", children: [isReadOnly && (_jsx("div", { className: "uml-element-editor__header__lock", children: _jsx(LockIcon, {}) })), _jsx("div", { className: "panel__header__title__label", children: "data product" }), _jsx("div", { className: "panel__header__title__content", children: product.name })] }) }), _jsxs("div", { className: "panel", children: [_jsxs(PanelHeader, { children: [_jsx("div", { className: "panel__header__title", children: _jsx("div", { className: "panel__header__title__content", children: "ACCESS POINTS" }) }), _jsx(PanelHeaderActions, { children: _jsx(PanelHeaderActionItem, { className: "panel__header__action", onClick: openNewModal, disabled: isReadOnly, title: "Create new access point", children: _jsx(PlusIcon, {}) }) })] }), _jsxs(PanelContent, { children: [!isReadOnly &&
109
- accessPointStates
110
- .filter(filterByType(LakehouseAccessPointState))
111
- .map((apState) => (_jsx(LakehouseDataProductAcccessPointEditor, { isReadOnly: isReadOnly, accessPointState: apState }, apState.accessPoint.id))), !accessPointStates.length && (_jsx(DataProductEditorSplashScreen, { dataProductEditorState: dataProductEditorState }))] }), dataProductEditorState.accessPointModal && (_jsx(NewAccessPointAccessPOint, { dataProductEditorState: dataProductEditorState }))] })] }) }));
110
+ useEffect(() => {
111
+ flowResult(dataProductEditorState.convertAccessPointsFuncObjects()).catch(dataProductEditorState.editorStore.applicationStore.alertUnhandledError);
112
+ }, [dataProductEditorState]);
113
+ return (_jsx("div", { className: "data-product-editor", children: _jsxs("div", { className: "panel", children: [_jsx("div", { className: "panel__header", children: _jsxs("div", { className: "panel__header__title", children: [isReadOnly && (_jsx("div", { className: "uml-element-editor__header__lock", children: _jsx(LockIcon, {}) })), _jsx("div", { className: "panel__header__title__label", children: "data product" }), _jsx("div", { className: "panel__header__title__content", children: product.name })] }) }), _jsxs("div", { className: "panel", children: [_jsxs(PanelHeader, { children: [_jsx("div", { className: "panel__header__title", children: _jsx("div", { className: "panel__header__title__content", children: "ACCESS POINTS" }) }), _jsx(PanelHeaderActions, { children: _jsx(PanelHeaderActionItem, { className: "panel__header__action", onClick: openNewModal, disabled: isReadOnly, title: "Create new access point", children: _jsx(PlusIcon, {}) }) })] }), _jsxs(PanelContent, { children: [accessPointStates
114
+ .filter(filterByType(LakehouseAccessPointState))
115
+ .map((apState) => (_jsx(LakehouseDataProductAcccessPointEditor, { isReadOnly: isReadOnly, accessPointState: apState }, apState.accessPoint.id))), !accessPointStates.length && (_jsx(DataProductEditorSplashScreen, { dataProductEditorState: dataProductEditorState }))] }), dataProductEditorState.accessPointModal && (_jsx(NewAccessPointAccessPOint, { dataProductEditorState: dataProductEditorState }))] })] }) }));
112
116
  });
113
117
  //# sourceMappingURL=DataPoductEditor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DataPoductEditor.js","sourceRoot":"","sources":["../../../../../src/components/editor/editor-group/dataProduct/DataPoductEditor.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EACL,sBAAsB,EACtB,yBAAyB,GAC1B,MAAM,mGAAmG,CAAC;AAC3G,OAAO,EACL,IAAI,EACJ,QAAQ,EACR,YAAY,EACZ,WAAW,EACX,kBAAkB,EAClB,MAAM,EACN,YAAY,EACZ,yBAAyB,EACzB,iBAAiB,EACjB,eAAe,EACf,SAAS,EACT,QAAQ,EACR,qBAAqB,GACtB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAEjE,MAAM,yBAAyB,GAAG,QAAQ,CACxC,CAAC,KAAyD,EAAE,EAAE;IAC5D,MAAM,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,GAAG,KAAK,CAAC;IACjE,MAAM,mBAAmB,GAAG,MAAM,CAAmB,IAAI,CAAC,CAAC;IAC3D,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,GAAG,QAAQ,CAAqB,SAAS,CAAC,CAAC;IAC5D,MAAM,cAAc,GAA+C,CACjE,KAAK,EACL,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC/B,MAAM,WAAW,GAAG,GAAG,EAAE;QACvB,sBAAsB,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;IACpD,CAAC,CAAC;IACF,MAAM,YAAY,GAAG,GAAG,EAAE;QACxB,IAAI,EAAE,EAAE,CAAC;YACP,sBAAsB,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;YAC1C,WAAW,EAAE,CAAC;QAChB,CAAC;IACH,CAAC,CAAC;IACF,MAAM,WAAW,GAAG,GAAS,EAAE;QAC7B,mBAAmB,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC;IACvC,CAAC,CAAC;IACF,MAAM,mBAAmB,GACvB,EAAE,KAAK,EAAE;QACT,EAAE,KAAK,SAAS;QAChB,sBAAsB,CAAC,iBAAiB;aACrC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC;aAC5B,QAAQ,CAAC,EAAE,CAAC,CAAC;IAClB,MAAM,MAAM,GACV,EAAE,KAAK,EAAE;QACP,CAAC,CAAC,aAAa;QACf,CAAC,CAAC,sBAAsB,CAAC,iBAAiB;aACnC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC;aAC5B,QAAQ,CAAC,EAAE,IAAI,EAAE,CAAC;YACvB,CAAC,CAAC,mBAAmB;YACrB,CAAC,CAAC,SAAS,CAAC;IAClB,OAAO,CACL,KAAC,MAAM,IACL,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,WAAW,EACpB,eAAe,EAAE;YACf,OAAO,EAAE,WAAW;SACrB,EACD,OAAO,EAAE;YACP,SAAS,EAAE,yBAAyB;SACrC,EACD,UAAU,EAAE;YACV,OAAO,EAAE;gBACP,IAAI,EAAE,+BAA+B;aACtC;SACF,YAED,gBACE,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;gBAClB,KAAK,CAAC,cAAc,EAAE,CAAC;gBACvB,YAAY,EAAE,CAAC;YACjB,CAAC,EACD,SAAS,EAAE,IAAI,CAAC,oBAAoB,EAAE;gBACpC,aAAa,EAAE,IAAI;aACpB,CAAC,aAEF,cAAK,SAAS,EAAC,cAAc,iCAAuB,EACpD,wBACE,KAAC,yBAAyB,IACxB,SAAS,EAAE,IAAI,CAAC,wCAAwC,EAAE;4BACxD,aAAa,EAAE,IAAI;yBACpB,CAAC,EACF,GAAG,EAAE,mBAAmB,EACxB,UAAU,EAAE,KAAK,EACjB,KAAK,EAAE,EAAE,EACT,QAAQ,EAAE,cAAc,EACxB,WAAW,EAAC,iBAAiB,EAC7B,KAAK,EAAE,MAAM,GACb,GACE,EACN,KAAC,YAAY,KAAG,EAChB,cAAK,SAAS,EAAC,uBAAuB,YACpC,iBACE,SAAS,EAAE,IAAI,CAAC,kBAAkB,EAAE;4BAClC,WAAW,EAAE,IAAI;yBAClB,CAAC,EACF,QAAQ,EAAE,mBAAmB,uBAGtB,GACL,IACD,GACA,CACV,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,MAAM,CAAC,MAAM,sCAAsC,GAAG,QAAQ,CAC5D,CAAC,KAGA,EAAE,EAAE;IACH,MAAM,EAAE,gBAAgB,EAAE,GAAG,KAAK,CAAC;IACnC,MAAM,WAAW,GAAG,gBAAgB,CAAC,WAAW,CAAC;IACjD,MAAM,kBAAkB,GAAG,gBAAgB,CAAC,KAAK,CAAC;IAClD,MAAM,iBAAiB,GAAG,gBAAgB,CAAC,WAAW,CAAC;IACvD,MAAM,sBAAsB,GAAG,kBAAkB,CAAC,iBAAiB;SAChE,MAAM,CAAC,YAAY,CAAC,yBAAyB,CAAC,CAAC;SAC/C,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;IAC5C,OAAO,CACL,eACE,SAAS,EAAE,IAAI,CAAC,qBAAqB,EAAE;YACrC,iBAAiB,EAAE,sBAAsB;SAC1C,CAAC,aAEF,eAAK,SAAS,EAAC,+BAA+B,aAC5C,cAAK,SAAS,EAAE,IAAI,CAAC,2BAA2B,EAAE,EAAE,CAAC,YACnD,cAAK,SAAS,EAAC,kCAAkC,YAC9C,WAAW,CAAC,EAAE,GACX,GACF,EACN,cAAK,SAAS,EAAC,2BAA2B,YACxC,cACE,SAAS,EAAE,IAAI,CAAC,2BAA2B,CAAC,EAC5C,KAAK,EAAE,WAAW,CAAC,iBAAiB,YAEpC,cAAK,SAAS,EAAC,kCAAkC,YAC9C,WAAW,CAAC,iBAAiB,GAC1B,GACF,GACF,IACF,EACN,cAAK,SAAS,EAAC,8BAA8B,YAC3C,eAAK,SAAS,EAAC,oCAAoC,aACjD,cAAK,SAAS,EAAC,uCAAuC,YACpD,cAAK,SAAS,EAAC,4BAA4B,YACzC,KAAC,kBAAkB,IACjB,SAAS,EAAE,oCAAoC,EAC/C,QAAQ,EAAE,KAAK,EACf,iBAAiB,EAAE,iBAAiB,EACpC,aAAa,EAAE,OAAO,CAAC,iBAAiB,CAAC,WAAW,CAAC,GACrD,GACE,GACF,EACN,iBACE,SAAS,EAAC,gDAAgD,EAC1D,OAAO,EAAE,GAAG,EAAE;gCACZ,kBAAkB,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,CAAC;4BACzD,CAAC,EACD,QAAQ,EAAE,CAAC,CAAC,EACZ,KAAK,EAAC,QAAQ,YAEd,KAAC,SAAS,KAAG,GACN,IACL,GACF,IACF,CACP,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,MAAM,6BAA6B,GAAG,QAAQ,CAC5C,CAAC,KAAyD,EAAE,EAAE;IAC5D,MAAM,EAAE,sBAAsB,EAAE,GAAG,KAAK,CAAC;IACzC,MAAM,SAAS,GAAG,GAAG,CAAC;IACtB,MAAM,UAAU,GAAG,GAAG,CAAC;IACvB,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAChD,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,iBAAiB,EAAkB,CAAC;IAEnE,SAAS,CAAC,GAAG,EAAE;QACb,WAAW,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,GAAG,SAAS,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC,GAAG,UAAU,CAAC,CAAC;IACtE,CAAC,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;IAEpB,OAAO,CACL,eAAK,GAAG,EAAE,GAAG,EAAE,SAAS,EAAC,oCAAoC,aAC3D,cACE,OAAO,EAAE,GAAG,EAAE,CAAC,sBAAsB,CAAC,mBAAmB,CAAC,IAAI,CAAC,EAC/D,SAAS,EAAC,2CAA2C,iCAGjD,EACN,cAAK,SAAS,EAAC,6CAA6C,GAAO,EACnE,cACE,OAAO,EAAE,GAAG,EAAE,CAAC,sBAAsB,CAAC,mBAAmB,CAAC,IAAI,CAAC,EAC/D,KAAK,EAAC,sBAAsB,EAC5B,SAAS,EAAE,IAAI,CAAC,0CAA0C,EAAE;oBAC1D,kDAAkD,EAAE,CAAC,QAAQ;iBAC9D,CAAC,YAEF,KAAC,eAAe,KAAG,GACf,IACF,CACP,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAG,QAAQ,CAAC,GAAG,EAAE;IAC7C,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IACrC,MAAM,sBAAsB,GAC1B,WAAW,CAAC,eAAe,CAAC,qBAAqB,CAAC,sBAAsB,CAAC,CAAC;IAC5E,MAAM,OAAO,GAAG,sBAAsB,CAAC,OAAO,CAAC;IAC/C,MAAM,iBAAiB,GAAG,sBAAsB,CAAC,iBAAiB,CAAC;IACnE,MAAM,UAAU,GAAG,sBAAsB,CAAC,UAAU,CAAC;IACrD,MAAM,YAAY,GAAG,GAAG,EAAE;QACxB,sBAAsB,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;IACnD,CAAC,CAAC;IACF,OAAO,CACL,cAAK,SAAS,EAAC,qBAAqB,YAClC,eAAK,SAAS,EAAC,OAAO,aACpB,cAAK,SAAS,EAAC,eAAe,YAC5B,eAAK,SAAS,EAAC,sBAAsB,aAClC,UAAU,IAAI,CACb,cAAK,SAAS,EAAC,kCAAkC,YAC/C,KAAC,QAAQ,KAAG,GACR,CACP,EACD,cAAK,SAAS,EAAC,6BAA6B,6BAAmB,EAC/D,cAAK,SAAS,EAAC,+BAA+B,YAAE,OAAO,CAAC,IAAI,GAAO,IAC/D,GACF,EACN,eAAK,SAAS,EAAC,OAAO,aACpB,MAAC,WAAW,eACV,cAAK,SAAS,EAAC,sBAAsB,YACnC,cAAK,SAAS,EAAC,+BAA+B,8BAAoB,GAC9D,EACN,KAAC,kBAAkB,cACjB,KAAC,qBAAqB,IACpB,SAAS,EAAC,uBAAuB,EACjC,OAAO,EAAE,YAAY,EACrB,QAAQ,EAAE,UAAU,EACpB,KAAK,EAAC,yBAAyB,YAE/B,KAAC,QAAQ,KAAG,GACU,GACL,IACT,EACd,MAAC,YAAY,eACV,CAAC,UAAU;oCACV,iBAAiB;yCACd,MAAM,CAAC,YAAY,CAAC,yBAAyB,CAAC,CAAC;yCAC/C,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAChB,KAAC,sCAAsC,IAErC,UAAU,EAAE,UAAU,EACtB,gBAAgB,EAAE,OAAO,IAFpB,OAAO,CAAC,WAAW,CAAC,EAAE,CAG3B,CACH,CAAC,EACL,CAAC,iBAAiB,CAAC,MAAM,IAAI,CAC5B,KAAC,6BAA6B,IAC5B,sBAAsB,EAAE,sBAAsB,GAC9C,CACH,IACY,EACd,sBAAsB,CAAC,gBAAgB,IAAI,CAC1C,KAAC,yBAAyB,IACxB,sBAAsB,EAAE,sBAAsB,GAC9C,CACH,IACG,IACF,GACF,CACP,CAAC;AACJ,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"DataPoductEditor.js","sourceRoot":"","sources":["../../../../../src/components/editor/editor-group/dataProduct/DataPoductEditor.tsx"],"names":[],"mappings":"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"}
package/lib/index.css CHANGED
@@ -1,4 +1,4 @@
1
- /** @license @finos/legend-application-studio v28.18.114
1
+ /** @license @finos/legend-application-studio v28.18.116
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.114",
3
+ "version": "28.18.116",
4
4
  "description": "Legend Studio application core",
5
5
  "keywords": [
6
6
  "legend",
@@ -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';
@@ -42,11 +42,14 @@ export declare class LakehouseAccessPointState extends AccessPointState {
42
42
  export declare class DataProductEditorState extends ElementEditorState {
43
43
  accessPointModal: boolean;
44
44
  accessPointStates: AccessPointState[];
45
+ isConvertingTransformLambdaObjects: boolean;
45
46
  constructor(editorStore: EditorStore, element: PackageableElement);
47
+ convertAccessPointsFuncObjects(): GeneratorFn<void>;
46
48
  buildAccessPointState(val: AccessPoint): AccessPointState;
47
49
  setAccessPointModal(val: boolean): void;
48
50
  deleteAccessPoint(val: AccessPointState): void;
49
51
  addAccessPoint(id: string): void;
52
+ createBareGroupAndAdd(): AccessPointGroup;
50
53
  get product(): DataProduct;
51
54
  get accessPoints(): AccessPoint[];
52
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,EAIjB,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;CA+BtB;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;gBAE/B,WAAW,EAAE,WAAW,EAAE,OAAO,EAAE,kBAAkB;IAgBjE,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
- import { action, computed, makeObservable, observable } from 'mobx';
19
- import { guaranteeType, addUniqueEntry, assertErrorThrown, LogEvent, deleteEntry, } from '@finos/legend-shared';
20
- import { dataProduct_addAccessPoint, dataProduct_deleteAccessPoint, } from '../../../../graph-modifier/DSL_DataProduct_GraphModifierHelper.js';
18
+ import { action, computed, flow, makeObservable, observable } from 'mobx';
19
+ import { guaranteeType, addUniqueEntry, assertErrorThrown, LogEvent, deleteEntry, filterByType, } from '@finos/legend-shared';
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;
@@ -60,7 +60,8 @@ export class AccessPointLambdaEditorState extends LambdaEditorState {
60
60
  }
61
61
  }
62
62
  *convertLambdaObjectToGrammarString(options) {
63
- if (!isStubbed_RawLambda(this.val.accessPoint.func)) {
63
+ if (!isStubbed_RawLambda(this.val.accessPoint.func) &&
64
+ !this.val.state.isConvertingTransformLambdaObjects) {
64
65
  try {
65
66
  const lambdas = new Map();
66
67
  lambdas.set(this.lambdaId, this.val.accessPoint.func);
@@ -98,6 +99,7 @@ export class LakehouseAccessPointState extends AccessPointState {
98
99
  export class DataProductEditorState extends ElementEditorState {
99
100
  accessPointModal = false;
100
101
  accessPointStates = [];
102
+ isConvertingTransformLambdaObjects = false;
101
103
  constructor(editorStore, element) {
102
104
  super(editorStore, element);
103
105
  makeObservable(this, {
@@ -105,10 +107,43 @@ export class DataProductEditorState extends ElementEditorState {
105
107
  accessPointModal: observable,
106
108
  accessPointStates: observable,
107
109
  deleteAccessPoint: observable,
110
+ isConvertingTransformLambdaObjects: observable,
108
111
  setAccessPointModal: action,
109
112
  addAccessPoint: action,
113
+ convertAccessPointsFuncObjects: flow,
110
114
  });
111
- 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));
119
+ }
120
+ *convertAccessPointsFuncObjects() {
121
+ const lambdas = new Map();
122
+ const index = new Map();
123
+ const states = this.accessPointStates.filter(filterByType(LakehouseAccessPointState));
124
+ states.forEach((pm) => {
125
+ if (!isStubbed_RawLambda(pm.accessPoint.func)) {
126
+ lambdas.set(pm.lambdaState.lambdaId, pm.accessPoint.func);
127
+ index.set(pm.lambdaState.lambdaId, pm);
128
+ }
129
+ });
130
+ if (lambdas.size) {
131
+ this.isConvertingTransformLambdaObjects = true;
132
+ try {
133
+ const isolatedLambdas = (yield this.editorStore.graphManagerState.graphManager.lambdasToPureCode(lambdas));
134
+ isolatedLambdas.forEach((grammarText, key) => {
135
+ const purePropertyMapping = index.get(key);
136
+ purePropertyMapping?.lambdaState.setLambdaString(purePropertyMapping.lambdaState.extractLambdaString(grammarText));
137
+ });
138
+ }
139
+ catch (error) {
140
+ assertErrorThrown(error);
141
+ this.editorStore.applicationStore.logService.error(LogEvent.create(GRAPH_MANAGER_EVENT.PARSING_FAILURE), error);
142
+ }
143
+ finally {
144
+ this.isConvertingTransformLambdaObjects = false;
145
+ }
146
+ }
112
147
  }
113
148
  buildAccessPointState(val) {
114
149
  if (val instanceof LakehouseAccessPoint) {
@@ -121,19 +156,30 @@ export class DataProductEditorState extends ElementEditorState {
121
156
  }
122
157
  deleteAccessPoint(val) {
123
158
  const ap = val.accessPoint;
124
- dataProduct_deleteAccessPoint(this.product, ap);
125
- 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
+ }
126
165
  }
127
166
  addAccessPoint(id) {
128
167
  const accesspoint = new LakehouseAccessPoint(id, LakehouseTargetEnv.Snowflake, stub_RawLambda());
129
- dataProduct_addAccessPoint(this.product, accesspoint);
168
+ const group = this.product.accessPointGroups[0] ?? this.createBareGroupAndAdd();
169
+ dataProduct_addAccessPoint(group, accesspoint);
130
170
  addUniqueEntry(this.accessPointStates, this.buildAccessPointState(accesspoint));
131
171
  }
172
+ createBareGroupAndAdd() {
173
+ const group = new AccessPointGroup();
174
+ group.id = 'default';
175
+ dataProduct_addAccessPointGroup(this.product, group);
176
+ return group;
177
+ }
132
178
  get product() {
133
179
  return guaranteeType(this.element, DataProduct, 'Element inside data product editor state must be a data product');
134
180
  }
135
181
  get accessPoints() {
136
- return this.product.accessPoints;
182
+ return this.product.accessPointGroups.map((e) => e.accessPoints).flat();
137
183
  }
138
184
  reprocess(newElement, editorStore) {
139
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.114",
3
+ "version": "28.18.116",
4
4
  "description": "Legend Studio application core",
5
5
  "keywords": [
6
6
  "legend",
@@ -47,11 +47,11 @@
47
47
  "dependencies": {
48
48
  "@finos/legend-application": "16.0.36",
49
49
  "@finos/legend-art": "7.1.93",
50
- "@finos/legend-code-editor": "2.0.61",
51
- "@finos/legend-data-cube": "0.1.24",
52
- "@finos/legend-graph": "32.1.19",
53
- "@finos/legend-lego": "2.0.65",
54
- "@finos/legend-query-builder": "4.16.25",
50
+ "@finos/legend-code-editor": "2.0.63",
51
+ "@finos/legend-data-cube": "0.1.26",
52
+ "@finos/legend-graph": "32.1.21",
53
+ "@finos/legend-lego": "2.0.67",
54
+ "@finos/legend-query-builder": "4.16.27",
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",
@@ -38,6 +38,7 @@ import {
38
38
  import { useRef, useState, useEffect } from 'react';
39
39
  import { filterByType } from '@finos/legend-shared';
40
40
  import { InlineLambdaEditor } from '@finos/legend-query-builder';
41
+ import { flowResult } from 'mobx';
41
42
 
42
43
  const NewAccessPointAccessPOint = observer(
43
44
  (props: { dataProductEditorState: DataProductEditorState }) => {
@@ -170,7 +171,10 @@ export const LakehouseDataProductAcccessPointEditor = observer(
170
171
  <div className="access-point-editor__entry">
171
172
  <InlineLambdaEditor
172
173
  className={'access-point-editor__lambda-editor'}
173
- disabled={false}
174
+ disabled={
175
+ lambdaEditorState.val.state
176
+ .isConvertingTransformLambdaObjects
177
+ }
174
178
  lambdaEditorState={lambdaEditorState}
175
179
  forceBackdrop={Boolean(lambdaEditorState.parserError)}
176
180
  />
@@ -238,6 +242,13 @@ export const DataProductEditor = observer(() => {
238
242
  const openNewModal = () => {
239
243
  dataProductEditorState.setAccessPointModal(true);
240
244
  };
245
+
246
+ useEffect(() => {
247
+ flowResult(dataProductEditorState.convertAccessPointsFuncObjects()).catch(
248
+ dataProductEditorState.editorStore.applicationStore.alertUnhandledError,
249
+ );
250
+ }, [dataProductEditorState]);
251
+
241
252
  return (
242
253
  <div className="data-product-editor">
243
254
  <div className="panel">
@@ -269,16 +280,15 @@ export const DataProductEditor = observer(() => {
269
280
  </PanelHeaderActions>
270
281
  </PanelHeader>
271
282
  <PanelContent>
272
- {!isReadOnly &&
273
- accessPointStates
274
- .filter(filterByType(LakehouseAccessPointState))
275
- .map((apState) => (
276
- <LakehouseDataProductAcccessPointEditor
277
- key={apState.accessPoint.id}
278
- isReadOnly={isReadOnly}
279
- accessPointState={apState}
280
- />
281
- ))}
283
+ {accessPointStates
284
+ .filter(filterByType(LakehouseAccessPointState))
285
+ .map((apState) => (
286
+ <LakehouseDataProductAcccessPointEditor
287
+ key={apState.accessPoint.id}
288
+ isReadOnly={isReadOnly}
289
+ accessPointState={apState}
290
+ />
291
+ ))}
282
292
  {!accessPointStates.length && (
283
293
  <DataProductEditorSplashScreen
284
294
  dataProductEditorState={dataProductEditorState}
@@ -26,10 +26,11 @@ 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';
32
- import { action, computed, makeObservable, observable } from 'mobx';
33
+ import { action, computed, flow, makeObservable, observable } from 'mobx';
33
34
  import {
34
35
  guaranteeType,
35
36
  addUniqueEntry,
@@ -37,9 +38,11 @@ import {
37
38
  assertErrorThrown,
38
39
  LogEvent,
39
40
  deleteEntry,
41
+ filterByType,
40
42
  } from '@finos/legend-shared';
41
43
  import {
42
44
  dataProduct_addAccessPoint,
45
+ dataProduct_addAccessPointGroup,
43
46
  dataProduct_deleteAccessPoint,
44
47
  } from '../../../../graph-modifier/DSL_DataProduct_GraphModifierHelper.js';
45
48
  import { LambdaEditorState } from '@finos/legend-query-builder';
@@ -99,7 +102,10 @@ export class AccessPointLambdaEditorState extends LambdaEditorState {
99
102
  pretty?: boolean | undefined;
100
103
  preserveCompilationError?: boolean | undefined;
101
104
  }): GeneratorFn<void> {
102
- if (!isStubbed_RawLambda(this.val.accessPoint.func)) {
105
+ if (
106
+ !isStubbed_RawLambda(this.val.accessPoint.func) &&
107
+ !this.val.state.isConvertingTransformLambdaObjects
108
+ ) {
103
109
  try {
104
110
  const lambdas = new Map<string, RawLambda>();
105
111
  lambdas.set(this.lambdaId, this.val.accessPoint.func);
@@ -147,6 +153,7 @@ export class LakehouseAccessPointState extends AccessPointState {
147
153
  export class DataProductEditorState extends ElementEditorState {
148
154
  accessPointModal = false;
149
155
  accessPointStates: AccessPointState[] = [];
156
+ isConvertingTransformLambdaObjects = false;
150
157
 
151
158
  constructor(editorStore: EditorStore, element: PackageableElement) {
152
159
  super(editorStore, element);
@@ -156,12 +163,52 @@ export class DataProductEditorState extends ElementEditorState {
156
163
  accessPointModal: observable,
157
164
  accessPointStates: observable,
158
165
  deleteAccessPoint: observable,
166
+ isConvertingTransformLambdaObjects: observable,
159
167
  setAccessPointModal: action,
160
168
  addAccessPoint: action,
169
+ convertAccessPointsFuncObjects: flow,
161
170
  });
162
- this.accessPointStates = this.product.accessPoints.map((e) =>
163
- this.buildAccessPointState(e),
171
+ this.accessPointStates = this.product.accessPointGroups
172
+ .map((e) => e.accessPoints)
173
+ .flat()
174
+ .map((e) => this.buildAccessPointState(e));
175
+ }
176
+
177
+ *convertAccessPointsFuncObjects(): GeneratorFn<void> {
178
+ const lambdas = new Map<string, RawLambda>();
179
+ const index = new Map<string, LakehouseAccessPointState>();
180
+ const states = this.accessPointStates.filter(
181
+ filterByType(LakehouseAccessPointState),
164
182
  );
183
+ states.forEach((pm) => {
184
+ if (!isStubbed_RawLambda(pm.accessPoint.func)) {
185
+ lambdas.set(pm.lambdaState.lambdaId, pm.accessPoint.func);
186
+ index.set(pm.lambdaState.lambdaId, pm);
187
+ }
188
+ });
189
+ if (lambdas.size) {
190
+ this.isConvertingTransformLambdaObjects = true;
191
+ try {
192
+ const isolatedLambdas =
193
+ (yield this.editorStore.graphManagerState.graphManager.lambdasToPureCode(
194
+ lambdas,
195
+ )) as Map<string, string>;
196
+ isolatedLambdas.forEach((grammarText, key) => {
197
+ const purePropertyMapping = index.get(key);
198
+ purePropertyMapping?.lambdaState.setLambdaString(
199
+ purePropertyMapping.lambdaState.extractLambdaString(grammarText),
200
+ );
201
+ });
202
+ } catch (error) {
203
+ assertErrorThrown(error);
204
+ this.editorStore.applicationStore.logService.error(
205
+ LogEvent.create(GRAPH_MANAGER_EVENT.PARSING_FAILURE),
206
+ error,
207
+ );
208
+ } finally {
209
+ this.isConvertingTransformLambdaObjects = false;
210
+ }
211
+ }
165
212
  }
166
213
 
167
214
  buildAccessPointState(val: AccessPoint): AccessPointState {
@@ -177,8 +224,14 @@ export class DataProductEditorState extends ElementEditorState {
177
224
 
178
225
  deleteAccessPoint(val: AccessPointState): void {
179
226
  const ap = val.accessPoint;
180
- dataProduct_deleteAccessPoint(this.product, ap);
181
- 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
+ }
182
235
  }
183
236
 
184
237
  addAccessPoint(id: string): void {
@@ -187,13 +240,23 @@ export class DataProductEditorState extends ElementEditorState {
187
240
  LakehouseTargetEnv.Snowflake,
188
241
  stub_RawLambda(),
189
242
  );
190
- dataProduct_addAccessPoint(this.product, accesspoint);
243
+
244
+ const group =
245
+ this.product.accessPointGroups[0] ?? this.createBareGroupAndAdd();
246
+ dataProduct_addAccessPoint(group, accesspoint);
191
247
  addUniqueEntry(
192
248
  this.accessPointStates,
193
249
  this.buildAccessPointState(accesspoint),
194
250
  );
195
251
  }
196
252
 
253
+ createBareGroupAndAdd(): AccessPointGroup {
254
+ const group = new AccessPointGroup();
255
+ group.id = 'default';
256
+ dataProduct_addAccessPointGroup(this.product, group);
257
+ return group;
258
+ }
259
+
197
260
  get product(): DataProduct {
198
261
  return guaranteeType(
199
262
  this.element,
@@ -203,7 +266,7 @@ export class DataProductEditorState extends ElementEditorState {
203
266
  }
204
267
 
205
268
  get accessPoints(): AccessPoint[] {
206
- return this.product.accessPoints;
269
+ return this.product.accessPointGroups.map((e) => e.accessPoints).flat();
207
270
  }
208
271
 
209
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
+ );