@itwin/access-control-client 1.2.0 → 2.0.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.
- package/LICENSE.md +1 -1
- package/README.md +297 -30
- package/lib/cjs/AccessControlClient.d.ts +4 -2
- package/lib/cjs/AccessControlClient.d.ts.map +1 -1
- package/lib/cjs/AccessControlClient.js +6 -2
- package/lib/cjs/AccessControlClient.js.map +1 -1
- package/lib/cjs/accessControlTypes.d.ts +52 -13
- package/lib/cjs/accessControlTypes.d.ts.map +1 -1
- package/lib/cjs/accessControlTypes.js.map +1 -1
- package/lib/cjs/subClients/BaseClient.d.ts.map +1 -1
- package/lib/cjs/subClients/BaseClient.js +1 -0
- package/lib/cjs/subClients/BaseClient.js.map +1 -1
- package/lib/cjs/subClients/GroupMembersClient.d.ts +45 -0
- package/lib/cjs/subClients/GroupMembersClient.d.ts.map +1 -0
- package/lib/cjs/subClients/GroupMembersClient.js +70 -0
- package/lib/cjs/subClients/GroupMembersClient.js.map +1 -0
- package/lib/cjs/subClients/GroupsClient.d.ts +44 -0
- package/lib/cjs/subClients/GroupsClient.d.ts.map +1 -0
- package/lib/cjs/subClients/GroupsClient.js +60 -0
- package/lib/cjs/subClients/GroupsClient.js.map +1 -0
- package/lib/cjs/subClients/UserMembersClient.d.ts +45 -0
- package/lib/cjs/subClients/UserMembersClient.d.ts.map +1 -0
- package/lib/cjs/subClients/UserMembersClient.js +70 -0
- package/lib/cjs/subClients/UserMembersClient.js.map +1 -0
- package/lib/esm/AccessControlClient.d.ts +4 -2
- package/lib/esm/AccessControlClient.d.ts.map +1 -1
- package/lib/esm/AccessControlClient.js +6 -2
- package/lib/esm/AccessControlClient.js.map +1 -1
- package/lib/esm/accessControlTypes.d.ts +52 -13
- package/lib/esm/accessControlTypes.d.ts.map +1 -1
- package/lib/esm/accessControlTypes.js.map +1 -1
- package/lib/esm/subClients/BaseClient.d.ts.map +1 -1
- package/lib/esm/subClients/BaseClient.js +1 -0
- package/lib/esm/subClients/BaseClient.js.map +1 -1
- package/lib/esm/subClients/GroupMembersClient.d.ts +45 -0
- package/lib/esm/subClients/GroupMembersClient.d.ts.map +1 -0
- package/lib/esm/subClients/GroupMembersClient.js +66 -0
- package/lib/esm/subClients/GroupMembersClient.js.map +1 -0
- package/lib/esm/subClients/GroupsClient.d.ts +44 -0
- package/lib/esm/subClients/GroupsClient.d.ts.map +1 -0
- package/lib/esm/subClients/GroupsClient.js +56 -0
- package/lib/esm/subClients/GroupsClient.js.map +1 -0
- package/lib/esm/subClients/UserMembersClient.d.ts +45 -0
- package/lib/esm/subClients/UserMembersClient.d.ts.map +1 -0
- package/lib/esm/subClients/UserMembersClient.js +66 -0
- package/lib/esm/subClients/UserMembersClient.js.map +1 -0
- package/package.json +1 -1
- package/lib/cjs/subClients/MembersClient.d.ts +0 -45
- package/lib/cjs/subClients/MembersClient.d.ts.map +0 -1
- package/lib/cjs/subClients/MembersClient.js +0 -69
- package/lib/cjs/subClients/MembersClient.js.map +0 -1
- package/lib/esm/subClients/MembersClient.d.ts +0 -45
- package/lib/esm/subClients/MembersClient.d.ts.map +0 -1
- package/lib/esm/subClients/MembersClient.js +0 -65
- package/lib/esm/subClients/MembersClient.js.map +0 -1
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
/** @packageDocumentation
|
|
2
|
-
* @module AccessControlClient
|
|
3
|
-
*/
|
|
4
|
-
import type { AccessToken } from "@itwin/core-bentley";
|
|
5
|
-
import type { AccessControlAPIResponse, AccessControlQueryArg, IMembersClient, Member } from "../accessControlTypes";
|
|
6
|
-
import { BaseClient } from "./BaseClient";
|
|
7
|
-
export declare class MembersClient extends BaseClient implements IMembersClient {
|
|
8
|
-
constructor(url?: string);
|
|
9
|
-
/** Retrieves a list of iTwin members and their roles assignments.
|
|
10
|
-
* @param accessToken The client access token string
|
|
11
|
-
* @param iTwinId The id of the iTwin
|
|
12
|
-
* @returns Array of members
|
|
13
|
-
*/
|
|
14
|
-
queryITwinMembersAsync(accessToken: AccessToken, iTwinId: string, arg?: AccessControlQueryArg): Promise<AccessControlAPIResponse<Member[]>>;
|
|
15
|
-
/** Retrieves a specific member for a specified iTwin.
|
|
16
|
-
* @param accessToken The client access token string
|
|
17
|
-
* @param iTwinId The id of the iTwin
|
|
18
|
-
* @param memberId The id of the member
|
|
19
|
-
* @returns Member
|
|
20
|
-
*/
|
|
21
|
-
getITwinMemberAsync(accessToken: AccessToken, iTwinId: string, memberId: string): Promise<AccessControlAPIResponse<Member>>;
|
|
22
|
-
/** Add new iTwin members
|
|
23
|
-
* @param accessToken The client access token string
|
|
24
|
-
* @param iTwinId The id of the iTwin
|
|
25
|
-
* @param newMembers The list of new members to be added along with their role
|
|
26
|
-
* @returns Member[]
|
|
27
|
-
*/
|
|
28
|
-
addITwinMembersAsync(accessToken: AccessToken, iTwinId: string, newMembers: Member[]): Promise<AccessControlAPIResponse<Member[]>>;
|
|
29
|
-
/** Remove the specified member from the iTwin
|
|
30
|
-
* @param accessToken The client access token string
|
|
31
|
-
* @param iTwinId The id of the iTwin
|
|
32
|
-
* @param memberId The id of the member
|
|
33
|
-
* @returns No Content
|
|
34
|
-
*/
|
|
35
|
-
removeITwinMemberAsync(accessToken: AccessToken, iTwinId: string, memberId: string): Promise<AccessControlAPIResponse<undefined>>;
|
|
36
|
-
/** Update iTwin team member roles
|
|
37
|
-
* @param accessToken The client access token string
|
|
38
|
-
* @param iTwinId The id of the iTwin
|
|
39
|
-
* @param memberId The id of the member
|
|
40
|
-
* @param roleIds The ids of the roles to be assigned
|
|
41
|
-
* @returns Member
|
|
42
|
-
*/
|
|
43
|
-
updateITwinMemberAsync(accessToken: AccessToken, iTwinId: string, memberId: string, roleIds: string[]): Promise<AccessControlAPIResponse<Member>>;
|
|
44
|
-
}
|
|
45
|
-
//# sourceMappingURL=MembersClient.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"MembersClient.d.ts","sourceRoot":"","sources":["../../../src/subClients/MembersClient.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,KAAK,EAAE,wBAAwB,EAAE,qBAAqB,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AACrH,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,qBAAa,aAAc,SAAQ,UAAW,YAAW,cAAc;gBAClD,GAAG,CAAC,EAAE,MAAM;IAI/B;;;;QAII;IACS,sBAAsB,CACjC,WAAW,EAAE,WAAW,EACxB,OAAO,EAAE,MAAM,EACf,GAAG,CAAC,EAAE,qBAAqB,GAC1B,OAAO,CAAC,wBAAwB,CAAC,MAAM,EAAE,CAAC,CAAC;IAM9C;;;;;QAKI;IACS,mBAAmB,CAC9B,WAAW,EAAE,WAAW,EACxB,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,wBAAwB,CAAC,MAAM,CAAC,CAAC;IAK5C;;;;;QAKI;IACS,oBAAoB,CAC/B,WAAW,EAAE,WAAW,EACxB,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,EAAE,GACnB,OAAO,CAAC,wBAAwB,CAAC,MAAM,EAAE,CAAC,CAAC;IAQ9C;;;;;QAKI;IACS,sBAAsB,CACjC,WAAW,EAAE,WAAW,EACxB,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,wBAAwB,CAAC,SAAS,CAAC,CAAC;IAK/C;;;;;;QAMI;IACS,sBAAsB,CACjC,WAAW,EAAE,WAAW,EACxB,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EAAE,GAChB,OAAO,CAAC,wBAAwB,CAAC,MAAM,CAAC,CAAC;CAO7C"}
|
|
@@ -1,65 +0,0 @@
|
|
|
1
|
-
import { BaseClient } from "./BaseClient";
|
|
2
|
-
export class MembersClient extends BaseClient {
|
|
3
|
-
constructor(url) {
|
|
4
|
-
super(url);
|
|
5
|
-
}
|
|
6
|
-
/** Retrieves a list of iTwin members and their roles assignments.
|
|
7
|
-
* @param accessToken The client access token string
|
|
8
|
-
* @param iTwinId The id of the iTwin
|
|
9
|
-
* @returns Array of members
|
|
10
|
-
*/
|
|
11
|
-
async queryITwinMembersAsync(accessToken, iTwinId, arg) {
|
|
12
|
-
let url = `${this._baseUrl}/${iTwinId}/members`;
|
|
13
|
-
if (arg)
|
|
14
|
-
url += `?${this.getQueryString(arg)}`;
|
|
15
|
-
return this.sendGenericAPIRequest(accessToken, "GET", url, undefined, "members"); // TODO: Consider how to handle paging
|
|
16
|
-
}
|
|
17
|
-
/** Retrieves a specific member for a specified iTwin.
|
|
18
|
-
* @param accessToken The client access token string
|
|
19
|
-
* @param iTwinId The id of the iTwin
|
|
20
|
-
* @param memberId The id of the member
|
|
21
|
-
* @returns Member
|
|
22
|
-
*/
|
|
23
|
-
async getITwinMemberAsync(accessToken, iTwinId, memberId) {
|
|
24
|
-
const url = `${this._baseUrl}/${iTwinId}/members/${memberId}`;
|
|
25
|
-
return this.sendGenericAPIRequest(accessToken, "GET", url, undefined, "member");
|
|
26
|
-
}
|
|
27
|
-
/** Add new iTwin members
|
|
28
|
-
* @param accessToken The client access token string
|
|
29
|
-
* @param iTwinId The id of the iTwin
|
|
30
|
-
* @param newMembers The list of new members to be added along with their role
|
|
31
|
-
* @returns Member[]
|
|
32
|
-
*/
|
|
33
|
-
async addITwinMembersAsync(accessToken, iTwinId, newMembers) {
|
|
34
|
-
const url = `${this._baseUrl}/${iTwinId}/members`;
|
|
35
|
-
const body = {
|
|
36
|
-
members: newMembers,
|
|
37
|
-
};
|
|
38
|
-
return this.sendGenericAPIRequest(accessToken, "POST", url, body, "members");
|
|
39
|
-
}
|
|
40
|
-
/** Remove the specified member from the iTwin
|
|
41
|
-
* @param accessToken The client access token string
|
|
42
|
-
* @param iTwinId The id of the iTwin
|
|
43
|
-
* @param memberId The id of the member
|
|
44
|
-
* @returns No Content
|
|
45
|
-
*/
|
|
46
|
-
async removeITwinMemberAsync(accessToken, iTwinId, memberId) {
|
|
47
|
-
const url = `${this._baseUrl}/${iTwinId}/members/${memberId}`;
|
|
48
|
-
return this.sendGenericAPIRequest(accessToken, "DELETE", url);
|
|
49
|
-
}
|
|
50
|
-
/** Update iTwin team member roles
|
|
51
|
-
* @param accessToken The client access token string
|
|
52
|
-
* @param iTwinId The id of the iTwin
|
|
53
|
-
* @param memberId The id of the member
|
|
54
|
-
* @param roleIds The ids of the roles to be assigned
|
|
55
|
-
* @returns Member
|
|
56
|
-
*/
|
|
57
|
-
async updateITwinMemberAsync(accessToken, iTwinId, memberId, roleIds) {
|
|
58
|
-
const url = `${this._baseUrl}/${iTwinId}/members/${memberId}`;
|
|
59
|
-
const body = {
|
|
60
|
-
roleIds,
|
|
61
|
-
};
|
|
62
|
-
return this.sendGenericAPIRequest(accessToken, "PATCH", url, body, "member");
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
//# sourceMappingURL=MembersClient.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"MembersClient.js","sourceRoot":"","sources":["../../../src/subClients/MembersClient.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,MAAM,OAAO,aAAc,SAAQ,UAAU;IAC3C,YAAmB,GAAY;QAC7B,KAAK,CAAC,GAAG,CAAC,CAAC;IACb,CAAC;IAED;;;;QAII;IACG,KAAK,CAAC,sBAAsB,CACjC,WAAwB,EACxB,OAAe,EACf,GAA2B;QAE3B,IAAI,GAAG,GAAG,GAAG,IAAI,CAAC,QAAQ,IAAI,OAAO,UAAU,CAAC;QAChD,IAAI,GAAG;YAAE,GAAG,IAAI,IAAI,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC;QAC/C,OAAO,IAAI,CAAC,qBAAqB,CAAC,WAAW,EAAE,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,sCAAsC;IAC1H,CAAC;IAED;;;;;QAKI;IACG,KAAK,CAAC,mBAAmB,CAC9B,WAAwB,EACxB,OAAe,EACf,QAAgB;QAEhB,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,QAAQ,IAAI,OAAO,YAAY,QAAQ,EAAE,CAAC;QAC9D,OAAO,IAAI,CAAC,qBAAqB,CAAC,WAAW,EAAE,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;IAClF,CAAC;IAED;;;;;QAKI;IACG,KAAK,CAAC,oBAAoB,CAC/B,WAAwB,EACxB,OAAe,EACf,UAAoB;QAEpB,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,QAAQ,IAAI,OAAO,UAAU,CAAC;QAClD,MAAM,IAAI,GAAG;YACX,OAAO,EAAE,UAAU;SACpB,CAAC;QACF,OAAO,IAAI,CAAC,qBAAqB,CAAC,WAAW,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;IAC/E,CAAC;IAED;;;;;QAKI;IACG,KAAK,CAAC,sBAAsB,CACjC,WAAwB,EACxB,OAAe,EACf,QAAgB;QAEhB,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,QAAQ,IAAI,OAAO,YAAY,QAAQ,EAAE,CAAC;QAC9D,OAAO,IAAI,CAAC,qBAAqB,CAAC,WAAW,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC;IAChE,CAAC;IAED;;;;;;QAMI;IACG,KAAK,CAAC,sBAAsB,CACjC,WAAwB,EACxB,OAAe,EACf,QAAgB,EAChB,OAAiB;QAEjB,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,QAAQ,IAAI,OAAO,YAAY,QAAQ,EAAE,CAAC;QAC9D,MAAM,IAAI,GAAG;YACX,OAAO;SACR,CAAC;QACF,OAAO,IAAI,CAAC,qBAAqB,CAAC,WAAW,EAAE,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;IAC/E,CAAC;CACF","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n * See LICENSE.md in the project root for license terms and full copyright notice.\r\n *--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module AccessControlClient\r\n */\r\nimport type { AccessToken } from \"@itwin/core-bentley\";\r\nimport type { AccessControlAPIResponse, AccessControlQueryArg, IMembersClient, Member } from \"../accessControlTypes\";\r\nimport { BaseClient } from \"./BaseClient\";\r\n\r\nexport class MembersClient extends BaseClient implements IMembersClient{\r\n public constructor(url?: string) {\r\n super(url);\r\n }\r\n\r\n /** Retrieves a list of iTwin members and their roles assignments.\r\n * @param accessToken The client access token string\r\n * @param iTwinId The id of the iTwin\r\n * @returns Array of members\r\n */\r\n public async queryITwinMembersAsync(\r\n accessToken: AccessToken,\r\n iTwinId: string,\r\n arg?: AccessControlQueryArg\r\n ): Promise<AccessControlAPIResponse<Member[]>>{\r\n let url = `${this._baseUrl}/${iTwinId}/members`;\r\n if (arg) url += `?${this.getQueryString(arg)}`;\r\n return this.sendGenericAPIRequest(accessToken, \"GET\", url, undefined, \"members\"); // TODO: Consider how to handle paging\r\n }\r\n\r\n /** Retrieves a specific member for a specified iTwin.\r\n * @param accessToken The client access token string\r\n * @param iTwinId The id of the iTwin\r\n * @param memberId The id of the member\r\n * @returns Member\r\n */\r\n public async getITwinMemberAsync(\r\n accessToken: AccessToken,\r\n iTwinId: string,\r\n memberId: string\r\n ): Promise<AccessControlAPIResponse<Member>>{\r\n const url = `${this._baseUrl}/${iTwinId}/members/${memberId}`;\r\n return this.sendGenericAPIRequest(accessToken, \"GET\", url, undefined, \"member\");\r\n }\r\n\r\n /** Add new iTwin members\r\n * @param accessToken The client access token string\r\n * @param iTwinId The id of the iTwin\r\n * @param newMembers The list of new members to be added along with their role\r\n * @returns Member[]\r\n */\r\n public async addITwinMembersAsync(\r\n accessToken: AccessToken,\r\n iTwinId: string,\r\n newMembers: Member[]\r\n ): Promise<AccessControlAPIResponse<Member[]>>{\r\n const url = `${this._baseUrl}/${iTwinId}/members`;\r\n const body = {\r\n members: newMembers,\r\n };\r\n return this.sendGenericAPIRequest(accessToken, \"POST\", url, body, \"members\");\r\n }\r\n\r\n /** Remove the specified member from the iTwin\r\n * @param accessToken The client access token string\r\n * @param iTwinId The id of the iTwin\r\n * @param memberId The id of the member\r\n * @returns No Content\r\n */\r\n public async removeITwinMemberAsync(\r\n accessToken: AccessToken,\r\n iTwinId: string,\r\n memberId: string\r\n ): Promise<AccessControlAPIResponse<undefined>> {\r\n const url = `${this._baseUrl}/${iTwinId}/members/${memberId}`;\r\n return this.sendGenericAPIRequest(accessToken, \"DELETE\", url);\r\n }\r\n\r\n /** Update iTwin team member roles\r\n * @param accessToken The client access token string\r\n * @param iTwinId The id of the iTwin\r\n * @param memberId The id of the member\r\n * @param roleIds The ids of the roles to be assigned\r\n * @returns Member\r\n */\r\n public async updateITwinMemberAsync(\r\n accessToken: AccessToken,\r\n iTwinId: string,\r\n memberId: string,\r\n roleIds: string[]\r\n ): Promise<AccessControlAPIResponse<Member>> {\r\n const url = `${this._baseUrl}/${iTwinId}/members/${memberId}`;\r\n const body = {\r\n roleIds,\r\n };\r\n return this.sendGenericAPIRequest(accessToken, \"PATCH\", url, body, \"member\");\r\n }\r\n}\r\n"]}
|