@aws-amplify/core 6.0.1-api-v6-models.8035dfc.0 → 6.0.1-api-v6-models.3eb7748.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 (341) hide show
  1. package/lib/Cache/StorageCache.d.ts +14 -31
  2. package/lib/Cache/StorageCache.js +97 -102
  3. package/lib/Cache/StorageCache.native.d.ts +19 -0
  4. package/lib/Cache/StorageCache.native.js +164 -0
  5. package/{lib-esm/Cache/AsyncStorageCache.d.ts → lib/Cache/StorageCacheCommon.d.ts} +124 -99
  6. package/lib/Cache/{AsyncStorageCache.js → StorageCacheCommon.js} +494 -432
  7. package/lib/Cache/constants.d.ts +6 -0
  8. package/lib/Cache/constants.js +17 -0
  9. package/lib/Cache/index.d.ts +2 -0
  10. package/lib/Cache/index.js +7 -0
  11. package/lib/Cache/types/cache.d.ts +38 -0
  12. package/lib/Cache/types/index.d.ts +1 -1
  13. package/lib/Cache/types/index.js +1 -1
  14. package/lib/Cache/{Utils → utils}/CacheList.d.ts +1 -1
  15. package/lib/Cache/{Utils → utils}/CacheList.js +2 -1
  16. package/lib/Cache/utils/cacheHelpers.d.ts +14 -0
  17. package/lib/Cache/utils/cacheHelpers.js +51 -0
  18. package/lib/Cache/{Utils → utils}/errorHelpers.d.ts +0 -1
  19. package/lib/Cache/{Utils → utils}/errorHelpers.js +0 -4
  20. package/lib/Cache/utils/index.d.ts +2 -0
  21. package/lib/Cache/utils/index.js +12 -0
  22. package/lib/I18n/I18n.js +1 -6
  23. package/lib/Platform/types.d.ts +18 -8
  24. package/lib/Platform/types.js +10 -2
  25. package/lib/Platform/version.d.ts +1 -1
  26. package/lib/Platform/version.js +1 -1
  27. package/lib/Reachability/Reachability.d.ts +1 -0
  28. package/lib/Reachability/Reachability.js +42 -1
  29. package/lib/ServiceWorker/ServiceWorker.js +69 -17
  30. package/lib/ServiceWorker/index.d.ts +0 -12
  31. package/lib/ServiceWorker/index.js +0 -12
  32. package/lib/Signer/Signer.js +3 -2
  33. package/lib/awsClients/cognitoIdentity/base.js +2 -1
  34. package/lib/awsClients/pinpoint/base.js +2 -1
  35. package/lib/awsClients/pinpoint/getInAppMessages.js +2 -1
  36. package/lib/awsClients/pinpoint/putEvents.js +2 -1
  37. package/lib/awsClients/pinpoint/updateEndpoint.js +2 -1
  38. package/lib/clients/middleware/signing/signer/signatureV4/index.d.ts +0 -1
  39. package/lib/clients/middleware/signing/signer/signatureV4/index.js +0 -1
  40. package/lib/clients/middleware/signing/signer/signatureV4/presignUrl.js +2 -1
  41. package/lib/errors/errorHelpers.d.ts +2 -0
  42. package/lib/errors/errorHelpers.js +20 -0
  43. package/lib/errors/index.d.ts +1 -0
  44. package/lib/errors/index.js +3 -1
  45. package/lib/index.d.ts +4 -4
  46. package/lib/index.js +9 -6
  47. package/lib/libraryUtils.d.ts +8 -7
  48. package/lib/libraryUtils.js +17 -17
  49. package/lib/parseAWSExports.js +34 -19
  50. package/lib/providers/pinpoint/apis/flushEvents.d.ts +2 -2
  51. package/lib/providers/pinpoint/apis/record.d.ts +1 -1
  52. package/lib/providers/pinpoint/apis/record.js +8 -24
  53. package/lib/providers/pinpoint/apis/updateEndpoint.js +6 -6
  54. package/lib/providers/pinpoint/index.d.ts +2 -2
  55. package/lib/providers/pinpoint/index.js +4 -2
  56. package/lib/providers/pinpoint/types/errors.d.ts +9 -0
  57. package/lib/providers/pinpoint/types/errors.js +15 -0
  58. package/lib/providers/pinpoint/types/index.d.ts +1 -0
  59. package/lib/providers/pinpoint/types/index.js +3 -0
  60. package/lib/providers/pinpoint/types/pinpoint.d.ts +3 -3
  61. package/lib/providers/pinpoint/utils/index.d.ts +1 -0
  62. package/lib/providers/pinpoint/utils/index.js +3 -1
  63. package/lib/providers/pinpoint/utils/resolveEndpointId.d.ts +8 -0
  64. package/lib/providers/pinpoint/utils/resolveEndpointId.js +85 -0
  65. package/lib/singleton/Amplify.d.ts +2 -2
  66. package/lib/singleton/Amplify.js +6 -5
  67. package/lib/singleton/Auth/types.d.ts +3 -3
  68. package/lib/singleton/Cache/types.d.ts +18 -0
  69. package/lib/singleton/Cache/types.js +4 -0
  70. package/lib/singleton/Interactions/types.d.ts +21 -0
  71. package/lib/singleton/Interactions/types.js +4 -0
  72. package/lib/singleton/Notifications/PushNotification/types.d.ts +2 -0
  73. package/lib/singleton/Notifications/PushNotification/types.js +4 -0
  74. package/lib/singleton/Notifications/types.d.ts +3 -1
  75. package/lib/singleton/types.d.ts +3 -3
  76. package/lib/storage/CookieStorage.js +8 -5
  77. package/lib/storage/DefaultStorage.js +1 -1
  78. package/lib/storage/utils.d.ts +1 -1
  79. package/lib/storage/utils.js +3 -3
  80. package/lib/tsconfig.tsbuildinfo +1 -1
  81. package/lib/types/errors.d.ts +1 -0
  82. package/lib/types/errors.js +1 -0
  83. package/lib/utils/amplifyUrl/index.d.ts +13 -0
  84. package/lib/utils/amplifyUrl/index.js +10 -0
  85. package/lib/utils/amplifyUrl/polyfill.d.ts +0 -0
  86. package/lib/utils/amplifyUrl/polyfill.js +4 -0
  87. package/lib/utils/amplifyUrl/polyfill.native.d.ts +1 -0
  88. package/lib/utils/amplifyUuid/index.d.ts +3 -0
  89. package/lib/utils/amplifyUuid/index.js +9 -0
  90. package/lib/utils/amplifyUuid/polyfill.d.ts +0 -0
  91. package/lib/utils/amplifyUuid/polyfill.js +4 -0
  92. package/lib/utils/amplifyUuid/polyfill.native.d.ts +1 -0
  93. package/lib/utils/amplifyUuid/polyfill.native.js +6 -0
  94. package/lib/utils/deepFreeze.d.ts +1 -0
  95. package/lib/utils/deepFreeze.js +38 -0
  96. package/lib/{ClientDevice/android.d.ts → utils/getClientInfo/getClientInfo.android.d.ts} +1 -1
  97. package/lib/{ClientDevice/android.js → utils/getClientInfo/getClientInfo.android.js} +4 -4
  98. package/lib/{ClientDevice/browser.d.ts → utils/getClientInfo/getClientInfo.d.ts} +1 -9
  99. package/lib/{ClientDevice/ios.d.ts → utils/getClientInfo/getClientInfo.ios.d.ts} +1 -1
  100. package/lib/{ClientDevice/ios.js → utils/getClientInfo/getClientInfo.ios.js} +4 -4
  101. package/lib/{ClientDevice/browser.js → utils/getClientInfo/getClientInfo.js} +6 -18
  102. package/lib/utils/getClientInfo/index.d.ts +1 -0
  103. package/lib/utils/getClientInfo/index.js +7 -0
  104. package/lib/utils/index.d.ts +2 -0
  105. package/lib/utils/index.js +5 -1
  106. package/lib/utils/sessionListener/SessionListener.d.ts +10 -0
  107. package/lib/utils/sessionListener/SessionListener.js +55 -0
  108. package/lib/utils/sessionListener/SessionListener.native.d.ts +10 -0
  109. package/lib/utils/sessionListener/SessionListener.native.js +54 -0
  110. package/lib/utils/sessionListener/index.d.ts +2 -0
  111. package/lib/utils/sessionListener/index.js +7 -0
  112. package/lib/utils/sessionListener/types.d.ts +6 -0
  113. package/lib/utils/sessionListener/types.js +4 -0
  114. package/lib-esm/Cache/StorageCache.d.ts +14 -31
  115. package/lib-esm/Cache/StorageCache.js +97 -102
  116. package/lib-esm/Cache/StorageCache.native.d.ts +19 -0
  117. package/lib-esm/Cache/StorageCache.native.js +161 -0
  118. package/{lib/Cache/AsyncStorageCache.d.ts → lib-esm/Cache/StorageCacheCommon.d.ts} +124 -99
  119. package/lib-esm/Cache/{AsyncStorageCache.js → StorageCacheCommon.js} +493 -430
  120. package/lib-esm/Cache/constants.d.ts +6 -0
  121. package/lib-esm/Cache/constants.js +14 -0
  122. package/lib-esm/Cache/index.d.ts +2 -0
  123. package/lib-esm/Cache/index.js +4 -0
  124. package/lib-esm/Cache/types/cache.d.ts +38 -0
  125. package/lib-esm/Cache/types/index.d.ts +1 -1
  126. package/lib-esm/Cache/types/index.js +1 -1
  127. package/lib-esm/Cache/{Utils → utils}/CacheList.d.ts +1 -1
  128. package/lib-esm/Cache/{Utils → utils}/CacheList.js +1 -1
  129. package/lib-esm/Cache/utils/cacheHelpers.d.ts +14 -0
  130. package/lib-esm/Cache/utils/cacheHelpers.js +44 -0
  131. package/lib-esm/Cache/{Utils → utils}/errorHelpers.d.ts +0 -1
  132. package/lib-esm/Cache/{Utils → utils}/errorHelpers.js +0 -4
  133. package/lib-esm/Cache/utils/index.d.ts +2 -0
  134. package/lib-esm/Cache/utils/index.js +4 -0
  135. package/lib-esm/I18n/I18n.js +1 -6
  136. package/lib-esm/Platform/types.d.ts +18 -8
  137. package/lib-esm/Platform/types.js +10 -2
  138. package/lib-esm/Platform/version.d.ts +1 -1
  139. package/lib-esm/Platform/version.js +1 -1
  140. package/lib-esm/Reachability/Reachability.d.ts +1 -0
  141. package/lib-esm/Reachability/Reachability.js +43 -2
  142. package/lib-esm/ServiceWorker/ServiceWorker.js +69 -17
  143. package/lib-esm/ServiceWorker/index.d.ts +0 -12
  144. package/lib-esm/ServiceWorker/index.js +0 -12
  145. package/lib-esm/Signer/Signer.js +3 -2
  146. package/lib-esm/awsClients/cognitoIdentity/base.js +2 -1
  147. package/lib-esm/awsClients/pinpoint/base.js +2 -1
  148. package/lib-esm/awsClients/pinpoint/getInAppMessages.js +2 -1
  149. package/lib-esm/awsClients/pinpoint/putEvents.js +2 -1
  150. package/lib-esm/awsClients/pinpoint/updateEndpoint.js +2 -1
  151. package/lib-esm/clients/middleware/signing/signer/signatureV4/index.d.ts +0 -1
  152. package/lib-esm/clients/middleware/signing/signer/signatureV4/index.js +0 -1
  153. package/lib-esm/clients/middleware/signing/signer/signatureV4/presignUrl.js +2 -1
  154. package/lib-esm/errors/errorHelpers.d.ts +2 -0
  155. package/lib-esm/errors/errorHelpers.js +17 -0
  156. package/lib-esm/errors/index.d.ts +1 -0
  157. package/lib-esm/errors/index.js +1 -0
  158. package/lib-esm/index.d.ts +4 -4
  159. package/lib-esm/index.js +5 -4
  160. package/lib-esm/libraryUtils.d.ts +8 -7
  161. package/lib-esm/libraryUtils.js +7 -7
  162. package/lib-esm/parseAWSExports.js +34 -19
  163. package/lib-esm/providers/pinpoint/apis/flushEvents.d.ts +2 -2
  164. package/lib-esm/providers/pinpoint/apis/record.d.ts +1 -1
  165. package/lib-esm/providers/pinpoint/apis/record.js +9 -25
  166. package/lib-esm/providers/pinpoint/apis/updateEndpoint.js +6 -6
  167. package/lib-esm/providers/pinpoint/index.d.ts +2 -2
  168. package/lib-esm/providers/pinpoint/index.js +2 -1
  169. package/lib-esm/providers/pinpoint/types/errors.d.ts +9 -0
  170. package/lib-esm/providers/pinpoint/types/errors.js +12 -0
  171. package/lib-esm/providers/pinpoint/types/index.d.ts +1 -0
  172. package/lib-esm/providers/pinpoint/types/index.js +1 -0
  173. package/lib-esm/providers/pinpoint/types/pinpoint.d.ts +3 -3
  174. package/lib-esm/providers/pinpoint/utils/index.d.ts +1 -0
  175. package/lib-esm/providers/pinpoint/utils/index.js +1 -0
  176. package/lib-esm/providers/pinpoint/utils/resolveEndpointId.d.ts +8 -0
  177. package/lib-esm/providers/pinpoint/utils/resolveEndpointId.js +81 -0
  178. package/lib-esm/singleton/Amplify.d.ts +2 -2
  179. package/lib-esm/singleton/Amplify.js +6 -5
  180. package/lib-esm/singleton/Auth/types.d.ts +3 -3
  181. package/lib-esm/singleton/Cache/types.d.ts +18 -0
  182. package/lib-esm/singleton/Cache/types.js +3 -0
  183. package/lib-esm/singleton/Interactions/types.d.ts +21 -0
  184. package/lib-esm/singleton/Interactions/types.js +3 -0
  185. package/lib-esm/singleton/Notifications/PushNotification/types.d.ts +2 -0
  186. package/lib-esm/singleton/Notifications/PushNotification/types.js +3 -0
  187. package/lib-esm/singleton/Notifications/types.d.ts +3 -1
  188. package/lib-esm/singleton/types.d.ts +3 -3
  189. package/lib-esm/storage/CookieStorage.js +5 -5
  190. package/lib-esm/storage/DefaultStorage.js +2 -2
  191. package/lib-esm/storage/utils.d.ts +1 -1
  192. package/lib-esm/storage/utils.js +1 -1
  193. package/lib-esm/tsconfig.tsbuildinfo +1 -1
  194. package/lib-esm/types/errors.d.ts +1 -0
  195. package/lib-esm/types/errors.js +1 -0
  196. package/lib-esm/utils/amplifyUrl/index.d.ts +13 -0
  197. package/lib-esm/utils/amplifyUrl/index.js +6 -0
  198. package/lib-esm/utils/amplifyUuid/index.d.ts +3 -0
  199. package/lib-esm/utils/amplifyUuid/index.js +6 -0
  200. package/lib-esm/utils/amplifyUuid/polyfill.native.js +4 -0
  201. package/lib-esm/utils/deepFreeze.d.ts +1 -0
  202. package/lib-esm/utils/deepFreeze.js +34 -0
  203. package/lib-esm/{ClientDevice/android.d.ts → utils/getClientInfo/getClientInfo.android.d.ts} +1 -1
  204. package/lib-esm/{ClientDevice/android.js → utils/getClientInfo/getClientInfo.android.js} +2 -2
  205. package/lib-esm/{ClientDevice/browser.d.ts → utils/getClientInfo/getClientInfo.d.ts} +1 -9
  206. package/lib-esm/{ClientDevice/ios.d.ts → utils/getClientInfo/getClientInfo.ios.d.ts} +1 -1
  207. package/lib-esm/{ClientDevice/ios.js → utils/getClientInfo/getClientInfo.ios.js} +2 -2
  208. package/lib-esm/{ClientDevice/browser.js → utils/getClientInfo/getClientInfo.js} +4 -14
  209. package/lib-esm/utils/getClientInfo/index.d.ts +1 -0
  210. package/lib-esm/utils/getClientInfo/index.js +3 -0
  211. package/lib-esm/utils/index.d.ts +2 -0
  212. package/lib-esm/utils/index.js +2 -0
  213. package/lib-esm/utils/sessionListener/SessionListener.d.ts +10 -0
  214. package/lib-esm/utils/sessionListener/SessionListener.js +52 -0
  215. package/lib-esm/utils/sessionListener/SessionListener.native.d.ts +10 -0
  216. package/lib-esm/utils/sessionListener/SessionListener.native.js +51 -0
  217. package/lib-esm/utils/sessionListener/index.d.ts +2 -0
  218. package/lib-esm/utils/sessionListener/index.js +4 -0
  219. package/lib-esm/utils/sessionListener/types.d.ts +6 -0
  220. package/lib-esm/utils/sessionListener/types.js +3 -0
  221. package/package.json +9 -19
  222. package/src/Cache/StorageCache.native.ts +65 -0
  223. package/src/Cache/StorageCache.ts +61 -158
  224. package/src/Cache/StorageCacheCommon.ts +577 -0
  225. package/src/Cache/constants.ts +18 -0
  226. package/src/Cache/index.ts +6 -0
  227. package/src/Cache/types/cache.ts +51 -0
  228. package/src/Cache/types/index.ts +4 -4
  229. package/src/Cache/{Utils → utils}/CacheList.ts +185 -185
  230. package/src/Cache/utils/cacheHelpers.ts +52 -0
  231. package/src/Cache/{Utils → utils}/errorHelpers.ts +0 -4
  232. package/src/Cache/{Utils → utils}/index.ts +4 -5
  233. package/src/I18n/I18n.ts +1 -6
  234. package/src/Platform/types.ts +20 -11
  235. package/src/Platform/version.ts +1 -1
  236. package/src/Reachability/Reachability.ts +22 -2
  237. package/src/ServiceWorker/ServiceWorker.ts +20 -17
  238. package/src/ServiceWorker/index.ts +0 -12
  239. package/src/Signer/Signer.ts +3 -2
  240. package/src/awsClients/cognitoIdentity/base.ts +4 -1
  241. package/src/awsClients/pinpoint/base.ts +2 -1
  242. package/src/awsClients/pinpoint/getInAppMessages.ts +2 -1
  243. package/src/awsClients/pinpoint/putEvents.ts +2 -1
  244. package/src/awsClients/pinpoint/updateEndpoint.ts +2 -1
  245. package/src/clients/middleware/signing/signer/signatureV4/index.ts +0 -2
  246. package/src/clients/middleware/signing/signer/signatureV4/presignUrl.ts +2 -1
  247. package/src/errors/errorHelpers.ts +20 -0
  248. package/src/errors/index.ts +1 -0
  249. package/src/index.ts +8 -4
  250. package/src/libraryUtils.ts +17 -11
  251. package/src/parseAWSExports.ts +28 -9
  252. package/src/providers/pinpoint/apis/flushEvents.ts +2 -2
  253. package/src/providers/pinpoint/apis/record.ts +14 -28
  254. package/src/providers/pinpoint/apis/updateEndpoint.ts +6 -6
  255. package/src/providers/pinpoint/index.ts +6 -2
  256. package/src/providers/pinpoint/types/errors.ts +12 -0
  257. package/src/providers/pinpoint/types/index.ts +1 -0
  258. package/src/providers/pinpoint/types/pinpoint.ts +3 -2
  259. package/src/providers/pinpoint/utils/index.ts +1 -0
  260. package/src/providers/pinpoint/utils/resolveEndpointId.ts +46 -0
  261. package/src/singleton/Amplify.ts +10 -8
  262. package/src/singleton/Auth/types.ts +3 -3
  263. package/src/singleton/Cache/types.ts +27 -0
  264. package/src/singleton/Interactions/types.ts +29 -0
  265. package/src/singleton/Notifications/PushNotification/types.ts +6 -0
  266. package/src/singleton/Notifications/types.ts +3 -1
  267. package/src/singleton/types.ts +3 -5
  268. package/src/storage/CookieStorage.ts +5 -9
  269. package/src/storage/DefaultStorage.ts +2 -2
  270. package/src/storage/utils.ts +1 -1
  271. package/src/types/errors.ts +1 -0
  272. package/src/utils/amplifyUrl/index.ts +9 -0
  273. package/src/{clients/middleware/signing/signer/signatureV4/polyfills/index.native.ts → utils/amplifyUrl/polyfill.native.ts} +1 -0
  274. package/src/utils/amplifyUuid/index.ts +9 -0
  275. package/src/utils/amplifyUuid/polyfill.native.ts +6 -0
  276. package/src/utils/amplifyUuid/polyfill.ts +4 -0
  277. package/src/utils/deepFreeze.ts +16 -0
  278. package/src/{ClientDevice/android.ts → utils/getClientInfo/getClientInfo.android.ts} +2 -2
  279. package/src/{ClientDevice/ios.ts → utils/getClientInfo/getClientInfo.ios.ts} +3 -3
  280. package/src/{ClientDevice/browser.ts → utils/getClientInfo/getClientInfo.ts} +4 -16
  281. package/src/utils/getClientInfo/index.ts +4 -0
  282. package/src/utils/index.ts +2 -0
  283. package/src/utils/sessionListener/SessionListener.native.ts +70 -0
  284. package/src/utils/sessionListener/SessionListener.ts +74 -0
  285. package/src/utils/sessionListener/index.ts +6 -0
  286. package/src/utils/sessionListener/types.ts +11 -0
  287. package/lib/Amplify.d.ts +0 -29
  288. package/lib/Amplify.js +0 -118
  289. package/lib/Cache/BrowserStorageCache.d.ts +0 -166
  290. package/lib/Cache/BrowserStorageCache.js +0 -456
  291. package/lib/Cache/InMemoryCache.d.ts +0 -129
  292. package/lib/Cache/InMemoryCache.js +0 -342
  293. package/lib/Cache/Utils/CacheUtils.d.ts +0 -25
  294. package/lib/Cache/Utils/CacheUtils.js +0 -86
  295. package/lib/Cache/Utils/index.d.ts +0 -2
  296. package/lib/Cache/Utils/index.js +0 -16
  297. package/lib/Cache/reactnative.d.ts +0 -3
  298. package/lib/Cache/reactnative.js +0 -8
  299. package/lib/Cache/types/Cache.d.ts +0 -55
  300. package/lib/ClientDevice/index.d.ts +0 -23
  301. package/lib/ClientDevice/index.js +0 -18
  302. package/lib/ClientDevice/reactnative.d.ts +0 -7
  303. package/lib/ClientDevice/reactnative.js +0 -24
  304. package/lib-esm/Amplify.d.ts +0 -29
  305. package/lib-esm/Amplify.js +0 -115
  306. package/lib-esm/Cache/BrowserStorageCache.d.ts +0 -166
  307. package/lib-esm/Cache/BrowserStorageCache.js +0 -453
  308. package/lib-esm/Cache/InMemoryCache.d.ts +0 -129
  309. package/lib-esm/Cache/InMemoryCache.js +0 -339
  310. package/lib-esm/Cache/Utils/CacheUtils.d.ts +0 -25
  311. package/lib-esm/Cache/Utils/CacheUtils.js +0 -79
  312. package/lib-esm/Cache/Utils/index.d.ts +0 -2
  313. package/lib-esm/Cache/Utils/index.js +0 -4
  314. package/lib-esm/Cache/reactnative.d.ts +0 -3
  315. package/lib-esm/Cache/reactnative.js +0 -6
  316. package/lib-esm/Cache/types/Cache.d.ts +0 -55
  317. package/lib-esm/ClientDevice/index.d.ts +0 -23
  318. package/lib-esm/ClientDevice/index.js +0 -15
  319. package/lib-esm/ClientDevice/reactnative.d.ts +0 -7
  320. package/lib-esm/ClientDevice/reactnative.js +0 -21
  321. package/src/Amplify.ts +0 -106
  322. package/src/Cache/AsyncStorageCache.ts +0 -495
  323. package/src/Cache/BrowserStorageCache.ts +0 -504
  324. package/src/Cache/CHANGELOG.md +0 -1239
  325. package/src/Cache/InMemoryCache.ts +0 -347
  326. package/src/Cache/Utils/CacheUtils.ts +0 -90
  327. package/src/Cache/reactnative.ts +0 -9
  328. package/src/Cache/types/Cache.ts +0 -75
  329. package/src/ClientDevice/index.ts +0 -14
  330. package/src/ClientDevice/reactnative.ts +0 -18
  331. package/lib/Cache/types/{Cache.js → cache.js} +0 -0
  332. package/lib/{clients/middleware/signing/signer/signatureV4/polyfills/index.native.js → utils/amplifyUrl/polyfill.native.js} +1 -1
  333. /package/lib-esm/Cache/types/{Cache.js → cache.js} +0 -0
  334. /package/lib-esm/{clients/middleware/signing/signer/signatureV4/polyfills/index.d.ts → utils/amplifyUrl/polyfill.d.ts} +0 -0
  335. /package/lib-esm/{clients/middleware/signing/signer/signatureV4/polyfills/index.js → utils/amplifyUrl/polyfill.js} +0 -0
  336. /package/lib-esm/{clients/middleware/signing/signer/signatureV4/polyfills/index.native.d.ts → utils/amplifyUrl/polyfill.native.d.ts} +0 -0
  337. /package/lib-esm/{clients/middleware/signing/signer/signatureV4/polyfills/index.native.js → utils/amplifyUrl/polyfill.native.js} +0 -0
  338. /package/{lib/clients/middleware/signing/signer/signatureV4/polyfills/index.d.ts → lib-esm/utils/amplifyUuid/polyfill.d.ts} +0 -0
  339. /package/{lib/clients/middleware/signing/signer/signatureV4/polyfills/index.js → lib-esm/utils/amplifyUuid/polyfill.js} +0 -0
  340. /package/{lib/clients/middleware/signing/signer/signatureV4/polyfills/index.native.d.ts → lib-esm/utils/amplifyUuid/polyfill.native.d.ts} +0 -0
  341. /package/src/{clients/middleware/signing/signer/signatureV4/polyfills/index.ts → utils/amplifyUrl/polyfill.ts} +0 -0
