@aws-amplify/core 6.0.1-preview-testing.be90020.0 → 6.0.1-ssr-api.df60e41.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 (947) hide show
  1. package/internals/aws-clients/pinpoint/package.json +4 -4
  2. package/lib/BackgroundProcessManager/BackgroundManagerNotOpenError.d.ts +3 -0
  3. package/lib/BackgroundProcessManager/BackgroundManagerNotOpenError.js +11 -0
  4. package/lib/{Util → BackgroundProcessManager}/BackgroundProcessManager.d.ts +1 -23
  5. package/lib/BackgroundProcessManager/BackgroundProcessManager.js +287 -0
  6. package/lib/BackgroundProcessManager/index.d.ts +1 -0
  7. package/lib/BackgroundProcessManager/index.js +7 -0
  8. package/lib/BackgroundProcessManager/types.d.ts +41 -0
  9. package/lib/BackgroundProcessManager/types.js +23 -0
  10. package/lib/Cache/StorageCache.d.ts +14 -31
  11. package/lib/Cache/StorageCache.js +41 -106
  12. package/lib/Cache/StorageCache.native.d.ts +19 -0
  13. package/lib/Cache/StorageCache.native.js +62 -0
  14. package/lib/Cache/{AsyncStorageCache.d.ts → StorageCacheCommon.d.ts} +124 -99
  15. package/lib/Cache/StorageCacheCommon.js +468 -0
  16. package/lib/Cache/constants.d.ts +6 -0
  17. package/lib/Cache/constants.js +17 -0
  18. package/lib/Cache/index.d.ts +2 -0
  19. package/lib/Cache/index.js +7 -0
  20. package/lib/Cache/types/cache.d.ts +38 -0
  21. package/lib/Cache/types/index.d.ts +1 -1
  22. package/lib/Cache/types/index.js +1 -1
  23. package/lib/Cache/{Utils → utils}/CacheList.d.ts +1 -1
  24. package/lib/Cache/utils/CacheList.js +160 -0
  25. package/lib/Cache/utils/cacheHelpers.d.ts +14 -0
  26. package/lib/Cache/utils/cacheHelpers.js +49 -0
  27. package/lib/Cache/utils/errorHelpers.d.ts +7 -0
  28. package/lib/Cache/utils/errorHelpers.js +24 -0
  29. package/lib/Cache/utils/index.d.ts +2 -0
  30. package/lib/Cache/utils/index.js +12 -0
  31. package/lib/Hub/index.d.ts +7 -0
  32. package/lib/Hub/index.js +44 -77
  33. package/lib/Hub/types/AuthTypes.d.ts +19 -0
  34. package/lib/I18n/I18n.d.ts +3 -19
  35. package/lib/I18n/I18n.js +25 -60
  36. package/lib/I18n/errorHelpers.d.ts +5 -0
  37. package/lib/I18n/errorHelpers.js +16 -0
  38. package/lib/I18n/index.d.ts +3 -15
  39. package/lib/I18n/index.js +28 -56
  40. package/lib/I18n/types.d.ts +1 -4
  41. package/lib/I18n/types.js +5 -9
  42. package/lib/Logger/ConsoleLogger.js +54 -130
  43. package/{lib-esm/Util → lib/Mutex}/Mutex.d.ts +2 -15
  44. package/lib/{Util → Mutex}/Mutex.js +17 -20
  45. package/lib/Mutex/index.d.ts +1 -0
  46. package/lib/Mutex/index.js +7 -0
  47. package/lib/Mutex/types.d.ts +13 -0
  48. package/lib/Platform/customUserAgent.d.ts +16 -0
  49. package/lib/Platform/customUserAgent.js +57 -0
  50. package/lib/Platform/detectFramework.js +12 -13
  51. package/lib/Platform/detection/Angular.js +4 -5
  52. package/lib/Platform/detection/Expo.js +1 -1
  53. package/lib/Platform/detection/Next.js +1 -1
  54. package/lib/Platform/detection/Nuxt.js +1 -1
  55. package/lib/Platform/detection/React.js +5 -5
  56. package/lib/Platform/detection/Svelte.js +2 -2
  57. package/lib/Platform/detection/Vue.js +1 -1
  58. package/lib/Platform/detection/Web.js +1 -1
  59. package/lib/Platform/detection/helpers.js +7 -7
  60. package/lib/Platform/detection/index.js +13 -13
  61. package/lib/Platform/index.js +32 -52
  62. package/lib/Platform/types.d.ts +75 -8
  63. package/lib/Platform/types.js +40 -39
  64. package/lib/Platform/version.d.ts +1 -1
  65. package/lib/Platform/version.js +1 -1
  66. package/lib/Reachability/Reachability.d.ts +7 -0
  67. package/lib/Reachability/Reachability.js +42 -0
  68. package/lib/Reachability/Reachability.native.d.ts +6 -0
  69. package/lib/{Util → Reachability}/Reachability.native.js +14 -20
  70. package/lib/Reachability/index.d.ts +1 -0
  71. package/lib/Reachability/index.js +7 -0
  72. package/lib/Reachability/types.d.ts +3 -0
  73. package/lib/Reachability/types.js +4 -0
  74. package/lib/ServiceWorker/ServiceWorker.js +86 -112
  75. package/lib/ServiceWorker/errorHelpers.d.ts +7 -0
  76. package/lib/ServiceWorker/errorHelpers.js +24 -0
  77. package/lib/ServiceWorker/index.d.ts +0 -12
  78. package/lib/ServiceWorker/index.js +0 -12
  79. package/lib/{Util → Signer}/DateUtils.js +10 -27
  80. package/lib/{Signer.js → Signer/Signer.js} +50 -52
  81. package/lib/Signer/index.d.ts +1 -0
  82. package/lib/Signer/index.js +7 -0
  83. package/lib/adapterCore/error/AmplifyServerContextError.d.ts +1 -1
  84. package/lib/adapterCore/error/AmplifyServerContextError.js +9 -27
  85. package/lib/adapterCore/serverContext/serverContext.js +8 -8
  86. package/lib/adapterCore/serverContext/serverContextRegistry.js +6 -6
  87. package/lib/awsClients/cognitoIdentity/base.js +67 -0
  88. package/lib/{AwsClients/CognitoIdentity → awsClients/cognitoIdentity}/getCredentialsForIdentity.d.ts +2 -1
  89. package/lib/awsClients/cognitoIdentity/getCredentialsForIdentity.js +39 -0
  90. package/lib/{AwsClients/CognitoIdentity → awsClients/cognitoIdentity}/getId.d.ts +2 -1
  91. package/lib/awsClients/cognitoIdentity/getId.js +30 -0
  92. package/lib/awsClients/cognitoIdentity/types.js +4 -0
  93. package/lib/{AwsClients/Pinpoint → awsClients/pinpoint}/base.js +12 -14
  94. package/lib/awsClients/pinpoint/errorHelpers.d.ts +5 -0
  95. package/lib/awsClients/pinpoint/errorHelpers.js +16 -0
  96. package/{lib-esm/AwsClients/Pinpoint → lib/awsClients/pinpoint}/getInAppMessages.d.ts +4 -3
  97. package/lib/awsClients/pinpoint/getInAppMessages.js +34 -0
  98. package/{lib-esm/AwsClients/Pinpoint → lib/awsClients/pinpoint}/putEvents.d.ts +4 -3
  99. package/lib/awsClients/pinpoint/putEvents.js +37 -0
  100. package/lib/{AwsClients/Pinpoint → awsClients/pinpoint}/updateEndpoint.d.ts +4 -3
  101. package/lib/awsClients/pinpoint/updateEndpoint.js +38 -0
  102. package/lib/clients/endpoints/getDnsSuffix.js +7 -29
  103. package/lib/clients/handlers/authenticated.js +5 -5
  104. package/lib/clients/handlers/fetch.js +41 -97
  105. package/lib/clients/handlers/unauthenticated.js +4 -4
  106. package/lib/clients/internal/composeServiceApi.js +17 -67
  107. package/lib/clients/internal/composeTransferHandler.js +9 -11
  108. package/lib/clients/middleware/retry/defaultRetryDecider.js +18 -75
  109. package/lib/clients/middleware/retry/isClockSkewError.js +2 -4
  110. package/lib/clients/middleware/retry/jitteredBackoff.js +5 -5
  111. package/lib/clients/middleware/retry/middleware.js +61 -125
  112. package/lib/clients/middleware/signing/middleware.js +24 -86
  113. package/lib/clients/middleware/signing/signer/signatureV4/presignUrl.js +21 -55
  114. package/lib/clients/middleware/signing/signer/signatureV4/signRequest.js +14 -25
  115. package/lib/clients/middleware/signing/signer/signatureV4/utils/dataHashHelpers.js +7 -7
  116. package/lib/clients/middleware/signing/signer/signatureV4/utils/getCanonicalHeaders.js +8 -30
  117. package/lib/clients/middleware/signing/signer/signatureV4/utils/getCanonicalQueryString.js +11 -38
  118. package/lib/clients/middleware/signing/signer/signatureV4/utils/getCanonicalRequest.js +13 -17
  119. package/lib/clients/middleware/signing/signer/signatureV4/utils/getCanonicalUri.js +5 -8
  120. package/lib/clients/middleware/signing/signer/signatureV4/utils/getCredentialScope.js +2 -2
  121. package/lib/clients/middleware/signing/signer/signatureV4/utils/getFormattedDates.js +3 -3
  122. package/lib/clients/middleware/signing/signer/signatureV4/utils/getHashedPayload.js +7 -11
  123. package/lib/clients/middleware/signing/signer/signatureV4/utils/getSignature.js +9 -10
  124. package/lib/clients/middleware/signing/signer/signatureV4/utils/getSignedHeaders.js +4 -6
  125. package/lib/clients/middleware/signing/signer/signatureV4/utils/getSigningKey.js +8 -8
  126. package/lib/clients/middleware/signing/signer/signatureV4/utils/getSigningValues.js +15 -16
  127. package/lib/clients/middleware/signing/signer/signatureV4/utils/getStringToSign.js +2 -4
  128. package/lib/clients/middleware/signing/utils/extendedEncodeURIComponent.js +3 -5
  129. package/lib/clients/middleware/signing/utils/getSkewCorrectedDate.js +1 -3
  130. package/lib/clients/middleware/signing/utils/getUpdatedSystemClockOffset.js +2 -2
  131. package/lib/clients/middleware/signing/utils/isClockSkewed.js +4 -6
  132. package/lib/clients/middleware/userAgent/middleware.js +14 -63
  133. package/lib/clients/serde/json.js +30 -96
  134. package/lib/clients/serde/responseInfo.js +12 -18
  135. package/lib/clients/types/http.d.ts +17 -1
  136. package/lib/clients/utils/memoization.js +3 -3
  137. package/lib/constants.d.ts +4 -0
  138. package/lib/constants.js +18 -0
  139. package/lib/{Util/Errors.d.ts → errors/AmplifyError.d.ts} +2 -9
  140. package/lib/errors/AmplifyError.js +26 -0
  141. package/lib/errors/PlatformNotSupportedError.d.ts +4 -0
  142. package/lib/errors/PlatformNotSupportedError.js +16 -0
  143. package/lib/errors/createAssertionFunction.d.ts +3 -0
  144. package/lib/errors/createAssertionFunction.js +19 -0
  145. package/lib/errors/errorHelpers.d.ts +2 -0
  146. package/lib/errors/errorHelpers.js +19 -0
  147. package/lib/errors/index.d.ts +4 -0
  148. package/lib/errors/index.js +13 -0
  149. package/lib/index.d.ts +7 -7
  150. package/lib/index.js +17 -16
  151. package/lib/libraryUtils.d.ts +20 -16
  152. package/lib/libraryUtils.js +60 -69
  153. package/lib/parseAWSExports.js +172 -35
  154. package/lib/providers/kinesis/types/index.d.ts +1 -0
  155. package/lib/providers/kinesis/types/index.js +19 -0
  156. package/lib/providers/kinesis/types/kinesis.d.ts +9 -0
  157. package/lib/providers/kinesis/types/kinesis.js +4 -0
  158. package/lib/providers/kinesis-firehose/types/index.d.ts +1 -0
  159. package/lib/providers/kinesis-firehose/types/index.js +4 -0
  160. package/lib/providers/kinesis-firehose/types/kinesis-firehose.d.ts +9 -0
  161. package/lib/providers/kinesis-firehose/types/kinesis-firehose.js +4 -0
  162. package/lib/providers/personalize/types/index.d.ts +1 -0
  163. package/lib/providers/personalize/types/index.js +4 -0
  164. package/lib/providers/personalize/types/personalize.d.ts +8 -0
  165. package/lib/providers/personalize/types/personalize.js +4 -0
  166. package/lib/providers/pinpoint/apis/flushEvents.d.ts +2 -0
  167. package/lib/providers/pinpoint/apis/flushEvents.js +21 -0
  168. package/lib/providers/pinpoint/apis/index.d.ts +1 -0
  169. package/lib/providers/pinpoint/apis/index.js +3 -1
  170. package/lib/providers/pinpoint/apis/record.d.ts +1 -1
  171. package/lib/providers/pinpoint/apis/record.js +58 -109
  172. package/lib/providers/pinpoint/apis/updateEndpoint.d.ts +1 -1
  173. package/lib/providers/pinpoint/apis/updateEndpoint.js +65 -110
  174. package/lib/providers/pinpoint/index.d.ts +2 -1
  175. package/lib/providers/pinpoint/index.js +5 -0
  176. package/lib/providers/pinpoint/types/errors.d.ts +9 -0
  177. package/lib/providers/pinpoint/types/errors.js +15 -0
  178. package/lib/providers/pinpoint/types/index.d.ts +1 -0
  179. package/lib/providers/pinpoint/types/index.js +3 -0
  180. package/lib/providers/pinpoint/types/pinpoint.d.ts +7 -4
  181. package/lib/providers/pinpoint/utils/PinpointEventBuffer.d.ts +1 -0
  182. package/lib/providers/pinpoint/utils/PinpointEventBuffer.js +111 -197
  183. package/lib/providers/pinpoint/utils/cacheEndpointId.js +12 -49
  184. package/lib/providers/pinpoint/utils/getCacheKey.js +2 -2
  185. package/lib/providers/pinpoint/utils/getEndpointId.js +7 -51
  186. package/lib/providers/pinpoint/utils/getEventBuffer.js +19 -21
  187. package/lib/providers/pinpoint/utils/index.d.ts +1 -0
  188. package/lib/providers/pinpoint/utils/index.js +3 -1
  189. package/lib/providers/pinpoint/utils/isAppInForeground.d.ts +1 -0
  190. package/lib/{RNComponents → providers/pinpoint/utils}/isAppInForeground.js +1 -4
  191. package/lib/providers/pinpoint/utils/isAppInForeground.native.d.ts +1 -0
  192. package/lib/providers/pinpoint/utils/isAppInForeground.native.js +9 -0
  193. package/lib/providers/pinpoint/utils/resolveEndpointId.d.ts +8 -0
  194. package/lib/providers/pinpoint/utils/resolveEndpointId.js +34 -0
  195. package/lib/singleton/API/types.d.ts +73 -0
  196. package/lib/singleton/API/types.js +2 -0
  197. package/lib/singleton/Amplify.d.ts +2 -2
  198. package/lib/singleton/Amplify.js +34 -93
  199. package/lib/singleton/Analytics/types.d.ts +4 -1
  200. package/lib/singleton/Auth/index.js +48 -115
  201. package/lib/singleton/Auth/types.d.ts +31 -4
  202. package/lib/singleton/Auth/utils/errorHelpers.d.ts +8 -0
  203. package/lib/singleton/Auth/utils/errorHelpers.js +32 -0
  204. package/lib/singleton/Auth/utils/index.d.ts +1 -1
  205. package/lib/singleton/Auth/utils/index.js +30 -46
  206. package/lib/singleton/Cache/types.d.ts +18 -0
  207. package/lib/singleton/Cache/types.js +4 -0
  208. package/lib/singleton/Geo/types.d.ts +17 -0
  209. package/lib/singleton/Geo/types.js +4 -0
  210. package/lib/singleton/Interactions/types.d.ts +21 -0
  211. package/lib/singleton/Interactions/types.js +4 -0
  212. package/lib/singleton/Notifications/InAppMessaging/types.d.ts +2 -0
  213. package/lib/singleton/Notifications/InAppMessaging/types.js +4 -0
  214. package/lib/singleton/Notifications/PushNotification/types.d.ts +2 -0
  215. package/lib/singleton/Notifications/PushNotification/types.js +4 -0
  216. package/lib/singleton/Notifications/types.d.ts +6 -0
  217. package/lib/singleton/Notifications/types.js +4 -0
  218. package/lib/singleton/Predictions/types.d.ts +49 -0
  219. package/lib/singleton/Predictions/types.js +4 -0
  220. package/lib/singleton/apis/clearCredentials.js +1 -1
  221. package/lib/singleton/apis/fetchAuthSession.js +3 -3
  222. package/lib/singleton/apis/internal/fetchAuthSession.js +1 -1
  223. package/lib/singleton/apis/server/fetchAuthSession.js +3 -3
  224. package/lib/singleton/types.d.ts +12 -1
  225. package/{lib-esm/StorageHelper/cookieStorage.d.ts → lib/storage/CookieStorage.d.ts} +4 -3
  226. package/lib/storage/CookieStorage.js +52 -0
  227. package/lib/storage/CookieStorage.native.d.ts +7 -0
  228. package/lib/storage/CookieStorage.native.js +15 -0
  229. package/lib/storage/DefaultStorage.d.ts +7 -0
  230. package/lib/storage/DefaultStorage.js +16 -0
  231. package/{lib-esm/StorageHelper/localStorage.d.ts → lib/storage/DefaultStorage.native.d.ts} +6 -5
  232. package/lib/storage/DefaultStorage.native.js +50 -0
  233. package/lib/storage/InMemoryStorage.d.ts +12 -0
  234. package/lib/storage/InMemoryStorage.js +35 -0
  235. package/lib/{StorageHelper/sessionStorage.d.ts → storage/KeyValueStorage.d.ts} +5 -4
  236. package/lib/storage/KeyValueStorage.js +56 -0
  237. package/lib/storage/SessionStorage.d.ts +7 -0
  238. package/lib/storage/SessionStorage.js +16 -0
  239. package/lib/storage/index.d.ts +7 -0
  240. package/lib/storage/index.js +14 -0
  241. package/lib/storage/utils.d.ts +10 -0
  242. package/lib/storage/utils.js +22 -0
  243. package/lib/tsconfig.tsbuildinfo +1 -1
  244. package/lib/types/core.d.ts +4 -1
  245. package/lib/types/errors.d.ts +9 -3
  246. package/lib/types/errors.js +7 -0
  247. package/lib/types/storage.d.ts +3 -0
  248. package/lib/utils/amplifyUrl/index.d.ts +13 -0
  249. package/lib/utils/amplifyUrl/index.js +10 -0
  250. package/lib/utils/amplifyUrl/polyfill.d.ts +0 -0
  251. package/lib/utils/amplifyUrl/polyfill.js +4 -0
  252. package/lib/utils/amplifyUrl/polyfill.native.d.ts +1 -0
  253. package/lib/utils/amplifyUrl/polyfill.native.js +6 -0
  254. package/lib/utils/amplifyUuid/index.d.ts +3 -0
  255. package/lib/utils/amplifyUuid/index.js +9 -0
  256. package/lib/utils/amplifyUuid/polyfill.d.ts +0 -0
  257. package/lib/utils/amplifyUuid/polyfill.js +4 -0
  258. package/lib/utils/amplifyUuid/polyfill.native.d.ts +1 -0
  259. package/lib/utils/amplifyUuid/polyfill.native.js +6 -0
  260. package/lib/utils/convert/base64/base64Decoder.d.ts +2 -0
  261. package/lib/utils/convert/base64/base64Decoder.js +11 -0
  262. package/lib/utils/convert/base64/base64Encoder.d.ts +2 -0
  263. package/lib/utils/convert/base64/base64Encoder.js +17 -0
  264. package/lib/utils/convert/base64/bytesToString.d.ts +1 -0
  265. package/lib/utils/convert/base64/bytesToString.js +9 -0
  266. package/lib/utils/convert/index.d.ts +2 -0
  267. package/lib/utils/convert/index.js +9 -0
  268. package/lib/utils/convert/types.d.ts +9 -0
  269. package/lib/utils/convert/types.js +4 -0
  270. package/lib/utils/deepFreeze.d.ts +1 -0
  271. package/lib/utils/deepFreeze.js +16 -0
  272. package/lib/utils/generateRandomString.d.ts +1 -0
  273. package/lib/utils/generateRandomString.js +14 -0
  274. package/lib/{ClientDevice/android.d.ts → utils/getClientInfo/getClientInfo.android.d.ts} +1 -1
  275. package/lib/{ClientDevice/android.js → utils/getClientInfo/getClientInfo.android.js} +9 -9
  276. package/{lib-esm/ClientDevice/browser.d.ts → lib/utils/getClientInfo/getClientInfo.d.ts} +1 -9
  277. package/lib/{ClientDevice/ios.d.ts → utils/getClientInfo/getClientInfo.ios.d.ts} +1 -1
  278. package/lib/{ClientDevice/ios.js → utils/getClientInfo/getClientInfo.ios.js} +14 -14
  279. package/lib/utils/getClientInfo/getClientInfo.js +68 -0
  280. package/lib/utils/getClientInfo/index.d.ts +1 -0
  281. package/lib/utils/getClientInfo/index.js +7 -0
  282. package/lib/utils/globalHelpers/index.d.ts +3 -0
  283. package/lib/utils/globalHelpers/index.js +50 -0
  284. package/lib/utils/globalHelpers/index.native.d.ts +3 -0
  285. package/lib/utils/globalHelpers/index.native.js +28 -0
  286. package/lib/utils/index.d.ts +8 -0
  287. package/lib/utils/index.js +25 -0
  288. package/lib/utils/isBrowser.d.ts +1 -0
  289. package/lib/utils/isBrowser.js +7 -0
  290. package/lib/utils/isWebWorker.d.ts +1 -0
  291. package/lib/utils/isWebWorker.js +14 -0
  292. package/lib/utils/retry/NonRetryableError.d.ts +4 -0
  293. package/lib/utils/retry/NonRetryableError.js +12 -0
  294. package/lib/utils/retry/constants.d.ts +1 -0
  295. package/lib/utils/retry/constants.js +6 -0
  296. package/lib/utils/retry/index.d.ts +5 -0
  297. package/lib/utils/retry/index.js +15 -0
  298. package/lib/utils/retry/isNonRetryableError.d.ts +2 -0
  299. package/lib/utils/retry/isNonRetryableError.js +10 -0
  300. package/lib/utils/retry/jitteredBackoff.d.ts +6 -0
  301. package/lib/utils/retry/jitteredBackoff.js +19 -0
  302. package/lib/utils/retry/jitteredExponentialRetry.d.ts +5 -0
  303. package/lib/utils/retry/jitteredExponentialRetry.js +14 -0
  304. package/lib/utils/retry/retry.d.ts +6 -0
  305. package/lib/utils/retry/retry.js +64 -0
  306. package/lib/utils/sessionListener/SessionListener.d.ts +10 -0
  307. package/lib/utils/sessionListener/SessionListener.js +53 -0
  308. package/lib/utils/sessionListener/SessionListener.native.d.ts +10 -0
  309. package/lib/utils/sessionListener/SessionListener.native.js +50 -0
  310. package/lib/utils/sessionListener/constants.d.ts +2 -0
  311. package/lib/utils/sessionListener/constants.js +8 -0
  312. package/lib/utils/sessionListener/index.d.ts +3 -0
  313. package/lib/utils/sessionListener/index.js +10 -0
  314. package/lib/utils/sessionListener/types.d.ts +6 -0
  315. package/lib/utils/sessionListener/types.js +4 -0
  316. package/lib/utils/urlSafeDecode.d.ts +1 -0
  317. package/lib/utils/urlSafeDecode.js +10 -0
  318. package/lib/utils/urlSafeEncode.d.ts +1 -0
  319. package/lib/utils/urlSafeEncode.js +12 -0
  320. package/lib-esm/BackgroundProcessManager/BackgroundManagerNotOpenError.d.ts +3 -0
  321. package/lib-esm/BackgroundProcessManager/BackgroundManagerNotOpenError.js +7 -0
  322. package/lib-esm/{Util → BackgroundProcessManager}/BackgroundProcessManager.d.ts +1 -23
  323. package/lib-esm/BackgroundProcessManager/BackgroundProcessManager.js +283 -0
  324. package/lib-esm/BackgroundProcessManager/index.d.ts +1 -0
  325. package/lib-esm/BackgroundProcessManager/index.js +3 -0
  326. package/lib-esm/BackgroundProcessManager/types.d.ts +41 -0
  327. package/lib-esm/BackgroundProcessManager/types.js +20 -0
  328. package/lib-esm/Cache/StorageCache.d.ts +14 -31
  329. package/lib-esm/Cache/StorageCache.js +40 -106
  330. package/lib-esm/Cache/StorageCache.native.d.ts +19 -0
  331. package/lib-esm/Cache/StorageCache.native.js +58 -0
  332. package/lib-esm/Cache/{AsyncStorageCache.d.ts → StorageCacheCommon.d.ts} +124 -99
  333. package/lib-esm/Cache/StorageCacheCommon.js +464 -0
  334. package/lib-esm/Cache/constants.d.ts +6 -0
  335. package/lib-esm/Cache/constants.js +14 -0
  336. package/lib-esm/Cache/index.d.ts +2 -0
  337. package/lib-esm/Cache/index.js +4 -0
  338. package/lib-esm/Cache/types/cache.d.ts +38 -0
  339. package/lib-esm/Cache/types/index.d.ts +1 -1
  340. package/lib-esm/Cache/types/index.js +1 -1
  341. package/lib-esm/Cache/{Utils → utils}/CacheList.d.ts +1 -1
  342. package/lib-esm/Cache/{Utils → utils}/CacheList.js +46 -84
  343. package/lib-esm/Cache/utils/cacheHelpers.d.ts +14 -0
  344. package/lib-esm/Cache/utils/cacheHelpers.js +42 -0
  345. package/lib-esm/Cache/utils/errorHelpers.d.ts +7 -0
  346. package/lib-esm/Cache/utils/errorHelpers.js +21 -0
  347. package/lib-esm/Cache/utils/index.d.ts +2 -0
  348. package/lib-esm/Cache/utils/index.js +4 -0
  349. package/lib-esm/Hub/index.d.ts +7 -0
  350. package/lib-esm/Hub/index.js +42 -76
  351. package/lib-esm/Hub/types/AuthTypes.d.ts +19 -0
  352. package/lib-esm/I18n/I18n.d.ts +3 -19
  353. package/lib-esm/I18n/I18n.js +24 -60
  354. package/lib-esm/I18n/errorHelpers.d.ts +5 -0
  355. package/lib-esm/I18n/errorHelpers.js +13 -0
  356. package/lib-esm/I18n/index.d.ts +3 -15
  357. package/lib-esm/I18n/index.js +26 -55
  358. package/lib-esm/I18n/types.d.ts +1 -4
  359. package/lib-esm/I18n/types.js +3 -8
  360. package/lib-esm/Logger/ConsoleLogger.js +53 -129
  361. package/{lib/Util → lib-esm/Mutex}/Mutex.d.ts +2 -15
  362. package/lib-esm/{Util → Mutex}/Mutex.js +15 -20
  363. package/lib-esm/Mutex/index.d.ts +1 -0
  364. package/lib-esm/Mutex/index.js +3 -0
  365. package/lib-esm/Mutex/types.d.ts +13 -0
  366. package/lib-esm/Platform/customUserAgent.d.ts +16 -0
  367. package/lib-esm/Platform/customUserAgent.js +52 -0
  368. package/lib-esm/Platform/detectFramework.js +11 -12
  369. package/lib-esm/Platform/detection/Angular.js +3 -4
  370. package/lib-esm/Platform/detection/React.js +4 -4
  371. package/lib-esm/Platform/detection/Svelte.js +1 -1
  372. package/lib-esm/Platform/detection/helpers.js +7 -7
  373. package/lib-esm/Platform/detection/index.js +3 -3
  374. package/lib-esm/Platform/index.js +30 -50
  375. package/lib-esm/Platform/types.d.ts +75 -8
  376. package/lib-esm/Platform/types.js +40 -39
  377. package/lib-esm/Platform/version.d.ts +1 -1
  378. package/lib-esm/Platform/version.js +1 -1
  379. package/lib-esm/Reachability/Reachability.d.ts +7 -0
  380. package/lib-esm/Reachability/Reachability.js +39 -0
  381. package/lib-esm/Reachability/Reachability.native.d.ts +6 -0
  382. package/lib-esm/{Util → Reachability}/Reachability.native.js +11 -16
  383. package/lib-esm/Reachability/index.d.ts +1 -0
  384. package/lib-esm/Reachability/index.js +3 -0
  385. package/lib-esm/Reachability/types.d.ts +3 -0
  386. package/lib-esm/Reachability/types.js +3 -0
  387. package/lib-esm/ServiceWorker/ServiceWorker.js +78 -105
  388. package/lib-esm/ServiceWorker/errorHelpers.d.ts +7 -0
  389. package/lib-esm/ServiceWorker/errorHelpers.js +21 -0
  390. package/lib-esm/ServiceWorker/index.d.ts +0 -12
  391. package/lib-esm/ServiceWorker/index.js +0 -12
  392. package/lib-esm/{Util → Signer}/DateUtils.js +11 -28
  393. package/lib-esm/Signer/Signer.js +124 -0
  394. package/lib-esm/Signer/index.d.ts +1 -0
  395. package/lib-esm/Signer/index.js +3 -0
  396. package/lib-esm/adapterCore/error/AmplifyServerContextError.d.ts +1 -1
  397. package/lib-esm/adapterCore/error/AmplifyServerContextError.js +9 -28
  398. package/lib-esm/adapterCore/serverContext/serverContext.js +6 -6
  399. package/lib-esm/adapterCore/serverContext/serverContextRegistry.js +7 -7
  400. package/lib-esm/awsClients/cognitoIdentity/base.js +62 -0
  401. package/lib-esm/{AwsClients/CognitoIdentity → awsClients/cognitoIdentity}/getCredentialsForIdentity.d.ts +2 -1
  402. package/lib-esm/awsClients/cognitoIdentity/getCredentialsForIdentity.js +36 -0
  403. package/lib-esm/{AwsClients/CognitoIdentity → awsClients/cognitoIdentity}/getId.d.ts +2 -1
  404. package/lib-esm/awsClients/cognitoIdentity/getId.js +27 -0
  405. package/lib-esm/awsClients/cognitoIdentity/types.js +3 -0
  406. package/lib-esm/{AwsClients/Pinpoint → awsClients/pinpoint}/base.js +9 -11
  407. package/lib-esm/awsClients/pinpoint/errorHelpers.d.ts +5 -0
  408. package/lib-esm/awsClients/pinpoint/errorHelpers.js +13 -0
  409. package/{lib/AwsClients/Pinpoint → lib-esm/awsClients/pinpoint}/getInAppMessages.d.ts +4 -3
  410. package/lib-esm/awsClients/pinpoint/getInAppMessages.js +31 -0
  411. package/{lib/AwsClients/Pinpoint → lib-esm/awsClients/pinpoint}/putEvents.d.ts +4 -3
  412. package/lib-esm/awsClients/pinpoint/putEvents.js +34 -0
  413. package/lib-esm/{AwsClients/Pinpoint → awsClients/pinpoint}/updateEndpoint.d.ts +4 -3
  414. package/lib-esm/awsClients/pinpoint/updateEndpoint.js +35 -0
  415. package/lib-esm/clients/endpoints/getDnsSuffix.js +6 -28
  416. package/lib-esm/clients/endpoints/partitions.js +2 -2
  417. package/lib-esm/clients/handlers/authenticated.js +1 -1
  418. package/lib-esm/clients/handlers/fetch.js +40 -96
  419. package/lib-esm/clients/handlers/unauthenticated.js +1 -1
  420. package/lib-esm/clients/internal/composeServiceApi.js +17 -67
  421. package/lib-esm/clients/internal/composeTransferHandler.js +9 -11
  422. package/lib-esm/clients/middleware/retry/defaultRetryDecider.js +17 -74
  423. package/lib-esm/clients/middleware/retry/isClockSkewError.js +2 -4
  424. package/lib-esm/clients/middleware/retry/jitteredBackoff.js +5 -5
  425. package/lib-esm/clients/middleware/retry/middleware.js +61 -125
  426. package/lib-esm/clients/middleware/signing/middleware.js +21 -83
  427. package/lib-esm/clients/middleware/signing/signer/signatureV4/constants.js +17 -17
  428. package/lib-esm/clients/middleware/signing/signer/signatureV4/presignUrl.js +18 -52
  429. package/lib-esm/clients/middleware/signing/signer/signatureV4/signRequest.js +10 -21
  430. package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/dataHashHelpers.js +5 -5
  431. package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/getCanonicalHeaders.js +8 -30
  432. package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/getCanonicalQueryString.js +11 -38
  433. package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/getCanonicalRequest.js +8 -12
  434. package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/getCanonicalUri.js +5 -8
  435. package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/getCredentialScope.js +1 -1
  436. package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/getFormattedDates.js +3 -3
  437. package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/getHashedPayload.js +5 -9
  438. package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/getSignature.js +5 -6
  439. package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/getSignedHeaders.js +4 -6
  440. package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/getSigningKey.js +6 -6
  441. package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/getSigningValues.js +13 -14
  442. package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/getStringToSign.js +1 -3
  443. package/lib-esm/clients/middleware/signing/utils/extendedEncodeURIComponent.js +3 -5
  444. package/lib-esm/clients/middleware/signing/utils/getSkewCorrectedDate.js +1 -3
  445. package/lib-esm/clients/middleware/signing/utils/getUpdatedSystemClockOffset.js +1 -1
  446. package/lib-esm/clients/middleware/signing/utils/isClockSkewed.js +3 -5
  447. package/lib-esm/clients/middleware/userAgent/middleware.js +14 -63
  448. package/lib-esm/clients/serde/json.js +29 -95
  449. package/lib-esm/clients/serde/responseInfo.js +11 -17
  450. package/lib-esm/clients/types/http.d.ts +17 -1
  451. package/lib-esm/clients/utils/memoization.js +3 -3
  452. package/lib-esm/constants.d.ts +4 -0
  453. package/lib-esm/constants.js +15 -0
  454. package/lib-esm/{Util/Errors.d.ts → errors/AmplifyError.d.ts} +2 -9
  455. package/lib-esm/errors/AmplifyError.js +22 -0
  456. package/lib-esm/errors/PlatformNotSupportedError.d.ts +4 -0
  457. package/lib-esm/errors/PlatformNotSupportedError.js +12 -0
  458. package/lib-esm/errors/createAssertionFunction.d.ts +3 -0
  459. package/lib-esm/errors/createAssertionFunction.js +15 -0
  460. package/lib-esm/errors/errorHelpers.d.ts +2 -0
  461. package/lib-esm/errors/errorHelpers.js +16 -0
  462. package/lib-esm/errors/index.d.ts +4 -0
  463. package/lib-esm/errors/index.js +6 -0
  464. package/lib-esm/index.d.ts +7 -7
  465. package/lib-esm/index.js +7 -6
  466. package/lib-esm/libraryUtils.d.ts +20 -16
  467. package/lib-esm/libraryUtils.js +21 -18
  468. package/lib-esm/parseAWSExports.js +171 -34
  469. package/lib-esm/providers/kinesis/types/index.d.ts +1 -0
  470. package/lib-esm/providers/kinesis/types/index.js +3 -0
  471. package/lib-esm/providers/kinesis/types/kinesis.d.ts +9 -0
  472. package/lib-esm/providers/kinesis/types/kinesis.js +3 -0
  473. package/lib-esm/providers/kinesis-firehose/types/index.d.ts +1 -0
  474. package/lib-esm/providers/kinesis-firehose/types/index.js +3 -0
  475. package/lib-esm/providers/kinesis-firehose/types/kinesis-firehose.d.ts +9 -0
  476. package/lib-esm/providers/kinesis-firehose/types/kinesis-firehose.js +3 -0
  477. package/lib-esm/providers/personalize/types/index.d.ts +1 -0
  478. package/lib-esm/providers/personalize/types/index.js +3 -0
  479. package/lib-esm/providers/personalize/types/personalize.d.ts +8 -0
  480. package/lib-esm/providers/personalize/types/personalize.js +3 -0
  481. package/lib-esm/providers/pinpoint/apis/flushEvents.d.ts +2 -0
  482. package/lib-esm/providers/pinpoint/apis/flushEvents.js +17 -0
  483. package/lib-esm/providers/pinpoint/apis/index.d.ts +1 -0
  484. package/lib-esm/providers/pinpoint/apis/index.js +1 -0
  485. package/lib-esm/providers/pinpoint/apis/record.d.ts +1 -1
  486. package/lib-esm/providers/pinpoint/apis/record.js +56 -107
  487. package/lib-esm/providers/pinpoint/apis/updateEndpoint.d.ts +1 -1
  488. package/lib-esm/providers/pinpoint/apis/updateEndpoint.js +64 -109
  489. package/lib-esm/providers/pinpoint/index.d.ts +2 -1
  490. package/lib-esm/providers/pinpoint/index.js +2 -0
  491. package/lib-esm/providers/pinpoint/types/errors.d.ts +9 -0
  492. package/lib-esm/providers/pinpoint/types/errors.js +12 -0
  493. package/lib-esm/providers/pinpoint/types/index.d.ts +1 -0
  494. package/lib-esm/providers/pinpoint/types/index.js +1 -0
  495. package/lib-esm/providers/pinpoint/types/pinpoint.d.ts +7 -4
  496. package/lib-esm/providers/pinpoint/utils/PinpointEventBuffer.d.ts +1 -0
  497. package/lib-esm/providers/pinpoint/utils/PinpointEventBuffer.js +110 -197
  498. package/lib-esm/providers/pinpoint/utils/cacheEndpointId.js +10 -47
  499. package/lib-esm/providers/pinpoint/utils/constants.js +4 -4
  500. package/lib-esm/providers/pinpoint/utils/getCacheKey.js +2 -2
  501. package/lib-esm/providers/pinpoint/utils/getEndpointId.js +5 -49
  502. package/lib-esm/providers/pinpoint/utils/getEventBuffer.js +17 -19
  503. package/lib-esm/providers/pinpoint/utils/index.d.ts +1 -0
  504. package/lib-esm/providers/pinpoint/utils/index.js +1 -0
  505. package/lib-esm/providers/pinpoint/utils/isAppInForeground.js +3 -0
  506. package/lib-esm/providers/pinpoint/utils/isAppInForeground.native.js +5 -0
  507. package/lib-esm/providers/pinpoint/utils/resolveEndpointId.d.ts +8 -0
  508. package/lib-esm/providers/pinpoint/utils/resolveEndpointId.js +30 -0
  509. package/lib-esm/singleton/API/types.d.ts +73 -0
  510. package/lib-esm/singleton/API/types.js +1 -0
  511. package/lib-esm/singleton/Amplify.d.ts +2 -2
  512. package/lib-esm/singleton/Amplify.js +32 -92
  513. package/lib-esm/singleton/Analytics/types.d.ts +4 -1
  514. package/lib-esm/singleton/Auth/index.js +48 -116
  515. package/lib-esm/singleton/Auth/types.d.ts +31 -4
  516. package/lib-esm/singleton/Auth/utils/errorHelpers.d.ts +8 -0
  517. package/lib-esm/singleton/Auth/utils/errorHelpers.js +29 -0
  518. package/lib-esm/singleton/Auth/utils/index.d.ts +1 -1
  519. package/lib-esm/singleton/Auth/utils/index.js +28 -44
  520. package/lib-esm/singleton/Cache/types.d.ts +18 -0
  521. package/lib-esm/singleton/Cache/types.js +3 -0
  522. package/lib-esm/singleton/Geo/types.d.ts +17 -0
  523. package/lib-esm/singleton/Geo/types.js +3 -0
  524. package/lib-esm/singleton/Interactions/types.d.ts +21 -0
  525. package/lib-esm/singleton/Interactions/types.js +3 -0
  526. package/lib-esm/singleton/Notifications/InAppMessaging/types.d.ts +2 -0
  527. package/lib-esm/singleton/Notifications/InAppMessaging/types.js +3 -0
  528. package/lib-esm/singleton/Notifications/PushNotification/types.d.ts +2 -0
  529. package/lib-esm/singleton/Notifications/PushNotification/types.js +3 -0
  530. package/lib-esm/singleton/Notifications/types.d.ts +6 -0
  531. package/lib-esm/singleton/Notifications/types.js +3 -0
  532. package/lib-esm/singleton/Predictions/types.d.ts +49 -0
  533. package/lib-esm/singleton/Predictions/types.js +3 -0
  534. package/lib-esm/singleton/apis/fetchAuthSession.js +1 -1
  535. package/lib-esm/singleton/apis/internal/fetchAuthSession.js +1 -1
  536. package/lib-esm/singleton/apis/server/fetchAuthSession.js +1 -1
  537. package/lib-esm/singleton/types.d.ts +12 -1
  538. package/{lib/StorageHelper/cookieStorage.d.ts → lib-esm/storage/CookieStorage.d.ts} +4 -3
  539. package/lib-esm/storage/CookieStorage.js +45 -0
  540. package/lib-esm/storage/CookieStorage.native.d.ts +7 -0
  541. package/lib-esm/storage/CookieStorage.native.js +11 -0
  542. package/lib-esm/storage/DefaultStorage.d.ts +7 -0
  543. package/lib-esm/storage/DefaultStorage.js +12 -0
  544. package/{lib/StorageHelper/localStorage.d.ts → lib-esm/storage/DefaultStorage.native.d.ts} +6 -5
  545. package/lib-esm/storage/DefaultStorage.native.js +46 -0
  546. package/lib-esm/storage/InMemoryStorage.d.ts +12 -0
  547. package/lib-esm/storage/InMemoryStorage.js +31 -0
  548. package/lib-esm/{StorageHelper/sessionStorage.d.ts → storage/KeyValueStorage.d.ts} +5 -4
  549. package/lib-esm/storage/KeyValueStorage.js +52 -0
  550. package/lib-esm/storage/SessionStorage.d.ts +7 -0
  551. package/lib-esm/storage/SessionStorage.js +12 -0
  552. package/lib-esm/storage/index.d.ts +7 -0
  553. package/lib-esm/storage/index.js +10 -0
  554. package/lib-esm/storage/utils.d.ts +10 -0
  555. package/lib-esm/storage/utils.js +17 -0
  556. package/lib-esm/tsconfig.tsbuildinfo +1 -1
  557. package/lib-esm/types/core.d.ts +4 -1
  558. package/lib-esm/types/errors.d.ts +9 -3
  559. package/lib-esm/types/errors.js +6 -1
  560. package/lib-esm/types/storage.d.ts +3 -0
  561. package/lib-esm/utils/amplifyUrl/index.d.ts +13 -0
  562. package/lib-esm/utils/amplifyUrl/index.js +6 -0
  563. package/lib-esm/utils/amplifyUrl/polyfill.d.ts +0 -0
  564. package/lib-esm/utils/amplifyUrl/polyfill.js +4 -0
  565. package/lib-esm/utils/amplifyUrl/polyfill.native.d.ts +1 -0
  566. package/lib-esm/utils/amplifyUrl/polyfill.native.js +4 -0
  567. package/lib-esm/utils/amplifyUuid/index.d.ts +3 -0
  568. package/lib-esm/utils/amplifyUuid/index.js +6 -0
  569. package/lib-esm/utils/amplifyUuid/polyfill.d.ts +0 -0
  570. package/lib-esm/utils/amplifyUuid/polyfill.js +4 -0
  571. package/lib-esm/utils/amplifyUuid/polyfill.native.d.ts +1 -0
  572. package/lib-esm/utils/amplifyUuid/polyfill.native.js +4 -0
  573. package/lib-esm/utils/convert/base64/base64Decoder.d.ts +2 -0
  574. package/lib-esm/utils/convert/base64/base64Decoder.js +8 -0
  575. package/lib-esm/utils/convert/base64/base64Encoder.d.ts +2 -0
  576. package/lib-esm/utils/convert/base64/base64Encoder.js +14 -0
  577. package/lib-esm/utils/convert/base64/bytesToString.d.ts +1 -0
  578. package/lib-esm/utils/convert/base64/bytesToString.js +5 -0
  579. package/lib-esm/utils/convert/index.d.ts +2 -0
  580. package/lib-esm/utils/convert/index.js +4 -0
  581. package/lib-esm/utils/convert/types.d.ts +9 -0
  582. package/lib-esm/utils/convert/types.js +3 -0
  583. package/lib-esm/utils/deepFreeze.d.ts +1 -0
  584. package/lib-esm/utils/deepFreeze.js +12 -0
  585. package/lib-esm/utils/generateRandomString.d.ts +1 -0
  586. package/lib-esm/utils/generateRandomString.js +10 -0
  587. package/lib-esm/{ClientDevice/android.d.ts → utils/getClientInfo/getClientInfo.android.d.ts} +1 -1
  588. package/lib-esm/{ClientDevice/android.js → utils/getClientInfo/getClientInfo.android.js} +6 -6
  589. package/{lib/ClientDevice/browser.d.ts → lib-esm/utils/getClientInfo/getClientInfo.d.ts} +1 -9
  590. package/lib-esm/{ClientDevice/ios.d.ts → utils/getClientInfo/getClientInfo.ios.d.ts} +1 -1
  591. package/lib-esm/{ClientDevice/ios.js → utils/getClientInfo/getClientInfo.ios.js} +11 -11
  592. package/lib-esm/{ClientDevice/browser.js → utils/getClientInfo/getClientInfo.js} +18 -28
  593. package/lib-esm/utils/getClientInfo/index.d.ts +1 -0
  594. package/lib-esm/utils/getClientInfo/index.js +3 -0
  595. package/lib-esm/utils/globalHelpers/index.d.ts +3 -0
  596. package/lib-esm/utils/globalHelpers/index.js +44 -0
  597. package/lib-esm/utils/globalHelpers/index.native.d.ts +3 -0
  598. package/lib-esm/utils/globalHelpers/index.native.js +22 -0
  599. package/lib-esm/utils/index.d.ts +8 -0
  600. package/lib-esm/utils/index.js +10 -0
  601. package/lib-esm/utils/isBrowser.d.ts +1 -0
  602. package/lib-esm/utils/isBrowser.js +3 -0
  603. package/lib-esm/utils/isWebWorker.d.ts +1 -0
  604. package/lib-esm/utils/isWebWorker.js +10 -0
  605. package/lib-esm/utils/retry/NonRetryableError.d.ts +4 -0
  606. package/lib-esm/utils/retry/NonRetryableError.js +8 -0
  607. package/lib-esm/utils/retry/constants.d.ts +1 -0
  608. package/lib-esm/utils/retry/constants.js +3 -0
  609. package/lib-esm/utils/retry/index.d.ts +5 -0
  610. package/lib-esm/utils/retry/index.js +7 -0
  611. package/lib-esm/utils/retry/isNonRetryableError.d.ts +2 -0
  612. package/lib-esm/utils/retry/isNonRetryableError.js +6 -0
  613. package/lib-esm/utils/retry/jitteredBackoff.d.ts +6 -0
  614. package/lib-esm/utils/retry/jitteredBackoff.js +15 -0
  615. package/lib-esm/utils/retry/jitteredExponentialRetry.d.ts +5 -0
  616. package/lib-esm/utils/retry/jitteredExponentialRetry.js +10 -0
  617. package/lib-esm/utils/retry/retry.d.ts +6 -0
  618. package/lib-esm/utils/retry/retry.js +60 -0
  619. package/lib-esm/utils/sessionListener/SessionListener.d.ts +10 -0
  620. package/lib-esm/utils/sessionListener/SessionListener.js +49 -0
  621. package/lib-esm/utils/sessionListener/SessionListener.native.d.ts +10 -0
  622. package/lib-esm/utils/sessionListener/SessionListener.native.js +46 -0
  623. package/lib-esm/utils/sessionListener/constants.d.ts +2 -0
  624. package/lib-esm/utils/sessionListener/constants.js +5 -0
  625. package/lib-esm/utils/sessionListener/index.d.ts +3 -0
  626. package/lib-esm/utils/sessionListener/index.js +5 -0
  627. package/lib-esm/utils/sessionListener/types.d.ts +6 -0
  628. package/lib-esm/utils/sessionListener/types.js +3 -0
  629. package/lib-esm/{Util/StringUtils.d.ts → utils/urlSafeDecode.d.ts} +0 -1
  630. package/lib-esm/utils/urlSafeDecode.js +6 -0
  631. package/{lib/Util/StringUtils.d.ts → lib-esm/utils/urlSafeEncode.d.ts} +0 -1
  632. package/lib-esm/utils/urlSafeEncode.js +8 -0
  633. package/package.json +18 -45
  634. package/src/BackgroundProcessManager/BackgroundManagerNotOpenError.ts +8 -0
  635. package/src/{Util → BackgroundProcessManager}/BackgroundProcessManager.ts +4 -58
  636. package/src/BackgroundProcessManager/index.ts +4 -0
  637. package/src/BackgroundProcessManager/types.ts +49 -0
  638. package/src/Cache/StorageCache.native.ts +65 -0
  639. package/src/Cache/StorageCache.ts +61 -158
  640. package/src/Cache/StorageCacheCommon.ts +577 -0
  641. package/src/Cache/constants.ts +18 -0
  642. package/src/Cache/index.ts +6 -0
  643. package/src/Cache/types/cache.ts +51 -0
  644. package/src/Cache/types/index.ts +1 -1
  645. package/src/Cache/{Utils → utils}/CacheList.ts +185 -198
  646. package/src/Cache/utils/cacheHelpers.ts +52 -0
  647. package/src/Cache/utils/errorHelpers.ts +26 -0
  648. package/src/Cache/{Utils → utils}/index.ts +4 -5
  649. package/src/Hub/index.ts +11 -2
  650. package/src/Hub/types/AuthTypes.ts +12 -1
  651. package/src/I18n/I18n.ts +4 -25
  652. package/src/I18n/errorHelpers.ts +18 -0
  653. package/src/I18n/index.ts +9 -33
  654. package/src/I18n/types.ts +1 -4
  655. package/src/Logger/ConsoleLogger.ts +1 -1
  656. package/src/{Util → Mutex}/Mutex.ts +2 -20
  657. package/src/Mutex/index.ts +4 -0
  658. package/src/Mutex/types.ts +20 -0
  659. package/src/Platform/customUserAgent.ts +75 -0
  660. package/src/Platform/index.ts +14 -1
  661. package/src/Platform/types.ts +84 -39
  662. package/src/Platform/version.ts +1 -1
  663. package/src/{Util → Reachability}/Reachability.native.ts +7 -12
  664. package/src/Reachability/Reachability.ts +55 -0
  665. package/src/Reachability/index.ts +4 -0
  666. package/src/Reachability/types.ts +6 -0
  667. package/src/ServiceWorker/ServiceWorker.ts +39 -48
  668. package/src/ServiceWorker/errorHelpers.ts +26 -0
  669. package/src/ServiceWorker/index.ts +0 -12
  670. package/src/{Util → Signer}/DateUtils.ts +1 -1
  671. package/src/{Signer.ts → Signer/Signer.ts} +5 -4
  672. package/src/Signer/index.ts +4 -0
  673. package/src/adapterCore/error/AmplifyServerContextError.ts +1 -1
  674. package/src/{AwsClients/CognitoIdentity → awsClients/cognitoIdentity}/base.ts +4 -1
  675. package/src/{AwsClients/Pinpoint → awsClients/pinpoint}/base.ts +2 -1
  676. package/src/awsClients/pinpoint/errorHelpers.ts +19 -0
  677. package/src/{AwsClients/Pinpoint → awsClients/pinpoint}/getInAppMessages.ts +2 -1
  678. package/src/{AwsClients/Pinpoint → awsClients/pinpoint}/putEvents.ts +4 -7
  679. package/src/{AwsClients/Pinpoint → awsClients/pinpoint}/updateEndpoint.ts +2 -1
  680. package/src/clients/handlers/fetch.ts +5 -1
  681. package/src/clients/middleware/retry/jitteredBackoff.ts +1 -1
  682. package/src/clients/middleware/signing/signer/signatureV4/presignUrl.ts +2 -1
  683. package/src/clients/types/http.ts +19 -1
  684. package/src/{Util/Constants.ts → constants.ts} +0 -11
  685. package/src/{Util/Errors.ts → errors/AmplifyError.ts} +2 -18
  686. package/src/errors/PlatformNotSupportedError.ts +14 -0
  687. package/src/errors/createAssertionFunction.ts +23 -0
  688. package/src/errors/errorHelpers.ts +20 -0
  689. package/src/errors/index.ts +7 -0
  690. package/src/index.ts +16 -11
  691. package/src/libraryUtils.ts +61 -57
  692. package/src/parseAWSExports.ts +214 -14
  693. package/src/providers/kinesis/types/index.ts +4 -0
  694. package/src/providers/kinesis/types/kinesis.ts +12 -0
  695. package/src/providers/kinesis-firehose/types/index.ts +4 -0
  696. package/src/providers/kinesis-firehose/types/kinesis-firehose.ts +12 -0
  697. package/src/providers/personalize/types/index.ts +4 -0
  698. package/src/providers/personalize/types/personalize.ts +11 -0
  699. package/src/providers/pinpoint/apis/flushEvents.ts +31 -0
  700. package/src/providers/pinpoint/apis/index.ts +1 -0
  701. package/src/providers/pinpoint/apis/record.ts +36 -33
  702. package/src/providers/pinpoint/apis/updateEndpoint.ts +26 -10
  703. package/src/providers/pinpoint/index.ts +6 -1
  704. package/src/providers/pinpoint/types/errors.ts +12 -0
  705. package/src/providers/pinpoint/types/index.ts +1 -0
  706. package/src/providers/pinpoint/types/pinpoint.ts +7 -3
  707. package/src/providers/pinpoint/utils/PinpointEventBuffer.ts +21 -13
  708. package/src/providers/pinpoint/utils/index.ts +1 -0
  709. package/src/providers/pinpoint/utils/isAppInForeground.native.ts +7 -0
  710. package/src/providers/pinpoint/utils/isAppInForeground.ts +4 -0
  711. package/src/providers/pinpoint/utils/resolveEndpointId.ts +46 -0
  712. package/src/singleton/API/types.ts +90 -0
  713. package/src/singleton/Amplify.ts +10 -8
  714. package/src/singleton/Analytics/types.ts +7 -1
  715. package/src/singleton/Auth/types.ts +53 -4
  716. package/src/singleton/Auth/utils/errorHelpers.ts +37 -0
  717. package/src/singleton/Auth/utils/index.ts +35 -38
  718. package/src/singleton/Cache/types.ts +27 -0
  719. package/src/singleton/Geo/types.ts +20 -0
  720. package/src/singleton/Interactions/types.ts +29 -0
  721. package/src/singleton/Notifications/InAppMessaging/types.ts +6 -0
  722. package/src/singleton/Notifications/PushNotification/types.ts +6 -0
  723. package/src/singleton/Notifications/types.ts +10 -0
  724. package/src/singleton/Predictions/types.ts +61 -0
  725. package/src/singleton/types.ts +15 -7
  726. package/src/storage/CookieStorage.native.ts +13 -0
  727. package/src/storage/CookieStorage.ts +68 -0
  728. package/src/storage/DefaultStorage.native.ts +58 -0
  729. package/src/storage/DefaultStorage.ts +14 -0
  730. package/src/storage/InMemoryStorage.ts +36 -0
  731. package/src/{StorageHelper/sessionStorage.ts → storage/KeyValueStorage.ts} +15 -18
  732. package/src/storage/SessionStorage.ts +14 -0
  733. package/src/storage/index.ts +13 -0
  734. package/src/storage/utils.ts +22 -0
  735. package/src/types/core.ts +4 -1
  736. package/src/types/errors.ts +15 -3
  737. package/src/types/storage.ts +4 -0
  738. package/src/utils/amplifyUrl/index.ts +9 -0
  739. package/src/utils/amplifyUrl/polyfill.native.ts +6 -0
  740. package/src/utils/amplifyUrl/polyfill.ts +4 -0
  741. package/src/utils/amplifyUuid/index.ts +9 -0
  742. package/src/utils/amplifyUuid/polyfill.native.ts +6 -0
  743. package/src/utils/amplifyUuid/polyfill.ts +4 -0
  744. package/src/utils/convert/base64/base64Decoder.ts +11 -0
  745. package/src/utils/convert/base64/base64Encoder.ts +18 -0
  746. package/src/utils/convert/base64/bytesToString.ts +6 -0
  747. package/src/utils/convert/index.ts +5 -0
  748. package/src/utils/convert/types.ts +17 -0
  749. package/src/utils/deepFreeze.ts +16 -0
  750. package/src/utils/generateRandomString.ts +16 -0
  751. package/src/{ClientDevice/android.ts → utils/getClientInfo/getClientInfo.android.ts} +2 -2
  752. package/src/{ClientDevice/ios.ts → utils/getClientInfo/getClientInfo.ios.ts} +3 -3
  753. package/src/{ClientDevice/browser.ts → utils/getClientInfo/getClientInfo.ts} +4 -16
  754. package/src/utils/getClientInfo/index.ts +4 -0
  755. package/src/utils/globalHelpers/index.native.ts +30 -0
  756. package/src/utils/globalHelpers/index.ts +54 -0
  757. package/src/utils/index.ts +17 -0
  758. package/src/utils/isBrowser.ts +5 -0
  759. package/src/utils/isWebWorker.ts +13 -0
  760. package/src/utils/retry/NonRetryableError.ts +9 -0
  761. package/src/utils/retry/constants.ts +4 -0
  762. package/src/utils/retry/index.ts +8 -0
  763. package/src/utils/retry/isNonRetryableError.ts +9 -0
  764. package/src/utils/retry/jitteredBackoff.ts +21 -0
  765. package/src/utils/retry/jitteredExponentialRetry.ts +18 -0
  766. package/src/{Util/Retry.ts → utils/retry/retry.ts} +4 -44
  767. package/src/utils/sessionListener/SessionListener.native.ts +70 -0
  768. package/src/utils/sessionListener/SessionListener.ts +74 -0
  769. package/src/utils/sessionListener/constants.ts +6 -0
  770. package/src/utils/sessionListener/index.ts +7 -0
  771. package/src/utils/sessionListener/types.ts +11 -0
  772. package/src/{Util/StringUtils.ts → utils/urlSafeDecode.ts} +0 -6
  773. package/src/utils/urlSafeEncode.ts +9 -0
  774. package/lib/Amplify.d.ts +0 -29
  775. package/lib/Amplify.js +0 -118
  776. package/lib/AwsClients/CognitoIdentity/base.js +0 -114
  777. package/lib/AwsClients/CognitoIdentity/getCredentialsForIdentity.js +0 -83
  778. package/lib/AwsClients/CognitoIdentity/getId.js +0 -73
  779. package/lib/AwsClients/Pinpoint/getInAppMessages.js +0 -77
  780. package/lib/AwsClients/Pinpoint/putEvents.js +0 -84
  781. package/lib/AwsClients/Pinpoint/updateEndpoint.js +0 -81
  782. package/lib/Cache/AsyncStorageCache.js +0 -744
  783. package/lib/Cache/BrowserStorageCache.d.ts +0 -166
  784. package/lib/Cache/BrowserStorageCache.js +0 -469
  785. package/lib/Cache/InMemoryCache.d.ts +0 -129
  786. package/lib/Cache/InMemoryCache.js +0 -349
  787. package/lib/Cache/Utils/CacheList.js +0 -196
  788. package/lib/Cache/Utils/CacheUtils.d.ts +0 -25
  789. package/lib/Cache/Utils/CacheUtils.js +0 -88
  790. package/lib/Cache/Utils/index.d.ts +0 -2
  791. package/lib/Cache/Utils/index.js +0 -16
  792. package/lib/Cache/reactnative.d.ts +0 -3
  793. package/lib/Cache/reactnative.js +0 -8
  794. package/lib/Cache/types/Cache.d.ts +0 -55
  795. package/lib/ClientDevice/browser.js +0 -80
  796. package/lib/ClientDevice/index.d.ts +0 -23
  797. package/lib/ClientDevice/index.js +0 -18
  798. package/lib/ClientDevice/reactnative.d.ts +0 -7
  799. package/lib/ClientDevice/reactnative.js +0 -24
  800. package/lib/RNComponents/index.d.ts +0 -6
  801. package/lib/RNComponents/index.js +0 -16
  802. package/lib/RNComponents/reactnative.d.ts +0 -3
  803. package/lib/RNComponents/reactnative.js +0 -14
  804. package/lib/StorageHelper/cookieStorage.js +0 -167
  805. package/lib/StorageHelper/inMemoryStorage.d.ts +0 -10
  806. package/lib/StorageHelper/inMemoryStorage.js +0 -82
  807. package/lib/StorageHelper/index.d.ts +0 -45
  808. package/lib/StorageHelper/index.js +0 -83
  809. package/lib/StorageHelper/localStorage.js +0 -114
  810. package/lib/StorageHelper/reactnative.d.ts +0 -83
  811. package/lib/StorageHelper/reactnative.js +0 -250
  812. package/lib/StorageHelper/sessionStorage.js +0 -114
  813. package/lib/Util/BackgroundProcessManager.js +0 -449
  814. package/lib/Util/Constants.d.ts +0 -12
  815. package/lib/Util/Constants.js +0 -29
  816. package/lib/Util/Errors.js +0 -62
  817. package/lib/Util/JS.d.ts +0 -29
  818. package/lib/Util/JS.js +0 -214
  819. package/lib/Util/Reachability.d.ts +0 -13
  820. package/lib/Util/Reachability.js +0 -69
  821. package/lib/Util/Reachability.native.d.ts +0 -12
  822. package/lib/Util/Retry.d.ts +0 -21
  823. package/lib/Util/Retry.js +0 -205
  824. package/lib/Util/StringUtils.js +0 -17
  825. package/lib/Util/errors/AssertError.d.ts +0 -2
  826. package/lib/Util/errors/AssertError.js +0 -11
  827. package/lib/Util/index.d.ts +0 -7
  828. package/lib/Util/index.js +0 -31
  829. package/lib/clients/middleware/signing/signer/signatureV4/index.native.d.ts +0 -5
  830. package/lib/clients/middleware/signing/signer/signatureV4/index.native.js +0 -15
  831. package/lib-esm/Amplify.d.ts +0 -29
  832. package/lib-esm/Amplify.js +0 -115
  833. package/lib-esm/AwsClients/CognitoIdentity/base.js +0 -109
  834. package/lib-esm/AwsClients/CognitoIdentity/getCredentialsForIdentity.js +0 -80
  835. package/lib-esm/AwsClients/CognitoIdentity/getId.js +0 -70
  836. package/lib-esm/AwsClients/Pinpoint/getInAppMessages.js +0 -74
  837. package/lib-esm/AwsClients/Pinpoint/putEvents.js +0 -81
  838. package/lib-esm/AwsClients/Pinpoint/updateEndpoint.js +0 -78
  839. package/lib-esm/Cache/AsyncStorageCache.js +0 -737
  840. package/lib-esm/Cache/BrowserStorageCache.d.ts +0 -166
  841. package/lib-esm/Cache/BrowserStorageCache.js +0 -466
  842. package/lib-esm/Cache/InMemoryCache.d.ts +0 -129
  843. package/lib-esm/Cache/InMemoryCache.js +0 -346
  844. package/lib-esm/Cache/Utils/CacheUtils.d.ts +0 -25
  845. package/lib-esm/Cache/Utils/CacheUtils.js +0 -81
  846. package/lib-esm/Cache/Utils/index.d.ts +0 -2
  847. package/lib-esm/Cache/Utils/index.js +0 -4
  848. package/lib-esm/Cache/reactnative.d.ts +0 -3
  849. package/lib-esm/Cache/reactnative.js +0 -6
  850. package/lib-esm/Cache/types/Cache.d.ts +0 -55
  851. package/lib-esm/ClientDevice/index.d.ts +0 -23
  852. package/lib-esm/ClientDevice/index.js +0 -15
  853. package/lib-esm/ClientDevice/reactnative.d.ts +0 -7
  854. package/lib-esm/ClientDevice/reactnative.js +0 -21
  855. package/lib-esm/RNComponents/index.d.ts +0 -6
  856. package/lib-esm/RNComponents/index.js +0 -13
  857. package/lib-esm/RNComponents/isAppInForeground.js +0 -6
  858. package/lib-esm/RNComponents/reactnative.d.ts +0 -3
  859. package/lib-esm/RNComponents/reactnative.js +0 -6
  860. package/lib-esm/Signer.js +0 -127
  861. package/lib-esm/StorageHelper/cookieStorage.js +0 -141
  862. package/lib-esm/StorageHelper/inMemoryStorage.d.ts +0 -10
  863. package/lib-esm/StorageHelper/inMemoryStorage.js +0 -79
  864. package/lib-esm/StorageHelper/index.d.ts +0 -45
  865. package/lib-esm/StorageHelper/index.js +0 -76
  866. package/lib-esm/StorageHelper/localStorage.js +0 -111
  867. package/lib-esm/StorageHelper/reactnative.d.ts +0 -83
  868. package/lib-esm/StorageHelper/reactnative.js +0 -244
  869. package/lib-esm/StorageHelper/sessionStorage.js +0 -111
  870. package/lib-esm/Util/BackgroundProcessManager.js +0 -446
  871. package/lib-esm/Util/Constants.d.ts +0 -12
  872. package/lib-esm/Util/Constants.js +0 -26
  873. package/lib-esm/Util/Errors.js +0 -57
  874. package/lib-esm/Util/JS.d.ts +0 -29
  875. package/lib-esm/Util/JS.js +0 -199
  876. package/lib-esm/Util/Reachability.d.ts +0 -13
  877. package/lib-esm/Util/Reachability.js +0 -64
  878. package/lib-esm/Util/Reachability.native.d.ts +0 -12
  879. package/lib-esm/Util/Retry.d.ts +0 -21
  880. package/lib-esm/Util/Retry.js +0 -198
  881. package/lib-esm/Util/StringUtils.js +0 -12
  882. package/lib-esm/Util/errors/AssertError.d.ts +0 -2
  883. package/lib-esm/Util/errors/AssertError.js +0 -7
  884. package/lib-esm/Util/index.d.ts +0 -7
  885. package/lib-esm/Util/index.js +0 -9
  886. package/lib-esm/clients/middleware/signing/signer/signatureV4/index.native.d.ts +0 -5
  887. package/lib-esm/clients/middleware/signing/signer/signatureV4/index.native.js +0 -8
  888. package/polyfills/URL/index.ts +0 -14
  889. package/polyfills/URL/tsconfig.json +0 -10
  890. package/polyfills/URL/webpack.config.js +0 -43
  891. package/src/Amplify.ts +0 -106
  892. package/src/Cache/AsyncStorageCache.ts +0 -500
  893. package/src/Cache/BrowserStorageCache.ts +0 -517
  894. package/src/Cache/CHANGELOG.md +0 -1239
  895. package/src/Cache/InMemoryCache.ts +0 -354
  896. package/src/Cache/Utils/CacheUtils.ts +0 -92
  897. package/src/Cache/reactnative.ts +0 -9
  898. package/src/Cache/types/Cache.ts +0 -75
  899. package/src/ClientDevice/index.ts +0 -14
  900. package/src/ClientDevice/reactnative.ts +0 -18
  901. package/src/RNComponents/index.ts +0 -16
  902. package/src/RNComponents/isAppInForeground.ts +0 -8
  903. package/src/RNComponents/reactnative.ts +0 -6
  904. package/src/StorageHelper/cookieStorage.ts +0 -99
  905. package/src/StorageHelper/inMemoryStorage.ts +0 -32
  906. package/src/StorageHelper/index.ts +0 -78
  907. package/src/StorageHelper/localStorage.ts +0 -60
  908. package/src/StorageHelper/reactnative.ts +0 -182
  909. package/src/Util/JS.ts +0 -255
  910. package/src/Util/Reachability.ts +0 -58
  911. package/src/Util/errors/AssertError.ts +0 -11
  912. package/src/Util/index.ts +0 -23
  913. package/src/clients/middleware/signing/signer/signatureV4/index.native.ts +0 -10
  914. /package/lib/{AwsClients/CognitoIdentity/types.js → Cache/types/cache.js} +0 -0
  915. /package/lib/{Cache/types/Cache.js → Mutex/types.js} +0 -0
  916. /package/lib/{Util → Signer}/DateUtils.d.ts +0 -0
  917. /package/lib/{Signer.d.ts → Signer/Signer.d.ts} +0 -0
  918. /package/lib/{AwsClients/CognitoIdentity → awsClients/cognitoIdentity}/base.d.ts +0 -0
  919. /package/lib/{AwsClients/CognitoIdentity → awsClients/cognitoIdentity}/index.d.ts +0 -0
  920. /package/lib/{AwsClients/CognitoIdentity → awsClients/cognitoIdentity}/index.js +0 -0
  921. /package/lib/{AwsClients/CognitoIdentity → awsClients/cognitoIdentity}/types.d.ts +0 -0
  922. /package/lib/{AwsClients/Pinpoint → awsClients/pinpoint}/base.d.ts +0 -0
  923. /package/lib/{AwsClients/Pinpoint → awsClients/pinpoint}/index.d.ts +0 -0
  924. /package/lib/{AwsClients/Pinpoint → awsClients/pinpoint}/index.js +0 -0
  925. /package/lib/{AwsClients/Pinpoint → awsClients/pinpoint}/types.d.ts +0 -0
  926. /package/lib/{AwsClients/Pinpoint → awsClients/pinpoint}/types.js +0 -0
  927. /package/lib-esm/{AwsClients/CognitoIdentity/types.js → Cache/types/cache.js} +0 -0
  928. /package/lib-esm/{Cache/types/Cache.js → Mutex/types.js} +0 -0
  929. /package/lib-esm/{Util → Signer}/DateUtils.d.ts +0 -0
  930. /package/lib-esm/{Signer.d.ts → Signer/Signer.d.ts} +0 -0
  931. /package/lib-esm/{AwsClients/CognitoIdentity → awsClients/cognitoIdentity}/base.d.ts +0 -0
  932. /package/lib-esm/{AwsClients/CognitoIdentity → awsClients/cognitoIdentity}/index.d.ts +0 -0
  933. /package/lib-esm/{AwsClients/CognitoIdentity → awsClients/cognitoIdentity}/index.js +0 -0
  934. /package/lib-esm/{AwsClients/CognitoIdentity → awsClients/cognitoIdentity}/types.d.ts +0 -0
  935. /package/lib-esm/{AwsClients/Pinpoint → awsClients/pinpoint}/base.d.ts +0 -0
  936. /package/lib-esm/{AwsClients/Pinpoint → awsClients/pinpoint}/index.d.ts +0 -0
  937. /package/lib-esm/{AwsClients/Pinpoint → awsClients/pinpoint}/index.js +0 -0
  938. /package/lib-esm/{AwsClients/Pinpoint → awsClients/pinpoint}/types.d.ts +0 -0
  939. /package/lib-esm/{AwsClients/Pinpoint → awsClients/pinpoint}/types.js +0 -0
  940. /package/lib-esm/{RNComponents → providers/pinpoint/utils}/isAppInForeground.d.ts +0 -0
  941. /package/{lib/RNComponents/isAppInForeground.d.ts → lib-esm/providers/pinpoint/utils/isAppInForeground.native.d.ts} +0 -0
  942. /package/src/{AwsClients/CognitoIdentity → awsClients/cognitoIdentity}/getCredentialsForIdentity.ts +0 -0
  943. /package/src/{AwsClients/CognitoIdentity → awsClients/cognitoIdentity}/getId.ts +0 -0
  944. /package/src/{AwsClients/CognitoIdentity → awsClients/cognitoIdentity}/index.ts +0 -0
  945. /package/src/{AwsClients/CognitoIdentity → awsClients/cognitoIdentity}/types.ts +0 -0
  946. /package/src/{AwsClients/Pinpoint → awsClients/pinpoint}/index.ts +0 -0
  947. /package/src/{AwsClients/Pinpoint → awsClients/pinpoint}/types.ts +0 -0
