@or-sdk/permissions 2.3.1 → 2.3.2-beta.4019.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.
@@ -82,6 +82,22 @@ var Permissions = (function (_super) {
82
82
  });
83
83
  });
84
84
  };
85
+ Permissions.prototype.getAllAvailablePermissions = function () {
86
+ return __awaiter(this, void 0, void 0, function () {
87
+ var data;
88
+ return __generator(this, function (_a) {
89
+ switch (_a.label) {
90
+ case 0: return [4, this.callApiV2({
91
+ method: 'GET',
92
+ route: '/v1/permissions/available',
93
+ })];
94
+ case 1:
95
+ data = _a.sent();
96
+ return [2, data];
97
+ }
98
+ });
99
+ });
100
+ };
85
101
  Permissions.prototype.getCurrent = function () {
86
102
  return __awaiter(this, void 0, void 0, function () {
87
103
  var data;
@@ -247,6 +263,76 @@ var Permissions = (function (_super) {
247
263
  });
248
264
  });
249
265
  };
266
+ Permissions.prototype.getApiTokenPermissions = function (tokenId) {
267
+ return __awaiter(this, void 0, void 0, function () {
268
+ var response;
269
+ return __generator(this, function (_a) {
270
+ switch (_a.label) {
271
+ case 0: return [4, this.callApiV2({
272
+ method: 'GET',
273
+ route: "/v1/permissions/api-token/".concat(tokenId),
274
+ })];
275
+ case 1:
276
+ response = _a.sent();
277
+ return [2, response];
278
+ }
279
+ });
280
+ });
281
+ };
282
+ Permissions.prototype.getBulkApiTokenPermissions = function (tokenIds) {
283
+ return __awaiter(this, void 0, void 0, function () {
284
+ var response;
285
+ return __generator(this, function (_a) {
286
+ switch (_a.label) {
287
+ case 0: return [4, this.callApiV2({
288
+ method: 'POST',
289
+ route: '/v1/permissions/api-token/bulk',
290
+ data: { tokenIds: tokenIds },
291
+ })];
292
+ case 1:
293
+ response = _a.sent();
294
+ return [2, response];
295
+ }
296
+ });
297
+ });
298
+ };
299
+ Permissions.prototype.setApiTokenPermissions = function (params) {
300
+ return __awaiter(this, void 0, void 0, function () {
301
+ var data, response;
302
+ return __generator(this, function (_a) {
303
+ switch (_a.label) {
304
+ case 0:
305
+ data = {
306
+ permissions: params.permissions,
307
+ };
308
+ return [4, this.callApiV2({
309
+ method: 'PUT',
310
+ route: "/v1/permissions/api-token/".concat(params.tokenId),
311
+ data: data,
312
+ })];
313
+ case 1:
314
+ response = _a.sent();
315
+ return [2, response];
316
+ }
317
+ });
318
+ });
319
+ };
320
+ Permissions.prototype.deleteApiTokenPermissions = function (tokenId) {
321
+ return __awaiter(this, void 0, void 0, function () {
322
+ var response;
323
+ return __generator(this, function (_a) {
324
+ switch (_a.label) {
325
+ case 0: return [4, this.callApiV2({
326
+ method: 'DELETE',
327
+ route: "/v1/permissions/api-token/".concat(tokenId, "/overrides"),
328
+ })];
329
+ case 1:
330
+ response = _a.sent();
331
+ return [2, response];
332
+ }
333
+ });
334
+ });
335
+ };
250
336
  return Permissions;
251
337
  }(base_1.Base));
252
338
  exports.Permissions = Permissions;
