stream-chat-react 6.12.0 → 6.12.1

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 (35) hide show
  1. package/README.md +1 -1
  2. package/dist/browser.full-bundle.js +388 -465
  3. package/dist/browser.full-bundle.js.map +1 -1
  4. package/dist/browser.full-bundle.min.js +4 -4
  5. package/dist/browser.full-bundle.min.js.map +1 -1
  6. package/dist/components/Attachment/Card.d.ts.map +1 -1
  7. package/dist/components/Attachment/Card.js +1 -3
  8. package/dist/components/MessageInput/MessageInput.d.ts +2 -0
  9. package/dist/components/MessageInput/MessageInput.d.ts.map +1 -1
  10. package/dist/components/MessageInput/hooks/useAttachments.d.ts +1 -1
  11. package/dist/components/MessageInput/hooks/useAttachments.d.ts.map +1 -1
  12. package/dist/components/MessageInput/hooks/useAttachments.js +3 -1
  13. package/dist/components/MessageInput/hooks/useEmojiPicker.d.ts +1 -1
  14. package/dist/components/MessageInput/hooks/useEmojiPicker.d.ts.map +1 -1
  15. package/dist/components/MessageInput/hooks/useEmojiPicker.js +12 -4
  16. package/dist/components/MessageInput/hooks/useMessageInputState.js +3 -3
  17. package/dist/css/index.css +1 -1
  18. package/dist/i18n/Streami18n.js +5 -5
  19. package/dist/index.cjs.js +25 -18
  20. package/dist/index.cjs.js.map +1 -1
  21. package/dist/scss/Card.scss +10 -0
  22. package/dist/scss/ChannelListMessenger.scss +4 -0
  23. package/dist/scss/ChannelSearch.scss +1 -1
  24. package/dist/scss/EditMessageForm.scss +4 -0
  25. package/dist/scss/LoadMoreButton.scss +5 -0
  26. package/dist/scss/Message.scss +5 -0
  27. package/dist/scss/MessageActions.scss +12 -0
  28. package/dist/scss/MessageInput.scss +15 -0
  29. package/dist/scss/MessageInputFlat.scss +8 -1
  30. package/dist/scss/Modal.scss +7 -2
  31. package/dist/scss/_base.scss +10 -0
  32. package/dist/scss/_variables.scss +2 -0
  33. package/dist/version.d.ts +1 -1
  34. package/dist/version.js +1 -1
  35. package/package.json +7 -7
