@botonic/react 1.0.0-beta.0 → 1.0.0-dev.2

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 (118) hide show
  1. package/lib/components/button.js +2 -0
  2. package/lib/components/button.js.map +1 -1
  3. package/lib/components/components.js +1 -1
  4. package/lib/components/image.js +47 -5
  5. package/lib/components/image.js.map +1 -1
  6. package/lib/components/index.js +6 -6
  7. package/lib/components/markdown.js +1 -1
  8. package/lib/components/multichannel/multichannel-utils.js +8 -6
  9. package/lib/components/multichannel/multichannel-utils.js.map +1 -1
  10. package/lib/components/timestamps.js +1 -1
  11. package/lib/constants.js +2 -1
  12. package/lib/constants.js.map +1 -1
  13. package/lib/dev-app.js +7 -6
  14. package/lib/dev-app.js.map +1 -1
  15. package/lib/index.d.ts +3 -0
  16. package/lib/index.js +20 -20
  17. package/lib/message-utils.js +1 -1
  18. package/lib/util/dom.js +8 -2
  19. package/lib/util/dom.js.map +1 -1
  20. package/lib/util/environment.js +1 -1
  21. package/lib/util/objects.js +1 -1
  22. package/lib/util/react.js +1 -1
  23. package/lib/util/webchat.js +1 -1
  24. package/lib/webchat/actions.js +5 -1
  25. package/lib/webchat/actions.js.map +1 -1
  26. package/lib/webchat/devices/device-adapter.js +14 -4
  27. package/lib/webchat/devices/device-adapter.js.map +1 -1
  28. package/lib/webchat/devices/scrollbar-controller.js +5 -3
  29. package/lib/webchat/devices/scrollbar-controller.js.map +1 -1
  30. package/lib/webchat/header.js +1 -1
  31. package/lib/webchat/hooks.js +25 -6
  32. package/lib/webchat/hooks.js.map +1 -1
  33. package/lib/webchat/index.js +1 -1
  34. package/lib/webchat/webchat-reducer.js +11 -0
  35. package/lib/webchat/webchat-reducer.js.map +1 -1
  36. package/lib/webchat/webchat.js +21 -4
  37. package/lib/webchat/webchat.js.map +1 -1
  38. package/lib/webchat/webview.js +1 -1
  39. package/lib/webchat-app.js +20 -9
  40. package/lib/webchat-app.js.map +1 -1
  41. package/package.json +6 -6
  42. package/src/components/button.jsx +2 -0
  43. package/src/dev-app.jsx +8 -3
  44. package/src/experimental/components/message.jsx +8 -2
  45. package/src/experimental/constants.js +189 -0
  46. package/src/experimental/contexts.jsx +36 -0
  47. package/src/experimental/dev-app.jsx +14 -7
  48. package/src/experimental/index.js +94 -25
  49. package/src/experimental/msg-to-botonic.jsx +8 -8
  50. package/src/experimental/react-bot.jsx +1 -1
  51. package/src/experimental/util/dom.js +55 -0
  52. package/src/experimental/util/objects.js +39 -0
  53. package/src/experimental/util/webchat.js +61 -0
  54. package/src/experimental/webchat/actions.jsx +24 -0
  55. package/src/experimental/webchat/hooks.js +296 -0
  56. package/src/experimental/webchat/messages-reducer.js +86 -0
  57. package/src/experimental/webchat/session-view.jsx +166 -0
  58. package/src/experimental/webchat/webchat-dev.jsx +23 -19
  59. package/src/experimental/webchat/webchat-reducer.js +68 -0
  60. package/src/experimental/webchat/webchat.jsx +109 -82
  61. package/src/experimental/webchat-app.jsx +39 -15
  62. package/src/index.d.ts +1 -0
  63. package/src/util/dom.js +5 -3
  64. package/src/webchat/actions.jsx +1 -0
  65. package/src/webchat/devices/device-adapter.js +16 -4
  66. package/src/webchat/devices/scrollbar-controller.js +9 -4
  67. package/src/webchat/hooks.js +10 -0
  68. package/src/webchat/webchat-reducer.js +3 -0
  69. package/src/webchat/webchat.jsx +2 -1
  70. package/src/webchat-app.jsx +6 -4
  71. package/lib/experimental/components/audio.js +0 -46
  72. package/lib/experimental/components/audio.js.map +0 -1
  73. package/lib/experimental/components/carousel.js +0 -194
  74. package/lib/experimental/components/carousel.js.map +0 -1
  75. package/lib/experimental/components/custom-message.js +0 -132
  76. package/lib/experimental/components/custom-message.js.map +0 -1
  77. package/lib/experimental/components/document.js +0 -69
  78. package/lib/experimental/components/document.js.map +0 -1
  79. package/lib/experimental/components/image.js +0 -47
  80. package/lib/experimental/components/image.js.map +0 -1
  81. package/lib/experimental/components/index.js +0 -184
  82. package/lib/experimental/components/index.js.map +0 -1
  83. package/lib/experimental/components/location.js +0 -54
  84. package/lib/experimental/components/location.js.map +0 -1
  85. package/lib/experimental/components/markdown.js +0 -103
  86. package/lib/experimental/components/markdown.js.map +0 -1
  87. package/lib/experimental/components/message.js +0 -353
  88. package/lib/experimental/components/message.js.map +0 -1
  89. package/lib/experimental/components/text.js +0 -80
  90. package/lib/experimental/components/text.js.map +0 -1
  91. package/lib/experimental/components/video.js +0 -49
  92. package/lib/experimental/components/video.js.map +0 -1
  93. package/lib/experimental/components/whatsapp-template.js +0 -53
  94. package/lib/experimental/components/whatsapp-template.js.map +0 -1
  95. package/lib/experimental/dev-app.js +0 -240
  96. package/lib/experimental/dev-app.js.map +0 -1
  97. package/lib/experimental/index.js +0 -748
  98. package/lib/experimental/index.js.map +0 -1
  99. package/lib/experimental/msg-to-botonic.js +0 -162
  100. package/lib/experimental/msg-to-botonic.js.map +0 -1
  101. package/lib/experimental/node-app.js +0 -97
  102. package/lib/experimental/node-app.js.map +0 -1
  103. package/lib/experimental/react-bot.js +0 -167
  104. package/lib/experimental/react-bot.js.map +0 -1
  105. package/lib/experimental/webchat/assets/Inter-VariableFont_slnt,wght.ttf +0 -0
  106. package/lib/experimental/webchat/assets/botonic-logo-white.svg +0 -16
  107. package/lib/experimental/webchat/assets/messenger.svg +0 -10
  108. package/lib/experimental/webchat/assets/open-new-window.svg +0 -3
  109. package/lib/experimental/webchat/assets/open.svg +0 -3
  110. package/lib/experimental/webchat/assets/telegram.svg +0 -10
  111. package/lib/experimental/webchat/assets/webchat.svg +0 -21
  112. package/lib/experimental/webchat/assets/whatsapp.svg +0 -4
  113. package/lib/experimental/webchat/webchat-dev.js +0 -300
  114. package/lib/experimental/webchat/webchat-dev.js.map +0 -1
  115. package/lib/experimental/webchat/webchat.js +0 -1044
  116. package/lib/experimental/webchat/webchat.js.map +0 -1
  117. package/lib/experimental/webchat-app.js +0 -635
  118. package/lib/experimental/webchat-app.js.map +0 -1
