@aws-amplify/core 5.3.2-unstable.ffe65ea.1 → 5.4.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 (507) hide show
  1. package/internals/aws-client-utils/package.json +8 -0
  2. package/internals/aws-clients/pinpoint/package.json +8 -0
  3. package/lib/Amplify.js +18 -3
  4. package/lib/AwsClients/CognitoIdentity/base.d.ts +28 -0
  5. package/lib/AwsClients/CognitoIdentity/base.js +109 -0
  6. package/lib/AwsClients/CognitoIdentity/getCredentialsForIdentity.d.ts +12 -0
  7. package/lib/AwsClients/CognitoIdentity/getCredentialsForIdentity.js +82 -0
  8. package/lib/AwsClients/CognitoIdentity/getId.d.ts +12 -0
  9. package/lib/AwsClients/CognitoIdentity/getId.js +72 -0
  10. package/lib/AwsClients/CognitoIdentity/index.d.ts +2 -0
  11. package/lib/AwsClients/CognitoIdentity/index.js +9 -0
  12. package/lib/AwsClients/CognitoIdentity/types.d.ts +153 -0
  13. package/lib/AwsClients/CognitoIdentity/types.js +4 -0
  14. package/lib/AwsClients/Pinpoint/base.d.ts +17 -0
  15. package/lib/AwsClients/Pinpoint/base.js +39 -0
  16. package/lib/AwsClients/Pinpoint/getInAppMessages.d.ts +13 -0
  17. package/lib/AwsClients/Pinpoint/getInAppMessages.js +77 -0
  18. package/lib/AwsClients/Pinpoint/index.d.ts +4 -0
  19. package/lib/AwsClients/Pinpoint/index.js +11 -0
  20. package/lib/AwsClients/Pinpoint/putEvents.d.ts +13 -0
  21. package/lib/AwsClients/Pinpoint/putEvents.js +78 -0
  22. package/lib/AwsClients/Pinpoint/types.d.ts +836 -0
  23. package/lib/AwsClients/Pinpoint/types.js +5 -0
  24. package/lib/AwsClients/Pinpoint/updateEndpoint.d.ts +13 -0
  25. package/lib/AwsClients/Pinpoint/updateEndpoint.js +81 -0
  26. package/lib/ClientDevice/android.js +3 -2
  27. package/lib/ClientDevice/browser.js +1 -1
  28. package/lib/ClientDevice/index.js +3 -3
  29. package/lib/ClientDevice/ios.js +3 -2
  30. package/lib/ClientDevice/reactnative.js +3 -3
  31. package/lib/Credentials.js +176 -113
  32. package/lib/Errors.js +1 -1
  33. package/lib/Hub.d.ts +4 -4
  34. package/lib/Hub.js +47 -12
  35. package/lib/I18n/I18n.js +13 -3
  36. package/lib/I18n/index.js +1 -1
  37. package/lib/I18n/types.js +1 -1
  38. package/lib/JS.js +29 -17
  39. package/lib/Logger/ConsoleLogger.js +51 -17
  40. package/lib/Logger/index.js +3 -3
  41. package/lib/Logger/logger-interface.js +0 -1
  42. package/lib/OAuthHelper/FacebookOAuth.js +41 -6
  43. package/lib/OAuthHelper/GoogleOAuth.js +41 -6
  44. package/lib/OAuthHelper/index.js +1 -1
  45. package/lib/Platform/index.js +8 -7
  46. package/lib/Platform/version.d.ts +1 -1
  47. package/lib/Platform/version.js +2 -2
  48. package/lib/Providers/AWSCloudWatchProvider.js +104 -44
  49. package/lib/Providers/index.js +2 -2
  50. package/lib/RNComponents/index.js +2 -2
  51. package/lib/RNComponents/reactnative.js +7 -5
  52. package/lib/ServiceWorker/ServiceWorker.js +11 -11
  53. package/lib/ServiceWorker/index.js +2 -2
  54. package/lib/Signer.js +17 -7
  55. package/lib/StorageHelper/index.js +1 -1
  56. package/lib/StorageHelper/reactnative.js +5 -3
  57. package/lib/UniversalStorage/index.d.ts +2 -2
  58. package/lib/UniversalStorage/index.js +24 -6
  59. package/lib/Util/BackgroundProcessManager.js +84 -23
  60. package/lib/Util/Constants.js +1 -1
  61. package/lib/Util/DateUtils.js +18 -3
  62. package/lib/Util/Mutex.js +0 -1
  63. package/lib/Util/Reachability.d.ts +1 -1
  64. package/lib/Util/Reachability.js +18 -6
  65. package/lib/Util/Reachability.native.d.ts +1 -1
  66. package/lib/Util/Reachability.native.js +4 -3
  67. package/lib/Util/Retry.js +103 -26
  68. package/lib/Util/StringUtils.js +1 -1
  69. package/lib/Util/index.js +24 -21
  70. package/lib/clients/endpoints/getDnsSuffix.d.ts +11 -0
  71. package/lib/clients/endpoints/getDnsSuffix.js +49 -0
  72. package/lib/clients/endpoints/index.d.ts +1 -0
  73. package/lib/clients/endpoints/index.js +7 -0
  74. package/lib/clients/endpoints/partitions.d.ts +33 -0
  75. package/lib/clients/endpoints/partitions.js +41 -0
  76. package/lib/clients/handlers/authenticated.d.ts +5 -0
  77. package/lib/clients/handlers/authenticated.js +15 -0
  78. package/lib/clients/handlers/fetch.d.ts +4 -0
  79. package/lib/clients/handlers/fetch.js +123 -0
  80. package/lib/clients/handlers/unauthenticated.d.ts +4 -0
  81. package/lib/clients/handlers/unauthenticated.js +10 -0
  82. package/lib/clients/index.d.ts +8 -0
  83. package/lib/clients/index.js +37 -0
  84. package/lib/clients/internal/composeServiceApi.d.ts +8 -0
  85. package/lib/clients/internal/composeServiceApi.js +75 -0
  86. package/lib/clients/internal/composeTransferHandler.d.ts +29 -0
  87. package/lib/clients/internal/composeTransferHandler.js +26 -0
  88. package/lib/clients/middleware/retry/defaultRetryDecider.d.ts +6 -0
  89. package/lib/clients/middleware/retry/defaultRetryDecider.js +101 -0
  90. package/lib/clients/middleware/retry/index.d.ts +3 -0
  91. package/lib/clients/middleware/retry/index.js +11 -0
  92. package/lib/clients/middleware/retry/jitteredBackoff.d.ts +2 -0
  93. package/lib/clients/middleware/retry/jitteredBackoff.js +16 -0
  94. package/lib/clients/middleware/retry/middleware.d.ts +40 -0
  95. package/lib/clients/middleware/retry/middleware.js +143 -0
  96. package/lib/clients/middleware/signing/index.d.ts +1 -0
  97. package/lib/clients/middleware/signing/index.js +7 -0
  98. package/lib/clients/middleware/signing/middleware.d.ts +13 -0
  99. package/lib/clients/middleware/signing/middleware.js +101 -0
  100. package/lib/clients/middleware/signing/signer/signatureV4/constants.js +1 -1
  101. package/lib/clients/middleware/signing/signer/signatureV4/index.js +4 -4
  102. package/lib/clients/middleware/signing/signer/signatureV4/index.native.js +4 -4
  103. package/lib/clients/middleware/signing/signer/signatureV4/presignUrl.js +46 -8
  104. package/lib/clients/middleware/signing/signer/signatureV4/signRequest.js +22 -11
  105. package/lib/clients/middleware/signing/signer/signatureV4/types/index.js +0 -1
  106. package/lib/clients/middleware/signing/signer/signatureV4/types/signer.js +0 -1
  107. package/lib/clients/middleware/signing/signer/signatureV4/utils/dataHashHelpers.d.ts +3 -2
  108. package/lib/clients/middleware/signing/signer/signatureV4/utils/dataHashHelpers.js +7 -5
  109. package/lib/clients/middleware/signing/signer/signatureV4/utils/getCanonicalHeaders.d.ts +2 -1
  110. package/lib/clients/middleware/signing/signer/signatureV4/utils/getCanonicalHeaders.js +23 -7
  111. package/lib/clients/middleware/signing/signer/signatureV4/utils/getCanonicalQueryString.js +24 -8
  112. package/lib/clients/middleware/signing/signer/signatureV4/utils/getCanonicalRequest.js +8 -7
  113. package/lib/clients/middleware/signing/signer/signatureV4/utils/getCanonicalUri.js +3 -2
  114. package/lib/clients/middleware/signing/signer/signatureV4/utils/getCredentialScope.js +3 -2
  115. package/lib/clients/middleware/signing/signer/signatureV4/utils/getFormattedDates.js +3 -2
  116. package/lib/clients/middleware/signing/signer/signatureV4/utils/getHashedPayload.d.ts +2 -1
  117. package/lib/clients/middleware/signing/signer/signatureV4/utils/getHashedPayload.js +4 -3
  118. package/lib/clients/middleware/signing/signer/signatureV4/utils/getSignature.js +7 -6
  119. package/lib/clients/middleware/signing/signer/signatureV4/utils/getSignedHeaders.d.ts +2 -1
  120. package/lib/clients/middleware/signing/signer/signatureV4/utils/getSignedHeaders.js +3 -2
  121. package/lib/clients/middleware/signing/signer/signatureV4/utils/getSigningKey.js +8 -7
  122. package/lib/clients/middleware/signing/signer/signatureV4/utils/getSigningValues.js +5 -4
  123. package/lib/clients/middleware/signing/signer/signatureV4/utils/getStringToSign.js +3 -2
  124. package/lib/clients/middleware/signing/utils/extendedEncodeURIComponent.d.ts +10 -0
  125. package/lib/clients/middleware/signing/utils/extendedEncodeURIComponent.js +23 -0
  126. package/lib/clients/middleware/signing/utils/getSkewCorrectedDate.d.ts +10 -0
  127. package/lib/clients/middleware/signing/utils/getSkewCorrectedDate.js +18 -0
  128. package/lib/clients/middleware/signing/utils/getUpdatedSystemClockOffset.d.ts +9 -0
  129. package/lib/clients/middleware/signing/utils/getUpdatedSystemClockOffset.js +21 -0
  130. package/lib/clients/middleware/signing/utils/isClockSkewed.d.ts +11 -0
  131. package/lib/clients/middleware/signing/utils/isClockSkewed.js +23 -0
  132. package/lib/clients/middleware/userAgent/index.d.ts +1 -0
  133. package/lib/clients/middleware/userAgent/index.js +7 -0
  134. package/lib/clients/middleware/userAgent/middleware.d.ts +13 -0
  135. package/lib/clients/middleware/userAgent/middleware.js +77 -0
  136. package/lib/clients/serde/index.d.ts +2 -0
  137. package/lib/clients/serde/index.js +10 -0
  138. package/lib/clients/serde/json.d.ts +12 -0
  139. package/lib/clients/serde/json.js +115 -0
  140. package/lib/clients/serde/responseInfo.d.ts +3 -0
  141. package/lib/clients/serde/responseInfo.js +23 -0
  142. package/lib/clients/types/aws.d.ts +18 -1
  143. package/lib/clients/types/aws.js +0 -1
  144. package/lib/clients/types/core.d.ts +22 -0
  145. package/lib/clients/types/core.js +0 -1
  146. package/lib/clients/types/http.d.ts +8 -4
  147. package/lib/clients/types/http.js +0 -1
  148. package/lib/clients/types/index.d.ts +3 -2
  149. package/lib/clients/types/index.js +0 -1
  150. package/lib/clients/utils/isClockSkewError.d.ts +9 -0
  151. package/lib/clients/utils/isClockSkewError.js +27 -0
  152. package/lib/constants.js +1 -1
  153. package/lib/index.js +61 -60
  154. package/lib/parseAWSExports.js +15 -4
  155. package/lib/tsconfig.tsbuildinfo +1 -0
  156. package/lib/types/index.js +15 -1
  157. package/lib/types/types.d.ts +1 -1
  158. package/lib/types/types.js +0 -1
  159. package/lib-esm/Amplify.js +16 -2
  160. package/lib-esm/AwsClients/CognitoIdentity/base.d.ts +28 -0
  161. package/lib-esm/AwsClients/CognitoIdentity/base.js +104 -0
  162. package/lib-esm/AwsClients/CognitoIdentity/getCredentialsForIdentity.d.ts +12 -0
  163. package/lib-esm/AwsClients/CognitoIdentity/getCredentialsForIdentity.js +79 -0
  164. package/lib-esm/AwsClients/CognitoIdentity/getId.d.ts +12 -0
  165. package/lib-esm/AwsClients/CognitoIdentity/getId.js +69 -0
  166. package/lib-esm/AwsClients/CognitoIdentity/index.d.ts +2 -0
  167. package/lib-esm/AwsClients/CognitoIdentity/index.js +4 -0
  168. package/lib-esm/AwsClients/CognitoIdentity/types.d.ts +153 -0
  169. package/lib-esm/AwsClients/CognitoIdentity/types.js +3 -0
  170. package/lib-esm/AwsClients/Pinpoint/base.d.ts +17 -0
  171. package/lib-esm/AwsClients/Pinpoint/base.js +35 -0
  172. package/lib-esm/AwsClients/Pinpoint/getInAppMessages.d.ts +13 -0
  173. package/lib-esm/AwsClients/Pinpoint/getInAppMessages.js +74 -0
  174. package/lib-esm/AwsClients/Pinpoint/index.d.ts +4 -0
  175. package/lib-esm/AwsClients/Pinpoint/index.js +5 -0
  176. package/lib-esm/AwsClients/Pinpoint/putEvents.d.ts +13 -0
  177. package/lib-esm/AwsClients/Pinpoint/putEvents.js +75 -0
  178. package/lib-esm/AwsClients/Pinpoint/types.d.ts +836 -0
  179. package/lib-esm/AwsClients/Pinpoint/types.js +4 -0
  180. package/lib-esm/AwsClients/Pinpoint/updateEndpoint.d.ts +13 -0
  181. package/lib-esm/AwsClients/Pinpoint/updateEndpoint.js +78 -0
  182. package/lib-esm/ClientDevice/android.js +0 -1
  183. package/lib-esm/ClientDevice/browser.js +0 -1
  184. package/lib-esm/ClientDevice/index.js +0 -1
  185. package/lib-esm/ClientDevice/ios.js +0 -1
  186. package/lib-esm/ClientDevice/reactnative.js +0 -1
  187. package/lib-esm/Credentials.js +149 -87
  188. package/lib-esm/Errors.js +0 -1
  189. package/lib-esm/Hub.d.ts +4 -4
  190. package/lib-esm/Hub.js +43 -9
  191. package/lib-esm/I18n/I18n.js +11 -2
  192. package/lib-esm/I18n/index.js +0 -1
  193. package/lib-esm/I18n/types.js +0 -1
  194. package/lib-esm/JS.js +0 -1
  195. package/lib-esm/Logger/ConsoleLogger.js +49 -16
  196. package/lib-esm/Logger/index.js +0 -1
  197. package/lib-esm/Logger/logger-interface.js +1 -1
  198. package/lib-esm/OAuthHelper/FacebookOAuth.js +36 -2
  199. package/lib-esm/OAuthHelper/GoogleOAuth.js +36 -2
  200. package/lib-esm/OAuthHelper/index.js +0 -1
  201. package/lib-esm/Platform/index.js +5 -6
  202. package/lib-esm/Platform/version.d.ts +1 -1
  203. package/lib-esm/Platform/version.js +1 -2
  204. package/lib-esm/Providers/AWSCloudWatchProvider.js +75 -16
  205. package/lib-esm/Providers/index.js +0 -1
  206. package/lib-esm/RNComponents/index.js +0 -1
  207. package/lib-esm/RNComponents/reactnative.js +0 -1
  208. package/lib-esm/ServiceWorker/ServiceWorker.js +9 -10
  209. package/lib-esm/ServiceWorker/index.js +0 -1
  210. package/lib-esm/Signer.js +11 -2
  211. package/lib-esm/StorageHelper/index.js +0 -1
  212. package/lib-esm/StorageHelper/reactnative.js +0 -1
  213. package/lib-esm/UniversalStorage/index.d.ts +2 -2
  214. package/lib-esm/UniversalStorage/index.js +17 -3
  215. package/lib-esm/Util/BackgroundProcessManager.js +74 -14
  216. package/lib-esm/Util/Constants.js +0 -1
  217. package/lib-esm/Util/DateUtils.js +16 -2
  218. package/lib-esm/Util/Mutex.js +0 -1
  219. package/lib-esm/Util/Reachability.d.ts +1 -1
  220. package/lib-esm/Util/Reachability.js +11 -2
  221. package/lib-esm/Util/Reachability.native.d.ts +1 -1
  222. package/lib-esm/Util/Reachability.native.js +0 -1
  223. package/lib-esm/Util/Retry.js +92 -18
  224. package/lib-esm/Util/StringUtils.js +0 -1
  225. package/lib-esm/Util/index.js +0 -1
  226. package/lib-esm/clients/endpoints/getDnsSuffix.d.ts +11 -0
  227. package/lib-esm/clients/endpoints/getDnsSuffix.js +45 -0
  228. package/lib-esm/clients/endpoints/index.d.ts +1 -0
  229. package/lib-esm/clients/endpoints/index.js +3 -0
  230. package/lib-esm/clients/endpoints/partitions.d.ts +33 -0
  231. package/lib-esm/clients/endpoints/partitions.js +38 -0
  232. package/lib-esm/clients/handlers/authenticated.d.ts +5 -0
  233. package/lib-esm/clients/handlers/authenticated.js +12 -0
  234. package/lib-esm/clients/handlers/fetch.d.ts +4 -0
  235. package/lib-esm/clients/handlers/fetch.js +119 -0
  236. package/lib-esm/clients/handlers/unauthenticated.d.ts +4 -0
  237. package/lib-esm/clients/handlers/unauthenticated.js +7 -0
  238. package/lib-esm/clients/index.d.ts +8 -0
  239. package/lib-esm/clients/index.js +10 -0
  240. package/lib-esm/clients/internal/composeServiceApi.d.ts +8 -0
  241. package/lib-esm/clients/internal/composeServiceApi.js +71 -0
  242. package/lib-esm/clients/internal/composeTransferHandler.d.ts +29 -0
  243. package/lib-esm/clients/internal/composeTransferHandler.js +22 -0
  244. package/lib-esm/clients/middleware/retry/defaultRetryDecider.d.ts +6 -0
  245. package/lib-esm/clients/middleware/retry/defaultRetryDecider.js +97 -0
  246. package/lib-esm/clients/middleware/retry/index.d.ts +3 -0
  247. package/lib-esm/clients/middleware/retry/index.js +5 -0
  248. package/lib-esm/clients/middleware/retry/jitteredBackoff.d.ts +2 -0
  249. package/lib-esm/clients/middleware/retry/jitteredBackoff.js +12 -0
  250. package/lib-esm/clients/middleware/retry/middleware.d.ts +40 -0
  251. package/lib-esm/clients/middleware/retry/middleware.js +138 -0
  252. package/lib-esm/clients/middleware/signing/index.d.ts +1 -0
  253. package/lib-esm/clients/middleware/signing/index.js +3 -0
  254. package/lib-esm/clients/middleware/signing/middleware.d.ts +13 -0
  255. package/lib-esm/clients/middleware/signing/middleware.js +97 -0
  256. package/lib-esm/clients/middleware/signing/signer/signatureV4/constants.js +0 -1
  257. package/lib-esm/clients/middleware/signing/signer/signatureV4/index.js +0 -1
  258. package/lib-esm/clients/middleware/signing/signer/signatureV4/index.native.js +0 -1
  259. package/lib-esm/clients/middleware/signing/signer/signatureV4/presignUrl.js +39 -3
  260. package/lib-esm/clients/middleware/signing/signer/signatureV4/signRequest.js +15 -6
  261. package/lib-esm/clients/middleware/signing/signer/signatureV4/types/index.js +1 -1
  262. package/lib-esm/clients/middleware/signing/signer/signatureV4/types/signer.js +1 -1
  263. package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/dataHashHelpers.d.ts +3 -2
  264. package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/dataHashHelpers.js +0 -1
  265. package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/getCanonicalHeaders.d.ts +2 -1
  266. package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/getCanonicalHeaders.js +20 -6
  267. package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/getCanonicalQueryString.js +18 -4
  268. package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/getCanonicalRequest.js +0 -1
  269. package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/getCanonicalUri.js +0 -1
  270. package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/getCredentialScope.js +1 -2
  271. package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/getFormattedDates.js +0 -1
  272. package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/getHashedPayload.d.ts +2 -1
  273. package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/getHashedPayload.js +0 -1
  274. package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/getSignature.js +0 -1
  275. package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/getSignedHeaders.d.ts +2 -1
  276. package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/getSignedHeaders.js +0 -1
  277. package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/getSigningKey.js +1 -2
  278. package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/getSigningValues.js +0 -1
  279. package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/getStringToSign.js +0 -1
  280. package/lib-esm/clients/middleware/signing/utils/extendedEncodeURIComponent.d.ts +10 -0
  281. package/lib-esm/clients/middleware/signing/utils/extendedEncodeURIComponent.js +19 -0
  282. package/lib-esm/clients/middleware/signing/utils/getSkewCorrectedDate.d.ts +10 -0
  283. package/lib-esm/clients/middleware/signing/utils/getSkewCorrectedDate.js +14 -0
  284. package/lib-esm/clients/middleware/signing/utils/getUpdatedSystemClockOffset.d.ts +9 -0
  285. package/lib-esm/clients/middleware/signing/utils/getUpdatedSystemClockOffset.js +17 -0
  286. package/lib-esm/clients/middleware/signing/utils/isClockSkewed.d.ts +11 -0
  287. package/lib-esm/clients/middleware/signing/utils/isClockSkewed.js +19 -0
  288. package/lib-esm/clients/middleware/userAgent/index.d.ts +1 -0
  289. package/lib-esm/clients/middleware/userAgent/index.js +3 -0
  290. package/lib-esm/clients/middleware/userAgent/middleware.d.ts +13 -0
  291. package/lib-esm/clients/middleware/userAgent/middleware.js +73 -0
  292. package/lib-esm/clients/serde/index.d.ts +2 -0
  293. package/lib-esm/clients/serde/index.js +4 -0
  294. package/lib-esm/clients/serde/json.d.ts +12 -0
  295. package/lib-esm/clients/serde/json.js +110 -0
  296. package/lib-esm/clients/serde/responseInfo.d.ts +3 -0
  297. package/lib-esm/clients/serde/responseInfo.js +19 -0
  298. package/lib-esm/clients/types/aws.d.ts +18 -1
  299. package/lib-esm/clients/types/aws.js +1 -1
  300. package/lib-esm/clients/types/core.d.ts +22 -0
  301. package/lib-esm/clients/types/core.js +1 -1
  302. package/lib-esm/clients/types/http.d.ts +8 -4
  303. package/lib-esm/clients/types/http.js +1 -1
  304. package/lib-esm/clients/types/index.d.ts +3 -2
  305. package/lib-esm/clients/types/index.js +1 -1
  306. package/lib-esm/clients/utils/isClockSkewError.d.ts +9 -0
  307. package/lib-esm/clients/utils/isClockSkewError.js +23 -0
  308. package/lib-esm/constants.js +0 -1
  309. package/lib-esm/index.js +0 -1
  310. package/lib-esm/parseAWSExports.js +11 -2
  311. package/lib-esm/tsconfig.tsbuildinfo +1 -0
  312. package/lib-esm/types/index.js +1 -1
  313. package/lib-esm/types/types.d.ts +1 -1
  314. package/lib-esm/types/types.js +1 -1
  315. package/package.json +56 -22
  316. package/src/AwsClients/CognitoIdentity/base.ts +88 -0
  317. package/src/AwsClients/CognitoIdentity/getCredentialsForIdentity.ts +67 -0
  318. package/src/AwsClients/CognitoIdentity/getId.ts +58 -0
  319. package/src/AwsClients/CognitoIdentity/index.ts +9 -0
  320. package/src/AwsClients/CognitoIdentity/types.ts +159 -0
  321. package/src/AwsClients/Pinpoint/base.ts +41 -0
  322. package/src/AwsClients/Pinpoint/getInAppMessages.ts +56 -0
  323. package/src/AwsClients/Pinpoint/index.ts +15 -0
  324. package/src/AwsClients/Pinpoint/putEvents.ts +55 -0
  325. package/src/AwsClients/Pinpoint/types.ts +844 -0
  326. package/src/AwsClients/Pinpoint/updateEndpoint.ts +60 -0
  327. package/src/Credentials.ts +75 -100
  328. package/src/OAuthHelper/FacebookOAuth.ts +1 -1
  329. package/src/OAuthHelper/GoogleOAuth.ts +1 -1
  330. package/src/Platform/version.ts +1 -1
  331. package/src/StorageHelper/reactnative.ts +1 -1
  332. package/src/clients/endpoints/getDnsSuffix.ts +25 -0
  333. package/src/clients/endpoints/index.ts +4 -0
  334. package/src/clients/endpoints/partitions.ts +40 -0
  335. package/src/clients/handlers/authenticated.ts +19 -0
  336. package/src/clients/handlers/fetch.ts +75 -0
  337. package/src/clients/handlers/unauthenticated.ts +14 -0
  338. package/src/clients/index.ts +15 -0
  339. package/src/clients/internal/composeServiceApi.ts +50 -0
  340. package/src/clients/internal/composeTransferHandler.ts +89 -0
  341. package/src/clients/middleware/retry/defaultRetryDecider.ts +54 -0
  342. package/src/clients/middleware/retry/index.ts +6 -0
  343. package/src/clients/middleware/retry/jitteredBackoff.ts +16 -0
  344. package/src/clients/middleware/retry/middleware.ts +133 -0
  345. package/src/clients/middleware/signing/index.ts +4 -0
  346. package/src/clients/middleware/signing/middleware.ts +65 -0
  347. package/src/clients/middleware/signing/utils/extendedEncodeURIComponent.ts +21 -0
  348. package/src/clients/middleware/signing/utils/getSkewCorrectedDate.ts +14 -0
  349. package/src/clients/middleware/signing/utils/getUpdatedSystemClockOffset.ts +22 -0
  350. package/src/clients/middleware/signing/utils/isClockSkewed.ts +26 -0
  351. package/src/clients/middleware/userAgent/index.ts +4 -0
  352. package/src/clients/middleware/userAgent/middleware.ts +41 -0
  353. package/src/clients/serde/index.ts +5 -0
  354. package/src/clients/serde/json.ts +51 -0
  355. package/src/clients/serde/responseInfo.ts +20 -0
  356. package/src/clients/types/aws.ts +21 -0
  357. package/src/clients/types/core.ts +40 -0
  358. package/src/clients/types/http.ts +12 -2
  359. package/src/clients/types/index.ts +22 -2
  360. package/src/clients/utils/isClockSkewError.ts +24 -0
  361. package/lib/.tsbuildinfo +0 -3
  362. package/lib/Amplify.js.map +0 -1
  363. package/lib/ClientDevice/android.js.map +0 -1
  364. package/lib/ClientDevice/browser.js.map +0 -1
  365. package/lib/ClientDevice/index.js.map +0 -1
  366. package/lib/ClientDevice/ios.js.map +0 -1
  367. package/lib/ClientDevice/reactnative.js.map +0 -1
  368. package/lib/Credentials.js.map +0 -1
  369. package/lib/Errors.js.map +0 -1
  370. package/lib/Hub.js.map +0 -1
  371. package/lib/I18n/I18n.js.map +0 -1
  372. package/lib/I18n/index.js.map +0 -1
  373. package/lib/I18n/types.js.map +0 -1
  374. package/lib/JS.js.map +0 -1
  375. package/lib/Logger/ConsoleLogger.js.map +0 -1
  376. package/lib/Logger/index.js.map +0 -1
  377. package/lib/Logger/logger-interface.js.map +0 -1
  378. package/lib/OAuthHelper/FacebookOAuth.js.map +0 -1
  379. package/lib/OAuthHelper/GoogleOAuth.js.map +0 -1
  380. package/lib/OAuthHelper/index.js.map +0 -1
  381. package/lib/Platform/index.js.map +0 -1
  382. package/lib/Platform/version.js.map +0 -1
  383. package/lib/Providers/AWSCloudWatchProvider.js.map +0 -1
  384. package/lib/Providers/index.js.map +0 -1
  385. package/lib/RNComponents/index.js.map +0 -1
  386. package/lib/RNComponents/reactnative.js.map +0 -1
  387. package/lib/ServiceWorker/ServiceWorker.js.map +0 -1
  388. package/lib/ServiceWorker/index.js.map +0 -1
  389. package/lib/Signer.js.map +0 -1
  390. package/lib/StorageHelper/index.js.map +0 -1
  391. package/lib/StorageHelper/reactnative.js.map +0 -1
  392. package/lib/UniversalStorage/index.js.map +0 -1
  393. package/lib/Util/BackgroundProcessManager.js.map +0 -1
  394. package/lib/Util/CognitoIdentityClient.d.ts +0 -14
  395. package/lib/Util/CognitoIdentityClient.js +0 -31
  396. package/lib/Util/CognitoIdentityClient.js.map +0 -1
  397. package/lib/Util/Constants.js.map +0 -1
  398. package/lib/Util/DateUtils.js.map +0 -1
  399. package/lib/Util/Mutex.js.map +0 -1
  400. package/lib/Util/Reachability.js.map +0 -1
  401. package/lib/Util/Reachability.native.js.map +0 -1
  402. package/lib/Util/Retry.js.map +0 -1
  403. package/lib/Util/StringUtils.js.map +0 -1
  404. package/lib/Util/index.js.map +0 -1
  405. package/lib/clients/middleware/signing/signer/signatureV4/constants.js.map +0 -1
  406. package/lib/clients/middleware/signing/signer/signatureV4/index.js.map +0 -1
  407. package/lib/clients/middleware/signing/signer/signatureV4/index.native.js.map +0 -1
  408. package/lib/clients/middleware/signing/signer/signatureV4/presignUrl.js.map +0 -1
  409. package/lib/clients/middleware/signing/signer/signatureV4/signRequest.js.map +0 -1
  410. package/lib/clients/middleware/signing/signer/signatureV4/types/index.js.map +0 -1
  411. package/lib/clients/middleware/signing/signer/signatureV4/types/signer.js.map +0 -1
  412. package/lib/clients/middleware/signing/signer/signatureV4/utils/dataHashHelpers.js.map +0 -1
  413. package/lib/clients/middleware/signing/signer/signatureV4/utils/getCanonicalHeaders.js.map +0 -1
  414. package/lib/clients/middleware/signing/signer/signatureV4/utils/getCanonicalQueryString.js.map +0 -1
  415. package/lib/clients/middleware/signing/signer/signatureV4/utils/getCanonicalRequest.js.map +0 -1
  416. package/lib/clients/middleware/signing/signer/signatureV4/utils/getCanonicalUri.js.map +0 -1
  417. package/lib/clients/middleware/signing/signer/signatureV4/utils/getCredentialScope.js.map +0 -1
  418. package/lib/clients/middleware/signing/signer/signatureV4/utils/getFormattedDates.js.map +0 -1
  419. package/lib/clients/middleware/signing/signer/signatureV4/utils/getHashedPayload.js.map +0 -1
  420. package/lib/clients/middleware/signing/signer/signatureV4/utils/getSignature.js.map +0 -1
  421. package/lib/clients/middleware/signing/signer/signatureV4/utils/getSignedHeaders.js.map +0 -1
  422. package/lib/clients/middleware/signing/signer/signatureV4/utils/getSigningKey.js.map +0 -1
  423. package/lib/clients/middleware/signing/signer/signatureV4/utils/getSigningValues.js.map +0 -1
  424. package/lib/clients/middleware/signing/signer/signatureV4/utils/getStringToSign.js.map +0 -1
  425. package/lib/clients/types/aws.js.map +0 -1
  426. package/lib/clients/types/core.js.map +0 -1
  427. package/lib/clients/types/http.js.map +0 -1
  428. package/lib/clients/types/index.js.map +0 -1
  429. package/lib/constants.js.map +0 -1
  430. package/lib/index.js.map +0 -1
  431. package/lib/parseAWSExports.js.map +0 -1
  432. package/lib/types/index.js.map +0 -1
  433. package/lib/types/types.js.map +0 -1
  434. package/lib-esm/.tsbuildinfo +0 -3
  435. package/lib-esm/Amplify.js.map +0 -1
  436. package/lib-esm/ClientDevice/android.js.map +0 -1
  437. package/lib-esm/ClientDevice/browser.js.map +0 -1
  438. package/lib-esm/ClientDevice/index.js.map +0 -1
  439. package/lib-esm/ClientDevice/ios.js.map +0 -1
  440. package/lib-esm/ClientDevice/reactnative.js.map +0 -1
  441. package/lib-esm/Credentials.js.map +0 -1
  442. package/lib-esm/Errors.js.map +0 -1
  443. package/lib-esm/Hub.js.map +0 -1
  444. package/lib-esm/I18n/I18n.js.map +0 -1
  445. package/lib-esm/I18n/index.js.map +0 -1
  446. package/lib-esm/I18n/types.js.map +0 -1
  447. package/lib-esm/JS.js.map +0 -1
  448. package/lib-esm/Logger/ConsoleLogger.js.map +0 -1
  449. package/lib-esm/Logger/index.js.map +0 -1
  450. package/lib-esm/Logger/logger-interface.js.map +0 -1
  451. package/lib-esm/OAuthHelper/FacebookOAuth.js.map +0 -1
  452. package/lib-esm/OAuthHelper/GoogleOAuth.js.map +0 -1
  453. package/lib-esm/OAuthHelper/index.js.map +0 -1
  454. package/lib-esm/Platform/index.js.map +0 -1
  455. package/lib-esm/Platform/version.js.map +0 -1
  456. package/lib-esm/Providers/AWSCloudWatchProvider.js.map +0 -1
  457. package/lib-esm/Providers/index.js.map +0 -1
  458. package/lib-esm/RNComponents/index.js.map +0 -1
  459. package/lib-esm/RNComponents/reactnative.js.map +0 -1
  460. package/lib-esm/ServiceWorker/ServiceWorker.js.map +0 -1
  461. package/lib-esm/ServiceWorker/index.js.map +0 -1
  462. package/lib-esm/Signer.js.map +0 -1
  463. package/lib-esm/StorageHelper/index.js.map +0 -1
  464. package/lib-esm/StorageHelper/reactnative.js.map +0 -1
  465. package/lib-esm/UniversalStorage/index.js.map +0 -1
  466. package/lib-esm/Util/BackgroundProcessManager.js.map +0 -1
  467. package/lib-esm/Util/CognitoIdentityClient.d.ts +0 -14
  468. package/lib-esm/Util/CognitoIdentityClient.js +0 -27
  469. package/lib-esm/Util/CognitoIdentityClient.js.map +0 -1
  470. package/lib-esm/Util/Constants.js.map +0 -1
  471. package/lib-esm/Util/DateUtils.js.map +0 -1
  472. package/lib-esm/Util/Mutex.js.map +0 -1
  473. package/lib-esm/Util/Reachability.js.map +0 -1
  474. package/lib-esm/Util/Reachability.native.js.map +0 -1
  475. package/lib-esm/Util/Retry.js.map +0 -1
  476. package/lib-esm/Util/StringUtils.js.map +0 -1
  477. package/lib-esm/Util/index.js.map +0 -1
  478. package/lib-esm/clients/middleware/signing/signer/signatureV4/constants.js.map +0 -1
  479. package/lib-esm/clients/middleware/signing/signer/signatureV4/index.js.map +0 -1
  480. package/lib-esm/clients/middleware/signing/signer/signatureV4/index.native.js.map +0 -1
  481. package/lib-esm/clients/middleware/signing/signer/signatureV4/presignUrl.js.map +0 -1
  482. package/lib-esm/clients/middleware/signing/signer/signatureV4/signRequest.js.map +0 -1
  483. package/lib-esm/clients/middleware/signing/signer/signatureV4/types/index.js.map +0 -1
  484. package/lib-esm/clients/middleware/signing/signer/signatureV4/types/signer.js.map +0 -1
  485. package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/dataHashHelpers.js.map +0 -1
  486. package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/getCanonicalHeaders.js.map +0 -1
  487. package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/getCanonicalQueryString.js.map +0 -1
  488. package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/getCanonicalRequest.js.map +0 -1
  489. package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/getCanonicalUri.js.map +0 -1
  490. package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/getCredentialScope.js.map +0 -1
  491. package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/getFormattedDates.js.map +0 -1
  492. package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/getHashedPayload.js.map +0 -1
  493. package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/getSignature.js.map +0 -1
  494. package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/getSignedHeaders.js.map +0 -1
  495. package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/getSigningKey.js.map +0 -1
  496. package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/getSigningValues.js.map +0 -1
  497. package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/getStringToSign.js.map +0 -1
  498. package/lib-esm/clients/types/aws.js.map +0 -1
  499. package/lib-esm/clients/types/core.js.map +0 -1
  500. package/lib-esm/clients/types/http.js.map +0 -1
  501. package/lib-esm/clients/types/index.js.map +0 -1
  502. package/lib-esm/constants.js.map +0 -1
  503. package/lib-esm/index.js.map +0 -1
  504. package/lib-esm/parseAWSExports.js.map +0 -1
  505. package/lib-esm/types/index.js.map +0 -1
  506. package/lib-esm/types/types.js.map +0 -1
  507. package/src/Util/CognitoIdentityClient.ts +0 -48
