stream-chat 8.45.2 → 8.46.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.
package/dist/browser.js CHANGED
@@ -3562,6 +3562,111 @@ var Channel = /*#__PURE__*/function () {
3562
3562
 
3563
3563
  return keystroke;
3564
3564
  }()
3565
+ /**
3566
+ * Sends an event to update the AI state for a specific message.
3567
+ * Typically used by the server connected to the AI service to notify clients of state changes.
3568
+ *
3569
+ * @param messageId - The ID of the message associated with the AI state.
3570
+ * @param state - The new state of the AI process (e.g., thinking, generating).
3571
+ * @param options - Optional parameters, such as `ai_message`, to include additional details in the event.
3572
+ */
3573
+
3574
+ }, {
3575
+ key: "updateAIState",
3576
+ value: function () {
3577
+ var _updateAIState = _asyncToGenerator__default['default']( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee30(messageId, state) {
3578
+ var options,
3579
+ _args30 = arguments;
3580
+ return _regeneratorRuntime__default['default'].wrap(function _callee30$(_context30) {
3581
+ while (1) {
3582
+ switch (_context30.prev = _context30.next) {
3583
+ case 0:
3584
+ options = _args30.length > 2 && _args30[2] !== undefined ? _args30[2] : {};
3585
+ _context30.next = 3;
3586
+ return this.sendEvent(_objectSpread$a(_objectSpread$a({}, options), {}, {
3587
+ type: 'ai_indicator.update',
3588
+ message_id: messageId,
3589
+ ai_state: state
3590
+ }));
3591
+
3592
+ case 3:
3593
+ case "end":
3594
+ return _context30.stop();
3595
+ }
3596
+ }
3597
+ }, _callee30, this);
3598
+ }));
3599
+
3600
+ function updateAIState(_x29, _x30) {
3601
+ return _updateAIState.apply(this, arguments);
3602
+ }
3603
+
3604
+ return updateAIState;
3605
+ }()
3606
+ /**
3607
+ * Sends an event to notify watchers to clear the typing/thinking UI when the AI response starts streaming.
3608
+ * Typically used by the server connected to the AI service to inform clients that the AI response has started.
3609
+ */
3610
+
3611
+ }, {
3612
+ key: "clearAIIndicator",
3613
+ value: function () {
3614
+ var _clearAIIndicator = _asyncToGenerator__default['default']( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee31() {
3615
+ return _regeneratorRuntime__default['default'].wrap(function _callee31$(_context31) {
3616
+ while (1) {
3617
+ switch (_context31.prev = _context31.next) {
3618
+ case 0:
3619
+ _context31.next = 2;
3620
+ return this.sendEvent({
3621
+ type: 'ai_indicator.clear'
3622
+ });
3623
+
3624
+ case 2:
3625
+ case "end":
3626
+ return _context31.stop();
3627
+ }
3628
+ }
3629
+ }, _callee31, this);
3630
+ }));
3631
+
3632
+ function clearAIIndicator() {
3633
+ return _clearAIIndicator.apply(this, arguments);
3634
+ }
3635
+
3636
+ return clearAIIndicator;
3637
+ }()
3638
+ /**
3639
+ * Sends an event to stop AI response generation, leaving the message in its current state.
3640
+ * Triggered by the user to halt the AI response process.
3641
+ */
3642
+
3643
+ }, {
3644
+ key: "stopAIResponse",
3645
+ value: function () {
3646
+ var _stopAIResponse = _asyncToGenerator__default['default']( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee32() {
3647
+ return _regeneratorRuntime__default['default'].wrap(function _callee32$(_context32) {
3648
+ while (1) {
3649
+ switch (_context32.prev = _context32.next) {
3650
+ case 0:
3651
+ _context32.next = 2;
3652
+ return this.sendEvent({
3653
+ type: 'ai_indicator.stop'
3654
+ });
3655
+
3656
+ case 2:
3657
+ case "end":
3658
+ return _context32.stop();
3659
+ }
3660
+ }
3661
+ }, _callee32, this);
3662
+ }));
3663
+
3664
+ function stopAIResponse() {
3665
+ return _stopAIResponse.apply(this, arguments);
3666
+ }
3667
+
3668
+ return stopAIResponse;
3669
+ }()
3565
3670
  /**
3566
3671
  * stopTyping - Sets last typing to null and sends the typing.stop event
3567
3672
  * @see {@link https://getstream.io/chat/docs/typing_indicators/?language=js|Docs}
@@ -3571,22 +3676,22 @@ var Channel = /*#__PURE__*/function () {
3571
3676
  }, {
3572
3677
  key: "stopTyping",
3573
3678
  value: function () {
3574
- var _stopTyping = _asyncToGenerator__default['default']( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee30(parent_id, options) {
3575
- return _regeneratorRuntime__default['default'].wrap(function _callee30$(_context30) {
3679
+ var _stopTyping = _asyncToGenerator__default['default']( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee33(parent_id, options) {
3680
+ return _regeneratorRuntime__default['default'].wrap(function _callee33$(_context33) {
3576
3681
  while (1) {
3577
- switch (_context30.prev = _context30.next) {
3682
+ switch (_context33.prev = _context33.next) {
3578
3683
  case 0:
3579
3684
  if (this._isTypingIndicatorsEnabled()) {
3580
- _context30.next = 2;
3685
+ _context33.next = 2;
3581
3686
  break;
3582
3687
  }
3583
3688
 
3584
- return _context30.abrupt("return");
3689
+ return _context33.abrupt("return");
3585
3690
 
3586
3691
  case 2:
3587
3692
  this.lastTypingEvent = null;
3588
3693
  this.isTyping = false;
3589
- _context30.next = 6;
3694
+ _context33.next = 6;
3590
3695
  return this.sendEvent(_objectSpread$a({
3591
3696
  type: 'typing.stop',
3592
3697
  parent_id: parent_id
@@ -3594,13 +3699,13 @@ var Channel = /*#__PURE__*/function () {
3594
3699
 
3595
3700
  case 6:
3596
3701
  case "end":
3597
- return _context30.stop();
3702
+ return _context33.stop();
3598
3703
  }
3599
3704
  }
3600
- }, _callee30, this);
3705
+ }, _callee33, this);
3601
3706
  }));
3602
3707
 
3603
- function stopTyping(_x29, _x30) {
3708
+ function stopTyping(_x31, _x32) {
3604
3709
  return _stopTyping.apply(this, arguments);
3605
3710
  }
3606
3711
 
@@ -3652,39 +3757,39 @@ var Channel = /*#__PURE__*/function () {
3652
3757
  }, {
3653
3758
  key: "markRead",
3654
3759
  value: function () {
3655
- var _markRead = _asyncToGenerator__default['default']( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee31() {
3760
+ var _markRead = _asyncToGenerator__default['default']( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee34() {
3656
3761
  var _this$getConfig2;
3657
3762
 
3658
3763
  var data,
3659
- _args31 = arguments;
3660
- return _regeneratorRuntime__default['default'].wrap(function _callee31$(_context31) {
3764
+ _args34 = arguments;
3765
+ return _regeneratorRuntime__default['default'].wrap(function _callee34$(_context34) {
3661
3766
  while (1) {
3662
- switch (_context31.prev = _context31.next) {
3767
+ switch (_context34.prev = _context34.next) {
3663
3768
  case 0:
3664
- data = _args31.length > 0 && _args31[0] !== undefined ? _args31[0] : {};
3769
+ data = _args34.length > 0 && _args34[0] !== undefined ? _args34[0] : {};
3665
3770
 
3666
3771
  this._checkInitialized();
3667
3772
 
3668
3773
  if (!(!((_this$getConfig2 = this.getConfig()) !== null && _this$getConfig2 !== void 0 && _this$getConfig2.read_events) && !this.getClient()._isUsingServerAuth())) {
3669
- _context31.next = 4;
3774
+ _context34.next = 4;
3670
3775
  break;
3671
3776
  }
3672
3777
 
3673
- return _context31.abrupt("return", Promise.resolve(null));
3778
+ return _context34.abrupt("return", Promise.resolve(null));
3674
3779
 
3675
3780
  case 4:
3676
- _context31.next = 6;
3781
+ _context34.next = 6;
3677
3782
  return this.getClient().post(this._channelURL() + '/read', _objectSpread$a({}, data));
3678
3783
 
3679
3784
  case 6:
3680
- return _context31.abrupt("return", _context31.sent);
3785
+ return _context34.abrupt("return", _context34.sent);
3681
3786
 
3682
3787
  case 7:
3683
3788
  case "end":
3684
- return _context31.stop();
3789
+ return _context34.stop();
3685
3790
  }
3686
3791
  }
3687
- }, _callee31, this);
3792
+ }, _callee34, this);
3688
3793
  }));
3689
3794
 
3690
3795
  function markRead() {
@@ -3703,38 +3808,38 @@ var Channel = /*#__PURE__*/function () {
3703
3808
  }, {
3704
3809
  key: "markUnread",
3705
3810
  value: function () {
3706
- var _markUnread = _asyncToGenerator__default['default']( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee32(data) {
3811
+ var _markUnread = _asyncToGenerator__default['default']( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee35(data) {
3707
3812
  var _this$getConfig3;
3708
3813
 
3709
- return _regeneratorRuntime__default['default'].wrap(function _callee32$(_context32) {
3814
+ return _regeneratorRuntime__default['default'].wrap(function _callee35$(_context35) {
3710
3815
  while (1) {
3711
- switch (_context32.prev = _context32.next) {
3816
+ switch (_context35.prev = _context35.next) {
3712
3817
  case 0:
3713
3818
  this._checkInitialized();
3714
3819
 
3715
3820
  if (!(!((_this$getConfig3 = this.getConfig()) !== null && _this$getConfig3 !== void 0 && _this$getConfig3.read_events) && !this.getClient()._isUsingServerAuth())) {
3716
- _context32.next = 3;
3821
+ _context35.next = 3;
3717
3822
  break;
3718
3823
  }
3719
3824
 
3720
- return _context32.abrupt("return", Promise.resolve(null));
3825
+ return _context35.abrupt("return", Promise.resolve(null));
3721
3826
 
3722
3827
  case 3:
3723
- _context32.next = 5;
3828
+ _context35.next = 5;
3724
3829
  return this.getClient().post(this._channelURL() + '/unread', _objectSpread$a({}, data));
3725
3830
 
3726
3831
  case 5:
3727
- return _context32.abrupt("return", _context32.sent);
3832
+ return _context35.abrupt("return", _context35.sent);
3728
3833
 
3729
3834
  case 6:
3730
3835
  case "end":
3731
- return _context32.stop();
3836
+ return _context35.stop();
3732
3837
  }
3733
3838
  }
3734
- }, _callee32, this);
3839
+ }, _callee35, this);
3735
3840
  }));
3736
3841
 
3737
- function markUnread(_x31) {
3842
+ function markUnread(_x33) {
3738
3843
  return _markUnread.apply(this, arguments);
3739
3844
  }
3740
3845
 
@@ -3769,11 +3874,11 @@ var Channel = /*#__PURE__*/function () {
3769
3874
  }, {
3770
3875
  key: "watch",
3771
3876
  value: function () {
3772
- var _watch = _asyncToGenerator__default['default']( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee33(options) {
3877
+ var _watch = _asyncToGenerator__default['default']( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee36(options) {
3773
3878
  var defaultOptions, combined, state;
3774
- return _regeneratorRuntime__default['default'].wrap(function _callee33$(_context33) {
3879
+ return _regeneratorRuntime__default['default'].wrap(function _callee36$(_context36) {
3775
3880
  while (1) {
3776
- switch (_context33.prev = _context33.next) {
3881
+ switch (_context36.prev = _context36.next) {
3777
3882
  case 0:
3778
3883
  defaultOptions = {
3779
3884
  state: true,
@@ -3781,7 +3886,7 @@ var Channel = /*#__PURE__*/function () {
3781
3886
  presence: false
3782
3887
  }; // Make sure we wait for the connect promise if there is a pending one
3783
3888
 
3784
- _context33.next = 3;
3889
+ _context36.next = 3;
3785
3890
  return this.getClient().wsPromise;
3786
3891
 
3787
3892
  case 3:
@@ -3790,11 +3895,11 @@ var Channel = /*#__PURE__*/function () {
3790
3895
  }
3791
3896
 
3792
3897
  combined = _objectSpread$a(_objectSpread$a({}, defaultOptions), options);
3793
- _context33.next = 7;
3898
+ _context36.next = 7;
3794
3899
  return this.query(combined, 'latest');
3795
3900
 
3796
3901
  case 7:
3797
- state = _context33.sent;
3902
+ state = _context36.sent;
3798
3903
  this.initialized = true;
3799
3904
  this.data = state.channel;
3800
3905
 
@@ -3803,17 +3908,17 @@ var Channel = /*#__PURE__*/function () {
3803
3908
  channel: this
3804
3909
  });
3805
3910
 
3806
- return _context33.abrupt("return", state);
3911
+ return _context36.abrupt("return", state);
3807
3912
 
3808
3913
  case 12:
3809
3914
  case "end":
3810
- return _context33.stop();
3915
+ return _context36.stop();
3811
3916
  }
3812
3917
  }
3813
- }, _callee33, this);
3918
+ }, _callee36, this);
3814
3919
  }));
3815
3920
 
3816
- function watch(_x32) {
3921
+ function watch(_x34) {
3817
3922
  return _watch.apply(this, arguments);
3818
3923
  }
3819
3924
 
@@ -3828,31 +3933,31 @@ var Channel = /*#__PURE__*/function () {
3828
3933
  }, {
3829
3934
  key: "stopWatching",
3830
3935
  value: function () {
3831
- var _stopWatching = _asyncToGenerator__default['default']( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee34() {
3936
+ var _stopWatching = _asyncToGenerator__default['default']( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee37() {
3832
3937
  var response;
3833
- return _regeneratorRuntime__default['default'].wrap(function _callee34$(_context34) {
3938
+ return _regeneratorRuntime__default['default'].wrap(function _callee37$(_context37) {
3834
3939
  while (1) {
3835
- switch (_context34.prev = _context34.next) {
3940
+ switch (_context37.prev = _context37.next) {
3836
3941
  case 0:
3837
- _context34.next = 2;
3942
+ _context37.next = 2;
3838
3943
  return this.getClient().post(this._channelURL() + '/stop-watching', {});
3839
3944
 
3840
3945
  case 2:
3841
- response = _context34.sent;
3946
+ response = _context37.sent;
3842
3947
 
3843
3948
  this._client.logger('info', "channel:watch() - stopped watching channel ".concat(this.cid), {
3844
3949
  tags: ['channel'],
3845
3950
  channel: this
3846
3951
  });
3847
3952
 
3848
- return _context34.abrupt("return", response);
3953
+ return _context37.abrupt("return", response);
3849
3954
 
3850
3955
  case 5:
3851
3956
  case "end":
3852
- return _context34.stop();
3957
+ return _context37.stop();
3853
3958
  }
3854
3959
  }
3855
- }, _callee34, this);
3960
+ }, _callee37, this);
3856
3961
  }));
3857
3962
 
3858
3963
  function stopWatching() {
@@ -3875,37 +3980,37 @@ var Channel = /*#__PURE__*/function () {
3875
3980
  }, {
3876
3981
  key: "getReplies",
3877
3982
  value: function () {
3878
- var _getReplies = _asyncToGenerator__default['default']( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee35(parent_id, options, sort) {
3983
+ var _getReplies = _asyncToGenerator__default['default']( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee38(parent_id, options, sort) {
3879
3984
  var normalizedSort, data;
3880
- return _regeneratorRuntime__default['default'].wrap(function _callee35$(_context35) {
3985
+ return _regeneratorRuntime__default['default'].wrap(function _callee38$(_context38) {
3881
3986
  while (1) {
3882
- switch (_context35.prev = _context35.next) {
3987
+ switch (_context38.prev = _context38.next) {
3883
3988
  case 0:
3884
3989
  normalizedSort = sort ? normalizeQuerySort(sort) : undefined;
3885
- _context35.next = 3;
3990
+ _context38.next = 3;
3886
3991
  return this.getClient().get(this.getClient().baseURL + "/messages/".concat(encodeURIComponent(parent_id), "/replies"), _objectSpread$a({
3887
3992
  sort: normalizedSort
3888
3993
  }, options));
3889
3994
 
3890
3995
  case 3:
3891
- data = _context35.sent;
3996
+ data = _context38.sent;
3892
3997
 
3893
3998
  // add any messages to our thread state
3894
3999
  if (data.messages) {
3895
4000
  this.state.addMessagesSorted(data.messages);
3896
4001
  }
3897
4002
 
3898
- return _context35.abrupt("return", data);
4003
+ return _context38.abrupt("return", data);
3899
4004
 
3900
4005
  case 6:
3901
4006
  case "end":
3902
- return _context35.stop();
4007
+ return _context38.stop();
3903
4008
  }
3904
4009
  }
3905
- }, _callee35, this);
4010
+ }, _callee38, this);
3906
4011
  }));
3907
4012
 
3908
- function getReplies(_x33, _x34, _x35) {
4013
+ function getReplies(_x35, _x36, _x37) {
3909
4014
  return _getReplies.apply(this, arguments);
3910
4015
  }
3911
4016
 
@@ -3923,15 +4028,15 @@ var Channel = /*#__PURE__*/function () {
3923
4028
  }, {
3924
4029
  key: "getPinnedMessages",
3925
4030
  value: function () {
3926
- var _getPinnedMessages = _asyncToGenerator__default['default']( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee36(options) {
4031
+ var _getPinnedMessages = _asyncToGenerator__default['default']( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee39(options) {
3927
4032
  var sort,
3928
- _args36 = arguments;
3929
- return _regeneratorRuntime__default['default'].wrap(function _callee36$(_context36) {
4033
+ _args39 = arguments;
4034
+ return _regeneratorRuntime__default['default'].wrap(function _callee39$(_context39) {
3930
4035
  while (1) {
3931
- switch (_context36.prev = _context36.next) {
4036
+ switch (_context39.prev = _context39.next) {
3932
4037
  case 0:
3933
- sort = _args36.length > 1 && _args36[1] !== undefined ? _args36[1] : [];
3934
- _context36.next = 3;
4038
+ sort = _args39.length > 1 && _args39[1] !== undefined ? _args39[1] : [];
4039
+ _context39.next = 3;
3935
4040
  return this.getClient().get(this._channelURL() + '/pinned_messages', {
3936
4041
  payload: _objectSpread$a(_objectSpread$a({}, options), {}, {
3937
4042
  sort: normalizeQuerySort(sort)
@@ -3939,17 +4044,17 @@ var Channel = /*#__PURE__*/function () {
3939
4044
  });
3940
4045
 
3941
4046
  case 3:
3942
- return _context36.abrupt("return", _context36.sent);
4047
+ return _context39.abrupt("return", _context39.sent);
3943
4048
 
3944
4049
  case 4:
3945
4050
  case "end":
3946
- return _context36.stop();
4051
+ return _context39.stop();
3947
4052
  }
3948
4053
  }
3949
- }, _callee36, this);
4054
+ }, _callee39, this);
3950
4055
  }));
3951
4056
 
3952
- function getPinnedMessages(_x36) {
4057
+ function getPinnedMessages(_x38) {
3953
4058
  return _getPinnedMessages.apply(this, arguments);
3954
4059
  }
3955
4060
 
@@ -4085,7 +4190,7 @@ var Channel = /*#__PURE__*/function () {
4085
4190
  * @return {Promise<QueryChannelAPIResponse<StreamChatGenerics>>} Returns a query response
4086
4191
  */
4087
4192
  function () {
4088
- var _query = _asyncToGenerator__default['default']( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee37(options) {
4193
+ var _query = _asyncToGenerator__default['default']( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee40(options) {
4089
4194
  var _options$messages$lim, _options$messages, _this$data6, _this$data7;
4090
4195
 
4091
4196
  var messageSetToAddToIfDoesNotExist,
@@ -4096,14 +4201,14 @@ var Channel = /*#__PURE__*/function () {
4096
4201
  _this$_initializeStat,
4097
4202
  messageSet,
4098
4203
  areCapabilitiesChanged,
4099
- _args37 = arguments;
4204
+ _args40 = arguments;
4100
4205
 
4101
- return _regeneratorRuntime__default['default'].wrap(function _callee37$(_context37) {
4206
+ return _regeneratorRuntime__default['default'].wrap(function _callee40$(_context40) {
4102
4207
  while (1) {
4103
- switch (_context37.prev = _context37.next) {
4208
+ switch (_context40.prev = _context40.next) {
4104
4209
  case 0:
4105
- messageSetToAddToIfDoesNotExist = _args37.length > 1 && _args37[1] !== undefined ? _args37[1] : 'current';
4106
- _context37.next = 3;
4210
+ messageSetToAddToIfDoesNotExist = _args40.length > 1 && _args40[1] !== undefined ? _args40[1] : 'current';
4211
+ _context40.next = 3;
4107
4212
  return this.getClient().wsPromise;
4108
4213
 
4109
4214
  case 3:
@@ -4113,14 +4218,14 @@ var Channel = /*#__PURE__*/function () {
4113
4218
  queryURL += "/".concat(encodeURIComponent(this.id));
4114
4219
  }
4115
4220
 
4116
- _context37.next = 7;
4221
+ _context40.next = 7;
4117
4222
  return this.getClient().post(queryURL + '/query', _objectSpread$a({
4118
4223
  data: this._data,
4119
4224
  state: true
4120
4225
  }, options));
4121
4226
 
4122
4227
  case 7:
4123
- state = _context37.sent;
4228
+ state = _context40.sent;
4124
4229
 
4125
4230
  // update the channel id if it was missing
4126
4231
  if (!this.id) {
@@ -4176,17 +4281,17 @@ var Channel = /*#__PURE__*/function () {
4176
4281
  isLatestMessageSet: messageSet.isLatest
4177
4282
  }
4178
4283
  });
4179
- return _context37.abrupt("return", state);
4284
+ return _context40.abrupt("return", state);
4180
4285
 
4181
4286
  case 19:
4182
4287
  case "end":
4183
- return _context37.stop();
4288
+ return _context40.stop();
4184
4289
  }
4185
4290
  }
4186
- }, _callee37, this);
4291
+ }, _callee40, this);
4187
4292
  }));
4188
4293
 
4189
- function query(_x37) {
4294
+ function query(_x39) {
4190
4295
  return _query.apply(this, arguments);
4191
4296
  }
4192
4297
 
@@ -4203,31 +4308,31 @@ var Channel = /*#__PURE__*/function () {
4203
4308
  }, {
4204
4309
  key: "banUser",
4205
4310
  value: function () {
4206
- var _banUser = _asyncToGenerator__default['default']( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee38(targetUserID, options) {
4207
- return _regeneratorRuntime__default['default'].wrap(function _callee38$(_context38) {
4311
+ var _banUser = _asyncToGenerator__default['default']( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee41(targetUserID, options) {
4312
+ return _regeneratorRuntime__default['default'].wrap(function _callee41$(_context41) {
4208
4313
  while (1) {
4209
- switch (_context38.prev = _context38.next) {
4314
+ switch (_context41.prev = _context41.next) {
4210
4315
  case 0:
4211
4316
  this._checkInitialized();
4212
4317
 
4213
- _context38.next = 3;
4318
+ _context41.next = 3;
4214
4319
  return this.getClient().banUser(targetUserID, _objectSpread$a(_objectSpread$a({}, options), {}, {
4215
4320
  type: this.type,
4216
4321
  id: this.id
4217
4322
  }));
4218
4323
 
4219
4324
  case 3:
4220
- return _context38.abrupt("return", _context38.sent);
4325
+ return _context41.abrupt("return", _context41.sent);
4221
4326
 
4222
4327
  case 4:
4223
4328
  case "end":
4224
- return _context38.stop();
4329
+ return _context41.stop();
4225
4330
  }
4226
4331
  }
4227
- }, _callee38, this);
4332
+ }, _callee41, this);
4228
4333
  }));
4229
4334
 
4230
- function banUser(_x38, _x39) {
4335
+ function banUser(_x40, _x41) {
4231
4336
  return _banUser.apply(this, arguments);
4232
4337
  }
4233
4338
 
@@ -4245,34 +4350,34 @@ var Channel = /*#__PURE__*/function () {
4245
4350
  }, {
4246
4351
  key: "hide",
4247
4352
  value: function () {
4248
- var _hide = _asyncToGenerator__default['default']( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee39() {
4353
+ var _hide = _asyncToGenerator__default['default']( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee42() {
4249
4354
  var userId,
4250
4355
  clearHistory,
4251
- _args39 = arguments;
4252
- return _regeneratorRuntime__default['default'].wrap(function _callee39$(_context39) {
4356
+ _args42 = arguments;
4357
+ return _regeneratorRuntime__default['default'].wrap(function _callee42$(_context42) {
4253
4358
  while (1) {
4254
- switch (_context39.prev = _context39.next) {
4359
+ switch (_context42.prev = _context42.next) {
4255
4360
  case 0:
4256
- userId = _args39.length > 0 && _args39[0] !== undefined ? _args39[0] : null;
4257
- clearHistory = _args39.length > 1 && _args39[1] !== undefined ? _args39[1] : false;
4361
+ userId = _args42.length > 0 && _args42[0] !== undefined ? _args42[0] : null;
4362
+ clearHistory = _args42.length > 1 && _args42[1] !== undefined ? _args42[1] : false;
4258
4363
 
4259
4364
  this._checkInitialized();
4260
4365
 
4261
- _context39.next = 5;
4366
+ _context42.next = 5;
4262
4367
  return this.getClient().post("".concat(this._channelURL(), "/hide"), {
4263
4368
  user_id: userId,
4264
4369
  clear_history: clearHistory
4265
4370
  });
4266
4371
 
4267
4372
  case 5:
4268
- return _context39.abrupt("return", _context39.sent);
4373
+ return _context42.abrupt("return", _context42.sent);
4269
4374
 
4270
4375
  case 6:
4271
4376
  case "end":
4272
- return _context39.stop();
4377
+ return _context42.stop();
4273
4378
  }
4274
4379
  }
4275
- }, _callee39, this);
4380
+ }, _callee42, this);
4276
4381
  }));
4277
4382
 
4278
4383
  function hide() {
@@ -4291,31 +4396,31 @@ var Channel = /*#__PURE__*/function () {
4291
4396
  }, {
4292
4397
  key: "show",
4293
4398
  value: function () {
4294
- var _show = _asyncToGenerator__default['default']( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee40() {
4399
+ var _show = _asyncToGenerator__default['default']( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee43() {
4295
4400
  var userId,
4296
- _args40 = arguments;
4297
- return _regeneratorRuntime__default['default'].wrap(function _callee40$(_context40) {
4401
+ _args43 = arguments;
4402
+ return _regeneratorRuntime__default['default'].wrap(function _callee43$(_context43) {
4298
4403
  while (1) {
4299
- switch (_context40.prev = _context40.next) {
4404
+ switch (_context43.prev = _context43.next) {
4300
4405
  case 0:
4301
- userId = _args40.length > 0 && _args40[0] !== undefined ? _args40[0] : null;
4406
+ userId = _args43.length > 0 && _args43[0] !== undefined ? _args43[0] : null;
4302
4407
 
4303
4408
  this._checkInitialized();
4304
4409
 
4305
- _context40.next = 4;
4410
+ _context43.next = 4;
4306
4411
  return this.getClient().post("".concat(this._channelURL(), "/show"), {
4307
4412
  user_id: userId
4308
4413
  });
4309
4414
 
4310
4415
  case 4:
4311
- return _context40.abrupt("return", _context40.sent);
4416
+ return _context43.abrupt("return", _context43.sent);
4312
4417
 
4313
4418
  case 5:
4314
4419
  case "end":
4315
- return _context40.stop();
4420
+ return _context43.stop();
4316
4421
  }
4317
4422
  }
4318
- }, _callee40, this);
4423
+ }, _callee43, this);
4319
4424
  }));
4320
4425
 
4321
4426
  function show() {
@@ -4334,31 +4439,31 @@ var Channel = /*#__PURE__*/function () {
4334
4439
  }, {
4335
4440
  key: "unbanUser",
4336
4441
  value: function () {
4337
- var _unbanUser = _asyncToGenerator__default['default']( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee41(targetUserID) {
4338
- return _regeneratorRuntime__default['default'].wrap(function _callee41$(_context41) {
4442
+ var _unbanUser = _asyncToGenerator__default['default']( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee44(targetUserID) {
4443
+ return _regeneratorRuntime__default['default'].wrap(function _callee44$(_context44) {
4339
4444
  while (1) {
4340
- switch (_context41.prev = _context41.next) {
4445
+ switch (_context44.prev = _context44.next) {
4341
4446
  case 0:
4342
4447
  this._checkInitialized();
4343
4448
 
4344
- _context41.next = 3;
4449
+ _context44.next = 3;
4345
4450
  return this.getClient().unbanUser(targetUserID, {
4346
4451
  type: this.type,
4347
4452
  id: this.id
4348
4453
  });
4349
4454
 
4350
4455
  case 3:
4351
- return _context41.abrupt("return", _context41.sent);
4456
+ return _context44.abrupt("return", _context44.sent);
4352
4457
 
4353
4458
  case 4:
4354
4459
  case "end":
4355
- return _context41.stop();
4460
+ return _context44.stop();
4356
4461
  }
4357
4462
  }
4358
- }, _callee41, this);
4463
+ }, _callee44, this);
4359
4464
  }));
4360
4465
 
4361
- function unbanUser(_x40) {
4466
+ function unbanUser(_x42) {
4362
4467
  return _unbanUser.apply(this, arguments);
4363
4468
  }
4364
4469
 
@@ -4375,31 +4480,31 @@ var Channel = /*#__PURE__*/function () {
4375
4480
  }, {
4376
4481
  key: "shadowBan",
4377
4482
  value: function () {
4378
- var _shadowBan = _asyncToGenerator__default['default']( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee42(targetUserID, options) {
4379
- return _regeneratorRuntime__default['default'].wrap(function _callee42$(_context42) {
4483
+ var _shadowBan = _asyncToGenerator__default['default']( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee45(targetUserID, options) {
4484
+ return _regeneratorRuntime__default['default'].wrap(function _callee45$(_context45) {
4380
4485
  while (1) {
4381
- switch (_context42.prev = _context42.next) {
4486
+ switch (_context45.prev = _context45.next) {
4382
4487
  case 0:
4383
4488
  this._checkInitialized();
4384
4489
 
4385
- _context42.next = 3;
4490
+ _context45.next = 3;
4386
4491
  return this.getClient().shadowBan(targetUserID, _objectSpread$a(_objectSpread$a({}, options), {}, {
4387
4492
  type: this.type,
4388
4493
  id: this.id
4389
4494
  }));
4390
4495
 
4391
4496
  case 3:
4392
- return _context42.abrupt("return", _context42.sent);
4497
+ return _context45.abrupt("return", _context45.sent);
4393
4498
 
4394
4499
  case 4:
4395
4500
  case "end":
4396
- return _context42.stop();
4501
+ return _context45.stop();
4397
4502
  }
4398
4503
  }
4399
- }, _callee42, this);
4504
+ }, _callee45, this);
4400
4505
  }));
4401
4506
 
4402
- function shadowBan(_x41, _x42) {
4507
+ function shadowBan(_x43, _x44) {
4403
4508
  return _shadowBan.apply(this, arguments);
4404
4509
  }
4405
4510
 
@@ -4415,31 +4520,31 @@ var Channel = /*#__PURE__*/function () {
4415
4520
  }, {
4416
4521
  key: "removeShadowBan",
4417
4522
  value: function () {
4418
- var _removeShadowBan = _asyncToGenerator__default['default']( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee43(targetUserID) {
4419
- return _regeneratorRuntime__default['default'].wrap(function _callee43$(_context43) {
4523
+ var _removeShadowBan = _asyncToGenerator__default['default']( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee46(targetUserID) {
4524
+ return _regeneratorRuntime__default['default'].wrap(function _callee46$(_context46) {
4420
4525
  while (1) {
4421
- switch (_context43.prev = _context43.next) {
4526
+ switch (_context46.prev = _context46.next) {
4422
4527
  case 0:
4423
4528
  this._checkInitialized();
4424
4529
 
4425
- _context43.next = 3;
4530
+ _context46.next = 3;
4426
4531
  return this.getClient().removeShadowBan(targetUserID, {
4427
4532
  type: this.type,
4428
4533
  id: this.id
4429
4534
  });
4430
4535
 
4431
4536
  case 3:
4432
- return _context43.abrupt("return", _context43.sent);
4537
+ return _context46.abrupt("return", _context46.sent);
4433
4538
 
4434
4539
  case 4:
4435
4540
  case "end":
4436
- return _context43.stop();
4541
+ return _context46.stop();
4437
4542
  }
4438
4543
  }
4439
- }, _callee43, this);
4544
+ }, _callee46, this);
4440
4545
  }));
4441
4546
 
4442
- function removeShadowBan(_x43) {
4547
+ function removeShadowBan(_x45) {
4443
4548
  return _removeShadowBan.apply(this, arguments);
4444
4549
  }
4445
4550
 
@@ -4455,26 +4560,26 @@ var Channel = /*#__PURE__*/function () {
4455
4560
  }, {
4456
4561
  key: "createCall",
4457
4562
  value: function () {
4458
- var _createCall = _asyncToGenerator__default['default']( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee44(options) {
4459
- return _regeneratorRuntime__default['default'].wrap(function _callee44$(_context44) {
4563
+ var _createCall = _asyncToGenerator__default['default']( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee47(options) {
4564
+ return _regeneratorRuntime__default['default'].wrap(function _callee47$(_context47) {
4460
4565
  while (1) {
4461
- switch (_context44.prev = _context44.next) {
4566
+ switch (_context47.prev = _context47.next) {
4462
4567
  case 0:
4463
- _context44.next = 2;
4568
+ _context47.next = 2;
4464
4569
  return this.getClient().post(this._channelURL() + '/call', options);
4465
4570
 
4466
4571
  case 2:
4467
- return _context44.abrupt("return", _context44.sent);
4572
+ return _context47.abrupt("return", _context47.sent);
4468
4573
 
4469
4574
  case 3:
4470
4575
  case "end":
4471
- return _context44.stop();
4576
+ return _context47.stop();
4472
4577
  }
4473
4578
  }
4474
- }, _callee44, this);
4579
+ }, _callee47, this);
4475
4580
  }));
4476
4581
 
4477
- function createCall(_x44) {
4582
+ function createCall(_x46) {
4478
4583
  return _createCall.apply(this, arguments);
4479
4584
  }
4480
4585
 
@@ -4490,26 +4595,26 @@ var Channel = /*#__PURE__*/function () {
4490
4595
  }, {
4491
4596
  key: "vote",
4492
4597
  value: function () {
4493
- var _vote2 = _asyncToGenerator__default['default']( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee45(messageId, pollId, _vote) {
4494
- return _regeneratorRuntime__default['default'].wrap(function _callee45$(_context45) {
4598
+ var _vote2 = _asyncToGenerator__default['default']( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee48(messageId, pollId, _vote) {
4599
+ return _regeneratorRuntime__default['default'].wrap(function _callee48$(_context48) {
4495
4600
  while (1) {
4496
- switch (_context45.prev = _context45.next) {
4601
+ switch (_context48.prev = _context48.next) {
4497
4602
  case 0:
4498
- _context45.next = 2;
4603
+ _context48.next = 2;
4499
4604
  return this.getClient().castPollVote(messageId, pollId, _vote);
4500
4605
 
4501
4606
  case 2:
4502
- return _context45.abrupt("return", _context45.sent);
4607
+ return _context48.abrupt("return", _context48.sent);
4503
4608
 
4504
4609
  case 3:
4505
4610
  case "end":
4506
- return _context45.stop();
4611
+ return _context48.stop();
4507
4612
  }
4508
4613
  }
4509
- }, _callee45, this);
4614
+ }, _callee48, this);
4510
4615
  }));
4511
4616
 
4512
- function vote(_x45, _x46, _x47) {
4617
+ function vote(_x47, _x48, _x49) {
4513
4618
  return _vote2.apply(this, arguments);
4514
4619
  }
4515
4620
 
@@ -4518,26 +4623,26 @@ var Channel = /*#__PURE__*/function () {
4518
4623
  }, {
4519
4624
  key: "removeVote",
4520
4625
  value: function () {
4521
- var _removeVote = _asyncToGenerator__default['default']( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee46(messageId, pollId, voteId) {
4522
- return _regeneratorRuntime__default['default'].wrap(function _callee46$(_context46) {
4626
+ var _removeVote = _asyncToGenerator__default['default']( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee49(messageId, pollId, voteId) {
4627
+ return _regeneratorRuntime__default['default'].wrap(function _callee49$(_context49) {
4523
4628
  while (1) {
4524
- switch (_context46.prev = _context46.next) {
4629
+ switch (_context49.prev = _context49.next) {
4525
4630
  case 0:
4526
- _context46.next = 2;
4631
+ _context49.next = 2;
4527
4632
  return this.getClient().removePollVote(messageId, pollId, voteId);
4528
4633
 
4529
4634
  case 2:
4530
- return _context46.abrupt("return", _context46.sent);
4635
+ return _context49.abrupt("return", _context49.sent);
4531
4636
 
4532
4637
  case 3:
4533
4638
  case "end":
4534
- return _context46.stop();
4639
+ return _context49.stop();
4535
4640
  }
4536
4641
  }
4537
- }, _callee46, this);
4642
+ }, _callee49, this);
4538
4643
  }));
4539
4644
 
4540
- function removeVote(_x48, _x49, _x50) {
4645
+ function removeVote(_x50, _x51, _x52) {
4541
4646
  return _removeVote.apply(this, arguments);
4542
4647
  }
4543
4648
 
@@ -4927,10 +5032,14 @@ var Channel = /*#__PURE__*/function () {
4927
5032
  var _this$getClient2 = this.getClient(),
4928
5033
  clientState = _this$getClient2.state,
4929
5034
  user = _this$getClient2.user,
4930
- userID = _this$getClient2.userID; // add the Users
5035
+ userID = _this$getClient2.userID; // add the members and users
4931
5036
 
4932
5037
 
4933
5038
  if (state.members) {
5039
+ this._hydrateMembers({
5040
+ members: state.members
5041
+ });
5042
+
4934
5043
  var _iterator = _createForOfIteratorHelper$4(state.members),
4935
5044
  _step;
4936
5045
 
@@ -5037,10 +5146,6 @@ var Channel = /*#__PURE__*/function () {
5037
5146
  }
5038
5147
  }
5039
5148
 
5040
- if (state.members) {
5041
- this._hydrateMembers(state.members);
5042
- }
5043
-
5044
5149
  return {
5045
5150
  messageSet: messageSet
5046
5151
  };
@@ -5060,14 +5165,23 @@ var Channel = /*#__PURE__*/function () {
5060
5165
  }
5061
5166
  }, {
5062
5167
  key: "_hydrateMembers",
5063
- value: function _hydrateMembers(members) {
5064
- this.state.members = members.reduce(function (acc, member) {
5168
+ value: function _hydrateMembers(_ref4) {
5169
+ var members = _ref4.members,
5170
+ _ref4$overrideCurrent = _ref4.overrideCurrentState,
5171
+ overrideCurrentState = _ref4$overrideCurrent === void 0 ? true : _ref4$overrideCurrent;
5172
+ var newMembersById = members.reduce(function (membersById, member) {
5065
5173
  if (member.user) {
5066
- acc[member.user.id] = member;
5174
+ membersById[member.user.id] = member;
5067
5175
  }
5068
5176
 
5069
- return acc;
5177
+ return membersById;
5070
5178
  }, {});
5179
+
5180
+ if (overrideCurrentState) {
5181
+ this.state.members = newMembersById;
5182
+ } else if (!overrideCurrentState && members.length) {
5183
+ this.state.members = _objectSpread$a(_objectSpread$a({}, this.state.members), newMembersById);
5184
+ }
5071
5185
  }
5072
5186
  }, {
5073
5187
  key: "_disconnect",
@@ -8040,7 +8154,10 @@ var Thread = /*#__PURE__*/function () {
8040
8154
  name: threadData.channel.name
8041
8155
  });
8042
8156
 
8043
- _channel._hydrateMembers((_threadData$channel$m = threadData.channel.members) !== null && _threadData$channel$m !== void 0 ? _threadData$channel$m : []); // For when read object is undefined and due to that unreadMessageCount for
8157
+ _channel._hydrateMembers({
8158
+ members: (_threadData$channel$m = threadData.channel.members) !== null && _threadData$channel$m !== void 0 ? _threadData$channel$m : [],
8159
+ overrideCurrentState: false
8160
+ }); // For when read object is undefined and due to that unreadMessageCount for
8044
8161
  // the current user isn't being incremented on message.new
8045
8162
 
8046
8163
 
@@ -14642,7 +14759,7 @@ var StreamChat = /*#__PURE__*/function () {
14642
14759
  }, {
14643
14760
  key: "getUserAgent",
14644
14761
  value: function getUserAgent() {
14645
- return this.userAgent || "stream-chat-javascript-client-".concat(this.node ? 'node' : 'browser', "-", "8.45.2");
14762
+ return this.userAgent || "stream-chat-javascript-client-".concat(this.node ? 'node' : 'browser', "-", "8.46.0");
14646
14763
  }
14647
14764
  }, {
14648
14765
  key: "setUserAgent",
@@ -16879,6 +16996,10 @@ var EVENT_MAP = {
16879
16996
  'user.updated': true,
16880
16997
  'user.watching.start': true,
16881
16998
  'user.watching.stop': true,
16999
+ // AI events
17000
+ 'ai_indicator.update': true,
17001
+ 'ai_indicator.stop': true,
17002
+ 'ai_indicator.clear': true,
16882
17003
  // local events
16883
17004
  'channels.queried': true,
16884
17005
  'connection.changed': true,