@contentstack/live-preview-utils 3.2.0-alpha.1 → 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 (484) hide show
  1. package/README.md +2 -2
  2. package/dist/legacy/configManager/config.default.cjs +10 -1
  3. package/dist/legacy/configManager/config.default.cjs.map +1 -1
  4. package/dist/legacy/configManager/config.default.js +10 -1
  5. package/dist/legacy/configManager/config.default.js.map +1 -1
  6. package/dist/legacy/configManager/handleUserConfig.cjs +7 -3
  7. package/dist/legacy/configManager/handleUserConfig.cjs.map +1 -1
  8. package/dist/legacy/configManager/handleUserConfig.js +7 -3
  9. package/dist/legacy/configManager/handleUserConfig.js.map +1 -1
  10. package/dist/legacy/index.cjs +45 -1
  11. package/dist/legacy/index.cjs.map +1 -1
  12. package/dist/legacy/index.d.cts +16 -2
  13. package/dist/legacy/index.d.ts +16 -2
  14. package/dist/legacy/index.js +45 -1
  15. package/dist/legacy/index.js.map +1 -1
  16. package/dist/legacy/livePreview/editButton/editButton.cjs +86 -1
  17. package/dist/legacy/livePreview/editButton/editButton.cjs.map +1 -1
  18. package/dist/legacy/livePreview/editButton/editButton.d.cts +14 -1
  19. package/dist/legacy/livePreview/editButton/editButton.d.ts +14 -1
  20. package/dist/legacy/livePreview/editButton/editButton.js +85 -1
  21. package/dist/legacy/livePreview/editButton/editButton.js.map +1 -1
  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/preview/contentstack-live-preview-HOC.cjs +6 -2
  25. package/dist/legacy/preview/contentstack-live-preview-HOC.cjs.map +1 -1
  26. package/dist/legacy/preview/contentstack-live-preview-HOC.js +6 -2
  27. package/dist/legacy/preview/contentstack-live-preview-HOC.js.map +1 -1
  28. package/dist/legacy/types/types.cjs.map +1 -1
  29. package/dist/legacy/types/types.d.cts +10 -15
  30. package/dist/legacy/types/types.d.ts +10 -15
  31. package/dist/legacy/types/types.js.map +1 -1
  32. package/dist/legacy/visualBuilder/collab.style.cjs +131 -1
  33. package/dist/legacy/visualBuilder/collab.style.cjs.map +1 -1
  34. package/dist/legacy/visualBuilder/collab.style.d.cts +17 -0
  35. package/dist/legacy/visualBuilder/collab.style.d.ts +17 -0
  36. package/dist/legacy/visualBuilder/collab.style.js +131 -1
  37. package/dist/legacy/visualBuilder/collab.style.js.map +1 -1
  38. package/dist/legacy/visualBuilder/components/Collab/AsyncLoader/AsyncLoader.cjs +70 -0
  39. package/dist/legacy/visualBuilder/components/Collab/AsyncLoader/AsyncLoader.cjs.map +1 -0
  40. package/dist/legacy/visualBuilder/components/Collab/AsyncLoader/AsyncLoader.d.cts +12 -0
  41. package/dist/legacy/visualBuilder/components/Collab/AsyncLoader/AsyncLoader.d.ts +12 -0
  42. package/dist/legacy/visualBuilder/components/Collab/AsyncLoader/AsyncLoader.js +41 -0
  43. package/dist/legacy/visualBuilder/components/Collab/AsyncLoader/AsyncLoader.js.map +1 -0
  44. package/dist/legacy/visualBuilder/components/Collab/Button/Button.cjs +32 -10
  45. package/dist/legacy/visualBuilder/components/Collab/Button/Button.cjs.map +1 -1
  46. package/dist/legacy/visualBuilder/components/Collab/Button/Button.d.cts +2 -0
  47. package/dist/legacy/visualBuilder/components/Collab/Button/Button.d.ts +2 -0
  48. package/dist/legacy/visualBuilder/components/Collab/Button/Button.js +33 -11
  49. package/dist/legacy/visualBuilder/components/Collab/Button/Button.js.map +1 -1
  50. package/dist/legacy/visualBuilder/components/Collab/CollabIndicator.cjs +11 -4
  51. package/dist/legacy/visualBuilder/components/Collab/CollabIndicator.cjs.map +1 -1
  52. package/dist/legacy/visualBuilder/components/Collab/CollabIndicator.js +11 -4
  53. package/dist/legacy/visualBuilder/components/Collab/CollabIndicator.js.map +1 -1
  54. package/dist/legacy/visualBuilder/components/Collab/Icon/Icon.cjs +6 -1
  55. package/dist/legacy/visualBuilder/components/Collab/Icon/Icon.cjs.map +1 -1
  56. package/dist/legacy/visualBuilder/components/Collab/Icon/Icon.d.cts +1 -0
  57. package/dist/legacy/visualBuilder/components/Collab/Icon/Icon.d.ts +1 -0
  58. package/dist/legacy/visualBuilder/components/Collab/Icon/Icon.js +6 -1
  59. package/dist/legacy/visualBuilder/components/Collab/Icon/Icon.js.map +1 -1
  60. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/CommentActionBar.cjs +8 -3
  61. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/CommentActionBar.cjs.map +1 -1
  62. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/CommentActionBar.js +9 -4
  63. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/CommentActionBar.js.map +1 -1
  64. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/CommentCard.cjs +1 -2
  65. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/CommentCard.cjs.map +1 -1
  66. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/CommentCard.js +2 -3
  67. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/CommentCard.js.map +1 -1
  68. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/CommentResolvedText.cjs +2 -5
  69. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/CommentResolvedText.cjs.map +1 -1
  70. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/CommentResolvedText.js +3 -9
  71. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/CommentResolvedText.js.map +1 -1
  72. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/CommentTextArea.cjs +98 -57
  73. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/CommentTextArea.cjs.map +1 -1
  74. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/CommentTextArea.js +98 -57
  75. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/CommentTextArea.js.map +1 -1
  76. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/ThreadActionBar.cjs +92 -0
  77. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/ThreadActionBar.cjs.map +1 -0
  78. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/ThreadActionBar.d.cts +13 -0
  79. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/ThreadActionBar.d.ts +13 -0
  80. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/ThreadActionBar.js +63 -0
  81. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/ThreadActionBar.js.map +1 -0
  82. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/ThreadFooter.cjs +1 -0
  83. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/ThreadFooter.cjs.map +1 -1
  84. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/ThreadFooter.js +1 -0
  85. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/ThreadFooter.js.map +1 -1
  86. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/ThreadHeader.cjs +19 -50
  87. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/ThreadHeader.cjs.map +1 -1
  88. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/ThreadHeader.js +21 -52
  89. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/ThreadHeader.js.map +1 -1
  90. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/index.cjs +29 -18
  91. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/index.cjs.map +1 -1
  92. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/index.js +29 -18
  93. package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/index.js.map +1 -1
  94. package/dist/legacy/visualBuilder/components/Collab/Tooltip/Tooltip.cjs +19 -35
  95. package/dist/legacy/visualBuilder/components/Collab/Tooltip/Tooltip.cjs.map +1 -1
  96. package/dist/legacy/visualBuilder/components/Collab/Tooltip/Tooltip.js +19 -35
  97. package/dist/legacy/visualBuilder/components/Collab/Tooltip/Tooltip.js.map +1 -1
  98. package/dist/legacy/visualBuilder/components/FieldToolbar.cjs +28 -22
  99. package/dist/legacy/visualBuilder/components/FieldToolbar.cjs.map +1 -1
  100. package/dist/legacy/visualBuilder/components/FieldToolbar.d.cts +1 -0
  101. package/dist/legacy/visualBuilder/components/FieldToolbar.d.ts +1 -0
  102. package/dist/legacy/visualBuilder/components/FieldToolbar.js +29 -24
  103. package/dist/legacy/visualBuilder/components/FieldToolbar.js.map +1 -1
  104. package/dist/legacy/visualBuilder/components/addInstanceButton.cjs +39 -11
  105. package/dist/legacy/visualBuilder/components/addInstanceButton.cjs.map +1 -1
  106. package/dist/legacy/visualBuilder/components/addInstanceButton.d.cts +5 -0
  107. package/dist/legacy/visualBuilder/components/addInstanceButton.d.ts +5 -0
  108. package/dist/legacy/visualBuilder/components/addInstanceButton.js +39 -11
  109. package/dist/legacy/visualBuilder/components/addInstanceButton.js.map +1 -1
  110. package/dist/legacy/visualBuilder/components/startEditingButton.cjs +38 -11
  111. package/dist/legacy/visualBuilder/components/startEditingButton.cjs.map +1 -1
  112. package/dist/legacy/visualBuilder/components/startEditingButton.d.cts +7 -2
  113. package/dist/legacy/visualBuilder/components/startEditingButton.d.ts +7 -2
  114. package/dist/legacy/visualBuilder/components/startEditingButton.js +34 -11
  115. package/dist/legacy/visualBuilder/components/startEditingButton.js.map +1 -1
  116. package/dist/legacy/visualBuilder/eventManager/useCollab.cjs +57 -19
  117. package/dist/legacy/visualBuilder/eventManager/useCollab.cjs.map +1 -1
  118. package/dist/legacy/visualBuilder/eventManager/useCollab.js +57 -19
  119. package/dist/legacy/visualBuilder/eventManager/useCollab.js.map +1 -1
  120. package/dist/legacy/visualBuilder/eventManager/useHideFocusOverlayPostMessageEvent.cjs +7 -2
  121. package/dist/legacy/visualBuilder/eventManager/useHideFocusOverlayPostMessageEvent.cjs.map +1 -1
  122. package/dist/legacy/visualBuilder/eventManager/useHideFocusOverlayPostMessageEvent.js +7 -2
  123. package/dist/legacy/visualBuilder/eventManager/useHideFocusOverlayPostMessageEvent.js.map +1 -1
  124. package/dist/legacy/visualBuilder/eventManager/useRecalculateVariantDataCSLPValues.cjs +59 -4
  125. package/dist/legacy/visualBuilder/eventManager/useRecalculateVariantDataCSLPValues.cjs.map +1 -1
  126. package/dist/legacy/visualBuilder/eventManager/useRecalculateVariantDataCSLPValues.js +59 -4
  127. package/dist/legacy/visualBuilder/eventManager/useRecalculateVariantDataCSLPValues.js.map +1 -1
  128. package/dist/legacy/visualBuilder/generators/generateAddInstanceButtons.cjs +8 -2
  129. package/dist/legacy/visualBuilder/generators/generateAddInstanceButtons.cjs.map +1 -1
  130. package/dist/legacy/visualBuilder/generators/generateAddInstanceButtons.d.cts +9 -3
  131. package/dist/legacy/visualBuilder/generators/generateAddInstanceButtons.d.ts +9 -3
  132. package/dist/legacy/visualBuilder/generators/generateAddInstanceButtons.js +8 -2
  133. package/dist/legacy/visualBuilder/generators/generateAddInstanceButtons.js.map +1 -1
  134. package/dist/legacy/visualBuilder/generators/generateOverlay.cjs +5 -0
  135. package/dist/legacy/visualBuilder/generators/generateOverlay.cjs.map +1 -1
  136. package/dist/legacy/visualBuilder/generators/generateOverlay.js +5 -0
  137. package/dist/legacy/visualBuilder/generators/generateOverlay.js.map +1 -1
  138. package/dist/legacy/visualBuilder/generators/generateThread.cjs +103 -18
  139. package/dist/legacy/visualBuilder/generators/generateThread.cjs.map +1 -1
  140. package/dist/legacy/visualBuilder/generators/generateThread.d.cts +3 -1
  141. package/dist/legacy/visualBuilder/generators/generateThread.d.ts +3 -1
  142. package/dist/legacy/visualBuilder/generators/generateThread.js +101 -17
  143. package/dist/legacy/visualBuilder/generators/generateThread.js.map +1 -1
  144. package/dist/legacy/visualBuilder/generators/generateToolbar.cjs +13 -5
  145. package/dist/legacy/visualBuilder/generators/generateToolbar.cjs.map +1 -1
  146. package/dist/legacy/visualBuilder/generators/generateToolbar.d.cts +2 -2
  147. package/dist/legacy/visualBuilder/generators/generateToolbar.d.ts +2 -2
  148. package/dist/legacy/visualBuilder/generators/generateToolbar.js +13 -5
  149. package/dist/legacy/visualBuilder/generators/generateToolbar.js.map +1 -1
  150. package/dist/legacy/visualBuilder/hooks/useCollabOperations.cjs +9 -8
  151. package/dist/legacy/visualBuilder/hooks/useCollabOperations.cjs.map +1 -1
  152. package/dist/legacy/visualBuilder/hooks/useCollabOperations.js +9 -8
  153. package/dist/legacy/visualBuilder/hooks/useCollabOperations.js.map +1 -1
  154. package/dist/legacy/visualBuilder/hooks/useCommentTextArea.cjs +23 -5
  155. package/dist/legacy/visualBuilder/hooks/useCommentTextArea.cjs.map +1 -1
  156. package/dist/legacy/visualBuilder/hooks/useCommentTextArea.d.cts +1 -0
  157. package/dist/legacy/visualBuilder/hooks/useCommentTextArea.d.ts +1 -0
  158. package/dist/legacy/visualBuilder/hooks/useCommentTextArea.js +23 -5
  159. package/dist/legacy/visualBuilder/hooks/useCommentTextArea.js.map +1 -1
  160. package/dist/legacy/visualBuilder/index.cjs +16 -11
  161. package/dist/legacy/visualBuilder/index.cjs.map +1 -1
  162. package/dist/legacy/visualBuilder/index.d.cts +1 -0
  163. package/dist/legacy/visualBuilder/index.d.ts +1 -0
  164. package/dist/legacy/visualBuilder/index.js +14 -5
  165. package/dist/legacy/visualBuilder/index.js.map +1 -1
  166. package/dist/legacy/visualBuilder/listeners/mouseClick.cjs +81 -20
  167. package/dist/legacy/visualBuilder/listeners/mouseClick.cjs.map +1 -1
  168. package/dist/legacy/visualBuilder/listeners/mouseClick.d.cts +4 -1
  169. package/dist/legacy/visualBuilder/listeners/mouseClick.d.ts +4 -1
  170. package/dist/legacy/visualBuilder/listeners/mouseClick.js +81 -20
  171. package/dist/legacy/visualBuilder/listeners/mouseClick.js.map +1 -1
  172. package/dist/legacy/visualBuilder/listeners/mouseHover.cjs +3 -1
  173. package/dist/legacy/visualBuilder/listeners/mouseHover.cjs.map +1 -1
  174. package/dist/legacy/visualBuilder/listeners/mouseHover.js +3 -1
  175. package/dist/legacy/visualBuilder/listeners/mouseHover.js.map +1 -1
  176. package/dist/legacy/visualBuilder/types/collab.types.cjs.map +1 -1
  177. package/dist/legacy/visualBuilder/types/collab.types.d.cts +22 -1
  178. package/dist/legacy/visualBuilder/types/collab.types.d.ts +22 -1
  179. package/dist/legacy/visualBuilder/utils/collabUtils.cjs +105 -2
  180. package/dist/legacy/visualBuilder/utils/collabUtils.cjs.map +1 -1
  181. package/dist/legacy/visualBuilder/utils/collabUtils.d.cts +25 -1
  182. package/dist/legacy/visualBuilder/utils/collabUtils.d.ts +25 -1
  183. package/dist/legacy/visualBuilder/utils/collabUtils.js +100 -2
  184. package/dist/legacy/visualBuilder/utils/collabUtils.js.map +1 -1
  185. package/dist/legacy/visualBuilder/utils/enableInlineEditing.cjs +94 -0
  186. package/dist/legacy/visualBuilder/utils/enableInlineEditing.cjs.map +1 -0
  187. package/dist/legacy/visualBuilder/utils/enableInlineEditing.d.cts +11 -0
  188. package/dist/legacy/visualBuilder/utils/enableInlineEditing.d.ts +11 -0
  189. package/dist/legacy/visualBuilder/utils/enableInlineEditing.js +74 -0
  190. package/dist/legacy/visualBuilder/utils/enableInlineEditing.js.map +1 -0
  191. package/dist/legacy/visualBuilder/utils/getChildrenDirection.cjs +8 -0
  192. package/dist/legacy/visualBuilder/utils/getChildrenDirection.cjs.map +1 -1
  193. package/dist/legacy/visualBuilder/utils/getChildrenDirection.d.cts +3 -1
  194. package/dist/legacy/visualBuilder/utils/getChildrenDirection.d.ts +3 -1
  195. package/dist/legacy/visualBuilder/utils/getChildrenDirection.js +8 -0
  196. package/dist/legacy/visualBuilder/utils/getChildrenDirection.js.map +1 -1
  197. package/dist/legacy/visualBuilder/utils/handleIndividualFields.cjs +24 -112
  198. package/dist/legacy/visualBuilder/utils/handleIndividualFields.cjs.map +1 -1
  199. package/dist/legacy/visualBuilder/utils/handleIndividualFields.d.cts +3 -5
  200. package/dist/legacy/visualBuilder/utils/handleIndividualFields.d.ts +3 -5
  201. package/dist/legacy/visualBuilder/utils/handleIndividualFields.js +22 -116
  202. package/dist/legacy/visualBuilder/utils/handleIndividualFields.js.map +1 -1
  203. package/dist/legacy/visualBuilder/utils/handleInlineEditableField.cjs +81 -0
  204. package/dist/legacy/visualBuilder/utils/handleInlineEditableField.cjs.map +1 -0
  205. package/dist/legacy/visualBuilder/utils/handleInlineEditableField.d.cts +16 -0
  206. package/dist/legacy/visualBuilder/utils/handleInlineEditableField.d.ts +16 -0
  207. package/dist/legacy/visualBuilder/utils/handleInlineEditableField.js +58 -0
  208. package/dist/legacy/visualBuilder/utils/handleInlineEditableField.js.map +1 -0
  209. package/dist/legacy/visualBuilder/utils/isFieldMultiple.cjs +35 -0
  210. package/dist/legacy/visualBuilder/utils/isFieldMultiple.cjs.map +1 -0
  211. package/dist/legacy/visualBuilder/utils/isFieldMultiple.d.cts +6 -0
  212. package/dist/legacy/visualBuilder/utils/isFieldMultiple.d.ts +6 -0
  213. package/dist/legacy/visualBuilder/utils/isFieldMultiple.js +12 -0
  214. package/dist/legacy/visualBuilder/utils/isFieldMultiple.js.map +1 -0
  215. package/dist/legacy/visualBuilder/utils/multipleElementAddButton.cjs +14 -20
  216. package/dist/legacy/visualBuilder/utils/multipleElementAddButton.cjs.map +1 -1
  217. package/dist/legacy/visualBuilder/utils/multipleElementAddButton.d.cts +1 -1
  218. package/dist/legacy/visualBuilder/utils/multipleElementAddButton.d.ts +1 -1
  219. package/dist/legacy/visualBuilder/utils/multipleElementAddButton.js +14 -20
  220. package/dist/legacy/visualBuilder/utils/multipleElementAddButton.js.map +1 -1
  221. package/dist/legacy/visualBuilder/utils/pasteAsPlainText.cjs +44 -0
  222. package/dist/legacy/visualBuilder/utils/pasteAsPlainText.cjs.map +1 -0
  223. package/dist/legacy/visualBuilder/utils/pasteAsPlainText.d.cts +5 -0
  224. package/dist/legacy/visualBuilder/utils/pasteAsPlainText.d.ts +5 -0
  225. package/dist/legacy/visualBuilder/utils/pasteAsPlainText.js +21 -0
  226. package/dist/legacy/visualBuilder/utils/pasteAsPlainText.js.map +1 -0
  227. package/dist/legacy/visualBuilder/utils/types/index.types.cjs.map +1 -1
  228. package/dist/legacy/visualBuilder/utils/types/index.types.d.cts +6 -1
  229. package/dist/legacy/visualBuilder/utils/types/index.types.d.ts +6 -1
  230. package/dist/legacy/visualBuilder/utils/types/index.types.js.map +1 -1
  231. package/dist/legacy/visualBuilder/utils/types/postMessage.types.cjs +2 -1
  232. package/dist/legacy/visualBuilder/utils/types/postMessage.types.cjs.map +1 -1
  233. package/dist/legacy/visualBuilder/utils/types/postMessage.types.d.cts +2 -1
  234. package/dist/legacy/visualBuilder/utils/types/postMessage.types.d.ts +2 -1
  235. package/dist/legacy/visualBuilder/utils/types/postMessage.types.js +2 -1
  236. package/dist/legacy/visualBuilder/utils/types/postMessage.types.js.map +1 -1
  237. package/dist/legacy/visualBuilder/visualBuilder.style.cjs +27 -5
  238. package/dist/legacy/visualBuilder/visualBuilder.style.cjs.map +1 -1
  239. package/dist/legacy/visualBuilder/visualBuilder.style.d.cts +6 -1
  240. package/dist/legacy/visualBuilder/visualBuilder.style.d.ts +6 -1
  241. package/dist/legacy/visualBuilder/visualBuilder.style.js +27 -5
  242. package/dist/legacy/visualBuilder/visualBuilder.style.js.map +1 -1
  243. package/dist/modern/configManager/config.default.cjs +10 -1
  244. package/dist/modern/configManager/config.default.cjs.map +1 -1
  245. package/dist/modern/configManager/config.default.js +10 -1
  246. package/dist/modern/configManager/config.default.js.map +1 -1
  247. package/dist/modern/configManager/handleUserConfig.cjs +4 -0
  248. package/dist/modern/configManager/handleUserConfig.cjs.map +1 -1
  249. package/dist/modern/configManager/handleUserConfig.js +4 -0
  250. package/dist/modern/configManager/handleUserConfig.js.map +1 -1
  251. package/dist/modern/index.cjs +45 -1
  252. package/dist/modern/index.cjs.map +1 -1
  253. package/dist/modern/index.d.cts +16 -2
  254. package/dist/modern/index.d.ts +16 -2
  255. package/dist/modern/index.js +45 -1
  256. package/dist/modern/index.js.map +1 -1
  257. package/dist/modern/livePreview/editButton/editButton.cjs +85 -1
  258. package/dist/modern/livePreview/editButton/editButton.cjs.map +1 -1
  259. package/dist/modern/livePreview/editButton/editButton.d.cts +14 -1
  260. package/dist/modern/livePreview/editButton/editButton.d.ts +14 -1
  261. package/dist/modern/livePreview/editButton/editButton.js +84 -1
  262. package/dist/modern/livePreview/editButton/editButton.js.map +1 -1
  263. package/dist/modern/livePreview/eventManager/postMessageEvent.hooks.cjs +1 -1
  264. package/dist/modern/livePreview/eventManager/postMessageEvent.hooks.js +1 -1
  265. package/dist/modern/preview/contentstack-live-preview-HOC.cjs +6 -2
  266. package/dist/modern/preview/contentstack-live-preview-HOC.cjs.map +1 -1
  267. package/dist/modern/preview/contentstack-live-preview-HOC.js +6 -2
  268. package/dist/modern/preview/contentstack-live-preview-HOC.js.map +1 -1
  269. package/dist/modern/types/types.cjs.map +1 -1
  270. package/dist/modern/types/types.d.cts +10 -15
  271. package/dist/modern/types/types.d.ts +10 -15
  272. package/dist/modern/types/types.js.map +1 -1
  273. package/dist/modern/visualBuilder/collab.style.cjs +131 -1
  274. package/dist/modern/visualBuilder/collab.style.cjs.map +1 -1
  275. package/dist/modern/visualBuilder/collab.style.d.cts +17 -0
  276. package/dist/modern/visualBuilder/collab.style.d.ts +17 -0
  277. package/dist/modern/visualBuilder/collab.style.js +131 -1
  278. package/dist/modern/visualBuilder/collab.style.js.map +1 -1
  279. package/dist/modern/visualBuilder/components/Collab/AsyncLoader/AsyncLoader.cjs +70 -0
  280. package/dist/modern/visualBuilder/components/Collab/AsyncLoader/AsyncLoader.cjs.map +1 -0
  281. package/dist/modern/visualBuilder/components/Collab/AsyncLoader/AsyncLoader.d.cts +12 -0
  282. package/dist/modern/visualBuilder/components/Collab/AsyncLoader/AsyncLoader.d.ts +12 -0
  283. package/dist/modern/visualBuilder/components/Collab/AsyncLoader/AsyncLoader.js +41 -0
  284. package/dist/modern/visualBuilder/components/Collab/AsyncLoader/AsyncLoader.js.map +1 -0
  285. package/dist/modern/visualBuilder/components/Collab/Button/Button.cjs +32 -10
  286. package/dist/modern/visualBuilder/components/Collab/Button/Button.cjs.map +1 -1
  287. package/dist/modern/visualBuilder/components/Collab/Button/Button.d.cts +2 -0
  288. package/dist/modern/visualBuilder/components/Collab/Button/Button.d.ts +2 -0
  289. package/dist/modern/visualBuilder/components/Collab/Button/Button.js +33 -11
  290. package/dist/modern/visualBuilder/components/Collab/Button/Button.js.map +1 -1
  291. package/dist/modern/visualBuilder/components/Collab/CollabIndicator.cjs +7 -1
  292. package/dist/modern/visualBuilder/components/Collab/CollabIndicator.cjs.map +1 -1
  293. package/dist/modern/visualBuilder/components/Collab/CollabIndicator.js +7 -1
  294. package/dist/modern/visualBuilder/components/Collab/CollabIndicator.js.map +1 -1
  295. package/dist/modern/visualBuilder/components/Collab/Icon/Icon.cjs +6 -1
  296. package/dist/modern/visualBuilder/components/Collab/Icon/Icon.cjs.map +1 -1
  297. package/dist/modern/visualBuilder/components/Collab/Icon/Icon.d.cts +1 -0
  298. package/dist/modern/visualBuilder/components/Collab/Icon/Icon.d.ts +1 -0
  299. package/dist/modern/visualBuilder/components/Collab/Icon/Icon.js +6 -1
  300. package/dist/modern/visualBuilder/components/Collab/Icon/Icon.js.map +1 -1
  301. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/CommentActionBar.cjs +8 -3
  302. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/CommentActionBar.cjs.map +1 -1
  303. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/CommentActionBar.js +9 -4
  304. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/CommentActionBar.js.map +1 -1
  305. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/CommentCard.cjs +1 -2
  306. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/CommentCard.cjs.map +1 -1
  307. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/CommentCard.js +2 -3
  308. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/CommentCard.js.map +1 -1
  309. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/CommentResolvedText.cjs +2 -5
  310. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/CommentResolvedText.cjs.map +1 -1
  311. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/CommentResolvedText.js +3 -9
  312. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/CommentResolvedText.js.map +1 -1
  313. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/CommentTextArea.cjs +94 -57
  314. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/CommentTextArea.cjs.map +1 -1
  315. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/CommentTextArea.js +94 -57
  316. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/CommentTextArea.js.map +1 -1
  317. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/ThreadActionBar.cjs +92 -0
  318. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/ThreadActionBar.cjs.map +1 -0
  319. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/ThreadActionBar.d.cts +13 -0
  320. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/ThreadActionBar.d.ts +13 -0
  321. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/ThreadActionBar.js +63 -0
  322. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/ThreadActionBar.js.map +1 -0
  323. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/ThreadFooter.cjs +1 -0
  324. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/ThreadFooter.cjs.map +1 -1
  325. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/ThreadFooter.js +1 -0
  326. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/ThreadFooter.js.map +1 -1
  327. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/ThreadHeader.cjs +19 -50
  328. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/ThreadHeader.cjs.map +1 -1
  329. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/ThreadHeader.js +21 -52
  330. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/ThreadHeader.js.map +1 -1
  331. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/index.cjs +29 -18
  332. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/index.cjs.map +1 -1
  333. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/index.js +29 -18
  334. package/dist/modern/visualBuilder/components/Collab/ThreadPopup/index.js.map +1 -1
  335. package/dist/modern/visualBuilder/components/Collab/Tooltip/Tooltip.cjs +19 -35
  336. package/dist/modern/visualBuilder/components/Collab/Tooltip/Tooltip.cjs.map +1 -1
  337. package/dist/modern/visualBuilder/components/Collab/Tooltip/Tooltip.js +19 -35
  338. package/dist/modern/visualBuilder/components/Collab/Tooltip/Tooltip.js.map +1 -1
  339. package/dist/modern/visualBuilder/components/FieldToolbar.cjs +28 -21
  340. package/dist/modern/visualBuilder/components/FieldToolbar.cjs.map +1 -1
  341. package/dist/modern/visualBuilder/components/FieldToolbar.d.cts +1 -0
  342. package/dist/modern/visualBuilder/components/FieldToolbar.d.ts +1 -0
  343. package/dist/modern/visualBuilder/components/FieldToolbar.js +29 -23
  344. package/dist/modern/visualBuilder/components/FieldToolbar.js.map +1 -1
  345. package/dist/modern/visualBuilder/components/addInstanceButton.cjs +38 -11
  346. package/dist/modern/visualBuilder/components/addInstanceButton.cjs.map +1 -1
  347. package/dist/modern/visualBuilder/components/addInstanceButton.d.cts +5 -0
  348. package/dist/modern/visualBuilder/components/addInstanceButton.d.ts +5 -0
  349. package/dist/modern/visualBuilder/components/addInstanceButton.js +38 -11
  350. package/dist/modern/visualBuilder/components/addInstanceButton.js.map +1 -1
  351. package/dist/modern/visualBuilder/components/startEditingButton.cjs +38 -11
  352. package/dist/modern/visualBuilder/components/startEditingButton.cjs.map +1 -1
  353. package/dist/modern/visualBuilder/components/startEditingButton.d.cts +7 -2
  354. package/dist/modern/visualBuilder/components/startEditingButton.d.ts +7 -2
  355. package/dist/modern/visualBuilder/components/startEditingButton.js +34 -11
  356. package/dist/modern/visualBuilder/components/startEditingButton.js.map +1 -1
  357. package/dist/modern/visualBuilder/eventManager/useCollab.cjs +45 -11
  358. package/dist/modern/visualBuilder/eventManager/useCollab.cjs.map +1 -1
  359. package/dist/modern/visualBuilder/eventManager/useCollab.js +45 -11
  360. package/dist/modern/visualBuilder/eventManager/useCollab.js.map +1 -1
  361. package/dist/modern/visualBuilder/eventManager/useHideFocusOverlayPostMessageEvent.cjs +5 -0
  362. package/dist/modern/visualBuilder/eventManager/useHideFocusOverlayPostMessageEvent.cjs.map +1 -1
  363. package/dist/modern/visualBuilder/eventManager/useHideFocusOverlayPostMessageEvent.js +5 -0
  364. package/dist/modern/visualBuilder/eventManager/useHideFocusOverlayPostMessageEvent.js.map +1 -1
  365. package/dist/modern/visualBuilder/eventManager/useRecalculateVariantDataCSLPValues.cjs +59 -4
  366. package/dist/modern/visualBuilder/eventManager/useRecalculateVariantDataCSLPValues.cjs.map +1 -1
  367. package/dist/modern/visualBuilder/eventManager/useRecalculateVariantDataCSLPValues.js +59 -4
  368. package/dist/modern/visualBuilder/eventManager/useRecalculateVariantDataCSLPValues.js.map +1 -1
  369. package/dist/modern/visualBuilder/generators/generateAddInstanceButtons.cjs +8 -2
  370. package/dist/modern/visualBuilder/generators/generateAddInstanceButtons.cjs.map +1 -1
  371. package/dist/modern/visualBuilder/generators/generateAddInstanceButtons.d.cts +9 -3
  372. package/dist/modern/visualBuilder/generators/generateAddInstanceButtons.d.ts +9 -3
  373. package/dist/modern/visualBuilder/generators/generateAddInstanceButtons.js +8 -2
  374. package/dist/modern/visualBuilder/generators/generateAddInstanceButtons.js.map +1 -1
  375. package/dist/modern/visualBuilder/generators/generateOverlay.cjs +5 -0
  376. package/dist/modern/visualBuilder/generators/generateOverlay.cjs.map +1 -1
  377. package/dist/modern/visualBuilder/generators/generateOverlay.js +5 -0
  378. package/dist/modern/visualBuilder/generators/generateOverlay.js.map +1 -1
  379. package/dist/modern/visualBuilder/generators/generateThread.cjs +102 -16
  380. package/dist/modern/visualBuilder/generators/generateThread.cjs.map +1 -1
  381. package/dist/modern/visualBuilder/generators/generateThread.d.cts +3 -1
  382. package/dist/modern/visualBuilder/generators/generateThread.d.ts +3 -1
  383. package/dist/modern/visualBuilder/generators/generateThread.js +100 -15
  384. package/dist/modern/visualBuilder/generators/generateThread.js.map +1 -1
  385. package/dist/modern/visualBuilder/generators/generateToolbar.cjs +13 -5
  386. package/dist/modern/visualBuilder/generators/generateToolbar.cjs.map +1 -1
  387. package/dist/modern/visualBuilder/generators/generateToolbar.d.cts +2 -2
  388. package/dist/modern/visualBuilder/generators/generateToolbar.d.ts +2 -2
  389. package/dist/modern/visualBuilder/generators/generateToolbar.js +13 -5
  390. package/dist/modern/visualBuilder/generators/generateToolbar.js.map +1 -1
  391. package/dist/modern/visualBuilder/hooks/useCollabOperations.cjs +9 -8
  392. package/dist/modern/visualBuilder/hooks/useCollabOperations.cjs.map +1 -1
  393. package/dist/modern/visualBuilder/hooks/useCollabOperations.js +9 -8
  394. package/dist/modern/visualBuilder/hooks/useCollabOperations.js.map +1 -1
  395. package/dist/modern/visualBuilder/hooks/useCommentTextArea.cjs +22 -5
  396. package/dist/modern/visualBuilder/hooks/useCommentTextArea.cjs.map +1 -1
  397. package/dist/modern/visualBuilder/hooks/useCommentTextArea.d.cts +1 -0
  398. package/dist/modern/visualBuilder/hooks/useCommentTextArea.d.ts +1 -0
  399. package/dist/modern/visualBuilder/hooks/useCommentTextArea.js +22 -5
  400. package/dist/modern/visualBuilder/hooks/useCommentTextArea.js.map +1 -1
  401. package/dist/modern/visualBuilder/index.cjs +16 -11
  402. package/dist/modern/visualBuilder/index.cjs.map +1 -1
  403. package/dist/modern/visualBuilder/index.d.cts +1 -0
  404. package/dist/modern/visualBuilder/index.d.ts +1 -0
  405. package/dist/modern/visualBuilder/index.js +14 -5
  406. package/dist/modern/visualBuilder/index.js.map +1 -1
  407. package/dist/modern/visualBuilder/listeners/mouseClick.cjs +78 -18
  408. package/dist/modern/visualBuilder/listeners/mouseClick.cjs.map +1 -1
  409. package/dist/modern/visualBuilder/listeners/mouseClick.d.cts +4 -1
  410. package/dist/modern/visualBuilder/listeners/mouseClick.d.ts +4 -1
  411. package/dist/modern/visualBuilder/listeners/mouseClick.js +78 -18
  412. package/dist/modern/visualBuilder/listeners/mouseClick.js.map +1 -1
  413. package/dist/modern/visualBuilder/listeners/mouseHover.cjs +3 -1
  414. package/dist/modern/visualBuilder/listeners/mouseHover.cjs.map +1 -1
  415. package/dist/modern/visualBuilder/listeners/mouseHover.js +3 -1
  416. package/dist/modern/visualBuilder/listeners/mouseHover.js.map +1 -1
  417. package/dist/modern/visualBuilder/types/collab.types.cjs.map +1 -1
  418. package/dist/modern/visualBuilder/types/collab.types.d.cts +22 -1
  419. package/dist/modern/visualBuilder/types/collab.types.d.ts +22 -1
  420. package/dist/modern/visualBuilder/utils/collabUtils.cjs +105 -2
  421. package/dist/modern/visualBuilder/utils/collabUtils.cjs.map +1 -1
  422. package/dist/modern/visualBuilder/utils/collabUtils.d.cts +25 -1
  423. package/dist/modern/visualBuilder/utils/collabUtils.d.ts +25 -1
  424. package/dist/modern/visualBuilder/utils/collabUtils.js +100 -2
  425. package/dist/modern/visualBuilder/utils/collabUtils.js.map +1 -1
  426. package/dist/modern/visualBuilder/utils/enableInlineEditing.cjs +94 -0
  427. package/dist/modern/visualBuilder/utils/enableInlineEditing.cjs.map +1 -0
  428. package/dist/modern/visualBuilder/utils/enableInlineEditing.d.cts +11 -0
  429. package/dist/modern/visualBuilder/utils/enableInlineEditing.d.ts +11 -0
  430. package/dist/modern/visualBuilder/utils/enableInlineEditing.js +74 -0
  431. package/dist/modern/visualBuilder/utils/enableInlineEditing.js.map +1 -0
  432. package/dist/modern/visualBuilder/utils/getChildrenDirection.cjs +8 -0
  433. package/dist/modern/visualBuilder/utils/getChildrenDirection.cjs.map +1 -1
  434. package/dist/modern/visualBuilder/utils/getChildrenDirection.d.cts +3 -1
  435. package/dist/modern/visualBuilder/utils/getChildrenDirection.d.ts +3 -1
  436. package/dist/modern/visualBuilder/utils/getChildrenDirection.js +8 -0
  437. package/dist/modern/visualBuilder/utils/getChildrenDirection.js.map +1 -1
  438. package/dist/modern/visualBuilder/utils/handleIndividualFields.cjs +23 -111
  439. package/dist/modern/visualBuilder/utils/handleIndividualFields.cjs.map +1 -1
  440. package/dist/modern/visualBuilder/utils/handleIndividualFields.d.cts +3 -5
  441. package/dist/modern/visualBuilder/utils/handleIndividualFields.d.ts +3 -5
  442. package/dist/modern/visualBuilder/utils/handleIndividualFields.js +21 -115
  443. package/dist/modern/visualBuilder/utils/handleIndividualFields.js.map +1 -1
  444. package/dist/modern/visualBuilder/utils/handleInlineEditableField.cjs +81 -0
  445. package/dist/modern/visualBuilder/utils/handleInlineEditableField.cjs.map +1 -0
  446. package/dist/modern/visualBuilder/utils/handleInlineEditableField.d.cts +16 -0
  447. package/dist/modern/visualBuilder/utils/handleInlineEditableField.d.ts +16 -0
  448. package/dist/modern/visualBuilder/utils/handleInlineEditableField.js +58 -0
  449. package/dist/modern/visualBuilder/utils/handleInlineEditableField.js.map +1 -0
  450. package/dist/modern/visualBuilder/utils/isFieldMultiple.cjs +35 -0
  451. package/dist/modern/visualBuilder/utils/isFieldMultiple.cjs.map +1 -0
  452. package/dist/modern/visualBuilder/utils/isFieldMultiple.d.cts +6 -0
  453. package/dist/modern/visualBuilder/utils/isFieldMultiple.d.ts +6 -0
  454. package/dist/modern/visualBuilder/utils/isFieldMultiple.js +12 -0
  455. package/dist/modern/visualBuilder/utils/isFieldMultiple.js.map +1 -0
  456. package/dist/modern/visualBuilder/utils/multipleElementAddButton.cjs +14 -18
  457. package/dist/modern/visualBuilder/utils/multipleElementAddButton.cjs.map +1 -1
  458. package/dist/modern/visualBuilder/utils/multipleElementAddButton.d.cts +1 -1
  459. package/dist/modern/visualBuilder/utils/multipleElementAddButton.d.ts +1 -1
  460. package/dist/modern/visualBuilder/utils/multipleElementAddButton.js +14 -18
  461. package/dist/modern/visualBuilder/utils/multipleElementAddButton.js.map +1 -1
  462. package/dist/modern/visualBuilder/utils/pasteAsPlainText.cjs +44 -0
  463. package/dist/modern/visualBuilder/utils/pasteAsPlainText.cjs.map +1 -0
  464. package/dist/modern/visualBuilder/utils/pasteAsPlainText.d.cts +5 -0
  465. package/dist/modern/visualBuilder/utils/pasteAsPlainText.d.ts +5 -0
  466. package/dist/modern/visualBuilder/utils/pasteAsPlainText.js +21 -0
  467. package/dist/modern/visualBuilder/utils/pasteAsPlainText.js.map +1 -0
  468. package/dist/modern/visualBuilder/utils/types/index.types.cjs.map +1 -1
  469. package/dist/modern/visualBuilder/utils/types/index.types.d.cts +6 -1
  470. package/dist/modern/visualBuilder/utils/types/index.types.d.ts +6 -1
  471. package/dist/modern/visualBuilder/utils/types/index.types.js.map +1 -1
  472. package/dist/modern/visualBuilder/utils/types/postMessage.types.cjs +2 -1
  473. package/dist/modern/visualBuilder/utils/types/postMessage.types.cjs.map +1 -1
  474. package/dist/modern/visualBuilder/utils/types/postMessage.types.d.cts +2 -1
  475. package/dist/modern/visualBuilder/utils/types/postMessage.types.d.ts +2 -1
  476. package/dist/modern/visualBuilder/utils/types/postMessage.types.js +2 -1
  477. package/dist/modern/visualBuilder/utils/types/postMessage.types.js.map +1 -1
  478. package/dist/modern/visualBuilder/visualBuilder.style.cjs +27 -5
  479. package/dist/modern/visualBuilder/visualBuilder.style.cjs.map +1 -1
  480. package/dist/modern/visualBuilder/visualBuilder.style.d.cts +6 -1
  481. package/dist/modern/visualBuilder/visualBuilder.style.d.ts +6 -1
  482. package/dist/modern/visualBuilder/visualBuilder.style.js +27 -5
  483. package/dist/modern/visualBuilder/visualBuilder.style.js.map +1 -1
  484. package/package.json +4 -3