@@ -0,0 +1,97 @@
1
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
+ // SPDX-License-Identifier: Apache-2.0
3
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
4
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
5
+ return new (P || (P = Promise))(function (resolve, reject) {
6
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
7
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
8
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
9
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
10
+ });
11
+ };
12
+ var __generator = (this && this.__generator) || function (thisArg, body) {
13
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
14
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
15
+ function verb(n) { return function (v) { return step([n, v]); }; }
16
+ function step(op) {
17
+ if (f) throw new TypeError("Generator is already executing.");
18
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
19
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
20
+ if (y = 0, t) op = [op[0] & 2, t.value];
21
+ switch (op[0]) {
22
+ case 0: case 1: t = op; break;
23
+ case 4: _.label++; return { value: op[1], done: false };
24
+ case 5: _.label++; y = op[1]; op = [0]; continue;
25
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
26
+ default:
27
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
28
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
29
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
30
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
31
+ if (t[2]) _.ops.pop();
32
+ _.trys.pop(); continue;
33
+ }
34
+ op = body.call(thisArg, _);
35
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
36
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
37
+ }
38
+ };
39
+ import { isClockSkewError } from '../../utils/isClockSkewError';
40
+ import { signRequest } from './signer/signatureV4';
41
+ import { getSkewCorrectedDate } from './utils/getSkewCorrectedDate';
42
+ import { getUpdatedSystemClockOffset } from './utils/getUpdatedSystemClockOffset';
43
+ /**
44
+ * Middleware that SigV4 signs request with AWS credentials, and correct system clock offset.
45
+ */
46
+ export var signingMiddleware = function (_a) {
47
+ var credentials = _a.credentials, region = _a.region, service = _a.service;
48
+ var currentSystemClockOffset;
49
+ return function (next) {
50
+ return function signingMiddleware(request) {
51
+ return __awaiter(this, void 0, void 0, function () {
52
+ var signRequestOptions, signedRequest, response, error_1, dateString;
53
+ return __generator(this, function (_a) {
54
+ switch (_a.label) {
55
+ case 0:
56
+ currentSystemClockOffset = currentSystemClockOffset !== null && currentSystemClockOffset !== void 0 ? currentSystemClockOffset : 0;
57
+ signRequestOptions = {
58
+ credentials: credentials,
59
+ signingDate: getSkewCorrectedDate(currentSystemClockOffset),
60
+ signingRegion: region,
61
+ signingService: service,
62
+ };
63
+ return [4 /*yield*/, signRequest(request, signRequestOptions)];
64
+ case 1:
65
+ signedRequest = _a.sent();
66
+ _a.label = 2;
67
+ case 2:
68
+ _a.trys.push([2, 4, , 5]);
69
+ return [4 /*yield*/, next(signedRequest)];
70
+ case 3:
71
+ response = _a.sent();
72
+ return [2 /*return*/, response];
73
+ case 4:
74
+ error_1 = _a.sent();
75
+ dateString = shouldUseServerTime(error_1)
76
+ ? error_1.ServerTime
77
+ : getDateHeader(error_1.$response);
78
+ if (dateString) {
79
+ currentSystemClockOffset = getUpdatedSystemClockOffset(Date.parse(dateString), currentSystemClockOffset);
80
+ }
81
+ throw error_1;
82
+ case 5: return [2 /*return*/];
83
+ }
84
+ });
85
+ });
86
+ };
87
+ };
88
+ };
89
+ var shouldUseServerTime = function (_a) {
90
+ var ServerTime = _a.ServerTime, Code = _a.Code;
91
+ return ServerTime && isClockSkewError(Code);
92
+ };
93
+ var getDateHeader = function (_a) {
94
+ var _b;
95
+ var _c = _a === void 0 ? {} : _a, headers = _c.headers;
96
+ return (_b = headers === null || headers === void 0 ? void 0 : headers.date) !== null && _b !== void 0 ? _b : headers === null || headers === void 0 ? void 0 : headers.Date;
97
+ };
@@ -21,4 +21,3 @@ export var SIGNATURE_IDENTIFIER = 'AWS4';
21
21
  // preset values
