@subiz/widget-v4 4.0.91 → 4.0.93

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 (194) hide show
  1. package/compiled_src/bot.js +0 -11
  2. package/compiled_src/call/call.js +0 -61
  3. package/compiled_src/call/css.js +0 -2
  4. package/compiled_src/chatbox/AgentsAvatar.js +0 -16
  5. package/compiled_src/chatbox/AudioAttachments.js +0 -14
  6. package/compiled_src/chatbox/ButtonAttachments.js +1 -14
  7. package/compiled_src/chatbox/Buttons.js +0 -13
  8. package/compiled_src/chatbox/ChatButton.js +1 -78
  9. package/compiled_src/chatbox/DropdownSelect.js +3 -44
  10. package/compiled_src/chatbox/Emoji.js +0 -7
  11. package/compiled_src/chatbox/Event.js +0 -59
  12. package/compiled_src/chatbox/Events.js +4 -44
  13. package/compiled_src/chatbox/FileAttachments.js +0 -14
  14. package/compiled_src/chatbox/FormAttachment.js +1 -52
  15. package/compiled_src/chatbox/FormAttachments.js +0 -14
  16. package/compiled_src/chatbox/FormSubmitAttachments.js +0 -11
  17. package/compiled_src/chatbox/GenericTemplateAttachments.js +1 -20
  18. package/compiled_src/chatbox/Header.js +1 -46
  19. package/compiled_src/chatbox/ImageAttachments.js +0 -16
  20. package/compiled_src/chatbox/InfoMessage.js +0 -13
  21. package/compiled_src/chatbox/ListField.js +0 -16
  22. package/compiled_src/chatbox/MessageInput.js +1 -47
  23. package/compiled_src/chatbox/Order.js +0 -35
  24. package/compiled_src/chatbox/OrderAttachments.js +1 -23
  25. package/compiled_src/chatbox/PoweredBy.js +0 -7
  26. package/compiled_src/chatbox/ProductAttachments.js +0 -19
  27. package/compiled_src/chatbox/QuickReplies.js +0 -18
  28. package/compiled_src/chatbox/Rating.js +0 -37
  29. package/compiled_src/chatbox/ShadowDomRoot.js +0 -9
  30. package/compiled_src/chatbox/TextMessage.js +0 -64
  31. package/compiled_src/chatbox/Typing.js +0 -15
  32. package/compiled_src/chatbox/VideoAttachments.js +0 -14
  33. package/compiled_src/chatbox/Widget.js +6 -167
  34. package/compiled_src/chatbox/css.js +0 -2
  35. package/compiled_src/chatbox/dragscroll.js +1 -5
  36. package/compiled_src/chatbox/main.js +3 -43
  37. package/compiled_src/chatbox/releaseAnimation.js +0 -11
  38. package/compiled_src/chatbox/spinner.js +0 -10
  39. package/compiled_src/chatbox/time.js +0 -22
  40. package/compiled_src/chatbox/touchscroll.js +0 -7
  41. package/compiled_src/common.js +0 -22
  42. package/compiled_src/contact/contact.js +2 -52
  43. package/compiled_src/contact/css.js +0 -2
  44. package/compiled_src/lib.js +19 -46
  45. package/compiled_src/notif/css.js +0 -2
  46. package/compiled_src/notif/notif.js +0 -63
  47. package/compiled_src/order/address_picker.js +4 -38
  48. package/compiled_src/order/icon.js +0 -16
  49. package/compiled_src/order/index.js +1 -34
  50. package/compiled_src/order/order.js +2 -156
  51. package/compiled_src/plugin.js +1 -77
  52. package/compiled_src/popup/countdown.js +2 -33
  53. package/compiled_src/popup/css.js +0 -2
  54. package/compiled_src/popup/popup.js +2 -165
  55. package/compiled_src/popup/tick.core.commonjs.js +72 -222
  56. package/compiled_src/popup/tick.view.flip.commonjs.js +23 -31
  57. package/compiled_src/store/api.js +103 -66
  58. package/compiled_src/store/api_fake.js +3 -39
  59. package/compiled_src/store/realtime_fake.js +0 -6
  60. package/compiled_src/store/store.js +46 -257
  61. package/compiled_src/util/campaign.js +0 -13
  62. package/compiled_src/util/common.js +15 -190
  63. package/compiled_src/util/common.test.js +0 -4
  64. package/compiled_src/util/extractor.js +1 -21
  65. package/compiled_src/util/extractor.test.js +0 -3
  66. package/compiled_src/util/gate.js +0 -7
  67. package/compiled_src/util/gate.test.js +1 -2
  68. package/compiled_src/util/index.js +1 -7
  69. package/compiled_src/util/mutex.js +31 -0
  70. package/compiled_src/util/op.js +1 -14
  71. package/compiled_src/util/pubsub.js +0 -6
  72. package/compiled_src/util/pubsub.test.js +0 -2
  73. package/package.json +12 -12
  74. package/src/chatbox/main.js +3 -3
  75. package/src/lib.js +24 -2
  76. package/src/store/api.js +111 -22
  77. package/src/store/api_fake.js +5 -6
  78. package/src/store/store.js +38 -14
  79. package/src/util/common.js +0 -4
  80. package/src/util/index.js +1 -0
  81. package/src/util/mutex.js +27 -0
  82. package/dist/0b82fa7e5c3b07b40a44.png +0 -1
  83. package/dist/0f4af006e38ee8b93633.png +0 -1
  84. package/dist/132.js +0 -6777
  85. package/dist/178.js +0 -573
  86. package/dist/17f00e48d38.132.js +0 -1
  87. package/dist/17f00e48d38.178.js +0 -1
  88. package/dist/17f00e48d38.213.js +0 -1
  89. package/dist/17f00e48d38.335.js +0 -1
  90. package/dist/17f00e48d38.362.js +0 -1
  91. package/dist/17f00e48d38.441.js +0 -1
  92. package/dist/17f00e48d38.605.js +0 -1
  93. package/dist/17f00e48d38.678.js +0 -1
  94. package/dist/17f00e48d38.782.js +0 -1
  95. package/dist/17f00e48d38.app.js +0 -1
  96. package/dist/17f00e48d38.index.html +0 -22
  97. package/dist/17f00e48d38.library.html +0 -22
  98. package/dist/17f00e48d38.library.js +0 -1
  99. package/dist/17f00e48d38.preview.html +0 -759
  100. package/dist/17f00e48d38.preview.js +0 -1
  101. package/dist/17f00e48d38.screenshoot.js +0 -1
  102. package/dist/1ea1c6cd21d25176810c.png +0 -1
  103. package/dist/213.js +0 -3188
  104. package/dist/292d42404e1b03398f61.png +0 -1
  105. package/dist/312d376370831b7bea83.png +0 -1
  106. package/dist/313d1bfc1cf776d1aefe.png +0 -1
  107. package/dist/335.js +0 -411
  108. package/dist/362.js +0 -157
  109. package/dist/441.js +0 -2732
  110. package/dist/4aa58bb7a66bb44975aa.png +0 -1
  111. package/dist/56ce063bc6c81adb7322.png +0 -1
  112. package/dist/605.js +0 -328
  113. package/dist/678.js +0 -157
  114. package/dist/6a411166ef5cc79e0714.png +0 -1
  115. package/dist/6faf403782fefacc1649.png +0 -1
  116. package/dist/782.js +0 -204
  117. package/dist/79dca33c68fab79c067f.png +0 -1
  118. package/dist/82da1578fa84f9debaeb.png +0 -1
  119. package/dist/8b8e0f0824743974b282.png +0 -1
  120. package/dist/8d551390d81e39130a3c.png +0 -1
  121. package/dist/9fc61b9479877ebdb6c7.png +0 -1
  122. package/dist/HASH +0 -1
  123. package/dist/a165d31dcb3dc90f1057.png +0 -1
  124. package/dist/a98d4a5698812c4426b3.png +0 -1
  125. package/dist/assets/img/Facebook.64607ec.png +0 -0
  126. package/dist/assets/img/Zalo.6845707.png +0 -0
  127. package/dist/assets/img/award1a.1a58e10.png +0 -0
  128. package/dist/assets/img/award3a.3b74423.png +0 -0
  129. package/dist/assets/img/award4a.ed6ccd4.png +0 -0
  130. package/dist/assets/img/award5.39eb7ae.png +0 -0
  131. package/dist/assets/img/bubble_default.7d5e4ab.svg +0 -20
  132. package/dist/assets/img/caret.998eb8f.svg +0 -1
  133. package/dist/assets/img/convos_empty.2353007.svg +0 -72
  134. package/dist/assets/img/default.06e6ee0.jpg +0 -0
  135. package/dist/assets/img/default_avatar.5b74dc1.png +0 -0
  136. package/dist/assets/img/done_gray.d7e8203.svg +0 -4
  137. package/dist/assets/img/done_green.b817fd4.svg +0 -4
  138. package/dist/assets/img/emoji/messenger/sub_23.529_58.824.d5faf14.png +0 -0
  139. package/dist/assets/img/emoji/messenger/sub_23.529_60.784.1420241.png +0 -0
  140. package/dist/assets/img/emoji/messenger/sub_25.490_0.000.1e6b2c0.png +0 -0
  141. package/dist/assets/img/emoji/messenger/sub_25.490_45.098.3dfbc08.png +0 -0
  142. package/dist/assets/img/emoji/messenger/sub_25.490_5.882.4b49e94.png +0 -0
  143. package/dist/assets/img/emoji/messenger/sub_27.451_72.549.7114f58.png +0 -0
  144. package/dist/assets/img/emoji/messenger/sub_27.451_84.314.231e2b7.png +0 -0
  145. package/dist/assets/img/emoji/messenger/sub_27.451_96.078.ddbb008.png +0 -0
  146. package/dist/assets/img/emoji/messenger/sub_29.412_5.882.61f3359.png +0 -0
  147. package/dist/assets/img/emoji/messenger/sub_58.824_100.000.6df72bc.png +0 -0
  148. package/dist/assets/img/emoji/messenger/sub_58.824_45.098.3d7a7ad.png +0 -0
  149. package/dist/assets/img/emoji/messenger/sub_58.824_47.059.0f4d6e2.png +0 -0
  150. package/dist/assets/img/emoji/messenger/sub_58.824_54.902.65724c1.png +0 -0
  151. package/dist/assets/img/emoji/messenger/sub_58.824_64.706.9da3cba.png +0 -0
  152. package/dist/assets/img/emoji/messenger/sub_58.824_72.549.edca5cf.png +0 -0
  153. package/dist/assets/img/emoji/messenger/sub_58.824_78.431.f910f2a.png +0 -0
  154. package/dist/assets/img/emoji/messenger/sub_58.824_88.235.def4e71.png +0 -0
  155. package/dist/assets/img/emoji/messenger/sub_60.784_11.765.49c03d0.png +0 -0
  156. package/dist/assets/img/emoji/messenger/sub_60.784_27.451.46b54e5.png +0 -0
  157. package/dist/assets/img/emoji/messenger/sub_60.784_29.412.e36d284.png +0 -0
  158. package/dist/assets/img/emoji/messenger/sub_60.784_3.922.bb191b0.png +0 -0
  159. package/dist/assets/img/emoji/messenger/sub_60.784_35.294.af7b927.png +0 -0
  160. package/dist/assets/img/emoji/messenger/sub_60.784_7.843.98f2a99.png +0 -0
  161. package/dist/assets/img/empty.29bed2d.svg +0 -23
  162. package/dist/assets/img/empty_1.0b98af0.svg +0 -11
  163. package/dist/assets/img/examplte_logo.f86535f.svg +0 -1
  164. package/dist/assets/img/external-link.90577cc.svg +0 -1
  165. package/dist/assets/img/fb_inverse_circle.36c2cfc.png +0 -0
  166. package/dist/assets/img/ghn.070f8e3.svg +0 -17
  167. package/dist/assets/img/ghtk.326eac1.svg +0 -18
  168. package/dist/assets/img/image_default.be0698b.png +0 -0
  169. package/dist/assets/img/info.ebce7ea.svg +0 -1
  170. package/dist/assets/img/loader.37000a7.svg +0 -1
  171. package/dist/assets/img/loading_static.8f403ae.svg +0 -10
  172. package/dist/assets/img/main-service1.d536cc2.png +0 -0
  173. package/dist/assets/img/main-service2.9b99549.png +0 -0
  174. package/dist/assets/img/not_found_search.2ddb8d1.png +0 -0
  175. package/dist/assets/img/package.8d37d0f.svg +0 -5
  176. package/dist/assets/img/package_fade.763c001.svg +0 -1
  177. package/dist/assets/img/rating--average.1ea492c.svg +0 -12
  178. package/dist/assets/img/rating--great.e3d712e.svg +0 -16
  179. package/dist/assets/img/rating--poor.2938a25.svg +0 -12
  180. package/dist/assets/img/search.f9705ff.svg +0 -1
  181. package/dist/assets/img/send.6db52a9.svg +0 -3
  182. package/dist/assets/img/shop.f7dc7d8.svg +0 -1
  183. package/dist/assets/img/shop_faded.df7845a.svg +0 -1
  184. package/dist/assets/img/subiz-mono.877e9f5.svg +0 -3
  185. package/dist/assets/img/x.26fdfa3.svg +0 -5
  186. package/dist/c41606bf9d1b604e46d5.png +0 -1
  187. package/dist/ce1f7450ce6c1aacd330.png +0 -1
  188. package/dist/cf8c01e88f4770a6e3e5.png +0 -1
  189. package/dist/dfbcfeab1d5622a737e2.png +0 -1
  190. package/dist/e4893ed8c2f7b8329919.png +0 -1
  191. package/dist/ec2ab4eb4ef73d186186.png +0 -1
  192. package/dist/malicious-app.js +0 -13
  193. package/dist/screenshoot.html +0 -7
  194. package/dist/screenshoot.js +0 -5919
