@aws-amplify/notifications 1.4.0 → 1.4.1-v5-user-agent-for-ui.f058eee.7
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/internals/inAppMessaging/package.json +8 -0
- package/lib/InAppMessaging/InAppMessaging.d.ts +3 -43
- package/lib/InAppMessaging/InAppMessaging.js +9 -317
- package/lib/InAppMessaging/InAppMessaging.js.map +1 -1
- package/lib/InAppMessaging/Providers/AWSPinpointProvider/index.d.ts +1 -1
- package/lib/InAppMessaging/Providers/AWSPinpointProvider/index.js +2 -2
- package/lib/InAppMessaging/Providers/AWSPinpointProvider/index.js.map +1 -1
- package/lib/InAppMessaging/internals/InternalInAppMessaging.d.ts +59 -0
- package/lib/InAppMessaging/internals/InternalInAppMessaging.js +349 -0
- package/lib/InAppMessaging/internals/InternalInAppMessaging.js.map +1 -0
- package/lib/InAppMessaging/internals/index.d.ts +1 -0
- package/lib/InAppMessaging/internals/index.js +7 -0
- package/lib/InAppMessaging/internals/index.js.map +1 -0
- package/lib/InAppMessaging/internals/utils.d.ts +2 -0
- package/lib/InAppMessaging/internals/utils.js +10 -0
- package/lib/InAppMessaging/internals/utils.js.map +1 -0
- package/lib/InAppMessaging/types.d.ts +5 -4
- package/lib/InAppMessaging/types.js.map +1 -1
- package/lib/Notifications.js +1 -1
- package/lib/Notifications.js.map +1 -1
- package/lib/common/AWSPinpointProviderCommon/index.d.ts +2 -2
- package/lib/common/AWSPinpointProviderCommon/index.js +8 -4
- package/lib/common/AWSPinpointProviderCommon/index.js.map +1 -1
- package/lib/types.d.ts +1 -1
- package/lib-esm/InAppMessaging/InAppMessaging.d.ts +3 -43
- package/lib-esm/InAppMessaging/InAppMessaging.js +10 -318
- package/lib-esm/InAppMessaging/InAppMessaging.js.map +1 -1
- package/lib-esm/InAppMessaging/Providers/AWSPinpointProvider/index.d.ts +1 -1
- package/lib-esm/InAppMessaging/Providers/AWSPinpointProvider/index.js +2 -2
- package/lib-esm/InAppMessaging/Providers/AWSPinpointProvider/index.js.map +1 -1
- package/lib-esm/InAppMessaging/internals/InternalInAppMessaging.d.ts +59 -0
- package/lib-esm/InAppMessaging/internals/InternalInAppMessaging.js +347 -0
- package/lib-esm/InAppMessaging/internals/InternalInAppMessaging.js.map +1 -0
- package/lib-esm/InAppMessaging/internals/index.d.ts +1 -0
- package/lib-esm/InAppMessaging/internals/index.js +4 -0
- package/lib-esm/InAppMessaging/internals/index.js.map +1 -0
- package/lib-esm/InAppMessaging/internals/utils.d.ts +2 -0
- package/lib-esm/InAppMessaging/internals/utils.js +8 -0
- package/lib-esm/InAppMessaging/internals/utils.js.map +1 -0
- package/lib-esm/InAppMessaging/types.d.ts +5 -4
- package/lib-esm/InAppMessaging/types.js.map +1 -1
- package/lib-esm/Notifications.js +1 -1
- package/lib-esm/Notifications.js.map +1 -1
- package/lib-esm/common/AWSPinpointProviderCommon/index.d.ts +2 -2
- package/lib-esm/common/AWSPinpointProviderCommon/index.js +8 -4
- package/lib-esm/common/AWSPinpointProviderCommon/index.js.map +1 -1
- package/lib-esm/types.d.ts +1 -1
- package/package.json +9 -8
- package/src/InAppMessaging/InAppMessaging.ts +8 -300
- package/src/InAppMessaging/Providers/AWSPinpointProvider/index.ts +2 -2
- package/src/InAppMessaging/internals/InternalInAppMessaging.ts +352 -0
- package/src/InAppMessaging/internals/index.ts +4 -0
- package/src/InAppMessaging/internals/utils.ts +20 -0
- package/src/InAppMessaging/types.ts +7 -3
- package/src/Notifications.ts +1 -1
- package/src/common/AWSPinpointProviderCommon/index.ts +13 -4
- package/src/types.ts +5 -1
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@aws-amplify/notifications/internals/inAppMessaging",
|
|
3
|
+
"types": "../../../lib-esm/InAppMessaging/internals/index.d.ts",
|
|
4
|
+
"main": "../../../lib/InAppMessaging/internals/index.js",
|
|
5
|
+
"module": "../../../lib-esm/InAppMessaging/internals/index.js",
|
|
6
|
+
"react-native": "../../../lib-esm/InAppMessaging/internals/index.js",
|
|
7
|
+
"sideEffects": false
|
|
8
|
+
}
|
|
@@ -1,57 +1,17 @@
|
|
|
1
|
-
import { EventListener } from '../common';
|
|
2
1
|
import { UserInfo } from '../types';
|
|
3
|
-
import {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
private conflictHandler;
|
|
7
|
-
private listeningForAnalyticEvents;
|
|
8
|
-
private pluggables;
|
|
9
|
-
private storageSynced;
|
|
10
|
-
constructor();
|
|
11
|
-
/**
|
|
12
|
-
* Configure InAppMessaging
|
|
13
|
-
* @param {Object} config - InAppMessaging configuration object
|
|
14
|
-
*/
|
|
15
|
-
configure: ({ listenForAnalyticsEvents, ...config }?: InAppMessagingConfig) => InAppMessagingConfig;
|
|
2
|
+
import { InAppMessagingInterface, NotificationsSubCategory } from './types';
|
|
3
|
+
import { InternalInAppMessagingClass } from './internals/InternalInAppMessaging';
|
|
4
|
+
export default class InAppMessaging extends InternalInAppMessagingClass implements InAppMessagingInterface {
|
|
16
5
|
/**
|
|
17
6
|
* Get the name of this module
|
|
18
7
|
* @returns {string} name of this module
|
|
19
8
|
*/
|
|
20
9
|
getModuleName(): NotificationsSubCategory;
|
|
21
|
-
/**
|
|
22
|
-
* Get a plugin from added plugins
|
|
23
|
-
* @param {string} providerName - the name of the plugin to get
|
|
24
|
-
*/
|
|
25
|
-
getPluggable: (providerName: string) => InAppMessagingProvider;
|
|
26
|
-
/**
|
|
27
|
-
* Add plugin into InAppMessaging
|
|
28
|
-
* @param {InAppMessagingProvider} pluggable - an instance of the plugin
|
|
29
|
-
*/
|
|
30
|
-
addPluggable: (pluggable: InAppMessagingProvider) => void;
|
|
31
|
-
/**
|
|
32
|
-
* Remove a plugin from added plugins
|
|
33
|
-
* @param {string} providerName - the name of the plugin to remove
|
|
34
|
-
*/
|
|
35
|
-
removePluggable: (providerName: string) => void;
|
|
36
10
|
/**
|
|
37
11
|
* Get the map resources that are currently available through the provider
|
|
38
12
|
* @param {string} provider
|
|
39
13
|
* @returns - Array of available map resources
|
|
40
14
|
*/
|
|
41
15
|
syncMessages: () => Promise<void[]>;
|
|
42
|
-
clearMessages: () => Promise<void[]>;
|
|
43
|
-
dispatchEvent: (event: InAppMessagingEvent) => Promise<void>;
|
|
44
16
|
identifyUser: (userId: string, userInfo: UserInfo) => Promise<void[]>;
|
|
45
|
-
onMessageReceived: (handler: OnMessageInteractionEventHandler) => EventListener<OnMessageInteractionEventHandler>;
|
|
46
|
-
onMessageDisplayed: (handler: OnMessageInteractionEventHandler) => EventListener<OnMessageInteractionEventHandler>;
|
|
47
|
-
onMessageDismissed: (handler: OnMessageInteractionEventHandler) => EventListener<OnMessageInteractionEventHandler>;
|
|
48
|
-
onMessageActionTaken: (handler: OnMessageInteractionEventHandler) => EventListener<OnMessageInteractionEventHandler>;
|
|
49
|
-
notifyMessageInteraction: (message: InAppMessage, type: InAppMessageInteractionEvent) => void;
|
|
50
|
-
setConflictHandler: (handler: InAppMessageConflictHandler) => void;
|
|
51
|
-
private analyticsListener;
|
|
52
|
-
private syncStorage;
|
|
53
|
-
private getMessages;
|
|
54
|
-
private setMessages;
|
|
55
|
-
private removeMessages;
|
|
56
|
-
private defaultConflictHandler;
|
|
57
17
|
}
|
|
@@ -3,329 +3,21 @@
|
|
|
3
3
|
// SPDX-License-Identifier: Apache-2.0
|
|
4
4
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
5
|
var tslib_1 = require("tslib");
|
|
6
|
-
var
|
|
7
|
-
var
|
|
8
|
-
|
|
9
|
-
var Providers_1 = require("./Providers");
|
|
10
|
-
var types_1 = require("./types");
|
|
11
|
-
var STORAGE_KEY_SUFFIX = '_inAppMessages';
|
|
12
|
-
var logger = new core_1.ConsoleLogger('Notifications.InAppMessaging');
|
|
13
|
-
var InAppMessaging = /** @class */ (function () {
|
|
6
|
+
var InternalInAppMessaging_1 = require("./internals/InternalInAppMessaging");
|
|
7
|
+
var InAppMessaging = /** @class */ (function (_super) {
|
|
8
|
+
tslib_1.__extends(InAppMessaging, _super);
|
|
14
9
|
function InAppMessaging() {
|
|
15
|
-
var _this = this;
|
|
16
|
-
this.config = {};
|
|
17
|
-
this.listeningForAnalyticEvents = false;
|
|
18
|
-
this.pluggables = [];
|
|
19
|
-
this.storageSynced = false;
|
|
20
|
-
/**
|
|
21
|
-
* Configure InAppMessaging
|
|
22
|
-
* @param {Object} config - InAppMessaging configuration object
|
|
23
|
-
*/
|
|
24
|
-
this.configure = function (_a) {
|
|
25
|
-
if (_a === void 0) { _a = {}; }
|
|
26
|
-
var _b = _a.listenForAnalyticsEvents, listenForAnalyticsEvents = _b === void 0 ? true : _b, config = tslib_1.__rest(_a, ["listenForAnalyticsEvents"]);
|
|
27
|
-
_this.config = tslib_1.__assign(tslib_1.__assign({}, _this.config), config);
|
|
28
|
-
logger.debug('configure InAppMessaging', _this.config);
|
|
29
|
-
_this.pluggables.forEach(function (pluggable) {
|
|
30
|
-
pluggable.configure(_this.config[pluggable.getProviderName()]);
|
|
31
|
-
});
|
|
32
|
-
if (_this.pluggables.length === 0) {
|
|
33
|
-
_this.addPluggable(new Providers_1.AWSPinpointProvider());
|
|
34
|
-
}
|
|
35
|
-
if (listenForAnalyticsEvents && !_this.listeningForAnalyticEvents) {
|
|
36
|
-
core_1.Hub.listen('analytics', _this.analyticsListener);
|
|
37
|
-
_this.listeningForAnalyticEvents = true;
|
|
38
|
-
}
|
|
39
|
-
return _this.config;
|
|
40
|
-
};
|
|
41
|
-
/**
|
|
42
|
-
* Get a plugin from added plugins
|
|
43
|
-
* @param {string} providerName - the name of the plugin to get
|
|
44
|
-
*/
|
|
45
|
-
this.getPluggable = function (providerName) {
|
|
46
|
-
var _a;
|
|
47
|
-
var pluggable = (_a = _this.pluggables.find(function (pluggable) { return pluggable.getProviderName() === providerName; })) !== null && _a !== void 0 ? _a : null;
|
|
48
|
-
if (!pluggable) {
|
|
49
|
-
logger.debug("No plugin found with name " + providerName);
|
|
50
|
-
}
|
|
51
|
-
return pluggable;
|
|
52
|
-
};
|
|
53
|
-
/**
|
|
54
|
-
* Add plugin into InAppMessaging
|
|
55
|
-
* @param {InAppMessagingProvider} pluggable - an instance of the plugin
|
|
56
|
-
*/
|
|
57
|
-
this.addPluggable = function (pluggable) {
|
|
58
|
-
if (pluggable &&
|
|
59
|
-
pluggable.getCategory() === 'Notifications' &&
|
|
60
|
-
pluggable.getSubCategory() === 'InAppMessaging') {
|
|
61
|
-
if (_this.getPluggable(pluggable.getProviderName())) {
|
|
62
|
-
throw new Error("Pluggable " + pluggable.getProviderName() + " has already been added.");
|
|
63
|
-
}
|
|
64
|
-
_this.pluggables.push(pluggable);
|
|
65
|
-
pluggable.configure(_this.config[pluggable.getProviderName()]);
|
|
66
|
-
}
|
|
67
|
-
};
|
|
68
|
-
/**
|
|
69
|
-
* Remove a plugin from added plugins
|
|
70
|
-
* @param {string} providerName - the name of the plugin to remove
|
|
71
|
-
*/
|
|
72
|
-
this.removePluggable = function (providerName) {
|
|
73
|
-
var index = _this.pluggables.findIndex(function (pluggable) { return pluggable.getProviderName() === providerName; });
|
|
74
|
-
if (index === -1) {
|
|
75
|
-
logger.debug("No plugin found with name " + providerName);
|
|
76
|
-
}
|
|
77
|
-
else {
|
|
78
|
-
_this.pluggables.splice(index, 1);
|
|
79
|
-
}
|
|
80
|
-
};
|
|
10
|
+
var _this = _super !== null && _super.apply(this, arguments) || this;
|
|
81
11
|
/**
|
|
82
12
|
* Get the map resources that are currently available through the provider
|
|
83
13
|
* @param {string} provider
|
|
84
14
|
* @returns - Array of available map resources
|
|
85
15
|
*/
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
return tslib_1.__generator(this, function (_a) {
|
|
90
|
-
switch (_a.label) {
|
|
91
|
-
case 0:
|
|
92
|
-
_a.trys.push([0, 3, , 4]);
|
|
93
|
-
return [4 /*yield*/, pluggable.getInAppMessages()];
|
|
94
|
-
case 1:
|
|
95
|
-
messages = _a.sent();
|
|
96
|
-
key = "" + pluggable.getProviderName() + STORAGE_KEY_SUFFIX;
|
|
97
|
-
return [4 /*yield*/, this.setMessages(key, messages)];
|
|
98
|
-
case 2:
|
|
99
|
-
_a.sent();
|
|
100
|
-
return [3 /*break*/, 4];
|
|
101
|
-
case 3:
|
|
102
|
-
err_1 = _a.sent();
|
|
103
|
-
logger.error('Failed to sync messages', err_1);
|
|
104
|
-
throw err_1;
|
|
105
|
-
case 4: return [2 /*return*/];
|
|
106
|
-
}
|
|
107
|
-
});
|
|
108
|
-
}); }));
|
|
109
|
-
};
|
|
110
|
-
this.clearMessages = function () {
|
|
111
|
-
return Promise.all(_this.pluggables.map(function (pluggable) { return tslib_1.__awaiter(_this, void 0, void 0, function () {
|
|
112
|
-
var key;
|
|
113
|
-
return tslib_1.__generator(this, function (_a) {
|
|
114
|
-
switch (_a.label) {
|
|
115
|
-
case 0:
|
|
116
|
-
key = "" + pluggable.getProviderName() + STORAGE_KEY_SUFFIX;
|
|
117
|
-
return [4 /*yield*/, this.removeMessages(key)];
|
|
118
|
-
case 1:
|
|
119
|
-
_a.sent();
|
|
120
|
-
return [2 /*return*/];
|
|
121
|
-
}
|
|
122
|
-
});
|
|
123
|
-
}); }));
|
|
124
|
-
};
|
|
125
|
-
this.dispatchEvent = function (event) { return tslib_1.__awaiter(_this, void 0, void 0, function () {
|
|
126
|
-
var messages, flattenedMessages;
|
|
127
|
-
var _this = this;
|
|
128
|
-
return tslib_1.__generator(this, function (_a) {
|
|
129
|
-
switch (_a.label) {
|
|
130
|
-
case 0: return [4 /*yield*/, Promise.all(this.pluggables.map(function (pluggable) { return tslib_1.__awaiter(_this, void 0, void 0, function () {
|
|
131
|
-
var key, messages;
|
|
132
|
-
return tslib_1.__generator(this, function (_a) {
|
|
133
|
-
switch (_a.label) {
|
|
134
|
-
case 0:
|
|
135
|
-
key = "" + pluggable.getProviderName() + STORAGE_KEY_SUFFIX;
|
|
136
|
-
return [4 /*yield*/, this.getMessages(key)];
|
|
137
|
-
case 1:
|
|
138
|
-
messages = _a.sent();
|
|
139
|
-
return [2 /*return*/, pluggable.processInAppMessages(messages, event)];
|
|
140
|
-
}
|
|
141
|
-
});
|
|
142
|
-
}); }))];
|
|
143
|
-
case 1:
|
|
144
|
-
messages = _a.sent();
|
|
145
|
-
flattenedMessages = flatten_1.default(messages);
|
|
146
|
-
if (flattenedMessages.length) {
|
|
147
|
-
common_1.notifyEventListeners(types_1.InAppMessageInteractionEvent.MESSAGE_RECEIVED, this.conflictHandler(flattenedMessages));
|
|
148
|
-
}
|
|
149
|
-
return [2 /*return*/];
|
|
150
|
-
}
|
|
151
|
-
});
|
|
152
|
-
}); };
|
|
153
|
-
this.identifyUser = function (userId, userInfo) {
|
|
154
|
-
return Promise.all(_this.pluggables.map(function (pluggable) { return tslib_1.__awaiter(_this, void 0, void 0, function () {
|
|
155
|
-
var err_2;
|
|
156
|
-
return tslib_1.__generator(this, function (_a) {
|
|
157
|
-
switch (_a.label) {
|
|
158
|
-
case 0:
|
|
159
|
-
_a.trys.push([0, 2, , 3]);
|
|
160
|
-
return [4 /*yield*/, pluggable.identifyUser(userId, userInfo)];
|
|
161
|
-
case 1:
|
|
162
|
-
_a.sent();
|
|
163
|
-
return [3 /*break*/, 3];
|
|
164
|
-
case 2:
|
|
165
|
-
err_2 = _a.sent();
|
|
166
|
-
logger.error('Failed to identify user', err_2);
|
|
167
|
-
throw err_2;
|
|
168
|
-
case 3: return [2 /*return*/];
|
|
169
|
-
}
|
|
170
|
-
});
|
|
171
|
-
}); }));
|
|
172
|
-
};
|
|
173
|
-
this.onMessageReceived = function (handler) {
|
|
174
|
-
return common_1.addEventListener(types_1.InAppMessageInteractionEvent.MESSAGE_RECEIVED, handler);
|
|
175
|
-
};
|
|
176
|
-
this.onMessageDisplayed = function (handler) {
|
|
177
|
-
return common_1.addEventListener(types_1.InAppMessageInteractionEvent.MESSAGE_DISPLAYED, handler);
|
|
178
|
-
};
|
|
179
|
-
this.onMessageDismissed = function (handler) {
|
|
180
|
-
return common_1.addEventListener(types_1.InAppMessageInteractionEvent.MESSAGE_DISMISSED, handler);
|
|
181
|
-
};
|
|
182
|
-
this.onMessageActionTaken = function (handler) {
|
|
183
|
-
return common_1.addEventListener(types_1.InAppMessageInteractionEvent.MESSAGE_ACTION_TAKEN, handler);
|
|
184
|
-
};
|
|
185
|
-
this.notifyMessageInteraction = function (message, type) {
|
|
186
|
-
common_1.notifyEventListeners(type, message);
|
|
187
|
-
};
|
|
188
|
-
this.setConflictHandler = function (handler) {
|
|
189
|
-
_this.conflictHandler = handler;
|
|
190
|
-
};
|
|
191
|
-
this.analyticsListener = function (_a) {
|
|
192
|
-
var payload = _a.payload;
|
|
193
|
-
var event = payload.event, data = payload.data;
|
|
194
|
-
switch (event) {
|
|
195
|
-
case 'record': {
|
|
196
|
-
_this.dispatchEvent(data);
|
|
197
|
-
break;
|
|
198
|
-
}
|
|
199
|
-
default:
|
|
200
|
-
break;
|
|
201
|
-
}
|
|
202
|
-
};
|
|
203
|
-
this.syncStorage = function () { return tslib_1.__awaiter(_this, void 0, void 0, function () {
|
|
204
|
-
var storage, err_3;
|
|
205
|
-
return tslib_1.__generator(this, function (_a) {
|
|
206
|
-
switch (_a.label) {
|
|
207
|
-
case 0:
|
|
208
|
-
storage = this.config.storage;
|
|
209
|
-
_a.label = 1;
|
|
210
|
-
case 1:
|
|
211
|
-
_a.trys.push([1, 4, , 5]);
|
|
212
|
-
if (!(typeof storage.sync === 'function')) return [3 /*break*/, 3];
|
|
213
|
-
return [4 /*yield*/, storage.sync()];
|
|
214
|
-
case 2:
|
|
215
|
-
_a.sent();
|
|
216
|
-
_a.label = 3;
|
|
217
|
-
case 3:
|
|
218
|
-
this.storageSynced = true;
|
|
219
|
-
return [3 /*break*/, 5];
|
|
220
|
-
case 4:
|
|
221
|
-
err_3 = _a.sent();
|
|
222
|
-
logger.error('Failed to sync storage', err_3);
|
|
223
|
-
return [3 /*break*/, 5];
|
|
224
|
-
case 5: return [2 /*return*/];
|
|
225
|
-
}
|
|
226
|
-
});
|
|
227
|
-
}); };
|
|
228
|
-
this.getMessages = function (key) { return tslib_1.__awaiter(_this, void 0, void 0, function () {
|
|
229
|
-
var storage, storedMessages, err_4;
|
|
230
|
-
return tslib_1.__generator(this, function (_a) {
|
|
231
|
-
switch (_a.label) {
|
|
232
|
-
case 0:
|
|
233
|
-
_a.trys.push([0, 3, , 4]);
|
|
234
|
-
if (!!this.storageSynced) return [3 /*break*/, 2];
|
|
235
|
-
return [4 /*yield*/, this.syncStorage()];
|
|
236
|
-
case 1:
|
|
237
|
-
_a.sent();
|
|
238
|
-
_a.label = 2;
|
|
239
|
-
case 2:
|
|
240
|
-
storage = this.config.storage;
|
|
241
|
-
storedMessages = storage.getItem(key);
|
|
242
|
-
return [2 /*return*/, storedMessages ? JSON.parse(storedMessages) : []];
|
|
243
|
-
case 3:
|
|
244
|
-
err_4 = _a.sent();
|
|
245
|
-
logger.error('Failed to retrieve in-app messages from storage', err_4);
|
|
246
|
-
return [3 /*break*/, 4];
|
|
247
|
-
case 4: return [2 /*return*/];
|
|
248
|
-
}
|
|
249
|
-
});
|
|
250
|
-
}); };
|
|
251
|
-
this.setMessages = function (key, messages) { return tslib_1.__awaiter(_this, void 0, void 0, function () {
|
|
252
|
-
var storage, err_5;
|
|
253
|
-
return tslib_1.__generator(this, function (_a) {
|
|
254
|
-
switch (_a.label) {
|
|
255
|
-
case 0:
|
|
256
|
-
if (!messages) {
|
|
257
|
-
return [2 /*return*/];
|
|
258
|
-
}
|
|
259
|
-
_a.label = 1;
|
|
260
|
-
case 1:
|
|
261
|
-
_a.trys.push([1, 4, , 5]);
|
|
262
|
-
if (!!this.storageSynced) return [3 /*break*/, 3];
|
|
263
|
-
return [4 /*yield*/, this.syncStorage()];
|
|
264
|
-
case 2:
|
|
265
|
-
_a.sent();
|
|
266
|
-
_a.label = 3;
|
|
267
|
-
case 3:
|
|
268
|
-
storage = this.config.storage;
|
|
269
|
-
storage.setItem(key, JSON.stringify(messages));
|
|
270
|
-
return [3 /*break*/, 5];
|
|
271
|
-
case 4:
|
|
272
|
-
err_5 = _a.sent();
|
|
273
|
-
logger.error('Failed to store in-app messages', err_5);
|
|
274
|
-
return [3 /*break*/, 5];
|
|
275
|
-
case 5: return [2 /*return*/];
|
|
276
|
-
}
|
|
277
|
-
});
|
|
278
|
-
}); };
|
|
279
|
-
this.removeMessages = function (key) { return tslib_1.__awaiter(_this, void 0, void 0, function () {
|
|
280
|
-
var storage, err_6;
|
|
281
|
-
return tslib_1.__generator(this, function (_a) {
|
|
282
|
-
switch (_a.label) {
|
|
283
|
-
case 0:
|
|
284
|
-
_a.trys.push([0, 3, , 4]);
|
|
285
|
-
if (!!this.storageSynced) return [3 /*break*/, 2];
|
|
286
|
-
return [4 /*yield*/, this.syncStorage()];
|
|
287
|
-
case 1:
|
|
288
|
-
_a.sent();
|
|
289
|
-
_a.label = 2;
|
|
290
|
-
case 2:
|
|
291
|
-
storage = this.config.storage;
|
|
292
|
-
storage.removeItem(key);
|
|
293
|
-
return [3 /*break*/, 4];
|
|
294
|
-
case 3:
|
|
295
|
-
err_6 = _a.sent();
|
|
296
|
-
logger.error('Failed to remove in-app messages from storage', err_6);
|
|
297
|
-
return [3 /*break*/, 4];
|
|
298
|
-
case 4: return [2 /*return*/];
|
|
299
|
-
}
|
|
300
|
-
});
|
|
301
|
-
}); };
|
|
302
|
-
this.defaultConflictHandler = function (messages) {
|
|
303
|
-
// default behavior is to return the message closest to expiry
|
|
304
|
-
// this function assumes that messages processed by providers already filters out expired messages
|
|
305
|
-
var sorted = messages.sort(function (a, b) {
|
|
306
|
-
var _a, _b;
|
|
307
|
-
var endDateA = (_a = a.metadata) === null || _a === void 0 ? void 0 : _a.endDate;
|
|
308
|
-
var endDateB = (_b = b.metadata) === null || _b === void 0 ? void 0 : _b.endDate;
|
|
309
|
-
// if both message end dates are falsy or have the same date string, treat them as equal
|
|
310
|
-
if (endDateA === endDateB) {
|
|
311
|
-
return 0;
|
|
312
|
-
}
|
|
313
|
-
// if only message A has an end date, treat it as closer to expiry
|
|
314
|
-
if (endDateA && !endDateB) {
|
|
315
|
-
return -1;
|
|
316
|
-
}
|
|
317
|
-
// if only message B has an end date, treat it as closer to expiry
|
|
318
|
-
if (!endDateA && endDateB) {
|
|
319
|
-
return 1;
|
|
320
|
-
}
|
|
321
|
-
// otherwise, compare them
|
|
322
|
-
return new Date(endDateA) < new Date(endDateB) ? -1 : 1;
|
|
323
|
-
});
|
|
324
|
-
// always return the top sorted
|
|
325
|
-
return sorted[0];
|
|
16
|
+
_this.syncMessages = function () { return _super.prototype.syncMessages.call(_this); };
|
|
17
|
+
_this.identifyUser = function (userId, userInfo) {
|
|
18
|
+
return _super.prototype.identifyUser.call(_this, userId, userInfo);
|
|
326
19
|
};
|
|
327
|
-
|
|
328
|
-
this.setConflictHandler(this.defaultConflictHandler);
|
|
20
|
+
return _this;
|
|
329
21
|
}
|
|
330
22
|
/**
|
|
331
23
|
* Get the name of this module
|
|
@@ -335,6 +27,6 @@ var InAppMessaging = /** @class */ (function () {
|
|
|
335
27
|
return 'InAppMessaging';
|
|
336
28
|
};
|
|
337
29
|
return InAppMessaging;
|
|
338
|
-
}());
|
|
30
|
+
}(InternalInAppMessaging_1.InternalInAppMessagingClass));
|
|
339
31
|
exports.default = InAppMessaging;
|
|
340
32
|
//# sourceMappingURL=InAppMessaging.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InAppMessaging.js","sourceRoot":"","sources":["../../src/InAppMessaging/InAppMessaging.ts"],"names":[],"mappings":";AAAA,qEAAqE;AACrE,sCAAsC;;;
|
|
1
|
+
{"version":3,"file":"InAppMessaging.js","sourceRoot":"","sources":["../../src/InAppMessaging/InAppMessaging.ts"],"names":[],"mappings":";AAAA,qEAAqE;AACrE,sCAAsC;;;AAItC,6EAAiF;AAEjF;IACS,0CAA2B;IADpC;QAAA,qEAqBC;QATA;;;;WAIG;QACH,kBAAY,GAAG,cAAuB,OAAA,iBAAM,YAAY,YAAE,EAApB,CAAoB,CAAC;QAE3D,kBAAY,GAAG,UAAC,MAAc,EAAE,QAAkB;YACjD,OAAA,iBAAM,YAAY,aAAC,MAAM,EAAE,QAAQ,CAAC;QAApC,CAAoC,CAAC;;IACvC,CAAC;IAjBA;;;OAGG;IACH,sCAAa,GAAb;QACC,OAAO,gBAAgB,CAAC;IACzB,CAAC;IAWF,qBAAC;AAAD,CAAC,AArBD,CACS,oDAA2B,GAoBnC"}
|
|
@@ -12,7 +12,7 @@ export default class AWSPinpointProvider extends AWSPinpointProviderCommon imple
|
|
|
12
12
|
*/
|
|
13
13
|
getSubCategory(): "InAppMessaging";
|
|
14
14
|
configure: (config?: {}) => Record<string, any>;
|
|
15
|
-
getInAppMessages: () => Promise<PinpointInAppMessage[]>;
|
|
15
|
+
getInAppMessages: (userAgentValue?: string) => Promise<PinpointInAppMessage[]>;
|
|
16
16
|
processInAppMessages: (messages: any[], event: InAppMessagingEvent) => Promise<InAppMessage[]>;
|
|
17
17
|
private sessionStateChangeHandler;
|
|
18
18
|
private isBelowCap;
|
|
@@ -38,7 +38,7 @@ var AWSPinpointProvider = /** @class */ (function (_super) {
|
|
|
38
38
|
utils_1.dispatchInAppMessagingEvent('pinpointProvider_configured', null);
|
|
39
39
|
return _this.config;
|
|
40
40
|
};
|
|
41
|
-
_this.getInAppMessages = function () { return tslib_1.__awaiter(_this, void 0, void 0, function () {
|
|
41
|
+
_this.getInAppMessages = function (userAgentValue) { return tslib_1.__awaiter(_this, void 0, void 0, function () {
|
|
42
42
|
var _a, appId, credentials, endpointId, region, input, response, messages, err_1;
|
|
43
43
|
return tslib_1.__generator(this, function (_b) {
|
|
44
44
|
switch (_b.label) {
|
|
@@ -65,7 +65,7 @@ var AWSPinpointProvider = /** @class */ (function (_super) {
|
|
|
65
65
|
EndpointId: endpointId,
|
|
66
66
|
};
|
|
67
67
|
this.logger.debug('getting in-app messages');
|
|
68
|
-
return [4 /*yield*/, pinpoint_1.getInAppMessages({ credentials: credentials, region: region }, input)];
|
|
68
|
+
return [4 /*yield*/, pinpoint_1.getInAppMessages({ credentials: credentials, region: region, userAgentValue: userAgentValue }, input)];
|
|
69
69
|
case 5:
|
|
70
70
|
response = _b.sent();
|
|
71
71
|
messages = response.InAppMessagesResponse.InAppMessageCampaigns;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/InAppMessaging/Providers/AWSPinpointProvider/index.ts"],"names":[],"mappings":";AAAA,qEAAqE;AACrE,sCAAsC;;;AAEtC,6EAK0D;AAE1D,0CAA8E;AAC9E,gFAG8B;AAC9B,qCAMqB;AACrB,iCAKiB;AACjB,iCAaiB;AAEjB,IAAM,uBAAuB,GAAG,2CAA2C,CAAC;AAC5E,IAAM,uBAAuB,GAAG,2CAA2C,CAAC;AAE5E;IACS,+CAAyB;IASjC;QAAA,YACC,kBAAM,cAAM,CAAC,SAEb;QAPO,gBAAU,GAAG,KAAK,CAAC;QAgB3B,eAAS,GAAG,UAAC,MAAW;YAAX,uBAAA,EAAA,WAAW;YACvB,KAAI,CAAC,MAAM,yCACP,iBAAM,SAAS,aAAC,MAAM,CAAC,KAC1B,YAAY,EAAE,EAAE,WAAW,EAAE,QAAQ,EAAE,GACvC,CAAC;YAEF,kGAAkG;YAClG,IAAI,CAAC,KAAI,CAAC,UAAU,EAAE;gBACrB,KAAI,CAAC,cAAc,GAAG,IAAI,wBAAc,CAAC,KAAI,CAAC,yBAAyB,CAAC,CAAC;gBACzE,KAAI,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC;gBAC5B,kDAAkD;gBAClD,yBAAgB,CACf,oCAA4B,CAAC,iBAAiB,EAC9C,UAAC,OAAqB;oBACrB,KAAI,CAAC,kBAAkB,CACtB,OAAO,EACP,+BAAuB,CAAC,iBAAiB,CACzC,CAAC;gBACH,CAAC,CACD,CAAC;gBACF,yBAAgB,CACf,oCAA4B,CAAC,iBAAiB,EAC9C,UAAC,OAAqB;oBACrB,KAAI,CAAC,kBAAkB,CACtB,OAAO,EACP,+BAAuB,CAAC,iBAAiB,CACzC,CAAC;gBACH,CAAC,CACD,CAAC;gBACF,yBAAgB,CACf,oCAA4B,CAAC,oBAAoB,EACjD,UAAC,OAAqB;oBACrB,KAAI,CAAC,kBAAkB,CACtB,OAAO,EACP,+BAAuB,CAAC,oBAAoB,CAC5C,CAAC;gBACH,CAAC,CACD,CAAC;aACF;YAED,KAAI,CAAC,UAAU,GAAG,IAAI,CAAC;YACvB,mCAA2B,CAAC,6BAA6B,EAAE,IAAI,CAAC,CAAC;YACjE,OAAO,KAAI,CAAC,MAAM,CAAC;QACpB,CAAC,CAAC;QAEF,sBAAgB,GAAG;;;;;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/InAppMessaging/Providers/AWSPinpointProvider/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { CustomUserAgentDetails } from '@aws-amplify/core';
|
|
2
|
+
import { EventListener } from '../../common';
|
|
3
|
+
import { NotificationsConfig, UserInfo } from '../../types';
|
|
4
|
+
import { InAppMessage, InAppMessageInteractionEvent, InAppMessagingInterface, InAppMessagingConfig, InAppMessageConflictHandler, InAppMessagingEvent, InAppMessagingProvider, OnMessageInteractionEventHandler, InternalNotificationsSubCategory, NotificationsSubCategory } from '../types';
|
|
5
|
+
export declare class InternalInAppMessagingClass implements InAppMessagingInterface {
|
|
6
|
+
private config;
|
|
7
|
+
private conflictHandler;
|
|
8
|
+
private listeningForAnalyticEvents;
|
|
9
|
+
private pluggables;
|
|
10
|
+
private storageSynced;
|
|
11
|
+
constructor();
|
|
12
|
+
/**
|
|
13
|
+
* Configure InAppMessaging
|
|
14
|
+
* @param {Object} config - InAppMessaging configuration object
|
|
15
|
+
*/
|
|
16
|
+
configure({ Notifications: notificationsConfig, }?: NotificationsConfig): InAppMessagingConfig;
|
|
17
|
+
/**
|
|
18
|
+
* Get the name of this module
|
|
19
|
+
* @returns {string} name of this module
|
|
20
|
+
*/
|
|
21
|
+
getModuleName(): NotificationsSubCategory | InternalNotificationsSubCategory;
|
|
22
|
+
/**
|
|
23
|
+
* Get a plugin from added plugins
|
|
24
|
+
* @param {string} providerName - the name of the plugin to get
|
|
25
|
+
*/
|
|
26
|
+
getPluggable: (providerName: string) => InAppMessagingProvider;
|
|
27
|
+
/**
|
|
28
|
+
* Add plugin into InAppMessaging
|
|
29
|
+
* @param {InAppMessagingProvider} pluggable - an instance of the plugin
|
|
30
|
+
*/
|
|
31
|
+
addPluggable: (pluggable: InAppMessagingProvider) => void;
|
|
32
|
+
/**
|
|
33
|
+
* Remove a plugin from added plugins
|
|
34
|
+
* @param {string} providerName - the name of the plugin to remove
|
|
35
|
+
*/
|
|
36
|
+
removePluggable: (providerName: string) => void;
|
|
37
|
+
/**
|
|
38
|
+
* Get the map resources that are currently available through the provider
|
|
39
|
+
* @param {string} provider
|
|
40
|
+
* @returns - Array of available map resources
|
|
41
|
+
*/
|
|
42
|
+
syncMessages(customUserAgentDetails?: CustomUserAgentDetails): Promise<void[]>;
|
|
43
|
+
clearMessages(): Promise<void[]>;
|
|
44
|
+
dispatchEvent(event: InAppMessagingEvent): Promise<void>;
|
|
45
|
+
identifyUser(userId: string, userInfo: UserInfo, customUserAgentDetails?: CustomUserAgentDetails): Promise<void[]>;
|
|
46
|
+
onMessageReceived: (handler: OnMessageInteractionEventHandler) => EventListener<OnMessageInteractionEventHandler>;
|
|
47
|
+
onMessageDisplayed: (handler: OnMessageInteractionEventHandler) => EventListener<OnMessageInteractionEventHandler>;
|
|
48
|
+
onMessageDismissed: (handler: OnMessageInteractionEventHandler) => EventListener<OnMessageInteractionEventHandler>;
|
|
49
|
+
onMessageActionTaken: (handler: OnMessageInteractionEventHandler) => EventListener<OnMessageInteractionEventHandler>;
|
|
50
|
+
notifyMessageInteraction: (message: InAppMessage, type: InAppMessageInteractionEvent) => void;
|
|
51
|
+
setConflictHandler: (handler: InAppMessageConflictHandler) => void;
|
|
52
|
+
private analyticsListener;
|
|
53
|
+
private syncStorage;
|
|
54
|
+
private getMessages;
|
|
55
|
+
private setMessages;
|
|
56
|
+
private removeMessages;
|
|
57
|
+
private defaultConflictHandler;
|
|
58
|
+
}
|
|
59
|
+
export declare const InternalInAppMessaging: InternalInAppMessagingClass;
|