@parhelia/core 0.4.12825 → 0.4.12871
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/emoji/EmojiPicker.d.ts +18 -0
- package/dist/components/emoji/EmojiPicker.js +102 -0
- package/dist/components/emoji/EmojiPicker.js.map +1 -0
- package/dist/components/emoji/EmojiText.d.ts +19 -0
- package/dist/components/emoji/EmojiText.js +30 -0
- package/dist/components/emoji/EmojiText.js.map +1 -0
- package/dist/components/emoji/emojiData.generated.d.ts +2 -0
- package/dist/components/emoji/emojiData.generated.js +1878 -0
- package/dist/components/emoji/emojiData.generated.js.map +1 -0
- package/dist/components/emoji/emojiIndex.d.ts +46 -0
- package/dist/components/emoji/emojiIndex.js +173 -0
- package/dist/components/emoji/emojiIndex.js.map +1 -0
- package/dist/components/emoji/emoticons.d.ts +21 -0
- package/dist/components/emoji/emoticons.js +167 -0
- package/dist/components/emoji/emoticons.js.map +1 -0
- package/dist/components/emoji/textareaInsert.d.ts +19 -0
- package/dist/components/emoji/textareaInsert.js +29 -0
- package/dist/components/emoji/textareaInsert.js.map +1 -0
- package/dist/components/emoji/twemoji.d.ts +30 -0
- package/dist/components/emoji/twemoji.js +84 -0
- package/dist/components/emoji/twemoji.js.map +1 -0
- package/dist/components/ui/alert.d.ts +6 -1
- package/dist/components/ui/alert.js +12 -3
- package/dist/components/ui/alert.js.map +1 -1
- package/dist/components/ui/context-menu.d.ts +25 -0
- package/dist/components/ui/context-menu.js +54 -36
- package/dist/components/ui/context-menu.js.map +1 -1
- package/dist/components/ui/copy-button.d.ts +3 -1
- package/dist/components/ui/copy-button.js +13 -2
- package/dist/components/ui/copy-button.js.map +1 -1
- package/dist/components/ui/mention-textarea.d.ts +8 -0
- package/dist/components/ui/mention-textarea.js +98 -46
- package/dist/components/ui/mention-textarea.js.map +1 -1
- package/dist/components/ui/paste-button.js +11 -1
- package/dist/components/ui/paste-button.js.map +1 -1
- package/dist/config/config.js +43 -4
- package/dist/config/config.js.map +1 -1
- package/dist/config/types.d.ts +2 -0
- package/dist/config/types.js.map +1 -1
- package/dist/editor/ConcurrentUserLimitDialog.js +5 -2
- package/dist/editor/ConcurrentUserLimitDialog.js.map +1 -1
- package/dist/editor/ContentTree.js +7 -2
- package/dist/editor/ContentTree.js.map +1 -1
- package/dist/editor/ContextMenu.js +11 -36
- package/dist/editor/ContextMenu.js.map +1 -1
- package/dist/editor/EditorWarning.js +8 -4
- package/dist/editor/EditorWarning.js.map +1 -1
- package/dist/editor/FieldList.js +1 -1
- package/dist/editor/FieldList.js.map +1 -1
- package/dist/editor/FieldListField.js +18 -13
- package/dist/editor/FieldListField.js.map +1 -1
- package/dist/editor/FieldListFieldWithFallbacks.js +1 -1
- package/dist/editor/GlobalMenuBar.js +2 -1
- package/dist/editor/GlobalMenuBar.js.map +1 -1
- package/dist/editor/ImageEditor.js +3 -1
- package/dist/editor/ImageEditor.js.map +1 -1
- package/dist/editor/MainLayout.js +1 -1
- package/dist/editor/MainLayout.js.map +1 -1
- package/dist/editor/MigrationsView.js +3 -2
- package/dist/editor/MigrationsView.js.map +1 -1
- package/dist/editor/MobileLayout.js +43 -20
- package/dist/editor/MobileLayout.js.map +1 -1
- package/dist/editor/PictureEditor.js +4 -2
- package/dist/editor/PictureEditor.js.map +1 -1
- package/dist/editor/QuickItemSwitcher.js +4 -2
- package/dist/editor/QuickItemSwitcher.js.map +1 -1
- package/dist/editor/agent-changes/agentChangeTargets.js +6 -0
- package/dist/editor/agent-changes/agentChangeTargets.js.map +1 -1
- package/dist/editor/agent-changes/agentChangeTextHighlight.d.ts +48 -4
- package/dist/editor/agent-changes/agentChangeTextHighlight.js +67 -9
- package/dist/editor/agent-changes/agentChangeTextHighlight.js.map +1 -1
- package/dist/editor/ai/HeartbeatDiagnosticsPanel.js +1 -1
- package/dist/editor/ai/InlineAiDialog.js +11 -8
- package/dist/editor/ai/InlineAiDialog.js.map +1 -1
- package/dist/editor/ai/InlineAiTrigger.js +18 -14
- package/dist/editor/ai/InlineAiTrigger.js.map +1 -1
- package/dist/editor/ai/agentActivitySummary.js +5 -0
- package/dist/editor/ai/agentActivitySummary.js.map +1 -1
- package/dist/editor/ai/agentMessageConversion.js +1 -0
- package/dist/editor/ai/agentMessageConversion.js.map +1 -1
- package/dist/editor/ai/agentMessageMarkdown.js +4 -4
- package/dist/editor/ai/agentMessageMarkdown.js.map +1 -1
- package/dist/editor/ai/dialogs/capturePageScreenshot.d.ts +4 -1
- package/dist/editor/ai/dialogs/capturePageScreenshot.js +214 -44
- package/dist/editor/ai/dialogs/capturePageScreenshot.js.map +1 -1
- package/dist/editor/ai/dialogs/captureShared.d.ts +8 -1
- package/dist/editor/ai/dialogs/captureShared.js +4 -1
- package/dist/editor/ai/dialogs/captureShared.js.map +1 -1
- package/dist/editor/ai/dialogs/offscreenPageCapture.js +1 -1
- package/dist/editor/ai/dialogs/offscreenPageCapture.js.map +1 -1
- package/dist/editor/ai/prepareInlineAiTextSelection.d.ts +2 -1
- package/dist/editor/ai/prepareInlineAiTextSelection.js +1 -2
- package/dist/editor/ai/prepareInlineAiTextSelection.js.map +1 -1
- package/dist/editor/ai/terminal/agentCost.d.ts +2 -0
- package/dist/editor/ai/terminal/agentCost.js +1 -0
- package/dist/editor/ai/terminal/agentCost.js.map +1 -1
- package/dist/editor/ai/terminal/agentSessionLiveTotals.js +3 -0
- package/dist/editor/ai/terminal/agentSessionLiveTotals.js.map +1 -1
- package/dist/editor/ai/terminal/agentSessionSelectors.d.ts +5 -2
- package/dist/editor/ai/terminal/agentSessionSelectors.js +5 -2
- package/dist/editor/ai/terminal/agentSessionSelectors.js.map +1 -1
- package/dist/editor/ai/terminal/agentSessionState.js +8 -1
- package/dist/editor/ai/terminal/agentSessionState.js.map +1 -1
- package/dist/editor/ai/terminal/components/AgentActivityOverviewPanel.js +2 -2
- package/dist/editor/ai/terminal/components/AgentActivityOverviewPanel.js.map +1 -1
- package/dist/editor/ai/terminal/components/AgentBanners.js +2 -2
- package/dist/editor/ai/terminal/components/AgentBanners.js.map +1 -1
- package/dist/editor/ai/terminal/components/AgentCostDisplay.d.ts +2 -0
- package/dist/editor/ai/terminal/components/AgentCostDisplay.js +2 -1
- package/dist/editor/ai/terminal/components/AgentCostDisplay.js.map +1 -1
- package/dist/editor/ai/terminal/components/AgentFullPromptControls.js +1 -1
- package/dist/editor/ai/terminal/components/AgentFullPromptControls.js.map +1 -1
- package/dist/editor/ai/terminal/components/AgentModeSelector.js +7 -3
- package/dist/editor/ai/terminal/components/AgentModeSelector.js.map +1 -1
- package/dist/editor/ai/terminal/components/AgentPromptActionButtons.js +3 -3
- package/dist/editor/ai/terminal/components/AgentPromptActionButtons.js.map +1 -1
- package/dist/editor/ai/terminal/components/AgentPromptInputArea.js +2 -2
- package/dist/editor/ai/terminal/components/AgentReadOnlyNotice.js +1 -1
- package/dist/editor/ai/terminal/components/AgentReadOnlyNotice.js.map +1 -1
- package/dist/editor/ai/terminal/components/AgentTerminalFullLayout.js +1 -1
- package/dist/editor/ai/terminal/components/AgentTerminalStatusBar.d.ts +5 -2
- package/dist/editor/ai/terminal/components/AgentTerminalStatusBar.js +43 -4
- package/dist/editor/ai/terminal/components/AgentTerminalStatusBar.js.map +1 -1
- package/dist/editor/ai/terminal/components/AgentTerminalSummaryLayout.js +1 -1
- package/dist/editor/ai/terminal/components/AgentTerminalSummaryLayout.js.map +1 -1
- package/dist/editor/ai/terminal/components/AiResponseMessage.js +32 -15
- package/dist/editor/ai/terminal/components/AiResponseMessage.js.map +1 -1
- package/dist/editor/ai/terminal/components/ApprovalCard.d.ts +3 -1
- package/dist/editor/ai/terminal/components/ApprovalCard.js +8 -16
- package/dist/editor/ai/terminal/components/ApprovalCard.js.map +1 -1
- package/dist/editor/ai/terminal/components/CreateItemToolCallContent.js +1 -1
- package/dist/editor/ai/terminal/components/CreateItemToolCallContent.js.map +1 -1
- package/dist/editor/ai/terminal/components/EditFieldToolCallContent.d.ts +7 -4
- package/dist/editor/ai/terminal/components/EditFieldToolCallContent.js +57 -32
- package/dist/editor/ai/terminal/components/EditFieldToolCallContent.js.map +1 -1
- package/dist/editor/ai/terminal/components/ResponseTurnDuration.js +1 -2
- package/dist/editor/ai/terminal/components/ResponseTurnDuration.js.map +1 -1
- package/dist/editor/ai/terminal/components/ToolCallDiagnosticsPanel.d.ts +6 -0
- package/dist/editor/ai/terminal/components/ToolCallDiagnosticsPanel.js +61 -0
- package/dist/editor/ai/terminal/components/ToolCallDiagnosticsPanel.js.map +1 -0
- package/dist/editor/ai/terminal/components/ToolCallDisplay.d.ts +5 -0
- package/dist/editor/ai/terminal/components/ToolCallDisplay.js +19 -8
- package/dist/editor/ai/terminal/components/ToolCallDisplay.js.map +1 -1
- package/dist/editor/ai/terminal/components/UserMessage.js +4 -2
- package/dist/editor/ai/terminal/components/UserMessage.js.map +1 -1
- package/dist/editor/ai/terminal/components/ValueDiff.js +1 -1
- package/dist/editor/ai/terminal/components/ValueDiff.js.map +1 -1
- package/dist/editor/ai/terminal/components/toolCallContentRenderers.js +7 -4
- package/dist/editor/ai/terminal/components/toolCallContentRenderers.js.map +1 -1
- package/dist/editor/ai/terminal/components/useApprovalActions.js +1 -1
- package/dist/editor/ai/terminal/components/useApprovalActions.js.map +1 -1
- package/dist/editor/ai/terminal/toolCallDiagnostics.d.ts +34 -0
- package/dist/editor/ai/terminal/toolCallDiagnostics.js +218 -0
- package/dist/editor/ai/terminal/toolCallDiagnostics.js.map +1 -0
- package/dist/editor/ai/terminal/types.d.ts +1 -0
- package/dist/editor/ai/terminal/useAgentEditorContext.js +3 -1
- package/dist/editor/ai/terminal/useAgentEditorContext.js.map +1 -1
- package/dist/editor/ai/terminal/useAgentLoadPipeline.d.ts +1 -0
- package/dist/editor/ai/terminal/useAgentLoadPipeline.js +2 -1
- package/dist/editor/ai/terminal/useAgentLoadPipeline.js.map +1 -1
- package/dist/editor/ai/terminal/useAgentLoader.d.ts +2 -0
- package/dist/editor/ai/terminal/useAgentLoader.js +17 -2
- package/dist/editor/ai/terminal/useAgentLoader.js.map +1 -1
- package/dist/editor/ai/terminal/useAgentModeState.d.ts +5 -1
- package/dist/editor/ai/terminal/useAgentModeState.js +11 -3
- package/dist/editor/ai/terminal/useAgentModeState.js.map +1 -1
- package/dist/editor/ai/terminal/useAgentRunDeltaSocketHandler.d.ts +1 -0
- package/dist/editor/ai/terminal/useAgentRunDeltaSocketHandler.js +5 -1
- package/dist/editor/ai/terminal/useAgentRunDeltaSocketHandler.js.map +1 -1
- package/dist/editor/ai/terminal/useAgentRunRefs.d.ts +1 -0
- package/dist/editor/ai/terminal/useAgentRunRefs.js +3 -0
- package/dist/editor/ai/terminal/useAgentRunRefs.js.map +1 -1
- package/dist/editor/ai/terminal/useAgentSessionSync.d.ts +6 -0
- package/dist/editor/ai/terminal/useAgentSessionSync.js +27 -3
- package/dist/editor/ai/terminal/useAgentSessionSync.js.map +1 -1
- package/dist/editor/ai/terminal/useAgentSettingsData.d.ts +1 -1
- package/dist/editor/ai/terminal/useAgentSettingsPanel.js +7 -6
- package/dist/editor/ai/terminal/useAgentSettingsPanel.js.map +1 -1
- package/dist/editor/ai/terminal/useAgentSettingsSelectOptions.js +14 -2
- package/dist/editor/ai/terminal/useAgentSettingsSelectOptions.js.map +1 -1
- package/dist/editor/ai/terminal/useAgentStatusBarContent.js +11 -4
- package/dist/editor/ai/terminal/useAgentStatusBarContent.js.map +1 -1
- package/dist/editor/ai/terminal/useAgentStreamPipeline.d.ts +1 -0
- package/dist/editor/ai/terminal/useAgentStreamPipeline.js +2 -1
- package/dist/editor/ai/terminal/useAgentStreamPipeline.js.map +1 -1
- package/dist/editor/ai/terminal/useAgentSubmitHandlers.js +11 -2
- package/dist/editor/ai/terminal/useAgentSubmitHandlers.js.map +1 -1
- package/dist/editor/ai/terminal/useAgentTerminalController.js +3 -1
- package/dist/editor/ai/terminal/useAgentTerminalController.js.map +1 -1
- package/dist/editor/ai/terminal/useAgentToolCallHandler.js +1 -0
- package/dist/editor/ai/terminal/useAgentToolCallHandler.js.map +1 -1
- package/dist/editor/ai/types.d.ts +4 -0
- package/dist/editor/ai-image-editor/AiImageEditorDialog.d.ts +33 -0
- package/dist/editor/ai-image-editor/AiImageEditorDialog.js +372 -127
- package/dist/editor/ai-image-editor/AiImageEditorDialog.js.map +1 -1
- package/dist/editor/ai-image-editor/AiImageResultOverlay.js +4 -2
- package/dist/editor/ai-image-editor/AiImageResultOverlay.js.map +1 -1
- package/dist/editor/bridge/BridgeClient.js +11 -0
- package/dist/editor/bridge/BridgeClient.js.map +1 -1
- package/dist/editor/bridge/protocol.d.ts +56 -0
- package/dist/editor/bridge/protocol.js +3 -0
- package/dist/editor/bridge/protocol.js.map +1 -1
- package/dist/editor/client/EditorShell.js +331 -122
- package/dist/editor/client/EditorShell.js.map +1 -1
- package/dist/editor/client/SessionExpiredOverlay.js +9 -2
- package/dist/editor/client/SessionExpiredOverlay.js.map +1 -1
- package/dist/editor/client/clipboardStorage.d.ts +10 -0
- package/dist/editor/client/clipboardStorage.js +57 -0
- package/dist/editor/client/clipboardStorage.js.map +1 -0
- package/dist/editor/client/editContext.d.ts +92 -11
- package/dist/editor/client/editContext.js.map +1 -1
- package/dist/editor/client/editHistoryReconciliation.d.ts +2 -1
- package/dist/editor/client/editHistoryReconciliation.js +5 -2
- package/dist/editor/client/editHistoryReconciliation.js.map +1 -1
- package/dist/editor/client/hooks/useRepositoryItemRefresh.d.ts +4 -0
- package/dist/editor/client/hooks/useRepositoryItemRefresh.js +62 -0
- package/dist/editor/client/hooks/useRepositoryItemRefresh.js.map +1 -0
- package/dist/editor/client/hooks/useSocketMessageHandler.d.ts +6 -0
- package/dist/editor/client/hooks/useSocketMessageHandler.js +66 -3
- package/dist/editor/client/hooks/useSocketMessageHandler.js.map +1 -1
- package/dist/editor/client/itemsRepository.d.ts +10 -2
- package/dist/editor/client/itemsRepository.js +224 -43
- package/dist/editor/client/itemsRepository.js.map +1 -1
- package/dist/editor/client/liveEditState.d.ts +16 -0
- package/dist/editor/client/liveEditState.js +25 -0
- package/dist/editor/client/liveEditState.js.map +1 -0
- package/dist/editor/client/liveSessionState.d.ts +6 -0
- package/dist/editor/client/liveSessionState.js +20 -0
- package/dist/editor/client/liveSessionState.js.map +1 -0
- package/dist/editor/client/operations.d.ts +13 -2
- package/dist/editor/client/operations.js +100 -29
- package/dist/editor/client/operations.js.map +1 -1
- package/dist/editor/client/pageModelBuilder.d.ts +6 -0
- package/dist/editor/client/pageModelBuilder.js +74 -7
- package/dist/editor/client/pageModelBuilder.js.map +1 -1
- package/dist/editor/client/ui/EditorChrome.d.ts +2 -2
- package/dist/editor/client/ui/EditorChrome.js +12 -8
- package/dist/editor/client/ui/EditorChrome.js.map +1 -1
- package/dist/editor/client/ui/FullscreenControls.d.ts +3 -5
- package/dist/editor/client/ui/FullscreenControls.js +2 -2
- package/dist/editor/client/ui/FullscreenControls.js.map +1 -1
- package/dist/editor/client/valueStore.d.ts +22 -0
- package/dist/editor/client/valueStore.js +29 -0
- package/dist/editor/client/valueStore.js.map +1 -0
- package/dist/editor/commands/componentClipboardCommands.d.ts +35 -0
- package/dist/editor/commands/componentClipboardCommands.js +271 -0
- package/dist/editor/commands/componentClipboardCommands.js.map +1 -0
- package/dist/editor/commands/componentCommands.js +80 -19
- package/dist/editor/commands/componentCommands.js.map +1 -1
- package/dist/editor/commands/componentMenuGroups.d.ts +2 -0
- package/dist/editor/commands/componentMenuGroups.js +43 -0
- package/dist/editor/commands/componentMenuGroups.js.map +1 -0
- package/dist/editor/commands/itemCommands.d.ts +9 -0
- package/dist/editor/commands/itemCommands.js +76 -9
- package/dist/editor/commands/itemCommands.js.map +1 -1
- package/dist/editor/component-conversion/ComponentTypePickerDialog.d.ts +12 -0
- package/dist/editor/component-conversion/ComponentTypePickerDialog.js +40 -0
- package/dist/editor/component-conversion/ComponentTypePickerDialog.js.map +1 -0
- package/dist/editor/component-conversion/ConversionAiDebugButton.d.ts +17 -0
- package/dist/editor/component-conversion/ConversionAiDebugButton.js +80 -0
- package/dist/editor/component-conversion/ConversionAiDebugButton.js.map +1 -0
- package/dist/editor/component-conversion/ConvertComponentDialog.d.ts +28 -0
- package/dist/editor/component-conversion/ConvertComponentDialog.js +633 -0
- package/dist/editor/component-conversion/ConvertComponentDialog.js.map +1 -0
- package/dist/editor/component-conversion/conversionModel.d.ts +109 -0
- package/dist/editor/component-conversion/conversionModel.js +519 -0
- package/dist/editor/component-conversion/conversionModel.js.map +1 -0
- package/dist/editor/component-conversion/conversionService.d.ts +12 -0
- package/dist/editor/component-conversion/conversionService.js +16 -0
- package/dist/editor/component-conversion/conversionService.js.map +1 -0
- package/dist/editor/component-conversion/conversionTypes.d.ts +214 -0
- package/dist/editor/component-conversion/conversionTypes.js +2 -0
- package/dist/editor/component-conversion/conversionTypes.js.map +1 -0
- package/dist/editor/component-conversion/convertComponentsCommand.d.ts +25 -0
- package/dist/editor/component-conversion/convertComponentsCommand.js +196 -0
- package/dist/editor/component-conversion/convertComponentsCommand.js.map +1 -0
- package/dist/editor/editor-warnings/ValidationErrors.js +4 -4
- package/dist/editor/editor-warnings/ValidationErrors.js.map +1 -1
- package/dist/editor/field-types/AttachmentEditor.js +4 -3
- package/dist/editor/field-types/AttachmentEditor.js.map +1 -1
- package/dist/editor/field-types/DateFieldEditor.js +2 -1
- package/dist/editor/field-types/DateFieldEditor.js.map +1 -1
- package/dist/editor/field-types/DateTimeFieldEditor.js +2 -1
- package/dist/editor/field-types/DateTimeFieldEditor.js.map +1 -1
- package/dist/editor/field-types/DropLinkEditor.js +3 -1
- package/dist/editor/field-types/DropLinkEditor.js.map +1 -1
- package/dist/editor/field-types/DropListEditor.js +3 -1
- package/dist/editor/field-types/DropListEditor.js.map +1 -1
- package/dist/editor/field-types/FieldHistoryBoundary.js +28 -7
- package/dist/editor/field-types/FieldHistoryBoundary.js.map +1 -1
- package/dist/editor/field-types/ImageFieldEditor.js +3 -1
- package/dist/editor/field-types/ImageFieldEditor.js.map +1 -1
- package/dist/editor/field-types/InternalLinkFieldEditor.js +2 -1
- package/dist/editor/field-types/InternalLinkFieldEditor.js.map +1 -1
- package/dist/editor/field-types/LinkFieldEditor.js +2 -1
- package/dist/editor/field-types/LinkFieldEditor.js.map +1 -1
- package/dist/editor/field-types/MultiLineText.js +68 -22
- package/dist/editor/field-types/MultiLineText.js.map +1 -1
- package/dist/editor/field-types/NameValueListEditor.js +3 -1
- package/dist/editor/field-types/NameValueListEditor.js.map +1 -1
- package/dist/editor/field-types/PictureFieldEditor.js +4 -2
- package/dist/editor/field-types/PictureFieldEditor.js.map +1 -1
- package/dist/editor/field-types/RawEditor.js +7 -4
- package/dist/editor/field-types/RawEditor.js.map +1 -1
- package/dist/editor/field-types/RichTextEditor.d.ts +1 -2
- package/dist/editor/field-types/RichTextEditor.js +5 -26
- package/dist/editor/field-types/RichTextEditor.js.map +1 -1
- package/dist/editor/field-types/RichTextEditorComponent.d.ts +1 -2
- package/dist/editor/field-types/RichTextEditorComponent.js +120 -34
- package/dist/editor/field-types/RichTextEditorComponent.js.map +1 -1
- package/dist/editor/field-types/SingleLineText.js +68 -22
- package/dist/editor/field-types/SingleLineText.js.map +1 -1
- package/dist/editor/field-types/TreeListEditor.js +4 -2
- package/dist/editor/field-types/TreeListEditor.js.map +1 -1
- package/dist/editor/field-types/fieldStyles.d.ts +21 -0
- package/dist/editor/field-types/fieldStyles.js +22 -0
- package/dist/editor/field-types/fieldStyles.js.map +1 -0
- package/dist/editor/field-types/richtext/bridgeRichTextProfile.d.ts +15 -1
- package/dist/editor/field-types/richtext/bridgeRichTextProfile.js +27 -0
- package/dist/editor/field-types/richtext/bridgeRichTextProfile.js.map +1 -1
- package/dist/editor/field-types/richtext/components/EditorDropdown.css +14 -0
- package/dist/editor/field-types/richtext/components/EditorDropdown.d.ts +3 -1
- package/dist/editor/field-types/richtext/components/EditorDropdown.js +33 -8
- package/dist/editor/field-types/richtext/components/EditorDropdown.js.map +1 -1
- package/dist/editor/field-types/richtext/components/ReactSlate.css +23 -54
- package/dist/editor/field-types/richtext/components/ReactSlate.d.ts +10 -1
- package/dist/editor/field-types/richtext/components/ReactSlate.js +365 -172
- package/dist/editor/field-types/richtext/components/ReactSlate.js.map +1 -1
- package/dist/editor/field-types/richtext/components/SimpleRichTextEditor.js +1 -1
- package/dist/editor/field-types/richtext/components/SimpleRichTextEditor.js.map +1 -1
- package/dist/editor/field-types/richtext/components/ToolbarButton.js +13 -5
- package/dist/editor/field-types/richtext/components/ToolbarButton.js.map +1 -1
- package/dist/editor/field-types/richtext/config/pluginFactory.d.ts +2 -0
- package/dist/editor/field-types/richtext/config/pluginFactory.js +2 -1
- package/dist/editor/field-types/richtext/config/pluginFactory.js.map +1 -1
- package/dist/editor/field-types/richtext/hooks/useProfileCache.js +1 -0
- package/dist/editor/field-types/richtext/hooks/useProfileCache.js.map +1 -1
- package/dist/editor/field-types/richtext/hooks/useRichTextProfile.d.ts +0 -2
- package/dist/editor/field-types/richtext/hooks/useRichTextProfile.js +2 -5
- package/dist/editor/field-types/richtext/hooks/useRichTextProfile.js.map +1 -1
- package/dist/editor/field-types/richtext/types.d.ts +47 -2
- package/dist/editor/field-types/richtext/types.js +19 -0
- package/dist/editor/field-types/richtext/types.js.map +1 -1
- package/dist/editor/field-types/richtext/utils/changeHighlight.d.ts +14 -0
- package/dist/editor/field-types/richtext/utils/changeHighlight.js +12 -1
- package/dist/editor/field-types/richtext/utils/changeHighlight.js.map +1 -1
- package/dist/editor/field-types/richtext/utils/conversion.js +108 -32
- package/dist/editor/field-types/richtext/utils/conversion.js.map +1 -1
- package/dist/editor/field-types/richtext/utils/cssClasses.d.ts +27 -0
- package/dist/editor/field-types/richtext/utils/cssClasses.js +98 -0
- package/dist/editor/field-types/richtext/utils/cssClasses.js.map +1 -0
- package/dist/editor/field-types/richtext/utils/plugins.d.ts +40 -1
- package/dist/editor/field-types/richtext/utils/plugins.js +178 -4
- package/dist/editor/field-types/richtext/utils/plugins.js.map +1 -1
- package/dist/editor/field-types/richtext/utils/profileMapper.d.ts +17 -1
- package/dist/editor/field-types/richtext/utils/profileMapper.js +153 -55
- package/dist/editor/field-types/richtext/utils/profileMapper.js.map +1 -1
- package/dist/editor/field-types/richtext/utils/spellCheckText.d.ts +31 -0
- package/dist/editor/field-types/richtext/utils/spellCheckText.js +82 -0
- package/dist/editor/field-types/richtext/utils/spellCheckText.js.map +1 -0
- package/dist/editor/field-types/useFocusedFieldInput.d.ts +13 -0
- package/dist/editor/field-types/useFocusedFieldInput.js +50 -0
- package/dist/editor/field-types/useFocusedFieldInput.js.map +1 -0
- package/dist/editor/field-types/useFormFieldCaretPresence.js +8 -1
- package/dist/editor/field-types/useFormFieldCaretPresence.js.map +1 -1
- package/dist/editor/field-types/useFormFieldSelectionRange.d.ts +20 -13
- package/dist/editor/field-types/useFormFieldSelectionRange.js +40 -14
- package/dist/editor/field-types/useFormFieldSelectionRange.js.map +1 -1
- package/dist/editor/find-replace/findReplaceTargets.d.ts +2 -0
- package/dist/editor/find-replace/findReplaceTargets.js +2 -2
- package/dist/editor/find-replace/findReplaceTargets.js.map +1 -1
- package/dist/editor/itemContextMenuGroups.js +10 -1
- package/dist/editor/itemContextMenuGroups.js.map +1 -1
- package/dist/editor/media-selector/AiImageSearch.js +1 -163
- package/dist/editor/media-selector/AiImageSearch.js.map +1 -1
- package/dist/editor/media-selector/MediaDetailsView.d.ts +14 -0
- package/dist/editor/media-selector/MediaDetailsView.js +152 -0
- package/dist/editor/media-selector/MediaDetailsView.js.map +1 -0
- package/dist/editor/media-selector/MediaFolderBrowser.js +326 -106
- package/dist/editor/media-selector/MediaFolderBrowser.js.map +1 -1
- package/dist/editor/media-selector/TreeSelector.js +40 -2
- package/dist/editor/media-selector/TreeSelector.js.map +1 -1
- package/dist/editor/media-selector/UploadZone.js +1 -1
- package/dist/editor/media-selector/UploadZone.js.map +1 -1
- package/dist/editor/media-selector/useMediaFolderDrag.d.ts +26 -0
- package/dist/editor/media-selector/useMediaFolderDrag.js +153 -0
- package/dist/editor/media-selector/useMediaFolderDrag.js.map +1 -0
- package/dist/editor/menubar/ActiveUsers.js +5 -3
- package/dist/editor/menubar/ActiveUsers.js.map +1 -1
- package/dist/editor/menubar/PageSelector.js +21 -22
- package/dist/editor/menubar/PageSelector.js.map +1 -1
- package/dist/editor/menubar/ToolbarFactory.js +8 -2
- package/dist/editor/menubar/ToolbarFactory.js.map +1 -1
- package/dist/editor/menubar/VersionPreviewCard.js +4 -2
- package/dist/editor/menubar/VersionPreviewCard.js.map +1 -1
- package/dist/editor/menubar/WorkflowButton.js +10 -10
- package/dist/editor/menubar/WorkflowButton.js.map +1 -1
- package/dist/editor/menubar/toolbar-sections/CommentsToggleControl.d.ts +13 -0
- package/dist/editor/menubar/toolbar-sections/CommentsToggleControl.js +88 -0
- package/dist/editor/menubar/toolbar-sections/CommentsToggleControl.js.map +1 -0
- package/dist/editor/menubar/toolbar-sections/DeviceSwitchToolbar.d.ts +3 -4
- package/dist/editor/menubar/toolbar-sections/DeviceSwitchToolbar.js +15 -13
- package/dist/editor/menubar/toolbar-sections/DeviceSwitchToolbar.js.map +1 -1
- package/dist/editor/menubar/toolbar-sections/EditControls.d.ts +9 -0
- package/dist/editor/menubar/toolbar-sections/EditControls.js +24 -1
- package/dist/editor/menubar/toolbar-sections/EditControls.js.map +1 -1
- package/dist/editor/menubar/toolbar-sections/FullscreenControl.js +3 -2
- package/dist/editor/menubar/toolbar-sections/FullscreenControl.js.map +1 -1
- package/dist/editor/menubar/toolbar-sections/InsertControls.js +4 -2
- package/dist/editor/menubar/toolbar-sections/InsertControls.js.map +1 -1
- package/dist/editor/menubar/toolbar-sections/LayoutModeControls.js +3 -2
- package/dist/editor/menubar/toolbar-sections/LayoutModeControls.js.map +1 -1
- package/dist/editor/menubar/toolbar-sections/ReviewCommands.js +2 -2
- package/dist/editor/menubar/toolbar-sections/ReviewCommands.js.map +1 -1
- package/dist/editor/menubar/toolbar-sections/SpellCheckToggleControl.d.ts +5 -0
- package/dist/editor/menubar/toolbar-sections/SpellCheckToggleControl.js +16 -0
- package/dist/editor/menubar/toolbar-sections/SpellCheckToggleControl.js.map +1 -0
- package/dist/editor/menubar/toolbar-sections/UndoRedoControls.js +2 -2
- package/dist/editor/menubar/toolbar-sections/UndoRedoControls.js.map +1 -1
- package/dist/editor/menubar/toolbar-sections/UtilityControls.js +7 -7
- package/dist/editor/menubar/toolbar-sections/UtilityControls.js.map +1 -1
- package/dist/editor/menubar/toolbar-sections/ViewportControls.d.ts +3 -4
- package/dist/editor/menubar/toolbar-sections/ViewportControls.js +19 -31
- package/dist/editor/menubar/toolbar-sections/ViewportControls.js.map +1 -1
- package/dist/editor/menubar/toolbar-sections/index.d.ts +1 -1
- package/dist/editor/menubar/toolbar-sections/index.js +1 -1
- package/dist/editor/menubar/toolbar-sections/index.js.map +1 -1
- package/dist/editor/mobileBottomPanel.d.ts +40 -0
- package/dist/editor/mobileBottomPanel.js +63 -0
- package/dist/editor/mobileBottomPanel.js.map +1 -0
- package/dist/editor/notifications/useNotifications.js +12 -17
- package/dist/editor/notifications/useNotifications.js.map +1 -1
- package/dist/editor/page-editor-chrome/AgentChangeHighlightings.d.ts +3 -6
- package/dist/editor/page-editor-chrome/AgentChangeHighlightings.js +8 -6
- package/dist/editor/page-editor-chrome/AgentChangeHighlightings.js.map +1 -1
- package/dist/editor/page-editor-chrome/BridgeInlineFormatOverlay.d.ts +5 -1
- package/dist/editor/page-editor-chrome/BridgeInlineFormatOverlay.js +60 -10
- package/dist/editor/page-editor-chrome/BridgeInlineFormatOverlay.js.map +1 -1
- package/dist/editor/page-editor-chrome/BridgePasteCleanupOverlay.d.ts +6 -0
- package/dist/editor/page-editor-chrome/BridgePasteCleanupOverlay.js +100 -0
- package/dist/editor/page-editor-chrome/BridgePasteCleanupOverlay.js.map +1 -0
- package/dist/editor/page-editor-chrome/BridgeToolbarDropdown.d.ts +16 -0
- package/dist/editor/page-editor-chrome/BridgeToolbarDropdown.js +23 -0
- package/dist/editor/page-editor-chrome/BridgeToolbarDropdown.js.map +1 -0
- package/dist/editor/page-editor-chrome/CanvasOverviewRulerBinding.d.ts +9 -0
- package/dist/editor/page-editor-chrome/CanvasOverviewRulerBinding.js +32 -0
- package/dist/editor/page-editor-chrome/CanvasOverviewRulerBinding.js.map +1 -0
- package/dist/editor/page-editor-chrome/CommentHighlightings.d.ts +4 -1
- package/dist/editor/page-editor-chrome/CommentHighlightings.js +195 -388
- package/dist/editor/page-editor-chrome/CommentHighlightings.js.map +1 -1
- package/dist/editor/page-editor-chrome/CommentTargetPickerCanvasLayer.d.ts +14 -0
- package/dist/editor/page-editor-chrome/CommentTargetPickerCanvasLayer.js +110 -0
- package/dist/editor/page-editor-chrome/CommentTargetPickerCanvasLayer.js.map +1 -0
- package/dist/editor/page-editor-chrome/ConversionIndicators.d.ts +8 -0
- package/dist/editor/page-editor-chrome/ConversionIndicators.js +75 -0
- package/dist/editor/page-editor-chrome/ConversionIndicators.js.map +1 -0
- package/dist/editor/page-editor-chrome/DiffHighlightOverlay.d.ts +9 -13
- package/dist/editor/page-editor-chrome/DiffHighlightOverlay.js +25 -20
- package/dist/editor/page-editor-chrome/DiffHighlightOverlay.js.map +1 -1
- package/dist/editor/page-editor-chrome/DragInsertionOverlay.js +21 -17
- package/dist/editor/page-editor-chrome/DragInsertionOverlay.js.map +1 -1
- package/dist/editor/page-editor-chrome/EmptyImageFieldIndicators.d.ts +1 -1
- package/dist/editor/page-editor-chrome/EmptyImageFieldIndicators.js +9 -6
- package/dist/editor/page-editor-chrome/EmptyImageFieldIndicators.js.map +1 -1
- package/dist/editor/page-editor-chrome/FeedbackLeaderCanvasSegment.d.ts +15 -0
- package/dist/editor/page-editor-chrome/FeedbackLeaderCanvasSegment.js +31 -0
- package/dist/editor/page-editor-chrome/FeedbackLeaderCanvasSegment.js.map +1 -0
- package/dist/editor/page-editor-chrome/FieldActionIndicator.d.ts +1 -1
- package/dist/editor/page-editor-chrome/FieldActionIndicator.js +6 -3
- package/dist/editor/page-editor-chrome/FieldActionIndicator.js.map +1 -1
- package/dist/editor/page-editor-chrome/FieldEditedIndicator.js +10 -6
- package/dist/editor/page-editor-chrome/FieldEditedIndicator.js.map +1 -1
- package/dist/editor/page-editor-chrome/FindReplaceHighlightings.d.ts +1 -1
- package/dist/editor/page-editor-chrome/FindReplaceHighlightings.js +7 -4
- package/dist/editor/page-editor-chrome/FindReplaceHighlightings.js.map +1 -1
- package/dist/editor/page-editor-chrome/FrameMenu.d.ts +1 -1
- package/dist/editor/page-editor-chrome/FrameMenu.js +13 -11
- package/dist/editor/page-editor-chrome/FrameMenu.js.map +1 -1
- package/dist/editor/page-editor-chrome/FrameMenus.d.ts +1 -1
- package/dist/editor/page-editor-chrome/FrameMenus.js +7 -5
- package/dist/editor/page-editor-chrome/FrameMenus.js.map +1 -1
- package/dist/editor/page-editor-chrome/InlineFieldHistoryButton.d.ts +2 -2
- package/dist/editor/page-editor-chrome/InlineFieldHistoryButton.js +20 -39
- package/dist/editor/page-editor-chrome/InlineFieldHistoryButton.js.map +1 -1
- package/dist/editor/page-editor-chrome/LockedFieldIndicator.d.ts +1 -1
- package/dist/editor/page-editor-chrome/LockedFieldIndicator.js +27 -21
- package/dist/editor/page-editor-chrome/LockedFieldIndicator.js.map +1 -1
- package/dist/editor/page-editor-chrome/NoLayout.js +5 -3
- package/dist/editor/page-editor-chrome/NoLayout.js.map +1 -1
- package/dist/editor/page-editor-chrome/PageEditorChrome.d.ts +1 -1
- package/dist/editor/page-editor-chrome/PageEditorChrome.js +29 -23
- package/dist/editor/page-editor-chrome/PageEditorChrome.js.map +1 -1
- package/dist/editor/page-editor-chrome/PictureEditorOverlay.d.ts +1 -1
- package/dist/editor/page-editor-chrome/PictureEditorOverlay.js +24 -21
- package/dist/editor/page-editor-chrome/PictureEditorOverlay.js.map +1 -1
- package/dist/editor/page-editor-chrome/PlaceholderDropZone.js +10 -4
- package/dist/editor/page-editor-chrome/PlaceholderDropZone.js.map +1 -1
- package/dist/editor/page-editor-chrome/PlaceholderDropZones.d.ts +1 -1
- package/dist/editor/page-editor-chrome/PlaceholderDropZones.js +11 -10
- package/dist/editor/page-editor-chrome/PlaceholderDropZones.js.map +1 -1
- package/dist/editor/page-editor-chrome/SpellCheckHighlightings.d.ts +12 -0
- package/dist/editor/page-editor-chrome/SpellCheckHighlightings.js +197 -0
- package/dist/editor/page-editor-chrome/SpellCheckHighlightings.js.map +1 -0
- package/dist/editor/page-editor-chrome/SuggestionHighlightings.d.ts +1 -1
- package/dist/editor/page-editor-chrome/SuggestionHighlightings.js +226 -388
- package/dist/editor/page-editor-chrome/SuggestionHighlightings.js.map +1 -1
- package/dist/editor/page-editor-chrome/ValidationRulerMarks.d.ts +11 -0
- package/dist/editor/page-editor-chrome/ValidationRulerMarks.js +56 -0
- package/dist/editor/page-editor-chrome/ValidationRulerMarks.js.map +1 -0
- package/dist/editor/page-editor-chrome/VersionDiffHighlightings.d.ts +1 -1
- package/dist/editor/page-editor-chrome/VersionDiffHighlightings.js +11 -8
- package/dist/editor/page-editor-chrome/VersionDiffHighlightings.js.map +1 -1
- package/dist/editor/page-editor-chrome/overlay/IframeOverlayProvider.d.ts +15 -2
- package/dist/editor/page-editor-chrome/overlay/IframeOverlayProvider.js +70 -9
- package/dist/editor/page-editor-chrome/overlay/IframeOverlayProvider.js.map +1 -1
- package/dist/editor/page-editor-chrome/overlay/feedbackAnchorMeasurements.d.ts +44 -0
- package/dist/editor/page-editor-chrome/overlay/feedbackAnchorMeasurements.js +89 -0
- package/dist/editor/page-editor-chrome/overlay/feedbackAnchorMeasurements.js.map +1 -0
- package/dist/editor/page-editor-chrome/overlay/feedbackAnchorStore.d.ts +17 -0
- package/dist/editor/page-editor-chrome/overlay/feedbackAnchorStore.js +53 -0
- package/dist/editor/page-editor-chrome/overlay/feedbackAnchorStore.js.map +1 -0
- package/dist/editor/page-editor-chrome/overlay/geometry.d.ts +15 -0
- package/dist/editor/page-editor-chrome/overlay/geometry.js +40 -0
- package/dist/editor/page-editor-chrome/overlay/geometry.js.map +1 -1
- package/dist/editor/page-editor-chrome/overlay/useBridgeTextRangeRequest.d.ts +11 -0
- package/dist/editor/page-editor-chrome/overlay/useBridgeTextRangeRequest.js +84 -0
- package/dist/editor/page-editor-chrome/overlay/useBridgeTextRangeRequest.js.map +1 -0
- package/dist/editor/page-editor-chrome/overlay/useCommentAnchorMeasurements.d.ts +34 -0
- package/dist/editor/page-editor-chrome/overlay/useCommentAnchorMeasurements.js +229 -0
- package/dist/editor/page-editor-chrome/overlay/useCommentAnchorMeasurements.js.map +1 -0
- package/dist/editor/page-editor-chrome/overlay/useOverlayViewportRight.d.ts +9 -0
- package/dist/editor/page-editor-chrome/overlay/useOverlayViewportRight.js +34 -0
- package/dist/editor/page-editor-chrome/overlay/useOverlayViewportRight.js.map +1 -0
- package/dist/editor/page-editor-chrome/overlay/useSuggestionAnchorMeasurements.d.ts +49 -0
- package/dist/editor/page-editor-chrome/overlay/useSuggestionAnchorMeasurements.js +241 -0
- package/dist/editor/page-editor-chrome/overlay/useSuggestionAnchorMeasurements.js.map +1 -0
- package/dist/editor/page-editor-chrome/useBridgeInlineEditing.d.ts +7 -0
- package/dist/editor/page-editor-chrome/useBridgeInlineEditing.js +63 -5
- package/dist/editor/page-editor-chrome/useBridgeInlineEditing.js.map +1 -1
- package/dist/editor/page-editor-chrome/useBridgeRichTextFieldOptions.d.ts +12 -0
- package/dist/editor/page-editor-chrome/useBridgeRichTextFieldOptions.js +79 -0
- package/dist/editor/page-editor-chrome/useBridgeRichTextFieldOptions.js.map +1 -0
- package/dist/editor/page-editor-chrome/useComponentDragHandle.js +1 -1
- package/dist/editor/page-editor-chrome/useComponentDragHandle.js.map +1 -1
- package/dist/editor/page-editor-chrome/useDragInsertionGesture.js +1 -1
- package/dist/editor/page-editor-chrome/useDragInsertionGesture.js.map +1 -1
- package/dist/editor/page-editor-chrome/usePinnedHoveredComponentId.d.ts +1 -1
- package/dist/editor/page-editor-chrome/usePinnedHoveredComponentId.js +4 -2
- package/dist/editor/page-editor-chrome/usePinnedHoveredComponentId.js.map +1 -1
- package/dist/editor/page-viewer/CanvasOverviewRuler.d.ts +11 -0
- package/dist/editor/page-viewer/CanvasOverviewRuler.js +65 -0
- package/dist/editor/page-viewer/CanvasOverviewRuler.js.map +1 -0
- package/dist/editor/page-viewer/DeviceToolbar.d.ts +1 -1
- package/dist/editor/page-viewer/DeviceToolbar.js +8 -3
- package/dist/editor/page-viewer/DeviceToolbar.js.map +1 -1
- package/dist/editor/page-viewer/DynamicRenderingsBar.d.ts +23 -0
- package/dist/editor/page-viewer/DynamicRenderingsBar.js +28 -0
- package/dist/editor/page-viewer/DynamicRenderingsBar.js.map +1 -0
- package/dist/editor/page-viewer/DynamicRenderingsStrip.d.ts +18 -0
- package/dist/editor/page-viewer/DynamicRenderingsStrip.js +29 -0
- package/dist/editor/page-viewer/DynamicRenderingsStrip.js.map +1 -0
- package/dist/editor/page-viewer/EditorForm.js +29 -24
- package/dist/editor/page-viewer/EditorForm.js.map +1 -1
- package/dist/editor/page-viewer/FeedbackMargin.d.ts +57 -0
- package/dist/editor/page-viewer/FeedbackMargin.js +378 -0
- package/dist/editor/page-viewer/FeedbackMargin.js.map +1 -0
- package/dist/editor/page-viewer/FeedbackMarginController.d.ts +76 -0
- package/dist/editor/page-viewer/FeedbackMarginController.js +241 -0
- package/dist/editor/page-viewer/FeedbackMarginController.js.map +1 -0
- package/dist/editor/page-viewer/FeedbackMarginMarker.d.ts +16 -0
- package/dist/editor/page-viewer/FeedbackMarginMarker.js +24 -0
- package/dist/editor/page-viewer/FeedbackMarginMarker.js.map +1 -0
- package/dist/editor/page-viewer/FeedbackMarginResizeHandle.d.ts +23 -0
- package/dist/editor/page-viewer/FeedbackMarginResizeHandle.js +105 -0
- package/dist/editor/page-viewer/FeedbackMarginResizeHandle.js.map +1 -0
- package/dist/editor/page-viewer/InteractivePreviewBar.d.ts +24 -0
- package/dist/editor/page-viewer/InteractivePreviewBar.js +31 -0
- package/dist/editor/page-viewer/InteractivePreviewBar.js.map +1 -0
- package/dist/editor/page-viewer/MiniMap.d.ts +9 -3
- package/dist/editor/page-viewer/MiniMap.js +50 -60
- package/dist/editor/page-viewer/MiniMap.js.map +1 -1
- package/dist/editor/page-viewer/MinimapDropTargets.d.ts +1 -1
- package/dist/editor/page-viewer/MinimapDropTargets.js +9 -7
- package/dist/editor/page-viewer/MinimapDropTargets.js.map +1 -1
- package/dist/editor/page-viewer/MobileCommentsPanel.d.ts +16 -0
- package/dist/editor/page-viewer/MobileCommentsPanel.js +112 -0
- package/dist/editor/page-viewer/MobileCommentsPanel.js.map +1 -0
- package/dist/editor/page-viewer/PageViewer.js +22 -67
- package/dist/editor/page-viewer/PageViewer.js.map +1 -1
- package/dist/editor/page-viewer/PageViewerFrame.d.ts +1 -0
- package/dist/editor/page-viewer/PageViewerFrame.js +610 -224
- package/dist/editor/page-viewer/PageViewerFrame.js.map +1 -1
- package/dist/editor/page-viewer/RenderingAiCheck.d.ts +18 -0
- package/dist/editor/page-viewer/RenderingAiCheck.js +45 -0
- package/dist/editor/page-viewer/RenderingAiCheck.js.map +1 -0
- package/dist/editor/page-viewer/RenderingApprovalDialog.d.ts +32 -0
- package/dist/editor/page-viewer/RenderingApprovalDialog.js +191 -0
- package/dist/editor/page-viewer/RenderingApprovalDialog.js.map +1 -0
- package/dist/editor/page-viewer/SealedClientCodePreview.d.ts +17 -0
- package/dist/editor/page-viewer/SealedClientCodePreview.js +38 -0
- package/dist/editor/page-viewer/SealedClientCodePreview.js.map +1 -0
- package/dist/editor/page-viewer/bridgeFieldPatch.d.ts +9 -0
- package/dist/editor/page-viewer/bridgeFieldPatch.js +21 -0
- package/dist/editor/page-viewer/bridgeFieldPatch.js.map +1 -1
- package/dist/editor/page-viewer/bridgeInlineEditSession.js +8 -0
- package/dist/editor/page-viewer/bridgeInlineEditSession.js.map +1 -1
- package/dist/editor/page-viewer/canvasFrameNavigation.d.ts +18 -0
- package/dist/editor/page-viewer/canvasFrameNavigation.js +36 -0
- package/dist/editor/page-viewer/canvasFrameNavigation.js.map +1 -0
- package/dist/editor/page-viewer/canvasLoadSettling.d.ts +42 -0
- package/dist/editor/page-viewer/canvasLoadSettling.js +46 -0
- package/dist/editor/page-viewer/canvasLoadSettling.js.map +1 -0
- package/dist/editor/page-viewer/canvasScrollHandoff.d.ts +34 -0
- package/dist/editor/page-viewer/canvasScrollHandoff.js +55 -0
- package/dist/editor/page-viewer/canvasScrollHandoff.js.map +1 -0
- package/dist/editor/page-viewer/feedbackMarginLayout.d.ts +119 -0
- package/dist/editor/page-viewer/feedbackMarginLayout.js +155 -0
- package/dist/editor/page-viewer/feedbackMarginLayout.js.map +1 -0
- package/dist/editor/page-viewer/feedbackMarginSources.d.ts +36 -0
- package/dist/editor/page-viewer/feedbackMarginSources.js +196 -0
- package/dist/editor/page-viewer/feedbackMarginSources.js.map +1 -0
- package/dist/editor/page-viewer/feedbackMarginWidth.d.ts +43 -0
- package/dist/editor/page-viewer/feedbackMarginWidth.js +107 -0
- package/dist/editor/page-viewer/feedbackMarginWidth.js.map +1 -0
- package/dist/editor/page-viewer/interactivePreview.d.ts +168 -0
- package/dist/editor/page-viewer/interactivePreview.js +344 -0
- package/dist/editor/page-viewer/interactivePreview.js.map +1 -0
- package/dist/editor/page-viewer/minimapViewport.js +5 -2
- package/dist/editor/page-viewer/minimapViewport.js.map +1 -1
- package/dist/editor/page-viewer/openPageItems.d.ts +29 -0
- package/dist/editor/page-viewer/openPageItems.js +73 -0
- package/dist/editor/page-viewer/openPageItems.js.map +1 -0
- package/dist/editor/page-viewer/overviewRuler.d.ts +128 -0
- package/dist/editor/page-viewer/overviewRuler.js +226 -0
- package/dist/editor/page-viewer/overviewRuler.js.map +1 -0
- package/dist/editor/page-viewer/pageViewContext.d.ts +99 -37
- package/dist/editor/page-viewer/pageViewContext.js +207 -238
- package/dist/editor/page-viewer/pageViewContext.js.map +1 -1
- package/dist/editor/page-viewer/renderingApproval.d.ts +59 -0
- package/dist/editor/page-viewer/renderingApproval.js +186 -0
- package/dist/editor/page-viewer/renderingApproval.js.map +1 -0
- package/dist/editor/page-viewer/renderingChanges.d.ts +29 -0
- package/dist/editor/page-viewer/renderingChanges.js +40 -0
- package/dist/editor/page-viewer/renderingChanges.js.map +1 -0
- package/dist/editor/page-viewer/scrollIntoViewTextRanges.d.ts +23 -0
- package/dist/editor/page-viewer/scrollIntoViewTextRanges.js +26 -0
- package/dist/editor/page-viewer/scrollIntoViewTextRanges.js.map +1 -0
- package/dist/editor/page-viewer/useInteractivePreview.d.ts +77 -0
- package/dist/editor/page-viewer/useInteractivePreview.js +210 -0
- package/dist/editor/page-viewer/useInteractivePreview.js.map +1 -0
- package/dist/editor/pageModel.d.ts +12 -0
- package/dist/editor/personalization/ConditionTreeEditor.js +1 -1
- package/dist/editor/personalization/ConditionTreeEditor.js.map +1 -1
- package/dist/editor/personalization/PersonalizationPanel.js +1 -1
- package/dist/editor/personalization/PersonalizationPanel.js.map +1 -1
- package/dist/editor/reviews/CollapsibleText.d.ts +13 -0
- package/dist/editor/reviews/CollapsibleText.js +41 -0
- package/dist/editor/reviews/CollapsibleText.js.map +1 -0
- package/dist/editor/reviews/Comment.d.ts +10 -1
- package/dist/editor/reviews/Comment.js +47 -26
- package/dist/editor/reviews/Comment.js.map +1 -1
- package/dist/editor/reviews/CommentDisplayPopover.js +29 -25
- package/dist/editor/reviews/CommentDisplayPopover.js.map +1 -1
- package/dist/editor/reviews/CommentEditor.d.ts +25 -1
- package/dist/editor/reviews/CommentEditor.js +130 -24
- package/dist/editor/reviews/CommentEditor.js.map +1 -1
- package/dist/editor/reviews/CommentPopover.d.ts +0 -4
- package/dist/editor/reviews/CommentPopover.js +4 -8
- package/dist/editor/reviews/CommentPopover.js.map +1 -1
- package/dist/editor/reviews/CommentQuote.d.ts +10 -1
- package/dist/editor/reviews/CommentQuote.js +15 -10
- package/dist/editor/reviews/CommentQuote.js.map +1 -1
- package/dist/editor/reviews/CommentTargetOutline.d.ts +13 -0
- package/dist/editor/reviews/CommentTargetOutline.js +21 -0
- package/dist/editor/reviews/CommentTargetOutline.js.map +1 -0
- package/dist/editor/reviews/CommentTargetPickerDomLayer.d.ts +7 -0
- package/dist/editor/reviews/CommentTargetPickerDomLayer.js +117 -0
- package/dist/editor/reviews/CommentTargetPickerDomLayer.js.map +1 -0
- package/dist/editor/reviews/CommentThreadAgentLink.d.ts +6 -1
- package/dist/editor/reviews/CommentThreadAgentLink.js +4 -4
- package/dist/editor/reviews/CommentThreadAgentLink.js.map +1 -1
- package/dist/editor/reviews/CommentThreadCard.d.ts +34 -0
- package/dist/editor/reviews/CommentThreadCard.js +156 -0
- package/dist/editor/reviews/CommentThreadCard.js.map +1 -0
- package/dist/editor/reviews/CommentView.d.ts +7 -1
- package/dist/editor/reviews/CommentView.js +24 -6
- package/dist/editor/reviews/CommentView.js.map +1 -1
- package/dist/editor/reviews/Comments.js +5 -14
- package/dist/editor/reviews/Comments.js.map +1 -1
- package/dist/editor/reviews/CreateReviewDialog.js +36 -9
- package/dist/editor/reviews/CreateReviewDialog.js.map +1 -1
- package/dist/editor/reviews/EditReviewSettingsDialog.js +1 -1
- package/dist/editor/reviews/EditReviewSettingsDialog.js.map +1 -1
- package/dist/editor/reviews/FeedbackCard.d.ts +16 -1
- package/dist/editor/reviews/FeedbackCard.js +14 -3
- package/dist/editor/reviews/FeedbackCard.js.map +1 -1
- package/dist/editor/reviews/FeedbackFilters.d.ts +9 -5
- package/dist/editor/reviews/FeedbackFilters.js +15 -36
- package/dist/editor/reviews/FeedbackFilters.js.map +1 -1
- package/dist/editor/reviews/FeedbackModeIntro.d.ts +7 -1
- package/dist/editor/reviews/FeedbackModeIntro.js +11 -6
- package/dist/editor/reviews/FeedbackModeIntro.js.map +1 -1
- package/dist/editor/reviews/MentionText.d.ts +2 -1
- package/dist/editor/reviews/MentionText.js +5 -3
- package/dist/editor/reviews/MentionText.js.map +1 -1
- package/dist/editor/reviews/MultiReviewManager.js +18 -3
- package/dist/editor/reviews/MultiReviewManager.js.map +1 -1
- package/dist/editor/reviews/ReviewItemsPanel.js +4 -0
- package/dist/editor/reviews/ReviewItemsPanel.js.map +1 -1
- package/dist/editor/reviews/SuggestedEdit.d.ts +10 -1
- package/dist/editor/reviews/SuggestedEdit.js +77 -10
- package/dist/editor/reviews/SuggestedEdit.js.map +1 -1
- package/dist/editor/reviews/SuggestionCommentThread.d.ts +5 -1
- package/dist/editor/reviews/SuggestionCommentThread.js +48 -17
- package/dist/editor/reviews/SuggestionCommentThread.js.map +1 -1
- package/dist/editor/reviews/SuggestionDisplayPopover.d.ts +1 -3
- package/dist/editor/reviews/SuggestionDisplayPopover.js +2 -7
- package/dist/editor/reviews/SuggestionDisplayPopover.js.map +1 -1
- package/dist/editor/reviews/SuggestionThreadCard.d.ts +19 -0
- package/dist/editor/reviews/SuggestionThreadCard.js +25 -0
- package/dist/editor/reviews/SuggestionThreadCard.js.map +1 -0
- package/dist/editor/reviews/addCommentOnTarget.d.ts +22 -0
- package/dist/editor/reviews/addCommentOnTarget.js +32 -0
- package/dist/editor/reviews/addCommentOnTarget.js.map +1 -0
- package/dist/editor/reviews/applySuggestedEditActions.js +7 -1
- package/dist/editor/reviews/applySuggestedEditActions.js.map +1 -1
- package/dist/editor/reviews/balloonLayout.d.ts +51 -0
- package/dist/editor/reviews/balloonLayout.js +101 -0
- package/dist/editor/reviews/balloonLayout.js.map +1 -0
- package/dist/editor/reviews/commentImages.d.ts +1 -2
- package/dist/editor/reviews/commentImages.js +1 -37
- package/dist/editor/reviews/commentImages.js.map +1 -1
- package/dist/editor/reviews/commentTargetPicker.d.ts +114 -0
- package/dist/editor/reviews/commentTargetPicker.js +153 -0
- package/dist/editor/reviews/commentTargetPicker.js.map +1 -0
- package/dist/editor/reviews/feedbackAvatar.js +2 -1
- package/dist/editor/reviews/feedbackAvatar.js.map +1 -1
- package/dist/editor/reviews/feedbackBalloonDate.d.ts +8 -0
- package/dist/editor/reviews/feedbackBalloonDate.js +22 -0
- package/dist/editor/reviews/feedbackBalloonDate.js.map +1 -0
- package/dist/editor/reviews/feedbackDrafts.d.ts +49 -0
- package/dist/editor/reviews/feedbackDrafts.js +74 -0
- package/dist/editor/reviews/feedbackDrafts.js.map +1 -0
- package/dist/editor/reviews/feedbackHoverState.d.ts +18 -0
- package/dist/editor/reviews/feedbackHoverState.js +35 -0
- package/dist/editor/reviews/feedbackHoverState.js.map +1 -0
- package/dist/editor/reviews/feedbackPersonFilter.d.ts +3 -0
- package/dist/editor/reviews/feedbackPersonFilter.js +32 -0
- package/dist/editor/reviews/feedbackPersonFilter.js.map +1 -0
- package/dist/editor/reviews/feedbackSelection.js +7 -3
- package/dist/editor/reviews/feedbackSelection.js.map +1 -1
- package/dist/editor/reviews/feedbackThreadSelection.d.ts +10 -0
- package/dist/editor/reviews/feedbackThreadSelection.js +31 -0
- package/dist/editor/reviews/feedbackThreadSelection.js.map +1 -0
- package/dist/editor/reviews/feedbackThreads.d.ts +50 -0
- package/dist/editor/reviews/feedbackThreads.js +135 -0
- package/dist/editor/reviews/feedbackThreads.js.map +1 -0
- package/dist/editor/reviews/feedbackWheelForwarding.d.ts +34 -0
- package/dist/editor/reviews/feedbackWheelForwarding.js +108 -0
- package/dist/editor/reviews/feedbackWheelForwarding.js.map +1 -0
- package/dist/editor/reviews/openCommentsFeedback.d.ts +1 -1
- package/dist/editor/reviews/openCommentsFeedback.js +2 -1
- package/dist/editor/reviews/openCommentsFeedback.js.map +1 -1
- package/dist/editor/reviews/pendingReviewSelection.d.ts +13 -0
- package/dist/editor/reviews/pendingReviewSelection.js +29 -0
- package/dist/editor/reviews/pendingReviewSelection.js.map +1 -0
- package/dist/editor/reviews/requestReview.d.ts +27 -0
- package/dist/editor/reviews/requestReview.js +36 -0
- package/dist/editor/reviews/requestReview.js.map +1 -0
- package/dist/editor/reviews/reviewUrlScope.d.ts +23 -0
- package/dist/editor/reviews/reviewUrlScope.js +86 -0
- package/dist/editor/reviews/reviewUrlScope.js.map +1 -0
- package/dist/editor/reviews/scrollWithin.d.ts +29 -0
- package/dist/editor/reviews/scrollWithin.js +87 -0
- package/dist/editor/reviews/scrollWithin.js.map +1 -0
- package/dist/editor/reviews/subtreeFeedback.d.ts +57 -0
- package/dist/editor/reviews/subtreeFeedback.js +137 -0
- package/dist/editor/reviews/subtreeFeedback.js.map +1 -0
- package/dist/editor/reviews/useCommentImagePaste.d.ts +9 -1
- package/dist/editor/reviews/useCommentImagePaste.js +68 -4
- package/dist/editor/reviews/useCommentImagePaste.js.map +1 -1
- package/dist/editor/reviews/useFeedbackThreads.d.ts +35 -0
- package/dist/editor/reviews/useFeedbackThreads.js +137 -0
- package/dist/editor/reviews/useFeedbackThreads.js.map +1 -0
- package/dist/editor/reviews/useMeasuredHeights.d.ts +25 -0
- package/dist/editor/reviews/useMeasuredHeights.js +176 -0
- package/dist/editor/reviews/useMeasuredHeights.js.map +1 -0
- package/dist/editor/reviews/usePendingFeedbackFocus.d.ts +7 -0
- package/dist/editor/reviews/usePendingFeedbackFocus.js +42 -0
- package/dist/editor/reviews/usePendingFeedbackFocus.js.map +1 -0
- package/dist/editor/services/agentService.d.ts +101 -5
- package/dist/editor/services/agentService.js +16 -0
- package/dist/editor/services/agentService.js.map +1 -1
- package/dist/editor/services/aiService.d.ts +2 -0
- package/dist/editor/services/aiService.js.map +1 -1
- package/dist/editor/services/contentService.d.ts +11 -1
- package/dist/editor/services/contentService.js +2 -1
- package/dist/editor/services/contentService.js.map +1 -1
- package/dist/editor/services/editService.d.ts +2 -0
- package/dist/editor/services/editService.js.map +1 -1
- package/dist/editor/services/indexService.d.ts +1 -0
- package/dist/editor/services/indexService.js +4 -0
- package/dist/editor/services/indexService.js.map +1 -1
- package/dist/editor/services/mcpAccessService.d.ts +93 -0
- package/dist/editor/services/mcpAccessService.js +41 -0
- package/dist/editor/services/mcpAccessService.js.map +1 -0
- package/dist/editor/services/previewTokenService.d.ts +14 -0
- package/dist/editor/services/previewTokenService.js +34 -0
- package/dist/editor/services/previewTokenService.js.map +1 -0
- package/dist/editor/services/renderingsService.d.ts +117 -0
- package/dist/editor/services/renderingsService.js +245 -0
- package/dist/editor/services/renderingsService.js.map +1 -0
- package/dist/editor/services/reviewsService.d.ts +6 -1
- package/dist/editor/services/reviewsService.js +14 -6
- package/dist/editor/services/reviewsService.js.map +1 -1
- package/dist/editor/services/serviceHelper.d.ts +17 -1
- package/dist/editor/services/serviceHelper.js +67 -12
- package/dist/editor/services/serviceHelper.js.map +1 -1
- package/dist/editor/services/spellCheckService.d.ts +13 -0
- package/dist/editor/services/spellCheckService.js +33 -0
- package/dist/editor/services/spellCheckService.js.map +1 -0
- package/dist/editor/services/suggestedEditsService.d.ts +1 -0
- package/dist/editor/services/suggestedEditsService.js +7 -0
- package/dist/editor/services/suggestedEditsService.js.map +1 -1
- package/dist/editor/settings/MigrationJournalCard.js +2 -2
- package/dist/editor/settings/MigrationJournalCard.js.map +1 -1
- package/dist/editor/settings/StatusSummary.js +5 -2
- package/dist/editor/settings/StatusSummary.js.map +1 -1
- package/dist/editor/settings/index/CollectionWarningsDisplay.js +1 -1
- package/dist/editor/settings/index/CollectionWarningsDisplay.js.map +1 -1
- package/dist/editor/settings/index/IndexGenerationsSection.d.ts +4 -5
- package/dist/editor/settings/index/IndexGenerationsSection.js +83 -33
- package/dist/editor/settings/index/IndexGenerationsSection.js.map +1 -1
- package/dist/editor/settings/panels/AgentProfileConfigPanel.js +1 -1
- package/dist/editor/settings/panels/AgentProfileConfigPanel.js.map +1 -1
- package/dist/editor/settings/panels/AgentToolsPanel.js +1 -1
- package/dist/editor/settings/panels/AgentToolsPanel.js.map +1 -1
- package/dist/editor/settings/panels/JavaScriptToolAgentPanel.js +1 -1
- package/dist/editor/settings/panels/JavaScriptToolAgentPanel.js.map +1 -1
- package/dist/editor/settings/panels/McpAccessPanel.d.ts +7 -0
- package/dist/editor/settings/panels/McpAccessPanel.js +96 -0
- package/dist/editor/settings/panels/McpAccessPanel.js.map +1 -0
- package/dist/editor/settings/panels/McpAccessSettingsView.d.ts +8 -0
- package/dist/editor/settings/panels/McpAccessSettingsView.js +221 -0
- package/dist/editor/settings/panels/McpAccessSettingsView.js.map +1 -0
- package/dist/editor/settings/panels/ModelConfigPanel.js +1 -0
- package/dist/editor/settings/panels/ModelConfigPanel.js.map +1 -1
- package/dist/editor/settings/panels/ModelsPanel.js +60 -6
- package/dist/editor/settings/panels/ModelsPanel.js.map +1 -1
- package/dist/editor/settings/panels/PersistentLogsPanel.js +2 -1
- package/dist/editor/settings/panels/PersistentLogsPanel.js.map +1 -1
- package/dist/editor/settings/panels/ProjectTemplateAgentPanel.js +1 -1
- package/dist/editor/settings/panels/ProjectTemplateAgentPanel.js.map +1 -1
- package/dist/editor/settings/panels/ProvidersPanel.js +2 -1
- package/dist/editor/settings/panels/ProvidersPanel.js.map +1 -1
- package/dist/editor/settings/panels/SearchConfigPanel.js +6 -5
- package/dist/editor/settings/panels/SearchConfigPanel.js.map +1 -1
- package/dist/editor/settings/panels/SpellCheckPanel.d.ts +8 -0
- package/dist/editor/settings/panels/SpellCheckPanel.js +253 -0
- package/dist/editor/settings/panels/SpellCheckPanel.js.map +1 -0
- package/dist/editor/settings/panels/StatusPanel.js +5 -6
- package/dist/editor/settings/panels/StatusPanel.js.map +1 -1
- package/dist/editor/settings/panels/UserPreferencesPanel.js +5 -2
- package/dist/editor/settings/panels/UserPreferencesPanel.js.map +1 -1
- package/dist/editor/settings/panels/index.d.ts +2 -0
- package/dist/editor/settings/panels/index.js +2 -0
- package/dist/editor/settings/panels/index.js.map +1 -1
- package/dist/editor/sidebar/ComponentPalette.js +7 -3
- package/dist/editor/sidebar/ComponentPalette.js.map +1 -1
- package/dist/editor/sidebar/ComponentTree.d.ts +1 -1
- package/dist/editor/sidebar/ComponentTree.js +32 -56
- package/dist/editor/sidebar/ComponentTree.js.map +1 -1
- package/dist/editor/sidebar/DictionaryEditor.js +2 -1
- package/dist/editor/sidebar/DictionaryEditor.js.map +1 -1
- package/dist/editor/sidebar/EditHistory.js +5 -4
- package/dist/editor/sidebar/EditHistory.js.map +1 -1
- package/dist/editor/sidebar/FeedbackSidebar.d.ts +7 -0
- package/dist/editor/sidebar/FeedbackSidebar.js +300 -0
- package/dist/editor/sidebar/FeedbackSidebar.js.map +1 -0
- package/dist/editor/sidebar/OperationDetailsContent.js +50 -0
- package/dist/editor/sidebar/OperationDetailsContent.js.map +1 -1
- package/dist/editor/sidebar/OperationItem.js +2 -0
- package/dist/editor/sidebar/OperationItem.js.map +1 -1
- package/dist/editor/sidebar/Sessions.js +3 -1
- package/dist/editor/sidebar/Sessions.js.map +1 -1
- package/dist/editor/sidebar/Validation.js +1 -1
- package/dist/editor/sidebar/Validation.js.map +1 -1
- package/dist/editor/sidebar/Workbox.js +3 -108
- package/dist/editor/sidebar/Workbox.js.map +1 -1
- package/dist/editor/sidebar/liveComponentThumbnails.d.ts +1 -1
- package/dist/editor/sidebar/liveComponentThumbnails.js +19 -14
- package/dist/editor/sidebar/liveComponentThumbnails.js.map +1 -1
- package/dist/editor/spellcheck/canvasSpellCheckContextMenu.d.ts +30 -0
- package/dist/editor/spellcheck/canvasSpellCheckContextMenu.js +69 -0
- package/dist/editor/spellcheck/canvasSpellCheckContextMenu.js.map +1 -0
- package/dist/editor/spellcheck/htmlSpellDocument.d.ts +60 -0
- package/dist/editor/spellcheck/htmlSpellDocument.js +181 -0
- package/dist/editor/spellcheck/htmlSpellDocument.js.map +1 -0
- package/dist/editor/spellcheck/htmlSpellTokenizer.d.ts +45 -0
- package/dist/editor/spellcheck/htmlSpellTokenizer.js +277 -0
- package/dist/editor/spellcheck/htmlSpellTokenizer.js.map +1 -0
- package/dist/editor/spellcheck/replacementGuard.d.ts +27 -0
- package/dist/editor/spellcheck/replacementGuard.js +29 -0
- package/dist/editor/spellcheck/replacementGuard.js.map +1 -0
- package/dist/editor/spellcheck/spellCheckCanvasStore.d.ts +17 -0
- package/dist/editor/spellcheck/spellCheckCanvasStore.js +37 -0
- package/dist/editor/spellcheck/spellCheckCanvasStore.js.map +1 -0
- package/dist/editor/spellcheck/spellCheckCanvasTargets.d.ts +71 -0
- package/dist/editor/spellcheck/spellCheckCanvasTargets.js +126 -0
- package/dist/editor/spellcheck/spellCheckCanvasTargets.js.map +1 -0
- package/dist/editor/spellcheck/spellCheckClient.d.ts +66 -0
- package/dist/editor/spellcheck/spellCheckClient.js +0 -0
- package/dist/editor/spellcheck/spellCheckClient.js.map +1 -0
- package/dist/editor/spellcheck/spellCheckContextMenu.d.ts +52 -0
- package/dist/editor/spellcheck/spellCheckContextMenu.js +120 -0
- package/dist/editor/spellcheck/spellCheckContextMenu.js.map +1 -0
- package/dist/editor/spellcheck/spellCheckReplace.d.ts +8 -0
- package/dist/editor/spellcheck/spellCheckReplace.js +20 -0
- package/dist/editor/spellcheck/spellCheckReplace.js.map +1 -0
- package/dist/editor/spellcheck/spellCheckStyles.d.ts +11 -0
- package/dist/editor/spellcheck/spellCheckStyles.js +12 -0
- package/dist/editor/spellcheck/spellCheckStyles.js.map +1 -0
- package/dist/editor/spellcheck/spellCheckTypes.d.ts +94 -0
- package/dist/editor/spellcheck/spellCheckTypes.js +2 -0
- package/dist/editor/spellcheck/spellCheckTypes.js.map +1 -0
- package/dist/editor/spellcheck/textMarkHitTest.d.ts +14 -0
- package/dist/editor/spellcheck/textMarkHitTest.js +39 -0
- package/dist/editor/spellcheck/textMarkHitTest.js.map +1 -0
- package/dist/editor/spellcheck/useSpellCheck.d.ts +16 -0
- package/dist/editor/spellcheck/useSpellCheck.js +57 -0
- package/dist/editor/spellcheck/useSpellCheck.js.map +1 -0
- package/dist/editor/ui/DynamicRenderingsPublishWarning.d.ts +14 -0
- package/dist/editor/ui/DynamicRenderingsPublishWarning.js +40 -0
- package/dist/editor/ui/DynamicRenderingsPublishWarning.js.map +1 -0
- package/dist/editor/ui/ItemNameDialogNew.js +11 -2
- package/dist/editor/ui/ItemNameDialogNew.js.map +1 -1
- package/dist/editor/ui/ItemSearch.d.ts +2 -0
- package/dist/editor/ui/ItemSearch.js +2 -2
- package/dist/editor/ui/ItemSearch.js.map +1 -1
- package/dist/editor/ui/PublishDialog.d.ts +2 -0
- package/dist/editor/ui/PublishDialog.js +4 -1
- package/dist/editor/ui/PublishDialog.js.map +1 -1
- package/dist/editor/ui/PublishItemDialog.js +3 -2
- package/dist/editor/ui/PublishItemDialog.js.map +1 -1
- package/dist/editor/ui/PublishReadinessSummary.js +1 -1
- package/dist/editor/ui/PublishReadinessSummary.js.map +1 -1
- package/dist/editor/ui/PublishRestrictionsDialog.d.ts +33 -0
- package/dist/editor/ui/PublishRestrictionsDialog.js +208 -38
- package/dist/editor/ui/PublishRestrictionsDialog.js.map +1 -1
- package/dist/editor/ui/RootItemPicker.d.ts +18 -0
- package/dist/editor/ui/RootItemPicker.js +112 -0
- package/dist/editor/ui/RootItemPicker.js.map +1 -0
- package/dist/editor/ui/WorkboxItemsTable.js +1 -1
- package/dist/editor/ui/WorkboxItemsTable.js.map +1 -1
- package/dist/editor/utils/dataTransferImages.d.ts +7 -0
- package/dist/editor/utils/dataTransferImages.js +43 -0
- package/dist/editor/utils/dataTransferImages.js.map +1 -0
- package/dist/editor/utils/itemConverters.js +9 -0
- package/dist/editor/utils/itemConverters.js.map +1 -1
- package/dist/editor/utils/keyboardNavigation.js +38 -4
- package/dist/editor/utils/keyboardNavigation.js.map +1 -1
- package/dist/editor/utils.d.ts +4 -4
- package/dist/editor/utils.js +9 -8
- package/dist/editor/utils.js.map +1 -1
- package/dist/editor/validation/navigateToValidationIssue.d.ts +2 -2
- package/dist/editor/validation/navigateToValidationIssue.js +1 -1
- package/dist/editor/validation/navigateToValidationIssue.js.map +1 -1
- package/dist/editor/validation/validationRulerIssues.d.ts +17 -0
- package/dist/editor/validation/validationRulerIssues.js +44 -0
- package/dist/editor/validation/validationRulerIssues.js.map +1 -0
- package/dist/editor/views/CompareView.js +3 -4
- package/dist/editor/views/CompareView.js.map +1 -1
- package/dist/editor/views/EditorSlot.js +10 -4
- package/dist/editor/views/EditorSlot.js.map +1 -1
- package/dist/editor/views/ItemEditor.d.ts +3 -1
- package/dist/editor/views/ItemEditor.js +43 -38
- package/dist/editor/views/ItemEditor.js.map +1 -1
- package/dist/editor/views/ItemEditorPane.js +3 -3
- package/dist/editor/views/ItemEditorPane.js.map +1 -1
- package/dist/editor/views/SingleEditView.js +10 -32
- package/dist/editor/views/SingleEditView.js.map +1 -1
- package/dist/editor/views/editorSlotContext.js +62 -90
- package/dist/editor/views/editorSlotContext.js.map +1 -1
- package/dist/index.d.ts +10 -5
- package/dist/index.js +8 -4
- package/dist/index.js.map +1 -1
- package/dist/licensing/FeatureGate.js +1 -1
- package/dist/licensing/FeatureGate.js.map +1 -1
- package/dist/licensing/LicenseContext.js +31 -17
- package/dist/licensing/LicenseContext.js.map +1 -1
- package/dist/revision.d.ts +2 -2
- package/dist/revision.js +2 -2
- package/dist/setup/services/setupWizardService.d.ts +6 -2
- package/dist/setup/services/setupWizardService.js +10 -0
- package/dist/setup/services/setupWizardService.js.map +1 -1
- package/dist/setup/wizard/steps/AddModelDialog.js +1 -0
- package/dist/setup/wizard/steps/AddModelDialog.js.map +1 -1
- package/dist/setup/wizard/steps/ImportModelDialog.js +2 -1
- package/dist/setup/wizard/steps/ImportModelDialog.js.map +1 -1
- package/dist/splash-screen/ModernSplashScreen.js +4 -3
- package/dist/splash-screen/ModernSplashScreen.js.map +1 -1
- package/dist/splash-screen/RecentPages.js +5 -2
- package/dist/splash-screen/RecentPages.js.map +1 -1
- package/dist/task-board/TaskBoardWorkspace.js +49 -12
- package/dist/task-board/TaskBoardWorkspace.js.map +1 -1
- package/dist/task-board/components/GoalsMatrix.js +1 -1
- package/dist/task-board/components/GoalsMatrix.js.map +1 -1
- package/dist/task-board/components/IssuePanel.js +4 -4
- package/dist/task-board/components/IssuePanel.js.map +1 -1
- package/dist/task-board/components/ProjectBudgetBanner.js +1 -1
- package/dist/task-board/components/ProjectBudgetBanner.js.map +1 -1
- package/dist/task-board/components/ProjectGoalsPanel.js +1 -1
- package/dist/task-board/components/ProjectGoalsPanel.js.map +1 -1
- package/dist/task-board/components/TaskDetailPanel.js +18 -8
- package/dist/task-board/components/TaskDetailPanel.js.map +1 -1
- package/dist/task-board/components/WizardCommunicationCards.js +1 -1
- package/dist/task-board/components/WizardCommunicationCards.js.map +1 -1
- package/dist/task-board/services/taskService.d.ts +1 -2
- package/dist/task-board/services/taskService.js +0 -3
- package/dist/task-board/services/taskService.js.map +1 -1
- package/dist/task-board/taskBlockers.d.ts +10 -0
- package/dist/task-board/taskBlockers.js +66 -0
- package/dist/task-board/taskBlockers.js.map +1 -0
- package/dist/task-board/types.d.ts +0 -7
- package/dist/task-board/utils/projectDashboardModel.js +7 -1
- package/dist/task-board/utils/projectDashboardModel.js.map +1 -1
- package/dist/task-board/views/DependencyGraphView.d.ts +22 -0
- package/dist/task-board/views/DependencyGraphView.js +111 -14
- package/dist/task-board/views/DependencyGraphView.js.map +1 -1
- package/dist/task-board/views/KanbanView.js +8 -10
- package/dist/task-board/views/KanbanView.js.map +1 -1
- package/dist/task-board/views/ProjectDashboardView.js +5 -13
- package/dist/task-board/views/ProjectDashboardView.js.map +1 -1
- package/dist/tour/Tour.js +4 -1
- package/dist/tour/Tour.js.map +1 -1
- package/dist/tour/sandbox-tour-copy.d.ts +8 -0
- package/dist/tour/sandbox-tour-copy.js +8 -0
- package/dist/tour/sandbox-tour-copy.js.map +1 -1
- package/dist/tour/sandbox-tour.d.ts +3 -0
- package/dist/tour/sandbox-tour.js +107 -3
- package/dist/tour/sandbox-tour.js.map +1 -1
- package/dist/types.d.ts +85 -1
- package/package.json +6 -2
- package/styles.css +17 -0
- package/dist/editor/page-editor-chrome/bridgeLinkValue.d.ts +0 -10
- package/dist/editor/page-editor-chrome/bridgeLinkValue.js +0 -55
- package/dist/editor/page-editor-chrome/bridgeLinkValue.js.map +0 -1
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { createContext, useCallback, useContext, useMemo, useRef, useSyncExternalStore, } from "react";
|
|
3
|
+
const EMPTY_DRAFT = Object.freeze({});
|
|
4
|
+
export function createFeedbackDraftStore() {
|
|
5
|
+
const drafts = new Map();
|
|
6
|
+
const listeners = new Map();
|
|
7
|
+
const notify = (threadId) => {
|
|
8
|
+
listeners.get(threadId)?.forEach((listener) => listener());
|
|
9
|
+
};
|
|
10
|
+
return {
|
|
11
|
+
get: (threadId) => drafts.get(threadId),
|
|
12
|
+
update: (threadId, patch) => {
|
|
13
|
+
const current = drafts.get(threadId) ?? EMPTY_DRAFT;
|
|
14
|
+
const next = typeof patch === "function" ? patch(current) : { ...current, ...patch };
|
|
15
|
+
drafts.set(threadId, next);
|
|
16
|
+
notify(threadId);
|
|
17
|
+
},
|
|
18
|
+
clear: (threadId) => {
|
|
19
|
+
if (!drafts.has(threadId))
|
|
20
|
+
return;
|
|
21
|
+
drafts.delete(threadId);
|
|
22
|
+
notify(threadId);
|
|
23
|
+
},
|
|
24
|
+
subscribe: (threadId, listener) => {
|
|
25
|
+
let set = listeners.get(threadId);
|
|
26
|
+
if (!set) {
|
|
27
|
+
set = new Set();
|
|
28
|
+
listeners.set(threadId, set);
|
|
29
|
+
}
|
|
30
|
+
set.add(listener);
|
|
31
|
+
return () => {
|
|
32
|
+
set.delete(listener);
|
|
33
|
+
if (set.size === 0)
|
|
34
|
+
listeners.delete(threadId);
|
|
35
|
+
};
|
|
36
|
+
},
|
|
37
|
+
};
|
|
38
|
+
}
|
|
39
|
+
const FeedbackDraftsContext = createContext(null);
|
|
40
|
+
/**
|
|
41
|
+
* Provides the draft store to a feedback surface. A provider nested inside
|
|
42
|
+
* another one reuses the outer store: the editor shell owns one store above
|
|
43
|
+
* the desktop/mobile layout switch, so an unsaved reply survives rotating a
|
|
44
|
+
* phone, and every surface (margin, form margin, mobile panel) sees it.
|
|
45
|
+
* Standalone usages (popovers, tests) still get a store of their own.
|
|
46
|
+
*/
|
|
47
|
+
export function FeedbackDraftsProvider({ children, store, }) {
|
|
48
|
+
const inherited = useContext(FeedbackDraftsContext);
|
|
49
|
+
const ownStoreRef = useRef(null);
|
|
50
|
+
if (!store && !inherited && !ownStoreRef.current) {
|
|
51
|
+
ownStoreRef.current = createFeedbackDraftStore();
|
|
52
|
+
}
|
|
53
|
+
return (_jsx(FeedbackDraftsContext.Provider, { value: store ?? inherited ?? ownStoreRef.current, children: children }));
|
|
54
|
+
}
|
|
55
|
+
export function useFeedbackDraftStore() {
|
|
56
|
+
const contextStore = useContext(FeedbackDraftsContext);
|
|
57
|
+
// Outside a provider (popovers, tests) each consumer keeps a private store,
|
|
58
|
+
// which behaves exactly like component-local state.
|
|
59
|
+
const localStoreRef = useRef(null);
|
|
60
|
+
if (!contextStore && !localStoreRef.current) {
|
|
61
|
+
localStoreRef.current = createFeedbackDraftStore();
|
|
62
|
+
}
|
|
63
|
+
return contextStore ?? localStoreRef.current;
|
|
64
|
+
}
|
|
65
|
+
export function useFeedbackDraft(threadId) {
|
|
66
|
+
const store = useFeedbackDraftStore();
|
|
67
|
+
const subscribe = useCallback((listener) => store.subscribe(threadId, listener), [store, threadId]);
|
|
68
|
+
const getSnapshot = useCallback(() => store.get(threadId) ?? EMPTY_DRAFT, [store, threadId]);
|
|
69
|
+
const draft = useSyncExternalStore(subscribe, getSnapshot, getSnapshot);
|
|
70
|
+
const update = useCallback((patch) => store.update(threadId, patch), [store, threadId]);
|
|
71
|
+
const clear = useCallback(() => store.clear(threadId), [store, threadId]);
|
|
72
|
+
return useMemo(() => [draft, update, clear], [draft, update, clear]);
|
|
73
|
+
}
|
|
74
|
+
//# sourceMappingURL=feedbackDrafts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"feedbackDrafts.js","sourceRoot":"","sources":["../../../src/editor/reviews/feedbackDrafts.tsx"],"names":[],"mappings":";AAAA,OAAO,EACL,aAAa,EAEb,WAAW,EACX,UAAU,EACV,OAAO,EACP,MAAM,EACN,oBAAoB,GACrB,MAAM,OAAO,CAAC;AAmCf,MAAM,WAAW,GAAkB,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;AAErD,MAAM,UAAU,wBAAwB;IACtC,MAAM,MAAM,GAAG,IAAI,GAAG,EAAyB,CAAC;IAChD,MAAM,SAAS,GAAG,IAAI,GAAG,EAAyB,CAAC;IAEnD,MAAM,MAAM,GAAG,CAAC,QAAgB,EAAE,EAAE;QAClC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC7D,CAAC,CAAC;IAEF,OAAO;QACL,GAAG,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;QACvC,MAAM,EAAE,CAAC,QAAQ,EAAE,KAAK,EAAE,EAAE;YAC1B,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,WAAW,CAAC;YACpD,MAAM,IAAI,GACR,OAAO,KAAK,KAAK,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,OAAO,EAAE,GAAG,KAAK,EAAE,CAAC;YAC1E,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;YAC3B,MAAM,CAAC,QAAQ,CAAC,CAAC;QACnB,CAAC;QACD,KAAK,EAAE,CAAC,QAAQ,EAAE,EAAE;YAClB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;gBAAE,OAAO;YAClC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YACxB,MAAM,CAAC,QAAQ,CAAC,CAAC;QACnB,CAAC;QACD,SAAS,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,EAAE;YAChC,IAAI,GAAG,GAAG,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAClC,IAAI,CAAC,GAAG,EAAE,CAAC;gBACT,GAAG,GAAG,IAAI,GAAG,EAAE,CAAC;gBAChB,SAAS,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;YAC/B,CAAC;YACD,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAClB,OAAO,GAAG,EAAE;gBACV,GAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;gBACtB,IAAI,GAAI,CAAC,IAAI,KAAK,CAAC;oBAAE,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAClD,CAAC,CAAC;QACJ,CAAC;KACF,CAAC;AACJ,CAAC;AAED,MAAM,qBAAqB,GAAG,aAAa,CAA4B,IAAI,CAAC,CAAC;AAE7E;;;;;;GAMG;AACH,MAAM,UAAU,sBAAsB,CAAC,EACrC,QAAQ,EACR,KAAK,GAKN;IACC,MAAM,SAAS,GAAG,UAAU,CAAC,qBAAqB,CAAC,CAAC;IACpD,MAAM,WAAW,GAAG,MAAM,CAA4B,IAAI,CAAC,CAAC;IAC5D,IAAI,CAAC,KAAK,IAAI,CAAC,SAAS,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;QACjD,WAAW,CAAC,OAAO,GAAG,wBAAwB,EAAE,CAAC;IACnD,CAAC;IACD,OAAO,CACL,KAAC,qBAAqB,CAAC,QAAQ,IAC7B,KAAK,EAAE,KAAK,IAAI,SAAS,IAAI,WAAW,CAAC,OAAO,YAE/C,QAAQ,GACsB,CAClC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,qBAAqB;IACnC,MAAM,YAAY,GAAG,UAAU,CAAC,qBAAqB,CAAC,CAAC;IACvD,4EAA4E;IAC5E,oDAAoD;IACpD,MAAM,aAAa,GAAG,MAAM,CAA4B,IAAI,CAAC,CAAC;IAC9D,IAAI,CAAC,YAAY,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC;QAC5C,aAAa,CAAC,OAAO,GAAG,wBAAwB,EAAE,CAAC;IACrD,CAAC;IACD,OAAO,YAAY,IAAI,aAAa,CAAC,OAAQ,CAAC;AAChD,CAAC;AAQD,MAAM,UAAU,gBAAgB,CAAC,QAAgB;IAC/C,MAAM,KAAK,GAAG,qBAAqB,EAAE,CAAC;IACtC,MAAM,SAAS,GAAG,WAAW,CAC3B,CAAC,QAAkB,EAAE,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAC3D,CAAC,KAAK,EAAE,QAAQ,CAAC,CAClB,CAAC;IACF,MAAM,WAAW,GAAG,WAAW,CAC7B,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,WAAW,EACxC,CAAC,KAAK,EAAE,QAAQ,CAAC,CAClB,CAAC;IACF,MAAM,KAAK,GAAG,oBAAoB,CAAC,SAAS,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC;IACxE,MAAM,MAAM,GAAG,WAAW,CACxB,CAAC,KAA6B,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,EAChE,CAAC,KAAK,EAAE,QAAQ,CAAC,CAClB,CAAC;IACF,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC;IAC1E,OAAO,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;AACvE,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The feedback thread currently hovered in the comment margin (or on the
|
|
3
|
+
* canvas). Kept outside the edit context because it changes on every mouse
|
|
4
|
+
* move across cards and only the highlight overlay and the margin care.
|
|
5
|
+
*/
|
|
6
|
+
export type HoveredFeedback = {
|
|
7
|
+
kind: "comment" | "suggestion";
|
|
8
|
+
/** Thread id: the root comment's id or the suggestion's id. */
|
|
9
|
+
id: string;
|
|
10
|
+
};
|
|
11
|
+
type Listener = () => void;
|
|
12
|
+
export declare function setHoveredFeedback(next: HoveredFeedback | null): void;
|
|
13
|
+
/** Clears the hover only if it still points at `id`. */
|
|
14
|
+
export declare function clearHoveredFeedback(id: string): void;
|
|
15
|
+
export declare function getHoveredFeedback(): HoveredFeedback | null;
|
|
16
|
+
export declare function subscribeHoveredFeedback(listener: Listener): () => void;
|
|
17
|
+
export declare function useHoveredFeedback(): HoveredFeedback | null;
|
|
18
|
+
export {};
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { useSyncExternalStore } from "react";
|
|
2
|
+
let hovered = null;
|
|
3
|
+
const listeners = new Set();
|
|
4
|
+
function notify() {
|
|
5
|
+
for (const listener of listeners)
|
|
6
|
+
listener();
|
|
7
|
+
}
|
|
8
|
+
export function setHoveredFeedback(next) {
|
|
9
|
+
if ((hovered === null && next === null) ||
|
|
10
|
+
(hovered && next && hovered.kind === next.kind && hovered.id === next.id)) {
|
|
11
|
+
return;
|
|
12
|
+
}
|
|
13
|
+
hovered = next;
|
|
14
|
+
notify();
|
|
15
|
+
}
|
|
16
|
+
/** Clears the hover only if it still points at `id`. */
|
|
17
|
+
export function clearHoveredFeedback(id) {
|
|
18
|
+
if (hovered?.id !== id)
|
|
19
|
+
return;
|
|
20
|
+
hovered = null;
|
|
21
|
+
notify();
|
|
22
|
+
}
|
|
23
|
+
export function getHoveredFeedback() {
|
|
24
|
+
return hovered;
|
|
25
|
+
}
|
|
26
|
+
export function subscribeHoveredFeedback(listener) {
|
|
27
|
+
listeners.add(listener);
|
|
28
|
+
return () => {
|
|
29
|
+
listeners.delete(listener);
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
export function useHoveredFeedback() {
|
|
33
|
+
return useSyncExternalStore(subscribeHoveredFeedback, getHoveredFeedback, getHoveredFeedback);
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=feedbackHoverState.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"feedbackHoverState.js","sourceRoot":"","sources":["../../../src/editor/reviews/feedbackHoverState.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,OAAO,CAAC;AAe7C,IAAI,OAAO,GAA2B,IAAI,CAAC;AAC3C,MAAM,SAAS,GAAG,IAAI,GAAG,EAAY,CAAC;AAEtC,SAAS,MAAM;IACb,KAAK,MAAM,QAAQ,IAAI,SAAS;QAAE,QAAQ,EAAE,CAAC;AAC/C,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,IAA4B;IAC7D,IACE,CAAC,OAAO,KAAK,IAAI,IAAI,IAAI,KAAK,IAAI,CAAC;QACnC,CAAC,OAAO,IAAI,IAAI,IAAI,OAAO,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,IAAI,OAAO,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC,EACzE,CAAC;QACD,OAAO;IACT,CAAC;IACD,OAAO,GAAG,IAAI,CAAC;IACf,MAAM,EAAE,CAAC;AACX,CAAC;AAED,wDAAwD;AACxD,MAAM,UAAU,oBAAoB,CAAC,EAAU;IAC7C,IAAI,OAAO,EAAE,EAAE,KAAK,EAAE;QAAE,OAAO;IAC/B,OAAO,GAAG,IAAI,CAAC;IACf,MAAM,EAAE,CAAC;AACX,CAAC;AAED,MAAM,UAAU,kBAAkB;IAChC,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,QAAkB;IACzD,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACxB,OAAO,GAAG,EAAE;QACV,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC7B,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,kBAAkB;IAChC,OAAO,oBAAoB,CACzB,wBAAwB,EACxB,kBAAkB,EAClB,kBAAkB,CACnB,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { useSyncExternalStore } from "react";
|
|
2
|
+
import { localStorageService } from "../services/localStorageService";
|
|
3
|
+
/**
|
|
4
|
+
* The "people" filter of the feedback surfaces. It is set from the toolbar
|
|
5
|
+
* (the comments split button) and read by the comment margin, so it lives in
|
|
6
|
+
* a small shared store instead of in either component; persisted per browser.
|
|
7
|
+
*/
|
|
8
|
+
const STORAGE_KEY = "comments.personFilter";
|
|
9
|
+
let selectedPeople;
|
|
10
|
+
const listeners = new Set();
|
|
11
|
+
function read() {
|
|
12
|
+
selectedPeople ??= localStorageService.getItem(STORAGE_KEY) || [];
|
|
13
|
+
return selectedPeople;
|
|
14
|
+
}
|
|
15
|
+
export function getFeedbackPersonFilter() {
|
|
16
|
+
return read();
|
|
17
|
+
}
|
|
18
|
+
export function setFeedbackPersonFilter(people) {
|
|
19
|
+
selectedPeople = people;
|
|
20
|
+
localStorageService.setItem(STORAGE_KEY, people);
|
|
21
|
+
listeners.forEach((listener) => listener());
|
|
22
|
+
}
|
|
23
|
+
function subscribe(listener) {
|
|
24
|
+
listeners.add(listener);
|
|
25
|
+
return () => {
|
|
26
|
+
listeners.delete(listener);
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
export function useFeedbackPersonFilter() {
|
|
30
|
+
return useSyncExternalStore(subscribe, read, read);
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=feedbackPersonFilter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"feedbackPersonFilter.js","sourceRoot":"","sources":["../../../src/editor/reviews/feedbackPersonFilter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,OAAO,CAAC;AAC7C,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAEtE;;;;GAIG;AACH,MAAM,WAAW,GAAG,uBAAuB,CAAC;AAE5C,IAAI,cAAoC,CAAC;AACzC,MAAM,SAAS,GAAG,IAAI,GAAG,EAAc,CAAC;AAExC,SAAS,IAAI;IACX,cAAc,KAAK,mBAAmB,CAAC,OAAO,CAAW,WAAW,CAAC,IAAI,EAAE,CAAC;IAC5E,OAAO,cAAc,CAAC;AACxB,CAAC;AAED,MAAM,UAAU,uBAAuB;IACrC,OAAO,IAAI,EAAE,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,MAAgB;IACtD,cAAc,GAAG,MAAM,CAAC;IACxB,mBAAmB,CAAC,OAAO,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;IACjD,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC;AAC9C,CAAC;AAED,SAAS,SAAS,CAAC,QAAoB;IACrC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACxB,OAAO,GAAG,EAAE;QACV,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC7B,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,uBAAuB;IACrC,OAAO,oBAAoB,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;AACrD,CAAC"}
|
|
@@ -69,8 +69,9 @@ export async function selectFeedbackComment(comment, editContext, fieldsContext)
|
|
|
69
69
|
version: comment.version,
|
|
70
70
|
},
|
|
71
71
|
}, false);
|
|
72
|
-
const geometry = editContext
|
|
73
|
-
?.
|
|
72
|
+
const geometry = editContext
|
|
73
|
+
?.getActiveSlotContext?.()
|
|
74
|
+
?.primaryPageViewContext?.getState().bridgeGeometry;
|
|
74
75
|
const fieldIsRendered = geometry?.targets.some((target) => {
|
|
75
76
|
if (target.kind !== "field")
|
|
76
77
|
return false;
|
|
@@ -103,7 +104,10 @@ export function selectFeedbackSuggestedEdit(edit, editContext, fieldsContext) {
|
|
|
103
104
|
editContext?.setSelectedComment(undefined);
|
|
104
105
|
editContext?.setSelectedSuggestedEdit(edit);
|
|
105
106
|
editContext?.setScrollIntoView(getSuggestedEditScrollIntoViewTarget(edit));
|
|
106
|
-
|
|
107
|
+
// On mobile, selecting the item would open the edit form in the bottom
|
|
108
|
+
// panel and cover the comments panel the card was tapped in; the canvas
|
|
109
|
+
// scroll above is all the navigation a phone needs (same as comments).
|
|
110
|
+
if (edit.fieldId && !editContext?.isMobile) {
|
|
107
111
|
fieldsContext?.setFocusedField({
|
|
108
112
|
fieldId: edit.fieldId,
|
|
109
113
|
item: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"feedbackSelection.js","sourceRoot":"","sources":["../../../src/editor/reviews/feedbackSelection.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,8BAA8B,EAC9B,oCAAoC,GACrC,MAAM,wBAAwB,CAAC;AAEhC,SAAS,iBAAiB,CAAC,KAAgC;IACzD,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;AAC3D,CAAC;AAED,SAAS,cAAc,CACrB,IAA+B,EAC/B,KAAgC;IAEhC,MAAM,cAAc,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;IAC/C,MAAM,eAAe,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;IACjD,OAAO,CACL,CAAC,CAAC,cAAc,IAAI,CAAC,CAAC,eAAe,IAAI,cAAc,KAAK,eAAe,CAC5E,CAAC;AACJ,CAAC;AAED,MAAM,wBAAwB,GAAG,CAAC,CAAC;AAEnC,IAAI,eAAe,GAAoC,IAAI,CAAC;AAC5D,IAAI,4BAA4B,GAAG,KAAK,CAAC;AAEzC,SAAS,yBAAyB;IAChC,IAAI,4BAA4B,IAAI,OAAO,QAAQ,KAAK,WAAW;QAAE,OAAO;IAC5E,4BAA4B,GAAG,IAAI,CAAC;IACpC,QAAQ,CAAC,gBAAgB,CACvB,aAAa,EACb,CAAC,KAAK,EAAE,EAAE;QACR,eAAe,GAAG,EAAE,CAAC,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC;IAC3D,CAAC,EACD,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CACjC,CAAC;AACJ,CAAC;AAED,yBAAyB,EAAE,CAAC;AAE5B;;;;;;;;GAQG;AACH,MAAM,UAAU,oBAAoB,CAClC,SAAyB,EACzB,KAA2C;IAE3C,IAAI,CAAC,SAAS,IAAI,OAAO,MAAM,KAAK,WAAW;QAAE,OAAO,KAAK,CAAC;IAC9D,yBAAyB,EAAE,CAAC;IAC5B,IACE,eAAe;QACf,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,GAAG,eAAe,CAAC,CAAC,CAAC,GAAG,wBAAwB;QACtE,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,GAAG,eAAe,CAAC,CAAC,CAAC,GAAG,wBAAwB,EACtE,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,SAAS,GAAG,MAAM,CAAC,YAAY,EAAE,CAAC;IACxC,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,WAAW,IAAI,SAAS,CAAC,UAAU,KAAK,CAAC,EAAE,CAAC;QACtE,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,MAAM,GAAG,SAAS,CAAC,UAAU,CAAC;IACpC,OAAO,CAAC,CAAC,MAAM,IAAI,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;AAChD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,OAAgB,EAChB,WAAwC,EACxC,aAAgD;IAEhD,MAAM,aAAa,GAAG,WAAW,EAAE,qBAAqB,EAAE,EAAE,CAAC;IAC7D,IACE,aAAa;QACb,OAAO,CAAC,UAAU;QAClB,OAAO,CAAC,UAAU,KAAK,aAAa,EACpC,CAAC;QACD,MAAM,WAAW,EAAE,QAAQ,CAAC;YAC1B,EAAE,EAAE,OAAO,CAAC,UAAU;YACtB,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,OAAO,EAAE,OAAO,CAAC,OAAO;SACzB,CAAC,CAAC;IACL,CAAC;IAED,WAAW,EAAE,kBAAkB,CAAC,OAAO,CAAC,CAAC;IACzC,WAAW,EAAE,wBAAwB,CAAC,SAAS,CAAC,CAAC;IACjD,WAAW,EAAE,iBAAiB,CAAC,8BAA8B,CAAC,OAAO,CAAC,CAAC,CAAC;IAExE,IAAI,CAAC,WAAW,EAAE,QAAQ,EAAE,CAAC;QAC3B,WAAW,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;QACtC,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;YACpB,aAAa,EAAE,eAAe,CAC5B;gBACE,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,IAAI,EAAE;oBACJ,EAAE,EAAE,OAAO,CAAC,MAAM;oBAClB,QAAQ,EAAE,OAAO,CAAC,QAAQ;oBAC1B,OAAO,EAAE,OAAO,CAAC,OAAO;iBACzB;aACF,EACD,KAAK,CACN,CAAC;YAEF,MAAM,QAAQ,
|
|
1
|
+
{"version":3,"file":"feedbackSelection.js","sourceRoot":"","sources":["../../../src/editor/reviews/feedbackSelection.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { Comment, SuggestedEdit } from "../../types";
|
|
2
|
+
import type { FeedbackThread } from "./feedbackThreads";
|
|
3
|
+
/**
|
|
4
|
+
* Maps the editor's selection (which may be a reply, or a comment attached to
|
|
5
|
+
* a suggestion) to the thread that owns it. Margin cards, pinning and leader
|
|
6
|
+
* lines are per thread, so every consumer resolves through this one function
|
|
7
|
+
* instead of comparing `selectedComment.id` against thread ids.
|
|
8
|
+
*/
|
|
9
|
+
export declare function resolveSelectedThreadId(threads: readonly FeedbackThread[], selectedComment: Comment | undefined, selectedSuggestedEdit: SuggestedEdit | undefined): string | undefined;
|
|
10
|
+
export declare function getThreadForComment(threads: readonly FeedbackThread[], comment: Comment): FeedbackThread | undefined;
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { feedbackIdsEqual } from "./pendingFeedbackFocus";
|
|
2
|
+
/**
|
|
3
|
+
* Maps the editor's selection (which may be a reply, or a comment attached to
|
|
4
|
+
* a suggestion) to the thread that owns it. Margin cards, pinning and leader
|
|
5
|
+
* lines are per thread, so every consumer resolves through this one function
|
|
6
|
+
* instead of comparing `selectedComment.id` against thread ids.
|
|
7
|
+
*/
|
|
8
|
+
export function resolveSelectedThreadId(threads, selectedComment, selectedSuggestedEdit) {
|
|
9
|
+
if (selectedSuggestedEdit) {
|
|
10
|
+
return threads.find((thread) => thread.kind === "suggestion" &&
|
|
11
|
+
feedbackIdsEqual(thread.id, selectedSuggestedEdit.id))?.id;
|
|
12
|
+
}
|
|
13
|
+
if (!selectedComment)
|
|
14
|
+
return undefined;
|
|
15
|
+
if (selectedComment.suggestedEditId) {
|
|
16
|
+
return threads.find((thread) => thread.kind === "suggestion" &&
|
|
17
|
+
feedbackIdsEqual(thread.id, selectedComment.suggestedEditId))?.id;
|
|
18
|
+
}
|
|
19
|
+
return threads.find((thread) => {
|
|
20
|
+
if (thread.kind !== "comment")
|
|
21
|
+
return false;
|
|
22
|
+
if (feedbackIdsEqual(thread.id, selectedComment.id))
|
|
23
|
+
return true;
|
|
24
|
+
return thread.replies.some((reply) => feedbackIdsEqual(reply.id, selectedComment.id));
|
|
25
|
+
})?.id;
|
|
26
|
+
}
|
|
27
|
+
export function getThreadForComment(threads, comment) {
|
|
28
|
+
const id = resolveSelectedThreadId(threads, comment, undefined);
|
|
29
|
+
return id ? threads.find((thread) => thread.id === id) : undefined;
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=feedbackThreadSelection.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"feedbackThreadSelection.js","sourceRoot":"","sources":["../../../src/editor/reviews/feedbackThreadSelection.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE1D;;;;;GAKG;AACH,MAAM,UAAU,uBAAuB,CACrC,OAAkC,EAClC,eAAoC,EACpC,qBAAgD;IAEhD,IAAI,qBAAqB,EAAE,CAAC;QAC1B,OAAO,OAAO,CAAC,IAAI,CACjB,CAAC,MAAM,EAAE,EAAE,CACT,MAAM,CAAC,IAAI,KAAK,YAAY;YAC5B,gBAAgB,CAAC,MAAM,CAAC,EAAE,EAAE,qBAAqB,CAAC,EAAE,CAAC,CACxD,EAAE,EAAE,CAAC;IACR,CAAC;IAED,IAAI,CAAC,eAAe;QAAE,OAAO,SAAS,CAAC;IAEvC,IAAI,eAAe,CAAC,eAAe,EAAE,CAAC;QACpC,OAAO,OAAO,CAAC,IAAI,CACjB,CAAC,MAAM,EAAE,EAAE,CACT,MAAM,CAAC,IAAI,KAAK,YAAY;YAC5B,gBAAgB,CAAC,MAAM,CAAC,EAAE,EAAE,eAAe,CAAC,eAAe,CAAC,CAC/D,EAAE,EAAE,CAAC;IACR,CAAC;IAED,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;QAC7B,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS;YAAE,OAAO,KAAK,CAAC;QAC5C,IAAI,gBAAgB,CAAC,MAAM,CAAC,EAAE,EAAE,eAAe,CAAC,EAAE,CAAC;YAAE,OAAO,IAAI,CAAC;QACjE,OAAO,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CACnC,gBAAgB,CAAC,KAAK,CAAC,EAAE,EAAE,eAAe,CAAC,EAAE,CAAC,CAC/C,CAAC;IACJ,CAAC,CAAC,EAAE,EAAE,CAAC;AACT,CAAC;AAED,MAAM,UAAU,mBAAmB,CACjC,OAAkC,EAClC,OAAgB;IAEhB,MAAM,EAAE,GAAG,uBAAuB,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;IAChE,OAAO,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AACrE,CAAC"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import type { Comment, SuggestedEdit } from "../../types";
|
|
2
|
+
export type CommentThread = {
|
|
3
|
+
kind: "comment";
|
|
4
|
+
/** The root comment's id. */
|
|
5
|
+
id: string;
|
|
6
|
+
root: Comment;
|
|
7
|
+
/** Every reply in the thread, oldest first. */
|
|
8
|
+
replies: Comment[];
|
|
9
|
+
created: number;
|
|
10
|
+
};
|
|
11
|
+
export type SuggestionThread = {
|
|
12
|
+
kind: "suggestion";
|
|
13
|
+
/** The suggested edit's id. */
|
|
14
|
+
id: string;
|
|
15
|
+
suggestion: SuggestedEdit;
|
|
16
|
+
/** Comments attached to the suggestion, oldest first. */
|
|
17
|
+
comments: Comment[];
|
|
18
|
+
created: number;
|
|
19
|
+
};
|
|
20
|
+
export type FeedbackThread = CommentThread | SuggestionThread;
|
|
21
|
+
export type FeedbackSortField = "date" | "structure";
|
|
22
|
+
export type FeedbackSortDirection = "asc" | "desc";
|
|
23
|
+
export type FeedbackSort = {
|
|
24
|
+
field: FeedbackSortField;
|
|
25
|
+
direction: FeedbackSortDirection;
|
|
26
|
+
};
|
|
27
|
+
export type BuildFeedbackThreadsOptions = {
|
|
28
|
+
comments: Comment[];
|
|
29
|
+
suggestedEdits: SuggestedEdit[];
|
|
30
|
+
showResolved: boolean;
|
|
31
|
+
/** Author account names; empty means everyone. */
|
|
32
|
+
selectedPeople: string[];
|
|
33
|
+
/** Without a sort the threads are ordered by most recent activity first. */
|
|
34
|
+
sort?: FeedbackSort;
|
|
35
|
+
};
|
|
36
|
+
/** Groups the comments attached to suggestions by suggestion id. */
|
|
37
|
+
export declare function groupSuggestionComments(comments: Comment[]): Map<string, Comment[]>;
|
|
38
|
+
/**
|
|
39
|
+
* Groups plain (non-suggestion) comments into reply lists keyed by their root
|
|
40
|
+
* comment. A reply whose parent is not loaded keeps the parent id as its root.
|
|
41
|
+
*/
|
|
42
|
+
export declare function groupCommentReplies(comments: Comment[]): Map<string, Comment[]>;
|
|
43
|
+
/**
|
|
44
|
+
* Turns the loaded comments and suggested edits into the threads a feedback
|
|
45
|
+
* surface shows: filtered (resolved, people, no-op suggestions), grouped
|
|
46
|
+
* (replies under their root, comments under their suggestion) and ordered.
|
|
47
|
+
*/
|
|
48
|
+
export declare function buildFeedbackThreads({ comments, suggestedEdits, showResolved, selectedPeople, sort, }: BuildFeedbackThreadsOptions): FeedbackThread[];
|
|
49
|
+
/** Every comment that belongs to a thread, root/suggestion comments first. */
|
|
50
|
+
export declare function getThreadComments(thread: FeedbackThread): Comment[];
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
import { getFeedbackActivityTime, isResolvedFeedbackItem, isSuggestedEdit, } from "./feedbackOrdering";
|
|
2
|
+
import { shouldRemoveNoOpSuggestion } from "./suggestionContentChange";
|
|
3
|
+
function parseCreated(value) {
|
|
4
|
+
if (!value)
|
|
5
|
+
return 0;
|
|
6
|
+
const time = new Date(value).getTime();
|
|
7
|
+
return Number.isFinite(time) ? time : 0;
|
|
8
|
+
}
|
|
9
|
+
function sortByCreated(a, b) {
|
|
10
|
+
return parseCreated(a.created) - parseCreated(b.created);
|
|
11
|
+
}
|
|
12
|
+
/** Groups the comments attached to suggestions by suggestion id. */
|
|
13
|
+
export function groupSuggestionComments(comments) {
|
|
14
|
+
const map = new Map();
|
|
15
|
+
comments.forEach((comment) => {
|
|
16
|
+
if (!comment.suggestedEditId)
|
|
17
|
+
return;
|
|
18
|
+
const list = map.get(comment.suggestedEditId) || [];
|
|
19
|
+
list.push(comment);
|
|
20
|
+
map.set(comment.suggestedEditId, list);
|
|
21
|
+
});
|
|
22
|
+
map.forEach((list) => list.sort(sortByCreated));
|
|
23
|
+
return map;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Groups plain (non-suggestion) comments into reply lists keyed by their root
|
|
27
|
+
* comment. A reply whose parent is not loaded keeps the parent id as its root.
|
|
28
|
+
*/
|
|
29
|
+
export function groupCommentReplies(comments) {
|
|
30
|
+
const idToComment = new Map();
|
|
31
|
+
comments.forEach((comment) => idToComment.set(comment.id, comment));
|
|
32
|
+
const getRootId = (comment) => {
|
|
33
|
+
let current = comment;
|
|
34
|
+
const seen = new Set();
|
|
35
|
+
while (current && current.parentCommentId) {
|
|
36
|
+
if (seen.has(current.id))
|
|
37
|
+
break;
|
|
38
|
+
seen.add(current.id);
|
|
39
|
+
const parent = idToComment.get(current.parentCommentId);
|
|
40
|
+
if (!parent)
|
|
41
|
+
return current.parentCommentId;
|
|
42
|
+
current = parent;
|
|
43
|
+
}
|
|
44
|
+
return current?.id;
|
|
45
|
+
};
|
|
46
|
+
const repliesByRootId = new Map();
|
|
47
|
+
comments.forEach((comment) => {
|
|
48
|
+
if (!comment.parentCommentId)
|
|
49
|
+
return;
|
|
50
|
+
const rootId = getRootId(comment);
|
|
51
|
+
if (!rootId)
|
|
52
|
+
return;
|
|
53
|
+
const replies = repliesByRootId.get(rootId) || [];
|
|
54
|
+
replies.push(comment);
|
|
55
|
+
repliesByRootId.set(rootId, replies);
|
|
56
|
+
});
|
|
57
|
+
repliesByRootId.forEach((replies) => replies.sort(sortByCreated));
|
|
58
|
+
return repliesByRootId;
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* Turns the loaded comments and suggested edits into the threads a feedback
|
|
62
|
+
* surface shows: filtered (resolved, people, no-op suggestions), grouped
|
|
63
|
+
* (replies under their root, comments under their suggestion) and ordered.
|
|
64
|
+
*/
|
|
65
|
+
export function buildFeedbackThreads({ comments, suggestedEdits, showResolved, selectedPeople, sort, }) {
|
|
66
|
+
const suggestionComments = groupSuggestionComments(comments);
|
|
67
|
+
const plainComments = comments.filter((comment) => !comment.suggestedEditId);
|
|
68
|
+
let items = [...plainComments, ...suggestedEdits];
|
|
69
|
+
items = items.filter((item) => {
|
|
70
|
+
if (!isSuggestedEdit(item))
|
|
71
|
+
return true;
|
|
72
|
+
const commentCount = (suggestionComments.get(item.id) || []).length;
|
|
73
|
+
return !shouldRemoveNoOpSuggestion(item.oldValue, item.newValue, commentCount);
|
|
74
|
+
});
|
|
75
|
+
if (!showResolved) {
|
|
76
|
+
items = items.filter((item) => !isResolvedFeedbackItem(item));
|
|
77
|
+
}
|
|
78
|
+
if (selectedPeople.length > 0) {
|
|
79
|
+
items = items.filter((item) => "author" in item && !!item.author && selectedPeople.includes(item.author));
|
|
80
|
+
}
|
|
81
|
+
const direction = sort?.direction ?? "desc";
|
|
82
|
+
const field = sort?.field ?? "date";
|
|
83
|
+
const multiplier = direction === "asc" ? 1 : -1;
|
|
84
|
+
items = items
|
|
85
|
+
.map((item, index) => ({ item, index }))
|
|
86
|
+
.sort((a, b) => {
|
|
87
|
+
switch (field) {
|
|
88
|
+
case "date": {
|
|
89
|
+
const timeDifference = getFeedbackActivityTime(a.item, suggestionComments) -
|
|
90
|
+
getFeedbackActivityTime(b.item, suggestionComments);
|
|
91
|
+
return multiplier * timeDifference || a.index - b.index;
|
|
92
|
+
}
|
|
93
|
+
case "structure": {
|
|
94
|
+
const pathA = "itemName" in a.item ? a.item.itemName || "" : "";
|
|
95
|
+
const pathB = "itemName" in b.item ? b.item.itemName || "" : "";
|
|
96
|
+
return multiplier * pathA.localeCompare(pathB) || a.index - b.index;
|
|
97
|
+
}
|
|
98
|
+
default:
|
|
99
|
+
return a.index - b.index;
|
|
100
|
+
}
|
|
101
|
+
})
|
|
102
|
+
.map(({ item }) => item);
|
|
103
|
+
const filteredComments = items.filter((item) => !isSuggestedEdit(item));
|
|
104
|
+
const repliesByRootId = groupCommentReplies(filteredComments);
|
|
105
|
+
const threads = [];
|
|
106
|
+
for (const item of items) {
|
|
107
|
+
if (isSuggestedEdit(item)) {
|
|
108
|
+
threads.push({
|
|
109
|
+
kind: "suggestion",
|
|
110
|
+
id: item.id,
|
|
111
|
+
suggestion: item,
|
|
112
|
+
comments: suggestionComments.get(item.id) || [],
|
|
113
|
+
created: parseCreated(item.created),
|
|
114
|
+
});
|
|
115
|
+
continue;
|
|
116
|
+
}
|
|
117
|
+
if (item.parentCommentId)
|
|
118
|
+
continue;
|
|
119
|
+
threads.push({
|
|
120
|
+
kind: "comment",
|
|
121
|
+
id: item.id,
|
|
122
|
+
root: item,
|
|
123
|
+
replies: repliesByRootId.get(item.id) || [],
|
|
124
|
+
created: parseCreated(item.created),
|
|
125
|
+
});
|
|
126
|
+
}
|
|
127
|
+
return threads;
|
|
128
|
+
}
|
|
129
|
+
/** Every comment that belongs to a thread, root/suggestion comments first. */
|
|
130
|
+
export function getThreadComments(thread) {
|
|
131
|
+
return thread.kind === "comment"
|
|
132
|
+
? [thread.root, ...thread.replies]
|
|
133
|
+
: thread.comments;
|
|
134
|
+
}
|
|
135
|
+
//# sourceMappingURL=feedbackThreads.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"feedbackThreads.js","sourceRoot":"","sources":["../../../src/editor/reviews/feedbackThreads.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Finds the nearest feedback scroll container between `target` and `root`
|
|
3
|
+
* that can still scroll in the wheel direction. When there is none, the wheel
|
|
4
|
+
* gesture belongs to the canvas (the margin forwards it), otherwise the
|
|
5
|
+
* container scrolls natively.
|
|
6
|
+
*/
|
|
7
|
+
export declare function findScrollableAncestor(target: Element | null, root: Element, deltaY: number): HTMLElement | null;
|
|
8
|
+
/** Wheel delta in pixels; line-mode deltas (Firefox) are approximated. */
|
|
9
|
+
export declare function wheelDeltaToPixels(deltaY: number, deltaMode: number): number;
|
|
10
|
+
/** Below this (pixels), a wheel delta is a trackpad step and is not eased. */
|
|
11
|
+
export declare const SMOOTH_WHEEL_MIN_DELTA = 40;
|
|
12
|
+
/** Time constant of the ease: about 95% of a notch lands within 3×. */
|
|
13
|
+
export declare const SMOOTH_WHEEL_TIME_CONSTANT_MS = 45;
|
|
14
|
+
type FrameScheduler = {
|
|
15
|
+
request: (callback: (time: number) => void) => number;
|
|
16
|
+
cancel: (handle: number) => void;
|
|
17
|
+
/** Same clock as the request callback's time. */
|
|
18
|
+
now: () => number;
|
|
19
|
+
};
|
|
20
|
+
/**
|
|
21
|
+
* Forwards wheel gestures to a scroller that only moves instantly (the canvas
|
|
22
|
+
* bridge), so that they look like the browser's own wheel scrolling: a mouse
|
|
23
|
+
* wheel notch glides over a few frames instead of jumping, and quick notches
|
|
24
|
+
* add up to one glide. Small trackpad deltas pass straight through, as the
|
|
25
|
+
* browser does not ease those either.
|
|
26
|
+
*
|
|
27
|
+
* `forward` returns whether the gesture is handled (`canScroll`), so callers
|
|
28
|
+
* can let an unhandled wheel propagate.
|
|
29
|
+
*/
|
|
30
|
+
export declare function createSmoothWheelForwarder(scrollBy: (y: number) => boolean, canScroll: () => boolean, frames?: FrameScheduler): {
|
|
31
|
+
forward(deltaY: number, deltaMode: number): boolean;
|
|
32
|
+
cancel: () => void;
|
|
33
|
+
};
|
|
34
|
+
export {};
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
import { FEEDBACK_SCROLLABLE_ATTRIBUTE } from "./scrollWithin";
|
|
2
|
+
/**
|
|
3
|
+
* Finds the nearest feedback scroll container between `target` and `root`
|
|
4
|
+
* that can still scroll in the wheel direction. When there is none, the wheel
|
|
5
|
+
* gesture belongs to the canvas (the margin forwards it), otherwise the
|
|
6
|
+
* container scrolls natively.
|
|
7
|
+
*/
|
|
8
|
+
export function findScrollableAncestor(target, root, deltaY) {
|
|
9
|
+
let current = target;
|
|
10
|
+
while (current && current !== root) {
|
|
11
|
+
if (current instanceof HTMLElement &&
|
|
12
|
+
current.hasAttribute(FEEDBACK_SCROLLABLE_ATTRIBUTE) &&
|
|
13
|
+
canScrollVertically(current, deltaY)) {
|
|
14
|
+
return current;
|
|
15
|
+
}
|
|
16
|
+
current = current.parentElement;
|
|
17
|
+
}
|
|
18
|
+
return null;
|
|
19
|
+
}
|
|
20
|
+
function canScrollVertically(element, deltaY) {
|
|
21
|
+
const range = element.scrollHeight - element.clientHeight;
|
|
22
|
+
if (range <= 1)
|
|
23
|
+
return false;
|
|
24
|
+
if (deltaY > 0)
|
|
25
|
+
return element.scrollTop < range - 0.5;
|
|
26
|
+
if (deltaY < 0)
|
|
27
|
+
return element.scrollTop > 0.5;
|
|
28
|
+
return true;
|
|
29
|
+
}
|
|
30
|
+
/** Wheel delta in pixels; line-mode deltas (Firefox) are approximated. */
|
|
31
|
+
export function wheelDeltaToPixels(deltaY, deltaMode) {
|
|
32
|
+
if (deltaMode === 1)
|
|
33
|
+
return deltaY * 16;
|
|
34
|
+
if (deltaMode === 2)
|
|
35
|
+
return deltaY * 800;
|
|
36
|
+
return deltaY;
|
|
37
|
+
}
|
|
38
|
+
/** Below this (pixels), a wheel delta is a trackpad step and is not eased. */
|
|
39
|
+
export const SMOOTH_WHEEL_MIN_DELTA = 40;
|
|
40
|
+
/** Time constant of the ease: about 95% of a notch lands within 3×. */
|
|
41
|
+
export const SMOOTH_WHEEL_TIME_CONSTANT_MS = 45;
|
|
42
|
+
const animationFrames = {
|
|
43
|
+
request: (callback) => window.requestAnimationFrame(callback),
|
|
44
|
+
cancel: (handle) => window.cancelAnimationFrame(handle),
|
|
45
|
+
now: () => performance.now(),
|
|
46
|
+
};
|
|
47
|
+
/**
|
|
48
|
+
* Forwards wheel gestures to a scroller that only moves instantly (the canvas
|
|
49
|
+
* bridge), so that they look like the browser's own wheel scrolling: a mouse
|
|
50
|
+
* wheel notch glides over a few frames instead of jumping, and quick notches
|
|
51
|
+
* add up to one glide. Small trackpad deltas pass straight through, as the
|
|
52
|
+
* browser does not ease those either.
|
|
53
|
+
*
|
|
54
|
+
* `forward` returns whether the gesture is handled (`canScroll`), so callers
|
|
55
|
+
* can let an unhandled wheel propagate.
|
|
56
|
+
*/
|
|
57
|
+
export function createSmoothWheelForwarder(scrollBy, canScroll, frames = animationFrames) {
|
|
58
|
+
let remaining = 0;
|
|
59
|
+
let handle = null;
|
|
60
|
+
let lastTime = 0;
|
|
61
|
+
const stop = () => {
|
|
62
|
+
if (handle !== null)
|
|
63
|
+
frames.cancel(handle);
|
|
64
|
+
handle = null;
|
|
65
|
+
remaining = 0;
|
|
66
|
+
};
|
|
67
|
+
const tick = (time) => {
|
|
68
|
+
handle = null;
|
|
69
|
+
const elapsed = Math.max(time - lastTime, 1);
|
|
70
|
+
lastTime = time;
|
|
71
|
+
const share = 1 - Math.exp(-elapsed / SMOOTH_WHEEL_TIME_CONSTANT_MS);
|
|
72
|
+
// Whole pixels, at least one, so the glide ends exactly on target.
|
|
73
|
+
const step = Math.abs(remaining) <= 1
|
|
74
|
+
? Math.round(remaining)
|
|
75
|
+
: Math.round(remaining * share) || Math.sign(remaining);
|
|
76
|
+
if (step !== 0 && !scrollBy(step)) {
|
|
77
|
+
stop();
|
|
78
|
+
return;
|
|
79
|
+
}
|
|
80
|
+
remaining -= step;
|
|
81
|
+
if (Math.abs(remaining) >= 0.5)
|
|
82
|
+
handle = frames.request(tick);
|
|
83
|
+
else
|
|
84
|
+
stop();
|
|
85
|
+
};
|
|
86
|
+
return {
|
|
87
|
+
forward(deltaY, deltaMode) {
|
|
88
|
+
const pixels = wheelDeltaToPixels(deltaY, deltaMode);
|
|
89
|
+
if (Math.abs(pixels) < SMOOTH_WHEEL_MIN_DELTA && handle === null) {
|
|
90
|
+
return scrollBy(pixels);
|
|
91
|
+
}
|
|
92
|
+
if (!canScroll())
|
|
93
|
+
return false;
|
|
94
|
+
// Reversing direction drops what is left of the previous glide.
|
|
95
|
+
if (Math.sign(pixels) !== Math.sign(remaining))
|
|
96
|
+
remaining = 0;
|
|
97
|
+
remaining += pixels;
|
|
98
|
+
if (handle === null) {
|
|
99
|
+
// The glide starts when the notch did, not a frame later.
|
|
100
|
+
lastTime = frames.now();
|
|
101
|
+
handle = frames.request(tick);
|
|
102
|
+
}
|
|
103
|
+
return true;
|
|
104
|
+
},
|
|
105
|
+
cancel: stop,
|
|
106
|
+
};
|
|
107
|
+
}
|
|
108
|
+
//# sourceMappingURL=feedbackWheelForwarding.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"feedbackWheelForwarding.js","sourceRoot":"","sources":["../../../src/editor/reviews/feedbackWheelForwarding.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,6BAA6B,EAAE,MAAM,gBAAgB,CAAC;AAE/D;;;;;GAKG;AACH,MAAM,UAAU,sBAAsB,CACpC,MAAsB,EACtB,IAAa,EACb,MAAc;IAEd,IAAI,OAAO,GAAmB,MAAM,CAAC;IACrC,OAAO,OAAO,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QACnC,IACE,OAAO,YAAY,WAAW;YAC9B,OAAO,CAAC,YAAY,CAAC,6BAA6B,CAAC;YACnD,mBAAmB,CAAC,OAAO,EAAE,MAAM,CAAC,EACpC,CAAC;YACD,OAAO,OAAO,CAAC;QACjB,CAAC;QACD,OAAO,GAAG,OAAO,CAAC,aAAa,CAAC;IAClC,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,mBAAmB,CAAC,OAAoB,EAAE,MAAc;IAC/D,MAAM,KAAK,GAAG,OAAO,CAAC,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC;IAC1D,IAAI,KAAK,IAAI,CAAC;QAAE,OAAO,KAAK,CAAC;IAC7B,IAAI,MAAM,GAAG,CAAC;QAAE,OAAO,OAAO,CAAC,SAAS,GAAG,KAAK,GAAG,GAAG,CAAC;IACvD,IAAI,MAAM,GAAG,CAAC;QAAE,OAAO,OAAO,CAAC,SAAS,GAAG,GAAG,CAAC;IAC/C,OAAO,IAAI,CAAC;AACd,CAAC;AAED,0EAA0E;AAC1E,MAAM,UAAU,kBAAkB,CAAC,MAAc,EAAE,SAAiB;IAClE,IAAI,SAAS,KAAK,CAAC;QAAE,OAAO,MAAM,GAAG,EAAE,CAAC;IACxC,IAAI,SAAS,KAAK,CAAC;QAAE,OAAO,MAAM,GAAG,GAAG,CAAC;IACzC,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,8EAA8E;AAC9E,MAAM,CAAC,MAAM,sBAAsB,GAAG,EAAE,CAAC;AACzC,uEAAuE;AACvE,MAAM,CAAC,MAAM,6BAA6B,GAAG,EAAE,CAAC;AAShD,MAAM,eAAe,GAAmB;IACtC,OAAO,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,MAAM,CAAC,qBAAqB,CAAC,QAAQ,CAAC;IAC7D,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,oBAAoB,CAAC,MAAM,CAAC;IACvD,GAAG,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE;CAC7B,CAAC;AAEF;;;;;;;;;GASG;AACH,MAAM,UAAU,0BAA0B,CACxC,QAAgC,EAChC,SAAwB,EACxB,MAAM,GAAmB,eAAe;IAExC,IAAI,SAAS,GAAG,CAAC,CAAC;IAClB,IAAI,MAAM,GAAkB,IAAI,CAAC;IACjC,IAAI,QAAQ,GAAG,CAAC,CAAC;IAEjB,MAAM,IAAI,GAAG,GAAG,EAAE;QAChB,IAAI,MAAM,KAAK,IAAI;YAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC3C,MAAM,GAAG,IAAI,CAAC;QACd,SAAS,GAAG,CAAC,CAAC;IAChB,CAAC,CAAC;IAEF,MAAM,IAAI,GAAG,CAAC,IAAY,EAAE,EAAE;QAC5B,MAAM,GAAG,IAAI,CAAC;QACd,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,QAAQ,EAAE,CAAC,CAAC,CAAC;QAC7C,QAAQ,GAAG,IAAI,CAAC;QAChB,MAAM,KAAK,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,OAAO,GAAG,6BAA6B,CAAC,CAAC;QACrE,mEAAmE;QACnE,MAAM,IAAI,GACR,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC;YACtB,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;YACvB,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC5D,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;YAClC,IAAI,EAAE,CAAC;YACP,OAAO;QACT,CAAC;QACD,SAAS,IAAI,IAAI,CAAC;QAClB,IAAI,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,GAAG;YAAE,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;;YACzD,IAAI,EAAE,CAAC;IACd,CAAC,CAAC;IAEF,OAAO;QACL,OAAO,CAAC,MAAc,EAAE,SAAiB;YACvC,MAAM,MAAM,GAAG,kBAAkB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;YACrD,IAAI,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,sBAAsB,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;gBACjE,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC;YAC1B,CAAC;YACD,IAAI,CAAC,SAAS,EAAE;gBAAE,OAAO,KAAK,CAAC;YAC/B,gEAAgE;YAChE,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC;gBAAE,SAAS,GAAG,CAAC,CAAC;YAC9D,SAAS,IAAI,MAAM,CAAC;YACpB,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;gBACpB,0DAA0D;gBAC1D,QAAQ,GAAG,MAAM,CAAC,GAAG,EAAE,CAAC;gBACxB,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YAChC,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,EAAE,IAAI;KACb,CAAC;AACJ,CAAC"}
|
|
@@ -21,7 +21,7 @@ export declare function exitSuggestionsMode(editContext: CommentsFeedbackContext
|
|
|
21
21
|
export declare function openCommentsFeedback(editContext: CommentsFeedbackContext | undefined): void;
|
|
22
22
|
export declare function toggleCommentsFeedback(editContext: CommentsFeedbackContext | undefined): void;
|
|
23
23
|
export declare function closeCommentsFeedback(editContext: CommentsFeedbackContext | undefined): void;
|
|
24
|
-
type SuggestionsAvailabilityContext = Pick<EditContextType, "getActiveSlotContext" | "item">;
|
|
24
|
+
type SuggestionsAvailabilityContext = Pick<EditContextType, "getActiveSlotContext" | "item" | "page">;
|
|
25
25
|
/**
|
|
26
26
|
* Suggestions mode only works for items edited on the WYSIWYG canvas (items
|
|
27
27
|
* with a layout). Mirrors the `hasLayout` check used by the viewport toolbar so
|