@@ -2,20 +2,14 @@ import "../../../../chunk-5WRI5ZAA.js";
2
2
 
3
3
  // src/visualBuilder/components/Collab/ThreadPopup/CommentResolvedText.tsx
4
4
  import { useMemo } from "preact/hooks";
5
- import {
6
- getMessageWithDisplayName,
7
- sanitizeData
8
- } from "../../../utils/collabUtils.js";
5
+ import { getMessageWithDisplayName } from "../../../utils/collabUtils.js";
9
6
  import { collabStyles } from "../../../collab.style.js";
10
7
  import classNames from "classnames";
11
8
  import { jsx } from "preact/jsx-runtime";
12
9
  var CommentResolvedText = ({ comment, userState }) => {
13
- const text = useMemo(() => {
14
- return getMessageWithDisplayName(comment, userState, "html");
15
- }, [comment.message, userState.userMap, comment.toUsers]);
16
10
  const sanitizedText = useMemo(() => {
17
- return sanitizeData(text);
18
- }, [text]);
11
+ return getMessageWithDisplayName(comment, userState, "html") ?? "";
12
+ }, [comment.message, userState.userMap, comment.toUsers]);
19
13
  return /* @__PURE__ */ jsx(
20
14
  "div",
21
15
  {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../src/visualBuilder/components/Collab/ThreadPopup/CommentResolvedText.tsx"],"sourcesContent":["/** @jsxImportSource preact */\nimport { useMemo } from \"preact/hooks\";\nimport { ICommentResolvedText } from \"../../../types/collab.types\";\nimport {\n getMessageWithDisplayName,\n sanitizeData,\n} from \"../../../utils/collabUtils\";\nimport { collabStyles } from \"../../../collab.style\";\nimport classNames from \"classnames\";\n\nconst CommentResolvedText = ({ comment, userState }: ICommentResolvedText) => {\n const text = useMemo(() => {\n return getMessageWithDisplayName(comment, userState, \"html\");\n }, [comment.message, userState.userMap, comment.toUsers]);\n\n const sanitizedText = useMemo(() => {\n return sanitizeData(text);\n }, [text]);\n\n return (\n <div\n data-testid={\"collab-thread-comment--message\"}\n className={classNames(\n \"collab-thread-comment--message\",\n collabStyles()[\"collab-thread-comment--message\"]\n )}\n dangerouslySetInnerHTML={{ __html: sanitizedText }}\n ></div>\n );\n};\n\nexport default CommentResolvedText;\n"],"mappings":";;;AACA,SAAS,eAAe;AAExB;AAAA,EACI;AAAA,EACA;AAAA,OACG;AACP,SAAS,oBAAoB;AAC7B,OAAO,gBAAgB;AAYf;AAVR,IAAM,sBAAsB,CAAC,EAAE,SAAS,UAAU,MAA4B;AAC1E,QAAM,OAAO,QAAQ,MAAM;AACvB,WAAO,0BAA0B,SAAS,WAAW,MAAM;AAAA,EAC/D,GAAG,CAAC,QAAQ,SAAS,UAAU,SAAS,QAAQ,OAAO,CAAC;AAExD,QAAM,gBAAgB,QAAQ,MAAM;AAChC,WAAO,aAAa,IAAI;AAAA,EAC5B,GAAG,CAAC,IAAI,CAAC;AAET,SACI;AAAA,IAAC;AAAA;AAAA,MACG,eAAa;AAAA,MACb,WAAW;AAAA,QACP;AAAA,QACA,aAAa,EAAE,gCAAgC;AAAA,MACnD;AAAA,MACA,yBAAyB,EAAE,QAAQ,cAAc;AAAA;AAAA,EACpD;AAET;AAEA,IAAO,8BAAQ;","names":[]}
