@aws-amplify/core 6.0.16 → 6.0.17-unstable.3d2803e.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 (463) 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 +8 -7
  14. package/dist/cjs/Logger/ConsoleLogger.js.map +1 -1
  15. package/dist/cjs/Logger/types.js +1 -0
  16. package/dist/cjs/Logger/types.js.map +1 -1
  17. package/dist/cjs/Mutex/Mutex.js +4 -1
  18. package/dist/cjs/Mutex/Mutex.js.map +1 -1
  19. package/dist/cjs/Platform/detectFramework.js +3 -1
  20. package/dist/cjs/Platform/detectFramework.js.map +1 -1
  21. package/dist/cjs/Platform/detection/Angular.js +2 -4
  22. package/dist/cjs/Platform/detection/Angular.js.map +1 -1
  23. package/dist/cjs/Platform/detection/Expo.js +1 -2
  24. package/dist/cjs/Platform/detection/Expo.js.map +1 -1
  25. package/dist/cjs/Platform/detection/Next.js +3 -2
  26. package/dist/cjs/Platform/detection/Next.js.map +1 -1
  27. package/dist/cjs/Platform/detection/Nuxt.js +3 -4
  28. package/dist/cjs/Platform/detection/Nuxt.js.map +1 -1
  29. package/dist/cjs/Platform/index.js +1 -1
  30. package/dist/cjs/Platform/index.js.map +1 -1
  31. package/dist/cjs/Platform/version.js +1 -1
  32. package/dist/cjs/Platform/version.js.map +1 -1
  33. package/dist/cjs/Reachability/Reachability.js +6 -2
  34. package/dist/cjs/Reachability/Reachability.js.map +1 -1
  35. package/dist/cjs/ServiceWorker/ServiceWorker.js +11 -11
  36. package/dist/cjs/ServiceWorker/ServiceWorker.js.map +1 -1
  37. package/dist/cjs/Signer/DateUtils.js +1 -1
  38. package/dist/cjs/Signer/DateUtils.js.map +1 -1
  39. package/dist/cjs/Signer/Signer.js +3 -3
  40. package/dist/cjs/Signer/Signer.js.map +1 -1
  41. package/dist/cjs/adapterCore/serverContext/serverContext.js +1 -1
  42. package/dist/cjs/adapterCore/serverContext/serverContext.js.map +1 -1
  43. package/dist/cjs/awsClients/cognitoIdentity/base.js +2 -2
  44. package/dist/cjs/awsClients/cognitoIdentity/base.js.map +1 -1
  45. package/dist/cjs/awsClients/cognitoIdentity/getCredentialsForIdentity.js +1 -1
  46. package/dist/cjs/awsClients/cognitoIdentity/getCredentialsForIdentity.js.map +1 -1
  47. package/dist/cjs/awsClients/cognitoIdentity/getId.js +1 -1
  48. package/dist/cjs/awsClients/cognitoIdentity/getId.js.map +1 -1
  49. package/dist/cjs/awsClients/pinpoint/getInAppMessages.js +1 -1
  50. package/dist/cjs/awsClients/pinpoint/getInAppMessages.js.map +1 -1
  51. package/dist/cjs/awsClients/pinpoint/putEvents.js +1 -1
  52. package/dist/cjs/awsClients/pinpoint/putEvents.js.map +1 -1
  53. package/dist/cjs/awsClients/pinpoint/types.js +0 -1
  54. package/dist/cjs/awsClients/pinpoint/types.js.map +1 -1
  55. package/dist/cjs/awsClients/pinpoint/updateEndpoint.js +1 -1
  56. package/dist/cjs/awsClients/pinpoint/updateEndpoint.js.map +1 -1
  57. package/dist/cjs/clients/handlers/authenticated.js +3 -3
  58. package/dist/cjs/clients/handlers/authenticated.js.map +1 -1
  59. package/dist/cjs/clients/handlers/unauthenticated.js +1 -1
  60. package/dist/cjs/clients/handlers/unauthenticated.js.map +1 -1
  61. package/dist/cjs/clients/index.js +4 -4
  62. package/dist/cjs/clients/index.js.map +1 -1
  63. package/dist/cjs/clients/internal/composeServiceApi.js +1 -1
  64. package/dist/cjs/clients/internal/composeServiceApi.js.map +1 -1
  65. package/dist/cjs/clients/internal/composeTransferHandler.js +1 -1
  66. package/dist/cjs/clients/internal/composeTransferHandler.js.map +1 -1
  67. package/dist/cjs/clients/middleware/retry/defaultRetryDecider.js +2 -2
  68. package/dist/cjs/clients/middleware/retry/defaultRetryDecider.js.map +1 -1
  69. package/dist/cjs/clients/middleware/retry/index.js +2 -2
  70. package/dist/cjs/clients/middleware/retry/index.js.map +1 -1
  71. package/dist/cjs/clients/middleware/retry/jitteredBackoff.js +1 -1
  72. package/dist/cjs/clients/middleware/retry/jitteredBackoff.js.map +1 -1
  73. package/dist/cjs/clients/middleware/retry/middleware.js +6 -6
  74. package/dist/cjs/clients/middleware/retry/middleware.js.map +1 -1
  75. package/dist/cjs/clients/middleware/signing/index.js +2 -2
  76. package/dist/cjs/clients/middleware/signing/index.js.map +1 -1
  77. package/dist/cjs/clients/middleware/signing/middleware.js +3 -3
  78. package/dist/cjs/clients/middleware/signing/middleware.js.map +1 -1
  79. package/dist/cjs/clients/middleware/signing/signer/signatureV4/presignUrl.js +1 -2
  80. package/dist/cjs/clients/middleware/signing/signer/signatureV4/presignUrl.js.map +1 -1
  81. package/dist/cjs/clients/middleware/signing/signer/signatureV4/utils/getFormattedDates.js +1 -1
  82. package/dist/cjs/clients/middleware/signing/signer/signatureV4/utils/getFormattedDates.js.map +1 -1
  83. package/dist/cjs/clients/middleware/userAgent/index.js +2 -2
  84. package/dist/cjs/clients/middleware/userAgent/index.js.map +1 -1
  85. package/dist/cjs/clients/middleware/userAgent/middleware.js +3 -3
  86. package/dist/cjs/clients/middleware/userAgent/middleware.js.map +1 -1
  87. package/dist/cjs/clients/serde/json.js +1 -1
  88. package/dist/cjs/clients/serde/json.js.map +1 -1
  89. package/dist/cjs/errors/errorHelpers.js +1 -1
  90. package/dist/cjs/errors/errorHelpers.js.map +1 -1
  91. package/dist/cjs/parseAWSExports.js +1 -1
  92. package/dist/cjs/parseAWSExports.js.map +1 -1
  93. package/dist/cjs/providers/pinpoint/apis/updateEndpoint.js +1 -1
  94. package/dist/cjs/providers/pinpoint/apis/updateEndpoint.js.map +1 -1
  95. package/dist/cjs/providers/pinpoint/utils/PinpointEventBuffer.js +2 -3
  96. package/dist/cjs/providers/pinpoint/utils/PinpointEventBuffer.js.map +1 -1
  97. package/dist/cjs/providers/pinpoint/utils/isAppInForeground.native.js +0 -1
  98. package/dist/cjs/providers/pinpoint/utils/isAppInForeground.native.js.map +1 -1
  99. package/dist/cjs/singleton/Amplify.js +1 -1
  100. package/dist/cjs/singleton/Amplify.js.map +1 -1
  101. package/dist/cjs/singleton/Auth/index.js +2 -6
  102. package/dist/cjs/singleton/Auth/index.js.map +1 -1
  103. package/dist/cjs/singleton/Auth/utils/index.js +4 -4
  104. package/dist/cjs/singleton/Auth/utils/index.js.map +1 -1
  105. package/dist/cjs/singleton/apis/fetchAuthSession.js +1 -1
  106. package/dist/cjs/singleton/apis/fetchAuthSession.js.map +1 -1
  107. package/dist/cjs/storage/CookieStorage.js +8 -4
  108. package/dist/cjs/storage/CookieStorage.js.map +1 -1
  109. package/dist/cjs/storage/CookieStorage.native.js +0 -3
  110. package/dist/cjs/storage/CookieStorage.native.js.map +1 -1
  111. package/dist/cjs/utils/WordArray.js +2 -2
  112. package/dist/cjs/utils/WordArray.js.map +1 -1
  113. package/dist/cjs/utils/deDupeAsyncFunction.js +8 -8
  114. package/dist/cjs/utils/deDupeAsyncFunction.js.map +1 -1
  115. package/dist/cjs/utils/getClientInfo/getClientInfo.android.js +2 -3
  116. package/dist/cjs/utils/getClientInfo/getClientInfo.android.js.map +1 -1
  117. package/dist/cjs/utils/getClientInfo/getClientInfo.ios.js +2 -3
  118. package/dist/cjs/utils/getClientInfo/getClientInfo.ios.js.map +1 -1
  119. package/dist/cjs/utils/queuedStorage/createQueuedStorage.native.js +2 -2
  120. package/dist/cjs/utils/queuedStorage/createQueuedStorage.native.js.map +1 -1
  121. package/dist/cjs/utils/retry/NonRetryableError.js +2 -2
  122. package/dist/cjs/utils/retry/NonRetryableError.js.map +1 -1
  123. package/dist/cjs/utils/retry/retry.js +15 -6
  124. package/dist/cjs/utils/retry/retry.js.map +1 -1
  125. package/dist/esm/BackgroundProcessManager/BackgroundProcessManager.d.ts +2 -8
  126. package/dist/esm/BackgroundProcessManager/BackgroundProcessManager.mjs +11 -16
  127. package/dist/esm/BackgroundProcessManager/BackgroundProcessManager.mjs.map +1 -1
  128. package/dist/esm/BackgroundProcessManager/types.d.ts +3 -3
  129. package/dist/esm/Cache/StorageCacheCommon.mjs +5 -5
  130. package/dist/esm/Cache/StorageCacheCommon.mjs.map +1 -1
  131. package/dist/esm/Cache/types/cache.d.ts +1 -1
  132. package/dist/esm/Cache/utils/CacheList.mjs +2 -2
  133. package/dist/esm/Cache/utils/CacheList.mjs.map +1 -1
  134. package/dist/esm/Hub/index.d.ts +4 -4
  135. package/dist/esm/Hub/index.mjs +2 -2
  136. package/dist/esm/Hub/index.mjs.map +1 -1
  137. package/dist/esm/Hub/types/AuthTypes.d.ts +11 -11
  138. package/dist/esm/Hub/types/HubTypes.d.ts +8 -8
  139. package/dist/esm/I18n/I18n.d.ts +0 -6
  140. package/dist/esm/I18n/I18n.mjs +8 -13
  141. package/dist/esm/I18n/I18n.mjs.map +1 -1
  142. package/dist/esm/I18n/index.mjs +4 -4
  143. package/dist/esm/I18n/index.mjs.map +1 -1
  144. package/dist/esm/Logger/ConsoleLogger.d.ts +1 -1
  145. package/dist/esm/Logger/ConsoleLogger.mjs +8 -7
  146. package/dist/esm/Logger/ConsoleLogger.mjs.map +1 -1
  147. package/dist/esm/Logger/types.d.ts +2 -1
  148. package/dist/esm/Logger/types.mjs +1 -0
  149. package/dist/esm/Logger/types.mjs.map +1 -1
  150. package/dist/esm/Mutex/Mutex.mjs +4 -1
  151. package/dist/esm/Mutex/Mutex.mjs.map +1 -1
  152. package/dist/esm/Mutex/types.d.ts +2 -6
  153. package/dist/esm/Platform/detectFramework.mjs +3 -1
  154. package/dist/esm/Platform/detectFramework.mjs.map +1 -1
  155. package/dist/esm/Platform/detection/Angular.mjs +2 -4
  156. package/dist/esm/Platform/detection/Angular.mjs.map +1 -1
  157. package/dist/esm/Platform/detection/Expo.mjs +1 -2
  158. package/dist/esm/Platform/detection/Expo.mjs.map +1 -1
  159. package/dist/esm/Platform/detection/Next.mjs +3 -2
  160. package/dist/esm/Platform/detection/Next.mjs.map +1 -1
  161. package/dist/esm/Platform/detection/Nuxt.mjs +3 -4
  162. package/dist/esm/Platform/detection/Nuxt.mjs.map +1 -1
  163. package/dist/esm/Platform/detection/index.mjs.map +1 -1
  164. package/dist/esm/Platform/index.d.ts +2 -2
  165. package/dist/esm/Platform/index.mjs +1 -1
  166. package/dist/esm/Platform/index.mjs.map +1 -1
  167. package/dist/esm/Platform/types.d.ts +12 -12
  168. package/dist/esm/Platform/version.d.ts +1 -1
  169. package/dist/esm/Platform/version.mjs +1 -1
  170. package/dist/esm/Platform/version.mjs.map +1 -1
  171. package/dist/esm/Reachability/Reachability.mjs +6 -2
  172. package/dist/esm/Reachability/Reachability.mjs.map +1 -1
  173. package/dist/esm/Reachability/types.d.ts +2 -2
  174. package/dist/esm/ServiceWorker/ServiceWorker.d.ts +0 -1
  175. package/dist/esm/ServiceWorker/ServiceWorker.mjs +11 -11
  176. package/dist/esm/ServiceWorker/ServiceWorker.mjs.map +1 -1
  177. package/dist/esm/Signer/DateUtils.d.ts +9 -9
  178. package/dist/esm/Signer/DateUtils.mjs +1 -1
  179. package/dist/esm/Signer/DateUtils.mjs.map +1 -1
  180. package/dist/esm/Signer/Signer.mjs +3 -3
  181. package/dist/esm/Signer/Signer.mjs.map +1 -1
  182. package/dist/esm/adapterCore/serverContext/serverContext.d.ts +1 -1
  183. package/dist/esm/adapterCore/serverContext/serverContext.mjs +1 -1
  184. package/dist/esm/adapterCore/serverContext/serverContext.mjs.map +1 -1
  185. package/dist/esm/adapterCore/serverContext/types/amplifyServer.d.ts +7 -9
  186. package/dist/esm/awsClients/cognitoIdentity/base.d.ts +1 -1
  187. package/dist/esm/awsClients/cognitoIdentity/base.mjs +2 -2
  188. package/dist/esm/awsClients/cognitoIdentity/base.mjs.map +1 -1
  189. package/dist/esm/awsClients/cognitoIdentity/getCredentialsForIdentity.d.ts +2 -6
  190. package/dist/esm/awsClients/cognitoIdentity/getCredentialsForIdentity.mjs +1 -1
  191. package/dist/esm/awsClients/cognitoIdentity/getCredentialsForIdentity.mjs.map +1 -1
  192. package/dist/esm/awsClients/cognitoIdentity/getId.d.ts +2 -6
  193. package/dist/esm/awsClients/cognitoIdentity/getId.mjs +1 -1
  194. package/dist/esm/awsClients/cognitoIdentity/getId.mjs.map +1 -1
  195. package/dist/esm/awsClients/cognitoIdentity/types.d.ts +2 -4
  196. package/dist/esm/awsClients/pinpoint/base.mjs.map +1 -1
  197. package/dist/esm/awsClients/pinpoint/getInAppMessages.d.ts +1 -1
  198. package/dist/esm/awsClients/pinpoint/getInAppMessages.mjs +1 -1
  199. package/dist/esm/awsClients/pinpoint/getInAppMessages.mjs.map +1 -1
  200. package/dist/esm/awsClients/pinpoint/putEvents.d.ts +1 -1
  201. package/dist/esm/awsClients/pinpoint/putEvents.mjs +1 -1
  202. package/dist/esm/awsClients/pinpoint/putEvents.mjs.map +1 -1
  203. package/dist/esm/awsClients/pinpoint/types.d.ts +3 -6
  204. package/dist/esm/awsClients/pinpoint/updateEndpoint.d.ts +1 -1
  205. package/dist/esm/awsClients/pinpoint/updateEndpoint.mjs +1 -1
  206. package/dist/esm/awsClients/pinpoint/updateEndpoint.mjs.map +1 -1
  207. package/dist/esm/clients/handlers/authenticated.mjs +6 -6
  208. package/dist/esm/clients/handlers/authenticated.mjs.map +1 -1
  209. package/dist/esm/clients/handlers/unauthenticated.mjs +3 -3
  210. package/dist/esm/clients/handlers/unauthenticated.mjs.map +1 -1
  211. package/dist/esm/clients/index.d.ts +3 -3
  212. package/dist/esm/clients/index.mjs +3 -3
  213. package/dist/esm/clients/internal/composeServiceApi.d.ts +2 -2
  214. package/dist/esm/clients/internal/composeServiceApi.mjs +1 -1
  215. package/dist/esm/clients/internal/composeServiceApi.mjs.map +1 -1
  216. package/dist/esm/clients/internal/composeTransferHandler.d.ts +2 -2
  217. package/dist/esm/clients/internal/composeTransferHandler.mjs +1 -1
  218. package/dist/esm/clients/internal/composeTransferHandler.mjs.map +1 -1
  219. package/dist/esm/clients/middleware/retry/defaultRetryDecider.d.ts +1 -1
  220. package/dist/esm/clients/middleware/retry/defaultRetryDecider.mjs +2 -2
  221. package/dist/esm/clients/middleware/retry/defaultRetryDecider.mjs.map +1 -1
  222. package/dist/esm/clients/middleware/retry/index.d.ts +1 -1
  223. package/dist/esm/clients/middleware/retry/index.mjs +1 -1
  224. package/dist/esm/clients/middleware/retry/jitteredBackoff.mjs.map +1 -1
  225. package/dist/esm/clients/middleware/retry/middleware.d.ts +3 -3
  226. package/dist/esm/clients/middleware/retry/middleware.mjs +5 -5
  227. package/dist/esm/clients/middleware/retry/middleware.mjs.map +1 -1
  228. package/dist/esm/clients/middleware/signing/index.d.ts +1 -1
  229. package/dist/esm/clients/middleware/signing/index.mjs +1 -1
  230. package/dist/esm/clients/middleware/signing/middleware.d.ts +1 -1
  231. package/dist/esm/clients/middleware/signing/middleware.mjs +2 -2
  232. package/dist/esm/clients/middleware/signing/middleware.mjs.map +1 -1
  233. package/dist/esm/clients/middleware/signing/signer/signatureV4/presignUrl.d.ts +1 -1
  234. package/dist/esm/clients/middleware/signing/signer/signatureV4/presignUrl.mjs +1 -2
  235. package/dist/esm/clients/middleware/signing/signer/signatureV4/presignUrl.mjs.map +1 -1
  236. package/dist/esm/clients/middleware/signing/signer/signatureV4/utils/getFormattedDates.mjs +1 -1
  237. package/dist/esm/clients/middleware/signing/signer/signatureV4/utils/getFormattedDates.mjs.map +1 -1
  238. package/dist/esm/clients/middleware/userAgent/index.d.ts +1 -1
  239. package/dist/esm/clients/middleware/userAgent/index.mjs +1 -1
  240. package/dist/esm/clients/middleware/userAgent/middleware.d.ts +1 -1
  241. package/dist/esm/clients/middleware/userAgent/middleware.mjs +2 -2
  242. package/dist/esm/clients/middleware/userAgent/middleware.mjs.map +1 -1
  243. package/dist/esm/clients/serde/json.mjs +1 -1
  244. package/dist/esm/clients/serde/json.mjs.map +1 -1
  245. package/dist/esm/clients/types/aws.d.ts +3 -3
  246. package/dist/esm/clients/types/core.d.ts +3 -5
  247. package/dist/esm/errors/APIError.d.ts +1 -1
  248. package/dist/esm/errors/errorHelpers.mjs +1 -1
  249. package/dist/esm/errors/errorHelpers.mjs.map +1 -1
  250. package/dist/esm/index.d.ts +1 -1
  251. package/dist/esm/libraryUtils.d.ts +1 -1
  252. package/dist/esm/parseAWSExports.mjs +1 -1
  253. package/dist/esm/parseAWSExports.mjs.map +1 -1
  254. package/dist/esm/providers/kinesis/types/kinesis.d.ts +2 -2
  255. package/dist/esm/providers/kinesis-firehose/types/kinesis-firehose.d.ts +2 -2
  256. package/dist/esm/providers/personalize/types/personalize.d.ts +2 -2
  257. package/dist/esm/providers/pinpoint/apis/updateEndpoint.mjs +1 -1
  258. package/dist/esm/providers/pinpoint/apis/updateEndpoint.mjs.map +1 -1
  259. package/dist/esm/providers/pinpoint/types/buffer.d.ts +6 -8
  260. package/dist/esm/providers/pinpoint/types/pinpoint.d.ts +10 -10
  261. package/dist/esm/providers/pinpoint/utils/PinpointEventBuffer.d.ts +1 -1
  262. package/dist/esm/providers/pinpoint/utils/PinpointEventBuffer.mjs +2 -3
  263. package/dist/esm/providers/pinpoint/utils/PinpointEventBuffer.mjs.map +1 -1
  264. package/dist/esm/providers/pinpoint/utils/getEventBuffer.d.ts +1 -1
  265. package/dist/esm/providers/pinpoint/utils/isAppInForeground.native.mjs +0 -1
  266. package/dist/esm/providers/pinpoint/utils/isAppInForeground.native.mjs.map +1 -1
  267. package/dist/esm/singleton/API/types.d.ts +35 -37
  268. package/dist/esm/singleton/Amplify.d.ts +1 -1
  269. package/dist/esm/singleton/Amplify.mjs +1 -1
  270. package/dist/esm/singleton/Amplify.mjs.map +1 -1
  271. package/dist/esm/singleton/Auth/index.d.ts +0 -1
  272. package/dist/esm/singleton/Auth/index.mjs +2 -6
  273. package/dist/esm/singleton/Auth/index.mjs.map +1 -1
  274. package/dist/esm/singleton/Auth/types.d.ts +53 -52
  275. package/dist/esm/singleton/Auth/utils/index.d.ts +1 -1
  276. package/dist/esm/singleton/Auth/utils/index.mjs +4 -4
  277. package/dist/esm/singleton/Auth/utils/index.mjs.map +1 -1
  278. package/dist/esm/singleton/Geo/types.d.ts +3 -3
  279. package/dist/esm/singleton/Interactions/types.d.ts +4 -4
  280. package/dist/esm/singleton/Notifications/types.d.ts +5 -5
  281. package/dist/esm/singleton/Predictions/types.d.ts +28 -28
  282. package/dist/esm/singleton/Storage/types.d.ts +2 -2
  283. package/dist/esm/singleton/apis/fetchAuthSession.mjs +1 -1
  284. package/dist/esm/singleton/apis/fetchAuthSession.mjs.map +1 -1
  285. package/dist/esm/singleton/types.d.ts +8 -8
  286. package/dist/esm/storage/CookieStorage.mjs +8 -4
  287. package/dist/esm/storage/CookieStorage.mjs.map +1 -1
  288. package/dist/esm/storage/CookieStorage.native.d.ts +0 -1
  289. package/dist/esm/storage/CookieStorage.native.mjs +0 -3
  290. package/dist/esm/storage/CookieStorage.native.mjs.map +1 -1
  291. package/dist/esm/types/core.d.ts +2 -2
  292. package/dist/esm/types/errors.d.ts +4 -4
  293. package/dist/esm/types/storage.d.ts +2 -2
  294. package/dist/esm/utils/WordArray.mjs +2 -2
  295. package/dist/esm/utils/WordArray.mjs.map +1 -1
  296. package/dist/esm/utils/deDupeAsyncFunction.d.ts +1 -5
  297. package/dist/esm/utils/deDupeAsyncFunction.mjs +8 -8
  298. package/dist/esm/utils/deDupeAsyncFunction.mjs.map +1 -1
  299. package/dist/esm/utils/getClientInfo/getClientInfo.android.mjs +0 -1
  300. package/dist/esm/utils/getClientInfo/getClientInfo.android.mjs.map +1 -1
  301. package/dist/esm/utils/getClientInfo/getClientInfo.ios.mjs +0 -1
  302. package/dist/esm/utils/getClientInfo/getClientInfo.ios.mjs.map +1 -1
  303. package/dist/esm/utils/globalHelpers/index.native.mjs.map +1 -1
  304. package/dist/esm/utils/queuedStorage/createQueuedStorage.native.mjs +2 -2
  305. package/dist/esm/utils/queuedStorage/createQueuedStorage.native.mjs.map +1 -1
  306. package/dist/esm/utils/retry/NonRetryableError.d.ts +0 -1
  307. package/dist/esm/utils/retry/NonRetryableError.mjs +2 -2
  308. package/dist/esm/utils/retry/NonRetryableError.mjs.map +1 -1
  309. package/dist/esm/utils/retry/retry.mjs +15 -6
  310. package/dist/esm/utils/retry/retry.mjs.map +1 -1
  311. package/dist/esm/utils/sessionListener/SessionListener.d.ts +1 -1
  312. package/dist/esm/utils/sessionListener/SessionListener.native.d.ts +1 -1
  313. package/dist/esm/utils/sessionListener/types.d.ts +2 -2
  314. package/package.json +5 -4
  315. package/src/BackgroundProcessManager/BackgroundProcessManager.ts +29 -34
  316. package/src/BackgroundProcessManager/types.ts +3 -3
  317. package/src/Cache/StorageCache.native.ts +5 -0
  318. package/src/Cache/StorageCache.ts +2 -0
  319. package/src/Cache/StorageCacheCommon.ts +49 -29
  320. package/src/Cache/types/cache.ts +2 -1
  321. package/src/Cache/utils/CacheList.ts +6 -3
  322. package/src/Cache/utils/cacheHelpers.ts +2 -1
  323. package/src/Hub/index.ts +15 -15
  324. package/src/Hub/types/AuthTypes.ts +11 -11
  325. package/src/Hub/types/HubTypes.ts +11 -8
  326. package/src/I18n/I18n.ts +10 -16
  327. package/src/I18n/index.ts +7 -7
  328. package/src/Logger/ConsoleLogger.ts +12 -9
  329. package/src/Logger/types.ts +1 -0
  330. package/src/Mutex/Mutex.ts +8 -4
  331. package/src/Mutex/types.ts +3 -7
  332. package/src/Platform/customUserAgent.ts +3 -3
  333. package/src/Platform/detectFramework.ts +4 -1
  334. package/src/Platform/detection/Angular.ts +4 -4
  335. package/src/Platform/detection/Expo.ts +1 -2
  336. package/src/Platform/detection/Next.ts +5 -2
  337. package/src/Platform/detection/Nuxt.ts +5 -4
  338. package/src/Platform/detection/index.ts +9 -9
  339. package/src/Platform/index.ts +4 -4
  340. package/src/Platform/types.ts +12 -12
  341. package/src/Platform/version.ts +1 -1
  342. package/src/Reachability/Reachability.native.ts +6 -3
  343. package/src/Reachability/Reachability.ts +12 -6
  344. package/src/Reachability/types.ts +2 -2
  345. package/src/ServiceWorker/ServiceWorker.ts +28 -23
  346. package/src/Signer/DateUtils.ts +16 -16
  347. package/src/Signer/Signer.ts +19 -13
  348. package/src/adapterCore/serverContext/serverContext.ts +6 -5
  349. package/src/adapterCore/serverContext/serverContextRegistry.ts +2 -1
  350. package/src/adapterCore/serverContext/types/amplifyServer.ts +15 -17
  351. package/src/adapterCore/serverContext/types/cookieStorage.ts +1 -1
  352. package/src/awsClients/cognitoIdentity/base.ts +16 -12
  353. package/src/awsClients/cognitoIdentity/getCredentialsForIdentity.ts +13 -10
  354. package/src/awsClients/cognitoIdentity/getId.ts +12 -9
  355. package/src/awsClients/cognitoIdentity/types.ts +3 -3
  356. package/src/awsClients/pinpoint/base.ts +1 -1
  357. package/src/awsClients/pinpoint/getInAppMessages.ts +8 -5
  358. package/src/awsClients/pinpoint/putEvents.ts +8 -5
  359. package/src/awsClients/pinpoint/types.ts +3 -4
  360. package/src/awsClients/pinpoint/updateEndpoint.ts +8 -5
  361. package/src/clients/endpoints/getDnsSuffix.ts +1 -0
  362. package/src/clients/handlers/authenticated.ts +14 -7
  363. package/src/clients/handlers/fetch.ts +1 -1
  364. package/src/clients/handlers/unauthenticated.ts +8 -4
  365. package/src/clients/index.ts +6 -3
  366. package/src/clients/internal/composeServiceApi.ts +8 -7
  367. package/src/clients/internal/composeTransferHandler.ts +7 -6
  368. package/src/clients/middleware/retry/defaultRetryDecider.ts +5 -3
  369. package/src/clients/middleware/retry/index.ts +1 -1
  370. package/src/clients/middleware/retry/jitteredBackoff.ts +3 -1
  371. package/src/clients/middleware/retry/middleware.ts +12 -9
  372. package/src/clients/middleware/signing/index.ts +1 -1
  373. package/src/clients/middleware/signing/middleware.ts +5 -2
  374. package/src/clients/middleware/signing/signer/signatureV4/presignUrl.ts +4 -4
  375. package/src/clients/middleware/signing/signer/signatureV4/signRequest.ts +2 -1
  376. package/src/clients/middleware/signing/signer/signatureV4/utils/dataHashHelpers.ts +4 -2
  377. package/src/clients/middleware/signing/signer/signatureV4/utils/getCanonicalQueryString.ts +2 -1
  378. package/src/clients/middleware/signing/signer/signatureV4/utils/getCanonicalRequest.ts +2 -1
  379. package/src/clients/middleware/signing/signer/signatureV4/utils/getCanonicalUri.ts +1 -1
  380. package/src/clients/middleware/signing/signer/signatureV4/utils/getCredentialScope.ts +1 -1
  381. package/src/clients/middleware/signing/signer/signatureV4/utils/getFormattedDates.ts +2 -1
  382. package/src/clients/middleware/signing/signer/signatureV4/utils/getHashedPayload.ts +3 -0
  383. package/src/clients/middleware/signing/signer/signatureV4/utils/getSignature.ts +4 -3
  384. package/src/clients/middleware/signing/signer/signatureV4/utils/getSigningKey.ts +3 -1
  385. package/src/clients/middleware/signing/signer/signatureV4/utils/getSigningValues.ts +3 -1
  386. package/src/clients/middleware/signing/signer/signatureV4/utils/getStringToSign.ts +2 -2
  387. package/src/clients/middleware/signing/utils/getUpdatedSystemClockOffset.ts +2 -1
  388. package/src/clients/middleware/signing/utils/isClockSkewed.ts +2 -2
  389. package/src/clients/middleware/userAgent/index.ts +1 -1
  390. package/src/clients/middleware/userAgent/middleware.ts +3 -1
  391. package/src/clients/serde/json.ts +6 -2
  392. package/src/clients/serde/responseInfo.ts +6 -2
  393. package/src/clients/types/aws.ts +6 -3
  394. package/src/clients/types/core.ts +6 -8
  395. package/src/clients/types/http.ts +2 -1
  396. package/src/clients/utils/memoization.ts +2 -0
  397. package/src/errors/APIError.ts +3 -2
  398. package/src/errors/PlatformNotSupportedError.ts +1 -0
  399. package/src/errors/createAssertionFunction.ts +2 -1
  400. package/src/errors/errorHelpers.ts +2 -1
  401. package/src/index.ts +0 -1
  402. package/src/libraryUtils.ts +1 -0
  403. package/src/parseAWSExports.ts +12 -11
  404. package/src/providers/kinesis/types/kinesis.ts +2 -2
  405. package/src/providers/kinesis-firehose/types/kinesis-firehose.ts +2 -2
  406. package/src/providers/personalize/types/personalize.ts +2 -2
  407. package/src/providers/pinpoint/apis/updateEndpoint.ts +2 -2
  408. package/src/providers/pinpoint/types/buffer.ts +7 -8
  409. package/src/providers/pinpoint/types/pinpoint.ts +11 -10
  410. package/src/providers/pinpoint/utils/PinpointEventBuffer.ts +11 -21
  411. package/src/providers/pinpoint/utils/cacheEndpointId.ts +3 -1
  412. package/src/providers/pinpoint/utils/getCacheKey.ts +1 -1
  413. package/src/providers/pinpoint/utils/getEndpointId.ts +3 -1
  414. package/src/providers/pinpoint/utils/getEventBuffer.ts +2 -1
  415. package/src/providers/pinpoint/utils/isAppInForeground.native.ts +0 -1
  416. package/src/providers/pinpoint/utils/resolveEndpointId.ts +1 -0
  417. package/src/singleton/API/types.ts +35 -33
  418. package/src/singleton/Amplify.ts +8 -6
  419. package/src/singleton/Auth/index.ts +9 -13
  420. package/src/singleton/Auth/types.ts +59 -51
  421. package/src/singleton/Auth/utils/index.ts +16 -28
  422. package/src/singleton/Geo/types.ts +3 -3
  423. package/src/singleton/Interactions/types.ts +4 -4
  424. package/src/singleton/Notifications/types.ts +6 -5
  425. package/src/singleton/Predictions/types.ts +28 -28
  426. package/src/singleton/Storage/types.ts +2 -2
  427. package/src/singleton/apis/fetchAuthSession.ts +2 -1
  428. package/src/singleton/apis/internal/fetchAuthSession.ts +1 -1
  429. package/src/singleton/apis/server/fetchAuthSession.ts +2 -2
  430. package/src/singleton/types.ts +10 -10
  431. package/src/storage/CookieStorage.native.ts +1 -5
  432. package/src/storage/CookieStorage.ts +12 -6
  433. package/src/storage/DefaultStorage.native.ts +3 -1
  434. package/src/storage/InMemoryStorage.ts +1 -0
  435. package/src/storage/KeyValueStorage.ts +1 -0
  436. package/src/types/core.ts +3 -3
  437. package/src/types/errors.ts +5 -5
  438. package/src/types/storage.ts +2 -2
  439. package/src/utils/WordArray.ts +2 -2
  440. package/src/utils/convert/base64/base64Encoder.ts +1 -0
  441. package/src/utils/convert/types.ts +1 -1
  442. package/src/utils/cryptoSecureRandomInt.ts +1 -0
  443. package/src/utils/deDupeAsyncFunction.ts +15 -20
  444. package/src/utils/generateRandomString.ts +1 -1
  445. package/src/utils/getClientInfo/getClientInfo.android.ts +3 -2
  446. package/src/utils/getClientInfo/getClientInfo.ios.ts +4 -2
  447. package/src/utils/getClientInfo/getClientInfo.ts +3 -3
  448. package/src/utils/globalHelpers/index.native.ts +2 -1
  449. package/src/utils/haveCredentialsChanged.ts +5 -2
  450. package/src/utils/isWebWorker.ts +1 -0
  451. package/src/utils/queuedStorage/createQueuedStorage.native.ts +8 -5
  452. package/src/utils/queuedStorage/createQueuedStorage.ts +7 -3
  453. package/src/utils/queuedStorage/types.ts +1 -1
  454. package/src/utils/retry/NonRetryableError.ts +0 -3
  455. package/src/utils/retry/isNonRetryableError.ts +1 -0
  456. package/src/utils/retry/jitteredBackoff.ts +3 -1
  457. package/src/utils/retry/jitteredExponentialRetry.ts +1 -1
  458. package/src/utils/retry/retry.ts +22 -8
  459. package/src/utils/sessionListener/SessionListener.native.ts +4 -3
  460. package/src/utils/sessionListener/SessionListener.ts +4 -3
  461. package/src/utils/sessionListener/index.ts +1 -0
  462. package/src/utils/sessionListener/types.ts +2 -2
  463. package/src/utils/urlSafeDecode.ts +1 -0