@@ -5,19 +5,12 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.default = exports.DEFVAL = void 0;
7
7
  exports.replaceCssVariable = replaceCssVariable;
8
-
9
8
  var _index = _interopRequireDefault(require("../util/index.js"));
10
-
11
9
  var _preact = require("preact");
12
-
13
10
  var _common = require("../common.js");
14
-
15
11
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
16
-
17
12
  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
18
-
19
13
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
20
-
21
14
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
22
15
 
23
16
  let CSS = (() => Promise.resolve().then(() => _interopRequireWildcard(require('./css.js'))))();
@@ -25,17 +18,14 @@ let CSS = (() => Promise.resolve().then(() => _interopRequireWildcard(require('.
25
18
  class Contact extends _common.Com {
26
19
  constructor(props) {
27
20
  super(props);
28
-
29
21
  _defineProperty(this, "state", {
30
22
  map: false,
31
23
  map_loading: false,
32
24
  map_initialized: false
33
25
  });
34
-
35
26
  this.showMap = this.showMap.bind(this);
36
27
  this.hideMap = this.hideMap.bind(this);
37
28
  }
38
-
39
29
  async initMap() {
40
30
  if (this.map_initialized) return;
41
31
  this.setState({
@@ -51,7 +41,6 @@ class Contact extends _common.Com {
51
41
  map_loading: false
52
42
  });
53
43
  }
54
-
55
44
  js2css(js, onlyProps) {
56
45
  return _index.default.js2css(js, onlyProps, {
57
46
  '@font_size': this.props.plugin.popup.font_size,
@@ -65,7 +54,6 @@ class Contact extends _common.Com {
65
54
  '@spacer3': spacer * 3 + 'px'
66
55
  });
67
56
  }
68
-
69
57
  renderMapButton(button) {
70
58
  let icon = (0, _preact.h)("svg", {
71
59
  width: "20px",
@@ -87,7 +75,6 @@ class Contact extends _common.Com {
87
75
  onClick: this.showMap
88
76
  }, this.renderMapModal(button), icon);
89
77
  }
90
-
91
78
  async setMap(lat, lng) {
92
79
  console.log('HEE');
93
80
  await this.initMap();
@@ -95,20 +82,17 @@ class Contact extends _common.Com {
95
82
  window.gmap = this.gmap;
96
83
  this.gmap.map.setCenter(new google.maps.LatLng(lat, lng));
97
84
  }
98
-
99
85
  renderMapModal(button) {
100
86
  let cls = 'map_modal';
101
87
  if (this.state.map) cls += ' map_modal__show';else cls += ' map_modal__hide';
102
88
  let overlaycls = 'overlay';
103
89
  if (!this.state.map) overlaycls += ' overlay__hidden';
104
-
105
90
  let $locations = _index.default.map(button.map.locations, loc => {
106
91
  return (0, _preact.h)("div", {
107
92
  class: "map_location",
108
93
  onClick: e => this.setMap(loc.latitude, loc.longitude)
109
94
  }, (0, _preact.h)("div", null, loc.name), (0, _preact.h)("div", null, loc.latitude), (0, _preact.h)("div", null, loc.longitude));
110
95
  });
111
-
112
96
  $locations.unshift((0, _preact.h)("div", {
113
97
  class: "map_title"
114
98
  }, button.map.title));
@@ -141,20 +125,17 @@ class Contact extends _common.Com {
141
125
  marginwidth: "0"
142
126
  }))))));
143
127
  }
144
-
145
128
  hideMap(e) {
146
129
  e.stopPropagation();
147
130
  this.setState({
148
131
  map: false
149
132
  });
150
133
  }
151
-
152
134
  showMap() {
153
135
  this.setState({
154
136
  map: true
155
137
  });
156
138
  }
157
-
158
139
  renderZaloButton(button) {
159
140
  let icon = (0, _preact.h)("svg", {
160
141
  width: "20px ",
@@ -175,7 +156,6 @@ class Contact extends _common.Com {
175
156
  class: "contact_button"
176
157
  }, icon);
177
158
  }
178
-
179
159
  renderFacebookButton(button) {
180
160
  let icon = (0, _preact.h)("svg", {
181
161
  width: "20px ",
@@ -196,11 +176,9 @@ class Contact extends _common.Com {
196
176
  class: "contact_button"
197
177
  }, icon);
198
178
  }
199
-
200
179
  renderChatButton() {
201
180
  return (0, _preact.h)("div", null, "Chat");
202
181
  }
203
-
204
182
  renderCallButton() {
205
183
  let icon = (0, _preact.h)("svg", {
206
184
  width: "20px",
@@ -231,19 +209,16 @@ class Contact extends _common.Com {
231
209
  return null;
232
210
  });
233
211
  }
234
-
235
212
  renderByLayoutSideByStandard() {
236
213
  let $buttons = this.renderButtons(this.props.plugin.contact.buttons);
237
214
  return (0, _preact.h)("div", null, $buttons);
238
215
  }
239
-
240
216
  renderLineComponent(com) {
241
217
  let style = Object.assign({}, com.style, this.props.mobile ? com.mobile_style : {});
242
218
  return (0, _preact.h)("div", {
243
219
  style: this.js2css(style)
244
220
  });
245
221
  }
246
-
247
222
  renderTextComponent(com) {
248
223
  let style = Object.assign({}, com.style, this.props.mobile ? com.mobile_style : {});
249
224
  return (0, _preact.h)("div", {
@@ -254,18 +229,14 @@ class Contact extends _common.Com {
254
229
  }
255
230
  });
256
231
  }
257
-
258
232
  async refreshCSS() {
259
233
  let css = (await CSS).default.default.toString();
260
234
  var outcss = replaceCssVariable(css, this.props.plugin.popup);
261
-
262
235
  _index.default.setCss(this.props.plugin.id, this.$cssStyleDiv, outcss);
263
-
264
236
  this.setState({
265
237
  cssready: true
266
238
  });
267
239
  }
268
-
269
240
  componentDidMount() {
270
241
  this.$cssStyleDiv = document.createElement('style');
271
242
  document.head.appendChild(this.$cssStyleDiv);
@@ -277,46 +248,34 @@ class Contact extends _common.Com {
277
248
  pluginjson: pluginstringify
278
249
  });
279
250
  }
280
-
281
251
  render() {
282
252
  if (!this.state.cssready) return null;
283
253
  let pluginstringify = JSON.stringify(this.props.plugin);
284
-
285
254
  if (this.state.pluginjson !== pluginstringify) {
286
255
  this.refreshCSS();
287
256
  setTimeout(() => this.setState({
288
257
  pluginjson: pluginstringify
289
258
  }));
290
259
  }
291
-
292
260
  if (this.state.close) return null;
293
261
  let containercss = '';
294
262
  let bodycss = '';
295
-
296
263
  let layout = _index.default.get(this.props.plugin, 'contact.layout', 'standard');
297
-
298
264
  let $body = null;
299
-
300
265
  if (layout === 'standard' || !layout) {
301
266
  $body = this.renderByLayoutSideByStandard();
302
267
  }
303
-
304
268
  if (layout === 'footer') {
305
269
  $body = this.renderByLayoutFooter(_index.default.get(this.props.plugin, `popup.pages.${this.state.pageIndex}`));
306
270
  }
307
-
308
271
  if (layout === 'mini') {
309
272
  $body = this.renderByLayoutMini(_index.default.get(this.props.plugin, `popup.pages.${this.state.pageIndex}`));
310
273
  }
311
-
312
274
  if (layout === 'docked') {
313
275
  $body = this.renderByLayoutDocked(_index.default.get(this.props.plugin, `popup.pages.${this.state.pageIndex}`));
314
276
  }
315
-
316
277
  let left, right, bottom, top, transform;
317
-
318
278
  let position = _index.default.get(this.props.plugin, 'contact.position', 'bottom-left');
319
-
320
279
  if (position === 'center-left') {
321
280
  left = '0';
322
281
  top = '50%';
@@ -338,7 +297,6 @@ class Contact extends _common.Com {
338
297
  left = '0';
339
298
  bottom = '20px';
340
299
  }
341
-
342
300
  return (0, _preact.h)("div", {
343
301
  style: _index.default.js2css({
344
302
  position: 'absolute',
@@ -355,20 +313,17 @@ class Contact extends _common.Com {
355
313
  onClick: e => e.stopPropagation()
356
314
  }, $body);
357
315
  }
358
-
359
316
  }
360
-
361
317
  exports.default = Contact;
362
-
363
318
  function isEmpty(value) {
364
319
  return value === undefined || value === null || value === '';
365
320
  }
366
-
367
321
  async function runCampaign(byTrigger) {
368
322
  if (ran && byTrigger !== 'area_clicked') return;
369
323
  ran = true;
370
324
  pageIndex = 0;
371
325
  let page = _index.default.get(camp, `pages.${pageIndex}`) || {};
326
+
372
327
  showPage(page);
373
328
  triggerType = byTrigger;
374
329
  let {
@@ -376,13 +331,12 @@ async function runCampaign(byTrigger) {
376
331
  } = await store.sendImpression(camp.id, byTrigger);
377
332
  impressionToken = _index.default.get(impression, 'impression_token') || '';
378
333
  }
379
-
380
334
  function eq(a, b) {
381
335
  return JSON.stringify(a) === JSON.stringify(b);
382
336
  }
383
-
384
337
  function replaceCssVariable(css, setting) {
385
338
  var tokens = [css];
339
+
386
340
  tokens = _index.default.tokenize(tokens, "'@font_family'");
387
341
  tokens = _index.default.tokenize(tokens, "'@font_size'");
388
342
  tokens = _index.default.tokenize(tokens, "'@text_color'");
@@ -393,10 +347,8 @@ function replaceCssVariable(css, setting) {
393
347
  tokens = _index.default.tokenize(tokens, "'@spacer2'");
394
348
  tokens = _index.default.tokenize(tokens, "'@spacer3'");
395
349
  var ret = [];
396
-
397
350
  for (var i = 0; i < tokens.length; i++) {
398
351
  var item = tokens[i];
399
-
400
352
  if (typeof item === 'string') {
401
353
  ret.push(item);
402
354
  continue;
@@ -406,10 +358,8 @@ function replaceCssVariable(css, setting) {
406
358
  var val = _index.default.get(setting, path) || _index.default.get(DEFVAL, path) || '';
407
359
  ret.push(val);
408
360
  }
409
-
410
361
  return ret.join('');
411
362
  }
412
-
413
363
  const DEFVAL = {
414
364
  font_size: '16px',
415
365
  font_family: 'roboto',
@@ -4,7 +4,5 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = void 0;
7
-
8
7
  var _default = require('css-loader!less-loader!../../assets/less/contact.less');
9
-
10
8
  exports.default = _default;
@@ -4,70 +4,68 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = void 0;
7
-
8
7
  var _store = _interopRequireDefault(require("./store/store.js"));
9
-
10
8
  var _index = _interopRequireDefault(require("./util/index.js"));
11
-
12
9
  var _plugin = _interopRequireDefault(require("./plugin.js"));
13
-
14
10
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
15
-
16
11
  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
17
-
18
12
  var $link = document.createElement('link');
19
13
  $link.href = 'https://fonts.googleapis.com/css2?family=Roboto:wght@400;500&display=swap';
20
14
  $link.rel = 'stylesheet';
21
15
  document.head.append($link);
22
-
23
16
  _index.default.preloadWebfonts(['Roboto'], [400, 500]);
24
-
25
17
  class Widget {
26
- constructor(ApiURL, FileURL, RealtimeURL, inmem, fake, agenttoken) {
18
+ constructor(ApiURL, FileURL, RealtimeURL, inmem, fake) {
27
19
  _defineProperty(this, "version", () => '4.5');
28
-
29
20
  _defineProperty(this, "setSetting", setting => this.store.setSetting({
30
21
  account_setting: setting
31
22
  }));
32
-
33
23
  _defineProperty(this, "getSetting", _ => ({
34
24
  account_setting: _index.default.cloneDeep(this.store.matchAccountSetting())
35
25
  }));
36
-
37
26
  _defineProperty(this, "getUser", () => _index.default.parseJSON(_index.default.stringify(this.store.matchUser())));
38
-
39
27
  _defineProperty(this, "setViewingProduct", p => this.store.linkProduct(p));
40
-
41
28
  _defineProperty(this, "getViewingProduct", () => this.store.getLinkedProduct());
42
-
43
29
  _defineProperty(this, "track", () => this.store.track());
44
-
45
30
  this.domGate = new _index.default.Gate();
46
- this.store = new _store.default(ApiURL, FileURL, RealtimeURL, inmem, fake, agenttoken);
31
+ this.store = new _store.default(ApiURL, FileURL, RealtimeURL, inmem, fake);
32
+
47
33
  window.sbz_store = this.store;
48
34
  this.subs = [];
49
35
  this.store.onConvoEvent({
50
36
  _isMounted: true
51
37
  }, ev => _index.default.map(this.subs, sub => sub(ev)));
52
38
  }
53
-
54
39
  setLang(obj) {
55
40
  var xhttp = new XMLHttpRequest();
56
41
  xhttp.open('GET', 'https://api.sbz.vn/4.0/oldlang', true);
57
42
  xhttp.send();
58
43
  }
59
-
60
44
  toggleLangDebugMode() {
61
45
  var xhttp = new XMLHttpRequest();
62
46
  xhttp.open('GET', 'https://api.sbz.vn/4.0/oldlangdebug', true);
63
47
  xhttp.send();
64
48
  }
65
-
66
49
  async waitReady(cb) {
67
50
  await this.store.readyGate.entry();
68
51
  cb();
69
52
  }
70
-
53
+ async cleanLogin(user_id, tokenGenerator) {}
54
+ async login(accid, user_id, tokenGenerator, $container) {
55
+ let user = await this.store.login(accid, user_id, tokenGenerator);
56
+ if (!$container) $container = document.body;
57
+ this.pluginMgr = new _plugin.default(this, $container);
58
+ let clean = setInterval(() => {
59
+ if ($container && $container.isConnected) return;
60
+ this.pluginMgr.destroy();
61
+ clearInterval(clean);
62
+ }, 1000);
63
+ this.domGate.open();
64
+ return user;
65
+ }
66
+ logout(accid) {
67
+ return this.store.logout();
68
+ }
71
69
  async setAccount(id, $container, mask, cb) {
72
70
  let outmask = await this.store.init(id, mask);
73
71
  if (!$container) $container = document.body;
@@ -85,7 +83,6 @@ class Widget {
85
83
  _setAccount(id, $con) {
86
84
  return this.setAccount(id, $con);
87
85
  }
88
-
89
86
  async updateUserAttributes(attributes) {
90
87
  await this.store.setUser({
91
88
  attributes
@@ -93,26 +90,21 @@ class Widget {
93
90
  var user = this.store.matchUser();
94
91
  return _index.default.cloneDeep(user.attributes);
95
92
  }
96
-
97
93
  async getUserAttributes() {
98
94
  await this.store.readyGate.entry();
99
95
  var user = this.store.matchUser();
100
96
  return _index.default.cloneDeep(_index.default.get(user, 'attributes', []));
101
97
  }
102
-
103
98
  async getWidgetCurrentView() {
104
99
  await this.domGate.entry();
105
100
  return this.pluginMgr.getCurrentView();
106
101
  }
107
-
108
102
  expandWidget(view, convo) {
109
103
  return this.showWidget(view, convo);
110
104
  }
111
-
112
105
  shrinkWidget() {
113
106
  return this.hideWidget();
114
107
  }
115
-
116
108
  async sendMessage(convoid, message) {
117
109
  if (!convoid) {
118
110
  const {
@@ -127,21 +119,17 @@ class Widget {
127
119
  };
128
120
  convoid = convo.id;
129
121
  }
130
-
131
122
  return this.store.sendConvoEvent(convoid, 'message_sent', {
132
123
  message
133
124
  });
134
125
  }
135
-
136
126
  startConvo(req) {
137
127
  return this.store.startConvo(req);
138
128
  }
139
-
140
129
  async showGreeting() {
141
130
  await this.domGate.entry();
142
131
  this.pluginMgr.showCurrentGreeting();
143
132
  }
144
-
145
133
  async hideGreeting() {
146
134
  await this.domGate.entry();
147
135
  this.pluginMgr.hideCurrentGreeting();
@@ -154,68 +142,53 @@ class Widget {
154
142
  cid: cid
155
143
  });
156
144
  }
157
-
158
145
  async hideWidget() {
159
146
  await this.domGate.entry();
160
147
  this.pluginMgr.hideCurrentChatbox();
161
148
  }
162
-
163
149
  async setLocale(locale) {
164
150
  await this.domGate.entry();
165
151
  return this.pluginMgr.setCurrentChatboxLocale(locale);
166
152
  }
167
-
168
153
  async setPluginLocale(id, locale) {
169
154
  await this.domGate.entry();
170
155
  return this.pluginMgr.setPluginLocale(id, locale);
171
156
  }
172
-
173
157
  _overrideDeviceType(type) {
174
158
  this.store.overrideDeviceType(type);
175
159
  }
176
-
177
160
  _overridePlugin(plugins) {
178
161
  this.store.overridePlugin(plugins);
179
162
  }
180
-
181
163
  _forceUpdateLang(id) {
182
164
  this.pluginMgr.forceUpdateLang(id);
183
165
  }
184
-
185
166
  _highlight(pluginid, ref) {
186
167
  this.store.highlight(pluginid, ref);
187
168
  }
188
-
189
169
  openPopup(pluginid) {
190
170
  this.pluginMgr.forceRunPopup(pluginid);
191
171
  }
192
-
193
172
  unEvent(cb) {
194
173
  this.subs = _index.default.filter(this.subs, sub => sub !== cb);
195
174
  }
196
-
197
175
  async countUnreadMessages() {
198
176
  await this.domGate.entry();
199
177
  return this.store.matchUnread();
200
178
  }
201
-
202
179
  onEvent(cb) {
203
180
  this.subs = _index.default.filter(this.subs, sub => sub !== cb);
204
181
  this.subs.push(cb);
205
182
  }
206
-
207
183
  overrideAccount(acc) {
208
184
  this.store.overrideAcc(acc);
209
185
  }
210
-
211
186
  async overrideChatbox(chatbox) {
212
187
  await this.store.overrideChatbox(chatbox);
213
-
214
188
  if (_index.default.get(chatbox, 'chatbox.greeting.greeting')) {
215
189
  this.pluginMgr.showCurrentGreeting();
216
190
  }
217
191
  }
218
-
219
192
  }
220
193
 
221
194
  window.__sbz_WIDGET = Widget;
@@ -4,7 +4,5 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = void 0;
7
-
8
7
  var _default = require('css-loader!less-loader!../../assets/less/notif.less');
9
-
10
8
  exports.default = _default;