@subiz/widget-v4 4.1.147 → 4.1.149
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/message.less +11 -0
- package/assets/less/reboot.less +1 -1
- package/compiled_src/chatbox/Event.js +2 -1
- package/compiled_src/chatbox/block.js +15 -0
- package/compiled_src/store/api.js +19 -24
- package/compiled_src/store/store.js +1 -1
- package/dist/127.js +273 -0
- package/dist/132.js +2802 -0
- package/dist/185.js +1827 -0
- package/dist/197bb8b9cf8.127.js +1 -0
- package/dist/197bb8b9cf8.132.js +1 -0
- package/dist/197bb8b9cf8.185.js +1 -0
- package/dist/197bb8b9cf8.27.js +1 -0
- package/dist/197bb8b9cf8.278.js +1 -0
- package/dist/197bb8b9cf8.339.js +1 -0
- package/dist/197bb8b9cf8.459.js +1 -0
- package/dist/197bb8b9cf8.490.js +1 -0
- package/dist/197bb8b9cf8.74.js +1 -0
- package/dist/197bb8b9cf8.997.js +1 -0
- package/dist/197bb8b9cf8.app.js +1 -0
- package/dist/197bb8b9cf8.chat.html +1 -0
- package/dist/197bb8b9cf8.chat.js +1 -0
- package/dist/197bb8b9cf8.form.html +1 -0
- package/dist/197bb8b9cf8.form.js +1 -0
- package/dist/197bb8b9cf8.index.html +71 -0
- package/dist/197bb8b9cf8.library.html +71 -0
- package/dist/197bb8b9cf8.library.js +1 -0
- package/dist/197bb8b9cf8.preview.html +759 -0
- package/dist/197bb8b9cf8.preview.js +1 -0
- package/dist/197bb8b9cf8.webview.js +1 -0
- package/dist/27.js +107 -0
- package/dist/278.js +417 -0
- package/dist/459.js +107 -0
- package/dist/490.js +305 -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/stars_v2.79cf728.png +0 -0
- package/dist/assets/img/subiz-mono.8fbc067.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 +11634 -0
- package/package.json +3 -4
- package/src/chatbox/Event.js +7 -6
- package/src/chatbox/block.js +15 -0
- package/src/store/api.js +29 -16
- package/src/store/store.js +1 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@subiz/widget-v4",
|
|
3
|
-
"version": "4.1.
|
|
3
|
+
"version": "4.1.149",
|
|
4
4
|
"main": "./compiled_src/lib.js",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"dev": "npx webpack serve --config webpack.dev.js",
|
|
@@ -22,15 +22,14 @@
|
|
|
22
22
|
},
|
|
23
23
|
"devDependencies": {
|
|
24
24
|
"@babel/cli": "^7.27.2",
|
|
25
|
-
"@babel/core": "^7.27.
|
|
25
|
+
"@babel/core": "^7.27.7",
|
|
26
26
|
"@babel/plugin-proposal-class-properties": "^7.18.6",
|
|
27
27
|
"@babel/plugin-transform-react-jsx": "^7.27.1",
|
|
28
28
|
"@babel/preset-env": "^7.27.2",
|
|
29
29
|
"babel-loader": "^10.0.0",
|
|
30
30
|
"babel-plugin-syntax-jsx": "^6.18.0",
|
|
31
31
|
"html-webpack-plugin": "^5.6.3",
|
|
32
|
-
"
|
|
33
|
-
"puppeteer": "^24.10.1",
|
|
32
|
+
"puppeteer": "^24.11.1",
|
|
34
33
|
"webpack": "^5.99.9",
|
|
35
34
|
"webpack-bundle-analyzer": "^4.10.2",
|
|
36
35
|
"webpack-cli": "^6.0.1",
|
package/src/chatbox/Event.js
CHANGED
|
@@ -232,9 +232,9 @@ export default class Event extends Com {
|
|
|
232
232
|
|
|
233
233
|
renderMessageSent() {
|
|
234
234
|
let ev = this.props.event.ev
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
235
|
+
let attachments = sb.get(ev, 'data.message.attachments')
|
|
236
|
+
let hasForm = sb.find(attachments, (att) => att.type === 'form')
|
|
237
|
+
if (ev.id === 'evshpgaeetsplfqprzmynrvrl') hasForm = true
|
|
238
238
|
this.tryLoadOrder(ev)
|
|
239
239
|
let t = new sb.Date(ev.created).toLocaleString()
|
|
240
240
|
// message of agent
|
|
@@ -244,8 +244,8 @@ export default class Event extends Com {
|
|
|
244
244
|
let innercls = 'agent-convo-event-inner'
|
|
245
245
|
if (this.props.isLast) innercls += ' last'
|
|
246
246
|
|
|
247
|
-
|
|
248
|
-
|
|
247
|
+
let wrappercls = 'agent-convo-event-wrapper'
|
|
248
|
+
if (hasForm) wrappercls += ' full'
|
|
249
249
|
return (
|
|
250
250
|
<div class='convo-event agent-message'>
|
|
251
251
|
{$sender}
|
|
@@ -446,10 +446,11 @@ export default class Event extends Com {
|
|
|
446
446
|
|
|
447
447
|
getSenderName(ev) {
|
|
448
448
|
let bytype = sb.get(ev, 'by.type')
|
|
449
|
-
let byid = sb.get(ev, 'by.display_id', sb.get(ev, 'by.id'))
|
|
449
|
+
let byid = sb.get(ev, 'by.display_id', sb.get(ev, 'by.id')) || ''
|
|
450
450
|
if (bytype === 'user') return sb.getUserDisplayName(this.props.store.matchUser())
|
|
451
451
|
let acc = this.props.store.matchAccount()
|
|
452
452
|
if (bytype === 'agent') return sb.getAgentDisplayName(acc, this.props.store.matchAgent(byid))
|
|
453
|
+
if (byid.startsWith('at')) return sb.getAgentDisplayName(acc, this.props.store.matchAgent(byid))
|
|
453
454
|
if (bytype === 'bot') {
|
|
454
455
|
let bot = this.props.store.matchBot()[byid]
|
|
455
456
|
if (!bot) return 'Bot'
|
package/src/chatbox/block.js
CHANGED
|
@@ -106,6 +106,11 @@ export default class Block extends Com {
|
|
|
106
106
|
if (block.type == 'table') {
|
|
107
107
|
return null
|
|
108
108
|
}
|
|
109
|
+
if (block.type === 'image') {
|
|
110
|
+
ele.tag = 'img'
|
|
111
|
+
ele.attrs['src'] = sb.get(block, 'image.url')
|
|
112
|
+
ele.attrs['alt'] = block.alt_text
|
|
113
|
+
}
|
|
109
114
|
|
|
110
115
|
let $body = null
|
|
111
116
|
if (sb.size(block.content)) {
|
|
@@ -138,6 +143,16 @@ export default class Block extends Com {
|
|
|
138
143
|
$body = ele.text
|
|
139
144
|
}
|
|
140
145
|
switch (ele.tag) {
|
|
146
|
+
case 'img':
|
|
147
|
+
return (
|
|
148
|
+
<a class='message-text-inline-image-wrapper' href={sb.get(ele, 'attrs.src')} target='_blank'>
|
|
149
|
+
<img
|
|
150
|
+
class='message-text-inline-image'
|
|
151
|
+
src={sb.get(ele, 'attrs.src')}
|
|
152
|
+
alt={sb.get(ele, 'attrs.alt') || ''}
|
|
153
|
+
/>
|
|
154
|
+
</a>
|
|
155
|
+
)
|
|
141
156
|
case 'div':
|
|
142
157
|
return <div>{$body}</div>
|
|
143
158
|
case 'h1':
|
package/src/store/api.js
CHANGED
|
@@ -270,25 +270,38 @@ export default class {
|
|
|
270
270
|
}
|
|
271
271
|
|
|
272
272
|
uploadToS3 = async (file) => {
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
273
|
+
var {body, error} = await ajax
|
|
274
|
+
.setBaseUrl('https://api5.subiz.com.vn/4.1')
|
|
275
|
+
.withCredentials(true)
|
|
276
|
+
.setQuery({
|
|
277
|
+
description: 'upload\n user-client: web-widget',
|
|
278
|
+
name: file.name.replace(/\s+/g, '_'),
|
|
279
|
+
size: file.size,
|
|
280
|
+
type: file.type,
|
|
281
|
+
})
|
|
282
|
+
.setParser('json')
|
|
283
|
+
.beforeHook((param, done) => {
|
|
284
|
+
if (this.token_generator) {
|
|
285
|
+
let user_id = this.profile_id
|
|
286
|
+
this.token_generator().then((token) => {
|
|
287
|
+
if (user_id != this.profile_id) return done(true) // outdated
|
|
281
288
|
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
289
|
+
if (!token) return done(false)
|
|
290
|
+
if (token == 'error') return done(false)
|
|
291
|
+
param.request = param.request.addQuery('x-access-token', token)
|
|
292
|
+
return done(true)
|
|
293
|
+
})
|
|
294
|
+
return
|
|
295
|
+
}
|
|
285
296
|
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
;({body, error} = await this.apireq.post(`/accounts/${this.accid}/files/${signed.id}`, {account_id: this.accid}))
|
|
289
|
-
if (error) return {body, error}
|
|
297
|
+
if (this.ref) param.request = param.request.addQuery('x-user-ref', this.ref)
|
|
298
|
+
else if (this.mask) param.request = param.request.addQuery('x-user-mask', this.mask) // deprecating
|
|
290
299
|
|
|
291
|
-
|
|
300
|
+
return done(true)
|
|
301
|
+
})
|
|
302
|
+
.post('/files', file)
|
|
303
|
+
if (error) return {body, error}
|
|
304
|
+
return {url: sb.get(body, 'file.url')}
|
|
292
305
|
}
|
|
293
306
|
|
|
294
307
|
time = (_) => ajax.setBaseUrl(this.ApiURL).withCredentials(true).setParser('json').get('/time')
|
package/src/store/store.js
CHANGED
|
@@ -1250,7 +1250,7 @@ export default class Store {
|
|
|
1250
1250
|
|
|
1251
1251
|
src = src.replace('https://file.mysubiz.com/', this.FileURL)
|
|
1252
1252
|
src = src.replace('http://file.mysubiz.com/', this.FileURL)
|
|
1253
|
-
return src
|
|
1253
|
+
return src.replace('vcdn.subiz-cdn.com', 'cdn.subiz.net')
|
|
1254
1254
|
}
|
|
1255
1255
|
|
|
1256
1256
|
clearBrowserData() {
|