@contentstack/live-preview-utils 3.1.0 → 3.2.0-alpha.1

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