@subiz/widget-v4 4.0.61 → 4.0.66

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 (134) hide show
  1. package/assets/img/caret.svg +1 -0
  2. package/assets/img/done_green.svg +4 -0
  3. package/assets/img/empty_1.svg +11 -0
  4. package/assets/img/ghn.svg +17 -0
  5. package/assets/img/ghtk.svg +18 -0
  6. package/assets/img/home.svg +1 -0
  7. package/assets/img/info.svg +1 -0
  8. package/assets/img/loader.svg +1 -0
  9. package/assets/img/map-pin.svg +1 -0
  10. package/assets/img/not_found_search.png +0 -0
  11. package/assets/img/package.svg +5 -0
  12. package/assets/img/package_fade.svg +1 -0
  13. package/assets/img/phone.svg +1 -0
  14. package/assets/img/search.svg +1 -0
  15. package/assets/img/shop.svg +1 -0
  16. package/assets/img/shop_faded.svg +1 -0
  17. package/assets/img/user.svg +1 -0
  18. package/assets/img/x.svg +5 -0
  19. package/assets/less/chatbox.less +39 -1
  20. package/assets/less/dropdown_select.less +130 -0
  21. package/assets/less/form.less +7 -20
  22. package/assets/less/order.less +489 -0
  23. package/assets/less/rating.less +3 -8
  24. package/babel.config.js +2 -4
  25. package/compiled_src/bot.js +7 -1
  26. package/compiled_src/chatbox/ChatButton.js +3 -1
  27. package/compiled_src/chatbox/DropdownSelect.js +248 -0
  28. package/compiled_src/chatbox/Event.js +5 -2
  29. package/compiled_src/chatbox/Events.js +1 -0
  30. package/compiled_src/chatbox/Order.js +285 -0
  31. package/compiled_src/chatbox/OrderAttachments.js +2 -1
  32. package/compiled_src/chatbox/ProductAttachments.js +40 -4
  33. package/compiled_src/chatbox/TextMessage.js +9 -2
  34. package/compiled_src/chatbox/Typing.js +3 -1
  35. package/compiled_src/chatbox/Widget.js +44 -3
  36. package/compiled_src/chatbox/main.js +2 -0
  37. package/compiled_src/chatbox/spinner.js +1 -1
  38. package/compiled_src/chatbox/time.js +3 -1
  39. package/compiled_src/common.js +40 -1
  40. package/compiled_src/contact/contact.js +1 -3
  41. package/compiled_src/order/address_picker.js +249 -0
  42. package/compiled_src/order/icon.js +62 -0
  43. package/compiled_src/order/index.js +113 -0
  44. package/compiled_src/order/order.js +1234 -0
  45. package/compiled_src/plugin.js +9 -42
  46. package/compiled_src/store/api.js +20 -0
  47. package/compiled_src/store/store.js +67 -3
  48. package/compiled_src/util/common.js +36 -2
  49. package/dist/{74.js → 132.js} +2355 -271
  50. package/dist/178.js +1 -1
  51. package/dist/17fdfed03d1.132.js +1 -0
  52. package/dist/17fdfed03d1.178.js +1 -0
  53. package/dist/17fdfed03d1.213.js +1 -0
  54. package/dist/17fdfed03d1.335.js +1 -0
  55. package/dist/17fdfed03d1.362.js +1 -0
  56. package/dist/17fdfed03d1.441.js +1 -0
  57. package/dist/17fdfed03d1.605.js +1 -0
  58. package/dist/{17db8166252.678.js → 17fdfed03d1.678.js} +0 -0
  59. package/dist/17fdfed03d1.782.js +1 -0
  60. package/dist/17fdfed03d1.app.js +1 -0
  61. package/dist/{17db8166252.index.html → 17fdfed03d1.index.html} +1 -1
  62. package/dist/{17db8166252.library.html → 17fdfed03d1.library.html} +1 -1
  63. package/dist/17fdfed03d1.library.js +1 -0
  64. package/dist/{17db8166252.preview.html → 17fdfed03d1.preview.html} +1 -1
  65. package/dist/17fdfed03d1.preview.js +1 -0
  66. package/dist/17fdfed03d1.screenshoot.js +1 -0
  67. package/dist/213.js +5 -69
  68. package/dist/335.js +411 -0
  69. package/dist/362.js +1 -1
  70. package/dist/441.js +70 -44
  71. package/dist/605.js +1 -64
  72. package/dist/782.js +1 -1
  73. package/dist/HASH +1 -1
  74. package/dist/assets/img/caret.998eb8f.svg +1 -0
  75. package/dist/assets/img/done_green.b817fd4.svg +4 -0
  76. package/dist/assets/img/empty_1.0b98af0.svg +11 -0
  77. package/dist/assets/img/ghn.070f8e3.svg +17 -0
  78. package/dist/assets/img/ghtk.326eac1.svg +18 -0
  79. package/dist/assets/img/info.ebce7ea.svg +1 -0
  80. package/dist/assets/img/loader.37000a7.svg +1 -0
  81. package/dist/assets/img/not_found_search.2ddb8d1.png +0 -0
  82. package/dist/assets/img/package.8d37d0f.svg +5 -0
  83. package/dist/assets/img/package_fade.763c001.svg +1 -0
  84. package/dist/assets/img/search.f9705ff.svg +1 -0
  85. package/dist/assets/img/shop.f7dc7d8.svg +1 -0
  86. package/dist/assets/img/shop_faded.df7845a.svg +1 -0
  87. package/dist/assets/img/x.26fdfa3.svg +5 -0
  88. package/dist/screenshoot.html +1 -1
  89. package/dist/screenshoot.js +281 -98
  90. package/order.html +19 -771
  91. package/package.json +15 -16
  92. package/src/bot.js +2 -1
  93. package/src/chatbox/Buttons.js +8 -8
  94. package/src/chatbox/ChatButton.js +2 -2
  95. package/src/chatbox/DropdownSelect.js +229 -0
  96. package/src/chatbox/Event.js +3 -3
  97. package/src/chatbox/Events.js +43 -42
  98. package/src/chatbox/Order.js +232 -0
  99. package/src/chatbox/OrderAttachments.js +2 -1
  100. package/src/chatbox/ProductAttachments.js +41 -5
  101. package/src/chatbox/TextMessage.js +21 -12
  102. package/src/chatbox/Typing.js +5 -1
  103. package/src/chatbox/Widget.js +34 -4
  104. package/src/chatbox/main.js +4 -1
  105. package/src/chatbox/spinner.js +1 -1
  106. package/src/chatbox/time.js +1 -1
  107. package/src/common.js +52 -8
  108. package/src/contact/contact.js +1 -1
  109. package/src/order/address_picker.js +235 -0
  110. package/src/order/icon.js +32 -0
  111. package/src/order/index.js +86 -0
  112. package/src/order/order.js +1157 -0
  113. package/src/order/scratch +211 -0
  114. package/src/plugin.js +7 -52
  115. package/src/store/api.js +26 -1
  116. package/src/store/store.js +53 -3
  117. package/src/util/common.js +48 -2
  118. package/up +1 -1
  119. package/webpack.dev.js +2 -0
  120. package/dist/17db8166252.178.js +0 -1
  121. package/dist/17db8166252.213.js +0 -1
  122. package/dist/17db8166252.362.js +0 -1
  123. package/dist/17db8166252.441.js +0 -1
  124. package/dist/17db8166252.605.js +0 -1
  125. package/dist/17db8166252.619.js +0 -1
  126. package/dist/17db8166252.74.js +0 -1
  127. package/dist/17db8166252.782.js +0 -1
  128. package/dist/17db8166252.app.js +0 -1
  129. package/dist/17db8166252.library.js +0 -1
  130. package/dist/17db8166252.preview.js +0 -1
  131. package/dist/17db8166252.screenshoot.js +0 -1
  132. package/dist/619.js +0 -777
  133. package/order.js +0 -0
  134. package/test.js +0 -1
