@finos/legend-extension-dsl-data-product 0.0.66 → 0.0.68

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 (56) hide show
  1. package/lib/components/Core_DataProductDataAccess_LegendApplicationPlugin.d.ts.map +1 -1
  2. package/lib/components/Core_DataProductDataAccess_LegendApplicationPlugin.js +13 -4
  3. package/lib/components/Core_DataProductDataAccess_LegendApplicationPlugin.js.map +1 -1
  4. package/lib/components/DataProduct/DataContract/EntitlementsDataContractCreator.d.ts.map +1 -1
  5. package/lib/components/DataProduct/DataContract/EntitlementsDataContractCreator.js +17 -5
  6. package/lib/components/DataProduct/DataContract/EntitlementsDataContractCreator.js.map +1 -1
  7. package/lib/components/DataProduct/DataProductDataAccess.d.ts +7 -1
  8. package/lib/components/DataProduct/DataProductDataAccess.d.ts.map +1 -1
  9. package/lib/components/DataProduct/DataProductDataAccess.js +130 -68
  10. package/lib/components/DataProduct/DataProductDataAccess.js.map +1 -1
  11. package/lib/components/__test-utils__/TEST_DATA__LakehouseDataProducts.d.ts +4 -0
  12. package/lib/components/__test-utils__/TEST_DATA__LakehouseDataProducts.d.ts.map +1 -1
  13. package/lib/components/__test-utils__/TEST_DATA__LakehouseDataProducts.js +120 -0
  14. package/lib/components/__test-utils__/TEST_DATA__LakehouseDataProducts.js.map +1 -1
  15. package/lib/index.css +2 -2
  16. package/lib/index.css.map +1 -1
  17. package/lib/index.d.ts +1 -0
  18. package/lib/index.d.ts.map +1 -1
  19. package/lib/index.js +1 -0
  20. package/lib/index.js.map +1 -1
  21. package/lib/package.json +1 -1
  22. package/lib/stores/DataProduct/DataAccess/DataAccessRequestState.d.ts +2 -2
  23. package/lib/stores/DataProduct/DataAccess/DataAccessRequestState.d.ts.map +1 -1
  24. package/lib/stores/DataProduct/DataAccess/WorkflowDataAccessRequestState.d.ts +59 -0
  25. package/lib/stores/DataProduct/DataAccess/WorkflowDataAccessRequestState.d.ts.map +1 -0
  26. package/lib/stores/DataProduct/DataAccess/WorkflowDataAccessRequestState.js +339 -0
  27. package/lib/stores/DataProduct/DataAccess/WorkflowDataAccessRequestState.js.map +1 -0
  28. package/lib/stores/DataProduct/DataProductAPGState.d.ts +2 -3
  29. package/lib/stores/DataProduct/DataProductAPGState.d.ts.map +1 -1
  30. package/lib/stores/DataProduct/DataProductAPGState.js +3 -7
  31. package/lib/stores/DataProduct/DataProductAPGState.js.map +1 -1
  32. package/lib/stores/DataProduct/DataProductAccessPointState.d.ts +11 -8
  33. package/lib/stores/DataProduct/DataProductAccessPointState.d.ts.map +1 -1
  34. package/lib/stores/DataProduct/DataProductAccessPointState.js +101 -58
  35. package/lib/stores/DataProduct/DataProductAccessPointState.js.map +1 -1
  36. package/lib/stores/DataProduct/DataProductDataAccessState.d.ts +11 -1
  37. package/lib/stores/DataProduct/DataProductDataAccessState.d.ts.map +1 -1
  38. package/lib/stores/DataProduct/DataProductDataAccessState.js +51 -1
  39. package/lib/stores/DataProduct/DataProductDataAccessState.js.map +1 -1
  40. package/lib/stores/DataProduct/DataProductViewerState.d.ts +7 -0
  41. package/lib/stores/DataProduct/DataProductViewerState.d.ts.map +1 -1
  42. package/lib/stores/DataProduct/DataProductViewerState.js +34 -7
  43. package/lib/stores/DataProduct/DataProductViewerState.js.map +1 -1
  44. package/package.json +9 -9
  45. package/src/components/Core_DataProductDataAccess_LegendApplicationPlugin.tsx +49 -37
  46. package/src/components/DataProduct/DataContract/EntitlementsDataContractCreator.tsx +76 -50
  47. package/src/components/DataProduct/DataProductDataAccess.tsx +370 -204
  48. package/src/components/__test-utils__/TEST_DATA__LakehouseDataProducts.ts +150 -0
  49. package/src/index.ts +1 -0
  50. package/src/stores/DataProduct/DataAccess/DataAccessRequestState.ts +2 -2
  51. package/src/stores/DataProduct/DataAccess/WorkflowDataAccessRequestState.ts +481 -0
  52. package/src/stores/DataProduct/DataProductAPGState.ts +5 -16
  53. package/src/stores/DataProduct/DataProductAccessPointState.ts +141 -87
  54. package/src/stores/DataProduct/DataProductDataAccessState.ts +85 -1
  55. package/src/stores/DataProduct/DataProductViewerState.ts +57 -9
  56. package/tsconfig.json +1 -0
