@finos/legend-graph 32.3.38 → 32.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (119) hide show
  1. package/lib/graph/metamodel/pure/dataProduct/DataProduct.d.ts +5 -0
  2. package/lib/graph/metamodel/pure/dataProduct/DataProduct.d.ts.map +1 -1
  3. package/lib/graph/metamodel/pure/dataProduct/DataProduct.js +6 -0
  4. package/lib/graph/metamodel/pure/dataProduct/DataProduct.js.map +1 -1
  5. package/lib/graph-manager/AbstractPureGraphManager.d.ts +13 -1
  6. package/lib/graph-manager/AbstractPureGraphManager.d.ts.map +1 -1
  7. package/lib/graph-manager/AbstractPureGraphManager.js.map +1 -1
  8. package/lib/graph-manager/action/analytics/data-product/DataProductAnalysis.d.ts +30 -0
  9. package/lib/graph-manager/action/analytics/data-product/DataProductAnalysis.d.ts.map +1 -0
  10. package/lib/graph-manager/action/analytics/data-product/DataProductAnalysis.js +32 -0
  11. package/lib/graph-manager/action/analytics/data-product/DataProductAnalysis.js.map +1 -0
  12. package/lib/graph-manager/action/query/Query.d.ts +12 -3
  13. package/lib/graph-manager/action/query/Query.d.ts.map +1 -1
  14. package/lib/graph-manager/action/query/Query.js +9 -0
  15. package/lib/graph-manager/action/query/Query.js.map +1 -1
  16. package/lib/graph-manager/helpers/DataProductHelper.d.ts.map +1 -1
  17. package/lib/graph-manager/helpers/DataProductHelper.js +2 -1
  18. package/lib/graph-manager/helpers/DataProductHelper.js.map +1 -1
  19. package/lib/graph-manager/protocol/pure/v1/V1_PureGraphManager.d.ts +12 -4
  20. package/lib/graph-manager/protocol/pure/v1/V1_PureGraphManager.d.ts.map +1 -1
  21. package/lib/graph-manager/protocol/pure/v1/V1_PureGraphManager.js +128 -11
  22. package/lib/graph-manager/protocol/pure/v1/V1_PureGraphManager.js.map +1 -1
  23. package/lib/graph-manager/protocol/pure/v1/engine/V1_EngineHelper.d.ts.map +1 -1
  24. package/lib/graph-manager/protocol/pure/v1/engine/V1_EngineHelper.js +34 -4
  25. package/lib/graph-manager/protocol/pure/v1/engine/V1_EngineHelper.js.map +1 -1
  26. package/lib/graph-manager/protocol/pure/v1/engine/query/V1_Query.d.ts +11 -4
  27. package/lib/graph-manager/protocol/pure/v1/engine/query/V1_Query.d.ts.map +1 -1
  28. package/lib/graph-manager/protocol/pure/v1/engine/query/V1_Query.js +26 -8
  29. package/lib/graph-manager/protocol/pure/v1/engine/query/V1_Query.js.map +1 -1
  30. package/lib/graph-manager/protocol/pure/v1/lakehouse/deploy/V1_DataProductArtifact.d.ts +2 -0
  31. package/lib/graph-manager/protocol/pure/v1/lakehouse/deploy/V1_DataProductArtifact.d.ts.map +1 -1
  32. package/lib/graph-manager/protocol/pure/v1/lakehouse/deploy/V1_DataProductArtifact.js +3 -0
  33. package/lib/graph-manager/protocol/pure/v1/lakehouse/deploy/V1_DataProductArtifact.js.map +1 -1
  34. package/lib/graph-manager/protocol/pure/v1/lakehouse/entitlements/V1_ConsumerEntitlements.d.ts +5 -24
  35. package/lib/graph-manager/protocol/pure/v1/lakehouse/entitlements/V1_ConsumerEntitlements.d.ts.map +1 -1
  36. package/lib/graph-manager/protocol/pure/v1/lakehouse/entitlements/V1_ConsumerEntitlements.js +5 -24
  37. package/lib/graph-manager/protocol/pure/v1/lakehouse/entitlements/V1_ConsumerEntitlements.js.map +1 -1
  38. package/lib/graph-manager/protocol/pure/v1/lakehouse/entitlements/V1_CoreEntitlements.d.ts +50 -9
  39. package/lib/graph-manager/protocol/pure/v1/lakehouse/entitlements/V1_CoreEntitlements.d.ts.map +1 -1
  40. package/lib/graph-manager/protocol/pure/v1/lakehouse/entitlements/V1_CoreEntitlements.js +58 -10
  41. package/lib/graph-manager/protocol/pure/v1/lakehouse/entitlements/V1_CoreEntitlements.js.map +1 -1
  42. package/lib/graph-manager/protocol/pure/v1/lakehouse/entitlements/V1_DataAccessRequest.d.ts +100 -0
  43. package/lib/graph-manager/protocol/pure/v1/lakehouse/entitlements/V1_DataAccessRequest.d.ts.map +1 -0
  44. package/lib/graph-manager/protocol/pure/v1/lakehouse/entitlements/V1_DataAccessRequest.js +108 -0
  45. package/lib/graph-manager/protocol/pure/v1/lakehouse/entitlements/V1_DataAccessRequest.js.map +1 -0
  46. package/lib/graph-manager/protocol/pure/v1/lakehouse/entitlements/V1_EntitlementsDataProduct.d.ts +1 -16
  47. package/lib/graph-manager/protocol/pure/v1/lakehouse/entitlements/V1_EntitlementsDataProduct.d.ts.map +1 -1
  48. package/lib/graph-manager/protocol/pure/v1/lakehouse/entitlements/V1_EntitlementsDataProduct.js +0 -14
  49. package/lib/graph-manager/protocol/pure/v1/lakehouse/entitlements/V1_EntitlementsDataProduct.js.map +1 -1
  50. package/lib/graph-manager/protocol/pure/v1/lakehouse/helpers/V1_ConsumerEntitlementsUtils.d.ts.map +1 -1
  51. package/lib/graph-manager/protocol/pure/v1/lakehouse/helpers/V1_ConsumerEntitlementsUtils.js +2 -1
  52. package/lib/graph-manager/protocol/pure/v1/lakehouse/helpers/V1_ConsumerEntitlementsUtils.js.map +1 -1
  53. package/lib/graph-manager/protocol/pure/v1/lakehouse/subscriptions/V1_ConsumerSubscriptions.d.ts +5 -0
  54. package/lib/graph-manager/protocol/pure/v1/lakehouse/subscriptions/V1_ConsumerSubscriptions.d.ts.map +1 -1
  55. package/lib/graph-manager/protocol/pure/v1/lakehouse/subscriptions/V1_ConsumerSubscriptions.js +4 -0
  56. package/lib/graph-manager/protocol/pure/v1/lakehouse/subscriptions/V1_ConsumerSubscriptions.js.map +1 -1
  57. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_IngestSerializationHelper.js +1 -1
  58. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_IngestSerializationHelper.js.map +1 -1
  59. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/lakehouse/V1_ConsumerEntitlementsSerializationHelper.d.ts +45 -0
  60. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/lakehouse/V1_ConsumerEntitlementsSerializationHelper.d.ts.map +1 -0
  61. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/lakehouse/V1_ConsumerEntitlementsSerializationHelper.js +190 -0
  62. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/lakehouse/V1_ConsumerEntitlementsSerializationHelper.js.map +1 -0
  63. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/lakehouse/V1_CoreEntitlementsSerializationHelper.d.ts +41 -0
  64. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/lakehouse/V1_CoreEntitlementsSerializationHelper.d.ts.map +1 -0
  65. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/lakehouse/V1_CoreEntitlementsSerializationHelper.js +141 -0
  66. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/lakehouse/V1_CoreEntitlementsSerializationHelper.js.map +1 -0
  67. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/lakehouse/V1_DataAccessRequestSerializationHelper.d.ts +34 -0
  68. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/lakehouse/V1_DataAccessRequestSerializationHelper.d.ts.map +1 -0
  69. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/lakehouse/V1_DataAccessRequestSerializationHelper.js +136 -0
  70. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/lakehouse/V1_DataAccessRequestSerializationHelper.js.map +1 -0
  71. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/lakehouse/V1_EntitlementsDataProductSerializationHelper.d.ts +31 -0
  72. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/lakehouse/V1_EntitlementsDataProductSerializationHelper.d.ts.map +1 -0
  73. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/lakehouse/V1_EntitlementsDataProductSerializationHelper.js +98 -0
  74. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/lakehouse/V1_EntitlementsDataProductSerializationHelper.js.map +1 -0
  75. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/lakehouse/V1_EntitlementsTasksSerializationHelper.d.ts +18 -0
  76. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/lakehouse/V1_EntitlementsTasksSerializationHelper.d.ts.map +1 -0
  77. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/lakehouse/V1_EntitlementsTasksSerializationHelper.js +22 -0
  78. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/lakehouse/V1_EntitlementsTasksSerializationHelper.js.map +1 -0
  79. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/{V1_SubscriptionSerializationHelper.d.ts → lakehouse/V1_SubscriptionSerializationHelper.d.ts} +2 -1
  80. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/lakehouse/V1_SubscriptionSerializationHelper.d.ts.map +1 -0
  81. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/{V1_SubscriptionSerializationHelper.js → lakehouse/V1_SubscriptionSerializationHelper.js} +6 -1
  82. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/lakehouse/V1_SubscriptionSerializationHelper.js.map +1 -0
  83. package/lib/index.d.ts +13 -7
  84. package/lib/index.d.ts.map +1 -1
  85. package/lib/index.js +13 -7
  86. package/lib/index.js.map +1 -1
  87. package/lib/package.json +1 -1
  88. package/package.json +1 -1
  89. package/src/graph/metamodel/pure/dataProduct/DataProduct.ts +6 -0
  90. package/src/graph-manager/AbstractPureGraphManager.ts +35 -1
  91. package/src/graph-manager/action/analytics/data-product/DataProductAnalysis.ts +47 -0
  92. package/src/graph-manager/action/query/Query.ts +15 -3
  93. package/src/graph-manager/helpers/DataProductHelper.ts +2 -1
  94. package/src/graph-manager/protocol/pure/v1/V1_PureGraphManager.ts +236 -16
  95. package/src/graph-manager/protocol/pure/v1/engine/V1_EngineHelper.ts +41 -4
  96. package/src/graph-manager/protocol/pure/v1/engine/query/V1_Query.ts +41 -10
  97. package/src/graph-manager/protocol/pure/v1/lakehouse/deploy/V1_DataProductArtifact.ts +5 -0
  98. package/src/graph-manager/protocol/pure/v1/lakehouse/entitlements/V1_ConsumerEntitlements.ts +9 -28
  99. package/src/graph-manager/protocol/pure/v1/lakehouse/entitlements/V1_CoreEntitlements.ts +76 -11
  100. package/src/graph-manager/protocol/pure/v1/lakehouse/entitlements/V1_DataAccessRequest.ts +126 -0
  101. package/src/graph-manager/protocol/pure/v1/lakehouse/entitlements/V1_EntitlementsDataProduct.ts +1 -20
  102. package/src/graph-manager/protocol/pure/v1/lakehouse/helpers/V1_ConsumerEntitlementsUtils.ts +4 -2
  103. package/src/graph-manager/protocol/pure/v1/lakehouse/subscriptions/V1_ConsumerSubscriptions.ts +7 -0
  104. package/src/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_IngestSerializationHelper.ts +1 -1
  105. package/src/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/lakehouse/V1_ConsumerEntitlementsSerializationHelper.ts +394 -0
  106. package/src/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/lakehouse/V1_CoreEntitlementsSerializationHelper.ts +238 -0
  107. package/src/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/lakehouse/V1_DataAccessRequestSerializationHelper.ts +261 -0
  108. package/src/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/lakehouse/V1_EntitlementsDataProductSerializationHelper.ts +179 -0
  109. package/src/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/lakehouse/V1_EntitlementsTasksSerializationHelper.ts +26 -0
  110. package/src/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/{V1_SubscriptionSerializationHelper.ts → lakehouse/V1_SubscriptionSerializationHelper.ts} +11 -1
  111. package/src/index.ts +16 -95
  112. package/tsconfig.json +8 -2
  113. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_EntitlementSerializationHelper.d.ts +0 -77
  114. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_EntitlementSerializationHelper.d.ts.map +0 -1
  115. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_EntitlementSerializationHelper.js +0 -376
  116. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_EntitlementSerializationHelper.js.map +0 -1
  117. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_SubscriptionSerializationHelper.d.ts.map +0 -1
  118. package/lib/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_SubscriptionSerializationHelper.js.map +0 -1
  119. package/src/graph-manager/protocol/pure/v1/transformation/pureProtocol/serializationHelpers/V1_EntitlementSerializationHelper.ts +0 -701