@@ -1 +1 @@
1
- {"version":3,"file":"Permissions.js","sourceRoot":"","sources":["../../src/Permissions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Permissions.js","sourceRoot":"","sources":["../../src/Permissions.ts"],"names":[],"mappings":"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"}
package/dist/cjs/types.js CHANGED
@@ -5,5 +5,6 @@ var EntityType;
5
5
  (function (EntityType) {
6
6
  EntityType["SingleUser"] = "SingleUser";
7
7
  EntityType["MultiUser"] = "MultiUser";
8
+ EntityType["ApiToken"] = "ApiToken";
8
9
  })(EntityType || (exports.EntityType = EntityType = {}));
9
10
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":";;;AAEA,IAAY,UAGX;AAHD,WAAY,UAAU;IACpB,uCAAyB,CAAA;IACzB,qCAAuB,CAAA;AACzB,CAAC,EAHW,UAAU,0BAAV,UAAU,QAGrB"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":";;;AAEA,IAAY,UAIX;AAJD,WAAY,UAAU;IACpB,uCAAyB,CAAA;IACzB,qCAAuB,CAAA;IACvB,mCAAqB,CAAA;AACvB,CAAC,EAJW,UAAU,0BAAV,UAAU,QAIrB"}
@@ -29,6 +29,15 @@ export class Permissions extends Base {
29
29
  return data;
30
30
  });
31
31
  }
