@aws-amplify/storage 6.6.0 → 6.6.1-storage-browser.37d5283.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 (361) 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 +20 -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 +59 -14
  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 +45 -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 +59 -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} +1 -1
  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} +2 -2
  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} +14 -9
  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} +1 -1
  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} +7 -2
  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} +1 -1
  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} +1 -1
  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} +1 -1
  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} +1 -1
  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} +2 -1
  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} +2 -1
  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} +3 -2
  64. package/dist/cjs/providers/s3/utils/client/s3data/uploadPart.js.map +1 -0
  65. package/dist/cjs/providers/s3/utils/client/utils/index.js +3 -1
  66. package/dist/cjs/providers/s3/utils/client/utils/index.js.map +1 -1
  67. package/dist/cjs/providers/s3/utils/client/utils/retryDecider.js +61 -0
  68. package/dist/cjs/providers/s3/utils/client/utils/retryDecider.js.map +1 -0
  69. package/dist/cjs/providers/s3/utils/crc32.js +37 -0
  70. package/dist/cjs/providers/s3/utils/crc32.js.map +1 -0
  71. package/dist/cjs/providers/s3/utils/crc32.native.js +11 -0
  72. package/dist/cjs/providers/s3/utils/crc32.native.js.map +1 -0
  73. package/dist/cjs/providers/s3/utils/resolveIdentityId.js +14 -0
  74. package/dist/cjs/providers/s3/utils/resolveIdentityId.js.map +1 -0
  75. package/dist/cjs/providers/s3/utils/resolveS3ConfigAndInput.js +74 -14
  76. package/dist/cjs/providers/s3/utils/resolveS3ConfigAndInput.js.map +1 -1
  77. package/dist/cjs/providers/s3/utils/validateStorageOperationInput.js +4 -1
  78. package/dist/cjs/providers/s3/utils/validateStorageOperationInput.js.map +1 -1
  79. package/dist/cjs/providers/s3/utils/validateStorageOperationInputWithPrefix.js +4 -1
  80. package/dist/cjs/providers/s3/utils/validateStorageOperationInputWithPrefix.js.map +1 -1
  81. package/dist/cjs/storageBrowser/apis/constants.js +9 -0
  82. package/dist/cjs/storageBrowser/apis/constants.js.map +1 -0
  83. package/dist/cjs/storageBrowser/apis/getDataAccess.js +57 -0
  84. package/dist/cjs/storageBrowser/apis/getDataAccess.js.map +1 -0
  85. package/dist/cjs/storageBrowser/apis/listCallerAccessGrants.js +79 -0
  86. package/dist/cjs/storageBrowser/apis/listCallerAccessGrants.js.map +1 -0
  87. package/dist/cjs/storageBrowser/apis/types.js +6 -0
  88. package/dist/cjs/storageBrowser/apis/types.js.map +1 -0
  89. package/dist/cjs/storageBrowser/index.js +11 -0
  90. package/dist/cjs/storageBrowser/index.js.map +1 -0
  91. package/dist/cjs/storageBrowser/locationCredentialsStore/constants.js +9 -0
  92. package/dist/cjs/storageBrowser/locationCredentialsStore/constants.js.map +1 -0
  93. package/dist/cjs/storageBrowser/locationCredentialsStore/create.js +36 -0
  94. package/dist/cjs/storageBrowser/locationCredentialsStore/create.js.map +1 -0
  95. package/dist/cjs/storageBrowser/locationCredentialsStore/index.js +9 -0
  96. package/dist/cjs/storageBrowser/locationCredentialsStore/index.js.map +1 -0
  97. package/dist/cjs/storageBrowser/locationCredentialsStore/registry.js +58 -0
  98. package/dist/cjs/storageBrowser/locationCredentialsStore/registry.js.map +1 -0
  99. package/dist/cjs/storageBrowser/locationCredentialsStore/store.js +99 -0
  100. package/dist/cjs/storageBrowser/locationCredentialsStore/store.js.map +1 -0
  101. package/dist/cjs/storageBrowser/managedAuthConfigAdapter/createListLocationsHandler.js +15 -0
  102. package/dist/cjs/storageBrowser/managedAuthConfigAdapter/createListLocationsHandler.js.map +1 -0
  103. package/dist/cjs/storageBrowser/managedAuthConfigAdapter/createLocationCredentialsHandler.js +29 -0
  104. package/dist/cjs/storageBrowser/managedAuthConfigAdapter/createLocationCredentialsHandler.js.map +1 -0
  105. package/dist/cjs/storageBrowser/managedAuthConfigAdapter/createManagedAuthConfigAdapter.js +32 -0
  106. package/dist/cjs/storageBrowser/managedAuthConfigAdapter/createManagedAuthConfigAdapter.js.map +1 -0
  107. package/dist/cjs/storageBrowser/managedAuthConfigAdapter/index.js +9 -0
  108. package/dist/cjs/storageBrowser/managedAuthConfigAdapter/index.js.map +1 -0
  109. package/dist/cjs/storageBrowser/types.js +6 -0
  110. package/dist/cjs/storageBrowser/types.js.map +1 -0
  111. package/dist/esm/errors/constants.d.ts +1 -0
  112. package/dist/esm/errors/constants.mjs +6 -0
  113. package/dist/esm/errors/constants.mjs.map +1 -0
  114. package/dist/esm/errors/types/validation.d.ts +6 -1
  115. package/dist/esm/errors/types/validation.mjs +20 -0
  116. package/dist/esm/errors/types/validation.mjs.map +1 -1
  117. package/dist/esm/providers/s3/apis/downloadData.mjs +13 -13
  118. package/dist/esm/providers/s3/apis/downloadData.mjs.map +1 -1
  119. package/dist/esm/providers/s3/apis/internal/copy.mjs +69 -24
  120. package/dist/esm/providers/s3/apis/internal/copy.mjs.map +1 -1
  121. package/dist/esm/providers/s3/apis/internal/getProperties.mjs +13 -14
  122. package/dist/esm/providers/s3/apis/internal/getProperties.mjs.map +1 -1
  123. package/dist/esm/providers/s3/apis/internal/getUrl.mjs +13 -13
  124. package/dist/esm/providers/s3/apis/internal/getUrl.mjs.map +1 -1
  125. package/dist/esm/providers/s3/apis/internal/list.mjs +13 -13
  126. package/dist/esm/providers/s3/apis/internal/list.mjs.map +1 -1
  127. package/dist/esm/providers/s3/apis/internal/remove.mjs +13 -14
  128. package/dist/esm/providers/s3/apis/internal/remove.mjs.map +1 -1
  129. package/dist/esm/providers/s3/apis/uploadData/multipart/initialUpload.d.ts +2 -1
  130. package/dist/esm/providers/s3/apis/uploadData/multipart/initialUpload.mjs +32 -12
  131. package/dist/esm/providers/s3/apis/uploadData/multipart/initialUpload.mjs.map +1 -1
  132. package/dist/esm/providers/s3/apis/uploadData/multipart/uploadCache.d.ts +3 -1
  133. package/dist/esm/providers/s3/apis/uploadData/multipart/uploadCache.mjs +13 -12
  134. package/dist/esm/providers/s3/apis/uploadData/multipart/uploadCache.mjs.map +1 -1
  135. package/dist/esm/providers/s3/apis/uploadData/multipart/uploadHandlers.mjs +27 -16
  136. package/dist/esm/providers/s3/apis/uploadData/multipart/uploadHandlers.mjs.map +1 -1
  137. package/dist/esm/providers/s3/apis/uploadData/multipart/uploadPartExecutor.d.ts +3 -2
  138. package/dist/esm/providers/s3/apis/uploadData/multipart/uploadPartExecutor.mjs +27 -18
  139. package/dist/esm/providers/s3/apis/uploadData/multipart/uploadPartExecutor.mjs.map +1 -1
  140. package/dist/esm/providers/s3/apis/uploadData/putObjectJob.mjs +30 -17
  141. package/dist/esm/providers/s3/apis/uploadData/putObjectJob.mjs.map +1 -1
  142. package/dist/esm/providers/s3/apis/uploadData/validateObjectNotExists.d.ts +3 -0
  143. package/dist/esm/providers/s3/apis/uploadData/validateObjectNotExists.mjs +34 -0
  144. package/dist/esm/providers/s3/apis/uploadData/validateObjectNotExists.mjs.map +1 -0
  145. package/dist/esm/providers/s3/types/index.d.ts +1 -1
  146. package/dist/esm/providers/s3/types/inputs.d.ts +5 -2
  147. package/dist/esm/providers/s3/types/options.d.ts +38 -1
  148. package/dist/esm/providers/s3/utils/client/s3control/base.d.ts +31 -0
  149. package/dist/esm/providers/s3/utils/client/s3control/base.mjs +48 -0
  150. package/dist/esm/providers/s3/utils/client/s3control/base.mjs.map +1 -0
  151. package/dist/esm/providers/s3/utils/client/s3control/getDataAccess.d.ts +26 -0
  152. package/dist/esm/providers/s3/utils/client/s3control/getDataAccess.mjs +63 -0
  153. package/dist/esm/providers/s3/utils/client/s3control/getDataAccess.mjs.map +1 -0
  154. package/dist/esm/providers/s3/utils/client/s3control/index.d.ts +2 -0
  155. package/dist/esm/providers/s3/utils/client/s3control/index.mjs +3 -0
  156. package/dist/esm/providers/s3/utils/client/s3control/index.mjs.map +1 -0
  157. package/dist/esm/providers/s3/utils/client/s3control/listCallerAccessGrants.d.ts +26 -0
  158. package/dist/esm/providers/s3/utils/client/s3control/listCallerAccessGrants.mjs +64 -0
  159. package/dist/esm/providers/s3/utils/client/s3control/listCallerAccessGrants.mjs.map +1 -0
  160. package/dist/esm/providers/s3/utils/client/s3control/types.d.ts +176 -0
  161. package/dist/esm/providers/s3/utils/client/{abortMultipartUpload.d.ts → s3data/abortMultipartUpload.d.ts} +4 -4
  162. package/dist/esm/providers/s3/utils/client/{abortMultipartUpload.mjs → s3data/abortMultipartUpload.mjs} +6 -6
  163. package/dist/esm/providers/s3/utils/client/s3data/abortMultipartUpload.mjs.map +1 -0
  164. package/dist/esm/providers/s3/utils/client/{base.d.ts → s3data/base.d.ts} +1 -1
  165. package/dist/esm/providers/s3/utils/client/{base.mjs → s3data/base.mjs} +5 -5
  166. package/dist/esm/providers/s3/utils/client/s3data/base.mjs.map +1 -0
  167. package/dist/esm/providers/s3/utils/client/{completeMultipartUpload.d.ts → s3data/completeMultipartUpload.d.ts} +6 -6
  168. package/dist/esm/providers/s3/utils/client/{completeMultipartUpload.mjs → s3data/completeMultipartUpload.mjs} +20 -14
  169. package/dist/esm/providers/s3/utils/client/s3data/completeMultipartUpload.mjs.map +1 -0
  170. package/dist/esm/providers/s3/utils/client/{copyObject.d.ts → s3data/copyObject.d.ts} +4 -4
  171. package/dist/esm/providers/s3/utils/client/{copyObject.mjs → s3data/copyObject.mjs} +6 -6
  172. package/dist/esm/providers/s3/utils/client/s3data/copyObject.mjs.map +1 -0
  173. package/dist/esm/providers/s3/utils/client/{createMultipartUpload.d.ts → s3data/createMultipartUpload.d.ts} +4 -4
  174. package/dist/esm/providers/s3/utils/client/{createMultipartUpload.mjs → s3data/createMultipartUpload.mjs} +12 -7
  175. package/dist/esm/providers/s3/utils/client/s3data/createMultipartUpload.mjs.map +1 -0
  176. package/dist/esm/providers/s3/utils/client/{deleteObject.d.ts → s3data/deleteObject.d.ts} +4 -4
  177. package/dist/esm/providers/s3/utils/client/{deleteObject.mjs → s3data/deleteObject.mjs} +6 -6
  178. package/dist/esm/providers/s3/utils/client/s3data/deleteObject.mjs.map +1 -0
  179. package/dist/esm/providers/s3/utils/client/{getObject.d.ts → s3data/getObject.d.ts} +4 -4
  180. package/dist/esm/providers/s3/utils/client/{getObject.mjs → s3data/getObject.mjs} +7 -7
  181. package/dist/esm/providers/s3/utils/client/s3data/getObject.mjs.map +1 -0
  182. package/dist/esm/providers/s3/utils/client/{headObject.d.ts → s3data/headObject.d.ts} +4 -4
  183. package/dist/esm/providers/s3/utils/client/{headObject.mjs → s3data/headObject.mjs} +6 -6
  184. package/dist/esm/providers/s3/utils/client/s3data/headObject.mjs.map +1 -0
  185. package/dist/esm/providers/s3/utils/client/{listObjectsV2.d.ts → s3data/listObjectsV2.d.ts} +4 -4
  186. package/dist/esm/providers/s3/utils/client/{listObjectsV2.mjs → s3data/listObjectsV2.mjs} +6 -6
  187. package/dist/esm/providers/s3/utils/client/s3data/listObjectsV2.mjs.map +1 -0
  188. package/dist/esm/providers/s3/utils/client/{listParts.d.ts → s3data/listParts.d.ts} +4 -4
  189. package/dist/esm/providers/s3/utils/client/{listParts.mjs → s3data/listParts.mjs} +7 -6
  190. package/dist/esm/providers/s3/utils/client/s3data/listParts.mjs.map +1 -0
  191. package/dist/esm/providers/s3/utils/client/{putObject.d.ts → s3data/putObject.d.ts} +5 -5
  192. package/dist/esm/providers/s3/utils/client/{putObject.mjs → s3data/putObject.mjs} +7 -6
  193. package/dist/esm/providers/s3/utils/client/s3data/putObject.mjs.map +1 -0
  194. package/dist/esm/providers/s3/utils/client/s3data/types.mjs +2 -0
  195. package/dist/esm/providers/s3/utils/client/s3data/types.mjs.map +1 -0
  196. package/dist/esm/providers/s3/utils/client/{uploadPart.d.ts → s3data/uploadPart.d.ts} +5 -5
  197. package/dist/esm/providers/s3/utils/client/{uploadPart.mjs → s3data/uploadPart.mjs} +8 -7
  198. package/dist/esm/providers/s3/utils/client/s3data/uploadPart.mjs.map +1 -0
  199. package/dist/esm/providers/s3/utils/client/utils/index.d.ts +1 -0
  200. package/dist/esm/providers/s3/utils/client/utils/index.mjs +1 -0
  201. package/dist/esm/providers/s3/utils/client/utils/index.mjs.map +1 -1
  202. package/dist/esm/providers/s3/utils/client/utils/retryDecider.d.ts +13 -0
  203. package/dist/esm/providers/s3/utils/client/utils/retryDecider.mjs +59 -0
  204. package/dist/esm/providers/s3/utils/client/utils/retryDecider.mjs.map +1 -0
  205. package/dist/esm/providers/s3/utils/crc32.d.ts +6 -0
  206. package/dist/esm/providers/s3/utils/crc32.mjs +34 -0
  207. package/dist/esm/providers/s3/utils/crc32.mjs.map +1 -0
  208. package/dist/esm/providers/s3/utils/crc32.native.d.ts +2 -0
  209. package/dist/esm/providers/s3/utils/crc32.native.mjs +8 -0
  210. package/dist/esm/providers/s3/utils/crc32.native.mjs.map +1 -0
  211. package/dist/esm/providers/s3/utils/resolveIdentityId.d.ts +1 -0
  212. package/dist/esm/providers/s3/utils/resolveIdentityId.mjs +12 -0
  213. package/dist/esm/providers/s3/utils/resolveIdentityId.mjs.map +1 -0
  214. package/dist/esm/providers/s3/utils/resolveS3ConfigAndInput.d.ts +11 -2
  215. package/dist/esm/providers/s3/utils/resolveS3ConfigAndInput.mjs +72 -12
  216. package/dist/esm/providers/s3/utils/resolveS3ConfigAndInput.mjs.map +1 -1
  217. package/dist/esm/providers/s3/utils/validateStorageOperationInput.mjs +4 -1
  218. package/dist/esm/providers/s3/utils/validateStorageOperationInput.mjs.map +1 -1
  219. package/dist/esm/providers/s3/utils/validateStorageOperationInputWithPrefix.mjs +4 -1
  220. package/dist/esm/providers/s3/utils/validateStorageOperationInputWithPrefix.mjs.map +1 -1
  221. package/dist/esm/storageBrowser/apis/constants.d.ts +2 -0
  222. package/dist/esm/storageBrowser/apis/constants.mjs +7 -0
  223. package/dist/esm/storageBrowser/apis/constants.mjs.map +1 -0
  224. package/dist/esm/storageBrowser/apis/getDataAccess.d.ts +2 -0
  225. package/dist/esm/storageBrowser/apis/getDataAccess.mjs +57 -0
  226. package/dist/esm/storageBrowser/apis/getDataAccess.mjs.map +1 -0
  227. package/dist/esm/storageBrowser/apis/listCallerAccessGrants.d.ts +2 -0
  228. package/dist/esm/storageBrowser/apis/listCallerAccessGrants.mjs +79 -0
  229. package/dist/esm/storageBrowser/apis/listCallerAccessGrants.mjs.map +1 -0
  230. package/dist/esm/storageBrowser/apis/types.d.ts +18 -0
  231. package/dist/esm/storageBrowser/apis/types.mjs +2 -0
  232. package/dist/esm/storageBrowser/apis/types.mjs.map +1 -0
  233. package/dist/esm/storageBrowser/index.d.ts +6 -0
  234. package/dist/esm/storageBrowser/index.mjs +3 -0
  235. package/dist/esm/storageBrowser/index.mjs.map +1 -0
  236. package/dist/esm/storageBrowser/locationCredentialsStore/constants.d.ts +2 -0
  237. package/dist/esm/storageBrowser/locationCredentialsStore/constants.mjs +7 -0
  238. package/dist/esm/storageBrowser/locationCredentialsStore/constants.mjs.map +1 -0
  239. package/dist/esm/storageBrowser/locationCredentialsStore/create.d.ts +2 -0
  240. package/dist/esm/storageBrowser/locationCredentialsStore/create.mjs +34 -0
  241. package/dist/esm/storageBrowser/locationCredentialsStore/create.mjs.map +1 -0
  242. package/dist/esm/storageBrowser/locationCredentialsStore/index.d.ts +1 -0
  243. package/dist/esm/storageBrowser/locationCredentialsStore/index.mjs +2 -0
  244. package/dist/esm/storageBrowser/locationCredentialsStore/index.mjs.map +1 -0
  245. package/dist/esm/storageBrowser/locationCredentialsStore/registry.d.ts +23 -0
  246. package/dist/esm/storageBrowser/locationCredentialsStore/registry.mjs +54 -0
  247. package/dist/esm/storageBrowser/locationCredentialsStore/registry.mjs.map +1 -0
  248. package/dist/esm/storageBrowser/locationCredentialsStore/store.d.ts +35 -0
  249. package/dist/esm/storageBrowser/locationCredentialsStore/store.mjs +95 -0
  250. package/dist/esm/storageBrowser/locationCredentialsStore/store.mjs.map +1 -0
  251. package/dist/esm/storageBrowser/managedAuthConfigAdapter/createListLocationsHandler.d.ts +8 -0
  252. package/dist/esm/storageBrowser/managedAuthConfigAdapter/createListLocationsHandler.mjs +13 -0
  253. package/dist/esm/storageBrowser/managedAuthConfigAdapter/createListLocationsHandler.mjs.map +1 -0
  254. package/dist/esm/storageBrowser/managedAuthConfigAdapter/createLocationCredentialsHandler.d.ts +8 -0
  255. package/dist/esm/storageBrowser/managedAuthConfigAdapter/createLocationCredentialsHandler.mjs +27 -0
  256. package/dist/esm/storageBrowser/managedAuthConfigAdapter/createLocationCredentialsHandler.mjs.map +1 -0
  257. package/dist/esm/storageBrowser/managedAuthConfigAdapter/createManagedAuthConfigAdapter.d.ts +19 -0
  258. package/dist/esm/storageBrowser/managedAuthConfigAdapter/createManagedAuthConfigAdapter.mjs +30 -0
  259. package/dist/esm/storageBrowser/managedAuthConfigAdapter/createManagedAuthConfigAdapter.mjs.map +1 -0
  260. package/dist/esm/storageBrowser/managedAuthConfigAdapter/index.d.ts +1 -0
  261. package/dist/esm/storageBrowser/managedAuthConfigAdapter/index.mjs +2 -0
  262. package/dist/esm/storageBrowser/managedAuthConfigAdapter/index.mjs.map +1 -0
  263. package/dist/esm/storageBrowser/types.d.ts +92 -0
  264. package/dist/esm/storageBrowser/types.mjs +2 -0
  265. package/dist/esm/storageBrowser/types.mjs.map +1 -0
  266. package/dist/esm/types/inputs.d.ts +3 -3
  267. package/package.json +117 -107
  268. package/src/errors/constants.ts +4 -0
  269. package/src/errors/types/validation.ts +21 -0
  270. package/src/providers/s3/apis/downloadData.ts +2 -2
  271. package/src/providers/s3/apis/internal/copy.ts +77 -23
  272. package/src/providers/s3/apis/internal/getProperties.ts +2 -3
  273. package/src/providers/s3/apis/internal/getUrl.ts +2 -2
  274. package/src/providers/s3/apis/internal/list.ts +3 -3
  275. package/src/providers/s3/apis/internal/remove.ts +2 -3
  276. package/src/providers/s3/apis/uploadData/multipart/initialUpload.ts +30 -1
  277. package/src/providers/s3/apis/uploadData/multipart/uploadCache.ts +4 -1
  278. package/src/providers/s3/apis/uploadData/multipart/uploadHandlers.ts +36 -17
  279. package/src/providers/s3/apis/uploadData/multipart/uploadPartExecutor.ts +23 -7
  280. package/src/providers/s3/apis/uploadData/putObjectJob.ts +22 -5
  281. package/src/providers/s3/apis/uploadData/validateObjectNotExists.ts +25 -0
  282. package/src/providers/s3/types/index.ts +2 -0
  283. package/src/providers/s3/types/inputs.ts +11 -1
  284. package/src/providers/s3/types/options.ts +51 -1
  285. package/src/providers/s3/utils/client/s3control/base.ts +70 -0
  286. package/src/providers/s3/utils/client/s3control/getDataAccess.ts +97 -0
  287. package/src/providers/s3/utils/client/s3control/index.ts +13 -0
  288. package/src/providers/s3/utils/client/s3control/listCallerAccessGrants.ts +104 -0
  289. package/src/providers/s3/utils/client/s3control/types.ts +213 -0
  290. package/src/providers/s3/utils/client/{abortMultipartUpload.ts → s3data/abortMultipartUpload.ts} +4 -3
  291. package/src/providers/s3/utils/client/{base.ts → s3data/base.ts} +2 -3
  292. package/src/providers/s3/utils/client/{completeMultipartUpload.ts → s3data/completeMultipartUpload.ts} +29 -18
  293. package/src/providers/s3/utils/client/{copyObject.ts → s3data/copyObject.ts} +4 -3
  294. package/src/providers/s3/utils/client/{createMultipartUpload.ts → s3data/createMultipartUpload.ts} +15 -8
  295. package/src/providers/s3/utils/client/{deleteObject.ts → s3data/deleteObject.ts} +7 -6
  296. package/src/providers/s3/utils/client/{getObject.ts → s3data/getObject.ts} +8 -7
  297. package/src/providers/s3/utils/client/{headObject.ts → s3data/headObject.ts} +4 -3
  298. package/src/providers/s3/utils/client/{listObjectsV2.ts → s3data/listObjectsV2.ts} +7 -6
  299. package/src/providers/s3/utils/client/{listParts.ts → s3data/listParts.ts} +9 -7
  300. package/src/providers/s3/utils/client/{putObject.ts → s3data/putObject.ts} +6 -3
  301. package/src/providers/s3/utils/client/{uploadPart.ts → s3data/uploadPart.ts} +13 -5
  302. package/src/providers/s3/utils/client/utils/index.ts +1 -0
  303. package/src/providers/s3/utils/client/utils/retryDecider.ts +81 -0
  304. package/src/providers/s3/utils/crc32.native.ts +11 -0
  305. package/src/providers/s3/utils/crc32.ts +51 -0
  306. package/src/providers/s3/utils/resolveIdentityId.ts +11 -0
  307. package/src/providers/s3/utils/resolveS3ConfigAndInput.ts +142 -16
  308. package/src/providers/s3/utils/validateStorageOperationInput.ts +5 -1
  309. package/src/providers/s3/utils/validateStorageOperationInputWithPrefix.ts +5 -1
  310. package/src/storageBrowser/apis/constants.ts +5 -0
  311. package/src/storageBrowser/apis/getDataAccess.ts +79 -0
  312. package/src/storageBrowser/apis/listCallerAccessGrants.ts +107 -0
  313. package/src/storageBrowser/apis/types.ts +33 -0
  314. package/src/storageBrowser/index.ts +25 -0
  315. package/src/storageBrowser/locationCredentialsStore/constants.ts +5 -0
  316. package/src/storageBrowser/locationCredentialsStore/create.ts +54 -0
  317. package/src/storageBrowser/locationCredentialsStore/index.ts +4 -0
  318. package/src/storageBrowser/locationCredentialsStore/registry.ts +88 -0
  319. package/src/storageBrowser/locationCredentialsStore/store.ts +161 -0
  320. package/src/storageBrowser/managedAuthConfigAdapter/createListLocationsHandler.ts +21 -0
  321. package/src/storageBrowser/managedAuthConfigAdapter/createLocationCredentialsHandler.ts +40 -0
  322. package/src/storageBrowser/managedAuthConfigAdapter/createManagedAuthConfigAdapter.ts +53 -0
  323. package/src/storageBrowser/managedAuthConfigAdapter/index.ts +8 -0
  324. package/src/storageBrowser/types.ts +117 -0
  325. package/src/types/inputs.ts +7 -3
  326. package/dist/cjs/providers/s3/utils/client/abortMultipartUpload.js.map +0 -1
  327. package/dist/cjs/providers/s3/utils/client/base.js.map +0 -1
  328. package/dist/cjs/providers/s3/utils/client/completeMultipartUpload.js.map +0 -1
  329. package/dist/cjs/providers/s3/utils/client/copyObject.js.map +0 -1
  330. package/dist/cjs/providers/s3/utils/client/createMultipartUpload.js.map +0 -1
  331. package/dist/cjs/providers/s3/utils/client/deleteObject.js.map +0 -1
  332. package/dist/cjs/providers/s3/utils/client/getObject.js.map +0 -1
  333. package/dist/cjs/providers/s3/utils/client/headObject.js.map +0 -1
  334. package/dist/cjs/providers/s3/utils/client/index.js.map +0 -1
  335. package/dist/cjs/providers/s3/utils/client/listObjectsV2.js.map +0 -1
  336. package/dist/cjs/providers/s3/utils/client/listParts.js.map +0 -1
  337. package/dist/cjs/providers/s3/utils/client/putObject.js.map +0 -1
  338. package/dist/cjs/providers/s3/utils/client/types.js.map +0 -1
  339. package/dist/cjs/providers/s3/utils/client/uploadPart.js.map +0 -1
  340. package/dist/esm/providers/s3/utils/client/abortMultipartUpload.mjs.map +0 -1
  341. package/dist/esm/providers/s3/utils/client/base.mjs.map +0 -1
  342. package/dist/esm/providers/s3/utils/client/completeMultipartUpload.mjs.map +0 -1
  343. package/dist/esm/providers/s3/utils/client/copyObject.mjs.map +0 -1
  344. package/dist/esm/providers/s3/utils/client/createMultipartUpload.mjs.map +0 -1
  345. package/dist/esm/providers/s3/utils/client/deleteObject.mjs.map +0 -1
  346. package/dist/esm/providers/s3/utils/client/getObject.mjs.map +0 -1
  347. package/dist/esm/providers/s3/utils/client/headObject.mjs.map +0 -1
  348. package/dist/esm/providers/s3/utils/client/listObjectsV2.mjs.map +0 -1
  349. package/dist/esm/providers/s3/utils/client/listParts.mjs.map +0 -1
  350. package/dist/esm/providers/s3/utils/client/putObject.mjs.map +0 -1
  351. package/dist/esm/providers/s3/utils/client/uploadPart.mjs.map +0 -1
  352. /package/dist/cjs/providers/s3/utils/client/{types.js → s3control/types.js} +0 -0
  353. /package/dist/cjs/providers/s3/utils/client/{index.js → s3data/index.js} +0 -0
  354. /package/dist/esm/providers/s3/utils/client/{types.mjs → s3control/types.mjs} +0 -0
  355. /package/dist/esm/providers/s3/utils/client/{types.mjs.map → s3control/types.mjs.map} +0 -0
  356. /package/dist/esm/providers/s3/utils/client/{index.d.ts → s3data/index.d.ts} +0 -0
  357. /package/dist/esm/providers/s3/utils/client/{index.mjs → s3data/index.mjs} +0 -0
  358. /package/dist/esm/providers/s3/utils/client/{index.mjs.map → s3data/index.mjs.map} +0 -0
  359. /package/dist/esm/providers/s3/utils/client/{types.d.ts → s3data/types.d.ts} +0 -0
  360. /package/src/providers/s3/utils/client/{index.ts → s3data/index.ts} +0 -0
  361. /package/src/providers/s3/utils/client/{types.ts → s3data/types.ts} +0 -0
