@aws-amplify/notifications 2.0.21 → 2.0.22-unstable.1aafa48.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (134) hide show
  1. package/dist/cjs/eventListeners/eventListeners.js +4 -7
  2. package/dist/cjs/eventListeners/eventListeners.js.map +1 -1
  3. package/dist/cjs/inAppMessaging/providers/pinpoint/apis/clearMessages.js +1 -1
  4. package/dist/cjs/inAppMessaging/providers/pinpoint/apis/clearMessages.js.map +1 -1
  5. package/dist/cjs/inAppMessaging/providers/pinpoint/apis/dispatchEvent.js +7 -7
  6. package/dist/cjs/inAppMessaging/providers/pinpoint/apis/dispatchEvent.js.map +1 -1
  7. package/dist/cjs/inAppMessaging/providers/pinpoint/apis/identifyUser.js +3 -2
  8. package/dist/cjs/inAppMessaging/providers/pinpoint/apis/identifyUser.js.map +1 -1
  9. package/dist/cjs/inAppMessaging/providers/pinpoint/apis/initializeInAppMessaging.js +2 -2
  10. package/dist/cjs/inAppMessaging/providers/pinpoint/apis/initializeInAppMessaging.js.map +1 -1
  11. package/dist/cjs/inAppMessaging/providers/pinpoint/apis/onMessageDisplayed.js +1 -1
  12. package/dist/cjs/inAppMessaging/providers/pinpoint/apis/onMessageDisplayed.js.map +1 -1
  13. package/dist/cjs/inAppMessaging/providers/pinpoint/apis/setConflictHandler.js +3 -27
  14. package/dist/cjs/inAppMessaging/providers/pinpoint/apis/setConflictHandler.js.map +1 -1
  15. package/dist/cjs/inAppMessaging/providers/pinpoint/apis/syncMessages.js +1 -1
  16. package/dist/cjs/inAppMessaging/providers/pinpoint/apis/syncMessages.js.map +1 -1
  17. package/dist/cjs/inAppMessaging/providers/pinpoint/utils/conflictHandlerManager.js +50 -0
  18. package/dist/cjs/inAppMessaging/providers/pinpoint/utils/conflictHandlerManager.js.map +1 -0
  19. package/dist/cjs/inAppMessaging/providers/pinpoint/utils/helpers.js +8 -8
  20. package/dist/cjs/inAppMessaging/providers/pinpoint/utils/helpers.js.map +1 -1
  21. package/dist/cjs/inAppMessaging/providers/pinpoint/utils/index.js +4 -1
  22. package/dist/cjs/inAppMessaging/providers/pinpoint/utils/index.js.map +1 -1
  23. package/dist/cjs/inAppMessaging/providers/pinpoint/utils/messageProcessingHelpers.js +5 -6
  24. package/dist/cjs/inAppMessaging/providers/pinpoint/utils/messageProcessingHelpers.js.map +1 -1
  25. package/dist/cjs/pushNotifications/providers/pinpoint/apis/initializePushNotifications.native.js +14 -5
  26. package/dist/cjs/pushNotifications/providers/pinpoint/apis/initializePushNotifications.native.js.map +1 -1
  27. package/dist/cjs/pushNotifications/providers/pinpoint/utils/getAnalyticsEvent.js +1 -1
  28. package/dist/cjs/pushNotifications/providers/pinpoint/utils/getAnalyticsEvent.js.map +1 -1
  29. package/dist/esm/eventListeners/eventListeners.d.ts +2 -2
  30. package/dist/esm/eventListeners/eventListeners.mjs +4 -7
  31. package/dist/esm/eventListeners/eventListeners.mjs.map +1 -1
  32. package/dist/esm/eventListeners/types.d.ts +6 -5
  33. package/dist/esm/inAppMessaging/providers/pinpoint/apis/clearMessages.mjs +1 -1
  34. package/dist/esm/inAppMessaging/providers/pinpoint/apis/clearMessages.mjs.map +1 -1
  35. package/dist/esm/inAppMessaging/providers/pinpoint/apis/dispatchEvent.mjs +5 -4
  36. package/dist/esm/inAppMessaging/providers/pinpoint/apis/dispatchEvent.mjs.map +1 -1
  37. package/dist/esm/inAppMessaging/providers/pinpoint/apis/identifyUser.d.ts +2 -2
  38. package/dist/esm/inAppMessaging/providers/pinpoint/apis/identifyUser.mjs +3 -2
  39. package/dist/esm/inAppMessaging/providers/pinpoint/apis/identifyUser.mjs.map +1 -1
  40. package/dist/esm/inAppMessaging/providers/pinpoint/apis/initializeInAppMessaging.mjs +2 -2
  41. package/dist/esm/inAppMessaging/providers/pinpoint/apis/initializeInAppMessaging.mjs.map +1 -1
  42. package/dist/esm/inAppMessaging/providers/pinpoint/apis/onMessageDisplayed.d.ts +1 -1
  43. package/dist/esm/inAppMessaging/providers/pinpoint/apis/onMessageDisplayed.mjs +1 -1
  44. package/dist/esm/inAppMessaging/providers/pinpoint/apis/onMessageDisplayed.mjs.map +1 -1
  45. package/dist/esm/inAppMessaging/providers/pinpoint/apis/setConflictHandler.d.ts +1 -2
  46. package/dist/esm/inAppMessaging/providers/pinpoint/apis/setConflictHandler.mjs +7 -27
  47. package/dist/esm/inAppMessaging/providers/pinpoint/apis/setConflictHandler.mjs.map +1 -1
  48. package/dist/esm/inAppMessaging/providers/pinpoint/apis/syncMessages.mjs +1 -1
  49. package/dist/esm/inAppMessaging/providers/pinpoint/apis/syncMessages.mjs.map +1 -1
  50. package/dist/esm/inAppMessaging/providers/pinpoint/types/inputs.d.ts +3 -3
  51. package/dist/esm/inAppMessaging/providers/pinpoint/types/types.d.ts +4 -4
  52. package/dist/esm/inAppMessaging/providers/pinpoint/utils/conflictHandlerManager.d.ts +13 -0
  53. package/dist/esm/inAppMessaging/providers/pinpoint/utils/conflictHandlerManager.mjs +46 -0
  54. package/dist/esm/inAppMessaging/providers/pinpoint/utils/conflictHandlerManager.mjs.map +1 -0
  55. package/dist/esm/inAppMessaging/providers/pinpoint/utils/helpers.d.ts +1 -1
  56. package/dist/esm/inAppMessaging/providers/pinpoint/utils/helpers.mjs +8 -8
  57. package/dist/esm/inAppMessaging/providers/pinpoint/utils/helpers.mjs.map +1 -1
  58. package/dist/esm/inAppMessaging/providers/pinpoint/utils/index.d.ts +1 -0
  59. package/dist/esm/inAppMessaging/providers/pinpoint/utils/index.mjs +1 -0
  60. package/dist/esm/inAppMessaging/providers/pinpoint/utils/index.mjs.map +1 -1
  61. package/dist/esm/inAppMessaging/providers/pinpoint/utils/messageProcessingHelpers.d.ts +1 -1
  62. package/dist/esm/inAppMessaging/providers/pinpoint/utils/messageProcessingHelpers.mjs +5 -6
  63. package/dist/esm/inAppMessaging/providers/pinpoint/utils/messageProcessingHelpers.mjs.map +1 -1
  64. package/dist/esm/inAppMessaging/providers/pinpoint/utils/userAgent.mjs.map +1 -1
  65. package/dist/esm/inAppMessaging/types/event.d.ts +2 -2
  66. package/dist/esm/inAppMessaging/types/inputs.d.ts +2 -2
  67. package/dist/esm/pushNotifications/providers/pinpoint/apis/initializePushNotifications.native.mjs +14 -5
  68. package/dist/esm/pushNotifications/providers/pinpoint/apis/initializePushNotifications.native.mjs.map +1 -1
  69. package/dist/esm/pushNotifications/providers/pinpoint/types/analytics.d.ts +2 -2
  70. package/dist/esm/pushNotifications/providers/pinpoint/types/inputs.d.ts +1 -1
  71. package/dist/esm/pushNotifications/providers/pinpoint/utils/createMessageEventRecorder.d.ts +1 -1
  72. package/dist/esm/pushNotifications/providers/pinpoint/utils/getAnalyticsEvent.mjs +1 -1
  73. package/dist/esm/pushNotifications/providers/pinpoint/utils/getAnalyticsEvent.mjs.map +1 -1
  74. package/dist/esm/pushNotifications/providers/pinpoint/utils/resolveConfig.mjs.map +1 -1
  75. package/dist/esm/pushNotifications/types/inputs.d.ts +2 -2
  76. package/dist/esm/pushNotifications/utils/resolveCredentials.mjs.map +1 -1
  77. package/package.json +104 -103
  78. package/src/eventListeners/eventListeners.ts +16 -9
  79. package/src/eventListeners/types.ts +7 -5
  80. package/src/inAppMessaging/errors/assertServiceError.ts +1 -0
  81. package/src/inAppMessaging/providers/pinpoint/apis/clearMessages.ts +3 -2
  82. package/src/inAppMessaging/providers/pinpoint/apis/dispatchEvent.ts +18 -11
  83. package/src/inAppMessaging/providers/pinpoint/apis/identifyUser.ts +5 -7
  84. package/src/inAppMessaging/providers/pinpoint/apis/initializeInAppMessaging.ts +5 -3
  85. package/src/inAppMessaging/providers/pinpoint/apis/notifyMessageInteraction.ts +1 -0
  86. package/src/inAppMessaging/providers/pinpoint/apis/onMessageActionTaken.ts +2 -0
  87. package/src/inAppMessaging/providers/pinpoint/apis/onMessageDismissed.ts +2 -0
  88. package/src/inAppMessaging/providers/pinpoint/apis/onMessageDisplayed.ts +3 -1
  89. package/src/inAppMessaging/providers/pinpoint/apis/onMessageReceived.ts +2 -0
  90. package/src/inAppMessaging/providers/pinpoint/apis/setConflictHandler.ts +7 -34
  91. package/src/inAppMessaging/providers/pinpoint/apis/syncMessages.ts +12 -10
  92. package/src/inAppMessaging/providers/pinpoint/types/inputs.ts +8 -7
  93. package/src/inAppMessaging/providers/pinpoint/types/types.ts +4 -4
  94. package/src/inAppMessaging/providers/pinpoint/utils/conflictHandlerManager.ts +54 -0
  95. package/src/inAppMessaging/providers/pinpoint/utils/helpers.ts +19 -9
  96. package/src/inAppMessaging/providers/pinpoint/utils/index.ts +4 -0
  97. package/src/inAppMessaging/providers/pinpoint/utils/messageProcessingHelpers.ts +19 -11
  98. package/src/inAppMessaging/providers/pinpoint/utils/resolveConfig.ts +2 -0
  99. package/src/inAppMessaging/providers/pinpoint/utils/resolveCredentials.ts +2 -0
  100. package/src/inAppMessaging/providers/pinpoint/utils/userAgent.ts +2 -2
  101. package/src/inAppMessaging/types/event.ts +2 -2
  102. package/src/inAppMessaging/types/inputs.ts +4 -3
  103. package/src/pushNotifications/errors/errorHelpers.ts +2 -0
  104. package/src/pushNotifications/providers/pinpoint/apis/getBadgeCount.native.ts +2 -0
  105. package/src/pushNotifications/providers/pinpoint/apis/getBadgeCount.ts +1 -0
  106. package/src/pushNotifications/providers/pinpoint/apis/getLaunchNotification.native.ts +2 -0
  107. package/src/pushNotifications/providers/pinpoint/apis/getLaunchNotification.ts +1 -0
  108. package/src/pushNotifications/providers/pinpoint/apis/getPermissionStatus.native.ts +2 -0
  109. package/src/pushNotifications/providers/pinpoint/apis/getPermissionStatus.ts +1 -0
  110. package/src/pushNotifications/providers/pinpoint/apis/identifyUser.native.ts +1 -0
  111. package/src/pushNotifications/providers/pinpoint/apis/identifyUser.ts +1 -0
  112. package/src/pushNotifications/providers/pinpoint/apis/initializePushNotifications.native.ts +21 -12
  113. package/src/pushNotifications/providers/pinpoint/apis/initializePushNotifications.ts +1 -0
  114. package/src/pushNotifications/providers/pinpoint/apis/onNotificationOpened.native.ts +1 -0
  115. package/src/pushNotifications/providers/pinpoint/apis/onNotificationOpened.ts +1 -0
  116. package/src/pushNotifications/providers/pinpoint/apis/onNotificationReceivedInBackground.native.ts +1 -0
  117. package/src/pushNotifications/providers/pinpoint/apis/onNotificationReceivedInBackground.ts +1 -0
  118. package/src/pushNotifications/providers/pinpoint/apis/onNotificationReceivedInForeground.native.ts +1 -0
  119. package/src/pushNotifications/providers/pinpoint/apis/onNotificationReceivedInForeground.ts +1 -0
  120. package/src/pushNotifications/providers/pinpoint/apis/onTokenReceived.native.ts +1 -0
  121. package/src/pushNotifications/providers/pinpoint/apis/onTokenReceived.ts +1 -0
  122. package/src/pushNotifications/providers/pinpoint/apis/requestPermissions.native.ts +2 -0
  123. package/src/pushNotifications/providers/pinpoint/apis/requestPermissions.ts +1 -0
  124. package/src/pushNotifications/providers/pinpoint/apis/setBadgeCount.native.ts +1 -0
  125. package/src/pushNotifications/providers/pinpoint/apis/setBadgeCount.ts +1 -0
  126. package/src/pushNotifications/providers/pinpoint/types/analytics.ts +2 -2
  127. package/src/pushNotifications/providers/pinpoint/types/inputs.ts +4 -3
  128. package/src/pushNotifications/providers/pinpoint/utils/createMessageEventRecorder.ts +5 -1
  129. package/src/pushNotifications/providers/pinpoint/utils/getAnalyticsEvent.ts +3 -1
  130. package/src/pushNotifications/providers/pinpoint/utils/getChannelType.ts +1 -0
  131. package/src/pushNotifications/providers/pinpoint/utils/resolveConfig.ts +3 -1
  132. package/src/pushNotifications/types/inputs.ts +4 -3
  133. package/src/pushNotifications/utils/getPushNotificationUserAgentString.ts +1 -1
  134. package/src/pushNotifications/utils/resolveCredentials.ts +3 -1
