@aws-amplify/storage 6.6.5 → 6.6.6-storage-browser.4949269.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 (369) hide show
  1. package/dist/cjs/errors/constants.js +8 -0
  2. package/dist/cjs/errors/constants.js.map +1 -0
  3. package/dist/cjs/errors/types/validation.js +12 -0
  4. package/dist/cjs/errors/types/validation.js.map +1 -1
  5. package/dist/cjs/providers/s3/apis/downloadData.js +3 -3
  6. package/dist/cjs/providers/s3/apis/downloadData.js.map +1 -1
  7. package/dist/cjs/providers/s3/apis/internal/copy.js +38 -6
  8. package/dist/cjs/providers/s3/apis/internal/copy.js.map +1 -1
  9. package/dist/cjs/providers/s3/apis/internal/getProperties.js +3 -4
  10. package/dist/cjs/providers/s3/apis/internal/getProperties.js.map +1 -1
  11. package/dist/cjs/providers/s3/apis/internal/getUrl.js +3 -3
  12. package/dist/cjs/providers/s3/apis/internal/getUrl.js.map +1 -1
  13. package/dist/cjs/providers/s3/apis/internal/list.js +4 -4
  14. package/dist/cjs/providers/s3/apis/internal/list.js.map +1 -1
  15. package/dist/cjs/providers/s3/apis/internal/remove.js +3 -4
  16. package/dist/cjs/providers/s3/apis/internal/remove.js.map +1 -1
  17. package/dist/cjs/providers/s3/apis/uploadData/multipart/initialUpload.js +22 -2
  18. package/dist/cjs/providers/s3/apis/uploadData/multipart/initialUpload.js.map +1 -1
  19. package/dist/cjs/providers/s3/apis/uploadData/multipart/uploadCache.js +3 -2
  20. package/dist/cjs/providers/s3/apis/uploadData/multipart/uploadCache.js.map +1 -1
  21. package/dist/cjs/providers/s3/apis/uploadData/multipart/uploadHandlers.js +19 -8
  22. package/dist/cjs/providers/s3/apis/uploadData/multipart/uploadHandlers.js.map +1 -1
  23. package/dist/cjs/providers/s3/apis/uploadData/multipart/uploadPartExecutor.js +20 -11
  24. package/dist/cjs/providers/s3/apis/uploadData/multipart/uploadPartExecutor.js.map +1 -1
  25. package/dist/cjs/providers/s3/apis/uploadData/putObjectJob.js +20 -7
  26. package/dist/cjs/providers/s3/apis/uploadData/putObjectJob.js.map +1 -1
  27. package/dist/cjs/providers/s3/apis/uploadData/validateObjectNotExists.js +25 -0
  28. package/dist/cjs/providers/s3/apis/uploadData/validateObjectNotExists.js.map +1 -0
  29. package/dist/cjs/providers/s3/utils/client/s3control/base.js +70 -0
  30. package/dist/cjs/providers/s3/utils/client/s3control/base.js.map +1 -0
  31. package/dist/cjs/providers/s3/utils/client/s3control/getDataAccess.js +58 -0
  32. package/dist/cjs/providers/s3/utils/client/s3control/getDataAccess.js.map +1 -0
  33. package/dist/cjs/providers/s3/utils/client/s3control/index.js +11 -0
  34. package/dist/cjs/providers/s3/utils/client/s3control/index.js.map +1 -0
  35. package/dist/cjs/providers/s3/utils/client/s3control/listCallerAccessGrants.js +63 -0
  36. package/dist/cjs/providers/s3/utils/client/s3control/listCallerAccessGrants.js.map +1 -0
  37. package/dist/cjs/providers/s3/utils/client/s3control/types.js.map +1 -0
  38. package/dist/cjs/providers/s3/utils/client/{abortMultipartUpload.js → s3data/abortMultipartUpload.js} +2 -2
  39. package/dist/cjs/providers/s3/utils/client/s3data/abortMultipartUpload.js.map +1 -0
  40. package/dist/cjs/providers/s3/utils/client/{base.js → s3data/base.js} +25 -3
  41. package/dist/cjs/providers/s3/utils/client/s3data/base.js.map +1 -0
  42. package/dist/cjs/providers/s3/utils/client/{completeMultipartUpload.js → s3data/completeMultipartUpload.js} +16 -11
  43. package/dist/cjs/providers/s3/utils/client/s3data/completeMultipartUpload.js.map +1 -0
  44. package/dist/cjs/providers/s3/utils/client/{copyObject.js → s3data/copyObject.js} +2 -2
  45. package/dist/cjs/providers/s3/utils/client/s3data/copyObject.js.map +1 -0
  46. package/dist/cjs/providers/s3/utils/client/{createMultipartUpload.js → s3data/createMultipartUpload.js} +8 -3
  47. package/dist/cjs/providers/s3/utils/client/s3data/createMultipartUpload.js.map +1 -0
  48. package/dist/cjs/providers/s3/utils/client/{deleteObject.js → s3data/deleteObject.js} +2 -2
  49. package/dist/cjs/providers/s3/utils/client/s3data/deleteObject.js.map +1 -0
  50. package/dist/cjs/providers/s3/utils/client/{getObject.js → s3data/getObject.js} +3 -3
  51. package/dist/cjs/providers/s3/utils/client/s3data/getObject.js.map +1 -0
  52. package/dist/cjs/providers/s3/utils/client/{headObject.js → s3data/headObject.js} +2 -2
  53. package/dist/cjs/providers/s3/utils/client/s3data/headObject.js.map +1 -0
  54. package/dist/cjs/providers/s3/utils/client/s3data/index.js.map +1 -0
  55. package/dist/cjs/providers/s3/utils/client/{listObjectsV2.js → s3data/listObjectsV2.js} +2 -2
  56. package/dist/cjs/providers/s3/utils/client/s3data/listObjectsV2.js.map +1 -0
  57. package/dist/cjs/providers/s3/utils/client/{listParts.js → s3data/listParts.js} +3 -2
  58. package/dist/cjs/providers/s3/utils/client/s3data/listParts.js.map +1 -0
  59. package/dist/cjs/providers/s3/utils/client/{putObject.js → s3data/putObject.js} +3 -2
  60. package/dist/cjs/providers/s3/utils/client/s3data/putObject.js.map +1 -0
  61. package/dist/cjs/providers/s3/utils/client/s3data/types.js +6 -0
  62. package/dist/cjs/providers/s3/utils/client/s3data/types.js.map +1 -0
  63. package/dist/cjs/providers/s3/utils/client/{uploadPart.js → s3data/uploadPart.js} +4 -3
  64. package/dist/cjs/providers/s3/utils/client/s3data/uploadPart.js.map +1 -0
  65. package/dist/cjs/providers/s3/utils/client/utils/createRetryDecider.js +57 -0
  66. package/dist/cjs/providers/s3/utils/client/utils/createRetryDecider.js.map +1 -0
  67. package/dist/cjs/providers/s3/utils/client/utils/deserializeHelpers.js +34 -1
  68. package/dist/cjs/providers/s3/utils/client/utils/deserializeHelpers.js.map +1 -1
  69. package/dist/cjs/providers/s3/utils/client/utils/index.js +4 -2
  70. package/dist/cjs/providers/s3/utils/client/utils/index.js.map +1 -1
  71. package/dist/cjs/providers/s3/utils/client/utils/parsePayload.js +20 -6
  72. package/dist/cjs/providers/s3/utils/client/utils/parsePayload.js.map +1 -1
  73. package/dist/cjs/providers/s3/utils/crc32.js +37 -0
  74. package/dist/cjs/providers/s3/utils/crc32.js.map +1 -0
  75. package/dist/cjs/providers/s3/utils/crc32.native.js +11 -0
  76. package/dist/cjs/providers/s3/utils/crc32.native.js.map +1 -0
  77. package/dist/cjs/providers/s3/utils/resolveIdentityId.js +14 -0
  78. package/dist/cjs/providers/s3/utils/resolveIdentityId.js.map +1 -0
  79. package/dist/cjs/providers/s3/utils/resolveS3ConfigAndInput.js +59 -13
  80. package/dist/cjs/providers/s3/utils/resolveS3ConfigAndInput.js.map +1 -1
  81. package/dist/cjs/providers/s3/utils/validateStorageOperationInput.js +4 -1
  82. package/dist/cjs/providers/s3/utils/validateStorageOperationInput.js.map +1 -1
  83. package/dist/cjs/providers/s3/utils/validateStorageOperationInputWithPrefix.js +4 -1
  84. package/dist/cjs/providers/s3/utils/validateStorageOperationInputWithPrefix.js.map +1 -1
  85. package/dist/cjs/storageBrowser/apis/constants.js +9 -0
  86. package/dist/cjs/storageBrowser/apis/constants.js.map +1 -0
  87. package/dist/cjs/storageBrowser/apis/getDataAccess.js +57 -0
  88. package/dist/cjs/storageBrowser/apis/getDataAccess.js.map +1 -0
  89. package/dist/cjs/storageBrowser/apis/listCallerAccessGrants.js +69 -0
  90. package/dist/cjs/storageBrowser/apis/listCallerAccessGrants.js.map +1 -0
  91. package/dist/cjs/storageBrowser/apis/types.js +6 -0
  92. package/dist/cjs/storageBrowser/apis/types.js.map +1 -0
  93. package/dist/cjs/storageBrowser/index.js +11 -0
  94. package/dist/cjs/storageBrowser/index.js.map +1 -0
  95. package/dist/cjs/storageBrowser/locationCredentialsStore/constants.js +9 -0
  96. package/dist/cjs/storageBrowser/locationCredentialsStore/constants.js.map +1 -0
  97. package/dist/cjs/storageBrowser/locationCredentialsStore/create.js +36 -0
  98. package/dist/cjs/storageBrowser/locationCredentialsStore/create.js.map +1 -0
  99. package/dist/cjs/storageBrowser/locationCredentialsStore/index.js +9 -0
  100. package/dist/cjs/storageBrowser/locationCredentialsStore/index.js.map +1 -0
  101. package/dist/cjs/storageBrowser/locationCredentialsStore/registry.js +58 -0
  102. package/dist/cjs/storageBrowser/locationCredentialsStore/registry.js.map +1 -0
  103. package/dist/cjs/storageBrowser/locationCredentialsStore/store.js +99 -0
  104. package/dist/cjs/storageBrowser/locationCredentialsStore/store.js.map +1 -0
  105. package/dist/cjs/storageBrowser/managedAuthConfigAdapter/createListLocationsHandler.js +15 -0
  106. package/dist/cjs/storageBrowser/managedAuthConfigAdapter/createListLocationsHandler.js.map +1 -0
  107. package/dist/cjs/storageBrowser/managedAuthConfigAdapter/createLocationCredentialsHandler.js +29 -0
  108. package/dist/cjs/storageBrowser/managedAuthConfigAdapter/createLocationCredentialsHandler.js.map +1 -0
  109. package/dist/cjs/storageBrowser/managedAuthConfigAdapter/createManagedAuthConfigAdapter.js +32 -0
  110. package/dist/cjs/storageBrowser/managedAuthConfigAdapter/createManagedAuthConfigAdapter.js.map +1 -0
  111. package/dist/cjs/storageBrowser/managedAuthConfigAdapter/index.js +9 -0
  112. package/dist/cjs/storageBrowser/managedAuthConfigAdapter/index.js.map +1 -0
  113. package/dist/cjs/storageBrowser/types.js +6 -0
  114. package/dist/cjs/storageBrowser/types.js.map +1 -0
  115. package/dist/esm/errors/constants.d.ts +1 -0
  116. package/dist/esm/errors/constants.mjs +6 -0
  117. package/dist/esm/errors/constants.mjs.map +1 -0
  118. package/dist/esm/errors/types/validation.d.ts +4 -1
  119. package/dist/esm/errors/types/validation.mjs +12 -0
  120. package/dist/esm/errors/types/validation.mjs.map +1 -1
  121. package/dist/esm/providers/s3/apis/downloadData.mjs +13 -13
  122. package/dist/esm/providers/s3/apis/downloadData.mjs.map +1 -1
  123. package/dist/esm/providers/s3/apis/internal/copy.mjs +48 -16
  124. package/dist/esm/providers/s3/apis/internal/copy.mjs.map +1 -1
  125. package/dist/esm/providers/s3/apis/internal/getProperties.mjs +13 -14
  126. package/dist/esm/providers/s3/apis/internal/getProperties.mjs.map +1 -1
  127. package/dist/esm/providers/s3/apis/internal/getUrl.mjs +13 -13
  128. package/dist/esm/providers/s3/apis/internal/getUrl.mjs.map +1 -1
  129. package/dist/esm/providers/s3/apis/internal/list.mjs +13 -13
  130. package/dist/esm/providers/s3/apis/internal/list.mjs.map +1 -1
  131. package/dist/esm/providers/s3/apis/internal/remove.mjs +13 -14
  132. package/dist/esm/providers/s3/apis/internal/remove.mjs.map +1 -1
  133. package/dist/esm/providers/s3/apis/uploadData/multipart/initialUpload.d.ts +2 -1
  134. package/dist/esm/providers/s3/apis/uploadData/multipart/initialUpload.mjs +32 -12
  135. package/dist/esm/providers/s3/apis/uploadData/multipart/initialUpload.mjs.map +1 -1
  136. package/dist/esm/providers/s3/apis/uploadData/multipart/uploadCache.d.ts +3 -1
  137. package/dist/esm/providers/s3/apis/uploadData/multipart/uploadCache.mjs +13 -12
  138. package/dist/esm/providers/s3/apis/uploadData/multipart/uploadCache.mjs.map +1 -1
  139. package/dist/esm/providers/s3/apis/uploadData/multipart/uploadHandlers.mjs +27 -16
  140. package/dist/esm/providers/s3/apis/uploadData/multipart/uploadHandlers.mjs.map +1 -1
  141. package/dist/esm/providers/s3/apis/uploadData/multipart/uploadPartExecutor.d.ts +3 -2
  142. package/dist/esm/providers/s3/apis/uploadData/multipart/uploadPartExecutor.mjs +27 -18
  143. package/dist/esm/providers/s3/apis/uploadData/multipart/uploadPartExecutor.mjs.map +1 -1
  144. package/dist/esm/providers/s3/apis/uploadData/putObjectJob.mjs +30 -17
  145. package/dist/esm/providers/s3/apis/uploadData/putObjectJob.mjs.map +1 -1
  146. package/dist/esm/providers/s3/apis/uploadData/validateObjectNotExists.d.ts +3 -0
  147. package/dist/esm/providers/s3/apis/uploadData/validateObjectNotExists.mjs +34 -0
  148. package/dist/esm/providers/s3/apis/uploadData/validateObjectNotExists.mjs.map +1 -0
  149. package/dist/esm/providers/s3/types/inputs.d.ts +5 -1
  150. package/dist/esm/providers/s3/types/options.d.ts +24 -1
  151. package/dist/esm/providers/s3/utils/client/s3control/base.d.ts +56 -0
  152. package/dist/esm/providers/s3/utils/client/s3control/base.mjs +74 -0
  153. package/dist/esm/providers/s3/utils/client/s3control/base.mjs.map +1 -0
  154. package/dist/esm/providers/s3/utils/client/s3control/getDataAccess.d.ts +26 -0
  155. package/dist/esm/providers/s3/utils/client/s3control/getDataAccess.mjs +63 -0
  156. package/dist/esm/providers/s3/utils/client/s3control/getDataAccess.mjs.map +1 -0
  157. package/dist/esm/providers/s3/utils/client/s3control/index.d.ts +2 -0
  158. package/dist/esm/providers/s3/utils/client/s3control/index.mjs +3 -0
  159. package/dist/esm/providers/s3/utils/client/s3control/index.mjs.map +1 -0
  160. package/dist/esm/providers/s3/utils/client/s3control/listCallerAccessGrants.d.ts +26 -0
  161. package/dist/esm/providers/s3/utils/client/s3control/listCallerAccessGrants.mjs +67 -0
  162. package/dist/esm/providers/s3/utils/client/s3control/listCallerAccessGrants.mjs.map +1 -0
  163. package/dist/esm/providers/s3/utils/client/s3control/types.d.ts +188 -0
  164. package/dist/esm/providers/s3/utils/client/{abortMultipartUpload.d.ts → s3data/abortMultipartUpload.d.ts} +4 -4
  165. package/dist/esm/providers/s3/utils/client/{abortMultipartUpload.mjs → s3data/abortMultipartUpload.mjs} +5 -6
  166. package/dist/esm/providers/s3/utils/client/s3data/abortMultipartUpload.mjs.map +1 -0
  167. package/dist/esm/providers/s3/utils/client/{base.d.ts → s3data/base.d.ts} +23 -1
  168. package/dist/esm/providers/s3/utils/client/{base.mjs → s3data/base.mjs} +29 -6
  169. package/dist/esm/providers/s3/utils/client/s3data/base.mjs.map +1 -0
  170. package/dist/esm/providers/s3/utils/client/{completeMultipartUpload.d.ts → s3data/completeMultipartUpload.d.ts} +6 -6
  171. package/dist/esm/providers/s3/utils/client/{completeMultipartUpload.mjs → s3data/completeMultipartUpload.mjs} +19 -14
  172. package/dist/esm/providers/s3/utils/client/s3data/completeMultipartUpload.mjs.map +1 -0
  173. package/dist/esm/providers/s3/utils/client/{copyObject.d.ts → s3data/copyObject.d.ts} +4 -4
  174. package/dist/esm/providers/s3/utils/client/{copyObject.mjs → s3data/copyObject.mjs} +6 -6
  175. package/dist/esm/providers/s3/utils/client/s3data/copyObject.mjs.map +1 -0
  176. package/dist/esm/providers/s3/utils/client/{createMultipartUpload.d.ts → s3data/createMultipartUpload.d.ts} +4 -4
  177. package/dist/esm/providers/s3/utils/client/{createMultipartUpload.mjs → s3data/createMultipartUpload.mjs} +12 -7
  178. package/dist/esm/providers/s3/utils/client/s3data/createMultipartUpload.mjs.map +1 -0
  179. package/dist/esm/providers/s3/utils/client/{deleteObject.d.ts → s3data/deleteObject.d.ts} +4 -4
  180. package/dist/esm/providers/s3/utils/client/{deleteObject.mjs → s3data/deleteObject.mjs} +5 -6
  181. package/dist/esm/providers/s3/utils/client/s3data/deleteObject.mjs.map +1 -0
  182. package/dist/esm/providers/s3/utils/client/{getObject.d.ts → s3data/getObject.d.ts} +4 -4
  183. package/dist/esm/providers/s3/utils/client/{getObject.mjs → s3data/getObject.mjs} +7 -8
  184. package/dist/esm/providers/s3/utils/client/s3data/getObject.mjs.map +1 -0
  185. package/dist/esm/providers/s3/utils/client/{headObject.d.ts → s3data/headObject.d.ts} +4 -4
  186. package/dist/esm/providers/s3/utils/client/{headObject.mjs → s3data/headObject.mjs} +5 -6
  187. package/dist/esm/providers/s3/utils/client/s3data/headObject.mjs.map +1 -0
  188. package/dist/esm/providers/s3/utils/client/{listObjectsV2.d.ts → s3data/listObjectsV2.d.ts} +4 -4
  189. package/dist/esm/providers/s3/utils/client/{listObjectsV2.mjs → s3data/listObjectsV2.mjs} +6 -6
  190. package/dist/esm/providers/s3/utils/client/s3data/listObjectsV2.mjs.map +1 -0
  191. package/dist/esm/providers/s3/utils/client/{listParts.d.ts → s3data/listParts.d.ts} +4 -4
  192. package/dist/esm/providers/s3/utils/client/{listParts.mjs → s3data/listParts.mjs} +7 -6
  193. package/dist/esm/providers/s3/utils/client/s3data/listParts.mjs.map +1 -0
  194. package/dist/esm/providers/s3/utils/client/{putObject.d.ts → s3data/putObject.d.ts} +5 -5
  195. package/dist/esm/providers/s3/utils/client/{putObject.mjs → s3data/putObject.mjs} +6 -6
  196. package/dist/esm/providers/s3/utils/client/s3data/putObject.mjs.map +1 -0
  197. package/dist/esm/providers/s3/utils/client/s3data/types.mjs +2 -0
  198. package/dist/esm/providers/s3/utils/client/s3data/types.mjs.map +1 -0
  199. package/dist/esm/providers/s3/utils/client/{uploadPart.d.ts → s3data/uploadPart.d.ts} +5 -5
  200. package/dist/esm/providers/s3/utils/client/{uploadPart.mjs → s3data/uploadPart.mjs} +7 -7
  201. package/dist/esm/providers/s3/utils/client/s3data/uploadPart.mjs.map +1 -0
  202. package/dist/esm/providers/s3/utils/client/utils/createRetryDecider.d.ts +22 -0
  203. package/dist/esm/providers/s3/utils/client/utils/createRetryDecider.mjs +55 -0
  204. package/dist/esm/providers/s3/utils/client/utils/createRetryDecider.mjs.map +1 -0
  205. package/dist/esm/providers/s3/utils/client/utils/deserializeHelpers.d.ts +17 -0
  206. package/dist/esm/providers/s3/utils/client/utils/deserializeHelpers.mjs +33 -1
  207. package/dist/esm/providers/s3/utils/client/utils/deserializeHelpers.mjs.map +1 -1
  208. package/dist/esm/providers/s3/utils/client/utils/index.d.ts +2 -1
  209. package/dist/esm/providers/s3/utils/client/utils/index.mjs +2 -1
  210. package/dist/esm/providers/s3/utils/client/utils/index.mjs.map +1 -1
  211. package/dist/esm/providers/s3/utils/client/utils/parsePayload.d.ts +16 -1
  212. package/dist/esm/providers/s3/utils/client/utils/parsePayload.mjs +19 -5
  213. package/dist/esm/providers/s3/utils/client/utils/parsePayload.mjs.map +1 -1
  214. package/dist/esm/providers/s3/utils/crc32.d.ts +6 -0
  215. package/dist/esm/providers/s3/utils/crc32.mjs +34 -0
  216. package/dist/esm/providers/s3/utils/crc32.mjs.map +1 -0
  217. package/dist/esm/providers/s3/utils/crc32.native.d.ts +2 -0
  218. package/dist/esm/providers/s3/utils/crc32.native.mjs +8 -0
  219. package/dist/esm/providers/s3/utils/crc32.native.mjs.map +1 -0
  220. package/dist/esm/providers/s3/utils/resolveIdentityId.d.ts +1 -0
  221. package/dist/esm/providers/s3/utils/resolveIdentityId.mjs +12 -0
  222. package/dist/esm/providers/s3/utils/resolveIdentityId.mjs.map +1 -0
  223. package/dist/esm/providers/s3/utils/resolveS3ConfigAndInput.d.ts +10 -2
  224. package/dist/esm/providers/s3/utils/resolveS3ConfigAndInput.mjs +57 -11
  225. package/dist/esm/providers/s3/utils/resolveS3ConfigAndInput.mjs.map +1 -1
  226. package/dist/esm/providers/s3/utils/validateStorageOperationInput.mjs +4 -1
  227. package/dist/esm/providers/s3/utils/validateStorageOperationInput.mjs.map +1 -1
  228. package/dist/esm/providers/s3/utils/validateStorageOperationInputWithPrefix.mjs +4 -1
  229. package/dist/esm/providers/s3/utils/validateStorageOperationInputWithPrefix.mjs.map +1 -1
  230. package/dist/esm/storageBrowser/apis/constants.d.ts +2 -0
  231. package/dist/esm/storageBrowser/apis/constants.mjs +7 -0
  232. package/dist/esm/storageBrowser/apis/constants.mjs.map +1 -0
  233. package/dist/esm/storageBrowser/apis/getDataAccess.d.ts +2 -0
  234. package/dist/esm/storageBrowser/apis/getDataAccess.mjs +57 -0
  235. package/dist/esm/storageBrowser/apis/getDataAccess.mjs.map +1 -0
  236. package/dist/esm/storageBrowser/apis/listCallerAccessGrants.d.ts +2 -0
  237. package/dist/esm/storageBrowser/apis/listCallerAccessGrants.mjs +69 -0
  238. package/dist/esm/storageBrowser/apis/listCallerAccessGrants.mjs.map +1 -0
  239. package/dist/esm/storageBrowser/apis/types.d.ts +18 -0
  240. package/dist/esm/storageBrowser/apis/types.mjs +2 -0
  241. package/dist/esm/storageBrowser/apis/types.mjs.map +1 -0
  242. package/dist/esm/storageBrowser/index.d.ts +6 -0
  243. package/dist/esm/storageBrowser/index.mjs +3 -0
  244. package/dist/esm/storageBrowser/index.mjs.map +1 -0
  245. package/dist/esm/storageBrowser/locationCredentialsStore/constants.d.ts +2 -0
  246. package/dist/esm/storageBrowser/locationCredentialsStore/constants.mjs +7 -0
  247. package/dist/esm/storageBrowser/locationCredentialsStore/constants.mjs.map +1 -0
  248. package/dist/esm/storageBrowser/locationCredentialsStore/create.d.ts +2 -0
  249. package/dist/esm/storageBrowser/locationCredentialsStore/create.mjs +34 -0
  250. package/dist/esm/storageBrowser/locationCredentialsStore/create.mjs.map +1 -0
  251. package/dist/esm/storageBrowser/locationCredentialsStore/index.d.ts +1 -0
  252. package/dist/esm/storageBrowser/locationCredentialsStore/index.mjs +2 -0
  253. package/dist/esm/storageBrowser/locationCredentialsStore/index.mjs.map +1 -0
  254. package/dist/esm/storageBrowser/locationCredentialsStore/registry.d.ts +23 -0
  255. package/dist/esm/storageBrowser/locationCredentialsStore/registry.mjs +54 -0
  256. package/dist/esm/storageBrowser/locationCredentialsStore/registry.mjs.map +1 -0
  257. package/dist/esm/storageBrowser/locationCredentialsStore/store.d.ts +35 -0
  258. package/dist/esm/storageBrowser/locationCredentialsStore/store.mjs +95 -0
  259. package/dist/esm/storageBrowser/locationCredentialsStore/store.mjs.map +1 -0
  260. package/dist/esm/storageBrowser/managedAuthConfigAdapter/createListLocationsHandler.d.ts +8 -0
  261. package/dist/esm/storageBrowser/managedAuthConfigAdapter/createListLocationsHandler.mjs +13 -0
  262. package/dist/esm/storageBrowser/managedAuthConfigAdapter/createListLocationsHandler.mjs.map +1 -0
  263. package/dist/esm/storageBrowser/managedAuthConfigAdapter/createLocationCredentialsHandler.d.ts +8 -0
  264. package/dist/esm/storageBrowser/managedAuthConfigAdapter/createLocationCredentialsHandler.mjs +27 -0
  265. package/dist/esm/storageBrowser/managedAuthConfigAdapter/createLocationCredentialsHandler.mjs.map +1 -0
  266. package/dist/esm/storageBrowser/managedAuthConfigAdapter/createManagedAuthConfigAdapter.d.ts +19 -0
  267. package/dist/esm/storageBrowser/managedAuthConfigAdapter/createManagedAuthConfigAdapter.mjs +30 -0
  268. package/dist/esm/storageBrowser/managedAuthConfigAdapter/createManagedAuthConfigAdapter.mjs.map +1 -0
  269. package/dist/esm/storageBrowser/managedAuthConfigAdapter/index.d.ts +1 -0
  270. package/dist/esm/storageBrowser/managedAuthConfigAdapter/index.mjs +2 -0
  271. package/dist/esm/storageBrowser/managedAuthConfigAdapter/index.mjs.map +1 -0
  272. package/dist/esm/storageBrowser/types.d.ts +92 -0
  273. package/dist/esm/storageBrowser/types.mjs +2 -0
  274. package/dist/esm/storageBrowser/types.mjs.map +1 -0
  275. package/package.json +117 -107
  276. package/src/errors/constants.ts +4 -0
  277. package/src/errors/types/validation.ts +12 -0
  278. package/src/providers/s3/apis/downloadData.ts +2 -2
  279. package/src/providers/s3/apis/internal/copy.ts +42 -12
  280. package/src/providers/s3/apis/internal/getProperties.ts +2 -3
  281. package/src/providers/s3/apis/internal/getUrl.ts +2 -2
  282. package/src/providers/s3/apis/internal/list.ts +3 -3
  283. package/src/providers/s3/apis/internal/remove.ts +2 -3
  284. package/src/providers/s3/apis/uploadData/multipart/initialUpload.ts +30 -1
  285. package/src/providers/s3/apis/uploadData/multipart/uploadCache.ts +4 -1
  286. package/src/providers/s3/apis/uploadData/multipart/uploadHandlers.ts +36 -17
  287. package/src/providers/s3/apis/uploadData/multipart/uploadPartExecutor.ts +23 -7
  288. package/src/providers/s3/apis/uploadData/putObjectJob.ts +22 -5
  289. package/src/providers/s3/apis/uploadData/validateObjectNotExists.ts +25 -0
  290. package/src/providers/s3/types/inputs.ts +7 -1
  291. package/src/providers/s3/types/options.ts +35 -1
  292. package/src/providers/s3/utils/client/s3control/base.ts +97 -0
  293. package/src/providers/s3/utils/client/s3control/getDataAccess.ts +96 -0
  294. package/src/providers/s3/utils/client/s3control/index.ts +13 -0
  295. package/src/providers/s3/utils/client/s3control/listCallerAccessGrants.ts +107 -0
  296. package/src/providers/s3/utils/client/s3control/types.ts +216 -0
  297. package/src/providers/s3/utils/client/{abortMultipartUpload.ts → s3data/abortMultipartUpload.ts} +4 -4
  298. package/src/providers/s3/utils/client/{base.ts → s3data/base.ts} +26 -3
  299. package/src/providers/s3/utils/client/{completeMultipartUpload.ts → s3data/completeMultipartUpload.ts} +28 -19
  300. package/src/providers/s3/utils/client/{copyObject.ts → s3data/copyObject.ts} +4 -4
  301. package/src/providers/s3/utils/client/{createMultipartUpload.ts → s3data/createMultipartUpload.ts} +15 -9
  302. package/src/providers/s3/utils/client/{deleteObject.ts → s3data/deleteObject.ts} +7 -7
  303. package/src/providers/s3/utils/client/{getObject.ts → s3data/getObject.ts} +13 -9
  304. package/src/providers/s3/utils/client/{headObject.ts → s3data/headObject.ts} +4 -4
  305. package/src/providers/s3/utils/client/{listObjectsV2.ts → s3data/listObjectsV2.ts} +7 -7
  306. package/src/providers/s3/utils/client/{listParts.ts → s3data/listParts.ts} +9 -8
  307. package/src/providers/s3/utils/client/{putObject.ts → s3data/putObject.ts} +6 -4
  308. package/src/providers/s3/utils/client/{uploadPart.ts → s3data/uploadPart.ts} +13 -6
  309. package/src/providers/s3/utils/client/utils/createRetryDecider.ts +96 -0
  310. package/src/providers/s3/utils/client/utils/deserializeHelpers.ts +41 -0
  311. package/src/providers/s3/utils/client/utils/index.ts +2 -1
  312. package/src/providers/s3/utils/client/utils/parsePayload.ts +36 -18
  313. package/src/providers/s3/utils/crc32.native.ts +11 -0
  314. package/src/providers/s3/utils/crc32.ts +51 -0
  315. package/src/providers/s3/utils/resolveIdentityId.ts +11 -0
  316. package/src/providers/s3/utils/resolveS3ConfigAndInput.ts +109 -14
  317. package/src/providers/s3/utils/validateStorageOperationInput.ts +5 -1
  318. package/src/providers/s3/utils/validateStorageOperationInputWithPrefix.ts +5 -1
  319. package/src/storageBrowser/apis/constants.ts +5 -0
  320. package/src/storageBrowser/apis/getDataAccess.ts +79 -0
  321. package/src/storageBrowser/apis/listCallerAccessGrants.ts +94 -0
  322. package/src/storageBrowser/apis/types.ts +33 -0
  323. package/src/storageBrowser/index.ts +25 -0
  324. package/src/storageBrowser/locationCredentialsStore/constants.ts +5 -0
  325. package/src/storageBrowser/locationCredentialsStore/create.ts +54 -0
  326. package/src/storageBrowser/locationCredentialsStore/index.ts +4 -0
  327. package/src/storageBrowser/locationCredentialsStore/registry.ts +88 -0
  328. package/src/storageBrowser/locationCredentialsStore/store.ts +161 -0
  329. package/src/storageBrowser/managedAuthConfigAdapter/createListLocationsHandler.ts +21 -0
  330. package/src/storageBrowser/managedAuthConfigAdapter/createLocationCredentialsHandler.ts +40 -0
  331. package/src/storageBrowser/managedAuthConfigAdapter/createManagedAuthConfigAdapter.ts +53 -0
  332. package/src/storageBrowser/managedAuthConfigAdapter/index.ts +8 -0
  333. package/src/storageBrowser/types.ts +117 -0
  334. package/dist/cjs/providers/s3/utils/client/abortMultipartUpload.js.map +0 -1
  335. package/dist/cjs/providers/s3/utils/client/base.js.map +0 -1
  336. package/dist/cjs/providers/s3/utils/client/completeMultipartUpload.js.map +0 -1
  337. package/dist/cjs/providers/s3/utils/client/copyObject.js.map +0 -1
  338. package/dist/cjs/providers/s3/utils/client/createMultipartUpload.js.map +0 -1
  339. package/dist/cjs/providers/s3/utils/client/deleteObject.js.map +0 -1
  340. package/dist/cjs/providers/s3/utils/client/getObject.js.map +0 -1
  341. package/dist/cjs/providers/s3/utils/client/headObject.js.map +0 -1
  342. package/dist/cjs/providers/s3/utils/client/index.js.map +0 -1
  343. package/dist/cjs/providers/s3/utils/client/listObjectsV2.js.map +0 -1
  344. package/dist/cjs/providers/s3/utils/client/listParts.js.map +0 -1
  345. package/dist/cjs/providers/s3/utils/client/putObject.js.map +0 -1
  346. package/dist/cjs/providers/s3/utils/client/types.js.map +0 -1
  347. package/dist/cjs/providers/s3/utils/client/uploadPart.js.map +0 -1
  348. package/dist/esm/providers/s3/utils/client/abortMultipartUpload.mjs.map +0 -1
  349. package/dist/esm/providers/s3/utils/client/base.mjs.map +0 -1
  350. package/dist/esm/providers/s3/utils/client/completeMultipartUpload.mjs.map +0 -1
  351. package/dist/esm/providers/s3/utils/client/copyObject.mjs.map +0 -1
  352. package/dist/esm/providers/s3/utils/client/createMultipartUpload.mjs.map +0 -1
  353. package/dist/esm/providers/s3/utils/client/deleteObject.mjs.map +0 -1
  354. package/dist/esm/providers/s3/utils/client/getObject.mjs.map +0 -1
  355. package/dist/esm/providers/s3/utils/client/headObject.mjs.map +0 -1
  356. package/dist/esm/providers/s3/utils/client/listObjectsV2.mjs.map +0 -1
  357. package/dist/esm/providers/s3/utils/client/listParts.mjs.map +0 -1
  358. package/dist/esm/providers/s3/utils/client/putObject.mjs.map +0 -1
  359. package/dist/esm/providers/s3/utils/client/uploadPart.mjs.map +0 -1
  360. /package/dist/cjs/providers/s3/utils/client/{types.js → s3control/types.js} +0 -0
  361. /package/dist/cjs/providers/s3/utils/client/{index.js → s3data/index.js} +0 -0
  362. /package/dist/esm/providers/s3/utils/client/{types.mjs → s3control/types.mjs} +0 -0
  363. /package/dist/esm/providers/s3/utils/client/{types.mjs.map → s3control/types.mjs.map} +0 -0
  364. /package/dist/esm/providers/s3/utils/client/{index.d.ts → s3data/index.d.ts} +0 -0
  365. /package/dist/esm/providers/s3/utils/client/{index.mjs → s3data/index.mjs} +0 -0
  366. /package/dist/esm/providers/s3/utils/client/{index.mjs.map → s3data/index.mjs.map} +0 -0
  367. /package/dist/esm/providers/s3/utils/client/{types.d.ts → s3data/types.d.ts} +0 -0
  368. /package/src/providers/s3/utils/client/{index.ts → s3data/index.ts} +0 -0
  369. /package/src/providers/s3/utils/client/{types.ts → s3data/types.ts} +0 -0