32
+ getAllAvailablePermissions() {
33
+ return __awaiter(this, void 0, void 0, function* () {
34
+ const data = yield this.callApiV2({
35
+ method: 'GET',
36
+ route: '/v1/permissions/available',
37
+ });
38
+ return data;
39
+ });
40
+ }
32
41
  getCurrent() {
33
42
  return __awaiter(this, void 0, void 0, function* () {
34
43
  const data = yield this.callApiV2({
@@ -126,5 +135,46 @@ export class Permissions extends Base {
126
135
  return response;
127
136
  });
128
137
  }
138
+ getApiTokenPermissions(tokenId) {
139
+ return __awaiter(this, void 0, void 0, function* () {
140
+ const response = yield this.callApiV2({
141
+ method: 'GET',
142
+ route: `/v1/permissions/api-token/${tokenId}`,
143
+ });
144
+ return response;
145
+ });
146
+ }
147
+ getBulkApiTokenPermissions(tokenIds) {
148
+ return __awaiter(this, void 0, void 0, function* () {
149
+ const response = yield this.callApiV2({
150
+ method: 'POST',
151
+ route: '/v1/permissions/api-token/bulk',
152
+ data: { tokenIds },
153
+ });
154
+ return response;
155
+ });
156
+ }
157
+ setApiTokenPermissions(params) {
158
+ return __awaiter(this, void 0, void 0, function* () {
159
+ const data = {
160
+ permissions: params.permissions,
161
+ };
162
+ const response = yield this.callApiV2({
163
+ method: 'PUT',
164
+ route: `/v1/permissions/api-token/${params.tokenId}`,
165
+ data,
166
+ });
167
+ return response;
168
+ });
169
+ }
170
+ deleteApiTokenPermissions(tokenId) {
171
+ return __awaiter(this, void 0, void 0, function* () {
172
+ const response = yield this.callApiV2({
173
+ method: 'DELETE',
174
+ route: `/v1/permissions/api-token/${tokenId}/overrides`,
175
+ });
176
+ return response;
177
+ });
178
+ }
129
179
  }
130
180
  //# sourceMappingURL=Permissions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Permissions.js","sourceRoot":"","sources":["../../src/Permissions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Permissions.js","sourceRoot":"","sources":["../../src/Permissions.ts"],"names":[],"mappings":"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"}
package/dist/esm/types.js CHANGED
@@ -2,5 +2,6 @@ export var EntityType;
2
2
  (function (EntityType) {
3
3
  EntityType["SingleUser"] = "SingleUser";
4
4
  EntityType["MultiUser"] = "MultiUser";
5
+ EntityType["ApiToken"] = "ApiToken";
5
6
  })(EntityType || (EntityType = {}));
6
7
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAEA,MAAM,CAAN,IAAY,UAGX;AAHD,WAAY,UAAU;IACpB,uCAAyB,CAAA;IACzB,qCAAuB,CAAA;AACzB,CAAC,EAHW,UAAU,KAAV,UAAU,QAGrB"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAEA,MAAM,CAAN,IAAY,UAIX;AAJD,WAAY,UAAU;IACpB,uCAAyB,CAAA;IACzB,qCAAuB,CAAA;IACvB,mCAAqB,CAAA;AACvB,CAAC,EAJW,UAAU,KAAV,UAAU,QAIrB"}
@@ -1,16 +1,127 @@
1
1
  import { Base } from '@or-sdk/base';
2
- import { CurrentPermissionsResponse, Permission, PermissionsByServiceResponse, PermissionsConfig, RegisterServiceDto, UpdateMultiUserBySinglePermissionsDto, UpdateMultiUserPermissionsDto, UpdateSingleUserPermissionsDto, UserPermissionsResponse } from './types';
2
+ import { ApiTokenPermissionsResponse, AvailablePermissionsResponse, BulkApiTokenPermissionsResponse, CurrentPermissionsResponse, Permission, PermissionsByServiceResponse, PermissionsConfig, RegisterServiceDto, UpdateApiTokenPermissionsDto, UpdateMultiUserBySinglePermissionsDto, UpdateMultiUserPermissionsDto, UpdateSingleUserPermissionsDto, UserPermissionsResponse } from './types';
3
+ /**
4
+ * OneReach Permissions service client
5
+ * ## Installation:
6
+ * ```
7
+ * $ npm i @or-sdk/permissions
8
+ * ```
9
+ */
3
10
  export declare class Permissions extends Base {
11
+ /**
12
+ * ```typescript
13
+ * import { Permissions } from '@or-sdk/permissions'
14
+ * const permissions = new Permissions({
15
+ * token: 'my-account-token-string',
16
+ * permissionsUrl: 'http://example.permissions/endpoint'
17
+ * });
18
+ * ```
19
+ */
4
20
  constructor(params: PermissionsConfig);
21
+ /**
22
+ * Registers a new service with its permissions
23
+ * @param {RegisterServiceParams} params - Service registration data
24
+ * @param {string} params.service - Service identifier
25
+ * @param {string} params.serviceLabel - Human-readable service name
26
+ * @param {Permission[]} params.permissions - List of permissions to register
27
+ * @returns {Promise<Permission[]>} Registered permissions
28
+ */
5
29
  registerService(params: RegisterServiceDto): Promise<Permission[]>;
30
+ /**
31
+ * Gets all available permissions across all services
32
+ * @returns {Promise<AvailablePermissionsResponse>} List of services with their available permissions
33
+ */
34
+ getAllAvailablePermissions(): Promise<AvailablePermissionsResponse>;
35
+ /**
36
+ * Gets all permissions for current user across all services
37
+ * @returns {Promise<CurrentPermissionsResponse>} List of services with their permissions
38
+ */
6
39
  getCurrent(): Promise<CurrentPermissionsResponse>;
40
+ /**
41
+ * Gets current user permissions for a specific service
42
+ * @param {string} service - Service identifier
43
+ * @returns {Promise<PermissionsByServiceResponse>} Map of permission names to their effects
44
+ */
7
45
  getCurrentForService(service: string): Promise<PermissionsByServiceResponse>;
46
+ /**
47
+ * Updates permissions for a SingleUser
48
+ * @param {UpdateSingleUserPermissionsDto} data - Update parameters
49
+ * @param {string} data.userId - Single User Id
50
+ * @param {string} data.accountId - Account id of single user, cross-account only for SUPER ADMIN. Optional, would use current account if not present
51
+ * @param {Object} data.permissions - Map of service names to permission overrides
52
+ * @returns {Promise<UserPermissionsResponse>}
53
+ */
8
54
  updateSingleUser(params: UpdateSingleUserPermissionsDto): Promise<UserPermissionsResponse>;
55
+ /**
56
+ * Updates permissions for a MultiUser
57
+ * @param {UpdateMultiUserPermissionsDto} data - Update parameters
58
+ * @param {string} data.userId - Multi User Id
59
+ * @param {Object} data.permissions - Map of service names to permission overrides
60
+ * @returns {Promise<UserPermissionsResponse>}
61
+ */
9
62
  updateMultiUser(params: UpdateMultiUserPermissionsDto): Promise<UserPermissionsResponse>;
63
+ /**
64
+ * Updates permissions for a MultiUser using accountId and singleUserId
65
+ * @param {UpdateMultiUserBySinglePermissionsDto} data - Update parameters
66
+ * @param {string} data.userId - Single User Id
67
+ * @param {string} data.accountId - Account Id, only for cross-account usage.
68
+ * @param {Object} data.permissions - Map of service names to permission overrides
69
+ * @returns {Promise<UserPermissionsResponse>}
70
+ */
10
71
  updateMultiUserByAccIdAndSingleId(params: UpdateMultiUserBySinglePermissionsDto): Promise<UserPermissionsResponse>;
72
+ /**
73
+ * Gets all permissions for a MultiUser using accountId and singleUserId
74
+ * @param {string} data.userId - Single User Id
75
+ * @param {string} data.accountId - Account Id, only for cross-account usage.
76
+ * @returns {Promise<UserPermissionsResponse>}
77
+ */
11
78
  getMultiUserByAccIdAndSingleId(userId: string, accountId?: string): Promise<UserPermissionsResponse>;
79
+ /**
80
+ * Resets all single user permissions, so they will no longer override multiuser permissions.
81
+ * @param {string} data.userId - Single User Id
82
+ * @param {string} data.accountId - Account Id, only for cross-account usage.
83
+ * @returns {Promise<UserPermissionsResponse>}
84
+ */
12
85
  resetSingleUserPermissions(userId: string, accountId?: string): Promise<UserPermissionsResponse>;
86
+ /**
87
+ * Gets permissions for a specific user within an account
88
+ * @param {string} userId - User identifier
89
+ * @returns {Promise<UserPermissionsResponse>} List of services with detailed permissions
90
+ */
13
91
  getByUserIdInCurrentAccount(userId: string): Promise<UserPermissionsResponse>;
92
+ /**
93
+ * Checks if user has the specified permission scopes
94
+ * @param {string[]} scope - List of permission scopes to check
95
+ * @returns {Promise<boolean>} True if user has all specified scopes, false otherwise
96
+ */
14
97
  checkScope(scope: string[]): Promise<boolean>;
98
+ /**
99
+ * Gets all permissions for an API token
100
+ * @param {string} tokenId - API Token identifier
101
+ * @returns {Promise<ApiTokenPermissionsResponse>} List of services with their permissions
102
+ */
103
+ getApiTokenPermissions(tokenId: string): Promise<ApiTokenPermissionsResponse>;
104
+ /**
105
+ * Gets permissions for multiple API tokens
106
+ * @param {string[]} tokenIds - List of API Token identifiers
107
+ * @returns {Promise<BulkApiTokenPermissionsResponse>} Map of token IDs to their permissions
108
+ */
109
+ getBulkApiTokenPermissions(tokenIds: string[]): Promise<BulkApiTokenPermissionsResponse>;
110
+ /**
111
+ * Sets permissions for an API token
112
+ * @param {UpdateApiTokenPermissionsDto} params - Update parameters
113
+ * @param {string} params.tokenId - API Token identifier
114
+ * @param {Object} params.permissions - Map of service names to permission overrides
115
+ * @returns {Promise<ApiTokenPermissionsResponse>} Updated permissions
116
+ */
117
+ setApiTokenPermissions(params: UpdateApiTokenPermissionsDto): Promise<ApiTokenPermissionsResponse>;
118
+ /**
119
+ * Deletes all permissions for an API token
120
+ * @param {string} tokenId - API Token identifier
121
+ * @returns {Promise<{ success: boolean }>}
122
+ */
123
+ deleteApiTokenPermissions(tokenId: string): Promise<{
124
+ success: boolean;
125
+ }>;
15
126
  }
16
127
  //# sourceMappingURL=Permissions.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Permissions.d.ts","sourceRoot":"","sources":["../../src/Permissions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAGpC,OAAO,EACL,0BAA0B,EAC1B,UAAU,EACV,4BAA4B,EAC5B,iBAAiB,EACjB,kBAAkB,EAClB,qCAAqC,EACrC,6BAA6B,EAC7B,8BAA8B,EAC9B,uBAAuB,EACxB,MAAM,SAAS,CAAC;AASjB,qBAAa,WAAY,SAAQ,IAAI;gBAUvB,MAAM,EAAE,iBAAiB;IAkB/B,eAAe,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IAclE,UAAU,IAAI,OAAO,CAAC,0BAA0B,CAAC;IAajD,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,4BAA4B,CAAC;IAgB5E,gBAAgB,CAAC,MAAM,EAAE,8BAA8B,GAAG,OAAO,CAAC,uBAAuB,CAAC;IAmB1F,eAAe,CAAC,MAAM,EAAE,6BAA6B,GAAG,OAAO,CAAC,uBAAuB,CAAC;IAoBxF,iCAAiC,CAAC,MAAM,EAAE,qCAAqC,GACrF,OAAO,CAAC,uBAAuB,CAAC;IAmB1B,8BAA8B,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GACvE,OAAO,CAAC,uBAAuB,CAAC;IAe1B,0BAA0B,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GACnE,OAAO,CAAC,uBAAuB,CAAC;IAc1B,2BAA2B,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,uBAAuB,CAAC;IAa7E,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;CAQpD"}
1
+ {"version":3,"file":"Permissions.d.ts","sourceRoot":"","sources":["../../src/Permissions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAGpC,OAAO,EACL,2BAA2B,EAC3B,4BAA4B,EAC5B,+BAA+B,EAC/B,0BAA0B,EAC1B,UAAU,EACV,4BAA4B,EAC5B,iBAAiB,EACjB,kBAAkB,EAClB,4BAA4B,EAC5B,qCAAqC,EACrC,6BAA6B,EAC7B,8BAA8B,EAC9B,uBAAuB,EACxB,MAAM,SAAS,CAAC;AAEjB;;;;;;GAMG;AACH,qBAAa,WAAY,SAAQ,IAAI;IACnC;;;;;;;;OAQG;gBACS,MAAM,EAAE,iBAAiB;IAUrC;;;;;;;MAOE;IACI,eAAe,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IASxE;;;MAGE;IACI,0BAA0B,IAAI,OAAO,CAAC,4BAA4B,CAAC;IAQzE;;;MAGE;IAEI,UAAU,IAAI,OAAO,CAAC,0BAA0B,CAAC;IAQvD;;;;MAIE;IACI,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,4BAA4B,CAAC;IAQlF;;;;;;;MAOE;IACI,gBAAgB,CAAC,MAAM,EAAE,8BAA8B,GAAG,OAAO,CAAC,uBAAuB,CAAC;IAYhG;;;;;;MAME;IACI,eAAe,CAAC,MAAM,EAAE,6BAA6B,GAAG,OAAO,CAAC,uBAAuB,CAAC;IAY9F;;;;;;;MAOE;IACI,iCAAiC,CAAC,MAAM,EAAE,qCAAqC,GACrF,OAAO,CAAC,uBAAuB,CAAC;IAahC;;;;;MAKE;IACI,8BAA8B,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GACvE,OAAO,CAAC,uBAAuB,CAAC;IAShC;;;;;MAKE;IACI,0BAA0B,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GACnE,OAAO,CAAC,uBAAuB,CAAC;IAShC;;;;MAIE;IACI,2BAA2B,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,uBAAuB,CAAC;IAQnF;;;;MAIE;IACI,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;IASnD;;;;MAIE;IACI,sBAAsB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,2BAA2B,CAAC;IAQnF;;;;MAIE;IACI,0BAA0B,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,+BAA+B,CAAC;IAS9F;;;;;;MAME;IACI,sBAAsB,CAAC,MAAM,EAAE,4BAA4B,GAAG,OAAO,CAAC,2BAA2B,CAAC;IAYxG;;;;MAIE;IACI,yBAAyB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC;CAOhF"}
@@ -1,10 +1,17 @@
1
1
  import { Token } from '@or-sdk/base';
2
2
  export declare enum EntityType {
3
3
  SingleUser = "SingleUser",
4
- MultiUser = "MultiUser"
4
+ MultiUser = "MultiUser",
5
+ ApiToken = "ApiToken"
5
6
  }
6
7
  export type PermissionsConfig = {
8
+ /**
9
+ * token
10
+ */
7
11
  token: Token;
12
+ /**
13
+ * function which return token
14
+ */
8
15
  permissionsUrl: string;
9
16
  discoveryUrl?: string;
10
17
  };
@@ -67,4 +74,26 @@ export type RegisterServiceDto = {
67
74
  serviceLabel: string;
68
75
  permissions: Permission[];
69
76
  };
77
+ export type UpdateApiTokenPermissionsDto = {
78
+ tokenId: string;
79
+ permissions: {
80
+ [serviceName: string]: PermissionOverride[];
81
+ };
82
+ };
83
+ export type ApiTokenPermissionsResponse = PermissionGroup[];
84
+ export type BulkApiTokenPermissionsResponse = Record<string, PermissionGroup[]>;
85
+ export type AvailablePermission = {
86
+ name: string;
87
+ description: string;
88
+ defaultEffect: boolean;
89
+ metadata?: {
90
+ [key: string]: unknown;
91
+ };
92
+ };
93
+ export type AvailablePermissionGroup = {
94
+ serviceName: string;
95
+ serviceLabel?: string;
96
+ permissions: AvailablePermission[];
97
+ };
98
+ export type AvailablePermissionsResponse = AvailablePermissionGroup[];
70
99
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAErC,oBAAY,UAAU;IACpB,UAAU,eAAe;IACzB,SAAS,cAAc;CACxB;AAED,MAAM,MAAM,iBAAiB,GAAG;IAI9B,KAAK,EAAE,KAAK,CAAC;IAIb,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,4BAA4B,GAAG;IACzC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,OAAO,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG,eAAe,GAAG;IACjD,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE;QACT,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;KACxB,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,eAAe,EAAE,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG;IACpC,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,kBAAkB,EAAE,CAAC;CACnC,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG,eAAe,EAAE,CAAC;AAC3D,MAAM,MAAM,uBAAuB,GAAG,uBAAuB,EAAE,CAAC;AAEhE,MAAM,MAAM,kBAAkB,GAAG;IAC/B,cAAc,EAAE,MAAM,CAAC;IACvB,MAAM,EAAE,OAAO,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,8BAA8B,GAAG;IAC3C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE;QACX,CAAC,WAAW,EAAE,MAAM,GAAG,kBAAkB,EAAE,CAAC;KAC7C,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,6BAA6B,GAAG;IAC1C,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE;QACX,CAAC,WAAW,EAAE,MAAM,GAAG,kBAAkB,EAAE,CAAC;KAC7C,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,qCAAqC,GAAG;IAClD,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE;QACX,CAAC,WAAW,EAAE,MAAM,GAAG,kBAAkB,EAAE,CAAC;KAC7C,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,UAAU,EAAE,CAAC;CAC3B,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@or-sdk/permissions",
3
- "version": "2.3.1",
3
+ "version": "2.3.2-beta.4019.0",
4
4
  "license": "Apache-2.0",
5
5
  "main": "dist/cjs/index.js",
6
6
  "module": "dist/esm/index.js",
@@ -26,6 +26,5 @@
26
26
  },
27
27
  "publishConfig": {
28
28
  "access": "public"
29
- },
30
- "gitHead": "7d3b49250a670964dfe9e8e50e95417761c5473f"
29
+ }
31
30
  }