@@ -162,19 +162,19 @@ Dayjs.updateLocale('it', {
162
162
  Dayjs.updateLocale('ja', {
163
163
  calendar: {
164
164
  lastDay: '[昨日] LT',
165
- lastWeek: '[過去] dddd [で] LT',
165
+ lastWeek: 'dddd LT',
166
166
  nextDay: '[明日] LT',
167
- nextWeek: 'dddd [] LT',
168
- sameDay: '[今日は] LT',
167
+ nextWeek: '[次の] dddd LT',
168
+ sameDay: '[今日] LT',
169
169
  sameElse: 'L',
170
170
  },
171
171
  });
172
172
  Dayjs.updateLocale('ko', {
173
173
  calendar: {
174
174
  lastDay: '[어제] LT',
175
- lastWeek: '[마지막] dddd [~에] LT',
175
+ lastWeek: '[지난] dddd LT',
176
176
  nextDay: '[내일] LT',
177
- nextWeek: 'dddd [~에] LT',
177
+ nextWeek: 'dddd LT',
178
178
  sameDay: '[오늘] LT',
179
179
  sameElse: 'L',
180
180
  },
package/dist/index.cjs.js CHANGED
@@ -278,8 +278,6 @@ var UnMemoizedSafeAnchor = function (props) {
278
278
  };
279
279
  var SafeAnchor = React__default['default'].memo(UnMemoizedSafeAnchor);
280
280
 
281
- var img$1 = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAAAkCAYAAAB/up84AAAACXBIWXMAAAsTAAALEwEAmpwYAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAABVhJREFUeNrsW6GS20AMdToGBgEGAQYBBgEBBQYFgQcP5hMO9jP6CYWFBwsPBgYUGBQEFAQUGAQYBBgYGHjmutt5O6NupbXXcZJrx5rJXGyv11o96Ukr52avr6/BJG9HZmMBMpvNYnxt1JzNZNoRAYFxM2Z8rT6FuueMcaH6s1KfhBn3U42r1Jg1rrfq+Bt5xgf1Z64+uQFQndNzLc1Ydfwg6F2p6wd1PVXfU+b6Gc9vHGuh8+jrsXVN61Sq64XggNw95tlH9XmP6y3W2OI+qvN3db6mN7/zBFAb8L2aNMJxRsDQC6jIuEyN039LnAvV8QJKRRijZUHmT8iiLpEFDHKJaB1TGN732WuAokEIDQCwhwGjsMEIMNgp6qY9JlsTgyXquCFG1d54IsbOsKAVPLDBcQJjUxB0RJwAltGntNQ46GhzqPnb0y0954RG/1iLQ7SRCkR+guiPtW6GFRg5gAlCrFvbJEZ0ngDAUn0/Y77fDCJFXuiB/AmGDC3PLg0YWLRW5CcJWWPglNxDKS6C59AcZBs/sYxbOQBqHHkuZYCsGCds4SQJDDx3RK3RjUb9EfMUcLQ57BHS64MAIYtYkvEt+d4wCzqr++ipkoTtkihOI2chREfA5KiC0GOAaMig05zoWJPjgMk39jxcPphDR0mSDrtq438g51iq8omQlEnYJfHoiAFxYQGko6bCPSmZ5wS+TRx0Zc5R4CtmHbEVJT+0p1uOYdNE1SMfOKNO0zXWEmItptApsfYa1LV0UZUPIHSCmlRYJhfokNWhX5IcsmIWbEAMCQWerWirhZK57MghNQyzgke3QuQWPUv4EAac9wCuJjmkNmvUNEwiobX+DgdEWoQGgNDPGtTWWhRRWONX5JlnePCZhP1JUCOzPN1O0C2MohP7xuiko8Qy9INUDBg2YPJMlzP8pRv0qYeUdu+Cy+RAKIYmtVqojM5kkS0DwkXlLuY0ICzgAEOlAd8fPe+rYJdppz61TiZ5G4AgcScWz05RcUtAkOwyJMtI4FzNt3suCWKfwLUhdqRC0yA/enB1CZ4vBZ2fhIptJ4x/5PYVavyzQ39N0V8ddnsQ+m3sfX02hjo3bIVJ7d5PhqojZxYdC3NEdv9oQMQWFFjHHqpLEsc9BZyF23c9cG0ZOJjUIN15V1mY8OOAhW0E77yWaP2eoO9VBFG/d6yX6/xuHT2z3AsQ5ImnjrZBF6XcUiKAEl0RlJzZ7ZtnbxmqSgRqfxmyD9k6wNDGzuExecB3Z1/ukBOjQH73MZbspChFp9nQ/EYY9+LaaIYOqlo7JjwISX+LcBwbjAOz2ZKS7BpOcq0o0R2HvZAbHpHPJGc+dm00paQuedmOA4O0WD5fyQ4V08Ip4ATxhYl8CCh76/0QLVyehlBVFyCpYJTcKmPjHoY8XNE2VQ8dbIkdr4Z95npBwcNVahKzNEMBSYSyz46iLm8sLunreG5O+xYTsaMUHYu6bMn79sRCT2+8l6SMV2cCT5e3UspBXbbd9n3nDIN/Q1KP3JDfWLcd8kZwCVX12hjeOlmOIMe+L6FGjJLC4QS5rz6hg/tThjZiU0Pr/g7D65/uCUafKgaUJu0lHjvox/XsjXA+GAOQUogIXV8/v7GoKOGJfYuHxvHjt7t3rEMHD2+E5PoR+5GCLCS+8g6Z2xgGt6anuwGC99MSKAl6RrfUs/ofje+b1PcjlJBlMMk4gKBUe77AqKVP/T1Jj30IQPmCTdkm6NeKb5BkJzCGdCA8XuFGZIOWCBEh/mwGiZ/rFZXk3xHEdkjHb6MknVOhypJe+Sac03XlL4fe3r81mH518q9GyCS3kV8CDADlsrVaJhTLAgAAAABJRU5ErkJggg==";
282
-
283
281
  var getDisplayName = function (Component) {
284
282
  return Component.displayName || Component.name || 'Component';
285
283
  };
@@ -351,8 +349,7 @@ var UnMemoizedCard = function (props) {
351
349
  React__default['default'].createElement("div", { className: 'str-chat__message-attachment-card--flex' },
352
350
  title && React__default['default'].createElement("div", { className: 'str-chat__message-attachment-card--title' }, title),
353
351
  text && React__default['default'].createElement("div", { className: 'str-chat__message-attachment-card--text' }, text),
354
- (title_link || og_scrape_url) && (React__default['default'].createElement(SafeAnchor, { className: 'str-chat__message-attachment-card--url', href: title_link || og_scrape_url, rel: 'noopener noreferrer', target: '_blank' }, trimUrl(title_link || og_scrape_url)))),
355
- type === 'giphy' && (React__default['default'].createElement("img", { alt: 'giphy logo', className: 'str-chat__message-attachment-card__giphy-logo', "data-testid": 'card-giphy', src: img$1 })))));
352
+ (title_link || og_scrape_url) && (React__default['default'].createElement(SafeAnchor, { className: 'str-chat__message-attachment-card--url', href: title_link || og_scrape_url, rel: 'noopener noreferrer', target: '_blank' }, trimUrl(title_link || og_scrape_url)))))));
356
353
  };
