zaccl 4.0.0 → 4.1.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.
@@ -127,14 +127,16 @@ var ECatCloudRecording = /** @class */ (function (_super) {
127
127
  * associated with the current access)
128
128
  * @param [opts.onNewPage] callback function that is called when a new page of results is received.
129
129
  * The function is passed the new page of results as an argument.
130
+ * @param [opts.minMsBetweenPageRequests] minimum time (in ms) to wait between paginated requests,
131
+ * for custom throttle control
130
132
  * @returns the list of recordings in the account
131
133
  */
132
134
  ECatCloudRecording.prototype.listAccountRecordings = function (opts) {
133
135
  var _a, _b;
134
136
  return __awaiter(this, void 0, void 0, function () {
135
- var fromYear, fromMonth, fromMonthPadded, fromDay, fromDayPadded, fromDateString, toYear, toMonth, toMonthPadded, toDay, toDayPadded, toDateString;
137
+ var fromYear, fromMonth, minMsBetweenPageRequests, fromMonthPadded, fromDay, fromDayPadded, fromDateString, toYear, toMonth, toMonthPadded, toDay, toDayPadded, toDateString;
136
138
  return __generator(this, function (_c) {
137
- fromYear = opts.fromYear, fromMonth = opts.fromMonth;
139
+ fromYear = opts.fromYear, fromMonth = opts.fromMonth, minMsBetweenPageRequests = opts.minMsBetweenPageRequests;
138
140
  fromMonthPadded = fromMonth < 10 ? "0".concat(fromMonth) : fromMonth;
139
141
  fromDay = (_a = opts.fromDay) !== null && _a !== void 0 ? _a : 1;
140
142
  fromDayPadded = fromDay < 10 ? "0".concat(fromDay) : fromDay;
@@ -159,6 +161,7 @@ var ECatCloudRecording = /** @class */ (function (_super) {
159
161
  to: toDateString,
160
162
  },
161
163
  onNewPage: opts.onNewPage,
164
+ minMsBetweenPageRequests: minMsBetweenPageRequests,
162
165
  itemKey: 'meetings',
163
166
  errorMap: {
164
167
  400: 'Bad request',
@@ -234,14 +237,15 @@ var ECatCloudRecording = /** @class */ (function (_super) {
234
237
  * Date needs to be within past 6 months. Time data (hours and seconds)
235
238
  * is discarded
236
239
  * @param [opts.onNewPage] callback function that is called when a new page of results is received.
237
-
240
+ * @param [opts.minMsBetweenPageRequests] minimum time (in ms) to wait between paginated requests,
241
+ * for custom throttle control
238
242
  * @returns List of Zoom Recordings {@link https://marketplace.zoom.us/docs/api-reference/zoom-api/cloud-recording/recordingslist#responses}
239
243
  */
240
244
  ECatCloudRecording.prototype.listUserRecordings = function (opts) {
241
245
  return __awaiter(this, void 0, void 0, function () {
242
- var userId, searchTrash, startDate, endDate, onNewPage, defaultDate, params;
246
+ var userId, searchTrash, startDate, endDate, onNewPage, minMsBetweenPageRequests, defaultDate, params;
243
247
  return __generator(this, function (_a) {
244
- userId = opts.userId, searchTrash = opts.searchTrash, startDate = opts.startDate, endDate = opts.endDate, onNewPage = opts.onNewPage;
248
+ userId = opts.userId, searchTrash = opts.searchTrash, startDate = opts.startDate, endDate = opts.endDate, onNewPage = opts.onNewPage, minMsBetweenPageRequests = opts.minMsBetweenPageRequests;
245
249
  defaultDate = new Date();
246
250
  defaultDate.setMonth(defaultDate.getMonth() - 1);
247
251
  params = {
@@ -261,6 +265,7 @@ var ECatCloudRecording = /** @class */ (function (_super) {
261
265
  method: 'GET',
262
266
  params: params,
263
267
  onNewPage: opts.onNewPage,
268
+ minMsBetweenPageRequests: minMsBetweenPageRequests,
264
269
  itemKey: 'meetings',
265
270
  errorMap: {
266
271
  404: {
@@ -115,6 +115,8 @@ var ECatGroup = /** @class */ (function (_super) {
115
115
  * @method listGroups
116
116
  * @param [opts] object containing all arguments
117
117
  * @param [opts.onNewPage] callback function that is called when a new page of results is received.
118
+ * @param [opts.minMsBetweenPageRequests] minimum time (in ms) to wait between paginated requests,
119
+ * for custom throttle control
118
120
  * @returns the list of groups in the account
119
121
  */
120
122
  ECatGroup.prototype.listGroups = function (opts) {
@@ -137,6 +139,7 @@ var ECatGroup = /** @class */ (function (_super) {
137
139
  },
138
140
  itemKey: 'groups',
139
141
  onNewPage: opts.onNewPage,
142
+ minMsBetweenPageRequests: opts.minMsBetweenPageRequests,
140
143
  })];
141
144
  });
142
145
  });
@@ -150,6 +153,8 @@ var ECatGroup = /** @class */ (function (_super) {
150
153
  * @param opts object containing all arguments
151
154
  * @params opts.groupId the group ID of the group of interest
152
155
  * @param [opts.onNewPage] callback function that is called when a new page of results is received.
156
+ * @param [opts.minMsBetweenPageRequests] minimum time (in ms) to wait between paginated requests,
157
+ * for custom throttle control
153
158
  * @returns the list of members in the group
154
159
  */
155
160
  ECatGroup.prototype.listGroupMembers = function (opts) {
@@ -170,6 +175,7 @@ var ECatGroup = /** @class */ (function (_super) {
170
175
  },
171
176
  },
172
177
  onNewPage: opts.onNewPage,
178
+ minMsBetweenPageRequests: opts.minMsBetweenPageRequests,
173
179
  })];
174
180
  });
175
181
  });
@@ -663,6 +663,8 @@ var ECatMeeting = /** @class */ (function (_super) {
663
663
  * @param opts object containing all arguments
664
664
  * @param opts.meetingId the Zoom UUID of the past meeting instance
665
665
  * @param [opts.onNewPage] callback function that is called when a new page of results is received.
666
+ * @param [opts.minMsBetweenPageRequests] minimum time (in ms) to wait between paginated requests,
667
+ * for custom throttle control
666
668
  * @returns list of past meeting participants
667
669
  */
668
670
  ECatMeeting.prototype.listPastMeetingParticipants = function (opts) {
@@ -677,6 +679,7 @@ var ECatMeeting = /** @class */ (function (_super) {
677
679
  },
678
680
  itemKey: 'participants',
679
681
  onNewPage: opts.onNewPage,
682
+ minMsBetweenPageRequests: opts.minMsBetweenPageRequests,
680
683
  errorMap: {
681
684
  400: {
682
685
  200: 'You need a paid account to access the participant list of a past meeting.',
@@ -408,6 +408,35 @@ The function is passed the new page of results as an argument.</td>
408
408
  </tr>
409
409
 
410
410
 
411
+
412
+ <tr>
413
+
414
+ <td class="name"><code>minMsBetweenPageRequests</code></td>
415
+
416
+
417
+ <td class="type">
418
+
419
+ </td>
420
+
421
+
422
+ <td class="attributes">
423
+
424
+ &lt;optional><br>
425
+
426
+
427
+
428
+
429
+
430
+ </td>
431
+
432
+
433
+
434
+
435
+ <td class="description last">minimum time (in ms) to wait between paginated requests,
436
+ for custom throttle control</td>
437
+ </tr>
438
+
439
+
411
440
  </tbody>
412
441
  </table>
413
442
 
@@ -463,7 +492,7 @@ The function is passed the new page of results as an argument.</td>
463
492
 
464
493
  <dt class="tag-source">Source:</dt>
465
494
  <dd class="tag-source"><ul class="dummy"><li>
466
- <a href="ECatCloudRecording.js.html">ECatCloudRecording.js</a>, <a href="ECatCloudRecording.js.html#line130">line 130</a>
495
+ <a href="ECatCloudRecording.js.html">ECatCloudRecording.js</a>, <a href="ECatCloudRecording.js.html#line133">line 133</a>
467
496
  </li></ul></dd>
468
497
 
469
498
 
@@ -674,7 +703,7 @@ The function is passed the new page of results as an argument.</td>
674
703
 
675
704
  <dt class="tag-source">Source:</dt>
676
705
  <dd class="tag-source"><ul class="dummy"><li>
677
- <a href="ECatCloudRecording.js.html">ECatCloudRecording.js</a>, <a href="ECatCloudRecording.js.html#line177">line 177</a>
706
+ <a href="ECatCloudRecording.js.html">ECatCloudRecording.js</a>, <a href="ECatCloudRecording.js.html#line180">line 180</a>
678
707
  </li></ul></dd>
679
708
 
680
709
 
@@ -965,6 +994,39 @@ The function is passed the new page of results as an argument.</td>
965
994
  </tr>
966
995
 
967
996
 
997
+
998
+ <tr>
999
+
1000
+ <td class="name"><code>minMsBetweenPageRequests</code></td>
1001
+
1002
+
1003
+ <td class="type">
1004
+
1005
+ </td>
1006
+
1007
+
1008
+ <td class="attributes">
1009
+
1010
+ &lt;optional><br>
1011
+
1012
+
1013
+
1014
+
1015
+
1016
+ </td>
1017
+
1018
+
1019
+
1020
+ <td class="default">
1021
+
1022
+ </td>
1023
+
1024
+
1025
+ <td class="description last">minimum time (in ms) to wait between paginated requests,
1026
+ for custom throttle control</td>
1027
+ </tr>
1028
+
1029
+
968
1030
  </tbody>
969
1031
  </table>
970
1032
 
@@ -147,7 +147,7 @@
147
147
 
148
148
  <dt class="tag-source">Source:</dt>
149
149
  <dd class="tag-source"><ul class="dummy"><li>
150
- <a href="ECatGroup.js.html">ECatGroup.js</a>, <a href="ECatGroup.js.html#line103">line 103</a>
150
+ <a href="ECatGroup.js.html">ECatGroup.js</a>, <a href="ECatGroup.js.html#line106">line 106</a>
151
151
  </li></ul></dd>
152
152
 
153
153
 
@@ -296,6 +296,35 @@
296
296
  </tr>
297
297
 
298
298
 
299
+
300
+ <tr>
301
+
302
+ <td class="name"><code>minMsBetweenPageRequests</code></td>
303
+
304
+
305
+ <td class="type">
306
+
307
+ </td>
308
+
309
+
310
+ <td class="attributes">
311
+
312
+ &lt;optional><br>
313
+
314
+
315
+
316
+
317
+
318
+ </td>
319
+
320
+
321
+
322
+
323
+ <td class="description last">minimum time (in ms) to wait between paginated requests,
324
+ for custom throttle control</td>
325
+ </tr>
326
+
327
+
299
328
  </tbody>
300
329
  </table>
301
330
 
@@ -2099,6 +2099,35 @@
2099
2099
  </tr>
2100
2100
 
2101
2101
 
2102
+
2103
+ <tr>
2104
+
2105
+ <td class="name"><code>minMsBetweenPageRequests</code></td>
2106
+
2107
+
2108
+ <td class="type">
2109
+
2110
+ </td>
2111
+
2112
+
2113
+ <td class="attributes">
2114
+
2115
+ &lt;optional><br>
2116
+
2117
+
2118
+
2119
+
2120
+
2121
+ </td>
2122
+
2123
+
2124
+
2125
+
2126
+ <td class="description last">minimum time (in ms) to wait between paginated requests,
2127
+ for custom throttle control</td>
2128
+ </tr>
2129
+
2130
+
2102
2131
  </tbody>
2103
2132
  </table>
2104
2133
 
@@ -22,6 +22,8 @@ declare class ECatCloudRecording extends EndpointCategory {
22
22
  * associated with the current access)
23
23
  * @param [opts.onNewPage] callback function that is called when a new page of results is received.
24
24
  * The function is passed the new page of results as an argument.
25
+ * @param [opts.minMsBetweenPageRequests] minimum time (in ms) to wait between paginated requests,
26
+ * for custom throttle control
25
27
  * @returns the list of recordings in the account
26
28
  */
27
29
  listAccountRecordings(opts: {
@@ -30,6 +32,7 @@ declare class ECatCloudRecording extends EndpointCategory {
30
32
  fromDay?: number;
31
33
  accountId?: string;
32
34
  onNewPage?: (recordings: ZoomRecordingInAccount[]) => void;
35
+ minMsBetweenPageRequests?: number;
33
36
  }): Promise<ZoomRecordingInAccount[]>;
34
37
  /**
35
38
  * Get all recordings of a meeting (Light)
@@ -66,7 +69,8 @@ declare class ECatCloudRecording extends EndpointCategory {
66
69
  * Date needs to be within past 6 months. Time data (hours and seconds)
67
70
  * is discarded
68
71
  * @param [opts.onNewPage] callback function that is called when a new page of results is received.
69
-
72
+ * @param [opts.minMsBetweenPageRequests] minimum time (in ms) to wait between paginated requests,
73
+ * for custom throttle control
70
74
  * @returns List of Zoom Recordings {@link https://marketplace.zoom.us/docs/api-reference/zoom-api/cloud-recording/recordingslist#responses}
71
75
  */
72
76
  listUserRecordings(opts: {
@@ -75,6 +79,7 @@ declare class ECatCloudRecording extends EndpointCategory {
75
79
  startDate?: (string | Date);
76
80
  endDate?: (string | Date);
77
81
  onNewPage?: (recordings: ZoomMeetingRecordings[]) => void;
82
+ minMsBetweenPageRequests?: number;
78
83
  }): Promise<ZoomMeetingRecordings[]>;
79
84
  }
80
85
  export default ECatCloudRecording;
@@ -86,14 +86,16 @@ var ECatCloudRecording = /** @class */ (function (_super) {
86
86
  * associated with the current access)
87
87
  * @param [opts.onNewPage] callback function that is called when a new page of results is received.
88
88
  * The function is passed the new page of results as an argument.
89
+ * @param [opts.minMsBetweenPageRequests] minimum time (in ms) to wait between paginated requests,
90
+ * for custom throttle control
89
91
  * @returns the list of recordings in the account
90
92
  */
91
93
  ECatCloudRecording.prototype.listAccountRecordings = function (opts) {
92
94
  var _a, _b;
93
95
  return __awaiter(this, void 0, void 0, function () {
94
- var fromYear, fromMonth, fromMonthPadded, fromDay, fromDayPadded, fromDateString, toYear, toMonth, toMonthPadded, toDay, toDayPadded, toDateString;
96
+ var fromYear, fromMonth, minMsBetweenPageRequests, fromMonthPadded, fromDay, fromDayPadded, fromDateString, toYear, toMonth, toMonthPadded, toDay, toDayPadded, toDateString;
95
97
  return __generator(this, function (_c) {
96
- fromYear = opts.fromYear, fromMonth = opts.fromMonth;
98
+ fromYear = opts.fromYear, fromMonth = opts.fromMonth, minMsBetweenPageRequests = opts.minMsBetweenPageRequests;
97
99
  fromMonthPadded = fromMonth < 10 ? "0".concat(fromMonth) : fromMonth;
98
100
  fromDay = (_a = opts.fromDay) !== null && _a !== void 0 ? _a : 1;
99
101
  fromDayPadded = fromDay < 10 ? "0".concat(fromDay) : fromDay;
@@ -118,6 +120,7 @@ var ECatCloudRecording = /** @class */ (function (_super) {
118
120
  to: toDateString,
119
121
  },
120
122
  onNewPage: opts.onNewPage,
123
+ minMsBetweenPageRequests: minMsBetweenPageRequests,
121
124
  itemKey: 'meetings',
122
125
  errorMap: {
123
126
  400: 'Bad request',
@@ -193,14 +196,15 @@ var ECatCloudRecording = /** @class */ (function (_super) {
193
196
  * Date needs to be within past 6 months. Time data (hours and seconds)
194
197
  * is discarded
195
198
  * @param [opts.onNewPage] callback function that is called when a new page of results is received.
196
-
199
+ * @param [opts.minMsBetweenPageRequests] minimum time (in ms) to wait between paginated requests,
200
+ * for custom throttle control
197
201
  * @returns List of Zoom Recordings {@link https://marketplace.zoom.us/docs/api-reference/zoom-api/cloud-recording/recordingslist#responses}
198
202
  */
199
203
  ECatCloudRecording.prototype.listUserRecordings = function (opts) {
200
204
  return __awaiter(this, void 0, void 0, function () {
201
- var userId, searchTrash, startDate, endDate, onNewPage, defaultDate, params;
205
+ var userId, searchTrash, startDate, endDate, onNewPage, minMsBetweenPageRequests, defaultDate, params;
202
206
  return __generator(this, function (_a) {
203
- userId = opts.userId, searchTrash = opts.searchTrash, startDate = opts.startDate, endDate = opts.endDate, onNewPage = opts.onNewPage;
207
+ userId = opts.userId, searchTrash = opts.searchTrash, startDate = opts.startDate, endDate = opts.endDate, onNewPage = opts.onNewPage, minMsBetweenPageRequests = opts.minMsBetweenPageRequests;
204
208
  defaultDate = new Date();
205
209
  defaultDate.setMonth(defaultDate.getMonth() - 1);
206
210
  params = {
@@ -220,6 +224,7 @@ var ECatCloudRecording = /** @class */ (function (_super) {
220
224
  method: 'GET',
221
225
  params: params,
222
226
  onNewPage: opts.onNewPage,
227
+ minMsBetweenPageRequests: minMsBetweenPageRequests,
223
228
  itemKey: 'meetings',
224
229
  errorMap: {
225
230
  404: {
@@ -1 +1 @@
1
- {"version":3,"file":"ECatCloudRecording.js","sourceRoot":"","sources":["../../src/endpoints/ECatCloudRecording.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ECatCloudRecording.js","sourceRoot":"","sources":["../../src/endpoints/ECatCloudRecording.ts"],"names":[],"mappings":"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"}
@@ -15,10 +15,13 @@ declare class ECatGroup extends EndpointCategory {
15
15
  * @method listGroups
16
16
  * @param [opts] object containing all arguments
17
17
  * @param [opts.onNewPage] callback function that is called when a new page of results is received.
18
+ * @param [opts.minMsBetweenPageRequests] minimum time (in ms) to wait between paginated requests,
19
+ * for custom throttle control
18
20
  * @returns the list of groups in the account
19
21
  */
20
22
  listGroups(opts?: {
21
23
  onNewPage?: (groups: ZoomGroup[]) => void;
24
+ minMsBetweenPageRequests?: number;
22
25
  }): Promise<ZoomGroup[]>;
23
26
  /**
24
27
  * List the members within a group (Medium)
@@ -29,11 +32,14 @@ declare class ECatGroup extends EndpointCategory {
29
32
  * @param opts object containing all arguments
30
33
  * @params opts.groupId the group ID of the group of interest
31
34
  * @param [opts.onNewPage] callback function that is called when a new page of results is received.
35
+ * @param [opts.minMsBetweenPageRequests] minimum time (in ms) to wait between paginated requests,
36
+ * for custom throttle control
32
37
  * @returns the list of members in the group
33
38
  */
34
39
  listGroupMembers(opts: {
35
40
  groupId: string;
36
41
  onNewPage?: (groupMembers: ZoomGroupMember[]) => void;
42
+ minMsBetweenPageRequests?: number;
37
43
  }): Promise<ZoomGroupMember[]>;
38
44
  }
39
45
  export default ECatGroup;
@@ -74,6 +74,8 @@ var ECatGroup = /** @class */ (function (_super) {
74
74
  * @method listGroups
75
75
  * @param [opts] object containing all arguments
76
76
  * @param [opts.onNewPage] callback function that is called when a new page of results is received.
77
+ * @param [opts.minMsBetweenPageRequests] minimum time (in ms) to wait between paginated requests,
78
+ * for custom throttle control
77
79
  * @returns the list of groups in the account
78
80
  */
79
81
  ECatGroup.prototype.listGroups = function (opts) {
@@ -96,6 +98,7 @@ var ECatGroup = /** @class */ (function (_super) {
96
98
  },
97
99
  itemKey: 'groups',
98
100
  onNewPage: opts.onNewPage,
101
+ minMsBetweenPageRequests: opts.minMsBetweenPageRequests,
99
102
  })];
100
103
  });
101
104
  });
@@ -109,6 +112,8 @@ var ECatGroup = /** @class */ (function (_super) {
109
112
  * @param opts object containing all arguments
110
113
  * @params opts.groupId the group ID of the group of interest
111
114
  * @param [opts.onNewPage] callback function that is called when a new page of results is received.
115
+ * @param [opts.minMsBetweenPageRequests] minimum time (in ms) to wait between paginated requests,
116
+ * for custom throttle control
112
117
  * @returns the list of members in the group
113
118
  */
114
119
  ECatGroup.prototype.listGroupMembers = function (opts) {
@@ -129,6 +134,7 @@ var ECatGroup = /** @class */ (function (_super) {
129
134
  },
130
135
  },
131
136
  onNewPage: opts.onNewPage,
137
+ minMsBetweenPageRequests: opts.minMsBetweenPageRequests,
132
138
  })];
133
139
  });
134
140
  });
@@ -1 +1 @@
1
- {"version":3,"file":"ECatGroup.js","sourceRoot":"","sources":["../../src/endpoints/ECatGroup.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,2BAA2B;AAC3B,2FAAqE;AAMrE;IAAwB,6BAAgB;IAAxC;;IAoEA,CAAC;IAnEC;;;;;;;;;OASG;IACG,8BAAU,GAAhB,UACE,IAEM;QAFN,qBAAA,EAAA,SAEM;;;gBAEN,sBAAO,IAAI,CAAC,aAAa,CAAC;wBACxB,IAAI,EAAE,SAAS;wBACf,MAAM,EAAE,4BAA4B;wBACpC,MAAM,EAAE,KAAK;wBACb,MAAM,EAAE;4BACN,SAAS,EAAE,EAAE,EAAE,wBAAwB;4BACvC,4BAA4B;yBAC7B;wBACD,QAAQ,EAAE;4BACR,GAAG,EAAE,aAAa;4BAClB,GAAG,EAAE;gCACH,IAAI,EAAE,mCAAmC;6BAC1C;yBACF;wBACD,OAAO,EAAE,QAAQ;wBACjB,SAAS,EAAE,IAAI,CAAC,SAAS;qBAC1B,CAAC,EAAC;;;KACJ;IAED;;;;;;;;;;OAUG;IACG,oCAAgB,GAAtB,UACE,IAGC;;;gBACD,sBAAO,IAAI,CAAC,aAAa,CAAC;wBACxB,IAAI,EAAE,kBAAW,IAAI,CAAC,OAAO,aAAU;wBACvC,MAAM,EAAE,8BAA8B;wBACtC,MAAM,EAAE,KAAK;wBACb,MAAM,EAAE;4BACN,SAAS,EAAE,IAAI,EAAE,wBAAwB;yBAC1C;wBACD,OAAO,EAAE,SAAS;wBAClB,QAAQ,EAAE;4BACR,GAAG,EAAE,aAAa;4BAClB,GAAG,EAAE;gCACH,IAAI,EAAE,mCAAmC;6BAC1C;yBACF;wBACD,SAAS,EAAE,IAAI,CAAC,SAAS;qBAC1B,CAAC,EAAC;;;KACJ;IACH,gBAAC;AAAD,CAAC,AApED,CAAwB,0BAAgB,GAoEvC;AAED,4EAA4E;AAC5E,4EAA4E;AAC5E,4EAA4E;AAE5E,kBAAe,SAAS,CAAC"}
1
+ {"version":3,"file":"ECatGroup.js","sourceRoot":"","sources":["../../src/endpoints/ECatGroup.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,2BAA2B;AAC3B,2FAAqE;AAMrE;IAAwB,6BAAgB;IAAxC;;IA4EA,CAAC;IA3EC;;;;;;;;;;;OAWG;IACG,8BAAU,GAAhB,UACE,IAGM;QAHN,qBAAA,EAAA,SAGM;;;gBAEN,sBAAO,IAAI,CAAC,aAAa,CAAC;wBACxB,IAAI,EAAE,SAAS;wBACf,MAAM,EAAE,4BAA4B;wBACpC,MAAM,EAAE,KAAK;wBACb,MAAM,EAAE;4BACN,SAAS,EAAE,EAAE,EAAE,wBAAwB;4BACvC,4BAA4B;yBAC7B;wBACD,QAAQ,EAAE;4BACR,GAAG,EAAE,aAAa;4BAClB,GAAG,EAAE;gCACH,IAAI,EAAE,mCAAmC;6BAC1C;yBACF;wBACD,OAAO,EAAE,QAAQ;wBACjB,SAAS,EAAE,IAAI,CAAC,SAAS;wBACzB,wBAAwB,EAAE,IAAI,CAAC,wBAAwB;qBACxD,CAAC,EAAC;;;KACJ;IAED;;;;;;;;;;;;OAYG;IACG,oCAAgB,GAAtB,UACE,IAIC;;;gBACD,sBAAO,IAAI,CAAC,aAAa,CAAC;wBACxB,IAAI,EAAE,kBAAW,IAAI,CAAC,OAAO,aAAU;wBACvC,MAAM,EAAE,8BAA8B;wBACtC,MAAM,EAAE,KAAK;wBACb,MAAM,EAAE;4BACN,SAAS,EAAE,IAAI,EAAE,wBAAwB;yBAC1C;wBACD,OAAO,EAAE,SAAS;wBAClB,QAAQ,EAAE;4BACR,GAAG,EAAE,aAAa;4BAClB,GAAG,EAAE;gCACH,IAAI,EAAE,mCAAmC;6BAC1C;yBACF;wBACD,SAAS,EAAE,IAAI,CAAC,SAAS;wBACzB,wBAAwB,EAAE,IAAI,CAAC,wBAAwB;qBACxD,CAAC,EAAC;;;KACJ;IACH,gBAAC;AAAD,CAAC,AA5ED,CAAwB,0BAAgB,GA4EvC;AAED,4EAA4E;AAC5E,4EAA4E;AAC5E,4EAA4E;AAE5E,kBAAe,SAAS,CAAC"}
@@ -185,11 +185,14 @@ declare class ECatMeeting extends EndpointCategory {
185
185
  * @param opts object containing all arguments
186
186
  * @param opts.meetingId the Zoom UUID of the past meeting instance
187
187
  * @param [opts.onNewPage] callback function that is called when a new page of results is received.
188
+ * @param [opts.minMsBetweenPageRequests] minimum time (in ms) to wait between paginated requests,
189
+ * for custom throttle control
188
190
  * @returns list of past meeting participants
189
191
  */
190
192
  listPastMeetingParticipants(opts: {
191
193
  meetingId: string;
192
194
  onNewPage?: (participants: ZoomPastMeetingParticipant[]) => void;
195
+ minMsBetweenPageRequests?: number;
193
196
  }): Promise<ZoomPastMeetingParticipant[]>;
194
197
  }
195
198
  export default ECatMeeting;
@@ -622,6 +622,8 @@ var ECatMeeting = /** @class */ (function (_super) {
622
622
  * @param opts object containing all arguments
623
623
  * @param opts.meetingId the Zoom UUID of the past meeting instance
624
624
  * @param [opts.onNewPage] callback function that is called when a new page of results is received.
625
+ * @param [opts.minMsBetweenPageRequests] minimum time (in ms) to wait between paginated requests,
626
+ * for custom throttle control
625
627
  * @returns list of past meeting participants
626
628
  */
627
629
  ECatMeeting.prototype.listPastMeetingParticipants = function (opts) {
@@ -636,6 +638,7 @@ var ECatMeeting = /** @class */ (function (_super) {
636
638
  },
637
639
  itemKey: 'participants',
638
640
  onNewPage: opts.onNewPage,
641
+ minMsBetweenPageRequests: opts.minMsBetweenPageRequests,
639
642
  errorMap: {
640
643
  400: {
641
644
  200: 'You need a paid account to access the participant list of a past meeting.',
@@ -1 +1 @@
1
- {"version":3,"file":"ECatMeeting.js","sourceRoot":"","sources":["../../src/endpoints/ECatMeeting.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,2BAA2B;AAC3B,2FAAqE;AAErE,wBAAwB;AACxB,4EAAsD;AACtD,wEAAkD;AAMlD,yGAA+E;AAC/E,uEAAiD;AACjD,2EAAqD;AAQrD;IAA0B,+BAAgB;IAA1C;;IAoqBA,CAAC;IAnqBC;;;;;;;;;;;;;OAaG;IACG,yBAAG,GAAT,UACE,IAIC;;;;gBAGK,MAAM,GAGR;oBACF,yBAAyB,EAAE,CAAC,CAAC,IAAI,CAAC,kBAAkB;iBACrD,CAAC;gBAEF,+BAA+B;gBAC/B,IAAI,IAAI,CAAC,YAAY,EAAE;oBACrB,MAAM,CAAC,aAAa,GAAG,IAAI,CAAC,YAAY,CAAC;iBAC1C;gBAED,eAAe;gBACf,sBAAO,IAAI,CAAC,aAAa,CAAC;wBACxB,IAAI,EAAE,oBAAa,IAAI,CAAC,SAAS,CAAE;wBACnC,MAAM,EAAE,uBAAuB;wBAC/B,MAAM,EAAE,KAAK;wBACb,MAAM,QAAA;wBACN,QAAQ,EAAE;4BACR,GAAG,EAAE;gCACH,IAAI,EAAE,kDAAkD;gCACxD,IAAI,EAAE,kCAAkC;6BACzC;4BACD,GAAG,EAAE;gCACH,IAAI,EAAE,oEAAoE;gCAC1E,IAAI,EAAE,kBAAW,IAAI,CAAC,SAAS,uCAAoC;6BACpE;yBACF;qBACF,CAAC,EAAC;;;KACJ;IAED;;;;;;;;;;;OAWG;IACG,4BAAM,GAAZ,UACE,IAGC;;;gBAED,sBAAO,IAAI,CAAC,aAAa,CAAC;wBACxB,IAAI,EAAE,iBAAU,IAAI,CAAC,MAAM,cAAW;wBACtC,MAAM,EAAE,sBAAsB;wBAC9B,MAAM,EAAE,MAAM;wBACd,MAAM,EAAE,IAAI,CAAC,UAAU;wBACvB,QAAQ,EAAE;4BACR,GAAG,EAAE,eAAQ,IAAI,CAAC,MAAM,sEAAmE;4BAC3F,GAAG,EAAE;gCACH,IAAI,EAAE,eAAQ,IAAI,CAAC,MAAM,8DAA2D;6BACrF;yBACF;qBACF,CAAC,EAAC;;;KACJ;IAED;;;;;;;;;;;;OAYG;IACG,4BAAM,GAAZ,UACE,IAIC;;;gBAED,sBAAO,IAAI,CAAC,aAAa,CAAC;wBACxB,IAAI,EAAE,CACJ,IAAI,CAAC,YAAY;4BACf,CAAC,CAAC,oBAAa,IAAI,CAAC,SAAS,4BAAkB,IAAI,CAAC,YAAY,CAAE;4BAClE,CAAC,CAAC,oBAAa,IAAI,CAAC,SAAS,CAAE,CAClC;wBACD,MAAM,EAAE,iCAAiC;wBACzC,MAAM,EAAE,OAAO;wBACf,MAAM,EAAE,IAAI,CAAC,UAAU;wBACvB,QAAQ,EAAE;4BACR,GAAG,EAAE,+EAA+E;4BACpF,GAAG,EAAE;gCACH,IAAI,EAAE,iDAAiD;gCACvD,IAAI,EAAE,yCAAyC;gCAC/C,IAAI,EAAE,wCAAiC,IAAI,CAAC,SAAS,wCAAqC;6BAC3F;4BACD,GAAG,EAAE;gCACH,IAAI,EAAE,iEAAiE;gCACvE,IAAI,EAAE,gCAAyB,IAAI,CAAC,SAAS,uCAAoC;6BAClF;yBACF;qBACF,CAAC,EAAC;;;KACJ;IAED;;;;;;;;;;;;;OAaG;IACG,4BAAM,GAAZ,UACE,IAIC;;;;gBAGK,MAAM,GAGR;oBACF,qBAAqB,EAAE,CAAC,CAAC,IAAI,CAAC,WAAW;iBAC1C,CAAC;gBAEF,+BAA+B;gBAC/B,IAAI,IAAI,CAAC,YAAY,EAAE;oBACrB,MAAM,CAAC,aAAa,GAAG,IAAI,CAAC,YAAY,CAAC;iBAC1C;gBAED,eAAe;gBACf,sBAAO,IAAI,CAAC,aAAa,CAAC;wBACxB,IAAI,EAAE,oBAAa,IAAI,CAAC,SAAS,CAAE;wBACnC,MAAM,EAAE,kBAAkB;wBAC1B,MAAM,EAAE,QAAQ;wBAChB,MAAM,QAAA;wBACN,QAAQ,EAAE;4BACR,GAAG,EAAE;gCACH,IAAI,EAAE,sCAA+B,IAAI,CAAC,SAAS,sDAAmD;gCACtG,IAAI,EAAE,8DAAuD,IAAI,CAAC,SAAS,CAAE;gCAC7E,IAAI,EAAE,0CAAmC,IAAI,CAAC,SAAS,mCAAgC;gCACvF,IAAI,EAAE,wCAAiC,IAAI,CAAC,SAAS,wCAAqC;gCAC1F,IAAI,EAAE,wCAAiC,IAAI,CAAC,SAAS,gCAA6B;gCAClF,IAAI,EAAE,wDAAwD;gCAC9D,IAAI,EAAE,6DAA6D;6BACpE;4BACD,GAAG,EAAE;gCACH,IAAI,EAAE,0CAAmC,IAAI,CAAC,SAAS,qCAAkC;gCACzF,IAAI,EAAE,gCAAyB,IAAI,CAAC,SAAS,uCAAoC;6BAClF;yBACF;qBACF,CAAC,EAAC;;;KACJ;IAED;;;;;;;;;;OAUG;IACG,uCAAiB,GAAvB,UACE,IAEC;;;gBAED,sBAAO,IAAI,CAAC,aAAa,CAAC;wBACxB,IAAI,EAAE,yBAAkB,IAAI,CAAC,SAAS,eAAY;wBAClD,MAAM,EAAE,yCAAyC;wBACjD,MAAM,EAAE,KAAK;wBACb,QAAQ,EAAE;4BACR,GAAG,EAAE,kDAA2C,IAAI,CAAC,SAAS,CAAE;yBACjE;wBACD,OAAO,EAAE,UAAU;qBACpB,CAAC,EAAC;;;KACJ;IAED;;;;;;;;OAQG;IACG,2CAAqB,GAA3B,UACE,IAEC;;;gBAED,sBAAO,IAAI,CAAC,aAAa,CAAC;wBACxB,IAAI,EAAE,yBAAkB,IAAI,CAAC,IAAI,CAAE;wBACnC,MAAM,EAAE,4CAA4C;wBACpD,MAAM,EAAE,KAAK;wBACb,QAAQ,EAAE;4BACR,GAAG,EAAE;gCACH,IAAI,EAAE,wDAAwD;gCAC9D,GAAG,EAAE,uDAAuD;gCAC5D,GAAG,EAAE,8DAA8D;gCACnE,KAAK,EAAE,8FAA8F;6BACtG;4BACD,GAAG,EAAE;gCACH,IAAI,EAAE,yDAAyD;6BAChE;yBACF;qBACF,CAAC,EAAC;;;KACJ;IAED;;;;;;;;OAQG;IACG,6CAAuB,GAA7B,UACE,IAEC;;;;;4BAGgB,qBAAM,IAAI,CAAC,aAAa,CAAC;4BACxC,IAAI,EAAE,yBAAkB,IAAI,CAAC,IAAI,WAAQ;4BACzC,MAAM,EAAE,uDAAuD;4BAC/D,MAAM,EAAE,KAAK;4BACb,QAAQ,EAAE;gCACR,GAAG,EAAE,qDAAqD;gCAC1D,KAAK,EAAE,8FAA8F;6BACtG;yBACF,CAAC,EAAA;;wBARI,QAAQ,GAAG,SAQf;wBAGI,qBAAqB,GAEvB,EAAE,CAAC;wBAEP,6BAA6B;wBAC7B,QAAQ,CAAC,SAAS,CAAC,OAAO,CAAC,UAAC,IAAS;4BAEjC,IAAA,KAAK,GAGH,IAAI,MAHD,EACL,IAAI,GAEF,IAAI,KAFF,EACc,eAAe,GAC/B,IAAI,iBAD2B,CAC1B;4BAET,2BAA2B;4BAC3B,eAAe,CAAC,OAAO,CAAC,UAAC,cAAmB;gCAExC,IAAW,QAAQ,GAGjB,cAAc,UAHG,EACP,MAAM,GAEhB,cAAc,WAFE,EAClB,QAAQ,GACN,cAAc,SADR,CACS;gCAEnB,eAAe;gCACf,IAAM,MAAM,GAAG,CACb,CACE,CAAC,cAAc,CAAC,MAAM;uCACnB,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,KAAK,CAAC,CACrD;oCACC,CAAC,CAAC,EAAE,CAAC,gCAAgC;oCACrC,CAAC,CAAC,CACA,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC;yCAC1B,KAAK,CAAC,GAAG,CAAC;yCACV,GAAG,CAAC,UAAC,CAAS;wCACb,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;oCAClB,CAAC,CAAC,CACL,CACJ,CAAC;gCAEF,oCAAoC;gCACpC,gEAAgE;gCAChE,sDAAsD;gCACtD,IAAM,QAAQ,GAAG,IAAI,IAAI,CAAC,UAAG,QAAQ,SAAM,CAAC,CAAC,OAAO,EAAE,CAAC;gCAEvD,gCAAgC;gCAChC,IAAM,QAAQ,GAAG;oCACf,YAAY,EAAE,IAAI;oCAClB,SAAS,EAAE,KAAK;oCAChB,MAAM,QAAA;oCACN,SAAS,EAAE,QAAQ;iCACpB,CAAC;gCAEF,+CAA+C;gCAC/C,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,EAAE;oCAClC,qBAAqB,CAAC,MAAM,CAAC,GAAG;wCAC9B,MAAM,EAAE,MAAM;wCACd,SAAS,EAAE,QAAQ;wCACnB,SAAS,EAAE;4CACT;gDACE,MAAM,EAAE,QAAQ;gDAChB,SAAS,EAAE,CAAC,QAAQ,CAAC;6CACtB;yCACF;qCACF,CAAC;iCACH;qCAAM;oCACL,gCAAgC;oCAChC,IAAM,aAAa,GAAG,CACpB,qBAAqB,CAAC,MAAM,CAAC;yCAC1B,SAAS;yCACT,SAAS,CAAC,UAAC,CAAC;wCACX,OAAO,CAAC,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC;oCACjC,CAAC,CAAC,CACL,CAAC;oCAEF,sDAAsD;oCACtD,IAAI,aAAa,KAAK,CAAC,CAAC,EAAE;wCACxB,6DAA6D;wCAC7D,qBAAqB,CAAC,MAAM,CAAC;6CAC1B,SAAS,CAAC,aAAa,CAAC;6CACxB,SAAS;6CACT,IAAI,CAAC,QAAQ,CAAC,CAAC;qCACnB;yCAAM;wCACL,6DAA6D;wCAC7D,qBAAqB,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC;4CAC3C,MAAM,EAAE,QAAQ;4CAChB,SAAS,EAAE,CAAC,QAAQ,CAAC;yCACtB,CAAC,CAAC;qCACJ;oCAED,mDAAmD;oCACnD,IAAI,QAAQ,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE;wCACtD,qBAAqB,CAAC,MAAM,CAAC,CAAC,SAAS,GAAG,QAAQ,CAAC;qCACpD;iCACF;4BACH,CAAC,CAAC,CAAC;wBACL,CAAC,CAAC,CAAC;wBAEH,4BAA4B;wBAC5B,sBAAO,MAAM,CAAC,MAAM,CAAC,qBAAqB,CAAC,EAAC;;;;KAC7C;IAED;;;;;;;;;;OAUG;IACG,iCAAW,GAAjB,UACE,IAGC;;;;;;4BAGgB,qBAAM,IAAI,CAAC,aAAa,CAAC;4BACxC,IAAI,EAAE,oBAAa,IAAI,CAAC,SAAS,oBAAU,IAAI,CAAC,MAAM,CAAE;4BACxD,MAAM,EAAE,mBAAmB;4BAC3B,MAAM,EAAE,KAAK;4BACb,QAAQ,EAAE;gCACR,IAAI,EAAE,6CAA6C;gCACnD,IAAI,EAAE,oFAAoF;gCAC1F,GAAG,EAAE,6BAA6B;6BACnC;yBACF,CAAC,EAAA;;wBATI,QAAQ,GAAG,SASf;wBAEF,IAAI;4BAEI,QAAQ,GAAa;gCACzB,kBAAkB;gCAClB,MAAM,EAAE,QAAQ,CAAC,EAAE;gCACnB,gCAAgC;gCAChC,UAAU,EAAE,CACV,MAAA;oCACE,QAAQ,EAAE,wBAAc,CAAC,QAAQ;oCACjC,OAAO,EAAE,wBAAc,CAAC,OAAO;oCAC/B,OAAO,EAAE,wBAAc,CAAC,OAAO;oCAC/B,KAAK,EAAE,wBAAc,CAAC,KAAK;iCAC5B,CAAC,QAAQ,CAAC,MAAgB,CAAC,mCACzB,wBAAc,CAAC,QAAQ,CAC3B;gCACD,6BAA6B;gCAC7B,SAAS,EAAE,CAAC,CAAC,QAAQ,CAAC,SAAS;gCAC/B,8BAA8B;gCAC9B,QAAQ,EAAE,CACR,MAAA;oCACE,CAAC,EAAE,sBAAY,CAAC,IAAI;oCACpB,CAAC,EAAE,sBAAY,CAAC,YAAY;oCAC5B,CAAC,EAAE,sBAAY,CAAC,IAAI;iCACrB,CAAC,QAAQ,CAAC,IAAc,CAAC,mCACvB,sBAAY,CAAC,IAAI,CACrB;gCACD,gBAAgB;gCAChB,KAAK,EAAE,QAAQ,CAAC,KAAK;gCACrB,6BAA6B;gCAC7B,SAAS,EAAE,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC,UAAC,QAAa;oCAC9C,iDAAiD;oCAE/C,IAAiB,cAAc,GAa7B,QAAQ,gBAbqB,EAC/B,OAAO,GAYL,QAAQ,QAZH,EACP,IAAI,GAWF,QAAQ,KAXN,EACW,YAAY,GAUzB,QAAQ,cAViB,EACrB,YAAY,GAShB,QAAQ,KATQ,EACF,aAAa,GAQ3B,QAAQ,eARmB,EACP,mBAAmB,GAOvC,QAAQ,qBAP+B,EACnB,mBAAmB,GAMvC,QAAQ,qBAN+B,EACvB,cAAc,GAK9B,QAAQ,iBALsB,EACd,cAAc,GAI9B,QAAQ,iBAJsB,EACd,cAAc,GAG9B,QAAQ,iBAHsB,EACd,cAAc,GAE9B,QAAQ,iBAFsB,EACd,cAAc,GAC9B,QAAQ,iBADsB,CACrB;oCAEb,sDAAsD;oCACtD,IAAM,YAAY,GAAG;wCACnB,cAAc,EAAE,CAAC,CAAC,cAAc;wCAChC,mBAAmB;wCACnB,OAAO,EAAE,CACP,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;4CACvD,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,UAAC,MAAc;gDAC3B,OAAO,MAAM,CAAC,IAAI,EAAE,CAAC;4CACvB,CAAC,CAAC;4CACF,CAAC,CAAC,EAAE,CACP;wCACD,IAAI,MAAA;wCACJ,YAAY,cAAA;qCACb,CAAC;oCAEF,uCAAuC;oCACvC,IACE,YAAY,KAAK,QAAQ;2CACtB,YAAY,KAAK,UAAU,EAC9B;wCACA,kBACE,kBAAkB,EAAE,CAClB,YAAY,KAAK,QAAQ;gDACvB,CAAC,CAAC,uCAAyB,CAAC,YAAY;gDACxC,CAAC,CAAC,uCAAyB,CAAC,cAAc,CAC7C,EACD,cAAc,EAAE,CAAC,CAAC,cAAc,IAC7B,YAAY,EACf;qCACH;oCACD,IACE,YAAY,KAAK,cAAc;2CAC5B,YAAY,KAAK,aAAa,EACjC;wCACA,kBACE,kBAAkB,EAAE,CAClB,YAAY,KAAK,cAAc;gDAC7B,CAAC,CAAC,uCAAyB,CAAC,WAAW;gDACvC,CAAC,CAAC,uCAAyB,CAAC,UAAU,CACzC,EACD,mBAAmB,EAAE,MAAM,CAAC,QAAQ,CAAC,mBAAmB,EAAE,EAAE,CAAC,EAC7D,mBAAmB,EAAE,MAAM,CAAC,QAAQ,CAAC,mBAAmB,EAAE,EAAE,CAAC,IAC1D,YAAY,EACf;qCACH;oCACD,IAAI,YAAY,KAAK,mBAAmB,EAAE;wCACxC,kBACE,kBAAkB,EAAE,uCAAyB,CAAC,cAAc,EAC5D,aAAa,eAAA,IACV,YAAY,EACf;qCACH;oCACD,IAAI,YAAY,KAAK,cAAc,EAAE;wCACnC,kBACE,kBAAkB,EAAE,uCAAyB,CAAC,WAAW,EACzD,cAAc,gBAAA,EACd,cAAc,gBAAA,EACd,cAAc,gBAAA,EACd,cAAc,gBAAA,IACX,YAAY,EACf;qCACH;oCAED,kEAAkE;oCAClE,kBACE,kBAAkB,EAAE,uCAAyB,CAAC,OAAO,IAClD,YAAY,EACf;gCACJ,CAAC,CAAC;6BACH,CAAC;4BACF,sBAAO,QAAQ,EAAC;yBACjB;wBAAC,OAAO,GAAG,EAAE;4BACZ,MAAM,IAAI,oBAAU,CAAC;gCACnB,OAAO,EAAE,uEAAgE,MAAA,GAAG,CAAC,OAAO,mCAAI,eAAe,CAAE;gCACzG,IAAI,EAAE,mBAAS,CAAC,iBAAiB;6BAClC,CAAC,CAAC;yBACJ;;;;;KACF;IAED;;;;;;;;;;;;;;;;;;;OAmBG;IACG,gCAAU,GAAhB,UACE,IAIC;;;;;;wBAIC,SAAS,GAEP,IAAI,UAFG,EACT,OAAO,GACL,IAAI,QADC,CACA;wBACH,UAAU,GAAK,IAAI,WAAT,CAAU;6BAGtB,CAAC,UAAU,EAAX,wBAAW;wBACA,qBAAM,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,SAAS,WAAA,EAAE,CAAC,EAAA;;wBAAtD,UAAU,GAAG,SAAyC,CAAC;;;wBAInD,QAAQ,GAAG,CACf,UAAU,CAAC,QAAQ,CAAC,iBAAiB;4BACnC,8BAA8B;6BAC7B,KAAK,CAAC,GAAG,CAAC;4BACX,iCAAiC;6BAChC,GAAG,CAAC,UAAC,IAAI;4BACR,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC;wBACrB,CAAC,CAAC,CACL,CAAC;6BAGE,CAAA,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA,EAA7B,wBAA6B;wBAC/B,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;wBACvB,UAAU,CAAC,QAAQ,CAAC,iBAAiB,GAAG,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;;;;wBAGzD,qBAAM,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,SAAS,WAAA,EAAE,UAAU,YAAA,EAAE,CAAC,EAAA;;wBAAxD,SAAwD,CAAC;;;;wBAGnD,0BAA0B,GAAG,CAAC,KAAG,CAAC,IAAI,KAAK,cAAc,CAAC,CAAC;wBAC3D,4BAA4B,GAAG,CACnC,KAAG,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAC1D,CAAC;6BACE,0BAA0B,EAA1B,wBAA0B;wBAC5B,IAAI,4BAA4B,EAAE;4BAChC,yDAAyD;4BACzD,MAAM,IAAI,oBAAU,CAAC;gCACnB,OAAO,EAAE,6BAAqB,OAAO,4FAAwF;gCAC7H,IAAI,EAAE,mBAAS,CAAC,0BAA0B;6BAC3C,CAAC,CAAC;yBACJ;wBAED,gDAAgD;wBAChD,8BAA8B;wBAC9B,UAAU,CAAC,QAAQ,CAAC,iBAAiB,GAAG,OAAO,CAAC;wBAChD,qBAAM,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,SAAS,WAAA,EAAE,UAAU,YAAA,EAAE,CAAC,EAAA;;wBAAxD,SAAwD,CAAC;;;;oBAK/D,gCAAgC;oBAChC,sBAAO,UAAU,EAAC;;;;KACnB;IAED;;;;;;;;;OASG;IACG,mCAAa,GAAnB,UACE,IAEC;;;gBAED,sBAAO,IAAI,CAAC,aAAa,CAAC;wBACxB,IAAI,EAAE,oBAAa,IAAI,CAAC,SAAS,gBAAa;wBAC9C,MAAM,EAAE,4BAA4B;wBACpC,MAAM,EAAE,KAAK;wBACb,QAAQ,EAAE;4BACR,GAAG,EAAE,oBAAoB;4BACzB,GAAG,EAAE,sEAAsE;4BAC3E,GAAG,EAAE;gCACH,IAAI,EAAE,uCAAuC;6BAC9C;yBACF;qBACF,CAAC,EAAC;;;KACJ;IAED;;;;;;;;;;OAUG;IACG,iDAA2B,GAAjC,UACE,IAGC;;;gBAED,sBAAO,IAAI,CAAC,aAAa,CAAC;wBACxB,IAAI,EAAE,yBAAkB,IAAI,CAAC,SAAS,kBAAe;wBACrD,MAAM,EAAE,gDAAgD;wBACxD,MAAM,EAAE,KAAK;wBACb,MAAM,EAAE;4BACN,SAAS,EAAE,GAAG,EAAE,wBAAwB;yBACzC;wBACD,OAAO,EAAE,cAAc;wBACvB,SAAS,EAAE,IAAI,CAAC,SAAS;wBACzB,QAAQ,EAAE;4BACR,GAAG,EAAE;gCACH,GAAG,EAAE,2EAA2E;gCAChF,KAAK,EAAE,8FAA8F;6BACtG;4BACD,GAAG,EAAE;gCACH,IAAI,EAAE,yDAAyD;6BAChE;yBACF;qBACF,CAAC,EAAC;;;KACJ;IACH,kBAAC;AAAD,CAAC,AApqBD,CAA0B,0BAAgB,GAoqBzC;AAED,4EAA4E;AAC5E,4EAA4E;AAC5E,4EAA4E;AAE5E,kBAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"ECatMeeting.js","sourceRoot":"","sources":["../../src/endpoints/ECatMeeting.ts"],"names":[],"mappings":"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"}
@@ -77,118 +77,148 @@ var genVisitEndpoint = function (zoomAPIConfig) {
77
77
  * @param [opts.onNewPage] callback function that is called when a
78
78
  * new page of results is received
79
79
  * @param [opts.itemKey] the key in the response body where the list of items can be found
80
- * @param [opts.onNewPage] callback function that is called when a new page of results is received
80
+ * @param [opts.minMsBetweenPageRequests] minimum time (in ms) to wait between
81
+ * paginated requests, for custom throttle control
81
82
  * @returns response body
82
83
  */
83
84
  return function (opts) { return __awaiter(void 0, void 0, void 0, function () {
84
- var path, params, action, errorMap, itemKey, onNewPage, method, nextPageToken, isFirstPage, isPaginated, allItems, _a, status_1, headers, body, rateLimitTypeHeader, rateLimitType, zoomErrorMessage, errorMessage, errorCode, results;
85
- var _b;
86
- return __generator(this, function (_c) {
87
- switch (_c.label) {
85
+ var path, params, action, errorMap, itemKey, onNewPage, minMsBetweenPageRequests, method, nextPageToken, isFirstPage, isPaginated, allItems, lastPageRequestTimestamp, _loop_1, state_1;
86
+ var _a;
87
+ return __generator(this, function (_b) {
88
+ switch (_b.label) {
88
89
  case 0:
89
- path = opts.path, params = opts.params, action = opts.action, errorMap = opts.errorMap, itemKey = opts.itemKey, onNewPage = opts.onNewPage;
90
- method = ((_b = opts.method) !== null && _b !== void 0 ? _b : 'GET');
90
+ path = opts.path, params = opts.params, action = opts.action, errorMap = opts.errorMap, itemKey = opts.itemKey, onNewPage = opts.onNewPage, minMsBetweenPageRequests = opts.minMsBetweenPageRequests;
91
+ method = ((_a = opts.method) !== null && _a !== void 0 ? _a : 'GET');
91
92
  nextPageToken = undefined;
92
93
  isFirstPage = true;
93
94
  isPaginated = false;
94
95
  allItems = [];
95
- _c.label = 1;
96
- case 1:
97
- if (!(nextPageToken || isFirstPage)) return [3 /*break*/, 3];
98
- // Don't fetch another page unless we get a token
99
- isFirstPage = false;
100
- return [4 /*yield*/, (0, sendZoomRequest_1.default)({
101
- path: path,
102
- method: method,
103
- params: __assign(__assign({}, params), { next_page_token: nextPageToken }),
104
- zoomAPIConfig: zoomAPIConfig,
105
- })];
106
- case 2:
107
- _a = _c.sent(), status_1 = _a.status, headers = _a.headers, body = _a.body;
108
- /* ----------- Rate Error ----------- */
109
- if (status_1 === 429) {
110
- rateLimitTypeHeader = Object.keys(headers).filter(function (header) {
111
- return (header.toLowerCase() === 'x-ratelimit-type');
112
- })[0];
113
- rateLimitType = (headers[rateLimitTypeHeader]
114
- && headers[rateLimitTypeHeader].toLowerCase());
115
- if (rateLimitType === ThrottleHeader_1.default.DailyLimitHeader) {
116
- // Daily limit
117
- throw new ZACCLError_1.default({
118
- message: 'Zoom is very busy today. Please try this operation again tomorrow.',
119
- code: ErrorCode_1.default.DailyLimitError,
120
- });
121
- }
122
- else if (rateLimitType === ThrottleHeader_1.default.RateLimitHeader) {
123
- // Rate limit
124
- throw new ZACCLError_1.default({
125
- message: 'Zoom is very busy right now. Please try this operation again later.',
126
- code: ErrorCode_1.default.RateLimitError,
127
- });
128
- }
129
- else {
130
- // Unknown rate limit
131
- throw new ZACCLError_1.default({
132
- message: 'Zoom is very busy right now. Please try this operation again.',
133
- code: ErrorCode_1.default.UnknownLimitError,
134
- });
135
- }
136
- }
137
- /* -------- Custom Error Code ------- */
138
- if (status_1 < 200 || status_1 >= 300) {
139
- zoomErrorMessage = 'An unknown Zoom error occurred.';
140
- if (errorMap[status_1]) {
141
- if (typeof errorMap[status_1] === 'string') {
142
- // Found the error message
143
- zoomErrorMessage = errorMap[status_1];
144
- }
145
- else if (body.code) {
146
- // Check for nested error message
147
- if (typeof errorMap[status_1][body.code] === 'string') {
148
- // Found nested error message
149
- zoomErrorMessage = errorMap[status_1][body.code];
150
- }
151
- else if (body.message) {
152
- // errorMap[status][code] did not return err message
153
- // so we check body
154
- if (typeof body.message === 'string') {
155
- zoomErrorMessage = body.message;
96
+ lastPageRequestTimestamp = 0;
97
+ _loop_1 = function () {
98
+ var now, timeSinceLastRequest_1, _c, status_1, headers, body, rateLimitTypeHeader, rateLimitType, zoomErrorMessage, errorMessage, errorCode, results;
99
+ return __generator(this, function (_d) {
100
+ switch (_d.label) {
101
+ case 0:
102
+ // Don't fetch another page unless we get a token
103
+ isFirstPage = false;
104
+ if (!minMsBetweenPageRequests) return [3 /*break*/, 3];
105
+ now = Date.now();
106
+ timeSinceLastRequest_1 = now - lastPageRequestTimestamp;
107
+ if (!(timeSinceLastRequest_1 < minMsBetweenPageRequests)) return [3 /*break*/, 2];
108
+ return [4 /*yield*/, new Promise(function (resolve) {
109
+ setTimeout(resolve, minMsBetweenPageRequests - timeSinceLastRequest_1);
110
+ })];
111
+ case 1:
112
+ _d.sent();
113
+ _d.label = 2;
114
+ case 2:
115
+ // Update timestamp of last page request
116
+ lastPageRequestTimestamp = Date.now();
117
+ _d.label = 3;
118
+ case 3: return [4 /*yield*/, (0, sendZoomRequest_1.default)({
119
+ path: path,
120
+ method: method,
121
+ params: __assign(__assign({}, params), { next_page_token: nextPageToken }),
122
+ zoomAPIConfig: zoomAPIConfig,
123
+ })];
124
+ case 4:
125
+ _c = _d.sent(), status_1 = _c.status, headers = _c.headers, body = _c.body;
126
+ /* ----------- Rate Error ----------- */
127
+ if (status_1 === 429) {
128
+ rateLimitTypeHeader = Object.keys(headers).filter(function (header) {
129
+ return (header.toLowerCase() === 'x-ratelimit-type');
130
+ })[0];
131
+ rateLimitType = (headers[rateLimitTypeHeader]
132
+ && headers[rateLimitTypeHeader].toLowerCase());
133
+ if (rateLimitType === ThrottleHeader_1.default.DailyLimitHeader) {
134
+ // Daily limit
135
+ throw new ZACCLError_1.default({
136
+ message: 'Zoom is very busy today. Please try this operation again tomorrow.',
137
+ code: ErrorCode_1.default.DailyLimitError,
138
+ });
139
+ }
140
+ else if (rateLimitType === ThrottleHeader_1.default.RateLimitHeader) {
141
+ // Rate limit
142
+ throw new ZACCLError_1.default({
143
+ message: 'Zoom is very busy right now. Please try this operation again later.',
144
+ code: ErrorCode_1.default.RateLimitError,
145
+ });
146
+ }
147
+ else {
148
+ // Unknown rate limit
149
+ throw new ZACCLError_1.default({
150
+ message: 'Zoom is very busy right now. Please try this operation again.',
151
+ code: ErrorCode_1.default.UnknownLimitError,
152
+ });
153
+ }
156
154
  }
157
- }
158
- }
159
- }
160
- else if (body.message) {
161
- // Error message not in the error map so check body
162
- if (typeof body.message === 'string') {
163
- zoomErrorMessage = body.message;
155
+ /* -------- Custom Error Code ------- */
156
+ if (status_1 < 200 || status_1 >= 300) {
157
+ zoomErrorMessage = 'An unknown Zoom error occurred.';
158
+ if (errorMap[status_1]) {
159
+ if (typeof errorMap[status_1] === 'string') {
160
+ // Found the error message
161
+ zoomErrorMessage = errorMap[status_1];
162
+ }
163
+ else if (body.code) {
164
+ // Check for nested error message
165
+ if (typeof errorMap[status_1][body.code] === 'string') {
166
+ // Found nested error message
167
+ zoomErrorMessage = errorMap[status_1][body.code];
168
+ }
169
+ else if (body.message) {
170
+ // errorMap[status][code] did not return err message
171
+ // so we check body
172
+ if (typeof body.message === 'string') {
173
+ zoomErrorMessage = body.message;
174
+ }
175
+ }
176
+ }
177
+ }
178
+ else if (body.message) {
179
+ // Error message not in the error map so check body
180
+ if (typeof body.message === 'string') {
181
+ zoomErrorMessage = body.message;
182
+ }
183
+ }
184
+ errorMessage = "We couldn't ".concat(action, " because an error occurred: ").concat(zoomErrorMessage);
185
+ errorCode = "ZOOM".concat(status_1).concat(body.code ? "-".concat(body.code) : '');
186
+ throw new ZACCLError_1.default({
187
+ message: errorMessage,
188
+ code: errorCode,
189
+ });
190
+ }
191
+ results = itemKey ? body[itemKey] : body;
192
+ // Update next page token
193
+ nextPageToken = body.next_page_token;
194
+ if (nextPageToken) {
195
+ isPaginated = true;
196
+ }
197
+ // End if not paginated
198
+ if (!isPaginated) {
199
+ return [2 /*return*/, { value: results }];
200
+ }
201
+ /* --------- Paging Handling -------- */
202
+ // Add items to allItems if paginated
203
+ if (Array.isArray(results)) {
204
+ allItems.push.apply(allItems, results);
205
+ }
206
+ // Call onNewPage callback if it exists
207
+ if (onNewPage) {
208
+ onNewPage(results);
209
+ }
210
+ return [2 /*return*/];
164
211
  }
165
- }
166
- errorMessage = "We couldn't ".concat(action, " because an error occurred: ").concat(zoomErrorMessage);
167
- errorCode = "ZOOM".concat(status_1).concat(body.code ? "-".concat(body.code) : '');
168
- throw new ZACCLError_1.default({
169
- message: errorMessage,
170
- code: errorCode,
171
212
  });
172
- }
173
- results = itemKey ? body[itemKey] : body;
174
- // Update next page token
175
- nextPageToken = body.next_page_token;
176
- if (nextPageToken) {
177
- isPaginated = true;
178
- }
179
- // End if not paginated
180
- if (!isPaginated) {
181
- return [2 /*return*/, results];
182
- }
183
- /* --------- Paging Handling -------- */
184
- // Add items to allItems if paginated
185
- if (Array.isArray(results)) {
186
- allItems.push.apply(allItems, results);
187
- }
188
- // Call onNewPage callback if it exists
189
- if (onNewPage) {
190
- onNewPage(results);
191
- }
213
+ };
214
+ _b.label = 1;
215
+ case 1:
216
+ if (!(nextPageToken || isFirstPage)) return [3 /*break*/, 3];
217
+ return [5 /*yield**/, _loop_1()];
218
+ case 2:
219
+ state_1 = _b.sent();
220
+ if (typeof state_1 === "object")
221
+ return [2 /*return*/, state_1.value];
192
222
  return [3 /*break*/, 1];
193
223
  case 3:
194
224
  ;
@@ -1 +1 @@
1
- {"version":3,"file":"genVisitEndpoint.js","sourceRoot":"","sources":["../../../src/shared/helpers/genVisitEndpoint.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"genVisitEndpoint.js","sourceRoot":"","sources":["../../../src/shared/helpers/genVisitEndpoint.ts"],"names":[],"mappings":"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"}
@@ -16,5 +16,6 @@ type VisitEndpointFunc = ((opts: {
16
16
  };
17
17
  itemKey?: string;
18
18
  onNewPage?: (items: any[]) => void;
19
+ minMsBetweenPageRequests?: number;
19
20
  }) => Promise<any>);
20
21
  export default VisitEndpointFunc;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "zaccl",
3
- "version": "4.0.0",
3
+ "version": "4.1.0",
4
4
  "description": "The Zoom App Complete Connection Library, a project that handles everything required to build a zoom-integrated app.",
5
5
  "main": "./lib/index.js",
6
6
  "types": "./lib/index.d.ts",
@@ -37,6 +37,8 @@ class ECatCloudRecording extends EndpointCategory {
37
37
  * associated with the current access)
38
38
  * @param [opts.onNewPage] callback function that is called when a new page of results is received.
39
39
  * The function is passed the new page of results as an argument.
40
+ * @param [opts.minMsBetweenPageRequests] minimum time (in ms) to wait between paginated requests,
41
+ * for custom throttle control
40
42
  * @returns the list of recordings in the account
41
43
  */
42
44
  async listAccountRecordings(
@@ -46,12 +48,14 @@ class ECatCloudRecording extends EndpointCategory {
46
48
  fromDay?: number,
47
49
  accountId?: string,
48
50
  onNewPage?: (recordings: ZoomRecordingInAccount[]) => void,
51
+ minMsBetweenPageRequests?: number,
49
52
  },
50
53
  ): Promise<ZoomRecordingInAccount[]> {
51
54
  // Generate from date
52
55
  const {
53
56
  fromYear,
54
57
  fromMonth,
58
+ minMsBetweenPageRequests,
55
59
  } = opts;
56
60
  const fromMonthPadded = fromMonth < 10 ? `0${fromMonth}` : fromMonth;
57
61
  const fromDay = opts.fromDay ?? 1;
@@ -80,6 +84,7 @@ class ECatCloudRecording extends EndpointCategory {
80
84
  to: toDateString,
81
85
  },
82
86
  onNewPage: opts.onNewPage,
87
+ minMsBetweenPageRequests,
83
88
  itemKey: 'meetings',
84
89
  errorMap: {
85
90
  400: 'Bad request',
@@ -158,7 +163,8 @@ class ECatCloudRecording extends EndpointCategory {
158
163
  * Date needs to be within past 6 months. Time data (hours and seconds)
159
164
  * is discarded
160
165
  * @param [opts.onNewPage] callback function that is called when a new page of results is received.
161
-
166
+ * @param [opts.minMsBetweenPageRequests] minimum time (in ms) to wait between paginated requests,
167
+ * for custom throttle control
162
168
  * @returns List of Zoom Recordings {@link https://marketplace.zoom.us/docs/api-reference/zoom-api/cloud-recording/recordingslist#responses}
163
169
  */
164
170
  async listUserRecordings(
@@ -168,6 +174,7 @@ class ECatCloudRecording extends EndpointCategory {
168
174
  startDate?: (string | Date),
169
175
  endDate?: (string | Date),
170
176
  onNewPage?: (recordings: ZoomMeetingRecordings[]) => void,
177
+ minMsBetweenPageRequests?: number,
171
178
  },
172
179
  ): Promise<ZoomMeetingRecordings[]> {
173
180
  // Destructure arguments
@@ -177,6 +184,7 @@ class ECatCloudRecording extends EndpointCategory {
177
184
  startDate,
178
185
  endDate,
179
186
  onNewPage,
187
+ minMsBetweenPageRequests,
180
188
  } = opts;
181
189
 
182
190
  // Declare default start Date to 1 month before
@@ -211,6 +219,7 @@ class ECatCloudRecording extends EndpointCategory {
211
219
  method: 'GET',
212
220
  params,
213
221
  onNewPage: opts.onNewPage,
222
+ minMsBetweenPageRequests,
214
223
  itemKey: 'meetings',
215
224
  errorMap: {
216
225
  404: {
@@ -20,11 +20,14 @@ class ECatGroup extends EndpointCategory {
20
20
  * @method listGroups
21
21
  * @param [opts] object containing all arguments
22
22
  * @param [opts.onNewPage] callback function that is called when a new page of results is received.
23
+ * @param [opts.minMsBetweenPageRequests] minimum time (in ms) to wait between paginated requests,
24
+ * for custom throttle control
23
25
  * @returns the list of groups in the account
24
26
  */
25
27
  async listGroups(
26
28
  opts: {
27
29
  onNewPage?: (groups: ZoomGroup[]) => void,
30
+ minMsBetweenPageRequests?: number,
28
31
  } = {},
29
32
  ): Promise<ZoomGroup[]> {
30
33
  return this.visitEndpoint({
@@ -43,6 +46,7 @@ class ECatGroup extends EndpointCategory {
43
46
  },
44
47
  itemKey: 'groups',
45
48
  onNewPage: opts.onNewPage,
49
+ minMsBetweenPageRequests: opts.minMsBetweenPageRequests,
46
50
  });
47
51
  }
48
52
 
@@ -55,12 +59,15 @@ class ECatGroup extends EndpointCategory {
55
59
  * @param opts object containing all arguments
56
60
  * @params opts.groupId the group ID of the group of interest
57
61
  * @param [opts.onNewPage] callback function that is called when a new page of results is received.
62
+ * @param [opts.minMsBetweenPageRequests] minimum time (in ms) to wait between paginated requests,
63
+ * for custom throttle control
58
64
  * @returns the list of members in the group
59
65
  */
60
66
  async listGroupMembers(
61
67
  opts: {
62
68
  groupId: string,
63
69
  onNewPage?: (groupMembers: ZoomGroupMember[]) => void,
70
+ minMsBetweenPageRequests?: number,
64
71
  },): Promise<ZoomGroupMember[]> {
65
72
  return this.visitEndpoint({
66
73
  path: `/groups/${opts.groupId}/members`,
@@ -77,6 +84,7 @@ class ECatGroup extends EndpointCategory {
77
84
  },
78
85
  },
79
86
  onNewPage: opts.onNewPage,
87
+ minMsBetweenPageRequests: opts.minMsBetweenPageRequests,
80
88
  });
81
89
  }
82
90
  }
@@ -674,12 +674,15 @@ class ECatMeeting extends EndpointCategory {
674
674
  * @param opts object containing all arguments
675
675
  * @param opts.meetingId the Zoom UUID of the past meeting instance
676
676
  * @param [opts.onNewPage] callback function that is called when a new page of results is received.
677
+ * @param [opts.minMsBetweenPageRequests] minimum time (in ms) to wait between paginated requests,
678
+ * for custom throttle control
677
679
  * @returns list of past meeting participants
678
680
  */
679
681
  async listPastMeetingParticipants(
680
682
  opts: {
681
683
  meetingId: string,
682
684
  onNewPage?: (participants: ZoomPastMeetingParticipant[]) => void,
685
+ minMsBetweenPageRequests?: number,
683
686
  },
684
687
  ): Promise<ZoomPastMeetingParticipant[]> {
685
688
  return this.visitEndpoint({
@@ -691,6 +694,7 @@ class ECatMeeting extends EndpointCategory {
691
694
  },
692
695
  itemKey: 'participants',
693
696
  onNewPage: opts.onNewPage,
697
+ minMsBetweenPageRequests: opts.minMsBetweenPageRequests,
694
698
  errorMap: {
695
699
  400: {
696
700
  200: 'You need a paid account to access the participant list of a past meeting.',
@@ -31,7 +31,8 @@ const genVisitEndpoint = (zoomAPIConfig: ZoomAPIConfig): VisitEndpointFunc => {
31
31
  * @param [opts.onNewPage] callback function that is called when a
32
32
  * new page of results is received
33
33
  * @param [opts.itemKey] the key in the response body where the list of items can be found
34
- * @param [opts.onNewPage] callback function that is called when a new page of results is received
34
+ * @param [opts.minMsBetweenPageRequests] minimum time (in ms) to wait between
35
+ * paginated requests, for custom throttle control
35
36
  * @returns response body
36
37
  */
37
38
  return async (
@@ -50,6 +51,7 @@ const genVisitEndpoint = (zoomAPIConfig: ZoomAPIConfig): VisitEndpointFunc => {
50
51
  params?: { [k: string]: any },
51
52
  itemKey?: string,
52
53
  onNewPage?: (page: any) => void,
54
+ minMsBetweenPageRequests?: number,
53
55
  },
54
56
  ): Promise<any> => {
55
57
  const {
@@ -59,6 +61,7 @@ const genVisitEndpoint = (zoomAPIConfig: ZoomAPIConfig): VisitEndpointFunc => {
59
61
  errorMap,
60
62
  itemKey,
61
63
  onNewPage,
64
+ minMsBetweenPageRequests
62
65
  } = opts;
63
66
  const method = (opts.method ?? 'GET');
64
67
 
@@ -67,6 +70,7 @@ const genVisitEndpoint = (zoomAPIConfig: ZoomAPIConfig): VisitEndpointFunc => {
67
70
  let isFirstPage = true;
68
71
  let isPaginated = false; // Inferred by responses, always starts false
69
72
  const allItems: any[] = [];
73
+ let lastPageRequestTimestamp = 0;
70
74
 
71
75
  // Fetch page by page
72
76
  while (nextPageToken || isFirstPage) {
@@ -75,6 +79,24 @@ const genVisitEndpoint = (zoomAPIConfig: ZoomAPIConfig): VisitEndpointFunc => {
75
79
 
76
80
  /* ---------- Send Request ---------- */
77
81
 
82
+ // If minMsBetweenPageRequests is set, ensure we wait at least that long between requests
83
+ if (minMsBetweenPageRequests) {
84
+ // Check how long since the last request
85
+ const now = Date.now();
86
+ const timeSinceLastRequest = now - lastPageRequestTimestamp;
87
+
88
+ // Wait extra time if we haven't waited long enough yet
89
+ if (timeSinceLastRequest < minMsBetweenPageRequests) {
90
+ await new Promise((resolve) => {
91
+ setTimeout(resolve, minMsBetweenPageRequests - timeSinceLastRequest);
92
+ });
93
+ }
94
+
95
+ // Update timestamp of last page request
96
+ lastPageRequestTimestamp = Date.now();
97
+ }
98
+
99
+ // Send the request
78
100
  const { status, headers, body } = await sendZoomRequest({
79
101
  path,
80
102
  method,
@@ -26,6 +26,8 @@ type VisitEndpointFunc = (
26
26
  itemKey?: string,
27
27
  // Callback function that is called when a new page of results is received (for paginated endpoints)
28
28
  onNewPage?: (items: any[]) => void,
29
+ // Minimum time (in ms) to wait between paginated requests, for custom throttle control (for paginated endpoints)
30
+ minMsBetweenPageRequests?: number,
29
31
  },
30
32
  ) => Promise<any>
31
33
  );