22
22
  export var EMPTY_HASH = 'e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855';
23
23
  export var UNSIGNED_PAYLOAD = 'UNSIGNED-PAYLOAD';
24
- //# sourceMappingURL=constants.js.map
@@ -4,4 +4,3 @@
4
4
  export { signRequest } from './signRequest';
5
5
  export { presignUrl } from './presignUrl';
6
6
  export { TOKEN_QUERY_PARAM } from './constants';
7
- //# sourceMappingURL=index.js.map
@@ -5,4 +5,3 @@ import '@aws-amplify/core/polyfills/URL';
5
5
  export { signRequest } from './signRequest';
6
6
  export { presignUrl } from './presignUrl';
7
7
  export { TOKEN_QUERY_PARAM } from './constants';
8
- //# sourceMappingURL=index.native.js.map
@@ -1,6 +1,43 @@
1
1
  // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
2
  // SPDX-License-Identifier: Apache-2.0
3
- import { __assign, __read, __rest } from "tslib";
3
+ var __assign = (this && this.__assign) || function () {
4
+ __assign = Object.assign || function(t) {
5
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
6
+ s = arguments[i];
7
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
8
+ t[p] = s[p];
9
+ }
10
+ return t;
11
+ };
12
+ return __assign.apply(this, arguments);
13
+ };
14
+ var __rest = (this && this.__rest) || function (s, e) {
15
+ var t = {};
16
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
17
+ t[p] = s[p];
18
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
19
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
20
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
21
+ t[p[i]] = s[p[i]];
22
+ }
23
+ return t;
24
+ };
25
+ var __read = (this && this.__read) || function (o, n) {
26
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
27
+ if (!m) return o;
28
+ var i = m.call(o), r, ar = [], e;
29
+ try {
30
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
31
+ }
32
+ catch (error) { e = { error: error }; }
33
+ finally {
34
+ try {
35
+ if (r && !r.done && (m = i["return"])) m.call(i);
36
+ }
37
+ finally { if (e) throw e.error; }
38
+ }
39
+ return ar;
40
+ };
4
41
  import { ALGORITHM_QUERY_PARAM, AMZ_DATE_QUERY_PARAM, CREDENTIAL_QUERY_PARAM, EXPIRES_QUERY_PARAM, HOST_HEADER, SHA256_ALGORITHM_IDENTIFIER, SIGNATURE_QUERY_PARAM, SIGNED_HEADERS_QUERY_PARAM, TOKEN_QUERY_PARAM, } from './constants';
