@liveblocks/react-ui 2.14.0-v2encoding → 2.15.0-debug1

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 (258) hide show
  1. package/dist/_private/index.d.mts +24 -22
  2. package/dist/_private/index.d.ts +24 -22
  3. package/dist/components/Comment.js +355 -254
  4. package/dist/components/Comment.js.map +1 -1
  5. package/dist/components/Comment.mjs +330 -229
  6. package/dist/components/Comment.mjs.map +1 -1
  7. package/dist/components/Composer.js +304 -221
  8. package/dist/components/Composer.js.map +1 -1
  9. package/dist/components/Composer.mjs +278 -195
  10. package/dist/components/Composer.mjs.map +1 -1
  11. package/dist/components/HistoryVersionSummary.js +25 -22
  12. package/dist/components/HistoryVersionSummary.js.map +1 -1
  13. package/dist/components/HistoryVersionSummary.mjs +24 -21
  14. package/dist/components/HistoryVersionSummary.mjs.map +1 -1
  15. package/dist/components/HistoryVersionSummaryList.js +10 -9
  16. package/dist/components/HistoryVersionSummaryList.js.map +1 -1
  17. package/dist/components/HistoryVersionSummaryList.mjs +9 -8
  18. package/dist/components/HistoryVersionSummaryList.mjs.map +1 -1
  19. package/dist/components/InboxNotification.js +201 -143
  20. package/dist/components/InboxNotification.js.map +1 -1
  21. package/dist/components/InboxNotification.mjs +179 -121
  22. package/dist/components/InboxNotification.mjs.map +1 -1
  23. package/dist/components/InboxNotificationList.js +18 -14
  24. package/dist/components/InboxNotificationList.js.map +1 -1
  25. package/dist/components/InboxNotificationList.mjs +16 -12
  26. package/dist/components/InboxNotificationList.mjs.map +1 -1
  27. package/dist/components/Thread.js +103 -86
  28. package/dist/components/Thread.js.map +1 -1
  29. package/dist/components/Thread.mjs +92 -75
  30. package/dist/components/Thread.mjs.map +1 -1
  31. package/dist/components/internal/Attachment.js +158 -107
  32. package/dist/components/internal/Attachment.js.map +1 -1
  33. package/dist/components/internal/Attachment.mjs +147 -96
  34. package/dist/components/internal/Attachment.mjs.map +1 -1
  35. package/dist/components/internal/Attribution.js +15 -13
  36. package/dist/components/internal/Attribution.js.map +1 -1
  37. package/dist/components/internal/Attribution.mjs +15 -13
  38. package/dist/components/internal/Attribution.mjs.map +1 -1
  39. package/dist/components/internal/Avatar.js +26 -20
  40. package/dist/components/internal/Avatar.js.map +1 -1
  41. package/dist/components/internal/Avatar.mjs +22 -16
  42. package/dist/components/internal/Avatar.mjs.map +1 -1
  43. package/dist/components/internal/Button.js +4 -4
  44. package/dist/components/internal/Button.js.map +1 -1
  45. package/dist/components/internal/Button.mjs +3 -3
  46. package/dist/components/internal/Button.mjs.map +1 -1
  47. package/dist/components/internal/Dropdown.js +26 -19
  48. package/dist/components/internal/Dropdown.js.map +1 -1
  49. package/dist/components/internal/Dropdown.mjs +25 -18
  50. package/dist/components/internal/Dropdown.mjs.map +1 -1
  51. package/dist/components/internal/Emoji.js +4 -3
  52. package/dist/components/internal/Emoji.js.map +1 -1
  53. package/dist/components/internal/Emoji.mjs +3 -2
  54. package/dist/components/internal/Emoji.mjs.map +1 -1
  55. package/dist/components/internal/EmojiPicker.js +96 -72
  56. package/dist/components/internal/EmojiPicker.js.map +1 -1
  57. package/dist/components/internal/EmojiPicker.mjs +90 -66
  58. package/dist/components/internal/EmojiPicker.mjs.map +1 -1
  59. package/dist/components/internal/Icon.js +5 -4
  60. package/dist/components/internal/Icon.js.map +1 -1
  61. package/dist/components/internal/Icon.mjs +5 -4
  62. package/dist/components/internal/Icon.mjs.map +1 -1
  63. package/dist/components/internal/InboxNotificationThread.js +53 -38
  64. package/dist/components/internal/InboxNotificationThread.js.map +1 -1
  65. package/dist/components/internal/InboxNotificationThread.mjs +53 -38
  66. package/dist/components/internal/InboxNotificationThread.mjs.map +1 -1
  67. package/dist/components/internal/List.js +8 -6
  68. package/dist/components/internal/List.js.map +1 -1
  69. package/dist/components/internal/List.mjs +6 -4
  70. package/dist/components/internal/List.mjs.map +1 -1
  71. package/dist/components/internal/Room.js +7 -6
  72. package/dist/components/internal/Room.js.map +1 -1
  73. package/dist/components/internal/Room.mjs +6 -5
  74. package/dist/components/internal/Room.mjs.map +1 -1
  75. package/dist/components/internal/Tooltip.js +48 -33
  76. package/dist/components/internal/Tooltip.js.map +1 -1
  77. package/dist/components/internal/Tooltip.mjs +45 -30
  78. package/dist/components/internal/Tooltip.mjs.map +1 -1
  79. package/dist/components/internal/User.js +7 -6
  80. package/dist/components/internal/User.js.map +1 -1
  81. package/dist/components/internal/User.mjs +6 -5
  82. package/dist/components/internal/User.mjs.map +1 -1
  83. package/dist/components.js +11 -29
  84. package/dist/components.js.map +1 -1
  85. package/dist/components.mjs +5 -5
  86. package/dist/components.mjs.map +1 -1
  87. package/dist/config.js +15 -12
  88. package/dist/config.js.map +1 -1
  89. package/dist/config.mjs +12 -9
  90. package/dist/config.mjs.map +1 -1
  91. package/dist/icons/ArrowDown.js +7 -6
  92. package/dist/icons/ArrowDown.js.map +1 -1
  93. package/dist/icons/ArrowDown.mjs +7 -6
  94. package/dist/icons/ArrowDown.mjs.map +1 -1
  95. package/dist/icons/ArrowUp.js +7 -6
  96. package/dist/icons/ArrowUp.js.map +1 -1
  97. package/dist/icons/ArrowUp.mjs +7 -6
  98. package/dist/icons/ArrowUp.mjs.map +1 -1
  99. package/dist/icons/Attachment.js +7 -6
  100. package/dist/icons/Attachment.js.map +1 -1
  101. package/dist/icons/Attachment.mjs +7 -6
  102. package/dist/icons/Attachment.mjs.map +1 -1
  103. package/dist/icons/Bold.js +7 -6
  104. package/dist/icons/Bold.js.map +1 -1
  105. package/dist/icons/Bold.mjs +7 -6
  106. package/dist/icons/Bold.mjs.map +1 -1
  107. package/dist/icons/Check.js +7 -6
  108. package/dist/icons/Check.js.map +1 -1
  109. package/dist/icons/Check.mjs +7 -6
  110. package/dist/icons/Check.mjs.map +1 -1
  111. package/dist/icons/Code.js +7 -6
  112. package/dist/icons/Code.js.map +1 -1
  113. package/dist/icons/Code.mjs +7 -6
  114. package/dist/icons/Code.mjs.map +1 -1
  115. package/dist/icons/Cross.js +12 -8
  116. package/dist/icons/Cross.js.map +1 -1
  117. package/dist/icons/Cross.mjs +12 -8
  118. package/dist/icons/Cross.mjs.map +1 -1
  119. package/dist/icons/Delete.js +7 -6
  120. package/dist/icons/Delete.js.map +1 -1
  121. package/dist/icons/Delete.mjs +7 -6
  122. package/dist/icons/Delete.mjs.map +1 -1
  123. package/dist/icons/Edit.js +7 -6
  124. package/dist/icons/Edit.js.map +1 -1
  125. package/dist/icons/Edit.mjs +7 -6
  126. package/dist/icons/Edit.mjs.map +1 -1
  127. package/dist/icons/Ellipsis.js +21 -16
  128. package/dist/icons/Ellipsis.js.map +1 -1
  129. package/dist/icons/Ellipsis.mjs +21 -16
  130. package/dist/icons/Ellipsis.mjs.map +1 -1
  131. package/dist/icons/Emoji.js +25 -18
  132. package/dist/icons/Emoji.js.map +1 -1
  133. package/dist/icons/Emoji.mjs +25 -18
  134. package/dist/icons/Emoji.mjs.map +1 -1
  135. package/dist/icons/EmojiAdd.js +28 -20
  136. package/dist/icons/EmojiAdd.js.map +1 -1
  137. package/dist/icons/EmojiAdd.mjs +28 -20
  138. package/dist/icons/EmojiAdd.mjs.map +1 -1
  139. package/dist/icons/Italic.js +7 -6
  140. package/dist/icons/Italic.js.map +1 -1
  141. package/dist/icons/Italic.mjs +7 -6
  142. package/dist/icons/Italic.mjs.map +1 -1
  143. package/dist/icons/Mention.js +12 -8
  144. package/dist/icons/Mention.js.map +1 -1
  145. package/dist/icons/Mention.mjs +12 -8
  146. package/dist/icons/Mention.mjs.map +1 -1
  147. package/dist/icons/Resolve.js +14 -10
  148. package/dist/icons/Resolve.js.map +1 -1
  149. package/dist/icons/Resolve.mjs +14 -10
  150. package/dist/icons/Resolve.mjs.map +1 -1
  151. package/dist/icons/Resolved.js +16 -12
  152. package/dist/icons/Resolved.js.map +1 -1
  153. package/dist/icons/Resolved.mjs +16 -12
  154. package/dist/icons/Resolved.mjs.map +1 -1
  155. package/dist/icons/Restore.js +12 -8
  156. package/dist/icons/Restore.js.map +1 -1
  157. package/dist/icons/Restore.mjs +12 -8
  158. package/dist/icons/Restore.mjs.map +1 -1
  159. package/dist/icons/Search.js +7 -6
  160. package/dist/icons/Search.js.map +1 -1
  161. package/dist/icons/Search.mjs +7 -6
  162. package/dist/icons/Search.mjs.map +1 -1
  163. package/dist/icons/Send.js +7 -6
  164. package/dist/icons/Send.js.map +1 -1
  165. package/dist/icons/Send.mjs +7 -6
  166. package/dist/icons/Send.mjs.map +1 -1
  167. package/dist/icons/Spinner.js +8 -7
  168. package/dist/icons/Spinner.js.map +1 -1
  169. package/dist/icons/Spinner.mjs +8 -7
  170. package/dist/icons/Spinner.mjs.map +1 -1
  171. package/dist/icons/Strikethrough.js +7 -6
  172. package/dist/icons/Strikethrough.js.map +1 -1
  173. package/dist/icons/Strikethrough.mjs +7 -6
  174. package/dist/icons/Strikethrough.mjs.map +1 -1
  175. package/dist/icons/Warning.js +14 -10
  176. package/dist/icons/Warning.js.map +1 -1
  177. package/dist/icons/Warning.mjs +14 -10
  178. package/dist/icons/Warning.mjs.map +1 -1
  179. package/dist/index.d.mts +14 -12
  180. package/dist/index.d.ts +14 -12
  181. package/dist/overrides.js +64 -36
  182. package/dist/overrides.js.map +1 -1
  183. package/dist/overrides.mjs +58 -12
  184. package/dist/overrides.mjs.map +1 -1
  185. package/dist/primitives/Comment/index.js +75 -66
  186. package/dist/primitives/Comment/index.js.map +1 -1
  187. package/dist/primitives/Comment/index.mjs +71 -62
  188. package/dist/primitives/Comment/index.mjs.map +1 -1
  189. package/dist/primitives/Composer/contexts.js +11 -11
  190. package/dist/primitives/Composer/index.js +327 -270
  191. package/dist/primitives/Composer/index.js.map +1 -1
  192. package/dist/primitives/Composer/index.mjs +250 -193
  193. package/dist/primitives/Composer/index.mjs.map +1 -1
  194. package/dist/primitives/Composer/utils.js +18 -20
  195. package/dist/primitives/Composer/utils.js.map +1 -1
  196. package/dist/primitives/Composer/utils.mjs +1 -3
  197. package/dist/primitives/Composer/utils.mjs.map +1 -1
  198. package/dist/primitives/EmojiPicker/contexts.js +3 -3
  199. package/dist/primitives/EmojiPicker/index.js +159 -142
  200. package/dist/primitives/EmojiPicker/index.js.map +1 -1
  201. package/dist/primitives/EmojiPicker/index.mjs +120 -103
  202. package/dist/primitives/EmojiPicker/index.mjs.map +1 -1
  203. package/dist/primitives/FileSize.js +8 -7
  204. package/dist/primitives/FileSize.js.map +1 -1
  205. package/dist/primitives/FileSize.mjs +6 -5
  206. package/dist/primitives/FileSize.mjs.map +1 -1
  207. package/dist/primitives/Timestamp.js +11 -10
  208. package/dist/primitives/Timestamp.js.map +1 -1
  209. package/dist/primitives/Timestamp.mjs +6 -5
  210. package/dist/primitives/Timestamp.mjs.map +1 -1
  211. package/dist/primitives/index.d.mts +24 -23
  212. package/dist/primitives/index.d.ts +24 -23
  213. package/dist/primitives/internal/Emoji.js +7 -5
  214. package/dist/primitives/internal/Emoji.js.map +1 -1
  215. package/dist/primitives/internal/Emoji.mjs +6 -4
  216. package/dist/primitives/internal/Emoji.mjs.map +1 -1
  217. package/dist/shared.js +2 -7
  218. package/dist/shared.js.map +1 -1
  219. package/dist/shared.mjs +2 -7
  220. package/dist/shared.mjs.map +1 -1
  221. package/dist/utils/Persist.js +18 -18
  222. package/dist/utils/Persist.js.map +1 -1
  223. package/dist/utils/Persist.mjs +6 -6
  224. package/dist/utils/Persist.mjs.map +1 -1
  225. package/dist/utils/Portal.js +4 -4
  226. package/dist/utils/Portal.js.map +1 -1
  227. package/dist/utils/Portal.mjs +3 -3
  228. package/dist/utils/Portal.mjs.map +1 -1
  229. package/dist/utils/use-controllable-state.js +5 -5
  230. package/dist/utils/use-index.js +7 -7
  231. package/dist/utils/use-initial.js +2 -2
  232. package/dist/utils/use-interval.js +4 -4
  233. package/dist/utils/use-latest.js +3 -3
  234. package/dist/utils/use-observable.js +2 -2
  235. package/dist/utils/use-refs.js +2 -2
  236. package/dist/utils/use-rerender.js +2 -2
  237. package/dist/utils/use-visible.js +2 -2
  238. package/dist/utils/use-window-focus.js +2 -2
  239. package/dist/utils/use-window-focus.js.map +1 -1
  240. package/dist/utils/use-window-focus.mjs +1 -1
  241. package/dist/utils/use-window-focus.mjs.map +1 -1
  242. package/dist/version.js +1 -1
  243. package/dist/version.js.map +1 -1
  244. package/dist/version.mjs +1 -1
  245. package/dist/version.mjs.map +1 -1
  246. package/package.json +6 -8
  247. package/dist/utils/use-id.js +0 -29
  248. package/dist/utils/use-id.js.map +0 -1
  249. package/dist/utils/use-id.mjs +0 -27
  250. package/dist/utils/use-id.mjs.map +0 -1
  251. package/dist/utils/use-layout-effect.js +0 -8
  252. package/dist/utils/use-layout-effect.js.map +0 -1
  253. package/dist/utils/use-layout-effect.mjs +0 -6
  254. package/dist/utils/use-layout-effect.mjs.map +0 -1
  255. package/dist/utils/use-transition.js +0 -16
  256. package/dist/utils/use-transition.js.map +0 -1
  257. package/dist/utils/use-transition.mjs +0 -14
  258. package/dist/utils/use-transition.mjs.map +0 -1
