@aws-amplify/storage 4.4.18 → 4.4.19

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.
@@ -6,6 +6,13 @@ import { FetchHttpHandlerOptions } from '@aws-sdk/fetch-http-handler';
6
6
  import * as events from 'events';
7
7
  export declare const SEND_UPLOAD_PROGRESS_EVENT = "sendUploadProgress";
8
8
  export declare const SEND_DOWNLOAD_PROGRESS_EVENT = "sendDownloadProgress";
9
+ export declare type ErrorWithResponse = {
10
+ response: {
11
+ status: number;
12
+ } & {
13
+ [key: string]: any;
14
+ };
15
+ };
9
16
  export declare const reactNativeRequestTransformer: AxiosTransformer[];
10
17
  export declare type AxiosHttpHandlerOptions = HttpHandlerOptions & {
11
18
  cancelTokenSource?: CancelTokenSource;
@@ -53,6 +53,13 @@ exports.SEND_DOWNLOAD_PROGRESS_EVENT = 'sendDownloadProgress';
53
53
  function isBlob(body) {
54
54
  return typeof Blob !== 'undefined' && body instanceof Blob;
55
55
  }
56
+ function hasErrorResponse(error) {
57
+ return (typeof error !== 'undefined' &&
58
+ Object.prototype.hasOwnProperty.call(error, 'response') &&
59
+ typeof error.response !== 'undefined' &&
60
+ Object.prototype.hasOwnProperty.call(error.response, 'status') &&
61
+ typeof error.response.status === 'number');
62
+ }
56
63
  var normalizeHeaders = function (headers, normalizedName) {
57
64
  var e_1, _a;
58
65
  try {
@@ -176,24 +183,28 @@ var AxiosHttpHandler = /** @class */ (function () {
176
183
  };
177
184
  })
178
185
  .catch(function (error) {
179
- var _a, _b, _c;
186
+ var _a, _b;
180
187
  // Error
181
188
  if (error.message !==
182
189
  StorageErrorStrings_1.AWSS3ProviderUploadErrorStrings.UPLOAD_PAUSED_MESSAGE) {
183
190
  logger.error(error.message);
184
191
  }
185
192
  // for axios' cancel error, we should re-throw it back so it's not considered an s3client error
186
- // if we return empty, or an abitrary error HttpResponse, it will be hard to debug down the line
187
- if (axios_1.default.isCancel(error)) {
193
+ // if we return empty, or an abitrary error HttpResponse, it will be hard to debug down the line.
194
+ //
195
+ // for errors that does not have a 'response' object, it's very likely that it is an unexpected error for
196
+ // example a disconnect. Without it we cannot meaningfully reconstruct a HttpResponse, and the AWS SDK might
197
+ // consider the request successful by mistake. In this case we should also re-throw the error.
198
+ if (axios_1.default.isCancel(error) || !hasErrorResponse(error)) {
188
199
  throw error;
189
200
  }
190
201
  // otherwise, we should re-construct an HttpResponse from the error, so that it can be passed down to other
191
202
  // aws sdk middleware (e.g retry, clock skew correction, error message serializing)
192
203
  return {
193
204
  response: new protocol_http_1.HttpResponse({
194
- statusCode: (_a = error.response) === null || _a === void 0 ? void 0 : _a.status,
195
- body: (_b = error.response) === null || _b === void 0 ? void 0 : _b.data,
196
- headers: (_c = error.response) === null || _c === void 0 ? void 0 : _c.headers,
205
+ statusCode: error.response.status,
206
+ body: (_a = error.response) === null || _a === void 0 ? void 0 : _a.data,
207
+ headers: (_b = error.response) === null || _b === void 0 ? void 0 : _b.headers,
197
208
  }),
198
209
  };
199
210
  }),
@@ -1 +1 @@
1
- {"version":3,"file":"axios-http-handler.js","sourceRoot":"","sources":["../../src/providers/axios-http-handler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"axios-http-handler.js","sourceRoot":"","sources":["../../src/providers/axios-http-handler.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,13 @@ import { FetchHttpHandlerOptions } from '@aws-sdk/fetch-http-handler';
6
6
  import * as events from 'events';
7
7
  export declare const SEND_UPLOAD_PROGRESS_EVENT = "sendUploadProgress";
8
8
  export declare const SEND_DOWNLOAD_PROGRESS_EVENT = "sendDownloadProgress";
9
+ export declare type ErrorWithResponse = {
10
+ response: {
11
+ status: number;
12
+ } & {
13
+ [key: string]: any;
14
+ };
15
+ };
9
16
  export declare const reactNativeRequestTransformer: AxiosTransformer[];
10
17
  export declare type AxiosHttpHandlerOptions = HttpHandlerOptions & {
11
18
  cancelTokenSource?: CancelTokenSource;
@@ -48,6 +48,13 @@ export var SEND_DOWNLOAD_PROGRESS_EVENT = 'sendDownloadProgress';
48
48
  function isBlob(body) {
49
49
  return typeof Blob !== 'undefined' && body instanceof Blob;
50
50
  }
51
+ function hasErrorResponse(error) {
52
+ return (typeof error !== 'undefined' &&
53
+ Object.prototype.hasOwnProperty.call(error, 'response') &&
54
+ typeof error.response !== 'undefined' &&
55
+ Object.prototype.hasOwnProperty.call(error.response, 'status') &&
56
+ typeof error.response.status === 'number');
57
+ }
51
58
  var normalizeHeaders = function (headers, normalizedName) {
52
59
  var e_1, _a;
53
60
  try {
@@ -171,24 +178,28 @@ var AxiosHttpHandler = /** @class */ (function () {
171
178
  };
172
179
  })
173
180
  .catch(function (error) {
174
- var _a, _b, _c;
181
+ var _a, _b;
175
182
  // Error
176
183
  if (error.message !==
177
184
  AWSS3ProviderUploadErrorStrings.UPLOAD_PAUSED_MESSAGE) {
178
185
  logger.error(error.message);
179
186
  }
180
187
  // for axios' cancel error, we should re-throw it back so it's not considered an s3client error
181
- // if we return empty, or an abitrary error HttpResponse, it will be hard to debug down the line
182
- if (axios.isCancel(error)) {
188
+ // if we return empty, or an abitrary error HttpResponse, it will be hard to debug down the line.
189
+ //
190
+ // for errors that does not have a 'response' object, it's very likely that it is an unexpected error for
191
+ // example a disconnect. Without it we cannot meaningfully reconstruct a HttpResponse, and the AWS SDK might
192
+ // consider the request successful by mistake. In this case we should also re-throw the error.
193
+ if (axios.isCancel(error) || !hasErrorResponse(error)) {
183
194
  throw error;
184
195
  }
185
196
  // otherwise, we should re-construct an HttpResponse from the error, so that it can be passed down to other
186
197
  // aws sdk middleware (e.g retry, clock skew correction, error message serializing)
187
198
  return {
188
199
  response: new HttpResponse({
189
- statusCode: (_a = error.response) === null || _a === void 0 ? void 0 : _a.status,
190
- body: (_b = error.response) === null || _b === void 0 ? void 0 : _b.data,
191
- headers: (_c = error.response) === null || _c === void 0 ? void 0 : _c.headers,
200
+ statusCode: error.response.status,
201
+ body: (_a = error.response) === null || _a === void 0 ? void 0 : _a.data,
202
+ headers: (_b = error.response) === null || _b === void 0 ? void 0 : _b.headers,
192
203
  }),
193
204
  };
194
205
  }),
@@ -1 +1 @@
1
- {"version":3,"file":"axios-http-handler.js","sourceRoot":"","sources":["../../src/providers/axios-http-handler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"axios-http-handler.js","sourceRoot":"","sources":["../../src/providers/axios-http-handler.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aws-amplify/storage",
3
- "version": "4.4.18",
3
+ "version": "4.4.19",
4
4
  "description": "Storage category of aws-amplify",
5
5
  "main": "./lib/index.js",
6
6
  "module": "./lib-esm/index.js",
@@ -41,7 +41,7 @@
41
41
  },
42
42
  "homepage": "https://aws-amplify.github.io/",
43
43
  "dependencies": {
44
- "@aws-amplify/core": "4.4.2",
44
+ "@aws-amplify/core": "4.5.0",
45
45
  "@aws-sdk/client-s3": "3.6.1",
46
46
  "@aws-sdk/s3-request-presigner": "3.6.1",
47
47
  "@aws-sdk/util-create-request": "3.6.1",
@@ -98,5 +98,5 @@
98
98
  "devDependencies": {
99
99
  "@types/sinon": "^7.5.1"
100
100
  },
101
- "gitHead": "e07feb7b90eedeb21c0b314a5e6511f090f788f4"
101
+ "gitHead": "88fa9322e9c3df523ebf52b9924dc46e7a976b53"
102
102
  }
@@ -29,10 +29,24 @@ const logger = new Logger('axios-http-handler');
29
29
  export const SEND_UPLOAD_PROGRESS_EVENT = 'sendUploadProgress';
30
30
  export const SEND_DOWNLOAD_PROGRESS_EVENT = 'sendDownloadProgress';
31
31
 
32
+ export type ErrorWithResponse = {
33
+ response: { status: number } & { [key: string]: any };
34
+ };
35
+
32
36
  function isBlob(body: any): body is Blob {
33
37
  return typeof Blob !== 'undefined' && body instanceof Blob;
34
38
  }
35
39
 
40
+ function hasErrorResponse(error: any): error is ErrorWithResponse {
41
+ return (
42
+ typeof error !== 'undefined' &&
43
+ Object.prototype.hasOwnProperty.call(error, 'response') &&
44
+ typeof error.response !== 'undefined' &&
45
+ Object.prototype.hasOwnProperty.call(error.response, 'status') &&
46
+ typeof error.response.status === 'number'
47
+ );
48
+ }
49
+
36
50
  const normalizeHeaders = (
37
51
  headers: Record<string, string>,
38
52
  normalizedName: string
@@ -186,15 +200,19 @@ export class AxiosHttpHandler implements HttpHandler {
186
200
  logger.error(error.message);
187
201
  }
188
202
  // for axios' cancel error, we should re-throw it back so it's not considered an s3client error
189
- // if we return empty, or an abitrary error HttpResponse, it will be hard to debug down the line
190
- if (axios.isCancel(error)) {
203
+ // if we return empty, or an abitrary error HttpResponse, it will be hard to debug down the line.
204
+ //
205
+ // for errors that does not have a 'response' object, it's very likely that it is an unexpected error for
206
+ // example a disconnect. Without it we cannot meaningfully reconstruct a HttpResponse, and the AWS SDK might
207
+ // consider the request successful by mistake. In this case we should also re-throw the error.
208
+ if (axios.isCancel(error) || !hasErrorResponse(error)) {
191
209
  throw error;
192
210
  }
193
211
  // otherwise, we should re-construct an HttpResponse from the error, so that it can be passed down to other
194
212
  // aws sdk middleware (e.g retry, clock skew correction, error message serializing)
195
213
  return {
196
214
  response: new HttpResponse({
197
- statusCode: error.response?.status,
215
+ statusCode: error.response.status,
198
216
  body: error.response?.data,
199
217
  headers: error.response?.headers,
200
218
  }),