357
354
  /**
358
355
  * Simple Card Layout for displaying links
@@ -4472,7 +4469,7 @@ var useFileUploads = function (props, state, dispatch) {
4472
4469
  };
4473
4470
 
4474
4471
  var apiMaxNumberOfFiles = 10;
4475
- var useAttachments = function (props, state, dispatch) {
4472
+ var useAttachments = function (props, state, dispatch, textareaRef) {
4476
4473
  var noFiles = props.noFiles;
4477
4474
  var fileUploads = state.fileUploads, imageUploads = state.imageUploads;
4478
4475
  var _a = useChannelStateContext('useAttachments'), maxNumberOfFiles = _a.maxNumberOfFiles, multipleUploads = _a.multipleUploads;
@@ -4493,6 +4490,7 @@ var useAttachments = function (props, state, dispatch) {
4493
4490
  var numberOfUploads = numberOfImages + numberOfFiles;
4494
4491
  var maxFilesLeft = maxFilesAllowed - numberOfUploads;
4495
4492
  var uploadNewFiles = React.useCallback(function (files) {
4493
+ var _a;
4496
4494
  Array.from(files)
4497
4495
  .slice(0, maxFilesLeft)
4498
4496
  .forEach(function (file) {
@@ -4506,6 +4504,7 @@ var useAttachments = function (props, state, dispatch) {
4506
4504
  dispatch({ file: file, id: id, state: 'uploading', type: 'setFileUpload' });
4507
4505
  }
4508
4506
  });
4507
+ (_a = textareaRef === null || textareaRef === void 0 ? void 0 : textareaRef.current) === null || _a === void 0 ? void 0 : _a.focus();
4509
4508
  }, [maxFilesLeft, noFiles]);
4510
4509
  return {
4511
4510
  maxFilesLeft: maxFilesLeft,
@@ -4588,7 +4587,7 @@ var useMessageInputText = function (props, state, dispatch) {
4588
4587
  };
4589
4588
  };
4590
4589
 
4591
- var useEmojiPicker = function (state, dispatch, insertText) {
4590
+ var useEmojiPicker = function (state, dispatch, insertText, textareaRef, closeEmojiPickerOnClick) {
4592
4591
  var emojiPickerRef = React.useRef(null);
4593
4592
  var closeEmojiPicker = React.useCallback(function (event) {
4594
4593
  if (emojiPickerRef.current && !emojiPickerRef.current.contains(event.target)) {
@@ -4634,9 +4633,17 @@ var useEmojiPicker = function (state, dispatch, insertText) {
4634
4633
  document.removeEventListener('keydown', handleEmojiEscape);
4635
4634
  };
4636
4635
  }, [closeEmojiPicker, state.emojiPickerIsOpen]);
4637
- var onSelectEmoji = React.useCallback(function (emoji) { return insertText(emoji.native); }, [
4638
- insertText,
4639
- ]);
4636
+ var onSelectEmoji = React.useCallback(function (emoji) {
4637
+ var _a;
4638
+ insertText(emoji.native);
4639
+ if (closeEmojiPickerOnClick) {
4640
+ dispatch({
4641
+ type: 'setEmojiPickerIsOpen',
4642
+ value: false,
4643
+ });
4644
+ }
4645
+ (_a = textareaRef === null || textareaRef === void 0 ? void 0 : textareaRef.current) === null || _a === void 0 ? void 0 : _a.focus();
4646
+ }, [insertText]);
4640
4647
  return {
4641
4648
  closeEmojiPicker: closeEmojiPicker,
4642
4649
  emojiPickerRef: emojiPickerRef,
@@ -4958,7 +4965,7 @@ var messageInputReducer = function (state, action) {
4958
4965
  * hook for MessageInput state
4959
4966
  */