@@ -0,0 +1,34 @@
1
+ import { StorageError } from '../../../../errors/StorageError.mjs';
2
+ import '../../utils/client/s3data/base.mjs';
3
+ import '../../utils/client/s3data/getObject.mjs';
4
+ import '../../utils/client/s3data/listObjectsV2.mjs';
5
+ import '../../utils/client/s3data/putObject.mjs';
6
+ import '../../utils/client/s3data/createMultipartUpload.mjs';
7
+ import '../../utils/client/s3data/uploadPart.mjs';
8
+ import '../../utils/client/s3data/completeMultipartUpload.mjs';
9
+ import '../../utils/client/s3data/listParts.mjs';
10
+ import '../../utils/client/s3data/abortMultipartUpload.mjs';
11
+ import '../../utils/client/s3data/copyObject.mjs';
12
+ import { headObject } from '../../utils/client/s3data/headObject.mjs';
13
+ import '../../utils/client/s3data/deleteObject.mjs';
14
+
15
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
16
+ // SPDX-License-Identifier: Apache-2.0
17
+ const validateObjectNotExists = async (s3Config, input) => {
18
+ try {
19
+ await headObject(s3Config, input);
20
+ throw new StorageError({
21
+ name: 'PreconditionFailed',
22
+ message: 'At least one of the pre-conditions you specified did not hold',
23
+ });
24
+ }
25
+ catch (error) {
26
+ const serviceError = error;
27
+ if (serviceError.name !== 'NotFound') {
28
+ throw error;
29
+ }
30
+ }
31
+ };
32
+
33
+ export { validateObjectNotExists };
34
+ //# sourceMappingURL=validateObjectNotExists.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validateObjectNotExists.mjs","sources":["../../../../../../src/providers/s3/apis/uploadData/validateObjectNotExists.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { StorageError } from '../../../../errors/StorageError';\nimport { headObject } from '../../utils/client/s3data';\nexport const validateObjectNotExists = async (s3Config, input) => {\n try {\n await headObject(s3Config, input);\n throw new StorageError({\n name: 'PreconditionFailed',\n message: 'At least one of the pre-conditions you specified did not hold',\n });\n }\n catch (error) {\n const serviceError = error;\n if (serviceError.name !== 'NotFound') {\n throw error;\n }\n }\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA;AACA;AAGY,MAAC,uBAAuB,GAAG,OAAO,QAAQ,EAAE,KAAK,KAAK;AAClE,IAAI,IAAI;AACR,QAAQ,MAAM,UAAU,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;AAC1C,QAAQ,MAAM,IAAI,YAAY,CAAC;AAC/B,YAAY,IAAI,EAAE,oBAAoB;AACtC,YAAY,OAAO,EAAE,+DAA+D;AACpF,SAAS,CAAC,CAAC;AACX,KAAK;AACL,IAAI,OAAO,KAAK,EAAE;AAClB,QAAQ,MAAM,YAAY,GAAG,KAAK,CAAC;AACnC,QAAQ,IAAI,YAAY,CAAC,IAAI,KAAK,UAAU,EAAE;AAC9C,YAAY,MAAM,KAAK,CAAC;AACxB,SAAS;AACT,KAAK;AACL;;;;"}
@@ -1,4 +1,4 @@
1
- export { GetUrlOptionsWithKey, GetUrlOptionsWithPath, UploadDataOptionsWithPath, UploadDataOptionsWithKey, GetPropertiesOptionsWithKey, GetPropertiesOptionsWithPath, ListAllOptionsWithPrefix, ListPaginateOptionsWithPrefix, ListAllOptionsWithPath, ListPaginateOptionsWithPath, RemoveOptions, DownloadDataOptionsWithPath, DownloadDataOptionsWithKey, CopyDestinationOptionsWithKey, CopySourceOptionsWithKey, } from './options';
1
+ export { GetUrlOptionsWithKey, GetUrlOptionsWithPath, UploadDataOptionsWithPath, UploadDataOptionsWithKey, GetPropertiesOptionsWithKey, GetPropertiesOptionsWithPath, ListAllOptionsWithPrefix, ListPaginateOptionsWithPrefix, ListAllOptionsWithPath, ListPaginateOptionsWithPath, RemoveOptions, DownloadDataOptionsWithPath, DownloadDataOptionsWithKey, CopyDestinationOptionsWithKey, CopySourceOptionsWithKey, CopyWithPathSourceOptions, CopyWithPathDestinationOptions, } from './options';
2
2
  export { UploadDataOutput, UploadDataWithPathOutput, DownloadDataOutput, DownloadDataWithPathOutput, RemoveOutput, RemoveWithPathOutput, ListAllOutput, ListAllWithPathOutput, ListPaginateOutput, ListPaginateWithPathOutput, GetPropertiesOutput, GetPropertiesWithPathOutput, CopyOutput, CopyWithPathOutput, GetUrlOutput, GetUrlWithPathOutput, ListOutputItem, ListOutputItemWithPath, } from './outputs';
