stream-chat-react 13.9.0 → 13.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (55) hide show
  1. package/dist/components/ChannelPreview/hooks/useMessageDeliveryStatus.js +8 -3
  2. package/dist/components/Chat/hooks/useChat.js +1 -1
  3. package/dist/components/Dialog/ButtonWithSubmenu.d.ts +2 -2
  4. package/dist/components/Dialog/ButtonWithSubmenu.js +6 -6
  5. package/dist/components/Dialog/DialogAnchor.d.ts +5 -11
  6. package/dist/components/Dialog/DialogAnchor.js +22 -26
  7. package/dist/components/Dialog/DialogPortal.d.ts +2 -1
  8. package/dist/components/Dialog/DialogPortal.js +23 -7
  9. package/dist/components/Dialog/hooks/index.d.ts +1 -0
  10. package/dist/components/Dialog/hooks/useDialog.d.ts +4 -0
  11. package/dist/components/Dialog/hooks/useDialog.js +9 -1
  12. package/dist/components/Dialog/hooks/usePopoverPosition.d.ts +68 -0
  13. package/dist/components/Dialog/hooks/usePopoverPosition.js +54 -0
  14. package/dist/components/Form/Dropdown.d.ts +2 -2
  15. package/dist/components/Message/MessageRepliesCountButton.js +3 -1
  16. package/dist/components/Message/renderText/remarkPlugins/index.d.ts +1 -0
  17. package/dist/components/Message/renderText/remarkPlugins/index.js +1 -0
  18. package/dist/components/Message/renderText/remarkPlugins/keepLineBreaksPlugin.d.ts +10 -2
  19. package/dist/components/Message/renderText/remarkPlugins/keepLineBreaksPlugin.js +46 -26
  20. package/dist/components/Message/renderText/remarkPlugins/remarkIgnoreMarkdown.d.ts +8 -0
  21. package/dist/components/Message/renderText/remarkPlugins/remarkIgnoreMarkdown.js +11 -0
  22. package/dist/components/MessageActions/MessageActions.js +4 -4
  23. package/dist/components/MessageInput/AttachmentSelector.d.ts +1 -1
  24. package/dist/components/MessageInput/AttachmentSelector.js +9 -4
  25. package/dist/components/MessageList/hooks/useLastDeliveredData.js +5 -2
  26. package/dist/components/Modal/GlobalModal.js +2 -2
  27. package/dist/components/Reactions/ReactionSelectorWithButton.js +4 -4
  28. package/dist/components/Tooltip/Tooltip.d.ts +2 -2
  29. package/dist/components/Tooltip/Tooltip.js +11 -12
  30. package/dist/context/DialogManagerContext.d.ts +1 -0
  31. package/dist/context/DialogManagerContext.js +1 -0
  32. package/dist/css/v2/index.css +1 -1
  33. package/dist/css/v2/index.layout.css +1 -1
  34. package/dist/experimental/MessageActions/MessageActions.js +5 -5
  35. package/dist/experimental/index.browser.cjs +307 -238
  36. package/dist/experimental/index.browser.cjs.map +4 -4
  37. package/dist/experimental/index.node.cjs +307 -238
  38. package/dist/experimental/index.node.cjs.map +4 -4
  39. package/dist/index.browser.cjs +1415 -1307
  40. package/dist/index.browser.cjs.map +4 -4
  41. package/dist/index.node.cjs +1418 -1307
  42. package/dist/index.node.cjs.map +4 -4
  43. package/dist/plugins/Emojis/EmojiPicker.d.ts +9 -4
  44. package/dist/plugins/Emojis/EmojiPicker.js +10 -5
  45. package/dist/plugins/Emojis/index.browser.cjs +89 -29
  46. package/dist/plugins/Emojis/index.browser.cjs.map +4 -4
  47. package/dist/plugins/Emojis/index.node.cjs +89 -29
  48. package/dist/plugins/Emojis/index.node.cjs.map +4 -4
  49. package/dist/scss/v2/Message/Message-layout.scss +4 -0
  50. package/dist/scss/v2/MessageActionsBox/MessageActionsBox-layout.scss +1 -0
  51. package/package.json +7 -8
  52. package/dist/components/MessageActions/hooks/index.d.ts +0 -1
  53. package/dist/components/MessageActions/hooks/index.js +0 -1
  54. package/dist/components/MessageActions/hooks/useMessageActionsBoxPopper.d.ts +0 -18
  55. package/dist/components/MessageActions/hooks/useMessageActionsBoxPopper.js +0 -31
