@aws-amplify/storage 5.9.6-unstable.7762f1a.0 → 6.0.0

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 (559) hide show
  1. package/README.md +3 -0
  2. package/lib/errors/CanceledError.d.ts +16 -0
  3. package/lib/errors/CanceledError.js +31 -0
  4. package/lib/errors/StorageError.d.ts +4 -0
  5. package/lib/errors/StorageError.js +15 -0
  6. package/lib/errors/types/validation.d.ts +14 -0
  7. package/lib/errors/types/validation.js +50 -0
  8. package/lib/errors/utils/assertValidationError.d.ts +2 -0
  9. package/lib/errors/utils/assertValidationError.js +14 -0
  10. package/lib/index.d.ts +6 -4
  11. package/lib/index.js +14 -21
  12. package/lib/providers/s3/apis/copy.d.ts +12 -0
  13. package/lib/providers/s3/apis/copy.js +21 -0
  14. package/lib/providers/s3/apis/downloadData.d.ts +32 -0
  15. package/lib/providers/s3/apis/downloadData.js +81 -0
  16. package/lib/providers/s3/apis/getProperties.d.ts +11 -0
  17. package/lib/providers/s3/apis/getProperties.js +20 -0
  18. package/lib/providers/s3/apis/getUrl.d.ts +18 -0
  19. package/lib/providers/s3/apis/getUrl.js +27 -0
  20. package/lib/providers/s3/apis/index.d.ts +7 -0
  21. package/lib/providers/s3/apis/index.js +19 -0
  22. package/lib/providers/s3/apis/internal/copy.d.ts +3 -0
  23. package/lib/providers/s3/apis/internal/copy.js +33 -0
  24. package/lib/providers/s3/apis/internal/getProperties.d.ts +4 -0
  25. package/lib/providers/s3/apis/internal/getProperties.js +30 -0
  26. package/lib/providers/s3/apis/internal/getUrl.d.ts +3 -0
  27. package/lib/providers/s3/apis/internal/getUrl.js +39 -0
  28. package/lib/providers/s3/apis/internal/list.d.ts +3 -0
  29. package/lib/providers/s3/apis/internal/list.js +71 -0
  30. package/lib/providers/s3/apis/internal/remove.d.ts +3 -0
  31. package/lib/providers/s3/apis/internal/remove.js +25 -0
  32. package/lib/providers/s3/apis/list.d.ts +22 -0
  33. package/lib/providers/s3/apis/list.js +11 -0
  34. package/lib/providers/s3/apis/remove.d.ts +9 -0
  35. package/lib/providers/s3/apis/remove.js +18 -0
  36. package/lib/providers/s3/apis/server/copy.d.ts +3 -0
  37. package/lib/providers/s3/apis/server/copy.js +11 -0
  38. package/lib/providers/s3/apis/server/getProperties.d.ts +3 -0
  39. package/lib/providers/s3/apis/server/getProperties.js +11 -0
  40. package/lib/providers/s3/apis/server/getUrl.d.ts +3 -0
  41. package/lib/providers/s3/apis/server/getUrl.js +11 -0
  42. package/lib/providers/s3/apis/server/index.d.ts +5 -0
  43. package/lib/providers/s3/apis/server/index.js +15 -0
  44. package/lib/providers/s3/apis/server/list.d.ts +23 -0
  45. package/lib/providers/s3/apis/server/list.js +11 -0
  46. package/lib/providers/s3/apis/server/remove.d.ts +3 -0
  47. package/lib/providers/s3/apis/server/remove.js +11 -0
  48. package/lib/providers/s3/apis/uploadData/byteLength.d.ts +5 -0
  49. package/lib/providers/s3/apis/uploadData/byteLength.js +37 -0
  50. package/lib/providers/s3/apis/uploadData/index.d.ts +50 -0
  51. package/lib/providers/s3/apis/uploadData/index.js +88 -0
  52. package/lib/providers/s3/apis/uploadData/multipart/calculatePartSize.d.ts +1 -0
  53. package/lib/providers/s3/apis/uploadData/multipart/calculatePartSize.js +19 -0
  54. package/lib/providers/s3/apis/uploadData/multipart/getDataChunker.d.ts +7 -0
  55. package/lib/providers/s3/apis/uploadData/multipart/getDataChunker.js +52 -0
  56. package/lib/providers/s3/apis/uploadData/multipart/index.d.ts +1 -0
  57. package/lib/providers/s3/apis/uploadData/multipart/index.js +7 -0
  58. package/lib/providers/s3/apis/uploadData/multipart/initialUpload.d.ts +30 -0
  59. package/lib/providers/s3/apis/uploadData/multipart/initialUpload.js +87 -0
  60. package/lib/providers/s3/apis/uploadData/multipart/progressTracker.d.ts +14 -0
  61. package/lib/providers/s3/apis/uploadData/multipart/progressTracker.js +29 -0
  62. package/lib/providers/s3/apis/uploadData/multipart/uploadCache.d.ts +41 -0
  63. package/lib/providers/s3/apis/uploadData/multipart/uploadCache.js +82 -0
  64. package/lib/providers/s3/apis/uploadData/multipart/uploadHandlers.d.ts +14 -0
  65. package/lib/providers/s3/apis/uploadData/multipart/uploadHandlers.js +197 -0
  66. package/lib/providers/s3/apis/uploadData/multipart/uploadPartExecutor.d.ts +17 -0
  67. package/lib/providers/s3/apis/uploadData/multipart/uploadPartExecutor.js +50 -0
  68. package/lib/providers/s3/apis/uploadData/putObjectJob.d.ts +8 -0
  69. package/lib/providers/s3/apis/uploadData/putObjectJob.js +48 -0
  70. package/lib/providers/s3/index.d.ts +3 -0
  71. package/lib/providers/s3/index.js +13 -0
  72. package/lib/providers/s3/server.d.ts +1 -0
  73. package/lib/providers/s3/server.js +6 -0
  74. package/lib/providers/s3/types/errors.d.ts +5 -0
  75. package/lib/providers/s3/types/errors.js +11 -0
  76. package/lib/providers/s3/types/index.d.ts +4 -0
  77. package/lib/providers/s3/types/index.js +7 -0
  78. package/lib/providers/s3/types/inputs.d.ts +34 -0
  79. package/lib/providers/s3/types/options.d.ts +111 -0
  80. package/lib/providers/s3/types/outputs.d.ts +52 -0
  81. package/lib/{types/Storage.js → providers/s3/types/outputs.js} +0 -3
  82. package/lib/providers/s3/utils/client/abortMultipartUpload.d.ts +29 -0
  83. package/lib/providers/s3/utils/client/abortMultipartUpload.js +36 -0
  84. package/{lib-esm/AwsClients/S3 → lib/providers/s3/utils/client}/base.d.ts +1 -1
  85. package/lib/{AwsClients/S3 → providers/s3/utils/client}/base.js +22 -24
  86. package/lib/providers/s3/utils/client/completeMultipartUpload.d.ts +28 -0
  87. package/lib/providers/s3/utils/client/completeMultipartUpload.js +103 -0
  88. package/lib/providers/s3/utils/client/copyObject.d.ts +28 -0
  89. package/lib/providers/s3/utils/client/copyObject.js +40 -0
  90. package/lib/providers/s3/utils/client/createMultipartUpload.d.ts +29 -0
  91. package/lib/providers/s3/utils/client/createMultipartUpload.js +39 -0
  92. package/lib/providers/s3/utils/client/deleteObject.d.ts +28 -0
  93. package/lib/providers/s3/utils/client/deleteObject.js +39 -0
  94. package/lib/providers/s3/utils/client/getObject.d.ts +40 -0
  95. package/lib/providers/s3/utils/client/getObject.js +110 -0
  96. package/lib/providers/s3/utils/client/headObject.d.ts +28 -0
  97. package/lib/providers/s3/utils/client/headObject.js +44 -0
  98. package/lib/providers/s3/utils/client/listObjectsV2.d.ts +28 -0
  99. package/lib/providers/s3/utils/client/listObjectsV2.js +87 -0
  100. package/lib/providers/s3/utils/client/listParts.d.ts +28 -0
  101. package/lib/providers/s3/utils/client/listParts.js +51 -0
  102. package/lib/providers/s3/utils/client/putObject.d.ts +28 -0
  103. package/lib/providers/s3/utils/client/putObject.js +44 -0
  104. package/lib/{AwsClients/S3 → providers/s3/utils/client}/runtime/base64/index.browser.js +1 -1
  105. package/lib/{AwsClients/S3 → providers/s3/utils/client}/runtime/base64/index.native.js +1 -1
  106. package/lib/providers/s3/utils/client/runtime/contentSha256middleware.js +25 -0
  107. package/lib/{AwsClients/S3 → providers/s3/utils/client}/runtime/index.browser.d.ts +0 -1
  108. package/lib/{AwsClients/S3 → providers/s3/utils/client}/runtime/index.browser.js +1 -3
  109. package/{lib-esm/AwsClients/S3 → lib/providers/s3/utils/client}/runtime/index.d.ts +1 -1
  110. package/lib/{AwsClients/S3 → providers/s3/utils/client}/runtime/index.js +4 -3
  111. package/{lib-esm/AwsClients/S3 → lib/providers/s3/utils/client}/runtime/index.native.d.ts +0 -1
  112. package/lib/{AwsClients/S3 → providers/s3/utils/client}/runtime/index.native.js +1 -3
  113. package/lib/providers/s3/utils/client/runtime/package.json +14 -0
  114. package/lib/{AwsClients/S3 → providers/s3/utils/client}/runtime/s3TransferHandler/fetch.js +3 -3
  115. package/lib/{AwsClients/S3 → providers/s3/utils/client}/runtime/s3TransferHandler/xhr.js +4 -4
  116. package/lib/{AwsClients/S3 → providers/s3/utils/client}/runtime/xhrTransferHandler.d.ts +3 -4
  117. package/lib/providers/s3/utils/client/runtime/xhrTransferHandler.js +176 -0
  118. package/lib/{AwsClients/S3 → providers/s3/utils/client}/runtime/xmlParser/dom.js +27 -38
  119. package/lib/{AwsClients/S3 → providers/s3/utils/client}/runtime/xmlParser/pureJs.js +11 -13
  120. package/lib/providers/s3/utils/client/types.js +4 -0
  121. package/lib/providers/s3/utils/client/uploadPart.d.ts +28 -0
  122. package/lib/providers/s3/utils/client/uploadPart.js +46 -0
  123. package/lib/{AwsClients/S3 → providers/s3/utils/client}/utils/deserializeHelpers.d.ts +10 -3
  124. package/lib/{AwsClients/S3 → providers/s3/utils/client}/utils/deserializeHelpers.js +39 -61
  125. package/lib/providers/s3/utils/client/utils/index.d.ts +4 -0
  126. package/lib/{AwsClients/S3 → providers/s3/utils/client}/utils/index.js +5 -6
  127. package/lib/providers/s3/utils/client/utils/parsePayload.js +43 -0
  128. package/lib/{AwsClients/S3 → providers/s3/utils/client}/utils/serializeHelpers.d.ts +2 -9
  129. package/lib/providers/s3/utils/client/utils/serializeHelpers.js +67 -0
  130. package/lib/providers/s3/utils/constants.d.ts +9 -0
  131. package/lib/providers/s3/utils/constants.js +17 -0
  132. package/lib/providers/s3/utils/index.d.ts +3 -0
  133. package/lib/providers/s3/utils/index.js +12 -0
  134. package/lib/{common/MD5utils.d.ts → providers/s3/utils/md5.d.ts} +1 -1
  135. package/lib/providers/s3/utils/md5.js +43 -0
  136. package/lib/{common/MD5utils.native.d.ts → providers/s3/utils/md5.native.d.ts} +1 -1
  137. package/lib/providers/s3/utils/md5.native.js +39 -0
  138. package/lib/providers/s3/utils/resolveS3ConfigAndInput.d.ts +28 -0
  139. package/lib/providers/s3/utils/resolveS3ConfigAndInput.js +58 -0
  140. package/lib/providers/s3/utils/transferTask.d.ts +16 -0
  141. package/lib/providers/s3/utils/transferTask.js +69 -0
  142. package/lib/providers/s3/utils/userAgent.d.ts +2 -0
  143. package/lib/providers/s3/utils/userAgent.js +13 -0
  144. package/lib/server.d.ts +1 -0
  145. package/lib/server.js +6 -0
  146. package/lib/tsconfig.tsbuildinfo +1 -1
  147. package/lib/types/common.d.ts +36 -0
  148. package/lib/types/common.js +4 -0
  149. package/lib/types/index.d.ts +4 -3
  150. package/lib/types/index.js +0 -17
  151. package/lib/types/inputs.d.ts +27 -0
  152. package/lib/types/inputs.js +4 -0
  153. package/lib/types/options.d.ts +13 -0
  154. package/lib/types/options.js +4 -0
  155. package/lib/types/outputs.d.ts +42 -0
  156. package/lib/types/outputs.js +4 -0
  157. package/lib/utils/index.d.ts +1 -0
  158. package/lib/utils/index.js +7 -0
  159. package/lib/utils/resolvePrefix.d.ts +7 -0
  160. package/lib/utils/resolvePrefix.js +21 -0
  161. package/lib-esm/errors/CanceledError.d.ts +16 -0
  162. package/lib-esm/errors/CanceledError.js +26 -0
  163. package/lib-esm/errors/StorageError.d.ts +4 -0
  164. package/lib-esm/errors/StorageError.js +11 -0
  165. package/lib-esm/errors/types/validation.d.ts +14 -0
  166. package/lib-esm/errors/types/validation.js +47 -0
  167. package/lib-esm/errors/utils/assertValidationError.d.ts +2 -0
  168. package/lib-esm/errors/utils/assertValidationError.js +10 -0
  169. package/lib-esm/index.d.ts +6 -4
  170. package/lib-esm/index.js +4 -4
  171. package/lib-esm/providers/s3/apis/copy.d.ts +12 -0
  172. package/lib-esm/providers/s3/apis/copy.js +17 -0
  173. package/lib-esm/providers/s3/apis/downloadData.d.ts +32 -0
  174. package/lib-esm/providers/s3/apis/downloadData.js +77 -0
  175. package/lib-esm/providers/s3/apis/getProperties.d.ts +11 -0
  176. package/lib-esm/providers/s3/apis/getProperties.js +16 -0
  177. package/lib-esm/providers/s3/apis/getUrl.d.ts +18 -0
  178. package/lib-esm/providers/s3/apis/getUrl.js +23 -0
  179. package/lib-esm/providers/s3/apis/index.d.ts +7 -0
  180. package/lib-esm/providers/s3/apis/index.js +9 -0
  181. package/lib-esm/providers/s3/apis/internal/copy.d.ts +3 -0
  182. package/lib-esm/providers/s3/apis/internal/copy.js +29 -0
  183. package/lib-esm/providers/s3/apis/internal/getProperties.d.ts +4 -0
  184. package/lib-esm/providers/s3/apis/internal/getProperties.js +26 -0
  185. package/lib-esm/providers/s3/apis/internal/getUrl.d.ts +3 -0
  186. package/lib-esm/providers/s3/apis/internal/getUrl.js +35 -0
  187. package/lib-esm/providers/s3/apis/internal/list.d.ts +3 -0
  188. package/lib-esm/providers/s3/apis/internal/list.js +67 -0
  189. package/lib-esm/providers/s3/apis/internal/remove.d.ts +3 -0
  190. package/lib-esm/providers/s3/apis/internal/remove.js +21 -0
  191. package/lib-esm/providers/s3/apis/list.d.ts +22 -0
  192. package/lib-esm/providers/s3/apis/list.js +7 -0
  193. package/lib-esm/providers/s3/apis/remove.d.ts +9 -0
  194. package/lib-esm/providers/s3/apis/remove.js +14 -0
  195. package/lib-esm/providers/s3/apis/server/copy.d.ts +3 -0
  196. package/lib-esm/providers/s3/apis/server/copy.js +7 -0
  197. package/lib-esm/providers/s3/apis/server/getProperties.d.ts +3 -0
  198. package/lib-esm/providers/s3/apis/server/getProperties.js +7 -0
  199. package/lib-esm/providers/s3/apis/server/getUrl.d.ts +3 -0
  200. package/lib-esm/providers/s3/apis/server/getUrl.js +7 -0
  201. package/lib-esm/providers/s3/apis/server/index.d.ts +5 -0
  202. package/lib-esm/providers/s3/apis/server/index.js +7 -0
  203. package/lib-esm/providers/s3/apis/server/list.d.ts +23 -0
  204. package/lib-esm/providers/s3/apis/server/list.js +7 -0
  205. package/lib-esm/providers/s3/apis/server/remove.d.ts +3 -0
  206. package/lib-esm/providers/s3/apis/server/remove.js +7 -0
  207. package/lib-esm/providers/s3/apis/uploadData/byteLength.d.ts +5 -0
  208. package/lib-esm/providers/s3/apis/uploadData/byteLength.js +33 -0
  209. package/lib-esm/providers/s3/apis/uploadData/index.d.ts +50 -0
  210. package/lib-esm/providers/s3/apis/uploadData/index.js +84 -0
  211. package/lib-esm/providers/s3/apis/uploadData/multipart/calculatePartSize.d.ts +1 -0
  212. package/lib-esm/providers/s3/apis/uploadData/multipart/calculatePartSize.js +15 -0
  213. package/lib-esm/providers/s3/apis/uploadData/multipart/getDataChunker.d.ts +7 -0
  214. package/lib-esm/providers/s3/apis/uploadData/multipart/getDataChunker.js +48 -0
  215. package/lib-esm/providers/s3/apis/uploadData/multipart/index.d.ts +1 -0
  216. package/lib-esm/providers/s3/apis/uploadData/multipart/index.js +3 -0
  217. package/lib-esm/providers/s3/apis/uploadData/multipart/initialUpload.d.ts +30 -0
  218. package/lib-esm/providers/s3/apis/uploadData/multipart/initialUpload.js +83 -0
  219. package/lib-esm/providers/s3/apis/uploadData/multipart/progressTracker.d.ts +14 -0
  220. package/lib-esm/providers/s3/apis/uploadData/multipart/progressTracker.js +25 -0
  221. package/lib-esm/providers/s3/apis/uploadData/multipart/uploadCache.d.ts +41 -0
  222. package/lib-esm/providers/s3/apis/uploadData/multipart/uploadCache.js +75 -0
  223. package/lib-esm/providers/s3/apis/uploadData/multipart/uploadHandlers.d.ts +14 -0
  224. package/lib-esm/providers/s3/apis/uploadData/multipart/uploadHandlers.js +193 -0
  225. package/lib-esm/providers/s3/apis/uploadData/multipart/uploadPartExecutor.d.ts +17 -0
  226. package/lib-esm/providers/s3/apis/uploadData/multipart/uploadPartExecutor.js +46 -0
  227. package/lib-esm/providers/s3/apis/uploadData/putObjectJob.d.ts +8 -0
  228. package/lib-esm/providers/s3/apis/uploadData/putObjectJob.js +44 -0
  229. package/lib-esm/providers/s3/index.d.ts +3 -0
  230. package/lib-esm/providers/s3/index.js +3 -0
  231. package/lib-esm/providers/s3/server.d.ts +1 -0
  232. package/lib-esm/providers/s3/server.js +3 -0
  233. package/lib-esm/providers/s3/types/errors.d.ts +5 -0
  234. package/lib-esm/providers/s3/types/errors.js +8 -0
  235. package/lib-esm/providers/s3/types/index.d.ts +4 -0
  236. package/lib-esm/providers/{index.js → s3/types/index.js} +1 -1
  237. package/lib-esm/providers/s3/types/inputs.d.ts +34 -0
  238. package/lib-esm/providers/s3/types/options.d.ts +111 -0
  239. package/lib-esm/providers/s3/types/outputs.d.ts +52 -0
  240. package/lib-esm/{types/Storage.js → providers/s3/types/outputs.js} +0 -3
  241. package/lib-esm/providers/s3/utils/client/abortMultipartUpload.d.ts +29 -0
  242. package/lib-esm/providers/s3/utils/client/abortMultipartUpload.js +33 -0
  243. package/{lib/AwsClients/S3 → lib-esm/providers/s3/utils/client}/base.d.ts +1 -1
  244. package/lib-esm/{AwsClients/S3 → providers/s3/utils/client}/base.js +20 -22
  245. package/lib-esm/providers/s3/utils/client/completeMultipartUpload.d.ts +28 -0
  246. package/lib-esm/providers/s3/utils/client/completeMultipartUpload.js +100 -0
  247. package/lib-esm/providers/s3/utils/client/copyObject.d.ts +28 -0
  248. package/lib-esm/providers/s3/utils/client/copyObject.js +37 -0
  249. package/lib-esm/providers/s3/utils/client/createMultipartUpload.d.ts +29 -0
  250. package/lib-esm/providers/s3/utils/client/createMultipartUpload.js +36 -0
  251. package/lib-esm/providers/s3/utils/client/deleteObject.d.ts +28 -0
  252. package/lib-esm/providers/s3/utils/client/deleteObject.js +36 -0
  253. package/lib-esm/providers/s3/utils/client/getObject.d.ts +40 -0
  254. package/lib-esm/providers/s3/utils/client/getObject.js +106 -0
  255. package/lib-esm/providers/s3/utils/client/headObject.d.ts +28 -0
  256. package/lib-esm/providers/s3/utils/client/headObject.js +41 -0
  257. package/lib-esm/providers/s3/utils/client/listObjectsV2.d.ts +28 -0
  258. package/lib-esm/providers/s3/utils/client/listObjectsV2.js +84 -0
  259. package/lib-esm/providers/s3/utils/client/listParts.d.ts +28 -0
  260. package/lib-esm/providers/s3/utils/client/listParts.js +48 -0
  261. package/lib-esm/providers/s3/utils/client/putObject.d.ts +28 -0
  262. package/lib-esm/providers/s3/utils/client/putObject.js +41 -0
  263. package/lib-esm/{AwsClients/S3 → providers/s3/utils/client}/runtime/base64/index.browser.js +1 -1
  264. package/lib-esm/providers/s3/utils/client/runtime/constants.js +11 -0
  265. package/lib-esm/providers/s3/utils/client/runtime/contentSha256middleware.js +21 -0
  266. package/lib-esm/{AwsClients/S3 → providers/s3/utils/client}/runtime/index.browser.d.ts +0 -1
  267. package/lib-esm/{AwsClients/S3 → providers/s3/utils/client}/runtime/index.browser.js +0 -1
  268. package/{lib/AwsClients/S3 → lib-esm/providers/s3/utils/client}/runtime/index.d.ts +1 -1
  269. package/lib-esm/{AwsClients/S3 → providers/s3/utils/client}/runtime/index.js +3 -1
  270. package/{lib/AwsClients/S3 → lib-esm/providers/s3/utils/client}/runtime/index.native.d.ts +0 -1
  271. package/lib-esm/{AwsClients/S3 → providers/s3/utils/client}/runtime/index.native.js +0 -1
  272. package/lib-esm/providers/s3/utils/client/runtime/package.json +14 -0
  273. package/lib-esm/{AwsClients/S3 → providers/s3/utils/client}/runtime/s3TransferHandler/fetch.js +1 -1
  274. package/lib-esm/{AwsClients/S3 → providers/s3/utils/client}/runtime/s3TransferHandler/xhr.js +1 -1
  275. package/lib-esm/{AwsClients/S3 → providers/s3/utils/client}/runtime/xhrTransferHandler.d.ts +3 -4
  276. package/lib-esm/providers/s3/utils/client/runtime/xhrTransferHandler.js +172 -0
  277. package/lib-esm/{AwsClients/S3 → providers/s3/utils/client}/runtime/xmlParser/dom.js +28 -39
  278. package/lib-esm/{AwsClients/S3 → providers/s3/utils/client}/runtime/xmlParser/pureJs.js +11 -13
  279. package/lib-esm/providers/s3/utils/client/types.js +3 -0
  280. package/lib-esm/providers/s3/utils/client/uploadPart.d.ts +28 -0
  281. package/lib-esm/providers/s3/utils/client/uploadPart.js +43 -0
  282. package/lib-esm/{AwsClients/S3 → providers/s3/utils/client}/utils/deserializeHelpers.d.ts +10 -3
  283. package/lib-esm/{AwsClients/S3 → providers/s3/utils/client}/utils/deserializeHelpers.js +37 -60
  284. package/lib-esm/providers/s3/utils/client/utils/index.d.ts +4 -0
  285. package/lib-esm/providers/s3/utils/client/utils/index.js +6 -0
  286. package/lib-esm/providers/s3/utils/client/utils/parsePayload.js +38 -0
  287. package/lib-esm/{AwsClients/S3 → providers/s3/utils/client}/utils/serializeHelpers.d.ts +2 -9
  288. package/lib-esm/providers/s3/utils/client/utils/serializeHelpers.js +60 -0
  289. package/lib-esm/providers/s3/utils/constants.d.ts +9 -0
  290. package/lib-esm/providers/s3/utils/constants.js +14 -0
  291. package/lib-esm/providers/s3/utils/index.d.ts +3 -0
  292. package/lib-esm/providers/s3/utils/index.js +5 -0
  293. package/lib-esm/{common/MD5utils.d.ts → providers/s3/utils/md5.d.ts} +1 -1
  294. package/lib-esm/providers/s3/utils/md5.js +39 -0
  295. package/lib-esm/{common/MD5utils.native.d.ts → providers/s3/utils/md5.native.d.ts} +1 -1
  296. package/lib-esm/providers/s3/utils/md5.native.js +35 -0
  297. package/lib-esm/providers/s3/utils/resolveS3ConfigAndInput.d.ts +28 -0
  298. package/lib-esm/providers/s3/utils/resolveS3ConfigAndInput.js +54 -0
  299. package/lib-esm/providers/s3/utils/transferTask.d.ts +16 -0
  300. package/lib-esm/providers/s3/utils/transferTask.js +65 -0
  301. package/lib-esm/providers/s3/utils/userAgent.d.ts +2 -0
  302. package/lib-esm/providers/s3/utils/userAgent.js +9 -0
  303. package/lib-esm/server.d.ts +1 -0
  304. package/lib-esm/server.js +3 -0
  305. package/lib-esm/tsconfig.tsbuildinfo +1 -1
  306. package/lib-esm/types/common.d.ts +36 -0
  307. package/lib-esm/types/common.js +3 -0
  308. package/lib-esm/types/index.d.ts +4 -3
  309. package/lib-esm/types/index.js +1 -3
  310. package/lib-esm/types/inputs.d.ts +27 -0
  311. package/lib-esm/types/inputs.js +3 -0
  312. package/lib-esm/types/options.d.ts +13 -0
  313. package/lib-esm/types/options.js +3 -0
  314. package/lib-esm/types/outputs.d.ts +42 -0
  315. package/lib-esm/types/outputs.js +3 -0
  316. package/lib-esm/utils/index.d.ts +1 -0
  317. package/lib-esm/utils/index.js +3 -0
  318. package/lib-esm/utils/resolvePrefix.d.ts +7 -0
  319. package/lib-esm/utils/resolvePrefix.js +17 -0
  320. package/package.json +163 -110
  321. package/s3/package.json +7 -0
  322. package/s3/server/package.json +7 -0
  323. package/server/package.json +8 -0
  324. package/src/errors/CanceledError.ts +32 -0
  325. package/src/errors/StorageError.ts +16 -0
  326. package/src/errors/types/validation.ts +52 -0
  327. package/src/errors/utils/assertValidationError.ts +19 -0
  328. package/src/index.ts +36 -4
  329. package/src/providers/s3/apis/copy.ts +21 -0
  330. package/src/providers/s3/apis/downloadData.ts +104 -0
  331. package/src/providers/s3/apis/getProperties.ts +21 -0
  332. package/src/providers/s3/apis/getUrl.ts +27 -0
  333. package/src/providers/s3/apis/index.ts +10 -0
  334. package/src/providers/s3/apis/internal/copy.ts +56 -0
  335. package/src/providers/s3/apis/internal/getProperties.ts +41 -0
  336. package/src/providers/s3/apis/internal/getUrl.ts +60 -0
  337. package/src/providers/s3/apis/internal/list.ts +113 -0
  338. package/src/providers/s3/apis/internal/remove.ts +35 -0
  339. package/src/providers/s3/apis/list.ts +37 -0
  340. package/src/providers/s3/apis/remove.ts +17 -0
  341. package/src/providers/s3/apis/server/copy.ts +16 -0
  342. package/src/providers/s3/apis/server/getProperties.ts +19 -0
  343. package/src/providers/s3/apis/server/getUrl.ts +16 -0
  344. package/src/providers/s3/apis/server/index.ts +8 -0
  345. package/src/providers/s3/apis/server/list.ts +50 -0
  346. package/src/providers/s3/apis/server/remove.ts +16 -0
  347. package/src/providers/s3/apis/uploadData/byteLength.ts +30 -0
  348. package/src/providers/s3/apis/uploadData/index.ts +92 -0
  349. package/src/providers/s3/apis/uploadData/multipart/calculatePartSize.ts +17 -0
  350. package/src/providers/s3/apis/uploadData/multipart/getDataChunker.ts +68 -0
  351. package/src/providers/s3/apis/uploadData/multipart/index.ts +4 -0
  352. package/src/providers/s3/apis/uploadData/multipart/initialUpload.ts +135 -0
  353. package/src/providers/s3/apis/uploadData/multipart/progressTracker.ts +42 -0
  354. package/src/providers/s3/apis/uploadData/multipart/uploadCache.ts +144 -0
  355. package/src/providers/s3/apis/uploadData/multipart/uploadHandlers.ts +255 -0
  356. package/src/providers/s3/apis/uploadData/multipart/uploadPartExecutor.ts +78 -0
  357. package/src/providers/s3/apis/uploadData/putObjectJob.ts +68 -0
  358. package/src/providers/s3/index.ts +34 -0
  359. package/src/providers/s3/server.ts +4 -0
  360. package/src/providers/s3/types/errors.ts +8 -0
  361. package/src/providers/s3/types/index.ts +36 -0
  362. package/src/providers/s3/types/inputs.ts +68 -0
  363. package/src/providers/s3/types/options.ts +139 -0
  364. package/src/providers/s3/types/outputs.ts +72 -0
  365. package/src/{AwsClients/S3 → providers/s3/utils/client}/abortMultipartUpload.ts +12 -4
  366. package/src/{AwsClients/S3 → providers/s3/utils/client}/base.ts +7 -4
  367. package/src/{AwsClients/S3 → providers/s3/utils/client}/completeMultipartUpload.ts +27 -21
  368. package/src/{AwsClients/S3 → providers/s3/utils/client}/copyObject.ts +10 -17
  369. package/src/{AwsClients/S3 → providers/s3/utils/client}/createMultipartUpload.ts +7 -3
  370. package/src/{AwsClients/S3 → providers/s3/utils/client}/deleteObject.ts +9 -3
  371. package/src/{AwsClients/S3 → providers/s3/utils/client}/getObject.ts +38 -36
  372. package/src/{AwsClients/S3 → providers/s3/utils/client}/headObject.ts +16 -22
  373. package/src/{AwsClients/S3 → providers/s3/utils/client}/listObjectsV2.ts +10 -5
  374. package/src/{AwsClients/S3 → providers/s3/utils/client}/listParts.ts +14 -13
  375. package/src/{AwsClients/S3 → providers/s3/utils/client}/putObject.ts +7 -13
  376. package/src/{AwsClients/S3 → providers/s3/utils/client}/runtime/index.browser.ts +0 -1
  377. package/src/{AwsClients/S3 → providers/s3/utils/client}/runtime/index.native.ts +0 -1
  378. package/src/{AwsClients/S3 → providers/s3/utils/client}/runtime/index.ts +4 -1
  379. package/src/providers/s3/utils/client/runtime/package.json +14 -0
  380. package/src/{AwsClients/S3 → providers/s3/utils/client}/runtime/s3TransferHandler/fetch.ts +6 -4
  381. package/src/{AwsClients/S3 → providers/s3/utils/client}/runtime/xhrTransferHandler.ts +39 -56
  382. package/src/{AwsClients/S3 → providers/s3/utils/client}/runtime/xmlParser/dom.ts +1 -1
  383. package/src/{AwsClients/S3 → providers/s3/utils/client}/runtime/xmlParser/pureJs.ts +1 -1
  384. package/src/{AwsClients/S3 → providers/s3/utils/client}/uploadPart.ts +14 -16
  385. package/src/{AwsClients/S3 → providers/s3/utils/client}/utils/deserializeHelpers.ts +28 -6
  386. package/src/{AwsClients/S3 → providers/s3/utils/client}/utils/index.ts +4 -3
  387. package/src/{AwsClients/S3 → providers/s3/utils/client}/utils/serializeHelpers.ts +21 -40
  388. package/src/providers/s3/utils/constants.ts +21 -0
  389. package/src/providers/s3/utils/index.ts +6 -0
  390. package/src/{common/MD5utils.ts → providers/s3/utils/md5.native.ts} +7 -3
  391. package/src/{common/MD5utils.native.ts → providers/s3/utils/md5.ts} +7 -3
  392. package/src/providers/s3/utils/resolveS3ConfigAndInput.ts +89 -0
  393. package/src/providers/s3/utils/transferTask.ts +101 -0
  394. package/src/providers/s3/utils/userAgent.ts +14 -0
  395. package/src/server.ts +4 -0
  396. package/src/types/common.ts +57 -0
  397. package/src/types/index.ts +30 -3
  398. package/src/types/inputs.ts +56 -0
  399. package/src/types/options.ts +20 -0
  400. package/src/types/outputs.ts +50 -0
  401. package/src/{providers → utils}/index.ts +2 -1
  402. package/src/utils/resolvePrefix.ts +32 -0
  403. package/lib/AwsClients/S3/abortMultipartUpload.d.ts +0 -21
  404. package/lib/AwsClients/S3/abortMultipartUpload.js +0 -85
  405. package/lib/AwsClients/S3/completeMultipartUpload.d.ts +0 -20
  406. package/lib/AwsClients/S3/completeMultipartUpload.js +0 -162
  407. package/lib/AwsClients/S3/copyObject.d.ts +0 -24
  408. package/lib/AwsClients/S3/copyObject.js +0 -98
  409. package/lib/AwsClients/S3/createMultipartUpload.d.ts +0 -21
  410. package/lib/AwsClients/S3/createMultipartUpload.js +0 -95
  411. package/lib/AwsClients/S3/deleteObject.d.ts +0 -20
  412. package/lib/AwsClients/S3/deleteObject.js +0 -86
  413. package/lib/AwsClients/S3/getObject.d.ts +0 -27
  414. package/lib/AwsClients/S3/getObject.js +0 -216
  415. package/lib/AwsClients/S3/headObject.d.ts +0 -20
  416. package/lib/AwsClients/S3/headObject.js +0 -96
  417. package/lib/AwsClients/S3/index.native.d.ts +0 -14
  418. package/lib/AwsClients/S3/index.native.js +0 -31
  419. package/lib/AwsClients/S3/listObjectsV2.d.ts +0 -20
  420. package/lib/AwsClients/S3/listObjectsV2.js +0 -146
  421. package/lib/AwsClients/S3/listParts.d.ts +0 -20
  422. package/lib/AwsClients/S3/listParts.js +0 -110
  423. package/lib/AwsClients/S3/putObject.d.ts +0 -23
  424. package/lib/AwsClients/S3/putObject.js +0 -95
  425. package/lib/AwsClients/S3/runtime/contentSha256middleware.js +0 -70
  426. package/lib/AwsClients/S3/runtime/xhrTransferHandler.js +0 -201
  427. package/lib/AwsClients/S3/uploadPart.d.ts +0 -20
  428. package/lib/AwsClients/S3/uploadPart.js +0 -98
  429. package/lib/AwsClients/S3/utils/index.d.ts +0 -5
  430. package/lib/AwsClients/S3/utils/parsePayload.js +0 -96
  431. package/lib/AwsClients/S3/utils/serializeHelpers.js +0 -183
  432. package/lib/Storage.d.ts +0 -107
  433. package/lib/Storage.js +0 -283
  434. package/lib/common/MD5utils.js +0 -79
  435. package/lib/common/MD5utils.native.js +0 -83
  436. package/lib/common/S3ClientUtils.d.ts +0 -47
  437. package/lib/common/S3ClientUtils.js +0 -148
  438. package/lib/common/StorageConstants.d.ts +0 -3
  439. package/lib/common/StorageConstants.js +0 -10
  440. package/lib/common/StorageErrorStrings.d.ts +0 -16
  441. package/lib/common/StorageErrorStrings.js +0 -24
  442. package/lib/common/StorageUtils.d.ts +0 -4
  443. package/lib/common/StorageUtils.js +0 -47
  444. package/lib/providers/AWSS3Provider.d.ts +0 -88
  445. package/lib/providers/AWSS3Provider.js +0 -800
  446. package/lib/providers/AWSS3ProviderManagedUpload.d.ts +0 -40
  447. package/lib/providers/AWSS3ProviderManagedUpload.js +0 -425
  448. package/lib/providers/AWSS3UploadTask.d.ts +0 -107
  449. package/lib/providers/AWSS3UploadTask.js +0 -657
  450. package/lib/providers/index.d.ts +0 -1
  451. package/lib/providers/index.js +0 -7
  452. package/lib/types/AWSS3Provider.d.ts +0 -152
  453. package/lib/types/AWSS3Provider.js +0 -2
  454. package/lib/types/Provider.d.ts +0 -26
  455. package/lib/types/Storage.d.ts +0 -85
  456. package/lib-esm/AwsClients/S3/abortMultipartUpload.d.ts +0 -21
  457. package/lib-esm/AwsClients/S3/abortMultipartUpload.js +0 -82
  458. package/lib-esm/AwsClients/S3/completeMultipartUpload.d.ts +0 -20
  459. package/lib-esm/AwsClients/S3/completeMultipartUpload.js +0 -159
  460. package/lib-esm/AwsClients/S3/copyObject.d.ts +0 -24
  461. package/lib-esm/AwsClients/S3/copyObject.js +0 -95
  462. package/lib-esm/AwsClients/S3/createMultipartUpload.d.ts +0 -21
  463. package/lib-esm/AwsClients/S3/createMultipartUpload.js +0 -92
  464. package/lib-esm/AwsClients/S3/deleteObject.d.ts +0 -20
  465. package/lib-esm/AwsClients/S3/deleteObject.js +0 -83
  466. package/lib-esm/AwsClients/S3/getObject.d.ts +0 -27
  467. package/lib-esm/AwsClients/S3/getObject.js +0 -212
  468. package/lib-esm/AwsClients/S3/headObject.d.ts +0 -20
  469. package/lib-esm/AwsClients/S3/headObject.js +0 -93
  470. package/lib-esm/AwsClients/S3/index.native.d.ts +0 -14
  471. package/lib-esm/AwsClients/S3/index.native.js +0 -15
  472. package/lib-esm/AwsClients/S3/listObjectsV2.d.ts +0 -20
  473. package/lib-esm/AwsClients/S3/listObjectsV2.js +0 -143
  474. package/lib-esm/AwsClients/S3/listParts.d.ts +0 -20
  475. package/lib-esm/AwsClients/S3/listParts.js +0 -107
  476. package/lib-esm/AwsClients/S3/putObject.d.ts +0 -23
  477. package/lib-esm/AwsClients/S3/putObject.js +0 -92
  478. package/lib-esm/AwsClients/S3/runtime/constants.js +0 -11
  479. package/lib-esm/AwsClients/S3/runtime/contentSha256middleware.js +0 -66
  480. package/lib-esm/AwsClients/S3/runtime/xhrTransferHandler.js +0 -196
  481. package/lib-esm/AwsClients/S3/uploadPart.d.ts +0 -20
  482. package/lib-esm/AwsClients/S3/uploadPart.js +0 -95
  483. package/lib-esm/AwsClients/S3/utils/index.d.ts +0 -5
  484. package/lib-esm/AwsClients/S3/utils/index.js +0 -7
  485. package/lib-esm/AwsClients/S3/utils/parsePayload.js +0 -91
  486. package/lib-esm/AwsClients/S3/utils/serializeHelpers.js +0 -176
  487. package/lib-esm/Storage.d.ts +0 -107
  488. package/lib-esm/Storage.js +0 -280
  489. package/lib-esm/common/MD5utils.js +0 -75
  490. package/lib-esm/common/MD5utils.native.js +0 -79
  491. package/lib-esm/common/S3ClientUtils.d.ts +0 -47
  492. package/lib-esm/common/S3ClientUtils.js +0 -141
  493. package/lib-esm/common/StorageConstants.d.ts +0 -3
  494. package/lib-esm/common/StorageConstants.js +0 -7
  495. package/lib-esm/common/StorageErrorStrings.d.ts +0 -16
  496. package/lib-esm/common/StorageErrorStrings.js +0 -21
  497. package/lib-esm/common/StorageUtils.d.ts +0 -4
  498. package/lib-esm/common/StorageUtils.js +0 -40
  499. package/lib-esm/providers/AWSS3Provider.d.ts +0 -88
  500. package/lib-esm/providers/AWSS3Provider.js +0 -774
  501. package/lib-esm/providers/AWSS3ProviderManagedUpload.d.ts +0 -40
  502. package/lib-esm/providers/AWSS3ProviderManagedUpload.js +0 -422
  503. package/lib-esm/providers/AWSS3UploadTask.d.ts +0 -107
  504. package/lib-esm/providers/AWSS3UploadTask.js +0 -654
  505. package/lib-esm/providers/index.d.ts +0 -1
  506. package/lib-esm/types/AWSS3Provider.d.ts +0 -152
  507. package/lib-esm/types/AWSS3Provider.js +0 -1
  508. package/lib-esm/types/Provider.d.ts +0 -26
  509. package/lib-esm/types/Storage.d.ts +0 -85
  510. package/src/AwsClients/S3/index.native.ts +0 -42
  511. package/src/Storage.ts +0 -467
  512. package/src/common/S3ClientUtils.ts +0 -137
  513. package/src/common/StorageConstants.ts +0 -11
  514. package/src/common/StorageErrorStrings.ts +0 -20
  515. package/src/common/StorageUtils.ts +0 -53
  516. package/src/providers/AWSS3Provider.ts +0 -940
  517. package/src/providers/AWSS3ProviderManagedUpload.ts +0 -345
  518. package/src/providers/AWSS3UploadTask.ts +0 -550
  519. package/src/types/AWSS3Provider.ts +0 -203
  520. package/src/types/Provider.ts +0 -77
  521. package/src/types/Storage.ts +0 -215
  522. /package/lib/{AwsClients/S3/types.js → providers/s3/types/inputs.js} +0 -0
  523. /package/lib/{types/Provider.js → providers/s3/types/options.js} +0 -0
  524. /package/lib/{AwsClients/S3 → providers/s3/utils/client}/index.d.ts +0 -0
  525. /package/lib/{AwsClients/S3 → providers/s3/utils/client}/index.js +0 -0
  526. /package/lib/{AwsClients/S3 → providers/s3/utils/client}/runtime/base64/index.browser.d.ts +0 -0
  527. /package/lib/{AwsClients/S3 → providers/s3/utils/client}/runtime/base64/index.native.d.ts +0 -0
  528. /package/lib/{AwsClients/S3 → providers/s3/utils/client}/runtime/constants.d.ts +0 -0
  529. /package/lib/{AwsClients/S3 → providers/s3/utils/client}/runtime/constants.js +0 -0
  530. /package/lib/{AwsClients/S3 → providers/s3/utils/client}/runtime/contentSha256middleware.d.ts +0 -0
  531. /package/lib/{AwsClients/S3 → providers/s3/utils/client}/runtime/s3TransferHandler/fetch.d.ts +0 -0
  532. /package/lib/{AwsClients/S3 → providers/s3/utils/client}/runtime/s3TransferHandler/xhr.d.ts +0 -0
  533. /package/lib/{AwsClients/S3 → providers/s3/utils/client}/runtime/xmlParser/dom.d.ts +0 -0
  534. /package/lib/{AwsClients/S3 → providers/s3/utils/client}/runtime/xmlParser/pureJs.d.ts +0 -0
  535. /package/lib/{AwsClients/S3 → providers/s3/utils/client}/types.d.ts +0 -0
  536. /package/lib/{AwsClients/S3 → providers/s3/utils/client}/utils/parsePayload.d.ts +0 -0
  537. /package/lib-esm/{AwsClients/S3/types.js → providers/s3/types/inputs.js} +0 -0
  538. /package/lib-esm/{types/Provider.js → providers/s3/types/options.js} +0 -0
  539. /package/lib-esm/{AwsClients/S3 → providers/s3/utils/client}/index.d.ts +0 -0
  540. /package/lib-esm/{AwsClients/S3 → providers/s3/utils/client}/index.js +0 -0
  541. /package/lib-esm/{AwsClients/S3 → providers/s3/utils/client}/runtime/base64/index.browser.d.ts +0 -0
  542. /package/lib-esm/{AwsClients/S3 → providers/s3/utils/client}/runtime/base64/index.native.d.ts +0 -0
  543. /package/lib-esm/{AwsClients/S3 → providers/s3/utils/client}/runtime/base64/index.native.js +0 -0
  544. /package/lib-esm/{AwsClients/S3 → providers/s3/utils/client}/runtime/constants.d.ts +0 -0
  545. /package/lib-esm/{AwsClients/S3 → providers/s3/utils/client}/runtime/contentSha256middleware.d.ts +0 -0
  546. /package/lib-esm/{AwsClients/S3 → providers/s3/utils/client}/runtime/s3TransferHandler/fetch.d.ts +0 -0
  547. /package/lib-esm/{AwsClients/S3 → providers/s3/utils/client}/runtime/s3TransferHandler/xhr.d.ts +0 -0
  548. /package/lib-esm/{AwsClients/S3 → providers/s3/utils/client}/runtime/xmlParser/dom.d.ts +0 -0
  549. /package/lib-esm/{AwsClients/S3 → providers/s3/utils/client}/runtime/xmlParser/pureJs.d.ts +0 -0
  550. /package/lib-esm/{AwsClients/S3 → providers/s3/utils/client}/types.d.ts +0 -0
  551. /package/lib-esm/{AwsClients/S3 → providers/s3/utils/client}/utils/parsePayload.d.ts +0 -0
  552. /package/src/{AwsClients/S3 → providers/s3/utils/client}/index.ts +0 -0
  553. /package/src/{AwsClients/S3 → providers/s3/utils/client}/runtime/base64/index.browser.ts +0 -0
  554. /package/src/{AwsClients/S3 → providers/s3/utils/client}/runtime/base64/index.native.ts +0 -0
  555. /package/src/{AwsClients/S3 → providers/s3/utils/client}/runtime/constants.ts +0 -0
  556. /package/src/{AwsClients/S3 → providers/s3/utils/client}/runtime/contentSha256middleware.ts +0 -0
  557. /package/src/{AwsClients/S3 → providers/s3/utils/client}/runtime/s3TransferHandler/xhr.ts +0 -0
  558. /package/src/{AwsClients/S3 → providers/s3/utils/client}/types.ts +0 -0
  559. /package/src/{AwsClients/S3 → providers/s3/utils/client}/utils/parsePayload.ts +0 -0