3
3
  export { CopyInput, CopyWithPathInput, GetPropertiesInput, GetPropertiesWithPathInput, GetUrlInput, GetUrlWithPathInput, RemoveWithPathInput, RemoveInput, DownloadDataInput, DownloadDataWithPathInput, UploadDataInput, UploadDataWithPathInput, ListAllInput, ListPaginateInput, ListAllWithPathInput, ListPaginateWithPathInput, } from './inputs';
4
4
  export { S3Exception } from './errors';
@@ -1,5 +1,6 @@
1
1
  import { StorageCopyInputWithKey, StorageCopyInputWithPath, StorageDownloadDataInputWithKey, StorageDownloadDataInputWithPath, StorageGetPropertiesInputWithKey, StorageGetPropertiesInputWithPath, StorageGetUrlInputWithKey, StorageGetUrlInputWithPath, StorageListInputWithPath, StorageListInputWithPrefix, StorageRemoveInputWithKey, StorageRemoveInputWithPath, StorageUploadDataInputWithKey, StorageUploadDataInputWithPath } from '../../../types';
2
- import { CopyDestinationOptionsWithKey, CopySourceOptionsWithKey, DownloadDataOptionsWithKey, DownloadDataOptionsWithPath, GetPropertiesOptionsWithKey, GetPropertiesOptionsWithPath, GetUrlOptionsWithKey, GetUrlOptionsWithPath, ListAllOptionsWithPath, ListAllOptionsWithPrefix, ListPaginateOptionsWithPath, ListPaginateOptionsWithPrefix, RemoveOptions, UploadDataOptionsWithKey, UploadDataOptionsWithPath } from '../types';
2
+ import { CopyDestinationOptionsWithKey, CopySourceOptionsWithKey, CopyWithPathDestinationOptions, CopyWithPathSourceOptions, DownloadDataOptionsWithKey, DownloadDataOptionsWithPath, GetPropertiesOptionsWithKey, GetPropertiesOptionsWithPath, GetUrlOptionsWithKey, GetUrlOptionsWithPath, ListAllOptionsWithPath, ListAllOptionsWithPrefix, ListPaginateOptionsWithPath, ListPaginateOptionsWithPrefix, RemoveOptions, UploadDataOptionsWithKey, UploadDataOptionsWithPath } from '../types';
3
+ import { LocationCredentialsProvider } from './options';
3
4
  /**
4
5
  * @deprecated Use {@link CopyWithPathInput} instead.
5
6
  * Input type for S3 copy API.
@@ -8,7 +9,9 @@ export type CopyInput = StorageCopyInputWithKey<CopySourceOptionsWithKey, CopyDe
8
9
  /**
9
10
  * Input type with path for S3 copy API.
10
11
  */
