@liveblocks/react-ui 2.18.3 → 2.18.4-uns1

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 (675) hide show
  1. package/dist/_private/index.cjs +118 -0
  2. package/dist/_private/index.cjs.map +1 -0
  3. package/dist/_private/index.js +54 -117
  4. package/dist/_private/index.js.map +1 -1
  5. package/dist/components/{Comment.mjs → Comment.cjs} +196 -169
  6. package/dist/components/{Comment.mjs.map → Comment.cjs.map} +1 -1
  7. package/dist/components/Comment.js +168 -195
  8. package/dist/components/Comment.js.map +1 -1
  9. package/dist/components/{Composer.mjs → Composer.cjs} +151 -148
  10. package/dist/components/{Composer.mjs.map → Composer.cjs.map} +1 -1
  11. package/dist/components/Composer.js +147 -150
  12. package/dist/components/Composer.js.map +1 -1
  13. package/dist/components/HistoryVersionSummary.cjs +45 -0
  14. package/dist/components/{HistoryVersionSummary.mjs.map → HistoryVersionSummary.cjs.map} +1 -1
  15. package/dist/components/HistoryVersionSummary.js +17 -19
  16. package/dist/components/HistoryVersionSummary.js.map +1 -1
  17. package/dist/components/HistoryVersionSummaryList.cjs +25 -0
  18. package/dist/components/{HistoryVersionSummaryList.mjs.map → HistoryVersionSummaryList.cjs.map} +1 -1
  19. package/dist/components/HistoryVersionSummaryList.js +8 -10
  20. package/dist/components/HistoryVersionSummaryList.js.map +1 -1
  21. package/dist/components/{InboxNotification.mjs → InboxNotification.cjs} +124 -122
  22. package/dist/components/{InboxNotification.mjs.map → InboxNotification.cjs.map} +1 -1
  23. package/dist/components/InboxNotification.js +121 -123
  24. package/dist/components/InboxNotification.js.map +1 -1
  25. package/dist/components/InboxNotificationList.cjs +42 -0
  26. package/dist/components/{InboxNotificationList.mjs.map → InboxNotificationList.cjs.map} +1 -1
  27. package/dist/components/InboxNotificationList.js +14 -16
  28. package/dist/components/InboxNotificationList.js.map +1 -1
  29. package/dist/components/{Thread.mjs → Thread.cjs} +70 -49
  30. package/dist/components/{Thread.mjs.map → Thread.cjs.map} +1 -1
  31. package/dist/components/Thread.js +48 -69
  32. package/dist/components/Thread.js.map +1 -1
  33. package/dist/components/internal/{Attachment.mjs → Attachment.cjs} +82 -78
  34. package/dist/components/internal/{Attachment.mjs.map → Attachment.cjs.map} +1 -1
  35. package/dist/components/internal/Attachment.js +77 -81
  36. package/dist/components/internal/Attachment.js.map +1 -1
  37. package/dist/components/internal/{Attribution.mjs → Attribution.cjs} +10 -8
  38. package/dist/components/internal/{Attribution.mjs.map → Attribution.cjs.map} +1 -1
  39. package/dist/components/internal/Attribution.js +7 -9
  40. package/dist/components/internal/Attribution.js.map +1 -1
  41. package/dist/components/internal/Avatar.cjs +48 -0
  42. package/dist/components/internal/{Avatar.mjs.map → Avatar.cjs.map} +1 -1
  43. package/dist/components/internal/Avatar.js +18 -20
  44. package/dist/components/internal/Avatar.js.map +1 -1
  45. package/dist/components/internal/Button.cjs +80 -0
  46. package/dist/components/internal/{Button.mjs.map → Button.cjs.map} +1 -1
  47. package/dist/components/internal/Button.js +19 -23
  48. package/dist/components/internal/Button.js.map +1 -1
  49. package/dist/components/internal/Dropdown.cjs +92 -0
  50. package/dist/components/internal/{Dropdown.mjs.map → Dropdown.cjs.map} +1 -1
  51. package/dist/components/internal/Dropdown.js +22 -47
  52. package/dist/components/internal/Dropdown.js.map +1 -1
  53. package/dist/components/internal/Emoji.cjs +19 -0
  54. package/dist/components/internal/{Emoji.mjs.map → Emoji.cjs.map} +1 -1
  55. package/dist/components/internal/Emoji.js +8 -10
  56. package/dist/components/internal/Emoji.js.map +1 -1
  57. package/dist/components/internal/EmojiPicker.cjs +208 -0
  58. package/dist/components/internal/{EmojiPicker.mjs.map → EmojiPicker.cjs.map} +1 -1
  59. package/dist/components/internal/EmojiPicker.js +52 -76
  60. package/dist/components/internal/EmojiPicker.js.map +1 -1
  61. package/dist/components/internal/{Icon.mjs → Icon.cjs} +10 -6
  62. package/dist/components/internal/{Icon.mjs.map → Icon.cjs.map} +1 -1
  63. package/dist/components/internal/Icon.js +5 -9
  64. package/dist/components/internal/Icon.js.map +1 -1
  65. package/dist/components/internal/{InboxNotificationThread.mjs → InboxNotificationThread.cjs} +34 -30
  66. package/dist/components/internal/{InboxNotificationThread.mjs.map → InboxNotificationThread.cjs.map} +1 -1
  67. package/dist/components/internal/InboxNotificationThread.js +29 -33
  68. package/dist/components/internal/InboxNotificationThread.js.map +1 -1
  69. package/dist/components/internal/List.cjs +36 -0
  70. package/dist/components/internal/{List.mjs.map → List.cjs.map} +1 -1
  71. package/dist/components/internal/List.js +14 -16
  72. package/dist/components/internal/List.js.map +1 -1
  73. package/dist/components/internal/Room.cjs +24 -0
  74. package/dist/components/internal/{Room.mjs.map → Room.cjs.map} +1 -1
  75. package/dist/components/internal/Room.js +9 -11
  76. package/dist/components/internal/Room.js.map +1 -1
  77. package/dist/components/internal/Tooltip.cjs +134 -0
  78. package/dist/components/internal/{Tooltip.mjs.map → Tooltip.cjs.map} +1 -1
  79. package/dist/components/internal/Tooltip.js +29 -54
  80. package/dist/components/internal/Tooltip.js.map +1 -1
  81. package/dist/components/internal/User.cjs +28 -0
  82. package/dist/components/internal/{User.mjs.map → User.cjs.map} +1 -1
  83. package/dist/components/internal/User.js +13 -15
  84. package/dist/components/internal/User.js.map +1 -1
  85. package/dist/components.cjs +48 -0
  86. package/dist/{components.mjs.map → components.cjs.map} +1 -1
  87. package/dist/components.js +9 -14
  88. package/dist/components.js.map +1 -1
  89. package/dist/config.cjs +39 -0
  90. package/dist/{config.mjs.map → config.cjs.map} +1 -1
  91. package/dist/config.js +15 -18
  92. package/dist/config.js.map +1 -1
  93. package/dist/{constants.mjs → constants.cjs} +6 -2
  94. package/dist/{constants.mjs.map → constants.cjs.map} +1 -1
  95. package/dist/constants.js +1 -5
  96. package/dist/constants.js.map +1 -1
  97. package/dist/icon.cjs +69 -0
  98. package/dist/icon.cjs.map +1 -0
  99. package/dist/icon.js +32 -68
  100. package/dist/icon.js.map +1 -1
  101. package/dist/icons/ArrowCornerDownRight.cjs +16 -0
  102. package/dist/icons/{ArrowCornerDownRight.mjs.map → ArrowCornerDownRight.cjs.map} +1 -1
  103. package/dist/icons/ArrowCornerDownRight.js +5 -7
  104. package/dist/icons/ArrowCornerDownRight.js.map +1 -1
  105. package/dist/icons/ArrowCornerUpRight.cjs +16 -0
  106. package/dist/icons/ArrowCornerUpRight.cjs.map +1 -0
  107. package/dist/icons/ArrowCornerUpRight.js +5 -7
  108. package/dist/icons/ArrowCornerUpRight.js.map +1 -1
  109. package/dist/icons/ArrowDown.cjs +16 -0
  110. package/dist/icons/ArrowDown.cjs.map +1 -0
  111. package/dist/icons/ArrowDown.js +5 -7
  112. package/dist/icons/ArrowDown.js.map +1 -1
  113. package/dist/icons/ArrowUp.cjs +16 -0
  114. package/dist/icons/ArrowUp.cjs.map +1 -0
  115. package/dist/icons/ArrowUp.js +5 -7
  116. package/dist/icons/ArrowUp.js.map +1 -1
  117. package/dist/icons/{Attachment.mjs → Attachment.cjs} +8 -6
  118. package/dist/icons/{Attachment.mjs.map → Attachment.cjs.map} +1 -1
  119. package/dist/icons/Attachment.js +5 -7
  120. package/dist/icons/Attachment.js.map +1 -1
  121. package/dist/icons/Blockquote.cjs +16 -0
  122. package/dist/icons/Blockquote.cjs.map +1 -0
  123. package/dist/icons/Blockquote.js +5 -7
  124. package/dist/icons/Blockquote.js.map +1 -1
  125. package/dist/icons/Bold.cjs +16 -0
  126. package/dist/icons/{Bold.mjs.map → Bold.cjs.map} +1 -1
  127. package/dist/icons/Bold.js +5 -7
  128. package/dist/icons/Bold.js.map +1 -1
  129. package/dist/icons/Check.cjs +16 -0
  130. package/dist/icons/Check.cjs.map +1 -0
  131. package/dist/icons/Check.js +5 -7
  132. package/dist/icons/Check.js.map +1 -1
  133. package/dist/icons/ChevronDown.cjs +16 -0
  134. package/dist/icons/{ChevronDown.mjs.map → ChevronDown.cjs.map} +1 -1
  135. package/dist/icons/ChevronDown.js +5 -7
  136. package/dist/icons/ChevronDown.js.map +1 -1
  137. package/dist/icons/ChevronLeft.cjs +16 -0
  138. package/dist/icons/{ChevronLeft.mjs.map → ChevronLeft.cjs.map} +1 -1
  139. package/dist/icons/ChevronLeft.js +5 -7
  140. package/dist/icons/ChevronLeft.js.map +1 -1
  141. package/dist/icons/ChevronRight.cjs +16 -0
  142. package/dist/icons/{ChevronRight.mjs.map → ChevronRight.cjs.map} +1 -1
  143. package/dist/icons/ChevronRight.js +5 -7
  144. package/dist/icons/ChevronRight.js.map +1 -1
  145. package/dist/icons/ChevronUp.cjs +16 -0
  146. package/dist/icons/{ChevronUp.mjs.map → ChevronUp.cjs.map} +1 -1
  147. package/dist/icons/ChevronUp.js +5 -7
  148. package/dist/icons/ChevronUp.js.map +1 -1
  149. package/dist/icons/Code.cjs +16 -0
  150. package/dist/icons/Code.cjs.map +1 -0
  151. package/dist/icons/Code.js +5 -7
  152. package/dist/icons/Code.js.map +1 -1
  153. package/dist/icons/Comment.cjs +16 -0
  154. package/dist/icons/{Comment.mjs.map → Comment.cjs.map} +1 -1
  155. package/dist/icons/Comment.js +5 -7
  156. package/dist/icons/Comment.js.map +1 -1
  157. package/dist/icons/Cross.cjs +21 -0
  158. package/dist/icons/Cross.cjs.map +1 -0
  159. package/dist/icons/Cross.js +6 -8
  160. package/dist/icons/Cross.js.map +1 -1
  161. package/dist/icons/Delete.cjs +16 -0
  162. package/dist/icons/{Delete.mjs.map → Delete.cjs.map} +1 -1
  163. package/dist/icons/Delete.js +5 -7
  164. package/dist/icons/Delete.js.map +1 -1
  165. package/dist/icons/Edit.cjs +16 -0
  166. package/dist/icons/{Edit.mjs.map → Edit.cjs.map} +1 -1
  167. package/dist/icons/Edit.js +5 -7
  168. package/dist/icons/Edit.js.map +1 -1
  169. package/dist/icons/Ellipsis.cjs +31 -0
  170. package/dist/icons/Ellipsis.cjs.map +1 -0
  171. package/dist/icons/Ellipsis.js +7 -9
  172. package/dist/icons/Ellipsis.js.map +1 -1
  173. package/dist/icons/Emoji.cjs +34 -0
  174. package/dist/icons/Emoji.cjs.map +1 -0
  175. package/dist/icons/Emoji.js +9 -11
  176. package/dist/icons/Emoji.js.map +1 -1
  177. package/dist/icons/EmojiAdd.cjs +37 -0
  178. package/dist/icons/EmojiAdd.cjs.map +1 -0
  179. package/dist/icons/EmojiAdd.js +10 -12
  180. package/dist/icons/EmojiAdd.js.map +1 -1
  181. package/dist/icons/H1.cjs +16 -0
  182. package/dist/icons/{H1.mjs.map → H1.cjs.map} +1 -1
  183. package/dist/icons/H1.js +5 -7
  184. package/dist/icons/H1.js.map +1 -1
  185. package/dist/icons/H2.cjs +16 -0
  186. package/dist/icons/H2.cjs.map +1 -0
  187. package/dist/icons/H2.js +5 -7
  188. package/dist/icons/H2.js.map +1 -1
  189. package/dist/icons/H3.cjs +16 -0
  190. package/dist/icons/{H3.mjs.map → H3.cjs.map} +1 -1
  191. package/dist/icons/H3.js +5 -7
  192. package/dist/icons/H3.js.map +1 -1
  193. package/dist/icons/Italic.cjs +16 -0
  194. package/dist/icons/{Italic.mjs.map → Italic.cjs.map} +1 -1
  195. package/dist/icons/Italic.js +5 -7
  196. package/dist/icons/Italic.js.map +1 -1
  197. package/dist/icons/Lengthen.cjs +16 -0
  198. package/dist/icons/Lengthen.cjs.map +1 -0
  199. package/dist/icons/Lengthen.js +5 -7
  200. package/dist/icons/Lengthen.js.map +1 -1
  201. package/dist/icons/ListOrdered.cjs +16 -0
  202. package/dist/icons/{ListOrdered.mjs.map → ListOrdered.cjs.map} +1 -1
  203. package/dist/icons/ListOrdered.js +5 -7
  204. package/dist/icons/ListOrdered.js.map +1 -1
  205. package/dist/icons/ListUnordered.cjs +39 -0
  206. package/dist/icons/ListUnordered.cjs.map +1 -0
  207. package/dist/icons/ListUnordered.js +10 -12
  208. package/dist/icons/ListUnordered.js.map +1 -1
  209. package/dist/icons/Mention.cjs +21 -0
  210. package/dist/icons/Mention.cjs.map +1 -0
  211. package/dist/icons/Mention.js +6 -8
  212. package/dist/icons/Mention.js.map +1 -1
  213. package/dist/icons/QuestionMark.cjs +26 -0
  214. package/dist/icons/QuestionMark.cjs.map +1 -0
  215. package/dist/icons/QuestionMark.js +7 -9
  216. package/dist/icons/QuestionMark.js.map +1 -1
  217. package/dist/icons/Redo.cjs +21 -0
  218. package/dist/icons/Redo.cjs.map +1 -0
  219. package/dist/icons/Redo.js +6 -8
  220. package/dist/icons/Redo.js.map +1 -1
  221. package/dist/icons/Resolve.cjs +23 -0
  222. package/dist/icons/Resolve.cjs.map +1 -0
  223. package/dist/icons/Resolve.js +6 -8
  224. package/dist/icons/Resolve.js.map +1 -1
  225. package/dist/icons/Resolved.cjs +25 -0
  226. package/dist/icons/Resolved.cjs.map +1 -0
  227. package/dist/icons/Resolved.js +6 -8
  228. package/dist/icons/Resolved.js.map +1 -1
  229. package/dist/icons/Restore.cjs +21 -0
  230. package/dist/icons/Restore.cjs.map +1 -0
  231. package/dist/icons/Restore.js +6 -8
  232. package/dist/icons/Restore.js.map +1 -1
  233. package/dist/icons/Search.cjs +16 -0
  234. package/dist/icons/{Search.mjs.map → Search.cjs.map} +1 -1
  235. package/dist/icons/Search.js +5 -7
  236. package/dist/icons/Search.js.map +1 -1
  237. package/dist/icons/Send.cjs +16 -0
  238. package/dist/icons/Send.cjs.map +1 -0
  239. package/dist/icons/Send.js +5 -7
  240. package/dist/icons/Send.js.map +1 -1
  241. package/dist/icons/Shorten.cjs +16 -0
  242. package/dist/icons/{Shorten.mjs.map → Shorten.cjs.map} +1 -1
  243. package/dist/icons/Shorten.js +5 -7
  244. package/dist/icons/Shorten.js.map +1 -1
  245. package/dist/icons/{Sparkles.mjs → Sparkles.cjs} +8 -6
  246. package/dist/icons/{Sparkles.mjs.map → Sparkles.cjs.map} +1 -1
  247. package/dist/icons/Sparkles.js +5 -7
  248. package/dist/icons/Sparkles.js.map +1 -1
  249. package/dist/icons/SparklesText.cjs +21 -0
  250. package/dist/icons/{SparklesText.mjs.map → SparklesText.cjs.map} +1 -1
  251. package/dist/icons/SparklesText.js +6 -8
  252. package/dist/icons/SparklesText.js.map +1 -1
  253. package/dist/icons/Spinner.cjs +17 -0
  254. package/dist/icons/Spinner.cjs.map +1 -0
  255. package/dist/icons/Spinner.js +5 -7
  256. package/dist/icons/Spinner.js.map +1 -1
  257. package/dist/icons/Strikethrough.cjs +16 -0
  258. package/dist/icons/{Strikethrough.mjs.map → Strikethrough.cjs.map} +1 -1
  259. package/dist/icons/Strikethrough.js +5 -7
  260. package/dist/icons/Strikethrough.js.map +1 -1
  261. package/dist/icons/Text.cjs +16 -0
  262. package/dist/icons/{Text.mjs.map → Text.cjs.map} +1 -1
  263. package/dist/icons/Text.js +5 -7
  264. package/dist/icons/Text.js.map +1 -1
  265. package/dist/icons/Translate.cjs +21 -0
  266. package/dist/icons/{Translate.mjs.map → Translate.cjs.map} +1 -1
  267. package/dist/icons/Translate.js +6 -8
  268. package/dist/icons/Translate.js.map +1 -1
  269. package/dist/icons/Underline.cjs +16 -0
  270. package/dist/icons/Underline.cjs.map +1 -0
  271. package/dist/icons/Underline.js +5 -7
  272. package/dist/icons/Underline.js.map +1 -1
  273. package/dist/icons/Undo.cjs +21 -0
  274. package/dist/icons/Undo.cjs.map +1 -0
  275. package/dist/icons/Undo.js +6 -8
  276. package/dist/icons/Undo.js.map +1 -1
  277. package/dist/icons/Warning.cjs +23 -0
  278. package/dist/icons/Warning.cjs.map +1 -0
  279. package/dist/icons/Warning.js +6 -8
  280. package/dist/icons/Warning.js.map +1 -1
  281. package/dist/icons/index.cjs +96 -0
  282. package/dist/icons/index.cjs.map +1 -0
  283. package/dist/icons/index.js +45 -95
  284. package/dist/icons/index.js.map +1 -1
  285. package/dist/index.cjs +28 -0
  286. package/dist/{index.mjs.map → index.cjs.map} +1 -1
  287. package/dist/index.js +14 -26
  288. package/dist/index.js.map +1 -1
  289. package/dist/{overrides.mjs → overrides.cjs} +32 -27
  290. package/dist/{overrides.mjs.map → overrides.cjs.map} +1 -1
  291. package/dist/overrides.js +26 -31
  292. package/dist/overrides.js.map +1 -1
  293. package/dist/primitives/Comment/{index.mjs → index.cjs} +35 -31
  294. package/dist/primitives/Comment/{index.mjs.map → index.cjs.map} +1 -1
  295. package/dist/primitives/Comment/index.js +30 -34
  296. package/dist/primitives/Comment/index.js.map +1 -1
  297. package/dist/primitives/Comment/{utils.mjs → utils.cjs} +7 -2
  298. package/dist/primitives/Comment/{utils.mjs.map → utils.cjs.map} +1 -1
  299. package/dist/primitives/Comment/utils.js +1 -6
  300. package/dist/primitives/Comment/utils.js.map +1 -1
  301. package/dist/primitives/Composer/contexts.cjs +60 -0
  302. package/dist/primitives/Composer/{contexts.mjs.map → contexts.cjs.map} +1 -1
  303. package/dist/primitives/Composer/contexts.js +18 -30
  304. package/dist/primitives/Composer/contexts.js.map +1 -1
  305. package/dist/primitives/Composer/{index.mjs → index.cjs} +305 -273
  306. package/dist/primitives/Composer/{index.mjs.map → index.cjs.map} +1 -1
  307. package/dist/primitives/Composer/index.js +272 -304
  308. package/dist/primitives/Composer/index.js.map +1 -1
  309. package/dist/primitives/Composer/{utils.mjs → utils.cjs} +79 -64
  310. package/dist/primitives/Composer/{utils.mjs.map → utils.cjs.map} +1 -1
  311. package/dist/primitives/Composer/utils.js +63 -78
  312. package/dist/primitives/Composer/utils.js.map +1 -1
  313. package/dist/primitives/EmojiPicker/contexts.cjs +19 -0
  314. package/dist/primitives/EmojiPicker/{contexts.mjs.map → contexts.cjs.map} +1 -1
  315. package/dist/primitives/EmojiPicker/contexts.js +6 -9
  316. package/dist/primitives/EmojiPicker/contexts.js.map +1 -1
  317. package/dist/primitives/EmojiPicker/{index.mjs → index.cjs} +96 -92
  318. package/dist/primitives/EmojiPicker/{index.mjs.map → index.cjs.map} +1 -1
  319. package/dist/primitives/EmojiPicker/index.js +91 -95
  320. package/dist/primitives/EmojiPicker/index.js.map +1 -1
  321. package/dist/primitives/EmojiPicker/{utils.mjs → utils.cjs} +14 -10
  322. package/dist/primitives/EmojiPicker/{utils.mjs.map → utils.cjs.map} +1 -1
  323. package/dist/primitives/EmojiPicker/utils.js +9 -13
  324. package/dist/primitives/EmojiPicker/utils.js.map +1 -1
  325. package/dist/primitives/FileSize.cjs +36 -0
  326. package/dist/primitives/{FileSize.mjs.map → FileSize.cjs.map} +1 -1
  327. package/dist/primitives/FileSize.js +10 -12
  328. package/dist/primitives/FileSize.js.map +1 -1
  329. package/dist/primitives/{Timestamp.mjs → Timestamp.cjs} +27 -25
  330. package/dist/primitives/{Timestamp.mjs.map → Timestamp.cjs.map} +1 -1
  331. package/dist/primitives/Timestamp.js +24 -26
  332. package/dist/primitives/Timestamp.js.map +1 -1
  333. package/dist/primitives/index.cjs +20 -0
  334. package/dist/primitives/index.cjs.map +1 -0
  335. package/dist/primitives/index.js +10 -19
  336. package/dist/primitives/index.js.map +1 -1
  337. package/dist/primitives/internal/Emoji.cjs +32 -0
  338. package/dist/primitives/internal/{Emoji.mjs.map → Emoji.cjs.map} +1 -1
  339. package/dist/primitives/internal/Emoji.js +9 -11
  340. package/dist/primitives/internal/Emoji.js.map +1 -1
  341. package/dist/shared.cjs +13 -0
  342. package/dist/{shared.mjs.map → shared.cjs.map} +1 -1
  343. package/dist/shared.js +6 -8
  344. package/dist/shared.js.map +1 -1
  345. package/dist/slate/plugins/{auto-formatting.mjs → auto-formatting.cjs} +18 -16
  346. package/dist/slate/plugins/{auto-formatting.mjs.map → auto-formatting.cjs.map} +1 -1
  347. package/dist/slate/plugins/auto-formatting.js +15 -17
  348. package/dist/slate/plugins/auto-formatting.js.map +1 -1
  349. package/dist/slate/plugins/{auto-links.mjs → auto-links.cjs} +43 -40
  350. package/dist/slate/plugins/{auto-links.mjs.map → auto-links.cjs.map} +1 -1
  351. package/dist/slate/plugins/auto-links.js +39 -42
  352. package/dist/slate/plugins/auto-links.js.map +1 -1
  353. package/dist/slate/plugins/{custom-links.mjs → custom-links.cjs} +19 -16
  354. package/dist/slate/plugins/{custom-links.mjs.map → custom-links.cjs.map} +1 -1
  355. package/dist/slate/plugins/custom-links.js +15 -18
  356. package/dist/slate/plugins/custom-links.js.map +1 -1
  357. package/dist/slate/plugins/empty-clear-formatting.cjs +18 -0
  358. package/dist/slate/plugins/{empty-clear-formatting.mjs.map → empty-clear-formatting.cjs.map} +1 -1
  359. package/dist/slate/plugins/empty-clear-formatting.js +5 -7
  360. package/dist/slate/plugins/empty-clear-formatting.js.map +1 -1
  361. package/dist/slate/plugins/mentions.cjs +129 -0
  362. package/dist/slate/plugins/{mentions.mjs.map → mentions.cjs.map} +1 -1
  363. package/dist/slate/plugins/mentions.js +35 -42
  364. package/dist/slate/plugins/mentions.js.map +1 -1
  365. package/dist/slate/plugins/normalize.cjs +28 -0
  366. package/dist/slate/plugins/normalize.cjs.map +1 -0
  367. package/dist/slate/plugins/normalize.js +8 -10
  368. package/dist/slate/plugins/normalize.js.map +1 -1
  369. package/dist/slate/plugins/{paste.mjs → paste.cjs} +14 -12
  370. package/dist/slate/plugins/{paste.mjs.map → paste.cjs.map} +1 -1
  371. package/dist/slate/plugins/paste.js +11 -13
  372. package/dist/slate/plugins/paste.js.map +1 -1
  373. package/dist/slate/utils/get-character.cjs +50 -0
  374. package/dist/slate/utils/{get-character.mjs.map → get-character.cjs.map} +1 -1
  375. package/dist/slate/utils/get-character.js +10 -13
  376. package/dist/slate/utils/get-character.js.map +1 -1
  377. package/dist/slate/utils/get-dom-range.cjs +17 -0
  378. package/dist/slate/utils/{get-dom-range.mjs.map → get-dom-range.cjs.map} +1 -1
  379. package/dist/slate/utils/get-dom-range.js +3 -5
  380. package/dist/slate/utils/get-dom-range.js.map +1 -1
  381. package/dist/slate/utils/{get-match-range.mjs → get-match-range.cjs} +14 -12
  382. package/dist/slate/utils/{get-match-range.mjs.map → get-match-range.cjs.map} +1 -1
  383. package/dist/slate/utils/get-match-range.js +11 -13
  384. package/dist/slate/utils/get-match-range.js.map +1 -1
  385. package/dist/slate/utils/is-empty-string.cjs +8 -0
  386. package/dist/slate/utils/is-empty-string.cjs.map +1 -0
  387. package/dist/slate/utils/is-empty-string.js +1 -3
  388. package/dist/slate/utils/is-empty-string.js.map +1 -1
  389. package/dist/slate/utils/is-empty.cjs +27 -0
  390. package/dist/slate/utils/{is-empty.mjs.map → is-empty.cjs.map} +1 -1
  391. package/dist/slate/utils/is-empty.js +8 -10
  392. package/dist/slate/utils/is-empty.js.map +1 -1
  393. package/dist/slate/utils/{is-text.mjs → is-text.cjs} +5 -2
  394. package/dist/slate/utils/{is-text.mjs.map → is-text.cjs.map} +1 -1
  395. package/dist/slate/utils/is-text.js +1 -4
  396. package/dist/slate/utils/is-text.js.map +1 -1
  397. package/dist/slate/utils/{is-whitespace-character.mjs → is-whitespace-character.cjs} +4 -2
  398. package/dist/slate/utils/{is-whitespace-character.mjs.map → is-whitespace-character.cjs.map} +1 -1
  399. package/dist/slate/utils/is-whitespace-character.js +1 -3
  400. package/dist/slate/utils/is-whitespace-character.js.map +1 -1
  401. package/dist/slate/utils/marks.cjs +62 -0
  402. package/dist/slate/utils/{marks.mjs.map → marks.cjs.map} +1 -1
  403. package/dist/slate/utils/marks.js +12 -19
  404. package/dist/slate/utils/marks.js.map +1 -1
  405. package/dist/slate/utils/selection-contains-inlines.cjs +36 -0
  406. package/dist/slate/utils/selection-contains-inlines.cjs.map +1 -0
  407. package/dist/slate/utils/selection-contains-inlines.js +7 -9
  408. package/dist/slate/utils/selection-contains-inlines.js.map +1 -1
  409. package/dist/utils/{Persist.mjs → Persist.cjs} +26 -22
  410. package/dist/utils/{Persist.mjs.map → Persist.cjs.map} +1 -1
  411. package/dist/utils/Persist.js +21 -25
  412. package/dist/utils/Persist.js.map +1 -1
  413. package/dist/utils/Portal.cjs +29 -0
  414. package/dist/utils/{Portal.mjs.map → Portal.cjs.map} +1 -1
  415. package/dist/utils/Portal.js +9 -11
  416. package/dist/utils/Portal.js.map +1 -1
  417. package/dist/utils/{capitalize.mjs → capitalize.cjs} +4 -2
  418. package/dist/utils/capitalize.cjs.map +1 -0
  419. package/dist/utils/capitalize.js +1 -3
  420. package/dist/utils/capitalize.js.map +1 -1
  421. package/dist/utils/{clamp.mjs → clamp.cjs} +4 -2
  422. package/dist/utils/clamp.cjs.map +1 -0
  423. package/dist/utils/clamp.js +1 -3
  424. package/dist/utils/clamp.js.map +1 -1
  425. package/dist/utils/{class-names.mjs → class-names.cjs} +4 -2
  426. package/dist/utils/{class-names.mjs.map → class-names.cjs.map} +1 -1
  427. package/dist/utils/class-names.js +1 -3
  428. package/dist/utils/class-names.js.map +1 -1
  429. package/dist/utils/{data-transfer.mjs → data-transfer.cjs} +6 -4
  430. package/dist/utils/{data-transfer.mjs.map → data-transfer.cjs.map} +1 -1
  431. package/dist/utils/data-transfer.js +3 -5
  432. package/dist/utils/data-transfer.js.map +1 -1
  433. package/dist/utils/{download.mjs → download.cjs} +4 -2
  434. package/dist/utils/download.cjs.map +1 -0
  435. package/dist/utils/download.js +1 -3
  436. package/dist/utils/download.js.map +1 -1
  437. package/dist/utils/exists.cjs +8 -0
  438. package/dist/utils/exists.cjs.map +1 -0
  439. package/dist/utils/exists.js +1 -3
  440. package/dist/utils/exists.js.map +1 -1
  441. package/dist/utils/{find-last-index.mjs → find-last-index.cjs} +4 -2
  442. package/dist/utils/find-last-index.cjs.map +1 -0
  443. package/dist/utils/find-last-index.js +1 -3
  444. package/dist/utils/find-last-index.js.map +1 -1
  445. package/dist/utils/{format-file-size.mjs → format-file-size.cjs} +6 -4
  446. package/dist/utils/format-file-size.cjs.map +1 -0
  447. package/dist/utils/format-file-size.js +3 -5
  448. package/dist/utils/format-file-size.js.map +1 -1
  449. package/dist/utils/{get-initials.mjs → get-initials.cjs} +4 -2
  450. package/dist/utils/get-initials.cjs.map +1 -0
  451. package/dist/utils/get-initials.js +1 -3
  452. package/dist/utils/get-initials.js.map +1 -1
  453. package/dist/utils/intl.cjs +30 -0
  454. package/dist/utils/{intl.mjs.map → intl.cjs.map} +1 -1
  455. package/dist/utils/intl.js +6 -11
  456. package/dist/utils/intl.js.map +1 -1
  457. package/dist/utils/{is-apple.mjs → is-apple.cjs} +4 -2
  458. package/dist/utils/is-apple.cjs.map +1 -0
  459. package/dist/utils/is-apple.js +1 -3
  460. package/dist/utils/is-apple.js.map +1 -1
  461. package/dist/utils/{is-key.mjs → is-key.cjs} +6 -4
  462. package/dist/utils/{is-key.mjs.map → is-key.cjs.map} +1 -1
  463. package/dist/utils/is-key.js +3 -5
  464. package/dist/utils/is-key.js.map +1 -1
  465. package/dist/utils/{memoize.mjs → memoize.cjs} +6 -4
  466. package/dist/utils/memoize.cjs.map +1 -0
  467. package/dist/utils/memoize.js +3 -5
  468. package/dist/utils/memoize.js.map +1 -1
  469. package/dist/utils/{pluralize.mjs → pluralize.cjs} +4 -2
  470. package/dist/utils/pluralize.cjs.map +1 -0
  471. package/dist/utils/pluralize.js +1 -3
  472. package/dist/utils/pluralize.js.map +1 -1
  473. package/dist/utils/{request-idle-callback.mjs → request-idle-callback.cjs} +5 -2
  474. package/dist/utils/{request-idle-callback.mjs.map → request-idle-callback.cjs.map} +1 -1
  475. package/dist/utils/request-idle-callback.js +1 -4
  476. package/dist/utils/request-idle-callback.js.map +1 -1
  477. package/dist/utils/{request-submit.mjs → request-submit.cjs} +4 -2
  478. package/dist/utils/request-submit.cjs.map +1 -0
  479. package/dist/utils/request-submit.js +1 -3
  480. package/dist/utils/request-submit.js.map +1 -1
  481. package/dist/utils/{url.mjs → url.cjs} +4 -2
  482. package/dist/utils/url.cjs.map +1 -0
  483. package/dist/utils/url.js +1 -3
  484. package/dist/utils/url.js.map +1 -1
  485. package/dist/utils/{use-controllable-state.mjs → use-controllable-state.cjs} +11 -9
  486. package/dist/utils/{use-controllable-state.mjs.map → use-controllable-state.cjs.map} +1 -1
  487. package/dist/utils/use-controllable-state.js +8 -10
  488. package/dist/utils/use-controllable-state.js.map +1 -1
  489. package/dist/utils/use-index.cjs +32 -0
  490. package/dist/utils/{use-index.mjs.map → use-index.cjs.map} +1 -1
  491. package/dist/utils/use-index.js +11 -13
  492. package/dist/utils/use-index.js.map +1 -1
  493. package/dist/utils/use-initial.cjs +11 -0
  494. package/dist/utils/{use-initial.mjs.map → use-initial.cjs.map} +1 -1
  495. package/dist/utils/use-initial.js +3 -5
  496. package/dist/utils/use-initial.js.map +1 -1
  497. package/dist/utils/{use-interval.mjs → use-interval.cjs} +8 -6
  498. package/dist/utils/use-interval.cjs.map +1 -0
  499. package/dist/utils/use-interval.js +5 -7
  500. package/dist/utils/use-interval.js.map +1 -1
  501. package/dist/utils/use-latest.cjs +14 -0
  502. package/dist/utils/{use-latest.mjs.map → use-latest.cjs.map} +1 -1
  503. package/dist/utils/use-latest.js +4 -6
  504. package/dist/utils/use-latest.js.map +1 -1
  505. package/dist/utils/use-observable.cjs +15 -0
  506. package/dist/utils/{use-observable.mjs.map → use-observable.cjs.map} +1 -1
  507. package/dist/utils/use-observable.js +5 -7
  508. package/dist/utils/use-observable.js.map +1 -1
  509. package/dist/utils/{use-refs.mjs → use-refs.cjs} +6 -4
  510. package/dist/utils/{use-refs.mjs.map → use-refs.cjs.map} +1 -1
  511. package/dist/utils/use-refs.js +3 -5
  512. package/dist/utils/use-refs.js.map +1 -1
  513. package/dist/utils/use-rerender.cjs +14 -0
  514. package/dist/utils/{use-rerender.mjs.map → use-rerender.cjs.map} +1 -1
  515. package/dist/utils/use-rerender.js +3 -5
  516. package/dist/utils/use-rerender.js.map +1 -1
  517. package/dist/utils/{use-visible.mjs → use-visible.cjs} +11 -8
  518. package/dist/utils/{use-visible.mjs.map → use-visible.cjs.map} +1 -1
  519. package/dist/utils/use-visible.js +7 -10
  520. package/dist/utils/use-visible.js.map +1 -1
  521. package/dist/utils/{use-window-focus.mjs → use-window-focus.cjs} +6 -4
  522. package/dist/utils/use-window-focus.cjs.map +1 -0
  523. package/dist/utils/use-window-focus.js +3 -5
  524. package/dist/utils/use-window-focus.js.map +1 -1
  525. package/dist/utils/{visually-hidden.mjs → visually-hidden.cjs} +4 -2
  526. package/dist/utils/visually-hidden.cjs.map +1 -0
  527. package/dist/utils/visually-hidden.js +1 -3
  528. package/dist/utils/visually-hidden.js.map +1 -1
  529. package/dist/utils/{wrap.mjs → wrap.cjs} +4 -2
  530. package/dist/utils/wrap.cjs.map +1 -0
  531. package/dist/utils/wrap.js +1 -3
  532. package/dist/utils/wrap.js.map +1 -1
  533. package/dist/version.cjs +10 -0
  534. package/dist/{version.mjs.map → version.cjs.map} +1 -1
  535. package/dist/version.js +3 -7
  536. package/dist/version.js.map +1 -1
  537. package/package.json +28 -27
  538. package/styles/dark/attributes.css.d.cts +1 -0
  539. package/styles/dark/media-query.css.d.cts +1 -0
  540. package/styles.css.d.cts +1 -0
  541. package/dist/_private/index.mjs +0 -55
  542. package/dist/_private/index.mjs.map +0 -1
  543. package/dist/components/HistoryVersionSummary.mjs +0 -43
  544. package/dist/components/HistoryVersionSummaryList.mjs +0 -23
  545. package/dist/components/InboxNotificationList.mjs +0 -40
  546. package/dist/components/internal/Avatar.mjs +0 -46
  547. package/dist/components/internal/Button.mjs +0 -76
  548. package/dist/components/internal/Dropdown.mjs +0 -67
  549. package/dist/components/internal/Emoji.mjs +0 -17
  550. package/dist/components/internal/EmojiPicker.mjs +0 -184
  551. package/dist/components/internal/List.mjs +0 -34
  552. package/dist/components/internal/Room.mjs +0 -22
  553. package/dist/components/internal/Tooltip.mjs +0 -109
  554. package/dist/components/internal/User.mjs +0 -26
  555. package/dist/components.mjs +0 -43
  556. package/dist/config.mjs +0 -36
  557. package/dist/icon.mjs +0 -33
  558. package/dist/icon.mjs.map +0 -1
  559. package/dist/icons/ArrowCornerDownRight.mjs +0 -14
  560. package/dist/icons/ArrowCornerUpRight.mjs +0 -14
  561. package/dist/icons/ArrowCornerUpRight.mjs.map +0 -1
  562. package/dist/icons/ArrowDown.mjs +0 -14
  563. package/dist/icons/ArrowDown.mjs.map +0 -1
  564. package/dist/icons/ArrowUp.mjs +0 -14
  565. package/dist/icons/ArrowUp.mjs.map +0 -1
  566. package/dist/icons/Blockquote.mjs +0 -14
  567. package/dist/icons/Blockquote.mjs.map +0 -1
  568. package/dist/icons/Bold.mjs +0 -14
  569. package/dist/icons/Check.mjs +0 -14
  570. package/dist/icons/Check.mjs.map +0 -1
  571. package/dist/icons/ChevronDown.mjs +0 -14
  572. package/dist/icons/ChevronLeft.mjs +0 -14
  573. package/dist/icons/ChevronRight.mjs +0 -14
  574. package/dist/icons/ChevronUp.mjs +0 -14
  575. package/dist/icons/Code.mjs +0 -14
  576. package/dist/icons/Code.mjs.map +0 -1
  577. package/dist/icons/Comment.mjs +0 -14
  578. package/dist/icons/Cross.mjs +0 -19
  579. package/dist/icons/Cross.mjs.map +0 -1
  580. package/dist/icons/Delete.mjs +0 -14
  581. package/dist/icons/Edit.mjs +0 -14
  582. package/dist/icons/Ellipsis.mjs +0 -29
  583. package/dist/icons/Ellipsis.mjs.map +0 -1
  584. package/dist/icons/Emoji.mjs +0 -32
  585. package/dist/icons/Emoji.mjs.map +0 -1
  586. package/dist/icons/EmojiAdd.mjs +0 -35
  587. package/dist/icons/EmojiAdd.mjs.map +0 -1
  588. package/dist/icons/H1.mjs +0 -14
  589. package/dist/icons/H2.mjs +0 -14
  590. package/dist/icons/H2.mjs.map +0 -1
  591. package/dist/icons/H3.mjs +0 -14
  592. package/dist/icons/Italic.mjs +0 -14
  593. package/dist/icons/Lengthen.mjs +0 -14
  594. package/dist/icons/Lengthen.mjs.map +0 -1
  595. package/dist/icons/ListOrdered.mjs +0 -14
  596. package/dist/icons/ListUnordered.mjs +0 -37
  597. package/dist/icons/ListUnordered.mjs.map +0 -1
  598. package/dist/icons/Mention.mjs +0 -19
  599. package/dist/icons/Mention.mjs.map +0 -1
  600. package/dist/icons/QuestionMark.mjs +0 -24
  601. package/dist/icons/QuestionMark.mjs.map +0 -1
  602. package/dist/icons/Redo.mjs +0 -19
  603. package/dist/icons/Redo.mjs.map +0 -1
  604. package/dist/icons/Resolve.mjs +0 -21
  605. package/dist/icons/Resolve.mjs.map +0 -1
  606. package/dist/icons/Resolved.mjs +0 -23
  607. package/dist/icons/Resolved.mjs.map +0 -1
  608. package/dist/icons/Restore.mjs +0 -19
  609. package/dist/icons/Restore.mjs.map +0 -1
  610. package/dist/icons/Search.mjs +0 -14
  611. package/dist/icons/Send.mjs +0 -14
  612. package/dist/icons/Send.mjs.map +0 -1
  613. package/dist/icons/Shorten.mjs +0 -14
  614. package/dist/icons/SparklesText.mjs +0 -19
  615. package/dist/icons/Spinner.mjs +0 -15
  616. package/dist/icons/Spinner.mjs.map +0 -1
  617. package/dist/icons/Strikethrough.mjs +0 -14
  618. package/dist/icons/Text.mjs +0 -14
  619. package/dist/icons/Translate.mjs +0 -19
  620. package/dist/icons/Underline.mjs +0 -14
  621. package/dist/icons/Underline.mjs.map +0 -1
  622. package/dist/icons/Undo.mjs +0 -19
  623. package/dist/icons/Undo.mjs.map +0 -1
  624. package/dist/icons/Warning.mjs +0 -21
  625. package/dist/icons/Warning.mjs.map +0 -1
  626. package/dist/icons/index.mjs +0 -46
  627. package/dist/icons/index.mjs.map +0 -1
  628. package/dist/index.mjs +0 -16
  629. package/dist/primitives/Composer/contexts.mjs +0 -48
  630. package/dist/primitives/EmojiPicker/contexts.mjs +0 -16
  631. package/dist/primitives/FileSize.mjs +0 -34
  632. package/dist/primitives/index.mjs +0 -11
  633. package/dist/primitives/index.mjs.map +0 -1
  634. package/dist/primitives/internal/Emoji.mjs +0 -30
  635. package/dist/shared.mjs +0 -11
  636. package/dist/slate/plugins/empty-clear-formatting.mjs +0 -16
  637. package/dist/slate/plugins/mentions.mjs +0 -122
  638. package/dist/slate/plugins/normalize.mjs +0 -26
  639. package/dist/slate/plugins/normalize.mjs.map +0 -1
  640. package/dist/slate/utils/get-character.mjs +0 -47
  641. package/dist/slate/utils/get-dom-range.mjs +0 -15
  642. package/dist/slate/utils/is-empty-string.mjs +0 -6
  643. package/dist/slate/utils/is-empty-string.mjs.map +0 -1
  644. package/dist/slate/utils/is-empty.mjs +0 -25
  645. package/dist/slate/utils/marks.mjs +0 -55
  646. package/dist/slate/utils/selection-contains-inlines.mjs +0 -34
  647. package/dist/slate/utils/selection-contains-inlines.mjs.map +0 -1
  648. package/dist/utils/Portal.mjs +0 -27
  649. package/dist/utils/capitalize.mjs.map +0 -1
  650. package/dist/utils/clamp.mjs.map +0 -1
  651. package/dist/utils/download.mjs.map +0 -1
  652. package/dist/utils/exists.mjs +0 -6
  653. package/dist/utils/exists.mjs.map +0 -1
  654. package/dist/utils/find-last-index.mjs.map +0 -1
  655. package/dist/utils/format-file-size.mjs.map +0 -1
  656. package/dist/utils/get-initials.mjs.map +0 -1
  657. package/dist/utils/intl.mjs +0 -25
  658. package/dist/utils/is-apple.mjs.map +0 -1
  659. package/dist/utils/memoize.mjs.map +0 -1
  660. package/dist/utils/pluralize.mjs.map +0 -1
  661. package/dist/utils/request-submit.mjs.map +0 -1
  662. package/dist/utils/url.mjs.map +0 -1
  663. package/dist/utils/use-index.mjs +0 -30
  664. package/dist/utils/use-initial.mjs +0 -9
  665. package/dist/utils/use-interval.mjs.map +0 -1
  666. package/dist/utils/use-latest.mjs +0 -12
  667. package/dist/utils/use-observable.mjs +0 -13
  668. package/dist/utils/use-rerender.mjs +0 -12
  669. package/dist/utils/use-window-focus.mjs.map +0 -1
  670. package/dist/utils/visually-hidden.mjs.map +0 -1
  671. package/dist/utils/wrap.mjs.map +0 -1
  672. package/dist/version.mjs +0 -6
  673. /package/dist/_private/{index.d.mts → index.d.cts} +0 -0
  674. /package/dist/{index.d.mts → index.d.cts} +0 -0
  675. /package/dist/primitives/{index.d.mts → index.d.cts} +0 -0
