@repzo/widget-react-native 1.1.0 → 1.2.1
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/CHANGELOG.md +64 -0
- package/README.md +92 -3
- package/lib/commonjs/api/client.js +35 -0
- package/lib/commonjs/api/client.js.map +1 -1
- package/lib/commonjs/i18n.js +14 -0
- package/lib/commonjs/i18n.js.map +1 -1
- package/lib/commonjs/index.js +2 -1
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/locales.js +13 -0
- package/lib/commonjs/locales.js.map +1 -1
- package/lib/commonjs/push/push-notifications.js +65 -8
- package/lib/commonjs/push/push-notifications.js.map +1 -1
- package/lib/commonjs/state/widget-store.js +451 -7
- package/lib/commonjs/state/widget-store.js.map +1 -1
- package/lib/commonjs/types.js +15 -0
- package/lib/commonjs/types.js.map +1 -1
- package/lib/commonjs/ui/WidgetProvider.js +64 -2
- package/lib/commonjs/ui/WidgetProvider.js.map +1 -1
- package/lib/commonjs/ui/components/Post.js +1241 -0
- package/lib/commonjs/ui/components/Post.js.map +1 -0
- package/lib/commonjs/ui/utils/html.js +1 -0
- package/lib/commonjs/ui/utils/html.js.map +1 -1
- package/lib/commonjs/ui/utils/post-html.js +276 -0
- package/lib/commonjs/ui/utils/post-html.js.map +1 -0
- package/lib/commonjs/ui/utils/safe-url.js +16 -0
- package/lib/commonjs/ui/utils/safe-url.js.map +1 -1
- package/lib/module/api/client.js +35 -0
- package/lib/module/api/client.js.map +1 -1
- package/lib/module/i18n.js +14 -0
- package/lib/module/i18n.js.map +1 -1
- package/lib/module/index.js +2 -1
- package/lib/module/index.js.map +1 -1
- package/lib/module/locales.js +13 -0
- package/lib/module/locales.js.map +1 -1
- package/lib/module/push/push-notifications.js +65 -8
- package/lib/module/push/push-notifications.js.map +1 -1
- package/lib/module/state/widget-store.js +450 -6
- package/lib/module/state/widget-store.js.map +1 -1
- package/lib/module/types.js +15 -0
- package/lib/module/types.js.map +1 -1
- package/lib/module/ui/WidgetProvider.js +65 -3
- package/lib/module/ui/WidgetProvider.js.map +1 -1
- package/lib/module/ui/components/Post.js +1236 -0
- package/lib/module/ui/components/Post.js.map +1 -0
- package/lib/module/ui/utils/html.js +1 -1
- package/lib/module/ui/utils/html.js.map +1 -1
- package/lib/module/ui/utils/post-html.js +271 -0
- package/lib/module/ui/utils/post-html.js.map +1 -0
- package/lib/module/ui/utils/safe-url.js +15 -0
- package/lib/module/ui/utils/safe-url.js.map +1 -1
- package/lib/typescript/commonjs/api/client.d.ts +21 -1
- package/lib/typescript/commonjs/api/client.d.ts.map +1 -1
- package/lib/typescript/commonjs/i18n.d.ts +13 -0
- package/lib/typescript/commonjs/i18n.d.ts.map +1 -1
- package/lib/typescript/commonjs/index.d.ts +14 -1
- package/lib/typescript/commonjs/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/locales.d.ts.map +1 -1
- package/lib/typescript/commonjs/push/push-notifications.d.ts +26 -2
- package/lib/typescript/commonjs/push/push-notifications.d.ts.map +1 -1
- package/lib/typescript/commonjs/state/widget-store.d.ts +84 -1
- package/lib/typescript/commonjs/state/widget-store.d.ts.map +1 -1
- package/lib/typescript/commonjs/types.d.ts +77 -0
- package/lib/typescript/commonjs/types.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/WidgetProvider.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/components/Post.d.ts +69 -0
- package/lib/typescript/commonjs/ui/components/Post.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/utils/html.d.ts +1 -0
- package/lib/typescript/commonjs/ui/utils/html.d.ts.map +1 -1
- package/lib/typescript/commonjs/ui/utils/post-html.d.ts +54 -0
- package/lib/typescript/commonjs/ui/utils/post-html.d.ts.map +1 -0
- package/lib/typescript/commonjs/ui/utils/safe-url.d.ts +6 -0
- package/lib/typescript/commonjs/ui/utils/safe-url.d.ts.map +1 -1
- package/lib/typescript/module/api/client.d.ts +21 -1
- package/lib/typescript/module/api/client.d.ts.map +1 -1
- package/lib/typescript/module/i18n.d.ts +13 -0
- package/lib/typescript/module/i18n.d.ts.map +1 -1
- package/lib/typescript/module/index.d.ts +14 -1
- package/lib/typescript/module/index.d.ts.map +1 -1
- package/lib/typescript/module/locales.d.ts.map +1 -1
- package/lib/typescript/module/push/push-notifications.d.ts +26 -2
- package/lib/typescript/module/push/push-notifications.d.ts.map +1 -1
- package/lib/typescript/module/state/widget-store.d.ts +84 -1
- package/lib/typescript/module/state/widget-store.d.ts.map +1 -1
- package/lib/typescript/module/types.d.ts +77 -0
- package/lib/typescript/module/types.d.ts.map +1 -1
- package/lib/typescript/module/ui/WidgetProvider.d.ts.map +1 -1
- package/lib/typescript/module/ui/components/Post.d.ts +69 -0
- package/lib/typescript/module/ui/components/Post.d.ts.map +1 -0
- package/lib/typescript/module/ui/utils/html.d.ts +1 -0
- package/lib/typescript/module/ui/utils/html.d.ts.map +1 -1
- package/lib/typescript/module/ui/utils/post-html.d.ts +54 -0
- package/lib/typescript/module/ui/utils/post-html.d.ts.map +1 -0
- package/lib/typescript/module/ui/utils/safe-url.d.ts +6 -0
- package/lib/typescript/module/ui/utils/safe-url.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/api/client.ts +32 -0
- package/src/i18n.ts +14 -0
- package/src/index.tsx +17 -0
- package/src/locales.ts +13 -0
- package/src/push/push-notifications.ts +74 -8
- package/src/state/widget-store.ts +429 -6
- package/src/types.ts +77 -0
- package/src/ui/WidgetProvider.tsx +78 -2
- package/src/ui/components/Post.tsx +943 -0
- package/src/ui/utils/html.ts +1 -1
- package/src/ui/utils/post-html.ts +256 -0
- package/src/ui/utils/safe-url.ts +15 -0
package/lib/module/index.js
CHANGED
|
@@ -48,7 +48,8 @@ const RepzoWidget = {
|
|
|
48
48
|
addEventListener: (event, listener) => controller.events.addListener(event, listener),
|
|
49
49
|
setStorageAdapter: adapter => setStorageAdapter(adapter),
|
|
50
50
|
setSecureStorageAdapter: adapter => setSecureStorageAdapter(adapter),
|
|
51
|
-
setPushToken: options => controller.store.push.setManualToken(options)
|
|
51
|
+
setPushToken: options => controller.store.push.setManualToken(options),
|
|
52
|
+
handlePushNotification: message => controller.store.push.handleNotification(message)
|
|
52
53
|
};
|
|
53
54
|
export default RepzoWidget;
|
|
54
55
|
export { RepzoWidgetEvents as Events };
|
package/lib/module/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["controller","RepzoWidgetEvents","setSecureStorageAdapter","setStorageAdapter","RepzoWidgetProvider","Launcher","RepzoWidgetLauncher","RepzoWidgetError","DEFAULT_BASE_URL","useWidgetState","Space","RepzoWidget","boot","options","store","loginUnidentifiedUser","loginUserWithUserAttributes","user","updateUser","attributes","logout","present","presentSpace","space","presentConversation","conversationId","openConversation","hide","getUnreadConversationCount","Object","values","getState","unreadByConversation","filter","count","length","getUnreadMessageCount","unreadCount","logEvent","eventName","metadata","track","setLocale","locale","addEventListener","event","listener","events","addListener","adapter","setPushToken","push","setManualToken","Events"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASA,UAAU,QAAQ,iBAAc;AACzC,SAASC,iBAAiB,QAAuD,aAAU;AAC3F,SAASC,uBAAuB,EAAEC,iBAAiB,QAAQ,cAAW;AAStE,SAASC,mBAAmB,QAAQ,wBAAqB;AACzD,SAASC,QAAQ,IAAIC,mBAAmB,QAAQ,6BAA0B;AAC1E,SAASL,iBAAiB,QAAQ,aAAU;AAC5C,SAASM,gBAAgB,QAAQ,iBAAc;AAC/C,SAASC,gBAAgB,QAAQ,YAAS;AAC1C,SAASC,cAAc,QAAQ,6BAA0B;
|
|
1
|
+
{"version":3,"names":["controller","RepzoWidgetEvents","setSecureStorageAdapter","setStorageAdapter","RepzoWidgetProvider","Launcher","RepzoWidgetLauncher","RepzoWidgetError","DEFAULT_BASE_URL","useWidgetState","Space","RepzoWidget","boot","options","store","loginUnidentifiedUser","loginUserWithUserAttributes","user","updateUser","attributes","logout","present","presentSpace","space","presentConversation","conversationId","openConversation","hide","getUnreadConversationCount","Object","values","getState","unreadByConversation","filter","count","length","getUnreadMessageCount","unreadCount","logEvent","eventName","metadata","track","setLocale","locale","addEventListener","event","listener","events","addListener","adapter","setPushToken","push","setManualToken","handlePushNotification","message","handleNotification","Events"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"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","ignoreList":[]}
|
package/lib/module/locales.js
CHANGED
|
@@ -105,6 +105,19 @@ const ar = {
|
|
|
105
105
|
notificationNewReply: 'رد جديد',
|
|
106
106
|
notificationAttachment: 'أرسل مرفقًا',
|
|
107
107
|
notificationOpenHint: 'يفتح المحادثة',
|
|
108
|
+
postFrom: '{name} من {workspace}',
|
|
109
|
+
postNewMessage: 'رسالة جديدة',
|
|
110
|
+
postOpenHint: 'يفتح الرسالة',
|
|
111
|
+
postClose: 'إغلاق',
|
|
112
|
+
postMinimize: 'تصغير',
|
|
113
|
+
postReplyPlaceholder: 'اكتب ردًا…',
|
|
114
|
+
postSend: 'إرسال',
|
|
115
|
+
postSent: 'تم الإرسال',
|
|
116
|
+
postReplyFailed: 'تعذّر إرسال ردك. حاول مرة أخرى.',
|
|
117
|
+
postReactions: 'التفاعلات',
|
|
118
|
+
postThanks: 'شكراً على ملاحظاتك!',
|
|
119
|
+
postConversation: 'محادثتك',
|
|
120
|
+
postContinueChat: 'تابع في المحادثة',
|
|
108
121
|
blockService: 'خدمة',
|
|
109
122
|
blockProduct: 'منتج',
|
|
110
123
|
blockChooseTime: 'اختر وقتًا',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["ar","back","loading","loadEarlier","emptyConversation","messagePlaceholder","attachFile","attachPhotoLibrary","attachTakePhoto","attachChooseFile","removeAttachment","attachmentTooLarge","attachmentTooMany","attachmentsTooLargeTogether","attachmentFailed","imageLoadFailed","openImageExternally","cameraPermissionDenied","cancel","failedToSend","thinking","messages","noMessages","historyHidden","startBelow","preChatTitle","preChatSubtitle","preChatSkip","preChatSubmit","viewPreviousConversations","homeRecentTitle","homeViewAllCount","homeNoConversations","homeStatusOnline","homeStatusAway","unreadBadge","team","home","close","retry","connectionError","connecting","chatUnavailable","identityVerificationError","widgetCrashed","timeJustNow","timeMinutes","timeHours","timeDays","timeMonths","timeYears","today","yesterday","conversationUpdated","messageDeleted","messageSent","messageSeen","waitingForTeammate","joinedConversation","ratingQuestion","ratingReasonPrompt","ratingCommentPlaceholder","ratingSubmit","ratingDone","ratingThanks","ratingLocked","ratingExpired","ratingFailed","rating1","rating2","rating3","rating4","rating5","procedureSend","procedureSent","procedureShareDetails","procedureDetailsSent","procedureHide","procedureFieldCount","procedureFieldCountOne","procedureTitle","fieldRequired","invalidEmail","working","outboundTitle","outboundCta","dismiss","notificationReplyFrom","notificationNewReply","notificationAttachment","notificationOpenHint","blockService","blockProduct","blockChooseTime","blockProfessional","blockPriceOffer","blockSubtotal","blockDiscount","blockTax","blockShipping","blockTotal","blockMinutes","blockSave","blockAnyAvailable","blockWithProvider","blockBookTime","blockValidUntil","launcherOpen","launcherClose","BUNDLED_TRANSLATIONS","baseLanguage","locale","split","toLowerCase"],"sourceRoot":"../../src","sources":["locales.ts"],"mappings":"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
|
|
1
|
+
{"version":3,"names":["ar","back","loading","loadEarlier","emptyConversation","messagePlaceholder","attachFile","attachPhotoLibrary","attachTakePhoto","attachChooseFile","removeAttachment","attachmentTooLarge","attachmentTooMany","attachmentsTooLargeTogether","attachmentFailed","imageLoadFailed","openImageExternally","cameraPermissionDenied","cancel","failedToSend","thinking","messages","noMessages","historyHidden","startBelow","preChatTitle","preChatSubtitle","preChatSkip","preChatSubmit","viewPreviousConversations","homeRecentTitle","homeViewAllCount","homeNoConversations","homeStatusOnline","homeStatusAway","unreadBadge","team","home","close","retry","connectionError","connecting","chatUnavailable","identityVerificationError","widgetCrashed","timeJustNow","timeMinutes","timeHours","timeDays","timeMonths","timeYears","today","yesterday","conversationUpdated","messageDeleted","messageSent","messageSeen","waitingForTeammate","joinedConversation","ratingQuestion","ratingReasonPrompt","ratingCommentPlaceholder","ratingSubmit","ratingDone","ratingThanks","ratingLocked","ratingExpired","ratingFailed","rating1","rating2","rating3","rating4","rating5","procedureSend","procedureSent","procedureShareDetails","procedureDetailsSent","procedureHide","procedureFieldCount","procedureFieldCountOne","procedureTitle","fieldRequired","invalidEmail","working","outboundTitle","outboundCta","dismiss","notificationReplyFrom","notificationNewReply","notificationAttachment","notificationOpenHint","postFrom","postNewMessage","postOpenHint","postClose","postMinimize","postReplyPlaceholder","postSend","postSent","postReplyFailed","postReactions","postThanks","postConversation","postContinueChat","blockService","blockProduct","blockChooseTime","blockProfessional","blockPriceOffer","blockSubtotal","blockDiscount","blockTax","blockShipping","blockTotal","blockMinutes","blockSave","blockAnyAvailable","blockWithProvider","blockBookTime","blockValidUntil","launcherOpen","launcherClose","BUNDLED_TRANSLATIONS","baseLanguage","locale","split","toLowerCase"],"sourceRoot":"../../src","sources":["locales.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -16,6 +16,7 @@
|
|
|
16
16
|
*/
|
|
17
17
|
|
|
18
18
|
import { Platform } from 'react-native';
|
|
19
|
+
import { openExternalUrl } from "../ui/utils/safe-url.js";
|
|
19
20
|
|
|
20
21
|
/** Version-agnostic view over the host's Firebase messaging module. */
|
|
21
22
|
|
|
@@ -54,6 +55,12 @@ function resolveMessaging() {
|
|
|
54
55
|
return null;
|
|
55
56
|
}
|
|
56
57
|
}
|
|
58
|
+
const WIDGET_DOCUMENT_TYPES = new Set(['widget_message', 'send_post', 'send_push']);
|
|
59
|
+
|
|
60
|
+
/** A push sent by Workstation for the widget (vs. one of the host app's own). */
|
|
61
|
+
function isWidgetPush(data) {
|
|
62
|
+
return !!data && WIDGET_DOCUMENT_TYPES.has(data.document_type) && typeof data.document_id === 'string' && !!data.document_id;
|
|
63
|
+
}
|
|
57
64
|
export class PushManager {
|
|
58
65
|
options = {};
|
|
59
66
|
listenersWired = false;
|
|
@@ -66,9 +73,16 @@ export class PushManager {
|
|
|
66
73
|
|
|
67
74
|
/** Registrations still on the wire; unregister() waits for them. */
|
|
68
75
|
inflight = new Set();
|
|
69
|
-
|
|
76
|
+
|
|
77
|
+
/** Taps the host handed over before the session was ready; start() opens them. */
|
|
78
|
+
pendingTaps = [];
|
|
79
|
+
|
|
80
|
+
/** The host and our own listener can both see one tap — open it once. */
|
|
81
|
+
handledMessageIds = new Set();
|
|
82
|
+
constructor(client, openConversation, openPost = () => {}) {
|
|
70
83
|
this.client = client;
|
|
71
84
|
this.openConversation = openConversation;
|
|
85
|
+
this.openPost = openPost;
|
|
72
86
|
}
|
|
73
87
|
|
|
74
88
|
/** Remember the boot options; actual work happens in start() post-init. */
|
|
@@ -83,6 +97,9 @@ export class PushManager {
|
|
|
83
97
|
*/
|
|
84
98
|
async start() {
|
|
85
99
|
this.active = true;
|
|
100
|
+
const pending = this.pendingTaps;
|
|
101
|
+
this.pendingTaps = [];
|
|
102
|
+
pending.forEach(message => this.handleTap(message));
|
|
86
103
|
if (this.manualToken) {
|
|
87
104
|
await this.register(this.manualToken);
|
|
88
105
|
}
|
|
@@ -149,6 +166,8 @@ export class PushManager {
|
|
|
149
166
|
*/
|
|
150
167
|
async unregister(authToken) {
|
|
151
168
|
this.active = false;
|
|
169
|
+
// A tap held for this session must not open in the next user's.
|
|
170
|
+
this.pendingTaps = [];
|
|
152
171
|
await Promise.all([...this.inflight]);
|
|
153
172
|
const token = this.lastToken;
|
|
154
173
|
this.lastToken = null;
|
|
@@ -179,25 +198,63 @@ export class PushManager {
|
|
|
179
198
|
return run;
|
|
180
199
|
}
|
|
181
200
|
wireTapHandlers(messaging) {
|
|
201
|
+
// These listeners outlive logout, so taps go through the same session gate
|
|
202
|
+
// as host-forwarded ones: held until start(), and only marked handled then.
|
|
182
203
|
// Background → tapped: the app was alive, just not in front.
|
|
183
204
|
messaging.onNotificationOpenedApp(remoteMessage => {
|
|
184
|
-
this.
|
|
205
|
+
this.handleNotification(remoteMessage);
|
|
185
206
|
});
|
|
186
207
|
|
|
187
208
|
// Killed → tapped: the click that launched the app.
|
|
188
209
|
void messaging.getInitialNotification().then(remoteMessage => {
|
|
189
|
-
if (remoteMessage) this.
|
|
210
|
+
if (remoteMessage) this.handleNotification(remoteMessage);
|
|
190
211
|
}).catch(() => {});
|
|
191
212
|
}
|
|
192
213
|
|
|
193
|
-
/**
|
|
214
|
+
/**
|
|
215
|
+
* A tap the host app read itself (`RepzoWidget.handlePushNotification`).
|
|
216
|
+
* Firebase hands out the notification that launched the app only once, so
|
|
217
|
+
* when the host reads it first our own listener gets nothing; the same goes
|
|
218
|
+
* for notifications the host re-posts locally while in the foreground.
|
|
219
|
+
* True when it's a widget push (so the host skips its own routing); it opens
|
|
220
|
+
* now, or once the session is ready.
|
|
221
|
+
*/
|
|
222
|
+
handleNotification(message) {
|
|
223
|
+
if (!isWidgetPush(message?.data)) return false;
|
|
224
|
+
if (this.active) this.handleTap(message);else this.pendingTaps.push(message);
|
|
225
|
+
return true;
|
|
226
|
+
}
|
|
227
|
+
|
|
228
|
+
/**
|
|
229
|
+
* Only widget pushes are ours — host app notifications pass through. A team
|
|
230
|
+
* reply opens its conversation; a Send post opens the post; a Send mobile
|
|
231
|
+
* push reports the open and follows its link, if it has one.
|
|
232
|
+
*/
|
|
194
233
|
handleTap(remoteMessage) {
|
|
195
234
|
const data = remoteMessage?.data;
|
|
196
|
-
if (data
|
|
197
|
-
const
|
|
198
|
-
if (typeof
|
|
199
|
-
this.
|
|
235
|
+
if (!isWidgetPush(data)) return;
|
|
236
|
+
const messageId = remoteMessage?.messageId;
|
|
237
|
+
if (typeof messageId === 'string' && messageId) {
|
|
238
|
+
if (this.handledMessageIds.has(messageId)) return;
|
|
239
|
+
this.handledMessageIds.add(messageId);
|
|
240
|
+
}
|
|
241
|
+
const documentId = data.document_id;
|
|
242
|
+
if (data?.document_type === 'widget_message') this.openConversation(documentId);else if (data?.document_type === 'send_post') this.openPost(documentId);else if (data?.document_type === 'send_push') this.openSendPush(data);
|
|
243
|
+
}
|
|
244
|
+
|
|
245
|
+
/**
|
|
246
|
+
* The tap already opened the app. A link goes through the same gate as links
|
|
247
|
+
* in messages (`onOpenUrl` first, then web/mail/phone links), so the host can
|
|
248
|
+
* route `myapp://…` itself.
|
|
249
|
+
*/
|
|
250
|
+
openSendPush(data) {
|
|
251
|
+
const deliveryId = data.delivery_id;
|
|
252
|
+
if (typeof deliveryId === 'string' && deliveryId) {
|
|
253
|
+
this.client.reportPushOpened(deliveryId).catch(() => {
|
|
254
|
+
// Only the open count misses it; the visitor sees nothing.
|
|
255
|
+
});
|
|
200
256
|
}
|
|
257
|
+
if (typeof data.url === 'string' && data.url) void openExternalUrl(data.url);
|
|
201
258
|
}
|
|
202
259
|
}
|
|
203
260
|
//# sourceMappingURL=push-notifications.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Platform","resolveMessaging","mod","require","getMessaging","instance","requestPermission","registerDeviceForRemoteMessages","Promise","resolve","getToken","onTokenRefresh","cb","onNotificationOpenedApp","getInitialNotification","factory","default","PushManager","options","listenersWired","lastToken","manualToken","warnedMissingModule","active","inflight","
|
|
1
|
+
{"version":3,"names":["Platform","openExternalUrl","resolveMessaging","mod","require","getMessaging","instance","requestPermission","registerDeviceForRemoteMessages","Promise","resolve","getToken","onTokenRefresh","cb","onNotificationOpenedApp","getInitialNotification","factory","default","WIDGET_DOCUMENT_TYPES","Set","isWidgetPush","data","has","document_type","document_id","PushManager","options","listenersWired","lastToken","manualToken","warnedMissingModule","active","inflight","pendingTaps","handledMessageIds","constructor","client","openConversation","openPost","configure","start","pending","forEach","message","handleTap","register","enabled","messaging","console","warn","wireTapHandlers","token","error","setManualToken","manual","unregister","authToken","all","removePushToken","skipReauth","run","registerPushToken","platform","OS","bundleId","undefined","then","finally","delete","add","remoteMessage","handleNotification","catch","push","messageId","documentId","openSendPush","deliveryId","delivery_id","reportPushOpened","url"],"sourceRoot":"../../../src","sources":["push/push-notifications.ts"],"mappings":"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","ignoreList":[]}
|