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
@@ -0,0 +1 @@
1
+ {"version":3,"file":"token-manager.js","sourceRoot":"","sources":["../src/token-manager.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,86 @@
1
+ /**
2
+ * @fileoverview Configuration Object
3
+ */
4
+ /// <reference types="node" />
5
+ /**
6
+ * Configuration for App Auth
7
+ * @typedef {Object} AppAuthConfig
8
+ * @property {string} keyID The ID of the public key used for app auth
9
+ * @property {string|Buffer} privateKey The private key used for app auth
10
+ * @property {string} passphrase The passphrase associated with the private key
11
+ * @property {string} [algorithm=RS256] The signing algorithm to use, "RS256", "RS384", or "RS512"
12
+ * @property {int} [expirationTime=30] Number of seconds the JWT should live for
13
+ * @property {boolean} [verifyTimestamp=false] Whether the timestamp when the auth token is created should be validated
14
+ */
15
+ declare type AppAuthConfig = {
16
+ keyID: string;
17
+ privateKey: string | Buffer;
18
+ passphrase: string;
19
+ algorithm: 'RS256' | 'RS384' | 'RS512';
20
+ expirationTime: number;
21
+ verifyTimestamp: boolean;
22
+ };
23
+ /**
24
+ * Configuration settings used to initialize and customize the SDK
25
+ *
26
+ * @typedef {Object} UserConfigurationOptions
27
+ * @property {string} clientID Client ID of your Box Application
28
+ * @property {string} clientSecret Client secret of your Box Application
29
+ * @property {string} [apiRootURL] The root URL to Box [Default: 'https://api.box.com']
30
+ * @property {string} [uploadAPIRootURL] The root URL to Box for uploads [Default: 'https://upload.box.com/api']
31
+ * @property {string} [authorizeRootURL] The root URL for the authorization screen [Default: 'https://account.box.com/api']
32
+ * @property {int} [uploadRequestTimeoutMS] Timeout after which an upload request is aborted [Default: 60000]
33
+ * @property {int} [retryIntervalMS] Time between auto-retries of the API call on a temp failure [Default: 2000]
34
+ * @property {int} [numMaxRetries] Max # of times a temporarily-failed request should be retried before propagating a permanent failure [Default: 5]
35
+ * @property {int} [expiredBufferMS] Time before expiration, in milliseconds, when we begin to treat tokens as expired [Default: 3 min.]
36
+ * @property {Object} [request] Request options
37
+ * @property {boolean} [request.strictSSL] Set to false to disable strict SSL checking, which allows using Dev APIs [Default: true]
38
+ * @property {?AppAuthConfig} appAuth Optional configuration for App Auth
39
+ */
40
+ declare type UserConfigurationOptions = {
41
+ clientID: string;
42
+ clientSecret: string;
43
+ apiRootURL: string;
44
+ uploadAPIRootURL: string;
45
+ authorizeRootURL: string;
46
+ uploadRequestTimeoutMS: number;
47
+ retryIntervalMS: number;
48
+ numMaxRetries: number;
49
+ expiredBufferMS: number;
50
+ request: {
51
+ agentClass: any;
52
+ agentOptions: any;
53
+ strictSSL: boolean;
54
+ };
55
+ appAuth?: AppAuthConfig;
56
+ proxy?: {
57
+ url: string;
58
+ username: string;
59
+ password: string;
60
+ };
61
+ };
62
+ /**
63
+ * A Config Object holds the configuration options of the current setup. These are all
64
+ * customizable by the user, and will default if no value is specified in the given params
65
+ * object. The object is frozen on initialization, so that no values can be changed after
66
+ * setup.
67
+ *
68
+ * @param {UserConfigurationOptions} params - The config options set by the user
69
+ * @constructor
70
+ */
71
+ declare class Config {
72
+ _params: Required<UserConfigurationOptions>;
73
+ [key: string]: any;
74
+ constructor(params: UserConfigurationOptions);
75
+ /**
76
+ * Extend the current config into a new config with new params overriding old ones
77
+ * @param {UserConfigurationOptions} params The override options
78
+ * @returns {Config} The extended configuration
79
+ */
80
+ extend(params: UserConfigurationOptions): Config;
81
+ }
82
+ /**
83
+ * @module box-node-sdk/lib/util/config
84
+ * @see {@Link Config}
85
+ */
86
+ export = Config;
@@ -1,103 +1,85 @@
1
+ "use strict";
1
2
  /**
2
3
  * @fileoverview Configuration Object
3
4
  */
4
-
5
- 'use strict';
6
-
5
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
8
+ }) : (function(o, m, k, k2) {
9
+ if (k2 === undefined) k2 = k;
10
+ o[k2] = m[k];
11
+ }));
12
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
13
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
14
+ }) : function(o, v) {
15
+ o["default"] = v;
16
+ });
17
+ var __importStar = (this && this.__importStar) || function (mod) {
18
+ if (mod && mod.__esModule) return mod;
19
+ var result = {};
20
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
21
+ __setModuleDefault(result, mod);
22
+ return result;
23
+ };
24
+ var assert = require("assert");
25
+ var https = __importStar(require("https"));
26
+ var url = __importStar(require("url"));
27
+ var ProxyAgent = require("proxy-agent");
7
28
  // ------------------------------------------------------------------------------