@@ -0,0 +1,489 @@
1
+ .text__danger {
2
+ color: @red;
3
+ }
4
+
5
+ .extension--close-btn {
6
+ background: #00000088;
7
+ border-radius: 8px;
8
+ .color(#ffffffaa);
9
+ right: 10px;
10
+ top: -35px;
11
+ font-size: 14px;
12
+ position: absolute;
13
+
14
+ padding: 5px 15px;
15
+ cursor: pointer;
16
+ &:hover {
17
+ background: #000000;
18
+ .color(#ffffff);
19
+ }
20
+ }
21
+
22
+ .extension--handle {
23
+ margin-bottom: 10px;
24
+
25
+ &:hover {
26
+ .extension--thumb {
27
+ background: #e0e0e0;
28
+ }
29
+ }
30
+ }
31
+
32
+ .extension--thumb {
33
+ width: 70px;
34
+ cursor: grabbing;
35
+ margin: 0 auto;
36
+ height: 6px;
37
+ background: #eaeaea;
38
+ border-radius: 5px;
39
+ flex: 1;
40
+ margin-top: 5px;
41
+ }
42
+
43
+ .extension {
44
+ border-top-left-radius: 10px;
45
+ position: absolute;
46
+ border-top-right-radius: 10px;
47
+ // position: absolute;
48
+ width: 100%;
49
+ bottom: 0;
50
+ /* centering */
51
+ left: 0;
52
+ border-bottom-left-radius: 15px;
53
+ border-bottom-right-radius: 15px;
54
+
55
+ display: flex;
56
+ flex-direction: column;
57
+ background: white;
58
+ z-index: 10;
59
+ }
60
+ .extension--overlay {
61
+ position: absolute;
62
+ height: 100%;
63
+ width: 100%;
64
+ background: black;
65
+ opacity: 0.3;
66
+ top: 0;
67
+ left: 0;
68
+ border-bottom-left-radius: 15px;
69
+ border-bottom-right-radius: 15px;
70
+ z-index: 9;
71
+ }
72
+
73
+ .order__footer {
74
+ margin-top: 40px;
75
+ .color(#888);
76
+ display: flex;
77
+ align-items: center;
78
+ justify-content: center;
79
+ margin-bottom: 20px;
80
+ }
81
+
82
+ .order__footer_delimiter {
83
+ width: 1px;
84
+ height: 15px;
85
+ border-right: 1px solid #bbb;
86
+ }
87
+
88
+ .order__footer_link {
89
+ padding: 0 10px;
90
+ font-size: 14px;
91
+
92
+ cursor: pointer;
93
+ &:hover {
94
+ text-decoration: none;
95
+ .color(#555);
96
+ }
97
+ }
98
+
99
+ .desktop.order {
100
+ border-radius: 0;
101
+ width: 780px;
102
+ margin: 0 auto;
103
+ height: 100%;
104
+
105
+ .order_section__line {
106
+ display: none;
107
+ }
108
+ .desktop_order__heading {
109
+ line-height: 20px;
110
+ }
111
+
112
+ .order_attachment__product_img {
113
+ width: 50px;
114
+ height: 50px;
115
+ }
116
+
117
+ .order_label {
118
+ font-weight: 500;
119
+ margin-top: 30px;
120
+ margin-bottom: 10px;
121
+ font-size: 16px;
122
+ }
123
+
124
+ .order_label:first-child {
125
+ margin-top: 0;
126
+ }
127
+
128
+ .order_recap {
129
+ margin-top: 0px;
130
+ background: #f4f4f4;
131
+ margin-top: 20px;
132
+ width: 250px;
133
+ box-shadow: 0 0 0 1px hsl(0deg 0% 69% / 20%), 0 15px 35px 0 rgb(49 49 93 / 8%), 0 5px 15px 0 rgb(0 0 0 / 6%);
134
+ border-radius: 6px;
135
+ background-color: #fff;
136
+ padding: 32px 32px 20px;
137
+ }
138
+
139
+ .order_acc_header {
140
+ display: flex;
141
+ align-items: center;
142
+ margin-top: 20px;
143
+ }
144
+
145
+ .order_acc_logo {
146
+ height: 50px;
147
+ }
148
+
149
+ .order_acc_name {
150
+ font-size: 16px;
151
+ margin-left: 10px;
152
+ border-left: 1px solid #aaa;
153
+ padding-left: 10px;
154
+ }
155
+
156
+ .order_summary_line {
157
+ align-items: center;
158
+ overflow: hidden;
159
+ padding: 5px 0;
160
+ display: flex;
161
+ justify-content: space-between;
162
+ }
163
+ }
164
+
165
+ .desktop_order__content {
166
+ display: flex;
167
+ }
168
+
169
+ .order {
170
+ // position: absolute;
171
+ width: 100%;
172
+
173
+ display: flex;
174
+ flex-direction: column;
175
+ background: white;
176
+ z-index: 10;
177
+
178
+ .ship_card {
179
+ display: flex;
180
+ align-items: center;
181
+ overflow: hidden;
182
+ width: 190px;
183
+ cursor: pointer;
184
+
185
+ padding: 10px 15px;
186
+ box-shadow: none;
187
+ border: 2px solid #eee;
188
+ .color(#777);
189
+ margin-top: 5px;
190
+ border-radius: 8px;
191
+ background: white;
192
+ &:hover {
193
+ .color(#555);
194
+ border: 2px solid #aaa;
195
+ }
196
+ transition: all 150ms ease-out;
197
+ }
198
+
199
+ .ship_card.ship_card__active {
200
+ .color(#333);
201
+ border: 2px solid #777;
202
+ background: #fafafa;
203
+ }
204
+
205
+ .order_ship_icon {
206
+ margin-top: -3px;
207
+ width: 15px;
208
+ height: 15px;
209
+ opacity: 0.6;
210
+ }
211
+
212
+ .card_section {
213
+ margin-top: 20px;
214
+ max-width: 500px;
215
+ box-shadow: 0 0 0 1px hsl(0deg 0% 69% / 20%), 0 15px 35px 0 rgb(49 49 93 / 8%), 0 5px 15px 0 rgb(0 0 0 / 6%);
216
+ border-radius: 6px;
217
+ background-color: #fff;
218
+ padding: 32px;
219
+ }
220
+
221
+ input[type='text'].form-control,
222
+ input[type='number'].form-control,
223
+ input[type='date'].form-control,
224
+ textarea.form-control,
225
+ select.form-control {
226
+ background: #f4f4f4;
227
+ border: 1px solid transparent;
228
+ padding: 7px 10px;
229
+ &:hover {
230
+ background: #f0f0f0;
231
+ }
232
+
233
+ &:focus,
234
+ &:active {
235
+ background: #eee;
236
+ }
237
+
238
+ &.err {
239
+ background: #ffe6e6;
240
+ border: 1px solid #ff8a8a;
241
+ }
242
+ }
243
+
244
+ .form {
245
+ box-shadow: none;
246
+ border: none;
247
+ padding: 0;
248
+ .radio {
249
+ height: unset;
250
+ }
251
+ }
252
+
253
+ .order--content {
254
+ display: flex;
255
+ flex: 1;
256
+ flex-direction: column;
257
+ // overflow: auto;
258
+ }
259
+
260
+ .order--content-content {
261
+ flex: 1;
262
+ overflow: auto;
263
+ }
264
+
265
+ .order--heading {
266
+ margin: 0;
267
+ margin-top: 20px;
268
+ padding-left: 20px;
269
+ padding-right: 20px;
270
+ padding-bottom: 8px;
271
+ line-height: 20px;
272
+ position: relative;
273
+ }
274
+
275
+ .order--header-desc {
276
+ .color(@text-muted);
277
+ font-size: 13px;
278
+ }
279
+
280
+ .order__product_line {
281
+ display: flex;
282
+ overflow: hidden;
283
+ }
284
+
285
+ .order--footer {
286
+ text-align: k center;
287
+ cursor: pointer;
288
+ display: flex;
289
+ justify-content: center;
290
+ align-items: flex-end;
291
+ .color(#acacac);
292
+ &:hover {
293
+ .color(black);
294
+ }
295
+ }
296
+
297
+ .order_section_label {
298
+ .color(#444);
299
+ margin-bottom: 5px;
300
+ text-transform: uppercase;
301
+ font-size: 13px;
302
+ font-weight: 500;
303
+ }
304
+
305
+ .order_label {
306
+ .color(#444);
307
+ margin-bottom: 5px;
308
+ text-transform: uppercase;
309
+ font-size: 13px;
310
+ font-weight: 500;
311
+ }
312
+
313
+ .order_section {
314
+ padding-left: 20px;
315
+ padding-right: 20px;
316
+ padding-bottom: 15px;
317
+ padding-top: 15px;
318
+ }
319
+
320
+ .order_section__line {
321
+ border-top: 4px solid #eee;
322
+ width: 100%;
323
+ }
324
+
325
+ .order_summary_line {
326
+ overflow: hidden;
327
+ padding: 3px 0;
328
+ display: flex;
329
+ justify-content: space-between;
330
+ }
331
+
332
+ .order_btn {
333
+ width: 100%;
334
+ }
335
+
336
+ .order_tracking_link {
337
+ text-decoration: underline;
338
+ cursor: pointer;
339
+ &:hover {
340
+ .color(@primary-color);
341
+ }
342
+ }
343
+
344
+ .order_tracking_link_icon {
345
+ margin-top: -3px;
346
+ width: 15px;
347
+ height: 15px;
348
+ }
349
+
350
+ .order_shipping_provider_logo {
351
+ width: 32px;
352
+ height: 32px;
353
+ margin-right: 10px;
354
+ }
355
+
356
+ .order_btn.order__btn__light {
357
+ background: #f0f0f0;
358
+ .color(black);
359
+ border-radius: 6px;
360
+ text-align: center;
361
+ padding: 8px;
362
+ cursor: pointer;
363
+
364
+ &:hover {
365
+ .color(black);
366
+ background: #ddd;
367
+ }
368
+ }
369
+ }
370
+
371
+ div.order__card {
372
+ display: flex;
373
+ padding: 15px;
374
+ box-shadow: none;
375
+ border: 2px solid #eee;
376
+ margin-top: 10px;
377
+ border-radius: 8px;
378
+ background: #fafafa;
379
+ }
380
+
381
+ div.order__card.order__card__active {
382
+ border: 2px solid #777;
383
+ background: white;
384
+ }
385
+
386
+ .order_form_label {
387
+ margin-top: 10px;
388
+ margin-bottom: 4px;
389
+ }
390
+
391
+ .btn-confirm-order {
392
+ width: 100%;
393
+ background: @primary-color;
394
+ display: flex;
395
+ align-items: center;
396
+ border-radius: 5px;
397
+ .color(@white);
398
+ padding: 15px 10px;
399
+ cursor: pointer;
400
+ justify-content: center;
401
+ font-weight: 500;
402
+ margin-top: 10px;
403
+ &:hover {
404
+ background: #0053d4;
405
+ }
406
+ }
407
+
408
+ .order__total {
409
+ font-weight: 500;
410
+ font-size: 20px;
411
+ .color(@primary-color);
412
+ }
413
+
414
+ .btn-cancel-order {
415
+ .color(#666);
416
+ &:hover {
417
+ .color(#333);
418
+ }
419
+ text-decoration: underline;
420
+ display: inline-block;
421
+ margin-top: 10px;
422
+ cursor: pointer;
423
+ }
424
+
425
+ .order_status {
426
+ text-transform: uppercase;
427
+ background: black;
428
+ .color (white);
429
+ display: inline-block;
430
+ border-radius: 4px;
431
+ padding: 6px 6px 4px 6px; // better for uppercase
432
+ line-height: 1;
433
+ font-weight: 500;
434
+ font-size: 12px;
435
+ }
436
+
437
+ .order_status.order_status__canceled {
438
+ background: whitesmoke;
439
+ .color(@black);
440
+ }
441
+
442
+ .order_status.order_status__cancel {
443
+ background: whitesmoke;
444
+ .color(@black);
445
+ }
446
+
447
+ .order_status.order_status__confirmed {
448
+ background: @primary-color;
449
+ .color(white);
450
+ }
451
+
452
+ .order_status.order_status__processing {
453
+ background: @primary-color;
454
+ .color(white);
455
+ }
456
+
457
+ .order_status.order_status__shipping {
458
+ background: @black;
459
+ .color(white);
460
+ }
461
+
462
+ .order_status.order_status__fullfilled {
463
+ background: @green;
464
+ .color(white);
465
+ }
466
+
467
+ .order_status.order_status__hold {
468
+ background: @red;
469
+ .color(white);
470
+ }
471
+
472
+ .order_status.order_status__draft {
473
+ background: @yellow;
474
+ .color(white);
475
+ }
476
+
477
+ .order_status.order_status__new {
478
+ background: @yellow;
479
+ .color(white);
480
+ }
481
+
482
+ .order_error {
483
+ display: flex;
484
+ flex-direction: column;
485
+ align-items: center;
486
+ justify-content: center;
487
+ height: 100%;
488
+ width: 100%;
489
+ }
@@ -56,12 +56,6 @@
56
56
  }
57
57
 
58
58
  .rating--handle {
59
- cursor: grab;
60
- width: 100%;
61
- display: flex;
62
- flex-direction: column;
63
- align-items: center;
64
- background-color: white;
65
59
  &:hover {
66
60
  .rating--thumb {
67
61
  background: #e0e0e0;
@@ -74,10 +68,11 @@
74
68
  height: 6px;
75
69
  background: #eaeaea;
76
70
  border-radius: 5px;
71
+ margin: 0 auto;
77
72
 
73
+ cursor: grabbing;
78
74
  margin-top: 8px;
79
- margin-bottom: 8px;
80
-
75
+ margin-bottom: 20px;
81
76
  }
82
77
 
83
78
  .rating--content {
package/babel.config.js CHANGED
@@ -1,7 +1,5 @@
1
1
  module.exports = {
2
- plugins: [
3
- ['@babel/plugin-transform-react-jsx', { pragma: 'h' }],
4
- ],
2
+ plugins: [['@babel/plugin-transform-react-jsx', {pragma: 'h'}], '@babel/plugin-proposal-class-properties'],
5
3
  comments: false,
6
- presets: [['@babel/preset-env', { useBuiltIns: 'usage', corejs: 3, targets: '> 5%, not dead' }]],
4
+ presets: [['@babel/preset-env', {useBuiltIns: 'usage', corejs: 3, targets: '> 5%, not dead'}]],
7
5
  }
@@ -7,6 +7,12 @@ exports.default = _default;
7
7
 
8
8
  var _index = _interopRequireDefault(require("./util/index.js"));
9
9
 
10
+ var common = _interopRequireWildcard(require("./common.js"));
11
+
12
+ 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); }
13
+
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
+
10
16
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
17
 
12
18
  function _default(store) {
@@ -24,7 +30,7 @@ function _default(store) {
24
30
  error
25
31
  } = await store.startConvo({
26
32
  initial_by: bot.id,
27
- locale: _index.default.detectLang(),
33
+ locale: common.getLocale(bot, _index.default.detectLang()),
28
34
  state: 'active',
29
35
  members: [{
30
36
  type: 'bot',
@@ -146,7 +146,9 @@ class ChatButton extends _common.Com {
146
146
 
147
147
  let greeting = _index.default.get(accountSetting, 'greeting', {});
148
148
 
149
- if (!greeting.message || !greeting.enabled) {
149
+ let text = this.props.t.i18n(_index.default.get(greeting, 'greeting', {})) || greeting.message;
150
+
151
+ if (!text || !greeting.enabled) {
150
152
  this.setState({
151
153
  previewEvent: {}
152
154
  });