box-node-sdk 1.35.0 → 1.37.2

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.
Files changed (126) hide show
  1. package/CHANGELOG.md +37 -2
  2. package/README.md +1 -1
  3. package/lib/api-request-manager.d.ts +38 -0
  4. package/lib/api-request-manager.js +48 -55
  5. package/lib/api-request-manager.js.map +1 -0
  6. package/lib/api-request.d.ts +141 -0
  7. package/lib/api-request.js +202 -281
  8. package/lib/api-request.js.map +1 -0
  9. package/lib/box-client.d.ts +269 -0
  10. package/lib/box-client.js +551 -713
  11. package/lib/box-client.js.map +1 -0
  12. package/lib/box-node-sdk.d.ts +216 -0
  13. package/lib/box-node-sdk.js +317 -352
  14. package/lib/box-node-sdk.js.map +1 -0
  15. package/lib/chunked-uploader.d.ts +129 -0
  16. package/lib/chunked-uploader.js +287 -358
  17. package/lib/chunked-uploader.js.map +1 -0
  18. package/lib/enterprise-event-stream.d.ts +82 -0
  19. package/lib/enterprise-event-stream.js +189 -203
  20. package/lib/enterprise-event-stream.js.map +1 -0
  21. package/lib/event-stream.d.ts +92 -0
  22. package/lib/event-stream.js +274 -302
  23. package/lib/event-stream.js.map +1 -0
  24. package/lib/managers/collaboration-allowlist.d.ts +137 -0
  25. package/lib/managers/collaboration-allowlist.js +200 -0
  26. package/lib/managers/collaboration-allowlist.js.map +1 -0
  27. package/lib/managers/collaboration-whitelist.d.ts +3 -0
  28. package/lib/managers/collaboration-whitelist.js +8 -222
  29. package/lib/managers/collaboration-whitelist.js.map +1 -0
  30. package/lib/managers/collaborations.d.ts +166 -0
  31. package/lib/managers/collaborations.js +225 -258
  32. package/lib/managers/collaborations.js.map +1 -0
  33. package/lib/managers/collections.d.ts +42 -0
  34. package/lib/managers/collections.js +45 -50
  35. package/lib/managers/collections.js.map +1 -0
  36. package/lib/managers/comments.d.ts +103 -0
  37. package/lib/managers/comments.js +158 -173
  38. package/lib/managers/comments.js.map +1 -0
  39. package/lib/managers/device-pins.d.ts +52 -0
  40. package/lib/managers/device-pins.js +75 -88
  41. package/lib/managers/device-pins.js.map +1 -0
  42. package/lib/managers/enterprise.d.ts +162 -0
  43. package/lib/managers/enterprise.js +168 -199
  44. package/lib/managers/enterprise.js.map +1 -0
  45. package/lib/managers/events.d.ts +177 -0
  46. package/lib/managers/events.js +230 -254
  47. package/lib/managers/events.js.map +1 -0
  48. package/lib/managers/files.d.ts +772 -0
  49. package/lib/managers/files.js +1400 -1602
  50. package/lib/managers/files.js.map +1 -0
  51. package/lib/managers/folders.d.ts +347 -0
  52. package/lib/managers/folders.js +551 -567
  53. package/lib/managers/folders.js.map +1 -0
  54. package/lib/managers/groups.d.ts +202 -0
  55. package/lib/managers/groups.js +238 -287
  56. package/lib/managers/groups.js.map +1 -0
  57. package/lib/managers/legal-hold-policies.d.ts +190 -0
  58. package/lib/managers/legal-hold-policies.js +228 -272
  59. package/lib/managers/legal-hold-policies.js.map +1 -0
  60. package/lib/managers/metadata.d.ts +228 -0
  61. package/lib/managers/metadata.js +265 -328
  62. package/lib/managers/metadata.js.map +1 -0
  63. package/lib/managers/recent-items.d.ts +38 -0
  64. package/lib/managers/recent-items.js +32 -39
  65. package/lib/managers/recent-items.js.map +1 -0
  66. package/lib/managers/retention-policies.d.ts +213 -0
  67. package/lib/managers/retention-policies.js +235 -281
  68. package/lib/managers/retention-policies.js.map +1 -0
  69. package/lib/managers/search.d.ts +82 -0
  70. package/lib/managers/search.js +68 -88
  71. package/lib/managers/search.js.map +1 -0
  72. package/lib/managers/shared-items.d.ts +33 -0
  73. package/lib/managers/shared-items.js +54 -62
  74. package/lib/managers/shared-items.js.map +1 -0
  75. package/lib/managers/storage-policies.d.ts +86 -0
  76. package/lib/managers/storage-policies.js +108 -142
  77. package/lib/managers/storage-policies.js.map +1 -0
  78. package/lib/managers/tasks.d.ts +161 -0
  79. package/lib/managers/tasks.js +219 -260
  80. package/lib/managers/tasks.js.map +1 -0
  81. package/lib/managers/terms-of-service.d.ts +161 -0
  82. package/lib/managers/terms-of-service.js +250 -273
  83. package/lib/managers/terms-of-service.js.map +1 -0
  84. package/lib/managers/trash.d.ts +30 -0
  85. package/lib/managers/trash.js +30 -41
  86. package/lib/managers/trash.js.map +1 -0
  87. package/lib/managers/users.d.ts +131 -0
  88. package/lib/managers/users.js +160 -203
  89. package/lib/managers/users.js.map +1 -0
  90. package/lib/managers/web-links.d.ts +127 -0
  91. package/lib/managers/web-links.js +183 -209
  92. package/lib/managers/web-links.js.map +1 -0
  93. package/lib/managers/webhooks.d.ts +166 -0
  94. package/lib/managers/webhooks.js +312 -305
  95. package/lib/managers/webhooks.js.map +1 -0
  96. package/lib/sessions/anonymous-session.d.ts +69 -0
  97. package/lib/sessions/anonymous-session.js +88 -102
  98. package/lib/sessions/anonymous-session.js.map +1 -0
  99. package/lib/sessions/app-auth-session.d.ts +92 -0
  100. package/lib/sessions/app-auth-session.js +140 -160
  101. package/lib/sessions/app-auth-session.js.map +1 -0
  102. package/lib/sessions/basic-session.d.ts +56 -0
  103. package/lib/sessions/basic-session.js +40 -50
  104. package/lib/sessions/basic-session.js.map +1 -0
  105. package/lib/sessions/persistent-session.d.ts +96 -0
  106. package/lib/sessions/persistent-session.js +191 -211
  107. package/lib/sessions/persistent-session.js.map +1 -0
  108. package/lib/token-manager.d.ts +191 -0
  109. package/lib/token-manager.js +390 -465
  110. package/lib/token-manager.js.map +1 -0
  111. package/lib/util/config.d.ts +86 -0
  112. package/lib/util/config.js +124 -152
  113. package/lib/util/config.js.map +1 -0
  114. package/lib/util/errors.d.ts +50 -0
  115. package/lib/util/errors.js +134 -145
  116. package/lib/util/errors.js.map +1 -0
  117. package/lib/util/exponential-backoff.d.ts +11 -0
  118. package/lib/util/exponential-backoff.js +10 -22
  119. package/lib/util/exponential-backoff.js.map +1 -0
  120. package/lib/util/paging-iterator.d.ts +53 -0
  121. package/lib/util/paging-iterator.js +202 -218
  122. package/lib/util/paging-iterator.js.map +1 -0
  123. package/lib/util/url-path.d.ts +16 -0
  124. package/lib/util/url-path.js +20 -35
  125. package/lib/util/url-path.js.map +1 -0
  126. package/package.json +24 -9
