@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.
- package/lib/common/AWSPinpointProviderCommon/index.d.ts +0 -1
- package/lib/common/AWSPinpointProviderCommon/index.js +14 -19
- package/lib/common/AWSPinpointProviderCommon/index.js.map +1 -1
- package/lib/common/eventListeners/index.d.ts +2 -2
- package/lib/common/eventListeners/index.js +3 -1
- package/lib/common/eventListeners/index.js.map +1 -1
- package/lib/common/eventListeners/types.d.ts +3 -0
- package/lib/common/index.d.ts +1 -1
- package/lib/inAppMessaging/errors/validation.d.ts +2 -1
- package/lib/inAppMessaging/errors/validation.js +5 -0
- package/lib/inAppMessaging/errors/validation.js.map +1 -1
- package/lib/inAppMessaging/index.d.ts +1 -1
- package/lib/inAppMessaging/index.js +8 -0
- package/lib/inAppMessaging/index.js.map +1 -1
- package/lib/inAppMessaging/providers/index.d.ts +1 -1
- package/lib/inAppMessaging/providers/index.js +8 -0
- package/lib/inAppMessaging/providers/index.js.map +1 -1
- package/lib/inAppMessaging/providers/pinpoint/apis/dispatchEvent.d.ts +26 -0
- package/lib/inAppMessaging/providers/pinpoint/apis/dispatchEvent.js +69 -0
- package/lib/inAppMessaging/providers/pinpoint/apis/dispatchEvent.js.map +1 -0
- package/lib/inAppMessaging/providers/pinpoint/apis/identifyUser.d.ts +1 -4
- package/lib/inAppMessaging/providers/pinpoint/apis/identifyUser.js +5 -5
- package/lib/inAppMessaging/providers/pinpoint/apis/identifyUser.js.map +1 -1
- package/lib/inAppMessaging/providers/pinpoint/apis/index.d.ts +8 -0
- package/lib/inAppMessaging/providers/pinpoint/apis/index.js +16 -0
- package/lib/inAppMessaging/providers/pinpoint/apis/index.js.map +1 -1
- package/lib/inAppMessaging/providers/pinpoint/apis/initializeInAppMessaging.d.ts +12 -0
- package/lib/inAppMessaging/providers/pinpoint/apis/initializeInAppMessaging.js +61 -0
- package/lib/inAppMessaging/providers/pinpoint/apis/initializeInAppMessaging.js.map +1 -0
- package/lib/inAppMessaging/providers/pinpoint/apis/notifyMessageInteraction.d.ts +16 -0
- package/lib/inAppMessaging/providers/pinpoint/apis/notifyMessageInteraction.js +27 -0
- package/lib/inAppMessaging/providers/pinpoint/apis/notifyMessageInteraction.js.map +1 -0
- package/lib/inAppMessaging/providers/pinpoint/apis/onMessageActionTaken.d.ts +18 -0
- package/lib/inAppMessaging/providers/pinpoint/apis/onMessageActionTaken.js +27 -0
- package/lib/inAppMessaging/providers/pinpoint/apis/onMessageActionTaken.js.map +1 -0
- package/lib/inAppMessaging/providers/pinpoint/apis/onMessageDismissed.d.ts +18 -0
- package/lib/inAppMessaging/providers/pinpoint/apis/onMessageDismissed.js +27 -0
- package/lib/inAppMessaging/providers/pinpoint/apis/onMessageDismissed.js.map +1 -0
- package/lib/inAppMessaging/providers/pinpoint/apis/onMessageDisplayed.d.ts +18 -0
- package/lib/inAppMessaging/providers/pinpoint/apis/onMessageDisplayed.js +27 -0
- package/lib/inAppMessaging/providers/pinpoint/apis/onMessageDisplayed.js.map +1 -0
- package/lib/inAppMessaging/providers/pinpoint/apis/onMessageReceived.d.ts +18 -0
- package/lib/inAppMessaging/providers/pinpoint/apis/onMessageReceived.js +27 -0
- package/lib/inAppMessaging/providers/pinpoint/apis/onMessageReceived.js.map +1 -0
- package/lib/inAppMessaging/providers/pinpoint/apis/setConflictHandler.d.ts +32 -0
- package/lib/inAppMessaging/providers/pinpoint/apis/setConflictHandler.js +66 -0
- package/lib/inAppMessaging/providers/pinpoint/apis/setConflictHandler.js.map +1 -0
- package/lib/inAppMessaging/providers/pinpoint/apis/syncMessages.d.ts +1 -3
- package/lib/inAppMessaging/providers/pinpoint/apis/syncMessages.js +20 -18
- package/lib/inAppMessaging/providers/pinpoint/apis/syncMessages.js.map +1 -1
- package/lib/inAppMessaging/providers/pinpoint/index.d.ts +1 -1
- package/lib/inAppMessaging/providers/pinpoint/index.js +8 -0
- package/lib/inAppMessaging/providers/pinpoint/index.js.map +1 -1
- package/lib/inAppMessaging/providers/pinpoint/types/index.d.ts +2 -1
- package/lib/inAppMessaging/providers/pinpoint/types/index.js +2 -0
- package/lib/inAppMessaging/providers/pinpoint/types/index.js.map +1 -1
- package/lib/inAppMessaging/providers/pinpoint/types/inputs.d.ts +33 -2
- package/lib/inAppMessaging/providers/pinpoint/types/outputs.d.ts +17 -0
- package/lib/inAppMessaging/providers/pinpoint/types/outputs.js +5 -0
- package/lib/inAppMessaging/providers/pinpoint/types/outputs.js.map +1 -0
- package/lib/inAppMessaging/providers/pinpoint/types/types.d.ts +4 -1
- package/lib/inAppMessaging/providers/pinpoint/types/types.js +6 -6
- package/lib/inAppMessaging/providers/pinpoint/types/types.js.map +1 -1
- package/lib/inAppMessaging/providers/pinpoint/utils/helpers.d.ts +17 -0
- package/lib/inAppMessaging/providers/pinpoint/utils/helpers.js +260 -0
- package/lib/inAppMessaging/providers/pinpoint/utils/helpers.js.map +1 -0
- package/lib/inAppMessaging/providers/pinpoint/utils/index.d.ts +1 -0
- package/lib/inAppMessaging/providers/pinpoint/utils/index.js +4 -0
- package/lib/inAppMessaging/providers/pinpoint/utils/index.js.map +1 -1
- package/lib/inAppMessaging/providers/pinpoint/utils/messageProcessingHelpers.d.ts +6 -0
- package/lib/inAppMessaging/providers/pinpoint/utils/messageProcessingHelpers.js +247 -0
- package/lib/inAppMessaging/providers/pinpoint/utils/messageProcessingHelpers.js.map +1 -0
- package/lib/inAppMessaging/providers/pinpoint/utils/resolveCredentials.d.ts +1 -6
- package/lib/inAppMessaging/types/index.d.ts +1 -1
- package/lib/inAppMessaging/utils/index.d.ts +1 -0
- package/lib/inAppMessaging/utils/index.js +9 -0
- package/lib/inAppMessaging/utils/index.js.map +1 -0
- package/lib/inAppMessaging/utils/statusHelpers.d.ts +13 -0
- package/lib/inAppMessaging/utils/statusHelpers.js +25 -0
- package/lib/inAppMessaging/utils/statusHelpers.js.map +1 -0
- package/lib-esm/common/AWSPinpointProviderCommon/index.d.ts +0 -1
- package/lib-esm/common/AWSPinpointProviderCommon/index.js +15 -20
- package/lib-esm/common/AWSPinpointProviderCommon/index.js.map +1 -1
- package/lib-esm/common/eventListeners/index.d.ts +2 -2
- package/lib-esm/common/eventListeners/index.js +3 -1
- package/lib-esm/common/eventListeners/index.js.map +1 -1
- package/lib-esm/common/eventListeners/types.d.ts +3 -0
- package/lib-esm/common/index.d.ts +1 -1
- package/lib-esm/inAppMessaging/errors/validation.d.ts +2 -1
- package/lib-esm/inAppMessaging/errors/validation.js +5 -0
- package/lib-esm/inAppMessaging/errors/validation.js.map +1 -1
- package/lib-esm/inAppMessaging/index.d.ts +1 -1
- package/lib-esm/inAppMessaging/index.js +1 -1
- package/lib-esm/inAppMessaging/index.js.map +1 -1
- package/lib-esm/inAppMessaging/providers/index.d.ts +1 -1
- package/lib-esm/inAppMessaging/providers/index.js +1 -1
- package/lib-esm/inAppMessaging/providers/index.js.map +1 -1
- package/lib-esm/inAppMessaging/providers/pinpoint/apis/dispatchEvent.d.ts +26 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/apis/dispatchEvent.js +66 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/apis/dispatchEvent.js.map +1 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/apis/identifyUser.d.ts +1 -4
- package/lib-esm/inAppMessaging/providers/pinpoint/apis/identifyUser.js +5 -5
- package/lib-esm/inAppMessaging/providers/pinpoint/apis/identifyUser.js.map +1 -1
- package/lib-esm/inAppMessaging/providers/pinpoint/apis/index.d.ts +8 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/apis/index.js +8 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/apis/index.js.map +1 -1
- package/lib-esm/inAppMessaging/providers/pinpoint/apis/initializeInAppMessaging.d.ts +12 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/apis/initializeInAppMessaging.js +57 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/apis/initializeInAppMessaging.js.map +1 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/apis/notifyMessageInteraction.d.ts +16 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/apis/notifyMessageInteraction.js +24 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/apis/notifyMessageInteraction.js.map +1 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/apis/onMessageActionTaken.d.ts +18 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/apis/onMessageActionTaken.js +24 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/apis/onMessageActionTaken.js.map +1 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/apis/onMessageDismissed.d.ts +18 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/apis/onMessageDismissed.js +24 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/apis/onMessageDismissed.js.map +1 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/apis/onMessageDisplayed.d.ts +18 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/apis/onMessageDisplayed.js +24 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/apis/onMessageDisplayed.js.map +1 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/apis/onMessageReceived.d.ts +18 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/apis/onMessageReceived.js +24 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/apis/onMessageReceived.js.map +1 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/apis/setConflictHandler.d.ts +32 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/apis/setConflictHandler.js +63 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/apis/setConflictHandler.js.map +1 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/apis/syncMessages.d.ts +1 -3
- package/lib-esm/inAppMessaging/providers/pinpoint/apis/syncMessages.js +20 -18
- package/lib-esm/inAppMessaging/providers/pinpoint/apis/syncMessages.js.map +1 -1
- package/lib-esm/inAppMessaging/providers/pinpoint/index.d.ts +1 -1
- package/lib-esm/inAppMessaging/providers/pinpoint/index.js +1 -1
- package/lib-esm/inAppMessaging/providers/pinpoint/index.js.map +1 -1
- package/lib-esm/inAppMessaging/providers/pinpoint/types/index.d.ts +2 -1
- package/lib-esm/inAppMessaging/providers/pinpoint/types/index.js +1 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/types/index.js.map +1 -1
- package/lib-esm/inAppMessaging/providers/pinpoint/types/inputs.d.ts +33 -2
- package/lib-esm/inAppMessaging/providers/pinpoint/types/outputs.d.ts +17 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/types/outputs.js +3 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/types/outputs.js.map +1 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/types/types.d.ts +4 -1
- package/lib-esm/inAppMessaging/providers/pinpoint/types/types.js +6 -6
- package/lib-esm/inAppMessaging/providers/pinpoint/types/types.js.map +1 -1
- package/lib-esm/inAppMessaging/providers/pinpoint/utils/helpers.d.ts +17 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/utils/helpers.js +258 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/utils/helpers.js.map +1 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/utils/index.d.ts +1 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/utils/index.js +1 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/utils/index.js.map +1 -1
- package/lib-esm/inAppMessaging/providers/pinpoint/utils/messageProcessingHelpers.d.ts +6 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/utils/messageProcessingHelpers.js +242 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/utils/messageProcessingHelpers.js.map +1 -0
- package/lib-esm/inAppMessaging/providers/pinpoint/utils/resolveCredentials.d.ts +1 -6
- package/lib-esm/inAppMessaging/types/index.d.ts +1 -1
- package/lib-esm/inAppMessaging/utils/index.d.ts +1 -0
- package/lib-esm/inAppMessaging/utils/index.js +4 -0
- package/lib-esm/inAppMessaging/utils/index.js.map +1 -0
- package/lib-esm/inAppMessaging/utils/statusHelpers.d.ts +13 -0
- package/lib-esm/inAppMessaging/utils/statusHelpers.js +22 -0
- package/lib-esm/inAppMessaging/utils/statusHelpers.js.map +1 -0
- package/package.json +5 -6
- package/src/common/AWSPinpointProviderCommon/index.ts +9 -14
- package/src/common/eventListeners/index.ts +5 -3
- package/src/common/eventListeners/types.ts +4 -0
- package/src/common/index.ts +5 -1
- package/src/inAppMessaging/errors/validation.ts +6 -0
- package/src/inAppMessaging/index.ts +12 -1
- package/src/inAppMessaging/providers/index.ts +12 -1
- package/src/inAppMessaging/providers/pinpoint/apis/dispatchEvent.ts +63 -0
- package/src/inAppMessaging/providers/pinpoint/apis/identifyUser.ts +3 -4
- package/src/inAppMessaging/providers/pinpoint/apis/index.ts +8 -0
- package/src/inAppMessaging/providers/pinpoint/apis/initializeInAppMessaging.ts +64 -0
- package/src/inAppMessaging/providers/pinpoint/apis/notifyMessageInteraction.ts +28 -0
- package/src/inAppMessaging/providers/pinpoint/apis/onMessageActionTaken.ts +29 -0
- package/src/inAppMessaging/providers/pinpoint/apis/onMessageDismissed.ts +29 -0
- package/src/inAppMessaging/providers/pinpoint/apis/onMessageDisplayed.ts +29 -0
- package/src/inAppMessaging/providers/pinpoint/apis/onMessageReceived.ts +29 -0
- package/src/inAppMessaging/providers/pinpoint/apis/setConflictHandler.ts +68 -0
- package/src/inAppMessaging/providers/pinpoint/apis/syncMessages.ts +6 -5
- package/src/inAppMessaging/providers/pinpoint/index.ts +12 -1
- package/src/inAppMessaging/providers/pinpoint/types/index.ts +14 -1
- package/src/inAppMessaging/providers/pinpoint/types/inputs.ts +49 -2
- package/src/inAppMessaging/providers/pinpoint/types/outputs.ts +24 -0
- package/src/inAppMessaging/providers/pinpoint/types/types.ts +9 -1
- package/src/inAppMessaging/providers/pinpoint/utils/helpers.ts +325 -0
- package/src/inAppMessaging/providers/pinpoint/utils/index.ts +6 -0
- package/src/inAppMessaging/providers/pinpoint/utils/messageProcessingHelpers.ts +196 -0
- package/src/inAppMessaging/types/index.ts +7 -1
- package/src/inAppMessaging/utils/index.ts +8 -0
- 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 @@
|
|
|
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"}
|