@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,407 @@
1
+ import "../../chunk-5WRI5ZAA.js";
2
+
3
+ // src/visualBuilder/hooks/useCommentTextArea.ts
4
+ import {
5
+ useState,
6
+ useEffect,
7
+ useCallback,
8
+ useRef,
9
+ useContext
10
+ } from "preact/hooks";
11
+ import { cloneDeep, findIndex } from "lodash-es";
12
+ import {
13
+ validateCommentAndMentions,
14
+ filterOutInvalidMentions,
15
+ getMessageWithDisplayName,
16
+ getUserName,
17
+ getCommentBody
18
+ } from "../utils/collabUtils.js";
19
+ import { collabStyles } from "../collab.style.js";
20
+ import { maxMessageLength } from "../utils/constants.js";
21
+ import { ThreadProvider } from "../components/Collab/ThreadPopup/ContextProvider/index.js";
22
+ import useDynamicTextareaRows from "../hooks/useDynamicTextareaRows.js";
23
+ var initialState = {
24
+ message: "",
25
+ toUsers: [],
26
+ images: [],
27
+ createdBy: "",
28
+ author: ""
29
+ };
30
+ var useCommentTextArea = (userState, comment, onClose) => {
31
+ const [state, setState] = useState(initialState);
32
+ const [showSuggestions, setShowSuggestions] = useState(false);
33
+ const [cursorPosition, setCursorPosition] = useState({
34
+ top: 0,
35
+ left: 0,
36
+ showAbove: false
37
+ });
38
+ const [searchTerm, setSearchTerm] = useState("");
39
+ const [selectedIndex, setSelectedIndex] = useState(0);
40
+ const [filteredUsers, setFilteredUsers] = useState([]);
41
+ const inputRef = useRef(null);
42
+ const listRef = useRef(null);
43
+ const itemRefs = useRef([]);
44
+ const {
45
+ error,
46
+ setError,
47
+ onCreateComment,
48
+ onEditComment,
49
+ editComment,
50
+ setThreadState,
51
+ activeThread,
52
+ setActiveThread,
53
+ createNewThread
54
+ } = useContext(ThreadProvider);
55
+ useDynamicTextareaRows(
56
+ ".collab-thread-body--input--textarea",
57
+ state.message
58
+ );
59
+ useEffect(() => {
60
+ itemRefs.current = itemRefs.current.slice(
61
+ 0,
62
+ userState.mentionsList.length
63
+ );
64
+ }, [userState.mentionsList]);
65
+ useEffect(() => {
66
+ const filteredUsersList = userState.mentionsList.filter((user) => {
67
+ if (!searchTerm) return true;
68
+ return user.display.toLowerCase().includes(searchTerm.toLowerCase());
69
+ });
70
+ setFilteredUsers(filteredUsersList);
71
+ }, [searchTerm, userState.mentionsList]);
72
+ useEffect(() => {
73
+ const textArea = document.getElementById(
74
+ "collab-thread-body--input--textarea"
75
+ );
76
+ if (!textArea) return;
77
+ const baseClasses = {
78
+ focus: {
79
+ base: "collab-thread-body--input--textarea--focus",
80
+ goober: collabStyles()["collab-thread-body--input--textarea--focus"]
81
+ },
82
+ hover: {
83
+ base: "collab-thread-body--input--textarea--hover",
84
+ goober: collabStyles()["collab-thread-body--input--textarea--hover"]
85
+ }
86
+ };
87
+ const handleFocus = () => {
88
+ textArea.classList.add(
89
+ baseClasses.focus.base,
90
+ baseClasses.focus.goober
91
+ );
92
+ };
93
+ const handleBlur = () => {
94
+ textArea.classList.remove(
95
+ baseClasses.focus.base,
96
+ baseClasses.focus.goober
97
+ );
98
+ };
99
+ const handleMouseEnter = () => {
100
+ textArea.classList.add(
101
+ baseClasses.hover.base,
102
+ baseClasses.hover.goober
103
+ );
104
+ };
105
+ const handleMouseLeave = () => {
106
+ textArea.classList.remove(
107
+ baseClasses.hover.base,
108
+ baseClasses.hover.goober
109
+ );
110
+ };
111
+ textArea.addEventListener("focus", handleFocus);
112
+ textArea.addEventListener("blur", handleBlur);
113
+ textArea.addEventListener("mouseenter", handleMouseEnter);
114
+ textArea.addEventListener("mouseleave", handleMouseLeave);
115
+ return () => {
116
+ textArea.removeEventListener("focus", handleFocus);
117
+ textArea.removeEventListener("blur", handleBlur);
118
+ textArea.removeEventListener("mouseenter", handleMouseEnter);
119
+ textArea.removeEventListener("mouseleave", handleMouseLeave);
120
+ };
121
+ }, []);
122
+ useEffect(() => {
123
+ var _a;
124
+ if (!comment) return;
125
+ const toUsers = [];
126
+ (_a = comment == null ? void 0 : comment.toUsers) == null ? void 0 : _a.forEach((userId) => {
127
+ const user = userState.userMap[userId];
128
+ toUsers.push({
129
+ display: `${user.display || getUserName(user)}`,
130
+ id: userId
131
+ });
132
+ });
133
+ setState({
134
+ message: getMessageWithDisplayName(comment, userState, "text") ?? "",
135
+ toUsers,
136
+ images: (comment == null ? void 0 : comment.images) ?? [],
137
+ createdBy: (comment == null ? void 0 : comment.createdBy) ?? "",
138
+ author: (comment == null ? void 0 : comment.author) ?? ""
139
+ });
140
+ }, [comment, userState]);
141
+ const findMentionSearchPosition = useCallback(
142
+ (text, cursorPos) => {
143
+ const textBeforeCursor = text.slice(0, cursorPos);
144
+ const atSymbolIndex = textBeforeCursor.lastIndexOf("@");
145
+ if (atSymbolIndex === -1) return null;
146
+ const textBetweenAtAndCursor = textBeforeCursor.slice(
147
+ atSymbolIndex + 1
148
+ );
149
+ if (textBetweenAtAndCursor.includes(" ")) return null;
150
+ return {
151
+ start: atSymbolIndex,
152
+ searchTerm: textBetweenAtAndCursor
153
+ };
154
+ },
155
+ []
156
+ );
157
+ const calculatePosition = useCallback(
158
+ (textarea, cursorPosition2) => {
159
+ const text = textarea == null ? void 0 : textarea.value;
160
+ const textBeforeCursor = text == null ? void 0 : text.slice(0, cursorPosition2);
161
+ const lines = textBeforeCursor == null ? void 0 : textBeforeCursor.split("\n");
162
+ const currentLineNumber = ((lines == null ? void 0 : lines.length) || 0) - 1;
163
+ const currentLine = lines == null ? void 0 : lines[currentLineNumber];
164
+ const style = window.getComputedStyle(textarea);
165
+ const lineHeight = parseInt(style.lineHeight);
166
+ const paddingLeft = parseInt(style.paddingLeft);
167
+ const paddingTop = parseInt(style.paddingTop);
168
+ const span = document.createElement("span");
169
+ span.style.font = style.font;
170
+ span.style.visibility = "hidden";
171
+ span.style.position = "absolute";
172
+ span.style.whiteSpace = "pre";
173
+ span.textContent = currentLine ? currentLine : "";
174
+ document.body.appendChild(span);
175
+ const left = Math.min(
176
+ span.offsetWidth + paddingLeft,
177
+ textarea.offsetWidth - 200
178
+ );
179
+ document.body.removeChild(span);
180
+ const scrollTop = textarea.scrollTop;
181
+ const currentLineY = currentLineNumber * lineHeight + paddingTop - scrollTop;
182
+ const nextLineY = currentLineY + lineHeight;
183
+ const viewportHeight = window.innerHeight;
184
+ const suggestionsHeight = 160;
185
+ const textareaRect = textarea.getBoundingClientRect();
186
+ const absoluteTop = textareaRect.top + nextLineY;
187
+ const spaceBelow = viewportHeight - absoluteTop;
188
+ const showAbove = spaceBelow < suggestionsHeight;
189
+ const top = showAbove ? currentLineY : nextLineY;
190
+ return {
191
+ top,
192
+ left,
193
+ showAbove,
194
+ absoluteTop,
195
+ scrollTop,
196
+ currentLineNumber
197
+ };
198
+ },
199
+ []
200
+ );
201
+ const insertMention = useCallback(
202
+ (user) => {
203
+ var _a, _b;
204
+ const mention = findMentionSearchPosition(
205
+ state.message,
206
+ ((_a = inputRef.current) == null ? void 0 : _a.selectionStart) || 0
207
+ );
208
+ if (!mention) return;
209
+ const beforeMention = state.message.slice(0, mention.start);
210
+ const afterMention = state.message.slice(
211
+ ((_b = inputRef.current) == null ? void 0 : _b.selectionStart) || 0
212
+ );
213
+ const newValue = `${beforeMention}@${user.display} ${afterMention}`;
214
+ const updatedMentions = filterOutInvalidMentions(newValue, [
215
+ ...state.toUsers || [],
216
+ { display: user.display, id: user.uid || "" }
217
+ ]);
218
+ setState((prevState) => ({
219
+ ...prevState,
220
+ message: newValue,
221
+ toUsers: updatedMentions.toUsers
222
+ }));
223
+ setShowSuggestions(false);
224
+ const ele = inputRef.current;
225
+ if (ele) {
226
+ ele.focus();
227
+ }
228
+ },
229
+ [state.message, state.toUsers, findMentionSearchPosition]
230
+ );
231
+ const handleInputChange = useCallback(
232
+ (event) => {
233
+ const target = event.target;
234
+ if (!target) return;
235
+ const newPlainTextValue = target.value;
236
+ const trimmedValue = newPlainTextValue.trim();
237
+ const newPosition = target.selectionStart;
238
+ const mention = findMentionSearchPosition(
239
+ newPlainTextValue,
240
+ newPosition
241
+ );
242
+ if (mention) {
243
+ setSearchTerm(mention.searchTerm);
244
+ setShowSuggestions(true);
245
+ setCursorPosition(
246
+ calculatePosition(
247
+ inputRef.current,
248
+ newPosition
249
+ )
250
+ );
251
+ setSelectedIndex(0);
252
+ } else {
253
+ setShowSuggestions(false);
254
+ }
255
+ const errorMessage = validateCommentAndMentions(
256
+ newPlainTextValue,
257
+ state.toUsers ?? []
258
+ );
259
+ setError({
260
+ hasError: errorMessage !== "" || trimmedValue === "",
261
+ message: errorMessage
262
+ });
263
+ setState((prevState) => ({
264
+ ...prevState,
265
+ message: newPlainTextValue
266
+ }));
267
+ },
268
+ [state.toUsers, findMentionSearchPosition, calculatePosition, setError]
269
+ );
270
+ const handleKeyDown = useCallback(
271
+ (e) => {
272
+ var _a;
273
+ if (e.key === "@") {
274
+ const position = calculatePosition(
275
+ inputRef.current,
276
+ e.target.selectionStart
277
+ );
278
+ setCursorPosition(position);
279
+ setSelectedIndex(0);
280
+ }
281
+ if (!showSuggestions) return;
282
+ switch (e.key) {
283
+ case "ArrowDown":
284
+ e.preventDefault();
285
+ setSelectedIndex(
286
+ (prev) => prev < filteredUsers.length - 1 ? prev + 1 : prev
287
+ );
288
+ break;
289
+ case "ArrowUp":
290
+ e.preventDefault();
291
+ setSelectedIndex((prev) => prev > 0 ? prev - 1 : prev);
292
+ break;
293
+ case "Enter":
294
+ e.preventDefault();
295
+ if (showSuggestions) {
296
+ insertMention(filteredUsers[selectedIndex]);
297
+ }
298
+ break;
299
+ case "Escape":
300
+ setShowSuggestions(false);
301
+ (_a = inputRef.current) == null ? void 0 : _a.focus();
302
+ break;
303
+ }
304
+ },
305
+ [
306
+ showSuggestions,
307
+ filteredUsers,
308
+ selectedIndex,
309
+ insertMention,
310
+ calculatePosition
311
+ ]
312
+ );
313
+ useEffect(() => {
314
+ var _a;
315
+ (_a = itemRefs.current[selectedIndex]) == null ? void 0 : _a.scrollIntoView({
316
+ behavior: "smooth",
317
+ block: "nearest",
318
+ inline: "nearest"
319
+ });
320
+ }, [selectedIndex]);
321
+ const handleSubmit = useCallback(async () => {
322
+ var _a;
323
+ if (error.hasError) return;
324
+ try {
325
+ let threadUID = activeThread == null ? void 0 : activeThread._id;
326
+ if ((activeThread == null ? void 0 : activeThread._id) == "new") {
327
+ let currentThread = await createNewThread();
328
+ threadUID = (_a = currentThread == null ? void 0 : currentThread.thread) == null ? void 0 : _a._id;
329
+ setActiveThread(currentThread == null ? void 0 : currentThread.thread);
330
+ }
331
+ const commentState = {
332
+ ...state,
333
+ createdBy: userState.currentUser.uid,
334
+ author: userState.currentUser.email
335
+ };
336
+ const commentPayload = {
337
+ ...getCommentBody(commentState)
338
+ };
339
+ const commentData = {
340
+ threadUid: threadUID,
341
+ commentPayload
342
+ };
343
+ if (editComment) {
344
+ let commentResponse = await onEditComment({
345
+ threadUid: threadUID,
346
+ commentUid: editComment,
347
+ payload: commentPayload
348
+ });
349
+ setThreadState((prevState) => {
350
+ const updatedComments = cloneDeep(prevState.comments);
351
+ const commentIndex = findIndex(
352
+ updatedComments,
353
+ (c) => c._id === (comment == null ? void 0 : comment._id)
354
+ );
355
+ updatedComments.splice(
356
+ commentIndex,
357
+ 1,
358
+ commentResponse == null ? void 0 : commentResponse.comment
359
+ );
360
+ return {
361
+ ...prevState,
362
+ editComment: "",
363
+ comments: updatedComments
364
+ };
365
+ });
366
+ onClose(false);
367
+ } else {
368
+ let commentResponse = await onCreateComment(commentData);
369
+ setThreadState((prevState) => ({
370
+ ...prevState,
371
+ comments: [commentResponse.comment, ...prevState.comments],
372
+ commentCount: prevState.commentCount + 1
373
+ }));
374
+ setState(initialState);
375
+ onClose(false);
376
+ }
377
+ } catch (error2) {
378
+ console.error("Error submitting comment:", error2);
379
+ }
380
+ }, [error.hasError, state, activeThread]);
381
+ useEffect(() => {
382
+ if (state.message.length === 0) {
383
+ setError({ hasError: true, message: "" });
384
+ }
385
+ }, [state.message, setError]);
386
+ return {
387
+ state,
388
+ setState,
389
+ error,
390
+ showSuggestions,
391
+ cursorPosition,
392
+ selectedIndex,
393
+ filteredUsers,
394
+ inputRef,
395
+ listRef,
396
+ itemRefs,
397
+ handleInputChange,
398
+ handleKeyDown,
399
+ handleSubmit,
400
+ insertMention,
401
+ maxMessageLength
402
+ };
403
+ };
404
+ export {
405
+ useCommentTextArea
406
+ };
407
+ //# sourceMappingURL=useCommentTextArea.js.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":["cursorPosition","error"]}
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // src/visualBuilder/hooks/useDynamicTextareaRows.tsx
21
+ var useDynamicTextareaRows_exports = {};
22
+ __export(useDynamicTextareaRows_exports, {
23
+ default: () => useDynamicTextareaRows_default
24
+ });
25
+ module.exports = __toCommonJS(useDynamicTextareaRows_exports);
26
+ var import_compat = require("preact/compat");
27
+ var useDynamicTextareaRows = (selector, dependency, defaultRows = 1, expandedRows = 3) => {
28
+ (0, import_compat.useEffect)(() => {
29
+ const textAreaElement = document.querySelector(selector);
30
+ if (textAreaElement) {
31
+ textAreaElement.setAttribute(
32
+ "rows",
33
+ dependency.length > 0 ? `${expandedRows}` : `${defaultRows}`
34
+ );
35
+ }
36
+ return () => {
37
+ textAreaElement == null ? void 0 : textAreaElement.setAttribute("rows", `${defaultRows}`);
38
+ };
39
+ }, [dependency, selector, defaultRows, expandedRows]);
40
+ };
41
+ var useDynamicTextareaRows_default = useDynamicTextareaRows;
42
+ //# sourceMappingURL=useDynamicTextareaRows.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/visualBuilder/hooks/useDynamicTextareaRows.tsx"],"sourcesContent":["import React, { useEffect } from \"preact/compat\";\n\nconst useDynamicTextareaRows = (\n selector: string,\n dependency: string,\n defaultRows: number = 1,\n expandedRows: number = 3\n) => {\n useEffect(() => {\n const textAreaElement: HTMLTextAreaElement | null =\n document.querySelector(selector);\n\n if (textAreaElement) {\n textAreaElement.setAttribute(\n \"rows\",\n dependency.length > 0 ? `${expandedRows}` : `${defaultRows}`\n );\n }\n\n return () => {\n textAreaElement?.setAttribute(\"rows\", `${defaultRows}`);\n };\n }, [dependency, selector, defaultRows, expandedRows]);\n};\n\nexport default useDynamicTextareaRows;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oBAAiC;AAEjC,IAAM,yBAAyB,CAC3B,UACA,YACA,cAAsB,GACtB,eAAuB,MACtB;AACD,+BAAU,MAAM;AACZ,UAAM,kBACF,SAAS,cAAc,QAAQ;AAEnC,QAAI,iBAAiB;AACjB,sBAAgB;AAAA,QACZ;AAAA,QACA,WAAW,SAAS,IAAI,GAAG,YAAY,KAAK,GAAG,WAAW;AAAA,MAC9D;AAAA,IACJ;AAEA,WAAO,MAAM;AACT,yDAAiB,aAAa,QAAQ,GAAG,WAAW;AAAA,IACxD;AAAA,EACJ,GAAG,CAAC,YAAY,UAAU,aAAa,YAAY,CAAC;AACxD;AAEA,IAAO,iCAAQ;","names":[]}
@@ -0,0 +1,3 @@
1
+ declare const useDynamicTextareaRows: (selector: string, dependency: string, defaultRows?: number, expandedRows?: number) => void;
2
+
3
+ export { useDynamicTextareaRows as default };
@@ -0,0 +1,3 @@
1
+ declare const useDynamicTextareaRows: (selector: string, dependency: string, defaultRows?: number, expandedRows?: number) => void;
2
+
3
+ export { useDynamicTextareaRows as default };
@@ -0,0 +1,23 @@
1
+ import "../../chunk-5WRI5ZAA.js";
2
+
3
+ // src/visualBuilder/hooks/useDynamicTextareaRows.tsx
4
+ import { useEffect } from "preact/compat";
5
+ var useDynamicTextareaRows = (selector, dependency, defaultRows = 1, expandedRows = 3) => {
6
+ useEffect(() => {
7
+ const textAreaElement = document.querySelector(selector);
8
+ if (textAreaElement) {
9
+ textAreaElement.setAttribute(
10
+ "rows",
11
+ dependency.length > 0 ? `${expandedRows}` : `${defaultRows}`
12
+ );
13
+ }
14
+ return () => {
15
+ textAreaElement == null ? void 0 : textAreaElement.setAttribute("rows", `${defaultRows}`);
16
+ };
17
+ }, [dependency, selector, defaultRows, expandedRows]);
18
+ };
19
+ var useDynamicTextareaRows_default = useDynamicTextareaRows;
20
+ export {
21
+ useDynamicTextareaRows_default as default
22
+ };
23
+ //# sourceMappingURL=useDynamicTextareaRows.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/visualBuilder/hooks/useDynamicTextareaRows.tsx"],"sourcesContent":["import React, { useEffect } from \"preact/compat\";\n\nconst useDynamicTextareaRows = (\n selector: string,\n dependency: string,\n defaultRows: number = 1,\n expandedRows: number = 3\n) => {\n useEffect(() => {\n const textAreaElement: HTMLTextAreaElement | null =\n document.querySelector(selector);\n\n if (textAreaElement) {\n textAreaElement.setAttribute(\n \"rows\",\n dependency.length > 0 ? `${expandedRows}` : `${defaultRows}`\n );\n }\n\n return () => {\n textAreaElement?.setAttribute(\"rows\", `${defaultRows}`);\n };\n }, [dependency, selector, defaultRows, expandedRows]);\n};\n\nexport default useDynamicTextareaRows;\n"],"mappings":";;;AAAA,SAAgB,iBAAiB;AAEjC,IAAM,yBAAyB,CAC3B,UACA,YACA,cAAsB,GACtB,eAAuB,MACtB;AACD,YAAU,MAAM;AACZ,UAAM,kBACF,SAAS,cAAc,QAAQ;AAEnC,QAAI,iBAAiB;AACjB,sBAAgB;AAAA,QACZ;AAAA,QACA,WAAW,SAAS,IAAI,GAAG,YAAY,KAAK,GAAG,WAAW;AAAA,MAC9D;AAAA,IACJ;AAEA,WAAO,MAAM;AACT,yDAAiB,aAAa,QAAQ,GAAG,WAAW;AAAA,IACxD;AAAA,EACJ,GAAG,CAAC,YAAY,UAAU,aAAa,YAAY,CAAC;AACxD;AAEA,IAAO,iCAAQ;","names":[]}