@aws-amplify/core 5.8.6-unstable.7762f1a.0 → 6.0.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/README.md +3 -0
- package/internals/adapter-core/package.json +8 -0
- package/internals/aws-clients/pinpoint/package.json +4 -4
- package/internals/providers/pinpoint/package.json +8 -0
- package/internals/utils/package.json +7 -0
- package/lib/BackgroundProcessManager/BackgroundManagerNotOpenError.d.ts +3 -0
- package/lib/BackgroundProcessManager/BackgroundManagerNotOpenError.js +11 -0
- package/lib/BackgroundProcessManager/BackgroundProcessManager.d.ts +182 -0
- package/lib/BackgroundProcessManager/BackgroundProcessManager.js +287 -0
- package/lib/BackgroundProcessManager/index.d.ts +1 -0
- package/lib/BackgroundProcessManager/index.js +7 -0
- package/lib/BackgroundProcessManager/types.d.ts +41 -0
- package/lib/BackgroundProcessManager/types.js +23 -0
- package/lib/Cache/StorageCache.d.ts +22 -0
- package/lib/Cache/StorageCache.js +56 -0
- package/lib/Cache/StorageCache.native.d.ts +19 -0
- package/lib/Cache/StorageCache.native.js +62 -0
- package/lib/Cache/StorageCacheCommon.d.ts +179 -0
- package/lib/Cache/StorageCacheCommon.js +468 -0
- package/lib/Cache/constants.d.ts +6 -0
- package/lib/Cache/constants.js +17 -0
- package/lib/Cache/index.d.ts +2 -0
- package/lib/Cache/index.js +7 -0
- package/lib/Cache/types/cache.d.ts +38 -0
- package/lib/Cache/types/index.d.ts +1 -0
- package/lib/Cache/types/index.js +19 -0
- package/lib/Cache/utils/CacheList.d.ts +89 -0
- package/lib/Cache/utils/CacheList.js +160 -0
- package/lib/Cache/utils/cacheHelpers.d.ts +14 -0
- package/lib/Cache/utils/cacheHelpers.js +49 -0
- package/lib/Cache/utils/errorHelpers.d.ts +7 -0
- package/lib/Cache/utils/errorHelpers.js +24 -0
- package/lib/Cache/utils/index.d.ts +2 -0
- package/lib/Cache/utils/index.js +12 -0
- package/lib/Hub/index.d.ts +46 -0
- package/lib/Hub/index.js +118 -0
- package/lib/Hub/types/AuthTypes.d.ts +36 -0
- package/lib/Hub/types/AuthTypes.js +4 -0
- package/lib/Hub/types/HubTypes.d.ts +28 -0
- package/lib/Hub/types/HubTypes.js +4 -0
- package/lib/Hub/types/index.d.ts +2 -0
- package/lib/Hub/types/index.js +20 -0
- package/lib/I18n/I18n.d.ts +14 -10
- package/lib/I18n/I18n.js +29 -40
- package/lib/I18n/errorHelpers.d.ts +5 -0
- package/lib/I18n/errorHelpers.js +16 -0
- package/lib/I18n/index.d.ts +6 -5
- package/lib/I18n/index.js +32 -30
- package/lib/I18n/types.d.ts +2 -2
- package/lib/I18n/types.js +5 -6
- package/lib/Logger/ConsoleLogger.d.ts +11 -11
- package/lib/Logger/ConsoleLogger.js +54 -130
- package/lib/Mutex/Mutex.d.ts +32 -0
- package/lib/Mutex/Mutex.js +70 -0
- package/lib/Mutex/index.d.ts +1 -0
- package/lib/Mutex/index.js +7 -0
- package/lib/Mutex/types.d.ts +13 -0
- package/lib/Mutex/types.js +4 -0
- package/lib/Platform/customUserAgent.d.ts +16 -0
- package/lib/Platform/customUserAgent.js +57 -0
- package/lib/Platform/detectFramework.js +12 -12
- package/lib/Platform/detection/Angular.js +4 -5
- package/lib/Platform/detection/Expo.js +1 -1
- package/lib/Platform/detection/Next.d.ts +1 -1
- package/lib/Platform/detection/Next.js +1 -1
- package/lib/Platform/detection/Nuxt.js +1 -1
- package/lib/Platform/detection/React.js +6 -5
- package/lib/Platform/detection/Svelte.js +2 -2
- package/lib/Platform/detection/Vue.js +1 -1
- package/lib/Platform/detection/Web.js +1 -1
- package/lib/Platform/detection/helpers.js +7 -7
- package/lib/Platform/detection/index.js +13 -13
- package/lib/Platform/index.js +32 -52
- package/lib/Platform/types.d.ts +75 -8
- package/lib/Platform/types.js +40 -39
- package/lib/Platform/version.d.ts +1 -1
- package/lib/Platform/version.js +1 -1
- package/lib/Reachability/Reachability.d.ts +7 -0
- package/lib/Reachability/Reachability.js +42 -0
- package/lib/Reachability/Reachability.native.d.ts +6 -0
- package/lib/Reachability/Reachability.native.js +38 -0
- package/lib/Reachability/index.d.ts +1 -0
- package/lib/Reachability/index.js +7 -0
- package/lib/Reachability/types.d.ts +3 -0
- package/lib/Reachability/types.js +4 -0
- package/lib/ServiceWorker/ServiceWorker.d.ts +4 -4
- package/lib/ServiceWorker/ServiceWorker.js +93 -93
- package/lib/ServiceWorker/errorHelpers.d.ts +7 -0
- package/lib/ServiceWorker/errorHelpers.js +24 -0
- package/lib/ServiceWorker/index.d.ts +0 -12
- package/lib/ServiceWorker/index.js +0 -12
- package/lib/Signer/DateUtils.d.ts +27 -0
- package/lib/Signer/DateUtils.js +66 -0
- package/lib/Signer/Signer.d.ts +63 -0
- package/lib/Signer/Signer.js +135 -0
- package/lib/Signer/index.d.ts +1 -0
- package/lib/Signer/index.js +7 -0
- package/lib/adapterCore/error/AmplifyServerContextError.d.ts +8 -0
- package/lib/adapterCore/error/AmplifyServerContextError.js +17 -0
- package/lib/adapterCore/error/index.d.ts +1 -0
- package/lib/adapterCore/error/index.js +7 -0
- package/lib/adapterCore/index.d.ts +2 -0
- package/lib/adapterCore/index.js +11 -0
- package/lib/adapterCore/serverContext/index.d.ts +2 -0
- package/lib/adapterCore/serverContext/index.js +9 -0
- package/lib/adapterCore/serverContext/serverContext.d.ts +20 -0
- package/lib/adapterCore/serverContext/serverContext.js +42 -0
- package/lib/adapterCore/serverContext/serverContextRegistry.d.ts +6 -0
- package/lib/adapterCore/serverContext/serverContextRegistry.js +24 -0
- package/lib/adapterCore/serverContext/types/amplifyServer.d.ts +16 -0
- package/lib/adapterCore/serverContext/types/amplifyServer.js +4 -0
- package/lib/adapterCore/serverContext/types/cookieStorage.d.ts +31 -0
- package/lib/adapterCore/serverContext/types/cookieStorage.js +4 -0
- package/lib/adapterCore/serverContext/types/index.d.ts +4 -0
- package/lib/adapterCore/serverContext/types/index.js +4 -0
- package/lib/awsClients/cognitoIdentity/base.d.ts +29 -0
- package/lib/awsClients/cognitoIdentity/base.js +67 -0
- package/lib/awsClients/cognitoIdentity/getCredentialsForIdentity.d.ts +22 -0
- package/lib/awsClients/cognitoIdentity/getCredentialsForIdentity.js +39 -0
- package/lib/awsClients/cognitoIdentity/getId.d.ts +22 -0
- package/lib/awsClients/cognitoIdentity/getId.js +30 -0
- package/lib/awsClients/cognitoIdentity/types.js +4 -0
- package/lib/awsClients/pinpoint/base.d.ts +17 -0
- package/lib/awsClients/pinpoint/base.js +37 -0
- package/lib/awsClients/pinpoint/errorHelpers.d.ts +5 -0
- package/lib/awsClients/pinpoint/errorHelpers.js +16 -0
- package/lib/awsClients/pinpoint/getInAppMessages.d.ts +24 -0
- package/lib/awsClients/pinpoint/getInAppMessages.js +34 -0
- package/lib/awsClients/pinpoint/index.d.ts +4 -0
- package/lib/awsClients/pinpoint/putEvents.d.ts +24 -0
- package/lib/awsClients/pinpoint/putEvents.js +37 -0
- package/lib/awsClients/pinpoint/updateEndpoint.d.ts +24 -0
- package/lib/awsClients/pinpoint/updateEndpoint.js +38 -0
- package/lib/clients/endpoints/getDnsSuffix.js +7 -29
- package/lib/clients/handlers/authenticated.d.ts +1 -1
- package/lib/clients/handlers/authenticated.js +5 -5
- package/lib/clients/handlers/fetch.d.ts +0 -1
- package/lib/clients/handlers/fetch.js +42 -97
- package/lib/clients/handlers/unauthenticated.d.ts +1 -1
- package/lib/clients/handlers/unauthenticated.js +4 -4
- package/lib/clients/internal/composeServiceApi.d.ts +8 -3
- package/lib/clients/internal/composeServiceApi.js +17 -67
- package/lib/clients/internal/composeTransferHandler.js +9 -11
- package/lib/clients/middleware/retry/defaultRetryDecider.d.ts +1 -1
- package/lib/clients/middleware/retry/defaultRetryDecider.js +18 -71
- package/lib/clients/middleware/retry/isClockSkewError.js +2 -4
- package/lib/clients/middleware/retry/jitteredBackoff.js +5 -5
- package/lib/clients/middleware/retry/middleware.d.ts +1 -1
- package/lib/clients/middleware/retry/middleware.js +61 -125
- package/lib/clients/middleware/signing/middleware.js +24 -86
- package/lib/clients/middleware/signing/signer/signatureV4/index.js +0 -1
- package/lib/clients/middleware/signing/signer/signatureV4/presignUrl.js +21 -55
- package/lib/clients/middleware/signing/signer/signatureV4/signRequest.js +14 -25
- package/lib/clients/middleware/signing/signer/signatureV4/utils/dataHashHelpers.js +7 -7
- package/lib/clients/middleware/signing/signer/signatureV4/utils/getCanonicalHeaders.js +8 -30
- package/lib/clients/middleware/signing/signer/signatureV4/utils/getCanonicalQueryString.js +11 -38
- package/lib/clients/middleware/signing/signer/signatureV4/utils/getCanonicalRequest.js +13 -17
- package/lib/clients/middleware/signing/signer/signatureV4/utils/getCanonicalUri.js +5 -8
- package/lib/clients/middleware/signing/signer/signatureV4/utils/getCredentialScope.js +2 -2
- package/lib/clients/middleware/signing/signer/signatureV4/utils/getFormattedDates.js +3 -3
- package/lib/clients/middleware/signing/signer/signatureV4/utils/getHashedPayload.js +7 -11
- package/lib/clients/middleware/signing/signer/signatureV4/utils/getSignature.js +9 -10
- package/lib/clients/middleware/signing/signer/signatureV4/utils/getSignedHeaders.js +4 -6
- package/lib/clients/middleware/signing/signer/signatureV4/utils/getSigningKey.js +8 -8
- package/lib/clients/middleware/signing/signer/signatureV4/utils/getSigningValues.js +15 -16
- package/lib/clients/middleware/signing/signer/signatureV4/utils/getStringToSign.js +2 -4
- package/lib/clients/middleware/signing/utils/extendedEncodeURIComponent.js +3 -5
- package/lib/clients/middleware/signing/utils/getSkewCorrectedDate.js +1 -3
- package/lib/clients/middleware/signing/utils/getUpdatedSystemClockOffset.js +2 -2
- package/lib/clients/middleware/signing/utils/isClockSkewed.js +4 -6
- package/lib/clients/middleware/userAgent/middleware.js +14 -63
- package/lib/clients/serde/json.js +30 -96
- package/lib/clients/serde/responseInfo.js +12 -18
- package/lib/clients/types/aws.d.ts +1 -1
- package/lib/clients/types/http.d.ts +25 -1
- package/lib/clients/utils/memoization.js +3 -3
- package/lib/constants.d.ts +2 -0
- package/lib/constants.js +6 -2
- package/lib/errors/AmplifyError.d.ts +14 -0
- package/lib/errors/AmplifyError.js +26 -0
- package/lib/errors/PlatformNotSupportedError.d.ts +4 -0
- package/lib/errors/PlatformNotSupportedError.js +16 -0
- package/lib/errors/createAssertionFunction.d.ts +3 -0
- package/lib/errors/createAssertionFunction.js +19 -0
- package/lib/errors/errorHelpers.d.ts +2 -0
- package/lib/errors/errorHelpers.js +19 -0
- package/lib/errors/index.d.ts +4 -0
- package/lib/errors/index.js +13 -0
- package/lib/index.d.ts +12 -28
- package/lib/index.js +28 -99
- package/lib/libraryUtils.d.ts +30 -0
- package/lib/libraryUtils.js +102 -0
- package/lib/parseAWSExports.d.ts +10 -2
- package/lib/parseAWSExports.js +195 -54
- package/lib/providers/kinesis/types/index.d.ts +1 -0
- package/lib/providers/kinesis/types/index.js +19 -0
- package/lib/providers/kinesis/types/kinesis.d.ts +9 -0
- package/lib/providers/kinesis/types/kinesis.js +4 -0
- package/lib/providers/kinesis-firehose/types/index.d.ts +1 -0
- package/lib/providers/kinesis-firehose/types/index.js +4 -0
- package/lib/providers/kinesis-firehose/types/kinesis-firehose.d.ts +9 -0
- package/lib/providers/kinesis-firehose/types/kinesis-firehose.js +4 -0
- package/lib/providers/personalize/types/index.d.ts +1 -0
- package/lib/providers/personalize/types/index.js +4 -0
- package/lib/providers/personalize/types/personalize.d.ts +8 -0
- package/lib/providers/personalize/types/personalize.js +4 -0
- package/lib/providers/pinpoint/apis/flushEvents.d.ts +2 -0
- package/lib/providers/pinpoint/apis/flushEvents.js +21 -0
- package/lib/providers/pinpoint/apis/index.d.ts +3 -0
- package/lib/providers/pinpoint/apis/index.js +11 -0
- package/lib/providers/pinpoint/apis/record.d.ts +5 -0
- package/lib/providers/pinpoint/apis/record.js +69 -0
- package/lib/providers/pinpoint/apis/updateEndpoint.d.ts +5 -0
- package/lib/providers/pinpoint/apis/updateEndpoint.js +75 -0
- package/lib/providers/pinpoint/index.d.ts +3 -0
- package/lib/providers/pinpoint/index.js +24 -0
- package/lib/providers/pinpoint/types/buffer.d.ts +25 -0
- package/lib/providers/pinpoint/types/buffer.js +4 -0
- package/lib/providers/pinpoint/types/errors.d.ts +9 -0
- package/lib/providers/pinpoint/types/errors.js +15 -0
- package/lib/providers/pinpoint/types/index.d.ts +2 -0
- package/lib/providers/pinpoint/types/index.js +22 -0
- package/lib/providers/pinpoint/types/pinpoint.d.ts +43 -0
- package/lib/providers/pinpoint/types/pinpoint.js +4 -0
- package/lib/providers/pinpoint/utils/PinpointEventBuffer.d.ts +24 -0
- package/lib/providers/pinpoint/utils/PinpointEventBuffer.js +192 -0
- package/lib/providers/pinpoint/utils/cacheEndpointId.d.ts +7 -0
- package/lib/providers/pinpoint/utils/cacheEndpointId.js +24 -0
- package/lib/providers/pinpoint/utils/constants.d.ts +4 -0
- package/lib/providers/pinpoint/utils/constants.js +10 -0
- package/lib/providers/pinpoint/utils/getCacheKey.d.ts +7 -0
- package/lib/providers/pinpoint/utils/getCacheKey.js +13 -0
- package/lib/providers/pinpoint/utils/getEndpointId.d.ts +7 -0
- package/lib/providers/pinpoint/utils/getEndpointId.js +18 -0
- package/lib/providers/pinpoint/utils/getEventBuffer.d.ts +8 -0
- package/lib/providers/pinpoint/utils/getEventBuffer.js +46 -0
- package/lib/providers/pinpoint/utils/index.d.ts +4 -0
- package/lib/providers/pinpoint/utils/index.js +13 -0
- package/lib/providers/pinpoint/utils/isAppInForeground.d.ts +1 -0
- package/lib/providers/pinpoint/utils/isAppInForeground.js +7 -0
- package/lib/providers/pinpoint/utils/isAppInForeground.native.d.ts +1 -0
- package/lib/providers/pinpoint/utils/isAppInForeground.native.js +9 -0
- package/lib/providers/pinpoint/utils/resolveEndpointId.d.ts +8 -0
- package/lib/providers/pinpoint/utils/resolveEndpointId.js +34 -0
- package/lib/server.d.ts +1 -0
- package/lib/server.js +7 -0
- package/lib/singleton/API/types.d.ts +73 -0
- package/lib/singleton/Amplify.d.ts +40 -0
- package/lib/singleton/Amplify.js +65 -0
- package/lib/singleton/Analytics/types.d.ts +9 -0
- package/lib/singleton/Analytics/types.js +4 -0
- package/lib/singleton/Auth/index.d.ts +24 -0
- package/lib/singleton/Auth/index.js +67 -0
- package/lib/singleton/Auth/types.d.ts +155 -0
- package/lib/singleton/Auth/types.js +6 -0
- package/lib/singleton/Auth/utils/errorHelpers.d.ts +8 -0
- package/lib/singleton/Auth/utils/errorHelpers.js +32 -0
- package/lib/singleton/Auth/utils/index.d.ts +5 -0
- package/lib/singleton/Auth/utils/index.js +60 -0
- package/lib/singleton/Cache/types.d.ts +18 -0
- package/lib/singleton/Cache/types.js +4 -0
- package/lib/singleton/Geo/types.d.ts +17 -0
- package/lib/singleton/Geo/types.js +4 -0
- package/lib/singleton/Interactions/types.d.ts +21 -0
- package/lib/singleton/Interactions/types.js +4 -0
- package/lib/singleton/Notifications/InAppMessaging/types.d.ts +2 -0
- package/lib/singleton/Notifications/InAppMessaging/types.js +4 -0
- package/lib/singleton/Notifications/PushNotification/types.d.ts +2 -0
- package/lib/singleton/Notifications/PushNotification/types.js +4 -0
- package/lib/singleton/Notifications/types.d.ts +6 -0
- package/lib/singleton/Notifications/types.js +4 -0
- package/lib/singleton/Predictions/types.d.ts +49 -0
- package/lib/singleton/Predictions/types.js +4 -0
- package/lib/singleton/Storage/types.d.ts +25 -0
- package/lib/singleton/Storage/types.js +4 -0
- package/lib/singleton/apis/clearCredentials.d.ts +1 -0
- package/lib/singleton/apis/clearCredentials.js +10 -0
- package/lib/singleton/apis/fetchAuthSession.d.ts +2 -0
- package/lib/singleton/apis/fetchAuthSession.js +11 -0
- package/lib/singleton/apis/internal/fetchAuthSession.d.ts +3 -0
- package/lib/singleton/apis/internal/fetchAuthSession.js +9 -0
- package/lib/singleton/apis/server/fetchAuthSession.d.ts +3 -0
- package/lib/singleton/apis/server/fetchAuthSession.js +11 -0
- package/lib/singleton/index.d.ts +3 -0
- package/lib/singleton/index.js +12 -0
- package/lib/singleton/types.d.ts +31 -0
- package/lib/singleton/types.js +4 -0
- package/lib/storage/CookieStorage.d.ts +14 -0
- package/lib/storage/CookieStorage.js +52 -0
- package/lib/storage/CookieStorage.native.d.ts +7 -0
- package/lib/storage/CookieStorage.native.js +15 -0
- package/lib/storage/DefaultStorage.d.ts +7 -0
- package/lib/storage/DefaultStorage.js +16 -0
- package/lib/storage/DefaultStorage.native.d.ts +33 -0
- package/lib/storage/DefaultStorage.native.js +50 -0
- package/lib/storage/InMemoryStorage.d.ts +12 -0
- package/lib/storage/InMemoryStorage.js +35 -0
- package/lib/storage/KeyValueStorage.d.ts +33 -0
- package/lib/storage/KeyValueStorage.js +56 -0
- package/lib/storage/SessionStorage.d.ts +7 -0
- package/lib/storage/SessionStorage.js +16 -0
- package/lib/storage/index.d.ts +7 -0
- package/lib/storage/index.js +14 -0
- package/lib/storage/utils.d.ts +10 -0
- package/lib/storage/utils.js +22 -0
- package/lib/tsconfig.tsbuildinfo +1 -1
- package/lib/types/core.d.ts +42 -0
- package/lib/types/core.js +4 -0
- package/lib/types/errors.d.ts +22 -0
- package/lib/types/errors.js +11 -0
- package/lib/types/index.d.ts +4 -1
- package/lib/types/index.js +6 -3
- package/lib/types/logging.d.ts +13 -0
- package/lib/types/logging.js +4 -0
- package/lib/types/storage.d.ts +17 -0
- package/lib/types/storage.js +4 -0
- package/lib/utils/WordArray.d.ts +7 -0
- package/lib/utils/WordArray.js +49 -0
- package/lib/utils/amplifyUrl/index.d.ts +13 -0
- package/lib/utils/amplifyUrl/index.js +10 -0
- package/lib/utils/amplifyUrl/polyfill.d.ts +0 -0
- package/lib/utils/amplifyUrl/polyfill.js +4 -0
- package/lib/utils/amplifyUrl/polyfill.native.d.ts +1 -0
- package/lib/utils/amplifyUrl/polyfill.native.js +6 -0
- package/lib/utils/amplifyUuid/index.d.ts +3 -0
- package/lib/utils/amplifyUuid/index.js +9 -0
- package/lib/utils/amplifyUuid/polyfill.d.ts +0 -0
- package/lib/utils/amplifyUuid/polyfill.js +4 -0
- package/lib/utils/amplifyUuid/polyfill.native.d.ts +1 -0
- package/lib/utils/amplifyUuid/polyfill.native.js +6 -0
- package/lib/utils/convert/base64/base64Decoder.d.ts +2 -0
- package/lib/utils/convert/base64/base64Decoder.js +11 -0
- package/lib/utils/convert/base64/base64Encoder.d.ts +2 -0
- package/lib/utils/convert/base64/base64Encoder.js +17 -0
- package/lib/utils/convert/base64/bytesToString.d.ts +1 -0
- package/lib/utils/convert/base64/bytesToString.js +9 -0
- package/lib/utils/convert/index.d.ts +2 -0
- package/lib/utils/convert/index.js +9 -0
- package/lib/utils/convert/types.d.ts +9 -0
- package/lib/utils/convert/types.js +4 -0
- package/lib/utils/cryptoSecureRandomInt.d.ts +1 -0
- package/lib/utils/cryptoSecureRandomInt.js +16 -0
- package/lib/utils/deepFreeze.d.ts +1 -0
- package/lib/utils/deepFreeze.js +16 -0
- package/lib/utils/generateRandomString.d.ts +1 -0
- package/lib/utils/generateRandomString.js +14 -0
- package/lib/utils/getClientInfo/getClientInfo.android.d.ts +5 -0
- package/lib/utils/getClientInfo/getClientInfo.android.js +21 -0
- package/lib/utils/getClientInfo/getClientInfo.d.ts +17 -0
- package/lib/utils/getClientInfo/getClientInfo.ios.d.ts +7 -0
- package/lib/utils/getClientInfo/getClientInfo.ios.js +63 -0
- package/lib/utils/getClientInfo/getClientInfo.js +68 -0
- package/lib/utils/getClientInfo/index.d.ts +1 -0
- package/lib/utils/getClientInfo/index.js +7 -0
- package/lib/utils/globalHelpers/index.d.ts +3 -0
- package/lib/utils/globalHelpers/index.js +50 -0
- package/lib/utils/globalHelpers/index.native.d.ts +3 -0
- package/lib/utils/globalHelpers/index.native.js +28 -0
- package/lib/utils/index.d.ts +8 -0
- package/lib/utils/index.js +25 -0
- package/lib/utils/isBrowser.d.ts +1 -0
- package/lib/utils/isBrowser.js +7 -0
- package/lib/utils/isWebWorker.d.ts +1 -0
- package/lib/utils/isWebWorker.js +14 -0
- package/lib/utils/retry/NonRetryableError.d.ts +4 -0
- package/lib/utils/retry/NonRetryableError.js +12 -0
- package/lib/utils/retry/constants.d.ts +1 -0
- package/lib/utils/retry/constants.js +6 -0
- package/lib/utils/retry/index.d.ts +5 -0
- package/lib/utils/retry/index.js +15 -0
- package/lib/utils/retry/isNonRetryableError.d.ts +2 -0
- package/lib/utils/retry/isNonRetryableError.js +10 -0
- package/lib/utils/retry/jitteredBackoff.d.ts +6 -0
- package/lib/utils/retry/jitteredBackoff.js +19 -0
- package/lib/utils/retry/jitteredExponentialRetry.d.ts +5 -0
- package/lib/utils/retry/jitteredExponentialRetry.js +14 -0
- package/lib/utils/retry/retry.d.ts +6 -0
- package/lib/utils/retry/retry.js +64 -0
- package/lib/utils/sessionListener/SessionListener.d.ts +10 -0
- package/lib/utils/sessionListener/SessionListener.js +53 -0
- package/lib/utils/sessionListener/SessionListener.native.d.ts +10 -0
- package/lib/utils/sessionListener/SessionListener.native.js +50 -0
- package/lib/utils/sessionListener/constants.d.ts +2 -0
- package/lib/utils/sessionListener/constants.js +8 -0
- package/lib/utils/sessionListener/index.d.ts +3 -0
- package/lib/utils/sessionListener/index.js +10 -0
- package/lib/utils/sessionListener/types.d.ts +6 -0
- package/lib/utils/sessionListener/types.js +4 -0
- package/lib/utils/urlSafeDecode.d.ts +1 -0
- package/lib/utils/urlSafeDecode.js +10 -0
- package/lib/utils/urlSafeEncode.d.ts +1 -0
- package/lib/utils/urlSafeEncode.js +12 -0
- package/lib-esm/BackgroundProcessManager/BackgroundManagerNotOpenError.d.ts +3 -0
- package/lib-esm/BackgroundProcessManager/BackgroundManagerNotOpenError.js +7 -0
- package/lib-esm/BackgroundProcessManager/BackgroundProcessManager.d.ts +182 -0
- package/lib-esm/BackgroundProcessManager/BackgroundProcessManager.js +283 -0
- package/lib-esm/BackgroundProcessManager/index.d.ts +1 -0
- package/lib-esm/BackgroundProcessManager/index.js +3 -0
- package/lib-esm/BackgroundProcessManager/types.d.ts +41 -0
- package/lib-esm/BackgroundProcessManager/types.js +20 -0
- package/lib-esm/Cache/StorageCache.d.ts +22 -0
- package/lib-esm/Cache/StorageCache.js +52 -0
- package/lib-esm/Cache/StorageCache.native.d.ts +19 -0
- package/lib-esm/Cache/StorageCache.native.js +58 -0
- package/lib-esm/Cache/StorageCacheCommon.d.ts +179 -0
- package/lib-esm/Cache/StorageCacheCommon.js +464 -0
- package/lib-esm/Cache/constants.d.ts +6 -0
- package/lib-esm/Cache/constants.js +14 -0
- package/lib-esm/Cache/index.d.ts +2 -0
- package/lib-esm/Cache/index.js +4 -0
- package/lib-esm/Cache/types/cache.d.ts +38 -0
- package/lib-esm/Cache/types/index.d.ts +1 -0
- package/lib-esm/Cache/types/index.js +3 -0
- package/lib-esm/Cache/utils/CacheList.d.ts +89 -0
- package/lib-esm/Cache/utils/CacheList.js +156 -0
- package/lib-esm/Cache/utils/cacheHelpers.d.ts +14 -0
- package/lib-esm/Cache/utils/cacheHelpers.js +42 -0
- package/lib-esm/Cache/utils/errorHelpers.d.ts +7 -0
- package/lib-esm/Cache/utils/errorHelpers.js +21 -0
- package/lib-esm/Cache/utils/index.d.ts +2 -0
- package/lib-esm/Cache/utils/index.js +4 -0
- package/lib-esm/Hub/index.d.ts +46 -0
- package/lib-esm/Hub/index.js +114 -0
- package/lib-esm/Hub/types/AuthTypes.d.ts +36 -0
- package/lib-esm/Hub/types/AuthTypes.js +3 -0
- package/lib-esm/Hub/types/HubTypes.d.ts +28 -0
- package/lib-esm/Hub/types/HubTypes.js +3 -0
- package/lib-esm/Hub/types/index.d.ts +2 -0
- package/lib-esm/Hub/types/index.js +4 -0
- package/lib-esm/I18n/I18n.d.ts +14 -10
- package/lib-esm/I18n/I18n.js +28 -40
- package/lib-esm/I18n/errorHelpers.d.ts +5 -0
- package/lib-esm/I18n/errorHelpers.js +13 -0
- package/lib-esm/I18n/index.d.ts +6 -5
- package/lib-esm/I18n/index.js +30 -29
- package/lib-esm/I18n/types.d.ts +2 -2
- package/lib-esm/I18n/types.js +3 -5
- package/lib-esm/Logger/ConsoleLogger.d.ts +11 -11
- package/lib-esm/Logger/ConsoleLogger.js +53 -129
- package/lib-esm/Mutex/Mutex.d.ts +32 -0
- package/lib-esm/Mutex/Mutex.js +66 -0
- package/lib-esm/Mutex/index.d.ts +1 -0
- package/lib-esm/Mutex/index.js +3 -0
- package/lib-esm/Mutex/types.d.ts +13 -0
- package/lib-esm/Mutex/types.js +3 -0
- package/lib-esm/Platform/customUserAgent.d.ts +16 -0
- package/lib-esm/Platform/customUserAgent.js +52 -0
- package/lib-esm/Platform/detectFramework.js +11 -11
- package/lib-esm/Platform/detection/Angular.js +3 -4
- package/lib-esm/Platform/detection/Next.d.ts +1 -1
- package/lib-esm/Platform/detection/React.js +5 -4
- package/lib-esm/Platform/detection/Svelte.js +1 -1
- package/lib-esm/Platform/detection/helpers.js +7 -7
- package/lib-esm/Platform/detection/index.js +3 -3
- package/lib-esm/Platform/index.js +30 -50
- package/lib-esm/Platform/types.d.ts +75 -8
- package/lib-esm/Platform/types.js +40 -39
- package/lib-esm/Platform/version.d.ts +1 -1
- package/lib-esm/Platform/version.js +1 -1
- package/lib-esm/Reachability/Reachability.d.ts +7 -0
- package/lib-esm/Reachability/Reachability.js +39 -0
- package/lib-esm/Reachability/Reachability.native.d.ts +6 -0
- package/lib-esm/Reachability/Reachability.native.js +34 -0
- package/lib-esm/Reachability/index.d.ts +1 -0
- package/lib-esm/Reachability/index.js +3 -0
- package/lib-esm/Reachability/types.d.ts +3 -0
- package/lib-esm/Reachability/types.js +3 -0
- package/lib-esm/ServiceWorker/ServiceWorker.d.ts +4 -4
- package/lib-esm/ServiceWorker/ServiceWorker.js +90 -91
- package/lib-esm/ServiceWorker/errorHelpers.d.ts +7 -0
- package/lib-esm/ServiceWorker/errorHelpers.js +21 -0
- package/lib-esm/ServiceWorker/index.d.ts +0 -12
- package/lib-esm/ServiceWorker/index.js +0 -12
- package/lib-esm/Signer/DateUtils.d.ts +27 -0
- package/lib-esm/Signer/DateUtils.js +63 -0
- package/lib-esm/Signer/Signer.d.ts +63 -0
- package/lib-esm/Signer/Signer.js +131 -0
- package/lib-esm/Signer/index.d.ts +1 -0
- package/lib-esm/Signer/index.js +3 -0
- package/lib-esm/adapterCore/error/AmplifyServerContextError.d.ts +8 -0
- package/lib-esm/adapterCore/error/AmplifyServerContextError.js +13 -0
- package/lib-esm/adapterCore/error/index.d.ts +1 -0
- package/lib-esm/adapterCore/error/index.js +3 -0
- package/lib-esm/adapterCore/index.d.ts +2 -0
- package/lib-esm/adapterCore/index.js +4 -0
- package/lib-esm/adapterCore/serverContext/index.d.ts +2 -0
- package/lib-esm/adapterCore/serverContext/index.js +3 -0
- package/lib-esm/adapterCore/serverContext/serverContext.d.ts +20 -0
- package/lib-esm/adapterCore/serverContext/serverContext.js +36 -0
- package/lib-esm/adapterCore/serverContext/serverContextRegistry.d.ts +6 -0
- package/lib-esm/adapterCore/serverContext/serverContextRegistry.js +21 -0
- package/lib-esm/adapterCore/serverContext/types/amplifyServer.d.ts +16 -0
- package/lib-esm/adapterCore/serverContext/types/amplifyServer.js +3 -0
- package/lib-esm/adapterCore/serverContext/types/cookieStorage.d.ts +31 -0
- package/lib-esm/adapterCore/serverContext/types/cookieStorage.js +3 -0
- package/lib-esm/adapterCore/serverContext/types/index.d.ts +4 -0
- package/lib-esm/adapterCore/serverContext/types/index.js +3 -0
- package/lib-esm/awsClients/cognitoIdentity/base.d.ts +29 -0
- package/lib-esm/awsClients/cognitoIdentity/base.js +62 -0
- package/lib-esm/awsClients/cognitoIdentity/getCredentialsForIdentity.d.ts +22 -0
- package/lib-esm/awsClients/cognitoIdentity/getCredentialsForIdentity.js +36 -0
- package/lib-esm/awsClients/cognitoIdentity/getId.d.ts +22 -0
- package/lib-esm/awsClients/cognitoIdentity/getId.js +27 -0
- package/lib-esm/awsClients/cognitoIdentity/types.js +3 -0
- package/lib-esm/awsClients/pinpoint/base.d.ts +17 -0
- package/lib-esm/awsClients/pinpoint/base.js +33 -0
- package/lib-esm/awsClients/pinpoint/errorHelpers.d.ts +5 -0
- package/lib-esm/awsClients/pinpoint/errorHelpers.js +13 -0
- package/lib-esm/awsClients/pinpoint/getInAppMessages.d.ts +24 -0
- package/lib-esm/awsClients/pinpoint/getInAppMessages.js +31 -0
- package/lib-esm/awsClients/pinpoint/index.d.ts +4 -0
- package/lib-esm/awsClients/pinpoint/putEvents.d.ts +24 -0
- package/lib-esm/awsClients/pinpoint/putEvents.js +34 -0
- package/lib-esm/awsClients/pinpoint/updateEndpoint.d.ts +24 -0
- package/lib-esm/awsClients/pinpoint/updateEndpoint.js +35 -0
- package/lib-esm/clients/endpoints/getDnsSuffix.js +6 -28
- package/lib-esm/clients/endpoints/partitions.js +2 -2
- package/lib-esm/clients/handlers/authenticated.d.ts +1 -1
- package/lib-esm/clients/handlers/authenticated.js +1 -1
- package/lib-esm/clients/handlers/fetch.d.ts +0 -1
- package/lib-esm/clients/handlers/fetch.js +41 -96
- package/lib-esm/clients/handlers/unauthenticated.d.ts +1 -1
- package/lib-esm/clients/handlers/unauthenticated.js +1 -1
- package/lib-esm/clients/internal/composeServiceApi.d.ts +8 -3
- package/lib-esm/clients/internal/composeServiceApi.js +17 -67
- package/lib-esm/clients/internal/composeTransferHandler.js +9 -11
- package/lib-esm/clients/middleware/retry/defaultRetryDecider.d.ts +1 -1
- package/lib-esm/clients/middleware/retry/defaultRetryDecider.js +17 -70
- package/lib-esm/clients/middleware/retry/isClockSkewError.js +2 -4
- package/lib-esm/clients/middleware/retry/jitteredBackoff.js +5 -5
- package/lib-esm/clients/middleware/retry/middleware.d.ts +1 -1
- package/lib-esm/clients/middleware/retry/middleware.js +61 -125
- package/lib-esm/clients/middleware/signing/middleware.js +21 -83
- package/lib-esm/clients/middleware/signing/signer/signatureV4/constants.js +17 -17
- package/lib-esm/clients/middleware/signing/signer/signatureV4/index.js +0 -1
- package/lib-esm/clients/middleware/signing/signer/signatureV4/presignUrl.js +18 -52
- package/lib-esm/clients/middleware/signing/signer/signatureV4/signRequest.js +10 -21
- package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/dataHashHelpers.js +6 -6
- package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/getCanonicalHeaders.js +8 -30
- package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/getCanonicalQueryString.js +11 -38
- package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/getCanonicalRequest.js +8 -12
- package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/getCanonicalUri.js +5 -8
- package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/getCredentialScope.js +1 -1
- package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/getFormattedDates.js +3 -3
- package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/getHashedPayload.js +5 -9
- package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/getSignature.js +5 -6
- package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/getSignedHeaders.js +4 -6
- package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/getSigningKey.js +6 -6
- package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/getSigningValues.js +13 -14
- package/lib-esm/clients/middleware/signing/signer/signatureV4/utils/getStringToSign.js +1 -3
- package/lib-esm/clients/middleware/signing/utils/extendedEncodeURIComponent.js +3 -5
- package/lib-esm/clients/middleware/signing/utils/getSkewCorrectedDate.js +1 -3
- package/lib-esm/clients/middleware/signing/utils/getUpdatedSystemClockOffset.js +1 -1
- package/lib-esm/clients/middleware/signing/utils/isClockSkewed.js +3 -5
- package/lib-esm/clients/middleware/userAgent/middleware.js +14 -63
- package/lib-esm/clients/serde/json.js +29 -95
- package/lib-esm/clients/serde/responseInfo.js +11 -17
- package/lib-esm/clients/types/aws.d.ts +1 -1
- package/lib-esm/clients/types/http.d.ts +25 -1
- package/lib-esm/clients/utils/memoization.js +3 -3
- package/lib-esm/constants.d.ts +2 -0
- package/lib-esm/constants.js +7 -3
- package/lib-esm/errors/AmplifyError.d.ts +14 -0
- package/lib-esm/errors/AmplifyError.js +22 -0
- package/lib-esm/errors/PlatformNotSupportedError.d.ts +4 -0
- package/lib-esm/errors/PlatformNotSupportedError.js +12 -0
- package/lib-esm/errors/createAssertionFunction.d.ts +3 -0
- package/lib-esm/errors/createAssertionFunction.js +15 -0
- package/lib-esm/errors/errorHelpers.d.ts +2 -0
- package/lib-esm/errors/errorHelpers.js +16 -0
- package/lib-esm/errors/index.d.ts +4 -0
- package/lib-esm/errors/index.js +6 -0
- package/lib-esm/index.d.ts +12 -28
- package/lib-esm/index.js +15 -27
- package/lib-esm/libraryUtils.d.ts +30 -0
- package/lib-esm/libraryUtils.js +39 -0
- package/lib-esm/parseAWSExports.d.ts +10 -2
- package/lib-esm/parseAWSExports.js +194 -53
- package/lib-esm/providers/kinesis/types/index.d.ts +1 -0
- package/lib-esm/providers/kinesis/types/index.js +3 -0
- package/lib-esm/providers/kinesis/types/kinesis.d.ts +9 -0
- package/lib-esm/providers/kinesis/types/kinesis.js +3 -0
- package/lib-esm/providers/kinesis-firehose/types/index.d.ts +1 -0
- package/lib-esm/providers/kinesis-firehose/types/index.js +3 -0
- package/lib-esm/providers/kinesis-firehose/types/kinesis-firehose.d.ts +9 -0
- package/lib-esm/providers/kinesis-firehose/types/kinesis-firehose.js +3 -0
- package/lib-esm/providers/personalize/types/index.d.ts +1 -0
- package/lib-esm/providers/personalize/types/index.js +3 -0
- package/lib-esm/providers/personalize/types/personalize.d.ts +8 -0
- package/lib-esm/providers/personalize/types/personalize.js +3 -0
- package/lib-esm/providers/pinpoint/apis/flushEvents.d.ts +2 -0
- package/lib-esm/providers/pinpoint/apis/flushEvents.js +17 -0
- package/lib-esm/providers/pinpoint/apis/index.d.ts +3 -0
- package/lib-esm/providers/pinpoint/apis/index.js +5 -0
- package/lib-esm/providers/pinpoint/apis/record.d.ts +5 -0
- package/lib-esm/providers/pinpoint/apis/record.js +65 -0
- package/lib-esm/providers/pinpoint/apis/updateEndpoint.d.ts +5 -0
- package/lib-esm/providers/pinpoint/apis/updateEndpoint.js +71 -0
- package/lib-esm/providers/pinpoint/index.d.ts +3 -0
- package/lib-esm/providers/pinpoint/index.js +5 -0
- package/lib-esm/providers/pinpoint/types/buffer.d.ts +25 -0
- package/lib-esm/providers/pinpoint/types/buffer.js +3 -0
- package/lib-esm/providers/pinpoint/types/errors.d.ts +9 -0
- package/lib-esm/providers/pinpoint/types/errors.js +12 -0
- package/lib-esm/providers/pinpoint/types/index.d.ts +2 -0
- package/lib-esm/providers/pinpoint/types/index.js +4 -0
- package/lib-esm/providers/pinpoint/types/pinpoint.d.ts +43 -0
- package/lib-esm/providers/pinpoint/types/pinpoint.js +3 -0
- package/lib-esm/providers/pinpoint/utils/PinpointEventBuffer.d.ts +24 -0
- package/lib-esm/providers/pinpoint/utils/PinpointEventBuffer.js +188 -0
- package/lib-esm/providers/pinpoint/utils/cacheEndpointId.d.ts +7 -0
- package/lib-esm/providers/pinpoint/utils/cacheEndpointId.js +20 -0
- package/lib-esm/providers/pinpoint/utils/constants.d.ts +4 -0
- package/lib-esm/providers/pinpoint/utils/constants.js +7 -0
- package/lib-esm/providers/pinpoint/utils/getCacheKey.d.ts +7 -0
- package/lib-esm/providers/pinpoint/utils/getCacheKey.js +9 -0
- package/lib-esm/providers/pinpoint/utils/getEndpointId.d.ts +7 -0
- package/lib-esm/providers/pinpoint/utils/getEndpointId.js +14 -0
- package/lib-esm/providers/pinpoint/utils/getEventBuffer.d.ts +8 -0
- package/lib-esm/providers/pinpoint/utils/getEventBuffer.js +42 -0
- package/lib-esm/providers/pinpoint/utils/index.d.ts +4 -0
- package/lib-esm/providers/pinpoint/utils/index.js +6 -0
- package/lib-esm/providers/pinpoint/utils/isAppInForeground.d.ts +1 -0
- package/lib-esm/providers/pinpoint/utils/isAppInForeground.js +3 -0
- package/lib-esm/providers/pinpoint/utils/isAppInForeground.native.d.ts +1 -0
- package/lib-esm/providers/pinpoint/utils/isAppInForeground.native.js +5 -0
- package/lib-esm/providers/pinpoint/utils/resolveEndpointId.d.ts +8 -0
- package/lib-esm/providers/pinpoint/utils/resolveEndpointId.js +30 -0
- package/lib-esm/server.d.ts +1 -0
- package/lib-esm/server.js +3 -0
- package/lib-esm/singleton/API/types.d.ts +73 -0
- package/lib-esm/singleton/Amplify.d.ts +40 -0
- package/lib-esm/singleton/Amplify.js +61 -0
- package/lib-esm/singleton/Analytics/types.d.ts +9 -0
- package/lib-esm/singleton/Analytics/types.js +3 -0
- package/lib-esm/singleton/Auth/index.d.ts +24 -0
- package/lib-esm/singleton/Auth/index.js +62 -0
- package/lib-esm/singleton/Auth/types.d.ts +155 -0
- package/lib-esm/singleton/Auth/types.js +5 -0
- package/lib-esm/singleton/Auth/utils/errorHelpers.d.ts +8 -0
- package/lib-esm/singleton/Auth/utils/errorHelpers.js +29 -0
- package/lib-esm/singleton/Auth/utils/index.d.ts +5 -0
- package/lib-esm/singleton/Auth/utils/index.js +53 -0
- package/lib-esm/singleton/Cache/types.d.ts +18 -0
- package/lib-esm/singleton/Cache/types.js +3 -0
- package/lib-esm/singleton/Geo/types.d.ts +17 -0
- package/lib-esm/singleton/Geo/types.js +3 -0
- package/lib-esm/singleton/Interactions/types.d.ts +21 -0
- package/lib-esm/singleton/Interactions/types.js +3 -0
- package/lib-esm/singleton/Notifications/InAppMessaging/types.d.ts +2 -0
- package/lib-esm/singleton/Notifications/InAppMessaging/types.js +3 -0
- package/lib-esm/singleton/Notifications/PushNotification/types.d.ts +2 -0
- package/lib-esm/singleton/Notifications/PushNotification/types.js +3 -0
- package/lib-esm/singleton/Notifications/types.d.ts +6 -0
- package/lib-esm/singleton/Notifications/types.js +3 -0
- package/lib-esm/singleton/Predictions/types.d.ts +49 -0
- package/lib-esm/singleton/Predictions/types.js +3 -0
- package/lib-esm/singleton/Storage/types.d.ts +25 -0
- package/lib-esm/singleton/Storage/types.js +3 -0
- package/lib-esm/singleton/apis/clearCredentials.d.ts +1 -0
- package/lib-esm/singleton/apis/clearCredentials.js +6 -0
- package/lib-esm/singleton/apis/fetchAuthSession.d.ts +2 -0
- package/lib-esm/singleton/apis/fetchAuthSession.js +7 -0
- package/lib-esm/singleton/apis/internal/fetchAuthSession.d.ts +3 -0
- package/lib-esm/singleton/apis/internal/fetchAuthSession.js +5 -0
- package/lib-esm/singleton/apis/server/fetchAuthSession.d.ts +3 -0
- package/lib-esm/singleton/apis/server/fetchAuthSession.js +7 -0
- package/lib-esm/singleton/index.d.ts +3 -0
- package/lib-esm/singleton/index.js +5 -0
- package/lib-esm/singleton/types.d.ts +31 -0
- package/lib-esm/singleton/types.js +3 -0
- package/lib-esm/storage/CookieStorage.d.ts +14 -0
- package/lib-esm/storage/CookieStorage.js +45 -0
- package/lib-esm/storage/CookieStorage.native.d.ts +7 -0
- package/lib-esm/storage/CookieStorage.native.js +11 -0
- package/lib-esm/storage/DefaultStorage.d.ts +7 -0
- package/lib-esm/storage/DefaultStorage.js +12 -0
- package/lib-esm/storage/DefaultStorage.native.d.ts +33 -0
- package/lib-esm/storage/DefaultStorage.native.js +46 -0
- package/lib-esm/storage/InMemoryStorage.d.ts +12 -0
- package/lib-esm/storage/InMemoryStorage.js +31 -0
- package/lib-esm/storage/KeyValueStorage.d.ts +33 -0
- package/lib-esm/storage/KeyValueStorage.js +52 -0
- package/lib-esm/storage/SessionStorage.d.ts +7 -0
- package/lib-esm/storage/SessionStorage.js +12 -0
- package/lib-esm/storage/index.d.ts +7 -0
- package/lib-esm/storage/index.js +10 -0
- package/lib-esm/storage/utils.d.ts +10 -0
- package/lib-esm/storage/utils.js +17 -0
- package/lib-esm/tsconfig.tsbuildinfo +1 -1
- package/lib-esm/types/core.d.ts +42 -0
- package/lib-esm/types/core.js +3 -0
- package/lib-esm/types/errors.d.ts +22 -0
- package/lib-esm/types/errors.js +8 -0
- package/lib-esm/types/index.d.ts +4 -1
- package/lib-esm/types/index.js +4 -1
- package/lib-esm/types/logging.d.ts +13 -0
- package/lib-esm/types/logging.js +3 -0
- package/lib-esm/types/storage.d.ts +17 -0
- package/lib-esm/types/storage.js +3 -0
- package/lib-esm/utils/WordArray.d.ts +7 -0
- package/lib-esm/utils/WordArray.js +46 -0
- package/lib-esm/utils/amplifyUrl/index.d.ts +13 -0
- package/lib-esm/utils/amplifyUrl/index.js +6 -0
- package/lib-esm/utils/amplifyUrl/polyfill.d.ts +0 -0
- package/lib-esm/utils/amplifyUrl/polyfill.js +4 -0
- package/lib-esm/utils/amplifyUrl/polyfill.native.d.ts +1 -0
- package/lib-esm/utils/amplifyUrl/polyfill.native.js +4 -0
- package/lib-esm/utils/amplifyUuid/index.d.ts +3 -0
- package/lib-esm/utils/amplifyUuid/index.js +6 -0
- package/lib-esm/utils/amplifyUuid/polyfill.d.ts +0 -0
- package/lib-esm/utils/amplifyUuid/polyfill.js +4 -0
- package/lib-esm/utils/amplifyUuid/polyfill.native.d.ts +1 -0
- package/lib-esm/utils/amplifyUuid/polyfill.native.js +4 -0
- package/lib-esm/utils/convert/base64/base64Decoder.d.ts +2 -0
- package/lib-esm/utils/convert/base64/base64Decoder.js +8 -0
- package/lib-esm/utils/convert/base64/base64Encoder.d.ts +2 -0
- package/lib-esm/utils/convert/base64/base64Encoder.js +14 -0
- package/lib-esm/utils/convert/base64/bytesToString.d.ts +1 -0
- package/lib-esm/utils/convert/base64/bytesToString.js +5 -0
- package/lib-esm/utils/convert/index.d.ts +2 -0
- package/lib-esm/utils/convert/index.js +4 -0
- package/lib-esm/utils/convert/types.d.ts +9 -0
- package/lib-esm/utils/convert/types.js +3 -0
- package/lib-esm/utils/cryptoSecureRandomInt.d.ts +1 -0
- package/lib-esm/utils/cryptoSecureRandomInt.js +12 -0
- package/lib-esm/utils/deepFreeze.d.ts +1 -0
- package/lib-esm/utils/deepFreeze.js +12 -0
- package/lib-esm/utils/generateRandomString.d.ts +1 -0
- package/lib-esm/utils/generateRandomString.js +10 -0
- package/lib-esm/utils/getClientInfo/getClientInfo.android.d.ts +5 -0
- package/lib-esm/utils/getClientInfo/getClientInfo.android.js +17 -0
- package/lib-esm/utils/getClientInfo/getClientInfo.d.ts +17 -0
- package/lib-esm/utils/getClientInfo/getClientInfo.ios.d.ts +7 -0
- package/lib-esm/utils/getClientInfo/getClientInfo.ios.js +59 -0
- package/lib-esm/utils/getClientInfo/getClientInfo.js +64 -0
- package/lib-esm/utils/getClientInfo/index.d.ts +1 -0
- package/lib-esm/utils/getClientInfo/index.js +3 -0
- package/lib-esm/utils/globalHelpers/index.d.ts +3 -0
- package/lib-esm/utils/globalHelpers/index.js +44 -0
- package/lib-esm/utils/globalHelpers/index.native.d.ts +3 -0
- package/lib-esm/utils/globalHelpers/index.native.js +22 -0
- package/lib-esm/utils/index.d.ts +8 -0
- package/lib-esm/utils/index.js +10 -0
- package/lib-esm/utils/isBrowser.d.ts +1 -0
- package/lib-esm/utils/isBrowser.js +3 -0
- package/lib-esm/utils/isWebWorker.d.ts +1 -0
- package/lib-esm/utils/isWebWorker.js +10 -0
- package/lib-esm/utils/retry/NonRetryableError.d.ts +4 -0
- package/lib-esm/utils/retry/NonRetryableError.js +8 -0
- package/lib-esm/utils/retry/constants.d.ts +1 -0
- package/lib-esm/utils/retry/constants.js +3 -0
- package/lib-esm/utils/retry/index.d.ts +5 -0
- package/lib-esm/utils/retry/index.js +7 -0
- package/lib-esm/utils/retry/isNonRetryableError.d.ts +2 -0
- package/lib-esm/utils/retry/isNonRetryableError.js +6 -0
- package/lib-esm/utils/retry/jitteredBackoff.d.ts +6 -0
- package/lib-esm/utils/retry/jitteredBackoff.js +15 -0
- package/lib-esm/utils/retry/jitteredExponentialRetry.d.ts +5 -0
- package/lib-esm/utils/retry/jitteredExponentialRetry.js +10 -0
- package/lib-esm/utils/retry/retry.d.ts +6 -0
- package/lib-esm/utils/retry/retry.js +60 -0
- package/lib-esm/utils/sessionListener/SessionListener.d.ts +10 -0
- package/lib-esm/utils/sessionListener/SessionListener.js +49 -0
- package/lib-esm/utils/sessionListener/SessionListener.native.d.ts +10 -0
- package/lib-esm/utils/sessionListener/SessionListener.native.js +46 -0
- package/lib-esm/utils/sessionListener/constants.d.ts +2 -0
- package/lib-esm/utils/sessionListener/constants.js +5 -0
- package/lib-esm/utils/sessionListener/index.d.ts +3 -0
- package/lib-esm/utils/sessionListener/index.js +5 -0
- package/lib-esm/utils/sessionListener/types.d.ts +6 -0
- package/lib-esm/utils/sessionListener/types.js +3 -0
- package/lib-esm/utils/urlSafeDecode.d.ts +1 -0
- package/lib-esm/utils/urlSafeDecode.js +6 -0
- package/lib-esm/utils/urlSafeEncode.d.ts +1 -0
- package/lib-esm/utils/urlSafeEncode.js +8 -0
- package/package.json +39 -70
- package/server/package.json +8 -0
- package/src/BackgroundProcessManager/BackgroundManagerNotOpenError.ts +8 -0
- package/src/BackgroundProcessManager/BackgroundProcessManager.ts +421 -0
- package/src/BackgroundProcessManager/index.ts +4 -0
- package/src/BackgroundProcessManager/types.ts +49 -0
- package/src/Cache/StorageCache.native.ts +65 -0
- package/src/Cache/StorageCache.ts +61 -0
- package/src/Cache/StorageCacheCommon.ts +577 -0
- package/src/Cache/constants.ts +18 -0
- package/src/Cache/index.ts +6 -0
- package/src/Cache/types/cache.ts +51 -0
- package/src/Cache/types/index.ts +4 -0
- package/src/Cache/utils/CacheList.ts +185 -0
- package/src/Cache/utils/cacheHelpers.ts +52 -0
- package/src/Cache/utils/errorHelpers.ts +26 -0
- package/src/Cache/utils/index.ts +10 -0
- package/src/Hub/index.ts +213 -0
- package/src/Hub/types/AuthTypes.ts +23 -0
- package/src/Hub/types/HubTypes.ts +46 -0
- package/src/Hub/types/index.ts +5 -0
- package/src/I18n/I18n.ts +19 -12
- package/src/I18n/errorHelpers.ts +18 -0
- package/src/I18n/index.ts +20 -11
- package/src/I18n/types.ts +1 -1
- package/src/Logger/ConsoleLogger.ts +12 -13
- package/src/Mutex/Mutex.ts +78 -0
- package/src/Mutex/index.ts +4 -0
- package/src/Mutex/types.ts +20 -0
- package/src/Platform/customUserAgent.ts +75 -0
- package/src/Platform/detectFramework.ts +1 -1
- package/src/Platform/detection/React.ts +5 -3
- package/src/Platform/index.ts +14 -1
- package/src/Platform/types.ts +84 -39
- package/src/Platform/version.ts +1 -1
- package/src/Reachability/Reachability.native.ts +46 -0
- package/src/Reachability/Reachability.ts +55 -0
- package/src/Reachability/index.ts +4 -0
- package/src/Reachability/types.ts +6 -0
- package/src/ServiceWorker/ServiceWorker.ts +67 -36
- package/src/ServiceWorker/errorHelpers.ts +26 -0
- package/src/ServiceWorker/index.ts +0 -12
- package/src/Signer/DateUtils.ts +103 -0
- package/src/Signer/Signer.ts +203 -0
- package/src/Signer/index.ts +4 -0
- package/src/adapterCore/error/AmplifyServerContextError.ts +23 -0
- package/src/adapterCore/error/index.ts +4 -0
- package/src/adapterCore/index.ts +11 -0
- package/src/adapterCore/serverContext/index.ts +10 -0
- package/src/adapterCore/serverContext/serverContext.ts +54 -0
- package/src/adapterCore/serverContext/serverContextRegistry.ts +31 -0
- package/src/adapterCore/serverContext/types/amplifyServer.ts +29 -0
- package/src/adapterCore/serverContext/types/cookieStorage.ts +43 -0
- package/src/adapterCore/serverContext/types/index.ts +9 -0
- package/src/awsClients/cognitoIdentity/base.ts +97 -0
- package/src/awsClients/cognitoIdentity/getCredentialsForIdentity.ts +74 -0
- package/src/awsClients/pinpoint/base.ts +42 -0
- package/src/awsClients/pinpoint/errorHelpers.ts +19 -0
- package/src/awsClients/pinpoint/getInAppMessages.ts +57 -0
- package/src/awsClients/pinpoint/index.ts +15 -0
- package/src/awsClients/pinpoint/putEvents.ts +58 -0
- package/src/awsClients/pinpoint/updateEndpoint.ts +61 -0
- package/src/clients/handlers/authenticated.ts +2 -1
- package/src/clients/handlers/fetch.ts +9 -4
- package/src/clients/handlers/unauthenticated.ts +2 -1
- package/src/clients/internal/composeServiceApi.ts +22 -6
- package/src/clients/middleware/retry/defaultRetryDecider.ts +12 -6
- package/src/clients/middleware/retry/isClockSkewError.ts +1 -1
- package/src/clients/middleware/retry/jitteredBackoff.ts +1 -1
- package/src/clients/middleware/retry/middleware.ts +9 -9
- package/src/clients/middleware/signing/middleware.ts +1 -1
- package/src/clients/middleware/signing/signer/signatureV4/index.ts +0 -1
- package/src/clients/middleware/signing/signer/signatureV4/presignUrl.ts +2 -1
- package/src/clients/middleware/signing/signer/signatureV4/utils/dataHashHelpers.ts +2 -2
- package/src/clients/serde/responseInfo.ts +2 -1
- package/src/clients/types/aws.ts +4 -1
- package/src/clients/types/http.ts +27 -1
- package/src/constants.ts +7 -0
- package/src/errors/AmplifyError.ts +34 -0
- package/src/errors/PlatformNotSupportedError.ts +14 -0
- package/src/errors/createAssertionFunction.ts +23 -0
- package/src/errors/errorHelpers.ts +20 -0
- package/src/errors/index.ts +7 -0
- package/src/global.d.ts +11 -0
- package/src/index.ts +62 -82
- package/src/libraryUtils.ts +113 -0
- package/src/parseAWSExports.ts +272 -56
- package/src/providers/kinesis/types/index.ts +4 -0
- package/src/providers/kinesis/types/kinesis.ts +12 -0
- package/src/providers/kinesis-firehose/types/index.ts +4 -0
- package/src/providers/kinesis-firehose/types/kinesis-firehose.ts +12 -0
- package/src/providers/personalize/types/index.ts +4 -0
- package/src/providers/personalize/types/personalize.ts +11 -0
- package/src/providers/pinpoint/apis/flushEvents.ts +31 -0
- package/src/providers/pinpoint/apis/index.ts +6 -0
- package/src/providers/pinpoint/apis/record.ts +93 -0
- package/src/providers/pinpoint/apis/updateEndpoint.ts +98 -0
- package/src/providers/pinpoint/index.ts +10 -0
- package/src/providers/pinpoint/types/buffer.ts +32 -0
- package/src/providers/pinpoint/types/errors.ts +12 -0
- package/src/providers/pinpoint/types/index.ts +5 -0
- package/src/providers/pinpoint/types/pinpoint.ts +60 -0
- package/src/providers/pinpoint/utils/PinpointEventBuffer.ts +256 -0
- package/src/providers/pinpoint/utils/cacheEndpointId.ts +27 -0
- package/src/providers/pinpoint/utils/constants.ts +8 -0
- package/src/providers/pinpoint/utils/getCacheKey.ts +16 -0
- package/src/providers/pinpoint/utils/getEndpointId.ts +20 -0
- package/src/providers/pinpoint/utils/getEventBuffer.ts +60 -0
- package/src/providers/pinpoint/utils/index.ts +7 -0
- package/src/providers/pinpoint/utils/isAppInForeground.native.ts +7 -0
- package/src/providers/pinpoint/utils/isAppInForeground.ts +4 -0
- package/src/providers/pinpoint/utils/resolveEndpointId.ts +46 -0
- package/src/server.ts +4 -0
- package/src/singleton/API/types.ts +90 -0
- package/src/singleton/Amplify.ts +89 -0
- package/src/singleton/Analytics/types.ts +17 -0
- package/src/singleton/Auth/index.ts +103 -0
- package/src/singleton/Auth/types.ts +225 -0
- package/src/singleton/Auth/utils/errorHelpers.ts +37 -0
- package/src/singleton/Auth/utils/index.ts +106 -0
- package/src/singleton/Cache/types.ts +27 -0
- package/src/singleton/Geo/types.ts +20 -0
- package/src/singleton/Interactions/types.ts +29 -0
- package/src/singleton/Notifications/InAppMessaging/types.ts +6 -0
- package/src/singleton/Notifications/PushNotification/types.ts +6 -0
- package/src/singleton/Notifications/types.ts +10 -0
- package/src/singleton/Predictions/types.ts +61 -0
- package/src/singleton/Storage/types.ts +30 -0
- package/src/singleton/apis/clearCredentials.ts +8 -0
- package/src/singleton/apis/fetchAuthSession.ts +12 -0
- package/src/singleton/apis/internal/fetchAuthSession.ts +12 -0
- package/src/singleton/apis/server/fetchAuthSession.ts +16 -0
- package/src/singleton/index.ts +6 -0
- package/src/singleton/types.ts +64 -0
- package/src/storage/CookieStorage.native.ts +13 -0
- package/src/storage/CookieStorage.ts +68 -0
- package/src/storage/DefaultStorage.native.ts +58 -0
- package/src/storage/DefaultStorage.ts +14 -0
- package/src/storage/InMemoryStorage.ts +36 -0
- package/src/storage/KeyValueStorage.ts +57 -0
- package/src/storage/SessionStorage.ts +14 -0
- package/src/storage/index.ts +13 -0
- package/src/storage/utils.ts +22 -0
- package/src/types/core.ts +51 -0
- package/src/types/errors.ts +33 -0
- package/src/types/index.ts +5 -1
- package/src/types/logging.ts +24 -0
- package/src/types/storage.ts +23 -0
- package/src/utils/WordArray.ts +57 -0
- package/src/utils/amplifyUrl/index.ts +9 -0
- package/src/utils/amplifyUrl/polyfill.native.ts +6 -0
- package/src/utils/amplifyUrl/polyfill.ts +4 -0
- package/src/utils/amplifyUuid/index.ts +9 -0
- package/src/utils/amplifyUuid/polyfill.native.ts +6 -0
- package/src/utils/amplifyUuid/polyfill.ts +4 -0
- package/src/utils/convert/base64/base64Decoder.ts +11 -0
- package/src/utils/convert/base64/base64Encoder.ts +18 -0
- package/src/utils/convert/base64/bytesToString.ts +6 -0
- package/src/utils/convert/index.ts +5 -0
- package/src/utils/convert/types.ts +17 -0
- package/src/utils/cryptoSecureRandomInt.ts +14 -0
- package/src/utils/deepFreeze.ts +16 -0
- package/src/utils/generateRandomString.ts +16 -0
- package/src/utils/getClientInfo/getClientInfo.android.ts +21 -0
- package/src/utils/getClientInfo/getClientInfo.ios.ts +64 -0
- package/src/utils/getClientInfo/getClientInfo.ts +81 -0
- package/src/utils/getClientInfo/index.ts +4 -0
- package/src/utils/globalHelpers/index.native.ts +30 -0
- package/src/utils/globalHelpers/index.ts +54 -0
- package/src/utils/index.ts +17 -0
- package/src/utils/isBrowser.ts +5 -0
- package/src/utils/isWebWorker.ts +13 -0
- package/src/utils/retry/NonRetryableError.ts +9 -0
- package/src/utils/retry/constants.ts +4 -0
- package/src/utils/retry/index.ts +8 -0
- package/src/utils/retry/isNonRetryableError.ts +9 -0
- package/src/utils/retry/jitteredBackoff.ts +21 -0
- package/src/utils/retry/jitteredExponentialRetry.ts +18 -0
- package/src/utils/retry/retry.ts +82 -0
- package/src/utils/sessionListener/SessionListener.native.ts +70 -0
- package/src/utils/sessionListener/SessionListener.ts +74 -0
- package/src/utils/sessionListener/constants.ts +6 -0
- package/src/utils/sessionListener/index.ts +7 -0
- package/src/utils/sessionListener/types.ts +11 -0
- package/src/utils/urlSafeDecode.ts +7 -0
- package/src/utils/urlSafeEncode.ts +9 -0
- package/lib/Amplify.d.ts +0 -28
- package/lib/Amplify.js +0 -109
- package/lib/AwsClients/CognitoIdentity/base.d.ts +0 -28
- package/lib/AwsClients/CognitoIdentity/base.js +0 -113
- package/lib/AwsClients/CognitoIdentity/getCredentialsForIdentity.d.ts +0 -23
- package/lib/AwsClients/CognitoIdentity/getCredentialsForIdentity.js +0 -83
- package/lib/AwsClients/CognitoIdentity/getId.d.ts +0 -23
- package/lib/AwsClients/CognitoIdentity/getId.js +0 -73
- package/lib/AwsClients/Pinpoint/base.d.ts +0 -17
- package/lib/AwsClients/Pinpoint/base.js +0 -39
- package/lib/AwsClients/Pinpoint/getInAppMessages.d.ts +0 -23
- package/lib/AwsClients/Pinpoint/getInAppMessages.js +0 -77
- package/lib/AwsClients/Pinpoint/index.d.ts +0 -4
- package/lib/AwsClients/Pinpoint/putEvents.d.ts +0 -23
- package/lib/AwsClients/Pinpoint/putEvents.js +0 -78
- package/lib/AwsClients/Pinpoint/updateEndpoint.d.ts +0 -23
- package/lib/AwsClients/Pinpoint/updateEndpoint.js +0 -81
- package/lib/ClientDevice/android.d.ts +0 -5
- package/lib/ClientDevice/android.js +0 -20
- package/lib/ClientDevice/browser.d.ts +0 -25
- package/lib/ClientDevice/browser.js +0 -80
- package/lib/ClientDevice/index.d.ts +0 -23
- package/lib/ClientDevice/index.js +0 -18
- package/lib/ClientDevice/ios.d.ts +0 -7
- package/lib/ClientDevice/ios.js +0 -62
- package/lib/ClientDevice/reactnative.d.ts +0 -7
- package/lib/ClientDevice/reactnative.js +0 -23
- package/lib/Credentials.d.ts +0 -47
- package/lib/Credentials.js +0 -678
- package/lib/Errors.d.ts +0 -2
- package/lib/Errors.js +0 -13
- package/lib/Hub.d.ts +0 -55
- package/lib/Hub.js +0 -219
- package/lib/JS.d.ts +0 -32
- package/lib/JS.js +0 -221
- package/lib/OAuthHelper/FacebookOAuth.d.ts +0 -6
- package/lib/OAuthHelper/FacebookOAuth.js +0 -124
- package/lib/OAuthHelper/GoogleOAuth.d.ts +0 -6
- package/lib/OAuthHelper/GoogleOAuth.js +0 -133
- package/lib/OAuthHelper/index.d.ts +0 -4
- package/lib/OAuthHelper/index.js +0 -9
- package/lib/Providers/AWSCloudWatchProvider.d.ts +0 -34
- package/lib/Providers/AWSCloudWatchProvider.js +0 -596
- package/lib/Providers/index.d.ts +0 -1
- package/lib/Providers/index.js +0 -7
- package/lib/RNComponents/index.d.ts +0 -5
- package/lib/RNComponents/index.js +0 -15
- package/lib/RNComponents/reactnative.d.ts +0 -3
- package/lib/RNComponents/reactnative.js +0 -13
- package/lib/Signer.d.ts +0 -41
- package/lib/Signer.js +0 -130
- package/lib/StorageHelper/index.d.ts +0 -41
- package/lib/StorageHelper/index.js +0 -75
- package/lib/StorageHelper/reactnative.d.ts +0 -13
- package/lib/StorageHelper/reactnative.js +0 -106
- package/lib/UniversalStorage/index.d.ts +0 -23
- package/lib/UniversalStorage/index.js +0 -112
- package/lib/Util/BackgroundProcessManager.d.ts +0 -204
- package/lib/Util/BackgroundProcessManager.js +0 -448
- package/lib/Util/Constants.d.ts +0 -8
- package/lib/Util/Constants.js +0 -23
- package/lib/Util/DateUtils.d.ts +0 -7
- package/lib/Util/DateUtils.js +0 -75
- package/lib/Util/Mutex.d.ts +0 -45
- package/lib/Util/Mutex.js +0 -73
- package/lib/Util/Reachability.d.ts +0 -13
- package/lib/Util/Reachability.js +0 -70
- package/lib/Util/Reachability.native.d.ts +0 -11
- package/lib/Util/Reachability.native.js +0 -44
- package/lib/Util/Retry.d.ts +0 -21
- package/lib/Util/Retry.js +0 -205
- package/lib/Util/StringUtils.d.ts +0 -2
- package/lib/Util/StringUtils.js +0 -24
- package/lib/Util/index.d.ts +0 -7
- package/lib/Util/index.js +0 -35
- package/lib/clients/middleware/signing/signer/signatureV4/index.native.d.ts +0 -5
- package/lib/clients/middleware/signing/signer/signatureV4/index.native.js +0 -15
- package/lib/types/types.d.ts +0 -46
- package/lib-esm/Amplify.d.ts +0 -28
- package/lib-esm/Amplify.js +0 -106
- package/lib-esm/AwsClients/CognitoIdentity/base.d.ts +0 -28
- package/lib-esm/AwsClients/CognitoIdentity/base.js +0 -108
- package/lib-esm/AwsClients/CognitoIdentity/getCredentialsForIdentity.d.ts +0 -23
- package/lib-esm/AwsClients/CognitoIdentity/getCredentialsForIdentity.js +0 -80
- package/lib-esm/AwsClients/CognitoIdentity/getId.d.ts +0 -23
- package/lib-esm/AwsClients/CognitoIdentity/getId.js +0 -70
- package/lib-esm/AwsClients/Pinpoint/base.d.ts +0 -17
- package/lib-esm/AwsClients/Pinpoint/base.js +0 -35
- package/lib-esm/AwsClients/Pinpoint/getInAppMessages.d.ts +0 -23
- package/lib-esm/AwsClients/Pinpoint/getInAppMessages.js +0 -74
- package/lib-esm/AwsClients/Pinpoint/index.d.ts +0 -4
- package/lib-esm/AwsClients/Pinpoint/putEvents.d.ts +0 -23
- package/lib-esm/AwsClients/Pinpoint/putEvents.js +0 -75
- package/lib-esm/AwsClients/Pinpoint/updateEndpoint.d.ts +0 -23
- package/lib-esm/AwsClients/Pinpoint/updateEndpoint.js +0 -78
- package/lib-esm/ClientDevice/android.d.ts +0 -5
- package/lib-esm/ClientDevice/android.js +0 -16
- package/lib-esm/ClientDevice/browser.d.ts +0 -25
- package/lib-esm/ClientDevice/browser.js +0 -74
- package/lib-esm/ClientDevice/index.d.ts +0 -23
- package/lib-esm/ClientDevice/index.js +0 -15
- package/lib-esm/ClientDevice/ios.d.ts +0 -7
- package/lib-esm/ClientDevice/ios.js +0 -58
- package/lib-esm/ClientDevice/reactnative.d.ts +0 -7
- package/lib-esm/ClientDevice/reactnative.js +0 -20
- package/lib-esm/Credentials.d.ts +0 -47
- package/lib-esm/Credentials.js +0 -675
- package/lib-esm/Errors.d.ts +0 -2
- package/lib-esm/Errors.js +0 -8
- package/lib-esm/Hub.d.ts +0 -55
- package/lib-esm/Hub.js +0 -216
- package/lib-esm/JS.d.ts +0 -32
- package/lib-esm/JS.js +0 -206
- package/lib-esm/OAuthHelper/FacebookOAuth.d.ts +0 -6
- package/lib-esm/OAuthHelper/FacebookOAuth.js +0 -121
- package/lib-esm/OAuthHelper/GoogleOAuth.d.ts +0 -6
- package/lib-esm/OAuthHelper/GoogleOAuth.js +0 -130
- package/lib-esm/OAuthHelper/index.d.ts +0 -4
- package/lib-esm/OAuthHelper/index.js +0 -6
- package/lib-esm/Providers/AWSCloudWatchProvider.d.ts +0 -34
- package/lib-esm/Providers/AWSCloudWatchProvider.js +0 -593
- package/lib-esm/Providers/index.d.ts +0 -1
- package/lib-esm/Providers/index.js +0 -3
- package/lib-esm/RNComponents/index.d.ts +0 -5
- package/lib-esm/RNComponents/index.js +0 -12
- package/lib-esm/RNComponents/reactnative.d.ts +0 -3
- package/lib-esm/RNComponents/reactnative.js +0 -5
- package/lib-esm/Signer.d.ts +0 -41
- package/lib-esm/Signer.js +0 -127
- package/lib-esm/StorageHelper/index.d.ts +0 -41
- package/lib-esm/StorageHelper/index.js +0 -72
- package/lib-esm/StorageHelper/reactnative.d.ts +0 -13
- package/lib-esm/StorageHelper/reactnative.js +0 -100
- package/lib-esm/UniversalStorage/index.d.ts +0 -23
- package/lib-esm/UniversalStorage/index.js +0 -106
- package/lib-esm/Util/BackgroundProcessManager.d.ts +0 -204
- package/lib-esm/Util/BackgroundProcessManager.js +0 -445
- package/lib-esm/Util/Constants.d.ts +0 -8
- package/lib-esm/Util/Constants.js +0 -14
- package/lib-esm/Util/DateUtils.d.ts +0 -7
- package/lib-esm/Util/DateUtils.js +0 -72
- package/lib-esm/Util/Mutex.d.ts +0 -45
- package/lib-esm/Util/Mutex.js +0 -71
- package/lib-esm/Util/Reachability.d.ts +0 -13
- package/lib-esm/Util/Reachability.js +0 -65
- package/lib-esm/Util/Reachability.native.d.ts +0 -11
- package/lib-esm/Util/Reachability.native.js +0 -39
- package/lib-esm/Util/Retry.d.ts +0 -21
- package/lib-esm/Util/Retry.js +0 -198
- package/lib-esm/Util/StringUtils.d.ts +0 -2
- package/lib-esm/Util/StringUtils.js +0 -19
- package/lib-esm/Util/index.d.ts +0 -7
- package/lib-esm/Util/index.js +0 -9
- package/lib-esm/clients/middleware/signing/signer/signatureV4/index.native.d.ts +0 -5
- package/lib-esm/clients/middleware/signing/signer/signatureV4/index.native.js +0 -8
- package/lib-esm/types/types.d.ts +0 -46
- package/polyfills/URL/index.js +0 -1
- package/polyfills/URL/index.ts +0 -14
- package/polyfills/URL/tsconfig.json +0 -10
- package/polyfills/URL/webpack.config.js +0 -43
- package/src/Amplify.ts +0 -100
- package/src/AwsClients/CognitoIdentity/base.ts +0 -93
- package/src/AwsClients/CognitoIdentity/getCredentialsForIdentity.ts +0 -67
- package/src/AwsClients/Pinpoint/base.ts +0 -41
- package/src/AwsClients/Pinpoint/getInAppMessages.ts +0 -56
- package/src/AwsClients/Pinpoint/index.ts +0 -15
- package/src/AwsClients/Pinpoint/putEvents.ts +0 -55
- package/src/AwsClients/Pinpoint/updateEndpoint.ts +0 -60
- package/src/ClientDevice/android.ts +0 -21
- package/src/ClientDevice/browser.ts +0 -93
- package/src/ClientDevice/index.ts +0 -14
- package/src/ClientDevice/ios.ts +0 -64
- package/src/ClientDevice/reactnative.ts +0 -18
- package/src/Credentials.ts +0 -634
- package/src/Errors.ts +0 -9
- package/src/Hub.ts +0 -235
- package/src/JS.ts +0 -259
- package/src/OAuthHelper/FacebookOAuth.ts +0 -83
- package/src/OAuthHelper/GoogleOAuth.ts +0 -94
- package/src/OAuthHelper/index.ts +0 -7
- package/src/Providers/AWSCloudWatchProvider.ts +0 -515
- package/src/Providers/index.ts +0 -3
- package/src/RNComponents/index.ts +0 -15
- package/src/RNComponents/reactnative.ts +0 -6
- package/src/Signer.ts +0 -176
- package/src/StorageHelper/index.ts +0 -73
- package/src/StorageHelper/reactnative.ts +0 -102
- package/src/UniversalStorage/index.ts +0 -119
- package/src/Util/BackgroundProcessManager.ts +0 -451
- package/src/Util/Constants.ts +0 -24
- package/src/Util/DateUtils.ts +0 -86
- package/src/Util/Mutex.ts +0 -96
- package/src/Util/Reachability.native.ts +0 -50
- package/src/Util/Reachability.ts +0 -60
- package/src/Util/Retry.ts +0 -121
- package/src/Util/StringUtils.ts +0 -20
- package/src/Util/index.ts +0 -27
- package/src/clients/middleware/signing/signer/signatureV4/index.native.ts +0 -10
- package/src/types/types.ts +0 -67
- /package/lib/{AwsClients/CognitoIdentity/types.js → Cache/types/cache.js} +0 -0
- /package/lib/{AwsClients/CognitoIdentity → awsClients/cognitoIdentity}/index.d.ts +0 -0
- /package/lib/{AwsClients/CognitoIdentity → awsClients/cognitoIdentity}/index.js +0 -0
- /package/lib/{AwsClients/CognitoIdentity → awsClients/cognitoIdentity}/types.d.ts +0 -0
- /package/lib/{AwsClients/Pinpoint → awsClients/pinpoint}/index.js +0 -0
- /package/lib/{AwsClients/Pinpoint → awsClients/pinpoint}/types.d.ts +0 -0
- /package/lib/{AwsClients/Pinpoint → awsClients/pinpoint}/types.js +0 -0
- /package/lib/{types → singleton/API}/types.js +0 -0
- /package/lib-esm/{AwsClients/CognitoIdentity/types.js → Cache/types/cache.js} +0 -0
- /package/lib-esm/{AwsClients/CognitoIdentity → awsClients/cognitoIdentity}/index.d.ts +0 -0
- /package/lib-esm/{AwsClients/CognitoIdentity → awsClients/cognitoIdentity}/index.js +0 -0
- /package/lib-esm/{AwsClients/CognitoIdentity → awsClients/cognitoIdentity}/types.d.ts +0 -0
- /package/lib-esm/{AwsClients/Pinpoint → awsClients/pinpoint}/index.js +0 -0
- /package/lib-esm/{AwsClients/Pinpoint → awsClients/pinpoint}/types.d.ts +0 -0
- /package/lib-esm/{AwsClients/Pinpoint → awsClients/pinpoint}/types.js +0 -0
- /package/lib-esm/{types → singleton/API}/types.js +0 -0
- /package/src/{AwsClients/CognitoIdentity → awsClients/cognitoIdentity}/getId.ts +0 -0
- /package/src/{AwsClients/CognitoIdentity → awsClients/cognitoIdentity}/index.ts +0 -0
- /package/src/{AwsClients/CognitoIdentity → awsClients/cognitoIdentity}/types.ts +0 -0
- /package/src/{AwsClients/Pinpoint → awsClients/pinpoint}/types.ts +0 -0
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
2
|
+
// SPDX-License-Identifier: Apache-2.0
|
|
3
|
+
import { PinpointEventBuffer } from './PinpointEventBuffer';
|
|
4
|
+
import { BUFFER_SIZE, FLUSH_INTERVAL, FLUSH_SIZE, RESEND_LIMIT } from './constants';
|
|
5
|
+
// Map of buffers by region -> appId
|
|
6
|
+
const eventBufferMap = {};
|
|
7
|
+
/**
|
|
8
|
+
* Returns a PinpointEventBuffer instance for the specified region & app ID, creating one if it does not yet exist.
|
|
9
|
+
*
|
|
10
|
+
* @internal
|
|
11
|
+
*/
|
|
12
|
+
export const getEventBuffer = ({ appId, bufferSize = BUFFER_SIZE, credentials, flushInterval = FLUSH_INTERVAL, flushSize = FLUSH_SIZE, identityId, region, resendLimit = RESEND_LIMIT, userAgentValue }) => {
|
|
13
|
+
if (eventBufferMap[region]?.[appId]) {
|
|
14
|
+
const buffer = eventBufferMap[region][appId];
|
|
15
|
+
/*
|
|
16
|
+
If the identity has changed flush out the buffer and create a new instance. The old instance will be garbage
|
|
17
|
+
collected.
|
|
18
|
+
*/
|
|
19
|
+
if (buffer.identityHasChanged(identityId)) {
|
|
20
|
+
buffer.flush();
|
|
21
|
+
}
|
|
22
|
+
else {
|
|
23
|
+
return buffer;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
const buffer = new PinpointEventBuffer({
|
|
27
|
+
appId,
|
|
28
|
+
bufferSize,
|
|
29
|
+
credentials,
|
|
30
|
+
flushInterval,
|
|
31
|
+
flushSize,
|
|
32
|
+
identityId,
|
|
33
|
+
region,
|
|
34
|
+
resendLimit,
|
|
35
|
+
userAgentValue
|
|
36
|
+
});
|
|
37
|
+
if (!eventBufferMap[region]) {
|
|
38
|
+
eventBufferMap[region] = {};
|
|
39
|
+
}
|
|
40
|
+
eventBufferMap[region][appId] = buffer;
|
|
41
|
+
return buffer;
|
|
42
|
+
};
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
2
|
+
// SPDX-License-Identifier: Apache-2.0
|
|
3
|
+
export { cacheEndpointId } from './cacheEndpointId';
|
|
4
|
+
export { getCacheKey } from './getCacheKey';
|
|
5
|
+
export { getEndpointId } from './getEndpointId';
|
|
6
|
+
export { resolveEndpointId } from './resolveEndpointId';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const isAppInForeground: () => boolean;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const isAppInForeground: () => boolean;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { PinpointUpdateEndpointInput } from '../types';
|
|
2
|
+
/**
|
|
3
|
+
* Resolves an endpoint id from cache or prepare via updateEndpoint if one does not already exist,
|
|
4
|
+
* which will generate and cache an endpoint id between calls.
|
|
5
|
+
*
|
|
6
|
+
* @internal
|
|
7
|
+
*/
|
|
8
|
+
export declare const resolveEndpointId: ({ address, appId, category, channelType, credentials, identityId, region, userAgentValue, }: PinpointUpdateEndpointInput) => Promise<string>;
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
2
|
+
// SPDX-License-Identifier: Apache-2.0
|
|
3
|
+
import { assert } from '../../../errors';
|
|
4
|
+
import { AmplifyErrorCode } from '../../../types';
|
|
5
|
+
import { updateEndpoint } from '../apis';
|
|
6
|
+
import { getEndpointId } from './getEndpointId';
|
|
7
|
+
/**
|
|
8
|
+
* Resolves an endpoint id from cache or prepare via updateEndpoint if one does not already exist,
|
|
9
|
+
* which will generate and cache an endpoint id between calls.
|
|
10
|
+
*
|
|
11
|
+
* @internal
|
|
12
|
+
*/
|
|
13
|
+
export const resolveEndpointId = async ({ address, appId, category, channelType, credentials, identityId, region, userAgentValue, }) => {
|
|
14
|
+
let endpointId = await getEndpointId(appId, category);
|
|
15
|
+
if (!endpointId) {
|
|
16
|
+
await updateEndpoint({
|
|
17
|
+
address,
|
|
18
|
+
appId,
|
|
19
|
+
category,
|
|
20
|
+
channelType,
|
|
21
|
+
credentials,
|
|
22
|
+
identityId,
|
|
23
|
+
region,
|
|
24
|
+
userAgentValue,
|
|
25
|
+
});
|
|
26
|
+
endpointId = await getEndpointId(appId, category);
|
|
27
|
+
}
|
|
28
|
+
assert(!!endpointId, AmplifyErrorCode.NoEndpointId);
|
|
29
|
+
return endpointId;
|
|
30
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { fetchAuthSession } from './singleton/apis/server/fetchAuthSession';
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import { Headers } from '../../clients';
|
|
2
|
+
export type LibraryAPIOptions = {
|
|
3
|
+
GraphQL?: {
|
|
4
|
+
headers?: (options: {
|
|
5
|
+
query: string;
|
|
6
|
+
variables?: Record<string, DocumentType>;
|
|
7
|
+
}) => Promise<Headers>;
|
|
8
|
+
withCredentials?: boolean;
|
|
9
|
+
};
|
|
10
|
+
REST?: {
|
|
11
|
+
headers?: (options: {
|
|
12
|
+
apiName: string;
|
|
13
|
+
}) => Promise<Headers>;
|
|
14
|
+
};
|
|
15
|
+
};
|
|
16
|
+
type APIGraphQLConfig = {
|
|
17
|
+
/**
|
|
18
|
+
* Required GraphQL endpoint, must be a valid URL string.
|
|
19
|
+
*/
|
|
20
|
+
endpoint: string;
|
|
21
|
+
/**
|
|
22
|
+
* Optional region string used to sign the request. Required only if the auth mode is 'iam'.
|
|
23
|
+
*/
|
|
24
|
+
region?: string;
|
|
25
|
+
/**
|
|
26
|
+
* Optional API key string. Required only if the auth mode is 'apiKey'.
|
|
27
|
+
*/
|
|
28
|
+
apiKey?: string;
|
|
29
|
+
/**
|
|
30
|
+
* Custom domain endpoint for GraphQL API.
|
|
31
|
+
*/
|
|
32
|
+
customEndpoint?: string;
|
|
33
|
+
/**
|
|
34
|
+
* Optional region string used to sign the request to `customEndpoint`. Effective only if `customEndpoint` is
|
|
35
|
+
* specified, and the auth mode is 'iam'.
|
|
36
|
+
*/
|
|
37
|
+
customEndpointRegion?: string;
|
|
38
|
+
/**
|
|
39
|
+
* Default auth mode for all the API calls to given service.
|
|
40
|
+
*/
|
|
41
|
+
defaultAuthMode: GraphQLAuthMode;
|
|
42
|
+
};
|
|
43
|
+
type APIRestConfig = {
|
|
44
|
+
/**
|
|
45
|
+
* Required REST endpoint, must be a valid URL string.
|
|
46
|
+
*/
|
|
47
|
+
endpoint: string;
|
|
48
|
+
/**
|
|
49
|
+
* Optional region string used to sign the request with IAM credentials. If Omitted, region will be extracted from
|
|
50
|
+
* the endpoint.
|
|
51
|
+
*
|
|
52
|
+
* @default 'us-east-1'
|
|
53
|
+
*/
|
|
54
|
+
region?: string;
|
|
55
|
+
/**
|
|
56
|
+
* Optional service name string to sign the request with IAM credentials.
|
|
57
|
+
*
|
|
58
|
+
* @default 'execute-api'
|
|
59
|
+
*/
|
|
60
|
+
service?: string;
|
|
61
|
+
};
|
|
62
|
+
export type APIConfig = {
|
|
63
|
+
REST?: Record<string, APIRestConfig>;
|
|
64
|
+
GraphQL?: APIGraphQLConfig;
|
|
65
|
+
};
|
|
66
|
+
export type GraphQLAuthMode = 'apiKey' | 'oidc' | 'userPool' | 'iam' | 'lambda' | 'none';
|
|
67
|
+
/**
|
|
68
|
+
* Type representing a plain JavaScript object that can be serialized to JSON.
|
|
69
|
+
*/
|
|
70
|
+
export type DocumentType = null | boolean | number | string | DocumentType[] | {
|
|
71
|
+
[prop: string]: DocumentType;
|
|
72
|
+
};
|
|
73
|
+
export {};
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { AuthClass } from './Auth';
|
|
2
|
+
import { LegacyConfig, LibraryOptions, ResourcesConfig } from './types';
|
|
3
|
+
export declare class AmplifyClass {
|
|
4
|
+
resourcesConfig: ResourcesConfig;
|
|
5
|
+
libraryOptions: LibraryOptions;
|
|
6
|
+
/**
|
|
7
|
+
* Cross-category Auth utilities.
|
|
8
|
+
*
|
|
9
|
+
* @internal
|
|
10
|
+
*/
|
|
11
|
+
readonly Auth: AuthClass;
|
|
12
|
+
constructor();
|
|
13
|
+
/**
|
|
14
|
+
* Configures Amplify for use with your back-end resources.
|
|
15
|
+
*
|
|
16
|
+
* @remarks
|
|
17
|
+
* This API does not perform any merging of either `resourcesConfig` or `libraryOptions`. The most recently
|
|
18
|
+
* provided values will be used after configuration.
|
|
19
|
+
*
|
|
20
|
+
* @remarks
|
|
21
|
+
* `configure` can be used to specify additional library options where available for supported categories.
|
|
22
|
+
*
|
|
23
|
+
* @param resourceConfig - Back-end resource configuration. Typically provided via the `aws-exports.js` file.
|
|
24
|
+
* @param libraryOptions - Additional options for customizing the behavior of the library.
|
|
25
|
+
*/
|
|
26
|
+
configure(resourcesConfig: ResourcesConfig | LegacyConfig, libraryOptions?: LibraryOptions): void;
|
|
27
|
+
/**
|
|
28
|
+
* Provides access to the current back-end resource configuration for the Library.
|
|
29
|
+
*
|
|
30
|
+
* @returns Returns the immutable back-end resource configuration.
|
|
31
|
+
*/
|
|
32
|
+
getConfig(): Readonly<ResourcesConfig>;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* The `Amplify` utility is used to configure the library.
|
|
36
|
+
*
|
|
37
|
+
* @remarks
|
|
38
|
+
* `Amplify` is responsible for orchestrating cross-category communication within the library.
|
|
39
|
+
*/
|
|
40
|
+
export declare const Amplify: AmplifyClass;
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
2
|
+
// SPDX-License-Identifier: Apache-2.0
|
|
3
|
+
import { AuthClass } from './Auth';
|
|
4
|
+
import { Hub, AMPLIFY_SYMBOL } from '../Hub';
|
|
5
|
+
import { parseAWSExports } from '../parseAWSExports';
|
|
6
|
+
import { deepFreeze } from '../utils';
|
|
7
|
+
export class AmplifyClass {
|
|
8
|
+
constructor() {
|
|
9
|
+
this.resourcesConfig = {};
|
|
10
|
+
this.libraryOptions = {};
|
|
11
|
+
this.Auth = new AuthClass();
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Configures Amplify for use with your back-end resources.
|
|
15
|
+
*
|
|
16
|
+
* @remarks
|
|
17
|
+
* This API does not perform any merging of either `resourcesConfig` or `libraryOptions`. The most recently
|
|
18
|
+
* provided values will be used after configuration.
|
|
19
|
+
*
|
|
20
|
+
* @remarks
|
|
21
|
+
* `configure` can be used to specify additional library options where available for supported categories.
|
|
22
|
+
*
|
|
23
|
+
* @param resourceConfig - Back-end resource configuration. Typically provided via the `aws-exports.js` file.
|
|
24
|
+
* @param libraryOptions - Additional options for customizing the behavior of the library.
|
|
25
|
+
*/
|
|
26
|
+
configure(resourcesConfig, libraryOptions) {
|
|
27
|
+
let resolvedResourceConfig;
|
|
28
|
+
if (Object.keys(resourcesConfig).some(key => key.startsWith('aws_'))) {
|
|
29
|
+
resolvedResourceConfig = parseAWSExports(resourcesConfig);
|
|
30
|
+
}
|
|
31
|
+
else {
|
|
32
|
+
resolvedResourceConfig = resourcesConfig;
|
|
33
|
+
}
|
|
34
|
+
this.resourcesConfig = resolvedResourceConfig;
|
|
35
|
+
if (libraryOptions) {
|
|
36
|
+
this.libraryOptions = libraryOptions;
|
|
37
|
+
}
|
|
38
|
+
// Make resource config immutable
|
|
39
|
+
this.resourcesConfig = deepFreeze(this.resourcesConfig);
|
|
40
|
+
this.Auth.configure(this.resourcesConfig.Auth, this.libraryOptions.Auth);
|
|
41
|
+
Hub.dispatch('core', {
|
|
42
|
+
event: 'configure',
|
|
43
|
+
data: resourcesConfig,
|
|
44
|
+
}, 'Configure', AMPLIFY_SYMBOL);
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Provides access to the current back-end resource configuration for the Library.
|
|
48
|
+
*
|
|
49
|
+
* @returns Returns the immutable back-end resource configuration.
|
|
50
|
+
*/
|
|
51
|
+
getConfig() {
|
|
52
|
+
return this.resourcesConfig;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* The `Amplify` utility is used to configure the library.
|
|
57
|
+
*
|
|
58
|
+
* @remarks
|
|
59
|
+
* `Amplify` is responsible for orchestrating cross-category communication within the library.
|
|
60
|
+
*/
|
|
61
|
+
export const Amplify = new AmplifyClass();
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { PinpointProviderConfig } from '../../providers/pinpoint/types';
|
|
2
|
+
import { KinesisProviderConfig } from '../../providers/kinesis/types';
|
|
3
|
+
import { KinesisFirehoseProviderConfig } from '../../providers/kinesis-firehose/types';
|
|
4
|
+
import { PersonalizeProviderConfig } from '../../providers/personalize/types';
|
|
5
|
+
type AtLeastOne<T, U = {
|
|
6
|
+
[K in keyof T]: Pick<T, K>;
|
|
7
|
+
}> = Partial<T> & U[keyof U];
|
|
8
|
+
export type AnalyticsConfig = AtLeastOne<PinpointProviderConfig & KinesisProviderConfig & KinesisFirehoseProviderConfig & PersonalizeProviderConfig>;
|
|
9
|
+
export {};
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { AuthConfig, AuthSession, AuthTokens, FetchAuthSessionOptions, LibraryAuthOptions } from './types';
|
|
2
|
+
export declare function isTokenExpired({ expiresAt, clockDrift, }: {
|
|
3
|
+
expiresAt: number;
|
|
4
|
+
clockDrift: number;
|
|
5
|
+
}): boolean;
|
|
6
|
+
export declare class AuthClass {
|
|
7
|
+
private authConfig?;
|
|
8
|
+
private authOptions?;
|
|
9
|
+
constructor();
|
|
10
|
+
/**
|
|
11
|
+
* Configure Auth category
|
|
12
|
+
*
|
|
13
|
+
* @internal
|
|
14
|
+
*
|
|
15
|
+
* @param authResourcesConfig - Resources configurations required by Auth providers.
|
|
16
|
+
* @param authOptions - Client options used by library
|
|
17
|
+
*
|
|
18
|
+
* @returns void
|
|
19
|
+
*/
|
|
20
|
+
configure(authResourcesConfig: AuthConfig, authOptions?: LibraryAuthOptions): void;
|
|
21
|
+
fetchAuthSession(options?: FetchAuthSessionOptions): Promise<AuthSession>;
|
|
22
|
+
clearCredentials(): Promise<void>;
|
|
23
|
+
getTokens(options: FetchAuthSessionOptions): Promise<AuthTokens | undefined>;
|
|
24
|
+
}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
export function isTokenExpired({ expiresAt, clockDrift, }) {
|
|
2
|
+
const currentTime = Date.now();
|
|
3
|
+
return currentTime + clockDrift > expiresAt;
|
|
4
|
+
}
|
|
5
|
+
export class AuthClass {
|
|
6
|
+
constructor() { }
|
|
7
|
+
/**
|
|
8
|
+
* Configure Auth category
|
|
9
|
+
*
|
|
10
|
+
* @internal
|
|
11
|
+
*
|
|
12
|
+
* @param authResourcesConfig - Resources configurations required by Auth providers.
|
|
13
|
+
* @param authOptions - Client options used by library
|
|
14
|
+
*
|
|
15
|
+
* @returns void
|
|
16
|
+
*/
|
|
17
|
+
configure(authResourcesConfig, authOptions) {
|
|
18
|
+
this.authConfig = authResourcesConfig;
|
|
19
|
+
this.authOptions = authOptions;
|
|
20
|
+
}
|
|
21
|
+
async fetchAuthSession(options = {}) {
|
|
22
|
+
let tokens;
|
|
23
|
+
let credentialsAndIdentityId;
|
|
24
|
+
let userSub;
|
|
25
|
+
// Get tokens will throw if session cannot be refreshed (network or service error) or return null if not available
|
|
26
|
+
tokens = await this.getTokens(options);
|
|
27
|
+
if (tokens) {
|
|
28
|
+
userSub = tokens.accessToken?.payload?.sub;
|
|
29
|
+
// getCredentialsAndIdentityId will throw if cannot get credentials (network or service error)
|
|
30
|
+
credentialsAndIdentityId =
|
|
31
|
+
await this.authOptions?.credentialsProvider?.getCredentialsAndIdentityId({
|
|
32
|
+
authConfig: this.authConfig,
|
|
33
|
+
tokens,
|
|
34
|
+
authenticated: true,
|
|
35
|
+
forceRefresh: options.forceRefresh,
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
else {
|
|
39
|
+
// getCredentialsAndIdentityId will throw if cannot get credentials (network or service error)
|
|
40
|
+
credentialsAndIdentityId =
|
|
41
|
+
await this.authOptions?.credentialsProvider?.getCredentialsAndIdentityId({
|
|
42
|
+
authConfig: this.authConfig,
|
|
43
|
+
authenticated: false,
|
|
44
|
+
forceRefresh: options.forceRefresh,
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
return {
|
|
48
|
+
tokens,
|
|
49
|
+
credentials: credentialsAndIdentityId?.credentials,
|
|
50
|
+
identityId: credentialsAndIdentityId?.identityId,
|
|
51
|
+
userSub,
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
async clearCredentials() {
|
|
55
|
+
if (this.authOptions?.credentialsProvider) {
|
|
56
|
+
return await this.authOptions.credentialsProvider.clearCredentialsAndIdentityId();
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
async getTokens(options) {
|
|
60
|
+
return ((await this.authOptions?.tokenProvider?.getTokens(options)) ?? undefined);
|
|
61
|
+
}
|
|
62
|
+
}
|
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
interface JwtPayloadStandardFields {
|
|
2
|
+
exp?: number;
|
|
3
|
+
iss?: string;
|
|
4
|
+
aud?: string | string[];
|
|
5
|
+
nbf?: number;
|
|
6
|
+
iat?: number;
|
|
7
|
+
scope?: string;
|
|
8
|
+
jti?: string;
|
|
9
|
+
sub?: string;
|
|
10
|
+
}
|
|
11
|
+
/** JSON type */
|
|
12
|
+
type Json = null | string | number | boolean | Json[] | JsonObject;
|
|
13
|
+
/** JSON Object type */
|
|
14
|
+
type JsonObject = {
|
|
15
|
+
[name: string]: Json;
|
|
16
|
+
};
|
|
17
|
+
export type JwtPayload = JwtPayloadStandardFields & JsonObject;
|
|
18
|
+
export type JWT = {
|
|
19
|
+
payload: JwtPayload;
|
|
20
|
+
toString: () => string;
|
|
21
|
+
};
|
|
22
|
+
export type JWTCreator = (stringJWT: string) => JWT;
|
|
23
|
+
export type AuthSession = {
|
|
24
|
+
tokens?: AuthTokens;
|
|
25
|
+
credentials?: AWSCredentials;
|
|
26
|
+
identityId?: string;
|
|
27
|
+
userSub?: string;
|
|
28
|
+
};
|
|
29
|
+
export type LibraryAuthOptions = {
|
|
30
|
+
tokenProvider?: TokenProvider;
|
|
31
|
+
credentialsProvider?: AWSCredentialsAndIdentityIdProvider;
|
|
32
|
+
};
|
|
33
|
+
export type Identity = {
|
|
34
|
+
id: string;
|
|
35
|
+
type: 'guest' | 'primary';
|
|
36
|
+
};
|
|
37
|
+
export interface AWSCredentialsAndIdentityIdProvider {
|
|
38
|
+
getCredentialsAndIdentityId: (getCredentialsOptions: GetCredentialsOptions) => Promise<AWSCredentialsAndIdentityId | undefined>;
|
|
39
|
+
clearCredentialsAndIdentityId: () => void;
|
|
40
|
+
}
|
|
41
|
+
export type TokenProvider = {
|
|
42
|
+
getTokens: ({ forceRefresh, }?: {
|
|
43
|
+
forceRefresh?: boolean;
|
|
44
|
+
}) => Promise<AuthTokens | null>;
|
|
45
|
+
};
|
|
46
|
+
export type FetchAuthSessionOptions = {
|
|
47
|
+
forceRefresh?: boolean;
|
|
48
|
+
};
|
|
49
|
+
export type AuthTokens = {
|
|
50
|
+
idToken?: JWT;
|
|
51
|
+
accessToken: JWT;
|
|
52
|
+
};
|
|
53
|
+
export type AuthStandardAttributeKey = 'address' | 'birthdate' | 'email_verified' | 'family_name' | 'gender' | 'given_name' | 'locale' | 'middle_name' | 'name' | 'nickname' | 'phone_number_verified' | 'picture' | 'preferred_username' | 'profile' | 'sub' | 'updated_at' | 'website' | 'zoneinfo' | AuthVerifiableAttributeKey;
|
|
54
|
+
export type AuthVerifiableAttributeKey = 'email' | 'phone_number';
|
|
55
|
+
export type AuthConfigUserAttributes = Partial<Record<AuthStandardAttributeKey, {
|
|
56
|
+
required: boolean;
|
|
57
|
+
}>>;
|
|
58
|
+
export type AuthConfig = StrictUnion<AuthIdentityPoolConfig | AuthUserPoolConfig | AuthUserPoolAndIdentityPoolConfig>;
|
|
59
|
+
type UnionKeys<T> = T extends T ? keyof T : never;
|
|
60
|
+
type StrictUnionHelper<T, TAll> = T extends any ? T & Partial<Record<Exclude<UnionKeys<TAll>, keyof T>, never>> : never;
|
|
61
|
+
export type StrictUnion<T> = StrictUnionHelper<T, T>;
|
|
62
|
+
export type AuthIdentityPoolConfig = {
|
|
63
|
+
Cognito: CognitoIdentityPoolConfig & {
|
|
64
|
+
userPoolClientId?: never;
|
|
65
|
+
userPoolId?: never;
|
|
66
|
+
userPoolEndpoint?: never;
|
|
67
|
+
loginWith?: never;
|
|
68
|
+
signUpVerificationMethod?: never;
|
|
69
|
+
userAttributes?: never;
|
|
70
|
+
mfa?: never;
|
|
71
|
+
passwordFormat?: never;
|
|
72
|
+
};
|
|
73
|
+
};
|
|
74
|
+
export type CognitoIdentityPoolConfig = {
|
|
75
|
+
identityPoolId: string;
|
|
76
|
+
allowGuestAccess?: boolean;
|
|
77
|
+
};
|
|
78
|
+
export type AuthUserPoolConfig = {
|
|
79
|
+
Cognito: CognitoUserPoolConfig & {
|
|
80
|
+
identityPoolId?: never;
|
|
81
|
+
allowGuestAccess?: never;
|
|
82
|
+
};
|
|
83
|
+
};
|
|
84
|
+
export type CognitoUserPoolConfig = {
|
|
85
|
+
userPoolClientId: string;
|
|
86
|
+
userPoolId: string;
|
|
87
|
+
userPoolEndpoint?: string;
|
|
88
|
+
signUpVerificationMethod?: 'code' | 'link';
|
|
89
|
+
loginWith?: {
|
|
90
|
+
oauth?: OAuthConfig;
|
|
91
|
+
username?: boolean;
|
|
92
|
+
email?: boolean;
|
|
93
|
+
phone?: boolean;
|
|
94
|
+
};
|
|
95
|
+
userAttributes?: AuthConfigUserAttributes;
|
|
96
|
+
mfa?: {
|
|
97
|
+
status?: 'on' | 'off' | 'optional';
|
|
98
|
+
totpEnabled?: boolean;
|
|
99
|
+
smsEnabled?: boolean;
|
|
100
|
+
};
|
|
101
|
+
passwordFormat?: {
|
|
102
|
+
minLength?: number;
|
|
103
|
+
requireLowercase?: boolean;
|
|
104
|
+
requireUppercase?: boolean;
|
|
105
|
+
requireNumbers?: boolean;
|
|
106
|
+
requireSpecialCharacters?: boolean;
|
|
107
|
+
};
|
|
108
|
+
};
|
|
109
|
+
export type OAuthConfig = {
|
|
110
|
+
domain: string;
|
|
111
|
+
scopes: Array<OAuthScope>;
|
|
112
|
+
redirectSignIn: Array<string>;
|
|
113
|
+
redirectSignOut: Array<string>;
|
|
114
|
+
responseType: 'code' | 'token';
|
|
115
|
+
providers?: Array<OAuthProvider | CustomProvider>;
|
|
116
|
+
};
|
|
117
|
+
export type OAuthProvider = 'Google' | 'Facebook' | 'Amazon' | 'Apple';
|
|
118
|
+
type CustomProvider = {
|
|
119
|
+
custom: string;
|
|
120
|
+
};
|
|
121
|
+
type CustomScope = string & {};
|
|
122
|
+
type OAuthScope = 'email' | 'openid' | 'phone' | 'email' | 'profile' | 'aws.cognito.signin.user.admin' | CustomScope;
|
|
123
|
+
export type CognitoUserPoolWithOAuthConfig = CognitoUserPoolConfig & {
|
|
124
|
+
loginWith: {
|
|
125
|
+
oauth: OAuthConfig;
|
|
126
|
+
};
|
|
127
|
+
};
|
|
128
|
+
export type AuthUserPoolAndIdentityPoolConfig = {
|
|
129
|
+
Cognito: CognitoUserPoolAndIdentityPoolConfig;
|
|
130
|
+
};
|
|
131
|
+
export type CognitoUserPoolAndIdentityPoolConfig = CognitoUserPoolConfig & CognitoIdentityPoolConfig;
|
|
132
|
+
export type GetCredentialsOptions = GetCredentialsAuthenticatedUser | GetCredentialsUnauthenticatedUser;
|
|
133
|
+
type GetCredentialsAuthenticatedUser = {
|
|
134
|
+
authenticated: true;
|
|
135
|
+
forceRefresh?: boolean;
|
|
136
|
+
authConfig: AuthConfig | undefined;
|
|
137
|
+
tokens: AuthTokens;
|
|
138
|
+
};
|
|
139
|
+
type GetCredentialsUnauthenticatedUser = {
|
|
140
|
+
authenticated: false;
|
|
141
|
+
forceRefresh?: boolean;
|
|
142
|
+
authConfig: AuthConfig | undefined;
|
|
143
|
+
tokens?: never;
|
|
144
|
+
};
|
|
145
|
+
export type AWSCredentialsAndIdentityId = {
|
|
146
|
+
credentials: AWSCredentials;
|
|
147
|
+
identityId?: string;
|
|
148
|
+
};
|
|
149
|
+
export type AWSCredentials = {
|
|
150
|
+
accessKeyId: string;
|
|
151
|
+
secretAccessKey: string;
|
|
152
|
+
sessionToken?: string;
|
|
153
|
+
expiration?: Date;
|
|
154
|
+
};
|
|
155
|
+
export {};
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
2
|
+
// SPDX-License-Identifier: Apache-2.0
|
|
3
|
+
// From https://github.com/awslabs/aws-jwt-verify/blob/main/src/safe-json-parse.ts
|
|
4
|
+
// From https://github.com/awslabs/aws-jwt-verify/blob/main/src/jwt-model.ts
|
|
5
|
+
export {};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { AssertionFunction } from '../../../types';
|
|
2
|
+
export declare enum AuthConfigurationErrorCode {
|
|
3
|
+
AuthTokenConfigException = "AuthTokenConfigException",
|
|
4
|
+
AuthUserPoolAndIdentityPoolException = "AuthUserPoolAndIdentityPoolException",
|
|
5
|
+
InvalidIdentityPoolIdException = "InvalidIdentityPoolIdException",
|
|
6
|
+
OAuthNotConfigureException = "OAuthNotConfigureException"
|
|
7
|
+
}
|
|
8
|
+
export declare const assert: AssertionFunction<AuthConfigurationErrorCode>;
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
2
|
+
// SPDX-License-Identifier: Apache-2.0
|
|
3
|
+
import { createAssertionFunction } from '../../../errors';
|
|
4
|
+
export var AuthConfigurationErrorCode;
|
|
5
|
+
(function (AuthConfigurationErrorCode) {
|
|
6
|
+
AuthConfigurationErrorCode["AuthTokenConfigException"] = "AuthTokenConfigException";
|
|
7
|
+
AuthConfigurationErrorCode["AuthUserPoolAndIdentityPoolException"] = "AuthUserPoolAndIdentityPoolException";
|
|
8
|
+
AuthConfigurationErrorCode["InvalidIdentityPoolIdException"] = "InvalidIdentityPoolIdException";
|
|
9
|
+
AuthConfigurationErrorCode["OAuthNotConfigureException"] = "OAuthNotConfigureException";
|
|
10
|
+
})(AuthConfigurationErrorCode || (AuthConfigurationErrorCode = {}));
|
|
11
|
+
const authConfigurationErrorMap = {
|
|
12
|
+
[AuthConfigurationErrorCode.AuthTokenConfigException]: {
|
|
13
|
+
message: 'Auth Token Provider not configured.',
|
|
14
|
+
recoverySuggestion: 'Make sure to call Amplify.configure in your app.',
|
|
15
|
+
},
|
|
16
|
+
[AuthConfigurationErrorCode.AuthUserPoolAndIdentityPoolException]: {
|
|
17
|
+
message: 'Auth UserPool or IdentityPool not configured.',
|
|
18
|
+
recoverySuggestion: 'Make sure to call Amplify.configure in your app with UserPoolId and IdentityPoolId.',
|
|
19
|
+
},
|
|
20
|
+
[AuthConfigurationErrorCode.InvalidIdentityPoolIdException]: {
|
|
21
|
+
message: 'Invalid identity pool id provided.',
|
|
22
|
+
recoverySuggestion: 'Make sure a valid identityPoolId is given in the config.',
|
|
23
|
+
},
|
|
24
|
+
[AuthConfigurationErrorCode.OAuthNotConfigureException]: {
|
|
25
|
+
message: 'oauth param not configured.',
|
|
26
|
+
recoverySuggestion: 'Make sure to call Amplify.configure with oauth parameter in your app.',
|
|
27
|
+
},
|
|
28
|
+
};
|
|
29
|
+
export const assert = createAssertionFunction(authConfigurationErrorMap);
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { JWT, CognitoUserPoolWithOAuthConfig, CognitoUserPoolConfig, CognitoUserPoolAndIdentityPoolConfig, CognitoIdentityPoolConfig, StrictUnion } from '../types';
|
|
2
|
+
export declare function assertTokenProviderConfig(cognitoConfig?: StrictUnion<CognitoUserPoolConfig | CognitoUserPoolAndIdentityPoolConfig | CognitoIdentityPoolConfig>): asserts cognitoConfig is CognitoUserPoolAndIdentityPoolConfig | CognitoUserPoolConfig;
|
|
3
|
+
export declare function assertOAuthConfig(cognitoConfig?: CognitoUserPoolConfig | CognitoUserPoolAndIdentityPoolConfig): asserts cognitoConfig is CognitoUserPoolWithOAuthConfig;
|
|
4
|
+
export declare function assertIdentityPoolIdConfig(cognitoConfig?: StrictUnion<CognitoUserPoolConfig | CognitoUserPoolAndIdentityPoolConfig | CognitoIdentityPoolConfig>): asserts cognitoConfig is CognitoIdentityPoolConfig;
|
|
5
|
+
export declare function decodeJWT(token: string): JWT;
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
2
|
+
// SPDX-License-Identifier: Apache-2.0
|
|
3
|
+
import { AuthConfigurationErrorCode, assert } from './errorHelpers';
|
|
4
|
+
import { base64Decoder } from '../../../utils/convert';
|
|
5
|
+
export function assertTokenProviderConfig(cognitoConfig) {
|
|
6
|
+
let assertionValid = true; // assume valid until otherwise proveed
|
|
7
|
+
if (!cognitoConfig) {
|
|
8
|
+
assertionValid = false;
|
|
9
|
+
}
|
|
10
|
+
else {
|
|
11
|
+
assertionValid =
|
|
12
|
+
!!cognitoConfig.userPoolId && !!cognitoConfig.userPoolClientId;
|
|
13
|
+
}
|
|
14
|
+
return assert(assertionValid, AuthConfigurationErrorCode.AuthTokenConfigException);
|
|
15
|
+
}
|
|
16
|
+
export function assertOAuthConfig(cognitoConfig) {
|
|
17
|
+
const validOAuthConfig = !!cognitoConfig?.loginWith?.oauth?.domain &&
|
|
18
|
+
!!cognitoConfig?.loginWith?.oauth?.redirectSignOut &&
|
|
19
|
+
!!cognitoConfig?.loginWith?.oauth?.redirectSignIn &&
|
|
20
|
+
!!cognitoConfig?.loginWith?.oauth?.responseType;
|
|
21
|
+
return assert(validOAuthConfig, AuthConfigurationErrorCode.OAuthNotConfigureException);
|
|
22
|
+
}
|
|
23
|
+
export function assertIdentityPoolIdConfig(cognitoConfig) {
|
|
24
|
+
const validConfig = !!cognitoConfig?.identityPoolId;
|
|
25
|
+
return assert(validConfig, AuthConfigurationErrorCode.InvalidIdentityPoolIdException);
|
|
26
|
+
}
|
|
27
|
+
function assertUserPoolAndIdentityPoolConfig(authConfig) {
|
|
28
|
+
const validConfig = !!authConfig?.Cognito.identityPoolId && !!authConfig?.Cognito.userPoolId;
|
|
29
|
+
return assert(validConfig, AuthConfigurationErrorCode.AuthUserPoolAndIdentityPoolException);
|
|
30
|
+
}
|
|
31
|
+
export function decodeJWT(token) {
|
|
32
|
+
const tokenParts = token.split('.');
|
|
33
|
+
if (tokenParts.length !== 3) {
|
|
34
|
+
throw new Error('Invalid token');
|
|
35
|
+
}
|
|
36
|
+
try {
|
|
37
|
+
const base64WithUrlSafe = tokenParts[1];
|
|
38
|
+
const base64 = base64WithUrlSafe.replace(/-/g, '+').replace(/_/g, '/');
|
|
39
|
+
const jsonStr = decodeURIComponent(base64Decoder
|
|
40
|
+
.convert(base64)
|
|
41
|
+
.split('')
|
|
42
|
+
.map(char => `%${`00${char.charCodeAt(0).toString(16)}`.slice(-2)}`)
|
|
43
|
+
.join(''));
|
|
44
|
+
const payload = JSON.parse(jsonStr);
|
|
45
|
+
return {
|
|
46
|
+
toString: () => token,
|
|
47
|
+
payload,
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
catch (err) {
|
|
51
|
+
throw new Error('Invalid token payload');
|
|
52
|
+
}
|
|
53
|
+
}
|