@@ -0,0 +1,99 @@
1
+ 'use strict';
2
+
3
+ /* eslint-disable unused-imports/no-unused-vars */
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.fetchNewValue = exports.getCacheValue = exports.initStore = void 0;
6
+ const assertValidationError_1 = require("../../errors/utils/assertValidationError");
7
+ const validation_1 = require("../../errors/types/validation");
8
+ const constants_1 = require("./constants");
9
+ const createCacheKey = (location) => `${location.scope}_${location.permission}`;
10
+ /**
11
+ * @internal
12
+ */
13
+ const initStore = (refreshHandler, size = constants_1.CREDENTIALS_STORE_DEFAULT_SIZE) => {
14
+ (0, assertValidationError_1.assertValidationError)(size > 0, validation_1.StorageValidationErrorCode.InvalidLocationCredentialsCacheSize);
15
+ return {
16
+ capacity: size,
17
+ refreshHandler,
18
+ values: new Map(),
19
+ };
20
+ };
21
+ exports.initStore = initStore;
22
+ const getCacheValue = (store, location) => {
23
+ const cacheKey = createCacheKey(location);
24
+ const cachedValue = store.values.get(cacheKey);
25
+ const cachedCredentials = cachedValue?.credentials;
26
+ if (!cachedCredentials) {
27
+ return null;
28
+ }
29
+ // Delete and re-insert to key to map to indicate a latest reference in LRU.
30
+ store.values.delete(cacheKey);
31
+ if (!pastTTL(cachedCredentials)) {
32
+ // TODO(@AllanZhengYP): If the credential is still valid but will expire
33
+ // soon, we should return credentials AND dispatch a refresh.
34
+ store.values.set(cacheKey, cachedValue);
35
+ return cachedCredentials;
36
+ }
37
+ return null;
38
+ };
39
+ exports.getCacheValue = getCacheValue;
40
+ const pastTTL = (credentials) => {
41
+ const { expiration } = credentials;
42
+ return expiration.getTime() - constants_1.CREDENTIALS_REFRESH_WINDOW_MS <= Date.now();
43
+ };
44
+ /**
45
+ * Fetch new credentials value with refresh handler and cache the result in
46
+ * LRU cache.
47
+ * @internal
48
+ */
49
+ const fetchNewValue = async (store, location) => {
50
+ const storeValues = store.values;
51
+ const key = createCacheKey(location);
52
+ if (!storeValues.has(key)) {
53
+ const newStoreValue = {
54
+ scope: location.scope,
55
+ permission: location.permission,
56
+ };
57
+ setCacheRecord(store, key, newStoreValue);
58
+ }
59
+ const storeValue = storeValues.get(key);
60
+ return dispatchRefresh(store.refreshHandler, storeValue, () => {
61
+ store.values.delete(key);
62
+ });
63
+ };
64
+ exports.fetchNewValue = fetchNewValue;
65
+ const dispatchRefresh = (refreshHandler, value, onRefreshFailure) => {
66
+ if (value.inflightCredentials) {
67
+ return value.inflightCredentials;
68
+ }
69
+ value.inflightCredentials = (async () => {
70
+ try {
71
+ const { credentials } = await refreshHandler({
72
+ scope: value.scope,
73
+ permission: value.permission,
74
+ });
75
+ value.credentials = credentials;
76
+ return { credentials };
77
+ }
78
+ catch (e) {
79
+ onRefreshFailure();
80
+ throw e;
81
+ }
82
+ finally {
83
+ value.inflightCredentials = undefined;
84
+ }
85
+ })();
86
+ return value.inflightCredentials;
87
+ };
88
+ const setCacheRecord = (store, key, value) => {
89
+ if (store.capacity === store.values.size) {
90
+ // Pop least used entry. The Map's key are in insertion order.
91
+ // So first key is the last recently inserted.
92
+ const [oldestKey] = store.values.keys();
93
+ store.values.delete(oldestKey);
94
+ // TODO(@AllanZhengYP): Add log info when record is evicted.
95
+ }
96
+ // Add latest used value to the cache.
97
+ store.values.set(key, value);
98
+ };
99
+ //# sourceMappingURL=store.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"store.js","sources":["../../../../src/storageBrowser/locationCredentialsStore/store.ts"],"sourcesContent":["\"use strict\";\n/* eslint-disable unused-imports/no-unused-vars */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.fetchNewValue = exports.getCacheValue = exports.initStore = void 0;\nconst assertValidationError_1 = require(\"../../errors/utils/assertValidationError\");\nconst validation_1 = require(\"../../errors/types/validation\");\nconst constants_1 = require(\"./constants\");\nconst createCacheKey = (location) => `${location.scope}_${location.permission}`;\n/**\n * @internal\n */\nconst initStore = (refreshHandler, size = constants_1.CREDENTIALS_STORE_DEFAULT_SIZE) => {\n (0, assertValidationError_1.assertValidationError)(size > 0, validation_1.StorageValidationErrorCode.InvalidLocationCredentialsCacheSize);\n return {\n capacity: size,\n refreshHandler,\n values: new Map(),\n };\n};\nexports.initStore = initStore;\nconst getCacheValue = (store, location) => {\n const cacheKey = createCacheKey(location);\n const cachedValue = store.values.get(cacheKey);\n const cachedCredentials = cachedValue?.credentials;\n if (!cachedCredentials) {\n return null;\n }\n // Delete and re-insert to key to map to indicate a latest reference in LRU.\n store.values.delete(cacheKey);\n if (!pastTTL(cachedCredentials)) {\n // TODO(@AllanZhengYP): If the credential is still valid but will expire\n // soon, we should return credentials AND dispatch a refresh.\n store.values.set(cacheKey, cachedValue);\n return cachedCredentials;\n }\n return null;\n};\nexports.getCacheValue = getCacheValue;\nconst pastTTL = (credentials) => {\n const { expiration } = credentials;\n return expiration.getTime() - constants_1.CREDENTIALS_REFRESH_WINDOW_MS <= Date.now();\n};\n/**\n * Fetch new credentials value with refresh handler and cache the result in\n * LRU cache.\n * @internal\n */\nconst fetchNewValue = async (store, location) => {\n const storeValues = store.values;\n const key = createCacheKey(location);\n if (!storeValues.has(key)) {\n const newStoreValue = {\n scope: location.scope,\n permission: location.permission,\n };\n setCacheRecord(store, key, newStoreValue);\n }\n const storeValue = storeValues.get(key);\n return dispatchRefresh(store.refreshHandler, storeValue, () => {\n store.values.delete(key);\n });\n};\nexports.fetchNewValue = fetchNewValue;\nconst dispatchRefresh = (refreshHandler, value, onRefreshFailure) => {\n if (value.inflightCredentials) {\n return value.inflightCredentials;\n }\n value.inflightCredentials = (async () => {\n try {\n const { credentials } = await refreshHandler({\n scope: value.scope,\n permission: value.permission,\n });\n value.credentials = credentials;\n return { credentials };\n }\n catch (e) {\n onRefreshFailure();\n throw e;\n }\n finally {\n value.inflightCredentials = undefined;\n }\n })();\n return value.inflightCredentials;\n};\nconst setCacheRecord = (store, key, value) => {\n if (store.capacity === store.values.size) {\n // Pop least used entry. The Map's key are in insertion order.\n // So first key is the last recently inserted.\n const [oldestKey] = store.values.keys();\n store.values.delete(oldestKey);\n // TODO(@AllanZhengYP): Add log info when record is evicted.\n }\n // Add latest used value to the cache.\n store.values.set(key, value);\n};\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ 'use strict';
2
+
3
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
4
+ // SPDX-License-Identifier: Apache-2.0
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.createListLocationsHandler = void 0;
7
+ const listCallerAccessGrants_1 = require("../apis/listCallerAccessGrants");
8
+ const createListLocationsHandler = (handlerInput) => {
9
+ return async function listLocations(input = {}) {
10
+ const result = await (0, listCallerAccessGrants_1.listCallerAccessGrants)({ ...input, ...handlerInput });
11
+ return result;
12
+ };
13
+ };
14
+ exports.createListLocationsHandler = createListLocationsHandler;
15
+ //# sourceMappingURL=createListLocationsHandler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createListLocationsHandler.js","sources":["../../../../src/storageBrowser/managedAuthConfigAdapter/createListLocationsHandler.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.createListLocationsHandler = void 0;\nconst listCallerAccessGrants_1 = require(\"../apis/listCallerAccessGrants\");\nconst createListLocationsHandler = (handlerInput) => {\n return async function listLocations(input = {}) {\n const result = await (0, listCallerAccessGrants_1.listCallerAccessGrants)({ ...input, ...handlerInput });\n return result;\n };\n};\nexports.createListLocationsHandler = createListLocationsHandler;\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9D,OAAO,CAAC,0BAA0B,GAAG,KAAK,CAAC,CAAC;AAC5C,MAAM,wBAAwB,GAAG,OAAO,CAAC,gCAAgC,CAAC,CAAC;AAC3E,MAAM,0BAA0B,GAAG,CAAC,YAAY,KAAK;AACrD,IAAI,OAAO,eAAe,aAAa,CAAC,KAAK,GAAG,EAAE,EAAE;AACpD,QAAQ,MAAM,MAAM,GAAG,MAAM,IAAI,wBAAwB,CAAC,sBAAsB,EAAE,EAAE,GAAG,KAAK,EAAE,GAAG,YAAY,EAAE,CAAC,CAAC;AACjH,QAAQ,OAAO,MAAM,CAAC;AACtB,KAAK,CAAC;AACN,CAAC,CAAC;AACF,OAAO,CAAC,0BAA0B,GAAG,0BAA0B;;"}
@@ -0,0 +1,29 @@
1
+ 'use strict';
2
+
3
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
4
+ // SPDX-License-Identifier: Apache-2.0
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.createLocationCredentialsHandler = void 0;
7
+ const getDataAccess_1 = require("../apis/getDataAccess");
8
+ const createLocationCredentialsHandler = (handlerInput) => {
9
+ const { accountId, region, credentialsProvider } = handlerInput;
10
+ /**
11
+ * Retrieves credentials for the specified scope & permission.
12
+ *
13
+ * @param input - An object specifying the requested scope & permission.
14
+ *
15
+ * @returns A promise which will resolve with the requested credentials.
16
+ */
17
+ return (input) => {
18
+ const { scope, permission } = input;
19
+ return (0, getDataAccess_1.getDataAccess)({
20
+ accountId,
21
+ credentialsProvider,
22
+ permission,
23
+ region,
24
+ scope,
25
+ });
26
+ };
27
+ };
28
+ exports.createLocationCredentialsHandler = createLocationCredentialsHandler;
29
+ //# sourceMappingURL=createLocationCredentialsHandler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createLocationCredentialsHandler.js","sources":["../../../../src/storageBrowser/managedAuthConfigAdapter/createLocationCredentialsHandler.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.createLocationCredentialsHandler = void 0;\nconst getDataAccess_1 = require(\"../apis/getDataAccess\");\nconst createLocationCredentialsHandler = (handlerInput) => {\n const { accountId, region, credentialsProvider } = handlerInput;\n /**\n * Retrieves credentials for the specified scope & permission.\n *\n * @param input - An object specifying the requested scope & permission.\n *\n * @returns A promise which will resolve with the requested credentials.\n */\n return (input) => {\n const { scope, permission } = input;\n return (0, getDataAccess_1.getDataAccess)({\n accountId,\n credentialsProvider,\n permission,\n region,\n scope,\n });\n };\n};\nexports.createLocationCredentialsHandler = createLocationCredentialsHandler;\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9D,OAAO,CAAC,gCAAgC,GAAG,KAAK,CAAC,CAAC;AAClD,MAAM,eAAe,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAAC;AACzD,MAAM,gCAAgC,GAAG,CAAC,YAAY,KAAK;AAC3D,IAAI,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,mBAAmB,EAAE,GAAG,YAAY,CAAC;AACpE;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,OAAO,CAAC,KAAK,KAAK;AACtB,QAAQ,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,KAAK,CAAC;AAC5C,QAAQ,OAAO,IAAI,eAAe,CAAC,aAAa,EAAE;AAClD,YAAY,SAAS;AACrB,YAAY,mBAAmB;AAC/B,YAAY,UAAU;AACtB,YAAY,MAAM;AAClB,YAAY,KAAK;AACjB,SAAS,CAAC,CAAC;AACX,KAAK,CAAC;AACN,CAAC,CAAC;AACF,OAAO,CAAC,gCAAgC,GAAG,gCAAgC;;"}
@@ -0,0 +1,32 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.createManagedAuthConfigAdapter = void 0;
5
+ const createListLocationsHandler_1 = require("./createListLocationsHandler");
6
+ const createLocationCredentialsHandler_1 = require("./createLocationCredentialsHandler");
7
+ /**
8
+ * Create configuration including handlers to call S3 Access Grant APIs to list and get
9
+ * credentials for different locations.
10
+ *
11
+ * @param options - Configuration options for the adapter.
12
+ * @returns - An object containing the handlers to call S3 Access Grant APIs and region
13
+ */
14
+ const createManagedAuthConfigAdapter = ({ credentialsProvider, region, accountId, }) => {
15
+ const listLocations = (0, createListLocationsHandler_1.createListLocationsHandler)({
16
+ credentialsProvider,
17
+ accountId,
18
+ region,
19
+ });
20
+ const getLocationCredentials = (0, createLocationCredentialsHandler_1.createLocationCredentialsHandler)({
21
+ credentialsProvider,
22
+ accountId,
23
+ region,
24
+ });
25
+ return {
26
+ listLocations,
27
+ getLocationCredentials,
28
+ region,
29
+ };
30
+ };
31
+ exports.createManagedAuthConfigAdapter = createManagedAuthConfigAdapter;
32
+ //# sourceMappingURL=createManagedAuthConfigAdapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createManagedAuthConfigAdapter.js","sources":["../../../../src/storageBrowser/managedAuthConfigAdapter/createManagedAuthConfigAdapter.ts"],"sourcesContent":["\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.createManagedAuthConfigAdapter = void 0;\nconst createListLocationsHandler_1 = require(\"./createListLocationsHandler\");\nconst createLocationCredentialsHandler_1 = require(\"./createLocationCredentialsHandler\");\n/**\n * Create configuration including handlers to call S3 Access Grant APIs to list and get\n * credentials for different locations.\n *\n * @param options - Configuration options for the adapter.\n * @returns - An object containing the handlers to call S3 Access Grant APIs and region\n */\nconst createManagedAuthConfigAdapter = ({ credentialsProvider, region, accountId, }) => {\n const listLocations = (0, createListLocationsHandler_1.createListLocationsHandler)({\n credentialsProvider,\n accountId,\n region,\n });\n const getLocationCredentials = (0, createLocationCredentialsHandler_1.createLocationCredentialsHandler)({\n credentialsProvider,\n accountId,\n region,\n });\n return {\n listLocations,\n getLocationCredentials,\n region,\n };\n};\nexports.createManagedAuthConfigAdapter = createManagedAuthConfigAdapter;\n"],"names":[],"mappings":";;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9D,OAAO,CAAC,8BAA8B,GAAG,KAAK,CAAC,CAAC;AAChD,MAAM,4BAA4B,GAAG,OAAO,CAAC,8BAA8B,CAAC,CAAC;AAC7E,MAAM,kCAAkC,GAAG,OAAO,CAAC,oCAAoC,CAAC,CAAC;AACzF;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,8BAA8B,GAAG,CAAC,EAAE,mBAAmB,EAAE,MAAM,EAAE,SAAS,GAAG,KAAK;AACxF,IAAI,MAAM,aAAa,GAAG,IAAI,4BAA4B,CAAC,0BAA0B,EAAE;AACvF,QAAQ,mBAAmB;AAC3B,QAAQ,SAAS;AACjB,QAAQ,MAAM;AACd,KAAK,CAAC,CAAC;AACP,IAAI,MAAM,sBAAsB,GAAG,IAAI,kCAAkC,CAAC,gCAAgC,EAAE;AAC5G,QAAQ,mBAAmB;AAC3B,QAAQ,SAAS;AACjB,QAAQ,MAAM;AACd,KAAK,CAAC,CAAC;AACP,IAAI,OAAO;AACX,QAAQ,aAAa;AACrB,QAAQ,sBAAsB;AAC9B,QAAQ,MAAM;AACd,KAAK,CAAC;AACN,CAAC,CAAC;AACF,OAAO,CAAC,8BAA8B,GAAG,8BAA8B;;"}
@@ -0,0 +1,9 @@
1
+ 'use strict';
2
+
3
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
4
+ // SPDX-License-Identifier: Apache-2.0
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.createManagedAuthConfigAdapter = void 0;
7
+ var createManagedAuthConfigAdapter_1 = require("./createManagedAuthConfigAdapter");
8
+ Object.defineProperty(exports, "createManagedAuthConfigAdapter", { enumerable: true, get: function () { return createManagedAuthConfigAdapter_1.createManagedAuthConfigAdapter; } });
9
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../../src/storageBrowser/managedAuthConfigAdapter/index.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.createManagedAuthConfigAdapter = void 0;\nvar createManagedAuthConfigAdapter_1 = require(\"./createManagedAuthConfigAdapter\");\nObject.defineProperty(exports, \"createManagedAuthConfigAdapter\", { enumerable: true, get: function () { return createManagedAuthConfigAdapter_1.createManagedAuthConfigAdapter; } });\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9D,OAAO,CAAC,8BAA8B,GAAG,KAAK,CAAC,CAAC;AAChD,IAAI,gCAAgC,GAAG,OAAO,CAAC,kCAAkC,CAAC,CAAC;AACnF,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,gCAAgC,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,YAAY,EAAE,OAAO,gCAAgC,CAAC,8BAA8B,CAAC,EAAE,EAAE,CAAC;;"}
@@ -0,0 +1,6 @@
1
+ 'use strict';
2
+
3
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
4
+ // SPDX-License-Identifier: Apache-2.0
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sources":["../../../src/storageBrowser/types.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;;"}
@@ -0,0 +1 @@
1
+ export declare const INVALID_STORAGE_INPUT = "InvalidStorageInput";
@@ -0,0 +1,6 @@
1
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
+ // SPDX-License-Identifier: Apache-2.0
3
+ const INVALID_STORAGE_INPUT = 'InvalidStorageInput';
4
+
5
+ export { INVALID_STORAGE_INPUT };
6
+ //# sourceMappingURL=constants.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.mjs","sources":["../../../src/errors/constants.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nexport const INVALID_STORAGE_INPUT = 'InvalidStorageInput';\n"],"names":[],"mappings":"AAAA;AACA;AACY,MAAC,qBAAqB,GAAG;;;;"}
@@ -16,6 +16,9 @@ export declare enum StorageValidationErrorCode {
16
16
  InvalidStoragePathInput = "InvalidStoragePathInput",
17
17
  InvalidUploadSource = "InvalidUploadSource",
18
18
  ObjectIsTooLarge = "ObjectIsTooLarge",
19
- UrlExpirationMaxLimitExceed = "UrlExpirationMaxLimitExceed"
19
+ UrlExpirationMaxLimitExceed = "UrlExpirationMaxLimitExceed",
20
+ InvalidLocationCredentialsCacheSize = "InvalidLocationCredentialsCacheSize",
21
+ LocationCredentialsStoreDestroyed = "LocationCredentialsStoreDestroyed",
22
+ InvalidS3Uri = "InvalidS3Uri"
20
23
  }
