@aws-amplify/core 6.0.17-unstable.e316a2e.0 → 6.0.17

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 (454) hide show
  1. package/dist/cjs/BackgroundProcessManager/BackgroundProcessManager.js +11 -16
  2. package/dist/cjs/BackgroundProcessManager/BackgroundProcessManager.js.map +1 -1
  3. package/dist/cjs/Cache/StorageCacheCommon.js +5 -5
  4. package/dist/cjs/Cache/StorageCacheCommon.js.map +1 -1
  5. package/dist/cjs/Cache/utils/CacheList.js +2 -2
  6. package/dist/cjs/Cache/utils/CacheList.js.map +1 -1
  7. package/dist/cjs/Hub/index.js +2 -2
  8. package/dist/cjs/Hub/index.js.map +1 -1
  9. package/dist/cjs/I18n/I18n.js +8 -13
  10. package/dist/cjs/I18n/I18n.js.map +1 -1
  11. package/dist/cjs/I18n/index.js +4 -4
  12. package/dist/cjs/I18n/index.js.map +1 -1
  13. package/dist/cjs/Logger/ConsoleLogger.js +7 -7
  14. package/dist/cjs/Logger/ConsoleLogger.js.map +1 -1
  15. package/dist/cjs/Mutex/Mutex.js +4 -1
  16. package/dist/cjs/Mutex/Mutex.js.map +1 -1
  17. package/dist/cjs/Platform/detectFramework.js +3 -1
  18. package/dist/cjs/Platform/detectFramework.js.map +1 -1
  19. package/dist/cjs/Platform/detection/Angular.js +2 -4
  20. package/dist/cjs/Platform/detection/Angular.js.map +1 -1
  21. package/dist/cjs/Platform/detection/Expo.js +1 -2
  22. package/dist/cjs/Platform/detection/Expo.js.map +1 -1
  23. package/dist/cjs/Platform/detection/Next.js +3 -2
  24. package/dist/cjs/Platform/detection/Next.js.map +1 -1
  25. package/dist/cjs/Platform/detection/Nuxt.js +3 -4
  26. package/dist/cjs/Platform/detection/Nuxt.js.map +1 -1
  27. package/dist/cjs/Platform/index.js +1 -1
  28. package/dist/cjs/Platform/index.js.map +1 -1
  29. package/dist/cjs/Platform/version.js +1 -1
  30. package/dist/cjs/Platform/version.js.map +1 -1
  31. package/dist/cjs/Reachability/Reachability.js +6 -2
  32. package/dist/cjs/Reachability/Reachability.js.map +1 -1
  33. package/dist/cjs/ServiceWorker/ServiceWorker.js +11 -11
  34. package/dist/cjs/ServiceWorker/ServiceWorker.js.map +1 -1
  35. package/dist/cjs/Signer/DateUtils.js +1 -1
  36. package/dist/cjs/Signer/DateUtils.js.map +1 -1
  37. package/dist/cjs/Signer/Signer.js +3 -3
  38. package/dist/cjs/Signer/Signer.js.map +1 -1
  39. package/dist/cjs/adapterCore/serverContext/serverContext.js +1 -1
  40. package/dist/cjs/adapterCore/serverContext/serverContext.js.map +1 -1
  41. package/dist/cjs/awsClients/cognitoIdentity/base.js +2 -2
  42. package/dist/cjs/awsClients/cognitoIdentity/base.js.map +1 -1
  43. package/dist/cjs/awsClients/cognitoIdentity/getCredentialsForIdentity.js +1 -1
  44. package/dist/cjs/awsClients/cognitoIdentity/getCredentialsForIdentity.js.map +1 -1
  45. package/dist/cjs/awsClients/cognitoIdentity/getId.js +1 -1
  46. package/dist/cjs/awsClients/cognitoIdentity/getId.js.map +1 -1
  47. package/dist/cjs/awsClients/pinpoint/getInAppMessages.js +1 -1
  48. package/dist/cjs/awsClients/pinpoint/getInAppMessages.js.map +1 -1
  49. package/dist/cjs/awsClients/pinpoint/putEvents.js +1 -1
  50. package/dist/cjs/awsClients/pinpoint/putEvents.js.map +1 -1
  51. package/dist/cjs/awsClients/pinpoint/types.js +0 -1
  52. package/dist/cjs/awsClients/pinpoint/types.js.map +1 -1
  53. package/dist/cjs/awsClients/pinpoint/updateEndpoint.js +1 -1
  54. package/dist/cjs/awsClients/pinpoint/updateEndpoint.js.map +1 -1
  55. package/dist/cjs/clients/handlers/authenticated.js +3 -3
  56. package/dist/cjs/clients/handlers/authenticated.js.map +1 -1
  57. package/dist/cjs/clients/handlers/unauthenticated.js +1 -1
  58. package/dist/cjs/clients/handlers/unauthenticated.js.map +1 -1
  59. package/dist/cjs/clients/index.js +4 -4
  60. package/dist/cjs/clients/index.js.map +1 -1
  61. package/dist/cjs/clients/internal/composeServiceApi.js +1 -1
  62. package/dist/cjs/clients/internal/composeServiceApi.js.map +1 -1
  63. package/dist/cjs/clients/internal/composeTransferHandler.js +1 -1
  64. package/dist/cjs/clients/internal/composeTransferHandler.js.map +1 -1
  65. package/dist/cjs/clients/middleware/retry/defaultRetryDecider.js +2 -2
  66. package/dist/cjs/clients/middleware/retry/defaultRetryDecider.js.map +1 -1
  67. package/dist/cjs/clients/middleware/retry/index.js +2 -2
  68. package/dist/cjs/clients/middleware/retry/index.js.map +1 -1
  69. package/dist/cjs/clients/middleware/retry/jitteredBackoff.js +1 -1
  70. package/dist/cjs/clients/middleware/retry/jitteredBackoff.js.map +1 -1
  71. package/dist/cjs/clients/middleware/retry/middleware.js +6 -6
  72. package/dist/cjs/clients/middleware/retry/middleware.js.map +1 -1
  73. package/dist/cjs/clients/middleware/signing/index.js +2 -2
  74. package/dist/cjs/clients/middleware/signing/index.js.map +1 -1
  75. package/dist/cjs/clients/middleware/signing/middleware.js +3 -3
  76. package/dist/cjs/clients/middleware/signing/middleware.js.map +1 -1
  77. package/dist/cjs/clients/middleware/signing/signer/signatureV4/presignUrl.js +1 -2
  78. package/dist/cjs/clients/middleware/signing/signer/signatureV4/presignUrl.js.map +1 -1
  79. package/dist/cjs/clients/middleware/signing/signer/signatureV4/utils/getFormattedDates.js +1 -1
  80. package/dist/cjs/clients/middleware/signing/signer/signatureV4/utils/getFormattedDates.js.map +1 -1
  81. package/dist/cjs/clients/middleware/userAgent/index.js +2 -2
  82. package/dist/cjs/clients/middleware/userAgent/index.js.map +1 -1
  83. package/dist/cjs/clients/middleware/userAgent/middleware.js +3 -3
  84. package/dist/cjs/clients/middleware/userAgent/middleware.js.map +1 -1
  85. package/dist/cjs/clients/serde/json.js +1 -1
  86. package/dist/cjs/clients/serde/json.js.map +1 -1
  87. package/dist/cjs/errors/errorHelpers.js +1 -1
  88. package/dist/cjs/errors/errorHelpers.js.map +1 -1
  89. package/dist/cjs/parseAWSExports.js +1 -1
  90. package/dist/cjs/parseAWSExports.js.map +1 -1
  91. package/dist/cjs/providers/pinpoint/apis/updateEndpoint.js +1 -1
  92. package/dist/cjs/providers/pinpoint/apis/updateEndpoint.js.map +1 -1
  93. package/dist/cjs/providers/pinpoint/utils/PinpointEventBuffer.js +2 -3
  94. package/dist/cjs/providers/pinpoint/utils/PinpointEventBuffer.js.map +1 -1
  95. package/dist/cjs/providers/pinpoint/utils/isAppInForeground.native.js +0 -1
  96. package/dist/cjs/providers/pinpoint/utils/isAppInForeground.native.js.map +1 -1
  97. package/dist/cjs/singleton/Amplify.js +1 -1
  98. package/dist/cjs/singleton/Amplify.js.map +1 -1
  99. package/dist/cjs/singleton/Auth/index.js +2 -6
  100. package/dist/cjs/singleton/Auth/index.js.map +1 -1
  101. package/dist/cjs/singleton/Auth/utils/index.js +4 -4
  102. package/dist/cjs/singleton/Auth/utils/index.js.map +1 -1
  103. package/dist/cjs/singleton/apis/fetchAuthSession.js +1 -1
  104. package/dist/cjs/singleton/apis/fetchAuthSession.js.map +1 -1
  105. package/dist/cjs/storage/CookieStorage.js +8 -4
  106. package/dist/cjs/storage/CookieStorage.js.map +1 -1
  107. package/dist/cjs/storage/CookieStorage.native.js +0 -3
  108. package/dist/cjs/storage/CookieStorage.native.js.map +1 -1
  109. package/dist/cjs/utils/WordArray.js +2 -2
  110. package/dist/cjs/utils/WordArray.js.map +1 -1
  111. package/dist/cjs/utils/deDupeAsyncFunction.js +8 -8
  112. package/dist/cjs/utils/deDupeAsyncFunction.js.map +1 -1
  113. package/dist/cjs/utils/getClientInfo/getClientInfo.android.js +2 -3
  114. package/dist/cjs/utils/getClientInfo/getClientInfo.android.js.map +1 -1
  115. package/dist/cjs/utils/getClientInfo/getClientInfo.ios.js +2 -3
  116. package/dist/cjs/utils/getClientInfo/getClientInfo.ios.js.map +1 -1
  117. package/dist/cjs/utils/queuedStorage/createQueuedStorage.native.js +2 -2
  118. package/dist/cjs/utils/queuedStorage/createQueuedStorage.native.js.map +1 -1
  119. package/dist/cjs/utils/retry/NonRetryableError.js +2 -2
  120. package/dist/cjs/utils/retry/NonRetryableError.js.map +1 -1
  121. package/dist/cjs/utils/retry/retry.js +15 -6
  122. package/dist/cjs/utils/retry/retry.js.map +1 -1
  123. package/dist/esm/BackgroundProcessManager/BackgroundProcessManager.d.ts +2 -8
  124. package/dist/esm/BackgroundProcessManager/BackgroundProcessManager.mjs +11 -16
  125. package/dist/esm/BackgroundProcessManager/BackgroundProcessManager.mjs.map +1 -1
  126. package/dist/esm/BackgroundProcessManager/types.d.ts +3 -3
  127. package/dist/esm/Cache/StorageCacheCommon.mjs +5 -5
  128. package/dist/esm/Cache/StorageCacheCommon.mjs.map +1 -1
  129. package/dist/esm/Cache/types/cache.d.ts +1 -1
  130. package/dist/esm/Cache/utils/CacheList.mjs +2 -2
  131. package/dist/esm/Cache/utils/CacheList.mjs.map +1 -1
  132. package/dist/esm/Hub/index.d.ts +4 -4
  133. package/dist/esm/Hub/index.mjs +2 -2
  134. package/dist/esm/Hub/index.mjs.map +1 -1
  135. package/dist/esm/Hub/types/AuthTypes.d.ts +11 -11
  136. package/dist/esm/Hub/types/HubTypes.d.ts +8 -8
  137. package/dist/esm/I18n/I18n.d.ts +0 -6
  138. package/dist/esm/I18n/I18n.mjs +8 -13
  139. package/dist/esm/I18n/I18n.mjs.map +1 -1
  140. package/dist/esm/I18n/index.mjs +4 -4
  141. package/dist/esm/I18n/index.mjs.map +1 -1
  142. package/dist/esm/Logger/ConsoleLogger.d.ts +1 -1
  143. package/dist/esm/Logger/ConsoleLogger.mjs +7 -7
  144. package/dist/esm/Logger/ConsoleLogger.mjs.map +1 -1
  145. package/dist/esm/Mutex/Mutex.mjs +4 -1
  146. package/dist/esm/Mutex/Mutex.mjs.map +1 -1
  147. package/dist/esm/Mutex/types.d.ts +2 -6
  148. package/dist/esm/Platform/detectFramework.mjs +3 -1
  149. package/dist/esm/Platform/detectFramework.mjs.map +1 -1
  150. package/dist/esm/Platform/detection/Angular.mjs +2 -4
  151. package/dist/esm/Platform/detection/Angular.mjs.map +1 -1
  152. package/dist/esm/Platform/detection/Expo.mjs +1 -2
  153. package/dist/esm/Platform/detection/Expo.mjs.map +1 -1
  154. package/dist/esm/Platform/detection/Next.mjs +3 -2
  155. package/dist/esm/Platform/detection/Next.mjs.map +1 -1
  156. package/dist/esm/Platform/detection/Nuxt.mjs +3 -4
  157. package/dist/esm/Platform/detection/Nuxt.mjs.map +1 -1
  158. package/dist/esm/Platform/detection/index.mjs.map +1 -1
  159. package/dist/esm/Platform/index.d.ts +2 -2
  160. package/dist/esm/Platform/index.mjs +1 -1
  161. package/dist/esm/Platform/index.mjs.map +1 -1
  162. package/dist/esm/Platform/types.d.ts +12 -12
  163. package/dist/esm/Platform/version.d.ts +1 -1
  164. package/dist/esm/Platform/version.mjs +1 -1
  165. package/dist/esm/Platform/version.mjs.map +1 -1
  166. package/dist/esm/Reachability/Reachability.mjs +6 -2
  167. package/dist/esm/Reachability/Reachability.mjs.map +1 -1
  168. package/dist/esm/Reachability/types.d.ts +2 -2
  169. package/dist/esm/ServiceWorker/ServiceWorker.d.ts +0 -1
  170. package/dist/esm/ServiceWorker/ServiceWorker.mjs +11 -11
  171. package/dist/esm/ServiceWorker/ServiceWorker.mjs.map +1 -1
  172. package/dist/esm/Signer/DateUtils.d.ts +9 -9
  173. package/dist/esm/Signer/DateUtils.mjs +1 -1
  174. package/dist/esm/Signer/DateUtils.mjs.map +1 -1
  175. package/dist/esm/Signer/Signer.mjs +3 -3
  176. package/dist/esm/Signer/Signer.mjs.map +1 -1
  177. package/dist/esm/adapterCore/serverContext/serverContext.d.ts +1 -1
  178. package/dist/esm/adapterCore/serverContext/serverContext.mjs +1 -1
  179. package/dist/esm/adapterCore/serverContext/serverContext.mjs.map +1 -1
  180. package/dist/esm/adapterCore/serverContext/types/amplifyServer.d.ts +7 -9
  181. package/dist/esm/awsClients/cognitoIdentity/base.d.ts +1 -1
  182. package/dist/esm/awsClients/cognitoIdentity/base.mjs +2 -2
  183. package/dist/esm/awsClients/cognitoIdentity/base.mjs.map +1 -1
  184. package/dist/esm/awsClients/cognitoIdentity/getCredentialsForIdentity.d.ts +2 -6
  185. package/dist/esm/awsClients/cognitoIdentity/getCredentialsForIdentity.mjs +1 -1
  186. package/dist/esm/awsClients/cognitoIdentity/getCredentialsForIdentity.mjs.map +1 -1
  187. package/dist/esm/awsClients/cognitoIdentity/getId.d.ts +2 -6
  188. package/dist/esm/awsClients/cognitoIdentity/getId.mjs +1 -1
  189. package/dist/esm/awsClients/cognitoIdentity/getId.mjs.map +1 -1
  190. package/dist/esm/awsClients/cognitoIdentity/types.d.ts +2 -4
  191. package/dist/esm/awsClients/pinpoint/base.mjs.map +1 -1
  192. package/dist/esm/awsClients/pinpoint/getInAppMessages.d.ts +1 -1
  193. package/dist/esm/awsClients/pinpoint/getInAppMessages.mjs +1 -1
  194. package/dist/esm/awsClients/pinpoint/getInAppMessages.mjs.map +1 -1
  195. package/dist/esm/awsClients/pinpoint/putEvents.d.ts +1 -1
  196. package/dist/esm/awsClients/pinpoint/putEvents.mjs +1 -1
  197. package/dist/esm/awsClients/pinpoint/putEvents.mjs.map +1 -1
  198. package/dist/esm/awsClients/pinpoint/types.d.ts +3 -6
  199. package/dist/esm/awsClients/pinpoint/updateEndpoint.d.ts +1 -1
  200. package/dist/esm/awsClients/pinpoint/updateEndpoint.mjs +1 -1
  201. package/dist/esm/awsClients/pinpoint/updateEndpoint.mjs.map +1 -1
  202. package/dist/esm/clients/handlers/authenticated.mjs +6 -6
  203. package/dist/esm/clients/handlers/authenticated.mjs.map +1 -1
  204. package/dist/esm/clients/handlers/unauthenticated.mjs +3 -3
  205. package/dist/esm/clients/handlers/unauthenticated.mjs.map +1 -1
  206. package/dist/esm/clients/index.d.ts +3 -3
  207. package/dist/esm/clients/index.mjs +3 -3
  208. package/dist/esm/clients/internal/composeServiceApi.d.ts +2 -2
  209. package/dist/esm/clients/internal/composeServiceApi.mjs +1 -1
  210. package/dist/esm/clients/internal/composeServiceApi.mjs.map +1 -1
  211. package/dist/esm/clients/internal/composeTransferHandler.d.ts +2 -2
  212. package/dist/esm/clients/internal/composeTransferHandler.mjs +1 -1
  213. package/dist/esm/clients/internal/composeTransferHandler.mjs.map +1 -1
  214. package/dist/esm/clients/middleware/retry/defaultRetryDecider.d.ts +1 -1
  215. package/dist/esm/clients/middleware/retry/defaultRetryDecider.mjs +2 -2
  216. package/dist/esm/clients/middleware/retry/defaultRetryDecider.mjs.map +1 -1
  217. package/dist/esm/clients/middleware/retry/index.d.ts +1 -1
  218. package/dist/esm/clients/middleware/retry/index.mjs +1 -1
  219. package/dist/esm/clients/middleware/retry/jitteredBackoff.mjs.map +1 -1
  220. package/dist/esm/clients/middleware/retry/middleware.d.ts +3 -3
  221. package/dist/esm/clients/middleware/retry/middleware.mjs +5 -5
  222. package/dist/esm/clients/middleware/retry/middleware.mjs.map +1 -1
  223. package/dist/esm/clients/middleware/signing/index.d.ts +1 -1
  224. package/dist/esm/clients/middleware/signing/index.mjs +1 -1
  225. package/dist/esm/clients/middleware/signing/middleware.d.ts +1 -1
  226. package/dist/esm/clients/middleware/signing/middleware.mjs +2 -2
  227. package/dist/esm/clients/middleware/signing/middleware.mjs.map +1 -1
  228. package/dist/esm/clients/middleware/signing/signer/signatureV4/presignUrl.d.ts +1 -1
  229. package/dist/esm/clients/middleware/signing/signer/signatureV4/presignUrl.mjs +1 -2
  230. package/dist/esm/clients/middleware/signing/signer/signatureV4/presignUrl.mjs.map +1 -1
  231. package/dist/esm/clients/middleware/signing/signer/signatureV4/utils/getFormattedDates.mjs +1 -1
  232. package/dist/esm/clients/middleware/signing/signer/signatureV4/utils/getFormattedDates.mjs.map +1 -1
  233. package/dist/esm/clients/middleware/userAgent/index.d.ts +1 -1
  234. package/dist/esm/clients/middleware/userAgent/index.mjs +1 -1
  235. package/dist/esm/clients/middleware/userAgent/middleware.d.ts +1 -1
  236. package/dist/esm/clients/middleware/userAgent/middleware.mjs +2 -2
  237. package/dist/esm/clients/middleware/userAgent/middleware.mjs.map +1 -1
  238. package/dist/esm/clients/serde/json.mjs +1 -1
  239. package/dist/esm/clients/serde/json.mjs.map +1 -1
  240. package/dist/esm/clients/types/aws.d.ts +3 -3
  241. package/dist/esm/clients/types/core.d.ts +3 -5
  242. package/dist/esm/errors/APIError.d.ts +1 -1
  243. package/dist/esm/errors/errorHelpers.mjs +1 -1
  244. package/dist/esm/errors/errorHelpers.mjs.map +1 -1
  245. package/dist/esm/parseAWSExports.mjs +1 -1
  246. package/dist/esm/parseAWSExports.mjs.map +1 -1
  247. package/dist/esm/providers/kinesis/types/kinesis.d.ts +2 -2
  248. package/dist/esm/providers/kinesis-firehose/types/kinesis-firehose.d.ts +2 -2
  249. package/dist/esm/providers/personalize/types/personalize.d.ts +2 -2
  250. package/dist/esm/providers/pinpoint/apis/updateEndpoint.mjs +1 -1
  251. package/dist/esm/providers/pinpoint/apis/updateEndpoint.mjs.map +1 -1
  252. package/dist/esm/providers/pinpoint/types/buffer.d.ts +6 -8
  253. package/dist/esm/providers/pinpoint/types/pinpoint.d.ts +10 -10
  254. package/dist/esm/providers/pinpoint/utils/PinpointEventBuffer.d.ts +1 -1
  255. package/dist/esm/providers/pinpoint/utils/PinpointEventBuffer.mjs +2 -3
  256. package/dist/esm/providers/pinpoint/utils/PinpointEventBuffer.mjs.map +1 -1
  257. package/dist/esm/providers/pinpoint/utils/getEventBuffer.d.ts +1 -1
  258. package/dist/esm/providers/pinpoint/utils/isAppInForeground.native.mjs +0 -1
  259. package/dist/esm/providers/pinpoint/utils/isAppInForeground.native.mjs.map +1 -1
  260. package/dist/esm/singleton/API/types.d.ts +35 -37
  261. package/dist/esm/singleton/Amplify.d.ts +1 -1
  262. package/dist/esm/singleton/Amplify.mjs +1 -1
  263. package/dist/esm/singleton/Amplify.mjs.map +1 -1
  264. package/dist/esm/singleton/Auth/index.d.ts +0 -1
  265. package/dist/esm/singleton/Auth/index.mjs +2 -6
  266. package/dist/esm/singleton/Auth/index.mjs.map +1 -1
  267. package/dist/esm/singleton/Auth/types.d.ts +53 -52
  268. package/dist/esm/singleton/Auth/utils/index.d.ts +1 -1
  269. package/dist/esm/singleton/Auth/utils/index.mjs +4 -4
  270. package/dist/esm/singleton/Auth/utils/index.mjs.map +1 -1
  271. package/dist/esm/singleton/Geo/types.d.ts +3 -3
  272. package/dist/esm/singleton/Interactions/types.d.ts +4 -4
  273. package/dist/esm/singleton/Notifications/types.d.ts +5 -5
  274. package/dist/esm/singleton/Predictions/types.d.ts +28 -28
  275. package/dist/esm/singleton/Storage/types.d.ts +2 -2
  276. package/dist/esm/singleton/apis/fetchAuthSession.mjs +1 -1
  277. package/dist/esm/singleton/apis/fetchAuthSession.mjs.map +1 -1
  278. package/dist/esm/singleton/types.d.ts +8 -8
  279. package/dist/esm/storage/CookieStorage.mjs +8 -4
  280. package/dist/esm/storage/CookieStorage.mjs.map +1 -1
  281. package/dist/esm/storage/CookieStorage.native.d.ts +0 -1
  282. package/dist/esm/storage/CookieStorage.native.mjs +0 -3
  283. package/dist/esm/storage/CookieStorage.native.mjs.map +1 -1
  284. package/dist/esm/types/core.d.ts +2 -2
  285. package/dist/esm/types/errors.d.ts +4 -4
  286. package/dist/esm/types/storage.d.ts +2 -2
  287. package/dist/esm/utils/WordArray.mjs +2 -2
  288. package/dist/esm/utils/WordArray.mjs.map +1 -1
  289. package/dist/esm/utils/deDupeAsyncFunction.d.ts +1 -5
  290. package/dist/esm/utils/deDupeAsyncFunction.mjs +8 -8
  291. package/dist/esm/utils/deDupeAsyncFunction.mjs.map +1 -1
  292. package/dist/esm/utils/getClientInfo/getClientInfo.android.mjs +0 -1
  293. package/dist/esm/utils/getClientInfo/getClientInfo.android.mjs.map +1 -1
  294. package/dist/esm/utils/getClientInfo/getClientInfo.ios.mjs +0 -1
  295. package/dist/esm/utils/getClientInfo/getClientInfo.ios.mjs.map +1 -1
  296. package/dist/esm/utils/globalHelpers/index.native.mjs.map +1 -1
  297. package/dist/esm/utils/queuedStorage/createQueuedStorage.native.mjs +2 -2
  298. package/dist/esm/utils/queuedStorage/createQueuedStorage.native.mjs.map +1 -1
  299. package/dist/esm/utils/retry/NonRetryableError.d.ts +0 -1
  300. package/dist/esm/utils/retry/NonRetryableError.mjs +2 -2
  301. package/dist/esm/utils/retry/NonRetryableError.mjs.map +1 -1
  302. package/dist/esm/utils/retry/retry.mjs +15 -6
  303. package/dist/esm/utils/retry/retry.mjs.map +1 -1
  304. package/dist/esm/utils/sessionListener/SessionListener.d.ts +1 -1
  305. package/dist/esm/utils/sessionListener/SessionListener.native.d.ts +1 -1
  306. package/dist/esm/utils/sessionListener/types.d.ts +2 -2
  307. package/package.json +5 -4
  308. package/src/BackgroundProcessManager/BackgroundProcessManager.ts +29 -34
  309. package/src/BackgroundProcessManager/types.ts +3 -3
  310. package/src/Cache/StorageCache.native.ts +5 -0
  311. package/src/Cache/StorageCache.ts +2 -0
  312. package/src/Cache/StorageCacheCommon.ts +49 -29
  313. package/src/Cache/types/cache.ts +2 -1
  314. package/src/Cache/utils/CacheList.ts +6 -3
  315. package/src/Cache/utils/cacheHelpers.ts +2 -1
  316. package/src/Hub/index.ts +15 -15
  317. package/src/Hub/types/AuthTypes.ts +11 -11
  318. package/src/Hub/types/HubTypes.ts +11 -8
  319. package/src/I18n/I18n.ts +10 -16
  320. package/src/I18n/index.ts +7 -7
  321. package/src/Logger/ConsoleLogger.ts +11 -9
  322. package/src/Logger/types.ts +1 -1
  323. package/src/Mutex/Mutex.ts +8 -4
  324. package/src/Mutex/types.ts +3 -7
  325. package/src/Platform/customUserAgent.ts +3 -3
  326. package/src/Platform/detectFramework.ts +4 -1
  327. package/src/Platform/detection/Angular.ts +4 -4
  328. package/src/Platform/detection/Expo.ts +1 -2
  329. package/src/Platform/detection/Next.ts +5 -2
  330. package/src/Platform/detection/Nuxt.ts +5 -4
  331. package/src/Platform/detection/index.ts +9 -9
  332. package/src/Platform/index.ts +4 -4
  333. package/src/Platform/types.ts +12 -12
  334. package/src/Platform/version.ts +1 -1
  335. package/src/Reachability/Reachability.native.ts +6 -3
  336. package/src/Reachability/Reachability.ts +12 -6
  337. package/src/Reachability/types.ts +2 -2
  338. package/src/ServiceWorker/ServiceWorker.ts +28 -23
  339. package/src/Signer/DateUtils.ts +16 -16
  340. package/src/Signer/Signer.ts +19 -13
  341. package/src/adapterCore/serverContext/serverContext.ts +6 -5
  342. package/src/adapterCore/serverContext/serverContextRegistry.ts +2 -1
  343. package/src/adapterCore/serverContext/types/amplifyServer.ts +15 -17
  344. package/src/adapterCore/serverContext/types/cookieStorage.ts +1 -1
  345. package/src/awsClients/cognitoIdentity/base.ts +16 -12
  346. package/src/awsClients/cognitoIdentity/getCredentialsForIdentity.ts +13 -10
  347. package/src/awsClients/cognitoIdentity/getId.ts +12 -9
  348. package/src/awsClients/cognitoIdentity/types.ts +3 -3
  349. package/src/awsClients/pinpoint/base.ts +1 -1
  350. package/src/awsClients/pinpoint/getInAppMessages.ts +8 -5
  351. package/src/awsClients/pinpoint/putEvents.ts +8 -5
  352. package/src/awsClients/pinpoint/types.ts +3 -4
  353. package/src/awsClients/pinpoint/updateEndpoint.ts +8 -5
  354. package/src/clients/endpoints/getDnsSuffix.ts +1 -0
  355. package/src/clients/handlers/authenticated.ts +14 -7
  356. package/src/clients/handlers/fetch.ts +1 -1
  357. package/src/clients/handlers/unauthenticated.ts +8 -4
  358. package/src/clients/index.ts +6 -3
  359. package/src/clients/internal/composeServiceApi.ts +8 -7
  360. package/src/clients/internal/composeTransferHandler.ts +16 -15
  361. package/src/clients/middleware/retry/defaultRetryDecider.ts +5 -3
  362. package/src/clients/middleware/retry/index.ts +1 -1
  363. package/src/clients/middleware/retry/jitteredBackoff.ts +3 -1
  364. package/src/clients/middleware/retry/middleware.ts +12 -9
  365. package/src/clients/middleware/signing/index.ts +1 -1
  366. package/src/clients/middleware/signing/middleware.ts +5 -2
  367. package/src/clients/middleware/signing/signer/signatureV4/presignUrl.ts +4 -4
  368. package/src/clients/middleware/signing/signer/signatureV4/signRequest.ts +2 -1
  369. package/src/clients/middleware/signing/signer/signatureV4/utils/dataHashHelpers.ts +4 -2
  370. package/src/clients/middleware/signing/signer/signatureV4/utils/getCanonicalQueryString.ts +2 -1
  371. package/src/clients/middleware/signing/signer/signatureV4/utils/getCanonicalRequest.ts +2 -1
  372. package/src/clients/middleware/signing/signer/signatureV4/utils/getCanonicalUri.ts +1 -1
  373. package/src/clients/middleware/signing/signer/signatureV4/utils/getCredentialScope.ts +1 -1
  374. package/src/clients/middleware/signing/signer/signatureV4/utils/getFormattedDates.ts +2 -1
  375. package/src/clients/middleware/signing/signer/signatureV4/utils/getHashedPayload.ts +3 -0
  376. package/src/clients/middleware/signing/signer/signatureV4/utils/getSignature.ts +4 -3
  377. package/src/clients/middleware/signing/signer/signatureV4/utils/getSigningKey.ts +3 -1
  378. package/src/clients/middleware/signing/signer/signatureV4/utils/getSigningValues.ts +3 -1
  379. package/src/clients/middleware/signing/signer/signatureV4/utils/getStringToSign.ts +2 -2
  380. package/src/clients/middleware/signing/utils/getUpdatedSystemClockOffset.ts +2 -1
  381. package/src/clients/middleware/signing/utils/isClockSkewed.ts +2 -2
  382. package/src/clients/middleware/userAgent/index.ts +1 -1
  383. package/src/clients/middleware/userAgent/middleware.ts +3 -1
  384. package/src/clients/serde/json.ts +6 -2
  385. package/src/clients/serde/responseInfo.ts +6 -2
  386. package/src/clients/types/aws.ts +6 -3
  387. package/src/clients/types/core.ts +6 -8
  388. package/src/clients/types/http.ts +2 -1
  389. package/src/clients/utils/memoization.ts +2 -0
  390. package/src/errors/APIError.ts +3 -2
  391. package/src/errors/PlatformNotSupportedError.ts +1 -0
  392. package/src/errors/createAssertionFunction.ts +2 -1
  393. package/src/errors/errorHelpers.ts +2 -1
  394. package/src/parseAWSExports.ts +16 -15
  395. package/src/providers/kinesis/types/kinesis.ts +2 -2
  396. package/src/providers/kinesis-firehose/types/kinesis-firehose.ts +2 -2
  397. package/src/providers/personalize/types/personalize.ts +2 -2
  398. package/src/providers/pinpoint/apis/updateEndpoint.ts +2 -2
  399. package/src/providers/pinpoint/types/buffer.ts +7 -8
  400. package/src/providers/pinpoint/types/pinpoint.ts +11 -10
  401. package/src/providers/pinpoint/utils/PinpointEventBuffer.ts +11 -21
  402. package/src/providers/pinpoint/utils/cacheEndpointId.ts +3 -1
  403. package/src/providers/pinpoint/utils/getCacheKey.ts +1 -1
  404. package/src/providers/pinpoint/utils/getEndpointId.ts +3 -1
  405. package/src/providers/pinpoint/utils/getEventBuffer.ts +2 -1
  406. package/src/providers/pinpoint/utils/isAppInForeground.native.ts +0 -1
  407. package/src/providers/pinpoint/utils/resolveEndpointId.ts +1 -0
  408. package/src/singleton/API/types.ts +35 -33
  409. package/src/singleton/Amplify.ts +8 -6
  410. package/src/singleton/Auth/index.ts +9 -13
  411. package/src/singleton/Auth/types.ts +59 -51
  412. package/src/singleton/Auth/utils/index.ts +16 -28
  413. package/src/singleton/Geo/types.ts +3 -3
  414. package/src/singleton/Interactions/types.ts +4 -4
  415. package/src/singleton/Notifications/types.ts +6 -5
  416. package/src/singleton/Predictions/types.ts +28 -28
  417. package/src/singleton/Storage/types.ts +2 -2
  418. package/src/singleton/apis/fetchAuthSession.ts +2 -1
  419. package/src/singleton/apis/internal/fetchAuthSession.ts +1 -1
  420. package/src/singleton/apis/server/fetchAuthSession.ts +2 -2
  421. package/src/singleton/types.ts +10 -10
  422. package/src/storage/CookieStorage.native.ts +1 -5
  423. package/src/storage/CookieStorage.ts +12 -6
  424. package/src/storage/DefaultStorage.native.ts +3 -1
  425. package/src/storage/InMemoryStorage.ts +1 -0
  426. package/src/storage/KeyValueStorage.ts +1 -0
  427. package/src/types/core.ts +3 -3
  428. package/src/types/errors.ts +5 -5
  429. package/src/types/storage.ts +2 -2
  430. package/src/utils/WordArray.ts +2 -2
  431. package/src/utils/convert/base64/base64Encoder.ts +1 -0
  432. package/src/utils/convert/types.ts +1 -1
  433. package/src/utils/cryptoSecureRandomInt.ts +1 -0
  434. package/src/utils/deDupeAsyncFunction.ts +15 -20
  435. package/src/utils/generateRandomString.ts +1 -1
  436. package/src/utils/getClientInfo/getClientInfo.android.ts +3 -2
  437. package/src/utils/getClientInfo/getClientInfo.ios.ts +4 -2
  438. package/src/utils/getClientInfo/getClientInfo.ts +3 -3
  439. package/src/utils/globalHelpers/index.native.ts +2 -1
  440. package/src/utils/haveCredentialsChanged.ts +5 -2
  441. package/src/utils/isWebWorker.ts +1 -0
  442. package/src/utils/queuedStorage/createQueuedStorage.native.ts +9 -6
  443. package/src/utils/queuedStorage/createQueuedStorage.ts +7 -3
  444. package/src/utils/queuedStorage/types.ts +1 -1
  445. package/src/utils/retry/NonRetryableError.ts +0 -3
  446. package/src/utils/retry/isNonRetryableError.ts +1 -0
  447. package/src/utils/retry/jitteredBackoff.ts +3 -1
  448. package/src/utils/retry/jitteredExponentialRetry.ts +1 -1
  449. package/src/utils/retry/retry.ts +22 -8
  450. package/src/utils/sessionListener/SessionListener.native.ts +4 -3
  451. package/src/utils/sessionListener/SessionListener.ts +4 -3
  452. package/src/utils/sessionListener/index.ts +1 -0
  453. package/src/utils/sessionListener/types.ts +2 -2
  454. package/src/utils/urlSafeDecode.ts +1 -0
