@aws-amplify/core 6.0.16 → 6.0.17-unstable.0d2aa5d.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.
- package/dist/cjs/BackgroundProcessManager/BackgroundProcessManager.js +11 -16
- package/dist/cjs/BackgroundProcessManager/BackgroundProcessManager.js.map +1 -1
- package/dist/cjs/Cache/StorageCacheCommon.js +5 -5
- package/dist/cjs/Cache/StorageCacheCommon.js.map +1 -1
- package/dist/cjs/Cache/utils/CacheList.js +2 -2
- package/dist/cjs/Cache/utils/CacheList.js.map +1 -1
- package/dist/cjs/Hub/index.js +2 -2
- package/dist/cjs/Hub/index.js.map +1 -1
- package/dist/cjs/I18n/I18n.js +8 -13
- package/dist/cjs/I18n/I18n.js.map +1 -1
- package/dist/cjs/I18n/index.js +4 -4
- package/dist/cjs/I18n/index.js.map +1 -1
- package/dist/cjs/Logger/ConsoleLogger.js +8 -7
- package/dist/cjs/Logger/ConsoleLogger.js.map +1 -1
- package/dist/cjs/Logger/types.js +1 -0
- package/dist/cjs/Logger/types.js.map +1 -1
- package/dist/cjs/Mutex/Mutex.js +4 -1
- package/dist/cjs/Mutex/Mutex.js.map +1 -1
- package/dist/cjs/Platform/detectFramework.js +3 -1
- package/dist/cjs/Platform/detectFramework.js.map +1 -1
- package/dist/cjs/Platform/detection/Angular.js +2 -4
- package/dist/cjs/Platform/detection/Angular.js.map +1 -1
- package/dist/cjs/Platform/detection/Expo.js +1 -2
- package/dist/cjs/Platform/detection/Expo.js.map +1 -1
- package/dist/cjs/Platform/detection/Next.js +3 -2
- package/dist/cjs/Platform/detection/Next.js.map +1 -1
- package/dist/cjs/Platform/detection/Nuxt.js +3 -4
- package/dist/cjs/Platform/detection/Nuxt.js.map +1 -1
- package/dist/cjs/Platform/index.js +1 -1
- package/dist/cjs/Platform/index.js.map +1 -1
- package/dist/cjs/Platform/version.js +1 -1
- package/dist/cjs/Platform/version.js.map +1 -1
- package/dist/cjs/Reachability/Reachability.js +6 -2
- package/dist/cjs/Reachability/Reachability.js.map +1 -1
- package/dist/cjs/ServiceWorker/ServiceWorker.js +11 -11
- package/dist/cjs/ServiceWorker/ServiceWorker.js.map +1 -1
- package/dist/cjs/Signer/DateUtils.js +1 -1
- package/dist/cjs/Signer/DateUtils.js.map +1 -1
- package/dist/cjs/Signer/Signer.js +3 -3
- package/dist/cjs/Signer/Signer.js.map +1 -1
- package/dist/cjs/adapterCore/serverContext/serverContext.js +1 -1
- package/dist/cjs/adapterCore/serverContext/serverContext.js.map +1 -1
- package/dist/cjs/awsClients/cognitoIdentity/base.js +2 -2
- package/dist/cjs/awsClients/cognitoIdentity/base.js.map +1 -1
- package/dist/cjs/awsClients/cognitoIdentity/getCredentialsForIdentity.js +1 -1
- package/dist/cjs/awsClients/cognitoIdentity/getCredentialsForIdentity.js.map +1 -1
- package/dist/cjs/awsClients/cognitoIdentity/getId.js +1 -1
- package/dist/cjs/awsClients/cognitoIdentity/getId.js.map +1 -1
- package/dist/cjs/awsClients/pinpoint/getInAppMessages.js +1 -1
- package/dist/cjs/awsClients/pinpoint/getInAppMessages.js.map +1 -1
- package/dist/cjs/awsClients/pinpoint/putEvents.js +1 -1
- package/dist/cjs/awsClients/pinpoint/putEvents.js.map +1 -1
- package/dist/cjs/awsClients/pinpoint/types.js +0 -1
- package/dist/cjs/awsClients/pinpoint/types.js.map +1 -1
- package/dist/cjs/awsClients/pinpoint/updateEndpoint.js +1 -1
- package/dist/cjs/awsClients/pinpoint/updateEndpoint.js.map +1 -1
- package/dist/cjs/clients/handlers/authenticated.js +3 -3
- package/dist/cjs/clients/handlers/authenticated.js.map +1 -1
- package/dist/cjs/clients/handlers/unauthenticated.js +1 -1
- package/dist/cjs/clients/handlers/unauthenticated.js.map +1 -1
- package/dist/cjs/clients/index.js +4 -4
- package/dist/cjs/clients/index.js.map +1 -1
- package/dist/cjs/clients/internal/composeServiceApi.js +1 -1
- package/dist/cjs/clients/internal/composeServiceApi.js.map +1 -1
- package/dist/cjs/clients/internal/composeTransferHandler.js +1 -1
- package/dist/cjs/clients/internal/composeTransferHandler.js.map +1 -1
- package/dist/cjs/clients/middleware/retry/defaultRetryDecider.js +2 -2
- package/dist/cjs/clients/middleware/retry/defaultRetryDecider.js.map +1 -1
- package/dist/cjs/clients/middleware/retry/index.js +2 -2
- package/dist/cjs/clients/middleware/retry/index.js.map +1 -1
- package/dist/cjs/clients/middleware/retry/jitteredBackoff.js +1 -1
- package/dist/cjs/clients/middleware/retry/jitteredBackoff.js.map +1 -1
- package/dist/cjs/clients/middleware/retry/middleware.js +6 -6
- package/dist/cjs/clients/middleware/retry/middleware.js.map +1 -1
- package/dist/cjs/clients/middleware/signing/index.js +2 -2
- package/dist/cjs/clients/middleware/signing/index.js.map +1 -1
- package/dist/cjs/clients/middleware/signing/middleware.js +3 -3
- package/dist/cjs/clients/middleware/signing/middleware.js.map +1 -1
- package/dist/cjs/clients/middleware/signing/signer/signatureV4/presignUrl.js +1 -2
- package/dist/cjs/clients/middleware/signing/signer/signatureV4/presignUrl.js.map +1 -1
- package/dist/cjs/clients/middleware/signing/signer/signatureV4/utils/getFormattedDates.js +1 -1
- package/dist/cjs/clients/middleware/signing/signer/signatureV4/utils/getFormattedDates.js.map +1 -1
- package/dist/cjs/clients/middleware/userAgent/index.js +2 -2
- package/dist/cjs/clients/middleware/userAgent/index.js.map +1 -1
- package/dist/cjs/clients/middleware/userAgent/middleware.js +3 -3
- package/dist/cjs/clients/middleware/userAgent/middleware.js.map +1 -1
- package/dist/cjs/clients/serde/json.js +1 -1
- package/dist/cjs/clients/serde/json.js.map +1 -1
- package/dist/cjs/errors/errorHelpers.js +1 -1
- package/dist/cjs/errors/errorHelpers.js.map +1 -1
- package/dist/cjs/parseAWSExports.js +1 -1
- package/dist/cjs/parseAWSExports.js.map +1 -1
- package/dist/cjs/providers/pinpoint/apis/updateEndpoint.js +1 -1
- package/dist/cjs/providers/pinpoint/apis/updateEndpoint.js.map +1 -1
- package/dist/cjs/providers/pinpoint/utils/PinpointEventBuffer.js +2 -3
- package/dist/cjs/providers/pinpoint/utils/PinpointEventBuffer.js.map +1 -1
- package/dist/cjs/providers/pinpoint/utils/isAppInForeground.native.js +0 -1
- package/dist/cjs/providers/pinpoint/utils/isAppInForeground.native.js.map +1 -1
- package/dist/cjs/singleton/Amplify.js +1 -1
- package/dist/cjs/singleton/Amplify.js.map +1 -1
- package/dist/cjs/singleton/Auth/index.js +2 -6
- package/dist/cjs/singleton/Auth/index.js.map +1 -1
- package/dist/cjs/singleton/Auth/utils/index.js +4 -4
- package/dist/cjs/singleton/Auth/utils/index.js.map +1 -1
- package/dist/cjs/singleton/apis/fetchAuthSession.js +1 -1
- package/dist/cjs/singleton/apis/fetchAuthSession.js.map +1 -1
- package/dist/cjs/storage/CookieStorage.js +8 -4
- package/dist/cjs/storage/CookieStorage.js.map +1 -1
- package/dist/cjs/storage/CookieStorage.native.js +0 -3
- package/dist/cjs/storage/CookieStorage.native.js.map +1 -1
- package/dist/cjs/utils/WordArray.js +2 -2
- package/dist/cjs/utils/WordArray.js.map +1 -1
- package/dist/cjs/utils/deDupeAsyncFunction.js +8 -8
- package/dist/cjs/utils/deDupeAsyncFunction.js.map +1 -1
- package/dist/cjs/utils/getClientInfo/getClientInfo.android.js +2 -3
- package/dist/cjs/utils/getClientInfo/getClientInfo.android.js.map +1 -1
- package/dist/cjs/utils/getClientInfo/getClientInfo.ios.js +2 -3
- package/dist/cjs/utils/getClientInfo/getClientInfo.ios.js.map +1 -1
- package/dist/cjs/utils/queuedStorage/createQueuedStorage.native.js +2 -2
- package/dist/cjs/utils/queuedStorage/createQueuedStorage.native.js.map +1 -1
- package/dist/cjs/utils/retry/NonRetryableError.js +2 -2
- package/dist/cjs/utils/retry/NonRetryableError.js.map +1 -1
- package/dist/cjs/utils/retry/retry.js +15 -6
- package/dist/cjs/utils/retry/retry.js.map +1 -1
- package/dist/esm/BackgroundProcessManager/BackgroundProcessManager.d.ts +2 -8
- package/dist/esm/BackgroundProcessManager/BackgroundProcessManager.mjs +11 -16
- package/dist/esm/BackgroundProcessManager/BackgroundProcessManager.mjs.map +1 -1
- package/dist/esm/BackgroundProcessManager/types.d.ts +3 -3
- package/dist/esm/Cache/StorageCacheCommon.mjs +5 -5
- package/dist/esm/Cache/StorageCacheCommon.mjs.map +1 -1
- package/dist/esm/Cache/types/cache.d.ts +1 -1
- package/dist/esm/Cache/utils/CacheList.mjs +2 -2
- package/dist/esm/Cache/utils/CacheList.mjs.map +1 -1
- package/dist/esm/Hub/index.d.ts +4 -4
- package/dist/esm/Hub/index.mjs +2 -2
- package/dist/esm/Hub/index.mjs.map +1 -1
- package/dist/esm/Hub/types/AuthTypes.d.ts +11 -11
- package/dist/esm/Hub/types/HubTypes.d.ts +8 -8
- package/dist/esm/I18n/I18n.d.ts +0 -6
- package/dist/esm/I18n/I18n.mjs +8 -13
- package/dist/esm/I18n/I18n.mjs.map +1 -1
- package/dist/esm/I18n/index.mjs +4 -4
- package/dist/esm/I18n/index.mjs.map +1 -1
- package/dist/esm/Logger/ConsoleLogger.d.ts +1 -1
- package/dist/esm/Logger/ConsoleLogger.mjs +8 -7
- package/dist/esm/Logger/ConsoleLogger.mjs.map +1 -1
- package/dist/esm/Logger/types.d.ts +2 -1
- package/dist/esm/Logger/types.mjs +1 -0
- package/dist/esm/Logger/types.mjs.map +1 -1
- package/dist/esm/Mutex/Mutex.mjs +4 -1
- package/dist/esm/Mutex/Mutex.mjs.map +1 -1
- package/dist/esm/Mutex/types.d.ts +2 -6
- package/dist/esm/Platform/detectFramework.mjs +3 -1
- package/dist/esm/Platform/detectFramework.mjs.map +1 -1
- package/dist/esm/Platform/detection/Angular.mjs +2 -4
- package/dist/esm/Platform/detection/Angular.mjs.map +1 -1
- package/dist/esm/Platform/detection/Expo.mjs +1 -2
- package/dist/esm/Platform/detection/Expo.mjs.map +1 -1
- package/dist/esm/Platform/detection/Next.mjs +3 -2
- package/dist/esm/Platform/detection/Next.mjs.map +1 -1
- package/dist/esm/Platform/detection/Nuxt.mjs +3 -4
- package/dist/esm/Platform/detection/Nuxt.mjs.map +1 -1
- package/dist/esm/Platform/detection/index.mjs.map +1 -1
- package/dist/esm/Platform/index.d.ts +2 -2
- package/dist/esm/Platform/index.mjs +1 -1
- package/dist/esm/Platform/index.mjs.map +1 -1
- package/dist/esm/Platform/types.d.ts +12 -12
- package/dist/esm/Platform/version.d.ts +1 -1
- package/dist/esm/Platform/version.mjs +1 -1
- package/dist/esm/Platform/version.mjs.map +1 -1
- package/dist/esm/Reachability/Reachability.mjs +6 -2
- package/dist/esm/Reachability/Reachability.mjs.map +1 -1
- package/dist/esm/Reachability/types.d.ts +2 -2
- package/dist/esm/ServiceWorker/ServiceWorker.d.ts +0 -1
- package/dist/esm/ServiceWorker/ServiceWorker.mjs +11 -11
- package/dist/esm/ServiceWorker/ServiceWorker.mjs.map +1 -1
- package/dist/esm/Signer/DateUtils.d.ts +9 -9
- package/dist/esm/Signer/DateUtils.mjs +1 -1
- package/dist/esm/Signer/DateUtils.mjs.map +1 -1
- package/dist/esm/Signer/Signer.mjs +3 -3
- package/dist/esm/Signer/Signer.mjs.map +1 -1
- package/dist/esm/adapterCore/serverContext/serverContext.d.ts +1 -1
- package/dist/esm/adapterCore/serverContext/serverContext.mjs +1 -1
- package/dist/esm/adapterCore/serverContext/serverContext.mjs.map +1 -1
- package/dist/esm/adapterCore/serverContext/types/amplifyServer.d.ts +7 -9
- package/dist/esm/awsClients/cognitoIdentity/base.d.ts +1 -1
- package/dist/esm/awsClients/cognitoIdentity/base.mjs +2 -2
- package/dist/esm/awsClients/cognitoIdentity/base.mjs.map +1 -1
- package/dist/esm/awsClients/cognitoIdentity/getCredentialsForIdentity.d.ts +2 -6
- package/dist/esm/awsClients/cognitoIdentity/getCredentialsForIdentity.mjs +1 -1
- package/dist/esm/awsClients/cognitoIdentity/getCredentialsForIdentity.mjs.map +1 -1
- package/dist/esm/awsClients/cognitoIdentity/getId.d.ts +2 -6
- package/dist/esm/awsClients/cognitoIdentity/getId.mjs +1 -1
- package/dist/esm/awsClients/cognitoIdentity/getId.mjs.map +1 -1
- package/dist/esm/awsClients/cognitoIdentity/types.d.ts +2 -4
- package/dist/esm/awsClients/pinpoint/base.mjs.map +1 -1
- package/dist/esm/awsClients/pinpoint/getInAppMessages.d.ts +1 -1
- package/dist/esm/awsClients/pinpoint/getInAppMessages.mjs +1 -1
- package/dist/esm/awsClients/pinpoint/getInAppMessages.mjs.map +1 -1
- package/dist/esm/awsClients/pinpoint/putEvents.d.ts +1 -1
- package/dist/esm/awsClients/pinpoint/putEvents.mjs +1 -1
- package/dist/esm/awsClients/pinpoint/putEvents.mjs.map +1 -1
- package/dist/esm/awsClients/pinpoint/types.d.ts +3 -6
- package/dist/esm/awsClients/pinpoint/updateEndpoint.d.ts +1 -1
- package/dist/esm/awsClients/pinpoint/updateEndpoint.mjs +1 -1
- package/dist/esm/awsClients/pinpoint/updateEndpoint.mjs.map +1 -1
- package/dist/esm/clients/handlers/authenticated.mjs +6 -6
- package/dist/esm/clients/handlers/authenticated.mjs.map +1 -1
- package/dist/esm/clients/handlers/unauthenticated.mjs +3 -3
- package/dist/esm/clients/handlers/unauthenticated.mjs.map +1 -1
- package/dist/esm/clients/index.d.ts +3 -3
- package/dist/esm/clients/index.mjs +3 -3
- package/dist/esm/clients/internal/composeServiceApi.d.ts +2 -2
- package/dist/esm/clients/internal/composeServiceApi.mjs +1 -1
- package/dist/esm/clients/internal/composeServiceApi.mjs.map +1 -1
- package/dist/esm/clients/internal/composeTransferHandler.d.ts +2 -2
- package/dist/esm/clients/internal/composeTransferHandler.mjs +1 -1
- package/dist/esm/clients/internal/composeTransferHandler.mjs.map +1 -1
- package/dist/esm/clients/middleware/retry/defaultRetryDecider.d.ts +1 -1
- package/dist/esm/clients/middleware/retry/defaultRetryDecider.mjs +2 -2
- package/dist/esm/clients/middleware/retry/defaultRetryDecider.mjs.map +1 -1
- package/dist/esm/clients/middleware/retry/index.d.ts +1 -1
- package/dist/esm/clients/middleware/retry/index.mjs +1 -1
- package/dist/esm/clients/middleware/retry/jitteredBackoff.mjs.map +1 -1
- package/dist/esm/clients/middleware/retry/middleware.d.ts +3 -3
- package/dist/esm/clients/middleware/retry/middleware.mjs +5 -5
- package/dist/esm/clients/middleware/retry/middleware.mjs.map +1 -1
- package/dist/esm/clients/middleware/signing/index.d.ts +1 -1
- package/dist/esm/clients/middleware/signing/index.mjs +1 -1
- package/dist/esm/clients/middleware/signing/middleware.d.ts +1 -1
- package/dist/esm/clients/middleware/signing/middleware.mjs +2 -2
- package/dist/esm/clients/middleware/signing/middleware.mjs.map +1 -1
- package/dist/esm/clients/middleware/signing/signer/signatureV4/presignUrl.d.ts +1 -1
- package/dist/esm/clients/middleware/signing/signer/signatureV4/presignUrl.mjs +1 -2
- package/dist/esm/clients/middleware/signing/signer/signatureV4/presignUrl.mjs.map +1 -1
- package/dist/esm/clients/middleware/signing/signer/signatureV4/utils/getFormattedDates.mjs +1 -1
- package/dist/esm/clients/middleware/signing/signer/signatureV4/utils/getFormattedDates.mjs.map +1 -1
- package/dist/esm/clients/middleware/userAgent/index.d.ts +1 -1
- package/dist/esm/clients/middleware/userAgent/index.mjs +1 -1
- package/dist/esm/clients/middleware/userAgent/middleware.d.ts +1 -1
- package/dist/esm/clients/middleware/userAgent/middleware.mjs +2 -2
- package/dist/esm/clients/middleware/userAgent/middleware.mjs.map +1 -1
- package/dist/esm/clients/serde/json.mjs +1 -1
- package/dist/esm/clients/serde/json.mjs.map +1 -1
- package/dist/esm/clients/types/aws.d.ts +3 -3
- package/dist/esm/clients/types/core.d.ts +3 -5
- package/dist/esm/errors/APIError.d.ts +1 -1
- package/dist/esm/errors/errorHelpers.mjs +1 -1
- package/dist/esm/errors/errorHelpers.mjs.map +1 -1
- package/dist/esm/index.d.ts +1 -1
- package/dist/esm/libraryUtils.d.ts +1 -1
- package/dist/esm/parseAWSExports.mjs +1 -1
- package/dist/esm/parseAWSExports.mjs.map +1 -1
- package/dist/esm/providers/kinesis/types/kinesis.d.ts +2 -2
- package/dist/esm/providers/kinesis-firehose/types/kinesis-firehose.d.ts +2 -2
- package/dist/esm/providers/personalize/types/personalize.d.ts +2 -2
- package/dist/esm/providers/pinpoint/apis/updateEndpoint.mjs +1 -1
- package/dist/esm/providers/pinpoint/apis/updateEndpoint.mjs.map +1 -1
- package/dist/esm/providers/pinpoint/types/buffer.d.ts +6 -8
- package/dist/esm/providers/pinpoint/types/pinpoint.d.ts +10 -10
- package/dist/esm/providers/pinpoint/utils/PinpointEventBuffer.d.ts +1 -1
- package/dist/esm/providers/pinpoint/utils/PinpointEventBuffer.mjs +2 -3
- package/dist/esm/providers/pinpoint/utils/PinpointEventBuffer.mjs.map +1 -1
- package/dist/esm/providers/pinpoint/utils/getEventBuffer.d.ts +1 -1
- package/dist/esm/providers/pinpoint/utils/isAppInForeground.native.mjs +0 -1
- package/dist/esm/providers/pinpoint/utils/isAppInForeground.native.mjs.map +1 -1
- package/dist/esm/singleton/API/types.d.ts +35 -37
- package/dist/esm/singleton/Amplify.d.ts +1 -1
- package/dist/esm/singleton/Amplify.mjs +1 -1
- package/dist/esm/singleton/Amplify.mjs.map +1 -1
- package/dist/esm/singleton/Auth/index.d.ts +0 -1
- package/dist/esm/singleton/Auth/index.mjs +2 -6
- package/dist/esm/singleton/Auth/index.mjs.map +1 -1
- package/dist/esm/singleton/Auth/types.d.ts +53 -52
- package/dist/esm/singleton/Auth/utils/index.d.ts +1 -1
- package/dist/esm/singleton/Auth/utils/index.mjs +4 -4
- package/dist/esm/singleton/Auth/utils/index.mjs.map +1 -1
- package/dist/esm/singleton/Geo/types.d.ts +3 -3
- package/dist/esm/singleton/Interactions/types.d.ts +4 -4
- package/dist/esm/singleton/Notifications/types.d.ts +5 -5
- package/dist/esm/singleton/Predictions/types.d.ts +28 -28
- package/dist/esm/singleton/Storage/types.d.ts +2 -2
- package/dist/esm/singleton/apis/fetchAuthSession.mjs +1 -1
- package/dist/esm/singleton/apis/fetchAuthSession.mjs.map +1 -1
- package/dist/esm/singleton/types.d.ts +8 -8
- package/dist/esm/storage/CookieStorage.mjs +8 -4
- package/dist/esm/storage/CookieStorage.mjs.map +1 -1
- package/dist/esm/storage/CookieStorage.native.d.ts +0 -1
- package/dist/esm/storage/CookieStorage.native.mjs +0 -3
- package/dist/esm/storage/CookieStorage.native.mjs.map +1 -1
- package/dist/esm/types/core.d.ts +2 -2
- package/dist/esm/types/errors.d.ts +4 -4
- package/dist/esm/types/storage.d.ts +2 -2
- package/dist/esm/utils/WordArray.mjs +2 -2
- package/dist/esm/utils/WordArray.mjs.map +1 -1
- package/dist/esm/utils/deDupeAsyncFunction.d.ts +1 -5
- package/dist/esm/utils/deDupeAsyncFunction.mjs +8 -8
- package/dist/esm/utils/deDupeAsyncFunction.mjs.map +1 -1
- package/dist/esm/utils/getClientInfo/getClientInfo.android.mjs +0 -1
- package/dist/esm/utils/getClientInfo/getClientInfo.android.mjs.map +1 -1
- package/dist/esm/utils/getClientInfo/getClientInfo.ios.mjs +0 -1
- package/dist/esm/utils/getClientInfo/getClientInfo.ios.mjs.map +1 -1
- package/dist/esm/utils/globalHelpers/index.native.mjs.map +1 -1
- package/dist/esm/utils/queuedStorage/createQueuedStorage.native.mjs +2 -2
- package/dist/esm/utils/queuedStorage/createQueuedStorage.native.mjs.map +1 -1
- package/dist/esm/utils/retry/NonRetryableError.d.ts +0 -1
- package/dist/esm/utils/retry/NonRetryableError.mjs +2 -2
- package/dist/esm/utils/retry/NonRetryableError.mjs.map +1 -1
- package/dist/esm/utils/retry/retry.mjs +15 -6
- package/dist/esm/utils/retry/retry.mjs.map +1 -1
- package/dist/esm/utils/sessionListener/SessionListener.d.ts +1 -1
- package/dist/esm/utils/sessionListener/SessionListener.native.d.ts +1 -1
- package/dist/esm/utils/sessionListener/types.d.ts +2 -2
- package/package.json +5 -4
- package/src/BackgroundProcessManager/BackgroundProcessManager.ts +29 -34
- package/src/BackgroundProcessManager/types.ts +3 -3
- package/src/Cache/StorageCache.native.ts +5 -0
- package/src/Cache/StorageCache.ts +2 -0
- package/src/Cache/StorageCacheCommon.ts +49 -29
- package/src/Cache/types/cache.ts +2 -1
- package/src/Cache/utils/CacheList.ts +6 -3
- package/src/Cache/utils/cacheHelpers.ts +2 -1
- package/src/Hub/index.ts +15 -15
- package/src/Hub/types/AuthTypes.ts +11 -11
- package/src/Hub/types/HubTypes.ts +11 -8
- package/src/I18n/I18n.ts +10 -16
- package/src/I18n/index.ts +7 -7
- package/src/Logger/ConsoleLogger.ts +12 -9
- package/src/Logger/types.ts +1 -0
- package/src/Mutex/Mutex.ts +8 -4
- package/src/Mutex/types.ts +3 -7
- package/src/Platform/customUserAgent.ts +3 -3
- package/src/Platform/detectFramework.ts +4 -1
- package/src/Platform/detection/Angular.ts +4 -4
- package/src/Platform/detection/Expo.ts +1 -2
- package/src/Platform/detection/Next.ts +5 -2
- package/src/Platform/detection/Nuxt.ts +5 -4
- package/src/Platform/detection/index.ts +9 -9
- package/src/Platform/index.ts +4 -4
- package/src/Platform/types.ts +12 -12
- package/src/Platform/version.ts +1 -1
- package/src/Reachability/Reachability.native.ts +6 -3
- package/src/Reachability/Reachability.ts +12 -6
- package/src/Reachability/types.ts +2 -2
- package/src/ServiceWorker/ServiceWorker.ts +28 -23
- package/src/Signer/DateUtils.ts +16 -16
- package/src/Signer/Signer.ts +19 -13
- package/src/adapterCore/serverContext/serverContext.ts +6 -5
- package/src/adapterCore/serverContext/serverContextRegistry.ts +2 -1
- package/src/adapterCore/serverContext/types/amplifyServer.ts +15 -17
- package/src/adapterCore/serverContext/types/cookieStorage.ts +1 -1
- package/src/awsClients/cognitoIdentity/base.ts +16 -12
- package/src/awsClients/cognitoIdentity/getCredentialsForIdentity.ts +13 -10
- package/src/awsClients/cognitoIdentity/getId.ts +12 -9
- package/src/awsClients/cognitoIdentity/types.ts +3 -3
- package/src/awsClients/pinpoint/base.ts +1 -1
- package/src/awsClients/pinpoint/getInAppMessages.ts +8 -5
- package/src/awsClients/pinpoint/putEvents.ts +8 -5
- package/src/awsClients/pinpoint/types.ts +3 -4
- package/src/awsClients/pinpoint/updateEndpoint.ts +8 -5
- package/src/clients/endpoints/getDnsSuffix.ts +1 -0
- package/src/clients/handlers/authenticated.ts +14 -7
- package/src/clients/handlers/fetch.ts +1 -1
- package/src/clients/handlers/unauthenticated.ts +8 -4
- package/src/clients/index.ts +6 -3
- package/src/clients/internal/composeServiceApi.ts +8 -7
- package/src/clients/internal/composeTransferHandler.ts +16 -15
- package/src/clients/middleware/retry/defaultRetryDecider.ts +5 -3
- package/src/clients/middleware/retry/index.ts +1 -1
- package/src/clients/middleware/retry/jitteredBackoff.ts +3 -1
- package/src/clients/middleware/retry/middleware.ts +12 -9
- package/src/clients/middleware/signing/index.ts +1 -1
- package/src/clients/middleware/signing/middleware.ts +5 -2
- package/src/clients/middleware/signing/signer/signatureV4/presignUrl.ts +4 -4
- package/src/clients/middleware/signing/signer/signatureV4/signRequest.ts +2 -1
- package/src/clients/middleware/signing/signer/signatureV4/utils/dataHashHelpers.ts +4 -2
- package/src/clients/middleware/signing/signer/signatureV4/utils/getCanonicalQueryString.ts +2 -1
- package/src/clients/middleware/signing/signer/signatureV4/utils/getCanonicalRequest.ts +2 -1
- package/src/clients/middleware/signing/signer/signatureV4/utils/getCanonicalUri.ts +1 -1
- package/src/clients/middleware/signing/signer/signatureV4/utils/getCredentialScope.ts +1 -1
- package/src/clients/middleware/signing/signer/signatureV4/utils/getFormattedDates.ts +2 -1
- package/src/clients/middleware/signing/signer/signatureV4/utils/getHashedPayload.ts +3 -0
- package/src/clients/middleware/signing/signer/signatureV4/utils/getSignature.ts +4 -3
- package/src/clients/middleware/signing/signer/signatureV4/utils/getSigningKey.ts +3 -1
- package/src/clients/middleware/signing/signer/signatureV4/utils/getSigningValues.ts +3 -1
- package/src/clients/middleware/signing/signer/signatureV4/utils/getStringToSign.ts +2 -2
- package/src/clients/middleware/signing/utils/getUpdatedSystemClockOffset.ts +2 -1
- package/src/clients/middleware/signing/utils/isClockSkewed.ts +2 -2
- package/src/clients/middleware/userAgent/index.ts +1 -1
- package/src/clients/middleware/userAgent/middleware.ts +3 -1
- package/src/clients/serde/json.ts +6 -2
- package/src/clients/serde/responseInfo.ts +6 -2
- package/src/clients/types/aws.ts +6 -3
- package/src/clients/types/core.ts +6 -8
- package/src/clients/types/http.ts +2 -1
- package/src/clients/utils/memoization.ts +2 -0
- package/src/errors/APIError.ts +3 -2
- package/src/errors/PlatformNotSupportedError.ts +1 -0
- package/src/errors/createAssertionFunction.ts +2 -1
- package/src/errors/errorHelpers.ts +2 -1
- package/src/index.ts +0 -1
- package/src/libraryUtils.ts +1 -0
- package/src/parseAWSExports.ts +16 -15
- package/src/providers/kinesis/types/kinesis.ts +2 -2
- package/src/providers/kinesis-firehose/types/kinesis-firehose.ts +2 -2
- package/src/providers/personalize/types/personalize.ts +2 -2
- package/src/providers/pinpoint/apis/updateEndpoint.ts +2 -2
- package/src/providers/pinpoint/types/buffer.ts +7 -8
- package/src/providers/pinpoint/types/pinpoint.ts +11 -10
- package/src/providers/pinpoint/utils/PinpointEventBuffer.ts +11 -21
- package/src/providers/pinpoint/utils/cacheEndpointId.ts +3 -1
- package/src/providers/pinpoint/utils/getCacheKey.ts +1 -1
- package/src/providers/pinpoint/utils/getEndpointId.ts +3 -1
- package/src/providers/pinpoint/utils/getEventBuffer.ts +2 -1
- package/src/providers/pinpoint/utils/isAppInForeground.native.ts +0 -1
- package/src/providers/pinpoint/utils/resolveEndpointId.ts +1 -0
- package/src/singleton/API/types.ts +35 -33
- package/src/singleton/Amplify.ts +8 -6
- package/src/singleton/Auth/index.ts +9 -13
- package/src/singleton/Auth/types.ts +59 -51
- package/src/singleton/Auth/utils/index.ts +16 -28
- package/src/singleton/Geo/types.ts +3 -3
- package/src/singleton/Interactions/types.ts +4 -4
- package/src/singleton/Notifications/types.ts +6 -5
- package/src/singleton/Predictions/types.ts +28 -28
- package/src/singleton/Storage/types.ts +2 -2
- package/src/singleton/apis/fetchAuthSession.ts +2 -1
- package/src/singleton/apis/internal/fetchAuthSession.ts +1 -1
- package/src/singleton/apis/server/fetchAuthSession.ts +2 -2
- package/src/singleton/types.ts +10 -10
- package/src/storage/CookieStorage.native.ts +1 -5
- package/src/storage/CookieStorage.ts +12 -6
- package/src/storage/DefaultStorage.native.ts +3 -1
- package/src/storage/InMemoryStorage.ts +1 -0
- package/src/storage/KeyValueStorage.ts +1 -0
- package/src/types/core.ts +3 -3
- package/src/types/errors.ts +5 -5
- package/src/types/storage.ts +2 -2
- package/src/utils/WordArray.ts +2 -2
- package/src/utils/convert/base64/base64Encoder.ts +1 -0
- package/src/utils/convert/types.ts +1 -1
- package/src/utils/cryptoSecureRandomInt.ts +1 -0
- package/src/utils/deDupeAsyncFunction.ts +15 -20
- package/src/utils/generateRandomString.ts +1 -1
- package/src/utils/getClientInfo/getClientInfo.android.ts +3 -2
- package/src/utils/getClientInfo/getClientInfo.ios.ts +4 -2
- package/src/utils/getClientInfo/getClientInfo.ts +3 -3
- package/src/utils/globalHelpers/index.native.ts +2 -1
- package/src/utils/haveCredentialsChanged.ts +5 -2
- package/src/utils/isWebWorker.ts +1 -0
- package/src/utils/queuedStorage/createQueuedStorage.native.ts +9 -6
- package/src/utils/queuedStorage/createQueuedStorage.ts +7 -3
- package/src/utils/queuedStorage/types.ts +1 -1
- package/src/utils/retry/NonRetryableError.ts +0 -3
- package/src/utils/retry/isNonRetryableError.ts +1 -0
- package/src/utils/retry/jitteredBackoff.ts +3 -1
- package/src/utils/retry/jitteredExponentialRetry.ts +1 -1
- package/src/utils/retry/retry.ts +22 -8
- package/src/utils/sessionListener/SessionListener.native.ts +4 -3
- package/src/utils/sessionListener/SessionListener.ts +4 -3
- package/src/utils/sessionListener/index.ts +1 -0
- package/src/utils/sessionListener/types.ts +2 -2
- package/src/utils/urlSafeDecode.ts +1 -0
package/src/singleton/types.ts
CHANGED
|
@@ -3,18 +3,18 @@
|
|
|
3
3
|
|
|
4
4
|
import {
|
|
5
5
|
APIConfig,
|
|
6
|
-
LibraryAPIOptions,
|
|
7
6
|
GraphQLProviderConfig,
|
|
7
|
+
LibraryAPIOptions,
|
|
8
8
|
} from './API/types';
|
|
9
9
|
import { AnalyticsConfig } from './Analytics/types';
|
|
10
10
|
import {
|
|
11
11
|
AuthConfig,
|
|
12
|
-
LibraryAuthOptions,
|
|
13
|
-
AuthUserPoolConfig,
|
|
14
12
|
AuthIdentityPoolConfig,
|
|
15
13
|
AuthUserPoolAndIdentityPoolConfig,
|
|
16
|
-
|
|
14
|
+
AuthUserPoolConfig,
|
|
17
15
|
CognitoIdentityPoolConfig,
|
|
16
|
+
GetCredentialsOptions,
|
|
17
|
+
LibraryAuthOptions,
|
|
18
18
|
} from './Auth/types';
|
|
19
19
|
import { GeoConfig } from './Geo/types';
|
|
20
20
|
import { PredictionsConfig } from './Predictions/types';
|
|
@@ -26,17 +26,17 @@ import {
|
|
|
26
26
|
import { NotificationsConfig } from './Notifications/types';
|
|
27
27
|
import { InteractionsConfig } from './Interactions/types';
|
|
28
28
|
|
|
29
|
-
export
|
|
29
|
+
export interface LegacyConfig {
|
|
30
30
|
/**
|
|
31
31
|
* @deprecated The field should not be used.
|
|
32
32
|
*/
|
|
33
33
|
aws_project_region?: string;
|
|
34
|
-
}
|
|
34
|
+
}
|
|
35
35
|
|
|
36
36
|
export type AtLeastOne<T, U = { [K in keyof T]: Pick<T, K> }> = Partial<T> &
|
|
37
37
|
U[keyof U];
|
|
38
38
|
|
|
39
|
-
export
|
|
39
|
+
export interface ResourcesConfig {
|
|
40
40
|
API?: APIConfig;
|
|
41
41
|
Analytics?: AnalyticsConfig;
|
|
42
42
|
Auth?: AuthConfig;
|
|
@@ -45,14 +45,14 @@ export type ResourcesConfig = {
|
|
|
45
45
|
Predictions?: PredictionsConfig;
|
|
46
46
|
Storage?: StorageConfig;
|
|
47
47
|
Geo?: GeoConfig;
|
|
48
|
-
}
|
|
48
|
+
}
|
|
49
49
|
|
|
50
|
-
export
|
|
50
|
+
export interface LibraryOptions {
|
|
51
51
|
API?: LibraryAPIOptions;
|
|
52
52
|
Auth?: LibraryAuthOptions;
|
|
53
53
|
Storage?: LibraryStorageOptions;
|
|
54
54
|
ssr?: boolean;
|
|
55
|
-
}
|
|
55
|
+
}
|
|
56
56
|
|
|
57
57
|
export {
|
|
58
58
|
APIConfig,
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
// SPDX-License-Identifier: Apache-2.0
|
|
3
3
|
|
|
4
4
|
import JsCookie from 'js-cookie';
|
|
5
|
+
|
|
5
6
|
import {
|
|
6
7
|
CookieStorageData,
|
|
7
8
|
KeyValueStorageInterface,
|
|
@@ -18,19 +19,23 @@ export class CookieStorage implements KeyValueStorageInterface {
|
|
|
18
19
|
constructor(data: CookieStorageData = {}) {
|
|
19
20
|
const { path, domain, expires, sameSite, secure } = data;
|
|
20
21
|
this.domain = domain;
|
|
21
|
-
this.path = path
|
|
22
|
-
this.expires =
|
|
23
|
-
|
|
22
|
+
this.path = path || '/';
|
|
23
|
+
this.expires = Object.prototype.hasOwnProperty.call(data, 'expires')
|
|
24
|
+
? expires
|
|
25
|
+
: 365;
|
|
26
|
+
this.secure = Object.prototype.hasOwnProperty.call(data, 'secure')
|
|
27
|
+
? secure
|
|
28
|
+
: true;
|
|
24
29
|
|
|
25
|
-
if (
|
|
30
|
+
if (Object.prototype.hasOwnProperty.call(data, 'sameSite')) {
|
|
26
31
|
if (!sameSite || !['strict', 'lax', 'none'].includes(sameSite)) {
|
|
27
32
|
throw new Error(
|
|
28
|
-
'The sameSite value of cookieStorage must be "lax", "strict" or "none".'
|
|
33
|
+
'The sameSite value of cookieStorage must be "lax", "strict" or "none".',
|
|
29
34
|
);
|
|
30
35
|
}
|
|
31
36
|
if (sameSite === 'none' && !this.secure) {
|
|
32
37
|
throw new Error(
|
|
33
|
-
'sameSite = None requires the Secure attribute in latest browser versions.'
|
|
38
|
+
'sameSite = None requires the Secure attribute in latest browser versions.',
|
|
34
39
|
);
|
|
35
40
|
}
|
|
36
41
|
this.sameSite = sameSite;
|
|
@@ -43,6 +48,7 @@ export class CookieStorage implements KeyValueStorageInterface {
|
|
|
43
48
|
|
|
44
49
|
async getItem(key: string) {
|
|
45
50
|
const item = JsCookie.get(key);
|
|
51
|
+
|
|
46
52
|
return item ?? null;
|
|
47
53
|
}
|
|
48
54
|
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
// SPDX-License-Identifier: Apache-2.0
|
|
3
3
|
|
|
4
4
|
import { loadAsyncStorage } from '@aws-amplify/react-native';
|
|
5
|
+
|
|
5
6
|
import { KeyValueStorageInterface } from '../types';
|
|
6
7
|
|
|
7
8
|
const MEMORY_KEY_PREFIX = '@MemoryStorage:';
|
|
@@ -51,8 +52,9 @@ export class DefaultStorage implements KeyValueStorageInterface {
|
|
|
51
52
|
*/
|
|
52
53
|
async clear(): Promise<void> {
|
|
53
54
|
const allKeys = await this.asyncStorage.getAllKeys();
|
|
55
|
+
|
|
54
56
|
return this.asyncStorage.multiRemove(
|
|
55
|
-
allKeys.filter(key => key.startsWith(MEMORY_KEY_PREFIX))
|
|
57
|
+
allKeys.filter(key => key.startsWith(MEMORY_KEY_PREFIX)),
|
|
56
58
|
);
|
|
57
59
|
}
|
|
58
60
|
}
|
package/src/types/core.ts
CHANGED
|
@@ -15,7 +15,7 @@ export interface AmplifyConfig {
|
|
|
15
15
|
ssr?: boolean;
|
|
16
16
|
}
|
|
17
17
|
|
|
18
|
-
export
|
|
18
|
+
export interface UserProfile {
|
|
19
19
|
customProperties?: Record<string, string[]>;
|
|
20
20
|
demographic?: {
|
|
21
21
|
appVersion?: string;
|
|
@@ -39,7 +39,7 @@ export type UserProfile = {
|
|
|
39
39
|
metrics?: Record<string, number>;
|
|
40
40
|
name?: string;
|
|
41
41
|
plan?: string;
|
|
42
|
-
}
|
|
42
|
+
}
|
|
43
43
|
|
|
44
44
|
/**
|
|
45
45
|
* @internal
|
|
@@ -47,5 +47,5 @@ export type UserProfile = {
|
|
|
47
47
|
export type DelayFunction = (
|
|
48
48
|
attempt: number,
|
|
49
49
|
args?: any[],
|
|
50
|
-
error?: unknown
|
|
50
|
+
error?: unknown,
|
|
51
51
|
) => number | false;
|
package/src/types/errors.ts
CHANGED
|
@@ -7,12 +7,12 @@ export enum AmplifyErrorCode {
|
|
|
7
7
|
Unknown = 'Unknown',
|
|
8
8
|
}
|
|
9
9
|
|
|
10
|
-
export
|
|
10
|
+
export interface AmplifyErrorParams<ErrorCode extends string = string> {
|
|
11
11
|
message: string;
|
|
12
12
|
name: ErrorCode;
|
|
13
13
|
recoverySuggestion?: string;
|
|
14
14
|
underlyingError?: Error | unknown;
|
|
15
|
-
}
|
|
15
|
+
}
|
|
16
16
|
|
|
17
17
|
export type AmplifyErrorMap<ErrorCode extends string = string> = {
|
|
18
18
|
[name in ErrorCode]: {
|
|
@@ -21,13 +21,13 @@ export type AmplifyErrorMap<ErrorCode extends string = string> = {
|
|
|
21
21
|
};
|
|
22
22
|
};
|
|
23
23
|
|
|
24
|
-
export
|
|
24
|
+
export interface ServiceError {
|
|
25
25
|
name: string;
|
|
26
26
|
message: string;
|
|
27
|
-
}
|
|
27
|
+
}
|
|
28
28
|
|
|
29
29
|
export type AssertionFunction<ErrorCode extends string = string> = (
|
|
30
30
|
assertion: boolean,
|
|
31
31
|
name: ErrorCode,
|
|
32
|
-
additionalContext?: string
|
|
32
|
+
additionalContext?: string,
|
|
33
33
|
) => asserts assertion;
|
package/src/types/storage.ts
CHANGED
|
@@ -10,7 +10,7 @@ export interface KeyValueStorageInterface {
|
|
|
10
10
|
|
|
11
11
|
export type SameSite = 'strict' | 'lax' | 'none';
|
|
12
12
|
|
|
13
|
-
export
|
|
13
|
+
export interface CookieStorageData {
|
|
14
14
|
domain?: string;
|
|
15
15
|
path?: string;
|
|
16
16
|
|
|
@@ -20,4 +20,4 @@ export type CookieStorageData = {
|
|
|
20
20
|
expires?: number;
|
|
21
21
|
secure?: boolean;
|
|
22
22
|
sameSite?: SameSite;
|
|
23
|
-
}
|
|
23
|
+
}
|
package/src/utils/WordArray.ts
CHANGED
|
@@ -12,8 +12,8 @@ import { cryptoSecureRandomInt } from './cryptoSecureRandomInt';
|
|
|
12
12
|
*/
|
|
13
13
|
function hexStringify(wordArray: WordArray): string {
|
|
14
14
|
// Shortcuts
|
|
15
|
-
const words = wordArray
|
|
16
|
-
const sigBytes = wordArray
|
|
15
|
+
const { words } = wordArray;
|
|
16
|
+
const { sigBytes } = wordArray;
|
|
17
17
|
|
|
18
18
|
// Convert
|
|
19
19
|
const hexChars: string[] = [];
|
|
@@ -1,14 +1,6 @@
|
|
|
1
1
|
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
2
2
|
// SPDX-License-Identifier: Apache-2.0
|
|
3
3
|
|
|
4
|
-
// this will make the tsc-compliance-test to pass
|
|
5
|
-
type Awaited<T> = T extends null | undefined
|
|
6
|
-
? T // special case for `null | undefined` when not in `--strictNullChecks` mode
|
|
7
|
-
: T extends object & { then(onfulfilled: infer F, ...args: infer _): any } // `await` only unwraps object types with a callable `then`. Non-object types are not unwrapped
|
|
8
|
-
? F extends (value: infer V, ...args: infer _) => any // if the argument to `then` is callable, extracts the first argument
|
|
9
|
-
? Awaited<V> // recursively unwrap the value
|
|
10
|
-
: never // the argument to `then` was not callable
|
|
11
|
-
: T; //
|
|
12
4
|
/**
|
|
13
5
|
* returns in-flight promise if there is one
|
|
14
6
|
*
|
|
@@ -16,21 +8,24 @@ type Awaited<T> = T extends null | undefined
|
|
|
16
8
|
* @returns - the return type of the callback
|
|
17
9
|
*/
|
|
18
10
|
export const deDupeAsyncFunction = <A extends any[], R>(
|
|
19
|
-
asyncFunction: (...args: A) => Promise<R
|
|
11
|
+
asyncFunction: (...args: A) => Promise<R>,
|
|
20
12
|
) => {
|
|
21
|
-
let inflightPromise: Promise<
|
|
22
|
-
|
|
13
|
+
let inflightPromise: Promise<R> | undefined;
|
|
14
|
+
|
|
15
|
+
return async (...args: A): Promise<R> => {
|
|
23
16
|
if (inflightPromise) return inflightPromise;
|
|
24
17
|
|
|
25
|
-
inflightPromise = new Promise(
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
18
|
+
inflightPromise = new Promise<R>((resolve, reject) => {
|
|
19
|
+
asyncFunction(...args)
|
|
20
|
+
.then(result => {
|
|
21
|
+
resolve(result);
|
|
22
|
+
})
|
|
23
|
+
.catch(error => {
|
|
24
|
+
reject(error);
|
|
25
|
+
})
|
|
26
|
+
.finally(() => {
|
|
27
|
+
inflightPromise = undefined;
|
|
28
|
+
});
|
|
34
29
|
});
|
|
35
30
|
|
|
36
31
|
return inflightPromise;
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
2
2
|
// SPDX-License-Identifier: Apache-2.0
|
|
3
|
-
|
|
4
|
-
import {
|
|
3
|
+
|
|
4
|
+
import { Dimensions, Platform } from 'react-native';
|
|
5
|
+
|
|
5
6
|
import { ConsoleLogger } from '../../Logger';
|
|
6
7
|
|
|
7
8
|
const logger = new ConsoleLogger('getClientInfo');
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
2
2
|
// SPDX-License-Identifier: Apache-2.0
|
|
3
|
-
|
|
4
|
-
import {
|
|
3
|
+
|
|
4
|
+
import { Dimensions, Platform } from 'react-native';
|
|
5
|
+
|
|
5
6
|
import { ConsoleLogger } from '../../Logger';
|
|
6
7
|
|
|
7
8
|
const logger = new ConsoleLogger('getClientInfo');
|
|
@@ -12,6 +13,7 @@ export const getClientInfo = () => {
|
|
|
12
13
|
const OS = 'ios';
|
|
13
14
|
const { Version } = Platform;
|
|
14
15
|
const { make, model } = dimToMake(dim);
|
|
16
|
+
|
|
15
17
|
return {
|
|
16
18
|
platform: OS,
|
|
17
19
|
version: String(Version),
|
|
@@ -50,7 +50,7 @@ function browserTimezone() {
|
|
|
50
50
|
function getBrowserType(userAgent: string) {
|
|
51
51
|
// The latest user agents for Opera: https://www.whatismybrowser.com/guides/the-latest-user-agent/opera
|
|
52
52
|
const operaMatch = /.+(Opera[\s[A-Z]*|OPR[\sA-Z]*)\/([0-9.]+).*/i.exec(
|
|
53
|
-
userAgent
|
|
53
|
+
userAgent,
|
|
54
54
|
);
|
|
55
55
|
if (operaMatch) {
|
|
56
56
|
return { type: operaMatch[1], version: operaMatch[2] };
|
|
@@ -58,7 +58,7 @@ function getBrowserType(userAgent: string) {
|
|
|
58
58
|
|
|
59
59
|
// The latest user agents for Edge: https://www.whatismybrowser.com/guides/the-latest-user-agent/edge
|
|
60
60
|
const ieMatch = /.+(Trident|Edge|Edg|EdgA|EdgiOS)\/([0-9.]+).*/i.exec(
|
|
61
|
-
userAgent
|
|
61
|
+
userAgent,
|
|
62
62
|
);
|
|
63
63
|
if (ieMatch) {
|
|
64
64
|
return { type: ieMatch[1], version: ieMatch[2] };
|
|
@@ -68,7 +68,7 @@ function getBrowserType(userAgent: string) {
|
|
|
68
68
|
// https://www.whatismybrowser.com/guides/the-latest-user-agent/firefox
|
|
69
69
|
// https://www.whatismybrowser.com/guides/the-latest-user-agent/chrome
|
|
70
70
|
const cfMatch = /.+(Chrome|CriOS|Firefox|FxiOS)\/([0-9.]+).*/i.exec(
|
|
71
|
-
userAgent
|
|
71
|
+
userAgent,
|
|
72
72
|
);
|
|
73
73
|
if (cfMatch) {
|
|
74
74
|
return { type: cfMatch[1], version: cfMatch[2] };
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
2
2
|
// SPDX-License-Identifier: Apache-2.0
|
|
3
3
|
|
|
4
|
-
import {
|
|
4
|
+
import { loadBase64, loadGetRandomValues } from '@aws-amplify/react-native';
|
|
5
|
+
|
|
5
6
|
import { AmplifyError } from '../../errors';
|
|
6
7
|
|
|
7
8
|
loadGetRandomValues();
|
|
@@ -5,10 +5,13 @@ import { AWSCredentials } from '../libraryUtils';
|
|
|
5
5
|
|
|
6
6
|
/**
|
|
7
7
|
* Utility for determining if credentials have changed.
|
|
8
|
-
*
|
|
8
|
+
*
|
|
9
9
|
* @internal
|
|
10
10
|
*/
|
|
11
|
-
export const haveCredentialsChanged = (
|
|
11
|
+
export const haveCredentialsChanged = (
|
|
12
|
+
cachedCredentials: AWSCredentials,
|
|
13
|
+
credentials: AWSCredentials,
|
|
14
|
+
) => {
|
|
12
15
|
return (
|
|
13
16
|
cachedCredentials.accessKeyId !== credentials.accessKeyId ||
|
|
14
17
|
cachedCredentials.sessionToken !== credentials.sessionToken ||
|
package/src/utils/isWebWorker.ts
CHANGED
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
// SPDX-License-Identifier: Apache-2.0
|
|
3
3
|
|
|
4
4
|
import { loadAsyncStorage } from '@aws-amplify/react-native';
|
|
5
|
+
|
|
5
6
|
import {
|
|
6
7
|
AddItemWithAuthPropertiesNative,
|
|
7
8
|
QueuedItem,
|
|
@@ -18,7 +19,7 @@ export const createQueuedStorage = (): QueuedStorage => {
|
|
|
18
19
|
|
|
19
20
|
const openDBPromise = new Promise<
|
|
20
21
|
ReturnType<typeof loadAsyncStorage> | undefined
|
|
21
|
-
>((resolve,
|
|
22
|
+
>((resolve, _reject) => {
|
|
22
23
|
try {
|
|
23
24
|
const asyncStorage = loadAsyncStorage();
|
|
24
25
|
|
|
@@ -28,9 +29,10 @@ export const createQueuedStorage = (): QueuedStorage => {
|
|
|
28
29
|
for (const item of items) {
|
|
29
30
|
currentBytesSize += item.bytesSize;
|
|
30
31
|
}
|
|
32
|
+
|
|
31
33
|
return undefined;
|
|
32
34
|
})
|
|
33
|
-
.then(
|
|
35
|
+
.then(__ => {
|
|
34
36
|
resolve(asyncStorage);
|
|
35
37
|
});
|
|
36
38
|
} catch (err) {
|
|
@@ -60,7 +62,7 @@ export const createQueuedStorage = (): QueuedStorage => {
|
|
|
60
62
|
return {
|
|
61
63
|
async add(
|
|
62
64
|
item,
|
|
63
|
-
{ dequeueBeforeEnqueue } = { dequeueBeforeEnqueue: false }
|
|
65
|
+
{ dequeueBeforeEnqueue } = { dequeueBeforeEnqueue: false },
|
|
64
66
|
) {
|
|
65
67
|
if (dequeueBeforeEnqueue) {
|
|
66
68
|
const itemsToDelete = await this.peek(1);
|
|
@@ -112,7 +114,7 @@ export const createQueuedStorage = (): QueuedStorage => {
|
|
|
112
114
|
|
|
113
115
|
const getQueuedItemKeys = async (
|
|
114
116
|
as: ReturnType<typeof loadAsyncStorage>,
|
|
115
|
-
sortKeys
|
|
117
|
+
sortKeys = false,
|
|
116
118
|
): Promise<string[]> => {
|
|
117
119
|
const keys = (await as.getAllKeys()).filter(key => key.startsWith(keyPrefix));
|
|
118
120
|
|
|
@@ -120,14 +122,15 @@ const getQueuedItemKeys = async (
|
|
|
120
122
|
? keys.sort((a, b) => {
|
|
121
123
|
const timestampA = a.split('_').pop() as string;
|
|
122
124
|
const timestampB = b.split('_').pop() as string;
|
|
125
|
+
|
|
123
126
|
return parseInt(timestampA) - parseInt(timestampB);
|
|
124
|
-
|
|
127
|
+
})
|
|
125
128
|
: keys;
|
|
126
129
|
};
|
|
127
130
|
|
|
128
131
|
const getQueuedItems = async (
|
|
129
132
|
as: ReturnType<typeof loadAsyncStorage>,
|
|
130
|
-
keys: string[]
|
|
133
|
+
keys: string[],
|
|
131
134
|
): Promise<QueuedItem[]> =>
|
|
132
135
|
(await as.multiGet(keys))
|
|
133
136
|
.filter((item): item is [string, string] => item[1] !== null)
|
|
@@ -46,6 +46,7 @@ export const createQueuedStorage = (): QueuedStorage => {
|
|
|
46
46
|
};
|
|
47
47
|
}).catch(err => {
|
|
48
48
|
error = err;
|
|
49
|
+
|
|
49
50
|
return undefined;
|
|
50
51
|
});
|
|
51
52
|
|
|
@@ -62,6 +63,7 @@ export const createQueuedStorage = (): QueuedStorage => {
|
|
|
62
63
|
const getStore = async (): Promise<IDBObjectStore> => {
|
|
63
64
|
const db = await getDB();
|
|
64
65
|
const transaction = db.transaction(STORE_NAME, 'readwrite');
|
|
66
|
+
|
|
65
67
|
return transaction.objectStore(STORE_NAME);
|
|
66
68
|
};
|
|
67
69
|
|
|
@@ -77,7 +79,7 @@ export const createQueuedStorage = (): QueuedStorage => {
|
|
|
77
79
|
return {
|
|
78
80
|
async add(
|
|
79
81
|
item,
|
|
80
|
-
{ dequeueBeforeEnqueue } = { dequeueBeforeEnqueue: false }
|
|
82
|
+
{ dequeueBeforeEnqueue } = { dequeueBeforeEnqueue: false },
|
|
81
83
|
) {
|
|
82
84
|
if (dequeueBeforeEnqueue) {
|
|
83
85
|
const itemsToDelete = await this.peek(1);
|
|
@@ -115,11 +117,13 @@ export const createQueuedStorage = (): QueuedStorage => {
|
|
|
115
117
|
const keyRangesToDelete = findRanges(
|
|
116
118
|
items
|
|
117
119
|
.map(item => item.id)
|
|
118
|
-
.filter((id): id is number => id !== undefined)
|
|
120
|
+
.filter((id): id is number => id !== undefined),
|
|
119
121
|
).map(([lower, upper]) => IDBKeyRange.bound(lower, upper));
|
|
120
122
|
|
|
121
123
|
await Promise.all(
|
|
122
|
-
keyRangesToDelete.map(range =>
|
|
124
|
+
keyRangesToDelete.map(range =>
|
|
125
|
+
promisifyIDBRequest(store.delete(range)),
|
|
126
|
+
),
|
|
123
127
|
);
|
|
124
128
|
|
|
125
129
|
for (const item of items) {
|
|
@@ -35,7 +35,7 @@ export interface AddItemWithAuthPropertiesNative
|
|
|
35
35
|
export interface QueuedStorage {
|
|
36
36
|
add(
|
|
37
37
|
item: ItemToAdd,
|
|
38
|
-
options?: { dequeueBeforeEnqueue: boolean }
|
|
38
|
+
options?: { dequeueBeforeEnqueue: boolean },
|
|
39
39
|
): Promise<void>;
|
|
40
40
|
peek(n?: number): Promise<QueuedItem[]>;
|
|
41
41
|
peekAll(): Promise<QueuedItem[]>;
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
// SPDX-License-Identifier: Apache-2.0
|
|
3
3
|
|
|
4
4
|
import { DelayFunction } from '../../types';
|
|
5
|
+
|
|
5
6
|
import { MAX_DELAY_MS } from './constants';
|
|
6
7
|
|
|
7
8
|
/**
|
|
@@ -9,13 +10,14 @@ import { MAX_DELAY_MS } from './constants';
|
|
|
9
10
|
* Internal use of Amplify only
|
|
10
11
|
*/
|
|
11
12
|
export function jitteredBackoff(
|
|
12
|
-
maxDelayMs: number = MAX_DELAY_MS
|
|
13
|
+
maxDelayMs: number = MAX_DELAY_MS,
|
|
13
14
|
): DelayFunction {
|
|
14
15
|
const BASE_TIME_MS = 100;
|
|
15
16
|
const JITTER_FACTOR = 100;
|
|
16
17
|
|
|
17
18
|
return attempt => {
|
|
18
19
|
const delay = 2 ** attempt * BASE_TIME_MS + JITTER_FACTOR * Math.random();
|
|
20
|
+
|
|
19
21
|
return delay > maxDelayMs ? false : delay;
|
|
20
22
|
};
|
|
21
23
|
}
|
|
@@ -13,6 +13,6 @@ export const jitteredExponentialRetry = <T>(
|
|
|
13
13
|
functionToRetry: (...args: any[]) => T,
|
|
14
14
|
args: any[],
|
|
15
15
|
maxDelayMs: number = MAX_DELAY_MS,
|
|
16
|
-
onTerminate?: Promise<void
|
|
16
|
+
onTerminate?: Promise<void>,
|
|
17
17
|
): Promise<T> =>
|
|
18
18
|
retry(functionToRetry, args, jitteredBackoff(maxDelayMs), onTerminate);
|