@aws-amplify/notifications 2.0.1-console-preview.5f040a2.0 → 2.0.1-console-preview.23dc225.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 (190) hide show
  1. package/lib/common/AWSPinpointProviderCommon/index.d.ts +0 -1
  2. package/lib/common/AWSPinpointProviderCommon/index.js +14 -19
  3. package/lib/common/AWSPinpointProviderCommon/index.js.map +1 -1
  4. package/lib/common/eventListeners/index.d.ts +2 -2
  5. package/lib/common/eventListeners/index.js +3 -1
  6. package/lib/common/eventListeners/index.js.map +1 -1
  7. package/lib/common/eventListeners/types.d.ts +3 -0
  8. package/lib/common/index.d.ts +1 -1
  9. package/lib/inAppMessaging/errors/validation.d.ts +2 -1
  10. package/lib/inAppMessaging/errors/validation.js +5 -0
  11. package/lib/inAppMessaging/errors/validation.js.map +1 -1
  12. package/lib/inAppMessaging/index.d.ts +1 -1
  13. package/lib/inAppMessaging/index.js +8 -0
  14. package/lib/inAppMessaging/index.js.map +1 -1
  15. package/lib/inAppMessaging/providers/index.d.ts +1 -1
  16. package/lib/inAppMessaging/providers/index.js +8 -0
  17. package/lib/inAppMessaging/providers/index.js.map +1 -1
  18. package/lib/inAppMessaging/providers/pinpoint/apis/dispatchEvent.d.ts +26 -0
  19. package/lib/inAppMessaging/providers/pinpoint/apis/dispatchEvent.js +69 -0
  20. package/lib/inAppMessaging/providers/pinpoint/apis/dispatchEvent.js.map +1 -0
  21. package/lib/inAppMessaging/providers/pinpoint/apis/identifyUser.d.ts +1 -4
  22. package/lib/inAppMessaging/providers/pinpoint/apis/identifyUser.js +5 -5
  23. package/lib/inAppMessaging/providers/pinpoint/apis/identifyUser.js.map +1 -1
  24. package/lib/inAppMessaging/providers/pinpoint/apis/index.d.ts +8 -0
  25. package/lib/inAppMessaging/providers/pinpoint/apis/index.js +16 -0
  26. package/lib/inAppMessaging/providers/pinpoint/apis/index.js.map +1 -1
  27. package/lib/inAppMessaging/providers/pinpoint/apis/initializeInAppMessaging.d.ts +12 -0
  28. package/lib/inAppMessaging/providers/pinpoint/apis/initializeInAppMessaging.js +61 -0
  29. package/lib/inAppMessaging/providers/pinpoint/apis/initializeInAppMessaging.js.map +1 -0
  30. package/lib/inAppMessaging/providers/pinpoint/apis/notifyMessageInteraction.d.ts +16 -0
  31. package/lib/inAppMessaging/providers/pinpoint/apis/notifyMessageInteraction.js +27 -0
  32. package/lib/inAppMessaging/providers/pinpoint/apis/notifyMessageInteraction.js.map +1 -0
  33. package/lib/inAppMessaging/providers/pinpoint/apis/onMessageActionTaken.d.ts +18 -0
  34. package/lib/inAppMessaging/providers/pinpoint/apis/onMessageActionTaken.js +27 -0
  35. package/lib/inAppMessaging/providers/pinpoint/apis/onMessageActionTaken.js.map +1 -0
  36. package/lib/inAppMessaging/providers/pinpoint/apis/onMessageDismissed.d.ts +18 -0
  37. package/lib/inAppMessaging/providers/pinpoint/apis/onMessageDismissed.js +27 -0
  38. package/lib/inAppMessaging/providers/pinpoint/apis/onMessageDismissed.js.map +1 -0
  39. package/lib/inAppMessaging/providers/pinpoint/apis/onMessageDisplayed.d.ts +18 -0
  40. package/lib/inAppMessaging/providers/pinpoint/apis/onMessageDisplayed.js +27 -0
  41. package/lib/inAppMessaging/providers/pinpoint/apis/onMessageDisplayed.js.map +1 -0
  42. package/lib/inAppMessaging/providers/pinpoint/apis/onMessageReceived.d.ts +18 -0
  43. package/lib/inAppMessaging/providers/pinpoint/apis/onMessageReceived.js +27 -0
  44. package/lib/inAppMessaging/providers/pinpoint/apis/onMessageReceived.js.map +1 -0
  45. package/lib/inAppMessaging/providers/pinpoint/apis/setConflictHandler.d.ts +32 -0
  46. package/lib/inAppMessaging/providers/pinpoint/apis/setConflictHandler.js +66 -0
  47. package/lib/inAppMessaging/providers/pinpoint/apis/setConflictHandler.js.map +1 -0
  48. package/lib/inAppMessaging/providers/pinpoint/apis/syncMessages.d.ts +1 -3
  49. package/lib/inAppMessaging/providers/pinpoint/apis/syncMessages.js +20 -18
  50. package/lib/inAppMessaging/providers/pinpoint/apis/syncMessages.js.map +1 -1
  51. package/lib/inAppMessaging/providers/pinpoint/index.d.ts +1 -1
  52. package/lib/inAppMessaging/providers/pinpoint/index.js +8 -0
  53. package/lib/inAppMessaging/providers/pinpoint/index.js.map +1 -1
  54. package/lib/inAppMessaging/providers/pinpoint/types/index.d.ts +2 -1
  55. package/lib/inAppMessaging/providers/pinpoint/types/index.js +2 -0
  56. package/lib/inAppMessaging/providers/pinpoint/types/index.js.map +1 -1
  57. package/lib/inAppMessaging/providers/pinpoint/types/inputs.d.ts +33 -2
  58. package/lib/inAppMessaging/providers/pinpoint/types/outputs.d.ts +17 -0
  59. package/lib/inAppMessaging/providers/pinpoint/types/outputs.js +5 -0
  60. package/lib/inAppMessaging/providers/pinpoint/types/outputs.js.map +1 -0
  61. package/lib/inAppMessaging/providers/pinpoint/types/types.d.ts +4 -1
  62. package/lib/inAppMessaging/providers/pinpoint/types/types.js +6 -6
  63. package/lib/inAppMessaging/providers/pinpoint/types/types.js.map +1 -1
  64. package/lib/inAppMessaging/providers/pinpoint/utils/helpers.d.ts +17 -0
  65. package/lib/inAppMessaging/providers/pinpoint/utils/helpers.js +260 -0
  66. package/lib/inAppMessaging/providers/pinpoint/utils/helpers.js.map +1 -0
  67. package/lib/inAppMessaging/providers/pinpoint/utils/index.d.ts +1 -0
  68. package/lib/inAppMessaging/providers/pinpoint/utils/index.js +4 -0
  69. package/lib/inAppMessaging/providers/pinpoint/utils/index.js.map +1 -1
  70. package/lib/inAppMessaging/providers/pinpoint/utils/messageProcessingHelpers.d.ts +6 -0
  71. package/lib/inAppMessaging/providers/pinpoint/utils/messageProcessingHelpers.js +247 -0
  72. package/lib/inAppMessaging/providers/pinpoint/utils/messageProcessingHelpers.js.map +1 -0
  73. package/lib/inAppMessaging/providers/pinpoint/utils/resolveCredentials.d.ts +1 -6
  74. package/lib/inAppMessaging/types/index.d.ts +1 -1
  75. package/lib/inAppMessaging/utils/index.d.ts +1 -0
  76. package/lib/inAppMessaging/utils/index.js +9 -0
  77. package/lib/inAppMessaging/utils/index.js.map +1 -0
  78. package/lib/inAppMessaging/utils/statusHelpers.d.ts +13 -0
  79. package/lib/inAppMessaging/utils/statusHelpers.js +25 -0
  80. package/lib/inAppMessaging/utils/statusHelpers.js.map +1 -0
  81. package/lib-esm/common/AWSPinpointProviderCommon/index.d.ts +0 -1
  82. package/lib-esm/common/AWSPinpointProviderCommon/index.js +15 -20
  83. package/lib-esm/common/AWSPinpointProviderCommon/index.js.map +1 -1
  84. package/lib-esm/common/eventListeners/index.d.ts +2 -2
  85. package/lib-esm/common/eventListeners/index.js +3 -1
  86. package/lib-esm/common/eventListeners/index.js.map +1 -1
  87. package/lib-esm/common/eventListeners/types.d.ts +3 -0
  88. package/lib-esm/common/index.d.ts +1 -1
  89. package/lib-esm/inAppMessaging/errors/validation.d.ts +2 -1
  90. package/lib-esm/inAppMessaging/errors/validation.js +5 -0
  91. package/lib-esm/inAppMessaging/errors/validation.js.map +1 -1
  92. package/lib-esm/inAppMessaging/index.d.ts +1 -1
  93. package/lib-esm/inAppMessaging/index.js +1 -1
  94. package/lib-esm/inAppMessaging/index.js.map +1 -1
  95. package/lib-esm/inAppMessaging/providers/index.d.ts +1 -1
  96. package/lib-esm/inAppMessaging/providers/index.js +1 -1
  97. package/lib-esm/inAppMessaging/providers/index.js.map +1 -1
  98. package/lib-esm/inAppMessaging/providers/pinpoint/apis/dispatchEvent.d.ts +26 -0
  99. package/lib-esm/inAppMessaging/providers/pinpoint/apis/dispatchEvent.js +66 -0
  100. package/lib-esm/inAppMessaging/providers/pinpoint/apis/dispatchEvent.js.map +1 -0
  101. package/lib-esm/inAppMessaging/providers/pinpoint/apis/identifyUser.d.ts +1 -4
  102. package/lib-esm/inAppMessaging/providers/pinpoint/apis/identifyUser.js +5 -5
  103. package/lib-esm/inAppMessaging/providers/pinpoint/apis/identifyUser.js.map +1 -1
  104. package/lib-esm/inAppMessaging/providers/pinpoint/apis/index.d.ts +8 -0
  105. package/lib-esm/inAppMessaging/providers/pinpoint/apis/index.js +8 -0
  106. package/lib-esm/inAppMessaging/providers/pinpoint/apis/index.js.map +1 -1
  107. package/lib-esm/inAppMessaging/providers/pinpoint/apis/initializeInAppMessaging.d.ts +12 -0
  108. package/lib-esm/inAppMessaging/providers/pinpoint/apis/initializeInAppMessaging.js +57 -0
  109. package/lib-esm/inAppMessaging/providers/pinpoint/apis/initializeInAppMessaging.js.map +1 -0
  110. package/lib-esm/inAppMessaging/providers/pinpoint/apis/notifyMessageInteraction.d.ts +16 -0
  111. package/lib-esm/inAppMessaging/providers/pinpoint/apis/notifyMessageInteraction.js +24 -0
  112. package/lib-esm/inAppMessaging/providers/pinpoint/apis/notifyMessageInteraction.js.map +1 -0
  113. package/lib-esm/inAppMessaging/providers/pinpoint/apis/onMessageActionTaken.d.ts +18 -0
  114. package/lib-esm/inAppMessaging/providers/pinpoint/apis/onMessageActionTaken.js +24 -0
  115. package/lib-esm/inAppMessaging/providers/pinpoint/apis/onMessageActionTaken.js.map +1 -0
  116. package/lib-esm/inAppMessaging/providers/pinpoint/apis/onMessageDismissed.d.ts +18 -0
  117. package/lib-esm/inAppMessaging/providers/pinpoint/apis/onMessageDismissed.js +24 -0
  118. package/lib-esm/inAppMessaging/providers/pinpoint/apis/onMessageDismissed.js.map +1 -0
  119. package/lib-esm/inAppMessaging/providers/pinpoint/apis/onMessageDisplayed.d.ts +18 -0
  120. package/lib-esm/inAppMessaging/providers/pinpoint/apis/onMessageDisplayed.js +24 -0
  121. package/lib-esm/inAppMessaging/providers/pinpoint/apis/onMessageDisplayed.js.map +1 -0
  122. package/lib-esm/inAppMessaging/providers/pinpoint/apis/onMessageReceived.d.ts +18 -0
  123. package/lib-esm/inAppMessaging/providers/pinpoint/apis/onMessageReceived.js +24 -0
  124. package/lib-esm/inAppMessaging/providers/pinpoint/apis/onMessageReceived.js.map +1 -0
  125. package/lib-esm/inAppMessaging/providers/pinpoint/apis/setConflictHandler.d.ts +32 -0
  126. package/lib-esm/inAppMessaging/providers/pinpoint/apis/setConflictHandler.js +63 -0
  127. package/lib-esm/inAppMessaging/providers/pinpoint/apis/setConflictHandler.js.map +1 -0
  128. package/lib-esm/inAppMessaging/providers/pinpoint/apis/syncMessages.d.ts +1 -3
  129. package/lib-esm/inAppMessaging/providers/pinpoint/apis/syncMessages.js +20 -18
  130. package/lib-esm/inAppMessaging/providers/pinpoint/apis/syncMessages.js.map +1 -1
  131. package/lib-esm/inAppMessaging/providers/pinpoint/index.d.ts +1 -1
  132. package/lib-esm/inAppMessaging/providers/pinpoint/index.js +1 -1
  133. package/lib-esm/inAppMessaging/providers/pinpoint/index.js.map +1 -1
  134. package/lib-esm/inAppMessaging/providers/pinpoint/types/index.d.ts +2 -1
  135. package/lib-esm/inAppMessaging/providers/pinpoint/types/index.js +1 -0
  136. package/lib-esm/inAppMessaging/providers/pinpoint/types/index.js.map +1 -1
  137. package/lib-esm/inAppMessaging/providers/pinpoint/types/inputs.d.ts +33 -2
  138. package/lib-esm/inAppMessaging/providers/pinpoint/types/outputs.d.ts +17 -0
  139. package/lib-esm/inAppMessaging/providers/pinpoint/types/outputs.js +3 -0
  140. package/lib-esm/inAppMessaging/providers/pinpoint/types/outputs.js.map +1 -0
  141. package/lib-esm/inAppMessaging/providers/pinpoint/types/types.d.ts +4 -1
  142. package/lib-esm/inAppMessaging/providers/pinpoint/types/types.js +6 -6
  143. package/lib-esm/inAppMessaging/providers/pinpoint/types/types.js.map +1 -1
  144. package/lib-esm/inAppMessaging/providers/pinpoint/utils/helpers.d.ts +17 -0
  145. package/lib-esm/inAppMessaging/providers/pinpoint/utils/helpers.js +258 -0
  146. package/lib-esm/inAppMessaging/providers/pinpoint/utils/helpers.js.map +1 -0
  147. package/lib-esm/inAppMessaging/providers/pinpoint/utils/index.d.ts +1 -0
  148. package/lib-esm/inAppMessaging/providers/pinpoint/utils/index.js +1 -0
  149. package/lib-esm/inAppMessaging/providers/pinpoint/utils/index.js.map +1 -1
  150. package/lib-esm/inAppMessaging/providers/pinpoint/utils/messageProcessingHelpers.d.ts +6 -0
  151. package/lib-esm/inAppMessaging/providers/pinpoint/utils/messageProcessingHelpers.js +242 -0
  152. package/lib-esm/inAppMessaging/providers/pinpoint/utils/messageProcessingHelpers.js.map +1 -0
  153. package/lib-esm/inAppMessaging/providers/pinpoint/utils/resolveCredentials.d.ts +1 -6
  154. package/lib-esm/inAppMessaging/types/index.d.ts +1 -1
  155. package/lib-esm/inAppMessaging/utils/index.d.ts +1 -0
  156. package/lib-esm/inAppMessaging/utils/index.js +4 -0
  157. package/lib-esm/inAppMessaging/utils/index.js.map +1 -0
  158. package/lib-esm/inAppMessaging/utils/statusHelpers.d.ts +13 -0
  159. package/lib-esm/inAppMessaging/utils/statusHelpers.js +22 -0
  160. package/lib-esm/inAppMessaging/utils/statusHelpers.js.map +1 -0
  161. package/package.json +5 -6
  162. package/src/common/AWSPinpointProviderCommon/index.ts +9 -14
  163. package/src/common/eventListeners/index.ts +5 -3
  164. package/src/common/eventListeners/types.ts +4 -0
  165. package/src/common/index.ts +5 -1
  166. package/src/inAppMessaging/errors/validation.ts +6 -0
  167. package/src/inAppMessaging/index.ts +12 -1
  168. package/src/inAppMessaging/providers/index.ts +12 -1
  169. package/src/inAppMessaging/providers/pinpoint/apis/dispatchEvent.ts +63 -0
  170. package/src/inAppMessaging/providers/pinpoint/apis/identifyUser.ts +3 -4
  171. package/src/inAppMessaging/providers/pinpoint/apis/index.ts +8 -0
  172. package/src/inAppMessaging/providers/pinpoint/apis/initializeInAppMessaging.ts +64 -0
  173. package/src/inAppMessaging/providers/pinpoint/apis/notifyMessageInteraction.ts +28 -0
  174. package/src/inAppMessaging/providers/pinpoint/apis/onMessageActionTaken.ts +29 -0
  175. package/src/inAppMessaging/providers/pinpoint/apis/onMessageDismissed.ts +29 -0
  176. package/src/inAppMessaging/providers/pinpoint/apis/onMessageDisplayed.ts +29 -0
  177. package/src/inAppMessaging/providers/pinpoint/apis/onMessageReceived.ts +29 -0
  178. package/src/inAppMessaging/providers/pinpoint/apis/setConflictHandler.ts +68 -0
  179. package/src/inAppMessaging/providers/pinpoint/apis/syncMessages.ts +6 -5
  180. package/src/inAppMessaging/providers/pinpoint/index.ts +12 -1
  181. package/src/inAppMessaging/providers/pinpoint/types/index.ts +14 -1
  182. package/src/inAppMessaging/providers/pinpoint/types/inputs.ts +49 -2
  183. package/src/inAppMessaging/providers/pinpoint/types/outputs.ts +24 -0
  184. package/src/inAppMessaging/providers/pinpoint/types/types.ts +9 -1
  185. package/src/inAppMessaging/providers/pinpoint/utils/helpers.ts +325 -0
  186. package/src/inAppMessaging/providers/pinpoint/utils/index.ts +6 -0
  187. package/src/inAppMessaging/providers/pinpoint/utils/messageProcessingHelpers.ts +196 -0
  188. package/src/inAppMessaging/types/index.ts +7 -1
  189. package/src/inAppMessaging/utils/index.ts +8 -0
  190. package/src/inAppMessaging/utils/statusHelpers.ts +32 -0
