@aws-amplify/core 6.0.17-unstable.e316a2e.0 → 6.0.17
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/BackgroundProcessManager/BackgroundProcessManager.js +11 -16
- package/dist/cjs/BackgroundProcessManager/BackgroundProcessManager.js.map +1 -1
- package/dist/cjs/Cache/StorageCacheCommon.js +5 -5
- package/dist/cjs/Cache/StorageCacheCommon.js.map +1 -1
- package/dist/cjs/Cache/utils/CacheList.js +2 -2
- package/dist/cjs/Cache/utils/CacheList.js.map +1 -1
- package/dist/cjs/Hub/index.js +2 -2
- package/dist/cjs/Hub/index.js.map +1 -1
- package/dist/cjs/I18n/I18n.js +8 -13
- package/dist/cjs/I18n/I18n.js.map +1 -1
- package/dist/cjs/I18n/index.js +4 -4
- package/dist/cjs/I18n/index.js.map +1 -1
- package/dist/cjs/Logger/ConsoleLogger.js +7 -7
- package/dist/cjs/Logger/ConsoleLogger.js.map +1 -1
- package/dist/cjs/Mutex/Mutex.js +4 -1
- package/dist/cjs/Mutex/Mutex.js.map +1 -1
- package/dist/cjs/Platform/detectFramework.js +3 -1
- package/dist/cjs/Platform/detectFramework.js.map +1 -1
- package/dist/cjs/Platform/detection/Angular.js +2 -4
- package/dist/cjs/Platform/detection/Angular.js.map +1 -1
- package/dist/cjs/Platform/detection/Expo.js +1 -2
- package/dist/cjs/Platform/detection/Expo.js.map +1 -1
- package/dist/cjs/Platform/detection/Next.js +3 -2
- package/dist/cjs/Platform/detection/Next.js.map +1 -1
- package/dist/cjs/Platform/detection/Nuxt.js +3 -4
- package/dist/cjs/Platform/detection/Nuxt.js.map +1 -1
- package/dist/cjs/Platform/index.js +1 -1
- package/dist/cjs/Platform/index.js.map +1 -1
- package/dist/cjs/Platform/version.js +1 -1
- package/dist/cjs/Platform/version.js.map +1 -1
- package/dist/cjs/Reachability/Reachability.js +6 -2
- package/dist/cjs/Reachability/Reachability.js.map +1 -1
- package/dist/cjs/ServiceWorker/ServiceWorker.js +11 -11
- package/dist/cjs/ServiceWorker/ServiceWorker.js.map +1 -1
- package/dist/cjs/Signer/DateUtils.js +1 -1
- package/dist/cjs/Signer/DateUtils.js.map +1 -1
- package/dist/cjs/Signer/Signer.js +3 -3
- package/dist/cjs/Signer/Signer.js.map +1 -1
- package/dist/cjs/adapterCore/serverContext/serverContext.js +1 -1
- package/dist/cjs/adapterCore/serverContext/serverContext.js.map +1 -1
- package/dist/cjs/awsClients/cognitoIdentity/base.js +2 -2
- package/dist/cjs/awsClients/cognitoIdentity/base.js.map +1 -1
- package/dist/cjs/awsClients/cognitoIdentity/getCredentialsForIdentity.js +1 -1
- package/dist/cjs/awsClients/cognitoIdentity/getCredentialsForIdentity.js.map +1 -1
- package/dist/cjs/awsClients/cognitoIdentity/getId.js +1 -1
- package/dist/cjs/awsClients/cognitoIdentity/getId.js.map +1 -1
- package/dist/cjs/awsClients/pinpoint/getInAppMessages.js +1 -1
- package/dist/cjs/awsClients/pinpoint/getInAppMessages.js.map +1 -1
- package/dist/cjs/awsClients/pinpoint/putEvents.js +1 -1
- package/dist/cjs/awsClients/pinpoint/putEvents.js.map +1 -1
- package/dist/cjs/awsClients/pinpoint/types.js +0 -1
- package/dist/cjs/awsClients/pinpoint/types.js.map +1 -1
- package/dist/cjs/awsClients/pinpoint/updateEndpoint.js +1 -1
- package/dist/cjs/awsClients/pinpoint/updateEndpoint.js.map +1 -1
- package/dist/cjs/clients/handlers/authenticated.js +3 -3
- package/dist/cjs/clients/handlers/authenticated.js.map +1 -1
- package/dist/cjs/clients/handlers/unauthenticated.js +1 -1
- package/dist/cjs/clients/handlers/unauthenticated.js.map +1 -1
- package/dist/cjs/clients/index.js +4 -4
- package/dist/cjs/clients/index.js.map +1 -1
- package/dist/cjs/clients/internal/composeServiceApi.js +1 -1
- package/dist/cjs/clients/internal/composeServiceApi.js.map +1 -1
- package/dist/cjs/clients/internal/composeTransferHandler.js +1 -1
- package/dist/cjs/clients/internal/composeTransferHandler.js.map +1 -1
- package/dist/cjs/clients/middleware/retry/defaultRetryDecider.js +2 -2
- package/dist/cjs/clients/middleware/retry/defaultRetryDecider.js.map +1 -1
- package/dist/cjs/clients/middleware/retry/index.js +2 -2
- package/dist/cjs/clients/middleware/retry/index.js.map +1 -1
- package/dist/cjs/clients/middleware/retry/jitteredBackoff.js +1 -1
- package/dist/cjs/clients/middleware/retry/jitteredBackoff.js.map +1 -1
- package/dist/cjs/clients/middleware/retry/middleware.js +6 -6
- package/dist/cjs/clients/middleware/retry/middleware.js.map +1 -1
- package/dist/cjs/clients/middleware/signing/index.js +2 -2
- package/dist/cjs/clients/middleware/signing/index.js.map +1 -1
- package/dist/cjs/clients/middleware/signing/middleware.js +3 -3
- package/dist/cjs/clients/middleware/signing/middleware.js.map +1 -1
- package/dist/cjs/clients/middleware/signing/signer/signatureV4/presignUrl.js +1 -2
- package/dist/cjs/clients/middleware/signing/signer/signatureV4/presignUrl.js.map +1 -1
- package/dist/cjs/clients/middleware/signing/signer/signatureV4/utils/getFormattedDates.js +1 -1
- package/dist/cjs/clients/middleware/signing/signer/signatureV4/utils/getFormattedDates.js.map +1 -1
- package/dist/cjs/clients/middleware/userAgent/index.js +2 -2
- package/dist/cjs/clients/middleware/userAgent/index.js.map +1 -1
- package/dist/cjs/clients/middleware/userAgent/middleware.js +3 -3
- package/dist/cjs/clients/middleware/userAgent/middleware.js.map +1 -1
- package/dist/cjs/clients/serde/json.js +1 -1
- package/dist/cjs/clients/serde/json.js.map +1 -1
- package/dist/cjs/errors/errorHelpers.js +1 -1
- package/dist/cjs/errors/errorHelpers.js.map +1 -1
- package/dist/cjs/parseAWSExports.js +1 -1
- package/dist/cjs/parseAWSExports.js.map +1 -1
- package/dist/cjs/providers/pinpoint/apis/updateEndpoint.js +1 -1
- package/dist/cjs/providers/pinpoint/apis/updateEndpoint.js.map +1 -1
- package/dist/cjs/providers/pinpoint/utils/PinpointEventBuffer.js +2 -3
- package/dist/cjs/providers/pinpoint/utils/PinpointEventBuffer.js.map +1 -1
- package/dist/cjs/providers/pinpoint/utils/isAppInForeground.native.js +0 -1
- package/dist/cjs/providers/pinpoint/utils/isAppInForeground.native.js.map +1 -1
- package/dist/cjs/singleton/Amplify.js +1 -1
- package/dist/cjs/singleton/Amplify.js.map +1 -1
- package/dist/cjs/singleton/Auth/index.js +2 -6
- package/dist/cjs/singleton/Auth/index.js.map +1 -1
- package/dist/cjs/singleton/Auth/utils/index.js +4 -4
- package/dist/cjs/singleton/Auth/utils/index.js.map +1 -1
- package/dist/cjs/singleton/apis/fetchAuthSession.js +1 -1
- package/dist/cjs/singleton/apis/fetchAuthSession.js.map +1 -1
- package/dist/cjs/storage/CookieStorage.js +8 -4
- package/dist/cjs/storage/CookieStorage.js.map +1 -1
- package/dist/cjs/storage/CookieStorage.native.js +0 -3
- package/dist/cjs/storage/CookieStorage.native.js.map +1 -1
- package/dist/cjs/utils/WordArray.js +2 -2
- package/dist/cjs/utils/WordArray.js.map +1 -1
- package/dist/cjs/utils/deDupeAsyncFunction.js +8 -8
- package/dist/cjs/utils/deDupeAsyncFunction.js.map +1 -1
- package/dist/cjs/utils/getClientInfo/getClientInfo.android.js +2 -3
- package/dist/cjs/utils/getClientInfo/getClientInfo.android.js.map +1 -1
- package/dist/cjs/utils/getClientInfo/getClientInfo.ios.js +2 -3
- package/dist/cjs/utils/getClientInfo/getClientInfo.ios.js.map +1 -1
- package/dist/cjs/utils/queuedStorage/createQueuedStorage.native.js +2 -2
- package/dist/cjs/utils/queuedStorage/createQueuedStorage.native.js.map +1 -1
- package/dist/cjs/utils/retry/NonRetryableError.js +2 -2
- package/dist/cjs/utils/retry/NonRetryableError.js.map +1 -1
- package/dist/cjs/utils/retry/retry.js +15 -6
- package/dist/cjs/utils/retry/retry.js.map +1 -1
- package/dist/esm/BackgroundProcessManager/BackgroundProcessManager.d.ts +2 -8
- package/dist/esm/BackgroundProcessManager/BackgroundProcessManager.mjs +11 -16
- package/dist/esm/BackgroundProcessManager/BackgroundProcessManager.mjs.map +1 -1
- package/dist/esm/BackgroundProcessManager/types.d.ts +3 -3
- package/dist/esm/Cache/StorageCacheCommon.mjs +5 -5
- package/dist/esm/Cache/StorageCacheCommon.mjs.map +1 -1
- package/dist/esm/Cache/types/cache.d.ts +1 -1
- package/dist/esm/Cache/utils/CacheList.mjs +2 -2
- package/dist/esm/Cache/utils/CacheList.mjs.map +1 -1
- package/dist/esm/Hub/index.d.ts +4 -4
- package/dist/esm/Hub/index.mjs +2 -2
- package/dist/esm/Hub/index.mjs.map +1 -1
- package/dist/esm/Hub/types/AuthTypes.d.ts +11 -11
- package/dist/esm/Hub/types/HubTypes.d.ts +8 -8
- package/dist/esm/I18n/I18n.d.ts +0 -6
- package/dist/esm/I18n/I18n.mjs +8 -13
- package/dist/esm/I18n/I18n.mjs.map +1 -1
- package/dist/esm/I18n/index.mjs +4 -4
- package/dist/esm/I18n/index.mjs.map +1 -1
- package/dist/esm/Logger/ConsoleLogger.d.ts +1 -1
- package/dist/esm/Logger/ConsoleLogger.mjs +7 -7
- package/dist/esm/Logger/ConsoleLogger.mjs.map +1 -1
- package/dist/esm/Mutex/Mutex.mjs +4 -1
- package/dist/esm/Mutex/Mutex.mjs.map +1 -1
- package/dist/esm/Mutex/types.d.ts +2 -6
- package/dist/esm/Platform/detectFramework.mjs +3 -1
- package/dist/esm/Platform/detectFramework.mjs.map +1 -1
- package/dist/esm/Platform/detection/Angular.mjs +2 -4
- package/dist/esm/Platform/detection/Angular.mjs.map +1 -1
- package/dist/esm/Platform/detection/Expo.mjs +1 -2
- package/dist/esm/Platform/detection/Expo.mjs.map +1 -1
- package/dist/esm/Platform/detection/Next.mjs +3 -2
- package/dist/esm/Platform/detection/Next.mjs.map +1 -1
- package/dist/esm/Platform/detection/Nuxt.mjs +3 -4
- package/dist/esm/Platform/detection/Nuxt.mjs.map +1 -1
- package/dist/esm/Platform/detection/index.mjs.map +1 -1
- package/dist/esm/Platform/index.d.ts +2 -2
- package/dist/esm/Platform/index.mjs +1 -1
- package/dist/esm/Platform/index.mjs.map +1 -1
- package/dist/esm/Platform/types.d.ts +12 -12
- package/dist/esm/Platform/version.d.ts +1 -1
- package/dist/esm/Platform/version.mjs +1 -1
- package/dist/esm/Platform/version.mjs.map +1 -1
- package/dist/esm/Reachability/Reachability.mjs +6 -2
- package/dist/esm/Reachability/Reachability.mjs.map +1 -1
- package/dist/esm/Reachability/types.d.ts +2 -2
- package/dist/esm/ServiceWorker/ServiceWorker.d.ts +0 -1
- package/dist/esm/ServiceWorker/ServiceWorker.mjs +11 -11
- package/dist/esm/ServiceWorker/ServiceWorker.mjs.map +1 -1
- package/dist/esm/Signer/DateUtils.d.ts +9 -9
- package/dist/esm/Signer/DateUtils.mjs +1 -1
- package/dist/esm/Signer/DateUtils.mjs.map +1 -1
- package/dist/esm/Signer/Signer.mjs +3 -3
- package/dist/esm/Signer/Signer.mjs.map +1 -1
- package/dist/esm/adapterCore/serverContext/serverContext.d.ts +1 -1
- package/dist/esm/adapterCore/serverContext/serverContext.mjs +1 -1
- package/dist/esm/adapterCore/serverContext/serverContext.mjs.map +1 -1
- package/dist/esm/adapterCore/serverContext/types/amplifyServer.d.ts +7 -9
- package/dist/esm/awsClients/cognitoIdentity/base.d.ts +1 -1
- package/dist/esm/awsClients/cognitoIdentity/base.mjs +2 -2
- package/dist/esm/awsClients/cognitoIdentity/base.mjs.map +1 -1
- package/dist/esm/awsClients/cognitoIdentity/getCredentialsForIdentity.d.ts +2 -6
- package/dist/esm/awsClients/cognitoIdentity/getCredentialsForIdentity.mjs +1 -1
- package/dist/esm/awsClients/cognitoIdentity/getCredentialsForIdentity.mjs.map +1 -1
- package/dist/esm/awsClients/cognitoIdentity/getId.d.ts +2 -6
- package/dist/esm/awsClients/cognitoIdentity/getId.mjs +1 -1
- package/dist/esm/awsClients/cognitoIdentity/getId.mjs.map +1 -1
- package/dist/esm/awsClients/cognitoIdentity/types.d.ts +2 -4
- package/dist/esm/awsClients/pinpoint/base.mjs.map +1 -1
- package/dist/esm/awsClients/pinpoint/getInAppMessages.d.ts +1 -1
- package/dist/esm/awsClients/pinpoint/getInAppMessages.mjs +1 -1
- package/dist/esm/awsClients/pinpoint/getInAppMessages.mjs.map +1 -1
- package/dist/esm/awsClients/pinpoint/putEvents.d.ts +1 -1
- package/dist/esm/awsClients/pinpoint/putEvents.mjs +1 -1
- package/dist/esm/awsClients/pinpoint/putEvents.mjs.map +1 -1
- package/dist/esm/awsClients/pinpoint/types.d.ts +3 -6
- package/dist/esm/awsClients/pinpoint/updateEndpoint.d.ts +1 -1
- package/dist/esm/awsClients/pinpoint/updateEndpoint.mjs +1 -1
- package/dist/esm/awsClients/pinpoint/updateEndpoint.mjs.map +1 -1
- package/dist/esm/clients/handlers/authenticated.mjs +6 -6
- package/dist/esm/clients/handlers/authenticated.mjs.map +1 -1
- package/dist/esm/clients/handlers/unauthenticated.mjs +3 -3
- package/dist/esm/clients/handlers/unauthenticated.mjs.map +1 -1
- package/dist/esm/clients/index.d.ts +3 -3
- package/dist/esm/clients/index.mjs +3 -3
- package/dist/esm/clients/internal/composeServiceApi.d.ts +2 -2
- package/dist/esm/clients/internal/composeServiceApi.mjs +1 -1
- package/dist/esm/clients/internal/composeServiceApi.mjs.map +1 -1
- package/dist/esm/clients/internal/composeTransferHandler.d.ts +2 -2
- package/dist/esm/clients/internal/composeTransferHandler.mjs +1 -1
- package/dist/esm/clients/internal/composeTransferHandler.mjs.map +1 -1
- package/dist/esm/clients/middleware/retry/defaultRetryDecider.d.ts +1 -1
- package/dist/esm/clients/middleware/retry/defaultRetryDecider.mjs +2 -2
- package/dist/esm/clients/middleware/retry/defaultRetryDecider.mjs.map +1 -1
- package/dist/esm/clients/middleware/retry/index.d.ts +1 -1
- package/dist/esm/clients/middleware/retry/index.mjs +1 -1
- package/dist/esm/clients/middleware/retry/jitteredBackoff.mjs.map +1 -1
- package/dist/esm/clients/middleware/retry/middleware.d.ts +3 -3
- package/dist/esm/clients/middleware/retry/middleware.mjs +5 -5
- package/dist/esm/clients/middleware/retry/middleware.mjs.map +1 -1
- package/dist/esm/clients/middleware/signing/index.d.ts +1 -1
- package/dist/esm/clients/middleware/signing/index.mjs +1 -1
- package/dist/esm/clients/middleware/signing/middleware.d.ts +1 -1
- package/dist/esm/clients/middleware/signing/middleware.mjs +2 -2
- package/dist/esm/clients/middleware/signing/middleware.mjs.map +1 -1
- package/dist/esm/clients/middleware/signing/signer/signatureV4/presignUrl.d.ts +1 -1
- package/dist/esm/clients/middleware/signing/signer/signatureV4/presignUrl.mjs +1 -2
- package/dist/esm/clients/middleware/signing/signer/signatureV4/presignUrl.mjs.map +1 -1
- package/dist/esm/clients/middleware/signing/signer/signatureV4/utils/getFormattedDates.mjs +1 -1
- package/dist/esm/clients/middleware/signing/signer/signatureV4/utils/getFormattedDates.mjs.map +1 -1
- package/dist/esm/clients/middleware/userAgent/index.d.ts +1 -1
- package/dist/esm/clients/middleware/userAgent/index.mjs +1 -1
- package/dist/esm/clients/middleware/userAgent/middleware.d.ts +1 -1
- package/dist/esm/clients/middleware/userAgent/middleware.mjs +2 -2
- package/dist/esm/clients/middleware/userAgent/middleware.mjs.map +1 -1
- package/dist/esm/clients/serde/json.mjs +1 -1
- package/dist/esm/clients/serde/json.mjs.map +1 -1
- package/dist/esm/clients/types/aws.d.ts +3 -3
- package/dist/esm/clients/types/core.d.ts +3 -5
- package/dist/esm/errors/APIError.d.ts +1 -1
- package/dist/esm/errors/errorHelpers.mjs +1 -1
- package/dist/esm/errors/errorHelpers.mjs.map +1 -1
- package/dist/esm/parseAWSExports.mjs +1 -1
- package/dist/esm/parseAWSExports.mjs.map +1 -1
- package/dist/esm/providers/kinesis/types/kinesis.d.ts +2 -2
- package/dist/esm/providers/kinesis-firehose/types/kinesis-firehose.d.ts +2 -2
- package/dist/esm/providers/personalize/types/personalize.d.ts +2 -2
- package/dist/esm/providers/pinpoint/apis/updateEndpoint.mjs +1 -1
- package/dist/esm/providers/pinpoint/apis/updateEndpoint.mjs.map +1 -1
- package/dist/esm/providers/pinpoint/types/buffer.d.ts +6 -8
- package/dist/esm/providers/pinpoint/types/pinpoint.d.ts +10 -10
- package/dist/esm/providers/pinpoint/utils/PinpointEventBuffer.d.ts +1 -1
- package/dist/esm/providers/pinpoint/utils/PinpointEventBuffer.mjs +2 -3
- package/dist/esm/providers/pinpoint/utils/PinpointEventBuffer.mjs.map +1 -1
- package/dist/esm/providers/pinpoint/utils/getEventBuffer.d.ts +1 -1
- package/dist/esm/providers/pinpoint/utils/isAppInForeground.native.mjs +0 -1
- package/dist/esm/providers/pinpoint/utils/isAppInForeground.native.mjs.map +1 -1
- package/dist/esm/singleton/API/types.d.ts +35 -37
- package/dist/esm/singleton/Amplify.d.ts +1 -1
- package/dist/esm/singleton/Amplify.mjs +1 -1
- package/dist/esm/singleton/Amplify.mjs.map +1 -1
- package/dist/esm/singleton/Auth/index.d.ts +0 -1
- package/dist/esm/singleton/Auth/index.mjs +2 -6
- package/dist/esm/singleton/Auth/index.mjs.map +1 -1
- package/dist/esm/singleton/Auth/types.d.ts +53 -52
- package/dist/esm/singleton/Auth/utils/index.d.ts +1 -1
- package/dist/esm/singleton/Auth/utils/index.mjs +4 -4
- package/dist/esm/singleton/Auth/utils/index.mjs.map +1 -1
- package/dist/esm/singleton/Geo/types.d.ts +3 -3
- package/dist/esm/singleton/Interactions/types.d.ts +4 -4
- package/dist/esm/singleton/Notifications/types.d.ts +5 -5
- package/dist/esm/singleton/Predictions/types.d.ts +28 -28
- package/dist/esm/singleton/Storage/types.d.ts +2 -2
- package/dist/esm/singleton/apis/fetchAuthSession.mjs +1 -1
- package/dist/esm/singleton/apis/fetchAuthSession.mjs.map +1 -1
- package/dist/esm/singleton/types.d.ts +8 -8
- package/dist/esm/storage/CookieStorage.mjs +8 -4
- package/dist/esm/storage/CookieStorage.mjs.map +1 -1
- package/dist/esm/storage/CookieStorage.native.d.ts +0 -1
- package/dist/esm/storage/CookieStorage.native.mjs +0 -3
- package/dist/esm/storage/CookieStorage.native.mjs.map +1 -1
- package/dist/esm/types/core.d.ts +2 -2
- package/dist/esm/types/errors.d.ts +4 -4
- package/dist/esm/types/storage.d.ts +2 -2
- package/dist/esm/utils/WordArray.mjs +2 -2
- package/dist/esm/utils/WordArray.mjs.map +1 -1
- package/dist/esm/utils/deDupeAsyncFunction.d.ts +1 -5
- package/dist/esm/utils/deDupeAsyncFunction.mjs +8 -8
- package/dist/esm/utils/deDupeAsyncFunction.mjs.map +1 -1
- package/dist/esm/utils/getClientInfo/getClientInfo.android.mjs +0 -1
- package/dist/esm/utils/getClientInfo/getClientInfo.android.mjs.map +1 -1
- package/dist/esm/utils/getClientInfo/getClientInfo.ios.mjs +0 -1
- package/dist/esm/utils/getClientInfo/getClientInfo.ios.mjs.map +1 -1
- package/dist/esm/utils/globalHelpers/index.native.mjs.map +1 -1
- package/dist/esm/utils/queuedStorage/createQueuedStorage.native.mjs +2 -2
- package/dist/esm/utils/queuedStorage/createQueuedStorage.native.mjs.map +1 -1
- package/dist/esm/utils/retry/NonRetryableError.d.ts +0 -1
- package/dist/esm/utils/retry/NonRetryableError.mjs +2 -2
- package/dist/esm/utils/retry/NonRetryableError.mjs.map +1 -1
- package/dist/esm/utils/retry/retry.mjs +15 -6
- package/dist/esm/utils/retry/retry.mjs.map +1 -1
- package/dist/esm/utils/sessionListener/SessionListener.d.ts +1 -1
- package/dist/esm/utils/sessionListener/SessionListener.native.d.ts +1 -1
- package/dist/esm/utils/sessionListener/types.d.ts +2 -2
- package/package.json +5 -4
- package/src/BackgroundProcessManager/BackgroundProcessManager.ts +29 -34
- package/src/BackgroundProcessManager/types.ts +3 -3
- package/src/Cache/StorageCache.native.ts +5 -0
- package/src/Cache/StorageCache.ts +2 -0
- package/src/Cache/StorageCacheCommon.ts +49 -29
- package/src/Cache/types/cache.ts +2 -1
- package/src/Cache/utils/CacheList.ts +6 -3
- package/src/Cache/utils/cacheHelpers.ts +2 -1
- package/src/Hub/index.ts +15 -15
- package/src/Hub/types/AuthTypes.ts +11 -11
- package/src/Hub/types/HubTypes.ts +11 -8
- package/src/I18n/I18n.ts +10 -16
- package/src/I18n/index.ts +7 -7
- package/src/Logger/ConsoleLogger.ts +11 -9
- package/src/Logger/types.ts +1 -1
- package/src/Mutex/Mutex.ts +8 -4
- package/src/Mutex/types.ts +3 -7
- package/src/Platform/customUserAgent.ts +3 -3
- package/src/Platform/detectFramework.ts +4 -1
- package/src/Platform/detection/Angular.ts +4 -4
- package/src/Platform/detection/Expo.ts +1 -2
- package/src/Platform/detection/Next.ts +5 -2
- package/src/Platform/detection/Nuxt.ts +5 -4
- package/src/Platform/detection/index.ts +9 -9
- package/src/Platform/index.ts +4 -4
- package/src/Platform/types.ts +12 -12
- package/src/Platform/version.ts +1 -1
- package/src/Reachability/Reachability.native.ts +6 -3
- package/src/Reachability/Reachability.ts +12 -6
- package/src/Reachability/types.ts +2 -2
- package/src/ServiceWorker/ServiceWorker.ts +28 -23
- package/src/Signer/DateUtils.ts +16 -16
- package/src/Signer/Signer.ts +19 -13
- package/src/adapterCore/serverContext/serverContext.ts +6 -5
- package/src/adapterCore/serverContext/serverContextRegistry.ts +2 -1
- package/src/adapterCore/serverContext/types/amplifyServer.ts +15 -17
- package/src/adapterCore/serverContext/types/cookieStorage.ts +1 -1
- package/src/awsClients/cognitoIdentity/base.ts +16 -12
- package/src/awsClients/cognitoIdentity/getCredentialsForIdentity.ts +13 -10
- package/src/awsClients/cognitoIdentity/getId.ts +12 -9
- package/src/awsClients/cognitoIdentity/types.ts +3 -3
- package/src/awsClients/pinpoint/base.ts +1 -1
- package/src/awsClients/pinpoint/getInAppMessages.ts +8 -5
- package/src/awsClients/pinpoint/putEvents.ts +8 -5
- package/src/awsClients/pinpoint/types.ts +3 -4
- package/src/awsClients/pinpoint/updateEndpoint.ts +8 -5
- package/src/clients/endpoints/getDnsSuffix.ts +1 -0
- package/src/clients/handlers/authenticated.ts +14 -7
- package/src/clients/handlers/fetch.ts +1 -1
- package/src/clients/handlers/unauthenticated.ts +8 -4
- package/src/clients/index.ts +6 -3
- package/src/clients/internal/composeServiceApi.ts +8 -7
- package/src/clients/internal/composeTransferHandler.ts +16 -15
- package/src/clients/middleware/retry/defaultRetryDecider.ts +5 -3
- package/src/clients/middleware/retry/index.ts +1 -1
- package/src/clients/middleware/retry/jitteredBackoff.ts +3 -1
- package/src/clients/middleware/retry/middleware.ts +12 -9
- package/src/clients/middleware/signing/index.ts +1 -1
- package/src/clients/middleware/signing/middleware.ts +5 -2
- package/src/clients/middleware/signing/signer/signatureV4/presignUrl.ts +4 -4
- package/src/clients/middleware/signing/signer/signatureV4/signRequest.ts +2 -1
- package/src/clients/middleware/signing/signer/signatureV4/utils/dataHashHelpers.ts +4 -2
- package/src/clients/middleware/signing/signer/signatureV4/utils/getCanonicalQueryString.ts +2 -1
- package/src/clients/middleware/signing/signer/signatureV4/utils/getCanonicalRequest.ts +2 -1
- package/src/clients/middleware/signing/signer/signatureV4/utils/getCanonicalUri.ts +1 -1
- package/src/clients/middleware/signing/signer/signatureV4/utils/getCredentialScope.ts +1 -1
- package/src/clients/middleware/signing/signer/signatureV4/utils/getFormattedDates.ts +2 -1
- package/src/clients/middleware/signing/signer/signatureV4/utils/getHashedPayload.ts +3 -0
- package/src/clients/middleware/signing/signer/signatureV4/utils/getSignature.ts +4 -3
- package/src/clients/middleware/signing/signer/signatureV4/utils/getSigningKey.ts +3 -1
- package/src/clients/middleware/signing/signer/signatureV4/utils/getSigningValues.ts +3 -1
- package/src/clients/middleware/signing/signer/signatureV4/utils/getStringToSign.ts +2 -2
- package/src/clients/middleware/signing/utils/getUpdatedSystemClockOffset.ts +2 -1
- package/src/clients/middleware/signing/utils/isClockSkewed.ts +2 -2
- package/src/clients/middleware/userAgent/index.ts +1 -1
- package/src/clients/middleware/userAgent/middleware.ts +3 -1
- package/src/clients/serde/json.ts +6 -2
- package/src/clients/serde/responseInfo.ts +6 -2
- package/src/clients/types/aws.ts +6 -3
- package/src/clients/types/core.ts +6 -8
- package/src/clients/types/http.ts +2 -1
- package/src/clients/utils/memoization.ts +2 -0
- package/src/errors/APIError.ts +3 -2
- package/src/errors/PlatformNotSupportedError.ts +1 -0
- package/src/errors/createAssertionFunction.ts +2 -1
- package/src/errors/errorHelpers.ts +2 -1
- package/src/parseAWSExports.ts +16 -15
- package/src/providers/kinesis/types/kinesis.ts +2 -2
- package/src/providers/kinesis-firehose/types/kinesis-firehose.ts +2 -2
- package/src/providers/personalize/types/personalize.ts +2 -2
- package/src/providers/pinpoint/apis/updateEndpoint.ts +2 -2
- package/src/providers/pinpoint/types/buffer.ts +7 -8
- package/src/providers/pinpoint/types/pinpoint.ts +11 -10
- package/src/providers/pinpoint/utils/PinpointEventBuffer.ts +11 -21
- package/src/providers/pinpoint/utils/cacheEndpointId.ts +3 -1
- package/src/providers/pinpoint/utils/getCacheKey.ts +1 -1
- package/src/providers/pinpoint/utils/getEndpointId.ts +3 -1
- package/src/providers/pinpoint/utils/getEventBuffer.ts +2 -1
- package/src/providers/pinpoint/utils/isAppInForeground.native.ts +0 -1
- package/src/providers/pinpoint/utils/resolveEndpointId.ts +1 -0
- package/src/singleton/API/types.ts +35 -33
- package/src/singleton/Amplify.ts +8 -6
- package/src/singleton/Auth/index.ts +9 -13
- package/src/singleton/Auth/types.ts +59 -51
- package/src/singleton/Auth/utils/index.ts +16 -28
- package/src/singleton/Geo/types.ts +3 -3
- package/src/singleton/Interactions/types.ts +4 -4
- package/src/singleton/Notifications/types.ts +6 -5
- package/src/singleton/Predictions/types.ts +28 -28
- package/src/singleton/Storage/types.ts +2 -2
- package/src/singleton/apis/fetchAuthSession.ts +2 -1
- package/src/singleton/apis/internal/fetchAuthSession.ts +1 -1
- package/src/singleton/apis/server/fetchAuthSession.ts +2 -2
- package/src/singleton/types.ts +10 -10
- package/src/storage/CookieStorage.native.ts +1 -5
- package/src/storage/CookieStorage.ts +12 -6
- package/src/storage/DefaultStorage.native.ts +3 -1
- package/src/storage/InMemoryStorage.ts +1 -0
- package/src/storage/KeyValueStorage.ts +1 -0
- package/src/types/core.ts +3 -3
- package/src/types/errors.ts +5 -5
- package/src/types/storage.ts +2 -2
- package/src/utils/WordArray.ts +2 -2
- package/src/utils/convert/base64/base64Encoder.ts +1 -0
- package/src/utils/convert/types.ts +1 -1
- package/src/utils/cryptoSecureRandomInt.ts +1 -0
- package/src/utils/deDupeAsyncFunction.ts +15 -20
- package/src/utils/generateRandomString.ts +1 -1
- package/src/utils/getClientInfo/getClientInfo.android.ts +3 -2
- package/src/utils/getClientInfo/getClientInfo.ios.ts +4 -2
- package/src/utils/getClientInfo/getClientInfo.ts +3 -3
- package/src/utils/globalHelpers/index.native.ts +2 -1
- package/src/utils/haveCredentialsChanged.ts +5 -2
- package/src/utils/isWebWorker.ts +1 -0
- package/src/utils/queuedStorage/createQueuedStorage.native.ts +9 -6
- package/src/utils/queuedStorage/createQueuedStorage.ts +7 -3
- package/src/utils/queuedStorage/types.ts +1 -1
- package/src/utils/retry/NonRetryableError.ts +0 -3
- package/src/utils/retry/isNonRetryableError.ts +1 -0
- package/src/utils/retry/jitteredBackoff.ts +3 -1
- package/src/utils/retry/jitteredExponentialRetry.ts +1 -1
- package/src/utils/retry/retry.ts +22 -8
- package/src/utils/sessionListener/SessionListener.native.ts +4 -3
- package/src/utils/sessionListener/SessionListener.ts +4 -3
- package/src/utils/sessionListener/index.ts +1 -0
- package/src/utils/sessionListener/types.ts +2 -2
- package/src/utils/urlSafeDecode.ts +1 -0
|
@@ -5,7 +5,6 @@ import '../utils/retry/retry.mjs';
|
|
|
5
5
|
import { AmplifyError } from '../errors/AmplifyError.mjs';
|
|
6
6
|
import '../types/errors.mjs';
|
|
7
7
|
import '../errors/errorHelpers.mjs';
|
|
8
|
-
import { assert, ServiceWorkerErrorCode } from './errorHelpers.mjs';
|
|
9
8
|
import 'uuid';
|
|
10
9
|
import '@aws-crypto/sha256-js';
|
|
11
10
|
import '@smithy/util-hex-encoding';
|
|
@@ -17,6 +16,7 @@ import '../providers/pinpoint/utils/PinpointEventBuffer.mjs';
|
|
|
17
16
|
import '../providers/pinpoint/types/errors.mjs';
|
|
18
17
|
import { Amplify } from '../singleton/Amplify.mjs';
|
|
19
18
|
import { fetchAuthSession } from '../singleton/apis/fetchAuthSession.mjs';
|
|
19
|
+
import { assert, ServiceWorkerErrorCode } from './errorHelpers.mjs';
|
|
20
20
|
|
|
21
21
|
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
22
22
|
// SPDX-License-Identifier: Apache-2.0
|
|
@@ -78,11 +78,11 @@ class ServiceWorkerClass {
|
|
|
78
78
|
this._registration = registration;
|
|
79
79
|
this._setupListeners();
|
|
80
80
|
this._logger.debug(`Service Worker Registration Success: ${registration}`);
|
|
81
|
-
|
|
81
|
+
resolve(registration);
|
|
82
82
|
})
|
|
83
83
|
.catch(error => {
|
|
84
84
|
this._logger.debug(`Service Worker Registration Failed ${error}`);
|
|
85
|
-
|
|
85
|
+
reject(new AmplifyError({
|
|
86
86
|
name: ServiceWorkerErrorCode.Unavailable,
|
|
87
87
|
message: 'Service Worker not available',
|
|
88
88
|
underlyingError: error,
|
|
@@ -90,7 +90,7 @@ class ServiceWorkerClass {
|
|
|
90
90
|
});
|
|
91
91
|
}
|
|
92
92
|
else {
|
|
93
|
-
|
|
93
|
+
reject(new AmplifyError({
|
|
94
94
|
name: ServiceWorkerErrorCode.Unavailable,
|
|
95
95
|
message: 'Service Worker not available',
|
|
96
96
|
}));
|
|
@@ -126,10 +126,10 @@ class ServiceWorkerClass {
|
|
|
126
126
|
userVisibleOnly: true,
|
|
127
127
|
applicationServerKey: this._urlB64ToUint8Array(publicKey),
|
|
128
128
|
})
|
|
129
|
-
.then(
|
|
130
|
-
this._subscription =
|
|
131
|
-
this._logger.debug(`User subscribed: ${JSON.stringify(
|
|
132
|
-
resolve(
|
|
129
|
+
.then(pushManagerSubscription => {
|
|
130
|
+
this._subscription = pushManagerSubscription;
|
|
131
|
+
this._logger.debug(`User subscribed: ${JSON.stringify(pushManagerSubscription)}`);
|
|
132
|
+
resolve(pushManagerSubscription);
|
|
133
133
|
})
|
|
134
134
|
.catch(error => {
|
|
135
135
|
this._logger.error(error);
|
|
@@ -138,7 +138,7 @@ class ServiceWorkerClass {
|
|
|
138
138
|
});
|
|
139
139
|
}
|
|
140
140
|
else {
|
|
141
|
-
|
|
141
|
+
reject(new AmplifyError({
|
|
142
142
|
name: ServiceWorkerErrorCode.Unavailable,
|
|
143
143
|
message: 'Service Worker not available',
|
|
144
144
|
}));
|
|
@@ -152,7 +152,7 @@ class ServiceWorkerClass {
|
|
|
152
152
|
_urlB64ToUint8Array(base64String) {
|
|
153
153
|
const padding = '='.repeat((4 - (base64String.length % 4)) % 4);
|
|
154
154
|
const base64 = (base64String + padding)
|
|
155
|
-
.replace(
|
|
155
|
+
.replace(/-/g, '+')
|
|
156
156
|
.replace(/_/g, '/');
|
|
157
157
|
const rawData = window.atob(base64);
|
|
158
158
|
const outputArray = new Uint8Array(rawData.length);
|
|
@@ -179,7 +179,7 @@ class ServiceWorkerClass {
|
|
|
179
179
|
* https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorker/state
|
|
180
180
|
**/
|
|
181
181
|
_setupListeners() {
|
|
182
|
-
this.serviceWorker.addEventListener('statechange', async (
|
|
182
|
+
this.serviceWorker.addEventListener('statechange', async () => {
|
|
183
183
|
const currentState = this.serviceWorker.state;
|
|
184
184
|
this._logger.debug(`ServiceWorker statechange: ${currentState}`);
|
|
185
185
|
const { appId, region, bufferSize, flushInterval, flushSize, resendLimit, } = Amplify.getConfig().Analytics?.Pinpoint ?? {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ServiceWorker.mjs","sources":["../../../src/ServiceWorker/ServiceWorker.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { ConsoleLogger } from '../Logger';\nimport { isBrowser } from '../utils';\nimport { AmplifyError } from '../errors';\nimport { assert, ServiceWorkerErrorCode } from './errorHelpers';\nimport { record } from '../providers/pinpoint';\nimport { Amplify, fetchAuthSession } from '../singleton';\n/**\n * Provides a means to registering a service worker in the browser\n * and communicating with it via postMessage events.\n * https://developer.mozilla.org/en-US/docs/Web/API/Service_Worker_API/\n *\n * postMessage events are currently not supported in all browsers. See:\n * https://developer.mozilla.org/en-US/docs/Web/API/Service_Worker_API\n *\n * At the minmum this class will register the service worker and listen\n * and attempt to dispatch messages on state change and record analytics\n * events based on the service worker lifecycle.\n */\nexport class ServiceWorkerClass {\n constructor() {\n // The AWS Amplify logger\n this._logger = new ConsoleLogger('ServiceWorker');\n }\n /**\n * Get the currently active service worker\n */\n get serviceWorker() {\n assert(this._serviceWorker !== undefined, ServiceWorkerErrorCode.UndefinedInstance);\n return this._serviceWorker;\n }\n /**\n * Register the service-worker.js file in the browser\n * Make sure the service-worker.js is part of the build\n * for example with Angular, modify the angular-cli.json file\n * and add to \"assets\" array \"service-worker.js\"\n * @param {string} - (optional) Service worker file. Defaults to \"/service-worker.js\"\n * @param {string} - (optional) The service worker scope. Defaults to \"/\"\n * - API Doc: https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorkerContainer/register\n * @returns {Promise}\n *\t- resolve(ServiceWorkerRegistration)\n *\t- reject(Error)\n **/\n register(filePath = '/service-worker.js', scope = '/') {\n this._logger.debug(`registering ${filePath}`);\n this._logger.debug(`registering service worker with scope ${scope}`);\n return new Promise((resolve, reject) => {\n if (navigator && 'serviceWorker' in navigator) {\n navigator.serviceWorker\n .register(filePath, {\n scope,\n })\n .then(registration => {\n if (registration.installing) {\n this._serviceWorker = registration.installing;\n }\n else if (registration.waiting) {\n this._serviceWorker = registration.waiting;\n }\n else if (registration.active) {\n this._serviceWorker = registration.active;\n }\n this._registration = registration;\n this._setupListeners();\n this._logger.debug(`Service Worker Registration Success: ${registration}`);\n return resolve(registration);\n })\n .catch(error => {\n this._logger.debug(`Service Worker Registration Failed ${error}`);\n return reject(new AmplifyError({\n name: ServiceWorkerErrorCode.Unavailable,\n message: 'Service Worker not available',\n underlyingError: error,\n }));\n });\n }\n else {\n return reject(new AmplifyError({\n name: ServiceWorkerErrorCode.Unavailable,\n message: 'Service Worker not available',\n }));\n }\n });\n }\n /**\n * Enable web push notifications. If not subscribed, a new subscription will\n * be created and registered.\n * \tTest Push Server: https://web-push-codelab.glitch.me/\n * \tPush Server Libraries: https://github.com/web-push-libs/\n * \tAPI Doc: https://developers.google.com/web/fundamentals/codelabs/push-notifications/\n * @param publicKey\n * @returns {Promise}\n * \t- resolve(PushSubscription)\n * - reject(Error)\n */\n enablePush(publicKey) {\n assert(this._registration !== undefined, ServiceWorkerErrorCode.UndefinedRegistration);\n this._publicKey = publicKey;\n return new Promise((resolve, reject) => {\n if (isBrowser()) {\n assert(this._registration !== undefined, ServiceWorkerErrorCode.UndefinedRegistration);\n this._registration.pushManager.getSubscription().then(subscription => {\n if (subscription) {\n this._subscription = subscription;\n this._logger.debug(`User is subscribed to push: ${JSON.stringify(subscription)}`);\n resolve(subscription);\n }\n else {\n this._logger.debug(`User is NOT subscribed to push`);\n return this._registration.pushManager.subscribe({\n userVisibleOnly: true,\n applicationServerKey: this._urlB64ToUint8Array(publicKey),\n })\n .then(subscription => {\n this._subscription = subscription;\n this._logger.debug(`User subscribed: ${JSON.stringify(subscription)}`);\n resolve(subscription);\n })\n .catch(error => {\n this._logger.error(error);\n });\n }\n });\n }\n else {\n return reject(new AmplifyError({\n name: ServiceWorkerErrorCode.Unavailable,\n message: 'Service Worker not available',\n }));\n }\n });\n }\n /**\n * Convert a base64 encoded string to a Uint8 array for the push server key\n * @param base64String\n */\n _urlB64ToUint8Array(base64String) {\n const padding = '='.repeat((4 - (base64String.length % 4)) % 4);\n const base64 = (base64String + padding)\n .replace(/\\-/g, '+')\n .replace(/_/g, '/');\n const rawData = window.atob(base64);\n const outputArray = new Uint8Array(rawData.length);\n for (let i = 0; i < rawData.length; ++i) {\n outputArray[i] = rawData.charCodeAt(i);\n }\n return outputArray;\n }\n /**\n * Send a message to the service worker. The service worker needs\n * to implement `self.addEventListener('message') to handle the\n * message. This ***currently*** does not work in Safari or IE.\n * @param {object | string} - An arbitrary JSON object or string message to send to the service worker\n *\t- see: https://developer.mozilla.org/en-US/docs/Web/API/Transferable\n * @returns {Promise}\n **/\n send(message) {\n if (this._serviceWorker) {\n this._serviceWorker.postMessage(typeof message === 'object' ? JSON.stringify(message) : message);\n }\n }\n /**\n * Listen for service worker state change and message events\n * https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorker/state\n **/\n _setupListeners() {\n this.serviceWorker.addEventListener('statechange', async (event) => {\n const currentState = this.serviceWorker.state;\n this._logger.debug(`ServiceWorker statechange: ${currentState}`);\n const { appId, region, bufferSize, flushInterval, flushSize, resendLimit, } = Amplify.getConfig().Analytics?.Pinpoint ?? {};\n const { credentials } = await fetchAuthSession();\n if (appId && region && credentials) {\n // Pinpoint is configured, record an event\n record({\n appId,\n region,\n category: 'Core',\n credentials,\n bufferSize,\n flushInterval,\n flushSize,\n resendLimit,\n event: {\n name: 'ServiceWorker',\n attributes: {\n state: currentState,\n },\n },\n });\n }\n });\n this.serviceWorker.addEventListener('message', event => {\n this._logger.debug(`ServiceWorker message event: ${event}`);\n });\n }\n}\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AACA;AAOA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAM,kBAAkB,CAAC;AAChC,IAAI,WAAW,GAAG;AAClB;AACA,QAAQ,IAAI,CAAC,OAAO,GAAG,IAAI,aAAa,CAAC,eAAe,CAAC,CAAC;AAC1D,KAAK;AACL;AACA;AACA;AACA,IAAI,IAAI,aAAa,GAAG;AACxB,QAAQ,MAAM,CAAC,IAAI,CAAC,cAAc,KAAK,SAAS,EAAE,sBAAsB,CAAC,iBAAiB,CAAC,CAAC;AAC5F,QAAQ,OAAO,IAAI,CAAC,cAAc,CAAC;AACnC,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,QAAQ,CAAC,QAAQ,GAAG,oBAAoB,EAAE,KAAK,GAAG,GAAG,EAAE;AAC3D,QAAQ,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC;AACtD,QAAQ,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,sCAAsC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;AAC7E,QAAQ,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,KAAK;AAChD,YAAY,IAAI,SAAS,IAAI,eAAe,IAAI,SAAS,EAAE;AAC3D,gBAAgB,SAAS,CAAC,aAAa;AACvC,qBAAqB,QAAQ,CAAC,QAAQ,EAAE;AACxC,oBAAoB,KAAK;AACzB,iBAAiB,CAAC;AAClB,qBAAqB,IAAI,CAAC,YAAY,IAAI;AAC1C,oBAAoB,IAAI,YAAY,CAAC,UAAU,EAAE;AACjD,wBAAwB,IAAI,CAAC,cAAc,GAAG,YAAY,CAAC,UAAU,CAAC;AACtE,qBAAqB;AACrB,yBAAyB,IAAI,YAAY,CAAC,OAAO,EAAE;AACnD,wBAAwB,IAAI,CAAC,cAAc,GAAG,YAAY,CAAC,OAAO,CAAC;AACnE,qBAAqB;AACrB,yBAAyB,IAAI,YAAY,CAAC,MAAM,EAAE;AAClD,wBAAwB,IAAI,CAAC,cAAc,GAAG,YAAY,CAAC,MAAM,CAAC;AAClE,qBAAqB;AACrB,oBAAoB,IAAI,CAAC,aAAa,GAAG,YAAY,CAAC;AACtD,oBAAoB,IAAI,CAAC,eAAe,EAAE,CAAC;AAC3C,oBAAoB,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,qCAAqC,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC;AAC/F,oBAAoB,OAAO,OAAO,CAAC,YAAY,CAAC,CAAC;AACjD,iBAAiB,CAAC;AAClB,qBAAqB,KAAK,CAAC,KAAK,IAAI;AACpC,oBAAoB,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,mCAAmC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;AACtF,oBAAoB,OAAO,MAAM,CAAC,IAAI,YAAY,CAAC;AACnD,wBAAwB,IAAI,EAAE,sBAAsB,CAAC,WAAW;AAChE,wBAAwB,OAAO,EAAE,8BAA8B;AAC/D,wBAAwB,eAAe,EAAE,KAAK;AAC9C,qBAAqB,CAAC,CAAC,CAAC;AACxB,iBAAiB,CAAC,CAAC;AACnB,aAAa;AACb,iBAAiB;AACjB,gBAAgB,OAAO,MAAM,CAAC,IAAI,YAAY,CAAC;AAC/C,oBAAoB,IAAI,EAAE,sBAAsB,CAAC,WAAW;AAC5D,oBAAoB,OAAO,EAAE,8BAA8B;AAC3D,iBAAiB,CAAC,CAAC,CAAC;AACpB,aAAa;AACb,SAAS,CAAC,CAAC;AACX,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,UAAU,CAAC,SAAS,EAAE;AAC1B,QAAQ,MAAM,CAAC,IAAI,CAAC,aAAa,KAAK,SAAS,EAAE,sBAAsB,CAAC,qBAAqB,CAAC,CAAC;AAC/F,QAAQ,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;AACpC,QAAQ,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,KAAK;AAChD,YAAY,IAAI,SAAS,EAAE,EAAE;AAC7B,gBAAgB,MAAM,CAAC,IAAI,CAAC,aAAa,KAAK,SAAS,EAAE,sBAAsB,CAAC,qBAAqB,CAAC,CAAC;AACvG,gBAAgB,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,eAAe,EAAE,CAAC,IAAI,CAAC,YAAY,IAAI;AACtF,oBAAoB,IAAI,YAAY,EAAE;AACtC,wBAAwB,IAAI,CAAC,aAAa,GAAG,YAAY,CAAC;AAC1D,wBAAwB,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,4BAA4B,EAAE,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;AAC1G,wBAAwB,OAAO,CAAC,YAAY,CAAC,CAAC;AAC9C,qBAAqB;AACrB,yBAAyB;AACzB,wBAAwB,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,8BAA8B,CAAC,CAAC,CAAC;AAC7E,wBAAwB,OAAO,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,SAAS,CAAC;AACxE,4BAA4B,eAAe,EAAE,IAAI;AACjD,4BAA4B,oBAAoB,EAAE,IAAI,CAAC,mBAAmB,CAAC,SAAS,CAAC;AACrF,yBAAyB,CAAC;AAC1B,6BAA6B,IAAI,CAAC,YAAY,IAAI;AAClD,4BAA4B,IAAI,CAAC,aAAa,GAAG,YAAY,CAAC;AAC9D,4BAA4B,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,iBAAiB,EAAE,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;AACnG,4BAA4B,OAAO,CAAC,YAAY,CAAC,CAAC;AAClD,yBAAyB,CAAC;AAC1B,6BAA6B,KAAK,CAAC,KAAK,IAAI;AAC5C,4BAA4B,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;AACtD,yBAAyB,CAAC,CAAC;AAC3B,qBAAqB;AACrB,iBAAiB,CAAC,CAAC;AACnB,aAAa;AACb,iBAAiB;AACjB,gBAAgB,OAAO,MAAM,CAAC,IAAI,YAAY,CAAC;AAC/C,oBAAoB,IAAI,EAAE,sBAAsB,CAAC,WAAW;AAC5D,oBAAoB,OAAO,EAAE,8BAA8B;AAC3D,iBAAiB,CAAC,CAAC,CAAC;AACpB,aAAa;AACb,SAAS,CAAC,CAAC;AACX,KAAK;AACL;AACA;AACA;AACA;AACA,IAAI,mBAAmB,CAAC,YAAY,EAAE;AACtC,QAAQ,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;AACxE,QAAQ,MAAM,MAAM,GAAG,CAAC,YAAY,GAAG,OAAO;AAC9C,aAAa,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC;AAChC,aAAa,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;AAChC,QAAQ,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAC5C,QAAQ,MAAM,WAAW,GAAG,IAAI,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;AAC3D,QAAQ,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE;AACjD,YAAY,WAAW,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;AACnD,SAAS;AACT,QAAQ,OAAO,WAAW,CAAC;AAC3B,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,IAAI,CAAC,OAAO,EAAE;AAClB,QAAQ,IAAI,IAAI,CAAC,cAAc,EAAE;AACjC,YAAY,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,OAAO,OAAO,KAAK,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,CAAC;AAC7G,SAAS;AACT,KAAK;AACL;AACA;AACA;AACA;AACA,IAAI,eAAe,GAAG;AACtB,QAAQ,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,aAAa,EAAE,OAAO,KAAK,KAAK;AAC5E,YAAY,MAAM,YAAY,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC;AAC1D,YAAY,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,2BAA2B,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC;AAC7E,YAAY,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,aAAa,EAAE,SAAS,EAAE,WAAW,GAAG,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC,SAAS,EAAE,QAAQ,IAAI,EAAE,CAAC;AACxI,YAAY,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,gBAAgB,EAAE,CAAC;AAC7D,YAAY,IAAI,KAAK,IAAI,MAAM,IAAI,WAAW,EAAE;AAChD;AACA,gBAAgB,MAAM,CAAC;AACvB,oBAAoB,KAAK;AACzB,oBAAoB,MAAM;AAC1B,oBAAoB,QAAQ,EAAE,MAAM;AACpC,oBAAoB,WAAW;AAC/B,oBAAoB,UAAU;AAC9B,oBAAoB,aAAa;AACjC,oBAAoB,SAAS;AAC7B,oBAAoB,WAAW;AAC/B,oBAAoB,KAAK,EAAE;AAC3B,wBAAwB,IAAI,EAAE,eAAe;AAC7C,wBAAwB,UAAU,EAAE;AACpC,4BAA4B,KAAK,EAAE,YAAY;AAC/C,yBAAyB;AACzB,qBAAqB;AACrB,iBAAiB,CAAC,CAAC;AACnB,aAAa;AACb,SAAS,CAAC,CAAC;AACX,QAAQ,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,SAAS,EAAE,KAAK,IAAI;AAChE,YAAY,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,6BAA6B,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;AACxE,SAAS,CAAC,CAAC;AACX,KAAK;AACL;;;;"}
|
|
1
|
+
{"version":3,"file":"ServiceWorker.mjs","sources":["../../../src/ServiceWorker/ServiceWorker.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { ConsoleLogger } from '../Logger';\nimport { isBrowser } from '../utils';\nimport { AmplifyError } from '../errors';\nimport { record } from '../providers/pinpoint';\nimport { Amplify, fetchAuthSession } from '../singleton';\nimport { ServiceWorkerErrorCode, assert } from './errorHelpers';\n/**\n * Provides a means to registering a service worker in the browser\n * and communicating with it via postMessage events.\n * https://developer.mozilla.org/en-US/docs/Web/API/Service_Worker_API/\n *\n * postMessage events are currently not supported in all browsers. See:\n * https://developer.mozilla.org/en-US/docs/Web/API/Service_Worker_API\n *\n * At the minmum this class will register the service worker and listen\n * and attempt to dispatch messages on state change and record analytics\n * events based on the service worker lifecycle.\n */\nexport class ServiceWorkerClass {\n constructor() {\n // The AWS Amplify logger\n this._logger = new ConsoleLogger('ServiceWorker');\n }\n /**\n * Get the currently active service worker\n */\n get serviceWorker() {\n assert(this._serviceWorker !== undefined, ServiceWorkerErrorCode.UndefinedInstance);\n return this._serviceWorker;\n }\n /**\n * Register the service-worker.js file in the browser\n * Make sure the service-worker.js is part of the build\n * for example with Angular, modify the angular-cli.json file\n * and add to \"assets\" array \"service-worker.js\"\n * @param {string} - (optional) Service worker file. Defaults to \"/service-worker.js\"\n * @param {string} - (optional) The service worker scope. Defaults to \"/\"\n * - API Doc: https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorkerContainer/register\n * @returns {Promise}\n *\t- resolve(ServiceWorkerRegistration)\n *\t- reject(Error)\n **/\n register(filePath = '/service-worker.js', scope = '/') {\n this._logger.debug(`registering ${filePath}`);\n this._logger.debug(`registering service worker with scope ${scope}`);\n return new Promise((resolve, reject) => {\n if (navigator && 'serviceWorker' in navigator) {\n navigator.serviceWorker\n .register(filePath, {\n scope,\n })\n .then(registration => {\n if (registration.installing) {\n this._serviceWorker = registration.installing;\n }\n else if (registration.waiting) {\n this._serviceWorker = registration.waiting;\n }\n else if (registration.active) {\n this._serviceWorker = registration.active;\n }\n this._registration = registration;\n this._setupListeners();\n this._logger.debug(`Service Worker Registration Success: ${registration}`);\n resolve(registration);\n })\n .catch(error => {\n this._logger.debug(`Service Worker Registration Failed ${error}`);\n reject(new AmplifyError({\n name: ServiceWorkerErrorCode.Unavailable,\n message: 'Service Worker not available',\n underlyingError: error,\n }));\n });\n }\n else {\n reject(new AmplifyError({\n name: ServiceWorkerErrorCode.Unavailable,\n message: 'Service Worker not available',\n }));\n }\n });\n }\n /**\n * Enable web push notifications. If not subscribed, a new subscription will\n * be created and registered.\n * \tTest Push Server: https://web-push-codelab.glitch.me/\n * \tPush Server Libraries: https://github.com/web-push-libs/\n * \tAPI Doc: https://developers.google.com/web/fundamentals/codelabs/push-notifications/\n * @param publicKey\n * @returns {Promise}\n * \t- resolve(PushSubscription)\n * - reject(Error)\n */\n enablePush(publicKey) {\n assert(this._registration !== undefined, ServiceWorkerErrorCode.UndefinedRegistration);\n this._publicKey = publicKey;\n return new Promise((resolve, reject) => {\n if (isBrowser()) {\n assert(this._registration !== undefined, ServiceWorkerErrorCode.UndefinedRegistration);\n this._registration.pushManager.getSubscription().then(subscription => {\n if (subscription) {\n this._subscription = subscription;\n this._logger.debug(`User is subscribed to push: ${JSON.stringify(subscription)}`);\n resolve(subscription);\n }\n else {\n this._logger.debug(`User is NOT subscribed to push`);\n return this._registration.pushManager.subscribe({\n userVisibleOnly: true,\n applicationServerKey: this._urlB64ToUint8Array(publicKey),\n })\n .then(pushManagerSubscription => {\n this._subscription = pushManagerSubscription;\n this._logger.debug(`User subscribed: ${JSON.stringify(pushManagerSubscription)}`);\n resolve(pushManagerSubscription);\n })\n .catch(error => {\n this._logger.error(error);\n });\n }\n });\n }\n else {\n reject(new AmplifyError({\n name: ServiceWorkerErrorCode.Unavailable,\n message: 'Service Worker not available',\n }));\n }\n });\n }\n /**\n * Convert a base64 encoded string to a Uint8 array for the push server key\n * @param base64String\n */\n _urlB64ToUint8Array(base64String) {\n const padding = '='.repeat((4 - (base64String.length % 4)) % 4);\n const base64 = (base64String + padding)\n .replace(/-/g, '+')\n .replace(/_/g, '/');\n const rawData = window.atob(base64);\n const outputArray = new Uint8Array(rawData.length);\n for (let i = 0; i < rawData.length; ++i) {\n outputArray[i] = rawData.charCodeAt(i);\n }\n return outputArray;\n }\n /**\n * Send a message to the service worker. The service worker needs\n * to implement `self.addEventListener('message') to handle the\n * message. This ***currently*** does not work in Safari or IE.\n * @param {object | string} - An arbitrary JSON object or string message to send to the service worker\n *\t- see: https://developer.mozilla.org/en-US/docs/Web/API/Transferable\n * @returns {Promise}\n **/\n send(message) {\n if (this._serviceWorker) {\n this._serviceWorker.postMessage(typeof message === 'object' ? JSON.stringify(message) : message);\n }\n }\n /**\n * Listen for service worker state change and message events\n * https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorker/state\n **/\n _setupListeners() {\n this.serviceWorker.addEventListener('statechange', async () => {\n const currentState = this.serviceWorker.state;\n this._logger.debug(`ServiceWorker statechange: ${currentState}`);\n const { appId, region, bufferSize, flushInterval, flushSize, resendLimit, } = Amplify.getConfig().Analytics?.Pinpoint ?? {};\n const { credentials } = await fetchAuthSession();\n if (appId && region && credentials) {\n // Pinpoint is configured, record an event\n record({\n appId,\n region,\n category: 'Core',\n credentials,\n bufferSize,\n flushInterval,\n flushSize,\n resendLimit,\n event: {\n name: 'ServiceWorker',\n attributes: {\n state: currentState,\n },\n },\n });\n }\n });\n this.serviceWorker.addEventListener('message', event => {\n this._logger.debug(`ServiceWorker message event: ${event}`);\n });\n }\n}\n"],"names":[],"mappings":"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"}
|
|
@@ -4,16 +4,16 @@
|
|
|
4
4
|
*
|
|
5
5
|
* @see https://github.com/aws/aws-sdk-js/blob/6edf586dcc1de7fe8fbfbbd9a0d2b1847921e6e1/lib/util.js#L262
|
|
6
6
|
*/
|
|
7
|
-
|
|
7
|
+
interface DateUtils {
|
|
8
8
|
clockOffset: number;
|
|
9
|
-
getDateWithClockOffset
|
|
10
|
-
getClockOffset
|
|
11
|
-
getHeaderStringFromDate
|
|
12
|
-
getDateFromHeaderString
|
|
13
|
-
isClockSkewed
|
|
14
|
-
isClockSkewError
|
|
15
|
-
setClockOffset
|
|
16
|
-
}
|
|
9
|
+
getDateWithClockOffset(): Date;
|
|
10
|
+
getClockOffset(): number;
|
|
11
|
+
getHeaderStringFromDate(date: Date): string;
|
|
12
|
+
getDateFromHeaderString(header: string): Date;
|
|
13
|
+
isClockSkewed(serverDate: Date): boolean;
|
|
14
|
+
isClockSkewError(error: any): boolean;
|
|
15
|
+
setClockOffset(offset: number): void;
|
|
16
|
+
}
|
|
17
17
|
/**
|
|
18
18
|
* This utility is intended to be deprecated and replaced by `signRequest` and `presignUrl` functions from
|
|
19
19
|
* `clients/middleware/signing/signer/signatureV4`.
|
|
@@ -36,7 +36,7 @@ const DateUtils = {
|
|
|
36
36
|
return DateUtils.clockOffset;
|
|
37
37
|
},
|
|
38
38
|
getHeaderStringFromDate(date = DateUtils.getDateWithClockOffset()) {
|
|
39
|
-
return date.toISOString().replace(/[
|
|
39
|
+
return date.toISOString().replace(/[:-]|\.\d{3}/g, '');
|
|
40
40
|
},
|
|
41
41
|
getDateFromHeaderString(header) {
|
|
42
42
|
const [, year, month, day, hour, minute, second] = header.match(/^(\d{4})(\d{2})(\d{2})T(\d{2})(\d{2})(\d{2}).+/);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DateUtils.mjs","sources":["../../../src/Signer/DateUtils.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * Date & time utility functions to abstract the `aws-sdk` away from users.\n * (v2 => v3 modularization is a breaking change)\n *\n * @see https://github.com/aws/aws-sdk-js/blob/6edf586dcc1de7fe8fbfbbd9a0d2b1847921e6e1/lib/util.js#L262\n */\nconst FIVE_MINUTES_IN_MS = 1000 * 60 * 5;\n/**\n * This utility is intended to be deprecated and replaced by `signRequest` and `presignUrl` functions from\n * `clients/middleware/signing/signer/signatureV4`.\n *\n * TODO: refactor the logics here into `signRequest` and `presignUrl` functions and remove this class.\n *\n * @internal\n * @deprecated\n */\nexport const DateUtils = {\n /**\n * Milliseconds to offset the date to compensate for clock skew between device & services\n */\n clockOffset: 0,\n getDateWithClockOffset() {\n if (DateUtils.clockOffset) {\n return new Date(new Date().getTime() + DateUtils.clockOffset);\n }\n else {\n return new Date();\n }\n },\n /**\n * @returns {number} Clock offset in milliseconds\n */\n getClockOffset() {\n return DateUtils.clockOffset;\n },\n getHeaderStringFromDate(date = DateUtils.getDateWithClockOffset()) {\n return date.toISOString().replace(/[
|
|
1
|
+
{"version":3,"file":"DateUtils.mjs","sources":["../../../src/Signer/DateUtils.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * Date & time utility functions to abstract the `aws-sdk` away from users.\n * (v2 => v3 modularization is a breaking change)\n *\n * @see https://github.com/aws/aws-sdk-js/blob/6edf586dcc1de7fe8fbfbbd9a0d2b1847921e6e1/lib/util.js#L262\n */\nconst FIVE_MINUTES_IN_MS = 1000 * 60 * 5;\n/**\n * This utility is intended to be deprecated and replaced by `signRequest` and `presignUrl` functions from\n * `clients/middleware/signing/signer/signatureV4`.\n *\n * TODO: refactor the logics here into `signRequest` and `presignUrl` functions and remove this class.\n *\n * @internal\n * @deprecated\n */\nexport const DateUtils = {\n /**\n * Milliseconds to offset the date to compensate for clock skew between device & services\n */\n clockOffset: 0,\n getDateWithClockOffset() {\n if (DateUtils.clockOffset) {\n return new Date(new Date().getTime() + DateUtils.clockOffset);\n }\n else {\n return new Date();\n }\n },\n /**\n * @returns {number} Clock offset in milliseconds\n */\n getClockOffset() {\n return DateUtils.clockOffset;\n },\n getHeaderStringFromDate(date = DateUtils.getDateWithClockOffset()) {\n return date.toISOString().replace(/[:-]|\\.\\d{3}/g, '');\n },\n getDateFromHeaderString(header) {\n const [, year, month, day, hour, minute, second] = header.match(/^(\\d{4})(\\d{2})(\\d{2})T(\\d{2})(\\d{2})(\\d{2}).+/);\n return new Date(Date.UTC(Number(year), Number(month) - 1, Number(day), Number(hour), Number(minute), Number(second)));\n },\n isClockSkewed(serverDate) {\n // API gateway permits client calls that are off by no more than ±5 minutes\n return (Math.abs(serverDate.getTime() - DateUtils.getDateWithClockOffset().getTime()) >= FIVE_MINUTES_IN_MS);\n },\n isClockSkewError(error) {\n if (!error.response || !error.response.headers) {\n return false;\n }\n const { headers } = error.response;\n return Boolean(['BadRequestException', 'InvalidSignatureException'].includes(headers['x-amzn-errortype']) &&\n (headers.date || headers.Date));\n },\n /**\n * @param {number} offset Clock offset in milliseconds\n */\n setClockOffset(offset) {\n DateUtils.clockOffset = offset;\n },\n};\n"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,kBAAkB,GAAG,IAAI,GAAG,EAAE,GAAG,CAAC,CAAC;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACY,MAAC,SAAS,GAAG;AACzB;AACA;AACA;AACA,IAAI,WAAW,EAAE,CAAC;AAClB,IAAI,sBAAsB,GAAG;AAC7B,QAAQ,IAAI,SAAS,CAAC,WAAW,EAAE;AACnC,YAAY,OAAO,IAAI,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,SAAS,CAAC,WAAW,CAAC,CAAC;AAC1E,SAAS;AACT,aAAa;AACb,YAAY,OAAO,IAAI,IAAI,EAAE,CAAC;AAC9B,SAAS;AACT,KAAK;AACL;AACA;AACA;AACA,IAAI,cAAc,GAAG;AACrB,QAAQ,OAAO,SAAS,CAAC,WAAW,CAAC;AACrC,KAAK;AACL,IAAI,uBAAuB,CAAC,IAAI,GAAG,SAAS,CAAC,sBAAsB,EAAE,EAAE;AACvE,QAAQ,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC;AAC/D,KAAK;AACL,IAAI,uBAAuB,CAAC,MAAM,EAAE;AACpC,QAAQ,MAAM,GAAG,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,gDAAgD,CAAC,CAAC;AAC1H,QAAQ,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;AAC9H,KAAK;AACL,IAAI,aAAa,CAAC,UAAU,EAAE;AAC9B;AACA,QAAQ,QAAQ,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,SAAS,CAAC,sBAAsB,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,kBAAkB,EAAE;AACrH,KAAK;AACL,IAAI,gBAAgB,CAAC,KAAK,EAAE;AAC5B,QAAQ,IAAI,CAAC,KAAK,CAAC,QAAQ,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,EAAE;AACxD,YAAY,OAAO,KAAK,CAAC;AACzB,SAAS;AACT,QAAQ,MAAM,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC,QAAQ,CAAC;AAC3C,QAAQ,OAAO,OAAO,CAAC,CAAC,qBAAqB,EAAE,2BAA2B,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;AACjH,aAAa,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;AAC5C,KAAK;AACL;AACA;AACA;AACA,IAAI,cAAc,CAAC,MAAM,EAAE;AAC3B,QAAQ,SAAS,CAAC,WAAW,GAAG,MAAM,CAAC;AACvC,KAAK;AACL;;;;"}
|
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
import { DateUtils } from './DateUtils.mjs';
|
|
2
1
|
import { signRequest } from '../clients/middleware/signing/signer/signatureV4/signRequest.mjs';
|
|
3
2
|
import { presignUrl } from '../clients/middleware/signing/signer/signatureV4/presignUrl.mjs';
|
|
4
3
|
import { TOKEN_QUERY_PARAM } from '../clients/middleware/signing/signer/signatureV4/constants.mjs';
|
|
5
4
|
import '@aws-crypto/sha256-js';
|
|
6
5
|
import '@smithy/util-hex-encoding';
|
|
7
6
|
import { AmplifyUrl } from '../utils/amplifyUrl/index.mjs';
|
|
7
|
+
import { DateUtils } from './DateUtils.mjs';
|
|
8
8
|
|
|
9
9
|
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
10
10
|
// SPDX-License-Identifier: Apache-2.0
|
|
11
11
|
const IOT_SERVICE_NAME = 'iotdevicegateway';
|
|
12
12
|
// Best practice regex to parse the service and region from an AWS endpoint
|
|
13
|
-
const AWS_ENDPOINT_REGEX = /([
|
|
13
|
+
const AWS_ENDPOINT_REGEX = /([^.]+)\.(?:([^.]*)\.)?amazonaws\.com(.cn)?$/;
|
|
14
14
|
/**
|
|
15
15
|
* This class is intended to be deprecated and replaced by `signRequest` and `presignUrl` functions from
|
|
16
16
|
* `clients/middleware/signing/signer/signatureV4`.
|
|
@@ -119,7 +119,7 @@ const getOptions = (request, accessInfo, serviceInfo, expiration) => {
|
|
|
119
119
|
};
|
|
120
120
|
};
|
|
121
121
|
const parseServiceInfo = (url) => {
|
|
122
|
-
const host = url
|
|
122
|
+
const { host } = url;
|
|
123
123
|
const matched = host.match(AWS_ENDPOINT_REGEX) ?? [];
|
|
124
124
|
let parsed = matched.slice(1, 3);
|
|
125
125
|
if (parsed[1] === 'es') {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Signer.mjs","sources":["../../../src/Signer/Signer.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport {
|
|
1
|
+
{"version":3,"file":"Signer.mjs","sources":["../../../src/Signer/Signer.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { TOKEN_QUERY_PARAM, presignUrl, signRequest, } from '../clients/middleware/signing/signer/signatureV4';\nimport { AmplifyUrl } from '../utils/amplifyUrl';\nimport { DateUtils } from './DateUtils';\nconst IOT_SERVICE_NAME = 'iotdevicegateway';\n// Best practice regex to parse the service and region from an AWS endpoint\nconst AWS_ENDPOINT_REGEX = /([^.]+)\\.(?:([^.]*)\\.)?amazonaws\\.com(.cn)?$/;\n/**\n * This class is intended to be deprecated and replaced by `signRequest` and `presignUrl` functions from\n * `clients/middleware/signing/signer/signatureV4`.\n *\n * TODO: refactor the logics here into `signRequest` and `presignUrl` functions and remove this class.\n *\n * @internal\n * @deprecated\n */\nexport class Signer {\n /**\n * Sign a HTTP request, add 'Authorization' header to request param\n * @method sign\n * @memberof Signer\n * @static\n *\n * @param {object} request - HTTP request object\n <pre>\n request: {\n method: GET | POST | PUT ...\n url: ...,\n headers: {\n header1: ...\n },\n data: data\n }\n </pre>\n * @param {object} access_info - AWS access credential info\n <pre>\n access_info: {\n access_key: ...,\n secret_key: ...,\n session_token: ...\n }\n </pre>\n * @param {object} [service_info] - AWS service type and region, optional,\n * if not provided then parse out from url\n <pre>\n service_info: {\n service: ...,\n region: ...\n }\n </pre>\n *\n * @returns {object} Signed HTTP request\n */\n static sign(request, accessInfo, serviceInfo) {\n request.headers = request.headers || {};\n if (request.body && !request.data) {\n throw new Error('The attribute \"body\" was found on the request object. Please use the attribute \"data\" instead.');\n }\n const requestToSign = {\n ...request,\n body: request.data,\n url: new AmplifyUrl(request.url),\n };\n const options = getOptions(requestToSign, accessInfo, serviceInfo);\n const signedRequest = signRequest(requestToSign, options);\n // Prior to using `signRequest`, Signer accepted urls as strings and outputted urls as string. Coerce the property\n // back to a string so as not to disrupt consumers of Signer.\n signedRequest.url = signedRequest.url.toString();\n // HTTP headers should be case insensitive but, to maintain parity with the previous Signer implementation and\n // limit the impact of this implementation swap, replace lowercased headers with title cased ones.\n signedRequest.headers.Authorization = signedRequest.headers.authorization;\n signedRequest.headers['X-Amz-Security-Token'] =\n signedRequest.headers['x-amz-security-token'];\n delete signedRequest.headers.authorization;\n delete signedRequest.headers['x-amz-security-token'];\n return signedRequest;\n }\n static signUrl(urlOrRequest, accessInfo, serviceInfo, expiration) {\n const urlToSign = typeof urlOrRequest === 'object' ? urlOrRequest.url : urlOrRequest;\n const method = typeof urlOrRequest === 'object' ? urlOrRequest.method : 'GET';\n const body = typeof urlOrRequest === 'object' ? urlOrRequest.body : undefined;\n const presignable = {\n body,\n method,\n url: new AmplifyUrl(urlToSign),\n };\n const options = getOptions(presignable, accessInfo, serviceInfo, expiration);\n const signedUrl = presignUrl(presignable, options);\n if (accessInfo.session_token &&\n !sessionTokenRequiredInSigning(options.signingService)) {\n signedUrl.searchParams.append(TOKEN_QUERY_PARAM, accessInfo.session_token);\n }\n return signedUrl.toString();\n }\n}\nconst getOptions = (request, accessInfo, serviceInfo, expiration) => {\n const { access_key, secret_key, session_token } = accessInfo ?? {};\n const { region: urlRegion, service: urlService } = parseServiceInfo(request.url);\n const { region = urlRegion, service = urlService } = serviceInfo ?? {};\n const credentials = {\n accessKeyId: access_key,\n secretAccessKey: secret_key,\n ...(sessionTokenRequiredInSigning(service)\n ? { sessionToken: session_token }\n : {}),\n };\n return {\n credentials,\n signingDate: DateUtils.getDateWithClockOffset(),\n signingRegion: region,\n signingService: service,\n ...(expiration && { expiration }),\n };\n};\nconst parseServiceInfo = (url) => {\n const { host } = url;\n const matched = host.match(AWS_ENDPOINT_REGEX) ?? [];\n let parsed = matched.slice(1, 3);\n if (parsed[1] === 'es') {\n // Elastic Search\n parsed = parsed.reverse();\n }\n return {\n service: parsed[0],\n region: parsed[1],\n };\n};\n// IoT service does not allow the session token in the canonical request\n// https://docs.aws.amazon.com/general/latest/gr/sigv4-add-signature-to-request.html\nconst sessionTokenRequiredInSigning = (service) => service !== IOT_SERVICE_NAME;\n"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { serverContextRegistry } from './serverContextRegistry.mjs';
|
|
2
1
|
import { AmplifyClass } from '../../singleton/Amplify.mjs';
|
|
3
2
|
import { AmplifyServerContextError } from '../error/AmplifyServerContextError.mjs';
|
|
3
|
+
import { serverContextRegistry } from './serverContextRegistry.mjs';
|
|
4
4
|
|
|
5
5
|
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
6
6
|
// SPDX-License-Identifier: Apache-2.0
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"serverContext.mjs","sources":["../../../../src/adapterCore/serverContext/serverContext.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport {
|
|
1
|
+
{"version":3,"file":"serverContext.mjs","sources":["../../../../src/adapterCore/serverContext/serverContext.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { AmplifyClass } from '../../singleton';\nimport { AmplifyServerContextError } from '../error';\nimport { serverContextRegistry } from './serverContextRegistry';\n/**\n * Creates an Amplify server context.\n * @param amplifyConfig The Amplify resource config.\n * @param libraryOptions The Amplify library options.\n * @returns The Amplify server context spec.\n */\nexport const createAmplifyServerContext = (amplifyConfig, libraryOptions) => {\n const amplify = new AmplifyClass();\n amplify.configure(amplifyConfig, libraryOptions);\n return serverContextRegistry.register({\n amplify,\n });\n};\n/**\n * Returns an Amplify server context.\n * @param contextSpec The context spec used to get the Amplify server context.\n * @returns The Amplify server context.\n */\nexport const getAmplifyServerContext = (contextSpec) => {\n assertContextSpec(contextSpec);\n const context = serverContextRegistry.get(contextSpec);\n if (context) {\n return context;\n }\n throw new AmplifyServerContextError({\n message: 'Attempted to get the Amplify Server Context that may have been destroyed.',\n recoverySuggestion: 'Ensure always call Amplify APIs within `runWithAmplifyServerContext` function, and do not attempt to reuse `contextSpec` object.',\n });\n};\n/**\n * Destroys an Amplify server context.\n * @param contextSpec The context spec used to destroy the Amplify server context.\n */\nexport const destroyAmplifyServerContext = (contextSpec) => {\n serverContextRegistry.deregister(contextSpec);\n};\nconst assertContextSpec = (contextSpec) => {\n let invalid = false;\n if (!Object.prototype.hasOwnProperty.call(contextSpec, 'token')) {\n invalid = true;\n }\n else if (!Object.prototype.hasOwnProperty.call(contextSpec.token, 'value')) {\n invalid = true;\n }\n else if (Object.prototype.toString.call(contextSpec.token.value) !==\n '[object Symbol]') {\n invalid = true;\n }\n if (invalid) {\n throw new AmplifyServerContextError({\n message: 'Invalid `contextSpec`.',\n recoverySuggestion: 'Ensure to use the `contextSpec` object injected by `runWithAmplifyServerContext` function.',\n });\n }\n};\n"],"names":[],"mappings":";;;;AAAA;AACA;AAIA;AACA;AACA;AACA;AACA;AACA;AACY,MAAC,0BAA0B,GAAG,CAAC,aAAa,EAAE,cAAc,KAAK;AAC7E,IAAI,MAAM,OAAO,GAAG,IAAI,YAAY,EAAE,CAAC;AACvC,IAAI,OAAO,CAAC,SAAS,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC;AACrD,IAAI,OAAO,qBAAqB,CAAC,QAAQ,CAAC;AAC1C,QAAQ,OAAO;AACf,KAAK,CAAC,CAAC;AACP,EAAE;AACF;AACA;AACA;AACA;AACA;AACY,MAAC,uBAAuB,GAAG,CAAC,WAAW,KAAK;AACxD,IAAI,iBAAiB,CAAC,WAAW,CAAC,CAAC;AACnC,IAAI,MAAM,OAAO,GAAG,qBAAqB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;AAC3D,IAAI,IAAI,OAAO,EAAE;AACjB,QAAQ,OAAO,OAAO,CAAC;AACvB,KAAK;AACL,IAAI,MAAM,IAAI,yBAAyB,CAAC;AACxC,QAAQ,OAAO,EAAE,2EAA2E;AAC5F,QAAQ,kBAAkB,EAAE,kIAAkI;AAC9J,KAAK,CAAC,CAAC;AACP,EAAE;AACF;AACA;AACA;AACA;AACY,MAAC,2BAA2B,GAAG,CAAC,WAAW,KAAK;AAC5D,IAAI,qBAAqB,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;AAClD,EAAE;AACF,MAAM,iBAAiB,GAAG,CAAC,WAAW,KAAK;AAC3C,IAAI,IAAI,OAAO,GAAG,KAAK,CAAC;AACxB,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,EAAE;AACrE,QAAQ,OAAO,GAAG,IAAI,CAAC;AACvB,KAAK;AACL,SAAS,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE;AAChF,QAAQ,OAAO,GAAG,IAAI,CAAC;AACvB,KAAK;AACL,SAAS,IAAI,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC;AACpE,QAAQ,iBAAiB,EAAE;AAC3B,QAAQ,OAAO,GAAG,IAAI,CAAC;AACvB,KAAK;AACL,IAAI,IAAI,OAAO,EAAE;AACjB,QAAQ,MAAM,IAAI,yBAAyB,CAAC;AAC5C,YAAY,OAAO,EAAE,wBAAwB;AAC7C,YAAY,kBAAkB,EAAE,4FAA4F;AAC5H,SAAS,CAAC,CAAC;AACX,KAAK;AACL,CAAC;;;;"}
|
|
@@ -1,16 +1,14 @@
|
|
|
1
1
|
import { AmplifyClass } from '../../../singleton';
|
|
2
2
|
import { LibraryOptions, ResourcesConfig } from '../../../singleton/types';
|
|
3
3
|
export declare namespace AmplifyServer {
|
|
4
|
-
|
|
5
|
-
readonly value:
|
|
6
|
-
}
|
|
7
|
-
|
|
4
|
+
interface ContextToken {
|
|
5
|
+
readonly value: symbol;
|
|
6
|
+
}
|
|
7
|
+
interface ContextSpec {
|
|
8
8
|
readonly token: ContextToken;
|
|
9
|
-
}
|
|
10
|
-
|
|
9
|
+
}
|
|
10
|
+
interface Context {
|
|
11
11
|
amplify: AmplifyClass;
|
|
12
|
-
};
|
|
13
|
-
interface RunOperationWithContext {
|
|
14
|
-
<Result>(amplifyConfig: ResourcesConfig, libraryOptions: LibraryOptions, operation: (contextSpec: AmplifyServer.ContextSpec) => Result | Promise<Result>): Promise<Result>;
|
|
15
12
|
}
|
|
13
|
+
type RunOperationWithContext = <Result>(amplifyConfig: ResourcesConfig, libraryOptions: LibraryOptions, operation: (contextSpec: AmplifyServer.ContextSpec) => Result | Promise<Result>) => Promise<Result>;
|
|
16
14
|
}
|
|
@@ -5,7 +5,7 @@ import { Endpoint, EndpointResolverOptions, Headers, HttpRequest, HttpResponse }
|
|
|
5
5
|
*
|
|
6
6
|
* @internal
|
|
7
7
|
*/
|
|
8
|
-
export declare const cognitoIdentityTransferHandler: (request: HttpRequest, options: import("../../clients").UserAgentOptions & import("../../clients").RetryOptions<HttpResponse> & import("../../clients").HttpTransferOptions) => Promise<HttpResponse>;
|
|
8
|
+
export declare const cognitoIdentityTransferHandler: (request: HttpRequest, options: Record<string, unknown> & import("../../clients").UserAgentOptions & import("../../clients").RetryOptions<HttpResponse> & import("../../clients").HttpTransferOptions) => Promise<HttpResponse>;
|
|
9
9
|
/**
|
|
10
10
|
* @internal
|
|
11
11
|
*/
|
|
@@ -25,7 +25,7 @@ const endpointResolver = ({ region }) => ({
|
|
|
25
25
|
/**
|
|
26
26
|
* A Cognito Identity-specific middleware that disables caching for all requests.
|
|
27
27
|
*/
|
|
28
|
-
const
|
|
28
|
+
const disableCacheMiddlewareFactory = () => next => async function disableCacheMiddleware(request) {
|
|
29
29
|
request.headers['cache-control'] = 'no-store';
|
|
30
30
|
return next(request);
|
|
31
31
|
};
|
|
@@ -35,7 +35,7 @@ const disableCacheMiddleware = () => (next, context) => async function disableCa
|
|
|
35
35
|
*
|
|
36
36
|
* @internal
|
|
37
37
|
*/
|
|
38
|
-
const cognitoIdentityTransferHandler = composeTransferHandler(unauthenticatedHandler, [
|
|
38
|
+
const cognitoIdentityTransferHandler = composeTransferHandler(unauthenticatedHandler, [disableCacheMiddlewareFactory]);
|
|
39
39
|
/**
|
|
40
40
|
* @internal
|
|
41
41
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base.mjs","sources":["../../../../src/awsClients/cognitoIdentity/base.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { getDnsSuffix,
|
|
1
|
+
{"version":3,"file":"base.mjs","sources":["../../../../src/awsClients/cognitoIdentity/base.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { getDnsSuffix, parseJsonError, unauthenticatedHandler, } from '../../clients';\nimport { composeTransferHandler } from '../../clients/internal/composeTransferHandler';\nimport { getRetryDecider, jitteredBackoff, } from '../../clients/middleware/retry';\nimport { getAmplifyUserAgent } from '../../Platform';\nimport { observeFrameworkChanges } from '../../Platform/detectFramework';\nimport { AmplifyUrl } from '../../utils/amplifyUrl';\n/**\n * The service name used to sign requests if the API requires authentication.\n */\nconst SERVICE_NAME = 'cognito-identity';\n/**\n * The endpoint resolver function that returns the endpoint URL for a given region.\n */\nconst endpointResolver = ({ region }) => ({\n url: new AmplifyUrl(`https://cognito-identity.${region}.${getDnsSuffix(region)}`),\n});\n/**\n * A Cognito Identity-specific middleware that disables caching for all requests.\n */\nconst disableCacheMiddlewareFactory = () => next => async function disableCacheMiddleware(request) {\n request.headers['cache-control'] = 'no-store';\n return next(request);\n};\n/**\n * A Cognito Identity-specific transfer handler that does NOT sign requests, and\n * disables caching.\n *\n * @internal\n */\nexport const cognitoIdentityTransferHandler = composeTransferHandler(unauthenticatedHandler, [disableCacheMiddlewareFactory]);\n/**\n * @internal\n */\nexport const defaultConfig = {\n service: SERVICE_NAME,\n endpointResolver,\n retryDecider: getRetryDecider(parseJsonError),\n computeDelay: jitteredBackoff,\n userAgentValue: getAmplifyUserAgent(),\n cache: 'no-store',\n};\nobserveFrameworkChanges(() => {\n defaultConfig.userAgentValue = getAmplifyUserAgent();\n});\n/**\n * @internal\n */\nexport const getSharedHeaders = (operation) => ({\n 'content-type': 'application/x-amz-json-1.1',\n 'x-amz-target': `AWSCognitoIdentityService.${operation}`,\n});\n/**\n * @internal\n */\nexport const buildHttpRpcRequest = ({ url }, headers, body) => ({\n headers,\n url,\n body,\n method: 'POST',\n});\n"],"names":[],"mappings":";;;;;;;;;;;;AAAA;AACA;AAOA;AACA;AACA;AACA,MAAM,YAAY,GAAG,kBAAkB,CAAC;AACxC;AACA;AACA;AACA,MAAM,gBAAgB,GAAG,CAAC,EAAE,MAAM,EAAE,MAAM;AAC1C,IAAI,GAAG,EAAE,IAAI,UAAU,CAAC,CAAC,yBAAyB,EAAE,MAAM,CAAC,CAAC,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;AACrF,CAAC,CAAC,CAAC;AACH;AACA;AACA;AACA,MAAM,6BAA6B,GAAG,MAAM,IAAI,IAAI,eAAe,sBAAsB,CAAC,OAAO,EAAE;AACnG,IAAI,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,GAAG,UAAU,CAAC;AAClD,IAAI,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC;AACzB,CAAC,CAAC;AACF;AACA;AACA;AACA;AACA;AACA;AACY,MAAC,8BAA8B,GAAG,sBAAsB,CAAC,sBAAsB,EAAE,CAAC,6BAA6B,CAAC,EAAE;AAC9H;AACA;AACA;AACY,MAAC,aAAa,GAAG;AAC7B,IAAI,OAAO,EAAE,YAAY;AACzB,IAAI,gBAAgB;AACpB,IAAI,YAAY,EAAE,eAAe,CAAC,cAAc,CAAC;AACjD,IAAI,YAAY,EAAE,eAAe;AACjC,IAAI,cAAc,EAAE,mBAAmB,EAAE;AACzC,IAAI,KAAK,EAAE,UAAU;AACrB,EAAE;AACF,uBAAuB,CAAC,MAAM;AAC9B,IAAI,aAAa,CAAC,cAAc,GAAG,mBAAmB,EAAE,CAAC;AACzD,CAAC,CAAC,CAAC;AACH;AACA;AACA;AACY,MAAC,gBAAgB,GAAG,CAAC,SAAS,MAAM;AAChD,IAAI,cAAc,EAAE,4BAA4B;AAChD,IAAI,cAAc,EAAE,CAAC,0BAA0B,EAAE,SAAS,CAAC,CAAC;AAC5D,CAAC,EAAE;AACH;AACA;AACA;AACY,MAAC,mBAAmB,GAAG,CAAC,EAAE,GAAG,EAAE,EAAE,OAAO,EAAE,IAAI,MAAM;AAChE,IAAI,OAAO;AACX,IAAI,GAAG;AACP,IAAI,IAAI;AACR,IAAI,MAAM,EAAE,MAAM;AAClB,CAAC;;;;"}
|
|
@@ -14,9 +14,5 @@ export declare const getCredentialsForIdentity: (config: {
|
|
|
14
14
|
userAgentValue?: string | undefined;
|
|
15
15
|
cache?: "default" | "force-cache" | "no-cache" | "no-store" | "only-if-cached" | "reload" | undefined;
|
|
16
16
|
} & {
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
maxAttempts?: number | undefined;
|
|
20
|
-
userAgentHeader?: string | undefined;
|
|
21
|
-
region: string;
|
|
22
|
-
}, input: GetCredentialsForIdentityInput) => Promise<GetCredentialsForIdentityOutput>;
|
|
17
|
+
[x: string]: unknown;
|
|
18
|
+
}, input: import("./types").GetCredentialsForIdentityInput) => Promise<GetCredentialsForIdentityOutput>;
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { defaultConfig, cognitoIdentityTransferHandler, buildHttpRpcRequest, getSharedHeaders } from './base.mjs';
|
|
2
1
|
import '../../utils/getClientInfo/getClientInfo.mjs';
|
|
3
2
|
import '../../utils/retry/retry.mjs';
|
|
4
3
|
import '@aws-crypto/sha256-js';
|
|
@@ -6,6 +5,7 @@ import '@smithy/util-hex-encoding';
|
|
|
6
5
|
import { parseMetadata } from '../../clients/serde/responseInfo.mjs';
|
|
7
6
|
import { parseJsonError, parseJsonBody } from '../../clients/serde/json.mjs';
|
|
8
7
|
import { composeServiceApi } from '../../clients/internal/composeServiceApi.mjs';
|
|
8
|
+
import { defaultConfig, cognitoIdentityTransferHandler, buildHttpRpcRequest, getSharedHeaders } from './base.mjs';
|
|
9
9
|
|
|
10
10
|
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
11
11
|
// SPDX-License-Identifier: Apache-2.0
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getCredentialsForIdentity.mjs","sources":["../../../../src/awsClients/cognitoIdentity/getCredentialsForIdentity.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport {
|
|
1
|
+
{"version":3,"file":"getCredentialsForIdentity.mjs","sources":["../../../../src/awsClients/cognitoIdentity/getCredentialsForIdentity.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { parseJsonBody, parseJsonError, parseMetadata, } from '../../clients';\nimport { composeServiceApi } from '../../clients/internal';\nimport { buildHttpRpcRequest, cognitoIdentityTransferHandler, defaultConfig, getSharedHeaders, } from './base';\nconst getCredentialsForIdentitySerializer = (input, endpoint) => {\n const headers = getSharedHeaders('GetCredentialsForIdentity');\n const body = JSON.stringify(input);\n return buildHttpRpcRequest(endpoint, headers, body);\n};\nconst getCredentialsForIdentityDeserializer = async (response) => {\n if (response.statusCode >= 300) {\n const error = await parseJsonError(response);\n throw error;\n }\n else {\n const body = await parseJsonBody(response);\n return {\n IdentityId: body.IdentityId,\n Credentials: deserializeCredentials(body.Credentials),\n $metadata: parseMetadata(response),\n };\n }\n};\nconst deserializeCredentials = ({ AccessKeyId, SecretKey, SessionToken, Expiration, } = {}) => {\n return {\n AccessKeyId,\n SecretKey,\n SessionToken,\n Expiration: Expiration && new Date(Expiration * 1000),\n };\n};\n/**\n * @internal\n */\nexport const getCredentialsForIdentity = composeServiceApi(cognitoIdentityTransferHandler, getCredentialsForIdentitySerializer, getCredentialsForIdentityDeserializer, defaultConfig);\n"],"names":[],"mappings":";;;;;;;;;AAAA;AACA;AAIA,MAAM,mCAAmC,GAAG,CAAC,KAAK,EAAE,QAAQ,KAAK;AACjE,IAAI,MAAM,OAAO,GAAG,gBAAgB,CAAC,2BAA2B,CAAC,CAAC;AAClE,IAAI,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;AACvC,IAAI,OAAO,mBAAmB,CAAC,QAAQ,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;AACxD,CAAC,CAAC;AACF,MAAM,qCAAqC,GAAG,OAAO,QAAQ,KAAK;AAClE,IAAI,IAAI,QAAQ,CAAC,UAAU,IAAI,GAAG,EAAE;AACpC,QAAQ,MAAM,KAAK,GAAG,MAAM,cAAc,CAAC,QAAQ,CAAC,CAAC;AACrD,QAAQ,MAAM,KAAK,CAAC;AACpB,KAAK;AACL,SAAS;AACT,QAAQ,MAAM,IAAI,GAAG,MAAM,aAAa,CAAC,QAAQ,CAAC,CAAC;AACnD,QAAQ,OAAO;AACf,YAAY,UAAU,EAAE,IAAI,CAAC,UAAU;AACvC,YAAY,WAAW,EAAE,sBAAsB,CAAC,IAAI,CAAC,WAAW,CAAC;AACjE,YAAY,SAAS,EAAE,aAAa,CAAC,QAAQ,CAAC;AAC9C,SAAS,CAAC;AACV,KAAK;AACL,CAAC,CAAC;AACF,MAAM,sBAAsB,GAAG,CAAC,EAAE,WAAW,EAAE,SAAS,EAAE,YAAY,EAAE,UAAU,GAAG,GAAG,EAAE,KAAK;AAC/F,IAAI,OAAO;AACX,QAAQ,WAAW;AACnB,QAAQ,SAAS;AACjB,QAAQ,YAAY;AACpB,QAAQ,UAAU,EAAE,UAAU,IAAI,IAAI,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;AAC7D,KAAK,CAAC;AACN,CAAC,CAAC;AACF;AACA;AACA;AACY,MAAC,yBAAyB,GAAG,iBAAiB,CAAC,8BAA8B,EAAE,mCAAmC,EAAE,qCAAqC,EAAE,aAAa;;;;"}
|
|
@@ -14,9 +14,5 @@ export declare const getId: (config: {
|
|
|
14
14
|
userAgentValue?: string | undefined;
|
|
15
15
|
cache?: "default" | "force-cache" | "no-cache" | "no-store" | "only-if-cached" | "reload" | undefined;
|
|
16
16
|
} & {
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
maxAttempts?: number | undefined;
|
|
20
|
-
userAgentHeader?: string | undefined;
|
|
21
|
-
region: string;
|
|
22
|
-
}, input: GetIdInput) => Promise<GetIdOutput>;
|
|
17
|
+
[x: string]: unknown;
|
|
18
|
+
}, input: import("./types").GetIdInput) => Promise<GetIdOutput>;
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { defaultConfig, cognitoIdentityTransferHandler, buildHttpRpcRequest, getSharedHeaders } from './base.mjs';
|
|
2
1
|
import '../../utils/getClientInfo/getClientInfo.mjs';
|
|
3
2
|
import '../../utils/retry/retry.mjs';
|
|
4
3
|
import '@aws-crypto/sha256-js';
|
|
@@ -6,6 +5,7 @@ import '@smithy/util-hex-encoding';
|
|
|
6
5
|
import { parseMetadata } from '../../clients/serde/responseInfo.mjs';
|
|
7
6
|
import { parseJsonError, parseJsonBody } from '../../clients/serde/json.mjs';
|
|
8
7
|
import { composeServiceApi } from '../../clients/internal/composeServiceApi.mjs';
|
|
8
|
+
import { defaultConfig, cognitoIdentityTransferHandler, buildHttpRpcRequest, getSharedHeaders } from './base.mjs';
|
|
9
9
|
|
|
10
10
|
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
11
11
|
// SPDX-License-Identifier: Apache-2.0
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getId.mjs","sources":["../../../../src/awsClients/cognitoIdentity/getId.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport {
|
|
1
|
+
{"version":3,"file":"getId.mjs","sources":["../../../../src/awsClients/cognitoIdentity/getId.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { parseJsonBody, parseJsonError, parseMetadata, } from '../../clients';\nimport { composeServiceApi } from '../../clients/internal';\nimport { buildHttpRpcRequest, cognitoIdentityTransferHandler, defaultConfig, getSharedHeaders, } from './base';\nconst getIdSerializer = (input, endpoint) => {\n const headers = getSharedHeaders('GetId');\n const body = JSON.stringify(input);\n return buildHttpRpcRequest(endpoint, headers, body);\n};\nconst getIdDeserializer = async (response) => {\n if (response.statusCode >= 300) {\n const error = await parseJsonError(response);\n throw error;\n }\n else {\n const body = await parseJsonBody(response);\n return {\n IdentityId: body.IdentityId,\n $metadata: parseMetadata(response),\n };\n }\n};\n/**\n * @internal\n */\nexport const getId = composeServiceApi(cognitoIdentityTransferHandler, getIdSerializer, getIdDeserializer, defaultConfig);\n"],"names":[],"mappings":";;;;;;;;;AAAA;AACA;AAIA,MAAM,eAAe,GAAG,CAAC,KAAK,EAAE,QAAQ,KAAK;AAC7C,IAAI,MAAM,OAAO,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;AAC9C,IAAI,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;AACvC,IAAI,OAAO,mBAAmB,CAAC,QAAQ,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;AACxD,CAAC,CAAC;AACF,MAAM,iBAAiB,GAAG,OAAO,QAAQ,KAAK;AAC9C,IAAI,IAAI,QAAQ,CAAC,UAAU,IAAI,GAAG,EAAE;AACpC,QAAQ,MAAM,KAAK,GAAG,MAAM,cAAc,CAAC,QAAQ,CAAC,CAAC;AACrD,QAAQ,MAAM,KAAK,CAAC;AACpB,KAAK;AACL,SAAS;AACT,QAAQ,MAAM,IAAI,GAAG,MAAM,aAAa,CAAC,QAAQ,CAAC,CAAC;AACnD,QAAQ,OAAO;AACf,YAAY,UAAU,EAAE,IAAI,CAAC,UAAU;AACvC,YAAY,SAAS,EAAE,aAAa,CAAC,QAAQ,CAAC;AAC9C,SAAS,CAAC;AACV,KAAK;AACL,CAAC,CAAC;AACF;AACA;AACA;AACY,MAAC,KAAK,GAAG,iBAAiB,CAAC,8BAA8B,EAAE,eAAe,EAAE,iBAAiB,EAAE,aAAa;;;;"}
|
|
@@ -26,8 +26,7 @@ export interface Credentials {
|
|
|
26
26
|
*
|
|
27
27
|
* The input for {@link GetCredentialsForIdentityCommand}.
|
|
28
28
|
*/
|
|
29
|
-
export
|
|
30
|
-
}
|
|
29
|
+
export type GetCredentialsForIdentityCommandInput = GetCredentialsForIdentityInput;
|
|
31
30
|
/**
|
|
32
31
|
* @public
|
|
33
32
|
*
|
|
@@ -84,8 +83,7 @@ export interface GetCredentialsForIdentityResponse {
|
|
|
84
83
|
*
|
|
85
84
|
* The input for {@link GetIdCommand}.
|
|
86
85
|
*/
|
|
87
|
-
export
|
|
88
|
-
}
|
|
86
|
+
export type GetIdCommandInput = GetIdInput;
|
|
89
87
|
/**
|
|
90
88
|
* @public
|
|
91
89
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base.mjs","sources":["../../../../src/awsClients/pinpoint/base.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { getDnsSuffix } from '../../clients/endpoints';\nimport {
|
|
1
|
+
{"version":3,"file":"base.mjs","sources":["../../../../src/awsClients/pinpoint/base.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { getDnsSuffix } from '../../clients/endpoints';\nimport { getRetryDecider, jitteredBackoff, } from '../../clients/middleware/retry';\nimport { parseJsonError } from '../../clients/serde/json';\nimport { getAmplifyUserAgent } from '../../Platform';\nimport { AmplifyUrl } from '../../utils/amplifyUrl';\n/**\n * The service name used to sign requests if the API requires authentication.\n */\nconst SERVICE_NAME = 'mobiletargeting';\n/**\n * The endpoint resolver function that returns the endpoint URL for a given region.\n */\nconst endpointResolver = ({ region }) => ({\n url: new AmplifyUrl(`https://pinpoint.${region}.${getDnsSuffix(region)}`),\n});\n/**\n * @internal\n */\nexport const defaultConfig = {\n service: SERVICE_NAME,\n endpointResolver,\n retryDecider: getRetryDecider(parseJsonError),\n computeDelay: jitteredBackoff,\n userAgentValue: getAmplifyUserAgent(),\n};\n/**\n * @internal\n */\nexport const getSharedHeaders = () => ({\n 'content-type': 'application/json',\n});\n"],"names":[],"mappings":";;;;;;;AAAA;AACA;AAMA;AACA;AACA;AACA,MAAM,YAAY,GAAG,iBAAiB,CAAC;AACvC;AACA;AACA;AACA,MAAM,gBAAgB,GAAG,CAAC,EAAE,MAAM,EAAE,MAAM;AAC1C,IAAI,GAAG,EAAE,IAAI,UAAU,CAAC,CAAC,iBAAiB,EAAE,MAAM,CAAC,CAAC,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;AAC7E,CAAC,CAAC,CAAC;AACH;AACA;AACA;AACY,MAAC,aAAa,GAAG;AAC7B,IAAI,OAAO,EAAE,YAAY;AACzB,IAAI,gBAAgB;AACpB,IAAI,YAAY,EAAE,eAAe,CAAC,cAAc,CAAC;AACjD,IAAI,YAAY,EAAE,eAAe;AACjC,IAAI,cAAc,EAAE,mBAAmB,EAAE;AACzC,EAAE;AACF;AACA;AACA;AACY,MAAC,gBAAgB,GAAG,OAAO;AACvC,IAAI,cAAc,EAAE,kBAAkB;AACtC,CAAC;;;;"}
|
|
@@ -21,4 +21,4 @@ export declare const getInAppMessages: (config: {
|
|
|
21
21
|
uriEscapePath?: boolean | undefined;
|
|
22
22
|
credentials: import("@smithy/types/dist-types/identity/awsCredentialIdentity").AwsCredentialIdentity | (() => Promise<import("@smithy/types/dist-types/identity/awsCredentialIdentity").AwsCredentialIdentity>);
|
|
23
23
|
region: string;
|
|
24
|
-
}, input:
|
|
24
|
+
}, input: import("./types").GetInAppMessagesRequest) => Promise<GetInAppMessagesOutput>;
|
|
@@ -3,8 +3,8 @@ import { composeServiceApi } from '../../clients/internal/composeServiceApi.mjs'
|
|
|
3
3
|
import { extendedEncodeURIComponent } from '../../clients/middleware/signing/utils/extendedEncodeURIComponent.mjs';
|
|
4
4
|
import { parseMetadata } from '../../clients/serde/responseInfo.mjs';
|
|
5
5
|
import { parseJsonError, parseJsonBody } from '../../clients/serde/json.mjs';
|
|
6
|
-
import { defaultConfig, getSharedHeaders } from './base.mjs';
|
|
7
6
|
import { AmplifyUrl } from '../../utils/amplifyUrl/index.mjs';
|
|
7
|
+
import { defaultConfig, getSharedHeaders } from './base.mjs';
|
|
8
8
|
|
|
9
9
|
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
10
10
|
// SPDX-License-Identifier: Apache-2.0
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getInAppMessages.mjs","sources":["../../../../src/awsClients/pinpoint/getInAppMessages.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { authenticatedHandler } from '../../clients/handlers/authenticated';\nimport { composeServiceApi } from '../../clients/internal/composeServiceApi';\nimport { extendedEncodeURIComponent } from '../../clients/middleware/signing/utils/extendedEncodeURIComponent';\nimport { parseJsonBody, parseJsonError, parseMetadata, } from '../../clients/serde';\nimport {
|
|
1
|
+
{"version":3,"file":"getInAppMessages.mjs","sources":["../../../../src/awsClients/pinpoint/getInAppMessages.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { authenticatedHandler } from '../../clients/handlers/authenticated';\nimport { composeServiceApi } from '../../clients/internal/composeServiceApi';\nimport { extendedEncodeURIComponent } from '../../clients/middleware/signing/utils/extendedEncodeURIComponent';\nimport { parseJsonBody, parseJsonError, parseMetadata, } from '../../clients/serde';\nimport { AmplifyUrl } from '../../utils/amplifyUrl';\nimport { defaultConfig, getSharedHeaders } from './base';\nconst getInAppMessagesSerializer = ({ ApplicationId = '', EndpointId = '' }, endpoint) => {\n const headers = getSharedHeaders();\n const url = new AmplifyUrl(endpoint.url);\n url.pathname = `v1/apps/${extendedEncodeURIComponent(ApplicationId)}/endpoints/${extendedEncodeURIComponent(EndpointId)}/inappmessages`;\n return { method: 'GET', headers, url };\n};\nconst getInAppMessagesDeserializer = async (response) => {\n if (response.statusCode >= 300) {\n const error = await parseJsonError(response);\n throw error;\n }\n else {\n const { InAppMessageCampaigns } = await parseJsonBody(response);\n return {\n InAppMessagesResponse: { InAppMessageCampaigns },\n $metadata: parseMetadata(response),\n };\n }\n};\n/**\n * @internal\n */\nexport const getInAppMessages = composeServiceApi(authenticatedHandler, getInAppMessagesSerializer, getInAppMessagesDeserializer, defaultConfig);\n"],"names":[],"mappings":";;;;;;;;AAAA;AACA;AAOA,MAAM,0BAA0B,GAAG,CAAC,EAAE,aAAa,GAAG,EAAE,EAAE,UAAU,GAAG,EAAE,EAAE,EAAE,QAAQ,KAAK;AAC1F,IAAI,MAAM,OAAO,GAAG,gBAAgB,EAAE,CAAC;AACvC,IAAI,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;AAC7C,IAAI,GAAG,CAAC,QAAQ,GAAG,CAAC,QAAQ,EAAE,0BAA0B,CAAC,aAAa,CAAC,CAAC,WAAW,EAAE,0BAA0B,CAAC,UAAU,CAAC,CAAC,cAAc,CAAC,CAAC;AAC5I,IAAI,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC;AAC3C,CAAC,CAAC;AACF,MAAM,4BAA4B,GAAG,OAAO,QAAQ,KAAK;AACzD,IAAI,IAAI,QAAQ,CAAC,UAAU,IAAI,GAAG,EAAE;AACpC,QAAQ,MAAM,KAAK,GAAG,MAAM,cAAc,CAAC,QAAQ,CAAC,CAAC;AACrD,QAAQ,MAAM,KAAK,CAAC;AACpB,KAAK;AACL,SAAS;AACT,QAAQ,MAAM,EAAE,qBAAqB,EAAE,GAAG,MAAM,aAAa,CAAC,QAAQ,CAAC,CAAC;AACxE,QAAQ,OAAO;AACf,YAAY,qBAAqB,EAAE,EAAE,qBAAqB,EAAE;AAC5D,YAAY,SAAS,EAAE,aAAa,CAAC,QAAQ,CAAC;AAC9C,SAAS,CAAC;AACV,KAAK;AACL,CAAC,CAAC;AACF;AACA;AACA;AACY,MAAC,gBAAgB,GAAG,iBAAiB,CAAC,oBAAoB,EAAE,0BAA0B,EAAE,4BAA4B,EAAE,aAAa;;;;"}
|
|
@@ -21,4 +21,4 @@ export declare const putEvents: (config: {
|
|
|
21
21
|
uriEscapePath?: boolean | undefined;
|
|
22
22
|
credentials: import("@smithy/types/dist-types/identity/awsCredentialIdentity").AwsCredentialIdentity | (() => Promise<import("@smithy/types/dist-types/identity/awsCredentialIdentity").AwsCredentialIdentity>);
|
|
23
23
|
region: string;
|
|
24
|
-
}, input:
|
|
24
|
+
}, input: import("./types").PutEventsRequest) => Promise<PutEventsOutput>;
|
|
@@ -3,9 +3,9 @@ import { composeServiceApi } from '../../clients/internal/composeServiceApi.mjs'
|
|
|
3
3
|
import { extendedEncodeURIComponent } from '../../clients/middleware/signing/utils/extendedEncodeURIComponent.mjs';
|
|
4
4
|
import { parseMetadata } from '../../clients/serde/responseInfo.mjs';
|
|
5
5
|
import { parseJsonError, parseJsonBody } from '../../clients/serde/json.mjs';
|
|
6
|
+
import { AmplifyUrl } from '../../utils/amplifyUrl/index.mjs';
|
|
6
7
|
import { defaultConfig, getSharedHeaders } from './base.mjs';
|
|
7
8
|
import { assert, PinpointValidationErrorCode } from './errorHelpers.mjs';
|
|
8
|
-
import { AmplifyUrl } from '../../utils/amplifyUrl/index.mjs';
|
|
9
9
|
|
|
10
10
|
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
11
11
|
// SPDX-License-Identifier: Apache-2.0
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"putEvents.mjs","sources":["../../../../src/awsClients/pinpoint/putEvents.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { authenticatedHandler } from '../../clients/handlers/authenticated';\nimport { composeServiceApi } from '../../clients/internal/composeServiceApi';\nimport { extendedEncodeURIComponent } from '../../clients/middleware/signing/utils/extendedEncodeURIComponent';\nimport { parseJsonBody, parseJsonError, parseMetadata, } from '../../clients/serde';\nimport {
|
|
1
|
+
{"version":3,"file":"putEvents.mjs","sources":["../../../../src/awsClients/pinpoint/putEvents.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { authenticatedHandler } from '../../clients/handlers/authenticated';\nimport { composeServiceApi } from '../../clients/internal/composeServiceApi';\nimport { extendedEncodeURIComponent } from '../../clients/middleware/signing/utils/extendedEncodeURIComponent';\nimport { parseJsonBody, parseJsonError, parseMetadata, } from '../../clients/serde';\nimport { AmplifyUrl } from '../../utils/amplifyUrl';\nimport { defaultConfig, getSharedHeaders } from './base';\nimport { PinpointValidationErrorCode, assert } from './errorHelpers';\nconst putEventsSerializer = ({ ApplicationId, EventsRequest }, endpoint) => {\n assert(!!ApplicationId, PinpointValidationErrorCode.NoAppId);\n const headers = getSharedHeaders();\n const url = new AmplifyUrl(endpoint.url);\n url.pathname = `v1/apps/${extendedEncodeURIComponent(ApplicationId)}/events`;\n const body = JSON.stringify(EventsRequest ?? {});\n return { method: 'POST', headers, url, body };\n};\nconst putEventsDeserializer = async (response) => {\n if (response.statusCode >= 300) {\n const error = await parseJsonError(response);\n throw error;\n }\n else {\n const { Results } = await parseJsonBody(response);\n return {\n EventsResponse: { Results },\n $metadata: parseMetadata(response),\n };\n }\n};\n/**\n * @internal\n */\nexport const putEvents = composeServiceApi(authenticatedHandler, putEventsSerializer, putEventsDeserializer, defaultConfig);\n"],"names":[],"mappings":";;;;;;;;;AAAA;AACA;AAQA,MAAM,mBAAmB,GAAG,CAAC,EAAE,aAAa,EAAE,aAAa,EAAE,EAAE,QAAQ,KAAK;AAC5E,IAAI,MAAM,CAAC,CAAC,CAAC,aAAa,EAAE,2BAA2B,CAAC,OAAO,CAAC,CAAC;AACjE,IAAI,MAAM,OAAO,GAAG,gBAAgB,EAAE,CAAC;AACvC,IAAI,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;AAC7C,IAAI,GAAG,CAAC,QAAQ,GAAG,CAAC,QAAQ,EAAE,0BAA0B,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,CAAC;AACjF,IAAI,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,aAAa,IAAI,EAAE,CAAC,CAAC;AACrD,IAAI,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC;AAClD,CAAC,CAAC;AACF,MAAM,qBAAqB,GAAG,OAAO,QAAQ,KAAK;AAClD,IAAI,IAAI,QAAQ,CAAC,UAAU,IAAI,GAAG,EAAE;AACpC,QAAQ,MAAM,KAAK,GAAG,MAAM,cAAc,CAAC,QAAQ,CAAC,CAAC;AACrD,QAAQ,MAAM,KAAK,CAAC;AACpB,KAAK;AACL,SAAS;AACT,QAAQ,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,aAAa,CAAC,QAAQ,CAAC,CAAC;AAC1D,QAAQ,OAAO;AACf,YAAY,cAAc,EAAE,EAAE,OAAO,EAAE;AACvC,YAAY,SAAS,EAAE,aAAa,CAAC,QAAQ,CAAC;AAC9C,SAAS,CAAC;AACV,KAAK;AACL,CAAC,CAAC;AACF;AACA;AACA;AACY,MAAC,SAAS,GAAG,iBAAiB,CAAC,oBAAoB,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,aAAa;;;;"}
|