@parhelia/core 0.1.12888 → 0.1.12890
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/agents-view/AgentCard.d.ts +2 -1
- package/dist/agents-view/AgentCard.js +14 -38
- package/dist/agents-view/AgentCard.js.map +1 -1
- package/dist/agents-view/AgentGalleryCard.d.ts +12 -0
- package/dist/agents-view/AgentGalleryCard.js +12 -0
- package/dist/agents-view/AgentGalleryCard.js.map +1 -0
- package/dist/agents-view/AgentGalleryView.d.ts +18 -0
- package/dist/agents-view/AgentGalleryView.js +88 -0
- package/dist/agents-view/AgentGalleryView.js.map +1 -0
- package/dist/agents-view/AgentProfileIcon.d.ts +9 -0
- package/dist/agents-view/AgentProfileIcon.js +28 -0
- package/dist/agents-view/AgentProfileIcon.js.map +1 -0
- package/dist/agents-view/AgentsView.d.ts +6 -1
- package/dist/agents-view/AgentsView.js +40 -12
- package/dist/agents-view/AgentsView.js.map +1 -1
- package/dist/agents-view/AgentsWorkspaceView.js +40 -21
- package/dist/agents-view/AgentsWorkspaceView.js.map +1 -1
- package/dist/agents-view/DateAgentsGroup.d.ts +2 -1
- package/dist/agents-view/DateAgentsGroup.js +2 -2
- package/dist/agents-view/DateAgentsGroup.js.map +1 -1
- package/dist/agents-view/ProfileAgentsGroup.d.ts +2 -1
- package/dist/agents-view/ProfileAgentsGroup.js +5 -8
- package/dist/agents-view/ProfileAgentsGroup.js.map +1 -1
- package/dist/agents-view/RenameAgentDialog.d.ts +12 -0
- package/dist/agents-view/RenameAgentDialog.js +40 -0
- package/dist/agents-view/RenameAgentDialog.js.map +1 -0
- package/dist/components/FilterInput.d.ts +2 -0
- package/dist/components/FilterInput.js +4 -2
- package/dist/components/FilterInput.js.map +1 -1
- package/dist/components/ui/alert-dialog.d.ts +1 -1
- package/dist/components/ui/alert-dialog.js +5 -5
- package/dist/components/ui/alert-dialog.js.map +1 -1
- package/dist/components/ui/alert.d.ts +3 -2
- package/dist/components/ui/alert.js +9 -4
- package/dist/components/ui/alert.js.map +1 -1
- package/dist/components/ui/badge.d.ts +1 -1
- package/dist/components/ui/button.d.ts +9 -4
- package/dist/components/ui/button.js +16 -9
- package/dist/components/ui/button.js.map +1 -1
- package/dist/components/ui/dialog.d.ts +1 -1
- package/dist/components/ui/dialog.js +4 -3
- package/dist/components/ui/dialog.js.map +1 -1
- package/dist/components/ui/styled-dialog-title.js +1 -1
- package/dist/components/ui/styled-dialog-title.js.map +1 -1
- package/dist/config/config.js +4 -3
- package/dist/config/config.js.map +1 -1
- package/dist/editor/FieldListField.js +6 -2
- package/dist/editor/FieldListField.js.map +1 -1
- package/dist/editor/GlobalMenuBar.js +3 -1
- package/dist/editor/GlobalMenuBar.js.map +1 -1
- package/dist/editor/LinkEditorDialog.js +3 -3
- package/dist/editor/LinkEditorDialog.js.map +1 -1
- package/dist/editor/MainLayout.js +11 -9
- package/dist/editor/MainLayout.js.map +1 -1
- package/dist/editor/WorkspaceTitleSwitcher.d.ts +5 -0
- package/dist/editor/WorkspaceTitleSwitcher.js +86 -0
- package/dist/editor/WorkspaceTitleSwitcher.js.map +1 -0
- package/dist/editor/ai/AgentInlineDialogContent.js +1 -1
- package/dist/editor/ai/AgentInlineDialogContent.js.map +1 -1
- package/dist/editor/ai/Agents.js +155 -43
- package/dist/editor/ai/Agents.js.map +1 -1
- package/dist/editor/ai/InlineAiDialog.js +1 -1
- package/dist/editor/ai/InlineAiDialog.js.map +1 -1
- package/dist/editor/ai/dialogs/QuestionnaireInline.js +52 -82
- package/dist/editor/ai/dialogs/QuestionnaireInline.js.map +1 -1
- package/dist/editor/ai/terminal/agentQuestionnaireRecap.d.ts +82 -0
- package/dist/editor/ai/terminal/agentQuestionnaireRecap.js +277 -0
- package/dist/editor/ai/terminal/agentQuestionnaireRecap.js.map +1 -0
- package/dist/editor/ai/terminal/agentQuestionnaireTranscriptRecovery.d.ts +3 -0
- package/dist/editor/ai/terminal/agentQuestionnaireTranscriptRecovery.js +3 -3
- package/dist/editor/ai/terminal/agentQuestionnaireTranscriptRecovery.js.map +1 -1
- package/dist/editor/ai/terminal/agentSessionLiveTotals.d.ts +5 -0
- package/dist/editor/ai/terminal/agentSessionLiveTotals.js +14 -0
- package/dist/editor/ai/terminal/agentSessionLiveTotals.js.map +1 -1
- package/dist/editor/ai/terminal/agentSessionSnapshot.js +2 -0
- package/dist/editor/ai/terminal/agentSessionSnapshot.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/AgentGreeting.js +5 -2
- package/dist/editor/ai/terminal/components/AgentGreeting.js.map +1 -1
- package/dist/editor/ai/terminal/components/AgentProjectProgress.d.ts +12 -0
- package/dist/editor/ai/terminal/components/AgentProjectProgress.js +207 -0
- package/dist/editor/ai/terminal/components/AgentProjectProgress.js.map +1 -0
- 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/AgentPromptComposer.d.ts +2 -1
- package/dist/editor/ai/terminal/components/AgentPromptComposer.js +5 -2
- package/dist/editor/ai/terminal/components/AgentPromptComposer.js.map +1 -1
- package/dist/editor/ai/terminal/components/AgentPromptInputArea.d.ts +2 -1
- package/dist/editor/ai/terminal/components/AgentPromptInputArea.js +5 -3
- package/dist/editor/ai/terminal/components/AgentPromptInputArea.js.map +1 -1
- package/dist/editor/ai/terminal/components/AgentTerminalFullLayout.d.ts +4 -3
- package/dist/editor/ai/terminal/components/AgentTerminalFullLayout.js +6 -19
- package/dist/editor/ai/terminal/components/AgentTerminalFullLayout.js.map +1 -1
- package/dist/editor/ai/terminal/components/AgentTerminalFullUpperContent.d.ts +5 -1
- package/dist/editor/ai/terminal/components/AgentTerminalFullUpperContent.js +33 -2
- package/dist/editor/ai/terminal/components/AgentTerminalFullUpperContent.js.map +1 -1
- package/dist/editor/ai/terminal/components/AgentTerminalStatusBar.d.ts +2 -0
- package/dist/editor/ai/terminal/components/AgentTerminalStatusBar.js +20 -1
- package/dist/editor/ai/terminal/components/AgentTerminalStatusBar.js.map +1 -1
- package/dist/editor/ai/terminal/components/AgentTerminalSummaryLayout.js +2 -1
- package/dist/editor/ai/terminal/components/AgentTerminalSummaryLayout.js.map +1 -1
- package/dist/editor/ai/terminal/components/AgentTerminalView.d.ts +3 -2
- package/dist/editor/ai/terminal/components/AgentTerminalView.js +11 -2
- package/dist/editor/ai/terminal/components/AgentTerminalView.js.map +1 -1
- package/dist/editor/ai/terminal/components/AiResponseMessage.js +59 -7
- package/dist/editor/ai/terminal/components/AiResponseMessage.js.map +1 -1
- package/dist/editor/ai/terminal/components/QuestionnaireRecap.d.ts +9 -0
- package/dist/editor/ai/terminal/components/QuestionnaireRecap.js +56 -0
- package/dist/editor/ai/terminal/components/QuestionnaireRecap.js.map +1 -0
- package/dist/editor/ai/terminal/contextBreakdown.d.ts +17 -0
- package/dist/editor/ai/terminal/contextBreakdown.js +58 -0
- package/dist/editor/ai/terminal/contextBreakdown.js.map +1 -0
- package/dist/editor/ai/terminal/types.d.ts +2 -0
- package/dist/editor/ai/terminal/useAgentAutoStartOnCreate.d.ts +29 -0
- package/dist/editor/ai/terminal/useAgentAutoStartOnCreate.js +68 -0
- package/dist/editor/ai/terminal/useAgentAutoStartOnCreate.js.map +1 -0
- package/dist/editor/ai/terminal/useAgentInlineDialogEvents.js +8 -3
- package/dist/editor/ai/terminal/useAgentInlineDialogEvents.js.map +1 -1
- package/dist/editor/ai/terminal/useAgentInlineDialogState.d.ts +10 -3
- package/dist/editor/ai/terminal/useAgentInlineDialogState.js +33 -4
- package/dist/editor/ai/terminal/useAgentInlineDialogState.js.map +1 -1
- package/dist/editor/ai/terminal/useAgentRunResyncSocketHandler.js +16 -2
- package/dist/editor/ai/terminal/useAgentRunResyncSocketHandler.js.map +1 -1
- package/dist/editor/ai/terminal/useAgentRunStatusSocketHandler.js +3 -1
- package/dist/editor/ai/terminal/useAgentRunStatusSocketHandler.js.map +1 -1
- package/dist/editor/ai/terminal/useAgentSession.js +12 -1
- package/dist/editor/ai/terminal/useAgentSession.js.map +1 -1
- package/dist/editor/ai/terminal/useAgentSubmitLifecycle.d.ts +3 -0
- package/dist/editor/ai/terminal/useAgentSubmitLifecycle.js +6 -1
- package/dist/editor/ai/terminal/useAgentSubmitLifecycle.js.map +1 -1
- package/dist/editor/ai/terminal/useAgentTerminalController.js +48 -4
- package/dist/editor/ai/terminal/useAgentTerminalController.js.map +1 -1
- package/dist/editor/ai/terminal/useAgentTerminalViewProps.d.ts +1 -0
- package/dist/editor/ai/terminal/useAgentTerminalViewProps.js +2 -1
- package/dist/editor/ai/terminal/useAgentTerminalViewProps.js.map +1 -1
- package/dist/editor/ai/terminal/useAgentToolCallHandler.js +13 -1
- package/dist/editor/ai/terminal/useAgentToolCallHandler.js.map +1 -1
- package/dist/editor/ai/terminal/useAgentToolResultHandler.js +31 -7
- package/dist/editor/ai/terminal/useAgentToolResultHandler.js.map +1 -1
- package/dist/editor/bridge/BridgeClient.d.ts +1 -8
- package/dist/editor/bridge/BridgeClient.js +2 -4
- package/dist/editor/bridge/BridgeClient.js.map +1 -1
- package/dist/editor/bridge/protocol.d.ts +512 -0
- package/dist/editor/bridge/protocol.js +188 -0
- package/dist/editor/bridge/protocol.js.map +1 -0
- package/dist/editor/client/AboutDialog.js +15 -4
- package/dist/editor/client/AboutDialog.js.map +1 -1
- package/dist/editor/client/EditorShell.js +50 -13
- package/dist/editor/client/EditorShell.js.map +1 -1
- package/dist/editor/client/editContext.d.ts +6 -0
- package/dist/editor/client/editContext.js.map +1 -1
- package/dist/editor/client/hooks/useSocketMessageHandler.d.ts +3 -0
- package/dist/editor/client/hooks/useSocketMessageHandler.js +57 -25
- package/dist/editor/client/hooks/useSocketMessageHandler.js.map +1 -1
- package/dist/editor/client/hooks/useWorkbox.d.ts +1 -0
- package/dist/editor/client/hooks/useWorkbox.js +14 -1
- package/dist/editor/client/hooks/useWorkbox.js.map +1 -1
- package/dist/editor/client/operationToasts.d.ts +2 -0
- package/dist/editor/client/operationToasts.js +35 -0
- package/dist/editor/client/operationToasts.js.map +1 -0
- package/dist/editor/client/operations.d.ts +4 -0
- package/dist/editor/client/operations.js +134 -74
- package/dist/editor/client/operations.js.map +1 -1
- package/dist/editor/client/pageModelBuilder.d.ts +1 -0
- package/dist/editor/client/pageModelBuilder.js +22 -13
- package/dist/editor/client/pageModelBuilder.js.map +1 -1
- package/dist/editor/client/waitForEditOperationTerminal.d.ts +1 -0
- package/dist/editor/client/waitForEditOperationTerminal.js +1 -1
- package/dist/editor/client/waitForEditOperationTerminal.js.map +1 -1
- package/dist/editor/commands/itemCommands.js +5 -16
- package/dist/editor/commands/itemCommands.js.map +1 -1
- package/dist/editor/content-tree/IndicatorSettings.js +3 -2
- package/dist/editor/content-tree/IndicatorSettings.js.map +1 -1
- package/dist/editor/field-types/CheckboxEditor.js +3 -1
- package/dist/editor/field-types/CheckboxEditor.js.map +1 -1
- package/dist/editor/field-types/MultiLineText.js +24 -7
- package/dist/editor/field-types/MultiLineText.js.map +1 -1
- package/dist/editor/field-types/SingleLineText.js +19 -2
- package/dist/editor/field-types/SingleLineText.js.map +1 -1
- package/dist/editor/field-types/useTextCompletion.d.ts +20 -0
- package/dist/editor/field-types/useTextCompletion.js +166 -0
- package/dist/editor/field-types/useTextCompletion.js.map +1 -0
- package/dist/editor/menubar/ItemLanguageVersion.js +3 -14
- package/dist/editor/menubar/ItemLanguageVersion.js.map +1 -1
- package/dist/editor/menubar/OperationsIndicator.d.ts +7 -0
- package/dist/editor/menubar/OperationsIndicator.js +87 -0
- package/dist/editor/menubar/OperationsIndicator.js.map +1 -0
- package/dist/editor/menubar/ToolbarFactory.js +4 -1
- package/dist/editor/menubar/ToolbarFactory.js.map +1 -1
- package/dist/editor/menubar/VersionSelector.d.ts +3 -2
- package/dist/editor/menubar/VersionSelector.js +28 -12
- package/dist/editor/menubar/VersionSelector.js.map +1 -1
- package/dist/editor/menubar/WorkflowButton.js +7 -4
- package/dist/editor/menubar/WorkflowButton.js.map +1 -1
- package/dist/editor/menubar/toolbar-sections/EditControls.js +7 -3
- package/dist/editor/menubar/toolbar-sections/EditControls.js.map +1 -1
- package/dist/editor/menubar/toolbar-sections/ViewportControls.js +4 -1
- package/dist/editor/menubar/toolbar-sections/ViewportControls.js.map +1 -1
- package/dist/editor/notifications/NotificationCenter.js +28 -27
- package/dist/editor/notifications/NotificationCenter.js.map +1 -1
- package/dist/editor/notifications/NotificationItem.js +100 -15
- package/dist/editor/notifications/NotificationItem.js.map +1 -1
- package/dist/editor/notifications/watchEventOptions.js +3 -2
- package/dist/editor/notifications/watchEventOptions.js.map +1 -1
- package/dist/editor/page-editor-chrome/BridgeInlineFormatOverlay.d.ts +1 -1
- package/dist/editor/page-editor-chrome/BridgeInlineFormatOverlay.js +8 -2
- package/dist/editor/page-editor-chrome/BridgeInlineFormatOverlay.js.map +1 -1
- package/dist/editor/page-editor-chrome/PageEditorChrome.d.ts +1 -1
- package/dist/editor/page-editor-chrome/PlaceholderDropZone.js +7 -1
- package/dist/editor/page-editor-chrome/PlaceholderDropZone.js.map +1 -1
- package/dist/editor/page-editor-chrome/overlay/IframeOverlayProvider.js +3 -10
- package/dist/editor/page-editor-chrome/overlay/IframeOverlayProvider.js.map +1 -1
- package/dist/editor/page-editor-chrome/overlay/geometry.d.ts +2 -2
- package/dist/editor/page-editor-chrome/useBridgeInlineEditing.d.ts +1 -1
- package/dist/editor/page-viewer/MiniMap.d.ts +21 -0
- package/dist/editor/page-viewer/MiniMap.js +113 -11
- package/dist/editor/page-viewer/MiniMap.js.map +1 -1
- package/dist/editor/page-viewer/PageViewerFrame.js +155 -22
- package/dist/editor/page-viewer/PageViewerFrame.js.map +1 -1
- package/dist/editor/page-viewer/bridgeFieldPatch.d.ts +1 -2
- package/dist/editor/page-viewer/bridgeFieldPatch.js.map +1 -1
- package/dist/editor/page-viewer/pageViewContext.d.ts +1 -1
- package/dist/editor/reviews/DecisionsMatrix.js +5 -1
- package/dist/editor/reviews/DecisionsMatrix.js.map +1 -1
- package/dist/editor/reviews/SuggestedEdit.js +12 -2
- package/dist/editor/reviews/SuggestedEdit.js.map +1 -1
- package/dist/editor/reviews/latestFeedbackData.js +7 -1
- package/dist/editor/reviews/latestFeedbackData.js.map +1 -1
- package/dist/editor/reviews/suggestedEditState.d.ts +2 -0
- package/dist/editor/reviews/suggestedEditState.js +20 -0
- package/dist/editor/reviews/suggestedEditState.js.map +1 -1
- package/dist/editor/reviews/suggestionContentChange.d.ts +1 -1
- package/dist/editor/reviews/suggestionContentChange.js +23 -3
- package/dist/editor/reviews/suggestionContentChange.js.map +1 -1
- package/dist/editor/services/agentService.d.ts +6 -0
- package/dist/editor/services/agentService.js +14 -0
- package/dist/editor/services/agentService.js.map +1 -1
- package/dist/editor/services/aiService.d.ts +5 -0
- package/dist/editor/services/aiService.js.map +1 -1
- package/dist/editor/settings/About.js +1 -1
- package/dist/editor/settings/About.js.map +1 -1
- package/dist/editor/settings/panels/AgentProfileConfigPanel.js +4 -2
- package/dist/editor/settings/panels/AgentProfileConfigPanel.js.map +1 -1
- package/dist/editor/settings/panels/AgentToolsPanel.js +61 -33
- package/dist/editor/settings/panels/AgentToolsPanel.js.map +1 -1
- package/dist/editor/settings/panels/ClusterInstancesPanel.js +2 -1
- package/dist/editor/settings/panels/ClusterInstancesPanel.js.map +1 -1
- package/dist/editor/settings/panels/JavaScriptToolAgentPanel.js +3 -2
- package/dist/editor/settings/panels/JavaScriptToolAgentPanel.js.map +1 -1
- package/dist/editor/settings/panels/ProjectTemplateAgentPanel.js +3 -2
- package/dist/editor/settings/panels/ProjectTemplateAgentPanel.js.map +1 -1
- package/dist/editor/settings/panels/StatusPanel.js +10 -7
- package/dist/editor/settings/panels/StatusPanel.js.map +1 -1
- package/dist/editor/sidebar/Completions.js +1 -1
- package/dist/editor/sidebar/Completions.js.map +1 -1
- package/dist/editor/sidebar/ComponentTree.js +1 -1
- package/dist/editor/sidebar/ComponentTree.js.map +1 -1
- package/dist/editor/sidebar/OperationItem.js +1 -1
- package/dist/editor/sidebar/OperationItem.js.map +1 -1
- package/dist/editor/sidebar/Workbox.js +18 -4
- package/dist/editor/sidebar/Workbox.js.map +1 -1
- package/dist/editor/template-wizard/TemplateStructureInlineEditor.js +3 -2
- package/dist/editor/template-wizard/TemplateStructureInlineEditor.js.map +1 -1
- package/dist/editor/tree-indicators/GutterColumns.js +3 -2
- package/dist/editor/tree-indicators/GutterColumns.js.map +1 -1
- package/dist/editor/ui/DialogButtons.d.ts +3 -1
- package/dist/editor/ui/DialogButtons.js +3 -2
- package/dist/editor/ui/DialogButtons.js.map +1 -1
- package/dist/editor/ui/Icons.js +1 -1
- package/dist/editor/ui/Icons.js.map +1 -1
- package/dist/editor/ui/ItemCollectionEditor.js +2 -2
- package/dist/editor/ui/ItemCollectionEditor.js.map +1 -1
- package/dist/editor/ui/PublishItemDialog.js +4 -6
- package/dist/editor/ui/PublishItemDialog.js.map +1 -1
- package/dist/editor/ui/SimpleTabs.d.ts +2 -1
- package/dist/editor/ui/SimpleTabs.js +23 -5
- package/dist/editor/ui/SimpleTabs.js.map +1 -1
- package/dist/editor/ui/Splitter.js +120 -3
- package/dist/editor/ui/Splitter.js.map +1 -1
- package/dist/editor/ui/splitterResizeEvent.d.ts +7 -0
- package/dist/editor/ui/splitterResizeEvent.js +6 -0
- package/dist/editor/ui/splitterResizeEvent.js.map +1 -1
- package/dist/editor/version-diff/versionDiffTargets.d.ts +1 -1
- package/dist/editor/workflowFields.d.ts +1 -0
- package/dist/editor/workflowFields.js +16 -0
- package/dist/editor/workflowFields.js.map +1 -0
- package/dist/index.d.ts +4 -2
- package/dist/index.js +3 -2
- package/dist/index.js.map +1 -1
- package/dist/revision.d.ts +2 -2
- package/dist/revision.js +2 -2
- package/dist/splash-screen/ModernSplashScreen.js +20 -11
- package/dist/splash-screen/ModernSplashScreen.js.map +1 -1
- package/dist/splash-screen/NewPage.js +26 -7
- package/dist/splash-screen/NewPage.js.map +1 -1
- package/dist/task-board/TaskBoardWorkspace.js +154 -121
- package/dist/task-board/TaskBoardWorkspace.js.map +1 -1
- package/dist/task-board/components/CreateTaskDialog.js +1 -1
- package/dist/task-board/components/CreateTaskDialog.js.map +1 -1
- package/dist/task-board/components/ProjectDashboard.d.ts +12 -22
- package/dist/task-board/components/ProjectDashboard.js +120 -108
- package/dist/task-board/components/ProjectDashboard.js.map +1 -1
- package/dist/task-board/components/ProjectOverviewContent.js +3 -0
- package/dist/task-board/components/ProjectOverviewContent.js.map +1 -1
- package/dist/task-board/components/ProjectPropertiesPanel.d.ts +2 -0
- package/dist/task-board/components/ProjectPropertiesPanel.js +7 -4
- package/dist/task-board/components/ProjectPropertiesPanel.js.map +1 -1
- package/dist/task-board/components/ProjectSettingsDialog.d.ts +16 -0
- package/dist/task-board/components/ProjectSettingsDialog.js +55 -47
- package/dist/task-board/components/ProjectSettingsDialog.js.map +1 -1
- package/dist/task-board/components/TaskAgentPanel.js +6 -5
- package/dist/task-board/components/TaskAgentPanel.js.map +1 -1
- package/dist/task-board/components/TaskAssigneePicker.js +3 -2
- package/dist/task-board/components/TaskAssigneePicker.js.map +1 -1
- package/dist/task-board/components/TaskAttachmentsSection.js +1 -1
- package/dist/task-board/components/TaskAttachmentsSection.js.map +1 -1
- package/dist/task-board/components/TaskBoardHomeView.d.ts +7 -0
- package/dist/task-board/components/TaskBoardHomeView.js +21 -0
- package/dist/task-board/components/TaskBoardHomeView.js.map +1 -0
- package/dist/task-board/components/TaskBoardProjectListSidebar.js +74 -12
- package/dist/task-board/components/TaskBoardProjectListSidebar.js.map +1 -1
- package/dist/task-board/components/TaskBoardTitlebar.js +9 -52
- package/dist/task-board/components/TaskBoardTitlebar.js.map +1 -1
- package/dist/task-board/components/TaskCard.js +5 -13
- package/dist/task-board/components/TaskCard.js.map +1 -1
- package/dist/task-board/components/TaskRow.js +3 -2
- package/dist/task-board/components/TaskRow.js.map +1 -1
- package/dist/task-board/taskBoardNavStore.d.ts +0 -2
- package/dist/task-board/taskBoardNavStore.js +0 -2
- package/dist/task-board/taskBoardNavStore.js.map +1 -1
- package/dist/task-board/views/DependencyGraphView.js +3 -2
- package/dist/task-board/views/DependencyGraphView.js.map +1 -1
- package/dist/task-board/views/KanbanView.js +161 -38
- package/dist/task-board/views/KanbanView.js.map +1 -1
- package/dist/task-board/views/ListView.js +1 -2
- package/dist/task-board/views/ListView.js.map +1 -1
- package/dist/task-board/views/WizardView.d.ts +2 -0
- package/dist/task-board/views/WizardView.js +7 -4
- package/dist/task-board/views/WizardView.js.map +1 -1
- package/package.json +1 -2
- package/styles.css +4 -3
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"protocol.js","sourceRoot":"","sources":["../../../src/editor/bridge/protocol.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,13 +1,24 @@
|
|
|
1
|
-
import { jsx as _jsx,
|
|
2
|
-
import { Dialog, DialogContent, DialogTitle } from "../../components/ui/dialog";
|
|
1
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { Dialog, DialogClose, DialogContent, DialogTitle, } from "../../components/ui/dialog";
|
|
3
3
|
import { useImperativeHandle, useState, forwardRef, useEffect } from "react";
|
|
4
4
|
import { buildDate, version } from "../../revision";
|
|
5
|
-
import {
|
|
5
|
+
import { useLicense } from "../../licensing";
|
|
6
6
|
import { ParheliaIcon } from "../ui/ParheliaIcon";
|
|
7
|
+
import { X } from "lucide-react";
|
|
7
8
|
export const AboutDialog = forwardRef(function AboutDialog(props, ref) {
|
|
8
9
|
const [visible, setVisible] = useState(false);
|
|
9
10
|
const license = useLicense();
|
|
10
11
|
const licenseeCompanyName = license.licenseStatus?.companyName?.trim();
|
|
12
|
+
const showLicenseRows = !license.licenseStatus?.licensingDisabled;
|
|
13
|
+
const licenseLabel = license.isLoading
|
|
14
|
+
? "Checking"
|
|
15
|
+
: license.isLicensed
|
|
16
|
+
? license.licenseType === "trial"
|
|
17
|
+
? license.daysRemaining != null
|
|
18
|
+
? `Trial (${license.daysRemaining}d)`
|
|
19
|
+
: "Trial"
|
|
20
|
+
: "Licensed"
|
|
21
|
+
: "Unlicensed";
|
|
11
22
|
useImperativeHandle(ref, () => ({
|
|
12
23
|
onClose: (result) => {
|
|
13
24
|
setVisible(false);
|
|
@@ -22,6 +33,6 @@ export const AboutDialog = forwardRef(function AboutDialog(props, ref) {
|
|
|
22
33
|
setVisible(false);
|
|
23
34
|
props.onClose(null);
|
|
24
35
|
}
|
|
25
|
-
}, children: _jsxs(DialogContent, { className: "border-border-default
|
|
36
|
+
}, children: _jsxs(DialogContent, { className: "border-border-default/70 text-neutral-grey-100 overflow-hidden rounded-[18px] bg-white p-0 shadow-2xl sm:max-w-[430px]", overlayClassName: "bg-neutral-grey-100/45 backdrop-blur-md", showCloseButton: false, children: [_jsx(DialogTitle, { className: "sr-only", children: "About Parhelia" }), _jsx(DialogClose, { asChild: true, children: _jsx("button", { type: "button", "aria-label": "Close", "data-testid": "dialog-close", className: "text-neutral-grey-50 hover:text-neutral-grey-100 focus-visible:ring-ring/40 absolute top-7 right-7 z-50 inline-flex h-7 w-7 cursor-pointer items-center justify-center rounded transition-colors outline-none focus-visible:ring-[3px]", children: _jsx(X, { className: "h-5 w-5", strokeWidth: 1.5, "aria-hidden": "true" }) }) }), _jsxs("div", { className: "flex min-h-[525px] flex-col items-center px-12 pt-16 pb-10 text-center", children: [_jsx("div", { className: "mb-11 flex justify-center", children: _jsx(ParheliaIcon, { size: 108, animated: false }) }), _jsxs("div", { className: "mb-10 grid w-full max-w-[245px] grid-cols-[max-content_minmax(0,1fr)] gap-x-3 gap-y-3 text-left text-sm leading-none", children: [_jsx("span", { className: "text-neutral-grey-100 text-right font-semibold", children: "Version" }), _jsx("span", { className: "text-neutral-grey-50 min-w-0 wrap-break-word tabular-nums", children: version }), _jsx("span", { className: "text-neutral-grey-100 text-right font-semibold", children: "Build Date" }), _jsx("span", { className: "text-neutral-grey-50 min-w-0 wrap-break-word tabular-nums", children: buildDate }), showLicenseRows && (_jsxs(_Fragment, { children: [_jsx("span", { className: "text-neutral-grey-100 text-right font-semibold", children: "License" }), _jsx("span", { className: "text-neutral-grey-50 min-w-0 wrap-break-word", children: licenseLabel }), licenseeCompanyName && (_jsxs(_Fragment, { children: [_jsx("span", { className: "text-neutral-grey-100 text-right font-semibold", children: "Licensee" }), _jsx("span", { className: "text-neutral-grey-50 min-w-0 wrap-break-word", children: licenseeCompanyName })] }))] }))] }), _jsxs("div", { className: "mt-auto space-y-5", children: [_jsx("p", { className: "text-neutral-grey-50 mx-auto max-w-[290px] text-sm leading-[1.28] font-medium", children: "Built with passion by the Parhelia team at Canvas Reply. Focusing on the future of AI-driven content management." }), _jsxs("div", { className: "text-neutral-grey-50 mx-auto max-w-[255px] text-sm leading-[1.28] font-medium", children: ["\u00A9 ", new Date().getFullYear(), " Canvas Reply GmbH. All rights reserved."] })] })] })] }) }));
|
|
26
37
|
});
|
|
27
38
|
//# sourceMappingURL=AboutDialog.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AboutDialog.js","sourceRoot":"","sources":["../../../src/editor/client/AboutDialog.tsx"],"names":[],"mappings":";AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"AboutDialog.js","sourceRoot":"","sources":["../../../src/editor/client/AboutDialog.tsx"],"names":[],"mappings":"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"}
|
|
@@ -47,6 +47,7 @@ import { QuickItemSwitcher } from "../QuickItemSwitcher";
|
|
|
47
47
|
import { useEditorSlotContext, } from "../views/editorSlotContext";
|
|
48
48
|
import { getComments, getAvailableCommentTags, } from "../services/reviewsService";
|
|
49
49
|
import { useReviews } from "../reviews/useReviews";
|
|
50
|
+
import { isSuggestedEditRemoved } from "../reviews/suggestedEditState";
|
|
50
51
|
import { COMMENT_TRANSIENT_ELEMENT_KEY, COMMENT_TRANSIENT_SELECTION_RECT, } from "../reviews/commentTransientSelection";
|
|
51
52
|
import uuid from "react-uuid";
|
|
52
53
|
import { flushSync } from "react-dom";
|
|
@@ -70,6 +71,13 @@ import { FeatureGate, LicenseFeatures, LicenseProvider, LicenseOverlay, } from "
|
|
|
70
71
|
const SIDEBAR_NONE_SENTINEL = "none";
|
|
71
72
|
const sidebarUrlValue = (ids) => ids.length ? ids.join(",") : SIDEBAR_NONE_SENTINEL;
|
|
72
73
|
// moved to hooks/useQuota
|
|
74
|
+
function getInitialOpenSidebars(configuration, workspaceId) {
|
|
75
|
+
const workspace = configuration.editor.workspaces?.find((candidate) => candidate.id === workspaceId);
|
|
76
|
+
if (workspace?.supportsSidebars && workspace.defaultSidebars?.length) {
|
|
77
|
+
return [...workspace.defaultSidebars];
|
|
78
|
+
}
|
|
79
|
+
return [...(configuration.editor.defaultOpenSidebars ?? [])];
|
|
80
|
+
}
|
|
73
81
|
function isUsableTextSelectionRange(range) {
|
|
74
82
|
return !!(range &&
|
|
75
83
|
range.text?.trim() &&
|
|
@@ -214,14 +222,13 @@ export function EditorShell({ configuration, className, item: loadItemDescriptor
|
|
|
214
222
|
// (Next.js App Router uses startTransition internally for URL changes)
|
|
215
223
|
const rawWorkspace = useMemo(() => searchParams.get("workspace"), [searchParams]);
|
|
216
224
|
const isReviewsSidebarRequest = rawWorkspace === "reviews";
|
|
217
|
-
const
|
|
218
|
-
// If workspace=reviews, use "editor" workspace (reviews is a sidebar, not a workspace)
|
|
219
|
-
isReviewsSidebarRequest
|
|
225
|
+
const initialWorkspaceId = isReviewsSidebarRequest
|
|
220
226
|
? "editor"
|
|
221
227
|
: (rawWorkspace ??
|
|
222
228
|
configuration.editor.defaultWorkspace ??
|
|
223
229
|
configuration.editor.workspaces?.[0]?.id ??
|
|
224
|
-
"home")
|
|
230
|
+
"home");
|
|
231
|
+
const [workspaceId, setWorkspaceId] = useState(initialWorkspaceId);
|
|
225
232
|
const workspaceIdRef = useRef(workspaceId);
|
|
226
233
|
useEffect(() => {
|
|
227
234
|
workspaceIdRef.current = workspaceId;
|
|
@@ -239,7 +246,7 @@ export function EditorShell({ configuration, className, item: loadItemDescriptor
|
|
|
239
246
|
: sidebarParam.split(",").filter(Boolean);
|
|
240
247
|
}
|
|
241
248
|
else {
|
|
242
|
-
sidebars =
|
|
249
|
+
sidebars = getInitialOpenSidebars(configuration, initialWorkspaceId);
|
|
243
250
|
}
|
|
244
251
|
// If workspace=reviews was requested, ensure reviews sidebar is open
|
|
245
252
|
if (isReviewsSidebarRequest && !sidebars.includes("reviews")) {
|
|
@@ -509,6 +516,10 @@ export function EditorShell({ configuration, className, item: loadItemDescriptor
|
|
|
509
516
|
getFieldModificationStores,
|
|
510
517
|
]);
|
|
511
518
|
const [comments, setComments] = useState([]);
|
|
519
|
+
// True once loadComments has succeeded for the current item. Destructive
|
|
520
|
+
// decisions that depend on a suggestion's comment thread (e.g. auto-deleting
|
|
521
|
+
// a reverted no-op suggestion) must not run on the initial empty array.
|
|
522
|
+
const [commentsLoaded, setCommentsLoaded] = useState(false);
|
|
512
523
|
const [suggestedEdits, setSuggestedEdits] = useState([]);
|
|
513
524
|
const [showSuggestedEdits, setShowSuggestedEdits] = useState(false);
|
|
514
525
|
const [showSuggestedEditsDiff, setShowSuggestedEditsDiff] = useState(false);
|
|
@@ -1772,6 +1783,7 @@ export function EditorShell({ configuration, className, item: loadItemDescriptor
|
|
|
1772
1783
|
allComments.sort((a, b) => a.position - b.position);
|
|
1773
1784
|
return allComments;
|
|
1774
1785
|
});
|
|
1786
|
+
setCommentsLoaded(true);
|
|
1775
1787
|
}, [currentItemDescriptor, searchParams]);
|
|
1776
1788
|
// Assuming currentItemDescriptor, ui, state, handleErrorResult, and setSuggestedEdits
|
|
1777
1789
|
// are available in your component context.
|
|
@@ -1782,7 +1794,9 @@ export function EditorShell({ configuration, className, item: loadItemDescriptor
|
|
|
1782
1794
|
const result = await getSuggestedEdits(item.descriptor.id, item.descriptor.language, item.descriptor.version, reviewId ?? undefined);
|
|
1783
1795
|
if (handleErrorResult(result, ui, state))
|
|
1784
1796
|
return;
|
|
1785
|
-
|
|
1797
|
+
// A refetch can race a locally reverted suggestion's server delete; don't
|
|
1798
|
+
// resurrect suggestions the user already removed.
|
|
1799
|
+
const edits = (result.data || []).filter((edit) => !isSuggestedEditRemoved(edit.id));
|
|
1786
1800
|
setSuggestedEdits(edits);
|
|
1787
1801
|
}, [item, searchParams]);
|
|
1788
1802
|
useEffect(() => {
|
|
@@ -2217,6 +2231,8 @@ export function EditorShell({ configuration, className, item: loadItemDescriptor
|
|
|
2217
2231
|
useEffect(() => {
|
|
2218
2232
|
if (!currentItemDescriptor)
|
|
2219
2233
|
return;
|
|
2234
|
+
// The previous item's comments don't speak for the new one.
|
|
2235
|
+
setCommentsLoaded(false);
|
|
2220
2236
|
loadComments();
|
|
2221
2237
|
loadSuggestedEdits();
|
|
2222
2238
|
}, [currentItemDescriptor]);
|
|
@@ -2836,6 +2852,7 @@ export function EditorShell({ configuration, className, item: loadItemDescriptor
|
|
|
2836
2852
|
historyMode,
|
|
2837
2853
|
refreshHistory,
|
|
2838
2854
|
comments,
|
|
2855
|
+
commentsLoaded,
|
|
2839
2856
|
suggestedEdits,
|
|
2840
2857
|
setSuggestedEdits,
|
|
2841
2858
|
mode,
|
|
@@ -3008,13 +3025,15 @@ export function EditorShell({ configuration, className, item: loadItemDescriptor
|
|
|
3008
3025
|
onOperationExecuted,
|
|
3009
3026
|
};
|
|
3010
3027
|
// moved to useMediaSelector
|
|
3011
|
-
const { workboxItems, isWorkboxLoading } = useWorkbox({
|
|
3028
|
+
const { workboxItems, isWorkboxLoading, refreshWorkbox } = useWorkbox({
|
|
3012
3029
|
page,
|
|
3013
3030
|
currentItemDescriptor,
|
|
3014
3031
|
validate,
|
|
3015
3032
|
});
|
|
3016
|
-
//
|
|
3033
|
+
// Refs for operations-context callbacks (needed because operationsContext is created later)
|
|
3017
3034
|
const markOperationCompleteRef = useRef(null);
|
|
3035
|
+
const addExecutingOperationRef = useRef(null);
|
|
3036
|
+
const updateExecutingOperationProgressRef = useRef(null);
|
|
3018
3037
|
// WebSocket message handler and connection
|
|
3019
3038
|
const messageHandler = useSocketMessageHandler({
|
|
3020
3039
|
sessionId,
|
|
@@ -3039,6 +3058,13 @@ export function EditorShell({ configuration, className, item: loadItemDescriptor
|
|
|
3039
3058
|
markOperationComplete: (operationId) => {
|
|
3040
3059
|
markOperationCompleteRef.current?.(operationId);
|
|
3041
3060
|
},
|
|
3061
|
+
addExecutingOperation: (operation) => {
|
|
3062
|
+
addExecutingOperationRef.current?.(operation);
|
|
3063
|
+
},
|
|
3064
|
+
updateExecutingOperationProgress: (operationId, progress, statusMessage) => {
|
|
3065
|
+
updateExecutingOperationProgressRef.current?.(operationId, progress, statusMessage);
|
|
3066
|
+
},
|
|
3067
|
+
refreshWorkbox,
|
|
3042
3068
|
});
|
|
3043
3069
|
// Concurrent user limit error state
|
|
3044
3070
|
const [concurrentUserLimitError, setConcurrentUserLimitError] = useState(null);
|
|
@@ -3510,8 +3536,9 @@ export function EditorShell({ configuration, className, item: loadItemDescriptor
|
|
|
3510
3536
|
};
|
|
3511
3537
|
}, [getSidebarsForWorkspace, workspaceId]);
|
|
3512
3538
|
// Track the last workspaceId this effect saw so we only auto-apply
|
|
3513
|
-
// `currentWorkspace.defaultSidebars` on
|
|
3514
|
-
//
|
|
3539
|
+
// `currentWorkspace.defaultSidebars` on actual workspace changes. Initial
|
|
3540
|
+
// workspace defaults are applied by the openSidebars state initializer, while
|
|
3541
|
+
// explicit sidebar URL state such as sidebar=none is still respected.
|
|
3515
3542
|
const prevWorkspaceIdForDefaultsRef = useRef(null);
|
|
3516
3543
|
useEffect(() => {
|
|
3517
3544
|
if (!currentWorkspace.supportsSidebars) {
|
|
@@ -3604,13 +3631,21 @@ export function EditorShell({ configuration, className, item: loadItemDescriptor
|
|
|
3604
3631
|
const result = await command.execute(context);
|
|
3605
3632
|
return result;
|
|
3606
3633
|
}, [editContextRef, pathname, router, searchParams, openDialog]);
|
|
3607
|
-
const operationsContext = getOperationsContext(state, ui);
|
|
3634
|
+
const operationsContext = getOperationsContext({ ...state, refreshWorkbox }, ui);
|
|
3608
3635
|
const operations = operationsContext.ops;
|
|
3609
|
-
// Update the
|
|
3636
|
+
// Update the refs so the socket handler can access the operations-context callbacks
|
|
3610
3637
|
useEffect(() => {
|
|
3611
3638
|
markOperationCompleteRef.current =
|
|
3612
3639
|
operationsContext.context.markOperationComplete;
|
|
3613
|
-
|
|
3640
|
+
addExecutingOperationRef.current =
|
|
3641
|
+
operationsContext.context.addExecutingOperation;
|
|
3642
|
+
updateExecutingOperationProgressRef.current =
|
|
3643
|
+
operationsContext.context.updateExecutingOperationProgress;
|
|
3644
|
+
}, [
|
|
3645
|
+
operationsContext.context.markOperationComplete,
|
|
3646
|
+
operationsContext.context.addExecutingOperation,
|
|
3647
|
+
operationsContext.context.updateExecutingOperationProgress,
|
|
3648
|
+
]);
|
|
3614
3649
|
// Replace selected text with new content (for inline AI editing)
|
|
3615
3650
|
const replaceSelectedText = useCallback(async (newText, selectionOverride) => {
|
|
3616
3651
|
const rangeToReplace = selectionOverride ?? selectedRange ?? lastTextSelectionRangeRef.current;
|
|
@@ -4269,6 +4304,7 @@ export function EditorShell({ configuration, className, item: loadItemDescriptor
|
|
|
4269
4304
|
setClipboard,
|
|
4270
4305
|
workboxItems,
|
|
4271
4306
|
isWorkboxLoading,
|
|
4307
|
+
refreshWorkbox,
|
|
4272
4308
|
requestRefresh,
|
|
4273
4309
|
refreshCompletedFlag,
|
|
4274
4310
|
openCreatePageDialog: () => {
|
|
@@ -4889,6 +4925,7 @@ export function EditorShell({ configuration, className, item: loadItemDescriptor
|
|
|
4889
4925
|
clipboard,
|
|
4890
4926
|
workboxItems,
|
|
4891
4927
|
isWorkboxLoading,
|
|
4928
|
+
refreshWorkbox,
|
|
4892
4929
|
requestRefresh,
|
|
4893
4930
|
refreshCompletedFlag,
|
|
4894
4931
|
searchParams,
|