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