@@ -2,7 +2,7 @@ import clsx from 'clsx';
2
2
  import React, { useState } from 'react';
3
3
  import { useChatContext, useMessageContext, useTranslationContext } from '../../context';
4
4
  import { ActionsIcon } from '../../components/Message/icons';
5
- import { DialogAnchor, useDialog, useDialogIsOpen } from '../../components/Dialog';
5
+ import { DialogAnchor, useDialogIsOpen, useDialogOnNearestManager, } from '../../components/Dialog';
6
6
  import { MessageActionsWrapper } from '../../components/MessageActions/MessageActions';
7
7
  import { useBaseMessageActionSetFilter, useSplitMessageActionSet } from './hooks';
8
8
  import { defaultMessageActionSet } from './defaults';
@@ -21,9 +21,9 @@ export const MessageActions = ({ disableBaseMessageActionSetFilter = false, mess
21
21
  const { dropdownActionSet, quickActionSet } = useSplitMessageActionSet(filteredMessageActionSet);
22
22
  const dropdownDialogId = `message-actions--${message.id}`;
23
23
  const reactionSelectorDialogId = `reaction-selector--${message.id}`;
24
- const dialog = useDialog({ id: dropdownDialogId });
25
- const dropdownDialogIsOpen = useDialogIsOpen(dropdownDialogId);
26
- const reactionSelectorDialogIsOpen = useDialogIsOpen(reactionSelectorDialogId);
24
+ const { dialog, dialogManager } = useDialogOnNearestManager({ id: dropdownDialogId });
25
+ const dropdownDialogIsOpen = useDialogIsOpen(dropdownDialogId, dialogManager?.id);
26
+ const reactionSelectorDialogIsOpen = useDialogIsOpen(reactionSelectorDialogId, dialogManager?.id);
27
27
  // do not render anything if total action count is zero
28
28
  if (dropdownActionSet.length + quickActionSet.length === 0) {
29
29
  return null;
@@ -34,7 +34,7 @@ export const MessageActions = ({ disableBaseMessageActionSetFilter = false, mess
34
34
  dropdownActionSet.length > 0 && (React.createElement(MessageActionsWrapper, { inline: false, toggleOpen: dialog?.toggle },
35
35
  React.createElement("button", { "aria-expanded": dropdownDialogIsOpen, "aria-haspopup": 'true', "aria-label": t('aria/Open Message Actions Menu'), className: 'str-chat__message-actions-box-button', "data-testid": 'message-actions-toggle-button', ref: setActionsBoxButtonElement },
36
36
  React.createElement(ActionsIcon, { className: 'str-chat__message-action-icon' })),
37
- React.createElement(DialogAnchor, { id: dropdownDialogId, placement: isMyMessage() ? 'top-end' : 'top-start', referenceElement: actionsBoxButtonElement, tabIndex: -1, trapFocus: true },
37
+ React.createElement(DialogAnchor, { dialogManagerId: dialogManager?.id, id: dropdownDialogId, placement: isMyMessage() ? 'top-end' : 'top-start', referenceElement: actionsBoxButtonElement, tabIndex: -1, trapFocus: true },
38
38
  React.createElement(DropdownBox, { open: dropdownDialogIsOpen }, dropdownActionSet.map(({ Component: DropdownActionComponent, type }) => (React.createElement(DropdownActionComponent, { key: type }))))))),
39
39
  quickActionSet.map(({ Component: QuickActionComponent, type }) => (React.createElement(QuickActionComponent, { key: type })))));
40
40
  };