@subiz/widget-v4 4.1.59 → 4.1.60

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.
Files changed (59) hide show
  1. package/compiled_src/call/call.js +2 -2
  2. package/compiled_src/chatbox/ChatButton.js +20 -5
  3. package/compiled_src/chatbox/DropdownSelect.js +2 -2
  4. package/compiled_src/chatbox/ImageAttachments.js +2 -2
  5. package/compiled_src/chatbox/MessageInput.js +2 -2
  6. package/compiled_src/chatbox/Order.js +2 -2
  7. package/compiled_src/chatbox/Rating.js +2 -2
  8. package/compiled_src/chatbox/Widget.js +2 -2
  9. package/compiled_src/contact/contact.js +2 -2
  10. package/compiled_src/lib.js +2 -2
  11. package/compiled_src/notif/notif.js +2 -2
  12. package/compiled_src/order/address_picker.js +2 -2
  13. package/compiled_src/order/order.js +2 -2
  14. package/compiled_src/popup/countdown.js +2 -2
  15. package/compiled_src/popup/popup.js +2 -2
  16. package/compiled_src/store/api.js +2 -2
  17. package/compiled_src/store/api_fake.js +2 -2
  18. package/compiled_src/store/store.js +2 -2
  19. package/dist/{841.js → 132.js} +644 -653
  20. package/dist/178.js +1 -1
  21. package/dist/18a02a9c54e.132.js +1 -0
  22. package/dist/18a02a9c54e.178.js +1 -0
  23. package/dist/18a02a9c54e.213.js +1 -0
  24. package/dist/18a02a9c54e.335.js +1 -0
  25. package/dist/{18ca55e1708.362.js → 18a02a9c54e.362.js} +1 -1
  26. package/dist/18a02a9c54e.441.js +1 -0
  27. package/dist/18a02a9c54e.605.js +1 -0
  28. package/dist/{18ca55e1708.782.js → 18a02a9c54e.782.js} +1 -1
  29. package/dist/18a02a9c54e.app.js +1 -0
  30. package/dist/{18ca55e1708.index.html → 18a02a9c54e.index.html} +4 -4
  31. package/dist/{18ca55e1708.library.html → 18a02a9c54e.library.html} +4 -4
  32. package/dist/18a02a9c54e.library.js +1 -0
  33. package/dist/{18ca55e1708.preview.html → 18a02a9c54e.preview.html} +1 -1
  34. package/dist/18a02a9c54e.preview.js +1 -0
  35. package/dist/18a02a9c54e.screenshoot.js +1 -0
  36. package/dist/18a02a9c54e.webview.js +1 -0
  37. package/dist/213.js +106 -122
  38. package/dist/335.js +27 -27
  39. package/dist/362.js +1 -1
  40. package/dist/441.js +2855 -0
  41. package/dist/605.js +53 -52
  42. package/dist/782.js +1 -1
  43. package/dist/HASH +1 -1
  44. package/dist/malicious-app.js +3 -9
  45. package/dist/screenshoot.html +1 -1
  46. package/dist/screenshoot.js +622 -493
  47. package/package.json +1 -1
  48. package/src/chatbox/ChatButton.js +20 -5
  49. package/dist/18ca55e1708.178.js +0 -1
  50. package/dist/18ca55e1708.213.js +0 -1
  51. package/dist/18ca55e1708.335.js +0 -1
  52. package/dist/18ca55e1708.605.js +0 -1
  53. package/dist/18ca55e1708.841.js +0 -1
  54. package/dist/18ca55e1708.app.js +0 -1
  55. package/dist/18ca55e1708.library.js +0 -1
  56. package/dist/18ca55e1708.preview.js +0 -1
  57. package/dist/18ca55e1708.screenshoot.js +0 -1
  58. package/dist/18ca55e1708.webview.js +0 -1
  59. /package/dist/{18ca55e1708.678.js → 18a02a9c54e.678.js} +0 -0
