@botonic/webchat-core 2.26.0 → 2.28.0

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 (62) hide show
  1. package/CHANGELOG.md +24 -0
  2. package/package.json +7 -2
  3. package/src/index.d.ts +1 -0
  4. package/src/index.js +2 -0
  5. package/src/index.js.map +1 -1
  6. package/src/lib/controllers/public.d.ts +73 -1
  7. package/src/lib/controllers/public.js +48 -0
  8. package/src/lib/controllers/public.js.map +1 -1
  9. package/src/lib/controllers/webchat.d.ts +43 -2
  10. package/src/lib/controllers/webchat.js +53 -2
  11. package/src/lib/controllers/webchat.js.map +1 -1
  12. package/src/lib/domain/index.d.ts +8 -2
  13. package/src/lib/domain/index.js.map +1 -1
  14. package/src/lib/infra/clients/hubtype-api.d.ts +3 -2
  15. package/src/lib/infra/clients/hubtype-api.js +4 -3
  16. package/src/lib/infra/clients/hubtype-api.js.map +1 -1
  17. package/src/lib/infra/clients/types.d.ts +2 -0
  18. package/src/lib/infra/repositories/storage/types.d.ts +2 -1
  19. package/src/lib/machines/message.d.ts +34 -1
  20. package/src/lib/machines/message.js +23 -15
  21. package/src/lib/machines/message.js.map +1 -1
  22. package/src/lib/machines/webchat.d.ts +147 -12
  23. package/src/lib/machines/webchat.js +224 -61
  24. package/src/lib/machines/webchat.js.map +1 -1
  25. package/src/lib/messages/factory.d.ts +89 -0
  26. package/src/lib/messages/factory.js +82 -0
  27. package/src/lib/messages/factory.js.map +1 -0
  28. package/src/lib/messages/index.d.ts +4 -0
  29. package/src/lib/messages/index.js +5 -0
  30. package/src/lib/messages/index.js.map +1 -0
  31. package/src/lib/messages/realtime/factory.d.ts +53 -0
  32. package/src/lib/messages/realtime/factory.js +70 -0
  33. package/src/lib/messages/realtime/factory.js.map +1 -0
  34. package/src/lib/messages/realtime/index.d.ts +2 -0
  35. package/src/lib/messages/realtime/index.js +3 -0
  36. package/src/lib/messages/realtime/index.js.map +1 -0
  37. package/src/lib/messages/realtime/realtime-response-message.d.ts +52 -0
  38. package/src/lib/messages/realtime/realtime-response-message.js +73 -0
  39. package/src/lib/messages/realtime/realtime-response-message.js.map +1 -0
  40. package/src/lib/messages/user/factory.d.ts +53 -0
  41. package/src/lib/messages/user/factory.js +59 -0
  42. package/src/lib/messages/user/factory.js.map +1 -0
  43. package/src/lib/messages/user/index.d.ts +2 -0
  44. package/src/lib/messages/user/index.js +3 -0
  45. package/src/lib/messages/user/index.js.map +1 -0
  46. package/src/lib/messages/user/user-input-message.d.ts +35 -0
  47. package/src/lib/messages/user/user-input-message.js +59 -0
  48. package/src/lib/messages/user/user-input-message.js.map +1 -0
  49. package/src/lib/messages/webchat-message.d.ts +61 -0
  50. package/src/lib/messages/webchat-message.js +74 -0
  51. package/src/lib/messages/webchat-message.js.map +1 -0
  52. package/src/lib/services/webchat-service.d.ts +21 -2
  53. package/src/lib/services/webchat-service.js +64 -10
  54. package/src/lib/services/webchat-service.js.map +1 -1
  55. package/src/lib/utils/locale-detection.d.ts +1 -1
  56. package/src/lib/utils/locale-detection.js +3 -3
  57. package/src/lib/utils/locale-detection.js.map +1 -1
  58. package/src/lib/webview/types.d.ts +0 -12
  59. package/src/lib/webview/types.js.map +1 -1
  60. package/src/lib/webview/utils.d.ts +17 -3
  61. package/src/lib/webview/utils.js +4 -9
  62. package/src/lib/webview/utils.js.map +1 -1
@@ -1,7 +1,10 @@
1
1
  import { __awaiter } from "tslib";
2
- import { MessageSentBy, WebchatMessageFactory, } from '@botonic/shared';
2
+ import { DEFAULT_WEBCHAT_CLIENT_SETTINGS, mergeWebchatClientSettings, } from '@botonic/shared';
3
+ import { MessageSentBy, MessageType } from '@botonic/shared';
4
+ import { WebchatClientSettings } from '@botonic/shared';
5
+ import { WebchatMessage, WebchatMessageFactory } from '../messages';
3
6
  import { v7 as uuidv7 } from 'uuid';