package/src/types/core.ts CHANGED
@@ -15,7 +15,7 @@ export interface AmplifyConfig {
15
15
  ssr?: boolean;
16
16
  }
17
17
 
18
- export type UserProfile = {
18
+ export interface UserProfile {
19
19
  customProperties?: Record<string, string[]>;
20
20
  demographic?: {
21
21
  appVersion?: string;
@@ -39,7 +39,7 @@ export type UserProfile = {
39
39
  metrics?: Record<string, number>;
40
40
  name?: string;
41
41
  plan?: string;
42
- };
42
+ }
43
43
 
44
44
  /**
45
45
  * @internal
@@ -47,5 +47,5 @@ export type UserProfile = {
47
47
  export type DelayFunction = (
48
48
  attempt: number,
49
49
  args?: any[],
50
- error?: unknown
50
+ error?: unknown,
51
51
  ) => number | false;
@@ -7,12 +7,12 @@ export enum AmplifyErrorCode {
7
7
  Unknown = 'Unknown',
8
8
  }
9
9
 
10
- export type AmplifyErrorParams<ErrorCode extends string = string> = {
10
+ export interface AmplifyErrorParams<ErrorCode extends string = string> {
11
11
  message: string;
12
12
  name: ErrorCode;
13
13
  recoverySuggestion?: string;
14
14
  underlyingError?: Error | unknown;
15
- };
15
+ }
16
16
 
17
17
  export type AmplifyErrorMap<ErrorCode extends string = string> = {
18
18
  [name in ErrorCode]: {
@@ -21,13 +21,13 @@ export type AmplifyErrorMap<ErrorCode extends string = string> = {
21
21
  };
22
22
  };
23
23
 
24
- export type ServiceError = {
24
+ export interface ServiceError {
25
25
  name: string;
26
26
  message: string;
27
- };
27
+ }
28
28
 
29
29
  export type AssertionFunction<ErrorCode extends string = string> = (
30
30
  assertion: boolean,
31
31
  name: ErrorCode,
32
- additionalContext?: string
32
+ additionalContext?: string,
33
33
  ) => asserts assertion;
@@ -10,7 +10,7 @@ export interface KeyValueStorageInterface {
10
10
 
11
11
  export type SameSite = 'strict' | 'lax' | 'none';
12
12
 
13
- export type CookieStorageData = {
13
+ export interface CookieStorageData {
14
14
  domain?: string;
15
15
  path?: string;
16
16
 
@@ -20,4 +20,4 @@ export type CookieStorageData = {
20
20
  expires?: number;
21
21
  secure?: boolean;
22
22
  sameSite?: SameSite;
23
- };
23
+ }
@@ -12,8 +12,8 @@ import { cryptoSecureRandomInt } from './cryptoSecureRandomInt';
12
12
  */
13
13
  function hexStringify(wordArray: WordArray): string {
14
14
  // Shortcuts
15
- const words = wordArray.words;
16
- const sigBytes = wordArray.sigBytes;
15
+ const { words } = wordArray;
16
+ const { sigBytes } = wordArray;
17
17
 
18
18
  // Convert
19
19
  const hexChars: string[] = [];
@@ -3,6 +3,7 @@
3
3
 
4
4
  import { getBtoa } from '../../globalHelpers';
5
5
  import { Base64Encoder } from '../types';
6
+
6
7
  import { bytesToString } from './bytesToString';
7
8
 
8
9
  export const base64Encoder: Base64Encoder = {
@@ -8,7 +8,7 @@ export interface Base64EncoderConvertOptions {
8
8
  export interface Base64Encoder {
9
9
  convert(
10
10
  input: Uint8Array | string,
11
- options?: Base64EncoderConvertOptions
11
+ options?: Base64EncoderConvertOptions,
12
12
  ): string;
13
13
  }
14
14
 
@@ -10,5 +10,6 @@ import { getCrypto } from './globalHelpers';
10
10
  export function cryptoSecureRandomInt() {
11
11
  const crypto = getCrypto();
12
12
  const randomResult = crypto.getRandomValues(new Uint32Array(1))[0];
13
+
13
14
  return randomResult;
14
15
  }
@@ -1,14 +1,6 @@
1
1
  // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
2
  // SPDX-License-Identifier: Apache-2.0
3
3
 
4
- // this will make the tsc-compliance-test to pass
5
- type Awaited<T> = T extends null | undefined
6
- ? T // special case for `null | undefined` when not in `--strictNullChecks` mode
7
- : T extends object & { then(onfulfilled: infer F, ...args: infer _): any } // `await` only unwraps object types with a callable `then`. Non-object types are not unwrapped
8
- ? F extends (value: infer V, ...args: infer _) => any // if the argument to `then` is callable, extracts the first argument
9
- ? Awaited<V> // recursively unwrap the value
10
- : never // the argument to `then` was not callable
11
- : T; //
12
4
  /**
13
5
  * returns in-flight promise if there is one
14
6
  *
@@ -16,21 +8,24 @@ type Awaited<T> = T extends null | undefined
16
8
  * @returns - the return type of the callback
17
9
  */
18
10
  export const deDupeAsyncFunction = <A extends any[], R>(
19
- asyncFunction: (...args: A) => Promise<R>
11
+ asyncFunction: (...args: A) => Promise<R>,
20
12
  ) => {
21
- let inflightPromise: Promise<Awaited<R>> | undefined;
22
- return async (...args: A): Promise<Awaited<R>> => {
13
+ let inflightPromise: Promise<R> | undefined;
14
+
15
+ return async (...args: A): Promise<R> => {
23
16
  if (inflightPromise) return inflightPromise;
24
17
 
25
- inflightPromise = new Promise(async (resolve, reject) => {
26
- try {
27
- const result = await asyncFunction(...args);
28
- resolve(result);
29
- } catch (error) {
30
- reject(error);
31
- } finally {
32
- inflightPromise = undefined;
33
- }
18
+ inflightPromise = new Promise<R>((resolve, reject) => {
19
+ asyncFunction(...args)
20
+ .then(result => {
21
+ resolve(result);
22
+ })
23
+ .catch(error => {
24
+ reject(error);
25
+ })
26
+ .finally(() => {
27
+ inflightPromise = undefined;
28
+ });
34
29
  });
35
30
 
36
31
  return inflightPromise;
@@ -8,7 +8,7 @@ export const generateRandomString = (length: number) => {
8
8
 
9
9
  for (let i = 0; i < length; i++) {
10
10
  result += STATE_CHARSET.charAt(
11
- Math.floor(Math.random() * STATE_CHARSET.length)
11
+ Math.floor(Math.random() * STATE_CHARSET.length),
12
12
  );
13
13
  }
14
14
 
@@ -1,7 +1,8 @@
1
1
  // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
2
  // SPDX-License-Identifier: Apache-2.0
3
- // @ts-ignore: missing type definition
4
- import { Platform, Dimensions } from 'react-native';
3
+
4
+ import { Dimensions, Platform } from 'react-native';
5
+
5
6
  import { ConsoleLogger } from '../../Logger';
6
7
 
7
8
  const logger = new ConsoleLogger('getClientInfo');
@@ -1,7 +1,8 @@
1
1
  // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
2
  // SPDX-License-Identifier: Apache-2.0
3
- // @ts-ignore: missing type definition
4
- import { Platform, Dimensions } from 'react-native';
3
+
4
+ import { Dimensions, Platform } from 'react-native';
5
+
5
6
  import { ConsoleLogger } from '../../Logger';
6
7
 
7
8
  const logger = new ConsoleLogger('getClientInfo');
@@ -12,6 +13,7 @@ export const getClientInfo = () => {
12
13
  const OS = 'ios';
13
14
  const { Version } = Platform;
14
15
  const { make, model } = dimToMake(dim);
16
+
15
17
  return {
16
18
  platform: OS,
17
19
  version: String(Version),
@@ -50,7 +50,7 @@ function browserTimezone() {
50
50
  function getBrowserType(userAgent: string) {
51
51
  // The latest user agents for Opera: https://www.whatismybrowser.com/guides/the-latest-user-agent/opera
52
52
  const operaMatch = /.+(Opera[\s[A-Z]*|OPR[\sA-Z]*)\/([0-9.]+).*/i.exec(
53
- userAgent
53
+ userAgent,
54
54
  );
55
55
  if (operaMatch) {
56
56
  return { type: operaMatch[1], version: operaMatch[2] };
@@ -58,7 +58,7 @@ function getBrowserType(userAgent: string) {
58
58
 
59
59
  // The latest user agents for Edge: https://www.whatismybrowser.com/guides/the-latest-user-agent/edge
60
60
  const ieMatch = /.+(Trident|Edge|Edg|EdgA|EdgiOS)\/([0-9.]+).*/i.exec(
61
- userAgent
61
+ userAgent,
62
62
  );
63
63
  if (ieMatch) {
64
64
  return { type: ieMatch[1], version: ieMatch[2] };
@@ -68,7 +68,7 @@ function getBrowserType(userAgent: string) {
68
68
  // https://www.whatismybrowser.com/guides/the-latest-user-agent/firefox
69
69
  // https://www.whatismybrowser.com/guides/the-latest-user-agent/chrome
70
70
  const cfMatch = /.+(Chrome|CriOS|Firefox|FxiOS)\/([0-9.]+).*/i.exec(
71
- userAgent
71
+ userAgent,
72
72
  );
73
73
  if (cfMatch) {
74
74
  return { type: cfMatch[1], version: cfMatch[2] };
@@ -1,7 +1,8 @@
1
1
  // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
2
  // SPDX-License-Identifier: Apache-2.0
3
3
 
4
- import { loadGetRandomValues, loadBase64 } from '@aws-amplify/react-native';
4
+ import { loadBase64, loadGetRandomValues } from '@aws-amplify/react-native';
5
+
5
6
  import { AmplifyError } from '../../errors';
6
7
 
7
8
  loadGetRandomValues();
@@ -5,10 +5,13 @@ import { AWSCredentials } from '../libraryUtils';
5
5
 
6
6
  /**
7
7
  * Utility for determining if credentials have changed.
8
- *
8
+ *
9
9
  * @internal
10
10
  */
11
- export const haveCredentialsChanged = (cachedCredentials: AWSCredentials, credentials: AWSCredentials) => {
11
+ export const haveCredentialsChanged = (
12
+ cachedCredentials: AWSCredentials,
13
+ credentials: AWSCredentials,
14
+ ) => {
12
15
  return (
13
16
  cachedCredentials.accessKeyId !== credentials.accessKeyId ||
14
17
  cachedCredentials.sessionToken !== credentials.sessionToken ||
@@ -6,6 +6,7 @@ export const isWebWorker = () => {
6
6
  return false;
7
7
  }
8
8
  const selfContext = self as { WorkerGlobalScope?: any };
9
+
9
10
  return (
10
11
  typeof selfContext.WorkerGlobalScope !== 'undefined' &&
11
12
  self instanceof selfContext.WorkerGlobalScope
@@ -2,6 +2,7 @@
2
2
  // SPDX-License-Identifier: Apache-2.0
3
3
 
4
4
  import { loadAsyncStorage } from '@aws-amplify/react-native';
5
+
5
6
  import {
6
7
  AddItemWithAuthPropertiesNative,
7
8
  QueuedItem,
@@ -18,7 +19,7 @@ export const createQueuedStorage = (): QueuedStorage => {
18
19
 
19
20
  const openDBPromise = new Promise<
20
21
  ReturnType<typeof loadAsyncStorage> | undefined
21
- >((resolve, _) => {
22
+ >((resolve, _reject) => {
22
23
  try {
23
24
  const asyncStorage = loadAsyncStorage();
24
25
 
@@ -28,9 +29,10 @@ export const createQueuedStorage = (): QueuedStorage => {
28
29
  for (const item of items) {
29
30
  currentBytesSize += item.bytesSize;
30
31
  }
32
+
31
33
  return undefined;
32
34
  })
33
- .then(_ => {
35
+ .then(__ => {
34
36
  resolve(asyncStorage);
35
37
  });
36
38
  } catch (err) {
@@ -60,7 +62,7 @@ export const createQueuedStorage = (): QueuedStorage => {
60
62
  return {
61
63
  async add(
62
64
  item,
63
- { dequeueBeforeEnqueue } = { dequeueBeforeEnqueue: false }
65
+ { dequeueBeforeEnqueue } = { dequeueBeforeEnqueue: false },
64
66
  ) {
65
67
  if (dequeueBeforeEnqueue) {
66
68
  const itemsToDelete = await this.peek(1);
@@ -112,7 +114,7 @@ export const createQueuedStorage = (): QueuedStorage => {
112
114
 
113
115
  const getQueuedItemKeys = async (
114
116
  as: ReturnType<typeof loadAsyncStorage>,
115
- sortKeys: boolean = false
117
+ sortKeys = false,
116
118
  ): Promise<string[]> => {
117
119
  const keys = (await as.getAllKeys()).filter(key => key.startsWith(keyPrefix));
118
120
 
@@ -120,14 +122,15 @@ const getQueuedItemKeys = async (
120
122
  ? keys.sort((a, b) => {
121
123
  const timestampA = a.split('_').pop() as string;
122
124
  const timestampB = b.split('_').pop() as string;
125
+
123
126
  return parseInt(timestampA) - parseInt(timestampB);
124
- })
127
+ })
125
128
  : keys;
126
129
  };
127
130
 
128
131
  const getQueuedItems = async (
129
132
  as: ReturnType<typeof loadAsyncStorage>,
130
- keys: string[]
133
+ keys: string[],
131
134
  ): Promise<QueuedItem[]> =>
132
135
  (await as.multiGet(keys))
133
136
  .filter((item): item is [string, string] => item[1] !== null)
@@ -46,6 +46,7 @@ export const createQueuedStorage = (): QueuedStorage => {
46
46
  };
47
47
  }).catch(err => {
48
48
  error = err;
49
+
49
50
  return undefined;
50
51
  });
51
52
 
@@ -62,6 +63,7 @@ export const createQueuedStorage = (): QueuedStorage => {
62
63
  const getStore = async (): Promise<IDBObjectStore> => {
63
64
  const db = await getDB();
64
65
  const transaction = db.transaction(STORE_NAME, 'readwrite');
66
+
65
67
  return transaction.objectStore(STORE_NAME);
66
68
  };
67
69
 
@@ -77,7 +79,7 @@ export const createQueuedStorage = (): QueuedStorage => {
77
79
  return {
78
80
  async add(
79
81
  item,
80
- { dequeueBeforeEnqueue } = { dequeueBeforeEnqueue: false }
82
+ { dequeueBeforeEnqueue } = { dequeueBeforeEnqueue: false },
81
83
  ) {
82
84
  if (dequeueBeforeEnqueue) {
83
85
  const itemsToDelete = await this.peek(1);
@@ -115,11 +117,13 @@ export const createQueuedStorage = (): QueuedStorage => {
115
117
  const keyRangesToDelete = findRanges(
116
118
  items
117
119
  .map(item => item.id)
118
- .filter((id): id is number => id !== undefined)
120
+ .filter((id): id is number => id !== undefined),
119
121
  ).map(([lower, upper]) => IDBKeyRange.bound(lower, upper));
120
122
 
121
123
  await Promise.all(
122
- keyRangesToDelete.map(range => promisifyIDBRequest(store.delete(range)))
124
+ keyRangesToDelete.map(range =>
125
+ promisifyIDBRequest(store.delete(range)),
126
+ ),
123
127
  );
124
128
 
125
129
  for (const item of items) {
@@ -35,7 +35,7 @@ export interface AddItemWithAuthPropertiesNative
35
35
  export interface QueuedStorage {
36
36
  add(
37
37
  item: ItemToAdd,
38
- options?: { dequeueBeforeEnqueue: boolean }
38
+ options?: { dequeueBeforeEnqueue: boolean },
39
39
  ): Promise<void>;
40
40
  peek(n?: number): Promise<QueuedItem[]>;
41
41
  peekAll(): Promise<QueuedItem[]>;
@@ -3,7 +3,4 @@
3
3
 
4
4
  export class NonRetryableError extends Error {
5
5
  public readonly nonRetryable = true;
6
- constructor(message: string) {
7
- super(message);
8
- }
9
6
  }
@@ -5,5 +5,6 @@ import { NonRetryableError } from './NonRetryableError';
5
5
 
6
6
  export const isNonRetryableError = (obj: any): obj is NonRetryableError => {
7
7
  const key: keyof NonRetryableError = 'nonRetryable';
8
+
8
9
  return obj && obj[key];
9
10
  };
@@ -2,6 +2,7 @@
2
2
  // SPDX-License-Identifier: Apache-2.0
3
3
 
4
4
  import { DelayFunction } from '../../types';
5
+
5
6
  import { MAX_DELAY_MS } from './constants';
6
7
 
7
8
  /**
@@ -9,13 +10,14 @@ import { MAX_DELAY_MS } from './constants';
9
10
  * Internal use of Amplify only
10
11
  */
11
12
  export function jitteredBackoff(
12
- maxDelayMs: number = MAX_DELAY_MS
13
+ maxDelayMs: number = MAX_DELAY_MS,
13
14
  ): DelayFunction {
14
15
  const BASE_TIME_MS = 100;
15
16
  const JITTER_FACTOR = 100;
16
17
 
17
18
  return attempt => {
18
19
  const delay = 2 ** attempt * BASE_TIME_MS + JITTER_FACTOR * Math.random();
20
+
19
21
  return delay > maxDelayMs ? false : delay;
20
22
  };
21
23
  }
@@ -13,6 +13,6 @@ export const jitteredExponentialRetry = <T>(
13
13
  functionToRetry: (...args: any[]) => T,
14
14
  args: any[],
15
15
  maxDelayMs: number = MAX_DELAY_MS,
16
- onTerminate?: Promise<void>
16
+ onTerminate?: Promise<void>,
17
17
  ): Promise<T> =>
18
18
  retry(functionToRetry, args, jitteredBackoff(maxDelayMs), onTerminate);
@@ -3,6 +3,7 @@
3
3
 
4
4
  import { DelayFunction } from '../../types';
5
5
  import { ConsoleLogger } from '../../Logger/ConsoleLogger';
6
+
6
7
  import { isNonRetryableError } from './isNonRetryableError';
7
8
 
8
9
  const logger = new ConsoleLogger('retryUtil');
@@ -15,17 +16,21 @@ export async function retry<T>(
15
16
  functionToRetry: (...args: any[]) => T,
16
17
  args: any[],
17
18
  delayFn: DelayFunction,
18
- onTerminate?: Promise<void>
19
+ onTerminate?: Promise<void>,
19
20
  ): Promise<T> {
20
21
  if (typeof functionToRetry !== 'function') {
21
22
  throw Error('functionToRetry must be a function');
22
23
  }
23
24
 
25
+ // TODO(eslint): remove this linter suppression with refactoring.
26
+ // eslint-disable-next-line no-async-promise-executor
24
27
  return new Promise(async (resolve, reject) => {
25
28
  let attempt = 0;
26
29
  let terminated = false;
27
30
  let timeout: any;
28
- let wakeUp: any = () => {}; // will be replaced with a resolver()
31
+ let wakeUp: any = () => {
32
+ // no-op
33
+ }; // will be replaced with a resolver()
29
34
 
30
35
  // used after the loop if terminated while waiting for a timer.
31
36
  let lastError: unknown;
@@ -40,24 +45,31 @@ export async function retry<T>(
40
45
  wakeUp();
41
46
  });
42
47
 
48
+ // TODO(eslint): remove this linter suppression with refactoring.
49
+ // eslint-disable-next-line no-unmodified-loop-condition
43
50
  while (!terminated) {
44
51
  attempt++;
45
52
 
46
53
  logger.debug(
47
54
  `${
48
55
  functionToRetry.name
49
- } attempt #${attempt} with this vars: ${JSON.stringify(args)}`
56
+ } attempt #${attempt} with this vars: ${JSON.stringify(args)}`,
50
57
  );
51
58
 
52
59
  try {
53
- return resolve(await functionToRetry(...args));
60
+ resolve(await functionToRetry(...args));
61
+
62
+ return;
54
63
  } catch (err) {
55
64
  lastError = err;
56
65
  logger.debug(`error on ${functionToRetry.name}`, err);
57
66
 
58
67
  if (isNonRetryableError(err)) {
59
68
  logger.debug(`${functionToRetry.name} non retryable error`, err);
60
- return reject(err);
69
+
70
+ reject(err);
71
+
72
+ return;
61
73
  }
62
74
 
63
75
  const retryIn = delayFn(attempt, args, err);
@@ -66,10 +78,12 @@ export async function retry<T>(
66
78
  // we check `terminated` again here because it could have flipped
67
79
  // in the time it took `functionToRetry` to return.
68
80
  if (retryIn === false || terminated) {
69
- return reject(err);
81
+ reject(err);
82
+
83
+ return;
70
84
  } else {
71
- await new Promise(r => {
72
- wakeUp = r; // export wakeUp for onTerminate handling
85
+ await new Promise(_resolve => {
86
+ wakeUp = _resolve; // export wakeUp for onTerminate handling
73
87
  timeout = setTimeout(wakeUp, retryIn);
74
88
  });
75
89
  }
@@ -2,10 +2,11 @@
2
2
  // SPDX-License-Identifier: Apache-2.0
3
3
 
4
4
  import { loadAppState } from '@aws-amplify/react-native';
5
+
5
6
  import {
6
- SessionStateChangeListener,
7
- SessionState,
8
7
  SessionListenerInterface,
8
+ SessionState,
9
+ SessionStateChangeListener,
9
10
  } from './types';
10
11
 
11
12
  const stateChangeListeners = new Set<SessionStateChangeListener>();
@@ -25,7 +26,7 @@ export class SessionListener implements SessionListenerInterface {
25
26
 
26
27
  public addStateChangeListener(
27
28
  listener: SessionStateChangeListener,
28
- notifyOnAdd: boolean = false
29
+ notifyOnAdd = false,
29
30
  ) {
30
31
  stateChangeListeners.add(listener);
31
32
 
@@ -2,7 +2,8 @@
2
2
  // SPDX-License-Identifier: Apache-2.0
3
3
 
4
4
  import { isBrowser } from '../isBrowser';
5
- import { SessionStateChangeListener, SessionListenerInterface } from './types';
5
+
6
+ import { SessionListenerInterface, SessionStateChangeListener } from './types';
6
7
 
7
8
  const stateChangeListeners = new Set<SessionStateChangeListener>();
8
9
 
@@ -18,7 +19,7 @@ export class SessionListener implements SessionListenerInterface {
18
19
  document.addEventListener(
19
20
  'visibilitychange',
20
21
  this.handleVisibilityChange,
21
- false
22
+ false,
22
23
  );
23
24
 
24
25
  this.listenerActive = true;
@@ -27,7 +28,7 @@ export class SessionListener implements SessionListenerInterface {
27
28
 
28
29
  public addStateChangeListener(
29
30
  listener: SessionStateChangeListener,
30
- notifyOnAdd: boolean = false
31
+ notifyOnAdd = false,
31
32
  ) {
32
33
  // No-op if document listener is not active
33
34
  if (!this.listenerActive) {
@@ -2,6 +2,7 @@
2
2
  // SPDX-License-Identifier: Apache-2.0
3
3
 
4
4
  import { SessionListener } from './SessionListener';
5
+
5
6
  export { SESSION_START_EVENT, SESSION_STOP_EVENT } from './constants';
6
7
 
7
8
  export const sessionListener = new SessionListener();
@@ -6,6 +6,6 @@ export type SessionState = 'started' | 'ended';
6
6
  export type SessionStateChangeListener = (state: SessionState) => void;
7
7
 
8
8
  export interface SessionListenerInterface {
9
- addStateChangeListener: (listener: SessionStateChangeListener) => void;
10
- removeStateChangeListener: (listener: SessionStateChangeListener) => void;
9
+ addStateChangeListener(listener: SessionStateChangeListener): void;
10
+ removeStateChangeListener(listener: SessionStateChangeListener): void;
11
11
  }
@@ -3,5 +3,6 @@
3
3
 
4
4
  export function urlSafeDecode(hex: string) {
5
5
  const matchArr = hex.match(/.{2}/g) || [];
6
+
6
7
  return matchArr.map(char => String.fromCharCode(parseInt(char, 16))).join('');
7
8
  }