@atlaskit/media-client 28.0.4 → 28.0.5

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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,13 @@
1
1
  # @atlaskit/media-client
2
2
 
3
+ ## 28.0.5
4
+
5
+ ### Patch Changes
6
+
7
+ - [#155484](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/pull-requests/155484)
8
+ [`958e4ecdf8ab7`](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/commits/958e4ecdf8ab7) -
9
+ add nonMediaError reason to media-client
10
+
3
11
  ## 28.0.4
4
12
 
5
13
  ### Patch Changes
@@ -285,8 +285,15 @@ function createRequestErrorReason(statusCode) {
285
285
  }
286
286
  function createRequestErrorFromResponse(metadata, response) {
287
287
  var statusCode = response.status;
288
- var reason = createRequestErrorReason(statusCode);
289
- return new _errors.RequestError(reason, _objectSpread(_objectSpread(_objectSpread({}, metadata), extractMediaHeaders(response)), {}, {
288
+
289
+ // with media-cdn single host feature on ('platform.media-cdn-single-host'), media will make a call to Cloudfront before dt-api-filestore, where 'x-media-region' and 'x-media-env' are set. The absence of these headers indicates a Cloudfront error.
290
+ var _extractMediaHeaders = extractMediaHeaders(response),
291
+ mediaRegion = _extractMediaHeaders.mediaRegion,
292
+ mediaEnv = _extractMediaHeaders.mediaEnv;
293
+ var reason = mediaRegion === 'unknown' || mediaEnv === 'unknown' ? 'nonMediaError' : createRequestErrorReason(statusCode);
294
+ return new _errors.RequestError(reason, _objectSpread(_objectSpread({}, metadata), {}, {
295
+ mediaRegion: mediaRegion,
296
+ mediaEnv: mediaEnv,
290
297
  statusCode: statusCode
291
298
  }));
292
299
  }
@@ -183,10 +183,17 @@ export function createRequestErrorFromResponse(metadata, response) {
183
183
  const {
184
184
  status: statusCode
185
185
  } = response;
186
- const reason = createRequestErrorReason(statusCode);
186
+
187
+ // with media-cdn single host feature on ('platform.media-cdn-single-host'), media will make a call to Cloudfront before dt-api-filestore, where 'x-media-region' and 'x-media-env' are set. The absence of these headers indicates a Cloudfront error.
188
+ const {
189
+ mediaRegion,
190
+ mediaEnv
191
+ } = extractMediaHeaders(response);
192
+ const reason = mediaRegion === 'unknown' || mediaEnv === 'unknown' ? 'nonMediaError' : createRequestErrorReason(statusCode);
187
193
  return new RequestError(reason, {
188
194
  ...metadata,
189
- ...extractMediaHeaders(response),
195
+ mediaRegion,
196
+ mediaEnv,
190
197
  statusCode
191
198
  });
192
199
  }
@@ -263,8 +263,15 @@ export function createRequestErrorReason(statusCode) {
263
263
  }
264
264
  export function createRequestErrorFromResponse(metadata, response) {
265
265
  var statusCode = response.status;
266
- var reason = createRequestErrorReason(statusCode);
267
- return new RequestError(reason, _objectSpread(_objectSpread(_objectSpread({}, metadata), extractMediaHeaders(response)), {}, {
266
+
267
+ // with media-cdn single host feature on ('platform.media-cdn-single-host'), media will make a call to Cloudfront before dt-api-filestore, where 'x-media-region' and 'x-media-env' are set. The absence of these headers indicates a Cloudfront error.
268
+ var _extractMediaHeaders = extractMediaHeaders(response),
269
+ mediaRegion = _extractMediaHeaders.mediaRegion,
270
+ mediaEnv = _extractMediaHeaders.mediaEnv;
271
+ var reason = mediaRegion === 'unknown' || mediaEnv === 'unknown' ? 'nonMediaError' : createRequestErrorReason(statusCode);
272
+ return new RequestError(reason, _objectSpread(_objectSpread({}, metadata), {}, {
273
+ mediaRegion: mediaRegion,
274
+ mediaEnv: mediaEnv,
268
275
  statusCode: statusCode
269
276
  }));
270
277
  }
@@ -1,4 +1,4 @@
1
- export type MediaClientErrorReason = 'clientOffline' | 'clientAbortedRequest' | 'clientTimeoutRequest' | 'serverInvalidBody' | 'serverBadRequest' | 'serverUnauthorized' | 'serverForbidden' | 'serverNotFound' | 'serverRateLimited' | 'serverInternalError' | 'serverBadGateway' | 'serverUnexpectedError' | 'failedAuthProvider' | 'tokenExpired' | 'missingInitialAuth' | 'emptyAuth' | 'authProviderTimedOut' | 'invalidFileId' | 'emptyItems' | 'zeroVersionFile' | 'emptyFileName' | 'pollingMaxAttemptsExceeded' | 'fileSizeExceedsLimit' | 'deprecatedEndpoint';
1
+ export type MediaClientErrorReason = 'clientOffline' | 'clientAbortedRequest' | 'clientTimeoutRequest' | 'serverInvalidBody' | 'serverBadRequest' | 'serverUnauthorized' | 'serverForbidden' | 'serverNotFound' | 'serverRateLimited' | 'serverInternalError' | 'serverBadGateway' | 'serverUnexpectedError' | 'nonMediaError' | 'failedAuthProvider' | 'tokenExpired' | 'missingInitialAuth' | 'emptyAuth' | 'authProviderTimedOut' | 'invalidFileId' | 'emptyItems' | 'zeroVersionFile' | 'emptyFileName' | 'pollingMaxAttemptsExceeded' | 'fileSizeExceedsLimit' | 'deprecatedEndpoint';
2
2
  export interface MediaClientErrorAttributes {
3
3
  reason: MediaClientErrorReason;
4
4
  }
@@ -35,7 +35,7 @@ export type CreateUrlOptions = {
35
35
  readonly params?: RequestParams;
36
36
  readonly auth?: Auth;
37
37
  };
38
- export type RequestErrorReason = 'clientOffline' | 'clientAbortedRequest' | 'clientTimeoutRequest' | 'serverInvalidBody' | 'serverBadRequest' | 'serverUnauthorized' | 'serverForbidden' | 'serverNotFound' | 'serverRateLimited' | 'serverInternalError' | 'serverBadGateway' | 'serverUnexpectedError';
38
+ export type RequestErrorReason = 'clientOffline' | 'clientAbortedRequest' | 'clientTimeoutRequest' | 'nonMediaError' | 'serverInvalidBody' | 'serverBadRequest' | 'serverUnauthorized' | 'serverForbidden' | 'serverNotFound' | 'serverRateLimited' | 'serverInternalError' | 'serverBadGateway' | 'serverUnexpectedError';
39
39
  export type RequestErrorMetadata = RequestMetadata & {
40
40
  readonly attempts?: number;
41
41
  readonly clientExhaustedRetries?: boolean;
@@ -1,4 +1,4 @@
1
- export type MediaClientErrorReason = 'clientOffline' | 'clientAbortedRequest' | 'clientTimeoutRequest' | 'serverInvalidBody' | 'serverBadRequest' | 'serverUnauthorized' | 'serverForbidden' | 'serverNotFound' | 'serverRateLimited' | 'serverInternalError' | 'serverBadGateway' | 'serverUnexpectedError' | 'failedAuthProvider' | 'tokenExpired' | 'missingInitialAuth' | 'emptyAuth' | 'authProviderTimedOut' | 'invalidFileId' | 'emptyItems' | 'zeroVersionFile' | 'emptyFileName' | 'pollingMaxAttemptsExceeded' | 'fileSizeExceedsLimit' | 'deprecatedEndpoint';
1
+ export type MediaClientErrorReason = 'clientOffline' | 'clientAbortedRequest' | 'clientTimeoutRequest' | 'serverInvalidBody' | 'serverBadRequest' | 'serverUnauthorized' | 'serverForbidden' | 'serverNotFound' | 'serverRateLimited' | 'serverInternalError' | 'serverBadGateway' | 'serverUnexpectedError' | 'nonMediaError' | 'failedAuthProvider' | 'tokenExpired' | 'missingInitialAuth' | 'emptyAuth' | 'authProviderTimedOut' | 'invalidFileId' | 'emptyItems' | 'zeroVersionFile' | 'emptyFileName' | 'pollingMaxAttemptsExceeded' | 'fileSizeExceedsLimit' | 'deprecatedEndpoint';
2
2
  export interface MediaClientErrorAttributes {
3
3
  reason: MediaClientErrorReason;
4
4
  }
@@ -35,7 +35,7 @@ export type CreateUrlOptions = {
35
35
  readonly params?: RequestParams;
36
36
  readonly auth?: Auth;
37
37
  };
38
- export type RequestErrorReason = 'clientOffline' | 'clientAbortedRequest' | 'clientTimeoutRequest' | 'serverInvalidBody' | 'serverBadRequest' | 'serverUnauthorized' | 'serverForbidden' | 'serverNotFound' | 'serverRateLimited' | 'serverInternalError' | 'serverBadGateway' | 'serverUnexpectedError';
38
+ export type RequestErrorReason = 'clientOffline' | 'clientAbortedRequest' | 'clientTimeoutRequest' | 'nonMediaError' | 'serverInvalidBody' | 'serverBadRequest' | 'serverUnauthorized' | 'serverForbidden' | 'serverNotFound' | 'serverRateLimited' | 'serverInternalError' | 'serverBadGateway' | 'serverUnexpectedError';
39
39
  export type RequestErrorMetadata = RequestMetadata & {
40
40
  readonly attempts?: number;
41
41
  readonly clientExhaustedRetries?: boolean;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atlaskit/media-client",
3
- "version": "28.0.4",
3
+ "version": "28.0.5",
4
4
  "description": "Media API Web Client Library",
5
5
  "publishConfig": {
6
6
  "registry": "https://registry.npmjs.org/"