4
- import { and, assertEvent, assign, createActor, emit, fromPromise, setup, } from 'xstate';
7
+ import { and, assertEvent, assign, createActor, emit, fromCallback, fromPromise, setup, } from 'xstate';
5
8
  import { createStorageRepository, } from '../infra/repositories';
6
9
  import { WebchatService, } from '../services/webchat-service';
7
10
  import { detectUserLocale } from '../utils/locale-detection';
@@ -13,15 +16,31 @@ function generateAnonymousUser(localeProps, extraData) {
13
16
  const userLocale = detectUserLocale(localeProps);
14
17
  return Object.assign(Object.assign({ id: userId, name: 'Anonymous User' }, userLocale), { extra_data: extraData });
15
18
  }
19
+ function fileToDataUrl(file) {
20
+ return new Promise((resolve, reject) => {
21
+ const reader = new FileReader();
22
+ reader.onloadend = () => resolve(reader.result);
23
+ reader.onerror = reject;
24
+ reader.readAsDataURL(file);
25
+ });
26
+ }
16
27
  /**
17
- * Helper function to create a postMessage actor for sending messages to the backend
28
+ * Helper function to create a postMessage actor for sending messages to the backend.
29
+ * When a File is provided the binary content is converted to a base64 data URL and
30
+ * sent as attachment_content — keeping the stored message (localStorage) small by
31
+ * only holding the blob URL in attachment_url.
18
32
  */
