@aws-amplify/storage 6.7.16-unstable.b383885.0 → 6.7.16

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 (117) hide show
  1. package/dist/cjs/errors/IntegrityError.js +6 -7
  2. package/dist/cjs/errors/IntegrityError.js.map +1 -1
  3. package/dist/cjs/internals/apis/getDataAccess.js +0 -1
  4. package/dist/cjs/internals/apis/getDataAccess.js.map +1 -1
  5. package/dist/cjs/internals/apis/listCallerAccessGrants.js +3 -4
  6. package/dist/cjs/internals/apis/listCallerAccessGrants.js.map +1 -1
  7. package/dist/cjs/providers/s3/apis/internal/list.js +1 -1
  8. package/dist/cjs/providers/s3/apis/internal/list.js.map +1 -1
  9. package/dist/cjs/providers/s3/apis/internal/uploadData/multipart/uploadHandlers.js +1 -2
  10. package/dist/cjs/providers/s3/apis/internal/uploadData/multipart/uploadHandlers.js.map +1 -1
  11. package/dist/cjs/providers/s3/utils/client/runtime/s3TransferHandler/xhr.js +0 -2
  12. package/dist/cjs/providers/s3/utils/client/runtime/s3TransferHandler/xhr.js.map +1 -1
  13. package/dist/cjs/providers/s3/utils/client/s3control/getDataAccess.js +2 -1
  14. package/dist/cjs/providers/s3/utils/client/s3control/getDataAccess.js.map +1 -1
  15. package/dist/cjs/providers/s3/utils/client/s3control/listCallerAccessGrants.js +2 -1
  16. package/dist/cjs/providers/s3/utils/client/s3control/listCallerAccessGrants.js.map +1 -1
  17. package/dist/cjs/providers/s3/utils/client/s3data/abortMultipartUpload.js +2 -3
  18. package/dist/cjs/providers/s3/utils/client/s3data/abortMultipartUpload.js.map +1 -1
  19. package/dist/cjs/providers/s3/utils/client/s3data/completeMultipartUpload.js +5 -6
  20. package/dist/cjs/providers/s3/utils/client/s3data/completeMultipartUpload.js.map +1 -1
  21. package/dist/cjs/providers/s3/utils/client/s3data/copyObject.js +2 -5
  22. package/dist/cjs/providers/s3/utils/client/s3data/copyObject.js.map +1 -1
  23. package/dist/cjs/providers/s3/utils/client/s3data/createMultipartUpload.js +2 -2
  24. package/dist/cjs/providers/s3/utils/client/s3data/createMultipartUpload.js.map +1 -1
  25. package/dist/cjs/providers/s3/utils/client/s3data/deleteObject.js +2 -4
  26. package/dist/cjs/providers/s3/utils/client/s3data/deleteObject.js.map +1 -1
  27. package/dist/cjs/providers/s3/utils/client/s3data/getObject.js +2 -5
  28. package/dist/cjs/providers/s3/utils/client/s3data/getObject.js.map +1 -1
  29. package/dist/cjs/providers/s3/utils/client/s3data/headObject.js +2 -1
  30. package/dist/cjs/providers/s3/utils/client/s3data/headObject.js.map +1 -1
  31. package/dist/cjs/providers/s3/utils/client/s3data/listObjectsV2.js +3 -2
  32. package/dist/cjs/providers/s3/utils/client/s3data/listObjectsV2.js.map +1 -1
  33. package/dist/cjs/providers/s3/utils/client/s3data/listParts.js +2 -3
  34. package/dist/cjs/providers/s3/utils/client/s3data/listParts.js.map +1 -1
  35. package/dist/cjs/providers/s3/utils/client/s3data/putObject.js +2 -5
  36. package/dist/cjs/providers/s3/utils/client/s3data/putObject.js.map +1 -1
  37. package/dist/cjs/providers/s3/utils/client/s3data/uploadPart.js +2 -2
  38. package/dist/cjs/providers/s3/utils/client/s3data/uploadPart.js.map +1 -1
  39. package/dist/cjs/providers/s3/utils/client/utils/deserializeHelpers.js +12 -8
  40. package/dist/cjs/providers/s3/utils/client/utils/deserializeHelpers.js.map +1 -1
  41. package/dist/esm/errors/IntegrityError.d.ts +1 -1
  42. package/dist/esm/errors/IntegrityError.mjs +6 -7
  43. package/dist/esm/errors/IntegrityError.mjs.map +1 -1
  44. package/dist/esm/internals/apis/getDataAccess.mjs +0 -1
  45. package/dist/esm/internals/apis/getDataAccess.mjs.map +1 -1
  46. package/dist/esm/internals/apis/listCallerAccessGrants.mjs +3 -4
  47. package/dist/esm/internals/apis/listCallerAccessGrants.mjs.map +1 -1
  48. package/dist/esm/providers/s3/apis/internal/list.mjs +1 -1
  49. package/dist/esm/providers/s3/apis/internal/list.mjs.map +1 -1
  50. package/dist/esm/providers/s3/apis/internal/uploadData/multipart/uploadHandlers.mjs +1 -2
  51. package/dist/esm/providers/s3/apis/internal/uploadData/multipart/uploadHandlers.mjs.map +1 -1
  52. package/dist/esm/providers/s3/utils/client/runtime/s3TransferHandler/xhr.d.ts +2 -2
  53. package/dist/esm/providers/s3/utils/client/runtime/s3TransferHandler/xhr.mjs +1 -3
  54. package/dist/esm/providers/s3/utils/client/runtime/s3TransferHandler/xhr.mjs.map +1 -1
  55. package/dist/esm/providers/s3/utils/client/s3control/getDataAccess.d.ts +1 -1
  56. package/dist/esm/providers/s3/utils/client/s3control/getDataAccess.mjs +2 -1
  57. package/dist/esm/providers/s3/utils/client/s3control/getDataAccess.mjs.map +1 -1
  58. package/dist/esm/providers/s3/utils/client/s3control/listCallerAccessGrants.d.ts +1 -1
  59. package/dist/esm/providers/s3/utils/client/s3control/listCallerAccessGrants.mjs +2 -1
  60. package/dist/esm/providers/s3/utils/client/s3control/listCallerAccessGrants.mjs.map +1 -1
  61. package/dist/esm/providers/s3/utils/client/s3data/abortMultipartUpload.d.ts +1 -1
  62. package/dist/esm/providers/s3/utils/client/s3data/abortMultipartUpload.mjs +2 -3
  63. package/dist/esm/providers/s3/utils/client/s3data/abortMultipartUpload.mjs.map +1 -1
  64. package/dist/esm/providers/s3/utils/client/s3data/completeMultipartUpload.d.ts +1 -1
  65. package/dist/esm/providers/s3/utils/client/s3data/completeMultipartUpload.mjs +5 -6
  66. package/dist/esm/providers/s3/utils/client/s3data/completeMultipartUpload.mjs.map +1 -1
  67. package/dist/esm/providers/s3/utils/client/s3data/copyObject.d.ts +1 -1
  68. package/dist/esm/providers/s3/utils/client/s3data/copyObject.mjs +3 -6
  69. package/dist/esm/providers/s3/utils/client/s3data/copyObject.mjs.map +1 -1
  70. package/dist/esm/providers/s3/utils/client/s3data/createMultipartUpload.d.ts +1 -1
  71. package/dist/esm/providers/s3/utils/client/s3data/createMultipartUpload.mjs +2 -2
  72. package/dist/esm/providers/s3/utils/client/s3data/createMultipartUpload.mjs.map +1 -1
  73. package/dist/esm/providers/s3/utils/client/s3data/deleteObject.d.ts +1 -1
  74. package/dist/esm/providers/s3/utils/client/s3data/deleteObject.mjs +3 -5
  75. package/dist/esm/providers/s3/utils/client/s3data/deleteObject.mjs.map +1 -1
  76. package/dist/esm/providers/s3/utils/client/s3data/getObject.d.ts +1 -1
  77. package/dist/esm/providers/s3/utils/client/s3data/getObject.mjs +3 -6
  78. package/dist/esm/providers/s3/utils/client/s3data/getObject.mjs.map +1 -1
  79. package/dist/esm/providers/s3/utils/client/s3data/headObject.d.ts +1 -1
  80. package/dist/esm/providers/s3/utils/client/s3data/headObject.mjs +2 -1
  81. package/dist/esm/providers/s3/utils/client/s3data/headObject.mjs.map +1 -1
  82. package/dist/esm/providers/s3/utils/client/s3data/listObjectsV2.d.ts +1 -1
  83. package/dist/esm/providers/s3/utils/client/s3data/listObjectsV2.mjs +3 -2
  84. package/dist/esm/providers/s3/utils/client/s3data/listObjectsV2.mjs.map +1 -1
  85. package/dist/esm/providers/s3/utils/client/s3data/listParts.d.ts +1 -1
  86. package/dist/esm/providers/s3/utils/client/s3data/listParts.mjs +2 -3
  87. package/dist/esm/providers/s3/utils/client/s3data/listParts.mjs.map +1 -1
  88. package/dist/esm/providers/s3/utils/client/s3data/putObject.d.ts +1 -1
  89. package/dist/esm/providers/s3/utils/client/s3data/putObject.mjs +3 -6
  90. package/dist/esm/providers/s3/utils/client/s3data/putObject.mjs.map +1 -1
  91. package/dist/esm/providers/s3/utils/client/s3data/uploadPart.d.ts +1 -1
  92. package/dist/esm/providers/s3/utils/client/s3data/uploadPart.mjs +2 -2
  93. package/dist/esm/providers/s3/utils/client/s3data/uploadPart.mjs.map +1 -1
  94. package/dist/esm/providers/s3/utils/client/utils/deserializeHelpers.d.ts +3 -6
  95. package/dist/esm/providers/s3/utils/client/utils/deserializeHelpers.mjs +12 -8
  96. package/dist/esm/providers/s3/utils/client/utils/deserializeHelpers.mjs.map +1 -1
  97. package/package.json +118 -118
  98. package/src/errors/IntegrityError.ts +5 -4
  99. package/src/internals/apis/getDataAccess.ts +0 -1
  100. package/src/internals/apis/listCallerAccessGrants.ts +3 -8
  101. package/src/providers/s3/apis/internal/list.ts +1 -1
  102. package/src/providers/s3/apis/internal/uploadData/multipart/uploadHandlers.ts +1 -2
  103. package/src/providers/s3/utils/client/runtime/s3TransferHandler/xhr.ts +1 -13
  104. package/src/providers/s3/utils/client/s3control/getDataAccess.ts +2 -1
  105. package/src/providers/s3/utils/client/s3control/listCallerAccessGrants.ts +2 -1
  106. package/src/providers/s3/utils/client/s3data/abortMultipartUpload.ts +2 -3
  107. package/src/providers/s3/utils/client/s3data/completeMultipartUpload.ts +5 -6
  108. package/src/providers/s3/utils/client/s3data/copyObject.ts +3 -9
  109. package/src/providers/s3/utils/client/s3data/createMultipartUpload.ts +2 -2
  110. package/src/providers/s3/utils/client/s3data/deleteObject.ts +3 -8
  111. package/src/providers/s3/utils/client/s3data/getObject.ts +3 -9
  112. package/src/providers/s3/utils/client/s3data/headObject.ts +2 -1
  113. package/src/providers/s3/utils/client/s3data/listObjectsV2.ts +3 -2
  114. package/src/providers/s3/utils/client/s3data/listParts.ts +2 -3
  115. package/src/providers/s3/utils/client/s3data/putObject.ts +3 -9
  116. package/src/providers/s3/utils/client/s3data/uploadPart.ts +2 -2
  117. package/src/providers/s3/utils/client/utils/deserializeHelpers.ts +14 -12
