@dereekb/zoom 13.2.1 → 13.3.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.
@@ -9,95 +9,341 @@ var config = require('@nestjs/config');
9
9
  var nestjs = require('@dereekb/nestjs');
10
10
  var crypto = require('crypto');
11
11
 
12
- /******************************************************************************
13
- Copyright (c) Microsoft Corporation.
14
-
15
- Permission to use, copy, modify, and/or distribute this software for any
16
- purpose with or without fee is hereby granted.
17
-
18
- THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
19
- REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
20
- AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
21
- INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
22
- LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
23
- OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
24
- PERFORMANCE OF THIS SOFTWARE.
25
- ***************************************************************************** */
26
- /* global Reflect, Promise, SuppressedError, Symbol, Iterator */
27
-
28
-
29
- function __decorate(decorators, target, key, desc) {
30
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
31
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
32
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
33
- return c > 3 && r && Object.defineProperty(target, key, r), r;
34
- }
35
-
36
- function __param(paramIndex, decorator) {
37
- return function (target, key) { decorator(target, key, paramIndex); }
38
- }
39
-
40
- typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
41
- var e = new Error(message);
42
- return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
12
+ function _type_of(obj) {
13
+ "@swc/helpers - typeof";
14
+ return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
15
+ }
16
+ function __decorate(decorators, target, key, desc) {
17
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
18
+ if ((typeof Reflect === "undefined" ? "undefined" : _type_of(Reflect)) === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
19
+ else for(var i = decorators.length - 1; i >= 0; i--)if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
20
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
21
+ }
22
+ function __param(paramIndex, decorator) {
23
+ return function(target, key) {
24
+ decorator(target, key, paramIndex);
25
+ };
26
+ }
27
+ typeof SuppressedError === "function" ? SuppressedError : function(error, suppressed, message) {
28
+ var e = new Error(message);
29
+ return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
43
30
  };
44
31
 
32
+ function _class_call_check$8(instance, Constructor) {
33
+ if (!(instance instanceof Constructor)) {
34
+ throw new TypeError("Cannot call a class as a function");
35
+ }
36
+ }
37
+ function _defineProperties$6(target, props) {
38
+ for(var i = 0; i < props.length; i++){
39
+ var descriptor = props[i];
40
+ descriptor.enumerable = descriptor.enumerable || false;
41
+ descriptor.configurable = true;
42
+ if ("value" in descriptor) descriptor.writable = true;
43
+ Object.defineProperty(target, descriptor.key, descriptor);
44
+ }
45
+ }
46
+ function _create_class$6(Constructor, protoProps, staticProps) {
47
+ if (staticProps) _defineProperties$6(Constructor, staticProps);
48
+ return Constructor;
49
+ }
50
+ function _define_property$8(obj, key, value) {
51
+ if (key in obj) {
52
+ Object.defineProperty(obj, key, {
53
+ value: value,
54
+ enumerable: true,
55
+ configurable: true,
56
+ writable: true
57
+ });
58
+ } else {
59
+ obj[key] = value;
60
+ }
61
+ return obj;
62
+ }
45
63
  /**
46
64
  * Configuration for ZoomService
47
- */
48
- class ZoomOAuthServiceConfig {
49
- zoomOAuth;
50
- factoryConfig;
51
- static assertValidConfig(config) {
52
- const { zoomOAuth } = config;
53
- if (!zoomOAuth) {
54
- throw new Error('ZoomOAuthServiceConfig.zoomOAuth is required');
55
- }
56
- else {
57
- if (!zoomOAuth.accountId) {
58
- throw new Error('ZoomOAuthServiceConfig.zoomOAuth.accountId is required');
59
- }
60
- else if (!zoomOAuth.clientSecret) {
61
- throw new Error('ZoomOAuthServiceConfig.zoomOAuth.clientSecret is required');
62
- }
63
- else if (!zoomOAuth.clientId) {
64
- throw new Error('ZoomOAuthServiceConfig.zoomOAuth.clientId is required');
65
+ */ var ZoomOAuthServiceConfig = /*#__PURE__*/ function() {
66
+ function ZoomOAuthServiceConfig() {
67
+ _class_call_check$8(this, ZoomOAuthServiceConfig);
68
+ _define_property$8(this, "zoomOAuth", void 0);
69
+ _define_property$8(this, "factoryConfig", void 0);
70
+ }
71
+ _create_class$6(ZoomOAuthServiceConfig, null, [
72
+ {
73
+ key: "assertValidConfig",
74
+ value: function assertValidConfig(config) {
75
+ var zoomOAuth = config.zoomOAuth;
76
+ if (!zoomOAuth) {
77
+ throw new Error('ZoomOAuthServiceConfig.zoomOAuth is required');
78
+ } else {
79
+ if (!zoomOAuth.accountId) {
80
+ throw new Error('ZoomOAuthServiceConfig.zoomOAuth.accountId is required');
81
+ } else if (!zoomOAuth.clientSecret) {
82
+ throw new Error('ZoomOAuthServiceConfig.zoomOAuth.clientSecret is required');
83
+ } else if (!zoomOAuth.clientId) {
84
+ throw new Error('ZoomOAuthServiceConfig.zoomOAuth.clientId is required');
85
+ }
86
+ }
65
87
  }
66
88
  }
67
- }
68
- }
89
+ ]);
90
+ return ZoomOAuthServiceConfig;
91
+ }();
69
92
  function readZoomOAuthServiceConfigFromConfigService(configService, prefix) {
70
- const prefixString = util.characterPrefixSuffixInstance({ suffix: '_', suffixEmptyString: false }).prefixSuffixString(prefix ?? '');
71
- const accountIdKey = `${prefixString}ZOOM_ACCOUNT_ID`;
72
- const clientIdKey = `${prefixString}ZOOM_CLIENT_ID`;
73
- const clientSecretKey = `${prefixString}ZOOM_CLIENT_SECRET`;
74
- const accountId = configService.getOrThrow(accountIdKey);
75
- const clientId = configService.getOrThrow(clientIdKey);
76
- const clientSecret = configService.getOrThrow(clientSecretKey);
77
- const config = {
93
+ var prefixString = util.characterPrefixSuffixInstance({
94
+ suffix: '_',
95
+ suffixEmptyString: false
96
+ }).prefixSuffixString(prefix !== null && prefix !== void 0 ? prefix : '');
97
+ var accountIdKey = "".concat(prefixString, "ZOOM_ACCOUNT_ID");
98
+ var clientIdKey = "".concat(prefixString, "ZOOM_CLIENT_ID");
99
+ var clientSecretKey = "".concat(prefixString, "ZOOM_CLIENT_SECRET");
100
+ var accountId = configService.getOrThrow(accountIdKey);
101
+ var clientId = configService.getOrThrow(clientIdKey);
102
+ var clientSecret = configService.getOrThrow(clientSecretKey);
103
+ var config = {
78
104
  zoomOAuth: {
79
105
  authEntityType: 'account',
80
- accountId,
81
- clientId,
82
- clientSecret
106
+ accountId: accountId,
107
+ clientId: clientId,
108
+ clientSecret: clientSecret
83
109
  }
84
110
  };
85
111
  ZoomOAuthServiceConfig.assertValidConfig(config);
86
112
  return config;
87
113
  }
88
114
 
115
+ function _array_like_to_array$2(arr, len) {
116
+ if (len == null || len > arr.length) len = arr.length;
117
+ for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
118
+ return arr2;
119
+ }
120
+ function _array_with_holes(arr) {
121
+ if (Array.isArray(arr)) return arr;
122
+ }
123
+ function _array_without_holes$2(arr) {
124
+ if (Array.isArray(arr)) return _array_like_to_array$2(arr);
125
+ }
126
+ function asyncGeneratorStep$2(gen, resolve, reject, _next, _throw, key, arg) {
127
+ try {
128
+ var info = gen[key](arg);
129
+ var value = info.value;
130
+ } catch (error) {
131
+ reject(error);
132
+ return;
133
+ }
134
+ if (info.done) {
135
+ resolve(value);
136
+ } else {
137
+ Promise.resolve(value).then(_next, _throw);
138
+ }
139
+ }
140
+ function _async_to_generator$2(fn) {
141
+ return function() {
142
+ var self = this, args = arguments;
143
+ return new Promise(function(resolve, reject) {
144
+ var gen = fn.apply(self, args);
145
+ function _next(value) {
146
+ asyncGeneratorStep$2(gen, resolve, reject, _next, _throw, "next", value);
147
+ }
148
+ function _throw(err) {
149
+ asyncGeneratorStep$2(gen, resolve, reject, _next, _throw, "throw", err);
150
+ }
151
+ _next(undefined);
152
+ });
153
+ };
154
+ }
155
+ function _class_call_check$7(instance, Constructor) {
156
+ if (!(instance instanceof Constructor)) {
157
+ throw new TypeError("Cannot call a class as a function");
158
+ }
159
+ }
160
+ function _define_property$7(obj, key, value) {
161
+ if (key in obj) {
162
+ Object.defineProperty(obj, key, {
163
+ value: value,
164
+ enumerable: true,
165
+ configurable: true,
166
+ writable: true
167
+ });
168
+ } else {
169
+ obj[key] = value;
170
+ }
171
+ return obj;
172
+ }
173
+ function _iterable_to_array$2(iter) {
174
+ if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
175
+ }
176
+ function _iterable_to_array_limit(arr, i) {
177
+ var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
178
+ if (_i == null) return;
179
+ var _arr = [];
180
+ var _n = true;
181
+ var _d = false;
182
+ var _s, _e;
183
+ try {
184
+ for(_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true){
185
+ _arr.push(_s.value);
186
+ if (i && _arr.length === i) break;
187
+ }
188
+ } catch (err) {
189
+ _d = true;
190
+ _e = err;
191
+ } finally{
192
+ try {
193
+ if (!_n && _i["return"] != null) _i["return"]();
194
+ } finally{
195
+ if (_d) throw _e;
196
+ }
197
+ }
198
+ return _arr;
199
+ }
200
+ function _non_iterable_rest() {
201
+ throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
202
+ }
203
+ function _non_iterable_spread$2() {
204
+ throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
205
+ }
206
+ function _object_spread$3(target) {
207
+ for(var i = 1; i < arguments.length; i++){
208
+ var source = arguments[i] != null ? arguments[i] : {};
209
+ var ownKeys = Object.keys(source);
210
+ if (typeof Object.getOwnPropertySymbols === "function") {
211
+ ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
212
+ return Object.getOwnPropertyDescriptor(source, sym).enumerable;
213
+ }));
214
+ }
215
+ ownKeys.forEach(function(key) {
216
+ _define_property$7(target, key, source[key]);
217
+ });
218
+ }
219
+ return target;
220
+ }
221
+ function _sliced_to_array(arr, i) {
222
+ return _array_with_holes(arr) || _iterable_to_array_limit(arr, i) || _unsupported_iterable_to_array$2(arr, i) || _non_iterable_rest();
223
+ }
224
+ function _to_consumable_array$2(arr) {
225
+ return _array_without_holes$2(arr) || _iterable_to_array$2(arr) || _unsupported_iterable_to_array$2(arr) || _non_iterable_spread$2();
226
+ }
227
+ function _unsupported_iterable_to_array$2(o, minLen) {
228
+ if (!o) return;
229
+ if (typeof o === "string") return _array_like_to_array$2(o, minLen);
230
+ var n = Object.prototype.toString.call(o).slice(8, -1);
231
+ if (n === "Object" && o.constructor) n = o.constructor.name;
232
+ if (n === "Map" || n === "Set") return Array.from(n);
233
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$2(o, minLen);
234
+ }
235
+ function _ts_generator$2(thisArg, body) {
236
+ var f, y, t, _ = {
237
+ label: 0,
238
+ sent: function() {
239
+ if (t[0] & 1) throw t[1];
240
+ return t[1];
241
+ },
242
+ trys: [],
243
+ ops: []
244
+ }, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype), d = Object.defineProperty;
245
+ return d(g, "next", {
246
+ value: verb(0)
247
+ }), d(g, "throw", {
248
+ value: verb(1)
249
+ }), d(g, "return", {
250
+ value: verb(2)
251
+ }), typeof Symbol === "function" && d(g, Symbol.iterator, {
252
+ value: function() {
253
+ return this;
254
+ }
255
+ }), g;
256
+ function verb(n) {
257
+ return function(v) {
258
+ return step([
259
+ n,
260
+ v
261
+ ]);
262
+ };
263
+ }
264
+ function step(op) {
265
+ if (f) throw new TypeError("Generator is already executing.");
266
+ while(g && (g = 0, op[0] && (_ = 0)), _)try {
267
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
268
+ if (y = 0, t) op = [
269
+ op[0] & 2,
270
+ t.value
271
+ ];
272
+ switch(op[0]){
273
+ case 0:
274
+ case 1:
275
+ t = op;
276
+ break;
277
+ case 4:
278
+ _.label++;
279
+ return {
280
+ value: op[1],
281
+ done: false
282
+ };
283
+ case 5:
284
+ _.label++;
285
+ y = op[1];
286
+ op = [
287
+ 0
288
+ ];
289
+ continue;
290
+ case 7:
291
+ op = _.ops.pop();
292
+ _.trys.pop();
293
+ continue;
294
+ default:
295
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
296
+ _ = 0;
297
+ continue;
298
+ }
299
+ if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
300
+ _.label = op[1];
301
+ break;
302
+ }
303
+ if (op[0] === 6 && _.label < t[1]) {
304
+ _.label = t[1];
305
+ t = op;
306
+ break;
307
+ }
308
+ if (t && _.label < t[2]) {
309
+ _.label = t[2];
310
+ _.ops.push(op);
311
+ break;
312
+ }
313
+ if (t[2]) _.ops.pop();
314
+ _.trys.pop();
315
+ continue;
316
+ }
317
+ op = body.call(thisArg, _);
318
+ } catch (e) {
319
+ op = [
320
+ 6,
321
+ e
322
+ ];
323
+ y = 0;
324
+ } finally{
325
+ f = t = 0;
326
+ }
327
+ if (op[0] & 5) throw op[1];
328
+ return {
329
+ value: op[0] ? op[1] : void 0,
330
+ done: true
331
+ };
332
+ }
333
+ }
89
334
  /**
90
335
  * Service used for retrieving ZoomAccessTokenCache for Zoom services.
91
- */
92
- exports.ZoomOAuthAccessTokenCacheService = class ZoomOAuthAccessTokenCacheService {
336
+ */ exports.ZoomOAuthAccessTokenCacheService = function ZoomOAuthAccessTokenCacheService() {
337
+ _class_call_check$7(this, ZoomOAuthAccessTokenCacheService);
93
338
  };
94
339
  exports.ZoomOAuthAccessTokenCacheService = __decorate([
95
340
  common.Injectable()
96
341
  ], exports.ZoomOAuthAccessTokenCacheService);
97
342
  function logMergeZoomOAuthAccessTokenCacheServiceErrorFunction(failedUpdates) {
98
- console.warn(`mergeZoomOAuthAccessTokenCacheServices(): failed updating ${failedUpdates.length} caches.`);
99
- failedUpdates.forEach(([x, e], i) => {
100
- console.warn(`Cache update failure ${i + 1}: - ${e}`);
343
+ console.warn("mergeZoomOAuthAccessTokenCacheServices(): failed updating ".concat(failedUpdates.length, " caches."));
344
+ failedUpdates.forEach(function(param, i) {
345
+ var _param = _sliced_to_array(param, 2); _param[0]; var e = _param[1];
346
+ console.warn("Cache update failure ".concat(i + 1, ": - ").concat(e));
101
347
  });
102
348
  }
103
349
  /**
@@ -108,62 +354,83 @@ function logMergeZoomOAuthAccessTokenCacheServiceErrorFunction(failedUpdates) {
108
354
  * When updating a cached token, it will update the token across all services.
109
355
  *
110
356
  * @param servicesToMerge Must include atleast one service. Empty arrays will throw an error.
111
- */
112
- function mergeZoomOAuthAccessTokenCacheServices(inputServicesToMerge, logError) {
113
- const allServices = [...inputServicesToMerge];
114
- const logErrorFunction = typeof logError === 'function' ? logError : logError !== false ? logMergeZoomOAuthAccessTokenCacheServiceErrorFunction : undefined;
357
+ */ function mergeZoomOAuthAccessTokenCacheServices(inputServicesToMerge, logError) {
358
+ var allServices = _to_consumable_array$2(inputServicesToMerge);
359
+ var logErrorFunction = typeof logError === 'function' ? logError : logError !== false ? logMergeZoomOAuthAccessTokenCacheServiceErrorFunction : undefined;
115
360
  if (allServices.length === 0) {
116
361
  throw new Error('mergeZoomOAuthAccessTokenCacheServices() input cannot be empty.');
117
362
  }
118
- const loadZoomAccessTokenCache = (accessCachesForServices) => {
119
- const loadCachedTokenFromFirstService = util.tryWithPromiseFactoriesFunction({
120
- promiseFactories: accessCachesForServices.map((x) => () => x
121
- .loadCachedToken()
122
- .catch(() => null)
123
- .then((x) => {
124
- let result = undefined;
125
- if (x && !util.isPast(x.expiresAt)) {
126
- result = x; // only return from cache if it is not expired
127
- }
128
- return result;
129
- })),
363
+ var loadZoomAccessTokenCache = function loadZoomAccessTokenCache(accessCachesForServices) {
364
+ var loadCachedTokenFromFirstService = util.tryWithPromiseFactoriesFunction({
365
+ promiseFactories: accessCachesForServices.map(function(x) {
366
+ return function() {
367
+ return x.loadCachedToken().catch(function() {
368
+ return null;
369
+ }).then(function(x) {
370
+ var result = undefined;
371
+ if (x && !util.isPast(x.expiresAt)) {
372
+ result = x; // only return from cache if it is not expired
373
+ }
374
+ return result;
375
+ });
376
+ };
377
+ }),
130
378
  successOnMaybe: false,
131
379
  throwErrors: false
132
380
  });
133
- const cacheForService = {
134
- loadCachedToken: function () {
381
+ var cacheForService = {
382
+ loadCachedToken: function loadCachedToken() {
135
383
  return loadCachedTokenFromFirstService();
136
384
  },
137
- updateCachedToken: async function (accessToken) {
138
- return Promise.allSettled(accessCachesForServices.map((x) => x
139
- .updateCachedToken(accessToken)
140
- .then(() => null)
141
- .catch((e) => {
142
- return [x, e];
143
- }))).then((x) => {
144
- // only find the failures if we're logging
145
- if (logErrorFunction != null) {
146
- const failedUpdates = util.filterMaybeArrayValues(x.map((y) => y.value));
147
- if (failedUpdates.length) {
148
- logErrorFunction(failedUpdates);
149
- }
150
- }
151
- });
385
+ updateCachedToken: function updateCachedToken(accessToken) {
386
+ return _async_to_generator$2(function() {
387
+ return _ts_generator$2(this, function(_state) {
388
+ return [
389
+ 2,
390
+ Promise.allSettled(accessCachesForServices.map(function(x) {
391
+ return x.updateCachedToken(accessToken).then(function() {
392
+ return null;
393
+ }).catch(function(e) {
394
+ return [
395
+ x,
396
+ e
397
+ ];
398
+ });
399
+ })).then(function(x) {
400
+ // only find the failures if we're logging
401
+ if (logErrorFunction != null) {
402
+ var failedUpdates = util.filterMaybeArrayValues(x.map(function(y) {
403
+ return y.value;
404
+ }));
405
+ if (failedUpdates.length) {
406
+ logErrorFunction(failedUpdates);
407
+ }
408
+ }
409
+ })
410
+ ];
411
+ });
412
+ })();
152
413
  }
153
414
  };
154
415
  return cacheForService;
155
416
  };
156
- const allServiceAccessTokenCaches = allServices.map((x) => x.loadZoomAccessTokenCache());
157
- const allServicesWithCacheForRefreshToken = allServices.filter((x) => x.cacheForRefreshToken != null);
158
- const cacheForRefreshToken = allServiceAccessTokenCaches.length > 0
159
- ? (refreshToken) => {
160
- const allCaches = allServicesWithCacheForRefreshToken.map((x) => x.cacheForRefreshToken(refreshToken));
161
- return loadZoomAccessTokenCache(allCaches);
162
- }
163
- : undefined;
164
- const service = {
165
- loadZoomAccessTokenCache: () => loadZoomAccessTokenCache(allServiceAccessTokenCaches),
166
- cacheForRefreshToken
417
+ var allServiceAccessTokenCaches = allServices.map(function(x) {
418
+ return x.loadZoomAccessTokenCache();
419
+ });
420
+ var allServicesWithCacheForRefreshToken = allServices.filter(function(x) {
421
+ return x.cacheForRefreshToken != null;
422
+ });
423
+ var cacheForRefreshToken = allServiceAccessTokenCaches.length > 0 ? function(refreshToken) {
424
+ var allCaches = allServicesWithCacheForRefreshToken.map(function(x) {
425
+ return x.cacheForRefreshToken(refreshToken);
426
+ });
427
+ return loadZoomAccessTokenCache(allCaches);
428
+ } : undefined;
429
+ var service = {
430
+ loadZoomAccessTokenCache: function loadZoomAccessTokenCache1() {
431
+ return loadZoomAccessTokenCache(allServiceAccessTokenCaches);
432
+ },
433
+ cacheForRefreshToken: cacheForRefreshToken
167
434
  };
168
435
  return service;
169
436
  }
@@ -172,169 +439,356 @@ function mergeZoomOAuthAccessTokenCacheServices(inputServicesToMerge, logError)
172
439
  * Creates a ZoomOAuthAccessTokenCacheService that uses in-memory storage.
173
440
  *
174
441
  * @returns
175
- */
176
- function memoryZoomOAuthAccessTokenCacheService(existingToken, logAccessToConsole) {
177
- let token = existingToken;
442
+ */ function memoryZoomOAuthAccessTokenCacheService(existingToken, logAccessToConsole) {
443
+ var token = existingToken;
178
444
  function loadZoomAccessTokenCache() {
179
- const accessTokenCache = {
180
- loadCachedToken: async function () {
181
- if (logAccessToConsole) {
182
- console.log('retrieving access token from memory: ', { token });
183
- }
184
- return token;
445
+ var accessTokenCache = {
446
+ loadCachedToken: function loadCachedToken() {
447
+ return _async_to_generator$2(function() {
448
+ return _ts_generator$2(this, function(_state) {
449
+ if (logAccessToConsole) {
450
+ console.log('retrieving access token from memory: ', {
451
+ token: token
452
+ });
453
+ }
454
+ return [
455
+ 2,
456
+ token
457
+ ];
458
+ });
459
+ })();
185
460
  },
186
- updateCachedToken: async function (accessToken) {
187
- token = accessToken;
188
- if (logAccessToConsole) {
189
- console.log('updating access token in memory: ', { accessToken });
190
- }
461
+ updateCachedToken: function updateCachedToken(accessToken) {
462
+ return _async_to_generator$2(function() {
463
+ return _ts_generator$2(this, function(_state) {
464
+ token = accessToken;
465
+ if (logAccessToConsole) {
466
+ console.log('updating access token in memory: ', {
467
+ accessToken: accessToken
468
+ });
469
+ }
470
+ return [
471
+ 2
472
+ ];
473
+ });
474
+ })();
191
475
  }
192
476
  };
193
477
  return accessTokenCache;
194
478
  }
195
479
  return {
196
- loadZoomAccessTokenCache,
197
- cacheForRefreshToken: () => loadZoomAccessTokenCache()
480
+ loadZoomAccessTokenCache: loadZoomAccessTokenCache,
481
+ cacheForRefreshToken: function cacheForRefreshToken() {
482
+ return loadZoomAccessTokenCache();
483
+ }
198
484
  };
199
485
  }
200
486
  // MARK: File System Access Token Cache
201
- const DEFAULT_FILE_ZOOM_ACCOUNTS_ACCESS_TOKEN_CACHE_SERVICE_PATH = '.tmp/zoom-access-tokens.json';
487
+ var DEFAULT_FILE_ZOOM_ACCOUNTS_ACCESS_TOKEN_CACHE_SERVICE_PATH = '.tmp/zoom-access-tokens.json';
202
488
  /**
203
489
  * Creates a ZoomOAuthAccessTokenCacheService that reads and writes the access token to the file system.
204
490
  *
205
491
  * Useful for testing.
206
492
  *
207
493
  * @returns
208
- */
209
- function fileZoomOAuthAccessTokenCacheService(filename = DEFAULT_FILE_ZOOM_ACCOUNTS_ACCESS_TOKEN_CACHE_SERVICE_PATH, useMemoryCache = true) {
210
- let loadedToken = null;
211
- async function loadTokenFile() {
212
- let token = undefined;
213
- if (!loadedToken) {
214
- token = (await readTokenFile()) ?? {};
215
- }
216
- else {
217
- token = loadedToken;
218
- }
219
- return token;
494
+ */ function fileZoomOAuthAccessTokenCacheService() {
495
+ var filename = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : DEFAULT_FILE_ZOOM_ACCOUNTS_ACCESS_TOKEN_CACHE_SERVICE_PATH, useMemoryCache = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : true;
496
+ var loadedToken = null;
497
+ function loadTokenFile() {
498
+ return _async_to_generator$2(function() {
499
+ var token, _ref;
500
+ return _ts_generator$2(this, function(_state) {
501
+ switch(_state.label){
502
+ case 0:
503
+ token = undefined;
504
+ if (!!loadedToken) return [
505
+ 3,
506
+ 2
507
+ ];
508
+ return [
509
+ 4,
510
+ readTokenFile()
511
+ ];
512
+ case 1:
513
+ token = (_ref = _state.sent()) !== null && _ref !== void 0 ? _ref : {};
514
+ return [
515
+ 3,
516
+ 3
517
+ ];
518
+ case 2:
519
+ token = loadedToken;
520
+ _state.label = 3;
521
+ case 3:
522
+ return [
523
+ 2,
524
+ token
525
+ ];
526
+ }
527
+ });
528
+ })();
220
529
  }
221
530
  function readTokenFile() {
222
- return new Promise((resolve) => {
223
- fs.mkdirSync(path.dirname(filename), { recursive: true }); // make the directory first
224
- fs.readFile(filename, {}, (x, data) => {
225
- let result = undefined;
531
+ return new Promise(function(resolve) {
532
+ fs.mkdirSync(path.dirname(filename), {
533
+ recursive: true
534
+ }); // make the directory first
535
+ fs.readFile(filename, {}, function(x, data) {
536
+ var result = undefined;
226
537
  if (!x) {
227
538
  try {
228
539
  result = JSON.parse(data.toString());
229
- if (result?.token) {
540
+ if (result === null || result === void 0 ? void 0 : result.token) {
230
541
  result.token.expiresAt = new Date(result.token.expiresAt);
231
542
  }
232
- }
233
- catch (e) {
543
+ } catch (e) {
234
544
  console.error('Failed reading token file: ', e);
235
545
  }
236
546
  }
237
547
  resolve(result);
238
548
  });
239
- }).then((x) => {
549
+ }).then(function(x) {
240
550
  // update loaded tokens
241
551
  if (useMemoryCache) {
242
- loadedToken = {
243
- ...loadedToken,
244
- ...x
245
- };
552
+ loadedToken = _object_spread$3({}, loadedToken, x);
246
553
  }
247
554
  return x;
248
555
  });
249
556
  }
250
- async function writeTokenFile(tokens) {
251
- return new Promise((resolve, reject) => {
252
- fs.writeFile(filename, JSON.stringify(tokens), {}, (x) => {
253
- if (!x) {
254
- resolve();
255
- }
256
- else {
257
- reject(x);
258
- }
557
+ function writeTokenFile(tokens) {
558
+ return _async_to_generator$2(function() {
559
+ return _ts_generator$2(this, function(_state) {
560
+ return [
561
+ 2,
562
+ new Promise(function(resolve, reject) {
563
+ fs.writeFile(filename, JSON.stringify(tokens), {}, function(x) {
564
+ if (!x) {
565
+ resolve();
566
+ } else {
567
+ reject(x);
568
+ }
569
+ });
570
+ })
571
+ ];
259
572
  });
260
- });
573
+ })();
261
574
  }
262
- async function deleteTokenFile() {
263
- return new Promise((resolve, reject) => {
264
- fs.rm(filename, (x) => {
265
- if (!x) {
266
- resolve();
267
- }
268
- else {
269
- reject(x);
270
- }
575
+ function deleteTokenFile() {
576
+ return _async_to_generator$2(function() {
577
+ return _ts_generator$2(this, function(_state) {
578
+ return [
579
+ 2,
580
+ new Promise(function(resolve, reject) {
581
+ fs.rm(filename, function(x) {
582
+ if (!x) {
583
+ resolve();
584
+ } else {
585
+ reject(x);
586
+ }
587
+ });
588
+ })
589
+ ];
271
590
  });
272
- });
591
+ })();
273
592
  }
274
593
  function loadZoomAccessTokenCache() {
275
- const accessTokenCache = {
276
- loadCachedToken: async function () {
277
- const tokens = await loadTokenFile();
278
- const token = tokens.token;
279
- // console.log('retrieving access token from file: ', { token });
280
- return token;
594
+ var accessTokenCache = {
595
+ loadCachedToken: function loadCachedToken() {
596
+ return _async_to_generator$2(function() {
597
+ var tokens, token;
598
+ return _ts_generator$2(this, function(_state) {
599
+ switch(_state.label){
600
+ case 0:
601
+ return [
602
+ 4,
603
+ loadTokenFile()
604
+ ];
605
+ case 1:
606
+ tokens = _state.sent();
607
+ token = tokens.token;
608
+ // console.log('retrieving access token from file: ', { token });
609
+ return [
610
+ 2,
611
+ token
612
+ ];
613
+ }
614
+ });
615
+ })();
281
616
  },
282
- updateCachedToken: async function (accessToken) {
283
- const tokenFile = await loadTokenFile();
284
- if (tokenFile) {
285
- tokenFile.token = accessToken;
286
- }
287
- // console.log('updating access token in file: ', { accessToken });
288
- try {
289
- await writeTokenFile(tokenFile);
290
- }
291
- catch (e) {
292
- console.error('Failed updating access token in file: ', e);
293
- }
617
+ updateCachedToken: function updateCachedToken(accessToken) {
618
+ return _async_to_generator$2(function() {
619
+ var tokenFile, e;
620
+ return _ts_generator$2(this, function(_state) {
621
+ switch(_state.label){
622
+ case 0:
623
+ return [
624
+ 4,
625
+ loadTokenFile()
626
+ ];
627
+ case 1:
628
+ tokenFile = _state.sent();
629
+ if (tokenFile) {
630
+ tokenFile.token = accessToken;
631
+ }
632
+ _state.label = 2;
633
+ case 2:
634
+ _state.trys.push([
635
+ 2,
636
+ 4,
637
+ ,
638
+ 5
639
+ ]);
640
+ return [
641
+ 4,
642
+ writeTokenFile(tokenFile)
643
+ ];
644
+ case 3:
645
+ _state.sent();
646
+ return [
647
+ 3,
648
+ 5
649
+ ];
650
+ case 4:
651
+ e = _state.sent();
652
+ console.error('Failed updating access token in file: ', e);
653
+ return [
654
+ 3,
655
+ 5
656
+ ];
657
+ case 5:
658
+ return [
659
+ 2
660
+ ];
661
+ }
662
+ });
663
+ })();
294
664
  }
295
665
  };
296
666
  return accessTokenCache;
297
667
  }
298
668
  return {
299
- loadZoomAccessTokenCache,
300
- readTokenFile,
301
- writeTokenFile,
302
- deleteTokenFile
669
+ loadZoomAccessTokenCache: loadZoomAccessTokenCache,
670
+ readTokenFile: readTokenFile,
671
+ writeTokenFile: writeTokenFile,
672
+ deleteTokenFile: deleteTokenFile
303
673
  };
304
674
  }
305
675
 
306
- exports.ZoomOAuthApi = class ZoomOAuthApi {
307
- config;
308
- cacheService;
309
- zoomOAuth;
310
- get oauthContext() {
311
- return this.zoomOAuth.oauthContext;
312
- }
313
- constructor(config, cacheService) {
314
- this.config = config;
315
- this.cacheService = cacheService;
316
- const accessTokenCache = config.zoomOAuth.accessTokenCache ? config.zoomOAuth.accessTokenCache : cacheService.loadZoomAccessTokenCache();
317
- this.zoomOAuth = zoom.zoomOAuthFactory(config.factoryConfig ?? {})({
318
- accessTokenCache,
319
- ...config.zoomOAuth
676
+ function _class_call_check$6(instance, Constructor) {
677
+ if (!(instance instanceof Constructor)) {
678
+ throw new TypeError("Cannot call a class as a function");
679
+ }
680
+ }
681
+ function _defineProperties$5(target, props) {
682
+ for(var i = 0; i < props.length; i++){
683
+ var descriptor = props[i];
684
+ descriptor.enumerable = descriptor.enumerable || false;
685
+ descriptor.configurable = true;
686
+ if ("value" in descriptor) descriptor.writable = true;
687
+ Object.defineProperty(target, descriptor.key, descriptor);
688
+ }
689
+ }
690
+ function _create_class$5(Constructor, protoProps, staticProps) {
691
+ if (protoProps) _defineProperties$5(Constructor.prototype, protoProps);
692
+ return Constructor;
693
+ }
694
+ function _define_property$6(obj, key, value) {
695
+ if (key in obj) {
696
+ Object.defineProperty(obj, key, {
697
+ value: value,
698
+ enumerable: true,
699
+ configurable: true,
700
+ writable: true
320
701
  });
702
+ } else {
703
+ obj[key] = value;
321
704
  }
322
- // MARK: Accessors
323
- get serverAccessToken() {
324
- return zoom.serverAccessToken(this.oauthContext);
705
+ return obj;
706
+ }
707
+ function _object_spread$2(target) {
708
+ for(var i = 1; i < arguments.length; i++){
709
+ var source = arguments[i] != null ? arguments[i] : {};
710
+ var ownKeys = Object.keys(source);
711
+ if (typeof Object.getOwnPropertySymbols === "function") {
712
+ ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
713
+ return Object.getOwnPropertyDescriptor(source, sym).enumerable;
714
+ }));
715
+ }
716
+ ownKeys.forEach(function(key) {
717
+ _define_property$6(target, key, source[key]);
718
+ });
325
719
  }
326
- get userAccessToken() {
327
- return zoom.userAccessToken(this.oauthContext);
720
+ return target;
721
+ }
722
+ exports.ZoomOAuthApi = /*#__PURE__*/ function() {
723
+ function ZoomOAuthApi(config, cacheService) {
724
+ _class_call_check$6(this, ZoomOAuthApi);
725
+ var _config_factoryConfig;
726
+ _define_property$6(this, "config", void 0);
727
+ _define_property$6(this, "cacheService", void 0);
728
+ _define_property$6(this, "zoomOAuth", void 0);
729
+ this.config = config;
730
+ this.cacheService = cacheService;
731
+ var accessTokenCache = config.zoomOAuth.accessTokenCache ? config.zoomOAuth.accessTokenCache : cacheService.loadZoomAccessTokenCache();
732
+ this.zoomOAuth = zoom.zoomOAuthFactory((_config_factoryConfig = config.factoryConfig) !== null && _config_factoryConfig !== void 0 ? _config_factoryConfig : {})(_object_spread$2({
733
+ accessTokenCache: accessTokenCache
734
+ }, config.zoomOAuth));
328
735
  }
329
- };
736
+ _create_class$5(ZoomOAuthApi, [
737
+ {
738
+ key: "oauthContext",
739
+ get: function get() {
740
+ return this.zoomOAuth.oauthContext;
741
+ }
742
+ },
743
+ {
744
+ key: "serverAccessToken",
745
+ get: // MARK: Accessors
746
+ function get() {
747
+ return zoom.serverAccessToken(this.oauthContext);
748
+ }
749
+ },
750
+ {
751
+ key: "userAccessToken",
752
+ get: function get() {
753
+ return zoom.userAccessToken(this.oauthContext);
754
+ }
755
+ }
756
+ ]);
757
+ return ZoomOAuthApi;
758
+ }();
330
759
  exports.ZoomOAuthApi = __decorate([
331
760
  common.Injectable(),
332
761
  __param(0, common.Inject(ZoomOAuthServiceConfig)),
333
762
  __param(1, common.Inject(exports.ZoomOAuthAccessTokenCacheService))
334
763
  ], exports.ZoomOAuthApi);
335
764
 
765
+ function _array_like_to_array$1(arr, len) {
766
+ if (len == null || len > arr.length) len = arr.length;
767
+ for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
768
+ return arr2;
769
+ }
770
+ function _array_without_holes$1(arr) {
771
+ if (Array.isArray(arr)) return _array_like_to_array$1(arr);
772
+ }
773
+ function _iterable_to_array$1(iter) {
774
+ if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
775
+ }
776
+ function _non_iterable_spread$1() {
777
+ throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
778
+ }
779
+ function _to_consumable_array$1(arr) {
780
+ return _array_without_holes$1(arr) || _iterable_to_array$1(arr) || _unsupported_iterable_to_array$1(arr) || _non_iterable_spread$1();
781
+ }
782
+ function _unsupported_iterable_to_array$1(o, minLen) {
783
+ if (!o) return;
784
+ if (typeof o === "string") return _array_like_to_array$1(o, minLen);
785
+ var n = Object.prototype.toString.call(o).slice(8, -1);
786
+ if (n === "Object" && o.constructor) n = o.constructor.name;
787
+ if (n === "Map" || n === "Set") return Array.from(n);
788
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array$1(o, minLen);
789
+ }
336
790
  function zoomOAuthServiceConfigFactory(configService) {
337
- const config = readZoomOAuthServiceConfigFromConfigService(configService);
791
+ var config = readZoomOAuthServiceConfigFromConfigService(configService);
338
792
  return config;
339
793
  }
340
794
  /**
@@ -343,73 +797,167 @@ function zoomOAuthServiceConfigFactory(configService) {
343
797
  * @param provide
344
798
  * @param useFactory
345
799
  * @returns
346
- */
347
- function appZoomOAuthModuleMetadata(config$1) {
348
- const { dependencyModule, imports, exports: exports$1, providers } = config$1;
349
- const dependencyModuleImport = dependencyModule ? [dependencyModule] : [];
800
+ */ function appZoomOAuthModuleMetadata(config$1) {
801
+ var _config_zoomOAuthServiceConfigFactory;
802
+ var dependencyModule = config$1.dependencyModule, imports = config$1.imports, exports$1 = config$1.exports, providers = config$1.providers;
803
+ var dependencyModuleImport = dependencyModule ? [
804
+ dependencyModule
805
+ ] : [];
350
806
  return {
351
- imports: [config.ConfigModule, ...dependencyModuleImport, ...(imports ?? [])],
352
- exports: [exports.ZoomOAuthApi, ...(exports$1 ?? [])],
807
+ imports: [
808
+ config.ConfigModule
809
+ ].concat(_to_consumable_array$1(dependencyModuleImport), _to_consumable_array$1(imports !== null && imports !== void 0 ? imports : [])),
810
+ exports: [
811
+ exports.ZoomOAuthApi
812
+ ].concat(_to_consumable_array$1(exports$1 !== null && exports$1 !== void 0 ? exports$1 : [])),
353
813
  providers: [
354
814
  {
355
815
  provide: ZoomOAuthServiceConfig,
356
- inject: [config.ConfigService],
357
- useFactory: config$1.zoomOAuthServiceConfigFactory ?? zoomOAuthServiceConfigFactory
816
+ inject: [
817
+ config.ConfigService
818
+ ],
819
+ useFactory: (_config_zoomOAuthServiceConfigFactory = config$1.zoomOAuthServiceConfigFactory) !== null && _config_zoomOAuthServiceConfigFactory !== void 0 ? _config_zoomOAuthServiceConfigFactory : zoomOAuthServiceConfigFactory
358
820
  },
359
- exports.ZoomOAuthApi,
360
- ...(providers ?? [])
361
- ]
821
+ exports.ZoomOAuthApi
822
+ ].concat(_to_consumable_array$1(providers !== null && providers !== void 0 ? providers : []))
362
823
  };
363
824
  }
364
825
 
365
- const ZOOM_SECRET_TOKEN_ENV_VAR = 'ZOOM_SECRET_TOKEN';
826
+ function _class_call_check$5(instance, Constructor) {
827
+ if (!(instance instanceof Constructor)) {
828
+ throw new TypeError("Cannot call a class as a function");
829
+ }
830
+ }
831
+ function _defineProperties$4(target, props) {
832
+ for(var i = 0; i < props.length; i++){
833
+ var descriptor = props[i];
834
+ descriptor.enumerable = descriptor.enumerable || false;
835
+ descriptor.configurable = true;
836
+ if ("value" in descriptor) descriptor.writable = true;
837
+ Object.defineProperty(target, descriptor.key, descriptor);
838
+ }
839
+ }
840
+ function _create_class$4(Constructor, protoProps, staticProps) {
841
+ if (staticProps) _defineProperties$4(Constructor, staticProps);
842
+ return Constructor;
843
+ }
844
+ function _define_property$5(obj, key, value) {
845
+ if (key in obj) {
846
+ Object.defineProperty(obj, key, {
847
+ value: value,
848
+ enumerable: true,
849
+ configurable: true,
850
+ writable: true
851
+ });
852
+ } else {
853
+ obj[key] = value;
854
+ }
855
+ return obj;
856
+ }
857
+ var ZOOM_SECRET_TOKEN_ENV_VAR = 'ZOOM_SECRET_TOKEN';
366
858
  /**
367
859
  * Configuration for ZoomService
368
- */
369
- class ZoomWebhookServiceConfig {
370
- webhookConfig;
371
- static assertValidConfig(config) {
372
- if (!config.webhookConfig.zoomSecretToken) {
373
- throw new Error('No zoom secret token specified.');
374
- }
860
+ */ var ZoomWebhookServiceConfig = /*#__PURE__*/ function() {
861
+ function ZoomWebhookServiceConfig() {
862
+ _class_call_check$5(this, ZoomWebhookServiceConfig);
863
+ _define_property$5(this, "webhookConfig", void 0);
375
864
  }
376
- }
865
+ _create_class$4(ZoomWebhookServiceConfig, null, [
866
+ {
867
+ key: "assertValidConfig",
868
+ value: function assertValidConfig(config) {
869
+ if (!config.webhookConfig.zoomSecretToken) {
870
+ throw new Error('No zoom secret token specified.');
871
+ }
872
+ }
873
+ }
874
+ ]);
875
+ return ZoomWebhookServiceConfig;
876
+ }
877
+ ();
377
878
 
378
879
  // MARK: Meeting Alert
379
- const ZOOM_WEBHOOK_MEETING_ALERT_EVENT_TYPE = 'meeting.alert';
880
+ var ZOOM_WEBHOOK_MEETING_ALERT_EVENT_TYPE = 'meeting.alert';
380
881
  // MARK: Meeting Created
381
- const ZOOM_WEBHOOK_MEETING_CREATED_EVENT_TYPE = 'meeting.created';
882
+ var ZOOM_WEBHOOK_MEETING_CREATED_EVENT_TYPE = 'meeting.created';
382
883
  // MARK: Meeting Updated
383
- const ZOOM_WEBHOOK_MEETING_UPDATED_EVENT_TYPE = 'meeting.updated';
884
+ var ZOOM_WEBHOOK_MEETING_UPDATED_EVENT_TYPE = 'meeting.updated';
384
885
  // MARK: Meeting Deleted
385
- const ZOOM_WEBHOOK_MEETING_DELETED_EVENT_TYPE = 'meeting.deleted';
886
+ var ZOOM_WEBHOOK_MEETING_DELETED_EVENT_TYPE = 'meeting.deleted';
386
887
  // MARK: Meeting Started
387
- const ZOOM_WEBHOOK_MEETING_STARTED_EVENT_TYPE = 'meeting.started';
888
+ var ZOOM_WEBHOOK_MEETING_STARTED_EVENT_TYPE = 'meeting.started';
388
889
  // MARK: Meeting Ended
389
- const ZOOM_WEBHOOK_MEETING_ENDED_EVENT_TYPE = 'meeting.ended';
890
+ var ZOOM_WEBHOOK_MEETING_ENDED_EVENT_TYPE = 'meeting.ended';
390
891
  // MARK: Meeting Permanently Deleted
391
- const ZOOM_WEBHOOK_MEETING_PERMANENTLY_DELETED_EVENT_TYPE = 'meeting.permanently_deleted';
892
+ var ZOOM_WEBHOOK_MEETING_PERMANENTLY_DELETED_EVENT_TYPE = 'meeting.permanently_deleted';
392
893
 
894
+ function _define_property$4(obj, key, value) {
895
+ if (key in obj) {
896
+ Object.defineProperty(obj, key, {
897
+ value: value,
898
+ enumerable: true,
899
+ configurable: true,
900
+ writable: true
901
+ });
902
+ } else {
903
+ obj[key] = value;
904
+ }
905
+ return obj;
906
+ }
907
+ function _object_spread$1(target) {
908
+ for(var i = 1; i < arguments.length; i++){
909
+ var source = arguments[i] != null ? arguments[i] : {};
910
+ var ownKeys = Object.keys(source);
911
+ if (typeof Object.getOwnPropertySymbols === "function") {
912
+ ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
913
+ return Object.getOwnPropertyDescriptor(source, sym).enumerable;
914
+ }));
915
+ }
916
+ ownKeys.forEach(function(key) {
917
+ _define_property$4(target, key, source[key]);
918
+ });
919
+ }
920
+ return target;
921
+ }
922
+ function ownKeys$1(object, enumerableOnly) {
923
+ var keys = Object.keys(object);
924
+ if (Object.getOwnPropertySymbols) {
925
+ var symbols = Object.getOwnPropertySymbols(object);
926
+ keys.push.apply(keys, symbols);
927
+ }
928
+ return keys;
929
+ }
930
+ function _object_spread_props$1(target, source) {
931
+ source = source != null ? source : {};
932
+ if (Object.getOwnPropertyDescriptors) {
933
+ Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
934
+ } else {
935
+ ownKeys$1(Object(source)).forEach(function(key) {
936
+ Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
937
+ });
938
+ }
939
+ return target;
940
+ }
393
941
  /**
394
942
  * Creates a ZoomWebhookEvent and treats the data as the input type.
395
943
  *
396
944
  * @param event
397
945
  * @returns
398
- */
399
- function zoomWebhookEvent(event) {
946
+ */ function zoomWebhookEvent(event) {
400
947
  return {
401
948
  event: event.event,
402
949
  event_ts: event.event_ts,
403
950
  payload: event.payload
404
951
  };
405
952
  }
406
- const zoomEventHandlerFactory = util.handlerFactory((x) => x.event);
407
- const zoomEventHandlerConfigurerFactory = util.handlerConfigurerFactory({
408
- configurerForAccessor: (accessor) => {
953
+ var zoomEventHandlerFactory = util.handlerFactory(function(x) {
954
+ return x.event;
955
+ });
956
+ var zoomEventHandlerConfigurerFactory = util.handlerConfigurerFactory({
957
+ configurerForAccessor: function configurerForAccessor(accessor) {
409
958
  // eslint-disable-next-line
410
- const fnWithKey = util.handlerMappedSetFunctionFactory(accessor, zoomWebhookEvent);
411
- const configurer = {
412
- ...accessor,
959
+ var fnWithKey = util.handlerMappedSetFunctionFactory(accessor, zoomWebhookEvent);
960
+ var configurer = _object_spread_props$1(_object_spread$1({}, accessor), {
413
961
  // Meetings
414
962
  handleMeetingCreated: fnWithKey(ZOOM_WEBHOOK_MEETING_CREATED_EVENT_TYPE),
415
963
  handleMeetingUpdated: fnWithKey(ZOOM_WEBHOOK_MEETING_UPDATED_EVENT_TYPE),
@@ -417,7 +965,7 @@ const zoomEventHandlerConfigurerFactory = util.handlerConfigurerFactory({
417
965
  handleMeetingStarted: fnWithKey(ZOOM_WEBHOOK_MEETING_STARTED_EVENT_TYPE),
418
966
  handleMeetingEnded: fnWithKey(ZOOM_WEBHOOK_MEETING_ENDED_EVENT_TYPE),
419
967
  handleMeetingPermanentlyDeleted: fnWithKey(ZOOM_WEBHOOK_MEETING_PERMANENTLY_DELETED_EVENT_TYPE)
420
- };
968
+ });
421
969
  return configurer;
422
970
  }
423
971
  });
@@ -429,109 +977,501 @@ const zoomEventHandlerConfigurerFactory = util.handlerConfigurerFactory({
429
977
  *
430
978
  * @param zoomSecretToken The Zoom secret token.
431
979
  * @returns A function that verifies a Zoom webhook event.
432
- */
433
- function zoomWebhookEventVerifier(zoomSecretToken) {
434
- return (request, rawBody) => {
435
- const requestBodyString = String(request.body);
436
- const message = `v0:${request.headers['x-zm-request-timestamp']}:${requestBodyString}`;
437
- const hashForVerify = crypto.createHmac('sha256', zoomSecretToken).update(message).digest('hex');
438
- const signature = `v0=${hashForVerify}`;
439
- const valid = request.headers['x-zm-signature'] === signature;
440
- const result = {
441
- valid,
980
+ */ function zoomWebhookEventVerifier(zoomSecretToken) {
981
+ return function(request, rawBody) {
982
+ var requestBodyString = String(request.body);
983
+ var message = "v0:".concat(request.headers['x-zm-request-timestamp'], ":").concat(requestBodyString);
984
+ var hashForVerify = crypto.createHmac('sha256', zoomSecretToken).update(message).digest('hex');
985
+ var signature = "v0=".concat(hashForVerify);
986
+ var valid = request.headers['x-zm-signature'] === signature;
987
+ var result = {
988
+ valid: valid,
442
989
  event: JSON.parse(requestBodyString)
443
990
  };
444
991
  return result;
445
992
  };
446
993
  }
447
994
 
448
- const ZOOM_WEBHOOK_URL_VALIDATION_EVENT_TYPE = 'endpoint.url_validation';
995
+ var ZOOM_WEBHOOK_URL_VALIDATION_EVENT_TYPE = 'endpoint.url_validation';
449
996
 
450
997
  /**
451
998
  * Creates a ZoomWebhookEventValidationFunction.
452
999
  *
453
1000
  * @param zoomSecretToken The secret token used to validate the event.
454
1001
  * @returns A ZoomWebhookEventValidationFunction.
455
- */
456
- function zoomWebhookEventValidationFunction(zoomSecretToken) {
457
- return (event) => {
458
- const { plainToken } = event.payload;
1002
+ */ function zoomWebhookEventValidationFunction(zoomSecretToken) {
1003
+ return function(event) {
1004
+ var plainToken = event.payload.plainToken;
459
1005
  if (!plainToken) {
460
- throw new Error(`The expected plaintoken value was not provided by the event's payload.`);
1006
+ throw new Error("The expected plaintoken value was not provided by the event's payload.");
461
1007
  }
462
- const encryptedToken = crypto.createHmac('sha256', zoomSecretToken).update(plainToken).digest('hex');
463
- const result = {
464
- plainToken,
465
- encryptedToken
1008
+ var encryptedToken = crypto.createHmac('sha256', zoomSecretToken).update(plainToken).digest('hex');
1009
+ var result = {
1010
+ plainToken: plainToken,
1011
+ encryptedToken: encryptedToken
466
1012
  };
467
1013
  return result;
468
1014
  };
469
1015
  }
470
1016
 
471
- /**
472
- * Service that makes system changes based on Zoom webhook events.
473
- */
474
- exports.ZoomWebhookService = class ZoomWebhookService {
475
- logger = new common.Logger('ZoomWebhookService');
476
- _verifier;
477
- _validator;
478
- handler = zoomEventHandlerFactory();
479
- configure = zoomEventHandlerConfigurerFactory(this.handler);
480
- constructor(config) {
481
- this._verifier = zoomWebhookEventVerifier(config.webhookConfig.zoomSecretToken);
482
- this._validator = zoomWebhookEventValidationFunction(config.webhookConfig.zoomSecretToken);
1017
+ function asyncGeneratorStep$1(gen, resolve, reject, _next, _throw, key, arg) {
1018
+ try {
1019
+ var info = gen[key](arg);
1020
+ var value = info.value;
1021
+ } catch (error) {
1022
+ reject(error);
1023
+ return;
483
1024
  }
484
- async updateForWebhook(req, rawBody) {
485
- const { valid, event } = this._verifier(req, rawBody);
486
- let handled = false;
487
- let validationEventResponse;
488
- if (!valid) {
489
- this.logger.warn('Received invalid zoom event: ', event);
490
- }
491
- else if (event.event === ZOOM_WEBHOOK_URL_VALIDATION_EVENT_TYPE) {
492
- validationEventResponse = this._validator(event);
493
- handled = true;
494
- }
495
- else {
496
- handled = await this.updateForZoomEvent(event);
1025
+ if (info.done) {
1026
+ resolve(value);
1027
+ } else {
1028
+ Promise.resolve(value).then(_next, _throw);
1029
+ }
1030
+ }
1031
+ function _async_to_generator$1(fn) {
1032
+ return function() {
1033
+ var self = this, args = arguments;
1034
+ return new Promise(function(resolve, reject) {
1035
+ var gen = fn.apply(self, args);
1036
+ function _next(value) {
1037
+ asyncGeneratorStep$1(gen, resolve, reject, _next, _throw, "next", value);
1038
+ }
1039
+ function _throw(err) {
1040
+ asyncGeneratorStep$1(gen, resolve, reject, _next, _throw, "throw", err);
1041
+ }
1042
+ _next(undefined);
1043
+ });
1044
+ };
1045
+ }
1046
+ function _class_call_check$4(instance, Constructor) {
1047
+ if (!(instance instanceof Constructor)) {
1048
+ throw new TypeError("Cannot call a class as a function");
1049
+ }
1050
+ }
1051
+ function _defineProperties$3(target, props) {
1052
+ for(var i = 0; i < props.length; i++){
1053
+ var descriptor = props[i];
1054
+ descriptor.enumerable = descriptor.enumerable || false;
1055
+ descriptor.configurable = true;
1056
+ if ("value" in descriptor) descriptor.writable = true;
1057
+ Object.defineProperty(target, descriptor.key, descriptor);
1058
+ }
1059
+ }
1060
+ function _create_class$3(Constructor, protoProps, staticProps) {
1061
+ if (protoProps) _defineProperties$3(Constructor.prototype, protoProps);
1062
+ return Constructor;
1063
+ }
1064
+ function _define_property$3(obj, key, value) {
1065
+ if (key in obj) {
1066
+ Object.defineProperty(obj, key, {
1067
+ value: value,
1068
+ enumerable: true,
1069
+ configurable: true,
1070
+ writable: true
1071
+ });
1072
+ } else {
1073
+ obj[key] = value;
1074
+ }
1075
+ return obj;
1076
+ }
1077
+ function _ts_generator$1(thisArg, body) {
1078
+ var f, y, t, _ = {
1079
+ label: 0,
1080
+ sent: function() {
1081
+ if (t[0] & 1) throw t[1];
1082
+ return t[1];
1083
+ },
1084
+ trys: [],
1085
+ ops: []
1086
+ }, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype), d = Object.defineProperty;
1087
+ return d(g, "next", {
1088
+ value: verb(0)
1089
+ }), d(g, "throw", {
1090
+ value: verb(1)
1091
+ }), d(g, "return", {
1092
+ value: verb(2)
1093
+ }), typeof Symbol === "function" && d(g, Symbol.iterator, {
1094
+ value: function() {
1095
+ return this;
497
1096
  }
498
- const result = {
499
- valid,
500
- handled,
501
- event,
502
- validationEventResponse
1097
+ }), g;
1098
+ function verb(n) {
1099
+ return function(v) {
1100
+ return step([
1101
+ n,
1102
+ v
1103
+ ]);
503
1104
  };
504
- return result;
505
1105
  }
506
- async updateForZoomEvent(event) {
507
- const handled = await this.handler(event);
508
- if (!handled) {
509
- this.logger.warn('Received unexpected/unhandled zoom event: ', event);
1106
+ function step(op) {
1107
+ if (f) throw new TypeError("Generator is already executing.");
1108
+ while(g && (g = 0, op[0] && (_ = 0)), _)try {
1109
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
1110
+ if (y = 0, t) op = [
1111
+ op[0] & 2,
1112
+ t.value
1113
+ ];
1114
+ switch(op[0]){
1115
+ case 0:
1116
+ case 1:
1117
+ t = op;
1118
+ break;
1119
+ case 4:
1120
+ _.label++;
1121
+ return {
1122
+ value: op[1],
1123
+ done: false
1124
+ };
1125
+ case 5:
1126
+ _.label++;
1127
+ y = op[1];
1128
+ op = [
1129
+ 0
1130
+ ];
1131
+ continue;
1132
+ case 7:
1133
+ op = _.ops.pop();
1134
+ _.trys.pop();
1135
+ continue;
1136
+ default:
1137
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
1138
+ _ = 0;
1139
+ continue;
1140
+ }
1141
+ if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
1142
+ _.label = op[1];
1143
+ break;
1144
+ }
1145
+ if (op[0] === 6 && _.label < t[1]) {
1146
+ _.label = t[1];
1147
+ t = op;
1148
+ break;
1149
+ }
1150
+ if (t && _.label < t[2]) {
1151
+ _.label = t[2];
1152
+ _.ops.push(op);
1153
+ break;
1154
+ }
1155
+ if (t[2]) _.ops.pop();
1156
+ _.trys.pop();
1157
+ continue;
1158
+ }
1159
+ op = body.call(thisArg, _);
1160
+ } catch (e) {
1161
+ op = [
1162
+ 6,
1163
+ e
1164
+ ];
1165
+ y = 0;
1166
+ } finally{
1167
+ f = t = 0;
510
1168
  }
511
- return handled;
1169
+ if (op[0] & 5) throw op[1];
1170
+ return {
1171
+ value: op[0] ? op[1] : void 0,
1172
+ done: true
1173
+ };
512
1174
  }
513
- };
1175
+ }
1176
+ /**
1177
+ * Service that makes system changes based on Zoom webhook events.
1178
+ */ exports.ZoomWebhookService = /*#__PURE__*/ function() {
1179
+ function ZoomWebhookService(config) {
1180
+ _class_call_check$4(this, ZoomWebhookService);
1181
+ _define_property$3(this, "logger", new common.Logger('ZoomWebhookService'));
1182
+ _define_property$3(this, "_verifier", void 0);
1183
+ _define_property$3(this, "_validator", void 0);
1184
+ _define_property$3(this, "handler", zoomEventHandlerFactory());
1185
+ _define_property$3(this, "configure", zoomEventHandlerConfigurerFactory(this.handler));
1186
+ this._verifier = zoomWebhookEventVerifier(config.webhookConfig.zoomSecretToken);
1187
+ this._validator = zoomWebhookEventValidationFunction(config.webhookConfig.zoomSecretToken);
1188
+ }
1189
+ _create_class$3(ZoomWebhookService, [
1190
+ {
1191
+ key: "updateForWebhook",
1192
+ value: function updateForWebhook(req, rawBody) {
1193
+ return _async_to_generator$1(function() {
1194
+ var _this__verifier, valid, event, handled, validationEventResponse, result;
1195
+ return _ts_generator$1(this, function(_state) {
1196
+ switch(_state.label){
1197
+ case 0:
1198
+ _this__verifier = this._verifier(req, rawBody), valid = _this__verifier.valid, event = _this__verifier.event;
1199
+ handled = false;
1200
+ if (!!valid) return [
1201
+ 3,
1202
+ 1
1203
+ ];
1204
+ this.logger.warn('Received invalid zoom event: ', event);
1205
+ return [
1206
+ 3,
1207
+ 4
1208
+ ];
1209
+ case 1:
1210
+ if (!(event.event === ZOOM_WEBHOOK_URL_VALIDATION_EVENT_TYPE)) return [
1211
+ 3,
1212
+ 2
1213
+ ];
1214
+ validationEventResponse = this._validator(event);
1215
+ handled = true;
1216
+ return [
1217
+ 3,
1218
+ 4
1219
+ ];
1220
+ case 2:
1221
+ return [
1222
+ 4,
1223
+ this.updateForZoomEvent(event)
1224
+ ];
1225
+ case 3:
1226
+ handled = _state.sent();
1227
+ _state.label = 4;
1228
+ case 4:
1229
+ result = {
1230
+ valid: valid,
1231
+ handled: handled,
1232
+ event: event,
1233
+ validationEventResponse: validationEventResponse
1234
+ };
1235
+ return [
1236
+ 2,
1237
+ result
1238
+ ];
1239
+ }
1240
+ });
1241
+ }).call(this);
1242
+ }
1243
+ },
1244
+ {
1245
+ key: "updateForZoomEvent",
1246
+ value: function updateForZoomEvent(event) {
1247
+ return _async_to_generator$1(function() {
1248
+ var handled;
1249
+ return _ts_generator$1(this, function(_state) {
1250
+ switch(_state.label){
1251
+ case 0:
1252
+ return [
1253
+ 4,
1254
+ this.handler(event)
1255
+ ];
1256
+ case 1:
1257
+ handled = _state.sent();
1258
+ if (!handled) {
1259
+ this.logger.warn('Received unexpected/unhandled zoom event: ', event);
1260
+ }
1261
+ return [
1262
+ 2,
1263
+ handled
1264
+ ];
1265
+ }
1266
+ });
1267
+ }).call(this);
1268
+ }
1269
+ }
1270
+ ]);
1271
+ return ZoomWebhookService;
1272
+ }();
514
1273
  exports.ZoomWebhookService = __decorate([
515
1274
  common.Injectable(),
516
1275
  __param(0, common.Inject(ZoomWebhookServiceConfig))
517
1276
  ], exports.ZoomWebhookService);
518
1277
 
519
- exports.ZoomWebhookController = class ZoomWebhookController {
520
- zoomWebhookService;
521
- constructor(zoomWebhookService) {
522
- this.zoomWebhookService = zoomWebhookService;
1278
+ function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
1279
+ try {
1280
+ var info = gen[key](arg);
1281
+ var value = info.value;
1282
+ } catch (error) {
1283
+ reject(error);
1284
+ return;
523
1285
  }
524
- async handleZoomWebhook(res, req, rawBody) {
525
- const { valid, validationEventResponse } = await this.zoomWebhookService.updateForWebhook(req, rawBody);
526
- const response = res.status(200); // always return a 200 status code
527
- if (valid && validationEventResponse) {
528
- response.json(validationEventResponse);
1286
+ if (info.done) {
1287
+ resolve(value);
1288
+ } else {
1289
+ Promise.resolve(value).then(_next, _throw);
1290
+ }
1291
+ }
1292
+ function _async_to_generator(fn) {
1293
+ return function() {
1294
+ var self = this, args = arguments;
1295
+ return new Promise(function(resolve, reject) {
1296
+ var gen = fn.apply(self, args);
1297
+ function _next(value) {
1298
+ asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
1299
+ }
1300
+ function _throw(err) {
1301
+ asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
1302
+ }
1303
+ _next(undefined);
1304
+ });
1305
+ };
1306
+ }
1307
+ function _class_call_check$3(instance, Constructor) {
1308
+ if (!(instance instanceof Constructor)) {
1309
+ throw new TypeError("Cannot call a class as a function");
1310
+ }
1311
+ }
1312
+ function _defineProperties$2(target, props) {
1313
+ for(var i = 0; i < props.length; i++){
1314
+ var descriptor = props[i];
1315
+ descriptor.enumerable = descriptor.enumerable || false;
1316
+ descriptor.configurable = true;
1317
+ if ("value" in descriptor) descriptor.writable = true;
1318
+ Object.defineProperty(target, descriptor.key, descriptor);
1319
+ }
1320
+ }
1321
+ function _create_class$2(Constructor, protoProps, staticProps) {
1322
+ if (protoProps) _defineProperties$2(Constructor.prototype, protoProps);
1323
+ return Constructor;
1324
+ }
1325
+ function _define_property$2(obj, key, value) {
1326
+ if (key in obj) {
1327
+ Object.defineProperty(obj, key, {
1328
+ value: value,
1329
+ enumerable: true,
1330
+ configurable: true,
1331
+ writable: true
1332
+ });
1333
+ } else {
1334
+ obj[key] = value;
1335
+ }
1336
+ return obj;
1337
+ }
1338
+ function _ts_generator(thisArg, body) {
1339
+ var f, y, t, _ = {
1340
+ label: 0,
1341
+ sent: function() {
1342
+ if (t[0] & 1) throw t[1];
1343
+ return t[1];
1344
+ },
1345
+ trys: [],
1346
+ ops: []
1347
+ }, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype), d = Object.defineProperty;
1348
+ return d(g, "next", {
1349
+ value: verb(0)
1350
+ }), d(g, "throw", {
1351
+ value: verb(1)
1352
+ }), d(g, "return", {
1353
+ value: verb(2)
1354
+ }), typeof Symbol === "function" && d(g, Symbol.iterator, {
1355
+ value: function() {
1356
+ return this;
529
1357
  }
530
- else {
531
- response.json({});
1358
+ }), g;
1359
+ function verb(n) {
1360
+ return function(v) {
1361
+ return step([
1362
+ n,
1363
+ v
1364
+ ]);
1365
+ };
1366
+ }
1367
+ function step(op) {
1368
+ if (f) throw new TypeError("Generator is already executing.");
1369
+ while(g && (g = 0, op[0] && (_ = 0)), _)try {
1370
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
1371
+ if (y = 0, t) op = [
1372
+ op[0] & 2,
1373
+ t.value
1374
+ ];
1375
+ switch(op[0]){
1376
+ case 0:
1377
+ case 1:
1378
+ t = op;
1379
+ break;
1380
+ case 4:
1381
+ _.label++;
1382
+ return {
1383
+ value: op[1],
1384
+ done: false
1385
+ };
1386
+ case 5:
1387
+ _.label++;
1388
+ y = op[1];
1389
+ op = [
1390
+ 0
1391
+ ];
1392
+ continue;
1393
+ case 7:
1394
+ op = _.ops.pop();
1395
+ _.trys.pop();
1396
+ continue;
1397
+ default:
1398
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
1399
+ _ = 0;
1400
+ continue;
1401
+ }
1402
+ if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
1403
+ _.label = op[1];
1404
+ break;
1405
+ }
1406
+ if (op[0] === 6 && _.label < t[1]) {
1407
+ _.label = t[1];
1408
+ t = op;
1409
+ break;
1410
+ }
1411
+ if (t && _.label < t[2]) {
1412
+ _.label = t[2];
1413
+ _.ops.push(op);
1414
+ break;
1415
+ }
1416
+ if (t[2]) _.ops.pop();
1417
+ _.trys.pop();
1418
+ continue;
1419
+ }
1420
+ op = body.call(thisArg, _);
1421
+ } catch (e) {
1422
+ op = [
1423
+ 6,
1424
+ e
1425
+ ];
1426
+ y = 0;
1427
+ } finally{
1428
+ f = t = 0;
532
1429
  }
1430
+ if (op[0] & 5) throw op[1];
1431
+ return {
1432
+ value: op[0] ? op[1] : void 0,
1433
+ done: true
1434
+ };
533
1435
  }
534
- };
1436
+ }
1437
+ exports.ZoomWebhookController = /*#__PURE__*/ function() {
1438
+ function ZoomWebhookController(zoomWebhookService) {
1439
+ _class_call_check$3(this, ZoomWebhookController);
1440
+ _define_property$2(this, "zoomWebhookService", void 0);
1441
+ this.zoomWebhookService = zoomWebhookService;
1442
+ }
1443
+ _create_class$2(ZoomWebhookController, [
1444
+ {
1445
+ key: "handleZoomWebhook",
1446
+ value: function handleZoomWebhook(res, req, rawBody) {
1447
+ return _async_to_generator(function() {
1448
+ var _ref, valid, validationEventResponse, response;
1449
+ return _ts_generator(this, function(_state) {
1450
+ switch(_state.label){
1451
+ case 0:
1452
+ return [
1453
+ 4,
1454
+ this.zoomWebhookService.updateForWebhook(req, rawBody)
1455
+ ];
1456
+ case 1:
1457
+ _ref = _state.sent(), valid = _ref.valid, validationEventResponse = _ref.validationEventResponse;
1458
+ response = res.status(200); // always return a 200 status code
1459
+ if (valid && validationEventResponse) {
1460
+ response.json(validationEventResponse);
1461
+ } else {
1462
+ response.json({});
1463
+ }
1464
+ return [
1465
+ 2
1466
+ ];
1467
+ }
1468
+ });
1469
+ }).call(this);
1470
+ }
1471
+ }
1472
+ ]);
1473
+ return ZoomWebhookController;
1474
+ }();
535
1475
  __decorate([
536
1476
  common.Post(),
537
1477
  __param(0, common.Res()),
@@ -543,8 +1483,13 @@ exports.ZoomWebhookController = __decorate([
543
1483
  __param(0, common.Inject(exports.ZoomWebhookService))
544
1484
  ], exports.ZoomWebhookController);
545
1485
 
1486
+ function _class_call_check$2(instance, Constructor) {
1487
+ if (!(instance instanceof Constructor)) {
1488
+ throw new TypeError("Cannot call a class as a function");
1489
+ }
1490
+ }
546
1491
  function zoomWebhookServiceConfigFactory(configService) {
547
- const config = {
1492
+ var config = {
548
1493
  webhookConfig: {
549
1494
  zoomSecretToken: configService.get(ZOOM_SECRET_TOKEN_ENV_VAR)
550
1495
  }
@@ -554,18 +1499,26 @@ function zoomWebhookServiceConfigFactory(configService) {
554
1499
  }
555
1500
  /**
556
1501
  * Configures webhooks for the service.
557
- */
558
- exports.ZoomWebhookModule = class ZoomWebhookModule {
1502
+ */ exports.ZoomWebhookModule = function ZoomWebhookModule() {
1503
+ _class_call_check$2(this, ZoomWebhookModule);
559
1504
  };
560
1505
  exports.ZoomWebhookModule = __decorate([
561
1506
  common.Module({
562
- imports: [config.ConfigModule],
563
- controllers: [exports.ZoomWebhookController],
564
- exports: [exports.ZoomWebhookService],
1507
+ imports: [
1508
+ config.ConfigModule
1509
+ ],
1510
+ controllers: [
1511
+ exports.ZoomWebhookController
1512
+ ],
1513
+ exports: [
1514
+ exports.ZoomWebhookService
1515
+ ],
565
1516
  providers: [
566
1517
  {
567
1518
  provide: ZoomWebhookServiceConfig,
568
- inject: [config.ConfigService],
1519
+ inject: [
1520
+ config.ConfigService
1521
+ ],
569
1522
  useFactory: zoomWebhookServiceConfigFactory
570
1523
  },
571
1524
  exports.ZoomWebhookService
@@ -573,86 +1526,257 @@ exports.ZoomWebhookModule = __decorate([
573
1526
  })
574
1527
  ], exports.ZoomWebhookModule);
575
1528
 
576
- /**
577
- * Configuration for ZoomService
578
- */
579
- class ZoomServiceConfig {
580
- zoom;
581
- factoryConfig;
582
- static assertValidConfig(config) {
583
- // TODO?
1529
+ function _class_call_check$1(instance, Constructor) {
1530
+ if (!(instance instanceof Constructor)) {
1531
+ throw new TypeError("Cannot call a class as a function");
584
1532
  }
585
1533
  }
586
-
587
- exports.ZoomApi = class ZoomApi {
588
- config;
589
- zoomOAuthApi;
590
- zoom;
591
- get zoomContext() {
592
- return this.zoom.zoomServerContext;
593
- }
594
- get zoomRateLimiter() {
595
- return this.zoom.zoomServerContext.zoomRateLimiter;
1534
+ function _defineProperties$1(target, props) {
1535
+ for(var i = 0; i < props.length; i++){
1536
+ var descriptor = props[i];
1537
+ descriptor.enumerable = descriptor.enumerable || false;
1538
+ descriptor.configurable = true;
1539
+ if ("value" in descriptor) descriptor.writable = true;
1540
+ Object.defineProperty(target, descriptor.key, descriptor);
596
1541
  }
597
- constructor(config, zoomOAuthApi) {
598
- this.config = config;
599
- this.zoomOAuthApi = zoomOAuthApi;
600
- this.zoom = zoom.zoomFactory({
601
- ...config.factoryConfig,
602
- oauthContext: zoomOAuthApi.oauthContext
603
- })(config.zoom);
604
- }
605
- // MARK: Users
606
- get getUser() {
607
- return zoom.getUser(this.zoomContext);
608
- }
609
- get listUsers() {
610
- return zoom.listUsers(this.zoomContext);
611
- }
612
- get listUsersPageFactory() {
613
- return zoom.listUsersPageFactory(this.zoomContext);
1542
+ }
1543
+ function _create_class$1(Constructor, protoProps, staticProps) {
1544
+ if (staticProps) _defineProperties$1(Constructor, staticProps);
1545
+ return Constructor;
1546
+ }
1547
+ function _define_property$1(obj, key, value) {
1548
+ if (key in obj) {
1549
+ Object.defineProperty(obj, key, {
1550
+ value: value,
1551
+ enumerable: true,
1552
+ configurable: true,
1553
+ writable: true
1554
+ });
1555
+ } else {
1556
+ obj[key] = value;
614
1557
  }
615
- // MARK: Meetings
616
- get listMeetingsForUser() {
617
- return zoom.listMeetingsForUser(this.zoomContext);
1558
+ return obj;
1559
+ }
1560
+ /**
1561
+ * Configuration for ZoomService
1562
+ */ var ZoomServiceConfig = /*#__PURE__*/ function() {
1563
+ function ZoomServiceConfig() {
1564
+ _class_call_check$1(this, ZoomServiceConfig);
1565
+ _define_property$1(this, "zoom", void 0);
1566
+ _define_property$1(this, "factoryConfig", void 0);
618
1567
  }
619
- get listMeetingsForUserPageFactory() {
620
- return zoom.listMeetingsForUserPageFactory(this.zoomContext);
1568
+ _create_class$1(ZoomServiceConfig, null, [
1569
+ {
1570
+ key: "assertValidConfig",
1571
+ value: function assertValidConfig(config) {
1572
+ // TODO?
1573
+ }
1574
+ }
1575
+ ]);
1576
+ return ZoomServiceConfig;
1577
+ }
1578
+ ();
1579
+
1580
+ function _class_call_check(instance, Constructor) {
1581
+ if (!(instance instanceof Constructor)) {
1582
+ throw new TypeError("Cannot call a class as a function");
621
1583
  }
622
- get createMeetingForUser() {
623
- return zoom.createMeetingForUser(this.zoomContext);
1584
+ }
1585
+ function _defineProperties(target, props) {
1586
+ for(var i = 0; i < props.length; i++){
1587
+ var descriptor = props[i];
1588
+ descriptor.enumerable = descriptor.enumerable || false;
1589
+ descriptor.configurable = true;
1590
+ if ("value" in descriptor) descriptor.writable = true;
1591
+ Object.defineProperty(target, descriptor.key, descriptor);
624
1592
  }
625
- get getMeeting() {
626
- return zoom.getMeeting(this.zoomContext);
1593
+ }
1594
+ function _create_class(Constructor, protoProps, staticProps) {
1595
+ if (protoProps) _defineProperties(Constructor.prototype, protoProps);
1596
+ return Constructor;
1597
+ }
1598
+ function _define_property(obj, key, value) {
1599
+ if (key in obj) {
1600
+ Object.defineProperty(obj, key, {
1601
+ value: value,
1602
+ enumerable: true,
1603
+ configurable: true,
1604
+ writable: true
1605
+ });
1606
+ } else {
1607
+ obj[key] = value;
627
1608
  }
628
- get updateMeeting() {
629
- return zoom.updateMeeting(this.zoomContext);
1609
+ return obj;
1610
+ }
1611
+ function _object_spread(target) {
1612
+ for(var i = 1; i < arguments.length; i++){
1613
+ var source = arguments[i] != null ? arguments[i] : {};
1614
+ var ownKeys = Object.keys(source);
1615
+ if (typeof Object.getOwnPropertySymbols === "function") {
1616
+ ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
1617
+ return Object.getOwnPropertyDescriptor(source, sym).enumerable;
1618
+ }));
1619
+ }
1620
+ ownKeys.forEach(function(key) {
1621
+ _define_property(target, key, source[key]);
1622
+ });
630
1623
  }
631
- get deleteMeeting() {
632
- return zoom.deleteMeeting(this.zoomContext);
1624
+ return target;
1625
+ }
1626
+ function ownKeys(object, enumerableOnly) {
1627
+ var keys = Object.keys(object);
1628
+ if (Object.getOwnPropertySymbols) {
1629
+ var symbols = Object.getOwnPropertySymbols(object);
1630
+ keys.push.apply(keys, symbols);
633
1631
  }
634
- // MARK: Past Meetings
635
- get getPastMeeting() {
636
- return zoom.getPastMeeting(this.zoomContext);
1632
+ return keys;
1633
+ }
1634
+ function _object_spread_props(target, source) {
1635
+ source = source != null ? source : {};
1636
+ if (Object.getOwnPropertyDescriptors) {
1637
+ Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
1638
+ } else {
1639
+ ownKeys(Object(source)).forEach(function(key) {
1640
+ Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
1641
+ });
637
1642
  }
638
- get getPastMeetingParticipants() {
639
- return zoom.getPastMeetingParticipants(this.zoomContext);
1643
+ return target;
1644
+ }
1645
+ exports.ZoomApi = /*#__PURE__*/ function() {
1646
+ function ZoomApi(config, zoomOAuthApi) {
1647
+ _class_call_check(this, ZoomApi);
1648
+ _define_property(this, "config", void 0);
1649
+ _define_property(this, "zoomOAuthApi", void 0);
1650
+ _define_property(this, "zoom", void 0);
1651
+ this.config = config;
1652
+ this.zoomOAuthApi = zoomOAuthApi;
1653
+ this.zoom = zoom.zoomFactory(_object_spread_props(_object_spread({}, config.factoryConfig), {
1654
+ oauthContext: zoomOAuthApi.oauthContext
1655
+ }))(config.zoom);
640
1656
  }
641
- };
1657
+ _create_class(ZoomApi, [
1658
+ {
1659
+ key: "zoomContext",
1660
+ get: function get() {
1661
+ return this.zoom.zoomServerContext;
1662
+ }
1663
+ },
1664
+ {
1665
+ key: "zoomRateLimiter",
1666
+ get: function get() {
1667
+ return this.zoom.zoomServerContext.zoomRateLimiter;
1668
+ }
1669
+ },
1670
+ {
1671
+ key: "getUser",
1672
+ get: // MARK: Users
1673
+ function get() {
1674
+ return zoom.getUser(this.zoomContext);
1675
+ }
1676
+ },
1677
+ {
1678
+ key: "listUsers",
1679
+ get: function get() {
1680
+ return zoom.listUsers(this.zoomContext);
1681
+ }
1682
+ },
1683
+ {
1684
+ key: "listUsersPageFactory",
1685
+ get: function get() {
1686
+ return zoom.listUsersPageFactory(this.zoomContext);
1687
+ }
1688
+ },
1689
+ {
1690
+ key: "listMeetingsForUser",
1691
+ get: // MARK: Meetings
1692
+ function get() {
1693
+ return zoom.listMeetingsForUser(this.zoomContext);
1694
+ }
1695
+ },
1696
+ {
1697
+ key: "listMeetingsForUserPageFactory",
1698
+ get: function get() {
1699
+ return zoom.listMeetingsForUserPageFactory(this.zoomContext);
1700
+ }
1701
+ },
1702
+ {
1703
+ key: "createMeetingForUser",
1704
+ get: function get() {
1705
+ return zoom.createMeetingForUser(this.zoomContext);
1706
+ }
1707
+ },
1708
+ {
1709
+ key: "getMeeting",
1710
+ get: function get() {
1711
+ return zoom.getMeeting(this.zoomContext);
1712
+ }
1713
+ },
1714
+ {
1715
+ key: "updateMeeting",
1716
+ get: function get() {
1717
+ return zoom.updateMeeting(this.zoomContext);
1718
+ }
1719
+ },
1720
+ {
1721
+ key: "deleteMeeting",
1722
+ get: function get() {
1723
+ return zoom.deleteMeeting(this.zoomContext);
1724
+ }
1725
+ },
1726
+ {
1727
+ key: "getPastMeeting",
1728
+ get: // MARK: Past Meetings
1729
+ function get() {
1730
+ return zoom.getPastMeeting(this.zoomContext);
1731
+ }
1732
+ },
1733
+ {
1734
+ key: "getPastMeetingParticipants",
1735
+ get: function get() {
1736
+ return zoom.getPastMeetingParticipants(this.zoomContext);
1737
+ }
1738
+ }
1739
+ ]);
1740
+ return ZoomApi;
1741
+ }();
642
1742
  exports.ZoomApi = __decorate([
643
1743
  common.Injectable(),
644
1744
  __param(0, common.Inject(ZoomServiceConfig)),
645
1745
  __param(1, common.Inject(exports.ZoomOAuthApi))
646
1746
  ], exports.ZoomApi);
647
- class ZoomApiUserContext {
648
- constructor(refreshToken) {
649
- // TODO: ...
650
- }
651
- }
1747
+ var ZoomApiUserContext = function ZoomApiUserContext(refreshToken) {
1748
+ _class_call_check(this, ZoomApiUserContext);
1749
+ }
1750
+ ;
652
1751
 
1752
+ function _array_like_to_array(arr, len) {
1753
+ if (len == null || len > arr.length) len = arr.length;
1754
+ for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
1755
+ return arr2;
1756
+ }
1757
+ function _array_without_holes(arr) {
1758
+ if (Array.isArray(arr)) return _array_like_to_array(arr);
1759
+ }
1760
+ function _iterable_to_array(iter) {
1761
+ if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
1762
+ }
1763
+ function _non_iterable_spread() {
1764
+ throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
1765
+ }
1766
+ function _to_consumable_array(arr) {
1767
+ return _array_without_holes(arr) || _iterable_to_array(arr) || _unsupported_iterable_to_array(arr) || _non_iterable_spread();
1768
+ }
1769
+ function _unsupported_iterable_to_array(o, minLen) {
1770
+ if (!o) return;
1771
+ if (typeof o === "string") return _array_like_to_array(o, minLen);
1772
+ var n = Object.prototype.toString.call(o).slice(8, -1);
1773
+ if (n === "Object" && o.constructor) n = o.constructor.name;
1774
+ if (n === "Map" || n === "Set") return Array.from(n);
1775
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
1776
+ }
653
1777
  // MARK: Provider Factories
654
1778
  function zoomServiceConfigFactory(configService) {
655
- const config = {
1779
+ var config = {
656
1780
  zoom: {}
657
1781
  };
658
1782
  ZoomServiceConfig.assertValidConfig(config);
@@ -664,22 +1788,28 @@ function zoomServiceConfigFactory(configService) {
664
1788
  * @param provide
665
1789
  * @param useFactory
666
1790
  * @returns
667
- */
668
- function appZoomModuleMetadata(config$1) {
669
- const { dependencyModule, imports, exports: exports$1, providers } = config$1;
670
- const dependencyModuleImport = dependencyModule ? [dependencyModule] : [];
1791
+ */ function appZoomModuleMetadata(config$1) {
1792
+ var dependencyModule = config$1.dependencyModule, imports = config$1.imports, exports$1 = config$1.exports, providers = config$1.providers;
1793
+ var dependencyModuleImport = dependencyModule ? [
1794
+ dependencyModule
1795
+ ] : [];
671
1796
  return {
672
- imports: [config.ConfigModule, ...dependencyModuleImport, ...(imports ?? [])],
673
- exports: [exports.ZoomApi, ...(exports$1 ?? [])],
1797
+ imports: [
1798
+ config.ConfigModule
1799
+ ].concat(_to_consumable_array(dependencyModuleImport), _to_consumable_array(imports !== null && imports !== void 0 ? imports : [])),
1800
+ exports: [
1801
+ exports.ZoomApi
1802
+ ].concat(_to_consumable_array(exports$1 !== null && exports$1 !== void 0 ? exports$1 : [])),
674
1803
  providers: [
675
1804
  {
676
1805
  provide: ZoomServiceConfig,
677
- inject: [config.ConfigService],
1806
+ inject: [
1807
+ config.ConfigService
1808
+ ],
678
1809
  useFactory: zoomServiceConfigFactory
679
1810
  },
680
- exports.ZoomApi,
681
- ...(providers ?? [])
682
- ]
1811
+ exports.ZoomApi
1812
+ ].concat(_to_consumable_array(providers !== null && providers !== void 0 ? providers : []))
683
1813
  };
684
1814
  }
685
1815