21
24
  export declare const validationErrorMap: AmplifyErrorMap<StorageValidationErrorCode>;
@@ -19,6 +19,9 @@ var StorageValidationErrorCode;
19
19
  StorageValidationErrorCode["InvalidUploadSource"] = "InvalidUploadSource";
20
20
  StorageValidationErrorCode["ObjectIsTooLarge"] = "ObjectIsTooLarge";
21
21
  StorageValidationErrorCode["UrlExpirationMaxLimitExceed"] = "UrlExpirationMaxLimitExceed";
22
+ StorageValidationErrorCode["InvalidLocationCredentialsCacheSize"] = "InvalidLocationCredentialsCacheSize";
23
+ StorageValidationErrorCode["LocationCredentialsStoreDestroyed"] = "LocationCredentialsStoreDestroyed";
24
+ StorageValidationErrorCode["InvalidS3Uri"] = "InvalidS3Uri";
22
25
  })(StorageValidationErrorCode || (StorageValidationErrorCode = {}));
23
26
  const validationErrorMap = {
24
27
  [StorageValidationErrorCode.NoCredentials]: {
@@ -66,6 +69,15 @@ const validationErrorMap = {
66
69
  [StorageValidationErrorCode.InvalidStoragePathInput]: {
67
70
  message: 'Input `path` does not allow a leading slash (/).',
68
71
  },
72
+ [StorageValidationErrorCode.InvalidLocationCredentialsCacheSize]: {
73
+ message: 'locationCredentialsCacheSize must be a positive integer.',
74
+ },
75
+ [StorageValidationErrorCode.LocationCredentialsStoreDestroyed]: {
76
+ message: `Location-specific credentials store has been destroyed.`,
77
+ },
78
+ [StorageValidationErrorCode.InvalidS3Uri]: {
79
+ message: 'Invalid S3 URI.',
80
+ },
69
81
  [StorageValidationErrorCode.InvalidStorageBucket]: {
70
82
  message: 'Unable to lookup bucket from provided name in Amplify configuration.',
71
83
  },
@@ -1 +1 @@
1
- {"version":3,"file":"validation.mjs","sources":["../../../../src/errors/types/validation.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nexport var StorageValidationErrorCode;\n(function (StorageValidationErrorCode) {\n StorageValidationErrorCode[\"NoCredentials\"] = \"NoCredentials\";\n StorageValidationErrorCode[\"NoIdentityId\"] = \"NoIdentityId\";\n StorageValidationErrorCode[\"NoKey\"] = \"NoKey\";\n StorageValidationErrorCode[\"NoSourceKey\"] = \"NoSourceKey\";\n StorageValidationErrorCode[\"NoDestinationKey\"] = \"NoDestinationKey\";\n StorageValidationErrorCode[\"NoSourcePath\"] = \"NoSourcePath\";\n StorageValidationErrorCode[\"NoDestinationPath\"] = \"NoDestinationPath\";\n StorageValidationErrorCode[\"NoBucket\"] = \"NoBucket\";\n StorageValidationErrorCode[\"NoRegion\"] = \"NoRegion\";\n StorageValidationErrorCode[\"InvalidStorageBucket\"] = \"InvalidStorageBucket\";\n StorageValidationErrorCode[\"InvalidCopyOperationStorageBucket\"] = \"InvalidCopyOperationStorageBucket\";\n StorageValidationErrorCode[\"InvalidStorageOperationPrefixInput\"] = \"InvalidStorageOperationPrefixInput\";\n StorageValidationErrorCode[\"InvalidStorageOperationInput\"] = \"InvalidStorageOperationInput\";\n StorageValidationErrorCode[\"InvalidStoragePathInput\"] = \"InvalidStoragePathInput\";\n StorageValidationErrorCode[\"InvalidUploadSource\"] = \"InvalidUploadSource\";\n StorageValidationErrorCode[\"ObjectIsTooLarge\"] = \"ObjectIsTooLarge\";\n StorageValidationErrorCode[\"UrlExpirationMaxLimitExceed\"] = \"UrlExpirationMaxLimitExceed\";\n})(StorageValidationErrorCode || (StorageValidationErrorCode = {}));\nexport const validationErrorMap = {\n [StorageValidationErrorCode.NoCredentials]: {\n message: 'Credentials should not be empty.',\n },\n [StorageValidationErrorCode.NoIdentityId]: {\n message: 'Missing identity ID when accessing objects in protected or private access level.',\n },\n [StorageValidationErrorCode.NoKey]: {\n message: 'Missing key in api call.',\n },\n [StorageValidationErrorCode.NoSourceKey]: {\n message: 'Missing source key in copy api call.',\n },\n [StorageValidationErrorCode.NoDestinationKey]: {\n message: 'Missing destination key in copy api call.',\n },\n [StorageValidationErrorCode.NoSourcePath]: {\n message: 'Missing source path in copy api call.',\n },\n [StorageValidationErrorCode.NoDestinationPath]: {\n message: 'Missing destination path in copy api call.',\n },\n [StorageValidationErrorCode.NoBucket]: {\n message: 'Missing bucket name while accessing object.',\n },\n [StorageValidationErrorCode.NoRegion]: {\n message: 'Missing region while accessing object.',\n },\n [StorageValidationErrorCode.UrlExpirationMaxLimitExceed]: {\n message: 'Url Expiration can not be greater than 7 Days.',\n },\n [StorageValidationErrorCode.ObjectIsTooLarge]: {\n message: 'Object size cannot not be greater than 5TB.',\n },\n [StorageValidationErrorCode.InvalidUploadSource]: {\n message: 'Upload source type can only be a `Blob`, `File`, `ArrayBuffer`, or `string`.',\n },\n [StorageValidationErrorCode.InvalidStorageOperationInput]: {\n message: 'Path or key parameter must be specified in the input. Both can not be specified at the same time.',\n },\n [StorageValidationErrorCode.InvalidStorageOperationPrefixInput]: {\n message: 'Both path and prefix can not be specified at the same time.',\n },\n [StorageValidationErrorCode.InvalidStoragePathInput]: {\n message: 'Input `path` does not allow a leading slash (/).',\n },\n [StorageValidationErrorCode.InvalidStorageBucket]: {\n message: 'Unable to lookup bucket from provided name in Amplify configuration.',\n },\n [StorageValidationErrorCode.InvalidCopyOperationStorageBucket]: {\n message: 'Missing bucket option in either source or destination.',\n },\n};\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validation.mjs","sources":["../../../../src/errors/types/validation.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nexport var StorageValidationErrorCode;\n(function (StorageValidationErrorCode) {\n StorageValidationErrorCode[\"NoCredentials\"] = \"NoCredentials\";\n StorageValidationErrorCode[\"NoIdentityId\"] = \"NoIdentityId\";\n StorageValidationErrorCode[\"NoKey\"] = \"NoKey\";\n StorageValidationErrorCode[\"NoSourceKey\"] = \"NoSourceKey\";\n StorageValidationErrorCode[\"NoDestinationKey\"] = \"NoDestinationKey\";\n StorageValidationErrorCode[\"NoSourcePath\"] = \"NoSourcePath\";\n StorageValidationErrorCode[\"NoDestinationPath\"] = \"NoDestinationPath\";\n StorageValidationErrorCode[\"NoBucket\"] = \"NoBucket\";\n StorageValidationErrorCode[\"NoRegion\"] = \"NoRegion\";\n StorageValidationErrorCode[\"InvalidStorageBucket\"] = \"InvalidStorageBucket\";\n StorageValidationErrorCode[\"InvalidCopyOperationStorageBucket\"] = \"InvalidCopyOperationStorageBucket\";\n StorageValidationErrorCode[\"InvalidStorageOperationPrefixInput\"] = \"InvalidStorageOperationPrefixInput\";\n StorageValidationErrorCode[\"InvalidStorageOperationInput\"] = \"InvalidStorageOperationInput\";\n StorageValidationErrorCode[\"InvalidStoragePathInput\"] = \"InvalidStoragePathInput\";\n StorageValidationErrorCode[\"InvalidUploadSource\"] = \"InvalidUploadSource\";\n StorageValidationErrorCode[\"ObjectIsTooLarge\"] = \"ObjectIsTooLarge\";\n StorageValidationErrorCode[\"UrlExpirationMaxLimitExceed\"] = \"UrlExpirationMaxLimitExceed\";\n StorageValidationErrorCode[\"InvalidLocationCredentialsCacheSize\"] = \"InvalidLocationCredentialsCacheSize\";\n StorageValidationErrorCode[\"LocationCredentialsStoreDestroyed\"] = \"LocationCredentialsStoreDestroyed\";\n StorageValidationErrorCode[\"InvalidS3Uri\"] = \"InvalidS3Uri\";\n})(StorageValidationErrorCode || (StorageValidationErrorCode = {}));\nexport const validationErrorMap = {\n [StorageValidationErrorCode.NoCredentials]: {\n message: 'Credentials should not be empty.',\n },\n [StorageValidationErrorCode.NoIdentityId]: {\n message: 'Missing identity ID when accessing objects in protected or private access level.',\n },\n [StorageValidationErrorCode.NoKey]: {\n message: 'Missing key in api call.',\n },\n [StorageValidationErrorCode.NoSourceKey]: {\n message: 'Missing source key in copy api call.',\n },\n [StorageValidationErrorCode.NoDestinationKey]: {\n message: 'Missing destination key in copy api call.',\n },\n [StorageValidationErrorCode.NoSourcePath]: {\n message: 'Missing source path in copy api call.',\n },\n [StorageValidationErrorCode.NoDestinationPath]: {\n message: 'Missing destination path in copy api call.',\n },\n [StorageValidationErrorCode.NoBucket]: {\n message: 'Missing bucket name while accessing object.',\n },\n [StorageValidationErrorCode.NoRegion]: {\n message: 'Missing region while accessing object.',\n },\n [StorageValidationErrorCode.UrlExpirationMaxLimitExceed]: {\n message: 'Url Expiration can not be greater than 7 Days.',\n },\n [StorageValidationErrorCode.ObjectIsTooLarge]: {\n message: 'Object size cannot not be greater than 5TB.',\n },\n [StorageValidationErrorCode.InvalidUploadSource]: {\n message: 'Upload source type can only be a `Blob`, `File`, `ArrayBuffer`, or `string`.',\n },\n [StorageValidationErrorCode.InvalidStorageOperationInput]: {\n message: 'Path or key parameter must be specified in the input. Both can not be specified at the same time.',\n },\n [StorageValidationErrorCode.InvalidStorageOperationPrefixInput]: {\n message: 'Both path and prefix can not be specified at the same time.',\n },\n [StorageValidationErrorCode.InvalidStoragePathInput]: {\n message: 'Input `path` does not allow a leading slash (/).',\n },\n [StorageValidationErrorCode.InvalidLocationCredentialsCacheSize]: {\n message: 'locationCredentialsCacheSize must be a positive integer.',\n },\n [StorageValidationErrorCode.LocationCredentialsStoreDestroyed]: {\n message: `Location-specific credentials store has been destroyed.`,\n },\n [StorageValidationErrorCode.InvalidS3Uri]: {\n message: 'Invalid S3 URI.',\n },\n [StorageValidationErrorCode.InvalidStorageBucket]: {\n message: 'Unable to lookup bucket from provided name in Amplify configuration.',\n },\n [StorageValidationErrorCode.InvalidCopyOperationStorageBucket]: {\n message: 'Missing bucket option in either source or destination.',\n },\n};\n"],"names":[],"mappings":"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"}
@@ -11,18 +11,18 @@ import { createDownloadTask } from '../utils/transferTask.mjs';
11
11
  import { validateStorageOperationInput } from '../utils/validateStorageOperationInput.mjs';
12
12
  import '../../../errors/types/validation.mjs';
13
13
  import { STORAGE_INPUT_KEY } from '../utils/constants.mjs';
14
- import '../utils/client/base.mjs';
15
- import { getObject } from '../utils/client/getObject.mjs';
16
- import '../utils/client/listObjectsV2.mjs';
17
- import '../utils/client/putObject.mjs';
18
- import '../utils/client/createMultipartUpload.mjs';
19
- import '../utils/client/uploadPart.mjs';
20
- import '../utils/client/completeMultipartUpload.mjs';
21
- import '../utils/client/listParts.mjs';
22
- import '../utils/client/abortMultipartUpload.mjs';
23
- import '../utils/client/copyObject.mjs';
24
- import '../utils/client/headObject.mjs';
25
- import '../utils/client/deleteObject.mjs';
14
+ import '../utils/client/s3data/base.mjs';
15
+ import { getObject } from '../utils/client/s3data/getObject.mjs';
16
+ import '../utils/client/s3data/listObjectsV2.mjs';
17
+ import '../utils/client/s3data/putObject.mjs';
18
+ import '../utils/client/s3data/createMultipartUpload.mjs';
19
+ import '../utils/client/s3data/uploadPart.mjs';
20
+ import '../utils/client/s3data/completeMultipartUpload.mjs';
21
+ import '../utils/client/s3data/listParts.mjs';
22
+ import '../utils/client/s3data/abortMultipartUpload.mjs';
23
+ import '../utils/client/s3data/copyObject.mjs';
24
+ import '../utils/client/s3data/headObject.mjs';
25
+ import '../utils/client/s3data/deleteObject.mjs';
26
26
  import { getStorageUserAgentValue } from '../utils/userAgent.mjs';
27
27
  import { logger } from '../../../utils/logger.mjs';
28
28
 
@@ -40,7 +40,7 @@ function downloadData(input) {
40
40
  }
41
41
  const downloadDataJob = (downloadDataInput, abortSignal) => async () => {
42
42
  const { options: downloadDataOptions } = downloadDataInput;
43
- const { bucket, keyPrefix, s3Config, identityId } = await resolveS3ConfigAndInput(Amplify, downloadDataOptions);
43
+ const { bucket, keyPrefix, s3Config, identityId } = await resolveS3ConfigAndInput(Amplify, downloadDataInput);
44
44
  const { inputType, objectKey } = validateStorageOperationInput(downloadDataInput, identityId);
45
45
  const finalKey = inputType === STORAGE_INPUT_KEY ? keyPrefix + objectKey : objectKey;
46
46
  logger.debug(`download ${objectKey} from ${finalKey}.`);
@@ -1 +1 @@
1
- {"version":3,"file":"downloadData.mjs","sources":["../../../../../src/providers/s3/apis/downloadData.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { Amplify } from '@aws-amplify/core';\nimport { StorageAction } from '@aws-amplify/core/internals/utils';\nimport { resolveS3ConfigAndInput } from '../utils/resolveS3ConfigAndInput';\nimport { createDownloadTask, validateStorageOperationInput } from '../utils';\nimport { getObject } from '../utils/client';\nimport { getStorageUserAgentValue } from '../utils/userAgent';\nimport { logger } from '../../../utils';\nimport { STORAGE_INPUT_KEY } from '../utils/constants';\nexport function downloadData(input) {\n const abortController = new AbortController();\n const downloadTask = createDownloadTask({\n job: downloadDataJob(input, abortController.signal),\n onCancel: (message) => {\n abortController.abort(message);\n },\n });\n return downloadTask;\n}\nconst downloadDataJob = (downloadDataInput, abortSignal) => async () => {\n const { options: downloadDataOptions } = downloadDataInput;\n const { bucket, keyPrefix, s3Config, identityId } = await resolveS3ConfigAndInput(Amplify, downloadDataOptions);\n const { inputType, objectKey } = validateStorageOperationInput(downloadDataInput, identityId);\n const finalKey = inputType === STORAGE_INPUT_KEY ? keyPrefix + objectKey : objectKey;\n logger.debug(`download ${objectKey} from ${finalKey}.`);\n const { Body: body, LastModified: lastModified, ContentLength: size, ETag: eTag, Metadata: metadata, VersionId: versionId, ContentType: contentType, } = await getObject({\n ...s3Config,\n abortSignal,\n onDownloadProgress: downloadDataOptions?.onProgress,\n userAgentValue: getStorageUserAgentValue(StorageAction.DownloadData),\n }, {\n Bucket: bucket,\n Key: finalKey,\n ...(downloadDataOptions?.bytesRange && {\n Range: `bytes=${downloadDataOptions.bytesRange.start}-${downloadDataOptions.bytesRange.end}`,\n }),\n });\n const result = {\n body,\n lastModified,\n size,\n contentType,\n eTag,\n metadata,\n versionId,\n };\n return inputType === STORAGE_INPUT_KEY\n ? { key: objectKey, ...result }\n : { path: objectKey, ...result };\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AACA;AASO,SAAS,YAAY,CAAC,KAAK,EAAE;AACpC,IAAI,MAAM,eAAe,GAAG,IAAI,eAAe,EAAE,CAAC;AAClD,IAAI,MAAM,YAAY,GAAG,kBAAkB,CAAC;AAC5C,QAAQ,GAAG,EAAE,eAAe,CAAC,KAAK,EAAE,eAAe,CAAC,MAAM,CAAC;AAC3D,QAAQ,QAAQ,EAAE,CAAC,OAAO,KAAK;AAC/B,YAAY,eAAe,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;AAC3C,SAAS;AACT,KAAK,CAAC,CAAC;AACP,IAAI,OAAO,YAAY,CAAC;AACxB,CAAC;AACD,MAAM,eAAe,GAAG,CAAC,iBAAiB,EAAE,WAAW,KAAK,YAAY;AACxE,IAAI,MAAM,EAAE,OAAO,EAAE,mBAAmB,EAAE,GAAG,iBAAiB,CAAC;AAC/D,IAAI,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,MAAM,uBAAuB,CAAC,OAAO,EAAE,mBAAmB,CAAC,CAAC;AACpH,IAAI,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,6BAA6B,CAAC,iBAAiB,EAAE,UAAU,CAAC,CAAC;AAClG,IAAI,MAAM,QAAQ,GAAG,SAAS,KAAK,iBAAiB,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC;AACzF,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,SAAS,EAAE,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;AAC5D,IAAI,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,YAAY,EAAE,YAAY,EAAE,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,WAAW,GAAG,GAAG,MAAM,SAAS,CAAC;AAC7K,QAAQ,GAAG,QAAQ;AACnB,QAAQ,WAAW;AACnB,QAAQ,kBAAkB,EAAE,mBAAmB,EAAE,UAAU;AAC3D,QAAQ,cAAc,EAAE,wBAAwB,CAAC,aAAa,CAAC,YAAY,CAAC;AAC5E,KAAK,EAAE;AACP,QAAQ,MAAM,EAAE,MAAM;AACtB,QAAQ,GAAG,EAAE,QAAQ;AACrB,QAAQ,IAAI,mBAAmB,EAAE,UAAU,IAAI;AAC/C,YAAY,KAAK,EAAE,CAAC,MAAM,EAAE,mBAAmB,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,mBAAmB,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;AACxG,SAAS,CAAC;AACV,KAAK,CAAC,CAAC;AACP,IAAI,MAAM,MAAM,GAAG;AACnB,QAAQ,IAAI;AACZ,QAAQ,YAAY;AACpB,QAAQ,IAAI;AACZ,QAAQ,WAAW;AACnB,QAAQ,IAAI;AACZ,QAAQ,QAAQ;AAChB,QAAQ,SAAS;AACjB,KAAK,CAAC;AACN,IAAI,OAAO,SAAS,KAAK,iBAAiB;AAC1C,UAAU,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,MAAM,EAAE;AACvC,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,MAAM,EAAE,CAAC;AACzC,CAAC;;;;"}
1
+ {"version":3,"file":"downloadData.mjs","sources":["../../../../../src/providers/s3/apis/downloadData.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { Amplify } from '@aws-amplify/core';\nimport { StorageAction } from '@aws-amplify/core/internals/utils';\nimport { resolveS3ConfigAndInput } from '../utils/resolveS3ConfigAndInput';\nimport { createDownloadTask, validateStorageOperationInput } from '../utils';\nimport { getObject } from '../utils/client/s3data';\nimport { getStorageUserAgentValue } from '../utils/userAgent';\nimport { logger } from '../../../utils';\nimport { STORAGE_INPUT_KEY } from '../utils/constants';\nexport function downloadData(input) {\n const abortController = new AbortController();\n const downloadTask = createDownloadTask({\n job: downloadDataJob(input, abortController.signal),\n onCancel: (message) => {\n abortController.abort(message);\n },\n });\n return downloadTask;\n}\nconst downloadDataJob = (downloadDataInput, abortSignal) => async () => {\n const { options: downloadDataOptions } = downloadDataInput;\n const { bucket, keyPrefix, s3Config, identityId } = await resolveS3ConfigAndInput(Amplify, downloadDataInput);\n const { inputType, objectKey } = validateStorageOperationInput(downloadDataInput, identityId);\n const finalKey = inputType === STORAGE_INPUT_KEY ? keyPrefix + objectKey : objectKey;\n logger.debug(`download ${objectKey} from ${finalKey}.`);\n const { Body: body, LastModified: lastModified, ContentLength: size, ETag: eTag, Metadata: metadata, VersionId: versionId, ContentType: contentType, } = await getObject({\n ...s3Config,\n abortSignal,\n onDownloadProgress: downloadDataOptions?.onProgress,\n userAgentValue: getStorageUserAgentValue(StorageAction.DownloadData),\n }, {\n Bucket: bucket,\n Key: finalKey,\n ...(downloadDataOptions?.bytesRange && {\n Range: `bytes=${downloadDataOptions.bytesRange.start}-${downloadDataOptions.bytesRange.end}`,\n }),\n });\n const result = {\n body,\n lastModified,\n size,\n contentType,\n eTag,\n metadata,\n versionId,\n };\n return inputType === STORAGE_INPUT_KEY\n ? { key: objectKey, ...result }\n : { path: objectKey, ...result };\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AACA;AASO,SAAS,YAAY,CAAC,KAAK,EAAE;AACpC,IAAI,MAAM,eAAe,GAAG,IAAI,eAAe,EAAE,CAAC;AAClD,IAAI,MAAM,YAAY,GAAG,kBAAkB,CAAC;AAC5C,QAAQ,GAAG,EAAE,eAAe,CAAC,KAAK,EAAE,eAAe,CAAC,MAAM,CAAC;AAC3D,QAAQ,QAAQ,EAAE,CAAC,OAAO,KAAK;AAC/B,YAAY,eAAe,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;AAC3C,SAAS;AACT,KAAK,CAAC,CAAC;AACP,IAAI,OAAO,YAAY,CAAC;AACxB,CAAC;AACD,MAAM,eAAe,GAAG,CAAC,iBAAiB,EAAE,WAAW,KAAK,YAAY;AACxE,IAAI,MAAM,EAAE,OAAO,EAAE,mBAAmB,EAAE,GAAG,iBAAiB,CAAC;AAC/D,IAAI,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,MAAM,uBAAuB,CAAC,OAAO,EAAE,iBAAiB,CAAC,CAAC;AAClH,IAAI,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,6BAA6B,CAAC,iBAAiB,EAAE,UAAU,CAAC,CAAC;AAClG,IAAI,MAAM,QAAQ,GAAG,SAAS,KAAK,iBAAiB,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC;AACzF,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,SAAS,EAAE,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;AAC5D,IAAI,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,YAAY,EAAE,YAAY,EAAE,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,WAAW,GAAG,GAAG,MAAM,SAAS,CAAC;AAC7K,QAAQ,GAAG,QAAQ;AACnB,QAAQ,WAAW;AACnB,QAAQ,kBAAkB,EAAE,mBAAmB,EAAE,UAAU;AAC3D,QAAQ,cAAc,EAAE,wBAAwB,CAAC,aAAa,CAAC,YAAY,CAAC;AAC5E,KAAK,EAAE;AACP,QAAQ,MAAM,EAAE,MAAM;AACtB,QAAQ,GAAG,EAAE,QAAQ;AACrB,QAAQ,IAAI,mBAAmB,EAAE,UAAU,IAAI;AAC/C,YAAY,KAAK,EAAE,CAAC,MAAM,EAAE,mBAAmB,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,mBAAmB,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;AACxG,SAAS,CAAC;AACV,KAAK,CAAC,CAAC;AACP,IAAI,MAAM,MAAM,GAAG;AACnB,QAAQ,IAAI;AACZ,QAAQ,YAAY;AACpB,QAAQ,IAAI;AACZ,QAAQ,WAAW;AACnB,QAAQ,IAAI;AACZ,QAAQ,QAAQ;AAChB,QAAQ,SAAS;AACjB,KAAK,CAAC;AACN,IAAI,OAAO,SAAS,KAAK,iBAAiB;AAC1C,UAAU,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,MAAM,EAAE;AACvC,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,MAAM,EAAE,CAAC;AACzC,CAAC;;;;"}
@@ -11,18 +11,18 @@ import { StorageValidationErrorCode } from '../../../../errors/types/validation.
11
11
  import { logger } from '../../../../utils/logger.mjs';
12
12
  import { validateStorageOperationInput } from '../../utils/validateStorageOperationInput.mjs';
13
13
  import { isInputWithPath } from '../../utils/isInputWithPath.mjs';
14
- import '../../utils/client/base.mjs';
15
- import '../../utils/client/getObject.mjs';
16
- import '../../utils/client/listObjectsV2.mjs';
17
- import '../../utils/client/putObject.mjs';
18
- import '../../utils/client/createMultipartUpload.mjs';
19
- import '../../utils/client/uploadPart.mjs';
20
- import '../../utils/client/completeMultipartUpload.mjs';
21
- import '../../utils/client/listParts.mjs';
22
- import '../../utils/client/abortMultipartUpload.mjs';
23
- import { copyObject } from '../../utils/client/copyObject.mjs';
24
- import '../../utils/client/headObject.mjs';
25
- import '../../utils/client/deleteObject.mjs';
14
+ import '../../utils/client/s3data/base.mjs';
15
+ import '../../utils/client/s3data/getObject.mjs';
16
+ import '../../utils/client/s3data/listObjectsV2.mjs';
17
+ import '../../utils/client/s3data/putObject.mjs';
18
+ import '../../utils/client/s3data/createMultipartUpload.mjs';
19
+ import '../../utils/client/s3data/uploadPart.mjs';
20
+ import '../../utils/client/s3data/completeMultipartUpload.mjs';
21
+ import '../../utils/client/s3data/listParts.mjs';
22
+ import '../../utils/client/s3data/abortMultipartUpload.mjs';
23
+ import { copyObject } from '../../utils/client/s3data/copyObject.mjs';
24
+ import '../../utils/client/s3data/headObject.mjs';
25
+ import '../../utils/client/s3data/deleteObject.mjs';
26
26
  import { getStorageUserAgentValue } from '../../utils/userAgent.mjs';
27
27
 
28
28
  // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
@@ -46,8 +46,22 @@ const copy = async (amplify, input) => {
46
46
  const copyWithPath = async (amplify, input) => {
47
47
  const { source, destination } = input;
48
48
  storageBucketAssertion(source.bucket, destination.bucket);
49
- const { bucket: sourceBucket, identityId } = await resolveS3ConfigAndInput(amplify, input.source);
50
- const { s3Config, bucket: destBucket } = await resolveS3ConfigAndInput(amplify, input.destination); // resolveS3ConfigAndInput does not make extra API calls or storage access if called repeatedly.
49
+ const { bucket: sourceBucket } = await resolveS3ConfigAndInput(amplify, {
50
+ path: input.source.path,
51
+ options: {
52
+ locationCredentialsProvider: input.options?.locationCredentialsProvider,
53
+ ...input.source,
54
+ },
55
+ });
56
+ // The bucket, region, credentials of s3 client are resolved from destination.
57
+ // Whereas the source bucket and path are a input parameter of S3 copy operation.
58
+ const { s3Config, bucket: destBucket, identityId, } = await resolveS3ConfigAndInput(amplify, {
59
+ path: input.destination.path,
60
+ options: {
61
+ locationCredentialsProvider: input.options?.locationCredentialsProvider,
62
+ ...input.destination,
63
+ },
64
+ }); // resolveS3ConfigAndInput does not make extra API calls or storage access if called repeatedly.
51
65
  assertValidationError(!!source.path, StorageValidationErrorCode.NoSourcePath);
52
66
  assertValidationError(!!destination.path, StorageValidationErrorCode.NoDestinationPath);
53
67
  const { objectKey: sourcePath } = validateStorageOperationInput(source, identityId);
@@ -69,8 +83,26 @@ const copyWithKey = async (amplify, input) => {
69
83
  storageBucketAssertion(source.bucket, destination.bucket);
70
84
  assertValidationError(!!source.key, StorageValidationErrorCode.NoSourceKey);
71
85
  assertValidationError(!!destination.key, StorageValidationErrorCode.NoDestinationKey);
72
- const { bucket: sourceBucket, keyPrefix: sourceKeyPrefix } = await resolveS3ConfigAndInput(amplify, source);
73
- const { s3Config, bucket: destBucket, keyPrefix: destinationKeyPrefix, } = await resolveS3ConfigAndInput(amplify, destination); // resolveS3ConfigAndInput does not make extra API calls or storage access if called repeatedly.
86
+ const { bucket: sourceBucket, keyPrefix: sourceKeyPrefix } = await resolveS3ConfigAndInput(amplify, {
87
+ ...input,
88
+ options: {
89
+ // @ts-expect-error: 'options' does not exist on type 'CopyInput'. In case of JS users set the location
90
+ // credentials provider option, resolveS3ConfigAndInput will throw validation error.
91
+ locationCredentialsProvider: input.options?.locationCredentialsProvider,
92
+ ...input.source,
93
+ },
94
+ });
95
+ // The bucket, region, credentials of s3 client are resolved from destination.
96
+ // Whereas the source bucket and path are a input parameter of S3 copy operation.
97
+ const { s3Config, bucket: destBucket, keyPrefix: destinationKeyPrefix, } = await resolveS3ConfigAndInput(amplify, {
98
+ ...input,
99
+ options: {
100
+ // @ts-expect-error: 'options' does not exist on type 'CopyInput'. In case of JS users set the location
101
+ // credentials provider option, resolveS3ConfigAndInput will throw validation error.
102
+ locationCredentialsProvider: input.options?.locationCredentialsProvider,
103
+ ...input.destination,
104
+ },
105
+ }); // resolveS3ConfigAndInput does not make extra API calls or storage access if called repeatedly.
74
106
  // TODO(ashwinkumar6) V6-logger: warn `You may copy files from another user if the source level is "protected", currently it's ${srcLevel}`
75
107
  const finalCopySource = `${sourceBucket}/${sourceKeyPrefix}${source.key}`;
76
108
  const finalCopyDestination = `${destinationKeyPrefix}${destination.key}`;
@@ -1 +1 @@
1
- {"version":3,"file":"copy.mjs","sources":["../../../../../../src/providers/s3/apis/internal/copy.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { StorageAction } from '@aws-amplify/core/internals/utils';\nimport { isInputWithPath, resolveS3ConfigAndInput, validateStorageOperationInput, } from '../../utils';\nimport { StorageValidationErrorCode } from '../../../../errors/types/validation';\nimport { assertValidationError } from '../../../../errors/utils/assertValidationError';\nimport { copyObject } from '../../utils/client';\nimport { getStorageUserAgentValue } from '../../utils/userAgent';\nimport { logger } from '../../../../utils';\nconst isCopyInputWithPath = (input) => isInputWithPath(input.source);\nconst storageBucketAssertion = (sourceBucket, destBucket) => {\n /** For multi-bucket, both source and destination bucket needs to be passed in\n * or both can be undefined and we fallback to singleton's default value\n */\n assertValidationError(\n // Both src & dest bucket option is present is acceptable\n (sourceBucket !== undefined && destBucket !== undefined) ||\n // or both are undefined is also acceptable\n (!destBucket && !sourceBucket), StorageValidationErrorCode.InvalidCopyOperationStorageBucket);\n};\nexport const copy = async (amplify, input) => {\n return isCopyInputWithPath(input)\n ? copyWithPath(amplify, input)\n : copyWithKey(amplify, input);\n};\nconst copyWithPath = async (amplify, input) => {\n const { source, destination } = input;\n storageBucketAssertion(source.bucket, destination.bucket);\n const { bucket: sourceBucket, identityId } = await resolveS3ConfigAndInput(amplify, input.source);\n const { s3Config, bucket: destBucket } = await resolveS3ConfigAndInput(amplify, input.destination); // resolveS3ConfigAndInput does not make extra API calls or storage access if called repeatedly.\n assertValidationError(!!source.path, StorageValidationErrorCode.NoSourcePath);\n assertValidationError(!!destination.path, StorageValidationErrorCode.NoDestinationPath);\n const { objectKey: sourcePath } = validateStorageOperationInput(source, identityId);\n const { objectKey: destinationPath } = validateStorageOperationInput(destination, identityId);\n const finalCopySource = `${sourceBucket}/${sourcePath}`;\n const finalCopyDestination = destinationPath;\n logger.debug(`copying \"${finalCopySource}\" to \"${finalCopyDestination}\".`);\n await serviceCopy({\n source: finalCopySource,\n destination: finalCopyDestination,\n bucket: destBucket,\n s3Config,\n });\n return { path: finalCopyDestination };\n};\n/** @deprecated Use {@link copyWithPath} instead. */\nexport const copyWithKey = async (amplify, input) => {\n const { source, destination } = input;\n storageBucketAssertion(source.bucket, destination.bucket);\n assertValidationError(!!source.key, StorageValidationErrorCode.NoSourceKey);\n assertValidationError(!!destination.key, StorageValidationErrorCode.NoDestinationKey);\n const { bucket: sourceBucket, keyPrefix: sourceKeyPrefix } = await resolveS3ConfigAndInput(amplify, source);\n const { s3Config, bucket: destBucket, keyPrefix: destinationKeyPrefix, } = await resolveS3ConfigAndInput(amplify, destination); // resolveS3ConfigAndInput does not make extra API calls or storage access if called repeatedly.\n // TODO(ashwinkumar6) V6-logger: warn `You may copy files from another user if the source level is \"protected\", currently it's ${srcLevel}`\n const finalCopySource = `${sourceBucket}/${sourceKeyPrefix}${source.key}`;\n const finalCopyDestination = `${destinationKeyPrefix}${destination.key}`;\n logger.debug(`copying \"${finalCopySource}\" to \"${finalCopyDestination}\".`);\n await serviceCopy({\n source: finalCopySource,\n destination: finalCopyDestination,\n bucket: destBucket,\n s3Config,\n });\n return {\n key: destination.key,\n };\n};\nconst serviceCopy = async ({ source, destination, bucket, s3Config, }) => {\n await copyObject({\n ...s3Config,\n userAgentValue: getStorageUserAgentValue(StorageAction.Copy),\n }, {\n Bucket: bucket,\n CopySource: source,\n Key: destination,\n MetadataDirective: 'COPY', // Copies over metadata like contentType as well\n });\n};\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"copy.mjs","sources":["../../../../../../src/providers/s3/apis/internal/copy.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { StorageAction } from '@aws-amplify/core/internals/utils';\nimport { isInputWithPath, resolveS3ConfigAndInput, validateStorageOperationInput, } from '../../utils';\nimport { StorageValidationErrorCode } from '../../../../errors/types/validation';\nimport { assertValidationError } from '../../../../errors/utils/assertValidationError';\nimport { copyObject } from '../../utils/client/s3data';\nimport { getStorageUserAgentValue } from '../../utils/userAgent';\nimport { logger } from '../../../../utils';\nconst isCopyInputWithPath = (input) => isInputWithPath(input.source);\nconst storageBucketAssertion = (sourceBucket, destBucket) => {\n /** For multi-bucket, both source and destination bucket needs to be passed in\n * or both can be undefined and we fallback to singleton's default value\n */\n assertValidationError(\n // Both src & dest bucket option is present is acceptable\n (sourceBucket !== undefined && destBucket !== undefined) ||\n // or both are undefined is also acceptable\n (!destBucket && !sourceBucket), StorageValidationErrorCode.InvalidCopyOperationStorageBucket);\n};\nexport const copy = async (amplify, input) => {\n return isCopyInputWithPath(input)\n ? copyWithPath(amplify, input)\n : copyWithKey(amplify, input);\n};\nconst copyWithPath = async (amplify, input) => {\n const { source, destination } = input;\n storageBucketAssertion(source.bucket, destination.bucket);\n const { bucket: sourceBucket } = await resolveS3ConfigAndInput(amplify, {\n path: input.source.path,\n options: {\n locationCredentialsProvider: input.options?.locationCredentialsProvider,\n ...input.source,\n },\n });\n // The bucket, region, credentials of s3 client are resolved from destination.\n // Whereas the source bucket and path are a input parameter of S3 copy operation.\n const { s3Config, bucket: destBucket, identityId, } = await resolveS3ConfigAndInput(amplify, {\n path: input.destination.path,\n options: {\n locationCredentialsProvider: input.options?.locationCredentialsProvider,\n ...input.destination,\n },\n }); // resolveS3ConfigAndInput does not make extra API calls or storage access if called repeatedly.\n assertValidationError(!!source.path, StorageValidationErrorCode.NoSourcePath);\n assertValidationError(!!destination.path, StorageValidationErrorCode.NoDestinationPath);\n const { objectKey: sourcePath } = validateStorageOperationInput(source, identityId);\n const { objectKey: destinationPath } = validateStorageOperationInput(destination, identityId);\n const finalCopySource = `${sourceBucket}/${sourcePath}`;\n const finalCopyDestination = destinationPath;\n logger.debug(`copying \"${finalCopySource}\" to \"${finalCopyDestination}\".`);\n await serviceCopy({\n source: finalCopySource,\n destination: finalCopyDestination,\n bucket: destBucket,\n s3Config,\n });\n return { path: finalCopyDestination };\n};\n/** @deprecated Use {@link copyWithPath} instead. */\nexport const copyWithKey = async (amplify, input) => {\n const { source, destination } = input;\n storageBucketAssertion(source.bucket, destination.bucket);\n assertValidationError(!!source.key, StorageValidationErrorCode.NoSourceKey);\n assertValidationError(!!destination.key, StorageValidationErrorCode.NoDestinationKey);\n const { bucket: sourceBucket, keyPrefix: sourceKeyPrefix } = await resolveS3ConfigAndInput(amplify, {\n ...input,\n options: {\n // @ts-expect-error: 'options' does not exist on type 'CopyInput'. In case of JS users set the location\n // credentials provider option, resolveS3ConfigAndInput will throw validation error.\n locationCredentialsProvider: input.options?.locationCredentialsProvider,\n ...input.source,\n },\n });\n // The bucket, region, credentials of s3 client are resolved from destination.\n // Whereas the source bucket and path are a input parameter of S3 copy operation.\n const { s3Config, bucket: destBucket, keyPrefix: destinationKeyPrefix, } = await resolveS3ConfigAndInput(amplify, {\n ...input,\n options: {\n // @ts-expect-error: 'options' does not exist on type 'CopyInput'. In case of JS users set the location\n // credentials provider option, resolveS3ConfigAndInput will throw validation error.\n locationCredentialsProvider: input.options?.locationCredentialsProvider,\n ...input.destination,\n },\n }); // resolveS3ConfigAndInput does not make extra API calls or storage access if called repeatedly.\n // TODO(ashwinkumar6) V6-logger: warn `You may copy files from another user if the source level is \"protected\", currently it's ${srcLevel}`\n const finalCopySource = `${sourceBucket}/${sourceKeyPrefix}${source.key}`;\n const finalCopyDestination = `${destinationKeyPrefix}${destination.key}`;\n logger.debug(`copying \"${finalCopySource}\" to \"${finalCopyDestination}\".`);\n await serviceCopy({\n source: finalCopySource,\n destination: finalCopyDestination,\n bucket: destBucket,\n s3Config,\n });\n return {\n key: destination.key,\n };\n};\nconst serviceCopy = async ({ source, destination, bucket, s3Config, }) => {\n await copyObject({\n ...s3Config,\n userAgentValue: getStorageUserAgentValue(StorageAction.Copy),\n }, {\n Bucket: bucket,\n CopySource: source,\n Key: destination,\n MetadataDirective: 'COPY', // Copies over metadata like contentType as well\n });\n};\n"],"names":[],"mappings":"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"}
@@ -10,25 +10,24 @@ import '../../../../errors/types/validation.mjs';
10
10
  import { logger } from '../../../../utils/logger.mjs';
11
11
  import { validateStorageOperationInput } from '../../utils/validateStorageOperationInput.mjs';
12
12
  import { STORAGE_INPUT_KEY } from '../../utils/constants.mjs';
13
- import '../../utils/client/base.mjs';
14
- import '../../utils/client/getObject.mjs';
15
- import '../../utils/client/listObjectsV2.mjs';
16
- import '../../utils/client/putObject.mjs';
17
- import '../../utils/client/createMultipartUpload.mjs';
18
- import '../../utils/client/uploadPart.mjs';
19
- import '../../utils/client/completeMultipartUpload.mjs';
20
- import '../../utils/client/listParts.mjs';
21
- import '../../utils/client/abortMultipartUpload.mjs';
22
- import '../../utils/client/copyObject.mjs';
23
- import { headObject } from '../../utils/client/headObject.mjs';
24
- import '../../utils/client/deleteObject.mjs';
13
+ import '../../utils/client/s3data/base.mjs';
14
+ import '../../utils/client/s3data/getObject.mjs';
15
+ import '../../utils/client/s3data/listObjectsV2.mjs';
16
+ import '../../utils/client/s3data/putObject.mjs';
17
+ import '../../utils/client/s3data/createMultipartUpload.mjs';
18
+ import '../../utils/client/s3data/uploadPart.mjs';
19
+ import '../../utils/client/s3data/completeMultipartUpload.mjs';
20
+ import '../../utils/client/s3data/listParts.mjs';
21
+ import '../../utils/client/s3data/abortMultipartUpload.mjs';
22
+ import '../../utils/client/s3data/copyObject.mjs';
23
+ import { headObject } from '../../utils/client/s3data/headObject.mjs';
24
+ import '../../utils/client/s3data/deleteObject.mjs';
25
25
  import { getStorageUserAgentValue } from '../../utils/userAgent.mjs';
26
26
 
27
27
  // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
28
28
  // SPDX-License-Identifier: Apache-2.0
29
29
  const getProperties = async (amplify, input, action) => {
30
- const { options: getPropertiesOptions } = input;
31
- const { s3Config, bucket, keyPrefix, identityId } = await resolveS3ConfigAndInput(amplify, getPropertiesOptions);
30
+ const { s3Config, bucket, keyPrefix, identityId } = await resolveS3ConfigAndInput(amplify, input);
32
31
  const { inputType, objectKey } = validateStorageOperationInput(input, identityId);
33
32
  const finalKey = inputType === STORAGE_INPUT_KEY ? keyPrefix + objectKey : objectKey;
34
33
  logger.debug(`get properties of ${objectKey} from ${finalKey}`);
@@ -1 +1 @@
1
- {"version":3,"file":"getProperties.mjs","sources":["../../../../../../src/providers/s3/apis/internal/getProperties.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { StorageAction } from '@aws-amplify/core/internals/utils';\nimport { resolveS3ConfigAndInput, validateStorageOperationInput, } from '../../utils';\nimport { headObject } from '../../utils/client';\nimport { getStorageUserAgentValue } from '../../utils/userAgent';\nimport { logger } from '../../../../utils';\nimport { STORAGE_INPUT_KEY } from '../../utils/constants';\nexport const getProperties = async (amplify, input, action) => {\n const { options: getPropertiesOptions } = input;\n const { s3Config, bucket, keyPrefix, identityId } = await resolveS3ConfigAndInput(amplify, getPropertiesOptions);\n const { inputType, objectKey } = validateStorageOperationInput(input, identityId);\n const finalKey = inputType === STORAGE_INPUT_KEY ? keyPrefix + objectKey : objectKey;\n logger.debug(`get properties of ${objectKey} from ${finalKey}`);\n const response = await headObject({\n ...s3Config,\n userAgentValue: getStorageUserAgentValue(action ?? StorageAction.GetProperties),\n }, {\n Bucket: bucket,\n Key: finalKey,\n });\n const result = {\n contentType: response.ContentType,\n size: response.ContentLength,\n eTag: response.ETag,\n lastModified: response.LastModified,\n metadata: response.Metadata,\n versionId: response.VersionId,\n };\n return inputType === STORAGE_INPUT_KEY\n ? { key: objectKey, ...result }\n : { path: objectKey, ...result };\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AACA;AAOY,MAAC,aAAa,GAAG,OAAO,OAAO,EAAE,KAAK,EAAE,MAAM,KAAK;AAC/D,IAAI,MAAM,EAAE,OAAO,EAAE,oBAAoB,EAAE,GAAG,KAAK,CAAC;AACpD,IAAI,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,MAAM,uBAAuB,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAC;AACrH,IAAI,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,6BAA6B,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;AACtF,IAAI,MAAM,QAAQ,GAAG,SAAS,KAAK,iBAAiB,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC;AACzF,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,kBAAkB,EAAE,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC;AACpE,IAAI,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC;AACtC,QAAQ,GAAG,QAAQ;AACnB,QAAQ,cAAc,EAAE,wBAAwB,CAAC,MAAM,IAAI,aAAa,CAAC,aAAa,CAAC;AACvF,KAAK,EAAE;AACP,QAAQ,MAAM,EAAE,MAAM;AACtB,QAAQ,GAAG,EAAE,QAAQ;AACrB,KAAK,CAAC,CAAC;AACP,IAAI,MAAM,MAAM,GAAG;AACnB,QAAQ,WAAW,EAAE,QAAQ,CAAC,WAAW;AACzC,QAAQ,IAAI,EAAE,QAAQ,CAAC,aAAa;AACpC,QAAQ,IAAI,EAAE,QAAQ,CAAC,IAAI;AAC3B,QAAQ,YAAY,EAAE,QAAQ,CAAC,YAAY;AAC3C,QAAQ,QAAQ,EAAE,QAAQ,CAAC,QAAQ;AACnC,QAAQ,SAAS,EAAE,QAAQ,CAAC,SAAS;AACrC,KAAK,CAAC;AACN,IAAI,OAAO,SAAS,KAAK,iBAAiB;AAC1C,UAAU,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,MAAM,EAAE;AACvC,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,MAAM,EAAE,CAAC;AACzC;;;;"}
1
+ {"version":3,"file":"getProperties.mjs","sources":["../../../../../../src/providers/s3/apis/internal/getProperties.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { StorageAction } from '@aws-amplify/core/internals/utils';\nimport { resolveS3ConfigAndInput, validateStorageOperationInput, } from '../../utils';\nimport { headObject } from '../../utils/client/s3data';\nimport { getStorageUserAgentValue } from '../../utils/userAgent';\nimport { logger } from '../../../../utils';\nimport { STORAGE_INPUT_KEY } from '../../utils/constants';\nexport const getProperties = async (amplify, input, action) => {\n const { s3Config, bucket, keyPrefix, identityId } = await resolveS3ConfigAndInput(amplify, input);\n const { inputType, objectKey } = validateStorageOperationInput(input, identityId);\n const finalKey = inputType === STORAGE_INPUT_KEY ? keyPrefix + objectKey : objectKey;\n logger.debug(`get properties of ${objectKey} from ${finalKey}`);\n const response = await headObject({\n ...s3Config,\n userAgentValue: getStorageUserAgentValue(action ?? StorageAction.GetProperties),\n }, {\n Bucket: bucket,\n Key: finalKey,\n });\n const result = {\n contentType: response.ContentType,\n size: response.ContentLength,\n eTag: response.ETag,\n lastModified: response.LastModified,\n metadata: response.Metadata,\n versionId: response.VersionId,\n };\n return inputType === STORAGE_INPUT_KEY\n ? { key: objectKey, ...result }\n : { path: objectKey, ...result };\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AACA;AAOY,MAAC,aAAa,GAAG,OAAO,OAAO,EAAE,KAAK,EAAE,MAAM,KAAK;AAC/D,IAAI,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,MAAM,uBAAuB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;AACtG,IAAI,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,6BAA6B,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;AACtF,IAAI,MAAM,QAAQ,GAAG,SAAS,KAAK,iBAAiB,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC;AACzF,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,kBAAkB,EAAE,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC;AACpE,IAAI,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC;AACtC,QAAQ,GAAG,QAAQ;AACnB,QAAQ,cAAc,EAAE,wBAAwB,CAAC,MAAM,IAAI,aAAa,CAAC,aAAa,CAAC;AACvF,KAAK,EAAE;AACP,QAAQ,MAAM,EAAE,MAAM;AACtB,QAAQ,GAAG,EAAE,QAAQ;AACrB,KAAK,CAAC,CAAC;AACP,IAAI,MAAM,MAAM,GAAG;AACnB,QAAQ,WAAW,EAAE,QAAQ,CAAC,WAAW;AACzC,QAAQ,IAAI,EAAE,QAAQ,CAAC,aAAa;AACpC,QAAQ,IAAI,EAAE,QAAQ,CAAC,IAAI;AAC3B,QAAQ,YAAY,EAAE,QAAQ,CAAC,YAAY;AAC3C,QAAQ,QAAQ,EAAE,QAAQ,CAAC,QAAQ;AACnC,QAAQ,SAAS,EAAE,QAAQ,CAAC,SAAS;AACrC,KAAK,CAAC;AACN,IAAI,OAAO,SAAS,KAAK,iBAAiB;AAC1C,UAAU,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,MAAM,EAAE;AACvC,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,MAAM,EAAE,CAAC;AACzC;;;;"}