@aws-amplify/notifications 2.0.21 → 2.0.22-unstable.1a6d358.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
@@ -12,12 +12,7 @@ const notifyEventListeners = (type, ...args) => {
12
12
  };
13
13
  exports.notifyEventListeners = notifyEventListeners;
14
14
  const notifyEventListenersAndAwaitHandlers = (type, ...args) => Promise.all(Array.from(eventListeners[type] ?? []).map(async (listener) => {
15
- try {
16
- await listener.handleEvent(...args);
17
- }
18
- catch (err) {
19
- throw err;
20
- }
15
+ await listener.handleEvent(...args);
21
16
  }));
22
17
  exports.notifyEventListenersAndAwaitHandlers = notifyEventListenersAndAwaitHandlers;
23
18
  const addEventListener = (type, handler) => {
@@ -33,7 +28,9 @@ const addEventListener = (type, handler) => {
33
28
  };
34
29
  eventListeners[type].add(listener);
35
30
  return {
36
- remove: () => listener.remove(),
31
+ remove: () => {
32
+ listener.remove();
33
+ },
37
34
  };
38
35
  };
39
36
  exports.addEventListener = addEventListener;
@@ -1 +1 @@
1
- {"version":3,"file":"eventListeners.js","sources":["../../../src/eventListeners/eventListeners.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.addEventListener = exports.notifyEventListenersAndAwaitHandlers = exports.notifyEventListeners = void 0;\nconst eventListeners = {};\nconst notifyEventListeners = (type, ...args) => {\n eventListeners[type]?.forEach(listener => {\n listener.handleEvent(...args);\n });\n};\nexports.notifyEventListeners = notifyEventListeners;\nconst notifyEventListenersAndAwaitHandlers = (type, ...args) => Promise.all(Array.from(eventListeners[type] ?? []).map(async (listener) => {\n try {\n await listener.handleEvent(...args);\n }\n catch (err) {\n throw err;\n }\n}));\nexports.notifyEventListenersAndAwaitHandlers = notifyEventListenersAndAwaitHandlers;\nconst addEventListener = (type, handler) => {\n // If there is no listener set for the event type, just create it\n if (!eventListeners[type]) {\n eventListeners[type] = new Set();\n }\n const listener = {\n handleEvent: handler,\n remove: () => {\n eventListeners[type].delete(listener);\n },\n };\n eventListeners[type].add(listener);\n return {\n remove: () => listener.remove(),\n };\n};\nexports.addEventListener = addEventListener;\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9D,OAAO,CAAC,gBAAgB,GAAG,OAAO,CAAC,oCAAoC,GAAG,OAAO,CAAC,oBAAoB,GAAG,KAAK,CAAC,CAAC;AAChH,MAAM,cAAc,GAAG,EAAE,CAAC;AAC1B,MAAM,oBAAoB,GAAG,CAAC,IAAI,EAAE,GAAG,IAAI,KAAK;AAChD,IAAI,cAAc,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,QAAQ,IAAI;AAC9C,QAAQ,QAAQ,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,CAAC;AACtC,KAAK,CAAC,CAAC;AACP,CAAC,CAAC;AACF,OAAO,CAAC,oBAAoB,GAAG,oBAAoB,CAAC;AACpD,MAAM,oCAAoC,GAAG,CAAC,IAAI,EAAE,GAAG,IAAI,KAAK,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,OAAO,QAAQ,KAAK;AAC3I,IAAI,IAAI;AACR,QAAQ,MAAM,QAAQ,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,CAAC;AAC5C,KAAK;AACL,IAAI,OAAO,GAAG,EAAE;AAChB,QAAQ,MAAM,GAAG,CAAC;AAClB,KAAK;AACL,CAAC,CAAC,CAAC,CAAC;AACJ,OAAO,CAAC,oCAAoC,GAAG,oCAAoC,CAAC;AACpF,MAAM,gBAAgB,GAAG,CAAC,IAAI,EAAE,OAAO,KAAK;AAC5C;AACA,IAAI,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE;AAC/B,QAAQ,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,EAAE,CAAC;AACzC,KAAK;AACL,IAAI,MAAM,QAAQ,GAAG;AACrB,QAAQ,WAAW,EAAE,OAAO;AAC5B,QAAQ,MAAM,EAAE,MAAM;AACtB,YAAY,cAAc,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;AAClD,SAAS;AACT,KAAK,CAAC;AACN,IAAI,cAAc,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;AACvC,IAAI,OAAO;AACX,QAAQ,MAAM,EAAE,MAAM,QAAQ,CAAC,MAAM,EAAE;AACvC,KAAK,CAAC;AACN,CAAC,CAAC;AACF,OAAO,CAAC,gBAAgB,GAAG,gBAAgB;;"}
1
+ {"version":3,"file":"eventListeners.js","sources":["../../../src/eventListeners/eventListeners.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.addEventListener = exports.notifyEventListenersAndAwaitHandlers = exports.notifyEventListeners = void 0;\nconst eventListeners = {};\nconst notifyEventListeners = (type, ...args) => {\n eventListeners[type]?.forEach(listener => {\n listener.handleEvent(...args);\n });\n};\nexports.notifyEventListeners = notifyEventListeners;\nconst notifyEventListenersAndAwaitHandlers = (type, ...args) => Promise.all(Array.from(eventListeners[type] ?? []).map(async (listener) => {\n await listener.handleEvent(...args);\n}));\nexports.notifyEventListenersAndAwaitHandlers = notifyEventListenersAndAwaitHandlers;\nconst addEventListener = (type, handler) => {\n // If there is no listener set for the event type, just create it\n if (!eventListeners[type]) {\n eventListeners[type] = new Set();\n }\n const listener = {\n handleEvent: handler,\n remove: () => {\n eventListeners[type].delete(listener);\n },\n };\n eventListeners[type].add(listener);\n return {\n remove: () => {\n listener.remove();\n },\n };\n};\nexports.addEventListener = addEventListener;\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9D,OAAO,CAAC,gBAAgB,GAAG,OAAO,CAAC,oCAAoC,GAAG,OAAO,CAAC,oBAAoB,GAAG,KAAK,CAAC,CAAC;AAChH,MAAM,cAAc,GAAG,EAAE,CAAC;AAC1B,MAAM,oBAAoB,GAAG,CAAC,IAAI,EAAE,GAAG,IAAI,KAAK;AAChD,IAAI,cAAc,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,QAAQ,IAAI;AAC9C,QAAQ,QAAQ,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,CAAC;AACtC,KAAK,CAAC,CAAC;AACP,CAAC,CAAC;AACF,OAAO,CAAC,oBAAoB,GAAG,oBAAoB,CAAC;AACpD,MAAM,oCAAoC,GAAG,CAAC,IAAI,EAAE,GAAG,IAAI,KAAK,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,OAAO,QAAQ,KAAK;AAC3I,IAAI,MAAM,QAAQ,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,CAAC;AACxC,CAAC,CAAC,CAAC,CAAC;AACJ,OAAO,CAAC,oCAAoC,GAAG,oCAAoC,CAAC;AACpF,MAAM,gBAAgB,GAAG,CAAC,IAAI,EAAE,OAAO,KAAK;AAC5C;AACA,IAAI,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE;AAC/B,QAAQ,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,EAAE,CAAC;AACzC,KAAK;AACL,IAAI,MAAM,QAAQ,GAAG;AACrB,QAAQ,WAAW,EAAE,OAAO;AAC5B,QAAQ,MAAM,EAAE,MAAM;AACtB,YAAY,cAAc,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;AAClD,SAAS;AACT,KAAK,CAAC;AACN,IAAI,cAAc,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;AACvC,IAAI,OAAO;AACX,QAAQ,MAAM,EAAE,MAAM;AACtB,YAAY,QAAQ,CAAC,MAAM,EAAE,CAAC;AAC9B,SAAS;AACT,KAAK,CAAC;AACN,CAAC,CAAC;AACF,OAAO,CAAC,gBAAgB,GAAG,gBAAgB;;"}
@@ -22,7 +22,7 @@ const utils_2 = require("../../../utils");
22
22
  async function clearMessages() {
23
23
  (0, utils_2.assertIsInitialized)();
24
24
  const key = `${utils_1.PINPOINT_KEY_PREFIX}${utils_1.STORAGE_KEY_SUFFIX}`;
25
- return await core_1.defaultStorage.removeItem(key);
25
+ await core_1.defaultStorage.removeItem(key);
26
26
  }
27
27
  exports.clearMessages = clearMessages;
28
28
  //# sourceMappingURL=clearMessages.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"clearMessages.js","sources":["../../../../../../src/inAppMessaging/providers/pinpoint/apis/clearMessages.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.clearMessages = void 0;\nconst core_1 = require(\"@aws-amplify/core\");\nconst utils_1 = require(\"../utils\");\nconst utils_2 = require(\"../../../utils\");\n/**\n * Clear locally cached messages.\n *\n * @throws validation: {@link InAppMessagingValidationErrorCode} - Thrown if In App messaging hasn't been initialized.\n * @returns A promise that will resolve when the operation is complete.\n * @example\n * ```ts\n * // Clear locally cached messages.\n * await clearMessages();\n *\n * ```\n */\nasync function clearMessages() {\n (0, utils_2.assertIsInitialized)();\n const key = `${utils_1.PINPOINT_KEY_PREFIX}${utils_1.STORAGE_KEY_SUFFIX}`;\n return await core_1.defaultStorage.removeItem(key);\n}\nexports.clearMessages = clearMessages;\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9D,OAAO,CAAC,aAAa,GAAG,KAAK,CAAC,CAAC;AAC/B,MAAM,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;AAC5C,MAAM,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AACpC,MAAM,OAAO,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,aAAa,GAAG;AAC/B,IAAI,IAAI,OAAO,CAAC,mBAAmB,GAAG,CAAC;AACvC,IAAI,MAAM,GAAG,GAAG,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC,CAAC;AAC9E,IAAI,OAAO,MAAM,MAAM,CAAC,cAAc,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;AACvD,CAAC;AACD,OAAO,CAAC,aAAa,GAAG,aAAa;;"}
1
+ {"version":3,"file":"clearMessages.js","sources":["../../../../../../src/inAppMessaging/providers/pinpoint/apis/clearMessages.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.clearMessages = void 0;\nconst core_1 = require(\"@aws-amplify/core\");\nconst utils_1 = require(\"../utils\");\nconst utils_2 = require(\"../../../utils\");\n/**\n * Clear locally cached messages.\n *\n * @throws validation: {@link InAppMessagingValidationErrorCode} - Thrown if In App messaging hasn't been initialized.\n * @returns A promise that will resolve when the operation is complete.\n * @example\n * ```ts\n * // Clear locally cached messages.\n * await clearMessages();\n *\n * ```\n */\nasync function clearMessages() {\n (0, utils_2.assertIsInitialized)();\n const key = `${utils_1.PINPOINT_KEY_PREFIX}${utils_1.STORAGE_KEY_SUFFIX}`;\n await core_1.defaultStorage.removeItem(key);\n}\nexports.clearMessages = clearMessages;\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9D,OAAO,CAAC,aAAa,GAAG,KAAK,CAAC,CAAC;AAC/B,MAAM,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;AAC5C,MAAM,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AACpC,MAAM,OAAO,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,aAAa,GAAG;AAC/B,IAAI,IAAI,OAAO,CAAC,mBAAmB,GAAG,CAAC;AACvC,IAAI,MAAM,GAAG,GAAG,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC,CAAC;AAC9E,IAAI,MAAM,MAAM,CAAC,cAAc,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;AAChD,CAAC;AACD,OAAO,CAAC,aAAa,GAAG,aAAa;;"}
@@ -5,13 +5,12 @@
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.dispatchEvent = void 0;
7
7
  const tslib_1 = require("tslib");
8
- const utils_1 = require("../utils");
9
8
  const flatten_js_1 = tslib_1.__importDefault(require("lodash/flatten.js"));
10
9
  const core_1 = require("@aws-amplify/core");
11
10
  const eventListeners_1 = require("../../../../eventListeners");
12
11
  const errors_1 = require("../../../errors");
13
- const setConflictHandler_1 = require("./setConflictHandler");
14
- const utils_2 = require("../../../utils");
12
+ const utils_1 = require("../../../utils");
13
+ const utils_2 = require("../utils");
15
14
  /**
16
15
  * Triggers an In-App message to be displayed. Use this after your campaigns have been synced to the device using
17
16
  * {@link syncMessages}. Based on the messages synced and the event passed to this API, it triggers the display
@@ -40,14 +39,15 @@ const utils_2 = require("../../../utils");
40
39
  * ```
41
40
  */
42
41
  async function dispatchEvent(input) {
43
- (0, utils_2.assertIsInitialized)();
42
+ (0, utils_1.assertIsInitialized)();
44
43
  try {
45
- const key = `${utils_1.PINPOINT_KEY_PREFIX}${utils_1.STORAGE_KEY_SUFFIX}`;
44
+ const key = `${utils_2.PINPOINT_KEY_PREFIX}${utils_2.STORAGE_KEY_SUFFIX}`;
46
45
  const cachedMessages = await core_1.defaultStorage.getItem(key);
47
- const messages = await (0, utils_1.processInAppMessages)(cachedMessages ? JSON.parse(cachedMessages) : [], input);
46
+ const messages = await (0, utils_2.processInAppMessages)(cachedMessages ? JSON.parse(cachedMessages) : [], input);
48
47
  const flattenedMessages = (0, flatten_js_1.default)(messages);
49
48
  if (flattenedMessages.length > 0) {
50
- (0, eventListeners_1.notifyEventListeners)('messageReceived', (0, setConflictHandler_1.conflictHandler)(flattenedMessages));
49
+ const conflictHandler = (0, utils_2.getConflictHandler)();
50
+ (0, eventListeners_1.notifyEventListeners)('messageReceived', conflictHandler(flattenedMessages));
51
51
  }
52
52
  }
53
53
  catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"dispatchEvent.js","sources":["../../../../../../src/inAppMessaging/providers/pinpoint/apis/dispatchEvent.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.dispatchEvent = void 0;\nconst tslib_1 = require(\"tslib\");\nconst utils_1 = require(\"../utils\");\nconst flatten_js_1 = tslib_1.__importDefault(require(\"lodash/flatten.js\"));\nconst core_1 = require(\"@aws-amplify/core\");\nconst eventListeners_1 = require(\"../../../../eventListeners\");\nconst errors_1 = require(\"../../../errors\");\nconst setConflictHandler_1 = require(\"./setConflictHandler\");\nconst utils_2 = require(\"../../../utils\");\n/**\n * Triggers an In-App message to be displayed. Use this after your campaigns have been synced to the device using\n * {@link syncMessages}. Based on the messages synced and the event passed to this API, it triggers the display\n * of the In-App message that meets the criteria.\n *\n * @remark\n * If an event would trigger multiple messages, the message closest to expiry will be chosen by default.\n * To change this behavior, you can use the {@link setConflictHandler} API to provide\n * your own logic for resolving message conflicts.\n *\n * @param input The input object that holds the event to be dispatched.\n *\n * @throws validation: {@link InAppMessagingValidationErrorCode} - Thrown when the provided parameters or library\n * configuration is incorrect, or if In App messaging hasn't been initialized.\n * @throws service exceptions - Thrown when the underlying Pinpoint service returns an error.\n *\n * @returns A promise that will resolve when the operation is complete.\n *\n * @example\n * ```ts\n * // Sync message before disptaching an event\n * await syncMessages();\n *\n * // Dispatch an event\n * await dispatchEvent({ name: 'test_event' });\n * ```\n */\nasync function dispatchEvent(input) {\n (0, utils_2.assertIsInitialized)();\n try {\n const key = `${utils_1.PINPOINT_KEY_PREFIX}${utils_1.STORAGE_KEY_SUFFIX}`;\n const cachedMessages = await core_1.defaultStorage.getItem(key);\n const messages = await (0, utils_1.processInAppMessages)(cachedMessages ? JSON.parse(cachedMessages) : [], input);\n const flattenedMessages = (0, flatten_js_1.default)(messages);\n if (flattenedMessages.length > 0) {\n (0, eventListeners_1.notifyEventListeners)('messageReceived', (0, setConflictHandler_1.conflictHandler)(flattenedMessages));\n }\n }\n catch (error) {\n (0, errors_1.assertServiceError)(error);\n throw error;\n }\n}\nexports.dispatchEvent = dispatchEvent;\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9D,OAAO,CAAC,aAAa,GAAG,KAAK,CAAC,CAAC;AAC/B,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;AACjC,MAAM,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AACpC,MAAM,YAAY,GAAG,OAAO,CAAC,eAAe,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC,CAAC;AAC3E,MAAM,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;AAC5C,MAAM,gBAAgB,GAAG,OAAO,CAAC,4BAA4B,CAAC,CAAC;AAC/D,MAAM,QAAQ,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;AAC5C,MAAM,oBAAoB,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAAC;AAC7D,MAAM,OAAO,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,aAAa,CAAC,KAAK,EAAE;AACpC,IAAI,IAAI,OAAO,CAAC,mBAAmB,GAAG,CAAC;AACvC,IAAI,IAAI;AACR,QAAQ,MAAM,GAAG,GAAG,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC,CAAC;AAClF,QAAQ,MAAM,cAAc,GAAG,MAAM,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;AACxE,QAAQ,MAAM,QAAQ,GAAG,MAAM,CAAC,CAAC,EAAE,OAAO,CAAC,oBAAoB,EAAE,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,GAAG,EAAE,EAAE,KAAK,CAAC,CAAC;AAC1H,QAAQ,MAAM,iBAAiB,GAAG,CAAC,CAAC,EAAE,YAAY,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;AACtE,QAAQ,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE;AAC1C,YAAY,CAAC,CAAC,EAAE,gBAAgB,CAAC,oBAAoB,EAAE,iBAAiB,EAAE,CAAC,CAAC,EAAE,oBAAoB,CAAC,eAAe,EAAE,iBAAiB,CAAC,CAAC,CAAC;AACxI,SAAS;AACT,KAAK;AACL,IAAI,OAAO,KAAK,EAAE;AAClB,QAAQ,IAAI,QAAQ,CAAC,kBAAkB,EAAE,KAAK,CAAC,CAAC;AAChD,QAAQ,MAAM,KAAK,CAAC;AACpB,KAAK;AACL,CAAC;AACD,OAAO,CAAC,aAAa,GAAG,aAAa;;"}
1
+ {"version":3,"file":"dispatchEvent.js","sources":["../../../../../../src/inAppMessaging/providers/pinpoint/apis/dispatchEvent.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.dispatchEvent = void 0;\nconst tslib_1 = require(\"tslib\");\nconst flatten_js_1 = tslib_1.__importDefault(require(\"lodash/flatten.js\"));\nconst core_1 = require(\"@aws-amplify/core\");\nconst eventListeners_1 = require(\"../../../../eventListeners\");\nconst errors_1 = require(\"../../../errors\");\nconst utils_1 = require(\"../../../utils\");\nconst utils_2 = require(\"../utils\");\n/**\n * Triggers an In-App message to be displayed. Use this after your campaigns have been synced to the device using\n * {@link syncMessages}. Based on the messages synced and the event passed to this API, it triggers the display\n * of the In-App message that meets the criteria.\n *\n * @remark\n * If an event would trigger multiple messages, the message closest to expiry will be chosen by default.\n * To change this behavior, you can use the {@link setConflictHandler} API to provide\n * your own logic for resolving message conflicts.\n *\n * @param input The input object that holds the event to be dispatched.\n *\n * @throws validation: {@link InAppMessagingValidationErrorCode} - Thrown when the provided parameters or library\n * configuration is incorrect, or if In App messaging hasn't been initialized.\n * @throws service exceptions - Thrown when the underlying Pinpoint service returns an error.\n *\n * @returns A promise that will resolve when the operation is complete.\n *\n * @example\n * ```ts\n * // Sync message before disptaching an event\n * await syncMessages();\n *\n * // Dispatch an event\n * await dispatchEvent({ name: 'test_event' });\n * ```\n */\nasync function dispatchEvent(input) {\n (0, utils_1.assertIsInitialized)();\n try {\n const key = `${utils_2.PINPOINT_KEY_PREFIX}${utils_2.STORAGE_KEY_SUFFIX}`;\n const cachedMessages = await core_1.defaultStorage.getItem(key);\n const messages = await (0, utils_2.processInAppMessages)(cachedMessages ? JSON.parse(cachedMessages) : [], input);\n const flattenedMessages = (0, flatten_js_1.default)(messages);\n if (flattenedMessages.length > 0) {\n const conflictHandler = (0, utils_2.getConflictHandler)();\n (0, eventListeners_1.notifyEventListeners)('messageReceived', conflictHandler(flattenedMessages));\n }\n }\n catch (error) {\n (0, errors_1.assertServiceError)(error);\n throw error;\n }\n}\nexports.dispatchEvent = dispatchEvent;\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9D,OAAO,CAAC,aAAa,GAAG,KAAK,CAAC,CAAC;AAC/B,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;AACjC,MAAM,YAAY,GAAG,OAAO,CAAC,eAAe,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC,CAAC;AAC3E,MAAM,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;AAC5C,MAAM,gBAAgB,GAAG,OAAO,CAAC,4BAA4B,CAAC,CAAC;AAC/D,MAAM,QAAQ,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;AAC5C,MAAM,OAAO,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;AAC1C,MAAM,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,aAAa,CAAC,KAAK,EAAE;AACpC,IAAI,IAAI,OAAO,CAAC,mBAAmB,GAAG,CAAC;AACvC,IAAI,IAAI;AACR,QAAQ,MAAM,GAAG,GAAG,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC,CAAC;AAClF,QAAQ,MAAM,cAAc,GAAG,MAAM,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;AACxE,QAAQ,MAAM,QAAQ,GAAG,MAAM,CAAC,CAAC,EAAE,OAAO,CAAC,oBAAoB,EAAE,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,GAAG,EAAE,EAAE,KAAK,CAAC,CAAC;AAC1H,QAAQ,MAAM,iBAAiB,GAAG,CAAC,CAAC,EAAE,YAAY,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;AACtE,QAAQ,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE;AAC1C,YAAY,MAAM,eAAe,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,kBAAkB,GAAG,CAAC;AACtE,YAAY,CAAC,CAAC,EAAE,gBAAgB,CAAC,oBAAoB,EAAE,iBAAiB,EAAE,eAAe,CAAC,iBAAiB,CAAC,CAAC,CAAC;AAC9G,SAAS;AACT,KAAK;AACL,IAAI,OAAO,KAAK,EAAE;AAClB,QAAQ,IAAI,QAAQ,CAAC,kBAAkB,EAAE,KAAK,CAAC,CAAC;AAChD,QAAQ,MAAM,KAAK,CAAC;AACpB,KAAK;AACL,CAAC;AACD,OAAO,CAAC,aAAa,GAAG,aAAa;;"}
@@ -13,7 +13,7 @@ const utils_3 = require("../../../utils");
13
13
  * profile and activities or actions in your application. Activity can be tracked across devices & platforms by using
14
14
  * the same `userId`.
15
15
  *
16
- * @param {IdentifyUserParameters} params The input object used to construct requests sent to Pinpoint's UpdateEndpoint
16
+ * @param input The input object that conforms to {@link IdentifyUserInput} used to construct requests sent to Pinpoint's UpdateEndpoint
17
17
  * API.
18
18
  * @throws service: {@link UpdateEndpointException} - Thrown when the underlying Pinpoint service returns an error.
19
19
  * @throws validation: {@link InAppMessagingValidationErrorCode} - Thrown when the provided parameters or library
@@ -57,7 +57,8 @@ const utils_3 = require("../../../utils");
57
57
  * },
58
58
  * });
59
59
  */
60
- const identifyUser = async ({ userId, userProfile, options, }) => {
60
+ const identifyUser = async (input) => {
61
+ const { userId, userProfile, options } = input;
61
62
  (0, utils_3.assertIsInitialized)();
62
63
  const { credentials, identityId } = await (0, utils_2.resolveCredentials)();
63
64
  const { appId, region } = (0, utils_2.resolveConfig)();
@@ -1 +1 @@
1
- {"version":3,"file":"identifyUser.js","sources":["../../../../../../src/inAppMessaging/providers/pinpoint/apis/identifyUser.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.identifyUser = void 0;\nconst utils_1 = require(\"@aws-amplify/core/internals/utils\");\nconst pinpoint_1 = require(\"@aws-amplify/core/internals/providers/pinpoint\");\nconst utils_2 = require(\"../utils\");\nconst utils_3 = require(\"../../../utils\");\n/**\n * Sends information about a user to Pinpoint. Sending user information allows you to associate a user to their user\n * profile and activities or actions in your application. Activity can be tracked across devices & platforms by using\n * the same `userId`.\n *\n * @param {IdentifyUserParameters} params The input object used to construct requests sent to Pinpoint's UpdateEndpoint\n * API.\n * @throws service: {@link UpdateEndpointException} - Thrown when the underlying Pinpoint service returns an error.\n * @throws validation: {@link InAppMessagingValidationErrorCode} - Thrown when the provided parameters or library\n * configuration is incorrect, or if In App messaging hasn't been initialized.\n * @returns A promise that will resolve when the operation is complete.\n * @example\n * ```ts\n * // Identify a user with Pinpoint\n * await identifyUser({\n * userId,\n * userProfile: {\n * email: 'userEmail@example.com'\n * customProperties: {\n * phoneNumber: ['555-555-5555'],\n * },\n * }\n * });\n * ```\n *\n * @example\n * ```ts\n * // Identify a user with Pinpoint specific options\n * await identifyUser({\n * userId,\n * userProfile: {\n * email: 'userEmail@example.com'\n * customProperties: {\n * phoneNumber: ['555-555-5555'],\n * },\n * demographic: {\n * platform: 'ios',\n * timezone: 'America/Los_Angeles'\n * }\n * },\n * options: {\n * address: 'device-address',\n * optOut: 'NONE',\n * userAttributes: {\n * interests: ['food']\n * },\n * },\n * });\n */\nconst identifyUser = async ({ userId, userProfile, options, }) => {\n (0, utils_3.assertIsInitialized)();\n const { credentials, identityId } = await (0, utils_2.resolveCredentials)();\n const { appId, region } = (0, utils_2.resolveConfig)();\n const { address, optOut, userAttributes } = options ?? {};\n (0, pinpoint_1.updateEndpoint)({\n address,\n channelType: utils_2.CHANNEL_TYPE,\n optOut,\n appId,\n category: utils_2.CATEGORY,\n credentials,\n identityId,\n region,\n userAttributes,\n userId,\n userProfile,\n userAgentValue: (0, utils_2.getInAppMessagingUserAgentString)(utils_1.InAppMessagingAction.IdentifyUser),\n });\n};\nexports.identifyUser = identifyUser;\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9D,OAAO,CAAC,YAAY,GAAG,KAAK,CAAC,CAAC;AAC9B,MAAM,OAAO,GAAG,OAAO,CAAC,mCAAmC,CAAC,CAAC;AAC7D,MAAM,UAAU,GAAG,OAAO,CAAC,gDAAgD,CAAC,CAAC;AAC7E,MAAM,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AACpC,MAAM,OAAO,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,YAAY,GAAG,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,GAAG,KAAK;AAClE,IAAI,IAAI,OAAO,CAAC,mBAAmB,GAAG,CAAC;AACvC,IAAI,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE,GAAG,MAAM,IAAI,OAAO,CAAC,kBAAkB,GAAG,CAAC;AAChF,IAAI,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,OAAO,CAAC,aAAa,GAAG,CAAC;AAC3D,IAAI,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,GAAG,OAAO,IAAI,EAAE,CAAC;AAC9D,IAAI,IAAI,UAAU,CAAC,cAAc,EAAE;AACnC,QAAQ,OAAO;AACf,QAAQ,WAAW,EAAE,OAAO,CAAC,YAAY;AACzC,QAAQ,MAAM;AACd,QAAQ,KAAK;AACb,QAAQ,QAAQ,EAAE,OAAO,CAAC,QAAQ;AAClC,QAAQ,WAAW;AACnB,QAAQ,UAAU;AAClB,QAAQ,MAAM;AACd,QAAQ,cAAc;AACtB,QAAQ,MAAM;AACd,QAAQ,WAAW;AACnB,QAAQ,cAAc,EAAE,IAAI,OAAO,CAAC,gCAAgC,EAAE,OAAO,CAAC,oBAAoB,CAAC,YAAY,CAAC;AAChH,KAAK,CAAC,CAAC;AACP,CAAC,CAAC;AACF,OAAO,CAAC,YAAY,GAAG,YAAY;;"}
1
+ {"version":3,"file":"identifyUser.js","sources":["../../../../../../src/inAppMessaging/providers/pinpoint/apis/identifyUser.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.identifyUser = void 0;\nconst utils_1 = require(\"@aws-amplify/core/internals/utils\");\nconst pinpoint_1 = require(\"@aws-amplify/core/internals/providers/pinpoint\");\nconst utils_2 = require(\"../utils\");\nconst utils_3 = require(\"../../../utils\");\n/**\n * Sends information about a user to Pinpoint. Sending user information allows you to associate a user to their user\n * profile and activities or actions in your application. Activity can be tracked across devices & platforms by using\n * the same `userId`.\n *\n * @param input The input object that conforms to {@link IdentifyUserInput} used to construct requests sent to Pinpoint's UpdateEndpoint\n * API.\n * @throws service: {@link UpdateEndpointException} - Thrown when the underlying Pinpoint service returns an error.\n * @throws validation: {@link InAppMessagingValidationErrorCode} - Thrown when the provided parameters or library\n * configuration is incorrect, or if In App messaging hasn't been initialized.\n * @returns A promise that will resolve when the operation is complete.\n * @example\n * ```ts\n * // Identify a user with Pinpoint\n * await identifyUser({\n * userId,\n * userProfile: {\n * email: 'userEmail@example.com'\n * customProperties: {\n * phoneNumber: ['555-555-5555'],\n * },\n * }\n * });\n * ```\n *\n * @example\n * ```ts\n * // Identify a user with Pinpoint specific options\n * await identifyUser({\n * userId,\n * userProfile: {\n * email: 'userEmail@example.com'\n * customProperties: {\n * phoneNumber: ['555-555-5555'],\n * },\n * demographic: {\n * platform: 'ios',\n * timezone: 'America/Los_Angeles'\n * }\n * },\n * options: {\n * address: 'device-address',\n * optOut: 'NONE',\n * userAttributes: {\n * interests: ['food']\n * },\n * },\n * });\n */\nconst identifyUser = async (input) => {\n const { userId, userProfile, options } = input;\n (0, utils_3.assertIsInitialized)();\n const { credentials, identityId } = await (0, utils_2.resolveCredentials)();\n const { appId, region } = (0, utils_2.resolveConfig)();\n const { address, optOut, userAttributes } = options ?? {};\n (0, pinpoint_1.updateEndpoint)({\n address,\n channelType: utils_2.CHANNEL_TYPE,\n optOut,\n appId,\n category: utils_2.CATEGORY,\n credentials,\n identityId,\n region,\n userAttributes,\n userId,\n userProfile,\n userAgentValue: (0, utils_2.getInAppMessagingUserAgentString)(utils_1.InAppMessagingAction.IdentifyUser),\n });\n};\nexports.identifyUser = identifyUser;\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9D,OAAO,CAAC,YAAY,GAAG,KAAK,CAAC,CAAC;AAC9B,MAAM,OAAO,GAAG,OAAO,CAAC,mCAAmC,CAAC,CAAC;AAC7D,MAAM,UAAU,GAAG,OAAO,CAAC,gDAAgD,CAAC,CAAC;AAC7E,MAAM,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AACpC,MAAM,OAAO,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,YAAY,GAAG,OAAO,KAAK,KAAK;AACtC,IAAI,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC;AACnD,IAAI,IAAI,OAAO,CAAC,mBAAmB,GAAG,CAAC;AACvC,IAAI,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE,GAAG,MAAM,IAAI,OAAO,CAAC,kBAAkB,GAAG,CAAC;AAChF,IAAI,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,OAAO,CAAC,aAAa,GAAG,CAAC;AAC3D,IAAI,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,GAAG,OAAO,IAAI,EAAE,CAAC;AAC9D,IAAI,IAAI,UAAU,CAAC,cAAc,EAAE;AACnC,QAAQ,OAAO;AACf,QAAQ,WAAW,EAAE,OAAO,CAAC,YAAY;AACzC,QAAQ,MAAM;AACd,QAAQ,KAAK;AACb,QAAQ,QAAQ,EAAE,OAAO,CAAC,QAAQ;AAClC,QAAQ,WAAW;AACnB,QAAQ,UAAU;AAClB,QAAQ,MAAM;AACd,QAAQ,cAAc;AACtB,QAAQ,MAAM;AACd,QAAQ,WAAW;AACnB,QAAQ,cAAc,EAAE,IAAI,OAAO,CAAC,gCAAgC,EAAE,OAAO,CAAC,oBAAoB,CAAC,YAAY,CAAC;AAChH,KAAK,CAAC,CAAC;AACP,CAAC,CAAC;AACF,OAAO,CAAC,YAAY,GAAG,YAAY;;"}
@@ -5,13 +5,13 @@
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.initializeInAppMessaging = void 0;
7
7
  const utils_1 = require("@aws-amplify/core/internals/utils");
8
+ const core_1 = require("@aws-amplify/core");
8
9
  const eventListeners_1 = require("../../../../eventListeners");
9
10
  const helpers_1 = require("../utils/helpers");
10
11
  const types_1 = require("../types");
11
- const core_1 = require("@aws-amplify/core");
12
- const dispatchEvent_1 = require("./dispatchEvent");
13
12
  const utils_2 = require("../utils");
14
13
  const utils_3 = require("../../../utils");
14
+ const dispatchEvent_1 = require("./dispatchEvent");
15
15
  /**
16
16
  * Initialize and set up in-app messaging category. This API needs to be called to enable other InAppMessaging APIs.
17
17
  *
@@ -1 +1 @@
1
- {"version":3,"file":"initializeInAppMessaging.js","sources":["../../../../../../src/inAppMessaging/providers/pinpoint/apis/initializeInAppMessaging.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.initializeInAppMessaging = void 0;\nconst utils_1 = require(\"@aws-amplify/core/internals/utils\");\nconst eventListeners_1 = require(\"../../../../eventListeners\");\nconst helpers_1 = require(\"../utils/helpers\");\nconst types_1 = require(\"../types\");\nconst core_1 = require(\"@aws-amplify/core\");\nconst dispatchEvent_1 = require(\"./dispatchEvent\");\nconst utils_2 = require(\"../utils\");\nconst utils_3 = require(\"../../../utils\");\n/**\n * Initialize and set up in-app messaging category. This API needs to be called to enable other InAppMessaging APIs.\n *\n * @remarks\n * Make sure to call this early in your app at the root entry point after configuring Amplify.\n * @example\n * ```ts\n * Amplify.configure(config);\n * initializeInAppMessaging();\n * ```\n */\nfunction initializeInAppMessaging() {\n if ((0, utils_3.isInitialized)()) {\n return;\n }\n // register with the session listener\n utils_1.sessionListener.addStateChangeListener(utils_2.sessionStateChangeHandler, true);\n // wire up default Pinpoint message event handling\n (0, eventListeners_1.addEventListener)('messageDisplayed', (message) => {\n (0, helpers_1.recordAnalyticsEvent)(types_1.PinpointMessageEvent.MESSAGE_DISPLAYED, message);\n (0, utils_2.incrementMessageCounts)(message.id);\n });\n (0, eventListeners_1.addEventListener)('messageDismissed', (message) => {\n (0, helpers_1.recordAnalyticsEvent)(types_1.PinpointMessageEvent.MESSAGE_DISMISSED, message);\n });\n (0, eventListeners_1.addEventListener)('messageActionTaken', (message) => {\n (0, helpers_1.recordAnalyticsEvent)(types_1.PinpointMessageEvent.MESSAGE_ACTION_TAKEN, message);\n });\n // listen to analytics hub events\n core_1.Hub.listen('analytics', analyticsListener);\n (0, utils_3.initialize)();\n}\nexports.initializeInAppMessaging = initializeInAppMessaging;\nfunction analyticsListener({ payload, }) {\n const { event, data } = payload;\n switch (event) {\n case 'record': {\n (0, dispatchEvent_1.dispatchEvent)(data);\n break;\n }\n default:\n break;\n }\n}\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9D,OAAO,CAAC,wBAAwB,GAAG,KAAK,CAAC,CAAC;AAC1C,MAAM,OAAO,GAAG,OAAO,CAAC,mCAAmC,CAAC,CAAC;AAC7D,MAAM,gBAAgB,GAAG,OAAO,CAAC,4BAA4B,CAAC,CAAC;AAC/D,MAAM,SAAS,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC;AAC9C,MAAM,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AACpC,MAAM,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;AAC5C,MAAM,eAAe,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;AACnD,MAAM,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AACpC,MAAM,OAAO,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,wBAAwB,GAAG;AACpC,IAAI,IAAI,IAAI,OAAO,CAAC,aAAa,GAAG,EAAE;AACtC,QAAQ,OAAO;AACf,KAAK;AACL;AACA,IAAI,OAAO,CAAC,eAAe,CAAC,sBAAsB,CAAC,OAAO,CAAC,yBAAyB,EAAE,IAAI,CAAC,CAAC;AAC5F;AACA,IAAI,IAAI,gBAAgB,CAAC,gBAAgB,EAAE,kBAAkB,EAAE,CAAC,OAAO,KAAK;AAC5E,QAAQ,IAAI,SAAS,CAAC,oBAAoB,EAAE,OAAO,CAAC,oBAAoB,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAC;AACrG,QAAQ,IAAI,OAAO,CAAC,sBAAsB,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;AACxD,KAAK,CAAC,CAAC;AACP,IAAI,IAAI,gBAAgB,CAAC,gBAAgB,EAAE,kBAAkB,EAAE,CAAC,OAAO,KAAK;AAC5E,QAAQ,IAAI,SAAS,CAAC,oBAAoB,EAAE,OAAO,CAAC,oBAAoB,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAC;AACrG,KAAK,CAAC,CAAC;AACP,IAAI,IAAI,gBAAgB,CAAC,gBAAgB,EAAE,oBAAoB,EAAE,CAAC,OAAO,KAAK;AAC9E,QAAQ,IAAI,SAAS,CAAC,oBAAoB,EAAE,OAAO,CAAC,oBAAoB,CAAC,oBAAoB,EAAE,OAAO,CAAC,CAAC;AACxG,KAAK,CAAC,CAAC;AACP;AACA,IAAI,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,EAAE,iBAAiB,CAAC,CAAC;AACtD,IAAI,IAAI,OAAO,CAAC,UAAU,GAAG,CAAC;AAC9B,CAAC;AACD,OAAO,CAAC,wBAAwB,GAAG,wBAAwB,CAAC;AAC5D,SAAS,iBAAiB,CAAC,EAAE,OAAO,GAAG,EAAE;AACzC,IAAI,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC;AACpC,IAAI,QAAQ,KAAK;AACjB,QAAQ,KAAK,QAAQ,EAAE;AACvB,YAAY,IAAI,eAAe,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;AACrD,YAAY,MAAM;AAClB,SAAS;AAGT,KAAK;AACL;;"}
1
+ {"version":3,"file":"initializeInAppMessaging.js","sources":["../../../../../../src/inAppMessaging/providers/pinpoint/apis/initializeInAppMessaging.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.initializeInAppMessaging = void 0;\nconst utils_1 = require(\"@aws-amplify/core/internals/utils\");\nconst core_1 = require(\"@aws-amplify/core\");\nconst eventListeners_1 = require(\"../../../../eventListeners\");\nconst helpers_1 = require(\"../utils/helpers\");\nconst types_1 = require(\"../types\");\nconst utils_2 = require(\"../utils\");\nconst utils_3 = require(\"../../../utils\");\nconst dispatchEvent_1 = require(\"./dispatchEvent\");\n/**\n * Initialize and set up in-app messaging category. This API needs to be called to enable other InAppMessaging APIs.\n *\n * @remarks\n * Make sure to call this early in your app at the root entry point after configuring Amplify.\n * @example\n * ```ts\n * Amplify.configure(config);\n * initializeInAppMessaging();\n * ```\n */\nfunction initializeInAppMessaging() {\n if ((0, utils_3.isInitialized)()) {\n return;\n }\n // register with the session listener\n utils_1.sessionListener.addStateChangeListener(utils_2.sessionStateChangeHandler, true);\n // wire up default Pinpoint message event handling\n (0, eventListeners_1.addEventListener)('messageDisplayed', (message) => {\n (0, helpers_1.recordAnalyticsEvent)(types_1.PinpointMessageEvent.MESSAGE_DISPLAYED, message);\n (0, utils_2.incrementMessageCounts)(message.id);\n });\n (0, eventListeners_1.addEventListener)('messageDismissed', (message) => {\n (0, helpers_1.recordAnalyticsEvent)(types_1.PinpointMessageEvent.MESSAGE_DISMISSED, message);\n });\n (0, eventListeners_1.addEventListener)('messageActionTaken', (message) => {\n (0, helpers_1.recordAnalyticsEvent)(types_1.PinpointMessageEvent.MESSAGE_ACTION_TAKEN, message);\n });\n // listen to analytics hub events\n core_1.Hub.listen('analytics', analyticsListener);\n (0, utils_3.initialize)();\n}\nexports.initializeInAppMessaging = initializeInAppMessaging;\nfunction analyticsListener({ payload, }) {\n const { event, data } = payload;\n switch (event) {\n case 'record': {\n (0, dispatchEvent_1.dispatchEvent)(data);\n break;\n }\n default:\n break;\n }\n}\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9D,OAAO,CAAC,wBAAwB,GAAG,KAAK,CAAC,CAAC;AAC1C,MAAM,OAAO,GAAG,OAAO,CAAC,mCAAmC,CAAC,CAAC;AAC7D,MAAM,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;AAC5C,MAAM,gBAAgB,GAAG,OAAO,CAAC,4BAA4B,CAAC,CAAC;AAC/D,MAAM,SAAS,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC;AAC9C,MAAM,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AACpC,MAAM,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AACpC,MAAM,OAAO,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;AAC1C,MAAM,eAAe,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;AACnD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,wBAAwB,GAAG;AACpC,IAAI,IAAI,IAAI,OAAO,CAAC,aAAa,GAAG,EAAE;AACtC,QAAQ,OAAO;AACf,KAAK;AACL;AACA,IAAI,OAAO,CAAC,eAAe,CAAC,sBAAsB,CAAC,OAAO,CAAC,yBAAyB,EAAE,IAAI,CAAC,CAAC;AAC5F;AACA,IAAI,IAAI,gBAAgB,CAAC,gBAAgB,EAAE,kBAAkB,EAAE,CAAC,OAAO,KAAK;AAC5E,QAAQ,IAAI,SAAS,CAAC,oBAAoB,EAAE,OAAO,CAAC,oBAAoB,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAC;AACrG,QAAQ,IAAI,OAAO,CAAC,sBAAsB,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;AACxD,KAAK,CAAC,CAAC;AACP,IAAI,IAAI,gBAAgB,CAAC,gBAAgB,EAAE,kBAAkB,EAAE,CAAC,OAAO,KAAK;AAC5E,QAAQ,IAAI,SAAS,CAAC,oBAAoB,EAAE,OAAO,CAAC,oBAAoB,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAC;AACrG,KAAK,CAAC,CAAC;AACP,IAAI,IAAI,gBAAgB,CAAC,gBAAgB,EAAE,oBAAoB,EAAE,CAAC,OAAO,KAAK;AAC9E,QAAQ,IAAI,SAAS,CAAC,oBAAoB,EAAE,OAAO,CAAC,oBAAoB,CAAC,oBAAoB,EAAE,OAAO,CAAC,CAAC;AACxG,KAAK,CAAC,CAAC;AACP;AACA,IAAI,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,EAAE,iBAAiB,CAAC,CAAC;AACtD,IAAI,IAAI,OAAO,CAAC,UAAU,GAAG,CAAC;AAC9B,CAAC;AACD,OAAO,CAAC,wBAAwB,GAAG,wBAAwB,CAAC;AAC5D,SAAS,iBAAiB,CAAC,EAAE,OAAO,GAAG,EAAE;AACzC,IAAI,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC;AACpC,IAAI,QAAQ,KAAK;AACjB,QAAQ,KAAK,QAAQ,EAAE;AACvB,YAAY,IAAI,eAAe,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;AACrD,YAAY,MAAM;AAClB,SAAS;AAGT,KAAK;AACL;;"}
@@ -12,7 +12,7 @@ const utils_1 = require("../../../utils");
12
12
  * @param {OnMessageDisplayedInput} input - The input object that holds the callback handler.
13
13
  * @throws validation: {@link InAppMessagingValidationErrorCode} - Thrown when the provided parameters or library
14
14
  * configuration is incorrect, or if In App messaging hasn't been initialized.
15
- * @returns {OnMessageDismissedOutput} - An object that holds a remove method to stop listening to events.
15
+ * @returns {OnMessageDisplayedOutput} - An object that holds a remove method to stop listening to events.
16
16
  * @example
17
17
  * ```ts
18
18
  * onMessageDisplayed((message) => {
@@ -1 +1 @@
1
- {"version":3,"file":"onMessageDisplayed.js","sources":["../../../../../../src/inAppMessaging/providers/pinpoint/apis/onMessageDisplayed.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.onMessageDisplayed = void 0;\nconst eventListeners_1 = require(\"../../../../eventListeners\");\nconst utils_1 = require(\"../../../utils\");\n/**\n * Registers a callback that will be invoked on `messageDisplayed` events.\n *\n * @param {OnMessageDisplayedInput} input - The input object that holds the callback handler.\n * @throws validation: {@link InAppMessagingValidationErrorCode} - Thrown when the provided parameters or library\n * configuration is incorrect, or if In App messaging hasn't been initialized.\n * @returns {OnMessageDismissedOutput} - An object that holds a remove method to stop listening to events.\n * @example\n * ```ts\n * onMessageDisplayed((message) => {\n * // use the message\n * \t console.log(message.id);\n * });\n * ```\n */\nfunction onMessageDisplayed(input) {\n (0, utils_1.assertIsInitialized)();\n return (0, eventListeners_1.addEventListener)('messageDisplayed', input);\n}\nexports.onMessageDisplayed = onMessageDisplayed;\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9D,OAAO,CAAC,kBAAkB,GAAG,KAAK,CAAC,CAAC;AACpC,MAAM,gBAAgB,GAAG,OAAO,CAAC,4BAA4B,CAAC,CAAC;AAC/D,MAAM,OAAO,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,kBAAkB,CAAC,KAAK,EAAE;AACnC,IAAI,IAAI,OAAO,CAAC,mBAAmB,GAAG,CAAC;AACvC,IAAI,OAAO,IAAI,gBAAgB,CAAC,gBAAgB,EAAE,kBAAkB,EAAE,KAAK,CAAC,CAAC;AAC7E,CAAC;AACD,OAAO,CAAC,kBAAkB,GAAG,kBAAkB;;"}
1
+ {"version":3,"file":"onMessageDisplayed.js","sources":["../../../../../../src/inAppMessaging/providers/pinpoint/apis/onMessageDisplayed.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.onMessageDisplayed = void 0;\nconst eventListeners_1 = require(\"../../../../eventListeners\");\nconst utils_1 = require(\"../../../utils\");\n/**\n * Registers a callback that will be invoked on `messageDisplayed` events.\n *\n * @param {OnMessageDisplayedInput} input - The input object that holds the callback handler.\n * @throws validation: {@link InAppMessagingValidationErrorCode} - Thrown when the provided parameters or library\n * configuration is incorrect, or if In App messaging hasn't been initialized.\n * @returns {OnMessageDisplayedOutput} - An object that holds a remove method to stop listening to events.\n * @example\n * ```ts\n * onMessageDisplayed((message) => {\n * // use the message\n * \t console.log(message.id);\n * });\n * ```\n */\nfunction onMessageDisplayed(input) {\n (0, utils_1.assertIsInitialized)();\n return (0, eventListeners_1.addEventListener)('messageDisplayed', input);\n}\nexports.onMessageDisplayed = onMessageDisplayed;\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9D,OAAO,CAAC,kBAAkB,GAAG,KAAK,CAAC,CAAC;AACpC,MAAM,gBAAgB,GAAG,OAAO,CAAC,4BAA4B,CAAC,CAAC;AAC/D,MAAM,OAAO,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,kBAAkB,CAAC,KAAK,EAAE;AACnC,IAAI,IAAI,OAAO,CAAC,mBAAmB,GAAG,CAAC;AACvC,IAAI,OAAO,IAAI,gBAAgB,CAAC,gBAAgB,EAAE,kBAAkB,EAAE,KAAK,CAAC,CAAC;AAC7E,CAAC;AACD,OAAO,CAAC,kBAAkB,GAAG,kBAAkB;;"}
@@ -3,9 +3,9 @@
3
3
  // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
4
4
  // SPDX-License-Identifier: Apache-2.0
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.setConflictHandler = exports.conflictHandler = void 0;
6
+ exports.setConflictHandler = void 0;
7
7
  const utils_1 = require("../../../utils");
8
- exports.conflictHandler = defaultConflictHandler;
8
+ const utils_2 = require("../utils");
9
9
  /**
10
10
  * Set a conflict handler that will be used to resolve conflicts that may emerge
11
11
  * when matching events with synced messages.
@@ -40,31 +40,7 @@ exports.conflictHandler = defaultConflictHandler;
40
40
  */
41
41
  function setConflictHandler(input) {
42
42
  (0, utils_1.assertIsInitialized)();
43
- exports.conflictHandler = input;
43
+ (0, utils_2.setConflictHandler)(input);
44
44
  }
45
45
  exports.setConflictHandler = setConflictHandler;
46
- function defaultConflictHandler(messages) {
47
- // default behavior is to return the message closest to expiry
48
- // this function assumes that messages processed by providers already filters out expired messages
49
- const sorted = messages.sort((a, b) => {
50
- const endDateA = a.metadata?.endDate;
51
- const endDateB = b.metadata?.endDate;
52
- // if both message end dates are falsy or have the same date string, treat them as equal
53
- if (endDateA === endDateB) {
54
- return 0;
55
- }
56
- // if only message A has an end date, treat it as closer to expiry
57
- if (endDateA && !endDateB) {
58
- return -1;
59
- }
60
- // if only message B has an end date, treat it as closer to expiry
61
- if (!endDateA && endDateB) {
62
- return 1;
63
- }
64
- // otherwise, compare them
65
- return new Date(endDateA) < new Date(endDateB) ? -1 : 1;
66
- });
67
- // always return the top sorted
68
- return sorted[0];
69
- }
70
46
  //# sourceMappingURL=setConflictHandler.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"setConflictHandler.js","sources":["../../../../../../src/inAppMessaging/providers/pinpoint/apis/setConflictHandler.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.setConflictHandler = exports.conflictHandler = void 0;\nconst utils_1 = require(\"../../../utils\");\nexports.conflictHandler = defaultConflictHandler;\n/**\n * Set a conflict handler that will be used to resolve conflicts that may emerge\n * when matching events with synced messages.\n *\n * @remark\n * The conflict handler is not persisted across app restarts and so must be set again before dispatching an event for\n * any custom handling to take effect.\n *\n * @throws validation: {@link InAppMessagingValidationErrorCode} - Thrown when the provided parameters or library\n * configuration is incorrect, or if In App messaging hasn't been initialized.\n *\n * @param input The input object that holds the conflict handler to be used.\n *\n * @example\n * ```ts\n * // Sync messages before dispatching an event\n * await syncMessages();\n *\n * // Example custom conflict handler\n * const myConflictHandler = (messages) => {\n * \t\t// Return a random message\n * \t\tconst randomIndex = Math.floor(Math.random() * messages.length);\n * \t\treturn messages[randomIndex];\n * };\n *\n * // Set the conflict handler\n * setConflictHandler(myConflictHandler);\n *\n * // Dispatch an event\n * await dispatchEvent({ name: 'test_event' });\n * ```\n */\nfunction setConflictHandler(input) {\n (0, utils_1.assertIsInitialized)();\n exports.conflictHandler = input;\n}\nexports.setConflictHandler = setConflictHandler;\nfunction defaultConflictHandler(messages) {\n // default behavior is to return the message closest to expiry\n // this function assumes that messages processed by providers already filters out expired messages\n const sorted = messages.sort((a, b) => {\n const endDateA = a.metadata?.endDate;\n const endDateB = b.metadata?.endDate;\n // if both message end dates are falsy or have the same date string, treat them as equal\n if (endDateA === endDateB) {\n return 0;\n }\n // if only message A has an end date, treat it as closer to expiry\n if (endDateA && !endDateB) {\n return -1;\n }\n // if only message B has an end date, treat it as closer to expiry\n if (!endDateA && endDateB) {\n return 1;\n }\n // otherwise, compare them\n return new Date(endDateA) < new Date(endDateB) ? -1 : 1;\n });\n // always return the top sorted\n return sorted[0];\n}\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9D,OAAO,CAAC,kBAAkB,GAAG,OAAO,CAAC,eAAe,GAAG,KAAK,CAAC,CAAC;AAC9D,MAAM,OAAO,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;AAC1C,OAAO,CAAC,eAAe,GAAG,sBAAsB,CAAC;AACjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,kBAAkB,CAAC,KAAK,EAAE;AACnC,IAAI,IAAI,OAAO,CAAC,mBAAmB,GAAG,CAAC;AACvC,IAAI,OAAO,CAAC,eAAe,GAAG,KAAK,CAAC;AACpC,CAAC;AACD,OAAO,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;AAChD,SAAS,sBAAsB,CAAC,QAAQ,EAAE;AAC1C;AACA;AACA,IAAI,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK;AAC3C,QAAQ,MAAM,QAAQ,GAAG,CAAC,CAAC,QAAQ,EAAE,OAAO,CAAC;AAC7C,QAAQ,MAAM,QAAQ,GAAG,CAAC,CAAC,QAAQ,EAAE,OAAO,CAAC;AAC7C;AACA,QAAQ,IAAI,QAAQ,KAAK,QAAQ,EAAE;AACnC,YAAY,OAAO,CAAC,CAAC;AACrB,SAAS;AACT;AACA,QAAQ,IAAI,QAAQ,IAAI,CAAC,QAAQ,EAAE;AACnC,YAAY,OAAO,CAAC,CAAC,CAAC;AACtB,SAAS;AACT;AACA,QAAQ,IAAI,CAAC,QAAQ,IAAI,QAAQ,EAAE;AACnC,YAAY,OAAO,CAAC,CAAC;AACrB,SAAS;AACT;AACA,QAAQ,OAAO,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;AAChE,KAAK,CAAC,CAAC;AACP;AACA,IAAI,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC;AACrB;;"}
1
+ {"version":3,"file":"setConflictHandler.js","sources":["../../../../../../src/inAppMessaging/providers/pinpoint/apis/setConflictHandler.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.setConflictHandler = void 0;\nconst utils_1 = require(\"../../../utils\");\nconst utils_2 = require(\"../utils\");\n/**\n * Set a conflict handler that will be used to resolve conflicts that may emerge\n * when matching events with synced messages.\n *\n * @remark\n * The conflict handler is not persisted across app restarts and so must be set again before dispatching an event for\n * any custom handling to take effect.\n *\n * @throws validation: {@link InAppMessagingValidationErrorCode} - Thrown when the provided parameters or library\n * configuration is incorrect, or if In App messaging hasn't been initialized.\n *\n * @param input The input object that holds the conflict handler to be used.\n *\n * @example\n * ```ts\n * // Sync messages before dispatching an event\n * await syncMessages();\n *\n * // Example custom conflict handler\n * const myConflictHandler = (messages) => {\n * \t\t// Return a random message\n * \t\tconst randomIndex = Math.floor(Math.random() * messages.length);\n * \t\treturn messages[randomIndex];\n * };\n *\n * // Set the conflict handler\n * setConflictHandler(myConflictHandler);\n *\n * // Dispatch an event\n * await dispatchEvent({ name: 'test_event' });\n * ```\n */\nfunction setConflictHandler(input) {\n (0, utils_1.assertIsInitialized)();\n (0, utils_2.setConflictHandler)(input);\n}\nexports.setConflictHandler = setConflictHandler;\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9D,OAAO,CAAC,kBAAkB,GAAG,KAAK,CAAC,CAAC;AACpC,MAAM,OAAO,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;AAC1C,MAAM,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,kBAAkB,CAAC,KAAK,EAAE;AACnC,IAAI,IAAI,OAAO,CAAC,mBAAmB,GAAG,CAAC;AACvC,IAAI,IAAI,OAAO,CAAC,kBAAkB,EAAE,KAAK,CAAC,CAAC;AAC3C,CAAC;AACD,OAAO,CAAC,kBAAkB,GAAG,kBAAkB;;"}
@@ -7,8 +7,8 @@ exports.syncMessages = void 0;
7
7
  const utils_1 = require("@aws-amplify/core/internals/utils");
8
8
  const pinpoint_1 = require("@aws-amplify/core/internals/providers/pinpoint");
9
9
  const core_1 = require("@aws-amplify/core");
10
- const utils_2 = require("../utils");
11
10
  const pinpoint_2 = require("@aws-amplify/core/internals/aws-clients/pinpoint");
11
+ const utils_2 = require("../utils");
12
12
  const errors_1 = require("../../../errors");
13
13
  const utils_3 = require("../../../utils");
14
14
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"syncMessages.js","sources":["../../../../../../src/inAppMessaging/providers/pinpoint/apis/syncMessages.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.syncMessages = void 0;\nconst utils_1 = require(\"@aws-amplify/core/internals/utils\");\nconst pinpoint_1 = require(\"@aws-amplify/core/internals/providers/pinpoint\");\nconst core_1 = require(\"@aws-amplify/core\");\nconst utils_2 = require(\"../utils\");\nconst pinpoint_2 = require(\"@aws-amplify/core/internals/aws-clients/pinpoint\");\nconst errors_1 = require(\"../../../errors\");\nconst utils_3 = require(\"../../../utils\");\n/**\n * Fetch and persist messages from Pinpoint campaigns.\n * Calling this API is necessary to trigger InApp messages on the device.\n *\n * @throws service exceptions - Thrown when the underlying Pinpoint service returns an error.\n * @throws validation: {@link InAppMessagingValidationErrorCode} - Thrown when the provided parameters or library\n * configuration is incorrect, or if In App messaging hasn't been initialized.\n * @returns A promise that will resolve when the operation is complete.\n * @example\n * ```ts\n * // Sync InApp messages with Pinpoint and device.\n * await syncMessages();\n *\n * ```\n */\nasync function syncMessages() {\n (0, utils_3.assertIsInitialized)();\n const messages = await fetchInAppMessages();\n if (!messages || messages.length === 0) {\n return;\n }\n try {\n const key = `${utils_2.PINPOINT_KEY_PREFIX}${utils_2.STORAGE_KEY_SUFFIX}`;\n await core_1.defaultStorage.setItem(key, JSON.stringify(messages));\n }\n catch (error) {\n (0, errors_1.assertServiceError)(error);\n throw error;\n }\n}\nexports.syncMessages = syncMessages;\nasync function fetchInAppMessages() {\n try {\n const { credentials, identityId } = await (0, utils_2.resolveCredentials)();\n const { appId, region } = (0, utils_2.resolveConfig)();\n const endpointId = await (0, pinpoint_1.resolveEndpointId)({\n appId,\n category: utils_2.CATEGORY,\n channelType: utils_2.CHANNEL_TYPE,\n credentials,\n identityId,\n region,\n userAgentValue: (0, utils_2.getInAppMessagingUserAgentString)(utils_1.InAppMessagingAction.SyncMessages),\n });\n const input = {\n ApplicationId: appId,\n EndpointId: endpointId,\n };\n const response = await (0, pinpoint_2.getInAppMessages)({ credentials, region }, input);\n const { InAppMessageCampaigns: messages } = response.InAppMessagesResponse ?? {};\n return messages;\n }\n catch (error) {\n (0, errors_1.assertServiceError)(error);\n throw error;\n }\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"syncMessages.js","sources":["../../../../../../src/inAppMessaging/providers/pinpoint/apis/syncMessages.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.syncMessages = void 0;\nconst utils_1 = require(\"@aws-amplify/core/internals/utils\");\nconst pinpoint_1 = require(\"@aws-amplify/core/internals/providers/pinpoint\");\nconst core_1 = require(\"@aws-amplify/core\");\nconst pinpoint_2 = require(\"@aws-amplify/core/internals/aws-clients/pinpoint\");\nconst utils_2 = require(\"../utils\");\nconst errors_1 = require(\"../../../errors\");\nconst utils_3 = require(\"../../../utils\");\n/**\n * Fetch and persist messages from Pinpoint campaigns.\n * Calling this API is necessary to trigger InApp messages on the device.\n *\n * @throws service exceptions - Thrown when the underlying Pinpoint service returns an error.\n * @throws validation: {@link InAppMessagingValidationErrorCode} - Thrown when the provided parameters or library\n * configuration is incorrect, or if In App messaging hasn't been initialized.\n * @returns A promise that will resolve when the operation is complete.\n * @example\n * ```ts\n * // Sync InApp messages with Pinpoint and device.\n * await syncMessages();\n *\n * ```\n */\nasync function syncMessages() {\n (0, utils_3.assertIsInitialized)();\n const messages = await fetchInAppMessages();\n if (!messages || messages.length === 0) {\n return;\n }\n try {\n const key = `${utils_2.PINPOINT_KEY_PREFIX}${utils_2.STORAGE_KEY_SUFFIX}`;\n await core_1.defaultStorage.setItem(key, JSON.stringify(messages));\n }\n catch (error) {\n (0, errors_1.assertServiceError)(error);\n throw error;\n }\n}\nexports.syncMessages = syncMessages;\nasync function fetchInAppMessages() {\n try {\n const { credentials, identityId } = await (0, utils_2.resolveCredentials)();\n const { appId, region } = (0, utils_2.resolveConfig)();\n const endpointId = await (0, pinpoint_1.resolveEndpointId)({\n appId,\n category: utils_2.CATEGORY,\n channelType: utils_2.CHANNEL_TYPE,\n credentials,\n identityId,\n region,\n userAgentValue: (0, utils_2.getInAppMessagingUserAgentString)(utils_1.InAppMessagingAction.SyncMessages),\n });\n const input = {\n ApplicationId: appId,\n EndpointId: endpointId,\n };\n const response = await (0, pinpoint_2.getInAppMessages)({ credentials, region }, input);\n const { InAppMessageCampaigns: messages } = response.InAppMessagesResponse ?? {};\n return messages;\n }\n catch (error) {\n (0, errors_1.assertServiceError)(error);\n throw error;\n }\n}\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,50 @@
1
+ 'use strict';
2
+
3
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
4
+ // SPDX-License-Identifier: Apache-2.0
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.getConflictHandler = exports.setConflictHandler = void 0;
7
+ /**
8
+ * The default conflict handler. Can be overridden by `setConflictHandler`.
9
+ */
10
+ let conflictHandler = (messages) => {
11
+ // default behavior is to return the message closest to expiry
12
+ // this function assumes that messages processed by providers already filters out expired messages
13
+ const sorted = messages.sort((a, b) => {
14
+ const endDateA = a.metadata?.endDate;
15
+ const endDateB = b.metadata?.endDate;
16
+ // if both message end dates are falsy or have the same date string, treat them as equal
17
+ if (endDateA === endDateB) {
18
+ return 0;
19
+ }
20
+ // if only message A has an end date, treat it as closer to expiry
21
+ if (endDateA && !endDateB) {
22
+ return -1;
23
+ }
24
+ // if only message B has an end date, treat it as closer to expiry
25
+ if (!endDateA && endDateB) {
26
+ return 1;
27
+ }
28
+ // otherwise, compare them
29
+ return new Date(endDateA) < new Date(endDateB) ? -1 : 1;
30
+ });
31
+ // always return the top sorted
32
+ return sorted[0];
33
+ };
34
+ /**
35
+ * Sets conflict handler.
36
+ *
37
+ * @internal
38
+ */
39
+ const setConflictHandler = (input) => {
40
+ conflictHandler = input;
41
+ };
42
+ exports.setConflictHandler = setConflictHandler;
43
+ /**
44
+ * Returns the current conflict handler.
45
+ *
46
+ * @internal
47
+ */
48
+ const getConflictHandler = () => conflictHandler;
49
+ exports.getConflictHandler = getConflictHandler;
50
+ //# sourceMappingURL=conflictHandlerManager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"conflictHandlerManager.js","sources":["../../../../../../src/inAppMessaging/providers/pinpoint/utils/conflictHandlerManager.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getConflictHandler = exports.setConflictHandler = void 0;\n/**\n * The default conflict handler. Can be overridden by `setConflictHandler`.\n */\nlet conflictHandler = (messages) => {\n // default behavior is to return the message closest to expiry\n // this function assumes that messages processed by providers already filters out expired messages\n const sorted = messages.sort((a, b) => {\n const endDateA = a.metadata?.endDate;\n const endDateB = b.metadata?.endDate;\n // if both message end dates are falsy or have the same date string, treat them as equal\n if (endDateA === endDateB) {\n return 0;\n }\n // if only message A has an end date, treat it as closer to expiry\n if (endDateA && !endDateB) {\n return -1;\n }\n // if only message B has an end date, treat it as closer to expiry\n if (!endDateA && endDateB) {\n return 1;\n }\n // otherwise, compare them\n return new Date(endDateA) < new Date(endDateB) ? -1 : 1;\n });\n // always return the top sorted\n return sorted[0];\n};\n/**\n * Sets conflict handler.\n *\n * @internal\n */\nconst setConflictHandler = (input) => {\n conflictHandler = input;\n};\nexports.setConflictHandler = setConflictHandler;\n/**\n * Returns the current conflict handler.\n *\n * @internal\n */\nconst getConflictHandler = () => conflictHandler;\nexports.getConflictHandler = getConflictHandler;\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9D,OAAO,CAAC,kBAAkB,GAAG,OAAO,CAAC,kBAAkB,GAAG,KAAK,CAAC,CAAC;AACjE;AACA;AACA;AACA,IAAI,eAAe,GAAG,CAAC,QAAQ,KAAK;AACpC;AACA;AACA,IAAI,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK;AAC3C,QAAQ,MAAM,QAAQ,GAAG,CAAC,CAAC,QAAQ,EAAE,OAAO,CAAC;AAC7C,QAAQ,MAAM,QAAQ,GAAG,CAAC,CAAC,QAAQ,EAAE,OAAO,CAAC;AAC7C;AACA,QAAQ,IAAI,QAAQ,KAAK,QAAQ,EAAE;AACnC,YAAY,OAAO,CAAC,CAAC;AACrB,SAAS;AACT;AACA,QAAQ,IAAI,QAAQ,IAAI,CAAC,QAAQ,EAAE;AACnC,YAAY,OAAO,CAAC,CAAC,CAAC;AACtB,SAAS;AACT;AACA,QAAQ,IAAI,CAAC,QAAQ,IAAI,QAAQ,EAAE;AACnC,YAAY,OAAO,CAAC,CAAC;AACrB,SAAS;AACT;AACA,QAAQ,OAAO,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;AAChE,KAAK,CAAC,CAAC;AACP;AACA,IAAI,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC;AACrB,CAAC,CAAC;AACF;AACA;AACA;AACA;AACA;AACA,MAAM,kBAAkB,GAAG,CAAC,KAAK,KAAK;AACtC,IAAI,eAAe,GAAG,KAAK,CAAC;AAC5B,CAAC,CAAC;AACF,OAAO,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;AAChD;AACA;AACA;AACA;AACA;AACA,MAAM,kBAAkB,GAAG,MAAM,eAAe,CAAC;AACjD,OAAO,CAAC,kBAAkB,GAAG,kBAAkB;;"}
@@ -56,7 +56,7 @@ exports.getStartOfDay = getStartOfDay;
56
56
  const matchesEventType = ({ CampaignId, Schedule }, { name: eventType }) => {
57
57
  const { EventType } = Schedule?.EventFilter?.Dimensions ?? {};
58
58
  const memoKey = `${CampaignId}:${eventType}`;
59
- if (!eventNameMemo.hasOwnProperty(memoKey)) {
59
+ if (!Object.prototype.hasOwnProperty.call(eventNameMemo, memoKey)) {
60
60
  eventNameMemo[memoKey] = !!EventType?.Values?.includes(eventType);
61
61
  }
62
62
  return eventNameMemo[memoKey];
@@ -73,7 +73,7 @@ const matchesAttributes = ({ CampaignId, Schedule }, { attributes = {} }) => {
73
73
  return false;
74
74
  }
75
75
  const memoKey = `${CampaignId}:${JSON.stringify(attributes)}`;
76
- if (!eventAttributesMemo.hasOwnProperty(memoKey)) {
76
+ if (!Object.prototype.hasOwnProperty.call(eventAttributesMemo, memoKey)) {
77
77
  eventAttributesMemo[memoKey] =
78
78
  !Attributes ||
79
79
  Object.entries(Attributes).every(([key, { Values }]) => Values?.includes(attributes[key]));
@@ -92,7 +92,7 @@ const matchesMetrics = ({ CampaignId, Schedule }, { metrics = {} }) => {
92
92
  return false;
93
93
  }
94
94
  const memoKey = `${CampaignId}:${JSON.stringify(metrics)}`;
95
- if (!eventMetricsMemo.hasOwnProperty(memoKey)) {
95
+ if (!Object.prototype.hasOwnProperty.call(eventMetricsMemo, memoKey)) {
96
96
  eventMetricsMemo[memoKey] =
97
97
  !Metrics ||
98
98
  Object.entries(Metrics).every(([key, { ComparisonOperator, Value }]) => {
@@ -153,11 +153,11 @@ const isQuietTime = (message) => {
153
153
  if (start > end) {
154
154
  end.setDate(end.getDate() + 1);
155
155
  }
156
- const isQuietTime = now >= start && now <= end;
157
- if (isQuietTime) {
156
+ const isDuringQuietTime = now >= start && now <= end;
157
+ if (isDuringQuietTime) {
158
158
  exports.logger.debug('message filtered due to quiet time', message);
159
159
  }
160
- return isQuietTime;
160
+ return isDuringQuietTime;
161
161
  };
162
162
  exports.isQuietTime = isQuietTime;
163
163
  const clearMemo = () => {
@@ -254,8 +254,8 @@ const extractContent = ({ InAppMessage: message, }) => {
254
254
  }) ?? []);
255
255
  };
256
256
  exports.extractContent = extractContent;
257
- const extractMetadata = ({ InAppMessage, Priority, Schedule, TreatmentId, }) => ({
258
- customData: InAppMessage?.CustomConfig,
257
+ const extractMetadata = ({ InAppMessage: inAppMessage, Priority, Schedule, TreatmentId, }) => ({
258
+ customData: inAppMessage?.CustomConfig,
259
259
  endDate: Schedule?.EndDate,
260
260
  priority: Priority,
261
261
  treatmentId: TreatmentId,
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","sources":["../../../../../../src/inAppMessaging/providers/pinpoint/utils/helpers.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.extractMetadata = exports.extractContent = exports.interpretLayout = exports.clearMemo = exports.isQuietTime = exports.isBeforeEndDate = exports.getComparator = exports.matchesMetrics = exports.matchesAttributes = exports.matchesEventType = exports.getStartOfDay = exports.recordAnalyticsEvent = exports.logger = void 0;\nconst tslib_1 = require(\"tslib\");\nconst core_1 = require(\"@aws-amplify/core\");\nconst utils_1 = require(\"@aws-amplify/core/internals/utils\");\nconst isEmpty_js_1 = tslib_1.__importDefault(require(\"lodash/isEmpty.js\"));\nconst pinpoint_1 = require(\"@aws-amplify/core/internals/providers/pinpoint\");\nconst resolveConfig_1 = require(\"./resolveConfig\");\nconst resolveCredentials_1 = require(\"./resolveCredentials\");\nconst constants_1 = require(\"./constants\");\nconst userAgent_1 = require(\"./userAgent\");\nconst DELIVERY_TYPE = 'IN_APP_MESSAGE';\nlet eventNameMemo = {};\nlet eventAttributesMemo = {};\nlet eventMetricsMemo = {};\nexports.logger = new core_1.ConsoleLogger('InAppMessaging.Pinpoint.Utils');\nconst recordAnalyticsEvent = (event, message) => {\n const { appId, region } = (0, resolveConfig_1.resolveConfig)();\n const { id, metadata } = message;\n (0, resolveCredentials_1.resolveCredentials)()\n .then(({ credentials, identityId }) => {\n (0, pinpoint_1.record)({\n appId,\n category: constants_1.CATEGORY,\n credentials,\n event: {\n name: event,\n attributes: {\n // only include campaign_id field if we have one\n ...(id && { campaign_id: id }),\n delivery_type: DELIVERY_TYPE,\n treatment_id: metadata?.treatmentId,\n },\n },\n identityId,\n region,\n userAgentValue: (0, userAgent_1.getInAppMessagingUserAgentString)(utils_1.InAppMessagingAction.NotifyMessageInteraction),\n });\n })\n .catch(e => {\n // An error occured while fetching credentials or persisting the event to the buffer\n exports.logger.warn('Failed to record event.', e);\n });\n};\nexports.recordAnalyticsEvent = recordAnalyticsEvent;\nconst getStartOfDay = () => {\n const now = new Date();\n now.setHours(0, 0, 0, 0);\n return now.toISOString();\n};\nexports.getStartOfDay = getStartOfDay;\nconst matchesEventType = ({ CampaignId, Schedule }, { name: eventType }) => {\n const { EventType } = Schedule?.EventFilter?.Dimensions ?? {};\n const memoKey = `${CampaignId}:${eventType}`;\n if (!eventNameMemo.hasOwnProperty(memoKey)) {\n eventNameMemo[memoKey] = !!EventType?.Values?.includes(eventType);\n }\n return eventNameMemo[memoKey];\n};\nexports.matchesEventType = matchesEventType;\nconst matchesAttributes = ({ CampaignId, Schedule }, { attributes = {} }) => {\n const { Attributes } = Schedule?.EventFilter?.Dimensions ?? {};\n if ((0, isEmpty_js_1.default)(Attributes)) {\n // if message does not have attributes defined it does not matter what attributes are on the event\n return true;\n }\n if ((0, isEmpty_js_1.default)(attributes)) {\n // if message does have attributes but the event does not then it always fails the check\n return false;\n }\n const memoKey = `${CampaignId}:${JSON.stringify(attributes)}`;\n if (!eventAttributesMemo.hasOwnProperty(memoKey)) {\n eventAttributesMemo[memoKey] =\n !Attributes ||\n Object.entries(Attributes).every(([key, { Values }]) => Values?.includes(attributes[key]));\n }\n return eventAttributesMemo[memoKey];\n};\nexports.matchesAttributes = matchesAttributes;\nconst matchesMetrics = ({ CampaignId, Schedule }, { metrics = {} }) => {\n const { Metrics } = Schedule?.EventFilter?.Dimensions ?? {};\n if ((0, isEmpty_js_1.default)(Metrics)) {\n // if message does not have metrics defined it does not matter what metrics are on the event\n return true;\n }\n if ((0, isEmpty_js_1.default)(metrics)) {\n // if message does have metrics but the event does not then it always fails the check\n return false;\n }\n const memoKey = `${CampaignId}:${JSON.stringify(metrics)}`;\n if (!eventMetricsMemo.hasOwnProperty(memoKey)) {\n eventMetricsMemo[memoKey] =\n !Metrics ||\n Object.entries(Metrics).every(([key, { ComparisonOperator, Value }]) => {\n const compare = (0, exports.getComparator)(ComparisonOperator);\n // if there is some unknown comparison operator, treat as a comparison failure\n return compare && !!Value ? compare(Value, metrics[key]) : false;\n });\n }\n return eventMetricsMemo[memoKey];\n};\nexports.matchesMetrics = matchesMetrics;\nconst getComparator = (operator) => {\n switch (operator) {\n case 'EQUAL':\n return (metricsVal, eventVal) => metricsVal === eventVal;\n case 'GREATER_THAN':\n return (metricsVal, eventVal) => metricsVal < eventVal;\n case 'GREATER_THAN_OR_EQUAL':\n return (metricsVal, eventVal) => metricsVal <= eventVal;\n case 'LESS_THAN':\n return (metricsVal, eventVal) => metricsVal > eventVal;\n case 'LESS_THAN_OR_EQUAL':\n return (metricsVal, eventVal) => metricsVal >= eventVal;\n default:\n return undefined;\n }\n};\nexports.getComparator = getComparator;\nconst isBeforeEndDate = ({ Schedule, }) => {\n if (!Schedule?.EndDate) {\n return true;\n }\n return new Date() < new Date(Schedule.EndDate);\n};\nexports.isBeforeEndDate = isBeforeEndDate;\nconst isQuietTime = (message) => {\n const { Schedule } = message;\n if (!Schedule?.QuietTime) {\n return false;\n }\n const pattern = /^[0-2]\\d:[0-5]\\d$/; // basic sanity check, not a fully featured HH:MM validation\n const { Start, End } = Schedule.QuietTime;\n if (!Start ||\n !End ||\n Start === End ||\n !pattern.test(Start) ||\n !pattern.test(End)) {\n return false;\n }\n const now = new Date();\n const start = new Date(now);\n const end = new Date(now);\n const [startHours, startMinutes] = Start.split(':');\n const [endHours, endMinutes] = End.split(':');\n start.setHours(Number.parseInt(startHours, 10), Number.parseInt(startMinutes, 10), 0, 0);\n end.setHours(Number.parseInt(endHours, 10), Number.parseInt(endMinutes, 10), 0, 0);\n // if quiet time includes midnight, bump the end time to the next day\n if (start > end) {\n end.setDate(end.getDate() + 1);\n }\n const isQuietTime = now >= start && now <= end;\n if (isQuietTime) {\n exports.logger.debug('message filtered due to quiet time', message);\n }\n return isQuietTime;\n};\nexports.isQuietTime = isQuietTime;\nconst clearMemo = () => {\n eventNameMemo = {};\n eventAttributesMemo = {};\n eventMetricsMemo = {};\n};\nexports.clearMemo = clearMemo;\n// in the pinpoint console when a message is created with a Modal or Full Screen layout,\n// it is assigned a layout value of MOBILE_FEED or OVERLAYS respectively in the message payload.\n// In the future, Pinpoint will be updating the layout values in the aforementioned scenario\n// to MODAL and FULL_SCREEN.\n//\n// This utility acts as a safeguard to ensure that:\n// - 1. the usage of MOBILE_FEED and OVERLAYS as values for message layouts are not leaked\n// outside the Pinpoint provider\n// - 2. Amplify correctly handles the legacy layout values from Pinpoint after they are updated\nconst interpretLayout = (layout) => {\n if (layout === 'MOBILE_FEED') {\n return 'MODAL';\n }\n if (layout === 'OVERLAYS') {\n return 'FULL_SCREEN';\n }\n // cast as PinpointInAppMessage['InAppMessage']['Layout'] allows `string` as a value\n return layout;\n};\nexports.interpretLayout = interpretLayout;\nconst extractContent = ({ InAppMessage: message, }) => {\n return (message?.Content?.map(content => {\n const { BackgroundColor, BodyConfig, HeaderConfig, ImageUrl, PrimaryBtn, SecondaryBtn, } = content;\n const defaultPrimaryButton = PrimaryBtn?.DefaultConfig;\n const defaultSecondaryButton = SecondaryBtn?.DefaultConfig;\n const extractedContent = {};\n if (BackgroundColor) {\n extractedContent.container = {\n style: {\n backgroundColor: BackgroundColor,\n },\n };\n }\n if (HeaderConfig) {\n extractedContent.header = {\n // Default to empty string in rare cases we don't have a Header value\n content: HeaderConfig.Header ?? '',\n style: {\n color: HeaderConfig.TextColor,\n textAlign: HeaderConfig.Alignment?.toLowerCase(),\n },\n };\n }\n if (BodyConfig) {\n extractedContent.body = {\n // Default to empty string in rare cases we don't have a Body value\n content: BodyConfig.Body ?? '',\n style: {\n color: BodyConfig.TextColor,\n textAlign: BodyConfig.Alignment?.toLowerCase(),\n },\n };\n }\n if (ImageUrl) {\n extractedContent.image = {\n src: ImageUrl,\n };\n }\n if (defaultPrimaryButton) {\n extractedContent.primaryButton = {\n // Default to empty string in rare cases we don't have a Text value\n title: defaultPrimaryButton.Text ?? '',\n action: defaultPrimaryButton.ButtonAction,\n url: defaultPrimaryButton.Link,\n style: {\n backgroundColor: defaultPrimaryButton.BackgroundColor,\n borderRadius: defaultPrimaryButton.BorderRadius,\n color: defaultPrimaryButton.TextColor,\n },\n };\n }\n if (defaultSecondaryButton) {\n extractedContent.secondaryButton = {\n // Default to empty string in rare cases we don't have a Text value\n title: defaultSecondaryButton.Text ?? '',\n action: defaultSecondaryButton.ButtonAction,\n url: defaultSecondaryButton.Link,\n style: {\n backgroundColor: defaultSecondaryButton.BackgroundColor,\n borderRadius: defaultSecondaryButton.BorderRadius,\n color: defaultSecondaryButton.TextColor,\n },\n };\n }\n return extractedContent;\n }) ?? []);\n};\nexports.extractContent = extractContent;\nconst extractMetadata = ({ InAppMessage, Priority, Schedule, TreatmentId, }) => ({\n customData: InAppMessage?.CustomConfig,\n endDate: Schedule?.EndDate,\n priority: Priority,\n treatmentId: TreatmentId,\n});\nexports.extractMetadata = extractMetadata;\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"helpers.js","sources":["../../../../../../src/inAppMessaging/providers/pinpoint/utils/helpers.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.extractMetadata = exports.extractContent = exports.interpretLayout = exports.clearMemo = exports.isQuietTime = exports.isBeforeEndDate = exports.getComparator = exports.matchesMetrics = exports.matchesAttributes = exports.matchesEventType = exports.getStartOfDay = exports.recordAnalyticsEvent = exports.logger = void 0;\nconst tslib_1 = require(\"tslib\");\nconst core_1 = require(\"@aws-amplify/core\");\nconst utils_1 = require(\"@aws-amplify/core/internals/utils\");\nconst isEmpty_js_1 = tslib_1.__importDefault(require(\"lodash/isEmpty.js\"));\nconst pinpoint_1 = require(\"@aws-amplify/core/internals/providers/pinpoint\");\nconst resolveConfig_1 = require(\"./resolveConfig\");\nconst resolveCredentials_1 = require(\"./resolveCredentials\");\nconst constants_1 = require(\"./constants\");\nconst userAgent_1 = require(\"./userAgent\");\nconst DELIVERY_TYPE = 'IN_APP_MESSAGE';\nlet eventNameMemo = {};\nlet eventAttributesMemo = {};\nlet eventMetricsMemo = {};\nexports.logger = new core_1.ConsoleLogger('InAppMessaging.Pinpoint.Utils');\nconst recordAnalyticsEvent = (event, message) => {\n const { appId, region } = (0, resolveConfig_1.resolveConfig)();\n const { id, metadata } = message;\n (0, resolveCredentials_1.resolveCredentials)()\n .then(({ credentials, identityId }) => {\n (0, pinpoint_1.record)({\n appId,\n category: constants_1.CATEGORY,\n credentials,\n event: {\n name: event,\n attributes: {\n // only include campaign_id field if we have one\n ...(id && { campaign_id: id }),\n delivery_type: DELIVERY_TYPE,\n treatment_id: metadata?.treatmentId,\n },\n },\n identityId,\n region,\n userAgentValue: (0, userAgent_1.getInAppMessagingUserAgentString)(utils_1.InAppMessagingAction.NotifyMessageInteraction),\n });\n })\n .catch(e => {\n // An error occured while fetching credentials or persisting the event to the buffer\n exports.logger.warn('Failed to record event.', e);\n });\n};\nexports.recordAnalyticsEvent = recordAnalyticsEvent;\nconst getStartOfDay = () => {\n const now = new Date();\n now.setHours(0, 0, 0, 0);\n return now.toISOString();\n};\nexports.getStartOfDay = getStartOfDay;\nconst matchesEventType = ({ CampaignId, Schedule }, { name: eventType }) => {\n const { EventType } = Schedule?.EventFilter?.Dimensions ?? {};\n const memoKey = `${CampaignId}:${eventType}`;\n if (!Object.prototype.hasOwnProperty.call(eventNameMemo, memoKey)) {\n eventNameMemo[memoKey] = !!EventType?.Values?.includes(eventType);\n }\n return eventNameMemo[memoKey];\n};\nexports.matchesEventType = matchesEventType;\nconst matchesAttributes = ({ CampaignId, Schedule }, { attributes = {} }) => {\n const { Attributes } = Schedule?.EventFilter?.Dimensions ?? {};\n if ((0, isEmpty_js_1.default)(Attributes)) {\n // if message does not have attributes defined it does not matter what attributes are on the event\n return true;\n }\n if ((0, isEmpty_js_1.default)(attributes)) {\n // if message does have attributes but the event does not then it always fails the check\n return false;\n }\n const memoKey = `${CampaignId}:${JSON.stringify(attributes)}`;\n if (!Object.prototype.hasOwnProperty.call(eventAttributesMemo, memoKey)) {\n eventAttributesMemo[memoKey] =\n !Attributes ||\n Object.entries(Attributes).every(([key, { Values }]) => Values?.includes(attributes[key]));\n }\n return eventAttributesMemo[memoKey];\n};\nexports.matchesAttributes = matchesAttributes;\nconst matchesMetrics = ({ CampaignId, Schedule }, { metrics = {} }) => {\n const { Metrics } = Schedule?.EventFilter?.Dimensions ?? {};\n if ((0, isEmpty_js_1.default)(Metrics)) {\n // if message does not have metrics defined it does not matter what metrics are on the event\n return true;\n }\n if ((0, isEmpty_js_1.default)(metrics)) {\n // if message does have metrics but the event does not then it always fails the check\n return false;\n }\n const memoKey = `${CampaignId}:${JSON.stringify(metrics)}`;\n if (!Object.prototype.hasOwnProperty.call(eventMetricsMemo, memoKey)) {\n eventMetricsMemo[memoKey] =\n !Metrics ||\n Object.entries(Metrics).every(([key, { ComparisonOperator, Value }]) => {\n const compare = (0, exports.getComparator)(ComparisonOperator);\n // if there is some unknown comparison operator, treat as a comparison failure\n return compare && !!Value ? compare(Value, metrics[key]) : false;\n });\n }\n return eventMetricsMemo[memoKey];\n};\nexports.matchesMetrics = matchesMetrics;\nconst getComparator = (operator) => {\n switch (operator) {\n case 'EQUAL':\n return (metricsVal, eventVal) => metricsVal === eventVal;\n case 'GREATER_THAN':\n return (metricsVal, eventVal) => metricsVal < eventVal;\n case 'GREATER_THAN_OR_EQUAL':\n return (metricsVal, eventVal) => metricsVal <= eventVal;\n case 'LESS_THAN':\n return (metricsVal, eventVal) => metricsVal > eventVal;\n case 'LESS_THAN_OR_EQUAL':\n return (metricsVal, eventVal) => metricsVal >= eventVal;\n default:\n return undefined;\n }\n};\nexports.getComparator = getComparator;\nconst isBeforeEndDate = ({ Schedule, }) => {\n if (!Schedule?.EndDate) {\n return true;\n }\n return new Date() < new Date(Schedule.EndDate);\n};\nexports.isBeforeEndDate = isBeforeEndDate;\nconst isQuietTime = (message) => {\n const { Schedule } = message;\n if (!Schedule?.QuietTime) {\n return false;\n }\n const pattern = /^[0-2]\\d:[0-5]\\d$/; // basic sanity check, not a fully featured HH:MM validation\n const { Start, End } = Schedule.QuietTime;\n if (!Start ||\n !End ||\n Start === End ||\n !pattern.test(Start) ||\n !pattern.test(End)) {\n return false;\n }\n const now = new Date();\n const start = new Date(now);\n const end = new Date(now);\n const [startHours, startMinutes] = Start.split(':');\n const [endHours, endMinutes] = End.split(':');\n start.setHours(Number.parseInt(startHours, 10), Number.parseInt(startMinutes, 10), 0, 0);\n end.setHours(Number.parseInt(endHours, 10), Number.parseInt(endMinutes, 10), 0, 0);\n // if quiet time includes midnight, bump the end time to the next day\n if (start > end) {\n end.setDate(end.getDate() + 1);\n }\n const isDuringQuietTime = now >= start && now <= end;\n if (isDuringQuietTime) {\n exports.logger.debug('message filtered due to quiet time', message);\n }\n return isDuringQuietTime;\n};\nexports.isQuietTime = isQuietTime;\nconst clearMemo = () => {\n eventNameMemo = {};\n eventAttributesMemo = {};\n eventMetricsMemo = {};\n};\nexports.clearMemo = clearMemo;\n// in the pinpoint console when a message is created with a Modal or Full Screen layout,\n// it is assigned a layout value of MOBILE_FEED or OVERLAYS respectively in the message payload.\n// In the future, Pinpoint will be updating the layout values in the aforementioned scenario\n// to MODAL and FULL_SCREEN.\n//\n// This utility acts as a safeguard to ensure that:\n// - 1. the usage of MOBILE_FEED and OVERLAYS as values for message layouts are not leaked\n// outside the Pinpoint provider\n// - 2. Amplify correctly handles the legacy layout values from Pinpoint after they are updated\nconst interpretLayout = (layout) => {\n if (layout === 'MOBILE_FEED') {\n return 'MODAL';\n }\n if (layout === 'OVERLAYS') {\n return 'FULL_SCREEN';\n }\n // cast as PinpointInAppMessage['InAppMessage']['Layout'] allows `string` as a value\n return layout;\n};\nexports.interpretLayout = interpretLayout;\nconst extractContent = ({ InAppMessage: message, }) => {\n return (message?.Content?.map(content => {\n const { BackgroundColor, BodyConfig, HeaderConfig, ImageUrl, PrimaryBtn, SecondaryBtn, } = content;\n const defaultPrimaryButton = PrimaryBtn?.DefaultConfig;\n const defaultSecondaryButton = SecondaryBtn?.DefaultConfig;\n const extractedContent = {};\n if (BackgroundColor) {\n extractedContent.container = {\n style: {\n backgroundColor: BackgroundColor,\n },\n };\n }\n if (HeaderConfig) {\n extractedContent.header = {\n // Default to empty string in rare cases we don't have a Header value\n content: HeaderConfig.Header ?? '',\n style: {\n color: HeaderConfig.TextColor,\n textAlign: HeaderConfig.Alignment?.toLowerCase(),\n },\n };\n }\n if (BodyConfig) {\n extractedContent.body = {\n // Default to empty string in rare cases we don't have a Body value\n content: BodyConfig.Body ?? '',\n style: {\n color: BodyConfig.TextColor,\n textAlign: BodyConfig.Alignment?.toLowerCase(),\n },\n };\n }\n if (ImageUrl) {\n extractedContent.image = {\n src: ImageUrl,\n };\n }\n if (defaultPrimaryButton) {\n extractedContent.primaryButton = {\n // Default to empty string in rare cases we don't have a Text value\n title: defaultPrimaryButton.Text ?? '',\n action: defaultPrimaryButton.ButtonAction,\n url: defaultPrimaryButton.Link,\n style: {\n backgroundColor: defaultPrimaryButton.BackgroundColor,\n borderRadius: defaultPrimaryButton.BorderRadius,\n color: defaultPrimaryButton.TextColor,\n },\n };\n }\n if (defaultSecondaryButton) {\n extractedContent.secondaryButton = {\n // Default to empty string in rare cases we don't have a Text value\n title: defaultSecondaryButton.Text ?? '',\n action: defaultSecondaryButton.ButtonAction,\n url: defaultSecondaryButton.Link,\n style: {\n backgroundColor: defaultSecondaryButton.BackgroundColor,\n borderRadius: defaultSecondaryButton.BorderRadius,\n color: defaultSecondaryButton.TextColor,\n },\n };\n }\n return extractedContent;\n }) ?? []);\n};\nexports.extractContent = extractContent;\nconst extractMetadata = ({ InAppMessage: inAppMessage, Priority, Schedule, TreatmentId, }) => ({\n customData: inAppMessage?.CustomConfig,\n endDate: Schedule?.EndDate,\n priority: Priority,\n treatmentId: TreatmentId,\n});\nexports.extractMetadata = extractMetadata;\n"],"names":[],"mappings":"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"}
@@ -3,7 +3,10 @@
3
3
  // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
4
4
  // SPDX-License-Identifier: Apache-2.0
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.incrementMessageCounts = exports.sessionStateChangeHandler = exports.processInAppMessages = exports.STORAGE_KEY_SUFFIX = exports.CHANNEL_TYPE = exports.CATEGORY = exports.PINPOINT_KEY_PREFIX = exports.getInAppMessagingUserAgentString = exports.resolveCredentials = exports.resolveConfig = void 0;
6
+ exports.incrementMessageCounts = exports.sessionStateChangeHandler = exports.processInAppMessages = exports.STORAGE_KEY_SUFFIX = exports.CHANNEL_TYPE = exports.CATEGORY = exports.PINPOINT_KEY_PREFIX = exports.getInAppMessagingUserAgentString = exports.resolveCredentials = exports.resolveConfig = exports.setConflictHandler = exports.getConflictHandler = void 0;
7
+ var conflictHandlerManager_1 = require("./conflictHandlerManager");
8
+ Object.defineProperty(exports, "getConflictHandler", { enumerable: true, get: function () { return conflictHandlerManager_1.getConflictHandler; } });
9
+ Object.defineProperty(exports, "setConflictHandler", { enumerable: true, get: function () { return conflictHandlerManager_1.setConflictHandler; } });
7
10
  var resolveConfig_1 = require("./resolveConfig");
8
11
  Object.defineProperty(exports, "resolveConfig", { enumerable: true, get: function () { return resolveConfig_1.resolveConfig; } });
9
12
  var resolveCredentials_1 = require("./resolveCredentials");
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../../../src/inAppMessaging/providers/pinpoint/utils/index.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.incrementMessageCounts = exports.sessionStateChangeHandler = exports.processInAppMessages = exports.STORAGE_KEY_SUFFIX = exports.CHANNEL_TYPE = exports.CATEGORY = exports.PINPOINT_KEY_PREFIX = exports.getInAppMessagingUserAgentString = exports.resolveCredentials = exports.resolveConfig = void 0;\nvar resolveConfig_1 = require(\"./resolveConfig\");\nObject.defineProperty(exports, \"resolveConfig\", { enumerable: true, get: function () { return resolveConfig_1.resolveConfig; } });\nvar resolveCredentials_1 = require(\"./resolveCredentials\");\nObject.defineProperty(exports, \"resolveCredentials\", { enumerable: true, get: function () { return resolveCredentials_1.resolveCredentials; } });\nvar userAgent_1 = require(\"./userAgent\");\nObject.defineProperty(exports, \"getInAppMessagingUserAgentString\", { enumerable: true, get: function () { return userAgent_1.getInAppMessagingUserAgentString; } });\nvar constants_1 = require(\"./constants\");\nObject.defineProperty(exports, \"PINPOINT_KEY_PREFIX\", { enumerable: true, get: function () { return constants_1.PINPOINT_KEY_PREFIX; } });\nObject.defineProperty(exports, \"CATEGORY\", { enumerable: true, get: function () { return constants_1.CATEGORY; } });\nObject.defineProperty(exports, \"CHANNEL_TYPE\", { enumerable: true, get: function () { return constants_1.CHANNEL_TYPE; } });\nObject.defineProperty(exports, \"STORAGE_KEY_SUFFIX\", { enumerable: true, get: function () { return constants_1.STORAGE_KEY_SUFFIX; } });\nvar messageProcessingHelpers_1 = require(\"./messageProcessingHelpers\");\nObject.defineProperty(exports, \"processInAppMessages\", { enumerable: true, get: function () { return messageProcessingHelpers_1.processInAppMessages; } });\nObject.defineProperty(exports, \"sessionStateChangeHandler\", { enumerable: true, get: function () { return messageProcessingHelpers_1.sessionStateChangeHandler; } });\nObject.defineProperty(exports, \"incrementMessageCounts\", { enumerable: true, get: function () { return messageProcessingHelpers_1.incrementMessageCounts; } });\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAC9D,OAAO,CAAC,sBAAsB,GAAG,OAAO,CAAC,yBAAyB,GAAG,OAAO,CAAC,oBAAoB,GAAG,OAAO,CAAC,kBAAkB,GAAG,OAAO,CAAC,YAAY,GAAG,OAAO,CAAC,QAAQ,GAAG,OAAO,CAAC,mBAAmB,GAAG,OAAO,CAAC,gCAAgC,GAAG,OAAO,CAAC,kBAAkB,GAAG,OAAO,CAAC,aAAa,GAAG,KAAK,CAAC,CAAC;AAChT,IAAI,eAAe,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;AACjD,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,eAAe,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,YAAY,EAAE,OAAO,eAAe,CAAC,aAAa,CAAC,EAAE,EAAE,CAAC,CAAC;AAClI,IAAI,oBAAoB,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAAC;AAC3D,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,oBAAoB,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,YAAY,EAAE,OAAO,oBAAoB,CAAC,kBAAkB,CAAC,EAAE,EAAE,CAAC,CAAC;AACjJ,IAAI,WAAW,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;AACzC,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,kCAAkC,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,YAAY,EAAE,OAAO,WAAW,CAAC,gCAAgC,CAAC,EAAE,EAAE,CAAC,CAAC;AACpK,IAAI,WAAW,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;AACzC,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,qBAAqB,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,YAAY,EAAE,OAAO,WAAW,CAAC,mBAAmB,CAAC,EAAE,EAAE,CAAC,CAAC;AAC1I,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,UAAU,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,YAAY,EAAE,OAAO,WAAW,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC,CAAC;AACpH,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,cAAc,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,YAAY,EAAE,OAAO,WAAW,CAAC,YAAY,CAAC,EAAE,EAAE,CAAC,CAAC;AAC5H,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,oBAAoB,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,YAAY,EAAE,OAAO,WAAW,CAAC,kBAAkB,CAAC,EAAE,EAAE,CAAC,CAAC;AACxI,IAAI,0BAA0B,GAAG,OAAO,CAAC,4BAA4B,CAAC,CAAC;AACvE,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,sBAAsB,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,YAAY,EAAE,OAAO,0BAA0B,CAAC,oBAAoB,CAAC,EAAE,EAAE,CAAC,CAAC;AAC3J,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,2BAA2B,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,YAAY,EAAE,OAAO,0BAA0B,CAAC,yBAAyB,CAAC,EAAE,EAAE,CAAC,CAAC;AACrK,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,wBAAwB,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,YAAY,EAAE,OAAO,0BAA0B,CAAC,sBAAsB,CAAC,EAAE,EAAE,CAAC;;"}
1
+ {"version":3,"file":"index.js","sources":["../../../../../../src/inAppMessaging/providers/pinpoint/utils/index.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.incrementMessageCounts = exports.sessionStateChangeHandler = exports.processInAppMessages = exports.STORAGE_KEY_SUFFIX = exports.CHANNEL_TYPE = exports.CATEGORY = exports.PINPOINT_KEY_PREFIX = exports.getInAppMessagingUserAgentString = exports.resolveCredentials = exports.resolveConfig = exports.setConflictHandler = exports.getConflictHandler = void 0;\nvar conflictHandlerManager_1 = require(\"./conflictHandlerManager\");\nObject.defineProperty(exports, \"getConflictHandler\", { enumerable: true, get: function () { return conflictHandlerManager_1.getConflictHandler; } });\nObject.defineProperty(exports, \"setConflictHandler\", { enumerable: true, get: function () { return conflictHandlerManager_1.setConflictHandler; } });\nvar resolveConfig_1 = require(\"./resolveConfig\");\nObject.defineProperty(exports, \"resolveConfig\", { enumerable: true, get: function () { return resolveConfig_1.resolveConfig; } });\nvar resolveCredentials_1 = require(\"./resolveCredentials\");\nObject.defineProperty(exports, \"resolveCredentials\", { enumerable: true, get: function () { return resolveCredentials_1.resolveCredentials; } });\nvar userAgent_1 = require(\"./userAgent\");\nObject.defineProperty(exports, \"getInAppMessagingUserAgentString\", { enumerable: true, get: function () { return userAgent_1.getInAppMessagingUserAgentString; } });\nvar constants_1 = require(\"./constants\");\nObject.defineProperty(exports, \"PINPOINT_KEY_PREFIX\", { enumerable: true, get: function () { return constants_1.PINPOINT_KEY_PREFIX; } });\nObject.defineProperty(exports, \"CATEGORY\", { enumerable: true, get: function () { return constants_1.CATEGORY; } });\nObject.defineProperty(exports, \"CHANNEL_TYPE\", { enumerable: true, get: function () { return constants_1.CHANNEL_TYPE; } });\nObject.defineProperty(exports, \"STORAGE_KEY_SUFFIX\", { enumerable: true, get: function () { return constants_1.STORAGE_KEY_SUFFIX; } });\nvar messageProcessingHelpers_1 = require(\"./messageProcessingHelpers\");\nObject.defineProperty(exports, \"processInAppMessages\", { enumerable: true, get: function () { return messageProcessingHelpers_1.processInAppMessages; } });\nObject.defineProperty(exports, \"sessionStateChangeHandler\", { enumerable: true, get: function () { return messageProcessingHelpers_1.sessionStateChangeHandler; } });\nObject.defineProperty(exports, \"incrementMessageCounts\", { enumerable: true, get: function () { return messageProcessingHelpers_1.incrementMessageCounts; } });\n"],"names":[],"mappings":"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"}