sceyt-chat-react-uikit 1.6.5-beta.3 → 1.6.5-beta.4

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 (3) hide show
  1. package/index.js +204 -164
  2. package/index.modern.js +204 -164
  3. package/package.json +1 -1
package/index.js CHANGED
@@ -10960,7 +10960,7 @@ var CustomInput = styled__default.input(_templateObject10 || (_templateObject10
10960
10960
  }, function (props) {
10961
10961
  return props.color;
10962
10962
  }, function (props) {
10963
- return props.error ? "1px solid " + props.errorColor : 'transparent';
10963
+ return props.error ? "1px solid " + props.errorColor : colors.primary;
10964
10964
  }, function (props) {
10965
10965
  return props.error ? "1px solid " + colors.errorBlur : props.theme !== THEME.DARK ? "2px solid " + props.borderColor : 'none';
10966
10966
  }, colors.gray0, function (props) {
@@ -15143,6 +15143,73 @@ var addData = function addData(db, storeName, keyPath, data) {
15143
15143
  }
15144
15144
  };
15145
15145
 
15146
+ var getFrame3 = function getFrame3(video, time) {
15147
+ try {
15148
+ var canvas = document.createElement('canvas');
15149
+ canvas.width = video.videoWidth;
15150
+ canvas.height = video.videoHeight;
15151
+ var ctx = canvas.getContext('2d');
15152
+ if (time) {
15153
+ video.currentTime = time;
15154
+ }
15155
+ ctx.drawImage(video, 0, 0);
15156
+ return Promise.resolve(createImageThumbnail(null, canvas.toDataURL(), 10, 10));
15157
+ } catch (e) {
15158
+ return Promise.reject(e);
15159
+ }
15160
+ };
15161
+ var getFrame = function getFrame(videoSrc, time) {
15162
+ try {
15163
+ var video = document.createElement('video');
15164
+ video.src = videoSrc;
15165
+ video.crossOrigin = 'anonymous';
15166
+ video.preload = 'auto';
15167
+ video.muted = true;
15168
+ return Promise.resolve(new Promise(function (resolve, reject) {
15169
+ if (videoSrc) {
15170
+ video.onloadedmetadata = function () {
15171
+ video.currentTime = time || 0;
15172
+ video.onseeked = function () {
15173
+ var _video$duration;
15174
+ var _calculateSize = calculateSize(video.videoWidth, video.videoHeight, 100, 100),
15175
+ newWidth = _calculateSize[0],
15176
+ newHeight = _calculateSize[1];
15177
+ var canvas = document.createElement('canvas');
15178
+ canvas.width = newWidth;
15179
+ canvas.height = newHeight;
15180
+ var ctx = canvas.getContext('2d');
15181
+ if (!ctx) {
15182
+ reject(new Error('Failed to get canvas context'));
15183
+ return;
15184
+ }
15185
+ ctx.drawImage(video, 0, 0, newWidth, newHeight);
15186
+ var pixels = ctx.getImageData(0, 0, canvas.width, canvas.height);
15187
+ var binaryThumbHash = rgbaToThumbHash(pixels.width, pixels.height, pixels.data);
15188
+ var thumb = binaryToBase64(binaryThumbHash);
15189
+ var duration = Number((_video$duration = video.duration) === null || _video$duration === void 0 ? void 0 : _video$duration.toFixed(0));
15190
+ resolve({
15191
+ thumb: thumb,
15192
+ width: video.videoWidth,
15193
+ height: video.videoHeight,
15194
+ duration: duration
15195
+ });
15196
+ };
15197
+ video.onerror = function () {
15198
+ reject(new Error('Failed to seek video'));
15199
+ };
15200
+ };
15201
+ video.onerror = function () {
15202
+ reject(new Error('Failed to load video'));
15203
+ };
15204
+ } else {
15205
+ reject(new Error('src not found'));
15206
+ }
15207
+ }));
15208
+ } catch (e) {
15209
+ return Promise.reject(e);
15210
+ }
15211
+ };
15212
+
15146
15213
  var _marked$2 = /*#__PURE__*/_regeneratorRuntime().mark(sendMessage),
15147
15214
  _marked2$1 = /*#__PURE__*/_regeneratorRuntime().mark(sendTextMessage),
15148
15215
  _marked3$1 = /*#__PURE__*/_regeneratorRuntime().mark(forwardMessage),
@@ -15164,13 +15231,15 @@ var handleUploadAttachments = function handleUploadAttachments(attachments, mess
15164
15231
  try {
15165
15232
  return Promise.resolve(Promise.all(attachments.map(function (attachment) {
15166
15233
  try {
15167
- var _temp4 = function _temp4() {
15168
- function _temp2() {
15169
- var attachmentMeta = attachment.cachedUrl ? attachment.metadata : JSON.stringify(_extends({}, attachment.metadata, thumbnailMetas && thumbnailMetas.thumbnail && {
15234
+ var _temp5 = function _temp5() {
15235
+ function _temp3() {
15236
+ var attachmentMeta = attachment.cachedUrl ? attachment.metadata : JSON.stringify(_extends({}, attachment.metadata ? typeof attachment.metadata === 'string' ? JSON.parse(attachment.metadata) : attachment.metadata : {}, thumbnailMetas && thumbnailMetas.thumbnail && _extends({
15170
15237
  tmb: thumbnailMetas.thumbnail,
15171
15238
  szw: thumbnailMetas.imageWidth,
15172
15239
  szh: thumbnailMetas.imageHeight
15173
- }));
15240
+ }, thumbnailMetas.duration ? {
15241
+ dur: thumbnailMetas.duration
15242
+ } : {})));
15174
15243
  var attachmentBuilder = channel.createAttachmentBuilder(uri, attachment.type);
15175
15244
  var attachmentToSend = attachmentBuilder.setName(attachment.name).setMetadata(attachmentMeta).setFileSize(fileSize || attachment.size).setUpload(false).create();
15176
15245
  return attachmentToSend;
@@ -15183,7 +15252,7 @@ var handleUploadAttachments = function handleUploadAttachments(attachments, mess
15183
15252
  }
15184
15253
  });
15185
15254
  var thumbnailMetas;
15186
- var _temp = function () {
15255
+ var _temp2 = function () {
15187
15256
  if (!attachment.cachedUrl && attachment.url.type.split('/')[0] === 'image') {
15188
15257
  return Promise.resolve(getImageSize(filePath)).then(function (_getImageSize) {
15189
15258
  fileSize = _getImageSize;
@@ -15191,9 +15260,23 @@ var handleUploadAttachments = function handleUploadAttachments(attachments, mess
15191
15260
  thumbnailMetas = _createImageThumbnail;
15192
15261
  });
15193
15262
  });
15263
+ } else {
15264
+ var _temp6 = function () {
15265
+ if (!attachment.cachedUrl && attachment.url.type.split('/')[0] === 'video') {
15266
+ return Promise.resolve(getFrame(filePath)).then(function (meta) {
15267
+ thumbnailMetas = {
15268
+ thumbnail: meta.thumb,
15269
+ imageWidth: meta.width,
15270
+ imageHeight: meta.height,
15271
+ duration: meta.duration
15272
+ };
15273
+ });
15274
+ }
15275
+ }();
15276
+ if (_temp6 && _temp6.then) return _temp6.then(function () {});
15194
15277
  }
15195
15278
  }();
15196
- return _temp && _temp.then ? _temp.then(_temp2) : _temp2(_temp);
15279
+ return _temp2 && _temp2.then ? _temp2.then(_temp3) : _temp3(_temp2);
15197
15280
  };
15198
15281
  var handleUploadProgress = function handleUploadProgress(_ref) {
15199
15282
  var loaded = _ref.loaded,
@@ -15212,7 +15295,7 @@ var handleUploadAttachments = function handleUploadAttachments(attachments, mess
15212
15295
  var fileType = attachment.url.type.split('/')[0];
15213
15296
  var filePath;
15214
15297
  var handleUpdateLocalPath = function handleUpdateLocalPath(updatedLink) {
15215
- if (fileType === 'image') {
15298
+ if (fileType === 'image' || fileType === 'video') {
15216
15299
  filePath = updatedLink;
15217
15300
  message.attachments[0] = _extends({}, message.attachments[0], {
15218
15301
  attachmentUrl: updatedLink
@@ -15220,7 +15303,7 @@ var handleUploadAttachments = function handleUploadAttachments(attachments, mess
15220
15303
  }
15221
15304
  };
15222
15305
  var uri;
15223
- var _temp3 = function () {
15306
+ var _temp4 = function () {
15224
15307
  if (attachment.cachedUrl) {
15225
15308
  uri = attachment.cachedUrl;
15226
15309
  store.dispatch({
@@ -15238,7 +15321,7 @@ var handleUploadAttachments = function handleUploadAttachments(attachments, mess
15238
15321
  });
15239
15322
  }
15240
15323
  }();
15241
- return Promise.resolve(_temp3 && _temp3.then ? _temp3.then(_temp4) : _temp4(_temp3));
15324
+ return Promise.resolve(_temp4 && _temp4.then ? _temp4.then(_temp5) : _temp5(_temp4));
15242
15325
  } catch (e) {
15243
15326
  return Promise.reject(e);
15244
15327
  }
@@ -16109,7 +16192,7 @@ function forwardMessage(action) {
16109
16192
  }, _marked3$1, null, [[0, 73]]);
16110
16193
  }
16111
16194
  function resendMessage(action) {
16112
- var payload, message, connectionState, channelId, channel, customUploader, attachmentCompilation, messageAttachment, messageCopy, handleUploadProgress, uri, filePath, handleUpdateLocalPath, pendingAttachment, _thumbnailMetas, fileSize, attachmentMeta, attachmentBuilder, attachmentToSend, messageResponse, messageUpdateData, fileType, messageToUpdate, _messageCopy3, _messageResponse, _messageUpdateData, activeChannelId, _messageToUpdate;
16195
+ var payload, message, connectionState, channelId, channel, customUploader, attachmentCompilation, messageAttachment, messageCopy, handleUploadProgress, uri, filePath, handleUpdateLocalPath, pendingAttachment, _thumbnailMetas, fileSize, meta, attachmentMeta, attachmentBuilder, attachmentToSend, messageResponse, messageUpdateData, fileType, messageToUpdate, _messageCopy3, _messageResponse, _messageUpdateData, activeChannelId, _messageToUpdate;
16113
16196
  return _regeneratorRuntime().wrap(function resendMessage$(_context6) {
16114
16197
  while (1) switch (_context6.prev = _context6.next) {
16115
16198
  case 0:
@@ -16149,7 +16232,7 @@ function resendMessage(action) {
16149
16232
  state: MESSAGE_STATUS.UNMODIFIED
16150
16233
  });
16151
16234
  if (!(message.attachments && message.attachments.length && message.state === MESSAGE_STATUS.FAILED)) {
16152
- _context6.next = 96;
16235
+ _context6.next = 104;
16153
16236
  break;
16154
16237
  }
16155
16238
  _context6.next = 20;
@@ -16162,14 +16245,14 @@ function resendMessage(action) {
16162
16245
  });
16163
16246
  log.info('attachmentCompilation. .. . .', attachmentCompilation);
16164
16247
  if (!(connectionState === CONNECTION_STATUS.CONNECTED && attachmentCompilation[messageAttachment.tid] && attachmentCompilation[messageAttachment.tid] === UPLOAD_STATE.FAIL)) {
16165
- _context6.next = 94;
16248
+ _context6.next = 102;
16166
16249
  break;
16167
16250
  }
16168
16251
  _context6.next = 27;
16169
16252
  return effects.put(updateAttachmentUploadingStateAC(UPLOAD_STATE.UPLOADING, messageAttachment.tid));
16170
16253
  case 27:
16171
16254
  if (!customUploader) {
16172
- _context6.next = 94;
16255
+ _context6.next = 102;
16173
16256
  break;
16174
16257
  }
16175
16258
  handleUploadProgress = function handleUploadProgress(_ref2) {
@@ -16222,7 +16305,7 @@ function resendMessage(action) {
16222
16305
  fileSize = messageAttachment.cachedUrl ? messageAttachment.size : pendingAttachment.file.size;
16223
16306
  log.info('uri ... ', uri);
16224
16307
  if (!(!messageAttachment.cachedUrl && messageAttachment.url.type.split('/')[0] === 'image')) {
16225
- _context6.next = 56;
16308
+ _context6.next = 58;
16226
16309
  break;
16227
16310
  }
16228
16311
  _context6.next = 52;
@@ -16233,15 +16316,38 @@ function resendMessage(action) {
16233
16316
  return effects.call(createImageThumbnail, null, filePath, messageAttachment.type === 'file' ? 50 : undefined, messageAttachment.type === 'file' ? 50 : undefined);
16234
16317
  case 55:
16235
16318
  _thumbnailMetas = _context6.sent;
16236
- case 56:
16319
+ _context6.next = 64;
16320
+ break;
16321
+ case 58:
16322
+ if (!(!messageAttachment.cachedUrl && messageAttachment.url.type.split('/')[0] === 'video')) {
16323
+ _context6.next = 64;
16324
+ break;
16325
+ }
16326
+ if (!filePath) {
16327
+ _context6.next = 64;
16328
+ break;
16329
+ }
16330
+ _context6.next = 62;
16331
+ return effects.call(getFrame, filePath);
16332
+ case 62:
16333
+ meta = _context6.sent;
16334
+ _thumbnailMetas = {
16335
+ thumbnail: meta.thumb,
16336
+ imageWidth: meta.width,
16337
+ imageHeight: meta.height,
16338
+ duration: meta.duration
16339
+ };
16340
+ case 64:
16237
16341
  if (messageAttachment.cachedUrl) {
16238
16342
  attachmentMeta = messageAttachment.metadata;
16239
16343
  } else {
16240
- attachmentMeta = JSON.stringify(_extends({}, messageAttachment.metadata, _thumbnailMetas && _thumbnailMetas.thumbnail && {
16344
+ attachmentMeta = JSON.stringify(_extends({}, messageAttachment.metadata ? typeof messageAttachment.metadata === 'string' ? JSON.parse(messageAttachment.metadata) : messageAttachment.metadata : {}, _thumbnailMetas && _thumbnailMetas.thumbnail && _extends({
16241
16345
  tmb: _thumbnailMetas.thumbnail,
16242
16346
  szw: _thumbnailMetas.imageWidth,
16243
16347
  szh: _thumbnailMetas.imageHeight
16244
- }));
16348
+ }, _thumbnailMetas.duration ? {
16349
+ dur: _thumbnailMetas.duration
16350
+ } : {})));
16245
16351
  }
16246
16352
  log.info('attachmentMeta ... ', attachmentMeta);
16247
16353
  attachmentBuilder = channel.createAttachmentBuilder(uri, messageAttachment.type);
@@ -16249,19 +16355,19 @@ function resendMessage(action) {
16249
16355
  log.info('attachmentToSend ... ', attachmentToSend);
16250
16356
  attachmentToSend.tid = messageAttachment.tid;
16251
16357
  attachmentToSend.attachmentUrl = messageAttachment.attachmentUrl;
16252
- _context6.next = 65;
16358
+ _context6.next = 73;
16253
16359
  return effects.put(updateMessageAC(messageCopy.tid, JSON.parse(JSON.stringify(_extends({}, messageCopy, {
16254
16360
  attachments: [attachmentToSend]
16255
16361
  })))));
16256
- case 65:
16362
+ case 73:
16257
16363
  messageCopy.attachments = [attachmentToSend];
16258
16364
  if (!(connectionState === CONNECTION_STATUS.CONNECTED)) {
16259
- _context6.next = 83;
16365
+ _context6.next = 91;
16260
16366
  break;
16261
16367
  }
16262
- _context6.next = 69;
16368
+ _context6.next = 77;
16263
16369
  return effects.call(channel.sendMessage, messageCopy);
16264
- case 69:
16370
+ case 77:
16265
16371
  messageResponse = _context6.sent;
16266
16372
  deletePendingAttachment(messageAttachment.tid);
16267
16373
  messageUpdateData = {
@@ -16283,9 +16389,9 @@ function resendMessage(action) {
16283
16389
  createdAt: messageResponse.createdAt
16284
16390
  };
16285
16391
  removePendingMessageFromMap(channel.id, messageCopy.tid);
16286
- _context6.next = 75;
16392
+ _context6.next = 83;
16287
16393
  return effects.put(updateMessageAC(messageCopy.tid, JSON.parse(JSON.stringify(messageUpdateData))));
16288
- case 75:
16394
+ case 83:
16289
16395
  fileType = messageAttachment.data && messageAttachment.data.type ? messageAttachment.data.type.split('/')[0] : messageAttachment.type;
16290
16396
  if (fileType === 'video') {
16291
16397
  deleteVideoThumb(messageAttachment.tid);
@@ -16297,20 +16403,20 @@ function resendMessage(action) {
16297
16403
  updateMessageOnAllMessages(messageCopy.tid, messageUpdateData);
16298
16404
  messageToUpdate = JSON.parse(JSON.stringify(messageResponse));
16299
16405
  updateChannelLastMessageOnAllChannels(channel.id, messageToUpdate);
16300
- _context6.next = 83;
16406
+ _context6.next = 91;
16301
16407
  return effects.put(updateChannelLastMessageAC(messageToUpdate, {
16302
16408
  id: channel.id
16303
16409
  }));
16304
- case 83:
16305
- _context6.next = 94;
16410
+ case 91:
16411
+ _context6.next = 102;
16306
16412
  break;
16307
- case 85:
16308
- _context6.prev = 85;
16413
+ case 93:
16414
+ _context6.prev = 93;
16309
16415
  _context6.t0 = _context6["catch"](29);
16310
16416
  log.error('fail upload attachment on resend message ... ', _context6.t0);
16311
- _context6.next = 90;
16417
+ _context6.next = 98;
16312
16418
  return effects.put(updateAttachmentUploadingStateAC(UPLOAD_STATE.FAIL, messageAttachment.tid));
16313
- case 90:
16419
+ case 98:
16314
16420
  updateMessageOnMap(channel.id, {
16315
16421
  messageId: messageCopy.tid,
16316
16422
  params: {
@@ -16320,28 +16426,28 @@ function resendMessage(action) {
16320
16426
  updateMessageOnAllMessages(messageCopy.tid, {
16321
16427
  state: MESSAGE_STATUS.FAILED
16322
16428
  });
16323
- _context6.next = 94;
16429
+ _context6.next = 102;
16324
16430
  return effects.put(updateMessageAC(messageCopy.tid, {
16325
16431
  state: MESSAGE_STATUS.FAILED
16326
16432
  }));
16327
- case 94:
16328
- _context6.next = 121;
16433
+ case 102:
16434
+ _context6.next = 129;
16329
16435
  break;
16330
- case 96:
16436
+ case 104:
16331
16437
  if (!(message.state === MESSAGE_STATUS.FAILED)) {
16332
- _context6.next = 121;
16438
+ _context6.next = 129;
16333
16439
  break;
16334
16440
  }
16335
16441
  log.info('send failed message ...');
16336
16442
  _messageCopy3 = _extends({}, message);
16337
16443
  delete _messageCopy3.createdAt;
16338
16444
  if (!(connectionState === CONNECTION_STATUS.CONNECTED)) {
16339
- _context6.next = 121;
16445
+ _context6.next = 129;
16340
16446
  break;
16341
16447
  }
16342
- _context6.next = 103;
16448
+ _context6.next = 111;
16343
16449
  return effects.call(channel.sendMessage, _messageCopy3);
16344
- case 103:
16450
+ case 111:
16345
16451
  _messageResponse = _context6.sent;
16346
16452
  log.info('resend message response ... ', _messageResponse);
16347
16453
  _messageUpdateData = {
@@ -16360,49 +16466,49 @@ function resendMessage(action) {
16360
16466
  createdAt: _messageResponse.createdAt
16361
16467
  };
16362
16468
  removePendingMessageFromMap(channel.id, _messageCopy3.tid);
16363
- _context6.next = 109;
16469
+ _context6.next = 117;
16364
16470
  return effects.put(updateMessageAC(_messageCopy3.tid, _messageUpdateData));
16365
- case 109:
16471
+ case 117:
16366
16472
  updateMessageOnMap(channel.id, {
16367
16473
  messageId: _messageCopy3.tid,
16368
16474
  params: _messageUpdateData
16369
16475
  });
16370
16476
  activeChannelId = getActiveChannelId();
16371
16477
  if (!(channelId === activeChannelId)) {
16372
- _context6.next = 116;
16478
+ _context6.next = 124;
16373
16479
  break;
16374
16480
  }
16375
- _context6.next = 114;
16481
+ _context6.next = 122;
16376
16482
  return effects.put(updateMessageAC(_messageCopy3.tid, JSON.parse(JSON.stringify(_messageResponse))));
16377
- case 114:
16483
+ case 122:
16378
16484
  updateMessageOnMap(channel.id, {
16379
16485
  messageId: _messageCopy3.tid,
16380
16486
  params: _messageUpdateData
16381
16487
  });
16382
16488
  updateMessageOnAllMessages(_messageCopy3.tid, _messageUpdateData);
16383
- case 116:
16489
+ case 124:
16384
16490
  updateChannelOnAllChannels(channel.id, channel);
16385
16491
  _messageToUpdate = JSON.parse(JSON.stringify(_messageResponse));
16386
16492
  updateChannelLastMessageOnAllChannels(channel.id, _messageToUpdate);
16387
- _context6.next = 121;
16493
+ _context6.next = 129;
16388
16494
  return effects.put(updateChannelLastMessageAC(_messageToUpdate, {
16389
16495
  id: channel.id
16390
16496
  }));
16391
- case 121:
16392
- _context6.next = 123;
16497
+ case 129:
16498
+ _context6.next = 131;
16393
16499
  return effects.put(scrollToNewMessageAC(true));
16394
- case 123:
16395
- _context6.next = 132;
16500
+ case 131:
16501
+ _context6.next = 140;
16396
16502
  break;
16397
- case 125:
16398
- _context6.prev = 125;
16503
+ case 133:
16504
+ _context6.prev = 133;
16399
16505
  _context6.t1 = _context6["catch"](7);
16400
16506
  log.error('ERROR in resend message', _context6.t1.message, 'channel.. . ', channel);
16401
- _context6.next = 130;
16507
+ _context6.next = 138;
16402
16508
  return effects.put(updateMessageAC(message.tid, {
16403
16509
  state: MESSAGE_STATUS.FAILED
16404
16510
  }));
16405
- case 130:
16511
+ case 138:
16406
16512
  updateMessageOnMap(channel.id, {
16407
16513
  messageId: message.tid,
16408
16514
  params: {
@@ -16412,14 +16518,14 @@ function resendMessage(action) {
16412
16518
  updateMessageOnAllMessages(message.tid, {
16413
16519
  state: MESSAGE_STATUS.FAILED
16414
16520
  });
16415
- case 132:
16416
- _context6.next = 134;
16521
+ case 140:
16522
+ _context6.next = 142;
16417
16523
  return effects.put(setMessagesLoadingStateAC(LOADING_STATE.LOADED));
16418
- case 134:
16524
+ case 142:
16419
16525
  case "end":
16420
16526
  return _context6.stop();
16421
16527
  }
16422
- }, _marked4$1, null, [[7, 125], [29, 85]]);
16528
+ }, _marked4$1, null, [[7, 133], [29, 93]]);
16423
16529
  }
16424
16530
  function deleteMessage(action) {
16425
16531
  var payload, messageId, channelId, deleteOption, channel, deletedMessage, messageToUpdate;
@@ -19054,7 +19160,7 @@ var Channel = function Channel(_ref) {
19054
19160
  var _useColor = useColors(),
19055
19161
  accentColor = _useColor[THEME_COLORS.ACCENT],
19056
19162
  textPrimary = _useColor[THEME_COLORS.TEXT_PRIMARY],
19057
- hoverBackground = _useColor[THEME_COLORS.HOVER_BACKGROUND],
19163
+ focusBackground = _useColor[THEME_COLORS.FOCUS_BACKGROUND],
19058
19164
  textSecondary = _useColor[THEME_COLORS.TEXT_SECONDARY],
19059
19165
  surface2 = _useColor[THEME_COLORS.SURFACE_2],
19060
19166
  errorColor = _useColor[THEME_COLORS.WARNING],
@@ -19131,7 +19237,7 @@ var Channel = function Channel(_ref) {
19131
19237
  theme: theme,
19132
19238
  selectedChannel: channel.id === activeChannel.id,
19133
19239
  selectedChannelLeftBorder: selectedChannelLeftBorder,
19134
- selectedBackgroundColor: selectedChannelBackground || hoverBackground,
19240
+ selectedBackgroundColor: selectedChannelBackground || focusBackground,
19135
19241
  selectedChannelPaddings: selectedChannelPaddings,
19136
19242
  channelsPaddings: channelsPaddings,
19137
19243
  selectedChannelBorderRadius: selectedChannelBorderRadius,
@@ -19692,8 +19798,7 @@ var UsersPopup = function UsersPopup(_ref) {
19692
19798
  sectionBackground = _useColor[THEME_COLORS.SECTION_BACKGROUND],
19693
19799
  surface1Background = _useColor[THEME_COLORS.SURFACE_1],
19694
19800
  textPrimary = _useColor[THEME_COLORS.TEXT_PRIMARY],
19695
- textSecondary = _useColor[THEME_COLORS.TEXT_SECONDARY],
19696
- hoverBackground = _useColor[THEME_COLORS.HOVER_BACKGROUND];
19801
+ textSecondary = _useColor[THEME_COLORS.TEXT_SECONDARY];
19697
19802
  var dispatch = reactRedux.useDispatch();
19698
19803
  var ChatClient = getClient();
19699
19804
  var selfUser = ChatClient.user;
@@ -19938,7 +20043,7 @@ var UsersPopup = function UsersPopup(_ref) {
19938
20043
  var memberDisplayName = selfUser.id === user.id ? 'Me' : makeUsername(contactsMap[user.id], user, selfUser.id !== user.id && getFromContacts);
19939
20044
  return /*#__PURE__*/React__default.createElement(ListRow, {
19940
20045
  isAdd: actionType !== 'createChat',
19941
- hoverBackground: hoverBackground,
20046
+ hoverBackground: colors.hoverBackgroundColor,
19942
20047
  key: user.id,
19943
20048
  onClick: function onClick() {
19944
20049
  return actionType === 'createChat' && handleAddMember(user);
@@ -20713,7 +20818,7 @@ var CreateChannelButton = function CreateChannelButton(_ref) {
20713
20818
  uploadPhotoIcon = _ref.uploadPhotoIcon;
20714
20819
  var _useColor = useColors(),
20715
20820
  accentColor = _useColor[THEME_COLORS.ACCENT],
20716
- hoverBackground = _useColor[THEME_COLORS.HOVER_BACKGROUND],
20821
+ focusBackground = _useColor[THEME_COLORS.FOCUS_BACKGROUND],
20717
20822
  textPrimary = _useColor[THEME_COLORS.TEXT_PRIMARY];
20718
20823
  var _useState = React.useState(false),
20719
20824
  showAddMemberPopup = _useState[0],
@@ -20738,14 +20843,14 @@ var CreateChannelButton = function CreateChannelButton(_ref) {
20738
20843
  theme: theme,
20739
20844
  zIndex: '300',
20740
20845
  trigger: /*#__PURE__*/React__default.createElement(CreateDropdownButton, {
20741
- hoverBackground: hoverBackground,
20846
+ hoverBackground: focusBackground,
20742
20847
  leftAuto: !showSearch,
20743
20848
  iconColor: accentColor
20744
20849
  }, createChannelIcon || /*#__PURE__*/React__default.createElement(SvgAddChat, null))
20745
20850
  }, /*#__PURE__*/React__default.createElement(DropdownOptionsUl, null, /*#__PURE__*/React__default.createElement(DropdownOptionLi, {
20746
20851
  key: 1,
20747
20852
  textColor: textPrimary,
20748
- hoverBackground: hoverBackground,
20853
+ hoverBackground: focusBackground,
20749
20854
  onClick: function onClick() {
20750
20855
  return handleOpenCreateChannel('broadcast');
20751
20856
  },
@@ -20753,7 +20858,7 @@ var CreateChannelButton = function CreateChannelButton(_ref) {
20753
20858
  }, newChannelIcon || /*#__PURE__*/React__default.createElement(SvgCreateChannel, null), "New channel"), /*#__PURE__*/React__default.createElement(DropdownOptionLi, {
20754
20859
  key: 2,
20755
20860
  textColor: textPrimary,
20756
- hoverBackground: hoverBackground,
20861
+ hoverBackground: focusBackground,
20757
20862
  onClick: function onClick() {
20758
20863
  return handleOpenCreateChannel('group');
20759
20864
  },
@@ -20761,7 +20866,7 @@ var CreateChannelButton = function CreateChannelButton(_ref) {
20761
20866
  }, newGroupIcon || /*#__PURE__*/React__default.createElement(SvgCreateGroup, null), "New group"), /*#__PURE__*/React__default.createElement(DropdownOptionLi, {
20762
20867
  key: 3,
20763
20868
  textColor: textPrimary,
20764
- hoverBackground: hoverBackground,
20869
+ hoverBackground: focusBackground,
20765
20870
  onClick: function onClick() {
20766
20871
  return handleOpenCreateChannel('direct');
20767
20872
  },
@@ -21835,8 +21940,7 @@ function ChatHeader(_ref) {
21835
21940
  textPrimary = _useColor[THEME_COLORS.TEXT_PRIMARY],
21836
21941
  textSecondary = _useColor[THEME_COLORS.TEXT_SECONDARY],
21837
21942
  iconPrimary = _useColor[THEME_COLORS.ICON_PRIMARY],
21838
- borderColor = _useColor[THEME_COLORS.BORDER],
21839
- hoverBackground = _useColor[THEME_COLORS.HOVER_BACKGROUND];
21943
+ borderColor = _useColor[THEME_COLORS.BORDER];
21840
21944
  var dispatch = reactRedux.useDispatch();
21841
21945
  var ChatClient = getClient();
21842
21946
  var user = ChatClient.user;
@@ -21878,12 +21982,12 @@ function ChatHeader(_ref) {
21878
21982
  onClick: handleBackToChannels
21879
21983
  }, MobileBackButton || (/*#__PURE__*/React__default.createElement(MobileBackButtonWrapper, {
21880
21984
  onClick: handleBackToChannels,
21881
- hoverBackground: hoverBackground
21985
+ hoverBackground: colors.primaryLight
21882
21986
  }, /*#__PURE__*/React__default.createElement(WrapArrowLeftIcon, {
21883
21987
  color: iconPrimary
21884
21988
  })))), activeChannel.isLinkedChannel && (/*#__PURE__*/React__default.createElement(BackButtonWrapper, {
21885
21989
  onClick: handleSwitchChannel,
21886
- hoverBackground: hoverBackground,
21990
+ hoverBackground: colors.primaryLight,
21887
21991
  order: backButtonOrder
21888
21992
  }, /*#__PURE__*/React__default.createElement(WrapArrowLeftIcon, {
21889
21993
  color: iconPrimary
@@ -23134,7 +23238,6 @@ var SliderPopup = function SliderPopup(_ref) {
23134
23238
  allowEditDeleteIncomingMessage = _ref.allowEditDeleteIncomingMessage,
23135
23239
  attachmentsPreview = _ref.attachmentsPreview;
23136
23240
  var _useColor = useColors(),
23137
- textPrimary = _useColor[THEME_COLORS.TEXT_PRIMARY],
23138
23241
  textOnPrimary = _useColor[THEME_COLORS.TEXT_ON_PRIMARY];
23139
23242
  var dispatch = reactRedux.useDispatch();
23140
23243
  var getFromContacts = getShowOnlyContactUsers();
@@ -23555,7 +23658,6 @@ var SliderPopup = function SliderPopup(_ref) {
23555
23658
  className: 'custom_carousel_arrow',
23556
23659
  leftButton: type === 'PREV',
23557
23660
  type: 'button',
23558
- backgroundColor: textPrimary,
23559
23661
  onClick: function onClick(e) {
23560
23662
  setImageLoading(true);
23561
23663
  e.preventDefault();
@@ -24571,62 +24673,6 @@ function SvgPlayVideo(props) {
24571
24673
  })));
24572
24674
  }
24573
24675
 
24574
- var getFrame3 = function getFrame3(video, time) {
24575
- try {
24576
- var canvas = document.createElement('canvas');
24577
- canvas.width = video.videoWidth;
24578
- canvas.height = video.videoHeight;
24579
- var ctx = canvas.getContext('2d');
24580
- if (time) {
24581
- video.currentTime = time;
24582
- }
24583
- ctx.drawImage(video, 0, 0);
24584
- return Promise.resolve(createImageThumbnail(null, canvas.toDataURL(), 10, 10));
24585
- } catch (e) {
24586
- return Promise.reject(e);
24587
- }
24588
- };
24589
- var getFrame = function getFrame(videoSrc, time) {
24590
- try {
24591
- var video = document.createElement('video');
24592
- video.src = videoSrc;
24593
- return Promise.resolve(new Promise(function (resolve, reject) {
24594
- if (videoSrc) {
24595
- var b = setInterval(function () {
24596
- if (video.readyState >= 3) {
24597
- if (time) {
24598
- video.currentTime = time;
24599
- }
24600
- var _calculateSize = calculateSize(video.videoWidth, video.videoHeight, 50, 50),
24601
- newWidth = _calculateSize[0],
24602
- newHeight = _calculateSize[1];
24603
- var canvas = document.createElement('canvas');
24604
- canvas.width = newWidth;
24605
- canvas.height = newHeight;
24606
- var ctx = canvas.getContext('2d');
24607
- video.currentTime = 10;
24608
- ctx.drawImage(video, 0, 0, newWidth, newHeight);
24609
- var pixels = ctx.getImageData(0, 0, canvas.width, canvas.height);
24610
- var binaryThumbHash = rgbaToThumbHash(pixels.width, pixels.height, pixels.data);
24611
- var thumb = binaryToBase64(binaryThumbHash);
24612
- log.info('generated thumb hash ... ', thumb);
24613
- clearInterval(b);
24614
- resolve({
24615
- thumb: thumb,
24616
- width: video.videoWidth,
24617
- height: video.videoHeight
24618
- });
24619
- }
24620
- }, 500);
24621
- } else {
24622
- reject(new Error('src not found'));
24623
- }
24624
- }));
24625
- } catch (e) {
24626
- return Promise.reject(e);
24627
- }
24628
- };
24629
-
24630
24676
  var _templateObject$s, _templateObject2$o, _templateObject3$i, _templateObject4$f, _templateObject5$d, _templateObject6$b, _templateObject7$a;
24631
24677
  var VideoPreview = /*#__PURE__*/React.memo(function VideoPreview(_ref) {
24632
24678
  var width = _ref.width,
@@ -31501,12 +31547,12 @@ var SendMessageInput = function SendMessageInput(_ref3) {
31501
31547
  var _useColor = useColors(),
31502
31548
  accentColor = _useColor[THEME_COLORS.ACCENT],
31503
31549
  sectionBackground = _useColor[THEME_COLORS.SECTION_BACKGROUND],
31550
+ focusBackground = _useColor[THEME_COLORS.FOCUS_BACKGROUND],
31504
31551
  surface1Background = _useColor[THEME_COLORS.SURFACE_1],
31505
31552
  textPrimary = _useColor[THEME_COLORS.TEXT_PRIMARY],
31506
31553
  textSecondary = _useColor[THEME_COLORS.TEXT_SECONDARY],
31507
31554
  iconInactive = _useColor[THEME_COLORS.ICON_INACTIVE],
31508
- errorColor = _useColor[THEME_COLORS.WARNING],
31509
- hoverBackground = _useColor[THEME_COLORS.HOVER_BACKGROUND];
31555
+ errorColor = _useColor[THEME_COLORS.WARNING];
31510
31556
  var dispatch = reactRedux.useDispatch();
31511
31557
  var ChatClient = getClient();
31512
31558
  var user = ChatClient.user;
@@ -32602,13 +32648,13 @@ var SendMessageInput = function SendMessageInput(_ref3) {
32602
32648
  color: errorColor
32603
32649
  }, uploadErrorMessage), selectedMessagesMap && selectedMessagesMap.size > 0 ? (/*#__PURE__*/React__default.createElement(SelectedMessagesWrapper, null, selectedMessagesMap.size, " ", selectedMessagesMap.size > 1 ? ' messages selected' : ' message selected', /*#__PURE__*/React__default.createElement(CustomButton, {
32604
32650
  onClick: handleToggleForwardMessagePopup,
32605
- backgroundColor: hoverBackground,
32651
+ backgroundColor: colors.primaryLight,
32606
32652
  marginLeft: '32px',
32607
32653
  color: textPrimary
32608
32654
  }, /*#__PURE__*/React__default.createElement(SvgForward, null), "Forward"), /*#__PURE__*/React__default.createElement(CustomButton, {
32609
32655
  onClick: handleToggleDeleteMessagePopup,
32610
32656
  color: errorColor,
32611
- backgroundColor: hoverBackground,
32657
+ backgroundColor: colors.primaryLight,
32612
32658
  marginLeft: '16px'
32613
32659
  }, /*#__PURE__*/React__default.createElement(SvgDeleteIcon, null), "Delete"), /*#__PURE__*/React__default.createElement(CloseIconWrapper, {
32614
32660
  onClick: handleCloseSelectMessages
@@ -32744,7 +32790,7 @@ var SendMessageInput = function SendMessageInput(_ref3) {
32744
32790
  }, /*#__PURE__*/React__default.createElement(DropdownOptionsUl, null, showChooseMediaAttachment && (/*#__PURE__*/React__default.createElement(DropdownOptionLi, {
32745
32791
  key: 1,
32746
32792
  textColor: textPrimary,
32747
- hoverBackground: hoverBackground,
32793
+ hoverBackground: focusBackground,
32748
32794
  onClick: function onClick() {
32749
32795
  return onOpenFileUploader(mediaExtensions);
32750
32796
  },
@@ -32753,7 +32799,7 @@ var SendMessageInput = function SendMessageInput(_ref3) {
32753
32799
  }, /*#__PURE__*/React__default.createElement(SvgChoseMedia, null), chooseMediaAttachmentText != null ? chooseMediaAttachmentText : 'Photo or video')), showChooseFileAttachment && (/*#__PURE__*/React__default.createElement(DropdownOptionLi, {
32754
32800
  key: 2,
32755
32801
  textColor: textPrimary,
32756
- hoverBackground: hoverBackground,
32802
+ hoverBackground: focusBackground,
32757
32803
  onClick: function onClick() {
32758
32804
  return onOpenFileUploader('');
32759
32805
  },
@@ -33268,7 +33314,7 @@ var Actions = function Actions(_ref) {
33268
33314
  var _useColor = useColors(),
33269
33315
  textPrimary = _useColor[THEME_COLORS.TEXT_PRIMARY],
33270
33316
  textSecondary = _useColor[THEME_COLORS.TEXT_SECONDARY],
33271
- hoverBackground = _useColor[THEME_COLORS.HOVER_BACKGROUND],
33317
+ focusBackground = _useColor[THEME_COLORS.FOCUS_BACKGROUND],
33272
33318
  borderThemeColor = _useColor[THEME_COLORS.BORDER],
33273
33319
  iconPrimary = _useColor[THEME_COLORS.ICON_PRIMARY],
33274
33320
  errorColor = _useColor[THEME_COLORS.WARNING];
@@ -33438,7 +33484,7 @@ var Actions = function Actions(_ref) {
33438
33484
  return /*#__PURE__*/React__default.createElement(DropdownOptionLi, {
33439
33485
  textColor: textPrimary,
33440
33486
  key: value + index,
33441
- hoverBackground: hoverBackground,
33487
+ hoverBackground: colors.primaryLight,
33442
33488
  onClick: function onClick() {
33443
33489
  return handleNotificationOnOff(value * oneHour);
33444
33490
  }
@@ -33446,28 +33492,28 @@ var Actions = function Actions(_ref) {
33446
33492
  }) : (/*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement(DropdownOptionLi, {
33447
33493
  textColor: textPrimary,
33448
33494
  key: 1,
33449
- hoverBackground: hoverBackground,
33495
+ hoverBackground: focusBackground,
33450
33496
  onClick: function onClick() {
33451
33497
  return handleNotificationOnOff(oneHour);
33452
33498
  }
33453
33499
  }, "Mute for 1 hour"), /*#__PURE__*/React__default.createElement(DropdownOptionLi, {
33454
33500
  textColor: textPrimary,
33455
33501
  key: 2,
33456
- hoverBackground: hoverBackground,
33502
+ hoverBackground: focusBackground,
33457
33503
  onClick: function onClick() {
33458
33504
  return handleNotificationOnOff(twoHours);
33459
33505
  }
33460
33506
  }, "Mute for 2 hours"), /*#__PURE__*/React__default.createElement(DropdownOptionLi, {
33461
33507
  textColor: textPrimary,
33462
33508
  key: 3,
33463
- hoverBackground: hoverBackground,
33509
+ hoverBackground: focusBackground,
33464
33510
  onClick: function onClick() {
33465
33511
  return handleNotificationOnOff(oneDay);
33466
33512
  }
33467
33513
  }, "Mute for 1 day"))), /*#__PURE__*/React__default.createElement(DropdownOptionLi, {
33468
33514
  textColor: textPrimary,
33469
33515
  key: 4,
33470
- hoverBackground: hoverBackground,
33516
+ hoverBackground: focusBackground,
33471
33517
  onClick: function onClick() {
33472
33518
  return handleNotificationOnOff();
33473
33519
  }
@@ -33755,8 +33801,7 @@ var ChangeMemberRole = function ChangeMemberRole(_ref) {
33755
33801
  surface1Background = _useColor[THEME_COLORS.SURFACE_1],
33756
33802
  textPrimary = _useColor[THEME_COLORS.TEXT_PRIMARY],
33757
33803
  textFootnote = _useColor[THEME_COLORS.TEXT_FOOTNOTE],
33758
- errorColor = _useColor[THEME_COLORS.WARNING],
33759
- hoverBackground = _useColor[THEME_COLORS.HOVER_BACKGROUND];
33804
+ errorColor = _useColor[THEME_COLORS.WARNING];
33760
33805
  var dispatch = reactRedux.useDispatch();
33761
33806
  var _useState = React.useState(false),
33762
33807
  isChanged = _useState[0],
@@ -33815,7 +33860,7 @@ var ChangeMemberRole = function ChangeMemberRole(_ref) {
33815
33860
  theme: theme
33816
33861
  }, !!roles.length && roles.map(function (role) {
33817
33862
  return /*#__PURE__*/React__default.createElement(DropdownOptionLi, {
33818
- hoverBackground: hoverBackground,
33863
+ hoverBackground: colors.primaryLight,
33819
33864
  key: role.name,
33820
33865
  onClick: function onClick() {
33821
33866
  return onChangeFunction(role.name);
@@ -33868,7 +33913,7 @@ var Members = function Members(_ref) {
33868
33913
  var _useColor = useColors(),
33869
33914
  accentColor = _useColor[THEME_COLORS.ACCENT],
33870
33915
  textPrimary = _useColor[THEME_COLORS.TEXT_PRIMARY],
33871
- hoverBackground = _useColor[THEME_COLORS.HOVER_BACKGROUND],
33916
+ focusBackground = _useColor[THEME_COLORS.FOCUS_BACKGROUND],
33872
33917
  textSecondary = _useColor[THEME_COLORS.TEXT_SECONDARY],
33873
33918
  errorColor = _useColor[THEME_COLORS.WARNING];
33874
33919
  var dispatch = reactRedux.useDispatch();
@@ -34015,14 +34060,14 @@ var Members = function Members(_ref) {
34015
34060
  key: 1,
34016
34061
  onClick: handleAddMemberPopup,
34017
34062
  color: textPrimary,
34018
- hoverBackground: hoverBackgroundColor || hoverBackground,
34063
+ hoverBackground: hoverBackgroundColor || focusBackground,
34019
34064
  addMemberIconColor: accentColor,
34020
34065
  fontSize: addMemberFontSize
34021
34066
  }, addMemberIcon || /*#__PURE__*/React__default.createElement(SvgAddMember, null), "Add " + displayMemberText)), !!members.length && members.map(function (member, index) {
34022
34067
  return /*#__PURE__*/React__default.createElement(MemberItem$1, {
34023
34068
  key: member.id + index,
34024
34069
  color: textPrimary,
34025
- hoverBackground: hoverBackgroundColor || hoverBackground,
34070
+ hoverBackground: hoverBackgroundColor || focusBackground,
34026
34071
  onClick: function onClick() {
34027
34072
  return handleCreateChat(member);
34028
34073
  },
@@ -34057,7 +34102,7 @@ var Members = function Members(_ref) {
34057
34102
  setCloseMenu('1');
34058
34103
  },
34059
34104
  key: 1,
34060
- hoverBackground: hoverBackground
34105
+ hoverBackground: focusBackground
34061
34106
  }, "Change role")), showMakeMemberAdmin && checkActionPermission('changeMemberRole') && member.role !== 'owner' && (/*#__PURE__*/React__default.createElement(DropdownOptionLi, {
34062
34107
  onClick: function onClick(e) {
34063
34108
  setSelectedMember(member);
@@ -34066,7 +34111,7 @@ var Members = function Members(_ref) {
34066
34111
  },
34067
34112
  textColor: member.role === 'admin' ? errorColor : '',
34068
34113
  key: 2,
34069
- hoverBackground: hoverBackground
34114
+ hoverBackground: focusBackground
34070
34115
  }, member.role === 'admin' ? 'Revoke Admin' : 'Make Admin')), showKickMember && checkActionPermission('kickMember') && member.role !== 'owner' && (/*#__PURE__*/React__default.createElement(DropdownOptionLi, {
34071
34116
  onClick: function onClick(e) {
34072
34117
  setSelectedMember(member);
@@ -34075,11 +34120,11 @@ var Members = function Members(_ref) {
34075
34120
  },
34076
34121
  textColor: errorColor,
34077
34122
  key: 3,
34078
- hoverBackground: hoverBackground
34123
+ hoverBackground: focusBackground
34079
34124
  }, "Remove")), showKickAndBlockMember && checkActionPermission('kickAndBlockMember') && (/*#__PURE__*/React__default.createElement(DropdownOptionLi, {
34080
34125
  textColor: errorColor,
34081
34126
  key: 4,
34082
- hoverBackground: hoverBackground,
34127
+ hoverBackground: focusBackground,
34083
34128
  onClick: function onClick(e) {
34084
34129
  setSelectedMember(member);
34085
34130
  toggleBlockMemberPopup(e);
@@ -34840,8 +34885,7 @@ var DetailsTab = function DetailsTab(_ref) {
34840
34885
  var _useColor = useColors(),
34841
34886
  accentColor = _useColor[THEME_COLORS.ACCENT],
34842
34887
  textSecondary = _useColor[THEME_COLORS.TEXT_SECONDARY],
34843
- borderThemeColor = _useColor[THEME_COLORS.BORDER],
34844
- backgroundColor = _useColor[THEME_COLORS.BACKGROUND];
34888
+ borderThemeColor = _useColor[THEME_COLORS.BORDER];
34845
34889
  var dispatch = reactRedux.useDispatch();
34846
34890
  var isDirectChannel = channel.type === DEFAULT_CHANNEL_TYPE.DIRECT;
34847
34891
  var showMembers = !isDirectChannel && checkActionPermission('getMembers');
@@ -34868,8 +34912,7 @@ var DetailsTab = function DetailsTab(_ref) {
34868
34912
  borderColor: borderColor || borderThemeColor,
34869
34913
  fontSize: tabItemsFontSize,
34870
34914
  lineHeight: tabItemsLineHeight,
34871
- minWidth: tabItemsMinWidth,
34872
- backgroundColor: backgroundColor
34915
+ minWidth: tabItemsMinWidth
34873
34916
  }, Object.keys(channelDetailsTabs).map(function (key) {
34874
34917
  if (key === 'member') {
34875
34918
  if (showMembers) {
@@ -34941,10 +34984,8 @@ var DetailsTab = function DetailsTab(_ref) {
34941
34984
  })));
34942
34985
  };
34943
34986
  var Container$r = styled__default.div(_templateObject$R || (_templateObject$R = _taggedTemplateLiteralLoose(["\n //border-top: 1px solid ", ";\n"])), colors.gray1);
34944
- var DetailsTabHeader = styled__default.div(_templateObject2$K || (_templateObject2$K = _taggedTemplateLiteralLoose(["\n overflow-x: auto;\n overflow-y: hidden;\n padding: 0 20px;\n border-bottom: 1px solid ", ";\n background-color: ", ";\n display: flex;\n justify-content: space-between;\n position: sticky;\n top: 0;\n z-index: 12;\n /* width */\n &::-webkit-scrollbar {\n width: 0;\n height: 0;\n }\n\n /* Track */\n &::-webkit-scrollbar-track {\n background: transparent;\n }\n\n /* Handle */\n &::-webkit-scrollbar-thumb {\n background: transparent;\n }\n\n /* Handle on hover */\n &::-webkit-scrollbar-thumb:hover {\n background: transparent;\n }\n button {\n position: relative;\n border: none;\n background: transparent;\n outline: none;\n height: 44px;\n text-transform: capitalize;\n font-style: normal;\n font-weight: 500;\n font-size: ", ";\n line-height: ", ";\n color: ", ";\n min-width: ", ";\n cursor: pointer;\n }\n\n & span {\n position: relative;\n display: inline-flex;\n align-items: center;\n height: 100%;\n }\n\n & .active span {\n color: ", ";\n\n &:after {\n content: '';\n width: 100%;\n border-radius: 2px;\n height: 2px;\n background-color: ", ";\n position: absolute;\n top: calc(100% - 1px);\n left: 0;\n }\n }\n"])), function (props) {
34987
+ var DetailsTabHeader = styled__default.div(_templateObject2$K || (_templateObject2$K = _taggedTemplateLiteralLoose(["\n overflow-x: auto;\n overflow-y: hidden;\n padding: 0 20px;\n border-bottom: 1px solid ", ";\n display: flex;\n justify-content: space-between;\n position: sticky;\n top: 0;\n z-index: 12;\n /* width */\n &::-webkit-scrollbar {\n width: 0;\n height: 0;\n }\n\n /* Track */\n &::-webkit-scrollbar-track {\n background: transparent;\n }\n\n /* Handle */\n &::-webkit-scrollbar-thumb {\n background: transparent;\n }\n\n /* Handle on hover */\n &::-webkit-scrollbar-thumb:hover {\n background: transparent;\n }\n button {\n position: relative;\n border: none;\n background: transparent;\n outline: none;\n height: 44px;\n text-transform: capitalize;\n font-style: normal;\n font-weight: 500;\n font-size: ", ";\n line-height: ", ";\n color: ", ";\n min-width: ", ";\n cursor: pointer;\n }\n\n & span {\n position: relative;\n display: inline-flex;\n align-items: center;\n height: 100%;\n }\n\n & .active span {\n color: ", ";\n\n &:after {\n content: '';\n width: 100%;\n border-radius: 2px;\n height: 2px;\n background-color: ", ";\n position: absolute;\n top: calc(100% - 1px);\n left: 0;\n }\n }\n"])), function (props) {
34945
34988
  return props.borderColor;
34946
- }, function (props) {
34947
- return props.backgroundColor || 'transparent';
34948
34989
  }, function (props) {
34949
34990
  return props.fontSize || '15px';
34950
34991
  }, function (props) {
@@ -34984,8 +35025,7 @@ var EditChannel = function EditChannel(_ref) {
34984
35025
  borderColor = _useColor[THEME_COLORS.BORDER],
34985
35026
  textPrimary = _useColor[THEME_COLORS.TEXT_PRIMARY],
34986
35027
  textFootnote = _useColor[THEME_COLORS.TEXT_FOOTNOTE],
34987
- errorColor = _useColor[THEME_COLORS.WARNING],
34988
- hoverBackground = _useColor[THEME_COLORS.HOVER_BACKGROUND];
35028
+ errorColor = _useColor[THEME_COLORS.WARNING];
34989
35029
  var ChatClient = getClient();
34990
35030
  var user = ChatClient.user;
34991
35031
  var dispatch = reactRedux.useDispatch();
@@ -35130,7 +35170,7 @@ var EditChannel = function EditChannel(_ref) {
35130
35170
  }, /*#__PURE__*/React__default.createElement(DropdownOptionsUl, null, /*#__PURE__*/React__default.createElement(DropdownOptionLi, {
35131
35171
  key: 1,
35132
35172
  textColor: textPrimary,
35133
- hoverBackground: hoverBackground,
35173
+ hoverBackground: colors.primaryLight,
35134
35174
  onClick: function onClick() {
35135
35175
  return onOpenFileUploader();
35136
35176
  },
@@ -35142,7 +35182,7 @@ var EditChannel = function EditChannel(_ref) {
35142
35182
  type: 'file'
35143
35183
  })), newAvatar.url && (/*#__PURE__*/React__default.createElement(DropdownOptionLi, {
35144
35184
  key: 2,
35145
- hoverBackground: hoverBackground,
35185
+ hoverBackground: colors.primaryLight,
35146
35186
  textColor: errorColor,
35147
35187
  onClick: handleToggleDeleteAvatarPopup,
35148
35188
  iconWidth: '20px'