@@ -0,0 +1,260 @@
1
+ "use strict";
2
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ // SPDX-License-Identifier: Apache-2.0
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ var tslib_1 = require("tslib");
6
+ var utils_1 = require("@aws-amplify/core/internals/utils");
7
+ var isEmpty_1 = tslib_1.__importDefault(require("lodash/isEmpty"));
8
+ var pinpoint_1 = require("@aws-amplify/core/internals/providers/pinpoint");
9
+ var resolveConfig_1 = require("./resolveConfig");
10
+ var resolveCredentials_1 = require("./resolveCredentials");
11
+ var constants_1 = require("./constants");
12
+ var userAgent_1 = require("./userAgent");
13
+ var DELIVERY_TYPE = 'IN_APP_MESSAGE';
14
+ var eventNameMemo = {};
15
+ var eventAttributesMemo = {};
16
+ var eventMetricsMemo = {};
17
+ exports.logger = new utils_1.ConsoleLogger('InAppMessaging.Pinpoint.Utils');
18
+ exports.recordAnalyticsEvent = function (event, message) {
19
+ var _a = resolveConfig_1.resolveConfig(), appId = _a.appId, region = _a.region;
20
+ var id = message.id, metadata = message.metadata;
21
+ resolveCredentials_1.resolveCredentials()
22
+ .then(function (_a) {
23
+ var credentials = _a.credentials, identityId = _a.identityId;
24
+ pinpoint_1.record({
25
+ appId: appId,
26
+ category: constants_1.CATEGORY,
27
+ credentials: credentials,
28
+ event: {
29
+ name: event,
30
+ attributes: {
31
+ campaign_id: id,
32
+ delivery_type: DELIVERY_TYPE,
33
+ treatment_id: metadata === null || metadata === void 0 ? void 0 : metadata.treatmentId,
34
+ },
35
+ },
36
+ identityId: identityId,
37
+ region: region,
38
+ userAgentValue: userAgent_1.getInAppMessagingUserAgentString(utils_1.InAppMessagingAction.DispatchEvent),
39
+ });
40
+ })
41
+ .catch(function (e) {
42
+ // An error occured while fetching credentials or persisting the event to the buffer
43
+ exports.logger.warn('Failed to record event.', e);
44
+ });
45
+ };
46
+ exports.getStartOfDay = function () {
47
+ var now = new Date();
48
+ now.setHours(0, 0, 0, 0);
49
+ return now.toISOString();
50
+ };
51
+ exports.matchesEventType = function (_a, _b) {
52
+ var CampaignId = _a.CampaignId, Schedule = _a.Schedule;
53
+ var eventType = _b.name;
54
+ var _c;
55
+ var EventType = ((_c = Schedule === null || Schedule === void 0 ? void 0 : Schedule.EventFilter) === null || _c === void 0 ? void 0 : _c.Dimensions).EventType;
56
+ var memoKey = CampaignId + ":" + eventType;
57
+ if (!eventNameMemo.hasOwnProperty(memoKey)) {
58
+ eventNameMemo[memoKey] = !!(EventType === null || EventType === void 0 ? void 0 : EventType.Values.includes(eventType));
59
+ }
60
+ return eventNameMemo[memoKey];
61
+ };
62
+ exports.matchesAttributes = function (_a, _b) {
63
+ var CampaignId = _a.CampaignId, Schedule = _a.Schedule;
64
+ var attributes = _b.attributes;
65
+ var _c;
66
+ var Attributes = ((_c = Schedule === null || Schedule === void 0 ? void 0 : Schedule.EventFilter) === null || _c === void 0 ? void 0 : _c.Dimensions).Attributes;
67
+ if (isEmpty_1.default(Attributes)) {
68
+ // if message does not have attributes defined it does not matter what attributes are on the event
69
+ return true;
70
+ }
71
+ if (isEmpty_1.default(attributes)) {
72
+ // if message does have attributes but the event does not then it always fails the check
73
+ return false;
74
+ }
75
+ var memoKey = CampaignId + ":" + JSON.stringify(attributes);
76
+ if (!eventAttributesMemo.hasOwnProperty(memoKey)) {
77
+ eventAttributesMemo[memoKey] = Object.entries(Attributes).every(function (_a) {
78
+ var _b = tslib_1.__read(_a, 2), key = _b[0], Values = _b[1].Values;
79
+ return Values.includes(attributes[key]);
80
+ });
81
+ }
82
+ return eventAttributesMemo[memoKey];
83
+ };
84
+ exports.matchesMetrics = function (_a, _b) {
85
+ var CampaignId = _a.CampaignId, Schedule = _a.Schedule;
86
+ var metrics = _b.metrics;
87
+ var _c;
88
+ var Metrics = ((_c = Schedule === null || Schedule === void 0 ? void 0 : Schedule.EventFilter) === null || _c === void 0 ? void 0 : _c.Dimensions).Metrics;
89
+ if (isEmpty_1.default(Metrics)) {
90
+ // if message does not have metrics defined it does not matter what metrics are on the event
91
+ return true;
92
+ }
93
+ if (isEmpty_1.default(metrics)) {
94
+ // if message does have metrics but the event does not then it always fails the check
95
+ return false;
96
+ }
97
+ var memoKey = CampaignId + ":" + JSON.stringify(metrics);
98
+ if (!eventMetricsMemo.hasOwnProperty(memoKey)) {
99
+ eventMetricsMemo[memoKey] = Object.entries(Metrics).every(function (_a) {
100
+ var _b = tslib_1.__read(_a, 2), key = _b[0], _c = _b[1], ComparisonOperator = _c.ComparisonOperator, Value = _c.Value;
101
+ var compare = exports.getComparator(ComparisonOperator);
102
+ // if there is some unknown comparison operator, treat as a comparison failure
103
+ return compare ? compare(Value, metrics[key]) : false;
104
+ });
105
+ }
106
+ return eventMetricsMemo[memoKey];
107
+ };
108
+ exports.getComparator = function (operator) {
109
+ switch (operator) {
110
+ case 'EQUAL':
111
+ return function (metricsVal, eventVal) { return metricsVal === eventVal; };
112
+ case 'GREATER_THAN':
113
+ return function (metricsVal, eventVal) { return metricsVal < eventVal; };
114
+ case 'GREATER_THAN_OR_EQUAL':
115
+ return function (metricsVal, eventVal) { return metricsVal <= eventVal; };
116
+ case 'LESS_THAN':
117
+ return function (metricsVal, eventVal) { return metricsVal > eventVal; };
118
+ case 'LESS_THAN_OR_EQUAL':
119
+ return function (metricsVal, eventVal) { return metricsVal >= eventVal; };
120
+ default:
121
+ return null;
122
+ }
123
+ };
124
+ exports.isBeforeEndDate = function (_a) {
125
+ var Schedule = _a.Schedule;
126
+ if (!(Schedule === null || Schedule === void 0 ? void 0 : Schedule.EndDate)) {
127
+ return true;
128
+ }
129
+ return new Date() < new Date(Schedule.EndDate);
130
+ };
131
+ exports.isQuietTime = function (message) {
132
+ var Schedule = message.Schedule;
133
+ if (!(Schedule === null || Schedule === void 0 ? void 0 : Schedule.QuietTime)) {
134
+ return false;
135
+ }
136
+ var pattern = /^[0-2]\d:[0-5]\d$/; // basic sanity check, not a fully featured HH:MM validation
137
+ var _a = Schedule.QuietTime, Start = _a.Start, End = _a.End;
138
+ if (!Start ||
139
+ !End ||
140
+ Start === End ||
141
+ !pattern.test(Start) ||
142
+ !pattern.test(End)) {
143
+ return false;
144
+ }
145
+ var now = new Date();
146
+ var start = new Date(now);
147
+ var end = new Date(now);
148
+ var _b = tslib_1.__read(Start.split(':'), 2), startHours = _b[0], startMinutes = _b[1];
149
+ var _c = tslib_1.__read(End.split(':'), 2), endHours = _c[0], endMinutes = _c[1];
150
+ start.setHours(Number.parseInt(startHours, 10), Number.parseInt(startMinutes, 10), 0, 0);
151
+ end.setHours(Number.parseInt(endHours, 10), Number.parseInt(endMinutes, 10), 0, 0);
152
+ // if quiet time includes midnight, bump the end time to the next day
153
+ if (start > end) {
154
+ end.setDate(end.getDate() + 1);
155
+ }
156
+ var isQuietTime = now >= start && now <= end;
157
+ if (isQuietTime) {
158
+ exports.logger.debug('message filtered due to quiet time', message);
159
+ }
160
+ return isQuietTime;
161
+ };
162
+ exports.clearMemo = function () {
163
+ eventNameMemo = {};
164
+ eventAttributesMemo = {};
165
+ eventMetricsMemo = {};
166
+ };
167
+ // in the pinpoint console when a message is created with a Modal or Full Screen layout,
168
+ // it is assigned a layout value of MOBILE_FEED or OVERLAYS respectively in the message payload.
169
+ // In the future, Pinpoint will be updating the layout values in the aforementioned scenario
170
+ // to MODAL and FULL_SCREEN.
171
+ //
172
+ // This utility acts as a safeguard to ensure that:
173
+ // - 1. the usage of MOBILE_FEED and OVERLAYS as values for message layouts are not leaked
174
+ // outside the Pinpoint provider
175
+ // - 2. Amplify correctly handles the legacy layout values from Pinpoint after they are updated
176
+ exports.interpretLayout = function (layout) {
177
+ if (layout === 'MOBILE_FEED') {
178
+ return 'MODAL';
179
+ }
180
+ if (layout === 'OVERLAYS') {
181
+ return 'FULL_SCREEN';
182
+ }
183
+ // cast as PinpointInAppMessage['InAppMessage']['Layout'] allows `string` as a value
184
+ return layout;
185
+ };
186
+ exports.extractContent = function (_a) {
187
+ var message = _a.InAppMessage;
188
+ var _b, _c;
189
+ return ((_c = (_b = message === null || message === void 0 ? void 0 : message.Content) === null || _b === void 0 ? void 0 : _b.map(function (content) {
190
+ var BackgroundColor = content.BackgroundColor, BodyConfig = content.BodyConfig, HeaderConfig = content.HeaderConfig, ImageUrl = content.ImageUrl, PrimaryBtn = content.PrimaryBtn, SecondaryBtn = content.SecondaryBtn;
191
+ var defaultPrimaryButton = PrimaryBtn === null || PrimaryBtn === void 0 ? void 0 : PrimaryBtn.DefaultConfig;
192
+ var defaultSecondaryButton = SecondaryBtn === null || SecondaryBtn === void 0 ? void 0 : SecondaryBtn.DefaultConfig;
193
+ var extractedContent = {};
194
+ if (BackgroundColor) {
195
+ extractedContent.container = {
196
+ style: {
197
+ backgroundColor: BackgroundColor,
198
+ },
199
+ };
200
+ }
201
+ if (HeaderConfig) {
202
+ extractedContent.header = {
203
+ content: HeaderConfig.Header,
204
+ style: {
205
+ color: HeaderConfig.TextColor,
206
+ textAlign: HeaderConfig.Alignment.toLowerCase(),
207
+ },
208
+ };
209
+ }
210
+ if (BodyConfig) {
211
+ extractedContent.body = {
212
+ content: BodyConfig.Body,
213
+ style: {
214
+ color: BodyConfig.TextColor,
215
+ textAlign: BodyConfig.Alignment.toLowerCase(),
216
+ },
217
+ };
218
+ }
219
+ if (ImageUrl) {
220
+ extractedContent.image = {
221
+ src: ImageUrl,
222
+ };
223
+ }
224
+ if (defaultPrimaryButton) {
225
+ extractedContent.primaryButton = {
226
+ title: defaultPrimaryButton.Text,
227
+ action: defaultPrimaryButton.ButtonAction,
228
+ url: defaultPrimaryButton.Link,
229
+ style: {
230
+ backgroundColor: defaultPrimaryButton.BackgroundColor,
231
+ borderRadius: defaultPrimaryButton.BorderRadius,
232
+ color: defaultPrimaryButton.TextColor,
233
+ },
234
+ };
235
+ }
236
+ if (defaultSecondaryButton) {
237
+ extractedContent.secondaryButton = {
238
+ title: defaultSecondaryButton.Text,
239
+ action: defaultSecondaryButton.ButtonAction,
240
+ url: defaultSecondaryButton.Link,
241
+ style: {
242
+ backgroundColor: defaultSecondaryButton.BackgroundColor,
243
+ borderRadius: defaultSecondaryButton.BorderRadius,
244
+ color: defaultSecondaryButton.TextColor,
245
+ },
246
+ };
247
+ }
248
+ return extractedContent;
249
+ })) !== null && _c !== void 0 ? _c : []);
250
+ };
251
+ exports.extractMetadata = function (_a) {
252
+ var InAppMessage = _a.InAppMessage, Priority = _a.Priority, Schedule = _a.Schedule, TreatmentId = _a.TreatmentId;
253
+ return ({
254
+ customData: InAppMessage === null || InAppMessage === void 0 ? void 0 : InAppMessage.CustomConfig,
255
+ endDate: Schedule === null || Schedule === void 0 ? void 0 : Schedule.EndDate,
256
+ priority: Priority,
257
+ treatmentId: TreatmentId,
258
+ });
259
+ };
260
+ //# sourceMappingURL=helpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../../../src/inAppMessaging/providers/pinpoint/utils/helpers.ts"],"names":[],"mappings":"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"}
@@ -2,3 +2,4 @@ export { resolveConfig } from './resolveConfig';
2
2
  export { resolveCredentials } from './resolveCredentials';
