@contentstack/live-preview-utils 3.1.3 → 3.2.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 (542) hide show
  1. package/README.md +2 -2
  2. package/dist/legacy/configManager/config.default.cjs +15 -0
  3. package/dist/legacy/configManager/config.default.cjs.map +1 -1
  4. package/dist/legacy/configManager/config.default.d.cts +1 -0
  5. package/dist/legacy/configManager/config.default.d.ts +1 -0
  6. package/dist/legacy/configManager/config.default.js +15 -0
  7. package/dist/legacy/configManager/config.default.js.map +1 -1
  8. package/dist/legacy/configManager/configManager.d.cts +1 -0
  9. package/dist/legacy/configManager/configManager.d.ts +1 -0
  10. package/dist/legacy/configManager/handleUserConfig.d.cts +1 -0
  11. package/dist/legacy/configManager/handleUserConfig.d.ts +1 -0
  12. package/dist/legacy/configManager/index.d.cts +1 -0
  13. package/dist/legacy/configManager/index.d.ts +1 -0
  14. package/dist/legacy/index.cjs +45 -1
  15. package/dist/legacy/index.cjs.map +1 -1
  16. package/dist/legacy/index.d.cts +17 -2
  17. package/dist/legacy/index.d.ts +17 -2
  18. package/dist/legacy/index.js +45 -1
  19. package/dist/legacy/index.js.map +1 -1
  20. package/dist/legacy/livePreview/editButton/editButton.d.cts +1 -0
  21. package/dist/legacy/livePreview/editButton/editButton.d.ts +1 -0
  22. package/dist/legacy/livePreview/eventManager/postMessageEvent.hooks.cjs +1 -1
  23. package/dist/legacy/livePreview/eventManager/postMessageEvent.hooks.js +1 -1
  24. package/dist/legacy/livePreview/eventManager/types/livePreviewPostMessageEvent.type.d.cts +1 -0
  25. package/dist/legacy/livePreview/eventManager/types/livePreviewPostMessageEvent.type.d.ts +1 -0
  26. package/dist/legacy/preview/contentstack-live-preview-HOC.cjs +1 -1
  27. package/dist/legacy/preview/contentstack-live-preview-HOC.d.cts +1 -0
  28. package/dist/legacy/preview/contentstack-live-preview-HOC.d.ts +1 -0
  29. package/dist/legacy/preview/contentstack-live-preview-HOC.js +1 -1
  30. package/dist/legacy/types/types.cjs +1 -0
  31. package/dist/legacy/types/types.cjs.map +1 -1
  32. package/dist/legacy/types/types.d.cts +5 -0
  33. package/dist/legacy/types/types.d.ts +5 -0
  34. package/dist/legacy/types/types.js +1 -0
  35. package/dist/legacy/types/types.js.map +1 -1
  36. package/dist/legacy/visualBuilder/collab.style.cjs +660 -0
  37. package/dist/legacy/visualBuilder/collab.style.cjs.map +1 -0
  38. package/dist/legacy/visualBuilder/collab.style.d.cts +84 -0
  39. package/dist/legacy/visualBuilder/collab.style.d.ts +84 -0
  40. package/dist/legacy/visualBuilder/collab.style.js +635 -0
  41. package/dist/legacy/visualBuilder/collab.style.js.map +1 -0
  42. package/dist/legacy/visualBuilder/components/Collab/AsyncLoader/AsyncLoader.cjs +70 -0
  43. package/dist/legacy/visualBuilder/components/Collab/AsyncLoader/AsyncLoader.cjs.map +1 -0
  44. package/dist/legacy/visualBuilder/components/Collab/AsyncLoader/AsyncLoader.d.cts +12 -0
  45. package/dist/legacy/visualBuilder/components/Collab/AsyncLoader/AsyncLoader.d.ts +12 -0
  46. package/dist/legacy/visualBuilder/components/Collab/AsyncLoader/AsyncLoader.js +41 -0
  47. package/dist/legacy/visualBuilder/components/Collab/AsyncLoader/AsyncLoader.js.map +1 -0
  48. package/dist/legacy/visualBuilder/components/Collab/Avatar/Avatar.cjs +116 -0
  49. package/dist/legacy/visualBuilder/components/Collab/Avatar/Avatar.cjs.map +1 -0
  50. package/dist/legacy/visualBuilder/components/Collab/Avatar/Avatar.d.cts +18 -0
  51. package/dist/legacy/visualBuilder/components/Collab/Avatar/Avatar.d.ts +18 -0
  52. package/dist/legacy/visualBuilder/components/Collab/Avatar/Avatar.js +87 -0
  53. package/dist/legacy/visualBuilder/components/Collab/Avatar/Avatar.js.map +1 -0
  54. package/dist/legacy/visualBuilder/components/Collab/Button/Button.cjs +143 -0
  55. package/dist/legacy/visualBuilder/components/Collab/Button/Button.cjs.map +1 -0
  56. package/dist/legacy/visualBuilder/components/Collab/Button/Button.d.cts +29 -0
  57. package/dist/legacy/visualBuilder/components/Collab/Button/Button.d.ts +29 -0
  58. package/dist/legacy/visualBuilder/components/Collab/Button/Button.js +118 -0
  59. package/dist/legacy/visualBuilder/components/Collab/Button/Button.js.map +1 -0
  60. package/dist/legacy/visualBuilder/components/Collab/ButtonGroup/ButtonGroup.cjs +61 -0
  61. package/dist/legacy/visualBuilder/components/Collab/ButtonGroup/ButtonGroup.cjs.map +1 -0
  62. package/dist/legacy/visualBuilder/components/Collab/ButtonGroup/ButtonGroup.d.cts +28 -0
  63. package/dist/legacy/visualBuilder/components/Collab/ButtonGroup/ButtonGroup.d.ts +28 -0
  64. package/dist/legacy/visualBuilder/components/Collab/ButtonGroup/ButtonGroup.js +32 -0
  65. package/dist/legacy/visualBuilder/components/Collab/ButtonGroup/ButtonGroup.js.map +1 -0
  66. package/dist/legacy/visualBuilder/components/Collab/CollabIndicator.cjs +133 -0
  67. package/dist/legacy/visualBuilder/components/Collab/CollabIndicator.cjs.map +1 -0
  68. package/dist/legacy/visualBuilder/components/Collab/CollabIndicator.d.cts +10 -0
  69. package/dist/legacy/visualBuilder/components/Collab/CollabIndicator.d.ts +10 -0
  70. package/dist/legacy/visualBuilder/components/Collab/CollabIndicator.js +104 -0
  71. package/dist/legacy/visualBuilder/components/Collab/CollabIndicator.js.map +1 -0
  72. package/dist/legacy/visualBuilder/components/Collab/Icon/Icon.cjs +87 -0
  73. package/dist/legacy/visualBuilder/components/Collab/Icon/Icon.cjs.map +1 -0
  74. package/dist/legacy/visualBuilder/components/Collab/Icon/Icon.d.cts +19 -0
  75. package/dist/legacy/visualBuilder/components/Collab/Icon/Icon.d.ts +19 -0
  76. package/dist/legacy/visualBuilder/components/Collab/Icon/Icon.js +58 -0
  77. package/dist/legacy/visualBuilder/components/Collab/Icon/Icon.js.map +1 -0
  78. package/dist/legacy/visualBuilder/components/Collab/SkeletonTile/SkeletonTile.cjs +81 -0
  79. package/dist/legacy/visualBuilder/components/Collab/SkeletonTile/SkeletonTile.cjs.map +1 -0
  80. package/dist/legacy/visualBuilder/components/Collab/SkeletonTile/SkeletonTile.d.cts +17 -0
  81. package/dist/legacy/visualBuilder/components/Collab/SkeletonTile/SkeletonTile.d.ts +17 -0
  82. package/dist/legacy/visualBuilder/components/Collab/SkeletonTile/SkeletonTile.js +52 -0
  83. package/dist/legacy/visualBuilder/components/Collab/SkeletonTile/SkeletonTile.js.map +1 -0
  84. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/CommentActionBar.cjs +150 -0
  85. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/CommentActionBar.cjs.map +1 -0
  86. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/CommentActionBar.d.cts +8 -0
  87. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/CommentActionBar.d.ts +8 -0
  88. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/CommentActionBar.js +121 -0
  89. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/CommentActionBar.js.map +1 -0
  90. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/CommentCard.cjs +159 -0
  91. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/CommentCard.cjs.map +1 -0
  92. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/CommentCard.d.cts +8 -0
  93. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/CommentCard.d.ts +8 -0
  94. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/CommentCard.js +130 -0
  95. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/CommentCard.js.map +1 -0
  96. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/CommentResolvedText.cjs +58 -0
  97. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/CommentResolvedText.cjs.map +1 -0
  98. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/CommentResolvedText.d.cts +6 -0
  99. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/CommentResolvedText.d.ts +6 -0
  100. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/CommentResolvedText.js +29 -0
  101. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/CommentResolvedText.js.map +1 -0
  102. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/CommentTextArea.cjs +229 -0
  103. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/CommentTextArea.cjs.map +1 -0
  104. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/CommentTextArea.d.cts +8 -0
  105. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/CommentTextArea.d.ts +8 -0
  106. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/CommentTextArea.js +200 -0
  107. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/CommentTextArea.js.map +1 -0
  108. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/ContextProvider/ThreadProvider.cjs +42 -0
  109. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/ContextProvider/ThreadProvider.cjs.map +1 -0
  110. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/ContextProvider/ThreadProvider.d.cts +8 -0
  111. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/ContextProvider/ThreadProvider.d.ts +8 -0
  112. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/ContextProvider/ThreadProvider.js +9 -0
  113. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/ContextProvider/ThreadProvider.js.map +1 -0
  114. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/ContextProvider/index.cjs +25 -0
  115. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/ContextProvider/index.cjs.map +1 -0
  116. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/ContextProvider/index.d.cts +3 -0
  117. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/ContextProvider/index.d.ts +3 -0
  118. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/ContextProvider/index.js +3 -0
  119. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/ContextProvider/index.js.map +1 -0
  120. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/ThreadActionBar.cjs +92 -0
  121. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/ThreadActionBar.cjs.map +1 -0
  122. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/ThreadActionBar.d.cts +13 -0
  123. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/ThreadActionBar.d.ts +13 -0
  124. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/ThreadActionBar.js +63 -0
  125. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/ThreadActionBar.js.map +1 -0
  126. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/ThreadBody.cjs +155 -0
  127. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/ThreadBody.cjs.map +1 -0
  128. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/ThreadBody.d.cts +8 -0
  129. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/ThreadBody.d.ts +8 -0
  130. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/ThreadBody.js +126 -0
  131. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/ThreadBody.js.map +1 -0
  132. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/ThreadFooter.cjs +93 -0
  133. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/ThreadFooter.cjs.map +1 -0
  134. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/ThreadFooter.d.cts +8 -0
  135. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/ThreadFooter.d.ts +8 -0
  136. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/ThreadFooter.js +64 -0
  137. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/ThreadFooter.js.map +1 -0
  138. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/ThreadHeader.cjs +93 -0
  139. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/ThreadHeader.cjs.map +1 -0
  140. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/ThreadHeader.d.cts +8 -0
  141. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/ThreadHeader.d.ts +8 -0
  142. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/ThreadHeader.js +64 -0
  143. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/ThreadHeader.js.map +1 -0
  144. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/index.cjs +242 -0
  145. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/index.cjs.map +1 -0
  146. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/index.d.cts +8 -0
  147. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/index.d.ts +8 -0
  148. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/index.js +213 -0
  149. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/index.js.map +1 -0
  150. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/loader/ThreadBody.cjs +101 -0
  151. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/loader/ThreadBody.cjs.map +1 -0
  152. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/loader/ThreadBody.d.cts +5 -0
  153. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/loader/ThreadBody.d.ts +5 -0
  154. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/loader/ThreadBody.js +72 -0
  155. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/loader/ThreadBody.js.map +1 -0
  156. package/dist/legacy/visualBuilder/components/Collab/Tooltip/Tooltip.cjs +110 -0
  157. package/dist/legacy/visualBuilder/components/Collab/Tooltip/Tooltip.cjs.map +1 -0
  158. package/dist/legacy/visualBuilder/components/Collab/Tooltip/Tooltip.d.cts +17 -0
  159. package/dist/legacy/visualBuilder/components/Collab/Tooltip/Tooltip.d.ts +17 -0
  160. package/dist/legacy/visualBuilder/components/Collab/Tooltip/Tooltip.js +81 -0
  161. package/dist/legacy/visualBuilder/components/Collab/Tooltip/Tooltip.js.map +1 -0
  162. package/dist/legacy/visualBuilder/components/HighlightedCommentIcon.cjs +6 -1
  163. package/dist/legacy/visualBuilder/components/HighlightedCommentIcon.cjs.map +1 -1
  164. package/dist/legacy/visualBuilder/components/HighlightedCommentIcon.js +6 -1
  165. package/dist/legacy/visualBuilder/components/HighlightedCommentIcon.js.map +1 -1
  166. package/dist/legacy/visualBuilder/components/icons/CollabIcons.cjs +220 -0
  167. package/dist/legacy/visualBuilder/components/icons/CollabIcons.cjs.map +1 -0
  168. package/dist/legacy/visualBuilder/components/icons/CollabIcons.d.cts +16 -0
  169. package/dist/legacy/visualBuilder/components/icons/CollabIcons.d.ts +16 -0
  170. package/dist/legacy/visualBuilder/components/icons/CollabIcons.js +197 -0
  171. package/dist/legacy/visualBuilder/components/icons/CollabIcons.js.map +1 -0
  172. package/dist/legacy/visualBuilder/components/icons/index.cjs +16 -16
  173. package/dist/legacy/visualBuilder/components/icons/index.cjs.map +1 -1
  174. package/dist/legacy/visualBuilder/components/icons/index.js +16 -16
  175. package/dist/legacy/visualBuilder/components/icons/index.js.map +1 -1
  176. package/dist/legacy/visualBuilder/components/startEditingButton.d.cts +1 -0
  177. package/dist/legacy/visualBuilder/components/startEditingButton.d.ts +1 -0
  178. package/dist/legacy/visualBuilder/eventManager/useCollab.cjs +180 -0
  179. package/dist/legacy/visualBuilder/eventManager/useCollab.cjs.map +1 -0
  180. package/dist/legacy/visualBuilder/eventManager/useCollab.d.cts +3 -0
  181. package/dist/legacy/visualBuilder/eventManager/useCollab.d.ts +3 -0
  182. package/dist/legacy/visualBuilder/eventManager/useCollab.js +156 -0
  183. package/dist/legacy/visualBuilder/eventManager/useCollab.js.map +1 -0
  184. package/dist/legacy/visualBuilder/eventManager/useHideFocusOverlayPostMessageEvent.cjs +7 -2
  185. package/dist/legacy/visualBuilder/eventManager/useHideFocusOverlayPostMessageEvent.cjs.map +1 -1
  186. package/dist/legacy/visualBuilder/eventManager/useHideFocusOverlayPostMessageEvent.js +7 -2
  187. package/dist/legacy/visualBuilder/eventManager/useHideFocusOverlayPostMessageEvent.js.map +1 -1
  188. package/dist/legacy/visualBuilder/generators/generateCustomCursor.cjs +2 -1
  189. package/dist/legacy/visualBuilder/generators/generateCustomCursor.cjs.map +1 -1
  190. package/dist/legacy/visualBuilder/generators/generateCustomCursor.d.cts +2 -2
  191. package/dist/legacy/visualBuilder/generators/generateCustomCursor.d.ts +2 -2
  192. package/dist/legacy/visualBuilder/generators/generateCustomCursor.js +2 -1
  193. package/dist/legacy/visualBuilder/generators/generateCustomCursor.js.map +1 -1
  194. package/dist/legacy/visualBuilder/generators/generateHighlightedComment.cjs +2 -2
  195. package/dist/legacy/visualBuilder/generators/generateHighlightedComment.cjs.map +1 -1
  196. package/dist/legacy/visualBuilder/generators/generateHighlightedComment.js +2 -2
  197. package/dist/legacy/visualBuilder/generators/generateHighlightedComment.js.map +1 -1
  198. package/dist/legacy/visualBuilder/generators/generateThread.cjs +496 -0
  199. package/dist/legacy/visualBuilder/generators/generateThread.cjs.map +1 -0
  200. package/dist/legacy/visualBuilder/generators/generateThread.d.cts +27 -0
  201. package/dist/legacy/visualBuilder/generators/generateThread.d.ts +27 -0
  202. package/dist/legacy/visualBuilder/generators/generateThread.js +445 -0
  203. package/dist/legacy/visualBuilder/generators/generateThread.js.map +1 -0
  204. package/dist/legacy/visualBuilder/hooks/use-infinite-scroll/useInfiniteScroll.cjs +63 -0
  205. package/dist/legacy/visualBuilder/hooks/use-infinite-scroll/useInfiniteScroll.cjs.map +1 -0
  206. package/dist/legacy/visualBuilder/hooks/use-infinite-scroll/useInfiniteScroll.d.cts +11 -0
  207. package/dist/legacy/visualBuilder/hooks/use-infinite-scroll/useInfiniteScroll.d.ts +11 -0
  208. package/dist/legacy/visualBuilder/hooks/use-infinite-scroll/useInfiniteScroll.js +44 -0
  209. package/dist/legacy/visualBuilder/hooks/use-infinite-scroll/useInfiniteScroll.js.map +1 -0
  210. package/dist/legacy/visualBuilder/hooks/useCollabIndicator.cjs +130 -0
  211. package/dist/legacy/visualBuilder/hooks/useCollabIndicator.cjs.map +1 -0
  212. package/dist/legacy/visualBuilder/hooks/useCollabIndicator.d.cts +20 -0
  213. package/dist/legacy/visualBuilder/hooks/useCollabIndicator.d.ts +20 -0
  214. package/dist/legacy/visualBuilder/hooks/useCollabIndicator.js +97 -0
  215. package/dist/legacy/visualBuilder/hooks/useCollabIndicator.js.map +1 -0
  216. package/dist/legacy/visualBuilder/hooks/useCollabOperations.cjs +147 -0
  217. package/dist/legacy/visualBuilder/hooks/useCollabOperations.cjs.map +1 -0
  218. package/dist/legacy/visualBuilder/hooks/useCollabOperations.d.cts +16 -0
  219. package/dist/legacy/visualBuilder/hooks/useCollabOperations.d.ts +16 -0
  220. package/dist/legacy/visualBuilder/hooks/useCollabOperations.js +114 -0
  221. package/dist/legacy/visualBuilder/hooks/useCollabOperations.js.map +1 -0
  222. package/dist/legacy/visualBuilder/hooks/useCommentTextArea.cjs +428 -0
  223. package/dist/legacy/visualBuilder/hooks/useCommentTextArea.cjs.map +1 -0
  224. package/dist/legacy/visualBuilder/hooks/useCommentTextArea.d.cts +27 -0
  225. package/dist/legacy/visualBuilder/hooks/useCommentTextArea.d.ts +27 -0
  226. package/dist/legacy/visualBuilder/hooks/useCommentTextArea.js +407 -0
  227. package/dist/legacy/visualBuilder/hooks/useCommentTextArea.js.map +1 -0
  228. package/dist/legacy/visualBuilder/hooks/useDynamicTextareaRows.cjs +42 -0
  229. package/dist/legacy/visualBuilder/hooks/useDynamicTextareaRows.cjs.map +1 -0
  230. package/dist/legacy/visualBuilder/hooks/useDynamicTextareaRows.d.cts +3 -0
  231. package/dist/legacy/visualBuilder/hooks/useDynamicTextareaRows.d.ts +3 -0
  232. package/dist/legacy/visualBuilder/hooks/useDynamicTextareaRows.js +23 -0
  233. package/dist/legacy/visualBuilder/hooks/useDynamicTextareaRows.js.map +1 -0
  234. package/dist/legacy/visualBuilder/index.cjs +80 -28
  235. package/dist/legacy/visualBuilder/index.cjs.map +1 -1
  236. package/dist/legacy/visualBuilder/index.d.cts +1 -0
  237. package/dist/legacy/visualBuilder/index.d.ts +1 -0
  238. package/dist/legacy/visualBuilder/index.js +89 -28
  239. package/dist/legacy/visualBuilder/index.js.map +1 -1
  240. package/dist/legacy/visualBuilder/listeners/mouseClick.cjs +34 -0
  241. package/dist/legacy/visualBuilder/listeners/mouseClick.cjs.map +1 -1
  242. package/dist/legacy/visualBuilder/listeners/mouseClick.js +34 -0
  243. package/dist/legacy/visualBuilder/listeners/mouseClick.js.map +1 -1
  244. package/dist/legacy/visualBuilder/listeners/mouseHover.cjs +49 -6
  245. package/dist/legacy/visualBuilder/listeners/mouseHover.cjs.map +1 -1
  246. package/dist/legacy/visualBuilder/listeners/mouseHover.js +39 -6
  247. package/dist/legacy/visualBuilder/listeners/mouseHover.js.map +1 -1
  248. package/dist/legacy/visualBuilder/types/collab.types.cjs +19 -0
  249. package/dist/legacy/visualBuilder/types/collab.types.cjs.map +1 -0
  250. package/dist/legacy/visualBuilder/types/collab.types.d.cts +253 -0
  251. package/dist/legacy/visualBuilder/types/collab.types.d.ts +253 -0
  252. package/dist/legacy/visualBuilder/types/collab.types.js +1 -0
  253. package/dist/legacy/visualBuilder/types/collab.types.js.map +1 -0
  254. package/dist/legacy/visualBuilder/utils/collabUtils.cjs +221 -0
  255. package/dist/legacy/visualBuilder/utils/collabUtils.cjs.map +1 -0
  256. package/dist/legacy/visualBuilder/utils/collabUtils.d.cts +76 -0
  257. package/dist/legacy/visualBuilder/utils/collabUtils.d.ts +76 -0
  258. package/dist/legacy/visualBuilder/utils/collabUtils.js +177 -0
  259. package/dist/legacy/visualBuilder/utils/collabUtils.js.map +1 -0
  260. package/dist/legacy/visualBuilder/utils/constants.cjs +6 -0
  261. package/dist/legacy/visualBuilder/utils/constants.cjs.map +1 -1
  262. package/dist/legacy/visualBuilder/utils/constants.d.cts +3 -1
  263. package/dist/legacy/visualBuilder/utils/constants.d.ts +3 -1
  264. package/dist/legacy/visualBuilder/utils/constants.js +4 -0
  265. package/dist/legacy/visualBuilder/utils/constants.js.map +1 -1
  266. package/dist/legacy/visualBuilder/utils/types/postMessage.types.cjs +14 -0
  267. package/dist/legacy/visualBuilder/utils/types/postMessage.types.cjs.map +1 -1
  268. package/dist/legacy/visualBuilder/utils/types/postMessage.types.d.cts +15 -1
  269. package/dist/legacy/visualBuilder/utils/types/postMessage.types.d.ts +15 -1
  270. package/dist/legacy/visualBuilder/utils/types/postMessage.types.js +14 -0
  271. package/dist/legacy/visualBuilder/utils/types/postMessage.types.js.map +1 -1
  272. package/dist/modern/configManager/config.default.cjs +15 -0
  273. package/dist/modern/configManager/config.default.cjs.map +1 -1
  274. package/dist/modern/configManager/config.default.d.cts +1 -0
  275. package/dist/modern/configManager/config.default.d.ts +1 -0
  276. package/dist/modern/configManager/config.default.js +15 -0
  277. package/dist/modern/configManager/config.default.js.map +1 -1
  278. package/dist/modern/configManager/configManager.d.cts +1 -0
  279. package/dist/modern/configManager/configManager.d.ts +1 -0
  280. package/dist/modern/configManager/handleUserConfig.d.cts +1 -0
  281. package/dist/modern/configManager/handleUserConfig.d.ts +1 -0
  282. package/dist/modern/configManager/index.d.cts +1 -0
  283. package/dist/modern/configManager/index.d.ts +1 -0
  284. package/dist/modern/index.cjs +45 -1
  285. package/dist/modern/index.cjs.map +1 -1
  286. package/dist/modern/index.d.cts +17 -2
  287. package/dist/modern/index.d.ts +17 -2
  288. package/dist/modern/index.js +45 -1
  289. package/dist/modern/index.js.map +1 -1
  290. package/dist/modern/livePreview/editButton/editButton.d.cts +1 -0
  291. package/dist/modern/livePreview/editButton/editButton.d.ts +1 -0
  292. package/dist/modern/livePreview/eventManager/postMessageEvent.hooks.cjs +1 -1
  293. package/dist/modern/livePreview/eventManager/postMessageEvent.hooks.js +1 -1
  294. package/dist/modern/livePreview/eventManager/types/livePreviewPostMessageEvent.type.d.cts +1 -0
  295. package/dist/modern/livePreview/eventManager/types/livePreviewPostMessageEvent.type.d.ts +1 -0
  296. package/dist/modern/preview/contentstack-live-preview-HOC.cjs +1 -1
  297. package/dist/modern/preview/contentstack-live-preview-HOC.d.cts +1 -0
  298. package/dist/modern/preview/contentstack-live-preview-HOC.d.ts +1 -0
  299. package/dist/modern/preview/contentstack-live-preview-HOC.js +1 -1
  300. package/dist/modern/types/types.cjs +1 -0
  301. package/dist/modern/types/types.cjs.map +1 -1
  302. package/dist/modern/types/types.d.cts +5 -0
  303. package/dist/modern/types/types.d.ts +5 -0
  304. package/dist/modern/types/types.js +1 -0
  305. package/dist/modern/types/types.js.map +1 -1
  306. package/dist/modern/visualBuilder/collab.style.cjs +660 -0
  307. package/dist/modern/visualBuilder/collab.style.cjs.map +1 -0
  308. package/dist/modern/visualBuilder/collab.style.d.cts +84 -0
  309. package/dist/modern/visualBuilder/collab.style.d.ts +84 -0
  310. package/dist/modern/visualBuilder/collab.style.js +635 -0
  311. package/dist/modern/visualBuilder/collab.style.js.map +1 -0
  312. package/dist/modern/visualBuilder/components/Collab/AsyncLoader/AsyncLoader.cjs +70 -0
  313. package/dist/modern/visualBuilder/components/Collab/AsyncLoader/AsyncLoader.cjs.map +1 -0
  314. package/dist/modern/visualBuilder/components/Collab/AsyncLoader/AsyncLoader.d.cts +12 -0
  315. package/dist/modern/visualBuilder/components/Collab/AsyncLoader/AsyncLoader.d.ts +12 -0
  316. package/dist/modern/visualBuilder/components/Collab/AsyncLoader/AsyncLoader.js +41 -0
  317. package/dist/modern/visualBuilder/components/Collab/AsyncLoader/AsyncLoader.js.map +1 -0
  318. package/dist/modern/visualBuilder/components/Collab/Avatar/Avatar.cjs +116 -0
  319. package/dist/modern/visualBuilder/components/Collab/Avatar/Avatar.cjs.map +1 -0
  320. package/dist/modern/visualBuilder/components/Collab/Avatar/Avatar.d.cts +18 -0
  321. package/dist/modern/visualBuilder/components/Collab/Avatar/Avatar.d.ts +18 -0
  322. package/dist/modern/visualBuilder/components/Collab/Avatar/Avatar.js +87 -0
  323. package/dist/modern/visualBuilder/components/Collab/Avatar/Avatar.js.map +1 -0
  324. package/dist/modern/visualBuilder/components/Collab/Button/Button.cjs +143 -0
  325. package/dist/modern/visualBuilder/components/Collab/Button/Button.cjs.map +1 -0
  326. package/dist/modern/visualBuilder/components/Collab/Button/Button.d.cts +29 -0
  327. package/dist/modern/visualBuilder/components/Collab/Button/Button.d.ts +29 -0
  328. package/dist/modern/visualBuilder/components/Collab/Button/Button.js +118 -0
  329. package/dist/modern/visualBuilder/components/Collab/Button/Button.js.map +1 -0
  330. package/dist/modern/visualBuilder/components/Collab/ButtonGroup/ButtonGroup.cjs +61 -0
  331. package/dist/modern/visualBuilder/components/Collab/ButtonGroup/ButtonGroup.cjs.map +1 -0
  332. package/dist/modern/visualBuilder/components/Collab/ButtonGroup/ButtonGroup.d.cts +28 -0
  333. package/dist/modern/visualBuilder/components/Collab/ButtonGroup/ButtonGroup.d.ts +28 -0
  334. package/dist/modern/visualBuilder/components/Collab/ButtonGroup/ButtonGroup.js +32 -0
  335. package/dist/modern/visualBuilder/components/Collab/ButtonGroup/ButtonGroup.js.map +1 -0
  336. package/dist/modern/visualBuilder/components/Collab/CollabIndicator.cjs +130 -0
  337. package/dist/modern/visualBuilder/components/Collab/CollabIndicator.cjs.map +1 -0
  338. package/dist/modern/visualBuilder/components/Collab/CollabIndicator.d.cts +10 -0
  339. package/dist/modern/visualBuilder/components/Collab/CollabIndicator.d.ts +10 -0
  340. package/dist/modern/visualBuilder/components/Collab/CollabIndicator.js +101 -0
  341. package/dist/modern/visualBuilder/components/Collab/CollabIndicator.js.map +1 -0
  342. package/dist/modern/visualBuilder/components/Collab/Icon/Icon.cjs +87 -0
  343. package/dist/modern/visualBuilder/components/Collab/Icon/Icon.cjs.map +1 -0
  344. package/dist/modern/visualBuilder/components/Collab/Icon/Icon.d.cts +19 -0
  345. package/dist/modern/visualBuilder/components/Collab/Icon/Icon.d.ts +19 -0
  346. package/dist/modern/visualBuilder/components/Collab/Icon/Icon.js +58 -0
  347. package/dist/modern/visualBuilder/components/Collab/Icon/Icon.js.map +1 -0
  348. package/dist/modern/visualBuilder/components/Collab/SkeletonTile/SkeletonTile.cjs +81 -0
  349. package/dist/modern/visualBuilder/components/Collab/SkeletonTile/SkeletonTile.cjs.map +1 -0
  350. package/dist/modern/visualBuilder/components/Collab/SkeletonTile/SkeletonTile.d.cts +17 -0
  351. package/dist/modern/visualBuilder/components/Collab/SkeletonTile/SkeletonTile.d.ts +17 -0
  352. package/dist/modern/visualBuilder/components/Collab/SkeletonTile/SkeletonTile.js +52 -0
  353. package/dist/modern/visualBuilder/components/Collab/SkeletonTile/SkeletonTile.js.map +1 -0
  354. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/CommentActionBar.cjs +150 -0
  355. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/CommentActionBar.cjs.map +1 -0
  356. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/CommentActionBar.d.cts +8 -0
  357. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/CommentActionBar.d.ts +8 -0
  358. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/CommentActionBar.js +121 -0
  359. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/CommentActionBar.js.map +1 -0
  360. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/CommentCard.cjs +159 -0
  361. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/CommentCard.cjs.map +1 -0
  362. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/CommentCard.d.cts +8 -0
  363. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/CommentCard.d.ts +8 -0
  364. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/CommentCard.js +130 -0
  365. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/CommentCard.js.map +1 -0
  366. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/CommentResolvedText.cjs +58 -0
  367. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/CommentResolvedText.cjs.map +1 -0
  368. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/CommentResolvedText.d.cts +6 -0
  369. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/CommentResolvedText.d.ts +6 -0
  370. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/CommentResolvedText.js +29 -0
  371. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/CommentResolvedText.js.map +1 -0
  372. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/CommentTextArea.cjs +225 -0
  373. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/CommentTextArea.cjs.map +1 -0
  374. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/CommentTextArea.d.cts +8 -0
  375. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/CommentTextArea.d.ts +8 -0
  376. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/CommentTextArea.js +196 -0
  377. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/CommentTextArea.js.map +1 -0
  378. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/ContextProvider/ThreadProvider.cjs +42 -0
  379. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/ContextProvider/ThreadProvider.cjs.map +1 -0
  380. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/ContextProvider/ThreadProvider.d.cts +8 -0
  381. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/ContextProvider/ThreadProvider.d.ts +8 -0
  382. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/ContextProvider/ThreadProvider.js +9 -0
  383. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/ContextProvider/ThreadProvider.js.map +1 -0
  384. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/ContextProvider/index.cjs +25 -0
  385. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/ContextProvider/index.cjs.map +1 -0
  386. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/ContextProvider/index.d.cts +3 -0
  387. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/ContextProvider/index.d.ts +3 -0
  388. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/ContextProvider/index.js +3 -0
  389. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/ContextProvider/index.js.map +1 -0
  390. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/ThreadActionBar.cjs +92 -0
  391. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/ThreadActionBar.cjs.map +1 -0
  392. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/ThreadActionBar.d.cts +13 -0
  393. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/ThreadActionBar.d.ts +13 -0
  394. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/ThreadActionBar.js +63 -0
  395. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/ThreadActionBar.js.map +1 -0
  396. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/ThreadBody.cjs +155 -0
  397. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/ThreadBody.cjs.map +1 -0
  398. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/ThreadBody.d.cts +8 -0
  399. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/ThreadBody.d.ts +8 -0
  400. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/ThreadBody.js +126 -0
  401. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/ThreadBody.js.map +1 -0
  402. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/ThreadFooter.cjs +92 -0
  403. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/ThreadFooter.cjs.map +1 -0
  404. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/ThreadFooter.d.cts +8 -0
  405. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/ThreadFooter.d.ts +8 -0
  406. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/ThreadFooter.js +63 -0
  407. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/ThreadFooter.js.map +1 -0
  408. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/ThreadHeader.cjs +93 -0
  409. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/ThreadHeader.cjs.map +1 -0
  410. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/ThreadHeader.d.cts +8 -0
  411. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/ThreadHeader.d.ts +8 -0
  412. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/ThreadHeader.js +64 -0
  413. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/ThreadHeader.js.map +1 -0
  414. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/index.cjs +241 -0
  415. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/index.cjs.map +1 -0
  416. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/index.d.cts +8 -0
  417. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/index.d.ts +8 -0
  418. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/index.js +212 -0
  419. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/index.js.map +1 -0
  420. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/loader/ThreadBody.cjs +101 -0
  421. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/loader/ThreadBody.cjs.map +1 -0
  422. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/loader/ThreadBody.d.cts +5 -0
  423. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/loader/ThreadBody.d.ts +5 -0
  424. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/loader/ThreadBody.js +72 -0
  425. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/loader/ThreadBody.js.map +1 -0
  426. package/dist/modern/visualBuilder/components/Collab/Tooltip/Tooltip.cjs +110 -0
  427. package/dist/modern/visualBuilder/components/Collab/Tooltip/Tooltip.cjs.map +1 -0
  428. package/dist/modern/visualBuilder/components/Collab/Tooltip/Tooltip.d.cts +17 -0
  429. package/dist/modern/visualBuilder/components/Collab/Tooltip/Tooltip.d.ts +17 -0
  430. package/dist/modern/visualBuilder/components/Collab/Tooltip/Tooltip.js +81 -0
  431. package/dist/modern/visualBuilder/components/Collab/Tooltip/Tooltip.js.map +1 -0
  432. package/dist/modern/visualBuilder/components/HighlightedCommentIcon.cjs +6 -1
  433. package/dist/modern/visualBuilder/components/HighlightedCommentIcon.cjs.map +1 -1
  434. package/dist/modern/visualBuilder/components/HighlightedCommentIcon.js +6 -1
  435. package/dist/modern/visualBuilder/components/HighlightedCommentIcon.js.map +1 -1
  436. package/dist/modern/visualBuilder/components/icons/CollabIcons.cjs +220 -0
  437. package/dist/modern/visualBuilder/components/icons/CollabIcons.cjs.map +1 -0
  438. package/dist/modern/visualBuilder/components/icons/CollabIcons.d.cts +16 -0
  439. package/dist/modern/visualBuilder/components/icons/CollabIcons.d.ts +16 -0
  440. package/dist/modern/visualBuilder/components/icons/CollabIcons.js +197 -0
  441. package/dist/modern/visualBuilder/components/icons/CollabIcons.js.map +1 -0
  442. package/dist/modern/visualBuilder/components/icons/index.cjs +16 -16
  443. package/dist/modern/visualBuilder/components/icons/index.cjs.map +1 -1
  444. package/dist/modern/visualBuilder/components/icons/index.js +16 -16
  445. package/dist/modern/visualBuilder/components/icons/index.js.map +1 -1
  446. package/dist/modern/visualBuilder/components/startEditingButton.d.cts +1 -0
  447. package/dist/modern/visualBuilder/components/startEditingButton.d.ts +1 -0
  448. package/dist/modern/visualBuilder/eventManager/useCollab.cjs +173 -0
  449. package/dist/modern/visualBuilder/eventManager/useCollab.cjs.map +1 -0
  450. package/dist/modern/visualBuilder/eventManager/useCollab.d.cts +3 -0
  451. package/dist/modern/visualBuilder/eventManager/useCollab.d.ts +3 -0
  452. package/dist/modern/visualBuilder/eventManager/useCollab.js +149 -0
  453. package/dist/modern/visualBuilder/eventManager/useCollab.js.map +1 -0
  454. package/dist/modern/visualBuilder/eventManager/useHideFocusOverlayPostMessageEvent.cjs +5 -0
  455. package/dist/modern/visualBuilder/eventManager/useHideFocusOverlayPostMessageEvent.cjs.map +1 -1
  456. package/dist/modern/visualBuilder/eventManager/useHideFocusOverlayPostMessageEvent.js +5 -0
  457. package/dist/modern/visualBuilder/eventManager/useHideFocusOverlayPostMessageEvent.js.map +1 -1
  458. package/dist/modern/visualBuilder/generators/generateCustomCursor.cjs +2 -1
  459. package/dist/modern/visualBuilder/generators/generateCustomCursor.cjs.map +1 -1
  460. package/dist/modern/visualBuilder/generators/generateCustomCursor.d.cts +2 -2
  461. package/dist/modern/visualBuilder/generators/generateCustomCursor.d.ts +2 -2
  462. package/dist/modern/visualBuilder/generators/generateCustomCursor.js +2 -1
  463. package/dist/modern/visualBuilder/generators/generateCustomCursor.js.map +1 -1
  464. package/dist/modern/visualBuilder/generators/generateHighlightedComment.cjs +2 -2
  465. package/dist/modern/visualBuilder/generators/generateHighlightedComment.cjs.map +1 -1
  466. package/dist/modern/visualBuilder/generators/generateHighlightedComment.js +2 -2
  467. package/dist/modern/visualBuilder/generators/generateHighlightedComment.js.map +1 -1
  468. package/dist/modern/visualBuilder/generators/generateThread.cjs +492 -0
  469. package/dist/modern/visualBuilder/generators/generateThread.cjs.map +1 -0
  470. package/dist/modern/visualBuilder/generators/generateThread.d.cts +27 -0
  471. package/dist/modern/visualBuilder/generators/generateThread.d.ts +27 -0
  472. package/dist/modern/visualBuilder/generators/generateThread.js +441 -0
  473. package/dist/modern/visualBuilder/generators/generateThread.js.map +1 -0
  474. package/dist/modern/visualBuilder/hooks/use-infinite-scroll/useInfiniteScroll.cjs +63 -0
  475. package/dist/modern/visualBuilder/hooks/use-infinite-scroll/useInfiniteScroll.cjs.map +1 -0
  476. package/dist/modern/visualBuilder/hooks/use-infinite-scroll/useInfiniteScroll.d.cts +11 -0
  477. package/dist/modern/visualBuilder/hooks/use-infinite-scroll/useInfiniteScroll.d.ts +11 -0
  478. package/dist/modern/visualBuilder/hooks/use-infinite-scroll/useInfiniteScroll.js +44 -0
  479. package/dist/modern/visualBuilder/hooks/use-infinite-scroll/useInfiniteScroll.js.map +1 -0
  480. package/dist/modern/visualBuilder/hooks/useCollabIndicator.cjs +128 -0
  481. package/dist/modern/visualBuilder/hooks/useCollabIndicator.cjs.map +1 -0
  482. package/dist/modern/visualBuilder/hooks/useCollabIndicator.d.cts +20 -0
  483. package/dist/modern/visualBuilder/hooks/useCollabIndicator.d.ts +20 -0
  484. package/dist/modern/visualBuilder/hooks/useCollabIndicator.js +95 -0
  485. package/dist/modern/visualBuilder/hooks/useCollabIndicator.js.map +1 -0
  486. package/dist/modern/visualBuilder/hooks/useCollabOperations.cjs +140 -0
  487. package/dist/modern/visualBuilder/hooks/useCollabOperations.cjs.map +1 -0
  488. package/dist/modern/visualBuilder/hooks/useCollabOperations.d.cts +16 -0
  489. package/dist/modern/visualBuilder/hooks/useCollabOperations.d.ts +16 -0
  490. package/dist/modern/visualBuilder/hooks/useCollabOperations.js +107 -0
  491. package/dist/modern/visualBuilder/hooks/useCollabOperations.js.map +1 -0
  492. package/dist/modern/visualBuilder/hooks/useCommentTextArea.cjs +423 -0
  493. package/dist/modern/visualBuilder/hooks/useCommentTextArea.cjs.map +1 -0
  494. package/dist/modern/visualBuilder/hooks/useCommentTextArea.d.cts +27 -0
  495. package/dist/modern/visualBuilder/hooks/useCommentTextArea.d.ts +27 -0
  496. package/dist/modern/visualBuilder/hooks/useCommentTextArea.js +402 -0
  497. package/dist/modern/visualBuilder/hooks/useCommentTextArea.js.map +1 -0
  498. package/dist/modern/visualBuilder/hooks/useDynamicTextareaRows.cjs +42 -0
  499. package/dist/modern/visualBuilder/hooks/useDynamicTextareaRows.cjs.map +1 -0
  500. package/dist/modern/visualBuilder/hooks/useDynamicTextareaRows.d.cts +3 -0
  501. package/dist/modern/visualBuilder/hooks/useDynamicTextareaRows.d.ts +3 -0
  502. package/dist/modern/visualBuilder/hooks/useDynamicTextareaRows.js +23 -0
  503. package/dist/modern/visualBuilder/hooks/useDynamicTextareaRows.js.map +1 -0
  504. package/dist/modern/visualBuilder/index.cjs +80 -28
  505. package/dist/modern/visualBuilder/index.cjs.map +1 -1
  506. package/dist/modern/visualBuilder/index.d.cts +1 -0
  507. package/dist/modern/visualBuilder/index.d.ts +1 -0
  508. package/dist/modern/visualBuilder/index.js +89 -28
  509. package/dist/modern/visualBuilder/index.js.map +1 -1
  510. package/dist/modern/visualBuilder/listeners/mouseClick.cjs +34 -0
  511. package/dist/modern/visualBuilder/listeners/mouseClick.cjs.map +1 -1
  512. package/dist/modern/visualBuilder/listeners/mouseClick.js +34 -0
  513. package/dist/modern/visualBuilder/listeners/mouseClick.js.map +1 -1
  514. package/dist/modern/visualBuilder/listeners/mouseHover.cjs +49 -6
  515. package/dist/modern/visualBuilder/listeners/mouseHover.cjs.map +1 -1
  516. package/dist/modern/visualBuilder/listeners/mouseHover.js +39 -6
  517. package/dist/modern/visualBuilder/listeners/mouseHover.js.map +1 -1
  518. package/dist/modern/visualBuilder/types/collab.types.cjs +19 -0
  519. package/dist/modern/visualBuilder/types/collab.types.cjs.map +1 -0
  520. package/dist/modern/visualBuilder/types/collab.types.d.cts +253 -0
  521. package/dist/modern/visualBuilder/types/collab.types.d.ts +253 -0
  522. package/dist/modern/visualBuilder/types/collab.types.js +1 -0
  523. package/dist/modern/visualBuilder/types/collab.types.js.map +1 -0
  524. package/dist/modern/visualBuilder/utils/collabUtils.cjs +219 -0
  525. package/dist/modern/visualBuilder/utils/collabUtils.cjs.map +1 -0
  526. package/dist/modern/visualBuilder/utils/collabUtils.d.cts +76 -0
  527. package/dist/modern/visualBuilder/utils/collabUtils.d.ts +76 -0
  528. package/dist/modern/visualBuilder/utils/collabUtils.js +175 -0
  529. package/dist/modern/visualBuilder/utils/collabUtils.js.map +1 -0
  530. package/dist/modern/visualBuilder/utils/constants.cjs +6 -0
  531. package/dist/modern/visualBuilder/utils/constants.cjs.map +1 -1
  532. package/dist/modern/visualBuilder/utils/constants.d.cts +3 -1
  533. package/dist/modern/visualBuilder/utils/constants.d.ts +3 -1
  534. package/dist/modern/visualBuilder/utils/constants.js +4 -0
  535. package/dist/modern/visualBuilder/utils/constants.js.map +1 -1
  536. package/dist/modern/visualBuilder/utils/types/postMessage.types.cjs +14 -0
  537. package/dist/modern/visualBuilder/utils/types/postMessage.types.cjs.map +1 -1
  538. package/dist/modern/visualBuilder/utils/types/postMessage.types.d.cts +15 -1
  539. package/dist/modern/visualBuilder/utils/types/postMessage.types.d.ts +15 -1
  540. package/dist/modern/visualBuilder/utils/types/postMessage.types.js +14 -0
  541. package/dist/modern/visualBuilder/utils/types/postMessage.types.js.map +1 -1
  542. package/package.json +5 -2