@@ -1,26 +1,14 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ServiceWorkerClass = void 0;
4
2
  // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
5
3
  // SPDX-License-Identifier: Apache-2.0
6
- /**
7
- * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
8
- *
9
- * Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with
10
- * the License. A copy of the License is located at
11
- *
12
- * http://aws.amazon.com/apache2.0/
13
- *
14
- * or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
15
- * CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions
16
- * and limitations under the License.
17
- */
18
- var Logger_1 = require("../Logger");
19
- var JS_1 = require("../Util/JS");
20
- var Amplify_1 = require("../Amplify");
21
- var AssertError_1 = require("../Util/errors/AssertError");
22
- var Errors_1 = require("../Util/Errors");
23
- var Constants_1 = require("../Util/Constants");
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.ServiceWorkerClass = void 0;
6
+ const Logger_1 = require("../Logger");
7
+ const utils_1 = require("../utils");
8
+ const errors_1 = require("../errors");
9
+ const errorHelpers_1 = require("./errorHelpers");
10
+ const pinpoint_1 = require("../providers/pinpoint");
11
+ const singleton_1 = require("../singleton");
24
12
  /**
25
13
  * Provides a means to registering a service worker in the browser
26
14
  * and communicating with it via postMessage events.
@@ -33,25 +21,18 @@ var Constants_1 = require("../Util/Constants");
33
21
  * and attempt to dispatch messages on state change and record analytics
34
22
  * events based on the service worker lifecycle.
35
23
  */
