@globus/sdk 3.6.0 → 3.7.0-alpha

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.
@@ -18,7 +18,7 @@ var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (
18
18
  if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
19
19
  return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
20
20
  };
21
- var _AuthorizationManager_instances, _AuthorizationManager_transport, _AuthorizationManager_authenticated, _AuthorizationManager_silentRefreshTokens, _AuthorizationManager_checkAuthorizationState, _AuthorizationManager_bootstrapFromStorageState, _AuthorizationManager_emitAuthenticatedState, _AuthorizationManager_withOfflineAccess, _AuthorizationManager_buildTransport, _AuthorizationManager_revokeToken;
21
+ var _AuthorizationManager_instances, _AuthorizationManager_transport, _AuthorizationManager_authenticated, _AuthorizationManager_checkAuthorizationState, _AuthorizationManager_emitAuthenticatedState, _AuthorizationManager_withOfflineAccess, _AuthorizationManager_buildTransport, _AuthorizationManager_revokeToken;
22
22
  import { jwtDecode } from 'jwt-decode';
23
23
  import { getAuthorizationEndpoint, getTokenEndpoint, isGlobusAuthTokenResponse, isRefreshToken, oauth2, } from '../../services/auth/index.js';
24
24
  import { createStorage, getStorage } from '../storage/index.js';