@@ -45,6 +45,7 @@ import { V1_relationElementModelSchema } from '../../transformation/pureProtocol
45
45
  import { V1_pureModelContextDataPropSchema } from '../../transformation/pureProtocol/V1_PureProtocolSerialization.js';
46
46
  import type { V1_PureModelContextData } from '../../model/context/V1_PureModelContextData.js';
47
47
  import type { V1_Multiplicity } from '../../model/packageableElements/domain/V1_Multiplicity.js';
48
+ import { V1_MappedEntity } from '../../engine/analytics/V1_MappingModelCoverageAnalysis.js';
48
49
  import { V1_multiplicityModelSchema } from '../../transformation/pureProtocol/serializationHelpers/V1_CoreSerializationHelper.js';
49
50
 
50
51
  export enum V1_DataProductTypeEnum {
@@ -275,11 +276,15 @@ export class V1_DiagramInfo {
275
276
  export class V1_MappingGenerationInfo {
276
277
  path!: string;
277
278
  model!: V1_PureModelContextData;
279
+ mappedEntities: V1_MappedEntity[] = [];
278
280
 
279
281
  static readonly serialization = new SerializationFactory(
280
282
  createModelSchema(V1_MappingGenerationInfo, {
281
283
  path: primitive(),
282
284
  model: V1_pureModelContextDataPropSchema,
285
+ mappedEntities: list(
286
+ usingModelSchema(V1_MappedEntity.serialization.schema),
287
+ ),
283
288
  }),
284
289
  );
285
290
  }
@@ -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 {
@@ -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,