@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,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;
|