@@ -2,11 +2,15 @@ import { Base } from '@or-sdk/base';
2
2
 
3
3
  import { SERVICE_KEY } from './constants';
4
4
  import {
5
+ ApiTokenPermissionsResponse,
6
+ AvailablePermissionsResponse,
7
+ BulkApiTokenPermissionsResponse,
5
8
  CurrentPermissionsResponse,
6
9
  Permission,
7
10
  PermissionsByServiceResponse,
8
11
  PermissionsConfig,
9
12
  RegisterServiceDto,
13
+ UpdateApiTokenPermissionsDto,
10
14
  UpdateMultiUserBySinglePermissionsDto,
11
15
  UpdateMultiUserPermissionsDto,
12
16
  UpdateSingleUserPermissionsDto,
@@ -57,6 +61,18 @@ export class Permissions extends Base {
57
61
  return data;
58
62
  }
59
63
 
64
+ /**
65
+ * Gets all available permissions across all services
66
+ * @returns {Promise<AvailablePermissionsResponse>} List of services with their available permissions
67
+ */
68
+ async getAllAvailablePermissions(): Promise<AvailablePermissionsResponse> {
69
+ const data = await this.callApiV2<AvailablePermissionsResponse>({
70
+ method: 'GET',
71
+ route: '/v1/permissions/available',
72
+ });
73
+ return data;
74
+ }
75
+
60
76
  /**
61
77
  * Gets all permissions for current user across all services
62
78
  * @returns {Promise<CurrentPermissionsResponse>} List of services with their permissions
@@ -202,4 +218,63 @@ export class Permissions extends Base {
202
218
  });
203
219
  return response;
204
220
  }
221
+
222
+ /**
223
+ * Gets all permissions for an API token
224
+ * @param {string} tokenId - API Token identifier
225
+ * @returns {Promise<ApiTokenPermissionsResponse>} List of services with their permissions
226
+ */
227
+ async getApiTokenPermissions(tokenId: string): Promise<ApiTokenPermissionsResponse> {
228
+ const response = await this.callApiV2<ApiTokenPermissionsResponse>({
229
+ method: 'GET',
230
+ route: `/v1/permissions/api-token/${tokenId}`,
231
+ });
232
+ return response;
233
+ }
234
+
235
+ /**
236
+ * Gets permissions for multiple API tokens
237
+ * @param {string[]} tokenIds - List of API Token identifiers
238
+ * @returns {Promise<BulkApiTokenPermissionsResponse>} Map of token IDs to their permissions
239
+ */
240
+ async getBulkApiTokenPermissions(tokenIds: string[]): Promise<BulkApiTokenPermissionsResponse> {
241
+ const response = await this.callApiV2<BulkApiTokenPermissionsResponse>({
242
+ method: 'POST',
243
+ route: '/v1/permissions/api-token/bulk',
244
+ data: { tokenIds },
245
+ });
246
+ return response;
247
+ }
248
+
249
+ /**
250
+ * Sets permissions for an API token
251
+ * @param {UpdateApiTokenPermissionsDto} params - Update parameters
252
+ * @param {string} params.tokenId - API Token identifier
253
+ * @param {Object} params.permissions - Map of service names to permission overrides
254
+ * @returns {Promise<ApiTokenPermissionsResponse>} Updated permissions
255
+ */
256
+ async setApiTokenPermissions(params: UpdateApiTokenPermissionsDto): Promise<ApiTokenPermissionsResponse> {
257
+ const data = {
258
+ permissions: params.permissions,
259
+ };
260
+ const response = await this.callApiV2<ApiTokenPermissionsResponse>({
261
+ method: 'PUT',
262
+ route: `/v1/permissions/api-token/${params.tokenId}`,
263
+ data,
264
+ });
265
+ return response;
266
+ }
267
+
268
+ /**
269
+ * Deletes all permissions for an API token
270
+ * @param {string} tokenId - API Token identifier
271
+ * @returns {Promise<{ success: boolean }>}
272
+ */
273
+ async deleteApiTokenPermissions(tokenId: string): Promise<{ success: boolean }> {
274
+ const response = await this.callApiV2<{ success: boolean }>({
275
+ method: 'DELETE',
276
+ route: `/v1/permissions/api-token/${tokenId}/overrides`,
277
+ });
278
+ return response;
279
+ }
205
280
  }