8
29
  // Requirements
9
30
  // ------------------------------------------------------------------------------
10
- var assert = require('assert'),
11
- https = require('https'),
12
- merge = require('merge-options'),
13
- sdkVersion = require('../../package.json').version,
14
- ProxyAgent = require('proxy-agent'),
15
- url = require('url');
16
-
31
+ var merge = require('merge-options'), sdkVersion = require('../../package.json').version;
17
32
  // ------------------------------------------------------------------------------
18
33
  // Private
19
34
  // ------------------------------------------------------------------------------
20
-
21
35
  var nodeVersion = process.version;
22
-
23
- /**
24
- * Configuration for App Auth
25
- * @typedef {Object} AppAuthConfig
26
- * @property {string} keyID The ID of the public key used for app auth
27
- * @property {string|Buffer} privateKey The private key used for app auth
28
- * @property {string} passphrase The passphrase associated with the private key
29
- * @property {string} [algorithm=RS256] The signing algorithm to use, "RS256", "RS384", or "RS512"
30
- * @property {int} [expirationTime=30] Number of seconds the JWT should live for
31
- * @property {boolean} [verifyTimestamp=false] Whether the timestamp when the auth token is created should be validated
32
- */
33
-
34
- /**
35
- * Configuration settings used to initialize and customize the SDK
36
- *
37
- * @typedef {Object} UserConfigurationOptions
38
- * @property {string} clientID Client ID of your Box Application
39
- * @property {string} clientSecret Client secret of your Box Application
40
- * @property {string} [apiRootURL] The root URL to Box [Default: 'https://api.box.com']
41
- * @property {string} [uploadAPIRootURL] The root URL to Box for uploads [Default: 'https://upload.box.com/api']
42
- * @property {string} [authorizeRootURL] The root URL for the authorization screen [Default: 'https://account.box.com/api']
43
- * @property {int} [uploadRequestTimeoutMS] Timeout after which an upload request is aborted [Default: 60000]
44
- * @property {int} [retryIntervalMS] Time between auto-retries of the API call on a temp failure [Default: 2000]
45
- * @property {int} [numMaxRetries] Max # of times a temporarily-failed request should be retried before propagating a permanent failure [Default: 5]
46
- * @property {int} [expiredBufferMS] Time before expiration, in milliseconds, when we begin to treat tokens as expired [Default: 3 min.]
47
- * @property {Object} [request] Request options
48
- * @property {boolean} [request.strictSSL] Set to false to disable strict SSL checking, which allows using Dev APIs [Default: true]
49
- * @property {?AppAuthConfig} appAuth Optional configuration for App Auth
50
- */
51
-
52
36
  var defaults = {
53
- clientID: null,
54
- clientSecret: null,
55
- apiRootURL: 'https://api.box.com',
56
- uploadAPIRootURL: 'https://upload.box.com/api',
57
- authorizeRootURL: 'https://account.box.com/api',
58
- apiVersion: '2.0',
59
- uploadRequestTimeoutMS: 60000,
60
- retryIntervalMS: 2000,
61
- numMaxRetries: 5,
62
- retryStrategy: null,
63
- expiredBufferMS: 180000,
64
- staleBufferMS: 0, // DEPRECATED -- token expiration buffer will be max(expiredBufferMS, staleBufferMS)
65
- appAuth: undefined,
66
- iterators: false,
67
- enterpriseID: undefined,
68
- analyticsClient: null,
69
- proxy: {
70
- url: null,
71
- username: null,
72
- password: null,
73
- },
74
- request: {
75
- // By default, require API SSL cert to be valid
76
- strictSSL: true,
77
- // Use an agent with keep-alive enabled to avoid performing SSL handshake per connection
78
- agentClass: https.Agent,
79
- agentOptions: {
80
- keepAlive: true
81
- },
82
- // Encode requests as JSON. Encode the response as well if JSON is returned.
83
- json: true,
84
- // Do not encode the response as a string, since the response could be a file. return Buffers instead.
85
- encoding: null,
86
- // A redirect is usually information we want to handle, so don't automatically follow
87
- followRedirect: false,
88
- // By default, we attach a version-specific user-agent string to SDK requests
89
- headers: {
90
- 'User-Agent': `Box Node.js SDK v${sdkVersion} (Node ${nodeVersion})`
91
- }
92
- }
37
+ clientID: null,
38
+ clientSecret: null,
39
+ apiRootURL: 'https://api.box.com',
40
+ uploadAPIRootURL: 'https://upload.box.com/api',
41
+ authorizeRootURL: 'https://account.box.com/api',
42
+ apiVersion: '2.0',
43
+ uploadRequestTimeoutMS: 60000,
44
+ retryIntervalMS: 2000,
45
+ numMaxRetries: 5,
46
+ retryStrategy: null,
47
+ expiredBufferMS: 180000,
48
+ staleBufferMS: 0,
49
+ appAuth: undefined,
50
+ iterators: false,
51
+ enterpriseID: undefined,
52
+ analyticsClient: null,
53
+ proxy: {
54
+ url: null,
55
+ username: null,
56
+ password: null,
57
+ },
58
+ request: {
59
+ // By default, require API SSL cert to be valid
60
+ strictSSL: true,
61
+ // Use an agent with keep-alive enabled to avoid performing SSL handshake per connection
62
+ agentClass: https.Agent,
63
+ agentOptions: {
64
+ keepAlive: true,
65
+ },
66
+ // Encode requests as JSON. Encode the response as well if JSON is returned.
67
+ json: true,
68
+ // Do not encode the response as a string, since the response could be a file. return Buffers instead.
69
+ encoding: null,
70
+ // A redirect is usually information we want to handle, so don't automatically follow
71
+ followRedirect: false,
72
+ // By default, we attach a version-specific user-agent string to SDK requests
73
+ headers: {
74
+ 'User-Agent': "Box Node.js SDK v" + sdkVersion + " (Node " + nodeVersion + ")",
75
+ },
76
+ },
93
77
  };
