@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.
- package/README.md +2 -2
- package/dist/legacy/configManager/config.default.cjs +10 -1
- package/dist/legacy/configManager/config.default.cjs.map +1 -1
- package/dist/legacy/configManager/config.default.js +10 -1
- package/dist/legacy/configManager/config.default.js.map +1 -1
- package/dist/legacy/configManager/handleUserConfig.cjs +7 -3
- package/dist/legacy/configManager/handleUserConfig.cjs.map +1 -1
- package/dist/legacy/configManager/handleUserConfig.js +7 -3
- package/dist/legacy/configManager/handleUserConfig.js.map +1 -1
- package/dist/legacy/index.cjs +45 -1
- package/dist/legacy/index.cjs.map +1 -1
- package/dist/legacy/index.d.cts +16 -2
- package/dist/legacy/index.d.ts +16 -2
- package/dist/legacy/index.js +45 -1
- package/dist/legacy/index.js.map +1 -1
- package/dist/legacy/livePreview/editButton/editButton.cjs +86 -1
- package/dist/legacy/livePreview/editButton/editButton.cjs.map +1 -1
- package/dist/legacy/livePreview/editButton/editButton.d.cts +14 -1
- package/dist/legacy/livePreview/editButton/editButton.d.ts +14 -1
- package/dist/legacy/livePreview/editButton/editButton.js +85 -1
- package/dist/legacy/livePreview/editButton/editButton.js.map +1 -1
- package/dist/legacy/livePreview/eventManager/postMessageEvent.hooks.cjs +1 -1
- package/dist/legacy/livePreview/eventManager/postMessageEvent.hooks.js +1 -1
- package/dist/legacy/preview/contentstack-live-preview-HOC.cjs +6 -2
- package/dist/legacy/preview/contentstack-live-preview-HOC.cjs.map +1 -1
- package/dist/legacy/preview/contentstack-live-preview-HOC.js +6 -2
- package/dist/legacy/preview/contentstack-live-preview-HOC.js.map +1 -1
- package/dist/legacy/types/types.cjs.map +1 -1
- package/dist/legacy/types/types.d.cts +10 -15
- package/dist/legacy/types/types.d.ts +10 -15
- package/dist/legacy/types/types.js.map +1 -1
- package/dist/legacy/visualBuilder/collab.style.cjs +131 -1
- package/dist/legacy/visualBuilder/collab.style.cjs.map +1 -1
- package/dist/legacy/visualBuilder/collab.style.d.cts +17 -0
- package/dist/legacy/visualBuilder/collab.style.d.ts +17 -0
- package/dist/legacy/visualBuilder/collab.style.js +131 -1
- package/dist/legacy/visualBuilder/collab.style.js.map +1 -1
- package/dist/legacy/visualBuilder/components/Collab/AsyncLoader/AsyncLoader.cjs +70 -0
- package/dist/legacy/visualBuilder/components/Collab/AsyncLoader/AsyncLoader.cjs.map +1 -0
- package/dist/legacy/visualBuilder/components/Collab/AsyncLoader/AsyncLoader.d.cts +12 -0
- package/dist/legacy/visualBuilder/components/Collab/AsyncLoader/AsyncLoader.d.ts +12 -0
- package/dist/legacy/visualBuilder/components/Collab/AsyncLoader/AsyncLoader.js +41 -0
- package/dist/legacy/visualBuilder/components/Collab/AsyncLoader/AsyncLoader.js.map +1 -0
- package/dist/legacy/visualBuilder/components/Collab/Button/Button.cjs +32 -10
- package/dist/legacy/visualBuilder/components/Collab/Button/Button.cjs.map +1 -1
- package/dist/legacy/visualBuilder/components/Collab/Button/Button.d.cts +2 -0
- package/dist/legacy/visualBuilder/components/Collab/Button/Button.d.ts +2 -0
- package/dist/legacy/visualBuilder/components/Collab/Button/Button.js +33 -11
- package/dist/legacy/visualBuilder/components/Collab/Button/Button.js.map +1 -1
- package/dist/legacy/visualBuilder/components/Collab/CollabIndicator.cjs +11 -4
- package/dist/legacy/visualBuilder/components/Collab/CollabIndicator.cjs.map +1 -1
- package/dist/legacy/visualBuilder/components/Collab/CollabIndicator.js +11 -4
- package/dist/legacy/visualBuilder/components/Collab/CollabIndicator.js.map +1 -1
- package/dist/legacy/visualBuilder/components/Collab/Icon/Icon.cjs +6 -1
- package/dist/legacy/visualBuilder/components/Collab/Icon/Icon.cjs.map +1 -1
- package/dist/legacy/visualBuilder/components/Collab/Icon/Icon.d.cts +1 -0
- package/dist/legacy/visualBuilder/components/Collab/Icon/Icon.d.ts +1 -0
- package/dist/legacy/visualBuilder/components/Collab/Icon/Icon.js +6 -1
- package/dist/legacy/visualBuilder/components/Collab/Icon/Icon.js.map +1 -1
- package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/CommentActionBar.cjs +8 -3
- package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/CommentActionBar.cjs.map +1 -1
- package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/CommentActionBar.js +9 -4
- package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/CommentActionBar.js.map +1 -1
- package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/CommentCard.cjs +1 -2
- package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/CommentCard.cjs.map +1 -1
- package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/CommentCard.js +2 -3
- package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/CommentCard.js.map +1 -1
- package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/CommentResolvedText.cjs +2 -5
- package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/CommentResolvedText.cjs.map +1 -1
- package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/CommentResolvedText.js +3 -9
- package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/CommentResolvedText.js.map +1 -1
- package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/CommentTextArea.cjs +98 -57
- package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/CommentTextArea.cjs.map +1 -1
- package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/CommentTextArea.js +98 -57
- package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/CommentTextArea.js.map +1 -1
- package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/ThreadActionBar.cjs +92 -0
- package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/ThreadActionBar.cjs.map +1 -0
- package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/ThreadActionBar.d.cts +13 -0
- package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/ThreadActionBar.d.ts +13 -0
- package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/ThreadActionBar.js +63 -0
- package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/ThreadActionBar.js.map +1 -0
- package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/ThreadFooter.cjs +1 -0
- package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/ThreadFooter.cjs.map +1 -1
- package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/ThreadFooter.js +1 -0
- package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/ThreadFooter.js.map +1 -1
- package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/ThreadHeader.cjs +19 -50
- package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/ThreadHeader.cjs.map +1 -1
- package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/ThreadHeader.js +21 -52
- package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/ThreadHeader.js.map +1 -1
- package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/index.cjs +29 -18
- package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/index.cjs.map +1 -1
- package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/index.js +29 -18
- package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/index.js.map +1 -1
- package/dist/legacy/visualBuilder/components/Collab/Tooltip/Tooltip.cjs +19 -35
- package/dist/legacy/visualBuilder/components/Collab/Tooltip/Tooltip.cjs.map +1 -1
- package/dist/legacy/visualBuilder/components/Collab/Tooltip/Tooltip.js +19 -35
- package/dist/legacy/visualBuilder/components/Collab/Tooltip/Tooltip.js.map +1 -1
- package/dist/legacy/visualBuilder/components/FieldToolbar.cjs +28 -22
- package/dist/legacy/visualBuilder/components/FieldToolbar.cjs.map +1 -1
- package/dist/legacy/visualBuilder/components/FieldToolbar.d.cts +1 -0
- package/dist/legacy/visualBuilder/components/FieldToolbar.d.ts +1 -0
- package/dist/legacy/visualBuilder/components/FieldToolbar.js +29 -24
- package/dist/legacy/visualBuilder/components/FieldToolbar.js.map +1 -1
- package/dist/legacy/visualBuilder/components/addInstanceButton.cjs +39 -11
- package/dist/legacy/visualBuilder/components/addInstanceButton.cjs.map +1 -1
- package/dist/legacy/visualBuilder/components/addInstanceButton.d.cts +5 -0
- package/dist/legacy/visualBuilder/components/addInstanceButton.d.ts +5 -0
- package/dist/legacy/visualBuilder/components/addInstanceButton.js +39 -11
- package/dist/legacy/visualBuilder/components/addInstanceButton.js.map +1 -1
- package/dist/legacy/visualBuilder/components/startEditingButton.cjs +38 -11
- package/dist/legacy/visualBuilder/components/startEditingButton.cjs.map +1 -1
- package/dist/legacy/visualBuilder/components/startEditingButton.d.cts +7 -2
- package/dist/legacy/visualBuilder/components/startEditingButton.d.ts +7 -2
- package/dist/legacy/visualBuilder/components/startEditingButton.js +34 -11
- package/dist/legacy/visualBuilder/components/startEditingButton.js.map +1 -1
- package/dist/legacy/visualBuilder/eventManager/useCollab.cjs +57 -19
- package/dist/legacy/visualBuilder/eventManager/useCollab.cjs.map +1 -1
- package/dist/legacy/visualBuilder/eventManager/useCollab.js +57 -19
- package/dist/legacy/visualBuilder/eventManager/useCollab.js.map +1 -1
- package/dist/legacy/visualBuilder/eventManager/useHideFocusOverlayPostMessageEvent.cjs +7 -2
- package/dist/legacy/visualBuilder/eventManager/useHideFocusOverlayPostMessageEvent.cjs.map +1 -1
- package/dist/legacy/visualBuilder/eventManager/useHideFocusOverlayPostMessageEvent.js +7 -2
- package/dist/legacy/visualBuilder/eventManager/useHideFocusOverlayPostMessageEvent.js.map +1 -1
- package/dist/legacy/visualBuilder/eventManager/useRecalculateVariantDataCSLPValues.cjs +59 -4
- package/dist/legacy/visualBuilder/eventManager/useRecalculateVariantDataCSLPValues.cjs.map +1 -1
- package/dist/legacy/visualBuilder/eventManager/useRecalculateVariantDataCSLPValues.js +59 -4
- package/dist/legacy/visualBuilder/eventManager/useRecalculateVariantDataCSLPValues.js.map +1 -1
- package/dist/legacy/visualBuilder/generators/generateAddInstanceButtons.cjs +8 -2
- package/dist/legacy/visualBuilder/generators/generateAddInstanceButtons.cjs.map +1 -1
- package/dist/legacy/visualBuilder/generators/generateAddInstanceButtons.d.cts +9 -3
- package/dist/legacy/visualBuilder/generators/generateAddInstanceButtons.d.ts +9 -3
- package/dist/legacy/visualBuilder/generators/generateAddInstanceButtons.js +8 -2
- package/dist/legacy/visualBuilder/generators/generateAddInstanceButtons.js.map +1 -1
- package/dist/legacy/visualBuilder/generators/generateOverlay.cjs +5 -0
- package/dist/legacy/visualBuilder/generators/generateOverlay.cjs.map +1 -1
- package/dist/legacy/visualBuilder/generators/generateOverlay.js +5 -0
- package/dist/legacy/visualBuilder/generators/generateOverlay.js.map +1 -1
- package/dist/legacy/visualBuilder/generators/generateThread.cjs +103 -18
- package/dist/legacy/visualBuilder/generators/generateThread.cjs.map +1 -1
- package/dist/legacy/visualBuilder/generators/generateThread.d.cts +3 -1
- package/dist/legacy/visualBuilder/generators/generateThread.d.ts +3 -1
- package/dist/legacy/visualBuilder/generators/generateThread.js +101 -17
- package/dist/legacy/visualBuilder/generators/generateThread.js.map +1 -1
- package/dist/legacy/visualBuilder/generators/generateToolbar.cjs +13 -5
- package/dist/legacy/visualBuilder/generators/generateToolbar.cjs.map +1 -1
- package/dist/legacy/visualBuilder/generators/generateToolbar.d.cts +2 -2
- package/dist/legacy/visualBuilder/generators/generateToolbar.d.ts +2 -2
- package/dist/legacy/visualBuilder/generators/generateToolbar.js +13 -5
- package/dist/legacy/visualBuilder/generators/generateToolbar.js.map +1 -1
- package/dist/legacy/visualBuilder/hooks/useCollabOperations.cjs +9 -8
- package/dist/legacy/visualBuilder/hooks/useCollabOperations.cjs.map +1 -1
- package/dist/legacy/visualBuilder/hooks/useCollabOperations.js +9 -8
- package/dist/legacy/visualBuilder/hooks/useCollabOperations.js.map +1 -1
- package/dist/legacy/visualBuilder/hooks/useCommentTextArea.cjs +23 -5
- package/dist/legacy/visualBuilder/hooks/useCommentTextArea.cjs.map +1 -1
- package/dist/legacy/visualBuilder/hooks/useCommentTextArea.d.cts +1 -0
- package/dist/legacy/visualBuilder/hooks/useCommentTextArea.d.ts +1 -0
- package/dist/legacy/visualBuilder/hooks/useCommentTextArea.js +23 -5
- package/dist/legacy/visualBuilder/hooks/useCommentTextArea.js.map +1 -1
- package/dist/legacy/visualBuilder/index.cjs +16 -11
- package/dist/legacy/visualBuilder/index.cjs.map +1 -1
- package/dist/legacy/visualBuilder/index.d.cts +1 -0
- package/dist/legacy/visualBuilder/index.d.ts +1 -0
- package/dist/legacy/visualBuilder/index.js +14 -5
- package/dist/legacy/visualBuilder/index.js.map +1 -1
- package/dist/legacy/visualBuilder/listeners/mouseClick.cjs +81 -20
- package/dist/legacy/visualBuilder/listeners/mouseClick.cjs.map +1 -1
- package/dist/legacy/visualBuilder/listeners/mouseClick.d.cts +4 -1
- package/dist/legacy/visualBuilder/listeners/mouseClick.d.ts +4 -1
- package/dist/legacy/visualBuilder/listeners/mouseClick.js +81 -20
- package/dist/legacy/visualBuilder/listeners/mouseClick.js.map +1 -1
- package/dist/legacy/visualBuilder/listeners/mouseHover.cjs +3 -1
- package/dist/legacy/visualBuilder/listeners/mouseHover.cjs.map +1 -1
- package/dist/legacy/visualBuilder/listeners/mouseHover.js +3 -1
- package/dist/legacy/visualBuilder/listeners/mouseHover.js.map +1 -1
- package/dist/legacy/visualBuilder/types/collab.types.cjs.map +1 -1
- package/dist/legacy/visualBuilder/types/collab.types.d.cts +22 -1
- package/dist/legacy/visualBuilder/types/collab.types.d.ts +22 -1
- package/dist/legacy/visualBuilder/utils/collabUtils.cjs +105 -2
- package/dist/legacy/visualBuilder/utils/collabUtils.cjs.map +1 -1
- package/dist/legacy/visualBuilder/utils/collabUtils.d.cts +25 -1
- package/dist/legacy/visualBuilder/utils/collabUtils.d.ts +25 -1
- package/dist/legacy/visualBuilder/utils/collabUtils.js +100 -2
- package/dist/legacy/visualBuilder/utils/collabUtils.js.map +1 -1
- package/dist/legacy/visualBuilder/utils/enableInlineEditing.cjs +94 -0
- package/dist/legacy/visualBuilder/utils/enableInlineEditing.cjs.map +1 -0
- package/dist/legacy/visualBuilder/utils/enableInlineEditing.d.cts +11 -0
- package/dist/legacy/visualBuilder/utils/enableInlineEditing.d.ts +11 -0
- package/dist/legacy/visualBuilder/utils/enableInlineEditing.js +74 -0
- package/dist/legacy/visualBuilder/utils/enableInlineEditing.js.map +1 -0
- package/dist/legacy/visualBuilder/utils/getChildrenDirection.cjs +8 -0
- package/dist/legacy/visualBuilder/utils/getChildrenDirection.cjs.map +1 -1
- package/dist/legacy/visualBuilder/utils/getChildrenDirection.d.cts +3 -1
- package/dist/legacy/visualBuilder/utils/getChildrenDirection.d.ts +3 -1
- package/dist/legacy/visualBuilder/utils/getChildrenDirection.js +8 -0
- package/dist/legacy/visualBuilder/utils/getChildrenDirection.js.map +1 -1
- package/dist/legacy/visualBuilder/utils/handleIndividualFields.cjs +24 -112
- package/dist/legacy/visualBuilder/utils/handleIndividualFields.cjs.map +1 -1
- package/dist/legacy/visualBuilder/utils/handleIndividualFields.d.cts +3 -5
- package/dist/legacy/visualBuilder/utils/handleIndividualFields.d.ts +3 -5
- package/dist/legacy/visualBuilder/utils/handleIndividualFields.js +22 -116
- package/dist/legacy/visualBuilder/utils/handleIndividualFields.js.map +1 -1
- package/dist/legacy/visualBuilder/utils/handleInlineEditableField.cjs +81 -0
- package/dist/legacy/visualBuilder/utils/handleInlineEditableField.cjs.map +1 -0
- package/dist/legacy/visualBuilder/utils/handleInlineEditableField.d.cts +16 -0
- package/dist/legacy/visualBuilder/utils/handleInlineEditableField.d.ts +16 -0
- package/dist/legacy/visualBuilder/utils/handleInlineEditableField.js +58 -0
- package/dist/legacy/visualBuilder/utils/handleInlineEditableField.js.map +1 -0
- package/dist/legacy/visualBuilder/utils/isFieldMultiple.cjs +35 -0
- package/dist/legacy/visualBuilder/utils/isFieldMultiple.cjs.map +1 -0
- package/dist/legacy/visualBuilder/utils/isFieldMultiple.d.cts +6 -0
- package/dist/legacy/visualBuilder/utils/isFieldMultiple.d.ts +6 -0
- package/dist/legacy/visualBuilder/utils/isFieldMultiple.js +12 -0
- package/dist/legacy/visualBuilder/utils/isFieldMultiple.js.map +1 -0
- package/dist/legacy/visualBuilder/utils/multipleElementAddButton.cjs +14 -20
- package/dist/legacy/visualBuilder/utils/multipleElementAddButton.cjs.map +1 -1
- package/dist/legacy/visualBuilder/utils/multipleElementAddButton.d.cts +1 -1
- package/dist/legacy/visualBuilder/utils/multipleElementAddButton.d.ts +1 -1
- package/dist/legacy/visualBuilder/utils/multipleElementAddButton.js +14 -20
- package/dist/legacy/visualBuilder/utils/multipleElementAddButton.js.map +1 -1
- package/dist/legacy/visualBuilder/utils/pasteAsPlainText.cjs +44 -0
- package/dist/legacy/visualBuilder/utils/pasteAsPlainText.cjs.map +1 -0
- package/dist/legacy/visualBuilder/utils/pasteAsPlainText.d.cts +5 -0
- package/dist/legacy/visualBuilder/utils/pasteAsPlainText.d.ts +5 -0
- package/dist/legacy/visualBuilder/utils/pasteAsPlainText.js +21 -0
- package/dist/legacy/visualBuilder/utils/pasteAsPlainText.js.map +1 -0
- package/dist/legacy/visualBuilder/utils/types/index.types.cjs.map +1 -1
- package/dist/legacy/visualBuilder/utils/types/index.types.d.cts +6 -1
- package/dist/legacy/visualBuilder/utils/types/index.types.d.ts +6 -1
- package/dist/legacy/visualBuilder/utils/types/index.types.js.map +1 -1
- package/dist/legacy/visualBuilder/utils/types/postMessage.types.cjs +2 -1
- package/dist/legacy/visualBuilder/utils/types/postMessage.types.cjs.map +1 -1
- package/dist/legacy/visualBuilder/utils/types/postMessage.types.d.cts +2 -1
- package/dist/legacy/visualBuilder/utils/types/postMessage.types.d.ts +2 -1
- package/dist/legacy/visualBuilder/utils/types/postMessage.types.js +2 -1
- package/dist/legacy/visualBuilder/utils/types/postMessage.types.js.map +1 -1
- package/dist/legacy/visualBuilder/visualBuilder.style.cjs +27 -5
- package/dist/legacy/visualBuilder/visualBuilder.style.cjs.map +1 -1
- package/dist/legacy/visualBuilder/visualBuilder.style.d.cts +6 -1
- package/dist/legacy/visualBuilder/visualBuilder.style.d.ts +6 -1
- package/dist/legacy/visualBuilder/visualBuilder.style.js +27 -5
- package/dist/legacy/visualBuilder/visualBuilder.style.js.map +1 -1
- package/dist/modern/configManager/config.default.cjs +10 -1
- package/dist/modern/configManager/config.default.cjs.map +1 -1
- package/dist/modern/configManager/config.default.js +10 -1
- package/dist/modern/configManager/config.default.js.map +1 -1
- package/dist/modern/configManager/handleUserConfig.cjs +4 -0
- package/dist/modern/configManager/handleUserConfig.cjs.map +1 -1
- package/dist/modern/configManager/handleUserConfig.js +4 -0
- package/dist/modern/configManager/handleUserConfig.js.map +1 -1
- package/dist/modern/index.cjs +45 -1
- package/dist/modern/index.cjs.map +1 -1
- package/dist/modern/index.d.cts +16 -2
- package/dist/modern/index.d.ts +16 -2
- package/dist/modern/index.js +45 -1
- package/dist/modern/index.js.map +1 -1
- package/dist/modern/livePreview/editButton/editButton.cjs +85 -1
- package/dist/modern/livePreview/editButton/editButton.cjs.map +1 -1
- package/dist/modern/livePreview/editButton/editButton.d.cts +14 -1
- package/dist/modern/livePreview/editButton/editButton.d.ts +14 -1
- package/dist/modern/livePreview/editButton/editButton.js +84 -1
- package/dist/modern/livePreview/editButton/editButton.js.map +1 -1
- package/dist/modern/livePreview/eventManager/postMessageEvent.hooks.cjs +1 -1
- package/dist/modern/livePreview/eventManager/postMessageEvent.hooks.js +1 -1
- package/dist/modern/preview/contentstack-live-preview-HOC.cjs +6 -2
- package/dist/modern/preview/contentstack-live-preview-HOC.cjs.map +1 -1
- package/dist/modern/preview/contentstack-live-preview-HOC.js +6 -2
- package/dist/modern/preview/contentstack-live-preview-HOC.js.map +1 -1
- package/dist/modern/types/types.cjs.map +1 -1
- package/dist/modern/types/types.d.cts +10 -15
- package/dist/modern/types/types.d.ts +10 -15
- package/dist/modern/types/types.js.map +1 -1
- package/dist/modern/visualBuilder/collab.style.cjs +131 -1
- package/dist/modern/visualBuilder/collab.style.cjs.map +1 -1
- package/dist/modern/visualBuilder/collab.style.d.cts +17 -0
- package/dist/modern/visualBuilder/collab.style.d.ts +17 -0
- package/dist/modern/visualBuilder/collab.style.js +131 -1
- package/dist/modern/visualBuilder/collab.style.js.map +1 -1
- package/dist/modern/visualBuilder/components/Collab/AsyncLoader/AsyncLoader.cjs +70 -0
- package/dist/modern/visualBuilder/components/Collab/AsyncLoader/AsyncLoader.cjs.map +1 -0
- package/dist/modern/visualBuilder/components/Collab/AsyncLoader/AsyncLoader.d.cts +12 -0
- package/dist/modern/visualBuilder/components/Collab/AsyncLoader/AsyncLoader.d.ts +12 -0
- package/dist/modern/visualBuilder/components/Collab/AsyncLoader/AsyncLoader.js +41 -0
- package/dist/modern/visualBuilder/components/Collab/AsyncLoader/AsyncLoader.js.map +1 -0
- package/dist/modern/visualBuilder/components/Collab/Button/Button.cjs +32 -10
- package/dist/modern/visualBuilder/components/Collab/Button/Button.cjs.map +1 -1
- package/dist/modern/visualBuilder/components/Collab/Button/Button.d.cts +2 -0
- package/dist/modern/visualBuilder/components/Collab/Button/Button.d.ts +2 -0
- package/dist/modern/visualBuilder/components/Collab/Button/Button.js +33 -11
- package/dist/modern/visualBuilder/components/Collab/Button/Button.js.map +1 -1
- package/dist/modern/visualBuilder/components/Collab/CollabIndicator.cjs +7 -1
- package/dist/modern/visualBuilder/components/Collab/CollabIndicator.cjs.map +1 -1
- package/dist/modern/visualBuilder/components/Collab/CollabIndicator.js +7 -1
- package/dist/modern/visualBuilder/components/Collab/CollabIndicator.js.map +1 -1
- package/dist/modern/visualBuilder/components/Collab/Icon/Icon.cjs +6 -1
- package/dist/modern/visualBuilder/components/Collab/Icon/Icon.cjs.map +1 -1
- package/dist/modern/visualBuilder/components/Collab/Icon/Icon.d.cts +1 -0
- package/dist/modern/visualBuilder/components/Collab/Icon/Icon.d.ts +1 -0
- package/dist/modern/visualBuilder/components/Collab/Icon/Icon.js +6 -1
- package/dist/modern/visualBuilder/components/Collab/Icon/Icon.js.map +1 -1
- package/dist/modern/visualBuilder/components/Collab/ThreadPopup/CommentActionBar.cjs +8 -3
- package/dist/modern/visualBuilder/components/Collab/ThreadPopup/CommentActionBar.cjs.map +1 -1
- package/dist/modern/visualBuilder/components/Collab/ThreadPopup/CommentActionBar.js +9 -4
- package/dist/modern/visualBuilder/components/Collab/ThreadPopup/CommentActionBar.js.map +1 -1
- package/dist/modern/visualBuilder/components/Collab/ThreadPopup/CommentCard.cjs +1 -2
- package/dist/modern/visualBuilder/components/Collab/ThreadPopup/CommentCard.cjs.map +1 -1
- package/dist/modern/visualBuilder/components/Collab/ThreadPopup/CommentCard.js +2 -3
- package/dist/modern/visualBuilder/components/Collab/ThreadPopup/CommentCard.js.map +1 -1
- package/dist/modern/visualBuilder/components/Collab/ThreadPopup/CommentResolvedText.cjs +2 -5
- package/dist/modern/visualBuilder/components/Collab/ThreadPopup/CommentResolvedText.cjs.map +1 -1
- package/dist/modern/visualBuilder/components/Collab/ThreadPopup/CommentResolvedText.js +3 -9
- package/dist/modern/visualBuilder/components/Collab/ThreadPopup/CommentResolvedText.js.map +1 -1
- package/dist/modern/visualBuilder/components/Collab/ThreadPopup/CommentTextArea.cjs +94 -57
- package/dist/modern/visualBuilder/components/Collab/ThreadPopup/CommentTextArea.cjs.map +1 -1
- package/dist/modern/visualBuilder/components/Collab/ThreadPopup/CommentTextArea.js +94 -57
- package/dist/modern/visualBuilder/components/Collab/ThreadPopup/CommentTextArea.js.map +1 -1
- package/dist/modern/visualBuilder/components/Collab/ThreadPopup/ThreadActionBar.cjs +92 -0
- package/dist/modern/visualBuilder/components/Collab/ThreadPopup/ThreadActionBar.cjs.map +1 -0
- package/dist/modern/visualBuilder/components/Collab/ThreadPopup/ThreadActionBar.d.cts +13 -0
- package/dist/modern/visualBuilder/components/Collab/ThreadPopup/ThreadActionBar.d.ts +13 -0
- package/dist/modern/visualBuilder/components/Collab/ThreadPopup/ThreadActionBar.js +63 -0
- package/dist/modern/visualBuilder/components/Collab/ThreadPopup/ThreadActionBar.js.map +1 -0
- package/dist/modern/visualBuilder/components/Collab/ThreadPopup/ThreadFooter.cjs +1 -0
- package/dist/modern/visualBuilder/components/Collab/ThreadPopup/ThreadFooter.cjs.map +1 -1
- package/dist/modern/visualBuilder/components/Collab/ThreadPopup/ThreadFooter.js +1 -0
- package/dist/modern/visualBuilder/components/Collab/ThreadPopup/ThreadFooter.js.map +1 -1
- package/dist/modern/visualBuilder/components/Collab/ThreadPopup/ThreadHeader.cjs +19 -50
- package/dist/modern/visualBuilder/components/Collab/ThreadPopup/ThreadHeader.cjs.map +1 -1
- package/dist/modern/visualBuilder/components/Collab/ThreadPopup/ThreadHeader.js +21 -52
- package/dist/modern/visualBuilder/components/Collab/ThreadPopup/ThreadHeader.js.map +1 -1
- package/dist/modern/visualBuilder/components/Collab/ThreadPopup/index.cjs +29 -18
- package/dist/modern/visualBuilder/components/Collab/ThreadPopup/index.cjs.map +1 -1
- package/dist/modern/visualBuilder/components/Collab/ThreadPopup/index.js +29 -18
- package/dist/modern/visualBuilder/components/Collab/ThreadPopup/index.js.map +1 -1
- package/dist/modern/visualBuilder/components/Collab/Tooltip/Tooltip.cjs +19 -35
- package/dist/modern/visualBuilder/components/Collab/Tooltip/Tooltip.cjs.map +1 -1
- package/dist/modern/visualBuilder/components/Collab/Tooltip/Tooltip.js +19 -35
- package/dist/modern/visualBuilder/components/Collab/Tooltip/Tooltip.js.map +1 -1
- package/dist/modern/visualBuilder/components/FieldToolbar.cjs +28 -21
- package/dist/modern/visualBuilder/components/FieldToolbar.cjs.map +1 -1
- package/dist/modern/visualBuilder/components/FieldToolbar.d.cts +1 -0
- package/dist/modern/visualBuilder/components/FieldToolbar.d.ts +1 -0
- package/dist/modern/visualBuilder/components/FieldToolbar.js +29 -23
- package/dist/modern/visualBuilder/components/FieldToolbar.js.map +1 -1
- package/dist/modern/visualBuilder/components/addInstanceButton.cjs +38 -11
- package/dist/modern/visualBuilder/components/addInstanceButton.cjs.map +1 -1
- package/dist/modern/visualBuilder/components/addInstanceButton.d.cts +5 -0
- package/dist/modern/visualBuilder/components/addInstanceButton.d.ts +5 -0
- package/dist/modern/visualBuilder/components/addInstanceButton.js +38 -11
- package/dist/modern/visualBuilder/components/addInstanceButton.js.map +1 -1
- package/dist/modern/visualBuilder/components/startEditingButton.cjs +38 -11
- package/dist/modern/visualBuilder/components/startEditingButton.cjs.map +1 -1
- package/dist/modern/visualBuilder/components/startEditingButton.d.cts +7 -2
- package/dist/modern/visualBuilder/components/startEditingButton.d.ts +7 -2
- package/dist/modern/visualBuilder/components/startEditingButton.js +34 -11
- package/dist/modern/visualBuilder/components/startEditingButton.js.map +1 -1
- package/dist/modern/visualBuilder/eventManager/useCollab.cjs +45 -11
- package/dist/modern/visualBuilder/eventManager/useCollab.cjs.map +1 -1
- package/dist/modern/visualBuilder/eventManager/useCollab.js +45 -11
- package/dist/modern/visualBuilder/eventManager/useCollab.js.map +1 -1
- package/dist/modern/visualBuilder/eventManager/useHideFocusOverlayPostMessageEvent.cjs +5 -0
- package/dist/modern/visualBuilder/eventManager/useHideFocusOverlayPostMessageEvent.cjs.map +1 -1
- package/dist/modern/visualBuilder/eventManager/useHideFocusOverlayPostMessageEvent.js +5 -0
- package/dist/modern/visualBuilder/eventManager/useHideFocusOverlayPostMessageEvent.js.map +1 -1
- package/dist/modern/visualBuilder/eventManager/useRecalculateVariantDataCSLPValues.cjs +59 -4
- package/dist/modern/visualBuilder/eventManager/useRecalculateVariantDataCSLPValues.cjs.map +1 -1
- package/dist/modern/visualBuilder/eventManager/useRecalculateVariantDataCSLPValues.js +59 -4
- package/dist/modern/visualBuilder/eventManager/useRecalculateVariantDataCSLPValues.js.map +1 -1
- package/dist/modern/visualBuilder/generators/generateAddInstanceButtons.cjs +8 -2
- package/dist/modern/visualBuilder/generators/generateAddInstanceButtons.cjs.map +1 -1
- package/dist/modern/visualBuilder/generators/generateAddInstanceButtons.d.cts +9 -3
- package/dist/modern/visualBuilder/generators/generateAddInstanceButtons.d.ts +9 -3
- package/dist/modern/visualBuilder/generators/generateAddInstanceButtons.js +8 -2
- package/dist/modern/visualBuilder/generators/generateAddInstanceButtons.js.map +1 -1
- package/dist/modern/visualBuilder/generators/generateOverlay.cjs +5 -0
- package/dist/modern/visualBuilder/generators/generateOverlay.cjs.map +1 -1
- package/dist/modern/visualBuilder/generators/generateOverlay.js +5 -0
- package/dist/modern/visualBuilder/generators/generateOverlay.js.map +1 -1
- package/dist/modern/visualBuilder/generators/generateThread.cjs +102 -16
- package/dist/modern/visualBuilder/generators/generateThread.cjs.map +1 -1
- package/dist/modern/visualBuilder/generators/generateThread.d.cts +3 -1
- package/dist/modern/visualBuilder/generators/generateThread.d.ts +3 -1
- package/dist/modern/visualBuilder/generators/generateThread.js +100 -15
- package/dist/modern/visualBuilder/generators/generateThread.js.map +1 -1
- package/dist/modern/visualBuilder/generators/generateToolbar.cjs +13 -5
- package/dist/modern/visualBuilder/generators/generateToolbar.cjs.map +1 -1
- package/dist/modern/visualBuilder/generators/generateToolbar.d.cts +2 -2
- package/dist/modern/visualBuilder/generators/generateToolbar.d.ts +2 -2
- package/dist/modern/visualBuilder/generators/generateToolbar.js +13 -5
- package/dist/modern/visualBuilder/generators/generateToolbar.js.map +1 -1
- package/dist/modern/visualBuilder/hooks/useCollabOperations.cjs +9 -8
- package/dist/modern/visualBuilder/hooks/useCollabOperations.cjs.map +1 -1
- package/dist/modern/visualBuilder/hooks/useCollabOperations.js +9 -8
- package/dist/modern/visualBuilder/hooks/useCollabOperations.js.map +1 -1
- package/dist/modern/visualBuilder/hooks/useCommentTextArea.cjs +22 -5
- package/dist/modern/visualBuilder/hooks/useCommentTextArea.cjs.map +1 -1
- package/dist/modern/visualBuilder/hooks/useCommentTextArea.d.cts +1 -0
- package/dist/modern/visualBuilder/hooks/useCommentTextArea.d.ts +1 -0
- package/dist/modern/visualBuilder/hooks/useCommentTextArea.js +22 -5
- package/dist/modern/visualBuilder/hooks/useCommentTextArea.js.map +1 -1
- package/dist/modern/visualBuilder/index.cjs +16 -11
- package/dist/modern/visualBuilder/index.cjs.map +1 -1
- package/dist/modern/visualBuilder/index.d.cts +1 -0
- package/dist/modern/visualBuilder/index.d.ts +1 -0
- package/dist/modern/visualBuilder/index.js +14 -5
- package/dist/modern/visualBuilder/index.js.map +1 -1
- package/dist/modern/visualBuilder/listeners/mouseClick.cjs +78 -18
- package/dist/modern/visualBuilder/listeners/mouseClick.cjs.map +1 -1
- package/dist/modern/visualBuilder/listeners/mouseClick.d.cts +4 -1
- package/dist/modern/visualBuilder/listeners/mouseClick.d.ts +4 -1
- package/dist/modern/visualBuilder/listeners/mouseClick.js +78 -18
- package/dist/modern/visualBuilder/listeners/mouseClick.js.map +1 -1
- package/dist/modern/visualBuilder/listeners/mouseHover.cjs +3 -1
- package/dist/modern/visualBuilder/listeners/mouseHover.cjs.map +1 -1
- package/dist/modern/visualBuilder/listeners/mouseHover.js +3 -1
- package/dist/modern/visualBuilder/listeners/mouseHover.js.map +1 -1
- package/dist/modern/visualBuilder/types/collab.types.cjs.map +1 -1
- package/dist/modern/visualBuilder/types/collab.types.d.cts +22 -1
- package/dist/modern/visualBuilder/types/collab.types.d.ts +22 -1
- package/dist/modern/visualBuilder/utils/collabUtils.cjs +105 -2
- package/dist/modern/visualBuilder/utils/collabUtils.cjs.map +1 -1
- package/dist/modern/visualBuilder/utils/collabUtils.d.cts +25 -1
- package/dist/modern/visualBuilder/utils/collabUtils.d.ts +25 -1
- package/dist/modern/visualBuilder/utils/collabUtils.js +100 -2
- package/dist/modern/visualBuilder/utils/collabUtils.js.map +1 -1
- package/dist/modern/visualBuilder/utils/enableInlineEditing.cjs +94 -0
- package/dist/modern/visualBuilder/utils/enableInlineEditing.cjs.map +1 -0
- package/dist/modern/visualBuilder/utils/enableInlineEditing.d.cts +11 -0
- package/dist/modern/visualBuilder/utils/enableInlineEditing.d.ts +11 -0
- package/dist/modern/visualBuilder/utils/enableInlineEditing.js +74 -0
- package/dist/modern/visualBuilder/utils/enableInlineEditing.js.map +1 -0
- package/dist/modern/visualBuilder/utils/getChildrenDirection.cjs +8 -0
- package/dist/modern/visualBuilder/utils/getChildrenDirection.cjs.map +1 -1
- package/dist/modern/visualBuilder/utils/getChildrenDirection.d.cts +3 -1
- package/dist/modern/visualBuilder/utils/getChildrenDirection.d.ts +3 -1
- package/dist/modern/visualBuilder/utils/getChildrenDirection.js +8 -0
- package/dist/modern/visualBuilder/utils/getChildrenDirection.js.map +1 -1
- package/dist/modern/visualBuilder/utils/handleIndividualFields.cjs +23 -111
- package/dist/modern/visualBuilder/utils/handleIndividualFields.cjs.map +1 -1
- package/dist/modern/visualBuilder/utils/handleIndividualFields.d.cts +3 -5
- package/dist/modern/visualBuilder/utils/handleIndividualFields.d.ts +3 -5
- package/dist/modern/visualBuilder/utils/handleIndividualFields.js +21 -115
- package/dist/modern/visualBuilder/utils/handleIndividualFields.js.map +1 -1
- package/dist/modern/visualBuilder/utils/handleInlineEditableField.cjs +81 -0
- package/dist/modern/visualBuilder/utils/handleInlineEditableField.cjs.map +1 -0
- package/dist/modern/visualBuilder/utils/handleInlineEditableField.d.cts +16 -0
- package/dist/modern/visualBuilder/utils/handleInlineEditableField.d.ts +16 -0
- package/dist/modern/visualBuilder/utils/handleInlineEditableField.js +58 -0
- package/dist/modern/visualBuilder/utils/handleInlineEditableField.js.map +1 -0
- package/dist/modern/visualBuilder/utils/isFieldMultiple.cjs +35 -0
- package/dist/modern/visualBuilder/utils/isFieldMultiple.cjs.map +1 -0
- package/dist/modern/visualBuilder/utils/isFieldMultiple.d.cts +6 -0
- package/dist/modern/visualBuilder/utils/isFieldMultiple.d.ts +6 -0
- package/dist/modern/visualBuilder/utils/isFieldMultiple.js +12 -0
- package/dist/modern/visualBuilder/utils/isFieldMultiple.js.map +1 -0
- package/dist/modern/visualBuilder/utils/multipleElementAddButton.cjs +14 -18
- package/dist/modern/visualBuilder/utils/multipleElementAddButton.cjs.map +1 -1
- package/dist/modern/visualBuilder/utils/multipleElementAddButton.d.cts +1 -1
- package/dist/modern/visualBuilder/utils/multipleElementAddButton.d.ts +1 -1
- package/dist/modern/visualBuilder/utils/multipleElementAddButton.js +14 -18
- package/dist/modern/visualBuilder/utils/multipleElementAddButton.js.map +1 -1
- package/dist/modern/visualBuilder/utils/pasteAsPlainText.cjs +44 -0
- package/dist/modern/visualBuilder/utils/pasteAsPlainText.cjs.map +1 -0
- package/dist/modern/visualBuilder/utils/pasteAsPlainText.d.cts +5 -0
- package/dist/modern/visualBuilder/utils/pasteAsPlainText.d.ts +5 -0
- package/dist/modern/visualBuilder/utils/pasteAsPlainText.js +21 -0
- package/dist/modern/visualBuilder/utils/pasteAsPlainText.js.map +1 -0
- package/dist/modern/visualBuilder/utils/types/index.types.cjs.map +1 -1
- package/dist/modern/visualBuilder/utils/types/index.types.d.cts +6 -1
- package/dist/modern/visualBuilder/utils/types/index.types.d.ts +6 -1
- package/dist/modern/visualBuilder/utils/types/index.types.js.map +1 -1
- package/dist/modern/visualBuilder/utils/types/postMessage.types.cjs +2 -1
- package/dist/modern/visualBuilder/utils/types/postMessage.types.cjs.map +1 -1
- package/dist/modern/visualBuilder/utils/types/postMessage.types.d.cts +2 -1
- package/dist/modern/visualBuilder/utils/types/postMessage.types.d.ts +2 -1
- package/dist/modern/visualBuilder/utils/types/postMessage.types.js +2 -1
- package/dist/modern/visualBuilder/utils/types/postMessage.types.js.map +1 -1
- package/dist/modern/visualBuilder/visualBuilder.style.cjs +27 -5
- package/dist/modern/visualBuilder/visualBuilder.style.cjs.map +1 -1
- package/dist/modern/visualBuilder/visualBuilder.style.d.cts +6 -1
- package/dist/modern/visualBuilder/visualBuilder.style.d.ts +6 -1
- package/dist/modern/visualBuilder/visualBuilder.style.js +27 -5
- package/dist/modern/visualBuilder/visualBuilder.style.js.map +1 -1
- package/package.json +4 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../../src/visualBuilder/components/Collab/Button/Button.tsx"],"sourcesContent":["/** @jsxImportSource preact */\nimport React from \"preact/compat\";\nimport { JSX } from \"preact\";\nimport classNames from \"classnames\";\nimport Icon, { IconProps } from \"../Icon/Icon\";\nimport { iconComponents } from \"../../icons/CollabIcons\";\nimport {\n collabStyles,\n flexAlignCenter,\n flexCentered,\n} from \"../../../collab.style\";\n\ntype IconName = keyof typeof iconComponents;\n\ninterface ButtonProps {\n buttonType?: \"primary\" | \"secondary\" | \"tertiary\" | \"destructive\";\n children?: React.ReactNode;\n className?: string;\n testId?: string;\n onClick?: JSX.MouseEventHandler<HTMLButtonElement | HTMLAnchorElement>;\n disabled?: boolean;\n type?: \"button\" | \"submit\" | \"reset\";\n style?: React.CSSProperties;\n href?: string;\n id?: string;\n size?: \"large\" | \"small\";\n icon?: IconName;\n iconProps?: Partial<IconProps>;\n iconAlignment?: \"left\" | \"right\" | \"both\";\n}\n\nconst Button: React.FC<ButtonProps> = ({\n buttonType = \"primary\",\n children,\n className = \"\",\n testId,\n onClick,\n disabled = false,\n type = \"button\",\n style,\n href,\n id,\n size = \"large\",\n icon,\n iconProps,\n iconAlignment = \"left\",\n}) => {\n const Element = href ? \"a\" : \"button\";\n let nestedChildren: React.ReactNode =\n children && React.Children.toArray([children]);\n\n if (icon) {\n let iconChild = <Icon icon={icon} {...iconProps} />;\n\n switch (iconAlignment) {\n case \"left\":\n nestedChildren = React.Children.toArray([\n iconChild,\n nestedChildren,\n ]);\n break;\n case \"right\":\n nestedChildren = React.Children.toArray([\n nestedChildren,\n iconChild,\n ]);\n break;\n case \"both\":\n nestedChildren = React.Children.toArray([\n iconChild,\n nestedChildren,\n iconChild,\n ]);\n break;\n default:\n break;\n }\n }\n\n const combinedClassName = classNames(\n collabStyles()[\"collab-button--basestyle\"],\n collabStyles()[\"collab-button--type\"][buttonType],\n collabStyles()[\"collab-button--size\"][size],\n icon && collabStyles()[\"collab-button--icon-allignment\"][iconAlignment],\n disabled && collabStyles()[\"collab-button--disabled\"],\n className,\n\n `collab-button collab-button--${buttonType} collab-button--${size} ${\n icon ? `collab-button--icon-${iconAlignment}` : \"\"\n } ${disabled ? \"collab-button--disabled\" : \"\"}`\n );\n\n // Ensure style is valid\n const validStyle = Object.fromEntries(\n Object.entries(style || {}).filter(([_, value]) => value != null)\n );\n\n return (\n <Element\n className={combinedClassName}\n id={id}\n onClick={onClick}\n type={type}\n style={validStyle as React.CSSProperties}\n disabled={disabled}\n href={href}\n data-testid={testId}\n >\n <div className={classNames(\"flex-center\", flexCentered)}>\n <div\n className={classNames(\"flex-v-center\"
|
|
1
|
+
{"version":3,"sources":["../../../../../../src/visualBuilder/components/Collab/Button/Button.tsx"],"sourcesContent":["/** @jsxImportSource preact */\nimport React from \"preact/compat\";\nimport { JSX } from \"preact\";\nimport classNames from \"classnames\";\nimport Icon, { IconProps } from \"../Icon/Icon\";\nimport AsyncLoader from \"../AsyncLoader/AsyncLoader\";\nimport { iconComponents } from \"../../icons/CollabIcons\";\nimport {\n collabStyles,\n flexAlignCenter,\n flexCentered,\n} from \"../../../collab.style\";\n\ntype IconName = keyof typeof iconComponents;\n\ninterface ButtonProps {\n buttonType?: \"primary\" | \"secondary\" | \"tertiary\" | \"destructive\";\n children?: React.ReactNode;\n className?: string;\n testId?: string;\n onClick?: JSX.MouseEventHandler<HTMLButtonElement | HTMLAnchorElement>;\n isLoading?: boolean;\n loadingColor?: \"primary\" | \"secondary\" | \"tertiary\" | \"destructive\";\n disabled?: boolean;\n type?: \"button\" | \"submit\" | \"reset\";\n style?: React.CSSProperties;\n href?: string;\n id?: string;\n size?: \"large\" | \"small\";\n icon?: IconName;\n iconProps?: Partial<IconProps>;\n iconAlignment?: \"left\" | \"right\" | \"both\";\n}\n\nconst Button: React.FC<ButtonProps> = ({\n buttonType = \"primary\",\n children,\n className = \"\",\n testId,\n onClick,\n isLoading,\n loadingColor = \"primary\",\n disabled = false,\n type = \"button\",\n style,\n href,\n id,\n size = \"large\",\n icon,\n iconProps,\n iconAlignment = \"left\",\n}) => {\n const Element = href ? \"a\" : \"button\";\n let nestedChildren: React.ReactNode =\n children && React.Children.toArray([children]);\n\n if (icon) {\n let iconChild = <Icon icon={icon} {...iconProps} />;\n\n switch (iconAlignment) {\n case \"left\":\n nestedChildren = React.Children.toArray([\n iconChild,\n nestedChildren,\n ]);\n break;\n case \"right\":\n nestedChildren = React.Children.toArray([\n nestedChildren,\n iconChild,\n ]);\n break;\n case \"both\":\n nestedChildren = React.Children.toArray([\n iconChild,\n nestedChildren,\n iconChild,\n ]);\n break;\n default:\n break;\n }\n }\n\n const combinedClassName = classNames(\n collabStyles()[\"collab-button--basestyle\"],\n collabStyles()[\"collab-button--type\"][buttonType],\n collabStyles()[\"collab-button--size\"][size],\n icon && collabStyles()[\"collab-button--icon-allignment\"][iconAlignment],\n disabled && collabStyles()[\"collab-button--disabled\"],\n isLoading && collabStyles()[\"collab-button--loading\"],\n className,\n\n `collab-button collab-button--${buttonType} collab-button--${size} ${\n icon ? `collab-button--icon-${iconAlignment}` : \"\"\n } ${disabled ? \"collab-button--disabled\" : \"\"}\n ${isLoading ? \"collab-button--loading\" : \"\"}`\n );\n\n // Ensure style is valid\n const validStyle = Object.fromEntries(\n Object.entries(style || {}).filter(([_, value]) => value != null)\n );\n\n return (\n <Element\n className={combinedClassName}\n id={id}\n onClick={onClick}\n type={type}\n style={validStyle as React.CSSProperties}\n disabled={disabled}\n href={href}\n data-testid={testId}\n >\n <div className={classNames(\"flex-center\", flexCentered)}>\n {isLoading && (\n <div\n className={classNames(\n collabStyles()[\"collab-button--loader--wrapper\"],\n \"collab-button--loader--wrapper\"\n )}\n >\n <AsyncLoader color={loadingColor} />\n </div>\n )}\n <div\n className={classNames(\n \"flex-v-center\",\n flexAlignCenter,\n {\n [`${collabStyles()[\"collab-button--size\"][\"regular\"]} collab-button--regular`]:\n size !== \"small\",\n },\n !isLoading\n ? `${collabStyles()[\"collab-button--visible\"]} collab-button--visible`\n : `${collabStyles()[\"collab-button--hidden\"]} collab-button--hidden`\n )}\n >\n {nestedChildren}\n </div>\n </div>\n </Element>\n );\n};\n\nexport default Button;\n"],"mappings":";;;AACA,OAAO,WAAW;AAElB,OAAO,gBAAgB;AACvB,OAAO,UAAyB;AAChC,OAAO,iBAAiB;AAExB;AAAA,EACI;AAAA,EACA;AAAA,EACA;AAAA,OACG;AA8CiB,cA0DZ,YA1DY;AAvBxB,IAAM,SAAgC,CAAC;AAAA,EACnC,aAAa;AAAA,EACb;AAAA,EACA,YAAY;AAAA,EACZ;AAAA,EACA;AAAA,EACA;AAAA,EACA,eAAe;AAAA,EACf,WAAW;AAAA,EACX,OAAO;AAAA,EACP;AAAA,EACA;AAAA,EACA;AAAA,EACA,OAAO;AAAA,EACP;AAAA,EACA;AAAA,EACA,gBAAgB;AACpB,MAAM;AACF,QAAM,UAAU,OAAO,MAAM;AAC7B,MAAI,iBACA,YAAY,MAAM,SAAS,QAAQ,CAAC,QAAQ,CAAC;AAEjD,MAAI,MAAM;AACN,QAAI,YAAY,oBAAC,QAAK,MAAa,GAAG,WAAW;AAEjD,YAAQ,eAAe;AAAA,MACnB,KAAK;AACD,yBAAiB,MAAM,SAAS,QAAQ;AAAA,UACpC;AAAA,UACA;AAAA,QACJ,CAAC;AACD;AAAA,MACJ,KAAK;AACD,yBAAiB,MAAM,SAAS,QAAQ;AAAA,UACpC;AAAA,UACA;AAAA,QACJ,CAAC;AACD;AAAA,MACJ,KAAK;AACD,yBAAiB,MAAM,SAAS,QAAQ;AAAA,UACpC;AAAA,UACA;AAAA,UACA;AAAA,QACJ,CAAC;AACD;AAAA,MACJ;AACI;AAAA,IACR;AAAA,EACJ;AAEA,QAAM,oBAAoB;AAAA,IACtB,aAAa,EAAE,0BAA0B;AAAA,IACzC,aAAa,EAAE,qBAAqB,EAAE,UAAU;AAAA,IAChD,aAAa,EAAE,qBAAqB,EAAE,IAAI;AAAA,IAC1C,QAAQ,aAAa,EAAE,gCAAgC,EAAE,aAAa;AAAA,IACtE,YAAY,aAAa,EAAE,yBAAyB;AAAA,IACpD,aAAa,aAAa,EAAE,wBAAwB;AAAA,IACpD;AAAA,IAEA,gCAAgC,UAAU,mBAAmB,IAAI,IAC7D,OAAO,uBAAuB,aAAa,KAAK,EACpD,IAAI,WAAW,4BAA4B,EAAE;AAAA,UAC3C,YAAY,2BAA2B,EAAE;AAAA,EAC/C;AAGA,QAAM,aAAa,OAAO;AAAA,IACtB,OAAO,QAAQ,SAAS,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,GAAG,KAAK,MAAM,SAAS,IAAI;AAAA,EACpE;AAEA,SACI;AAAA,IAAC;AAAA;AAAA,MACG,WAAW;AAAA,MACX;AAAA,MACA;AAAA,MACA;AAAA,MACA,OAAO;AAAA,MACP;AAAA,MACA;AAAA,MACA,eAAa;AAAA,MAEb,+BAAC,SAAI,WAAW,WAAW,eAAe,YAAY,GACjD;AAAA,qBACG;AAAA,UAAC;AAAA;AAAA,YACG,WAAW;AAAA,cACP,aAAa,EAAE,gCAAgC;AAAA,cAC/C;AAAA,YACJ;AAAA,YAEA,8BAAC,eAAY,OAAO,cAAc;AAAA;AAAA,QACtC;AAAA,QAEJ;AAAA,UAAC;AAAA;AAAA,YACG,WAAW;AAAA,cACP;AAAA,cACA;AAAA,cACA;AAAA,gBACI,CAAC,GAAG,aAAa,EAAE,qBAAqB,EAAE,SAAS,CAAC,yBAAyB,GACzE,SAAS;AAAA,cACjB;AAAA,cACA,CAAC,YACK,GAAG,aAAa,EAAE,wBAAwB,CAAC,4BAC3C,GAAG,aAAa,EAAE,uBAAuB,CAAC;AAAA,YACpD;AAAA,YAEC;AAAA;AAAA,QACL;AAAA,SACJ;AAAA;AAAA,EACJ;AAER;AAEA,IAAO,iBAAQ;","names":[]}
|
|
@@ -34,6 +34,7 @@ __export(CollabIndicator_exports, {
|
|
|
34
34
|
});
|
|
35
35
|
module.exports = __toCommonJS(CollabIndicator_exports);
|
|
36
36
|
var import_collab = require("../../collab.style.cjs");
|
|
37
|
+
var import_hooks = require("preact/hooks");
|
|
37
38
|
var import_classnames = __toESM(require("classnames"), 1);
|
|
38
39
|
var import_ThreadPopup = __toESM(require("./ThreadPopup/index.cjs"), 1);
|
|
39
40
|
var import_configManager = __toESM(require("../../../configManager/configManager.cjs"), 1);
|
|
@@ -43,9 +44,15 @@ var import_generateThread = require("../../generators/generateThread.cjs");
|
|
|
43
44
|
var import_CollabIcons = require("../icons/CollabIcons.cjs");
|
|
44
45
|
var import_jsx_runtime = require("preact/jsx-runtime");
|
|
45
46
|
var CollabIndicator = (props) => {
|
|
46
|
-
var _a;
|
|
47
|
+
var _a, _b;
|
|
47
48
|
const config = import_configManager.default.get();
|
|
48
|
-
const inviteMetadata = (
|
|
49
|
+
const [inviteMetadata, setInviteMetadata] = (0, import_hooks.useState)(
|
|
50
|
+
(_a = config == null ? void 0 : config.collab) == null ? void 0 : _a.inviteMetadata
|
|
51
|
+
);
|
|
52
|
+
(0, import_hooks.useEffect)(() => {
|
|
53
|
+
var _a2;
|
|
54
|
+
setInviteMetadata((_a2 = config == null ? void 0 : config.collab) == null ? void 0 : _a2.inviteMetadata);
|
|
55
|
+
}, [(_b = config == null ? void 0 : config.collab) == null ? void 0 : _b.inviteMetadata]);
|
|
49
56
|
const {
|
|
50
57
|
buttonRef,
|
|
51
58
|
popupRef,
|
|
@@ -68,9 +75,9 @@ var CollabIndicator = (props) => {
|
|
|
68
75
|
deleteThread
|
|
69
76
|
} = (0, import_useCollabOperations.useCollabOperations)();
|
|
70
77
|
const handleClose = (isResolved = false) => {
|
|
71
|
-
var _a2,
|
|
78
|
+
var _a2, _b2, _c;
|
|
72
79
|
if (isResolved) {
|
|
73
|
-
(
|
|
80
|
+
(_b2 = (_a2 = buttonRef.current) == null ? void 0 : _a2.closest("div[field-path]")) == null ? void 0 : _b2.remove();
|
|
74
81
|
}
|
|
75
82
|
(0, import_generateThread.handleEmptyThreads)();
|
|
76
83
|
setShowPopup(false);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/visualBuilder/components/Collab/CollabIndicator.tsx"],"sourcesContent":["/** @jsxImportSource preact */\nimport { collabStyles } from \"../../collab.style\";\nimport classNames from \"classnames\";\nimport React from \"preact/compat\";\nimport ThreadPopup from \"./ThreadPopup\";\nimport Config from \"../../../configManager/configManager\";\nimport { IActiveThread, IInviteMetadata } from \"../../types/collab.types\";\nimport { useCollabIndicator } from \"../../hooks/useCollabIndicator\";\nimport { useCollabOperations } from \"../../hooks/useCollabOperations\";\nimport { handleEmptyThreads } from \"../../generators/generateThread\";\nimport { iconComponents } from \"../icons/CollabIcons\";\nexport interface ICollabIndicator {\n newThread?: boolean;\n activeThread?: IActiveThread;\n}\n\nconst CollabIndicator: React.FC<ICollabIndicator> = (props) => {\n const config = Config.get();\n const inviteMetadata
|
|
1
|
+
{"version":3,"sources":["../../../../../src/visualBuilder/components/Collab/CollabIndicator.tsx"],"sourcesContent":["/** @jsxImportSource preact */\nimport { collabStyles } from \"../../collab.style\";\nimport { useState, useEffect } from \"preact/hooks\";\nimport classNames from \"classnames\";\nimport React from \"preact/compat\";\nimport ThreadPopup from \"./ThreadPopup\";\nimport Config from \"../../../configManager/configManager\";\nimport { IActiveThread, IInviteMetadata } from \"../../types/collab.types\";\nimport { useCollabIndicator } from \"../../hooks/useCollabIndicator\";\nimport { useCollabOperations } from \"../../hooks/useCollabOperations\";\nimport { handleEmptyThreads } from \"../../generators/generateThread\";\nimport { iconComponents } from \"../icons/CollabIcons\";\nexport interface ICollabIndicator {\n newThread?: boolean;\n activeThread?: IActiveThread;\n}\n\nconst CollabIndicator: React.FC<ICollabIndicator> = (props) => {\n const config = Config.get();\n const [inviteMetadata, setInviteMetadata] = useState<IInviteMetadata>(\n config?.collab?.inviteMetadata\n );\n\n useEffect(() => {\n setInviteMetadata(config?.collab?.inviteMetadata);\n }, [config?.collab?.inviteMetadata]);\n\n const {\n buttonRef,\n popupRef,\n showPopup,\n setShowPopup,\n activeThread,\n setActiveThread,\n togglePopup,\n } = useCollabIndicator({\n newThread: props.newThread ?? false,\n thread: props.activeThread || { _id: \"new\" },\n });\n\n const {\n createComment,\n editComment,\n deleteComment,\n resolveThread,\n fetchComments,\n createNewThread,\n deleteThread,\n } = useCollabOperations();\n\n const handleClose = (isResolved: boolean = false) => {\n if (isResolved) {\n buttonRef.current?.closest(\"div[field-path]\")?.remove();\n }\n handleEmptyThreads();\n setShowPopup(false);\n\n if (config?.collab?.isFeedbackMode === false) {\n Config.set(\"collab.isFeedbackMode\", true);\n }\n };\n const IconComponent = iconComponents[\"Indicator\"];\n\n return (\n <>\n <button\n ref={buttonRef}\n data-testid=\"collab-indicator\"\n className={classNames(\n \"collab-indicator\",\n collabStyles()[\"collab-indicator\"]\n )}\n onClick={togglePopup}\n >\n <IconComponent active={!showPopup} />\n </button>\n {showPopup && (\n <div\n ref={popupRef}\n className={classNames(\n \"collab-popup\",\n collabStyles()[\"collab-popup\"]\n )}\n data-testid=\"collab-popup\"\n >\n <ThreadPopup\n onCreateComment={createComment}\n onEditComment={editComment}\n onDeleteComment={deleteComment}\n onClose={handleClose}\n onResolve={resolveThread}\n inviteMetadata={inviteMetadata}\n loadMoreMessages={fetchComments}\n activeThread={activeThread}\n setActiveThread={setActiveThread}\n onDeleteThread={deleteThread}\n createNewThread={() =>\n createNewThread(buttonRef, inviteMetadata)\n }\n />\n </div>\n )}\n </>\n );\n};\n\nexport default CollabIndicator;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,oBAA6B;AAC7B,mBAAoC;AACpC,wBAAuB;AAEvB,yBAAwB;AACxB,2BAAmB;AAEnB,gCAAmC;AACnC,iCAAoC;AACpC,4BAAmC;AACnC,yBAA+B;AAqDvB;AA/CR,IAAM,kBAA8C,CAAC,UAAU;AAjB/D;AAkBI,QAAM,SAAS,qBAAAA,QAAO,IAAI;AAC1B,QAAM,CAAC,gBAAgB,iBAAiB,QAAI;AAAA,KACxC,sCAAQ,WAAR,mBAAgB;AAAA,EACpB;AAEA,8BAAU,MAAM;AAvBpB,QAAAC;AAwBQ,uBAAkBA,MAAA,iCAAQ,WAAR,gBAAAA,IAAgB,cAAc;AAAA,EACpD,GAAG,EAAC,sCAAQ,WAAR,mBAAgB,cAAc,CAAC;AAEnC,QAAM;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACJ,QAAI,8CAAmB;AAAA,IACnB,WAAW,MAAM,aAAa;AAAA,IAC9B,QAAQ,MAAM,gBAAgB,EAAE,KAAK,MAAM;AAAA,EAC/C,CAAC;AAED,QAAM;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACJ,QAAI,gDAAoB;AAExB,QAAM,cAAc,CAAC,aAAsB,UAAU;AAlDzD,QAAAA,KAAAC,KAAA;AAmDQ,QAAI,YAAY;AACZ,OAAAA,OAAAD,MAAA,UAAU,YAAV,gBAAAA,IAAmB,QAAQ,uBAA3B,gBAAAC,IAA+C;AAAA,IACnD;AACA,kDAAmB;AACnB,iBAAa,KAAK;AAElB,UAAI,sCAAQ,WAAR,mBAAgB,oBAAmB,OAAO;AAC1C,2BAAAF,QAAO,IAAI,yBAAyB,IAAI;AAAA,IAC5C;AAAA,EACJ;AACA,QAAM,gBAAgB,kCAAe,WAAW;AAEhD,SACI,4EACI;AAAA;AAAA,MAAC;AAAA;AAAA,QACG,KAAK;AAAA,QACL,eAAY;AAAA,QACZ,eAAW,kBAAAG;AAAA,UACP;AAAA,cACA,4BAAa,EAAE,kBAAkB;AAAA,QACrC;AAAA,QACA,SAAS;AAAA,QAET,sDAAC,iBAAc,QAAQ,CAAC,WAAW;AAAA;AAAA,IACvC;AAAA,IACC,aACG;AAAA,MAAC;AAAA;AAAA,QACG,KAAK;AAAA,QACL,eAAW,kBAAAA;AAAA,UACP;AAAA,cACA,4BAAa,EAAE,cAAc;AAAA,QACjC;AAAA,QACA,eAAY;AAAA,QAEZ;AAAA,UAAC,mBAAAC;AAAA,UAAA;AAAA,YACG,iBAAiB;AAAA,YACjB,eAAe;AAAA,YACf,iBAAiB;AAAA,YACjB,SAAS;AAAA,YACT,WAAW;AAAA,YACX;AAAA,YACA,kBAAkB;AAAA,YAClB;AAAA,YACA;AAAA,YACA,gBAAgB;AAAA,YAChB,iBAAiB,MACb,gBAAgB,WAAW,cAAc;AAAA;AAAA,QAEjD;AAAA;AAAA,IACJ;AAAA,KAER;AAER;AAEA,IAAO,0BAAQ;","names":["Config","_a","_b","classNames","ThreadPopup"]}
|
|
@@ -2,6 +2,7 @@ import "../../../chunk-5WRI5ZAA.js";
|
|
|
2
2
|
|
|
3
3
|
// src/visualBuilder/components/Collab/CollabIndicator.tsx
|
|
4
4
|
import { collabStyles } from "../../collab.style.js";
|
|
5
|
+
import { useState, useEffect } from "preact/hooks";
|
|
5
6
|
import classNames from "classnames";
|
|
6
7
|
import ThreadPopup from "./ThreadPopup/index.js";
|
|
7
8
|
import Config from "../../../configManager/configManager.js";
|
|
@@ -11,9 +12,15 @@ import { handleEmptyThreads } from "../../generators/generateThread.js";
|
|
|
11
12
|
import { iconComponents } from "../icons/CollabIcons.js";
|
|
12
13
|
import { Fragment, jsx, jsxs } from "preact/jsx-runtime";
|
|
13
14
|
var CollabIndicator = (props) => {
|
|
14
|
-
var _a;
|
|
15
|
+
var _a, _b;
|
|
15
16
|
const config = Config.get();
|
|
16
|
-
const inviteMetadata = (
|
|
17
|
+
const [inviteMetadata, setInviteMetadata] = useState(
|
|
18
|
+
(_a = config == null ? void 0 : config.collab) == null ? void 0 : _a.inviteMetadata
|
|
19
|
+
);
|
|
20
|
+
useEffect(() => {
|
|
21
|
+
var _a2;
|
|
22
|
+
setInviteMetadata((_a2 = config == null ? void 0 : config.collab) == null ? void 0 : _a2.inviteMetadata);
|
|
23
|
+
}, [(_b = config == null ? void 0 : config.collab) == null ? void 0 : _b.inviteMetadata]);
|
|
17
24
|
const {
|
|
18
25
|
buttonRef,
|
|
19
26
|
popupRef,
|
|
@@ -36,9 +43,9 @@ var CollabIndicator = (props) => {
|
|
|
36
43
|
deleteThread
|
|
37
44
|
} = useCollabOperations();
|
|
38
45
|
const handleClose = (isResolved = false) => {
|
|
39
|
-
var _a2,
|
|
46
|
+
var _a2, _b2, _c;
|
|
40
47
|
if (isResolved) {
|
|
41
|
-
(
|
|
48
|
+
(_b2 = (_a2 = buttonRef.current) == null ? void 0 : _a2.closest("div[field-path]")) == null ? void 0 : _b2.remove();
|
|
42
49
|
}
|
|
43
50
|
handleEmptyThreads();
|
|
44
51
|
setShowPopup(false);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/visualBuilder/components/Collab/CollabIndicator.tsx"],"sourcesContent":["/** @jsxImportSource preact */\nimport { collabStyles } from \"../../collab.style\";\nimport classNames from \"classnames\";\nimport React from \"preact/compat\";\nimport ThreadPopup from \"./ThreadPopup\";\nimport Config from \"../../../configManager/configManager\";\nimport { IActiveThread, IInviteMetadata } from \"../../types/collab.types\";\nimport { useCollabIndicator } from \"../../hooks/useCollabIndicator\";\nimport { useCollabOperations } from \"../../hooks/useCollabOperations\";\nimport { handleEmptyThreads } from \"../../generators/generateThread\";\nimport { iconComponents } from \"../icons/CollabIcons\";\nexport interface ICollabIndicator {\n newThread?: boolean;\n activeThread?: IActiveThread;\n}\n\nconst CollabIndicator: React.FC<ICollabIndicator> = (props) => {\n const config = Config.get();\n const inviteMetadata
|
|
1
|
+
{"version":3,"sources":["../../../../../src/visualBuilder/components/Collab/CollabIndicator.tsx"],"sourcesContent":["/** @jsxImportSource preact */\nimport { collabStyles } from \"../../collab.style\";\nimport { useState, useEffect } from \"preact/hooks\";\nimport classNames from \"classnames\";\nimport React from \"preact/compat\";\nimport ThreadPopup from \"./ThreadPopup\";\nimport Config from \"../../../configManager/configManager\";\nimport { IActiveThread, IInviteMetadata } from \"../../types/collab.types\";\nimport { useCollabIndicator } from \"../../hooks/useCollabIndicator\";\nimport { useCollabOperations } from \"../../hooks/useCollabOperations\";\nimport { handleEmptyThreads } from \"../../generators/generateThread\";\nimport { iconComponents } from \"../icons/CollabIcons\";\nexport interface ICollabIndicator {\n newThread?: boolean;\n activeThread?: IActiveThread;\n}\n\nconst CollabIndicator: React.FC<ICollabIndicator> = (props) => {\n const config = Config.get();\n const [inviteMetadata, setInviteMetadata] = useState<IInviteMetadata>(\n config?.collab?.inviteMetadata\n );\n\n useEffect(() => {\n setInviteMetadata(config?.collab?.inviteMetadata);\n }, [config?.collab?.inviteMetadata]);\n\n const {\n buttonRef,\n popupRef,\n showPopup,\n setShowPopup,\n activeThread,\n setActiveThread,\n togglePopup,\n } = useCollabIndicator({\n newThread: props.newThread ?? false,\n thread: props.activeThread || { _id: \"new\" },\n });\n\n const {\n createComment,\n editComment,\n deleteComment,\n resolveThread,\n fetchComments,\n createNewThread,\n deleteThread,\n } = useCollabOperations();\n\n const handleClose = (isResolved: boolean = false) => {\n if (isResolved) {\n buttonRef.current?.closest(\"div[field-path]\")?.remove();\n }\n handleEmptyThreads();\n setShowPopup(false);\n\n if (config?.collab?.isFeedbackMode === false) {\n Config.set(\"collab.isFeedbackMode\", true);\n }\n };\n const IconComponent = iconComponents[\"Indicator\"];\n\n return (\n <>\n <button\n ref={buttonRef}\n data-testid=\"collab-indicator\"\n className={classNames(\n \"collab-indicator\",\n collabStyles()[\"collab-indicator\"]\n )}\n onClick={togglePopup}\n >\n <IconComponent active={!showPopup} />\n </button>\n {showPopup && (\n <div\n ref={popupRef}\n className={classNames(\n \"collab-popup\",\n collabStyles()[\"collab-popup\"]\n )}\n data-testid=\"collab-popup\"\n >\n <ThreadPopup\n onCreateComment={createComment}\n onEditComment={editComment}\n onDeleteComment={deleteComment}\n onClose={handleClose}\n onResolve={resolveThread}\n inviteMetadata={inviteMetadata}\n loadMoreMessages={fetchComments}\n activeThread={activeThread}\n setActiveThread={setActiveThread}\n onDeleteThread={deleteThread}\n createNewThread={() =>\n createNewThread(buttonRef, inviteMetadata)\n }\n />\n </div>\n )}\n </>\n );\n};\n\nexport default CollabIndicator;\n"],"mappings":";;;AACA,SAAS,oBAAoB;AAC7B,SAAS,UAAU,iBAAiB;AACpC,OAAO,gBAAgB;AAEvB,OAAO,iBAAiB;AACxB,OAAO,YAAY;AAEnB,SAAS,0BAA0B;AACnC,SAAS,2BAA2B;AACpC,SAAS,0BAA0B;AACnC,SAAS,sBAAsB;AAqDvB,mBAUQ,KAVR;AA/CR,IAAM,kBAA8C,CAAC,UAAU;AAjB/D;AAkBI,QAAM,SAAS,OAAO,IAAI;AAC1B,QAAM,CAAC,gBAAgB,iBAAiB,IAAI;AAAA,KACxC,sCAAQ,WAAR,mBAAgB;AAAA,EACpB;AAEA,YAAU,MAAM;AAvBpB,QAAAA;AAwBQ,uBAAkBA,MAAA,iCAAQ,WAAR,gBAAAA,IAAgB,cAAc;AAAA,EACpD,GAAG,EAAC,sCAAQ,WAAR,mBAAgB,cAAc,CAAC;AAEnC,QAAM;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACJ,IAAI,mBAAmB;AAAA,IACnB,WAAW,MAAM,aAAa;AAAA,IAC9B,QAAQ,MAAM,gBAAgB,EAAE,KAAK,MAAM;AAAA,EAC/C,CAAC;AAED,QAAM;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACJ,IAAI,oBAAoB;AAExB,QAAM,cAAc,CAAC,aAAsB,UAAU;AAlDzD,QAAAA,KAAAC,KAAA;AAmDQ,QAAI,YAAY;AACZ,OAAAA,OAAAD,MAAA,UAAU,YAAV,gBAAAA,IAAmB,QAAQ,uBAA3B,gBAAAC,IAA+C;AAAA,IACnD;AACA,uBAAmB;AACnB,iBAAa,KAAK;AAElB,UAAI,sCAAQ,WAAR,mBAAgB,oBAAmB,OAAO;AAC1C,aAAO,IAAI,yBAAyB,IAAI;AAAA,IAC5C;AAAA,EACJ;AACA,QAAM,gBAAgB,eAAe,WAAW;AAEhD,SACI,iCACI;AAAA;AAAA,MAAC;AAAA;AAAA,QACG,KAAK;AAAA,QACL,eAAY;AAAA,QACZ,WAAW;AAAA,UACP;AAAA,UACA,aAAa,EAAE,kBAAkB;AAAA,QACrC;AAAA,QACA,SAAS;AAAA,QAET,8BAAC,iBAAc,QAAQ,CAAC,WAAW;AAAA;AAAA,IACvC;AAAA,IACC,aACG;AAAA,MAAC;AAAA;AAAA,QACG,KAAK;AAAA,QACL,WAAW;AAAA,UACP;AAAA,UACA,aAAa,EAAE,cAAc;AAAA,QACjC;AAAA,QACA,eAAY;AAAA,QAEZ;AAAA,UAAC;AAAA;AAAA,YACG,iBAAiB;AAAA,YACjB,eAAe;AAAA,YACf,iBAAiB;AAAA,YACjB,SAAS;AAAA,YACT,WAAW;AAAA,YACX;AAAA,YACA,kBAAkB;AAAA,YAClB;AAAA,YACA;AAAA,YACA,gBAAgB;AAAA,YAChB,iBAAiB,MACb,gBAAgB,WAAW,cAAc;AAAA;AAAA,QAEjD;AAAA;AAAA,IACJ;AAAA,KAER;AAER;AAEA,IAAO,0BAAQ;","names":["_a","_b"]}
|
|
@@ -43,9 +43,14 @@ var IconWrapper = ({
|
|
|
43
43
|
className,
|
|
44
44
|
onClick,
|
|
45
45
|
testId,
|
|
46
|
+
disabled,
|
|
46
47
|
...otherProps
|
|
47
48
|
}) => {
|
|
48
49
|
const IconComponent = import_CollabIcons.iconComponents[icon];
|
|
50
|
+
const handleClick = (e) => {
|
|
51
|
+
if (disabled) return;
|
|
52
|
+
onClick == null ? void 0 : onClick(e);
|
|
53
|
+
};
|
|
49
54
|
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
50
55
|
"div",
|
|
51
56
|
{
|
|
@@ -53,7 +58,7 @@ var IconWrapper = ({
|
|
|
53
58
|
"collab-icon-wrapper",
|
|
54
59
|
(0, import_collab.collabStyles)()["collab-icon-wrapper"]
|
|
55
60
|
),
|
|
56
|
-
onClick,
|
|
61
|
+
onClick: handleClick,
|
|
57
62
|
"data-testid": testId,
|
|
58
63
|
...otherProps,
|
|
59
64
|
children: IconComponent ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../../src/visualBuilder/components/Collab/Icon/Icon.tsx"],"sourcesContent":["/** @jsxImportSource preact */\nimport React from \"preact/compat\";\nimport { JSX } from \"preact\";\nimport Tooltip from \"../Tooltip/Tooltip\";\nimport { iconComponents } from \"../../icons/CollabIcons\";\nimport classNames from \"classnames\";\nimport { collabStyles } from \"../../../collab.style\";\n\ntype IconName = keyof typeof iconComponents;\n\nexport interface IconProps {\n icon: IconName;\n tooltipContent?: string;\n className?: string;\n withTooltip?: boolean;\n onClick?: JSX.MouseEventHandler<HTMLDivElement>;\n testId?: string;\n}\n\nconst IconWrapper = ({\n icon,\n className,\n onClick,\n testId, \n ...otherProps\n}: Omit<IconProps, \"withTooltip\" | \"tooltipContent\">) => {\n const IconComponent = iconComponents[icon];\n\n return (\n <div\n className={classNames(\n \"collab-icon-wrapper\",\n collabStyles()[\"collab-icon-wrapper\"]\n )}\n onClick={
|
|
1
|
+
{"version":3,"sources":["../../../../../../src/visualBuilder/components/Collab/Icon/Icon.tsx"],"sourcesContent":["/** @jsxImportSource preact */\nimport React from \"preact/compat\";\nimport { JSX } from \"preact\";\nimport Tooltip from \"../Tooltip/Tooltip\";\nimport { iconComponents } from \"../../icons/CollabIcons\";\nimport classNames from \"classnames\";\nimport { collabStyles } from \"../../../collab.style\";\n\ntype IconName = keyof typeof iconComponents;\n\nexport interface IconProps {\n icon: IconName;\n tooltipContent?: string;\n className?: string;\n withTooltip?: boolean;\n onClick?: JSX.MouseEventHandler<HTMLDivElement>;\n testId?: string;\n disabled?: boolean; \n}\n\nconst IconWrapper = ({\n icon,\n className,\n onClick,\n testId, \n disabled,\n ...otherProps\n}: Omit<IconProps, \"withTooltip\" | \"tooltipContent\">) => {\n const IconComponent = iconComponents[icon];\n\n const handleClick = (e: JSX.TargetedMouseEvent<HTMLDivElement>) => {\n if (disabled) return; \n onClick?.(e);\n };\n\n\n return (\n <div\n className={classNames(\n \"collab-icon-wrapper\",\n collabStyles()[\"collab-icon-wrapper\"]\n )}\n onClick={handleClick}\n data-testid={testId}\n {...otherProps}\n >\n {IconComponent ? (\n <IconComponent\n className={classNames(\n \"collab-icon\",\n collabStyles()[\"collab-icon\"],\n className\n )}\n />\n ) : null}\n </div>\n );\n};\n\nconst withTooltip = (Component: typeof IconWrapper) => ({\n withTooltip = false,\n tooltipContent = \"\",\n testId = \"collab-icon\",\n ...props\n}: IconProps) => {\n return withTooltip && tooltipContent ? (\n <div data-testid={testId}>\n <Tooltip content={tooltipContent} position=\"bottom\" testId=\"collab-icon-tooltip\">\n <Component {...props} />\n </Tooltip>\n </div>\n ) : (\n \n <Component {...props} testId={testId} />\n );\n};\n\nconst Icon = withTooltip(IconWrapper);\n\nexport default Icon;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA,qBAAoB;AACpB,yBAA+B;AAC/B,wBAAuB;AACvB,oBAA6B;AAyCb;AA3BhB,IAAM,cAAc,CAAC;AAAA,EACjB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACP,MAAyD;AACrD,QAAM,gBAAgB,kCAAe,IAAI;AAEzC,QAAM,cAAc,CAAC,MAA8C;AAC/D,QAAI,SAAU;AACd,uCAAU;AAAA,EACd;AAGA,SACI;AAAA,IAAC;AAAA;AAAA,MACG,eAAW,kBAAAA;AAAA,QACP;AAAA,YACA,4BAAa,EAAE,qBAAqB;AAAA,MACxC;AAAA,MACA,SAAS;AAAA,MACT,eAAa;AAAA,MACZ,GAAG;AAAA,MAEH,0BACG;AAAA,QAAC;AAAA;AAAA,UACG,eAAW,kBAAAA;AAAA,YACP;AAAA,gBACA,4BAAa,EAAE,aAAa;AAAA,YAC5B;AAAA,UACJ;AAAA;AAAA,MACJ,IACA;AAAA;AAAA,EACR;AAER;AAEA,IAAM,cAAc,CAAC,cAAkC,CAAC;AAAA,EACpD,aAAAC,eAAc;AAAA,EACd,iBAAiB;AAAA,EACjB,SAAS;AAAA,EACT,GAAG;AACP,MAAiB;AACb,SAAOA,gBAAe,iBAClB,4CAAC,SAAI,eAAa,QACd,sDAAC,eAAAC,SAAA,EAAQ,SAAS,gBAAgB,UAAS,UAAS,QAAO,uBACvD,sDAAC,aAAW,GAAG,OAAQ,GAC3B,GACJ,IAGA,4CAAC,aAAW,GAAG,OAAO,QAAgB;AAE9C;AAEA,IAAM,OAAO,YAAY,WAAW;AAEpC,IAAO,eAAQ;","names":["classNames","withTooltip","Tooltip"]}
|
|
@@ -11,9 +11,14 @@ var IconWrapper = ({
|
|
|
11
11
|
className,
|
|
12
12
|
onClick,
|
|
13
13
|
testId,
|
|
14
|
+
disabled,
|
|
14
15
|
...otherProps
|
|
15
16
|
}) => {
|
|
16
17
|
const IconComponent = iconComponents[icon];
|
|
18
|
+
const handleClick = (e) => {
|
|
19
|
+
if (disabled) return;
|
|
20
|
+
onClick == null ? void 0 : onClick(e);
|
|
21
|
+
};
|
|
17
22
|
return /* @__PURE__ */ jsx(
|
|
18
23
|
"div",
|
|
19
24
|
{
|
|
@@ -21,7 +26,7 @@ var IconWrapper = ({
|
|
|
21
26
|
"collab-icon-wrapper",
|
|
22
27
|
collabStyles()["collab-icon-wrapper"]
|
|
23
28
|
),
|
|
24
|
-
onClick,
|
|
29
|
+
onClick: handleClick,
|
|
25
30
|
"data-testid": testId,
|
|
26
31
|
...otherProps,
|
|
27
32
|
children: IconComponent ? /* @__PURE__ */ jsx(
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../../src/visualBuilder/components/Collab/Icon/Icon.tsx"],"sourcesContent":["/** @jsxImportSource preact */\nimport React from \"preact/compat\";\nimport { JSX } from \"preact\";\nimport Tooltip from \"../Tooltip/Tooltip\";\nimport { iconComponents } from \"../../icons/CollabIcons\";\nimport classNames from \"classnames\";\nimport { collabStyles } from \"../../../collab.style\";\n\ntype IconName = keyof typeof iconComponents;\n\nexport interface IconProps {\n icon: IconName;\n tooltipContent?: string;\n className?: string;\n withTooltip?: boolean;\n onClick?: JSX.MouseEventHandler<HTMLDivElement>;\n testId?: string;\n}\n\nconst IconWrapper = ({\n icon,\n className,\n onClick,\n testId, \n ...otherProps\n}: Omit<IconProps, \"withTooltip\" | \"tooltipContent\">) => {\n const IconComponent = iconComponents[icon];\n\n return (\n <div\n className={classNames(\n \"collab-icon-wrapper\",\n collabStyles()[\"collab-icon-wrapper\"]\n )}\n onClick={
|
|
1
|
+
{"version":3,"sources":["../../../../../../src/visualBuilder/components/Collab/Icon/Icon.tsx"],"sourcesContent":["/** @jsxImportSource preact */\nimport React from \"preact/compat\";\nimport { JSX } from \"preact\";\nimport Tooltip from \"../Tooltip/Tooltip\";\nimport { iconComponents } from \"../../icons/CollabIcons\";\nimport classNames from \"classnames\";\nimport { collabStyles } from \"../../../collab.style\";\n\ntype IconName = keyof typeof iconComponents;\n\nexport interface IconProps {\n icon: IconName;\n tooltipContent?: string;\n className?: string;\n withTooltip?: boolean;\n onClick?: JSX.MouseEventHandler<HTMLDivElement>;\n testId?: string;\n disabled?: boolean; \n}\n\nconst IconWrapper = ({\n icon,\n className,\n onClick,\n testId, \n disabled,\n ...otherProps\n}: Omit<IconProps, \"withTooltip\" | \"tooltipContent\">) => {\n const IconComponent = iconComponents[icon];\n\n const handleClick = (e: JSX.TargetedMouseEvent<HTMLDivElement>) => {\n if (disabled) return; \n onClick?.(e);\n };\n\n\n return (\n <div\n className={classNames(\n \"collab-icon-wrapper\",\n collabStyles()[\"collab-icon-wrapper\"]\n )}\n onClick={handleClick}\n data-testid={testId}\n {...otherProps}\n >\n {IconComponent ? (\n <IconComponent\n className={classNames(\n \"collab-icon\",\n collabStyles()[\"collab-icon\"],\n className\n )}\n />\n ) : null}\n </div>\n );\n};\n\nconst withTooltip = (Component: typeof IconWrapper) => ({\n withTooltip = false,\n tooltipContent = \"\",\n testId = \"collab-icon\",\n ...props\n}: IconProps) => {\n return withTooltip && tooltipContent ? (\n <div data-testid={testId}>\n <Tooltip content={tooltipContent} position=\"bottom\" testId=\"collab-icon-tooltip\">\n <Component {...props} />\n </Tooltip>\n </div>\n ) : (\n \n <Component {...props} testId={testId} />\n );\n};\n\nconst Icon = withTooltip(IconWrapper);\n\nexport default Icon;\n"],"mappings":";;;AAGA,OAAO,aAAa;AACpB,SAAS,sBAAsB;AAC/B,OAAO,gBAAgB;AACvB,SAAS,oBAAoB;AAyCb;AA3BhB,IAAM,cAAc,CAAC;AAAA,EACjB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACP,MAAyD;AACrD,QAAM,gBAAgB,eAAe,IAAI;AAEzC,QAAM,cAAc,CAAC,MAA8C;AAC/D,QAAI,SAAU;AACd,uCAAU;AAAA,EACd;AAGA,SACI;AAAA,IAAC;AAAA;AAAA,MACG,WAAW;AAAA,QACP;AAAA,QACA,aAAa,EAAE,qBAAqB;AAAA,MACxC;AAAA,MACA,SAAS;AAAA,MACT,eAAa;AAAA,MACZ,GAAG;AAAA,MAEH,0BACG;AAAA,QAAC;AAAA;AAAA,UACG,WAAW;AAAA,YACP;AAAA,YACA,aAAa,EAAE,aAAa;AAAA,YAC5B;AAAA,UACJ;AAAA;AAAA,MACJ,IACA;AAAA;AAAA,EACR;AAER;AAEA,IAAM,cAAc,CAAC,cAAkC,CAAC;AAAA,EACpD,aAAAA,eAAc;AAAA,EACd,iBAAiB;AAAA,EACjB,SAAS;AAAA,EACT,GAAG;AACP,MAAiB;AACb,SAAOA,gBAAe,iBAClB,oBAAC,SAAI,eAAa,QACd,8BAAC,WAAQ,SAAS,gBAAgB,UAAS,UAAS,QAAO,uBACvD,8BAAC,aAAW,GAAG,OAAQ,GAC3B,GACJ,IAGA,oBAAC,aAAW,GAAG,OAAO,QAAgB;AAE9C;AAEA,IAAM,OAAO,YAAY,WAAW;AAEpC,IAAO,eAAQ;","names":["withTooltip"]}
|
|
@@ -46,6 +46,7 @@ var CommentActionBar = ({
|
|
|
46
46
|
commentUID
|
|
47
47
|
}) => {
|
|
48
48
|
const { setThreadState, onDeleteComment, activeThread, onDeleteThread } = (0, import_hooks.useContext)(import_ContextProvider.ThreadProvider);
|
|
49
|
+
const [isDeleting, setIsDeleting] = (0, import_hooks.useState)(false);
|
|
49
50
|
const setEditComment = (uid) => {
|
|
50
51
|
setThreadState((prevState) => ({
|
|
51
52
|
...prevState,
|
|
@@ -61,9 +62,10 @@ var CommentActionBar = ({
|
|
|
61
62
|
}
|
|
62
63
|
};
|
|
63
64
|
const handleCommentDelete = async () => {
|
|
64
|
-
if (!commentUID) {
|
|
65
|
+
if (!commentUID || isDeleting) {
|
|
65
66
|
return;
|
|
66
67
|
}
|
|
68
|
+
setIsDeleting(true);
|
|
67
69
|
try {
|
|
68
70
|
const deleteResponse = await onDeleteComment({
|
|
69
71
|
threadUid: activeThread == null ? void 0 : activeThread._id,
|
|
@@ -83,6 +85,8 @@ var CommentActionBar = ({
|
|
|
83
85
|
};
|
|
84
86
|
});
|
|
85
87
|
} catch (error) {
|
|
88
|
+
} finally {
|
|
89
|
+
setIsDeleting(false);
|
|
86
90
|
}
|
|
87
91
|
};
|
|
88
92
|
if (mode === "edit" && commentUID) {
|
|
@@ -105,7 +109,7 @@ var CommentActionBar = ({
|
|
|
105
109
|
}
|
|
106
110
|
);
|
|
107
111
|
}
|
|
108
|
-
if (commentUser.uid !== currentUser.uid || !commentUID) {
|
|
112
|
+
if ((commentUser == null ? void 0 : commentUser.uid) !== (currentUser == null ? void 0 : currentUser.uid) || !commentUID) {
|
|
109
113
|
return null;
|
|
110
114
|
}
|
|
111
115
|
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
|
|
@@ -134,7 +138,8 @@ var CommentActionBar = ({
|
|
|
134
138
|
tooltipContent: "Delete",
|
|
135
139
|
withTooltip: true,
|
|
136
140
|
testId: "collab-thread-comment-delete",
|
|
137
|
-
onClick: handleCommentDelete
|
|
141
|
+
onClick: handleCommentDelete,
|
|
142
|
+
disabled: isDeleting
|
|
138
143
|
}
|
|
139
144
|
)
|
|
140
145
|
]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../../src/visualBuilder/components/Collab/ThreadPopup/CommentActionBar.tsx"],"sourcesContent":["/** @jsxImportSource preact */\nimport React from \"preact/compat\";\nimport { useContext } from \"preact/hooks\";\nimport {\n IThreadPopupState,\n ICommentActionBar,\n} from \"../../../types/collab.types\";\nimport Icon from \"../Icon/Icon\";\nimport { ThreadProvider } from \"./ContextProvider\";\nimport { collabStyles } from \"../../../collab.style\";\nimport classNames from \"classnames\";\n\
|
|
1
|
+
{"version":3,"sources":["../../../../../../src/visualBuilder/components/Collab/ThreadPopup/CommentActionBar.tsx"],"sourcesContent":["/** @jsxImportSource preact */\nimport React from \"preact/compat\";\nimport { useContext, useState } from \"preact/hooks\";\nimport {\n IThreadPopupState,\n ICommentActionBar,\n} from \"../../../types/collab.types\";\nimport Icon from \"../Icon/Icon\";\nimport { ThreadProvider } from \"./ContextProvider\";\nimport { collabStyles } from \"../../../collab.style\";\nimport classNames from \"classnames\";\n\nconst CommentActionBar: React.FC<ICommentActionBar> = ({\n mode,\n commentUser,\n currentUser,\n commentUID,\n}) => {\n const { setThreadState, onDeleteComment, activeThread, onDeleteThread } =\n useContext(ThreadProvider)!;\n const [isDeleting, setIsDeleting] = useState(false);\n\n const setEditComment = (uid: string | null) => {\n setThreadState((prevState: IThreadPopupState) => ({\n ...prevState,\n editComment: uid || \"\",\n }));\n };\n\n const handleCancel = () => {\n setEditComment(null);\n };\n\n const handleCommentEdit = () => {\n if (commentUID) {\n setEditComment(commentUID);\n }\n };\n\n const handleCommentDelete = async () => {\n if (!commentUID || isDeleting) {\n return;\n }\n\n setIsDeleting(true);\n\n try {\n const deleteResponse = await onDeleteComment({\n threadUid: activeThread?._id,\n commentUid: commentUID,\n });\n\n setThreadState((prevState: IThreadPopupState) => {\n const updatedComments = prevState.comments.filter(\n (comment) => comment._id !== commentUID\n );\n if (prevState.commentCount - 1 === 0) {\n onDeleteThread({ threadUid: activeThread?._id });\n }\n return {\n ...prevState,\n comments: updatedComments,\n commentCount: prevState.commentCount - 1,\n };\n });\n } catch (error: any) {\n } finally {\n setIsDeleting(false);\n }\n };\n\n if (mode === \"edit\" && commentUID) {\n return (\n <div\n className={classNames(\n \"collab-thread-comment-action--wrapper\",\n collabStyles()[\"collab-thread-comment-action--wrapper\"]\n )}\n >\n <Icon\n icon=\"Cancel\"\n withTooltip\n tooltipContent=\"Cancel\"\n onClick={handleCancel}\n />\n </div>\n );\n }\n\n if (commentUser?.uid !== currentUser?.uid || !commentUID) {\n return null;\n }\n\n return (\n <div\n className={classNames(\n \"collab-thread-comment-action--wrapper\",\n collabStyles()[\"collab-thread-comment-action--wrapper\"]\n )}\n data-testid=\"collab-thread-comment-action--wrapper\"\n >\n <Icon\n icon=\"Edit\"\n tooltipContent=\"Edit\"\n withTooltip\n testId=\"collab-thread-comment-edit\"\n onClick={handleCommentEdit}\n />\n <Icon\n icon=\"Delete\"\n tooltipContent=\"Delete\"\n withTooltip\n testId=\"collab-thread-comment-delete\"\n onClick={handleCommentDelete}\n disabled={isDeleting}\n />\n </div>\n );\n};\n\nexport default CommentActionBar;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,mBAAqC;AAKrC,kBAAiB;AACjB,6BAA+B;AAC/B,oBAA6B;AAC7B,wBAAuB;AAqEP;AAnEhB,IAAM,mBAAgD,CAAC;AAAA,EACnD;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACJ,MAAM;AACF,QAAM,EAAE,gBAAgB,iBAAiB,cAAc,eAAe,QAClE,yBAAW,qCAAc;AAC7B,QAAM,CAAC,YAAY,aAAa,QAAI,uBAAS,KAAK;AAElD,QAAM,iBAAiB,CAAC,QAAuB;AAC3C,mBAAe,CAAC,eAAkC;AAAA,MAC9C,GAAG;AAAA,MACH,aAAa,OAAO;AAAA,IACxB,EAAE;AAAA,EACN;AAEA,QAAM,eAAe,MAAM;AACvB,mBAAe,IAAI;AAAA,EACvB;AAEA,QAAM,oBAAoB,MAAM;AAC5B,QAAI,YAAY;AACZ,qBAAe,UAAU;AAAA,IAC7B;AAAA,EACJ;AAEA,QAAM,sBAAsB,YAAY;AACpC,QAAI,CAAC,cAAc,YAAY;AAC3B;AAAA,IACJ;AAEA,kBAAc,IAAI;AAElB,QAAI;AACA,YAAM,iBAAiB,MAAM,gBAAgB;AAAA,QACzC,WAAW,6CAAc;AAAA,QACzB,YAAY;AAAA,MAChB,CAAC;AAED,qBAAe,CAAC,cAAiC;AAC7C,cAAM,kBAAkB,UAAU,SAAS;AAAA,UACvC,CAAC,YAAY,QAAQ,QAAQ;AAAA,QACjC;AACA,YAAI,UAAU,eAAe,MAAM,GAAG;AAClC,yBAAe,EAAE,WAAW,6CAAc,IAAI,CAAC;AAAA,QACnD;AACA,eAAO;AAAA,UACH,GAAG;AAAA,UACH,UAAU;AAAA,UACV,cAAc,UAAU,eAAe;AAAA,QAC3C;AAAA,MACJ,CAAC;AAAA,IACL,SAAS,OAAY;AAAA,IACrB,UAAE;AACE,oBAAc,KAAK;AAAA,IACvB;AAAA,EACJ;AAEA,MAAI,SAAS,UAAU,YAAY;AAC/B,WACI;AAAA,MAAC;AAAA;AAAA,QACG,eAAW,kBAAAA;AAAA,UACP;AAAA,cACA,4BAAa,EAAE,uCAAuC;AAAA,QAC1D;AAAA,QAEA;AAAA,UAAC,YAAAC;AAAA,UAAA;AAAA,YACG,MAAK;AAAA,YACL,aAAW;AAAA,YACX,gBAAe;AAAA,YACf,SAAS;AAAA;AAAA,QACb;AAAA;AAAA,IACJ;AAAA,EAER;AAEA,OAAI,2CAAa,UAAQ,2CAAa,QAAO,CAAC,YAAY;AACtD,WAAO;AAAA,EACX;AAEA,SACI;AAAA,IAAC;AAAA;AAAA,MACG,eAAW,kBAAAD;AAAA,QACP;AAAA,YACA,4BAAa,EAAE,uCAAuC;AAAA,MAC1D;AAAA,MACA,eAAY;AAAA,MAEZ;AAAA;AAAA,UAAC,YAAAC;AAAA,UAAA;AAAA,YACG,MAAK;AAAA,YACL,gBAAe;AAAA,YACf,aAAW;AAAA,YACX,QAAO;AAAA,YACP,SAAS;AAAA;AAAA,QACb;AAAA,QACA;AAAA,UAAC,YAAAA;AAAA,UAAA;AAAA,YACG,MAAK;AAAA,YACL,gBAAe;AAAA,YACf,aAAW;AAAA,YACX,QAAO;AAAA,YACP,SAAS;AAAA,YACT,UAAU;AAAA;AAAA,QACd;AAAA;AAAA;AAAA,EACJ;AAER;AAEA,IAAO,2BAAQ;","names":["classNames","Icon"]}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import "../../../../chunk-5WRI5ZAA.js";
|
|
2
2
|
|
|
3
3
|
// src/visualBuilder/components/Collab/ThreadPopup/CommentActionBar.tsx
|
|
4
|
-
import { useContext } from "preact/hooks";
|
|
4
|
+
import { useContext, useState } from "preact/hooks";
|
|
5
5
|
import Icon from "../Icon/Icon.js";
|
|
6
6
|
import { ThreadProvider } from "./ContextProvider/index.js";
|
|
7
7
|
import { collabStyles } from "../../../collab.style.js";
|
|
@@ -14,6 +14,7 @@ var CommentActionBar = ({
|
|
|
14
14
|
commentUID
|
|
15
15
|
}) => {
|
|
16
16
|
const { setThreadState, onDeleteComment, activeThread, onDeleteThread } = useContext(ThreadProvider);
|
|
17
|
+
const [isDeleting, setIsDeleting] = useState(false);
|
|
17
18
|
const setEditComment = (uid) => {
|
|
18
19
|
setThreadState((prevState) => ({
|
|
19
20
|
...prevState,
|
|
@@ -29,9 +30,10 @@ var CommentActionBar = ({
|
|
|
29
30
|
}
|
|
30
31
|
};
|
|
31
32
|
const handleCommentDelete = async () => {
|
|
32
|
-
if (!commentUID) {
|
|
33
|
+
if (!commentUID || isDeleting) {
|
|
33
34
|
return;
|
|
34
35
|
}
|
|
36
|
+
setIsDeleting(true);
|
|
35
37
|
try {
|
|
36
38
|
const deleteResponse = await onDeleteComment({
|
|
37
39
|
threadUid: activeThread == null ? void 0 : activeThread._id,
|
|
@@ -51,6 +53,8 @@ var CommentActionBar = ({
|
|
|
51
53
|
};
|
|
52
54
|
});
|
|
53
55
|
} catch (error) {
|
|
56
|
+
} finally {
|
|
57
|
+
setIsDeleting(false);
|
|
54
58
|
}
|
|
55
59
|
};
|
|
56
60
|
if (mode === "edit" && commentUID) {
|
|
@@ -73,7 +77,7 @@ var CommentActionBar = ({
|
|
|
73
77
|
}
|
|
74
78
|
);
|
|
75
79
|
}
|
|
76
|
-
if (commentUser.uid !== currentUser.uid || !commentUID) {
|
|
80
|
+
if ((commentUser == null ? void 0 : commentUser.uid) !== (currentUser == null ? void 0 : currentUser.uid) || !commentUID) {
|
|
77
81
|
return null;
|
|
78
82
|
}
|
|
79
83
|
return /* @__PURE__ */ jsxs(
|
|
@@ -102,7 +106,8 @@ var CommentActionBar = ({
|
|
|
102
106
|
tooltipContent: "Delete",
|
|
103
107
|
withTooltip: true,
|
|
104
108
|
testId: "collab-thread-comment-delete",
|
|
105
|
-
onClick: handleCommentDelete
|
|
109
|
+
onClick: handleCommentDelete,
|
|
110
|
+
disabled: isDeleting
|
|
106
111
|
}
|
|
107
112
|
)
|
|
108
113
|
]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../../src/visualBuilder/components/Collab/ThreadPopup/CommentActionBar.tsx"],"sourcesContent":["/** @jsxImportSource preact */\nimport React from \"preact/compat\";\nimport { useContext } from \"preact/hooks\";\nimport {\n IThreadPopupState,\n ICommentActionBar,\n} from \"../../../types/collab.types\";\nimport Icon from \"../Icon/Icon\";\nimport { ThreadProvider } from \"./ContextProvider\";\nimport { collabStyles } from \"../../../collab.style\";\nimport classNames from \"classnames\";\n\
|
|
1
|
+
{"version":3,"sources":["../../../../../../src/visualBuilder/components/Collab/ThreadPopup/CommentActionBar.tsx"],"sourcesContent":["/** @jsxImportSource preact */\nimport React from \"preact/compat\";\nimport { useContext, useState } from \"preact/hooks\";\nimport {\n IThreadPopupState,\n ICommentActionBar,\n} from \"../../../types/collab.types\";\nimport Icon from \"../Icon/Icon\";\nimport { ThreadProvider } from \"./ContextProvider\";\nimport { collabStyles } from \"../../../collab.style\";\nimport classNames from \"classnames\";\n\nconst CommentActionBar: React.FC<ICommentActionBar> = ({\n mode,\n commentUser,\n currentUser,\n commentUID,\n}) => {\n const { setThreadState, onDeleteComment, activeThread, onDeleteThread } =\n useContext(ThreadProvider)!;\n const [isDeleting, setIsDeleting] = useState(false);\n\n const setEditComment = (uid: string | null) => {\n setThreadState((prevState: IThreadPopupState) => ({\n ...prevState,\n editComment: uid || \"\",\n }));\n };\n\n const handleCancel = () => {\n setEditComment(null);\n };\n\n const handleCommentEdit = () => {\n if (commentUID) {\n setEditComment(commentUID);\n }\n };\n\n const handleCommentDelete = async () => {\n if (!commentUID || isDeleting) {\n return;\n }\n\n setIsDeleting(true);\n\n try {\n const deleteResponse = await onDeleteComment({\n threadUid: activeThread?._id,\n commentUid: commentUID,\n });\n\n setThreadState((prevState: IThreadPopupState) => {\n const updatedComments = prevState.comments.filter(\n (comment) => comment._id !== commentUID\n );\n if (prevState.commentCount - 1 === 0) {\n onDeleteThread({ threadUid: activeThread?._id });\n }\n return {\n ...prevState,\n comments: updatedComments,\n commentCount: prevState.commentCount - 1,\n };\n });\n } catch (error: any) {\n } finally {\n setIsDeleting(false);\n }\n };\n\n if (mode === \"edit\" && commentUID) {\n return (\n <div\n className={classNames(\n \"collab-thread-comment-action--wrapper\",\n collabStyles()[\"collab-thread-comment-action--wrapper\"]\n )}\n >\n <Icon\n icon=\"Cancel\"\n withTooltip\n tooltipContent=\"Cancel\"\n onClick={handleCancel}\n />\n </div>\n );\n }\n\n if (commentUser?.uid !== currentUser?.uid || !commentUID) {\n return null;\n }\n\n return (\n <div\n className={classNames(\n \"collab-thread-comment-action--wrapper\",\n collabStyles()[\"collab-thread-comment-action--wrapper\"]\n )}\n data-testid=\"collab-thread-comment-action--wrapper\"\n >\n <Icon\n icon=\"Edit\"\n tooltipContent=\"Edit\"\n withTooltip\n testId=\"collab-thread-comment-edit\"\n onClick={handleCommentEdit}\n />\n <Icon\n icon=\"Delete\"\n tooltipContent=\"Delete\"\n withTooltip\n testId=\"collab-thread-comment-delete\"\n onClick={handleCommentDelete}\n disabled={isDeleting}\n />\n </div>\n );\n};\n\nexport default CommentActionBar;\n"],"mappings":";;;AAEA,SAAS,YAAY,gBAAgB;AAKrC,OAAO,UAAU;AACjB,SAAS,sBAAsB;AAC/B,SAAS,oBAAoB;AAC7B,OAAO,gBAAgB;AAqEP,cAeR,YAfQ;AAnEhB,IAAM,mBAAgD,CAAC;AAAA,EACnD;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACJ,MAAM;AACF,QAAM,EAAE,gBAAgB,iBAAiB,cAAc,eAAe,IAClE,WAAW,cAAc;AAC7B,QAAM,CAAC,YAAY,aAAa,IAAI,SAAS,KAAK;AAElD,QAAM,iBAAiB,CAAC,QAAuB;AAC3C,mBAAe,CAAC,eAAkC;AAAA,MAC9C,GAAG;AAAA,MACH,aAAa,OAAO;AAAA,IACxB,EAAE;AAAA,EACN;AAEA,QAAM,eAAe,MAAM;AACvB,mBAAe,IAAI;AAAA,EACvB;AAEA,QAAM,oBAAoB,MAAM;AAC5B,QAAI,YAAY;AACZ,qBAAe,UAAU;AAAA,IAC7B;AAAA,EACJ;AAEA,QAAM,sBAAsB,YAAY;AACpC,QAAI,CAAC,cAAc,YAAY;AAC3B;AAAA,IACJ;AAEA,kBAAc,IAAI;AAElB,QAAI;AACA,YAAM,iBAAiB,MAAM,gBAAgB;AAAA,QACzC,WAAW,6CAAc;AAAA,QACzB,YAAY;AAAA,MAChB,CAAC;AAED,qBAAe,CAAC,cAAiC;AAC7C,cAAM,kBAAkB,UAAU,SAAS;AAAA,UACvC,CAAC,YAAY,QAAQ,QAAQ;AAAA,QACjC;AACA,YAAI,UAAU,eAAe,MAAM,GAAG;AAClC,yBAAe,EAAE,WAAW,6CAAc,IAAI,CAAC;AAAA,QACnD;AACA,eAAO;AAAA,UACH,GAAG;AAAA,UACH,UAAU;AAAA,UACV,cAAc,UAAU,eAAe;AAAA,QAC3C;AAAA,MACJ,CAAC;AAAA,IACL,SAAS,OAAY;AAAA,IACrB,UAAE;AACE,oBAAc,KAAK;AAAA,IACvB;AAAA,EACJ;AAEA,MAAI,SAAS,UAAU,YAAY;AAC/B,WACI;AAAA,MAAC;AAAA;AAAA,QACG,WAAW;AAAA,UACP;AAAA,UACA,aAAa,EAAE,uCAAuC;AAAA,QAC1D;AAAA,QAEA;AAAA,UAAC;AAAA;AAAA,YACG,MAAK;AAAA,YACL,aAAW;AAAA,YACX,gBAAe;AAAA,YACf,SAAS;AAAA;AAAA,QACb;AAAA;AAAA,IACJ;AAAA,EAER;AAEA,OAAI,2CAAa,UAAQ,2CAAa,QAAO,CAAC,YAAY;AACtD,WAAO;AAAA,EACX;AAEA,SACI;AAAA,IAAC;AAAA;AAAA,MACG,WAAW;AAAA,QACP;AAAA,QACA,aAAa,EAAE,uCAAuC;AAAA,MAC1D;AAAA,MACA,eAAY;AAAA,MAEZ;AAAA;AAAA,UAAC;AAAA;AAAA,YACG,MAAK;AAAA,YACL,gBAAe;AAAA,YACf,aAAW;AAAA,YACX,QAAO;AAAA,YACP,SAAS;AAAA;AAAA,QACb;AAAA,QACA;AAAA,UAAC;AAAA;AAAA,YACG,MAAK;AAAA,YACL,gBAAe;AAAA,YACf,aAAW;AAAA,YACX,QAAO;AAAA,YACP,SAAS;AAAA,YACT,UAAU;AAAA;AAAA,QACd;AAAA;AAAA;AAAA,EACJ;AAER;AAEA,IAAO,2BAAQ;","names":[]}
|
|
@@ -35,7 +35,6 @@ __export(CommentCard_exports, {
|
|
|
35
35
|
module.exports = __toCommonJS(CommentCard_exports);
|
|
36
36
|
var import_hooks = require("preact/hooks");
|
|
37
37
|
var import_CommentTextArea = __toESM(require("./CommentTextArea.cjs"), 1);
|
|
38
|
-
var import_moment = __toESM(require("moment"), 1);
|
|
39
38
|
var import_collabUtils = require("../../../utils/collabUtils.cjs");
|
|
40
39
|
var import_CommentActionBar = __toESM(require("./CommentActionBar.cjs"), 1);
|
|
41
40
|
var import_CommentResolvedText = __toESM(require("./CommentResolvedText.cjs"), 1);
|
|
@@ -45,7 +44,7 @@ var import_collab = require("../../../collab.style.cjs");
|
|
|
45
44
|
var import_classnames = __toESM(require("classnames"), 1);
|
|
46
45
|
var import_jsx_runtime = require("preact/jsx-runtime");
|
|
47
46
|
var formatCommentDate = (comment) => {
|
|
48
|
-
return comment ? (0,
|
|
47
|
+
return comment ? (0, import_collabUtils.formatDate)(comment.updatedAt || comment.createdAt) : "";
|
|
49
48
|
};
|
|
50
49
|
var CommentCard = ({
|
|
51
50
|
userState,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../../src/visualBuilder/components/Collab/ThreadPopup/CommentCard.tsx"],"sourcesContent":["/** @jsxImportSource preact */\nimport React from \"preact/compat\";\nimport { useEffect, useState, useMemo } from \"preact/hooks\";\nimport CommentTextArea from \"./CommentTextArea\";\nimport {\n ICommentCard,\n IMessageDTO,\n IUserDTO,\n} from \"../../../types/collab.types\";\nimport
|
|
1
|
+
{"version":3,"sources":["../../../../../../src/visualBuilder/components/Collab/ThreadPopup/CommentCard.tsx"],"sourcesContent":["/** @jsxImportSource preact */\nimport React from \"preact/compat\";\nimport { useEffect, useState, useMemo } from \"preact/hooks\";\nimport CommentTextArea from \"./CommentTextArea\";\nimport {\n ICommentCard,\n IMessageDTO,\n IUserDTO,\n} from \"../../../types/collab.types\";\nimport { getUserName, formatDate } from \"../../../utils/collabUtils\";\nimport CommentActionBar from \"./CommentActionBar\";\nimport CommentResolvedText from \"./CommentResolvedText\";\nimport Avatar from \"../Avatar/Avatar\";\nimport ThreadBodyLoader from \"./loader/ThreadBody\";\nimport { collabStyles, flexAlignCenter } from \"../../../collab.style\";\nimport classNames from \"classnames\";\n\nconst formatCommentDate = (comment: IMessageDTO | null): string => {\n return comment ? formatDate(comment.updatedAt || comment.createdAt) : \"\";\n};\n\nconst CommentCard = ({\n userState,\n comment,\n onClose,\n handleOnSaveRef,\n mode,\n}: ICommentCard) => {\n const [commentUser, setCommentUser] = useState<IUserDTO | null>(null);\n const [isHovered, setIsHovered] = useState(false);\n\n useEffect(() => {\n setCommentUser(\n comment\n ? userState.userMap[comment.createdBy]\n : userState.currentUser\n );\n }, [comment, userState]);\n\n const formattedDate = useMemo(() => formatCommentDate(comment), [comment]);\n\n if (!commentUser) {\n return <ThreadBodyLoader key=\"collab-thread-body--comment-loader\" />;\n }\n\n return (\n <div\n className={classNames(\n \"collab-thread-comment--wrapper\",\n collabStyles()[\"collab-thread-comment--wrapper\"]\n )}\n onMouseEnter={() => setIsHovered(true)}\n onMouseLeave={() => setIsHovered(false)}\n >\n <div\n className={classNames(\n \"collab-thread-comment--user-details\",\n \"flex-v-center\",\n collabStyles()[\"collab-thread-comment--user-details\"],\n flexAlignCenter\n )}\n >\n <Avatar\n avatar={\n {\n name: getUserName(commentUser),\n id: commentUser.uid,\n } as any\n }\n />\n <div\n className={classNames(\n \"collab-thread-comment--user-details__text\",\n collabStyles()[\n \"collab-thread-comment--user-details__text\"\n ]\n )}\n >\n <div\n className={classNames(\n \"collab-thread-comment--user-name\",\n collabStyles()[\"collab-thread-comment--user-name\"]\n )}\n >\n {getUserName(commentUser)}\n </div>\n {comment && (\n <div\n className={classNames(\n \"collab-thread-comment--time-details\",\n collabStyles()[\n \"collab-thread-comment--time-details\"\n ]\n )}\n >\n {formattedDate}\n </div>\n )}\n </div>\n {isHovered && (\n <CommentActionBar\n mode={mode}\n commentUser={commentUser}\n currentUser={userState.currentUser}\n commentUID={comment?._id}\n />\n )}\n </div>\n {mode === \"edit\" ? (\n <CommentTextArea\n onClose={onClose}\n userState={userState}\n handleOnSaveRef={handleOnSaveRef}\n comment={comment}\n />\n ) : (\n comment && (\n <CommentResolvedText\n comment={comment}\n userState={userState}\n />\n )\n )}\n </div>\n );\n};\n\nexport default CommentCard;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,mBAA6C;AAC7C,6BAA4B;AAM5B,yBAAwC;AACxC,8BAA6B;AAC7B,iCAAgC;AAChC,oBAAmB;AACnB,wBAA6B;AAC7B,oBAA8C;AAC9C,wBAAuB;AA2BR;AAzBf,IAAM,oBAAoB,CAAC,YAAwC;AAC/D,SAAO,cAAU,+BAAW,QAAQ,aAAa,QAAQ,SAAS,IAAI;AAC1E;AAEA,IAAM,cAAc,CAAC;AAAA,EACjB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACJ,MAAoB;AAChB,QAAM,CAAC,aAAa,cAAc,QAAI,uBAA0B,IAAI;AACpE,QAAM,CAAC,WAAW,YAAY,QAAI,uBAAS,KAAK;AAEhD,8BAAU,MAAM;AACZ;AAAA,MACI,UACM,UAAU,QAAQ,QAAQ,SAAS,IACnC,UAAU;AAAA,IACpB;AAAA,EACJ,GAAG,CAAC,SAAS,SAAS,CAAC;AAEvB,QAAM,oBAAgB,sBAAQ,MAAM,kBAAkB,OAAO,GAAG,CAAC,OAAO,CAAC;AAEzE,MAAI,CAAC,aAAa;AACd,WAAO,4CAAC,kBAAAA,SAAA,IAAqB,oCAAqC;AAAA,EACtE;AAEA,SACI;AAAA,IAAC;AAAA;AAAA,MACG,eAAW,kBAAAC;AAAA,QACP;AAAA,YACA,4BAAa,EAAE,gCAAgC;AAAA,MACnD;AAAA,MACA,cAAc,MAAM,aAAa,IAAI;AAAA,MACrC,cAAc,MAAM,aAAa,KAAK;AAAA,MAEtC;AAAA;AAAA,UAAC;AAAA;AAAA,YACG,eAAW,kBAAAA;AAAA,cACP;AAAA,cACA;AAAA,kBACA,4BAAa,EAAE,qCAAqC;AAAA,cACpD;AAAA,YACJ;AAAA,YAEA;AAAA;AAAA,gBAAC,cAAAC;AAAA,gBAAA;AAAA,kBACG,QACI;AAAA,oBACI,UAAM,gCAAY,WAAW;AAAA,oBAC7B,IAAI,YAAY;AAAA,kBACpB;AAAA;AAAA,cAER;AAAA,cACA;AAAA,gBAAC;AAAA;AAAA,kBACG,eAAW,kBAAAD;AAAA,oBACP;AAAA,wBACA,4BAAa,EACT,2CACJ;AAAA,kBACJ;AAAA,kBAEA;AAAA;AAAA,sBAAC;AAAA;AAAA,wBACG,eAAW,kBAAAA;AAAA,0BACP;AAAA,8BACA,4BAAa,EAAE,kCAAkC;AAAA,wBACrD;AAAA,wBAEC,8CAAY,WAAW;AAAA;AAAA,oBAC5B;AAAA,oBACC,WACG;AAAA,sBAAC;AAAA;AAAA,wBACG,eAAW,kBAAAA;AAAA,0BACP;AAAA,8BACA,4BAAa,EACT,qCACJ;AAAA,wBACJ;AAAA,wBAEC;AAAA;AAAA,oBACL;AAAA;AAAA;AAAA,cAER;AAAA,cACC,aACG;AAAA,gBAAC,wBAAAE;AAAA,gBAAA;AAAA,kBACG;AAAA,kBACA;AAAA,kBACA,aAAa,UAAU;AAAA,kBACvB,YAAY,mCAAS;AAAA;AAAA,cACzB;AAAA;AAAA;AAAA,QAER;AAAA,QACC,SAAS,SACN;AAAA,UAAC,uBAAAC;AAAA,UAAA;AAAA,YACG;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA;AAAA,QACJ,IAEA,WACI;AAAA,UAAC,2BAAAC;AAAA,UAAA;AAAA,YACG;AAAA,YACA;AAAA;AAAA,QACJ;AAAA;AAAA;AAAA,EAGZ;AAER;AAEA,IAAO,sBAAQ;","names":["ThreadBodyLoader","classNames","Avatar","CommentActionBar","CommentTextArea","CommentResolvedText"]}
|
|
@@ -3,8 +3,7 @@ import "../../../../chunk-5WRI5ZAA.js";
|
|
|
3
3
|
// src/visualBuilder/components/Collab/ThreadPopup/CommentCard.tsx
|
|
4
4
|
import { useEffect, useState, useMemo } from "preact/hooks";
|
|
5
5
|
import CommentTextArea from "./CommentTextArea.js";
|
|
6
|
-
import
|
|
7
|
-
import { getUserName } from "../../../utils/collabUtils.js";
|
|
6
|
+
import { getUserName, formatDate } from "../../../utils/collabUtils.js";
|
|
8
7
|
import CommentActionBar from "./CommentActionBar.js";
|
|
9
8
|
import CommentResolvedText from "./CommentResolvedText.js";
|
|
10
9
|
import Avatar from "../Avatar/Avatar.js";
|
|
@@ -13,7 +12,7 @@ import { collabStyles, flexAlignCenter } from "../../../collab.style.js";
|
|
|
13
12
|
import classNames from "classnames";
|
|
14
13
|
import { jsx, jsxs } from "preact/jsx-runtime";
|
|
15
14
|
var formatCommentDate = (comment) => {
|
|
16
|
-
return comment ?
|
|
15
|
+
return comment ? formatDate(comment.updatedAt || comment.createdAt) : "";
|
|
17
16
|
};
|
|
18
17
|
var CommentCard = ({
|
|
19
18
|
userState,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../../src/visualBuilder/components/Collab/ThreadPopup/CommentCard.tsx"],"sourcesContent":["/** @jsxImportSource preact */\nimport React from \"preact/compat\";\nimport { useEffect, useState, useMemo } from \"preact/hooks\";\nimport CommentTextArea from \"./CommentTextArea\";\nimport {\n ICommentCard,\n IMessageDTO,\n IUserDTO,\n} from \"../../../types/collab.types\";\nimport
|
|
1
|
+
{"version":3,"sources":["../../../../../../src/visualBuilder/components/Collab/ThreadPopup/CommentCard.tsx"],"sourcesContent":["/** @jsxImportSource preact */\nimport React from \"preact/compat\";\nimport { useEffect, useState, useMemo } from \"preact/hooks\";\nimport CommentTextArea from \"./CommentTextArea\";\nimport {\n ICommentCard,\n IMessageDTO,\n IUserDTO,\n} from \"../../../types/collab.types\";\nimport { getUserName, formatDate } from \"../../../utils/collabUtils\";\nimport CommentActionBar from \"./CommentActionBar\";\nimport CommentResolvedText from \"./CommentResolvedText\";\nimport Avatar from \"../Avatar/Avatar\";\nimport ThreadBodyLoader from \"./loader/ThreadBody\";\nimport { collabStyles, flexAlignCenter } from \"../../../collab.style\";\nimport classNames from \"classnames\";\n\nconst formatCommentDate = (comment: IMessageDTO | null): string => {\n return comment ? formatDate(comment.updatedAt || comment.createdAt) : \"\";\n};\n\nconst CommentCard = ({\n userState,\n comment,\n onClose,\n handleOnSaveRef,\n mode,\n}: ICommentCard) => {\n const [commentUser, setCommentUser] = useState<IUserDTO | null>(null);\n const [isHovered, setIsHovered] = useState(false);\n\n useEffect(() => {\n setCommentUser(\n comment\n ? userState.userMap[comment.createdBy]\n : userState.currentUser\n );\n }, [comment, userState]);\n\n const formattedDate = useMemo(() => formatCommentDate(comment), [comment]);\n\n if (!commentUser) {\n return <ThreadBodyLoader key=\"collab-thread-body--comment-loader\" />;\n }\n\n return (\n <div\n className={classNames(\n \"collab-thread-comment--wrapper\",\n collabStyles()[\"collab-thread-comment--wrapper\"]\n )}\n onMouseEnter={() => setIsHovered(true)}\n onMouseLeave={() => setIsHovered(false)}\n >\n <div\n className={classNames(\n \"collab-thread-comment--user-details\",\n \"flex-v-center\",\n collabStyles()[\"collab-thread-comment--user-details\"],\n flexAlignCenter\n )}\n >\n <Avatar\n avatar={\n {\n name: getUserName(commentUser),\n id: commentUser.uid,\n } as any\n }\n />\n <div\n className={classNames(\n \"collab-thread-comment--user-details__text\",\n collabStyles()[\n \"collab-thread-comment--user-details__text\"\n ]\n )}\n >\n <div\n className={classNames(\n \"collab-thread-comment--user-name\",\n collabStyles()[\"collab-thread-comment--user-name\"]\n )}\n >\n {getUserName(commentUser)}\n </div>\n {comment && (\n <div\n className={classNames(\n \"collab-thread-comment--time-details\",\n collabStyles()[\n \"collab-thread-comment--time-details\"\n ]\n )}\n >\n {formattedDate}\n </div>\n )}\n </div>\n {isHovered && (\n <CommentActionBar\n mode={mode}\n commentUser={commentUser}\n currentUser={userState.currentUser}\n commentUID={comment?._id}\n />\n )}\n </div>\n {mode === \"edit\" ? (\n <CommentTextArea\n onClose={onClose}\n userState={userState}\n handleOnSaveRef={handleOnSaveRef}\n comment={comment}\n />\n ) : (\n comment && (\n <CommentResolvedText\n comment={comment}\n userState={userState}\n />\n )\n )}\n </div>\n );\n};\n\nexport default CommentCard;\n"],"mappings":";;;AAEA,SAAS,WAAW,UAAU,eAAe;AAC7C,OAAO,qBAAqB;AAM5B,SAAS,aAAa,kBAAkB;AACxC,OAAO,sBAAsB;AAC7B,OAAO,yBAAyB;AAChC,OAAO,YAAY;AACnB,OAAO,sBAAsB;AAC7B,SAAS,cAAc,uBAAuB;AAC9C,OAAO,gBAAgB;AA2BR,cA4BC,YA5BD;AAzBf,IAAM,oBAAoB,CAAC,YAAwC;AAC/D,SAAO,UAAU,WAAW,QAAQ,aAAa,QAAQ,SAAS,IAAI;AAC1E;AAEA,IAAM,cAAc,CAAC;AAAA,EACjB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACJ,MAAoB;AAChB,QAAM,CAAC,aAAa,cAAc,IAAI,SAA0B,IAAI;AACpE,QAAM,CAAC,WAAW,YAAY,IAAI,SAAS,KAAK;AAEhD,YAAU,MAAM;AACZ;AAAA,MACI,UACM,UAAU,QAAQ,QAAQ,SAAS,IACnC,UAAU;AAAA,IACpB;AAAA,EACJ,GAAG,CAAC,SAAS,SAAS,CAAC;AAEvB,QAAM,gBAAgB,QAAQ,MAAM,kBAAkB,OAAO,GAAG,CAAC,OAAO,CAAC;AAEzE,MAAI,CAAC,aAAa;AACd,WAAO,oBAAC,sBAAqB,oCAAqC;AAAA,EACtE;AAEA,SACI;AAAA,IAAC;AAAA;AAAA,MACG,WAAW;AAAA,QACP;AAAA,QACA,aAAa,EAAE,gCAAgC;AAAA,MACnD;AAAA,MACA,cAAc,MAAM,aAAa,IAAI;AAAA,MACrC,cAAc,MAAM,aAAa,KAAK;AAAA,MAEtC;AAAA;AAAA,UAAC;AAAA;AAAA,YACG,WAAW;AAAA,cACP;AAAA,cACA;AAAA,cACA,aAAa,EAAE,qCAAqC;AAAA,cACpD;AAAA,YACJ;AAAA,YAEA;AAAA;AAAA,gBAAC;AAAA;AAAA,kBACG,QACI;AAAA,oBACI,MAAM,YAAY,WAAW;AAAA,oBAC7B,IAAI,YAAY;AAAA,kBACpB;AAAA;AAAA,cAER;AAAA,cACA;AAAA,gBAAC;AAAA;AAAA,kBACG,WAAW;AAAA,oBACP;AAAA,oBACA,aAAa,EACT,2CACJ;AAAA,kBACJ;AAAA,kBAEA;AAAA;AAAA,sBAAC;AAAA;AAAA,wBACG,WAAW;AAAA,0BACP;AAAA,0BACA,aAAa,EAAE,kCAAkC;AAAA,wBACrD;AAAA,wBAEC,sBAAY,WAAW;AAAA;AAAA,oBAC5B;AAAA,oBACC,WACG;AAAA,sBAAC;AAAA;AAAA,wBACG,WAAW;AAAA,0BACP;AAAA,0BACA,aAAa,EACT,qCACJ;AAAA,wBACJ;AAAA,wBAEC;AAAA;AAAA,oBACL;AAAA;AAAA;AAAA,cAER;AAAA,cACC,aACG;AAAA,gBAAC;AAAA;AAAA,kBACG;AAAA,kBACA;AAAA,kBACA,aAAa,UAAU;AAAA,kBACvB,YAAY,mCAAS;AAAA;AAAA,cACzB;AAAA;AAAA;AAAA,QAER;AAAA,QACC,SAAS,SACN;AAAA,UAAC;AAAA;AAAA,YACG;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA;AAAA,QACJ,IAEA,WACI;AAAA,UAAC;AAAA;AAAA,YACG;AAAA,YACA;AAAA;AAAA,QACJ;AAAA;AAAA;AAAA,EAGZ;AAER;AAEA,IAAO,sBAAQ;","names":[]}
|
|
@@ -39,12 +39,9 @@ var import_collab = require("../../../collab.style.cjs");
|
|
|
39
39
|
var import_classnames = __toESM(require("classnames"), 1);
|
|
40
40
|
var import_jsx_runtime = require("preact/jsx-runtime");
|
|
41
41
|
var CommentResolvedText = ({ comment, userState }) => {
|
|
42
|
-
const text = (0, import_hooks.useMemo)(() => {
|
|
43
|
-
return (0, import_collabUtils.getMessageWithDisplayName)(comment, userState, "html");
|
|
44
|
-
}, [comment.message, userState.userMap, comment.toUsers]);
|
|
45
42
|
const sanitizedText = (0, import_hooks.useMemo)(() => {
|
|
46
|
-
return (0, import_collabUtils.
|
|
47
|
-
}, [
|
|
43
|
+
return (0, import_collabUtils.getMessageWithDisplayName)(comment, userState, "html") ?? "";
|
|
44
|
+
}, [comment.message, userState.userMap, comment.toUsers]);
|
|
48
45
|
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
49
46
|
"div",
|
|
50
47
|
{
|
|
@@ -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 {
|
|
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":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,mBAAwB;AAExB,yBAA0C;AAC1C,oBAA6B;AAC7B,wBAAuB;AAQf;AANR,IAAM,sBAAsB,CAAC,EAAE,SAAS,UAAU,MAA4B;AAC1E,QAAM,oBAAgB,sBAAQ,MAAM;AAChC,eAAO,8CAA0B,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,eAAW,kBAAAA;AAAA,QACP;AAAA,YACA,4BAAa,EAAE,gCAAgC;AAAA,MACnD;AAAA,MACA,yBAAyB,EAAE,QAAQ,cAAc;AAAA;AAAA,EACpD;AAET;AAEA,IAAO,8BAAQ;","names":["classNames"]}
|