@subiz/widget-v4 4.0.97 → 4.0.99

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 (78) hide show
  1. package/assets/less/chatbox.less +1 -1
  2. package/assets/less/notif.less +1 -1
  3. package/compiled_src/chatbox/ShadowDomRoot.js +1 -1
  4. package/compiled_src/chatbox/Widget.js +10 -18
  5. package/compiled_src/lib.js +2 -2
  6. package/compiled_src/store/store.js +20 -8
  7. package/dist/132.js +6645 -0
  8. package/dist/178.js +406 -0
  9. package/dist/213.js +2950 -0
  10. package/dist/335.js +376 -0
  11. package/dist/362.js +107 -0
  12. package/dist/441.js +2840 -0
  13. package/dist/605.js +297 -0
  14. package/dist/678.js +107 -0
  15. package/dist/782.js +107 -0
  16. package/dist/HASH +1 -0
  17. package/dist/assets/img/Facebook.64607ec.png +0 -0
  18. package/dist/assets/img/Zalo.6845707.png +0 -0
  19. package/dist/assets/img/bubble_default.7d5e4ab.svg +20 -0
  20. package/dist/assets/img/caret.998eb8f.svg +1 -0
  21. package/dist/assets/img/convos_empty.2353007.svg +72 -0
  22. package/dist/assets/img/default.06e6ee0.jpg +0 -0
  23. package/dist/assets/img/default_avatar.5b74dc1.png +0 -0
  24. package/dist/assets/img/done_gray.d7e8203.svg +4 -0
  25. package/dist/assets/img/done_green.b817fd4.svg +4 -0
  26. package/dist/assets/img/emoji/messenger/sub_23.529_58.824.d5faf14.png +0 -0
  27. package/dist/assets/img/emoji/messenger/sub_23.529_60.784.1420241.png +0 -0
  28. package/dist/assets/img/emoji/messenger/sub_25.490_0.000.1e6b2c0.png +0 -0
  29. package/dist/assets/img/emoji/messenger/sub_25.490_45.098.3dfbc08.png +0 -0
  30. package/dist/assets/img/emoji/messenger/sub_25.490_5.882.4b49e94.png +0 -0
  31. package/dist/assets/img/emoji/messenger/sub_27.451_72.549.7114f58.png +0 -0
  32. package/dist/assets/img/emoji/messenger/sub_27.451_84.314.231e2b7.png +0 -0
  33. package/dist/assets/img/emoji/messenger/sub_27.451_96.078.ddbb008.png +0 -0
  34. package/dist/assets/img/emoji/messenger/sub_29.412_5.882.61f3359.png +0 -0
  35. package/dist/assets/img/emoji/messenger/sub_58.824_100.000.6df72bc.png +0 -0
  36. package/dist/assets/img/emoji/messenger/sub_58.824_45.098.3d7a7ad.png +0 -0
  37. package/dist/assets/img/emoji/messenger/sub_58.824_47.059.0f4d6e2.png +0 -0
  38. package/dist/assets/img/emoji/messenger/sub_58.824_54.902.65724c1.png +0 -0
  39. package/dist/assets/img/emoji/messenger/sub_58.824_64.706.9da3cba.png +0 -0
  40. package/dist/assets/img/emoji/messenger/sub_58.824_72.549.edca5cf.png +0 -0
  41. package/dist/assets/img/emoji/messenger/sub_58.824_78.431.f910f2a.png +0 -0
  42. package/dist/assets/img/emoji/messenger/sub_58.824_88.235.def4e71.png +0 -0
  43. package/dist/assets/img/emoji/messenger/sub_60.784_11.765.49c03d0.png +0 -0
  44. package/dist/assets/img/emoji/messenger/sub_60.784_27.451.46b54e5.png +0 -0
  45. package/dist/assets/img/emoji/messenger/sub_60.784_29.412.e36d284.png +0 -0
  46. package/dist/assets/img/emoji/messenger/sub_60.784_3.922.bb191b0.png +0 -0
  47. package/dist/assets/img/emoji/messenger/sub_60.784_35.294.af7b927.png +0 -0
  48. package/dist/assets/img/emoji/messenger/sub_60.784_7.843.98f2a99.png +0 -0
  49. package/dist/assets/img/empty.29bed2d.svg +23 -0
  50. package/dist/assets/img/empty_1.0b98af0.svg +11 -0
  51. package/dist/assets/img/external-link.90577cc.svg +1 -0
  52. package/dist/assets/img/fb_inverse_circle.36c2cfc.png +0 -0
  53. package/dist/assets/img/ghn.070f8e3.svg +17 -0
  54. package/dist/assets/img/ghtk.326eac1.svg +18 -0
  55. package/dist/assets/img/image_default.be0698b.png +0 -0
  56. package/dist/assets/img/info.ebce7ea.svg +1 -0
  57. package/dist/assets/img/loader.37000a7.svg +1 -0
  58. package/dist/assets/img/loading_static.8f403ae.svg +10 -0
  59. package/dist/assets/img/not_found_search.2ddb8d1.png +0 -0
  60. package/dist/assets/img/package.8d37d0f.svg +5 -0
  61. package/dist/assets/img/package_fade.763c001.svg +1 -0
  62. package/dist/assets/img/rating--average.1ea492c.svg +12 -0
  63. package/dist/assets/img/rating--great.e3d712e.svg +16 -0
  64. package/dist/assets/img/rating--poor.2938a25.svg +12 -0
  65. package/dist/assets/img/search.f9705ff.svg +1 -0
  66. package/dist/assets/img/send.6db52a9.svg +3 -0
  67. package/dist/assets/img/shop.f7dc7d8.svg +1 -0
  68. package/dist/assets/img/shop_faded.df7845a.svg +1 -0
  69. package/dist/assets/img/subiz-mono.877e9f5.svg +3 -0
  70. package/dist/assets/img/x.26fdfa3.svg +5 -0
  71. package/dist/malicious-app.js +13 -0
  72. package/dist/screenshoot.html +7 -0
  73. package/dist/screenshoot.js +5689 -0
  74. package/package.json +2 -2
  75. package/src/chatbox/ShadowDomRoot.js +1 -1
  76. package/src/chatbox/Widget.js +6 -10
  77. package/src/lib.js +2 -2
  78. package/src/store/store.js +20 -8
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@subiz/widget-v4",
3
- "version": "4.0.97",
3
+ "version": "4.0.99",
4
4
  "main": "./compiled_src/lib.js",