@@ -366,7 +366,7 @@ module.exports = function (maxBatch, maxDelay, handler) {
366
366
 
367
367
  this.push = function (payload, priority) {
368
368
  return new Promise(function (resolve) {
369
- myBuffers.push({payload: payload, priority: priority, created: Date.now(), rs: resolve})
369
+ myBuffers.push({ payload: payload, priority: priority, created: Date.now(), rs: resolve })
370
370
  myFlush()
371
371
  })
372
372
  }
@@ -380,7 +380,7 @@ module.exports = function (maxBatch, maxDelay, handler) {
380
380
  /***/ 3538:
381
381
  /***/ ((module) => {
382
382
 
383
- function map(collection, predicate) {
383
+ function map (collection, predicate) {
384
384
  if (!collection) return []
385
385
  if (!predicate) {
386
386
  predicate = function (a) {
@@ -408,7 +408,7 @@ function map(collection, predicate) {
408
408
  return out
409
409
  }
410
410
 
411
- module.exports = {map: map}
411
+ module.exports = { map: map }
412
412
 
413
413
 
414
414
  /***/ }),
@@ -435,7 +435,7 @@ module.exports = {
435
435
  /***/ ((module) => {
436
436
 
437
437
  // loop keep calling promise sequenctially until the promise resolve a false value
438
- module.exports = function loop(promise) {
438
+ module.exports = function loop (promise) {
439
439
  var out = promise()
440
440
  if (!out || !out.then) {
441
441
  var saveout = out
@@ -459,7 +459,7 @@ module.exports = function loop(promise) {
459
459
 
460
460
  var co = __webpack_require__(3538)
461
461
 
462
- module.exports = function (collections, func, limit) {
462
+ module.exports = function(collections, func, limit) {
463
463
  if (typeof func === 'number') {
464
464
  // backword compatible
465
465
  let tmp = limit
@@ -467,12 +467,12 @@ module.exports = function (collections, func, limit) {
467
467
  func = tmp
468
468
  }
469
469
 
470
- if (!func) func = function () {}
470
+ if (!func) func = function() {}
471
471
  if (typeof limit !== 'number' || limit <= 0) limit = 1
472
472
 
473
473
  // prepare input map
474
474
  var ins = {} // inputs
475
- co.map(collections, function (i, k) {
475
+ co.map(collections, function(i, k) {
476
476
  ins[k] = i
477
477
  })
478
478
 
@@ -481,14 +481,14 @@ module.exports = function (collections, func, limit) {
481
481
  if (Object.keys(ins).length < limit) limit = Object.keys(ins).length
482
482
 
483
483
  var outs = {} // outputs
484
- return new Promise(function (resolve) {
484
+ return new Promise(function(resolve) {
485
485
  let total = Object.keys(ins).length
486
486
 
487
- var doJob = function () {
487
+ var doJob = function() {
488
488
  var keys = Object.keys(ins)
489
489
  if (keys.length === 0) return
490
490
 
491
- var key = keys.shift()
491
+ var key = keys.pop()
492
492
  var value = ins[key]
493
493
  delete ins[key]
494
494
 
@@ -497,7 +497,7 @@ module.exports = function (collections, func, limit) {
497
497
  // we treat the out put as a promise
498
498
  if (!pro || !pro.then) pro = Promise.resolve(pro)
499
499
 
500
- pro.then(function (ret) {
500
+ pro.then(function(ret) {
501
501
  outs[key] = ret
502
502
  if (Object.keys(outs).length === total) return resolve(co.map(outs))
503
503
  doJob()
@@ -516,7 +516,7 @@ module.exports = function (collections, func, limit) {
516
516
 
517
517
  // sleep won't resolve after a given milliseconds
518
518
  // e.g: await sleep(100)
519
- module.exports = function sleep(ms) {
519
+ module.exports = function sleep (ms) {
520
520
  return new Promise(function (res) {
521
521
  setTimeout(res, ms)
522
522
  })
@@ -525,90 +525,10 @@ module.exports = function sleep(ms) {
525
525
 
526
526
  /***/ }),
527
527
 
528
- /***/ 2611:
529
- /***/ ((module) => {
530
-
531
- function dofetch(method, url, body, cb) {
532
- let headers = {}
533
- if (body) headers['content-type'] = 'text/plain'
534
- fetch(url, {method: method, headers: headers, body: body})
535
- .then((res) => res.text().then((text) => cb && cb(text, res.status)))
536
- .catch((err) => cb && cb(err, -1))
537
- }
538
-
539
- // xhrsend sends an HTTP request
540
- var xhrsend = function (method, url, body, cb) {
541
- if (typeof XMLHttpRequest === 'undefined') return dofetch(method, url, body, cb)
542
- var request = new XMLHttpRequest()
543
- request.onreadystatechange = function (e) {
544
- if (request.readyState !== 4) return
545
- cb && cb(request.responseText, request.status)
546
- cb = undefined // dont call cb anymore
547
- }
548
-
549
- request.onerror = function () {
550
- cb && cb(request.responseText, -1) // network error
551
- cb = undefined // dont call cb anymore
552
- }
553
-
554
- request.open(method, url)
555
- if (body) request.setRequestHeader('content-type', 'text/plain')
556
- request.send(body)
557
- }
558
-
559
- // JSON.parse without exeption
560
- // return undefined when parsing invalid JSON string
561
- function parseJSON(str) {
562
- try {
563
- return JSON.parse(str)
564
- } catch (e) {}
565
- }
566
-
567
- function Pubsub() {
568
- // holds all subscriptions for all topics
569
- // example {
570
- // topic1: [cb1, cb2],
571
- // topic2: [cb3, cb4],
572
- // }
573
- var listeners = {}
574
-
575
- // emit notifies any callback functions that previously
576
- // subscribed to the topic (by the on function)
577
- this.emit = function (topic) {
578
- // skip the first item in arguments, which is the topic
579
- var args = []
580
- for (var i = 1; i < arguments.length; i++) args.push(arguments[i])
581
-
582
- var cbs = listeners[topic]
583
- if (!cbs) return
584
- for (var i = 0; i < cbs.length; i++) cbs[i].apply(undefined, args)
585
- }
586
-
587
- // register a callback function for a topic
588
- // when something is sent to the topic (by the emit function),
589
- // the callback function will be called
590
- this.on = function (topic, cb) {
591
- if (!listeners[topic]) listeners[topic] = []
592
- listeners[topic].push(cb)
593
- }
594
- }
595
-
596
- function randomString(len, base) {
597
- var str = ''
598
- if (!len || len < 1) len = 10
599
- var asciiKey
600
- for (var i = 0; i < len; i++) {
601
- if (base) {
602
- str += base[Math.floor(Math.random() * base.length)]
603
- } else {
604
- asciiKey = Math.floor(Math.random() * 25 + 97)
605
- str += String.fromCharCode(asciiKey)
606
- }
607
- }
608
- return str
609
- }
528
+ /***/ 8454:
529
+ /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
610
530
 
611
- module.exports = {xhrsend, parseJSON, Pubsub, randomString}
531
+ module.exports = __webpack_require__(608)
612
532
 
613
533
 
614
534
  /***/ }),
@@ -617,7 +537,6 @@ module.exports = {xhrsend, parseJSON, Pubsub, randomString}
617
537
  /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
618
538
 
619
539
  var flow = __webpack_require__(3165)
620
- var {xhrsend, parseJSON, Pubsub} = __webpack_require__(2611)
621
540
 
622
541
  // Conn represents a realtime connection between an user and the realtime
623
542
  // server (https://rt-0.subiz.com)
@@ -831,6 +750,74 @@ function Realtime(apiUrls, credential, callAPI) {
831
750
  reconnect()
832
751
  }
833
752
 
753
+ var dofetch = function (method, url, body, cb) {
754
+ let headers = {}
755
+ if (body) headers['content-type'] = 'text/plain'
756
+ fetch(url, {
757
+ method: method,
758
+ headers: headers,
759
+ body: body,
760
+ })
761
+ .then((res) => res.text().then((text) => cb && cb(text, res.status)))
762
+ .catch((err) => cb && cb(err, -1))
763
+ }
764
+ // xhrsend sends an HTTP request
765
+ var xhrsend = function (method, url, body, cb) {
766
+ if (typeof XMLHttpRequest === 'undefined') return dofetch(method, url, body, cb)
767
+ var request = new XMLHttpRequest()
768
+ request.onreadystatechange = function (e) {
769
+ if (request.readyState !== 4) return
770
+ cb && cb(request.responseText, request.status)
771
+ cb = undefined // dont call cb anymore
772
+ }
773
+
774
+ request.onerror = function () {
775
+ cb && cb(request.responseText, -1) // network error
776
+ cb = undefined // dont call cb anymore
777
+ }
778
+
779
+ request.open(method, url)
780
+ if (body) request.setRequestHeader('content-type', 'text/plain')
781
+ request.send(body)
782
+ }
783
+
784
+ // JSON.parse without exeption
785
+ // return undefined when parsing invalid JSON string
786
+ function parseJSON(str) {
787
+ try {
788
+ return JSON.parse(str)
789
+ } catch (e) {}
790
+ }
791
+
792
+ function Pubsub() {
793
+ // holds all subscriptions for all topics
794
+ // example {
795
+ // topic1: [cb1, cb2],
796
+ // topic2: [cb3, cb4],
797
+ // }
798
+ var listeners = {}
799
+
800
+ // emit notifies any callback functions that previously
801
+ // subscribed to the topic (by the on function)
802
+ this.emit = function (topic) {
803
+ // skip the first item in arguments, which is the topic
804
+ var args = []
805
+ for (var i = 1; i < arguments.length; i++) args.push(arguments[i])
806
+
807
+ var cbs = listeners[topic]
808
+ if (!cbs) return
809
+ for (var i = 0; i < cbs.length; i++) cbs[i].apply(undefined, args)
810
+ }
811
+
812
+ // register a callback function for a topic
813
+ // when something is sent to the topic (by the emit function),
814
+ // the callback function will be called
815
+ this.on = function (topic, cb) {
816
+ if (!listeners[topic]) listeners[topic] = []
817
+ listeners[topic].push(cb)
818
+ }
819
+ }
820
+
834
821
  // calcNextBackoff returns number of seconds we must wait
835
822
  // before sending a next request
836
823
  // the results is determind based on exponential backoff algorithm
@@ -875,7 +862,7 @@ module.exports = Realtime
875
862
 
876
863
  "use strict";
877
864
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
878
- /* harmony export */ Z: () => (/* binding */ Chain)
865
+ /* harmony export */ "Z": () => (/* binding */ Chain)
879
866
  /* harmony export */ });
880
867
  const ChainMaxSize = 50;
881
868
  class Chain {
@@ -947,7 +934,9 @@ class Chain {
947
934
  });
948
935
  return out;
949
936
  }
950
- async fetchMore(chain, limit = 20, api) {
937
+ async fetchMore(chain) {
938
+ let limit = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 20;
939
+ let api = arguments.length > 2 ? arguments[2] : undefined;
951
940
  if (this.dead) return {
952
941
  error: 'dead'
953
942
  };
@@ -1105,7 +1094,7 @@ function orderBy(a, k, d) {
1105
1094
 
1106
1095
  "use strict";
1107
1096
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
1108
- /* harmony export */ Z: () => (__WEBPACK_DEFAULT_EXPORT__)
1097
+ /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
1109
1098
  /* harmony export */ });
1110
1099
  var localStorageMemory = {};
1111
1100
  var cache = {};
@@ -1140,7 +1129,7 @@ localStorageMemory.clear = function () {
1140
1129
 
1141
1130
  "use strict";
1142
1131
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
1143
- /* harmony export */ Z: () => (__WEBPACK_DEFAULT_EXPORT__)
1132
+ /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
1144
1133
  /* harmony export */ });
1145
1134
  let KvMaxSize = 500;
1146
1135
  /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (class {
@@ -1229,7 +1218,7 @@ let KvMaxSize = 500;
1229
1218
 
1230
1219
  "use strict";
1231
1220
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
1232
- /* harmony export */ Z: () => (__WEBPACK_DEFAULT_EXPORT__)
1221
+ /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
1233
1222
  /* harmony export */ });
1234
1223
  let memlocalStorage = (__webpack_require__(9489)/* ["default"] */ .Z);
1235
1224
  let requestIdleCallback = window.requestIdleCallback || (cb => cb());
@@ -1297,11 +1286,11 @@ function toString(obj) {
1297
1286
 
1298
1287
  "use strict";
1299
1288
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
1300
- /* harmony export */ Kd: () => (/* binding */ getLocale),
1301
- /* harmony export */ Rs: () => (/* binding */ langMessages),
1302
- /* harmony export */ WW: () => (/* binding */ downloadLanguage),
1303
- /* harmony export */ u$: () => (/* binding */ Clickaway),
1304
- /* harmony export */ up: () => (/* binding */ Com)
1289
+ /* harmony export */ "Kd": () => (/* binding */ getLocale),
1290
+ /* harmony export */ "Rs": () => (/* binding */ langMessages),
1291
+ /* harmony export */ "WW": () => (/* binding */ downloadLanguage),
1292
+ /* harmony export */ "u$": () => (/* binding */ Clickaway),
1293
+ /* harmony export */ "up": () => (/* binding */ Com)
1305
1294
  /* harmony export */ });
1306
1295
  /* harmony import */ var preact__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6400);
1307
1296
  /* harmony import */ var _util_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(4494);
@@ -1311,7 +1300,7 @@ class Com extends preact__WEBPACK_IMPORTED_MODULE_0__/* .Component */ .wA {
1311
1300
  constructor(props) {
1312
1301
  super(props);
1313
1302
  this._isMounted = true;
1314
- _util_index_js__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .Z.setTimeout(() => {
1303
+ _util_index_js__WEBPACK_IMPORTED_MODULE_1__/* ["default"].setTimeout */ .Z.setTimeout(() => {
1315
1304
  if (this.componentWillUnmount) {
1316
1305
  let old = this.componentWillUnmount.bind(this);
1317
1306
  this.componentWillUnmount = () => {
@@ -1350,9 +1339,9 @@ class Clickaway extends Com {
1350
1339
  }
1351
1340
  const getLocale = (plugin, loc) => {
1352
1341
  if (!loc) loc = '';
1353
- let found = _util_index_js__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .Z.find(plugin.locales, l => l.toLowerCase().trim() === loc.toLowerCase().trim());
1342
+ let found = _util_index_js__WEBPACK_IMPORTED_MODULE_1__/* ["default"].find */ .Z.find(plugin.locales, l => l.toLowerCase().trim() === loc.toLowerCase().trim());
1354
1343
  if (found) return found;
1355
- found = _util_index_js__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .Z.find(plugin.locales, l => {
1344
+ found = _util_index_js__WEBPACK_IMPORTED_MODULE_1__/* ["default"].find */ .Z.find(plugin.locales, l => {
1356
1345
  l = l.replace('-', '_').split('_')[0].trim().toLowerCase();
1357
1346
  let compareloc = loc.replace('-', '_').split('_')[0].trim().toLowerCase();
1358
1347
  return l == compareloc;
@@ -1363,7 +1352,7 @@ const getLocale = (plugin, loc) => {
1363
1352
  let langMessages = {};
1364
1353
  let downloadLock = false;
1365
1354
  function downloadLanguage(store, locale, force) {
1366
- if (downloadLock) return new Promise(resolve => _util_index_js__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .Z.setTimeout(() => downloadLanguage(store, locale, force).then(resolve), 100));
1355
+ if (downloadLock) return new Promise(resolve => _util_index_js__WEBPACK_IMPORTED_MODULE_1__/* ["default"].setTimeout */ .Z.setTimeout(() => downloadLanguage(store, locale, force).then(resolve), 100));
1367
1356
  downloadLock = true;
1368
1357
  let messages;
1369
1358
  if (locale === 'debug' || langMessages[locale] && !force) {
@@ -1372,7 +1361,7 @@ function downloadLanguage(store, locale, force) {
1372
1361
  }
1373
1362
  return store.getLocaleContent(locale).then(res => {
1374
1363
  downloadLock = false;
1375
- messages = _util_index_js__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .Z.get(res, 'body.messages', []);
1364
+ messages = _util_index_js__WEBPACK_IMPORTED_MODULE_1__/* ["default"].get */ .Z.get(res, 'body.messages', []);
1376
1365
  langMessages[locale] = messages;
1377
1366
  });
1378
1367
  }
@@ -1385,73 +1374,73 @@ function downloadLanguage(store, locale, force) {
1385
1374
  "use strict";
1386
1375
  __webpack_require__.r(__webpack_exports__);
1387
1376
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
1388
- /* harmony export */ DEFVAL: () => (/* binding */ DEFVAL),
1389
- /* harmony export */ DEF_CHAT_BUTTON_BACKGROUND_IMAGE_URL: () => (/* binding */ DEF_CHAT_BUTTON_BACKGROUND_IMAGE_URL),
1390
- /* harmony export */ Date: () => (/* binding */ Date),
1391
- /* harmony export */ XMLHttpRequest: () => (/* binding */ XMLHttpRequest),
1392
- /* harmony export */ agentsOfConvo: () => (/* binding */ agentsOfConvo),
1393
- /* harmony export */ checkRunConditions: () => (/* binding */ checkRunConditions),
1394
- /* harmony export */ clearInterval: () => (/* binding */ clearInterval),
1395
- /* harmony export */ clearTimeout: () => (/* binding */ clearTimeout),
1396
- /* harmony export */ cloneDeep: () => (/* binding */ cloneDeep),
1397
- /* harmony export */ convoOfEv: () => (/* binding */ convoOfEv),
1398
- /* harmony export */ convoToEv: () => (/* binding */ convoToEv),
1399
- /* harmony export */ detectLang: () => (/* binding */ detectLang),
1400
- /* harmony export */ diffDay: () => (/* binding */ diffDay),
1401
- /* harmony export */ diffYear: () => (/* binding */ diffYear),
1402
- /* harmony export */ each: () => (/* binding */ each),
1403
- /* harmony export */ filter: () => (/* binding */ filter),
1404
- /* harmony export */ find: () => (/* binding */ find),
1405
- /* harmony export */ formatCurrency: () => (/* binding */ formatCurrency),
1406
- /* harmony export */ getAgentDisplayName: () => (/* binding */ getAgentDisplayName),
1407
- /* harmony export */ getDayName: () => (/* binding */ getDayName),
1408
- /* harmony export */ getMs: () => (/* binding */ getMs),
1409
- /* harmony export */ getMsgField: () => (/* binding */ getMsgField),
1410
- /* harmony export */ getUrlParameter: () => (/* binding */ getUrlParameter),
1411
- /* harmony export */ getUserAttr: () => (/* binding */ getUserAttr),
1412
- /* harmony export */ includes: () => (/* binding */ includes),
1413
- /* harmony export */ isConvoSeen: () => (/* binding */ isConvoSeen),
1414
- /* harmony export */ isEmail: () => (/* binding */ isEmail),
1415
- /* harmony export */ isNumber: () => (/* binding */ isNumber),
1416
- /* harmony export */ isPhone: () => (/* binding */ isPhone),
1417
- /* harmony export */ isURL: () => (/* binding */ isURL),
1418
- /* harmony export */ isUserBanned: () => (/* binding */ isUserBanned),
1419
- /* harmony export */ js2css: () => (/* binding */ js2css),
1420
- /* harmony export */ last: () => (/* binding */ last),
1421
- /* harmony export */ map: () => (/* binding */ map),
1422
- /* harmony export */ merge: () => (/* binding */ merge),
1423
- /* harmony export */ noop: () => (/* binding */ noop),
1424
- /* harmony export */ norm: () => (/* binding */ norm),
1425
- /* harmony export */ offsetToMin: () => (/* binding */ offsetToMin),
1426
- /* harmony export */ orderBy: () => (/* binding */ orderBy),
1427
- /* harmony export */ orderByF: () => (/* binding */ orderByF),
1428
- /* harmony export */ parseJSON: () => (/* binding */ parseJSON),
1429
- /* harmony export */ preloadImg: () => (/* binding */ preloadImg),
1430
- /* harmony export */ preloadWebfonts: () => (/* binding */ preloadWebfonts),
1431
- /* harmony export */ randomString: () => (/* binding */ randomString),
1432
- /* harmony export */ replaceAll: () => (/* binding */ replaceAll),
1433
- /* harmony export */ replaceCssVariable: () => (/* binding */ replaceCssVariable),
1434
- /* harmony export */ replaceCssVariablePlugin: () => (/* binding */ replaceCssVariablePlugin),
1435
- /* harmony export */ requestAnimationFrame: () => (/* binding */ requestAnimationFrame),
1436
- /* harmony export */ sameDay: () => (/* binding */ sameDay),
1437
- /* harmony export */ scrollIntoViewIfNeeded: () => (/* binding */ scrollIntoViewIfNeeded),
1438
- /* harmony export */ setCss: () => (/* binding */ setCss),
1439
- /* harmony export */ setInterval: () => (/* binding */ setInterval),
1440
- /* harmony export */ setMsgField: () => (/* binding */ setMsgField),
1441
- /* harmony export */ setTimeout: () => (/* binding */ setTimeout),
1442
- /* harmony export */ setUserAttr: () => (/* binding */ setUserAttr),
1443
- /* harmony export */ shortTime: () => (/* binding */ shortTime),
1444
- /* harmony export */ size: () => (/* binding */ size),
1445
- /* harmony export */ sleep: () => (/* binding */ sleep),
1446
- /* harmony export */ startsWith: () => (/* binding */ startsWith),
1447
- /* harmony export */ stringify: () => (/* binding */ stringify),
1448
- /* harmony export */ throttle: () => (/* binding */ throttle),
1449
- /* harmony export */ tokenize: () => (/* binding */ tokenize),
1450
- /* harmony export */ trim: () => (/* binding */ trim),
1451
- /* harmony export */ trimStart: () => (/* binding */ trimStart),
1452
- /* harmony export */ unicodeToAscii: () => (/* binding */ unicodeToAscii),
1453
- /* harmony export */ unixSec: () => (/* binding */ unixSec),
1454
- /* harmony export */ usersOfConvo: () => (/* binding */ usersOfConvo)
1377
+ /* harmony export */ "DEFVAL": () => (/* binding */ DEFVAL),
1378
+ /* harmony export */ "DEF_CHAT_BUTTON_BACKGROUND_IMAGE_URL": () => (/* binding */ DEF_CHAT_BUTTON_BACKGROUND_IMAGE_URL),
1379
+ /* harmony export */ "Date": () => (/* binding */ Date),
1380
+ /* harmony export */ "XMLHttpRequest": () => (/* binding */ XMLHttpRequest),
1381
+ /* harmony export */ "agentsOfConvo": () => (/* binding */ agentsOfConvo),
1382
+ /* harmony export */ "checkRunConditions": () => (/* binding */ checkRunConditions),
1383
+ /* harmony export */ "clearInterval": () => (/* binding */ clearInterval),
1384
+ /* harmony export */ "clearTimeout": () => (/* binding */ clearTimeout),
1385
+ /* harmony export */ "cloneDeep": () => (/* binding */ cloneDeep),
1386
+ /* harmony export */ "convoOfEv": () => (/* binding */ convoOfEv),
1387
+ /* harmony export */ "convoToEv": () => (/* binding */ convoToEv),
1388
+ /* harmony export */ "detectLang": () => (/* binding */ detectLang),
1389
+ /* harmony export */ "diffDay": () => (/* binding */ diffDay),
1390
+ /* harmony export */ "diffYear": () => (/* binding */ diffYear),
1391
+ /* harmony export */ "each": () => (/* binding */ each),
1392
+ /* harmony export */ "filter": () => (/* binding */ filter),
1393
+ /* harmony export */ "find": () => (/* binding */ find),
1394
+ /* harmony export */ "formatCurrency": () => (/* binding */ formatCurrency),
1395
+ /* harmony export */ "getAgentDisplayName": () => (/* binding */ getAgentDisplayName),
1396
+ /* harmony export */ "getDayName": () => (/* binding */ getDayName),
1397
+ /* harmony export */ "getMs": () => (/* binding */ getMs),
1398
+ /* harmony export */ "getMsgField": () => (/* binding */ getMsgField),
1399
+ /* harmony export */ "getUrlParameter": () => (/* binding */ getUrlParameter),
1400
+ /* harmony export */ "getUserAttr": () => (/* binding */ getUserAttr),
1401
+ /* harmony export */ "includes": () => (/* binding */ includes),
1402
+ /* harmony export */ "isConvoSeen": () => (/* binding */ isConvoSeen),
1403
+ /* harmony export */ "isEmail": () => (/* binding */ isEmail),
1404
+ /* harmony export */ "isNumber": () => (/* binding */ isNumber),
1405
+ /* harmony export */ "isPhone": () => (/* binding */ isPhone),
1406
+ /* harmony export */ "isURL": () => (/* binding */ isURL),
1407
+ /* harmony export */ "isUserBanned": () => (/* binding */ isUserBanned),
1408
+ /* harmony export */ "js2css": () => (/* binding */ js2css),
1409
+ /* harmony export */ "last": () => (/* binding */ last),
1410
+ /* harmony export */ "map": () => (/* binding */ map),
1411
+ /* harmony export */ "merge": () => (/* binding */ merge),
1412
+ /* harmony export */ "noop": () => (/* binding */ noop),
1413
+ /* harmony export */ "norm": () => (/* binding */ norm),
1414
+ /* harmony export */ "offsetToMin": () => (/* binding */ offsetToMin),
1415
+ /* harmony export */ "orderBy": () => (/* binding */ orderBy),
1416
+ /* harmony export */ "orderByF": () => (/* binding */ orderByF),
1417
+ /* harmony export */ "parseJSON": () => (/* binding */ parseJSON),
1418
+ /* harmony export */ "preloadImg": () => (/* binding */ preloadImg),
1419
+ /* harmony export */ "preloadWebfonts": () => (/* binding */ preloadWebfonts),
1420
+ /* harmony export */ "randomString": () => (/* binding */ randomString),
1421
+ /* harmony export */ "replaceAll": () => (/* binding */ replaceAll),
1422
+ /* harmony export */ "replaceCssVariable": () => (/* binding */ replaceCssVariable),
1423
+ /* harmony export */ "replaceCssVariablePlugin": () => (/* binding */ replaceCssVariablePlugin),
1424
+ /* harmony export */ "requestAnimationFrame": () => (/* binding */ requestAnimationFrame),
1425
+ /* harmony export */ "sameDay": () => (/* binding */ sameDay),
1426
+ /* harmony export */ "scrollIntoViewIfNeeded": () => (/* binding */ scrollIntoViewIfNeeded),
1427
+ /* harmony export */ "setCss": () => (/* binding */ setCss),
1428
+ /* harmony export */ "setInterval": () => (/* binding */ setInterval),
1429
+ /* harmony export */ "setMsgField": () => (/* binding */ setMsgField),
1430
+ /* harmony export */ "setTimeout": () => (/* binding */ setTimeout),
1431
+ /* harmony export */ "setUserAttr": () => (/* binding */ setUserAttr),
1432
+ /* harmony export */ "shortTime": () => (/* binding */ shortTime),
1433
+ /* harmony export */ "size": () => (/* binding */ size),
1434
+ /* harmony export */ "sleep": () => (/* binding */ sleep),
1435
+ /* harmony export */ "startsWith": () => (/* binding */ startsWith),
1436
+ /* harmony export */ "stringify": () => (/* binding */ stringify),
1437
+ /* harmony export */ "throttle": () => (/* binding */ throttle),
1438
+ /* harmony export */ "tokenize": () => (/* binding */ tokenize),
1439
+ /* harmony export */ "trim": () => (/* binding */ trim),
1440
+ /* harmony export */ "trimStart": () => (/* binding */ trimStart),
1441
+ /* harmony export */ "unicodeToAscii": () => (/* binding */ unicodeToAscii),
1442
+ /* harmony export */ "unixSec": () => (/* binding */ unixSec),
1443
+ /* harmony export */ "usersOfConvo": () => (/* binding */ usersOfConvo)
1455
1444
  /* harmony export */ });
1456
1445
  var op = __webpack_require__(6877);
1457
1446
  function parseJSON(str) {
@@ -1538,7 +1527,10 @@ function getMsgField(ev, fieldName) {
1538
1527
  function isObject(item) {
1539
1528
  return item && typeof item === 'object' && !Array.isArray(item);
1540
1529
  }
1541
- function merge(target, ...sources) {
1530
+ function merge(target) {
1531
+ for (var _len = arguments.length, sources = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
1532
+ sources[_key - 1] = arguments[_key];
1533
+ }
1542
1534
  if (!sources.length) return target;
1543
1535
  const source = sources.shift();
1544
1536
  if (isObject(target) && isObject(source)) {
@@ -1766,7 +1758,7 @@ function setUserAttr(user, attr) {
1766
1758
  if (!user) return;
1767
1759
  if (!op.get(attr, 'key')) return;
1768
1760
  user.attributes = user.attributes || [];
1769
- var index = findIndex(user.attributes, a => a && a.key === attr.key);
1761
+ var index = findIndex(user.attributes, a => a.key === attr.key);
1770
1762
  if (index === -1) {
1771
1763
  user.attributes.push(attr);
1772
1764
  return;
@@ -2036,7 +2028,7 @@ function checkRunConditions(freq, conds, lastrun, store) {
2036
2028
  var acc = store.matchAccount() || {};
2037
2029
  var location = store.matchLocation() || {};
2038
2030
  if (!check_frequently(freq, lastrun, store)) return false;
2039
- for (let i = 0; i < size(conds); i++) {
2031
+ for (var i = 0; i < size(conds); i++) {
2040
2032
  var cond = conds[i];
2041
2033
  switch (cond.key) {
2042
2034
  case 'url':
@@ -2101,9 +2093,9 @@ function checkRunConditions(freq, conds, lastrun, store) {
2101
2093
  break;
2102
2094
  case 'user_is_a_contact':
2103
2095
  let attributes = op.get(store.matchUser(), 'attributes', []);
2104
- let emailAttr = find(attributes, att => att.key === 'emails' && attr.text && att.key === 'related_email' && attr.text);
2105
- let phoneAttr = find(attributes, att => att.key === 'phones' && attr.text && att.key === 'related_phone' && attr.text);
2106
- let hasContact = emailAttr || phoneAttr;
2096
+ let emailAttr = find(attributes, att => att.key === 'emails') || {};
2097
+ let phoneAttr = find(attributes, att => att.key === 'phones') || {};
2098
+ let hasContact = emailAttr.text || phoneAttr.text;
2107
2099
  if (cond.user_is_a_contact) {
2108
2100
  if (!hasContact) return false;
2109
2101
  }
@@ -2181,21 +2173,15 @@ function checkRunConditions(freq, conds, lastrun, store) {
2181
2173
  });
2182
2174
  if (!found) return false;
2183
2175
  }
2184
- if (size(cond.minutes_of_day) > 0 && size(cond.minutes_of_day) % 2 === 0) {
2176
+ if (size(cond.minute_of_days) > 0 && size(cond.minute_of_days) % 2 === 0) {
2185
2177
  var now = new Date();
2186
2178
  var minuteofday = now.getMinutes() + now.getHours() * 60;
2187
2179
  let found = false;
2188
- for (let i = 0; i < cond.minutes_of_day.length; i += 2) {
2189
- if (cond.minutes_of_day[i] <= minuteofday && minuteofday <= cond.minutes_of_day[i + 1]) {
2180
+ for (var i = 0; i < cond.minute_of_days.length; i += 2) {
2181
+ if (cond.minute_of_days[i] <= minuteofday && minuteofday <= cond.minute_of_days[i + 1]) {
2190
2182
  found = true;
2191
2183
  break;
2192
2184
  }
2193
- if (cond.minutes_of_day[i] > cond.minutes_of_day[i + 1]) {
2194
- if (minuteofday >= cond.minutes_of_day[i] || minuteofday <= cond.minutes_of_day[i + 1]) {
2195
- found = true;
2196
- break;
2197
- }
2198
- }
2199
2185
  }
2200
2186
  if (!found) return false;
2201
2187
  }
@@ -2342,7 +2328,8 @@ function getUrlParameter() {
2342
2328
  return results === null ? '' : decodeURIComponent(results[1].replace(/\+/g, ' '));
2343
2329
  }
2344
2330
  var sleep = ms => new Promise(res => setTimeout(res, ms));
2345
- function formatCurrency(val, currency = 'VND') {
2331
+ function formatCurrency(val) {
2332
+ let currency = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'VND';
2346
2333
  let currencyObj = ALL_CURRENCIES.find(cur => cur.code === currency) || {
2347
2334
  name: 'Dong',
2348
2335
  code: 'VND',
@@ -2410,468 +2397,648 @@ function scrollIntoViewIfNeeded($ele) {
2410
2397
  }
2411
2398
  }
2412
2399
  const ALL_CURRENCIES = [{
2400
+ name: 'Afghani',
2413
2401
  code: 'AFN',
2414
2402
  symbol: '؋'
2415
2403
  }, {
2404
+ name: 'Euro',
2416
2405
  code: 'EUR',
2417
2406
  symbol: '€'
2418
2407
  }, {
2408
+ name: 'Lek',
2419
2409
  code: 'ALL',
2420
2410
  symbol: 'Lek'
2421
2411
  }, {
2412
+ name: 'Algerian Dinar',
2422
2413
  code: 'DZD'
2423
2414
  }, {
2415
+ name: 'US Dollar',
2424
2416
  code: 'USD',
2425
2417
  symbol: '$'
2426
2418
  }, {
2419
+ name: 'Kwanza',
2427
2420
  code: 'AOA'
2428
2421
  }, {
2422
+ name: 'East Caribbean Dollar',
2429
2423
  code: 'XCD',
2430
2424
  symbol: '$'
2431
2425
  }, {
2426
+ name: 'Argentine Peso',
2432
2427
  code: 'ARS',
2433
2428
  symbol: '$'
2434
2429
  }, {
2430
+ name: 'Armenian Dram',
2435
2431
  code: 'AMD'
2436
2432
  }, {
2433
+ name: 'Aruban Florin',
2437
2434
  code: 'AWG',
2438
2435
  symbol: 'ƒ'
2439
2436
  }, {
2437
+ name: 'Australian Dollar',
2440
2438
  code: 'AUD',
2441
2439
  symbol: '$'
2442
2440
  }, {
2441
+ name: 'Azerbaijan Manat',
2443
2442
  code: 'AZN',
2444
2443
  symbol: '₼'
2445
2444
  }, {
2445
+ name: 'Bahamian Dollar',
2446
2446
  code: 'BSD',
2447
2447
  symbol: '$'
2448
2448
  }, {
2449
+ name: 'Bahraini Dinar',
2449
2450
  code: 'BHD'
2450
2451
  }, {
2452
+ name: 'Taka',
2451
2453
  code: 'BDT'
2452
2454
  }, {
2455
+ name: 'Barbados Dollar',
2453
2456
  code: 'BBD',
2454
2457
  symbol: '$'
2455
2458
  }, {
2459
+ name: 'Belarusian Ruble',
2456
2460
  code: 'BYN',
2457
2461
  symbol: 'Br'
2458
2462
  }, {
2463
+ name: 'Belize Dollar',
2459
2464
  code: 'BZD',
2460
2465
  symbol: 'BZ$'
2461
2466
  }, {
2467
+ name: 'CFA Franc BCEAO',
2462
2468
  code: 'XOF'
2463
2469
  }, {
2470
+ name: 'Bermudian Dollar',
2464
2471
  code: 'BMD',
2465
2472
  symbol: '$'
2466
2473
  }, {
2474
+ name: 'Indian Rupee',
2467
2475
  code: 'INR',
2468
2476
  symbol: '₹'
2469
2477
  }, {
2478
+ name: 'Ngultrum',
2470
2479
  code: 'BTN'
2471
2480
  }, {
2481
+ name: 'Boliviano',
2472
2482
  code: 'BOB',
2473
2483
  symbol: '$b'
2474
2484
  }, {
2485
+ name: 'Mvdol',
2475
2486
  code: 'BOV'
2476
2487
  }, {
2488
+ name: 'Convertible Mark',
2477
2489
  code: 'BAM',
2478
2490
  symbol: 'KM'
2479
2491
  }, {
2492
+ name: 'Pula',
2480
2493
  code: 'BWP',
2481
2494
  symbol: 'P'
2482
2495
  }, {
2496
+ name: 'Norwegian Krone',
2483
2497
  code: 'NOK',
2484
2498
  symbol: 'kr'
2485
2499
  }, {
2500
+ name: 'Brazilian Real',
2486
2501
  code: 'BRL',
2487
2502
  symbol: 'R$'
2488
2503
  }, {
2504
+ name: 'Brunei Dollar',
2489
2505
  code: 'BND',
2490
2506
  symbol: '$'
2491
2507
  }, {
2508
+ name: 'Bulgarian Lev',
2492
2509
  code: 'BGN',
2493
2510
  symbol: 'лв'
2494
2511
  }, {
2512
+ name: 'Burundi Franc',
2495
2513
  code: 'BIF'
2496
2514
  }, {
2515
+ name: 'Cabo Verde Escudo',
2497
2516
  code: 'CVE'
2498
2517
  }, {
2518
+ name: 'Riel',
2499
2519
  code: 'KHR',
2500
2520
  symbol: '៛'
2501
2521
  }, {
2522
+ name: 'CFA Franc BEAC',
2502
2523
  code: 'XAF'
2503
2524
  }, {
2525
+ name: 'Canadian Dollar',
2504
2526
  code: 'CAD',
2505
2527
  symbol: '$'
2506
2528
  }, {
2529
+ name: 'Cayman Islands Dollar',
2507
2530
  code: 'KYD',
2508
2531
  symbol: '$'
2509
2532
  }, {
2533
+ name: 'Chilean Peso',
2510
2534
  code: 'CLP',
2511
2535
  symbol: '$'
2512
2536
  }, {
2537
+ name: 'Unidad de Fomento',
2513
2538
  code: 'CLF'
2514
2539
  }, {
2540
+ name: 'Yuan Renminbi',
2515
2541
  code: 'CNY',
2516
2542
  symbol: '¥'
2517
2543
  }, {
2544
+ name: 'Colombian Peso',
2518
2545
  code: 'COP',
2519
2546
  symbol: '$'
2520
2547
  }, {
2548
+ name: 'Unidad de Valor Real',
2521
2549
  code: 'COU'
2522
2550
  }, {
2551
+ name: 'Comorian Franc ',
2523
2552
  code: 'KMF'
2524
2553
  }, {
2554
+ name: 'Congolese Franc',
2525
2555
  code: 'CDF'
2526
2556
  }, {
2557
+ name: 'New Zealand Dollar',
2527
2558
  code: 'NZD',
2528
2559
  symbol: '$'
2529
2560
  }, {
2561
+ name: 'Costa Rican Colon',
2530
2562
  code: 'CRC',
2531
2563
  symbol: '₡'
2532
2564
  }, {
2565
+ name: 'Kuna',
2533
2566
  code: 'HRK',
2534
2567
  symbol: 'kn'
2535
2568
  }, {
2569
+ name: 'Cuban Peso',
2536
2570
  code: 'CUP',
2537
2571
  symbol: '₱'
2538
2572
  }, {
2573
+ name: 'Peso Convertible',
2539
2574
  code: 'CUC'
2540
2575
  }, {
2576
+ name: 'Netherlands Antillean Guilder',
2541
2577
  code: 'ANG',
2542
2578
  symbol: 'ƒ'
2543
2579
  }, {
2580
+ name: 'Czech Koruna',
2544
2581
  code: 'CZK',
2545
2582
  symbol: 'Kč'
2546
2583
  }, {
2584
+ name: 'Danish Krone',
2547
2585
  code: 'DKK',
2548
2586
  symbol: 'kr'
2549
2587
  }, {
2588
+ name: 'Djibouti Franc',
2550
2589
  code: 'DJF'
2551
2590
  }, {
2591
+ name: 'Dominican Peso',
2552
2592
  code: 'DOP',
2553
2593
  symbol: 'RD$'
2554
2594
  }, {
2595
+ name: 'Egyptian Pound',
2555
2596
  code: 'EGP',
2556
2597
  symbol: '£'
2557
2598
  }, {
2599
+ name: 'El Salvador Colon',
2558
2600
  code: 'SVC',
2559
2601
  symbol: '$'
2560
2602
  }, {
2603
+ name: 'Nakfa',
2561
2604
  code: 'ERN'
2562
2605
  }, {
2606
+ name: 'Lilangeni',
2563
2607
  code: 'SZL'
2564
2608
  }, {
2609
+ name: 'Ethiopian Birr',
2565
2610
  code: 'ETB'
2566
2611
  }, {
2612
+ name: 'Falkland Islands Pound',
2567
2613
  code: 'FKP',
2568
2614
  symbol: '£'
2569
2615
  }, {
2616
+ name: 'Fiji Dollar',
2570
2617
  code: 'FJD',
2571
2618
  symbol: '$'
2572
2619
  }, {
2620
+ name: 'CFP Franc',
2573
2621
  code: 'XPF'
2574
2622
  }, {
2623
+ name: 'Dalasi',
2575
2624
  code: 'GMD'
2576
2625
  }, {
2626
+ name: 'Lari',
2577
2627
  code: 'GEL'
2578
2628
  }, {
2629
+ name: 'Ghana Cedi',
2579
2630
  code: 'GHS',
2580
2631
  symbol: '¢'
2581
2632
  }, {
2633
+ name: 'Gibraltar Pound',
2582
2634
  code: 'GIP',
2583
2635
  symbol: '£'
2584
2636
  }, {
2637
+ name: 'Quetzal',
2585
2638
  code: 'GTQ',
2586
2639
  symbol: 'Q'
2587
2640
  }, {
2641
+ name: 'Pound Sterling',
2588
2642
  code: 'GBP',
2589
2643
  symbol: '£'
2590
2644
  }, {
2645
+ name: 'Guinean Franc',
2591
2646
  code: 'GNF'
2592
2647
  }, {
2648
+ name: 'Guyana Dollar',
2593
2649
  code: 'GYD',
2594
2650
  symbol: '$'
2595
2651
  }, {
2652
+ name: 'Gourde',
2596
2653
  code: 'HTG'
2597
2654
  }, {
2655
+ name: 'Lempira',
2598
2656
  code: 'HNL',
2599
2657
  symbol: 'L'
2600
2658
  }, {
2659
+ name: 'Hong Kong Dollar',
2601
2660
  code: 'HKD',
2602
2661
  symbol: '$'
2603
2662
  }, {
2663
+ name: 'Forint',
2604
2664
  code: 'HUF',
2605
2665
  symbol: 'Ft'
2606
2666
  }, {
2667
+ name: 'Iceland Krona',
2607
2668
  code: 'ISK',
2608
2669
  symbol: 'kr'
2609
2670
  }, {
2671
+ name: 'Rupiah',
2610
2672
  code: 'IDR',
2611
2673
  symbol: 'Rp'
2612
2674
  }, {
2675
+ name: 'SDR (Special Drawing Right)',
2613
2676
  code: 'XDR'
2614
2677
  }, {
2678
+ name: 'Iranian Rial',
2615
2679
  code: 'IRR',
2616
2680
  symbol: '﷼'
2617
2681
  }, {
2682
+ name: 'Iraqi Dinar',
2618
2683
  code: 'IQD'
2619
2684
  }, {
2685
+ name: 'New Israeli Sheqel',
2620
2686
  code: 'ILS',
2621
2687
  symbol: '₪'
2622
2688
  }, {
2689
+ name: 'Jamaican Dollar',
2623
2690
  code: 'JMD',
2624
2691
  symbol: 'J$'
2625
2692
  }, {
2693
+ name: 'Yen',
2626
2694
  code: 'JPY',
2627
2695
  symbol: '¥'
2628
2696
  }, {
2697
+ name: 'Jordanian Dinar',
2629
2698
  code: 'JOD'
2630
2699
  }, {
2700
+ name: 'Tenge',
2631
2701
  code: 'KZT',
2632
2702
  symbol: 'лв'
2633
2703
  }, {
2704
+ name: 'Kenyan Shilling',
2634
2705
  code: 'KES'
2635
2706
  }, {
2707
+ name: 'North Korean Won',
2636
2708
  code: 'KPW',
2637
2709
  symbol: '₩'
2638
2710
  }, {
2711
+ name: 'Won',
2639
2712
  code: 'KRW',
2640
2713
  symbol: '₩'
2641
2714
  }, {
2715
+ name: 'Kuwaiti Dinar',
2642
2716
  code: 'KWD'
2643
2717
  }, {
2718
+ name: 'Som',
2644
2719
  code: 'KGS',
2645
2720
  symbol: 'лв'
2646
2721
  }, {
2722
+ name: 'Lao Kip',
2647
2723
  code: 'LAK',
2648
2724
  symbol: '₭'
2649
2725
  }, {
2726
+ name: 'Lebanese Pound',
2650
2727
  code: 'LBP',
2651
2728
  symbol: '£'
2652
2729
  }, {
2730
+ name: 'Loti',
2653
2731
  code: 'LSL'
2654
2732
  }, {
2733
+ name: 'Rand',
2655
2734
  code: 'ZAR',
2656
2735
  symbol: 'R'
2657
2736
  }, {
2737
+ name: 'Liberian Dollar',
2658
2738
  code: 'LRD',
2659
2739
  symbol: '$'
2660
2740
  }, {
2741
+ name: 'Libyan Dinar',
2661
2742
  code: 'LYD'
2662
2743
  }, {
2744
+ name: 'Swiss Franc',
2663
2745
  code: 'CHF',
2664
2746
  symbol: 'CHF'
2665
2747
  }, {
2748
+ name: 'Pataca',
2666
2749
  code: 'MOP'
2667
2750
  }, {
2751
+ name: 'Denar',
2668
2752
  code: 'MKD',
2669
2753
  symbol: 'ден'
2670
2754
  }, {
2755
+ name: 'Malagasy Ariary',
2671
2756
  code: 'MGA'
2672
2757
  }, {
2758
+ name: 'Malawi Kwacha',
2673
2759
  code: 'MWK'
2674
2760
  }, {
2761
+ name: 'Malaysian Ringgit',
2675
2762
  code: 'MYR',
2676
2763
  symbol: 'RM'
2677
2764
  }, {
2765
+ name: 'Rufiyaa',
2678
2766
  code: 'MVR'
2679
2767
  }, {
2768
+ name: 'Ouguiya',
2680
2769
  code: 'MRU'
2681
2770
  }, {
2771
+ name: 'Mauritius Rupee',
2682
2772
  code: 'MUR',
2683
2773
  symbol: '₨'
2684
2774
  }, {
2775
+ name: 'ADB Unit of Account',
2685
2776
  code: 'XUA'
2686
2777
  }, {
2778
+ name: 'Mexican Peso',
2687
2779
  code: 'MXN',
2688
2780
  symbol: '$'
2689
2781
  }, {
2782
+ name: 'Mexican Unidad de Inversion (UDI)',
2690
2783
  code: 'MXV'
2691
2784
  }, {
2785
+ name: 'Moldovan Leu',
2692
2786
  code: 'MDL'
2693
2787
  }, {
2788
+ name: 'Tugrik',
2694
2789
  code: 'MNT',
2695
2790
  symbol: '₮'
2696
2791
  }, {
2792
+ name: 'Moroccan Dirham',
2697
2793
  code: 'MAD'
2698
2794
  }, {
2795
+ name: 'Mozambique Metical',
2699
2796
  code: 'MZN',
2700
2797
  symbol: 'MT'
2701
2798
  }, {
2799
+ name: 'Kyat',
2702
2800
  code: 'MMK'
2703
2801
  }, {
2802
+ name: 'Namibia Dollar',
2704
2803
  code: 'NAD',
2705
2804
  symbol: '$'
2706
2805
  }, {
2806
+ name: 'Nepalese Rupee',
2707
2807
  code: 'NPR',
2708
2808
  symbol: '₨'
2709
2809
  }, {
2810
+ name: 'Cordoba Oro',
2710
2811
  code: 'NIO',
2711
2812
  symbol: 'C$'
2712
2813
  }, {
2814
+ name: 'Naira',
2713
2815
  code: 'NGN',
2714
2816
  symbol: '₦'
2715
2817
  }, {
2818
+ name: 'Rial Omani',
2716
2819
  code: 'OMR',
2717
2820
  symbol: '﷼'
2718
2821
  }, {
2822
+ name: 'Pakistan Rupee',
2719
2823
  code: 'PKR',
2720
2824
  symbol: '₨'
2721
2825
  }, {
2826
+ name: 'Balboa',
2722
2827
  code: 'PAB',
2723
2828
  symbol: 'B/.'
2724
2829
  }, {
2830
+ name: 'Kina',
2725
2831
  code: 'PGK'
2726
2832
  }, {
2833
+ name: 'Guarani',
2727
2834
  code: 'PYG',
2728
2835
  symbol: 'Gs'
2729
2836
  }, {
2837
+ name: 'Sol',
2730
2838
  code: 'PEN',
2731
2839
  symbol: 'S/.'
2732
2840
  }, {
2841
+ name: 'Philippine Peso',
2733
2842
  code: 'PHP',
2734
2843
  symbol: '₱'
2735
2844
  }, {
2845
+ name: 'Zloty',
2736
2846
  code: 'PLN',
2737
2847
  symbol: 'zł'
2738
2848
  }, {
2849
+ name: 'Qatari Rial',
2739
2850
  code: 'QAR',
2740
2851
  symbol: '﷼'
2741
2852
  }, {
2853
+ name: 'Romanian Leu',
2742
2854
  code: 'RON',
2743
2855
  symbol: 'lei'
2744
2856
  }, {
2857
+ name: 'Russian Ruble',
2745
2858
  code: 'RUB',
2746
2859
  symbol: '₽'
2747
2860
  }, {
2861
+ name: 'Rwanda Franc',
2748
2862
  code: 'RWF'
2749
2863
  }, {
2864
+ name: 'Saint Helena Pound',
2750
2865
  code: 'SHP',
2751
2866
  symbol: '£'
2752
2867
  }, {
2868
+ name: 'Tala',
2753
2869
  code: 'WST'
2754
2870
  }, {
2871
+ name: 'Dobra',
2755
2872
  code: 'STN'
2756
2873
  }, {
2874
+ name: 'Saudi Riyal',
2757
2875
  code: 'SAR',
2758
2876
  symbol: '﷼'
2759
2877
  }, {
2878
+ name: 'Serbian Dinar',
2760
2879
  code: 'RSD',
2761
2880
  symbol: 'Дин.'
2762
2881
  }, {
2882
+ name: 'Seychelles Rupee',
2763
2883
  code: 'SCR',
2764
2884
  symbol: '₨'
2765
2885
  }, {
2886
+ name: 'Leone',
2766
2887
  code: 'SLL'
2767
2888
  }, {
2889
+ name: 'Singapore Dollar',
2768
2890
  code: 'SGD',
2769
2891
  symbol: '$'
2770
2892
  }, {
2893
+ name: 'Sucre',
2771
2894
  code: 'XSU'
2772
2895
  }, {
2896
+ name: 'Solomon Islands Dollar',
2773
2897
  code: 'SBD',
2774
2898
  symbol: '$'
2775
2899
  }, {
2900
+ name: 'Somali Shilling',
2776
2901
  code: 'SOS',
2777
2902
  symbol: 'S'
2778
2903
  }, {
2904
+ name: 'South Sudanese Pound',
2779
2905
  code: 'SSP'
2780
2906
  }, {
2907
+ name: 'Sri Lanka Rupee',
2781
2908
  code: 'LKR',
2782
2909
  symbol: '₨'
2783
2910
  }, {
2911
+ name: 'Sudanese Pound',
2784
2912
  code: 'SDG'
2785
2913
  }, {
2914
+ name: 'Surinam Dollar',
2786
2915
  code: 'SRD',
2787
2916
  symbol: '$'
2788
2917
  }, {
2918
+ name: 'Swedish Krona',
2789
2919
  code: 'SEK',
2790
2920
  symbol: 'kr'
2791
2921
  }, {
2922
+ name: 'WIR Euro',
2792
2923
  code: 'CHE'
2793
2924
  }, {
2925
+ name: 'WIR Franc',
2794
2926
  code: 'CHW'
2795
2927
  }, {
2928
+ name: 'Syrian Pound',
2796
2929
  code: 'SYP',
2797
2930
  symbol: '£'
2798
2931
  }, {
2932
+ name: 'New Taiwan Dollar',
2799
2933
  code: 'TWD',
2800
2934
  symbol: 'NT$'
2801
2935
  }, {
2936
+ name: 'Somoni',
2802
2937
  code: 'TJS'
2803
2938
  }, {
2939
+ name: 'Tanzanian Shilling',
2804
2940
  code: 'TZS'
2805
2941
  }, {
2942
+ name: 'Baht',
2806
2943
  code: 'THB',
2807
2944
  symbol: '฿'
2808
2945
  }, {
2946
+ name: 'Pa’anga',
2809
2947
  code: 'TOP'
2810
2948
  }, {
2949
+ name: 'Trinidad and Tobago Dollar',
2811
2950
  code: 'TTD',
2812
2951
  symbol: 'TT$'
2813
2952
  }, {
2953
+ name: 'Tunisian Dinar',
2814
2954
  code: 'TND'
2815
2955
  }, {
2956
+ name: 'Turkish Lira',
2816
2957
  code: 'TRY',
2817
2958
  symbol: '₺'
2818
2959
  }, {
2960
+ name: 'Turkmenistan New Manat',
2819
2961
  code: 'TMT'
2820
2962
  }, {
2963
+ name: 'Uganda Shilling',
2821
2964
  code: 'UGX'
2822
2965
  }, {
2966
+ name: 'Hryvnia',
2823
2967
  code: 'UAH',
2824
2968
  symbol: '₴'
2825
2969
  }, {
2970
+ name: 'UAE Dirham',
2826
2971
  code: 'AED',
2827
2972
  symbol: ' د.إ'
2828
2973
  }, {
2974
+ name: 'US Dollar (Next day)',
2829
2975
  code: 'USN'
2830
2976
  }, {
2977
+ name: 'Peso Uruguayo',
2831
2978
  code: 'UYU',
2832
2979
  symbol: '$U'
2833
2980
  }, {
2981
+ name: 'Uruguay Peso en Unidades Indexadas (UI)',
2834
2982
  code: 'UYI'
2835
2983
  }, {
2984
+ name: 'Unidad Previsional',
2836
2985
  code: 'UYW'
2837
2986
  }, {
2987
+ name: 'Uzbekistan Sum',
2838
2988
  code: 'UZS',
2839
2989
  symbol: 'лв'
2840
2990
  }, {
2991
+ name: 'Vatu',
2841
2992
  code: 'VUV'
2842
2993
  }, {
2994
+ name: 'Bolívar Soberano',
2843
2995
  code: 'VES'
2844
2996
  }, {
2997
+ name: 'Bolívar Soberano',
2845
2998
  code: 'VED'
2846
2999
  }, {
3000
+ name: 'Dong',
2847
3001
  code: 'VND',
2848
3002
  symbol: '₫'
2849
3003
  }, {
3004
+ name: 'Yemeni Rial',
2850
3005
  code: 'YER',
2851
3006
  symbol: '﷼'
2852
3007
  }, {
3008
+ name: 'Zambian Kwacha',
2853
3009
  code: 'ZMW'
2854
3010
  }, {
3011
+ name: 'Zimbabwe Dollar',
2855
3012
  code: 'ZWL'
2856
3013
  }, {
3014
+ name: 'Bond Markets Unit European Composite Unit (EURCO)',
2857
3015
  code: 'XBA'
2858
3016
  }, {
3017
+ name: 'Bond Markets Unit European Monetary Unit (E.M.U.-6)',
2859
3018
  code: 'XBB'
2860
3019
  }, {
3020
+ name: 'Bond Markets Unit European Unit of Account 9 (E.U.A.-9)',
2861
3021
  code: 'XBC'
2862
3022
  }, {
3023
+ name: 'Bond Markets Unit European Unit of Account 17 (E.U.A.-17)',
2863
3024
  code: 'XBD'
2864
3025
  }, {
3026
+ name: 'Codes specifically reserved for testing purposes',
2865
3027
  code: 'XTS'
2866
3028
  }, {
3029
+ name: 'The codes assigned for transactions where no currency is involved',
2867
3030
  code: 'XXX'
2868
3031
  }, {
3032
+ name: 'Gold',
2869
3033
  code: 'XAU'
2870
3034
  }, {
3035
+ name: 'Palladium',
2871
3036
  code: 'XPD'
2872
3037
  }, {
3038
+ name: 'Platinum',
2873
3039
  code: 'XPT'
2874
3040
  }, {
3041
+ name: 'Silver',
2875
3042
  code: 'XAG'
2876
3043
  }];
2877
3044
 
@@ -2882,7 +3049,7 @@ const ALL_CURRENCIES = [{
2882
3049
 
2883
3050
  "use strict";
2884
3051
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
2885
- /* harmony export */ Z: () => (/* binding */ Gate)
3052
+ /* harmony export */ "Z": () => (/* binding */ Gate)
2886
3053
  /* harmony export */ });
2887
3054
  class Gate {
2888
3055
  constructor(isOpen) {
@@ -2925,41 +3092,41 @@ class Gate {
2925
3092
 
2926
3093
  // EXPORTS
2927
3094
  __webpack_require__.d(__webpack_exports__, {
2928
- Z: () => (/* binding */ util)
3095
+ "Z": () => (/* binding */ util)
2929
3096
  });
2930
3097
 
2931
3098
  // NAMESPACE OBJECT: ./src/util/extractor.js
2932
3099
  var extractor_namespaceObject = {};
2933
3100
  __webpack_require__.r(extractor_namespaceObject);
2934
3101
  __webpack_require__.d(extractor_namespaceObject, {
2935
- extract: () => (extract),
2936
- extractEmails: () => (extractEmails),
2937
- extractEmojis: () => (extractEmojis),
2938
- extractLinks: () => (extractLinks),
2939
- extractPhones: () => (extractPhones),
2940
- extractText: () => (extractText),
2941
- pipeExtracts: () => (pipeExtracts)
3102
+ "extract": () => (extract),
3103
+ "extractEmails": () => (extractEmails),
3104
+ "extractEmojis": () => (extractEmojis),
3105
+ "extractLinks": () => (extractLinks),
3106
+ "extractPhones": () => (extractPhones),
3107
+ "extractText": () => (extractText),
3108
+ "pipeExtracts": () => (pipeExtracts)
2942
3109
  });
2943
3110
 
2944
3111
  // NAMESPACE OBJECT: ./src/util/campaign.js
2945
3112
  var campaign_namespaceObject = {};
2946
3113
  __webpack_require__.r(campaign_namespaceObject);
2947
3114
  __webpack_require__.d(campaign_namespaceObject, {
2948
- trackAreaClicked: () => (trackAreaClicked),
2949
- trackExitIntent: () => (trackExitIntent),
2950
- trackInactivity: () => (trackInactivity),
2951
- trackScrollingPercentage: () => (trackScrollingPercentage),
2952
- trackTimeOnPage: () => (trackTimeOnPage)
3115
+ "trackAreaClicked": () => (trackAreaClicked),
3116
+ "trackExitIntent": () => (trackExitIntent),
3117
+ "trackInactivity": () => (trackInactivity),
3118
+ "trackScrollingPercentage": () => (trackScrollingPercentage),
3119
+ "trackTimeOnPage": () => (trackTimeOnPage)
2953
3120
  });
2954
3121
 
2955
3122
  // NAMESPACE OBJECT: ./src/util/order.js
2956
3123
  var order_namespaceObject = {};
2957
3124
  __webpack_require__.r(order_namespaceObject);
2958
3125
  __webpack_require__.d(order_namespaceObject, {
2959
- calcOrderTotal: () => (calcOrderTotal),
2960
- displayOrderShippingAddress: () => (displayOrderShippingAddress),
2961
- getOrderDisplayName: () => (getOrderDisplayName),
2962
- getProductPropName: () => (getProductPropName)
3126
+ "calcOrderTotal": () => (calcOrderTotal),
3127
+ "displayOrderShippingAddress": () => (displayOrderShippingAddress),
3128
+ "getOrderDisplayName": () => (getOrderDisplayName),
3129
+ "getProductPropName": () => (getProductPropName)
2963
3130
  });
2964
3131
 
2965
3132
  // EXTERNAL MODULE: ./src/util/common.js
@@ -3119,7 +3286,9 @@ function trackAreaClicked(selector, cb) {
3119
3286
  on('click', selector, cb);
3120
3287
  });
3121
3288
  }
3122
- function trackInactivity(seconds = 0, cb) {
3289
+ function trackInactivity() {
3290
+ let seconds = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;
3291
+ let cb = arguments.length > 1 ? arguments[1] : undefined;
3123
3292
  let events = ['scroll', 'keyup', 'keydown', 'mousemove', 'mousewheel', 'mouseenter', 'mouseover', 'mousedown', 'touchstart', 'touchmove', 'touchenter'];
3124
3293
  let inactiveSeconds = 0;
3125
3294
  let resetTime = () => {
@@ -3142,7 +3311,9 @@ let timeOnPage = 0;
3142
3311
  campaign_common.setInterval(() => {
3143
3312
  timeOnPage += 5;
3144
3313
  }, 5000);
3145
- function trackTimeOnPage(seconds = 0, cb) {
3314
+ function trackTimeOnPage() {
3315
+ let seconds = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;
3316
+ let cb = arguments.length > 1 ? arguments[1] : undefined;
3146
3317
  if (seconds < 1) {
3147
3318
  return campaign_common.setTimeout(function () {
3148
3319
  cb(seconds);
@@ -3178,7 +3349,8 @@ op.map = order_common.map;
3178
3349
  op.each = order_common.each;
3179
3350
  op.size = order_common.size;
3180
3351
  op.find = order_common.find;
3181
- function getProductPropName(product, seperator = ' - ') {
3352
+ function getProductPropName(product) {
3353
+ let seperator = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : ' - ';
3182
3354
  let options = op.get(product, 'options', []);
3183
3355
  let props = op.get(product, 'props', []);
3184
3356
  let multiPropsOptions = op.filter(options, option => op.size(option.values) > 1);
@@ -3189,7 +3361,8 @@ function getProductPropName(product, seperator = ' - ') {
3189
3361
  });
3190
3362
  return names.join(seperator);
3191
3363
  }
3192
- function getOrderDisplayName(order = {}) {
3364
+ function getOrderDisplayName() {
3365
+ let order = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
3193
3366
  return order.number || order.id || '';
3194
3367
  }
3195
3368
  function displayOrderShippingAddress(order, isShorten) {
@@ -3299,7 +3472,7 @@ sb = Object.assign(sb, order_namespaceObject);
3299
3472
 
3300
3473
  "use strict";
3301
3474
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
3302
- /* harmony export */ Z: () => (/* binding */ Mutex)
3475
+ /* harmony export */ "Z": () => (/* binding */ Mutex)
3303
3476
  /* harmony export */ });
3304
3477
  class Mutex {
3305
3478
  constructor() {
@@ -3334,8 +3507,8 @@ class Mutex {
3334
3507
  "use strict";
3335
3508
  __webpack_require__.r(__webpack_exports__);
3336
3509
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
3337
- /* harmony export */ get: () => (/* binding */ get),
3338
- /* harmony export */ set: () => (/* binding */ set)
3510
+ /* harmony export */ "get": () => (/* binding */ get),
3511
+ /* harmony export */ "set": () => (/* binding */ set)
3339
3512
  /* harmony export */ });
3340
3513
  var toStr = Object.prototype.toString;
3341
3514
  var isArray = Array.isArray || function (obj) {
@@ -3393,7 +3566,7 @@ function set(obj, path, value) {
3393
3566
 
3394
3567
  "use strict";
3395
3568
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
3396
- /* harmony export */ Z: () => (/* binding */ Pubsub)
3569
+ /* harmony export */ "Z": () => (/* binding */ Pubsub)
3397
3570
  /* harmony export */ });
3398
3571
  var {
3399
3572
  filter,
@@ -3405,9 +3578,12 @@ class Pubsub {
3405
3578
  }
3406
3579
  publish(topic, payload, payload2, payload3) {
3407
3580
  this.listeners[topic] = filter(this.listeners[topic], sub => sub.obj._isMounted);
3408
- map(this.listeners[topic], ({
3409
- cb
3410
- }) => cb(payload, payload2, payload3));
3581
+ map(this.listeners[topic], _ref => {
3582
+ let {
3583
+ cb
3584
+ } = _ref;
3585
+ return cb(payload, payload2, payload3);
3586
+ });
3411
3587
  }
3412
3588
  on2(obj, topic, cb) {
3413
3589
  if (!this.listeners[topic]) this.listeners[topic] = [];
@@ -3612,14 +3788,14 @@ class Pubsub {
3612
3788
 
3613
3789
  "use strict";
3614
3790
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
3615
- /* harmony export */ HY: () => (/* binding */ g),
3616
- /* harmony export */ Vf: () => (/* binding */ _),
3617
- /* harmony export */ h: () => (/* binding */ y),
3618
- /* harmony export */ sY: () => (/* binding */ q),
3619
- /* harmony export */ wA: () => (/* binding */ b)
3791
+ /* harmony export */ "HY": () => (/* binding */ p),
3792
+ /* harmony export */ "Vf": () => (/* binding */ y),
3793
+ /* harmony export */ "h": () => (/* binding */ h),
3794
+ /* harmony export */ "sY": () => (/* binding */ P),
3795
+ /* harmony export */ "wA": () => (/* binding */ d)
3620
3796
  /* harmony export */ });
3621
3797
  /* unused harmony exports cloneElement, createContext, createElement, hydrate, isValidElement, options, toChildArray */
3622
- var n,l,u,t,i,o,r,f,e,c={},s=[],a=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,h=Array.isArray;function v(n,l){for(var u in l)n[u]=l[u];return n}function p(n){var l=n.parentNode;l&&l.removeChild(n)}function y(l,u,t){var i,o,r,f={};for(r in u)"key"==r?i=u[r]:"ref"==r?o=u[r]:f[r]=u[r];if(arguments.length>2&&(f.children=arguments.length>3?n.call(arguments,2):t),"function"==typeof l&&null!=l.defaultProps)for(r in l.defaultProps)void 0===f[r]&&(f[r]=l.defaultProps[r]);return d(l,f,i,o,null)}function d(n,t,i,o,r){var f={type:n,props:t,key:i,ref:o,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,constructor:void 0,__v:null==r?++u:r,__i:-1,__u:0};return null==r&&null!=l.vnode&&l.vnode(f),f}function _(){return{current:null}}function g(n){return n.children}function b(n,l){this.props=n,this.context=l}function m(n,l){if(null==l)return n.__?m(n.__,n.__i+1):null;for(var u;l<n.__k.length;l++)if(null!=(u=n.__k[l])&&null!=u.__e)return u.__e;return"function"==typeof n.type?m(n):null}function k(n){var l,u;if(null!=(n=n.__)&&null!=n.__c){for(n.__e=n.__c.base=null,l=0;l<n.__k.length;l++)if(null!=(u=n.__k[l])&&null!=u.__e){n.__e=n.__c.base=u.__e;break}return k(n)}}function w(n){(!n.__d&&(n.__d=!0)&&i.push(n)&&!x.__r++||o!==l.debounceRendering)&&((o=l.debounceRendering)||r)(x)}function x(){var n,u,t,o,r,e,c,s,a;for(i.sort(f);n=i.shift();)n.__d&&(u=i.length,o=void 0,e=(r=(t=n).__v).__e,s=[],a=[],(c=t.__P)&&((o=v({},r)).__v=r.__v+1,l.vnode&&l.vnode(o),L(c,o,r,t.__n,void 0!==c.ownerSVGElement,32&r.__u?[e]:null,s,null==e?m(r):e,!!(32&r.__u),a),o.__.__k[o.__i]=o,M(s,o,a),o.__e!=e&&k(o)),i.length>u&&i.sort(f));x.__r=0}function C(n,l,u,t,i,o,r,f,e,a,h){var v,p,y,d,_,g=t&&t.__k||s,b=l.length;for(u.__d=e,P(u,l,g),e=u.__d,v=0;v<b;v++)null!=(y=u.__k[v])&&"boolean"!=typeof y&&"function"!=typeof y&&(p=-1===y.__i?c:g[y.__i]||c,y.__i=v,L(n,y,p,i,o,r,f,e,a,h),d=y.__e,y.ref&&p.ref!=y.ref&&(p.ref&&z(p.ref,null,y),h.push(y.ref,y.__c||d,y)),null==_&&null!=d&&(_=d),65536&y.__u||p.__k===y.__k?e=S(y,e,n):"function"==typeof y.type&&void 0!==y.__d?e=y.__d:d&&(e=d.nextSibling),y.__d=void 0,y.__u&=-196609);u.__d=e,u.__e=_}function P(n,l,u){var t,i,o,r,f,e=l.length,c=u.length,s=c,a=0;for(n.__k=[],t=0;t<e;t++)null!=(i=n.__k[t]=null==(i=l[t])||"boolean"==typeof i||"function"==typeof i?null:"string"==typeof i||"number"==typeof i||"bigint"==typeof i||i.constructor==String?d(null,i,null,null,i):h(i)?d(g,{children:i},null,null,null):void 0===i.constructor&&i.__b>0?d(i.type,i.props,i.key,i.ref?i.ref:null,i.__v):i)?(i.__=n,i.__b=n.__b+1,f=H(i,u,r=t+a,s),i.__i=f,o=null,-1!==f&&(s--,(o=u[f])&&(o.__u|=131072)),null==o||null===o.__v?(-1==f&&a--,"function"!=typeof i.type&&(i.__u|=65536)):f!==r&&(f===r+1?a++:f>r?s>e-r?a+=f-r:a--:a=f<r&&f==r-1?f-r:0,f!==t+a&&(i.__u|=65536))):(o=u[t])&&null==o.key&&o.__e&&(o.__e==n.__d&&(n.__d=m(o)),N(o,o,!1),u[t]=null,s--);if(s)for(t=0;t<c;t++)null!=(o=u[t])&&0==(131072&o.__u)&&(o.__e==n.__d&&(n.__d=m(o)),N(o,o))}function S(n,l,u){var t,i;if("function"==typeof n.type){for(t=n.__k,i=0;t&&i<t.length;i++)t[i]&&(t[i].__=n,l=S(t[i],l,u));return l}return n.__e!=l&&(u.insertBefore(n.__e,l||null),l=n.__e),l&&l.nextSibling}function $(n,l){return l=l||[],null==n||"boolean"==typeof n||(h(n)?n.some(function(n){$(n,l)}):l.push(n)),l}function H(n,l,u,t){var i=n.key,o=n.type,r=u-1,f=u+1,e=l[u];if(null===e||e&&i==e.key&&o===e.type)return u;if(t>(null!=e&&0==(131072&e.__u)?1:0))for(;r>=0||f<l.length;){if(r>=0){if((e=l[r])&&0==(131072&e.__u)&&i==e.key&&o===e.type)return r;r--}if(f<l.length){if((e=l[f])&&0==(131072&e.__u)&&i==e.key&&o===e.type)return f;f++}}return-1}function I(n,l,u){"-"===l[0]?n.setProperty(l,null==u?"":u):n[l]=null==u?"":"number"!=typeof u||a.test(l)?u:u+"px"}function T(n,l,u,t,i){var o;n:if("style"===l)if("string"==typeof u)n.style.cssText=u;else{if("string"==typeof t&&(n.style.cssText=t=""),t)for(l in t)u&&l in u||I(n.style,l,"");if(u)for(l in u)t&&u[l]===t[l]||I(n.style,l,u[l])}else if("o"===l[0]&&"n"===l[1])o=l!==(l=l.replace(/(PointerCapture)$|Capture$/,"$1")),l=l.toLowerCase()in n?l.toLowerCase().slice(2):l.slice(2),n.l||(n.l={}),n.l[l+o]=u,u?t?u.u=t.u:(u.u=Date.now(),n.addEventListener(l,o?D:A,o)):n.removeEventListener(l,o?D:A,o);else{if(i)l=l.replace(/xlink(H|:h)/,"h").replace(/sName$/,"s");else if("width"!==l&&"height"!==l&&"href"!==l&&"list"!==l&&"form"!==l&&"tabIndex"!==l&&"download"!==l&&"rowSpan"!==l&&"colSpan"!==l&&"role"!==l&&l in n)try{n[l]=null==u?"":u;break n}catch(n){}"function"==typeof u||(null==u||!1===u&&"-"!==l[4]?n.removeAttribute(l):n.setAttribute(l,u))}}function A(n){var u=this.l[n.type+!1];if(n.t){if(n.t<=u.u)return}else n.t=Date.now();return u(l.event?l.event(n):n)}function D(n){return this.l[n.type+!0](l.event?l.event(n):n)}function L(n,u,t,i,o,r,f,e,c,s){var a,p,y,d,_,m,k,w,x,P,S,$,H,I,T,A=u.type;if(void 0!==u.constructor)return null;128&t.__u&&(c=!!(32&t.__u),r=[e=u.__e=t.__e]),(a=l.__b)&&a(u);n:if("function"==typeof A)try{if(w=u.props,x=(a=A.contextType)&&i[a.__c],P=a?x?x.props.value:a.__:i,t.__c?k=(p=u.__c=t.__c).__=p.__E:("prototype"in A&&A.prototype.render?u.__c=p=new A(w,P):(u.__c=p=new b(w,P),p.constructor=A,p.render=O),x&&x.sub(p),p.props=w,p.state||(p.state={}),p.context=P,p.__n=i,y=p.__d=!0,p.__h=[],p._sb=[]),null==p.__s&&(p.__s=p.state),null!=A.getDerivedStateFromProps&&(p.__s==p.state&&(p.__s=v({},p.__s)),v(p.__s,A.getDerivedStateFromProps(w,p.__s))),d=p.props,_=p.state,p.__v=u,y)null==A.getDerivedStateFromProps&&null!=p.componentWillMount&&p.componentWillMount(),null!=p.componentDidMount&&p.__h.push(p.componentDidMount);else{if(null==A.getDerivedStateFromProps&&w!==d&&null!=p.componentWillReceiveProps&&p.componentWillReceiveProps(w,P),!p.__e&&(null!=p.shouldComponentUpdate&&!1===p.shouldComponentUpdate(w,p.__s,P)||u.__v===t.__v)){for(u.__v!==t.__v&&(p.props=w,p.state=p.__s,p.__d=!1),u.__e=t.__e,u.__k=t.__k,u.__k.forEach(function(n){n&&(n.__=u)}),S=0;S<p._sb.length;S++)p.__h.push(p._sb[S]);p._sb=[],p.__h.length&&f.push(p);break n}null!=p.componentWillUpdate&&p.componentWillUpdate(w,p.__s,P),null!=p.componentDidUpdate&&p.__h.push(function(){p.componentDidUpdate(d,_,m)})}if(p.context=P,p.props=w,p.__P=n,p.__e=!1,$=l.__r,H=0,"prototype"in A&&A.prototype.render){for(p.state=p.__s,p.__d=!1,$&&$(u),a=p.render(p.props,p.state,p.context),I=0;I<p._sb.length;I++)p.__h.push(p._sb[I]);p._sb=[]}else do{p.__d=!1,$&&$(u),a=p.render(p.props,p.state,p.context),p.state=p.__s}while(p.__d&&++H<25);p.state=p.__s,null!=p.getChildContext&&(i=v(v({},i),p.getChildContext())),y||null==p.getSnapshotBeforeUpdate||(m=p.getSnapshotBeforeUpdate(d,_)),C(n,h(T=null!=a&&a.type===g&&null==a.key?a.props.children:a)?T:[T],u,t,i,o,r,f,e,c,s),p.base=u.__e,u.__u&=-161,p.__h.length&&f.push(p),k&&(p.__E=p.__=null)}catch(n){u.__v=null,c||null!=r?(u.__e=e,u.__u|=c?160:32,r[r.indexOf(e)]=null):(u.__e=t.__e,u.__k=t.__k),l.__e(n,u,t)}else null==r&&u.__v===t.__v?(u.__k=t.__k,u.__e=t.__e):u.__e=j(t.__e,u,t,i,o,r,f,c,s);(a=l.diffed)&&a(u)}function M(n,u,t){u.__d=void 0;for(var i=0;i<t.length;i++)z(t[i],t[++i],t[++i]);l.__c&&l.__c(u,n),n.some(function(u){try{n=u.__h,u.__h=[],n.some(function(n){n.call(u)})}catch(n){l.__e(n,u.__v)}})}function j(l,u,t,i,o,r,f,e,s){var a,v,y,d,_,g,b,k=t.props,w=u.props,x=u.type;if("svg"===x&&(o=!0),null!=r)for(a=0;a<r.length;a++)if((_=r[a])&&"setAttribute"in _==!!x&&(x?_.localName===x:3===_.nodeType)){l=_,r[a]=null;break}if(null==l){if(null===x)return document.createTextNode(w);l=o?document.createElementNS("http://www.w3.org/2000/svg",x):document.createElement(x,w.is&&w),r=null,e=!1}if(null===x)k===w||e&&l.data===w||(l.data=w);else{if(r=r&&n.call(l.childNodes),k=t.props||c,!e&&null!=r)for(k={},a=0;a<l.attributes.length;a++)k[(_=l.attributes[a]).name]=_.value;for(a in k)_=k[a],"children"==a||("dangerouslySetInnerHTML"==a?y=_:"key"===a||a in w||T(l,a,null,_,o));for(a in w)_=w[a],"children"==a?d=_:"dangerouslySetInnerHTML"==a?v=_:"value"==a?g=_:"checked"==a?b=_:"key"===a||e&&"function"!=typeof _||k[a]===_||T(l,a,_,k[a],o);if(v)e||y&&(v.__html===y.__html||v.__html===l.innerHTML)||(l.innerHTML=v.__html),u.__k=[];else if(y&&(l.innerHTML=""),C(l,h(d)?d:[d],u,t,i,o&&"foreignObject"!==x,r,f,r?r[0]:t.__k&&m(t,0),e,s),null!=r)for(a=r.length;a--;)null!=r[a]&&p(r[a]);e||(a="value",void 0!==g&&(g!==l[a]||"progress"===x&&!g||"option"===x&&g!==k[a])&&T(l,a,g,k[a],!1),a="checked",void 0!==b&&b!==l[a]&&T(l,a,b,k[a],!1))}return l}function z(n,u,t){try{"function"==typeof n?n(u):n.current=u}catch(n){l.__e(n,t)}}function N(n,u,t){var i,o;if(l.unmount&&l.unmount(n),(i=n.ref)&&(i.current&&i.current!==n.__e||z(i,null,u)),null!=(i=n.__c)){if(i.componentWillUnmount)try{i.componentWillUnmount()}catch(n){l.__e(n,u)}i.base=i.__P=null,n.__c=void 0}if(i=n.__k)for(o=0;o<i.length;o++)i[o]&&N(i[o],u,t||"function"!=typeof n.type);t||null==n.__e||p(n.__e),n.__=n.__e=n.__d=void 0}function O(n,l,u){return this.constructor(n,u)}function q(u,t,i){var o,r,f,e;l.__&&l.__(u,t),r=(o="function"==typeof i)?null:i&&i.__k||t.__k,f=[],e=[],L(t,u=(!o&&i||t).__k=y(g,null,[u]),r||c,c,void 0!==t.ownerSVGElement,!o&&i?[i]:r?null:t.firstChild?n.call(t.childNodes):null,f,!o&&i?i:r?r.__e:t.firstChild,o,e),M(f,u,e)}function B(n,l){q(n,l,B)}function E(l,u,t){var i,o,r,f,e=v({},l.props);for(r in l.type&&l.type.defaultProps&&(f=l.type.defaultProps),u)"key"==r?i=u[r]:"ref"==r?o=u[r]:e[r]=void 0===u[r]&&void 0!==f?f[r]:u[r];return arguments.length>2&&(e.children=arguments.length>3?n.call(arguments,2):t),d(l.type,e,i||l.key,o||l.ref,null)}function F(n,l){var u={__c:l="__cC"+e++,__:n,Consumer:function(n,l){return n.children(l)},Provider:function(n){var u,t;return this.getChildContext||(u=[],(t={})[l]=this,this.getChildContext=function(){return t},this.shouldComponentUpdate=function(n){this.props.value!==n.value&&u.some(function(n){n.__e=!0,w(n)})},this.sub=function(n){u.push(n);var l=n.componentWillUnmount;n.componentWillUnmount=function(){u.splice(u.indexOf(n),1),l&&l.call(n)}}),n.children}};return u.Provider.__=u.Consumer.contextType=u}n=s.slice,l={__e:function(n,l,u,t){for(var i,o,r;l=l.__;)if((i=l.__c)&&!i.__)try{if((o=i.constructor)&&null!=o.getDerivedStateFromError&&(i.setState(o.getDerivedStateFromError(n)),r=i.__d),null!=i.componentDidCatch&&(i.componentDidCatch(n,t||{}),r=i.__d),r)return i.__E=i}catch(l){n=l}throw n}},u=0,t=function(n){return null!=n&&null==n.constructor},b.prototype.setState=function(n,l){var u;u=null!=this.__s&&this.__s!==this.state?this.__s:this.__s=v({},this.state),"function"==typeof n&&(n=n(v({},u),this.props)),n&&v(u,n),null!=n&&this.__v&&(l&&this._sb.push(l),w(this))},b.prototype.forceUpdate=function(n){this.__v&&(this.__e=!0,n&&this.__h.push(n),w(this))},b.prototype.render=g,i=[],r="function"==typeof Promise?Promise.prototype.then.bind(Promise.resolve()):setTimeout,f=function(n,l){return n.__v.__b-l.__v.__b},x.__r=0,e=0;
3798
+ var n,l,u,i,t,o,r,f={},e=[],c=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i;function s(n,l){for(var u in l)n[u]=l[u];return n}function a(n){var l=n.parentNode;l&&l.removeChild(n)}function h(l,u,i){var t,o,r,f={};for(r in u)"key"==r?t=u[r]:"ref"==r?o=u[r]:f[r]=u[r];if(arguments.length>2&&(f.children=arguments.length>3?n.call(arguments,2):i),"function"==typeof l&&null!=l.defaultProps)for(r in l.defaultProps)void 0===f[r]&&(f[r]=l.defaultProps[r]);return v(l,f,t,o,null)}function v(n,i,t,o,r){var f={type:n,props:i,key:t,ref:o,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,__h:null,constructor:void 0,__v:null==r?++u:r};return null==r&&null!=l.vnode&&l.vnode(f),f}function y(){return{current:null}}function p(n){return n.children}function d(n,l){this.props=n,this.context=l}function _(n,l){if(null==l)return n.__?_(n.__,n.__.__k.indexOf(n)+1):null;for(var u;l<n.__k.length;l++)if(null!=(u=n.__k[l])&&null!=u.__e)return u.__e;return"function"==typeof n.type?_(n):null}function k(n){var l,u;if(null!=(n=n.__)&&null!=n.__c){for(n.__e=n.__c.base=null,l=0;l<n.__k.length;l++)if(null!=(u=n.__k[l])&&null!=u.__e){n.__e=n.__c.base=u.__e;break}return k(n)}}function b(n){(!n.__d&&(n.__d=!0)&&t.push(n)&&!g.__r++||o!==l.debounceRendering)&&((o=l.debounceRendering)||setTimeout)(g)}function g(){for(var n;g.__r=t.length;)n=t.sort(function(n,l){return n.__v.__b-l.__v.__b}),t=[],n.some(function(n){var l,u,i,t,o,r;n.__d&&(o=(t=(l=n).__v).__e,(r=l.__P)&&(u=[],(i=s({},t)).__v=t.__v+1,j(r,t,i,l.__n,void 0!==r.ownerSVGElement,null!=t.__h?[o]:null,u,null==o?_(t):o,t.__h),z(u,t),t.__e!=o&&k(t)))})}function w(n,l,u,i,t,o,r,c,s,a){var h,y,d,k,b,g,w,x=i&&i.__k||e,C=x.length;for(u.__k=[],h=0;h<l.length;h++)if(null!=(k=u.__k[h]=null==(k=l[h])||"boolean"==typeof k?null:"string"==typeof k||"number"==typeof k||"bigint"==typeof k?v(null,k,null,null,k):Array.isArray(k)?v(p,{children:k},null,null,null):k.__b>0?v(k.type,k.props,k.key,k.ref?k.ref:null,k.__v):k)){if(k.__=u,k.__b=u.__b+1,null===(d=x[h])||d&&k.key==d.key&&k.type===d.type)x[h]=void 0;else for(y=0;y<C;y++){if((d=x[y])&&k.key==d.key&&k.type===d.type){x[y]=void 0;break}d=null}j(n,k,d=d||f,t,o,r,c,s,a),b=k.__e,(y=k.ref)&&d.ref!=y&&(w||(w=[]),d.ref&&w.push(d.ref,null,k),w.push(y,k.__c||b,k)),null!=b?(null==g&&(g=b),"function"==typeof k.type&&k.__k===d.__k?k.__d=s=m(k,s,n):s=A(n,k,d,x,b,s),"function"==typeof u.type&&(u.__d=s)):s&&d.__e==s&&s.parentNode!=n&&(s=_(d))}for(u.__e=g,h=C;h--;)null!=x[h]&&N(x[h],x[h]);if(w)for(h=0;h<w.length;h++)M(w[h],w[++h],w[++h])}function m(n,l,u){for(var i,t=n.__k,o=0;t&&o<t.length;o++)(i=t[o])&&(i.__=n,l="function"==typeof i.type?m(i,l,u):A(u,i,i,t,i.__e,l));return l}function x(n,l){return l=l||[],null==n||"boolean"==typeof n||(Array.isArray(n)?n.some(function(n){x(n,l)}):l.push(n)),l}function A(n,l,u,i,t,o){var r,f,e;if(void 0!==l.__d)r=l.__d,l.__d=void 0;else if(null==u||t!=o||null==t.parentNode)n:if(null==o||o.parentNode!==n)n.appendChild(t),r=null;else{for(f=o,e=0;(f=f.nextSibling)&&e<i.length;e+=1)if(f==t)break n;n.insertBefore(t,o),r=o}return void 0!==r?r:t.nextSibling}function C(n,l,u,i,t){var o;for(o in u)"children"===o||"key"===o||o in l||H(n,o,null,u[o],i);for(o in l)t&&"function"!=typeof l[o]||"children"===o||"key"===o||"value"===o||"checked"===o||u[o]===l[o]||H(n,o,l[o],u[o],i)}function $(n,l,u){"-"===l[0]?n.setProperty(l,u):n[l]=null==u?"":"number"!=typeof u||c.test(l)?u:u+"px"}function H(n,l,u,i,t){var o;n:if("style"===l)if("string"==typeof u)n.style.cssText=u;else{if("string"==typeof i&&(n.style.cssText=i=""),i)for(l in i)u&&l in u||$(n.style,l,"");if(u)for(l in u)i&&u[l]===i[l]||$(n.style,l,u[l])}else if("o"===l[0]&&"n"===l[1])o=l!==(l=l.replace(/Capture$/,"")),l=l.toLowerCase()in n?l.toLowerCase().slice(2):l.slice(2),n.l||(n.l={}),n.l[l+o]=u,u?i||n.addEventListener(l,o?T:I,o):n.removeEventListener(l,o?T:I,o);else if("dangerouslySetInnerHTML"!==l){if(t)l=l.replace(/xlink(H|:h)/,"h").replace(/sName$/,"s");else if("href"!==l&&"list"!==l&&"form"!==l&&"tabIndex"!==l&&"download"!==l&&l in n)try{n[l]=null==u?"":u;break n}catch(n){}"function"==typeof u||(null==u||!1===u&&-1==l.indexOf("-")?n.removeAttribute(l):n.setAttribute(l,u))}}function I(n){this.l[n.type+!1](l.event?l.event(n):n)}function T(n){this.l[n.type+!0](l.event?l.event(n):n)}function j(n,u,i,t,o,r,f,e,c){var a,h,v,y,_,k,b,g,m,x,A,C,$,H,I,T=u.type;if(void 0!==u.constructor)return null;null!=i.__h&&(c=i.__h,e=u.__e=i.__e,u.__h=null,r=[e]),(a=l.__b)&&a(u);try{n:if("function"==typeof T){if(g=u.props,m=(a=T.contextType)&&t[a.__c],x=a?m?m.props.value:a.__:t,i.__c?b=(h=u.__c=i.__c).__=h.__E:("prototype"in T&&T.prototype.render?u.__c=h=new T(g,x):(u.__c=h=new d(g,x),h.constructor=T,h.render=O),m&&m.sub(h),h.props=g,h.state||(h.state={}),h.context=x,h.__n=t,v=h.__d=!0,h.__h=[],h._sb=[]),null==h.__s&&(h.__s=h.state),null!=T.getDerivedStateFromProps&&(h.__s==h.state&&(h.__s=s({},h.__s)),s(h.__s,T.getDerivedStateFromProps(g,h.__s))),y=h.props,_=h.state,v)null==T.getDerivedStateFromProps&&null!=h.componentWillMount&&h.componentWillMount(),null!=h.componentDidMount&&h.__h.push(h.componentDidMount);else{if(null==T.getDerivedStateFromProps&&g!==y&&null!=h.componentWillReceiveProps&&h.componentWillReceiveProps(g,x),!h.__e&&null!=h.shouldComponentUpdate&&!1===h.shouldComponentUpdate(g,h.__s,x)||u.__v===i.__v){for(h.props=g,h.state=h.__s,u.__v!==i.__v&&(h.__d=!1),h.__v=u,u.__e=i.__e,u.__k=i.__k,u.__k.forEach(function(n){n&&(n.__=u)}),A=0;A<h._sb.length;A++)h.__h.push(h._sb[A]);h._sb=[],h.__h.length&&f.push(h);break n}null!=h.componentWillUpdate&&h.componentWillUpdate(g,h.__s,x),null!=h.componentDidUpdate&&h.__h.push(function(){h.componentDidUpdate(y,_,k)})}if(h.context=x,h.props=g,h.__v=u,h.__P=n,C=l.__r,$=0,"prototype"in T&&T.prototype.render){for(h.state=h.__s,h.__d=!1,C&&C(u),a=h.render(h.props,h.state,h.context),H=0;H<h._sb.length;H++)h.__h.push(h._sb[H]);h._sb=[]}else do{h.__d=!1,C&&C(u),a=h.render(h.props,h.state,h.context),h.state=h.__s}while(h.__d&&++$<25);h.state=h.__s,null!=h.getChildContext&&(t=s(s({},t),h.getChildContext())),v||null==h.getSnapshotBeforeUpdate||(k=h.getSnapshotBeforeUpdate(y,_)),I=null!=a&&a.type===p&&null==a.key?a.props.children:a,w(n,Array.isArray(I)?I:[I],u,i,t,o,r,f,e,c),h.base=u.__e,u.__h=null,h.__h.length&&f.push(h),b&&(h.__E=h.__=null),h.__e=!1}else null==r&&u.__v===i.__v?(u.__k=i.__k,u.__e=i.__e):u.__e=L(i.__e,u,i,t,o,r,f,c);(a=l.diffed)&&a(u)}catch(n){u.__v=null,(c||null!=r)&&(u.__e=e,u.__h=!!c,r[r.indexOf(e)]=null),l.__e(n,u,i)}}function z(n,u){l.__c&&l.__c(u,n),n.some(function(u){try{n=u.__h,u.__h=[],n.some(function(n){n.call(u)})}catch(n){l.__e(n,u.__v)}})}function L(l,u,i,t,o,r,e,c){var s,h,v,y=i.props,p=u.props,d=u.type,k=0;if("svg"===d&&(o=!0),null!=r)for(;k<r.length;k++)if((s=r[k])&&"setAttribute"in s==!!d&&(d?s.localName===d:3===s.nodeType)){l=s,r[k]=null;break}if(null==l){if(null===d)return document.createTextNode(p);l=o?document.createElementNS("http://www.w3.org/2000/svg",d):document.createElement(d,p.is&&p),r=null,c=!1}if(null===d)y===p||c&&l.data===p||(l.data=p);else{if(r=r&&n.call(l.childNodes),h=(y=i.props||f).dangerouslySetInnerHTML,v=p.dangerouslySetInnerHTML,!c){if(null!=r)for(y={},k=0;k<l.attributes.length;k++)y[l.attributes[k].name]=l.attributes[k].value;(v||h)&&(v&&(h&&v.__html==h.__html||v.__html===l.innerHTML)||(l.innerHTML=v&&v.__html||""))}if(C(l,p,y,o,c),v)u.__k=[];else if(k=u.props.children,w(l,Array.isArray(k)?k:[k],u,i,t,o&&"foreignObject"!==d,r,e,r?r[0]:i.__k&&_(i,0),c),null!=r)for(k=r.length;k--;)null!=r[k]&&a(r[k]);c||("value"in p&&void 0!==(k=p.value)&&(k!==l.value||"progress"===d&&!k||"option"===d&&k!==y.value)&&H(l,"value",k,y.value,!1),"checked"in p&&void 0!==(k=p.checked)&&k!==l.checked&&H(l,"checked",k,y.checked,!1))}return l}function M(n,u,i){try{"function"==typeof n?n(u):n.current=u}catch(n){l.__e(n,i)}}function N(n,u,i){var t,o;if(l.unmount&&l.unmount(n),(t=n.ref)&&(t.current&&t.current!==n.__e||M(t,null,u)),null!=(t=n.__c)){if(t.componentWillUnmount)try{t.componentWillUnmount()}catch(n){l.__e(n,u)}t.base=t.__P=null,n.__c=void 0}if(t=n.__k)for(o=0;o<t.length;o++)t[o]&&N(t[o],u,i||"function"!=typeof n.type);i||null==n.__e||a(n.__e),n.__=n.__e=n.__d=void 0}function O(n,l,u){return this.constructor(n,u)}function P(u,i,t){var o,r,e;l.__&&l.__(u,i),r=(o="function"==typeof t)?null:t&&t.__k||i.__k,e=[],j(i,u=(!o&&t||i).__k=h(p,null,[u]),r||f,f,void 0!==i.ownerSVGElement,!o&&t?[t]:r?null:i.firstChild?n.call(i.childNodes):null,e,!o&&t?t:r?r.__e:i.firstChild,o),z(e,u)}function S(n,l){P(n,l,S)}function q(l,u,i){var t,o,r,f=s({},l.props);for(r in u)"key"==r?t=u[r]:"ref"==r?o=u[r]:f[r]=u[r];return arguments.length>2&&(f.children=arguments.length>3?n.call(arguments,2):i),v(l.type,f,t||l.key,o||l.ref,null)}function B(n,l){var u={__c:l="__cC"+r++,__:n,Consumer:function(n,l){return n.children(l)},Provider:function(n){var u,i;return this.getChildContext||(u=[],(i={})[l]=this,this.getChildContext=function(){return i},this.shouldComponentUpdate=function(n){this.props.value!==n.value&&u.some(b)},this.sub=function(n){u.push(n);var l=n.componentWillUnmount;n.componentWillUnmount=function(){u.splice(u.indexOf(n),1),l&&l.call(n)}}),n.children}};return u.Provider.__=u.Consumer.contextType=u}n=e.slice,l={__e:function(n,l,u,i){for(var t,o,r;l=l.__;)if((t=l.__c)&&!t.__)try{if((o=t.constructor)&&null!=o.getDerivedStateFromError&&(t.setState(o.getDerivedStateFromError(n)),r=t.__d),null!=t.componentDidCatch&&(t.componentDidCatch(n,i||{}),r=t.__d),r)return t.__E=t}catch(l){n=l}throw n}},u=0,i=function(n){return null!=n&&void 0===n.constructor},d.prototype.setState=function(n,l){var u;u=null!=this.__s&&this.__s!==this.state?this.__s:this.__s=s({},this.state),"function"==typeof n&&(n=n(s({},u),this.props)),n&&s(u,n),null!=n&&this.__v&&(l&&this._sb.push(l),b(this))},d.prototype.forceUpdate=function(n){this.__v&&(this.__e=!0,n&&this.__h.push(n),b(this))},d.prototype.render=p,t=[],g.__r=0,r=0;
3623
3799
  //# sourceMappingURL=preact.module.js.map
3624
3800
 
3625
3801
 
@@ -3731,7 +3907,6 @@ var n,l,u,t,i,o,r,f,e,c={},s=[],a=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine
3731
3907
  /******/ script.setAttribute("nonce", __webpack_require__.nc);
3732
3908
  /******/ }
3733
3909
  /******/ script.setAttribute("data-webpack", dataWebpackPrefix + key);
3734
- /******/
3735
3910
  /******/ script.src = url;
3736
3911
  /******/ }
3737
3912
  /******/ inProgress[url] = [done];
@@ -3744,7 +3919,7 @@ var n,l,u,t,i,o,r,f,e,c={},s=[],a=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine
3744
3919
  /******/ script.parentNode && script.parentNode.removeChild(script);
3745
3920
  /******/ doneFns && doneFns.forEach((fn) => (fn(event)));
3746
3921
  /******/ if(prev) return prev(event);
3747
- /******/ }
3922
+ /******/ };
3748
3923
  /******/ var timeout = setTimeout(onScriptComplete.bind(null, undefined, { type: 'timeout', target: script }), 120000);
3749
3924
  /******/ script.onerror = onScriptComplete.bind(null, script.onerror);
3750
3925
  /******/ script.onload = onScriptComplete.bind(null, script.onload);
@@ -3813,7 +3988,7 @@ var n,l,u,t,i,o,r,f,e,c={},s=[],a=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine
3813
3988
  /******/ }
3814
3989
  /******/ };
3815
3990
  /******/ __webpack_require__.l(url, loadingEnded, "chunk-" + chunkId, chunkId);
3816
- /******/ }
3991
+ /******/ } else installedChunks[chunkId] = 0;
3817
3992
  /******/ }
3818
3993
  /******/ }
3819
3994
  /******/ };
@@ -3879,14 +4054,14 @@ var lsdb = (__webpack_require__(6929)/* ["default"] */ .Z);
3879
4054
  });
3880
4055
  ;// CONCATENATED MODULE: ./src/store/api.js
3881
4056
  function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
3882
- function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : String(i); }
3883
- function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
4057
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
4058
+ function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
3884
4059
 
3885
4060
  const ajax = __webpack_require__(7460);
3886
- ajax.env.XMLHttpRequest = util/* default */.Z.XMLHttpRequest;
4061
+ ajax.env.XMLHttpRequest = util/* default.XMLHttpRequest */.Z.XMLHttpRequest;
3887
4062
  function jsonifyTextPlain(param, done) {
3888
4063
  let req = param.request;
3889
- if (req.content_type === 'text/plain' && req.body !== undefined) req.body = util/* default */.Z.stringify(req.body);
4064
+ if (req.content_type === 'text/plain' && req.body !== undefined) req.body = util/* default.stringify */.Z.stringify(req.body);
3890
4065
  done(true);
3891
4066
  }
3892
4067
  /* harmony default export */ const api = (class {
@@ -3896,12 +4071,14 @@ function jsonifyTextPlain(param, done) {
3896
4071
  _defineProperty(this, "ajax", ajax);
3897
4072
  _defineProperty(this, "start", extraData => {
3898
4073
  let data = {
4074
+ starter_id: this.uid,
4075
+ starter_type: 'user',
3899
4076
  touchpoint: {
3900
4077
  channel: 'subiz',
3901
4078
  source: 'web'
3902
4079
  }
3903
4080
  };
3904
- util/* default */.Z.each(extraData, (v, k) => {
4081
+ util/* default.each */.Z.each(extraData, (v, k) => {
3905
4082
  data[k] = v;
3906
4083
  });
3907
4084
  return this.apireq.post(`/accounts/${this.accid}/conversations`, data);
@@ -3925,7 +4102,7 @@ function jsonifyTextPlain(param, done) {
3925
4102
  viewing_product_sku: sku,
3926
4103
  viewing_product_source_id: source_id,
3927
4104
  viewing_product_id: productid,
3928
- pinged: util/* default */.Z.Date.now(),
4105
+ pinged: util/* default.Date.now */.Z.Date.now(),
3929
4106
  is_focused: false
3930
4107
  }
3931
4108
  }
@@ -3964,7 +4141,7 @@ function jsonifyTextPlain(param, done) {
3964
4141
  error
3965
4142
  };
3966
4143
  return {
3967
- url: body.url
4144
+ url: this.FileURL + body.url
3968
4145
  };
3969
4146
  });
3970
4147
  _defineProperty(this, "time", _ => ajax.setBaseUrl(this.ApiURL).withCredentials(true).setParser('json').get('/time'));
@@ -3985,7 +4162,7 @@ function jsonifyTextPlain(param, done) {
3985
4162
  _defineProperty(this, "suggest_address", keyword => this.apireq.setQuery({
3986
4163
  keyword: keyword
3987
4164
  }).get(`/accounts/${this.accid}/addresses`));
3988
- this.refreshLock = new util/* default */.Z.Mutex();
4165
+ this.refreshLock = new util/* default.Mutex */.Z.Mutex();
3989
4166
  this.FileURL = FileURL;
3990
4167
  this.ApiURL = ApiURL;
3991
4168
  this.apireq = ajax.setBaseUrl(ApiURL).withCredentials(true).addQuery('v', '6').setContentType('text/plain').beforeHook(jsonifyTextPlain).setParser('json').beforeHook((param, done) => {
@@ -4016,16 +4193,15 @@ function jsonifyTextPlain(param, done) {
4016
4193
  let outuser;
4017
4194
  for (let i = 0; true; i++) {
4018
4195
  outuser = await ajax.setBaseUrl(this.ApiURL).withCredentials(true).addQuery('v', '6').addQuery('x-user-ref', this.ref).setParser('json').get(`/accounts/${this.accid}/users/${this.ref}`);
4019
- if (outuser.error && util/* default */.Z.get(outuser, 'body.code', '').indexOf('locked_account') != -1) break;
4020
- if (!util/* default */.Z.get(outuser, 'body.id')) {
4021
- let sleeptime = Math.min(2000 + i * 400, 60000);
4022
- await util/* default */.Z.sleep(sleeptime);
4196
+ if (!util/* default.get */.Z.get(outuser, 'body.id')) {
4197
+ let sleeptime = Math.min(2000 + i * 200, 60000);
4198
+ await util/* default.sleep */.Z.sleep(sleeptime);
4023
4199
  continue;
4024
4200
  }
4025
4201
  break;
4026
4202
  }
4027
4203
  if (outuser.error) {
4028
- if (util/* default */.Z.get(outuser.body.code)) return {
4204
+ if (util/* default.get */.Z.get(outuser.body.code)) return {
4029
4205
  error: outuser.body.code
4030
4206
  };
4031
4207
  return outuser;
@@ -4038,7 +4214,7 @@ function jsonifyTextPlain(param, done) {
4038
4214
  this.tokensession = this.tokensession || 0;
4039
4215
  this.tokensession++;
4040
4216
  let tokensession = this.tokensession;
4041
- if (!this.accid || !util/* default */.Z.startsWith(this.accid, 'ac')) return {
4217
+ if (!this.accid || !util/* default.startsWith */.Z.startsWith(this.accid, 'ac')) return {
4042
4218
  error: 'invalid_account_id'
4043
4219
  };
4044
4220
  if (!this.profile_id) return {
@@ -4054,13 +4230,13 @@ function jsonifyTextPlain(param, done) {
4054
4230
  this.refreshLock.unlock();
4055
4231
  return;
4056
4232
  }
4057
- let age = (util/* default */.Z.Date.now() - (this.last_token_at || 0)) / 1000;
4233
+ let age = (util/* default.Date.now */.Z.Date.now() - (this.last_token_at || 0)) / 1000;
4058
4234
  if (!force && this.last_token && age < 1800) {
4059
4235
  this.refreshLock.unlock();
4060
4236
  return this.last_token;
4061
4237
  }
4062
4238
  if (!force && this.last_token && age < 3000) {
4063
- if (this.token_generator) util/* default */.Z.setTimeout(async () => {
4239
+ if (this.token_generator) util/* default.setTimeout */.Z.setTimeout(async () => {
4064
4240
  let token, err;
4065
4241
  try {
4066
4242
  token = await tokenGenerator(profile_id);
@@ -4072,7 +4248,7 @@ function jsonifyTextPlain(param, done) {
4072
4248
  return;
4073
4249
  }
4074
4250
  if (err) this.last_token = 'error';else this.last_token = token;
4075
- this.last_token_at = util/* default */.Z.Date.now();
4251
+ this.last_token_at = util/* default.Date.now */.Z.Date.now();
4076
4252
  this.refreshLock.unlock();
4077
4253
  });
4078
4254
  return this.last_token;
@@ -4089,7 +4265,7 @@ function jsonifyTextPlain(param, done) {
4089
4265
  return;
4090
4266
  }
4091
4267
  if (err) this.last_token = 'error';else this.last_token = token;
4092
- this.last_token_at = util/* default */.Z.Date.now();
4268
+ this.last_token_at = util/* default.Date.now */.Z.Date.now();
4093
4269
  this.refreshLock.unlock();
4094
4270
  return this.last_token;
4095
4271
  };
@@ -4098,15 +4274,15 @@ function jsonifyTextPlain(param, done) {
4098
4274
  await this.token_generator(true);
4099
4275
  if (tokensession != this.tokensession) break;
4100
4276
  outuser = await ajax.setBaseUrl(this.ApiURL).withCredentials(true).addQuery('v', '6').addQuery('x-access-token', this.last_token).setParser('json').get(`/accounts/${this.accid}/users/${profile_id}`);
4101
- if (!util/* default */.Z.get(outuser, 'body.id')) {
4277
+ if (!util/* default.get */.Z.get(outuser, 'body.id')) {
4102
4278
  let sleeptime = Math.min(2000 + i * 100, 120000);
4103
- await util/* default */.Z.sleep(sleeptime);
4279
+ await util/* default.sleep */.Z.sleep(sleeptime);
4104
4280
  continue;
4105
4281
  }
4106
4282
  break;
4107
4283
  }
4108
4284
  if (outuser.error) {
4109
- if (util/* default */.Z.get(outuser.body.code)) return {
4285
+ if (util/* default.get */.Z.get(outuser.body.code)) return {
4110
4286
  error: outuser.body.code
4111
4287
  };
4112
4288
  return outuser;
@@ -4149,15 +4325,15 @@ function jsonifyTextPlain(param, done) {
4149
4325
  });
4150
4326
  ;// CONCATENATED MODULE: ./src/store/api_fake.js
4151
4327
  function api_fake_defineProperty(obj, key, value) { key = api_fake_toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
4152
- function api_fake_toPropertyKey(t) { var i = api_fake_toPrimitive(t, "string"); return "symbol" == typeof i ? i : String(i); }
4153
- function api_fake_toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
4328
+ function api_fake_toPropertyKey(arg) { var key = api_fake_toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
4329
+ function api_fake_toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
4154
4330
 
4155
4331
  const api_fake_ajax = __webpack_require__(7460);
4156
4332
  api_fake_ajax.env.XMLHttpRequest = window.XMLHttpRequest;
4157
4333
  const findAnswer = challenge => challenge.answer;
4158
4334
  function api_fake_jsonifyTextPlain(param, done) {
4159
4335
  let req = param.request;
4160
- if (req.content_type === 'text/plain' && req.body !== undefined) req.body = util/* default */.Z.stringify(req.body);
4336
+ if (req.content_type === 'text/plain' && req.body !== undefined) req.body = util/* default.stringify */.Z.stringify(req.body);
4161
4337
  done(true);
4162
4338
  }
4163
4339
  const OK200 = Promise.resolve({
@@ -4203,7 +4379,7 @@ const OK200 = Promise.resolve({
4203
4379
  api_fake_defineProperty(this, "getChallenge", accid => OK200);
4204
4380
  api_fake_defineProperty(this, "time", _ => Promise.resolve({
4205
4381
  code: 200,
4206
- body: new util/* default */.Z.Date().toISOString()
4382
+ body: new util/* default.Date */.Z.Date().toISOString()
4207
4383
  }));
4208
4384
  api_fake_defineProperty(this, "updateUser", data => OK200);
4209
4385
  api_fake_defineProperty(this, "getUser", _ => Promise.resolve({
@@ -4562,21 +4738,21 @@ function makeFakeMessages(accid, convoid, userid, agentid) {
4562
4738
  });
4563
4739
  ;// CONCATENATED MODULE: ./src/store/store.js
4564
4740
  function store_defineProperty(obj, key, value) { key = store_toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
4565
- function store_toPropertyKey(t) { var i = store_toPrimitive(t, "string"); return "symbol" == typeof i ? i : String(i); }
4566
- function store_toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
4741
+ function store_toPropertyKey(arg) { var key = store_toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
4742
+ function store_toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
4567
4743
 
4568
4744
  var flow = __webpack_require__(3165);
4569
4745
 
4570
4746
 
4571
4747
 
4572
4748
 
4573
- var Realtime = __webpack_require__(608);
4749
+ var Realtime = __webpack_require__(8454);
4574
4750
  var cookie = __webpack_require__(9554);
4575
4751
  cookie.defaults.path = '/';
4576
4752
  cookie.expiresMultiplier = 60 * 60 * 24;
4577
4753
  cookie.defaults.expires = 3650;
4578
4754
  const MAX_CONVO = 20;
4579
- const page_loaded = util/* default */.Z.Date.now();
4755
+ const page_loaded = util/* default.Date.now */.Z.Date.now();
4580
4756
  class Store {
4581
4757
  constructor(ApiURL, FileURL, RealtimeURL, inmem, fakeapi) {
4582
4758
  store_defineProperty(this, "inmem", false);
@@ -4594,14 +4770,14 @@ class Store {
4594
4770
  let user = this.matchUser();
4595
4771
  let allconvos = this.matchConvo('*');
4596
4772
  let unreadcount = 0;
4597
- util/* default */.Z.map(allconvos, convo => {
4598
- if (!util/* default */.Z.isConvoSeen(convo, user.id)) unreadcount++;
4773
+ util/* default.map */.Z.map(allconvos, convo => {
4774
+ if (!util/* default.isConvoSeen */.Z.isConvoSeen(convo, user.id)) unreadcount++;
4599
4775
  });
4600
4776
  return unreadcount;
4601
4777
  });
4602
4778
  store_defineProperty(this, "matchPlugin", () => {
4603
- if (util/* default */.Z.size(this.forcePlugins) > 0) return util/* default */.Z.cloneDeep(this.forcePlugins);
4604
- return util/* default */.Z.cloneDeep(this.cache.match('plugin')) || {};
4779
+ if (util/* default.size */.Z.size(this.forcePlugins) > 0) return util/* default.cloneDeep */.Z.cloneDeep(this.forcePlugins);
4780
+ return util/* default.cloneDeep */.Z.cloneDeep(this.cache.match('plugin')) || {};
4605
4781
  });
4606
4782
  store_defineProperty(this, "device", {});
4607
4783
  store_defineProperty(this, "browserVisibility", 'visible');
@@ -4614,13 +4790,12 @@ class Store {
4614
4790
  if (!id) return;
4615
4791
  if (id === '*') {
4616
4792
  this._touchAcc();
4617
- return util/* default */.Z.filter(this.cache.all(), (value, k) => k.startsWith('convo_'));
4793
+ return util/* default.filter */.Z.filter(this.cache.all(), (value, k) => k.startsWith('convo_'));
4618
4794
  }
4619
4795
  if (!this.isInsync(id)) this.fetchConvo(id);
4620
4796
  return this.cache.match('convo_' + id);
4621
4797
  });
4622
4798
  store_defineProperty(this, "fetchConvo", async cid => {
4623
- if (this._die) return dieErr;
4624
4799
  await this.readyGate.entry();
4625
4800
  await this.reconnectGate.entry(undefined, true);
4626
4801
  if (this.isInsync(cid)) return this.reconnectGate.open();
@@ -4638,7 +4813,7 @@ class Store {
4638
4813
  store_defineProperty(this, "listEvents", id => {
4639
4814
  if (!id || id === '*' || typeof id !== 'string') return;
4640
4815
  if (!this.isInsync('events' + id)) {
4641
- util/* default */.Z.setTimeout(async () => {
4816
+ util/* default.setTimeout */.Z.setTimeout(async () => {
4642
4817
  await this.readyGate.entry();
4643
4818
  await this.reconnectGate.entry(undefined, true);
4644
4819
  if (this.isInsync('events' + id)) return this.reconnectGate.open();
@@ -4661,10 +4836,10 @@ class Store {
4661
4836
  });
4662
4837
  store_defineProperty(this, "matchLocation", () => this.cache.match('location') || {});
4663
4838
  store_defineProperty(this, "matchBot", () => this.cache.match('bot') || {});
4664
- store_defineProperty(this, "readyGate", new util/* default */.Z.Gate());
4665
- store_defineProperty(this, "convoGate", new util/* default */.Z.Gate(true));
4666
- store_defineProperty(this, "reconnectGate", new util/* default */.Z.Gate(true));
4667
- store_defineProperty(this, "wsGate", new util/* default */.Z.Gate(true));
4839
+ store_defineProperty(this, "readyGate", new util/* default.Gate */.Z.Gate());
4840
+ store_defineProperty(this, "convoGate", new util/* default.Gate */.Z.Gate(true));
4841
+ store_defineProperty(this, "reconnectGate", new util/* default.Gate */.Z.Gate(true));
4842
+ store_defineProperty(this, "wsGate", new util/* default.Gate */.Z.Gate(true));
4668
4843
  store_defineProperty(this, "matchLastview", () => {
4669
4844
  let lastView = this.kv.match('lastview') || {};
4670
4845
  let user = this.cache.match('user') || {};
@@ -4675,11 +4850,10 @@ class Store {
4675
4850
  store_defineProperty(this, "matchIsOpen", () => !!this.kv.match('isopen'));
4676
4851
  store_defineProperty(this, "matchHasManuallyClosed", () => !!this.kv.match('hasManuallyClosed'));
4677
4852
  store_defineProperty(this, "matchClosePreviewAt", () => this.kv.match('close_preview_at') || 0);
4678
- store_defineProperty(this, "sendPresence", util/* default */.Z.throttle(async () => {
4679
- if (this._die) return dieErr;
4853
+ store_defineProperty(this, "sendPresence", util/* default.throttle */.Z.throttle(async () => {
4680
4854
  await this.readyGate.entry();
4681
- if (!util/* default */.Z.get(this.cache.match('user'), 'id')) return;
4682
- if (util/* default */.Z.isUserBanned(this.cache.match('user'))) return;
4855
+ if (!util/* default.get */.Z.get(this.cache.match('user'), 'id')) return;
4856
+ if (util/* default.isUserBanned */.Z.isUserBanned(this.cache.match('user'))) return;
4683
4857
  let hasfocus = this.browserVisibility === 'visible' && document.hasFocus();
4684
4858
  if (!hasfocus) {
4685
4859
  this.api.sendLostFocus(this.device, this._currentViewingProduct.id, this._currentViewingProduct.source_id, this._currentViewingProduct.sku);
@@ -4689,10 +4863,10 @@ class Store {
4689
4863
  }, 1000, {
4690
4864
  leading: false
4691
4865
  }));
4692
- store_defineProperty(this, "now", () => util/* default */.Z.Date.now() + this.timeDiff);
4866
+ store_defineProperty(this, "now", () => util/* default.Date.now */.Z.Date.now() + this.timeDiff);
4693
4867
  store_defineProperty(this, "seenQueue", []);
4694
4868
  store_defineProperty(this, "matchTrafficSource", () => this.kv.match('traffic_source'));
4695
- store_defineProperty(this, "_typing", util/* default */.Z.throttle(convoid => this.api.sendTyping(convoid), 3000, {
4869
+ store_defineProperty(this, "_typing", util/* default.throttle */.Z.throttle(convoid => this.api.sendTyping(convoid), 3000, {
4696
4870
  trailing: false
4697
4871
  }));
4698
4872
  store_defineProperty(this, "onConvoEvent", (o, cb) => this.pubsub.on2(o, 'events', cb));
@@ -4711,7 +4885,7 @@ class Store {
4711
4885
  sendEventToThirdParty('SUBIZ Chat', 'Opened', 'Subiz Windows');
4712
4886
  }
4713
4887
  });
4714
- store_defineProperty(this, "closePreview", () => this.kv.put('close_preview_at', new util/* default */.Z.Date().getTime()));
4888
+ store_defineProperty(this, "closePreview", () => this.kv.put('close_preview_at', new util/* default.Date */.Z.Date().getTime()));
4715
4889
  store_defineProperty(this, "setLastview", (view, opts) => {
4716
4890
  let user = this.cache.match('user') || {};
4717
4891
  if (!user.id) return;
@@ -4723,7 +4897,6 @@ class Store {
4723
4897
  });
4724
4898
  store_defineProperty(this, "timeDiff", 0);
4725
4899
  this.g_sync = {};
4726
- this._die = false;
4727
4900
  this.forceDevice = null;
4728
4901
  this.forcePlugins = {};
4729
4902
  this.forceAcc = {};
@@ -4745,38 +4918,31 @@ class Store {
4745
4918
  this.cookie = inmemCookie;
4746
4919
  }
4747
4920
  cleanLocalStorage();
4748
- this.pubsub = new util/* default */.Z.Pubsub();
4921
+ this.pubsub = new util/* default.Pubsub */.Z.Pubsub();
4749
4922
  this.kv = new storage.kv(new storage.lsdb('sbz2023', this.inmem), 'kv');
4750
4923
  this.cache = new storage.kv(new storage.lsdb('sbz2023', true), 'kv');
4751
4924
  this.chain = new storage.chain(new storage.lsdb('cbz2023', true), 'ch');
4752
4925
  this.getLocaleContent = this.api.getLocaleContent;
4753
4926
  this.g_haveSentSeenM = {};
4754
- window.addEventListener('blur', this.sendPresence);
4755
- window.addEventListener('focus', this.sendPresence);
4756
- this._presenceInterval1 = util/* default */.Z.setInterval(() => {
4757
- if (this._die) return util/* default */.Z.clearInterval(this._presenceInterval1);
4758
- if (this.browserVisibility === 'visible' && document.hasFocus()) this.sendPresence();
4759
- }, 20000);
4760
- this._presenceInterval2 = util/* default */.Z.setInterval(() => {
4761
- if (this._die) return util/* default */.Z.clearInterval(this._presenceInterval2);
4762
- if (this.browserVisibility !== 'visible' || document.hasFocus()) this.sendPresence();
4763
- }, 60000);
4927
+ window.addEventListener('blur', () => this.sendPresence());
4928
+ window.addEventListener('focus', () => this.sendPresence());
4929
+ util/* default.setInterval */.Z.setInterval(() => this.browserVisibility === 'visible' && document.hasFocus() && this.sendPresence(), 20000);
4930
+ util/* default.setInterval */.Z.setInterval(() => (this.browserVisibility !== 'visible' || document.hasFocus()) && this.sendPresence(), 60000);
4764
4931
  onVisibilityChange(val => {
4765
- if (this._die) return;
4766
4932
  this.browserVisibility = val;
4767
4933
  this.sendPresence();
4768
4934
  });
4769
4935
  this.loopTime();
4770
4936
  this.device = this.getDeviceInfo();
4771
- const _gaInterval = util/* default */.Z.setInterval(() => {
4937
+ const _gaInterval = util/* default.setInterval */.Z.setInterval(() => {
4772
4938
  let user = this.cache.match('user') || {};
4773
4939
  if (!user.id) return;
4774
4940
  var dev = this.getDeviceInfo();
4775
4941
  if (!dev.ga_tracking_ids || !dev.ga_client_id) return;
4776
- util/* default */.Z.clearInterval(_gaInterval);
4942
+ util/* default.clearInterval */.Z.clearInterval(_gaInterval);
4777
4943
  this.device = dev;
4778
4944
  let ga_client_id = dev.ga_client_id;
4779
- if (ga_client_id !== util/* default */.Z.getUserAttr(user, 'ga_client_id', 'text')) {
4945
+ if (ga_client_id !== util/* default.getUserAttr */.Z.getUserAttr(user, 'ga_client_id', 'text')) {
4780
4946
  this.setUser({
4781
4947
  attributes: [{
4782
4948
  type: 'text',
@@ -4797,10 +4963,10 @@ class Store {
4797
4963
  if (p.sku) this._currentViewingProduct.sku = (p.sku + '').trim();
4798
4964
  }
4799
4965
  getLinkedProduct() {
4800
- return util/* default */.Z.cloneDeep(this._currentViewingProduct);
4966
+ return util/* default.cloneDeep */.Z.cloneDeep(this._currentViewingProduct);
4801
4967
  }
4802
4968
  isInsync(key) {
4803
- return util/* default */.Z.Date.now() - (this.g_sync[key] || 0) < 600000;
4969
+ return util/* default.Date.now */.Z.Date.now() - (this.g_sync[key] || 0) < 600000;
4804
4970
  }
4805
4971
  async fetchShippingAddresses() {
4806
4972
  let out = await this.api.fetchShippingAddresses();
@@ -4817,7 +4983,7 @@ class Store {
4817
4983
  return this.api.createShippingAddress(addr);
4818
4984
  }
4819
4985
  async overrideAcc(acc) {
4820
- this.forceAcc = util/* default */.Z.cloneDeep(acc);
4986
+ this.forceAcc = util/* default.cloneDeep */.Z.cloneDeep(acc);
4821
4987
  await this.readyGate.entry();
4822
4988
  this.disconnect('account');
4823
4989
  this.reconnect();
@@ -4827,7 +4993,7 @@ class Store {
4827
4993
  await this.readyGate.entry();
4828
4994
  this.disconnect('account');
4829
4995
  await this.reconnect();
4830
- util/* default */.Z.setTimeout(this.pubsub.publish('resetCSS'), 10);
4996
+ util/* default.setTimeout */.Z.setTimeout(this.pubsub.publish('resetCSS'), 10);
4831
4997
  }
4832
4998
  getDeviceInfo() {
4833
4999
  let device = {
@@ -4870,10 +5036,9 @@ class Store {
4870
5036
  return page_loaded;
4871
5037
  }
4872
5038
  overridePlugin(plugins) {
4873
- if (this._die) return dieErr;
4874
5039
  if (!Array.isArray(plugins)) throw 'plugins must be be an array';
4875
5040
  let pluginM = {};
4876
- util/* default */.Z.map(plugins, function (plugin) {
5041
+ util/* default.map */.Z.map(plugins, function (plugin) {
4877
5042
  pluginM[plugin.id] = plugin;
4878
5043
  });
4879
5044
  this.forcePlugins = pluginM;
@@ -4881,7 +5046,7 @@ class Store {
4881
5046
  this.pubsub.publish('resetCSS');
4882
5047
  }
4883
5048
  markSync(key) {
4884
- this.g_sync[key] = util/* default */.Z.Date.now();
5049
+ this.g_sync[key] = util/* default.Date.now */.Z.Date.now();
4885
5050
  }
4886
5051
  async _touchAcc() {
4887
5052
  if (this.isInsync('account')) return;
@@ -4905,18 +5070,20 @@ class Store {
4905
5070
  if (mask) {
4906
5071
  let parts = mask.split('@');
4907
5072
  if (parts[0] != accid) {
4908
- userRef = util/* default */.Z.randomString(40);
5073
+ userRef = util/* default.randomString */.Z.randomString(40);
4909
5074
  this.new_visitor = true;
4910
5075
  }
4911
5076
  this.new_visitor = false;
4912
5077
  this.cookie.set('__sbmask', mask);
4913
5078
  } else {
4914
- userRef = util/* default */.Z.randomString(40);
5079
+ userRef = util/* default.randomString */.Z.randomString(40);
4915
5080
  this.new_visitor = true;
4916
5081
  }
4917
5082
  }
4918
5083
  }
4919
- if (this.cookie.get('__sbref', userRef) != userRef) cleanMyLocalStorage();
5084
+ if (this.cookie.get('__sbref', userRef) != userRef) {
5085
+ cleanMyLocalStorage();
5086
+ }
4920
5087
  this.api.setAuth({
4921
5088
  accid: accid
4922
5089
  });
@@ -4926,7 +5093,7 @@ class Store {
4926
5093
  mask: mask,
4927
5094
  ref: userRef
4928
5095
  });
4929
- if (user.error) return console.error(user);
5096
+ if (user.error) return;
4930
5097
  if (this.realtime) this.realtime.stop();
4931
5098
  if (this.fake) this.realtime = new realtime_fake();else this.realtime = new Realtime(this.RealtimeURL, {
4932
5099
  account_id: accid,
@@ -4942,7 +5109,6 @@ class Store {
4942
5109
  return user;
4943
5110
  }
4944
5111
  async login(accid, user_id, tokenGenerator) {
4945
- if (this._die) return dieErr;
4946
5112
  let user = await this.api.setAuth({
4947
5113
  accid: accid,
4948
5114
  profile_id: user_id,
@@ -4973,23 +5139,22 @@ class Store {
4973
5139
  }
4974
5140
  seenLoop() {
4975
5141
  this.seenQueue = [];
4976
- util/* default */.Z.clearInterval(this._seenInterval);
4977
- this._seenInterval = util/* default */.Z.setInterval(() => {
4978
- if (this._die) return util/* default */.Z.clearInterval(this._seenInterval);
5142
+ util/* default.clearInterval */.Z.clearInterval(this._seenInterval);
5143
+ this._seenInterval = util/* default.setInterval */.Z.setInterval(() => {
4979
5144
  this.seenQueue = [...new Set(this.seenQueue)];
4980
5145
  let user = this.cache.match('user') || {};
4981
- util/* default */.Z.map(this.seenQueue, id => {
5146
+ util/* default.map */.Z.map(this.seenQueue, id => {
4982
5147
  var events = this.listEvents(id);
4983
5148
  if (!events) return;
4984
- if (util/* default */.Z.size(events) === 0) return;
4985
- events = util/* default */.Z.filter(events, ev => ev.type === 'message_sent');
4986
- var lastmsgsent = events[util/* default */.Z.size(events) - 1];
5149
+ if (util/* default.size */.Z.size(events) === 0) return;
5150
+ events = util/* default.filter */.Z.filter(events, ev => ev.type === 'message_sent');
5151
+ var lastmsgsent = events[util/* default.size */.Z.size(events) - 1];
4987
5152
  if (!lastmsgsent) return;
4988
5153
  if (this.g_haveSentSeenM[lastmsgsent.id]) return;
4989
- if (lastmsgsent.id === util/* default */.Z.getMsgField(lastmsgsent, 'idempotency')) return;
5154
+ if (lastmsgsent.id === util/* default.getMsgField */.Z.getMsgField(lastmsgsent, 'idempotency')) return;
4990
5155
  this.api.markAsSeen(id, lastmsgsent.id);
4991
5156
  let convo = this.cache.match('convo_' + id) || {};
4992
- let mem = util/* default */.Z.find(convo.members, m => m.id === user.id);
5157
+ let mem = util/* default.find */.Z.find(convo.members, m => m.id === user.id);
4993
5158
  if (mem) mem.seen_at = Date.now();
4994
5159
  this._setConvo(convo);
4995
5160
  this.g_haveSentSeenM[lastmsgsent.id] = true;
@@ -5009,7 +5174,7 @@ class Store {
5009
5174
  if (this.isInsync('account')) return this.reconnectGate.open();
5010
5175
  this.markSync('account');
5011
5176
  let outs = await Promise.all([this.api.getUser(), this.api.getAccountSetting(), this.api.getIsOnline()]);
5012
- let error = util/* default */.Z.find(outs, out => out.error);
5177
+ let error = util/* default.find */.Z.find(outs, out => out.error);
5013
5178
  if (error) return console.error(error);
5014
5179
  let set = Object.assign(outs[1].body, outs[2].body);
5015
5180
  set.user = outs[0].body;
@@ -5018,13 +5183,13 @@ class Store {
5018
5183
  error = convob.error;
5019
5184
  let body = convob.body;
5020
5185
  if (!error) {
5021
- let convos = util/* default */.Z.get(body, 'conversations', []);
5022
- util/* default */.Z.map(this.cache.all(), (value, k) => {
5186
+ let convos = util/* default.get */.Z.get(body, 'conversations', []);
5187
+ util/* default.map */.Z.map(this.cache.all(), (value, k) => {
5023
5188
  if (k.startsWith('convo_')) {
5024
- if (this.now() - util/* default */.Z.getMs(util/* default */.Z.get(value, 'actived')) > 1209600000) this.cache.del(k);
5189
+ if (this.now() - util/* default.getMs */.Z.getMs(util/* default.get */.Z.get(value, 'actived')) > 1209600000) this.cache.del(k);
5025
5190
  }
5026
5191
  });
5027
- util/* default */.Z.map(convos, convo => this._setConvo(convo));
5192
+ util/* default.map */.Z.map(convos, convo => this._setConvo(convo));
5028
5193
  }
5029
5194
  return this.reconnectGate.open();
5030
5195
  }
@@ -5043,13 +5208,13 @@ class Store {
5043
5208
  }
5044
5209
  }
5045
5210
  _setUser(user) {
5046
- user = util/* default */.Z.cloneDeep(user);
5211
+ user = util/* default.cloneDeep */.Z.cloneDeep(user);
5047
5212
  let olduser = this.cache.match('user') || {};
5048
5213
  var accid = olduser.account_id || user.account_id;
5049
5214
  var id = olduser.id || user.id;
5050
- util/* default */.Z.each(user.attributes, newattr => {
5215
+ util/* default.each */.Z.each(user.attributes, newattr => {
5051
5216
  if (!newattr) return;
5052
- olduser.attributes = util/* default */.Z.filter(olduser.attributes, oldattr => {
5217
+ olduser.attributes = util/* default.filter */.Z.filter(olduser.attributes, oldattr => {
5053
5218
  if (!oldattr) return false;
5054
5219
  return oldattr.key !== newattr.key;
5055
5220
  });
@@ -5067,7 +5232,7 @@ class Store {
5067
5232
  return this._setSetting(setting);
5068
5233
  }
5069
5234
  async _setSetting(setting) {
5070
- setting = util/* default */.Z.cloneDeep(setting) || {};
5235
+ setting = util/* default.cloneDeep */.Z.cloneDeep(setting) || {};
5071
5236
  setting.account = Object.assign({}, setting.account, this.forceAcc);
5072
5237
  if (!setting.account.logo_url) {
5073
5238
  setting.account.logo_url = 'https://file-subiz.com/fiqpezhkmeyesdscyetk-default_logo.jpg';
@@ -5083,39 +5248,39 @@ class Store {
5083
5248
  this.cache.put('account', setting.account);
5084
5249
  delete setting.account;
5085
5250
  }
5086
- let location = util/* default */.Z.get(setting, 'location', []);
5251
+ let location = util/* default.get */.Z.get(setting, 'location', []);
5087
5252
  this.cache.put('location', location);
5088
- let bots = util/* default */.Z.get(setting, 'bots', []);
5253
+ let bots = util/* default.get */.Z.get(setting, 'bots', []);
5089
5254
  let botM = {};
5090
- util/* default */.Z.map(bots, bot => {
5255
+ util/* default.map */.Z.map(bots, bot => {
5091
5256
  botM[bot.id] = bot;
5092
5257
  });
5093
5258
  this.cache.put('bot', botM);
5094
- let plugins = util/* default */.Z.get(setting, 'plugins', []);
5259
+ let plugins = util/* default.get */.Z.get(setting, 'plugins', []);
5095
5260
  let pluginM = {};
5096
- util/* default */.Z.map(plugins, plugin => {
5261
+ util/* default.map */.Z.map(plugins, plugin => {
5097
5262
  if (plugin.type === 'chatbox') {
5098
- plugin = util/* default */.Z.merge(plugin, this.forceChatbox);
5263
+ plugin = util/* default.merge */.Z.merge(plugin, this.forceChatbox);
5099
5264
  }
5100
5265
  pluginM[plugin.id] = plugin;
5101
5266
  });
5102
5267
  this.cache.put('plugin', pluginM);
5103
- var agents = util/* default */.Z.get(setting, 'agents', []);
5104
- if (util/* default */.Z.size(agents) > 0) {
5268
+ var agents = util/* default.get */.Z.get(setting, 'agents', []);
5269
+ if (util/* default.size */.Z.size(agents) > 0) {
5105
5270
  let agentM = {};
5106
5271
  this.api.setAgentId(agents[0].id);
5107
- util/* default */.Z.map(agents, agent => {
5272
+ util/* default.map */.Z.map(agents, agent => {
5108
5273
  agentM[agent.id] = agent;
5109
5274
  });
5110
5275
  this.cache.put('agent', agentM);
5111
5276
  }
5112
- let pms = util/* default */.Z.get(setting, 'payment_methods', []);
5277
+ let pms = util/* default.get */.Z.get(setting, 'payment_methods', []);
5113
5278
  this.cache.put('payment_methods', pms);
5114
5279
  this.pubsub.publish('account');
5115
5280
  }
5116
5281
  async track() {
5117
5282
  let out = await this.api.sendContentView(this.device, location.href, document.title, this._currentViewingProduct.id, this._currentViewingProduct.source_id, this._currentViewingProduct.sku);
5118
- let traffic_source = util/* default */.Z.get(out, 'body.by.device.source', '');
5283
+ let traffic_source = util/* default.get */.Z.get(out, 'body.by.device.source', '');
5119
5284
  if (traffic_source) this.kv.put('traffic_source', traffic_source);
5120
5285
  }
5121
5286
  async onWs(ev) {
@@ -5125,18 +5290,17 @@ class Store {
5125
5290
  this.wsGate.open();
5126
5291
  }
5127
5292
  async _onWs(ev) {
5128
- if (this._die) return;
5129
5293
  if (!ev || !ev.type) return;
5130
- ev.created = util/* default */.Z.getMs(ev.created);
5294
+ ev.created = util/* default.getMs */.Z.getMs(ev.created);
5131
5295
  if (ev.type === 'user_info_updated') {
5132
- let user = util/* default */.Z.cloneDeep(this.cache.match('user'));
5133
- let attrs = util/* default */.Z.get(ev, 'data.user.attributes') || [];
5134
- util/* default */.Z.map(attrs, attr => util/* default */.Z.setUserAttr(user, attr));
5296
+ let user = util/* default.cloneDeep */.Z.cloneDeep(this.cache.match('user'));
5297
+ let attrs = util/* default.get */.Z.get(ev, 'data.user.attributes') || [];
5298
+ util/* default.map */.Z.map(attrs, attr => util/* default.setUserAttr */.Z.setUserAttr(user, attr));
5135
5299
  this._setUser(user);
5136
5300
  return;
5137
5301
  }
5138
5302
  let user = this.cache.match('user') || {};
5139
- let cid = util/* default */.Z.convoOfEv(ev);
5303
+ let cid = util/* default.convoOfEv */.Z.convoOfEv(ev);
5140
5304
  let convo;
5141
5305
  let alreadyFetched = false;
5142
5306
  if (cid) {
@@ -5153,12 +5317,12 @@ class Store {
5153
5317
  }
5154
5318
  }
5155
5319
  if (!convo) return;
5156
- let channel = util/* default */.Z.get(ev, 'touchpoint.channel', '');
5320
+ let channel = util/* default.get */.Z.get(ev, 'touchpoint.channel', '');
5157
5321
  if (channel && channel != 'subiz') return;
5158
5322
  this.pubsub.publish('events', ev);
5159
5323
  if (ev.type === 'conversation_joined') {
5160
- let members = util/* default */.Z.get(ev, 'data.conversation.members', []);
5161
- let me = util/* default */.Z.find(members, m => m.id === this.cache.match('user').id);
5324
+ let members = util/* default.get */.Z.get(ev, 'data.conversation.members', []);
5325
+ let me = util/* default.find */.Z.find(members, m => m.id === this.cache.match('user').id);
5162
5326
  if (me) {
5163
5327
  await this.chain.reload(cid, (type, anchor, limit) => this.listmessageapi(type, anchor, limit));
5164
5328
  this.markSync('events' + cid);
@@ -5175,13 +5339,13 @@ class Store {
5175
5339
  }
5176
5340
  }
5177
5341
  if (ev.type === 'message_sent') {
5178
- if (util/* default */.Z.get(ev, 'by.id') !== user.id) {
5342
+ if (util/* default.get */.Z.get(ev, 'by.id') !== user.id) {
5179
5343
  this.api.markAsReceived(cid, ev.id);
5180
5344
  }
5181
5345
  }
5182
- if (util/* default */.Z.startsWith(ev.type, 'message_') || util/* default */.Z.startsWith(ev.type, 'conversation_')) {
5346
+ if (util/* default.startsWith */.Z.startsWith(ev.type, 'message_') || util/* default.startsWith */.Z.startsWith(ev.type, 'conversation_')) {
5183
5347
  this.restConvoEvent(ev);
5184
- if (ev.type === 'message_sent' && util/* default */.Z.get(ev, 'by.id') !== user.id) {
5348
+ if (ev.type === 'message_sent' && util/* default.get */.Z.get(ev, 'by.id') !== user.id) {
5185
5349
  sendEventToThirdParty('SUBIZ Chat', 'Received', 'User');
5186
5350
  }
5187
5351
  return;
@@ -5189,36 +5353,36 @@ class Store {
5189
5353
  }
5190
5354
  async restConvoEvent(ev) {
5191
5355
  let user = this.cache.match('user');
5192
- let cid = util/* default */.Z.convoOfEv(ev);
5356
+ let cid = util/* default.convoOfEv */.Z.convoOfEv(ev);
5193
5357
  let convo = this.cache.match('convo_' + cid) || {};
5194
5358
  if (ev.type === 'conversation_state_updated') {
5195
- if (!util/* default */.Z.get(convo, 'id')) {
5359
+ if (!util/* default.get */.Z.get(convo, 'id')) {
5196
5360
  let {
5197
5361
  body: convo,
5198
5362
  error
5199
5363
  } = await this.api.getConversation(cid);
5200
5364
  if (error) return;
5201
5365
  }
5202
- convo = Object.assign(convo, util/* default */.Z.get(ev, 'data.conversation'));
5366
+ convo = Object.assign(convo, util/* default.get */.Z.get(ev, 'data.conversation'));
5203
5367
  }
5204
5368
  if (ev.type === 'message_pong') {
5205
- var msgid = util/* default */.Z.get(ev, 'data.message.id');
5369
+ var msgid = util/* default.get */.Z.get(ev, 'data.message.id');
5206
5370
  var oldev = this.chain.match(cid, msgid);
5207
- if (!util/* default */.Z.get(oldev, 'data.message')) return;
5208
- var pongs = util/* default */.Z.get(oldev, 'data.message.pongs', []);
5209
- pongs = pongs.concat(util/* default */.Z.get(ev, 'data.message.pongs', []));
5371
+ if (!util/* default.get */.Z.get(oldev, 'data.message')) return;
5372
+ var pongs = util/* default.get */.Z.get(oldev, 'data.message.pongs', []);
5373
+ pongs = pongs.concat(util/* default.get */.Z.get(ev, 'data.message.pongs', []));
5210
5374
  oldev.data.message.pongs = pongs;
5211
- util/* default */.Z.map(pongs, pong => {
5375
+ util/* default.map */.Z.map(pongs, pong => {
5212
5376
  if (pong.member_id == user.id && pong.type === 'seen') {
5213
- let mem = util/* default */.Z.find(convo.members, mem => mem.id === user.id);
5377
+ let mem = util/* default.find */.Z.find(convo.members, mem => mem.id === user.id);
5214
5378
  if (mem) mem.seen_at = pong.created;
5215
5379
  }
5216
5380
  });
5217
- this.chain.put(cid, oldev.id, util/* default */.Z.getMs(oldev.created), oldev);
5381
+ this.chain.put(cid, oldev.id, util/* default.getMs */.Z.getMs(oldev.created), oldev);
5218
5382
  }
5219
5383
  if (ev.type === 'message_sent') {
5220
- let idemkey = util/* default */.Z.getMsgField(ev, 'idempotency');
5221
- let found = util/* default */.Z.find(this.listEvents(cid), oldev => oldev.id === idemkey);
5384
+ let idemkey = util/* default.getMsgField */.Z.getMsgField(ev, 'idempotency');
5385
+ let found = util/* default.find */.Z.find(this.listEvents(cid), oldev => oldev.id === idemkey);
5222
5386
  if (found) {
5223
5387
  this.chain.del(cid, found.id);
5224
5388
  ev.created = found.created;
@@ -5226,7 +5390,7 @@ class Store {
5226
5390
  convo.last_message_sent = ev;
5227
5391
  }
5228
5392
  if (ev.type !== 'message_pong' && ev.type !== 'conversation_typing') {
5229
- this.chain.put(cid, ev.id, util/* default */.Z.getMs(ev.created), ev);
5393
+ this.chain.put(cid, ev.id, util/* default.getMs */.Z.getMs(ev.created), ev);
5230
5394
  }
5231
5395
  this._setConvo(convo);
5232
5396
  this.pubsub.publish('account');
@@ -5234,31 +5398,31 @@ class Store {
5234
5398
  handleFormSubmit(convoKey, ev) {
5235
5399
  if (ev.type !== 'message_sent') return;
5236
5400
  let formSubmits = [];
5237
- let attachments = util/* default */.Z.get(ev, 'data.message.attachments') || [];
5238
- util/* default */.Z.each(attachments, att => {
5401
+ let attachments = util/* default.get */.Z.get(ev, 'data.message.attachments') || [];
5402
+ util/* default.each */.Z.each(attachments, att => {
5239
5403
  if (!att) return;
5240
5404
  if (att.type !== 'form_submit') return;
5241
5405
  formSubmits.push(att.form_submit);
5242
5406
  });
5243
- util/* default */.Z.each(formSubmits, submit => {
5244
- let formev = util/* default */.Z.get(this.convoEventM, convoKey + '.' + submit.form_message_id);
5407
+ util/* default.each */.Z.each(formSubmits, submit => {
5408
+ let formev = util/* default.get */.Z.get(this.convoEventM, convoKey + '.' + submit.form_message_id);
5245
5409
  if (!formev) return;
5246
- let forms = util/* default */.Z.filter(util/* default */.Z.get(formev, 'data.message.attachments'), att => {
5410
+ let forms = util/* default.filter */.Z.filter(util/* default.get */.Z.get(formev, 'data.message.attachments'), att => {
5247
5411
  if (!att) return false;
5248
5412
  if (att.type !== 'form' && att.type !== 'ask_info_form') return false;
5249
5413
  return true;
5250
5414
  });
5251
- util/* default */.Z.each(forms, form => {
5415
+ util/* default.each */.Z.each(forms, form => {
5252
5416
  form = form.form;
5253
- util/* default */.Z.each(form.fields, formfield => {
5254
- util/* default */.Z.each(submit.fields, submitfield => {
5417
+ util/* default.each */.Z.each(form.fields, formfield => {
5418
+ util/* default.each */.Z.each(submit.fields, submitfield => {
5255
5419
  if (formfield.name !== submitfield.name) return;
5256
5420
  if (formfield.default_answer) return;
5257
5421
  formfield.default_answer = submitfield.value;
5258
5422
  });
5259
5423
  });
5260
5424
  });
5261
- if (util/* default */.Z.size(forms) > 0) this.pubsub.publish('state.convoEventM', this.convoEventM, convoKey);
5425
+ if (util/* default.size */.Z.size(forms) > 0) this.pubsub.publish('state.convoEventM', this.convoEventM, convoKey);
5262
5426
  });
5263
5427
  }
5264
5428
  typing(cid) {
@@ -5293,7 +5457,7 @@ class Store {
5293
5457
  }
5294
5458
  async sendConvoEvent(cid, type, data) {
5295
5459
  await this.readyGate.entry();
5296
- var idempotency = util/* default */.Z.randomString(36);
5460
+ var idempotency = util/* default.randomString */.Z.randomString(36);
5297
5461
  let user = this.cache.match('user') || {};
5298
5462
  var event = {
5299
5463
  id: idempotency,
@@ -5306,24 +5470,17 @@ class Store {
5306
5470
  type,
5307
5471
  created: this.now()
5308
5472
  };
5309
- util/* default */.Z.convoToEv(cid, event);
5473
+ util/* default.convoToEv */.Z.convoToEv(cid, event);
5310
5474
  let files = [];
5311
5475
  if (type === 'message_sent') {
5312
- util/* default */.Z.setMsgField(event, 'idempotency', idempotency);
5476
+ util/* default.setMsgField */.Z.setMsgField(event, 'idempotency', idempotency);
5313
5477
  event.data.message.conversation_id = cid;
5314
5478
  await flow.map(event.data.message.attachments, 2, async (att, i) => {
5315
5479
  if (att.type !== 'file') return;
5316
5480
  if (!att._file) return;
5317
5481
  files.push(att);
5318
5482
  if (ImageTypes.includes(att._file.type)) {
5319
- let {
5320
- width,
5321
- height,
5322
- url
5323
- } = await loadImage(att._file);
5324
- att.url = url;
5325
- att.width = width;
5326
- att.height = height;
5483
+ att.url = await loadImage(att._file);
5327
5484
  }
5328
5485
  });
5329
5486
  }
@@ -5335,7 +5492,7 @@ class Store {
5335
5492
  url,
5336
5493
  error
5337
5494
  } = await this.api.uploadToS3(att._file);
5338
- if (util/* default */.Z.get(body, 'code') == 'invalid_field_size') {
5495
+ if (util/* default.get */.Z.get(body, 'code') == 'invalid_field_size') {
5339
5496
  event._error_message = 'cannot_send_too_big_file';
5340
5497
  }
5341
5498
  event._error = error;
@@ -5363,23 +5520,23 @@ class Store {
5363
5520
  first_interaction: 1
5364
5521
  });
5365
5522
  }
5366
- this.kv.put('last_msg_sent', util/* default */.Z.Date.now());
5523
+ this.kv.put('last_msg_sent', util/* default.Date.now */.Z.Date.now());
5367
5524
  return ret;
5368
5525
  }
5369
5526
  _setConvo(convo) {
5370
5527
  let count = 0;
5371
5528
  let user = this.cache.match('user');
5372
- let channel = util/* default */.Z.get(convo, 'touchpoint.channel', '');
5529
+ let channel = util/* default.get */.Z.get(convo, 'touchpoint.channel', '');
5373
5530
  if (channel && channel != 'subiz') return;
5374
5531
  let allconvo = {};
5375
- util/* default */.Z.map(this.cache.all(), (value, key) => {
5532
+ util/* default.map */.Z.map(this.cache.all(), (value, key) => {
5376
5533
  if (key.startsWith('convo_')) {
5377
5534
  allconvo[key] = value;
5378
5535
  }
5379
5536
  });
5380
- if (util/* default */.Z.size(allconvo) > MAX_CONVO - 2) {
5381
- allconvo = util/* default */.Z.orderBy(util/* default */.Z.map(allconvo), 'created', 'desc');
5382
- for (var i = MAX_CONVO - 2; i < util/* default */.Z.size(allconvo); i++) {
5537
+ if (util/* default.size */.Z.size(allconvo) > MAX_CONVO - 2) {
5538
+ allconvo = util/* default.orderBy */.Z.orderBy(util/* default.map */.Z.map(allconvo), 'created', 'desc');
5539
+ for (var i = MAX_CONVO - 2; i < util/* default.size */.Z.size(allconvo); i++) {
5383
5540
  let convo = allconvo[i];
5384
5541
  this.cache.del('convo_' + convo.id);
5385
5542
  }
@@ -5435,7 +5592,7 @@ class Store {
5435
5592
  account_id: user.account_id,
5436
5593
  web_plugin_id: id,
5437
5594
  campaign_id: id,
5438
- user_id: util/* default */.Z.get(user, 'id'),
5595
+ user_id: util/* default.get */.Z.get(user, 'id'),
5439
5596
  url: window.location.href,
5440
5597
  device: this.device,
5441
5598
  submission,
@@ -5454,9 +5611,9 @@ class Store {
5454
5611
  error
5455
5612
  } = await this.api.listMessages(convoid, -limit, anchor);
5456
5613
  if (error || code !== 200) return [[], anchor, error];
5457
- anchor = util/* default */.Z.get(util/* default */.Z.last(events), 'id');
5458
- events = util/* default */.Z.map(events, event => {
5459
- event.created = util/* default */.Z.getMs(event.created);
5614
+ anchor = util/* default.get */.Z.get(util/* default.last */.Z.last(events), 'id');
5615
+ events = util/* default.map */.Z.map(events, event => {
5616
+ event.created = util/* default.getMs */.Z.getMs(event.created);
5460
5617
  return {
5461
5618
  id: event.id,
5462
5619
  index: event.created,
@@ -5467,8 +5624,8 @@ class Store {
5467
5624
  for (let i = 0; i < events.length; i++) {
5468
5625
  let ev = events[i].value;
5469
5626
  if (ev.type !== 'message_sent') continue;
5470
- if (util/* default */.Z.get(ev, 'by.id') === user.id) continue;
5471
- let pongbyme = util/* default */.Z.find(util/* default */.Z.get(ev, 'data.message.pongs'), p => p.member_id === user.id);
5627
+ if (util/* default.get */.Z.get(ev, 'by.id') === user.id) continue;
5628
+ let pongbyme = util/* default.find */.Z.find(util/* default.get */.Z.get(ev, 'data.message.pongs'), p => p.member_id === user.id);
5472
5629
  if (pongbyme) break;
5473
5630
  this.api.markAsReceived(convoid, ev.id);
5474
5631
  break;
@@ -5476,26 +5633,25 @@ class Store {
5476
5633
  return [events, anchor];
5477
5634
  }
5478
5635
  async loopTime() {
5479
- if (this._die) return;
5480
- let startms = util/* default */.Z.Date.now();
5481
- if (!util/* default */.Z.get(this.cache.match('user'), 'id')) return util/* default */.Z.setTimeout(() => this.loopTime(), 240000);
5636
+ let startms = util/* default.Date.now */.Z.Date.now();
5637
+ if (!util/* default.get */.Z.get(this.cache.match('user'), 'id')) return util/* default.setTimeout */.Z.setTimeout(() => this.loopTime(), 240000);
5482
5638
  let {
5483
5639
  body: t,
5484
5640
  error
5485
5641
  } = await this.api.time();
5486
- if (error) return util/* default */.Z.setTimeout(() => this.loopTime(), 30000);
5487
- var latences = Math.abs(util/* default */.Z.Date.now() - startms) / 2;
5488
- var serverMs = new util/* default */.Z.Date(t).getTime() + latences;
5489
- var localMs = util/* default */.Z.Date.now();
5642
+ if (error) return util/* default.setTimeout */.Z.setTimeout(() => this.loopTime(), 30000);
5643
+ var latences = Math.abs(util/* default.Date.now */.Z.Date.now() - startms) / 2;
5644
+ var serverMs = new util/* default.Date */.Z.Date(t).getTime() + latences;
5645
+ var localMs = util/* default.Date.now */.Z.Date.now();
5490
5646
  this.timeDiff = Math.floor(serverMs - localMs);
5491
- util/* default */.Z.setTimeout(() => this.loopTime(), 240000);
5647
+ util/* default.setTimeout */.Z.setTimeout(() => this.loopTime(), 240000);
5492
5648
  }
5493
5649
  replaceFileUrl(src) {
5494
5650
  if (!src) return '';
5495
- if (util/* default */.Z.startsWith(src, '/')) return src;
5496
- if (util/* default */.Z.startsWith(src, 'data:')) return src;
5497
- if (!util/* default */.Z.startsWith(src, 'http://') && !util/* default */.Z.startsWith(src, 'https://') && !util/* default */.Z.startsWith(src, '//')) {
5498
- src = util/* default */.Z.trim(this.FileURL, '/') + '/' + util/* default */.Z.trimStart(src, '/');
5651
+ if (util/* default.startsWith */.Z.startsWith(src, '/')) return src;
5652
+ if (util/* default.startsWith */.Z.startsWith(src, 'data:')) return src;
5653
+ if (!util/* default.startsWith */.Z.startsWith(src, 'http://') && !util/* default.startsWith */.Z.startsWith(src, 'https://') && !util/* default.startsWith */.Z.startsWith(src, '//')) {
5654
+ src = util/* default.trim */.Z.trim(this.FileURL, '/') + '/' + util/* default.trimStart */.Z.trimStart(src, '/');
5499
5655
  }
5500
5656
  src = src.replace('https://file-subiz.com/', this.FileURL);
5501
5657
  src = src.replace('http://file-subiz.com/', this.FileURL);
@@ -5512,7 +5668,7 @@ class Store {
5512
5668
  return src;
5513
5669
  }
5514
5670
  clearBrowserData() {
5515
- util/* default */.Z.each(this.cookie.all(), (v, k) => {
5671
+ util/* default.each */.Z.each(this.cookie.all(), (v, k) => {
5516
5672
  if ((k || '').startsWith('__sb')) this.cookie.remove(k);
5517
5673
  });
5518
5674
  this.kv.destroy();
@@ -5522,29 +5678,16 @@ class Store {
5522
5678
  }
5523
5679
  destroy() {
5524
5680
  this._die = true;
5525
- if (this.kv) this.kv.destroy();
5526
- if (this.chain) this.chain.destroy();
5527
- util/* default */.Z.clearInterval(this._seenInterval);
5681
+ this.clearBrowserData();
5528
5682
  if (this.realtime) this.realtime.stop();
5529
5683
  this.readyGate.close();
5530
- window.removeEventListener('blur', this.sendPresence);
5531
- window.removeEventListener('focus', this.sendPresence);
5532
5684
  }
5533
5685
  }
5534
5686
  function loadImage(file) {
5535
5687
  return new Promise(rs => {
5536
5688
  var reader = new window.FileReader();
5537
5689
  reader.onload = e => {
5538
- let src = e.target.result;
5539
- let img = new Image();
5540
- img.onload = () => {
5541
- rs({
5542
- url: src,
5543
- width: img.width,
5544
- height: img.height
5545
- });
5546
- };
5547
- img.src = src;
5690
+ rs(e.target.result);
5548
5691
  };
5549
5692
  reader.readAsDataURL(file);
5550
5693
  });
@@ -5655,7 +5798,7 @@ let cleanLocalStorage = () => {
5655
5798
  } catch (e) {
5656
5799
  return;
5657
5800
  }
5658
- util/* default */.Z.setTimeout(() => {
5801
+ util/* default.setTimeout */.Z.setTimeout(() => {
5659
5802
  for (var key in localStorage) {
5660
5803
  if (key && (key.startsWith('cbz2020') || key.startsWith('sbz2020'))) {
5661
5804
  localStorage.removeItem(key);
@@ -5669,7 +5812,7 @@ let cleanMyLocalStorage = () => {
5669
5812
  } catch (e) {
5670
5813
  return;
5671
5814
  }
5672
- util/* default */.Z.setTimeout(() => {
5815
+ util/* default.setTimeout */.Z.setTimeout(() => {
5673
5816
  for (var key in localStorage) {
5674
5817
  if (key && (key.startsWith('cbz2020') || key.startsWith('sbz2020') || key.startsWith('sbz2022') || key.startsWith('sbz2023'))) {
5675
5818
  localStorage.removeItem(key);
@@ -5687,8 +5830,8 @@ function dofetch(method, url, body, cb) {
5687
5830
  }).then(res => res.text().then(text => cb && cb(text, res.status))).catch(err => cb && cb(err, -1));
5688
5831
  }
5689
5832
  var xhrsend = function (method, url, body, cb) {
5690
- if (typeof util/* default */.Z.XMLHttpRequest === 'undefined') return dofetch(method, url, body, cb);
5691
- var request = new util/* default */.Z.XMLHttpRequest();
5833
+ if (typeof util/* default.XMLHttpRequest */.Z.XMLHttpRequest === 'undefined') return dofetch(method, url, body, cb);
5834
+ var request = new util/* default.XMLHttpRequest */.Z.XMLHttpRequest();
5692
5835
  request.onreadystatechange = function (e) {
5693
5836
  if (request.readyState !== 4) return;
5694
5837
  cb && cb(request.responseText, request.status);
@@ -5702,7 +5845,6 @@ var xhrsend = function (method, url, body, cb) {
5702
5845
  if (body) request.setRequestHeader('content-type', 'text/plain');
5703
5846
  request.send(body);
5704
5847
  };
5705
- const dieErr = new Error('sdk unloaded');
5706
5848
  // EXTERNAL MODULE: ./src/common.js
5707
5849
  var common = __webpack_require__(2493);
5708
5850
  // EXTERNAL MODULE: ./node_modules/preact/dist/preact.module.js
@@ -5711,7 +5853,7 @@ var preact_module = __webpack_require__(6400);
5711
5853
 
5712
5854
 
5713
5855
 
5714
- const LoadChatbox = () => __webpack_require__.e(/* import() */ 841).then(__webpack_require__.bind(__webpack_require__, 8841));
5856
+ const LoadChatbox = () => __webpack_require__.e(/* import() */ 132).then(__webpack_require__.bind(__webpack_require__, 8132));
5715
5857
  const LoadContact = () => __webpack_require__.e(/* import() */ 335).then(__webpack_require__.bind(__webpack_require__, 2335));
5716
5858
  const LoadPopup = () => __webpack_require__.e(/* import() */ 213).then(__webpack_require__.bind(__webpack_require__, 8213));
5717
5859
  const LoadNotif = () => __webpack_require__.e(/* import() */ 605).then(__webpack_require__.bind(__webpack_require__, 9605));
@@ -5719,12 +5861,9 @@ function Plugin(plugin, store, $container, lib) {
5719
5861
  if (!$container) throw '$div must is a valid html node';
5720
5862
  var $div = document.createElement('div');
5721
5863
  $div.id = plugin.id;
5722
- let acc = store.matchAccount();
5723
- $div.setAttribute('sbz-plugin-type', plugin.type);
5724
- $div.setAttribute('sbz-plugin-account-id', acc.id);
5725
5864
  $container.appendChild($div);
5726
- let _locale = common/* getLocale */.Kd(plugin, util/* default */.Z.detectLang());
5727
- var domGate = new util/* default */.Z.Gate();
5865
+ let _locale = common/* getLocale */.Kd(plugin, util/* default.detectLang */.Z.detectLang());
5866
+ var domGate = new util/* default.Gate */.Z.Gate();
5728
5867
  var pageIndex = 0;
5729
5868
  var highlight;
5730
5869
  var state = 'hold';
@@ -5737,13 +5876,13 @@ function Plugin(plugin, store, $container, lib) {
5737
5876
  let lastrun = store.matchLastPluginRun(plugin.id);
5738
5877
  if (plugin.type === 'chatbox' || plugin.type === 'notification') lastrun = undefined;
5739
5878
  if (!plugin.enabled) return;
5740
- let match = util/* default */.Z.checkRunConditions(plugin.initiative_frequency, plugin.conditions, lastrun, store);
5879
+ let match = util/* default.checkRunConditions */.Z.checkRunConditions(plugin.initiative_frequency, plugin.conditions, lastrun, store);
5741
5880
  if (!match) return;
5742
5881
  state = 'running';
5743
5882
  await _this.update(plugin);
5744
5883
  };
5745
5884
  this.forceRunPopup = async () => {
5746
- if (util/* default */.Z.get(_ref, 'current')) {
5885
+ if (util/* default.get */.Z.get(_ref, 'current')) {
5747
5886
  _ref.current.openPopup();
5748
5887
  } else {
5749
5888
  _render();
@@ -5830,10 +5969,11 @@ function Plugin(plugin, store, $container, lib) {
5830
5969
  };
5831
5970
  let t = key => {
5832
5971
  if (_locale === 'debug') return `{{${key}}}`;
5833
- let messages = util/* default */.Z.get(common/* langMessages */.Rs, _locale, []);
5834
- let message = util/* default */.Z.find(messages, message => message.key === key);
5835
- return util/* default */.Z.get(message, 'message', key);
5972
+ let messages = util/* default.get */.Z.get(common/* langMessages */.Rs, _locale, []);
5973
+ let message = util/* default.find */.Z.find(messages, message => message.key === key);
5974
+ return util/* default.get */.Z.get(message, 'message', key);
5836
5975
  };
5976
+ let acc = store.matchAccount();
5837
5977
  t.i18n = i18nText => {
5838
5978
  if (!i18nText) return '';
5839
5979
  let fallbackLocale = plugin.locale || acc.locale || 'vi-VN';
@@ -5857,29 +5997,29 @@ function Plugin(plugin, store, $container, lib) {
5857
5997
  return _locale;
5858
5998
  };
5859
5999
  let images = {};
5860
- util/* default */.Z.map(util/* default */.Z.get(plugin, 'popup.pages'), page => {
6000
+ util/* default.map */.Z.map(util/* default.get */.Z.get(plugin, 'popup.pages'), page => {
5861
6001
  if (!page) return;
5862
- util/* default */.Z.map(page.components, com => {
6002
+ util/* default.map */.Z.map(page.components, com => {
5863
6003
  if (com.type === 'image' && com.image && com.image.url && com.image.url.startsWith('http')) {
5864
6004
  images[com.image.url] = true;
5865
6005
  }
5866
6006
  });
5867
6007
  });
5868
- if (util/* default */.Z.size(images) >= 0) util/* default */.Z.map(images, (_, image) => util/* default */.Z.preloadImg(image));
5869
- let triggers = util/* default */.Z.get(plugin, 'triggers') || [{
6008
+ if (util/* default.size */.Z.size(images) >= 0) util/* default.map */.Z.map(images, (_, image) => util/* default.preloadImg */.Z.preloadImg(image));
6009
+ let triggers = util/* default.get */.Z.get(plugin, 'triggers') || [{
5870
6010
  type: 'after_pageview',
5871
6011
  after_pageview_sec: 0,
5872
6012
  disabled: false
5873
6013
  }];
5874
- for (var i = 0; i < util/* default */.Z.size(triggers); i++) {
6014
+ for (var i = 0; i < util/* default.size */.Z.size(triggers); i++) {
5875
6015
  var tr = triggers[i];
5876
6016
  if (!tr) continue;
5877
6017
  if (tr.disabled) continue;
5878
- if (tr.type === 'exit_intent') util/* default */.Z.trackExitIntent(run);
5879
- if (tr.type === 'area_clicked') util/* default */.Z.trackAreaClicked(tr.area_clicked_css_selector, run);
5880
- if (tr.type === 'scrolling_percentage') util/* default */.Z.trackScrollingPercentage(tr.scrolling_percentage, run);
5881
- if (tr.type === 'inactivity_duration') util/* default */.Z.trackInactivity(tr.inactivity_sec, run);
5882
- if (tr.type === 'after_pageview') util/* default */.Z.trackTimeOnPage(tr.after_pageview_sec, run);
6018
+ if (tr.type === 'exit_intent') util/* default.trackExitIntent */.Z.trackExitIntent(run);
6019
+ if (tr.type === 'area_clicked') util/* default.trackAreaClicked */.Z.trackAreaClicked(tr.area_clicked_css_selector, run);
6020
+ if (tr.type === 'scrolling_percentage') util/* default.trackScrollingPercentage */.Z.trackScrollingPercentage(tr.scrolling_percentage, run);
6021
+ if (tr.type === 'inactivity_duration') util/* default.trackInactivity */.Z.trackInactivity(tr.inactivity_sec, run);
6022
+ if (tr.type === 'after_pageview') util/* default.trackTimeOnPage */.Z.trackTimeOnPage(tr.after_pageview_sec, run);
5883
6023
  }
5884
6024
  this.update(plugin);
5885
6025
  common/* downloadLanguage */.WW(store, _locale).then(() => {
@@ -5907,7 +6047,7 @@ class PluginMgr {
5907
6047
  if (this._destroy) return;
5908
6048
  let pluginM = this.lib.store.matchPlugin();
5909
6049
  let foundchatbox = false;
5910
- util/* default */.Z.each(pluginM, conf => {
6050
+ util/* default.each */.Z.each(pluginM, conf => {
5911
6051
  if (conf.type === 'chatbox') {
5912
6052
  if (foundchatbox) return;
5913
6053
  foundchatbox = true;
@@ -5918,7 +6058,7 @@ class PluginMgr {
5918
6058
  }
5919
6059
  this.pluginM[conf.id].update(conf);
5920
6060
  });
5921
- util/* default */.Z.each(this.pluginM, (conf, id) => {
6061
+ util/* default.each */.Z.each(this.pluginM, (conf, id) => {
5922
6062
  if (pluginM[id]) return;
5923
6063
  this.pluginM[id].destroy();
5924
6064
  delete this.pluginM[id];
@@ -5926,7 +6066,7 @@ class PluginMgr {
5926
6066
  });
5927
6067
  let pluginM = this.lib.store.matchPlugin();
5928
6068
  let foundchatbox = false;
5929
- util/* default */.Z.each(pluginM, conf => {
6069
+ util/* default.each */.Z.each(pluginM, conf => {
5930
6070
  if (conf.type === 'chatbox') {
5931
6071
  if (foundchatbox) return;
5932
6072
  foundchatbox = true;
@@ -5936,12 +6076,12 @@ class PluginMgr {
5936
6076
  }
5937
6077
  findChatbox() {
5938
6078
  var pluginM = this.lib.store.matchPlugin();
5939
- let chatboxs = util/* default */.Z.filter(this.pluginM, (plugin, id) => pluginM[id].type === 'chatbox');
5940
- if (util/* default */.Z.size(chatboxs) === 0) {
6079
+ let chatboxs = util/* default.filter */.Z.filter(this.pluginM, (plugin, id) => pluginM[id].type === 'chatbox');
6080
+ if (util/* default.size */.Z.size(chatboxs) === 0) {
5941
6081
  console.error('no chatbox found.');
5942
6082
  return;
5943
6083
  }
5944
- let chatbox = util/* default */.Z.find(chatboxs, chatbox => chatbox.getState() === 'running');
6084
+ let chatbox = util/* default.find */.Z.find(chatboxs, chatbox => chatbox.getState() === 'running');
5945
6085
  if (!chatbox) {
5946
6086
  chatbox = chatboxs[0];
5947
6087
  }
@@ -5997,8 +6137,9 @@ class PluginMgr {
5997
6137
  chatbox.setLocale(locale);
5998
6138
  }
5999
6139
  destroy() {
6000
- util/* default */.Z.map(this.pluginM, (conf, id) => {
6001
- conf.destroy();
6140
+ util/* default.map */.Z.map(this.pluginM, (conf, id) => {
6141
+ if (this.pluginM[id]) return;
6142
+ this.pluginM[id].destroy();
6002
6143
  delete this.pluginM[id];
6003
6144
  });
6004
6145
  this._destroy = true;
@@ -6006,8 +6147,8 @@ class PluginMgr {
6006
6147
  }
6007
6148
  ;// CONCATENATED MODULE: ./src/lib.js
6008
6149
  function lib_defineProperty(obj, key, value) { key = lib_toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
6009
- function lib_toPropertyKey(t) { var i = lib_toPrimitive(t, "string"); return "symbol" == typeof i ? i : String(i); }
6010
- function lib_toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
6150
+ function lib_toPropertyKey(arg) { var key = lib_toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
6151
+ function lib_toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
6011
6152
 
6012
6153
 
6013
6154
 
@@ -6015,25 +6156,25 @@ var $link = document.createElement('link');
6015
6156
  $link.href = 'https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&display=swap';
6016
6157
  $link.rel = 'stylesheet';
6017
6158
  document.head.append($link);
6018
- util/* default */.Z.preloadWebfonts(['Inter'], [400, 500, 600]);
6159
+ util/* default.preloadWebfonts */.Z.preloadWebfonts(['Inter'], [400, 500, 600]);
6019
6160
  class Widget {
6020
6161
  constructor(ApiURL, FileURL, RealtimeURL, inmem, fake) {
6021
6162
  lib_defineProperty(this, "version", () => '4.5');
6022
6163
  lib_defineProperty(this, "setSetting", setting => this.store.setSetting({
6023
6164
  account_setting: setting
6024
6165
  }));
6025
- lib_defineProperty(this, "getUser", () => util/* default */.Z.parseJSON(util/* default */.Z.stringify(this.store.matchUser())));
6166
+ lib_defineProperty(this, "getUser", () => util/* default.parseJSON */.Z.parseJSON(util/* default.stringify */.Z.stringify(this.store.matchUser())));
6026
6167
  lib_defineProperty(this, "setViewingProduct", p => this.store.linkProduct(p));
6027
6168
  lib_defineProperty(this, "getViewingProduct", () => this.store.getLinkedProduct());
6028
6169
  lib_defineProperty(this, "track", () => this.store.track());
6029
6170
  this.impressionTokens = {};
6030
- this.domGate = new util/* default */.Z.Gate();
6171
+ this.domGate = new util/* default.Gate */.Z.Gate();
6031
6172
  this.store = new Store(ApiURL, FileURL, RealtimeURL, inmem, fake);
6032
6173
  window.sbz_store = this.store;
6033
6174
  this.subs = [];
6034
6175
  this.store.onConvoEvent({
6035
6176
  _isMounted: true
6036
- }, ev => util/* default */.Z.map(this.subs, sub => sub(ev)));
6177
+ }, ev => util/* default.map */.Z.map(this.subs, sub => sub(ev)));
6037
6178
  }
6038
6179
  async waitReady(cb) {
6039
6180
  await this.store.readyGate.entry();
@@ -6044,10 +6185,10 @@ class Widget {
6044
6185
  let user = await this.store.login(accid, user_id, tokenGenerator);
6045
6186
  if (!$container) $container = document.body;
6046
6187
  this.pluginMgr = new PluginMgr(this, $container);
6047
- let clean = util/* default */.Z.setInterval(() => {
6188
+ let clean = util/* default.setInterval */.Z.setInterval(() => {
6048
6189
  if ($container && $container.isConnected) return;
6049
6190
  this.pluginMgr.destroy();
6050
- util/* default */.Z.clearInterval(clean);
6191
+ util/* default.clearInterval */.Z.clearInterval(clean);
6051
6192
  }, 1000);
6052
6193
  this.domGate.open();
6053
6194
  return user;
@@ -6060,32 +6201,24 @@ class Widget {
6060
6201
  let accid = param.account_id;
6061
6202
  let ref = param.ref;
6062
6203
  let user = await this.store.init(accid, undefined, ref);
6063
- util/* default */.Z.setTimeout(() => window.postMessage({
6064
- type: 'widget_loaded',
6065
- account_id: accid
6066
- }, '*'), 0);
6067
6204
  if (!$container) $container = document.body || document;
6068
6205
  this.pluginMgr = new PluginMgr(this, $container);
6069
- let clean = util/* default */.Z.setInterval(() => {
6206
+ let clean = util/* default.setInterval */.Z.setInterval(() => {
6070
6207
  if ($container && $container.isConnected) return;
6071
6208
  this.pluginMgr.destroy();
6072
- util/* default */.Z.clearInterval(clean);
6209
+ util/* default.clearInterval */.Z.clearInterval(clean);
6073
6210
  }, 1000);
6074
6211
  this.domGate.open();
6075
6212
  return user;
6076
6213
  }
6077
6214
  async setAccount(id, $container, mask, cb) {
6078
6215
  let outmask = await this.store.init(id, mask);
6079
- util/* default */.Z.setTimeout(() => window.postMessage({
6080
- type: 'widget_loaded',
6081
- account_id: id
6082
- }, '*'), 0);
6083
6216
  if (!$container) $container = document.body || document;
6084
6217
  this.pluginMgr = new PluginMgr(this, $container);
6085
- let clean = util/* default */.Z.setInterval(() => {
6218
+ let clean = util/* default.setInterval */.Z.setInterval(() => {
6086
6219
  if ($container && $container.isConnected) return;
6087
6220
  this.pluginMgr.destroy();
6088
- util/* default */.Z.clearInterval(clean);
6221
+ util/* default.clearInterval */.Z.clearInterval(clean);
6089
6222
  }, 1000);
6090
6223
  this.domGate.open();
6091
6224
  cb && cb(outmask);
@@ -6099,12 +6232,12 @@ class Widget {
6099
6232
  attributes
6100
6233
  });
6101
6234
  var user = this.store.matchUser();
6102
- return util/* default */.Z.cloneDeep(user.attributes);
6235
+ return util/* default.cloneDeep */.Z.cloneDeep(user.attributes);
6103
6236
  }
6104
6237
  async getUserAttributes() {
6105
6238
  await this.store.readyGate.entry();
6106
6239
  var user = this.store.matchUser();
6107
- return util/* default */.Z.cloneDeep(util/* default */.Z.get(user, 'attributes', []));
6240
+ return util/* default.cloneDeep */.Z.cloneDeep(util/* default.get */.Z.get(user, 'attributes', []));
6108
6241
  }
6109
6242
  async getWidgetCurrentView() {
6110
6243
  await this.domGate.entry();
@@ -6135,40 +6268,40 @@ class Widget {
6135
6268
  });
6136
6269
  }
6137
6270
  async viewForm(formid) {
6138
- if (!formid || !util/* default */.Z.startsWith(formid, 'cp')) return;
6271
+ if (!formid || !util/* default.startsWith */.Z.startsWith(formid, 'cp')) return;
6139
6272
  let impressiontoken = this.impressionTokens[formid];
6140
6273
  if (impressiontoken) return impressiontoken;
6141
6274
  let {
6142
6275
  body: impression
6143
6276
  } = await this.store.sendImpression(formid);
6144
- impressiontoken = util/* default */.Z.get(impression, 'impression_token') || '';
6277
+ impressiontoken = util/* default.get */.Z.get(impression, 'impression_token') || '';
6145
6278
  this.impressionTokens[formid] = impressiontoken;
6146
6279
  return impressiontoken;
6147
6280
  }
6148
6281
  async submitForm(formid, values) {
6149
- if (!formid || !util/* default */.Z.startsWith(formid, 'cp')) return;
6150
- let storeuser = util/* default */.Z.cloneDeep(this.store.matchUser());
6282
+ if (!formid || !util/* default.startsWith */.Z.startsWith(formid, 'cp')) return;
6283
+ let storeuser = util/* default.cloneDeep */.Z.cloneDeep(this.store.matchUser());
6151
6284
  let user = {
6152
6285
  id: storeuser.id,
6153
6286
  account_id: storeuser.account_id
6154
6287
  };
6155
6288
  let is_lead = false;
6156
- values = util/* default */.Z.map(values, val => {
6289
+ values = util/* default.map */.Z.map(values, val => {
6157
6290
  let key = val.key;
6158
6291
  if (key === 'email') key = 'emails';
6159
6292
  if (key === 'phone') key = 'phones';
6160
6293
  is_lead = is_lead || key == 'emails' || key == 'phones';
6161
- util/* default */.Z.setUserAttr(user, {
6294
+ util/* default.setUserAttr */.Z.setUserAttr(user, {
6162
6295
  key: key,
6163
6296
  [val.type || 'text']: val.value
6164
6297
  });
6165
6298
  return {
6166
6299
  key: key,
6167
6300
  type: val.type || 'text',
6168
- value: util/* default */.Z.stringify(val.value)
6301
+ value: util/* default.stringify */.Z.stringify(val.value)
6169
6302
  };
6170
6303
  });
6171
- if (is_lead) util/* default */.Z.setUserAttr(user, {
6304
+ if (is_lead) util/* default.setUserAttr */.Z.setUserAttr(user, {
6172
6305
  key: 'lead_source',
6173
6306
  text: 'plugin.' + formid
6174
6307
  });
@@ -6213,10 +6346,6 @@ class Widget {
6213
6346
  _overrideDeviceType(type) {
6214
6347
  this.store.overrideDeviceType(type);
6215
6348
  }
6216
- unload() {
6217
- if (this.pluginMgr) this.pluginMgr.destroy();
6218
- this.store.destroy();
6219
- }
6220
6349
  _overridePlugin(plugins) {
6221
6350
  this.store.overridePlugin(plugins);
6222
6351
  }
@@ -6230,14 +6359,14 @@ class Widget {
6230
6359
  this.pluginMgr.forceRunPopup(pluginid);
6231
6360
  }
6232
6361
  unEvent(cb) {
6233
- this.subs = util/* default */.Z.filter(this.subs, sub => sub !== cb);
6362
+ this.subs = util/* default.filter */.Z.filter(this.subs, sub => sub !== cb);
6234
6363
  }
6235
6364
  async countUnreadMessages() {
6236
6365
  await this.domGate.entry();
6237
6366
  return this.store.matchUnread();
6238
6367
  }
6239
6368
  onEvent(cb) {
6240
- this.subs = util/* default */.Z.filter(this.subs, sub => sub !== cb);
6369
+ this.subs = util/* default.filter */.Z.filter(this.subs, sub => sub !== cb);
6241
6370
  this.subs.push(cb);
6242
6371
  }
6243
6372
  overrideAccount(acc) {
@@ -6245,7 +6374,7 @@ class Widget {
6245
6374
  }
6246
6375
  async overrideChatbox(chatbox) {
6247
6376
  await this.store.overrideChatbox(chatbox);
6248
- if (util/* default */.Z.get(chatbox, 'chatbox.greeting.greeting')) {
6377
+ if (util/* default.get */.Z.get(chatbox, 'chatbox.greeting.greeting')) {
6249
6378
  this.pluginMgr.showCurrentGreeting();
6250
6379
  }
6251
6380
  }