3
3
  export { getInAppMessagingUserAgentString } from './userAgent';
4
4
  export { PINPOINT_KEY_PREFIX, CATEGORY, CHANNEL_TYPE, STORAGE_KEY_SUFFIX, } from './constants';
5
+ export { processInAppMessages, sessionStateChangeHandler, incrementMessageCounts, } from './messageProcessingHelpers';
@@ -13,4 +13,8 @@ exports.PINPOINT_KEY_PREFIX = constants_1.PINPOINT_KEY_PREFIX;
13
13
  exports.CATEGORY = constants_1.CATEGORY;
14
14
  exports.CHANNEL_TYPE = constants_1.CHANNEL_TYPE;
15
15
  exports.STORAGE_KEY_SUFFIX = constants_1.STORAGE_KEY_SUFFIX;
16
+ var messageProcessingHelpers_1 = require("./messageProcessingHelpers");
17
+ exports.processInAppMessages = messageProcessingHelpers_1.processInAppMessages;
18
+ exports.sessionStateChangeHandler = messageProcessingHelpers_1.sessionStateChangeHandler;
19
+ exports.incrementMessageCounts = messageProcessingHelpers_1.incrementMessageCounts;
16
20
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/inAppMessaging/providers/pinpoint/utils/index.ts"],"names":[],"mappings":";AAAA,qEAAqE;AACrE,sCAAsC;;AAEtC,iDAAgD;AAAvC,wCAAA,aAAa,CAAA;AACtB,2DAA0D;AAAjD,kDAAA,kBAAkB,CAAA;AAC3B,yCAA+D;AAAtD,uDAAA,gCAAgC,CAAA;AACzC,yCAKqB;AAJpB,0CAAA,mBAAmB,CAAA;AACnB,+BAAA,QAAQ,CAAA;AACR,mCAAA,YAAY,CAAA;AACZ,yCAAA,kBAAkB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/inAppMessaging/providers/pinpoint/utils/index.ts"],"names":[],"mappings":";AAAA,qEAAqE;AACrE,sCAAsC;;AAEtC,iDAAgD;AAAvC,wCAAA,aAAa,CAAA;AACtB,2DAA0D;AAAjD,kDAAA,kBAAkB,CAAA;AAC3B,yCAA+D;AAAtD,uDAAA,gCAAgC,CAAA;AACzC,yCAKqB;AAJpB,0CAAA,mBAAmB,CAAA;AACnB,+BAAA,QAAQ,CAAA;AACR,mCAAA,YAAY,CAAA;AACZ,yCAAA,kBAAkB,CAAA;AAGnB,uEAIoC;AAHnC,0DAAA,oBAAoB,CAAA;AACpB,+DAAA,yBAAyB,CAAA;AACzB,4DAAA,sBAAsB,CAAA"}
@@ -0,0 +1,6 @@
1
+ import { InAppMessage, InAppMessagingEvent } from '../../../types';
2
+ import type { InAppMessageCampaign as PinpointInAppMessage } from '@aws-amplify/core/internals/aws-clients/pinpoint';
3
+ import { SessionState } from '../../../sessionTracker';
4
+ export declare function processInAppMessages(messages: PinpointInAppMessage[], event: InAppMessagingEvent): Promise<InAppMessage[]>;
5
+ export declare function sessionStateChangeHandler(state: SessionState): void;
6
+ export declare function incrementMessageCounts(messageId: string): Promise<void>;
@@ -0,0 +1,247 @@
1
+ "use strict";
2
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ // SPDX-License-Identifier: Apache-2.0
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ var tslib_1 = require("tslib");
6
+ var helpers_1 = require("./helpers");
7
+ var utils_1 = require("@aws-amplify/core/internals/utils");
8
+ var core_1 = require("@aws-amplify/core");
9
+ var MESSAGE_DAILY_COUNT_KEY = 'pinpointProvider_inAppMessages_dailyCount';
10
+ var MESSAGE_TOTAL_COUNT_KEY = 'pinpointProvider_inAppMessages_totalCount';
11
+ var logger = new utils_1.ConsoleLogger('InAppMessaging.processInAppMessages');
12
+ var sessionMessageCountMap = {};
13
+ function processInAppMessages(messages, event) {
14
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
15
+ var highestPrioritySeen, acc, index, message, messageQualifies, _a;
16
+ return tslib_1.__generator(this, function (_b) {
17
+ switch (_b.label) {
18
+ case 0:
19
+ acc = [];
20
+ index = 0;
21
+ _b.label = 1;
22
+ case 1:
23
+ if (!(index < messages.length)) return [3 /*break*/, 5];
24
+ message = messages[index];
25
+ _a = helpers_1.matchesEventType(message, event) &&
26
+ helpers_1.matchesAttributes(message, event) &&
27
+ helpers_1.matchesMetrics(message, event) &&
28
+ helpers_1.isBeforeEndDate(message);
29
+ if (!_a) return [3 /*break*/, 3];
30
+ return [4 /*yield*/, isBelowCap(message)];
31
+ case 2:
32
+ _a = (_b.sent());
33
+ _b.label = 3;
34
+ case 3:
35
+ messageQualifies = _a;
36
+ // filter all qualifying messages returning only those that are of (relative) highest priority
37
+ if (messageQualifies) {
38
+ // have not yet encountered message with priority
39
+ if (!highestPrioritySeen) {
40
+ // this message has priority, so reset the accumulator with this message only
41
+ if (message.Priority) {
42
+ highestPrioritySeen = message.Priority;
43
+ acc = [message];
44
+ }
45
+ else {
46
+ // this message also has no priority, so just add this message to accumulator
47
+ acc.push(message);
48
+ }
49
+ // have previously encountered message with priority, so only messages with priority matter now
50
+ }
51
+ else if (message.Priority) {
52
+ // this message has higher priority (lower number), so reset the accumulator with this message only
53
+ if (message.Priority < highestPrioritySeen) {
54
+ highestPrioritySeen = message.Priority;
55
+ acc = [message];
56
+ // this message has the same priority, so just add this message to accumulator
57
+ }
58
+ else if (message.Priority === highestPrioritySeen) {
59
+ acc.push(message);
60
+ }
61
+ }
62
+ }
63
+ _b.label = 4;
64
+ case 4:
65
+ index++;
66
+ return [3 /*break*/, 1];
67
+ case 5: return [2 /*return*/, normalizeMessages(acc)];
68
+ }
69
+ });
70
+ });
71
+ }
72
+ exports.processInAppMessages = processInAppMessages;
73
+ function sessionStateChangeHandler(state) {
74
+ if (state === 'started') {
75
+ console.log('Resetting the count');
76
+ // reset all session counts
77
+ sessionMessageCountMap = {};
78
+ }
79
+ }
80
+ exports.sessionStateChangeHandler = sessionStateChangeHandler;
81
+ function incrementMessageCounts(messageId) {
82
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
83
+ var _a, sessionCount, dailyCount, totalCount;
84
+ return tslib_1.__generator(this, function (_b) {
85
+ switch (_b.label) {
86
+ case 0: return [4 /*yield*/, getMessageCounts(messageId)];
87
+ case 1:
88
+ _a = _b.sent(), sessionCount = _a.sessionCount, dailyCount = _a.dailyCount, totalCount = _a.totalCount;
89
+ setSessionCount(messageId, sessionCount + 1);
90
+ setDailyCount(dailyCount + 1);
91
+ return [4 /*yield*/, setTotalCount(messageId, totalCount + 1)];
92
+ case 2:
93
+ _b.sent();
94
+ return [2 /*return*/];
95
+ }
96
+ });
97
+ });
98
+ }
99
+ exports.incrementMessageCounts = incrementMessageCounts;
100
+ function normalizeMessages(messages) {
101
+ return messages.map(function (message) {
102
+ var CampaignId = message.CampaignId, InAppMessage = message.InAppMessage;
103
+ return {
104
+ id: CampaignId,
105
+ content: helpers_1.extractContent(message),
106
+ layout: helpers_1.interpretLayout(InAppMessage.Layout),
107
+ metadata: helpers_1.extractMetadata(message),
108
+ };
109
+ });
110
+ }
111
+ function isBelowCap(_a) {
112
+ var CampaignId = _a.CampaignId, SessionCap = _a.SessionCap, DailyCap = _a.DailyCap, TotalCap = _a.TotalCap;
113
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
114
+ var _b, sessionCount, dailyCount, totalCount;
115
+ return tslib_1.__generator(this, function (_c) {
116
+ switch (_c.label) {
117
+ case 0: return [4 /*yield*/, getMessageCounts(CampaignId)];
118
+ case 1:
119
+ _b = _c.sent(), sessionCount = _b.sessionCount, dailyCount = _b.dailyCount, totalCount = _b.totalCount;
120
+ return [2 /*return*/, ((!SessionCap || sessionCount < SessionCap) &&
121
+ (!DailyCap || dailyCount < DailyCap) &&
122
+ (!TotalCap || totalCount < TotalCap))];
123
+ }
124
+ });
125
+ });
126
+ }
127
+ function getMessageCounts(messageId) {
128
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
129
+ var _a, err_1;
130
+ return tslib_1.__generator(this, function (_b) {
131
+ switch (_b.label) {
132
+ case 0:
133
+ _b.trys.push([0, 3, , 4]);
134
+ _a = {
135
+ sessionCount: getSessionCount(messageId)
136
+ };
137
+ return [4 /*yield*/, getDailyCount()];
138
+ case 1:
139
+ _a.dailyCount = _b.sent();
140
+ return [4 /*yield*/, getTotalCount(messageId)];
141
+ case 2: return [2 /*return*/, (_a.totalCount = _b.sent(),
142
+ _a)];
143
+ case 3:
144
+ err_1 = _b.sent();
145
+ logger.error('Failed to get message counts from storage', err_1);
146
+ return [3 /*break*/, 4];
147
+ case 4: return [2 /*return*/];
148
+ }
149
+ });
150
+ });
151
+ }
152
+ function getSessionCount(messageId) {
153
+ var _a;
154
+ return (_a = sessionMessageCountMap[messageId]) !== null && _a !== void 0 ? _a : 0;
155
+ }
156
+ function setSessionCount(messageId, count) {
157
+ sessionMessageCountMap[messageId] = count;
158
+ }
159
+ function setDailyCount(count) {
160
+ var dailyCount = {
161
+ count: count,
162
+ lastCountTimestamp: getStartOfDay(),
163
+ };
164
+ try {
165
+ core_1.defaultStorage.setItem(MESSAGE_DAILY_COUNT_KEY, JSON.stringify(dailyCount));
166
+ }
167
+ catch (err) {
168
+ logger.error('Failed to save daily message count to storage', err);
169
+ }
170
+ }
171
+ function setTotalCountMap(countMap) {
172
+ try {
173
+ core_1.defaultStorage.setItem(MESSAGE_TOTAL_COUNT_KEY, JSON.stringify(countMap));
174
+ }
175
+ catch (err) {
176
+ logger.error('Failed to save total count to storage', err);
177
+ }
178
+ }
179
+ function setTotalCount(messageId, count) {
180
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
181
+ var totalCountMap, updatedMap;
182
+ var _a;
183
+ return tslib_1.__generator(this, function (_b) {
184
+ switch (_b.label) {
185
+ case 0: return [4 /*yield*/, getTotalCountMap()];
186
+ case 1:
187
+ totalCountMap = _b.sent();
188
+ updatedMap = tslib_1.__assign(tslib_1.__assign({}, totalCountMap), (_a = {}, _a[messageId] = count, _a));
189
+ setTotalCountMap(updatedMap);
190
+ return [2 /*return*/];
191
+ }
192
+ });
193
+ });
194
+ }
195
+ function getDailyCount() {
196
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
197
+ var today, item, counter;
198
+ return tslib_1.__generator(this, function (_a) {
199
+ switch (_a.label) {
200
+ case 0:
201
+ today = getStartOfDay();
202
+ return [4 /*yield*/, core_1.defaultStorage.getItem(MESSAGE_DAILY_COUNT_KEY)];
203
+ case 1:
204
+ item = _a.sent();
205
+ counter = item
206
+ ? JSON.parse(item)
207
+ : { count: 0, lastCountTimestamp: today };
208
+ // If the stored counter timestamp is today, use it as the count, otherwise reset to 0
209
+ return [2 /*return*/, counter.lastCountTimestamp === today ? counter.count : 0];
210
+ }
211
+ });
212
+ });
213
+ }
214
+ function getTotalCountMap() {
215
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
216
+ var item;
217
+ return tslib_1.__generator(this, function (_a) {
218
+ switch (_a.label) {
219
+ case 0: return [4 /*yield*/, core_1.defaultStorage.getItem(MESSAGE_TOTAL_COUNT_KEY)];
220
+ case 1:
221
+ item = _a.sent();
222
+ // Parse stored count map or initialize as empty
223
+ return [2 /*return*/, item ? JSON.parse(item) : {}];
224
+ }
225
+ });
226
+ });
227
+ }
228
+ function getTotalCount(messageId) {
229
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
230
+ var countMap;
231
+ return tslib_1.__generator(this, function (_a) {
232
+ switch (_a.label) {
233
+ case 0: return [4 /*yield*/, getTotalCountMap()];
234
+ case 1:
235
+ countMap = _a.sent();
236
+ // Return stored count or initialize as empty count
237
+ return [2 /*return*/, countMap[messageId] || 0];
238
+ }
239
+ });
240
+ });
241
+ }
242
+ var getStartOfDay = function () {
243
+ var now = new Date();
244
+ now.setHours(0, 0, 0, 0);
245
+ return now.toISOString();
246
+ };
247
+ //# sourceMappingURL=messageProcessingHelpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"messageProcessingHelpers.js","sourceRoot":"","sources":["../../../../../src/inAppMessaging/providers/pinpoint/utils/messageProcessingHelpers.ts"],"names":[],"mappings":"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"}
@@ -2,11 +2,6 @@
2
2
  * @internal
