@blotoutio/edgetag-sdk-browser 0.6.3 → 0.6.5
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/index.js +174 -119
- package/package.json +1 -1
package/index.js
CHANGED
|
@@ -101,24 +101,56 @@
|
|
|
101
101
|
saveData('session', currentSession);
|
|
102
102
|
};
|
|
103
103
|
const saveLocal = (value, key) => {
|
|
104
|
-
|
|
104
|
+
try {
|
|
105
|
+
if (!localStorage) {
|
|
106
|
+
return;
|
|
107
|
+
}
|
|
108
|
+
localStorage.setItem(key, JSON.stringify(value));
|
|
109
|
+
}
|
|
110
|
+
catch (_a) {
|
|
111
|
+
console.log('Local storage not supported');
|
|
112
|
+
}
|
|
105
113
|
};
|
|
106
114
|
const getLocal = (key) => {
|
|
107
|
-
|
|
108
|
-
|
|
115
|
+
try {
|
|
116
|
+
if (!localStorage) {
|
|
117
|
+
return {};
|
|
118
|
+
}
|
|
119
|
+
const data = localStorage.getItem(key);
|
|
120
|
+
if (!data) {
|
|
121
|
+
return {};
|
|
122
|
+
}
|
|
123
|
+
return JSON.parse(data) || {};
|
|
124
|
+
}
|
|
125
|
+
catch (_a) {
|
|
109
126
|
return {};
|
|
110
127
|
}
|
|
111
|
-
return JSON.parse(data) || {};
|
|
112
128
|
};
|
|
113
129
|
const saveSession = (value, key) => {
|
|
114
|
-
|
|
130
|
+
try {
|
|
131
|
+
if (!sessionStorage) {
|
|
132
|
+
return;
|
|
133
|
+
}
|
|
134
|
+
sessionStorage.setItem(key, JSON.stringify(value));
|
|
135
|
+
}
|
|
136
|
+
catch (_a) {
|
|
137
|
+
console.log('Session storage not supported');
|
|
138
|
+
}
|
|
115
139
|
};
|
|
116
140
|
const getSession = (key) => {
|
|
117
|
-
|
|
118
|
-
|
|
141
|
+
try {
|
|
142
|
+
if (!sessionStorage) {
|
|
143
|
+
return {};
|
|
144
|
+
}
|
|
145
|
+
const data = sessionStorage.getItem(key);
|
|
146
|
+
if (!data) {
|
|
147
|
+
return {};
|
|
148
|
+
}
|
|
149
|
+
return JSON.parse(data) || {};
|
|
150
|
+
}
|
|
151
|
+
catch (_a) {
|
|
119
152
|
return {};
|
|
120
153
|
}
|
|
121
|
-
return JSON.parse(data) || {};
|
|
122
154
|
};
|
|
123
155
|
|
|
124
156
|
let endpointUrl = '';
|
|
@@ -228,7 +260,7 @@
|
|
|
228
260
|
return false;
|
|
229
261
|
};
|
|
230
262
|
const allowProvider = (providers, providerId) => {
|
|
231
|
-
if (providers) {
|
|
263
|
+
if (providers && Object.keys(providers).length) {
|
|
232
264
|
const tagProvider = providers[providerId];
|
|
233
265
|
if (!(tagProvider ||
|
|
234
266
|
(providers['all'] === true && tagProvider === undefined) ||
|
|
@@ -336,14 +368,13 @@
|
|
|
336
368
|
// Unique ID creation requires a high quality random # generator. In the browser we therefore
|
|
337
369
|
// require the crypto API and do not support built-in fallback to lower quality random number
|
|
338
370
|
// generators (like Math.random()).
|
|
339
|
-
|
|
340
|
-
|
|
371
|
+
let getRandomValues;
|
|
372
|
+
const rnds8 = new Uint8Array(16);
|
|
341
373
|
function rng() {
|
|
342
374
|
// lazy load so that environments that need to polyfill have a chance to do so
|
|
343
375
|
if (!getRandomValues) {
|
|
344
|
-
// getRandomValues needs to be invoked in a context where "this" is a Crypto implementation.
|
|
345
|
-
|
|
346
|
-
getRandomValues = typeof crypto !== 'undefined' && crypto.getRandomValues && crypto.getRandomValues.bind(crypto) || typeof msCrypto !== 'undefined' && typeof msCrypto.getRandomValues === 'function' && msCrypto.getRandomValues.bind(msCrypto);
|
|
376
|
+
// getRandomValues needs to be invoked in a context where "this" is a Crypto implementation.
|
|
377
|
+
getRandomValues = typeof crypto !== 'undefined' && crypto.getRandomValues && crypto.getRandomValues.bind(crypto);
|
|
347
378
|
|
|
348
379
|
if (!getRandomValues) {
|
|
349
380
|
throw new Error('crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported');
|
|
@@ -364,27 +395,16 @@
|
|
|
364
395
|
* XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
|
|
365
396
|
*/
|
|
366
397
|
|
|
367
|
-
|
|
398
|
+
const byteToHex = [];
|
|
368
399
|
|
|
369
|
-
for (
|
|
370
|
-
byteToHex.push((i + 0x100).toString(16).
|
|
400
|
+
for (let i = 0; i < 256; ++i) {
|
|
401
|
+
byteToHex.push((i + 0x100).toString(16).slice(1));
|
|
371
402
|
}
|
|
372
403
|
|
|
373
|
-
function
|
|
374
|
-
var offset = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
|
|
404
|
+
function unsafeStringify(arr, offset = 0) {
|
|
375
405
|
// Note: Be careful editing this code! It's been tuned for performance
|
|
376
406
|
// and works in ways you may not expect. See https://github.com/uuidjs/uuid/pull/434
|
|
377
|
-
|
|
378
|
-
// of the following:
|
|
379
|
-
// - One or more input array values don't map to a hex octet (leading to
|
|
380
|
-
// "undefined" in the uuid)
|
|
381
|
-
// - Invalid input values for the RFC `version` or `variant` fields
|
|
382
|
-
|
|
383
|
-
if (!validate(uuid)) {
|
|
384
|
-
throw TypeError('Stringified UUID is invalid');
|
|
385
|
-
}
|
|
386
|
-
|
|
387
|
-
return uuid;
|
|
407
|
+
return (byteToHex[arr[offset + 0]] + byteToHex[arr[offset + 1]] + byteToHex[arr[offset + 2]] + byteToHex[arr[offset + 3]] + '-' + byteToHex[arr[offset + 4]] + byteToHex[arr[offset + 5]] + '-' + byteToHex[arr[offset + 6]] + byteToHex[arr[offset + 7]] + '-' + byteToHex[arr[offset + 8]] + byteToHex[arr[offset + 9]] + '-' + byteToHex[arr[offset + 10]] + byteToHex[arr[offset + 11]] + byteToHex[arr[offset + 12]] + byteToHex[arr[offset + 13]] + byteToHex[arr[offset + 14]] + byteToHex[arr[offset + 15]]).toLowerCase();
|
|
388
408
|
}
|
|
389
409
|
|
|
390
410
|
function parse(uuid) {
|
|
@@ -392,8 +412,8 @@
|
|
|
392
412
|
throw TypeError('Invalid UUID');
|
|
393
413
|
}
|
|
394
414
|
|
|
395
|
-
|
|
396
|
-
|
|
415
|
+
let v;
|
|
416
|
+
const arr = new Uint8Array(16); // Parse ########-....-....-....-............
|
|
397
417
|
|
|
398
418
|
arr[0] = (v = parseInt(uuid.slice(0, 8), 16)) >>> 24;
|
|
399
419
|
arr[1] = v >>> 16 & 0xff;
|
|
@@ -422,19 +442,21 @@
|
|
|
422
442
|
function stringToBytes(str) {
|
|
423
443
|
str = unescape(encodeURIComponent(str)); // UTF8 escape
|
|
424
444
|
|
|
425
|
-
|
|
445
|
+
const bytes = [];
|
|
426
446
|
|
|
427
|
-
for (
|
|
447
|
+
for (let i = 0; i < str.length; ++i) {
|
|
428
448
|
bytes.push(str.charCodeAt(i));
|
|
429
449
|
}
|
|
430
450
|
|
|
431
451
|
return bytes;
|
|
432
452
|
}
|
|
433
453
|
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
function v35
|
|
454
|
+
const DNS = '6ba7b810-9dad-11d1-80b4-00c04fd430c8';
|
|
455
|
+
const URL$1 = '6ba7b811-9dad-11d1-80b4-00c04fd430c8';
|
|
456
|
+
function v35(name, version, hashfunc) {
|
|
437
457
|
function generateUUID(value, namespace, buf, offset) {
|
|
458
|
+
var _namespace;
|
|
459
|
+
|
|
438
460
|
if (typeof value === 'string') {
|
|
439
461
|
value = stringToBytes(value);
|
|
440
462
|
}
|
|
@@ -443,14 +465,14 @@
|
|
|
443
465
|
namespace = parse(namespace);
|
|
444
466
|
}
|
|
445
467
|
|
|
446
|
-
if (namespace.length !== 16) {
|
|
468
|
+
if (((_namespace = namespace) === null || _namespace === void 0 ? void 0 : _namespace.length) !== 16) {
|
|
447
469
|
throw TypeError('Namespace must be array-like (16 iterable integer values, 0-255)');
|
|
448
470
|
} // Compute hash of namespace and value, Per 4.3
|
|
449
471
|
// Future: Use spread syntax when supported on all platforms, e.g. `bytes =
|
|
450
472
|
// hashfunc([...namespace, ... value])`
|
|
451
473
|
|
|
452
474
|
|
|
453
|
-
|
|
475
|
+
let bytes = new Uint8Array(16 + value.length);
|
|
454
476
|
bytes.set(namespace);
|
|
455
477
|
bytes.set(value, namespace.length);
|
|
456
478
|
bytes = hashfunc(bytes);
|
|
@@ -460,14 +482,14 @@
|
|
|
460
482
|
if (buf) {
|
|
461
483
|
offset = offset || 0;
|
|
462
484
|
|
|
463
|
-
for (
|
|
485
|
+
for (let i = 0; i < 16; ++i) {
|
|
464
486
|
buf[offset + i] = bytes[i];
|
|
465
487
|
}
|
|
466
488
|
|
|
467
489
|
return buf;
|
|
468
490
|
}
|
|
469
491
|
|
|
470
|
-
return
|
|
492
|
+
return unsafeStringify(bytes);
|
|
471
493
|
} // Function#name is not settable on some platforms (#270)
|
|
472
494
|
|
|
473
495
|
|
|
@@ -503,11 +525,11 @@
|
|
|
503
525
|
*/
|
|
504
526
|
function md5(bytes) {
|
|
505
527
|
if (typeof bytes === 'string') {
|
|
506
|
-
|
|
528
|
+
const msg = unescape(encodeURIComponent(bytes)); // UTF8 escape
|
|
507
529
|
|
|
508
530
|
bytes = new Uint8Array(msg.length);
|
|
509
531
|
|
|
510
|
-
for (
|
|
532
|
+
for (let i = 0; i < msg.length; ++i) {
|
|
511
533
|
bytes[i] = msg.charCodeAt(i);
|
|
512
534
|
}
|
|
513
535
|
}
|
|
@@ -520,13 +542,13 @@
|
|
|
520
542
|
|
|
521
543
|
|
|
522
544
|
function md5ToHexEncodedArray(input) {
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
545
|
+
const output = [];
|
|
546
|
+
const length32 = input.length * 32;
|
|
547
|
+
const hexTab = '0123456789abcdef';
|
|
526
548
|
|
|
527
|
-
for (
|
|
528
|
-
|
|
529
|
-
|
|
549
|
+
for (let i = 0; i < length32; i += 8) {
|
|
550
|
+
const x = input[i >> 5] >>> i % 32 & 0xff;
|
|
551
|
+
const hex = parseInt(hexTab.charAt(x >>> 4 & 0x0f) + hexTab.charAt(x & 0x0f), 16);
|
|
530
552
|
output.push(hex);
|
|
531
553
|
}
|
|
532
554
|
|
|
@@ -549,16 +571,16 @@
|
|
|
549
571
|
/* append padding */
|
|
550
572
|
x[len >> 5] |= 0x80 << len % 32;
|
|
551
573
|
x[getOutputLength(len) - 1] = len;
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
for (
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
|
|
574
|
+
let a = 1732584193;
|
|
575
|
+
let b = -271733879;
|
|
576
|
+
let c = -1732584194;
|
|
577
|
+
let d = 271733878;
|
|
578
|
+
|
|
579
|
+
for (let i = 0; i < x.length; i += 16) {
|
|
580
|
+
const olda = a;
|
|
581
|
+
const oldb = b;
|
|
582
|
+
const oldc = c;
|
|
583
|
+
const oldd = d;
|
|
562
584
|
a = md5ff(a, b, c, d, x[i], 7, -680876936);
|
|
563
585
|
d = md5ff(d, a, b, c, x[i + 1], 12, -389564586);
|
|
564
586
|
c = md5ff(c, d, a, b, x[i + 2], 17, 606105819);
|
|
@@ -642,10 +664,10 @@
|
|
|
642
664
|
return [];
|
|
643
665
|
}
|
|
644
666
|
|
|
645
|
-
|
|
646
|
-
|
|
667
|
+
const length8 = input.length * 8;
|
|
668
|
+
const output = new Uint32Array(getOutputLength(length8));
|
|
647
669
|
|
|
648
|
-
for (
|
|
670
|
+
for (let i = 0; i < length8; i += 8) {
|
|
649
671
|
output[i >> 5] |= (input[i / 8] & 0xff) << i % 32;
|
|
650
672
|
}
|
|
651
673
|
|
|
@@ -658,8 +680,8 @@
|
|
|
658
680
|
|
|
659
681
|
|
|
660
682
|
function safeAdd(x, y) {
|
|
661
|
-
|
|
662
|
-
|
|
683
|
+
const lsw = (x & 0xffff) + (y & 0xffff);
|
|
684
|
+
const msw = (x >> 16) + (y >> 16) + (lsw >> 16);
|
|
663
685
|
return msw << 16 | lsw & 0xffff;
|
|
664
686
|
}
|
|
665
687
|
/*
|
|
@@ -697,9 +719,18 @@
|
|
|
697
719
|
|
|
698
720
|
v35('v3', 0x30, md5);
|
|
699
721
|
|
|
722
|
+
const randomUUID = typeof crypto !== 'undefined' && crypto.randomUUID && crypto.randomUUID.bind(crypto);
|
|
723
|
+
var native = {
|
|
724
|
+
randomUUID
|
|
725
|
+
};
|
|
726
|
+
|
|
700
727
|
function v4(options, buf, offset) {
|
|
728
|
+
if (native.randomUUID && !buf && !options) {
|
|
729
|
+
return native.randomUUID();
|
|
730
|
+
}
|
|
731
|
+
|
|
701
732
|
options = options || {};
|
|
702
|
-
|
|
733
|
+
const rnds = options.random || (options.rng || rng)(); // Per 4.4, set bits for version and `clock_seq_hi_and_reserved`
|
|
703
734
|
|
|
704
735
|
rnds[6] = rnds[6] & 0x0f | 0x40;
|
|
705
736
|
rnds[8] = rnds[8] & 0x3f | 0x80; // Copy bytes to buffer, if provided
|
|
@@ -707,14 +738,14 @@
|
|
|
707
738
|
if (buf) {
|
|
708
739
|
offset = offset || 0;
|
|
709
740
|
|
|
710
|
-
for (
|
|
741
|
+
for (let i = 0; i < 16; ++i) {
|
|
711
742
|
buf[offset + i] = rnds[i];
|
|
712
743
|
}
|
|
713
744
|
|
|
714
745
|
return buf;
|
|
715
746
|
}
|
|
716
747
|
|
|
717
|
-
return
|
|
748
|
+
return unsafeStringify(rnds);
|
|
718
749
|
}
|
|
719
750
|
|
|
720
751
|
// Adapted from Chris Veness' SHA1 code at
|
|
@@ -740,15 +771,15 @@
|
|
|
740
771
|
}
|
|
741
772
|
|
|
742
773
|
function sha1(bytes) {
|
|
743
|
-
|
|
744
|
-
|
|
774
|
+
const K = [0x5a827999, 0x6ed9eba1, 0x8f1bbcdc, 0xca62c1d6];
|
|
775
|
+
const H = [0x67452301, 0xefcdab89, 0x98badcfe, 0x10325476, 0xc3d2e1f0];
|
|
745
776
|
|
|
746
777
|
if (typeof bytes === 'string') {
|
|
747
|
-
|
|
778
|
+
const msg = unescape(encodeURIComponent(bytes)); // UTF8 escape
|
|
748
779
|
|
|
749
780
|
bytes = [];
|
|
750
781
|
|
|
751
|
-
for (
|
|
782
|
+
for (let i = 0; i < msg.length; ++i) {
|
|
752
783
|
bytes.push(msg.charCodeAt(i));
|
|
753
784
|
}
|
|
754
785
|
} else if (!Array.isArray(bytes)) {
|
|
@@ -757,44 +788,44 @@
|
|
|
757
788
|
}
|
|
758
789
|
|
|
759
790
|
bytes.push(0x80);
|
|
760
|
-
|
|
761
|
-
|
|
762
|
-
|
|
791
|
+
const l = bytes.length / 4 + 2;
|
|
792
|
+
const N = Math.ceil(l / 16);
|
|
793
|
+
const M = new Array(N);
|
|
763
794
|
|
|
764
|
-
for (
|
|
765
|
-
|
|
795
|
+
for (let i = 0; i < N; ++i) {
|
|
796
|
+
const arr = new Uint32Array(16);
|
|
766
797
|
|
|
767
|
-
for (
|
|
768
|
-
arr[j] = bytes[
|
|
798
|
+
for (let j = 0; j < 16; ++j) {
|
|
799
|
+
arr[j] = bytes[i * 64 + j * 4] << 24 | bytes[i * 64 + j * 4 + 1] << 16 | bytes[i * 64 + j * 4 + 2] << 8 | bytes[i * 64 + j * 4 + 3];
|
|
769
800
|
}
|
|
770
801
|
|
|
771
|
-
M[
|
|
802
|
+
M[i] = arr;
|
|
772
803
|
}
|
|
773
804
|
|
|
774
805
|
M[N - 1][14] = (bytes.length - 1) * 8 / Math.pow(2, 32);
|
|
775
806
|
M[N - 1][14] = Math.floor(M[N - 1][14]);
|
|
776
807
|
M[N - 1][15] = (bytes.length - 1) * 8 & 0xffffffff;
|
|
777
808
|
|
|
778
|
-
for (
|
|
779
|
-
|
|
809
|
+
for (let i = 0; i < N; ++i) {
|
|
810
|
+
const W = new Uint32Array(80);
|
|
780
811
|
|
|
781
|
-
for (
|
|
782
|
-
W[t] = M[
|
|
812
|
+
for (let t = 0; t < 16; ++t) {
|
|
813
|
+
W[t] = M[i][t];
|
|
783
814
|
}
|
|
784
815
|
|
|
785
|
-
for (
|
|
786
|
-
W[
|
|
816
|
+
for (let t = 16; t < 80; ++t) {
|
|
817
|
+
W[t] = ROTL(W[t - 3] ^ W[t - 8] ^ W[t - 14] ^ W[t - 16], 1);
|
|
787
818
|
}
|
|
788
819
|
|
|
789
|
-
|
|
790
|
-
|
|
791
|
-
|
|
792
|
-
|
|
793
|
-
|
|
820
|
+
let a = H[0];
|
|
821
|
+
let b = H[1];
|
|
822
|
+
let c = H[2];
|
|
823
|
+
let d = H[3];
|
|
824
|
+
let e = H[4];
|
|
794
825
|
|
|
795
|
-
for (
|
|
796
|
-
|
|
797
|
-
|
|
826
|
+
for (let t = 0; t < 80; ++t) {
|
|
827
|
+
const s = Math.floor(t / 20);
|
|
828
|
+
const T = ROTL(a, 5) + f(s, b, c, d) + e + K[s] + W[t] >>> 0;
|
|
798
829
|
e = d;
|
|
799
830
|
d = c;
|
|
800
831
|
c = ROTL(b, 30) >>> 0;
|
|
@@ -863,21 +894,19 @@
|
|
|
863
894
|
const providerData = {};
|
|
864
895
|
if (providerPackages) {
|
|
865
896
|
Object.values(providerPackages).forEach((pkg) => {
|
|
866
|
-
if (!allowProvider(providers, pkg.name)) {
|
|
897
|
+
if (!pkg || !pkg.tag || !allowProvider(providers, pkg.name)) {
|
|
867
898
|
return;
|
|
868
899
|
}
|
|
869
|
-
|
|
870
|
-
|
|
871
|
-
|
|
872
|
-
|
|
873
|
-
|
|
874
|
-
|
|
875
|
-
|
|
876
|
-
|
|
877
|
-
|
|
878
|
-
|
|
879
|
-
providerData[pkg.name] = result;
|
|
880
|
-
}
|
|
900
|
+
const result = pkg.tag({
|
|
901
|
+
userId,
|
|
902
|
+
eventName,
|
|
903
|
+
eventId,
|
|
904
|
+
data,
|
|
905
|
+
sendTag,
|
|
906
|
+
manifestVariables: getProviderVariables(pkg.name),
|
|
907
|
+
});
|
|
908
|
+
if (result) {
|
|
909
|
+
providerData[pkg.name] = result;
|
|
881
910
|
}
|
|
882
911
|
});
|
|
883
912
|
}
|
|
@@ -891,6 +920,30 @@
|
|
|
891
920
|
});
|
|
892
921
|
};
|
|
893
922
|
|
|
923
|
+
const handleData = (data, options) => {
|
|
924
|
+
if (!data || Object.keys(data).length === 0) {
|
|
925
|
+
console.error('Provide data for data API.');
|
|
926
|
+
return;
|
|
927
|
+
}
|
|
928
|
+
saveKV(data);
|
|
929
|
+
postRequest(getDataURL(), { data }, options).catch(info);
|
|
930
|
+
};
|
|
931
|
+
|
|
932
|
+
const saveDataToEdge = (key, value, provider) => {
|
|
933
|
+
if (!value) {
|
|
934
|
+
return;
|
|
935
|
+
}
|
|
936
|
+
if (typeof value !== 'string') {
|
|
937
|
+
try {
|
|
938
|
+
value = JSON.stringify(value);
|
|
939
|
+
}
|
|
940
|
+
catch (_a) {
|
|
941
|
+
console.log('Error stringify value');
|
|
942
|
+
return;
|
|
943
|
+
}
|
|
944
|
+
}
|
|
945
|
+
handleData({ [`${provider}::${key}`]: value });
|
|
946
|
+
};
|
|
894
947
|
const handleCaptureQuery = (provider, key, persistType) => {
|
|
895
948
|
if (!window) {
|
|
896
949
|
return;
|
|
@@ -899,7 +952,15 @@
|
|
|
899
952
|
if (!params || !params.get(key)) {
|
|
900
953
|
return;
|
|
901
954
|
}
|
|
902
|
-
|
|
955
|
+
const data = params.get(key);
|
|
956
|
+
if (!data) {
|
|
957
|
+
return;
|
|
958
|
+
}
|
|
959
|
+
if (persistType === 'edge') {
|
|
960
|
+
saveDataToEdge(key, data, provider);
|
|
961
|
+
return;
|
|
962
|
+
}
|
|
963
|
+
saveDataPerKey(persistType, provider, data, key);
|
|
903
964
|
};
|
|
904
965
|
const handleCaptureStorage = (provider, key, persistType, location) => {
|
|
905
966
|
let data;
|
|
@@ -909,17 +970,20 @@
|
|
|
909
970
|
break;
|
|
910
971
|
}
|
|
911
972
|
case 'local': {
|
|
912
|
-
data =
|
|
973
|
+
data = getData$1('local', key);
|
|
913
974
|
break;
|
|
914
975
|
}
|
|
915
976
|
case 'session': {
|
|
916
|
-
data =
|
|
917
|
-
break;
|
|
977
|
+
data = getData$1('session', key);
|
|
918
978
|
}
|
|
919
979
|
}
|
|
920
980
|
if (!data) {
|
|
921
981
|
return;
|
|
922
982
|
}
|
|
983
|
+
if (persistType === 'edge') {
|
|
984
|
+
saveDataToEdge(key, data, provider);
|
|
985
|
+
return;
|
|
986
|
+
}
|
|
923
987
|
saveDataPerKey(persistType, provider, data, key);
|
|
924
988
|
};
|
|
925
989
|
const handleCapture = (provider, params) => {
|
|
@@ -1002,15 +1066,6 @@
|
|
|
1002
1066
|
}, options).catch(info);
|
|
1003
1067
|
};
|
|
1004
1068
|
|
|
1005
|
-
const handleData = (data, options) => {
|
|
1006
|
-
if (!data || Object.keys(data).length === 0) {
|
|
1007
|
-
console.error('Provide data for data API.');
|
|
1008
|
-
return;
|
|
1009
|
-
}
|
|
1010
|
-
saveKV(data);
|
|
1011
|
-
postRequest(getDataURL(), { data }, options).catch(info);
|
|
1012
|
-
};
|
|
1013
|
-
|
|
1014
1069
|
const handleGetData = (keys, callback) => {
|
|
1015
1070
|
if (!keys || keys.length === 0) {
|
|
1016
1071
|
console.error('Provide keys for get data API.');
|