@@ -1,279 +1,255 @@
1
+ "use strict";
1
2
  /**
2
3
  * @fileoverview Manager for the Box Events Resource
3
4
  */
4
-
5
- 'use strict';
6
-
7
-
5
+ var __importDefault = (this && this.__importDefault) || function (mod) {
6
+ return (mod && mod.__esModule) ? mod : { "default": mod };
7
+ };
8
8
  // ------------------------------------------------------------------------------
9
- // Typedefs and Callbacks
9
+ // Requirements
10
10
  // ------------------------------------------------------------------------------
11
-
11
+ var bluebird_1 = require("bluebird");
12
+ var http_status_1 = __importDefault(require("http-status"));
13
+ var enterprise_event_stream_1 = __importDefault(require("../enterprise-event-stream"));
14
+ var event_stream_1 = __importDefault(require("../event-stream"));
15
+ var errors_1 = __importDefault(require("../util/errors"));
16
+ var url_path_1 = __importDefault(require("../util/url-path"));
17
+ // -----------------------------------------------------------------------------
18
+ // Typedefs
19
+ // -----------------------------------------------------------------------------
12
20
  /**
13
- * An event type constant
14
- * @typedef {string} EventType
21
+ * Enum of enterprise event types
22
+ *
23
+ * @readonly
24
+ * @enum {EventType}
15
25
  */
