@subiz/widget-v4 4.1.204 → 4.1.206

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 (61) hide show
  1. package/compiled_src/chatbox/Widget.js +5 -1
  2. package/compiled_src/chatbox/main.js +11 -1
  3. package/compiled_src/plugin.js +4 -1
  4. package/compiled_src/store/api.js +2 -2
  5. package/dist/127.js +1 -1
  6. package/dist/132.js +23 -8
  7. package/dist/185.js +122 -32
  8. package/dist/1a0475c4721.132.js +1 -0
  9. package/dist/1a0475c4721.185.js +1 -0
  10. package/dist/1a0475c4721.27.js +1 -0
  11. package/dist/1a0475c4721.278.js +1 -0
  12. package/dist/1a0475c4721.339.js +1 -0
  13. package/dist/1a0475c4721.459.js +1 -0
  14. package/dist/1a0475c4721.490.js +1 -0
  15. package/dist/1a0475c4721.74.js +1 -0
  16. package/dist/1a0475c4721.997.js +1 -0
  17. package/dist/1a0475c4721.app.js +1 -0
  18. package/dist/1a0475c4721.chat.html +1 -0
  19. package/dist/1a0475c4721.chat.js +1 -0
  20. package/dist/1a0475c4721.form.html +1 -0
  21. package/dist/1a0475c4721.form.js +1 -0
  22. package/dist/1a0475c4721.index.html +1 -0
  23. package/dist/1a0475c4721.library.html +1 -0
  24. package/dist/1a0475c4721.library.js +1 -0
  25. package/dist/1a0475c4721.preview.html +1 -0
  26. package/dist/1a0475c4721.preview.js +1 -0
  27. package/dist/1a0475c4721.webview.js +1 -0
  28. package/dist/27.js +9 -7
  29. package/dist/459.js +9 -7
  30. package/dist/490.js +3 -3
  31. package/dist/74.js +7 -4
  32. package/dist/997.js +8 -6
  33. package/dist/HASH +1 -1
  34. package/dist/screenshoot.js +680 -390
  35. package/package.json +10 -10
  36. package/src/chatbox/Widget.js +5 -1
  37. package/src/chatbox/main.js +13 -1
  38. package/src/plugin.js +5 -1
  39. package/src/store/api.js +4 -2
  40. package/up +5 -5
  41. package/dist/19e1c4525c1.132.js +0 -1
  42. package/dist/19e1c4525c1.185.js +0 -1
  43. package/dist/19e1c4525c1.27.js +0 -1
  44. package/dist/19e1c4525c1.278.js +0 -1
  45. package/dist/19e1c4525c1.339.js +0 -1
  46. package/dist/19e1c4525c1.459.js +0 -1
  47. package/dist/19e1c4525c1.490.js +0 -1
  48. package/dist/19e1c4525c1.74.js +0 -1
  49. package/dist/19e1c4525c1.997.js +0 -1
  50. package/dist/19e1c4525c1.app.js +0 -1
  51. package/dist/19e1c4525c1.chat.html +0 -1
  52. package/dist/19e1c4525c1.chat.js +0 -1
  53. package/dist/19e1c4525c1.form.html +0 -1
  54. package/dist/19e1c4525c1.form.js +0 -1
  55. package/dist/19e1c4525c1.index.html +0 -72
  56. package/dist/19e1c4525c1.library.html +0 -72
  57. package/dist/19e1c4525c1.library.js +0 -1
  58. package/dist/19e1c4525c1.preview.html +0 -759
  59. package/dist/19e1c4525c1.preview.js +0 -1
  60. package/dist/19e1c4525c1.webview.js +0 -1
  61. /package/dist/{19e1c4525c1.127.js → 1a0475c4721.127.js} +0 -0
@@ -672,7 +672,7 @@ function randomString(len, base) {
672
672
  return str
673
673
  }
674
674
 
675
- module.exports = {xhrsend, parseJSON, Pubsub, randomString, logError}
675
+ module.exports = {xhrsend, parseJSON, Pubsub, ...void (randomString), ...void (logError)}
676
676
 
677
677
 
678
678
  /***/ },
@@ -710,13 +710,24 @@ function Conn(apiUrl, credential, onDead, onEvents, callAPI, accid) {
710
710
  // using an exponential backoff strategy. It will terminate if an unretryable
711
711
  // error is encountered.
712
712
  // The first loop begins after the first subscription call completes successfully
713
+ var MIN_POLL_INTERVAL = 250 // max 4 req/s, in case the server returns instantly instead of holding the long poll
714
+ var last_poll_at = 0
715
+ var polling_started = false // make sure only one polling loop is running
716
+ var startPolling = function () {
717
+ if (polling_started) return
718
+ polling_started = true
719
+ polling(0)
720
+ }
713
721
  var polling = function (backoff) {
714
722
  if (is_dead) return
723
+ last_poll_at = Date.now()
715
724
  callAPI('get', apiUrl + 'poll?token=' + lastToken + '&v=5&account-id=' + accid, undefined, function (body, code) {
716
725
  if (is_dead) return
726
+ var wait = MIN_POLL_INTERVAL - (Date.now() - last_poll_at)
727
+ if (wait < 0) wait = 0
717
728
  if (retryable(code)) {
718
729
  is_polling_stuck = true
719
- return setTimeout(polling, calcNextBackoff(backoff), backoff + 1)
730
+ return setTimeout(polling, Math.max(calcNextBackoff(backoff), wait), backoff + 1)
720
731
  }
721
732
 
722
733
  if (code !== 200) {
@@ -735,6 +746,7 @@ function Conn(apiUrl, credential, onDead, onEvents, callAPI, accid) {
735
746
  if (!seqToken) return kill('poll')
736
747
  lastToken = seqToken
737
748
  onEvents(body.events || [])
749
+ if (wait > 0) return setTimeout(polling, wait, 0)
738
750
  return polling(0)
739
751
  })
740
752
  }
@@ -771,64 +783,73 @@ function Conn(apiUrl, credential, onDead, onEvents, callAPI, accid) {
771
783
  }
772
784
 
773
785
  var query = '?token=' + lastToken
774
- credential.getAccessToken().then(function (access_token) {
775
- if (is_dead) {
776
- resolve(repeat('dead', topics.length))
777
- return rs(false) // break loop
778
- }
779
-
780
- if (credential.user_ref) query += '&user_ref=' + encodeURIComponent(credential.user_ref)
781
- else if (credential.user_mask) query += '&user-mask=' + encodeURIComponent(credential.user_mask)
782
- else if (access_token) query += '&access-token=' + access_token
783
-
784
- var fullurl =
785
- apiUrl + 'subs' + query + '&v=5&account-id=' + encodeURIComponent(accid || credential.account_id)
786
- callAPI('post', fullurl, JSON.stringify({events: topics}), function (body, code) {
787
- if (done) return
786
+ Promise.resolve()
787
+ .then(function () {
788
+ return credential.getAccessToken()
789
+ })
790
+ .then(function (access_token) {
788
791
  if (is_dead) {
789
792
  resolve(repeat('dead', topics.length))
790
793
  return rs(false) // break loop
791
794
  }
792
795
 
793
- if (retryable(code)) {
794
- is_sub_stuck = true
795
- return setTimeout(rs, 3000, true)
796
- }
797
-
798
- // unretryable error
799
- if (code !== 200) {
800
- // we are unable to start the communication with the realtime server.
801
- // Must notify the user by killing the connection
802
- kill('subs')
803
- resolve(repeat('dead', topics.length))
804
- return rs(false)
805
- }
806
- is_sub_stuck = false
807
- done = true
808
- if (lastToken) {
796
+ if (credential.user_ref) query += '&user_ref=' + encodeURIComponent(credential.user_ref)
797
+ else if (credential.user_mask) query += '&user-mask=' + encodeURIComponent(credential.user_mask)
798
+ else if (access_token) query += '&access-token=' + access_token
799
+
800
+ var fullurl =
801
+ apiUrl + 'subs' + query + '&v=5&account-id=' + encodeURIComponent(accid || credential.account_id)
802
+ callAPI('post', fullurl, JSON.stringify({events: topics}), function (body, code) {
803
+ if (done) return
804
+ if (is_dead) {
805
+ resolve(repeat('dead', topics.length))
806
+ return rs(false) // break loop
807
+ }
808
+
809
+ if (retryable(code)) {
810
+ is_sub_stuck = true
811
+ return setTimeout(rs, 3000, true)
812
+ }
813
+
814
+ // unretryable error
815
+ if (code !== 200) {
816
+ // we are unable to start the communication with the realtime server.
817
+ // Must notify the user by killing the connection
818
+ kill('subs')
819
+ resolve(repeat('dead', topics.length))
820
+ return rs(false)
821
+ }
822
+ is_sub_stuck = false
823
+ done = true
824
+ if (lastToken) {
825
+ resolve(topics)
826
+ return rs(false)
827
+ }
828
+
829
+ // first time sub, should grab the initial token
830
+ body = parseJSON(body) || {}
831
+ var initialToken = body.initial_token
832
+ // the server returns a malform payload. We should end
833
+ if (!initialToken) {
834
+ kill('subs')
835
+ resolve(repeat('dead', topics.length))
836
+ return rs(false) // break loop
837
+ }
838
+
839
+ // learn new host
840
+ if (body.host) apiUrl = absUrl(body.host)
841
+
842
+ lastToken = initialToken
843
+ startPolling()
809
844
  resolve(topics)
810
- return rs(false)
811
- }
812
-
813
- // first time sub, should grab the initial token
814
- body = parseJSON(body) || {}
815
- var initialToken = body.initial_token
816
- // the server returns a malform payload. We should end
817
- if (!initialToken) {
818
- kill('subs')
819
- resolve(repeat('dead', topics.length))
820
- return rs(false) // break loop
821
- }
822
-
823
- // learn new host
824
- if (body.host) apiUrl = absUrl(body.host)
825
-
826
- lastToken = initialToken
827
- polling(0)
828
- resolve(topics)
829
- return rs(false) // to break the loop
845
+ return rs(false) // to break the loop
846
+ })
847
+ })
848
+ .catch(function () {
849
+ // getAccessToken failed, retry instead of hanging the loop
850
+ is_sub_stuck = true
851
+ setTimeout(rs, 3000, true)
830
852
  })
831
- })
832
853
  })
833
854
  })
834
855
 
@@ -874,8 +895,11 @@ function Realtime(apiUrls, credential, callAPI, accid, skipautoreconnect) {
874
895
  // stop the connection
875
896
  this.stop = function () {
876
897
  if (!conn) return
877
- conn.kill()
898
+ // detach before killing so onDead knows this is intentional and
899
+ // doesn't schedule a reconnect
900
+ var oldconn = conn
878
901
  conn = undefined
902
+ oldconn.kill()
879
903
  pubsub.emit('interrupted')
880
904
  }
881
905
 
@@ -919,7 +943,14 @@ function Realtime(apiUrls, credential, callAPI, accid, skipautoreconnect) {
919
943
  var conn
920
944
  var reconnect = function () {
921
945
  var randomUrl = apiUrls[Math.floor(Math.random() * apiUrls.length)]
922
- if (conn) conn.kill() // kill old connection
946
+ if (conn) {
947
+ // detach before killing so the old conn's onDead doesn't
948
+ // schedule another reconnect (which would kill this new conn,
949
+ // schedule another one, and churn forever)
950
+ var oldconn = conn
951
+ conn = undefined
952
+ oldconn.kill()
953
+ }
923
954
  var myconn = new Conn(
924
955
  randomUrl,
925
956
  credential,
@@ -992,7 +1023,7 @@ module.exports = Realtime
992
1023
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
993
1024
  /* harmony export */ A: () => (/* binding */ Emoji)
994
1025
  /* harmony export */ });
995
- /* harmony import */ var _util_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(8150);
1026
+ /* harmony import */ var _util_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(8026);
996
1027
  /* harmony import */ var _common_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(2840);
997
1028
  /* harmony import */ var preact__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(172);
998
1029
 
@@ -1019,7 +1050,7 @@ class Emoji extends _common_js__WEBPACK_IMPORTED_MODULE_1__/* .Com */ .Mw {
1019
1050
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
1020
1051
  /* harmony export */ A: () => (/* binding */ Block)
1021
1052
  /* harmony export */ });
1022
- /* harmony import */ var _util_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(8150);
1053
+ /* harmony import */ var _util_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(8026);
1023
1054
  /* harmony import */ var _Emoji_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(2959);
1024
1055
  /* harmony import */ var _common_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(2840);
1025
1056
  /* harmony import */ var preact__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(172);
@@ -1225,10 +1256,11 @@ function absLink(url) {
1225
1256
 
1226
1257
  "use strict";
1227
1258
  __webpack_require__.r(__webpack_exports__);
1228
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
1229
- /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
1230
- /* harmony export */ });
1231
1259
  /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (__webpack_require__(8113));
1260
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, [
1261
+ /* harmony export */ "default", 0, /* export default binding */ __WEBPACK_DEFAULT_EXPORT__
1262
+ /* harmony export */ ]);
1263
+
1232
1264
 
1233
1265
  /***/ },
1234
1266
 
@@ -1236,10 +1268,7 @@ __webpack_require__.r(__webpack_exports__);
1236
1268
  (__unused_webpack_module, __webpack_exports__, __webpack_require__) {
1237
1269
 
1238
1270
  "use strict";
1239
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
1240
- /* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__)
1241
- /* harmony export */ });
1242
- /* harmony import */ var _util_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(8150);
1271
+ /* harmony import */ var _util_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(8026);
1243
1272
 