5
42
  import { getSigningValues } from './utils/getSigningValues';
6
43
  import { getSignature } from './utils/getSignature';
@@ -20,7 +57,7 @@ export var presignUrl = function (_a, _b) {
20
57
  // create the request to sign
21
58
  // @ts-ignore URL constructor accepts a URL object
22
59
  var presignedUrl = new URL(url);
23
- Object.entries(__assign(__assign((_c = {}, _c[ALGORITHM_QUERY_PARAM] = SHA256_ALGORITHM_IDENTIFIER, _c[CREDENTIAL_QUERY_PARAM] = accessKeyId + "/" + credentialScope, _c[AMZ_DATE_QUERY_PARAM] = longDate, _c[SIGNED_HEADERS_QUERY_PARAM] = HOST_HEADER, _c), (expiration && (_d = {}, _d[EXPIRES_QUERY_PARAM] = expiration.toString(), _d))), (sessionToken && (_e = {}, _e[TOKEN_QUERY_PARAM] = sessionToken, _e)))).forEach(function (_a) {
60
+ Object.entries(__assign(__assign((_c = {}, _c[ALGORITHM_QUERY_PARAM] = SHA256_ALGORITHM_IDENTIFIER, _c[CREDENTIAL_QUERY_PARAM] = "".concat(accessKeyId, "/").concat(credentialScope), _c[AMZ_DATE_QUERY_PARAM] = longDate, _c[SIGNED_HEADERS_QUERY_PARAM] = HOST_HEADER, _c), (expiration && (_d = {}, _d[EXPIRES_QUERY_PARAM] = expiration.toString(), _d))), (sessionToken && (_e = {}, _e[TOKEN_QUERY_PARAM] = sessionToken, _e)))).forEach(function (_a) {
24
61
  var _b = __read(_a, 2), key = _b[0], value = _b[1];
25
62
  presignedUrl.searchParams.append(key, value);
26
63
  });
@@ -35,4 +72,3 @@ export var presignUrl = function (_a, _b) {
35
72
  presignedUrl.searchParams.append(SIGNATURE_QUERY_PARAM, signature);
36
73
  return presignedUrl;
37
74
  };
38
- //# sourceMappingURL=presignUrl.js.map
@@ -1,6 +1,16 @@
1
1
  // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
2
  // SPDX-License-Identifier: Apache-2.0
3
- import { __assign } from "tslib";
3
+ var __assign = (this && this.__assign) || function () {
4
+ __assign = Object.assign || function(t) {
5
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
6
+ s = arguments[i];
7
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
8
+ t[p] = s[p];
9
+ }
10
+ return t;
11
+ };
12
+ return __assign.apply(this, arguments);
13
+ };
4
14
  import { getSignedHeaders } from './utils/getSignedHeaders';
5
15
  import { getSigningValues } from './utils/getSigningValues';
6
16
  import { AMZ_DATE_HEADER, AUTH_HEADER, HOST_HEADER, SHA256_ALGORITHM_IDENTIFIER, TOKEN_HEADER, } from './constants';
@@ -25,10 +35,9 @@ export var signRequest = function (request, options) {
25
35
  var requestToSign = __assign(__assign({}, request), { headers: headers });
26
36
  // calculate and add the signature to the request
27
37
  var signature = getSignature(requestToSign, signingValues);
28
- var credentialEntry = "Credential=" + accessKeyId + "/" + credentialScope;
29
- var signedHeadersEntry = "SignedHeaders=" + getSignedHeaders(headers);
30
- var signatureEntry = "Signature=" + signature;
31
- headers[AUTH_HEADER] = SHA256_ALGORITHM_IDENTIFIER + " " + credentialEntry + ", " + signedHeadersEntry + ", " + signatureEntry;
38
+ var credentialEntry = "Credential=".concat(accessKeyId, "/").concat(credentialScope);
39
+ var signedHeadersEntry = "SignedHeaders=".concat(getSignedHeaders(headers));
40
+ var signatureEntry = "Signature=".concat(signature);
41
+ headers[AUTH_HEADER] = "".concat(SHA256_ALGORITHM_IDENTIFIER, " ").concat(credentialEntry, ", ").concat(signedHeadersEntry, ", ").concat(signatureEntry);
32
42
  return requestToSign;
33
43
  };
34
- //# sourceMappingURL=signRequest.js.map
@@ -1,3 +1,3 @@
1
1
  // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
2
  // SPDX-License-Identifier: Apache-2.0
3
- //# sourceMappingURL=index.js.map
3
+ export {};
@@ -1,3 +1,3 @@
1
1
  // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
2
  // SPDX-License-Identifier: Apache-2.0
3
- //# sourceMappingURL=signer.js.map
3
+ export {};
@@ -1,3 +1,4 @@
1
+ import { SourceData } from '@aws-sdk/types';
1
2
  /**
2
3
  * Returns the hashed data a `Uint8Array`.
3
4
  *
@@ -5,7 +6,7 @@
5
6
  * @param data Hashable `SourceData`.
6
7
  * @returns `Uint8Array` created from the data as input to a hash function.
7
8
  */
8
- export declare const getHashedData: (key: string | ArrayBuffer | ArrayBufferView, data: string | ArrayBuffer | ArrayBufferView) => Uint8Array;
9
+ export declare const getHashedData: (key: SourceData | null, data: SourceData) => Uint8Array;
9
10
  /**
10
11
  * Returns the hashed data as a hex string.
11
12
  *
@@ -15,4 +16,4 @@ export declare const getHashedData: (key: string | ArrayBuffer | ArrayBufferView
15
16
  *
16
17
  * @internal
17
18
  */
18
- export declare const getHashedDataAsHex: (key: string | ArrayBuffer | ArrayBufferView, data: string | ArrayBuffer | ArrayBufferView) => string;
19
+ export declare const getHashedDataAsHex: (key: SourceData | null, data: SourceData) => string;
@@ -30,4 +30,3 @@ export var getHashedDataAsHex = function (key, data) {
30
30
  var hashedData = getHashedData(key, data);
31
31
  return toHex(hashedData);
32
32
  };
33
- //# sourceMappingURL=dataHashHelpers.js.map
@@ -1,3 +1,4 @@
1
+ import { HttpRequest } from '../../../../../types';
1
2
  /**
2
3
  * Returns canonical headers.
3
4
  *
@@ -9,4 +10,4 @@
9
10
  *
10
11
  * @internal
11
12
  */
12
- export declare const getCanonicalHeaders: (headers: Record<string, string>) => string;
13
+ export declare const getCanonicalHeaders: (headers: HttpRequest['headers']) => string;
@@ -1,6 +1,21 @@
1
1
  // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
2
  // SPDX-License-Identifier: Apache-2.0
3
- import { __read } from "tslib";
3
+ var __read = (this && this.__read) || function (o, n) {
4
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
5
+ if (!m) return o;
6
+ var i = m.call(o), r, ar = [], e;
7
+ try {
8
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
9
+ }
10
+ catch (error) { e = { error: error }; }
11
+ finally {
12
+ try {
13
+ if (r && !r.done && (m = i["return"])) m.call(i);
14
+ }
15
+ finally { if (e) throw e.error; }
16
+ }
17
+ return ar;
18
+ };
4
19
  /**
5
20
  * Returns canonical headers.
6
21
  *
@@ -15,15 +30,14 @@ import { __read } from "tslib";
15
30
  export var getCanonicalHeaders = function (headers) {
16
31
  return Object.entries(headers)
17
32
  .map(function (_a) {
18
- var _b = __read(_a, 2), key = _b[0], value = _b[1];
19
- var _c;
33
+ var _b;
34
+ var _c = __read(_a, 2), key = _c[0], value = _c[1];
20
35
  return ({
21
36
  key: key.toLowerCase(),
22
- value: (_c = value === null || value === void 0 ? void 0 : value.trim().replace(/\s+/g, ' ')) !== null && _c !== void 0 ? _c : '',
37
+ value: (_b = value === null || value === void 0 ? void 0 : value.trim().replace(/\s+/g, ' ')) !== null && _b !== void 0 ? _b : '',
23
38
  });
24
39
  })
25
40
  .sort(function (a, b) { return (a.key < b.key ? -1 : 1); })
26
- .map(function (entry) { return entry.key + ":" + entry.value + "\n"; })
41
+ .map(function (entry) { return "".concat(entry.key, ":").concat(entry.value, "\n"); })
27
42
  .join('');
28
43
  };
29
- //# sourceMappingURL=getCanonicalHeaders.js.map
@@ -1,6 +1,21 @@
1
1
  // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
2
  // SPDX-License-Identifier: Apache-2.0
3
- import { __read } from "tslib";
3
+ var __read = (this && this.__read) || function (o, n) {
4
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
5
+ if (!m) return o;
6
+ var i = m.call(o), r, ar = [], e;
7
+ try {
8
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
9
+ }
10
+ catch (error) { e = { error: error }; }
11
+ finally {
12
+ try {
13
+ if (r && !r.done && (m = i["return"])) m.call(i);
14
+ }
15
+ finally { if (e) throw e.error; }
16
+ }
17
+ return ar;
18
+ };
4
19
  /**
5
20
  * Returns a canonical query string.
6
21
  *
@@ -24,7 +39,7 @@ export var getCanonicalQueryString = function (searchParams) {
24
39
  })
25
40
  .map(function (_a) {
26
41
  var _b = __read(_a, 2), key = _b[0], val = _b[1];
27
- return escapeUri(key) + "=" + escapeUri(val);
42
+ return "".concat(escapeUri(key), "=").concat(escapeUri(val));
28
43
  })
29
44
  .join('&');
30
45
  };
@@ -32,6 +47,5 @@ var escapeUri = function (uri) {
32
47
  return encodeURIComponent(uri).replace(/[!'()*]/g, hexEncode);
33
48
  };
34
49
  var hexEncode = function (c) {
35
- return "%" + c.charCodeAt(0).toString(16).toUpperCase();
50
+ return "%".concat(c.charCodeAt(0).toString(16).toUpperCase());
36
51
  };
37
- //# sourceMappingURL=getCanonicalQueryString.js.map
@@ -30,4 +30,3 @@ export var getCanonicalRequest = function (_a) {
30
30
  getHashedPayload(body),
31
31
  ].join('\n');
32
32
  };
33
- //# sourceMappingURL=getCanonicalRequest.js.map
@@ -12,4 +12,3 @@
12
12
  export var getCanonicalUri = function (pathname) {
13
13
  return pathname ? encodeURIComponent(pathname).replace(/%2F/g, '/') : '/';
14
14
  };
15
- //# sourceMappingURL=getCanonicalUri.js.map
@@ -12,5 +12,4 @@ import { KEY_TYPE_IDENTIFIER } from '../constants';
12
12
  *
13
13
  * @internal
14
14
  */
15
- export var getCredentialScope = function (date, region, service) { return date + "/" + region + "/" + service + "/" + KEY_TYPE_IDENTIFIER; };
16
- //# sourceMappingURL=getCredentialScope.js.map
15
+ export var getCredentialScope = function (date, region, service) { return "".concat(date, "/").concat(region, "/").concat(service, "/").concat(KEY_TYPE_IDENTIFIER); };
@@ -17,4 +17,3 @@ export var getFormattedDates = function (date) {
17
17
  shortDate: longDate.slice(0, 8),
18
18
  };
19
19
  };
20
- //# sourceMappingURL=getFormattedDates.js.map
@@ -1,3 +1,4 @@
1
+ import { HttpRequest } from '../../../../../types';
1
2
  /**
2
3
  * Returns the hashed payload.
3
4
  *
@@ -7,4 +8,4 @@
7
8
  *
8
9
  * @internal
9
10
  */
10
- export declare const getHashedPayload: (body: BodyInit) => string;
11
+ export declare const getHashedPayload: (body: HttpRequest['body']) => string;
@@ -30,4 +30,3 @@ var isArrayBuffer = function (arg) {
30
30
  return (typeof ArrayBuffer === 'function' && arg instanceof ArrayBuffer) ||
31
31
  Object.prototype.toString.call(arg) === '[object ArrayBuffer]';
32
32
  };
33
- //# sourceMappingURL=getHashedPayload.js.map
@@ -26,4 +26,3 @@ export var getSignature = function (request, _a) {
26
26
  var signature = getHashedDataAsHex(getSigningKey(secretAccessKey, shortDate, signingRegion, signingService), stringToSign);
27
27
  return signature;
28
28
  };
29
- //# sourceMappingURL=getSignature.js.map
@@ -1,3 +1,4 @@
1
+ import { HttpRequest } from '../../../../../types';
1
2
  /**
2
3
  * Returns signed headers.
3
4
  *
@@ -7,4 +8,4 @@
7
8
  *
8
9
  * @internal
9
10
  */
10
- export declare const getSignedHeaders: (headers: Record<string, string>) => string;
11
+ export declare const getSignedHeaders: (headers: HttpRequest['headers']) => string;
@@ -15,4 +15,3 @@ export var getSignedHeaders = function (headers) {
15
15
  .sort()
16
16
  .join(';');
17
17
  };
18
- //# sourceMappingURL=getSignedHeaders.js.map
@@ -15,11 +15,10 @@ import { getHashedData } from './dataHashHelpers';
15
15
  * @internal
16
16
  */
17
17
  export var getSigningKey = function (secretAccessKey, date, region, service) {
18
- var key = "" + SIGNATURE_IDENTIFIER + secretAccessKey;
18
+ var key = "".concat(SIGNATURE_IDENTIFIER).concat(secretAccessKey);
19
19
  var dateKey = getHashedData(key, date);
20
20
  var regionKey = getHashedData(dateKey, region);
21
21
  var serviceKey = getHashedData(regionKey, service);
22
22
  var signingKey = getHashedData(serviceKey, KEY_TYPE_IDENTIFIER);
23
23
  return signingKey;
24
24
  };
25
- //# sourceMappingURL=getSigningKey.js.map
@@ -29,4 +29,3 @@ export var getSigningValues = function (_a) {
29
29
  signingService: signingService,
30
30
  };
31
31
  };
