@finos/legend-graph 32.3.37 → 32.3.39

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 (86) hide show
  1. package/lib/graph-manager/protocol/pure/v1/V1_PureGraphManager.d.ts +0 -11
  2. package/lib/graph-manager/protocol/pure/v1/V1_PureGraphManager.d.ts.map +1 -1
  3. package/lib/graph-manager/protocol/pure/v1/V1_PureGraphManager.js +43 -76
  4. package/lib/graph-manager/protocol/pure/v1/V1_PureGraphManager.js.map +1 -1
  5. package/lib/graph-manager/protocol/pure/v1/lakehouse/entitlements/V1_ConsumerEntitlements.d.ts +5 -24
  6. package/lib/graph-manager/protocol/pure/v1/lakehouse/entitlements/V1_ConsumerEntitlements.d.ts.map +1 -1
  7. package/lib/graph-manager/protocol/pure/v1/lakehouse/entitlements/V1_ConsumerEntitlements.js +5 -24
  8. package/lib/graph-manager/protocol/pure/v1/lakehouse/entitlements/V1_ConsumerEntitlements.js.map +1 -1
  9. package/lib/graph-manager/protocol/pure/v1/lakehouse/entitlements/V1_CoreEntitlements.d.ts +50 -9
  10. package/lib/graph-manager/protocol/pure/v1/lakehouse/entitlements/V1_CoreEntitlements.d.ts.map +1 -1
  11. package/lib/graph-manager/protocol/pure/v1/lakehouse/entitlements/V1_CoreEntitlements.js +58 -10
  12. package/lib/graph-manager/protocol/pure/v1/lakehouse/entitlements/V1_CoreEntitlements.js.map +1 -1
  13. package/lib/graph-manager/protocol/pure/v1/lakehouse/entitlements/V1_DataAccessRequest.d.ts +100 -0
  14. package/lib/graph-manager/protocol/pure/v1/lakehouse/entitlements/V1_DataAccessRequest.d.ts.map +1 -0
  15. package/lib/graph-manager/protocol/pure/v1/lakehouse/entitlements/V1_DataAccessRequest.js +108 -0
  16. package/lib/graph-manager/protocol/pure/v1/lakehouse/entitlements/V1_DataAccessRequest.js.map +1 -0
  17. package/lib/graph-manager/protocol/pure/v1/lakehouse/entitlements/V1_EntitlementsDataProduct.d.ts +1 -16
  18. package/lib/graph-manager/protocol/pure/v1/lakehouse/entitlements/V1_EntitlementsDataProduct.d.ts.map +1 -1
  19. package/lib/graph-manager/protocol/pure/v1/lakehouse/entitlements/V1_EntitlementsDataProduct.js +0 -14
  20. package/lib/graph-manager/protocol/pure/v1/lakehouse/entitlements/V1_EntitlementsDataProduct.js.map +1 -1
  21. package/lib/graph-manager/protocol/pure/v1/lakehouse/helpers/V1_ConsumerEntitlementsUtils.d.ts.map +1 -1
  22. package/lib/graph-manager/protocol/pure/v1/lakehouse/helpers/V1_ConsumerEntitlementsUtils.js +2 -1
  23. package/lib/graph-manager/protocol/pure/v1/lakehouse/helpers/V1_ConsumerEntitlementsUtils.js.map +1 -1
  24. package/lib/graph-manager/protocol/pure/v1/lakehouse/subscriptions/V1_ConsumerSubscriptions.d.ts +5 -0
  25. package/lib/graph-manager/protocol/pure/v1/lakehouse/subscriptions/V1_ConsumerSubscriptions.d.ts.map +1 -1
  26. package/lib/graph-manager/protocol/pure/v1/lakehouse/subscriptions/V1_ConsumerSubscriptions.js +4 -0
  27. package/lib/graph-manager/protocol/pure/v1/lakehouse/subscriptions/V1_ConsumerSubscriptions.js.map +1 -1
  28. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/V1_PureProtocolSerialization.d.ts.map +1 -1
  29. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/V1_PureProtocolSerialization.js +10 -14
  30. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/V1_PureProtocolSerialization.js.map +1 -1
  31. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_IngestSerializationHelper.js +1 -1
  32. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_IngestSerializationHelper.js.map +1 -1
  33. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/lakehouse/V1_ConsumerEntitlementsSerializationHelper.d.ts +45 -0
  34. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/lakehouse/V1_ConsumerEntitlementsSerializationHelper.d.ts.map +1 -0
  35. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/lakehouse/V1_ConsumerEntitlementsSerializationHelper.js +190 -0
  36. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/lakehouse/V1_ConsumerEntitlementsSerializationHelper.js.map +1 -0
  37. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/lakehouse/V1_CoreEntitlementsSerializationHelper.d.ts +41 -0
  38. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/lakehouse/V1_CoreEntitlementsSerializationHelper.d.ts.map +1 -0
  39. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/lakehouse/V1_CoreEntitlementsSerializationHelper.js +141 -0
  40. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/lakehouse/V1_CoreEntitlementsSerializationHelper.js.map +1 -0
  41. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/lakehouse/V1_DataAccessRequestSerializationHelper.d.ts +34 -0
  42. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/lakehouse/V1_DataAccessRequestSerializationHelper.d.ts.map +1 -0
  43. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/lakehouse/V1_DataAccessRequestSerializationHelper.js +136 -0
  44. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/lakehouse/V1_DataAccessRequestSerializationHelper.js.map +1 -0
  45. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/lakehouse/V1_EntitlementsDataProductSerializationHelper.d.ts +31 -0
  46. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/lakehouse/V1_EntitlementsDataProductSerializationHelper.d.ts.map +1 -0
  47. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/lakehouse/V1_EntitlementsDataProductSerializationHelper.js +98 -0
  48. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/lakehouse/V1_EntitlementsDataProductSerializationHelper.js.map +1 -0
  49. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/lakehouse/V1_EntitlementsTasksSerializationHelper.d.ts +18 -0
  50. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/lakehouse/V1_EntitlementsTasksSerializationHelper.d.ts.map +1 -0
  51. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/lakehouse/V1_EntitlementsTasksSerializationHelper.js +22 -0
  52. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/lakehouse/V1_EntitlementsTasksSerializationHelper.js.map +1 -0
  53. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/{V1_SubscriptionSerializationHelper.d.ts → lakehouse/V1_SubscriptionSerializationHelper.d.ts} +2 -1
  54. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/lakehouse/V1_SubscriptionSerializationHelper.d.ts.map +1 -0
  55. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/{V1_SubscriptionSerializationHelper.js → lakehouse/V1_SubscriptionSerializationHelper.js} +6 -1
  56. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/lakehouse/V1_SubscriptionSerializationHelper.js.map +1 -0
  57. package/lib/index.d.ts +11 -6
  58. package/lib/index.d.ts.map +1 -1
  59. package/lib/index.js +11 -6
  60. package/lib/index.js.map +1 -1
  61. package/lib/package.json +1 -1
  62. package/package.json +1 -1
  63. package/src/graph-manager/protocol/pure/v1/V1_PureGraphManager.ts +413 -283
  64. package/src/graph-manager/protocol/pure/v1/lakehouse/entitlements/V1_ConsumerEntitlements.ts +9 -28
  65. package/src/graph-manager/protocol/pure/v1/lakehouse/entitlements/V1_CoreEntitlements.ts +76 -11
  66. package/src/graph-manager/protocol/pure/v1/lakehouse/entitlements/V1_DataAccessRequest.ts +126 -0
  67. package/src/graph-manager/protocol/pure/v1/lakehouse/entitlements/V1_EntitlementsDataProduct.ts +1 -20
  68. package/src/graph-manager/protocol/pure/v1/lakehouse/helpers/V1_ConsumerEntitlementsUtils.ts +4 -2
  69. package/src/graph-manager/protocol/pure/v1/lakehouse/subscriptions/V1_ConsumerSubscriptions.ts +7 -0
  70. package/src/graph-manager/protocol/pure/v1/transformation/pureProtocol/V1_PureProtocolSerialization.ts +23 -21
  71. package/src/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_IngestSerializationHelper.ts +1 -1
  72. package/src/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/lakehouse/V1_ConsumerEntitlementsSerializationHelper.ts +394 -0
  73. package/src/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/lakehouse/V1_CoreEntitlementsSerializationHelper.ts +238 -0
  74. package/src/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/lakehouse/V1_DataAccessRequestSerializationHelper.ts +261 -0
  75. package/src/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/lakehouse/V1_EntitlementsDataProductSerializationHelper.ts +179 -0
  76. package/src/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/lakehouse/V1_EntitlementsTasksSerializationHelper.ts +26 -0
  77. package/src/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/{V1_SubscriptionSerializationHelper.ts → lakehouse/V1_SubscriptionSerializationHelper.ts} +11 -1
  78. package/src/index.ts +11 -95
  79. package/tsconfig.json +7 -2
  80. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_EntitlementSerializationHelper.d.ts +0 -77
  81. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_EntitlementSerializationHelper.d.ts.map +0 -1
  82. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_EntitlementSerializationHelper.js +0 -376
  83. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_EntitlementSerializationHelper.js.map +0 -1
  84. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_SubscriptionSerializationHelper.d.ts.map +0 -1
  85. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_SubscriptionSerializationHelper.js.map +0 -1
  86. package/src/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_EntitlementSerializationHelper.ts +0 -701