1244
1273
  /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (class {
1245
1274
  constructor(config) {
@@ -1282,7 +1311,7 @@ __webpack_require__.r(__webpack_exports__);
1282
1311
  window.cancelAnimationFrame(this.animationframe);
1283
1312
  }
1284
1313
  });
1285
- (Object.getOwnPropertyDescriptor(__WEBPACK_DEFAULT_EXPORT__, "name") || {}).writable || Object.defineProperty(__WEBPACK_DEFAULT_EXPORT__, "name", { value: "default", configurable: true });
1314
+ __webpack_require__.dn(__WEBPACK_DEFAULT_EXPORT__);
1286
1315
  function linearTransform(from, to, t, duration) {
1287
1316
  if (eqFloat(from, to)) return from;
1288
1317
  var s = to - from;
@@ -1294,6 +1323,10 @@ function linearTransform(from, to, t, duration) {
1294
1323
  function eqFloat(a, b) {
1295
1324
  return Math.abs(a - b) <= 0.001;
1296
1325
  }
1326
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, [
1327
+ /* harmony export */ "A", 0, /* export default binding */ __WEBPACK_DEFAULT_EXPORT__
1328
+ /* harmony export */ ]);
1329
+
1297
1330
 
1298
1331
  /***/ },
1299
1332
 
@@ -1342,7 +1375,7 @@ class Spinner extends _common_js__WEBPACK_IMPORTED_MODULE_0__/* .Com */ .Mw {
1342
1375
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
1343
1376
  /* harmony export */ A: () => (/* binding */ Time)
1344
1377
  /* harmony export */ });
1345
- /* harmony import */ var _util_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(8150);
1378
+ /* harmony import */ var _util_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(8026);
1346
1379
  /* harmony import */ var _common_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(2840);
1347
1380
  /* harmony import */ var preact__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(172);
1348
1381
 
@@ -1490,13 +1523,12 @@ function ago(timeA, timeB, t) {
1490
1523
  "use strict";
1491
1524
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
1492
1525
  /* harmony export */ Dy: () => (/* binding */ downloadLanguage),
1493
- /* harmony export */ JK: () => (/* binding */ getLocale),
1494
1526
  /* harmony export */ Mw: () => (/* binding */ Com),
1495
1527
  /* harmony export */ r9: () => (/* binding */ langMessages),
1496
1528
  /* harmony export */ tW: () => (/* binding */ Clickaway)
1497
1529
  /* harmony export */ });
1498
1530
  /* harmony import */ var preact__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(172);
1499
- /* harmony import */ var _util_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(8150);
1531
+ /* harmony import */ var _util_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(8026);
1500
1532
 
1501
1533
 
1502
1534
  class Com extends preact__WEBPACK_IMPORTED_MODULE_0__/* .Component */ .uA {
@@ -1568,6 +1600,10 @@ function downloadLanguage(store, locale, force) {
1568
1600
  langMessages[locale] = messages;
1569
1601
  });
1570
1602
  }
1603
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, [
1604
+ /* harmony export */ "JK", 0, /* binding */ getLocale
1605
+ /* harmony export */ ]);
1606
+
1571
1607
 
1572
1608
  /***/ },
1573
1609
 
@@ -1609,14 +1645,25 @@ module.exports = localStorageMemory;
1609
1645
 
1610
1646
  /***/ },
1611
1647
 
1612
- /***/ 9917
1648
+ /***/ 8026
1613
1649
  (__unused_webpack_module, __webpack_exports__, __webpack_require__) {
1614
1650
 
1615
1651
  "use strict";
1652
+
1653
+ // EXPORTS
1654
+ __webpack_require__.d(__webpack_exports__, {
1655
+ A: () => (/* binding */ util)
1656
+ });
1657
+
1658
+ // EXTERNAL MODULE: ./node_modules/@subiz/ajax/src/ajax.js
1659
+ var ajax_namespaceFn = () => {
1660
+ return __webpack_require__(318);
1661
+ };
1662
+
1663
+ // MODULE: ./src/util/common.js
1664
+ var common_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, __webpack_exports__) {
1616
1665
  __webpack_require__.r(__webpack_exports__);
1617
1666
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
1618
- /* harmony export */ DEFVAL: () => (/* binding */ DEFVAL),
1619
- /* harmony export */ DEF_CHAT_BUTTON_BACKGROUND_IMAGE_URL: () => (/* binding */ DEF_CHAT_BUTTON_BACKGROUND_IMAGE_URL),
1620
1667
  /* harmony export */ Date: () => (/* binding */ Date),
1621
1668
  /* harmony export */ XMLHttpRequest: () => (/* binding */ XMLHttpRequest),
1622
1669
  /* harmony export */ agentsOfConvo: () => (/* binding */ agentsOfConvo),
@@ -1695,8 +1742,8 @@ __webpack_require__.r(__webpack_exports__);
1695
1742
  /* harmony export */ unixSec: () => (/* binding */ unixSec),
1696
1743
  /* harmony export */ usersOfConvo: () => (/* binding */ usersOfConvo)
1697
1744
  /* harmony export */ });
1698
- var op = __webpack_require__(3259);
1699
- const ajax = __webpack_require__(318);
1745
+ var op = op_namespaceFn();
1746
+ const ajax = ajax_namespaceFn();
1700
1747
  function rgbToHsl(r, g, b) {
1701
1748
  ;
1702
1749
  r /= 255, g /= 255, b /= 255;
@@ -2974,13 +3021,100 @@ function checkUrlCondition(cond, href) {
2974
3021
  if (!foundInclude) return false;
2975
3022
  return true;
2976
3023
  }
3024
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, [
3025
+ /* harmony export */ "DEFVAL", 0, /* binding */ DEFVAL,
3026
+ /* harmony export */ "DEF_CHAT_BUTTON_BACKGROUND_IMAGE_URL", 0, /* binding */ DEF_CHAT_BUTTON_BACKGROUND_IMAGE_URL
3027
+ /* harmony export */ ]);
2977
3028
 
2978
- /***/ },
3029
+ });
2979
3030
 
2980
- /***/ 1139
2981
- (__unused_webpack_module, __webpack_exports__, __webpack_require__) {
3031
+ // NAMESPACE OBJECT (decoupled): ./src/util/common.js
3032
+ var common_namespaceObject = {};
3033
+ __webpack_require__.r(common_namespaceObject);
3034
+ __webpack_require__.d(common_namespaceObject, {
3035
+ DEFVAL: () => ((common_namespaceFn().DEFVAL)),
3036
+ DEF_CHAT_BUTTON_BACKGROUND_IMAGE_URL: () => ((common_namespaceFn().DEF_CHAT_BUTTON_BACKGROUND_IMAGE_URL)),
3037
+ Date: () => ((common_namespaceFn().Date)),
3038
+ XMLHttpRequest: () => ((common_namespaceFn().XMLHttpRequest)),
3039
+ agentsOfConvo: () => ((common_namespaceFn().agentsOfConvo)),
3040
+ blockToText: () => ((common_namespaceFn().blockToText)),
3041
+ checkRunConditions: () => ((common_namespaceFn().checkRunConditions)),
3042
+ checkUrlCondition: () => ((common_namespaceFn().checkUrlCondition)),
3043
+ clearInterval: () => ((common_namespaceFn().clearInterval)),
3044
+ clearTimeout: () => ((common_namespaceFn().clearTimeout)),
3045
+ cloneDeep: () => ((common_namespaceFn().cloneDeep)),
3046
+ convoOfEv: () => ((common_namespaceFn().convoOfEv)),
3047
+ convoToEv: () => ((common_namespaceFn().convoToEv)),
3048
+ detectLang: () => ((common_namespaceFn().detectLang)),
3049
+ diffDay: () => ((common_namespaceFn().diffDay)),
3050
+ diffYear: () => ((common_namespaceFn().diffYear)),
3051
+ each: () => ((common_namespaceFn().each)),
3052
+ extract: () => ((common_namespaceFn().extract)),
3053
+ extractEmails: () => ((common_namespaceFn().extractEmails)),
3054
+ extractEmojis: () => ((common_namespaceFn().extractEmojis)),
3055
+ extractLinks: () => ((common_namespaceFn().extractLinks)),
3056
+ extractPhones: () => ((common_namespaceFn().extractPhones)),
3057
+ extractText: () => ((common_namespaceFn().extractText)),
3058
+ filter: () => ((common_namespaceFn().filter)),
3059
+ find: () => ((common_namespaceFn().find)),
3060
+ formatCurrency: () => ((common_namespaceFn().formatCurrency)),
3061
+ getAgentDisplayName: () => ((common_namespaceFn().getAgentDisplayName)),
3062
+ getDayName: () => ((common_namespaceFn().getDayName)),
3063
+ getMs: () => ((common_namespaceFn().getMs)),
3064
+ getUrlParameter: () => ((common_namespaceFn().getUrlParameter)),
3065
+ getUserAttr: () => ((common_namespaceFn().getUserAttr)),
3066
+ hslToRgb: () => ((common_namespaceFn().hslToRgb)),
3067
+ includes: () => ((common_namespaceFn().includes)),
3068
+ isBlockEmpty: () => ((common_namespaceFn().isBlockEmpty)),
3069
+ isConvoSeen: () => ((common_namespaceFn().isConvoSeen)),
3070
+ isEmail: () => ((common_namespaceFn().isEmail)),
3071
+ isEmptyBlock: () => ((common_namespaceFn().isEmptyBlock)),
3072
+ isEmptyMessage: () => ((common_namespaceFn().isEmptyMessage)),
3073
+ isNumber: () => ((common_namespaceFn().isNumber)),
3074
+ isPhone: () => ((common_namespaceFn().isPhone)),
3075
+ isURL: () => ((common_namespaceFn().isURL)),
3076
+ isUserBanned: () => ((common_namespaceFn().isUserBanned)),
3077
+ js2css: () => ((common_namespaceFn().js2css)),
3078
+ last: () => ((common_namespaceFn().last)),
3079
+ map: () => ((common_namespaceFn().map)),
3080
+ merge: () => ((common_namespaceFn().merge)),
3081
+ noop: () => ((common_namespaceFn().noop)),
3082
+ norm: () => ((common_namespaceFn().norm)),
3083
+ offsetToMin: () => ((common_namespaceFn().offsetToMin)),
3084
+ orderBy: () => ((common_namespaceFn().orderBy)),
3085
+ orderByF: () => ((common_namespaceFn().orderByF)),
3086
+ parseJSON: () => ((common_namespaceFn().parseJSON)),
3087
+ pipeExtracts: () => ((common_namespaceFn().pipeExtracts)),
3088
+ preloadImg: () => ((common_namespaceFn().preloadImg)),
3089
+ preloadWebfonts: () => ((common_namespaceFn().preloadWebfonts)),
3090
+ randomString: () => ((common_namespaceFn().randomString)),
3091
+ replaceAll: () => ((common_namespaceFn().replaceAll)),
3092
+ replaceCssVariable: () => ((common_namespaceFn().replaceCssVariable)),
3093
+ replaceCssVariablePlugin: () => ((common_namespaceFn().replaceCssVariablePlugin)),
3094
+ requestAnimationFrame: () => ((common_namespaceFn().requestAnimationFrame)),
3095
+ rgbToHsl: () => ((common_namespaceFn().rgbToHsl)),
3096
+ sameDay: () => ((common_namespaceFn().sameDay)),
3097
+ scrollIntoViewIfNeeded: () => ((common_namespaceFn().scrollIntoViewIfNeeded)),
3098
+ setCss: () => ((common_namespaceFn().setCss)),
3099
+ setInterval: () => ((common_namespaceFn().setInterval)),
3100
+ setTimeout: () => ((common_namespaceFn().setTimeout)),
3101
+ setUserAttr: () => ((common_namespaceFn().setUserAttr)),
3102
+ shortTime: () => ((common_namespaceFn().shortTime)),
3103
+ size: () => ((common_namespaceFn().size)),
3104
+ sleep: () => ((common_namespaceFn().sleep)),
3105
+ startsWith: () => ((common_namespaceFn().startsWith)),
3106
+ stringify: () => ((common_namespaceFn().stringify)),
3107
+ throttle: () => ((common_namespaceFn().throttle)),
3108
+ tokenize: () => ((common_namespaceFn().tokenize)),
3109
+ trim: () => ((common_namespaceFn().trim)),
3110
+ trimStart: () => ((common_namespaceFn().trimStart)),
3111
+ unicodeToAscii: () => ((common_namespaceFn().unicodeToAscii)),
3112
+ unixSec: () => ((common_namespaceFn().unixSec)),
3113
+ usersOfConvo: () => ((common_namespaceFn().usersOfConvo))
3114
+ });
2982
3115
 
2983
- "use strict";
3116
+ // MODULE: ./src/util/gate.js
3117
+ var gate_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, __webpack_exports__) {
2984
3118
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
2985
3119
  /* harmony export */ A: () => (/* binding */ Gate)
2986
3120
  /* harmony export */ });
@@ -3015,132 +3149,10 @@ class Gate {
3015
3149
  });
3016
3150
  }
3017
3151
  }