@@ -1,10 +1,9 @@
1
- 'use client';
2
1
  'use strict';
3
2
 
3
+ var jsxRuntime = require('react/jsx-runtime');
4
4
  var core = require('@liveblocks/core');
5
5
  var _private = require('@liveblocks/react/_private');
6
- var React = require('react');
7
- var index_js = require('use-sync-external-store/shim/index.js');
6
+ var react = require('react');
8
7
  var config = require('../config.js');
9
8
  var constants = require('../constants.js');
10
9
  var Attachment = require('../icons/Attachment.js');
@@ -22,7 +21,6 @@ var utils = require('../primitives/Composer/utils.js');
22
21
  var mentions = require('../slate/plugins/mentions.js');
23
22
  var classNames = require('../utils/class-names.js');
24
23
  var useControllableState = require('../utils/use-controllable-state.js');
25
- var useLayoutEffect = require('../utils/use-layout-effect.js');
26
24
  var Attachment$1 = require('./internal/Attachment.js');
27
25
  var Attribution = require('./internal/Attribution.js');
28
26
  var Avatar = require('./internal/Avatar.js');
@@ -41,10 +39,10 @@ function ComposerInsertMentionEditorAction({
41
39
  ...props
42
40
  }) {
43
41
  const { createMention } = contexts.useComposer();
44
- const preventDefault = React.useCallback((event) => {
42
+ const preventDefault = react.useCallback((event) => {
45
43
  event.preventDefault();
46
44
  }, []);
47
- const handleClick = React.useCallback(
45
+ const handleClick = react.useCallback(
48
46
  (event) => {
49
47
  onClick?.(event);
50
48
  if (!event.isDefaultPrevented()) {
@@ -54,17 +52,19 @@ function ComposerInsertMentionEditorAction({
54
52
  },
55
53
  [createMention, onClick]
56
54
  );
57
- return /* @__PURE__ */ React.createElement(Tooltip.Tooltip, {
58
- content: tooltipLabel ?? label
59
- }, /* @__PURE__ */ React.createElement(Button.Button, {
60
- className: classNames.classNames("lb-composer-editor-action", className),
61
- onPointerDown: preventDefault,
62
- onClick: handleClick,
63
- "aria-label": label,
64
- ...props
65
- }, /* @__PURE__ */ React.createElement(Mention.MentionIcon, {
66
- className: "lb-button-icon"
67
- })));
55
+ return /* @__PURE__ */ jsxRuntime.jsx(Tooltip.Tooltip, {
56
+ content: tooltipLabel ?? label,
57
+ children: /* @__PURE__ */ jsxRuntime.jsx(Button.Button, {
58
+ className: classNames.classNames("lb-composer-editor-action", className),
59
+ onPointerDown: preventDefault,
60
+ onClick: handleClick,
61
+ "aria-label": label,
62
+ ...props,
63
+ children: /* @__PURE__ */ jsxRuntime.jsx(Mention.MentionIcon, {
64
+ className: "lb-button-icon"
65
+ })
66
+ })
67
+ });
68
68
  }
69
69
  function ComposerInsertEmojiEditorAction({
70
70
  label,
@@ -74,28 +74,32 @@ function ComposerInsertEmojiEditorAction({
74
74
  ...props
75
75
  }) {
76
76
  const { insertText } = contexts.useComposer();
77
- const preventDefault = React.useCallback((event) => {
77
+ const preventDefault = react.useCallback((event) => {
78
78
  event.preventDefault();
79
79
  }, []);
80
- const stopPropagation = React.useCallback((event) => {
80
+ const stopPropagation = react.useCallback((event) => {
81
81
  event.stopPropagation();
82
82
  }, []);
83
- return /* @__PURE__ */ React.createElement(EmojiPicker.EmojiPicker, {
83
+ return /* @__PURE__ */ jsxRuntime.jsx(EmojiPicker.EmojiPicker, {
84
84
  onEmojiSelect: insertText,
85
- onOpenChange: onPickerOpenChange
86
- }, /* @__PURE__ */ React.createElement(Tooltip.Tooltip, {
87
- content: tooltipLabel ?? label
88
- }, /* @__PURE__ */ React.createElement(PopoverPrimitive.PopoverTrigger, {
89
- asChild: true
90
- }, /* @__PURE__ */ React.createElement(Button.Button, {
91
- className: classNames.classNames("lb-composer-editor-action", className),
92
- onPointerDown: preventDefault,
93
- onClick: stopPropagation,
94
- "aria-label": label,
95
- ...props
96
- }, /* @__PURE__ */ React.createElement(Emoji.EmojiIcon, {
97
- className: "lb-button-icon"
98
- })))));
85
+ onOpenChange: onPickerOpenChange,
86
+ children: /* @__PURE__ */ jsxRuntime.jsx(Tooltip.Tooltip, {
87
+ content: tooltipLabel ?? label,
88
+ children: /* @__PURE__ */ jsxRuntime.jsx(PopoverPrimitive.PopoverTrigger, {
89
+ asChild: true,
90
+ children: /* @__PURE__ */ jsxRuntime.jsx(Button.Button, {
91
+ className: classNames.classNames("lb-composer-editor-action", className),
92
+ onPointerDown: preventDefault,
93
+ onClick: stopPropagation,
94
+ "aria-label": label,
95
+ ...props,
96
+ children: /* @__PURE__ */ jsxRuntime.jsx(Emoji.EmojiIcon, {
97
+ className: "lb-button-icon"
98
+ })
99
+ })
100
+ })
101
+ })
102
+ });
99
103
  }
100
104
  function ComposerAttachFilesEditorAction({
101
105
  label,
@@ -103,111 +107,159 @@ function ComposerAttachFilesEditorAction({
103
107
  className,
104
108
  ...props
105
109
  }) {
106
- const preventDefault = React.useCallback((event) => {
110
+ const preventDefault = react.useCallback((event) => {
107
111
  event.preventDefault();
108
112
  }, []);
109
- const stopPropagation = React.useCallback((event) => {
113
+ const stopPropagation = react.useCallback((event) => {
110
114
  event.stopPropagation();
111
115
  }, []);
112
- return /* @__PURE__ */ React.createElement(Tooltip.Tooltip, {
113
- content: tooltipLabel ?? label
114
- }, /* @__PURE__ */ React.createElement(index.AttachFiles, {
115
- asChild: true
116
- }, /* @__PURE__ */ React.createElement(Button.Button, {
117
- className: classNames.classNames("lb-composer-editor-action", className),
118
- onPointerDown: preventDefault,
119
- onClick: stopPropagation,
120
- "aria-label": label,
121
- ...props
122
- }, /* @__PURE__ */ React.createElement(Attachment.AttachmentIcon, {
123
- className: "lb-button-icon"
124
- }))));
116
+ return /* @__PURE__ */ jsxRuntime.jsx(Tooltip.Tooltip, {
117
+ content: tooltipLabel ?? label,
118
+ children: /* @__PURE__ */ jsxRuntime.jsx(index.AttachFiles, {
119
+ asChild: true,
120
+ children: /* @__PURE__ */ jsxRuntime.jsx(Button.Button, {
121
+ className: classNames.classNames("lb-composer-editor-action", className),
122
+ onPointerDown: preventDefault,
123
+ onClick: stopPropagation,
124
+ "aria-label": label,
125
+ ...props,
126
+ children: /* @__PURE__ */ jsxRuntime.jsx(Attachment.AttachmentIcon, {
127
+ className: "lb-button-icon"
128
+ })
129
+ })
130
+ })
131
+ });
125
132
  }
126
133
  function ComposerMention({ userId }) {
127
- return /* @__PURE__ */ React.createElement(index.Mention, {
128
- className: "lb-composer-mention"
129
- }, mentions.MENTION_CHARACTER, /* @__PURE__ */ React.createElement(User.User, {
130
- userId
131
- }));
134
+ return /* @__PURE__ */ jsxRuntime.jsxs(index.Mention, {
135
+ className: "lb-composer-mention",
136
+ children: [
137
+ mentions.MENTION_CHARACTER,
138
+ /* @__PURE__ */ jsxRuntime.jsx(User.User, {
139
+ userId
140
+ })
141
+ ]
142
+ });
132
143
  }
133
144
  function ComposerMentionSuggestions({
134
145
  userIds
135
146
  }) {
136
- return userIds.length > 0 ? /* @__PURE__ */ React.createElement(index.Suggestions, {
137
- className: "lb-root lb-portal lb-elevation lb-composer-suggestions lb-composer-mention-suggestions"
138
- }, /* @__PURE__ */ React.createElement(index.SuggestionsList, {
139
- className: "lb-composer-suggestions-list lb-composer-mention-suggestions-list"
140
- }, userIds.map((userId) => /* @__PURE__ */ React.createElement(index.SuggestionsListItem, {
141
- key: userId,
142
- className: "lb-composer-suggestions-list-item lb-composer-mention-suggestion",
143
- value: userId
144
- }, /* @__PURE__ */ React.createElement(Avatar.Avatar, {
145
- userId,
146
- className: "lb-composer-mention-suggestion-avatar"
147
- }), /* @__PURE__ */ React.createElement(User.User, {
148
- userId,
149
- className: "lb-composer-mention-suggestion-user"
150
- }))))) : null;
147
+ return userIds.length > 0 ? /* @__PURE__ */ jsxRuntime.jsx(index.Suggestions, {
148
+ className: "lb-root lb-portal lb-elevation lb-composer-suggestions lb-composer-mention-suggestions",
149
+ children: /* @__PURE__ */ jsxRuntime.jsx(index.SuggestionsList, {
150
+ className: "lb-composer-suggestions-list lb-composer-mention-suggestions-list",
151
+ children: userIds.map((userId) => /* @__PURE__ */ jsxRuntime.jsxs(index.SuggestionsListItem, {
152
+ className: "lb-composer-suggestions-list-item lb-composer-mention-suggestion",
153
+ value: userId,
154
+ children: [
155
+ /* @__PURE__ */ jsxRuntime.jsx(Avatar.Avatar, {
156
+ userId,
157
+ className: "lb-composer-mention-suggestion-avatar"
158
+ }),
159
+ /* @__PURE__ */ jsxRuntime.jsx(User.User, {
160
+ userId,
161
+ className: "lb-composer-mention-suggestion-user"
162
+ })
163
+ ]
164
+ }, userId))
165
+ })
166
+ }) : null;
151
167
  }
152
168
  function MarkToggle({ mark, shortcut, children, ...props }) {
153
169
  const $ = overrides.useOverrides();
154
- const label = React.useMemo(() => {
170
+ const label = react.useMemo(() => {
155
171
  return $.COMPOSER_TOGGLE_MARK(mark);
156
172
  }, [$, mark]);
157
- return /* @__PURE__ */ React.createElement(Tooltip.ShortcutTooltip, {
173
+ return /* @__PURE__ */ jsxRuntime.jsx(Tooltip.ShortcutTooltip, {
158
174
  content: label,
159
175
  shortcut,
160
- sideOffset: constants.FLOATING_ELEMENT_SIDE_OFFSET + 2
161
- }, /* @__PURE__ */ React.createElement(index.MarkToggle, {
162
- mark,
163
- asChild: true,
164
- ...props
165
- }, /* @__PURE__ */ React.createElement(Button.Button, {
166
- "aria-label": label,
167
- variant: "toggle"
168
- }, children)));
176
+ sideOffset: constants.FLOATING_ELEMENT_SIDE_OFFSET + 2,
177
+ children: /* @__PURE__ */ jsxRuntime.jsx(index.MarkToggle, {
178
+ mark,
179
+ asChild: true,
180
+ ...props,
181
+ children: /* @__PURE__ */ jsxRuntime.jsx(Button.Button, {
182
+ "aria-label": label,
183
+ variant: "toggle",
184
+ children
185
+ })
186
+ })
187
+ });
169
188
  }
170
189
  const markToggles = {
171
- bold: () => /* @__PURE__ */ React.createElement(MarkToggle, {
190
+ bold: () => /* @__PURE__ */ jsxRuntime.jsx(MarkToggle, {
172
191
  mark: "bold",
173
- shortcut: /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(Tooltip.ShortcutTooltipKey, {
174
- name: "mod"
175
- }), /* @__PURE__ */ React.createElement("span", null, "B"))
176
- }, /* @__PURE__ */ React.createElement(Bold.BoldIcon, null)),
177
- italic: () => /* @__PURE__ */ React.createElement(MarkToggle, {
192
+ shortcut: /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, {
193
+ children: [
194
+ /* @__PURE__ */ jsxRuntime.jsx(Tooltip.ShortcutTooltipKey, {
195
+ name: "mod"
196
+ }),
197
+ /* @__PURE__ */ jsxRuntime.jsx("span", {
198
+ children: "B"
199
+ })
200
+ ]
201
+ }),
202
+ children: /* @__PURE__ */ jsxRuntime.jsx(Bold.BoldIcon, {})
203
+ }),
204
+ italic: () => /* @__PURE__ */ jsxRuntime.jsx(MarkToggle, {
178
205
  mark: "italic",
179
- shortcut: /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(Tooltip.ShortcutTooltipKey, {
180
- name: "mod"
181
- }), /* @__PURE__ */ React.createElement("span", null, "I"))
182
- }, /* @__PURE__ */ React.createElement(Italic.ItalicIcon, null)),
183
- strikethrough: () => /* @__PURE__ */ React.createElement(MarkToggle, {
206
+ shortcut: /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, {
207
+ children: [
208
+ /* @__PURE__ */ jsxRuntime.jsx(Tooltip.ShortcutTooltipKey, {
209
+ name: "mod"
210
+ }),
211
+ /* @__PURE__ */ jsxRuntime.jsx("span", {
212
+ children: "I"
213
+ })
214
+ ]
215
+ }),
216
+ children: /* @__PURE__ */ jsxRuntime.jsx(Italic.ItalicIcon, {})
217
+ }),
218
+ strikethrough: () => /* @__PURE__ */ jsxRuntime.jsx(MarkToggle, {
184
219
  mark: "strikethrough",
185
- shortcut: /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(Tooltip.ShortcutTooltipKey, {
186
- name: "mod"
187
- }), /* @__PURE__ */ React.createElement(Tooltip.ShortcutTooltipKey, {
188
- name: "shift"
189
- }), /* @__PURE__ */ React.createElement("span", null, "S"))
190
- }, /* @__PURE__ */ React.createElement(Strikethrough.StrikethroughIcon, null)),
191
- code: () => /* @__PURE__ */ React.createElement(MarkToggle, {
220
+ shortcut: /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, {
221
+ children: [
222
+ /* @__PURE__ */ jsxRuntime.jsx(Tooltip.ShortcutTooltipKey, {
223
+ name: "mod"
224
+ }),
225
+ /* @__PURE__ */ jsxRuntime.jsx(Tooltip.ShortcutTooltipKey, {
226
+ name: "shift"
227
+ }),
228
+ /* @__PURE__ */ jsxRuntime.jsx("span", {
229
+ children: "S"
230
+ })
231
+ ]
232
+ }),
233
+ children: /* @__PURE__ */ jsxRuntime.jsx(Strikethrough.StrikethroughIcon, {})
234
+ }),
235
+ code: () => /* @__PURE__ */ jsxRuntime.jsx(MarkToggle, {
192
236
  mark: "code",
193
- shortcut: /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(Tooltip.ShortcutTooltipKey, {
194
- name: "mod"
195
- }), /* @__PURE__ */ React.createElement("span", null, "E"))
196
- }, /* @__PURE__ */ React.createElement(Code.CodeIcon, null))
237
+ shortcut: /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, {
238
+ children: [
239
+ /* @__PURE__ */ jsxRuntime.jsx(Tooltip.ShortcutTooltipKey, {
240
+ name: "mod"
241
+ }),
242
+ /* @__PURE__ */ jsxRuntime.jsx("span", {
243
+ children: "E"
244
+ })
245
+ ]
246
+ }),
247
+ children: /* @__PURE__ */ jsxRuntime.jsx(Code.CodeIcon, {})
248
+ })
197
249
  };
198
- const markTogglesList = Object.entries(markToggles).map(([mark, Toggle]) => /* @__PURE__ */ React.createElement(Toggle, {
199
- key: mark
200
- }));
250
+ const markTogglesList = Object.entries(markToggles).map(([mark, Toggle]) => /* @__PURE__ */ jsxRuntime.jsx(Toggle, {}, mark));
201
251
  function ComposerFloatingToolbar() {
202
- return /* @__PURE__ */ React.createElement(index.FloatingToolbar, {
203
- className: "lb-root lb-portal lb-elevation lb-composer-floating-toolbar"
204
- }, markTogglesList);
252
+ return /* @__PURE__ */ jsxRuntime.jsx(index.FloatingToolbar, {
253
+ className: "lb-root lb-portal lb-elevation lb-composer-floating-toolbar",
254
+ children: markTogglesList
255
+ });
205
256
  }
206
257
  function ComposerLink({ href, children }) {
207
- return /* @__PURE__ */ React.createElement(index.Link, {
258
+ return /* @__PURE__ */ jsxRuntime.jsx(index.Link, {
208
259
  href,
209
- className: "lb-composer-link"
210
- }, children);
260
+ className: "lb-composer-link",
261
+ children
262
+ });
211
263
  }
212
264
  function ComposerFileAttachment({
213
265
  attachment,
@@ -217,10 +269,10 @@ function ComposerFileAttachment({
217
269
  }) {
218
270
  const { removeAttachment } = contexts.useComposer();
219
271
  const { roomId } = contexts.useComposerEditorContext();
220
- const handleDeleteClick = React.useCallback(() => {
272
+ const handleDeleteClick = react.useCallback(() => {
221
273
  removeAttachment(attachment.id);
222
274
  }, [attachment.id, removeAttachment]);
223
- return /* @__PURE__ */ React.createElement(Attachment$1.FileAttachment, {
275
+ return /* @__PURE__ */ jsxRuntime.jsx(Attachment$1.FileAttachment, {
224
276
  className: classNames.classNames("lb-composer-attachment", className),
225
277
  ...props,
226
278
  attachment,
@@ -239,18 +291,19 @@ function ComposerAttachments({
239
291
  if (attachments.length === 0) {
240
292
  return null;
241
293
  }
242
- return /* @__PURE__ */ React.createElement("div", {
294
+ return /* @__PURE__ */ jsxRuntime.jsx("div", {
243
295
  className: classNames.classNames("lb-composer-attachments", className),
244
- ...props
245
- }, /* @__PURE__ */ React.createElement("div", {
246
- className: "lb-attachments"
247
- }, attachments.map((attachment) => {
248
- return /* @__PURE__ */ React.createElement(ComposerFileAttachment, {
249
- key: attachment.id,
250
- attachment,
251
- overrides
252
- });
253
- })));
296
+ ...props,
297
+ children: /* @__PURE__ */ jsxRuntime.jsx("div", {
298
+ className: "lb-attachments",
299
+ children: attachments.map((attachment) => {
300
+ return /* @__PURE__ */ jsxRuntime.jsx(ComposerFileAttachment, {
301
+ attachment,
302
+ overrides
303
+ }, attachment.id);
304
+ })
305
+ })
306
+ });
254
307
  }
255
308
  const editorRequiredComponents = {
256
309
  Mention: ComposerMention,
@@ -275,7 +328,7 @@ function ComposerEditorContainer({
275
328
  const { isEmpty } = contexts.useComposer();
276
329
  const { hasMaxAttachments } = contexts.useComposerAttachmentsContext();
277
330
  const $ = overrides.useOverrides(overrides$1);
278
- const components = React.useMemo(() => {
331
+ const components = react.useMemo(() => {
279
332
  return {
280
333
  ...editorRequiredComponents,
281
334
  FloatingToolbar: showFormattingControls ? ComposerFloatingToolbar : void 0
@@ -284,66 +337,93 @@ function ComposerEditorContainer({
284
337
  const [isDraggingOver, dropAreaProps] = utils.useComposerAttachmentsDropArea({
285
338
  disabled: disabled || hasMaxAttachments
286
339
  });
287
- useLayoutEffect.useLayoutEffect(() => {
340
+ react.useLayoutEffect(() => {
288
341
  onEmptyChange(isEmpty);
289
342
  }, [isEmpty, onEmptyChange]);
290
- const preventDefault = React.useCallback((event) => {
343
+ const preventDefault = react.useCallback((event) => {
291
344
  event.preventDefault();
292
345
  }, []);
293
- const stopPropagation = React.useCallback((event) => {
346
+ const stopPropagation = react.useCallback((event) => {
294
347
  event.stopPropagation();
295
348
  }, []);
296
- return /* @__PURE__ */ React.createElement("div", {
349
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", {
297
350
  className: "lb-composer-editor-container",
298
- ...dropAreaProps
299
- }, /* @__PURE__ */ React.createElement(index.Editor, {
300
- className: "lb-composer-editor",
301
- onClick: onEditorClick,
302
- placeholder: $.COMPOSER_PLACEHOLDER,
303
- defaultValue,
304
- autoFocus,
305
- components,
306
- disabled,
307
- dir: $.dir
308
- }), showAttachments && /* @__PURE__ */ React.createElement(ComposerAttachments, {
309
- overrides: overrides$1
310
- }), (!isCollapsed || isDraggingOver) && /* @__PURE__ */ React.createElement("div", {
311
- className: "lb-composer-footer"
312
- }, /* @__PURE__ */ React.createElement("div", {
313
- className: "lb-composer-editor-actions"
314
- }, hasResolveMentionSuggestions && /* @__PURE__ */ React.createElement(ComposerInsertMentionEditorAction, {
315
- label: $.COMPOSER_INSERT_MENTION,
316
- disabled
317
- }), /* @__PURE__ */ React.createElement(ComposerInsertEmojiEditorAction, {
318
- label: $.COMPOSER_INSERT_EMOJI,
319
- onPickerOpenChange: onEmojiPickerOpenChange,
320
- disabled
321
- }), showAttachments && /* @__PURE__ */ React.createElement(ComposerAttachFilesEditorAction, {
322
- label: $.COMPOSER_ATTACH_FILES,
323
- disabled
324
- })), showAttribution && /* @__PURE__ */ React.createElement(Attribution.Attribution, null), /* @__PURE__ */ React.createElement("div", {
325
- className: "lb-composer-actions"
326
- }, actions ?? /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(Tooltip.ShortcutTooltip, {
327
- content: $.COMPOSER_SEND,
328
- shortcut: /* @__PURE__ */ React.createElement(Tooltip.ShortcutTooltipKey, {
329
- name: "enter"
330
- })
331
- }, /* @__PURE__ */ React.createElement(index.Submit, {
332
- asChild: true
333
- }, /* @__PURE__ */ React.createElement(Button.Button, {
334
- onPointerDown: preventDefault,
335
- onClick: stopPropagation,
336
- className: "lb-composer-action",
337
- variant: "primary",
338
- "aria-label": $.COMPOSER_SEND
339
- }, /* @__PURE__ */ React.createElement(Send.SendIcon, null))))))), showAttachments && isDraggingOver && /* @__PURE__ */ React.createElement("div", {
340
- className: "lb-composer-attachments-drop-area"
341
- }, /* @__PURE__ */ React.createElement("div", {
342
- className: "lb-composer-attachments-drop-area-label"
343
- }, /* @__PURE__ */ React.createElement(Attachment.AttachmentIcon, null), $.COMPOSER_ATTACH_FILES)));
351
+ ...dropAreaProps,
352
+ children: [
353
+ /* @__PURE__ */ jsxRuntime.jsx(index.Editor, {
354
+ className: "lb-composer-editor",
355
+ onClick: onEditorClick,
356
+ placeholder: $.COMPOSER_PLACEHOLDER,
357
+ defaultValue,
358
+ autoFocus,
359
+ components,
360
+ disabled,
361
+ dir: $.dir
362
+ }),
363
+ showAttachments && /* @__PURE__ */ jsxRuntime.jsx(ComposerAttachments, {
364
+ overrides: overrides$1
365
+ }),
366
+ (!isCollapsed || isDraggingOver) && /* @__PURE__ */ jsxRuntime.jsxs("div", {
367
+ className: "lb-composer-footer",
368
+ children: [
369
+ /* @__PURE__ */ jsxRuntime.jsxs("div", {
370
+ className: "lb-composer-editor-actions",
371
+ children: [
372
+ hasResolveMentionSuggestions && /* @__PURE__ */ jsxRuntime.jsx(ComposerInsertMentionEditorAction, {
373
+ label: $.COMPOSER_INSERT_MENTION,
374
+ disabled
375
+ }),
376
+ /* @__PURE__ */ jsxRuntime.jsx(ComposerInsertEmojiEditorAction, {
377
+ label: $.COMPOSER_INSERT_EMOJI,
378
+ onPickerOpenChange: onEmojiPickerOpenChange,
379
+ disabled
380
+ }),
381
+ showAttachments && /* @__PURE__ */ jsxRuntime.jsx(ComposerAttachFilesEditorAction, {
382
+ label: $.COMPOSER_ATTACH_FILES,
383
+ disabled
384
+ })
385
+ ]
386
+ }),
387
+ showAttribution && /* @__PURE__ */ jsxRuntime.jsx(Attribution.Attribution, {}),
388
+ /* @__PURE__ */ jsxRuntime.jsx("div", {
389
+ className: "lb-composer-actions",
390
+ children: actions ?? /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, {
391
+ children: /* @__PURE__ */ jsxRuntime.jsx(Tooltip.ShortcutTooltip, {
392
+ content: $.COMPOSER_SEND,
393
+ shortcut: /* @__PURE__ */ jsxRuntime.jsx(Tooltip.ShortcutTooltipKey, {
394
+ name: "enter"
395
+ }),
396
+ children: /* @__PURE__ */ jsxRuntime.jsx(index.Submit, {
397
+ asChild: true,
398
+ children: /* @__PURE__ */ jsxRuntime.jsx(Button.Button, {
399
+ onPointerDown: preventDefault,
400
+ onClick: stopPropagation,
401
+ className: "lb-composer-action",
402
+ variant: "primary",
403
+ "aria-label": $.COMPOSER_SEND,
404
+ children: /* @__PURE__ */ jsxRuntime.jsx(Send.SendIcon, {})
405
+ })
406
+ })
407
+ })
408
+ })
409
+ })
410
+ ]
411
+ }),
412
+ showAttachments && isDraggingOver && /* @__PURE__ */ jsxRuntime.jsx("div", {
413
+ className: "lb-composer-attachments-drop-area",
414
+ children: /* @__PURE__ */ jsxRuntime.jsxs("div", {
415
+ className: "lb-composer-attachments-drop-area-label",
416
+ children: [
417
+ /* @__PURE__ */ jsxRuntime.jsx(Attachment.AttachmentIcon, {}),
418
+ $.COMPOSER_ATTACH_FILES
419
+ ]
420
+ })
421
+ })
422
+ ]
423
+ });
344
424
  }
345
- React.createContext(null);
346
- const Composer = React.forwardRef(
425
+ react.createContext(null);
426
+ const Composer = react.forwardRef(
347
427
  ({
348
428
  threadId,
349
429
  commentId,
@@ -379,16 +459,16 @@ const Composer = React.forwardRef(
379
459
  const editComment = _private.useEditRoomComment(roomId);
380
460
  const { preventUnsavedComposerChanges } = config.useLiveblocksUIConfig();
381
461
  const hasResolveMentionSuggestions = _private.useResolveMentionSuggestions() !== void 0;
382
- const isEmptyRef = React.useRef(true);
383
- const isEmojiPickerOpenRef = React.useRef(false);
462
+ const isEmptyRef = react.useRef(true);
463
+ const isEmojiPickerOpenRef = react.useRef(false);
384
464
  const $ = overrides.useOverrides(overrides$1);
385
465
  const [isCollapsed, onCollapsedChange] = useControllableState.useControllableState(
386
466
  controlledCollapsed === void 0 && defaultCollapsed === void 0 ? false : controlledCollapsed,
387
467
  controlledOnCollapsedChange,
388
468
  defaultCollapsed
389
469
  );
390
- const canCommentFallback = index_js.useSyncExternalStore(
391
- React.useCallback(
470
+ const canCommentFallback = react.useSyncExternalStore(
471
+ react.useCallback(
392
472
  (callback) => {
393
473
  if (room === null)
394
474
  return () => {
@@ -397,20 +477,20 @@ const Composer = React.forwardRef(
397
477
  },
398
478
  [room]
399
479
  ),
400
- React.useCallback(() => {
480
+ react.useCallback(() => {
401
481
  return room?.getSelf()?.canComment ?? true;
402
482
  }, [room]),
403
- React.useCallback(() => true, [])
483
+ react.useCallback(() => true, [])
404
484
  );
405
485
  const permissions = _private.useRoomPermissions(roomId);
406
486
  const canComment = permissions.size > 0 ? permissions.has(core.Permission.CommentsWrite) || permissions.has(core.Permission.Write) : canCommentFallback;
407
- const setEmptyRef = React.useCallback((isEmpty) => {
487
+ const setEmptyRef = react.useCallback((isEmpty) => {
408
488
  isEmptyRef.current = isEmpty;
409
489
  }, []);
410
- const setEmojiPickerOpenRef = React.useCallback((isEmojiPickerOpen) => {
490
+ const setEmojiPickerOpenRef = react.useCallback((isEmojiPickerOpen) => {
411
491
  isEmojiPickerOpenRef.current = isEmojiPickerOpen;
412
492
  }, []);
413
- const handleFocus = React.useCallback(
493
+ const handleFocus = react.useCallback(
414
494
  (event) => {
415
495
  onFocus?.(event);
416
496
  if (event.isDefaultPrevented()) {
@@ -422,7 +502,7 @@ const Composer = React.forwardRef(
422
502
  },
423
503
  [onCollapsedChange, onFocus, canComment]
424
504
  );
425
- const handleBlur = React.useCallback(
505
+ const handleBlur = react.useCallback(
426
506
  (event) => {
427
507
  onBlur?.(event);
428
508
  if (event.isDefaultPrevented()) {
@@ -437,7 +517,7 @@ const Composer = React.forwardRef(
437
517
  },
438
518
  [onBlur, onCollapsedChange]
439
519
  );
440
- const handleEditorClick = React.useCallback(
520
+ const handleEditorClick = react.useCallback(
441
521
  (event) => {
442
522
  event.stopPropagation();
443
523
  if (isEmptyRef.current && canComment) {
@@ -446,7 +526,7 @@ const Composer = React.forwardRef(
446
526
  },
447
527
  [onCollapsedChange, canComment]
448
528
  );
449
- const handleCommentSubmit = React.useCallback(
529
+ const handleCommentSubmit = react.useCallback(
450
530
  (comment, event) => {
451
531
  onComposerSubmit?.(comment, event);
452
532
  if (event.isDefaultPrevented()) {
@@ -483,38 +563,41 @@ const Composer = React.forwardRef(
483
563
  threadId
484
564
  ]
485
565
  );
486
- return /* @__PURE__ */ React.createElement(TooltipPrimitive.TooltipProvider, null, /* @__PURE__ */ React.createElement(index.Form, {
487
- onComposerSubmit: handleCommentSubmit,
488
- className: classNames.classNames(
489
- "lb-root lb-composer lb-composer-form",
490
- className
491
- ),
492
- dir: $.dir,
493
- ...props,
494
- ref: forwardedRef,
495
- "data-collapsed": isCollapsed ? "" : void 0,
496
- onFocus: handleFocus,
497
- onBlur: handleBlur,
498
- disabled: disabled || !canComment,
499
- defaultAttachments,
500
- pasteFilesAsAttachments: showAttachments,
501
- preventUnsavedChanges: preventUnsavedComposerChanges,
502
- roomId
503
- }, /* @__PURE__ */ React.createElement(ComposerEditorContainer, {
504
- defaultValue,
505
- actions,
506
- overrides: overrides$1,
507
- isCollapsed,
508
- showAttachments,
509
- showAttribution,
510
- showFormattingControls,
511
- hasResolveMentionSuggestions,
512
- onEmptyChange: setEmptyRef,
513
- onEmojiPickerOpenChange: setEmojiPickerOpenRef,
514
- onEditorClick: handleEditorClick,
515
- autoFocus,
516
- disabled
517
- })));
566
+ return /* @__PURE__ */ jsxRuntime.jsx(TooltipPrimitive.TooltipProvider, {
567
+ children: /* @__PURE__ */ jsxRuntime.jsx(index.Form, {
568
+ onComposerSubmit: handleCommentSubmit,
569
+ className: classNames.classNames(
570
+ "lb-root lb-composer lb-composer-form",
571
+ className
572
+ ),
573
+ dir: $.dir,
574
+ ...props,
575
+ ref: forwardedRef,
576
+ "data-collapsed": isCollapsed ? "" : void 0,
577
+ onFocus: handleFocus,
578
+ onBlur: handleBlur,
579
+ disabled: disabled || !canComment,
580
+ defaultAttachments,
581
+ pasteFilesAsAttachments: showAttachments,
582
+ preventUnsavedChanges: preventUnsavedComposerChanges,
583
+ roomId,
584
+ children: /* @__PURE__ */ jsxRuntime.jsx(ComposerEditorContainer, {
585
+ defaultValue,
586
+ actions,
587
+ overrides: overrides$1,
588
+ isCollapsed,
589
+ showAttachments,
590
+ showAttribution,
591
+ showFormattingControls,
592
+ hasResolveMentionSuggestions,
593
+ onEmptyChange: setEmptyRef,
594
+ onEmojiPickerOpenChange: setEmojiPickerOpenRef,
595
+ onEditorClick: handleEditorClick,
596
+ autoFocus,
597
+ disabled
598
+ })
599
+ })
600
+ });
518
601
  }
519
602
  );
520
603