@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.
- package/assets/less/chatbox.less +1 -1
- package/assets/less/notif.less +1 -1
- package/compiled_src/chatbox/ShadowDomRoot.js +1 -1
- package/compiled_src/chatbox/Widget.js +10 -18
- package/compiled_src/lib.js +2 -2
- package/compiled_src/store/store.js +20 -8
- package/dist/132.js +6645 -0
- package/dist/178.js +406 -0
- package/dist/213.js +2950 -0
- package/dist/335.js +376 -0
- package/dist/362.js +107 -0
- package/dist/441.js +2840 -0
- package/dist/605.js +297 -0
- package/dist/678.js +107 -0
- package/dist/782.js +107 -0
- package/dist/HASH +1 -0
- package/dist/assets/img/Facebook.64607ec.png +0 -0
- package/dist/assets/img/Zalo.6845707.png +0 -0
- package/dist/assets/img/bubble_default.7d5e4ab.svg +20 -0
- package/dist/assets/img/caret.998eb8f.svg +1 -0
- package/dist/assets/img/convos_empty.2353007.svg +72 -0
- package/dist/assets/img/default.06e6ee0.jpg +0 -0
- package/dist/assets/img/default_avatar.5b74dc1.png +0 -0
- package/dist/assets/img/done_gray.d7e8203.svg +4 -0
- package/dist/assets/img/done_green.b817fd4.svg +4 -0
- package/dist/assets/img/emoji/messenger/sub_23.529_58.824.d5faf14.png +0 -0
- package/dist/assets/img/emoji/messenger/sub_23.529_60.784.1420241.png +0 -0
- package/dist/assets/img/emoji/messenger/sub_25.490_0.000.1e6b2c0.png +0 -0
- package/dist/assets/img/emoji/messenger/sub_25.490_45.098.3dfbc08.png +0 -0
- package/dist/assets/img/emoji/messenger/sub_25.490_5.882.4b49e94.png +0 -0
- package/dist/assets/img/emoji/messenger/sub_27.451_72.549.7114f58.png +0 -0
- package/dist/assets/img/emoji/messenger/sub_27.451_84.314.231e2b7.png +0 -0
- package/dist/assets/img/emoji/messenger/sub_27.451_96.078.ddbb008.png +0 -0
- package/dist/assets/img/emoji/messenger/sub_29.412_5.882.61f3359.png +0 -0
- package/dist/assets/img/emoji/messenger/sub_58.824_100.000.6df72bc.png +0 -0
- package/dist/assets/img/emoji/messenger/sub_58.824_45.098.3d7a7ad.png +0 -0
- package/dist/assets/img/emoji/messenger/sub_58.824_47.059.0f4d6e2.png +0 -0
- package/dist/assets/img/emoji/messenger/sub_58.824_54.902.65724c1.png +0 -0
- package/dist/assets/img/emoji/messenger/sub_58.824_64.706.9da3cba.png +0 -0
- package/dist/assets/img/emoji/messenger/sub_58.824_72.549.edca5cf.png +0 -0
- package/dist/assets/img/emoji/messenger/sub_58.824_78.431.f910f2a.png +0 -0
- package/dist/assets/img/emoji/messenger/sub_58.824_88.235.def4e71.png +0 -0
- package/dist/assets/img/emoji/messenger/sub_60.784_11.765.49c03d0.png +0 -0
- package/dist/assets/img/emoji/messenger/sub_60.784_27.451.46b54e5.png +0 -0
- package/dist/assets/img/emoji/messenger/sub_60.784_29.412.e36d284.png +0 -0
- package/dist/assets/img/emoji/messenger/sub_60.784_3.922.bb191b0.png +0 -0
- package/dist/assets/img/emoji/messenger/sub_60.784_35.294.af7b927.png +0 -0
- package/dist/assets/img/emoji/messenger/sub_60.784_7.843.98f2a99.png +0 -0
- package/dist/assets/img/empty.29bed2d.svg +23 -0
- package/dist/assets/img/empty_1.0b98af0.svg +11 -0
- package/dist/assets/img/external-link.90577cc.svg +1 -0
- package/dist/assets/img/fb_inverse_circle.36c2cfc.png +0 -0
- package/dist/assets/img/ghn.070f8e3.svg +17 -0
- package/dist/assets/img/ghtk.326eac1.svg +18 -0
- package/dist/assets/img/image_default.be0698b.png +0 -0
- package/dist/assets/img/info.ebce7ea.svg +1 -0
- package/dist/assets/img/loader.37000a7.svg +1 -0
- package/dist/assets/img/loading_static.8f403ae.svg +10 -0
- package/dist/assets/img/not_found_search.2ddb8d1.png +0 -0
- package/dist/assets/img/package.8d37d0f.svg +5 -0
- package/dist/assets/img/package_fade.763c001.svg +1 -0
- package/dist/assets/img/rating--average.1ea492c.svg +12 -0
- package/dist/assets/img/rating--great.e3d712e.svg +16 -0
- package/dist/assets/img/rating--poor.2938a25.svg +12 -0
- package/dist/assets/img/search.f9705ff.svg +1 -0
- package/dist/assets/img/send.6db52a9.svg +3 -0
- package/dist/assets/img/shop.f7dc7d8.svg +1 -0
- package/dist/assets/img/shop_faded.df7845a.svg +1 -0
- package/dist/assets/img/subiz-mono.877e9f5.svg +3 -0
- package/dist/assets/img/x.26fdfa3.svg +5 -0
- package/dist/malicious-app.js +13 -0
- package/dist/screenshoot.html +7 -0
- package/dist/screenshoot.js +5689 -0
- package/package.json +2 -2
- package/src/chatbox/ShadowDomRoot.js +1 -1
- package/src/chatbox/Widget.js +6 -10
- package/src/lib.js +2 -2
- package/src/store/store.js +20 -8
package/assets/less/chatbox.less
CHANGED
|
@@ -34,7 +34,7 @@
|
|
|
34
34
|
@spacer3: @spacer; // 15px;
|
|
35
35
|
@spacer4: @spacer * 1.5; // 22.5px
|
|
36
36
|
|
|
37
|
-
@font-family-sans-serif:
|
|
37
|
+
@font-family-sans-serif: Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Helvetica Neue', Arial,
|
|
38
38
|
sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';
|
|
39
39
|
|
|
40
40
|
@font-size-base: 15px; // Assumes the browser default, typically `16px`
|
package/assets/less/notif.less
CHANGED
|
@@ -19,7 +19,7 @@ class ShadowDomRoot extends _common.Com {
|
|
|
19
19
|
}
|
|
20
20
|
update(html) {
|
|
21
21
|
this.shadowRoot.innerHTML = `<style type="text/css">
|
|
22
|
-
body { font-family: '
|
|
22
|
+
body { font-family: 'Inter', sans-serif!important; font-size: 14px!important; line-height: 20px; overflow-y: hidden; margin:0 }
|
|
23
23
|
h{ font-size: 14/18px!important; }
|
|
24
24
|
a { text-decoration: none;}
|
|
25
25
|
img { max-width: 100%; display: block; margin: 10px auto; }
|
|
@@ -790,8 +790,7 @@ class Widget extends _common.Com {
|
|
|
790
790
|
_index.default.each(formData, field => {
|
|
791
791
|
if (field.value) isAllFiledEmpty = false;
|
|
792
792
|
});
|
|
793
|
-
if (isAllFiledEmpty) return true;
|
|
794
|
-
|
|
793
|
+
if (isAllFiledEmpty && !this.userHasSent(this.props.cid)) return true;
|
|
795
794
|
return !!_index.default.find(formData, field => field.is_required && (field.value == null || field.value === ''));
|
|
796
795
|
}
|
|
797
796
|
renderConvoSummary(convo) {
|
|
@@ -811,23 +810,11 @@ class Widget extends _common.Com {
|
|
|
811
810
|
if (!name) name = this.props.t('agent');
|
|
812
811
|
var $you = null;
|
|
813
812
|
if (convo.lastSenderType === 'user') {
|
|
814
|
-
$you = (0, _preact.h)("span",
|
|
815
|
-
class: "yourmessage"
|
|
816
|
-
}, this.props.t('you'), ":");
|
|
813
|
+
$you = (0, _preact.h)("span", null, this.props.t('you'), ":");
|
|
817
814
|
}
|
|
818
815
|
let seen = _index.default.isConvoSeen(convo, this.props.store.matchUser().id);
|
|
819
|
-
var lastmsg = this.renderMessagePreview(convo.last_message_sent
|
|
820
|
-
|
|
821
|
-
message: _index.default.get(convo, 'last_message')
|
|
822
|
-
}
|
|
823
|
-
});
|
|
824
|
-
var time = _index.default.getMs(_index.default.get(convo, 'last_message_sent.created')) || _index.default.getMs(_index.default.get(convo, 'last_sent.created')) || _index.default.getMs(convo.created);
|
|
825
|
-
var $tim = (0, _preact.h)(_time.default, {
|
|
826
|
-
ago: true,
|
|
827
|
-
time: time,
|
|
828
|
-
key: time,
|
|
829
|
-
short: true
|
|
830
|
-
});
|
|
816
|
+
var lastmsg = this.renderMessagePreview(convo.last_message_sent);
|
|
817
|
+
var time = _index.default.getMs(_index.default.get(convo, 'last_message_sent.created')) || _index.default.getMs(convo.created);
|
|
831
818
|
let $unread = seen ? null : (0, _preact.h)("div", {
|
|
832
819
|
class: "convo-list--item-unread"
|
|
833
820
|
});
|
|
@@ -847,7 +834,12 @@ class Widget extends _common.Com {
|
|
|
847
834
|
class: "convo-list--convo-name"
|
|
848
835
|
}, name), (0, _preact.h)("div", {
|
|
849
836
|
class: "convo-list--convo-time"
|
|
850
|
-
},
|
|
837
|
+
}, (0, _preact.h)(_time.default, {
|
|
838
|
+
ago: true,
|
|
839
|
+
time: time,
|
|
840
|
+
key: time,
|
|
841
|
+
short: true
|
|
842
|
+
}))), (0, _preact.h)("div", {
|
|
851
843
|
class: "d-flex flex-row"
|
|
852
844
|
}, (0, _preact.h)("div", {
|
|
853
845
|
class: "convo-list--convo-last-message"
|
package/compiled_src/lib.js
CHANGED
|
@@ -10,10 +10,10 @@ var _plugin = _interopRequireDefault(require("./plugin.js"));
|
|
|
10
10
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
11
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; }
|
|
12
12
|
var $link = document.createElement('link');
|
|
13
|
-
$link.href = 'https://fonts.googleapis.com/css2?family=
|
|
13
|
+
$link.href = 'https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&display=swap';
|
|
14
14
|
$link.rel = 'stylesheet';
|
|
15
15
|
document.head.append($link);
|
|
16
|
-
_index.default.preloadWebfonts(['
|
|
16
|
+
_index.default.preloadWebfonts(['Inter'], [400, 500, 600]);
|
|
17
17
|
class Widget {
|
|
18
18
|
constructor(ApiURL, FileURL, RealtimeURL, inmem, fake) {
|
|
19
19
|
_defineProperty(this, "version", () => '4.5');
|
|
@@ -109,6 +109,7 @@ class Store {
|
|
|
109
109
|
_defineProperty(this, "readyGate", new _index.default.Gate());
|
|
110
110
|
_defineProperty(this, "convoGate", new _index.default.Gate(true));
|
|
111
111
|
_defineProperty(this, "reconnectGate", new _index.default.Gate(true));
|
|
112
|
+
_defineProperty(this, "wsGate", new _index.default.Gate(true));
|
|
112
113
|
_defineProperty(this, "matchLastview", () => this.kv.match('lastview') || {});
|
|
113
114
|
_defineProperty(this, "matchIsOpen", () => !!this.kv.match('isopen'));
|
|
114
115
|
_defineProperty(this, "matchHasManuallyClosed", () => !!this.kv.match('hasManuallyClosed'));
|
|
@@ -538,6 +539,12 @@ class Store {
|
|
|
538
539
|
if (traffic_source) this.kv.put('traffic_source', traffic_source);
|
|
539
540
|
}
|
|
540
541
|
async onWs(ev) {
|
|
542
|
+
await this.wsGate.entry();
|
|
543
|
+
this.wsGate.close();
|
|
544
|
+
await this._onWs(ev);
|
|
545
|
+
this.wsGate.open();
|
|
546
|
+
}
|
|
547
|
+
async _onWs(ev) {
|
|
541
548
|
if (!ev || !ev.type) return;
|
|
542
549
|
ev.created = _index.default.getMs(ev.created);
|
|
543
550
|
if (ev.type === 'user_info_updated') {
|
|
@@ -551,8 +558,9 @@ class Store {
|
|
|
551
558
|
let user = this.kv.match('user') || {};
|
|
552
559
|
let cid = _index.default.convoOfEv(ev);
|
|
553
560
|
let convo;
|
|
561
|
+
let alreadyFetched = false;
|
|
554
562
|
if (cid) {
|
|
555
|
-
convo = this.
|
|
563
|
+
convo = this.cache.match('convo_' + cid);
|
|
556
564
|
if (!convo || !convo.id) {
|
|
557
565
|
let {
|
|
558
566
|
body: apiconvo,
|
|
@@ -560,6 +568,8 @@ class Store {
|
|
|
560
568
|
} = await this.api.getConversation(cid);
|
|
561
569
|
if (!apiconvo) return;
|
|
562
570
|
convo = apiconvo;
|
|
571
|
+
alreadyFetched = true;
|
|
572
|
+
this._setConvo(convo);
|
|
563
573
|
}
|
|
564
574
|
}
|
|
565
575
|
if (!convo) return;
|
|
@@ -574,14 +584,16 @@ class Store {
|
|
|
574
584
|
if (me) {
|
|
575
585
|
await this.chain.reload(cid, (type, anchor, limit) => this.listmessageapi(type, anchor, limit));
|
|
576
586
|
this.markSync('events' + cid);
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
|
|
587
|
+
if (!alreadyFetched) {
|
|
588
|
+
let {
|
|
589
|
+
body: apiconvo
|
|
590
|
+
} = await this.api.getConversation(cid);
|
|
591
|
+
if (apiconvo) {
|
|
592
|
+
convo = apiconvo;
|
|
593
|
+
this._setConvo(convo);
|
|
594
|
+
}
|
|
595
|
+
this.pubsub.publish('account');
|
|
583
596
|
}
|
|
584
|
-
this.pubsub.publish('account');
|
|
585
597
|
}
|
|
586
598
|
}
|
|
587
599
|
if (ev.type === 'message_sent') {
|