@@ -1 +1 @@
1
- {"version":3,"file":"copyObject.mjs","sources":["../../../../../../../src/providers/s3/utils/client/s3data/copyObject.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { parseMetadata, } from '@aws-amplify/core/internals/aws-client-utils';\nimport { AmplifyUrl, AmplifyUrlSearchParams, } from '@aws-amplify/core/internals/utils';\nimport { composeServiceApi } from '@aws-amplify/core/internals/aws-client-utils/composers';\nimport { assignStringVariables, bothNilOrEqual, buildStorageServiceError, parseXmlBody, s3TransferHandler, serializeObjectConfigsToHeaders, serializePathnameObjectKey, validateS3RequiredParameter, } from '../utils';\nimport { IntegrityError } from '../../../../../errors/IntegrityError';\nimport { validateObjectUrl } from '../../validateObjectUrl';\nimport { defaultConfig, parseXmlError } from './base';\nconst copyObjectSerializer = async (input, endpoint) => {\n const headers = {\n ...(await serializeObjectConfigsToHeaders(input)),\n ...assignStringVariables({\n 'x-amz-copy-source': input.CopySource,\n 'x-amz-metadata-directive': input.MetadataDirective,\n 'x-amz-copy-source-if-match': input.CopySourceIfMatch,\n 'x-amz-copy-source-if-unmodified-since': input.CopySourceIfUnmodifiedSince?.toUTCString(),\n 'x-amz-source-expected-bucket-owner': input.ExpectedSourceBucketOwner,\n 'x-amz-expected-bucket-owner': input.ExpectedBucketOwner,\n }),\n };\n validateCopyObjectHeaders(input, headers);\n const url = new AmplifyUrl(endpoint.url.toString());\n validateS3RequiredParameter(!!input.Key, 'Key');\n url.pathname = serializePathnameObjectKey(url, input.Key);\n url.search = new AmplifyUrlSearchParams({\n 'x-id': 'CopyObject',\n }).toString();\n validateObjectUrl({\n bucketName: input.Bucket,\n key: input.Key,\n objectURL: url,\n });\n return {\n method: 'PUT',\n headers,\n url,\n };\n};\nexport const validateCopyObjectHeaders = (input, headers) => {\n const validations = [\n headers['x-amz-copy-source'] === input.CopySource,\n bothNilOrEqual(input.MetadataDirective, headers['x-amz-metadata-directive']),\n bothNilOrEqual(input.CopySourceIfMatch, headers['x-amz-copy-source-if-match']),\n bothNilOrEqual(input.CopySourceIfUnmodifiedSince?.toUTCString(), headers['x-amz-copy-source-if-unmodified-since']),\n ];\n if (validations.some(validation => !validation)) {\n throw new IntegrityError();\n }\n};\nconst copyObjectDeserializer = async (response) => {\n if (response.statusCode >= 300) {\n // error is always set when statusCode >= 300\n throw buildStorageServiceError((await parseXmlError(response)));\n }\n else {\n await parseXmlBody(response);\n return {\n $metadata: parseMetadata(response),\n };\n }\n};\nexport const copyObject = composeServiceApi(s3TransferHandler, copyObjectSerializer, copyObjectDeserializer, { ...defaultConfig, responseType: 'text' });\n"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA;AACA;AAQA,MAAM,oBAAoB,GAAG,OAAO,KAAK,EAAE,QAAQ,KAAK;AACxD,IAAI,MAAM,OAAO,GAAG;AACpB,QAAQ,IAAI,MAAM,+BAA+B,CAAC,KAAK,CAAC,CAAC;AACzD,QAAQ,GAAG,qBAAqB,CAAC;AACjC,YAAY,mBAAmB,EAAE,KAAK,CAAC,UAAU;AACjD,YAAY,0BAA0B,EAAE,KAAK,CAAC,iBAAiB;AAC/D,YAAY,4BAA4B,EAAE,KAAK,CAAC,iBAAiB;AACjE,YAAY,uCAAuC,EAAE,KAAK,CAAC,2BAA2B,EAAE,WAAW,EAAE;AACrG,YAAY,oCAAoC,EAAE,KAAK,CAAC,yBAAyB;AACjF,YAAY,6BAA6B,EAAE,KAAK,CAAC,mBAAmB;AACpE,SAAS,CAAC;AACV,KAAK;AACL,IAAI,yBAAyB,CAAC,KAAK,EAAE,OAAO,CAAC;AAC7C,IAAI,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;AACvD,IAAI,2BAA2B,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC;AACnD,IAAI,GAAG,CAAC,QAAQ,GAAG,0BAA0B,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC;AAC7D,IAAI,GAAG,CAAC,MAAM,GAAG,IAAI,sBAAsB,CAAC;AAC5C,QAAQ,MAAM,EAAE,YAAY;AAC5B,KAAK,CAAC,CAAC,QAAQ,EAAE;AACjB,IAAI,iBAAiB,CAAC;AACtB,QAAQ,UAAU,EAAE,KAAK,CAAC,MAAM;AAChC,QAAQ,GAAG,EAAE,KAAK,CAAC,GAAG;AACtB,QAAQ,SAAS,EAAE,GAAG;AACtB,KAAK,CAAC;AACN,IAAI,OAAO;AACX,QAAQ,MAAM,EAAE,KAAK;AACrB,QAAQ,OAAO;AACf,QAAQ,GAAG;AACX,KAAK;AACL,CAAC;AACW,MAAC,yBAAyB,GAAG,CAAC,KAAK,EAAE,OAAO,KAAK;AAC7D,IAAI,MAAM,WAAW,GAAG;AACxB,QAAQ,OAAO,CAAC,mBAAmB,CAAC,KAAK,KAAK,CAAC,UAAU;AACzD,QAAQ,cAAc,CAAC,KAAK,CAAC,iBAAiB,EAAE,OAAO,CAAC,0BAA0B,CAAC,CAAC;AACpF,QAAQ,cAAc,CAAC,KAAK,CAAC,iBAAiB,EAAE,OAAO,CAAC,4BAA4B,CAAC,CAAC;AACtF,QAAQ,cAAc,CAAC,KAAK,CAAC,2BAA2B,EAAE,WAAW,EAAE,EAAE,OAAO,CAAC,uCAAuC,CAAC,CAAC;AAC1H,KAAK;AACL,IAAI,IAAI,WAAW,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC,UAAU,CAAC,EAAE;AACrD,QAAQ,MAAM,IAAI,cAAc,EAAE;AAClC;AACA;AACA,MAAM,sBAAsB,GAAG,OAAO,QAAQ,KAAK;AACnD,IAAI,IAAI,QAAQ,CAAC,UAAU,IAAI,GAAG,EAAE;AACpC;AACA,QAAQ,MAAM,wBAAwB,EAAE,MAAM,aAAa,CAAC,QAAQ,CAAC,EAAE;AACvE;AACA,SAAS;AACT,QAAQ,MAAM,YAAY,CAAC,QAAQ,CAAC;AACpC,QAAQ,OAAO;AACf,YAAY,SAAS,EAAE,aAAa,CAAC,QAAQ,CAAC;AAC9C,SAAS;AACT;AACA,CAAC;AACW,MAAC,UAAU,GAAG,iBAAiB,CAAC,iBAAiB,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,EAAE,GAAG,aAAa,EAAE,YAAY,EAAE,MAAM,EAAE;;;;"}
1
+ {"version":3,"file":"copyObject.mjs","sources":["../../../../../../../src/providers/s3/utils/client/s3data/copyObject.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { parseMetadata, } from '@aws-amplify/core/internals/aws-client-utils';\nimport { AmplifyUrl } from '@aws-amplify/core/internals/utils';\nimport { composeServiceApi } from '@aws-amplify/core/internals/aws-client-utils/composers';\nimport { assignStringVariables, bothNilOrEqual, buildStorageServiceError, parseXmlBody, s3TransferHandler, serializeObjectConfigsToHeaders, serializePathnameObjectKey, validateS3RequiredParameter, } from '../utils';\nimport { IntegrityError } from '../../../../../errors/IntegrityError';\nimport { validateObjectUrl } from '../../validateObjectUrl';\nimport { defaultConfig, parseXmlError } from './base';\nconst copyObjectSerializer = async (input, endpoint) => {\n const headers = {\n ...(await serializeObjectConfigsToHeaders(input)),\n ...assignStringVariables({\n 'x-amz-copy-source': input.CopySource,\n 'x-amz-metadata-directive': input.MetadataDirective,\n 'x-amz-copy-source-if-match': input.CopySourceIfMatch,\n 'x-amz-copy-source-if-unmodified-since': input.CopySourceIfUnmodifiedSince?.toUTCString(),\n 'x-amz-source-expected-bucket-owner': input.ExpectedSourceBucketOwner,\n 'x-amz-expected-bucket-owner': input.ExpectedBucketOwner,\n }),\n };\n validateCopyObjectHeaders(input, headers);\n const url = new AmplifyUrl(endpoint.url.toString());\n validateS3RequiredParameter(!!input.Key, 'Key');\n url.pathname = serializePathnameObjectKey(url, input.Key);\n validateObjectUrl({\n bucketName: input.Bucket,\n key: input.Key,\n objectURL: url,\n });\n return {\n method: 'PUT',\n headers,\n url,\n };\n};\nexport const validateCopyObjectHeaders = (input, headers) => {\n const validations = [\n headers['x-amz-copy-source'] === input.CopySource,\n bothNilOrEqual(input.MetadataDirective, headers['x-amz-metadata-directive']),\n bothNilOrEqual(input.CopySourceIfMatch, headers['x-amz-copy-source-if-match']),\n bothNilOrEqual(input.CopySourceIfUnmodifiedSince?.toUTCString(), headers['x-amz-copy-source-if-unmodified-since']),\n ];\n if (validations.some(validation => !validation)) {\n throw new IntegrityError();\n }\n};\nconst copyObjectDeserializer = async (response) => {\n if (response.statusCode >= 300) {\n const error = (await parseXmlError(response));\n throw buildStorageServiceError(error, response.statusCode);\n }\n else {\n await parseXmlBody(response);\n return {\n $metadata: parseMetadata(response),\n };\n }\n};\nexport const copyObject = composeServiceApi(s3TransferHandler, copyObjectSerializer, copyObjectDeserializer, { ...defaultConfig, responseType: 'text' });\n"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA;AACA;AAQA,MAAM,oBAAoB,GAAG,OAAO,KAAK,EAAE,QAAQ,KAAK;AACxD,IAAI,MAAM,OAAO,GAAG;AACpB,QAAQ,IAAI,MAAM,+BAA+B,CAAC,KAAK,CAAC,CAAC;AACzD,QAAQ,GAAG,qBAAqB,CAAC;AACjC,YAAY,mBAAmB,EAAE,KAAK,CAAC,UAAU;AACjD,YAAY,0BAA0B,EAAE,KAAK,CAAC,iBAAiB;AAC/D,YAAY,4BAA4B,EAAE,KAAK,CAAC,iBAAiB;AACjE,YAAY,uCAAuC,EAAE,KAAK,CAAC,2BAA2B,EAAE,WAAW,EAAE;AACrG,YAAY,oCAAoC,EAAE,KAAK,CAAC,yBAAyB;AACjF,YAAY,6BAA6B,EAAE,KAAK,CAAC,mBAAmB;AACpE,SAAS,CAAC;AACV,KAAK;AACL,IAAI,yBAAyB,CAAC,KAAK,EAAE,OAAO,CAAC;AAC7C,IAAI,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;AACvD,IAAI,2BAA2B,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC;AACnD,IAAI,GAAG,CAAC,QAAQ,GAAG,0BAA0B,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC;AAC7D,IAAI,iBAAiB,CAAC;AACtB,QAAQ,UAAU,EAAE,KAAK,CAAC,MAAM;AAChC,QAAQ,GAAG,EAAE,KAAK,CAAC,GAAG;AACtB,QAAQ,SAAS,EAAE,GAAG;AACtB,KAAK,CAAC;AACN,IAAI,OAAO;AACX,QAAQ,MAAM,EAAE,KAAK;AACrB,QAAQ,OAAO;AACf,QAAQ,GAAG;AACX,KAAK;AACL,CAAC;AACW,MAAC,yBAAyB,GAAG,CAAC,KAAK,EAAE,OAAO,KAAK;AAC7D,IAAI,MAAM,WAAW,GAAG;AACxB,QAAQ,OAAO,CAAC,mBAAmB,CAAC,KAAK,KAAK,CAAC,UAAU;AACzD,QAAQ,cAAc,CAAC,KAAK,CAAC,iBAAiB,EAAE,OAAO,CAAC,0BAA0B,CAAC,CAAC;AACpF,QAAQ,cAAc,CAAC,KAAK,CAAC,iBAAiB,EAAE,OAAO,CAAC,4BAA4B,CAAC,CAAC;AACtF,QAAQ,cAAc,CAAC,KAAK,CAAC,2BAA2B,EAAE,WAAW,EAAE,EAAE,OAAO,CAAC,uCAAuC,CAAC,CAAC;AAC1H,KAAK;AACL,IAAI,IAAI,WAAW,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC,UAAU,CAAC,EAAE;AACrD,QAAQ,MAAM,IAAI,cAAc,EAAE;AAClC;AACA;AACA,MAAM,sBAAsB,GAAG,OAAO,QAAQ,KAAK;AACnD,IAAI,IAAI,QAAQ,CAAC,UAAU,IAAI,GAAG,EAAE;AACpC,QAAQ,MAAM,KAAK,IAAI,MAAM,aAAa,CAAC,QAAQ,CAAC,CAAC;AACrD,QAAQ,MAAM,wBAAwB,CAAC,KAAK,EAAE,QAAQ,CAAC,UAAU,CAAC;AAClE;AACA,SAAS;AACT,QAAQ,MAAM,YAAY,CAAC,QAAQ,CAAC;AACpC,QAAQ,OAAO;AACf,YAAY,SAAS,EAAE,aAAa,CAAC,QAAQ,CAAC;AAC9C,SAAS;AACT;AACA,CAAC;AACW,MAAC,UAAU,GAAG,iBAAiB,CAAC,iBAAiB,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,EAAE,GAAG,aAAa,EAAE,YAAY,EAAE,MAAM,EAAE;;;;"}
@@ -22,8 +22,8 @@ export declare const createMultipartUpload: (config: {
22
22
  onDownloadProgress?: ((event: import("../../../../..").TransferProgressEvent) => void) | undefined;
23
23
  onUploadProgress?: ((event: import("../../../../..").TransferProgressEvent) => void) | undefined;
24
24
  abortSignal?: AbortSignal | undefined;
25
- maxAttempts?: number | undefined;
26
25
  customEndpoint?: string | undefined;
27
26
  forcePathStyle?: boolean | undefined;
28
27
  userAgentHeader?: string | undefined;
28
+ maxAttempts?: number | undefined;
29
29
  }, input: import("./types").CreateMultipartUploadRequest) => Promise<CreateMultipartUploadOutput>;
@@ -38,8 +38,8 @@ const createMultipartUploadSerializer = async (input, endpoint) => {
38
38
  };
39
39
  const createMultipartUploadDeserializer = async (response) => {
40
40
  if (response.statusCode >= 300) {
41
- // error is always set when statusCode >= 300
42
- throw buildStorageServiceError((await parseXmlError(response)));
41
+ const error = (await parseXmlError(response));
42
+ throw buildStorageServiceError(error, response.statusCode);
43
43
  }
44
44
  else {
45
45
  const parsed = await parseXmlBody(response);
@@ -1 +1 @@
1
- {"version":3,"file":"createMultipartUpload.mjs","sources":["../../../../../../../src/providers/s3/utils/client/s3data/createMultipartUpload.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { parseMetadata, } from '@aws-amplify/core/internals/aws-client-utils';\nimport { AmplifyUrl } from '@aws-amplify/core/internals/utils';\nimport { composeServiceApi } from '@aws-amplify/core/internals/aws-client-utils/composers';\nimport { assignStringVariables, buildStorageServiceError, map, parseXmlBody, s3TransferHandler, serializeObjectConfigsToHeaders, serializePathnameObjectKey, validateS3RequiredParameter, } from '../utils';\nimport { validateObjectUrl } from '../../validateObjectUrl';\nimport { defaultConfig, parseXmlError } from './base';\nconst createMultipartUploadSerializer = async (input, endpoint) => {\n const headers = {\n ...(await serializeObjectConfigsToHeaders(input)),\n ...assignStringVariables({\n 'x-amz-checksum-algorithm': input.ChecksumAlgorithm,\n 'x-amz-expected-bucket-owner': input.ExpectedBucketOwner,\n }),\n };\n const url = new AmplifyUrl(endpoint.url.toString());\n validateS3RequiredParameter(!!input.Key, 'Key');\n url.pathname = serializePathnameObjectKey(url, input.Key);\n url.search = 'uploads';\n validateObjectUrl({\n bucketName: input.Bucket,\n key: input.Key,\n objectURL: url,\n });\n return {\n method: 'POST',\n headers,\n url,\n };\n};\nconst createMultipartUploadDeserializer = async (response) => {\n if (response.statusCode >= 300) {\n // error is always set when statusCode >= 300\n throw buildStorageServiceError((await parseXmlError(response)));\n }\n else {\n const parsed = await parseXmlBody(response);\n const contents = map(parsed, {\n UploadId: 'UploadId',\n });\n return {\n $metadata: parseMetadata(response),\n ...contents,\n };\n }\n};\nexport const createMultipartUpload = composeServiceApi(s3TransferHandler, createMultipartUploadSerializer, createMultipartUploadDeserializer, { ...defaultConfig, responseType: 'text' });\n"],"names":[],"mappings":";;;;;;;;;;;;;AAAA;AACA;AAOA,MAAM,+BAA+B,GAAG,OAAO,KAAK,EAAE,QAAQ,KAAK;AACnE,IAAI,MAAM,OAAO,GAAG;AACpB,QAAQ,IAAI,MAAM,+BAA+B,CAAC,KAAK,CAAC,CAAC;AACzD,QAAQ,GAAG,qBAAqB,CAAC;AACjC,YAAY,0BAA0B,EAAE,KAAK,CAAC,iBAAiB;AAC/D,YAAY,6BAA6B,EAAE,KAAK,CAAC,mBAAmB;AACpE,SAAS,CAAC;AACV,KAAK;AACL,IAAI,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;AACvD,IAAI,2BAA2B,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC;AACnD,IAAI,GAAG,CAAC,QAAQ,GAAG,0BAA0B,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC;AAC7D,IAAI,GAAG,CAAC,MAAM,GAAG,SAAS;AAC1B,IAAI,iBAAiB,CAAC;AACtB,QAAQ,UAAU,EAAE,KAAK,CAAC,MAAM;AAChC,QAAQ,GAAG,EAAE,KAAK,CAAC,GAAG;AACtB,QAAQ,SAAS,EAAE,GAAG;AACtB,KAAK,CAAC;AACN,IAAI,OAAO;AACX,QAAQ,MAAM,EAAE,MAAM;AACtB,QAAQ,OAAO;AACf,QAAQ,GAAG;AACX,KAAK;AACL,CAAC;AACD,MAAM,iCAAiC,GAAG,OAAO,QAAQ,KAAK;AAC9D,IAAI,IAAI,QAAQ,CAAC,UAAU,IAAI,GAAG,EAAE;AACpC;AACA,QAAQ,MAAM,wBAAwB,EAAE,MAAM,aAAa,CAAC,QAAQ,CAAC,EAAE;AACvE;AACA,SAAS;AACT,QAAQ,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,QAAQ,CAAC;AACnD,QAAQ,MAAM,QAAQ,GAAG,GAAG,CAAC,MAAM,EAAE;AACrC,YAAY,QAAQ,EAAE,UAAU;AAChC,SAAS,CAAC;AACV,QAAQ,OAAO;AACf,YAAY,SAAS,EAAE,aAAa,CAAC,QAAQ,CAAC;AAC9C,YAAY,GAAG,QAAQ;AACvB,SAAS;AACT;AACA,CAAC;AACW,MAAC,qBAAqB,GAAG,iBAAiB,CAAC,iBAAiB,EAAE,+BAA+B,EAAE,iCAAiC,EAAE,EAAE,GAAG,aAAa,EAAE,YAAY,EAAE,MAAM,EAAE;;;;"}
1
+ {"version":3,"file":"createMultipartUpload.mjs","sources":["../../../../../../../src/providers/s3/utils/client/s3data/createMultipartUpload.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { parseMetadata, } from '@aws-amplify/core/internals/aws-client-utils';\nimport { AmplifyUrl } from '@aws-amplify/core/internals/utils';\nimport { composeServiceApi } from '@aws-amplify/core/internals/aws-client-utils/composers';\nimport { assignStringVariables, buildStorageServiceError, map, parseXmlBody, s3TransferHandler, serializeObjectConfigsToHeaders, serializePathnameObjectKey, validateS3RequiredParameter, } from '../utils';\nimport { validateObjectUrl } from '../../validateObjectUrl';\nimport { defaultConfig, parseXmlError } from './base';\nconst createMultipartUploadSerializer = async (input, endpoint) => {\n const headers = {\n ...(await serializeObjectConfigsToHeaders(input)),\n ...assignStringVariables({\n 'x-amz-checksum-algorithm': input.ChecksumAlgorithm,\n 'x-amz-expected-bucket-owner': input.ExpectedBucketOwner,\n }),\n };\n const url = new AmplifyUrl(endpoint.url.toString());\n validateS3RequiredParameter(!!input.Key, 'Key');\n url.pathname = serializePathnameObjectKey(url, input.Key);\n url.search = 'uploads';\n validateObjectUrl({\n bucketName: input.Bucket,\n key: input.Key,\n objectURL: url,\n });\n return {\n method: 'POST',\n headers,\n url,\n };\n};\nconst createMultipartUploadDeserializer = async (response) => {\n if (response.statusCode >= 300) {\n const error = (await parseXmlError(response));\n throw buildStorageServiceError(error, response.statusCode);\n }\n else {\n const parsed = await parseXmlBody(response);\n const contents = map(parsed, {\n UploadId: 'UploadId',\n });\n return {\n $metadata: parseMetadata(response),\n ...contents,\n };\n }\n};\nexport const createMultipartUpload = composeServiceApi(s3TransferHandler, createMultipartUploadSerializer, createMultipartUploadDeserializer, { ...defaultConfig, responseType: 'text' });\n"],"names":[],"mappings":";;;;;;;;;;;;;AAAA;AACA;AAOA,MAAM,+BAA+B,GAAG,OAAO,KAAK,EAAE,QAAQ,KAAK;AACnE,IAAI,MAAM,OAAO,GAAG;AACpB,QAAQ,IAAI,MAAM,+BAA+B,CAAC,KAAK,CAAC,CAAC;AACzD,QAAQ,GAAG,qBAAqB,CAAC;AACjC,YAAY,0BAA0B,EAAE,KAAK,CAAC,iBAAiB;AAC/D,YAAY,6BAA6B,EAAE,KAAK,CAAC,mBAAmB;AACpE,SAAS,CAAC;AACV,KAAK;AACL,IAAI,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;AACvD,IAAI,2BAA2B,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC;AACnD,IAAI,GAAG,CAAC,QAAQ,GAAG,0BAA0B,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC;AAC7D,IAAI,GAAG,CAAC,MAAM,GAAG,SAAS;AAC1B,IAAI,iBAAiB,CAAC;AACtB,QAAQ,UAAU,EAAE,KAAK,CAAC,MAAM;AAChC,QAAQ,GAAG,EAAE,KAAK,CAAC,GAAG;AACtB,QAAQ,SAAS,EAAE,GAAG;AACtB,KAAK,CAAC;AACN,IAAI,OAAO;AACX,QAAQ,MAAM,EAAE,MAAM;AACtB,QAAQ,OAAO;AACf,QAAQ,GAAG;AACX,KAAK;AACL,CAAC;AACD,MAAM,iCAAiC,GAAG,OAAO,QAAQ,KAAK;AAC9D,IAAI,IAAI,QAAQ,CAAC,UAAU,IAAI,GAAG,EAAE;AACpC,QAAQ,MAAM,KAAK,IAAI,MAAM,aAAa,CAAC,QAAQ,CAAC,CAAC;AACrD,QAAQ,MAAM,wBAAwB,CAAC,KAAK,EAAE,QAAQ,CAAC,UAAU,CAAC;AAClE;AACA,SAAS;AACT,QAAQ,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,QAAQ,CAAC;AACnD,QAAQ,MAAM,QAAQ,GAAG,GAAG,CAAC,MAAM,EAAE;AACrC,YAAY,QAAQ,EAAE,UAAU;AAChC,SAAS,CAAC;AACV,QAAQ,OAAO;AACf,YAAY,SAAS,EAAE,aAAa,CAAC,QAAQ,CAAC;AAC9C,YAAY,GAAG,QAAQ;AACvB,SAAS;AACT;AACA,CAAC;AACW,MAAC,qBAAqB,GAAG,iBAAiB,CAAC,iBAAiB,EAAE,+BAA+B,EAAE,iCAAiC,EAAE,EAAE,GAAG,aAAa,EAAE,YAAY,EAAE,MAAM,EAAE;;;;"}
@@ -21,8 +21,8 @@ export declare const deleteObject: (config: {
21
21
  onDownloadProgress?: ((event: import("../../../../..").TransferProgressEvent) => void) | undefined;
22
22
  onUploadProgress?: ((event: import("../../../../..").TransferProgressEvent) => void) | undefined;
23
23
  abortSignal?: AbortSignal | undefined;
24
- maxAttempts?: number | undefined;
25
24
  customEndpoint?: string | undefined;
26
25
  forcePathStyle?: boolean | undefined;
27
26
  userAgentHeader?: string | undefined;
27
+ maxAttempts?: number | undefined;
28
28
  }, input: DeleteObjectInput) => Promise<DeleteObjectCommandOutput>;
@@ -1,5 +1,5 @@
1
1
  import { parseMetadata } from '@aws-amplify/core/internals/aws-client-utils';
2
- import { AmplifyUrl, AmplifyUrlSearchParams } from '@aws-amplify/core/internals/utils';
2
+ import { AmplifyUrl } from '@aws-amplify/core/internals/utils';
3
3
  import { composeServiceApi } from '@aws-amplify/core/internals/aws-client-utils/composers';
4
4
  import { s3TransferHandler } from '../runtime/s3TransferHandler/fetch.mjs';
5
5
  import 'fast-xml-parser';
@@ -16,9 +16,6 @@ const deleteObjectSerializer = (input, endpoint) => {
16
16
  const url = new AmplifyUrl(endpoint.url.toString());
17
17
  validateS3RequiredParameter(!!input.Key, 'Key');
18
18
  url.pathname = serializePathnameObjectKey(url, input.Key);
19
- url.search = new AmplifyUrlSearchParams({
20
- 'x-id': 'DeleteObject',
21
- }).toString();
22
19
  validateObjectUrl({
23
20
  bucketName: input.Bucket,
24
21
  key: input.Key,
@@ -36,7 +33,8 @@ const deleteObjectSerializer = (input, endpoint) => {
36
33
  const deleteObjectDeserializer = async (response) => {
37
34
  if (response.statusCode >= 300) {
38
35
  // error is always set when statusCode >= 300
39
- throw buildStorageServiceError((await parseXmlError(response)));
36
+ const error = (await parseXmlError(response));
37
+ throw buildStorageServiceError(error, response.statusCode);
40
38
  }
41
39
  else {
42
40
  const content = map(response.headers, {
@@ -1 +1 @@
1
- {"version":3,"file":"deleteObject.mjs","sources":["../../../../../../../src/providers/s3/utils/client/s3data/deleteObject.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { parseMetadata, } from '@aws-amplify/core/internals/aws-client-utils';\nimport { AmplifyUrl, AmplifyUrlSearchParams, } from '@aws-amplify/core/internals/utils';\nimport { composeServiceApi } from '@aws-amplify/core/internals/aws-client-utils/composers';\nimport { assignStringVariables, buildStorageServiceError, deserializeBoolean, map, s3TransferHandler, serializePathnameObjectKey, validateS3RequiredParameter, } from '../utils';\nimport { validateObjectUrl } from '../../validateObjectUrl';\nimport { defaultConfig, parseXmlError } from './base';\nconst deleteObjectSerializer = (input, endpoint) => {\n const url = new AmplifyUrl(endpoint.url.toString());\n validateS3RequiredParameter(!!input.Key, 'Key');\n url.pathname = serializePathnameObjectKey(url, input.Key);\n url.search = new AmplifyUrlSearchParams({\n 'x-id': 'DeleteObject',\n }).toString();\n validateObjectUrl({\n bucketName: input.Bucket,\n key: input.Key,\n objectURL: url,\n });\n const headers = assignStringVariables({\n 'x-amz-expected-bucket-owner': input.ExpectedBucketOwner,\n });\n return {\n method: 'DELETE',\n headers,\n url,\n };\n};\nconst deleteObjectDeserializer = async (response) => {\n if (response.statusCode >= 300) {\n // error is always set when statusCode >= 300\n throw buildStorageServiceError((await parseXmlError(response)));\n }\n else {\n const content = map(response.headers, {\n DeleteMarker: ['x-amz-delete-marker', deserializeBoolean],\n VersionId: 'x-amz-version-id',\n RequestCharged: 'x-amz-request-charged',\n });\n return {\n ...content,\n $metadata: parseMetadata(response),\n };\n }\n};\nexport const deleteObject = composeServiceApi(s3TransferHandler, deleteObjectSerializer, deleteObjectDeserializer, { ...defaultConfig, responseType: 'text' });\n"],"names":[],"mappings":";;;;;;;;;;;;AAAA;AACA;AAOA,MAAM,sBAAsB,GAAG,CAAC,KAAK,EAAE,QAAQ,KAAK;AACpD,IAAI,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;AACvD,IAAI,2BAA2B,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC;AACnD,IAAI,GAAG,CAAC,QAAQ,GAAG,0BAA0B,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC;AAC7D,IAAI,GAAG,CAAC,MAAM,GAAG,IAAI,sBAAsB,CAAC;AAC5C,QAAQ,MAAM,EAAE,cAAc;AAC9B,KAAK,CAAC,CAAC,QAAQ,EAAE;AACjB,IAAI,iBAAiB,CAAC;AACtB,QAAQ,UAAU,EAAE,KAAK,CAAC,MAAM;AAChC,QAAQ,GAAG,EAAE,KAAK,CAAC,GAAG;AACtB,QAAQ,SAAS,EAAE,GAAG;AACtB,KAAK,CAAC;AACN,IAAI,MAAM,OAAO,GAAG,qBAAqB,CAAC;AAC1C,QAAQ,6BAA6B,EAAE,KAAK,CAAC,mBAAmB;AAChE,KAAK,CAAC;AACN,IAAI,OAAO;AACX,QAAQ,MAAM,EAAE,QAAQ;AACxB,QAAQ,OAAO;AACf,QAAQ,GAAG;AACX,KAAK;AACL,CAAC;AACD,MAAM,wBAAwB,GAAG,OAAO,QAAQ,KAAK;AACrD,IAAI,IAAI,QAAQ,CAAC,UAAU,IAAI,GAAG,EAAE;AACpC;AACA,QAAQ,MAAM,wBAAwB,EAAE,MAAM,aAAa,CAAC,QAAQ,CAAC,EAAE;AACvE;AACA,SAAS;AACT,QAAQ,MAAM,OAAO,GAAG,GAAG,CAAC,QAAQ,CAAC,OAAO,EAAE;AAC9C,YAAY,YAAY,EAAE,CAAC,qBAAqB,EAAE,kBAAkB,CAAC;AACrE,YAAY,SAAS,EAAE,kBAAkB;AACzC,YAAY,cAAc,EAAE,uBAAuB;AACnD,SAAS,CAAC;AACV,QAAQ,OAAO;AACf,YAAY,GAAG,OAAO;AACtB,YAAY,SAAS,EAAE,aAAa,CAAC,QAAQ,CAAC;AAC9C,SAAS;AACT;AACA,CAAC;AACW,MAAC,YAAY,GAAG,iBAAiB,CAAC,iBAAiB,EAAE,sBAAsB,EAAE,wBAAwB,EAAE,EAAE,GAAG,aAAa,EAAE,YAAY,EAAE,MAAM,EAAE;;;;"}
1
+ {"version":3,"file":"deleteObject.mjs","sources":["../../../../../../../src/providers/s3/utils/client/s3data/deleteObject.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { parseMetadata, } from '@aws-amplify/core/internals/aws-client-utils';\nimport { AmplifyUrl } from '@aws-amplify/core/internals/utils';\nimport { composeServiceApi } from '@aws-amplify/core/internals/aws-client-utils/composers';\nimport { assignStringVariables, buildStorageServiceError, deserializeBoolean, map, s3TransferHandler, serializePathnameObjectKey, validateS3RequiredParameter, } from '../utils';\nimport { validateObjectUrl } from '../../validateObjectUrl';\nimport { defaultConfig, parseXmlError } from './base';\nconst deleteObjectSerializer = (input, endpoint) => {\n const url = new AmplifyUrl(endpoint.url.toString());\n validateS3RequiredParameter(!!input.Key, 'Key');\n url.pathname = serializePathnameObjectKey(url, input.Key);\n validateObjectUrl({\n bucketName: input.Bucket,\n key: input.Key,\n objectURL: url,\n });\n const headers = assignStringVariables({\n 'x-amz-expected-bucket-owner': input.ExpectedBucketOwner,\n });\n return {\n method: 'DELETE',\n headers,\n url,\n };\n};\nconst deleteObjectDeserializer = async (response) => {\n if (response.statusCode >= 300) {\n // error is always set when statusCode >= 300\n const error = (await parseXmlError(response));\n throw buildStorageServiceError(error, response.statusCode);\n }\n else {\n const content = map(response.headers, {\n DeleteMarker: ['x-amz-delete-marker', deserializeBoolean],\n VersionId: 'x-amz-version-id',\n RequestCharged: 'x-amz-request-charged',\n });\n return {\n ...content,\n $metadata: parseMetadata(response),\n };\n }\n};\nexport const deleteObject = composeServiceApi(s3TransferHandler, deleteObjectSerializer, deleteObjectDeserializer, { ...defaultConfig, responseType: 'text' });\n"],"names":[],"mappings":";;;;;;;;;;;;AAAA;AACA;AAOA,MAAM,sBAAsB,GAAG,CAAC,KAAK,EAAE,QAAQ,KAAK;AACpD,IAAI,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;AACvD,IAAI,2BAA2B,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC;AACnD,IAAI,GAAG,CAAC,QAAQ,GAAG,0BAA0B,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC;AAC7D,IAAI,iBAAiB,CAAC;AACtB,QAAQ,UAAU,EAAE,KAAK,CAAC,MAAM;AAChC,QAAQ,GAAG,EAAE,KAAK,CAAC,GAAG;AACtB,QAAQ,SAAS,EAAE,GAAG;AACtB,KAAK,CAAC;AACN,IAAI,MAAM,OAAO,GAAG,qBAAqB,CAAC;AAC1C,QAAQ,6BAA6B,EAAE,KAAK,CAAC,mBAAmB;AAChE,KAAK,CAAC;AACN,IAAI,OAAO;AACX,QAAQ,MAAM,EAAE,QAAQ;AACxB,QAAQ,OAAO;AACf,QAAQ,GAAG;AACX,KAAK;AACL,CAAC;AACD,MAAM,wBAAwB,GAAG,OAAO,QAAQ,KAAK;AACrD,IAAI,IAAI,QAAQ,CAAC,UAAU,IAAI,GAAG,EAAE;AACpC;AACA,QAAQ,MAAM,KAAK,IAAI,MAAM,aAAa,CAAC,QAAQ,CAAC,CAAC;AACrD,QAAQ,MAAM,wBAAwB,CAAC,KAAK,EAAE,QAAQ,CAAC,UAAU,CAAC;AAClE;AACA,SAAS;AACT,QAAQ,MAAM,OAAO,GAAG,GAAG,CAAC,QAAQ,CAAC,OAAO,EAAE;AAC9C,YAAY,YAAY,EAAE,CAAC,qBAAqB,EAAE,kBAAkB,CAAC;AACrE,YAAY,SAAS,EAAE,kBAAkB;AACzC,YAAY,cAAc,EAAE,uBAAuB;AACnD,SAAS,CAAC;AACV,QAAQ,OAAO;AACf,YAAY,GAAG,OAAO;AACtB,YAAY,SAAS,EAAE,aAAa,CAAC,QAAQ,CAAC;AAC9C,SAAS;AACT;AACA,CAAC;AACW,MAAC,YAAY,GAAG,iBAAiB,CAAC,iBAAiB,EAAE,sBAAsB,EAAE,wBAAwB,EAAE,EAAE,GAAG,aAAa,EAAE,YAAY,EAAE,MAAM,EAAE;;;;"}
@@ -22,10 +22,10 @@ export declare const getObject: (config: {
22
22
  onDownloadProgress?: ((event: import("../../../../..").TransferProgressEvent) => void) | undefined;
23
23
  onUploadProgress?: ((event: import("../../../../..").TransferProgressEvent) => void) | undefined;
24
24
  abortSignal?: AbortSignal | undefined;
25
- maxAttempts?: number | undefined;
26
25
  customEndpoint?: string | undefined;
27
26
  forcePathStyle?: boolean | undefined;
28
27
  userAgentHeader?: string | undefined;
28
+ maxAttempts?: number | undefined;
29
29
  }, input: GetObjectInput) => Promise<GetObjectCommandOutput>;
30
30
  type S3GetObjectPresignedUrlConfig = Omit<UserAgentOptions & PresignUrlOptions & S3EndpointResolverOptions, 'signingService' | 'signingRegion'> & {
31
31
  signingService?: string;
@@ -1,6 +1,6 @@
1
1
  import { parseMetadata, EMPTY_SHA256_HASH, presignUrl } from '@aws-amplify/core/internals/aws-client-utils';
2
2
  import { composeServiceApi } from '@aws-amplify/core/internals/aws-client-utils/composers';
3
- import { AmplifyUrl, AmplifyUrlSearchParams } from '@aws-amplify/core/internals/utils';
3
+ import { AmplifyUrl } from '@aws-amplify/core/internals/utils';
4
4
  import { CONTENT_SHA256_HEADER } from '../runtime/constants.mjs';
5
5
  import { s3TransferHandler } from '../runtime/s3TransferHandler/fetch.mjs';
6
6
  import 'fast-xml-parser';
@@ -18,9 +18,6 @@ const getObjectSerializer = async (input, endpoint) => {
18
18
  const url = new AmplifyUrl(endpoint.url.toString());
19
19
  validateS3RequiredParameter(!!input.Key, 'Key');
20
20
  url.pathname = serializePathnameObjectKey(url, input.Key);
21
- url.search = new AmplifyUrlSearchParams({
22
- 'x-id': 'GetObject',
23
- }).toString();
24
21
  validateObjectUrl({
25
22
  bucketName: input.Bucket,
26
23
  key: input.Key,
@@ -39,8 +36,8 @@ const getObjectSerializer = async (input, endpoint) => {
39
36
  };
40
37
  const getObjectDeserializer = async (response) => {
41
38
  if (response.statusCode >= 300) {
42
- // error is always set when statusCode >= 300
43
- throw buildStorageServiceError((await parseXmlError(response)));
39
+ const error = (await parseXmlError(response));
40
+ throw buildStorageServiceError(error, response.statusCode);
44
41
  }
45
42
  else {
46
43
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"getObject.mjs","sources":["../../../../../../../src/providers/s3/utils/client/s3data/getObject.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { EMPTY_SHA256_HASH, parseMetadata, presignUrl, } from '@aws-amplify/core/internals/aws-client-utils';\nimport { composeServiceApi } from '@aws-amplify/core/internals/aws-client-utils/composers';\nimport { AmplifyUrl, AmplifyUrlSearchParams, } from '@aws-amplify/core/internals/utils';\nimport { CONTENT_SHA256_HEADER, assignStringVariables, buildStorageServiceError, deserializeBoolean, deserializeMetadata, deserializeNumber, deserializeTimestamp, map, s3TransferHandler, serializePathnameObjectKey, validateS3RequiredParameter, } from '../utils';\nimport { validateObjectUrl } from '../../validateObjectUrl';\nimport { defaultConfig, parseXmlError, } from './base';\nconst USER_AGENT_HEADER = 'x-amz-user-agent';\nconst getObjectSerializer = async (input, endpoint) => {\n const url = new AmplifyUrl(endpoint.url.toString());\n validateS3RequiredParameter(!!input.Key, 'Key');\n url.pathname = serializePathnameObjectKey(url, input.Key);\n url.search = new AmplifyUrlSearchParams({\n 'x-id': 'GetObject',\n }).toString();\n validateObjectUrl({\n bucketName: input.Bucket,\n key: input.Key,\n objectURL: url,\n });\n return {\n method: 'GET',\n headers: {\n ...(input.Range && { Range: input.Range }),\n ...assignStringVariables({\n 'x-amz-expected-bucket-owner': input.ExpectedBucketOwner,\n }),\n },\n url,\n };\n};\nconst getObjectDeserializer = async (response) => {\n if (response.statusCode >= 300) {\n // error is always set when statusCode >= 300\n throw buildStorageServiceError((await parseXmlError(response)));\n }\n else {\n return {\n ...map(response.headers, {\n DeleteMarker: ['x-amz-delete-marker', deserializeBoolean],\n AcceptRanges: 'accept-ranges',\n Expiration: 'x-amz-expiration',\n Restore: 'x-amz-restore',\n LastModified: ['last-modified', deserializeTimestamp],\n ContentLength: ['content-length', deserializeNumber],\n ETag: 'etag',\n ChecksumCRC32: 'x-amz-checksum-crc32',\n ChecksumCRC32C: 'x-amz-checksum-crc32c',\n ChecksumSHA1: 'x-amz-checksum-sha1',\n ChecksumSHA256: 'x-amz-checksum-sha256',\n MissingMeta: ['x-amz-missing-meta', deserializeNumber],\n VersionId: 'x-amz-version-id',\n CacheControl: 'cache-control',\n ContentDisposition: 'content-disposition',\n ContentEncoding: 'content-encoding',\n ContentLanguage: 'content-language',\n ContentRange: 'content-range',\n ContentType: 'content-type',\n Expires: ['expires', deserializeTimestamp],\n WebsiteRedirectLocation: 'x-amz-website-redirect-location',\n ServerSideEncryption: 'x-amz-server-side-encryption',\n SSECustomerAlgorithm: 'x-amz-server-side-encryption-customer-algorithm',\n SSECustomerKeyMD5: 'x-amz-server-side-encryption-customer-key-md5',\n SSEKMSKeyId: 'x-amz-server-side-encryption-aws-kms-key-id',\n BucketKeyEnabled: [\n 'x-amz-server-side-encryption-bucket-key-enabled',\n deserializeBoolean,\n ],\n StorageClass: 'x-amz-storage-class',\n RequestCharged: 'x-amz-request-charged',\n ReplicationStatus: 'x-amz-replication-status',\n PartsCount: ['x-amz-mp-parts-count', deserializeNumber],\n TagCount: ['x-amz-tagging-count', deserializeNumber],\n ObjectLockMode: 'x-amz-object-lock-mode',\n ObjectLockRetainUntilDate: [\n 'x-amz-object-lock-retain-until-date',\n deserializeTimestamp,\n ],\n ObjectLockLegalHoldStatus: 'x-amz-object-lock-legal-hold',\n }),\n Metadata: deserializeMetadata(response.headers),\n $metadata: parseMetadata(response),\n // @ts-expect-error The body is a CompatibleHttpResponse type because the lower-level handler is XHR instead of\n // fetch, which represents payload in Blob instread of ReadableStream.\n Body: response.body,\n };\n }\n};\nexport const getObject = composeServiceApi(s3TransferHandler, getObjectSerializer, getObjectDeserializer, { ...defaultConfig, responseType: 'blob' });\n/**\n * Get a presigned URL for the `getObject` API.\n *\n * @internal\n */\nexport const getPresignedGetObjectUrl = async (config, input) => {\n const endpoint = defaultConfig.endpointResolver(config, input);\n const { url, headers, method } = await getObjectSerializer(input, endpoint);\n // TODO: set content sha256 query parameter with value of UNSIGNED-PAYLOAD instead of empty hash.\n // It requires changes in presignUrl. Without this change, the generated url still works,\n // but not the same as other tools like AWS SDK and CLI.\n url.searchParams.append(CONTENT_SHA256_HEADER, EMPTY_SHA256_HASH);\n if (config.userAgentValue) {\n url.searchParams.append(config.userAgentHeader ?? USER_AGENT_HEADER, config.userAgentValue);\n }\n if (input.ResponseContentType) {\n url.searchParams.append('response-content-type', input.ResponseContentType);\n }\n if (input.ResponseContentDisposition) {\n url.searchParams.append('response-content-disposition', input.ResponseContentDisposition);\n }\n for (const [headerName, value] of Object.entries(headers).sort(([key1], [key2]) => key1.localeCompare(key2))) {\n url.searchParams.append(headerName, value);\n }\n return presignUrl({ method, url, body: undefined }, {\n signingService: defaultConfig.service,\n signingRegion: config.region,\n ...defaultConfig,\n ...config,\n });\n};\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"getObject.mjs","sources":["../../../../../../../src/providers/s3/utils/client/s3data/getObject.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { EMPTY_SHA256_HASH, parseMetadata, presignUrl, } from '@aws-amplify/core/internals/aws-client-utils';\nimport { composeServiceApi } from '@aws-amplify/core/internals/aws-client-utils/composers';\nimport { AmplifyUrl } from '@aws-amplify/core/internals/utils';\nimport { CONTENT_SHA256_HEADER, assignStringVariables, buildStorageServiceError, deserializeBoolean, deserializeMetadata, deserializeNumber, deserializeTimestamp, map, s3TransferHandler, serializePathnameObjectKey, validateS3RequiredParameter, } from '../utils';\nimport { validateObjectUrl } from '../../validateObjectUrl';\nimport { defaultConfig, parseXmlError, } from './base';\nconst USER_AGENT_HEADER = 'x-amz-user-agent';\nconst getObjectSerializer = async (input, endpoint) => {\n const url = new AmplifyUrl(endpoint.url.toString());\n validateS3RequiredParameter(!!input.Key, 'Key');\n url.pathname = serializePathnameObjectKey(url, input.Key);\n validateObjectUrl({\n bucketName: input.Bucket,\n key: input.Key,\n objectURL: url,\n });\n return {\n method: 'GET',\n headers: {\n ...(input.Range && { Range: input.Range }),\n ...assignStringVariables({\n 'x-amz-expected-bucket-owner': input.ExpectedBucketOwner,\n }),\n },\n url,\n };\n};\nconst getObjectDeserializer = async (response) => {\n if (response.statusCode >= 300) {\n const error = (await parseXmlError(response));\n throw buildStorageServiceError(error, response.statusCode);\n }\n else {\n return {\n ...map(response.headers, {\n DeleteMarker: ['x-amz-delete-marker', deserializeBoolean],\n AcceptRanges: 'accept-ranges',\n Expiration: 'x-amz-expiration',\n Restore: 'x-amz-restore',\n LastModified: ['last-modified', deserializeTimestamp],\n ContentLength: ['content-length', deserializeNumber],\n ETag: 'etag',\n ChecksumCRC32: 'x-amz-checksum-crc32',\n ChecksumCRC32C: 'x-amz-checksum-crc32c',\n ChecksumSHA1: 'x-amz-checksum-sha1',\n ChecksumSHA256: 'x-amz-checksum-sha256',\n MissingMeta: ['x-amz-missing-meta', deserializeNumber],\n VersionId: 'x-amz-version-id',\n CacheControl: 'cache-control',\n ContentDisposition: 'content-disposition',\n ContentEncoding: 'content-encoding',\n ContentLanguage: 'content-language',\n ContentRange: 'content-range',\n ContentType: 'content-type',\n Expires: ['expires', deserializeTimestamp],\n WebsiteRedirectLocation: 'x-amz-website-redirect-location',\n ServerSideEncryption: 'x-amz-server-side-encryption',\n SSECustomerAlgorithm: 'x-amz-server-side-encryption-customer-algorithm',\n SSECustomerKeyMD5: 'x-amz-server-side-encryption-customer-key-md5',\n SSEKMSKeyId: 'x-amz-server-side-encryption-aws-kms-key-id',\n BucketKeyEnabled: [\n 'x-amz-server-side-encryption-bucket-key-enabled',\n deserializeBoolean,\n ],\n StorageClass: 'x-amz-storage-class',\n RequestCharged: 'x-amz-request-charged',\n ReplicationStatus: 'x-amz-replication-status',\n PartsCount: ['x-amz-mp-parts-count', deserializeNumber],\n TagCount: ['x-amz-tagging-count', deserializeNumber],\n ObjectLockMode: 'x-amz-object-lock-mode',\n ObjectLockRetainUntilDate: [\n 'x-amz-object-lock-retain-until-date',\n deserializeTimestamp,\n ],\n ObjectLockLegalHoldStatus: 'x-amz-object-lock-legal-hold',\n }),\n Metadata: deserializeMetadata(response.headers),\n $metadata: parseMetadata(response),\n // @ts-expect-error The body is a CompatibleHttpResponse type because the lower-level handler is XHR instead of\n // fetch, which represents payload in Blob instread of ReadableStream.\n Body: response.body,\n };\n }\n};\nexport const getObject = composeServiceApi(s3TransferHandler, getObjectSerializer, getObjectDeserializer, { ...defaultConfig, responseType: 'blob' });\n/**\n * Get a presigned URL for the `getObject` API.\n *\n * @internal\n */\nexport const getPresignedGetObjectUrl = async (config, input) => {\n const endpoint = defaultConfig.endpointResolver(config, input);\n const { url, headers, method } = await getObjectSerializer(input, endpoint);\n // TODO: set content sha256 query parameter with value of UNSIGNED-PAYLOAD instead of empty hash.\n // It requires changes in presignUrl. Without this change, the generated url still works,\n // but not the same as other tools like AWS SDK and CLI.\n url.searchParams.append(CONTENT_SHA256_HEADER, EMPTY_SHA256_HASH);\n if (config.userAgentValue) {\n url.searchParams.append(config.userAgentHeader ?? USER_AGENT_HEADER, config.userAgentValue);\n }\n if (input.ResponseContentType) {\n url.searchParams.append('response-content-type', input.ResponseContentType);\n }\n if (input.ResponseContentDisposition) {\n url.searchParams.append('response-content-disposition', input.ResponseContentDisposition);\n }\n for (const [headerName, value] of Object.entries(headers).sort(([key1], [key2]) => key1.localeCompare(key2))) {\n url.searchParams.append(headerName, value);\n }\n return presignUrl({ method, url, body: undefined }, {\n signingService: defaultConfig.service,\n signingRegion: config.region,\n ...defaultConfig,\n ...config,\n });\n};\n"],"names":[],"mappings":"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"}
@@ -21,8 +21,8 @@ export declare const headObject: (config: {
21
21
  onDownloadProgress?: ((event: import("../../../../..").TransferProgressEvent) => void) | undefined;
22
22
  onUploadProgress?: ((event: import("../../../../..").TransferProgressEvent) => void) | undefined;
23
23
  abortSignal?: AbortSignal | undefined;
24
- maxAttempts?: number | undefined;
25
24
  customEndpoint?: string | undefined;
26
25
  forcePathStyle?: boolean | undefined;
27
26
  userAgentHeader?: string | undefined;
27
+ maxAttempts?: number | undefined;
28
28
  }, input: HeadObjectInput) => Promise<HeadObjectOutput>;
@@ -33,7 +33,8 @@ const headObjectSerializer = async (input, endpoint) => {
33
33
  const headObjectDeserializer = async (response) => {
34
34
  if (response.statusCode >= 300) {
35
35
  // error is always set when statusCode >= 300
36
- throw buildStorageServiceError((await parseXmlError(response)));
36
+ const error = (await parseXmlError(response));
37
+ throw buildStorageServiceError(error, response.statusCode);
37
38
  }
38
39
  else {
39
40
  const contents = {
@@ -1 +1 @@
1
- {"version":3,"file":"headObject.mjs","sources":["../../../../../../../src/providers/s3/utils/client/s3data/headObject.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { parseMetadata, } from '@aws-amplify/core/internals/aws-client-utils';\nimport { AmplifyUrl } from '@aws-amplify/core/internals/utils';\nimport { composeServiceApi } from '@aws-amplify/core/internals/aws-client-utils/composers';\nimport { assignStringVariables, buildStorageServiceError, deserializeMetadata, deserializeNumber, deserializeTimestamp, map, s3TransferHandler, serializePathnameObjectKey, validateS3RequiredParameter, } from '../utils';\nimport { validateObjectUrl } from '../../validateObjectUrl';\nimport { defaultConfig, parseXmlError } from './base';\nconst headObjectSerializer = async (input, endpoint) => {\n const url = new AmplifyUrl(endpoint.url.toString());\n validateS3RequiredParameter(!!input.Key, 'Key');\n url.pathname = serializePathnameObjectKey(url, input.Key);\n validateObjectUrl({\n bucketName: input.Bucket,\n key: input.Key,\n objectURL: url,\n });\n const headers = assignStringVariables({\n 'x-amz-expected-bucket-owner': input.ExpectedBucketOwner,\n });\n return {\n method: 'HEAD',\n headers,\n url,\n };\n};\nconst headObjectDeserializer = async (response) => {\n if (response.statusCode >= 300) {\n // error is always set when statusCode >= 300\n throw buildStorageServiceError((await parseXmlError(response)));\n }\n else {\n const contents = {\n ...map(response.headers, {\n ContentLength: ['content-length', deserializeNumber],\n ContentType: 'content-type',\n ETag: 'etag',\n LastModified: ['last-modified', deserializeTimestamp],\n VersionId: 'x-amz-version-id',\n }),\n Metadata: deserializeMetadata(response.headers),\n };\n return {\n $metadata: parseMetadata(response),\n ...contents,\n };\n }\n};\nexport const headObject = composeServiceApi(s3TransferHandler, headObjectSerializer, headObjectDeserializer, { ...defaultConfig, responseType: 'text' });\n"],"names":[],"mappings":";;;;;;;;;;;;AAAA;AACA;AAOA,MAAM,oBAAoB,GAAG,OAAO,KAAK,EAAE,QAAQ,KAAK;AACxD,IAAI,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;AACvD,IAAI,2BAA2B,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC;AACnD,IAAI,GAAG,CAAC,QAAQ,GAAG,0BAA0B,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC;AAC7D,IAAI,iBAAiB,CAAC;AACtB,QAAQ,UAAU,EAAE,KAAK,CAAC,MAAM;AAChC,QAAQ,GAAG,EAAE,KAAK,CAAC,GAAG;AACtB,QAAQ,SAAS,EAAE,GAAG;AACtB,KAAK,CAAC;AACN,IAAI,MAAM,OAAO,GAAG,qBAAqB,CAAC;AAC1C,QAAQ,6BAA6B,EAAE,KAAK,CAAC,mBAAmB;AAChE,KAAK,CAAC;AACN,IAAI,OAAO;AACX,QAAQ,MAAM,EAAE,MAAM;AACtB,QAAQ,OAAO;AACf,QAAQ,GAAG;AACX,KAAK;AACL,CAAC;AACD,MAAM,sBAAsB,GAAG,OAAO,QAAQ,KAAK;AACnD,IAAI,IAAI,QAAQ,CAAC,UAAU,IAAI,GAAG,EAAE;AACpC;AACA,QAAQ,MAAM,wBAAwB,EAAE,MAAM,aAAa,CAAC,QAAQ,CAAC,EAAE;AACvE;AACA,SAAS;AACT,QAAQ,MAAM,QAAQ,GAAG;AACzB,YAAY,GAAG,GAAG,CAAC,QAAQ,CAAC,OAAO,EAAE;AACrC,gBAAgB,aAAa,EAAE,CAAC,gBAAgB,EAAE,iBAAiB,CAAC;AACpE,gBAAgB,WAAW,EAAE,cAAc;AAC3C,gBAAgB,IAAI,EAAE,MAAM;AAC5B,gBAAgB,YAAY,EAAE,CAAC,eAAe,EAAE,oBAAoB,CAAC;AACrE,gBAAgB,SAAS,EAAE,kBAAkB;AAC7C,aAAa,CAAC;AACd,YAAY,QAAQ,EAAE,mBAAmB,CAAC,QAAQ,CAAC,OAAO,CAAC;AAC3D,SAAS;AACT,QAAQ,OAAO;AACf,YAAY,SAAS,EAAE,aAAa,CAAC,QAAQ,CAAC;AAC9C,YAAY,GAAG,QAAQ;AACvB,SAAS;AACT;AACA,CAAC;AACW,MAAC,UAAU,GAAG,iBAAiB,CAAC,iBAAiB,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,EAAE,GAAG,aAAa,EAAE,YAAY,EAAE,MAAM,EAAE;;;;"}
1
+ {"version":3,"file":"headObject.mjs","sources":["../../../../../../../src/providers/s3/utils/client/s3data/headObject.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { parseMetadata, } from '@aws-amplify/core/internals/aws-client-utils';\nimport { AmplifyUrl } from '@aws-amplify/core/internals/utils';\nimport { composeServiceApi } from '@aws-amplify/core/internals/aws-client-utils/composers';\nimport { assignStringVariables, buildStorageServiceError, deserializeMetadata, deserializeNumber, deserializeTimestamp, map, s3TransferHandler, serializePathnameObjectKey, validateS3RequiredParameter, } from '../utils';\nimport { validateObjectUrl } from '../../validateObjectUrl';\nimport { defaultConfig, parseXmlError } from './base';\nconst headObjectSerializer = async (input, endpoint) => {\n const url = new AmplifyUrl(endpoint.url.toString());\n validateS3RequiredParameter(!!input.Key, 'Key');\n url.pathname = serializePathnameObjectKey(url, input.Key);\n validateObjectUrl({\n bucketName: input.Bucket,\n key: input.Key,\n objectURL: url,\n });\n const headers = assignStringVariables({\n 'x-amz-expected-bucket-owner': input.ExpectedBucketOwner,\n });\n return {\n method: 'HEAD',\n headers,\n url,\n };\n};\nconst headObjectDeserializer = async (response) => {\n if (response.statusCode >= 300) {\n // error is always set when statusCode >= 300\n const error = (await parseXmlError(response));\n throw buildStorageServiceError(error, response.statusCode);\n }\n else {\n const contents = {\n ...map(response.headers, {\n ContentLength: ['content-length', deserializeNumber],\n ContentType: 'content-type',\n ETag: 'etag',\n LastModified: ['last-modified', deserializeTimestamp],\n VersionId: 'x-amz-version-id',\n }),\n Metadata: deserializeMetadata(response.headers),\n };\n return {\n $metadata: parseMetadata(response),\n ...contents,\n };\n }\n};\nexport const headObject = composeServiceApi(s3TransferHandler, headObjectSerializer, headObjectDeserializer, { ...defaultConfig, responseType: 'text' });\n"],"names":[],"mappings":";;;;;;;;;;;;AAAA;AACA;AAOA,MAAM,oBAAoB,GAAG,OAAO,KAAK,EAAE,QAAQ,KAAK;AACxD,IAAI,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;AACvD,IAAI,2BAA2B,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC;AACnD,IAAI,GAAG,CAAC,QAAQ,GAAG,0BAA0B,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC;AAC7D,IAAI,iBAAiB,CAAC;AACtB,QAAQ,UAAU,EAAE,KAAK,CAAC,MAAM;AAChC,QAAQ,GAAG,EAAE,KAAK,CAAC,GAAG;AACtB,QAAQ,SAAS,EAAE,GAAG;AACtB,KAAK,CAAC;AACN,IAAI,MAAM,OAAO,GAAG,qBAAqB,CAAC;AAC1C,QAAQ,6BAA6B,EAAE,KAAK,CAAC,mBAAmB;AAChE,KAAK,CAAC;AACN,IAAI,OAAO;AACX,QAAQ,MAAM,EAAE,MAAM;AACtB,QAAQ,OAAO;AACf,QAAQ,GAAG;AACX,KAAK;AACL,CAAC;AACD,MAAM,sBAAsB,GAAG,OAAO,QAAQ,KAAK;AACnD,IAAI,IAAI,QAAQ,CAAC,UAAU,IAAI,GAAG,EAAE;AACpC;AACA,QAAQ,MAAM,KAAK,IAAI,MAAM,aAAa,CAAC,QAAQ,CAAC,CAAC;AACrD,QAAQ,MAAM,wBAAwB,CAAC,KAAK,EAAE,QAAQ,CAAC,UAAU,CAAC;AAClE;AACA,SAAS;AACT,QAAQ,MAAM,QAAQ,GAAG;AACzB,YAAY,GAAG,GAAG,CAAC,QAAQ,CAAC,OAAO,EAAE;AACrC,gBAAgB,aAAa,EAAE,CAAC,gBAAgB,EAAE,iBAAiB,CAAC;AACpE,gBAAgB,WAAW,EAAE,cAAc;AAC3C,gBAAgB,IAAI,EAAE,MAAM;AAC5B,gBAAgB,YAAY,EAAE,CAAC,eAAe,EAAE,oBAAoB,CAAC;AACrE,gBAAgB,SAAS,EAAE,kBAAkB;AAC7C,aAAa,CAAC;AACd,YAAY,QAAQ,EAAE,mBAAmB,CAAC,QAAQ,CAAC,OAAO,CAAC;AAC3D,SAAS;AACT,QAAQ,OAAO;AACf,YAAY,SAAS,EAAE,aAAa,CAAC,QAAQ,CAAC;AAC9C,YAAY,GAAG,QAAQ;AACvB,SAAS;AACT;AACA,CAAC;AACW,MAAC,UAAU,GAAG,iBAAiB,CAAC,iBAAiB,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,EAAE,GAAG,aAAa,EAAE,YAAY,EAAE,MAAM,EAAE;;;;"}
@@ -21,8 +21,8 @@ export declare const listObjectsV2: (config: {
21
21
  onDownloadProgress?: ((event: import("../../../../..").TransferProgressEvent) => void) | undefined;
22
22
  onUploadProgress?: ((event: import("../../../../..").TransferProgressEvent) => void) | undefined;
23
23
  abortSignal?: AbortSignal | undefined;
24
- maxAttempts?: number | undefined;
25
24
  customEndpoint?: string | undefined;
26
25
  forcePathStyle?: boolean | undefined;
27
26
  userAgentHeader?: string | undefined;
27
+ maxAttempts?: number | undefined;
28
28
  }, input: import("./types").ListObjectsV2Request) => Promise<ListObjectsV2CommandOutput>;
@@ -39,7 +39,8 @@ const listObjectsV2Serializer = (input, endpoint) => {
39
39
  const listObjectsV2Deserializer = async (response) => {
40
40
  if (response.statusCode >= 300) {
41
41
  // error is always set when statusCode >= 300
42
- throw buildStorageServiceError((await parseXmlError(response)));
42
+ const error = (await parseXmlError(response));
43
+ throw buildStorageServiceError(error, response.statusCode);
43
44
  }
44
45
  else {
45
46
  const parsed = await parseXmlBody(response);
@@ -96,7 +97,7 @@ const validateCorroboratingElements = (response) => {
96
97
  (!IsTruncated && !NextContinuationToken);
97
98
  const validNumberOfKeysReturned = KeyCount === Contents.length + CommonPrefixes.length;
98
99
  if (!validTruncation || !validNumberOfKeysReturned) {
99
- throw new IntegrityError({ metadata: response.$metadata });
100
+ throw new IntegrityError();
100
101
  }
101
102
  };
102
103
  const listObjectsV2 = composeServiceApi(s3TransferHandler, listObjectsV2Serializer, listObjectsV2Deserializer, { ...defaultConfig, responseType: 'text' });
@@ -1 +1 @@
1
- {"version":3,"file":"listObjectsV2.mjs","sources":["../../../../../../../src/providers/s3/utils/client/s3data/listObjectsV2.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { parseMetadata, } from '@aws-amplify/core/internals/aws-client-utils';\nimport { AmplifyUrl, AmplifyUrlSearchParams, } from '@aws-amplify/core/internals/utils';\nimport { composeServiceApi } from '@aws-amplify/core/internals/aws-client-utils/composers';\nimport { assignStringVariables, buildStorageServiceError, deserializeBoolean, deserializeNumber, deserializeTimestamp, emptyArrayGuard, map, parseXmlBody, s3TransferHandler, } from '../utils';\nimport { IntegrityError } from '../../../../../errors/IntegrityError';\nimport { defaultConfig, parseXmlError } from './base';\nconst listObjectsV2Serializer = (input, endpoint) => {\n const headers = assignStringVariables({\n 'x-amz-request-payer': input.RequestPayer,\n 'x-amz-expected-bucket-owner': input.ExpectedBucketOwner,\n });\n const query = assignStringVariables({\n 'list-type': '2',\n 'continuation-token': input.ContinuationToken,\n delimiter: input.Delimiter,\n 'encoding-type': input.EncodingType,\n 'fetch-owner': input.FetchOwner,\n 'max-keys': input.MaxKeys,\n prefix: input.Prefix,\n 'start-after': input.StartAfter,\n });\n const url = new AmplifyUrl(endpoint.url.toString());\n url.search = new AmplifyUrlSearchParams(query).toString();\n return {\n method: 'GET',\n headers,\n url,\n };\n};\nconst listObjectsV2Deserializer = async (response) => {\n if (response.statusCode >= 300) {\n // error is always set when statusCode >= 300\n throw buildStorageServiceError((await parseXmlError(response)));\n }\n else {\n const parsed = await parseXmlBody(response);\n const contents = map(parsed, {\n CommonPrefixes: [\n 'CommonPrefixes',\n value => emptyArrayGuard(value, deserializeCommonPrefixList),\n ],\n Contents: [\n 'Contents',\n value => emptyArrayGuard(value, deserializeObjectList),\n ],\n ContinuationToken: 'ContinuationToken',\n Delimiter: 'Delimiter',\n EncodingType: 'EncodingType',\n IsTruncated: ['IsTruncated', deserializeBoolean],\n KeyCount: ['KeyCount', deserializeNumber],\n MaxKeys: ['MaxKeys', deserializeNumber],\n Name: 'Name',\n NextContinuationToken: 'NextContinuationToken',\n Prefix: 'Prefix',\n StartAfter: 'StartAfter',\n });\n const output = {\n $metadata: parseMetadata(response),\n ...contents,\n };\n validateCorroboratingElements(output);\n return output;\n }\n};\nconst deserializeCommonPrefixList = (output) => output.map(deserializeCommonPrefix);\nconst deserializeCommonPrefix = (output) => map(output, {\n Prefix: 'Prefix',\n});\nconst deserializeObjectList = (output) => output.map(deserializeObject);\nconst deserializeObject = (output) => map(output, {\n Key: 'Key',\n LastModified: ['LastModified', deserializeTimestamp],\n ETag: 'ETag',\n ChecksumAlgorithm: [\n 'ChecksumAlgorithm',\n value => emptyArrayGuard(value, deserializeChecksumAlgorithmList),\n ],\n Size: ['Size', deserializeNumber],\n StorageClass: 'StorageClass',\n Owner: ['Owner', deserializeOwner],\n});\nconst deserializeChecksumAlgorithmList = (output) => output.map(entry => String(entry));\nconst deserializeOwner = (output) => map(output, { DisplayName: 'DisplayName', ID: 'ID' });\nconst validateCorroboratingElements = (response) => {\n const { IsTruncated, KeyCount, Contents = [], CommonPrefixes = [], NextContinuationToken, } = response;\n const validTruncation = (IsTruncated && !!NextContinuationToken) ||\n (!IsTruncated && !NextContinuationToken);\n const validNumberOfKeysReturned = KeyCount === Contents.length + CommonPrefixes.length;\n if (!validTruncation || !validNumberOfKeysReturned) {\n throw new IntegrityError({ metadata: response.$metadata });\n }\n};\nexport const listObjectsV2 = composeServiceApi(s3TransferHandler, listObjectsV2Serializer, listObjectsV2Deserializer, { ...defaultConfig, responseType: 'text' });\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"listObjectsV2.mjs","sources":["../../../../../../../src/providers/s3/utils/client/s3data/listObjectsV2.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { parseMetadata, } from '@aws-amplify/core/internals/aws-client-utils';\nimport { AmplifyUrl, AmplifyUrlSearchParams, } from '@aws-amplify/core/internals/utils';\nimport { composeServiceApi } from '@aws-amplify/core/internals/aws-client-utils/composers';\nimport { assignStringVariables, buildStorageServiceError, deserializeBoolean, deserializeNumber, deserializeTimestamp, emptyArrayGuard, map, parseXmlBody, s3TransferHandler, } from '../utils';\nimport { IntegrityError } from '../../../../../errors/IntegrityError';\nimport { defaultConfig, parseXmlError } from './base';\nconst listObjectsV2Serializer = (input, endpoint) => {\n const headers = assignStringVariables({\n 'x-amz-request-payer': input.RequestPayer,\n 'x-amz-expected-bucket-owner': input.ExpectedBucketOwner,\n });\n const query = assignStringVariables({\n 'list-type': '2',\n 'continuation-token': input.ContinuationToken,\n delimiter: input.Delimiter,\n 'encoding-type': input.EncodingType,\n 'fetch-owner': input.FetchOwner,\n 'max-keys': input.MaxKeys,\n prefix: input.Prefix,\n 'start-after': input.StartAfter,\n });\n const url = new AmplifyUrl(endpoint.url.toString());\n url.search = new AmplifyUrlSearchParams(query).toString();\n return {\n method: 'GET',\n headers,\n url,\n };\n};\nconst listObjectsV2Deserializer = async (response) => {\n if (response.statusCode >= 300) {\n // error is always set when statusCode >= 300\n const error = (await parseXmlError(response));\n throw buildStorageServiceError(error, response.statusCode);\n }\n else {\n const parsed = await parseXmlBody(response);\n const contents = map(parsed, {\n CommonPrefixes: [\n 'CommonPrefixes',\n value => emptyArrayGuard(value, deserializeCommonPrefixList),\n ],\n Contents: [\n 'Contents',\n value => emptyArrayGuard(value, deserializeObjectList),\n ],\n ContinuationToken: 'ContinuationToken',\n Delimiter: 'Delimiter',\n EncodingType: 'EncodingType',\n IsTruncated: ['IsTruncated', deserializeBoolean],\n KeyCount: ['KeyCount', deserializeNumber],\n MaxKeys: ['MaxKeys', deserializeNumber],\n Name: 'Name',\n NextContinuationToken: 'NextContinuationToken',\n Prefix: 'Prefix',\n StartAfter: 'StartAfter',\n });\n const output = {\n $metadata: parseMetadata(response),\n ...contents,\n };\n validateCorroboratingElements(output);\n return output;\n }\n};\nconst deserializeCommonPrefixList = (output) => output.map(deserializeCommonPrefix);\nconst deserializeCommonPrefix = (output) => map(output, {\n Prefix: 'Prefix',\n});\nconst deserializeObjectList = (output) => output.map(deserializeObject);\nconst deserializeObject = (output) => map(output, {\n Key: 'Key',\n LastModified: ['LastModified', deserializeTimestamp],\n ETag: 'ETag',\n ChecksumAlgorithm: [\n 'ChecksumAlgorithm',\n value => emptyArrayGuard(value, deserializeChecksumAlgorithmList),\n ],\n Size: ['Size', deserializeNumber],\n StorageClass: 'StorageClass',\n Owner: ['Owner', deserializeOwner],\n});\nconst deserializeChecksumAlgorithmList = (output) => output.map(entry => String(entry));\nconst deserializeOwner = (output) => map(output, { DisplayName: 'DisplayName', ID: 'ID' });\nconst validateCorroboratingElements = (response) => {\n const { IsTruncated, KeyCount, Contents = [], CommonPrefixes = [], NextContinuationToken, } = response;\n const validTruncation = (IsTruncated && !!NextContinuationToken) ||\n (!IsTruncated && !NextContinuationToken);\n const validNumberOfKeysReturned = KeyCount === Contents.length + CommonPrefixes.length;\n if (!validTruncation || !validNumberOfKeysReturned) {\n throw new IntegrityError();\n }\n};\nexport const listObjectsV2 = composeServiceApi(s3TransferHandler, listObjectsV2Serializer, listObjectsV2Deserializer, { ...defaultConfig, responseType: 'text' });\n"],"names":[],"mappings":"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"}
@@ -21,8 +21,8 @@ export declare const listParts: (config: {
21
21
  onDownloadProgress?: ((event: import("../../../../..").TransferProgressEvent) => void) | undefined;
22
22
  onUploadProgress?: ((event: import("../../../../..").TransferProgressEvent) => void) | undefined;
23
23
  abortSignal?: AbortSignal | undefined;
24
- maxAttempts?: number | undefined;
25
24
  customEndpoint?: string | undefined;
26
25
  forcePathStyle?: boolean | undefined;
27
26
  userAgentHeader?: string | undefined;
27
+ maxAttempts?: number | undefined;
28
28
  }, input: ListPartsInput) => Promise<ListPartsOutput>;
@@ -19,7 +19,6 @@ const listPartsSerializer = async (input, endpoint) => {
19
19
  url.pathname = serializePathnameObjectKey(url, input.Key);
20
20
  validateS3RequiredParameter(!!input.UploadId, 'UploadId');
21
21
  url.search = new AmplifyUrlSearchParams({
22
- 'x-id': 'ListParts',
23
22
  uploadId: input.UploadId,
24
23
  }).toString();
25
24
  return {
@@ -30,8 +29,8 @@ const listPartsSerializer = async (input, endpoint) => {
30
29
  };
31
30
  const listPartsDeserializer = async (response) => {
32
31
  if (response.statusCode >= 300) {
33
- // error is always set when statusCode >= 300
34
- throw buildStorageServiceError((await parseXmlError(response)));
32
+ const error = (await parseXmlError(response));
33
+ throw buildStorageServiceError(error, response.statusCode);
35
34
  }
36
35
  else {
37
36
  const parsed = await parseXmlBody(response);
@@ -1 +1 @@
1
- {"version":3,"file":"listParts.mjs","sources":["../../../../../../../src/providers/s3/utils/client/s3data/listParts.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { parseMetadata, } from '@aws-amplify/core/internals/aws-client-utils';\nimport { AmplifyUrl, AmplifyUrlSearchParams, } from '@aws-amplify/core/internals/utils';\nimport { composeServiceApi } from '@aws-amplify/core/internals/aws-client-utils/composers';\nimport { buildStorageServiceError, deserializeCompletedPartList, emptyArrayGuard, map, parseXmlBody, s3TransferHandler, serializePathnameObjectKey, validateS3RequiredParameter, } from '../utils';\nimport { defaultConfig, parseXmlError } from './base';\nconst listPartsSerializer = async (input, endpoint) => {\n const headers = {};\n const url = new AmplifyUrl(endpoint.url.toString());\n validateS3RequiredParameter(!!input.Key, 'Key');\n url.pathname = serializePathnameObjectKey(url, input.Key);\n validateS3RequiredParameter(!!input.UploadId, 'UploadId');\n url.search = new AmplifyUrlSearchParams({\n 'x-id': 'ListParts',\n uploadId: input.UploadId,\n }).toString();\n return {\n method: 'GET',\n headers,\n url,\n };\n};\nconst listPartsDeserializer = async (response) => {\n if (response.statusCode >= 300) {\n // error is always set when statusCode >= 300\n throw buildStorageServiceError((await parseXmlError(response)));\n }\n else {\n const parsed = await parseXmlBody(response);\n const contents = map(parsed, {\n UploadId: 'UploadId',\n Parts: [\n 'Part',\n value => emptyArrayGuard(value, deserializeCompletedPartList),\n ],\n });\n return {\n $metadata: parseMetadata(response),\n ...contents,\n };\n }\n};\nexport const listParts = composeServiceApi(s3TransferHandler, listPartsSerializer, listPartsDeserializer, { ...defaultConfig, responseType: 'text' });\n"],"names":[],"mappings":";;;;;;;;;;;;AAAA;AACA;AAMA,MAAM,mBAAmB,GAAG,OAAO,KAAK,EAAE,QAAQ,KAAK;AACvD,IAAI,MAAM,OAAO,GAAG,EAAE;AACtB,IAAI,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;AACvD,IAAI,2BAA2B,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC;AACnD,IAAI,GAAG,CAAC,QAAQ,GAAG,0BAA0B,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC;AAC7D,IAAI,2BAA2B,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,EAAE,UAAU,CAAC;AAC7D,IAAI,GAAG,CAAC,MAAM,GAAG,IAAI,sBAAsB,CAAC;AAC5C,QAAQ,MAAM,EAAE,WAAW;AAC3B,QAAQ,QAAQ,EAAE,KAAK,CAAC,QAAQ;AAChC,KAAK,CAAC,CAAC,QAAQ,EAAE;AACjB,IAAI,OAAO;AACX,QAAQ,MAAM,EAAE,KAAK;AACrB,QAAQ,OAAO;AACf,QAAQ,GAAG;AACX,KAAK;AACL,CAAC;AACD,MAAM,qBAAqB,GAAG,OAAO,QAAQ,KAAK;AAClD,IAAI,IAAI,QAAQ,CAAC,UAAU,IAAI,GAAG,EAAE;AACpC;AACA,QAAQ,MAAM,wBAAwB,EAAE,MAAM,aAAa,CAAC,QAAQ,CAAC,EAAE;AACvE;AACA,SAAS;AACT,QAAQ,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,QAAQ,CAAC;AACnD,QAAQ,MAAM,QAAQ,GAAG,GAAG,CAAC,MAAM,EAAE;AACrC,YAAY,QAAQ,EAAE,UAAU;AAChC,YAAY,KAAK,EAAE;AACnB,gBAAgB,MAAM;AACtB,gBAAgB,KAAK,IAAI,eAAe,CAAC,KAAK,EAAE,4BAA4B,CAAC;AAC7E,aAAa;AACb,SAAS,CAAC;AACV,QAAQ,OAAO;AACf,YAAY,SAAS,EAAE,aAAa,CAAC,QAAQ,CAAC;AAC9C,YAAY,GAAG,QAAQ;AACvB,SAAS;AACT;AACA,CAAC;AACW,MAAC,SAAS,GAAG,iBAAiB,CAAC,iBAAiB,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,EAAE,GAAG,aAAa,EAAE,YAAY,EAAE,MAAM,EAAE;;;;"}
1
+ {"version":3,"file":"listParts.mjs","sources":["../../../../../../../src/providers/s3/utils/client/s3data/listParts.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { parseMetadata, } from '@aws-amplify/core/internals/aws-client-utils';\nimport { AmplifyUrl, AmplifyUrlSearchParams, } from '@aws-amplify/core/internals/utils';\nimport { composeServiceApi } from '@aws-amplify/core/internals/aws-client-utils/composers';\nimport { buildStorageServiceError, deserializeCompletedPartList, emptyArrayGuard, map, parseXmlBody, s3TransferHandler, serializePathnameObjectKey, validateS3RequiredParameter, } from '../utils';\nimport { defaultConfig, parseXmlError } from './base';\nconst listPartsSerializer = async (input, endpoint) => {\n const headers = {};\n const url = new AmplifyUrl(endpoint.url.toString());\n validateS3RequiredParameter(!!input.Key, 'Key');\n url.pathname = serializePathnameObjectKey(url, input.Key);\n validateS3RequiredParameter(!!input.UploadId, 'UploadId');\n url.search = new AmplifyUrlSearchParams({\n uploadId: input.UploadId,\n }).toString();\n return {\n method: 'GET',\n headers,\n url,\n };\n};\nconst listPartsDeserializer = async (response) => {\n if (response.statusCode >= 300) {\n const error = (await parseXmlError(response));\n throw buildStorageServiceError(error, response.statusCode);\n }\n else {\n const parsed = await parseXmlBody(response);\n const contents = map(parsed, {\n UploadId: 'UploadId',\n Parts: [\n 'Part',\n value => emptyArrayGuard(value, deserializeCompletedPartList),\n ],\n });\n return {\n $metadata: parseMetadata(response),\n ...contents,\n };\n }\n};\nexport const listParts = composeServiceApi(s3TransferHandler, listPartsSerializer, listPartsDeserializer, { ...defaultConfig, responseType: 'text' });\n"],"names":[],"mappings":";;;;;;;;;;;;AAAA;AACA;AAMA,MAAM,mBAAmB,GAAG,OAAO,KAAK,EAAE,QAAQ,KAAK;AACvD,IAAI,MAAM,OAAO,GAAG,EAAE;AACtB,IAAI,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;AACvD,IAAI,2BAA2B,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC;AACnD,IAAI,GAAG,CAAC,QAAQ,GAAG,0BAA0B,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC;AAC7D,IAAI,2BAA2B,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,EAAE,UAAU,CAAC;AAC7D,IAAI,GAAG,CAAC,MAAM,GAAG,IAAI,sBAAsB,CAAC;AAC5C,QAAQ,QAAQ,EAAE,KAAK,CAAC,QAAQ;AAChC,KAAK,CAAC,CAAC,QAAQ,EAAE;AACjB,IAAI,OAAO;AACX,QAAQ,MAAM,EAAE,KAAK;AACrB,QAAQ,OAAO;AACf,QAAQ,GAAG;AACX,KAAK;AACL,CAAC;AACD,MAAM,qBAAqB,GAAG,OAAO,QAAQ,KAAK;AAClD,IAAI,IAAI,QAAQ,CAAC,UAAU,IAAI,GAAG,EAAE;AACpC,QAAQ,MAAM,KAAK,IAAI,MAAM,aAAa,CAAC,QAAQ,CAAC,CAAC;AACrD,QAAQ,MAAM,wBAAwB,CAAC,KAAK,EAAE,QAAQ,CAAC,UAAU,CAAC;AAClE;AACA,SAAS;AACT,QAAQ,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,QAAQ,CAAC;AACnD,QAAQ,MAAM,QAAQ,GAAG,GAAG,CAAC,MAAM,EAAE;AACrC,YAAY,QAAQ,EAAE,UAAU;AAChC,YAAY,KAAK,EAAE;AACnB,gBAAgB,MAAM;AACtB,gBAAgB,KAAK,IAAI,eAAe,CAAC,KAAK,EAAE,4BAA4B,CAAC;AAC7E,aAAa;AACb,SAAS,CAAC;AACV,QAAQ,OAAO;AACf,YAAY,SAAS,EAAE,aAAa,CAAC,QAAQ,CAAC;AAC9C,YAAY,GAAG,QAAQ;AACvB,SAAS;AACT;AACA,CAAC;AACW,MAAC,SAAS,GAAG,iBAAiB,CAAC,iBAAiB,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,EAAE,GAAG,aAAa,EAAE,YAAY,EAAE,MAAM,EAAE;;;;"}
@@ -21,8 +21,8 @@ export declare const putObject: (config: {
21
21
  onDownloadProgress?: ((event: import("../../../../..").TransferProgressEvent) => void) | undefined;
22
22
  onUploadProgress?: ((event: import("../../../../..").TransferProgressEvent) => void) | undefined;
23
23
  abortSignal?: AbortSignal | undefined;
24
- maxAttempts?: number | undefined;
25
24
  customEndpoint?: string | undefined;
26
25
  forcePathStyle?: boolean | undefined;
27
26
  userAgentHeader?: string | undefined;
27
+ maxAttempts?: number | undefined;
28
28
  }, input: PutObjectInput) => Promise<PutObjectOutput>;
@@ -1,5 +1,5 @@
1
1
  import { parseMetadata } from '@aws-amplify/core/internals/aws-client-utils';
2
- import { AmplifyUrl, AmplifyUrlSearchParams } from '@aws-amplify/core/internals/utils';
2
+ import { AmplifyUrl } from '@aws-amplify/core/internals/utils';
3
3
  import { composeServiceApi } from '@aws-amplify/core/internals/aws-client-utils/composers';
4
4
  import { s3TransferHandler } from '../runtime/s3TransferHandler/fetch.mjs';
5
5
  import 'fast-xml-parser';
@@ -28,9 +28,6 @@ const putObjectSerializer = async (input, endpoint) => {
28
28
  const url = new AmplifyUrl(endpoint.url.toString());
29
29
  validateS3RequiredParameter(!!input.Key, 'Key');
30
30
  url.pathname = serializePathnameObjectKey(url, input.Key);
31
- url.search = new AmplifyUrlSearchParams({
32
- 'x-id': 'PutObject',
33
- }).toString();
34
31
  validateObjectUrl({
35
32
  bucketName: input.Bucket,
36
33
  key: input.Key,
@@ -45,8 +42,8 @@ const putObjectSerializer = async (input, endpoint) => {
45
42
  };
46
43
  const putObjectDeserializer = async (response) => {
47
44
  if (response.statusCode >= 300) {
48
- // error is always set when statusCode >= 300
49
- throw buildStorageServiceError((await parseXmlError(response)));
45
+ const error = (await parseXmlError(response));
46
+ throw buildStorageServiceError(error, response.statusCode);
50
47
  }
51
48
  else {
52
49
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"putObject.mjs","sources":["../../../../../../../src/providers/s3/utils/client/s3data/putObject.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { parseMetadata, } from '@aws-amplify/core/internals/aws-client-utils';\nimport { AmplifyUrl, AmplifyUrlSearchParams, } from '@aws-amplify/core/internals/utils';\nimport { composeServiceApi } from '@aws-amplify/core/internals/aws-client-utils/composers';\nimport { assignStringVariables, buildStorageServiceError, map, s3TransferHandler, serializeObjectConfigsToHeaders, serializePathnameObjectKey, validateS3RequiredParameter, } from '../utils';\nimport { validateObjectUrl } from '../../validateObjectUrl';\nimport { defaultConfig, parseXmlError } from './base';\nconst putObjectSerializer = async (input, endpoint) => {\n const headers = {\n ...(await serializeObjectConfigsToHeaders({\n ...input,\n ContentType: input.ContentType ?? 'application/octet-stream',\n })),\n ...assignStringVariables({\n 'content-md5': input.ContentMD5,\n 'x-amz-checksum-crc32': input.ChecksumCRC32,\n 'x-amz-expected-bucket-owner': input.ExpectedBucketOwner,\n 'If-None-Match': input.IfNoneMatch,\n }),\n };\n const url = new AmplifyUrl(endpoint.url.toString());\n validateS3RequiredParameter(!!input.Key, 'Key');\n url.pathname = serializePathnameObjectKey(url, input.Key);\n url.search = new AmplifyUrlSearchParams({\n 'x-id': 'PutObject',\n }).toString();\n validateObjectUrl({\n bucketName: input.Bucket,\n key: input.Key,\n objectURL: url,\n });\n return {\n method: 'PUT',\n headers,\n url,\n body: input.Body,\n };\n};\nconst putObjectDeserializer = async (response) => {\n if (response.statusCode >= 300) {\n // error is always set when statusCode >= 300\n throw buildStorageServiceError((await parseXmlError(response)));\n }\n else {\n return {\n ...map(response.headers, {\n ETag: 'etag',\n VersionId: 'x-amz-version-id',\n }),\n $metadata: parseMetadata(response),\n };\n }\n};\nexport const putObject = composeServiceApi(s3TransferHandler, putObjectSerializer, putObjectDeserializer, { ...defaultConfig, responseType: 'text' });\n"],"names":[],"mappings":";;;;;;;;;;;;AAAA;AACA;AAOA,MAAM,mBAAmB,GAAG,OAAO,KAAK,EAAE,QAAQ,KAAK;AACvD,IAAI,MAAM,OAAO,GAAG;AACpB,QAAQ,IAAI,MAAM,+BAA+B,CAAC;AAClD,YAAY,GAAG,KAAK;AACpB,YAAY,WAAW,EAAE,KAAK,CAAC,WAAW,IAAI,0BAA0B;AACxE,SAAS,CAAC,CAAC;AACX,QAAQ,GAAG,qBAAqB,CAAC;AACjC,YAAY,aAAa,EAAE,KAAK,CAAC,UAAU;AAC3C,YAAY,sBAAsB,EAAE,KAAK,CAAC,aAAa;AACvD,YAAY,6BAA6B,EAAE,KAAK,CAAC,mBAAmB;AACpE,YAAY,eAAe,EAAE,KAAK,CAAC,WAAW;AAC9C,SAAS,CAAC;AACV,KAAK;AACL,IAAI,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;AACvD,IAAI,2BAA2B,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC;AACnD,IAAI,GAAG,CAAC,QAAQ,GAAG,0BAA0B,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC;AAC7D,IAAI,GAAG,CAAC,MAAM,GAAG,IAAI,sBAAsB,CAAC;AAC5C,QAAQ,MAAM,EAAE,WAAW;AAC3B,KAAK,CAAC,CAAC,QAAQ,EAAE;AACjB,IAAI,iBAAiB,CAAC;AACtB,QAAQ,UAAU,EAAE,KAAK,CAAC,MAAM;AAChC,QAAQ,GAAG,EAAE,KAAK,CAAC,GAAG;AACtB,QAAQ,SAAS,EAAE,GAAG;AACtB,KAAK,CAAC;AACN,IAAI,OAAO;AACX,QAAQ,MAAM,EAAE,KAAK;AACrB,QAAQ,OAAO;AACf,QAAQ,GAAG;AACX,QAAQ,IAAI,EAAE,KAAK,CAAC,IAAI;AACxB,KAAK;AACL,CAAC;AACD,MAAM,qBAAqB,GAAG,OAAO,QAAQ,KAAK;AAClD,IAAI,IAAI,QAAQ,CAAC,UAAU,IAAI,GAAG,EAAE;AACpC;AACA,QAAQ,MAAM,wBAAwB,EAAE,MAAM,aAAa,CAAC,QAAQ,CAAC,EAAE;AACvE;AACA,SAAS;AACT,QAAQ,OAAO;AACf,YAAY,GAAG,GAAG,CAAC,QAAQ,CAAC,OAAO,EAAE;AACrC,gBAAgB,IAAI,EAAE,MAAM;AAC5B,gBAAgB,SAAS,EAAE,kBAAkB;AAC7C,aAAa,CAAC;AACd,YAAY,SAAS,EAAE,aAAa,CAAC,QAAQ,CAAC;AAC9C,SAAS;AACT;AACA,CAAC;AACW,MAAC,SAAS,GAAG,iBAAiB,CAAC,iBAAiB,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,EAAE,GAAG,aAAa,EAAE,YAAY,EAAE,MAAM,EAAE;;;;"}
1
+ {"version":3,"file":"putObject.mjs","sources":["../../../../../../../src/providers/s3/utils/client/s3data/putObject.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { parseMetadata, } from '@aws-amplify/core/internals/aws-client-utils';\nimport { AmplifyUrl } from '@aws-amplify/core/internals/utils';\nimport { composeServiceApi } from '@aws-amplify/core/internals/aws-client-utils/composers';\nimport { assignStringVariables, buildStorageServiceError, map, s3TransferHandler, serializeObjectConfigsToHeaders, serializePathnameObjectKey, validateS3RequiredParameter, } from '../utils';\nimport { validateObjectUrl } from '../../validateObjectUrl';\nimport { defaultConfig, parseXmlError } from './base';\nconst putObjectSerializer = async (input, endpoint) => {\n const headers = {\n ...(await serializeObjectConfigsToHeaders({\n ...input,\n ContentType: input.ContentType ?? 'application/octet-stream',\n })),\n ...assignStringVariables({\n 'content-md5': input.ContentMD5,\n 'x-amz-checksum-crc32': input.ChecksumCRC32,\n 'x-amz-expected-bucket-owner': input.ExpectedBucketOwner,\n 'If-None-Match': input.IfNoneMatch,\n }),\n };\n const url = new AmplifyUrl(endpoint.url.toString());\n validateS3RequiredParameter(!!input.Key, 'Key');\n url.pathname = serializePathnameObjectKey(url, input.Key);\n validateObjectUrl({\n bucketName: input.Bucket,\n key: input.Key,\n objectURL: url,\n });\n return {\n method: 'PUT',\n headers,\n url,\n body: input.Body,\n };\n};\nconst putObjectDeserializer = async (response) => {\n if (response.statusCode >= 300) {\n const error = (await parseXmlError(response));\n throw buildStorageServiceError(error, response.statusCode);\n }\n else {\n return {\n ...map(response.headers, {\n ETag: 'etag',\n VersionId: 'x-amz-version-id',\n }),\n $metadata: parseMetadata(response),\n };\n }\n};\nexport const putObject = composeServiceApi(s3TransferHandler, putObjectSerializer, putObjectDeserializer, { ...defaultConfig, responseType: 'text' });\n"],"names":[],"mappings":";;;;;;;;;;;;AAAA;AACA;AAOA,MAAM,mBAAmB,GAAG,OAAO,KAAK,EAAE,QAAQ,KAAK;AACvD,IAAI,MAAM,OAAO,GAAG;AACpB,QAAQ,IAAI,MAAM,+BAA+B,CAAC;AAClD,YAAY,GAAG,KAAK;AACpB,YAAY,WAAW,EAAE,KAAK,CAAC,WAAW,IAAI,0BAA0B;AACxE,SAAS,CAAC,CAAC;AACX,QAAQ,GAAG,qBAAqB,CAAC;AACjC,YAAY,aAAa,EAAE,KAAK,CAAC,UAAU;AAC3C,YAAY,sBAAsB,EAAE,KAAK,CAAC,aAAa;AACvD,YAAY,6BAA6B,EAAE,KAAK,CAAC,mBAAmB;AACpE,YAAY,eAAe,EAAE,KAAK,CAAC,WAAW;AAC9C,SAAS,CAAC;AACV,KAAK;AACL,IAAI,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;AACvD,IAAI,2BAA2B,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC;AACnD,IAAI,GAAG,CAAC,QAAQ,GAAG,0BAA0B,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC;AAC7D,IAAI,iBAAiB,CAAC;AACtB,QAAQ,UAAU,EAAE,KAAK,CAAC,MAAM;AAChC,QAAQ,GAAG,EAAE,KAAK,CAAC,GAAG;AACtB,QAAQ,SAAS,EAAE,GAAG;AACtB,KAAK,CAAC;AACN,IAAI,OAAO;AACX,QAAQ,MAAM,EAAE,KAAK;AACrB,QAAQ,OAAO;AACf,QAAQ,GAAG;AACX,QAAQ,IAAI,EAAE,KAAK,CAAC,IAAI;AACxB,KAAK;AACL,CAAC;AACD,MAAM,qBAAqB,GAAG,OAAO,QAAQ,KAAK;AAClD,IAAI,IAAI,QAAQ,CAAC,UAAU,IAAI,GAAG,EAAE;AACpC,QAAQ,MAAM,KAAK,IAAI,MAAM,aAAa,CAAC,QAAQ,CAAC,CAAC;AACrD,QAAQ,MAAM,wBAAwB,CAAC,KAAK,EAAE,QAAQ,CAAC,UAAU,CAAC;AAClE;AACA,SAAS;AACT,QAAQ,OAAO;AACf,YAAY,GAAG,GAAG,CAAC,QAAQ,CAAC,OAAO,EAAE;AACrC,gBAAgB,IAAI,EAAE,MAAM;AAC5B,gBAAgB,SAAS,EAAE,kBAAkB;AAC7C,aAAa,CAAC;AACd,YAAY,SAAS,EAAE,aAAa,CAAC,QAAQ,CAAC;AAC9C,SAAS;AACT;AACA,CAAC;AACW,MAAC,SAAS,GAAG,iBAAiB,CAAC,iBAAiB,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,EAAE,GAAG,aAAa,EAAE,YAAY,EAAE,MAAM,EAAE;;;;"}
@@ -21,8 +21,8 @@ export declare const uploadPart: (config: {
21
21
  onDownloadProgress?: ((event: import("../../../../..").TransferProgressEvent) => void) | undefined;
22
22
  onUploadProgress?: ((event: import("../../../../..").TransferProgressEvent) => void) | undefined;
23
23
  abortSignal?: AbortSignal | undefined;
24
- maxAttempts?: number | undefined;
25
24
  customEndpoint?: string | undefined;
26
25
  forcePathStyle?: boolean | undefined;
27
26
  userAgentHeader?: string | undefined;
27
+ maxAttempts?: number | undefined;
28
28
  }, input: UploadPartInput) => Promise<UploadPartOutput>;
@@ -44,8 +44,8 @@ const uploadPartSerializer = async (input, endpoint) => {
44
44
  };
45
45
  const uploadPartDeserializer = async (response) => {
46
46
  if (response.statusCode >= 300) {
47
- // error is always set when statusCode >= 300
48
- throw buildStorageServiceError((await parseXmlError(response)));
47
+ const error = (await parseXmlError(response));
48
+ throw buildStorageServiceError(error, response.statusCode);
49
49
  }
50
50
  else {
51
51
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"uploadPart.mjs","sources":["../../../../../../../src/providers/s3/utils/client/s3data/uploadPart.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { parseMetadata, } from '@aws-amplify/core/internals/aws-client-utils';\nimport { AmplifyUrl, AmplifyUrlSearchParams, } from '@aws-amplify/core/internals/utils';\nimport { composeServiceApi } from '@aws-amplify/core/internals/aws-client-utils/composers';\nimport { assignStringVariables, buildStorageServiceError, map, s3TransferHandler, serializePathnameObjectKey, validateS3RequiredParameter, } from '../utils';\nimport { validateObjectUrl } from '../../validateObjectUrl';\nimport { defaultConfig, parseXmlError } from './base';\nconst uploadPartSerializer = async (input, endpoint) => {\n const headers = {\n ...assignStringVariables({\n 'x-amz-checksum-crc32': input.ChecksumCRC32,\n 'content-md5': input.ContentMD5,\n 'x-amz-expected-bucket-owner': input.ExpectedBucketOwner,\n }),\n 'content-type': 'application/octet-stream',\n };\n const url = new AmplifyUrl(endpoint.url.toString());\n validateS3RequiredParameter(!!input.Key, 'Key');\n url.pathname = serializePathnameObjectKey(url, input.Key);\n validateS3RequiredParameter(!!input.PartNumber, 'PartNumber');\n validateS3RequiredParameter(!!input.UploadId, 'UploadId');\n url.search = new AmplifyUrlSearchParams({\n partNumber: input.PartNumber + '',\n uploadId: input.UploadId,\n }).toString();\n validateObjectUrl({\n bucketName: input.Bucket,\n key: input.Key,\n objectURL: url,\n });\n return {\n method: 'PUT',\n headers,\n url,\n body: input.Body,\n };\n};\nconst uploadPartDeserializer = async (response) => {\n if (response.statusCode >= 300) {\n // error is always set when statusCode >= 300\n throw buildStorageServiceError((await parseXmlError(response)));\n }\n else {\n return {\n ...map(response.headers, {\n ETag: 'etag',\n }),\n $metadata: parseMetadata(response),\n };\n }\n};\nexport const uploadPart = composeServiceApi(s3TransferHandler, uploadPartSerializer, uploadPartDeserializer, { ...defaultConfig, responseType: 'text' });\n"],"names":[],"mappings":";;;;;;;;;;;;AAAA;AACA;AAOA,MAAM,oBAAoB,GAAG,OAAO,KAAK,EAAE,QAAQ,KAAK;AACxD,IAAI,MAAM,OAAO,GAAG;AACpB,QAAQ,GAAG,qBAAqB,CAAC;AACjC,YAAY,sBAAsB,EAAE,KAAK,CAAC,aAAa;AACvD,YAAY,aAAa,EAAE,KAAK,CAAC,UAAU;AAC3C,YAAY,6BAA6B,EAAE,KAAK,CAAC,mBAAmB;AACpE,SAAS,CAAC;AACV,QAAQ,cAAc,EAAE,0BAA0B;AAClD,KAAK;AACL,IAAI,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;AACvD,IAAI,2BAA2B,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC;AACnD,IAAI,GAAG,CAAC,QAAQ,GAAG,0BAA0B,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC;AAC7D,IAAI,2BAA2B,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,EAAE,YAAY,CAAC;AACjE,IAAI,2BAA2B,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,EAAE,UAAU,CAAC;AAC7D,IAAI,GAAG,CAAC,MAAM,GAAG,IAAI,sBAAsB,CAAC;AAC5C,QAAQ,UAAU,EAAE,KAAK,CAAC,UAAU,GAAG,EAAE;AACzC,QAAQ,QAAQ,EAAE,KAAK,CAAC,QAAQ;AAChC,KAAK,CAAC,CAAC,QAAQ,EAAE;AACjB,IAAI,iBAAiB,CAAC;AACtB,QAAQ,UAAU,EAAE,KAAK,CAAC,MAAM;AAChC,QAAQ,GAAG,EAAE,KAAK,CAAC,GAAG;AACtB,QAAQ,SAAS,EAAE,GAAG;AACtB,KAAK,CAAC;AACN,IAAI,OAAO;AACX,QAAQ,MAAM,EAAE,KAAK;AACrB,QAAQ,OAAO;AACf,QAAQ,GAAG;AACX,QAAQ,IAAI,EAAE,KAAK,CAAC,IAAI;AACxB,KAAK;AACL,CAAC;AACD,MAAM,sBAAsB,GAAG,OAAO,QAAQ,KAAK;AACnD,IAAI,IAAI,QAAQ,CAAC,UAAU,IAAI,GAAG,EAAE;AACpC;AACA,QAAQ,MAAM,wBAAwB,EAAE,MAAM,aAAa,CAAC,QAAQ,CAAC,EAAE;AACvE;AACA,SAAS;AACT,QAAQ,OAAO;AACf,YAAY,GAAG,GAAG,CAAC,QAAQ,CAAC,OAAO,EAAE;AACrC,gBAAgB,IAAI,EAAE,MAAM;AAC5B,aAAa,CAAC;AACd,YAAY,SAAS,EAAE,aAAa,CAAC,QAAQ,CAAC;AAC9C,SAAS;AACT;AACA,CAAC;AACW,MAAC,UAAU,GAAG,iBAAiB,CAAC,iBAAiB,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,EAAE,GAAG,aAAa,EAAE,YAAY,EAAE,MAAM,EAAE;;;;"}
1
+ {"version":3,"file":"uploadPart.mjs","sources":["../../../../../../../src/providers/s3/utils/client/s3data/uploadPart.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { parseMetadata, } from '@aws-amplify/core/internals/aws-client-utils';\nimport { AmplifyUrl, AmplifyUrlSearchParams, } from '@aws-amplify/core/internals/utils';\nimport { composeServiceApi } from '@aws-amplify/core/internals/aws-client-utils/composers';\nimport { assignStringVariables, buildStorageServiceError, map, s3TransferHandler, serializePathnameObjectKey, validateS3RequiredParameter, } from '../utils';\nimport { validateObjectUrl } from '../../validateObjectUrl';\nimport { defaultConfig, parseXmlError } from './base';\nconst uploadPartSerializer = async (input, endpoint) => {\n const headers = {\n ...assignStringVariables({\n 'x-amz-checksum-crc32': input.ChecksumCRC32,\n 'content-md5': input.ContentMD5,\n 'x-amz-expected-bucket-owner': input.ExpectedBucketOwner,\n }),\n 'content-type': 'application/octet-stream',\n };\n const url = new AmplifyUrl(endpoint.url.toString());\n validateS3RequiredParameter(!!input.Key, 'Key');\n url.pathname = serializePathnameObjectKey(url, input.Key);\n validateS3RequiredParameter(!!input.PartNumber, 'PartNumber');\n validateS3RequiredParameter(!!input.UploadId, 'UploadId');\n url.search = new AmplifyUrlSearchParams({\n partNumber: input.PartNumber + '',\n uploadId: input.UploadId,\n }).toString();\n validateObjectUrl({\n bucketName: input.Bucket,\n key: input.Key,\n objectURL: url,\n });\n return {\n method: 'PUT',\n headers,\n url,\n body: input.Body,\n };\n};\nconst uploadPartDeserializer = async (response) => {\n if (response.statusCode >= 300) {\n const error = (await parseXmlError(response));\n throw buildStorageServiceError(error, response.statusCode);\n }\n else {\n return {\n ...map(response.headers, {\n ETag: 'etag',\n }),\n $metadata: parseMetadata(response),\n };\n }\n};\nexport const uploadPart = composeServiceApi(s3TransferHandler, uploadPartSerializer, uploadPartDeserializer, { ...defaultConfig, responseType: 'text' });\n"],"names":[],"mappings":";;;;;;;;;;;;AAAA;AACA;AAOA,MAAM,oBAAoB,GAAG,OAAO,KAAK,EAAE,QAAQ,KAAK;AACxD,IAAI,MAAM,OAAO,GAAG;AACpB,QAAQ,GAAG,qBAAqB,CAAC;AACjC,YAAY,sBAAsB,EAAE,KAAK,CAAC,aAAa;AACvD,YAAY,aAAa,EAAE,KAAK,CAAC,UAAU;AAC3C,YAAY,6BAA6B,EAAE,KAAK,CAAC,mBAAmB;AACpE,SAAS,CAAC;AACV,QAAQ,cAAc,EAAE,0BAA0B;AAClD,KAAK;AACL,IAAI,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;AACvD,IAAI,2BAA2B,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC;AACnD,IAAI,GAAG,CAAC,QAAQ,GAAG,0BAA0B,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC;AAC7D,IAAI,2BAA2B,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,EAAE,YAAY,CAAC;AACjE,IAAI,2BAA2B,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,EAAE,UAAU,CAAC;AAC7D,IAAI,GAAG,CAAC,MAAM,GAAG,IAAI,sBAAsB,CAAC;AAC5C,QAAQ,UAAU,EAAE,KAAK,CAAC,UAAU,GAAG,EAAE;AACzC,QAAQ,QAAQ,EAAE,KAAK,CAAC,QAAQ;AAChC,KAAK,CAAC,CAAC,QAAQ,EAAE;AACjB,IAAI,iBAAiB,CAAC;AACtB,QAAQ,UAAU,EAAE,KAAK,CAAC,MAAM;AAChC,QAAQ,GAAG,EAAE,KAAK,CAAC,GAAG;AACtB,QAAQ,SAAS,EAAE,GAAG;AACtB,KAAK,CAAC;AACN,IAAI,OAAO;AACX,QAAQ,MAAM,EAAE,KAAK;AACrB,QAAQ,OAAO;AACf,QAAQ,GAAG;AACX,QAAQ,IAAI,EAAE,KAAK,CAAC,IAAI;AACxB,KAAK;AACL,CAAC;AACD,MAAM,sBAAsB,GAAG,OAAO,QAAQ,KAAK;AACnD,IAAI,IAAI,QAAQ,CAAC,UAAU,IAAI,GAAG,EAAE;AACpC,QAAQ,MAAM,KAAK,IAAI,MAAM,aAAa,CAAC,QAAQ,CAAC,CAAC;AACrD,QAAQ,MAAM,wBAAwB,CAAC,KAAK,EAAE,QAAQ,CAAC,UAAU,CAAC;AAClE;AACA,SAAS;AACT,QAAQ,OAAO;AACf,YAAY,GAAG,GAAG,CAAC,QAAQ,CAAC,OAAO,EAAE;AACrC,gBAAgB,IAAI,EAAE,MAAM;AAC5B,aAAa,CAAC;AACd,YAAY,SAAS,EAAE,aAAa,CAAC,QAAQ,CAAC;AAC9C,SAAS;AACT;AACA,CAAC;AACW,MAAC,UAAU,GAAG,iBAAiB,CAAC,iBAAiB,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,EAAE,GAAG,aAAa,EAAE,YAAY,EAAE,MAAM,EAAE;;;;"}
@@ -1,4 +1,4 @@
1
- import { ErrorParser, Headers } from '@aws-amplify/core/internals/aws-client-utils';
1
+ import { Headers } from '@aws-amplify/core/internals/aws-client-utils';
2
2
  import { ServiceError } from '@aws-amplify/core/internals/utils';
3
3
  import { CompletedPart } from '../s3data';
4
4
  type PropertyNameWithStringValue = string;
@@ -92,15 +92,12 @@ export declare const emptyArrayGuard: <T extends any[]>(value: any, deserializer
92
92
  * @internal
93
93
  */
94
94
  export declare const deserializeMetadata: (headers: Headers) => Record<string, string>;
95
- export type ParsedError = Awaited<ReturnType<ErrorParser>> & {};
96
95
  /**
97
- * Internal-only method to create a new StorageError from a service error with AWS SDK-compatible interfaces
98
- * @param error - The output of a service error parser, with AWS SDK-compatible interface(e.g. $metadata)
99
- * @returns A new StorageError.
96
+ * Internal-only method to create a new StorageError from a service error.
100
97
  *
101
98
  * @internal
102
99
  */
103
- export declare const buildStorageServiceError: (error: ParsedError) => ServiceError;
100
+ export declare const buildStorageServiceError: (error: Error, statusCode: number) => ServiceError;
104
101
  /**
105
102
  * Internal-only method used for deserializing the parts of a multipart upload.
106
103
  *
@@ -137,17 +137,21 @@ const deserializeMetadata = (headers) => {
137
137
  return Object.keys(deserialized).length > 0 ? deserialized : undefined;
138
138
  };
139
139
  /**
140
- * Internal-only method to create a new StorageError from a service error with AWS SDK-compatible interfaces
141
- * @param error - The output of a service error parser, with AWS SDK-compatible interface(e.g. $metadata)
142
- * @returns A new StorageError.
140
+ * Internal-only method to create a new StorageError from a service error.
143
141
  *
144
142
  * @internal
145
143
  */
146
- const buildStorageServiceError = (error) => new StorageError({
147
- name: error.name,
148
- message: error.message,
149
- metadata: error.$metadata,
150
- });
144
+ const buildStorageServiceError = (error, statusCode) => {
145
+ const storageError = new StorageError({
146
+ name: error.name,
147
+ message: error.message,
148
+ });
149
+ if (statusCode === 404) {
150
+ storageError.recoverySuggestion =
151
+ 'Please add the object with this key to the bucket as the key is not found.';
152
+ }
153
+ return storageError;
154
+ };
151
155
  /**
152
156
  * Internal-only method used for deserializing the parts of a multipart upload.
153
157
  *