@subiz/widget-v4 4.1.43 → 4.1.45
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 +2 -2
- package/compiled_src/call/call.js +2 -2
- package/compiled_src/chatbox/PoweredBy.js +1 -1
- package/compiled_src/chatbox/TextMessage.js +0 -56
- package/compiled_src/chatbox/main.js +2 -2
- package/compiled_src/contact/contact.js +2 -2
- package/compiled_src/notif/notif.js +2 -2
- package/compiled_src/order/icon.js +2 -2
- package/compiled_src/order/index.js +2 -2
- package/compiled_src/order/order.js +2 -2
- package/compiled_src/plugin.js +2 -2
- package/compiled_src/popup/popup.js +7 -9
- package/compiled_src/store/api.js +1 -1
- package/compiled_src/util/index.js +2 -2
- package/package.json +1 -2
- package/src/chatbox/PoweredBy.js +3 -1
- package/src/chatbox/TextMessage.js +0 -68
- package/src/popup/popup.js +8 -7
- package/src/store/api.js +1 -1
- package/dist/132.js +0 -6667
- package/dist/178.js +0 -406
- package/dist/18afb30d167.132.js +0 -1
- package/dist/18afb30d167.178.js +0 -1
- package/dist/18afb30d167.213.js +0 -1
- package/dist/18afb30d167.335.js +0 -1
- package/dist/18afb30d167.362.js +0 -1
- package/dist/18afb30d167.441.js +0 -1
- package/dist/18afb30d167.605.js +0 -1
- package/dist/18afb30d167.678.js +0 -1
- package/dist/18afb30d167.782.js +0 -1
- package/dist/18afb30d167.app.js +0 -1
- package/dist/18afb30d167.index.html +0 -33
- package/dist/18afb30d167.library.html +0 -33
- package/dist/18afb30d167.library.js +0 -1
- package/dist/18afb30d167.preview.html +0 -759
- package/dist/18afb30d167.preview.js +0 -1
- package/dist/18afb30d167.screenshoot.js +0 -1
- package/dist/18afb30d167.webview.js +0 -1
- package/dist/213.js +0 -2798
- package/dist/335.js +0 -372
- package/dist/362.js +0 -107
- package/dist/441.js +0 -2420
- package/dist/605.js +0 -305
- package/dist/678.js +0 -107
- package/dist/782.js +0 -107
- package/dist/HASH +0 -1
- 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 +0 -20
- package/dist/assets/img/caret.998eb8f.svg +0 -1
- package/dist/assets/img/convos_empty.2353007.svg +0 -72
- 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 +0 -4
- package/dist/assets/img/done_green.b817fd4.svg +0 -4
- 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 +0 -23
- package/dist/assets/img/empty_1.0b98af0.svg +0 -11
- package/dist/assets/img/examplte_logo.f86535f.svg +0 -1
- package/dist/assets/img/external-link.90577cc.svg +0 -1
- package/dist/assets/img/fb_inverse_circle.36c2cfc.png +0 -0
- package/dist/assets/img/ghn.070f8e3.svg +0 -17
- package/dist/assets/img/ghtk.326eac1.svg +0 -18
- package/dist/assets/img/image_default.be0698b.png +0 -0
- package/dist/assets/img/info.ebce7ea.svg +0 -1
- package/dist/assets/img/loader.37000a7.svg +0 -1
- package/dist/assets/img/loading_static.a27f0ac.svg +0 -10
- 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 +0 -5
- package/dist/assets/img/package_fade.763c001.svg +0 -1
- package/dist/assets/img/rating--average.1ea492c.svg +0 -12
- package/dist/assets/img/rating--great.e3d712e.svg +0 -16
- package/dist/assets/img/rating--poor.2938a25.svg +0 -12
- package/dist/assets/img/search.f9705ff.svg +0 -1
- package/dist/assets/img/send.6db52a9.svg +0 -3
- package/dist/assets/img/shop.f7dc7d8.svg +0 -1
- package/dist/assets/img/shop_faded.df7845a.svg +0 -1
- package/dist/assets/img/subiz-mono.877e9f5.svg +0 -3
- package/dist/assets/img/x.26fdfa3.svg +0 -5
- package/dist/malicious-app.js +0 -13
- package/dist/screenshoot.html +0 -7
- package/dist/screenshoot.js +0 -6440
package/compiled_src/bot.js
CHANGED
|
@@ -6,8 +6,8 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.default = _default;
|
|
7
7
|
var _index = _interopRequireDefault(require("./util/index.js"));
|
|
8
8
|
var common = _interopRequireWildcard(require("./common.js"));
|
|
9
|
-
function _getRequireWildcardCache(
|
|
10
|
-
function _interopRequireWildcard(
|
|
9
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
10
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
11
11
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
12
12
|
function _default(store) {
|
|
13
13
|
let botM = store.matchBot();
|
|
@@ -11,8 +11,8 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
|
|
|
11
11
|
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
12
12
|
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
|
|
13
13
|
function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
14
|
-
function _getRequireWildcardCache(
|
|
15
|
-
function _interopRequireWildcard(
|
|
14
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
15
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
16
16
|
let notifCSS = (() => Promise.resolve().then(() => _interopRequireWildcard(require('./css.js'))))();
|
|
17
17
|
class Notif extends _common.Com {
|
|
18
18
|
constructor(props) {
|
|
@@ -14,7 +14,7 @@ class PoweredBy extends _common.Com {
|
|
|
14
14
|
render() {
|
|
15
15
|
if (this.props.store.isMobile()) return null;
|
|
16
16
|
let user = this.props.store.matchUser() || {};
|
|
17
|
-
var link = `https://subiz.com.vn/?utm_source
|
|
17
|
+
var link = `https://subiz.com.vn/?utm_source=${window.location.host || `id-${user.account_id}`}&utm_medium=widget&utm_campaign=widget_referral`;
|
|
18
18
|
return (0, _preact.h)("div", {
|
|
19
19
|
class: "poweredby"
|
|
20
20
|
}, (0, _preact.h)("a", {
|
|
@@ -8,26 +8,10 @@ var _index = _interopRequireDefault(require("../util/index.js"));
|
|
|
8
8
|
var _common = require("../common.js");
|
|
9
9
|
var _preact = require("preact");
|
|
10
10
|
var _Emoji = _interopRequireDefault(require("./Emoji.js"));
|
|
11
|
-
var _ShadowDomRoot = _interopRequireDefault(require("./ShadowDomRoot.js"));
|
|
12
11
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
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); }
|
|
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; }
|
|
15
|
-
let mustrerender = [];
|
|
16
|
-
let marked = (obj, text) => {
|
|
17
|
-
mustrerender.push(obj);
|
|
18
|
-
return '';
|
|
19
|
-
};
|
|
20
|
-
const loadMarked = () => Promise.resolve().then(() => _interopRequireWildcard(require('marked')));
|
|
21
|
-
(async () => {
|
|
22
|
-
let markedf = (await loadMarked()).marked;
|
|
23
|
-
marked = (obj, text) => markedf(text);
|
|
24
|
-
_index.default.map(mustrerender, obj => obj.forceUpdate());
|
|
25
|
-
mustrerender = [];
|
|
26
|
-
})();
|
|
27
12
|
class TextMessage extends _common.Com {
|
|
28
13
|
render() {
|
|
29
14
|
var format = _index.default.get(this.props.ev, 'data.message.format', 'plaintext');
|
|
30
|
-
if (format === 'markdown') return this.renderMarkdown();
|
|
31
15
|
if (format === 'delta') return this.renderDelta();
|
|
32
16
|
return this.renderPlainText();
|
|
33
17
|
}
|
|
@@ -136,48 +120,8 @@ class TextMessage extends _common.Com {
|
|
|
136
120
|
class: "message-user message-text--user"
|
|
137
121
|
}, $deltas);
|
|
138
122
|
}
|
|
139
|
-
renderMarkdown(text) {
|
|
140
|
-
if (!text) text = _index.default.get(this.props.ev, 'data.message.text');
|
|
141
|
-
if (_index.default.size(text) === 0) return null;
|
|
142
|
-
let byType = _index.default.get(this.props.ev, 'by.type');
|
|
143
|
-
text = _index.default.trim(text);
|
|
144
|
-
if (_index.default.size(text) === 0) return null;
|
|
145
|
-
if (byType === 'agent') {
|
|
146
|
-
return (0, _preact.h)("div", {
|
|
147
|
-
class: "markdown-message message-agent message-text--agent"
|
|
148
|
-
}, (0, _preact.h)(_ShadowDomRoot.default, {
|
|
149
|
-
html: marked(this, text)
|
|
150
|
-
}));
|
|
151
|
-
}
|
|
152
|
-
return (0, _preact.h)("div", {
|
|
153
|
-
class: "d-flex flex-column align-items-end"
|
|
154
|
-
}, (0, _preact.h)("div", {
|
|
155
|
-
class: "markdown-message message-user message-text--user"
|
|
156
|
-
}, (0, _preact.h)(_ShadowDomRoot.default, {
|
|
157
|
-
html: marked(this, text)
|
|
158
|
-
})));
|
|
159
|
-
}
|
|
160
123
|
}
|
|
161
124
|
exports.default = TextMessage;
|
|
162
|
-
function deltaToMarkdown(deltas) {
|
|
163
|
-
let output = '';
|
|
164
|
-
_index.default.each(deltas, (delta, idx) => {
|
|
165
|
-
let text = '';
|
|
166
|
-
let insert = delta.insert;
|
|
167
|
-
let attributes = delta.attributes;
|
|
168
|
-
if (insert.emoji) text = emojiCodes[insert.emoji] || '';
|
|
169
|
-
if (attributes) {
|
|
170
|
-
if (attributes.italic && attributes.bold) text = `*__${insert}__*`;else if (attributes.italic) text = `*${insert}*`;else if (attributes.bold) text = `**${insert}**`;else text = insert;
|
|
171
|
-
}
|
|
172
|
-
if (insert.dynamicField) text = `${_index.default.get(insert, 'dynamicField.text', '')}`;
|
|
173
|
-
if (!insert.emoji && !attributes && !insert.dynamicField) {
|
|
174
|
-
text = insert || '';
|
|
175
|
-
text = text.replace(/\n/g, '<br/>');
|
|
176
|
-
}
|
|
177
|
-
output += text;
|
|
178
|
-
});
|
|
179
|
-
return output;
|
|
180
|
-
}
|
|
181
125
|
const emojiCodes = {
|
|
182
126
|
like: '👍',
|
|
183
127
|
unlike: '👎',
|
|
@@ -10,8 +10,8 @@ var _Widget = _interopRequireDefault(require("./Widget.js"));
|
|
|
10
10
|
var _common = require("../common.js");
|
|
11
11
|
var _preact = require("preact");
|
|
12
12
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
13
|
-
function _getRequireWildcardCache(
|
|
14
|
-
function _interopRequireWildcard(
|
|
13
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
14
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
15
15
|
let promiseMainCSS = (() => Promise.resolve().then(() => _interopRequireWildcard(require('./css.js'))))();
|
|
16
16
|
class Main extends _common.Com {
|
|
17
17
|
constructor(props) {
|
|
@@ -12,8 +12,8 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
|
|
|
12
12
|
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
13
13
|
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
|
|
14
14
|
function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
15
|
-
function _getRequireWildcardCache(
|
|
16
|
-
function _interopRequireWildcard(
|
|
15
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
16
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
17
17
|
let CSS = (() => Promise.resolve().then(() => _interopRequireWildcard(require('./css.js'))))();
|
|
18
18
|
class Contact extends _common.Com {
|
|
19
19
|
constructor(props) {
|
|
@@ -11,8 +11,8 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
|
|
|
11
11
|
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
12
12
|
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
|
|
13
13
|
function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
14
|
-
function _getRequireWildcardCache(
|
|
15
|
-
function _interopRequireWildcard(
|
|
14
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
15
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
16
16
|
let notifCSS = (() => Promise.resolve().then(() => _interopRequireWildcard(require('./css.js'))))();
|
|
17
17
|
class Notif extends _common.Com {
|
|
18
18
|
constructor(props) {
|
|
@@ -10,8 +10,8 @@ var common = _interopRequireWildcard(require("../common.js"));
|
|
|
10
10
|
var _DropdownSelect = _interopRequireDefault(require("../chatbox/DropdownSelect.js"));
|
|
11
11
|
var _preact = require("preact");
|
|
12
12
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
13
|
-
function _getRequireWildcardCache(
|
|
14
|
-
function _interopRequireWildcard(
|
|
13
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
14
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
15
15
|
let promiseMainCSS = (() => Promise.resolve().then(() => _interopRequireWildcard(require('../chatbox/css.js'))))();
|
|
16
16
|
var $link = document.createElement('link');
|
|
17
17
|
$link.href = 'https://fonts.googleapis.com/css2?family=Roboto:wght@400;500&display=swap';
|
|
@@ -6,8 +6,8 @@ var _index = _interopRequireDefault(require("../util/index.js"));
|
|
|
6
6
|
var _preact = require("preact");
|
|
7
7
|
var _order = _interopRequireDefault(require("./order.js"));
|
|
8
8
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
9
|
-
function _getRequireWildcardCache(
|
|
10
|
-
function _interopRequireWildcard(
|
|
9
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
10
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
11
11
|
let promiseMainCSS = (() => Promise.resolve().then(() => _interopRequireWildcard(require('../chatbox/css.js'))))();
|
|
12
12
|
var config = require('../../config.js');
|
|
13
13
|
function findChatbox(store) {
|
|
@@ -12,8 +12,8 @@ var _address_picker = _interopRequireDefault(require("./address_picker.js"));
|
|
|
12
12
|
var _preact = require("preact");
|
|
13
13
|
var _icon = _interopRequireDefault(require("./icon.js"));
|
|
14
14
|
var _spinner = _interopRequireDefault(require("../chatbox/spinner.js"));
|
|
15
|
-
function _getRequireWildcardCache(
|
|
16
|
-
function _interopRequireWildcard(
|
|
15
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
16
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
17
17
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
18
18
|
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
19
19
|
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
|
package/compiled_src/plugin.js
CHANGED
|
@@ -8,8 +8,8 @@ var _index = _interopRequireDefault(require("./util/index.js"));
|
|
|
8
8
|
var common = _interopRequireWildcard(require("./common.js"));
|
|
9
9
|
var _preact = require("preact");
|
|
10
10
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
11
|
-
function _getRequireWildcardCache(
|
|
12
|
-
function _interopRequireWildcard(
|
|
11
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
12
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
13
13
|
const LoadChatbox = () => Promise.resolve().then(() => _interopRequireWildcard(require('./chatbox/main.js')));
|
|
14
14
|
const LoadContact = () => Promise.resolve().then(() => _interopRequireWildcard(require('./contact/contact.js')));
|
|
15
15
|
const LoadPopup = () => Promise.resolve().then(() => _interopRequireWildcard(require('./popup/popup.js')));
|
|
@@ -12,8 +12,8 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
|
|
|
12
12
|
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
13
13
|
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
|
|
14
14
|
function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
15
|
-
function _getRequireWildcardCache(
|
|
16
|
-
function _interopRequireWildcard(
|
|
15
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
16
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
17
17
|
let popupCSS = (() => Promise.resolve().then(() => _interopRequireWildcard(require('./css.js'))))();
|
|
18
18
|
class Popup extends _common.Com {
|
|
19
19
|
constructor(props) {
|
|
@@ -211,7 +211,7 @@ class Popup extends _common.Com {
|
|
|
211
211
|
});
|
|
212
212
|
}
|
|
213
213
|
}
|
|
214
|
-
onButtonClick(e, buttontype) {
|
|
214
|
+
async onButtonClick(e, buttontype) {
|
|
215
215
|
e.stopPropagation();
|
|
216
216
|
let popup = _index.default.get(this.props.plugin, 'popup', {});
|
|
217
217
|
let page = _index.default.get(this.props.plugin.popup, `pages.${this.getPageIndex()}`);
|
|
@@ -235,14 +235,13 @@ class Popup extends _common.Com {
|
|
|
235
235
|
if (a.action === 'submit' || a.action === 'conversion') hasConversion = true;
|
|
236
236
|
}
|
|
237
237
|
if (hasConversion) {
|
|
238
|
+
if (this.isSubmitting) return;
|
|
238
239
|
var formData = this._formRef.current ? new FormData(this._formRef.current) : new FormData();
|
|
239
240
|
var summitFields = [];
|
|
240
241
|
let user = _index.default.cloneDeep(this.props.store.matchUser());
|
|
241
242
|
let is_lead = false;
|
|
242
243
|
let modifiedPairs = {};
|
|
243
|
-
console.log('333333333333');
|
|
244
244
|
for (var pair of formData.entries()) {
|
|
245
|
-
console.log('44444444444444444');
|
|
246
245
|
if (modifiedPairs[pair[0]]) {
|
|
247
246
|
let currentValue = _index.default.get(modifiedPairs, `${pair[0]}.1`, '');
|
|
248
247
|
currentValue += `,${pair[1]}`;
|
|
@@ -251,9 +250,7 @@ class Popup extends _common.Com {
|
|
|
251
250
|
modifiedPairs[pair[0]] = [pair[0], pair[1]];
|
|
252
251
|
}
|
|
253
252
|
}
|
|
254
|
-
console.log('1111111111111', Object.entries(modifiedPairs));
|
|
255
253
|
for (const [_, pair] of Object.entries(modifiedPairs)) {
|
|
256
|
-
console.log('2222222222222', pair);
|
|
257
254
|
let page = _index.default.get(this.props.plugin.popup, `pages.${this.getPageIndex()}`);
|
|
258
255
|
let form = _index.default.find(page.components, com => com.type === 'form');
|
|
259
256
|
let fields = _index.default.get(form, 'form.fields', []);
|
|
@@ -277,8 +274,9 @@ class Popup extends _common.Com {
|
|
|
277
274
|
key: 'lead_source',
|
|
278
275
|
text: 'plugin.' + this.props.plugin.id
|
|
279
276
|
});
|
|
280
|
-
this.
|
|
281
|
-
this.props.store.sendConversion(this.props.plugin.id, summitFields, this.impressionToken);
|
|
277
|
+
this.isSubmitting = true;
|
|
278
|
+
await Promise.all([this.props.store.setUser(user), this.props.store.sendConversion(this.props.plugin.id, summitFields, this.impressionToken)]);
|
|
279
|
+
this.isSubmitting = false;
|
|
282
280
|
}
|
|
283
281
|
for (let a of actions) {
|
|
284
282
|
if (a.action === 'open_widget') this.props.showWidget('list');
|
|
@@ -8,8 +8,8 @@ var common = _interopRequireWildcard(require("./common.js"));
|
|
|
8
8
|
var extractor = _interopRequireWildcard(require("./extractor.js"));
|
|
9
9
|
var campaign = _interopRequireWildcard(require("./campaign.js"));
|
|
10
10
|
var order = _interopRequireWildcard(require("./order.js"));
|
|
11
|
-
function _getRequireWildcardCache(
|
|
12
|
-
function _interopRequireWildcard(
|
|
11
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
12
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
13
13
|
var sb = {};
|
|
14
14
|
sb = Object.assign(sb, common);
|
|
15
15
|
sb.Gate = require('./gate.js').default;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@subiz/widget-v4",
|
|
3
|
-
"version": "4.1.
|
|
3
|
+
"version": "4.1.45",
|
|
4
4
|
"main": "./compiled_src/lib.js",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"dev": "npx webpack serve --config webpack.dev.js",
|
|
@@ -19,7 +19,6 @@
|
|
|
19
19
|
"file-loader": "^6.2.0",
|
|
20
20
|
"less": "^4.2.0",
|
|
21
21
|
"less-loader": "^11.1.3",
|
|
22
|
-
"marked": "^9.1.0",
|
|
23
22
|
"preact": "^10.18.1"
|
|
24
23
|
},
|
|
25
24
|
"devDependencies": {
|
package/src/chatbox/PoweredBy.js
CHANGED
|
@@ -11,7 +11,9 @@ export default class PoweredBy extends Com {
|
|
|
11
11
|
// dont render onmobile
|
|
12
12
|
if (this.props.store.isMobile()) return null
|
|
13
13
|
let user = this.props.store.matchUser() || {}
|
|
14
|
-
var link = `https://subiz.com.vn/?utm_source
|
|
14
|
+
var link = `https://subiz.com.vn/?utm_source=${
|
|
15
|
+
window.location.host || `id-${user.account_id}`
|
|
16
|
+
}&utm_medium=widget&utm_campaign=widget_referral`
|
|
15
17
|
|
|
16
18
|
return (
|
|
17
19
|
<div class='poweredby'>
|
|
@@ -1,27 +1,12 @@
|
|
|
1
1
|
import sb from '../util/index.js'
|
|
2
|
-
let mustrerender = []
|
|
3
|
-
let marked = (obj, text) => {
|
|
4
|
-
mustrerender.push(obj)
|
|
5
|
-
return ''
|
|
6
|
-
}
|
|
7
|
-
|
|
8
|
-
const loadMarked = () => import(/*webpackChunkName: "marked" */ 'marked')
|
|
9
|
-
;(async () => {
|
|
10
|
-
let markedf = (await loadMarked()).marked
|
|
11
|
-
marked = (obj, text) => markedf(text)
|
|
12
|
-
sb.map(mustrerender, (obj) => obj.forceUpdate())
|
|
13
|
-
mustrerender = []
|
|
14
|
-
})()
|
|
15
2
|
|
|
16
3
|
import {Com} from '../common.js'
|
|
17
4
|
import {h} from 'preact'
|
|
18
5
|
import Emoji from './Emoji.js'
|
|
19
|
-
import ShadowDomRoot from './ShadowDomRoot.js'
|
|
20
6
|
|
|
21
7
|
export default class TextMessage extends Com {
|
|
22
8
|
render() {
|
|
23
9
|
var format = sb.get(this.props.ev, 'data.message.format', 'plaintext')
|
|
24
|
-
if (format === 'markdown') return this.renderMarkdown()
|
|
25
10
|
if (format === 'delta') return this.renderDelta()
|
|
26
11
|
return this.renderPlainText()
|
|
27
12
|
}
|
|
@@ -122,59 +107,6 @@ export default class TextMessage extends Com {
|
|
|
122
107
|
}
|
|
123
108
|
return <div class='message-user message-text--user'>{$deltas}</div>
|
|
124
109
|
}
|
|
125
|
-
|
|
126
|
-
renderMarkdown(text) {
|
|
127
|
-
if (!text) text = sb.get(this.props.ev, 'data.message.text')
|
|
128
|
-
if (sb.size(text) === 0) return null
|
|
129
|
-
|
|
130
|
-
let byType = sb.get(this.props.ev, 'by.type')
|
|
131
|
-
|
|
132
|
-
text = sb.trim(text)
|
|
133
|
-
if (sb.size(text) === 0) return null
|
|
134
|
-
|
|
135
|
-
if (byType === 'agent') {
|
|
136
|
-
return (
|
|
137
|
-
<div class='markdown-message message-agent message-text--agent'>
|
|
138
|
-
<ShadowDomRoot html={marked(this, text)} />
|
|
139
|
-
</div>
|
|
140
|
-
)
|
|
141
|
-
}
|
|
142
|
-
|
|
143
|
-
return (
|
|
144
|
-
<div class='d-flex flex-column align-items-end'>
|
|
145
|
-
<div class='markdown-message message-user message-text--user'>
|
|
146
|
-
<ShadowDomRoot html={marked(this, text)} />
|
|
147
|
-
</div>
|
|
148
|
-
</div>
|
|
149
|
-
)
|
|
150
|
-
}
|
|
151
|
-
}
|
|
152
|
-
|
|
153
|
-
function deltaToMarkdown(deltas) {
|
|
154
|
-
let output = ''
|
|
155
|
-
sb.each(deltas, (delta, idx) => {
|
|
156
|
-
let text = ''
|
|
157
|
-
let insert = delta.insert
|
|
158
|
-
let attributes = delta.attributes
|
|
159
|
-
// emoji
|
|
160
|
-
if (insert.emoji) text = emojiCodes[insert.emoji] || ''
|
|
161
|
-
// insert bold, italic, underline
|
|
162
|
-
if (attributes) {
|
|
163
|
-
if (attributes.italic && attributes.bold) text = `*__${insert}__*`
|
|
164
|
-
else if (attributes.italic) text = `*${insert}*`
|
|
165
|
-
else if (attributes.bold) text = `**${insert}**`
|
|
166
|
-
else text = insert
|
|
167
|
-
}
|
|
168
|
-
if (insert.dynamicField) text = `${sb.get(insert, 'dynamicField.text', '')}`
|
|
169
|
-
if (!insert.emoji && !attributes && !insert.dynamicField) {
|
|
170
|
-
text = insert || ''
|
|
171
|
-
// markdown need newline to <br/> characters to newline
|
|
172
|
-
text = text.replace(/\n/g, '<br/>')
|
|
173
|
-
}
|
|
174
|
-
|
|
175
|
-
output += text
|
|
176
|
-
})
|
|
177
|
-
return output
|
|
178
110
|
}
|
|
179
111
|
|
|
180
112
|
const emojiCodes = {
|
package/src/popup/popup.js
CHANGED
|
@@ -200,7 +200,7 @@ export default class Popup extends Com {
|
|
|
200
200
|
}
|
|
201
201
|
}
|
|
202
202
|
|
|
203
|
-
onButtonClick(e, buttontype) {
|
|
203
|
+
async onButtonClick(e, buttontype) {
|
|
204
204
|
e.stopPropagation()
|
|
205
205
|
let popup = sb.get(this.props.plugin, 'popup', {})
|
|
206
206
|
let page = sb.get(this.props.plugin.popup, `pages.${this.getPageIndex()}`)
|
|
@@ -227,6 +227,7 @@ export default class Popup extends Com {
|
|
|
227
227
|
}
|
|
228
228
|
|
|
229
229
|
if (hasConversion) {
|
|
230
|
+
if (this.isSubmitting) return // avoid double click
|
|
230
231
|
var formData = this._formRef.current ? new FormData(this._formRef.current) : new FormData()
|
|
231
232
|
var summitFields = []
|
|
232
233
|
|
|
@@ -235,9 +236,7 @@ export default class Popup extends Com {
|
|
|
235
236
|
|
|
236
237
|
// modified pairs to convert data of multiple-choice value ['khu_vuc', '1'], ['khu_vuc', '2'] => ['khu_vuc', '1,2']
|
|
237
238
|
let modifiedPairs = {}
|
|
238
|
-
console.log('333333333333')
|
|
239
239
|
for (var pair of formData.entries()) {
|
|
240
|
-
console.log('44444444444444444')
|
|
241
240
|
if (modifiedPairs[pair[0]]) {
|
|
242
241
|
let currentValue = sb.get(modifiedPairs, `${pair[0]}.1`, '')
|
|
243
242
|
currentValue += `,${pair[1]}`
|
|
@@ -247,9 +246,7 @@ export default class Popup extends Com {
|
|
|
247
246
|
}
|
|
248
247
|
}
|
|
249
248
|
|
|
250
|
-
console.log('1111111111111', Object.entries(modifiedPairs))
|
|
251
249
|
for (const [_, pair] of Object.entries(modifiedPairs)) {
|
|
252
|
-
console.log('2222222222222', pair)
|
|
253
250
|
let page = sb.get(this.props.plugin.popup, `pages.${this.getPageIndex()}`)
|
|
254
251
|
let form = sb.find(page.components, (com) => com.type === 'form')
|
|
255
252
|
let fields = sb.get(form, 'form.fields', [])
|
|
@@ -266,8 +263,12 @@ export default class Popup extends Com {
|
|
|
266
263
|
sb.setUserAttr(user, {key: key, text: pair[1]})
|
|
267
264
|
}
|
|
268
265
|
if (is_lead) sb.setUserAttr(user, {key: 'lead_source', text: 'plugin.' + this.props.plugin.id})
|
|
269
|
-
this.
|
|
270
|
-
|
|
266
|
+
this.isSubmitting = true
|
|
267
|
+
await Promise.all([
|
|
268
|
+
this.props.store.setUser(user),
|
|
269
|
+
this.props.store.sendConversion(this.props.plugin.id, summitFields, this.impressionToken),
|
|
270
|
+
])
|
|
271
|
+
this.isSubmitting = false
|
|
271
272
|
}
|
|
272
273
|
|
|
273
274
|
for (let a of actions) {
|
package/src/store/api.js
CHANGED
|
@@ -266,7 +266,7 @@ export default class {
|
|
|
266
266
|
;({body, error} = await this.apireq.post(`/accounts/${this.accid}/files/${signed.id}`, {account_id: this.accid}))
|
|
267
267
|
if (error) return {body, error}
|
|
268
268
|
|
|
269
|
-
return {url:
|
|
269
|
+
return {url: body.url}
|
|
270
270
|
}
|
|
271
271
|
|
|
272
272
|
time = (_) => ajax.setBaseUrl(this.ApiURL).withCredentials(true).setParser('json').get('/time')
|