@@ -1,35 +1,56 @@
1
1
  "use client";
2
- import { jsxs, jsx } from 'react/jsx-runtime';
3
- import { createCommentAttachmentId, makeEventSource } from '@liveblocks/core';
4
- import { useLayoutEffect, useClientOrNull, useResolveMentionSuggestions, useMentionSuggestions, useRoomOrNull, useSyncSource } from '@liveblocks/react/_private';
5
- import { Slot, Slottable } from '@radix-ui/react-slot';
6
- import * as TogglePrimitive from '@radix-ui/react-toggle';
7
- import { useMemo, useState, forwardRef, useRef, useCallback, useEffect, useId, useImperativeHandle } from 'react';
8
- import { createEditor, Range, Transforms, Editor, insertText } from 'slate';
9
- import { withHistory } from 'slate-history';
10
- import { withReact, useSelected, useSlateStatic, ReactEditor, Slate, Editable } from 'slate-react';
11
- import { useLiveblocksUIConfig } from '../../config.mjs';
12
- import { withAutoFormatting } from '../../slate/plugins/auto-formatting.mjs';
13
- import { withAutoLinks } from '../../slate/plugins/auto-links.mjs';
14
- import { withCustomLinks } from '../../slate/plugins/custom-links.mjs';
15
- import { withEmptyClearFormatting } from '../../slate/plugins/empty-clear-formatting.mjs';
16
- import { withMentions, getMentionDraftAtSelection, MENTION_CHARACTER, insertMention, insertMentionCharacter } from '../../slate/plugins/mentions.mjs';
17
- import { withNormalize } from '../../slate/plugins/normalize.mjs';
18
- import { withPaste } from '../../slate/plugins/paste.mjs';
19
- import { getDOMRange } from '../../slate/utils/get-dom-range.mjs';
20
- import { isEmpty } from '../../slate/utils/is-empty.mjs';
21
- import { leaveMarkEdge, toggleMark, getMarks } from '../../slate/utils/marks.mjs';
22
- import { isKey } from '../../utils/is-key.mjs';
23
- import { Persist, usePersist, useAnimationPersist } from '../../utils/Persist.mjs';
24
- import { Portal } from '../../utils/Portal.mjs';
25
- import { requestSubmit } from '../../utils/request-submit.mjs';
26
- import { useIndex } from '../../utils/use-index.mjs';
27
- import { useInitial } from '../../utils/use-initial.mjs';
28
- import { useObservable } from '../../utils/use-observable.mjs';
29
- import { useRefs } from '../../utils/use-refs.mjs';
30
- import { toAbsoluteUrl } from '../Comment/utils.mjs';
31
- import { useComposerEditorContext, useComposer, ComposerSuggestionsContext, ComposerFloatingToolbarContext, useComposerFloatingToolbarContext, useComposerSuggestionsContext, ComposerEditorContext, ComposerAttachmentsContext, ComposerContext, useComposerAttachmentsContext } from './contexts.mjs';
32
- import { useContentZIndex, useFloatingWithOptions, getSideAndAlignFromFloatingPlacement, commentBodyToComposerBody, useComposerAttachmentsManager, composerBodyToCommentBody, useComposerAttachmentsDropArea } from './utils.mjs';
2
+ 'use strict';
3
+
4
+ var jsxRuntime = require('react/jsx-runtime');
5
+ var core = require('@liveblocks/core');
6
+ var _private = require('@liveblocks/react/_private');
7
+ var reactSlot = require('@radix-ui/react-slot');
8
+ var TogglePrimitive = require('@radix-ui/react-toggle');
9
+ var react = require('react');
10
+ var slate = require('slate');
11
+ var slateHistory = require('slate-history');
12
+ var slateReact = require('slate-react');
13
+ var config = require('../../config.cjs');
14
+ var autoFormatting = require('../../slate/plugins/auto-formatting.cjs');
15
+ var autoLinks = require('../../slate/plugins/auto-links.cjs');
16
+ var customLinks = require('../../slate/plugins/custom-links.cjs');
17
+ var emptyClearFormatting = require('../../slate/plugins/empty-clear-formatting.cjs');
18
+ var mentions = require('../../slate/plugins/mentions.cjs');
19
+ var normalize = require('../../slate/plugins/normalize.cjs');
20
+ var paste = require('../../slate/plugins/paste.cjs');
21
+ var getDomRange = require('../../slate/utils/get-dom-range.cjs');
22
+ var isEmpty = require('../../slate/utils/is-empty.cjs');
23
+ var marks = require('../../slate/utils/marks.cjs');
24
+ var isKey = require('../../utils/is-key.cjs');
25
+ var Persist = require('../../utils/Persist.cjs');
26
+ var Portal = require('../../utils/Portal.cjs');
27
+ var requestSubmit = require('../../utils/request-submit.cjs');
28
+ var useIndex = require('../../utils/use-index.cjs');
29
+ var useInitial = require('../../utils/use-initial.cjs');
30
+ var useObservable = require('../../utils/use-observable.cjs');
31
+ var useRefs = require('../../utils/use-refs.cjs');
32
+ var utils = require('../Comment/utils.cjs');
33
+ var contexts = require('./contexts.cjs');
34
+ var utils$1 = require('./utils.cjs');
35
+
36
+ function _interopNamespaceDefault(e) {
37
+ var n = Object.create(null);
38
+ if (e) {
39
+ Object.keys(e).forEach(function (k) {
40
+ if (k !== 'default') {
41
+ var d = Object.getOwnPropertyDescriptor(e, k);
42
+ Object.defineProperty(n, k, d.get ? d : {
43
+ enumerable: true,
44
+ get: function () { return e[k]; }
45
+ });
46
+ }
47
+ });
48
+ }
49
+ n.default = e;
50
+ return Object.freeze(n);
51
+ }
52
+
53
+ var TogglePrimitive__namespace = /*#__PURE__*/_interopNamespaceDefault(TogglePrimitive);
33
54
 