36
- var ServiceWorkerClass = /** @class */ (function () {
37
- function ServiceWorkerClass() {
24
+ class ServiceWorkerClass {
25
+ constructor() {
38
26
  // The AWS Amplify logger
39
27
  this._logger = new Logger_1.ConsoleLogger('ServiceWorker');
40
28
  }
41
- Object.defineProperty(ServiceWorkerClass.prototype, "serviceWorker", {
42
- /**
43
- * Get the currently active service worker
44
- */
45
- get: function () {
46
- (0, AssertError_1.asserts)(this._serviceWorker !== undefined, {
47
- name: Constants_1.SERVICE_WORKER_EXCEPTION,
48
- message: 'Service Worker instance is undefined',
49
- });
50
- return this._serviceWorker;
51
- },
52
- enumerable: false,
53
- configurable: true
54
- });
29
+ /**
30
+ * Get the currently active service worker
31
+ */
32
+ get serviceWorker() {
33
+ (0, errorHelpers_1.assert)(this._serviceWorker !== undefined, errorHelpers_1.ServiceWorkerErrorCode.UndefinedInstance);
34
+ return this._serviceWorker;
35
+ }
55
36
  /**
56
37
  * Register the service-worker.js file in the browser
57
38
  * Make sure the service-worker.js is part of the build
@@ -64,50 +45,47 @@ var ServiceWorkerClass = /** @class */ (function () {
64
45
  * - resolve(ServiceWorkerRegistration)
65
46
  * - reject(Error)
66
47
  **/
67
- ServiceWorkerClass.prototype.register = function (filePath, scope) {
68
- var _this = this;
69
- if (filePath === void 0) { filePath = '/service-worker.js'; }
70
- if (scope === void 0) { scope = '/'; }
71
- this._logger.debug("registering ".concat(filePath));
72
- this._logger.debug("registering service worker with scope ".concat(scope));
73
- return new Promise(function (resolve, reject) {
48
+ register(filePath = '/service-worker.js', scope = '/') {
49
+ this._logger.debug(`registering ${filePath}`);
50
+ this._logger.debug(`registering service worker with scope ${scope}`);
51
+ return new Promise((resolve, reject) => {
74
52
  if (navigator && 'serviceWorker' in navigator) {
75
53
  navigator.serviceWorker
76
54
  .register(filePath, {
77
- scope: scope,
55
+ scope,
78
56
  })
79
- .then(function (registration) {
57
+ .then(registration => {
80
58
  if (registration.installing) {
81
- _this._serviceWorker = registration.installing;
59
+ this._serviceWorker = registration.installing;
82
60
  }
83
61
  else if (registration.waiting) {
84
- _this._serviceWorker = registration.waiting;
62
+ this._serviceWorker = registration.waiting;
85
63
  }
86
64
  else if (registration.active) {
87
- _this._serviceWorker = registration.active;
65
+ this._serviceWorker = registration.active;
88
66
  }
89
- _this._registration = registration;
90
- _this._setupListeners();
91
- _this._logger.debug("Service Worker Registration Success: ".concat(registration));
67
+ this._registration = registration;
68
+ this._setupListeners();
69
+ this._logger.debug(`Service Worker Registration Success: ${registration}`);
92
70
  return resolve(registration);
93
71
  })
94
- .catch(function (error) {
95
- _this._logger.debug("Service Worker Registration Failed ".concat(error));
96
- return reject(new Errors_1.AmplifyError({
97
- name: Constants_1.SERVICE_WORKER_EXCEPTION,
72
+ .catch(error => {
73
+ this._logger.debug(`Service Worker Registration Failed ${error}`);
74
+ return reject(new errors_1.AmplifyError({
75
+ name: errorHelpers_1.ServiceWorkerErrorCode.Unavailable,
98
76
  message: 'Service Worker not available',
99
77
  underlyingError: error,
100
78
  }));
101
79
  });
102
80
  }
103
81
  else {
104
- return reject(new Errors_1.AmplifyError({
105
- name: Constants_1.SERVICE_WORKER_EXCEPTION,
82
+ return reject(new errors_1.AmplifyError({
83
+ name: errorHelpers_1.ServiceWorkerErrorCode.Unavailable,
106
84
  message: 'Service Worker not available',
107
85
  }));
108
86
  }
109
87
  });
110
- };
88
+ }
111
89
  /**
112
90
  * Enable web push notifications. If not subscribed, a new subscription will
113
91
  * be created and registered.
@@ -119,66 +97,59 @@ var ServiceWorkerClass = /** @class */ (function () {
119
97
  * - resolve(PushSubscription)
120
98
  * - reject(Error)
121
99
  */
122
- ServiceWorkerClass.prototype.enablePush = function (publicKey) {
123
- var _this = this;
124
- (0, AssertError_1.asserts)(this._registration !== undefined, {
125
- name: Constants_1.SERVICE_WORKER_EXCEPTION,
126
- message: 'Service Worker registration is undefined',
127
- });
100
+ enablePush(publicKey) {
101
+ (0, errorHelpers_1.assert)(this._registration !== undefined, errorHelpers_1.ServiceWorkerErrorCode.UndefinedRegistration);
128
102
  this._publicKey = publicKey;
129
- return new Promise(function (resolve, reject) {
130
- if ((0, JS_1.isBrowser)()) {
131
- (0, AssertError_1.asserts)(_this._registration !== undefined, {
132
- name: Constants_1.SERVICE_WORKER_EXCEPTION,
133
- message: 'Service Worker registration is undefined',
134
- });
135
- _this._registration.pushManager.getSubscription().then(function (subscription) {
103
+ return new Promise((resolve, reject) => {
104
+ if ((0, utils_1.isBrowser)()) {
105
+ (0, errorHelpers_1.assert)(this._registration !== undefined, errorHelpers_1.ServiceWorkerErrorCode.UndefinedRegistration);
106
+ this._registration.pushManager.getSubscription().then(subscription => {
136
107
  if (subscription) {
137
- _this._subscription = subscription;
138
- _this._logger.debug("User is subscribed to push: ".concat(JSON.stringify(subscription)));
108
+ this._subscription = subscription;
109
+ this._logger.debug(`User is subscribed to push: ${JSON.stringify(subscription)}`);
139
110
  resolve(subscription);
140
111
  }
141
112
  else {
142
- _this._logger.debug("User is NOT subscribed to push");
143
- return _this._registration.pushManager.subscribe({
113
+ this._logger.debug(`User is NOT subscribed to push`);
114
+ return this._registration.pushManager.subscribe({
144
115
  userVisibleOnly: true,
145
- applicationServerKey: _this._urlB64ToUint8Array(publicKey),
116
+ applicationServerKey: this._urlB64ToUint8Array(publicKey),
146
117
  })
147
- .then(function (subscription) {
148
- _this._subscription = subscription;
149
- _this._logger.debug("User subscribed: ".concat(JSON.stringify(subscription)));
118
+ .then(subscription => {
119
+ this._subscription = subscription;
120
+ this._logger.debug(`User subscribed: ${JSON.stringify(subscription)}`);
150
121
  resolve(subscription);
151
122
  })
152
- .catch(function (error) {
153
- _this._logger.error(error);
123
+ .catch(error => {
124
+ this._logger.error(error);
154
125
  });
155
126
  }
156
127
  });
157
128
  }
158
129
  else {
159
- return reject(new Errors_1.AmplifyError({
160
- name: Constants_1.SERVICE_WORKER_EXCEPTION,
130
+ return reject(new errors_1.AmplifyError({
131
+ name: errorHelpers_1.ServiceWorkerErrorCode.Unavailable,
161
132
  message: 'Service Worker not available',
162
133
  }));
163
134
  }
164
135
  });
165
- };
136
+ }
166
137
  /**
167
138
  * Convert a base64 encoded string to a Uint8 array for the push server key
168
139
  * @param base64String
169
140
  */
170
- ServiceWorkerClass.prototype._urlB64ToUint8Array = function (base64String) {
171
- var padding = '='.repeat((4 - (base64String.length % 4)) % 4);
172
- var base64 = (base64String + padding)
141
+ _urlB64ToUint8Array(base64String) {
142
+ const padding = '='.repeat((4 - (base64String.length % 4)) % 4);
143
+ const base64 = (base64String + padding)
173
144
  .replace(/\-/g, '+')
174
145
  .replace(/_/g, '/');
175
- var rawData = window.atob(base64);
176
- var outputArray = new Uint8Array(rawData.length);
177
- for (var i = 0; i < rawData.length; ++i) {
146
+ const rawData = window.atob(base64);
147
+ const outputArray = new Uint8Array(rawData.length);
148
+ for (let i = 0; i < rawData.length; ++i) {
178
149
  outputArray[i] = rawData.charCodeAt(i);
179
150
  }
180
151
  return outputArray;
181
- };
152
+ }
182
153
  /**
183
154
  * Send a message to the service worker. The service worker needs
184
155
  * to implement `self.addEventListener('message') to handle the
@@ -187,37 +158,40 @@ var ServiceWorkerClass = /** @class */ (function () {
187
158
  * - see: https://developer.mozilla.org/en-US/docs/Web/API/Transferable
188
159
  * @returns {Promise}
189
160
  **/
190
- ServiceWorkerClass.prototype.send = function (message) {
161
+ send(message) {
191
162
  if (this._serviceWorker) {
192
163
  this._serviceWorker.postMessage(typeof message === 'object' ? JSON.stringify(message) : message);
193
164
  }
194
- };
165
+ }
195
166
  /**
196
167
  * Listen for service worker state change and message events
197
168
  * https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorker/state
198
169
  **/
199
- ServiceWorkerClass.prototype._setupListeners = function () {
200
- var _this = this;
201
- this.serviceWorker.addEventListener('statechange', function (event) {
202
- var currentState = _this.serviceWorker.state;
203
- _this._logger.debug("ServiceWorker statechange: ".concat(currentState));
204
- Amplify_1.Amplify.Analytics;
205
- if (isAmplifyWithAnalytics(Amplify_1.Amplify)) {
206
- Amplify_1.Amplify.Analytics.record({
207
- name: 'ServiceWorker',
208
- attributes: {
209
- state: currentState,
170
+ _setupListeners() {
171
+ this.serviceWorker.addEventListener('statechange', async (event) => {
172
+ const currentState = this.serviceWorker.state;
173
+ this._logger.debug(`ServiceWorker statechange: ${currentState}`);
174
+ const { appId, region } = singleton_1.Amplify.getConfig().Analytics?.Pinpoint ?? {};
175
+ const { credentials } = await (0, singleton_1.fetchAuthSession)();
176
+ if (appId && region && credentials) {
177
+ // Pinpoint is configured, record an event
178
+ (0, pinpoint_1.record)({
179
+ appId,
180
+ region,
181
+ category: 'Core',
182
+ credentials,
183
+ event: {
184
+ name: 'ServiceWorker',
185
+ attributes: {
186
+ state: currentState,
187
+ },
210
188
  },
211
189
  });
212
190
  }
213
191
  });
214
- this.serviceWorker.addEventListener('message', function (event) {
215
- _this._logger.debug("ServiceWorker message event: ".concat(event));
192
+ this.serviceWorker.addEventListener('message', event => {
193
+ this._logger.debug(`ServiceWorker message event: ${event}`);
216
194
  });
217
- };
218
- return ServiceWorkerClass;
219
- }());
220
- exports.ServiceWorkerClass = ServiceWorkerClass;
221
- function isAmplifyWithAnalytics(amplify) {
222
- return amplify.Analytics && typeof amplify.Analytics.record === 'function';
195
+ }
223
196
  }
197
+ exports.ServiceWorkerClass = ServiceWorkerClass;
@@ -0,0 +1,7 @@
1
+ import { AssertionFunction } from '../types';
2
+ export declare enum ServiceWorkerErrorCode {
3
+ UndefinedInstance = "UndefinedInstance",
4
+ UndefinedRegistration = "UndefinedRegistration",
5
+ Unavailable = "Unavailable"
6
+ }
7
+ export declare const assert: AssertionFunction<ServiceWorkerErrorCode>;
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ // SPDX-License-Identifier: Apache-2.0
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.assert = exports.ServiceWorkerErrorCode = void 0;
6
+ const errors_1 = require("../errors");
7
+ var ServiceWorkerErrorCode;
8
+ (function (ServiceWorkerErrorCode) {
9
+ ServiceWorkerErrorCode["UndefinedInstance"] = "UndefinedInstance";
10
+ ServiceWorkerErrorCode["UndefinedRegistration"] = "UndefinedRegistration";
11
+ ServiceWorkerErrorCode["Unavailable"] = "Unavailable";
12
+ })(ServiceWorkerErrorCode = exports.ServiceWorkerErrorCode || (exports.ServiceWorkerErrorCode = {}));
13
+ const serviceWorkerErrorMap = {
14
+ [ServiceWorkerErrorCode.UndefinedInstance]: {
15
+ message: 'Service Worker instance is undefined.',
16
+ },
17
+ [ServiceWorkerErrorCode.UndefinedRegistration]: {
18
+ message: 'Service Worker registration is undefined.',
19
+ },
20
+ [ServiceWorkerErrorCode.Unavailable]: {
21
+ message: 'Service Worker not available.',
22
+ },
23
+ };
24
+ exports.assert = (0, errors_1.createAssertionFunction)(serviceWorkerErrorMap);
@@ -1,13 +1 @@
1
- /**
2
- * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
- *
4
- * Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with
5
- * the License. A copy of the License is located at
6
- *
7
- * http://aws.amazon.com/apache2.0/
8
- *
9
- * or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
10
- * CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions
11
- * and limitations under the License.
12
- */
13
1
  export { ServiceWorkerClass as ServiceWorker } from './ServiceWorker';
@@ -1,18 +1,6 @@
1
1
  "use strict";
2
2
  // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
3
  // SPDX-License-Identifier: Apache-2.0
4
- /**
5
- * Copyright 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
6
- *
7
- * Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with
8
- * the License. A copy of the License is located at
9
- *
10
- * http://aws.amazon.com/apache2.0/
11
- *
12
- * or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
13
- * CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions
14
- * and limitations under the License.
15
- */
16
4
  Object.defineProperty(exports, "__esModule", { value: true });
17
5
  exports.ServiceWorker = void 0;
18
6
  var ServiceWorker_1 = require("./ServiceWorker");
@@ -7,32 +7,16 @@
7
7
  *
8
8
  * @see https://github.com/aws/aws-sdk-js/blob/6edf586dcc1de7fe8fbfbbd9a0d2b1847921e6e1/lib/util.js#L262
9
9
  */
10
- var __read = (this && this.__read) || function (o, n) {
11
- var m = typeof Symbol === "function" && o[Symbol.iterator];
12
- if (!m) return o;
13
- var i = m.call(o), r, ar = [], e;
14
- try {
15
- while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
16
- }
17
- catch (error) { e = { error: error }; }
18
- finally {
19
- try {
20
- if (r && !r.done && (m = i["return"])) m.call(i);
21
- }
22
- finally { if (e) throw e.error; }
23
- }
24
- return ar;
25
- };
26
10
  Object.defineProperty(exports, "__esModule", { value: true });
27
11
  exports.DateUtils = void 0;
28
12
  // Comment - TODO: remove
29
- var FIVE_MINUTES_IN_MS = 1000 * 60 * 5;
13
+ const FIVE_MINUTES_IN_MS = 1000 * 60 * 5;
30
14
  exports.DateUtils = {
31
15
  /**
32
16
  * Milliseconds to offset the date to compensate for clock skew between device & services
33
17
  */
34
18
  clockOffset: 0,
35
- getDateWithClockOffset: function () {
19
+ getDateWithClockOffset() {
36
20
  if (exports.DateUtils.clockOffset) {
37
21
  return new Date(new Date().getTime() + exports.DateUtils.clockOffset);
38
22
  }
@@ -43,33 +27,32 @@ exports.DateUtils = {
43
27
  /**
44
28
  * @returns {number} Clock offset in milliseconds
45
29
  */
46
- getClockOffset: function () {
30
+ getClockOffset() {
47
31
  return exports.DateUtils.clockOffset;
48
32
  },
49
- getHeaderStringFromDate: function (date) {
50
- if (date === void 0) { date = exports.DateUtils.getDateWithClockOffset(); }
33
+ getHeaderStringFromDate(date = exports.DateUtils.getDateWithClockOffset()) {
51
34
  return date.toISOString().replace(/[:\-]|\.\d{3}/g, '');
52
35
  },
53
- getDateFromHeaderString: function (header) {
54
- 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];
36
+ getDateFromHeaderString(header) {
37
+ const [, year, month, day, hour, minute, second] = header.match(/^(\d{4})(\d{2})(\d{2})T(\d{2})(\d{2})(\d{2}).+/);
55
38
  return new Date(Date.UTC(Number(year), Number(month) - 1, Number(day), Number(hour), Number(minute), Number(second)));
56
39
  },
57
- isClockSkewed: function (serverDate) {
40
+ isClockSkewed(serverDate) {
58
41
  // API gateway permits client calls that are off by no more than ±5 minutes
59
42
  return (Math.abs(serverDate.getTime() - exports.DateUtils.getDateWithClockOffset().getTime()) >= FIVE_MINUTES_IN_MS);
60
43
  },
61
- isClockSkewError: function (error) {
44
+ isClockSkewError(error) {
62
45
  if (!error.response || !error.response.headers) {
63
46
  return false;
64
47
  }
65
- var headers = error.response.headers;
48
+ const { headers } = error.response;
66
49
  return Boolean(['BadRequestException', 'InvalidSignatureException'].includes(headers['x-amzn-errortype']) &&
67
50
  (headers.date || headers.Date));
68
51
  },
69
52
  /**
70
53
  * @param {number} offset Clock offset in milliseconds
71
54
  */
72
- setClockOffset: function (offset) {
55
+ setClockOffset(offset) {
73
56
  exports.DateUtils.clockOffset = offset;
74
57
  },
75
58
  };
@@ -1,27 +1,15 @@
1
1
  "use strict";
2
2
  // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
3
  // SPDX-License-Identifier: Apache-2.0
4
- var __assign = (this && this.__assign) || function () {
5
- __assign = Object.assign || function(t) {
6
- for (var s, i = 1, n = arguments.length; i < n; i++) {
7
- s = arguments[i];
8
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
9
- t[p] = s[p];
10
- }
11
- return t;
12
- };
13
- return __assign.apply(this, arguments);
14
- };
15
4
  Object.defineProperty(exports, "__esModule", { value: true });
16
5
  exports.Signer = void 0;
17
- var Util_1 = require("./Util");
18
- var signatureV4_1 = require("./clients/middleware/signing/signer/signatureV4");
19
- var IOT_SERVICE_NAME = 'iotdevicegateway';
6
+ const DateUtils_1 = require("./DateUtils");
7
+ const signatureV4_1 = require("../clients/middleware/signing/signer/signatureV4");
8
+ const amplifyUrl_1 = require("../utils/amplifyUrl");
9
+ const IOT_SERVICE_NAME = 'iotdevicegateway';
20
10
  // Best practice regex to parse the service and region from an AWS endpoint
21
- var AWS_ENDPOINT_REGEX = /([^\.]+)\.(?:([^\.]*)\.)?amazonaws\.com(.cn)?$/;
22
- var Signer = /** @class */ (function () {
23
- function Signer() {
24
- }
11
+ const AWS_ENDPOINT_REGEX = /([^\.]+)\.(?:([^\.]*)\.)?amazonaws\.com(.cn)?$/;
12
+ class Signer {
25
13
  /**
26
14
  * Sign a HTTP request, add 'Authorization' header to request param
27
15
  * @method sign
@@ -58,14 +46,18 @@ var Signer = /** @class */ (function () {
58
46
  *
59
47
  * @returns {object} Signed HTTP request
60
48
  */
61
- Signer.sign = function (request, accessInfo, serviceInfo) {
49
+ static sign(request, accessInfo, serviceInfo) {
62
50
  request.headers = request.headers || {};
63
51
  if (request.body && !request.data) {
64
52
  throw new Error('The attribute "body" was found on the request object. Please use the attribute "data" instead.');
65
53
  }
66
- var requestToSign = __assign(__assign({}, request), { body: request.data, url: new URL(request.url) });
67
- var options = getOptions(requestToSign, accessInfo, serviceInfo);
68
- var signedRequest = (0, signatureV4_1.signRequest)(requestToSign, options);
54
+ const requestToSign = {
55
+ ...request,
56
+ body: request.data,
57
+ url: new amplifyUrl_1.AmplifyUrl(request.url),
58
+ };
59
+ const options = getOptions(requestToSign, accessInfo, serviceInfo);
60
+ const signedRequest = (0, signatureV4_1.signRequest)(requestToSign, options);
69
61
  // Prior to using `signRequest`, Signer accepted urls as strings and outputted urls as string. Coerce the property
70
62
  // back to a string so as not to disrupt consumers of Signer.
71
63
  signedRequest.url = signedRequest.url.toString();
@@ -77,42 +69,50 @@ var Signer = /** @class */ (function () {
77
69
  delete signedRequest.headers.authorization;
78
70
  delete signedRequest.headers['x-amz-security-token'];
79
71
  return signedRequest;
80
- };
81
- Signer.signUrl = function (urlOrRequest, accessInfo, serviceInfo, expiration) {
82
- var urlToSign = typeof urlOrRequest === 'object' ? urlOrRequest.url : urlOrRequest;
83
- var method = typeof urlOrRequest === 'object' ? urlOrRequest.method : 'GET';
84
- var body = typeof urlOrRequest === 'object' ? urlOrRequest.body : undefined;
85
- var presignable = {
86
- body: body,
87
- method: method,
88
- url: new URL(urlToSign),
72
+ }
73
+ static signUrl(urlOrRequest, accessInfo, serviceInfo, expiration) {
74
+ const urlToSign = typeof urlOrRequest === 'object' ? urlOrRequest.url : urlOrRequest;
75
+ const method = typeof urlOrRequest === 'object' ? urlOrRequest.method : 'GET';
76
+ const body = typeof urlOrRequest === 'object' ? urlOrRequest.body : undefined;
77
+ const presignable = {
78
+ body,
79
+ method,
80
+ url: new amplifyUrl_1.AmplifyUrl(urlToSign),
89
81
  };
90
- var options = getOptions(presignable, accessInfo, serviceInfo, expiration);
91
- var signedUrl = (0, signatureV4_1.presignUrl)(presignable, options);
82
+ const options = getOptions(presignable, accessInfo, serviceInfo, expiration);
83
+ const signedUrl = (0, signatureV4_1.presignUrl)(presignable, options);
92
84
  if (accessInfo.session_token &&
93
85
  !sessionTokenRequiredInSigning(options.signingService)) {
94
86
  signedUrl.searchParams.append(signatureV4_1.TOKEN_QUERY_PARAM, accessInfo.session_token);
95
87
  }
96
88
  return signedUrl.toString();
97
- };
98
- return Signer;
99
- }());
89
+ }
90
+ }
100
91
  exports.Signer = Signer;
101
- var getOptions = function (request, accessInfo, serviceInfo, expiration) {
102
- var _a = accessInfo !== null && accessInfo !== void 0 ? accessInfo : {}, access_key = _a.access_key, secret_key = _a.secret_key, session_token = _a.session_token;
103
- var _b = parseServiceInfo(request.url), urlRegion = _b.region, urlService = _b.service;
104
- 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;
105
- var credentials = __assign({ accessKeyId: access_key, secretAccessKey: secret_key }, (sessionTokenRequiredInSigning(service)
106
- ? { sessionToken: session_token }
107
- : {}));
108
- return __assign({ credentials: credentials, signingDate: Util_1.DateUtils.getDateWithClockOffset(), signingRegion: region, signingService: service }, (expiration && { expiration: expiration }));
92
+ const getOptions = (request, accessInfo, serviceInfo, expiration) => {
93
+ const { access_key, secret_key, session_token } = accessInfo ?? {};
94
+ const { region: urlRegion, service: urlService } = parseServiceInfo(request.url);
95
+ const { region = urlRegion, service = urlService } = serviceInfo ?? {};
96
+ const credentials = {
97
+ accessKeyId: access_key,
98
+ secretAccessKey: secret_key,
99
+ ...(sessionTokenRequiredInSigning(service)
100
+ ? { sessionToken: session_token }
101
+ : {}),
102
+ };
103
+ return {
104
+ credentials,
105
+ signingDate: DateUtils_1.DateUtils.getDateWithClockOffset(),
106
+ signingRegion: region,
107
+ signingService: service,
108
+ ...(expiration && { expiration }),
109
+ };
109
110
  };
110
111
  // TODO: V6 investigate whether add to custom clients' general signer implementation.
111
- var parseServiceInfo = function (url) {
112
- var _a;
113
- var host = url.host;
114
- var matched = (_a = host.match(AWS_ENDPOINT_REGEX)) !== null && _a !== void 0 ? _a : [];
115
- var parsed = matched.slice(1, 3);
112
+ const parseServiceInfo = (url) => {
113
+ const host = url.host;
114
+ const matched = host.match(AWS_ENDPOINT_REGEX) ?? [];
115
+ let parsed = matched.slice(1, 3);
116
116
  if (parsed[1] === 'es') {
117
117
  // Elastic Search
118
118
  parsed = parsed.reverse();
@@ -125,6 +125,4 @@ var parseServiceInfo = function (url) {
125
125
  // IoT service does not allow the session token in the canonical request
126
126
  // https://docs.aws.amazon.com/general/latest/gr/sigv4-add-signature-to-request.html
127
127
  // TODO: V6 investigate whether add to custom clients' general signer implementation.
128
- var sessionTokenRequiredInSigning = function (service) {
129
- return service !== IOT_SERVICE_NAME;
130
- };
128
+ const sessionTokenRequiredInSigning = (service) => service !== IOT_SERVICE_NAME;
@@ -0,0 +1 @@
1
+ export { Signer } from './Signer';
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ // SPDX-License-Identifier: Apache-2.0
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.Signer = void 0;
6
+ var Signer_1 = require("./Signer");
7
+ Object.defineProperty(exports, "Signer", { enumerable: true, get: function () { return Signer_1.Signer; } });
@@ -1,4 +1,4 @@
1
- import { AmplifyError } from '../../libraryUtils';
1
+ import { AmplifyError } from '../../errors';
2
2
  export declare class AmplifyServerContextError extends AmplifyError {
3
3
  constructor({ message, recoverySuggestion, underlyingError, }: {
4
4
  message: string;