mftsccs-browser 2.1.243-dev → 2.1.244-dev
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.
- package/README.md +1 -1
- package/dist/main.bundle.js +1 -1
- package/dist/serviceWorker.bundle.js +1 -1
- package/dist/types/DataStructures/AccessControl/AccessControlModels.d.ts +84 -0
- package/dist/types/DataStructures/BaseUrl.d.ts +1 -0
- package/dist/types/Services/AccessControl/APIClientService.d.ts +167 -0
- package/dist/types/Services/AccessControl/AccessControl.d.ts +114 -0
- package/dist/types/Services/Search/DataIdFormat.d.ts +1 -1
- package/dist/types/Services/Security/GetRequestHeader.d.ts +2 -2
- package/dist/types/app.d.ts +5 -1
- package/package.json +2 -2
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* AccessControlModels
|
|
3
|
+
*
|
|
4
|
+
* Data structures for Access Control operations.
|
|
5
|
+
* Contains all request/response types for the access control API.
|
|
6
|
+
*/
|
|
7
|
+
export interface AccessRequest {
|
|
8
|
+
accessId: number;
|
|
9
|
+
permission: string;
|
|
10
|
+
entityId?: number | null;
|
|
11
|
+
}
|
|
12
|
+
export interface AccessResult {
|
|
13
|
+
accessId: number;
|
|
14
|
+
permission: string;
|
|
15
|
+
entityId?: number | null;
|
|
16
|
+
hasAccess: boolean;
|
|
17
|
+
}
|
|
18
|
+
export interface AccessControlAPIResponse<T = any> {
|
|
19
|
+
status: boolean;
|
|
20
|
+
data?: T;
|
|
21
|
+
message?: string;
|
|
22
|
+
errorCode?: string;
|
|
23
|
+
}
|
|
24
|
+
export interface BulkAccessTarget {
|
|
25
|
+
entityId: number;
|
|
26
|
+
permissions: string[];
|
|
27
|
+
}
|
|
28
|
+
export interface BulkAccessRequest {
|
|
29
|
+
accessId?: number;
|
|
30
|
+
targets: BulkAccessTarget[];
|
|
31
|
+
}
|
|
32
|
+
export interface BulkCheckAccessRequest {
|
|
33
|
+
accessIds: number[];
|
|
34
|
+
permission: string;
|
|
35
|
+
entityId?: number | null;
|
|
36
|
+
}
|
|
37
|
+
export interface AccessInheritanceRequest {
|
|
38
|
+
accessId?: number;
|
|
39
|
+
connectionTypeId?: number;
|
|
40
|
+
enable?: boolean;
|
|
41
|
+
}
|
|
42
|
+
export interface SuperAdminRequest {
|
|
43
|
+
accessId?: number;
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Request model for parent access inheritance operations
|
|
47
|
+
* Mirrors C# ParentAccessInheritanceRequest
|
|
48
|
+
*/
|
|
49
|
+
export interface ParentAccessInheritanceRequest {
|
|
50
|
+
parentAccessId: number;
|
|
51
|
+
childAccessId?: number | null;
|
|
52
|
+
}
|
|
53
|
+
export interface ParentAccessInheritanceWithConceptRequest {
|
|
54
|
+
parentConceptId: number;
|
|
55
|
+
childConceptId?: number | null;
|
|
56
|
+
}
|
|
57
|
+
export interface BulkParentAccessInheritanceWithConceptRequest {
|
|
58
|
+
parentConceptId: number;
|
|
59
|
+
childConceptIds: number[];
|
|
60
|
+
}
|
|
61
|
+
export interface BulkParentAccessInheritanceResult {
|
|
62
|
+
childConceptId: number;
|
|
63
|
+
accessId: number;
|
|
64
|
+
success: boolean;
|
|
65
|
+
message?: string;
|
|
66
|
+
}
|
|
67
|
+
export interface SuperAdminWithConceptRequest {
|
|
68
|
+
conceptId: number;
|
|
69
|
+
}
|
|
70
|
+
export interface AccessInheritanceWithConceptRequest {
|
|
71
|
+
conceptId: number;
|
|
72
|
+
connectionTypeId?: number;
|
|
73
|
+
enable?: boolean;
|
|
74
|
+
}
|
|
75
|
+
export interface ConceptAccessRequest {
|
|
76
|
+
conceptIds: number;
|
|
77
|
+
permission: string;
|
|
78
|
+
entityId?: number | null;
|
|
79
|
+
}
|
|
80
|
+
export interface BulkConceptAccessRequest {
|
|
81
|
+
conceptIds: number[];
|
|
82
|
+
permissions: string[];
|
|
83
|
+
entityId?: number | null;
|
|
84
|
+
}
|
|
@@ -9,6 +9,7 @@ export declare class BaseUrl {
|
|
|
9
9
|
static BASE_APPLICATION: string;
|
|
10
10
|
static DOCUMENTATION_WIDGET: number;
|
|
11
11
|
static isNearestCache: boolean;
|
|
12
|
+
static ACCESS_CONTROL_BASE_URL: string;
|
|
12
13
|
static isPwa: boolean;
|
|
13
14
|
static FLAGS: any;
|
|
14
15
|
static RECAPTCHA_SITE_KEY: string;
|
|
@@ -0,0 +1,167 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* APIClientService
|
|
3
|
+
*
|
|
4
|
+
* API client service for Access Control endpoints.
|
|
5
|
+
* Provides typed HTTP methods for all access control API operations.
|
|
6
|
+
*
|
|
7
|
+
* This is the TypeScript equivalent of the C# APIClientService class.
|
|
8
|
+
*/
|
|
9
|
+
import { AccessRequest, AccessResult, AccessControlAPIResponse, BulkAccessRequest, BulkCheckAccessRequest, AccessInheritanceRequest, SuperAdminRequest, BulkConceptAccessRequest, ConceptAccessRequest, ParentAccessInheritanceRequest, ParentAccessInheritanceWithConceptRequest, BulkParentAccessInheritanceWithConceptRequest, BulkParentAccessInheritanceResult, SuperAdminWithConceptRequest, AccessInheritanceWithConceptRequest } from '../../DataStructures/AccessControl/AccessControlModels';
|
|
10
|
+
export interface IAPIClientService {
|
|
11
|
+
assignAccessAsync(request: AccessRequest): Promise<AccessControlAPIResponse<AccessResult>>;
|
|
12
|
+
checkAccessAsync(request: AccessRequest): Promise<AccessControlAPIResponse<AccessResult>>;
|
|
13
|
+
revokeAccessAsync(request: AccessRequest): Promise<AccessControlAPIResponse<AccessResult>>;
|
|
14
|
+
assignAccessBulkAsync(request: BulkAccessRequest): Promise<AccessControlAPIResponse<AccessResult[]>>;
|
|
15
|
+
assignConceptAccessBulkAsync(request: BulkConceptAccessRequest): Promise<AccessControlAPIResponse<AccessResult[]>>;
|
|
16
|
+
revokeAccessBulkAsync(request: BulkAccessRequest): Promise<AccessControlAPIResponse<AccessResult[]>>;
|
|
17
|
+
revokeConceptAccessBulkAsync(request: BulkConceptAccessRequest): Promise<AccessControlAPIResponse<AccessResult[]>>;
|
|
18
|
+
checkAccessBulkAsync(request: BulkCheckAccessRequest): Promise<AccessControlAPIResponse<AccessResult[]>>;
|
|
19
|
+
getAccessByIdAsync(accessId: number): Promise<AccessControlAPIResponse<AccessResult[]>>;
|
|
20
|
+
setAccessInheritanceAsync(request: AccessInheritanceRequest): Promise<AccessControlAPIResponse>;
|
|
21
|
+
getAccessInheritanceStatusAsync(accessId: number, connectionTypeId?: number): Promise<AccessControlAPIResponse>;
|
|
22
|
+
assignSuperAdminAccessAsync(request: SuperAdminRequest): Promise<AccessControlAPIResponse>;
|
|
23
|
+
revokeSuperAdminAccessAsync(request: SuperAdminRequest): Promise<AccessControlAPIResponse>;
|
|
24
|
+
checkSuperAdminStatusAsync(accessId: number): Promise<AccessControlAPIResponse>;
|
|
25
|
+
setParentAccessInheritanceAsync(request: ParentAccessInheritanceRequest): Promise<AccessControlAPIResponse>;
|
|
26
|
+
removeParentAccessInheritanceAsync(accessId: number, parentAccessId?: number): Promise<AccessControlAPIResponse>;
|
|
27
|
+
hasParentAccessInheritanceAsync(accessId: number, parentAccessId?: number): Promise<AccessControlAPIResponse>;
|
|
28
|
+
getParentAccessIdAsync(accessId: number): Promise<AccessControlAPIResponse>;
|
|
29
|
+
setParentAccessInheritanceByConceptAsync(request: ParentAccessInheritanceWithConceptRequest): Promise<AccessControlAPIResponse>;
|
|
30
|
+
setParentAccessInheritanceBulkByConceptAsync(request: BulkParentAccessInheritanceWithConceptRequest): Promise<AccessControlAPIResponse<BulkParentAccessInheritanceResult[]>>;
|
|
31
|
+
removeParentAccessInheritanceByConceptAsync(childConceptId: number, parentConceptId?: number): Promise<AccessControlAPIResponse>;
|
|
32
|
+
removeParentAccessInheritanceBulkByConceptAsync(request: BulkParentAccessInheritanceWithConceptRequest): Promise<AccessControlAPIResponse<BulkParentAccessInheritanceResult[]>>;
|
|
33
|
+
hasParentAccessInheritanceByConceptAsync(childConceptId: number, parentConceptId?: number): Promise<AccessControlAPIResponse>;
|
|
34
|
+
getParentAccessIdByConceptAsync(childConceptId: number): Promise<AccessControlAPIResponse>;
|
|
35
|
+
assignSuperAdminByConceptAsync(request: SuperAdminWithConceptRequest): Promise<AccessControlAPIResponse>;
|
|
36
|
+
revokeSuperAdminByConceptAsync(request: SuperAdminWithConceptRequest): Promise<AccessControlAPIResponse>;
|
|
37
|
+
checkSuperAdminByConceptAsync(conceptId: number): Promise<AccessControlAPIResponse>;
|
|
38
|
+
setAccessInheritanceByConceptAsync(request: AccessInheritanceWithConceptRequest): Promise<AccessControlAPIResponse>;
|
|
39
|
+
getAccessInheritanceStatusByConceptAsync(conceptId: number, connectionTypeId?: number): Promise<AccessControlAPIResponse>;
|
|
40
|
+
}
|
|
41
|
+
export declare class APIClientService implements IAPIClientService {
|
|
42
|
+
private static get baseUrl();
|
|
43
|
+
private static getAsync;
|
|
44
|
+
private static postAsync;
|
|
45
|
+
private static deleteAsync;
|
|
46
|
+
/**
|
|
47
|
+
* Assign access to an entity
|
|
48
|
+
*/
|
|
49
|
+
assignAccessAsync(request: AccessRequest): Promise<AccessControlAPIResponse<AccessResult>>;
|
|
50
|
+
/**
|
|
51
|
+
* Check if an entity has access
|
|
52
|
+
*/
|
|
53
|
+
checkAccessAsync(request: AccessRequest): Promise<AccessControlAPIResponse<AccessResult>>;
|
|
54
|
+
/**
|
|
55
|
+
* Revoke access from an entity
|
|
56
|
+
*/
|
|
57
|
+
revokeAccessAsync(request: AccessRequest): Promise<AccessControlAPIResponse<AccessResult>>;
|
|
58
|
+
/**
|
|
59
|
+
* Assign access to multiple targets in bulk
|
|
60
|
+
*/
|
|
61
|
+
assignAccessBulkAsync(request: BulkAccessRequest): Promise<AccessControlAPIResponse<AccessResult[]>>;
|
|
62
|
+
/**
|
|
63
|
+
* Revoke access from multiple targets in bulk
|
|
64
|
+
*/
|
|
65
|
+
revokeAccessBulkAsync(request: BulkAccessRequest): Promise<AccessControlAPIResponse<AccessResult[]>>;
|
|
66
|
+
/**
|
|
67
|
+
* Check access for multiple targets in bulk
|
|
68
|
+
*/
|
|
69
|
+
checkAccessBulkAsync(request: BulkCheckAccessRequest): Promise<AccessControlAPIResponse<AccessResult[]>>;
|
|
70
|
+
/**
|
|
71
|
+
* Get all access entries for a specific accessId
|
|
72
|
+
*/
|
|
73
|
+
getAccessByIdAsync(accessId: number): Promise<AccessControlAPIResponse<AccessResult[]>>;
|
|
74
|
+
/**
|
|
75
|
+
* Set access inheritance for an access ID
|
|
76
|
+
*/
|
|
77
|
+
setAccessInheritanceAsync(request: AccessInheritanceRequest): Promise<AccessControlAPIResponse>;
|
|
78
|
+
/**
|
|
79
|
+
* Get access inheritance status
|
|
80
|
+
*/
|
|
81
|
+
getAccessInheritanceStatusAsync(accessId: number, connectionTypeId?: number): Promise<AccessControlAPIResponse>;
|
|
82
|
+
/**
|
|
83
|
+
* Assign super admin access
|
|
84
|
+
*/
|
|
85
|
+
assignSuperAdminAccessAsync(request: SuperAdminRequest): Promise<AccessControlAPIResponse>;
|
|
86
|
+
/**
|
|
87
|
+
* Revoke super admin access
|
|
88
|
+
*/
|
|
89
|
+
revokeSuperAdminAccessAsync(request: SuperAdminRequest): Promise<AccessControlAPIResponse>;
|
|
90
|
+
/**
|
|
91
|
+
* Check super admin status
|
|
92
|
+
*/
|
|
93
|
+
checkSuperAdminStatusAsync(accessId: number): Promise<AccessControlAPIResponse>;
|
|
94
|
+
/**
|
|
95
|
+
* Create a new standalone access record for a concept
|
|
96
|
+
*/
|
|
97
|
+
assignConceptAccessAsync(request: ConceptAccessRequest): Promise<AccessControlAPIResponse<AccessResult>>;
|
|
98
|
+
/**
|
|
99
|
+
* Create new standalone access records for multiple concepts in bulk
|
|
100
|
+
*/
|
|
101
|
+
assignConceptAccessBulkAsync(request: BulkConceptAccessRequest): Promise<AccessControlAPIResponse<AccessResult[]>>;
|
|
102
|
+
/**
|
|
103
|
+
* Revoke access records for multiple concepts in bulk
|
|
104
|
+
*/
|
|
105
|
+
revokeConceptAccessBulkAsync(request: BulkConceptAccessRequest): Promise<AccessControlAPIResponse<AccessResult[]>>;
|
|
106
|
+
/**
|
|
107
|
+
* Set parent access inheritance link
|
|
108
|
+
*/
|
|
109
|
+
setParentAccessInheritanceAsync(request: ParentAccessInheritanceRequest): Promise<AccessControlAPIResponse>;
|
|
110
|
+
/**
|
|
111
|
+
* Remove parent access inheritance link
|
|
112
|
+
*/
|
|
113
|
+
removeParentAccessInheritanceAsync(accessId: number, parentAccessId?: number): Promise<AccessControlAPIResponse>;
|
|
114
|
+
/**
|
|
115
|
+
* Check if parent access inheritance link exists
|
|
116
|
+
*/
|
|
117
|
+
hasParentAccessInheritanceAsync(accessId: number, parentAccessId?: number): Promise<AccessControlAPIResponse>;
|
|
118
|
+
/**
|
|
119
|
+
* Get the parent access ID for a given access ID
|
|
120
|
+
*/
|
|
121
|
+
getParentAccessIdAsync(accessId: number): Promise<AccessControlAPIResponse>;
|
|
122
|
+
/**
|
|
123
|
+
* Set parent access inheritance by concept IDs (server resolves conceptId → accessId)
|
|
124
|
+
*/
|
|
125
|
+
setParentAccessInheritanceByConceptAsync(request: ParentAccessInheritanceWithConceptRequest): Promise<AccessControlAPIResponse>;
|
|
126
|
+
/**
|
|
127
|
+
* Set parent access inheritance for multiple children with one parent (concept-based)
|
|
128
|
+
*/
|
|
129
|
+
setParentAccessInheritanceBulkByConceptAsync(request: BulkParentAccessInheritanceWithConceptRequest): Promise<AccessControlAPIResponse<BulkParentAccessInheritanceResult[]>>;
|
|
130
|
+
/**
|
|
131
|
+
* Remove parent access inheritance by concept IDs
|
|
132
|
+
*/
|
|
133
|
+
removeParentAccessInheritanceByConceptAsync(childConceptId: number, parentConceptId?: number): Promise<AccessControlAPIResponse>;
|
|
134
|
+
/**
|
|
135
|
+
* Remove parent access inheritance for multiple children (concept-based)
|
|
136
|
+
*/
|
|
137
|
+
removeParentAccessInheritanceBulkByConceptAsync(request: BulkParentAccessInheritanceWithConceptRequest): Promise<AccessControlAPIResponse<BulkParentAccessInheritanceResult[]>>;
|
|
138
|
+
/**
|
|
139
|
+
* Check if parent access inheritance exists by concept IDs
|
|
140
|
+
*/
|
|
141
|
+
hasParentAccessInheritanceByConceptAsync(childConceptId: number, parentConceptId?: number): Promise<AccessControlAPIResponse>;
|
|
142
|
+
/**
|
|
143
|
+
* Get the parent access ID by child concept ID
|
|
144
|
+
*/
|
|
145
|
+
getParentAccessIdByConceptAsync(childConceptId: number): Promise<AccessControlAPIResponse>;
|
|
146
|
+
/**
|
|
147
|
+
* Assign super admin by concept ID
|
|
148
|
+
*/
|
|
149
|
+
assignSuperAdminByConceptAsync(request: SuperAdminWithConceptRequest): Promise<AccessControlAPIResponse>;
|
|
150
|
+
/**
|
|
151
|
+
* Revoke super admin by concept ID
|
|
152
|
+
*/
|
|
153
|
+
revokeSuperAdminByConceptAsync(request: SuperAdminWithConceptRequest): Promise<AccessControlAPIResponse>;
|
|
154
|
+
/**
|
|
155
|
+
* Check super admin status by concept ID
|
|
156
|
+
*/
|
|
157
|
+
checkSuperAdminByConceptAsync(conceptId: number): Promise<AccessControlAPIResponse>;
|
|
158
|
+
/**
|
|
159
|
+
* Set access inheritance by concept ID
|
|
160
|
+
*/
|
|
161
|
+
setAccessInheritanceByConceptAsync(request: AccessInheritanceWithConceptRequest): Promise<AccessControlAPIResponse>;
|
|
162
|
+
/**
|
|
163
|
+
* Get access inheritance status by concept ID
|
|
164
|
+
*/
|
|
165
|
+
getAccessInheritanceStatusByConceptAsync(conceptId: number, connectionTypeId?: number): Promise<AccessControlAPIResponse>;
|
|
166
|
+
}
|
|
167
|
+
export default APIClientService;
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* AccessControlService
|
|
3
|
+
*
|
|
4
|
+
* This service provides access control functionality including:
|
|
5
|
+
* - 5-phase bulk access check with BFS inheritance graph traversal
|
|
6
|
+
* - Assign and revoke access permissions
|
|
7
|
+
* - Bulk operations for access management
|
|
8
|
+
* - Super admin checks
|
|
9
|
+
* - Access inheritance management (including parent access inheritance)
|
|
10
|
+
*
|
|
11
|
+
* This is the TypeScript equivalent of the C# AccessControlService class (v3.4.0).
|
|
12
|
+
*/
|
|
13
|
+
import { AccessResult, BulkConceptAccessRequest, BulkParentAccessInheritanceResult } from '../../DataStructures/AccessControl/AccessControlModels';
|
|
14
|
+
import { IAPIClientService } from './APIClientService';
|
|
15
|
+
/**
|
|
16
|
+
* Interface for the Access Control Service
|
|
17
|
+
*/
|
|
18
|
+
export interface IAccessControlService {
|
|
19
|
+
checkAccess(conceptId: number, permission: string, entityId?: number | null): Promise<boolean>;
|
|
20
|
+
checkAccessBulk(conceptIds: number[], permission: string, entityId?: number | null): Promise<Map<number, boolean>>;
|
|
21
|
+
getConceptIdsWithPermission(permission: string, conceptIdsFilter: number[], entityId?: number | null): Promise<number[]>;
|
|
22
|
+
assignAccess(request: BulkConceptAccessRequest): Promise<AccessResult[]>;
|
|
23
|
+
revokeAccess(conceptId: number, permission: string, entityId?: number | null): Promise<boolean>;
|
|
24
|
+
revokeAccessBulk(request: BulkConceptAccessRequest): Promise<AccessResult[]>;
|
|
25
|
+
setAccessInheritance(conceptId: number): Promise<boolean>;
|
|
26
|
+
getAccessInheritanceStatus(conceptId: number, connectionTypeId?: number): Promise<boolean>;
|
|
27
|
+
setAccessInheritanceStatus(conceptId: number, isEnabled: boolean, connectionTypeId?: number): Promise<boolean>;
|
|
28
|
+
setParentAccessInheritance(conceptId: number, parentConceptId: number): Promise<number>;
|
|
29
|
+
setParentAccessInheritanceBulk(childConceptIds: number[], parentConceptId: number): Promise<BulkParentAccessInheritanceResult[]>;
|
|
30
|
+
removeParentAccessInheritance(conceptId: number, parentConceptId?: number): Promise<string>;
|
|
31
|
+
removeParentAccessInheritanceBulk(childConceptIds: number[], parentConceptId?: number): Promise<BulkParentAccessInheritanceResult[]>;
|
|
32
|
+
hasParentAccessInheritance(conceptId: number, parentConceptId?: number): Promise<boolean>;
|
|
33
|
+
getParentAccessId(conceptId: number): Promise<number | null>;
|
|
34
|
+
isSuperAdmin(entityId: number): Promise<boolean>;
|
|
35
|
+
assignSuperAdmin(entityId: number): Promise<number>;
|
|
36
|
+
revokeSuperAdmin(entityId: number): Promise<string>;
|
|
37
|
+
}
|
|
38
|
+
export declare class AccessControlService implements IAccessControlService {
|
|
39
|
+
private readonly apiClient;
|
|
40
|
+
constructor(apiClient?: IAPIClientService);
|
|
41
|
+
/**
|
|
42
|
+
* Check whether a user/entity has the specified permission on a single concept.
|
|
43
|
+
* Delegates to checkAccessBulk for full inheritance + group resolution.
|
|
44
|
+
*/
|
|
45
|
+
checkAccess(conceptId: number, permission: string, entityId?: number | null): Promise<boolean>;
|
|
46
|
+
/**
|
|
47
|
+
* 5-phase bulk access check algorithm.
|
|
48
|
+
* Matches the C# AccessControlService.CheckAccessBulk implementation.
|
|
49
|
+
*
|
|
50
|
+
* Phase 1: Super-admin short-circuit
|
|
51
|
+
* Phase 2: Fast-path classification (owner, public, type concepts)
|
|
52
|
+
* Phase 3: BFS inheritance graph resolution (3 sources)
|
|
53
|
+
* Phase 4: Bulk access decision resolution (API)
|
|
54
|
+
* Phase 5: Grant-only merge per concept
|
|
55
|
+
*/
|
|
56
|
+
checkAccessBulk(conceptIds: number[], permission: string, entityId?: number | null): Promise<Map<number, boolean>>;
|
|
57
|
+
/**
|
|
58
|
+
* Get all conceptIds which have a certain permission for an entity.
|
|
59
|
+
* Delegates to checkAccessBulk for full inheritance support.
|
|
60
|
+
*/
|
|
61
|
+
getConceptIdsWithPermission(permission: string, conceptIdsFilter: number[], entityId?: number | null): Promise<number[]>;
|
|
62
|
+
/**
|
|
63
|
+
* Resolve inheritance graph via 3-source BFS, depth-limited to MAX_BFS_DEPTH.
|
|
64
|
+
*
|
|
65
|
+
* Source 1: FreeSchema internal connections ("the_parent_access_inheritance")
|
|
66
|
+
* Source 2: Explicit parent access links (via Access API)
|
|
67
|
+
* Source 3: Concept-connection access inheritance
|
|
68
|
+
*/
|
|
69
|
+
private resolveBulkInheritanceGraph;
|
|
70
|
+
private resolveBulkDecisions;
|
|
71
|
+
private resolveSubjects;
|
|
72
|
+
private hasAnyGrant;
|
|
73
|
+
assignAccess(request: BulkConceptAccessRequest): Promise<AccessResult[]>;
|
|
74
|
+
revokeAccess(conceptId: number, permission: string, entityId?: number | null): Promise<boolean>;
|
|
75
|
+
revokeAccessBulk(request: BulkConceptAccessRequest): Promise<AccessResult[]>;
|
|
76
|
+
setAccessInheritance(conceptId: number): Promise<boolean>;
|
|
77
|
+
getAccessInheritanceStatus(conceptId: number, connectionTypeId?: number): Promise<boolean>;
|
|
78
|
+
setAccessInheritanceStatus(conceptId: number, isEnabled: boolean, connectionTypeId?: number): Promise<boolean>;
|
|
79
|
+
setParentAccessInheritance(conceptId: number, parentConceptId: number): Promise<number>;
|
|
80
|
+
setParentAccessInheritanceBulk(childConceptIds: number[], parentConceptId: number): Promise<BulkParentAccessInheritanceResult[]>;
|
|
81
|
+
removeParentAccessInheritance(conceptId: number, parentConceptId?: number): Promise<string>;
|
|
82
|
+
removeParentAccessInheritanceBulk(childConceptIds: number[], parentConceptId?: number): Promise<BulkParentAccessInheritanceResult[]>;
|
|
83
|
+
hasParentAccessInheritance(conceptId: number, parentConceptId?: number): Promise<boolean>;
|
|
84
|
+
getParentAccessId(conceptId: number): Promise<number | null>;
|
|
85
|
+
isSuperAdmin(entityId: number): Promise<boolean>;
|
|
86
|
+
assignSuperAdmin(entityId: number): Promise<number>;
|
|
87
|
+
revokeSuperAdmin(entityId: number): Promise<string>;
|
|
88
|
+
makeConceptPrivate(conceptId: number): Promise<boolean>;
|
|
89
|
+
private static parseBoolData;
|
|
90
|
+
private static parseIntData;
|
|
91
|
+
static isSuperAdmin(entityId: number): Promise<boolean>;
|
|
92
|
+
static assignSuperAdmin(entityId: number): Promise<number>;
|
|
93
|
+
static revokeSuperAdmin(entityId: number): Promise<string>;
|
|
94
|
+
static checkAccess(conceptId: number, permission: string, entityId?: number | null): Promise<boolean>;
|
|
95
|
+
static checkAccessBulk(conceptIds: number[], permission: string, entityId?: number | null): Promise<Map<number, boolean>>;
|
|
96
|
+
static assignAccess(request: BulkConceptAccessRequest): Promise<AccessResult[]>;
|
|
97
|
+
static revokeAccess(conceptId: number, permission: string, entityId?: number | null): Promise<boolean>;
|
|
98
|
+
static revokeAccessBulk(request: BulkConceptAccessRequest): Promise<AccessResult[]>;
|
|
99
|
+
static setParentAccessInheritance(conceptId: number, parentConceptId: number): Promise<number>;
|
|
100
|
+
static setParentAccessInheritanceBulk(childConceptIds: number[], parentConceptId: number): Promise<BulkParentAccessInheritanceResult[]>;
|
|
101
|
+
static removeParentAccessInheritance(conceptId: number, parentConceptId?: number): Promise<string>;
|
|
102
|
+
static removeParentAccessInheritanceBulk(childConceptIds: number[], parentConceptId?: number): Promise<BulkParentAccessInheritanceResult[]>;
|
|
103
|
+
static hasParentAccessInheritance(conceptId: number, parentConceptId?: number): Promise<boolean>;
|
|
104
|
+
static getParentAccessId(conceptId: number): Promise<number | null>;
|
|
105
|
+
}
|
|
106
|
+
/**
|
|
107
|
+
* Get the default singleton instance of AccessControlService
|
|
108
|
+
*/
|
|
109
|
+
export declare function getAccessControlService(): AccessControlService;
|
|
110
|
+
/**
|
|
111
|
+
* Initialize the default singleton instance with custom configuration
|
|
112
|
+
*/
|
|
113
|
+
export declare function initializeAccessControlService(apiClient?: IAPIClientService): AccessControlService;
|
|
114
|
+
export default AccessControlService;
|
|
@@ -8,7 +8,7 @@ import { Connection } from "../../app";
|
|
|
8
8
|
* @param reverse
|
|
9
9
|
* @returns
|
|
10
10
|
*/
|
|
11
|
-
export declare function FormatFunctionDataForData(connections: Connection[], compositionData
|
|
11
|
+
export declare function FormatFunctionDataForData(connections: Connection[], compositionData?: any[], reverse?: number[]): Promise<any[]>;
|
|
12
12
|
/**
|
|
13
13
|
* ############ Format is data-id and is used for list. ############
|
|
14
14
|
* This is helpful in building a format that has multiple mainCompositions i.e. in the context of the list
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
type RequestHeader = Record<string, string>;
|
|
2
|
-
export declare function GetRequestHeader(contentType?: string, Accept?: string): Promise<RequestHeader>;
|
|
3
|
-
export declare function GetRequestHeaderWithAuthorization(contentType?: string, token?: string, Accept?: string): Promise<RequestHeader>;
|
|
2
|
+
export declare function GetRequestHeader(contentType?: string | null, Accept?: string): Promise<RequestHeader>;
|
|
3
|
+
export declare function GetRequestHeaderWithAuthorization(contentType?: string | null, token?: string, Accept?: string): Promise<RequestHeader>;
|
|
4
4
|
export declare function GetOnlyTokenHeader(): Promise<Headers>;
|
|
5
5
|
export declare function fetchWithAuthRetry(input: RequestInfo | URL, init?: RequestInit): Promise<Response>;
|
|
6
6
|
export declare function getValidAccessToken(token?: string): Promise<string>;
|
package/dist/types/app.d.ts
CHANGED
|
@@ -135,12 +135,14 @@ export { TokenStorage } from './DataStructures/Security/TokenStorage';
|
|
|
135
135
|
export { CountInfo } from './DataStructures/Count/CountInfo';
|
|
136
136
|
export { LogEvent } from './Services/Logs/LogEvent';
|
|
137
137
|
export { Selector } from './Api/Prototype/Selector';
|
|
138
|
+
export { AccessControlService } from './Services/AccessControl/AccessControl';
|
|
138
139
|
export { importLatestWidget, importRecentWidget, renderImportedWidget, renderLatestWidget, renderPage, renderWidget, convertWidgetTreeToWidgetWithWrapper, getWidgetFromId, convertWidgetTreeToWidget, unwrapContainers, getWidgetBulkFromId } from './Widgets/RenderWidgetService';
|
|
139
140
|
export { CreateData } from './Services/automated/automated-concept-connection';
|
|
140
141
|
export { Prototype } from './DataStructures/Prototype/Prototype';
|
|
141
142
|
export { Environments } from './DataStructures/environments/environments';
|
|
142
143
|
export { createPrototypeLocal } from './prototype/prototype.service';
|
|
143
144
|
export { GetImageApi } from './Api/Images/GetImages';
|
|
145
|
+
export { GetAllLinkerConnectionsFromTheConcept } from "./Api/GetAllLinkerConnectionsFromTheConcept";
|
|
144
146
|
export { GetFreeschemaImage, GetFreeschemaImageUrl } from './Services/assets/GetImageService';
|
|
145
147
|
type listeners = {
|
|
146
148
|
listenerId: string | number;
|
|
@@ -343,6 +345,8 @@ declare function updateAccessToken(accessToken?: string, session?: any, refreshT
|
|
|
343
345
|
* @see {@link updateAccessToken} for updating the access token after initialization
|
|
344
346
|
* @see {@link LoginToBackend} for obtaining an access token
|
|
345
347
|
* @see {@link sendMessage} for communicating with service worker after initialization
|
|
348
|
+
* @param accessControlUrl This is the url for the access control system. This is another server in the data fabric that is used as server for business logic and security features.
|
|
349
|
+
*
|
|
346
350
|
*/
|
|
347
351
|
declare function init(url?: string, aiurl?: string, accessToken?: string, nodeUrl?: string, enableAi?: boolean, applicationName?: string, enableSW?: {
|
|
348
352
|
activate: boolean;
|
|
@@ -360,7 +364,7 @@ declare function init(url?: string, aiurl?: string, accessToken?: string, nodeUr
|
|
|
360
364
|
enableCache?: boolean;
|
|
361
365
|
recaptchaSiteKey?: string;
|
|
362
366
|
recaptchaAction?: string;
|
|
363
|
-
}): Promise<true | undefined>;
|
|
367
|
+
}, accessControlUrl?: string): Promise<true | undefined>;
|
|
364
368
|
/**
|
|
365
369
|
* Method to send message to the service worker from main thread
|
|
366
370
|
* @param type string
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "mftsccs-browser",
|
|
3
|
-
"version": "2.1.
|
|
3
|
+
"version": "2.1.244-dev",
|
|
4
4
|
"environment": "production",
|
|
5
5
|
"description": "Full Pack of concept and connection system",
|
|
6
6
|
"main": "dist/main.bundle.js",
|
|
@@ -54,4 +54,4 @@
|
|
|
54
54
|
"dependencies": {
|
|
55
55
|
"ncp": "^2.0.0"
|
|
56
56
|
}
|
|
57
|
-
}
|
|
57
|
+
}
|