94
-
95
78
  var appAuthDefaults = {
96
- algorithm: 'RS256',
97
- expirationTime: 30,
98
- verifyTimestamp: false
79
+ algorithm: 'RS256',
80
+ expirationTime: 30,
81
+ verifyTimestamp: false,
99
82
  };
100
-
101
83
  /**
102
84
  * Validate the basic Config values needed for the SDK to function
103
85
  * @param {UserConfigurationOptions} params The user-supplied config values
@@ -106,11 +88,10 @@ var appAuthDefaults = {
106
88
  * @private
107
89
  */
108
90
  function validateBasicParams(params) {
109
- // Assert that the given params valid, and that required values are present
110
- assert(typeof params.clientID === 'string', '"clientID" must be set via init() before using the SDK.');
111
- assert(typeof params.clientSecret === 'string', '"clientSecret" must be set via init() before using the SDK.');
91
+ // Assert that the given params valid, and that required values are present
92
+ assert(typeof params.clientID === 'string', '"clientID" must be set via init() before using the SDK.');
93
+ assert(typeof params.clientSecret === 'string', '"clientSecret" must be set via init() before using the SDK.');
112
94
  }
113
-
114
95
  /**
115
96
  * Validate app auth-specific Config values
116
97
  * @param {Object} appAuth The user-supplied app auth values
@@ -119,24 +100,20 @@ function validateBasicParams(params) {
119
100
  * @private
120
101
  */