4960
4967
  var useMessageInputState = function (props) {
4961
- var message = props.message;
4968
+ var closeEmojiPickerOnClick = props.closeEmojiPickerOnClick, message = props.message;
4962
4969
  var _a = useChannelStateContext('useMessageInputState'), _b = _a.channelCapabilities, channelCapabilities = _b === void 0 ? {} : _b, channelConfig = _a.channelConfig;
4963
4970
  var _c = React.useReducer(messageInputReducer, message, initState), state = _c[0], dispatch = _c[1];
4964
4971
  var _d = useMessageInputText(props, state, dispatch), handleChange = _d.handleChange, insertText = _d.insertText, textareaRef = _d.textareaRef;
@@ -4980,8 +4987,8 @@ var useMessageInputState = function (props) {
4980
4987
  setShowMentionsList(true);
4981
4988
  };
4982
4989
  var closeMentionsList = function () { return setShowMentionsList(false); };
4983
- var _g = useEmojiPicker(state, dispatch, insertText), closeEmojiPicker = _g.closeEmojiPicker, emojiPickerRef = _g.emojiPickerRef, handleEmojiKeyDown = _g.handleEmojiKeyDown, onSelectEmoji = _g.onSelectEmoji, openEmojiPicker = _g.openEmojiPicker;
4984
- var _h = useAttachments(props, state, dispatch), maxFilesLeft = _h.maxFilesLeft, numberOfUploads = _h.numberOfUploads, removeFile = _h.removeFile, removeImage = _h.removeImage, uploadFile = _h.uploadFile, uploadImage = _h.uploadImage, uploadNewFiles = _h.uploadNewFiles;
4990
+ var _g = useEmojiPicker(state, dispatch, insertText, textareaRef, closeEmojiPickerOnClick), closeEmojiPicker = _g.closeEmojiPicker, emojiPickerRef = _g.emojiPickerRef, handleEmojiKeyDown = _g.handleEmojiKeyDown, onSelectEmoji = _g.onSelectEmoji, openEmojiPicker = _g.openEmojiPicker;
4991
+ var _h = useAttachments(props, state, dispatch, textareaRef), maxFilesLeft = _h.maxFilesLeft, numberOfUploads = _h.numberOfUploads, removeFile = _h.removeFile, removeImage = _h.removeImage, uploadFile = _h.uploadFile, uploadImage = _h.uploadImage, uploadNewFiles = _h.uploadNewFiles;
4985
4992
  var handleSubmit = useSubmitHandler(props, state, dispatch, numberOfUploads).handleSubmit;
4986
4993
  var onPaste = usePasteHandler(uploadNewFiles, insertText).onPaste;
4987
4994
  var isUploadEnabled = (channelConfig === null || channelConfig === void 0 ? void 0 : channelConfig.uploads) !== false && channelCapabilities['upload-file'] !== false;
@@ -7094,19 +7101,19 @@ Dayjs__default['default'].updateLocale('it', {
7094
7101
  Dayjs__default['default'].updateLocale('ja', {
7095
7102
  calendar: {
7096
7103
  lastDay: '[昨日] LT',
7097
- lastWeek: '[過去] dddd [で] LT',
7104
+ lastWeek: 'dddd LT',
7098
7105
  nextDay: '[明日] LT',
7099
- nextWeek: 'dddd [] LT',
7100
- sameDay: '[今日は] LT',
7106
+ nextWeek: '[次の] dddd LT',
7107
+ sameDay: '[今日] LT',
7101
7108
  sameElse: 'L',
7102
7109
  },
7103
7110
  });
7104
7111
  Dayjs__default['default'].updateLocale('ko', {
7105
7112
  calendar: {
7106
7113
  lastDay: '[어제] LT',
7107
- lastWeek: '[마지막] dddd [~에] LT',
7114
+ lastWeek: '[지난] dddd LT',
7108
7115
  nextDay: '[내일] LT',
7109
- nextWeek: 'dddd [~에] LT',
7116
+ nextWeek: 'dddd LT',
7110
7117
  sameDay: '[오늘] LT',
7111
7118
  sameElse: 'L',
7112
7119
  },
@@ -7599,7 +7606,7 @@ var Streami18n = /** @class */ (function () {
7599
7606
  return Streami18n;
7600
7607
  }());
7601
7608
 
7602
- var version = '6.12.0';
7609
+ var version = '6.12.1';
7603
7610
 
7604
7611
  var useChat = function (_a) {
7605
7612
  var _b;