@@ -1,748 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- var _exportNames = {
9
- FullstackProdApp: true,
10
- FullstackDevApp: true,
11
- BrowserDevApp: true,
12
- BrowserProdApp: true,
13
- DevApp: true,
14
- WebchatApp: true,
15
- BotonicInputTester: true,
16
- BotonicOutputTester: true,
17
- Button: true,
18
- Element: true,
19
- MessageTemplate: true,
20
- Pic: true,
21
- Reply: true,
22
- ShareButton: true,
23
- Subtitle: true,
24
- Title: true,
25
- WebchatSettings: true,
26
- RequestContext: true,
27
- WebchatContext: true,
28
- staticAsset: true,
29
- getBotonicApp: true,
30
- WebviewApp: true,
31
- Audio: true,
32
- Carousel: true,
33
- customMessage: true,
34
- Document: true,
35
- Image: true,
36
- Location: true,
37
- Text: true,
38
- Video: true,
39
- WhatsappTemplate: true,
40
- msgsToBotonic: true,
41
- msgToBotonic: true,
42
- NodeApp: true,
43
- Webchat: true
44
- };
45
- Object.defineProperty(exports, "DevApp", {
46
- enumerable: true,
47
- get: function get() {
48
- return _devApp.DevApp;
49
- }
50
- });
51
- Object.defineProperty(exports, "WebchatApp", {
52
- enumerable: true,
53
- get: function get() {
54
- return _webchatApp.WebchatApp;
55
- }
56
- });
57
- Object.defineProperty(exports, "BotonicInputTester", {
58
- enumerable: true,
59
- get: function get() {
60
- return _botonicTester.BotonicInputTester;
61
- }
62
- });
63
- Object.defineProperty(exports, "BotonicOutputTester", {
64
- enumerable: true,
65
- get: function get() {
66
- return _botonicTester.BotonicOutputTester;
67
- }
68
- });
69
- Object.defineProperty(exports, "Button", {
70
- enumerable: true,
71
- get: function get() {
72
- return _button.Button;
73
- }
74
- });
75
- Object.defineProperty(exports, "Element", {
76
- enumerable: true,
77
- get: function get() {
78
- return _element.Element;
79
- }
80
- });
81
- Object.defineProperty(exports, "MessageTemplate", {
82
- enumerable: true,
83
- get: function get() {
84
- return _messageTemplate.MessageTemplate;
85
- }
86
- });
87
- Object.defineProperty(exports, "Pic", {
88
- enumerable: true,
89
- get: function get() {
90
- return _pic.Pic;
91
- }
92
- });
93
- Object.defineProperty(exports, "Reply", {
94
- enumerable: true,
95
- get: function get() {
96
- return _reply.Reply;
97
- }
98
- });
99
- Object.defineProperty(exports, "ShareButton", {
100
- enumerable: true,
101
- get: function get() {
102
- return _shareButton.ShareButton;
103
- }
104
- });
105
- Object.defineProperty(exports, "Subtitle", {
106
- enumerable: true,
107
- get: function get() {
108
- return _subtitle.Subtitle;
109
- }
110
- });
111
- Object.defineProperty(exports, "Title", {
112
- enumerable: true,
113
- get: function get() {
114
- return _title.Title;
115
- }
116
- });
117
- Object.defineProperty(exports, "WebchatSettings", {
118
- enumerable: true,
119
- get: function get() {
120
- return _webchatSettings.WebchatSettings;
121
- }
122
- });
123
- Object.defineProperty(exports, "RequestContext", {
124
- enumerable: true,
125
- get: function get() {
126
- return _contexts.RequestContext;
127
- }
128
- });
129
- Object.defineProperty(exports, "WebchatContext", {
130
- enumerable: true,
131
- get: function get() {
132
- return _contexts.WebchatContext;
133
- }
134
- });
135
- Object.defineProperty(exports, "staticAsset", {
136
- enumerable: true,
137
- get: function get() {
138
- return _environment.staticAsset;
139
- }
140
- });
141
- Object.defineProperty(exports, "getBotonicApp", {
142
- enumerable: true,
143
- get: function get() {
144
- return _webchat.getBotonicApp;
145
- }
146
- });
147
- Object.defineProperty(exports, "WebviewApp", {
148
- enumerable: true,
149
- get: function get() {
150
- return _webview.WebviewApp;
151
- }
152
- });
153
- Object.defineProperty(exports, "Audio", {
154
- enumerable: true,
155
- get: function get() {
156
- return _audio.Audio;
157
- }
158
- });
159
- Object.defineProperty(exports, "Carousel", {
160
- enumerable: true,
161
- get: function get() {
162
- return _carousel.Carousel;
163
- }
164
- });
165
- Object.defineProperty(exports, "customMessage", {
166
- enumerable: true,
167
- get: function get() {
168
- return _customMessage.customMessage;
169
- }
170
- });
171
- Object.defineProperty(exports, "Document", {
172
- enumerable: true,
173
- get: function get() {
174
- return _document.Document;
175
- }
176
- });
177
- Object.defineProperty(exports, "Image", {
178
- enumerable: true,
179
- get: function get() {
180
- return _image.Image;
181
- }
182
- });
183
- Object.defineProperty(exports, "Location", {
184
- enumerable: true,
185
- get: function get() {
186
- return _location.Location;
187
- }
188
- });
189
- Object.defineProperty(exports, "Text", {
190
- enumerable: true,
191
- get: function get() {
192
- return _text.Text;
193
- }
194
- });
195
- Object.defineProperty(exports, "Video", {
196
- enumerable: true,
197
- get: function get() {
198
- return _video.Video;
199
- }
200
- });
201
- Object.defineProperty(exports, "WhatsappTemplate", {
202
- enumerable: true,
203
- get: function get() {
204
- return _whatsappTemplate.WhatsappTemplate;
205
- }
206
- });
207
- Object.defineProperty(exports, "msgsToBotonic", {
208
- enumerable: true,
209
- get: function get() {
210
- return _msgToBotonic.msgsToBotonic;
211
- }
212
- });
213
- Object.defineProperty(exports, "msgToBotonic", {
214
- enumerable: true,
215
- get: function get() {
216
- return _msgToBotonic.msgToBotonic;
217
- }
218
- });
219
- Object.defineProperty(exports, "NodeApp", {
220
- enumerable: true,
221
- get: function get() {
222
- return _nodeApp.NodeApp;
223
- }
224
- });
225
- Object.defineProperty(exports, "Webchat", {
226
- enumerable: true,
227
- get: function get() {
228
- return _webchat2.Webchat;
229
- }
230
- });
231
- exports.BrowserProdApp = exports.BrowserDevApp = exports.FullstackDevApp = exports.FullstackProdApp = void 0;
232
-
233
- var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
234
-
235
- var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
236
-
237
- var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
238
-
239
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
240
-
241
- var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
242
-
243
- var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
244
-
245
- var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
246
-
247
- var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
248
-
249
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
250
-
251
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
252
-
253
- var _he = require("he");
254
-
255
- var _lodash = _interopRequireDefault(require("lodash.merge"));
256
-
257
- var _react = _interopRequireDefault(require("react"));
258
-
259
- var _reconnectingWebsocket = _interopRequireDefault(require("reconnecting-websocket"));
260
-
261
- var _devApp = require("./dev-app");
262
-
263
- var _reactBot = require("./react-bot");
264
-
265
- var _webchatDev = require("./webchat/webchat-dev");
266
-
267
- var _webchatApp = require("./webchat-app");
268
-
269
- var _botonicTester = require("../botonic-tester");
270
-
271
- var _button = require("../components/button");
272
-
273
- var _element = require("../components/element");
274
-
275
- var _messageTemplate = require("../components/message-template");
276
-
277
- var _multichannel = require("../components/multichannel");
278
-
279
- Object.keys(_multichannel).forEach(function (key) {
280
- if (key === "default" || key === "__esModule") return;
281
- if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
282
- if (key in exports && exports[key] === _multichannel[key]) return;
283
- Object.defineProperty(exports, key, {
284
- enumerable: true,
285
- get: function get() {
286
- return _multichannel[key];
287
- }
288
- });
289
- });
290
-
291
- var _pic = require("../components/pic");
292
-
293
- var _reply = require("../components/reply");
294
-
295
- var _shareButton = require("../components/share-button");
296
-
297
- var _subtitle = require("../components/subtitle");
298
-
299
- var _title = require("../components/title");
300
-
301
- var _webchatSettings = require("../components/webchat-settings");
302
-
303
- var _contexts = require("../contexts");
304
-
305
- var _environment = require("../util/environment");
306
-
307
- var _webchat = require("../webchat");
308
-
309
- var _webview = require("../webview");
310
-
311
- var _audio = require("./components/audio");
312
-
313
- var _carousel = require("./components/carousel");
314
-
315
- var _customMessage = require("./components/custom-message");
316
-
317
- var _document = require("./components/document");
318
-
319
- var _image = require("./components/image");
320
-
321
- var _location = require("./components/location");
322
-
323
- var _text = require("./components/text");
324
-
325
- var _video = require("./components/video");
326
-
327
- var _whatsappTemplate = require("./components/whatsapp-template");
328
-
329
- var _msgToBotonic = require("./msg-to-botonic");
330
-
331
- var _nodeApp = require("./node-app");
332
-
333
- var _webchat2 = require("./webchat/webchat");
334
-
335
- var _excluded = ["theme", "persistentMenu", "coverComponent", "blockInputs", "enableEmojiPicker", "enableAttachments", "enableUserInput", "enableAnimations", "storage", "storageKey", "onInit", "onOpen", "onClose", "onMessage"],
336
- _excluded2 = ["theme", "persistentMenu", "coverComponent", "blockInputs", "enableEmojiPicker", "enableAttachments", "enableUserInput", "enableAnimations", "hostId", "shadowDOM", "defaultDelay", "defaultTyping", "storage", "storageKey", "onInit", "onOpen", "onClose", "onMessage", "appId", "visibility"];
337
-
338
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
339
-
340
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
341
-
342
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
343
-
344
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
345
-
346
- var WebsocketBackendService = /*#__PURE__*/function () {
347
- function WebsocketBackendService(_ref) {
348
- var user = _ref.user,
349
- lastMessageId = _ref.lastMessageId,
350
- onEvent = _ref.onEvent;
351
- (0, _classCallCheck2["default"])(this, WebsocketBackendService);
352
- this.user = user || {};
353
- this.lastMessageId = lastMessageId;
354
- console.log(onEvent);
355
- this.onEvent = onEvent;
356
- this.init();
357
- }
358
-
359
- (0, _createClass2["default"])(WebsocketBackendService, [{
360
- key: "init",
361
- value: function init(user, lastMessageId) {
362
- var _this = this;
363
-
364
- if (user) this.user = user;
365
- if (lastMessageId) this.lastMessageId = lastMessageId;
366
- if (this.wsClient || !this.user.id) return; // Establish WebSocket Connection
367
- // eslint-disable-next-line no-undef
368
-
369
- this.wsClient = new _reconnectingWebsocket["default"](WEBSOCKET_URL); // On Connection Established...
370
-
371
- this.wsClient.addEventListener('open', function (event) {}); // On Event Received...
372
-
373
- this.wsClient.addEventListener('message', function (event) {
374
- console.log(event, _this.onEvent);
375
- var message = JSON.parse((0, _he.decode)(event.data));
376
- if (_this.onEvent && typeof _this.onEvent === 'function') _this.onEvent({
377
- message: message
378
- });
379
- });
380
- }
381
- }, {
382
- key: "postMessage",
383
- value: function () {
384
- var _postMessage = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(user, message) {
385
- return _regenerator["default"].wrap(function _callee$(_context) {
386
- while (1) {
387
- switch (_context.prev = _context.next) {
388
- case 0:
389
- if (this.wsClient.readyState > 1) this.wsClient.reconnect();
390
- this.wsClient.send(JSON.stringify({
391
- sender: user,
392
- message: message
393
- }));
394
-
395
- case 2:
396
- case "end":
397
- return _context.stop();
398
- }
399
- }
400
- }, _callee, this);
401
- }));
402
-
403
- function postMessage(_x, _x2) {
404
- return _postMessage.apply(this, arguments);
405
- }
406
-
407
- return postMessage;
408
- }()
409
- }]);
410
- return WebsocketBackendService;
411
- }();
412
-
413
- var FullstackProdApp = /*#__PURE__*/function (_WebchatApp) {
414
- (0, _inherits2["default"])(FullstackProdApp, _WebchatApp);
415
-
416
- var _super = _createSuper(FullstackProdApp);
417
-
418
- function FullstackProdApp() {
419
- (0, _classCallCheck2["default"])(this, FullstackProdApp);
420
- return _super.apply(this, arguments);
421
- }
422
-
423
- (0, _createClass2["default"])(FullstackProdApp, [{
424
- key: "onUserInput",
425
- value: function () {
426
- var _onUserInput = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2(_ref2) {
427
- var user, input;
428
- return _regenerator["default"].wrap(function _callee2$(_context2) {
429
- while (1) {
430
- switch (_context2.prev = _context2.next) {
431
- case 0:
432
- user = _ref2.user, input = _ref2.input;
433
- this.onMessage && this.onMessage(this, {
434
- from: 'user',
435
- message: input
436
- });
437
- this.backendService.postMessage(user, input);
438
-
439
- case 3:
440
- case "end":
441
- return _context2.stop();
442
- }
443
- }
444
- }, _callee2, this);
445
- }));
446
-
447
- function onUserInput(_x3) {
448
- return _onUserInput.apply(this, arguments);
449
- }
450
-
451
- return onUserInput;
452
- }()
453
- }, {
454
- key: "onStateChange",
455
- value: function onStateChange(_ref3) {
456
- var _this2 = this;
457
-
458
- var user = _ref3.session.user,
459
- messagesJSON = _ref3.messagesJSON;
460
-
461
- if (!this.backendService && user) {
462
- var lastMessage = messagesJSON[messagesJSON.length - 1];
463
- this.backendService = new WebsocketBackendService({
464
- user: user,
465
- lastMessageId: lastMessage && lastMessage.id,
466
- onEvent: function onEvent(event) {
467
- return _this2.onServiceEvent(event);
468
- }
469
- });
470
- }
471
- }
472
- }]);
473
- return FullstackProdApp;
474
- }(_webchatApp.WebchatApp);
475
-
476
- exports.FullstackProdApp = FullstackProdApp;
477
-
478
- var FullstackDevApp = /*#__PURE__*/function (_DevApp) {
479
- (0, _inherits2["default"])(FullstackDevApp, _DevApp);
480
-
481
- var _super2 = _createSuper(FullstackDevApp);
482
-
483
- function FullstackDevApp(args) {
484
- var _this3;
485
-
486
- (0, _classCallCheck2["default"])(this, FullstackDevApp);
487
- _this3 = _super2.call(this, _objectSpread(_objectSpread({}, args), {}, {
488
- routes: []
489
- }));
490
- _this3.playgroundCode = args.playgroundCode;
491
- console.log('FullstackDevApp ', args.playgroundCode);
492
- return _this3;
493
- }
494
-
495
- (0, _createClass2["default"])(FullstackDevApp, [{
496
- key: "onUserInput",
497
- value: function () {
498
- var _onUserInput2 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee3(_ref4) {
499
- var user, input;
500
- return _regenerator["default"].wrap(function _callee3$(_context3) {
501
- while (1) {
502
- switch (_context3.prev = _context3.next) {
503
- case 0:
504
- user = _ref4.user, input = _ref4.input;
505
- this.onMessage && this.onMessage(this, {
506
- from: 'user',
507
- message: input
508
- });
509
- this.backendService && this.backendService.postMessage(user, input);
510
-
511
- case 3:
512
- case "end":
513
- return _context3.stop();
514
- }
515
- }
516
- }, _callee3, this);
517
- }));
518
-
519
- function onUserInput(_x4) {
520
- return _onUserInput2.apply(this, arguments);
521
- }
522
-
523
- return onUserInput;
524
- }()
525
- }, {
526
- key: "getComponent",
527
- value: function getComponent() {
528
- var _this4 = this;
529
-
530
- var optionsAtRuntime = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
531
- var _optionsAtRuntime$the = optionsAtRuntime.theme,
532
- theme = _optionsAtRuntime$the === void 0 ? {} : _optionsAtRuntime$the,
533
- persistentMenu = optionsAtRuntime.persistentMenu,
534
- coverComponent = optionsAtRuntime.coverComponent,
535
- blockInputs = optionsAtRuntime.blockInputs,
536
- enableEmojiPicker = optionsAtRuntime.enableEmojiPicker,
537
- enableAttachments = optionsAtRuntime.enableAttachments,
538
- enableUserInput = optionsAtRuntime.enableUserInput,
539
- enableAnimations = optionsAtRuntime.enableAnimations,
540
- storage = optionsAtRuntime.storage,
541
- storageKey = optionsAtRuntime.storageKey,
542
- onInit = optionsAtRuntime.onInit,
543
- onOpen = optionsAtRuntime.onOpen,
544
- onClose = optionsAtRuntime.onClose,
545
- onMessage = optionsAtRuntime.onMessage,
546
- webchatOptions = (0, _objectWithoutProperties2["default"])(optionsAtRuntime, _excluded);
547
- theme = (0, _lodash["default"])(this.theme, theme);
548
- persistentMenu = persistentMenu || this.persistentMenu;
549
- coverComponent = coverComponent || this.coverComponent;
550
- blockInputs = blockInputs || this.blockInputs;
551
- enableEmojiPicker = enableEmojiPicker || this.enableEmojiPicker;
552
- enableAttachments = enableAttachments || this.enableAttachments;
553
- enableUserInput = enableUserInput || this.enableUserInput;
554
- enableAnimations = enableAnimations || this.enableAnimations;
555
- storage = storage || this.storage;
556
- storageKey = storageKey || this.storageKey;
557
- this.onInit = onInit || this.onInit;
558
- this.onOpen = onOpen || this.onOpen;
559
- this.onClose = onClose || this.onClose;
560
- this.onMessage = onMessage || this.onMessage;
561
- return /*#__PURE__*/_react["default"].createElement(_webchatDev.WebchatDev, (0, _extends2["default"])({}, webchatOptions, {
562
- ref: this.webchatRef,
563
- host: this.host,
564
- shadowDOM: this.shadowDOM,
565
- theme: theme,
566
- persistentMenu: persistentMenu,
567
- coverComponent: coverComponent,
568
- blockInputs: blockInputs,
569
- enableEmojiPicker: enableEmojiPicker,
570
- enableAttachments: enableAttachments,
571
- enableUserInput: enableUserInput,
572
- enableAnimations: enableAnimations,
573
- storage: storage,
574
- storageKey: storageKey,
575
- playgroundCode: this.playgroundCode,
576
- onStateChange: function onStateChange(webchatState) {
577
- return _this4.onStateChange(webchatState);
578
- },
579
- getString: function getString(stringId, session) {
580
- return _this4.bot.getString(stringId, session);
581
- },
582
- setLocale: function setLocale(locale, session) {
583
- return _this4.bot.setLocale(locale, session);
584
- },
585
- onInit: function onInit() {
586
- return _this4.onInitWebchat.apply(_this4, arguments);
587
- },
588
- onOpen: function onOpen() {
589
- return _this4.onOpenWebchat.apply(_this4, arguments);
590
- },
591
- onClose: function onClose() {
592
- return _this4.onCloseWebchat.apply(_this4, arguments);
593
- },
594
- onUserInput: function onUserInput() {
595
- return _this4.onUserInput.apply(_this4, arguments);
596
- }
597
- }));
598
- }
599
- }, {
600
- key: "onStateChange",
601
- value: function onStateChange(_ref5) {
602
- var _this5 = this;
603
-
604
- var user = _ref5.session.user,
605
- messagesJSON = _ref5.messagesJSON;
606
-
607
- if (!this.backendService && user) {
608
- var lastMessage = messagesJSON[messagesJSON.length - 1];
609
- this.backendService = new WebsocketBackendService({
610
- user: user,
611
- lastMessageId: lastMessage && lastMessage.id,
612
- onEvent: function onEvent(event) {
613
- return _this5.onServiceEvent(event);
614
- }
615
- });
616
- }
617
- }
618
- }]);
619
- return FullstackDevApp;
620
- }(_devApp.DevApp);
621
-
622
- exports.FullstackDevApp = FullstackDevApp;
623
-
624
- var BrowserDevApp = /*#__PURE__*/function (_DevApp2) {
625
- (0, _inherits2["default"])(BrowserDevApp, _DevApp2);
626
-
627
- var _super3 = _createSuper(BrowserDevApp);
628
-
629
- function BrowserDevApp() {
630
- (0, _classCallCheck2["default"])(this, BrowserDevApp);
631
- return _super3.apply(this, arguments);
632
- }
633
-
634
- return BrowserDevApp;
635
- }(_devApp.DevApp);
636
-
637
- exports.BrowserDevApp = BrowserDevApp;
638
-
639
- var BrowserProdApp = /*#__PURE__*/function (_WebchatApp2) {
640
- (0, _inherits2["default"])(BrowserProdApp, _WebchatApp2);
641
-
642
- var _super4 = _createSuper(BrowserProdApp);
643
-
644
- function BrowserProdApp(_ref6) {
645
- var _this6;
646
-
647
- var _ref6$theme = _ref6.theme,
648
- theme = _ref6$theme === void 0 ? {} : _ref6$theme,
649
- persistentMenu = _ref6.persistentMenu,
650
- coverComponent = _ref6.coverComponent,
651
- blockInputs = _ref6.blockInputs,
652
- enableEmojiPicker = _ref6.enableEmojiPicker,
653
- enableAttachments = _ref6.enableAttachments,
654
- enableUserInput = _ref6.enableUserInput,
655
- enableAnimations = _ref6.enableAnimations,
656
- hostId = _ref6.hostId,
657
- shadowDOM = _ref6.shadowDOM,
658
- defaultDelay = _ref6.defaultDelay,
659
- defaultTyping = _ref6.defaultTyping,
660
- storage = _ref6.storage,
661
- storageKey = _ref6.storageKey,
662
- onInit = _ref6.onInit,
663
- onOpen = _ref6.onOpen,
664
- onClose = _ref6.onClose,
665
- onMessage = _ref6.onMessage,
666
- appId = _ref6.appId,
667
- visibility = _ref6.visibility,
668
- botOptions = (0, _objectWithoutProperties2["default"])(_ref6, _excluded2);
669
- (0, _classCallCheck2["default"])(this, BrowserProdApp);
670
- _this6 = _super4.call(this, {
671
- theme: theme,
672
- persistentMenu: persistentMenu,
673
- coverComponent: coverComponent,
674
- blockInputs: blockInputs,
675
- enableEmojiPicker: enableEmojiPicker,
676
- enableAttachments: enableAttachments,
677
- enableUserInput: enableUserInput,
678
- enableAnimations: enableAnimations,
679
- hostId: hostId,
680
- shadowDOM: shadowDOM,
681
- defaultDelay: defaultDelay,
682
- defaultTyping: defaultTyping,
683
- storage: storage,
684
- storageKey: storageKey,
685
- onInit: onInit,
686
- onOpen: onOpen,
687
- onClose: onClose,
688
- onMessage: onMessage,
689
- appId: appId,
690
- visibility: visibility
691
- });
692
- _this6.bot = new _reactBot.ReactBot(_objectSpread({}, botOptions));
693
- return _this6;
694
- }
695
-
696
- (0, _createClass2["default"])(BrowserProdApp, [{
697
- key: "onUserInput",
698
- value: function () {
699
- var _onUserInput3 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee4(_ref7) {
700
- var _this7 = this;
701
-
702
- var input, session, lastRoutePath, resp;
703
- return _regenerator["default"].wrap(function _callee4$(_context4) {
704
- while (1) {
705
- switch (_context4.prev = _context4.next) {
706
- case 0:
707
- input = _ref7.input, session = _ref7.session, lastRoutePath = _ref7.lastRoutePath;
708
- this.onMessage && this.onMessage(this, {
709
- from: 'user',
710
- message: input
711
- });
712
- _context4.next = 4;
713
- return this.bot.input({
714
- input: input,
715
- session: session,
716
- lastRoutePath: lastRoutePath
717
- });
718
-
719
- case 4:
720
- resp = _context4.sent;
721
- this.onMessage && resp.response.map(function (r) {
722
- return _this7.onMessage(_this7, {
723
- from: 'bot',
724
- message: r
725
- });
726
- });
727
- this.webchatRef.current.addBotResponse(resp);
728
-
729
- case 7:
730
- case "end":
731
- return _context4.stop();
732
- }
733
- }
734
- }, _callee4, this);
735
- }));
736
-
737
- function onUserInput(_x5) {
738
- return _onUserInput3.apply(this, arguments);
739
- }
740
-
741
- return onUserInput;
742
- }()
743
- }]);
744
- return BrowserProdApp;
745
- }(_webchatApp.WebchatApp);
746
-
747
- exports.BrowserProdApp = BrowserProdApp;
748
- //# sourceMappingURL=index.js.map