@@ -3,12 +3,12 @@
3
3
  // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
4
4
  // SPDX-License-Identifier: Apache-2.0
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.retryMiddleware = void 0;
6
+ exports.retryMiddlewareFactory = void 0;
7
7
  const DEFAULT_RETRY_ATTEMPTS = 3;
8
8
  /**
9
9
  * Retry middleware
10
10
  */
11
- const retryMiddleware = ({ maxAttempts = DEFAULT_RETRY_ATTEMPTS, retryDecider, computeDelay, abortSignal, }) => {
11
+ const retryMiddlewareFactory = ({ maxAttempts = DEFAULT_RETRY_ATTEMPTS, retryDecider, computeDelay, abortSignal, }) => {
12
12
  if (maxAttempts < 1) {
13
13
  throw new Error('maxAttempts must be greater than 0');
14
14
  }
@@ -62,7 +62,7 @@ const retryMiddleware = ({ maxAttempts = DEFAULT_RETRY_ATTEMPTS, retryDecider, c
62
62
  }
63
63
  };
64
64
  };
65
- exports.retryMiddleware = retryMiddleware;
65
+ exports.retryMiddlewareFactory = retryMiddlewareFactory;
66
66
  const cancellableSleep = (timeoutMs, abortSignal) => {
67
67
  if (abortSignal?.aborted) {
68
68
  return Promise.resolve();
@@ -73,7 +73,7 @@ const cancellableSleep = (timeoutMs, abortSignal) => {
73
73
  sleepPromiseResolveFn = resolve;
74
74
  timeoutId = setTimeout(resolve, timeoutMs);
75
75
  });
76
- abortSignal?.addEventListener('abort', function cancelSleep(event) {
76
+ abortSignal?.addEventListener('abort', function cancelSleep(_) {
77
77
  clearTimeout(timeoutId);
78
78
  abortSignal?.removeEventListener('abort', cancelSleep);
79
79
  sleepPromiseResolveFn();
@@ -84,8 +84,8 @@ const addOrIncrementMetadataAttempts = (nextHandlerOutput, attempts) => {
84
84
  if (Object.prototype.toString.call(nextHandlerOutput) !== '[object Object]') {
85
85
  return;
86
86
  }
87
- nextHandlerOutput['$metadata'] = {
88
- ...(nextHandlerOutput['$metadata'] ?? {}),
87
+ nextHandlerOutput.$metadata = {
88
+ ...(nextHandlerOutput.$metadata ?? {}),
89
89
  attempts,
90
90
  };
91
91
  };
@@ -1 +1 @@
1
- {"version":3,"file":"middleware.js","sources":["../../../../../src/clients/middleware/retry/middleware.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.retryMiddleware = void 0;\nconst DEFAULT_RETRY_ATTEMPTS = 3;\n/**\n * Retry middleware\n */\nconst retryMiddleware = ({ maxAttempts = DEFAULT_RETRY_ATTEMPTS, retryDecider, computeDelay, abortSignal, }) => {\n if (maxAttempts < 1) {\n throw new Error('maxAttempts must be greater than 0');\n }\n return (next, context) => async function retryMiddleware(request) {\n let error;\n let attemptsCount = context.attemptsCount ?? 0;\n let response;\n // When retry is not needed or max attempts is reached, either error or response will be set. This function handles either cases.\n const handleTerminalErrorOrResponse = () => {\n if (response) {\n addOrIncrementMetadataAttempts(response, attemptsCount);\n return response;\n }\n else {\n addOrIncrementMetadataAttempts(error, attemptsCount);\n throw error;\n }\n };\n while (!abortSignal?.aborted && attemptsCount < maxAttempts) {\n try {\n response = await next(request);\n error = undefined;\n }\n catch (e) {\n error = e;\n response = undefined;\n }\n // context.attemptsCount may be updated after calling next handler which may retry the request by itself.\n attemptsCount =\n (context.attemptsCount ?? 0) > attemptsCount\n ? context.attemptsCount ?? 0\n : attemptsCount + 1;\n context.attemptsCount = attemptsCount;\n if (await retryDecider(response, error)) {\n if (!abortSignal?.aborted && attemptsCount < maxAttempts) {\n // prevent sleep for last attempt or cancelled request;\n const delay = computeDelay(attemptsCount);\n await cancellableSleep(delay, abortSignal);\n }\n continue;\n }\n else {\n return handleTerminalErrorOrResponse();\n }\n }\n if (abortSignal?.aborted) {\n throw new Error('Request aborted.');\n }\n else {\n return handleTerminalErrorOrResponse();\n }\n };\n};\nexports.retryMiddleware = retryMiddleware;\nconst cancellableSleep = (timeoutMs, abortSignal) => {\n if (abortSignal?.aborted) {\n return Promise.resolve();\n }\n let timeoutId;\n let sleepPromiseResolveFn;\n const sleepPromise = new Promise(resolve => {\n sleepPromiseResolveFn = resolve;\n timeoutId = setTimeout(resolve, timeoutMs);\n });\n abortSignal?.addEventListener('abort', function cancelSleep(event) {\n clearTimeout(timeoutId);\n abortSignal?.removeEventListener('abort', cancelSleep);\n sleepPromiseResolveFn();\n });\n return sleepPromise;\n};\nconst addOrIncrementMetadataAttempts = (nextHandlerOutput, attempts) => {\n if (Object.prototype.toString.call(nextHandlerOutput) !== '[object Object]') {\n return;\n }\n nextHandlerOutput['$metadata'] = {\n ...(nextHandlerOutput['$metadata'] ?? {}),\n attempts,\n };\n};\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"middleware.js","sources":["../../../../../src/clients/middleware/retry/middleware.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.retryMiddlewareFactory = void 0;\nconst DEFAULT_RETRY_ATTEMPTS = 3;\n/**\n * Retry middleware\n */\nconst retryMiddlewareFactory = ({ maxAttempts = DEFAULT_RETRY_ATTEMPTS, retryDecider, computeDelay, abortSignal, }) => {\n if (maxAttempts < 1) {\n throw new Error('maxAttempts must be greater than 0');\n }\n return (next, context) => async function retryMiddleware(request) {\n let error;\n let attemptsCount = context.attemptsCount ?? 0;\n let response;\n // When retry is not needed or max attempts is reached, either error or response will be set. This function handles either cases.\n const handleTerminalErrorOrResponse = () => {\n if (response) {\n addOrIncrementMetadataAttempts(response, attemptsCount);\n return response;\n }\n else {\n addOrIncrementMetadataAttempts(error, attemptsCount);\n throw error;\n }\n };\n while (!abortSignal?.aborted && attemptsCount < maxAttempts) {\n try {\n response = await next(request);\n error = undefined;\n }\n catch (e) {\n error = e;\n response = undefined;\n }\n // context.attemptsCount may be updated after calling next handler which may retry the request by itself.\n attemptsCount =\n (context.attemptsCount ?? 0) > attemptsCount\n ? context.attemptsCount ?? 0\n : attemptsCount + 1;\n context.attemptsCount = attemptsCount;\n if (await retryDecider(response, error)) {\n if (!abortSignal?.aborted && attemptsCount < maxAttempts) {\n // prevent sleep for last attempt or cancelled request;\n const delay = computeDelay(attemptsCount);\n await cancellableSleep(delay, abortSignal);\n }\n continue;\n }\n else {\n return handleTerminalErrorOrResponse();\n }\n }\n if (abortSignal?.aborted) {\n throw new Error('Request aborted.');\n }\n else {\n return handleTerminalErrorOrResponse();\n }\n };\n};\nexports.retryMiddlewareFactory = retryMiddlewareFactory;\nconst cancellableSleep = (timeoutMs, abortSignal) => {\n if (abortSignal?.aborted) {\n return Promise.resolve();\n }\n let timeoutId;\n let sleepPromiseResolveFn;\n const sleepPromise = new Promise(resolve => {\n sleepPromiseResolveFn = resolve;\n timeoutId = setTimeout(resolve, timeoutMs);\n });\n abortSignal?.addEventListener('abort', function cancelSleep(_) {\n clearTimeout(timeoutId);\n abortSignal?.removeEventListener('abort', cancelSleep);\n sleepPromiseResolveFn();\n });\n return sleepPromise;\n};\nconst addOrIncrementMetadataAttempts = (nextHandlerOutput, attempts) => {\n if (Object.prototype.toString.call(nextHandlerOutput) !== '[object Object]') {\n return;\n }\n nextHandlerOutput.$metadata = {\n ...(nextHandlerOutput.$metadata ?? {}),\n attempts,\n };\n};\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9D,OAAO,CAAC,sBAAsB,GAAG,KAAK,CAAC,CAAC;AACxC,MAAM,sBAAsB,GAAG,CAAC,CAAC;AACjC;AACA;AACA;AACA,MAAM,sBAAsB,GAAG,CAAC,EAAE,WAAW,GAAG,sBAAsB,EAAE,YAAY,EAAE,YAAY,EAAE,WAAW,GAAG,KAAK;AACvH,IAAI,IAAI,WAAW,GAAG,CAAC,EAAE;AACzB,QAAQ,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;AAC9D,KAAK;AACL,IAAI,OAAO,CAAC,IAAI,EAAE,OAAO,KAAK,eAAe,eAAe,CAAC,OAAO,EAAE;AACtE,QAAQ,IAAI,KAAK,CAAC;AAClB,QAAQ,IAAI,aAAa,GAAG,OAAO,CAAC,aAAa,IAAI,CAAC,CAAC;AACvD,QAAQ,IAAI,QAAQ,CAAC;AACrB;AACA,QAAQ,MAAM,6BAA6B,GAAG,MAAM;AACpD,YAAY,IAAI,QAAQ,EAAE;AAC1B,gBAAgB,8BAA8B,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;AACxE,gBAAgB,OAAO,QAAQ,CAAC;AAChC,aAAa;AACb,iBAAiB;AACjB,gBAAgB,8BAA8B,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;AACrE,gBAAgB,MAAM,KAAK,CAAC;AAC5B,aAAa;AACb,SAAS,CAAC;AACV,QAAQ,OAAO,CAAC,WAAW,EAAE,OAAO,IAAI,aAAa,GAAG,WAAW,EAAE;AACrE,YAAY,IAAI;AAChB,gBAAgB,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,CAAC;AAC/C,gBAAgB,KAAK,GAAG,SAAS,CAAC;AAClC,aAAa;AACb,YAAY,OAAO,CAAC,EAAE;AACtB,gBAAgB,KAAK,GAAG,CAAC,CAAC;AAC1B,gBAAgB,QAAQ,GAAG,SAAS,CAAC;AACrC,aAAa;AACb;AACA,YAAY,aAAa;AACzB,gBAAgB,CAAC,OAAO,CAAC,aAAa,IAAI,CAAC,IAAI,aAAa;AAC5D,sBAAsB,OAAO,CAAC,aAAa,IAAI,CAAC;AAChD,sBAAsB,aAAa,GAAG,CAAC,CAAC;AACxC,YAAY,OAAO,CAAC,aAAa,GAAG,aAAa,CAAC;AAClD,YAAY,IAAI,MAAM,YAAY,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE;AACrD,gBAAgB,IAAI,CAAC,WAAW,EAAE,OAAO,IAAI,aAAa,GAAG,WAAW,EAAE;AAC1E;AACA,oBAAoB,MAAM,KAAK,GAAG,YAAY,CAAC,aAAa,CAAC,CAAC;AAC9D,oBAAoB,MAAM,gBAAgB,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;AAC/D,iBAAiB;AACjB,gBAAgB,SAAS;AACzB,aAAa;AACb,iBAAiB;AACjB,gBAAgB,OAAO,6BAA6B,EAAE,CAAC;AACvD,aAAa;AACb,SAAS;AACT,QAAQ,IAAI,WAAW,EAAE,OAAO,EAAE;AAClC,YAAY,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;AAChD,SAAS;AACT,aAAa;AACb,YAAY,OAAO,6BAA6B,EAAE,CAAC;AACnD,SAAS;AACT,KAAK,CAAC;AACN,CAAC,CAAC;AACF,OAAO,CAAC,sBAAsB,GAAG,sBAAsB,CAAC;AACxD,MAAM,gBAAgB,GAAG,CAAC,SAAS,EAAE,WAAW,KAAK;AACrD,IAAI,IAAI,WAAW,EAAE,OAAO,EAAE;AAC9B,QAAQ,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;AACjC,KAAK;AACL,IAAI,IAAI,SAAS,CAAC;AAClB,IAAI,IAAI,qBAAqB,CAAC;AAC9B,IAAI,MAAM,YAAY,GAAG,IAAI,OAAO,CAAC,OAAO,IAAI;AAChD,QAAQ,qBAAqB,GAAG,OAAO,CAAC;AACxC,QAAQ,SAAS,GAAG,UAAU,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;AACnD,KAAK,CAAC,CAAC;AACP,IAAI,WAAW,EAAE,gBAAgB,CAAC,OAAO,EAAE,SAAS,WAAW,CAAC,CAAC,EAAE;AACnE,QAAQ,YAAY,CAAC,SAAS,CAAC,CAAC;AAChC,QAAQ,WAAW,EAAE,mBAAmB,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;AAC/D,QAAQ,qBAAqB,EAAE,CAAC;AAChC,KAAK,CAAC,CAAC;AACP,IAAI,OAAO,YAAY,CAAC;AACxB,CAAC,CAAC;AACF,MAAM,8BAA8B,GAAG,CAAC,iBAAiB,EAAE,QAAQ,KAAK;AACxE,IAAI,IAAI,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,KAAK,iBAAiB,EAAE;AACjF,QAAQ,OAAO;AACf,KAAK;AACL,IAAI,iBAAiB,CAAC,SAAS,GAAG;AAClC,QAAQ,IAAI,iBAAiB,CAAC,SAAS,IAAI,EAAE;AAC7C,QAAQ,QAAQ;AAChB,KAAK,CAAC;AACN,CAAC;;"}
@@ -3,7 +3,7 @@
3
3
  // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
4
4
  // SPDX-License-Identifier: Apache-2.0
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.signingMiddleware = void 0;
6
+ exports.signingMiddlewareFactory = void 0;
7
7
  var middleware_1 = require("./middleware");
8
- Object.defineProperty(exports, "signingMiddleware", { enumerable: true, get: function () { return middleware_1.signingMiddleware; } });
8
+ Object.defineProperty(exports, "signingMiddlewareFactory", { enumerable: true, get: function () { return middleware_1.signingMiddlewareFactory; } });
9
9
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../../src/clients/middleware/signing/index.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.signingMiddleware = void 0;\nvar middleware_1 = require(\"./middleware\");\nObject.defineProperty(exports, \"signingMiddleware\", { enumerable: true, get: function () { return middleware_1.signingMiddleware; } });\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9D,OAAO,CAAC,iBAAiB,GAAG,KAAK,CAAC,CAAC;AACnC,IAAI,YAAY,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;AAC3C,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,mBAAmB,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,YAAY,EAAE,OAAO,YAAY,CAAC,iBAAiB,CAAC,EAAE,EAAE,CAAC;;"}
1
+ {"version":3,"file":"index.js","sources":["../../../../../src/clients/middleware/signing/index.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.signingMiddlewareFactory = void 0;\nvar middleware_1 = require(\"./middleware\");\nObject.defineProperty(exports, \"signingMiddlewareFactory\", { enumerable: true, get: function () { return middleware_1.signingMiddlewareFactory; } });\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9D,OAAO,CAAC,wBAAwB,GAAG,KAAK,CAAC,CAAC;AAC1C,IAAI,YAAY,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;AAC3C,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,0BAA0B,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,YAAY,EAAE,OAAO,YAAY,CAAC,wBAAwB,CAAC,EAAE,EAAE,CAAC;;"}
@@ -3,7 +3,7 @@
3
3
  // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
4
4
  // SPDX-License-Identifier: Apache-2.0
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.signingMiddleware = void 0;
6
+ exports.signingMiddlewareFactory = void 0;
7
7
  const signatureV4_1 = require("./signer/signatureV4");
8
8
  const getSkewCorrectedDate_1 = require("./utils/getSkewCorrectedDate");
9
9
  const getUpdatedSystemClockOffset_1 = require("./utils/getUpdatedSystemClockOffset");
@@ -11,7 +11,7 @@ const getUpdatedSystemClockOffset_1 = require("./utils/getUpdatedSystemClockOffs
11
11
  * Middleware that SigV4 signs request with AWS credentials, and correct system clock offset.
12
12
  * This middleware is expected to be placed after retry middleware.
13
13
  */
14
- const signingMiddleware = ({ credentials, region, service, uriEscapePath = true, }) => {
14
+ const signingMiddlewareFactory = ({ credentials, region, service, uriEscapePath = true, }) => {
15
15
  let currentSystemClockOffset;
16
16
  return (next) => async function signingMiddleware(request) {
17
17
  currentSystemClockOffset = currentSystemClockOffset ?? 0;
@@ -34,6 +34,6 @@ const signingMiddleware = ({ credentials, region, service, uriEscapePath = true,
34
34
  return response;
35
35
  };
36
36
  };
37
- exports.signingMiddleware = signingMiddleware;
37
+ exports.signingMiddlewareFactory = signingMiddlewareFactory;
38
38
  const getDateHeader = ({ headers } = {}) => headers?.date ?? headers?.Date ?? headers?.['x-amz-date'];
39
39
  //# sourceMappingURL=middleware.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"middleware.js","sources":["../../../../../src/clients/middleware/signing/middleware.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.signingMiddleware = void 0;\nconst signatureV4_1 = require(\"./signer/signatureV4\");\nconst getSkewCorrectedDate_1 = require(\"./utils/getSkewCorrectedDate\");\nconst getUpdatedSystemClockOffset_1 = require(\"./utils/getUpdatedSystemClockOffset\");\n/**\n * Middleware that SigV4 signs request with AWS credentials, and correct system clock offset.\n * This middleware is expected to be placed after retry middleware.\n */\nconst signingMiddleware = ({ credentials, region, service, uriEscapePath = true, }) => {\n let currentSystemClockOffset;\n return (next) => async function signingMiddleware(request) {\n currentSystemClockOffset = currentSystemClockOffset ?? 0;\n const signRequestOptions = {\n credentials: typeof credentials === 'function' ? await credentials() : credentials,\n signingDate: (0, getSkewCorrectedDate_1.getSkewCorrectedDate)(currentSystemClockOffset),\n signingRegion: region,\n signingService: service,\n uriEscapePath,\n };\n const signedRequest = await (0, signatureV4_1.signRequest)(request, signRequestOptions);\n const response = await next(signedRequest);\n // Update system clock offset if response contains date header, regardless of the status code.\n // non-2xx response will still be returned from next handler instead of thrown, because it's\n // only thrown by the retry middleware.\n const dateString = getDateHeader(response);\n if (dateString) {\n currentSystemClockOffset = (0, getUpdatedSystemClockOffset_1.getUpdatedSystemClockOffset)(Date.parse(dateString), currentSystemClockOffset);\n }\n return response;\n };\n};\nexports.signingMiddleware = signingMiddleware;\nconst getDateHeader = ({ headers } = {}) => headers?.date ?? headers?.Date ?? headers?.['x-amz-date'];\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9D,OAAO,CAAC,iBAAiB,GAAG,KAAK,CAAC,CAAC;AACnC,MAAM,aAAa,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAAC;AACtD,MAAM,sBAAsB,GAAG,OAAO,CAAC,8BAA8B,CAAC,CAAC;AACvE,MAAM,6BAA6B,GAAG,OAAO,CAAC,qCAAqC,CAAC,CAAC;AACrF;AACA;AACA;AACA;AACA,MAAM,iBAAiB,GAAG,CAAC,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,GAAG,IAAI,GAAG,KAAK;AACvF,IAAI,IAAI,wBAAwB,CAAC;AACjC,IAAI,OAAO,CAAC,IAAI,KAAK,eAAe,iBAAiB,CAAC,OAAO,EAAE;AAC/D,QAAQ,wBAAwB,GAAG,wBAAwB,IAAI,CAAC,CAAC;AACjE,QAAQ,MAAM,kBAAkB,GAAG;AACnC,YAAY,WAAW,EAAE,OAAO,WAAW,KAAK,UAAU,GAAG,MAAM,WAAW,EAAE,GAAG,WAAW;AAC9F,YAAY,WAAW,EAAE,IAAI,sBAAsB,CAAC,oBAAoB,EAAE,wBAAwB,CAAC;AACnG,YAAY,aAAa,EAAE,MAAM;AACjC,YAAY,cAAc,EAAE,OAAO;AACnC,YAAY,aAAa;AACzB,SAAS,CAAC;AACV,QAAQ,MAAM,aAAa,GAAG,MAAM,IAAI,aAAa,CAAC,WAAW,EAAE,OAAO,EAAE,kBAAkB,CAAC,CAAC;AAChG,QAAQ,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,CAAC;AACnD;AACA;AACA;AACA,QAAQ,MAAM,UAAU,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC;AACnD,QAAQ,IAAI,UAAU,EAAE;AACxB,YAAY,wBAAwB,GAAG,IAAI,6BAA6B,CAAC,2BAA2B,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,wBAAwB,CAAC,CAAC;AACxJ,SAAS;AACT,QAAQ,OAAO,QAAQ,CAAC;AACxB,KAAK,CAAC;AACN,CAAC,CAAC;AACF,OAAO,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;AAC9C,MAAM,aAAa,GAAG,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,KAAK,OAAO,EAAE,IAAI,IAAI,OAAO,EAAE,IAAI,IAAI,OAAO,GAAG,YAAY,CAAC;;"}
1
+ {"version":3,"file":"middleware.js","sources":["../../../../../src/clients/middleware/signing/middleware.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.signingMiddlewareFactory = void 0;\nconst signatureV4_1 = require(\"./signer/signatureV4\");\nconst getSkewCorrectedDate_1 = require(\"./utils/getSkewCorrectedDate\");\nconst getUpdatedSystemClockOffset_1 = require(\"./utils/getUpdatedSystemClockOffset\");\n/**\n * Middleware that SigV4 signs request with AWS credentials, and correct system clock offset.\n * This middleware is expected to be placed after retry middleware.\n */\nconst signingMiddlewareFactory = ({ credentials, region, service, uriEscapePath = true, }) => {\n let currentSystemClockOffset;\n return (next) => async function signingMiddleware(request) {\n currentSystemClockOffset = currentSystemClockOffset ?? 0;\n const signRequestOptions = {\n credentials: typeof credentials === 'function' ? await credentials() : credentials,\n signingDate: (0, getSkewCorrectedDate_1.getSkewCorrectedDate)(currentSystemClockOffset),\n signingRegion: region,\n signingService: service,\n uriEscapePath,\n };\n const signedRequest = await (0, signatureV4_1.signRequest)(request, signRequestOptions);\n const response = await next(signedRequest);\n // Update system clock offset if response contains date header, regardless of the status code.\n // non-2xx response will still be returned from next handler instead of thrown, because it's\n // only thrown by the retry middleware.\n const dateString = getDateHeader(response);\n if (dateString) {\n currentSystemClockOffset = (0, getUpdatedSystemClockOffset_1.getUpdatedSystemClockOffset)(Date.parse(dateString), currentSystemClockOffset);\n }\n return response;\n };\n};\nexports.signingMiddlewareFactory = signingMiddlewareFactory;\nconst getDateHeader = ({ headers } = {}) => headers?.date ?? headers?.Date ?? headers?.['x-amz-date'];\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9D,OAAO,CAAC,wBAAwB,GAAG,KAAK,CAAC,CAAC;AAC1C,MAAM,aAAa,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAAC;AACtD,MAAM,sBAAsB,GAAG,OAAO,CAAC,8BAA8B,CAAC,CAAC;AACvE,MAAM,6BAA6B,GAAG,OAAO,CAAC,qCAAqC,CAAC,CAAC;AACrF;AACA;AACA;AACA;AACA,MAAM,wBAAwB,GAAG,CAAC,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,GAAG,IAAI,GAAG,KAAK;AAC9F,IAAI,IAAI,wBAAwB,CAAC;AACjC,IAAI,OAAO,CAAC,IAAI,KAAK,eAAe,iBAAiB,CAAC,OAAO,EAAE;AAC/D,QAAQ,wBAAwB,GAAG,wBAAwB,IAAI,CAAC,CAAC;AACjE,QAAQ,MAAM,kBAAkB,GAAG;AACnC,YAAY,WAAW,EAAE,OAAO,WAAW,KAAK,UAAU,GAAG,MAAM,WAAW,EAAE,GAAG,WAAW;AAC9F,YAAY,WAAW,EAAE,IAAI,sBAAsB,CAAC,oBAAoB,EAAE,wBAAwB,CAAC;AACnG,YAAY,aAAa,EAAE,MAAM;AACjC,YAAY,cAAc,EAAE,OAAO;AACnC,YAAY,aAAa;AACzB,SAAS,CAAC;AACV,QAAQ,MAAM,aAAa,GAAG,MAAM,IAAI,aAAa,CAAC,WAAW,EAAE,OAAO,EAAE,kBAAkB,CAAC,CAAC;AAChG,QAAQ,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,CAAC;AACnD;AACA;AACA;AACA,QAAQ,MAAM,UAAU,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC;AACnD,QAAQ,IAAI,UAAU,EAAE;AACxB,YAAY,wBAAwB,GAAG,IAAI,6BAA6B,CAAC,2BAA2B,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,wBAAwB,CAAC,CAAC;AACxJ,SAAS;AACT,QAAQ,OAAO,QAAQ,CAAC;AACxB,KAAK,CAAC;AACN,CAAC,CAAC;AACF,OAAO,CAAC,wBAAwB,GAAG,wBAAwB,CAAC;AAC5D,MAAM,aAAa,GAAG,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,KAAK,OAAO,EAAE,IAAI,IAAI,OAAO,EAAE,IAAI,IAAI,OAAO,GAAG,YAAY,CAAC;;"}
@@ -4,10 +4,10 @@
4
4
  // SPDX-License-Identifier: Apache-2.0
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.presignUrl = void 0;
7
+ const amplifyUrl_1 = require("../../../../../utils/amplifyUrl");
7
8
  const constants_1 = require("./constants");
8
9
  const getSigningValues_1 = require("./utils/getSigningValues");
9
10
  const getSignature_1 = require("./utils/getSignature");
10
- const amplifyUrl_1 = require("../../../../../utils/amplifyUrl");
11
11
  /**
12
12
  * Given a `Presignable` object, returns a Signature Version 4 presigned `URL` object.
13
13
  *
@@ -19,7 +19,6 @@ const presignUrl = ({ body, method = 'GET', url }, { expiration, ...options }) =
19
19
  const signingValues = (0, getSigningValues_1.getSigningValues)(options);
20
20
  const { accessKeyId, credentialScope, longDate, sessionToken } = signingValues;
21
21
  // create the request to sign
22
- // @ts-ignore URL constructor accepts a URL object
23
22
  const presignedUrl = new amplifyUrl_1.AmplifyUrl(url);
24
23
  Object.entries({
25
24
  [constants_1.ALGORITHM_QUERY_PARAM]: constants_1.SHA256_ALGORITHM_IDENTIFIER,
@@ -1 +1 @@
1
- {"version":3,"file":"presignUrl.js","sources":["../../../../../../../src/clients/middleware/signing/signer/signatureV4/presignUrl.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.presignUrl = void 0;\nconst constants_1 = require(\"./constants\");\nconst getSigningValues_1 = require(\"./utils/getSigningValues\");\nconst getSignature_1 = require(\"./utils/getSignature\");\nconst amplifyUrl_1 = require(\"../../../../../utils/amplifyUrl\");\n/**\n * Given a `Presignable` object, returns a Signature Version 4 presigned `URL` object.\n *\n * @param presignable `Presignable` object containing at least a url to be presigned with authentication query params.\n * @param presignUrlOptions `PresignUrlOptions` object containing values used to construct the signature.\n * @returns A `URL` with authentication query params which can grant temporary access to AWS resources.\n */\nconst presignUrl = ({ body, method = 'GET', url }, { expiration, ...options }) => {\n const signingValues = (0, getSigningValues_1.getSigningValues)(options);\n const { accessKeyId, credentialScope, longDate, sessionToken } = signingValues;\n // create the request to sign\n // @ts-ignore URL constructor accepts a URL object\n const presignedUrl = new amplifyUrl_1.AmplifyUrl(url);\n Object.entries({\n [constants_1.ALGORITHM_QUERY_PARAM]: constants_1.SHA256_ALGORITHM_IDENTIFIER,\n [constants_1.CREDENTIAL_QUERY_PARAM]: `${accessKeyId}/${credentialScope}`,\n [constants_1.AMZ_DATE_QUERY_PARAM]: longDate,\n [constants_1.SIGNED_HEADERS_QUERY_PARAM]: constants_1.HOST_HEADER,\n ...(expiration && { [constants_1.EXPIRES_QUERY_PARAM]: expiration.toString() }),\n ...(sessionToken && { [constants_1.TOKEN_QUERY_PARAM]: sessionToken }),\n }).forEach(([key, value]) => {\n presignedUrl.searchParams.append(key, value);\n });\n const requestToSign = {\n body,\n headers: { [constants_1.HOST_HEADER]: url.host },\n method,\n url: presignedUrl,\n };\n // calculate and add the signature to the url\n const signature = (0, getSignature_1.getSignature)(requestToSign, signingValues);\n presignedUrl.searchParams.append(constants_1.SIGNATURE_QUERY_PARAM, signature);\n return presignedUrl;\n};\nexports.presignUrl = presignUrl;\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9D,OAAO,CAAC,UAAU,GAAG,KAAK,CAAC,CAAC;AAC5B,MAAM,WAAW,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;AAC3C,MAAM,kBAAkB,GAAG,OAAO,CAAC,0BAA0B,CAAC,CAAC;AAC/D,MAAM,cAAc,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAAC;AACvD,MAAM,YAAY,GAAG,OAAO,CAAC,iCAAiC,CAAC,CAAC;AAChE;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,UAAU,GAAG,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,UAAU,EAAE,GAAG,OAAO,EAAE,KAAK;AAClF,IAAI,MAAM,aAAa,GAAG,IAAI,kBAAkB,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC;AAC5E,IAAI,MAAM,EAAE,WAAW,EAAE,eAAe,EAAE,QAAQ,EAAE,YAAY,EAAE,GAAG,aAAa,CAAC;AACnF;AACA;AACA,IAAI,MAAM,YAAY,GAAG,IAAI,YAAY,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;AAC1D,IAAI,MAAM,CAAC,OAAO,CAAC;AACnB,QAAQ,CAAC,WAAW,CAAC,qBAAqB,GAAG,WAAW,CAAC,2BAA2B;AACpF,QAAQ,CAAC,WAAW,CAAC,sBAAsB,GAAG,CAAC,EAAE,WAAW,CAAC,CAAC,EAAE,eAAe,CAAC,CAAC;AACjF,QAAQ,CAAC,WAAW,CAAC,oBAAoB,GAAG,QAAQ;AACpD,QAAQ,CAAC,WAAW,CAAC,0BAA0B,GAAG,WAAW,CAAC,WAAW;AACzE,QAAQ,IAAI,UAAU,IAAI,EAAE,CAAC,WAAW,CAAC,mBAAmB,GAAG,UAAU,CAAC,QAAQ,EAAE,EAAE;AACtF,QAAQ,IAAI,YAAY,IAAI,EAAE,CAAC,WAAW,CAAC,iBAAiB,GAAG,YAAY,EAAE;AAC7E,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,KAAK;AACjC,QAAQ,YAAY,CAAC,YAAY,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;AACrD,KAAK,CAAC,CAAC;AACP,IAAI,MAAM,aAAa,GAAG;AAC1B,QAAQ,IAAI;AACZ,QAAQ,OAAO,EAAE,EAAE,CAAC,WAAW,CAAC,WAAW,GAAG,GAAG,CAAC,IAAI,EAAE;AACxD,QAAQ,MAAM;AACd,QAAQ,GAAG,EAAE,YAAY;AACzB,KAAK,CAAC;AACN;AACA,IAAI,MAAM,SAAS,GAAG,IAAI,cAAc,CAAC,YAAY,EAAE,aAAa,EAAE,aAAa,CAAC,CAAC;AACrF,IAAI,YAAY,CAAC,YAAY,CAAC,MAAM,CAAC,WAAW,CAAC,qBAAqB,EAAE,SAAS,CAAC,CAAC;AACnF,IAAI,OAAO,YAAY,CAAC;AACxB,CAAC,CAAC;AACF,OAAO,CAAC,UAAU,GAAG,UAAU;;"}
1
+ {"version":3,"file":"presignUrl.js","sources":["../../../../../../../src/clients/middleware/signing/signer/signatureV4/presignUrl.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.presignUrl = void 0;\nconst amplifyUrl_1 = require(\"../../../../../utils/amplifyUrl\");\nconst constants_1 = require(\"./constants\");\nconst getSigningValues_1 = require(\"./utils/getSigningValues\");\nconst getSignature_1 = require(\"./utils/getSignature\");\n/**\n * Given a `Presignable` object, returns a Signature Version 4 presigned `URL` object.\n *\n * @param presignable `Presignable` object containing at least a url to be presigned with authentication query params.\n * @param presignUrlOptions `PresignUrlOptions` object containing values used to construct the signature.\n * @returns A `URL` with authentication query params which can grant temporary access to AWS resources.\n */\nconst presignUrl = ({ body, method = 'GET', url }, { expiration, ...options }) => {\n const signingValues = (0, getSigningValues_1.getSigningValues)(options);\n const { accessKeyId, credentialScope, longDate, sessionToken } = signingValues;\n // create the request to sign\n const presignedUrl = new amplifyUrl_1.AmplifyUrl(url);\n Object.entries({\n [constants_1.ALGORITHM_QUERY_PARAM]: constants_1.SHA256_ALGORITHM_IDENTIFIER,\n [constants_1.CREDENTIAL_QUERY_PARAM]: `${accessKeyId}/${credentialScope}`,\n [constants_1.AMZ_DATE_QUERY_PARAM]: longDate,\n [constants_1.SIGNED_HEADERS_QUERY_PARAM]: constants_1.HOST_HEADER,\n ...(expiration && { [constants_1.EXPIRES_QUERY_PARAM]: expiration.toString() }),\n ...(sessionToken && { [constants_1.TOKEN_QUERY_PARAM]: sessionToken }),\n }).forEach(([key, value]) => {\n presignedUrl.searchParams.append(key, value);\n });\n const requestToSign = {\n body,\n headers: { [constants_1.HOST_HEADER]: url.host },\n method,\n url: presignedUrl,\n };\n // calculate and add the signature to the url\n const signature = (0, getSignature_1.getSignature)(requestToSign, signingValues);\n presignedUrl.searchParams.append(constants_1.SIGNATURE_QUERY_PARAM, signature);\n return presignedUrl;\n};\nexports.presignUrl = presignUrl;\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9D,OAAO,CAAC,UAAU,GAAG,KAAK,CAAC,CAAC;AAC5B,MAAM,YAAY,GAAG,OAAO,CAAC,iCAAiC,CAAC,CAAC;AAChE,MAAM,WAAW,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;AAC3C,MAAM,kBAAkB,GAAG,OAAO,CAAC,0BAA0B,CAAC,CAAC;AAC/D,MAAM,cAAc,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAAC;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,UAAU,GAAG,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,UAAU,EAAE,GAAG,OAAO,EAAE,KAAK;AAClF,IAAI,MAAM,aAAa,GAAG,IAAI,kBAAkB,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC;AAC5E,IAAI,MAAM,EAAE,WAAW,EAAE,eAAe,EAAE,QAAQ,EAAE,YAAY,EAAE,GAAG,aAAa,CAAC;AACnF;AACA,IAAI,MAAM,YAAY,GAAG,IAAI,YAAY,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;AAC1D,IAAI,MAAM,CAAC,OAAO,CAAC;AACnB,QAAQ,CAAC,WAAW,CAAC,qBAAqB,GAAG,WAAW,CAAC,2BAA2B;AACpF,QAAQ,CAAC,WAAW,CAAC,sBAAsB,GAAG,CAAC,EAAE,WAAW,CAAC,CAAC,EAAE,eAAe,CAAC,CAAC;AACjF,QAAQ,CAAC,WAAW,CAAC,oBAAoB,GAAG,QAAQ;AACpD,QAAQ,CAAC,WAAW,CAAC,0BAA0B,GAAG,WAAW,CAAC,WAAW;AACzE,QAAQ,IAAI,UAAU,IAAI,EAAE,CAAC,WAAW,CAAC,mBAAmB,GAAG,UAAU,CAAC,QAAQ,EAAE,EAAE;AACtF,QAAQ,IAAI,YAAY,IAAI,EAAE,CAAC,WAAW,CAAC,iBAAiB,GAAG,YAAY,EAAE;AAC7E,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,KAAK;AACjC,QAAQ,YAAY,CAAC,YAAY,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;AACrD,KAAK,CAAC,CAAC;AACP,IAAI,MAAM,aAAa,GAAG;AAC1B,QAAQ,IAAI;AACZ,QAAQ,OAAO,EAAE,EAAE,CAAC,WAAW,CAAC,WAAW,GAAG,GAAG,CAAC,IAAI,EAAE;AACxD,QAAQ,MAAM;AACd,QAAQ,GAAG,EAAE,YAAY;AACzB,KAAK,CAAC;AACN;AACA,IAAI,MAAM,SAAS,GAAG,IAAI,cAAc,CAAC,YAAY,EAAE,aAAa,EAAE,aAAa,CAAC,CAAC;AACrF,IAAI,YAAY,CAAC,YAAY,CAAC,MAAM,CAAC,WAAW,CAAC,qBAAqB,EAAE,SAAS,CAAC,CAAC;AACnF,IAAI,OAAO,YAAY,CAAC;AACxB,CAAC,CAAC;AACF,OAAO,CAAC,UAAU,GAAG,UAAU;;"}
@@ -15,7 +15,7 @@ exports.getFormattedDates = void 0;
15
15
  * @internal
16
16
  */
17
17
  const getFormattedDates = (date) => {
18
- const longDate = date.toISOString().replace(/[:\-]|\.\d{3}/g, '');
18
+ const longDate = date.toISOString().replace(/[:-]|\.\d{3}/g, '');
19
19
  return {
20
20
  longDate,
21
21
  shortDate: longDate.slice(0, 8),
@@ -1 +1 @@
1
- {"version":3,"file":"getFormattedDates.js","sources":["../../../../../../../../src/clients/middleware/signing/signer/signatureV4/utils/getFormattedDates.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getFormattedDates = void 0;\n/**\n * Returns expected date strings to be used in signing.\n *\n * @param date JavaScript `Date` object.\n * @returns `FormattedDates` object containing the following:\n * - longDate: A date string in 'YYYYMMDDThhmmssZ' format\n * - shortDate: A date string in 'YYYYMMDD' format\n *\n * @internal\n */\nconst getFormattedDates = (date) => {\n const longDate = date.toISOString().replace(/[:\\-]|\\.\\d{3}/g, '');\n return {\n longDate,\n shortDate: longDate.slice(0, 8),\n };\n};\nexports.getFormattedDates = getFormattedDates;\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9D,OAAO,CAAC,iBAAiB,GAAG,KAAK,CAAC,CAAC;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,iBAAiB,GAAG,CAAC,IAAI,KAAK;AACpC,IAAI,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,gBAAgB,EAAE,EAAE,CAAC,CAAC;AACtE,IAAI,OAAO;AACX,QAAQ,QAAQ;AAChB,QAAQ,SAAS,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;AACvC,KAAK,CAAC;AACN,CAAC,CAAC;AACF,OAAO,CAAC,iBAAiB,GAAG,iBAAiB;;"}
1
+ {"version":3,"file":"getFormattedDates.js","sources":["../../../../../../../../src/clients/middleware/signing/signer/signatureV4/utils/getFormattedDates.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getFormattedDates = void 0;\n/**\n * Returns expected date strings to be used in signing.\n *\n * @param date JavaScript `Date` object.\n * @returns `FormattedDates` object containing the following:\n * - longDate: A date string in 'YYYYMMDDThhmmssZ' format\n * - shortDate: A date string in 'YYYYMMDD' format\n *\n * @internal\n */\nconst getFormattedDates = (date) => {\n const longDate = date.toISOString().replace(/[:-]|\\.\\d{3}/g, '');\n return {\n longDate,\n shortDate: longDate.slice(0, 8),\n };\n};\nexports.getFormattedDates = getFormattedDates;\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9D,OAAO,CAAC,iBAAiB,GAAG,KAAK,CAAC,CAAC;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,iBAAiB,GAAG,CAAC,IAAI,KAAK;AACpC,IAAI,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC;AACrE,IAAI,OAAO;AACX,QAAQ,QAAQ;AAChB,QAAQ,SAAS,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;AACvC,KAAK,CAAC;AACN,CAAC,CAAC;AACF,OAAO,CAAC,iBAAiB,GAAG,iBAAiB;;"}
@@ -3,7 +3,7 @@
3
3
  // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
4
4
  // SPDX-License-Identifier: Apache-2.0
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.userAgentMiddleware = void 0;
6
+ exports.userAgentMiddlewareFactory = void 0;
7
7
  var middleware_1 = require("./middleware");
8
- Object.defineProperty(exports, "userAgentMiddleware", { enumerable: true, get: function () { return middleware_1.userAgentMiddleware; } });
8
+ Object.defineProperty(exports, "userAgentMiddlewareFactory", { enumerable: true, get: function () { return middleware_1.userAgentMiddlewareFactory; } });
9
9
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../../src/clients/middleware/userAgent/index.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.userAgentMiddleware = void 0;\nvar middleware_1 = require(\"./middleware\");\nObject.defineProperty(exports, \"userAgentMiddleware\", { enumerable: true, get: function () { return middleware_1.userAgentMiddleware; } });\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9D,OAAO,CAAC,mBAAmB,GAAG,KAAK,CAAC,CAAC;AACrC,IAAI,YAAY,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;AAC3C,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,qBAAqB,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,YAAY,EAAE,OAAO,YAAY,CAAC,mBAAmB,CAAC,EAAE,EAAE,CAAC;;"}
1
+ {"version":3,"file":"index.js","sources":["../../../../../src/clients/middleware/userAgent/index.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.userAgentMiddlewareFactory = void 0;\nvar middleware_1 = require(\"./middleware\");\nObject.defineProperty(exports, \"userAgentMiddlewareFactory\", { enumerable: true, get: function () { return middleware_1.userAgentMiddlewareFactory; } });\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9D,OAAO,CAAC,0BAA0B,GAAG,KAAK,CAAC,CAAC;AAC5C,IAAI,YAAY,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;AAC3C,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,4BAA4B,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,YAAY,EAAE,OAAO,YAAY,CAAC,0BAA0B,CAAC,EAAE,EAAE,CAAC;;"}
@@ -3,14 +3,14 @@
3
3
  // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
4
4
  // SPDX-License-Identifier: Apache-2.0
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.userAgentMiddleware = void 0;
6
+ exports.userAgentMiddlewareFactory = void 0;
7
7
  /**
8
8
  * Middleware injects user agent string to specified header(default to 'x-amz-user-agent'),
9
9
  * if the header is not set already.
10
10
  *
11
11
  * TODO: incorporate new user agent design
12
12
  */
13
- const userAgentMiddleware = ({ userAgentHeader = 'x-amz-user-agent', userAgentValue = '', }) => next => {
13
+ const userAgentMiddlewareFactory = ({ userAgentHeader = 'x-amz-user-agent', userAgentValue = '', }) => next => {
14
14
  return async function userAgentMiddleware(request) {
15
15
  if (userAgentValue.trim().length === 0) {
16
16
  const result = await next(request);
@@ -26,5 +26,5 @@ const userAgentMiddleware = ({ userAgentHeader = 'x-amz-user-agent', userAgentVa
26
26
  }
27
27
  };
28
28
  };
29
- exports.userAgentMiddleware = userAgentMiddleware;
29
+ exports.userAgentMiddlewareFactory = userAgentMiddlewareFactory;
30
30
  //# sourceMappingURL=middleware.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"middleware.js","sources":["../../../../../src/clients/middleware/userAgent/middleware.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.userAgentMiddleware = void 0;\n/**\n * Middleware injects user agent string to specified header(default to 'x-amz-user-agent'),\n * if the header is not set already.\n *\n * TODO: incorporate new user agent design\n */\nconst userAgentMiddleware = ({ userAgentHeader = 'x-amz-user-agent', userAgentValue = '', }) => next => {\n return async function userAgentMiddleware(request) {\n if (userAgentValue.trim().length === 0) {\n const result = await next(request);\n return result;\n }\n else {\n const headerName = userAgentHeader.toLowerCase();\n request.headers[headerName] = request.headers[headerName]\n ? `${request.headers[headerName]} ${userAgentValue}`\n : userAgentValue;\n const response = await next(request);\n return response;\n }\n };\n};\nexports.userAgentMiddleware = userAgentMiddleware;\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9D,OAAO,CAAC,mBAAmB,GAAG,KAAK,CAAC,CAAC;AACrC;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,mBAAmB,GAAG,CAAC,EAAE,eAAe,GAAG,kBAAkB,EAAE,cAAc,GAAG,EAAE,GAAG,KAAK,IAAI,IAAI;AACxG,IAAI,OAAO,eAAe,mBAAmB,CAAC,OAAO,EAAE;AACvD,QAAQ,IAAI,cAAc,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE;AAChD,YAAY,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,CAAC;AAC/C,YAAY,OAAO,MAAM,CAAC;AAC1B,SAAS;AACT,aAAa;AACb,YAAY,MAAM,UAAU,GAAG,eAAe,CAAC,WAAW,EAAE,CAAC;AAC7D,YAAY,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC;AACrE,kBAAkB,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC;AACpE,kBAAkB,cAAc,CAAC;AACjC,YAAY,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,CAAC;AACjD,YAAY,OAAO,QAAQ,CAAC;AAC5B,SAAS;AACT,KAAK,CAAC;AACN,CAAC,CAAC;AACF,OAAO,CAAC,mBAAmB,GAAG,mBAAmB;;"}
1
+ {"version":3,"file":"middleware.js","sources":["../../../../../src/clients/middleware/userAgent/middleware.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.userAgentMiddlewareFactory = void 0;\n/**\n * Middleware injects user agent string to specified header(default to 'x-amz-user-agent'),\n * if the header is not set already.\n *\n * TODO: incorporate new user agent design\n */\nconst userAgentMiddlewareFactory = ({ userAgentHeader = 'x-amz-user-agent', userAgentValue = '', }) => next => {\n return async function userAgentMiddleware(request) {\n if (userAgentValue.trim().length === 0) {\n const result = await next(request);\n return result;\n }\n else {\n const headerName = userAgentHeader.toLowerCase();\n request.headers[headerName] = request.headers[headerName]\n ? `${request.headers[headerName]} ${userAgentValue}`\n : userAgentValue;\n const response = await next(request);\n return response;\n }\n };\n};\nexports.userAgentMiddlewareFactory = userAgentMiddlewareFactory;\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9D,OAAO,CAAC,0BAA0B,GAAG,KAAK,CAAC,CAAC;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,0BAA0B,GAAG,CAAC,EAAE,eAAe,GAAG,kBAAkB,EAAE,cAAc,GAAG,EAAE,GAAG,KAAK,IAAI,IAAI;AAC/G,IAAI,OAAO,eAAe,mBAAmB,CAAC,OAAO,EAAE;AACvD,QAAQ,IAAI,cAAc,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE;AAChD,YAAY,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,CAAC;AAC/C,YAAY,OAAO,MAAM,CAAC;AAC1B,SAAS;AACT,aAAa;AACb,YAAY,MAAM,UAAU,GAAG,eAAe,CAAC,WAAW,EAAE,CAAC;AAC7D,YAAY,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC;AACrE,kBAAkB,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC;AACpE,kBAAkB,cAAc,CAAC;AACjC,YAAY,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,CAAC;AACjD,YAAY,OAAO,QAAQ,CAAC;AAC5B,SAAS;AACT,KAAK,CAAC;AACN,CAAC,CAAC;AACF,OAAO,CAAC,0BAA0B,GAAG,0BAA0B;;"}
@@ -17,7 +17,7 @@ const parseJsonError = async (response) => {
17
17
  }
18
18
  const body = await (0, exports.parseJsonBody)(response);
19
19
  const sanitizeErrorCode = (rawValue) => {
20
- const [cleanValue] = rawValue.toString().split(/[\,\:]+/);
20
+ const [cleanValue] = rawValue.toString().split(/[,:]+/);
21
21
  if (cleanValue.includes('#')) {
22
22
  return cleanValue.split('#')[1];
23
23
  }
@@ -1 +1 @@
1
- {"version":3,"file":"json.js","sources":["../../../../src/clients/serde/json.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.parseJsonBody = exports.parseJsonError = void 0;\nconst responseInfo_1 = require(\"./responseInfo\");\n/**\n * Utility functions for serializing and deserializing of JSON protocol in general(including: REST-JSON, JSON-RPC, etc.)\n */\n/**\n * Error parser for AWS JSON protocol.\n */\nconst parseJsonError = async (response) => {\n if (!response || response.statusCode < 300) {\n return;\n }\n const body = await (0, exports.parseJsonBody)(response);\n const sanitizeErrorCode = (rawValue) => {\n const [cleanValue] = rawValue.toString().split(/[\\,\\:]+/);\n if (cleanValue.includes('#')) {\n return cleanValue.split('#')[1];\n }\n return cleanValue;\n };\n const code = sanitizeErrorCode(response.headers['x-amzn-errortype'] ??\n body.code ??\n body.__type ??\n 'UnknownError');\n const message = body.message ?? body.Message ?? 'Unknown error';\n const error = new Error(message);\n return Object.assign(error, {\n name: code,\n $metadata: (0, responseInfo_1.parseMetadata)(response),\n });\n};\nexports.parseJsonError = parseJsonError;\n/**\n * Parse JSON response body to JavaScript object.\n */\nconst parseJsonBody = async (response) => {\n if (!response.body) {\n throw new Error('Missing response payload');\n }\n const output = await response.body.json();\n return Object.assign(output, {\n $metadata: (0, responseInfo_1.parseMetadata)(response),\n });\n};\nexports.parseJsonBody = parseJsonBody;\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9D,OAAO,CAAC,aAAa,GAAG,OAAO,CAAC,cAAc,GAAG,KAAK,CAAC,CAAC;AACxD,MAAM,cAAc,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;AACjD;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,cAAc,GAAG,OAAO,QAAQ,KAAK;AAC3C,IAAI,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,UAAU,GAAG,GAAG,EAAE;AAChD,QAAQ,OAAO;AACf,KAAK;AACL,IAAI,MAAM,IAAI,GAAG,MAAM,IAAI,OAAO,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;AAC5D,IAAI,MAAM,iBAAiB,GAAG,CAAC,QAAQ,KAAK;AAC5C,QAAQ,MAAM,CAAC,UAAU,CAAC,GAAG,QAAQ,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;AAClE,QAAQ,IAAI,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;AACtC,YAAY,OAAO,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AAC5C,SAAS;AACT,QAAQ,OAAO,UAAU,CAAC;AAC1B,KAAK,CAAC;AACN,IAAI,MAAM,IAAI,GAAG,iBAAiB,CAAC,QAAQ,CAAC,OAAO,CAAC,kBAAkB,CAAC;AACvE,QAAQ,IAAI,CAAC,IAAI;AACjB,QAAQ,IAAI,CAAC,MAAM;AACnB,QAAQ,cAAc,CAAC,CAAC;AACxB,IAAI,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,IAAI,eAAe,CAAC;AACpE,IAAI,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC;AACrC,IAAI,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE;AAChC,QAAQ,IAAI,EAAE,IAAI;AAClB,QAAQ,SAAS,EAAE,IAAI,cAAc,CAAC,aAAa,EAAE,QAAQ,CAAC;AAC9D,KAAK,CAAC,CAAC;AACP,CAAC,CAAC;AACF,OAAO,CAAC,cAAc,GAAG,cAAc,CAAC;AACxC;AACA;AACA;AACA,MAAM,aAAa,GAAG,OAAO,QAAQ,KAAK;AAC1C,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE;AACxB,QAAQ,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;AACpD,KAAK;AACL,IAAI,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;AAC9C,IAAI,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE;AACjC,QAAQ,SAAS,EAAE,IAAI,cAAc,CAAC,aAAa,EAAE,QAAQ,CAAC;AAC9D,KAAK,CAAC,CAAC;AACP,CAAC,CAAC;AACF,OAAO,CAAC,aAAa,GAAG,aAAa;;"}
1
+ {"version":3,"file":"json.js","sources":["../../../../src/clients/serde/json.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.parseJsonBody = exports.parseJsonError = void 0;\nconst responseInfo_1 = require(\"./responseInfo\");\n/**\n * Utility functions for serializing and deserializing of JSON protocol in general(including: REST-JSON, JSON-RPC, etc.)\n */\n/**\n * Error parser for AWS JSON protocol.\n */\nconst parseJsonError = async (response) => {\n if (!response || response.statusCode < 300) {\n return;\n }\n const body = await (0, exports.parseJsonBody)(response);\n const sanitizeErrorCode = (rawValue) => {\n const [cleanValue] = rawValue.toString().split(/[,:]+/);\n if (cleanValue.includes('#')) {\n return cleanValue.split('#')[1];\n }\n return cleanValue;\n };\n const code = sanitizeErrorCode(response.headers['x-amzn-errortype'] ??\n body.code ??\n body.__type ??\n 'UnknownError');\n const message = body.message ?? body.Message ?? 'Unknown error';\n const error = new Error(message);\n return Object.assign(error, {\n name: code,\n $metadata: (0, responseInfo_1.parseMetadata)(response),\n });\n};\nexports.parseJsonError = parseJsonError;\n/**\n * Parse JSON response body to JavaScript object.\n */\nconst parseJsonBody = async (response) => {\n if (!response.body) {\n throw new Error('Missing response payload');\n }\n const output = await response.body.json();\n return Object.assign(output, {\n $metadata: (0, responseInfo_1.parseMetadata)(response),\n });\n};\nexports.parseJsonBody = parseJsonBody;\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9D,OAAO,CAAC,aAAa,GAAG,OAAO,CAAC,cAAc,GAAG,KAAK,CAAC,CAAC;AACxD,MAAM,cAAc,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;AACjD;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,cAAc,GAAG,OAAO,QAAQ,KAAK;AAC3C,IAAI,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,UAAU,GAAG,GAAG,EAAE;AAChD,QAAQ,OAAO;AACf,KAAK;AACL,IAAI,MAAM,IAAI,GAAG,MAAM,IAAI,OAAO,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;AAC5D,IAAI,MAAM,iBAAiB,GAAG,CAAC,QAAQ,KAAK;AAC5C,QAAQ,MAAM,CAAC,UAAU,CAAC,GAAG,QAAQ,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;AAChE,QAAQ,IAAI,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;AACtC,YAAY,OAAO,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AAC5C,SAAS;AACT,QAAQ,OAAO,UAAU,CAAC;AAC1B,KAAK,CAAC;AACN,IAAI,MAAM,IAAI,GAAG,iBAAiB,CAAC,QAAQ,CAAC,OAAO,CAAC,kBAAkB,CAAC;AACvE,QAAQ,IAAI,CAAC,IAAI;AACjB,QAAQ,IAAI,CAAC,MAAM;AACnB,QAAQ,cAAc,CAAC,CAAC;AACxB,IAAI,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,IAAI,eAAe,CAAC;AACpE,IAAI,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC;AACrC,IAAI,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE;AAChC,QAAQ,IAAI,EAAE,IAAI;AAClB,QAAQ,SAAS,EAAE,IAAI,cAAc,CAAC,aAAa,EAAE,QAAQ,CAAC;AAC9D,KAAK,CAAC,CAAC;AACP,CAAC,CAAC;AACF,OAAO,CAAC,cAAc,GAAG,cAAc,CAAC;AACxC;AACA;AACA;AACA,MAAM,aAAa,GAAG,OAAO,QAAQ,KAAK;AAC1C,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE;AACxB,QAAQ,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;AACpD,KAAK;AACL,IAAI,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;AAC9C,IAAI,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE;AACjC,QAAQ,SAAS,EAAE,IAAI,cAAc,CAAC,aAAa,EAAE,QAAQ,CAAC;AAC9D,KAAK,CAAC,CAAC;AACP,CAAC,CAAC;AACF,OAAO,CAAC,aAAa,GAAG,aAAa;;"}
@@ -4,8 +4,8 @@
4
4
  // SPDX-License-Identifier: Apache-2.0
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.assert = void 0;
7
- const createAssertionFunction_1 = require("./createAssertionFunction");
8
7
  const types_1 = require("../types");
8
+ const createAssertionFunction_1 = require("./createAssertionFunction");
9
9
  const amplifyErrorMap = {
10
10
  [types_1.AmplifyErrorCode.NoEndpointId]: {
11
11
  message: 'Endpoint ID was not found and was unable to be created.',
@@ -1 +1 @@
1
- {"version":3,"file":"errorHelpers.js","sources":["../../../src/errors/errorHelpers.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.assert = void 0;\nconst createAssertionFunction_1 = require(\"./createAssertionFunction\");\nconst types_1 = require(\"../types\");\nconst amplifyErrorMap = {\n [types_1.AmplifyErrorCode.NoEndpointId]: {\n message: 'Endpoint ID was not found and was unable to be created.',\n },\n [types_1.AmplifyErrorCode.PlatformNotSupported]: {\n message: 'Function not supported on current platform.',\n },\n [types_1.AmplifyErrorCode.Unknown]: {\n message: 'An unknown error occurred.',\n },\n};\nexports.assert = (0, createAssertionFunction_1.createAssertionFunction)(amplifyErrorMap);\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9D,OAAO,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC;AACxB,MAAM,yBAAyB,GAAG,OAAO,CAAC,2BAA2B,CAAC,CAAC;AACvE,MAAM,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AACpC,MAAM,eAAe,GAAG;AACxB,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,YAAY,GAAG;AAC7C,QAAQ,OAAO,EAAE,yDAAyD;AAC1E,KAAK;AACL,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,oBAAoB,GAAG;AACrD,QAAQ,OAAO,EAAE,6CAA6C;AAC9D,KAAK;AACL,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,GAAG;AACxC,QAAQ,OAAO,EAAE,4BAA4B;AAC7C,KAAK;AACL,CAAC,CAAC;AACF,OAAO,CAAC,MAAM,GAAG,IAAI,yBAAyB,CAAC,uBAAuB,EAAE,eAAe,CAAC;;"}
1
+ {"version":3,"file":"errorHelpers.js","sources":["../../../src/errors/errorHelpers.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.assert = void 0;\nconst types_1 = require(\"../types\");\nconst createAssertionFunction_1 = require(\"./createAssertionFunction\");\nconst amplifyErrorMap = {\n [types_1.AmplifyErrorCode.NoEndpointId]: {\n message: 'Endpoint ID was not found and was unable to be created.',\n },\n [types_1.AmplifyErrorCode.PlatformNotSupported]: {\n message: 'Function not supported on current platform.',\n },\n [types_1.AmplifyErrorCode.Unknown]: {\n message: 'An unknown error occurred.',\n },\n};\nexports.assert = (0, createAssertionFunction_1.createAssertionFunction)(amplifyErrorMap);\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9D,OAAO,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC;AACxB,MAAM,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AACpC,MAAM,yBAAyB,GAAG,OAAO,CAAC,2BAA2B,CAAC,CAAC;AACvE,MAAM,eAAe,GAAG;AACxB,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,YAAY,GAAG;AAC7C,QAAQ,OAAO,EAAE,yDAAyD;AAC1E,KAAK;AACL,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,oBAAoB,GAAG;AACrD,QAAQ,OAAO,EAAE,6CAA6C;AAC9D,KAAK;AACL,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,GAAG;AACxC,QAAQ,OAAO,EAAE,4BAA4B;AAC7C,KAAK;AACL,CAAC,CAAC;AACF,OAAO,CAAC,MAAM,GAAG,IAAI,yBAAyB,CAAC,uBAAuB,EAAE,eAAe,CAAC;;"}
@@ -140,7 +140,7 @@ const parseAWSExports = (config = {}) => {
140
140
  mfa: mfaConfig,
141
141
  passwordFormat: passwordFormatConfig,
142
142
  loginWith: {
143
- username: loginWithEmailEnabled || loginWithPhoneEnabled ? false : true,
143
+ username: !(loginWithEmailEnabled || loginWithPhoneEnabled),
144
144
  email: loginWithEmailEnabled,
145
145
  phone: loginWithPhoneEnabled,
146
146
  },
@@ -1 +1 @@
1
- {"version":3,"file":"parseAWSExports.js","sources":["../../src/parseAWSExports.ts"],"sourcesContent":["\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.parseAWSExports = void 0;\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst Logger_1 = require(\"./Logger\");\nconst errors_1 = require(\"./errors\");\nconst logger = new Logger_1.ConsoleLogger('parseAWSExports');\nconst authTypeMapping = {\n API_KEY: 'apiKey',\n AWS_IAM: 'iam',\n AMAZON_COGNITO_USER_POOLS: 'userPool',\n OPENID_CONNECT: 'oidc',\n NONE: 'none',\n AWS_LAMBDA: 'lambda',\n // `LAMBDA` is an incorrect value that was added during the v6 rewrite.\n // Keeping it as a valid value until v7 to prevent breaking customers who might\n // be relying on it as a workaround.\n // ref: https://github.com/aws-amplify/amplify-js/pull/12922\n // TODO: @v7 remove next line\n LAMBDA: 'lambda',\n};\n/**\n * Converts the object imported from `aws-exports.js` or `amplifyconfiguration.json` files generated by\n * the Amplify CLI into an object that conforms to the {@link ResourcesConfig}.\n *\n * @param config A configuration object imported from `aws-exports.js` or `amplifyconfiguration.json`.\n *\n * @returns An object that conforms to the {@link ResourcesConfig} .\n */\nconst parseAWSExports = (config = {}) => {\n if (!Object.prototype.hasOwnProperty.call(config, 'aws_project_region')) {\n throw new errors_1.AmplifyError({\n name: 'InvalidParameterException',\n message: 'Invalid config parameter.',\n recoverySuggestion: 'Ensure passing the config object imported from `amplifyconfiguration.json`.',\n });\n }\n const { aws_appsync_apiKey, aws_appsync_authenticationType, aws_appsync_graphqlEndpoint, aws_appsync_region, aws_bots_config, aws_cognito_identity_pool_id, aws_cognito_sign_up_verification_method, aws_cognito_mfa_configuration, aws_cognito_mfa_types, aws_cognito_password_protection_settings, aws_cognito_verification_mechanisms, aws_cognito_signup_attributes, aws_cognito_social_providers, aws_cognito_username_attributes, aws_mandatory_sign_in, aws_mobile_analytics_app_id, aws_mobile_analytics_app_region, aws_user_files_s3_bucket, aws_user_files_s3_bucket_region, aws_user_files_s3_dangerously_connect_to_http_endpoint_for_testing, aws_user_pools_id, aws_user_pools_web_client_id, geo, oauth, predictions, aws_cloud_logic_custom, Notifications, modelIntrospection, } = config;\n const amplifyConfig = {};\n // Analytics\n if (aws_mobile_analytics_app_id) {\n amplifyConfig.Analytics = {\n Pinpoint: {\n appId: aws_mobile_analytics_app_id,\n region: aws_mobile_analytics_app_region,\n },\n };\n }\n // Notifications\n const { InAppMessaging, Push } = Notifications ?? {};\n if (InAppMessaging?.AWSPinpoint || Push?.AWSPinpoint) {\n if (InAppMessaging?.AWSPinpoint) {\n const { appId, region } = InAppMessaging.AWSPinpoint;\n amplifyConfig.Notifications = {\n InAppMessaging: {\n Pinpoint: {\n appId,\n region,\n },\n },\n };\n }\n if (Push?.AWSPinpoint) {\n const { appId, region } = Push.AWSPinpoint;\n amplifyConfig.Notifications = {\n ...amplifyConfig.Notifications,\n PushNotification: {\n Pinpoint: {\n appId,\n region,\n },\n },\n };\n }\n }\n // Interactions\n if (Array.isArray(aws_bots_config)) {\n amplifyConfig.Interactions = {\n LexV1: Object.fromEntries(aws_bots_config.map(bot => [bot.name, bot])),\n };\n }\n // API\n if (aws_appsync_graphqlEndpoint) {\n const defaultAuthMode = authTypeMapping[aws_appsync_authenticationType];\n if (!defaultAuthMode) {\n logger.debug(`Invalid authentication type ${aws_appsync_authenticationType}. Falling back to IAM.`);\n }\n amplifyConfig.API = {\n GraphQL: {\n endpoint: aws_appsync_graphqlEndpoint,\n apiKey: aws_appsync_apiKey,\n region: aws_appsync_region,\n defaultAuthMode: defaultAuthMode ?? 'iam',\n },\n };\n if (modelIntrospection) {\n amplifyConfig.API.GraphQL.modelIntrospection = modelIntrospection;\n }\n }\n // Auth\n const mfaConfig = aws_cognito_mfa_configuration\n ? {\n status: aws_cognito_mfa_configuration &&\n aws_cognito_mfa_configuration.toLowerCase(),\n totpEnabled: aws_cognito_mfa_types?.includes('TOTP') ?? false,\n smsEnabled: aws_cognito_mfa_types?.includes('SMS') ?? false,\n }\n : undefined;\n const passwordFormatConfig = aws_cognito_password_protection_settings\n ? {\n minLength: aws_cognito_password_protection_settings.passwordPolicyMinLength,\n requireLowercase: aws_cognito_password_protection_settings.passwordPolicyCharacters?.includes('REQUIRES_LOWERCASE') ?? false,\n requireUppercase: aws_cognito_password_protection_settings.passwordPolicyCharacters?.includes('REQUIRES_UPPERCASE') ?? false,\n requireNumbers: aws_cognito_password_protection_settings.passwordPolicyCharacters?.includes('REQUIRES_NUMBERS') ?? false,\n requireSpecialCharacters: aws_cognito_password_protection_settings.passwordPolicyCharacters?.includes('REQUIRES_SYMBOLS') ?? false,\n }\n : undefined;\n const mergedUserAttributes = Array.from(new Set([\n ...(aws_cognito_verification_mechanisms ?? []),\n ...(aws_cognito_signup_attributes ?? []),\n ]));\n const userAttributes = mergedUserAttributes.reduce((attributes, key) => ({\n ...attributes,\n // All user attributes generated by the CLI are required\n [key.toLowerCase()]: { required: true },\n }), {});\n const loginWithEmailEnabled = aws_cognito_username_attributes?.includes('EMAIL') ?? false;\n const loginWithPhoneEnabled = aws_cognito_username_attributes?.includes('PHONE_NUMBER') ?? false;\n if (aws_cognito_identity_pool_id || aws_user_pools_id) {\n amplifyConfig.Auth = {\n Cognito: {\n identityPoolId: aws_cognito_identity_pool_id,\n allowGuestAccess: aws_mandatory_sign_in !== 'enable',\n signUpVerificationMethod: aws_cognito_sign_up_verification_method,\n userAttributes,\n userPoolClientId: aws_user_pools_web_client_id,\n userPoolId: aws_user_pools_id,\n mfa: mfaConfig,\n passwordFormat: passwordFormatConfig,\n loginWith: {\n username: loginWithEmailEnabled || loginWithPhoneEnabled ? false : true,\n email: loginWithEmailEnabled,\n phone: loginWithPhoneEnabled,\n },\n },\n };\n }\n const hasOAuthConfig = oauth ? Object.keys(oauth).length > 0 : false;\n const hasSocialProviderConfig = aws_cognito_social_providers\n ? aws_cognito_social_providers.length > 0\n : false;\n if (amplifyConfig.Auth && hasOAuthConfig) {\n amplifyConfig.Auth.Cognito.loginWith = {\n ...amplifyConfig.Auth.Cognito.loginWith,\n oauth: {\n ...getOAuthConfig(oauth),\n ...(hasSocialProviderConfig && {\n providers: parseSocialProviders(aws_cognito_social_providers),\n }),\n },\n };\n }\n // Storage\n if (aws_user_files_s3_bucket) {\n amplifyConfig.Storage = {\n S3: {\n bucket: aws_user_files_s3_bucket,\n region: aws_user_files_s3_bucket_region,\n dangerouslyConnectToHttpEndpointForTesting: aws_user_files_s3_dangerously_connect_to_http_endpoint_for_testing,\n },\n };\n }\n // Geo\n if (geo) {\n const { amazon_location_service } = geo;\n amplifyConfig.Geo = amazon_location_service\n ? {\n LocationService: {\n ...amazon_location_service,\n searchIndices: amazon_location_service.search_indices,\n region: amazon_location_service.region,\n },\n }\n : { ...geo };\n }\n // REST API\n if (aws_cloud_logic_custom) {\n amplifyConfig.API = {\n ...amplifyConfig.API,\n REST: aws_cloud_logic_custom.reduce((acc, api) => {\n const { name, endpoint, region, service } = api;\n return {\n ...acc,\n [name]: {\n endpoint,\n ...(service ? { service } : undefined),\n ...(region ? { region } : undefined),\n },\n };\n }, {}),\n };\n }\n // Predictions\n if (predictions) {\n // map VoiceId from speechGenerator defaults to voiceId\n const { VoiceId: voiceId } = predictions?.convert?.speechGenerator?.defaults ?? {};\n amplifyConfig.Predictions = voiceId\n ? {\n ...predictions,\n convert: {\n ...predictions.convert,\n speechGenerator: {\n ...predictions.convert.speechGenerator,\n defaults: { voiceId },\n },\n },\n }\n : predictions;\n }\n return amplifyConfig;\n};\nexports.parseAWSExports = parseAWSExports;\nconst getRedirectUrl = (redirectStr) => redirectStr?.split(',') ?? [];\nconst getOAuthConfig = ({ domain, scope, redirectSignIn, redirectSignOut, responseType, }) => ({\n domain,\n scopes: scope,\n redirectSignIn: getRedirectUrl(redirectSignIn),\n redirectSignOut: getRedirectUrl(redirectSignOut),\n responseType,\n});\nconst parseSocialProviders = (aws_cognito_social_providers) => {\n return aws_cognito_social_providers.map((provider) => {\n const updatedProvider = provider.toLowerCase();\n return updatedProvider.charAt(0).toUpperCase() + updatedProvider.slice(1);\n });\n};\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parseAWSExports.js","sources":["../../src/parseAWSExports.ts"],"sourcesContent":["\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.parseAWSExports = void 0;\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst Logger_1 = require(\"./Logger\");\nconst errors_1 = require(\"./errors\");\nconst logger = new Logger_1.ConsoleLogger('parseAWSExports');\nconst authTypeMapping = {\n API_KEY: 'apiKey',\n AWS_IAM: 'iam',\n AMAZON_COGNITO_USER_POOLS: 'userPool',\n OPENID_CONNECT: 'oidc',\n NONE: 'none',\n AWS_LAMBDA: 'lambda',\n // `LAMBDA` is an incorrect value that was added during the v6 rewrite.\n // Keeping it as a valid value until v7 to prevent breaking customers who might\n // be relying on it as a workaround.\n // ref: https://github.com/aws-amplify/amplify-js/pull/12922\n // TODO: @v7 remove next line\n LAMBDA: 'lambda',\n};\n/**\n * Converts the object imported from `aws-exports.js` or `amplifyconfiguration.json` files generated by\n * the Amplify CLI into an object that conforms to the {@link ResourcesConfig}.\n *\n * @param config A configuration object imported from `aws-exports.js` or `amplifyconfiguration.json`.\n *\n * @returns An object that conforms to the {@link ResourcesConfig} .\n */\nconst parseAWSExports = (config = {}) => {\n if (!Object.prototype.hasOwnProperty.call(config, 'aws_project_region')) {\n throw new errors_1.AmplifyError({\n name: 'InvalidParameterException',\n message: 'Invalid config parameter.',\n recoverySuggestion: 'Ensure passing the config object imported from `amplifyconfiguration.json`.',\n });\n }\n const { aws_appsync_apiKey, aws_appsync_authenticationType, aws_appsync_graphqlEndpoint, aws_appsync_region, aws_bots_config, aws_cognito_identity_pool_id, aws_cognito_sign_up_verification_method, aws_cognito_mfa_configuration, aws_cognito_mfa_types, aws_cognito_password_protection_settings, aws_cognito_verification_mechanisms, aws_cognito_signup_attributes, aws_cognito_social_providers, aws_cognito_username_attributes, aws_mandatory_sign_in, aws_mobile_analytics_app_id, aws_mobile_analytics_app_region, aws_user_files_s3_bucket, aws_user_files_s3_bucket_region, aws_user_files_s3_dangerously_connect_to_http_endpoint_for_testing, aws_user_pools_id, aws_user_pools_web_client_id, geo, oauth, predictions, aws_cloud_logic_custom, Notifications, modelIntrospection, } = config;\n const amplifyConfig = {};\n // Analytics\n if (aws_mobile_analytics_app_id) {\n amplifyConfig.Analytics = {\n Pinpoint: {\n appId: aws_mobile_analytics_app_id,\n region: aws_mobile_analytics_app_region,\n },\n };\n }\n // Notifications\n const { InAppMessaging, Push } = Notifications ?? {};\n if (InAppMessaging?.AWSPinpoint || Push?.AWSPinpoint) {\n if (InAppMessaging?.AWSPinpoint) {\n const { appId, region } = InAppMessaging.AWSPinpoint;\n amplifyConfig.Notifications = {\n InAppMessaging: {\n Pinpoint: {\n appId,\n region,\n },\n },\n };\n }\n if (Push?.AWSPinpoint) {\n const { appId, region } = Push.AWSPinpoint;\n amplifyConfig.Notifications = {\n ...amplifyConfig.Notifications,\n PushNotification: {\n Pinpoint: {\n appId,\n region,\n },\n },\n };\n }\n }\n // Interactions\n if (Array.isArray(aws_bots_config)) {\n amplifyConfig.Interactions = {\n LexV1: Object.fromEntries(aws_bots_config.map(bot => [bot.name, bot])),\n };\n }\n // API\n if (aws_appsync_graphqlEndpoint) {\n const defaultAuthMode = authTypeMapping[aws_appsync_authenticationType];\n if (!defaultAuthMode) {\n logger.debug(`Invalid authentication type ${aws_appsync_authenticationType}. Falling back to IAM.`);\n }\n amplifyConfig.API = {\n GraphQL: {\n endpoint: aws_appsync_graphqlEndpoint,\n apiKey: aws_appsync_apiKey,\n region: aws_appsync_region,\n defaultAuthMode: defaultAuthMode ?? 'iam',\n },\n };\n if (modelIntrospection) {\n amplifyConfig.API.GraphQL.modelIntrospection = modelIntrospection;\n }\n }\n // Auth\n const mfaConfig = aws_cognito_mfa_configuration\n ? {\n status: aws_cognito_mfa_configuration &&\n aws_cognito_mfa_configuration.toLowerCase(),\n totpEnabled: aws_cognito_mfa_types?.includes('TOTP') ?? false,\n smsEnabled: aws_cognito_mfa_types?.includes('SMS') ?? false,\n }\n : undefined;\n const passwordFormatConfig = aws_cognito_password_protection_settings\n ? {\n minLength: aws_cognito_password_protection_settings.passwordPolicyMinLength,\n requireLowercase: aws_cognito_password_protection_settings.passwordPolicyCharacters?.includes('REQUIRES_LOWERCASE') ?? false,\n requireUppercase: aws_cognito_password_protection_settings.passwordPolicyCharacters?.includes('REQUIRES_UPPERCASE') ?? false,\n requireNumbers: aws_cognito_password_protection_settings.passwordPolicyCharacters?.includes('REQUIRES_NUMBERS') ?? false,\n requireSpecialCharacters: aws_cognito_password_protection_settings.passwordPolicyCharacters?.includes('REQUIRES_SYMBOLS') ?? false,\n }\n : undefined;\n const mergedUserAttributes = Array.from(new Set([\n ...(aws_cognito_verification_mechanisms ?? []),\n ...(aws_cognito_signup_attributes ?? []),\n ]));\n const userAttributes = mergedUserAttributes.reduce((attributes, key) => ({\n ...attributes,\n // All user attributes generated by the CLI are required\n [key.toLowerCase()]: { required: true },\n }), {});\n const loginWithEmailEnabled = aws_cognito_username_attributes?.includes('EMAIL') ?? false;\n const loginWithPhoneEnabled = aws_cognito_username_attributes?.includes('PHONE_NUMBER') ?? false;\n if (aws_cognito_identity_pool_id || aws_user_pools_id) {\n amplifyConfig.Auth = {\n Cognito: {\n identityPoolId: aws_cognito_identity_pool_id,\n allowGuestAccess: aws_mandatory_sign_in !== 'enable',\n signUpVerificationMethod: aws_cognito_sign_up_verification_method,\n userAttributes,\n userPoolClientId: aws_user_pools_web_client_id,\n userPoolId: aws_user_pools_id,\n mfa: mfaConfig,\n passwordFormat: passwordFormatConfig,\n loginWith: {\n username: !(loginWithEmailEnabled || loginWithPhoneEnabled),\n email: loginWithEmailEnabled,\n phone: loginWithPhoneEnabled,\n },\n },\n };\n }\n const hasOAuthConfig = oauth ? Object.keys(oauth).length > 0 : false;\n const hasSocialProviderConfig = aws_cognito_social_providers\n ? aws_cognito_social_providers.length > 0\n : false;\n if (amplifyConfig.Auth && hasOAuthConfig) {\n amplifyConfig.Auth.Cognito.loginWith = {\n ...amplifyConfig.Auth.Cognito.loginWith,\n oauth: {\n ...getOAuthConfig(oauth),\n ...(hasSocialProviderConfig && {\n providers: parseSocialProviders(aws_cognito_social_providers),\n }),\n },\n };\n }\n // Storage\n if (aws_user_files_s3_bucket) {\n amplifyConfig.Storage = {\n S3: {\n bucket: aws_user_files_s3_bucket,\n region: aws_user_files_s3_bucket_region,\n dangerouslyConnectToHttpEndpointForTesting: aws_user_files_s3_dangerously_connect_to_http_endpoint_for_testing,\n },\n };\n }\n // Geo\n if (geo) {\n const { amazon_location_service } = geo;\n amplifyConfig.Geo = amazon_location_service\n ? {\n LocationService: {\n ...amazon_location_service,\n searchIndices: amazon_location_service.search_indices,\n region: amazon_location_service.region,\n },\n }\n : { ...geo };\n }\n // REST API\n if (aws_cloud_logic_custom) {\n amplifyConfig.API = {\n ...amplifyConfig.API,\n REST: aws_cloud_logic_custom.reduce((acc, api) => {\n const { name, endpoint, region, service } = api;\n return {\n ...acc,\n [name]: {\n endpoint,\n ...(service ? { service } : undefined),\n ...(region ? { region } : undefined),\n },\n };\n }, {}),\n };\n }\n // Predictions\n if (predictions) {\n // map VoiceId from speechGenerator defaults to voiceId\n const { VoiceId: voiceId } = predictions?.convert?.speechGenerator?.defaults ?? {};\n amplifyConfig.Predictions = voiceId\n ? {\n ...predictions,\n convert: {\n ...predictions.convert,\n speechGenerator: {\n ...predictions.convert.speechGenerator,\n defaults: { voiceId },\n },\n },\n }\n : predictions;\n }\n return amplifyConfig;\n};\nexports.parseAWSExports = parseAWSExports;\nconst getRedirectUrl = (redirectStr) => redirectStr?.split(',') ?? [];\nconst getOAuthConfig = ({ domain, scope, redirectSignIn, redirectSignOut, responseType, }) => ({\n domain,\n scopes: scope,\n redirectSignIn: getRedirectUrl(redirectSignIn),\n redirectSignOut: getRedirectUrl(redirectSignOut),\n responseType,\n});\nconst parseSocialProviders = (aws_cognito_social_providers) => {\n return aws_cognito_social_providers.map((provider) => {\n const updatedProvider = provider.toLowerCase();\n return updatedProvider.charAt(0).toUpperCase() + updatedProvider.slice(1);\n });\n};\n"],"names":[],"mappings":"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"}
@@ -70,7 +70,7 @@ const updateEndpoint = async ({ address, appId, category, channelType, credentia
70
70
  };
71
71
  await (0, pinpoint_1.updateEndpoint)({ credentials, region, userAgentValue }, input);
72
72
  // if we had to create an endpoint id, we need to now cache it
73
- if (!!createdEndpointId) {
73
+ if (createdEndpointId) {
74
74
  return (0, cacheEndpointId_1.cacheEndpointId)(appId, category, createdEndpointId);
75
75
  }
76
76
  };
@@ -1 +1 @@
1
- {"version":3,"file":"updateEndpoint.js","sources":["../../../../../src/providers/pinpoint/apis/updateEndpoint.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.updateEndpoint = void 0;\nconst amplifyUuid_1 = require(\"../../../utils/amplifyUuid\");\nconst getClientInfo_1 = require(\"../../../utils/getClientInfo\");\nconst pinpoint_1 = require(\"../../../awsClients/pinpoint\");\nconst cacheEndpointId_1 = require(\"../utils/cacheEndpointId\");\nconst getEndpointId_1 = require(\"../utils/getEndpointId\");\n/**\n * @internal\n */\nconst updateEndpoint = async ({ address, appId, category, channelType, credentials, identityId, optOut, region, userAttributes, userId, userProfile, userAgentValue, }) => {\n const endpointId = await (0, getEndpointId_1.getEndpointId)(appId, category);\n // only generate a new endpoint id if one was not found in cache\n const createdEndpointId = !endpointId ? (0, amplifyUuid_1.amplifyUuid)() : undefined;\n const { customProperties, demographic, email, location, metrics, name, plan, } = userProfile ?? {};\n const clientInfo = (0, getClientInfo_1.getClientInfo)();\n const mergedDemographic = {\n appVersion: clientInfo.appVersion,\n make: clientInfo.make,\n model: clientInfo.model,\n modelVersion: clientInfo.version,\n platform: clientInfo.platform,\n ...demographic,\n };\n const shouldAddAttributes = email || customProperties || name || plan;\n const attributes = {\n ...(email && { email: [email] }),\n ...(name && { name: [name] }),\n ...(plan && { plan: [plan] }),\n ...customProperties,\n };\n const input = {\n ApplicationId: appId,\n EndpointId: endpointId ?? createdEndpointId,\n EndpointRequest: {\n RequestId: (0, amplifyUuid_1.amplifyUuid)(),\n EffectiveDate: new Date().toISOString(),\n ChannelType: channelType,\n Address: address,\n Attributes: shouldAddAttributes ? attributes : undefined,\n Demographic: {\n AppVersion: mergedDemographic.appVersion,\n Locale: mergedDemographic.locale,\n Make: mergedDemographic.make,\n Model: mergedDemographic.model,\n ModelVersion: mergedDemographic.modelVersion,\n Platform: mergedDemographic.platform,\n PlatformVersion: mergedDemographic.platformVersion,\n Timezone: mergedDemographic.timezone,\n },\n Location: {\n City: location?.city,\n Country: location?.country,\n Latitude: location?.latitude,\n Longitude: location?.longitude,\n PostalCode: location?.postalCode,\n Region: location?.region,\n },\n Metrics: metrics,\n OptOut: optOut,\n User: {\n UserId: userId ?? identityId,\n UserAttributes: userAttributes,\n },\n },\n };\n await (0, pinpoint_1.updateEndpoint)({ credentials, region, userAgentValue }, input);\n // if we had to create an endpoint id, we need to now cache it\n if (!!createdEndpointId) {\n return (0, cacheEndpointId_1.cacheEndpointId)(appId, category, createdEndpointId);\n }\n};\nexports.updateEndpoint = updateEndpoint;\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"updateEndpoint.js","sources":["../../../../../src/providers/pinpoint/apis/updateEndpoint.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.updateEndpoint = void 0;\nconst amplifyUuid_1 = require(\"../../../utils/amplifyUuid\");\nconst getClientInfo_1 = require(\"../../../utils/getClientInfo\");\nconst pinpoint_1 = require(\"../../../awsClients/pinpoint\");\nconst cacheEndpointId_1 = require(\"../utils/cacheEndpointId\");\nconst getEndpointId_1 = require(\"../utils/getEndpointId\");\n/**\n * @internal\n */\nconst updateEndpoint = async ({ address, appId, category, channelType, credentials, identityId, optOut, region, userAttributes, userId, userProfile, userAgentValue, }) => {\n const endpointId = await (0, getEndpointId_1.getEndpointId)(appId, category);\n // only generate a new endpoint id if one was not found in cache\n const createdEndpointId = !endpointId ? (0, amplifyUuid_1.amplifyUuid)() : undefined;\n const { customProperties, demographic, email, location, metrics, name, plan, } = userProfile ?? {};\n const clientInfo = (0, getClientInfo_1.getClientInfo)();\n const mergedDemographic = {\n appVersion: clientInfo.appVersion,\n make: clientInfo.make,\n model: clientInfo.model,\n modelVersion: clientInfo.version,\n platform: clientInfo.platform,\n ...demographic,\n };\n const shouldAddAttributes = email || customProperties || name || plan;\n const attributes = {\n ...(email && { email: [email] }),\n ...(name && { name: [name] }),\n ...(plan && { plan: [plan] }),\n ...customProperties,\n };\n const input = {\n ApplicationId: appId,\n EndpointId: endpointId ?? createdEndpointId,\n EndpointRequest: {\n RequestId: (0, amplifyUuid_1.amplifyUuid)(),\n EffectiveDate: new Date().toISOString(),\n ChannelType: channelType,\n Address: address,\n Attributes: shouldAddAttributes ? attributes : undefined,\n Demographic: {\n AppVersion: mergedDemographic.appVersion,\n Locale: mergedDemographic.locale,\n Make: mergedDemographic.make,\n Model: mergedDemographic.model,\n ModelVersion: mergedDemographic.modelVersion,\n Platform: mergedDemographic.platform,\n PlatformVersion: mergedDemographic.platformVersion,\n Timezone: mergedDemographic.timezone,\n },\n Location: {\n City: location?.city,\n Country: location?.country,\n Latitude: location?.latitude,\n Longitude: location?.longitude,\n PostalCode: location?.postalCode,\n Region: location?.region,\n },\n Metrics: metrics,\n OptOut: optOut,\n User: {\n UserId: userId ?? identityId,\n UserAttributes: userAttributes,\n },\n },\n };\n await (0, pinpoint_1.updateEndpoint)({ credentials, region, userAgentValue }, input);\n // if we had to create an endpoint id, we need to now cache it\n if (createdEndpointId) {\n return (0, cacheEndpointId_1.cacheEndpointId)(appId, category, createdEndpointId);\n }\n};\nexports.updateEndpoint = updateEndpoint;\n"],"names":[],"mappings":"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"}
@@ -77,7 +77,7 @@ class PinpointEventBuffer {
77
77
  this._processPutEventsSuccessResponse(data, eventMap);
78
78
  }
79
79
  catch (err) {
80
- return this._handlePutEventsFailure(err, eventMap);
80
+ this._handlePutEventsFailure(err, eventMap);
81
81
  }
82
82
  }
83
83
  _generateBatchEventParams(eventMap) {
@@ -114,13 +114,12 @@ class PinpointEventBuffer {
114
114
  if (RETRYABLE_CODES.includes(statusCode)) {
115
115
  const retryableEvents = Object.values(eventMap);
116
116
  this._retry(retryableEvents);
117
- return;
118
117
  }
119
118
  }
120
119
  _processPutEventsSuccessResponse(data, eventMap) {
121
120
  const { Results = {} } = data.EventsResponse ?? {};
122
121
  const retryableEvents = [];
123
- Object.entries(Results).forEach(([endpointId, endpointValues]) => {
122
+ Object.entries(Results).forEach(([_, endpointValues]) => {
124
123
  const responses = endpointValues.EventsItemResponse ?? {};
125
124
  Object.entries(responses).forEach(([eventId, eventValues]) => {
126
125
  const eventObject = eventMap[eventId];
@@ -1 +1 @@
1
- {"version":3,"file":"PinpointEventBuffer.js","sources":["../../../../../src/providers/pinpoint/utils/PinpointEventBuffer.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.PinpointEventBuffer = void 0;\nconst Logger_1 = require(\"../../../Logger\");\nconst pinpoint_1 = require(\"../../../awsClients/pinpoint\");\nconst isAppInForeground_1 = require(\"./isAppInForeground\");\nconst logger = new Logger_1.ConsoleLogger('PinpointEventBuffer');\nconst RETRYABLE_CODES = [429, 500];\nconst ACCEPTED_CODES = [202];\nclass PinpointEventBuffer {\n constructor(config) {\n this._interval = undefined;\n this._pause = false;\n this._flush = false;\n this._buffer = [];\n this._config = config;\n this._sendBatch = this._sendBatch.bind(this);\n this._startLoop();\n }\n push(event) {\n if (this._buffer.length >= this._config.bufferSize) {\n logger.debug('Exceeded Pinpoint event buffer limits, event dropped.', {\n eventId: event.eventId,\n });\n return;\n }\n this._buffer.push({ [event.eventId]: event });\n }\n pause() {\n this._pause = true;\n }\n resume() {\n this._pause = false;\n }\n flush() {\n this._flush = true;\n }\n identityHasChanged(identityId) {\n return this._config.identityId !== identityId;\n }\n flushAll() {\n this._putEvents(this._buffer.splice(0, this._buffer.length));\n }\n _startLoop() {\n if (this._interval) {\n clearInterval(this._interval);\n }\n const { flushInterval } = this._config;\n this._interval = setInterval(this._sendBatch, flushInterval);\n }\n _sendBatch() {\n const bufferLength = this._buffer.length;\n if (this._flush && !bufferLength && this._interval) {\n clearInterval(this._interval);\n }\n if (this._pause || !bufferLength || !(0, isAppInForeground_1.isAppInForeground)()) {\n return;\n }\n const { flushSize } = this._config;\n const batchSize = Math.min(flushSize, bufferLength);\n const bufferSubset = this._buffer.splice(0, batchSize);\n this._putEvents(bufferSubset);\n }\n async _putEvents(buffer) {\n const eventMap = this._bufferToMap(buffer);\n const batchEventParams = this._generateBatchEventParams(eventMap);\n try {\n const { credentials, region, userAgentValue } = this._config;\n const data = await (0, pinpoint_1.putEvents)({\n credentials,\n region,\n userAgentValue,\n }, batchEventParams);\n this._processPutEventsSuccessResponse(data, eventMap);\n }\n catch (err) {\n return this._handlePutEventsFailure(err, eventMap);\n }\n }\n _generateBatchEventParams(eventMap) {\n const batchItem = {};\n Object.values(eventMap).forEach(item => {\n const { event, timestamp, endpointId, eventId, session } = item;\n const { name, attributes, metrics } = event;\n batchItem[endpointId] = {\n Endpoint: {\n ...batchItem[endpointId]?.Endpoint,\n },\n Events: {\n ...batchItem[endpointId]?.Events,\n [eventId]: {\n EventType: name,\n Timestamp: new Date(timestamp).toISOString(),\n Attributes: attributes,\n Metrics: metrics,\n Session: session,\n },\n },\n };\n });\n return {\n ApplicationId: this._config.appId,\n EventsRequest: {\n BatchItem: batchItem,\n },\n };\n }\n _handlePutEventsFailure(err, eventMap) {\n logger.debug('putEvents call to Pinpoint failed.', err);\n const statusCode = err.$metadata && err.$metadata.httpStatusCode;\n if (RETRYABLE_CODES.includes(statusCode)) {\n const retryableEvents = Object.values(eventMap);\n this._retry(retryableEvents);\n return;\n }\n }\n _processPutEventsSuccessResponse(data, eventMap) {\n const { Results = {} } = data.EventsResponse ?? {};\n const retryableEvents = [];\n Object.entries(Results).forEach(([endpointId, endpointValues]) => {\n const responses = endpointValues.EventsItemResponse ?? {};\n Object.entries(responses).forEach(([eventId, eventValues]) => {\n const eventObject = eventMap[eventId];\n if (!eventObject) {\n return;\n }\n const { StatusCode, Message } = eventValues ?? {};\n // manually crafting handlers response to keep API consistant\n const response = {\n EventsResponse: {\n Results: {\n [endpointId]: {\n EventsItemResponse: {\n [eventId]: { StatusCode, Message },\n },\n },\n },\n },\n };\n if (StatusCode && ACCEPTED_CODES.includes(StatusCode)) {\n return;\n }\n if (StatusCode && RETRYABLE_CODES.includes(StatusCode)) {\n retryableEvents.push(eventObject);\n return;\n }\n const { name } = eventObject.event;\n logger.warn('Pinpoint event failed to send.', {\n eventId,\n name,\n message: Message,\n });\n });\n });\n if (retryableEvents.length) {\n this._retry(retryableEvents);\n }\n }\n _retry(retryableEvents) {\n // retryable events that haven't reached the resendLimit\n const eligibleEvents = [];\n retryableEvents.forEach((bufferedEvent) => {\n const { eventId } = bufferedEvent;\n const { name } = bufferedEvent.event;\n if (bufferedEvent.resendLimit-- > 0) {\n logger.debug('Resending event.', {\n eventId,\n name,\n remainingAttempts: bufferedEvent.resendLimit,\n });\n eligibleEvents.push({ [eventId]: bufferedEvent });\n return;\n }\n logger.debug('No retry attempts remaining for event.', {\n eventId,\n name,\n });\n });\n // add the events to the front of the buffer\n this._buffer.unshift(...eligibleEvents);\n }\n _bufferToMap(buffer) {\n return buffer.reduce((acc, curVal) => {\n const [[key, value]] = Object.entries(curVal);\n acc[key] = value;\n return acc;\n }, {});\n }\n}\nexports.PinpointEventBuffer = PinpointEventBuffer;\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PinpointEventBuffer.js","sources":["../../../../../src/providers/pinpoint/utils/PinpointEventBuffer.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.PinpointEventBuffer = void 0;\nconst Logger_1 = require(\"../../../Logger\");\nconst pinpoint_1 = require(\"../../../awsClients/pinpoint\");\nconst isAppInForeground_1 = require(\"./isAppInForeground\");\nconst logger = new Logger_1.ConsoleLogger('PinpointEventBuffer');\nconst RETRYABLE_CODES = [429, 500];\nconst ACCEPTED_CODES = [202];\nclass PinpointEventBuffer {\n constructor(config) {\n this._interval = undefined;\n this._pause = false;\n this._flush = false;\n this._buffer = [];\n this._config = config;\n this._sendBatch = this._sendBatch.bind(this);\n this._startLoop();\n }\n push(event) {\n if (this._buffer.length >= this._config.bufferSize) {\n logger.debug('Exceeded Pinpoint event buffer limits, event dropped.', {\n eventId: event.eventId,\n });\n return;\n }\n this._buffer.push({ [event.eventId]: event });\n }\n pause() {\n this._pause = true;\n }\n resume() {\n this._pause = false;\n }\n flush() {\n this._flush = true;\n }\n identityHasChanged(identityId) {\n return this._config.identityId !== identityId;\n }\n flushAll() {\n this._putEvents(this._buffer.splice(0, this._buffer.length));\n }\n _startLoop() {\n if (this._interval) {\n clearInterval(this._interval);\n }\n const { flushInterval } = this._config;\n this._interval = setInterval(this._sendBatch, flushInterval);\n }\n _sendBatch() {\n const bufferLength = this._buffer.length;\n if (this._flush && !bufferLength && this._interval) {\n clearInterval(this._interval);\n }\n if (this._pause || !bufferLength || !(0, isAppInForeground_1.isAppInForeground)()) {\n return;\n }\n const { flushSize } = this._config;\n const batchSize = Math.min(flushSize, bufferLength);\n const bufferSubset = this._buffer.splice(0, batchSize);\n this._putEvents(bufferSubset);\n }\n async _putEvents(buffer) {\n const eventMap = this._bufferToMap(buffer);\n const batchEventParams = this._generateBatchEventParams(eventMap);\n try {\n const { credentials, region, userAgentValue } = this._config;\n const data = await (0, pinpoint_1.putEvents)({\n credentials,\n region,\n userAgentValue,\n }, batchEventParams);\n this._processPutEventsSuccessResponse(data, eventMap);\n }\n catch (err) {\n this._handlePutEventsFailure(err, eventMap);\n }\n }\n _generateBatchEventParams(eventMap) {\n const batchItem = {};\n Object.values(eventMap).forEach(item => {\n const { event, timestamp, endpointId, eventId, session } = item;\n const { name, attributes, metrics } = event;\n batchItem[endpointId] = {\n Endpoint: {\n ...batchItem[endpointId]?.Endpoint,\n },\n Events: {\n ...batchItem[endpointId]?.Events,\n [eventId]: {\n EventType: name,\n Timestamp: new Date(timestamp).toISOString(),\n Attributes: attributes,\n Metrics: metrics,\n Session: session,\n },\n },\n };\n });\n return {\n ApplicationId: this._config.appId,\n EventsRequest: {\n BatchItem: batchItem,\n },\n };\n }\n _handlePutEventsFailure(err, eventMap) {\n logger.debug('putEvents call to Pinpoint failed.', err);\n const statusCode = err.$metadata && err.$metadata.httpStatusCode;\n if (RETRYABLE_CODES.includes(statusCode)) {\n const retryableEvents = Object.values(eventMap);\n this._retry(retryableEvents);\n }\n }\n _processPutEventsSuccessResponse(data, eventMap) {\n const { Results = {} } = data.EventsResponse ?? {};\n const retryableEvents = [];\n Object.entries(Results).forEach(([_, endpointValues]) => {\n const responses = endpointValues.EventsItemResponse ?? {};\n Object.entries(responses).forEach(([eventId, eventValues]) => {\n const eventObject = eventMap[eventId];\n if (!eventObject) {\n return;\n }\n const { StatusCode, Message } = eventValues ?? {};\n if (StatusCode && ACCEPTED_CODES.includes(StatusCode)) {\n return;\n }\n if (StatusCode && RETRYABLE_CODES.includes(StatusCode)) {\n retryableEvents.push(eventObject);\n return;\n }\n const { name } = eventObject.event;\n logger.warn('Pinpoint event failed to send.', {\n eventId,\n name,\n message: Message,\n });\n });\n });\n if (retryableEvents.length) {\n this._retry(retryableEvents);\n }\n }\n _retry(retryableEvents) {\n // retryable events that haven't reached the resendLimit\n const eligibleEvents = [];\n retryableEvents.forEach((bufferedEvent) => {\n const { eventId } = bufferedEvent;\n const { name } = bufferedEvent.event;\n if (bufferedEvent.resendLimit-- > 0) {\n logger.debug('Resending event.', {\n eventId,\n name,\n remainingAttempts: bufferedEvent.resendLimit,\n });\n eligibleEvents.push({ [eventId]: bufferedEvent });\n return;\n }\n logger.debug('No retry attempts remaining for event.', {\n eventId,\n name,\n });\n });\n // add the events to the front of the buffer\n this._buffer.unshift(...eligibleEvents);\n }\n _bufferToMap(buffer) {\n return buffer.reduce((acc, curVal) => {\n const [[key, value]] = Object.entries(curVal);\n acc[key] = value;\n return acc;\n }, {});\n }\n}\nexports.PinpointEventBuffer = PinpointEventBuffer;\n"],"names":[],"mappings":"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"}
@@ -4,7 +4,6 @@
4
4
  // SPDX-License-Identifier: Apache-2.0
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.isAppInForeground = void 0;
7
- // @ts-ignore: missing type definition
8
7
  const react_native_1 = require("react-native");
9
8
  const isAppInForeground = () => react_native_1.AppState.currentState === 'active';
10
9
  exports.isAppInForeground = isAppInForeground;
@@ -1 +1 @@
1
- {"version":3,"file":"isAppInForeground.native.js","sources":["../../../../../src/providers/pinpoint/utils/isAppInForeground.native.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.isAppInForeground = void 0;\n// @ts-ignore: missing type definition\nconst react_native_1 = require(\"react-native\");\nconst isAppInForeground = () => react_native_1.AppState.currentState === 'active';\nexports.isAppInForeground = isAppInForeground;\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9D,OAAO,CAAC,iBAAiB,GAAG,KAAK,CAAC,CAAC;AACnC;AACA,MAAM,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;AAC/C,MAAM,iBAAiB,GAAG,MAAM,cAAc,CAAC,QAAQ,CAAC,YAAY,KAAK,QAAQ,CAAC;AAClF,OAAO,CAAC,iBAAiB,GAAG,iBAAiB;;"}
1
+ {"version":3,"file":"isAppInForeground.native.js","sources":["../../../../../src/providers/pinpoint/utils/isAppInForeground.native.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.isAppInForeground = void 0;\nconst react_native_1 = require(\"react-native\");\nconst isAppInForeground = () => react_native_1.AppState.currentState === 'active';\nexports.isAppInForeground = isAppInForeground;\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9D,OAAO,CAAC,iBAAiB,GAAG,KAAK,CAAC,CAAC;AACnC,MAAM,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;AAC/C,MAAM,iBAAiB,GAAG,MAAM,cAAc,CAAC,QAAQ,CAAC,YAAY,KAAK,QAAQ,CAAC;AAClF,OAAO,CAAC,iBAAiB,GAAG,iBAAiB;;"}
@@ -4,10 +4,10 @@ Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports.Amplify = exports.AmplifyClass = void 0;
5
5
  // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
6
6
  // SPDX-License-Identifier: Apache-2.0
7
- const Auth_1 = require("./Auth");
8
7
  const Hub_1 = require("../Hub");
9
8
  const parseAWSExports_1 = require("../parseAWSExports");
10
9
  const utils_1 = require("../utils");
10
+ const Auth_1 = require("./Auth");
11
11
  const constants_1 = require("./constants");
12
12
  class AmplifyClass {
13
13
  constructor() {