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