19
33
  function createPostMessageActor(webchatService) {
20
- return fromPromise((_a) => __awaiter(this, [_a], void 0, function* ({ input: { message, user }, }) {
34
+ return fromPromise((_a) => __awaiter(this, [_a], void 0, function* ({ input: { message, user, file }, }) {
21
35
  if (!webchatService) {
22
36
  throw new Error('Webchat service not initialized');
23
37
  }
24
- const response = yield webchatService.sendMessage(message, user);
38
+ let messageToSend = message;
39
+ if (file) {
40
+ const dataUrl = yield fileToDataUrl(file);
41
+ messageToSend = new WebchatMessage(message.type, Object.assign(Object.assign({}, message.data), { attachment_url: undefined, attachment_content: dataUrl }), message);
42
+ }
43
+ const response = yield webchatService.sendMessage(messageToSend, user);
25
44
  if (!response.success) {
26
45
  throw new Error(response.error || `Failed to send message`);
27
46
  }
@@ -90,6 +109,16 @@ export const WebchatMachine = setup({
90
109
  }
91
110
  return { success: true };
92
111
  })),
112
+ subscribeToService: fromCallback(({ input, sendBack, }) => {
113
+ const u1 = input.webchatService.onMessageReceived(msg => sendBack({ type: 'MESSAGE_RECEIVED', message: msg }));
114
+ const u2 = input.webchatService.onMessageInfoUpdated(update => sendBack({ type: 'MESSAGE_INFO_RECEIVED', update }));
115
+ const u3 = input.webchatService.onConnectionStatusChange(status => sendBack({ type: 'CONNECTION_STATUS_CHANGED', status }));
116
+ return () => {
117
+ u1();
118
+ u2();
119
+ u3();
120
+ };
121
+ }),
93
122
  },
94
123
  actions: {
95
124
  // Actions extracted from connection machine
@@ -163,41 +192,40 @@ export const WebchatMachine = setup({
163
192
  title: event.title,
164
193
  });
165
194
  },
166
- // Subscribe to WebchatService message callbacks
167
- subscribeToWebchatService: ({ context, self }) => {
168
- if (!context.webchatService) {
169
- console.warn('⚠️ No webchat service available for subscriptions');
170
- return;
171
- }
172
- // Subscribe to received messages from bot
173
- const unsubscribeMessages = context.webchatService.onMessageReceived((message) => {
174
- self.send({
175
- type: 'MESSAGE_RECEIVED',
176
- message,
177
- });
178
- });
179
- // Subscribe to connection status changes (better than polling!)
180
- const unsubscribeStatus = context.webchatService.onConnectionStatusChange(status => {
181
- console.log(`🔄 Connection status changed: ${status}`);
182
- self.send({
183
- type: 'CONNECTION_STATUS_CHANGED',
184
- status,
185
- });
186
- });
187
- context._unsubscribeMessages = unsubscribeMessages;
188
- context._unsubscribeStatus = unsubscribeStatus;
189
- },
190
- // Cleanup webchat service subscriptions
191
- cleanupWebchatServiceSubscriptions: ({ context }) => {
192
- if (context._unsubscribeMessages) {
193
- ;
194
- context._unsubscribeMessages();
195
- }
196
- if (context._unsubscribeStatus) {
197
- ;
198
- context._unsubscribeStatus();
199
- }
200
- },
195
+ initializeClientSettingsFromChannelData: assign({
196
+ effectiveWebchatClientSettings: ({ context }) => {
197
+ var _a;
198
+ // Priority (lowest highest): defaults channel data → config overrides
199
+ const configOverrides = context.config.webchatClientSettings;
200
+ try {
201
+ const channelSettings = (_a = context.webchatService) === null || _a === void 0 ? void 0 : _a.getChannelData().webchatClientSettings;
202
+ const fromChannel = channelSettings
203
+ ? mergeWebchatClientSettings(DEFAULT_WEBCHAT_CLIENT_SETTINGS, channelSettings)
204
+ : DEFAULT_WEBCHAT_CLIENT_SETTINGS;
205
+ return new WebchatClientSettings(Object.assign(Object.assign({}, fromChannel), configOverrides));
206
+ }
207
+ catch (_b) {
208
+ return new WebchatClientSettings(Object.assign(Object.assign({}, DEFAULT_WEBCHAT_CLIENT_SETTINGS), configOverrides));
209
+ }
210
+ },
211
+ }),
212
+ applyClientSettingsFromMessage: assign({
213
+ effectiveWebchatClientSettings: ({ context, event }) => {
214
+ assertEvent(event, 'MESSAGE_RECEIVED');
215
+ if (event.message.type !== MessageType.WebchatClientSettings) {
216
+ return context.effectiveWebchatClientSettings;
217
+ }
218
+ return mergeWebchatClientSettings(context.effectiveWebchatClientSettings, new WebchatClientSettings(event.message.data));
219
+ },
220
+ isSuppressingTypingEventsUntilClientSettingsUpdate: false,
221
+ }),
222
+ suppressTypingUntilClientSettingsUpdate: assign({
223
+ isTypingOn: false,
224
+ isSuppressingTypingEventsUntilClientSettingsUpdate: true,
225
+ }),
226
+ stopSuppressingTypingEvents: assign({
227
+ isSuppressingTypingEventsUntilClientSettingsUpdate: false,
228
+ }),
201
229
  // Toggle webchat open/close (direct handling)
202
230
  toggleWebchat: assign({
203
231
  isOpen: ({ context, event }) => {
@@ -254,6 +282,7 @@ export const WebchatMachine = setup({
254
282
  message,
255
283
  user: context.user,
256
284
  status,
285
+ file: event.type === 'SEND_MESSAGE' ? event.file : undefined,
257
286
  },
258
287
  systemId: message.id,
259
288
  });
@@ -263,6 +292,33 @@ export const WebchatMachine = setup({
263
292
  return newActors;
264
293
  },
265
294
  }),
295
+ clearConversationFromStorage: (_a) => __awaiter(void 0, [_a], void 0, function* ({ context }) {
296
+ if (!context.storageRepository || !context.user)
297
+ return;
298
+ const appId = context.appId || context.config.appId;
299
+ yield context.storageRepository.clearConversation(appId, context.user.id);
300
+ }),
301
+ clearAppDataFromStorage: (_a) => __awaiter(void 0, [_a], void 0, function* ({ context }) {
302
+ if (!context.storageRepository)
303
+ return;
304
+ const appId = context.appId || context.config.appId;
305
+ yield context.storageRepository.clearAppData(appId);
306
+ }),
307
+ disconnectService: ({ context }) => {
308
+ var _a;
309
+ (_a = context.webchatService) === null || _a === void 0 ? void 0 : _a.disconnect();
310
+ },
311
+ resetSessionContext: assign({
312
+ isOpen: () => false,
313
+ messageActors: () => new Map(),
314
+ user: () => undefined,
315
+ webchatService: () => undefined,
316
+ storageRepository: () => undefined,
317
+ appId: () => undefined,
318
+ connectionStatus: () => 'disconnected',
319
+ isTypingOn: () => false,
320
+ reconnectAttempt: () => 0,
321
+ }),
266
322
  // Save all messages to storage (derived from messageActors)
267
323
  saveMessages: (_a) => __awaiter(void 0, [_a], void 0, function* ({ context }) {
268
324
  if (!context.storageRepository || !context.user) {
@@ -276,8 +332,14 @@ export const WebchatMachine = setup({
276
332
  const snapshot = actor.getSnapshot();
277
333
  const message = snapshot.context.message;
278
334
  const status = snapshot.context.status;
279
- // Create simple StoredMessage object
280
- currentMessages.push(Object.assign({ status }, message));
335
+ // Strip blob URLs before persisting — they are tab-scoped and will be
336
+ // invalid after a page reload. The message will show without media until
337
+ // the Pusher update arrives with the CDN URL.
338
+ const data = message.data;
339
+ const persistedData = typeof (data === null || data === void 0 ? void 0 : data.attachment_url) === 'string' &&
340
+ data.attachment_url.startsWith('blob:')
341
+ ? Object.assign(Object.assign({}, data), { attachment_url: undefined }) : data;
342
+ currentMessages.push(Object.assign(Object.assign({ status }, message), { data: persistedData }));
281
343
  }
282
344
  // Use simple strings for the repository call
283
345
  const appId = context.appId || context.config.appId;
@@ -386,19 +448,29 @@ export const WebchatMachine = setup({
386
448
  assertEvent(event, 'UPDATE_MESSAGE');
387
449
  const actors = new Map(context.messageActors);
388
450
  const actor = actors.get(event.messageId);
389
- // if (actor) {
390
- // // Send update to the message actor
391
- // actor.send({
392
- // type: 'UPDATE_MESSAGE_INFO',
393
- // message: {
394
- // id: event.messageId,
395
- // data: event.updates as any,
396
- // },
397
- // })
398
- // }
451
+ if (actor) {
452
+ actor.send({
453
+ type: 'UPDATE_MESSAGE_INFO',
454
+ message: {
455
+ id: event.messageId,
456
+ data: event.updates,
457
+ },
458
+ });
459
+ }
399
460
  return actors;
400
461
  },
401
462
  }),
463
+ updateMessageWithInfo: ({ context, event }) => {
464
+ var _a;
465
+ assertEvent(event, 'MESSAGE_INFO_RECEIVED');
466
+ const actor = (_a = context.messageActors) === null || _a === void 0 ? void 0 : _a.get(event.update.id);
467
+ if (actor) {
468
+ actor.send({
469
+ type: 'UPDATE_MESSAGE_INFO',
470
+ message: event.update,
471
+ });
472
+ }
473
+ },
402
474
  deleteMessage: assign({
403
475
  messageActors: ({ context, event }) => {
404
476
  assertEvent(event, 'DELETE_MESSAGE');
@@ -407,11 +479,11 @@ export const WebchatMachine = setup({
407
479
  return actors;
408
480
  },
409
481
  }),
410
- setTyping: assign({
411
- isTypingOn: ({ event }) => {
412
- assertEvent(event, 'MESSAGE_RECEIVED');
413
- return event.message.isTypingOn;
414
- },
482
+ setTypingOn: assign({
483
+ isTypingOn: () => true,
484
+ }),
485
+ setTypingOff: assign({
486
+ isTypingOn: () => false,
415
487
  }),
416
488
  setTypingExternal: assign({
417
489
  isTypingOn: ({ event }) => {
@@ -419,6 +491,12 @@ export const WebchatMachine = setup({
419
491
  return event.isTypingOn;
420
492
  },
421
493
  }),
494
+ setSoundsEnabled: assign({
495
+ soundsEnabled: ({ event }) => {
496
+ assertEvent(event, 'TOGGLE_SOUNDS');
497
+ return event.enabled;
498
+ },
499
+ }),
422
500
  setOnline: ({ context, event }) => {
423
501
  assertEvent(event, 'SET_ONLINE');
424
502
  // Handle online/offline status
@@ -439,6 +517,24 @@ export const WebchatMachine = setup({
439
517
  assertEvent(event, ['MESSAGE_RECEIVED']);
440
518
  return event.message.isTypingEvent();
441
519
  },
520
+ shouldShowTypingEvents: ({ context }) => !context.isSuppressingTypingEventsUntilClientSettingsUpdate,
521
+ isSuppressedTypingEvent: ({ context, event }) => {
522
+ assertEvent(event, ['MESSAGE_RECEIVED']);
523
+ return (context.isSuppressingTypingEventsUntilClientSettingsUpdate &&
524
+ event.message.isTypingEvent());
525
+ },
526
+ isTypingOnEvent: ({ event }) => {
527
+ assertEvent(event, ['MESSAGE_RECEIVED']);
528
+ return event.message.isTypingEvent() && event.message.isTypingOn;
529
+ },
530
+ isTypingOffEvent: ({ event }) => {
531
+ assertEvent(event, ['MESSAGE_RECEIVED']);
532
+ return event.message.isTypingEvent() && !event.message.isTypingOn;
533
+ },
534
+ isWebchatClientSettings: ({ event }) => {
535
+ assertEvent(event, ['MESSAGE_RECEIVED']);
536
+ return event.message.type === MessageType.WebchatClientSettings;
537
+ },
442
538
  },
443
539
  }).createMachine({
444
540
  /** @xstate-layout N4IgpgJg5mDOIC5QHcwCMDGALAhgFwDoBLCAGzAGIBJAOSoBUqBBAGSoC0BRAbQAYBdRKAAOAe1hE8RUQDshIAB6IAjACYArAQBs6gBy6ALAHYAnAGZel9Vq0AaEAE8V63kYImb6o731Gz65TMAXyD7VExcQiIZSSIcUiIAL2ioYhipeKSUgGUwACcANyIMOAoIWTA0gtEAa0rw7Hw02MzkmVToloS2qFzC4rgEaOqMfGkZPn5J+TEJKVl5JQQvAwI9Ay1eLVVdDVUTXXsnBGV1awI1VUsdU91edRMQsPRGqPS47pTmjM-2vqKSrAKPk8qI8gRhKR8AAzMEAWwIDUi3w+WXaKNaOXyAMGw1Eo3mEwE0yQIFmsQWpKWGkMBDMuxMqiMgQOZgM6iOKjMyguBkM9LMqgsrgMBieICRTU6PzRqVIohwECxsAksjKFSqtXqL2R0tRPQI8sVytVMiGMhGY1kkxJInEFLkVJU900m14yhMRjOWiMu1UnJOBjZBFMqlUxk9ljZYtCEp1UvemPRRqVfzgpvVMkqeLqiPjby6ssNCtTvXT43NlsJNuUglJ5MJi2dZ20lg9XusvrDAdOWlWylFGxMPh2ujU4slBZlBpTJvGwLyoPBkJh8LzEQThZnJbnskr+KtRKmAhm9sbToQGhMq3p+yZLN0bI5jhURjcntUOg7Pq0-l0E-zDFfjlHd2gAWXTHAYCBcos01XNJyAotZ3AyDoP3AlxhtE96zPcYmxOLRlB5LRdCMAwTEZPQB2sHsLC0Ol1A0LRKN4YctgAjcp31L4UKgCCVSg0oQTBCEoTwWE8gRRC9STEDjVQwT0LxTDrWJHC7TmfCL2UIiSLIiiqLHdk7BfQNmRDMwbDItRqMeWMZMTYCCFgYQcGQGJ2gABXyCRYDwSABNgISgVtMk8MpUBqVOXg1h8EwAl4GldHUAw6P2AhXGZMNfQCdl1E414kINDBZCzDApHaehRAAJTAeIpDhShYOzC0tXXIrZOc0qZHKyqoGquqGqIJqMMPbC600h0CJpG8GXvMxWXZHsmTcO4-AHDtTGCBzAK6oser6lJBvq0hGsoETl3EyTpL2pyDrKsAKuO2rTvOsbq3Uybwq0yLFEQWa6Xm5lFsfZazIHIU6TYyjRTuRbP0K5FDqewkADEcCIcgIAoGrOHoGqAE0AH0AGEAHkaBoThScYSmwobbSooBvRLN2HQ+TZIxwwDMc6TDExlFMX0WLDJGmjyJ7Hue9pM1a6oEMAyWUZlqAPqwr7T1+x1mcvci6WUSw+WIjn9DSiGqJDZRdCInQbFFa3xcIZXpf6hclzE1cpI65EXd61GUnVtTj2+xm-upPsDaNsddNSs2e0fMwCFFdQLHDQx7kd3auIIP2jtly7PYktdELzgP2iDo9uFrLXpovMN6WT31iPdCxh1SgMrkF9w7jOQWks5nbnhzsvVYoUmmBoUnOBYYm8YpqmafoBmIp1-6EHpd9eGN7x4v2DZO+31ZNh9E2kvIrQnYIURhHyQ94nHynqdpqhKeJ7J6CYegAFVsjJgAJSeABxTgAARFe2sCKb3cNvMcu9dCMmvKZY4qgWQEH0GoYc7IkrKCvjfO+hIH4L2fnTGg79P4-z-qTQBNAQHgJrrhSBF4LB82IsYMwFgDCG2tsg18XoCD7F-KGNifZDB4Nvnke+pBcY0yfkvCBdddbQKwXAywCD968MvKOIGLh2TXg4URAq2cir4MkYQ6R9ByZAKASwTgxMADqnAABC1Cv4KPPEogcPJt7Ch8XoQwmjY5JwMK4d014RzeFwcY5EpipEUGyJwGgoDiZgU4NkbITAQHuKZuvbkqdMpkW5J+D0VEzA9mMLoARZsGRESuBscRBDxgP1SekzJdj56cCoAANTAdk8OiBuRWQuC4Ji7pSK7CMHRXgSddKwxuFwhGDSzFNOkS0jJIC54006T0+hodV5QLZDyZkzdfzhl9G+Hs5g3AhP0acN8Y4NBLLiWstp5Cv6-wAcA3pGkfqKNyYbVQ7hU53GwR6XS-oIZXDWglJk3JSJcIMKoJ55iKDfy8qAr+djf6cBqn0teSw4WxTZAcIU60fTdghj4Bi1xLAiyYh4eyw8TESLiaTWxTAaopLSestJeKoEDiTn2Zkj4XD6GmZMsyVy4pXF-GYL02x-DIpWai9FmKuWtKyT8sO+KBkCuTkRN8wiDg2ADL6SplE-RbFTiwpF0SmixJRaAme+M7EvM1XsphnjRQwNIuREJewylmT7LFCiiKjC2ysmyf8drCAOuVQk+gxNKZsGpny5hulKmx3ymofw1qAyIqThw90HoHb6CZDGJlMSWUooTcTeghMvK0CAWmzxPoQz5UZD4AVTIAwBEqZsPk14zgUR0NGyt9rq3Kq8ji7IVAP6JOngQDJPT1U8pbf8ywFxhz7D8HpEWAZBSVJdNGQ9phPRKtkA-RxTiulUE4PYgg5Np00HXQS04qxPwILfElHQehO6ChDL3EljJDbGArXGHOcbL3SNoAwZgbAuCvpZpUvw7M45cx5hDX0gqPS-h9F4UwNgQixhkKICAcB5CTlrh49eABaTRtHNApQQXkt81hjCkSviQcg1GclLERT2UVFwnxfhSpRPQXH7o9F4-0y87I2afnQ8YTDxw2GrAorpH0XYsq2vHdxOSxUsT9EBDJnVl5zAKdNhh82qnU4mHQdtVK8KRRDwg51KTvFQJlhVDk7VBFHyAu8AlcNCUwMJUE6lTKlEPRypombSTW5PMKX4mhCjjC-lLBZDyPRfZiIBCKYEoMgWWJBgCOMoWCXpxfFcu5TyUAfJ5D8gFCAQUQqmYItbCwawnNbD8H2iFqnOH809F4Q29yUqVZ4uiFW-UTrDSau1+u4ZViCxsKcGLY5XDlI2D3Rk5ESkcPHDGggM3xgYyxpARbusdj622m2LYBbnyqf1vsAF28ErXnhlfUe-Urvr1pHKz7HhSKoKFiYTuqCmOkQ5oEMiZEL0yHiH96kCD7O6Q2KlbwVlryXJ2OgqMQoWLmFQdGkIQA */
@@ -457,17 +553,32 @@ export const WebchatMachine = setup({
457
553
  storageRepository: undefined,
458
554
  appId: undefined,
459
555
  isTypingOn: false,
556
+ isSuppressingTypingEventsUntilClientSettingsUpdate: false,
557
+ soundsEnabled: true,
460
558
  // Overlay actor (spawned child machine)
461
559
  overlayActor: spawn(OverlayMachine, {
462
560
  systemId: 'overlay',
463
561
  input: { initialState: null },
464
562
  }),
563
+ effectiveWebchatClientSettings: new WebchatClientSettings(input.webchatClientSettings),
465
564
  }),
466
565
  initial: 'idle',
467
566
  states: {
468
567
  idle: {
469
568
  on: {
470
569
  INITIALIZE: 'initializing',
570
+ // After resetSession the machine lands here; re-initialize when the
571
+ // user tries to open the webchat again (TOGGLE_WEBCHAT or open()).
572
+ TOGGLE_WEBCHAT: [
573
+ {
574
+ guard: ({ context, event }) => {
575
+ const next = event.isOpen !== undefined ? event.isOpen : !context.isOpen;
576
+ return next === true;
577
+ },
578
+ target: 'initializing',
579
+ actions: 'toggleWebchat',
580
+ },
581
+ ],
471
582
  },
472
583
  },
473
584
  initializing: {
@@ -556,6 +667,7 @@ export const WebchatMachine = setup({
556
667
  assign({
557
668
  connectionStatus: () => 'connected',
558
669
  }),
670
+ 'initializeClientSettingsFromChannelData',
559
671
  'saveUser',
560
672
  'emitInitializationCompleted',
561
673
  ],
@@ -651,8 +763,10 @@ export const WebchatMachine = setup({
651
763
  },
652
764
  },
653
765
  operational: {
654
- entry: 'subscribeToWebchatService',
655
- exit: 'cleanupWebchatServiceSubscriptions',
766
+ invoke: {
767
+ src: 'subscribeToService',
768
+ input: ({ context }) => ({ webchatService: context.webchatService }),
769
+ },
656
770
  on: {
657
771
  // Connection monitoring events
658
772
  CONNECTION_STATUS_CHANGED: [
@@ -689,9 +803,17 @@ export const WebchatMachine = setup({
689
803
  guard: 'isInitialized',
690
804
  actions: ['toggleWebchat', 'emitWebchatToggled'],
691
805
  },
806
+ WEBCHAT_CLIENT_SETTINGS_UPDATE_STARTED: {
807
+ guard: 'isInitialized',
808
+ actions: ['suppressTypingUntilClientSettingsUpdate'],
809
+ },
810
+ WEBCHAT_CLIENT_SETTINGS_UPDATE_FAILED: {
811
+ actions: ['stopSuppressingTypingEvents'],
812
+ },
692
813
  SEND_MESSAGE: {
693
814
  guard: 'isInitialized',
694
815
  actions: [
816
+ 'setTypingOff',
695
817
  'addMessage',
696
818
  'saveMessages',
697
819
  'emitMessageAdded',
@@ -700,12 +822,33 @@ export const WebchatMachine = setup({
700
822
  },
701
823
  MESSAGE_RECEIVED: [
702
824
  {
703
- guard: and(['isInitialized', 'isTypingEvent']),
704
- actions: ['setTyping'],
825
+ guard: and(['isInitialized', 'isWebchatClientSettings']),
826
+ actions: ['applyClientSettingsFromMessage'],
827
+ },
828
+ {
829
+ guard: and(['isInitialized', 'isSuppressedTypingEvent']),
830
+ actions: [],
831
+ },
832
+ {
833
+ guard: and([
834
+ 'isInitialized',
835
+ 'shouldShowTypingEvents',
836
+ 'isTypingOnEvent',
837
+ ]),
838
+ actions: ['setTypingOn'],
839
+ },
840
+ {
841
+ guard: and([
842
+ 'isInitialized',
843
+ 'shouldShowTypingEvents',
844
+ 'isTypingOffEvent',
845
+ ]),
846
+ actions: ['setTypingOff'],
705
847
  },
706
848
  {
707
849
  guard: 'isInitialized',
708
850
  actions: [
851
+ 'setTypingOff',
709
852
  'addMessage',
710
853
  'saveMessages',
711
854
  'emitMessageAdded',
@@ -727,10 +870,27 @@ export const WebchatMachine = setup({
727
870
  guard: 'isInitialized',
728
871
  actions: ['clearMessages', 'saveMessages', 'emitMessagesCleared'],
729
872
  },
873
+ START_OVER: {
874
+ guard: 'isInitialized',
875
+ actions: ['clearMessages', 'clearConversationFromStorage'],
876
+ },
877
+ RESET_SESSION: {
878
+ guard: 'isInitialized',
879
+ target: 'idle',
880
+ actions: [
881
+ 'clearAppDataFromStorage',
882
+ 'disconnectService',
883
+ 'resetSessionContext',
884
+ ],
885
+ },
730
886
  UPDATE_MESSAGE: {
731
887
  guard: 'isInitialized',
732
888
  actions: ['updateMessage', 'saveMessages', 'emitMessageUpdated'],
733
889
  },
890
+ MESSAGE_INFO_RECEIVED: {
891
+ guard: 'isInitialized',
892
+ actions: ['updateMessageWithInfo'],
893
+ },
734
894
  DELETE_MESSAGE: {
735
895
  guard: 'isInitialized',
736
896
  actions: ['deleteMessage', 'saveMessages', 'emitMessageDeleted'],
@@ -745,6 +905,9 @@ export const WebchatMachine = setup({
745
905
  guard: 'isInitialized',
746
906
  actions: ['setTypingExternal'],
747
907
  },
908
+ TOGGLE_SOUNDS: {
909
+ actions: ['setSoundsEnabled'],
910
+ },
748
911
  // Listen for persistence requests from message actors
749
912
  'PERSISTENCE.SAVE_MESSAGE': {
750
913
  guard: 'isInitialized',
@@ -1 +1 @@
1
- {"version":3,"file":"webchat.js","sourceRoot":"","sources":["../../../../../../../libs/botonic/webchat-core/src/lib/machines/webchat.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"webchat.js","sourceRoot":"","sources":["../../../../../../../libs/botonic/webchat-core/src/lib/machines/webchat.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,89 @@
1
+ import { WebchatMessageMetadata } from '@botonic/shared';
2
+ import { BotonicButtonType, MessageType, TypingEventName } from '@botonic/shared';
3
+ import { RealtimeRawResponseMessage } from './realtime/realtime-response-message';
4
+ import { UserInputMessage } from './user/user-input-message';
5
+ import { WebchatMessage } from './webchat-message';
6
+ type AttachmentInput = {
7
+ attachmentUrl: string;
8
+ attachmentContent?: never;
9
+ mimeType?: string;
10
+ filename?: string;
11
+ metadata?: WebchatMessageMetadata;
12
+ } | {
13
+ attachmentContent: string;
14
+ attachmentUrl?: never;
15
+ mimeType?: string;
16
+ filename?: string;
17
+ metadata?: WebchatMessageMetadata;
18
+ };
19
+ export interface StoredMessage extends WebchatMessage {
20
+ status?: string;
21
+ }
22
+ export declare class WebchatMessageFactory {
23
+ static fromUserInput(userInput: UserInputMessage): WebchatMessage;
24
+ static fromRealtimeRawResponseMessage(realtimeRawResponseMessage: RealtimeRawResponseMessage, providerId?: string): WebchatMessage;
25
+ static fromStoredMessage(storedMessage: StoredMessage): WebchatMessage;
26
+ static createText({ text, payload, metadata, }: {
27
+ text: string;
28
+ payload?: string;
29
+ metadata?: WebchatMessageMetadata;
30
+ }): WebchatMessage<MessageType.Text>;
31
+ static createPostback({ payload, metadata, }: {
32
+ payload: string;
33
+ metadata?: WebchatMessageMetadata;
34
+ }): WebchatMessage<MessageType.Postback>;
35
+ static createAudio({ attachmentUrl, attachmentContent, mimeType, filename, metadata, }: AttachmentInput): WebchatMessage<MessageType.Audio>;
36
+ static createImage({ attachmentUrl, attachmentContent, mimeType, filename, metadata, }: AttachmentInput): WebchatMessage<MessageType.Image>;
37
+ static createVideo({ attachmentUrl, attachmentContent, mimeType, filename, metadata, }: AttachmentInput): WebchatMessage<MessageType.Video>;
38
+ static createDocument({ attachmentUrl, attachmentContent, mimeType, filename, metadata, }: AttachmentInput): WebchatMessage<MessageType.Document>;
39
+ static createMedia({ file, attachmentUrl, metadata, }: {
40
+ file: File;
41
+ attachmentUrl: string;
42
+ metadata?: WebchatMessageMetadata;
43
+ }): WebchatMessage<MessageType.Image | MessageType.Video | MessageType.Document>;
44
+ static createLocation({ latitude, longitude, title, address, metadata, }: {
45
+ latitude: number;
46
+ longitude: number;
47
+ title?: string;
48
+ address?: string;
49
+ metadata?: WebchatMessageMetadata;
50
+ }): WebchatMessage<MessageType.Location>;
51
+ static createTypingEvent({ eventName, metadata, }: {
52
+ eventName: TypingEventName;
53
+ metadata?: WebchatMessageMetadata;
54
+ }): WebchatMessage<MessageType.TypingEvent>;
55
+ static createButtonMessage({ text, buttons, metadata, }: {
56
+ text: string;
57
+ buttons: Array<{
58
+ type: BotonicButtonType;
59
+ title: string;
60
+ url?: string;
61
+ payload?: string;
62
+ webview?: string;
63
+ }>;
64
+ metadata?: WebchatMessageMetadata;
65
+ }): WebchatMessage<MessageType.ButtonMessage>;
66
+ static createCarousel({ elements, text, metadata, }: {
67
+ text?: string;
68
+ elements: Array<{
69
+ id: string;
70
+ title: string;
71
+ subtitle: string;
72
+ image: string;
73
+ buttons: Array<{
74
+ type: BotonicButtonType;
75
+ title: string;
76
+ url?: string;
77
+ payload?: string;
78
+ webview?: string;
79
+ }>;
80
+ }>;
81
+ metadata?: WebchatMessageMetadata;
82
+ }): WebchatMessage<MessageType.Carousel>;
83
+ static createCustom({ name, props, metadata, }: {
84
+ name: string;
85
+ props: Record<string, unknown>;
86
+ metadata?: WebchatMessageMetadata;
87
+ }): WebchatMessage<MessageType.Custom>;
88
+ }
89
+ export {};