@boxyhq/saml-jackson 1.20.5 → 1.20.6
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/controller/api.d.ts +17 -6
- package/dist/controller/api.js +17 -6
- package/dist/controller/api.js.map +1 -1
- package/dist/controller/connection/saml.js +1 -1
- package/dist/controller/connection/saml.js.map +1 -1
- package/dist/controller/logout.js +6 -6
- package/dist/controller/logout.js.map +1 -1
- package/dist/controller/oauth.js +4 -4
- package/dist/controller/oauth.js.map +1 -1
- package/dist/controller/oidc-discovery.js +1 -1
- package/dist/controller/oidc-discovery.js.map +1 -1
- package/dist/controller/setup-link.d.ts +6 -0
- package/dist/controller/setup-link.js +6 -0
- package/dist/controller/setup-link.js.map +1 -1
- package/dist/controller/sp-config.js +2 -2
- package/dist/controller/sp-config.js.map +1 -1
- package/dist/controller/sso-handler.js +6 -6
- package/dist/controller/sso-handler.js.map +1 -1
- package/dist/db/db.js +3 -3
- package/dist/db/db.js.map +1 -1
- package/dist/db/dynamoDb.js +11 -7
- package/dist/db/dynamoDb.js.map +1 -1
- package/dist/db/mem.js +19 -18
- package/dist/db/mem.js.map +1 -1
- package/dist/db/mongo.d.ts +1 -1
- package/dist/db/mongo.js +27 -15
- package/dist/db/mongo.js.map +1 -1
- package/dist/db/redis.js +39 -44
- package/dist/db/redis.js.map +1 -1
- package/dist/db/sql/sql.js +22 -19
- package/dist/db/sql/sql.js.map +1 -1
- package/dist/db/utils.d.ts +8 -0
- package/dist/db/utils.js +8 -1
- package/dist/db/utils.js.map +1 -1
- package/dist/directory-sync/batch-events/queue.js +1 -1
- package/dist/directory-sync/batch-events/queue.js.map +1 -1
- package/dist/directory-sync/non-scim/syncGroupMembers.d.ts +2 -2
- package/dist/directory-sync/non-scim/syncGroupMembers.js.map +1 -1
- package/dist/directory-sync/scim/DirectoryConfig.d.ts +34 -5
- package/dist/directory-sync/scim/DirectoryConfig.js +38 -9
- package/dist/directory-sync/scim/DirectoryConfig.js.map +1 -1
- package/dist/directory-sync/scim/DirectoryUsers.js +12 -20
- package/dist/directory-sync/scim/DirectoryUsers.js.map +1 -1
- package/dist/directory-sync/scim/Groups.d.ts +62 -13
- package/dist/directory-sync/scim/Groups.js +68 -14
- package/dist/directory-sync/scim/Groups.js.map +1 -1
- package/dist/directory-sync/scim/Users.d.ts +19 -22
- package/dist/directory-sync/scim/Users.js +24 -31
- package/dist/directory-sync/scim/Users.js.map +1 -1
- package/dist/directory-sync/scim/WebhookEventsLogger.d.ts +79 -0
- package/dist/directory-sync/scim/WebhookEventsLogger.js +81 -2
- package/dist/directory-sync/scim/WebhookEventsLogger.js.map +1 -1
- package/dist/directory-sync/scim/transform.js +1 -8
- package/dist/directory-sync/scim/transform.js.map +1 -1
- package/dist/directory-sync/scim/utils.d.ts +1 -7
- package/dist/directory-sync/scim/utils.js +14 -4
- package/dist/directory-sync/scim/utils.js.map +1 -1
- package/dist/directory-sync/types.d.ts +1 -0
- package/dist/directory-sync/utils.js +3 -3
- package/dist/directory-sync/utils.js.map +1 -1
- package/dist/ee/federated-saml/app.d.ts +15 -4
- package/dist/ee/federated-saml/app.js +21 -10
- package/dist/ee/federated-saml/app.js.map +1 -1
- package/dist/ee/federated-saml/index.js +1 -1
- package/dist/ee/federated-saml/index.js.map +1 -1
- package/dist/ee/federated-saml/sso.js +1 -1
- package/dist/ee/federated-saml/sso.js.map +1 -1
- package/dist/ee/ory/ory.js +3 -3
- package/dist/ee/ory/ory.js.map +1 -1
- package/dist/saml/lib.js +1 -1
- package/dist/saml/lib.js.map +1 -1
- package/dist/sso-tracer/index.d.ts +17 -6
- package/dist/sso-tracer/index.js +17 -6
- package/dist/sso-tracer/index.js.map +1 -1
- package/package.json +7 -7
@@ -6,6 +6,16 @@ interface CreateGroupParams {
|
|
6
6
|
raw: any;
|
7
7
|
id?: string;
|
8
8
|
}
|
9
|
+
/**
|
10
|
+
* @swagger
|
11
|
+
* parameters:
|
12
|
+
* groupId:
|
13
|
+
* name: groupId
|
14
|
+
* description: Group ID
|
15
|
+
* in: path
|
16
|
+
* required: true
|
17
|
+
* type: string
|
18
|
+
*/
|
9
19
|
/**
|
10
20
|
* @swagger
|
11
21
|
* definitions:
|
@@ -35,11 +45,7 @@ export declare class Groups extends Base {
|
|
35
45
|
* parameters:
|
36
46
|
* - $ref: '#/parameters/tenant'
|
37
47
|
* - $ref: '#/parameters/product'
|
38
|
-
* -
|
39
|
-
* description: Group ID
|
40
|
-
* in: path
|
41
|
-
* required: true
|
42
|
-
* type: string
|
48
|
+
* - $ref: '#/parameters/groupId'
|
43
49
|
* tags:
|
44
50
|
* - Directory Sync
|
45
51
|
* produces:
|
@@ -69,6 +75,9 @@ export declare class Groups extends Base {
|
|
69
75
|
* - $ref: '#/parameters/tenant'
|
70
76
|
* - $ref: '#/parameters/product'
|
71
77
|
* - $ref: '#/parameters/directoryId'
|
78
|
+
* - $ref: '#/parameters/pageOffset'
|
79
|
+
* - $ref: '#/parameters/pageLimit'
|
80
|
+
* - $ref: '#/parameters/pageToken'
|
72
81
|
* tags:
|
73
82
|
* - Directory Sync
|
74
83
|
* produces:
|
@@ -76,22 +85,62 @@ export declare class Groups extends Base {
|
|
76
85
|
* responses:
|
77
86
|
* 200:
|
78
87
|
* description: Success
|
79
|
-
*
|
80
|
-
*
|
81
|
-
*
|
82
|
-
*
|
88
|
+
* content:
|
89
|
+
* application/json:
|
90
|
+
* schema:
|
91
|
+
* type: object
|
92
|
+
* properties:
|
93
|
+
* data:
|
94
|
+
* type: array
|
95
|
+
* items:
|
96
|
+
* $ref: '#/definitions/Group'
|
97
|
+
* pageToken:
|
98
|
+
* type: string
|
99
|
+
* description: token for pagination
|
83
100
|
*/
|
84
101
|
getAll(params: PaginationParams & {
|
85
102
|
directoryId?: string;
|
86
103
|
}): Promise<Response<Group[]>>;
|
87
104
|
/**
|
88
|
-
*
|
89
|
-
*
|
90
|
-
*
|
105
|
+
* @swagger
|
106
|
+
* definitions:
|
107
|
+
* Member:
|
108
|
+
* type: object
|
109
|
+
* properties:
|
110
|
+
* user_id:
|
111
|
+
* type: string
|
112
|
+
* description: ID of the user
|
113
|
+
* /api/v1/dsync/groups/{groupId}/members:
|
114
|
+
* get:
|
115
|
+
* summary: Get list of members in a group
|
116
|
+
* parameters:
|
117
|
+
* - $ref: '#/parameters/tenant'
|
118
|
+
* - $ref: '#/parameters/product'
|
119
|
+
* - $ref: '#/parameters/groupId'
|
120
|
+
* - $ref: '#/parameters/directoryId'
|
121
|
+
* - $ref: '#/parameters/pageOffset'
|
122
|
+
* - $ref: '#/parameters/pageLimit'
|
123
|
+
* - $ref: '#/parameters/pageToken'
|
124
|
+
* tags:
|
125
|
+
* - Directory Sync
|
126
|
+
* produces:
|
127
|
+
* - application/json
|
128
|
+
* responses:
|
129
|
+
* 200:
|
130
|
+
* description: Success
|
131
|
+
* content:
|
132
|
+
* application/json:
|
133
|
+
* schema:
|
134
|
+
* type: object
|
135
|
+
* properties:
|
136
|
+
* data:
|
137
|
+
* type: array
|
138
|
+
* items:
|
139
|
+
* $ref: '#/definitions/Member'
|
91
140
|
*/
|
92
141
|
getGroupMembers(parmas: {
|
93
142
|
groupId: string;
|
94
|
-
} & PaginationParams): Promise<Response<GroupMembership
|
143
|
+
} & PaginationParams): Promise<Response<Pick<GroupMembership, 'user_id'>[]>>;
|
95
144
|
deleteAll(directoryId: string): Promise<void>;
|
96
145
|
removeAllUsers(groupId: string): Promise<void>;
|
97
146
|
}
|
@@ -41,6 +41,16 @@ const indexNames = {
|
|
41
41
|
directoryIdDisplayname: 'directoryIdDisplayname',
|
42
42
|
directoryId: 'directoryId',
|
43
43
|
};
|
44
|
+
/**
|
45
|
+
* @swagger
|
46
|
+
* parameters:
|
47
|
+
* groupId:
|
48
|
+
* name: groupId
|
49
|
+
* description: Group ID
|
50
|
+
* in: path
|
51
|
+
* required: true
|
52
|
+
* type: string
|
53
|
+
*/
|
44
54
|
/**
|
45
55
|
* @swagger
|
46
56
|
* definitions:
|
@@ -95,11 +105,7 @@ class Groups extends Base_1.Base {
|
|
95
105
|
* parameters:
|
96
106
|
* - $ref: '#/parameters/tenant'
|
97
107
|
* - $ref: '#/parameters/product'
|
98
|
-
* -
|
99
|
-
* description: Group ID
|
100
|
-
* in: path
|
101
|
-
* required: true
|
102
|
-
* type: string
|
108
|
+
* - $ref: '#/parameters/groupId'
|
103
109
|
* tags:
|
104
110
|
* - Directory Sync
|
105
111
|
* produces:
|
@@ -211,6 +217,9 @@ class Groups extends Base_1.Base {
|
|
211
217
|
* - $ref: '#/parameters/tenant'
|
212
218
|
* - $ref: '#/parameters/product'
|
213
219
|
* - $ref: '#/parameters/directoryId'
|
220
|
+
* - $ref: '#/parameters/pageOffset'
|
221
|
+
* - $ref: '#/parameters/pageLimit'
|
222
|
+
* - $ref: '#/parameters/pageToken'
|
214
223
|
* tags:
|
215
224
|
* - Directory Sync
|
216
225
|
* produces:
|
@@ -218,10 +227,18 @@ class Groups extends Base_1.Base {
|
|
218
227
|
* responses:
|
219
228
|
* 200:
|
220
229
|
* description: Success
|
221
|
-
*
|
222
|
-
*
|
223
|
-
*
|
224
|
-
*
|
230
|
+
* content:
|
231
|
+
* application/json:
|
232
|
+
* schema:
|
233
|
+
* type: object
|
234
|
+
* properties:
|
235
|
+
* data:
|
236
|
+
* type: array
|
237
|
+
* items:
|
238
|
+
* $ref: '#/definitions/Group'
|
239
|
+
* pageToken:
|
240
|
+
* type: string
|
241
|
+
* description: token for pagination
|
225
242
|
*/
|
226
243
|
getAll(params) {
|
227
244
|
return __awaiter(this, void 0, void 0, function* () {
|
@@ -247,18 +264,55 @@ class Groups extends Base_1.Base {
|
|
247
264
|
});
|
248
265
|
}
|
249
266
|
/**
|
250
|
-
*
|
251
|
-
*
|
252
|
-
*
|
267
|
+
* @swagger
|
268
|
+
* definitions:
|
269
|
+
* Member:
|
270
|
+
* type: object
|
271
|
+
* properties:
|
272
|
+
* user_id:
|
273
|
+
* type: string
|
274
|
+
* description: ID of the user
|
275
|
+
* /api/v1/dsync/groups/{groupId}/members:
|
276
|
+
* get:
|
277
|
+
* summary: Get list of members in a group
|
278
|
+
* parameters:
|
279
|
+
* - $ref: '#/parameters/tenant'
|
280
|
+
* - $ref: '#/parameters/product'
|
281
|
+
* - $ref: '#/parameters/groupId'
|
282
|
+
* - $ref: '#/parameters/directoryId'
|
283
|
+
* - $ref: '#/parameters/pageOffset'
|
284
|
+
* - $ref: '#/parameters/pageLimit'
|
285
|
+
* - $ref: '#/parameters/pageToken'
|
286
|
+
* tags:
|
287
|
+
* - Directory Sync
|
288
|
+
* produces:
|
289
|
+
* - application/json
|
290
|
+
* responses:
|
291
|
+
* 200:
|
292
|
+
* description: Success
|
293
|
+
* content:
|
294
|
+
* application/json:
|
295
|
+
* schema:
|
296
|
+
* type: object
|
297
|
+
* properties:
|
298
|
+
* data:
|
299
|
+
* type: array
|
300
|
+
* items:
|
301
|
+
* $ref: '#/definitions/Member'
|
253
302
|
*/
|
254
303
|
getGroupMembers(parmas) {
|
255
304
|
return __awaiter(this, void 0, void 0, function* () {
|
256
305
|
const { groupId, pageOffset, pageLimit } = parmas;
|
257
306
|
try {
|
258
|
-
const { data
|
307
|
+
const { data } = (yield this.store('members').getByIndex({
|
259
308
|
name: 'groupId',
|
260
309
|
value: groupId,
|
261
|
-
}, pageOffset, pageLimit);
|
310
|
+
}, pageOffset, pageLimit));
|
311
|
+
const members = data.map((member) => {
|
312
|
+
return {
|
313
|
+
user_id: member.user_id,
|
314
|
+
};
|
315
|
+
});
|
262
316
|
return { data: members, error: null };
|
263
317
|
}
|
264
318
|
catch (err) {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Groups.js","sourceRoot":"","sources":["../../../src/directory-sync/scim/Groups.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,mCAAoC;AAGpC,wDAA0C;AAC1C,kDAAgE;AAChE,iCAA8B;AAE9B,MAAM,UAAU,GAAG;IACjB,sBAAsB,EAAE,wBAAwB;IAChD,WAAW,EAAE,aAAa;CAC3B,CAAC;AASF;;;;;;;;;;;;;;;GAeG;AACH,MAAa,MAAO,SAAQ,WAAI;IAC9B,YAAY,EAAE,EAAE,EAAyB;QACvC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;IAChB,CAAC;IAED,qBAAqB;IACR,MAAM,CAAC,MAAyB;;YAC3C,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC;YAEvD,MAAM,EAAE,GAAG,OAAO,IAAI,IAAA,mBAAU,GAAE,CAAC;YAEnC,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;YAEf,MAAM,KAAK,GAAU;gBACnB,EAAE;gBACF,IAAI;gBACJ,GAAG;aACJ,CAAC;YAEF,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,GAAG,CAC5B,EAAE,EACF,KAAK,EACL;oBACE,IAAI,EAAE,UAAU,CAAC,sBAAsB;oBACvC,KAAK,EAAE,OAAO,CAAC,YAAY,CAAC,WAAW,EAAE,IAAI,CAAC;iBAC/C,EACD;oBACE,IAAI,EAAE,UAAU,CAAC,WAAW;oBAC5B,KAAK,EAAE,WAAW;iBACnB,CACF,CAAC;gBAEF,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;YACtC,CAAC;YAAC,OAAO,GAAQ,EAAE,CAAC;gBAClB,OAAO,IAAA,gBAAQ,EAAC,GAAG,CAAC,CAAC;YACvB,CAAC;QACH,CAAC;KAAA;IAED
|
1
|
+
{"version":3,"file":"Groups.js","sourceRoot":"","sources":["../../../src/directory-sync/scim/Groups.ts"],"names":[],"mappings":"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"}
|
@@ -1,14 +1,5 @@
|
|
1
1
|
import type { User, DatabaseStore, PaginationParams, Response } from '../../typings';
|
2
2
|
import { Base } from './Base';
|
3
|
-
interface CreateUserParams {
|
4
|
-
directoryId: string;
|
5
|
-
first_name: string;
|
6
|
-
last_name: string;
|
7
|
-
email: string;
|
8
|
-
active: boolean;
|
9
|
-
raw: any;
|
10
|
-
id?: string;
|
11
|
-
}
|
12
3
|
/**
|
13
4
|
* @swagger
|
14
5
|
* definitions:
|
@@ -38,7 +29,9 @@ export declare class Users extends Base {
|
|
38
29
|
constructor({ db }: {
|
39
30
|
db: DatabaseStore;
|
40
31
|
});
|
41
|
-
create(
|
32
|
+
create(user: User & {
|
33
|
+
directoryId: string;
|
34
|
+
}): Promise<Response<User>>;
|
42
35
|
/**
|
43
36
|
* @swagger
|
44
37
|
* /api/v1/dsync/users/{userId}:
|
@@ -63,13 +56,7 @@ export declare class Users extends Base {
|
|
63
56
|
* $ref: '#/definitions/User'
|
64
57
|
*/
|
65
58
|
get(id: string): Promise<Response<User>>;
|
66
|
-
update(id: string,
|
67
|
-
first_name: string;
|
68
|
-
last_name: string;
|
69
|
-
email: string;
|
70
|
-
active: boolean;
|
71
|
-
raw: object;
|
72
|
-
}): Promise<Response<User>>;
|
59
|
+
update(id: string, user: User): Promise<Response<User>>;
|
73
60
|
delete(id: string): Promise<Response<null>>;
|
74
61
|
search(userName: string, directoryId: string): Promise<Response<User[]>>;
|
75
62
|
/**
|
@@ -81,6 +68,9 @@ export declare class Users extends Base {
|
|
81
68
|
* - $ref: '#/parameters/tenant'
|
82
69
|
* - $ref: '#/parameters/product'
|
83
70
|
* - $ref: '#/parameters/directoryId'
|
71
|
+
* - $ref: '#/parameters/pageOffset'
|
72
|
+
* - $ref: '#/parameters/pageLimit'
|
73
|
+
* - $ref: '#/parameters/pageToken'
|
84
74
|
* tags:
|
85
75
|
* - Directory Sync
|
86
76
|
* produces:
|
@@ -88,14 +78,21 @@ export declare class Users extends Base {
|
|
88
78
|
* responses:
|
89
79
|
* 200:
|
90
80
|
* description: Success
|
91
|
-
*
|
92
|
-
*
|
93
|
-
*
|
94
|
-
*
|
81
|
+
* content:
|
82
|
+
* application/json:
|
83
|
+
* schema:
|
84
|
+
* type: object
|
85
|
+
* properties:
|
86
|
+
* data:
|
87
|
+
* type: array
|
88
|
+
* items:
|
89
|
+
* $ref: '#/definitions/User'
|
90
|
+
* pageToken:
|
91
|
+
* type: string
|
92
|
+
* description: token for pagination
|
95
93
|
*/
|
96
94
|
getAll({ pageOffset, pageLimit, directoryId, }?: PaginationParams & {
|
97
95
|
directoryId?: string;
|
98
96
|
}): Promise<Response<User[]>>;
|
99
97
|
deleteAll(directoryId: string): Promise<void>;
|
100
98
|
}
|
101
|
-
export {};
|
@@ -10,7 +10,6 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
10
10
|
};
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
12
12
|
exports.Users = void 0;
|
13
|
-
const crypto_1 = require("crypto");
|
14
13
|
const error_1 = require("../../controller/error");
|
15
14
|
const Base_1 = require("./Base");
|
16
15
|
const utils_1 = require("../../db/utils");
|
@@ -48,19 +47,9 @@ class Users extends Base_1.Base {
|
|
48
47
|
super({ db });
|
49
48
|
}
|
50
49
|
// Create a new user
|
51
|
-
create(
|
50
|
+
create(user) {
|
52
51
|
return __awaiter(this, void 0, void 0, function* () {
|
53
|
-
const { directoryId,
|
54
|
-
const id = userId || (0, crypto_1.randomUUID)();
|
55
|
-
raw['id'] = id;
|
56
|
-
const user = {
|
57
|
-
id,
|
58
|
-
first_name,
|
59
|
-
last_name,
|
60
|
-
email,
|
61
|
-
active,
|
62
|
-
raw,
|
63
|
-
};
|
52
|
+
const { directoryId, id, email } = user;
|
64
53
|
try {
|
65
54
|
yield this.store('users').put(id, user, {
|
66
55
|
name: indexNames.directoryIdUsername,
|
@@ -114,21 +103,14 @@ class Users extends Base_1.Base {
|
|
114
103
|
});
|
115
104
|
}
|
116
105
|
// Update the user data
|
117
|
-
update(id,
|
106
|
+
update(id, user) {
|
118
107
|
return __awaiter(this, void 0, void 0, function* () {
|
119
|
-
const {
|
108
|
+
const { raw } = user;
|
120
109
|
raw['id'] = id;
|
121
|
-
const
|
122
|
-
id,
|
123
|
-
first_name,
|
124
|
-
last_name,
|
125
|
-
email,
|
126
|
-
active,
|
127
|
-
raw,
|
128
|
-
};
|
110
|
+
const updatedUser = Object.assign(Object.assign({}, user), { raw });
|
129
111
|
try {
|
130
|
-
yield this.store('users').put(id,
|
131
|
-
return { data:
|
112
|
+
yield this.store('users').put(id, updatedUser);
|
113
|
+
return { data: updatedUser, error: null };
|
132
114
|
}
|
133
115
|
catch (err) {
|
134
116
|
return (0, error_1.apiError)(err);
|
@@ -175,6 +157,9 @@ class Users extends Base_1.Base {
|
|
175
157
|
* - $ref: '#/parameters/tenant'
|
176
158
|
* - $ref: '#/parameters/product'
|
177
159
|
* - $ref: '#/parameters/directoryId'
|
160
|
+
* - $ref: '#/parameters/pageOffset'
|
161
|
+
* - $ref: '#/parameters/pageLimit'
|
162
|
+
* - $ref: '#/parameters/pageToken'
|
178
163
|
* tags:
|
179
164
|
* - Directory Sync
|
180
165
|
* produces:
|
@@ -182,13 +167,21 @@ class Users extends Base_1.Base {
|
|
182
167
|
* responses:
|
183
168
|
* 200:
|
184
169
|
* description: Success
|
185
|
-
*
|
186
|
-
*
|
187
|
-
*
|
188
|
-
*
|
170
|
+
* content:
|
171
|
+
* application/json:
|
172
|
+
* schema:
|
173
|
+
* type: object
|
174
|
+
* properties:
|
175
|
+
* data:
|
176
|
+
* type: array
|
177
|
+
* items:
|
178
|
+
* $ref: '#/definitions/User'
|
179
|
+
* pageToken:
|
180
|
+
* type: string
|
181
|
+
* description: token for pagination
|
189
182
|
*/
|
190
|
-
getAll(
|
191
|
-
return __awaiter(this,
|
183
|
+
getAll() {
|
184
|
+
return __awaiter(this, arguments, void 0, function* ({ pageOffset, pageLimit, directoryId, } = {}) {
|
192
185
|
try {
|
193
186
|
let users = [];
|
194
187
|
// Filter by directoryId
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Users.js","sourceRoot":"","sources":["../../../src/directory-sync/scim/Users.ts"],"names":[],"mappings":";;;;;;;;;;;;
|
1
|
+
{"version":3,"file":"Users.js","sourceRoot":"","sources":["../../../src/directory-sync/scim/Users.ts"],"names":[],"mappings":"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"}
|
@@ -3,12 +3,91 @@ import { Base } from './Base';
|
|
3
3
|
type GetAllParams = PaginationParams & {
|
4
4
|
directoryId?: string;
|
5
5
|
};
|
6
|
+
/**
|
7
|
+
* @swagger
|
8
|
+
* definitions:
|
9
|
+
* Event:
|
10
|
+
* type: object
|
11
|
+
* example:
|
12
|
+
* {
|
13
|
+
* "id": "id1",
|
14
|
+
* "webhook_endpoint": "https://example.com/webhook",
|
15
|
+
* "created_at": "2024-03-05T17:06:26.074Z",
|
16
|
+
* "status_code": 200,
|
17
|
+
* "delivered": true,
|
18
|
+
* "payload": {
|
19
|
+
* "directory_id": "58b5cd9dfaa39d47eb8f5f88631f9a629a232016",
|
20
|
+
* "event": "user.created",
|
21
|
+
* "tenant": "boxyhq",
|
22
|
+
* "product": "jackson",
|
23
|
+
* "data": {
|
24
|
+
* "id": "038e767b-9bc6-4dbd-975e-fbc38a8e7d82",
|
25
|
+
* "first_name": "Deepak",
|
26
|
+
* "last_name": "Prabhakara",
|
27
|
+
* "email": "deepak@boxyhq.com",
|
28
|
+
* "active": true,
|
29
|
+
* "raw": {
|
30
|
+
* "schemas": ["urn:ietf:params:scim:schemas:core:2.0:User"],
|
31
|
+
* "userName": "deepak@boxyhq.com",
|
32
|
+
* "name": {
|
33
|
+
* "givenName": "Deepak",
|
34
|
+
* "familyName": "Prabhakara"
|
35
|
+
* },
|
36
|
+
* "emails": [
|
37
|
+
* {
|
38
|
+
* "primary": true,
|
39
|
+
* "value": "deepak@boxyhq.com",
|
40
|
+
* "type": "work"
|
41
|
+
* }
|
42
|
+
* ],
|
43
|
+
* "title": "CEO",
|
44
|
+
* "displayName": "Deepak Prabhakara",
|
45
|
+
* "locale": "en-US",
|
46
|
+
* "externalId": "00u1ldzzogFkXFmvT5d7",
|
47
|
+
* "groups": [],
|
48
|
+
* "active": true,
|
49
|
+
* "id": "038e767b-9bc6-4dbd-975e-fbc38a8e7d82"
|
50
|
+
* }
|
51
|
+
* }
|
52
|
+
* }
|
53
|
+
* }
|
54
|
+
*/
|
6
55
|
export declare class WebhookEventsLogger extends Base {
|
7
56
|
constructor({ db }: {
|
8
57
|
db: DatabaseStore;
|
9
58
|
});
|
10
59
|
log(directory: Directory, event: DirectorySyncEvent | DirectorySyncEvent[], status: number): Promise<WebhookEventLog>;
|
11
60
|
get(id: string): Promise<WebhookEventLog>;
|
61
|
+
/**
|
62
|
+
* @swagger
|
63
|
+
* /api/v1/dsync/events:
|
64
|
+
* get:
|
65
|
+
* summary: Get event logs for a directory
|
66
|
+
* parameters:
|
67
|
+
* - $ref: '#/parameters/directoryId'
|
68
|
+
* - $ref: '#/parameters/pageOffset'
|
69
|
+
* - $ref: '#/parameters/pageLimit'
|
70
|
+
* - $ref: '#/parameters/pageToken'
|
71
|
+
* tags:
|
72
|
+
* - Directory Sync
|
73
|
+
* produces:
|
74
|
+
* - application/json
|
75
|
+
* responses:
|
76
|
+
* 200:
|
77
|
+
* description: Success
|
78
|
+
* content:
|
79
|
+
* application/json:
|
80
|
+
* schema:
|
81
|
+
* type: object
|
82
|
+
* properties:
|
83
|
+
* data:
|
84
|
+
* type: array
|
85
|
+
* items:
|
86
|
+
* $ref: '#/definitions/Event'
|
87
|
+
* pageToken:
|
88
|
+
* type: string
|
89
|
+
* description: token for pagination
|
90
|
+
*/
|
12
91
|
getAll(params?: GetAllParams): Promise<WebhookEventLog[]>;
|
13
92
|
delete(id: string): Promise<void>;
|
14
93
|
deleteAll(directoryId: string): Promise<void>;
|
@@ -13,6 +13,55 @@ exports.WebhookEventsLogger = void 0;
|
|
13
13
|
const crypto_1 = require("crypto");
|
14
14
|
const Base_1 = require("./Base");
|
15
15
|
const utils_1 = require("../utils");
|
16
|
+
/**
|
17
|
+
* @swagger
|
18
|
+
* definitions:
|
19
|
+
* Event:
|
20
|
+
* type: object
|
21
|
+
* example:
|
22
|
+
* {
|
23
|
+
* "id": "id1",
|
24
|
+
* "webhook_endpoint": "https://example.com/webhook",
|
25
|
+
* "created_at": "2024-03-05T17:06:26.074Z",
|
26
|
+
* "status_code": 200,
|
27
|
+
* "delivered": true,
|
28
|
+
* "payload": {
|
29
|
+
* "directory_id": "58b5cd9dfaa39d47eb8f5f88631f9a629a232016",
|
30
|
+
* "event": "user.created",
|
31
|
+
* "tenant": "boxyhq",
|
32
|
+
* "product": "jackson",
|
33
|
+
* "data": {
|
34
|
+
* "id": "038e767b-9bc6-4dbd-975e-fbc38a8e7d82",
|
35
|
+
* "first_name": "Deepak",
|
36
|
+
* "last_name": "Prabhakara",
|
37
|
+
* "email": "deepak@boxyhq.com",
|
38
|
+
* "active": true,
|
39
|
+
* "raw": {
|
40
|
+
* "schemas": ["urn:ietf:params:scim:schemas:core:2.0:User"],
|
41
|
+
* "userName": "deepak@boxyhq.com",
|
42
|
+
* "name": {
|
43
|
+
* "givenName": "Deepak",
|
44
|
+
* "familyName": "Prabhakara"
|
45
|
+
* },
|
46
|
+
* "emails": [
|
47
|
+
* {
|
48
|
+
* "primary": true,
|
49
|
+
* "value": "deepak@boxyhq.com",
|
50
|
+
* "type": "work"
|
51
|
+
* }
|
52
|
+
* ],
|
53
|
+
* "title": "CEO",
|
54
|
+
* "displayName": "Deepak Prabhakara",
|
55
|
+
* "locale": "en-US",
|
56
|
+
* "externalId": "00u1ldzzogFkXFmvT5d7",
|
57
|
+
* "groups": [],
|
58
|
+
* "active": true,
|
59
|
+
* "id": "038e767b-9bc6-4dbd-975e-fbc38a8e7d82"
|
60
|
+
* }
|
61
|
+
* }
|
62
|
+
* }
|
63
|
+
* }
|
64
|
+
*/
|
16
65
|
class WebhookEventsLogger extends Base_1.Base {
|
17
66
|
constructor({ db }) {
|
18
67
|
super({ db });
|
@@ -40,9 +89,39 @@ class WebhookEventsLogger extends Base_1.Base {
|
|
40
89
|
return yield this.eventStore().get(id);
|
41
90
|
});
|
42
91
|
}
|
92
|
+
/**
|
93
|
+
* @swagger
|
94
|
+
* /api/v1/dsync/events:
|
95
|
+
* get:
|
96
|
+
* summary: Get event logs for a directory
|
97
|
+
* parameters:
|
98
|
+
* - $ref: '#/parameters/directoryId'
|
99
|
+
* - $ref: '#/parameters/pageOffset'
|
100
|
+
* - $ref: '#/parameters/pageLimit'
|
101
|
+
* - $ref: '#/parameters/pageToken'
|
102
|
+
* tags:
|
103
|
+
* - Directory Sync
|
104
|
+
* produces:
|
105
|
+
* - application/json
|
106
|
+
* responses:
|
107
|
+
* 200:
|
108
|
+
* description: Success
|
109
|
+
* content:
|
110
|
+
* application/json:
|
111
|
+
* schema:
|
112
|
+
* type: object
|
113
|
+
* properties:
|
114
|
+
* data:
|
115
|
+
* type: array
|
116
|
+
* items:
|
117
|
+
* $ref: '#/definitions/Event'
|
118
|
+
* pageToken:
|
119
|
+
* type: string
|
120
|
+
* description: token for pagination
|
121
|
+
*/
|
43
122
|
// Get the event logs for a directory paginated
|
44
|
-
getAll(
|
45
|
-
return __awaiter(this,
|
123
|
+
getAll() {
|
124
|
+
return __awaiter(this, arguments, void 0, function* (params = {}) {
|
46
125
|
const { pageOffset, pageLimit, directoryId } = params;
|
47
126
|
let eventLogs = [];
|
48
127
|
if (directoryId) {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"WebhookEventsLogger.js","sourceRoot":"","sources":["../../../src/directory-sync/scim/WebhookEventsLogger.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,mCAAoC;AASpC,iCAA8B;AAC9B,oCAA2C;AAM3C,MAAa,mBAAoB,SAAQ,WAAI;IAC3C,YAAY,EAAE,EAAE,EAAyB;QACvC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;IAChB,CAAC;IAEY,GAAG,CAAC,SAAoB,EAAE,KAAgD,EAAE,MAAc;;YACrG,MAAM,EAAE,GAAG,IAAA,mBAAU,GAAE,CAAC;YAExB,MAAM,GAAG,GAAoB;gBAC3B,EAAE;gBACF,OAAO,EAAE,KAAK;gBACd,gBAAgB,EAAE,SAAS,CAAC,OAAO,CAAC,QAAQ;gBAC5C,UAAU,EAAE,IAAI,IAAI,EAAE;gBACtB,WAAW,EAAE,MAAM;gBACnB,SAAS,EAAE,MAAM,KAAK,GAAG;aAC1B,CAAC;YAEF,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,EAAE;gBACnC,IAAI,EAAE,aAAa;gBACnB,KAAK,EAAE,SAAS,CAAC,EAAE;aACpB,CAAC,CAAC;YAEH,OAAO,GAAG,CAAC;QACb,CAAC;KAAA;IAEY,GAAG,CAAC,EAAU;;YACzB,OAAO,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACzC,CAAC;KAAA;IAED,+CAA+C;IAClC,MAAM,
|
1
|
+
{"version":3,"file":"WebhookEventsLogger.js","sourceRoot":"","sources":["../../../src/directory-sync/scim/WebhookEventsLogger.ts"],"names":[],"mappings":"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"}
|