32
- //# sourceMappingURL=getSigningValues.js.map
@@ -19,4 +19,3 @@ import { SHA256_ALGORITHM_IDENTIFIER } from '../constants';
19
19
  export var getStringToSign = function (date, credentialScope, hashedRequest) {
20
20
  return [SHA256_ALGORITHM_IDENTIFIER, date, credentialScope, hashedRequest].join('\n');
21
21
  };
22
- //# sourceMappingURL=getStringToSign.js.map
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Wraps encodeURIComponent to encode additional characters to fully adhere to RFC 3986.
3
+ * @see https://github.com/aws/aws-sdk-js-v3/blob/86b432c464150069678b25ff88d57c2ca26e75a2/packages/smithy-client/src/extended-encode-uri-component.ts#L7
4
+ *
5
+ * @param uri URI string to encode
6
+ * @returns RFC 3986 encoded string
7
+ *
8
+ * @internal
9
+ */
10
+ export declare const extendedEncodeURIComponent: (uri: string) => string;
@@ -0,0 +1,19 @@
1
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
+ // SPDX-License-Identifier: Apache-2.0
3
+ /**
4
+ * Wraps encodeURIComponent to encode additional characters to fully adhere to RFC 3986.
5
+ * @see https://github.com/aws/aws-sdk-js-v3/blob/86b432c464150069678b25ff88d57c2ca26e75a2/packages/smithy-client/src/extended-encode-uri-component.ts#L7
6
+ *
7
+ * @param uri URI string to encode
8
+ * @returns RFC 3986 encoded string
9
+ *
10
+ * @internal
11
+ */
12
+ export var extendedEncodeURIComponent = function (uri) {
13
+ // Match characters normally not encoded by `encodeURIComponent`
14
+ var extendedCharacters = /[!'()*]/g;
15
+ return encodeURIComponent(uri).replace(extendedCharacters, hexEncode);
16
+ };
17
+ var hexEncode = function (c) {
18
+ return "%".concat(c.charCodeAt(0).toString(16).toUpperCase());
19
+ };
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Returns a `Date` that is corrected for clock skew.
3
+ *
4
+ * @param systemClockOffset The offset of the system clock in milliseconds.
5
+ *
6
+ * @returns `Date` representing the current time adjusted by the system clock offset.
7
+ *
8
+ * @internal
9
+ */
10
+ export declare const getSkewCorrectedDate: (systemClockOffset: number) => Date;
@@ -0,0 +1,14 @@
1
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
+ // SPDX-License-Identifier: Apache-2.0
3
+ /**
4
+ * Returns a `Date` that is corrected for clock skew.
5
+ *
6
+ * @param systemClockOffset The offset of the system clock in milliseconds.
7
+ *
8
+ * @returns `Date` representing the current time adjusted by the system clock offset.
9
+ *
10
+ * @internal
11
+ */
12
+ export var getSkewCorrectedDate = function (systemClockOffset) {
13
+ return new Date(Date.now() + systemClockOffset);
14
+ };
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Returns the difference between clock time and the current system time if clock is skewed.
3
+ *
4
+ * @param clockTimeInMilliseconds Clock time in milliseconds.
5
+ * @param currentSystemClockOffset Current system clock offset in milliseconds.
6
+ *
7
+ * @internal
8
+ */
9
+ export declare const getUpdatedSystemClockOffset: (clockTimeInMilliseconds: number, currentSystemClockOffset: number) => number;
@@ -0,0 +1,17 @@
1
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
+ // SPDX-License-Identifier: Apache-2.0
3
+ import { isClockSkewed } from './isClockSkewed';
4
+ /**
5
+ * Returns the difference between clock time and the current system time if clock is skewed.
6
+ *
7
+ * @param clockTimeInMilliseconds Clock time in milliseconds.
8
+ * @param currentSystemClockOffset Current system clock offset in milliseconds.
9
+ *
10
+ * @internal
11
+ */
12
+ export var getUpdatedSystemClockOffset = function (clockTimeInMilliseconds, currentSystemClockOffset) {
13
+ if (isClockSkewed(clockTimeInMilliseconds, currentSystemClockOffset)) {
14
+ return clockTimeInMilliseconds - Date.now();
15
+ }
16
+ return currentSystemClockOffset;
17
+ };
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Checks if the provided date is within the skew window of 5 minutes.
3
+ *
4
+ * @param clockTimeInMilliseconds Time to check for skew in milliseconds.
5
+ * @param clockOffsetInMilliseconds Offset to check clock against in milliseconds.
6
+ *
7
+ * @returns True if skewed. False otherwise.
8
+ *
9
+ * @internal
10
+ */
11
+ export declare const isClockSkewed: (clockTimeInMilliseconds: number, clockOffsetInMilliseconds: number) => boolean;
@@ -0,0 +1,19 @@
1
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
+ // SPDX-License-Identifier: Apache-2.0
3
+ import { getSkewCorrectedDate } from './getSkewCorrectedDate';
4
+ // 5 mins in milliseconds. Ref: https://github.com/aws/aws-sdk-js-v3/blob/6c0f44fab30a1bb2134af47362a31332abc3666b/packages/middleware-signing/src/utils/isClockSkewed.ts#L10
5
+ var SKEW_WINDOW = 5 * 60 * 1000;
6
+ /**
7
+ * Checks if the provided date is within the skew window of 5 minutes.
8
+ *
9
+ * @param clockTimeInMilliseconds Time to check for skew in milliseconds.
10
+ * @param clockOffsetInMilliseconds Offset to check clock against in milliseconds.
11
+ *
12
+ * @returns True if skewed. False otherwise.
13
+ *
14
+ * @internal
15
+ */
16
+ export var isClockSkewed = function (clockTimeInMilliseconds, clockOffsetInMilliseconds) {
17
+ return Math.abs(getSkewCorrectedDate(clockOffsetInMilliseconds).getTime() -
18
+ clockTimeInMilliseconds) >= SKEW_WINDOW;
19
+ };
@@ -0,0 +1 @@
1
+ export { userAgentMiddleware, UserAgentOptions } from './middleware';
@@ -0,0 +1,3 @@
1
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
+ // SPDX-License-Identifier: Apache-2.0
3
+ export { userAgentMiddleware } from './middleware';
@@ -0,0 +1,13 @@
1
+ import { HttpRequest, HttpResponse } from '../../types/http';
2
+ import { Middleware } from '../../types/core';
3
+ export interface UserAgentOptions {
4
+ userAgentHeader?: string;
5
+ userAgentValue?: string;
6
+ }
7
+ /**
8
+ * Middleware injects user agent string to specified header(default to 'x-amz-user-agent'),
9
+ * if the header is not set already.
10
+ *
11
+ * TODO: incorporate new user agent design
12
+ */
13
+ export declare const userAgentMiddleware: Middleware<HttpRequest, HttpResponse, UserAgentOptions>;