@@ -14,28 +14,18 @@
14
14
  * limitations under the License.
15
15
  */
16
16
 
17
- import { type PlainObject } from '@finos/legend-shared';
18
17
  import {
18
+ type V1_ContractUserMembership,
19
+ type V1_ConsumerEntitlementResource,
19
20
  type V1_OrganizationalScope,
21
+ type V1_PaginationMetadataRecord,
20
22
  type V1_User,
21
- V1_Resource,
23
+ type V1_UserApprovalStatus,
22
24
  } from './V1_CoreEntitlements.js';
23
25
  import type { V1_DataSubscription } from '../subscriptions/V1_ConsumerSubscriptions.js';
24
- import type { V1_EntitlementsDataProduct } from './V1_EntitlementsDataProduct.js';
25
26
 
26
27
  // ------------------------------------------- Data Contracts -------------------------------------------
27
28
 
28
- export class V1_ConsumerEntitlementResource extends V1_Resource {}
29
-
30
- export class V1_AccessPointGroupReference extends V1_ConsumerEntitlementResource {
31
- dataProduct!: V1_EntitlementsDataProduct;
32
- accessPointGroup!: string;
33
- }
34
-
35
- export class V1_DataBundle extends V1_ConsumerEntitlementResource {
36
- content!: PlainObject;
37
- }
38
-
39
29
  export enum V1_ContractState {
40
30
  DRAFT = 'DRAFT',
41
31
  PENDING_DATA_OWNER_APPROVAL = 'PENDING_DATA_OWNER_APPROVAL',
@@ -93,6 +83,11 @@ export class V1_LiteDataContractsResponse {
93
83
  dataContracts?: V1_LiteDataContract[];
94
84
  }
95
85
 
86
+ export class V1_LiteDataContractsPaginatedResponse {
87
+ liteDataContractsResponse!: V1_LiteDataContractsResponse;
88
+ paginationMetadataRecord!: V1_PaginationMetadataRecord;
89
+ }
90
+
96
91
  export class V1_LiteDataContractWithUserStatus {
97
92
  contractResultLite!: V1_LiteDataContract;
98
93
  status!: V1_EnrichedUserApprovalStatus;
@@ -102,14 +97,6 @@ export class V1_LiteDataContractWithUserStatus {
102
97
 
103
98
  // -------------------------------------- Data Contract Approval ---------------------------------------
104
99
 
105
- export enum V1_UserApprovalStatus {
106
- PENDING = 'PENDING',
107
- APPROVED = 'APPROVED',
108
- DENIED = 'DENIED',
109
- REVOKED = 'REVOKED',
110
- CLOSED = 'CLOSED',
111
- }
112
-
113
100
  export enum V1_EnrichedUserApprovalStatus {
114
101
  PENDING_CONSUMER_PRIVILEGE_MANAGER_APPROVAL = 'PENDING_CONSUMER_PRIVILEGE_MANAGER_APPROVAL',
115
102
  PENDING_DATA_OWNER_APPROVAL = 'PENDING_DATA_OWNER_APPROVAL',
@@ -123,12 +110,6 @@ export class V1_DataContractApprovedUsersResponse {
123
110
  approvedUsers?: V1_User[];
124
111
  }
125
112
 
126
- export class V1_ContractUserMembership {
127
- guid!: string;
128
- user!: V1_User;
129
- status!: V1_UserApprovalStatus;
130
- }
131
-
132
113
  export enum V1_ResourceType {
133
114
  ACCESS_POINT_GROUP = 'ACCESS_POINT_GROUP',
134
115
  DATA_PRODUCT = 'DATA_PRODUCT',
@@ -15,8 +15,19 @@
15
15
  */
16
16
 
17
17
  import type { PlainObject } from '@finos/legend-shared';
18
+ import type { V1_StereotypePtr } from '../../model/packageableElements/domain/V1_StereotypePtr.js';
18
19
 
19
- export class V1_OrganizationalScope {}
20
+ // ---------------------------------------- Users & App Directory --------------------------------------
21
+
22
+ export class V1_User {
23
+ name!: string;
24
+ userType!: V1_UserType;
25
+ }
26
+
27
+ export enum V1_UserType {
28
+ WORKFORCE_USER = 'WORKFORCE_USER',
29
+ SYSTEM_ACCOUNT = 'SYSTEM_ACCOUNT',
30
+ }
20
31
 
21
32
  export class V1_AppDirNode {
22
33
  appDirId!: number;
@@ -31,6 +42,18 @@ export enum V1_AppDirLevel {
31
42
  DEPLOYMENT = 'DEPLOYMENT',
32
43
  }
33
44
 
45
+ // -------------------------------------------- Pagination ---------------------------------------------
46
+
47
+ export class V1_PaginationMetadataRecord {
48
+ hasNextPage!: boolean;
49
+ lastValuesMap!: Record<string, string>;
50
+ size!: number;
51
+ }
52
+
53
+ // ---------------------------------------- Organizational Scopes --------------------------------------
54
+
55
+ export class V1_OrganizationalScope {}
56
+
34
57
  export class V1_AppDirOrganizationalScope extends V1_OrganizationalScope {
35
58
  appDirNode!: V1_AppDirNode[];
36
59
  }
@@ -46,6 +69,29 @@ export class V1_ProducerScope extends V1_OrganizationalScope {
46
69
  export class V1_UnknownOrganizationalScopeType extends V1_OrganizationalScope {
47
70
  content!: PlainObject;
48
71
  }
72
+
73
+ // -------------------------------- Entitlements Data Products & Access Points --------------------------
74
+
75
+ export class V1_EntitlementsAccessPoint {
76
+ name!: string;
77
+ groups: string[] = [];
78
+ }
79
+
80
+ export class V1_AccessPointGroupStereotypeMapping {
81
+ accessPointGroup!: string;
82
+ stereotypes: V1_StereotypePtr[] = [];
83
+ }
84
+
85
+ export class V1_EntitlementsDataProduct {
86
+ name!: string;
87
+ accessPoints: V1_EntitlementsAccessPoint[] = [];
88
+ accessPointGroupStereotypeMappings: V1_AccessPointGroupStereotypeMapping[] =
89
+ [];
90
+ owner!: V1_AppDirNode;
91
+ }
92
+
93
+ // ------------------------------------ Logical Entitlements (RBAC) -------------------------------------
94
+
49
95
  export class V1_LogicalEntitlements {
50
96
  roleUniverse: V1_Role[] = [];
51
97
  roleMemberships: V1_RoleMembership[] = [];
@@ -61,16 +107,6 @@ export class V1_RoleMembership {
61
107
  role!: V1_Role;
62
108
  }
63
109
 
64
- export class V1_User {
65
- name!: string;
66
- userType!: V1_UserType;
67
- }
68
-
69
- export enum V1_UserType {
70
- WORKFORCE_USER = 'WORKFORCE_USER',
71
- SYSTEM_ACCOUNT = 'SYSTEM_ACCOUNT',
72
- }
73
-
74
110
  export class V1_Privilege {
75
111
  subject!: V1_Role;
76
112
  action!: V1_Action;
@@ -81,4 +117,33 @@ export enum V1_Action {
81
117
  READ,
82
118
  }
83
119
 
120
+ // ------------------------------------- Consumer Entitlement Resources --------------------------------
121
+
84
122
  export class V1_Resource {}
123
+
124
+ export class V1_ConsumerEntitlementResource extends V1_Resource {}
125
+
126
+ export class V1_AccessPointGroupReference extends V1_ConsumerEntitlementResource {
127
+ dataProduct!: V1_EntitlementsDataProduct;
128
+ accessPointGroup!: string;
129
+ }
130
+
131
+ export class V1_DataBundle extends V1_ConsumerEntitlementResource {
132
+ content!: PlainObject;
133
+ }
134
+
135
+ // -------------------------------------- Contract User Membership -------------------------------------
136
+
137
+ export enum V1_UserApprovalStatus {
138
+ PENDING = 'PENDING',
139
+ APPROVED = 'APPROVED',
140
+ DENIED = 'DENIED',
141
+ REVOKED = 'REVOKED',
142
+ CLOSED = 'CLOSED',
143
+ }
144
+
145
+ export class V1_ContractUserMembership {
146
+ guid!: string;
147
+ user!: V1_User;
148
+ status!: V1_UserApprovalStatus;
149
+ }
@@ -0,0 +1,126 @@
1
+ /**
2
+ * Copyright (c) 2026-present, Goldman Sachs
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+
17
+ import type {
18
+ V1_ConsumerEntitlementResource,
19
+ V1_ContractUserMembership,
20
+ V1_OrganizationalScope,
21
+ } from './V1_CoreEntitlements.js';
22
+
23
+ // --------------------------------- Create Data Access Request Payload ---------------------------------
24
+
25
+ export class V1_CreateDataAccessRequestPayload {
26
+ description!: string;
27
+ resourceId!: string;
28
+ deploymentId!: number;
29
+ accessPointGroup!: string;
30
+ consumer!: V1_OrganizationalScope;
31
+ }
32
+
33
+ // -------------------------------------------- Requests -----------------------------------------------
34
+
35
+ export enum V1_RequestState {
36
+ DRAFT = 'DRAFT',
37
+ SUBMITTED_FOR_APPROVALS = 'SUBMITTED_FOR_APPROVALS',
38
+ COMPLETED = 'COMPLETED',
39
+ REJECTED = 'REJECTED',
40
+ INVALIDATED = 'INVALIDATED',
41
+ OBSOLETE = 'OBSOLETE',
42
+ }
43
+
44
+ export abstract class V1_Request {}
45
+
46
+ export class V1_DataRequest extends V1_Request {
47
+ businessJustification!: string;
48
+ guid!: string;
49
+ version!: number;
50
+ state!: V1_RequestState;
51
+ resource!: V1_ConsumerEntitlementResource;
52
+ resourceEnvType!: string;
53
+ members: V1_ContractUserMembership[] = [];
54
+ consumer!: V1_OrganizationalScope;
55
+ createdBy!: string;
56
+ userDigest!: string;
57
+ }
58
+
59
+ // ----------------------------------------- Workflow Tasks ---------------------------------------------
60
+
61
+ export enum V1_WorkflowTaskStatus {
62
+ OPEN = 'OPEN',
63
+ COMPLETED = 'COMPLETED',
64
+ CLOSED = 'CLOSED',
65
+ OBSOLETE = 'OBSOLETE',
66
+ }
67
+
68
+ export enum V1_WorkflowTaskAction {
69
+ APPROVED = 'APPROVED',
70
+ REJECTED = 'REJECTED',
71
+ ESCALATED = 'ESCALATED',
72
+ }
73
+
74
+ export abstract class V1_WorkflowTask {
75
+ taskId!: string;
76
+ workflowGuid!: string;
77
+ status!: V1_WorkflowTaskStatus;
78
+ createdOn!: Date;
79
+ assignees: string[] = [];
80
+ actionedOn?: Date;
81
+ actionedBy?: string;
82
+ url!: string;
83
+ approveUrl?: string;
84
+ denyUrl?: string;
85
+ action?: V1_WorkflowTaskAction;
86
+ description?: string;
87
+ consumer!: V1_OrganizationalScope;
88
+ }
89
+
90
+ export class V1_PrivilegeManagerApprovalTask extends V1_WorkflowTask {
91
+ resourceId!: string;
92
+ accessPointGroup!: string;
93
+ }
94
+
95
+ export class V1_DataOwnerApprovalTask extends V1_WorkflowTask {
96
+ resourceId!: string;
97
+ deploymentId!: string;
98
+ accessPointGroup!: string;
99
+ }
100
+
101
+ // -------------------------------------------- Workflows ----------------------------------------------
102
+
103
+ export enum V1_WorkflowStatus {
104
+ OPEN = 'OPEN',
105
+ COMPLETED = 'COMPLETED',
106
+ CLOSED = 'CLOSED',
107
+ }
108
+
109
+ export class V1_Workflow {
110
+ workflowId!: string;
111
+ dataRequestId!: string;
112
+ status!: V1_WorkflowStatus;
113
+ tasks: V1_WorkflowTask[] = [];
114
+ url!: string;
115
+ }
116
+
117
+ // ------------------------------------------- Responses -----------------------------------------------
118
+
119
+ export class V1_DataRequestWithWorkflow {
120
+ dataRequest!: V1_DataRequest;
121
+ workflows!: V1_Workflow[];
122
+ }
123
+
124
+ export class V1_DataRequestsWithWorkflowResponse {
125
+ dataRequests: V1_DataRequestWithWorkflow[] = [];
126
+ }
@@ -14,8 +14,7 @@
14
14
  * limitations under the License.
15
15
  */
16
16
 
17
- import { type V1_AppDirNode } from './V1_CoreEntitlements.js';
18
- import type { V1_StereotypePtr } from '../../model/packageableElements/domain/V1_StereotypePtr.js';
17
+ import { type V1_EntitlementsDataProduct } from './V1_CoreEntitlements.js';
19
18
  import type { PlainObject } from '@finos/legend-shared';
20
19
 
21
20
  export abstract class V1_EntitlementsDataProductOrigin {}
@@ -45,24 +44,6 @@ export class V1_EntitlementsLakehouseEnvironment {
45
44
  type!: V1_EntitlementsLakehouseEnvironmentType;
46
45
  }
47
46
 
48
- export class V1_EntitlementsAccessPoint {
49
- name!: string;
50
- groups: string[] = [];
51
- }
52
-
53
- export class V1_AccessPointGroupStereotypeMapping {
54
- accessPointGroup!: string;
55
- stereotypes: V1_StereotypePtr[] = [];
56
- }
57
-
58
- export class V1_EntitlementsDataProduct {
59
- name!: string;
60
- accessPoints: V1_EntitlementsAccessPoint[] = [];
61
- accessPointGroupStereotypeMappings: V1_AccessPointGroupStereotypeMapping[] =
62
- [];
63
- owner!: V1_AppDirNode;
64
- }
65
-
66
47
  export class V1_EntitlementsDataProductDetails {
67
48
  id!: string;
68
49
  deploymentId!: number;
@@ -15,12 +15,14 @@
15
15
  */
16
16
 
17
17
  import {
18
- V1_AccessPointGroupReference,
19
- V1_DataBundle,
20
18
  V1_ResourceType,
21
19
  type V1_DataContract,
22
20
  type V1_LiteDataContract,
23
21
  } from '../entitlements/V1_ConsumerEntitlements.js';
22
+ import {
23
+ V1_AccessPointGroupReference,
24
+ V1_DataBundle,
25
+ } from '../entitlements/V1_CoreEntitlements.js';
24
26
 
25
27
  export const V1_transformDataContractToLiteDatacontract = (
26
28
  dataContract: V1_DataContract,
@@ -14,6 +14,8 @@
14
14
  * limitations under the License.
15
15
  */
16
16
 
17
+ import type { V1_PaginationMetadataRecord } from '../entitlements/V1_CoreEntitlements.js';
18
+
17
19
  export enum V1_DataSubscriptionTargetType {
18
20
  BigQuery = 'BigQuery',
19
21
  Snowflake = 'Snowflake',
@@ -30,6 +32,11 @@ export class V1_DataSubscriptionResponse {
30
32
  subscriptions: V1_DataSubscription[] | undefined;
31
33
  }
32
34
 
35
+ export class V1_DataSubscriptionsPaginatedResponse {
36
+ dataContractSubscriptions: V1_DataSubscription[] | undefined;
37
+ paginationMetadataRecord!: V1_PaginationMetadataRecord;
38
+ }
39
+
33
40
  export abstract class V1_DataSubscriptionTarget {}
34
41
 
35
42
  export class V1_SnowflakeTarget extends V1_DataSubscriptionTarget {
@@ -29,7 +29,6 @@ import {
29
29
  usingConstantValueSchema,
30
30
  UnsupportedOperationError,
31
31
  assertErrorThrown,
32
- guaranteeNonNullable,
33
32
  usingModelSchema,
34
33
  } from '@finos/legend-shared';
35
34
  import { V1_PureModelContextData } from '../../model/context/V1_PureModelContextData.js';
@@ -102,26 +101,29 @@ export const V1_entitiesToPureModelContextData = async (
102
101
  TEMPORARY__entityPathIndex?.set(element.path, entity.path);
103
102
  return element;
104
103
  };
105
- // Process entities in batches to avoid per-element setTimeout overhead.
106
- // Each batch yields to the event loop to keep the UI responsive.
107
- const DESERIALIZATION_BATCH_SIZE = 100;
108
- const results: V1_PackageableElement[] = [];
109
- for (let i = 0; i < entities.length; i += DESERIALIZATION_BATCH_SIZE) {
110
- if (i > 0) {
111
- await new Promise<void>((resolve) => setTimeout(resolve, 0));
112
- }
113
- const end = Math.min(i + DESERIALIZATION_BATCH_SIZE, entities.length);
114
- for (let j = i; j < end; j++) {
115
- // NOTE: here we skip the check for classifier path, so there could be cases
116
- // where the classifier path is different from the actua element protocol path
117
- // we might need to do validation here. This can happen when the classifier
118
- // path is changed in the backend. If we are to check for this, we might consider
119
- // not throwing error but quitely print out warnings about elements that would not
120
- // be built.
121
- results.push(entityToElement(guaranteeNonNullable(entities[j])));
122
- }
123
- }
124
- graph.elements = results;
104
+ graph.elements = await Promise.all<V1_PackageableElement>(
105
+ entities.map(
106
+ (e) =>
107
+ new Promise((resolve, reject) =>
108
+ setTimeout(() => {
109
+ try {
110
+ resolve(
111
+ // NOTE: here we skip the check for classifier path, so there could be cases
112
+ // where the classifier path is different from the actua element protocol path
113
+ // we might need to do validation here. This can happen when the classifier
114
+ // path is changed in the backend. If we are to check for this, we might consider
115
+ // not throwing error but quitely print out warnings about elements that would not
116
+ // be built.
117
+ entityToElement(e),
118
+ );
119
+ } catch (error) {
120
+ assertErrorThrown(error);
121
+ reject(error);
122
+ }
123
+ }, 0),
124
+ ),
125
+ ),
126
+ );
125
127
  }
126
128
  } catch (error) {
127
129
  assertErrorThrown(error);
@@ -23,7 +23,7 @@ import {
23
23
  import { V1_IngestDefinition } from '../../../model/packageableElements/ingest/V1_IngestDefinition.js';
24
24
  import type { V1_PackageableElement } from '../../../model/packageableElements/V1_PackageableElement.js';
25
25
  import type { V1_AppDirNode } from '../../../lakehouse/entitlements/V1_CoreEntitlements.js';
26
- import { V1_AppDirNodeModelSchema } from './V1_EntitlementSerializationHelper.js';
26
+ import { V1_AppDirNodeModelSchema } from './lakehouse/V1_CoreEntitlementsSerializationHelper.js';
27
27
  import {
28
28
  createModelSchema,
29
29
  custom,