16
-
17
- // ------------------------------------------------------------------------------
18
- // Requirements
19
- // ------------------------------------------------------------------------------
20
-
21
- var urlPath = require('../util/url-path'),
22
- errors = require('../util/errors'),
23
- EventStream = require('../event-stream'),
24
- EnterpriseEventStream = require('../enterprise-event-stream'),
25
- Promise = require('bluebird'),
26
- httpStatusCodes = require('http-status');
27
-
28
-
26
+ var EventType;
27
+ (function (EventType) {
28
+ EventType["ADD_DEVICE_ASSOCIATION"] = "ADD_DEVICE_ASSOCIATION";
29
+ EventType["ADD_LOGIN_ACTIVITY_DEVICE"] = "ADD_LOGIN_ACTIVITY_DEVICE";
30
+ EventType["ADMIN_LOGIN"] = "ADMIN_LOGIN";
31
+ EventType["APPLICATION_PUBLIC_KEY_ADDED"] = "APPLICATION_PUBLIC_KEY_ADDED";
32
+ EventType["APPLICATION_PUBLIC_KEY_DELETED"] = "APPLICATION_PUBLIC_KEY_DELETED";
33
+ EventType["CHANGE_ADMIN_ROLE"] = "CHANGE_ADMIN_ROLE";
34
+ EventType["COLLABORATION_ACCEPT"] = "COLLABORATION_ACCEPT";
35
+ EventType["COLLABORATION_EXPIRATION"] = "COLLABORATION_EXPIRATION";
36
+ EventType["COLLABORATION_INVITE"] = "COLLABORATION_INVITE";
37
+ EventType["COLLABORATION_REMOVE"] = "COLLABORATION_REMOVE";
38
+ EventType["COLLABORATION_ROLE_CHANGE"] = "COLLABORATION_ROLE_CHANGE";
39
+ EventType["COMMENT_CREATE"] = "COMMENT_CREATE";
40
+ EventType["COMMENT_DELETE"] = "COMMENT_DELETE";
41
+ EventType["COMMENT_EDIT"] = "COMMENT_EDIT";
42
+ EventType["CONTENT_ACCESS"] = "CONTENT_ACCESS";
43
+ EventType["CONTENT_WORKFLOW_AUTOMATION_ADD"] = "CONTENT_WORKFLOW_AUTOMATION_ADD";
44
+ EventType["CONTENT_WORKFLOW_UPLOAD_POLICY_VIOLATION"] = "CONTENT_WORKFLOW_UPLOAD_POLICY_VIOLATION";
45
+ EventType["COPY"] = "COPY";
46
+ EventType["DELETE"] = "DELETE";
47
+ EventType["DELETE_USER"] = "DELETE_USER";
48
+ EventType["DOWNLOAD"] = "DOWNLOAD";
49
+ EventType["EDIT"] = "EDIT";
50
+ EventType["EDIT_USER"] = "EDIT_USER";
51
+ EventType["EMAIL_ALIAS_CONFIRM"] = "EMAIL_ALIAS_CONFIRM";
52
+ EventType["ENABLE_TWO_FACTOR_AUTH"] = "ENABLE_TWO_FACTOR_AUTH";
53
+ EventType["ENTERPRISE_APP_AUTHORIZATION_DELETE"] = "ENTERPRISE_APP_AUTHORIZATION_DELETE";
54
+ EventType["FAILED_LOGIN"] = "FAILED_LOGIN";
55
+ EventType["FILE_MARKED_MALICIOUS"] = "FILE_MARKED_MALICIOUS";
56
+ EventType["FILE_WATERMARKED_DOWNLOAD"] = "FILE_WATERMARKED_DOWNLOAD";
57
+ EventType["GROUP_ADD_FILE"] = "GROUP_ADD_FILE";
58
+ EventType["GROUP_ADD_FOLDER"] = "GROUP_ADD_FOLDER";
59
+ EventType["GROUP_ADD_ITEM"] = "GROUP_ADD_ITEM";
60
+ EventType["GROUP_ADD_USER"] = "GROUP_ADD_USER";
61
+ EventType["GROUP_CREATION"] = "GROUP_CREATION";
62
+ EventType["GROUP_DELETION"] = "GROUP_DELETION";
63
+ EventType["GROUP_EDITED"] = "GROUP_EDITED";
64
+ EventType["GROUP_REMOVE_FILE"] = "GROUP_REMOVE_FILE";
65
+ EventType["GROUP_REMOVE_FOLDER"] = "GROUP_REMOVE_FOLDER";
66
+ EventType["GROUP_REMOVE_USER"] = "GROUP_REMOVE_USER";
67
+ EventType["ITEM_MODIFY"] = "ITEM_MODIFY";
68
+ EventType["ITEM_OPEN"] = "ITEM_OPEN";
69
+ EventType["ITEM_SHARED_UPDATE"] = "ITEM_SHARED_UPDATE";
70
+ EventType["ITEM_SYNC"] = "ITEM_SYNC";
71
+ EventType["ITEM_UNSYNC"] = "ITEM_UNSYNC";
72
+ EventType["LOCK"] = "LOCK";
73
+ EventType["LOGIN"] = "LOGIN";
74
+ EventType["METADATA_INSTANCE_CREATE"] = "METADATA_INSTANCE_CREATE";
75
+ EventType["METADATA_INSTANCE_DELETE"] = "METADATA_INSTANCE_DELETE";
76
+ EventType["METADATA_INSTANCE_UPDATE"] = "METADATA_INSTANCE_UPDATE";
77
+ EventType["METADATA_TEMPLATE_CREATE"] = "METADATA_TEMPLATE_CREATE";
78
+ EventType["METADATA_TEMPLATE_UPDATE"] = "METADATA_TEMPLATE_UPDATE";
79
+ EventType["MOVE"] = "MOVE";
80
+ EventType["NEW_USER"] = "NEW_USER";
81
+ EventType["PREVIEW"] = "PREVIEW";
82
+ EventType["REMOVE_DEVICE_ASSOCIATION"] = "REMOVE_DEVICE_ASSOCIATION";
83
+ EventType["REMOVE_LOGIN_ACTIVITY_DEVICE"] = "REMOVE_LOGIN_ACTIVITY_DEVICE";
84
+ EventType["RENAME"] = "RENAME";
85
+ EventType["SHARE"] = "SHARE";
86
+ EventType["SHARE_EXPIRATION"] = "SHARE_EXPIRATION";
87
+ EventType["STORAGE_EXPIRATION"] = "STORAGE_EXPIRATION";
88
+ EventType["TASK_ASSIGNMENT_CREATE"] = "TASK_ASSIGNMENT_CREATE";
89
+ EventType["TASK_ASSIGNMENT_UPDATE"] = "TASK_ASSIGNMENT_UPDATE";
90
+ EventType["TASK_CREATE"] = "TASK_CREATE";
91
+ EventType["TERMS_OF_SERVICE_AGREE"] = "TERMS_OF_SERVICE_AGREE";
92
+ EventType["TERMS_OF_SERVICE_REJECT"] = "TERMS_OF_SERVICE_REJECT";
93
+ EventType["UNDELETE"] = "UNDELETE";
94
+ EventType["UNLOCK"] = "UNLOCK";
95
+ EventType["UNSHARE"] = "UNSHARE";
96
+ EventType["UPDATE_COLLABORATION_EXPIRATION"] = "UPDATE_COLLABORATION_EXPIRATION";
97
+ EventType["UPDATE_SHARE_EXPIRATION"] = "UPDATE_SHARE_EXPIRATION";
98
+ EventType["UPLOAD"] = "UPLOAD";
99
+ EventType["WATERMARK_LABEL_CREATE"] = "WATERMARK_LABEL_CREATE";
100
+ EventType["WATERMARK_LABEL_DELETE"] = "WATERMARK_LABEL_DELETE";
101
+ })(EventType || (EventType = {}));
29
102
  // ------------------------------------------------------------------------------