package/src/types.ts CHANGED
@@ -3,6 +3,7 @@ import { Token } from '@or-sdk/base';
3
3
  export enum EntityType {
4
4
  SingleUser = 'SingleUser',
5
5
  MultiUser = 'MultiUser',
6
+ ApiToken = 'ApiToken',
6
7
  }
7
8
 
8
9
  export type PermissionsConfig = {
@@ -87,3 +88,31 @@ export type RegisterServiceDto = {
87
88
  serviceLabel: string;
88
89
  permissions: Permission[];
89
90
  };
91
+
92
+ export type UpdateApiTokenPermissionsDto = {
93
+ tokenId: string;
94
+ permissions: {
95
+ [serviceName: string]: PermissionOverride[];
96
+ };
97
+ };
98
+
99
+ export type ApiTokenPermissionsResponse = PermissionGroup[];
100
+
101
+ export type BulkApiTokenPermissionsResponse = Record<string, PermissionGroup[]>;
102
+
103
+ export type AvailablePermission = {
104
+ name: string;
105
+ description: string;
106
+ defaultEffect: boolean;
107
+ metadata?: {
108
+ [key: string]: unknown;
109
+ };
110
+ };
111
+
112
+ export type AvailablePermissionGroup = {
113
+ serviceName: string;
114
+ serviceLabel?: string;
115
+ permissions: AvailablePermission[];
116
+ };
117
+
118
+ export type AvailablePermissionsResponse = AvailablePermissionGroup[];