@subiz/widget-v4 4.1.78 → 4.1.79
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/compiled_src/bot.js +1 -1
- package/compiled_src/call/call.js +2 -2
- package/compiled_src/chatbox/AgentsAvatar.js +1 -1
- package/compiled_src/chatbox/AudioAttachments.js +1 -1
- package/compiled_src/chatbox/ButtonAttachments.js +1 -1
- package/compiled_src/chatbox/Buttons.js +1 -1
- package/compiled_src/chatbox/ChatButton.js +1 -1
- package/compiled_src/chatbox/DropdownSelect.js +2 -2
- package/compiled_src/chatbox/Emoji.js +1 -1
- package/compiled_src/chatbox/Event.js +1 -1
- package/compiled_src/chatbox/Events.js +1 -1
- package/compiled_src/chatbox/FileAttachments.js +1 -1
- package/compiled_src/chatbox/FormAttachment.js +1 -1
- package/compiled_src/chatbox/FormAttachments.js +1 -1
- package/compiled_src/chatbox/FormSubmitAttachments.js +1 -1
- package/compiled_src/chatbox/GenericTemplateAttachments.js +1 -1
- package/compiled_src/chatbox/Header.js +1 -1
- package/compiled_src/chatbox/ImageAttachments.js +2 -2
- package/compiled_src/chatbox/InfoMessage.js +1 -1
- package/compiled_src/chatbox/ListField.js +1 -1
- package/compiled_src/chatbox/MessageInput.js +2 -2
- package/compiled_src/chatbox/Order.js +2 -2
- package/compiled_src/chatbox/OrderAttachments.js +1 -1
- package/compiled_src/chatbox/ProductAttachments.js +1 -1
- package/compiled_src/chatbox/QuickReplies.js +1 -1
- package/compiled_src/chatbox/Rating.js +2 -2
- package/compiled_src/chatbox/TextMessage.js +1 -1
- package/compiled_src/chatbox/Typing.js +1 -1
- package/compiled_src/chatbox/VideoAttachments.js +1 -1
- package/compiled_src/chatbox/Widget.js +2 -2
- package/compiled_src/chatbox/main.js +1 -1
- package/compiled_src/chatbox/releaseAnimation.js +1 -1
- package/compiled_src/chatbox/time.js +1 -1
- package/compiled_src/common.js +1 -1
- package/compiled_src/contact/contact.js +2 -2
- package/compiled_src/lib.js +2 -2
- package/compiled_src/notif/notif.js +2 -2
- package/compiled_src/order/address_picker.js +2 -2
- package/compiled_src/order/icon.js +1 -1
- package/compiled_src/order/index.js +1 -1
- package/compiled_src/order/order.js +2 -2
- package/compiled_src/plugin.js +1 -1
- package/compiled_src/popup/countdown.js +2 -2
- package/compiled_src/popup/popup.js +2 -2
- package/compiled_src/popup/tick.core.commonjs.js +1 -1
- package/compiled_src/store/api.js +2 -2
- package/compiled_src/store/api_fake.js +2 -2
- package/compiled_src/store/store.js +35 -19
- package/dist/127.js +273 -0
- package/dist/132.js +2796 -0
- package/dist/185.js +1885 -0
- package/dist/18ffe1df25b.127.js +1 -0
- package/dist/18ffe1df25b.132.js +1 -0
- package/dist/18ffe1df25b.185.js +1 -0
- package/dist/18ffe1df25b.27.js +1 -0
- package/dist/18ffe1df25b.278.js +1 -0
- package/dist/18ffe1df25b.459.js +1 -0
- package/dist/18ffe1df25b.490.js +1 -0
- package/dist/18ffe1df25b.74.js +1 -0
- package/dist/18ffe1df25b.997.js +1 -0
- package/dist/18ffe1df25b.app.js +1 -0
- package/dist/18ffe1df25b.index.html +33 -0
- package/dist/18ffe1df25b.library.html +33 -0
- package/dist/18ffe1df25b.library.js +1 -0
- package/dist/18ffe1df25b.preview.html +759 -0
- package/dist/18ffe1df25b.preview.js +1 -0
- package/dist/18ffe1df25b.screenshoot.js +1 -0
- package/dist/18ffe1df25b.webview.js +1 -0
- package/dist/27.js +107 -0
- package/dist/278.js +406 -0
- package/dist/459.js +107 -0
- package/dist/490.js +304 -0
- package/dist/74.js +372 -0
- package/dist/997.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/award1a.1a58e10.png +0 -0
- package/dist/assets/img/award3a.3b74423.png +0 -0
- package/dist/assets/img/award4a.ed6ccd4.png +0 -0
- package/dist/assets/img/award5.39eb7ae.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/examplte_logo.f86535f.svg +1 -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.a27f0ac.svg +10 -0
- package/dist/assets/img/main-service1.d536cc2.png +0 -0
- package/dist/assets/img/main-service2.9b99549.png +0 -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 +15 -0
- package/dist/screenshoot.html +7 -0
- package/dist/screenshoot.js +10415 -0
- package/package.json +6 -6
- package/src/chatbox/Events.js +1 -1
- package/src/store/store.js +40 -20
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@subiz/widget-v4",
|
|
3
|
-
"version": "4.1.
|
|
3
|
+
"version": "4.1.79",
|
|
4
4
|
"main": "./compiled_src/lib.js",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"dev": "npx webpack serve --config webpack.dev.js",
|
|
@@ -22,15 +22,15 @@
|
|
|
22
22
|
"preact": "10.19.3"
|
|
23
23
|
},
|
|
24
24
|
"devDependencies": {
|
|
25
|
-
"@babel/cli": "^7.24.
|
|
26
|
-
"@babel/core": "^7.24.
|
|
25
|
+
"@babel/cli": "^7.24.7",
|
|
26
|
+
"@babel/core": "^7.24.7",
|
|
27
27
|
"@babel/plugin-proposal-class-properties": "^7.18.6",
|
|
28
|
-
"@babel/plugin-transform-react-jsx": "^7.
|
|
29
|
-
"@babel/preset-env": "^7.24.
|
|
28
|
+
"@babel/plugin-transform-react-jsx": "^7.24.7",
|
|
29
|
+
"@babel/preset-env": "^7.24.7",
|
|
30
30
|
"babel-loader": "^9.1.3",
|
|
31
31
|
"babel-plugin-syntax-jsx": "^6.18.0",
|
|
32
32
|
"html-webpack-plugin": "^5.6.0",
|
|
33
|
-
"puppeteer": "^22.
|
|
33
|
+
"puppeteer": "^22.10.0",
|
|
34
34
|
"webpack": "^5.91.0",
|
|
35
35
|
"webpack-bundle-analyzer": "^4.10.2",
|
|
36
36
|
"webpack-cli": "^5.1.4",
|
package/src/chatbox/Events.js
CHANGED
|
@@ -161,6 +161,7 @@ export default class Events extends Com {
|
|
|
161
161
|
let events = this.props.store.listEvents(this.props.cid)
|
|
162
162
|
if (sb.size(events) === 0) {
|
|
163
163
|
let cid = this.props.cid
|
|
164
|
+
|
|
164
165
|
let {error} = await this.props.store.fetchMoreEvents(cid)
|
|
165
166
|
this.setState({loading: false})
|
|
166
167
|
if (cid !== this.props.cid) return // out dated
|
|
@@ -173,7 +174,6 @@ export default class Events extends Com {
|
|
|
173
174
|
this.props.store.fetchMoreEvents(this.props.cid)
|
|
174
175
|
this.setState({error: false})
|
|
175
176
|
this.scrollToBottom()
|
|
176
|
-
|
|
177
177
|
sb.setTimeout(() => this.setState({loading: false}), 50)
|
|
178
178
|
}
|
|
179
179
|
|
package/src/store/store.js
CHANGED
|
@@ -316,26 +316,39 @@ export default class Store {
|
|
|
316
316
|
list_districts = (p) => this.api.list_districts(p)
|
|
317
317
|
list_wards = (p) => this.api.list_wards(p)
|
|
318
318
|
|
|
319
|
+
outofmsgM = {}
|
|
320
|
+
|
|
319
321
|
listEvents = (id) => {
|
|
320
322
|
if (!id || id === '*' || typeof id !== 'string') return
|
|
321
|
-
if (!this.isInsync('events' + id)) {
|
|
322
|
-
sb.setTimeout(async () => {
|
|
323
|
-
await this.readyGate.entry()
|
|
324
|
-
await this.reconnectGate.entry(undefined, true)
|
|
325
|
-
if (this.isInsync('events' + id)) return this.reconnectGate.open()
|
|
326
|
-
this.markSync('events' + id)
|
|
327
|
-
await this.chain.reload(id, (type, anchor, limit) => this.listmessageapi(type, anchor, limit))
|
|
328
|
-
this.pubsub.publish('account')
|
|
329
|
-
return this.reconnectGate.open()
|
|
330
|
-
}, 10)
|
|
331
|
-
}
|
|
332
323
|
return this.chain.listM(id)
|
|
333
324
|
}
|
|
334
325
|
|
|
335
326
|
fetchMoreEvents = async (convoid) => {
|
|
336
|
-
|
|
337
|
-
this.
|
|
338
|
-
|
|
327
|
+
if (!this.isInsync('events' + convoid)) {
|
|
328
|
+
await this.readyGate.entry()
|
|
329
|
+
await this.reconnectGate.entry(undefined, true)
|
|
330
|
+
if (this.isInsync('events' + convoid)) return this.reconnectGate.open()
|
|
331
|
+
this.markSync('events' + convoid)
|
|
332
|
+
|
|
333
|
+
// reset anchor
|
|
334
|
+
await this.chain.reload(convoid, () => {
|
|
335
|
+
return [[], '']
|
|
336
|
+
})
|
|
337
|
+
let out = await this._doFetchMsg(convoid)
|
|
338
|
+
this.reconnectGate.open()
|
|
339
|
+
return out
|
|
340
|
+
}
|
|
341
|
+
|
|
342
|
+
return this._doFetchMsg(convoid)
|
|
343
|
+
}
|
|
344
|
+
|
|
345
|
+
_doFetchMsg = async (convoid) => {
|
|
346
|
+
let {error} = await this.chain.fetchMore(convoid, 150, async (type, anchor, limit) => {
|
|
347
|
+
if (this.outofmsgM[convoid]) return [[], '']
|
|
348
|
+
let [events, newanchor, error, outofmsg] = await this.listmessageapi(type, anchor, limit)
|
|
349
|
+
if (outofmsg) this.outofmsgM[convoid] = true
|
|
350
|
+
return [events, newanchor, error]
|
|
351
|
+
})
|
|
339
352
|
this.pubsub.publish('account')
|
|
340
353
|
return {error}
|
|
341
354
|
}
|
|
@@ -754,8 +767,8 @@ export default class Store {
|
|
|
754
767
|
let members = sb.get(ev, 'data.conversation.members', [])
|
|
755
768
|
let me = sb.find(members, (m) => m.id === this.cache.match('user').id)
|
|
756
769
|
if (me) {
|
|
757
|
-
await this.chain.reload(cid, (type, anchor, limit) => this.listmessageapi(type, anchor, limit))
|
|
758
|
-
this.markSync('events' + cid)
|
|
770
|
+
// await this.chain.reload(cid, (type, anchor, limit) => this.listmessageapi(type, anchor, limit)) // ?
|
|
771
|
+
// this.markSync('events' + cid)
|
|
759
772
|
if (!alreadyFetched) {
|
|
760
773
|
let {body: apiconvo} = await this.api.getConversation(cid)
|
|
761
774
|
if (apiconvo) {
|
|
@@ -769,7 +782,10 @@ export default class Store {
|
|
|
769
782
|
|
|
770
783
|
if (ev.type === 'message_sent') {
|
|
771
784
|
if (sb.get(ev, 'by.id') !== user.id) {
|
|
772
|
-
this.
|
|
785
|
+
if (!this._alreadyReceived[ev.id]) {
|
|
786
|
+
this._alreadyReceived[ev.id] = true
|
|
787
|
+
this.api.markAsReceived(cid, ev.id)
|
|
788
|
+
}
|
|
773
789
|
}
|
|
774
790
|
}
|
|
775
791
|
|
|
@@ -782,6 +798,7 @@ export default class Store {
|
|
|
782
798
|
}
|
|
783
799
|
}
|
|
784
800
|
|
|
801
|
+
_alreadyReceived = {} // dont dup receive
|
|
785
802
|
async restConvoEvent(ev) {
|
|
786
803
|
let user = this.cache.match('user')
|
|
787
804
|
let cid = sb.convoOfEv(ev)
|
|
@@ -1068,11 +1085,15 @@ export default class Store {
|
|
|
1068
1085
|
|
|
1069
1086
|
let pongbyme = sb.find(sb.get(ev, 'data.message.pongs'), (p) => p.member_id === user.id)
|
|
1070
1087
|
if (pongbyme) break
|
|
1071
|
-
this.
|
|
1088
|
+
if (!this._alreadyReceived[ev.id]) {
|
|
1089
|
+
this._alreadyReceived[ev.id] = true
|
|
1090
|
+
this.api.markAsReceived(convoid, ev.id)
|
|
1091
|
+
}
|
|
1072
1092
|
break
|
|
1073
1093
|
}
|
|
1074
1094
|
|
|
1075
|
-
|
|
1095
|
+
let outofmsg = sb.size(events) < limit
|
|
1096
|
+
return [events, anchor, undefined, outofmsg]
|
|
1076
1097
|
}
|
|
1077
1098
|
|
|
1078
1099
|
timeDiff = 0
|
|
@@ -1244,7 +1265,6 @@ function getGaTrackingIds() {
|
|
|
1244
1265
|
|
|
1245
1266
|
function sendToFBPixel(category, action, label) {
|
|
1246
1267
|
if (!window.fbq) return
|
|
1247
|
-
|
|
1248
1268
|
window.fbq('trackCustom', category, {action: action, label: label})
|
|
1249
1269
|
}
|
|
1250
1270
|
|