30
103
  // Private
31
104
  // ------------------------------------------------------------------------------
32
-
33
105
  // Base path for all files endpoints
34
106
  var BASE_PATH = '/events';
35
-
36
107
  /** @const {string} */
37
108
  var CURRENT_STREAM_POSITION = 'now';
38
-
39
109
  // ------------------------------------------------------------------------------
40
110
  // Public
41
111
  // ------------------------------------------------------------------------------
42
-
43
112
  /**
44
113
  * Simple manager for interacting with all 'Events' endpoints and actions.
45
114
  *
46
115
  * @param {BoxClient} client The Box API Client that is responsible for making calls to the API
47
116
  * @constructor
48
117
  */
49
- function Events(client) {
50
- // Attach the client, for making API calls
51
- this.client = client;
52
- }
53
-
118
+ var Events = /** @class */ (function () {
119
+ function Events(client) {
120
+ // Attach the client, for making API calls
121
+ this.client = client;
122
+ }
123
+ /**
124
+ * Get the current stream position.
125
+ *
126
+ * API Endpoint: '/events'
127
+ * Method: GET
128
+ *
129
+ * @param {Function} [callback] Passed the current stream position if successful
130
+ * @returns {Promise<string>} A promise resolving to the stream position
131
+ */
132
+ Events.prototype.getCurrentStreamPosition = function (callback) {
133
+ var params = {
134
+ qs: {
135
+ stream_position: CURRENT_STREAM_POSITION,
136
+ },
137
+ };
138
+ var apiPath = url_path_1.default(BASE_PATH);
139
+ return this.client
140
+ .get(apiPath, params)
141
+ .then(function (response /* FIXME */) {
142
+ if (response.statusCode !== http_status_1.default.OK) {
143
+ throw errors_1.default.buildUnexpectedResponseError(response);
144
+ }
145
+ return response.body.next_stream_position;
146
+ })
147
+ .asCallback(callback);
148
+ };
149
+ /**
150
+ * Get a chunk of events
151
+ *
152
+ * API Endpoint: '/events'
153
+ * Method: GET
154
+ *
155
+ * @param {Object} [options] - Additional options for the request. Can be left null in most cases.
156
+ * @param {Function} [callback] Passed the current stream position if successful
157
+ * @returns {Promise<Object>} A promise resolving to the collection of events
158
+ */
159
+ Events.prototype.get = function (options, callback) {
160
+ var params = {
161
+ qs: options,
162
+ };
163
+ var apiPath = url_path_1.default(BASE_PATH);
164
+ return this.client.wrapWithDefaultHandler(this.client.get)(apiPath, params, callback);
165
+ };
166
+ /**
167
+ * Get information for long-polling until new events are available
168
+ *
169
+ * API Endpoint: '/events'
170
+ * Method: OPTIONS
171
+ *
172
+ * @param {Function} [callback] Passed the long poll info if successful
173
+ * @returns {Promise<Object>} A promise resolving to the long poll info
174
+ */
175
+ Events.prototype.getLongPollInfo = function (callback) {
176
+ var apiPath = url_path_1.default(BASE_PATH);
177
+ return this.client
178
+ .options(apiPath, {})
179
+ .then(function (response /* FIXME */) {
180
+ if (response.statusCode !== http_status_1.default.OK) {
181
+ throw errors_1.default.buildUnexpectedResponseError(response);
182
+ }
183
+ var longpollInfo = response.body.entries.find(function (entry /* FIXME */) { return entry.type === 'realtime_server'; });
184
+ if (!longpollInfo) {
185
+ throw errors_1.default.buildResponseError('No valid long poll server specified', response);
186
+ }
187
+ return longpollInfo;
188
+ })
189
+ .asCallback(callback);
190
+ };
191
+ /**
192
+ * Create a stream of events, using the long-poll API to wait for new events.
193
+ *
194
+ * API Endpoint: '/events'
195
+ * Method: OPTIONS
196
+ *
197
+ * @param {string} [streamPosition] Starting stream position
198
+ * @param {Object} [options] Optional parameters for the event stream
199
+ * @param {int} [options.retryDelay=1000] Number of ms to wait before retrying after an error
200
+ * @param {int} [options.deduplicationFilterSize=5000] Number of IDs to track for deduplication
201
+ * @param {int} [options.fetchInterval=1000] Minimunm number of ms between calls for more events
202
+ * @param {Function} [callback] Passed the events stream if successful
203
+ * @returns {Promise<EventStream>} A promise resolving to the event stream
204
+ */
205
+ Events.prototype.getEventStream = function (streamPosition, options, callback) {
206
+ var self = this;
207
+ if (typeof streamPosition === 'string') {
208
+ if (typeof options === 'function') {
209
+ callback = options;
210
+ options = {};
211
+ }
212
+ return bluebird_1.Promise.resolve(new event_stream_1.default(self.client, streamPosition, options)).asCallback(callback);
213
+ }
214
+ // Fix up optional arguments
215
+ callback = options /* FIXME */;
216
+ options = streamPosition;
217
+ if (typeof options === 'function') {
218
+ callback = options;
219
+ options = {};
220
+ }
221
+ return this.getCurrentStreamPosition()
222
+ .then(function (currentStreamPosition /* FIXME */) {
223
+ return new event_stream_1.default(self.client, currentStreamPosition, options);
224
+ })
225
+ .asCallback(callback);
226
+ };
227
+ /**
228
+ * Create a stream of enterprise events.
229
+ *
230
+ * By default, the stream starts from the current time.
231
+ * Pass 'startDate' to start from a specific time.
232
+ * Pass 'streamPosition' to start from a previous stream position, or '0' for all available past events (~1 year).
233
+ * Once the stream catches up to the current time, it will begin polling every 'pollingInterval' seconds.
234
+ * If 'pollingInterval' = 0, then the stream will end when it catches up to the current time (no polling).
235
+ *
236
+ * @param {Object} [options] - Options
237
+ * @param {string} [options.streamPosition] - The stream position to start from (pass '0' for all past events)
238
+ * @param {string} [options.startDate] - The date to start from
239
+ * @param {string} [options.endDate] - The date to end at
240
+ * @param {EventType[]} [options.eventTypeFilter] - Array of event types to return
241
+ * @param {int} [options.pollingInterval=60] - Polling interval (in seconds). Pass 0 for no polling.
242
+ * @param {int} [options.chunkSize=500] - Number of events to fetch per call (max = 500)
243
+ * @param {Function} [callback] Passed the events stream if successful
244
+ * @returns {Promise<EnterpriseEventStream>} A promise resolving to the enterprise event stream
245
+ */
246
+ Events.prototype.getEnterpriseEventStream = function (options, callback) {
247
+ var self = this;
248
+ return bluebird_1.Promise.resolve(new enterprise_event_stream_1.default(self.client, options)).asCallback(callback);
249
+ };
250
+ return Events;
251
+ }());
54
252
  Events.prototype.CURRENT_STREAM_POSITION = CURRENT_STREAM_POSITION;