34
55
 
35
56
  const MENTION_SUGGESTIONS_POSITION = "top";
@@ -54,13 +75,13 @@ function createComposerEditor({
54
75
  createAttachments,
55
76
  pasteFilesAsAttachments
56
77
  }) {
57
- return withNormalize(
58
- withMentions(
59
- withCustomLinks(
60
- withAutoLinks(
61
- withAutoFormatting(
62
- withEmptyClearFormatting(
63
- withPaste(withHistory(withReact(createEditor())), {
78
+ return normalize.withNormalize(
79
+ mentions.withMentions(
80
+ customLinks.withCustomLinks(
81
+ autoLinks.withAutoLinks(
82
+ autoFormatting.withAutoFormatting(
83
+ emptyClearFormatting.withEmptyClearFormatting(
84
+ paste.withPaste(slateHistory.withHistory(slateReact.withReact(slate.createEditor())), {
64
85
  createAttachments,
65
86
  pasteFilesAsAttachments
66
87
  })
@@ -77,11 +98,11 @@ function ComposerEditorMentionWrapper({
77
98
  children,
78
99
  element
79
100
  }) {
80
- const isSelected = useSelected();
81
- return /* @__PURE__ */ jsxs("span", {
101
+ const isSelected = slateReact.useSelected();
102
+ return /* @__PURE__ */ jsxRuntime.jsxs("span", {
82
103
  ...attributes,
83
104
  children: [
84
- element.id ? /* @__PURE__ */ jsx(Mention, {
105
+ element.id ? /* @__PURE__ */ jsxRuntime.jsx(Mention, {
85
106
  userId: element.id,
86
107
  isSelected
87
108
  }) : null,
@@ -95,13 +116,13 @@ function ComposerEditorLinkWrapper({
95
116
  element,
96
117
  children
97
118
  }) {
98
- const href = useMemo(
99
- () => toAbsoluteUrl(element.url) ?? element.url,
119
+ const href = react.useMemo(
120
+ () => utils.toAbsoluteUrl(element.url) ?? element.url,
100
121
  [element.url]
101
122
  );
102
- return /* @__PURE__ */ jsx("span", {
123
+ return /* @__PURE__ */ jsxRuntime.jsx("span", {
103
124
  ...attributes,
104
- children: /* @__PURE__ */ jsx(Link, {
125
+ children: /* @__PURE__ */ jsxRuntime.jsx(Link, {
105
126
  href,
106
127
  children
107
128
  })
@@ -120,11 +141,11 @@ function ComposerEditorMentionSuggestionsWrapper({
120
141
  dir,
121
142
  MentionSuggestions
122
143
  }) {
123
- const editor = useSlateStatic();
124
- const { onEditorChange } = useComposerEditorContext();
125
- const { isFocused } = useComposer();
126
- const { portalContainer } = useLiveblocksUIConfig();
127
- const [contentRef, contentZIndex] = useContentZIndex();
144
+ const editor = slateReact.useSlateStatic();
145
+ const { onEditorChange } = contexts.useComposerEditorContext();
146
+ const { isFocused } = contexts.useComposer();
147
+ const { portalContainer } = config.useLiveblocksUIConfig();
148
+ const [contentRef, contentZIndex] = utils$1.useContentZIndex();
128
149
  const isOpen = isFocused && mentionDraft?.range !== void 0 && userIds !== void 0;
129
150
  const {
130
151
  refs: { setReference, setFloating },
@@ -133,25 +154,25 @@ function ComposerEditorMentionSuggestionsWrapper({
133
154
  placement,
134
155
  x,
135
156
  y
136
- } = useFloatingWithOptions({
157
+ } = utils$1.useFloatingWithOptions({
137
158
  position,
138
159
  dir,
139
160
  alignment: "start",
140
161
  open: isOpen
141
162
  });
142
- useObservable(onEditorChange, () => {
143
- setMentionDraft(getMentionDraftAtSelection(editor));
163
+ useObservable.useObservable(onEditorChange, () => {
164
+ setMentionDraft(mentions.getMentionDraftAtSelection(editor));
144
165
  });
145
- useLayoutEffect(() => {
166
+ _private.useLayoutEffect(() => {
146
167
  if (!mentionDraft) {
147
168
  setReference(null);
148
169
  return;
149
170
  }
150
- const domRange = getDOMRange(editor, mentionDraft.range);
171
+ const domRange = getDomRange.getDOMRange(editor, mentionDraft.range);
151
172
  setReference(domRange ?? null);
152
173
  }, [setReference, editor, mentionDraft]);
153
- return /* @__PURE__ */ jsx(Persist, {
154
- children: isOpen ? /* @__PURE__ */ jsx(ComposerSuggestionsContext.Provider, {
174
+ return /* @__PURE__ */ jsxRuntime.jsx(Persist.Persist, {
175
+ children: isOpen ? /* @__PURE__ */ jsxRuntime.jsx(contexts.ComposerSuggestionsContext.Provider, {
155
176
  value: {
156
177
  id,
157
178
  itemId,
@@ -162,7 +183,7 @@ function ComposerEditorMentionSuggestionsWrapper({
162
183
  dir,
163
184
  ref: contentRef
164
185
  },
165
- children: /* @__PURE__ */ jsx(Portal, {
186
+ children: /* @__PURE__ */ jsxRuntime.jsx(Portal.Portal, {
166
187
  ref: setFloating,
167
188
  container: portalContainer,
168
189
  style: {
@@ -173,7 +194,7 @@ function ComposerEditorMentionSuggestionsWrapper({
173
194
  minWidth: "max-content",
174
195
  zIndex: contentZIndex
175
196
  },
176
- children: /* @__PURE__ */ jsx(MentionSuggestions, {
197
+ children: /* @__PURE__ */ jsxRuntime.jsx(MentionSuggestions, {
177
198
  userIds,
178
199
  selectedUserId
179
200
  })
@@ -189,12 +210,12 @@ function ComposerEditorFloatingToolbarWrapper({
189
210
  hasFloatingToolbarRange,
190
211
  setHasFloatingToolbarRange
191
212
  }) {
192
- const editor = useSlateStatic();
193
- const { onEditorChange } = useComposerEditorContext();
194
- const { isFocused } = useComposer();
195
- const { portalContainer } = useLiveblocksUIConfig();
196
- const [contentRef, contentZIndex] = useContentZIndex();
197
- const [isPointerDown, setPointerDown] = useState(false);
213
+ const editor = slateReact.useSlateStatic();
214
+ const { onEditorChange } = contexts.useComposerEditorContext();
215
+ const { isFocused } = contexts.useComposer();
216
+ const { portalContainer } = config.useLiveblocksUIConfig();
217
+ const [contentRef, contentZIndex] = utils$1.useContentZIndex();
218
+ const [isPointerDown, setPointerDown] = react.useState(false);
198
219
  const isOpen = isFocused && !isPointerDown && hasFloatingToolbarRange;
199
220
  const {
200
221
  refs: { setReference, setFloating },
@@ -203,14 +224,14 @@ function ComposerEditorFloatingToolbarWrapper({
203
224
  placement,
204
225
  x,
205
226
  y
206
- } = useFloatingWithOptions({
227
+ } = utils$1.useFloatingWithOptions({
207
228
  type: "range",
208
229
  position,
209
230
  dir,
210
231
  alignment: "center",
211
232
  open: isOpen
212
233
  });
213
- useLayoutEffect(() => {
234
+ _private.useLayoutEffect(() => {
214
235
  if (!isFocused) {
215
236
  return;
216
237
  }
@@ -223,11 +244,11 @@ function ComposerEditorFloatingToolbarWrapper({
223
244
  document.removeEventListener("pointerup", handlePointerUp);
224
245
  };
225
246
  }, [isFocused]);
226
- useObservable(onEditorChange, () => {
247
+ useObservable.useObservable(onEditorChange, () => {
227
248
  setReference(null);
228
249
  requestAnimationFrame(() => {
229
250
  const domSelection = window.getSelection();
230
- if (!editor.selection || Range.isCollapsed(editor.selection) || !domSelection || !domSelection.rangeCount) {
251
+ if (!editor.selection || slate.Range.isCollapsed(editor.selection) || !domSelection || !domSelection.rangeCount) {
231
252
  setHasFloatingToolbarRange(false);
232
253
  setReference(null);
233
254
  } else {
@@ -237,15 +258,15 @@ function ComposerEditorFloatingToolbarWrapper({
237
258
  }
238
259
  });
239
260
  });
240
- return /* @__PURE__ */ jsx(Persist, {
241
- children: isOpen ? /* @__PURE__ */ jsx(ComposerFloatingToolbarContext.Provider, {
261
+ return /* @__PURE__ */ jsxRuntime.jsx(Persist.Persist, {
262
+ children: isOpen ? /* @__PURE__ */ jsxRuntime.jsx(contexts.ComposerFloatingToolbarContext.Provider, {
242
263
  value: {
243
264
  id,
244
265
  placement,
245
266
  dir,
246
267
  ref: contentRef
247
268
  },
248
- children: /* @__PURE__ */ jsx(Portal, {
269
+ children: /* @__PURE__ */ jsxRuntime.jsx(Portal.Portal, {
249
270
  ref: setFloating,
250
271
  container: portalContainer,
251
272
  style: {
@@ -256,28 +277,28 @@ function ComposerEditorFloatingToolbarWrapper({
256
277
  minWidth: "max-content",
257
278
  zIndex: contentZIndex
258
279
  },
259
- children: /* @__PURE__ */ jsx(FloatingToolbar, {})
280
+ children: /* @__PURE__ */ jsxRuntime.jsx(FloatingToolbar, {})
260
281
  })
261
282
  }) : null
262
283
  });
263
284
  }
264
- const ComposerFloatingToolbar = forwardRef(({ children, onPointerDown, style, asChild, ...props }, forwardedRef) => {
265
- const [isPresent] = usePersist();
266
- const ref = useRef(null);
285
+ const ComposerFloatingToolbar = react.forwardRef(({ children, onPointerDown, style, asChild, ...props }, forwardedRef) => {
286
+ const [isPresent] = Persist.usePersist();
287
+ const ref = react.useRef(null);
267
288
  const {
268
289
  id,
269
290
  ref: contentRef,
270
291
  placement,
271
292
  dir
272
- } = useComposerFloatingToolbarContext(COMPOSER_FLOATING_TOOLBAR_NAME);
273
- const mergedRefs = useRefs(forwardedRef, contentRef, ref);
274
- const [side, align] = useMemo(
275
- () => getSideAndAlignFromFloatingPlacement(placement),
293
+ } = contexts.useComposerFloatingToolbarContext(COMPOSER_FLOATING_TOOLBAR_NAME);
294
+ const mergedRefs = useRefs.useRefs(forwardedRef, contentRef, ref);
295
+ const [side, align] = react.useMemo(
296
+ () => utils$1.getSideAndAlignFromFloatingPlacement(placement),
276
297
  [placement]
277
298
  );
278
- const Component = asChild ? Slot : "div";
279
- useAnimationPersist(ref);
280
- const handlePointerDown = useCallback(
299
+ const Component = asChild ? reactSlot.Slot : "div";
300
+ Persist.useAnimationPersist(ref);
301
+ const handlePointerDown = react.useCallback(
281
302
  (event) => {
282
303
  onPointerDown?.(event);
283
304
  event.preventDefault();
@@ -285,7 +306,7 @@ const ComposerFloatingToolbar = forwardRef(({ children, onPointerDown, style, as
285
306
  },
286
307
  [onPointerDown]
287
308
  );
288
- return /* @__PURE__ */ jsx(Component, {
309
+ return /* @__PURE__ */ jsxRuntime.jsx(Component, {
289
310
  dir,
290
311
  role: "toolbar",
291
312
  id,
@@ -314,18 +335,18 @@ function ComposerEditorElement({
314
335
  const { attributes, children, element } = props;
315
336
  switch (element.type) {
316
337
  case "mention":
317
- return /* @__PURE__ */ jsx(ComposerEditorMentionWrapper, {
338
+ return /* @__PURE__ */ jsxRuntime.jsx(ComposerEditorMentionWrapper, {
318
339
  Mention,
319
340
  ...props
320
341
  });
321
342
  case "auto-link":
322
343
  case "custom-link":
323
- return /* @__PURE__ */ jsx(ComposerEditorLinkWrapper, {
344
+ return /* @__PURE__ */ jsxRuntime.jsx(ComposerEditorLinkWrapper, {
324
345
  Link,
325
346
  ...props
326
347
  });
327
348
  case "paragraph":
328
- return /* @__PURE__ */ jsx("p", {
349
+ return /* @__PURE__ */ jsxRuntime.jsx("p", {
329
350
  ...attributes,
330
351
  style: { position: "relative" },
331
352
  children
@@ -336,26 +357,26 @@ function ComposerEditorElement({
336
357
  }
337
358
  function ComposerEditorLeaf({ attributes, children, leaf }) {
338
359
  if (leaf.bold) {
339
- children = /* @__PURE__ */ jsx("strong", {
360
+ children = /* @__PURE__ */ jsxRuntime.jsx("strong", {
340
361
  children
341
362
  });
342
363
  }
343
364
  if (leaf.italic) {
344
- children = /* @__PURE__ */ jsx("em", {
365
+ children = /* @__PURE__ */ jsxRuntime.jsx("em", {
345
366
  children
346
367
  });
347
368
  }
348
369
  if (leaf.strikethrough) {
349
- children = /* @__PURE__ */ jsx("s", {
370
+ children = /* @__PURE__ */ jsxRuntime.jsx("s", {
350
371
  children
351
372
  });
352
373
  }
353
374
  if (leaf.code) {
354
- children = /* @__PURE__ */ jsx("code", {
375
+ children = /* @__PURE__ */ jsxRuntime.jsx("code", {
355
376
  children
356
377
  });
357
378
  }
358
- return /* @__PURE__ */ jsx("span", {
379
+ return /* @__PURE__ */ jsxRuntime.jsx("span", {
359
380
  ...attributes,
360
381
  children
361
382
  });
@@ -365,18 +386,18 @@ function ComposerEditorPlaceholder({
365
386
  children
366
387
  }) {
367
388
  const { opacity: _opacity, ...style } = attributes.style;
368
- return /* @__PURE__ */ jsx("span", {
389
+ return /* @__PURE__ */ jsxRuntime.jsx("span", {
369
390
  ...attributes,
370
391
  style,
371
392
  "data-placeholder": "",
372
393
  children
373
394
  });
374
395
  }
375
- const ComposerMention = forwardRef(
396
+ const ComposerMention = react.forwardRef(
376
397
  ({ children, asChild, ...props }, forwardedRef) => {
377
- const Component = asChild ? Slot : "span";
378
- const isSelected = useSelected();
379
- return /* @__PURE__ */ jsx(Component, {
398
+ const Component = asChild ? reactSlot.Slot : "span";
399
+ const isSelected = slateReact.useSelected();
400
+ return /* @__PURE__ */ jsxRuntime.jsx(Component, {
380
401
  "data-selected": isSelected || void 0,
381
402
  ...props,
382
403
  ref: forwardedRef,
@@ -384,10 +405,10 @@ const ComposerMention = forwardRef(
384
405
  });
385
406
  }
386
407
  );
387
- const ComposerLink = forwardRef(
408
+ const ComposerLink = react.forwardRef(
388
409
  ({ children, asChild, ...props }, forwardedRef) => {
389
- const Component = asChild ? Slot : "a";
390
- return /* @__PURE__ */ jsx(Component, {
410
+ const Component = asChild ? reactSlot.Slot : "a";
411
+ return /* @__PURE__ */ jsxRuntime.jsx(Component, {
391
412
  target: "_blank",
392
413
  rel: "noopener noreferrer nofollow",
393
414
  ...props,
@@ -396,22 +417,22 @@ const ComposerLink = forwardRef(
396
417
  });
397
418
  }
398
419
  );
399
- const ComposerSuggestions = forwardRef(({ children, style, asChild, ...props }, forwardedRef) => {
400
- const [isPresent] = usePersist();
401
- const ref = useRef(null);
420
+ const ComposerSuggestions = react.forwardRef(({ children, style, asChild, ...props }, forwardedRef) => {
421
+ const [isPresent] = Persist.usePersist();
422
+ const ref = react.useRef(null);
402
423
  const {
403
424
  ref: contentRef,
404
425
  placement,
405
426
  dir
406
- } = useComposerSuggestionsContext(COMPOSER_SUGGESTIONS_NAME);
407
- const mergedRefs = useRefs(forwardedRef, contentRef, ref);
408
- const [side, align] = useMemo(
409
- () => getSideAndAlignFromFloatingPlacement(placement),
427
+ } = contexts.useComposerSuggestionsContext(COMPOSER_SUGGESTIONS_NAME);
428
+ const mergedRefs = useRefs.useRefs(forwardedRef, contentRef, ref);
429
+ const [side, align] = react.useMemo(
430
+ () => utils$1.getSideAndAlignFromFloatingPlacement(placement),
410
431
  [placement]
411
432
  );
412
- const Component = asChild ? Slot : "div";
413
- useAnimationPersist(ref);
414
- return /* @__PURE__ */ jsx(Component, {
433
+ const Component = asChild ? reactSlot.Slot : "div";
434
+ Persist.useAnimationPersist(ref);
435
+ return /* @__PURE__ */ jsxRuntime.jsx(Component, {
415
436
  dir,
416
437
  ...props,
417
438
  "data-state": isPresent ? "open" : "closed",
@@ -428,10 +449,10 @@ const ComposerSuggestions = forwardRef(({ children, style, asChild, ...props },
428
449
  children
429
450
  });
430
451
  });
431
- const ComposerSuggestionsList = forwardRef(({ children, asChild, ...props }, forwardedRef) => {
432
- const { id } = useComposerSuggestionsContext(COMPOSER_SUGGESTIONS_LIST_NAME);
433
- const Component = asChild ? Slot : "ul";
434
- return /* @__PURE__ */ jsx(Component, {
452
+ const ComposerSuggestionsList = react.forwardRef(({ children, asChild, ...props }, forwardedRef) => {
453
+ const { id } = contexts.useComposerSuggestionsContext(COMPOSER_SUGGESTIONS_LIST_NAME);
454
+ const Component = asChild ? reactSlot.Slot : "ul";
455
+ return /* @__PURE__ */ jsxRuntime.jsx(Component, {
435
456
  role: "listbox",
436
457
  id,
437
458
  "aria-label": "Suggestions list",
@@ -440,7 +461,7 @@ const ComposerSuggestionsList = forwardRef(({ children, asChild, ...props }, for
440
461
  children
441
462
  });
442
463
  });
443
- const ComposerSuggestionsListItem = forwardRef(
464
+ const ComposerSuggestionsListItem = react.forwardRef(
444
465
  ({
445
466
  value,
446
467
  children,
@@ -450,21 +471,21 @@ const ComposerSuggestionsListItem = forwardRef(
450
471
  asChild,
451
472
  ...props
452
473
  }, forwardedRef) => {
453
- const ref = useRef(null);
454
- const mergedRefs = useRefs(forwardedRef, ref);
455
- const { selectedValue, setSelectedValue, itemId, onItemSelect } = useComposerSuggestionsContext(COMPOSER_SUGGESTIONS_LIST_ITEM_NAME);
456
- const Component = asChild ? Slot : "li";
457
- const isSelected = useMemo(
474
+ const ref = react.useRef(null);
475
+ const mergedRefs = useRefs.useRefs(forwardedRef, ref);
476
+ const { selectedValue, setSelectedValue, itemId, onItemSelect } = contexts.useComposerSuggestionsContext(COMPOSER_SUGGESTIONS_LIST_ITEM_NAME);
477
+ const Component = asChild ? reactSlot.Slot : "li";
478
+ const isSelected = react.useMemo(
458
479
  () => selectedValue === value,
459
480
  [selectedValue, value]
460
481
  );
461
- const id = useMemo(() => itemId(value), [itemId, value]);
462
- useEffect(() => {
482
+ const id = react.useMemo(() => itemId(value), [itemId, value]);
483
+ react.useEffect(() => {
463
484
  if (ref?.current && isSelected) {
464
485
  ref.current.scrollIntoView({ block: "nearest" });
465
486
  }
466
487
  }, [isSelected]);
467
- const handlePointerMove = useCallback(
488
+ const handlePointerMove = react.useCallback(
468
489
  (event) => {
469
490
  onPointerMove?.(event);
470
491
  if (!event.isDefaultPrevented()) {
@@ -473,7 +494,7 @@ const ComposerSuggestionsListItem = forwardRef(
473
494
  },
474
495
  [onPointerMove, setSelectedValue, value]
475
496
  );
476
- const handlePointerDown = useCallback(
497
+ const handlePointerDown = react.useCallback(
477
498
  (event) => {
478
499
  onPointerDown?.(event);
479
500
  event.preventDefault();
@@ -481,7 +502,7 @@ const ComposerSuggestionsListItem = forwardRef(
481
502
  },
482
503
  [onPointerDown]
483
504
  );
484
- const handleClick = useCallback(
505
+ const handleClick = react.useCallback(
485
506
  (event) => {
486
507
  onClick?.(event);
487
508
  const wasDefaultPrevented = event.isDefaultPrevented();
@@ -493,7 +514,7 @@ const ComposerSuggestionsListItem = forwardRef(
493
514
  },
494
515
  [onClick, onItemSelect, value]
495
516
  );
496
- return /* @__PURE__ */ jsx(Component, {
517
+ return /* @__PURE__ */ jsxRuntime.jsx(Component, {
497
518
  role: "option",
498
519
  id,
499
520
  "data-selected": isSelected || void 0,
@@ -509,23 +530,23 @@ const ComposerSuggestionsListItem = forwardRef(
509
530
  );
510
531
  const defaultEditorComponents = {
511
532
  Link: ({ href, children }) => {
512
- return /* @__PURE__ */ jsx(ComposerLink, {
533
+ return /* @__PURE__ */ jsxRuntime.jsx(ComposerLink, {
513
534
  href,
514
535
  children
515
536
  });
516
537
  },
517
538
  Mention: ({ userId }) => {
518
- return /* @__PURE__ */ jsxs(ComposerMention, {
539
+ return /* @__PURE__ */ jsxRuntime.jsxs(ComposerMention, {
519
540
  children: [
520
- MENTION_CHARACTER,
541
+ mentions.MENTION_CHARACTER,
521
542
  userId
522
543
  ]
523
544
  });
524
545
  },
525
546
  MentionSuggestions: ({ userIds }) => {
526
- return userIds.length > 0 ? /* @__PURE__ */ jsx(ComposerSuggestions, {
527
- children: /* @__PURE__ */ jsx(ComposerSuggestionsList, {
528
- children: userIds.map((userId) => /* @__PURE__ */ jsx(ComposerSuggestionsListItem, {
547
+ return userIds.length > 0 ? /* @__PURE__ */ jsxRuntime.jsx(ComposerSuggestions, {
548
+ children: /* @__PURE__ */ jsxRuntime.jsx(ComposerSuggestionsList, {
549
+ children: userIds.map((userId) => /* @__PURE__ */ jsxRuntime.jsx(ComposerSuggestionsListItem, {
529
550
  value: userId,
530
551
  children: userId
531
552
  }, userId))
@@ -533,7 +554,7 @@ const defaultEditorComponents = {
533
554
  }) : null;
534
555
  }
535
556
  };
536
- const ComposerEditor = forwardRef(
557
+ const ComposerEditor = react.forwardRef(
537
558
  ({
538
559
  defaultValue,
539
560
  onKeyDown,
@@ -545,8 +566,8 @@ const ComposerEditor = forwardRef(
545
566
  dir,
546
567
  ...props
547
568
  }, forwardedRef) => {
548
- const client = useClientOrNull();
549
- const { editor, validate, setFocused, onEditorChange, roomId } = useComposerEditorContext();
569
+ const client = _private.useClientOrNull();
570
+ const { editor, validate, setFocused, onEditorChange, roomId } = contexts.useComposerEditorContext();
550
571
  const {
551
572
  submit,
552
573
  focus,
@@ -555,21 +576,21 @@ const ComposerEditor = forwardRef(
555
576
  canSubmit,
556
577
  isDisabled: isComposerDisabled,
557
578
  isFocused
558
- } = useComposer();
579
+ } = contexts.useComposer();
559
580
  const isDisabled = isComposerDisabled || disabled;
560
- const initialBody = useInitial(defaultValue ?? emptyCommentBody);
561
- const initialEditorValue = useMemo(() => {
562
- return commentBodyToComposerBody(initialBody);
581
+ const initialBody = useInitial.useInitial(defaultValue ?? emptyCommentBody);
582
+ const initialEditorValue = react.useMemo(() => {
583
+ return utils$1.commentBodyToComposerBody(initialBody);
563
584
  }, [initialBody]);
564
- const { Link, Mention, MentionSuggestions, FloatingToolbar } = useMemo(
585
+ const { Link, Mention, MentionSuggestions, FloatingToolbar } = react.useMemo(
565
586
  () => ({ ...defaultEditorComponents, ...components }),
566
587
  [components]
567
588
  );
568
- const [hasFloatingToolbarRange, setHasFloatingToolbarRange] = useState(false);
569
- const resolveMentionSuggestions = useResolveMentionSuggestions();
589
+ const [hasFloatingToolbarRange, setHasFloatingToolbarRange] = react.useState(false);
590
+ const resolveMentionSuggestions = _private.useResolveMentionSuggestions();
570
591
  const hasResolveMentionSuggestions = client ? resolveMentionSuggestions : true;
571
- const [mentionDraft, setMentionDraft] = useState();
572
- const mentionSuggestions = useMentionSuggestions(
592
+ const [mentionDraft, setMentionDraft] = react.useState();
593
+ const mentionSuggestions = _private.useMentionSuggestions(
573
594
  roomId,
574
595
  mentionDraft?.text
575
596
  );
@@ -578,17 +599,17 @@ const ComposerEditor = forwardRef(
578
599
  setPreviousSelectedMentionSuggestionIndex,
579
600
  setNextSelectedMentionSuggestionIndex,
580
601
  setSelectedMentionSuggestionIndex
581
- ] = useIndex(0, mentionSuggestions?.length ?? 0);
582
- const id = useId();
602
+ ] = useIndex.useIndex(0, mentionSuggestions?.length ?? 0);
603
+ const id = react.useId();
583
604
  const floatingToolbarId = `liveblocks-floating-toolbar-${id}`;
584
605
  const suggestionsListId = `liveblocks-suggestions-list-${id}`;
585
- const suggestionsListItemId = useCallback(
606
+ const suggestionsListItemId = react.useCallback(
586
607
  (userId) => userId ? `liveblocks-suggestions-list-item-${id}-${userId}` : void 0,
587
608
  [id]
588
609
  );
589
- const renderElement = useCallback(
610
+ const renderElement = react.useCallback(
590
611
  (props2) => {
591
- return /* @__PURE__ */ jsx(ComposerEditorElement, {
612
+ return /* @__PURE__ */ jsxRuntime.jsx(ComposerEditorElement, {
592
613
  Mention,
593
614
  Link,
594
615
  ...props2
@@ -596,91 +617,91 @@ const ComposerEditor = forwardRef(
596
617
  },
597
618
  [Link, Mention]
598
619
  );
599
- const handleChange = useCallback(
620
+ const handleChange = react.useCallback(
600
621
  (value) => {
601
622
  validate(value);
602
623
  onEditorChange.notify();
603
624
  },
604
625
  [validate, onEditorChange]
605
626
  );
606
- const createMention = useCallback(
627
+ const createMention = react.useCallback(
607
628
  (userId) => {
608
629
  if (!mentionDraft || !userId) {
609
630
  return;
610
631
  }
611
- Transforms.select(editor, mentionDraft.range);
612
- insertMention(editor, userId);
632
+ slate.Transforms.select(editor, mentionDraft.range);
633
+ mentions.insertMention(editor, userId);
613
634
  setMentionDraft(void 0);
614
635
  setSelectedMentionSuggestionIndex(0);
615
636
  },
616
637
  [editor, mentionDraft, setSelectedMentionSuggestionIndex]
617
638
  );
618
- const handleKeyDown = useCallback(
639
+ const handleKeyDown = react.useCallback(
619
640
  (event) => {
620
641
  onKeyDown?.(event);
621
642
  if (event.isDefaultPrevented()) {
622
643
  return;
623
644
  }
624
- if (isKey(event, "ArrowLeft")) {
625
- leaveMarkEdge(editor, "start");
645
+ if (isKey.isKey(event, "ArrowLeft")) {
646
+ marks.leaveMarkEdge(editor, "start");
626
647
  }
627
- if (isKey(event, "ArrowRight")) {
628
- leaveMarkEdge(editor, "end");
648
+ if (isKey.isKey(event, "ArrowRight")) {
649
+ marks.leaveMarkEdge(editor, "end");
629
650
  }
630
651
  if (mentionDraft && mentionSuggestions?.length) {
631
- if (isKey(event, "ArrowDown")) {
652
+ if (isKey.isKey(event, "ArrowDown")) {
632
653
  event.preventDefault();
633
654
  setNextSelectedMentionSuggestionIndex();
634
655
  }
635
- if (isKey(event, "ArrowUp")) {
656
+ if (isKey.isKey(event, "ArrowUp")) {
636
657
  event.preventDefault();
637
658
  setPreviousSelectedMentionSuggestionIndex();
638
659
  }
639
- if (isKey(event, "Enter") || isKey(event, "Tab")) {
660
+ if (isKey.isKey(event, "Enter") || isKey.isKey(event, "Tab")) {
640
661
  event.preventDefault();
641
662
  const userId = mentionSuggestions?.[selectedMentionSuggestionIndex];
642
663
  createMention(userId);
643
664
  }
644
- if (isKey(event, "Escape")) {
665
+ if (isKey.isKey(event, "Escape")) {
645
666
  event.preventDefault();
646
667
  setMentionDraft(void 0);
647
668
  setSelectedMentionSuggestionIndex(0);
648
669
  }
649
670
  } else {
650
671
  if (hasFloatingToolbarRange) {
651
- if (isKey(event, "Escape")) {
672
+ if (isKey.isKey(event, "Escape")) {
652
673
  event.preventDefault();
653
674
  setHasFloatingToolbarRange(false);
654
675
  }
655
676
  }
656
- if (isKey(event, "Escape")) {
677
+ if (isKey.isKey(event, "Escape")) {
657
678
  blur();
658
679
  }
659
- if (isKey(event, "Enter", { shift: false })) {
680
+ if (isKey.isKey(event, "Enter", { shift: false })) {
660
681
  event.preventDefault();
661
682
  if (canSubmit) {
662
683
  submit();
663
684
  }
664
685
  }
665
- if (isKey(event, "Enter", { shift: true })) {
686
+ if (isKey.isKey(event, "Enter", { shift: true })) {
666
687
  event.preventDefault();
667
688
  editor.insertBreak();
668
689
  }
669
- if (isKey(event, "b", { mod: true })) {
690
+ if (isKey.isKey(event, "b", { mod: true })) {
670
691
  event.preventDefault();
671
- toggleMark(editor, "bold");
692
+ marks.toggleMark(editor, "bold");
672
693
  }
673
- if (isKey(event, "i", { mod: true })) {
694
+ if (isKey.isKey(event, "i", { mod: true })) {
674
695
  event.preventDefault();
675
- toggleMark(editor, "italic");
696
+ marks.toggleMark(editor, "italic");
676
697
  }
677
- if (isKey(event, "s", { mod: true, shift: true })) {
698
+ if (isKey.isKey(event, "s", { mod: true, shift: true })) {
678
699
  event.preventDefault();
679
- toggleMark(editor, "strikethrough");
700
+ marks.toggleMark(editor, "strikethrough");
680
701
  }
681
- if (isKey(event, "e", { mod: true })) {
702
+ if (isKey.isKey(event, "e", { mod: true })) {
682
703
  event.preventDefault();
683
- toggleMark(editor, "code");
704
+ marks.toggleMark(editor, "code");
684
705
  }
685
706
  }
686
707
  },
@@ -700,7 +721,7 @@ const ComposerEditor = forwardRef(
700
721
  submit
701
722
  ]
702
723
  );
703
- const handleFocus = useCallback(
724
+ const handleFocus = react.useCallback(
704
725
  (event) => {
705
726
  onFocus?.(event);
706
727
  if (!event.isDefaultPrevented()) {
@@ -709,7 +730,7 @@ const ComposerEditor = forwardRef(
709
730
  },
710
731
  [onFocus, setFocused]
711
732
  );
712
- const handleBlur = useCallback(
733
+ const handleBlur = react.useCallback(
713
734
  (event) => {
714
735
  onBlur?.(event);
715
736
  if (!event.isDefaultPrevented()) {
@@ -718,11 +739,11 @@ const ComposerEditor = forwardRef(
718
739
  },
719
740
  [onBlur, setFocused]
720
741
  );
721
- const selectedMentionSuggestionUserId = useMemo(
742
+ const selectedMentionSuggestionUserId = react.useMemo(
722
743
  () => mentionSuggestions?.[selectedMentionSuggestionIndex],
723
744
  [selectedMentionSuggestionIndex, mentionSuggestions]
724
745
  );
725
- const setSelectedMentionSuggestionUserId = useCallback(
746
+ const setSelectedMentionSuggestionUserId = react.useCallback(
726
747
  (userId) => {
727
748
  const index = mentionSuggestions?.indexOf(userId);
728
749
  if (index !== void 0 && index >= 0) {
@@ -731,7 +752,7 @@ const ComposerEditor = forwardRef(
731
752
  },
732
753
  [setSelectedMentionSuggestionIndex, mentionSuggestions]
733
754
  );
734
- const additionalProps = useMemo(
755
+ const additionalProps = react.useMemo(
735
756
  () => mentionDraft ? {
736
757
  role: "combobox",
737
758
  "aria-autocomplete": "list",
@@ -753,25 +774,25 @@ const ComposerEditor = forwardRef(
753
774
  floatingToolbarId
754
775
  ]
755
776
  );
756
- useImperativeHandle(forwardedRef, () => {
757
- return ReactEditor.toDOMNode(editor, editor);
777
+ react.useImperativeHandle(forwardedRef, () => {
778
+ return slateReact.ReactEditor.toDOMNode(editor, editor);
758
779
  }, [editor]);
759
- useLayoutEffect(() => {
780
+ _private.useLayoutEffect(() => {
760
781
  if (autoFocus) {
761
782
  focus();
762
783
  }
763
784
  }, [autoFocus, editor, focus]);
764
- useLayoutEffect(() => {
785
+ _private.useLayoutEffect(() => {
765
786
  if (isFocused && editor.selection === null) {
766
787
  select();
767
788
  }
768
789
  }, [editor, select, isFocused]);
769
- return /* @__PURE__ */ jsxs(Slate, {
790
+ return /* @__PURE__ */ jsxRuntime.jsxs(slateReact.Slate, {
770
791
  editor,
771
792
  initialValue: initialEditorValue,
772
793
  onChange: handleChange,
773
794
  children: [
774
- /* @__PURE__ */ jsx(Editable, {
795
+ /* @__PURE__ */ jsxRuntime.jsx(slateReact.Editable, {
775
796
  dir,
776
797
  enterKeyHint: mentionDraft ? "enter" : "send",
777
798
  autoCapitalize: "sentences",
@@ -789,7 +810,7 @@ const ComposerEditor = forwardRef(
789
810
  renderLeaf: ComposerEditorLeaf,
790
811
  renderPlaceholder: ComposerEditorPlaceholder
791
812
  }),
792
- hasResolveMentionSuggestions && /* @__PURE__ */ jsx(ComposerEditorMentionSuggestionsWrapper, {
813
+ hasResolveMentionSuggestions && /* @__PURE__ */ jsxRuntime.jsx(ComposerEditorMentionSuggestionsWrapper, {
793
814
  dir,
794
815
  mentionDraft,
795
816
  setMentionDraft,
@@ -801,7 +822,7 @@ const ComposerEditor = forwardRef(
801
822
  onItemSelect: createMention,
802
823
  MentionSuggestions
803
824
  }),
804
- FloatingToolbar && /* @__PURE__ */ jsx(ComposerEditorFloatingToolbarWrapper, {
825
+ FloatingToolbar && /* @__PURE__ */ jsxRuntime.jsx(ComposerEditorFloatingToolbarWrapper, {
805
826
  dir,
806
827
  id: floatingToolbarId,
807
828
  hasFloatingToolbarRange,
@@ -818,14 +839,14 @@ function prepareAttachment(file) {
818
839
  return {
819
840
  type: "localAttachment",
820
841
  status: "idle",
821
- id: createCommentAttachmentId(),
842
+ id: core.createCommentAttachmentId(),
822
843
  name: file.name,
823
844
  size: file.size,
824
845
  mimeType: file.type,
825
846
  file
826
847
  };
827
848
  }
828
- const ComposerForm = forwardRef(
849
+ const ComposerForm = react.forwardRef(
829
850
  ({
830
851
  children,
831
852
  onSubmit,
@@ -838,11 +859,11 @@ const ComposerForm = forwardRef(
838
859
  roomId: _roomId,
839
860
  ...props
840
861
  }, forwardedRef) => {
841
- const Component = asChild ? Slot : "form";
842
- const [isEmpty$1, setEmpty] = useState(true);
843
- const [isSubmitting, setSubmitting] = useState(false);
844
- const [isFocused, setFocused] = useState(false);
845
- const room = useRoomOrNull();
862
+ const Component = asChild ? reactSlot.Slot : "form";
863
+ const [isEmpty$1, setEmpty] = react.useState(true);
864
+ const [isSubmitting, setSubmitting] = react.useState(false);
865
+ const [isFocused, setFocused] = react.useState(false);
866
+ const room = _private.useRoomOrNull();
846
867
  const roomId = _roomId !== void 0 ? _roomId : room?.id;
847
868
  if (roomId === void 0) {
848
869
  throw new Error("Composer.Form must be a descendant of RoomProvider.");
@@ -855,30 +876,30 @@ const ComposerForm = forwardRef(
855
876
  addAttachments,
856
877
  removeAttachment,
857
878
  clearAttachments
858
- } = useComposerAttachmentsManager(defaultAttachments, {
879
+ } = utils$1.useComposerAttachmentsManager(defaultAttachments, {
859
880
  maxFileSize: maxAttachmentSize,
860
881
  roomId
861
882
  });
862
883
  const numberOfAttachments = attachments.length;
863
884
  const hasMaxAttachments = numberOfAttachments >= maxAttachments;
864
- const isDisabled = useMemo(() => {
885
+ const isDisabled = react.useMemo(() => {
865
886
  return isSubmitting || disabled === true;
866
887
  }, [isSubmitting, disabled]);
867
- const canSubmit = useMemo(() => {
888
+ const canSubmit = react.useMemo(() => {
868
889
  return !isEmpty$1 && !isUploadingAttachments;
869
890
  }, [isEmpty$1, isUploadingAttachments]);
870
- const [marks, setMarks] = useState(getMarks);
871
- const ref = useRef(null);
872
- const mergedRefs = useRefs(forwardedRef, ref);
873
- const fileInputRef = useRef(null);
874
- const syncSource = useSyncSource();
891
+ const [marks$1, setMarks] = react.useState(marks.getMarks);
892
+ const ref = react.useRef(null);
893
+ const mergedRefs = useRefs.useRefs(forwardedRef, ref);
894
+ const fileInputRef = react.useRef(null);
895
+ const syncSource = _private.useSyncSource();
875
896
  const isPending = !preventUnsavedChanges ? false : !isEmpty$1 || isUploadingAttachments || attachments.length > 0;
876
- useEffect(() => {
897
+ react.useEffect(() => {
877
898
  syncSource?.setSyncStatus(
878
899
  isPending ? "has-local-changes" : "synchronized"
879
900
  );
880
901
  }, [syncSource, isPending]);
881
- const createAttachments = useCallback(
902
+ const createAttachments = react.useCallback(
882
903
  (files) => {
883
904
  if (!files.length) {
884
905
  return;
@@ -893,86 +914,86 @@ const ComposerForm = forwardRef(
893
914
  },
894
915
  [addAttachments, maxAttachments, numberOfAttachments]
895
916
  );
896
- const createAttachmentsRef = useRef(createAttachments);
897
- useEffect(() => {
917
+ const createAttachmentsRef = react.useRef(createAttachments);
918
+ react.useEffect(() => {
898
919
  createAttachmentsRef.current = createAttachments;
899
920
  }, [createAttachments]);
900
- const stableCreateAttachments = useCallback((files) => {
921
+ const stableCreateAttachments = react.useCallback((files) => {
901
922
  createAttachmentsRef.current(files);
902
923
  }, []);
903
- const editor = useInitial(
924
+ const editor = useInitial.useInitial(
904
925
  () => createComposerEditor({
905
926
  createAttachments: stableCreateAttachments,
906
927
  pasteFilesAsAttachments
907
928
  })
908
929
  );
909
- const onEditorChange = useInitial(makeEventSource);
910
- const validate = useCallback(
930
+ const onEditorChange = useInitial.useInitial(core.makeEventSource);
931
+ const validate = react.useCallback(
911
932
  (value) => {
912
- setEmpty(isEmpty(editor, value));
933
+ setEmpty(isEmpty.isEmpty(editor, value));
913
934
  },
914
935
  [editor]
915
936
  );
916
- const submit = useCallback(() => {
937
+ const submit = react.useCallback(() => {
917
938
  if (!canSubmit) {
918
939
  return;
919
940
  }
920
941
  requestAnimationFrame(() => {
921
942
  if (ref.current) {
922
- requestSubmit(ref.current);
943
+ requestSubmit.requestSubmit(ref.current);
923
944
  }
924
945
  });
925
946
  }, [canSubmit]);
926
- const clear = useCallback(() => {
927
- Transforms.delete(editor, {
947
+ const clear = react.useCallback(() => {
948
+ slate.Transforms.delete(editor, {
928
949
  at: {
929
- anchor: Editor.start(editor, []),
930
- focus: Editor.end(editor, [])
950
+ anchor: slate.Editor.start(editor, []),
951
+ focus: slate.Editor.end(editor, [])
931
952
  }
932
953
  });
933
954
  }, [editor]);
934
- const select = useCallback(() => {
935
- Transforms.select(editor, Editor.end(editor, []));
955
+ const select = react.useCallback(() => {
956
+ slate.Transforms.select(editor, slate.Editor.end(editor, []));
936
957
  }, [editor]);
937
- const focus = useCallback(
958
+ const focus = react.useCallback(
938
959
  (resetSelection = true) => {
939
960
  try {
940
- if (!ReactEditor.isFocused(editor)) {
941
- Transforms.select(
961
+ if (!slateReact.ReactEditor.isFocused(editor)) {
962
+ slate.Transforms.select(
942
963
  editor,
943
- resetSelection || !editor.selection ? Editor.end(editor, []) : editor.selection
964
+ resetSelection || !editor.selection ? slate.Editor.end(editor, []) : editor.selection
944
965
  );
945
- ReactEditor.focus(editor);
966
+ slateReact.ReactEditor.focus(editor);
946
967
  }
947
968
  } catch {
948
969
  }
949
970
  },
950
971
  [editor]
951
972
  );
952
- const blur = useCallback(() => {
973
+ const blur = react.useCallback(() => {
953
974
  try {
954
- ReactEditor.blur(editor);
975
+ slateReact.ReactEditor.blur(editor);
955
976
  } catch {
956
977
  }
957
978
  }, [editor]);
958
- const createMention = useCallback(() => {
979
+ const createMention = react.useCallback(() => {
959
980
  if (disabled) {
960
981
  return;
961
982
  }
962
983
  focus();
963
- insertMentionCharacter(editor);
984
+ mentions.insertMentionCharacter(editor);
964
985
  }, [disabled, editor, focus]);
965
- const insertText$1 = useCallback(
986
+ const insertText = react.useCallback(
966
987
  (text) => {
967
988
  if (disabled) {
968
989
  return;
969
990
  }
970
991
  focus(false);
971
- insertText(editor, text);
992
+ slate.insertText(editor, text);
972
993
  },
973
994
  [disabled, editor, focus]
974
995
  );
975
- const attachFiles = useCallback(() => {
996
+ const attachFiles = react.useCallback(() => {
976
997
  if (disabled) {
977
998
  return;
978
999
  }
@@ -980,7 +1001,7 @@ const ComposerForm = forwardRef(
980
1001
  fileInputRef.current.click();
981
1002
  }
982
1003
  }, [disabled]);
983
- const handleAttachmentsInputChange = useCallback(
1004
+ const handleAttachmentsInputChange = react.useCallback(
984
1005
  (event) => {
985
1006
  if (disabled) {
986
1007
  return;
@@ -992,18 +1013,18 @@ const ComposerForm = forwardRef(
992
1013
  },
993
1014
  [createAttachments, disabled]
994
1015
  );
995
- const onSubmitEnd = useCallback(() => {
1016
+ const onSubmitEnd = react.useCallback(() => {
996
1017
  clear();
997
1018
  blur();
998
1019
  clearAttachments();
999
1020
  setSubmitting(false);
1000
1021
  }, [blur, clear, clearAttachments]);
1001
- const handleSubmit = useCallback(
1022
+ const handleSubmit = react.useCallback(
1002
1023
  (event) => {
1003
1024
  if (disabled) {
1004
1025
  return;
1005
1026
  }
1006
- const isEmpty2 = isEmpty(editor, editor.children);
1027
+ const isEmpty2 = isEmpty.isEmpty(editor, editor.children);
1007
1028
  if (isEmpty2) {
1008
1029
  event.preventDefault();
1009
1030
  return;
@@ -1013,7 +1034,7 @@ const ComposerForm = forwardRef(
1013
1034
  event.preventDefault();
1014
1035
  return;
1015
1036
  }
1016
- const body = composerBodyToCommentBody(
1037
+ const body = utils$1.composerBodyToCommentBody(
1017
1038
  editor.children
1018
1039
  );
1019
1040
  const commentAttachments = attachments.filter(
@@ -1041,19 +1062,19 @@ const ComposerForm = forwardRef(
1041
1062
  },
1042
1063
  [disabled, editor, attachments, onComposerSubmit, onSubmit, onSubmitEnd]
1043
1064
  );
1044
- const stopPropagation = useCallback((event) => {
1065
+ const stopPropagation = react.useCallback((event) => {
1045
1066
  event.stopPropagation();
1046
1067
  }, []);
1047
- const toggleMark$1 = useCallback(
1068
+ const toggleMark = react.useCallback(
1048
1069
  (mark) => {
1049
- toggleMark(editor, mark);
1070
+ marks.toggleMark(editor, mark);
1050
1071
  },
1051
1072
  [editor]
1052
1073
  );
1053
- useObservable(onEditorChange, () => {
1054
- setMarks(getMarks(editor));
1074
+ useObservable.useObservable(onEditorChange, () => {
1075
+ setMarks(marks.getMarks(editor));
1055
1076
  });
1056
- return /* @__PURE__ */ jsx(ComposerEditorContext.Provider, {
1077
+ return /* @__PURE__ */ jsxRuntime.jsx(contexts.ComposerEditorContext.Provider, {
1057
1078
  value: {
1058
1079
  editor,
1059
1080
  validate,
@@ -1061,7 +1082,7 @@ const ComposerForm = forwardRef(
1061
1082
  onEditorChange,
1062
1083
  roomId
1063
1084
  },
1064
- children: /* @__PURE__ */ jsx(ComposerAttachmentsContext.Provider, {
1085
+ children: /* @__PURE__ */ jsxRuntime.jsx(contexts.ComposerAttachmentsContext.Provider, {
1065
1086
  value: {
1066
1087
  createAttachments,
1067
1088
  isUploadingAttachments,
@@ -1069,7 +1090,7 @@ const ComposerForm = forwardRef(
1069
1090
  maxAttachments,
1070
1091
  maxAttachmentSize
1071
1092
  },
1072
- children: /* @__PURE__ */ jsx(ComposerContext.Provider, {
1093
+ children: /* @__PURE__ */ jsxRuntime.jsx(contexts.ComposerContext.Provider, {
1073
1094
  value: {
1074
1095
  isDisabled,
1075
1096
  isFocused,
@@ -1081,19 +1102,19 @@ const ComposerForm = forwardRef(
1081
1102
  focus,
1082
1103
  blur,
1083
1104
  createMention,
1084
- insertText: insertText$1,
1105
+ insertText,
1085
1106
  attachments,
1086
1107
  attachFiles,
1087
1108
  removeAttachment,
1088
- toggleMark: toggleMark$1,
1089
- marks
1109
+ toggleMark,
1110
+ marks: marks$1
1090
1111
  },
1091
- children: /* @__PURE__ */ jsxs(Component, {
1112
+ children: /* @__PURE__ */ jsxRuntime.jsxs(Component, {
1092
1113
  ...props,
1093
1114
  onSubmit: handleSubmit,
1094
1115
  ref: mergedRefs,
1095
1116
  children: [
1096
- /* @__PURE__ */ jsx("input", {
1117
+ /* @__PURE__ */ jsxRuntime.jsx("input", {
1097
1118
  type: "file",
1098
1119
  multiple: true,
1099
1120
  ref: fileInputRef,
@@ -1102,7 +1123,7 @@ const ComposerForm = forwardRef(
1102
1123
  tabIndex: -1,
1103
1124
  style: { display: "none" }
1104
1125
  }),
1105
- /* @__PURE__ */ jsx(Slottable, {
1126
+ /* @__PURE__ */ jsxRuntime.jsx(reactSlot.Slottable, {
1106
1127
  children
1107
1128
  })
1108
1129
  ]
@@ -1112,12 +1133,12 @@ const ComposerForm = forwardRef(
1112
1133
  });
1113
1134
  }
1114
1135
  );
1115
- const ComposerSubmit = forwardRef(
1136
+ const ComposerSubmit = react.forwardRef(
1116
1137
  ({ children, disabled, asChild, ...props }, forwardedRef) => {
1117
- const Component = asChild ? Slot : "button";
1118
- const { canSubmit, isDisabled: isComposerDisabled } = useComposer();
1138
+ const Component = asChild ? reactSlot.Slot : "button";
1139
+ const { canSubmit, isDisabled: isComposerDisabled } = contexts.useComposer();
1119
1140
  const isDisabled = isComposerDisabled || disabled || !canSubmit;
1120
- return /* @__PURE__ */ jsx(Component, {
1141
+ return /* @__PURE__ */ jsxRuntime.jsx(Component, {
1121
1142
  type: "submit",
1122
1143
  ...props,
1123
1144
  ref: forwardedRef,
@@ -1126,12 +1147,12 @@ const ComposerSubmit = forwardRef(
1126
1147
  });
1127
1148
  }
1128
1149
  );
1129
- const ComposerAttachFiles = forwardRef(({ children, onClick, disabled, asChild, ...props }, forwardedRef) => {
1130
- const Component = asChild ? Slot : "button";
1131
- const { hasMaxAttachments } = useComposerAttachmentsContext();
1132
- const { isDisabled: isComposerDisabled, attachFiles } = useComposer();
1150
+ const ComposerAttachFiles = react.forwardRef(({ children, onClick, disabled, asChild, ...props }, forwardedRef) => {
1151
+ const Component = asChild ? reactSlot.Slot : "button";
1152
+ const { hasMaxAttachments } = contexts.useComposerAttachmentsContext();
1153
+ const { isDisabled: isComposerDisabled, attachFiles } = contexts.useComposer();
1133
1154
  const isDisabled = isComposerDisabled || hasMaxAttachments || disabled;
1134
- const handleClick = useCallback(
1155
+ const handleClick = react.useCallback(
1135
1156
  (event) => {
1136
1157
  onClick?.(event);
1137
1158
  if (!event.isDefaultPrevented()) {
@@ -1140,7 +1161,7 @@ const ComposerAttachFiles = forwardRef(({ children, onClick, disabled, asChild,
1140
1161
  },
1141
1162
  [attachFiles, onClick]
1142
1163
  );
1143
- return /* @__PURE__ */ jsx(Component, {
1164
+ return /* @__PURE__ */ jsxRuntime.jsx(Component, {
1144
1165
  type: "button",
1145
1166
  ...props,
1146
1167
  onClick: handleClick,
@@ -1149,7 +1170,7 @@ const ComposerAttachFiles = forwardRef(({ children, onClick, disabled, asChild,
1149
1170
  children
1150
1171
  });
1151
1172
  });
1152
- const ComposerAttachmentsDropArea = forwardRef(
1173
+ const ComposerAttachmentsDropArea = react.forwardRef(
1153
1174
  ({
1154
1175
  onDragEnter,
1155
1176
  onDragLeave,
@@ -1159,17 +1180,17 @@ const ComposerAttachmentsDropArea = forwardRef(
1159
1180
  asChild,
1160
1181
  ...props
1161
1182
  }, forwardedRef) => {
1162
- const Component = asChild ? Slot : "div";
1163
- const { isDisabled: isComposerDisabled } = useComposer();
1183
+ const Component = asChild ? reactSlot.Slot : "div";
1184
+ const { isDisabled: isComposerDisabled } = contexts.useComposer();
1164
1185
  const isDisabled = isComposerDisabled || disabled;
1165
- const [, dropAreaProps] = useComposerAttachmentsDropArea({
1186
+ const [, dropAreaProps] = utils$1.useComposerAttachmentsDropArea({
1166
1187
  onDragEnter,
1167
1188
  onDragLeave,
1168
1189
  onDragOver,
1169
1190
  onDrop,
1170
1191
  disabled: isDisabled
1171
1192
  });
1172
- return /* @__PURE__ */ jsx(Component, {
1193
+ return /* @__PURE__ */ jsxRuntime.jsx(Component, {
1173
1194
  ...dropAreaProps,
1174
1195
  "data-disabled": isDisabled ? "" : void 0,
1175
1196
  ...props,
@@ -1177,11 +1198,11 @@ const ComposerAttachmentsDropArea = forwardRef(
1177
1198
  });
1178
1199
  }
1179
1200
  );
1180
- const ComposerMarkToggle = forwardRef(
1201
+ const ComposerMarkToggle = react.forwardRef(
1181
1202
  ({ children, mark, onValueChange, onClick, asChild, ...props }, forwardedRef) => {
1182
- const Component = asChild ? Slot : "button";
1183
- const { marks, toggleMark } = useComposer();
1184
- const handleClick = useCallback(
1203
+ const Component = asChild ? reactSlot.Slot : "button";
1204
+ const { marks, toggleMark } = contexts.useComposer();
1205
+ const handleClick = react.useCallback(
1185
1206
  (event) => {
1186
1207
  onClick?.(event);
1187
1208
  if (!event.isDefaultPrevented()) {
@@ -1191,12 +1212,12 @@ const ComposerMarkToggle = forwardRef(
1191
1212
  },
1192
1213
  [mark, onClick, onValueChange, toggleMark]
1193
1214
  );
1194
- return /* @__PURE__ */ jsx(TogglePrimitive.Root, {
1215
+ return /* @__PURE__ */ jsxRuntime.jsx(TogglePrimitive__namespace.Root, {
1195
1216
  asChild: true,
1196
1217
  pressed: marks[mark],
1197
1218
  onClick: handleClick,
1198
1219
  ...props,
1199
- children: /* @__PURE__ */ jsx(Component, {
1220
+ children: /* @__PURE__ */ jsxRuntime.jsx(Component, {
1200
1221
  ...props,
1201
1222
  ref: forwardedRef,
1202
1223
  children
@@ -1219,5 +1240,16 @@ if (process.env.NODE_ENV !== "production") {
1219
1240
  ComposerMarkToggle.displayName = COMPOSER_MARK_TOGGLE_NAME;
1220
1241
  }
1221
1242
 
1222
- export { ComposerAttachFiles as AttachFiles, ComposerAttachmentsDropArea as AttachmentsDropArea, ComposerEditor as Editor, ComposerFloatingToolbar as FloatingToolbar, ComposerForm as Form, ComposerLink as Link, ComposerMarkToggle as MarkToggle, ComposerMention as Mention, ComposerSubmit as Submit, ComposerSuggestions as Suggestions, ComposerSuggestionsList as SuggestionsList, ComposerSuggestionsListItem as SuggestionsListItem };
1223
- //# sourceMappingURL=index.mjs.map
1243
+ exports.AttachFiles = ComposerAttachFiles;
1244
+ exports.AttachmentsDropArea = ComposerAttachmentsDropArea;
1245
+ exports.Editor = ComposerEditor;
1246
+ exports.FloatingToolbar = ComposerFloatingToolbar;
1247
+ exports.Form = ComposerForm;
1248
+ exports.Link = ComposerLink;
1249
+ exports.MarkToggle = ComposerMarkToggle;
1250
+ exports.Mention = ComposerMention;
1251
+ exports.Submit = ComposerSubmit;
1252
+ exports.Suggestions = ComposerSuggestions;
1253
+ exports.SuggestionsList = ComposerSuggestionsList;
1254
+ exports.SuggestionsListItem = ComposerSuggestionsListItem;
1255
+ //# sourceMappingURL=index.cjs.map