package/src/Amplify.ts DELETED
@@ -1,106 +0,0 @@
1
- // @ts-nocheck
2
- // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
- // SPDX-License-Identifier: Apache-2.0
4
- import { ConsoleLogger as LoggerClass } from './Logger';
5
-
6
- const logger = new LoggerClass('Amplify');
7
-
8
- export class AmplifyClass {
9
- // Everything that is `register`ed is tracked here
10
- private _components:any[] = [];
11
- private _config = {};
12
-
13
- // All modules (with `getModuleName()`) are stored here for dependency injection
14
- private _modules = {};
15
-
16
- // for backward compatibility to avoid breaking change
17
- // if someone is using like Amplify.Auth
18
- Auth = null;
19
- Analytics = null;
20
- API = null;
21
- Credentials = null;
22
- Storage = null;
23
- I18n = null;
24
- Cache = null;
25
- PubSub = null;
26
- Interactions = null;
27
- Pushnotification = null;
28
- UI = null;
29
- XR = null;
30
- Predictions = null;
31
- DataStore = null;
32
- Geo = null;
33
- Notifications = null;
34
-
35
- Logger = LoggerClass;
36
- ServiceWorker = null;
37
-
38
- // TODO: update "any" when types are determined
39
- public get config(): any {
40
- return Object.assign({}, this._config);
41
- }
42
-
43
- register(comp:any) {
44
- logger.debug('component registered in amplify', comp);
45
- this._components.push(comp);
46
- if (typeof comp.getModuleName === 'function') {
47
- this._modules[comp.getModuleName()] = comp;
48
- this[comp.getModuleName()] = comp;
49
- } else {
50
- logger.debug('no getModuleName method for component', comp);
51
- }
52
-
53
- // Finally configure this new component(category) loaded
54
- // With the new modularization changes in Amplify V3, all the Amplify
55
- // component are not loaded/registered right away but when they are
56
- // imported (and hence instantiated) in the client's app. This ensures
57
- // that all new components imported get correctly configured with the
58
- // configuration that Amplify.configure() was called with.
59
- comp.configure(this._config);
60
- }
61
-
62
- configure(config?) {
63
- if (!config) return this._config;
64
-
65
- this._config = Object.assign(this._config, config);
66
- logger.debug('amplify config', this._config);
67
-
68
- // Dependency Injection via property-setting.
69
- // This avoids introducing a public method/interface/setter that's difficult to remove later.
70
- // Plus, it reduces `if` statements within the `constructor` and `configure` of each module
71
- Object.entries(this._modules).forEach(([Name, comp]:[any, any]) => {
72
- // e.g. Auth.*
73
- Object.keys(comp).forEach(property => {
74
- // e.g. Auth["Credentials"] = this._modules["Credentials"] when set
75
- if (this._modules[property]) {
76
- comp[property] = this._modules[property];
77
- }
78
- });
79
- });
80
-
81
- this._components.map(comp => {
82
- comp.configure(this._config);
83
- });
84
-
85
- return this._config;
86
- }
87
-
88
- addPluggable(pluggable) {
89
- if (
90
- pluggable &&
91
- pluggable['getCategory'] &&
92
- typeof pluggable['getCategory'] === 'function'
93
- ) {
94
- this._components.map(comp => {
95
- if (
96
- comp['addPluggable'] &&
97
- typeof comp['addPluggable'] === 'function'
98
- ) {
99
- comp.addPluggable(pluggable);
100
- }
101
- });
102
- }
103
- }
104
- }
105
-
106
- export const Amplify = new AmplifyClass();
@@ -1,495 +0,0 @@
1
- // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
- // SPDX-License-Identifier: Apache-2.0
3
-
4
- import { loadAsyncStorage } from '@aws-amplify/react-native';
5
- import { ConsoleLogger as Logger } from '../Logger';
6
- import { StorageCache } from './StorageCache';
7
- import { defaultConfig, getCurrTime } from './Utils';
8
- import { CacheConfig, CacheItem, CacheItemOptions, ICache } from './types';
9
- import { getCurrSizeKey } from './Utils/CacheUtils';
10
- import { assert, CacheErrorCode } from './Utils/errorHelpers';
11
-
12
- const logger = new Logger('AsyncStorageCache');
13
- const AsyncStorage = loadAsyncStorage();
14
-
15
- /*
16
- * Customized cache which based on the AsyncStorage with LRU implemented
17
- */
18
- export class AsyncStorageCache extends StorageCache implements ICache {
19
- /**
20
- * initialize the cache
21
- *
22
- * @param {Object} config - the configuration of the cache
23
- */
24
- constructor(config?: CacheConfig) {
25
- super(config);
26
-
27
- this.getItem = this.getItem.bind(this);
28
- this.setItem = this.setItem.bind(this);
29
- this.removeItem = this.removeItem.bind(this);
30
-
31
- logger.debug('Using AsyncStorageCache');
32
- }
33
-
34
- /**
35
- * decrease current size of the cache
36
- * @private
37
- * @param amount - the amount of the cache size which needs to be decreased
38
- */
39
- async _decreaseCurSizeInBytes(amount: number) {
40
- const curSize = await this.getCacheCurSize();
41
- await AsyncStorage.setItem(
42
- getCurrSizeKey(this.cacheConfig.keyPrefix),
43
- (curSize - amount).toString()
44
- );
45
- }
46
-
47
- /**
48
- * increase current size of the cache
49
- * @private
50
- * @param amount - the amount of the cache szie which need to be increased
51
- */
52
- async _increaseCurSizeInBytes(amount: number) {
53
- const curSize = await this.getCacheCurSize();
54
- await AsyncStorage.setItem(
55
- getCurrSizeKey(this.cacheConfig.keyPrefix),
56
- (curSize + amount).toString()
57
- );
58
- }
59
-
60
- /**
61
- * update the visited time if item has been visited
62
- * @private
63
- * @param item - the item which need to be refreshed
64
- * @param prefixedKey - the key of the item
65
- *
66
- * @return the refreshed item
67
- */
68
- async _refreshItem(item: CacheItem, prefixedKey: string) {
69
- item.visitedTime = getCurrTime();
70
- await AsyncStorage.setItem(prefixedKey, JSON.stringify(item));
71
- return item;
72
- }
73
-
74
- /**
75
- * check wether item is expired
76
- * @private
77
- * @param key - the key of the item
78
- *
79
- * @return true if the item is expired.
80
- */
81
- async _isExpired(key: string) {
82
- const text = await AsyncStorage.getItem(key);
83
- assert(text !== null, CacheErrorCode.NoCacheItem, `Key: ${key}`);
84
- const item = JSON.parse(text);
85
- if (getCurrTime() >= item.expires) {
86
- return true;
87
- }
88
- return false;
89
- }
90
-
91
- /**
92
- * delete item from cache
93
- * @private
94
- * @param prefixedKey - the key of the item
95
- * @param size - optional, the byte size of the item
96
- */
97
- async _removeItem(prefixedKey: string, size?: number) {
98
- const config = await AsyncStorage.getItem(prefixedKey);
99
- assert(!!config, CacheErrorCode.NoCacheItem, `Key: ${prefixedKey}`);
100
- const itemSize = size ?? JSON.parse(config).byteSize;
101
- // first try to update the current size of the cache
102
- await this._decreaseCurSizeInBytes(itemSize);
103
-
104
- // try to remove the item from cache
105
- try {
106
- await AsyncStorage.removeItem(prefixedKey);
107
- } catch (removeItemError) {
108
- // if some error happened, we need to rollback the current size
109
- await this._increaseCurSizeInBytes(itemSize);
110
- logger.error(`Failed to remove item: ${removeItemError}`);
111
- }
112
- }
113
-
114
- /**
115
- * put item into cache
116
- * @private
117
- * @param prefixedKey - the key of the item
118
- * @param itemData - the value of the item
119
- * @param itemSizeInBytes - the byte size of the item
120
- */
121
- async _setItem(prefixedKey: string, item: any) {
122
- // first try to update the current size of the cache.
123
- await this._increaseCurSizeInBytes(item.byteSize);
124
-
125
- // try to add the item into cache
126
- try {
127
- await AsyncStorage.setItem(prefixedKey, JSON.stringify(item));
128
- } catch (setItemErr) {
129
- // if some error happened, we need to rollback the current size
130
- await this._decreaseCurSizeInBytes(item.byteSize);
131
- logger.error(`Failed to set item ${setItemErr}`);
132
- }
133
- }
134
-
135
- /**
136
- * total space needed when poping out items
137
- * @private
138
- * @param itemSize
139
- *
140
- * @return total space needed
141
- */
142
- async _sizeToPop(itemSize: number) {
143
- const spaceItemNeed =
144
- (await this.getCacheCurSize()) +
145
- itemSize -
146
- this.cacheConfig.capacityInBytes;
147
- const cacheThresholdSpace =
148
- (1 - this.cacheConfig.warningThreshold) *
149
- this.cacheConfig.capacityInBytes;
150
- return spaceItemNeed > cacheThresholdSpace
151
- ? spaceItemNeed
152
- : cacheThresholdSpace;
153
- }
154
-
155
- /**
156
- * see whether cache is full
157
- * @private
158
- * @param itemSize
159
- *
160
- * @return true if cache is full
161
- */
162
- async _isCacheFull(itemSize: number) {
163
- return (
164
- itemSize + (await this.getCacheCurSize()) >
165
- this.cacheConfig.capacityInBytes
166
- );
167
- }
168
-
169
- /**
170
- * scan the storage and find out all the keys owned by this cache
171
- * also clean the expired keys while scanning
172
- * @private
173
- * @return array of keys
174
- */
175
- async _findValidKeys() {
176
- const keys: string[] = [];
177
- let keyInCache: Readonly<string[]> = [];
178
-
179
- keyInCache = await AsyncStorage.getAllKeys();
180
-
181
- for (let i = 0; i < keyInCache.length; i += 1) {
182
- const key = keyInCache[i];
183
- if (
184
- key.indexOf(this.cacheConfig.keyPrefix) === 0 &&
185
- key !== getCurrSizeKey(this.cacheConfig.keyPrefix)
186
- ) {
187
- if (await this._isExpired(key)) {
188
- await this._removeItem(key);
189
- } else {
190
- keys.push(key);
191
- }
192
- }
193
- }
194
- return keys;
195
- }
196
-
197
- /**
198
- * get all the items we have, sort them by their priority,
199
- * if priority is same, sort them by their last visited time
200
- * pop out items from the low priority (5 is the lowest)
201
- * @private
202
- * @param keys - all the keys in this cache
203
- * @param sizeToPop - the total size of the items which needed to be poped out
204
- */
205
- async _popOutItems(keys: string[], sizeToPop: number) {
206
- const items: any[] = [];
207
- let remainedSize = sizeToPop;
208
- for (let i = 0; i < keys.length; i += 1) {
209
- const val = await AsyncStorage.getItem(keys[i]);
210
- if (val != null) {
211
- const item = JSON.parse(val);
212
- items.push(item);
213
- }
214
- }
215
-
216
- // first compare priority
217
- // then compare visited time
218
- items.sort((a, b) => {
219
- if (a.priority > b.priority) {
220
- return -1;
221
- } else if (a.priority < b.priority) {
222
- return 1;
223
- } else {
224
- if (a.visitedTime < b.visitedTime) {
225
- return -1;
226
- } else return 1;
227
- }
228
- });
229
-
230
- for (let i = 0; i < items.length; i += 1) {
231
- // pop out items until we have enough room for new item
232
- await this._removeItem(items[i].key, items[i].byteSize);
233
- remainedSize -= items[i].byteSize;
234
- if (remainedSize <= 0) {
235
- return;
236
- }
237
- }
238
- }
239
-
240
- /**
241
- * Set item into cache. You can put number, string, boolean or object.
242
- * The cache will first check whether has the same key.
243
- * If it has, it will delete the old item and then put the new item in
244
- * The cache will pop out items if it is full
245
- * You can specify the cache item options. The cache will abort and output a warning:
246
- * If the key is invalid
247
- * If the size of the item exceeds itemMaxSize.
248
- * If the value is undefined
249
- * If incorrect cache item configuration
250
- * If error happened with browser storage
251
- *
252
- * @param {String} key - the key of the item
253
- * @param {Object} value - the value of the item
254
- * @param {Object} [options] - optional, the specified meta-data
255
- * @return {Promise}
256
- */
257
- async setItem(key: string, value: any, options: Record<string, any>) {
258
- logger.debug(
259
- `Set item: key is ${key}, value is ${value} with options: ${options}`
260
- );
261
- const prefixedKey = this.cacheConfig.keyPrefix + key;
262
- // invalid keys
263
- if (
264
- prefixedKey === this.cacheConfig.keyPrefix ||
265
- prefixedKey === getCurrSizeKey(this.cacheConfig.keyPrefix)
266
- ) {
267
- logger.warn(`Invalid key: should not be empty or 'CurSize'`);
268
- return;
269
- }
270
-
271
- if (typeof value === 'undefined') {
272
- logger.warn(`The value of item should not be undefined!`);
273
- return;
274
- }
275
-
276
- const cacheItemOptions = {
277
- priority:
278
- options && options.priority !== undefined
279
- ? options.priority
280
- : this.cacheConfig.defaultPriority,
281
- expires:
282
- options && options.expires !== undefined
283
- ? options.expires
284
- : this.cacheConfig.defaultTTL + getCurrTime(),
285
- };
286
-
287
- if (cacheItemOptions.priority < 1 || cacheItemOptions.priority > 5) {
288
- logger.warn(
289
- `Invalid parameter: priority due to out or range. It should be within 1 and 5.`
290
- );
291
- return;
292
- }
293
-
294
- const item = this.fillCacheItem(prefixedKey, value, cacheItemOptions);
295
-
296
- // check wether this item is too big;
297
- if (item.byteSize > this.cacheConfig.itemMaxSize) {
298
- logger.warn(
299
- `Item with key: ${key} you are trying to put into is too big!`
300
- );
301
- return;
302
- }
303
-
304
- try {
305
- // first look into the storage, if it exists, delete it.
306
- const val = await AsyncStorage.getItem(prefixedKey);
307
- if (val) {
308
- await this._removeItem(prefixedKey, JSON.parse(val).byteSize);
309
- }
310
-
311
- // check whether the cache is full
312
- if (await this._isCacheFull(item.byteSize)) {
313
- const validKeys = await this._findValidKeys();
314
- if (await this._isCacheFull(item.byteSize)) {
315
- const sizeToPop = await this._sizeToPop(item.byteSize);
316
- await this._popOutItems(validKeys, sizeToPop);
317
- }
318
- }
319
-
320
- // put item in the cache
321
- await this._setItem(prefixedKey, item);
322
- } catch (e) {
323
- logger.warn(`setItem failed! ${e}`);
324
- }
325
- }
326
-
327
- /**
328
- * Get item from cache. It will return null if item doesn’t exist or it has been expired.
329
- * If you specified callback function in the options,
330
- * then the function will be executed if no such item in the cache
331
- * and finally put the return value into cache.
332
- * Please make sure the callback function will return the value you want to put into the cache.
333
- * The cache will abort output a warning:
334
- * If the key is invalid
335
- * If error happened with AsyncStorage
336
- *
337
- * @param {String} key - the key of the item
338
- * @param {Object} [options] - the options of callback function
339
- * @return {Promise} - return a promise resolves to be the value of the item
340
- */
341
- async getItem(key: string, options: CacheItemOptions) {
342
- logger.debug(`Get item: key is ${key} with options ${options}`);
343
- let ret = null;
344
- const prefixedKey = this.cacheConfig.keyPrefix + key;
345
-
346
- if (
347
- prefixedKey === this.cacheConfig.keyPrefix ||
348
- prefixedKey === getCurrSizeKey(this.cacheConfig.keyPrefix)
349
- ) {
350
- logger.warn(`Invalid key: should not be empty or 'CurSize'`);
351
- return null;
352
- }
353
-
354
- try {
355
- ret = await AsyncStorage.getItem(prefixedKey);
356
- if (ret != null) {
357
- if (await this._isExpired(prefixedKey)) {
358
- // if expired, remove that item and return null
359
- await this._removeItem(prefixedKey, JSON.parse(ret).byteSize);
360
- } else {
361
- // if not expired, great, return the value and refresh it
362
- let item = JSON.parse(ret);
363
- item = await this._refreshItem(item, prefixedKey);
364
- return item.data;
365
- }
366
- }
367
-
368
- if (options && options.callback !== undefined) {
369
- const val = options.callback();
370
- if (val !== null) {
371
- this.setItem(key, val, options);
372
- }
373
- return val;
374
- }
375
- return null;
376
- } catch (e) {
377
- logger.warn(`getItem failed! ${e}`);
378
- return null;
379
- }
380
- }
381
-
382
- /**
383
- * remove item from the cache
384
- * The cache will abort output a warning:
385
- * If error happened with AsyncStorage
386
- * @param {String} key - the key of the item
387
- * @return {Promise}
388
- */
389
- async removeItem(key: string) {
390
- logger.debug(`Remove item: key is ${key}`);
391
- const prefixedKey = this.cacheConfig.keyPrefix + key;
392
-
393
- if (
394
- prefixedKey === this.cacheConfig.keyPrefix ||
395
- prefixedKey === getCurrSizeKey(this.cacheConfig.keyPrefix)
396
- ) {
397
- return;
398
- }
399
-
400
- try {
401
- const val = await AsyncStorage.getItem(prefixedKey);
402
- if (val) {
403
- await this._removeItem(prefixedKey, JSON.parse(val).byteSize);
404
- }
405
- } catch (e) {
406
- logger.warn(`removeItem failed! ${e}`);
407
- }
408
- }
409
-
410
- /**
411
- * clear the entire cache
412
- * The cache will abort output a warning:
413
- * If error happened with AsyncStorage
414
- * @return {Promise}
415
- */
416
- async clear() {
417
- logger.debug(`Clear Cache`);
418
- try {
419
- const keys = await AsyncStorage.getAllKeys();
420
-
421
- const keysToRemove: string[] = [];
422
- for (let i = 0; i < keys.length; i += 1) {
423
- if (keys[i].indexOf(this.cacheConfig.keyPrefix) === 0) {
424
- keysToRemove.push(keys[i]);
425
- }
426
- }
427
-
428
- // can be improved
429
- for (let i = 0; i < keysToRemove.length; i += 1) {
430
- await AsyncStorage.removeItem(keysToRemove[i]);
431
- }
432
- } catch (e) {
433
- logger.warn(`clear failed! ${e}`);
434
- }
435
- }
436
-
437
- /**
438
- * return the current size of the cache
439
- * @return {Promise}
440
- */
441
- async getCacheCurSize() {
442
- let ret = await AsyncStorage.getItem(
443
- getCurrSizeKey(this.cacheConfig.keyPrefix)
444
- );
445
- if (!ret) {
446
- await AsyncStorage.setItem(
447
- getCurrSizeKey(this.cacheConfig.keyPrefix),
448
- '0'
449
- );
450
- ret = '0';
451
- }
452
- return Number(ret);
453
- }
454
-
455
- /**
456
- * Return all the keys in the cache.
457
- * Will return an empty array if error happend.
458
- * @return {Promise}
459
- */
460
- async getAllKeys() {
461
- try {
462
- const keys = await AsyncStorage.getAllKeys();
463
-
464
- const retKeys: string[] = [];
465
- for (let i = 0; i < keys.length; i += 1) {
466
- if (
467
- keys[i].indexOf(this.cacheConfig.keyPrefix) === 0 &&
468
- keys[i] !== getCurrSizeKey(this.cacheConfig.keyPrefix)
469
- ) {
470
- retKeys.push(keys[i].substring(this.cacheConfig.keyPrefix.length));
471
- }
472
- }
473
- return retKeys;
474
- } catch (e) {
475
- logger.warn(`getALlkeys failed! ${e}`);
476
- return [];
477
- }
478
- }
479
-
480
- /**
481
- * Return a new instance of cache with customized configuration.
482
- * @param {Object} config - the customized configuration
483
- * @return {Object} - the new instance of Cache
484
- */
485
- createInstance(config: CacheConfig): ICache {
486
- if (config.keyPrefix === defaultConfig.keyPrefix) {
487
- logger.error('invalid keyPrefix, setting keyPrefix with timeStamp');
488
- config.keyPrefix = getCurrTime.toString();
489
- }
490
- return new AsyncStorageCache(config);
491
- }
492
- }
493
-
494
- const instance: ICache = new AsyncStorageCache();
495
- export { AsyncStorage, instance as Cache };