@parhelia/core 0.1.12881 → 0.1.12882
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/dist/components/ui/card.d.ts +1 -3
- package/dist/components/ui/card.js +2 -2
- package/dist/components/ui/card.js.map +1 -1
- package/dist/components/ui/context-menu.js +2 -2
- package/dist/config/config.js +7 -8
- package/dist/config/config.js.map +1 -1
- package/dist/config/types.d.ts +7 -0
- package/dist/config/types.js.map +1 -1
- package/dist/editor/FieldActionsOverlay.d.ts +1 -0
- package/dist/editor/FieldActionsOverlay.js +45 -1
- package/dist/editor/FieldActionsOverlay.js.map +1 -1
- package/dist/editor/FieldListField.d.ts +1 -1
- package/dist/editor/FieldListField.js +18 -20
- package/dist/editor/FieldListField.js.map +1 -1
- package/dist/editor/ImageEditor.d.ts +1 -6
- package/dist/editor/ImageEditor.js +3 -19
- package/dist/editor/ImageEditor.js.map +1 -1
- package/dist/editor/PictureEditor.d.ts +1 -2
- package/dist/editor/PictureEditor.js +14 -5
- package/dist/editor/PictureEditor.js.map +1 -1
- package/dist/editor/ai/Agents.js +2 -2
- package/dist/editor/ai/Agents.js.map +1 -1
- package/dist/editor/ai/GuidanceOverlay.js +11 -1
- package/dist/editor/ai/GuidanceOverlay.js.map +1 -1
- package/dist/editor/ai/InlineAiDialog.js +11 -22
- package/dist/editor/ai/InlineAiDialog.js.map +1 -1
- package/dist/editor/ai/InlineAiTrigger.js +57 -17
- package/dist/editor/ai/InlineAiTrigger.js.map +1 -1
- package/dist/editor/ai/dialogs/capturePageDom.js +36 -66
- package/dist/editor/ai/dialogs/capturePageDom.js.map +1 -1
- package/dist/editor/ai/dialogs/capturePageScreenshot.js +162 -281
- package/dist/editor/ai/dialogs/capturePageScreenshot.js.map +1 -1
- package/dist/editor/ai/terminal/agentSessionState.d.ts +0 -3
- package/dist/editor/ai/terminal/agentSessionState.js +1 -3
- package/dist/editor/ai/terminal/agentSessionState.js.map +1 -1
- package/dist/editor/ai/terminal/agentStartRequest.d.ts +1 -2
- package/dist/editor/ai/terminal/agentStartRequest.js +1 -2
- package/dist/editor/ai/terminal/agentStartRequest.js.map +1 -1
- package/dist/editor/ai/terminal/components/AgentCostDisplay.js +1 -1
- package/dist/editor/ai/terminal/components/AgentCostDisplay.js.map +1 -1
- package/dist/editor/ai/terminal/components/AgentDocumentList.d.ts +0 -7
- package/dist/editor/ai/terminal/components/AgentDocumentList.js +13 -55
- package/dist/editor/ai/terminal/components/AgentDocumentList.js.map +1 -1
- package/dist/editor/ai/terminal/components/AgentFullPromptControls.d.ts +1 -3
- package/dist/editor/ai/terminal/components/AgentFullPromptControls.js +14 -22
- package/dist/editor/ai/terminal/components/AgentFullPromptControls.js.map +1 -1
- package/dist/editor/ai/terminal/components/AgentModeSelector.js +4 -4
- package/dist/editor/ai/terminal/components/AgentModeSelector.js.map +1 -1
- package/dist/editor/ai/terminal/components/AgentPromptActionButtons.js +4 -4
- package/dist/editor/ai/terminal/components/AgentPromptActionButtons.js.map +1 -1
- package/dist/editor/ai/terminal/components/AgentPromptComposer.js +1 -1
- package/dist/editor/ai/terminal/components/AgentPromptComposer.js.map +1 -1
- package/dist/editor/ai/terminal/components/AgentPromptInputArea.d.ts +1 -2
- package/dist/editor/ai/terminal/components/AgentPromptInputArea.js +11 -8
- package/dist/editor/ai/terminal/components/AgentPromptInputArea.js.map +1 -1
- package/dist/editor/ai/terminal/components/AgentPromptTrayPopovers.d.ts +4 -1
- package/dist/editor/ai/terminal/components/AgentPromptTrayPopovers.js +14 -31
- package/dist/editor/ai/terminal/components/AgentPromptTrayPopovers.js.map +1 -1
- package/dist/editor/ai/terminal/components/AgentSettingsPopover.js +1 -1
- package/dist/editor/ai/terminal/components/AgentSettingsPopover.js.map +1 -1
- package/dist/editor/ai/terminal/components/AgentTerminalFullLayout.d.ts +1 -2
- package/dist/editor/ai/terminal/components/AgentTerminalFullLayout.js +4 -2
- package/dist/editor/ai/terminal/components/AgentTerminalFullLayout.js.map +1 -1
- package/dist/editor/ai/terminal/components/AgentTerminalMessageGroups.js +1 -1
- package/dist/editor/ai/terminal/components/AgentTerminalMessageGroups.js.map +1 -1
- package/dist/editor/ai/terminal/components/AgentTerminalView.js +2 -13
- package/dist/editor/ai/terminal/components/AgentTerminalView.js.map +1 -1
- package/dist/editor/ai/terminal/components/AiResponseMessage.js +14 -16
- package/dist/editor/ai/terminal/components/AiResponseMessage.js.map +1 -1
- package/dist/editor/ai/terminal/components/ContextInfoBar.js +2 -22
- package/dist/editor/ai/terminal/components/ContextInfoBar.js.map +1 -1
- package/dist/editor/ai/terminal/components/QueuedPromptsPanel.js +26 -37
- package/dist/editor/ai/terminal/components/QueuedPromptsPanel.js.map +1 -1
- package/dist/editor/ai/terminal/components/UserMessage.d.ts +1 -2
- package/dist/editor/ai/terminal/components/UserMessage.js +8 -144
- package/dist/editor/ai/terminal/components/UserMessage.js.map +1 -1
- package/dist/editor/ai/terminal/useAgentPromptComposerHandlers.js +1 -1
- package/dist/editor/ai/terminal/useAgentPromptComposerHandlers.js.map +1 -1
- package/dist/editor/ai/terminal/useAgentSessionSync.d.ts +0 -1
- package/dist/editor/ai/terminal/useAgentSubmitHandlers.d.ts +1 -3
- package/dist/editor/ai/terminal/useAgentSubmitHandlers.js +3 -9
- package/dist/editor/ai/terminal/useAgentSubmitHandlers.js.map +1 -1
- package/dist/editor/ai/terminal/useAgentTerminalController.js +0 -7
- package/dist/editor/ai/terminal/useAgentTerminalController.js.map +1 -1
- package/dist/editor/ai/terminal/useAgentTerminalUiState.js +1 -1
- package/dist/editor/ai/terminal/useAgentTerminalUiState.js.map +1 -1
- package/dist/editor/ai/terminal/useAgentUserMessageSocketHandler.js +1 -3
- package/dist/editor/ai/terminal/useAgentUserMessageSocketHandler.js.map +1 -1
- package/dist/editor/ai/useInlineAiPosition.d.ts +1 -1
- package/dist/editor/ai/useInlineAiPosition.js +52 -22
- package/dist/editor/ai/useInlineAiPosition.js.map +1 -1
- package/dist/editor/ai-image-editor/AiImageResultOverlay.js +62 -30
- package/dist/editor/ai-image-editor/AiImageResultOverlay.js.map +1 -1
- package/dist/editor/client/EditorShell.d.ts +1 -5
- package/dist/editor/client/EditorShell.js +136 -285
- package/dist/editor/client/EditorShell.js.map +1 -1
- package/dist/editor/client/editContext.d.ts +5 -33
- package/dist/editor/client/editContext.js.map +1 -1
- package/dist/editor/client/hooks/useSocketMessageHandler.js +17 -14
- package/dist/editor/client/hooks/useSocketMessageHandler.js.map +1 -1
- package/dist/editor/client/itemsRepository.d.ts +0 -2
- package/dist/editor/client/itemsRepository.js +8 -15
- package/dist/editor/client/itemsRepository.js.map +1 -1
- package/dist/editor/client/operations.d.ts +1 -1
- package/dist/editor/client/operations.js +17 -41
- package/dist/editor/client/operations.js.map +1 -1
- package/dist/editor/client/pageModelBuilder.js +7 -24
- package/dist/editor/client/pageModelBuilder.js.map +1 -1
- package/dist/editor/commands/handlers/uiActionHandlers.js +5 -1
- package/dist/editor/commands/handlers/uiActionHandlers.js.map +1 -1
- package/dist/editor/editor-warnings/FinalWorkflowStateReadOnly.js +5 -0
- package/dist/editor/editor-warnings/FinalWorkflowStateReadOnly.js.map +1 -1
- package/dist/editor/editor-warnings/ItemLocked.js +6 -3
- package/dist/editor/editor-warnings/ItemLocked.js.map +1 -1
- package/dist/editor/field-types/MultiLineText.js +3 -10
- package/dist/editor/field-types/MultiLineText.js.map +1 -1
- package/dist/editor/field-types/RawEditor.js +1 -8
- package/dist/editor/field-types/RawEditor.js.map +1 -1
- package/dist/editor/field-types/RichTextEditorComponent.js +45 -156
- package/dist/editor/field-types/RichTextEditorComponent.js.map +1 -1
- package/dist/editor/field-types/SingleLineText.js +3 -10
- package/dist/editor/field-types/SingleLineText.js.map +1 -1
- package/dist/editor/field-types/richtext/components/ReactSlate.js +2 -8
- package/dist/editor/field-types/richtext/components/ReactSlate.js.map +1 -1
- package/dist/editor/field-types/richtext/contextMenuFactory.d.ts +2 -1
- package/dist/editor/field-types/richtext/contextMenuFactory.js +303 -100
- package/dist/editor/field-types/richtext/contextMenuFactory.js.map +1 -1
- package/dist/editor/field-types/richtext/types.d.ts +0 -2
- package/dist/editor/field-types/richtext/types.js.map +1 -1
- package/dist/editor/media-selector/MediaFolderBrowser.d.ts +2 -1
- package/dist/editor/media-selector/MediaFolderBrowser.js +19 -9
- package/dist/editor/media-selector/MediaFolderBrowser.js.map +1 -1
- package/dist/editor/media-selector/TreeSelector.js +30 -24
- package/dist/editor/media-selector/TreeSelector.js.map +1 -1
- package/dist/editor/media-selector/UploadZone.d.ts +2 -1
- package/dist/editor/media-selector/UploadZone.js +21 -9
- package/dist/editor/media-selector/UploadZone.js.map +1 -1
- package/dist/editor/menubar/PageSelector.js +2 -8
- package/dist/editor/menubar/PageSelector.js.map +1 -1
- package/dist/editor/menubar/VersionPreviewCard.js +249 -4
- package/dist/editor/menubar/VersionPreviewCard.js.map +1 -1
- package/dist/editor/menubar/toolbar-sections/EditControls.js +2 -2
- package/dist/editor/menubar/toolbar-sections/EditControls.js.map +1 -1
- package/dist/editor/menubar/toolbar-sections/ManualBrowser.d.ts +10 -0
- package/dist/editor/menubar/toolbar-sections/ManualBrowser.js +462 -63
- package/dist/editor/menubar/toolbar-sections/ManualBrowser.js.map +1 -1
- package/dist/editor/menubar/toolbar-sections/ViewportControls.js +1 -1
- package/dist/editor/page-editor-chrome/CommentHighlightings.d.ts +2 -5
- package/dist/editor/page-editor-chrome/CommentHighlightings.js +215 -340
- package/dist/editor/page-editor-chrome/CommentHighlightings.js.map +1 -1
- package/dist/editor/page-editor-chrome/FeedbackHighlightBadge.d.ts +1 -5
- package/dist/editor/page-editor-chrome/FeedbackHighlightBadge.js +4 -11
- package/dist/editor/page-editor-chrome/FeedbackHighlightBadge.js.map +1 -1
- package/dist/editor/page-editor-chrome/FieldActionIndicator.js +13 -21
- package/dist/editor/page-editor-chrome/FieldActionIndicator.js.map +1 -1
- package/dist/editor/page-editor-chrome/FieldEditedIndicator.js +29 -23
- package/dist/editor/page-editor-chrome/FieldEditedIndicator.js.map +1 -1
- package/dist/editor/page-editor-chrome/FrameMenu.js +19 -110
- package/dist/editor/page-editor-chrome/FrameMenu.js.map +1 -1
- package/dist/editor/page-editor-chrome/InlineEditor.d.ts +7 -0
- package/dist/editor/page-editor-chrome/InlineEditor.js +1719 -0
- package/dist/editor/page-editor-chrome/InlineEditor.js.map +1 -0
- package/dist/editor/page-editor-chrome/LockedFieldIndicator.d.ts +2 -3
- package/dist/editor/page-editor-chrome/LockedFieldIndicator.js +45 -148
- package/dist/editor/page-editor-chrome/LockedFieldIndicator.js.map +1 -1
- package/dist/editor/page-editor-chrome/PageEditorChrome.d.ts +0 -2
- package/dist/editor/page-editor-chrome/PageEditorChrome.js +21 -25
- package/dist/editor/page-editor-chrome/PageEditorChrome.js.map +1 -1
- package/dist/editor/page-editor-chrome/PictureEditorOverlay.js +128 -163
- package/dist/editor/page-editor-chrome/PictureEditorOverlay.js.map +1 -1
- package/dist/editor/page-editor-chrome/PlaceholderDropZone.d.ts +1 -1
- package/dist/editor/page-editor-chrome/PlaceholderDropZone.js +3 -6
- package/dist/editor/page-editor-chrome/PlaceholderDropZone.js.map +1 -1
- package/dist/editor/page-editor-chrome/PlaceholderDropZones.d.ts +2 -1
- package/dist/editor/page-editor-chrome/PlaceholderDropZones.js +146 -83
- package/dist/editor/page-editor-chrome/PlaceholderDropZones.js.map +1 -1
- package/dist/editor/page-editor-chrome/SuggestionHighlightings.d.ts +2 -5
- package/dist/editor/page-editor-chrome/SuggestionHighlightings.js +63 -144
- package/dist/editor/page-editor-chrome/SuggestionHighlightings.js.map +1 -1
- package/dist/editor/page-editor-chrome/VersionDiffHighlightings.d.ts +2 -1
- package/dist/editor/page-editor-chrome/VersionDiffHighlightings.js +30 -101
- package/dist/editor/page-editor-chrome/VersionDiffHighlightings.js.map +1 -1
- package/dist/editor/page-editor-chrome/overlay/IframeOverlayProvider.d.ts +1 -10
- package/dist/editor/page-editor-chrome/overlay/IframeOverlayProvider.js +122 -105
- package/dist/editor/page-editor-chrome/overlay/IframeOverlayProvider.js.map +1 -1
- package/dist/editor/page-editor-chrome/overlay/geometry.d.ts +4 -11
- package/dist/editor/page-editor-chrome/overlay/geometry.js +36 -139
- package/dist/editor/page-editor-chrome/overlay/geometry.js.map +1 -1
- package/dist/editor/page-editor-chrome/overlay/iframeAccess.d.ts +2 -0
- package/dist/editor/page-editor-chrome/overlay/iframeAccess.js +21 -0
- package/dist/editor/page-editor-chrome/overlay/iframeAccess.js.map +1 -0
- package/dist/editor/page-editor-chrome/useInlineAICompletion.d.ts +7 -0
- package/dist/editor/page-editor-chrome/useInlineAICompletion.js +758 -0
- package/dist/editor/page-editor-chrome/useInlineAICompletion.js.map +1 -0
- package/dist/editor/page-viewer/EditorForm.js +1 -17
- package/dist/editor/page-viewer/EditorForm.js.map +1 -1
- package/dist/editor/page-viewer/MiniMap.d.ts +2 -2
- package/dist/editor/page-viewer/MiniMap.js +364 -176
- package/dist/editor/page-viewer/MiniMap.js.map +1 -1
- package/dist/editor/page-viewer/PageViewer.js +13 -40
- package/dist/editor/page-viewer/PageViewer.js.map +1 -1
- package/dist/editor/page-viewer/PageViewerFrame.d.ts +5 -0
- package/dist/editor/page-viewer/PageViewerFrame.js +1509 -1527
- package/dist/editor/page-viewer/PageViewerFrame.js.map +1 -1
- package/dist/editor/page-viewer/pageModelSkeletonBuilder.d.ts +3 -0
- package/dist/editor/page-viewer/pageModelSkeletonBuilder.js +796 -0
- package/dist/editor/page-viewer/pageModelSkeletonBuilder.js.map +1 -0
- package/dist/editor/page-viewer/pageViewContext.d.ts +0 -32
- package/dist/editor/page-viewer/pageViewContext.js +6 -37
- package/dist/editor/page-viewer/pageViewContext.js.map +1 -1
- package/dist/editor/reviews/Comment.d.ts +1 -2
- package/dist/editor/reviews/Comment.js +4 -9
- package/dist/editor/reviews/Comment.js.map +1 -1
- package/dist/editor/reviews/CommentEditor.js +1 -1
- package/dist/editor/reviews/CommentEditor.js.map +1 -1
- package/dist/editor/reviews/CommentPopover.js +9 -68
- package/dist/editor/reviews/CommentPopover.js.map +1 -1
- package/dist/editor/reviews/CommentView.js +4 -24
- package/dist/editor/reviews/CommentView.js.map +1 -1
- package/dist/editor/reviews/Comments.d.ts +2 -0
- package/dist/editor/reviews/Comments.js +30 -29
- package/dist/editor/reviews/Comments.js.map +1 -1
- package/dist/editor/reviews/FeedbackCard.d.ts +2 -4
- package/dist/editor/reviews/FeedbackCard.js +5 -5
- package/dist/editor/reviews/FeedbackCard.js.map +1 -1
- package/dist/editor/reviews/SuggestedEdit.js +6 -4
- package/dist/editor/reviews/SuggestedEdit.js.map +1 -1
- package/dist/editor/reviews/SuggestionDisplayPopover.js +2 -3
- package/dist/editor/reviews/SuggestionDisplayPopover.js.map +1 -1
- package/dist/editor/reviews/commentAi.js +27 -96
- package/dist/editor/reviews/commentAi.js.map +1 -1
- package/dist/editor/reviews/feedbackSelection.js +4 -32
- package/dist/editor/reviews/feedbackSelection.js.map +1 -1
- package/dist/editor/services/agentService.d.ts +0 -15
- package/dist/editor/services/agentService.js +1 -11
- package/dist/editor/services/agentService.js.map +1 -1
- package/dist/editor/services/contentService.d.ts +1 -0
- package/dist/editor/services/contentService.js.map +1 -1
- package/dist/editor/services/reviewsService.d.ts +2 -2
- package/dist/editor/services/reviewsService.js.map +1 -1
- package/dist/editor/settings/SettingsView.js +2 -2
- package/dist/editor/settings/SettingsView.js.map +1 -1
- package/dist/editor/settings/panels/ProjectTemplatesPanel.js +1 -1
- package/dist/editor/settings/panels/ProjectTemplatesPanel.js.map +1 -1
- package/dist/editor/settings/panels/ProvidersPanel.js +3 -2
- package/dist/editor/settings/panels/ProvidersPanel.js.map +1 -1
- package/dist/editor/sidebar/MorePanelsButton.js +1 -1
- package/dist/editor/sidebar/MorePanelsButton.js.map +1 -1
- package/dist/editor/sidebar/Workbox.js +1 -1
- package/dist/editor/sidebar/Workbox.js.map +1 -1
- package/dist/editor/ui/IconSelectorDialog.js +1 -1
- package/dist/editor/ui/IconSelectorDialog.js.map +1 -1
- package/dist/editor/ui/SimpleIconButton.d.ts +2 -2
- package/dist/editor/ui/SimpleIconButton.js +1 -1
- package/dist/editor/ui/SimpleIconButton.js.map +1 -1
- package/dist/editor/utils.d.ts +17 -1
- package/dist/editor/utils.js +143 -0
- package/dist/editor/utils.js.map +1 -1
- package/dist/editor/version-diff/versionDiffTargets.d.ts +8 -3
- package/dist/editor/version-diff/versionDiffTargets.js +94 -37
- package/dist/editor/version-diff/versionDiffTargets.js.map +1 -1
- package/dist/editor/views/MediaFolderEditView.js +1 -1
- package/dist/editor/views/MediaFolderEditView.js.map +1 -1
- package/dist/revision.d.ts +2 -2
- package/dist/revision.js +2 -2
- package/dist/splash-screen/DialogWrappers.js +2 -2
- package/dist/splash-screen/DialogWrappers.js.map +1 -1
- package/dist/splash-screen/ModernSplashScreen.js +3 -11
- package/dist/splash-screen/ModernSplashScreen.js.map +1 -1
- package/dist/splash-screen/NewPage.js +5 -7
- package/dist/splash-screen/NewPage.js.map +1 -1
- package/dist/splash-screen/OpenPage.js +3 -5
- package/dist/splash-screen/OpenPage.js.map +1 -1
- package/dist/splash-screen/RecentPages.js +3 -3
- package/dist/splash-screen/RecentPages.js.map +1 -1
- package/package.json +1 -2
- package/styles.css +0 -49
- package/dist/editor/ai/terminal/components/AgentEditHistoryButton.d.ts +0 -5
- package/dist/editor/ai/terminal/components/AgentEditHistoryButton.js +0 -12
- package/dist/editor/ai/terminal/components/AgentEditHistoryButton.js.map +0 -1
- package/dist/editor/bridge/BridgeClient.d.ts +0 -80
- package/dist/editor/bridge/BridgeClient.js +0 -417
- package/dist/editor/bridge/BridgeClient.js.map +0 -1
- package/dist/editor/field-types/useFormFieldCaretPresence.d.ts +0 -13
- package/dist/editor/field-types/useFormFieldCaretPresence.js +0 -92
- package/dist/editor/field-types/useFormFieldCaretPresence.js.map +0 -1
- package/dist/editor/page-editor-chrome/BridgeInlineFormatOverlay.d.ts +0 -6
- package/dist/editor/page-editor-chrome/BridgeInlineFormatOverlay.js +0 -123
- package/dist/editor/page-editor-chrome/BridgeInlineFormatOverlay.js.map +0 -1
- package/dist/editor/page-editor-chrome/useBridgeInlineEditing.d.ts +0 -26
- package/dist/editor/page-editor-chrome/useBridgeInlineEditing.js +0 -222
- package/dist/editor/page-editor-chrome/useBridgeInlineEditing.js.map +0 -1
- package/dist/editor/page-viewer/bridgeFieldPatch.d.ts +0 -20
- package/dist/editor/page-viewer/bridgeFieldPatch.js +0 -33
- package/dist/editor/page-viewer/bridgeFieldPatch.js.map +0 -1
- package/dist/editor/reviews/commentTransientSelection.d.ts +0 -23
- package/dist/editor/reviews/commentTransientSelection.js +0 -7
- package/dist/editor/reviews/commentTransientSelection.js.map +0 -1
- package/dist/editor/reviews/feedbackOrdering.d.ts +0 -5
- package/dist/editor/reviews/feedbackOrdering.js +0 -27
- package/dist/editor/reviews/feedbackOrdering.js.map +0 -1
- package/dist/editor/reviews/suggestedEditState.d.ts +0 -12
- package/dist/editor/reviews/suggestedEditState.js +0 -90
- package/dist/editor/reviews/suggestedEditState.js.map +0 -1
- package/dist/editor/reviews/suggestionDisplayValue.d.ts +0 -43
- package/dist/editor/reviews/suggestionDisplayValue.js +0 -93
- package/dist/editor/reviews/suggestionDisplayValue.js.map +0 -1
|
@@ -4,14 +4,38 @@ import { useEffect, useMemo, useRef, useState } from "react";
|
|
|
4
4
|
import { cn } from "../../lib/utils";
|
|
5
5
|
import { useEditContext } from "../client/editContext";
|
|
6
6
|
import { usePageViewContext } from "../page-viewer/pageViewContext";
|
|
7
|
+
import { fieldKey, findComponentRectById, findFieldElements, getTextNodeAtOffset, resolveVersionDiffTargets, } from "../version-diff/versionDiffTargets";
|
|
8
|
+
import { versionDiffHighlightClasses } from "../version-diff/versionDiffHighlightStyles";
|
|
7
9
|
const SOURCE_WIDTH = 480;
|
|
8
10
|
const SOURCE_HEIGHT = 720;
|
|
9
11
|
const PREVIEW_SCALE = 0.2;
|
|
10
12
|
const PREVIEW_WIDTH = SOURCE_WIDTH * PREVIEW_SCALE;
|
|
11
13
|
const PREVIEW_HEIGHT = SOURCE_HEIGHT * PREVIEW_SCALE;
|
|
14
|
+
const SCROLL_PADDING_TOP = 16;
|
|
15
|
+
function getAccessibleIframeDocument(iframe) {
|
|
16
|
+
if (!iframe)
|
|
17
|
+
return null;
|
|
18
|
+
try {
|
|
19
|
+
return iframe.contentDocument || iframe.contentWindow?.document || null;
|
|
20
|
+
}
|
|
21
|
+
catch {
|
|
22
|
+
return null;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
function getAccessibleIframeWindow(iframe) {
|
|
26
|
+
if (!iframe)
|
|
27
|
+
return null;
|
|
28
|
+
try {
|
|
29
|
+
return iframe.contentWindow;
|
|
30
|
+
}
|
|
31
|
+
catch {
|
|
32
|
+
return null;
|
|
33
|
+
}
|
|
34
|
+
}
|
|
12
35
|
export function VersionPreviewCard({ itemDescriptor, version, className, }) {
|
|
13
36
|
const rootRef = useRef(null);
|
|
14
37
|
const [isInViewport, setIsInViewport] = useState(false);
|
|
38
|
+
const [iframe, setIframe] = useState(null);
|
|
15
39
|
useEffect(() => {
|
|
16
40
|
const element = rootRef.current;
|
|
17
41
|
if (!element)
|
|
@@ -29,9 +53,35 @@ export function VersionPreviewCard({ itemDescriptor, version, className, }) {
|
|
|
29
53
|
observer.observe(element);
|
|
30
54
|
return () => observer.disconnect();
|
|
31
55
|
}, []);
|
|
32
|
-
|
|
56
|
+
const handleWheel = (event) => {
|
|
57
|
+
const iframeWindow = getAccessibleIframeWindow(iframe);
|
|
58
|
+
const iframeDocument = getAccessibleIframeDocument(iframe);
|
|
59
|
+
const scrollElement = iframeDocument?.scrollingElement || iframeDocument?.documentElement;
|
|
60
|
+
if (!iframeWindow || !scrollElement)
|
|
61
|
+
return;
|
|
62
|
+
const canScrollY = scrollElement.scrollHeight > scrollElement.clientHeight &&
|
|
63
|
+
((event.deltaY < 0 && scrollElement.scrollTop > 0) ||
|
|
64
|
+
(event.deltaY > 0 &&
|
|
65
|
+
scrollElement.scrollTop + scrollElement.clientHeight <
|
|
66
|
+
scrollElement.scrollHeight));
|
|
67
|
+
const canScrollX = scrollElement.scrollWidth > scrollElement.clientWidth &&
|
|
68
|
+
((event.deltaX < 0 && scrollElement.scrollLeft > 0) ||
|
|
69
|
+
(event.deltaX > 0 &&
|
|
70
|
+
scrollElement.scrollLeft + scrollElement.clientWidth <
|
|
71
|
+
scrollElement.scrollWidth));
|
|
72
|
+
if (!canScrollY && !canScrollX)
|
|
73
|
+
return;
|
|
74
|
+
event.preventDefault();
|
|
75
|
+
event.stopPropagation();
|
|
76
|
+
iframeWindow.scrollBy({
|
|
77
|
+
top: event.deltaY,
|
|
78
|
+
left: event.deltaX,
|
|
79
|
+
behavior: "instant",
|
|
80
|
+
});
|
|
81
|
+
};
|
|
82
|
+
return (_jsx("div", { ref: rootRef, onWheel: handleWheel, className: cn("border-border-default relative shrink-0 overflow-hidden rounded border bg-white shadow-sm", className), "data-testid": "version-preview-card", style: { width: PREVIEW_WIDTH, height: PREVIEW_HEIGHT }, "aria-hidden": "true", children: isInViewport ? (_jsx(VersionPreviewCardContent, { itemDescriptor: itemDescriptor, version: version, iframe: iframe, setIframe: setIframe })) : (_jsx("div", { className: "bg-neutral-grey-5 absolute inset-0" })) }));
|
|
33
83
|
}
|
|
34
|
-
function VersionPreviewCardContent({ itemDescriptor, version, }) {
|
|
84
|
+
function VersionPreviewCardContent({ itemDescriptor, version, iframe, setIframe, }) {
|
|
35
85
|
const editContext = useEditContext();
|
|
36
86
|
const [loaded, setLoaded] = useState(false);
|
|
37
87
|
const descriptor = useMemo(() => ({
|
|
@@ -54,15 +104,45 @@ function VersionPreviewCardContent({ itemDescriptor, version, }) {
|
|
|
54
104
|
const previewSrc = pageView.editUrl || pageView.previewUrl;
|
|
55
105
|
useEffect(() => {
|
|
56
106
|
setLoaded(false);
|
|
107
|
+
setIframe(null);
|
|
57
108
|
}, [previewSrc]);
|
|
58
109
|
if (!previewSrc) {
|
|
59
110
|
return (_jsx("div", { className: "bg-neutral-grey-5 text-neutral-grey-50 absolute inset-0 flex items-center justify-center text-[10px]", children: "No preview" }));
|
|
60
111
|
}
|
|
61
|
-
return (_jsxs(_Fragment, { children: [!loaded && (_jsx("div", { className: "bg-neutral-grey-5 absolute inset-0 z-10 animate-pulse" })), _jsx("iframe", { title: `Version ${version} preview`, src: previewSrc, tabIndex: -1, loading: "lazy", onLoad: () => setLoaded(true), className: "pointer-events-none origin-top-left border-0", style: {
|
|
112
|
+
return (_jsxs(_Fragment, { children: [!loaded && (_jsx("div", { className: "bg-neutral-grey-5 absolute inset-0 z-10 animate-pulse" })), _jsx("iframe", { ref: setIframe, title: `Version ${version} preview`, src: previewSrc, tabIndex: -1, loading: "lazy", onLoad: () => setLoaded(true), className: "pointer-events-none origin-top-left border-0", style: {
|
|
62
113
|
width: SOURCE_WIDTH,
|
|
63
114
|
height: SOURCE_HEIGHT,
|
|
64
115
|
transform: `scale(${PREVIEW_SCALE})`,
|
|
65
|
-
} }, previewSrc)] }));
|
|
116
|
+
} }, previewSrc), loaded && iframe && editContext?.itemsRepository && (_jsx(VersionPreviewDiffOverlay, { iframe: iframe, pageItem: descriptor, scale: PREVIEW_SCALE }))] }));
|
|
117
|
+
}
|
|
118
|
+
function scrollIframeToFirstTarget(iframe, fieldTargets, componentTargets) {
|
|
119
|
+
const win = iframe.contentWindow;
|
|
120
|
+
if (!win)
|
|
121
|
+
return;
|
|
122
|
+
const currentScroll = win.scrollY;
|
|
123
|
+
let topMost = null;
|
|
124
|
+
for (const target of componentTargets) {
|
|
125
|
+
const rect = findComponentRectById(iframe, target.visualId);
|
|
126
|
+
if (!rect)
|
|
127
|
+
continue;
|
|
128
|
+
const docTop = rect.top + currentScroll;
|
|
129
|
+
if (topMost == null || docTop < topMost)
|
|
130
|
+
topMost = docTop;
|
|
131
|
+
}
|
|
132
|
+
for (const target of fieldTargets) {
|
|
133
|
+
for (const element of findFieldElements(iframe, target.descriptor)) {
|
|
134
|
+
const docTop = element.getBoundingClientRect().top + currentScroll;
|
|
135
|
+
if (topMost == null || docTop < topMost)
|
|
136
|
+
topMost = docTop;
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
if (topMost == null)
|
|
140
|
+
return;
|
|
141
|
+
win.scrollTo({
|
|
142
|
+
top: Math.max(0, topMost - SCROLL_PADDING_TOP),
|
|
143
|
+
left: 0,
|
|
144
|
+
behavior: "instant",
|
|
145
|
+
});
|
|
66
146
|
}
|
|
67
147
|
function findScrollParent(element) {
|
|
68
148
|
let parent = element.parentElement;
|
|
@@ -75,4 +155,169 @@ function findScrollParent(element) {
|
|
|
75
155
|
}
|
|
76
156
|
return null;
|
|
77
157
|
}
|
|
158
|
+
function VersionPreviewDiffOverlay({ iframe, pageItem, scale, }) {
|
|
159
|
+
const editContext = useEditContext();
|
|
160
|
+
const itemsRepository = editContext?.itemsRepository;
|
|
161
|
+
const previousVersionCache = useRef(new Map());
|
|
162
|
+
const [targets, setTargets] = useState([]);
|
|
163
|
+
const [componentTargets, setComponentTargets] = useState([]);
|
|
164
|
+
useEffect(() => {
|
|
165
|
+
if (!itemsRepository) {
|
|
166
|
+
setTargets([]);
|
|
167
|
+
setComponentTargets([]);
|
|
168
|
+
return;
|
|
169
|
+
}
|
|
170
|
+
let cancelled = false;
|
|
171
|
+
const resolveTargets = async () => {
|
|
172
|
+
const nextTargets = await resolveVersionDiffTargets({
|
|
173
|
+
iframe,
|
|
174
|
+
pageItem,
|
|
175
|
+
getItem: itemsRepository.getItem,
|
|
176
|
+
baseline: { type: "previous" },
|
|
177
|
+
previousVersionCache: previousVersionCache.current,
|
|
178
|
+
});
|
|
179
|
+
if (cancelled)
|
|
180
|
+
return;
|
|
181
|
+
scrollIframeToFirstTarget(iframe, nextTargets.fieldTargets, nextTargets.componentTargets);
|
|
182
|
+
setTargets(nextTargets.fieldTargets);
|
|
183
|
+
setComponentTargets(nextTargets.componentTargets);
|
|
184
|
+
};
|
|
185
|
+
resolveTargets();
|
|
186
|
+
return () => {
|
|
187
|
+
cancelled = true;
|
|
188
|
+
};
|
|
189
|
+
}, [
|
|
190
|
+
iframe,
|
|
191
|
+
itemsRepository,
|
|
192
|
+
itemsRepository?.revision,
|
|
193
|
+
pageItem.database,
|
|
194
|
+
pageItem.id,
|
|
195
|
+
pageItem.language,
|
|
196
|
+
pageItem.version,
|
|
197
|
+
]);
|
|
198
|
+
if (targets.length === 0 && componentTargets.length === 0)
|
|
199
|
+
return null;
|
|
200
|
+
return (_jsxs("div", { className: "pointer-events-none absolute inset-0", children: [componentTargets.map((target) => (_jsx(MiniComponentHighlight, { iframe: iframe, scale: scale, target: target }, target.id))), targets.map((target) => (_jsx(MiniFieldHighlight, { iframe: iframe, scale: scale, target: target }, fieldKey(target.descriptor))))] }));
|
|
201
|
+
}
|
|
202
|
+
function MiniComponentHighlight({ iframe, scale, target, }) {
|
|
203
|
+
const [rect, setRect] = useState(null);
|
|
204
|
+
useEffect(() => {
|
|
205
|
+
const iframeDoc = getAccessibleIframeDocument(iframe);
|
|
206
|
+
if (!iframeDoc?.body) {
|
|
207
|
+
setRect(null);
|
|
208
|
+
return;
|
|
209
|
+
}
|
|
210
|
+
let rafId = null;
|
|
211
|
+
const calculateRect = () => {
|
|
212
|
+
setRect(findComponentRectById(iframe, target.visualId));
|
|
213
|
+
};
|
|
214
|
+
const scheduleUpdate = () => {
|
|
215
|
+
if (rafId != null)
|
|
216
|
+
window.cancelAnimationFrame(rafId);
|
|
217
|
+
rafId = window.requestAnimationFrame(() => {
|
|
218
|
+
rafId = null;
|
|
219
|
+
calculateRect();
|
|
220
|
+
});
|
|
221
|
+
};
|
|
222
|
+
calculateRect();
|
|
223
|
+
const timeoutId = window.setTimeout(calculateRect, 300);
|
|
224
|
+
const scrollContainer = iframeDoc.scrollingElement || iframeDoc.body;
|
|
225
|
+
const iframeWindow = getAccessibleIframeWindow(iframe);
|
|
226
|
+
scrollContainer?.addEventListener("scroll", scheduleUpdate, {
|
|
227
|
+
passive: true,
|
|
228
|
+
});
|
|
229
|
+
iframeWindow?.addEventListener("scroll", scheduleUpdate, { passive: true });
|
|
230
|
+
iframeWindow?.addEventListener("resize", scheduleUpdate);
|
|
231
|
+
return () => {
|
|
232
|
+
if (rafId != null)
|
|
233
|
+
window.cancelAnimationFrame(rafId);
|
|
234
|
+
window.clearTimeout(timeoutId);
|
|
235
|
+
scrollContainer?.removeEventListener("scroll", scheduleUpdate);
|
|
236
|
+
iframeWindow?.removeEventListener("scroll", scheduleUpdate);
|
|
237
|
+
iframeWindow?.removeEventListener("resize", scheduleUpdate);
|
|
238
|
+
};
|
|
239
|
+
}, [iframe, target.visualId]);
|
|
240
|
+
if (!rect)
|
|
241
|
+
return null;
|
|
242
|
+
return (_jsx("div", { className: versionDiffHighlightClasses.componentMini, "data-testid": "version-preview-diff-highlight", style: {
|
|
243
|
+
top: rect.top * scale,
|
|
244
|
+
left: rect.left * scale,
|
|
245
|
+
width: Math.max(rect.width * scale, 2),
|
|
246
|
+
height: Math.max(rect.height * scale, 2),
|
|
247
|
+
} }));
|
|
248
|
+
}
|
|
249
|
+
function MiniFieldHighlight({ iframe, scale, target, }) {
|
|
250
|
+
const [rects, setRects] = useState([]);
|
|
251
|
+
useEffect(() => {
|
|
252
|
+
const iframeDoc = getAccessibleIframeDocument(iframe);
|
|
253
|
+
if (!iframeDoc?.body) {
|
|
254
|
+
setRects([]);
|
|
255
|
+
return;
|
|
256
|
+
}
|
|
257
|
+
let rafId = null;
|
|
258
|
+
const calculateRects = () => {
|
|
259
|
+
const elements = findFieldElements(iframe, target.descriptor);
|
|
260
|
+
const nextRects = [];
|
|
261
|
+
elements.forEach((element) => {
|
|
262
|
+
if (target.hasDeletionOnlyChange) {
|
|
263
|
+
nextRects.push(element.getBoundingClientRect());
|
|
264
|
+
return;
|
|
265
|
+
}
|
|
266
|
+
target.ranges
|
|
267
|
+
.filter(([start, end]) => start < end)
|
|
268
|
+
.forEach(([start, end]) => {
|
|
269
|
+
const startData = getTextNodeAtOffset(element, start);
|
|
270
|
+
const endData = getTextNodeAtOffset(element, end);
|
|
271
|
+
if (!startData || !endData)
|
|
272
|
+
return;
|
|
273
|
+
try {
|
|
274
|
+
const textRange = iframeDoc.createRange();
|
|
275
|
+
textRange.setStart(startData.node, startData.offset);
|
|
276
|
+
textRange.setEnd(endData.node, endData.offset);
|
|
277
|
+
nextRects.push(...Array.from(textRange.getClientRects()));
|
|
278
|
+
}
|
|
279
|
+
catch {
|
|
280
|
+
nextRects.push(element.getBoundingClientRect());
|
|
281
|
+
}
|
|
282
|
+
});
|
|
283
|
+
});
|
|
284
|
+
setRects(nextRects);
|
|
285
|
+
};
|
|
286
|
+
const scheduleUpdate = () => {
|
|
287
|
+
if (rafId != null)
|
|
288
|
+
window.cancelAnimationFrame(rafId);
|
|
289
|
+
rafId = window.requestAnimationFrame(() => {
|
|
290
|
+
rafId = null;
|
|
291
|
+
calculateRects();
|
|
292
|
+
});
|
|
293
|
+
};
|
|
294
|
+
calculateRects();
|
|
295
|
+
const timeoutId = window.setTimeout(calculateRects, 300);
|
|
296
|
+
const scrollContainer = iframeDoc.scrollingElement || iframeDoc.body;
|
|
297
|
+
const iframeWindow = getAccessibleIframeWindow(iframe);
|
|
298
|
+
scrollContainer?.addEventListener("scroll", scheduleUpdate, {
|
|
299
|
+
passive: true,
|
|
300
|
+
});
|
|
301
|
+
iframeWindow?.addEventListener("scroll", scheduleUpdate, { passive: true });
|
|
302
|
+
iframeWindow?.addEventListener("resize", scheduleUpdate);
|
|
303
|
+
return () => {
|
|
304
|
+
if (rafId != null)
|
|
305
|
+
window.cancelAnimationFrame(rafId);
|
|
306
|
+
window.clearTimeout(timeoutId);
|
|
307
|
+
scrollContainer?.removeEventListener("scroll", scheduleUpdate);
|
|
308
|
+
iframeWindow?.removeEventListener("scroll", scheduleUpdate);
|
|
309
|
+
iframeWindow?.removeEventListener("resize", scheduleUpdate);
|
|
310
|
+
};
|
|
311
|
+
}, [iframe, target]);
|
|
312
|
+
if (rects.length === 0)
|
|
313
|
+
return null;
|
|
314
|
+
return (_jsx(_Fragment, { children: rects.map((rect, index) => (_jsx("div", { className: target.hasDeletionOnlyChange
|
|
315
|
+
? versionDiffHighlightClasses.deletionOnlyMini
|
|
316
|
+
: versionDiffHighlightClasses.textMini, "data-testid": "version-preview-diff-highlight", style: {
|
|
317
|
+
top: rect.top * scale,
|
|
318
|
+
left: rect.left * scale,
|
|
319
|
+
width: Math.max(rect.width * scale, 2),
|
|
320
|
+
height: Math.max(rect.height * scale, 2),
|
|
321
|
+
} }, index))) }));
|
|
322
|
+
}
|
|
78
323
|
//# sourceMappingURL=VersionPreviewCard.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VersionPreviewCard.js","sourceRoot":"","sources":["../../../src/editor/menubar/VersionPreviewCard.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"VersionPreviewCard.js","sourceRoot":"","sources":["../../../src/editor/menubar/VersionPreviewCard.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAmB,MAAM,OAAO,CAAC;AAE9E,OAAO,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAC;AACrC,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAEvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EACL,QAAQ,EACR,qBAAqB,EACrB,iBAAiB,EACjB,mBAAmB,EACnB,yBAAyB,GAG1B,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,2BAA2B,EAAE,MAAM,4CAA4C,CAAC;AAEzF,MAAM,YAAY,GAAG,GAAG,CAAC;AACzB,MAAM,aAAa,GAAG,GAAG,CAAC;AAC1B,MAAM,aAAa,GAAG,GAAG,CAAC;AAC1B,MAAM,aAAa,GAAG,YAAY,GAAG,aAAa,CAAC;AACnD,MAAM,cAAc,GAAG,aAAa,GAAG,aAAa,CAAC;AACrD,MAAM,kBAAkB,GAAG,EAAE,CAAC;AAE9B,SAAS,2BAA2B,CAClC,MAA4C;IAE5C,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IACzB,IAAI,CAAC;QACH,OAAO,MAAM,CAAC,eAAe,IAAI,MAAM,CAAC,aAAa,EAAE,QAAQ,IAAI,IAAI,CAAC;IAC1E,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,SAAS,yBAAyB,CAChC,MAA4C;IAE5C,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IACzB,IAAI,CAAC;QACH,OAAO,MAAM,CAAC,aAAa,CAAC;IAC9B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,EACjC,cAAc,EACd,OAAO,EACP,SAAS,GAKV;IACC,MAAM,OAAO,GAAG,MAAM,CAAwB,IAAI,CAAC,CAAC;IACpD,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACxD,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAA2B,IAAI,CAAC,CAAC;IAErE,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QAChC,IAAI,CAAC,OAAO;YAAE,OAAO;QAErB,IAAI,OAAO,oBAAoB,KAAK,WAAW,EAAE,CAAC;YAChD,eAAe,CAAC,IAAI,CAAC,CAAC;YACtB,OAAO;QACT,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,oBAAoB,CACvC,CAAC,CAAC,KAAK,CAAC,EAAE,EAAE;YACV,eAAe,CAAC,CAAC,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC;QAC3C,CAAC,EACD;YACE,IAAI,EAAE,gBAAgB,CAAC,OAAO,CAAC;YAC/B,SAAS,EAAE,IAAI;SAChB,CACF,CAAC;QAEF,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAC1B,OAAO,GAAG,EAAE,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;IACrC,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,WAAW,GAAG,CAAC,KAAiC,EAAE,EAAE;QACxD,MAAM,YAAY,GAAG,yBAAyB,CAAC,MAAM,CAAC,CAAC;QACvD,MAAM,cAAc,GAAG,2BAA2B,CAAC,MAAM,CAAC,CAAC;QAC3D,MAAM,aAAa,GACjB,cAAc,EAAE,gBAAgB,IAAI,cAAc,EAAE,eAAe,CAAC;QAEtE,IAAI,CAAC,YAAY,IAAI,CAAC,aAAa;YAAE,OAAO;QAE5C,MAAM,UAAU,GACd,aAAa,CAAC,YAAY,GAAG,aAAa,CAAC,YAAY;YACvD,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,aAAa,CAAC,SAAS,GAAG,CAAC,CAAC;gBAChD,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC;oBACf,aAAa,CAAC,SAAS,GAAG,aAAa,CAAC,YAAY;wBAClD,aAAa,CAAC,YAAY,CAAC,CAAC,CAAC;QACrC,MAAM,UAAU,GACd,aAAa,CAAC,WAAW,GAAG,aAAa,CAAC,WAAW;YACrD,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,aAAa,CAAC,UAAU,GAAG,CAAC,CAAC;gBACjD,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC;oBACf,aAAa,CAAC,UAAU,GAAG,aAAa,CAAC,WAAW;wBAClD,aAAa,CAAC,WAAW,CAAC,CAAC,CAAC;QAEpC,IAAI,CAAC,UAAU,IAAI,CAAC,UAAU;YAAE,OAAO;QAEvC,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,KAAK,CAAC,eAAe,EAAE,CAAC;QACxB,YAAY,CAAC,QAAQ,CAAC;YACpB,GAAG,EAAE,KAAK,CAAC,MAAM;YACjB,IAAI,EAAE,KAAK,CAAC,MAAM;YAClB,QAAQ,EAAE,SAAS;SACpB,CAAC,CAAC;IACL,CAAC,CAAC;IAEF,OAAO,CACL,cACE,GAAG,EAAE,OAAO,EACZ,OAAO,EAAE,WAAW,EACpB,SAAS,EAAE,EAAE,CACX,2FAA2F,EAC3F,SAAS,CACV,iBACW,sBAAsB,EAClC,KAAK,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,EAAE,cAAc,EAAE,iBAC3C,MAAM,YAEjB,YAAY,CAAC,CAAC,CAAC,CACd,KAAC,yBAAyB,IACxB,cAAc,EAAE,cAAc,EAC9B,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,SAAS,GACpB,CACH,CAAC,CAAC,CAAC,CACF,cAAK,SAAS,EAAC,oCAAoC,GAAG,CACvD,GACG,CACP,CAAC;AACJ,CAAC;AAED,SAAS,yBAAyB,CAAC,EACjC,cAAc,EACd,OAAO,EACP,MAAM,EACN,SAAS,GAMV;IACC,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IACrC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAE5C,MAAM,UAAU,GAAG,OAAO,CACxB,GAAG,EAAE,CAAC,CAAC;QACL,EAAE,EAAE,cAAc,CAAC,EAAE;QACrB,QAAQ,EAAE,cAAc,CAAC,QAAQ;QACjC,OAAO;QACP,QAAQ,EAAE,cAAc,CAAC,QAAQ;KAClC,CAAC,EACF;QACE,cAAc,CAAC,QAAQ;QACvB,cAAc,CAAC,EAAE;QACjB,cAAc,CAAC,QAAQ;QACvB,OAAO;KACR,CACF,CAAC;IAEF,MAAM,QAAQ,GAAG,kBAAkB,CAAC;QAClC,kBAAkB,EAAE,UAAU;QAC9B,eAAe,EAAE,WAAW,EAAE,eAAe;QAC7C,aAAa,EAAE,WAAW,EAAE,aAAa;QACzC,gBAAgB,EAAE,WAAW,EAAE,gBAAgB;KAChD,CAAC,CAAC;IAEH,MAAM,UAAU,GAAG,QAAQ,CAAC,OAAO,IAAI,QAAQ,CAAC,UAAU,CAAC;IAE3D,SAAS,CAAC,GAAG,EAAE;QACb,SAAS,CAAC,KAAK,CAAC,CAAC;QACjB,SAAS,CAAC,IAAI,CAAC,CAAC;IAClB,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;IAEjB,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO,CACL,cAAK,SAAS,EAAC,sGAAsG,2BAE/G,CACP,CAAC;IACJ,CAAC;IAED,OAAO,CACL,8BACG,CAAC,MAAM,IAAI,CACV,cAAK,SAAS,EAAC,uDAAuD,GAAG,CAC1E,EACD,iBAEE,GAAG,EAAE,SAAS,EACd,KAAK,EAAE,WAAW,OAAO,UAAU,EACnC,GAAG,EAAE,UAAU,EACf,QAAQ,EAAE,CAAC,CAAC,EACZ,OAAO,EAAC,MAAM,EACd,MAAM,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,EAC7B,SAAS,EAAC,8CAA8C,EACxD,KAAK,EAAE;oBACL,KAAK,EAAE,YAAY;oBACnB,MAAM,EAAE,aAAa;oBACrB,SAAS,EAAE,SAAS,aAAa,GAAG;iBACrC,IAZI,UAAU,CAaf,EACD,MAAM,IAAI,MAAM,IAAI,WAAW,EAAE,eAAe,IAAI,CACnD,KAAC,yBAAyB,IACxB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,UAAU,EACpB,KAAK,EAAE,aAAa,GACpB,CACH,IACA,CACJ,CAAC;AACJ,CAAC;AAED,SAAS,yBAAyB,CAChC,MAAyB,EACzB,YAA0B,EAC1B,gBAAuC;IAEvC,MAAM,GAAG,GAAG,MAAM,CAAC,aAAa,CAAC;IACjC,IAAI,CAAC,GAAG;QAAE,OAAO;IAEjB,MAAM,aAAa,GAAG,GAAG,CAAC,OAAO,CAAC;IAClC,IAAI,OAAO,GAAkB,IAAI,CAAC;IAElC,KAAK,MAAM,MAAM,IAAI,gBAAgB,EAAE,CAAC;QACtC,MAAM,IAAI,GAAG,qBAAqB,CAAC,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC5D,IAAI,CAAC,IAAI;YAAE,SAAS;QACpB,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,GAAG,aAAa,CAAC;QACxC,IAAI,OAAO,IAAI,IAAI,IAAI,MAAM,GAAG,OAAO;YAAE,OAAO,GAAG,MAAM,CAAC;IAC5D,CAAC;IAED,KAAK,MAAM,MAAM,IAAI,YAAY,EAAE,CAAC;QAClC,KAAK,MAAM,OAAO,IAAI,iBAAiB,CAAC,MAAM,EAAE,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC;YACnE,MAAM,MAAM,GAAG,OAAO,CAAC,qBAAqB,EAAE,CAAC,GAAG,GAAG,aAAa,CAAC;YACnE,IAAI,OAAO,IAAI,IAAI,IAAI,MAAM,GAAG,OAAO;gBAAE,OAAO,GAAG,MAAM,CAAC;QAC5D,CAAC;IACH,CAAC;IAED,IAAI,OAAO,IAAI,IAAI;QAAE,OAAO;IAE5B,GAAG,CAAC,QAAQ,CAAC;QACX,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,GAAG,kBAAkB,CAAC;QAC9C,IAAI,EAAE,CAAC;QACP,QAAQ,EAAE,SAAS;KACpB,CAAC,CAAC;AACL,CAAC;AAED,SAAS,gBAAgB,CAAC,OAAoB;IAC5C,IAAI,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAEnC,OAAO,MAAM,EAAE,CAAC;QACd,MAAM,KAAK,GAAG,MAAM,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;QAC9C,IAAI,uBAAuB,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC;YAClD,OAAO,MAAM,CAAC;QAChB,CAAC;QACD,MAAM,GAAG,MAAM,CAAC,aAAa,CAAC;IAChC,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,yBAAyB,CAAC,EACjC,MAAM,EACN,QAAQ,EACR,KAAK,GAKN;IACC,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IACrC,MAAM,eAAe,GAAG,WAAW,EAAE,eAAe,CAAC;IACrD,MAAM,oBAAoB,GAAG,MAAM,CAA6B,IAAI,GAAG,EAAE,CAAC,CAAC;IAC3E,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAe,EAAE,CAAC,CAAC;IACzD,MAAM,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,GAAG,QAAQ,CAEtD,EAAE,CAAC,CAAC;IAEN,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,eAAe,EAAE,CAAC;YACrB,UAAU,CAAC,EAAE,CAAC,CAAC;YACf,mBAAmB,CAAC,EAAE,CAAC,CAAC;YACxB,OAAO;QACT,CAAC;QAED,IAAI,SAAS,GAAG,KAAK,CAAC;QAEtB,MAAM,cAAc,GAAG,KAAK,IAAI,EAAE;YAChC,MAAM,WAAW,GAAG,MAAM,yBAAyB,CAAC;gBAClD,MAAM;gBACN,QAAQ;gBACR,OAAO,EAAE,eAAe,CAAC,OAAO;gBAChC,QAAQ,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE;gBAC9B,oBAAoB,EAAE,oBAAoB,CAAC,OAAO;aACnD,CAAC,CAAC;YAEH,IAAI,SAAS;gBAAE,OAAO;YAEtB,yBAAyB,CACvB,MAAM,EACN,WAAW,CAAC,YAAY,EACxB,WAAW,CAAC,gBAAgB,CAC7B,CAAC;YAEF,UAAU,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;YACrC,mBAAmB,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAC;QACpD,CAAC,CAAC;QAEF,cAAc,EAAE,CAAC;QAEjB,OAAO,GAAG,EAAE;YACV,SAAS,GAAG,IAAI,CAAC;QACnB,CAAC,CAAC;IACJ,CAAC,EAAE;QACD,MAAM;QACN,eAAe;QACf,eAAe,EAAE,QAAQ;QACzB,QAAQ,CAAC,QAAQ;QACjB,QAAQ,CAAC,EAAE;QACX,QAAQ,CAAC,QAAQ;QACjB,QAAQ,CAAC,OAAO;KACjB,CAAC,CAAC;IAEH,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,gBAAgB,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAEvE,OAAO,CACL,eAAK,SAAS,EAAC,sCAAsC,aAClD,gBAAgB,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAChC,KAAC,sBAAsB,IAErB,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,MAAM,IAHT,MAAM,CAAC,EAAE,CAId,CACH,CAAC,EACD,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CACvB,KAAC,kBAAkB,IAEjB,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,MAAM,IAHT,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,CAIhC,CACH,CAAC,IACE,CACP,CAAC;AACJ,CAAC;AAED,SAAS,sBAAsB,CAAC,EAC9B,MAAM,EACN,KAAK,EACL,MAAM,GAKP;IACC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAiB,IAAI,CAAC,CAAC;IAEvD,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,SAAS,GAAG,2BAA2B,CAAC,MAAM,CAAC,CAAC;QACtD,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC;YACrB,OAAO,CAAC,IAAI,CAAC,CAAC;YACd,OAAO;QACT,CAAC;QAED,IAAI,KAAK,GAAkB,IAAI,CAAC;QAEhC,MAAM,aAAa,GAAG,GAAG,EAAE;YACzB,OAAO,CAAC,qBAAqB,CAAC,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC1D,CAAC,CAAC;QACF,MAAM,cAAc,GAAG,GAAG,EAAE;YAC1B,IAAI,KAAK,IAAI,IAAI;gBAAE,MAAM,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC;YACtD,KAAK,GAAG,MAAM,CAAC,qBAAqB,CAAC,GAAG,EAAE;gBACxC,KAAK,GAAG,IAAI,CAAC;gBACb,aAAa,EAAE,CAAC;YAClB,CAAC,CAAC,CAAC;QACL,CAAC,CAAC;QAEF,aAAa,EAAE,CAAC;QAChB,MAAM,SAAS,GAAG,MAAM,CAAC,UAAU,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC;QACxD,MAAM,eAAe,GAAG,SAAS,CAAC,gBAAgB,IAAI,SAAS,CAAC,IAAI,CAAC;QACrE,MAAM,YAAY,GAAG,yBAAyB,CAAC,MAAM,CAAC,CAAC;QACvD,eAAe,EAAE,gBAAgB,CAAC,QAAQ,EAAE,cAAc,EAAE;YAC1D,OAAO,EAAE,IAAI;SACd,CAAC,CAAC;QACH,YAAY,EAAE,gBAAgB,CAAC,QAAQ,EAAE,cAAc,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;QAC5E,YAAY,EAAE,gBAAgB,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;QAEzD,OAAO,GAAG,EAAE;YACV,IAAI,KAAK,IAAI,IAAI;gBAAE,MAAM,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC;YACtD,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;YAC/B,eAAe,EAAE,mBAAmB,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;YAC/D,YAAY,EAAE,mBAAmB,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;YAC5D,YAAY,EAAE,mBAAmB,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;QAC9D,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;IAE9B,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IAEvB,OAAO,CACL,cACE,SAAS,EAAE,2BAA2B,CAAC,aAAa,iBACxC,gCAAgC,EAC5C,KAAK,EAAE;YACL,GAAG,EAAE,IAAI,CAAC,GAAG,GAAG,KAAK;YACrB,IAAI,EAAE,IAAI,CAAC,IAAI,GAAG,KAAK;YACvB,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,GAAG,KAAK,EAAE,CAAC,CAAC;YACtC,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,KAAK,EAAE,CAAC,CAAC;SACzC,GACD,CACH,CAAC;AACJ,CAAC;AAED,SAAS,kBAAkB,CAAC,EAC1B,MAAM,EACN,KAAK,EACL,MAAM,GAKP;IACC,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAY,EAAE,CAAC,CAAC;IAElD,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,SAAS,GAAG,2BAA2B,CAAC,MAAM,CAAC,CAAC;QACtD,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC;YACrB,QAAQ,CAAC,EAAE,CAAC,CAAC;YACb,OAAO;QACT,CAAC;QAED,IAAI,KAAK,GAAkB,IAAI,CAAC;QAEhC,MAAM,cAAc,GAAG,GAAG,EAAE;YAC1B,MAAM,QAAQ,GAAG,iBAAiB,CAAC,MAAM,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC;YAC9D,MAAM,SAAS,GAAc,EAAE,CAAC;YAEhC,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;gBAC3B,IAAI,MAAM,CAAC,qBAAqB,EAAE,CAAC;oBACjC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,qBAAqB,EAAE,CAAC,CAAC;oBAChD,OAAO;gBACT,CAAC;gBAED,MAAM,CAAC,MAAM;qBACV,MAAM,CAAC,CAAC,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,KAAK,GAAG,GAAG,CAAC;qBACrC,OAAO,CAAC,CAAC,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE,EAAE;oBACxB,MAAM,SAAS,GAAG,mBAAmB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;oBACtD,MAAM,OAAO,GAAG,mBAAmB,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;oBAClD,IAAI,CAAC,SAAS,IAAI,CAAC,OAAO;wBAAE,OAAO;oBAEnC,IAAI,CAAC;wBACH,MAAM,SAAS,GAAG,SAAS,CAAC,WAAW,EAAE,CAAC;wBAC1C,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;wBACrD,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;wBAC/C,SAAS,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;oBAC5D,CAAC;oBAAC,MAAM,CAAC;wBACP,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,qBAAqB,EAAE,CAAC,CAAC;oBAClD,CAAC;gBACH,CAAC,CAAC,CAAC;YACP,CAAC,CAAC,CAAC;YAEH,QAAQ,CAAC,SAAS,CAAC,CAAC;QACtB,CAAC,CAAC;QACF,MAAM,cAAc,GAAG,GAAG,EAAE;YAC1B,IAAI,KAAK,IAAI,IAAI;gBAAE,MAAM,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC;YACtD,KAAK,GAAG,MAAM,CAAC,qBAAqB,CAAC,GAAG,EAAE;gBACxC,KAAK,GAAG,IAAI,CAAC;gBACb,cAAc,EAAE,CAAC;YACnB,CAAC,CAAC,CAAC;QACL,CAAC,CAAC;QAEF,cAAc,EAAE,CAAC;QACjB,MAAM,SAAS,GAAG,MAAM,CAAC,UAAU,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC;QACzD,MAAM,eAAe,GAAG,SAAS,CAAC,gBAAgB,IAAI,SAAS,CAAC,IAAI,CAAC;QACrE,MAAM,YAAY,GAAG,yBAAyB,CAAC,MAAM,CAAC,CAAC;QACvD,eAAe,EAAE,gBAAgB,CAAC,QAAQ,EAAE,cAAc,EAAE;YAC1D,OAAO,EAAE,IAAI;SACd,CAAC,CAAC;QACH,YAAY,EAAE,gBAAgB,CAAC,QAAQ,EAAE,cAAc,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;QAC5E,YAAY,EAAE,gBAAgB,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;QAEzD,OAAO,GAAG,EAAE;YACV,IAAI,KAAK,IAAI,IAAI;gBAAE,MAAM,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC;YACtD,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;YAC/B,eAAe,EAAE,mBAAmB,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;YAC/D,YAAY,EAAE,mBAAmB,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;YAC5D,YAAY,EAAE,mBAAmB,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;QAC9D,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAErB,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAEpC,OAAO,CACL,4BACG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CAC1B,cAEE,SAAS,EACP,MAAM,CAAC,qBAAqB;gBAC1B,CAAC,CAAC,2BAA2B,CAAC,gBAAgB;gBAC9C,CAAC,CAAC,2BAA2B,CAAC,QAAQ,iBAE9B,gCAAgC,EAC5C,KAAK,EAAE;gBACL,GAAG,EAAE,IAAI,CAAC,GAAG,GAAG,KAAK;gBACrB,IAAI,EAAE,IAAI,CAAC,IAAI,GAAG,KAAK;gBACvB,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,GAAG,KAAK,EAAE,CAAC,CAAC;gBACtC,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,KAAK,EAAE,CAAC,CAAC;aACzC,IAZI,KAAK,CAaV,CACH,CAAC,GACD,CACJ,CAAC;AACJ,CAAC"}
|
|
@@ -10,8 +10,8 @@ export function EditControls({ hideSuggestions, hideEdit, hidePreview, } = {}) {
|
|
|
10
10
|
const suggestionsCount = editContext.suggestedEdits?.filter((x) => x.status === "pending").length ||
|
|
11
11
|
0;
|
|
12
12
|
const totalCount = suggestionsCount;
|
|
13
|
-
return (_jsxs(_Fragment, { children: [!hideEdit && !editContext.user?.isLimitedPreviewUser && (_jsx(SimpleIconButton, { icon: _jsx(Pencil, { className: "h-6 w-6 p-1", strokeWidth: 1 }), label: "Edit", size: "large", "data-testid": "edit-mode-button", selected: editContext.mode === "edit", onClick: () =>
|
|
14
|
-
|
|
13
|
+
return (_jsxs(_Fragment, { children: [!hideEdit && !editContext.user?.isLimitedPreviewUser && (_jsx(SimpleIconButton, { icon: _jsx(Pencil, { className: "h-6 w-6 p-1", strokeWidth: 1 }), label: "Edit", size: "large", "data-testid": "edit-mode-button", selected: editContext.mode === "edit", onClick: () => editContext.setMode("edit") })), !hidePreview && (_jsx(SimpleIconButton, { icon: _jsx(EyeIcon, { className: "h-6 w-6 p-1", strokeWidth: 1 }), label: "Preview", showTooltip: false, size: "large", "data-testid": "preview-mode-button", selected: editContext.mode === "preview", onClick: () => editContext.setMode("preview") })), !hideSuggestions && (_jsx(SimpleIconButton, { className: "relative", selected: editContext?.mode === "suggestions", icon: _jsx(Lightbulb, { strokeWidth: 1, className: "h-6 w-6 p-1" }), label: "Write suggestions", size: "large", "data-testid": "suggestions-mode-button", onClick: () => {
|
|
14
|
+
editContext?.setMode("suggestions");
|
|
15
15
|
editContext?.openSidebar("feedback");
|
|
16
16
|
}, children: totalCount > 0 && (_jsx("div", { className: "bg-highlight-100 absolute -top-1 -right-1 h-4 min-w-[16px] rounded-full px-1 text-center text-[10px] leading-4 font-bold text-white tabular-nums", style: { paddingBottom: "1px" }, "data-affects-toolbar-height": true, children: totalCount > 99 ? "99+" : totalCount })) }))] }));
|
|
17
17
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EditControls.js","sourceRoot":"","sources":["../../../../src/editor/menubar/toolbar-sections/EditControls.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAQ7D,MAAM,UAAU,YAAY,CAAC,EAC3B,eAAe,EACf,QAAQ,EACR,WAAW,MACU,EAAE;IACvB,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IAErC,IAAI,CAAC,WAAW;QAAE,OAAO,IAAI,CAAC;IAE9B,oDAAoD;IAEpD,MAAM,gBAAgB,GACpB,WAAW,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,MAAM;QACxE,CAAC,CAAC;IACJ,MAAM,UAAU,GAAG,gBAAgB,CAAC;IAEpC,OAAO,CACL,8BACG,CAAC,QAAQ,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,oBAAoB,IAAI,CACvD,KAAC,gBAAgB,IACf,IAAI,EAAE,KAAC,MAAM,IAAC,SAAS,EAAC,aAAa,EAAC,WAAW,EAAE,CAAC,GAAI,EACxD,KAAK,EAAC,MAAM,EACZ,IAAI,EAAC,OAAO,iBACA,kBAAkB,EAC9B,QAAQ,EAAE,WAAW,CAAC,IAAI,KAAK,MAAM,EACrC,OAAO,EAAE,GAAG,EAAE,CAAC,
|
|
1
|
+
{"version":3,"file":"EditControls.js","sourceRoot":"","sources":["../../../../src/editor/menubar/toolbar-sections/EditControls.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAQ7D,MAAM,UAAU,YAAY,CAAC,EAC3B,eAAe,EACf,QAAQ,EACR,WAAW,MACU,EAAE;IACvB,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IAErC,IAAI,CAAC,WAAW;QAAE,OAAO,IAAI,CAAC;IAE9B,oDAAoD;IAEpD,MAAM,gBAAgB,GACpB,WAAW,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,MAAM;QACxE,CAAC,CAAC;IACJ,MAAM,UAAU,GAAG,gBAAgB,CAAC;IAEpC,OAAO,CACL,8BACG,CAAC,QAAQ,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,oBAAoB,IAAI,CACvD,KAAC,gBAAgB,IACf,IAAI,EAAE,KAAC,MAAM,IAAC,SAAS,EAAC,aAAa,EAAC,WAAW,EAAE,CAAC,GAAI,EACxD,KAAK,EAAC,MAAM,EACZ,IAAI,EAAC,OAAO,iBACA,kBAAkB,EAC9B,QAAQ,EAAE,WAAW,CAAC,IAAI,KAAK,MAAM,EACrC,OAAO,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,GAC1C,CACH,EAEA,CAAC,WAAW,IAAI,CACf,KAAC,gBAAgB,IACf,IAAI,EAAE,KAAC,OAAO,IAAC,SAAS,EAAC,aAAa,EAAC,WAAW,EAAE,CAAC,GAAI,EACzD,KAAK,EAAC,SAAS,EACf,WAAW,EAAE,KAAK,EAClB,IAAI,EAAC,OAAO,iBACA,qBAAqB,EACjC,QAAQ,EAAE,WAAW,CAAC,IAAI,KAAK,SAAS,EACxC,OAAO,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,SAAS,CAAC,GAC7C,CACH,EAEA,CAAC,eAAe,IAAI,CACnB,KAAC,gBAAgB,IACf,SAAS,EAAC,UAAU,EACpB,QAAQ,EAAE,WAAW,EAAE,IAAI,KAAK,aAAa,EAC7C,IAAI,EAAE,KAAC,SAAS,IAAC,WAAW,EAAE,CAAC,EAAE,SAAS,EAAC,aAAa,GAAG,EAC3D,KAAK,EAAC,mBAAmB,EACzB,IAAI,EAAC,OAAO,iBACA,yBAAyB,EACrC,OAAO,EAAE,GAAG,EAAE;oBACZ,WAAW,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;oBACpC,WAAW,EAAE,WAAW,CAAC,UAAU,CAAC,CAAC;gBACvC,CAAC,YAEA,UAAU,GAAG,CAAC,IAAI,CACjB,cACE,SAAS,EAAC,kJAAkJ,EAC5J,KAAK,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,iDAG9B,UAAU,GAAG,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,GACjC,CACP,GACgB,CACpB,IACA,CACJ,CAAC;AACJ,CAAC"}
|
|
@@ -3,6 +3,16 @@ export type ParsedUiSelector = ManualSelectorDefinition;
|
|
|
3
3
|
export declare function parseUiSelectors(uiSelectors: string | undefined): Map<string, ParsedUiSelector>;
|
|
4
4
|
export declare function expandSelector(selectorShorthand: string): string;
|
|
5
5
|
export declare function highlightElement(selector: string, duration?: number): Promise<void>;
|
|
6
|
+
export type SelectorState = "disabled" | "show" | "show-action";
|
|
7
|
+
export declare function deriveSelectorState(params: {
|
|
8
|
+
isSidebarOnly: boolean;
|
|
9
|
+
/** Anchor is present + visible (or, for sidebar-only without anchor, the open capability exists). */
|
|
10
|
+
isAnchorReachable: boolean;
|
|
11
|
+
/** The target element itself is present + visible. */
|
|
12
|
+
isTargetVisible: boolean;
|
|
13
|
+
/** There is a way to bring the (currently hidden) target into view. */
|
|
14
|
+
hasRevealPath: boolean;
|
|
15
|
+
}): SelectorState;
|
|
6
16
|
export declare function ManualBrowser({ onClose }: {
|
|
7
17
|
onClose?: () => void;
|
|
8
18
|
}): import("react/jsx-runtime").JSX.Element;
|