55
-
56
- /**
57
- * Get the current stream position.
58
- *
59
- * API Endpoint: '/events'
60
- * Method: GET
61
- *
62
- * @param {Function} [callback] Passed the current stream position if successful
63
- * @returns {Promise<string>} A promise resolving to the stream position
64
- */
65
- Events.prototype.getCurrentStreamPosition = function(callback) {
66
- var params = {
67
- qs: {
68
- stream_position: CURRENT_STREAM_POSITION
69
- }
70
- };
71
- var apiPath = urlPath(BASE_PATH);
72
- return this.client.get(apiPath, params)
73
- .then(response => {
74
-
75
- if (response.statusCode !== httpStatusCodes.OK) {
76
- throw errors.buildUnexpectedResponseError(response);
77
- }
78
-
79
- return response.body.next_stream_position;
80
- })
81
- .asCallback(callback);
82
- };
83
-
84
- /**
85
- * Get a chunk of events
86
- *
87
- * API Endpoint: '/events'
88
- * Method: GET
89
- *
90
- * @param {Object} [options] - Additional options for the request. Can be left null in most cases.
91
- * @param {Function} [callback] Passed the current stream position if successful
92
- * @returns {Promise<Object>} A promise resolving to the collection of events
93
- */
94
- Events.prototype.get = function(options, callback) {
95
-
96
- var params = {
97
- qs: options
98
- };
99
- var apiPath = urlPath(BASE_PATH);
100
- return this.client.wrapWithDefaultHandler(this.client.get)(apiPath, params, callback);
101
- };
102
-
103
- /**
104
- * Get information for long-polling until new events are available
105
- *
106
- * API Endpoint: '/events'
107
- * Method: OPTIONS
108
- *
109
- * @param {Function} [callback] Passed the long poll info if successful
110
- * @returns {Promise<Object>} A promise resolving to the long poll info
111
- */
112
- Events.prototype.getLongPollInfo = function(callback) {
113
-
114
- var apiPath = urlPath(BASE_PATH);
115
- return this.client.options(apiPath, {})
116
- .then(response => {
117
-
118
- if (response.statusCode !== httpStatusCodes.OK) {
119
- throw errors.buildUnexpectedResponseError(response);
120
- }
121
-
122
- var longpollInfo = response.body.entries.find(entry => entry.type === 'realtime_server');
123
-
124
- if (!longpollInfo) {
125
- throw errors.buildResponseError('No valid long poll server specified', response);
126
- }
127
-
128
- return longpollInfo;
129
- })
130
- .asCallback(callback);
131
- };
132
-
133
- /**
134
- * Create a stream of events, using the long-poll API to wait for new events.
135
- *
136
- * API Endpoint: '/events'
137
- * Method: OPTIONS
138
- *
139
- * @param {string} [streamPosition] Starting stream position
140
- * @param {Object} [options] Optional parameters for the event stream
141
- * @param {int} [options.retryDelay=1000] Number of ms to wait before retrying after an error
142
- * @param {int} [options.deduplicationFilterSize=5000] Number of IDs to track for deduplication
143
- * @param {int} [options.fetchInterval=1000] Minimunm number of ms between calls for more events
144
- * @param {Function} [callback] Passed the events stream if successful
145
- * @returns {Promise<EventStream>} A promise resolving to the event stream
146
- */
147
- Events.prototype.getEventStream = function(streamPosition, options, callback) {
148
-
149
- var self = this;
150
- if (typeof streamPosition === 'string') {
151
-
152
- if (typeof options === 'function') {
153
- callback = options;
154
- options = {};
155
- }
156
-
157
- return Promise.resolve(new EventStream(self.client, streamPosition, options)).asCallback(callback);
158
- }
159
-
160
- // Fix up optional arguments
161
- callback = options;
162
- options = streamPosition;
163
- if (typeof options === 'function') {
164
- callback = options;
165
- options = {};
166
- }
167
-
168
- return this.getCurrentStreamPosition()
169
- .then(currentStreamPosition => new EventStream(self.client, currentStreamPosition, options))
170
- .asCallback(callback);
171
- };
172
-
173
- /**
174
- * Create a stream of enterprise events.
175
- *
176
- * By default, the stream starts from the current time.
177
- * Pass 'startDate' to start from a specific time.
178
- * Pass 'streamPosition' to start from a previous stream position, or '0' for all available past events (~1 year).
179
- * Once the stream catches up to the current time, it will begin polling every 'pollingInterval' seconds.
180
- * If 'pollingInterval' = 0, then the stream will end when it catches up to the current time (no polling).
181
- *
182
- * @param {Object} [options] - Options
183
- * @param {string} [options.streamPosition] - The stream position to start from (pass '0' for all past events)
184
- * @param {string} [options.startDate] - The date to start from
185
- * @param {string} [options.endDate] - The date to end at
186
- * @param {EventType[]} [options.eventTypeFilter] - Array of event types to return
187
- * @param {int} [options.pollingInterval=60] - Polling interval (in seconds). Pass 0 for no polling.
188
- * @param {int} [options.chunkSize=500] - Number of events to fetch per call (max = 500)
189
- * @param {Function} [callback] Passed the events stream if successful
190
- * @returns {Promise<EnterpriseEventStream>} A promise resolving to the enterprise event stream
191
- */
192
- Events.prototype.getEnterpriseEventStream = function(options, callback) {
193
- var self = this;
194
- return Promise.resolve(new EnterpriseEventStream(self.client, options)).asCallback(callback);
195
- };
196
-
197
- /**
198
- * Enum of enterprise event types
199
- *
200
- * @readonly
201
- * @enum {EventType}
202
- */
203
- Events.prototype.enterpriseEventTypes = Object.freeze({
204
- ADD_DEVICE_ASSOCIATION: 'ADD_DEVICE_ASSOCIATION',
205
- ADD_LOGIN_ACTIVITY_DEVICE: 'ADD_LOGIN_ACTIVITY_DEVICE',
206
- ADMIN_LOGIN: 'ADMIN_LOGIN',
207
- APPLICATION_PUBLIC_KEY_ADDED: 'APPLICATION_PUBLIC_KEY_ADDED',
208
- APPLICATION_PUBLIC_KEY_DELETED: 'APPLICATION_PUBLIC_KEY_DELETED',
209
- CHANGE_ADMIN_ROLE: 'CHANGE_ADMIN_ROLE',
210
- COLLABORATION_ACCEPT: 'COLLABORATION_ACCEPT',
211
- COLLABORATION_EXPIRATION: 'COLLABORATION_EXPIRATION',
212
- COLLABORATION_INVITE: 'COLLABORATION_INVITE',
213
- COLLABORATION_REMOVE: 'COLLABORATION_REMOVE',
214
- COLLABORATION_ROLE_CHANGE: 'COLLABORATION_ROLE_CHANGE',
215
- COMMENT_CREATE: 'COMMENT_CREATE',
216
- COMMENT_DELETE: 'COMMENT_DELETE',
217
- COMMENT_EDIT: 'COMMENT_EDIT',
218
- CONTENT_ACCESS: 'CONTENT_ACCESS',
219
- CONTENT_WORKFLOW_AUTOMATION_ADD: 'CONTENT_WORKFLOW_AUTOMATION_ADD',
220
- CONTENT_WORKFLOW_UPLOAD_POLICY_VIOLATION: 'CONTENT_WORKFLOW_UPLOAD_POLICY_VIOLATION',
221
- COPY: 'COPY',
222
- DELETE: 'DELETE',
223
- DELETE_USER: 'DELETE_USER',
224
- DOWNLOAD: 'DOWNLOAD',
225
- EDIT: 'EDIT',
226
- EDIT_USER: 'EDIT_USER',
227
- EMAIL_ALIAS_CONFIRM: 'EMAIL_ALIAS_CONFIRM',
228
- ENABLE_TWO_FACTOR_AUTH: 'ENABLE_TWO_FACTOR_AUTH',
229
- ENTERPRISE_APP_AUTHORIZATION_DELETE: 'ENTERPRISE_APP_AUTHORIZATION_DELETE',
230
- FAILED_LOGIN: 'FAILED_LOGIN',
231
- FILE_MARKED_MALICIOUS: 'FILE_MARKED_MALICIOUS',
232
- FILE_WATERMARKED_DOWNLOAD: 'FILE_WATERMARKED_DOWNLOAD',
233
- GROUP_ADD_FILE: 'GROUP_ADD_FILE',
234
- GROUP_ADD_FOLDER: 'GROUP_ADD_FOLDER',
235
- GROUP_ADD_ITEM: 'GROUP_ADD_ITEM',
236
- GROUP_ADD_USER: 'GROUP_ADD_USER',
237
- GROUP_CREATION: 'GROUP_CREATION',
238
- GROUP_DELETION: 'GROUP_DELETION',
239
- GROUP_EDITED: 'GROUP_EDITED',
240
- GROUP_REMOVE_FILE: 'GROUP_REMOVE_FILE',
241
- GROUP_REMOVE_FOLDER: 'GROUP_REMOVE_FOLDER',
242
- GROUP_REMOVE_USER: 'GROUP_REMOVE_USER',
243
- ITEM_MODIFY: 'ITEM_MODIFY',
244
- ITEM_OPEN: 'ITEM_OPEN',
245
- ITEM_SHARED_UPDATE: 'ITEM_SHARED_UPDATE',
246
- ITEM_SYNC: 'ITEM_SYNC',
247
- ITEM_UNSYNC: 'ITEM_UNSYNC',
248
- LOCK: 'LOCK',
249
- LOGIN: 'LOGIN',
250
- METADATA_INSTANCE_CREATE: 'METADATA_INSTANCE_CREATE',
251
- METADATA_INSTANCE_DELETE: 'METADATA_INSTANCE_DELETE',
252
- METADATA_INSTANCE_UPDATE: 'METADATA_INSTANCE_UPDATE',
253
- METADATA_TEMPLATE_CREATE: 'METADATA_TEMPLATE_CREATE',
254
- METADATA_TEMPLATE_UPDATE: 'METADATA_TEMPLATE_UPDATE',
255
- MOVE: 'MOVE',
256
- NEW_USER: 'NEW_USER',
257
- PREVIEW: 'PREVIEW',
258
- REMOVE_DEVICE_ASSOCIATION: 'REMOVE_DEVICE_ASSOCIATION',
259
- REMOVE_LOGIN_ACTIVITY_DEVICE: 'REMOVE_LOGIN_ACTIVITY_DEVICE',
260
- RENAME: 'RENAME',
261
- SHARE: 'SHARE',
262
- SHARE_EXPIRATION: 'SHARE_EXPIRATION',
263
- STORAGE_EXPIRATION: 'STORAGE_EXPIRATION',
264
- TASK_ASSIGNMENT_CREATE: 'TASK_ASSIGNMENT_CREATE',
265
- TASK_ASSIGNMENT_UPDATE: 'TASK_ASSIGNMENT_UPDATE',
266
- TASK_CREATE: 'TASK_CREATE',
267
- TERMS_OF_SERVICE_AGREE: 'TERMS_OF_SERVICE_AGREE',
268
- TERMS_OF_SERVICE_REJECT: 'TERMS_OF_SERVICE_REJECT',
269
- UNDELETE: 'UNDELETE',
270
- UNLOCK: 'UNLOCK',
271
- UNSHARE: 'UNSHARE',
272
- UPDATE_COLLABORATION_EXPIRATION: 'UPDATE_COLLABORATION_EXPIRATION',
273
- UPDATE_SHARE_EXPIRATION: 'UPDATE_SHARE_EXPIRATION',
274
- UPLOAD: 'UPLOAD',
275
- WATERMARK_LABEL_CREATE: 'WATERMARK_LABEL_CREATE',
276
- WATERMARK_LABEL_DELETE: 'WATERMARK_LABEL_DELETE'
277
- });
278
-
253
+ Events.prototype.enterpriseEventTypes = EventType;
279
254
  module.exports = Events;
255
+ //# sourceMappingURL=events.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"events.js","sourceRoot":"","sources":["../../src/managers/events.ts"],"names":[],"mappings":"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"}