3018
-
3019
- /***/ },
3020
-
3021
- /***/ 8150
3022
- (__unused_webpack_module, __webpack_exports__, __webpack_require__) {
3023
-
3024
- "use strict";
3025
-
3026
- // EXPORTS
3027
- __webpack_require__.d(__webpack_exports__, {
3028
- A: () => (/* binding */ util)
3029
- });
3030
-
3031
- // NAMESPACE OBJECT: ./src/util/campaign.js
3032
- var campaign_namespaceObject = {};
3033
- __webpack_require__.r(campaign_namespaceObject);
3034
- __webpack_require__.d(campaign_namespaceObject, {
3035
- trackAreaClicked: () => (trackAreaClicked),
3036
- trackExitIntent: () => (trackExitIntent),
3037
- trackInactivity: () => (trackInactivity),
3038
- trackScrollingPercentage: () => (trackScrollingPercentage),
3039
- trackTimeOnPage: () => (trackTimeOnPage)
3040
3152
  });
3041
3153
 
3042
- // EXTERNAL MODULE: ./src/util/common.js
3043
- var common = __webpack_require__(9917);
3044
- ;// ./src/util/campaign.js
3045
- var campaign_common = __webpack_require__(9917);
3046
- function trackExitIntent(cb) {
3047
- let handler = e => {
3048
- if (e.clientY > 10) return;
3049
- if (cb) cb();
3050
- document.removeEventListener('mouseout', handler);
3051
- };
3052
- document.addEventListener('mouseout', handler);
3053
- }
3054
- function trackScrollingPercentage(percent, cb) {
3055
- let handleScroll = e => {
3056
- let scrollTop = e.srcElement.scrollingElement ? e.srcElement.scrollingElement.scrollTop : e.srcElement.scrollTop;
3057
- let scrollHeight = e.srcElement.scrollingElement ? e.srcElement.scrollingElement.scrollHeight : e.srcElement.scrollHeight;
3058
- if (scrollTop > 0 && scrollHeight > 0 && (scrollTop + window.innerHeight) / scrollHeight >= percent) {
3059
- if (cb) cb();
3060
- window.removeEventListener('scroll', handleScroll, false);
3061
- }
3062
- };
3063
- window.addEventListener('scroll', handleScroll, false);
3064
- }
3065
- function trackAreaClicked(selector, cb) {
3066
- if (!selector) return;
3067
- selector = selector || '';
3068
- campaign_common.map(selector.split('\n'), selector => {
3069
- selector = campaign_common.trim(selector);
3070
- if (!selector) return;
3071
- on('click', selector, cb);
3072
- });
3073
- }
3074
- function trackInactivity(seconds = 0, cb) {
3075
- let events = ['scroll', 'keyup', 'keydown', 'mousemove', 'mousewheel', 'mouseenter', 'mouseover', 'mousedown', 'touchstart', 'touchmove', 'touchenter'];
3076
- let inactiveSeconds = 0;
3077
- let resetTime = () => {
3078
- inactiveSeconds = 0;
3079
- };
3080
- let timer = campaign_common.setInterval(() => {
3081
- inactiveSeconds++;
3082
- if (inactiveSeconds < seconds) return;
3083
- if (cb) cb();
3084
- for (let ev of events) {
3085
- document.removeEventListener(ev, resetTime, false);
3086
- }
3087
- campaign_common.clearInterval(timer);
3088
- }, 1000);
3089
- for (let ev of events) {
3090
- document.addEventListener(ev, resetTime, false);
3091
- }
3092
- }
3093
- let _pageLoaded = campaign_common.Date.now();
3094
- function trackTimeOnPage(seconds = 0, cb) {
3095
- if (seconds < 1) {
3096
- return campaign_common.setTimeout(function () {
3097
- cb(seconds);
3098
- }, 100);
3099
- }
3100
- let timer = campaign_common.setInterval(() => {
3101
- let timeOnPage = (campaign_common.Date.now() - _pageLoaded) / 1000;
3102
- if (timeOnPage < seconds) return;
3103
- if (cb) cb(timeOnPage);
3104
- campaign_common.clearInterval(timer);
3105
- }, 200);
3106
- }
3107
- function on(eventName, selector, fn) {
3108
- document.addEventListener(eventName, function (event) {
3109
- let possibleTargets = document.querySelectorAll(selector);
3110
- let target = event.target;
3111
- for (let i = 0, l = possibleTargets.length; i < l; i++) {
3112
- let el = target;
3113
- let p = possibleTargets[i];
3114
- while (el && el !== document) {
3115
- if (el === p) {
3116
- return fn.call(p, event);
3117
- }
3118
- el = el.parentNode;
3119
- }
3120
- }
3121
- });
3122
- }
3123
- ;// ./src/util/index.js
3124
- var sb = {};
3125
-
3126
- sb = Object.assign(sb, common);
3127
- sb.Gate = (__webpack_require__(1139)/* ["default"] */ .A);
3128
- sb.Mutex = (__webpack_require__(5369)/* ["default"] */ .A);
3129
- var op = __webpack_require__(3259);
3130
- sb.get = op.get;
3131
- sb.set = op.set;
3132
- sb.take = op.take;
3133
- sb.Pubsub = (__webpack_require__(6463)/* ["default"] */ .A);
3134
-
3135
- sb = Object.assign(sb, campaign_namespaceObject);
3136
- /* harmony default export */ const util = (sb);
3137
-
3138
- /***/ },
3139
-
3140
- /***/ 5369
3141
- (__unused_webpack_module, __webpack_exports__, __webpack_require__) {
3142
-
3143
- "use strict";
3154
+ // MODULE: ./src/util/mutex.js
3155
+ var mutex_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, __webpack_exports__) {
3144
3156
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
3145
3157
  /* harmony export */ A: () => (/* binding */ Mutex)
3146
3158
  /* harmony export */ });
@@ -3168,13 +3180,10 @@ class Mutex {
3168
3180
  this._check();
3169
3181
  }
3170
3182
  }
3183
+ });
3171
3184
 
3172
- /***/ },
3173
-
3174
- /***/ 3259
3175
- (__unused_webpack_module, __webpack_exports__, __webpack_require__) {
3176
-
3177
- "use strict";
3185
+ // MODULE: ./src/util/op.js
3186
+ var op_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, __webpack_exports__) {
3178
3187
  __webpack_require__.r(__webpack_exports__);
3179
3188
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
3180
3189
  /* harmony export */ get: () => (/* binding */ get),
@@ -3237,20 +3246,17 @@ function take(arr, n = 1) {
3237
3246
  let end = Math.min(n, len);
3238
3247
  return arr.slice(0, end);
3239
3248
  }
3249
+ });
3240
3250
 
3241
- /***/ },
3242
-
3243
- /***/ 6463
3244
- (__unused_webpack_module, __webpack_exports__, __webpack_require__) {
3245
-
3246
- "use strict";
3251
+ // MODULE: ./src/util/pubsub.js
3252
+ var pubsub_namespaceFn = /*#__PURE__*/__webpack_require__.cw(function(module, __webpack_exports__) {
3247
3253
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
3248
3254
  /* harmony export */ A: () => (/* binding */ Pubsub)
3249
3255
  /* harmony export */ });
3250
3256
  var {
3251
3257
  filter,
3252
3258
  map
3253
- } = __webpack_require__(9917);
3259
+ } = common_namespaceFn();
3254
3260
  class Pubsub {
3255
3261
  constructor() {
3256
3262
  this.listeners = {};
@@ -3269,6 +3275,115 @@ class Pubsub {
3269
3275
  });
3270
3276
  }
3271
3277
  }
3278
+ });
3279
+
3280
+ // NAMESPACE OBJECT (decoupled): ./src/util/campaign.js
3281
+ var campaign_namespaceObject = {};
3282
+ __webpack_require__.r(campaign_namespaceObject);
3283
+ __webpack_require__.d(campaign_namespaceObject, {
3284
+ trackAreaClicked: () => (trackAreaClicked),
3285
+ trackExitIntent: () => (trackExitIntent),
3286
+ trackInactivity: () => (trackInactivity),
3287
+ trackScrollingPercentage: () => (trackScrollingPercentage),
3288
+ trackTimeOnPage: () => (trackTimeOnPage)
3289
+ });
3290
+
3291
+ ;// ./src/util/common.js
3292
+ common_namespaceFn();
3293
+
3294
+ ;// ./src/util/campaign.js
3295
+ var common = common_namespaceFn();
3296
+ function trackExitIntent(cb) {
3297
+ let handler = e => {
3298
+ if (e.clientY > 10) return;
3299
+ if (cb) cb();
3300
+ document.removeEventListener('mouseout', handler);
3301
+ };
3302
+ document.addEventListener('mouseout', handler);
3303
+ }
3304
+ function trackScrollingPercentage(percent, cb) {
3305
+ let handleScroll = e => {
3306
+ let scrollTop = e.srcElement.scrollingElement ? e.srcElement.scrollingElement.scrollTop : e.srcElement.scrollTop;
3307
+ let scrollHeight = e.srcElement.scrollingElement ? e.srcElement.scrollingElement.scrollHeight : e.srcElement.scrollHeight;
3308
+ if (scrollTop > 0 && scrollHeight > 0 && (scrollTop + window.innerHeight) / scrollHeight >= percent) {
3309
+ if (cb) cb();
3310
+ window.removeEventListener('scroll', handleScroll, false);
3311
+ }
3312
+ };
3313
+ window.addEventListener('scroll', handleScroll, false);
3314
+ }
3315
+ function trackAreaClicked(selector, cb) {
3316
+ if (!selector) return;
3317
+ selector = selector || '';
3318
+ common.map(selector.split('\n'), selector => {
3319
+ selector = common.trim(selector);
3320
+ if (!selector) return;
3321
+ on('click', selector, cb);
3322
+ });
3323
+ }
3324
+ function trackInactivity(seconds = 0, cb) {
3325
+ let events = ['scroll', 'keyup', 'keydown', 'mousemove', 'mousewheel', 'mouseenter', 'mouseover', 'mousedown', 'touchstart', 'touchmove', 'touchenter'];
3326
+ let inactiveSeconds = 0;
3327
+ let resetTime = () => {
3328
+ inactiveSeconds = 0;
3329
+ };
3330
+ let timer = common.setInterval(() => {
3331
+ inactiveSeconds++;
3332
+ if (inactiveSeconds < seconds) return;
3333
+ if (cb) cb();
3334
+ for (let ev of events) {
3335
+ document.removeEventListener(ev, resetTime, false);
3336
+ }
3337
+ common.clearInterval(timer);
3338
+ }, 1000);
3339
+ for (let ev of events) {
3340
+ document.addEventListener(ev, resetTime, false);
3341
+ }
3342
+ }
3343
+ let _pageLoaded = common.Date.now();
3344
+ function trackTimeOnPage(seconds = 0, cb) {
3345
+ if (seconds < 1) {
3346
+ return common.setTimeout(function () {
3347
+ cb(seconds);
3348
+ }, 100);
3349
+ }
3350
+ let timer = common.setInterval(() => {
3351
+ let timeOnPage = (common.Date.now() - _pageLoaded) / 1000;
3352
+ if (timeOnPage < seconds) return;
3353
+ if (cb) cb(timeOnPage);
3354
+ common.clearInterval(timer);
3355
+ }, 200);
3356
+ }
3357
+ function on(eventName, selector, fn) {
3358
+ document.addEventListener(eventName, function (event) {
3359
+ let possibleTargets = document.querySelectorAll(selector);
3360
+ let target = event.target;
3361
+ for (let i = 0, l = possibleTargets.length; i < l; i++) {
3362
+ let el = target;
3363
+ let p = possibleTargets[i];
3364
+ while (el && el !== document) {
3365
+ if (el === p) {
3366
+ return fn.call(p, event);
3367
+ }
3368
+ el = el.parentNode;
3369
+ }
3370
+ }
3371
+ });
3372
+ }
3373
+ ;// ./src/util/index.js
3374
+ var sb = {};
3375
+
3376
+ sb = Object.assign(sb, common_namespaceObject);
3377
+ sb.Gate = (gate_namespaceFn().A);
3378
+ sb.Mutex = (mutex_namespaceFn().A);
3379
+ var util_op = op_namespaceFn();
3380
+ sb.get = util_op.get;
3381
+ sb.set = util_op.set;
3382
+ sb.take = util_op.take;
3383
+ sb.Pubsub = (pubsub_namespaceFn().A);
3384
+
3385
+ sb = Object.assign(sb, campaign_namespaceObject);
3386
+ /* harmony default export */ const util = (sb);
3272
3387
 
3273
3388
  /***/ },
3274
3389
 
@@ -3464,9 +3579,6 @@ class Pubsub {
3464
3579
 
3465
3580
  "use strict";
3466
3581
  __webpack_require__.r(__webpack_exports__);
3467
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
3468
- /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
3469
- /* harmony export */ });
3470
3582
  /* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6314);
3471
3583
  /* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_0__);
3472
3584
  /* harmony import */ var _node_modules_css_loader_dist_runtime_getUrl_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(4417);
@@ -3576,6 +3688,10 @@ ___CSS_LOADER_EXPORT___.push([module.id, "#sbz92 * {\n all: unset !important;\n
3576
3688
  // Exports
3577
3689
  /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);
3578
3690
 
3691
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, [
3692
+ /* harmony export */ "default", 0, /* export default binding */ __WEBPACK_DEFAULT_EXPORT__
3693
+ /* harmony export */ ]);
3694
+
3579
3695
 
3580
3696
  /***/ },
3581
3697
 
@@ -3987,17 +4103,17 @@ 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
3987
4103
  /******/ });
3988
4104
  /************************************************************************/
3989
4105
  /******/ // The module cache
3990
- /******/ var __webpack_module_cache__ = {};
4106
+ /******/ const __webpack_module_cache__ = {};
3991
4107
  /******/
3992
4108
  /******/ // The require function