@@ -2,6 +2,7 @@
2
2
  // SPDX-License-Identifier: Apache-2.0
3
3
 
4
4
  import { PlatformNotSupportedError } from '@aws-amplify/core/internals/utils';
5
+
5
6
  import { PushNotificationMessage } from '../../../types';
6
7
  import {
7
8
  OnNotificationReceivedInForeground,
@@ -7,5 +7,6 @@ import { OnTokenReceived } from '../types';
7
7
 
8
8
  export const onTokenReceived: OnTokenReceived = input => {
9
9
  assertIsInitialized();
10
+
10
11
  return addEventListener('tokenReceived', input);
11
12
  };
@@ -2,6 +2,7 @@
2
2
  // SPDX-License-Identifier: Apache-2.0
3
3
 
4
4
  import { PlatformNotSupportedError } from '@aws-amplify/core/internals/utils';
5
+
5
6
  import {
6
7
  OnTokenReceived,
7
8
  OnTokenReceivedInput,
@@ -2,6 +2,7 @@
2
2
  // SPDX-License-Identifier: Apache-2.0
3
3
 
4
4
  import { loadAmplifyPushNotification } from '@aws-amplify/react-native';
5
+
5
6
  import { assertIsInitialized } from '../../../errors/errorHelpers';
6
7
  import { RequestPermissions } from '../types';
7
8
 
@@ -10,5 +11,6 @@ const { requestPermissions: requestPermissionsNative } =
10
11
 
11
12
  export const requestPermissions: RequestPermissions = async input => {
12
13
  assertIsInitialized();
14
+
13
15
  return requestPermissionsNative(input);
14
16
  };
@@ -2,6 +2,7 @@
2
2
  // SPDX-License-Identifier: Apache-2.0
3
3
 
4
4
  import { PlatformNotSupportedError } from '@aws-amplify/core/internals/utils';
5
+
5
6
  import { RequestPermissions } from '../types';
6
7
 
7
8
  /**
@@ -2,6 +2,7 @@
2
2
  // SPDX-License-Identifier: Apache-2.0
3
3
 
4
4
  import { loadAmplifyPushNotification } from '@aws-amplify/react-native';
5
+
5
6
  import { assertIsInitialized } from '../../../errors/errorHelpers';
6
7
  import { SetBadgeCount } from '../types';
7
8
 
@@ -2,6 +2,7 @@
2
2
  // SPDX-License-Identifier: Apache-2.0
3
3
 
4
4
  import { PlatformNotSupportedError } from '@aws-amplify/core/internals/utils';
5
+
5
6
  import { SetBadgeCount } from '../types';
6
7
 
7
8
  /**
@@ -8,7 +8,7 @@ export type PinpointMessageEvent =
8
8
 
9
9
  export type PinpointMessageEventSource = '_campaign' | '_journey';
10
10
 
11
- export type AnalyticsEventAttributes = {
11
+ export interface AnalyticsEventAttributes {
12
12
  source: PinpointMessageEventSource;
13
13
  attributes: Record<string, string>;
14
- };
14
+ }
@@ -1,17 +1,18 @@
1
1
  // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
2
  // SPDX-License-Identifier: Apache-2.0
3
3
 
4
- import { IdentifyUserOptions } from './options';
5
4
  import {
6
5
  PushNotificationIdentifyUserInput,
7
- PushNotificationRequestPermissionsInput,
8
- PushNotificationSetBadgeCountInput,
9
6
  PushNotificationOnNotificationOpenedInput,
10
7
  PushNotificationOnNotificationReceivedInBackgroundInput,
11
8
  PushNotificationOnNotificationReceivedInForegroundInput,
12
9
  PushNotificationOnTokenReceivedInput,
10
+ PushNotificationRequestPermissionsInput,
11
+ PushNotificationSetBadgeCountInput,
13
12
  } from '../../../types';
14
13
 
14
+ import { IdentifyUserOptions } from './options';
15
+
15
16
  export type IdentifyUserInput =
16
17
  PushNotificationIdentifyUserInput<IdentifyUserOptions>;
17
18
 
@@ -4,12 +4,14 @@
4
4
  import { record } from '@aws-amplify/core/internals/providers/pinpoint';
5
5
  import { ConsoleLogger } from '@aws-amplify/core';
6
6
  import { AWSCredentials } from '@aws-amplify/core/internals/utils';
7
+
7
8
  import { PinpointMessageEvent } from '../types';
8
9
  import {
9
10
  OnPushNotificationMessageHandler,
10
11
  PushNotificationMessage,
11
12
  } from '../../../types';
12
13
  import { resolveCredentials } from '../../../utils';
14
+
13
15
  import { getAnalyticsEvent } from './getAnalyticsEvent';
14
16
  import { getChannelType } from './getChannelType';
15
17
  import { resolveConfig } from './resolveConfig';
@@ -22,7 +24,7 @@ const logger = new ConsoleLogger('PushNotification.recordMessageEvent');
22
24
  export const createMessageEventRecorder =
23
25
  (
24
26
  event: PinpointMessageEvent,
25
- callback?: Function,
27
+ callback?: () => void,
26
28
  ): OnPushNotificationMessageHandler =>
27
29
  async message => {
28
30
  const { credentials } = await resolveCredentials();
@@ -53,8 +55,10 @@ const recordMessageEvent = async ({
53
55
  const analyticsEvent = getAnalyticsEvent(message, event);
54
56
  if (!analyticsEvent) {
55
57
  logger.debug('A notification missing event information was not recorded');
58
+
56
59
  return;
57
60
  }
61
+
58
62
  return record({
59
63
  appId,
60
64
  category: 'PushNotification',
@@ -2,6 +2,7 @@
2
2
  // SPDX-License-Identifier: Apache-2.0
3
3
 
4
4
  import { PinpointAnalyticsEvent } from '@aws-amplify/core/internals/providers/pinpoint';
5
+
5
6
  import { AnalyticsEventAttributes, PinpointMessageEvent } from '../types';
6
7
  import { PushNotificationMessage } from '../../../types';
7
8
 
@@ -25,6 +26,7 @@ export const getAnalyticsEvent = (
25
26
  return null;
26
27
  }
27
28
  const { source, attributes } = eventAttributes;
29
+
28
30
  return {
29
31
  attributes,
30
32
  name: `${source}.${event}`,
@@ -37,7 +39,7 @@ const getAnalyticsEventAttributes = (
37
39
  if (!data) {
38
40
  return;
39
41
  }
40
- if (data.hasOwnProperty(ANDROID_CAMPAIGN_ID_KEY)) {
42
+ if (Object.prototype.hasOwnProperty.call(data, ANDROID_CAMPAIGN_ID_KEY)) {
41
43
  return {
42
44
  source: '_campaign',
43
45
  attributes: {
@@ -3,6 +3,7 @@
3
3
 
4
4
  import { PlatformNotSupportedError } from '@aws-amplify/core/internals/utils';
5
5
  import { getOperatingSystem } from '@aws-amplify/react-native';
6
+
6
7
  import { ChannelType } from '../types';
7
8
 
8
9
  const operatingSystem = getOperatingSystem();
@@ -2,7 +2,8 @@
2
2
  // SPDX-License-Identifier: Apache-2.0
3
3
 
4
4
  import { Amplify } from '@aws-amplify/core';
5
- import { assert, PushNotificationValidationErrorCode } from '../../../errors';
5
+
6
+ import { PushNotificationValidationErrorCode, assert } from '../../../errors';
6
7
 
7
8
  /**
8
9
  * @internal
@@ -12,5 +13,6 @@ export const resolveConfig = () => {
12
13
  Amplify.getConfig().Notifications?.PushNotification?.Pinpoint ?? {};
13
14
  assert(!!appId, PushNotificationValidationErrorCode.NoAppId);
14
15
  assert(!!region, PushNotificationValidationErrorCode.NoRegion);
16
+
15
17
  return { appId, region };
16
18
  };
@@ -2,6 +2,7 @@
2
2
  // SPDX-License-Identifier: Apache-2.0
3
3
 
4
4
  import { UserProfile } from '@aws-amplify/core';
5
+
5
6
  import { PushNotificationServiceOptions } from './options';
6
7
  import { PushNotificationPermissions } from './module';
7
8
  import {
@@ -9,10 +10,10 @@ import {
9
10
  OnTokenReceivedHandler,
10
11
  } from './pushNotifications';
11
12
 
12
- export type PushNotificationIdentifyUserInput<
13
+ export interface PushNotificationIdentifyUserInput<
13
14
  ServiceOptions extends
14
15
  PushNotificationServiceOptions = PushNotificationServiceOptions,
15
- > = {
16
+ > {
16
17
  /**
17
18
  * A User ID associated to the current device.
18
19
  */
@@ -27,7 +28,7 @@ export type PushNotificationIdentifyUserInput<
27
28
  * Options to be passed to the API.
28
29
  */
29
30
  options?: ServiceOptions;
30
- };
31
+ }
31
32
 
32
33
  export type PushNotificationRequestPermissionsInput =
33
34
  PushNotificationPermissions;
@@ -1,8 +1,8 @@
1
1
  // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
2
  // SPDX-License-Identifier: Apache-2.0
3
3
  import {
4
- PushNotificationAction,
5
4
  Category,
5
+ PushNotificationAction,
6
6
  getAmplifyUserAgent,
7
7
  } from '@aws-amplify/core/internals/utils';
8
8
 
@@ -2,9 +2,10 @@
2
2
  // SPDX-License-Identifier: Apache-2.0
3
3
 
4
4
  import { fetchAuthSession } from '@aws-amplify/core';
5
+
5
6
  import {
6
- assert,
7
7
  PushNotificationValidationErrorCode,
8
+ assert,
8
9
  } from '../errors/errorHelpers';
9
10
 
10
11
  /**
@@ -13,5 +14,6 @@ import {
13
14
  export const resolveCredentials = async () => {
14
15
  const { credentials, identityId } = await fetchAuthSession();
15
16
  assert(!!credentials, PushNotificationValidationErrorCode.NoCredentials);
17
+
16
18
  return { credentials, identityId };
17
19
  };