11
- export type CopyWithPathInput = StorageCopyInputWithPath;
12
+ export type CopyWithPathInput = StorageCopyInputWithPath<CopyWithPathSourceOptions, CopyWithPathDestinationOptions, {
13
+ locationCredentialsProvider?: LocationCredentialsProvider;
14
+ }>;
12
15
  /**
13
16
  * @deprecated Use {@link GetPropertiesWithPathInput} instead.
14
17
  * Input type for S3 getProperties API.
@@ -1,13 +1,37 @@
1
1
  import { StorageAccessLevel } from '@aws-amplify/core';
2
- import { SigningOptions } from '@aws-amplify/core/internals/aws-client-utils';
2
+ import { AWSCredentials } from '@aws-amplify/core/internals/utils';
3
+ import { CredentialsProviderOptions, SigningOptions } from '@aws-amplify/core/internals/aws-client-utils';
3
4
  import { TransferProgressEvent } from '../../../types';
4
5
  import { StorageListAllOptions, StorageListPaginateOptions, StorageSubpathStrategy } from '../../../types/options';
6
+ /**
7
+ * @internal
8
+ */
9
+ export type AWSTemporaryCredentials = Required<Pick<AWSCredentials, 'accessKeyId' | 'secretAccessKey' | 'sessionToken' | 'expiration'>>;
10
+ /**
11
+ * @internal
12
+ */
13
+ export type LocationCredentialsProvider = (options?: CredentialsProviderOptions) => Promise<{
14
+ credentials: AWSTemporaryCredentials;
15
+ }>;
16
+ export interface BucketInfo {
17
+ bucketName: string;
18
+ region: string;
19
+ }
20
+ export type StorageBucket = string | BucketInfo;
5
21
  interface CommonOptions {
6
22
  /**
7
23
  * Whether to use accelerate endpoint.
8
24
  * @default false
9
25
  */
10
26
  useAccelerateEndpoint?: boolean;
27
+ /**
28
+ * Async function returning AWS credentials for an API call. This function
29
+ * is invoked with S3 locations(bucket and path).
30
+ * If omitted, the global credentials configured in Amplify Auth
31
+ * would be used.
32
+ */
33
+ locationCredentialsProvider?: LocationCredentialsProvider;
34
+ bucket?: StorageBucket;
11
35
  }