3993
4109
  /******/ function __webpack_require__(moduleId) {
3994
4110
  /******/ // Check if module is in cache
3995
- /******/ var cachedModule = __webpack_module_cache__[moduleId];
4111
+ /******/ const cachedModule = __webpack_module_cache__[moduleId];
3996
4112
  /******/ if (cachedModule !== undefined) {
3997
4113
  /******/ return cachedModule.exports;
3998
4114
  /******/ }
3999
4115
  /******/ // Create a new module (and put it into the cache)
4000
- /******/ var module = __webpack_module_cache__[moduleId] = {
4116
+ /******/ const module = __webpack_module_cache__[moduleId] = {
4001
4117
  /******/ id: moduleId,
4002
4118
  /******/ // no module.loaded needed
4003
4119
  /******/ exports: {}
@@ -4015,68 +4131,112 @@ 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
4015
4131
  /******/
4016
4132
  /************************************************************************/
4017
4133
  /******/ /* webpack/runtime/compat get default export */
4134
+ /******/ // getDefaultExport function for compatibility with non-harmony modules
4135
+ /******/ __webpack_require__.n = (module) => {
4136
+ /******/ const getter = module && module.__esModule ?
4137
+ /******/ () => (module['default']) :
4138
+ /******/ () => (module);
4139
+ /******/ __webpack_require__.d(getter, { a: getter });
4140
+ /******/ return getter;
4141
+ /******/ };
4142
+ /******/
4143
+ /******/ /* webpack/runtime/concatenation wrap */
4144
+ /******/ // wrap a concatenated module body as a lazy, memoized accessor; mod is
4145
+ /******/ // set before the body runs so re-entrant calls (require cycles) observe
4146
+ /******/ // the partial exports like Node.js
4147
+ /******/ __webpack_require__.cw = (body) => {
4148
+ /******/ var mod;
4149
+ /******/ return () => {
4150
+ /******/ if (body) {
4151
+ /******/ var fn = body;
4152
+ /******/ body = 0;
4153
+ /******/ mod = { exports: {} };
4154
+ /******/ fn.call(mod.exports, mod, mod.exports);
4155
+ /******/ }
4156
+ /******/ return mod.exports;
4157
+ /******/ };
4158
+ /******/ };
4159
+ /******/
4160
+ /******/ /* webpack/runtime/create fake namespace object */
4018
4161
  /******/ (() => {
4019
- /******/ // getDefaultExport function for compatibility with non-harmony modules
4020
- /******/ __webpack_require__.n = (module) => {
4021
- /******/ var getter = module && module.__esModule ?
4022
- /******/ () => (module['default']) :
4023
- /******/ () => (module);
4024
- /******/ __webpack_require__.d(getter, { a: getter });
4025
- /******/ return getter;
4162
+ /******/ const getProto = Object.getPrototypeOf;
4163
+ /******/ let leafPrototypes;
4164
+ /******/ // create a fake namespace object
4165
+ /******/ // mode & 1: value is a module id, require it
4166
+ /******/ // mode & 2: merge all properties of value into the ns
4167
+ /******/ // mode & 4: return value when already ns object
4168
+ /******/ // mode & 16: return value when it's Promise-like
4169
+ /******/ // mode & 8|1: behave like require
4170
+ /******/ __webpack_require__.t = function(value, mode) {
4171
+ /******/ if(mode & 1) value = this(value);
4172
+ /******/ if(mode & 8) return value;
4173
+ /******/ if(typeof value === 'object' && value) {
4174
+ /******/ if((mode & 4) && value.__esModule) return value;
4175
+ /******/ if((mode & 16) && typeof value.then === 'function') return value;
4176
+ /******/ }
4177
+ /******/ const ns = Object.create(null);
4178
+ /******/ __webpack_require__.r(ns);
4179
+ /******/ const def = {};
4180
+ /******/ leafPrototypes = leafPrototypes || [null, getProto({}), getProto([]), getProto(getProto)];
4181
+ /******/ for(var current = mode & 2 && value; (typeof current == 'object' || typeof current == 'function') && !~leafPrototypes.indexOf(current); current = getProto(current)) {
4182
+ /******/ Object.getOwnPropertyNames(current).forEach((key) => (def[key] = () => (value[key])));
4183
+ /******/ }
4184
+ /******/ def['default'] = () => (value);
4185
+ /******/ __webpack_require__.d(ns, def);
4186
+ /******/ return ns;
4026
4187
  /******/ };
4027
4188
  /******/ })();
4028
4189
  /******/
4029
4190
  /******/ /* webpack/runtime/define property getters */
4030
- /******/ (() => {
4031
- /******/ // define getter functions for harmony exports
4032
- /******/ __webpack_require__.d = (exports, definition) => {
4191
+ /******/ // define getter/value functions for harmony exports
4192
+ /******/ __webpack_require__.d = (exports, definition) => {
4193
+ /******/ if(Array.isArray(definition)) {
4194
+ /******/ var i = 0;
4195
+ /******/ while(i < definition.length) {
4196
+ /******/ var key = definition[i++];
4197
+ /******/ var binding = definition[i++];
4198
+ /******/ var descriptor = binding === 0 ? { enumerable: true, value: definition[i++] } : { enumerable: true, get: binding };
4199
+ /******/ if(!__webpack_require__.o(exports, key)) Object.defineProperty(exports, key, descriptor);
4200
+ /******/ }
4201
+ /******/ } else {
4033
4202
  /******/ for(var key in definition) {
4034
4203
  /******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
4035
4204
  /******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
4036
4205
  /******/ }
4037
4206
  /******/ }
4038
- /******/ };
4039
- /******/ })();
4207
+ /******/ }
4208
+ /******/ };
4040
4209
  /******/
4041
4210
  /******/ /* webpack/runtime/ensure chunk */
4042
- /******/ (() => {
4043
- /******/ __webpack_require__.f = {};
4044
- /******/ // This file contains only the entry chunk.
4045
- /******/ // The chunk loading function for additional chunks
4046
- /******/ __webpack_require__.e = (chunkId) => {
4047
- /******/ return Promise.all(Object.keys(__webpack_require__.f).reduce((promises, key) => {
4048
- /******/ __webpack_require__.f[key](chunkId, promises);
4049
- /******/ return promises;
4050
- /******/ }, []));
4051
- /******/ };
4052
- /******/ })();
4211
+ /******/ __webpack_require__.f = {};
4212
+ /******/ // This file contains only the entry chunk.
4213
+ /******/ // The chunk loading function for additional chunks
4214
+ /******/ __webpack_require__.e = (chunkId) => {
4215
+ /******/ return Promise.all(Object.keys(__webpack_require__.f).reduce((promises, key) => {
4216
+ /******/ __webpack_require__.f[key](chunkId, promises);
4217
+ /******/ return promises;
4218
+ /******/ }, []));
4219
+ /******/ };
4053
4220
  /******/
4054
4221
  /******/ /* webpack/runtime/get javascript chunk filename */
4055
- /******/ (() => {
4056
- /******/ // This function allow to reference async chunks
4057
- /******/ __webpack_require__.u = (chunkId) => {
4058
- /******/ // return url for filenames based on template
4059
- /******/ return "" + chunkId + ".js";
4060
- /******/ };
4061
- /******/ })();
4222
+ /******/ // This function allow to reference async chunks
4223
+ /******/ __webpack_require__.u = (chunkId) => (chunkId + ".js");
4062
4224
  /******/
4063
4225
  /******/ /* webpack/runtime/hasOwnProperty shorthand */
4064
- /******/ (() => {
4065
- /******/ __webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))
4066
- /******/ })();
4226
+ /******/ __webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop));
4067
4227
  /******/
4068
4228
  /******/ /* webpack/runtime/load script */
4069
4229
  /******/ (() => {
4070
- /******/ var inProgress = {};
4071
- /******/ var dataWebpackPrefix = "@subiz/widget-v4:";
4230
+ /******/ const inProgress = {};
4231
+ /******/ const dataWebpackPrefix = "@subiz/widget-v4:";
4072
4232
  /******/ // loadScript function to load a script via script tag
4073
4233
  /******/ __webpack_require__.l = (url, done, key, chunkId) => {
4074
4234
  /******/ if(inProgress[url]) { inProgress[url].push(done); return; }
4075
- /******/ var script, needAttach;
4235
+ /******/ let script, needAttach;
4076
4236
  /******/ if(key !== undefined) {
4077
- /******/ var scripts = document.getElementsByTagName("script");
4237
+ /******/ const scripts = document.getElementsByTagName("script");
4078
4238
  /******/ for(var i = 0; i < scripts.length; i++) {
4079
- /******/ var s = scripts[i];
4239
+ /******/ const s = scripts[i];
4080
4240
  /******/ if(s.getAttribute("src") == url || s.getAttribute("data-webpack") == dataWebpackPrefix + key) { script = s; break; }
4081
4241
  /******/ }
4082
4242
  /******/ }
@@ -4093,17 +4253,17 @@ 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
4093
4253
  /******/ script.src = url;
4094
4254
  /******/ }
4095
4255
  /******/ inProgress[url] = [done];
4096
- /******/ var onScriptComplete = (prev, event) => {
4256
+ /******/ const onScriptComplete = (prev, event) => {
4097
4257
  /******/ // avoid mem leaks in IE.
4098
4258
  /******/ script.onerror = script.onload = null;
4099
4259
  /******/ clearTimeout(timeout);
4100
- /******/ var doneFns = inProgress[url];
4260
+ /******/ const doneFns = inProgress[url];
4101
4261
  /******/ delete inProgress[url];
4102
- /******/ script.parentNode && script.parentNode.removeChild(script);
4103
- /******/ doneFns && doneFns.forEach((fn) => (fn(event)));
4262
+ /******/ script.parentNode?.removeChild(script);
4263
+ /******/ doneFns?.forEach((fn) => (fn(event)));
4104
4264
  /******/ if(prev) return prev(event);
4105
4265
  /******/ }
4106
- /******/ var timeout = setTimeout(onScriptComplete.bind(null, undefined, { type: 'timeout', target: script }), 120000);
4266
+ /******/ const timeout = setTimeout(onScriptComplete.bind(null, undefined, { type: 'timeout', target: script }), 120000);
4107
4267
  /******/ script.onerror = onScriptComplete.bind(null, script.onerror);
4108
4268
  /******/ script.onload = onScriptComplete.bind(null, script.onload);
4109
4269
  /******/ needAttach && document.head.appendChild(script);
@@ -4111,20 +4271,23 @@ 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
4111
4271
  /******/ })();
4112
4272
  /******/
4113
4273
  /******/ /* webpack/runtime/make namespace object */
4114
- /******/ (() => {
4115
- /******/ // define __esModule on exports
4116
- /******/ __webpack_require__.r = (exports) => {
4117
- /******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
4118
- /******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4119
- /******/ }
4120
- /******/ Object.defineProperty(exports, '__esModule', { value: true });
4121
- /******/ };
4122
- /******/ })();
4274
+ /******/ // define __esModule on exports
4275
+ /******/ __webpack_require__.r = (exports) => {
4276
+ /******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4277
+ /******/ Object.defineProperty(exports, '__esModule', { value: true });
4278
+ /******/ };
4279
+ /******/
4280
+ /******/ /* webpack/runtime/set anonymous default export name */
4281
+ /******/ // set .name for anonymous default exports per ES spec
4282
+ /******/ // skipped when the property is non-configurable (pre-ES2015 engines),
4283
+ /******/ // where Object.defineProperty would throw
4284
+ /******/ __webpack_require__.dn = (x) => {
4285
+ /******/ var descriptor = Object.getOwnPropertyDescriptor(x, "name");
4286
+ /******/ if (!descriptor || (!descriptor.writable && descriptor.configurable)) Object.defineProperty(x, "name", { value: "default", configurable: true });
4287
+ /******/ };
4123
4288
  /******/
4124
4289
  /******/ /* webpack/runtime/publicPath */
4125
- /******/ (() => {
4126
- /******/ __webpack_require__.p = "./";
4127
- /******/ })();
4290
+ /******/ __webpack_require__.p = "./";
4128
4291
  /******/
4129
4292
  /******/ /* webpack/runtime/jsonp chunk loading */