1
+ {"version":3,"sources":["../../../../../../src/visualBuilder/components/Collab/ThreadPopup/CommentResolvedText.tsx"],"sourcesContent":["/** @jsxImportSource preact */\nimport { useMemo } from \"preact/hooks\";\nimport { ICommentResolvedText } from \"../../../types/collab.types\";\nimport { getMessageWithDisplayName } from \"../../../utils/collabUtils\";\nimport { collabStyles } from \"../../../collab.style\";\nimport classNames from \"classnames\";\n\nconst CommentResolvedText = ({ comment, userState }: ICommentResolvedText) => {\n const sanitizedText = useMemo(() => {\n return getMessageWithDisplayName(comment, userState, \"html\") ?? \"\";\n }, [comment.message, userState.userMap, comment.toUsers]);\n\n return (\n <div\n data-testid={\"collab-thread-comment--message\"}\n className={classNames(\n \"collab-thread-comment--message\",\n collabStyles()[\"collab-thread-comment--message\"]\n )}\n dangerouslySetInnerHTML={{ __html: sanitizedText }}\n ></div>\n );\n};\n\nexport default CommentResolvedText;\n"],"mappings":";;;AACA,SAAS,eAAe;AAExB,SAAS,iCAAiC;AAC1C,SAAS,oBAAoB;AAC7B,OAAO,gBAAgB;AAQf;AANR,IAAM,sBAAsB,CAAC,EAAE,SAAS,UAAU,MAA4B;AAC1E,QAAM,gBAAgB,QAAQ,MAAM;AAChC,WAAO,0BAA0B,SAAS,WAAW,MAAM,KAAK;AAAA,EACpE,GAAG,CAAC,QAAQ,SAAS,UAAU,SAAS,QAAQ,OAAO,CAAC;AAExD,SACI;AAAA,IAAC;AAAA;AAAA,MACG,eAAa;AAAA,MACb,WAAW;AAAA,QACP;AAAA,QACA,aAAa,EAAE,gCAAgC;AAAA,MACnD;AAAA,MACA,yBAAyB,EAAE,QAAQ,cAAc;AAAA;AAAA,EACpD;AAET;AAEA,IAAO,8BAAQ;","names":[]}
@@ -35,17 +35,95 @@ __export(CommentTextArea_exports, {
35
35
  module.exports = __toCommonJS(CommentTextArea_exports);
36
36
  var import_compat = __toESM(require("preact/compat"), 1);
37
37
  var import_hooks = require("preact/hooks");
38
- var import_collab = require("../../../collab.style.cjs");
39
38
  var import_useCommentTextArea = require("../../../hooks/useCommentTextArea.cjs");
39
+ var import_collab = require("../../../collab.style.cjs");
40
40
  var import_classnames = __toESM(require("classnames"), 1);
41
41
  var import_Tooltip = __toESM(require("../Tooltip/Tooltip.cjs"), 1);
42
42
  var import_jsx_runtime = require("preact/jsx-runtime");
43
+ var ErrorIndicator = ({
44
+ errorMessage
45
+ }) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
46
+ "div",
47
+ {
48
+ className: (0, import_classnames.default)(
49
+ "collab-thread-input-indicator--error",
50
+ (0, import_collab.collabStyles)()["collab-thread-input-indicator--error"]
51
+ ),
52
+ children: errorMessage
53
+ }
54
+ );
55
+ var CharacterCounter = ({ currentLength, maxLength }) => /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
56
+ "div",
57
+ {
58
+ className: (0, import_classnames.default)(
59
+ "collab-thread-input-indicator--count",
60
+ (0, import_collab.collabStyles)()["collab-thread-input-indicator--count"]
61
+ ),
62
+ children: [
63
+ currentLength,
64
+ "/",
65
+ maxLength
66
+ ]
67
+ }
68
+ );
69
+ var MentionSuggestionsList = ({
70
+ filteredUsers,
71
+ selectedIndex,
72
+ cursorPosition,
73
+ inputRef,
74
+ listRef,
75
+ itemRefs,
76
+ insertMention,
77
+ handleKeyDown
78
+ }) => {
79
+ var _a, _b;
80
+ if (filteredUsers.length === 0) return null;
81
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
82
+ "ul",
83
+ {
84
+ className: (0, import_classnames.default)(
85
+ "collab-thread-body--input--textarea--suggestionsList",
86
+ (0, import_collab.collabStyles)()["collab-thread-body--input--textarea--suggestionsList"]
87
+ ),
88
+ style: {
89
+ ...cursorPosition.showAbove ? {
90
+ bottom: `${window.innerHeight - (((_a = inputRef.current) == null ? void 0 : _a.getBoundingClientRect().top) || 0) - cursorPosition.top}px`,
91
+ top: "auto"
92
+ } : {
93
+ top: `${(((_b = inputRef.current) == null ? void 0 : _b.getBoundingClientRect().top) || 0) + cursorPosition.top}px`
94
+ }
95
+ },
96
+ ref: listRef,
97
+ children: filteredUsers.map((user, index) => {
98
+ var _a2;
99
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
100
+ "li",
101
+ {
102
+ onClick: () => insertMention(user),
103
+ className: (0, import_classnames.default)(
104
+ "collab-thread-body--input--textarea--suggestionsList--item",
105
+ (0, import_collab.collabStyles)()["collab-thread-body--input--textarea--suggestionsList--item"],
106
+ index === selectedIndex ? (0, import_collab.collabStyles)()["collab-thread-body--input--textarea--suggestionsList--item-selected"] : ""
107
+ ),
108
+ ref: (el) => itemRefs.current[index] = el,
109
+ onKeyDown: (e) => e.key === "Enter" ? insertMention(user) : handleKeyDown(e),
110
+ tabIndex: -1,
111
+ "aria-selected": index === selectedIndex,
112
+ children: (((_a2 = user.display) == null ? void 0 : _a2.length) || 0) > 20 ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Tooltip.default, { content: user.display || "", children: (user.display || "").substring(0, 18) + "..." }) : user.display || ""
113
+ },
114
+ user.uid
115
+ );
116
+ })
117
+ }
118
+ );
119
+ };
43
120
  var CommentTextArea = import_compat.default.memo(
44
121
  ({ userState, handleOnSaveRef, comment, onClose }) => {
45
122
  const {
46
123
  state,
47
124
  error,
48
125
  showSuggestions,
126
+ cursorPosition,
49
127
  selectedIndex,
50
128
  filteredUsers,
51
129
  inputRef,
@@ -57,6 +135,8 @@ var CommentTextArea = import_compat.default.memo(
57
135
  insertMention,
58
136
  maxMessageLength
59
137
  } = (0, import_useCommentTextArea.useCommentTextArea)(userState, comment, onClose);
138
+ const onChangeHandler = (event) => handleInputChange(event);
139
+ const onKeyDownHandler = (event) => handleKeyDown(event);
60
140
  (0, import_hooks.useEffect)(() => {
61
141
  handleOnSaveRef.current = handleSubmit;
62
142
  }, [handleSubmit, handleOnSaveRef]);
@@ -94,47 +174,24 @@ var CommentTextArea = import_compat.default.memo(
94
174
  (0, import_collab.collabStyles)()["collab-thread-body--input--textarea"]
95
175
  ),
96
176
  value: state.message,
97
- onChange: (event) => handleInputChange(event),
98
- onKeyDown: (event) => handleKeyDown(event),
177
+ onChange: onChangeHandler,
178
+ onKeyDown: onKeyDownHandler,
99
179
  maxLength: maxMessageLength,
100
- placeholder: "Enter a comment",
180
+ placeholder: "Enter a comment or tag others using \u201C@\u201D",
101
181
  ref: inputRef
102
182
  }
103
183
  ),
104
- showSuggestions && filteredUsers.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
105
- "ul",
184
+ showSuggestions && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
185
+ MentionSuggestionsList,
106
186
  {
107
- className: (0, import_classnames.default)(
108
- "collab-thread-body--input--textarea--suggestionsList",
109
- (0, import_collab.collabStyles)()["collab-thread-body--input--textarea--suggestionsList"]
110
- ),
111
- ref: listRef,
112
- children: filteredUsers.map((user, index) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
113
- "li",
114
- {
115
- onClick: () => insertMention(user),
116
- className: (0, import_classnames.default)(
117
- "collab-thread-body--input--textarea--suggestionsList--item",
118
- (0, import_collab.collabStyles)()["collab-thread-body--input--textarea--suggestionsList--item"],
119
- "collab-thread-body--input--textarea--suggestionsList--item-selected",
120
- index === selectedIndex ? (0, import_collab.collabStyles)()["collab-thread-body--input--textarea--suggestionsList--item-selected"] : ""
121
- ),
122
- ref: (el) => itemRefs.current[index] = el,
123
- onKeyDown: (e) => {
124
- if (e.key === "Enter") {
125
- insertMention(user);
126
- } else {
127
- handleKeyDown(
128
- e
129
- );
130
- }
131
- },
132
- tabIndex: -1,
133
- "aria-selected": index === selectedIndex,
134
- children: user.display.length > 20 ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Tooltip.default, { content: user.display, children: user.display.substring(0, 18) + "..." }) : user.display
135
- },
136
- user.uid
137
- ))
187
+ filteredUsers,
188
+ selectedIndex,
189
+ cursorPosition,
190
+ inputRef,
191
+ listRef,
192
+ itemRefs,
193
+ insertMention,
194
+ handleKeyDown
138
195
  }
