@aws-amplify/core 6.0.1-api-v6-models.9351bcf.0 → 6.0.1-api-v6-models.58f2536.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 (360) hide show
  1. package/lib/BackgroundProcessManager/BackgroundManagerNotOpenError.js +4 -21
  2. package/lib/BackgroundProcessManager/BackgroundProcessManager.js +126 -245
  3. package/lib/Cache/StorageCache.js +32 -92
  4. package/lib/Cache/StorageCache.native.js +38 -140
  5. package/lib/Cache/StorageCacheCommon.js +271 -600
  6. package/lib/Cache/index.js +1 -1
  7. package/lib/Cache/utils/CacheList.js +42 -66
  8. package/lib/Cache/utils/cacheHelpers.js +6 -8
  9. package/lib/Cache/utils/errorHelpers.js +6 -7
  10. package/lib/Hub/index.js +34 -74
  11. package/lib/I18n/I18n.js +24 -39
  12. package/lib/I18n/errorHelpers.js +4 -5
  13. package/lib/I18n/index.js +24 -27
  14. package/lib/I18n/types.js +3 -4
  15. package/lib/Logger/ConsoleLogger.js +53 -129
  16. package/lib/Mutex/Mutex.js +15 -19
  17. package/lib/Platform/customUserAgent.js +13 -26
  18. package/lib/Platform/detectFramework.js +12 -13
  19. package/lib/Platform/detection/Angular.js +4 -5
  20. package/lib/Platform/detection/Expo.js +1 -1
  21. package/lib/Platform/detection/Next.js +1 -1
  22. package/lib/Platform/detection/Nuxt.js +1 -1
  23. package/lib/Platform/detection/React.js +5 -5
  24. package/lib/Platform/detection/Svelte.js +2 -2
  25. package/lib/Platform/detection/Vue.js +1 -1
  26. package/lib/Platform/detection/Web.js +1 -1
  27. package/lib/Platform/detection/helpers.js +7 -7
  28. package/lib/Platform/detection/index.js +13 -13
  29. package/lib/Platform/index.js +26 -55
  30. package/lib/Platform/types.d.ts +1 -1
  31. package/lib/Platform/types.js +1 -1
  32. package/lib/Platform/version.d.ts +1 -1
  33. package/lib/Platform/version.js +1 -1
  34. package/lib/Reachability/Reachability.js +20 -48
  35. package/lib/Reachability/Reachability.native.js +12 -16
  36. package/lib/ServiceWorker/ServiceWorker.js +80 -136
  37. package/lib/ServiceWorker/errorHelpers.js +6 -7
  38. package/lib/Signer/DateUtils.d.ts +9 -0
  39. package/lib/Signer/DateUtils.js +19 -28
  40. package/lib/Signer/Signer.d.ts +9 -0
  41. package/lib/Signer/Signer.js +58 -54
  42. package/lib/adapterCore/error/AmplifyServerContextError.js +9 -27
  43. package/lib/adapterCore/serverContext/serverContext.js +8 -8
  44. package/lib/adapterCore/serverContext/serverContextRegistry.js +6 -6
  45. package/lib/awsClients/cognitoIdentity/base.js +25 -73
  46. package/lib/awsClients/cognitoIdentity/getCredentialsForIdentity.js +24 -68
  47. package/lib/awsClients/cognitoIdentity/getId.js +19 -62
  48. package/lib/awsClients/pinpoint/base.js +12 -15
  49. package/lib/awsClients/pinpoint/errorHelpers.js +4 -5
  50. package/lib/awsClients/pinpoint/getInAppMessages.js +24 -68
  51. package/lib/awsClients/pinpoint/putEvents.js +26 -70
  52. package/lib/awsClients/pinpoint/updateEndpoint.js +28 -72
  53. package/lib/clients/endpoints/getDnsSuffix.js +7 -29
  54. package/lib/clients/handlers/authenticated.js +5 -5
  55. package/lib/clients/handlers/fetch.js +41 -98
  56. package/lib/clients/handlers/unauthenticated.js +4 -4
  57. package/lib/clients/internal/composeServiceApi.js +17 -67
  58. package/lib/clients/internal/composeTransferHandler.js +9 -11
  59. package/lib/clients/middleware/retry/defaultRetryDecider.js +18 -75
  60. package/lib/clients/middleware/retry/isClockSkewError.js +2 -4
  61. package/lib/clients/middleware/retry/jitteredBackoff.js +5 -5
  62. package/lib/clients/middleware/retry/middleware.js +61 -125
  63. package/lib/clients/middleware/signing/middleware.js +24 -86
  64. package/lib/clients/middleware/signing/signer/signatureV4/index.js +0 -1
  65. package/lib/clients/middleware/signing/signer/signatureV4/presignUrl.js +21 -56
  66. package/lib/clients/middleware/signing/signer/signatureV4/signRequest.js +14 -25
  67. package/lib/clients/middleware/signing/signer/signatureV4/utils/dataHashHelpers.js +7 -7
  68. package/lib/clients/middleware/signing/signer/signatureV4/utils/getCanonicalHeaders.js +8 -30
  69. package/lib/clients/middleware/signing/signer/signatureV4/utils/getCanonicalQueryString.js +11 -38
  70. package/lib/clients/middleware/signing/signer/signatureV4/utils/getCanonicalRequest.js +13 -17
  71. package/lib/clients/middleware/signing/signer/signatureV4/utils/getCanonicalUri.js +5 -8
  72. package/lib/clients/middleware/signing/signer/signatureV4/utils/getCredentialScope.js +2 -2
  73. package/lib/clients/middleware/signing/signer/signatureV4/utils/getFormattedDates.js +3 -3
  74. package/lib/clients/middleware/signing/signer/signatureV4/utils/getHashedPayload.js +7 -11
  75. package/lib/clients/middleware/signing/signer/signatureV4/utils/getSignature.js +9 -10
  76. package/lib/clients/middleware/signing/signer/signatureV4/utils/getSignedHeaders.js +4 -6
  77. package/lib/clients/middleware/signing/signer/signatureV4/utils/getSigningKey.js +8 -8
  78. package/lib/clients/middleware/signing/signer/signatureV4/utils/getSigningValues.js +15 -16
  79. package/lib/clients/middleware/signing/signer/signatureV4/utils/getStringToSign.js +2 -4
  80. package/lib/clients/middleware/signing/utils/extendedEncodeURIComponent.js +3 -5
  81. package/lib/clients/middleware/signing/utils/getSkewCorrectedDate.js +1 -3
  82. package/lib/clients/middleware/signing/utils/getUpdatedSystemClockOffset.js +2 -2
  83. package/lib/clients/middleware/signing/utils/isClockSkewed.js +4 -6
  84. package/lib/clients/middleware/userAgent/middleware.js +14 -63
  85. package/lib/clients/serde/json.js +30 -96
  86. package/lib/clients/serde/responseInfo.js +12 -18
  87. package/lib/clients/utils/memoization.js +3 -3
  88. package/lib/constants.js +1 -1
  89. package/lib/errors/AmplifyError.js +9 -28
  90. package/lib/errors/PlatformNotSupportedError.js +7 -24
  91. package/lib/errors/createAssertionFunction.js +12 -15
  92. package/lib/errors/errorHelpers.js +7 -8
  93. package/lib/index.d.ts +1 -1
  94. package/lib/libraryUtils.d.ts +4 -0
  95. package/lib/libraryUtils.js +13 -3
  96. package/lib/parseAWSExports.js +109 -100
  97. package/lib/providers/kinesis/types/kinesis.d.ts +1 -1
  98. package/lib/providers/kinesis-firehose/types/kinesis-firehose.d.ts +1 -1
  99. package/lib/providers/personalize/types/personalize.d.ts +1 -1
  100. package/lib/providers/pinpoint/apis/flushEvents.js +8 -8
  101. package/lib/providers/pinpoint/apis/record.js +58 -93
  102. package/lib/providers/pinpoint/apis/updateEndpoint.js +65 -112
  103. package/lib/providers/pinpoint/types/pinpoint.d.ts +3 -1
  104. package/lib/providers/pinpoint/utils/PinpointEventBuffer.js +105 -196
  105. package/lib/providers/pinpoint/utils/cacheEndpointId.js +12 -49
  106. package/lib/providers/pinpoint/utils/getCacheKey.js +2 -2
  107. package/lib/providers/pinpoint/utils/getEndpointId.js +7 -51
  108. package/lib/providers/pinpoint/utils/getEventBuffer.js +19 -21
  109. package/lib/providers/pinpoint/utils/isAppInForeground.js +1 -1
  110. package/lib/providers/pinpoint/utils/isAppInForeground.native.js +2 -2
  111. package/lib/providers/pinpoint/utils/resolveEndpointId.js +20 -71
  112. package/lib/singleton/Amplify.d.ts +4 -0
  113. package/lib/singleton/Amplify.js +21 -103
  114. package/lib/singleton/Analytics/types.d.ts +5 -1
  115. package/lib/singleton/Auth/index.js +48 -115
  116. package/lib/singleton/Auth/types.d.ts +2 -2
  117. package/lib/singleton/Auth/utils/errorHelpers.js +7 -8
  118. package/lib/singleton/Auth/utils/index.js +18 -19
  119. package/lib/singleton/Predictions/types.d.ts +49 -0
  120. package/lib/singleton/Predictions/types.js +4 -0
  121. package/lib/singleton/apis/clearCredentials.js +1 -1
  122. package/lib/singleton/apis/fetchAuthSession.js +3 -3
  123. package/lib/singleton/apis/internal/fetchAuthSession.js +1 -1
  124. package/lib/singleton/apis/server/fetchAuthSession.js +3 -3
  125. package/lib/singleton/types.d.ts +3 -1
  126. package/lib/storage/CookieStorage.js +29 -99
  127. package/lib/storage/CookieStorage.native.js +5 -22
  128. package/lib/storage/DefaultStorage.js +6 -23
  129. package/lib/storage/DefaultStorage.native.js +18 -64
  130. package/lib/storage/InMemoryStorage.js +17 -23
  131. package/lib/storage/KeyValueStorage.js +24 -80
  132. package/lib/storage/SessionStorage.js +6 -23
  133. package/lib/storage/index.js +4 -4
  134. package/lib/storage/utils.js +7 -11
  135. package/lib/tsconfig.tsbuildinfo +1 -1
  136. package/lib/utils/WordArray.d.ts +7 -0
  137. package/lib/utils/WordArray.js +49 -0
  138. package/lib/utils/amplifyUrl/index.js +2 -2
  139. package/lib/utils/amplifyUrl/polyfill.native.js +1 -1
  140. package/lib/utils/amplifyUuid/index.d.ts +1 -1
  141. package/lib/utils/amplifyUuid/index.js +2 -2
  142. package/lib/utils/amplifyUuid/polyfill.native.js +1 -1
  143. package/lib/utils/convert/base64/base64Decoder.js +2 -2
  144. package/lib/utils/convert/base64/base64Encoder.js +5 -6
  145. package/lib/utils/convert/base64/bytesToString.js +1 -1
  146. package/lib/utils/cryptoSecureRandomInt.d.ts +1 -0
  147. package/lib/utils/cryptoSecureRandomInt.js +16 -0
  148. package/lib/utils/deepFreeze.js +6 -28
  149. package/lib/utils/generateRandomString.js +4 -4
  150. package/lib/utils/getClientInfo/getClientInfo.android.js +7 -7
  151. package/lib/utils/getClientInfo/getClientInfo.ios.js +12 -12
  152. package/lib/utils/getClientInfo/getClientInfo.js +16 -16
  153. package/lib/utils/globalHelpers/index.js +4 -4
  154. package/lib/utils/globalHelpers/index.native.js +6 -6
  155. package/lib/utils/isBrowser.js +1 -3
  156. package/lib/utils/isWebWorker.js +2 -2
  157. package/lib/utils/retry/NonRetryableError.js +5 -23
  158. package/lib/utils/retry/isNonRetryableError.js +2 -2
  159. package/lib/utils/retry/jitteredBackoff.js +6 -7
  160. package/lib/utils/retry/jitteredExponentialRetry.js +4 -7
  161. package/lib/utils/retry/retry.js +50 -140
  162. package/lib/utils/sessionListener/SessionListener.js +17 -19
  163. package/lib/utils/sessionListener/SessionListener.native.js +18 -22
  164. package/lib/utils/sessionListener/constants.d.ts +2 -0
  165. package/lib/utils/sessionListener/constants.js +8 -0
  166. package/lib/utils/sessionListener/index.d.ts +1 -0
  167. package/lib/utils/sessionListener/index.js +5 -2
  168. package/lib/utils/urlSafeDecode.js +2 -2
  169. package/lib/utils/urlSafeEncode.js +1 -1
  170. package/lib-esm/BackgroundProcessManager/BackgroundManagerNotOpenError.js +4 -22
  171. package/lib-esm/BackgroundProcessManager/BackgroundProcessManager.js +124 -244
  172. package/lib-esm/Cache/StorageCache.js +26 -87
  173. package/lib-esm/Cache/StorageCache.native.js +33 -136
  174. package/lib-esm/Cache/StorageCacheCommon.js +267 -597
  175. package/lib-esm/Cache/constants.js +2 -2
  176. package/lib-esm/Cache/index.js +1 -1
  177. package/lib-esm/Cache/utils/CacheList.js +41 -66
  178. package/lib-esm/Cache/utils/cacheHelpers.js +5 -7
  179. package/lib-esm/Cache/utils/errorHelpers.js +6 -7
  180. package/lib-esm/Hub/index.js +34 -75
  181. package/lib-esm/I18n/I18n.js +23 -39
  182. package/lib-esm/I18n/errorHelpers.js +4 -5
  183. package/lib-esm/I18n/index.js +21 -25
  184. package/lib-esm/I18n/types.js +3 -5
  185. package/lib-esm/Logger/ConsoleLogger.js +52 -128
  186. package/lib-esm/Mutex/Mutex.js +15 -20
  187. package/lib-esm/Platform/customUserAgent.js +13 -26
  188. package/lib-esm/Platform/detectFramework.js +11 -12
  189. package/lib-esm/Platform/detection/Angular.js +3 -4
  190. package/lib-esm/Platform/detection/React.js +4 -4
  191. package/lib-esm/Platform/detection/Svelte.js +1 -1
  192. package/lib-esm/Platform/detection/helpers.js +7 -7
  193. package/lib-esm/Platform/detection/index.js +3 -3
  194. package/lib-esm/Platform/index.js +23 -52
  195. package/lib-esm/Platform/types.d.ts +1 -1
  196. package/lib-esm/Platform/types.js +1 -1
  197. package/lib-esm/Platform/version.d.ts +1 -1
  198. package/lib-esm/Platform/version.js +1 -1
  199. package/lib-esm/Reachability/Reachability.js +18 -46
  200. package/lib-esm/Reachability/Reachability.native.js +10 -15
  201. package/lib-esm/ServiceWorker/ServiceWorker.js +74 -131
  202. package/lib-esm/ServiceWorker/errorHelpers.js +6 -7
  203. package/lib-esm/Signer/DateUtils.d.ts +9 -0
  204. package/lib-esm/Signer/DateUtils.js +20 -29
  205. package/lib-esm/Signer/Signer.d.ts +9 -0
  206. package/lib-esm/Signer/Signer.js +54 -51
  207. package/lib-esm/adapterCore/error/AmplifyServerContextError.js +8 -27
  208. package/lib-esm/adapterCore/serverContext/serverContext.js +6 -6
  209. package/lib-esm/adapterCore/serverContext/serverContextRegistry.js +7 -7
  210. package/lib-esm/awsClients/cognitoIdentity/base.js +21 -69
  211. package/lib-esm/awsClients/cognitoIdentity/getCredentialsForIdentity.js +22 -66
  212. package/lib-esm/awsClients/cognitoIdentity/getId.js +17 -60
  213. package/lib-esm/awsClients/pinpoint/base.js +8 -11
  214. package/lib-esm/awsClients/pinpoint/errorHelpers.js +4 -5
  215. package/lib-esm/awsClients/pinpoint/getInAppMessages.js +19 -63
  216. package/lib-esm/awsClients/pinpoint/putEvents.js +20 -64
  217. package/lib-esm/awsClients/pinpoint/updateEndpoint.js +23 -67
  218. package/lib-esm/clients/endpoints/getDnsSuffix.js +6 -28
  219. package/lib-esm/clients/endpoints/partitions.js +2 -2
  220. package/lib-esm/clients/handlers/authenticated.js +1 -1
  221. package/lib-esm/clients/handlers/fetch.js +40 -97
  222. package/lib-esm/clients/handlers/unauthenticated.js +1 -1
  223. package/lib-esm/clients/internal/composeServiceApi.js +17 -67
  224. package/lib-esm/clients/internal/composeTransferHandler.js +9 -11
  225. package/lib-esm/clients/middleware/retry/defaultRetryDecider.js +17 -74
  226. package/lib-esm/clients/middleware/retry/isClockSkewError.js +2 -4
  227. package/lib-esm/clients/middleware/retry/jitteredBackoff.js +4 -4
  228. package/lib-esm/clients/middleware/retry/middleware.js +61 -125
  229. package/lib-esm/clients/middleware/signing/middleware.js +21 -83
  230. package/lib-esm/clients/middleware/signing/signer/signatureV4/constants.js +17 -17
  231. package/lib-esm/clients/middleware/signing/signer/signatureV4/index.js +0 -1
  232. package/lib-esm/clients/middleware/signing/signer/signatureV4/presignUrl.js +17 -52
  233. package/lib-esm/clients/middleware/signing/signer/signatureV4/signRequest.js +10 -21
  234. package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/dataHashHelpers.js +5 -5
  235. package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/getCanonicalHeaders.js +8 -30
  236. package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/getCanonicalQueryString.js +11 -38
  237. package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/getCanonicalRequest.js +8 -12
  238. package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/getCanonicalUri.js +5 -8
  239. package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/getCredentialScope.js +1 -1
  240. package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/getFormattedDates.js +3 -3
  241. package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/getHashedPayload.js +5 -9
  242. package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/getSignature.js +5 -6
  243. package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/getSignedHeaders.js +4 -6
  244. package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/getSigningKey.js +6 -6
  245. package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/getSigningValues.js +13 -14
  246. package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/getStringToSign.js +1 -3
  247. package/lib-esm/clients/middleware/signing/utils/extendedEncodeURIComponent.js +3 -5
  248. package/lib-esm/clients/middleware/signing/utils/getSkewCorrectedDate.js +1 -3
  249. package/lib-esm/clients/middleware/signing/utils/getUpdatedSystemClockOffset.js +1 -1
  250. package/lib-esm/clients/middleware/signing/utils/isClockSkewed.js +3 -5
  251. package/lib-esm/clients/middleware/userAgent/middleware.js +14 -63
  252. package/lib-esm/clients/serde/json.js +29 -95
  253. package/lib-esm/clients/serde/responseInfo.js +11 -17
  254. package/lib-esm/clients/utils/memoization.js +3 -3
  255. package/lib-esm/constants.js +5 -5
  256. package/lib-esm/errors/AmplifyError.js +9 -29
  257. package/lib-esm/errors/PlatformNotSupportedError.js +5 -23
  258. package/lib-esm/errors/createAssertionFunction.js +11 -14
  259. package/lib-esm/errors/errorHelpers.js +6 -7
  260. package/lib-esm/index.d.ts +1 -1
  261. package/lib-esm/libraryUtils.d.ts +4 -0
  262. package/lib-esm/libraryUtils.js +4 -0
  263. package/lib-esm/parseAWSExports.js +108 -99
  264. package/lib-esm/providers/kinesis/types/kinesis.d.ts +1 -1
  265. package/lib-esm/providers/kinesis-firehose/types/kinesis-firehose.d.ts +1 -1
  266. package/lib-esm/providers/personalize/types/personalize.d.ts +1 -1
  267. package/lib-esm/providers/pinpoint/apis/flushEvents.js +6 -6
  268. package/lib-esm/providers/pinpoint/apis/record.js +54 -89
  269. package/lib-esm/providers/pinpoint/apis/updateEndpoint.js +61 -108
  270. package/lib-esm/providers/pinpoint/types/pinpoint.d.ts +3 -1
  271. package/lib-esm/providers/pinpoint/utils/PinpointEventBuffer.js +102 -194
  272. package/lib-esm/providers/pinpoint/utils/cacheEndpointId.js +10 -47
  273. package/lib-esm/providers/pinpoint/utils/constants.js +4 -4
  274. package/lib-esm/providers/pinpoint/utils/getCacheKey.js +2 -2
  275. package/lib-esm/providers/pinpoint/utils/getEndpointId.js +5 -49
  276. package/lib-esm/providers/pinpoint/utils/getEventBuffer.js +17 -19
  277. package/lib-esm/providers/pinpoint/utils/isAppInForeground.js +1 -1
  278. package/lib-esm/providers/pinpoint/utils/isAppInForeground.native.js +1 -1
  279. package/lib-esm/providers/pinpoint/utils/resolveEndpointId.js +16 -67
  280. package/lib-esm/singleton/Amplify.d.ts +4 -0
  281. package/lib-esm/singleton/Amplify.js +18 -101
  282. package/lib-esm/singleton/Analytics/types.d.ts +5 -1
  283. package/lib-esm/singleton/Auth/index.js +48 -116
  284. package/lib-esm/singleton/Auth/types.d.ts +2 -2
  285. package/lib-esm/singleton/Auth/utils/errorHelpers.js +7 -8
  286. package/lib-esm/singleton/Auth/utils/index.js +16 -17
  287. package/lib-esm/singleton/Predictions/types.d.ts +49 -0
  288. package/lib-esm/singleton/Predictions/types.js +3 -0
  289. package/lib-esm/singleton/apis/fetchAuthSession.js +1 -1
  290. package/lib-esm/singleton/apis/internal/fetchAuthSession.js +1 -1
  291. package/lib-esm/singleton/apis/server/fetchAuthSession.js +1 -1
  292. package/lib-esm/singleton/types.d.ts +3 -1
  293. package/lib-esm/storage/CookieStorage.js +28 -99
  294. package/lib-esm/storage/CookieStorage.native.js +4 -22
  295. package/lib-esm/storage/DefaultStorage.js +4 -22
  296. package/lib-esm/storage/DefaultStorage.native.js +17 -64
  297. package/lib-esm/storage/InMemoryStorage.js +17 -24
  298. package/lib-esm/storage/KeyValueStorage.js +23 -80
  299. package/lib-esm/storage/SessionStorage.js +4 -22
  300. package/lib-esm/storage/index.js +3 -3
  301. package/lib-esm/storage/utils.js +6 -10
  302. package/lib-esm/tsconfig.tsbuildinfo +1 -1
  303. package/lib-esm/utils/WordArray.d.ts +7 -0
  304. package/lib-esm/utils/WordArray.js +46 -0
  305. package/lib-esm/utils/amplifyUrl/index.js +2 -2
  306. package/lib-esm/utils/amplifyUuid/index.d.ts +1 -1
  307. package/lib-esm/utils/amplifyUuid/index.js +1 -1
  308. package/lib-esm/utils/convert/base64/base64Decoder.js +2 -2
  309. package/lib-esm/utils/convert/base64/base64Encoder.js +4 -5
  310. package/lib-esm/utils/convert/base64/bytesToString.js +1 -1
  311. package/lib-esm/utils/cryptoSecureRandomInt.d.ts +1 -0
  312. package/lib-esm/utils/cryptoSecureRandomInt.js +12 -0
  313. package/lib-esm/utils/deepFreeze.js +6 -28
  314. package/lib-esm/utils/generateRandomString.js +4 -4
  315. package/lib-esm/utils/getClientInfo/getClientInfo.android.js +5 -5
  316. package/lib-esm/utils/getClientInfo/getClientInfo.ios.js +10 -10
  317. package/lib-esm/utils/getClientInfo/getClientInfo.js +15 -15
  318. package/lib-esm/utils/globalHelpers/index.js +3 -3
  319. package/lib-esm/utils/globalHelpers/index.native.js +4 -4
  320. package/lib-esm/utils/isBrowser.js +1 -3
  321. package/lib-esm/utils/isWebWorker.js +2 -2
  322. package/lib-esm/utils/retry/NonRetryableError.js +5 -24
  323. package/lib-esm/utils/retry/constants.js +1 -1
  324. package/lib-esm/utils/retry/isNonRetryableError.js +2 -2
  325. package/lib-esm/utils/retry/jitteredBackoff.js +5 -6
  326. package/lib-esm/utils/retry/jitteredExponentialRetry.js +1 -4
  327. package/lib-esm/utils/retry/retry.js +48 -138
  328. package/lib-esm/utils/sessionListener/SessionListener.js +16 -19
  329. package/lib-esm/utils/sessionListener/SessionListener.native.js +17 -22
  330. package/lib-esm/utils/sessionListener/constants.d.ts +2 -0
  331. package/lib-esm/utils/sessionListener/constants.js +5 -0
  332. package/lib-esm/utils/sessionListener/index.d.ts +1 -0
  333. package/lib-esm/utils/sessionListener/index.js +2 -1
  334. package/lib-esm/utils/urlSafeDecode.js +2 -2
  335. package/lib-esm/utils/urlSafeEncode.js +1 -1
  336. package/package.json +11 -24
  337. package/src/Cache/types/index.ts +4 -4
  338. package/src/Platform/types.ts +1 -1
  339. package/src/Platform/version.ts +1 -1
  340. package/src/Signer/DateUtils.ts +10 -2
  341. package/src/Signer/Signer.ts +9 -2
  342. package/src/clients/middleware/signing/signer/signatureV4/index.ts +0 -1
  343. package/src/index.ts +1 -0
  344. package/src/libraryUtils.ts +7 -1
  345. package/src/parseAWSExports.ts +45 -6
  346. package/src/providers/kinesis/types/kinesis.ts +1 -1
  347. package/src/providers/kinesis-firehose/types/kinesis-firehose.ts +1 -1
  348. package/src/providers/personalize/types/personalize.ts +1 -1
  349. package/src/providers/pinpoint/apis/record.ts +22 -5
  350. package/src/providers/pinpoint/types/pinpoint.ts +3 -1
  351. package/src/singleton/Amplify.ts +9 -52
  352. package/src/singleton/Analytics/types.ts +9 -4
  353. package/src/singleton/Auth/types.ts +2 -2
  354. package/src/singleton/Predictions/types.ts +61 -0
  355. package/src/singleton/types.ts +3 -1
  356. package/src/utils/WordArray.ts +57 -0
  357. package/src/utils/amplifyUuid/index.ts +1 -1
  358. package/src/utils/cryptoSecureRandomInt.ts +14 -0
  359. package/src/utils/sessionListener/constants.ts +6 -0
  360. package/src/utils/sessionListener/index.ts +1 -0