121
102
  function validateAppAuthParams(appAuth) {
122
- assert(typeof appAuth.keyID === 'string', 'Key ID must be provided in app auth params');
123
- assert(typeof appAuth.privateKey === 'string' || appAuth.privateKey instanceof Buffer, 'Private key must be provided in app auth params');
124
- assert(typeof appAuth.passphrase === 'string' && appAuth.passphrase.length > 0, 'Passphrase must be provided in app auth params');
125
-
126
- var validAlgorithms = [
127
- 'RS256',
128
- 'RS384',
129
- 'RS512'
130
- ];
131
- if (typeof appAuth.algorithm !== 'undefined') {
132
- assert(validAlgorithms.indexOf(appAuth.algorithm) > -1, `Algorithm in app auth params must be one of: ${validAlgorithms.join(', ')}`);
133
- }
134
-
135
- if (typeof appAuth.expirationTime !== 'undefined') {
136
- assert(Number.isInteger(appAuth.expirationTime) && appAuth.expirationTime > 0 && appAuth.expirationTime <= 60, 'Valid token expiration time (0 - 60) must be provided in app auth params');
137
- }
103
+ assert(typeof appAuth.keyID === 'string', 'Key ID must be provided in app auth params');
104
+ assert(typeof appAuth.privateKey === 'string' ||
105
+ appAuth.privateKey instanceof Buffer, 'Private key must be provided in app auth params');
106
+ assert(typeof appAuth.passphrase === 'string' && appAuth.passphrase.length > 0, 'Passphrase must be provided in app auth params');
107
+ var validAlgorithms = ['RS256', 'RS384', 'RS512'];
108
+ if (typeof appAuth.algorithm !== 'undefined') {
109
+ assert(validAlgorithms.indexOf(appAuth.algorithm) > -1, "Algorithm in app auth params must be one of: " + validAlgorithms.join(', '));
110
+ }
111
+ if (typeof appAuth.expirationTime !== 'undefined') {
112
+ assert(Number.isInteger(appAuth.expirationTime) &&
113
+ appAuth.expirationTime > 0 &&
114
+ appAuth.expirationTime <= 60, 'Valid token expiration time (0 - 60) must be provided in app auth params');
115
+ }
138
116
  }
139
-
140
117
  /**
141
118
  * Update the agentClass based on the proxy config values passed in by the user
142
119
  * @param {UserConfigurationOptions} params The current Config values
@@ -144,19 +121,19 @@ function validateAppAuthParams(appAuth) {
144
121
  * @private
145
122
  */
146
123
  function updateRequestAgent(params) {
147
- if (params.proxy.url) {
148
- params.request.agentClass = ProxyAgent;
149
- params.request.agentOptions = Object.assign({}, params.request.agentOptions, url.parse(params.proxy.url));
150
- if (params.proxy.username && params.proxy.password) {
151
- Object.assign(params.request.agentOptions, {auth: `${params.proxy.username}:${params.proxy.password}`});
152
- }
153
- }
124
+ if (params.proxy.url) {
125
+ params.request.agentClass = ProxyAgent;
126
+ params.request.agentOptions = Object.assign({}, params.request.agentOptions, url.parse(params.proxy.url));
127
+ if (params.proxy.username && params.proxy.password) {
128
+ Object.assign(params.request.agentOptions, {
129
+ auth: params.proxy.username + ":" + params.proxy.password,
130
+ });
131
+ }
132
+ }
154
133
  }
155
-
156
134
  // ------------------------------------------------------------------------------
157
135
  // Public
158
136
  // ------------------------------------------------------------------------------
159
-
160
137
  /**
161
138
  * A Config Object holds the configuration options of the current setup. These are all
162
139
  * customizable by the user, and will default if no value is specified in the given params
@@ -166,40 +143,35 @@ function updateRequestAgent(params) {
166
143
  * @param {UserConfigurationOptions} params - The config options set by the user
167
144
  * @constructor
168
145
  */