12
36
  /**
13
37
  * Represents the content disposition of a file.
@@ -141,6 +165,11 @@ export type UploadDataOptions = CommonOptions & TransferOptions & {
141
165
  * @see https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingMetadata.html#UserMetadata
142
166
  */
143
167
  metadata?: Record<string, string>;
168
+ /**
169
+ * Enforces target key does not already exist in S3 before committing upload.
170
+ * @default false
171
+ */
172
+ preventOverwrite?: boolean;
144
173
  };
145
174
  /** @deprecated Use {@link UploadDataOptionsWithPath} instead. */
146
175
  export type UploadDataOptionsWithKey = WriteOptions & UploadDataOptions;
@@ -149,12 +178,20 @@ export type UploadDataOptionsWithPath = UploadDataOptions;
149
178
  export type CopySourceOptionsWithKey = ReadOptions & {
150
179
  /** @deprecated This may be removed in the next major version. */
151
180
  key: string;
181
+ bucket?: StorageBucket;
152
182
  };
153
183
  /** @deprecated This may be removed in the next major version. */
154
184
  export type CopyDestinationOptionsWithKey = WriteOptions & {
155
185
  /** @deprecated This may be removed in the next major version. */
156
186
  key: string;
187
+ bucket?: StorageBucket;
157
188
  };