@@ -1 +1 @@
1
- {"version":3,"file":"Core_DataProductDataAccess_LegendApplicationPlugin.d.ts","sourceRoot":"","sources":["../../src/components/Core_DataProductDataAccess_LegendApplicationPlugin.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAgBH,OAAO,EAAE,KAAK,kCAAkC,EAAE,MAAM,qDAAqD,CAAC;AAC9G,OAAO,KAAK,EAAE,uDAAuD,EAAE,MAAM,sEAAsE,CAAC;AAGpJ,OAAO,EACL,KAAK,8BAA8B,EACnC,uBAAuB,EACxB,MAAM,2BAA2B,CAAC;AAEnC,qBAAa,kDACX,SAAQ,uBACR,YAAW,uDAAuD;IAElE,MAAM,CAAC,IAAI,SAAiE;;IAS5E,OAAO,CACL,aAAa,EAAE,8BAA8B,CAAC,uBAAuB,CAAC,GACrE,IAAI;IAIP,sCAAsC,IAAI,kCAAkC,EAAE;CA2O/E"}
1
+ {"version":3,"file":"Core_DataProductDataAccess_LegendApplicationPlugin.d.ts","sourceRoot":"","sources":["../../src/components/Core_DataProductDataAccess_LegendApplicationPlugin.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAgBH,OAAO,EAEL,KAAK,kCAAkC,EACxC,MAAM,qDAAqD,CAAC;AAC7D,OAAO,KAAK,EAAE,uDAAuD,EAAE,MAAM,sEAAsE,CAAC;AAGpJ,OAAO,EACL,KAAK,8BAA8B,EACnC,uBAAuB,EACxB,MAAM,2BAA2B,CAAC;AAEnC,qBAAa,kDACX,SAAQ,uBACR,YAAW,uDAAuD;IAElE,MAAM,CAAC,IAAI,SAAiE;;IAS5E,OAAO,CACL,aAAa,EAAE,8BAA8B,CAAC,uBAAuB,CAAC,GACrE,IAAI;IAIP,sCAAsC,IAAI,kCAAkC,EAAE;CAoP/E"}
@@ -19,7 +19,7 @@ import { V1_UserType, V1_AdhocTeam, V1_ProducerScope, V1_User, } from '@finos/le
19
19
  import { LegendUser } from '@finos/legend-shared';
20
20
  import { useEffect, useState } from 'react';
21
21
  import { AccessPointGroupAccess, } from '../stores/DataProduct/DataProductAPGState.js';
22
- import {} from '../stores/DataProduct/DataProductDataAccessState.js';
22
+ import { DataAccessRequestType, } from '../stores/DataProduct/DataProductDataAccessState.js';
23
23
  import { UserSearchInput } from '@finos/legend-art';
24
24
  import { TextField } from '@mui/material';
25
25
  import { LegendApplicationPlugin, } from '@finos/legend-application';
@@ -115,17 +115,26 @@ export class Core_DataProductDataAccess_LegendApplicationPlugin extends LegendAp
115
115
  return [
116
116
  {
117
117
  type: 'User',
118
- createContractRenderer: (apgState, handleOrganizationalScopeChange, handleDescriptionChange, handleIsValidChange) => (_jsx(CommonRenderer, { type: "user", label: "User", apgState: apgState, handleOrganizationalScopeChange: handleOrganizationalScopeChange, handleDescriptionChange: handleDescriptionChange, handleIsValidChange: handleIsValidChange, enableUserSearch: true }, "user")),
118
+ createContractRenderer: (apgState, handleOrganizationalScopeChange, handleDescriptionChange, handleIsValidChange) => ({
119
+ component: (_jsx(CommonRenderer, { type: "user", label: "User", apgState: apgState, handleOrganizationalScopeChange: handleOrganizationalScopeChange, handleDescriptionChange: handleDescriptionChange, handleIsValidChange: handleIsValidChange, enableUserSearch: true }, "user")),
120
+ requestType: DataAccessRequestType.CONTRACT,
121
+ }),
119
122
  },
120
123
  {
121
124
  type: 'System Account',
122
125
  enableForEnterpriseAPGs: true,
123
- createContractRenderer: (apgState, handleOrganizationalScopeChange, handleDescriptionChange, handleIsValidChange) => (_jsx(CommonRenderer, { type: "system-account", label: "System Account", apgState: apgState, handleOrganizationalScopeChange: handleOrganizationalScopeChange, handleDescriptionChange: handleDescriptionChange, handleIsValidChange: handleIsValidChange, enableUserSearch: false }, "system-account")),
126
+ createContractRenderer: (apgState, handleOrganizationalScopeChange, handleDescriptionChange, handleIsValidChange) => ({
127
+ component: (_jsx(CommonRenderer, { type: "system-account", label: "System Account", apgState: apgState, handleOrganizationalScopeChange: handleOrganizationalScopeChange, handleDescriptionChange: handleDescriptionChange, handleIsValidChange: handleIsValidChange, enableUserSearch: false }, "system-account")),
128
+ requestType: DataAccessRequestType.CONTRACT,
129
+ }),
124
130
  },
125
131
  {
126
132
  type: 'Producer',
127
133
  enableForEnterpriseAPGs: true,
128
- createContractRenderer: (apgState, handleOrganizationalScopeChange, handleDescriptionChange, handleIsValidChange) => (_jsx(CommonRenderer, { type: "producer", label: "Producer DID", apgState: apgState, handleOrganizationalScopeChange: handleOrganizationalScopeChange, handleDescriptionChange: handleDescriptionChange, handleIsValidChange: handleIsValidChange, enableUserSearch: false }, "producer")),
134
+ createContractRenderer: (apgState, handleOrganizationalScopeChange, handleDescriptionChange, handleIsValidChange) => ({
135
+ component: (_jsx(CommonRenderer, { type: "producer", label: "Producer DID", apgState: apgState, handleOrganizationalScopeChange: handleOrganizationalScopeChange, handleDescriptionChange: handleDescriptionChange, handleIsValidChange: handleIsValidChange, enableUserSearch: false }, "producer")),
136
+ requestType: DataAccessRequestType.CONTRACT,
137
+ }),
129
138
  },
130
139
  ];
131
140
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Core_DataProductDataAccess_LegendApplicationPlugin.js","sourceRoot":"","sources":["../../src/components/Core_DataProductDataAccess_LegendApplicationPlugin.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Core_DataProductDataAccess_LegendApplicationPlugin.js","sourceRoot":"","sources":["../../src/components/Core_DataProductDataAccess_LegendApplicationPlugin.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"EntitlementsDataContractCreator.d.ts","sourceRoot":"","sources":["../../../../src/components/DataProduct/DataContract/EntitlementsDataContractCreator.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAuBH,OAAO,EAEL,KAAK,0BAA0B,EAChC,MAAM,2DAA2D,CAAC;AACnE,OAAO,EAEL,KAAK,mBAAmB,EACzB,MAAM,oDAAoD,CAAC;AAE5D,eAAO,MAAM,+BAA+B,WAClC;IACN,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,aAAa,EAAE,MAAM,MAAM,GAAG,SAAS,CAAC;IACxC,QAAQ,EAAE,mBAAmB,CAAC;IAC9B,eAAe,EAAE,0BAA0B,CAAC;CAC7C;;CAuIF,CAAC"}
1
+ {"version":3,"file":"EntitlementsDataContractCreator.d.ts","sourceRoot":"","sources":["../../../../src/components/DataProduct/DataContract/EntitlementsDataContractCreator.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAuBH,OAAO,EAGL,KAAK,0BAA0B,EAChC,MAAM,2DAA2D,CAAC;AACnE,OAAO,EAEL,KAAK,mBAAmB,EACzB,MAAM,oDAAoD,CAAC;AAE5D,eAAO,MAAM,+BAA+B,WAClC;IACN,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,aAAa,EAAE,MAAM,MAAM,GAAG,SAAS,CAAC;IACxC,QAAQ,EAAE,mBAAmB,CAAC;IAC9B,eAAe,EAAE,0BAA0B,CAAC;CAC7C;;CAgKF,CAAC"}
@@ -21,7 +21,7 @@ import { flowResult } from 'mobx';
21
21
  import { Button, ButtonGroup, Dialog, DialogActions, DialogContent, DialogTitle, } from '@mui/material';
22
22
  import { CubesLoadingIndicator, CubesLoadingIndicatorIcon, } from '@finos/legend-art';
23
23
  import { guaranteeNonNullable, isNonNullable } from '@finos/legend-shared';
24
- import {} from '../../../stores/DataProduct/DataProductDataAccessState.js';
24
+ import { DataAccessRequestType, } from '../../../stores/DataProduct/DataProductDataAccessState.js';
25
25
  import { AccessPointGroupAccess, } from '../../../stores/DataProduct/DataProductAPGState.js';
26
26
  export const EntitlementsDataContractCreator = observer((props) => {
27
27
  const { open, onClose, tokenProvider, apgState, dataAccessState } = props;
@@ -39,22 +39,34 @@ export const EntitlementsDataContractCreator = observer((props) => {
39
39
  const [consumer, setConsumer] = useState();
40
40
  const [description, setDescription] = useState();
41
41
  const [isValid, setIsValid] = useState(false);
42
- const currentConsumerTypeComponent = useMemo(() => consumerTypeRendererConfigs
42
+ const currentConsumerTypeResult = useMemo(() => consumerTypeRendererConfigs
43
43
  .find((config) => config.type === selectedConsumerType)
44
44
  ?.createContractRenderer(apgState, setConsumer, setDescription, setIsValid), [apgState, consumerTypeRendererConfigs, selectedConsumerType]);
45
+ const currentConsumerTypeComponent = currentConsumerTypeResult?.component;
46
+ const currentRequestType = currentConsumerTypeResult?.requestType ?? DataAccessRequestType.CONTRACT;
45
47
  const onCreate = () => {
46
48
  if (isValid && consumer && description) {
47
- flowResult(dataAccessState.createContract(consumer, description, accessPointGroup, tokenProvider, selectedConsumerType)).catch(viewerState.applicationStore.alertUnhandledError);
49
+ if (currentRequestType === DataAccessRequestType.WORKFLOW) {
50
+ flowResult(dataAccessState.createWorkflowRequest(consumer, description, accessPointGroup, tokenProvider, selectedConsumerType)).catch(viewerState.applicationStore.alertUnhandledError);
51
+ }
52
+ else {
53
+ flowResult(dataAccessState.createContract(consumer, description, accessPointGroup, tokenProvider, selectedConsumerType)).catch(viewerState.applicationStore.alertUnhandledError);
54
+ }
48
55
  }
49
56
  };
50
57
  const dataProductTitle = viewerState.product.title ??
51
58
  viewerState.product.path.split(ELEMENT_PATH_DELIMITER).pop();
52
- return (_jsxs(Dialog, { open: open, onClose: onClose, fullWidth: true, maxWidth: "md", children: [_jsx(DialogTitle, { children: "Data Contract Request" }), _jsxs(DialogContent, { className: "marketplace-lakehouse-entitlements__data-contract-creator__content", children: [_jsx(CubesLoadingIndicator, { isLoading: dataAccessState.creatingContractState.isInProgress, children: _jsx(CubesLoadingIndicatorIcon, {}) }), !dataAccessState.creatingContractState.isInProgress && (_jsxs(_Fragment, { children: [_jsxs("div", { children: ["Submit access request for", ' ', _jsx("span", { className: "marketplace-lakehouse-text__emphasis", children: accessPointGroup.id }), ' ', "Access Point Group in", ' ', _jsx("span", { className: "marketplace-lakehouse-text__emphasis", children: dataProductTitle }), ' ', "Data Product"] }), _jsx(ButtonGroup, { className: "marketplace-lakehouse-entitlements__data-contract-creator__consumer-type-btn-group", variant: "contained", children: consumerTypeRendererConfigs.map((config) => (_jsx(Button, { variant: selectedConsumerType === config.type
59
+ return (_jsxs(Dialog, { open: open, onClose: onClose, fullWidth: true, maxWidth: "md", children: [_jsx(DialogTitle, { children: "Data Contract Request" }), _jsxs(DialogContent, { className: "marketplace-lakehouse-entitlements__data-contract-creator__content", children: [_jsx(CubesLoadingIndicator, { isLoading: dataAccessState.creatingContractState.isInProgress ||
60
+ dataAccessState.creatingWorkflowRequestState.isInProgress, children: _jsx(CubesLoadingIndicatorIcon, {}) }), !dataAccessState.creatingContractState.isInProgress &&
61
+ !dataAccessState.creatingWorkflowRequestState.isInProgress && (_jsxs(_Fragment, { children: [_jsxs("div", { children: ["Submit access request for", ' ', _jsx("span", { className: "marketplace-lakehouse-text__emphasis", children: accessPointGroup.id }), ' ', "Access Point Group in", ' ', _jsx("span", { className: "marketplace-lakehouse-text__emphasis", children: dataProductTitle }), ' ', "Data Product"] }), _jsx(ButtonGroup, { className: "marketplace-lakehouse-entitlements__data-contract-creator__consumer-type-btn-group", variant: "contained", children: consumerTypeRendererConfigs.map((config) => (_jsx(Button, { variant: selectedConsumerType === config.type
53
62
  ? 'contained'
54
63
  : 'outlined', onClick: () => {
55
64
  if (config.type !== selectedConsumerType) {
56
65
  setSelectedConsumerType(config.type);
57
66
  }
58
- }, children: config.type }, config.type))) }), currentConsumerTypeComponent] }))] }), _jsxs(DialogActions, { children: [_jsx(Button, { onClick: onCreate, variant: "contained", disabled: dataAccessState.creatingContractState.isInProgress || !isValid, children: "Create" }), _jsx(Button, { onClick: onClose, variant: "outlined", disabled: dataAccessState.creatingContractState.isInProgress, children: "Cancel" })] })] }));
67
+ }, children: config.type }, config.type))) }), currentConsumerTypeComponent] }))] }), _jsxs(DialogActions, { children: [_jsx(Button, { onClick: onCreate, variant: "contained", disabled: dataAccessState.creatingContractState.isInProgress ||
68
+ dataAccessState.creatingWorkflowRequestState.isInProgress ||
69
+ !isValid, children: "Create" }), _jsx(Button, { onClick: onClose, variant: "outlined", disabled: dataAccessState.creatingContractState.isInProgress ||
70
+ dataAccessState.creatingWorkflowRequestState.isInProgress, children: "Cancel" })] })] }));
59
71
  });
60
72
  //# sourceMappingURL=EntitlementsDataContractCreator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"EntitlementsDataContractCreator.js","sourceRoot":"","sources":["../../../../src/components/DataProduct/DataContract/EntitlementsDataContractCreator.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"EntitlementsDataContractCreator.js","sourceRoot":"","sources":["../../../../src/components/DataProduct/DataContract/EntitlementsDataContractCreator.tsx"],"names":[],"mappings":"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"}
@@ -15,7 +15,7 @@
15
15
  */
16
16
  import React from 'react';
17
17
  import { type DataProductDataAccessState } from '../../stores/DataProduct/DataProductDataAccessState.js';
18
- import type { DataProductViewerState } from '../../stores/DataProduct/DataProductViewerState.js';
18
+ import { type DataProductViewerState } from '../../stores/DataProduct/DataProductViewerState.js';
19
19
  import { type DataProductAPGState } from '../../stores/DataProduct/DataProductAPGState.js';
20
20
  import type { DataProductAccessPointState } from '../../stores/DataProduct/DataProductAccessPointState.js';
21
21
  import { EmbeddedLegendSQLPlaygroundPanelState } from '../../stores/DataProduct/EmbeddedLegendSQLPlaygroundPanelState.js';
@@ -35,6 +35,12 @@ export declare const SqlPlaygroundScreen: ((props: {
35
35
  }) => import("react/jsx-runtime").JSX.Element) & {
36
36
  displayName: string;
37
37
  };
38
+ export declare const DataProductAccessPointViewer: ((props: {
39
+ accessPointState: DataProductAccessPointState;
40
+ dataAccessState: DataProductDataAccessState | undefined;
41
+ }) => import("react/jsx-runtime").JSX.Element) & {
42
+ displayName: string;
43
+ };
38
44
  export declare const DataProductAccessPointGroupViewer: ((props: {
39
45
  apgState: DataProductAPGState;
40
46
  dataAccessState: DataProductDataAccessState | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"DataProductDataAccess.d.ts","sourceRoot":"","sources":["../../../src/components/DataProduct/DataProductDataAccess.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AA0BH,OAAO,KAA+C,MAAM,OAAO,CAAC;AAyDpE,OAAO,EAEL,KAAK,0BAA0B,EAChC,MAAM,wDAAwD,CAAC;AAChE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,oDAAoD,CAAC;AAOjG,OAAO,EACL,KAAK,mBAAmB,EAEzB,MAAM,iDAAiD,CAAC;AACzD,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,yDAAyD,CAAC;AAS3G,OAAO,EAAE,qCAAqC,EAAE,MAAM,mEAAmE,CAAC;AAiB1H,eAAO,MAAM,6BAA6B,EAAE,KAAK,CAAC,EAAE,CAAC;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAcrE,CAAC;AAEF,eAAO,MAAM,gBAAgB,WAAoB;IAAE,OAAO,EAAE,MAAM,CAAA;CAAE;;CAQlE,CAAC;AA2EH,eAAO,MAAM,mBAAmB,WACtB;IACN,eAAe,EAAE,qCAAqC,CAAC;IACvD,eAAe,EAAE,0BAA0B,GAAG,SAAS,CAAC;IACxD,gBAAgB,EAAE,2BAA2B,CAAC;IAC9C,YAAY,EAAE,OAAO,CAAC;CACvB;;CA6LF,CAAC;AA2pBF,eAAO,MAAM,iCAAiC,WACpC;IACN,QAAQ,EAAE,mBAAmB,CAAC;IAC9B,eAAe,EAAE,0BAA0B,GAAG,SAAS,CAAC;CACzD;;CA6XF,CAAC;AACF,eAAO,MAAM,sBAAsB,WACzB;IACN,sBAAsB,EAAE,sBAAsB,CAAC;IAC/C,0BAA0B,EAAE,0BAA0B,GAAG,SAAS,CAAC;CACpE;;CAyFF,CAAC"}
1
+ {"version":3,"file":"DataProductDataAccess.d.ts","sourceRoot":"","sources":["../../../src/components/DataProduct/DataProductDataAccess.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AA0BH,OAAO,KAA+C,MAAM,OAAO,CAAC;AA8DpE,OAAO,EAEL,KAAK,0BAA0B,EAChC,MAAM,wDAAwD,CAAC;AAChE,OAAO,EAEL,KAAK,sBAAsB,EAC5B,MAAM,oDAAoD,CAAC;AAO5D,OAAO,EACL,KAAK,mBAAmB,EAEzB,MAAM,iDAAiD,CAAC;AACzD,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,yDAAyD,CAAC;AAS3G,OAAO,EAAE,qCAAqC,EAAE,MAAM,mEAAmE,CAAC;AAiB1H,eAAO,MAAM,6BAA6B,EAAE,KAAK,CAAC,EAAE,CAAC;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAcrE,CAAC;AAEF,eAAO,MAAM,gBAAgB,WAAoB;IAAE,OAAO,EAAE,MAAM,CAAA;CAAE;;CAQlE,CAAC;AA2EH,eAAO,MAAM,mBAAmB,WACtB;IACN,eAAe,EAAE,qCAAqC,CAAC;IACvD,eAAe,EAAE,0BAA0B,GAAG,SAAS,CAAC;IACxD,gBAAgB,EAAE,2BAA2B,CAAC;IAC9C,YAAY,EAAE,OAAO,CAAC;CACvB;;CA6LF,CAAC;AAouBF,eAAO,MAAM,4BAA4B,WAC/B;IACN,gBAAgB,EAAE,2BAA2B,CAAC;IAC9C,eAAe,EAAE,0BAA0B,GAAG,SAAS,CAAC;CACzD;;CAiEF,CAAC;AAEF,eAAO,MAAM,iCAAiC,WACpC;IACN,QAAQ,EAAE,mBAAmB,CAAC;IAC9B,eAAe,EAAE,0BAA0B,GAAG,SAAS,CAAC;CACzD;;CA0WF,CAAC;AACF,eAAO,MAAM,sBAAsB,WACzB;IACN,sBAAsB,EAAE,sBAAsB,CAAC;IAC/C,0BAA0B,EAAE,0BAA0B,GAAG,SAAS,CAAC;CACpE;;CA0HF,CAAC"}
@@ -21,10 +21,11 @@ import { DataGrid, } from '@finos/legend-lego/data-grid';
21
21
  import { extractElementNameFromPath, V1_AccessPointGroupReference, V1_AdHocDeploymentDataProductOrigin, V1_AppliedFunction, V1_AppliedProperty, V1_CBoolean, V1_CByteArray, V1_CDateTime, V1_CDecimal, V1_CFloat, V1_CInteger, V1_CStrictDate, V1_CStrictTime, V1_CString, V1_DataProductOriginType, V1_EnumValue, V1_getGenericTypeFullPath, V1_LakehouseAccessPoint, V1_SdlcDeploymentDataProductOrigin, V1_transformDataContractToLiteDatacontract, } from '@finos/legend-graph';
22
22
  import { CodeEditor } from '@finos/legend-lego/code-editor';
23
23
  import { CODE_EDITOR_LANGUAGE, CODE_EDITOR_THEME, } from '@finos/legend-code-editor';
24
- import { Box, Button, ButtonGroup, Chip, CircularProgress, Menu, MenuItem, Tab, Tabs, Tooltip, } from '@mui/material';
24
+ import { Accordion, AccordionDetails, AccordionSummary, Box, Button, ButtonGroup, Chip, CircularProgress, IconButton, InputAdornment, Menu, MenuItem, Tab, Tabs, TextField, Tooltip, } from '@mui/material';
25
25
  import { useAuth } from 'react-oidc-context';
26
- import { assertErrorThrown, assertNonNullable, guaranteeNonNullable, isEmpty, isNonEmptyString, isNonNullable, LogEvent, noop, } from '@finos/legend-shared';
26
+ import { assertErrorThrown, assertNonNullable, guaranteeNonNullable, isEmpty, isNonEmptyString, isNonNullable, noop, } from '@finos/legend-shared';
27
27
  import {} from '../../stores/DataProduct/DataProductDataAccessState.js';
28
+ import { APG_AUTO_COLLAPSE_THRESHOLD, } from '../../stores/DataProduct/DataProductViewerState.js';
28
29
  import { generateAnchorForSection, DATA_PRODUCT_VIEWER_SECTION, } from '../../stores/ProductViewerNavigation.js';
29
30
  import { EntitlementsDataContractCreator } from './DataContract/EntitlementsDataContractCreator.js';
30
31
  import { DataProductSubscriptionViewer } from './Subscriptions/DataProductSubscriptionsViewer.js';
@@ -271,6 +272,13 @@ const GovernanceScreen = observer((props) => {
271
272
  const { accessPointState, dataAccessState } = props;
272
273
  const dataProductName = dataAccessState?.product.name;
273
274
  const accessPointName = accessPointState.accessPoint.id;
275
+ useEffect(() => {
276
+ if (accessPointState.fetchingRegistryMetadataState.isInInitialState) {
277
+ accessPointState
278
+ .fetchRegistryMetadata()
279
+ .catch((error) => accessPointState.apgState.applicationStore.notificationService.notifyError(error));
280
+ }
281
+ }, [accessPointState]);
274
282
  const openLineageAction = (dataProduct, accessPointGroup) => {
275
283
  if (dataAccessState?.entitlementsDataProductDetails.origin instanceof
276
284
  V1_SdlcDeploymentDataProductOrigin) {
@@ -342,38 +350,42 @@ var DataProductAccessPointTabs;
342
350
  DataProductAccessPointTabs["POWER_BI"] = "Power BI";
343
351
  DataProductAccessPointTabs["SQL"] = "SQL";
344
352
  })(DataProductAccessPointTabs || (DataProductAccessPointTabs = {}));
345
- const AccessPointTable = observer((props) => {
353
+ const ColumnsScreen = observer((props) => {
346
354
  const { accessPointState, dataAccessState } = props;
347
355
  const [gridApi, setGridApi] = useState(null);
348
- const [selectedTab, setSelectedTab] = useState(DataProductAccessPointTabs.COLUMNS);
349
- const playgroundState = useMemo(() => {
350
- const dataProductViewerState = accessPointState.apgState.dataProductViewerState;
351
- return new EmbeddedLegendSQLPlaygroundPanelState(dataProductViewerState, dataAccessState?.entitlementsDataProductDetails, () => dataAccessState?.resolvedUserEnv, accessPointState.accessPoint.id);
352
- }, [accessPointState, dataAccessState]);
353
- const handleTabChange = (_, newValue) => {
354
- setSelectedTab(newValue);
355
- };
356
356
  const userEnv = dataAccessState?.resolvedUserEnv;
357
- const codeExtensions = useMemo(() => dataAccessState?.dataAccessPlugins
358
- .map((plugin) => plugin.getExtraDataProductAccessPointCodeConfiguration?.())
359
- .flat()
360
- .filter(isNonNullable) ?? [], [dataAccessState?.dataAccessPlugins]);
361
357
  useEffect(() => {
362
- if (userEnv &&
363
- !accessPointState.relationElement &&
364
- accessPointState.apgState.access === AccessPointGroupAccess.ENTERPRISE) {
358
+ const dataProductArtifactPromise = accessPointState.apgState.dataProductViewerState
359
+ .dataProductArtifactPromise;
360
+ const entitlementsDataProductDetails = accessPointState.apgState.dataProductViewerState
361
+ .entitlementsDataProductDetails;
362
+ if (accessPointState.fetchingRelationTypeState.isInInitialState) {
365
363
  accessPointState
366
- .fetchSampleDataFromEngine(guaranteeNonNullable(getIngestDeploymentServerConfigName(userEnv)))
367
- .catch((error) => {
368
- accessPointState.apgState.applicationStore.logService.error(LogEvent.create(`error fetching sample data`), `Error fetching access point: ${accessPointState.accessPoint.id} sample data from engine: ${error.message}`);
369
- });
364
+ .fetchRelationType(dataProductArtifactPromise, entitlementsDataProductDetails)
365
+ .catch((error) => accessPointState.apgState.applicationStore.notificationService.notifyError(error));
366
+ }
367
+ }, [accessPointState]);
368
+ useEffect(() => {
369
+ if (!userEnv) {
370
+ return;
371
+ }
372
+ const dataProductArtifactPromise = accessPointState.apgState.dataProductViewerState
373
+ .dataProductArtifactPromise;
374
+ if (accessPointState.fetchingSampleDataState.isInInitialState) {
375
+ accessPointState
376
+ .fetchSampleData(dataProductArtifactPromise, getIngestDeploymentServerConfigName(userEnv))
377
+ .catch((error) => accessPointState.apgState.applicationStore.notificationService.notifyError(error));
370
378
  }
371
379
  }, [accessPointState, userEnv]);
372
380
  useEffect(() => {
373
381
  if (gridApi) {
374
382
  gridApi.refreshCells({ force: true });
375
383
  }
376
- }, [gridApi, accessPointState.relationElement]);
384
+ }, [
385
+ gridApi,
386
+ accessPointState.relationElement,
387
+ accessPointState.fetchingSampleDataState.isInProgress,
388
+ ]);
377
389
  const relationColumnDefs = [
378
390
  {
379
391
  headerName: 'Column Name',
@@ -387,8 +399,6 @@ const AccessPointTable = observer((props) => {
387
399
  ? `${extractElementNameFromPath(V1_getGenericTypeFullPath(_params.data.genericType))}${_params.data.genericType.typeVariableValues.length > 0
388
400
  ? `(${_params.data.genericType.typeVariableValues
389
401
  .map((valueSpec) => {
390
- // TODO: Move V1_stringifyValueSpecification out of
391
- // @finos/legend-query-builder so it can be used in other packages
392
402
  if (valueSpec instanceof V1_CDateTime ||
393
403
  valueSpec instanceof V1_CStrictDate ||
394
404
  valueSpec instanceof V1_CStrictTime ||
@@ -397,7 +407,6 @@ const AccessPointTable = observer((props) => {
397
407
  valueSpec instanceof V1_CByteArray ||
398
408
  valueSpec instanceof V1_CDecimal ||
399
409
  valueSpec instanceof V1_CFloat ||
400
- valueSpec instanceof V1_CFloat ||
401
410
  valueSpec instanceof V1_CInteger ||
402
411
  valueSpec instanceof V1_EnumValue) {
403
412
  return valueSpec.value.toString();
@@ -422,6 +431,9 @@ const AccessPointTable = observer((props) => {
422
431
  wrapText: true,
423
432
  autoHeight: true,
424
433
  valueGetter: (_params) => {
434
+ if (accessPointState.fetchingSampleDataState.isInProgress) {
435
+ return 'Loading sample data...';
436
+ }
425
437
  if (!_params.data || !accessPointState.relationElement) {
426
438
  return 'No sample values provided';
427
439
  }
@@ -437,40 +449,62 @@ const AccessPointTable = observer((props) => {
437
449
  },
438
450
  },
439
451
  ];
452
+ return (_jsx(_Fragment, { children: accessPointState.fetchingRelationTypeState.isInProgress ? (_jsx(Box, { className: "data-product__viewer__more-info__loading-indicator", children: _jsx(CubesLoadingIndicator, { isLoading: true, children: _jsx(CubesLoadingIndicatorIcon, {}) }) })) : accessPointState.fetchingRelationTypeState.hasCompleted ? (_jsx(Box, { className: clsx('data-product__viewer__more-info__columns-grid ag-theme-balham', {
453
+ 'data-product__viewer__more-info__columns-grid--auto-height': (accessPointState.relationType?.columns.length ?? 0) <=
454
+ MAX_GRID_AUTO_HEIGHT_ROWS,
455
+ 'data-product__viewer__more-info__columns-grid--auto-height--empty': (accessPointState.relationType?.columns.length ?? 0) === 0,
456
+ 'data-product__viewer__more-info__columns-grid--auto-height--non-empty': (accessPointState.relationType?.columns.length ?? 0) > 0 &&
457
+ (accessPointState.relationType?.columns.length ?? 0) <=
458
+ MAX_GRID_AUTO_HEIGHT_ROWS,
459
+ }), children: _jsx(DataGrid, { rowData: accessPointState.relationType?.columns ?? [], columnDefs: relationColumnDefs, domLayout: (accessPointState.relationType?.columns.length ?? 0) >
460
+ MAX_GRID_AUTO_HEIGHT_ROWS
461
+ ? 'normal'
462
+ : 'autoHeight', onGridReady: (params) => {
463
+ setGridApi(params.api);
464
+ if (!accessPointState.relationType?.columns.length) {
465
+ accessPointState.apgState.dataProductViewerState.layoutState.markGridAsRendered();
466
+ }
467
+ }, onFirstDataRendered: () => {
468
+ if (accessPointState.relationType?.columns.length !== undefined &&
469
+ accessPointState.relationType.columns.length > 0) {
470
+ accessPointState.apgState.dataProductViewerState.layoutState.markGridAsRendered();
471
+ }
472
+ } }) })) : (_jsx(TabMessageScreen, { message: "Unable to fetch access point columns" })) }));
473
+ });
474
+ const GrammarScreen = observer((props) => {
475
+ const { accessPointState } = props;
476
+ useEffect(() => {
477
+ if (accessPointState.fetchingGrammarState.isInInitialState) {
478
+ accessPointState
479
+ .fetchGrammar()
480
+ .catch((error) => accessPointState.apgState.applicationStore.notificationService.notifyError(error));
481
+ }
482
+ }, [accessPointState]);
483
+ return (_jsx(_Fragment, { children: accessPointState.fetchingGrammarState.isInProgress ? (_jsx(Box, { className: "data-product__viewer__more-info__loading-indicator", children: _jsx(CubesLoadingIndicator, { isLoading: true, children: _jsx(CubesLoadingIndicatorIcon, {}) }) })) : accessPointState.fetchingGrammarState.hasCompleted ? (_jsx(Box, { className: "data-product__viewer__more-info__grammar", children: _jsx(CodeEditor, { inputValue: accessPointState.grammar ?? 'Unable to fetch grammar', isReadOnly: true, language: CODE_EDITOR_LANGUAGE.PURE, hideMinimap: true, hideGutter: true, hideActionBar: true, lightTheme: CODE_EDITOR_THEME.GITHUB_LIGHT, extraEditorOptions: {
484
+ scrollBeyondLastLine: false,
485
+ wordWrap: 'on',
486
+ } }) })) : (_jsx(TabMessageScreen, { message: "Unable to fetch access point grammar" })) }));
487
+ });
488
+ const AccessPointTable = observer((props) => {
489
+ const { accessPointState, dataAccessState } = props;
490
+ const [selectedTab, setSelectedTab] = useState(DataProductAccessPointTabs.COLUMNS);
491
+ const playgroundState = useMemo(() => {
492
+ const dataProductViewerState = accessPointState.apgState.dataProductViewerState;
493
+ return new EmbeddedLegendSQLPlaygroundPanelState(dataProductViewerState, dataAccessState?.entitlementsDataProductDetails, () => dataAccessState?.resolvedUserEnv, accessPointState.accessPoint.id);
494
+ }, [accessPointState, dataAccessState]);
495
+ const handleTabChange = (_, newValue) => {
496
+ setSelectedTab(newValue);
497
+ };
498
+ const codeExtensions = useMemo(() => dataAccessState?.dataAccessPlugins
499
+ .map((plugin) => plugin.getExtraDataProductAccessPointCodeConfiguration?.())
500
+ .flat()
501
+ .filter(isNonNullable) ?? [], [dataAccessState?.dataAccessPlugins]);
440
502
  const renderTab = (_selectedTab) => {
441
503
  switch (_selectedTab) {
442
504
  case DataProductAccessPointTabs.COLUMNS:
443
- return (_jsx(_Fragment, { children: accessPointState.fetchingRelationTypeState.isInProgress ||
444
- accessPointState.fetchingRelationElement.isInProgress ? (_jsx(Box, { className: "data-product__viewer__more-info__loading-indicator", children: _jsx(CubesLoadingIndicator, { isLoading: true, children: _jsx(CubesLoadingIndicatorIcon, {}) }) })) : accessPointState.fetchingRelationTypeState.hasCompleted &&
445
- accessPointState.fetchingRelationElement.hasCompleted ? (_jsx(Box, { className: clsx('data-product__viewer__more-info__columns-grid ag-theme-balham', {
446
- 'data-product__viewer__more-info__columns-grid--auto-height': (accessPointState.relationType?.columns.length ?? 0) <=
447
- MAX_GRID_AUTO_HEIGHT_ROWS,
448
- 'data-product__viewer__more-info__columns-grid--auto-height--empty': (accessPointState.relationType?.columns.length ?? 0) ===
449
- 0,
450
- 'data-product__viewer__more-info__columns-grid--auto-height--non-empty': (accessPointState.relationType?.columns.length ?? 0) >
451
- 0 &&
452
- (accessPointState.relationType?.columns.length ?? 0) <=
453
- MAX_GRID_AUTO_HEIGHT_ROWS,
454
- }), children: _jsx(DataGrid, { rowData: accessPointState.relationType?.columns ?? [], columnDefs: relationColumnDefs, domLayout: (accessPointState.relationType?.columns.length ?? 0) >
455
- MAX_GRID_AUTO_HEIGHT_ROWS
456
- ? 'normal'
457
- : 'autoHeight', onGridReady: (params) => {
458
- setGridApi(params.api);
459
- if (!accessPointState.relationType?.columns.length) {
460
- accessPointState.apgState.dataProductViewerState.layoutState.markGridAsRendered();
461
- }
462
- }, onFirstDataRendered: () => {
463
- if (accessPointState.relationType?.columns.length !==
464
- undefined &&
465
- accessPointState.relationType.columns.length > 0) {
466
- accessPointState.apgState.dataProductViewerState.layoutState.markGridAsRendered();
467
- }
468
- } }) })) : (_jsx(TabMessageScreen, { message: "Unable to fetch access point columns" })) }));
505
+ return (_jsx(ColumnsScreen, { accessPointState: accessPointState, dataAccessState: dataAccessState }));
469
506
  case DataProductAccessPointTabs.GRAMMAR:
470
- return (_jsx(_Fragment, { children: accessPointState.fetchingGrammarState.isInProgress ? (_jsx(Box, { className: "data-product__viewer__more-info__loading-indicator", children: _jsx(CubesLoadingIndicator, { isLoading: true, children: _jsx(CubesLoadingIndicatorIcon, {}) }) })) : accessPointState.fetchingGrammarState.hasCompleted ? (_jsx(Box, { className: "data-product__viewer__more-info__grammar", children: _jsx(CodeEditor, { inputValue: accessPointState.grammar ?? 'Unable to fetch grammar', isReadOnly: true, language: CODE_EDITOR_LANGUAGE.PURE, hideMinimap: true, hideGutter: true, hideActionBar: true, lightTheme: CODE_EDITOR_THEME.GITHUB_LIGHT, extraEditorOptions: {
471
- scrollBeyondLastLine: false,
472
- wordWrap: 'on',
473
- } }) })) : (_jsx(TabMessageScreen, { message: "Unable to fetch access point grammar" })) }));
507
+ return _jsx(GrammarScreen, { accessPointState: accessPointState });
474
508
  case DataProductAccessPointTabs.GOVERNANCE:
475
509
  return (_jsx(GovernanceScreen, { accessPointState: accessPointState, dataAccessState: dataAccessState }));
476
510
  case DataProductAccessPointTabs.DATACUBE:
@@ -522,6 +556,15 @@ const AccessPointTable = observer((props) => {
522
556
  'data-product__viewer__tab--selected': selectedTab === ext.key,
523
557
  }), value: ext.key, label: !ext.icon ? (_jsx("span", { children: ext.label })) : (_jsxs("span", { className: "label-container", children: [ext.icon, _jsx("span", { children: ext.label })] })) }, ext.key)))] }) }), _jsx("div", { className: "access_group_gap" }), _jsx(Box, { className: "data-product__viewer__more-info__container", children: renderTab(selectedTab) })] }));
524
558
  });
559
+ export const DataProductAccessPointViewer = observer((props) => {
560
+ const { accessPointState, dataAccessState } = props;
561
+ return (_jsxs(Accordion, { expanded: !accessPointState.isCollapsed, onChange: () => accessPointState.setIsCollapsed(!accessPointState.isCollapsed), elevation: 2, slotProps: {
562
+ transition: {
563
+ unmountOnExit: true,
564
+ },
565
+ }, children: [_jsx(AccordionSummary, { expandIcon: _jsx(ExpandMoreIcon, {}), className: "data-product__viewer__access-point__summary", children: _jsxs("div", { className: "data-product__viewer__access-point__info", children: [_jsxs("div", { className: "data-product__viewer__access-point__details", children: [_jsx("div", { className: "data-product__viewer__access-point__name", children: _jsx("strong", { children: accessPointState.accessPoint.title ??
566
+ accessPointState.accessPoint.id }) }), _jsx("div", { className: "data-product__viewer__access-point__description", children: accessPointState.accessPoint.description?.trim() ?? (_jsx("span", { className: "data-product__viewer__grid__empty-cell", children: "No description to provide" })) })] }), _jsxs("div", { className: "data-product__viewer__access-point__tags", children: [accessPointState.registryMetadata?.ads && (_jsx(Chip, { className: "data-product__viewer__wiki__tags__chip", label: "ADS", title: "Authorized Data Source" })), accessPointState.registryMetadata?.pde && (_jsx(Chip, { className: "data-product__viewer__wiki__tags__chip", label: "PDE", title: "Point of Data Entry" }))] })] }) }), _jsx(AccordionDetails, { className: "data-product__viewer__access-point__details-container", children: _jsx("div", { className: "data-product__viewer__access-point__tabs", children: _jsx(AccessPointTable, { accessPointState: accessPointState, dataAccessState: dataAccessState }) }) })] }));
567
+ });
525
568
  export const DataProductAccessPointGroupViewer = observer((props) => {
526
569
  const { apgState, dataAccessState } = props;
527
570
  const accessPointStates = apgState.accessPointStates;
@@ -555,12 +598,15 @@ export const DataProductAccessPointGroupViewer = observer((props) => {
555
598
  dataAccessState,
556
599
  ]);
557
600
  useEffect(() => {
558
- if (dataAccessState?.lakehouseContractServerClient &&
559
- apgState.apgContracts.length > 0) {
601
+ if (!apgState.isCollapsed &&
602
+ dataAccessState?.lakehouseContractServerClient &&
603
+ apgState.apgContracts.length > 0 &&
604
+ apgState.fetchingSubscriptionsState.isInInitialState) {
560
605
  apgState.fetchSubscriptions(apgState.apgContracts, dataAccessState.lakehouseContractServerClient, auth.user?.access_token);
561
606
  }
562
607
  }, [
563
608
  apgState,
609
+ apgState.isCollapsed,
564
610
  apgState.fetchingSubscriptionsState,
565
611
  apgState.apgContracts,
566
612
  auth.user?.access_token,
@@ -651,13 +697,24 @@ export const DataProductAccessPointGroupViewer = observer((props) => {
651
697
  setIsEntitledButtonGroupMenuOpen(false);
652
698
  }, children: "Manage Subscriptions" })] })] }));
653
699
  };
654
- return (_jsxs("div", { ref: sectionRef, className: "data-product__viewer__access-group__item", children: [_jsxs("div", { className: "data-product__viewer__access-group__item__header", children: [_jsxs("div", { className: "data-product__viewer__access-group__item__header-main", children: [_jsx("div", { className: "data-product__viewer__access-group__item__header__title", children: apgState.apg.title ?? apgState.apg.id }), _jsx("div", { className: "data-product__viewer__access-group__item__header__type", children: "LAKEHOUSE" }), _jsx("button", { className: "data-product__viewer__access-group__item__header__anchor", tabIndex: -1, onClick: () => {
700
+ const searchText = apgState.dataProductViewerState.apgSearchText
701
+ .trim()
702
+ .toLowerCase();
703
+ const isApgMatch = searchText
704
+ ? apgState.apg.id.toLowerCase().includes(searchText) ||
705
+ (apgState.apg.title?.toLowerCase().includes(searchText) ?? false)
706
+ : true;
707
+ const filteredAccessPointStates = isApgMatch
708
+ ? accessPointStates
709
+ : accessPointStates.filter((apState) => apState.accessPoint.id.toLowerCase().includes(searchText) ||
710
+ (apState.accessPoint.title?.toLowerCase().includes(searchText) ??
711
+ false));
712
+ return (_jsxs("div", { ref: sectionRef, className: "data-product__viewer__access-group__item", children: [_jsxs("div", { className: "data-product__viewer__access-group__item__header", children: [_jsxs("div", { className: "data-product__viewer__access-group__item__header-main", children: [_jsx("div", { className: "data-product__viewer__access-group__item__header__title", children: apgState.apg.title ?? apgState.apg.id }), _jsx("div", { className: "data-product__viewer__access-group__item__header__type", children: "LAKEHOUSE" }), _jsx("button", { onClick: () => apgState.setIsCollapsed(!apgState.isCollapsed), title: apgState.isCollapsed ? 'Expand' : 'Collapse', children: _jsx(ExpandMoreIcon, { className: clsx('data-product__viewer__access-group__item__header__caret', {
713
+ 'data-product__viewer__access-group__item__header__caret--collapsed': apgState.isCollapsed,
714
+ }) }) }), _jsx("button", { className: "data-product__viewer__access-group__item__header__anchor", tabIndex: -1, onClick: () => {
655
715
  apgState.dataProductViewerState.changeZone(anchor, true);
656
716
  apgState.dataProductViewerState.copyLinkToClipboard(anchor);
657
- }, children: _jsx(AnchorLinkIcon, {}) }), _jsx("button", { onClick: () => apgState.setIsCollapsed(!apgState.isCollapsed), title: apgState.isCollapsed ? 'Expand' : 'Collapse', children: _jsx(ExpandMoreIcon, { className: clsx('data-product__viewer__access-group__item__header__caret', {
658
- 'data-product__viewer__access-group__item__header__caret--collapsed': apgState.isCollapsed,
659
- }) }) })] }), _jsx(Box, { className: "data-product__viewer__access-group__item__header__actions", children: renderAccess(apgState.access) })] }), !apgState.isCollapsed && (_jsxs("div", { className: "data-product__viewer__access-group__item__collapsible-content", children: [_jsx("div", { className: "data-product__viewer__access-group__item__description", children: _jsx(DataProductMarkdownTextViewer, { value: apgState.apg.description ?? '' }) }), _jsx("div", { className: "data-product__viewer__access-group__item__content", children: _jsx("div", { className: "data-product__viewer__access-group__item__content__tab__content", children: accessPointStates.map((accessPointState) => (_jsxs("div", { className: "data-product__viewer__access-point-section access_group_gap", children: [_jsxs("div", { className: "data-product__viewer__access-point__info", children: [_jsxs("div", { className: "data-product__viewer__access-point__details", children: [_jsx("div", { className: "data-product__viewer__access-point__name", children: _jsx("strong", { children: accessPointState.accessPoint.title ??
660
- accessPointState.accessPoint.id }) }), _jsx("div", { className: "data-product__viewer__access-point__description", children: accessPointState.accessPoint.description?.trim() ?? (_jsx("span", { className: "data-product__viewer__grid__empty-cell", children: "No description to provide" })) })] }), _jsxs("div", { className: "data-product__viewer__access-point__tags", children: [accessPointState.registryMetadata?.ads && (_jsx(Chip, { className: "data-product__viewer__wiki__tags__chip", label: "ADS", title: "Authorized Data Source" })), accessPointState.registryMetadata?.pde && (_jsx(Chip, { className: "data-product__viewer__wiki__tags__chip", label: "PDE", title: "Point of Data Entry" }))] })] }), _jsx("div", { className: "data-product__viewer__access-point__tabs", children: _jsx(AccessPointTable, { accessPointState: accessPointState, dataAccessState: dataAccessState }) })] }, accessPointState.accessPoint.id))) }) })] })), dataAccessState?.contractCreatorAPG === apgState.apg && (_jsx(EntitlementsDataContractCreator, { open: true, onClose: () => dataAccessState.setContractCreatorAPG(undefined), apgState: apgState, dataAccessState: dataAccessState, tokenProvider: () => auth.user?.access_token })), dataContractViewerState && dataAccessState && (_jsx(DataAccessRequestViewer, { open: true, onClose: () => dataAccessState.setContractViewerContractAndSubscription(undefined), viewerState: dataContractViewerState, onRefresh: () => {
717
+ }, children: _jsx(AnchorLinkIcon, {}) })] }), _jsx(Box, { className: "data-product__viewer__access-group__item__header__actions", children: renderAccess(apgState.access) })] }), !apgState.isCollapsed && (_jsxs("div", { className: "data-product__viewer__access-group__item__collapsible-content", children: [_jsx("div", { className: "data-product__viewer__access-group__item__description", children: _jsx(DataProductMarkdownTextViewer, { value: apgState.apg.description ?? '' }) }), _jsx("div", { className: "data-product__viewer__access-group__item__content", children: _jsx("div", { className: "data-product__viewer__access-group__item__content__tab__content", children: filteredAccessPointStates.map((accessPointState) => (_jsx(DataProductAccessPointViewer, { accessPointState: accessPointState, dataAccessState: dataAccessState }, accessPointState.accessPoint.id))) }) })] })), dataAccessState?.contractCreatorAPG === apgState.apg && (_jsx(EntitlementsDataContractCreator, { open: true, onClose: () => dataAccessState.setContractCreatorAPG(undefined), apgState: apgState, dataAccessState: dataAccessState, tokenProvider: () => auth.user?.access_token })), dataContractViewerState && dataAccessState && (_jsx(DataAccessRequestViewer, { open: true, onClose: () => dataAccessState.setContractViewerContractAndSubscription(undefined), viewerState: dataContractViewerState, onRefresh: () => {
661
718
  if (apgState.associatedUserContract) {
662
719
  apgState.fetchUserAccessStatus(apgState.associatedUserContract.guid, dataAccessState.lakehouseContractServerClient, () => auth.user?.access_token);
663
720
  }
@@ -679,13 +736,18 @@ export const DataProducteDataAccess = observer((props) => {
679
736
  dataProductViewerState.applicationStore.navigationService.navigator.visitAddress(documentationUrl);
680
737
  }
681
738
  };
682
- return (_jsxs("div", { ref: sectionRef, className: "data-product__viewer__wiki__section", children: [_jsxs("div", { className: "data-product__viewer__wiki__section__header", children: [_jsxs("div", { className: "data-product__viewer__wiki__section__header__label", children: ["Data Access", _jsx("button", { className: "data-product__viewer__wiki__section__header__anchor", tabIndex: -1, onClick: () => {
683
- dataProductViewerState.changeZone(anchor, true);
684
- dataProductViewerState.copyLinkToClipboard(anchor);
685
- }, children: _jsx(AnchorLinkIcon, {}) }), _jsx("button", { onClick: () => dataProductViewerState.toggleAllApgGroupCollapse(), title: dataProductViewerState.isAllApgsCollapsed
739
+ return (_jsxs("div", { ref: sectionRef, className: "data-product__viewer__wiki__section", children: [_jsxs("div", { className: "data-product__viewer__wiki__section__header", children: [_jsxs("div", { className: "data-product__viewer__wiki__section__header__label", children: ["Data Access", _jsx("button", { onClick: () => dataProductViewerState.toggleAllApgGroupCollapse(), title: dataProductViewerState.isAllApgsCollapsed
686
740
  ? 'Expand All'
687
741
  : 'Collapse All', children: _jsx(ExpandMoreIcon, { className: clsx('data-product__viewer__access-group__item__header__caret', {
688
742
  'data-product__viewer__access-group__item__header__caret--collapsed': dataProductViewerState.isAllApgsCollapsed,
689
- }) }) })] }), Boolean(documentationUrl) && (_jsx("button", { className: "data-product__viewer__wiki__section__header__documentation", tabIndex: -1, onClick: seeDocumentation, title: "See Documentation", children: _jsx(QuestionCircleIcon, {}) }))] }), _jsx("div", { className: "data-product__viewer__wiki__section__content", children: _jsx("div", { className: "data-product__viewer__data-access", children: dataProductViewerState.apgStates.map((groupState) => (_jsx(DataProductAccessPointGroupViewer, { apgState: groupState, dataAccessState: dataProductDataAccessState }, groupState.id))) }) })] }));
743
+ }) }) }), _jsx("button", { className: "data-product__viewer__wiki__section__header__anchor", tabIndex: -1, onClick: () => {
744
+ dataProductViewerState.changeZone(anchor, true);
745
+ dataProductViewerState.copyLinkToClipboard(anchor);
746
+ }, children: _jsx(AnchorLinkIcon, {}) })] }), Boolean(documentationUrl) && (_jsx("button", { className: "data-product__viewer__wiki__section__header__documentation", tabIndex: -1, onClick: seeDocumentation, title: "See Documentation", children: _jsx(QuestionCircleIcon, {}) }))] }), dataProductViewerState.totalAccessPoints >
747
+ APG_AUTO_COLLAPSE_THRESHOLD && (_jsx("div", { className: "data-product__viewer__data-access__search", children: _jsx(TextField, { label: "Filter", size: "small", placeholder: "Filter access point groups/access points...", value: dataProductViewerState.apgSearchText, onChange: (e) => dataProductViewerState.setApgSearchText(e.target.value), fullWidth: true, slotProps: {
748
+ input: {
749
+ endAdornment: dataProductViewerState.apgSearchText ? (_jsx(InputAdornment, { position: "end", children: _jsx(IconButton, { size: "small", onClick: () => dataProductViewerState.setApgSearchText(''), title: "Clear filter", edge: "end", children: _jsx(TimesIcon, {}) }) })) : null,
750
+ },
751
+ } }) })), _jsx("div", { className: "data-product__viewer__wiki__section__content", children: _jsx("div", { className: "data-product__viewer__data-access", children: dataProductViewerState.filteredApgStates.map((groupState) => (_jsx(DataProductAccessPointGroupViewer, { apgState: groupState, dataAccessState: dataProductDataAccessState }, groupState.id))) }) })] }));
690
752
  });
691
753
  //# sourceMappingURL=DataProductDataAccess.js.map