@aws-amplify/notifications 1.6.6-unstable.7762f1a.0 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -0
- package/in-app-messaging/package.json +7 -0
- package/in-app-messaging/pinpoint/package.json +7 -0
- package/lib/{common/eventListeners/index.d.ts → eventListeners/eventListeners.d.ts} +2 -2
- package/lib/eventListeners/eventListeners.js +38 -0
- package/lib/eventListeners/index.d.ts +2 -0
- package/lib/eventListeners/index.js +9 -0
- package/lib/eventListeners/types.d.ts +10 -0
- package/lib/{InAppMessaging/SessionTracker → eventListeners}/types.js +0 -1
- package/lib/inAppMessaging/errors/InAppMessagingError.d.ts +7 -0
- package/lib/inAppMessaging/errors/InAppMessagingError.js +19 -0
- package/lib/inAppMessaging/errors/assertServiceError.d.ts +2 -0
- package/lib/inAppMessaging/errors/assertServiceError.js +19 -0
- package/lib/inAppMessaging/errors/assertValidationError.d.ts +5 -0
- package/lib/inAppMessaging/errors/assertValidationError.js +17 -0
- package/lib/inAppMessaging/errors/index.d.ts +4 -0
- package/lib/inAppMessaging/errors/index.js +14 -0
- package/lib/inAppMessaging/errors/validation.d.ts +8 -0
- package/lib/inAppMessaging/errors/validation.js +27 -0
- package/lib/inAppMessaging/index.d.ts +2 -0
- package/lib/inAppMessaging/index.js +17 -0
- package/lib/inAppMessaging/providers/pinpoint/apis/clearMessages.d.ts +13 -0
- package/lib/inAppMessaging/providers/pinpoint/apis/clearMessages.js +26 -0
- package/lib/inAppMessaging/providers/pinpoint/apis/dispatchEvent.d.ts +26 -0
- package/lib/inAppMessaging/providers/pinpoint/apis/dispatchEvent.js +56 -0
- package/lib/inAppMessaging/providers/pinpoint/apis/identifyUser.d.ts +51 -0
- package/lib/inAppMessaging/providers/pinpoint/apis/identifyUser.js +79 -0
- package/lib/inAppMessaging/providers/pinpoint/apis/index.d.ts +11 -0
- package/lib/inAppMessaging/providers/pinpoint/apis/index.js +27 -0
- package/lib/inAppMessaging/providers/pinpoint/apis/initializeInAppMessaging.d.ts +12 -0
- package/lib/inAppMessaging/providers/pinpoint/apis/initializeInAppMessaging.js +57 -0
- package/lib/inAppMessaging/providers/pinpoint/apis/notifyMessageInteraction.d.ts +16 -0
- package/lib/inAppMessaging/providers/pinpoint/apis/notifyMessageInteraction.js +26 -0
- package/lib/inAppMessaging/providers/pinpoint/apis/onMessageActionTaken.d.ts +18 -0
- package/lib/inAppMessaging/providers/pinpoint/apis/onMessageActionTaken.js +27 -0
- package/lib/inAppMessaging/providers/pinpoint/apis/onMessageDismissed.d.ts +18 -0
- package/lib/inAppMessaging/providers/pinpoint/apis/onMessageDismissed.js +27 -0
- package/lib/inAppMessaging/providers/pinpoint/apis/onMessageDisplayed.d.ts +18 -0
- package/lib/inAppMessaging/providers/pinpoint/apis/onMessageDisplayed.js +27 -0
- package/lib/inAppMessaging/providers/pinpoint/apis/onMessageReceived.d.ts +18 -0
- package/lib/inAppMessaging/providers/pinpoint/apis/onMessageReceived.js +27 -0
- package/lib/inAppMessaging/providers/pinpoint/apis/setConflictHandler.d.ts +32 -0
- package/lib/inAppMessaging/providers/pinpoint/apis/setConflictHandler.js +65 -0
- package/lib/inAppMessaging/providers/pinpoint/apis/syncMessages.d.ts +16 -0
- package/lib/inAppMessaging/providers/pinpoint/apis/syncMessages.js +69 -0
- package/lib/inAppMessaging/providers/pinpoint/index.d.ts +2 -0
- package/lib/inAppMessaging/providers/pinpoint/index.js +17 -0
- package/lib/inAppMessaging/providers/pinpoint/types/index.d.ts +4 -0
- package/lib/{InAppMessaging → inAppMessaging/providers/pinpoint/types}/index.js +2 -4
- package/lib/inAppMessaging/providers/pinpoint/types/inputs.d.ts +37 -0
- package/lib/{PushNotification/Platform/types.js → inAppMessaging/providers/pinpoint/types/inputs.js} +0 -1
- package/lib/inAppMessaging/providers/pinpoint/types/options.d.ts +5 -0
- package/lib/{common/AWSPinpointProviderCommon/types.js → inAppMessaging/providers/pinpoint/types/options.js} +0 -1
- package/lib/inAppMessaging/providers/pinpoint/types/outputs.d.ts +17 -0
- package/lib/{common/eventListeners/types.js → inAppMessaging/providers/pinpoint/types/outputs.js} +0 -1
- package/lib/inAppMessaging/providers/pinpoint/types/types.d.ts +19 -0
- package/lib/inAppMessaging/providers/pinpoint/types/types.js +11 -0
- package/lib/inAppMessaging/providers/pinpoint/utils/constants.d.ts +4 -0
- package/lib/inAppMessaging/providers/pinpoint/utils/constants.js +9 -0
- package/lib/{InAppMessaging/Providers/AWSPinpointProvider/utils.d.ts → inAppMessaging/providers/pinpoint/utils/helpers.d.ts} +6 -7
- package/lib/inAppMessaging/providers/pinpoint/utils/helpers.js +264 -0
- package/lib/inAppMessaging/providers/pinpoint/utils/index.d.ts +5 -0
- package/lib/inAppMessaging/providers/pinpoint/utils/index.js +20 -0
- package/lib/inAppMessaging/providers/pinpoint/utils/messageProcessingHelpers.d.ts +6 -0
- package/lib/inAppMessaging/providers/pinpoint/utils/messageProcessingHelpers.js +169 -0
- package/lib/inAppMessaging/providers/pinpoint/utils/resolveConfig.d.ts +7 -0
- package/lib/inAppMessaging/providers/pinpoint/utils/resolveConfig.js +17 -0
- package/lib/inAppMessaging/providers/pinpoint/utils/resolveCredentials.d.ts +7 -0
- package/lib/inAppMessaging/providers/pinpoint/utils/resolveCredentials.js +16 -0
- package/lib/inAppMessaging/providers/pinpoint/utils/userAgent.d.ts +4 -0
- package/lib/inAppMessaging/providers/pinpoint/utils/userAgent.js +20 -0
- package/lib/inAppMessaging/types/event.d.ts +6 -0
- package/lib/inAppMessaging/types/event.js +4 -0
- package/lib/inAppMessaging/types/index.d.ts +4 -0
- package/lib/inAppMessaging/types/index.js +4 -0
- package/lib/inAppMessaging/types/inputs.d.ts +19 -0
- package/lib/inAppMessaging/types/inputs.js +4 -0
- package/lib/inAppMessaging/types/message.d.ts +44 -0
- package/lib/inAppMessaging/types/message.js +4 -0
- package/lib/inAppMessaging/types/options.d.ts +4 -0
- package/lib/inAppMessaging/types/options.js +4 -0
- package/lib/inAppMessaging/utils/index.d.ts +1 -0
- package/lib/inAppMessaging/utils/index.js +9 -0
- package/lib/inAppMessaging/utils/statusHelpers.d.ts +13 -0
- package/lib/inAppMessaging/utils/statusHelpers.js +27 -0
- package/lib/index.d.ts +0 -6
- package/lib/index.js +0 -10
- package/lib/pushNotifications/errors/PushNotificationError.d.ts +4 -0
- package/lib/pushNotifications/errors/PushNotificationError.js +16 -0
- package/lib/pushNotifications/errors/errorHelpers.d.ts +9 -0
- package/lib/pushNotifications/errors/errorHelpers.js +35 -0
- package/lib/pushNotifications/errors/index.d.ts +2 -0
- package/lib/pushNotifications/errors/index.js +10 -0
- package/lib/pushNotifications/index.d.ts +3 -0
- package/lib/pushNotifications/index.js +19 -0
- package/lib/pushNotifications/providers/pinpoint/apis/getBadgeCount.d.ts +14 -0
- package/lib/pushNotifications/providers/pinpoint/apis/getBadgeCount.js +22 -0
- package/lib/pushNotifications/providers/pinpoint/apis/getBadgeCount.native.d.ts +2 -0
- package/lib/pushNotifications/providers/pinpoint/apis/getBadgeCount.native.js +13 -0
- package/lib/pushNotifications/providers/pinpoint/apis/getLaunchNotification.d.ts +18 -0
- package/lib/pushNotifications/providers/pinpoint/apis/getLaunchNotification.js +26 -0
- package/lib/pushNotifications/providers/pinpoint/apis/getLaunchNotification.native.d.ts +2 -0
- package/lib/pushNotifications/providers/pinpoint/apis/getLaunchNotification.native.js +13 -0
- package/lib/pushNotifications/providers/pinpoint/apis/getPermissionStatus.d.ts +27 -0
- package/lib/pushNotifications/providers/pinpoint/apis/getPermissionStatus.js +35 -0
- package/lib/pushNotifications/providers/pinpoint/apis/getPermissionStatus.native.d.ts +2 -0
- package/lib/pushNotifications/providers/pinpoint/apis/getPermissionStatus.native.js +13 -0
- package/lib/pushNotifications/providers/pinpoint/apis/identifyUser.d.ts +53 -0
- package/lib/pushNotifications/providers/pinpoint/apis/identifyUser.js +61 -0
- package/lib/pushNotifications/providers/pinpoint/apis/identifyUser.native.d.ts +2 -0
- package/lib/pushNotifications/providers/pinpoint/apis/identifyUser.native.js +31 -0
- package/lib/pushNotifications/providers/pinpoint/apis/index.d.ts +11 -0
- package/lib/pushNotifications/providers/pinpoint/apis/index.js +27 -0
- package/lib/pushNotifications/providers/pinpoint/apis/initializePushNotifications.d.ts +17 -0
- package/lib/pushNotifications/providers/pinpoint/apis/initializePushNotifications.js +25 -0
- package/lib/pushNotifications/providers/pinpoint/apis/initializePushNotifications.native.d.ts +1 -0
- package/lib/pushNotifications/providers/pinpoint/apis/initializePushNotifications.native.js +133 -0
- package/lib/pushNotifications/providers/pinpoint/apis/onNotificationOpened.d.ts +27 -0
- package/lib/pushNotifications/providers/pinpoint/apis/onNotificationOpened.js +35 -0
- package/lib/pushNotifications/providers/pinpoint/apis/onNotificationOpened.native.d.ts +2 -0
- package/lib/pushNotifications/providers/pinpoint/apis/onNotificationOpened.native.js +12 -0
- package/lib/pushNotifications/providers/pinpoint/apis/onNotificationReceivedInBackground.d.ts +43 -0
- package/lib/pushNotifications/providers/pinpoint/apis/onNotificationReceivedInBackground.js +51 -0
- package/lib/pushNotifications/providers/pinpoint/apis/onNotificationReceivedInBackground.native.d.ts +2 -0
- package/lib/pushNotifications/providers/pinpoint/apis/onNotificationReceivedInBackground.native.js +12 -0
- package/lib/pushNotifications/providers/pinpoint/apis/onNotificationReceivedInForeground.d.ts +27 -0
- package/lib/pushNotifications/providers/pinpoint/apis/onNotificationReceivedInForeground.js +35 -0
- package/lib/pushNotifications/providers/pinpoint/apis/onNotificationReceivedInForeground.native.d.ts +2 -0
- package/lib/pushNotifications/providers/pinpoint/apis/onNotificationReceivedInForeground.native.js +12 -0
- package/lib/pushNotifications/providers/pinpoint/apis/onTokenReceived.d.ts +28 -0
- package/lib/pushNotifications/providers/pinpoint/apis/onTokenReceived.js +36 -0
- package/lib/pushNotifications/providers/pinpoint/apis/onTokenReceived.native.d.ts +2 -0
- package/lib/pushNotifications/providers/pinpoint/apis/onTokenReceived.native.js +12 -0
- package/lib/pushNotifications/providers/pinpoint/apis/requestPermissions.d.ts +32 -0
- package/lib/pushNotifications/providers/pinpoint/apis/requestPermissions.js +40 -0
- package/lib/pushNotifications/providers/pinpoint/apis/requestPermissions.native.d.ts +2 -0
- package/lib/pushNotifications/providers/pinpoint/apis/requestPermissions.native.js +13 -0
- package/lib/pushNotifications/providers/pinpoint/apis/setBadgeCount.d.ts +14 -0
- package/lib/pushNotifications/providers/pinpoint/apis/setBadgeCount.js +22 -0
- package/lib/pushNotifications/providers/pinpoint/apis/setBadgeCount.native.d.ts +2 -0
- package/lib/pushNotifications/providers/pinpoint/apis/setBadgeCount.native.js +13 -0
- package/lib/pushNotifications/providers/pinpoint/index.d.ts +3 -0
- package/lib/pushNotifications/providers/pinpoint/index.js +17 -0
- package/lib/pushNotifications/providers/pinpoint/types/analytics.d.ts +6 -0
- package/lib/pushNotifications/providers/pinpoint/types/analytics.js +4 -0
- package/lib/pushNotifications/providers/pinpoint/types/apis.d.ts +13 -0
- package/lib/pushNotifications/providers/pinpoint/types/apis.js +4 -0
- package/lib/pushNotifications/providers/pinpoint/types/index.d.ts +6 -0
- package/lib/pushNotifications/providers/pinpoint/types/index.js +4 -0
- package/lib/pushNotifications/providers/pinpoint/types/inputs.d.ts +9 -0
- package/lib/pushNotifications/providers/pinpoint/types/inputs.js +4 -0
- package/lib/pushNotifications/providers/pinpoint/types/options.d.ts +5 -0
- package/lib/pushNotifications/providers/pinpoint/types/options.js +4 -0
- package/lib/pushNotifications/providers/pinpoint/types/outputs.d.ts +9 -0
- package/lib/pushNotifications/providers/pinpoint/types/outputs.js +4 -0
- package/lib/pushNotifications/providers/pinpoint/types/pushNotifications.d.ts +2 -0
- package/lib/pushNotifications/providers/pinpoint/types/pushNotifications.js +4 -0
- package/lib/pushNotifications/providers/pinpoint/utils/createMessageEventRecorder.d.ts +6 -0
- package/lib/pushNotifications/providers/pinpoint/utils/createMessageEventRecorder.js +43 -0
- package/lib/pushNotifications/providers/pinpoint/utils/getAnalyticsEvent.d.ts +7 -0
- package/lib/pushNotifications/providers/pinpoint/utils/getAnalyticsEvent.js +56 -0
- package/lib/pushNotifications/providers/pinpoint/utils/getChannelType.d.ts +5 -0
- package/lib/pushNotifications/providers/pinpoint/utils/getChannelType.js +25 -0
- package/lib/pushNotifications/providers/pinpoint/utils/index.d.ts +4 -0
- package/lib/pushNotifications/providers/pinpoint/utils/index.js +13 -0
- package/lib/pushNotifications/providers/pinpoint/utils/resolveConfig.d.ts +7 -0
- package/lib/pushNotifications/providers/pinpoint/utils/resolveConfig.js +17 -0
- package/lib/pushNotifications/types/errors.d.ts +3 -0
- package/lib/pushNotifications/types/errors.js +9 -0
- package/lib/pushNotifications/types/index.d.ts +6 -0
- package/lib/pushNotifications/types/index.js +24 -0
- package/lib/pushNotifications/types/inputs.d.ts +24 -0
- package/lib/pushNotifications/types/inputs.js +4 -0
- package/lib/pushNotifications/types/module.d.ts +31 -0
- package/lib/pushNotifications/types/module.js +4 -0
- package/lib/pushNotifications/types/options.d.ts +4 -0
- package/lib/pushNotifications/types/options.js +4 -0
- package/lib/pushNotifications/types/outputs.d.ts +10 -0
- package/lib/pushNotifications/types/outputs.js +4 -0
- package/lib/pushNotifications/types/pushNotifications.d.ts +4 -0
- package/lib/pushNotifications/types/pushNotifications.js +4 -0
- package/lib/pushNotifications/utils/getPushNotificationUserAgentString.d.ts +2 -0
- package/lib/pushNotifications/utils/getPushNotificationUserAgentString.js +11 -0
- package/lib/pushNotifications/utils/index.d.ts +4 -0
- package/lib/pushNotifications/utils/index.js +15 -0
- package/lib/pushNotifications/utils/initializationManager.d.ts +12 -0
- package/lib/pushNotifications/utils/initializationManager.js +22 -0
- package/lib/pushNotifications/utils/resolveCredentials.d.ts +7 -0
- package/lib/pushNotifications/utils/resolveCredentials.js +16 -0
- package/lib/pushNotifications/utils/tokenManager.d.ts +12 -0
- package/lib/pushNotifications/utils/tokenManager.js +22 -0
- package/lib/tsconfig.tsbuildinfo +1 -0
- package/lib-esm/{common/eventListeners/index.d.ts → eventListeners/eventListeners.d.ts} +2 -2
- package/lib-esm/eventListeners/eventListeners.js +32 -0
- package/lib-esm/eventListeners/index.d.ts +2 -0
- package/lib-esm/{common → eventListeners}/index.js +0 -3
- package/lib-esm/eventListeners/types.d.ts +10 -0
- package/lib-esm/{PushNotification/Platform → eventListeners}/types.js +1 -1
- package/lib-esm/inAppMessaging/errors/InAppMessagingError.d.ts +7 -0
- package/lib-esm/inAppMessaging/errors/InAppMessagingError.js +15 -0
- package/lib-esm/inAppMessaging/errors/assertServiceError.d.ts +2 -0
- package/lib-esm/inAppMessaging/errors/assertServiceError.js +15 -0
- package/lib-esm/inAppMessaging/errors/assertValidationError.d.ts +5 -0
- package/lib-esm/inAppMessaging/errors/assertValidationError.js +13 -0
- package/lib-esm/inAppMessaging/errors/index.d.ts +4 -0
- package/lib-esm/inAppMessaging/errors/index.js +6 -0
- package/lib-esm/inAppMessaging/errors/validation.d.ts +8 -0
- package/lib-esm/inAppMessaging/errors/validation.js +24 -0
- package/lib-esm/inAppMessaging/index.d.ts +2 -0
- package/lib-esm/inAppMessaging/index.js +3 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/apis/clearMessages.d.ts +13 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/apis/clearMessages.js +22 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/apis/dispatchEvent.d.ts +26 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/apis/dispatchEvent.js +49 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/apis/identifyUser.d.ts +51 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/apis/identifyUser.js +75 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/apis/index.d.ts +11 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/apis/index.js +13 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/apis/initializeInAppMessaging.d.ts +12 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/apis/initializeInAppMessaging.js +53 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/apis/notifyMessageInteraction.d.ts +16 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/apis/notifyMessageInteraction.js +22 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/apis/onMessageActionTaken.d.ts +18 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/apis/onMessageActionTaken.js +23 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/apis/onMessageDismissed.d.ts +18 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/apis/onMessageDismissed.js +23 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/apis/onMessageDisplayed.d.ts +18 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/apis/onMessageDisplayed.js +23 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/apis/onMessageReceived.d.ts +18 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/apis/onMessageReceived.js +23 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/apis/setConflictHandler.d.ts +32 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/apis/setConflictHandler.js +61 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/apis/syncMessages.d.ts +16 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/apis/syncMessages.js +65 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/index.d.ts +2 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/index.js +3 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/types/index.d.ts +4 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/types/index.js +3 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/types/inputs.d.ts +37 -0
- package/lib-esm/{common/AWSPinpointProviderCommon/types.js → inAppMessaging/providers/pinpoint/types/inputs.js} +1 -1
- package/lib-esm/inAppMessaging/providers/pinpoint/types/options.d.ts +5 -0
- package/lib-esm/{common/eventListeners/types.js → inAppMessaging/providers/pinpoint/types/options.js} +1 -1
- package/lib-esm/inAppMessaging/providers/pinpoint/types/outputs.d.ts +17 -0
- package/lib-esm/{InAppMessaging/SessionTracker/types.js → inAppMessaging/providers/pinpoint/types/outputs.js} +1 -1
- package/lib-esm/inAppMessaging/providers/pinpoint/types/types.d.ts +19 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/types/types.js +8 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/utils/constants.d.ts +4 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/utils/constants.js +6 -0
- package/lib-esm/{InAppMessaging/Providers/AWSPinpointProvider/utils.d.ts → inAppMessaging/providers/pinpoint/utils/helpers.d.ts} +6 -7
- package/lib-esm/inAppMessaging/providers/pinpoint/utils/helpers.js +246 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/utils/index.d.ts +5 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/utils/index.js +7 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/utils/messageProcessingHelpers.d.ts +6 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/utils/messageProcessingHelpers.js +163 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/utils/resolveConfig.d.ts +7 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/utils/resolveConfig.js +13 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/utils/resolveCredentials.d.ts +7 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/utils/resolveCredentials.js +12 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/utils/userAgent.d.ts +4 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/utils/userAgent.js +15 -0
- package/lib-esm/inAppMessaging/types/event.d.ts +6 -0
- package/lib-esm/inAppMessaging/types/event.js +3 -0
- package/lib-esm/inAppMessaging/types/index.d.ts +4 -0
- package/lib-esm/inAppMessaging/types/index.js +3 -0
- package/lib-esm/inAppMessaging/types/inputs.d.ts +19 -0
- package/lib-esm/inAppMessaging/types/inputs.js +3 -0
- package/lib-esm/inAppMessaging/types/message.d.ts +44 -0
- package/lib-esm/inAppMessaging/types/message.js +3 -0
- package/lib-esm/inAppMessaging/types/options.d.ts +4 -0
- package/lib-esm/inAppMessaging/types/options.js +3 -0
- package/lib-esm/inAppMessaging/utils/index.d.ts +1 -0
- package/lib-esm/inAppMessaging/utils/index.js +3 -0
- package/lib-esm/inAppMessaging/utils/statusHelpers.d.ts +13 -0
- package/lib-esm/inAppMessaging/utils/statusHelpers.js +21 -0
- package/lib-esm/index.d.ts +0 -6
- package/lib-esm/index.js +1 -5
- package/lib-esm/pushNotifications/errors/PushNotificationError.d.ts +4 -0
- package/lib-esm/pushNotifications/errors/PushNotificationError.js +12 -0
- package/lib-esm/pushNotifications/errors/errorHelpers.d.ts +9 -0
- package/lib-esm/pushNotifications/errors/errorHelpers.js +31 -0
- package/lib-esm/pushNotifications/errors/index.d.ts +2 -0
- package/lib-esm/pushNotifications/errors/index.js +4 -0
- package/lib-esm/pushNotifications/index.d.ts +3 -0
- package/lib-esm/pushNotifications/index.js +4 -0
- package/lib-esm/pushNotifications/providers/pinpoint/apis/getBadgeCount.d.ts +14 -0
- package/lib-esm/pushNotifications/providers/pinpoint/apis/getBadgeCount.js +18 -0
- package/lib-esm/pushNotifications/providers/pinpoint/apis/getBadgeCount.native.d.ts +2 -0
- package/lib-esm/pushNotifications/providers/pinpoint/apis/getBadgeCount.native.js +9 -0
- package/lib-esm/pushNotifications/providers/pinpoint/apis/getLaunchNotification.d.ts +18 -0
- package/lib-esm/pushNotifications/providers/pinpoint/apis/getLaunchNotification.js +22 -0
- package/lib-esm/pushNotifications/providers/pinpoint/apis/getLaunchNotification.native.d.ts +2 -0
- package/lib-esm/pushNotifications/providers/pinpoint/apis/getLaunchNotification.native.js +9 -0
- package/lib-esm/pushNotifications/providers/pinpoint/apis/getPermissionStatus.d.ts +27 -0
- package/lib-esm/pushNotifications/providers/pinpoint/apis/getPermissionStatus.js +31 -0
- package/lib-esm/pushNotifications/providers/pinpoint/apis/getPermissionStatus.native.d.ts +2 -0
- package/lib-esm/pushNotifications/providers/pinpoint/apis/getPermissionStatus.native.js +9 -0
- package/lib-esm/pushNotifications/providers/pinpoint/apis/identifyUser.d.ts +53 -0
- package/lib-esm/pushNotifications/providers/pinpoint/apis/identifyUser.js +57 -0
- package/lib-esm/pushNotifications/providers/pinpoint/apis/identifyUser.native.d.ts +2 -0
- package/lib-esm/pushNotifications/providers/pinpoint/apis/identifyUser.native.js +27 -0
- package/lib-esm/pushNotifications/providers/pinpoint/apis/index.d.ts +11 -0
- package/lib-esm/pushNotifications/providers/pinpoint/apis/index.js +13 -0
- package/lib-esm/pushNotifications/providers/pinpoint/apis/initializePushNotifications.d.ts +17 -0
- package/lib-esm/pushNotifications/providers/pinpoint/apis/initializePushNotifications.js +21 -0
- package/lib-esm/pushNotifications/providers/pinpoint/apis/initializePushNotifications.native.d.ts +1 -0
- package/lib-esm/pushNotifications/providers/pinpoint/apis/initializePushNotifications.native.js +129 -0
- package/lib-esm/pushNotifications/providers/pinpoint/apis/onNotificationOpened.d.ts +27 -0
- package/lib-esm/pushNotifications/providers/pinpoint/apis/onNotificationOpened.js +31 -0
- package/lib-esm/pushNotifications/providers/pinpoint/apis/onNotificationOpened.native.d.ts +2 -0
- package/lib-esm/pushNotifications/providers/pinpoint/apis/onNotificationOpened.native.js +8 -0
- package/lib-esm/pushNotifications/providers/pinpoint/apis/onNotificationReceivedInBackground.d.ts +43 -0
- package/lib-esm/pushNotifications/providers/pinpoint/apis/onNotificationReceivedInBackground.js +47 -0
- package/lib-esm/pushNotifications/providers/pinpoint/apis/onNotificationReceivedInBackground.native.d.ts +2 -0
- package/lib-esm/pushNotifications/providers/pinpoint/apis/onNotificationReceivedInBackground.native.js +8 -0
- package/lib-esm/pushNotifications/providers/pinpoint/apis/onNotificationReceivedInForeground.d.ts +27 -0
- package/lib-esm/pushNotifications/providers/pinpoint/apis/onNotificationReceivedInForeground.js +31 -0
- package/lib-esm/pushNotifications/providers/pinpoint/apis/onNotificationReceivedInForeground.native.d.ts +2 -0
- package/lib-esm/pushNotifications/providers/pinpoint/apis/onNotificationReceivedInForeground.native.js +8 -0
- package/lib-esm/pushNotifications/providers/pinpoint/apis/onTokenReceived.d.ts +28 -0
- package/lib-esm/pushNotifications/providers/pinpoint/apis/onTokenReceived.js +32 -0
- package/lib-esm/pushNotifications/providers/pinpoint/apis/onTokenReceived.native.d.ts +2 -0
- package/lib-esm/pushNotifications/providers/pinpoint/apis/onTokenReceived.native.js +8 -0
- package/lib-esm/pushNotifications/providers/pinpoint/apis/requestPermissions.d.ts +32 -0
- package/lib-esm/pushNotifications/providers/pinpoint/apis/requestPermissions.js +36 -0
- package/lib-esm/pushNotifications/providers/pinpoint/apis/requestPermissions.native.d.ts +2 -0
- package/lib-esm/pushNotifications/providers/pinpoint/apis/requestPermissions.native.js +9 -0
- package/lib-esm/pushNotifications/providers/pinpoint/apis/setBadgeCount.d.ts +14 -0
- package/lib-esm/pushNotifications/providers/pinpoint/apis/setBadgeCount.js +18 -0
- package/lib-esm/pushNotifications/providers/pinpoint/apis/setBadgeCount.native.d.ts +2 -0
- package/lib-esm/pushNotifications/providers/pinpoint/apis/setBadgeCount.native.js +9 -0
- package/lib-esm/pushNotifications/providers/pinpoint/index.d.ts +3 -0
- package/lib-esm/pushNotifications/providers/pinpoint/index.js +3 -0
- package/lib-esm/pushNotifications/providers/pinpoint/types/analytics.d.ts +6 -0
- package/lib-esm/pushNotifications/providers/pinpoint/types/analytics.js +3 -0
- package/lib-esm/pushNotifications/providers/pinpoint/types/apis.d.ts +13 -0
- package/lib-esm/pushNotifications/providers/pinpoint/types/apis.js +3 -0
- package/lib-esm/pushNotifications/providers/pinpoint/types/index.d.ts +6 -0
- package/lib-esm/pushNotifications/providers/pinpoint/types/index.js +3 -0
- package/lib-esm/pushNotifications/providers/pinpoint/types/inputs.d.ts +9 -0
- package/lib-esm/pushNotifications/providers/pinpoint/types/inputs.js +3 -0
- package/lib-esm/pushNotifications/providers/pinpoint/types/options.d.ts +5 -0
- package/lib-esm/pushNotifications/providers/pinpoint/types/options.js +3 -0
- package/lib-esm/pushNotifications/providers/pinpoint/types/outputs.d.ts +9 -0
- package/lib-esm/pushNotifications/providers/pinpoint/types/outputs.js +3 -0
- package/lib-esm/pushNotifications/providers/pinpoint/types/pushNotifications.d.ts +2 -0
- package/lib-esm/pushNotifications/providers/pinpoint/types/pushNotifications.js +3 -0
- package/lib-esm/pushNotifications/providers/pinpoint/utils/createMessageEventRecorder.d.ts +6 -0
- package/lib-esm/pushNotifications/providers/pinpoint/utils/createMessageEventRecorder.js +39 -0
- package/lib-esm/pushNotifications/providers/pinpoint/utils/getAnalyticsEvent.d.ts +7 -0
- package/lib-esm/pushNotifications/providers/pinpoint/utils/getAnalyticsEvent.js +52 -0
- package/lib-esm/pushNotifications/providers/pinpoint/utils/getChannelType.d.ts +5 -0
- package/lib-esm/pushNotifications/providers/pinpoint/utils/getChannelType.js +21 -0
- package/lib-esm/pushNotifications/providers/pinpoint/utils/index.d.ts +4 -0
- package/lib-esm/pushNotifications/providers/pinpoint/utils/index.js +6 -0
- package/lib-esm/pushNotifications/providers/pinpoint/utils/resolveConfig.d.ts +7 -0
- package/lib-esm/pushNotifications/providers/pinpoint/utils/resolveConfig.js +13 -0
- package/lib-esm/pushNotifications/types/errors.d.ts +3 -0
- package/lib-esm/pushNotifications/types/errors.js +6 -0
- package/lib-esm/pushNotifications/types/index.d.ts +6 -0
- package/lib-esm/pushNotifications/types/index.js +8 -0
- package/lib-esm/pushNotifications/types/inputs.d.ts +24 -0
- package/lib-esm/pushNotifications/types/inputs.js +3 -0
- package/lib-esm/pushNotifications/types/module.d.ts +31 -0
- package/lib-esm/pushNotifications/types/module.js +3 -0
- package/lib-esm/pushNotifications/types/options.d.ts +4 -0
- package/lib-esm/pushNotifications/types/options.js +3 -0
- package/lib-esm/pushNotifications/types/outputs.d.ts +10 -0
- package/lib-esm/pushNotifications/types/outputs.js +3 -0
- package/lib-esm/pushNotifications/types/pushNotifications.d.ts +4 -0
- package/lib-esm/pushNotifications/types/pushNotifications.js +3 -0
- package/lib-esm/pushNotifications/utils/getPushNotificationUserAgentString.d.ts +2 -0
- package/lib-esm/pushNotifications/utils/getPushNotificationUserAgentString.js +7 -0
- package/lib-esm/pushNotifications/utils/index.d.ts +4 -0
- package/lib-esm/pushNotifications/utils/index.js +6 -0
- package/lib-esm/pushNotifications/utils/initializationManager.d.ts +12 -0
- package/lib-esm/pushNotifications/utils/initializationManager.js +17 -0
- package/lib-esm/pushNotifications/utils/resolveCredentials.d.ts +7 -0
- package/lib-esm/pushNotifications/utils/resolveCredentials.js +12 -0
- package/lib-esm/pushNotifications/utils/tokenManager.d.ts +12 -0
- package/lib-esm/pushNotifications/utils/tokenManager.js +17 -0
- package/lib-esm/tsconfig.tsbuildinfo +1 -0
- package/package.json +104 -38
- package/push-notifications/package.json +7 -0
- package/push-notifications/pinpoint/package.json +7 -0
- package/src/{common/eventListeners/index.ts → eventListeners/eventListeners.ts} +5 -3
- package/src/{common → eventListeners}/index.ts +1 -3
- package/src/{common/eventListeners → eventListeners}/types.ts +6 -2
- package/src/inAppMessaging/errors/InAppMessagingError.ts +21 -0
- package/src/inAppMessaging/errors/assertServiceError.ts +24 -0
- package/src/inAppMessaging/errors/assertValidationError.ts +22 -0
- package/src/inAppMessaging/errors/index.ts +10 -0
- package/src/inAppMessaging/errors/validation.ts +29 -0
- package/src/inAppMessaging/index.ts +39 -0
- package/src/inAppMessaging/providers/pinpoint/apis/clearMessages.ts +26 -0
- package/src/inAppMessaging/providers/pinpoint/apis/dispatchEvent.ts +63 -0
- package/src/inAppMessaging/providers/pinpoint/apis/identifyUser.ts +94 -0
- package/src/inAppMessaging/providers/pinpoint/apis/index.ts +14 -0
- package/src/inAppMessaging/providers/pinpoint/apis/initializeInAppMessaging.ts +62 -0
- package/src/inAppMessaging/providers/pinpoint/apis/notifyMessageInteraction.ts +28 -0
- package/src/inAppMessaging/providers/pinpoint/apis/onMessageActionTaken.ts +29 -0
- package/src/inAppMessaging/providers/pinpoint/apis/onMessageDismissed.ts +29 -0
- package/src/inAppMessaging/providers/pinpoint/apis/onMessageDisplayed.ts +29 -0
- package/src/inAppMessaging/providers/pinpoint/apis/onMessageReceived.ts +29 -0
- package/src/inAppMessaging/providers/pinpoint/apis/setConflictHandler.ts +68 -0
- package/src/inAppMessaging/providers/pinpoint/apis/syncMessages.ts +88 -0
- package/src/inAppMessaging/providers/pinpoint/index.ts +31 -0
- package/src/inAppMessaging/providers/pinpoint/types/index.ts +29 -0
- package/src/inAppMessaging/providers/pinpoint/types/inputs.ts +58 -0
- package/src/inAppMessaging/providers/pinpoint/types/options.ts +9 -0
- package/src/inAppMessaging/providers/pinpoint/types/outputs.ts +24 -0
- package/src/{InAppMessaging/Providers/AWSPinpointProvider → inAppMessaging/providers/pinpoint/types}/types.ts +9 -1
- package/src/inAppMessaging/providers/pinpoint/utils/constants.ts +6 -0
- package/src/{InAppMessaging/Providers/AWSPinpointProvider/utils.ts → inAppMessaging/providers/pinpoint/utils/helpers.ts} +74 -58
- package/src/inAppMessaging/providers/pinpoint/utils/index.ts +18 -0
- package/src/inAppMessaging/providers/pinpoint/utils/messageProcessingHelpers.ts +210 -0
- package/src/inAppMessaging/providers/pinpoint/utils/resolveConfig.ts +19 -0
- package/src/inAppMessaging/providers/pinpoint/utils/resolveCredentials.ts +20 -0
- package/src/inAppMessaging/providers/pinpoint/utils/userAgent.ts +25 -0
- package/src/inAppMessaging/types/event.ts +14 -0
- package/src/{InAppMessaging → inAppMessaging/types}/index.ts +7 -8
- package/src/inAppMessaging/types/inputs.ts +27 -0
- package/src/inAppMessaging/types/message.ts +62 -0
- package/src/inAppMessaging/types/options.ts +7 -0
- package/src/{PushNotification/Providers → inAppMessaging/utils}/index.ts +5 -1
- package/src/inAppMessaging/utils/statusHelpers.ts +32 -0
- package/src/index.ts +0 -24
- package/src/pushNotifications/errors/PushNotificationError.ts +18 -0
- package/src/pushNotifications/errors/errorHelpers.ts +45 -0
- package/src/pushNotifications/errors/index.ts +5 -0
- package/src/pushNotifications/index.ts +32 -0
- package/src/pushNotifications/providers/pinpoint/apis/getBadgeCount.native.ts +13 -0
- package/src/pushNotifications/providers/pinpoint/apis/getBadgeCount.ts +21 -0
- package/src/pushNotifications/providers/pinpoint/apis/getLaunchNotification.native.ts +14 -0
- package/src/pushNotifications/providers/pinpoint/apis/getLaunchNotification.ts +26 -0
- package/src/pushNotifications/providers/pinpoint/apis/getPermissionStatus.native.ts +14 -0
- package/src/pushNotifications/providers/pinpoint/apis/getPermissionStatus.ts +34 -0
- package/src/pushNotifications/providers/pinpoint/apis/identifyUser.native.ts +39 -0
- package/src/pushNotifications/providers/pinpoint/apis/identifyUser.ts +62 -0
- package/src/pushNotifications/providers/pinpoint/apis/index.ts +14 -0
- package/src/pushNotifications/providers/pinpoint/apis/initializePushNotifications.native.ts +209 -0
- package/src/pushNotifications/providers/pinpoint/apis/initializePushNotifications.ts +24 -0
- package/src/pushNotifications/providers/pinpoint/apis/onNotificationOpened.native.ts +11 -0
- package/src/pushNotifications/providers/pinpoint/apis/onNotificationOpened.ts +39 -0
- package/src/pushNotifications/providers/pinpoint/apis/onNotificationReceivedInBackground.native.ts +12 -0
- package/src/pushNotifications/providers/pinpoint/apis/onNotificationReceivedInBackground.ts +56 -0
- package/src/pushNotifications/providers/pinpoint/apis/onNotificationReceivedInForeground.native.ts +12 -0
- package/src/pushNotifications/providers/pinpoint/apis/onNotificationReceivedInForeground.ts +40 -0
- package/src/pushNotifications/providers/pinpoint/apis/onTokenReceived.native.ts +11 -0
- package/src/pushNotifications/providers/pinpoint/apis/onTokenReceived.ts +39 -0
- package/src/pushNotifications/providers/pinpoint/apis/requestPermissions.native.ts +14 -0
- package/src/pushNotifications/providers/pinpoint/apis/requestPermissions.ts +39 -0
- package/src/pushNotifications/providers/pinpoint/apis/setBadgeCount.native.ts +13 -0
- package/src/pushNotifications/providers/pinpoint/apis/setBadgeCount.ts +21 -0
- package/src/pushNotifications/providers/pinpoint/index.ts +34 -0
- package/src/pushNotifications/providers/pinpoint/types/analytics.ts +14 -0
- package/src/pushNotifications/providers/pinpoint/types/apis.ts +54 -0
- package/src/pushNotifications/providers/pinpoint/types/index.ts +40 -0
- package/src/pushNotifications/providers/pinpoint/types/inputs.ts +31 -0
- package/src/pushNotifications/providers/pinpoint/types/options.ts +9 -0
- package/src/pushNotifications/providers/pinpoint/types/outputs.ts +34 -0
- package/src/pushNotifications/providers/pinpoint/types/pushNotifications.ts +6 -0
- package/src/pushNotifications/providers/pinpoint/utils/createMessageEventRecorder.ts +66 -0
- package/src/pushNotifications/providers/pinpoint/utils/getAnalyticsEvent.ts +66 -0
- package/src/pushNotifications/providers/pinpoint/utils/getChannelType.ts +25 -0
- package/src/pushNotifications/providers/pinpoint/utils/index.ts +7 -0
- package/src/pushNotifications/providers/pinpoint/utils/resolveConfig.ts +16 -0
- package/src/{InAppMessaging/Providers/index.ts → pushNotifications/types/errors.ts} +3 -1
- package/src/pushNotifications/types/index.ts +9 -0
- package/src/pushNotifications/types/inputs.ts +45 -0
- package/src/pushNotifications/types/module.ts +42 -0
- package/src/pushNotifications/types/options.ts +7 -0
- package/src/pushNotifications/types/outputs.ts +28 -0
- package/src/pushNotifications/types/pushNotifications.ts +17 -0
- package/src/pushNotifications/utils/getPushNotificationUserAgentString.ts +15 -0
- package/src/pushNotifications/utils/index.ts +7 -0
- package/src/pushNotifications/utils/initializationManager.ts +20 -0
- package/src/pushNotifications/utils/resolveCredentials.ts +14 -0
- package/src/pushNotifications/utils/tokenManager.ts +20 -0
- package/lib/.tsbuildinfo +0 -3
- package/lib/InAppMessaging/InAppMessaging.d.ts +0 -57
- package/lib/InAppMessaging/InAppMessaging.js +0 -340
- package/lib/InAppMessaging/InAppMessaging.js.map +0 -1
- package/lib/InAppMessaging/Providers/AWSPinpointProvider/index.d.ts +0 -31
- package/lib/InAppMessaging/Providers/AWSPinpointProvider/index.js +0 -266
- package/lib/InAppMessaging/Providers/AWSPinpointProvider/index.js.map +0 -1
- package/lib/InAppMessaging/Providers/AWSPinpointProvider/types.d.ts +0 -16
- package/lib/InAppMessaging/Providers/AWSPinpointProvider/types.js +0 -11
- package/lib/InAppMessaging/Providers/AWSPinpointProvider/types.js.map +0 -1
- package/lib/InAppMessaging/Providers/AWSPinpointProvider/utils.js +0 -247
- package/lib/InAppMessaging/Providers/AWSPinpointProvider/utils.js.map +0 -1
- package/lib/InAppMessaging/Providers/index.d.ts +0 -1
- package/lib/InAppMessaging/Providers/index.js +0 -7
- package/lib/InAppMessaging/Providers/index.js.map +0 -1
- package/lib/InAppMessaging/SessionTracker/SessionTracker.d.ts +0 -9
- package/lib/InAppMessaging/SessionTracker/SessionTracker.js +0 -68
- package/lib/InAppMessaging/SessionTracker/SessionTracker.js.map +0 -1
- package/lib/InAppMessaging/SessionTracker/SessionTracker.native.d.ts +0 -10
- package/lib/InAppMessaging/SessionTracker/SessionTracker.native.js +0 -53
- package/lib/InAppMessaging/SessionTracker/SessionTracker.native.js.map +0 -1
- package/lib/InAppMessaging/SessionTracker/index.d.ts +0 -3
- package/lib/InAppMessaging/SessionTracker/index.js +0 -8
- package/lib/InAppMessaging/SessionTracker/index.js.map +0 -1
- package/lib/InAppMessaging/SessionTracker/types.d.ts +0 -6
- package/lib/InAppMessaging/SessionTracker/types.js.map +0 -1
- package/lib/InAppMessaging/index.d.ts +0 -2
- package/lib/InAppMessaging/index.js.map +0 -1
- package/lib/InAppMessaging/types.d.ts +0 -87
- package/lib/InAppMessaging/types.js +0 -12
- package/lib/InAppMessaging/types.js.map +0 -1
- package/lib/Notifications.d.ts +0 -24
- package/lib/Notifications.js +0 -94
- package/lib/Notifications.js.map +0 -1
- package/lib/PushNotification/NotEnabledError.d.ts +0 -3
- package/lib/PushNotification/NotEnabledError.js +0 -16
- package/lib/PushNotification/NotEnabledError.js.map +0 -1
- package/lib/PushNotification/Platform/index.d.ts +0 -2
- package/lib/PushNotification/Platform/index.js +0 -26
- package/lib/PushNotification/Platform/index.js.map +0 -1
- package/lib/PushNotification/Platform/index.native.d.ts +0 -2
- package/lib/PushNotification/Platform/index.native.js +0 -8
- package/lib/PushNotification/Platform/index.native.js.map +0 -1
- package/lib/PushNotification/Platform/types.d.ts +0 -5
- package/lib/PushNotification/Platform/types.js.map +0 -1
- package/lib/PushNotification/PlatformNotSupportedError.d.ts +0 -3
- package/lib/PushNotification/PlatformNotSupportedError.js +0 -16
- package/lib/PushNotification/PlatformNotSupportedError.js.map +0 -1
- package/lib/PushNotification/Providers/AWSPinpointProvider/index.d.ts +0 -15
- package/lib/PushNotification/Providers/AWSPinpointProvider/index.js +0 -114
- package/lib/PushNotification/Providers/AWSPinpointProvider/index.js.map +0 -1
- package/lib/PushNotification/Providers/AWSPinpointProvider/types.d.ts +0 -9
- package/lib/PushNotification/Providers/AWSPinpointProvider/types.js +0 -16
- package/lib/PushNotification/Providers/AWSPinpointProvider/types.js.map +0 -1
- package/lib/PushNotification/Providers/AWSPinpointProvider/utils.d.ts +0 -7
- package/lib/PushNotification/Providers/AWSPinpointProvider/utils.js +0 -58
- package/lib/PushNotification/Providers/AWSPinpointProvider/utils.js.map +0 -1
- package/lib/PushNotification/Providers/index.d.ts +0 -1
- package/lib/PushNotification/Providers/index.js +0 -7
- package/lib/PushNotification/Providers/index.js.map +0 -1
- package/lib/PushNotification/PushNotification.d.ts +0 -39
- package/lib/PushNotification/PushNotification.js +0 -91
- package/lib/PushNotification/PushNotification.js.map +0 -1
- package/lib/PushNotification/PushNotification.native.d.ts +0 -63
- package/lib/PushNotification/PushNotification.native.js +0 -332
- package/lib/PushNotification/PushNotification.native.js.map +0 -1
- package/lib/PushNotification/index.d.ts +0 -2
- package/lib/PushNotification/index.js +0 -9
- package/lib/PushNotification/index.js.map +0 -1
- package/lib/PushNotification/types.d.ts +0 -77
- package/lib/PushNotification/types.js +0 -12
- package/lib/PushNotification/types.js.map +0 -1
- package/lib/PushNotification/utils.d.ts +0 -3
- package/lib/PushNotification/utils.js +0 -81
- package/lib/PushNotification/utils.js.map +0 -1
- package/lib/common/AWSPinpointProviderCommon/index.d.ts +0 -35
- package/lib/common/AWSPinpointProviderCommon/index.js +0 -280
- package/lib/common/AWSPinpointProviderCommon/index.js.map +0 -1
- package/lib/common/AWSPinpointProviderCommon/types.d.ts +0 -10
- package/lib/common/AWSPinpointProviderCommon/types.js.map +0 -1
- package/lib/common/constants.d.ts +0 -1
- package/lib/common/constants.js +0 -8
- package/lib/common/constants.js.map +0 -1
- package/lib/common/eventListeners/index.js +0 -55
- package/lib/common/eventListeners/index.js.map +0 -1
- package/lib/common/eventListeners/types.d.ts +0 -7
- package/lib/common/eventListeners/types.js.map +0 -1
- package/lib/common/index.d.ts +0 -4
- package/lib/common/index.js +0 -13
- package/lib/common/index.js.map +0 -1
- package/lib/index.js.map +0 -1
- package/lib/types.d.ts +0 -39
- package/lib/types.js +0 -5
- package/lib/types.js.map +0 -1
- package/lib-esm/.tsbuildinfo +0 -3
- package/lib-esm/InAppMessaging/InAppMessaging.d.ts +0 -57
- package/lib-esm/InAppMessaging/InAppMessaging.js +0 -338
- package/lib-esm/InAppMessaging/InAppMessaging.js.map +0 -1
- package/lib-esm/InAppMessaging/Providers/AWSPinpointProvider/index.d.ts +0 -31
- package/lib-esm/InAppMessaging/Providers/AWSPinpointProvider/index.js +0 -264
- package/lib-esm/InAppMessaging/Providers/AWSPinpointProvider/index.js.map +0 -1
- package/lib-esm/InAppMessaging/Providers/AWSPinpointProvider/types.d.ts +0 -16
- package/lib-esm/InAppMessaging/Providers/AWSPinpointProvider/types.js +0 -9
- package/lib-esm/InAppMessaging/Providers/AWSPinpointProvider/types.js.map +0 -1
- package/lib-esm/InAppMessaging/Providers/AWSPinpointProvider/utils.js +0 -245
- package/lib-esm/InAppMessaging/Providers/AWSPinpointProvider/utils.js.map +0 -1
- package/lib-esm/InAppMessaging/Providers/index.d.ts +0 -1
- package/lib-esm/InAppMessaging/Providers/index.js +0 -4
- package/lib-esm/InAppMessaging/Providers/index.js.map +0 -1
- package/lib-esm/InAppMessaging/SessionTracker/SessionTracker.d.ts +0 -9
- package/lib-esm/InAppMessaging/SessionTracker/SessionTracker.js +0 -65
- package/lib-esm/InAppMessaging/SessionTracker/SessionTracker.js.map +0 -1
- package/lib-esm/InAppMessaging/SessionTracker/SessionTracker.native.d.ts +0 -10
- package/lib-esm/InAppMessaging/SessionTracker/SessionTracker.native.js +0 -50
- package/lib-esm/InAppMessaging/SessionTracker/SessionTracker.native.js.map +0 -1
- package/lib-esm/InAppMessaging/SessionTracker/index.d.ts +0 -3
- package/lib-esm/InAppMessaging/SessionTracker/index.js +0 -5
- package/lib-esm/InAppMessaging/SessionTracker/index.js.map +0 -1
- package/lib-esm/InAppMessaging/SessionTracker/types.d.ts +0 -6
- package/lib-esm/InAppMessaging/SessionTracker/types.js.map +0 -1
- package/lib-esm/InAppMessaging/index.d.ts +0 -2
- package/lib-esm/InAppMessaging/index.js +0 -5
- package/lib-esm/InAppMessaging/index.js.map +0 -1
- package/lib-esm/InAppMessaging/types.d.ts +0 -87
- package/lib-esm/InAppMessaging/types.js +0 -10
- package/lib-esm/InAppMessaging/types.js.map +0 -1
- package/lib-esm/Notifications.d.ts +0 -24
- package/lib-esm/Notifications.js +0 -92
- package/lib-esm/Notifications.js.map +0 -1
- package/lib-esm/PushNotification/NotEnabledError.d.ts +0 -3
- package/lib-esm/PushNotification/NotEnabledError.js +0 -14
- package/lib-esm/PushNotification/NotEnabledError.js.map +0 -1
- package/lib-esm/PushNotification/Platform/index.d.ts +0 -2
- package/lib-esm/PushNotification/Platform/index.js +0 -24
- package/lib-esm/PushNotification/Platform/index.js.map +0 -1
- package/lib-esm/PushNotification/Platform/index.native.d.ts +0 -2
- package/lib-esm/PushNotification/Platform/index.native.js +0 -6
- package/lib-esm/PushNotification/Platform/index.native.js.map +0 -1
- package/lib-esm/PushNotification/Platform/types.d.ts +0 -5
- package/lib-esm/PushNotification/Platform/types.js.map +0 -1
- package/lib-esm/PushNotification/PlatformNotSupportedError.d.ts +0 -3
- package/lib-esm/PushNotification/PlatformNotSupportedError.js +0 -14
- package/lib-esm/PushNotification/PlatformNotSupportedError.js.map +0 -1
- package/lib-esm/PushNotification/Providers/AWSPinpointProvider/index.d.ts +0 -15
- package/lib-esm/PushNotification/Providers/AWSPinpointProvider/index.js +0 -112
- package/lib-esm/PushNotification/Providers/AWSPinpointProvider/index.js.map +0 -1
- package/lib-esm/PushNotification/Providers/AWSPinpointProvider/types.d.ts +0 -9
- package/lib-esm/PushNotification/Providers/AWSPinpointProvider/types.js +0 -14
- package/lib-esm/PushNotification/Providers/AWSPinpointProvider/types.js.map +0 -1
- package/lib-esm/PushNotification/Providers/AWSPinpointProvider/utils.d.ts +0 -7
- package/lib-esm/PushNotification/Providers/AWSPinpointProvider/utils.js +0 -56
- package/lib-esm/PushNotification/Providers/AWSPinpointProvider/utils.js.map +0 -1
- package/lib-esm/PushNotification/Providers/index.d.ts +0 -1
- package/lib-esm/PushNotification/Providers/index.js +0 -4
- package/lib-esm/PushNotification/Providers/index.js.map +0 -1
- package/lib-esm/PushNotification/PushNotification.d.ts +0 -39
- package/lib-esm/PushNotification/PushNotification.js +0 -89
- package/lib-esm/PushNotification/PushNotification.js.map +0 -1
- package/lib-esm/PushNotification/PushNotification.native.d.ts +0 -63
- package/lib-esm/PushNotification/PushNotification.native.js +0 -330
- package/lib-esm/PushNotification/PushNotification.native.js.map +0 -1
- package/lib-esm/PushNotification/index.d.ts +0 -2
- package/lib-esm/PushNotification/index.js +0 -5
- package/lib-esm/PushNotification/index.js.map +0 -1
- package/lib-esm/PushNotification/types.d.ts +0 -77
- package/lib-esm/PushNotification/types.js +0 -10
- package/lib-esm/PushNotification/types.js.map +0 -1
- package/lib-esm/PushNotification/utils.d.ts +0 -3
- package/lib-esm/PushNotification/utils.js +0 -79
- package/lib-esm/PushNotification/utils.js.map +0 -1
- package/lib-esm/common/AWSPinpointProviderCommon/index.d.ts +0 -35
- package/lib-esm/common/AWSPinpointProviderCommon/index.js +0 -278
- package/lib-esm/common/AWSPinpointProviderCommon/index.js.map +0 -1
- package/lib-esm/common/AWSPinpointProviderCommon/types.d.ts +0 -10
- package/lib-esm/common/AWSPinpointProviderCommon/types.js.map +0 -1
- package/lib-esm/common/constants.d.ts +0 -1
- package/lib-esm/common/constants.js +0 -6
- package/lib-esm/common/constants.js.map +0 -1
- package/lib-esm/common/eventListeners/index.js +0 -53
- package/lib-esm/common/eventListeners/index.js.map +0 -1
- package/lib-esm/common/eventListeners/types.d.ts +0 -7
- package/lib-esm/common/eventListeners/types.js.map +0 -1
- package/lib-esm/common/index.d.ts +0 -4
- package/lib-esm/common/index.js.map +0 -1
- package/lib-esm/index.js.map +0 -1
- package/lib-esm/types.d.ts +0 -39
- package/lib-esm/types.js +0 -3
- package/lib-esm/types.js.map +0 -1
- package/src/InAppMessaging/InAppMessaging.ts +0 -321
- package/src/InAppMessaging/Providers/AWSPinpointProvider/index.ts +0 -323
- package/src/InAppMessaging/SessionTracker/SessionTracker.native.ts +0 -60
- package/src/InAppMessaging/SessionTracker/SessionTracker.ts +0 -78
- package/src/InAppMessaging/SessionTracker/index.ts +0 -6
- package/src/InAppMessaging/SessionTracker/types.ts +0 -11
- package/src/InAppMessaging/types.ts +0 -142
- package/src/Notifications.ts +0 -90
- package/src/PushNotification/NotEnabledError.ts +0 -11
- package/src/PushNotification/Platform/index.native.ts +0 -9
- package/src/PushNotification/Platform/index.ts +0 -22
- package/src/PushNotification/Platform/types.ts +0 -15
- package/src/PushNotification/PlatformNotSupportedError.ts +0 -9
- package/src/PushNotification/Providers/AWSPinpointProvider/index.ts +0 -137
- package/src/PushNotification/Providers/AWSPinpointProvider/types.ts +0 -13
- package/src/PushNotification/Providers/AWSPinpointProvider/utils.ts +0 -79
- package/src/PushNotification/PushNotification.native.ts +0 -386
- package/src/PushNotification/PushNotification.ts +0 -107
- package/src/PushNotification/index.ts +0 -9
- package/src/PushNotification/types.ts +0 -115
- package/src/PushNotification/utils.ts +0 -112
- package/src/common/AWSPinpointProviderCommon/index.ts +0 -291
- package/src/common/AWSPinpointProviderCommon/types.ts +0 -29
- package/src/common/constants.ts +0 -7
- package/src/types.ts +0 -56
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
2
2
|
// SPDX-License-Identifier: Apache-2.0
|
|
3
3
|
|
|
4
|
-
import {
|
|
4
|
+
import { ConsoleLogger } from '@aws-amplify/core';
|
|
5
|
+
import { InAppMessagingAction } from '@aws-amplify/core/internals/utils';
|
|
5
6
|
import type { InAppMessageCampaign as PinpointInAppMessage } from '@aws-amplify/core/internals/aws-clients/pinpoint';
|
|
6
7
|
import isEmpty from 'lodash/isEmpty';
|
|
7
|
-
import { AMPLIFY_SYMBOL } from '../../../common';
|
|
8
8
|
import {
|
|
9
9
|
InAppMessage,
|
|
10
10
|
InAppMessageAction,
|
|
@@ -12,48 +12,55 @@ import {
|
|
|
12
12
|
InAppMessageLayout,
|
|
13
13
|
InAppMessageTextAlign,
|
|
14
14
|
InAppMessagingEvent,
|
|
15
|
-
} from '
|
|
16
|
-
|
|
17
|
-
import {
|
|
15
|
+
} from '../../../types';
|
|
16
|
+
import { MetricsComparator, PinpointMessageEvent } from '../types';
|
|
17
|
+
import { record as recordCore } from '@aws-amplify/core/internals/providers/pinpoint';
|
|
18
|
+
import { resolveConfig } from './resolveConfig';
|
|
19
|
+
import { resolveCredentials } from './resolveCredentials';
|
|
20
|
+
import { CATEGORY } from './constants';
|
|
21
|
+
import { getInAppMessagingUserAgentString } from './userAgent';
|
|
18
22
|
|
|
19
23
|
const DELIVERY_TYPE = 'IN_APP_MESSAGE';
|
|
20
24
|
|
|
21
|
-
let eventNameMemo = {};
|
|
22
|
-
let eventAttributesMemo = {};
|
|
23
|
-
let eventMetricsMemo = {};
|
|
24
|
-
|
|
25
|
-
export const logger = new ConsoleLogger('InAppMessaging.AWSPinpointProvider');
|
|
25
|
+
let eventNameMemo: Record<string, boolean> = {};
|
|
26
|
+
let eventAttributesMemo: Record<string, boolean> = {};
|
|
27
|
+
let eventMetricsMemo: Record<string, boolean> = {};
|
|
26
28
|
|
|
27
|
-
export const
|
|
28
|
-
event: string,
|
|
29
|
-
data: any,
|
|
30
|
-
message?: string
|
|
31
|
-
) => {
|
|
32
|
-
Hub.dispatch(
|
|
33
|
-
'inAppMessaging',
|
|
34
|
-
{ event, data, message },
|
|
35
|
-
'InAppMessaging',
|
|
36
|
-
AMPLIFY_SYMBOL
|
|
37
|
-
);
|
|
38
|
-
};
|
|
29
|
+
export const logger = new ConsoleLogger('InAppMessaging.Pinpoint.Utils');
|
|
39
30
|
|
|
40
31
|
export const recordAnalyticsEvent = (
|
|
41
|
-
event:
|
|
32
|
+
event: PinpointMessageEvent,
|
|
42
33
|
message: InAppMessage
|
|
43
34
|
) => {
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
35
|
+
const { appId, region } = resolveConfig();
|
|
36
|
+
|
|
37
|
+
const { id, metadata } = message;
|
|
38
|
+
resolveCredentials()
|
|
39
|
+
.then(({ credentials, identityId }) => {
|
|
40
|
+
recordCore({
|
|
41
|
+
appId,
|
|
42
|
+
category: CATEGORY,
|
|
43
|
+
credentials,
|
|
44
|
+
event: {
|
|
45
|
+
name: event,
|
|
46
|
+
attributes: {
|
|
47
|
+
// only include campaign_id field if we have one
|
|
48
|
+
...(id && { campaign_id: id }),
|
|
49
|
+
delivery_type: DELIVERY_TYPE,
|
|
50
|
+
treatment_id: metadata?.treatmentId,
|
|
51
|
+
},
|
|
52
|
+
},
|
|
53
|
+
identityId,
|
|
54
|
+
region,
|
|
55
|
+
userAgentValue: getInAppMessagingUserAgentString(
|
|
56
|
+
InAppMessagingAction.NotifyMessageInteraction
|
|
57
|
+
),
|
|
58
|
+
});
|
|
59
|
+
})
|
|
60
|
+
.catch(e => {
|
|
61
|
+
// An error occured while fetching credentials or persisting the event to the buffer
|
|
62
|
+
logger.warn('Failed to record event.', e);
|
|
53
63
|
});
|
|
54
|
-
} else {
|
|
55
|
-
logger.debug('Analytics module is not registered into Amplify');
|
|
56
|
-
}
|
|
57
64
|
};
|
|
58
65
|
|
|
59
66
|
export const getStartOfDay = (): string => {
|
|
@@ -66,19 +73,19 @@ export const matchesEventType = (
|
|
|
66
73
|
{ CampaignId, Schedule }: PinpointInAppMessage,
|
|
67
74
|
{ name: eventType }: InAppMessagingEvent
|
|
68
75
|
) => {
|
|
69
|
-
const { EventType } = Schedule?.EventFilter?.Dimensions;
|
|
76
|
+
const { EventType } = Schedule?.EventFilter?.Dimensions ?? {};
|
|
70
77
|
const memoKey = `${CampaignId}:${eventType}`;
|
|
71
78
|
if (!eventNameMemo.hasOwnProperty(memoKey)) {
|
|
72
|
-
eventNameMemo[memoKey] = !!EventType?.Values
|
|
79
|
+
eventNameMemo[memoKey] = !!EventType?.Values?.includes(eventType);
|
|
73
80
|
}
|
|
74
81
|
return eventNameMemo[memoKey];
|
|
75
82
|
};
|
|
76
83
|
|
|
77
84
|
export const matchesAttributes = (
|
|
78
85
|
{ CampaignId, Schedule }: PinpointInAppMessage,
|
|
79
|
-
{ attributes }: InAppMessagingEvent
|
|
86
|
+
{ attributes = {} }: InAppMessagingEvent
|
|
80
87
|
): boolean => {
|
|
81
|
-
const { Attributes } = Schedule?.EventFilter?.Dimensions;
|
|
88
|
+
const { Attributes } = Schedule?.EventFilter?.Dimensions ?? {};
|
|
82
89
|
if (isEmpty(Attributes)) {
|
|
83
90
|
// if message does not have attributes defined it does not matter what attributes are on the event
|
|
84
91
|
return true;
|
|
@@ -89,18 +96,20 @@ export const matchesAttributes = (
|
|
|
89
96
|
}
|
|
90
97
|
const memoKey = `${CampaignId}:${JSON.stringify(attributes)}`;
|
|
91
98
|
if (!eventAttributesMemo.hasOwnProperty(memoKey)) {
|
|
92
|
-
eventAttributesMemo[memoKey] =
|
|
93
|
-
|
|
94
|
-
|
|
99
|
+
eventAttributesMemo[memoKey] =
|
|
100
|
+
!Attributes ||
|
|
101
|
+
Object.entries(Attributes).every(([key, { Values }]) =>
|
|
102
|
+
Values?.includes(attributes[key])
|
|
103
|
+
);
|
|
95
104
|
}
|
|
96
105
|
return eventAttributesMemo[memoKey];
|
|
97
106
|
};
|
|
98
107
|
|
|
99
108
|
export const matchesMetrics = (
|
|
100
109
|
{ CampaignId, Schedule }: PinpointInAppMessage,
|
|
101
|
-
{ metrics }: InAppMessagingEvent
|
|
110
|
+
{ metrics = {} }: InAppMessagingEvent
|
|
102
111
|
): boolean => {
|
|
103
|
-
const { Metrics } = Schedule?.EventFilter?.Dimensions;
|
|
112
|
+
const { Metrics } = Schedule?.EventFilter?.Dimensions ?? {};
|
|
104
113
|
if (isEmpty(Metrics)) {
|
|
105
114
|
// if message does not have metrics defined it does not matter what metrics are on the event
|
|
106
115
|
return true;
|
|
@@ -111,18 +120,20 @@ export const matchesMetrics = (
|
|
|
111
120
|
}
|
|
112
121
|
const memoKey = `${CampaignId}:${JSON.stringify(metrics)}`;
|
|
113
122
|
if (!eventMetricsMemo.hasOwnProperty(memoKey)) {
|
|
114
|
-
eventMetricsMemo[memoKey] =
|
|
115
|
-
|
|
123
|
+
eventMetricsMemo[memoKey] =
|
|
124
|
+
!Metrics ||
|
|
125
|
+
Object.entries(Metrics).every(([key, { ComparisonOperator, Value }]) => {
|
|
116
126
|
const compare = getComparator(ComparisonOperator);
|
|
117
127
|
// if there is some unknown comparison operator, treat as a comparison failure
|
|
118
|
-
return compare ? compare(Value, metrics[key]) : false;
|
|
119
|
-
}
|
|
120
|
-
);
|
|
128
|
+
return compare && !!Value ? compare(Value, metrics[key]) : false;
|
|
129
|
+
});
|
|
121
130
|
}
|
|
122
131
|
return eventMetricsMemo[memoKey];
|
|
123
132
|
};
|
|
124
133
|
|
|
125
|
-
export const getComparator = (
|
|
134
|
+
export const getComparator = (
|
|
135
|
+
operator?: string
|
|
136
|
+
): MetricsComparator | undefined => {
|
|
126
137
|
switch (operator) {
|
|
127
138
|
case 'EQUAL':
|
|
128
139
|
return (metricsVal, eventVal) => metricsVal === eventVal;
|
|
@@ -135,7 +146,7 @@ export const getComparator = (operator: string): MetricsComparator => {
|
|
|
135
146
|
case 'LESS_THAN_OR_EQUAL':
|
|
136
147
|
return (metricsVal, eventVal) => metricsVal >= eventVal;
|
|
137
148
|
default:
|
|
138
|
-
return
|
|
149
|
+
return undefined;
|
|
139
150
|
}
|
|
140
151
|
};
|
|
141
152
|
|
|
@@ -212,8 +223,9 @@ export const clearMemo = () => {
|
|
|
212
223
|
// - 1. the usage of MOBILE_FEED and OVERLAYS as values for message layouts are not leaked
|
|
213
224
|
// outside the Pinpoint provider
|
|
214
225
|
// - 2. Amplify correctly handles the legacy layout values from Pinpoint after they are updated
|
|
226
|
+
|
|
215
227
|
export const interpretLayout = (
|
|
216
|
-
layout: PinpointInAppMessage['InAppMessage']['Layout']
|
|
228
|
+
layout: NonNullable<PinpointInAppMessage['InAppMessage']>['Layout']
|
|
217
229
|
): InAppMessageLayout => {
|
|
218
230
|
if (layout === 'MOBILE_FEED') {
|
|
219
231
|
return 'MODAL';
|
|
@@ -252,21 +264,23 @@ export const extractContent = ({
|
|
|
252
264
|
}
|
|
253
265
|
if (HeaderConfig) {
|
|
254
266
|
extractedContent.header = {
|
|
255
|
-
|
|
267
|
+
// Default to empty string in rare cases we don't have a Header value
|
|
268
|
+
content: HeaderConfig.Header ?? '',
|
|
256
269
|
style: {
|
|
257
270
|
color: HeaderConfig.TextColor,
|
|
258
271
|
textAlign:
|
|
259
|
-
HeaderConfig.Alignment
|
|
272
|
+
HeaderConfig.Alignment?.toLowerCase() as InAppMessageTextAlign,
|
|
260
273
|
},
|
|
261
274
|
};
|
|
262
275
|
}
|
|
263
276
|
if (BodyConfig) {
|
|
264
277
|
extractedContent.body = {
|
|
265
|
-
|
|
278
|
+
// Default to empty string in rare cases we don't have a Body value
|
|
279
|
+
content: BodyConfig.Body ?? '',
|
|
266
280
|
style: {
|
|
267
281
|
color: BodyConfig.TextColor,
|
|
268
282
|
textAlign:
|
|
269
|
-
BodyConfig.Alignment
|
|
283
|
+
BodyConfig.Alignment?.toLowerCase() as InAppMessageTextAlign,
|
|
270
284
|
},
|
|
271
285
|
};
|
|
272
286
|
}
|
|
@@ -277,7 +291,8 @@ export const extractContent = ({
|
|
|
277
291
|
}
|
|
278
292
|
if (defaultPrimaryButton) {
|
|
279
293
|
extractedContent.primaryButton = {
|
|
280
|
-
|
|
294
|
+
// Default to empty string in rare cases we don't have a Text value
|
|
295
|
+
title: defaultPrimaryButton.Text ?? '',
|
|
281
296
|
action: defaultPrimaryButton.ButtonAction as InAppMessageAction,
|
|
282
297
|
url: defaultPrimaryButton.Link,
|
|
283
298
|
style: {
|
|
@@ -289,7 +304,8 @@ export const extractContent = ({
|
|
|
289
304
|
}
|
|
290
305
|
if (defaultSecondaryButton) {
|
|
291
306
|
extractedContent.secondaryButton = {
|
|
292
|
-
|
|
307
|
+
// Default to empty string in rare cases we don't have a Text value
|
|
308
|
+
title: defaultSecondaryButton.Text ?? '',
|
|
293
309
|
action: defaultSecondaryButton.ButtonAction as InAppMessageAction,
|
|
294
310
|
url: defaultSecondaryButton.Link,
|
|
295
311
|
style: {
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
2
|
+
// SPDX-License-Identifier: Apache-2.0
|
|
3
|
+
|
|
4
|
+
export { resolveConfig } from './resolveConfig';
|
|
5
|
+
export { resolveCredentials } from './resolveCredentials';
|
|
6
|
+
export { getInAppMessagingUserAgentString } from './userAgent';
|
|
7
|
+
export {
|
|
8
|
+
PINPOINT_KEY_PREFIX,
|
|
9
|
+
CATEGORY,
|
|
10
|
+
CHANNEL_TYPE,
|
|
11
|
+
STORAGE_KEY_SUFFIX,
|
|
12
|
+
} from './constants';
|
|
13
|
+
|
|
14
|
+
export {
|
|
15
|
+
processInAppMessages,
|
|
16
|
+
sessionStateChangeHandler,
|
|
17
|
+
incrementMessageCounts,
|
|
18
|
+
} from './messageProcessingHelpers';
|
|
@@ -0,0 +1,210 @@
|
|
|
1
|
+
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
2
|
+
// SPDX-License-Identifier: Apache-2.0
|
|
3
|
+
|
|
4
|
+
import { InAppMessage, InAppMessagingEvent } from '../../../types';
|
|
5
|
+
import {
|
|
6
|
+
InAppMessageCounts,
|
|
7
|
+
InAppMessageCountMap,
|
|
8
|
+
DailyInAppMessageCounter,
|
|
9
|
+
} from '../types';
|
|
10
|
+
import {
|
|
11
|
+
extractContent,
|
|
12
|
+
extractMetadata,
|
|
13
|
+
interpretLayout,
|
|
14
|
+
isBeforeEndDate,
|
|
15
|
+
matchesAttributes,
|
|
16
|
+
matchesEventType,
|
|
17
|
+
matchesMetrics,
|
|
18
|
+
} from './helpers';
|
|
19
|
+
import type { InAppMessageCampaign as PinpointInAppMessage } from '@aws-amplify/core/internals/aws-clients/pinpoint';
|
|
20
|
+
import { defaultStorage, ConsoleLogger } from '@aws-amplify/core';
|
|
21
|
+
import { SessionState } from '@aws-amplify/core/internals/utils';
|
|
22
|
+
|
|
23
|
+
const MESSAGE_DAILY_COUNT_KEY = 'pinpointProvider_inAppMessages_dailyCount';
|
|
24
|
+
const MESSAGE_TOTAL_COUNT_KEY = 'pinpointProvider_inAppMessages_totalCount';
|
|
25
|
+
const logger = new ConsoleLogger('InAppMessaging.processInAppMessages');
|
|
26
|
+
|
|
27
|
+
let sessionMessageCountMap: InAppMessageCountMap = {};
|
|
28
|
+
|
|
29
|
+
export async function processInAppMessages(
|
|
30
|
+
messages: PinpointInAppMessage[],
|
|
31
|
+
event: InAppMessagingEvent
|
|
32
|
+
): Promise<InAppMessage[]> {
|
|
33
|
+
let highestPrioritySeen: number | undefined;
|
|
34
|
+
let acc: PinpointInAppMessage[] = [];
|
|
35
|
+
for (let index = 0; index < messages.length; index++) {
|
|
36
|
+
const message = messages[index];
|
|
37
|
+
const messageQualifies =
|
|
38
|
+
matchesEventType(message, event) &&
|
|
39
|
+
matchesAttributes(message, event) &&
|
|
40
|
+
matchesMetrics(message, event) &&
|
|
41
|
+
isBeforeEndDate(message) &&
|
|
42
|
+
(await isBelowCap(message));
|
|
43
|
+
// filter all qualifying messages returning only those that are of (relative) highest priority
|
|
44
|
+
if (messageQualifies) {
|
|
45
|
+
// have not yet encountered message with priority
|
|
46
|
+
if (!highestPrioritySeen) {
|
|
47
|
+
// this message has priority, so reset the accumulator with this message only
|
|
48
|
+
if (message.Priority) {
|
|
49
|
+
highestPrioritySeen = message.Priority;
|
|
50
|
+
acc = [message];
|
|
51
|
+
} else {
|
|
52
|
+
// this message also has no priority, so just add this message to accumulator
|
|
53
|
+
acc.push(message);
|
|
54
|
+
}
|
|
55
|
+
// have previously encountered message with priority, so only messages with priority matter now
|
|
56
|
+
} else if (message.Priority) {
|
|
57
|
+
// this message has higher priority (lower number), so reset the accumulator with this message only
|
|
58
|
+
if (message.Priority < highestPrioritySeen) {
|
|
59
|
+
highestPrioritySeen = message.Priority;
|
|
60
|
+
acc = [message];
|
|
61
|
+
// this message has the same priority, so just add this message to accumulator
|
|
62
|
+
} else if (message.Priority === highestPrioritySeen) {
|
|
63
|
+
acc.push(message);
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
return normalizeMessages(acc);
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
export function sessionStateChangeHandler(state: SessionState): void {
|
|
72
|
+
if (state === 'started') {
|
|
73
|
+
// reset all session counts
|
|
74
|
+
sessionMessageCountMap = {};
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
export async function incrementMessageCounts(messageId: string): Promise<void> {
|
|
79
|
+
const { sessionCount, dailyCount, totalCount } = await getMessageCounts(
|
|
80
|
+
messageId
|
|
81
|
+
);
|
|
82
|
+
setSessionCount(messageId, sessionCount + 1);
|
|
83
|
+
setDailyCount(dailyCount + 1);
|
|
84
|
+
await setTotalCount(messageId, totalCount + 1);
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
function normalizeMessages(messages: PinpointInAppMessage[]): InAppMessage[] {
|
|
88
|
+
return messages.map(message => {
|
|
89
|
+
const { CampaignId, InAppMessage } = message;
|
|
90
|
+
return {
|
|
91
|
+
// Default to empty string in rare cases we don't have a campaignId
|
|
92
|
+
id: CampaignId ?? '',
|
|
93
|
+
content: extractContent(message),
|
|
94
|
+
// Default to TOP_BANNER layout in rare cases we don't have a Layout
|
|
95
|
+
layout: InAppMessage?.Layout
|
|
96
|
+
? interpretLayout(InAppMessage.Layout)
|
|
97
|
+
: 'TOP_BANNER',
|
|
98
|
+
metadata: extractMetadata(message),
|
|
99
|
+
};
|
|
100
|
+
});
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
async function isBelowCap({
|
|
104
|
+
CampaignId,
|
|
105
|
+
SessionCap,
|
|
106
|
+
DailyCap,
|
|
107
|
+
TotalCap,
|
|
108
|
+
}: PinpointInAppMessage): Promise<Boolean> {
|
|
109
|
+
const { sessionCount, dailyCount, totalCount } = await getMessageCounts(
|
|
110
|
+
CampaignId
|
|
111
|
+
);
|
|
112
|
+
|
|
113
|
+
return (
|
|
114
|
+
(!SessionCap || sessionCount < SessionCap) &&
|
|
115
|
+
(!DailyCap || dailyCount < DailyCap) &&
|
|
116
|
+
(!TotalCap || totalCount < TotalCap)
|
|
117
|
+
);
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
async function getMessageCounts(
|
|
121
|
+
messageId?: string
|
|
122
|
+
): Promise<InAppMessageCounts> {
|
|
123
|
+
let messageCounts = {
|
|
124
|
+
sessionCount: 0,
|
|
125
|
+
dailyCount: 0,
|
|
126
|
+
totalCount: 0,
|
|
127
|
+
};
|
|
128
|
+
try {
|
|
129
|
+
// only return true counts if there is a messageId else default to 0
|
|
130
|
+
if (messageId)
|
|
131
|
+
messageCounts = {
|
|
132
|
+
sessionCount: getSessionCount(messageId),
|
|
133
|
+
dailyCount: await getDailyCount(),
|
|
134
|
+
totalCount: await getTotalCount(messageId),
|
|
135
|
+
};
|
|
136
|
+
return messageCounts;
|
|
137
|
+
} catch (err) {
|
|
138
|
+
logger.error('Failed to get message counts from storage', err);
|
|
139
|
+
|
|
140
|
+
// If there are no cached counts or there is an error,
|
|
141
|
+
// we default to 0 allowing all the messages to be eligible
|
|
142
|
+
return messageCounts;
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
function getSessionCount(messageId: string): number {
|
|
147
|
+
return sessionMessageCountMap[messageId] ?? 0;
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
function setSessionCount(messageId: string, count: number): void {
|
|
151
|
+
sessionMessageCountMap[messageId] = count;
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
function setDailyCount(count: number): void {
|
|
155
|
+
const dailyCount: DailyInAppMessageCounter = {
|
|
156
|
+
count,
|
|
157
|
+
lastCountTimestamp: getStartOfDay(),
|
|
158
|
+
};
|
|
159
|
+
try {
|
|
160
|
+
defaultStorage.setItem(MESSAGE_DAILY_COUNT_KEY, JSON.stringify(dailyCount));
|
|
161
|
+
} catch (err) {
|
|
162
|
+
logger.error('Failed to save daily message count to storage', err);
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
|
|
166
|
+
function setTotalCountMap(countMap: InAppMessageCountMap): void {
|
|
167
|
+
try {
|
|
168
|
+
defaultStorage.setItem(MESSAGE_TOTAL_COUNT_KEY, JSON.stringify(countMap));
|
|
169
|
+
} catch (err) {
|
|
170
|
+
logger.error('Failed to save total count to storage', err);
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
async function setTotalCount(messageId: string, count: number): Promise<void> {
|
|
175
|
+
const totalCountMap = await getTotalCountMap();
|
|
176
|
+
const updatedMap = {
|
|
177
|
+
...totalCountMap,
|
|
178
|
+
[messageId]: count,
|
|
179
|
+
};
|
|
180
|
+
setTotalCountMap(updatedMap);
|
|
181
|
+
}
|
|
182
|
+
|
|
183
|
+
async function getDailyCount(): Promise<number> {
|
|
184
|
+
const today = getStartOfDay();
|
|
185
|
+
const item = await defaultStorage.getItem(MESSAGE_DAILY_COUNT_KEY);
|
|
186
|
+
// Parse stored count or initialize as empty count
|
|
187
|
+
const counter: DailyInAppMessageCounter = item
|
|
188
|
+
? JSON.parse(item)
|
|
189
|
+
: { count: 0, lastCountTimestamp: today };
|
|
190
|
+
// If the stored counter timestamp is today, use it as the count, otherwise reset to 0
|
|
191
|
+
return counter.lastCountTimestamp === today ? counter.count : 0;
|
|
192
|
+
}
|
|
193
|
+
|
|
194
|
+
async function getTotalCountMap(): Promise<InAppMessageCountMap> {
|
|
195
|
+
const item = await defaultStorage.getItem(MESSAGE_TOTAL_COUNT_KEY);
|
|
196
|
+
// Parse stored count map or initialize as empty
|
|
197
|
+
return item ? JSON.parse(item) : {};
|
|
198
|
+
}
|
|
199
|
+
|
|
200
|
+
async function getTotalCount(messageId: string): Promise<number> {
|
|
201
|
+
const countMap = await getTotalCountMap();
|
|
202
|
+
// Return stored count or initialize as empty count
|
|
203
|
+
return countMap[messageId] || 0;
|
|
204
|
+
}
|
|
205
|
+
|
|
206
|
+
const getStartOfDay = (): string => {
|
|
207
|
+
const now = new Date();
|
|
208
|
+
now.setHours(0, 0, 0, 0);
|
|
209
|
+
return now.toISOString();
|
|
210
|
+
};
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
2
|
+
// SPDX-License-Identifier: Apache-2.0
|
|
3
|
+
|
|
4
|
+
import { Amplify } from '@aws-amplify/core';
|
|
5
|
+
import {
|
|
6
|
+
InAppMessagingValidationErrorCode,
|
|
7
|
+
assertValidationError,
|
|
8
|
+
} from '../../../errors';
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* @internal
|
|
12
|
+
*/
|
|
13
|
+
export const resolveConfig = () => {
|
|
14
|
+
const { appId, region } =
|
|
15
|
+
Amplify.getConfig().Notifications?.InAppMessaging?.Pinpoint ?? {};
|
|
16
|
+
assertValidationError(!!appId, InAppMessagingValidationErrorCode.NoAppId);
|
|
17
|
+
assertValidationError(!!region, InAppMessagingValidationErrorCode.NoRegion);
|
|
18
|
+
return { appId, region };
|
|
19
|
+
};
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
2
|
+
// SPDX-License-Identifier: Apache-2.0
|
|
3
|
+
|
|
4
|
+
import { fetchAuthSession } from '@aws-amplify/core';
|
|
5
|
+
import {
|
|
6
|
+
InAppMessagingValidationErrorCode,
|
|
7
|
+
assertValidationError,
|
|
8
|
+
} from '../../../errors';
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* @internal
|
|
12
|
+
*/
|
|
13
|
+
export const resolveCredentials = async () => {
|
|
14
|
+
const { credentials, identityId } = await fetchAuthSession();
|
|
15
|
+
assertValidationError(
|
|
16
|
+
!!credentials,
|
|
17
|
+
InAppMessagingValidationErrorCode.NoCredentials
|
|
18
|
+
);
|
|
19
|
+
return { credentials, identityId };
|
|
20
|
+
};
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
2
|
+
// SPDX-License-Identifier: Apache-2.0
|
|
3
|
+
import {
|
|
4
|
+
Category,
|
|
5
|
+
getAmplifyUserAgentObject,
|
|
6
|
+
getAmplifyUserAgent,
|
|
7
|
+
InAppMessagingAction,
|
|
8
|
+
} from '@aws-amplify/core/internals/utils';
|
|
9
|
+
import { UserAgent } from '@aws-sdk/types';
|
|
10
|
+
|
|
11
|
+
export function getInAppMessagingUserAgent(
|
|
12
|
+
action: InAppMessagingAction
|
|
13
|
+
): UserAgent {
|
|
14
|
+
return getAmplifyUserAgentObject({
|
|
15
|
+
category: Category.InAppMessaging,
|
|
16
|
+
action,
|
|
17
|
+
});
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
export function getInAppMessagingUserAgentString(action: InAppMessagingAction) {
|
|
21
|
+
return getAmplifyUserAgent({
|
|
22
|
+
category: Category.InAppMessaging,
|
|
23
|
+
action,
|
|
24
|
+
});
|
|
25
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
2
|
+
// SPDX-License-Identifier: Apache-2.0
|
|
3
|
+
|
|
4
|
+
export type InAppMessageInteractionEvent =
|
|
5
|
+
| 'messageReceived'
|
|
6
|
+
| 'messageDisplayed'
|
|
7
|
+
| 'messageDismissed'
|
|
8
|
+
| 'messageActionTaken';
|
|
9
|
+
|
|
10
|
+
export type InAppMessagingEvent = {
|
|
11
|
+
name: string;
|
|
12
|
+
attributes?: Record<string, string>;
|
|
13
|
+
metrics?: Record<string, number>;
|
|
14
|
+
};
|
|
@@ -1,17 +1,16 @@
|
|
|
1
1
|
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
2
2
|
// SPDX-License-Identifier: Apache-2.0
|
|
3
3
|
|
|
4
|
-
export {
|
|
4
|
+
export { InAppMessagingServiceOptions } from './options';
|
|
5
|
+
export { InAppMessagingIdentifyUserInput } from './inputs';
|
|
6
|
+
export { InAppMessageInteractionEvent, InAppMessagingEvent } from './event';
|
|
5
7
|
export {
|
|
6
8
|
InAppMessage,
|
|
7
9
|
InAppMessageAction,
|
|
8
|
-
InAppMessageButton,
|
|
9
10
|
InAppMessageContent,
|
|
10
|
-
InAppMessageImage,
|
|
11
|
-
InAppMessageInteractionEvent,
|
|
12
11
|
InAppMessageLayout,
|
|
13
|
-
InAppMessageStyle,
|
|
14
12
|
InAppMessageTextAlign,
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
13
|
+
InAppMessageButton,
|
|
14
|
+
InAppMessageImage,
|
|
15
|
+
InAppMessageStyle,
|
|
16
|
+
} from './message';
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
2
|
+
// SPDX-License-Identifier: Apache-2.0
|
|
3
|
+
|
|
4
|
+
import { UserProfile } from '@aws-amplify/core';
|
|
5
|
+
import { InAppMessagingServiceOptions } from '.';
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* Input type for `identifyUser`.
|
|
9
|
+
*/
|
|
10
|
+
export type InAppMessagingIdentifyUserInput<
|
|
11
|
+
ServiceOptions extends InAppMessagingServiceOptions = InAppMessagingServiceOptions
|
|
12
|
+
> = {
|
|
13
|
+
/**
|
|
14
|
+
* A User ID associated to the current device.
|
|
15
|
+
*/
|
|
16
|
+
userId: string;
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* Additional information about the user and their device.
|
|
20
|
+
*/
|
|
21
|
+
userProfile: UserProfile;
|
|
22
|
+
|
|
23
|
+
/**
|
|
24
|
+
* Options to be passed to the API.
|
|
25
|
+
*/
|
|
26
|
+
options?: ServiceOptions;
|
|
27
|
+
};
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
2
|
+
// SPDX-License-Identifier: Apache-2.0
|
|
3
|
+
|
|
4
|
+
export type InAppMessageLayout =
|
|
5
|
+
| 'BOTTOM_BANNER'
|
|
6
|
+
| 'CAROUSEL'
|
|
7
|
+
| 'FULL_SCREEN'
|
|
8
|
+
| 'MIDDLE_BANNER'
|
|
9
|
+
| 'MODAL'
|
|
10
|
+
| 'TOP_BANNER';
|
|
11
|
+
|
|
12
|
+
export type InAppMessageAction = 'CLOSE' | 'DEEP_LINK' | 'LINK';
|
|
13
|
+
|
|
14
|
+
export type InAppMessageTextAlign = 'center' | 'left' | 'right';
|
|
15
|
+
|
|
16
|
+
interface InAppMessageContainer {
|
|
17
|
+
style?: InAppMessageStyle;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
interface InAppMessageHeader {
|
|
21
|
+
content: string;
|
|
22
|
+
style?: InAppMessageStyle;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
interface InAppMessageBody {
|
|
26
|
+
content: string;
|
|
27
|
+
style?: InAppMessageStyle;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
export interface InAppMessageImage {
|
|
31
|
+
src: string;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
export interface InAppMessageButton {
|
|
35
|
+
title: string;
|
|
36
|
+
action: InAppMessageAction;
|
|
37
|
+
url?: string;
|
|
38
|
+
style?: InAppMessageStyle;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
export interface InAppMessageStyle {
|
|
42
|
+
backgroundColor?: string;
|
|
43
|
+
borderRadius?: number;
|
|
44
|
+
color?: string;
|
|
45
|
+
textAlign?: InAppMessageTextAlign;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
export interface InAppMessageContent {
|
|
49
|
+
container?: InAppMessageContainer;
|
|
50
|
+
header?: InAppMessageHeader;
|
|
51
|
+
body?: InAppMessageBody;
|
|
52
|
+
image?: InAppMessageImage;
|
|
53
|
+
primaryButton?: InAppMessageButton;
|
|
54
|
+
secondaryButton?: InAppMessageButton;
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
export interface InAppMessage {
|
|
58
|
+
id: string;
|
|
59
|
+
layout: InAppMessageLayout;
|
|
60
|
+
content: InAppMessageContent[];
|
|
61
|
+
metadata?: any;
|
|
62
|
+
}
|