189
+ export interface CopyWithPathSourceOptions {
190
+ bucket?: StorageBucket;
191
+ }
192
+ export interface CopyWithPathDestinationOptions {
193
+ bucket?: StorageBucket;
194
+ }
158
195
  /**
159
196
  * Internal only type for S3 API handlers' config parameter.
160
197
  *
@@ -0,0 +1,31 @@
1
+ import { EndpointResolverOptions } from '@aws-amplify/core/internals/aws-client-utils';
2
+ /**
3
+ * The service name used to sign requests if the API requires authentication.
4
+ */
5
+ export declare const SERVICE_NAME = "s3";
6
+ /**
7
+ * Options for endpoint resolver.
8
+ *
9
+ * @internal
10
+ */
11
+ export type S3EndpointResolverOptions = EndpointResolverOptions & {
12
+ /**
13
+ * Fully qualified custom endpoint for S3. If this is set, this endpoint will be used regardless of region.
14
+ */
15
+ customEndpoint?: string;
16
+ };
17
+ /**
18
+ * @internal
19
+ */
20
+ export declare const defaultConfig: {
21
+ service: string;
22
+ endpointResolver: (options: S3EndpointResolverOptions, apiInput?: {
23
+ AccountId?: string;
24
+ }) => {
25
+ url: URL;
26
+ };
27
+ retryDecider: (response?: import("@aws-amplify/core/internals/aws-client-utils").HttpResponse | undefined, error?: unknown, middlewareContext?: import("@aws-amplify/core/internals/aws-client-utils").MiddlewareContext | undefined) => Promise<import("@aws-amplify/core/internals/aws-client-utils").RetryDeciderOutput>;
28
+ computeDelay: (attempt: number) => number;
29
+ userAgentValue: string;
30
+ uriEscapePath: boolean;
31
+ };
@@ -0,0 +1,48 @@
1
+ import { getAmplifyUserAgent, AmplifyUrl } from '@aws-amplify/core/internals/utils';
2
+ import { jitteredBackoff, getDnsSuffix } from '@aws-amplify/core/internals/aws-client-utils';
3
+ import '../runtime/s3TransferHandler/fetch.mjs';
4
+ import 'fast-xml-parser';
5
+ import '../runtime/s3TransferHandler/xhr.mjs';
6
+ import 'buffer';
7
+ import { retryDecider } from '../utils/retryDecider.mjs';
8
+
9
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
10
+ // SPDX-License-Identifier: Apache-2.0
11
+ /**
12
+ * The service name used to sign requests if the API requires authentication.
13
+ */
14
+ const SERVICE_NAME = 's3';
15
+ /**
16
+ * The endpoint resolver function that returns the endpoint URL for a given region, and input parameters.
17
+ */
18
+ const endpointResolver = (options, apiInput) => {
19
+ const { region, customEndpoint } = options;
20
+ const { AccountId: accountId } = apiInput || {};
21
+ let endpoint;
22
+ // 1. get base endpoint
23
+ if (customEndpoint) {
24
+ endpoint = new AmplifyUrl(customEndpoint);
25
+ }
26
+ else if (accountId) {
27
+ // Control plane operations
28
+ endpoint = new AmplifyUrl(`https://${accountId}.s3-control.${region}.${getDnsSuffix(region)}`);
29
+ }
30
+ else {
31
+ endpoint = new AmplifyUrl(`https://s3-control.${region}.${getDnsSuffix(region)}`);
32
+ }
33
+ return { url: endpoint };
34
+ };
35
+ /**
36
+ * @internal
37
+ */
38
+ const defaultConfig = {
39
+ service: SERVICE_NAME,
40
+ endpointResolver,
41
+ retryDecider,
42
+ computeDelay: jitteredBackoff,
43
+ userAgentValue: getAmplifyUserAgent(),
44
+ uriEscapePath: false, // Required by S3. See https://github.com/aws/aws-sdk-js-v3/blob/9ba012dfa3a3429aa2db0f90b3b0b3a7a31f9bc3/packages/signature-v4/src/SignatureV4.ts#L76-L83
45
+ };
46
+
47
+ export { SERVICE_NAME, defaultConfig };
48
+ //# sourceMappingURL=base.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base.mjs","sources":["../../../../../../../src/providers/s3/utils/client/s3control/base.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { AmplifyUrl, getAmplifyUserAgent, } from '@aws-amplify/core/internals/utils';\nimport { getDnsSuffix, jitteredBackoff, } from '@aws-amplify/core/internals/aws-client-utils';\nimport { retryDecider } from '../utils';\n/**\n * The service name used to sign requests if the API requires authentication.\n */\nexport const SERVICE_NAME = 's3';\n/**\n * The endpoint resolver function that returns the endpoint URL for a given region, and input parameters.\n */\nconst endpointResolver = (options, apiInput) => {\n const { region, customEndpoint } = options;\n const { AccountId: accountId } = apiInput || {};\n let endpoint;\n // 1. get base endpoint\n if (customEndpoint) {\n endpoint = new AmplifyUrl(customEndpoint);\n }\n else if (accountId) {\n // Control plane operations\n endpoint = new AmplifyUrl(`https://${accountId}.s3-control.${region}.${getDnsSuffix(region)}`);\n }\n else {\n endpoint = new AmplifyUrl(`https://s3-control.${region}.${getDnsSuffix(region)}`);\n }\n return { url: endpoint };\n};\n/**\n * @internal\n */\nexport const defaultConfig = {\n service: SERVICE_NAME,\n endpointResolver,\n retryDecider,\n computeDelay: jitteredBackoff,\n userAgentValue: getAmplifyUserAgent(),\n uriEscapePath: false, // Required by S3. See https://github.com/aws/aws-sdk-js-v3/blob/9ba012dfa3a3429aa2db0f90b3b0b3a7a31f9bc3/packages/signature-v4/src/SignatureV4.ts#L76-L83\n};\n"],"names":[],"mappings":";;;;;;;;AAAA;AACA;AAIA;AACA;AACA;AACY,MAAC,YAAY,GAAG,KAAK;AACjC;AACA;AACA;AACA,MAAM,gBAAgB,GAAG,CAAC,OAAO,EAAE,QAAQ,KAAK;AAChD,IAAI,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,GAAG,OAAO,CAAC;AAC/C,IAAI,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,QAAQ,IAAI,EAAE,CAAC;AACpD,IAAI,IAAI,QAAQ,CAAC;AACjB;AACA,IAAI,IAAI,cAAc,EAAE;AACxB,QAAQ,QAAQ,GAAG,IAAI,UAAU,CAAC,cAAc,CAAC,CAAC;AAClD,KAAK;AACL,SAAS,IAAI,SAAS,EAAE;AACxB;AACA,QAAQ,QAAQ,GAAG,IAAI,UAAU,CAAC,CAAC,QAAQ,EAAE,SAAS,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;AACvG,KAAK;AACL,SAAS;AACT,QAAQ,QAAQ,GAAG,IAAI,UAAU,CAAC,CAAC,mBAAmB,EAAE,MAAM,CAAC,CAAC,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;AAC1F,KAAK;AACL,IAAI,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC;AAC7B,CAAC,CAAC;AACF;AACA;AACA;AACY,MAAC,aAAa,GAAG;AAC7B,IAAI,OAAO,EAAE,YAAY;AACzB,IAAI,gBAAgB;AACpB,IAAI,YAAY;AAChB,IAAI,YAAY,EAAE,eAAe;AACjC,IAAI,cAAc,EAAE,mBAAmB,EAAE;AACzC,IAAI,aAAa,EAAE,KAAK;AACxB;;;;"}
@@ -0,0 +1,26 @@
1
+ import { Endpoint, HttpResponse } from '@aws-amplify/core/internals/aws-client-utils';
2
+ import type { GetDataAccessCommandInput, GetDataAccessCommandOutput } from './types';
3
+ export type GetDataAccessInput = GetDataAccessCommandInput;
4
+ export type GetDataAccessOutput = GetDataAccessCommandOutput;
5
+ export declare const getDataAccess: (config: {
6
+ responseType?: "blob" | "text" | undefined;
7
+ service?: string | undefined;
8
+ endpointResolver?: (((options: import("@aws-amplify/core/internals/aws-client-utils").EndpointResolverOptions, input?: any) => Endpoint) & ((options: import("./base").S3EndpointResolverOptions, apiInput?: {
9
+ AccountId?: string | undefined;
10
+ } | undefined) => {
11
+ url: URL;
12
+ })) | undefined;
13
+ retryDecider?: (((response?: HttpResponse | undefined, error?: unknown, middlewareContext?: import("@aws-amplify/core/internals/aws-client-utils").MiddlewareContext | undefined) => Promise<import("@aws-amplify/core/internals/aws-client-utils").RetryDeciderOutput>) & ((response?: HttpResponse | undefined, error?: unknown, middlewareContext?: import("@aws-amplify/core/internals/aws-client-utils").MiddlewareContext | undefined) => Promise<import("@aws-amplify/core/internals/aws-client-utils").RetryDeciderOutput>)) | undefined;
14
+ computeDelay?: ((attempt: number) => number) | undefined;
15
+ userAgentValue?: string | undefined;
16
+ uriEscapePath?: boolean | undefined;
17
+ } & {
18
+ credentials: import("@aws-amplify/core/internals/aws-client-utils").Credentials | ((options?: import("@aws-amplify/core/internals/aws-client-utils").CredentialsProviderOptions | undefined) => Promise<import("@aws-amplify/core/internals/aws-client-utils").Credentials>);
19
+ region: string;
20
+ onDownloadProgress?: ((event: import("../../../../..").TransferProgressEvent) => void) | undefined;
21
+ onUploadProgress?: ((event: import("../../../../..").TransferProgressEvent) => void) | undefined;
22
+ abortSignal?: AbortSignal | undefined;
23
+ customEndpoint?: string | undefined;
24
+ userAgentHeader?: string | undefined;
25
+ maxAttempts?: number | undefined;
26
+ }, input: import("./types").GetDataAccessRequest) => Promise<GetDataAccessCommandOutput>;
@@ -0,0 +1,63 @@
1
+ import { parseMetadata } from '@aws-amplify/core/internals/aws-client-utils';
2
+ import { AmplifyUrl, AmplifyUrlSearchParams } from '@aws-amplify/core/internals/utils';
3
+ import { composeServiceApi } from '@aws-amplify/core/internals/aws-client-utils/composers';
4
+ import { parseXmlError, parseXmlBody } from '../utils/parsePayload.mjs';
5
+ import { s3TransferHandler } from '../runtime/s3TransferHandler/fetch.mjs';
6
+ import 'fast-xml-parser';
7
+ import '../runtime/s3TransferHandler/xhr.mjs';
8
+ import 'buffer';
9
+ import { buildStorageServiceError, map, deserializeTimestamp } from '../utils/deserializeHelpers.mjs';
10
+ import { assignStringVariables } from '../utils/serializeHelpers.mjs';
11
+ import { defaultConfig } from './base.mjs';
12
+
13
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
14
+ // SPDX-License-Identifier: Apache-2.0
15
+ const getDataAccessSerializer = (input, endpoint) => {
16
+ const headers = assignStringVariables({
17
+ 'x-amz-account-id': input.AccountId,
18
+ });
19
+ const query = assignStringVariables({
20
+ durationSeconds: input.DurationSeconds,
21
+ permission: input.Permission,
22
+ privilege: input.Privilege,
23
+ target: input.Target,
24
+ targetType: input.TargetType,
25
+ });
26
+ const url = new AmplifyUrl(endpoint.url.toString());
27
+ url.search = new AmplifyUrlSearchParams(query).toString();
28
+ // Ref: https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetDataAccess.html
29
+ url.pathname = '/v20180820/accessgrantsinstance/dataaccess';
30
+ return {
31
+ method: 'GET',
32
+ headers,
33
+ url,
34
+ };
35
+ };
36
+ const getDataAccessDeserializer = async (response) => {
37
+ if (response.statusCode >= 300) {
38
+ // error is always set when statusCode >= 300
39
+ const error = (await parseXmlError(response));
40
+ throw buildStorageServiceError(error, response.statusCode);
41
+ }
42
+ else {
43
+ const parsed = await parseXmlBody(response);
44
+ const contents = map(parsed, {
45
+ Credentials: ['Credentials', deserializeCredentials],
46
+ MatchedGrantTarget: 'MatchedGrantTarget',
47
+ });
48
+ return {
49
+ $metadata: parseMetadata(response),
50
+ ...contents,
51
+ };
52
+ }
53
+ };
54
+ const deserializeCredentials = (output) => map(output, {
55
+ AccessKeyId: 'AccessKeyId',
56
+ Expiration: ['Expiration', deserializeTimestamp],
57
+ SecretAccessKey: 'SecretAccessKey',
58
+ SessionToken: 'SessionToken',
59
+ });
60
+ const getDataAccess = composeServiceApi(s3TransferHandler, getDataAccessSerializer, getDataAccessDeserializer, { ...defaultConfig, responseType: 'text' });
61
+
62
+ export { getDataAccess };
63
+ //# sourceMappingURL=getDataAccess.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getDataAccess.mjs","sources":["../../../../../../../src/providers/s3/utils/client/s3control/getDataAccess.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { parseMetadata, } from '@aws-amplify/core/internals/aws-client-utils';\nimport { AmplifyUrl, AmplifyUrlSearchParams, } from '@aws-amplify/core/internals/utils';\nimport { composeServiceApi } from '@aws-amplify/core/internals/aws-client-utils/composers';\nimport { assignStringVariables, buildStorageServiceError, deserializeTimestamp, map, parseXmlBody, parseXmlError, s3TransferHandler, } from '../utils';\nimport { defaultConfig } from './base';\nconst getDataAccessSerializer = (input, endpoint) => {\n const headers = assignStringVariables({\n 'x-amz-account-id': input.AccountId,\n });\n const query = assignStringVariables({\n durationSeconds: input.DurationSeconds,\n permission: input.Permission,\n privilege: input.Privilege,\n target: input.Target,\n targetType: input.TargetType,\n });\n const url = new AmplifyUrl(endpoint.url.toString());\n url.search = new AmplifyUrlSearchParams(query).toString();\n // Ref: https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_GetDataAccess.html\n url.pathname = '/v20180820/accessgrantsinstance/dataaccess';\n return {\n method: 'GET',\n headers,\n url,\n };\n};\nconst getDataAccessDeserializer = async (response) => {\n if (response.statusCode >= 300) {\n // error is always set when statusCode >= 300\n const error = (await parseXmlError(response));\n throw buildStorageServiceError(error, response.statusCode);\n }\n else {\n const parsed = await parseXmlBody(response);\n const contents = map(parsed, {\n Credentials: ['Credentials', deserializeCredentials],\n MatchedGrantTarget: 'MatchedGrantTarget',\n });\n return {\n $metadata: parseMetadata(response),\n ...contents,\n };\n }\n};\nconst deserializeCredentials = (output) => map(output, {\n AccessKeyId: 'AccessKeyId',\n Expiration: ['Expiration', deserializeTimestamp],\n SecretAccessKey: 'SecretAccessKey',\n SessionToken: 'SessionToken',\n});\nexport const getDataAccess = composeServiceApi(s3TransferHandler, getDataAccessSerializer, getDataAccessDeserializer, { ...defaultConfig, responseType: 'text' });\n"],"names":[],"mappings":";;;;;;;;;;;;AAAA;AACA;AAMA,MAAM,uBAAuB,GAAG,CAAC,KAAK,EAAE,QAAQ,KAAK;AACrD,IAAI,MAAM,OAAO,GAAG,qBAAqB,CAAC;AAC1C,QAAQ,kBAAkB,EAAE,KAAK,CAAC,SAAS;AAC3C,KAAK,CAAC,CAAC;AACP,IAAI,MAAM,KAAK,GAAG,qBAAqB,CAAC;AACxC,QAAQ,eAAe,EAAE,KAAK,CAAC,eAAe;AAC9C,QAAQ,UAAU,EAAE,KAAK,CAAC,UAAU;AACpC,QAAQ,SAAS,EAAE,KAAK,CAAC,SAAS;AAClC,QAAQ,MAAM,EAAE,KAAK,CAAC,MAAM;AAC5B,QAAQ,UAAU,EAAE,KAAK,CAAC,UAAU;AACpC,KAAK,CAAC,CAAC;AACP,IAAI,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;AACxD,IAAI,GAAG,CAAC,MAAM,GAAG,IAAI,sBAAsB,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE,CAAC;AAC9D;AACA,IAAI,GAAG,CAAC,QAAQ,GAAG,4CAA4C,CAAC;AAChE,IAAI,OAAO;AACX,QAAQ,MAAM,EAAE,KAAK;AACrB,QAAQ,OAAO;AACf,QAAQ,GAAG;AACX,KAAK,CAAC;AACN,CAAC,CAAC;AACF,MAAM,yBAAyB,GAAG,OAAO,QAAQ,KAAK;AACtD,IAAI,IAAI,QAAQ,CAAC,UAAU,IAAI,GAAG,EAAE;AACpC;AACA,QAAQ,MAAM,KAAK,IAAI,MAAM,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC;AACtD,QAAQ,MAAM,wBAAwB,CAAC,KAAK,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC;AACnE,KAAK;AACL,SAAS;AACT,QAAQ,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,QAAQ,CAAC,CAAC;AACpD,QAAQ,MAAM,QAAQ,GAAG,GAAG,CAAC,MAAM,EAAE;AACrC,YAAY,WAAW,EAAE,CAAC,aAAa,EAAE,sBAAsB,CAAC;AAChE,YAAY,kBAAkB,EAAE,oBAAoB;AACpD,SAAS,CAAC,CAAC;AACX,QAAQ,OAAO;AACf,YAAY,SAAS,EAAE,aAAa,CAAC,QAAQ,CAAC;AAC9C,YAAY,GAAG,QAAQ;AACvB,SAAS,CAAC;AACV,KAAK;AACL,CAAC,CAAC;AACF,MAAM,sBAAsB,GAAG,CAAC,MAAM,KAAK,GAAG,CAAC,MAAM,EAAE;AACvD,IAAI,WAAW,EAAE,aAAa;AAC9B,IAAI,UAAU,EAAE,CAAC,YAAY,EAAE,oBAAoB,CAAC;AACpD,IAAI,eAAe,EAAE,iBAAiB;AACtC,IAAI,YAAY,EAAE,cAAc;AAChC,CAAC,CAAC,CAAC;AACS,MAAC,aAAa,GAAG,iBAAiB,CAAC,iBAAiB,EAAE,uBAAuB,EAAE,yBAAyB,EAAE,EAAE,GAAG,aAAa,EAAE,YAAY,EAAE,MAAM,EAAE;;;;"}
@@ -0,0 +1,2 @@
1
+ export { getDataAccess, GetDataAccessInput, GetDataAccessOutput, } from '../s3control/getDataAccess';
2
+ export { listCallerAccessGrants, ListCallerAccessGrantsInput, ListCallerAccessGrantsOutput, } from '../s3control/listCallerAccessGrants';
@@ -0,0 +1,3 @@
1
+ export { getDataAccess } from './getDataAccess.mjs';
2
+ export { listCallerAccessGrants } from './listCallerAccessGrants.mjs';
3
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
@@ -0,0 +1,26 @@
1
+ import { Endpoint, HttpResponse } from '@aws-amplify/core/internals/aws-client-utils';
2
+ import type { ListCallerAccessGrantsCommandInput, ListCallerAccessGrantsCommandOutput } from './types';
3
+ export type ListCallerAccessGrantsInput = ListCallerAccessGrantsCommandInput;
4
+ export type ListCallerAccessGrantsOutput = ListCallerAccessGrantsCommandOutput;
5
+ export declare const listCallerAccessGrants: (config: {
6
+ responseType?: "blob" | "text" | undefined;
7
+ service?: string | undefined;
8
+ endpointResolver?: (((options: import("@aws-amplify/core/internals/aws-client-utils").EndpointResolverOptions, input?: any) => Endpoint) & ((options: import("./base").S3EndpointResolverOptions, apiInput?: {
9
+ AccountId?: string | undefined;
10
+ } | undefined) => {
11
+ url: URL;
12
+ })) | undefined;
13
+ retryDecider?: (((response?: HttpResponse | undefined, error?: unknown, middlewareContext?: import("@aws-amplify/core/internals/aws-client-utils").MiddlewareContext | undefined) => Promise<import("@aws-amplify/core/internals/aws-client-utils").RetryDeciderOutput>) & ((response?: HttpResponse | undefined, error?: unknown, middlewareContext?: import("@aws-amplify/core/internals/aws-client-utils").MiddlewareContext | undefined) => Promise<import("@aws-amplify/core/internals/aws-client-utils").RetryDeciderOutput>)) | undefined;
14
+ computeDelay?: ((attempt: number) => number) | undefined;
15
+ userAgentValue?: string | undefined;
16
+ uriEscapePath?: boolean | undefined;
17
+ } & {
18
+ credentials: import("@aws-amplify/core/internals/aws-client-utils").Credentials | ((options?: import("@aws-amplify/core/internals/aws-client-utils").CredentialsProviderOptions | undefined) => Promise<import("@aws-amplify/core/internals/aws-client-utils").Credentials>);
19
+ region: string;
20
+ onDownloadProgress?: ((event: import("../../../../..").TransferProgressEvent) => void) | undefined;
21
+ onUploadProgress?: ((event: import("../../../../..").TransferProgressEvent) => void) | undefined;
22
+ abortSignal?: AbortSignal | undefined;
23
+ customEndpoint?: string | undefined;
24
+ userAgentHeader?: string | undefined;
25
+ maxAttempts?: number | undefined;
26
+ }, input: import("./types").ListCallerAccessGrantsRequest) => Promise<ListCallerAccessGrantsCommandOutput>;
@@ -0,0 +1,64 @@
1
+ import { parseMetadata } from '@aws-amplify/core/internals/aws-client-utils';
2
+ import { AmplifyUrl, AmplifyUrlSearchParams } from '@aws-amplify/core/internals/utils';
3
+ import { composeServiceApi } from '@aws-amplify/core/internals/aws-client-utils/composers';
4
+ import { parseXmlError, parseXmlBody } from '../utils/parsePayload.mjs';
5
+ import { s3TransferHandler } from '../runtime/s3TransferHandler/fetch.mjs';
6
+ import 'fast-xml-parser';
7
+ import '../runtime/s3TransferHandler/xhr.mjs';
8
+ import 'buffer';
9
+ import { buildStorageServiceError, map, emptyArrayGuard } from '../utils/deserializeHelpers.mjs';
10
+ import { assignStringVariables } from '../utils/serializeHelpers.mjs';
11
+ import { defaultConfig } from './base.mjs';
12
+
13
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
14
+ // SPDX-License-Identifier: Apache-2.0
15
+ const listCallerAccessGrantsSerializer = (input, endpoint) => {
16
+ const headers = assignStringVariables({
17
+ 'x-amz-account-id': input.AccountId,
18
+ });
19
+ const query = assignStringVariables({
20
+ grantscope: input.GrantScope,
21
+ maxResults: input.MaxResults,
22
+ nextToken: input.NextToken,
23
+ });
24
+ const url = new AmplifyUrl(endpoint.url.toString());
25
+ url.search = new AmplifyUrlSearchParams(query).toString();
26
+ // Ref: NA
27
+ url.pathname = '/v20180820/accessgrantsinstance/caller/grants';
28
+ return {
29
+ method: 'GET',
30
+ headers,
31
+ url,
32
+ };
33
+ };
34
+ const listCallerAccessGrantsDeserializer = async (response) => {
35
+ if (response.statusCode >= 300) {
36
+ // error is always set when statusCode >= 300
37
+ const error = (await parseXmlError(response));
38
+ throw buildStorageServiceError(error, response.statusCode);
39
+ }
40
+ else {
41
+ const parsed = await parseXmlBody(response);
42
+ const contents = map(parsed, {
43
+ CallerAccessGrantsList: [
44
+ 'CallerAccessGrantsList',
45
+ value => emptyArrayGuard(value.AccessGrantsInstance, deserializeAccessGrantsList),
46
+ ],
47
+ NextToken: 'NextToken',
48
+ });
49
+ return {
50
+ $metadata: parseMetadata(response),
51
+ ...contents,
52
+ };
53
+ }
54
+ };
55
+ const deserializeAccessGrantsList = (output) => output.map(deserializeCallerAccessGrant);
56
+ const deserializeCallerAccessGrant = (output) => map(output, {
57
+ ApplicationArn: 'ApplicationArn',
58
+ GrantScope: 'GrantScope',
59
+ Permission: 'Permission',
60
+ });
61
+ const listCallerAccessGrants = composeServiceApi(s3TransferHandler, listCallerAccessGrantsSerializer, listCallerAccessGrantsDeserializer, { ...defaultConfig, responseType: 'text' });
62
+
63
+ export { listCallerAccessGrants };
64
+ //# sourceMappingURL=listCallerAccessGrants.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"listCallerAccessGrants.mjs","sources":["../../../../../../../src/providers/s3/utils/client/s3control/listCallerAccessGrants.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { parseMetadata, } from '@aws-amplify/core/internals/aws-client-utils';\nimport { AmplifyUrl, AmplifyUrlSearchParams, } from '@aws-amplify/core/internals/utils';\nimport { composeServiceApi } from '@aws-amplify/core/internals/aws-client-utils/composers';\nimport { assignStringVariables, buildStorageServiceError, emptyArrayGuard, map, parseXmlBody, parseXmlError, s3TransferHandler, } from '../utils';\nimport { defaultConfig } from './base';\nconst listCallerAccessGrantsSerializer = (input, endpoint) => {\n const headers = assignStringVariables({\n 'x-amz-account-id': input.AccountId,\n });\n const query = assignStringVariables({\n grantscope: input.GrantScope,\n maxResults: input.MaxResults,\n nextToken: input.NextToken,\n });\n const url = new AmplifyUrl(endpoint.url.toString());\n url.search = new AmplifyUrlSearchParams(query).toString();\n // Ref: NA\n url.pathname = '/v20180820/accessgrantsinstance/caller/grants';\n return {\n method: 'GET',\n headers,\n url,\n };\n};\nconst listCallerAccessGrantsDeserializer = async (response) => {\n if (response.statusCode >= 300) {\n // error is always set when statusCode >= 300\n const error = (await parseXmlError(response));\n throw buildStorageServiceError(error, response.statusCode);\n }\n else {\n const parsed = await parseXmlBody(response);\n const contents = map(parsed, {\n CallerAccessGrantsList: [\n 'CallerAccessGrantsList',\n value => emptyArrayGuard(value.AccessGrantsInstance, deserializeAccessGrantsList),\n ],\n NextToken: 'NextToken',\n });\n return {\n $metadata: parseMetadata(response),\n ...contents,\n };\n }\n};\nconst deserializeAccessGrantsList = (output) => output.map(deserializeCallerAccessGrant);\nconst deserializeCallerAccessGrant = (output) => map(output, {\n ApplicationArn: 'ApplicationArn',\n GrantScope: 'GrantScope',\n Permission: 'Permission',\n});\nexport const listCallerAccessGrants = composeServiceApi(s3TransferHandler, listCallerAccessGrantsSerializer, listCallerAccessGrantsDeserializer, { ...defaultConfig, responseType: 'text' });\n"],"names":[],"mappings":";;;;;;;;;;;;AAAA;AACA;AAMA,MAAM,gCAAgC,GAAG,CAAC,KAAK,EAAE,QAAQ,KAAK;AAC9D,IAAI,MAAM,OAAO,GAAG,qBAAqB,CAAC;AAC1C,QAAQ,kBAAkB,EAAE,KAAK,CAAC,SAAS;AAC3C,KAAK,CAAC,CAAC;AACP,IAAI,MAAM,KAAK,GAAG,qBAAqB,CAAC;AACxC,QAAQ,UAAU,EAAE,KAAK,CAAC,UAAU;AACpC,QAAQ,UAAU,EAAE,KAAK,CAAC,UAAU;AACpC,QAAQ,SAAS,EAAE,KAAK,CAAC,SAAS;AAClC,KAAK,CAAC,CAAC;AACP,IAAI,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;AACxD,IAAI,GAAG,CAAC,MAAM,GAAG,IAAI,sBAAsB,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE,CAAC;AAC9D;AACA,IAAI,GAAG,CAAC,QAAQ,GAAG,+CAA+C,CAAC;AACnE,IAAI,OAAO;AACX,QAAQ,MAAM,EAAE,KAAK;AACrB,QAAQ,OAAO;AACf,QAAQ,GAAG;AACX,KAAK,CAAC;AACN,CAAC,CAAC;AACF,MAAM,kCAAkC,GAAG,OAAO,QAAQ,KAAK;AAC/D,IAAI,IAAI,QAAQ,CAAC,UAAU,IAAI,GAAG,EAAE;AACpC;AACA,QAAQ,MAAM,KAAK,IAAI,MAAM,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC;AACtD,QAAQ,MAAM,wBAAwB,CAAC,KAAK,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC;AACnE,KAAK;AACL,SAAS;AACT,QAAQ,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,QAAQ,CAAC,CAAC;AACpD,QAAQ,MAAM,QAAQ,GAAG,GAAG,CAAC,MAAM,EAAE;AACrC,YAAY,sBAAsB,EAAE;AACpC,gBAAgB,wBAAwB;AACxC,gBAAgB,KAAK,IAAI,eAAe,CAAC,KAAK,CAAC,oBAAoB,EAAE,2BAA2B,CAAC;AACjG,aAAa;AACb,YAAY,SAAS,EAAE,WAAW;AAClC,SAAS,CAAC,CAAC;AACX,QAAQ,OAAO;AACf,YAAY,SAAS,EAAE,aAAa,CAAC,QAAQ,CAAC;AAC9C,YAAY,GAAG,QAAQ;AACvB,SAAS,CAAC;AACV,KAAK;AACL,CAAC,CAAC;AACF,MAAM,2BAA2B,GAAG,CAAC,MAAM,KAAK,MAAM,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;AACzF,MAAM,4BAA4B,GAAG,CAAC,MAAM,KAAK,GAAG,CAAC,MAAM,EAAE;AAC7D,IAAI,cAAc,EAAE,gBAAgB;AACpC,IAAI,UAAU,EAAE,YAAY;AAC5B,IAAI,UAAU,EAAE,YAAY;AAC5B,CAAC,CAAC,CAAC;AACS,MAAC,sBAAsB,GAAG,iBAAiB,CAAC,iBAAiB,EAAE,gCAAgC,EAAE,kCAAkC,EAAE,EAAE,GAAG,aAAa,EAAE,YAAY,EAAE,MAAM,EAAE;;;;"}
@@ -0,0 +1,176 @@
1
+ import { MetadataBearer as __MetadataBearer } from '@aws-sdk/types';
2
+ declare const Permission: {
3
+ readonly READ: 'READ';
4
+ readonly READWRITE: 'READWRITE';
5
+ readonly WRITE: 'WRITE';
6
+ };
7
+ declare const Privilege: {
8
+ readonly Default: 'Default';
9
+ readonly Minimal: 'Minimal';
10
+ };
11
+ declare const S3PrefixType: {
12
+ readonly Object: 'Object';
13
+ };
14
+ /**
15
+ * @public
16
+ */
17
+ export type Permission = (typeof Permission)[keyof typeof Permission];
18
+ /**
19
+ * @public
20
+ */
21
+ export type Privilege = (typeof Privilege)[keyof typeof Privilege];
22
+ /**
23
+ * @public
24
+ */
25
+ export type S3PrefixType = (typeof S3PrefixType)[keyof typeof S3PrefixType];
26
+ /**
27
+ * @public
28
+ *
29
+ * The input for {@link ListCallerAccessGrantsCommand}.
30
+ */
31
+ export type ListCallerAccessGrantsCommandInput = ListCallerAccessGrantsRequest;
32
+ /**
33
+ * @public
34
+ *
35
+ * The output of {@link ListCallerAccessGrantsCommand}.
36
+ */
37
+ export interface ListCallerAccessGrantsCommandOutput extends ListCallerAccessGrantsResult, __MetadataBearer {
38
+ }
39
+ /**
40
+ * @public
41
+ */
42
+ export interface ListCallerAccessGrantsRequest {
43
+ AccountId?: string;
44
+ GrantScope?: string;
45
+ NextToken?: string;
46
+ MaxResults?: number;
47
+ }
48
+ /**
49
+ * @public
50
+ */
51
+ export interface ListCallerAccessGrantsEntry {
52
+ Permission?: Permission | string;
53
+ GrantScope?: string;
54
+ ApplicationArn?: string;
55
+ }
56
+ /**
57
+ * @public
58
+ */
59
+ export interface ListCallerAccessGrantsResult {
60
+ NextToken?: string;
61
+ CallerAccessGrantsList?: ListCallerAccessGrantsEntry[];
62
+ }
63
+ /**
64
+ * @public
65
+ *
66
+ * The input for {@link GetDataAccessCommand}.
67
+ */
68
+ export type GetDataAccessCommandInput = GetDataAccessRequest;
69
+ /**
70
+ * @public
71
+ *
72
+ * The output of {@link GetDataAccessCommand}.
73
+ */
74
+ export interface GetDataAccessCommandOutput extends GetDataAccessResult, __MetadataBearer {
75
+ }
76
+ /**
77
+ * <p>The Amazon Web Services Security Token Service temporary credential that S3 Access Grants vends to grantees and client applications. </p>
78
+ * @public
79
+ */
80
+ export interface Credentials {
81
+ /**
82
+ * <p>The unique access key ID of the Amazon Web Services STS temporary credential that S3 Access Grants vends to grantees and client applications. </p>
83
+ * @public
84
+ */
85
+ AccessKeyId?: string;
86
+ /**
87
+ * <p>The secret access key of the Amazon Web Services STS temporary credential that S3 Access Grants vends to grantees and client applications. </p>
88
+ * @public
89
+ */
90
+ SecretAccessKey?: string;
91
+ /**
92
+ * <p>The Amazon Web Services STS temporary credential that S3 Access Grants vends to grantees and client applications. </p>
93
+ * @public
94
+ */
95
+ SessionToken?: string;
96
+ /**
97
+ * <p>The expiration date and time of the temporary credential that S3 Access Grants vends to grantees and client applications. </p>
98
+ * @public
99
+ */
100
+ Expiration?: Date;
101
+ }
102
+ /**
103
+ * @public
104
+ */
105
+ export interface GetDataAccessRequest {
106
+ /**
107
+ * <p>The ID of the Amazon Web Services account that is making this request.</p>
108
+ * @public
109
+ */
110
+ AccountId?: string;
111
+ /**
112
+ * <p>The S3 URI path of the data to which you are requesting temporary access credentials. If the requesting account has an access grant for this data, S3 Access Grants vends temporary access credentials in the response.</p>
113
+ * @public
114
+ */
115
+ Target: string | undefined;
116
+ /**
117
+ * <p>The type of permission granted to your S3 data, which can be set to one of the following values:</p>
118
+ * <ul>
119
+ * <li>
120
+ * <p>
121
+ * <code>READ</code> – Grant read-only access to the S3 data.</p>
122
+ * </li>
123
+ * <li>
124
+ * <p>
125
+ * <code>WRITE</code> – Grant write-only access to the S3 data.</p>
126
+ * </li>
127
+ * <li>
128
+ * <p>
129
+ * <code>READWRITE</code> – Grant both read and write access to the S3 data.</p>
130
+ * </li>
131
+ * </ul>
132
+ * @public
133
+ */
134
+ Permission: Permission | undefined;
135
+ /**
136
+ * <p>The session duration, in seconds, of the temporary access credential that S3 Access Grants vends to the grantee or client application. The default value is 1 hour, but the grantee can specify a range from 900 seconds (15 minutes) up to 43200 seconds (12 hours). If the grantee requests a value higher than this maximum, the operation fails. </p>
137
+ * @public
138
+ */
139
+ DurationSeconds?: number;
140
+ /**
141
+ * <p>The scope of the temporary access credential that S3 Access Grants vends to the grantee or client application. </p>
142
+ * <ul>
143
+ * <li>
144
+ * <p>
145
+ * <code>Default</code> – The scope of the returned temporary access token is the scope of the grant that is closest to the target scope.</p>
146
+ * </li>
147
+ * <li>
148
+ * <p>
149
+ * <code>Minimal</code> – The scope of the returned temporary access token is the same as the requested target scope as long as the requested scope is the same as or a subset of the grant scope. </p>
150
+ * </li>
151
+ * </ul>
152
+ * @public
153
+ */
154
+ Privilege?: Privilege;
155
+ /**
156
+ * <p>The type of <code>Target</code>. The only possible value is <code>Object</code>. Pass this value if the target data that you would like to access is a path to an object. Do not pass this value if the target data is a bucket or a bucket and a prefix. </p>
157
+ * @public
158
+ */
159
+ TargetType?: S3PrefixType;
160
+ }
161
+ /**
162
+ * @public
163
+ */
164
+ export interface GetDataAccessResult {
165
+ /**
166
+ * <p>The temporary credential token that S3 Access Grants vends.</p>
167
+ * @public
168
+ */
169
+ Credentials?: Credentials;
170
+ /**
171
+ * <p>The S3 URI path of the data to which you are being granted temporary access credentials. </p>
172
+ * @public
173
+ */
174
+ MatchedGrantTarget?: string;
175
+ }
176
+ export {};