3
3
  */
4
4
  export declare const resolveCredentials: () => Promise<{
5
- credentials: {
6
- accessKeyId: string;
7
- secretAccessKey: string;
8
- sessionToken?: string;
9
- expiration?: Date;
10
- };
5
+ credentials: import("@aws-amplify/core/lib-esm/libraryUtils").AWSCredentials;
11
6
  identityId: string;
12
7
  }>;
@@ -2,4 +2,4 @@ export { InAppMessagingServiceOptions } from './options';
2
2
  export { InAppMessagingIdentifyUserInput } from './inputs';
3
3
  export { InAppMessagingConfig } from './config';
4
4
  export { InAppMessageInteractionEvent, InAppMessagingEvent } from './event';
5
- export { InAppMessage } from './message';
5
+ export { InAppMessage, InAppMessageAction, InAppMessageContent, InAppMessageLayout, InAppMessageTextAlign, } from './message';
@@ -0,0 +1 @@
1
+ export { isInitialized, assertIsInitialized, initialize, } from './statusHelpers';
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ // SPDX-License-Identifier: Apache-2.0
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ var statusHelpers_1 = require("./statusHelpers");
6
+ exports.isInitialized = statusHelpers_1.isInitialized;
7
+ exports.assertIsInitialized = statusHelpers_1.assertIsInitialized;
8
+ exports.initialize = statusHelpers_1.initialize;
9
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/inAppMessaging/utils/index.ts"],"names":[],"mappings":";AAAA,qEAAqE;AACrE,sCAAsC;;AAEtC,iDAIyB;AAHxB,wCAAA,aAAa,CAAA;AACb,8CAAA,mBAAmB,CAAA;AACnB,qCAAA,UAAU,CAAA"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Sets initialization status to true.
3
+ *
4
+ * @internal
5
+ */
6
+ export declare const initialize: () => void;
7
+ /**
8
+ * Returns the initialization status of In-App Messaging.
9
+ *
10
+ * @internal
11
+ */
12
+ export declare const isInitialized: () => boolean;
13
+ export declare function assertIsInitialized(): void;
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ // SPDX-License-Identifier: Apache-2.0
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ var errors_1 = require("../errors");
6
+ var initialized = false;
7
+ /**
8
+ * Sets initialization status to true.
9
+ *
10
+ * @internal
11
+ */
12
+ exports.initialize = function () {
13
+ initialized = true;
14
+ };
15
+ /**
16
+ * Returns the initialization status of In-App Messaging.
17
+ *
18
+ * @internal
19
+ */
20
+ exports.isInitialized = function () { return initialized; };
21
+ function assertIsInitialized() {
22
+ errors_1.assertValidationError(exports.isInitialized(), errors_1.InAppMessagingValidationErrorCode.NotInitialized);
23
+ }
24
+ exports.assertIsInitialized = assertIsInitialized;
25
+ //# sourceMappingURL=statusHelpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"statusHelpers.js","sourceRoot":"","sources":["../../../src/inAppMessaging/utils/statusHelpers.ts"],"names":[],"mappings":";AAAA,qEAAqE;AACrE,sCAAsC;;AAEtC,oCAGmB;AAEnB,IAAI,WAAW,GAAG,KAAK,CAAC;AAExB;;;;GAIG;AACU,QAAA,UAAU,GAAG;IACzB,WAAW,GAAG,IAAI,CAAC;AACpB,CAAC,CAAC;AAEF;;;;GAIG;AACU,QAAA,aAAa,GAAG,cAAM,OAAA,WAAW,EAAX,CAAW,CAAC;AAE/C,SAAgB,mBAAmB;IAClC,8BAAqB,CACpB,qBAAa,EAAE,EACf,0CAAiC,CAAC,cAAc,CAChD,CAAC;AACH,CAAC;AALD,kDAKC"}
@@ -5,7 +5,6 @@ import { PinpointUserInfo } from './types';
5
5
  export default abstract class AWSPinpointProviderCommon implements NotificationsProvider {
6
6
  static category: NotificationsCategory;
7
7
  static providerName: string;
8
- protected clientInfo: any;
9
8
  protected config: Record<string, any>;
10
9
  protected endpointInitialized: boolean;
11
10
  protected initialized: boolean;