@@ -0,0 +1,71 @@
1
+ "use strict";
2
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ // SPDX-License-Identifier: Apache-2.0
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.list = void 0;
6
+ const utils_1 = require("@aws-amplify/core/internals/utils");
7
+ const utils_2 = require("../../utils");
8
+ const client_1 = require("../../utils/client");
9
+ const userAgent_1 = require("../../utils/userAgent");
10
+ const MAX_PAGE_SIZE = 1000;
11
+ const list = async (amplify, input) => {
12
+ const { options = {}, prefix: path = '' } = input ?? {};
13
+ const { s3Config, bucket, keyPrefix: prefix, } = await (0, utils_2.resolveS3ConfigAndInput)(amplify, options);
14
+ const listParams = {
15
+ Bucket: bucket,
16
+ Prefix: `${prefix}${path}`,
17
+ MaxKeys: options?.listAll ? undefined : options?.pageSize,
18
+ ContinuationToken: options?.listAll ? undefined : options?.nextToken,
19
+ };
20
+ return options.listAll
21
+ ? await _listAll({ s3Config, listParams, prefix })
22
+ : await _list({ s3Config, listParams, prefix });
23
+ };
24
+ exports.list = list;
25
+ const _listAll = async ({ s3Config, listParams, prefix, }) => {
26
+ // TODO(ashwinkumar6) V6-logger: pageSize and nextToken aren't required when listing all items
27
+ const listResult = [];
28
+ let continuationToken = listParams.ContinuationToken;
29
+ do {
30
+ const { items: pageResults, nextToken: pageNextToken } = await _list({
31
+ prefix,
32
+ s3Config,
33
+ listParams: {
34
+ ...listParams,
35
+ ContinuationToken: continuationToken,
36
+ MaxKeys: MAX_PAGE_SIZE,
37
+ },
38
+ });
39
+ listResult.push(...pageResults);
40
+ continuationToken = pageNextToken;
41
+ } while (continuationToken);
42
+ return {
43
+ items: listResult,
44
+ };
45
+ };
46
+ const _list = async ({ s3Config, listParams, prefix, }) => {
47
+ const listParamsClone = { ...listParams };
48
+ if (!listParamsClone.MaxKeys || listParamsClone.MaxKeys > MAX_PAGE_SIZE) {
49
+ listParamsClone.MaxKeys = MAX_PAGE_SIZE;
50
+ // TODO(ashwinkumar6) V6-logger: defaulting pageSize to ${MAX_PAGE_SIZE}.
51
+ }
52
+ const response = await (0, client_1.listObjectsV2)({
53
+ ...s3Config,
54
+ userAgentValue: (0, userAgent_1.getStorageUserAgentValue)(utils_1.StorageAction.List)
55
+ }, listParamsClone);
56
+ if (!response?.Contents) {
57
+ return {
58
+ items: [],
59
+ };
60
+ }
61
+ const listResult = response.Contents.map(item => ({
62
+ key: item.Key.substring(prefix.length),
63
+ eTag: item.ETag,
64
+ lastModified: item.LastModified,
65
+ size: item.Size,
66
+ }));
67
+ return {
68
+ items: listResult,
69
+ nextToken: response.NextContinuationToken,
70
+ };
71
+ };
@@ -0,0 +1,3 @@
1
+ import { AmplifyClassV6 } from '@aws-amplify/core';
2
+ import { RemoveInput, RemoveOutput } from '../../types';
3
+ export declare const remove: (amplify: AmplifyClassV6, input: RemoveInput) => Promise<RemoveOutput>;
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ // SPDX-License-Identifier: Apache-2.0
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.remove = void 0;
6
+ const utils_1 = require("@aws-amplify/core/internals/utils");
7
+ const utils_2 = require("../../utils");
8
+ const client_1 = require("../../utils/client");
9
+ const userAgent_1 = require("../../utils/userAgent");
10
+ const remove = async (amplify, input) => {
11
+ const { key, options = {} } = input;
12
+ const { s3Config, keyPrefix, bucket } = await (0, utils_2.resolveS3ConfigAndInput)(amplify, options);
13
+ // TODO(ashwinkumar6) V6-logger: debug `remove ${key} from ${finalKey}`
14
+ await (0, client_1.deleteObject)({
15
+ ...s3Config,
16
+ userAgentValue: (0, userAgent_1.getStorageUserAgentValue)(utils_1.StorageAction.Remove)
17
+ }, {
18
+ Bucket: bucket,
19
+ Key: `${keyPrefix}${key}`
20
+ });
21
+ return {
22
+ key,
23
+ };
24
+ };
25
+ exports.remove = remove;
@@ -0,0 +1,22 @@
1
+ import { ListAllInput, ListPaginateInput, ListAllOutput, ListPaginateOutput } from '../types';
2
+ type ListApi = {
3
+ /**
4
+ * List files with given prefix in pages
5
+ * pageSize defaulted to 1000. Additionally, the result will include a nextToken if there are more items to retrieve.
6
+ * @param input - The ListPaginateInput object.
7
+ * @returns A list of keys and metadata with
8
+ * @throws service: {@link S3Exception} - S3 service errors thrown when checking for existence of bucket
9
+ * @throws validation: {@link StorageValidationErrorCode } - thrown when there are issues with credentials
10
+ */
11
+ (input?: ListPaginateInput): Promise<ListPaginateOutput>;
12
+ /**
13
+ * List all files from S3. You can set `listAll` to true in `options` to get all the files from S3.
14
+ * @param input - The ListAllInput object.
15
+ * @returns A list of keys and metadata for all objects in path
16
+ * @throws service: {@link S3Exception} - S3 service errors thrown when checking for existence of bucket
17
+ * @throws validation: {@link StorageValidationErrorCode } - thrown when there are issues with credentials
18
+ */
19
+ (input?: ListAllInput): Promise<ListAllOutput>;
20
+ };
21
+ export declare const list: ListApi;
22
+ export {};
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ // SPDX-License-Identifier: Apache-2.0
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.list = void 0;
6
+ const core_1 = require("@aws-amplify/core");
7
+ const list_1 = require("./internal/list");
8
+ const list = (input) => {
9
+ return (0, list_1.list)(core_1.Amplify, input ?? {});
10
+ };
11
+ exports.list = list;
@@ -0,0 +1,9 @@
1
+ import { RemoveInput, RemoveOutput } from '../types';
2
+ /**
3
+ * Remove a file from your S3 bucket.
4
+ * @param input - The RemoveInput object.
5
+ * @return Output containing the removed object key
6
+ * @throws service: {@link S3Exception} - S3 service errors thrown while getting properties
7
+ * @throws validation: {@link StorageValidationErrorCode } - Validation errors thrown
8
+ */
9
+ export declare const remove: (input: RemoveInput) => Promise<RemoveOutput>;
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ // SPDX-License-Identifier: Apache-2.0
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.remove = void 0;
6
+ const core_1 = require("@aws-amplify/core");
7
+ const remove_1 = require("./internal/remove");
8
+ /**
9
+ * Remove a file from your S3 bucket.
10
+ * @param input - The RemoveInput object.
11
+ * @return Output containing the removed object key
12
+ * @throws service: {@link S3Exception} - S3 service errors thrown while getting properties
13
+ * @throws validation: {@link StorageValidationErrorCode } - Validation errors thrown
14
+ */
15
+ const remove = (input) => {
16
+ return (0, remove_1.remove)(core_1.Amplify, input);
17
+ };
18
+ exports.remove = remove;
@@ -0,0 +1,3 @@
1
+ import { AmplifyServer } from '@aws-amplify/core/internals/adapter-core';
2
+ import { CopyInput, CopyOutput } from '../../types';
3
+ export declare const copy: (contextSpec: AmplifyServer.ContextSpec, input: CopyInput) => Promise<CopyOutput>;
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ // SPDX-License-Identifier: Apache-2.0
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.copy = void 0;
6
+ const adapter_core_1 = require("@aws-amplify/core/internals/adapter-core");
7
+ const copy_1 = require("../internal/copy");
8
+ const copy = async (contextSpec, input) => {
9
+ return (0, copy_1.copy)((0, adapter_core_1.getAmplifyServerContext)(contextSpec).amplify, input);
10
+ };
11
+ exports.copy = copy;
@@ -0,0 +1,3 @@
1
+ import { AmplifyServer } from '@aws-amplify/core/internals/adapter-core';
2
+ import { GetPropertiesInput, GetPropertiesOutput } from '../../types';
3
+ export declare const getProperties: (contextSpec: AmplifyServer.ContextSpec, input: GetPropertiesInput) => Promise<GetPropertiesOutput>;
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ // SPDX-License-Identifier: Apache-2.0
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.getProperties = void 0;
6
+ const adapter_core_1 = require("@aws-amplify/core/internals/adapter-core");
7
+ const getProperties_1 = require("../internal/getProperties");
8
+ const getProperties = (contextSpec, input) => {
9
+ return (0, getProperties_1.getProperties)((0, adapter_core_1.getAmplifyServerContext)(contextSpec).amplify, input);
10
+ };
11
+ exports.getProperties = getProperties;
@@ -0,0 +1,3 @@
1
+ import { AmplifyServer } from '@aws-amplify/core/internals/adapter-core';
2
+ import { GetUrlInput, GetUrlOutput } from '../../types';
3
+ export declare const getUrl: (contextSpec: AmplifyServer.ContextSpec, input: GetUrlInput) => Promise<GetUrlOutput>;
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ // SPDX-License-Identifier: Apache-2.0
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.getUrl = void 0;
6
+ const adapter_core_1 = require("@aws-amplify/core/internals/adapter-core");
7
+ const getUrl_1 = require("../internal/getUrl");
8
+ const getUrl = async (contextSpec, input) => {
9
+ return (0, getUrl_1.getUrl)((0, adapter_core_1.getAmplifyServerContext)(contextSpec).amplify, input);
10
+ };
11
+ exports.getUrl = getUrl;
@@ -0,0 +1,5 @@
1
+ export { getProperties } from './getProperties';
2
+ export { getUrl } from './getUrl';
3
+ export { list } from './list';
4
+ export { remove } from './remove';
5
+ export { copy } from './copy';
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ // SPDX-License-Identifier: Apache-2.0
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.copy = exports.remove = exports.list = exports.getUrl = exports.getProperties = void 0;
6
+ var getProperties_1 = require("./getProperties");
7
+ Object.defineProperty(exports, "getProperties", { enumerable: true, get: function () { return getProperties_1.getProperties; } });
8
+ var getUrl_1 = require("./getUrl");
9
+ Object.defineProperty(exports, "getUrl", { enumerable: true, get: function () { return getUrl_1.getUrl; } });
10
+ var list_1 = require("./list");
11
+ Object.defineProperty(exports, "list", { enumerable: true, get: function () { return list_1.list; } });
12
+ var remove_1 = require("./remove");
13
+ Object.defineProperty(exports, "remove", { enumerable: true, get: function () { return remove_1.remove; } });
14
+ var copy_1 = require("./copy");
15
+ Object.defineProperty(exports, "copy", { enumerable: true, get: function () { return copy_1.copy; } });
@@ -0,0 +1,23 @@
1
+ import { AmplifyServer } from '@aws-amplify/core/internals/adapter-core';
2
+ import { ListAllInput, ListPaginateInput, ListAllOutput, ListPaginateOutput } from '../../types';
3
+ type ListApi = {
4
+ /**
5
+ * Lists bucket objects with pagination.
6
+ * @param {ListPaginateInput} The input object
7
+ * @return {Promise<ListPaginateOutput>} - Promise resolves to list of keys and metadata with
8
+ * pageSize defaulting to 1000. Additionally the result will include a nextToken if there are more items to retrieve
9
+ * @throws service: {@link S3Exception} - S3 service errors thrown when checking for existence of bucket
10
+ * @throws validation: {@link StorageValidationErrorCode } - thrown when there are issues with credentials
11
+ */
12
+ (contextSpec: AmplifyServer.ContextSpec, input?: ListPaginateInput): Promise<ListPaginateOutput>;
13
+ /**
14
+ * Lists all bucket objects.
15
+ * @param {ListAllInput} The input object
16
+ * @return {Promise<ListAllOutput>} - Promise resolves to list of keys and metadata for all objects in path
17
+ * @throws service: {@link S3Exception} - S3 service errors thrown when checking for existence of bucket
18
+ * @throws validation: {@link StorageValidationErrorCode } - thrown when there are issues with credentials
19
+ */
20
+ (contextSpec: AmplifyServer.ContextSpec, input?: ListAllInput): Promise<ListAllOutput>;
21
+ };
22
+ export declare const list: ListApi;
23
+ export {};
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ // SPDX-License-Identifier: Apache-2.0
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.list = void 0;
6
+ const adapter_core_1 = require("@aws-amplify/core/internals/adapter-core");
7
+ const list_1 = require("../internal/list");
8
+ const list = (contextSpec, input) => {
9
+ return (0, list_1.list)((0, adapter_core_1.getAmplifyServerContext)(contextSpec).amplify, input ?? {});
10
+ };
11
+ exports.list = list;
@@ -0,0 +1,3 @@
1
+ import { AmplifyServer } from '@aws-amplify/core/internals/adapter-core';
2
+ import { RemoveInput, RemoveOutput } from '../../types';
3
+ export declare const remove: (contextSpec: AmplifyServer.ContextSpec, input: RemoveInput) => Promise<RemoveOutput>;
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ // SPDX-License-Identifier: Apache-2.0
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.remove = void 0;
6
+ const adapter_core_1 = require("@aws-amplify/core/internals/adapter-core");
7
+ const remove_1 = require("../internal/remove");
8
+ const remove = (contextSpec, input) => {
9
+ return (0, remove_1.remove)((0, adapter_core_1.getAmplifyServerContext)(contextSpec).amplify, input);
10
+ };
11
+ exports.remove = remove;
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Calculate the total size of the data to be uploaded. The total size is not required for multipart upload, as it's
3
+ * only used in progress report.
4
+ */
5
+ export declare const byteLength: (input?: any) => number | undefined;
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ // SPDX-License-Identifier: Apache-2.0
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.byteLength = void 0;
6
+ /**
7
+ * Calculate the total size of the data to be uploaded. The total size is not required for multipart upload, as it's
8
+ * only used in progress report.
9
+ */
10
+ const byteLength = (input) => {
11
+ if (input === null || input === undefined)
12
+ return 0;
13
+ if (typeof input === 'string') {
14
+ let len = input.length;
15
+ for (let i = len - 1; i >= 0; i--) {
16
+ const code = input.charCodeAt(i);
17
+ if (code > 0x7f && code <= 0x7ff)
18
+ len++;
19
+ else if (code > 0x7ff && code <= 0xffff)
20
+ len += 2;
21
+ if (code >= 0xdc00 && code <= 0xdfff)
22
+ i--; // trail surrogate
23
+ }
24
+ return len;
25
+ }
26
+ else if (typeof input.byteLength === 'number') {
27
+ // handles Uint8Array, ArrayBuffer, Buffer, and ArrayBufferView
28
+ return input.byteLength;
29
+ }
30
+ else if (typeof input.size === 'number') {
31
+ // handles browser File object
32
+ return input.size;
33
+ }
34
+ // TODO: support Node.js stream size
35
+ return undefined;
36
+ };
37
+ exports.byteLength = byteLength;
@@ -0,0 +1,50 @@
1
+ import { UploadDataInput, UploadDataOutput } from '../../types';
2
+ /**
3
+ * Upload data to specified S3 object. By default, it uses single PUT operation to upload if the data is less than 5MB.
4
+ * Otherwise, it uses multipart upload to upload the data. If the data length is unknown, it uses multipart upload.
5
+ *
6
+ * Limitations:
7
+ * * Maximum object size is 5TB.
8
+ * * Maximum object size if the size cannot be determined before upload is 50GB.
9
+ *
10
+ * @param input - The UploadDataInput object.
11
+ * @returns A cancelable and resumable task exposing result promise from `result`
12
+ * property.
13
+ * @throws service: {@link S3Exception} - thrown when checking for existence of the object
14
+ * @throws validation: {@link StorageValidationErrorCode } - Validation errors.
15
+ *
16
+ * @example
17
+ * ```ts
18
+ * // Upload a file to s3 bucket
19
+ * await uploadData({ key, data: file, options: {
20
+ * onProgress, // Optional progress callback.
21
+ * } }).result;
22
+ * ```
23
+ * @example
24
+ * ```ts
25
+ * // Cancel a task
26
+ * const uploadTask = uploadData({ key, data: file });
27
+ * //...
28
+ * uploadTask.cancel();
29
+ * try {
30
+ * await uploadTask.result;
31
+ * } catch (error) {
32
+ * if(isCancelError(error)) {
33
+ * // Handle error thrown by task cancelation.
34
+ * }
35
+ * }
36
+ *```
37
+ *
38
+ * @example
39
+ * ```ts
40
+ * // Pause and resume a task
41
+ * const uploadTask = uploadData({ key, data: file });
42
+ * //...
43
+ * uploadTask.pause();
44
+ * //...
45
+ * uploadTask.resume();
46
+ * //...
47
+ * await uploadTask.result;
48
+ * ```
49
+ */
50
+ export declare const uploadData: (input: UploadDataInput) => UploadDataOutput;
@@ -0,0 +1,88 @@
1
+ "use strict";
2
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ // SPDX-License-Identifier: Apache-2.0
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.uploadData = void 0;
6
+ const utils_1 = require("../../utils");
7
+ const assertValidationError_1 = require("../../../../errors/utils/assertValidationError");
8
+ const validation_1 = require("../../../../errors/types/validation");
9
+ const constants_1 = require("../../utils/constants");
10
+ const byteLength_1 = require("./byteLength");
11
+ const putObjectJob_1 = require("./putObjectJob");
12
+ const multipart_1 = require("./multipart");
13
+ /**
14
+ * Upload data to specified S3 object. By default, it uses single PUT operation to upload if the data is less than 5MB.
15
+ * Otherwise, it uses multipart upload to upload the data. If the data length is unknown, it uses multipart upload.
16
+ *
17
+ * Limitations:
18
+ * * Maximum object size is 5TB.
19
+ * * Maximum object size if the size cannot be determined before upload is 50GB.
20
+ *
21
+ * @param input - The UploadDataInput object.
22
+ * @returns A cancelable and resumable task exposing result promise from `result`
23
+ * property.
24
+ * @throws service: {@link S3Exception} - thrown when checking for existence of the object
25
+ * @throws validation: {@link StorageValidationErrorCode } - Validation errors.
26
+ *
27
+ * @example
28
+ * ```ts
29
+ * // Upload a file to s3 bucket
30
+ * await uploadData({ key, data: file, options: {
31
+ * onProgress, // Optional progress callback.
32
+ * } }).result;
33
+ * ```
34
+ * @example
35
+ * ```ts
36
+ * // Cancel a task
37
+ * const uploadTask = uploadData({ key, data: file });
38
+ * //...
39
+ * uploadTask.cancel();
40
+ * try {
41
+ * await uploadTask.result;
42
+ * } catch (error) {
43
+ * if(isCancelError(error)) {
44
+ * // Handle error thrown by task cancelation.
45
+ * }
46
+ * }
47
+ *```
48
+ *
49
+ * @example
50
+ * ```ts
51
+ * // Pause and resume a task
52
+ * const uploadTask = uploadData({ key, data: file });
53
+ * //...
54
+ * uploadTask.pause();
55
+ * //...
56
+ * uploadTask.resume();
57
+ * //...
58
+ * await uploadTask.result;
59
+ * ```
60
+ */
61
+ const uploadData = (input) => {
62
+ const { data } = input;
63
+ const dataByteLength = (0, byteLength_1.byteLength)(data);
64
+ (0, assertValidationError_1.assertValidationError)(dataByteLength === undefined || dataByteLength <= constants_1.MAX_OBJECT_SIZE, validation_1.StorageValidationErrorCode.ObjectIsTooLarge);
65
+ if (dataByteLength && dataByteLength <= constants_1.DEFAULT_PART_SIZE) {
66
+ const abortController = new AbortController();
67
+ return (0, utils_1.createUploadTask)({
68
+ isMultipartUpload: false,
69
+ job: (0, putObjectJob_1.putObjectJob)(input, abortController.signal, dataByteLength),
70
+ onCancel: (message) => {
71
+ abortController.abort(message);
72
+ },
73
+ });
74
+ }
75
+ else {
76
+ const { multipartUploadJob, onPause, onResume, onCancel } = (0, multipart_1.getMultipartUploadHandlers)(input, dataByteLength);
77
+ return (0, utils_1.createUploadTask)({
78
+ isMultipartUpload: true,
79
+ job: multipartUploadJob,
80
+ onCancel: (message) => {
81
+ onCancel(message);
82
+ },
83
+ onPause,
84
+ onResume,
85
+ });
86
+ }
87
+ };
88
+ exports.uploadData = uploadData;
@@ -0,0 +1 @@
1
+ export declare const calculatePartSize: (totalSize?: number) => number;
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ // SPDX-License-Identifier: Apache-2.0
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.calculatePartSize = void 0;
6
+ const constants_1 = require("../../../utils/constants");
7
+ const calculatePartSize = (totalSize) => {
8
+ if (!totalSize) {
9
+ return constants_1.DEFAULT_PART_SIZE;
10
+ }
11
+ let partSize = constants_1.DEFAULT_PART_SIZE;
12
+ let partsCount = Math.ceil(totalSize / partSize);
13
+ while (partsCount > constants_1.MAX_PARTS_COUNT) {
14
+ partSize *= 2;
15
+ partsCount = Math.ceil(totalSize / partSize);
16
+ }
17
+ return partSize;
18
+ };
19
+ exports.calculatePartSize = calculatePartSize;
@@ -0,0 +1,7 @@
1
+ import { StorageUploadDataPayload } from '../../../../../types';
2
+ export type PartToUpload = {
3
+ partNumber: number;
4
+ data: Blob | ArrayBuffer | string;
5
+ size: number;
6
+ };
7
+ export declare const getDataChunker: (data: StorageUploadDataPayload, totalSize?: number) => Generator<PartToUpload, void, undefined>;
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ // SPDX-License-Identifier: Apache-2.0
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.getDataChunker = void 0;
6
+ const validation_1 = require("../../../../../errors/types/validation");
7
+ const StorageError_1 = require("../../../../../errors/StorageError");
8
+ const calculatePartSize_1 = require("./calculatePartSize");
9
+ const getDataChunker = (data, totalSize) => {
10
+ const partSize = (0, calculatePartSize_1.calculatePartSize)(totalSize);
11
+ if (data instanceof Blob) {
12
+ return helper(data, 0, data.size, partSize);
13
+ }
14
+ else if (ArrayBuffer.isView(data)) {
15
+ return helper(data.buffer, data.byteOffset, data.byteLength, partSize);
16
+ }
17
+ else if (data instanceof ArrayBuffer) {
18
+ return helper(data, 0, data.byteLength, partSize);
19
+ }
20
+ else if (typeof data === 'string') {
21
+ return helper(data, 0, data.length, partSize);
22
+ }
23
+ else {
24
+ throw new StorageError_1.StorageError({
25
+ name: validation_1.StorageValidationErrorCode.InvalidUploadSource,
26
+ ...validation_1.validationErrorMap[validation_1.StorageValidationErrorCode.InvalidUploadSource],
27
+ });
28
+ }
29
+ };
30
+ exports.getDataChunker = getDataChunker;
31
+ // TODO[AllanZhengYP]: the byte length of string is incorrect here which will cause the progress tracking behave
32
+ // incorrectly. We should fix this in the future.
33
+ const helper = function* (buffer, byteOffset, byteLength, partSize) {
34
+ let partNumber = 1;
35
+ let startByte = byteOffset;
36
+ let endByte = byteOffset + Math.min(partSize, byteLength);
37
+ while (endByte < byteLength + byteOffset) {
38
+ yield {
39
+ partNumber,
40
+ data: buffer.slice(startByte, endByte),
41
+ size: partSize,
42
+ };
43
+ partNumber += 1;
44
+ startByte = endByte;
45
+ endByte = startByte + partSize;
46
+ }
47
+ yield {
48
+ partNumber,
49
+ data: buffer.slice(startByte, byteLength + byteOffset),
50
+ size: byteLength + byteOffset - startByte,
51
+ };
52
+ };
@@ -0,0 +1 @@
1
+ export { getMultipartUploadHandlers } from './uploadHandlers';
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ // SPDX-License-Identifier: Apache-2.0
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.getMultipartUploadHandlers = void 0;
6
+ var uploadHandlers_1 = require("./uploadHandlers");
7
+ Object.defineProperty(exports, "getMultipartUploadHandlers", { enumerable: true, get: function () { return uploadHandlers_1.getMultipartUploadHandlers; } });
@@ -0,0 +1,30 @@
1
+ import { StorageAccessLevel } from '@aws-amplify/core';
2
+ import { ResolvedS3Config } from '../../../types/options';
3
+ import { StorageUploadDataPayload } from '../../../../../types';
4
+ import { Part } from '../../../utils/client';
5
+ type LoadOrCreateMultipartUploadOptions = {
6
+ s3Config: ResolvedS3Config;
7
+ data: StorageUploadDataPayload;
8
+ bucket: string;
9
+ accessLevel: StorageAccessLevel;
10
+ keyPrefix: string;
11
+ key: string;
12
+ contentType?: string;
13
+ contentDisposition?: string;
14
+ contentEncoding?: string;
15
+ metadata?: Record<string, string>;
16
+ size?: number;
17
+ abortSignal?: AbortSignal;
18
+ };
19
+ type LoadOrCreateMultipartUploadResult = {
20
+ uploadId: string;
21
+ cachedParts: Part[];
22
+ };
23
+ /**
24
+ * Load the in-progress multipart upload from local storage or async storage(RN) if it exists, or create a new multipart
25
+ * upload.
26
+ *
27
+ * @internal
28
+ */
29
+ export declare const loadOrCreateMultipartUpload: ({ s3Config, data, size, contentType, bucket, accessLevel, keyPrefix, key, contentDisposition, contentEncoding, metadata, abortSignal, }: LoadOrCreateMultipartUploadOptions) => Promise<LoadOrCreateMultipartUploadResult>;
30
+ export {};