5
5
  "scripts": {
6
6
  "dev": "npx webpack serve --config webpack.dev.js",
@@ -24,7 +24,7 @@
24
24
  },
25
25
  "devDependencies": {
26
26
  "@babel/cli": "^7.19.3",
27
- "@babel/core": "^7.20.2",
27
+ "@babel/core": "^7.20.5",
28
28
  "@babel/plugin-proposal-class-properties": "^7.18.6",
29
29
  "@babel/plugin-transform-react-jsx": "^7.19.0",
30
30
  "@babel/preset-env": "^7.20.2",
@@ -14,7 +14,7 @@ export default class ShadowDomRoot extends Com {
14
14
 
15
15
  update (html) {
16
16
  this.shadowRoot.innerHTML = `<style type="text/css">
17
- body { font-family: 'Roboto', sans-serif!important; font-size: 14px!important; line-height: 20px; overflow-y: hidden; margin:0 }
17
+ body { font-family: 'Inter', sans-serif!important; font-size: 14px!important; line-height: 20px; overflow-y: hidden; margin:0 }
18
18
  h{ font-size: 14/18px!important; }
19
19
  a { text-decoration: none;}
20
20
  img { max-width: 100%; display: block; margin: 10px auto; }
@@ -875,18 +875,13 @@ export default class Widget extends Com {
875
875
 
876
876
  var $you = null
877
877
  if (convo.lastSenderType === 'user') {
878
- $you = <span class='yourmessage'>{this.props.t('you')}:</span>
878
+ $you = <span>{this.props.t('you')}:</span>
879
879
  }
880
880
 
881
881
  let seen = sb.isConvoSeen(convo, this.props.store.matchUser().id)
882
- var lastmsg = this.renderMessagePreview(convo.last_message_sent || {data: {message: sb.get(convo, 'last_message')}})
883
-
884
- var time =
885
- sb.getMs(sb.get(convo, 'last_message_sent.created')) ||
886
- sb.getMs(sb.get(convo, 'last_sent.created')) ||
887
- sb.getMs(convo.created)
888
- var $tim = <Time ago time={time} key={time} short />
882
+ var lastmsg = this.renderMessagePreview(convo.last_message_sent)
889
883
 
884
+ var time = sb.getMs(sb.get(convo, 'last_message_sent.created')) || sb.getMs(convo.created)
890
885
  let $unread = seen ? null : <div class='convo-list--item-unread'></div>
891
886
  if (convo.state === 'ended') {
892
887
  $unread = (
@@ -903,7 +898,9 @@ export default class Widget extends Com {
903
898
  <div class='convo-list--convo-last-info'>
904
899
  <div class='d-flex flex-row'>
905
900
  <div class='convo-list--convo-name'>{name}</div>
906
- <div class='convo-list--convo-time'>{$tim}</div>
901
+ <div class='convo-list--convo-time'>
902
+ <Time ago time={time} key={time} short />
903
+ </div>
907
904
  </div>
908
905
 
909
906
  <div class='d-flex flex-row'>
@@ -925,7 +922,6 @@ export default class Widget extends Com {
925
922
 
926
923
  renderMessagePreview(ev) {
927
924
  let defmsg = this.props.t('sent_you_a_message')
928
-
929
925
  let message = sb.get(ev, 'data.message.text')
930
926
  var format = sb.get(ev, 'data.message.format')
931
927
 
package/src/lib.js CHANGED
@@ -3,11 +3,11 @@ import sb from './util/index.js'
3
3
  import PluginMgr from './plugin.js'
4
4
 
5
5
  var $link = document.createElement('link')
6
- $link.href = 'https://fonts.googleapis.com/css2?family=Roboto:wght@400;500&display=swap'
6
+ $link.href = 'https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&display=swap'
7
7
  $link.rel = 'stylesheet'
8
8
  document.head.append($link)
9
9
 
10
- sb.preloadWebfonts(['Roboto'], [400, 500])
10
+ sb.preloadWebfonts(['Inter'], [400, 500, 600])
11
11
 
12
12
  class Widget {
13
13
  constructor(ApiURL, FileURL, RealtimeURL, inmem, fake) {
@@ -310,6 +310,7 @@ export default class Store {
310
310
  readyGate = new sb.Gate()
311
311
  convoGate = new sb.Gate(true)
312
312
  reconnectGate = new sb.Gate(true)
313
+ wsGate = new sb.Gate(true)
313
314
 
314
315
  // last widget screen
315
316
  matchLastview = () => this.kv.match('lastview') || {}
@@ -646,6 +647,13 @@ export default class Store {
646
647
  matchTrafficSource = () => this.kv.match('traffic_source')
647
648
 
648
649
  async onWs(ev) {
650
+ await this.wsGate.entry()
651
+ this.wsGate.close()
652
+ await this._onWs(ev)
653
+ this.wsGate.open()
654
+ }
655
+
656
+ async _onWs(ev) {
649
657
  if (!ev || !ev.type) return
650
658
  ev.created = sb.getMs(ev.created)
651
659
  if (ev.type === 'user_info_updated') {
@@ -660,12 +668,16 @@ export default class Store {
660
668
  let user = this.kv.match('user') || {}
661
669
  let cid = sb.convoOfEv(ev)
662
670
  let convo
671
+
672
+ let alreadyFetched = false
663
673
  if (cid) {
664
- convo = this.matchConvo(cid)
674
+ convo = this.cache.match('convo_' + cid)
665
675
  if (!convo || !convo.id) {
666
676
  let {body: apiconvo, error} = await this.api.getConversation(cid)
667
677
  if (!apiconvo) return
668
678
  convo = apiconvo
679
+ alreadyFetched = true
680
+ this._setConvo(convo)
669
681
  }
670
682
  }
671
683
 
@@ -685,14 +697,14 @@ export default class Store {
685
697
  if (me) {
686
698
  await this.chain.reload(cid, (type, anchor, limit) => this.listmessageapi(type, anchor, limit))
687
699
  this.markSync('events' + cid)
688
-
689
- let {body: apiconvo} = await this.api.getConversation(cid)
690
- if (apiconvo) {
691
- convo = apiconvo
692
- this._setConvo(convo)
700
+ if (!alreadyFetched) {
701
+ let {body: apiconvo} = await this.api.getConversation(cid)
702
+ if (apiconvo) {
703
+ convo = apiconvo
704
+ this._setConvo(convo)
705
+ }
706
+ this.pubsub.publish('account')
693
707
  }
694
-
695
- this.pubsub.publish('account')
696
708
  }
697
709
  }
698
710