139
196
  )
140
197
  ]
@@ -152,28 +209,12 @@ var CommentTextArea = import_compat.default.memo(
152
209
  import_collab.flexAlignCenter
153
210
  ),
154
211
  children: [
212
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ErrorIndicator, { errorMessage: error.message }),
155
213
  /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
156
- "div",
157
- {
158
- className: (0, import_classnames.default)(
159
- "collab-thread-input-indicator--error",
160
- (0, import_collab.collabStyles)()["collab-thread-input-indicator--error"]
161
- ),
162
- children: error.message
163
- }
164
- ),
165
- /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
166
- "div",
214
+ CharacterCounter,
167
215
  {
168
- className: (0, import_classnames.default)(
169
- "collab-thread-input-indicator--count",
170
- (0, import_collab.collabStyles)()["collab-thread-input-indicator--count"]
171
- ),
172
- children: [
173
- state.message.length,
174
- "/",
175
- maxMessageLength
176
- ]
216
+ currentLength: state.message.length,
217
+ maxLength: maxMessageLength
177
218
  }
178
219
  )
179
220
  ]
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../src/visualBuilder/components/Collab/ThreadPopup/CommentTextArea.tsx"],"sourcesContent":["/** @jsxImportSource preact */\nimport React from \"preact/compat\";\nimport { useEffect } from \"preact/hooks\";\nimport { collabStyles, flexAlignCenter } from \"../../../collab.style\";\nimport { ICommentTextAreaProps } from \"../../../types/collab.types\";\nimport { useCommentTextArea } from \"../../../hooks/useCommentTextArea\";\nimport classNames from \"classnames\";\nimport Tooltip from \"../Tooltip/Tooltip\";\n\nconst CommentTextArea: React.FC<ICommentTextAreaProps> = React.memo(\n ({ userState, handleOnSaveRef, comment, onClose }) => {\n // Use our custom hook to get all the functionality\n const {\n state,\n error,\n showSuggestions,\n selectedIndex,\n filteredUsers,\n inputRef,\n listRef,\n itemRefs,\n handleInputChange,\n handleKeyDown,\n handleSubmit,\n insertMention,\n maxMessageLength,\n } = useCommentTextArea(userState, comment, onClose);\n\n // Set up save ref for parent component\n useEffect(() => {\n handleOnSaveRef.current = handleSubmit;\n }, [handleSubmit, handleOnSaveRef]);\n\n return (\n <div\n className={classNames(\n \"collab-thread-body--input--wrapper\",\n collabStyles()[\"collab-thread-body--input--wrapper\"]\n )}\n >\n <div\n className={classNames(\n \"collab-thread-body--input\",\n collabStyles()[\"collab-thread-body--input\"]\n )}\n >\n <div\n className={classNames(\n \"collab-thread-body--input--textarea--wrapper\",\n collabStyles()[\n \"collab-thread-body--input--textarea--wrapper\"\n ]\n )}\n >\n <textarea\n name=\"collab-thread-body--input--textarea\"\n id=\"collab-thread-body--input--textarea\"\n rows={1}\n className={classNames(\n \"collab-thread-body--input--textarea\",\n collabStyles()[\n \"collab-thread-body--input--textarea\"\n ]\n )}\n value={state.message}\n onChange={(event) =>\n handleInputChange(event as any)\n }\n onKeyDown={(event) => handleKeyDown(event as any)}\n maxLength={maxMessageLength}\n placeholder=\"Enter a comment\"\n ref={inputRef}\n ></textarea>\n {showSuggestions && filteredUsers.length > 0 && (\n <ul\n className={classNames(\n \"collab-thread-body--input--textarea--suggestionsList\",\n collabStyles()[\n \"collab-thread-body--input--textarea--suggestionsList\"\n ]\n )}\n // style={{\n // left: `${cursorPosition.left}px`,\n // top: `${cursorPosition.top}px`,\n // }}\n ref={listRef}\n >\n {filteredUsers.map((user, index) => (\n <li\n key={user.uid}\n onClick={() => insertMention(user)}\n className={classNames(\n \"collab-thread-body--input--textarea--suggestionsList--item\",\n collabStyles()[\n \"collab-thread-body--input--textarea--suggestionsList--item\"\n ],\n \"collab-thread-body--input--textarea--suggestionsList--item-selected\",\n index === selectedIndex\n ? collabStyles()[\n \"collab-thread-body--input--textarea--suggestionsList--item-selected\"\n ]\n : \"\"\n )}\n ref={(el: any) =>\n (itemRefs.current[index] = el)\n }\n onKeyDown={(e) => {\n if (e.key === \"Enter\") {\n insertMention(user);\n } else {\n handleKeyDown(\n e as KeyboardEvent\n );\n }\n }}\n tabIndex={-1}\n aria-selected={index === selectedIndex}\n >\n {user.display.length > 20 ? (\n <Tooltip content={user.display}>\n {user.display.substring(0, 18) +\n \"...\"}\n </Tooltip>\n ) : (\n user.display\n )}\n </li>\n ))}\n </ul>\n )}\n </div>\n </div>\n\n <div\n className={classNames(\n \"collab-thread-input-indicator--wrapper\",\n \"flex-v-center\",\n collabStyles()[\n \"collab-thread-input-indicator--wrapper\"\n ],\n flexAlignCenter\n )}\n >\n <div\n className={classNames(\n \"collab-thread-input-indicator--error\",\n collabStyles()[\n \"collab-thread-input-indicator--error\"\n ]\n )}\n >\n {error.message}\n </div>\n <div\n className={classNames(\n \"collab-thread-input-indicator--count\",\n collabStyles()[\n \"collab-thread-input-indicator--count\"\n ]\n )}\n >\n {state.message.length}/{maxMessageLength}\n </div>\n </div>\n </div>\n );\n }\n);\n\nexport default CommentTextArea;\n"],"mappings":"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","names":["React","classNames","Tooltip"]}
1
+ {"version":3,"sources":["../../../../../../src/visualBuilder/components/Collab/ThreadPopup/CommentTextArea.tsx"],"sourcesContent":["/** @jsxImportSource preact */\nimport React from \"preact/compat\";\nimport { useEffect } from \"preact/hooks\";\nimport { useCommentTextArea } from \"../../../hooks/useCommentTextArea\";\nimport { collabStyles, flexAlignCenter } from \"../../../collab.style\";\nimport {\n ICommentTextAreaProps,\n IMentionList,\n} from \"../../../types/collab.types\";\nimport classNames from \"classnames\";\nimport Tooltip from \"../Tooltip/Tooltip\";\n\nconst ErrorIndicator: React.FC<{ errorMessage: string }> = ({\n errorMessage,\n}) => (\n <div\n className={classNames(\n \"collab-thread-input-indicator--error\",\n collabStyles()[\"collab-thread-input-indicator--error\"]\n )}\n >\n {errorMessage}\n </div>\n);\n\nconst CharacterCounter: React.FC<{\n currentLength: number;\n maxLength: number;\n}> = ({ currentLength, maxLength }) => (\n <div\n className={classNames(\n \"collab-thread-input-indicator--count\",\n collabStyles()[\"collab-thread-input-indicator--count\"]\n )}\n >\n {currentLength}/{maxLength}\n </div>\n);\n\nconst MentionSuggestionsList: React.FC<{\n filteredUsers: IMentionList[];\n selectedIndex: number;\n cursorPosition: { top: number; showAbove: boolean };\n inputRef: React.RefObject<HTMLTextAreaElement>;\n listRef: React.RefObject<HTMLUListElement>;\n itemRefs: React.MutableRefObject<(HTMLLIElement | null)[]>;\n insertMention: (user: IMentionList) => void;\n handleKeyDown: (event: KeyboardEvent) => void;\n}> = ({\n filteredUsers,\n selectedIndex,\n cursorPosition,\n inputRef,\n listRef,\n itemRefs,\n insertMention,\n handleKeyDown,\n}) => {\n if (filteredUsers.length === 0) return null;\n\n return (\n <ul\n className={classNames(\n \"collab-thread-body--input--textarea--suggestionsList\",\n collabStyles()[\n \"collab-thread-body--input--textarea--suggestionsList\"\n ]\n )}\n style={{\n ...(cursorPosition.showAbove\n ? {\n bottom: `${window.innerHeight - (inputRef.current?.getBoundingClientRect().top || 0) - cursorPosition.top}px`,\n top: \"auto\",\n }\n : {\n top: `${(inputRef.current?.getBoundingClientRect().top || 0) + cursorPosition.top}px`,\n }),\n }}\n ref={listRef}\n >\n {filteredUsers.map((user, index) => (\n <li\n key={user.uid}\n onClick={() => insertMention(user)}\n className={classNames(\n \"collab-thread-body--input--textarea--suggestionsList--item\",\n collabStyles()[\n \"collab-thread-body--input--textarea--suggestionsList--item\"\n ],\n index === selectedIndex\n ? collabStyles()[\n \"collab-thread-body--input--textarea--suggestionsList--item-selected\"\n ]\n : \"\"\n )}\n ref={(el) => (itemRefs.current[index] = el)}\n onKeyDown={(e) =>\n e.key === \"Enter\"\n ? insertMention(user)\n : handleKeyDown(e as KeyboardEvent)\n }\n tabIndex={-1}\n aria-selected={index === selectedIndex}\n >\n {(user.display?.length || 0) > 20 ? (\n <Tooltip content={user.display || \"\"}>\n {(user.display || \"\").substring(0, 18) + \"...\"}\n </Tooltip>\n ) : (\n user.display || \"\"\n )}\n </li>\n ))}\n </ul>\n );\n};\n\nconst CommentTextArea: React.FC<ICommentTextAreaProps> = React.memo(\n ({ userState, handleOnSaveRef, comment, onClose }) => {\n const {\n state,\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 } = useCommentTextArea(userState, comment, onClose);\n\n const onChangeHandler = (event: Event) =>\n handleInputChange(event as any);\n const onKeyDownHandler = (event: KeyboardEvent) =>\n handleKeyDown(event as any);\n\n useEffect(() => {\n handleOnSaveRef.current = handleSubmit;\n }, [handleSubmit, handleOnSaveRef]);\n\n return (\n <div\n className={classNames(\n \"collab-thread-body--input--wrapper\",\n collabStyles()[\"collab-thread-body--input--wrapper\"]\n )}\n >\n <div\n className={classNames(\n \"collab-thread-body--input\",\n collabStyles()[\"collab-thread-body--input\"]\n )}\n >\n <div\n className={classNames(\n \"collab-thread-body--input--textarea--wrapper\",\n collabStyles()[\n \"collab-thread-body--input--textarea--wrapper\"\n ]\n )}\n >\n <textarea\n name=\"collab-thread-body--input--textarea\"\n id=\"collab-thread-body--input--textarea\"\n rows={1}\n className={classNames(\n \"collab-thread-body--input--textarea\",\n collabStyles()[\n \"collab-thread-body--input--textarea\"\n ]\n )}\n value={state.message}\n onChange={onChangeHandler}\n onKeyDown={onKeyDownHandler}\n maxLength={maxMessageLength}\n placeholder=\"Enter a comment or tag others using “@”\"\n ref={inputRef}\n />\n {showSuggestions && (\n <MentionSuggestionsList\n filteredUsers={filteredUsers}\n selectedIndex={selectedIndex}\n cursorPosition={cursorPosition}\n inputRef={inputRef}\n listRef={listRef}\n itemRefs={itemRefs}\n insertMention={insertMention}\n handleKeyDown={handleKeyDown}\n />\n )}\n </div>\n </div>\n\n <div\n className={classNames(\n \"collab-thread-input-indicator--wrapper\",\n \"flex-v-center\",\n collabStyles()[\n \"collab-thread-input-indicator--wrapper\"\n ],\n flexAlignCenter\n )}\n >\n <ErrorIndicator errorMessage={error.message} />\n <CharacterCounter\n currentLength={state.message.length}\n maxLength={maxMessageLength}\n />\n </div>\n </div>\n );\n }\n);\n\nexport default CommentTextArea;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,oBAAkB;AAClB,mBAA0B;AAC1B,gCAAmC;AACnC,oBAA8C;AAK9C,wBAAuB;AACvB,qBAAoB;AAKhB;AAHJ,IAAM,iBAAqD,CAAC;AAAA,EACxD;AACJ,MACI;AAAA,EAAC;AAAA;AAAA,IACG,eAAW,kBAAAA;AAAA,MACP;AAAA,UACA,4BAAa,EAAE,sCAAsC;AAAA,IACzD;AAAA,IAEC;AAAA;AACL;AAGJ,IAAM,mBAGD,CAAC,EAAE,eAAe,UAAU,MAC7B;AAAA,EAAC;AAAA;AAAA,IACG,eAAW,kBAAAA;AAAA,MACP;AAAA,UACA,4BAAa,EAAE,sCAAsC;AAAA,IACzD;AAAA,IAEC;AAAA;AAAA,MAAc;AAAA,MAAE;AAAA;AAAA;AACrB;AAGJ,IAAM,yBASD,CAAC;AAAA,EACF;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACJ,MAAM;AAzDN;AA0DI,MAAI,cAAc,WAAW,EAAG,QAAO;AAEvC,SACI;AAAA,IAAC;AAAA;AAAA,MACG,eAAW,kBAAAA;AAAA,QACP;AAAA,YACA,4BAAa,EACT,sDACJ;AAAA,MACJ;AAAA,MACA,OAAO;AAAA,QACH,GAAI,eAAe,YACb;AAAA,UACI,QAAQ,GAAG,OAAO,iBAAe,cAAS,YAAT,mBAAkB,wBAAwB,QAAO,KAAK,eAAe,GAAG;AAAA,UACzG,KAAK;AAAA,QACT,IACA;AAAA,UACI,KAAK,MAAI,cAAS,YAAT,mBAAkB,wBAAwB,QAAO,KAAK,eAAe,GAAG;AAAA,QACrF;AAAA,MACV;AAAA,MACA,KAAK;AAAA,MAEJ,wBAAc,IAAI,CAAC,MAAM,UAAO;AAhF7C,YAAAC;AAiFgB;AAAA,UAAC;AAAA;AAAA,YAEG,SAAS,MAAM,cAAc,IAAI;AAAA,YACjC,eAAW,kBAAAD;AAAA,cACP;AAAA,kBACA,4BAAa,EACT,4DACJ;AAAA,cACA,UAAU,oBACJ,4BAAa,EACT,qEACJ,IACA;AAAA,YACV;AAAA,YACA,KAAK,CAAC,OAAQ,SAAS,QAAQ,KAAK,IAAI;AAAA,YACxC,WAAW,CAAC,MACR,EAAE,QAAQ,UACJ,cAAc,IAAI,IAClB,cAAc,CAAkB;AAAA,YAE1C,UAAU;AAAA,YACV,iBAAe,UAAU;AAAA,YAEvB,aAAAC,MAAA,KAAK,YAAL,gBAAAA,IAAc,WAAU,KAAK,KAC3B,4CAAC,eAAAC,SAAA,EAAQ,SAAS,KAAK,WAAW,IAC5B,gBAAK,WAAW,IAAI,UAAU,GAAG,EAAE,IAAI,OAC7C,IAEA,KAAK,WAAW;AAAA;AAAA,UA3Bf,KAAK;AAAA,QA6Bd;AAAA,OACH;AAAA;AAAA,EACL;AAER;AAEA,IAAM,kBAAmD,cAAAC,QAAM;AAAA,EAC3D,CAAC,EAAE,WAAW,iBAAiB,SAAS,QAAQ,MAAM;AAClD,UAAM;AAAA,MACF;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACJ,QAAI,8CAAmB,WAAW,SAAS,OAAO;AAElD,UAAM,kBAAkB,CAAC,UACrB,kBAAkB,KAAY;AAClC,UAAM,mBAAmB,CAAC,UACtB,cAAc,KAAY;AAE9B,gCAAU,MAAM;AACZ,sBAAgB,UAAU;AAAA,IAC9B,GAAG,CAAC,cAAc,eAAe,CAAC;AAElC,WACI;AAAA,MAAC;AAAA;AAAA,QACG,eAAW,kBAAAH;AAAA,UACP;AAAA,cACA,4BAAa,EAAE,oCAAoC;AAAA,QACvD;AAAA,QAEA;AAAA;AAAA,YAAC;AAAA;AAAA,cACG,eAAW,kBAAAA;AAAA,gBACP;AAAA,oBACA,4BAAa,EAAE,2BAA2B;AAAA,cAC9C;AAAA,cAEA;AAAA,gBAAC;AAAA;AAAA,kBACG,eAAW,kBAAAA;AAAA,oBACP;AAAA,wBACA,4BAAa,EACT,8CACJ;AAAA,kBACJ;AAAA,kBAEA;AAAA;AAAA,sBAAC;AAAA;AAAA,wBACG,MAAK;AAAA,wBACL,IAAG;AAAA,wBACH,MAAM;AAAA,wBACN,eAAW,kBAAAA;AAAA,0BACP;AAAA,8BACA,4BAAa,EACT,qCACJ;AAAA,wBACJ;AAAA,wBACA,OAAO,MAAM;AAAA,wBACb,UAAU;AAAA,wBACV,WAAW;AAAA,wBACX,WAAW;AAAA,wBACX,aAAY;AAAA,wBACZ,KAAK;AAAA;AAAA,oBACT;AAAA,oBACC,mBACG;AAAA,sBAAC;AAAA;AAAA,wBACG;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA,wBACA;AAAA;AAAA,oBACJ;AAAA;AAAA;AAAA,cAER;AAAA;AAAA,UACJ;AAAA,UAEA;AAAA,YAAC;AAAA;AAAA,cACG,eAAW,kBAAAA;AAAA,gBACP;AAAA,gBACA;AAAA,oBACA,4BAAa,EACT,wCACJ;AAAA,gBACA;AAAA,cACJ;AAAA,cAEA;AAAA,4DAAC,kBAAe,cAAc,MAAM,SAAS;AAAA,gBAC7C;AAAA,kBAAC;AAAA;AAAA,oBACG,eAAe,MAAM,QAAQ;AAAA,oBAC7B,WAAW;AAAA;AAAA,gBACf;AAAA;AAAA;AAAA,UACJ;AAAA;AAAA;AAAA,IACJ;AAAA,EAER;AACJ;AAEA,IAAO,0BAAQ;","names":["classNames","_a","Tooltip","React"]}
@@ -3,17 +3,95 @@ import "../../../../chunk-5WRI5ZAA.js";
3
3
  // src/visualBuilder/components/Collab/ThreadPopup/CommentTextArea.tsx
4
4
  import React from "preact/compat";
5
5
  import { useEffect } from "preact/hooks";
6
- import { collabStyles, flexAlignCenter } from "../../../collab.style.js";
7
6
  import { useCommentTextArea } from "../../../hooks/useCommentTextArea.js";
7
+ import { collabStyles, flexAlignCenter } from "../../../collab.style.js";
8
8
  import classNames from "classnames";
9
9
  import Tooltip from "../Tooltip/Tooltip.js";
10
10
  import { jsx, jsxs } from "preact/jsx-runtime";
11
+ var ErrorIndicator = ({
12
+ errorMessage
13
+ }) => /* @__PURE__ */ jsx(
14
+ "div",
15
+ {
16
+ className: classNames(
17
+ "collab-thread-input-indicator--error",
18
+ collabStyles()["collab-thread-input-indicator--error"]
19
+ ),
20
+ children: errorMessage
21
+ }
22
+ );
23
+ var CharacterCounter = ({ currentLength, maxLength }) => /* @__PURE__ */ jsxs(
24
+ "div",
25
+ {
26
+ className: classNames(
27
+ "collab-thread-input-indicator--count",
28
+ collabStyles()["collab-thread-input-indicator--count"]
29
+ ),
30
+ children: [
31
+ currentLength,
32
+ "/",
33
+ maxLength
34
+ ]
35
+ }
36
+ );
37
+ var MentionSuggestionsList = ({
38
+ filteredUsers,
39
+ selectedIndex,
40
+ cursorPosition,
41
+ inputRef,
42
+ listRef,
43
+ itemRefs,
44
+ insertMention,
45
+ handleKeyDown
46
+ }) => {
47
+ var _a, _b;
48
+ if (filteredUsers.length === 0) return null;
49
+ return /* @__PURE__ */ jsx(
50
+ "ul",
51
+ {
52
+ className: classNames(
53
+ "collab-thread-body--input--textarea--suggestionsList",
54
+ collabStyles()["collab-thread-body--input--textarea--suggestionsList"]
55
+ ),
56
+ style: {
57
+ ...cursorPosition.showAbove ? {
58
+ bottom: `${window.innerHeight - (((_a = inputRef.current) == null ? void 0 : _a.getBoundingClientRect().top) || 0) - cursorPosition.top}px`,
59
+ top: "auto"
60
+ } : {
61
+ top: `${(((_b = inputRef.current) == null ? void 0 : _b.getBoundingClientRect().top) || 0) + cursorPosition.top}px`
62
+ }
63
+ },
64
+ ref: listRef,
65
+ children: filteredUsers.map((user, index) => {
66
+ var _a2;
67
+ return /* @__PURE__ */ jsx(
68
+ "li",
69
+ {
70
+ onClick: () => insertMention(user),
71
+ className: classNames(
72
+ "collab-thread-body--input--textarea--suggestionsList--item",
73
+ collabStyles()["collab-thread-body--input--textarea--suggestionsList--item"],
74
+ index === selectedIndex ? collabStyles()["collab-thread-body--input--textarea--suggestionsList--item-selected"] : ""
75
+ ),
76
+ ref: (el) => itemRefs.current[index] = el,
77
+ onKeyDown: (e) => e.key === "Enter" ? insertMention(user) : handleKeyDown(e),
78
+ tabIndex: -1,
79
+ "aria-selected": index === selectedIndex,
80
+ children: (((_a2 = user.display) == null ? void 0 : _a2.length) || 0) > 20 ? /* @__PURE__ */ jsx(Tooltip, { content: user.display || "", children: (user.display || "").substring(0, 18) + "..." }) : user.display || ""
81
+ },
82
+ user.uid
83
+ );
84
+ })
85
+ }
86
+ );
87
+ };
11
88
  var CommentTextArea = React.memo(
12
89
  ({ userState, handleOnSaveRef, comment, onClose }) => {
13
90
  const {
14
91
  state,
15
92
  error,
16
93
  showSuggestions,
94
+ cursorPosition,
17
95
  selectedIndex,
18
96
  filteredUsers,
19
97
  inputRef,
@@ -25,6 +103,8 @@ var CommentTextArea = React.memo(
25
103
  insertMention,
26
104
  maxMessageLength
27
105
  } = useCommentTextArea(userState, comment, onClose);
106
+ const onChangeHandler = (event) => handleInputChange(event);
107
+ const onKeyDownHandler = (event) => handleKeyDown(event);
28
108
  useEffect(() => {
29
109
  handleOnSaveRef.current = handleSubmit;
30
110
  }, [handleSubmit, handleOnSaveRef]);
@@ -62,47 +142,24 @@ var CommentTextArea = React.memo(
62
142
  collabStyles()["collab-thread-body--input--textarea"]
63
143
  ),
64
144
  value: state.message,
65
- onChange: (event) => handleInputChange(event),
66
- onKeyDown: (event) => handleKeyDown(event),
145
+ onChange: onChangeHandler,
146
+ onKeyDown: onKeyDownHandler,
67
147
  maxLength: maxMessageLength,
68
- placeholder: "Enter a comment",
148
+ placeholder: "Enter a comment or tag others using \u201C@\u201D",
69
149
  ref: inputRef
70
150
  }
71
151
  ),
72
- showSuggestions && filteredUsers.length > 0 && /* @__PURE__ */ jsx(
73
- "ul",
152
+ showSuggestions && /* @__PURE__ */ jsx(
153
+ MentionSuggestionsList,
74
154
  {
75
- className: classNames(
76
- "collab-thread-body--input--textarea--suggestionsList",
77
- collabStyles()["collab-thread-body--input--textarea--suggestionsList"]
78
- ),
79
- ref: listRef,
80
- children: filteredUsers.map((user, index) => /* @__PURE__ */ jsx(
81
- "li",
82
- {
83
- onClick: () => insertMention(user),
84
- className: classNames(
85
- "collab-thread-body--input--textarea--suggestionsList--item",
86
- collabStyles()["collab-thread-body--input--textarea--suggestionsList--item"],
87
- "collab-thread-body--input--textarea--suggestionsList--item-selected",
88
- index === selectedIndex ? collabStyles()["collab-thread-body--input--textarea--suggestionsList--item-selected"] : ""
89
- ),
90
- ref: (el) => itemRefs.current[index] = el,
91
- onKeyDown: (e) => {
92
- if (e.key === "Enter") {
93
- insertMention(user);
94
- } else {
95
- handleKeyDown(
96
- e
97
- );
98
- }
99
- },
100
- tabIndex: -1,
101
- "aria-selected": index === selectedIndex,
102
- children: user.display.length > 20 ? /* @__PURE__ */ jsx(Tooltip, { content: user.display, children: user.display.substring(0, 18) + "..." }) : user.display
103
- },
104
- user.uid
105
- ))
155
+ filteredUsers,
156
+ selectedIndex,
157
+ cursorPosition,
158
+ inputRef,
159
+ listRef,
160
+ itemRefs,
161
+ insertMention,
162
+ handleKeyDown
106
163
  }
107
164
  )
108
165
  ]
@@ -120,28 +177,12 @@ var CommentTextArea = React.memo(
120
177
  flexAlignCenter
121
178
  ),
122
179
  children: [
180
+ /* @__PURE__ */ jsx(ErrorIndicator, { errorMessage: error.message }),
123
181
  /* @__PURE__ */ jsx(
124
- "div",
125
- {
126
- className: classNames(
127
- "collab-thread-input-indicator--error",
128
- collabStyles()["collab-thread-input-indicator--error"]
129
- ),
130
- children: error.message
131
- }
132
- ),
133
- /* @__PURE__ */ jsxs(
134
- "div",
182
+ CharacterCounter,
135
183
  {
136
- className: classNames(
137
- "collab-thread-input-indicator--count",
138
- collabStyles()["collab-thread-input-indicator--count"]
139
- ),
140
- children: [
141
- state.message.length,
142
- "/",
143
- maxMessageLength
144
- ]
184
+ currentLength: state.message.length,
185
+ maxLength: maxMessageLength
145
186
  }
146
187
  )
147
188
  ]
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../src/visualBuilder/components/Collab/ThreadPopup/CommentTextArea.tsx"],"sourcesContent":["/** @jsxImportSource preact */\nimport React from \"preact/compat\";\nimport { useEffect } from \"preact/hooks\";\nimport { collabStyles, flexAlignCenter } from \"../../../collab.style\";\nimport { ICommentTextAreaProps } from \"../../../types/collab.types\";\nimport { useCommentTextArea } from \"../../../hooks/useCommentTextArea\";\nimport classNames from \"classnames\";\nimport Tooltip from \"../Tooltip/Tooltip\";\n\nconst CommentTextArea: React.FC<ICommentTextAreaProps> = React.memo(\n ({ userState, handleOnSaveRef, comment, onClose }) => {\n // Use our custom hook to get all the functionality\n const {\n state,\n error,\n showSuggestions,\n selectedIndex,\n filteredUsers,\n inputRef,\n listRef,\n itemRefs,\n handleInputChange,\n handleKeyDown,\n handleSubmit,\n insertMention,\n maxMessageLength,\n } = useCommentTextArea(userState, comment, onClose);\n\n // Set up save ref for parent component\n useEffect(() => {\n handleOnSaveRef.current = handleSubmit;\n }, [handleSubmit, handleOnSaveRef]);\n\n return (\n <div\n className={classNames(\n \"collab-thread-body--input--wrapper\",\n collabStyles()[\"collab-thread-body--input--wrapper\"]\n )}\n >\n <div\n className={classNames(\n \"collab-thread-body--input\",\n collabStyles()[\"collab-thread-body--input\"]\n )}\n >\n <div\n className={classNames(\n \"collab-thread-body--input--textarea--wrapper\",\n collabStyles()[\n \"collab-thread-body--input--textarea--wrapper\"\n ]\n )}\n >\n <textarea\n name=\"collab-thread-body--input--textarea\"\n id=\"collab-thread-body--input--textarea\"\n rows={1}\n className={classNames(\n \"collab-thread-body--input--textarea\",\n collabStyles()[\n \"collab-thread-body--input--textarea\"\n ]\n )}\n value={state.message}\n onChange={(event) =>\n handleInputChange(event as any)\n }\n onKeyDown={(event) => handleKeyDown(event as any)}\n maxLength={maxMessageLength}\n placeholder=\"Enter a comment\"\n ref={inputRef}\n ></textarea>\n {showSuggestions && filteredUsers.length > 0 && (\n <ul\n className={classNames(\n \"collab-thread-body--input--textarea--suggestionsList\",\n collabStyles()[\n \"collab-thread-body--input--textarea--suggestionsList\"\n ]\n )}\n // style={{\n // left: `${cursorPosition.left}px`,\n // top: `${cursorPosition.top}px`,\n // }}\n ref={listRef}\n >\n {filteredUsers.map((user, index) => (\n <li\n key={user.uid}\n onClick={() => insertMention(user)}\n className={classNames(\n \"collab-thread-body--input--textarea--suggestionsList--item\",\n collabStyles()[\n \"collab-thread-body--input--textarea--suggestionsList--item\"\n ],\n \"collab-thread-body--input--textarea--suggestionsList--item-selected\",\n index === selectedIndex\n ? collabStyles()[\n \"collab-thread-body--input--textarea--suggestionsList--item-selected\"\n ]\n : \"\"\n )}\n ref={(el: any) =>\n (itemRefs.current[index] = el)\n }\n onKeyDown={(e) => {\n if (e.key === \"Enter\") {\n insertMention(user);\n } else {\n handleKeyDown(\n e as KeyboardEvent\n );\n }\n }}\n tabIndex={-1}\n aria-selected={index === selectedIndex}\n >\n {user.display.length > 20 ? (\n <Tooltip content={user.display}>\n {user.display.substring(0, 18) +\n \"...\"}\n </Tooltip>\n ) : (\n user.display\n )}\n </li>\n ))}\n </ul>\n )}\n </div>\n </div>\n\n <div\n className={classNames(\n \"collab-thread-input-indicator--wrapper\",\n \"flex-v-center\",\n collabStyles()[\n \"collab-thread-input-indicator--wrapper\"\n ],\n flexAlignCenter\n )}\n >\n <div\n className={classNames(\n \"collab-thread-input-indicator--error\",\n collabStyles()[\n \"collab-thread-input-indicator--error\"\n ]\n )}\n >\n {error.message}\n </div>\n <div\n className={classNames(\n \"collab-thread-input-indicator--count\",\n collabStyles()[\n \"collab-thread-input-indicator--count\"\n ]\n )}\n >\n {state.message.length}/{maxMessageLength}\n </div>\n </div>\n </div>\n );\n }\n);\n\nexport default CommentTextArea;\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../../../../../../src/visualBuilder/components/Collab/ThreadPopup/CommentTextArea.tsx"],"sourcesContent":["/** @jsxImportSource preact */\nimport React from \"preact/compat\";\nimport { useEffect } from \"preact/hooks\";\nimport { useCommentTextArea } from \"../../../hooks/useCommentTextArea\";\nimport { collabStyles, flexAlignCenter } from \"../../../collab.style\";\nimport {\n ICommentTextAreaProps,\n IMentionList,\n} from \"../../../types/collab.types\";\nimport classNames from \"classnames\";\nimport Tooltip from \"../Tooltip/Tooltip\";\n\nconst ErrorIndicator: React.FC<{ errorMessage: string }> = ({\n errorMessage,\n}) => (\n <div\n className={classNames(\n \"collab-thread-input-indicator--error\",\n collabStyles()[\"collab-thread-input-indicator--error\"]\n )}\n >\n {errorMessage}\n </div>\n);\n\nconst CharacterCounter: React.FC<{\n currentLength: number;\n maxLength: number;\n}> = ({ currentLength, maxLength }) => (\n <div\n className={classNames(\n \"collab-thread-input-indicator--count\",\n collabStyles()[\"collab-thread-input-indicator--count\"]\n )}\n >\n {currentLength}/{maxLength}\n </div>\n);\n\nconst MentionSuggestionsList: React.FC<{\n filteredUsers: IMentionList[];\n selectedIndex: number;\n cursorPosition: { top: number; showAbove: boolean };\n inputRef: React.RefObject<HTMLTextAreaElement>;\n listRef: React.RefObject<HTMLUListElement>;\n itemRefs: React.MutableRefObject<(HTMLLIElement | null)[]>;\n insertMention: (user: IMentionList) => void;\n handleKeyDown: (event: KeyboardEvent) => void;\n}> = ({\n filteredUsers,\n selectedIndex,\n cursorPosition,\n inputRef,\n listRef,\n itemRefs,\n insertMention,\n handleKeyDown,\n}) => {\n if (filteredUsers.length === 0) return null;\n\n return (\n <ul\n className={classNames(\n \"collab-thread-body--input--textarea--suggestionsList\",\n collabStyles()[\n \"collab-thread-body--input--textarea--suggestionsList\"\n ]\n )}\n style={{\n ...(cursorPosition.showAbove\n ? {\n bottom: `${window.innerHeight - (inputRef.current?.getBoundingClientRect().top || 0) - cursorPosition.top}px`,\n top: \"auto\",\n }\n : {\n top: `${(inputRef.current?.getBoundingClientRect().top || 0) + cursorPosition.top}px`,\n }),\n }}\n ref={listRef}\n >\n {filteredUsers.map((user, index) => (\n <li\n key={user.uid}\n onClick={() => insertMention(user)}\n className={classNames(\n \"collab-thread-body--input--textarea--suggestionsList--item\",\n collabStyles()[\n \"collab-thread-body--input--textarea--suggestionsList--item\"\n ],\n index === selectedIndex\n ? collabStyles()[\n \"collab-thread-body--input--textarea--suggestionsList--item-selected\"\n ]\n : \"\"\n )}\n ref={(el) => (itemRefs.current[index] = el)}\n onKeyDown={(e) =>\n e.key === \"Enter\"\n ? insertMention(user)\n : handleKeyDown(e as KeyboardEvent)\n }\n tabIndex={-1}\n aria-selected={index === selectedIndex}\n >\n {(user.display?.length || 0) > 20 ? (\n <Tooltip content={user.display || \"\"}>\n {(user.display || \"\").substring(0, 18) + \"...\"}\n </Tooltip>\n ) : (\n user.display || \"\"\n )}\n </li>\n ))}\n </ul>\n );\n};\n\nconst CommentTextArea: React.FC<ICommentTextAreaProps> = React.memo(\n ({ userState, handleOnSaveRef, comment, onClose }) => {\n const {\n state,\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 } = useCommentTextArea(userState, comment, onClose);\n\n const onChangeHandler = (event: Event) =>\n handleInputChange(event as any);\n const onKeyDownHandler = (event: KeyboardEvent) =>\n handleKeyDown(event as any);\n\n useEffect(() => {\n handleOnSaveRef.current = handleSubmit;\n }, [handleSubmit, handleOnSaveRef]);\n\n return (\n <div\n className={classNames(\n \"collab-thread-body--input--wrapper\",\n collabStyles()[\"collab-thread-body--input--wrapper\"]\n )}\n >\n <div\n className={classNames(\n \"collab-thread-body--input\",\n collabStyles()[\"collab-thread-body--input\"]\n )}\n >\n <div\n className={classNames(\n \"collab-thread-body--input--textarea--wrapper\",\n collabStyles()[\n \"collab-thread-body--input--textarea--wrapper\"\n ]\n )}\n >\n <textarea\n name=\"collab-thread-body--input--textarea\"\n id=\"collab-thread-body--input--textarea\"\n rows={1}\n className={classNames(\n \"collab-thread-body--input--textarea\",\n collabStyles()[\n \"collab-thread-body--input--textarea\"\n ]\n )}\n value={state.message}\n onChange={onChangeHandler}\n onKeyDown={onKeyDownHandler}\n maxLength={maxMessageLength}\n placeholder=\"Enter a comment or tag others using “@”\"\n ref={inputRef}\n />\n {showSuggestions && (\n <MentionSuggestionsList\n filteredUsers={filteredUsers}\n selectedIndex={selectedIndex}\n cursorPosition={cursorPosition}\n inputRef={inputRef}\n listRef={listRef}\n itemRefs={itemRefs}\n insertMention={insertMention}\n handleKeyDown={handleKeyDown}\n />\n )}\n </div>\n </div>\n\n <div\n className={classNames(\n \"collab-thread-input-indicator--wrapper\",\n \"flex-v-center\",\n collabStyles()[\n \"collab-thread-input-indicator--wrapper\"\n ],\n flexAlignCenter\n )}\n >\n <ErrorIndicator errorMessage={error.message} />\n <CharacterCounter\n currentLength={state.message.length}\n maxLength={maxMessageLength}\n />\n </div>\n </div>\n );\n }\n);\n\nexport default CommentTextArea;\n"],"mappings":"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","names":["_a"]}
@@ -0,0 +1,92 @@
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/components/Collab/ThreadPopup/ThreadActionBar.tsx
31
+ var ThreadActionBar_exports = {};
32
+ __export(ThreadActionBar_exports, {
33
+ default: () => ThreadActionBar_default
34
+ });
35
+ module.exports = __toCommonJS(ThreadActionBar_exports);
36
+ var import_classnames = __toESM(require("classnames"), 1);
37
+ var import_Button = __toESM(require("../Button/Button.cjs"), 1);
38
+ var import_collab = require("../../../collab.style.cjs");
39
+ var import_collabUtils = require("../../../utils/collabUtils.cjs");
40
+ var import_jsx_runtime = require("preact/jsx-runtime");
41
+ var ThreadActionBar = ({
42
+ commentCount,
43
+ displayResolve,
44
+ handleResolve,
45
+ isResolving
46
+ }) => {
47
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [
48
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
49
+ "div",
50
+ {
51
+ className: (0, import_classnames.default)(
52
+ "collab-thread-header--title",
53
+ (0, import_collab.collabStyles)()["collab-thread-header--title"]
54
+ ),
55
+ children: (0, import_collabUtils.getThreadTitle)(commentCount)
56
+ }
57
+ ),
58
+ displayResolve && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
59
+ import_Button.default,
60
+ {
61
+ buttonType: "tertiary",
62
+ className: (0, import_classnames.default)(
63
+ "collab-thread-header--resolve",
64
+ (0, import_collab.collabStyles)()["collab-thread-header--resolve"]
65
+ ),
66
+ icon: "RightMarkActive",
67
+ iconProps: {
68
+ className: (0, import_classnames.default)(
69
+ (0, import_collab.collabStyles)()["collab-thread-header--resolve--icon"],
70
+ "collab-thread-header--resolve--icon"
71
+ )
72
+ },
73
+ onClick: handleResolve,
74
+ testId: "collab-thread-resolve-btn",
75
+ isLoading: isResolving,
76
+ loadingColor: "secondary",
77
+ children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
78
+ "span",
79
+ {
80
+ className: (0, import_classnames.default)(
81
+ "collab-thread-header--resolve--text",
82
+ (0, import_collab.collabStyles)()["collab-thread-header--resolve--text"]
83
+ ),
84
+ children: "Resolve"
85
+ }
86
+ )
87
+ }
88
+ )
89
+ ] });
90
+ };
91
+ var ThreadActionBar_default = ThreadActionBar;
92
+ //# sourceMappingURL=ThreadActionBar.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../src/visualBuilder/components/Collab/ThreadPopup/ThreadActionBar.tsx"],"sourcesContent":["/** @jsxImportSource preact */\nimport React from \"preact/compat\";\nimport classNames from \"classnames\";\nimport Button from \"../Button/Button\";\nimport { collabStyles } from \"../../../collab.style\";\nimport { getThreadTitle } from \"../../../utils/collabUtils\";\n\ninterface ThreadActionsProps {\n commentCount: number;\n displayResolve: boolean;\n handleResolve: () => void;\n isResolving: boolean;\n}\n\nconst ThreadActionBar: React.FC<ThreadActionsProps> = ({\n commentCount,\n displayResolve,\n handleResolve,\n isResolving,\n}) => {\n return (\n <>\n <div\n className={classNames(\n \"collab-thread-header--title\",\n collabStyles()[\"collab-thread-header--title\"]\n )}\n >\n {getThreadTitle(commentCount)}\n </div>\n {displayResolve && (\n <Button\n buttonType=\"tertiary\"\n className={classNames(\n \"collab-thread-header--resolve\",\n collabStyles()[\"collab-thread-header--resolve\"]\n )}\n icon=\"RightMarkActive\"\n iconProps={{\n className: classNames(\n collabStyles()[\n \"collab-thread-header--resolve--icon\"\n ],\n \"collab-thread-header--resolve--icon\"\n ),\n }}\n onClick={handleResolve}\n testId=\"collab-thread-resolve-btn\"\n isLoading={isResolving}\n loadingColor=\"secondary\"\n >\n <span\n className={classNames(\n \"collab-thread-header--resolve--text\",\n collabStyles()[\n \"collab-thread-header--resolve--text\"\n ]\n )}\n >\n Resolve\n </span>\n </Button>\n )}\n </>\n );\n};\n\nexport default ThreadActionBar;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,wBAAuB;AACvB,oBAAmB;AACnB,oBAA6B;AAC7B,yBAA+B;AAgBvB;AAPR,IAAM,kBAAgD,CAAC;AAAA,EACnD;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACJ,MAAM;AACF,SACI,4EACI;AAAA;AAAA,MAAC;AAAA;AAAA,QACG,eAAW,kBAAAA;AAAA,UACP;AAAA,cACA,4BAAa,EAAE,6BAA6B;AAAA,QAChD;AAAA,QAEC,iDAAe,YAAY;AAAA;AAAA,IAChC;AAAA,IACC,kBACG;AAAA,MAAC,cAAAC;AAAA,MAAA;AAAA,QACG,YAAW;AAAA,QACX,eAAW,kBAAAD;AAAA,UACP;AAAA,cACA,4BAAa,EAAE,+BAA+B;AAAA,QAClD;AAAA,QACA,MAAK;AAAA,QACL,WAAW;AAAA,UACP,eAAW,kBAAAA;AAAA,gBACP,4BAAa,EACT,qCACJ;AAAA,YACA;AAAA,UACJ;AAAA,QACJ;AAAA,QACA,SAAS;AAAA,QACT,QAAO;AAAA,QACP,WAAW;AAAA,QACX,cAAa;AAAA,QAEb;AAAA,UAAC;AAAA;AAAA,YACG,eAAW,kBAAAA;AAAA,cACP;AAAA,kBACA,4BAAa,EACT,qCACJ;AAAA,YACJ;AAAA,YACH;AAAA;AAAA,QAED;AAAA;AAAA,IACJ;AAAA,KAER;AAER;AAEA,IAAO,0BAAQ;","names":["classNames","Button"]}