@@ -6,30 +6,22 @@
6
6
  *
7
7
  * @see https://github.com/aws/aws-sdk-js/blob/6edf586dcc1de7fe8fbfbbd9a0d2b1847921e6e1/lib/util.js#L262
8
8
  */
9
- var __read = (this && this.__read) || function (o, n) {
10
- var m = typeof Symbol === "function" && o[Symbol.iterator];
11
- if (!m) return o;
12
- var i = m.call(o), r, ar = [], e;
13
- try {
14
- while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
15
- }
16
- catch (error) { e = { error: error }; }
17
- finally {
18
- try {
19
- if (r && !r.done && (m = i["return"])) m.call(i);
20
- }
21
- finally { if (e) throw e.error; }
22
- }
23
- return ar;
24
- };
25
- // Comment - TODO: remove
26
- var FIVE_MINUTES_IN_MS = 1000 * 60 * 5;
27
- export var DateUtils = {
9
+ const FIVE_MINUTES_IN_MS = 1000 * 60 * 5;
10
+ /**
11
+ * This utility is intended to be deprecated and replaced by `signRequest` and `presignUrl` functions from
12
+ * `clients/middleware/signing/signer/signatureV4`.
13
+ *
14
+ * TODO: refactor the logics here into `signRequest` and `presignUrl` functions and remove this class.
15
+ *
16
+ * @internal
17
+ * @deprecated
18
+ */
19
+ export const DateUtils = {
28
20
  /**
29
21
  * Milliseconds to offset the date to compensate for clock skew between device & services
30
22
  */
31
23
  clockOffset: 0,
32
- getDateWithClockOffset: function () {
24
+ getDateWithClockOffset() {
33
25
  if (DateUtils.clockOffset) {
34
26
  return new Date(new Date().getTime() + DateUtils.clockOffset);
35
27
  }
@@ -40,33 +32,32 @@ export var DateUtils = {
40
32
  /**
41
33
  * @returns {number} Clock offset in milliseconds
42
34
  */
43
- getClockOffset: function () {
35
+ getClockOffset() {
44
36
  return DateUtils.clockOffset;
45
37
  },
46
- getHeaderStringFromDate: function (date) {
47
- if (date === void 0) { date = DateUtils.getDateWithClockOffset(); }
38
+ getHeaderStringFromDate(date = DateUtils.getDateWithClockOffset()) {
48
39
  return date.toISOString().replace(/[:\-]|\.\d{3}/g, '');
49
40
  },
50
- getDateFromHeaderString: function (header) {
51
- var _a = __read(header.match(/^(\d{4})(\d{2})(\d{2})T(\d{2})(\d{2})(\d{2}).+/), 7), year = _a[1], month = _a[2], day = _a[3], hour = _a[4], minute = _a[5], second = _a[6];
41
+ getDateFromHeaderString(header) {
42
+ const [, year, month, day, hour, minute, second] = header.match(/^(\d{4})(\d{2})(\d{2})T(\d{2})(\d{2})(\d{2}).+/);
52
43
  return new Date(Date.UTC(Number(year), Number(month) - 1, Number(day), Number(hour), Number(minute), Number(second)));
53
44
  },
54
- isClockSkewed: function (serverDate) {
45
+ isClockSkewed(serverDate) {
55
46
  // API gateway permits client calls that are off by no more than ±5 minutes
56
47
  return (Math.abs(serverDate.getTime() - DateUtils.getDateWithClockOffset().getTime()) >= FIVE_MINUTES_IN_MS);
57
48
  },
58
- isClockSkewError: function (error) {
49
+ isClockSkewError(error) {
59
50
  if (!error.response || !error.response.headers) {
60
51
  return false;
61
52
  }
62
- var headers = error.response.headers;
53
+ const { headers } = error.response;
63
54
  return Boolean(['BadRequestException', 'InvalidSignatureException'].includes(headers['x-amzn-errortype']) &&
64
55
  (headers.date || headers.Date));
65
56
  },
66
57
  /**
67
58
  * @param {number} offset Clock offset in milliseconds
68
59
  */
69
- setClockOffset: function (offset) {
60
+ setClockOffset(offset) {
70
61
  DateUtils.clockOffset = offset;
71
62
  },
72
63
  };
@@ -1,3 +1,12 @@
1
+ /**
2
+ * This class is intended to be deprecated and replaced by `signRequest` and `presignUrl` functions from
3
+ * `clients/middleware/signing/signer/signatureV4`.
4
+ *
5
+ * TODO: refactor the logics here into `signRequest` and `presignUrl` functions and remove this class.
6
+ *
7
+ * @internal
8
+ * @deprecated
9
+ */
1
10
  export declare class Signer {
2
11
  /**
3
12
  * Sign a HTTP request, add 'Authorization' header to request param
@@ -1,25 +1,21 @@
1
1
  // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
2
  // SPDX-License-Identifier: Apache-2.0
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
3
  import { DateUtils } from './DateUtils';
15
4
  import { presignUrl, signRequest, TOKEN_QUERY_PARAM, } from '../clients/middleware/signing/signer/signatureV4';
16
5
  import { AmplifyUrl } from '../utils/amplifyUrl';
17
- var IOT_SERVICE_NAME = 'iotdevicegateway';
6
+ const IOT_SERVICE_NAME = 'iotdevicegateway';
18
7
  // Best practice regex to parse the service and region from an AWS endpoint
19
- var AWS_ENDPOINT_REGEX = /([^\.]+)\.(?:([^\.]*)\.)?amazonaws\.com(.cn)?$/;
20
- var Signer = /** @class */ (function () {
21
- function Signer() {
22
- }
8
+ const AWS_ENDPOINT_REGEX = /([^\.]+)\.(?:([^\.]*)\.)?amazonaws\.com(.cn)?$/;
9
+ /**
10
+ * This class is intended to be deprecated and replaced by `signRequest` and `presignUrl` functions from
11
+ * `clients/middleware/signing/signer/signatureV4`.
12
+ *
13
+ * TODO: refactor the logics here into `signRequest` and `presignUrl` functions and remove this class.
14
+ *
15
+ * @internal
16
+ * @deprecated
17
+ */
18
+ export class Signer {
23
19
  /**
24
20
  * Sign a HTTP request, add 'Authorization' header to request param
25
21
  * @method sign
@@ -56,14 +52,18 @@ var Signer = /** @class */ (function () {
56
52
  *
57
53
  * @returns {object} Signed HTTP request
58
54
  */
59
- Signer.sign = function (request, accessInfo, serviceInfo) {
55
+ static sign(request, accessInfo, serviceInfo) {
60
56
  request.headers = request.headers || {};
61
57
  if (request.body && !request.data) {
62
58
  throw new Error('The attribute "body" was found on the request object. Please use the attribute "data" instead.');
63
59
  }
64
- var requestToSign = __assign(__assign({}, request), { body: request.data, url: new AmplifyUrl(request.url) });
65
- var options = getOptions(requestToSign, accessInfo, serviceInfo);
66
- var signedRequest = signRequest(requestToSign, options);
60
+ const requestToSign = {
61
+ ...request,
62
+ body: request.data,
63
+ url: new AmplifyUrl(request.url),
64
+ };
65
+ const options = getOptions(requestToSign, accessInfo, serviceInfo);
66
+ const signedRequest = signRequest(requestToSign, options);
67
67
  // Prior to using `signRequest`, Signer accepted urls as strings and outputted urls as string. Coerce the property
68
68
  // back to a string so as not to disrupt consumers of Signer.
69
69
  signedRequest.url = signedRequest.url.toString();
@@ -75,42 +75,48 @@ var Signer = /** @class */ (function () {
75
75
  delete signedRequest.headers.authorization;
76
76
  delete signedRequest.headers['x-amz-security-token'];
77
77
  return signedRequest;
78
- };
79
- Signer.signUrl = function (urlOrRequest, accessInfo, serviceInfo, expiration) {
80
- var urlToSign = typeof urlOrRequest === 'object' ? urlOrRequest.url : urlOrRequest;
81
- var method = typeof urlOrRequest === 'object' ? urlOrRequest.method : 'GET';
82
- var body = typeof urlOrRequest === 'object' ? urlOrRequest.body : undefined;
83
- var presignable = {
84
- body: body,
85
- method: method,
78
+ }
79
+ static signUrl(urlOrRequest, accessInfo, serviceInfo, expiration) {
80
+ const urlToSign = typeof urlOrRequest === 'object' ? urlOrRequest.url : urlOrRequest;
81
+ const method = typeof urlOrRequest === 'object' ? urlOrRequest.method : 'GET';
82
+ const body = typeof urlOrRequest === 'object' ? urlOrRequest.body : undefined;
83
+ const presignable = {
84
+ body,
85
+ method,
86
86
  url: new AmplifyUrl(urlToSign),
87
87
  };
88
- var options = getOptions(presignable, accessInfo, serviceInfo, expiration);
89
- var signedUrl = presignUrl(presignable, options);
88
+ const options = getOptions(presignable, accessInfo, serviceInfo, expiration);
89
+ const signedUrl = presignUrl(presignable, options);
90
90
  if (accessInfo.session_token &&
91
91
  !sessionTokenRequiredInSigning(options.signingService)) {
92
92
  signedUrl.searchParams.append(TOKEN_QUERY_PARAM, accessInfo.session_token);
93
93
  }
94
94
  return signedUrl.toString();
95
+ }
96
+ }
97
+ const getOptions = (request, accessInfo, serviceInfo, expiration) => {
98
+ const { access_key, secret_key, session_token } = accessInfo ?? {};
99
+ const { region: urlRegion, service: urlService } = parseServiceInfo(request.url);
100
+ const { region = urlRegion, service = urlService } = serviceInfo ?? {};
101
+ const credentials = {
102
+ accessKeyId: access_key,
103
+ secretAccessKey: secret_key,
104
+ ...(sessionTokenRequiredInSigning(service)
105
+ ? { sessionToken: session_token }
106
+ : {}),
107
+ };
108
+ return {
109
+ credentials,
110
+ signingDate: DateUtils.getDateWithClockOffset(),
111
+ signingRegion: region,
112
+ signingService: service,
113
+ ...(expiration && { expiration }),
95
114
  };
96
- return Signer;
97
- }());
98
- export { Signer };
99
- var getOptions = function (request, accessInfo, serviceInfo, expiration) {
100
- var _a = accessInfo !== null && accessInfo !== void 0 ? accessInfo : {}, access_key = _a.access_key, secret_key = _a.secret_key, session_token = _a.session_token;
101
- var _b = parseServiceInfo(request.url), urlRegion = _b.region, urlService = _b.service;
102
- var _c = serviceInfo !== null && serviceInfo !== void 0 ? serviceInfo : {}, _d = _c.region, region = _d === void 0 ? urlRegion : _d, _e = _c.service, service = _e === void 0 ? urlService : _e;
103
- var credentials = __assign({ accessKeyId: access_key, secretAccessKey: secret_key }, (sessionTokenRequiredInSigning(service)
104
- ? { sessionToken: session_token }
105
- : {}));
106
- return __assign({ credentials: credentials, signingDate: DateUtils.getDateWithClockOffset(), signingRegion: region, signingService: service }, (expiration && { expiration: expiration }));
107
115
  };
108
- // TODO: V6 investigate whether add to custom clients' general signer implementation.
109
- var parseServiceInfo = function (url) {
110
- var _a;
111
- var host = url.host;
112
- var matched = (_a = host.match(AWS_ENDPOINT_REGEX)) !== null && _a !== void 0 ? _a : [];
113
- var parsed = matched.slice(1, 3);
116
+ const parseServiceInfo = (url) => {
117
+ const host = url.host;
118
+ const matched = host.match(AWS_ENDPOINT_REGEX) ?? [];
119
+ let parsed = matched.slice(1, 3);
114
120
  if (parsed[1] === 'es') {
115
121
  // Elastic Search
116
122
  parsed = parsed.reverse();
@@ -122,7 +128,4 @@ var parseServiceInfo = function (url) {
122
128
  };
123
129
  // IoT service does not allow the session token in the canonical request
124
130
  // https://docs.aws.amazon.com/general/latest/gr/sigv4-add-signature-to-request.html
125
- // TODO: V6 investigate whether add to custom clients' general signer implementation.
126
- var sessionTokenRequiredInSigning = function (service) {
127
- return service !== IOT_SERVICE_NAME;
128
- };
131
+ const sessionTokenRequiredInSigning = (service) => service !== IOT_SERVICE_NAME;
@@ -1,32 +1,13 @@
1
1
  // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
2
  // SPDX-License-Identifier: Apache-2.0
3
- var __extends = (this && this.__extends) || (function () {
4
- var extendStatics = function (d, b) {
5
- extendStatics = Object.setPrototypeOf ||
6
- ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
7
- function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
8
- return extendStatics(d, b);
9
- };
10
- return function (d, b) {
11
- if (typeof b !== "function" && b !== null)
12
- throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
13
- extendStatics(d, b);
14
- function __() { this.constructor = d; }
15
- d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
16
- };
17
- })();
18
3
  import { AmplifyError } from '../../errors';
19
- var AmplifyServerContextError = /** @class */ (function (_super) {
20
- __extends(AmplifyServerContextError, _super);
21
- function AmplifyServerContextError(_a) {
22
- var message = _a.message, recoverySuggestion = _a.recoverySuggestion, underlyingError = _a.underlyingError;
23
- return _super.call(this, {
4
+ export class AmplifyServerContextError extends AmplifyError {
5
+ constructor({ message, recoverySuggestion, underlyingError, }) {
6
+ super({
24
7
  name: 'AmplifyServerContextError',
25
- message: message,
26
- recoverySuggestion: recoverySuggestion,
27
- underlyingError: underlyingError,
28
- }) || this;
8
+ message,
9
+ recoverySuggestion,
10
+ underlyingError,
11
+ });
29
12
  }
30
- return AmplifyServerContextError;
31
- }(AmplifyError));
32
- export { AmplifyServerContextError };
13
+ }
@@ -8,11 +8,11 @@ import { AmplifyClass } from '../../singleton';
8
8
  * @param libraryOptions The Amplify library options.
9
9
  * @returns The Amplify server context spec.
10
10
  */
11
- export var createAmplifyServerContext = function (amplifyConfig, libraryOptions) {
12
- var amplify = new AmplifyClass();
11
+ export const createAmplifyServerContext = (amplifyConfig, libraryOptions) => {
12
+ const amplify = new AmplifyClass();
13
13
  amplify.configure(amplifyConfig, libraryOptions);
14
14
  return serverContextRegistry.register({
15
- amplify: amplify,
15
+ amplify,
16
16
  });
17
17
  };
18
18
  /**
@@ -20,8 +20,8 @@ export var createAmplifyServerContext = function (amplifyConfig, libraryOptions)
20
20
  * @param contextSpec The context spec used to get the Amplify server context.
21
21
  * @returns The Amplify server context.
22
22
  */
23
- export var getAmplifyServerContext = function (contextSpec) {
24
- var context = serverContextRegistry.get(contextSpec);
23
+ export const getAmplifyServerContext = (contextSpec) => {
24
+ const context = serverContextRegistry.get(contextSpec);
25
25
  if (context) {
26
26
  return context;
27
27
  }
@@ -31,6 +31,6 @@ export var getAmplifyServerContext = function (contextSpec) {
31
31
  * Destroys an Amplify server context.
32
32
  * @param contextSpec The context spec used to destroy the Amplify server context.
33
33
  */
34
- export var destroyAmplifyServerContext = function (contextSpec) {
34
+ export const destroyAmplifyServerContext = (contextSpec) => {
35
35
  serverContextRegistry.deregister(contextSpec);
36
36
  };
@@ -1,21 +1,21 @@
1
1
  // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
2
  // SPDX-License-Identifier: Apache-2.0
3
- var storage = new WeakMap();
3
+ const storage = new WeakMap();
4
4
  function createToken() {
5
5
  return {
6
6
  value: Symbol('AmplifyServerContextToken'),
7
7
  };
8
8
  }
9
- export var serverContextRegistry = {
10
- register: function (context) {
11
- var token = createToken();
9
+ export const serverContextRegistry = {
10
+ register(context) {
11
+ const token = createToken();
12
12
  storage.set(token, context);
13
- return { token: token };
13
+ return { token };
14
14
  },
15
- deregister: function (contextSpec) {
15
+ deregister(contextSpec) {
16
16
  return storage.delete(contextSpec.token);
17
17
  },
18
- get: function (contextSpec) {
18
+ get(contextSpec) {
19
19
  return storage.get(contextSpec.token);
20
20
  },
21
21
  };
@@ -1,41 +1,5 @@
1
1
  // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
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
3
  import { getDnsSuffix, unauthenticatedHandler, parseJsonError, } from '../../clients';
40
4
  import { composeTransferHandler } from '../../clients/internal/composeTransferHandler';
41
5
  import { jitteredBackoff, getRetryDecider, } from '../../clients/middleware/retry';
@@ -45,66 +9,54 @@ import { AmplifyUrl } from '../../utils/amplifyUrl';
45
9
  /**
46
10
  * The service name used to sign requests if the API requires authentication.
47
11
  */
48
- var SERVICE_NAME = 'cognito-identity';
12
+ const SERVICE_NAME = 'cognito-identity';
49
13
  /**
50
14
  * The endpoint resolver function that returns the endpoint URL for a given region.
51
15
  */
52
- var endpointResolver = function (_a) {
53
- var region = _a.region;
54
- return ({
55
- url: new AmplifyUrl("https://cognito-identity.".concat(region, ".").concat(getDnsSuffix(region))),
56
- });
57
- };
16
+ const endpointResolver = ({ region }) => ({
17
+ url: new AmplifyUrl(`https://cognito-identity.${region}.${getDnsSuffix(region)}`),
18
+ });
58
19
  /**
59
20
  * A Cognito Identity-specific middleware that disables caching for all requests.
60
21
  */
61
- var disableCacheMiddleware = function () { return function (next, context) {
62
- return function disableCacheMiddleware(request) {
63
- return __awaiter(this, void 0, void 0, function () {
64
- return __generator(this, function (_a) {
65
- request.headers['cache-control'] = 'no-store';
66
- return [2 /*return*/, next(request)];
67
- });
68
- });
69
- };
70
- }; };
22
+ const disableCacheMiddleware = () => (next, context) => async function disableCacheMiddleware(request) {
23
+ request.headers['cache-control'] = 'no-store';
24
+ return next(request);
25
+ };
71
26
  /**
72
27
  * A Cognito Identity-specific transfer handler that does NOT sign requests, and
73
28
  * disables caching.
74
29
  *
75
30
  * @internal
76
31
  */
77
- export var cognitoIdentityTransferHandler = composeTransferHandler(unauthenticatedHandler, [disableCacheMiddleware]);
32
+ export const cognitoIdentityTransferHandler = composeTransferHandler(unauthenticatedHandler, [disableCacheMiddleware]);
78
33
  /**
79
34
  * @internal
80
35
  */
81
- export var defaultConfig = {
36
+ export const defaultConfig = {
82
37
  service: SERVICE_NAME,
83
- endpointResolver: endpointResolver,
38
+ endpointResolver,
84
39
  retryDecider: getRetryDecider(parseJsonError),
85
40
  computeDelay: jitteredBackoff,
86
41
  userAgentValue: getAmplifyUserAgent(),
87
42
  cache: 'no-store',
88
43
  };
89
- observeFrameworkChanges(function () {
44
+ observeFrameworkChanges(() => {
90
45
  defaultConfig.userAgentValue = getAmplifyUserAgent();
91
46
  });
92
47
  /**
93
48
  * @internal
94
49
  */
95
- export var getSharedHeaders = function (operation) { return ({
50
+ export const getSharedHeaders = (operation) => ({
96
51
  'content-type': 'application/x-amz-json-1.1',
97
- 'x-amz-target': "AWSCognitoIdentityService.".concat(operation),
98
- }); };
52
+ 'x-amz-target': `AWSCognitoIdentityService.${operation}`,
53
+ });
99
54
  /**
100
55
  * @internal
101
56
  */
102
- export var buildHttpRpcRequest = function (_a, headers, body) {
103
- var url = _a.url;
104
- return ({
105
- headers: headers,
106
- url: url,
107
- body: body,
108
- method: 'POST',
109
- });
110
- };
57
+ export const buildHttpRpcRequest = ({ url }, headers, body) => ({
58
+ headers,
59
+ url,
60
+ body,
61
+ method: 'POST',
62
+ });
@@ -1,80 +1,36 @@
1
1
  // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
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
3
  import { buildHttpRpcRequest, cognitoIdentityTransferHandler, defaultConfig, getSharedHeaders, } from './base';
40
4
  import { parseJsonBody, parseJsonError, parseMetadata, } from '../../clients';
41
5
  import { composeServiceApi } from '../../clients/internal';
42
- var getCredentialsForIdentitySerializer = function (input, endpoint) {
43
- var headers = getSharedHeaders('GetCredentialsForIdentity');
44
- var body = JSON.stringify(input);
6
+ const getCredentialsForIdentitySerializer = (input, endpoint) => {
7
+ const headers = getSharedHeaders('GetCredentialsForIdentity');
8
+ const body = JSON.stringify(input);
45
9
  return buildHttpRpcRequest(endpoint, headers, body);
46
10
  };
47
- var getCredentialsForIdentityDeserializer = function (response) { return __awaiter(void 0, void 0, void 0, function () {
48
- var error, body;
49
- return __generator(this, function (_a) {
50
- switch (_a.label) {
51
- case 0:
52
- if (!(response.statusCode >= 300)) return [3 /*break*/, 2];
53
- return [4 /*yield*/, parseJsonError(response)];
54
- case 1:
55
- error = _a.sent();
56
- throw error;
57
- case 2: return [4 /*yield*/, parseJsonBody(response)];
58
- case 3:
59
- body = _a.sent();
60
- return [2 /*return*/, {
61
- IdentityId: body.IdentityId,
62
- Credentials: deserializeCredentials(body.Credentials),
63
- $metadata: parseMetadata(response),
64
- }];
65
- }
66
- });
67
- }); };
68
- var deserializeCredentials = function (_a) {
69
- var _b = _a === void 0 ? {} : _a, AccessKeyId = _b.AccessKeyId, SecretKey = _b.SecretKey, SessionToken = _b.SessionToken, Expiration = _b.Expiration;
11
+ const getCredentialsForIdentityDeserializer = async (response) => {
12
+ if (response.statusCode >= 300) {
13
+ const error = await parseJsonError(response);
14
+ throw error;
15
+ }
16
+ else {
17
+ const body = await parseJsonBody(response);
18
+ return {
19
+ IdentityId: body.IdentityId,
20
+ Credentials: deserializeCredentials(body.Credentials),
21
+ $metadata: parseMetadata(response),
22
+ };
23
+ }
24
+ };
25
+ const deserializeCredentials = ({ AccessKeyId, SecretKey, SessionToken, Expiration, } = {}) => {
70
26
  return {
71
- AccessKeyId: AccessKeyId,
72
- SecretKey: SecretKey,
73
- SessionToken: SessionToken,
27
+ AccessKeyId,
28
+ SecretKey,
29
+ SessionToken,
74
30
  Expiration: Expiration && new Date(Expiration * 1000),
75
31
  };
76
32
  };
77
33
  /**
78
34
  * @internal
79
35
  */
80
- export var getCredentialsForIdentity = composeServiceApi(cognitoIdentityTransferHandler, getCredentialsForIdentitySerializer, getCredentialsForIdentityDeserializer, defaultConfig);
36
+ export const getCredentialsForIdentity = composeServiceApi(cognitoIdentityTransferHandler, getCredentialsForIdentitySerializer, getCredentialsForIdentityDeserializer, defaultConfig);