169
- function Config(params) {
170
-
171
- validateBasicParams(params);
172
- if (typeof params.appAuth === 'object') {
173
- validateAppAuthParams(params.appAuth);
174
- params.appAuth = merge({}, appAuthDefaults, params.appAuth);
175
- }
176
-
177
- // Ensure that we don't accidentally assign over Config methods
178
- assert(!params.hasOwnProperty('extend'), 'Config params may not override Config methods');
179
- assert(!params.hasOwnProperty('_params'), 'Config params may not override Config methods');
180
-
181
- // Set the given params or default value if params property is missing
182
- this._params = merge(defaults, params);
183
- updateRequestAgent(this._params);
184
- Object.assign(this, this._params);
185
- // Freeze the object so that configuration options cannot be modified
186
- Object.freeze(this);
187
- }
188
-
189
- /**
190
- * Extend the current config into a new config with new params overriding old ones
191
- * @param {UserConfigurationOptions} params The override options
192
- * @returns {Config} The extended configuration
193
- */
194
- Config.prototype.extend = function(params) {
195
- var newParams = merge({}, this._params, params);
196
- delete newParams.extend;
197
- delete newParams._params;
198
- return new Config(newParams);
199
- };
200
-
201
- /**
202
- * @module box-node-sdk/lib/util/config
203
- * @see {@Link Config}
204
- */
146
+ var Config = /** @class */ (function () {
147
+ function Config(params) {
148
+ validateBasicParams(params);
149
+ if (typeof params.appAuth === 'object') {
150
+ validateAppAuthParams(params.appAuth);
151
+ params.appAuth = merge({}, appAuthDefaults, params.appAuth);
152
+ }
153
+ // Ensure that we don't accidentally assign over Config methods
154
+ assert(!params.hasOwnProperty('extend'), 'Config params may not override Config methods');
155
+ assert(!params.hasOwnProperty('_params'), 'Config params may not override Config methods');
156
+ // Set the given params or default value if params property is missing
157
+ this._params = merge(defaults, params);
158
+ updateRequestAgent(this._params);
159
+ Object.assign(this, this._params);
160
+ // Freeze the object so that configuration options cannot be modified
161
+ Object.freeze(this);
162
+ }
163
+ /**
164
+ * Extend the current config into a new config with new params overriding old ones
165
+ * @param {UserConfigurationOptions} params The override options
166
+ * @returns {Config} The extended configuration
167
+ */
168
+ Config.prototype.extend = function (params) {
169
+ var newParams = merge({}, this._params, params);
170
+ delete newParams.extend;
171
+ delete newParams._params;
172
+ return new Config(newParams);
173
+ };
174
+ return Config;
175
+ }());
205
176
  module.exports = Config;
177
+ //# sourceMappingURL=config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/util/config.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,50 @@
1
+ /**
2
+ * @fileoverview Errors Helper
3
+ */
4
+ declare const _default: {
5
+ /**
6
+ * Build a response error with the given message, and attaching meta data from the
7
+ * response data.
8
+ *
9
+ * @param {?APIRequest~ResponseObject} response - The response returned by an APIRequestManager request
10
+ * @param {string} message - the response error message
11
+ * @returns {Errors~ResponseError} an error describing the response error
12
+ */
13
+ buildResponseError(response: any, message?: string | undefined): any;
14
+ /**
15
+ * Build an authentication error. {@see Errors~AuthError}
16
+ *
17
+ * @param {?APIRequest~ResponseObject} response - The response returned by an APIRequestManager request
18
+ * @param {string} [message] - Optional message for the error
19
+ * @returns {Errors~AuthError} A properly formatted authentication error
20
+ */
21
+ buildAuthError(response: any, message?: string | undefined): any;
22
+ /**
23
+ * Build the error for an "Unexpected Response" from the API. This is a shortcut for
24
+ * responseError built specifically for the 401 UNEXPECTED response case. It
25
+ * should be called and the error should be propogated to the consumer
26
+ * whenever an unexpected response was recieved from the API.
27
+ *
28
+ * @param {?APIRequest~ResponseObject} response - The response returned by an APIRequestManager request
29
+ * @returns {Errors~ResponseError} an error describing the response error
30
+ */
31
+ buildUnexpectedResponseError(response: any): any;
32
+ /**
33
+ * Unwrap a Bluebird error and throw it, or just re-throw if the error
34
+ * is not a Bluebird error. This is necessary to preserve errors when
35
+ * a function is promisified.
36
+ * @param {Error} error The error to unwrap
37
+ * @returns {void}
38
+ * @throws {Error} The unwrapped error
39
+ */
40
+ unwrapAndThrow(error: any): never;
41
+ };
42
+ /**
43
+ * A Helper for building errors across the SDK. Makes sure that easily-forgotten
44
+ * fields aren't missed, and that everything is formatted properly to return to the
45
+ * consumer.
46
+ *
47
+ * @name Errors
48
+ * @module box-node-sdk/lib/util/errors
49
+ */
50
+ export = _default;