onesignal-vue 1.0.0-beta2 → 1.0.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/LICENSE +24 -0
- package/README.md +64 -3
- package/dist/index.d.ts +28 -8
- package/dist/index.es.js +36 -37
- package/dist/index.es.js.map +1 -1
- package/dist/index.js +36 -37
- package/dist/index.js.map +1 -1
- package/index.ts +100 -80
- package/package.json +1 -1
- package/rollup.config.js +0 -1
- package/index.d.ts +0 -53
package/index.ts
CHANGED
|
@@ -66,7 +66,7 @@ interface IOneSignalFunctionCall {
|
|
|
66
66
|
promiseResolver?: Function;
|
|
67
67
|
}
|
|
68
68
|
|
|
69
|
-
|
|
69
|
+
type Action<T> = (item: T) => void;
|
|
70
70
|
interface AutoPromptOptions { force?: boolean; forceSlidedownOverNative?: boolean; slidedownPromptOptions?: IOneSignalAutoPromptOptions; }
|
|
71
71
|
interface RegisterOptions { modalPrompt?: boolean; httpPermissionRequest?: boolean; slidedown?: boolean; autoAccept?: boolean }
|
|
72
72
|
interface SetSMSOptions { identifierAuthHash?: string; }
|
|
@@ -74,14 +74,34 @@ interface SetEmailOptions { identifierAuthHash?: string; emailAuthHash?: string;
|
|
|
74
74
|
interface TagsObject<T> { [key: string]: T; }
|
|
75
75
|
interface IOneSignalAutoPromptOptions { force?: boolean; forceSlidedownOverNative?: boolean; isInUpdateMode?: boolean; categoryOptions?: IOneSignalCategories; }
|
|
76
76
|
interface IOneSignalCategories { positiveUpdateButton: string; negativeUpdateButton: string; savingButtonText: string; errorButtonText: string; updateMessage: string; tags: IOneSignalTagCategory[]; }
|
|
77
|
-
|
|
78
|
-
|
|
77
|
+
interface IOneSignalTagCategory { tag: string; label: string; checked?: boolean; }
|
|
78
|
+
|
|
79
|
+
interface IInitObject {
|
|
80
|
+
appId: string;
|
|
81
|
+
subdomainName?: string;
|
|
82
|
+
requiresUserPrivacyConsent?: boolean;
|
|
83
|
+
promptOptions?: object;
|
|
84
|
+
welcomeNotification?: object;
|
|
85
|
+
notifyButton?: object;
|
|
86
|
+
persistNotification?: boolean;
|
|
87
|
+
webhooks?: object;
|
|
88
|
+
autoResubscribe?: boolean;
|
|
89
|
+
autoRegister?: boolean;
|
|
90
|
+
notificationClickHandlerMatch?: string;
|
|
91
|
+
notificationClickHandlerAction?: string;
|
|
92
|
+
serviceWorkerParam?: { scope: string };
|
|
93
|
+
serviceWorkerPath?: string;
|
|
94
|
+
serviceWorkerUpdaterPath?: string;
|
|
95
|
+
path?: string;
|
|
96
|
+
allowLocalhostAsSecureOrigin?: boolean;
|
|
97
|
+
[key: string]: any;
|
|
98
|
+
}
|
|
79
99
|
|
|
80
100
|
interface IOneSignal {
|
|
81
|
-
init(options
|
|
82
|
-
on(event: string, listener:
|
|
83
|
-
off(event: string, listener:
|
|
84
|
-
once(event: string, listener:
|
|
101
|
+
init(options: IInitObject): Promise<void>
|
|
102
|
+
on(event: string, listener: () => void): void
|
|
103
|
+
off(event: string, listener: () => void): void
|
|
104
|
+
once(event: string, listener: () => void): void
|
|
85
105
|
isPushNotificationsEnabled(callback?: Action<boolean>): Promise<boolean>
|
|
86
106
|
showHttpPrompt(options?: AutoPromptOptions): Promise<void>
|
|
87
107
|
registerForPushNotifications(options?: RegisterOptions): Promise<void>
|
|
@@ -121,7 +141,7 @@ interface IOneSignal {
|
|
|
121
141
|
|
|
122
142
|
/* O N E S I G N A L A P I */
|
|
123
143
|
|
|
124
|
-
function init(options:
|
|
144
|
+
function init(options: IInitObject) {
|
|
125
145
|
return new Promise<void>(resolve => {
|
|
126
146
|
if (isOneSignalInitialized) {
|
|
127
147
|
return;
|
|
@@ -149,7 +169,7 @@ function init(options: Object = {}) {
|
|
|
149
169
|
function on(event, listener): void {
|
|
150
170
|
if (!doesOneSignalExist()) {
|
|
151
171
|
vueOneSignalFunctionQueue.push({
|
|
152
|
-
name:
|
|
172
|
+
name: 'on',
|
|
153
173
|
args: arguments,
|
|
154
174
|
});
|
|
155
175
|
return;
|
|
@@ -158,12 +178,12 @@ function init(options: Object = {}) {
|
|
|
158
178
|
window.OneSignal.push(() => {
|
|
159
179
|
window.OneSignal.on(event, listener)
|
|
160
180
|
});
|
|
161
|
-
}
|
|
181
|
+
}
|
|
162
182
|
|
|
163
183
|
function off(event, listener): void {
|
|
164
184
|
if (!doesOneSignalExist()) {
|
|
165
185
|
vueOneSignalFunctionQueue.push({
|
|
166
|
-
name:
|
|
186
|
+
name: 'off',
|
|
167
187
|
args: arguments,
|
|
168
188
|
});
|
|
169
189
|
return;
|
|
@@ -172,12 +192,12 @@ function init(options: Object = {}) {
|
|
|
172
192
|
window.OneSignal.push(() => {
|
|
173
193
|
window.OneSignal.off(event, listener)
|
|
174
194
|
});
|
|
175
|
-
}
|
|
195
|
+
}
|
|
176
196
|
|
|
177
197
|
function once(event, listener): void {
|
|
178
198
|
if (!doesOneSignalExist()) {
|
|
179
199
|
vueOneSignalFunctionQueue.push({
|
|
180
|
-
name:
|
|
200
|
+
name: 'once',
|
|
181
201
|
args: arguments,
|
|
182
202
|
});
|
|
183
203
|
return;
|
|
@@ -186,13 +206,13 @@ function init(options: Object = {}) {
|
|
|
186
206
|
window.OneSignal.push(() => {
|
|
187
207
|
window.OneSignal.once(event, listener)
|
|
188
208
|
});
|
|
189
|
-
}
|
|
209
|
+
}
|
|
190
210
|
|
|
191
211
|
function isPushNotificationsEnabled(callback): Promise<boolean> {
|
|
192
212
|
return new Promise(function (resolve, reject) {
|
|
193
213
|
if (!doesOneSignalExist()) {
|
|
194
214
|
vueOneSignalFunctionQueue.push({
|
|
195
|
-
name:
|
|
215
|
+
name: 'isPushNotificationsEnabled',
|
|
196
216
|
args: arguments,
|
|
197
217
|
promiseResolver: resolve,
|
|
198
218
|
});
|
|
@@ -205,13 +225,13 @@ function init(options: Object = {}) {
|
|
|
205
225
|
.catch((error) => reject(error));
|
|
206
226
|
});
|
|
207
227
|
});
|
|
208
|
-
}
|
|
228
|
+
}
|
|
209
229
|
|
|
210
230
|
function showHttpPrompt(options): Promise<void> {
|
|
211
231
|
return new Promise(function (resolve, reject) {
|
|
212
232
|
if (!doesOneSignalExist()) {
|
|
213
233
|
vueOneSignalFunctionQueue.push({
|
|
214
|
-
name:
|
|
234
|
+
name: 'showHttpPrompt',
|
|
215
235
|
args: arguments,
|
|
216
236
|
promiseResolver: resolve,
|
|
217
237
|
});
|
|
@@ -224,13 +244,13 @@ function init(options: Object = {}) {
|
|
|
224
244
|
.catch((error) => reject(error));
|
|
225
245
|
});
|
|
226
246
|
});
|
|
227
|
-
}
|
|
247
|
+
}
|
|
228
248
|
|
|
229
249
|
function registerForPushNotifications(options): Promise<void> {
|
|
230
250
|
return new Promise(function (resolve, reject) {
|
|
231
251
|
if (!doesOneSignalExist()) {
|
|
232
252
|
vueOneSignalFunctionQueue.push({
|
|
233
|
-
name:
|
|
253
|
+
name: 'registerForPushNotifications',
|
|
234
254
|
args: arguments,
|
|
235
255
|
promiseResolver: resolve,
|
|
236
256
|
});
|
|
@@ -243,13 +263,13 @@ function init(options: Object = {}) {
|
|
|
243
263
|
.catch((error) => reject(error));
|
|
244
264
|
});
|
|
245
265
|
});
|
|
246
|
-
}
|
|
266
|
+
}
|
|
247
267
|
|
|
248
268
|
function setDefaultNotificationUrl(url): Promise<void> {
|
|
249
269
|
return new Promise(function (resolve, reject) {
|
|
250
270
|
if (!doesOneSignalExist()) {
|
|
251
271
|
vueOneSignalFunctionQueue.push({
|
|
252
|
-
name:
|
|
272
|
+
name: 'setDefaultNotificationUrl',
|
|
253
273
|
args: arguments,
|
|
254
274
|
promiseResolver: resolve,
|
|
255
275
|
});
|
|
@@ -262,13 +282,13 @@ function init(options: Object = {}) {
|
|
|
262
282
|
.catch((error) => reject(error));
|
|
263
283
|
});
|
|
264
284
|
});
|
|
265
|
-
}
|
|
285
|
+
}
|
|
266
286
|
|
|
267
287
|
function setDefaultTitle(title): Promise<void> {
|
|
268
288
|
return new Promise(function (resolve, reject) {
|
|
269
289
|
if (!doesOneSignalExist()) {
|
|
270
290
|
vueOneSignalFunctionQueue.push({
|
|
271
|
-
name:
|
|
291
|
+
name: 'setDefaultTitle',
|
|
272
292
|
args: arguments,
|
|
273
293
|
promiseResolver: resolve,
|
|
274
294
|
});
|
|
@@ -281,13 +301,13 @@ function init(options: Object = {}) {
|
|
|
281
301
|
.catch((error) => reject(error));
|
|
282
302
|
});
|
|
283
303
|
});
|
|
284
|
-
}
|
|
304
|
+
}
|
|
285
305
|
|
|
286
306
|
function getTags(callback): Promise<void> {
|
|
287
307
|
return new Promise(function (resolve, reject) {
|
|
288
308
|
if (!doesOneSignalExist()) {
|
|
289
309
|
vueOneSignalFunctionQueue.push({
|
|
290
|
-
name:
|
|
310
|
+
name: 'getTags',
|
|
291
311
|
args: arguments,
|
|
292
312
|
promiseResolver: resolve,
|
|
293
313
|
});
|
|
@@ -300,13 +320,13 @@ function init(options: Object = {}) {
|
|
|
300
320
|
.catch((error) => reject(error));
|
|
301
321
|
});
|
|
302
322
|
});
|
|
303
|
-
}
|
|
323
|
+
}
|
|
304
324
|
|
|
305
325
|
function sendTag(key, value, callback): Promise<Object | null> {
|
|
306
326
|
return new Promise(function (resolve, reject) {
|
|
307
327
|
if (!doesOneSignalExist()) {
|
|
308
328
|
vueOneSignalFunctionQueue.push({
|
|
309
|
-
name:
|
|
329
|
+
name: 'sendTag',
|
|
310
330
|
args: arguments,
|
|
311
331
|
promiseResolver: resolve,
|
|
312
332
|
});
|
|
@@ -319,13 +339,13 @@ function init(options: Object = {}) {
|
|
|
319
339
|
.catch((error) => reject(error));
|
|
320
340
|
});
|
|
321
341
|
});
|
|
322
|
-
}
|
|
342
|
+
}
|
|
323
343
|
|
|
324
344
|
function sendTags(tags, callback): Promise<Object | null> {
|
|
325
345
|
return new Promise(function (resolve, reject) {
|
|
326
346
|
if (!doesOneSignalExist()) {
|
|
327
347
|
vueOneSignalFunctionQueue.push({
|
|
328
|
-
name:
|
|
348
|
+
name: 'sendTags',
|
|
329
349
|
args: arguments,
|
|
330
350
|
promiseResolver: resolve,
|
|
331
351
|
});
|
|
@@ -338,13 +358,13 @@ function init(options: Object = {}) {
|
|
|
338
358
|
.catch((error) => reject(error));
|
|
339
359
|
});
|
|
340
360
|
});
|
|
341
|
-
}
|
|
361
|
+
}
|
|
342
362
|
|
|
343
363
|
function deleteTag(tag): Promise<Array<string>> {
|
|
344
364
|
return new Promise(function (resolve, reject) {
|
|
345
365
|
if (!doesOneSignalExist()) {
|
|
346
366
|
vueOneSignalFunctionQueue.push({
|
|
347
|
-
name:
|
|
367
|
+
name: 'deleteTag',
|
|
348
368
|
args: arguments,
|
|
349
369
|
promiseResolver: resolve,
|
|
350
370
|
});
|
|
@@ -357,13 +377,13 @@ function init(options: Object = {}) {
|
|
|
357
377
|
.catch((error) => reject(error));
|
|
358
378
|
});
|
|
359
379
|
});
|
|
360
|
-
}
|
|
380
|
+
}
|
|
361
381
|
|
|
362
382
|
function deleteTags(tags, callback): Promise<Array<string>> {
|
|
363
383
|
return new Promise(function (resolve, reject) {
|
|
364
384
|
if (!doesOneSignalExist()) {
|
|
365
385
|
vueOneSignalFunctionQueue.push({
|
|
366
|
-
name:
|
|
386
|
+
name: 'deleteTags',
|
|
367
387
|
args: arguments,
|
|
368
388
|
promiseResolver: resolve,
|
|
369
389
|
});
|
|
@@ -376,13 +396,13 @@ function init(options: Object = {}) {
|
|
|
376
396
|
.catch((error) => reject(error));
|
|
377
397
|
});
|
|
378
398
|
});
|
|
379
|
-
}
|
|
399
|
+
}
|
|
380
400
|
|
|
381
401
|
function addListenerForNotificationOpened(callback): Promise<void> {
|
|
382
402
|
return new Promise(function (resolve, reject) {
|
|
383
403
|
if (!doesOneSignalExist()) {
|
|
384
404
|
vueOneSignalFunctionQueue.push({
|
|
385
|
-
name:
|
|
405
|
+
name: 'addListenerForNotificationOpened',
|
|
386
406
|
args: arguments,
|
|
387
407
|
promiseResolver: resolve,
|
|
388
408
|
});
|
|
@@ -395,13 +415,13 @@ function init(options: Object = {}) {
|
|
|
395
415
|
.catch((error) => reject(error));
|
|
396
416
|
});
|
|
397
417
|
});
|
|
398
|
-
}
|
|
418
|
+
}
|
|
399
419
|
|
|
400
420
|
function setSubscription(newSubscription): Promise<void> {
|
|
401
421
|
return new Promise(function (resolve, reject) {
|
|
402
422
|
if (!doesOneSignalExist()) {
|
|
403
423
|
vueOneSignalFunctionQueue.push({
|
|
404
|
-
name:
|
|
424
|
+
name: 'setSubscription',
|
|
405
425
|
args: arguments,
|
|
406
426
|
promiseResolver: resolve,
|
|
407
427
|
});
|
|
@@ -414,13 +434,13 @@ function init(options: Object = {}) {
|
|
|
414
434
|
.catch((error) => reject(error));
|
|
415
435
|
});
|
|
416
436
|
});
|
|
417
|
-
}
|
|
437
|
+
}
|
|
418
438
|
|
|
419
439
|
function showHttpPermissionRequest(options): Promise<any> {
|
|
420
440
|
return new Promise(function (resolve, reject) {
|
|
421
441
|
if (!doesOneSignalExist()) {
|
|
422
442
|
vueOneSignalFunctionQueue.push({
|
|
423
|
-
name:
|
|
443
|
+
name: 'showHttpPermissionRequest',
|
|
424
444
|
args: arguments,
|
|
425
445
|
promiseResolver: resolve,
|
|
426
446
|
});
|
|
@@ -433,13 +453,13 @@ function init(options: Object = {}) {
|
|
|
433
453
|
.catch((error) => reject(error));
|
|
434
454
|
});
|
|
435
455
|
});
|
|
436
|
-
}
|
|
456
|
+
}
|
|
437
457
|
|
|
438
458
|
function showNativePrompt(): Promise<void> {
|
|
439
459
|
return new Promise(function (resolve, reject) {
|
|
440
460
|
if (!doesOneSignalExist()) {
|
|
441
461
|
vueOneSignalFunctionQueue.push({
|
|
442
|
-
name:
|
|
462
|
+
name: 'showNativePrompt',
|
|
443
463
|
args: arguments,
|
|
444
464
|
promiseResolver: resolve,
|
|
445
465
|
});
|
|
@@ -452,13 +472,13 @@ function init(options: Object = {}) {
|
|
|
452
472
|
.catch((error) => reject(error));
|
|
453
473
|
});
|
|
454
474
|
});
|
|
455
|
-
}
|
|
475
|
+
}
|
|
456
476
|
|
|
457
477
|
function showSlidedownPrompt(options): Promise<void> {
|
|
458
478
|
return new Promise(function (resolve, reject) {
|
|
459
479
|
if (!doesOneSignalExist()) {
|
|
460
480
|
vueOneSignalFunctionQueue.push({
|
|
461
|
-
name:
|
|
481
|
+
name: 'showSlidedownPrompt',
|
|
462
482
|
args: arguments,
|
|
463
483
|
promiseResolver: resolve,
|
|
464
484
|
});
|
|
@@ -471,13 +491,13 @@ function init(options: Object = {}) {
|
|
|
471
491
|
.catch((error) => reject(error));
|
|
472
492
|
});
|
|
473
493
|
});
|
|
474
|
-
}
|
|
494
|
+
}
|
|
475
495
|
|
|
476
496
|
function showCategorySlidedown(options): Promise<void> {
|
|
477
497
|
return new Promise(function (resolve, reject) {
|
|
478
498
|
if (!doesOneSignalExist()) {
|
|
479
499
|
vueOneSignalFunctionQueue.push({
|
|
480
|
-
name:
|
|
500
|
+
name: 'showCategorySlidedown',
|
|
481
501
|
args: arguments,
|
|
482
502
|
promiseResolver: resolve,
|
|
483
503
|
});
|
|
@@ -490,13 +510,13 @@ function init(options: Object = {}) {
|
|
|
490
510
|
.catch((error) => reject(error));
|
|
491
511
|
});
|
|
492
512
|
});
|
|
493
|
-
}
|
|
513
|
+
}
|
|
494
514
|
|
|
495
515
|
function showSmsSlidedown(options): Promise<void> {
|
|
496
516
|
return new Promise(function (resolve, reject) {
|
|
497
517
|
if (!doesOneSignalExist()) {
|
|
498
518
|
vueOneSignalFunctionQueue.push({
|
|
499
|
-
name:
|
|
519
|
+
name: 'showSmsSlidedown',
|
|
500
520
|
args: arguments,
|
|
501
521
|
promiseResolver: resolve,
|
|
502
522
|
});
|
|
@@ -509,13 +529,13 @@ function init(options: Object = {}) {
|
|
|
509
529
|
.catch((error) => reject(error));
|
|
510
530
|
});
|
|
511
531
|
});
|
|
512
|
-
}
|
|
532
|
+
}
|
|
513
533
|
|
|
514
534
|
function showEmailSlidedown(options): Promise<void> {
|
|
515
535
|
return new Promise(function (resolve, reject) {
|
|
516
536
|
if (!doesOneSignalExist()) {
|
|
517
537
|
vueOneSignalFunctionQueue.push({
|
|
518
|
-
name:
|
|
538
|
+
name: 'showEmailSlidedown',
|
|
519
539
|
args: arguments,
|
|
520
540
|
promiseResolver: resolve,
|
|
521
541
|
});
|
|
@@ -528,13 +548,13 @@ function init(options: Object = {}) {
|
|
|
528
548
|
.catch((error) => reject(error));
|
|
529
549
|
});
|
|
530
550
|
});
|
|
531
|
-
}
|
|
551
|
+
}
|
|
532
552
|
|
|
533
553
|
function showSmsAndEmailSlidedown(options): Promise<void> {
|
|
534
554
|
return new Promise(function (resolve, reject) {
|
|
535
555
|
if (!doesOneSignalExist()) {
|
|
536
556
|
vueOneSignalFunctionQueue.push({
|
|
537
|
-
name:
|
|
557
|
+
name: 'showSmsAndEmailSlidedown',
|
|
538
558
|
args: arguments,
|
|
539
559
|
promiseResolver: resolve,
|
|
540
560
|
});
|
|
@@ -547,13 +567,13 @@ function init(options: Object = {}) {
|
|
|
547
567
|
.catch((error) => reject(error));
|
|
548
568
|
});
|
|
549
569
|
});
|
|
550
|
-
}
|
|
570
|
+
}
|
|
551
571
|
|
|
552
572
|
function getNotificationPermission(onComplete): Promise<NotificationPermission> {
|
|
553
573
|
return new Promise(function (resolve, reject) {
|
|
554
574
|
if (!doesOneSignalExist()) {
|
|
555
575
|
vueOneSignalFunctionQueue.push({
|
|
556
|
-
name:
|
|
576
|
+
name: 'getNotificationPermission',
|
|
557
577
|
args: arguments,
|
|
558
578
|
promiseResolver: resolve,
|
|
559
579
|
});
|
|
@@ -566,13 +586,13 @@ function init(options: Object = {}) {
|
|
|
566
586
|
.catch((error) => reject(error));
|
|
567
587
|
});
|
|
568
588
|
});
|
|
569
|
-
}
|
|
589
|
+
}
|
|
570
590
|
|
|
571
591
|
function getUserId(callback): Promise<string | undefined | null> {
|
|
572
592
|
return new Promise(function (resolve, reject) {
|
|
573
593
|
if (!doesOneSignalExist()) {
|
|
574
594
|
vueOneSignalFunctionQueue.push({
|
|
575
|
-
name:
|
|
595
|
+
name: 'getUserId',
|
|
576
596
|
args: arguments,
|
|
577
597
|
promiseResolver: resolve,
|
|
578
598
|
});
|
|
@@ -585,13 +605,13 @@ function init(options: Object = {}) {
|
|
|
585
605
|
.catch((error) => reject(error));
|
|
586
606
|
});
|
|
587
607
|
});
|
|
588
|
-
}
|
|
608
|
+
}
|
|
589
609
|
|
|
590
610
|
function getSubscription(callback): Promise<boolean> {
|
|
591
611
|
return new Promise(function (resolve, reject) {
|
|
592
612
|
if (!doesOneSignalExist()) {
|
|
593
613
|
vueOneSignalFunctionQueue.push({
|
|
594
|
-
name:
|
|
614
|
+
name: 'getSubscription',
|
|
595
615
|
args: arguments,
|
|
596
616
|
promiseResolver: resolve,
|
|
597
617
|
});
|
|
@@ -604,13 +624,13 @@ function init(options: Object = {}) {
|
|
|
604
624
|
.catch((error) => reject(error));
|
|
605
625
|
});
|
|
606
626
|
});
|
|
607
|
-
}
|
|
627
|
+
}
|
|
608
628
|
|
|
609
629
|
function setEmail(email, options): Promise<string|null> {
|
|
610
630
|
return new Promise(function (resolve, reject) {
|
|
611
631
|
if (!doesOneSignalExist()) {
|
|
612
632
|
vueOneSignalFunctionQueue.push({
|
|
613
|
-
name:
|
|
633
|
+
name: 'setEmail',
|
|
614
634
|
args: arguments,
|
|
615
635
|
promiseResolver: resolve,
|
|
616
636
|
});
|
|
@@ -623,13 +643,13 @@ function init(options: Object = {}) {
|
|
|
623
643
|
.catch((error) => reject(error));
|
|
624
644
|
});
|
|
625
645
|
});
|
|
626
|
-
}
|
|
646
|
+
}
|
|
627
647
|
|
|
628
648
|
function setSMSNumber(smsNumber, options): Promise<string | null> {
|
|
629
649
|
return new Promise(function (resolve, reject) {
|
|
630
650
|
if (!doesOneSignalExist()) {
|
|
631
651
|
vueOneSignalFunctionQueue.push({
|
|
632
|
-
name:
|
|
652
|
+
name: 'setSMSNumber',
|
|
633
653
|
args: arguments,
|
|
634
654
|
promiseResolver: resolve,
|
|
635
655
|
});
|
|
@@ -642,13 +662,13 @@ function init(options: Object = {}) {
|
|
|
642
662
|
.catch((error) => reject(error));
|
|
643
663
|
});
|
|
644
664
|
});
|
|
645
|
-
}
|
|
665
|
+
}
|
|
646
666
|
|
|
647
667
|
function logoutEmail(): Promise<void> {
|
|
648
668
|
return new Promise(function (resolve, reject) {
|
|
649
669
|
if (!doesOneSignalExist()) {
|
|
650
670
|
vueOneSignalFunctionQueue.push({
|
|
651
|
-
name:
|
|
671
|
+
name: 'logoutEmail',
|
|
652
672
|
args: arguments,
|
|
653
673
|
promiseResolver: resolve,
|
|
654
674
|
});
|
|
@@ -661,13 +681,13 @@ function init(options: Object = {}) {
|
|
|
661
681
|
.catch((error) => reject(error));
|
|
662
682
|
});
|
|
663
683
|
});
|
|
664
|
-
}
|
|
684
|
+
}
|
|
665
685
|
|
|
666
686
|
function logoutSMS(): Promise<void> {
|
|
667
687
|
return new Promise(function (resolve, reject) {
|
|
668
688
|
if (!doesOneSignalExist()) {
|
|
669
689
|
vueOneSignalFunctionQueue.push({
|
|
670
|
-
name:
|
|
690
|
+
name: 'logoutSMS',
|
|
671
691
|
args: arguments,
|
|
672
692
|
promiseResolver: resolve,
|
|
673
693
|
});
|
|
@@ -680,13 +700,13 @@ function init(options: Object = {}) {
|
|
|
680
700
|
.catch((error) => reject(error));
|
|
681
701
|
});
|
|
682
702
|
});
|
|
683
|
-
}
|
|
703
|
+
}
|
|
684
704
|
|
|
685
705
|
function setExternalUserId(externalUserId, authHash): Promise<void> {
|
|
686
706
|
return new Promise(function (resolve, reject) {
|
|
687
707
|
if (!doesOneSignalExist()) {
|
|
688
708
|
vueOneSignalFunctionQueue.push({
|
|
689
|
-
name:
|
|
709
|
+
name: 'setExternalUserId',
|
|
690
710
|
args: arguments,
|
|
691
711
|
promiseResolver: resolve,
|
|
692
712
|
});
|
|
@@ -699,13 +719,13 @@ function init(options: Object = {}) {
|
|
|
699
719
|
.catch((error) => reject(error));
|
|
700
720
|
});
|
|
701
721
|
});
|
|
702
|
-
}
|
|
722
|
+
}
|
|
703
723
|
|
|
704
724
|
function removeExternalUserId(): Promise<void> {
|
|
705
725
|
return new Promise(function (resolve, reject) {
|
|
706
726
|
if (!doesOneSignalExist()) {
|
|
707
727
|
vueOneSignalFunctionQueue.push({
|
|
708
|
-
name:
|
|
728
|
+
name: 'removeExternalUserId',
|
|
709
729
|
args: arguments,
|
|
710
730
|
promiseResolver: resolve,
|
|
711
731
|
});
|
|
@@ -718,13 +738,13 @@ function init(options: Object = {}) {
|
|
|
718
738
|
.catch((error) => reject(error));
|
|
719
739
|
});
|
|
720
740
|
});
|
|
721
|
-
}
|
|
741
|
+
}
|
|
722
742
|
|
|
723
743
|
function getExternalUserId(): Promise<string | undefined | null> {
|
|
724
744
|
return new Promise(function (resolve, reject) {
|
|
725
745
|
if (!doesOneSignalExist()) {
|
|
726
746
|
vueOneSignalFunctionQueue.push({
|
|
727
|
-
name:
|
|
747
|
+
name: 'getExternalUserId',
|
|
728
748
|
args: arguments,
|
|
729
749
|
promiseResolver: resolve,
|
|
730
750
|
});
|
|
@@ -737,13 +757,13 @@ function init(options: Object = {}) {
|
|
|
737
757
|
.catch((error) => reject(error));
|
|
738
758
|
});
|
|
739
759
|
});
|
|
740
|
-
}
|
|
760
|
+
}
|
|
741
761
|
|
|
742
762
|
function provideUserConsent(consent): Promise<void> {
|
|
743
763
|
return new Promise(function (resolve, reject) {
|
|
744
764
|
if (!doesOneSignalExist()) {
|
|
745
765
|
vueOneSignalFunctionQueue.push({
|
|
746
|
-
name:
|
|
766
|
+
name: 'provideUserConsent',
|
|
747
767
|
args: arguments,
|
|
748
768
|
promiseResolver: resolve,
|
|
749
769
|
});
|
|
@@ -756,13 +776,13 @@ function init(options: Object = {}) {
|
|
|
756
776
|
.catch((error) => reject(error));
|
|
757
777
|
});
|
|
758
778
|
});
|
|
759
|
-
}
|
|
779
|
+
}
|
|
760
780
|
|
|
761
781
|
function getEmailId(callback): Promise<string | null | undefined> {
|
|
762
782
|
return new Promise(function (resolve, reject) {
|
|
763
783
|
if (!doesOneSignalExist()) {
|
|
764
784
|
vueOneSignalFunctionQueue.push({
|
|
765
|
-
name:
|
|
785
|
+
name: 'getEmailId',
|
|
766
786
|
args: arguments,
|
|
767
787
|
promiseResolver: resolve,
|
|
768
788
|
});
|
|
@@ -775,13 +795,13 @@ function init(options: Object = {}) {
|
|
|
775
795
|
.catch((error) => reject(error));
|
|
776
796
|
});
|
|
777
797
|
});
|
|
778
|
-
}
|
|
798
|
+
}
|
|
779
799
|
|
|
780
800
|
function getSMSId(callback): Promise<string | null | undefined> {
|
|
781
801
|
return new Promise(function (resolve, reject) {
|
|
782
802
|
if (!doesOneSignalExist()) {
|
|
783
803
|
vueOneSignalFunctionQueue.push({
|
|
784
|
-
name:
|
|
804
|
+
name: 'getSMSId',
|
|
785
805
|
args: arguments,
|
|
786
806
|
promiseResolver: resolve,
|
|
787
807
|
});
|
|
@@ -794,13 +814,13 @@ function init(options: Object = {}) {
|
|
|
794
814
|
.catch((error) => reject(error));
|
|
795
815
|
});
|
|
796
816
|
});
|
|
797
|
-
}
|
|
817
|
+
}
|
|
798
818
|
|
|
799
819
|
function sendOutcome(outcomeName, outcomeWeight): Promise<void> {
|
|
800
820
|
return new Promise(function (resolve, reject) {
|
|
801
821
|
if (!doesOneSignalExist()) {
|
|
802
822
|
vueOneSignalFunctionQueue.push({
|
|
803
|
-
name:
|
|
823
|
+
name: 'sendOutcome',
|
|
804
824
|
args: arguments,
|
|
805
825
|
promiseResolver: resolve,
|
|
806
826
|
});
|
|
@@ -813,7 +833,7 @@ function init(options: Object = {}) {
|
|
|
813
833
|
.catch((error) => reject(error));
|
|
814
834
|
});
|
|
815
835
|
});
|
|
816
|
-
}
|
|
836
|
+
}
|
|
817
837
|
|
|
818
838
|
const OneSignalVue: IOneSignal = {
|
|
819
839
|
init,
|
package/package.json
CHANGED
package/rollup.config.js
CHANGED
package/index.d.ts
DELETED
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
declare module 'vue-onesignal' {
|
|
2
|
-
interface Action<T>{ (item: T): void; }
|
|
3
|
-
interface AutoPromptOptions { force?: boolean; forceSlidedownOverNative?: boolean; slidedownPromptOptions?: IOneSignalAutoPromptOptions; }
|
|
4
|
-
interface RegisterOptions { modalPrompt?: boolean; httpPermissionRequest?: boolean; slidedown?: boolean; autoAccept?: boolean }
|
|
5
|
-
interface SetSMSOptions { identifierAuthHash?: string; }
|
|
6
|
-
interface SetEmailOptions { identifierAuthHash?: string; emailAuthHash?: string; }
|
|
7
|
-
interface TagsObject<T> { [key: string]: T; }
|
|
8
|
-
interface IOneSignalAutoPromptOptions { force?: boolean; forceSlidedownOverNative?: boolean; isInUpdateMode?: boolean; categoryOptions?: IOneSignalCategories; }
|
|
9
|
-
interface IOneSignalCategories { positiveUpdateButton: string; negativeUpdateButton: string; savingButtonText: string; errorButtonText: string; updateMessage: string; tags: IOneSignalTagCategory[]; }
|
|
10
|
-
export interface IOneSignalTagCategory { tag: string; label: string; checked?: boolean; }
|
|
11
|
-
|
|
12
|
-
interface IOneSignal {
|
|
13
|
-
init(options?: any): Promise<void>
|
|
14
|
-
on(event: string, listener: Function): void
|
|
15
|
-
off(event: string, listener: Function): void
|
|
16
|
-
once(event: string, listener: Function): void
|
|
17
|
-
isPushNotificationsEnabled(callback?: Action<boolean>): Promise<boolean>
|
|
18
|
-
showHttpPrompt(options?: AutoPromptOptions): Promise<void>
|
|
19
|
-
registerForPushNotifications(options?: RegisterOptions): Promise<void>
|
|
20
|
-
setDefaultNotificationUrl(url: string): Promise<void>
|
|
21
|
-
setDefaultTitle(title: string): Promise<void>
|
|
22
|
-
getTags(callback?: Action<any>): Promise<void>
|
|
23
|
-
sendTag(key: string, value: any, callback?: Action<Object>): Promise<Object | null>
|
|
24
|
-
sendTags(tags: TagsObject<any>, callback?: Action<Object>): Promise<Object | null>
|
|
25
|
-
deleteTag(tag: string): Promise<Array<string>>
|
|
26
|
-
deleteTags(tags: Array<string>, callback?: Action<Array<string>>): Promise<Array<string>>
|
|
27
|
-
addListenerForNotificationOpened(callback?: Action<Notification>): Promise<void>
|
|
28
|
-
setSubscription(newSubscription: boolean): Promise<void>
|
|
29
|
-
showHttpPermissionRequest(options?: AutoPromptOptions): Promise<any>
|
|
30
|
-
showNativePrompt(): Promise<void>
|
|
31
|
-
showSlidedownPrompt(options?: AutoPromptOptions): Promise<void>
|
|
32
|
-
showCategorySlidedown(options?: AutoPromptOptions): Promise<void>
|
|
33
|
-
showSmsSlidedown(options?: AutoPromptOptions): Promise<void>
|
|
34
|
-
showEmailSlidedown(options?: AutoPromptOptions): Promise<void>
|
|
35
|
-
showSmsAndEmailSlidedown(options?: AutoPromptOptions): Promise<void>
|
|
36
|
-
getNotificationPermission(onComplete?: Function): Promise<NotificationPermission>
|
|
37
|
-
getUserId(callback?: Action<string | undefined | null>): Promise<string | undefined | null>
|
|
38
|
-
getSubscription(callback?: Action<boolean>): Promise<boolean>
|
|
39
|
-
setEmail(email: string, options?: SetEmailOptions): Promise<string|null>
|
|
40
|
-
setSMSNumber(smsNumber: string, options?: SetSMSOptions): Promise<string | null>
|
|
41
|
-
logoutEmail(): Promise<void>
|
|
42
|
-
logoutSMS(): Promise<void>
|
|
43
|
-
setExternalUserId(externalUserId: string | undefined | null, authHash?: string): Promise<void>
|
|
44
|
-
removeExternalUserId(): Promise<void>
|
|
45
|
-
getExternalUserId(): Promise<string | undefined | null>
|
|
46
|
-
provideUserConsent(consent: boolean): Promise<void>
|
|
47
|
-
getEmailId(callback?: Action<string | undefined>): Promise<string | null | undefined>
|
|
48
|
-
getSMSId(callback?: Action<string | undefined>): Promise<string | null | undefined>
|
|
49
|
-
sendOutcome(outcomeName: string, outcomeWeight?: number | undefined): Promise<void>
|
|
50
|
-
}
|
|
51
|
-
const OneSignalVue: IOneSignal;
|
|
52
|
-
export default OneSignalVue;
|
|
53
|
-
}
|