4130
4293
  /******/ (() => {
@@ -4133,13 +4296,13 @@ 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
4133
4296
  /******/ // object to store loaded and loading chunks
4134
4297
  /******/ // undefined = chunk not loaded, null = chunk preloaded/prefetched
4135
4298
  /******/ // [resolve, reject, Promise] = chunk loading, 0 = chunk loaded
4136
- /******/ var installedChunks = {
4299
+ /******/ const installedChunks = {
4137
4300
  /******/ 580: 0
4138
4301
  /******/ };
4139
4302
  /******/
4140
4303
  /******/ __webpack_require__.f.j = (chunkId, promises) => {
4141
4304
  /******/ // JSONP chunk loading for javascript
4142
- /******/ var installedChunkData = __webpack_require__.o(installedChunks, chunkId) ? installedChunks[chunkId] : undefined;
4305
+ /******/ let installedChunkData = __webpack_require__.o(installedChunks, chunkId) ? installedChunks[chunkId] : undefined;
4143
4306
  /******/ if(installedChunkData !== 0) { // 0 means "already installed".
4144
4307
  /******/
4145
4308
  /******/ // a Promise means "currently loading".
@@ -4148,29 +4311,28 @@ 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
4148
4311
  /******/ } else {
4149
4312
  /******/ if(true) { // all chunks have JS
4150
4313
  /******/ // setup Promise in chunk cache
4151
- /******/ var promise = new Promise((resolve, reject) => (installedChunkData = installedChunks[chunkId] = [resolve, reject]));
4314
+ /******/ const promise = new Promise((resolve, reject) => (installedChunkData = installedChunks[chunkId] = [resolve, reject]));
4152
4315
  /******/ promises.push(installedChunkData[2] = promise);
4153
4316
  /******/
4154
- /******/ // start chunk loading
4155
- /******/ var url = __webpack_require__.p + __webpack_require__.u(chunkId);
4156
4317
  /******/ // create error before stack unwound to get useful stacktrace later
4157
- /******/ var error = new Error();
4158
- /******/ var loadingEnded = (event) => {
4318
+ /******/ const error = new Error();
4319
+ /******/ const loadingEnded = (event) => {
4159
4320
  /******/ if(__webpack_require__.o(installedChunks, chunkId)) {
4160
4321
  /******/ installedChunkData = installedChunks[chunkId];
4161
4322
  /******/ if(installedChunkData !== 0) installedChunks[chunkId] = undefined;
4162
4323
  /******/ if(installedChunkData) {
4163
- /******/ var errorType = event && (event.type === 'load' ? 'missing' : event.type);
4164
- /******/ var realSrc = event && event.target && event.target.src;
4324
+ /******/ const errorType = event && (event.type === 'load' ? 'missing' : event.type);
4325
+ /******/ const realSrc = event && event.target && event.target.src;
4165
4326
  /******/ error.message = 'Loading chunk ' + chunkId + ' failed.\n(' + errorType + ': ' + realSrc + ')';
4166
4327
  /******/ error.name = 'ChunkLoadError';
4167
4328
  /******/ error.type = errorType;
4168
4329
  /******/ error.request = realSrc;
4330
+ /******/ error.event = event;
4169
4331
  /******/ installedChunkData[1](error);
4170
4332
  /******/ }
4171
4333
  /******/ }
4172
4334
  /******/ };
4173
- /******/ __webpack_require__.l(url, loadingEnded, "chunk-" + chunkId, chunkId);
4335
+ /******/ __webpack_require__.l(__webpack_require__.p + __webpack_require__.u(chunkId), loadingEnded, "chunk-" + chunkId, chunkId);
4174
4336
  /******/ }
4175
4337
  /******/ }
4176
4338
  /******/ }
@@ -4187,8 +4349,8 @@ 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
4187
4349
  /******/ // no on chunks loaded
4188
4350
  /******/
4189
4351
  /******/ // install a JSONP callback for chunk loading
4190
- /******/ var webpackJsonpCallback = (parentChunkLoadingFunction, data) => {
4191
- /******/ var [chunkIds, moreModules, runtime] = data;
4352
+ /******/ const webpackJsonpCallback = (parentChunkLoadingFunction, data) => {
4353
+ /******/ let [chunkIds, moreModules, runtime] = data;
4192
4354
  /******/ // add "moreModules" to the modules object,
4193
4355
  /******/ // then flag all "chunkIds" as loaded and fire callback
4194
4356
  /******/ var moduleId, chunkId, i = 0;
@@ -4211,25 +4373,120 @@ 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
4211
4373
  /******/
4212
4374
  /******/ }
4213
4375
  /******/
4214
- /******/ var chunkLoadingGlobal = self["webpackChunk_subiz_widget_v4"] = self["webpackChunk_subiz_widget_v4"] || [];
4376
+ /******/ const chunkLoadingGlobal = self["webpackChunk_subiz_widget_v4"] = self["webpackChunk_subiz_widget_v4"] || [];
4215
4377
  /******/ chunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));
4216
4378
  /******/ chunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));
4217
4379
  /******/ })();
4218
4380
  /******/
4219
4381
  /************************************************************************/
4220
- var __webpack_exports__ = {};
4382
+ let __webpack_exports__ = {};
4221
4383
  // This entry needs to be wrapped in an IIFE because it needs to be in strict mode.
4222
4384
  (() => {
4223
4385
  "use strict";
4224
4386
 
4225
- // EXTERNAL MODULE: ./src/util/index.js + 1 modules
4226
- var util = __webpack_require__(8150);
4387
+ // EXTERNAL MODULE: ./node_modules/@subiz/ajax/src/ajax.js
4388
+ var ajax_namespaceFn = () => {
4389
+ return __webpack_require__(318);
4390
+ };
4391
+
4392
+ // EXTERNAL MODULE: ./node_modules/@subiz/flow/index.js
4393
+ var flow_namespaceFn = () => {
4394
+ return __webpack_require__(8193);
4395
+ };
4396
+
4397
+ // EXTERNAL MODULE: ./node_modules/@subiz/wsclient/realtime.js
4398
+ var realtime_namespaceFn = () => {
4399
+ return __webpack_require__(2839);
4400
+ };
4401
+
4402
+ // EXTERNAL MODULE: ./src/store/inmem_localstorage.js
4403
+ var inmem_localstorage_namespaceFn = () => {
4404
+ return __webpack_require__(450);
4405
+ };
4406
+
4407
+ // EXTERNAL MODULE: ./node_modules/cookie_js/dist/cookie.umd.js
4408
+ var cookie_umd_namespaceFn = () => {
4409
+ return __webpack_require__(5672);
4410
+ };
4411
+
4412
+ // EXTERNAL MODULE: ./assets/img/bubble_default.svg
4413
+ var bubble_default_namespaceFn = () => {
4414
+ return __webpack_require__(1108);
4415
+ };
4416
+
4417
+ // EXTERNAL MODULE: ./assets/img/convos_empty.svg
4418
+ var convos_empty_namespaceFn = () => {
4419
+ return __webpack_require__(1370);
4420
+ };
4421
+
4422
+ // EXTERNAL MODULE: ./assets/img/default.jpg
4423
+ var default_namespaceFn = () => {
4424
+ return __webpack_require__(2876);
4425
+ };
4426
+
4427
+ // EXTERNAL MODULE: ./assets/img/default_avatar.png
4428
+ var default_avatar_namespaceFn = () => {
4429
+ return __webpack_require__(2538);
4430
+ };
4431
+
4432
+ // EXTERNAL MODULE: ./assets/img/default_logo.svg
4433
+ var default_logo_namespaceFn = () => {
4434
+ return __webpack_require__(3763);
4435
+ };
4436
+
4437
+ // EXTERNAL MODULE: ./assets/img/done_gray.svg
4438
+ var done_gray_namespaceFn = () => {
4439
+ return __webpack_require__(9150);
4440
+ };
4441
+
4442
+ // EXTERNAL MODULE: ./assets/img/empty.svg
4443
+ var empty_namespaceFn = () => {
4444
+ return __webpack_require__(9419);
4445
+ };
4446
+
4447
+ // EXTERNAL MODULE: ./assets/img/external-link.svg
4448
+ var external_link_namespaceFn = () => {
4449
+ return __webpack_require__(3266);
4450
+ };
4451
+
4452
+ // EXTERNAL MODULE: ./assets/img/image_default.png
4453
+ var image_default_namespaceFn = () => {
4454
+ return __webpack_require__(3582);
4455
+ };
4456
+
4457
+ // EXTERNAL MODULE: ./assets/img/rating--average.svg
4458
+ var rating_average_namespaceFn = () => {
4459
+ return __webpack_require__(7134);
4460
+ };
4461
+
4462
+ // EXTERNAL MODULE: ./assets/img/rating--great.svg
4463
+ var rating_great_namespaceFn = () => {
4464
+ return __webpack_require__(940);
4465
+ };
4466
+
4467
+ // EXTERNAL MODULE: ./assets/img/rating--poor.svg
4468
+ var rating_poor_namespaceFn = () => {
4469
+ return __webpack_require__(9801);
4470
+ };
4471
+
4472
+ // EXTERNAL MODULE: ./assets/img/send.svg
4473
+ var send_namespaceFn = () => {
4474
+ return __webpack_require__(8506);
4475
+ };
4476
+
4477
+ // EXTERNAL MODULE: ./assets/img/subiz-mono.svg
4478
+ var subiz_mono_namespaceFn = () => {
4479
+ return __webpack_require__(9529);
4480
+ };
4481
+
4482
+ // EXTERNAL MODULE: ./src/util/index.js + 6 modules
4483
+ var util = __webpack_require__(8026);
4227
4484
  ;// ./src/store/api.js
4228
4485
  function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
4229
4486
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
4230
4487
  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); }