@@ -30,7 +30,6 @@ import { isConsentRequiredError, isAuthorizationRequirementsError, toAuthorizati
30
30
  const DEFAULT_CONFIGURATION = {
31
31
  useRefreshTokens: false,
32
32
  defaultScopes: 'openid profile email',
33
- automaticSilentRefresh: false,
34
33
  };
35
34
  const DEFAULT_HANDLE_ERROR_OPTIONS = {
36
35
  execute: true,
@@ -79,6 +78,12 @@ export class AuthorizationManager {
79
78
  * Set the authenticated state and emit the `authenticated` event.
80
79
  */
81
80
  set authenticated(value) {
81
+ /**
82
+ * Avoid emitting the event if the value hasn't changed.
83
+ */
84
+ if (value === __classPrivateFieldGet(this, _AuthorizationManager_authenticated, "f")) {
85
+ return;
86
+ }
82
87
  __classPrivateFieldSet(this, _AuthorizationManager_authenticated, value, "f");
83
88
  __classPrivateFieldGet(this, _AuthorizationManager_instances, "m", _AuthorizationManager_emitAuthenticatedState).call(this);
84
89
  }
@@ -102,7 +107,6 @@ export class AuthorizationManager {
102
107
  */
103
108
  revoke: new Event('revoke'),
104
109
  };
105
- this.waitForSilentRefresh = null;
106
110
  /**
107
111
  * Add a Globus Auth token response to storage, if `other_tokens` are present they are also added.
108
112
  * This method is mostly used internally by the `AuthorizationManager`, but can be used by downstream
@@ -133,20 +137,21 @@ export class AuthorizationManager {
133
137
  this.configuration = Object.assign(Object.assign(Object.assign({}, DEFAULT_CONFIGURATION), configuration), { scopes: [configuration.scopes ? configuration.scopes : '', scopes]
134
138
  .filter((s) => s.length)
135
139
  .join(' ') });
136
- this.tokens = new TokenLookup({
137
- manager: this,
138
- });
139
140
  /**
140
- * If we're automatically starting the silent refresh process,
141
- * we'll let that method dispatch the initial authorization check.
142
- * Otherwise, we just bootstrap from the storage state.
141
+ * If an `events` object is provided, add the listeners to the instance before
142
+ * any event might be dispatched.
143
143
  */
144
- if (this.configuration.automaticSilentRefresh) {
145
- this.startSilentRefresh();
146
- }
147
- else {
148
- __classPrivateFieldGet(this, _AuthorizationManager_instances, "m", _AuthorizationManager_bootstrapFromStorageState).call(this);
144
+ if (this.configuration.events) {
145
+ Object.entries(this.configuration.events).forEach(([name, callback]) => {
146
+ if (name in this.events) {
147
+ this.events[name].addListener(callback);
148
+ }
149
+ });
149
150
  }
151
+ this.tokens = new TokenLookup({
152
+ manager: this,
153
+ });
154
+ __classPrivateFieldGet(this, _AuthorizationManager_instances, "m", _AuthorizationManager_checkAuthorizationState).call(this);
150
155
  }
151
156
  get storageKeyPrefix() {
152
157
  return `${this.configuration.client}:`;
@@ -166,17 +171,21 @@ export class AuthorizationManager {
166
171
  return token && token.id_token ? jwtDecode(token.id_token) : null;
167
172
  }
168
173
  /**
169
- * Start the silent refresh process for the instance.
170
- * @todo Add interval support for the silent refresh.
174
+ * Attempt to refresh all of the tokens managed by the instance.
175
+ * This method will only attempt to refresh tokens that have a `refresh_token` attribute.
171
176
  */
172
- startSilentRefresh() {
173
- log('debug', `AuthorizationManager.startSilentRefresh | useRefreshTokens=${this.configuration.useRefreshTokens}`);
174
- /**
175
- * Silent refresh is only supported when using refresh tokens.
176
- */
177
- if (this.configuration.useRefreshTokens) {
178
- __classPrivateFieldGet(this, _AuthorizationManager_instances, "m", _AuthorizationManager_silentRefreshTokens).call(this);
179
- }
177
+ refreshTokens() {
178
+ return __awaiter(this, void 0, void 0, function* () {
179
+ log('debug', 'AuthorizationManager.refreshTokens');
180
+ const tokens = yield Promise.allSettled(this.tokens.getAll().map((token) => {
181
+ if (isRefreshToken(token)) {
182
+ return this.refreshToken(token);
183
+ }
184
+ return Promise.resolve(null);
185
+ }));
186
+ __classPrivateFieldGet(this, _AuthorizationManager_instances, "m", _AuthorizationManager_checkAuthorizationState).call(this);
187
+ return tokens;
188
+ });
180
189
  }
181
190
  /**
182
191
  * Use the `refresh_token` attribute of a token to obtain a new access token.
@@ -195,11 +204,13 @@ export class AuthorizationManager {
195
204
  })).json();
196
205
  if (isGlobusAuthTokenResponse(response)) {
197
206
  this.addTokenResponse(response);
207
+ return response;
198
208
  }
199
209
  }
200
210
  catch (error) {
201
211
  log('error', `AuthorizationManager.refreshToken | resource_server=${token.resource_server}`);
202
212
  }
213
+ return null;
203
214
  });
204
215
  }
205
216
  /**
@@ -313,27 +324,11 @@ export class AuthorizationManager {
313
324
  });
314
325
  }
315
326
  }
316
- _AuthorizationManager_transport = new WeakMap(), _AuthorizationManager_authenticated = new WeakMap(), _AuthorizationManager_instances = new WeakSet(), _AuthorizationManager_silentRefreshTokens = function _AuthorizationManager_silentRefreshTokens() {
317
- log('debug', 'AuthorizationManager.#silentRefreshTokens');
318
- this.waitForSilentRefresh = Promise.allSettled(this.tokens.getAll().map((token) => {
319
- if (isRefreshToken(token)) {
320
- return this.refreshToken(token);
321
- }
322
- return Promise.resolve();
323
- })).then(() => {
324
- __classPrivateFieldGet(this, _AuthorizationManager_instances, "m", _AuthorizationManager_checkAuthorizationState).call(this);
325
- this.waitForSilentRefresh = null;
326
- });
327
- }, _AuthorizationManager_checkAuthorizationState = function _AuthorizationManager_checkAuthorizationState() {
327
+ _AuthorizationManager_transport = new WeakMap(), _AuthorizationManager_authenticated = new WeakMap(), _AuthorizationManager_instances = new WeakSet(), _AuthorizationManager_checkAuthorizationState = function _AuthorizationManager_checkAuthorizationState() {
328
328
  log('debug', 'AuthorizationManager.#checkAuthorizationState');
329
329
  if (this.hasGlobusAuthToken()) {
330
330
  this.authenticated = true;
331
331
  }
332
- }, _AuthorizationManager_bootstrapFromStorageState = function _AuthorizationManager_bootstrapFromStorageState() {
333
- return __awaiter(this, void 0, void 0, function* () {
334
- log('debug', 'AuthorizationManager.bootstrapFromStorageState');
335
- __classPrivateFieldGet(this, _AuthorizationManager_instances, "m", _AuthorizationManager_checkAuthorizationState).call(this);
336
- });
337
332
  }, _AuthorizationManager_emitAuthenticatedState = function _AuthorizationManager_emitAuthenticatedState() {
338
333
  return __awaiter(this, void 0, void 0, function* () {
339
334
  var _a;
@@ -1 +1 @@
1
- {"version":3,"file":"AuthorizationManager.js","sourceRoot":"","sources":["../../../../../src/lib/core/authorization/AuthorizationManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AuthorizationManager.js","sourceRoot":"","sources":["../../../../../src/lib/core/authorization/AuthorizationManager.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"token.d.ts","sourceRoot":"","sources":["../../../../../../../src/lib/services/auth/service/oauth2/token.ts"],"names":[],"mappings":"AAKA,KAAK,iBAAiB,GAAG;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,KAAK,aAAa,GAAG;IACnB,KAAK,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,KAAK,eAAe,GAAG;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,KAAK,cAAc,GAAG;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,eAAe,CAAC;IAC5B;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAiCF;;;GAGG;AACH,eAAO,MAAM,UAAU;aAeZ,iBAAiB;4JAC1B,CAAC;AAEH;;;GAGG;AACH,eAAO,MAAM,MAAM;aAeR,aAAa;4JACtB,CAAC;AAEH;;;GAGG;AACH,eAAO,MAAM,OAAO;aAeT,cAAc;4JACvB,CAAC;AAEH;;;GAGG;AACH,eAAO,MAAM,QAAQ;aAeV,eAAe;4JACxB,CAAC"}
1
+ {"version":3,"file":"token.d.ts","sourceRoot":"","sources":["../../../../../../../src/lib/services/auth/service/oauth2/token.ts"],"names":[],"mappings":"AAKA,KAAK,iBAAiB,GAAG;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,KAAK,aAAa,GAAG;IACnB,KAAK,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,KAAK,eAAe,GAAG;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,KAAK,cAAc,GAAG;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,eAAe,CAAC;IAC5B;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAiCF;;;GAGG;AACH,eAAO,MAAM,UAAU;aAgBZ,iBAAiB;4JAC1B,CAAC;AAEH;;;GAGG;AACH,eAAO,MAAM,MAAM;aAgBR,aAAa;4JACtB,CAAC;AAEH;;;GAGG;AACH,eAAO,MAAM,OAAO;aAgBT,cAAc;4JACvB,CAAC;AAEH;;;GAGG;AACH,eAAO,MAAM,QAAQ;aAgBV,eAAe;4JACxB,CAAC"}
@@ -31,6 +31,7 @@ export const introspect = function (options, sdkOptions) {
31
31
  scope: undefined,
32
32
  path: `/v2/oauth2/token/introspect`,
33
33
  method: HTTP_METHODS.POST,
34
+ preventRetry: true,
34
35
  }, injectServiceOptions(options), sdkOptions);
35
36
  };
36
37
  /**
@@ -46,6 +47,7 @@ export const revoke = function (options, sdkOptions) {
46
47
  scope: undefined,
47
48
  path: `/v2/oauth2/token/revoke`,
48
49
  method: HTTP_METHODS.POST,
50
+ preventRetry: true,
49
51
  }, injectServiceOptions(options), sdkOptions);
50
52
  };
51
53
  /**
@@ -61,6 +63,7 @@ export const refresh = function (options, sdkOptions) {
61
63
  scope: undefined,
62
64
  path: `/v2/oauth2/token`,
63
65
  method: HTTP_METHODS.POST,
66
+ preventRetry: true,
64
67
  }, injectServiceOptions(options), sdkOptions);
65
68
  };
66
69
  /**
@@ -76,6 +79,7 @@ export const validate = function (options, sdkOptions) {
76
79
  scope: undefined,
77
80
  path: `/v2/oauth2/token/validate`,
78
81
  method: HTTP_METHODS.POST,
82
+ preventRetry: true,
79
83
  }, injectServiceOptions(options), sdkOptions);
80
84
  };
81
85
  //# sourceMappingURL=token.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"token.js","sourceRoot":"","sources":["../../../../../../../src/lib/services/auth/service/oauth2/token.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAC;AACrC,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAiC9E,SAAS,SAAS,CAAC,OAA2B;IAC5C,OAAO,IAAI,eAAe,CAAC,OAAO,CAAC,CAAC;AACtC,CAAC;AAED;;GAEG;AACH,SAAS,oBAAoB,CAC3B,OAEC;IAED,uCACK,OAAO;QACV;;;WAGG;QACH,IAAI,EAAE,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,EAChC,OAAO,kCACF,CAAC,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,KAAI,EAAE,CAAC;YAC3B;;eAEG;YACH,cAAc,EAAE,kDAAkD,OAEpE;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,UAAU,OAAO,EAAE,UAAW;IACtD,IAAI,CAAC,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,CAAA,EAAE,CAAC;QACtB,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;IAC1D,CAAC;IACD,OAAO,cAAc,CACnB;QACE,OAAO,EAAE,EAAE;QACX,KAAK,EAAE,SAAS;QAChB,IAAI,EAAE,6BAA6B;QACnC,MAAM,EAAE,YAAY,CAAC,IAAI;KAC1B,EACD,oBAAoB,CAAC,OAAO,CAAC,EAC7B,UAAU,CACX,CAAC;AACJ,CAEE,CAAC;AAEH;;;GAGG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,UAAU,OAAO,EAAE,UAAW;IAClD,IAAI,CAAC,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,CAAA,EAAE,CAAC;QACtB,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;IACtD,CAAC;IACD,OAAO,cAAc,CACnB;QACE,OAAO,EAAE,EAAE;QACX,KAAK,EAAE,SAAS;QAChB,IAAI,EAAE,yBAAyB;QAC/B,MAAM,EAAE,YAAY,CAAC,IAAI;KAC1B,EACD,oBAAoB,CAAC,OAAO,CAAC,EAC7B,UAAU,CACX,CAAC;AACJ,CAEE,CAAC;AAEH;;;GAGG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG,UAAU,OAAO,EAAE,UAAW;IACnD,IAAI,CAAC,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,CAAA,EAAE,CAAC;QACtB,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;IACtD,CAAC;IACD,OAAO,cAAc,CACnB;QACE,OAAO,EAAE,EAAE;QACX,KAAK,EAAE,SAAS;QAChB,IAAI,EAAE,kBAAkB;QACxB,MAAM,EAAE,YAAY,CAAC,IAAI;KAC1B,EACD,oBAAoB,CAAC,OAAO,CAAC,EAC7B,UAAU,CACX,CAAC;AACJ,CAEE,CAAC;AAEH;;;GAGG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,UAAU,OAAO,EAAE,UAAW;IACpD,IAAI,CAAC,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,CAAA,EAAE,CAAC;QACtB,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;IACxD,CAAC;IACD,OAAO,cAAc,CACnB;QACE,OAAO,EAAE,EAAE;QACX,KAAK,EAAE,SAAS;QAChB,IAAI,EAAE,2BAA2B;QACjC,MAAM,EAAE,YAAY,CAAC,IAAI;KAC1B,EACD,oBAAoB,CAAC,OAAO,CAAC,EAC7B,UAAU,CACX,CAAC;AACJ,CAEE,CAAC"}
1
+ {"version":3,"file":"token.js","sourceRoot":"","sources":["../../../../../../../src/lib/services/auth/service/oauth2/token.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAC;AACrC,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAiC9E,SAAS,SAAS,CAAC,OAA2B;IAC5C,OAAO,IAAI,eAAe,CAAC,OAAO,CAAC,CAAC;AACtC,CAAC;AAED;;GAEG;AACH,SAAS,oBAAoB,CAC3B,OAEC;IAED,uCACK,OAAO;QACV;;;WAGG;QACH,IAAI,EAAE,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,EAChC,OAAO,kCACF,CAAC,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,KAAI,EAAE,CAAC;YAC3B;;eAEG;YACH,cAAc,EAAE,kDAAkD,OAEpE;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,UAAU,OAAO,EAAE,UAAW;IACtD,IAAI,CAAC,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,CAAA,EAAE,CAAC;QACtB,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;IAC1D,CAAC;IACD,OAAO,cAAc,CACnB;QACE,OAAO,EAAE,EAAE;QACX,KAAK,EAAE,SAAS;QAChB,IAAI,EAAE,6BAA6B;QACnC,MAAM,EAAE,YAAY,CAAC,IAAI;QACzB,YAAY,EAAE,IAAI;KACnB,EACD,oBAAoB,CAAC,OAAO,CAAC,EAC7B,UAAU,CACX,CAAC;AACJ,CAEE,CAAC;AAEH;;;GAGG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,UAAU,OAAO,EAAE,UAAW;IAClD,IAAI,CAAC,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,CAAA,EAAE,CAAC;QACtB,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;IACtD,CAAC;IACD,OAAO,cAAc,CACnB;QACE,OAAO,EAAE,EAAE;QACX,KAAK,EAAE,SAAS;QAChB,IAAI,EAAE,yBAAyB;QAC/B,MAAM,EAAE,YAAY,CAAC,IAAI;QACzB,YAAY,EAAE,IAAI;KACnB,EACD,oBAAoB,CAAC,OAAO,CAAC,EAC7B,UAAU,CACX,CAAC;AACJ,CAEE,CAAC;AAEH;;;GAGG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG,UAAU,OAAO,EAAE,UAAW;IACnD,IAAI,CAAC,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,CAAA,EAAE,CAAC;QACtB,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;IACtD,CAAC;IACD,OAAO,cAAc,CACnB;QACE,OAAO,EAAE,EAAE;QACX,KAAK,EAAE,SAAS;QAChB,IAAI,EAAE,kBAAkB;QACxB,MAAM,EAAE,YAAY,CAAC,IAAI;QACzB,YAAY,EAAE,IAAI;KACnB,EACD,oBAAoB,CAAC,OAAO,CAAC,EAC7B,UAAU,CACX,CAAC;AACJ,CAEE,CAAC;AAEH;;;GAGG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,UAAU,OAAO,EAAE,UAAW;IACpD,IAAI,CAAC,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,CAAA,EAAE,CAAC;QACtB,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;IACxD,CAAC;IACD,OAAO,cAAc,CACnB;QACE,OAAO,EAAE,EAAE;QACX,KAAK,EAAE,SAAS;QAChB,IAAI,EAAE,2BAA2B;QACjC,MAAM,EAAE,YAAY,CAAC,IAAI;QACzB,YAAY,EAAE,IAAI;KACnB,EACD,oBAAoB,CAAC,OAAO,CAAC,EAC7B,UAAU,CACX,CAAC;AACJ,CAEE,CAAC"}
@@ -38,6 +38,11 @@ type ServiceRequestDSL = {
38
38
  * The HTTP method to use for the request.
39
39
  */
40
40
  method?: HTTP_METHODS;
41
+ /**
42
+ * For some resources, it doesn't make sense for requests to be retried.
43
+ * Setting this to `true` will prevent any retry logic from being applied.
44
+ */
45
+ preventRetry?: boolean;
41
46
  };
42
47
  /**
43
48
  * A helper function for making service requests that will handle the arguments
@@ -1 +1 @@
1
- {"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../../../src/lib/services/shared.ts"],"names":[],"mappings":"AAGA,OAAO,EAAiB,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,KAAK,EAAE,oBAAoB,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACnE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4CAA4C,CAAC;AAInF,oBAAY,YAAY;IACtB,IAAI,SAAS;IACb,GAAG,QAAQ;IACX,MAAM,WAAW;IACjB,GAAG,QAAQ;IACX,KAAK,UAAU;CAChB;AAED;;;GAGG;AACH,KAAK,iBAAiB,GAAG;IACvB;;OAEG;IACH,OAAO,EAAE,OAAO,GAAG,gBAAgB,CAAC;IACpC;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;;OAKG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,MAAM,CAAC,EAAE,YAAY,CAAC;CACvB,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,cAAc,CAC5B,IAAI,EAAE,OAAO,EACb,MAAM,EAAE,iBAAiB,EACzB,OAAO,CAAC,EAAE,oBAAoB,EAC9B,gBAAgB,CAAC,EAAE,UAAU,qBA2F9B"}
1
+ {"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../../../src/lib/services/shared.ts"],"names":[],"mappings":"AAGA,OAAO,EAAiB,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAI3D,OAAO,KAAK,EAAE,oBAAoB,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACnE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4CAA4C,CAAC;AAGnF,oBAAY,YAAY;IACtB,IAAI,SAAS;IACb,GAAG,QAAQ;IACX,MAAM,WAAW;IACjB,GAAG,QAAQ;IACX,KAAK,UAAU;CAChB;AAED;;;GAGG;AACH,KAAK,iBAAiB,GAAG;IACvB;;OAEG;IACH,OAAO,EAAE,OAAO,GAAG,gBAAgB,CAAC;IACpC;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;;OAKG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB;;;OAGG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAsB,cAAc,CAClC,IAAI,EAAE,OAAO,EACb,MAAM,EAAE,iBAAiB,EACzB,OAAO,CAAC,EAAE,oBAAoB,EAC9B,gBAAgB,CAAC,EAAE,UAAU,GAC5B,OAAO,CAAC,QAAQ,CAAC,CAgKnB"}
@@ -1,8 +1,19 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
1
10
  import _fetch from 'cross-fetch';
2
11
  import { getClientInfoRequestHeaders } from '../core/info/index.js';
3
12
  import { build } from '../core/url.js';
4
13
  import { getSDKOptions } from '../core/global.js';
14
+ import { isAuthorizationRequirementsError } from '../core/errors.js';
5
15
  import { RESOURCE_SERVERS } from './auth/config.js';
16
+ import { isRefreshToken } from './auth/index.js';
6
17
  // eslint-disable-next-line @typescript-eslint/naming-convention
7
18
  export var HTTP_METHODS;
8
19
  (function (HTTP_METHODS) {
@@ -35,68 +46,131 @@ export var HTTP_METHODS;
35
46
  * @returns
36
47
  */
37
48
  export function serviceRequest(config, options, passedSdkOptions) {
38
- var _a;
39
- /**
40
- * Get the SDK options, merging any passed options with the global options.
41
- */
42
- const sdkOptions = getSDKOptions(passedSdkOptions);
43
- const injectedFetchOptions = ((_a = sdkOptions === null || sdkOptions === void 0 ? void 0 : sdkOptions.fetch) === null || _a === void 0 ? void 0 : _a.options) || {};
44
- const headers = Object.assign(Object.assign(Object.assign({}, getClientInfoRequestHeaders()), options === null || options === void 0 ? void 0 : options.headers), injectedFetchOptions.headers);
45
- /**
46
- * If a `resource_server` was provided, and the SDK is configured with a `manager`
47
- * instance, we'll try to get a token for the resource server and use it.
48
- */
49
- if (config.resource_server && (sdkOptions === null || sdkOptions === void 0 ? void 0 : sdkOptions.manager)) {
50
- const token = sdkOptions.manager.tokens.getByResourceServer(config.resource_server);
51
- if (token) {
52
- headers['Authorization'] = `Bearer ${token.access_token}`;
49
+ return __awaiter(this, void 0, void 0, function* () {
50
+ var _a;
51
+ /**
52
+ * Get the SDK options, merging any passed options with the global options.
53
+ */
54
+ const sdkOptions = getSDKOptions(passedSdkOptions);
55
+ const injectedFetchOptions = ((_a = sdkOptions === null || sdkOptions === void 0 ? void 0 : sdkOptions.fetch) === null || _a === void 0 ? void 0 : _a.options) || {};
56
+ const headers = Object.assign(Object.assign(Object.assign({}, getClientInfoRequestHeaders()), options === null || options === void 0 ? void 0 : options.headers), injectedFetchOptions.headers);
57
+ /**
58
+ * The `AuthorizationManager` instance provided with the call.
59
+ */
60
+ const manager = sdkOptions === null || sdkOptions === void 0 ? void 0 : sdkOptions.manager;
61
+ let token;
62
+ /**
63
+ * If a `resource_server` was provided, and the SDK is configured with a `manager`
64
+ * instance, we'll try to get a token for the resource server and use it.
65
+ */
66
+ if (config.resource_server && manager) {
67
+ token = manager.tokens.getByResourceServer(config.resource_server);
68
+ if (token) {
69
+ headers['Authorization'] = `Bearer ${token.access_token}`;
70
+ }
71
+ }
72
+ /**
73
+ * If the `scope` property is provided, and the SDK is configured with a `manager`,
74
+ * we'll try to map the service to a resource server. This is mostly to support
75
+ * backwards compatibility of the `scope` property being used in the `ServiceRequestDSL`.
76
+ */
77
+ if (config.scope && manager) {
78
+ const resourceServer = typeof config.service === 'string'
79
+ ? RESOURCE_SERVERS[config.service]
80
+ : // For `GCSConfiguration` objects, the `endpoint_id` is the resource server.
81
+ config.service.endpoint_id;
82
+ token = manager.tokens.getByResourceServer(resourceServer);
83
+ if (token) {
84
+ headers['Authorization'] = `Bearer ${token.access_token}`;
85
+ }
86
+ }
87
+ /**
88
+ * If a raw body was provided, use that. Otherwise, if a payload was provided, serialize it.
89
+ */
90
+ let body = options === null || options === void 0 ? void 0 : options.body;
91
+ if (!body && (options === null || options === void 0 ? void 0 : options.payload)) {
92
+ body = JSON.stringify(options.payload);
93
+ }
94
+ /**
95
+ * If `Content-Type` header was not provided, and there is a body, we assume it is JSON.
96
+ */
97
+ if (!(headers === null || headers === void 0 ? void 0 : headers['Content-Type']) && body) {
98
+ headers['Content-Type'] = 'application/json';
53
99
  }
54
- }
55
- /**
56
- * If the `scope` property is provided, and the SDK is configured with a `manager`,
57
- * we'll try to map the service to a resource server. This is mostly to support
58
- * backwards compatibility of the `scope` property being used in the `ServiceRequestDSL`.
59
- */
60
- if (config.scope && (sdkOptions === null || sdkOptions === void 0 ? void 0 : sdkOptions.manager)) {
61
- const resourceServer = typeof config.service === 'string'
62
- ? RESOURCE_SERVERS[config.service]
63
- : // For `GCSConfiguration` objects, the `endpoint_id` is the resource server.
64
- config.service.endpoint_id;
65
- const token = sdkOptions.manager.tokens.getByResourceServer(resourceServer);
66
- if (token) {
67
- headers['Authorization'] = `Bearer ${token.access_token}`;
100
+ const url = build(config.service, config.path, {
101
+ search: options === null || options === void 0 ? void 0 : options.query,
102
+ }, sdkOptions);
103
+ const init = Object.assign(Object.assign({ method: config.method, body }, injectedFetchOptions), {
104
+ /**
105
+ * Merge the headers from the options and SDK options.
106
+ */
107
+ headers });
108
+ /**
109
+ * The request handler for the fetch call. This can be overridden by providing a
110
+ * `__callable` property in the `fetch` options.
111
+ */
112
+ let handler = _fetch;
113
+ /* eslint-disable no-underscore-dangle */
114
+ if (injectedFetchOptions === null || injectedFetchOptions === void 0 ? void 0 : injectedFetchOptions.__callable) {
115
+ handler = injectedFetchOptions.__callable.bind(this);
116
+ /**
117
+ * Remove the `__callable` property from the `fetch` options before passing the options along.
118
+ */
119
+ delete init.__callable;
120
+ }
121
+ /* eslint-enable no-underscore-dangle */
122
+ /**
123
+ * If the resource is configured to prevent retries, there is no `manager` instance,
124
+ * or token, the request will be made as-is.
125
+ */
126
+ if (config.preventRetry || !manager || !token || !isRefreshToken(token)) {
127
+ return handler(url, init);
68
128
  }
69
- }
70
- /**
71
- * If a raw body was provided, use that. Otherwise, if a payload was provided, serialize it.
72
- */
73
- let body = options === null || options === void 0 ? void 0 : options.body;
74
- if (!body && (options === null || options === void 0 ? void 0 : options.payload)) {
75
- body = JSON.stringify(options.payload);
76
- }
77
- /**
78
- * If `Content-Type` header was not provided, and there is a body, we assume it is JSON.
79
- */
80
- if (!(headers === null || headers === void 0 ? void 0 : headers['Content-Type']) && body) {
81
- headers['Content-Type'] = 'application/json';
82
- }
83
- const url = build(config.service, config.path, {
84
- search: options === null || options === void 0 ? void 0 : options.query,
85
- }, sdkOptions);
86
- const init = Object.assign(Object.assign({ method: config.method, body }, injectedFetchOptions), {
87
129
  /**
88
- * Merge the headers from the options and SDK options.
130
+ * Automatic Retry Handling
131
+ */
132
+ const initialResponse = yield handler(url, init);
133
+ /**
134
+ * If the response is "ok", we can return it as-is.
89
135
  */
90
- headers });
91
- /* eslint-disable no-underscore-dangle */
92
- if (injectedFetchOptions === null || injectedFetchOptions === void 0 ? void 0 : injectedFetchOptions.__callable) {
136
+ if (initialResponse.ok) {
137
+ return initialResponse;
138
+ }
139
+ /**
140
+ * Do a safe check to see if the response contains any authorization requirements.
141
+ */
142
+ let hasAuthorizationRequirements;
143
+ try {
144
+ hasAuthorizationRequirements = isAuthorizationRequirementsError(
145
+ /**
146
+ * It is important to clone the response before calling `json` avoid
147
+ * `body used already for [...]` errors when the initial response is
148
+ * returned.
149
+ */
150
+ yield initialResponse.clone().json());
151
+ }
152
+ catch (_e) {
153
+ hasAuthorizationRequirements = false;
154
+ }
155
+ /**
156
+ * We only attempt to refresh the original token supplied with teh request, if the
157
+ * response status is 401 and the response does not contain any authorization requirements.
158
+ */
159
+ const shouldAttemptTokenRefresh = initialResponse.status === 401 && !hasAuthorizationRequirements;
160
+ if (shouldAttemptTokenRefresh) {
161
+ const newToken = yield manager.refreshToken(token);
162
+ if (!newToken) {
163
+ return initialResponse;
164
+ }
165
+ /**
166
+ * Retry the request with the new token.
167
+ */
168
+ return handler(url, Object.assign(Object.assign({}, init), { headers: Object.assign(Object.assign({}, init.headers), { Authorization: `Bearer ${newToken.access_token}` }) }));
169
+ }
93
170
  /**
94
- * Remove the `__callable` property from the `fetch` options before passing the options along.
171
+ * No retry was attempted, return the initial response.
95
172
  */
96
- delete init.__callable;
97
- return injectedFetchOptions.__callable.call(this, url, init);
98
- }
99
- /* eslint-enable no-underscore-dangle */
100
- return _fetch(url, init);
173
+ return initialResponse;
174
+ });
101
175
  }
102
176
  //# sourceMappingURL=shared.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"shared.js","sourceRoot":"","sources":["../../../../src/lib/services/shared.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"shared.js","sourceRoot":"","sources":["../../../../src/lib/services/shared.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@globus/sdk",
3
- "version": "3.6.0",
3
+ "version": "3.7.0-alpha",
4
4
  "private": false,
5
5
  "description": "The Globus SDK for JavaScript",
6
6
  "main": "cjs/index.js",