@@ -0,0 +1,428 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+
30
+ // src/visualBuilder/hooks/useCommentTextArea.ts
31
+ var useCommentTextArea_exports = {};
32
+ __export(useCommentTextArea_exports, {
33
+ useCommentTextArea: () => useCommentTextArea
34
+ });
35
+ module.exports = __toCommonJS(useCommentTextArea_exports);
36
+ var import_hooks = require("preact/hooks");
37
+ var import_lodash_es = require("lodash-es");
38
+ var import_collabUtils = require("../utils/collabUtils.cjs");
39
+ var import_collab = require("../collab.style.cjs");
40
+ var import_constants = require("../utils/constants.cjs");
41
+ var import_ContextProvider = require("../components/Collab/ThreadPopup/ContextProvider/index.cjs");
42
+ var import_useDynamicTextareaRows = __toESM(require("../hooks/useDynamicTextareaRows.cjs"), 1);
43
+ var initialState = {
44
+ message: "",
45
+ toUsers: [],
46
+ images: [],
47
+ createdBy: "",
48
+ author: ""
49
+ };
50
+ var useCommentTextArea = (userState, comment, onClose) => {
51
+ const [state, setState] = (0, import_hooks.useState)(initialState);
52
+ const [showSuggestions, setShowSuggestions] = (0, import_hooks.useState)(false);
53
+ const [cursorPosition, setCursorPosition] = (0, import_hooks.useState)({
54
+ top: 0,
55
+ left: 0,
56
+ showAbove: false
57
+ });
58
+ const [searchTerm, setSearchTerm] = (0, import_hooks.useState)("");
59
+ const [selectedIndex, setSelectedIndex] = (0, import_hooks.useState)(0);
60
+ const [filteredUsers, setFilteredUsers] = (0, import_hooks.useState)([]);
61
+ const inputRef = (0, import_hooks.useRef)(null);
62
+ const listRef = (0, import_hooks.useRef)(null);
63
+ const itemRefs = (0, import_hooks.useRef)([]);
64
+ const {
65
+ error,
66
+ setError,
67
+ onCreateComment,
68
+ onEditComment,
69
+ editComment,
70
+ setThreadState,
71
+ activeThread,
72
+ setActiveThread,
73
+ createNewThread
74
+ } = (0, import_hooks.useContext)(import_ContextProvider.ThreadProvider);
75
+ (0, import_useDynamicTextareaRows.default)(
76
+ ".collab-thread-body--input--textarea",
77
+ state.message
78
+ );
79
+ (0, import_hooks.useEffect)(() => {
80
+ itemRefs.current = itemRefs.current.slice(
81
+ 0,
82
+ userState.mentionsList.length
83
+ );
84
+ }, [userState.mentionsList]);
85
+ (0, import_hooks.useEffect)(() => {
86
+ const filteredUsersList = userState.mentionsList.filter((user) => {
87
+ if (!searchTerm) return true;
88
+ return user.display.toLowerCase().includes(searchTerm.toLowerCase());
89
+ });
90
+ setFilteredUsers(filteredUsersList);
91
+ }, [searchTerm, userState.mentionsList]);
92
+ (0, import_hooks.useEffect)(() => {
93
+ const textArea = document.getElementById(
94
+ "collab-thread-body--input--textarea"
95
+ );
96
+ if (!textArea) return;
97
+ const baseClasses = {
98
+ focus: {
99
+ base: "collab-thread-body--input--textarea--focus",
100
+ goober: (0, import_collab.collabStyles)()["collab-thread-body--input--textarea--focus"]
101
+ },
102
+ hover: {
103
+ base: "collab-thread-body--input--textarea--hover",
104
+ goober: (0, import_collab.collabStyles)()["collab-thread-body--input--textarea--hover"]
105
+ }
106
+ };
107
+ const handleFocus = () => {
108
+ textArea.classList.add(
109
+ baseClasses.focus.base,
110
+ baseClasses.focus.goober
111
+ );
112
+ };
113
+ const handleBlur = () => {
114
+ textArea.classList.remove(
115
+ baseClasses.focus.base,
116
+ baseClasses.focus.goober
117
+ );
118
+ };
119
+ const handleMouseEnter = () => {
120
+ textArea.classList.add(
121
+ baseClasses.hover.base,
122
+ baseClasses.hover.goober
123
+ );
124
+ };
125
+ const handleMouseLeave = () => {
126
+ textArea.classList.remove(
127
+ baseClasses.hover.base,
128
+ baseClasses.hover.goober
129
+ );
130
+ };
131
+ textArea.addEventListener("focus", handleFocus);
132
+ textArea.addEventListener("blur", handleBlur);
133
+ textArea.addEventListener("mouseenter", handleMouseEnter);
134
+ textArea.addEventListener("mouseleave", handleMouseLeave);
135
+ return () => {
136
+ textArea.removeEventListener("focus", handleFocus);
137
+ textArea.removeEventListener("blur", handleBlur);
138
+ textArea.removeEventListener("mouseenter", handleMouseEnter);
139
+ textArea.removeEventListener("mouseleave", handleMouseLeave);
140
+ };
141
+ }, []);
142
+ (0, import_hooks.useEffect)(() => {
143
+ var _a;
144
+ if (!comment) return;
145
+ const toUsers = [];
146
+ (_a = comment == null ? void 0 : comment.toUsers) == null ? void 0 : _a.forEach((userId) => {
147
+ const user = userState.userMap[userId];
148
+ toUsers.push({
149
+ display: `${user.display || (0, import_collabUtils.getUserName)(user)}`,
150
+ id: userId
151
+ });
152
+ });
153
+ setState({
154
+ message: (0, import_collabUtils.getMessageWithDisplayName)(comment, userState, "text") ?? "",
155
+ toUsers,
156
+ images: (comment == null ? void 0 : comment.images) ?? [],
157
+ createdBy: (comment == null ? void 0 : comment.createdBy) ?? "",
158
+ author: (comment == null ? void 0 : comment.author) ?? ""
159
+ });
160
+ }, [comment, userState]);
161
+ const findMentionSearchPosition = (0, import_hooks.useCallback)(
162
+ (text, cursorPos) => {
163
+ const textBeforeCursor = text.slice(0, cursorPos);
164
+ const atSymbolIndex = textBeforeCursor.lastIndexOf("@");
165
+ if (atSymbolIndex === -1) return null;
166
+ const textBetweenAtAndCursor = textBeforeCursor.slice(
167
+ atSymbolIndex + 1
168
+ );
169
+ if (textBetweenAtAndCursor.includes(" ")) return null;
170
+ return {
171
+ start: atSymbolIndex,
172
+ searchTerm: textBetweenAtAndCursor
173
+ };
174
+ },
175
+ []
176
+ );
177
+ const calculatePosition = (0, import_hooks.useCallback)(
178
+ (textarea, cursorPosition2) => {
179
+ const text = textarea == null ? void 0 : textarea.value;
180
+ const textBeforeCursor = text == null ? void 0 : text.slice(0, cursorPosition2);
181
+ const lines = textBeforeCursor == null ? void 0 : textBeforeCursor.split("\n");
182
+ const currentLineNumber = ((lines == null ? void 0 : lines.length) || 0) - 1;
183
+ const currentLine = lines == null ? void 0 : lines[currentLineNumber];
184
+ const style = window.getComputedStyle(textarea);
185
+ const lineHeight = parseInt(style.lineHeight);
186
+ const paddingLeft = parseInt(style.paddingLeft);
187
+ const paddingTop = parseInt(style.paddingTop);
188
+ const span = document.createElement("span");
189
+ span.style.font = style.font;
190
+ span.style.visibility = "hidden";
191
+ span.style.position = "absolute";
192
+ span.style.whiteSpace = "pre";
193
+ span.textContent = currentLine ? currentLine : "";
194
+ document.body.appendChild(span);
195
+ const left = Math.min(
196
+ span.offsetWidth + paddingLeft,
197
+ textarea.offsetWidth - 200
198
+ );
199
+ document.body.removeChild(span);
200
+ const scrollTop = textarea.scrollTop;
201
+ const currentLineY = currentLineNumber * lineHeight + paddingTop - scrollTop;
202
+ const nextLineY = currentLineY + lineHeight;
203
+ const viewportHeight = window.innerHeight;
204
+ const suggestionsHeight = 160;
205
+ const textareaRect = textarea.getBoundingClientRect();
206
+ const absoluteTop = textareaRect.top + nextLineY;
207
+ const spaceBelow = viewportHeight - absoluteTop;
208
+ const showAbove = spaceBelow < suggestionsHeight;
209
+ const top = showAbove ? currentLineY : nextLineY;
210
+ return {
211
+ top,
212
+ left,
213
+ showAbove,
214
+ absoluteTop,
215
+ scrollTop,
216
+ currentLineNumber
217
+ };
218
+ },
219
+ []
220
+ );
221
+ const insertMention = (0, import_hooks.useCallback)(
222
+ (user) => {
223
+ var _a, _b;
224
+ const mention = findMentionSearchPosition(
225
+ state.message,
226
+ ((_a = inputRef.current) == null ? void 0 : _a.selectionStart) || 0
227
+ );
228
+ if (!mention) return;
229
+ const beforeMention = state.message.slice(0, mention.start);
230
+ const afterMention = state.message.slice(
231
+ ((_b = inputRef.current) == null ? void 0 : _b.selectionStart) || 0
232
+ );
233
+ const newValue = `${beforeMention}@${user.display} ${afterMention}`;
234
+ const updatedMentions = (0, import_collabUtils.filterOutInvalidMentions)(newValue, [
235
+ ...state.toUsers || [],
236
+ { display: user.display, id: user.uid || "" }
237
+ ]);
238
+ setState((prevState) => ({
239
+ ...prevState,
240
+ message: newValue,
241
+ toUsers: updatedMentions.toUsers
242
+ }));
243
+ setShowSuggestions(false);
244
+ const ele = inputRef.current;
245
+ if (ele) {
246
+ ele.focus();
247
+ }
248
+ },
249
+ [state.message, state.toUsers, findMentionSearchPosition]
250
+ );
251
+ const handleInputChange = (0, import_hooks.useCallback)(
252
+ (event) => {
253
+ const target = event.target;
254
+ if (!target) return;
255
+ const newPlainTextValue = target.value;
256
+ const trimmedValue = newPlainTextValue.trim();
257
+ const newPosition = target.selectionStart;
258
+ const mention = findMentionSearchPosition(
259
+ newPlainTextValue,
260
+ newPosition
261
+ );
262
+ if (mention) {
263
+ setSearchTerm(mention.searchTerm);
264
+ setShowSuggestions(true);
265
+ setCursorPosition(
266
+ calculatePosition(
267
+ inputRef.current,
268
+ newPosition
269
+ )
270
+ );
271
+ setSelectedIndex(0);
272
+ } else {
273
+ setShowSuggestions(false);
274
+ }
275
+ const errorMessage = (0, import_collabUtils.validateCommentAndMentions)(
276
+ newPlainTextValue,
277
+ state.toUsers ?? []
278
+ );
279
+ setError({
280
+ hasError: errorMessage !== "" || trimmedValue === "",
281
+ message: errorMessage
282
+ });
283
+ setState((prevState) => ({
284
+ ...prevState,
285
+ message: newPlainTextValue
286
+ }));
287
+ },
288
+ [state.toUsers, findMentionSearchPosition, calculatePosition, setError]
289
+ );
290
+ const handleKeyDown = (0, import_hooks.useCallback)(
291
+ (e) => {
292
+ var _a;
293
+ if (e.key === "@") {
294
+ const position = calculatePosition(
295
+ inputRef.current,
296
+ e.target.selectionStart
297
+ );
298
+ setCursorPosition(position);
299
+ setSelectedIndex(0);
300
+ }
301
+ if (!showSuggestions) return;
302
+ switch (e.key) {
303
+ case "ArrowDown":
304
+ e.preventDefault();
305
+ setSelectedIndex(
306
+ (prev) => prev < filteredUsers.length - 1 ? prev + 1 : prev
307
+ );
308
+ break;
309
+ case "ArrowUp":
310
+ e.preventDefault();
311
+ setSelectedIndex((prev) => prev > 0 ? prev - 1 : prev);
312
+ break;
313
+ case "Enter":
314
+ e.preventDefault();
315
+ if (showSuggestions) {
316
+ insertMention(filteredUsers[selectedIndex]);
317
+ }
318
+ break;
319
+ case "Escape":
320
+ setShowSuggestions(false);
321
+ (_a = inputRef.current) == null ? void 0 : _a.focus();
322
+ break;
323
+ }
324
+ },
325
+ [
326
+ showSuggestions,
327
+ filteredUsers,
328
+ selectedIndex,
329
+ insertMention,
330
+ calculatePosition
331
+ ]
332
+ );
333
+ (0, import_hooks.useEffect)(() => {
334
+ var _a;
335
+ (_a = itemRefs.current[selectedIndex]) == null ? void 0 : _a.scrollIntoView({
336
+ behavior: "smooth",
337
+ block: "nearest",
338
+ inline: "nearest"
339
+ });
340
+ }, [selectedIndex]);
341
+ const handleSubmit = (0, import_hooks.useCallback)(async () => {
342
+ var _a;
343
+ if (error.hasError) return;
344
+ try {
345
+ let threadUID = activeThread == null ? void 0 : activeThread._id;
346
+ if ((activeThread == null ? void 0 : activeThread._id) == "new") {
347
+ let currentThread = await createNewThread();
348
+ threadUID = (_a = currentThread == null ? void 0 : currentThread.thread) == null ? void 0 : _a._id;
349
+ setActiveThread(currentThread == null ? void 0 : currentThread.thread);
350
+ }
351
+ const commentState = {
352
+ ...state,
353
+ createdBy: userState.currentUser.uid,
354
+ author: userState.currentUser.email
355
+ };
356
+ const commentPayload = {
357
+ ...(0, import_collabUtils.getCommentBody)(commentState)
358
+ };
359
+ const commentData = {
360
+ threadUid: threadUID,
361
+ commentPayload
362
+ };
363
+ if (editComment) {
364
+ let commentResponse = await onEditComment({
365
+ threadUid: threadUID,
366
+ commentUid: editComment,
367
+ payload: commentPayload
368
+ });
369
+ setThreadState((prevState) => {
370
+ const updatedComments = (0, import_lodash_es.cloneDeep)(prevState.comments);
371
+ const commentIndex = (0, import_lodash_es.findIndex)(
372
+ updatedComments,
373
+ (c) => c._id === (comment == null ? void 0 : comment._id)
374
+ );
375
+ updatedComments.splice(
376
+ commentIndex,
377
+ 1,
378
+ commentResponse == null ? void 0 : commentResponse.comment
379
+ );
380
+ return {
381
+ ...prevState,
382
+ editComment: "",
383
+ comments: updatedComments
384
+ };
385
+ });
386
+ onClose(false);
387
+ } else {
388
+ let commentResponse = await onCreateComment(commentData);
389
+ setThreadState((prevState) => ({
390
+ ...prevState,
391
+ comments: [commentResponse.comment, ...prevState.comments],
392
+ commentCount: prevState.commentCount + 1
393
+ }));
394
+ setState(initialState);
395
+ onClose(false);
396
+ }
397
+ } catch (error2) {
398
+ console.error("Error submitting comment:", error2);
399
+ }
400
+ }, [error.hasError, state, activeThread]);
401
+ (0, import_hooks.useEffect)(() => {
402
+ if (state.message.length === 0) {
403
+ setError({ hasError: true, message: "" });
404
+ }
405
+ }, [state.message, setError]);
406
+ return {
407
+ state,
408
+ setState,
409
+ error,
410
+ showSuggestions,
411
+ cursorPosition,
412
+ selectedIndex,
413
+ filteredUsers,
414
+ inputRef,
415
+ listRef,
416
+ itemRefs,
417
+ handleInputChange,
418
+ handleKeyDown,
419
+ handleSubmit,
420
+ insertMention,
421
+ maxMessageLength: import_constants.maxMessageLength
422
+ };
423
+ };
424
+ // Annotate the CommonJS export names for ESM import in node:
425
+ 0 && (module.exports = {
426
+ useCommentTextArea
427
+ });
428
+ //# sourceMappingURL=useCommentTextArea.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/visualBuilder/hooks/useCommentTextArea.ts"],"sourcesContent":["/** @jsxImportSource preact */\nimport React from \"preact/compat\";\nimport {\n useState,\n useEffect,\n useCallback,\n useRef,\n useContext,\n} from \"preact/hooks\";\nimport { cloneDeep, findIndex } from \"lodash-es\";\nimport {\n ICommentState,\n IMentionList,\n IMentionItem,\n IMessageDTO,\n IUserState,\n IUserDTO,\n IThreadResponseDTO,\n ICommentResponse,\n ICommentPayload,\n IThreadPopupState,\n} from \"../types/collab.types\";\nimport {\n validateCommentAndMentions,\n filterOutInvalidMentions,\n getMessageWithDisplayName,\n getUserName,\n getCommentBody,\n} from \"../utils/collabUtils\";\nimport { collabStyles } from \"../collab.style\";\nimport { maxMessageLength } from \"../utils/constants\";\nimport { ThreadProvider } from \"../components/Collab/ThreadPopup/ContextProvider\";\nimport useDynamicTextareaRows from \"../hooks/useDynamicTextareaRows\";\n\nconst initialState: ICommentState = {\n message: \"\",\n toUsers: [],\n images: [],\n createdBy: \"\",\n author: \"\",\n};\n\nexport const useCommentTextArea = (\n userState: IUserState,\n comment: IMessageDTO | null | undefined,\n onClose: (isResolved?: boolean) => void\n) => {\n const [state, setState] = useState<ICommentState>(initialState);\n\n const [showSuggestions, setShowSuggestions] = useState(false);\n const [cursorPosition, setCursorPosition] = useState({\n top: 0,\n left: 0,\n showAbove: false,\n });\n const [searchTerm, setSearchTerm] = useState(\"\");\n const [selectedIndex, setSelectedIndex] = useState(0);\n const [filteredUsers, setFilteredUsers] = useState<IMentionList[]>([]);\n\n const inputRef = useRef<HTMLTextAreaElement>(null);\n const listRef = useRef<HTMLUListElement>(null);\n const itemRefs = useRef<Array<HTMLLIElement | null>>([]);\n\n const {\n error,\n setError,\n onCreateComment,\n onEditComment,\n editComment,\n setThreadState,\n activeThread,\n setActiveThread,\n createNewThread,\n } = useContext(ThreadProvider)!;\n\n useDynamicTextareaRows(\n \".collab-thread-body--input--textarea\",\n state.message\n );\n\n useEffect(() => {\n itemRefs.current = itemRefs.current.slice(\n 0,\n userState.mentionsList.length\n );\n }, [userState.mentionsList]);\n\n useEffect(() => {\n const filteredUsersList = userState.mentionsList.filter((user) => {\n if (!searchTerm) return true;\n return user.display\n .toLowerCase()\n .includes(searchTerm.toLowerCase());\n });\n setFilteredUsers(filteredUsersList);\n }, [searchTerm, userState.mentionsList]);\n\n useEffect(() => {\n const textArea = document.getElementById(\n \"collab-thread-body--input--textarea\"\n );\n if (!textArea) return;\n\n const baseClasses = {\n focus: {\n base: \"collab-thread-body--input--textarea--focus\",\n goober: collabStyles()[\n \"collab-thread-body--input--textarea--focus\"\n ],\n },\n hover: {\n base: \"collab-thread-body--input--textarea--hover\",\n goober: collabStyles()[\n \"collab-thread-body--input--textarea--hover\"\n ],\n },\n };\n\n const handleFocus = () => {\n textArea.classList.add(\n baseClasses.focus.base,\n baseClasses.focus.goober\n );\n };\n\n const handleBlur = () => {\n textArea.classList.remove(\n baseClasses.focus.base,\n baseClasses.focus.goober\n );\n };\n\n const handleMouseEnter = () => {\n textArea.classList.add(\n baseClasses.hover.base,\n baseClasses.hover.goober\n );\n };\n\n const handleMouseLeave = () => {\n textArea.classList.remove(\n baseClasses.hover.base,\n baseClasses.hover.goober\n );\n };\n\n textArea.addEventListener(\"focus\", handleFocus);\n textArea.addEventListener(\"blur\", handleBlur);\n textArea.addEventListener(\"mouseenter\", handleMouseEnter);\n textArea.addEventListener(\"mouseleave\", handleMouseLeave);\n\n return () => {\n textArea.removeEventListener(\"focus\", handleFocus);\n textArea.removeEventListener(\"blur\", handleBlur);\n textArea.removeEventListener(\"mouseenter\", handleMouseEnter);\n textArea.removeEventListener(\"mouseleave\", handleMouseLeave);\n };\n }, []);\n\n useEffect(() => {\n if (!comment) return;\n\n const toUsers: Array<IMentionItem> = [];\n\n comment?.toUsers?.forEach((userId) => {\n const user: IUserDTO = userState.userMap[userId];\n toUsers.push({\n display: `${user.display || getUserName(user)}`,\n id: userId,\n });\n });\n\n setState({\n message:\n getMessageWithDisplayName(comment, userState, \"text\") ?? \"\",\n toUsers,\n images: comment?.images ?? [],\n createdBy: comment?.createdBy ?? \"\",\n author: comment?.author ?? \"\",\n });\n }, [comment, userState]);\n\n const findMentionSearchPosition = useCallback(\n (text: string, cursorPos: number) => {\n const textBeforeCursor = text.slice(0, cursorPos);\n const atSymbolIndex = textBeforeCursor.lastIndexOf(\"@\");\n\n if (atSymbolIndex === -1) return null;\n\n const textBetweenAtAndCursor = textBeforeCursor.slice(\n atSymbolIndex + 1\n );\n if (textBetweenAtAndCursor.includes(\" \")) return null;\n\n return {\n start: atSymbolIndex,\n searchTerm: textBetweenAtAndCursor,\n };\n },\n []\n );\n\n const calculatePosition = useCallback(\n (textarea: HTMLTextAreaElement, cursorPosition: number) => {\n const text = textarea?.value;\n const textBeforeCursor = text?.slice(0, cursorPosition);\n const lines = textBeforeCursor?.split(\"\\n\");\n const currentLineNumber = (lines?.length || 0) - 1;\n const currentLine = lines?.[currentLineNumber];\n\n const style = window.getComputedStyle(textarea);\n const lineHeight = parseInt(style.lineHeight);\n const paddingLeft = parseInt(style.paddingLeft);\n const paddingTop = parseInt(style.paddingTop);\n\n const span = document.createElement(\"span\");\n span.style.font = style.font;\n span.style.visibility = \"hidden\";\n span.style.position = \"absolute\";\n span.style.whiteSpace = \"pre\";\n span.textContent = currentLine ? currentLine : \"\";\n document.body.appendChild(span);\n\n const left = Math.min(\n span.offsetWidth + paddingLeft,\n textarea.offsetWidth - 200\n );\n document.body.removeChild(span);\n\n const scrollTop = textarea.scrollTop;\n const currentLineY =\n currentLineNumber * lineHeight + paddingTop - scrollTop;\n const nextLineY = currentLineY + lineHeight;\n\n const viewportHeight = window.innerHeight;\n const suggestionsHeight = 160;\n\n const textareaRect = textarea.getBoundingClientRect();\n const absoluteTop = textareaRect.top + nextLineY;\n const spaceBelow = viewportHeight - absoluteTop;\n const showAbove = spaceBelow < suggestionsHeight;\n const top = showAbove ? currentLineY : nextLineY;\n\n return {\n top,\n left,\n showAbove,\n absoluteTop,\n scrollTop,\n currentLineNumber,\n };\n },\n []\n );\n\n const insertMention = useCallback(\n (user: IMentionList) => {\n const mention = findMentionSearchPosition(\n state.message,\n inputRef.current?.selectionStart || 0\n );\n if (!mention) return;\n\n const beforeMention = state.message.slice(0, mention.start);\n const afterMention = state.message.slice(\n inputRef.current?.selectionStart || 0\n );\n const newValue = `${beforeMention}@${user.display} ${afterMention}`;\n\n const updatedMentions = filterOutInvalidMentions(newValue, [\n ...(state.toUsers || []),\n { display: user.display, id: user.uid || \"\" },\n ]);\n\n setState((prevState) => ({\n ...prevState,\n message: newValue,\n toUsers: updatedMentions.toUsers,\n }));\n setShowSuggestions(false);\n\n const ele = inputRef.current;\n if (ele) {\n ele.focus();\n }\n },\n [state.message, state.toUsers, findMentionSearchPosition]\n );\n\n const handleInputChange = useCallback(\n (event: React.ChangeEvent<HTMLTextAreaElement>) => {\n const target = event.target as HTMLTextAreaElement | null;\n if (!target) return;\n const newPlainTextValue = target.value;\n const trimmedValue = newPlainTextValue.trim();\n const newPosition = target.selectionStart;\n\n const mention = findMentionSearchPosition(\n newPlainTextValue,\n newPosition\n );\n if (mention) {\n setSearchTerm(mention.searchTerm);\n setShowSuggestions(true);\n setCursorPosition(\n calculatePosition(\n inputRef.current as HTMLTextAreaElement,\n newPosition\n )\n );\n setSelectedIndex(0);\n } else {\n setShowSuggestions(false);\n }\n\n const errorMessage = validateCommentAndMentions(\n newPlainTextValue,\n state.toUsers ?? []\n );\n setError({\n hasError: errorMessage !== \"\" || trimmedValue === \"\",\n message: errorMessage,\n });\n\n setState((prevState) => ({\n ...prevState,\n message: newPlainTextValue,\n }));\n },\n [state.toUsers, findMentionSearchPosition, calculatePosition, setError]\n );\n\n const handleKeyDown = useCallback(\n (e: KeyboardEvent) => {\n if (e.key === \"@\") {\n const position = calculatePosition(\n inputRef.current as HTMLTextAreaElement,\n (e.target as HTMLTextAreaElement).selectionStart\n );\n setCursorPosition(position);\n setSelectedIndex(0);\n }\n\n if (!showSuggestions) return;\n\n switch (e.key) {\n case \"ArrowDown\":\n e.preventDefault();\n setSelectedIndex((prev) =>\n prev < filteredUsers.length - 1 ? prev + 1 : prev\n );\n break;\n case \"ArrowUp\":\n e.preventDefault();\n setSelectedIndex((prev) => (prev > 0 ? prev - 1 : prev));\n break;\n case \"Enter\":\n e.preventDefault();\n if (showSuggestions) {\n insertMention(filteredUsers[selectedIndex]);\n }\n break;\n case \"Escape\":\n setShowSuggestions(false);\n inputRef.current?.focus();\n break;\n }\n },\n [\n showSuggestions,\n filteredUsers,\n selectedIndex,\n insertMention,\n calculatePosition,\n ]\n );\n\n useEffect(() => {\n itemRefs.current[selectedIndex]?.scrollIntoView({\n behavior: \"smooth\",\n block: \"nearest\",\n inline: \"nearest\",\n });\n }, [selectedIndex]);\n\n const handleSubmit = useCallback(async () => {\n if (error.hasError) return;\n\n try {\n let threadUID: string = activeThread?._id;\n if (activeThread?._id == \"new\") {\n let currentThread: IThreadResponseDTO = await createNewThread();\n threadUID = currentThread?.thread?._id;\n setActiveThread(currentThread?.thread);\n }\n\n const commentState = {\n ...state,\n createdBy: userState.currentUser.uid,\n author: userState.currentUser.email,\n };\n\n const commentPayload = {\n ...getCommentBody(commentState),\n };\n\n const commentData: ICommentPayload = {\n threadUid: threadUID,\n commentPayload,\n };\n\n if (editComment) {\n let commentResponse: ICommentResponse = await onEditComment({\n threadUid: threadUID,\n commentUid: editComment,\n payload: commentPayload,\n });\n\n setThreadState((prevState: IThreadPopupState) => {\n const updatedComments = cloneDeep(prevState.comments);\n const commentIndex = findIndex(\n updatedComments,\n (c) => c._id === comment?._id\n );\n\n updatedComments.splice(\n commentIndex,\n 1,\n commentResponse?.comment\n );\n\n return {\n ...prevState,\n editComment: \"\",\n comments: updatedComments,\n };\n });\n onClose(false);\n } else {\n let commentResponse: ICommentResponse =\n await onCreateComment(commentData);\n setThreadState((prevState: IThreadPopupState) => ({\n ...prevState,\n comments: [commentResponse.comment, ...prevState.comments],\n commentCount: prevState.commentCount + 1,\n }));\n\n setState(initialState);\n onClose(false);\n }\n } catch (error: any) {\n console.error(\"Error submitting comment:\", error);\n }\n }, [error.hasError, state, activeThread]);\n\n useEffect(() => {\n if (state.message.length === 0) {\n setError({ hasError: true, message: \"\" });\n }\n }, [state.message, setError]);\n\n return {\n state,\n setState,\n error,\n showSuggestions,\n cursorPosition,\n selectedIndex,\n filteredUsers,\n inputRef,\n listRef,\n itemRefs,\n handleInputChange,\n handleKeyDown,\n handleSubmit,\n insertMention,\n maxMessageLength,\n };\n};\n"],"mappings":"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","names":["useDynamicTextareaRows","cursorPosition","error"]}
@@ -0,0 +1,27 @@
1
+ import * as preact_hooks from 'preact/hooks';
2
+ import { IUserState, IMessageDTO, ICommentState, IErrorState, IMentionList } from '../types/collab.types.cjs';
3
+ import React from 'preact/compat';
4
+
5
+ declare const useCommentTextArea: (userState: IUserState, comment: IMessageDTO | null | undefined, onClose: (isResolved?: boolean) => void) => {
6
+ state: ICommentState;
7
+ setState: React.SetStateAction<ICommentState>;
8
+ error: IErrorState;
9
+ showSuggestions: boolean;
10
+ cursorPosition: {
11
+ top: number;
12
+ left: number;
13
+ showAbove: boolean;
14
+ };
15
+ selectedIndex: number;
16
+ filteredUsers: IMentionList[];
17
+ inputRef: React.Ref<HTMLTextAreaElement>;
18
+ listRef: React.Ref<HTMLUListElement>;
19
+ itemRefs: preact_hooks.MutableRef<(HTMLLIElement | null)[]>;
20
+ handleInputChange: (event: React.ChangeEvent<HTMLTextAreaElement>) => void;
21
+ handleKeyDown: (e: KeyboardEvent) => void;
22
+ handleSubmit: () => Promise<void>;
23
+ insertMention: (user: IMentionList) => void;
24
+ maxMessageLength: number;
25
+ };
26
+
27
+ export { useCommentTextArea };
@@ -0,0 +1,27 @@
1
+ import * as preact_hooks from 'preact/hooks';
2
+ import { IUserState, IMessageDTO, ICommentState, IErrorState, IMentionList } from '../types/collab.types.js';
3
+ import React from 'preact/compat';
4
+
5
+ declare const useCommentTextArea: (userState: IUserState, comment: IMessageDTO | null | undefined, onClose: (isResolved?: boolean) => void) => {
6
+ state: ICommentState;
7
+ setState: React.SetStateAction<ICommentState>;
8
+ error: IErrorState;
9
+ showSuggestions: boolean;
10
+ cursorPosition: {
11
+ top: number;
12
+ left: number;
13
+ showAbove: boolean;
14
+ };
15
+ selectedIndex: number;
16
+ filteredUsers: IMentionList[];
17
+ inputRef: React.Ref<HTMLTextAreaElement>;
18
+ listRef: React.Ref<HTMLUListElement>;
19
+ itemRefs: preact_hooks.MutableRef<(HTMLLIElement | null)[]>;
20
+ handleInputChange: (event: React.ChangeEvent<HTMLTextAreaElement>) => void;
21
+ handleKeyDown: (e: KeyboardEvent) => void;
22
+ handleSubmit: () => Promise<void>;
23
+ insertMention: (user: IMentionList) => void;
24
+ maxMessageLength: number;
25
+ };
26
+
27
+ export { useCommentTextArea };