4231
-
4232
- const ajax = __webpack_require__(318);
4488
+ ;
4489
+ const api_ajax = ajax_namespaceFn();
4233
4490
  function jsonifyTextPlain(param, done) {
4234
4491
  let req = param.request;
4235
4492
  if (req.content_type === 'text/plain' && req.body !== undefined) req.body = util/* default */.A.stringify(req.body);
@@ -4268,7 +4525,7 @@ let trackResponseFn = (param, done) => {
4268
4525
  _defineProperty(this, "sendBugReport", str => this.bugReq.post('/bugs', str));
4269
4526
  _defineProperty(this, "listConversations", _ => this.apireq.addQuery('user_id', this.uid).addQuery('integration_id', `${this.accid}.subizv4.subikon`).get(`/accounts/${this.accid}/conversations`));
4270
4527
  _defineProperty(this, "listMessages", (cid, limit, start_id) => this.apireq.addQuery('limit', limit).addQuery('start_id', start_id).get(`/accounts/${this.accid}/conversations/${cid}/messages`));
4271
- _defineProperty(this, "ajax", ajax);
4528
+ _defineProperty(this, "ajax", api_ajax);
4272
4529
  _defineProperty(this, "start", (extraData, tpchannel, tpsource, tpid) => {
4273
4530
  let data = Object.assign({}, extraData);
4274
4531
  if (!data.touchpoint) data.touchpoint = {};
@@ -4314,7 +4571,7 @@ let trackResponseFn = (param, done) => {
4314
4571
  name: name,
4315
4572
  presign: true,
4316
4573
  size: file.size,
4317
- type: file.type
4574
+ 'content-type': file.type
4318
4575
  }).post('/files');
4319
4576
  if (error) return {
4320
4577
  body,
@@ -4325,7 +4582,7 @@ let trackResponseFn = (param, done) => {
4325
4582
  let err = await new Promise(resolve => {
4326
4583
  const xhr = new util/* default */.A.XMLHttpRequest();
4327
4584
  xhr.open('PUT', signedurl, true);
4328
- xhr.setRequestHeader('Content-Type', file.mimetype);
4585
+ xhr.setRequestHeader('Content-Type', file.type || '');
4329
4586
  xhr.onload = function () {
4330
4587
  if (xhr.status === 200) {
4331
4588
  resolve();
@@ -4358,7 +4615,7 @@ let trackResponseFn = (param, done) => {
4358
4615
  var {
4359
4616
  body,
4360
4617
  error
4361
- } = await ajax.setBaseUrl('https://api5.subiz.com.vn/4.1').withCredentials(true).setQuery({
4618
+ } = await api_ajax.setBaseUrl('https://api5.subiz.com.vn/4.1').withCredentials(true).setQuery({
4362
4619
  'account-id': this.accid,
4363
4620
  description: 'upload\n user-client: web-widget',
4364
4621
  name: file.name.replace(/\s+/g, '_'),
@@ -4387,7 +4644,7 @@ let trackResponseFn = (param, done) => {
4387
4644
  url: util/* default */.A.get(body, 'file.url')
4388
4645
  };
4389
4646
  });
4390
- _defineProperty(this, "time", _ => ajax.setBaseUrl(this.ApiURL).withCredentials(true).setParser('json').get('/time'));
4647
+ _defineProperty(this, "time", _ => api_ajax.setBaseUrl(this.ApiURL).withCredentials(true).setParser('json').get('/time'));
4391
4648
  _defineProperty(this, "updateUser", data => this.apireq.post(`/accounts/${this.accid}/users/${this.uid}`, data));
4392
4649
  _defineProperty(this, "getUser", _ => this.apireq.get(`/accounts/${this.accid}/users/${this.uid}`));
4393
4650
  _defineProperty(this, "getAccountSetting", async p => {
@@ -4418,7 +4675,7 @@ let trackResponseFn = (param, done) => {
4418
4675
  });
4419
4676
  _defineProperty(this, "sendImpression", impression => this.apireq.post(`/accounts/${this.accid}/campaigns/${impression.campaign_id}/impressions`, impression));
4420
4677
  _defineProperty(this, "sendConversion", conversion => this.apireq.post(`/accounts/${this.accid}/campaigns/${conversion.campaign_id}/conversions`, conversion));
4421
- _defineProperty(this, "lookupOrder", key => ajax.setBaseUrl(this.ApiURL).setContentType('text/plain').beforeHook(jsonifyTextPlain).setParser('json').addQuery('x-signed-key', key).get(`/orders/123`));
4678
+ _defineProperty(this, "lookupOrder", key => api_ajax.setBaseUrl(this.ApiURL).setContentType('text/plain').beforeHook(jsonifyTextPlain).setParser('json').addQuery('x-signed-key', key).get(`/orders/123`));
4422
4679
  _defineProperty(this, "getOrder", id => this.apireq.get(`/accounts/${this.accid}/orders/` + id));
4423
4680
  _defineProperty(this, "updateOrder", order => this.apireq.post(`/accounts/${this.accid}/orders/` + order.id, order));
4424
4681
  _defineProperty(this, "fetchShippingAddresses", () => this.apireq.get(`/accounts/${this.accid}/users/${this.uid}/shipping-addresses`));
@@ -4435,9 +4692,9 @@ let trackResponseFn = (param, done) => {
4435
4692
  this.refreshLock = new util/* default */.A.Mutex();
4436
4693
  this.FileURL = FileURL;
4437
4694
  this.ApiURL = ApiURL;
4438
- this.bugReq = ajax.setBaseUrl('https://api5.subiz.com.vn/4.1').setContentType('text/plain');
4439
- this.api41 = ajax.setBaseUrl('https://api.sbz.vn/4.1').withCredentials(true).setContentType('text/plain').beforeHook(jsonifyTextPlain).afterHook(trackResponseFn).beforeHook(trackRequestFn).setParser('json');
4440
- this.apireq = ajax.setBaseUrl(ApiURL).withCredentials(true).addQuery('v', '6').setContentType('text/plain').beforeHook(jsonifyTextPlain).afterHook(trackResponseFn).setParser('json').beforeHook(trackRequestFn).beforeHook((param, done) => {
4695
+ this.bugReq = api_ajax.setBaseUrl('https://api5.subiz.com.vn/4.1').setContentType('text/plain');
4696
+ this.api41 = api_ajax.setBaseUrl('https://api.sbz.vn/4.1').withCredentials(true).setContentType('text/plain').beforeHook(jsonifyTextPlain).afterHook(trackResponseFn).beforeHook(trackRequestFn).setParser('json');
4697
+ this.apireq = api_ajax.setBaseUrl(ApiURL).withCredentials(true).addQuery('v', '6').setContentType('text/plain').beforeHook(jsonifyTextPlain).afterHook(trackResponseFn).setParser('json').beforeHook(trackRequestFn).beforeHook((param, done) => {
4441
4698
  if (this.token_generator) {
4442
4699
  let user_id = this.profile_id;
4443
4700
  this.token_generator().then(token => {
@@ -4464,7 +4721,7 @@ let trackResponseFn = (param, done) => {
4464
4721
  if (obj.ref) {
4465
4722
  let outuser;
4466
4723
  for (let i = 0; true; i++) {
4467
- outuser = await ajax.setBaseUrl(this.ApiURL).withCredentials(true).afterHook(trackResponseFn).beforeHook(trackRequestFn).addQuery('v', '6').addQuery('x-user-ref', this.ref).setParser('json').get(`/accounts/${this.accid}/users/${this.ref}`);
4724
+ outuser = await api_ajax.setBaseUrl(this.ApiURL).withCredentials(true).afterHook(trackResponseFn).beforeHook(trackRequestFn).addQuery('v', '6').addQuery('x-user-ref', this.ref).setParser('json').get(`/accounts/${this.accid}/users/${this.ref}`);
4468
4725
  if (util/* default */.A.get(outuser, 'body.error.code', '').indexOf('locked_account') != -1) break;
4469
4726
  if (util/* default */.A.get(outuser, 'body.error.code', '').indexOf('user_is_banned') != -1) {
4470
4727
  await util/* default */.A.sleep(120000);
@@ -4550,7 +4807,7 @@ let trackResponseFn = (param, done) => {
4550
4807
  for (let i = 0; true; i++) {
4551
4808
  await this.token_generator(true);
4552
4809
  if (tokensession != this.tokensession) break;
4553
- outuser = await ajax.setBaseUrl(this.ApiURL).withCredentials(true).addQuery('v', '6').afterHook(trackResponseFn).beforeHook(trackRequestFn).addQuery('x-access-token', this.last_token).setParser('json').get(`/accounts/${this.accid}/users/${profile_id}`);
4810
+ outuser = await api_ajax.setBaseUrl(this.ApiURL).withCredentials(true).addQuery('v', '6').afterHook(trackResponseFn).beforeHook(trackRequestFn).addQuery('x-access-token', this.last_token).setParser('json').get(`/accounts/${this.accid}/users/${profile_id}`);
4554
4811
  if (!util/* default */.A.get(outuser, 'body.id')) {
4555
4812
  let sleeptime = Math.min(2000 + i * 100, 120000);
4556
4813
  await util/* default */.A.sleep(sleeptime);
@@ -4600,7 +4857,7 @@ let trackResponseFn = (param, done) => {
4600
4857
  });
4601
4858
  }
4602
4859
  });
4603
- (Object.getOwnPropertyDescriptor(api, "name") || {}).writable || Object.defineProperty(api, "name", { value: "default", configurable: true });
4860
+ __webpack_require__.dn(api);
4604
4861
  function fallbackGCSUrl(url) {
4605
4862
  try {
4606
4863
  const u = new URL(url);
@@ -4615,7 +4872,7 @@ function fallbackGCSUrl(url) {
4615
4872
  }
4616
4873
  }
4617
4874
  ;// ./src/store/lsdb.js
4618
- let memlocalStorage = __webpack_require__(450);
4875
+ let memlocalStorage = inmem_localstorage_namespaceFn();
4619
4876
 
4620
4877
  let requestIdleCallback = typeof window !== 'undefined' ? window.requestIdleCallback : null;
4621
4878
  if (!requestIdleCallback) requestIdleCallback = cb => cb();
@@ -4675,7 +4932,7 @@ const LIMIT = 80;
4675
4932
  });
4676
4933
  }
4677
4934
  });
4678
- (Object.getOwnPropertyDescriptor(lsdb, "name") || {}).writable || Object.defineProperty(lsdb, "name", { value: "default", configurable: true });
4935
+ __webpack_require__.dn(lsdb);
4679
4936
  function lsdb_toString(obj) {
4680
4937
  if (obj === undefined) return 'null';
4681
4938
  return JSON.stringify(obj);
@@ -4980,13 +5237,13 @@ let KvMaxSize = 500;
4980
5237
  this.initialized = false;
4981
5238
  }
4982
5239
  });
4983
- (Object.getOwnPropertyDescriptor(kv, "name") || {}).writable || Object.defineProperty(kv, "name", { value: "default", configurable: true });
5240
+ __webpack_require__.dn(kv);
4984
5241
  ;// ./src/store/api_fake.js
4985
5242
  function api_fake_defineProperty(e, r, t) { return (r = api_fake_toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
4986
5243
  function api_fake_toPropertyKey(t) { var i = api_fake_toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
4987
5244
  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); }
4988
-
4989
- const api_fake_ajax = __webpack_require__(318);
5245
+ ;
5246
+ const api_fake_ajax = ajax_namespaceFn();
4990
5247
  function api_fake_jsonifyTextPlain(param, done) {
4991
5248
  let req = param.request;
4992
5249
  if (req.content_type === 'text/plain' && req.body !== undefined) req.body = util/* default */.A.stringify(req.body);
@@ -5071,7 +5328,7 @@ const OK200 = Promise.resolve({
5071
5328
  };
5072
5329
  }
5073
5330
  });
5074
- (Object.getOwnPropertyDescriptor(api_fake, "name") || {}).writable || Object.defineProperty(api_fake, "name", { value: "default", configurable: true });
5331
+ __webpack_require__.dn(api_fake);
5075
5332
  function makeFakeConvo(accid, convoid, userid, agentid) {
5076
5333
  let inteid = accid + '.subizv4.subikon';
5077
5334
  return {
@@ -5370,25 +5627,26 @@ function makeFakeMessages(accid, convoid, userid, agentid) {
5370
5627
  }
5371
5628
  reconnect() {}
5372
5629
  });
5373
- (Object.getOwnPropertyDescriptor(realtime_fake, "name") || {}).writable || Object.defineProperty(realtime_fake, "name", { value: "default", configurable: true });
5630
+ __webpack_require__.dn(realtime_fake);
5631
+ function flow_namespaceObject() { return flow_namespaceObject.c || (flow_namespaceObject.c = __webpack_require__.t(flow_namespaceFn(), 2)); }
5374
5632
  ;// ./src/store/store.js
5375
5633
  function store_defineProperty(e, r, t) { return (r = store_toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
5376
5634
  function store_toPropertyKey(t) { var i = store_toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
5377
5635
  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); }
5636
+ ;
5637
+ var store_flow = flow_namespaceObject();
5378
5638
 
5379
- var flow = __webpack_require__(8193);
5380
5639
 
5381
5640
 
5382
5641
 
5383
5642
 
5384
5643
 
5385
-
5386
- var Realtime = __webpack_require__(2839);
5387
- var cookie = __webpack_require__(5672);
5644
+ var Realtime = realtime_namespaceFn();
5645
+ var cookie = cookie_umd_namespaceFn();
5388
5646
  cookie.defaults.path = '/';
5389
5647
  cookie.expiresMultiplier = 60 * 60 * 24;
5390
5648
  cookie.defaults.expires = 3650;
5391
- let store_memlocalStorage = __webpack_require__(450);
5649
+ let store_memlocalStorage = inmem_localstorage_namespaceFn();
5392
5650
  const MAX_CONVO = 20;
5393
5651
  const page_loaded = util/* default */.A.Date.now();
5394
5652
  const DEBUG_ACCOUNT_IDS = ['acqsulrowbxiugvginhw', 'acryguzgwxmamhzmqlyx'];
@@ -5543,14 +5801,14 @@ class Store {
5543
5801
  store_defineProperty(this, "checkFormToken", (accid, token) => this.api.checkFormToken(accid, token));
5544
5802
  store_defineProperty(this, "submitForm2", (accid, token, data) => this.api.submitForm2(accid, token, data));
5545
5803
  store_defineProperty(this, "sendPresence", util/* default */.A.throttle(async () => {
5804
+ if (!this._track_page_view) return;
5546
5805
  if (this._die) return dieErr;
5547
5806
  await this.readyGate.entry();
5548
5807
  if (!util/* default */.A.get(this.cache.match('user'), 'id')) return;
5549
5808
  if (util/* default */.A.isUserBanned(this.cache.match('user'))) return;
5550
- if (!this._track_page_view) return;
5551
5809
  let hasfocus = this.browserVisibility === 'visible' && document.hasFocus();
5552
5810
  if (!hasfocus) return this.api.sendLostFocus();
5553
- this.api.sendContentView(this.device, location.href, document.title, this._currentViewingProduct.id, this._currentViewingProduct.source_id, this._currentViewingProduct.sku);
5811
+ this.sendPageview();
5554
5812
  }, 1000, {
5555
5813
  leading: false
5556
5814
  }));
@@ -5644,6 +5902,13 @@ class Store {
5644
5902
  this.sendPresence();
5645
5903
  });
5646
5904
  window.addEventListener('beforeunload', () => this.api.sendLostFocus());
5905
+ this._lastPresenceURL = window.location.href;
5906
+ this._urlCheckInterval = util/* default */.A.setInterval(() => {
5907
+ if (this._die) return util/* default */.A.clearInterval(this._urlCheckInterval);
5908
+ if (this._lastPresenceURL === window.location.href) return;
5909
+ this._lastPresenceURL = window.location.href;
5910
+ this.sendPresence();
5911
+ }, 2_000);
5647
5912
  this.doNotStartBot = () => {
5648
5913
  this._donotstartbot = true;
5649
5914
  };
@@ -6165,12 +6430,20 @@ class Store {
6165
6430
  this.cache.put('payment_methods', pms);
6166
6431
  this.pubsub.publish('account');
6167
6432
  }
6433
+ async sendPageview(p) {
6434
+ if (!p) p = {};
6435
+ let device = Object.assign({}, this.device);
6436
+ if (p.referrer) device.source_referrer = p.referrer;
6437
+ device.page_url = p.url || location.href;
6438
+ device.page_title = p.title || document.title;
6439
+ return this.api.sendContentView(device, p.url || location.href, p.title || document.title, this._currentViewingProduct.id, this._currentViewingProduct.source_id, this._currentViewingProduct.sku);
6440
+ }
6168
6441
  async track(e) {
6169
6442
  if (!e) {
6170
- let out = await this.api.sendContentView(this.device, location.href, document.title, this._currentViewingProduct.id, this._currentViewingProduct.source_id, this._currentViewingProduct.sku);
6443
+ let out = await this.sendPageview();
6171
6444
  let traffic_source = util/* default */.A.get(out, 'body.by.device.source', '');
6172
6445
  if (traffic_source) this.kv.put('traffic_source', traffic_source);
6173
- return;
6446
+ return out;
6174
6447
  }
6175
6448
  if (typeof e === 'object') {
6176
6449
  if (!e.data) e.data = {};
@@ -6452,7 +6725,7 @@ class Store {
6452
6725
  if (type === 'message_sent') {
6453
6726
  event.data.message.idempotency_key = idempotency;
6454
6727
  event.data.message.conversation_id = cid;
6455
- await flow.map(event.data.message.attachments, 2, async (att, i) => {
6728
+ await store_flow.map(event.data.message.attachments, 2, async (att, i) => {
6456
6729
  if (att.type !== 'file') return;
6457
6730
  if (!att._file) return;
6458
6731
  files.push(att);
@@ -6470,7 +6743,7 @@ class Store {
6470
6743
  }
6471
6744
  this.onWs(event);
6472
6745
  await this.convoGate.entry();
6473
- await flow.map(files, 1, async att => {
6746
+ await store_flow.map(files, 1, async att => {
6474
6747
  const {
6475
6748
  body,
6476
6749
  url,
@@ -6679,6 +6952,7 @@ class Store {
6679
6952
  this._die = true;
6680
6953
  this.clearBrowserData();
6681
6954
  util/* default */.A.clearInterval(this._seenInterval);
6955
+ util/* default */.A.clearInterval(this._urlCheckInterval);
6682
6956
  if (this.realtime) this.realtime.stop();
6683
6957
  this.readyGate.close();
6684
6958
  window.removeEventListener('blur', this.sendPresence);
@@ -6870,8 +7144,8 @@ var chatbox_block = __webpack_require__(7072);
6870
7144
  ;// ./src/chatbox/ChatButton.js
6871
7145
 
6872
7146
 
6873
- var defaultBubble = __webpack_require__(1108);
6874
- let defaultAvatar = __webpack_require__(2538);
7147
+ var defaultBubble = bubble_default_namespaceFn();
7148
+ let defaultAvatar = default_avatar_namespaceFn();
6875
7149
 
6876
7150
 
6877
7151
 
@@ -7121,10 +7395,10 @@ class ChatButton extends common/* Com */.Mw {
7121
7395
  if (!agent) agent = this.props.store.matchAgent('*')[byid] || {};
7122
7396
  agent = util/* default */.A.cloneDeep(agent);
7123
7397
  agent.fullname = agent.fullname || util/* default */.A.get(account, 'name') || this.props.t('agent');
7124
- agent.avatar_url = agent.avatar_url || account.logo_url || __webpack_require__(3582);
7398
+ agent.avatar_url = agent.avatar_url || account.logo_url || image_default_namespaceFn();
7125
7399
  if (accountSetting && accountSetting.hide_agent_profile) {
7126
7400
  agent = Object.assign({}, account, {
7127
- avatar_url: account.logo_url || __webpack_require__(3582),
7401
+ avatar_url: account.logo_url || image_default_namespaceFn(),
7128
7402
  fullname: account.name || this.props.t('agent')
7129
7403
  });
7130
7404
  }
@@ -7399,7 +7673,7 @@ function addVersionParam(url, version = 8) {
7399
7673
  }
7400
7674
  }
7401
7675
  ;// ./src/chatbox/PoweredBy.js
7402
- var logo = __webpack_require__(9529);
7676
+ var logo = subiz_mono_namespaceFn();
7403
7677
 
7404
7678
  function PoweredBy(props) {
7405
7679
  if (props.store.isMobile()) return null;
@@ -7442,7 +7716,7 @@ function AgentsAvatar(props) {
7442
7716
  height: 35,
7443
7717
  alt: "agent avatar left",
7444
7718
  class: "avatar group-avatar--agent-left",
7445
- src: props.store.replaceFileUrl(acc.logo_url) || __webpack_require__(3582)
7719
+ src: props.store.replaceFileUrl(acc.logo_url) || image_default_namespaceFn()
7446
7720
  })));
7447
7721
  }
7448
7722
  let agentM = props.store.matchAgent('*');
@@ -7469,12 +7743,12 @@ function AgentsAvatar(props) {
7469
7743
  height: 35,
7470
7744
  alt: "agent avatar left",
7471
7745
  class: "avatar group-avatar--agent-left",
7472
- src: props.store.replaceFileUrl(acc.logo_url) || __webpack_require__(3582)
7746
+ src: props.store.replaceFileUrl(acc.logo_url) || image_default_namespaceFn()
7473
7747
  })));
7474
7748
  }
7475
7749
  if (agents.length === 1) {
7476
7750
  var agent = agents[0];
7477
- let avatarurl = agent.avatar_url || props.store.replaceFileUrl(acc.logo_url) || __webpack_require__(3582);
7751
+ let avatarurl = agent.avatar_url || props.store.replaceFileUrl(acc.logo_url) || image_default_namespaceFn();
7478
7752
  var groupClass = mode === 'primary' ? 'group-avatar--agent-middle' : 'group-avatar--agent-left';
7479
7753
  return (0,preact_module.h)("div", {
7480
7754
  class: `group-avatar group-avatar--${mode}`
@@ -7504,7 +7778,7 @@ function AgentsAvatar(props) {
7504
7778
  height: 35,
7505
7779
  alt: "agent avatar left",
7506
7780
  class: "avatar group-avatar--agent-left",
7507
- src: props.store.replaceFileUrl(leftAgent.avatar_url) || props.store.replaceFileUrl(acc.logo_url) || __webpack_require__(3582)
7781
+ src: props.store.replaceFileUrl(leftAgent.avatar_url) || props.store.replaceFileUrl(acc.logo_url) || image_default_namespaceFn()
7508
7782
  })), (0,preact_module.h)("div", {
7509
7783
  class: "d-inline-block pos-relative",
7510
7784
  "data-tooltip": rightAgent.fullname || acc.name,
@@ -7514,7 +7788,7 @@ function AgentsAvatar(props) {
7514
7788
  width: 35,
7515
7789
  height: 35,
7516
7790
  class: "avatar group-avatar--agent-right",
7517
- src: props.store.replaceFileUrl(rightAgent.avatar_url) || props.store.replaceFileUrl(acc.logo_url) || __webpack_require__(3582)
7791
+ src: props.store.replaceFileUrl(rightAgent.avatar_url) || props.store.replaceFileUrl(acc.logo_url) || image_default_namespaceFn()
7518
7792
  })));
7519
7793
  }
7520
7794
  let leftAgent = agents[0];
@@ -7531,7 +7805,7 @@ function AgentsAvatar(props) {
7531
7805
  height: 35,
7532
7806
  alt: "agent avatar left",
7533
7807
  class: "avatar group-avatar--agent-left",
7534
- src: props.store.replaceFileUrl(leftAgent.avatar_url) || props.store.replaceFileUrl(acc.logo_url) || __webpack_require__(3582)
7808
+ src: props.store.replaceFileUrl(leftAgent.avatar_url) || props.store.replaceFileUrl(acc.logo_url) || image_default_namespaceFn()
7535
7809
  })), (0,preact_module.h)("div", {
7536
7810
  class: "d-inline-block pos-relative",
7537
7811
  "data-tooltip": middleAgent.fullname || acc.name,
@@ -7541,7 +7815,7 @@ function AgentsAvatar(props) {
7541
7815
  width: 35,
7542
7816
  height: 35,
7543
7817
  class: "avatar group-avatar--agent-middle",
7544
- src: props.store.replaceFileUrl(middleAgent.avatar_url) || props.store.replaceFileUrl(acc.logo_url) || __webpack_require__(3582)
7818
+ src: props.store.replaceFileUrl(middleAgent.avatar_url) || props.store.replaceFileUrl(acc.logo_url) || image_default_namespaceFn()
7545
7819
  })), (0,preact_module.h)("div", {
7546
7820
  class: "d-inline-block pos-relative",
7547
7821
  "data-tooltip": rightAgent.fullname || acc.name,
@@ -7551,14 +7825,14 @@ function AgentsAvatar(props) {
7551
7825
  height: 35,
7552
7826
  alt: "agent avatar right",
7553
7827
  class: "avatar group-avatar--agent-right",
7554
- src: props.store.replaceFileUrl(rightAgent.avatar_url) || props.store.replaceFileUrl(acc.logo_url) || __webpack_require__(3582)
7828
+ src: props.store.replaceFileUrl(rightAgent.avatar_url) || props.store.replaceFileUrl(acc.logo_url) || image_default_namespaceFn()
7555
7829
  })));
7556
7830
  }
7557
7831
  ;// ./src/chatbox/Header.js
7558
7832
  function Header_defineProperty(e, r, t) { return (r = Header_toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
7559
7833
  function Header_toPropertyKey(t) { var i = Header_toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
7560
7834
  function Header_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); }
7561
-
7835
+ ;
7562
7836
 
7563
7837
 
7564
7838
 
@@ -7576,7 +7850,7 @@ class Header extends common/* Com */.Mw {
7576
7850
  width: 38,
7577
7851
  height: 38,
7578
7852
  class: "avatar avatar__account",
7579
- src: this.props.store.replaceFileUrl(logoUrl) || __webpack_require__(3763)
7853
+ src: this.props.store.replaceFileUrl(logoUrl) || default_logo_namespaceFn()
7580
7854
  });
7581
7855
  });
7582
7856
  }
@@ -7590,7 +7864,7 @@ class Header extends common/* Com */.Mw {
7590
7864
  height: 38,
7591
7865
  alt: acc.name,
7592
7866
  class: "avatar avatar__account",
7593
- src: this.props.store.replaceFileUrl(logo_url) || __webpack_require__(3763)
7867
+ src: this.props.store.replaceFileUrl(logo_url) || default_logo_namespaceFn()
7594
7868
  });
7595
7869
  }
7596
7870
  render() {
@@ -7801,7 +8075,7 @@ var spinner = __webpack_require__(4188);
7801
8075
  function MessageInput_defineProperty(e, r, t) { return (r = MessageInput_toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
7802
8076
  function MessageInput_toPropertyKey(t) { var i = MessageInput_toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
7803
8077
  function MessageInput_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); }
7804
-
8078
+ ;
7805
8079
 
7806
8080
 
7807
8081
 
@@ -8154,7 +8428,7 @@ function isSummited(form) {
8154
8428
  function ImageAttachments_defineProperty(e, r, t) { return (r = ImageAttachments_toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
8155
8429
  function ImageAttachments_toPropertyKey(t) { var i = ImageAttachments_toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
8156
8430
  function ImageAttachments_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); }
8157
-
8431
+ ;
8158
8432
 
8159
8433
 
8160
8434
  class ImageAttachment extends common/* Com */.Mw {
@@ -8261,7 +8535,7 @@ class ImageAttachment extends common/* Com */.Mw {
8261
8535
  let url = this.props.store.replaceFileUrl(image.thumbnail_url || image.url);
8262
8536
  let trueUrl = this.props.store.replaceFileUrl(image.url);
8263
8537
  if (this.state.errorIndecies.includes(index)) {
8264
- url = __webpack_require__(2876);
8538
+ url = default_namespaceFn();
8265
8539
  trueUrl = url;
8266
8540
  }
8267
8541
  return (0,preact_module.h)("div", {
@@ -8518,7 +8792,7 @@ class QuickReplies extends common/* Com */.Mw {
8518
8792
  function rating_stars_defineProperty(e, r, t) { return (r = rating_stars_toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
8519
8793
  function rating_stars_toPropertyKey(t) { var i = rating_stars_toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
8520
8794
  function rating_stars_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); }
8521
-
8795
+ ;
8522
8796
 
8523
8797
 
8524
8798
  class rating_stars_Form2 extends common/* Com */.Mw {
@@ -8640,7 +8914,7 @@ class rating_stars_Form2 extends common/* Com */.Mw {
8640
8914
  function Form_defineProperty(e, r, t) { return (r = Form_toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
8641
8915
  function Form_toPropertyKey(t) { var i = Form_toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
8642
8916
  function Form_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); }
8643
-
8917
+ ;
8644
8918
 
8645
8919
 
8646
8920
 
@@ -8988,7 +9262,7 @@ class Form2 extends common/* Com */.Mw {
8988
9262
  function FormAttachment2_defineProperty(e, r, t) { return (r = FormAttachment2_toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
8989
9263
  function FormAttachment2_toPropertyKey(t) { var i = FormAttachment2_toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
8990
9264
  function FormAttachment2_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); }
8991
-
9265
+ ;
8992
9266
 
8993
9267
 
8994
9268
 
@@ -9188,7 +9462,7 @@ class GenericTemplateAttachments extends common/* Com */.Mw {
9188
9462
  }, subtitle) : null;
9189
9463
  let imgsrc = this.props.store.replaceFileUrl(ele.image_url);
9190
9464
  if (!ele.image_url) {
9191
- imgsrc = __webpack_require__(2876);
9465
+ imgsrc = default_namespaceFn();
9192
9466
  }
9193
9467
  let defaultActionUrl = ['url_button', 'web_url'].includes(util/* default */.A.get(ele, 'default_action.type')) && util/* default */.A.get(ele, 'default_action.url');
9194
9468
  let cls = 'generic-attachment--element swiper-slide';
@@ -9261,7 +9535,7 @@ class ProductAttachments extends common/* Com */.Mw {
9261
9535
  href: url,
9262
9536
  target: "_blank"
9263
9537
  }, this.props.t('detail'), (0,preact_module.h)("img", {
9264
- src: __webpack_require__(3266),
9538
+ src: external_link_namespaceFn(),
9265
9539
  class: "product_attachment__btn_external_link"
9266
9540
  })));
9267
9541
  console.log('P', product);
@@ -9283,7 +9557,7 @@ class ProductAttachments extends common/* Com */.Mw {
9283
9557
  key: index,
9284
9558
  title: button.title
9285
9559
  }, this.props.t.i18n(button.i18n_title) || button.title || this.props.t('detail'), ' ', (0,preact_module.h)("img", {
9286
- src: __webpack_require__(3266),
9560
+ src: external_link_namespaceFn(),
9287
9561
  class: "product_attachment__btn_external_link"
9288
9562
  }));
9289
9563
  }
@@ -9315,7 +9589,7 @@ class ProductAttachments extends common/* Com */.Mw {
9315
9589
  }
9316
9590
  let imgsrc = this.props.store.replaceFileUrl(product.image);
9317
9591
  if (!product.image) {
9318
- imgsrc = __webpack_require__(2876);
9592
+ imgsrc = default_namespaceFn();
9319
9593
  }
9320
9594
  return (0,preact_module.h)("div", {
9321
9595
  class: 'product_attachment product_attachment__' + byType
@@ -9374,7 +9648,7 @@ var chatbox_time = __webpack_require__(1620);
9374
9648
  function QuoteMessage_defineProperty(e, r, t) { return (r = QuoteMessage_toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
9375
9649
  function QuoteMessage_toPropertyKey(t) { var i = QuoteMessage_toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
9376
9650
  function QuoteMessage_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); }
9377
-
9651
+ ;
9378
9652
 
9379
9653
 
9380
9654
 
@@ -9609,7 +9883,7 @@ function getRateLang(rating) {
9609
9883
  if (rating < 4) return 'average';
9610
9884
  return 'great';
9611
9885
  }
9612
-
9886
+ ;
9613
9887
 
9614
9888
  class InfoMessage extends common/* Com */.Mw {
9615
9889
  render() {
@@ -9640,7 +9914,7 @@ class InfoMessage extends common/* Com */.Mw {
9640
9914
  function Event_defineProperty(e, r, t) { return (r = Event_toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
9641
9915
  function Event_toPropertyKey(t) { var i = Event_toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
9642
9916
  function Event_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); }
9643
-
9917
+ ;
9644
9918
 
9645
9919
 
9646
9920
 
@@ -9650,7 +9924,7 @@ function Event_toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var
9650
9924
 
9651
9925
 
9652
9926
  let OrderAttachments = false;
9653
- const LoadOrderAttachments = () => __webpack_require__.e(/* import() */ 127).then(__webpack_require__.bind(__webpack_require__, 6127));
9927
+ const LoadOrderAttachments = () => __webpack_require__.e(/* import() */ 127).then(() => (__webpack_require__(6127)));
9654
9928
 
9655
9929
 
9656
9930
 
@@ -9774,7 +10048,7 @@ class Event extends common/* Com */.Mw {
9774
10048
  if (bytype === 'user') return null;
9775
10049
  var senderName = this.getSenderName(ev);
9776
10050
  let acc = this.props.store.matchAccount();
9777
- var uri = acc.logo_url || __webpack_require__(3582);
10051
+ var uri = acc.logo_url || image_default_namespaceFn();
9778
10052
  if (util/* default */.A.get(this.props, 'chatbox.hide_agent_profile')) {
9779
10053
  return (0,preact_module.h)("div", {
9780
10054
  class: "message-sender"
@@ -9788,7 +10062,7 @@ class Event extends common/* Com */.Mw {
9788
10062
  }
9789
10063
  let agentM = this.props.store.matchAgent('*');
9790
10064
  if (byid !== 'system' && bytype !== 'dummy' && bytype !== 'workflow') {
9791
- uri = util/* default */.A.get(agentM[byid], 'avatar_url') || acc.logo_url || __webpack_require__(2538);
10065
+ uri = util/* default */.A.get(agentM[byid], 'avatar_url') || acc.logo_url || default_avatar_namespaceFn();
9792
10066
  }
9793
10067
  return (0,preact_module.h)("div", {
9794
10068
  class: "message-sender"
@@ -10196,9 +10470,9 @@ class Event extends common/* Com */.Mw {
10196
10470
  function Events_defineProperty(e, r, t) { return (r = Events_toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
10197
10471
  function Events_toPropertyKey(t) { var i = Events_toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
10198
10472
  function Events_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); }
10473
+ ;
10199
10474
 
10200
-
10201
- const convoemptyimg = __webpack_require__(1370);
10475
+ const convoemptyimg = convos_empty_namespaceFn();
10202
10476
 
10203
10477
 
10204
10478
 
@@ -10559,7 +10833,7 @@ var releaseAnimation = __webpack_require__(2988);
10559
10833
  function Rating_defineProperty(e, r, t) { return (r = Rating_toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
10560
10834
  function Rating_toPropertyKey(t) { var i = Rating_toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
10561
10835
  function Rating_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); }
10562
-
10836
+ ;
10563
10837
 
10564
10838
  const POPUP_MAX_HEIGHT = 400;
10565
10839
  const POPUP_HARD_MAX_HEIGHT = 500;
@@ -10668,7 +10942,7 @@ class Rating extends common/* Com */.Mw {
10668
10942
  onClick: e => this.onRatingPoor(e)
10669
10943
  }, (0,preact_module.h)("img", {
10670
10944
  alt: "poor",
10671
- src: __webpack_require__(9801)
10945
+ src: rating_poor_namespaceFn()
10672
10946
  }), (0,preact_module.h)("p", {
10673
10947
  class: "rating-face--text"
10674
10948
  }, this.props.t('poor'))), (0,preact_module.h)("div", {
@@ -10676,7 +10950,7 @@ class Rating extends common/* Com */.Mw {
10676
10950
  onClick: e => this.onRatingAverage(e)
10677
10951
  }, (0,preact_module.h)("img", {
10678
10952
  alt: "average",
10679
- src: __webpack_require__(7134)
10953
+ src: rating_average_namespaceFn()
10680
10954
  }), (0,preact_module.h)("p", {
10681
10955
  class: "rating-face--text"
10682
10956
  }, this.props.t('average'))), (0,preact_module.h)("div", {
@@ -10684,7 +10958,7 @@ class Rating extends common/* Com */.Mw {
10684
10958
  onClick: e => this.onRatingGreat(e)
10685
10959
  }, (0,preact_module.h)("img", {
10686
10960
  alt: "great",
10687
- src: __webpack_require__(940)
10961
+ src: rating_great_namespaceFn()
10688
10962
  }), (0,preact_module.h)("p", {
10689
10963
  class: "rating-face--text"
10690
10964
  }, this.props.t('great')))), (0,preact_module.h)("div", {
@@ -10844,7 +11118,7 @@ class Rating extends common/* Com */.Mw {
10844
11118
  function ConnectionStatus_defineProperty(e, r, t) { return (r = ConnectionStatus_toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
10845
11119
  function ConnectionStatus_toPropertyKey(t) { var i = ConnectionStatus_toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
10846
11120
  function ConnectionStatus_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); }
10847
-
11121
+ ;
10848
11122
 
10849
11123
 
10850
11124
  class ConnectionStatus extends common/* Com */.Mw {
@@ -10990,20 +11264,20 @@ class ListField extends common/* Com */.Mw {
10990
11264
  function Widget_defineProperty(e, r, t) { return (r = Widget_toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
10991
11265
  function Widget_toPropertyKey(t) { var i = Widget_toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
10992
11266
  function Widget_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); }
11267
+ ;
10993
11268
 
10994
11269
 
10995
11270
 
10996
11271
 
10997
-
10998
- var send = __webpack_require__(8506);
10999
- var checkedimg = __webpack_require__(9150);
11000
- var empty = __webpack_require__(9419);
11272
+ var Widget_send = send_namespaceFn();
11273
+ var checkedimg = done_gray_namespaceFn();
11274
+ var Widget_empty = empty_namespaceFn();
11001
11275
 
11002
11276
 
11003
11277
 
11004
11278
 
11005
11279
  let Order = false;
11006
- const LoadOrder = () => __webpack_require__.e(/* import() */ 185).then(__webpack_require__.bind(__webpack_require__, 4185));
11280
+ const LoadOrder = () => __webpack_require__.e(/* import() */ 185).then(() => (__webpack_require__(4185)));
11007
11281
 
11008
11282
  const Widget_defaultAvatar = 'https://vcdn.subiz-cdn.com/file/fiqoahedjbgwclpouoml-avatar_default_baa8a1d7.png';
11009
11283
 
@@ -11297,9 +11571,13 @@ class Widget extends common/* Com */.Mw {
11297
11571
  });
11298
11572
  }
11299
11573
  return (0,preact_module.h)("div", {
11300
- class: cls
11574
+ class: cls,
11575
+ onClick: this.onBgClick
11301
11576
  }, $header, $body);
11302
11577
  }
11578
+ onBgClick(event) {
11579
+ event.stopPropagation();
11580
+ }
11303
11581
  validateForm(formData) {
11304
11582
  let newformdata = {};
11305
11583
  util/* default */.A.map(formData, (field, key) => {
@@ -11802,7 +12080,7 @@ class Widget extends common/* Com */.Mw {
11802
12080
  }, (0,preact_module.h)("img", {
11803
12081
  class: "widget_body_empty_img",
11804
12082
  alt: "empty",
11805
- src: empty
12083
+ src: Widget_empty
11806
12084
  }), (0,preact_module.h)("div", {
11807
12085
  class: "empty-desc"
11808
12086
  }, this.props.t('empty_convo'))));
@@ -11821,7 +12099,7 @@ class Widget extends common/* Com */.Mw {
11821
12099
  class: "btn--start-convo",
11822
12100
  onClick: _ => this.goToConvo('')
11823
12101
  }, (0,preact_module.h)("span", null, this.props.t('start_conversation')), (0,preact_module.h)("img", {
11824
- src: send,
12102
+ src: Widget_send,
11825
12103
  alt: "send button",
11826
12104
  width: "26",
11827
12105
  height: "26"
@@ -12204,7 +12482,7 @@ var chatbox_css = __webpack_require__(9278);
12204
12482
  function main_defineProperty(e, r, t) { return (r = main_toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
12205
12483
  function main_toPropertyKey(t) { var i = main_toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
12206
12484
  function main_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); }
12207
-
12485
+ ;
12208
12486
 
12209
12487
 
12210
12488
 
@@ -12229,7 +12507,9 @@ class Main extends common/* Com */.Mw {
12229
12507
  let margin_y = util/* default */.A.get(chatbox, 'desktop_button.margin_y');
12230
12508
  chatbox.desktop_widget_max_height = margin_y ? `calc(100% - ${margin_y + 10}px)` : 'calc(100% - 40px)';
12231
12509
  const PREVIEW_MAX_WIDTH = 340;
12232
- chatbox.preview_max_width = Math.min(PREVIEW_MAX_WIDTH, chatbox.width) + 'px';
12510
+ let previewMaxWidthVal = Math.min(PREVIEW_MAX_WIDTH, chatbox.width);
12511
+ if (Number.isNaN(previewMaxWidthVal) || !previewMaxWidthVal) previewMaxWidthVal = PREVIEW_MAX_WIDTH;
12512
+ chatbox.preview_max_width = previewMaxWidthVal + 'px';
12233
12513
  var outcss = util/* default */.A.replaceCssVariable(css, chatbox);
12234
12514
  util/* default */.A.setCss(this.props.plugin.id, this.$cssStyleDiv, outcss);
12235
12515
  }
@@ -12403,6 +12683,14 @@ class Main extends common/* Com */.Mw {
12403
12683
  this.props.store.updateLastview(newView);
12404
12684
  this.forceUpdate();
12405
12685
  }
12686
+ getCurrentView() {
12687
+ let lastview = this.props.store.matchLastview() || {};
12688
+ return {
12689
+ is_show_widget: util/* default */.A.get(lastview, 'screen') === 'widget',
12690
+ view: util/* default */.A.get(lastview, 'view', ''),
12691
+ conversation_id: util/* default */.A.get(lastview, 'opts.cid', '')
12692
+ };
12693
+ }
12406
12694
  applyMessage(text) {
12407
12695
  this.refWidget.current && this.refWidget.current.applyMessage(text);
12408
12696
  }
@@ -12462,9 +12750,9 @@ function modifyViewport() {
12462
12750
 
12463
12751
 
12464
12752
 
12465
- const LoadContact = () => __webpack_require__.e(/* import() */ 74).then(__webpack_require__.bind(__webpack_require__, 9074));
12466
- const LoadPopup = () => __webpack_require__.e(/* import() */ 132).then(__webpack_require__.bind(__webpack_require__, 132));
12467
- const LoadNotif = () => __webpack_require__.e(/* import() */ 490).then(__webpack_require__.bind(__webpack_require__, 1490));
12753
+ const LoadContact = () => __webpack_require__.e(/* import() */ 74).then(() => (__webpack_require__(9074)));
12754
+ const LoadPopup = () => __webpack_require__.e(/* import() */ 132).then(() => (__webpack_require__(132)));
12755
+ const LoadNotif = () => __webpack_require__.e(/* import() */ 490).then(() => (__webpack_require__(1490)));
12468
12756
  function Plugin(plugin, store, $container, lib) {
12469
12757
  if (!$container) throw '$div must is a valid html node';
12470
12758
  var $div = document.createElement('div');
@@ -12563,7 +12851,10 @@ function Plugin(plugin, store, $container, lib) {
12563
12851
  }
12564
12852
  domGate.open();
12565
12853
  };
12566
- this.call = (method, param) => domGate.entry().then(() => _ref.current[method](param));
12854
+ this.call = (method, param) => domGate.entry().then(() => {
12855
+ if (!_ref.current || typeof _ref.current[method] !== 'function') return;
12856
+ return _ref.current[method](param);
12857
+ });
12567
12858
  var _destroy = false;
12568
12859
  this.destroy = () => {
12569
12860
  _destroy = true;
@@ -12763,7 +13054,7 @@ class PluginMgr {
12763
13054
  function lib_defineProperty(e, r, t) { return (r = lib_toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
12764
13055
  function lib_toPropertyKey(t) { var i = lib_toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
12765
13056
  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); }
12766
-
13057
+ ;
12767
13058
 
12768
13059
 
12769
13060
  class lib_Widget {
@@ -12776,21 +13067,11 @@ class lib_Widget {
12776
13067
  lib_defineProperty(this, "setViewingProduct", p => this.store.linkProduct(p));
12777
13068
  lib_defineProperty(this, "getViewingProduct", () => this.store.getLinkedProduct());
12778
13069
  lib_defineProperty(this, "track", v => this.store.track(v));
12779
- lib_defineProperty(this, "event", async v => {
13070
+ lib_defineProperty(this, "event", async (type, payload, options) => {
12780
13071
  await this.store.readyGate.entry();
12781
- return this.store.api.sendEvent(v);
12782
- });
12783
- lib_defineProperty(this, "pageview", v => {
12784
- v = v || {};
12785
- return this.event({
12786
- type: 'content_viewed',
12787
- payload: {
12788
- url: v.url || location.href,
12789
- title: v.title || document.title,
12790
- referrer: v.referrer || document.referrer
12791
- }
12792
- });
13072
+ return this.store.api.sendEvent(normalizeCdpEvent(type, payload, options));
12793
13073
  });
13074
+ lib_defineProperty(this, "pageview", v => this.store.sendPageview(v));
12794
13075
  this.impressionTokens = {};
12795
13076
  this.domGate = new util/* default */.A.Gate();
12796
13077
  this.store = new Store(ApiURL, FileURL, RealtimeURL, inmem, fake);
@@ -13134,6 +13415,15 @@ class lib_Widget {
13134
13415
  this.store.doNotStartBot();
13135
13416
  }
13136
13417
  }
13418
+ function normalizeCdpEvent(type, payload, options) {
13419
+ if (type && typeof type === 'object') return type;
13420
+ let data = {
13421
+ type: type
13422
+ };
13423
+ if (payload !== undefined) data.payload = payload;
13424
+ if (options && typeof options === 'object') data = Object.assign({}, options, data);
13425
+ return data;
13426
+ }
13137
13427
  window.__sbz_WIDGET = lib_Widget;
13138
13428
  /* harmony default export */ const lib = (lib_Widget);
13139
13429
  ;// ./screenshoot.js