@parhelia/core 0.1.12895 → 0.1.12900
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.js +1 -1
- package/dist/agents-view/AgentCard.js.map +1 -1
- package/dist/agents-view/AgentProfileIcon.d.ts +1 -1
- package/dist/agents-view/AgentProfileIcon.js +4 -0
- package/dist/agents-view/AgentProfileIcon.js.map +1 -1
- package/dist/agents-view/AgentsWorkspaceView.js +10 -24
- package/dist/agents-view/AgentsWorkspaceView.js.map +1 -1
- package/dist/agents-view/ProfileAgentsGroup.js +2 -3
- package/dist/agents-view/ProfileAgentsGroup.js.map +1 -1
- package/dist/components/MarkdownDisplay.js +1 -1
- package/dist/components/MarkdownDisplay.js.map +1 -1
- package/dist/components/SearchInput.d.ts +1 -0
- package/dist/components/SearchInput.js +2 -2
- package/dist/components/SearchInput.js.map +1 -1
- package/dist/components/ui/LanguageSelectionGrid.js +2 -1
- package/dist/components/ui/LanguageSelectionGrid.js.map +1 -1
- package/dist/components/ui/LanguageSelector.d.ts +2 -1
- package/dist/components/ui/LanguageSelector.js +3 -3
- package/dist/components/ui/LanguageSelector.js.map +1 -1
- package/dist/components/ui/badge.d.ts +5 -1
- package/dist/components/ui/badge.js +8 -3
- package/dist/components/ui/badge.js.map +1 -1
- package/dist/components/ui/button.js +4 -5
- package/dist/components/ui/button.js.map +1 -1
- package/dist/components/ui/checkbox.js +1 -1
- package/dist/components/ui/checkbox.js.map +1 -1
- package/dist/components/ui/command.js +1 -1
- package/dist/components/ui/command.js.map +1 -1
- package/dist/components/ui/context-menu.d.ts +13 -0
- package/dist/components/ui/context-menu.js +61 -57
- package/dist/components/ui/context-menu.js.map +1 -1
- package/dist/components/ui/dropdown-menu.js +4 -4
- package/dist/components/ui/dropdown-menu.js.map +1 -1
- package/dist/components/ui/input.js +2 -2
- package/dist/components/ui/input.js.map +1 -1
- package/dist/components/ui/switch.js +1 -1
- package/dist/components/ui/switch.js.map +1 -1
- package/dist/components/ui/textarea.js +1 -1
- package/dist/components/ui/textarea.js.map +1 -1
- package/dist/config/config.js +40 -15
- package/dist/config/config.js.map +1 -1
- package/dist/config/notificationRoutes.js +2 -2
- package/dist/config/notificationRoutes.js.map +1 -1
- package/dist/editor/ContentTree.js +13 -5
- package/dist/editor/ContentTree.js.map +1 -1
- package/dist/editor/ContextMenu.js +4 -6
- package/dist/editor/ContextMenu.js.map +1 -1
- package/dist/editor/FieldListField.js +14 -7
- package/dist/editor/FieldListField.js.map +1 -1
- package/dist/editor/GlobalMenuBar.js +1 -2
- package/dist/editor/GlobalMenuBar.js.map +1 -1
- package/dist/editor/ImageEditor.js +1 -1
- package/dist/editor/ImageEditor.js.map +1 -1
- package/dist/editor/LinkEditorDialog.js +13 -0
- package/dist/editor/LinkEditorDialog.js.map +1 -1
- package/dist/editor/MainLayout.js +66 -9
- package/dist/editor/MainLayout.js.map +1 -1
- package/dist/editor/Titlebar.js +1 -1
- package/dist/editor/Titlebar.js.map +1 -1
- package/dist/editor/WorkspaceTitleSwitcher.js +12 -31
- package/dist/editor/WorkspaceTitleSwitcher.js.map +1 -1
- package/dist/editor/ai/AgentProfileSelector.js +2 -2
- package/dist/editor/ai/AgentProfileSelector.js.map +1 -1
- package/dist/editor/ai/AgentStatusBadge.js +3 -11
- package/dist/editor/ai/AgentStatusBadge.js.map +1 -1
- package/dist/editor/ai/Agents.js +46 -41
- package/dist/editor/ai/Agents.js.map +1 -1
- package/dist/editor/ai/InlineAiDialog.js +24 -26
- package/dist/editor/ai/InlineAiDialog.js.map +1 -1
- package/dist/editor/ai/InlineAiTrigger.js +30 -1
- package/dist/editor/ai/InlineAiTrigger.js.map +1 -1
- package/dist/editor/ai/agentActivitySummary.d.ts +108 -0
- package/dist/editor/ai/agentActivitySummary.js +390 -0
- package/dist/editor/ai/agentActivitySummary.js.map +1 -0
- package/dist/editor/ai/terminal/agentContextMerge.d.ts +19 -0
- package/dist/editor/ai/terminal/agentContextMerge.js +88 -0
- package/dist/editor/ai/terminal/agentContextMerge.js.map +1 -0
- package/dist/editor/ai/terminal/components/ActivitySummaryCell.d.ts +21 -0
- package/dist/editor/ai/terminal/components/ActivitySummaryCell.js +133 -0
- package/dist/editor/ai/terminal/components/ActivitySummaryCell.js.map +1 -0
- package/dist/editor/ai/terminal/components/AgentActivityOverviewPanel.d.ts +7 -0
- package/dist/editor/ai/terminal/components/AgentActivityOverviewPanel.js +48 -0
- package/dist/editor/ai/terminal/components/AgentActivityOverviewPanel.js.map +1 -0
- package/dist/editor/ai/terminal/components/AgentEditHistoryButton.js +1 -1
- package/dist/editor/ai/terminal/components/AgentEditHistoryButton.js.map +1 -1
- package/dist/editor/ai/terminal/components/AgentFullPromptControls.d.ts +2 -1
- package/dist/editor/ai/terminal/components/AgentFullPromptControls.js +13 -13
- package/dist/editor/ai/terminal/components/AgentFullPromptControls.js.map +1 -1
- package/dist/editor/ai/terminal/components/AgentGreeting.js +2 -2
- package/dist/editor/ai/terminal/components/AgentGreeting.js.map +1 -1
- package/dist/editor/ai/terminal/components/AgentMobileStatusPopover.js +1 -1
- package/dist/editor/ai/terminal/components/AgentMobileStatusPopover.js.map +1 -1
- package/dist/editor/ai/terminal/components/AgentModeSelector.d.ts +1 -1
- package/dist/editor/ai/terminal/components/AgentModeSelector.js +86 -9
- package/dist/editor/ai/terminal/components/AgentModeSelector.js.map +1 -1
- package/dist/editor/ai/terminal/components/AgentPredefinedPromptsButton.js +1 -1
- package/dist/editor/ai/terminal/components/AgentPredefinedPromptsButton.js.map +1 -1
- package/dist/editor/ai/terminal/components/AgentPromptActionButtons.js +2 -2
- package/dist/editor/ai/terminal/components/AgentPromptActionButtons.js.map +1 -1
- package/dist/editor/ai/terminal/components/AgentPromptInputArea.d.ts +2 -2
- package/dist/editor/ai/terminal/components/AgentPromptInputArea.js +4 -27
- package/dist/editor/ai/terminal/components/AgentPromptInputArea.js.map +1 -1
- package/dist/editor/ai/terminal/components/AgentPromptTrayPopovers.d.ts +2 -2
- package/dist/editor/ai/terminal/components/AgentPromptTrayPopovers.js +15 -12
- package/dist/editor/ai/terminal/components/AgentPromptTrayPopovers.js.map +1 -1
- package/dist/editor/ai/terminal/components/AgentSettingsPopover.js +1 -1
- package/dist/editor/ai/terminal/components/AgentSettingsPopover.js.map +1 -1
- package/dist/editor/ai/terminal/components/AgentSummaryAssistantResponse.d.ts +2 -0
- package/dist/editor/ai/terminal/components/AgentSummaryAssistantResponse.js.map +1 -1
- package/dist/editor/ai/terminal/components/AgentTerminalContextChrome.d.ts +1 -3
- package/dist/editor/ai/terminal/components/AgentTerminalContextChrome.js.map +1 -1
- package/dist/editor/ai/terminal/components/AgentTerminalFullLayout.d.ts +10 -10
- package/dist/editor/ai/terminal/components/AgentTerminalFullLayout.js +17 -3
- package/dist/editor/ai/terminal/components/AgentTerminalFullLayout.js.map +1 -1
- package/dist/editor/ai/terminal/components/AgentTerminalFullUpperContent.d.ts +2 -1
- package/dist/editor/ai/terminal/components/AgentTerminalFullUpperContent.js +59 -5
- package/dist/editor/ai/terminal/components/AgentTerminalFullUpperContent.js.map +1 -1
- package/dist/editor/ai/terminal/components/AgentTerminalView.d.ts +3 -2
- package/dist/editor/ai/terminal/components/AgentTerminalView.js +5 -4
- package/dist/editor/ai/terminal/components/AgentTerminalView.js.map +1 -1
- package/dist/editor/ai/terminal/components/AiResponseMessage.d.ts +2 -0
- package/dist/editor/ai/terminal/components/AiResponseMessage.js +84 -28
- package/dist/editor/ai/terminal/components/AiResponseMessage.js.map +1 -1
- package/dist/editor/ai/terminal/components/ContextInfoBar.d.ts +2 -4
- package/dist/editor/ai/terminal/components/ContextInfoBar.js +93 -223
- package/dist/editor/ai/terminal/components/ContextInfoBar.js.map +1 -1
- package/dist/editor/ai/terminal/useAgentDraftInitializer.js +7 -45
- package/dist/editor/ai/terminal/useAgentDraftInitializer.js.map +1 -1
- package/dist/editor/ai/terminal/useAgentEditorContextPipeline.d.ts +0 -4
- package/dist/editor/ai/terminal/useAgentEditorContextPipeline.js +1 -7
- package/dist/editor/ai/terminal/useAgentEditorContextPipeline.js.map +1 -1
- package/dist/editor/ai/terminal/useAgentPromptComposerSurface.d.ts +2 -2
- package/dist/editor/ai/terminal/useAgentQuickActions.d.ts +2 -2
- package/dist/editor/ai/terminal/useAgentQuickActions.js +61 -3
- package/dist/editor/ai/terminal/useAgentQuickActions.js.map +1 -1
- package/dist/editor/ai/terminal/useAgentSettingsPanel.js +0 -2
- package/dist/editor/ai/terminal/useAgentSettingsPanel.js.map +1 -1
- package/dist/editor/ai/terminal/useAgentSettingsSelectOptions.js +3 -3
- package/dist/editor/ai/terminal/useAgentSettingsSelectOptions.js.map +1 -1
- package/dist/editor/ai/terminal/useAgentSkillActions.d.ts +0 -3
- package/dist/editor/ai/terminal/useAgentSkillActions.js +8 -26
- package/dist/editor/ai/terminal/useAgentSkillActions.js.map +1 -1
- package/dist/editor/ai/terminal/useAgentSubmitContextBuilder.d.ts +1 -5
- package/dist/editor/ai/terminal/useAgentSubmitContextBuilder.js +6 -19
- package/dist/editor/ai/terminal/useAgentSubmitContextBuilder.js.map +1 -1
- package/dist/editor/ai/terminal/useAgentTerminalChrome.d.ts +1 -3
- package/dist/editor/ai/terminal/useAgentTerminalChrome.js +2 -2
- package/dist/editor/ai/terminal/useAgentTerminalChrome.js.map +1 -1
- package/dist/editor/ai/terminal/useAgentTerminalController.js +18 -22
- package/dist/editor/ai/terminal/useAgentTerminalController.js.map +1 -1
- package/dist/editor/ai/terminal/useAgentTerminalViewProps.d.ts +1 -1
- package/dist/editor/ai/terminal/useAgentTerminalViewProps.js +2 -2
- package/dist/editor/ai/terminal/useAgentTerminalViewProps.js.map +1 -1
- package/dist/editor/ai/terminal/useAgentTerminalViewState.d.ts +0 -6
- package/dist/editor/ai/terminal/useAgentTerminalViewState.js +2 -16
- package/dist/editor/ai/terminal/useAgentTerminalViewState.js.map +1 -1
- package/dist/editor/ai/useActiveAgentConversation.d.ts +2 -0
- package/dist/editor/ai/useActiveAgentConversation.js +20 -0
- package/dist/editor/ai/useActiveAgentConversation.js.map +1 -1
- package/dist/editor/bridge/protocol.d.ts +48 -0
- package/dist/editor/bridge/protocol.js +13 -1
- package/dist/editor/bridge/protocol.js.map +1 -1
- package/dist/editor/client/EditorShell.d.ts +2 -0
- package/dist/editor/client/EditorShell.js +129 -29
- package/dist/editor/client/EditorShell.js.map +1 -1
- package/dist/editor/client/editContext.d.ts +30 -4
- package/dist/editor/client/editContext.js.map +1 -1
- package/dist/editor/client/hooks/useReducedMotion.d.ts +8 -0
- package/dist/editor/client/hooks/useReducedMotion.js +12 -0
- package/dist/editor/client/hooks/useReducedMotion.js.map +1 -0
- package/dist/editor/client/manualShowMeFocus.d.ts +17 -0
- package/dist/editor/client/manualShowMeFocus.js +32 -0
- package/dist/editor/client/manualShowMeFocus.js.map +1 -0
- package/dist/editor/client/ui/FullscreenControls.js +5 -5
- package/dist/editor/client/ui/FullscreenControls.js.map +1 -1
- package/dist/editor/commands/componentCommands.js +30 -1
- package/dist/editor/commands/componentCommands.js.map +1 -1
- package/dist/editor/commands/keyboardCommands.d.ts +6 -0
- package/dist/editor/commands/keyboardCommands.js +74 -0
- package/dist/editor/commands/keyboardCommands.js.map +1 -1
- package/dist/editor/commands/reorderComponent.d.ts +20 -0
- package/dist/editor/commands/reorderComponent.js +40 -0
- package/dist/editor/commands/reorderComponent.js.map +1 -0
- package/dist/editor/commands/undo.js +3 -3
- package/dist/editor/commands/undo.js.map +1 -1
- package/dist/editor/componentFrameColors.d.ts +11 -0
- package/dist/editor/componentFrameColors.js +47 -0
- package/dist/editor/componentFrameColors.js.map +1 -0
- package/dist/editor/field-types/RichTextEditor.js +25 -6
- package/dist/editor/field-types/RichTextEditor.js.map +1 -1
- package/dist/editor/field-types/RichTextEditorComponent.js +14 -1
- package/dist/editor/field-types/RichTextEditorComponent.js.map +1 -1
- package/dist/editor/field-types/richtext/hooks/useRichTextProfile.d.ts +4 -1
- package/dist/editor/field-types/richtext/hooks/useRichTextProfile.js +33 -5
- package/dist/editor/field-types/richtext/hooks/useRichTextProfile.js.map +1 -1
- package/dist/editor/insertMenuItems.d.ts +11 -0
- package/dist/editor/insertMenuItems.js +9 -0
- package/dist/editor/insertMenuItems.js.map +1 -1
- package/dist/editor/menubar/ActiveUsers.js +3 -3
- package/dist/editor/menubar/ActiveUsers.js.map +1 -1
- package/dist/editor/menubar/FavoritesControls.js +46 -27
- package/dist/editor/menubar/FavoritesControls.js.map +1 -1
- package/dist/editor/menubar/GenericToolbar.js +2 -1
- package/dist/editor/menubar/GenericToolbar.js.map +1 -1
- package/dist/editor/menubar/ItemLanguageVersion.js +7 -5
- package/dist/editor/menubar/ItemLanguageVersion.js.map +1 -1
- package/dist/editor/menubar/PageSelector.js +1 -1
- package/dist/editor/menubar/PageSelector.js.map +1 -1
- package/dist/editor/menubar/PreviewDatePicker.js +40 -21
- package/dist/editor/menubar/PreviewDatePicker.js.map +1 -1
- package/dist/editor/menubar/Separator.d.ts +2 -1
- package/dist/editor/menubar/Separator.js +2 -2
- package/dist/editor/menubar/Separator.js.map +1 -1
- package/dist/editor/menubar/ToolbarFactory.js +24 -17
- package/dist/editor/menubar/ToolbarFactory.js.map +1 -1
- package/dist/editor/menubar/VersionSelector.d.ts +2 -1
- package/dist/editor/menubar/VersionSelector.js +3 -3
- package/dist/editor/menubar/VersionSelector.js.map +1 -1
- package/dist/editor/menubar/WorkflowButton.js +17 -25
- package/dist/editor/menubar/WorkflowButton.js.map +1 -1
- package/dist/editor/menubar/toolbar-sections/ContentTreeToggle.d.ts +1 -0
- package/dist/editor/menubar/toolbar-sections/ContentTreeToggle.js +13 -0
- package/dist/editor/menubar/toolbar-sections/ContentTreeToggle.js.map +1 -0
- package/dist/editor/menubar/toolbar-sections/CustomCommandsToolbar.js +1 -1
- package/dist/editor/menubar/toolbar-sections/CustomCommandsToolbar.js.map +1 -1
- package/dist/editor/menubar/toolbar-sections/DeviceSwitchToolbar.js +104 -9
- package/dist/editor/menubar/toolbar-sections/DeviceSwitchToolbar.js.map +1 -1
- package/dist/editor/menubar/toolbar-sections/EditControls.d.ts +4 -2
- package/dist/editor/menubar/toolbar-sections/EditControls.js +78 -11
- package/dist/editor/menubar/toolbar-sections/EditControls.js.map +1 -1
- package/dist/editor/menubar/toolbar-sections/FullscreenControl.d.ts +1 -0
- package/dist/editor/menubar/toolbar-sections/FullscreenControl.js +15 -0
- package/dist/editor/menubar/toolbar-sections/FullscreenControl.js.map +1 -0
- package/dist/editor/menubar/toolbar-sections/InsertControls.js +1 -1
- package/dist/editor/menubar/toolbar-sections/InsertControls.js.map +1 -1
- package/dist/editor/menubar/toolbar-sections/ManualBrowser.d.ts +12 -0
- package/dist/editor/menubar/toolbar-sections/ManualBrowser.js +169 -26
- package/dist/editor/menubar/toolbar-sections/ManualBrowser.js.map +1 -1
- package/dist/editor/menubar/toolbar-sections/ReviewCommands.js +2 -1
- package/dist/editor/menubar/toolbar-sections/ReviewCommands.js.map +1 -1
- package/dist/editor/menubar/toolbar-sections/UtilityControls.d.ts +3 -1
- package/dist/editor/menubar/toolbar-sections/UtilityControls.js +11 -3
- package/dist/editor/menubar/toolbar-sections/UtilityControls.js.map +1 -1
- package/dist/editor/menubar/toolbar-sections/ViewportControls.d.ts +1 -0
- package/dist/editor/menubar/toolbar-sections/ViewportControls.js +48 -29
- package/dist/editor/menubar/toolbar-sections/ViewportControls.js.map +1 -1
- package/dist/editor/menubar/toolbar-sections/index.d.ts +2 -1
- package/dist/editor/menubar/toolbar-sections/index.js +2 -1
- package/dist/editor/menubar/toolbar-sections/index.js.map +1 -1
- package/dist/editor/notifications/NotificationCenter.d.ts +4 -1
- package/dist/editor/notifications/NotificationCenter.js +13 -4
- package/dist/editor/notifications/NotificationCenter.js.map +1 -1
- package/dist/editor/notifications/WatchButton.d.ts +4 -2
- package/dist/editor/notifications/WatchButton.js +78 -20
- package/dist/editor/notifications/WatchButton.js.map +1 -1
- package/dist/editor/page-editor-chrome/BridgeInlineFormatOverlay.js +71 -6
- package/dist/editor/page-editor-chrome/BridgeInlineFormatOverlay.js.map +1 -1
- package/dist/editor/page-editor-chrome/CommentHighlightings.js +36 -40
- package/dist/editor/page-editor-chrome/CommentHighlightings.js.map +1 -1
- package/dist/editor/page-editor-chrome/DragInsertionOverlay.d.ts +36 -0
- package/dist/editor/page-editor-chrome/DragInsertionOverlay.js +879 -0
- package/dist/editor/page-editor-chrome/DragInsertionOverlay.js.map +1 -0
- package/dist/editor/page-editor-chrome/FeedbackHighlightBadge.d.ts +1 -0
- package/dist/editor/page-editor-chrome/FeedbackHighlightBadge.js +3 -3
- package/dist/editor/page-editor-chrome/FeedbackHighlightBadge.js.map +1 -1
- package/dist/editor/page-editor-chrome/FrameMenu.d.ts +3 -2
- package/dist/editor/page-editor-chrome/FrameMenu.js +49 -119
- 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 +65 -15
- package/dist/editor/page-editor-chrome/FrameMenus.js.map +1 -1
- package/dist/editor/page-editor-chrome/InsertComponentMenu.d.ts +25 -0
- package/dist/editor/page-editor-chrome/InsertComponentMenu.js +30 -0
- package/dist/editor/page-editor-chrome/InsertComponentMenu.js.map +1 -0
- package/dist/editor/page-editor-chrome/PageEditorChrome.js +14 -2
- package/dist/editor/page-editor-chrome/PageEditorChrome.js.map +1 -1
- package/dist/editor/page-editor-chrome/PlaceholderDropZone.d.ts +33 -2
- package/dist/editor/page-editor-chrome/PlaceholderDropZone.js +94 -71
- package/dist/editor/page-editor-chrome/PlaceholderDropZone.js.map +1 -1
- package/dist/editor/page-editor-chrome/PlaceholderDropZones.d.ts +13 -2
- package/dist/editor/page-editor-chrome/PlaceholderDropZones.js +105 -203
- package/dist/editor/page-editor-chrome/PlaceholderDropZones.js.map +1 -1
- package/dist/editor/page-editor-chrome/SuggestionHighlightings.js +51 -88
- package/dist/editor/page-editor-chrome/SuggestionHighlightings.js.map +1 -1
- package/dist/editor/page-editor-chrome/bridgeInlineFormatToolbarLayout.js +2 -1
- package/dist/editor/page-editor-chrome/bridgeInlineFormatToolbarLayout.js.map +1 -1
- package/dist/editor/page-editor-chrome/componentDragObject.d.ts +10 -0
- package/dist/editor/page-editor-chrome/componentDragObject.js +22 -0
- package/dist/editor/page-editor-chrome/componentDragObject.js.map +1 -0
- package/dist/editor/page-editor-chrome/overlay/IframeOverlayProvider.d.ts +32 -0
- package/dist/editor/page-editor-chrome/overlay/IframeOverlayProvider.js +8 -0
- package/dist/editor/page-editor-chrome/overlay/IframeOverlayProvider.js.map +1 -1
- package/dist/editor/page-editor-chrome/overlay/InsertionLine.d.ts +44 -0
- package/dist/editor/page-editor-chrome/overlay/InsertionLine.js +160 -0
- package/dist/editor/page-editor-chrome/overlay/InsertionLine.js.map +1 -0
- package/dist/editor/page-editor-chrome/overlay/geometry.d.ts +39 -0
- package/dist/editor/page-editor-chrome/overlay/geometry.js +67 -10
- package/dist/editor/page-editor-chrome/overlay/geometry.js.map +1 -1
- package/dist/editor/page-editor-chrome/overlay/placeholderZones.d.ts +66 -0
- package/dist/editor/page-editor-chrome/overlay/placeholderZones.js +274 -0
- package/dist/editor/page-editor-chrome/overlay/placeholderZones.js.map +1 -0
- package/dist/editor/page-editor-chrome/useComponentDragHandle.d.ts +23 -0
- package/dist/editor/page-editor-chrome/useComponentDragHandle.js +41 -0
- package/dist/editor/page-editor-chrome/useComponentDragHandle.js.map +1 -0
- package/dist/editor/page-editor-chrome/useDragInsertionGesture.d.ts +23 -0
- package/dist/editor/page-editor-chrome/useDragInsertionGesture.js +207 -0
- package/dist/editor/page-editor-chrome/useDragInsertionGesture.js.map +1 -0
- package/dist/editor/page-editor-chrome/usePinnedHoveredComponentId.d.ts +2 -0
- package/dist/editor/page-editor-chrome/usePinnedHoveredComponentId.js +18 -0
- package/dist/editor/page-editor-chrome/usePinnedHoveredComponentId.js.map +1 -0
- package/dist/editor/page-viewer/EditorForm.js +14 -12
- package/dist/editor/page-viewer/EditorForm.js.map +1 -1
- package/dist/editor/page-viewer/EditorFormHintPopover.d.ts +2 -2
- package/dist/editor/page-viewer/EditorFormHintPopover.js +4 -4
- package/dist/editor/page-viewer/EditorFormHintPopover.js.map +1 -1
- package/dist/editor/page-viewer/MiniMap.d.ts +6 -0
- package/dist/editor/page-viewer/MiniMap.js +97 -12
- package/dist/editor/page-viewer/MiniMap.js.map +1 -1
- package/dist/editor/page-viewer/MinimapDropTargets.d.ts +13 -0
- package/dist/editor/page-viewer/MinimapDropTargets.js +140 -0
- package/dist/editor/page-viewer/MinimapDropTargets.js.map +1 -0
- package/dist/editor/page-viewer/PageViewer.js +96 -10
- package/dist/editor/page-viewer/PageViewer.js.map +1 -1
- package/dist/editor/page-viewer/PageViewerFrame.js +263 -6
- package/dist/editor/page-viewer/PageViewerFrame.js.map +1 -1
- package/dist/editor/page-viewer/pageViewContext.d.ts +4 -1
- package/dist/editor/page-viewer/pageViewContext.js.map +1 -1
- package/dist/editor/reviews/Comment.js +2 -0
- package/dist/editor/reviews/Comment.js.map +1 -1
- package/dist/editor/reviews/CommentDisplayPopover.js +5 -2
- package/dist/editor/reviews/CommentDisplayPopover.js.map +1 -1
- package/dist/editor/reviews/CommentPopover.d.ts +4 -0
- package/dist/editor/reviews/CommentPopover.js +15 -1
- package/dist/editor/reviews/CommentPopover.js.map +1 -1
- package/dist/editor/reviews/Comments.js +61 -44
- package/dist/editor/reviews/Comments.js.map +1 -1
- package/dist/editor/reviews/DecisionsMatrix.js +3 -3
- package/dist/editor/reviews/DecisionsMatrix.js.map +1 -1
- package/dist/editor/reviews/FeedbackModeIntro.d.ts +15 -0
- package/dist/editor/reviews/FeedbackModeIntro.js +22 -0
- package/dist/editor/reviews/FeedbackModeIntro.js.map +1 -0
- package/dist/editor/reviews/LatestFeedback.js +8 -2
- package/dist/editor/reviews/LatestFeedback.js.map +1 -1
- package/dist/editor/reviews/ReviewersPanel.js +2 -1
- package/dist/editor/reviews/ReviewersPanel.js.map +1 -1
- package/dist/editor/reviews/SuggestedEdit.js +9 -7
- package/dist/editor/reviews/SuggestedEdit.js.map +1 -1
- package/dist/editor/reviews/SuggestionDisplayPopover.js +3 -3
- package/dist/editor/reviews/SuggestionDisplayPopover.js.map +1 -1
- package/dist/editor/reviews/feedbackScrollTarget.d.ts +19 -0
- package/dist/editor/reviews/feedbackScrollTarget.js +171 -0
- package/dist/editor/reviews/feedbackScrollTarget.js.map +1 -0
- package/dist/editor/reviews/feedbackSelection.js +4 -4
- package/dist/editor/reviews/feedbackSelection.js.map +1 -1
- package/dist/editor/reviews/latestFeedbackData.js +1 -1
- package/dist/editor/reviews/openCommentsFeedback.d.ts +35 -0
- package/dist/editor/reviews/openCommentsFeedback.js +89 -0
- package/dist/editor/reviews/openCommentsFeedback.js.map +1 -0
- package/dist/editor/services/agentService.d.ts +5 -0
- package/dist/editor/services/agentService.js.map +1 -1
- package/dist/editor/services/aiService.d.ts +0 -2
- package/dist/editor/services/aiService.js.map +1 -1
- package/dist/editor/services/editService.d.ts +1 -0
- package/dist/editor/services/editService.js +4 -0
- package/dist/editor/services/editService.js.map +1 -1
- package/dist/editor/settings/IndexOverview.js +2 -2
- package/dist/editor/settings/IndexOverview.js.map +1 -1
- package/dist/editor/settings/QuotaInfo.js +2 -2
- package/dist/editor/settings/QuotaInfo.js.map +1 -1
- package/dist/editor/settings/SettingsBreadcrumb.js +8 -2
- package/dist/editor/settings/SettingsBreadcrumb.js.map +1 -1
- package/dist/editor/settings/SettingsPanelLayout.js +1 -1
- package/dist/editor/settings/SettingsPanelLayout.js.map +1 -1
- package/dist/editor/settings/SettingsView.js +7 -9
- package/dist/editor/settings/SettingsView.js.map +1 -1
- package/dist/editor/settings/StatusSummary.js +7 -17
- package/dist/editor/settings/StatusSummary.js.map +1 -1
- package/dist/editor/settings/panels/AgentToolsPanel.js +2 -1
- 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/FieldTypeSerializersPanel.js +2 -1
- package/dist/editor/settings/panels/FieldTypeSerializersPanel.js.map +1 -1
- package/dist/editor/settings/panels/GroupedFieldConfigPanel.js +3 -2
- package/dist/editor/settings/panels/GroupedFieldConfigPanel.js.map +1 -1
- package/dist/editor/settings/panels/ItemConfigPanel.js +3 -2
- package/dist/editor/settings/panels/ItemConfigPanel.js.map +1 -1
- package/dist/editor/settings/panels/JavaScriptToolAgentPanel.js +2 -1
- package/dist/editor/settings/panels/JavaScriptToolAgentPanel.js.map +1 -1
- package/dist/editor/settings/panels/NotificationSubscriptionsPanel.js +2 -1
- package/dist/editor/settings/panels/NotificationSubscriptionsPanel.js.map +1 -1
- package/dist/editor/settings/panels/PersistentLogsPanel.js +3 -2
- package/dist/editor/settings/panels/PersistentLogsPanel.js.map +1 -1
- package/dist/editor/settings/panels/ProjectTemplateAgentPanel.js +2 -1
- package/dist/editor/settings/panels/ProjectTemplateAgentPanel.js.map +1 -1
- package/dist/editor/settings/panels/ProjectTemplateSelectorList.js +3 -2
- package/dist/editor/settings/panels/ProjectTemplateSelectorList.js.map +1 -1
- package/dist/editor/settings/panels/ProjectTemplatesPanel.js +3 -3
- package/dist/editor/settings/panels/ProjectTemplatesPanel.js.map +1 -1
- package/dist/editor/settings/panels/SearchConfigPanel.js +3 -2
- package/dist/editor/settings/panels/SearchConfigPanel.js.map +1 -1
- package/dist/editor/settings/panels/StatusPanel.js +3 -2
- package/dist/editor/settings/panels/StatusPanel.js.map +1 -1
- package/dist/editor/sidebar/ComponentPalette.d.ts +1 -1
- package/dist/editor/sidebar/ComponentPalette.js +58 -25
- package/dist/editor/sidebar/ComponentPalette.js.map +1 -1
- package/dist/editor/sidebar/ComponentTree.js +91 -7
- package/dist/editor/sidebar/ComponentTree.js.map +1 -1
- package/dist/editor/sidebar/ContentTreePanel.d.ts +3 -0
- package/dist/editor/sidebar/ContentTreePanel.js +14 -0
- package/dist/editor/sidebar/ContentTreePanel.js.map +1 -0
- package/dist/editor/sidebar/Favorites.js +2 -2
- package/dist/editor/sidebar/Favorites.js.map +1 -1
- package/dist/editor/sidebar/NavigationPanelItem.js +2 -1
- package/dist/editor/sidebar/NavigationPanelItem.js.map +1 -1
- package/dist/editor/sidebar/OperationItem.js +98 -17
- package/dist/editor/sidebar/OperationItem.js.map +1 -1
- package/dist/editor/sidebar/Workbox.js +14 -133
- package/dist/editor/sidebar/Workbox.js.map +1 -1
- package/dist/editor/sidebar/WorkspaceButton.js +1 -1
- package/dist/editor/sidebar/WorkspaceButton.js.map +1 -1
- package/dist/editor/sidebar/WorkspaceRail.js +12 -9
- package/dist/editor/sidebar/WorkspaceRail.js.map +1 -1
- package/dist/editor/sidebar/contentTreeConstants.d.ts +2 -0
- package/dist/editor/sidebar/contentTreeConstants.js +3 -0
- package/dist/editor/sidebar/contentTreeConstants.js.map +1 -0
- package/dist/editor/tree-indicators/GutterColumns.js +4 -14
- package/dist/editor/tree-indicators/GutterColumns.js.map +1 -1
- package/dist/editor/ui/ItemCollectionEditor.js +3 -2
- package/dist/editor/ui/ItemCollectionEditor.js.map +1 -1
- package/dist/editor/ui/LoadingState.d.ts +11 -0
- package/dist/editor/ui/LoadingState.js +27 -0
- package/dist/editor/ui/LoadingState.js.map +1 -0
- package/dist/editor/ui/PerfectTree.d.ts +22 -1
- package/dist/editor/ui/PerfectTree.js +17 -11
- package/dist/editor/ui/PerfectTree.js.map +1 -1
- package/dist/editor/ui/PublishDialog.d.ts +11 -0
- package/dist/editor/ui/PublishDialog.js +101 -0
- package/dist/editor/ui/PublishDialog.js.map +1 -0
- package/dist/editor/ui/PublishItemDialog.js +2 -1
- package/dist/editor/ui/PublishItemDialog.js.map +1 -1
- package/dist/editor/ui/PublishRestrictionsDialog.js +3 -2
- package/dist/editor/ui/PublishRestrictionsDialog.js.map +1 -1
- package/dist/editor/ui/SimpleIconButton.d.ts +6 -0
- package/dist/editor/ui/SimpleIconButton.js +13 -4
- package/dist/editor/ui/SimpleIconButton.js.map +1 -1
- package/dist/editor/ui/SimpleMenu.js +4 -4
- package/dist/editor/ui/SimpleMenu.js.map +1 -1
- package/dist/editor/ui/SimpleTabs.js +1 -1
- package/dist/editor/ui/Spinner.d.ts +14 -1
- package/dist/editor/ui/Spinner.js.map +1 -1
- package/dist/editor/ui/WorkboxItemsTable.d.ts +15 -0
- package/dist/editor/ui/WorkboxItemsTable.js +142 -0
- package/dist/editor/ui/WorkboxItemsTable.js.map +1 -0
- package/dist/index.d.ts +4 -0
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/lib/pointerDrag.d.ts +20 -0
- package/dist/lib/pointerDrag.js +57 -0
- package/dist/lib/pointerDrag.js.map +1 -0
- package/dist/logging/consolePrefix.d.ts +2 -0
- package/dist/logging/consolePrefix.js +49 -0
- package/dist/logging/consolePrefix.js.map +1 -0
- package/dist/logging/index.d.ts +1 -0
- package/dist/logging/index.js +2 -0
- package/dist/logging/index.js.map +1 -0
- package/dist/logging/install-browser-console.d.ts +1 -0
- package/dist/logging/install-browser-console.js +3 -0
- package/dist/logging/install-browser-console.js.map +1 -0
- package/dist/revision.d.ts +2 -2
- package/dist/revision.js +2 -2
- package/dist/splash-screen/ModernSplashScreen.js +2 -1
- package/dist/splash-screen/ModernSplashScreen.js.map +1 -1
- package/dist/task-board/TaskBoardWorkspace.js +181 -35
- package/dist/task-board/TaskBoardWorkspace.js.map +1 -1
- package/dist/task-board/components/CommentsList.js +20 -9
- package/dist/task-board/components/CommentsList.js.map +1 -1
- package/dist/task-board/components/FinishedProjectCard.d.ts +5 -0
- package/dist/task-board/components/FinishedProjectCard.js +8 -0
- package/dist/task-board/components/FinishedProjectCard.js.map +1 -0
- package/dist/task-board/components/ProjectDashboard.d.ts +10 -1
- package/dist/task-board/components/ProjectDashboard.js +90 -6
- package/dist/task-board/components/ProjectDashboard.js.map +1 -1
- package/dist/task-board/components/ProjectListContent.js +2 -1
- package/dist/task-board/components/ProjectListContent.js.map +1 -1
- package/dist/task-board/components/ProjectOverviewContent.js +2 -1
- package/dist/task-board/components/ProjectOverviewContent.js.map +1 -1
- package/dist/task-board/components/TaskAgentPanel.d.ts +4 -0
- package/dist/task-board/components/TaskAgentPanel.js +12 -6
- package/dist/task-board/components/TaskAgentPanel.js.map +1 -1
- package/dist/task-board/components/TaskAssigneeBadge.d.ts +16 -0
- package/dist/task-board/components/TaskAssigneeBadge.js +21 -0
- package/dist/task-board/components/TaskAssigneeBadge.js.map +1 -0
- package/dist/task-board/components/TaskAssigneePicker.js +12 -10
- package/dist/task-board/components/TaskAssigneePicker.js.map +1 -1
- package/dist/task-board/components/TaskAttachmentDropZone.d.ts +11 -0
- package/dist/task-board/components/TaskAttachmentDropZone.js +100 -0
- package/dist/task-board/components/TaskAttachmentDropZone.js.map +1 -0
- package/dist/task-board/components/TaskAttachmentsSection.d.ts +1 -0
- package/dist/task-board/components/TaskAttachmentsSection.js +15 -41
- package/dist/task-board/components/TaskAttachmentsSection.js.map +1 -1
- package/dist/task-board/components/TaskBoardFilterBox.d.ts +4 -0
- package/dist/task-board/components/TaskBoardFilterBox.js +7 -0
- package/dist/task-board/components/TaskBoardFilterBox.js.map +1 -0
- package/dist/task-board/components/TaskBoardProjectListSidebar.js +4 -5
- package/dist/task-board/components/TaskBoardProjectListSidebar.js.map +1 -1
- package/dist/task-board/components/TaskCard.js +26 -15
- package/dist/task-board/components/TaskCard.js.map +1 -1
- package/dist/task-board/components/TaskDetailPanel.d.ts +1 -0
- package/dist/task-board/components/TaskDetailPanel.js +15 -12
- package/dist/task-board/components/TaskDetailPanel.js.map +1 -1
- package/dist/task-board/components/TaskReviewActions.d.ts +1 -0
- package/dist/task-board/components/TaskReviewActions.js +4 -2
- package/dist/task-board/components/TaskReviewActions.js.map +1 -1
- package/dist/task-board/components/TaskRow.js +6 -12
- package/dist/task-board/components/TaskRow.js.map +1 -1
- package/dist/task-board/components/TaskboardPersistentLogPanel.js +3 -3
- package/dist/task-board/components/TaskboardPersistentLogPanel.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/components/WizardCommunicationCenter.d.ts +7 -1
- package/dist/task-board/components/WizardCommunicationCenter.js +10 -6
- package/dist/task-board/components/WizardCommunicationCenter.js.map +1 -1
- package/dist/task-board/components/WizardCommunicationShared.js +5 -5
- package/dist/task-board/components/WizardCommunicationShared.js.map +1 -1
- package/dist/task-board/components/WizardTask.d.ts +5 -1
- package/dist/task-board/components/WizardTask.js +14 -30
- package/dist/task-board/components/WizardTask.js.map +1 -1
- package/dist/task-board/components/WizardTaskDetailsPanel.d.ts +10 -2
- package/dist/task-board/components/WizardTaskDetailsPanel.js +56 -11
- package/dist/task-board/components/WizardTaskDetailsPanel.js.map +1 -1
- package/dist/task-board/taskBoardNavStore.d.ts +3 -0
- package/dist/task-board/taskBoardNavStore.js +44 -0
- package/dist/task-board/taskBoardNavStore.js.map +1 -1
- package/dist/task-board/taskPriority.d.ts +4 -0
- package/dist/task-board/taskPriority.js +19 -0
- package/dist/task-board/taskPriority.js.map +1 -0
- package/dist/task-board/views/DependencyGraphView.js +48 -36
- package/dist/task-board/views/DependencyGraphView.js.map +1 -1
- package/dist/task-board/views/KanbanView.js +130 -96
- package/dist/task-board/views/KanbanView.js.map +1 -1
- package/dist/task-board/views/ListView.js +3 -3
- package/dist/task-board/views/ListView.js.map +1 -1
- package/dist/task-board/views/WizardView.js +7 -6
- package/dist/task-board/views/WizardView.js.map +1 -1
- package/dist/tour/default-tour.js +5 -5
- package/dist/tour/default-tour.js.map +1 -1
- package/package.json +11 -1
- package/styles.css +144 -0
- package/dist/editor/ai/terminal/useAgentEditorContextSync.d.ts +0 -19
- package/dist/editor/ai/terminal/useAgentEditorContextSync.js +0 -142
- package/dist/editor/ai/terminal/useAgentEditorContextSync.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TaskAssigneePicker.js","sourceRoot":"","sources":["../../../src/task-board/components/TaskAssigneePicker.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC7D,OAAO,
|
|
1
|
+
{"version":3,"file":"TaskAssigneePicker.js","sourceRoot":"","sources":["../../../src/task-board/components/TaskAssigneePicker.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { TaskAttachment } from "../types";
|
|
2
|
+
export declare function TaskAttachmentDropZone(props: {
|
|
3
|
+
attachments: TaskAttachment[];
|
|
4
|
+
loading?: boolean;
|
|
5
|
+
uploading?: boolean;
|
|
6
|
+
canUpload: boolean;
|
|
7
|
+
deletingAttachmentId?: string | null;
|
|
8
|
+
onFilesAdded: (files: File[]) => void | Promise<void>;
|
|
9
|
+
onDownload: (attachment: TaskAttachment) => void;
|
|
10
|
+
onDelete?: (attachment: TaskAttachment) => void | Promise<void>;
|
|
11
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useCallback, useEffect, useRef, useState, } from "react";
|
|
3
|
+
import { Download, Loader2, Upload, X } from "lucide-react";
|
|
4
|
+
import { Button } from "../../components/ui/button";
|
|
5
|
+
import { cn } from "../../lib/utils";
|
|
6
|
+
function formatFileSize(bytes) {
|
|
7
|
+
if (!Number.isFinite(bytes) || bytes <= 0)
|
|
8
|
+
return "0 B";
|
|
9
|
+
const units = ["B", "KB", "MB", "GB"];
|
|
10
|
+
let size = bytes;
|
|
11
|
+
let unit = 0;
|
|
12
|
+
while (size >= 1024 && unit < units.length - 1) {
|
|
13
|
+
size /= 1024;
|
|
14
|
+
unit++;
|
|
15
|
+
}
|
|
16
|
+
const fixed = size >= 100 || unit === 0 ? 0 : 1;
|
|
17
|
+
return `${size.toFixed(fixed)} ${units[unit]}`;
|
|
18
|
+
}
|
|
19
|
+
const isFileDrag = (event) => Array.from(event.dataTransfer.types).includes("Files");
|
|
20
|
+
export function TaskAttachmentDropZone(props) {
|
|
21
|
+
const { attachments, loading = false, uploading = false, canUpload, deletingAttachmentId = null, onFilesAdded, onDownload, onDelete, } = props;
|
|
22
|
+
const [isDragOver, setIsDragOver] = useState(false);
|
|
23
|
+
const dragDepthRef = useRef(0);
|
|
24
|
+
const fileInputRef = useRef(null);
|
|
25
|
+
const canDrop = canUpload && !uploading && !loading;
|
|
26
|
+
useEffect(() => {
|
|
27
|
+
if (!canDrop) {
|
|
28
|
+
dragDepthRef.current = 0;
|
|
29
|
+
setIsDragOver(false);
|
|
30
|
+
}
|
|
31
|
+
}, [canDrop]);
|
|
32
|
+
const handleDragEnter = useCallback((event) => {
|
|
33
|
+
if (!isFileDrag(event))
|
|
34
|
+
return;
|
|
35
|
+
event.preventDefault();
|
|
36
|
+
event.stopPropagation();
|
|
37
|
+
dragDepthRef.current += 1;
|
|
38
|
+
if (canDrop) {
|
|
39
|
+
setIsDragOver(true);
|
|
40
|
+
}
|
|
41
|
+
}, [canDrop]);
|
|
42
|
+
const handleDragOver = useCallback((event) => {
|
|
43
|
+
if (!isFileDrag(event))
|
|
44
|
+
return;
|
|
45
|
+
event.preventDefault();
|
|
46
|
+
event.stopPropagation();
|
|
47
|
+
event.dataTransfer.dropEffect = canDrop ? "copy" : "none";
|
|
48
|
+
}, [canDrop]);
|
|
49
|
+
const handleDragLeave = useCallback((event) => {
|
|
50
|
+
if (!isFileDrag(event))
|
|
51
|
+
return;
|
|
52
|
+
event.preventDefault();
|
|
53
|
+
event.stopPropagation();
|
|
54
|
+
dragDepthRef.current = Math.max(0, dragDepthRef.current - 1);
|
|
55
|
+
if (dragDepthRef.current === 0) {
|
|
56
|
+
setIsDragOver(false);
|
|
57
|
+
}
|
|
58
|
+
}, []);
|
|
59
|
+
const handleDrop = useCallback((event) => {
|
|
60
|
+
if (!isFileDrag(event))
|
|
61
|
+
return;
|
|
62
|
+
event.preventDefault();
|
|
63
|
+
event.stopPropagation();
|
|
64
|
+
dragDepthRef.current = 0;
|
|
65
|
+
setIsDragOver(false);
|
|
66
|
+
if (!canDrop)
|
|
67
|
+
return;
|
|
68
|
+
const files = Array.from(event.dataTransfer.files);
|
|
69
|
+
if (files.length > 0) {
|
|
70
|
+
void onFilesAdded(files);
|
|
71
|
+
}
|
|
72
|
+
}, [canDrop, onFilesAdded]);
|
|
73
|
+
const handleBrowseFiles = useCallback(() => {
|
|
74
|
+
if (!canDrop)
|
|
75
|
+
return;
|
|
76
|
+
fileInputRef.current?.click();
|
|
77
|
+
}, [canDrop]);
|
|
78
|
+
const handleFilesSelected = useCallback((event) => {
|
|
79
|
+
const files = Array.from(event.target.files || []);
|
|
80
|
+
if (files.length > 0) {
|
|
81
|
+
void onFilesAdded(files);
|
|
82
|
+
}
|
|
83
|
+
event.target.value = "";
|
|
84
|
+
}, [onFilesAdded]);
|
|
85
|
+
const uploadPrompt = "Drag & drop or click to upload";
|
|
86
|
+
const emptyMessage = loading
|
|
87
|
+
? "Loading attachments..."
|
|
88
|
+
: canUpload
|
|
89
|
+
? uploadPrompt
|
|
90
|
+
: "No attachments yet.";
|
|
91
|
+
const uploadPromptContent = (_jsxs("span", { className: "inline-flex items-center justify-center gap-2", children: [_jsx(Upload, { className: "h-4 w-4 shrink-0" }), _jsx("span", { children: uploadPrompt })] }));
|
|
92
|
+
return (_jsxs("div", { className: "relative", onDragEnter: handleDragEnter, onDragOver: handleDragOver, onDragLeave: handleDragLeave, onDrop: handleDrop, "aria-busy": uploading || loading, children: [_jsx("input", { ref: fileInputRef, type: "file", multiple: true, className: "hidden", disabled: !canDrop, onChange: handleFilesSelected }), uploading ? (_jsxs("div", { className: "absolute inset-0 z-10 flex items-center justify-center gap-2 rounded-xl bg-white/60 backdrop-blur-[1px]", children: [_jsx(Loader2, { className: "text-feedback-blue h-5 w-5 animate-spin" }), _jsx("span", { className: "text-neutral-grey-50 text-sm font-medium", children: "Uploading attachments..." })] })) : null, isDragOver && !uploading ? (_jsx("div", { className: "bg-feedback-blue-light/70 pointer-events-none absolute inset-0 z-10 flex items-center justify-center rounded-xl backdrop-blur-[1px]", children: _jsxs("div", { className: "border-feedback-blue text-feedback-blue flex flex-col items-center gap-2 rounded-lg border-2 border-dashed bg-white/90 px-8 py-6 shadow-sm", children: [_jsx(Upload, { className: "h-8 w-8" }), _jsx("span", { className: "text-sm font-medium", children: "Drop files to upload them here" })] }) })) : null, attachments.length === 0 ? (canUpload ? (_jsx("button", { type: "button", className: cn("border-border-default text-neutral-grey-100 flex w-full items-center justify-center rounded-xl border-2 border-dashed bg-white/70 px-4 py-6 text-center text-xs italic transition-colors", canDrop &&
|
|
93
|
+
"hover:border-border-default hover:bg-neutral-grey-5 cursor-pointer", isDragOver && "border-feedback-blue bg-feedback-blue-light/40"), disabled: !canDrop, onClick: handleBrowseFiles, children: loading ? emptyMessage : uploadPromptContent })) : (_jsx("div", { className: "border-border-default text-neutral-grey-100 rounded-xl border-2 border-dashed bg-white/70 px-4 py-6 text-center text-xs italic", children: emptyMessage }))) : (_jsxs("div", { className: cn("grid gap-2 rounded-xl border-2 border-dashed transition-colors", canUpload
|
|
94
|
+
? "border-border-default bg-white/50 p-2"
|
|
95
|
+
: "border-transparent", canDrop && "hover:border-border-default hover:bg-neutral-grey-5", isDragOver && "border-feedback-blue bg-feedback-blue-light/30"), children: [attachments.map((attachment) => (_jsxs("div", { className: "border-border-default flex items-center justify-between gap-3 rounded-lg border bg-white p-3", children: [_jsxs("div", { className: "min-w-0 flex-1", children: [_jsx("button", { type: "button", onClick: () => onDownload(attachment), className: "text-neutral-grey-100 hover:text-feedback-blue truncate text-left text-sm font-medium transition-colors", children: attachment.fileName }), _jsxs("div", { className: "text-neutral-grey-50 mt-0.5 text-[11px]", children: [formatFileSize(attachment.fileSize), " |", " ", new Date(attachment.uploadedAt).toLocaleString(undefined, {
|
|
96
|
+
dateStyle: "medium",
|
|
97
|
+
timeStyle: "short",
|
|
98
|
+
}), " ", "| ", attachment.uploadedBy] })] }), _jsxs("div", { className: "flex items-center gap-1", children: [_jsxs(Button, { type: "button", size: "sm", variant: "ghost", onClick: () => onDownload(attachment), className: "text-neutral-grey-50 hover:text-neutral-grey-100 h-7 px-2 text-xs", children: [_jsx(Download, { className: "mr-1 h-3 w-3" }), "Download"] }), onDelete ? (_jsx(Button, { type: "button", size: "iconXs", variant: "ghost", onClick: () => void onDelete(attachment), disabled: deletingAttachmentId === attachment.attachmentId, className: "text-neutral-grey-50 hover:bg-neutral-grey-5 hover:text-neutral-grey-100", title: `Remove ${attachment.fileName}`, "aria-label": `Remove ${attachment.fileName}`, children: _jsx(X, { className: "h-3.5 w-3.5" }) })) : null] })] }, attachment.attachmentId))), canUpload ? (_jsx("button", { type: "button", className: "text-neutral-grey-100 hover:bg-neutral-grey-5 disabled:hover:text-neutral-grey-100 rounded-lg bg-white/70 px-4 py-3 text-center text-xs italic transition-colors disabled:cursor-default disabled:hover:bg-white/70", disabled: !canDrop, onClick: handleBrowseFiles, children: uploadPromptContent })) : null] }))] }));
|
|
99
|
+
}
|
|
100
|
+
//# sourceMappingURL=TaskAttachmentDropZone.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TaskAttachmentDropZone.js","sourceRoot":"","sources":["../../../src/task-board/components/TaskAttachmentDropZone.tsx"],"names":[],"mappings":"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"}
|
|
@@ -3,5 +3,6 @@ export declare function TaskAttachmentsSection(props: {
|
|
|
3
3
|
task: TaskItem | null;
|
|
4
4
|
canEdit: boolean;
|
|
5
5
|
onTaskChanged?: () => void | Promise<void>;
|
|
6
|
+
onAttachmentsChanged?: () => void | Promise<void>;
|
|
6
7
|
className?: string;
|
|
7
8
|
}): import("react/jsx-runtime").JSX.Element | null;
|
|
@@ -1,34 +1,20 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { useCallback, useEffect,
|
|
2
|
+
import { useCallback, useEffect, useState } from "react";
|
|
3
3
|
import { toast } from "sonner";
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import { DeleteIcon } from "../../components/ui/delete-icon";
|
|
4
|
+
import { Paperclip } from "lucide-react";
|
|
5
|
+
import { CountBadge } from "../../components/ui/badge";
|
|
7
6
|
import { useEditContext } from "../../editor/client/editContext";
|
|
8
7
|
import { deleteAttachment, getAttachmentDownloadUrl, getAttachments, uploadAttachmentFile, } from "../services/taskService";
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
return "0 B";
|
|
12
|
-
const units = ["B", "KB", "MB", "GB"];
|
|
13
|
-
let size = bytes;
|
|
14
|
-
let unit = 0;
|
|
15
|
-
while (size >= 1024 && unit < units.length - 1) {
|
|
16
|
-
size /= 1024;
|
|
17
|
-
unit++;
|
|
18
|
-
}
|
|
19
|
-
const fixed = size >= 100 || unit === 0 ? 0 : 1;
|
|
20
|
-
return `${size.toFixed(fixed)} ${units[unit]}`;
|
|
21
|
-
}
|
|
22
|
-
const sectionHeadingClass = "text-xs font-bold tracking-wider text-neutral-grey-50 ";
|
|
8
|
+
import { TaskAttachmentDropZone } from "./TaskAttachmentDropZone";
|
|
9
|
+
const sectionHeadingClass = "text-xs font-medium tracking-wider text-neutral-grey-100 ";
|
|
23
10
|
export function TaskAttachmentsSection(props) {
|
|
24
|
-
const { task, canEdit, onTaskChanged, className } = props;
|
|
11
|
+
const { task, canEdit, onTaskChanged, onAttachmentsChanged, className } = props;
|
|
25
12
|
const editContext = useEditContext();
|
|
26
13
|
const [attachmentRefreshKey, setAttachmentRefreshKey] = useState(0);
|
|
27
14
|
const [attachments, setAttachments] = useState([]);
|
|
28
15
|
const [attachmentsLoading, setAttachmentsLoading] = useState(false);
|
|
29
16
|
const [uploadingAttachment, setUploadingAttachment] = useState(false);
|
|
30
17
|
const [deletingAttachmentId, setDeletingAttachmentId] = useState(null);
|
|
31
|
-
const attachmentInputRef = useRef(null);
|
|
32
18
|
const refreshAttachments = useCallback(async () => {
|
|
33
19
|
if (!task?.taskId) {
|
|
34
20
|
setAttachments([]);
|
|
@@ -51,19 +37,15 @@ export function TaskAttachmentsSection(props) {
|
|
|
51
37
|
useEffect(() => {
|
|
52
38
|
void refreshAttachments();
|
|
53
39
|
}, [refreshAttachments, attachmentRefreshKey]);
|
|
54
|
-
const
|
|
55
|
-
attachmentInputRef.current?.click();
|
|
56
|
-
}, []);
|
|
57
|
-
const handleAttachmentFilesSelected = useCallback(async (event) => {
|
|
40
|
+
const handleAttachmentFilesAdded = useCallback(async (files) => {
|
|
58
41
|
if (!task?.taskId)
|
|
59
42
|
return;
|
|
60
|
-
const files = event.target.files;
|
|
61
43
|
if (!files || files.length === 0)
|
|
62
44
|
return;
|
|
63
45
|
setUploadingAttachment(true);
|
|
64
46
|
let uploaded = 0;
|
|
65
47
|
try {
|
|
66
|
-
for (const file of
|
|
48
|
+
for (const file of files) {
|
|
67
49
|
const result = await uploadAttachmentFile(task.taskId, file);
|
|
68
50
|
if (result.type === "success") {
|
|
69
51
|
uploaded += 1;
|
|
@@ -76,18 +58,15 @@ export function TaskAttachmentsSection(props) {
|
|
|
76
58
|
? "Attachment uploaded"
|
|
77
59
|
: `${uploaded} attachments uploaded`);
|
|
78
60
|
setAttachmentRefreshKey((key) => key + 1);
|
|
79
|
-
await onTaskChanged?.();
|
|
61
|
+
await (onAttachmentsChanged ?? onTaskChanged)?.();
|
|
80
62
|
}
|
|
81
63
|
}
|
|
82
64
|
finally {
|
|
83
65
|
setUploadingAttachment(false);
|
|
84
|
-
if (event.target) {
|
|
85
|
-
event.target.value = "";
|
|
86
|
-
}
|
|
87
66
|
}
|
|
88
|
-
}, [onTaskChanged, task?.taskId]);
|
|
89
|
-
const handleDownloadAttachment = useCallback((
|
|
90
|
-
const url = getAttachmentDownloadUrl(attachmentId);
|
|
67
|
+
}, [onAttachmentsChanged, onTaskChanged, task?.taskId]);
|
|
68
|
+
const handleDownloadAttachment = useCallback((attachment) => {
|
|
69
|
+
const url = getAttachmentDownloadUrl(attachment.attachmentId);
|
|
91
70
|
window.open(url, "_blank", "noopener,noreferrer");
|
|
92
71
|
}, []);
|
|
93
72
|
const handleDeleteAttachment = useCallback(async (attachment) => {
|
|
@@ -118,12 +97,12 @@ export function TaskAttachmentsSection(props) {
|
|
|
118
97
|
}
|
|
119
98
|
setAttachments((prev) => prev.filter((item) => item.attachmentId !== attachment.attachmentId));
|
|
120
99
|
toast.success("Attachment deleted");
|
|
121
|
-
await onTaskChanged?.();
|
|
100
|
+
await (onAttachmentsChanged ?? onTaskChanged)?.();
|
|
122
101
|
}
|
|
123
102
|
finally {
|
|
124
103
|
setDeletingAttachmentId(null);
|
|
125
104
|
}
|
|
126
|
-
}, [editContext, onTaskChanged, task]);
|
|
105
|
+
}, [editContext, onAttachmentsChanged, onTaskChanged, task]);
|
|
127
106
|
if (!task) {
|
|
128
107
|
return null;
|
|
129
108
|
}
|
|
@@ -132,11 +111,6 @@ export function TaskAttachmentsSection(props) {
|
|
|
132
111
|
className,
|
|
133
112
|
]
|
|
134
113
|
.filter(Boolean)
|
|
135
|
-
.join(" "), children: [
|
|
136
|
-
? "Loading attachments..."
|
|
137
|
-
: "No attachments yet." })) : (_jsx("div", { className: "grid gap-2", children: attachments.map((attachment) => (_jsxs("div", { className: "border-border-default flex items-center justify-between gap-3 rounded-lg border bg-white p-3", children: [_jsxs("div", { className: "min-w-0 flex-1", children: [_jsx("button", { type: "button", onClick: () => handleDownloadAttachment(attachment.attachmentId), className: "text-neutral-grey-100 hover:text-feedback-blue truncate text-left text-sm font-medium transition-colors", children: attachment.fileName }), _jsxs("div", { className: "text-neutral-grey-50 mt-0.5 text-[11px]", children: [formatFileSize(attachment.fileSize), " |", " ", new Date(attachment.uploadedAt).toLocaleString(undefined, {
|
|
138
|
-
dateStyle: "medium",
|
|
139
|
-
timeStyle: "short",
|
|
140
|
-
}), " ", "| ", attachment.uploadedBy] })] }), _jsxs("div", { className: "flex items-center gap-1", children: [_jsxs(Button, { type: "button", size: "sm", variant: "ghost", onClick: () => handleDownloadAttachment(attachment.attachmentId), className: "text-neutral-grey-50 hover:text-neutral-grey-100 h-7 px-2 text-xs", children: [_jsx(Download, { className: "mr-1 h-3 w-3" }), "Download"] }), canEdit ? (_jsxs(Button, { type: "button", size: "sm", variant: "ghost", onClick: () => void handleDeleteAttachment(attachment), disabled: deletingAttachmentId === attachment.attachmentId, className: "text-neutral-grey-50 hover:bg-neutral-grey-5 hover:text-neutral-grey-50 h-7 px-2 text-xs", children: [_jsx(DeleteIcon, { size: "sm", className: "mr-1" }), "Delete"] })) : null] })] }, attachment.attachmentId))) }))] }));
|
|
114
|
+
.join(" "), children: [_jsx("div", { className: "flex flex-wrap items-center gap-2", children: _jsxs("div", { className: "flex items-center gap-2", children: [_jsx(Paperclip, { className: "text-neutral-grey-50 h-4 w-4" }), _jsx("span", { className: sectionHeadingClass, children: "Attachments" }), _jsx(CountBadge, { children: attachments.length })] }) }), _jsx(TaskAttachmentDropZone, { attachments: attachments, loading: attachmentsLoading, uploading: uploadingAttachment, canUpload: canEdit, deletingAttachmentId: deletingAttachmentId, onFilesAdded: handleAttachmentFilesAdded, onDownload: handleDownloadAttachment, onDelete: canEdit ? handleDeleteAttachment : undefined })] }));
|
|
141
115
|
}
|
|
142
116
|
//# sourceMappingURL=TaskAttachmentsSection.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TaskAttachmentsSection.js","sourceRoot":"","sources":["../../../src/task-board/components/TaskAttachmentsSection.tsx"],"names":[],"mappings":";AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"TaskAttachmentsSection.js","sourceRoot":"","sources":["../../../src/task-board/components/TaskAttachmentsSection.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { SearchInput } from "../../components/SearchInput";
|
|
3
|
+
export function TaskBoardFilterBox(props) {
|
|
4
|
+
const { value, onChange } = props;
|
|
5
|
+
return (_jsx(SearchInput, { value: value, onChange: onChange, placeholder: "Search or filter tasks...", className: "w-full sm:w-[320px]", inputClassName: "h-9 bg-white text-sm" }));
|
|
6
|
+
}
|
|
7
|
+
//# sourceMappingURL=TaskBoardFilterBox.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TaskBoardFilterBox.js","sourceRoot":"","sources":["../../../src/task-board/components/TaskBoardFilterBox.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAE3D,MAAM,UAAU,kBAAkB,CAAC,KAGlC;IACC,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;IAElC,OAAO,CACL,KAAC,WAAW,IACV,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,QAAQ,EAClB,WAAW,EAAC,2BAA2B,EACvC,SAAS,EAAC,qBAAqB,EAC/B,cAAc,EAAC,sBAAsB,GACrC,CACH,CAAC;AACJ,CAAC"}
|
|
@@ -2,6 +2,7 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
|
2
2
|
import { useMemo, useState, useSyncExternalStore } from "react";
|
|
3
3
|
import { Check, Folder, FolderOpen, Loader2, Plus, } from "lucide-react";
|
|
4
4
|
import { Button } from "../../components/ui/button";
|
|
5
|
+
import { Switch } from "../../components/ui/switch";
|
|
5
6
|
import { SearchInput } from "../../components/SearchInput";
|
|
6
7
|
import { cn } from "../../lib/utils";
|
|
7
8
|
import { SimpleTabs } from "../../editor/ui/SimpleTabs";
|
|
@@ -23,7 +24,7 @@ export function TaskBoardProjectListSidebar() {
|
|
|
23
24
|
const filterTabs = useMemo(() => [
|
|
24
25
|
{
|
|
25
26
|
id: "active",
|
|
26
|
-
label: "
|
|
27
|
+
label: "Active projects",
|
|
27
28
|
content: null,
|
|
28
29
|
testId: "taskboard-project-list-filter-active",
|
|
29
30
|
},
|
|
@@ -79,16 +80,14 @@ export function TaskBoardProjectListSidebar() {
|
|
|
79
80
|
return "No matching projects";
|
|
80
81
|
return "No projects found";
|
|
81
82
|
}, [filterMode, search]);
|
|
82
|
-
return (_jsxs("div", { className: "flex h-full min-h-0 flex-col bg-white", "data-testid": "taskboard-project-list-sidebar", children: [_jsxs("div", { className: "flex shrink-0 flex-col gap-3 px-4 pt-3", children: [_jsxs(Button, { variant: "outline", size: "sm", className: "h-10 w-full justify-center gap-3 rounded-md bg-white px-4 text-sm font-medium shadow-none", onClick: () => nav.onCreateProject?.(), "data-testid": "taskboard-project-list-create-button", children: [_jsx("span", { className: "truncate", children: "Create new project" }), _jsx(Plus, { className: "h-4 w-4", strokeWidth: 1.5 })] }), _jsx(SearchInput, { value: search, onChange: setSearch, placeholder: "Search projects...", size: "md", searchIconPosition: "left", testId: "taskboard-project-list-search" }), _jsx("div", { className: "border-border-default border-b", children: _jsx(SimpleTabs, { tabs: filterTabs, activeTab: filterMode === "archived" ? 1 : 0, setActiveTab: (index) => setFilterMode(index === 1 ? "archived" : "active"), hideContent: true, className: "w-full gap-0", tabClassName: "w-1/2 px-0 pt-3 pb-[9px] text-xs font-medium", underlineTarget: "label", testId: "taskboard-project-list-filter-tabs" }) }), nav.isAdministrator ? (_jsxs("div", { className: "border-border-default border-b pb-3", children: [_jsxs("label", { className: "text-neutral-grey-50 flex items-center gap-2 text-
|
|
83
|
+
return (_jsxs("div", { className: "flex h-full min-h-0 flex-col bg-white", "data-testid": "taskboard-project-list-sidebar", children: [_jsxs("div", { className: "flex shrink-0 flex-col gap-3 px-4 pt-3", children: [_jsxs(Button, { variant: "outline", size: "sm", className: "h-10 w-full justify-center gap-3 rounded-md bg-white px-4 text-sm font-medium shadow-none", onClick: () => nav.onCreateProject?.(), "data-testid": "taskboard-project-list-create-button", children: [_jsx("span", { className: "truncate", children: "Create new project" }), _jsx(Plus, { className: "h-4 w-4", strokeWidth: 1.5 })] }), _jsx(SearchInput, { value: search, onChange: setSearch, placeholder: "Search projects...", size: "md", searchIconPosition: "left", testId: "taskboard-project-list-search" }), _jsx("div", { className: "border-border-default border-b", children: _jsx(SimpleTabs, { tabs: filterTabs, activeTab: filterMode === "archived" ? 1 : 0, setActiveTab: (index) => setFilterMode(index === 1 ? "archived" : "active"), hideContent: true, className: "w-full gap-0", tabClassName: "w-1/2 px-0 pt-3 pb-[9px] text-xs font-medium", underlineTarget: "label", testId: "taskboard-project-list-filter-tabs" }) }), nav.isAdministrator ? (_jsxs("div", { className: "border-border-default border-b pb-3", children: [_jsxs("label", { className: "text-neutral-grey-50 hover:text-neutral-grey-100 flex min-h-8 cursor-pointer items-center justify-end gap-2 rounded text-right text-[12px] font-medium transition-colors", children: [_jsx("span", { className: "truncate select-none", children: "Show all projects" }), _jsx(Switch, { checked: nav.showAllProjects, onCheckedChange: (checked) => nav.onToggleShowAllProjects?.(checked === true), "aria-label": "Show all projects", "data-testid": "taskboard-show-all-projects-checkbox", className: "data-[state=checked]:bg-neutral-grey-100 data-[state=unchecked]:bg-neutral-grey-15 h-[20px] w-[38px] p-[2px] shadow-none [&_[data-slot=switch-thumb]]:size-[16px] [&_[data-slot=switch-thumb]]:data-[state=checked]:translate-x-[18px]" })] }), _jsx("p", { className: "text-neutral-grey-50 mt-1 text-right text-[10px]", "data-testid": "taskboard-show-all-projects-hint", children: "Admin feature: includes projects across all users." })] })) : null] }), _jsx("div", { className: "min-h-0 flex-1 overflow-y-auto px-3 pt-6 pb-3", children: nav.isProjectsLoading && nav.projectOptions.length === 0 ? (_jsxs("div", { className: "text-neutral-grey-50 flex items-center justify-center gap-2 rounded-md border border-dashed px-3 py-8 text-xs", "data-testid": "taskboard-project-list-loading", children: [_jsx(Loader2, { className: "h-3.5 w-3.5 animate-spin" }), "Loading projects..."] })) : projects.length === 0 ? (_jsx("div", { className: "text-neutral-grey-50 rounded-md border border-dashed px-3 py-8 text-center text-xs", children: emptyMessage })) : (_jsx("div", { className: "flex flex-col gap-1", children: projects.map((project) => {
|
|
83
84
|
const selected = project.projectId === nav.selectedProjectId;
|
|
84
85
|
const depth = Math.max(0, Math.min(project.depth ?? (project.parentProjectId ? 1 : 0), 6));
|
|
85
86
|
const ProjectIcon = selected ? FolderOpen : Folder;
|
|
86
87
|
const counts = project.overview?.taskCounts;
|
|
87
88
|
return (_jsxs("button", { type: "button", className: cn("group flex min-h-9 w-full items-center gap-2 rounded-md px-3 py-2 text-left transition-colors", selected
|
|
88
89
|
? "bg-neutral-grey-5 text-neutral-grey-100"
|
|
89
|
-
: "text-neutral-grey-100 hover:bg-neutral-grey-5/70"), style: { paddingLeft: `${12 + depth * 20}px` }, onClick: () => nav.onSelectProject?.(project.projectId), "data-testid": `taskboard-project-list-option-${project.projectId}`, children: [_jsx("span", { className: "flex h-4 w-4 shrink-0 items-center justify-center", children: _jsx(ProjectIcon, { className:
|
|
90
|
-
? "text-neutral-grey-100"
|
|
91
|
-
: "text-neutral-grey-50 group-hover:text-neutral-grey-100"), strokeWidth: 1.5 }) }), _jsx("span", { className: cn("min-w-0 flex-1 truncate", "text-xs font-medium"), children: project.title }), _jsx(ProjectProgressIndicator, { done: counts?.done, total: counts?.total })] }, project.projectId));
|
|
90
|
+
: "text-neutral-grey-100 hover:bg-neutral-grey-5/70"), style: { paddingLeft: `${12 + depth * 20}px` }, onClick: () => nav.onSelectProject?.(project.projectId), "data-testid": `taskboard-project-list-option-${project.projectId}`, children: [_jsx("span", { className: "flex h-4 w-4 shrink-0 items-center justify-center", children: _jsx(ProjectIcon, { className: "text-neutral-grey-100 h-4 w-4 shrink-0", strokeWidth: 1.5 }) }), _jsx("span", { className: cn("min-w-0 flex-1 truncate", "text-xs font-medium"), children: project.title }), _jsx(ProjectProgressIndicator, { done: counts?.done, total: counts?.total })] }, project.projectId));
|
|
92
91
|
}) })) })] }));
|
|
93
92
|
}
|
|
94
93
|
//# sourceMappingURL=TaskBoardProjectListSidebar.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TaskBoardProjectListSidebar.js","sourceRoot":"","sources":["../../../src/task-board/components/TaskBoardProjectListSidebar.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,oBAAoB,EAAE,MAAM,OAAO,CAAC;AAChE,OAAO,EACL,KAAK,EACL,MAAM,EACN,UAAU,EACV,OAAO,EACP,IAAI,GACL,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAC;AACrC,OAAO,EAAE,UAAU,EAAY,MAAM,4BAA4B,CAAC;AAClE,OAAO,EACL,uBAAuB,EACvB,qBAAqB,GAEtB,MAAM,sBAAsB,CAAC;AAI9B,SAAS,wBAAwB,CAAC,EAChC,IAAI,EACJ,KAAK,GAIN;IACC,IAAI,CAAC,KAAK,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;QACzB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CACvB,CAAC,EACD,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,GAAG,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,CACvD,CAAC;IAEF,IAAI,QAAQ,IAAI,GAAG,EAAE,CAAC;QACpB,OAAO,CACL,eACE,SAAS,EAAC,4FAA4F,EACtG,KAAK,EAAC,WAAW,gBACN,WAAW,YAEtB,KAAC,KAAK,IAAC,SAAS,EAAC,UAAU,EAAC,WAAW,EAAE,CAAC,GAAI,GACzC,CACR,CAAC;IACJ,CAAC;IAED,OAAO,CACL,gBAAM,SAAS,EAAC,gEAAgE,aAC7E,QAAQ,SACJ,CACR,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,2BAA2B;IACzC,MAAM,GAAG,GAAG,oBAAoB,CAC9B,qBAAqB,EACrB,uBAAuB,EACvB,uBAAuB,CACxB,CAAC;IACF,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IACzC,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAoB,QAAQ,CAAC,CAAC;IAC1E,MAAM,UAAU,GAAU,OAAO,CAC/B,GAAG,EAAE,CAAC;QACJ;YACE,EAAE,EAAE,QAAQ;YACZ,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"TaskBoardProjectListSidebar.js","sourceRoot":"","sources":["../../../src/task-board/components/TaskBoardProjectListSidebar.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,20 +1,17 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { cn } from "../../lib/utils";
|
|
3
|
-
import { Loader2,
|
|
3
|
+
import { Loader2, Calendar, CheckCircle2, GitBranch } from "lucide-react";
|
|
4
4
|
import { getDisplayableAssignee } from "../assigneeDisplay";
|
|
5
5
|
import { Badge } from "../../components/ui/badge";
|
|
6
6
|
import { format } from "date-fns";
|
|
7
|
-
import {
|
|
7
|
+
import { useResolvedUser } from "../../editor/services/userResolution";
|
|
8
8
|
import { getTaskExecutionDisplayFromTask } from "../taskExecutionStatus";
|
|
9
9
|
import { TaskAssigneePicker } from "./TaskAssigneePicker";
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
};
|
|
16
|
-
const defaultHoverColor = "hover:border-neutral-grey-10/50";
|
|
17
|
-
const selectedColor = "border-neutral-grey-15 ring-neutral-grey-15";
|
|
10
|
+
import { TaskAssigneeBadge, taskAssigneePickerButtonClassName, } from "./TaskAssigneeBadge";
|
|
11
|
+
import { getTaskPriorityBadgeClass, getTaskPriorityLabel, } from "../taskPriority";
|
|
12
|
+
const defaultBorderColor = "border-neutral-grey-10";
|
|
13
|
+
const hoverBorderColor = "hover:border-neutral-grey-50";
|
|
14
|
+
const selectedColor = "border-highlight-100";
|
|
18
15
|
export function TaskCard(props) {
|
|
19
16
|
const { task, selected, onClick, dependencyTaskIds = [], isBlocked = false, showDoneCheckmark = false, projectId, canEditAssignee = false, onAssigneeChange, } = props;
|
|
20
17
|
const executionDisplay = getTaskExecutionDisplayFromTask({
|
|
@@ -22,23 +19,37 @@ export function TaskCard(props) {
|
|
|
22
19
|
executionState: task.executionState,
|
|
23
20
|
isBlocked,
|
|
24
21
|
});
|
|
25
|
-
const
|
|
26
|
-
|
|
27
|
-
|
|
22
|
+
const showExecutionBadge = !!executionDisplay &&
|
|
23
|
+
executionDisplay.label !== "Not started" &&
|
|
24
|
+
executionDisplay.label !== "Idle";
|
|
25
|
+
const priorityLabel = getTaskPriorityLabel(task.priority);
|
|
26
|
+
const priorityBadgeColor = getTaskPriorityBadgeClass(task.priority);
|
|
28
27
|
const displayTaskId = task.taskKey || task.taskId.slice(0, 8).toUpperCase();
|
|
29
28
|
const isPlanTask = String(task.taskType ?? "").toLowerCase() === "plan" ||
|
|
30
29
|
task.title === "Project Plan";
|
|
31
30
|
const isDecisionPointTask = String(task.taskType ?? "").toLowerCase() === "decisionpoint";
|
|
32
31
|
const assigneeValue = getDisplayableAssignee(task, { isPlanTask });
|
|
32
|
+
const shouldResolveUserAssignee = task.assigneeType === "user" &&
|
|
33
|
+
!!task.assigneeId &&
|
|
34
|
+
assigneeValue !== "Unassigned";
|
|
35
|
+
const resolvedAssignee = useResolvedUser(shouldResolveUserAssignee ? task.assigneeId : null, { fullName: shouldResolveUserAssignee ? assigneeValue : null });
|
|
36
|
+
const userAssigneeLabel = shouldResolveUserAssignee
|
|
37
|
+
? resolvedAssignee.displayName
|
|
38
|
+
: assigneeValue;
|
|
33
39
|
const canEditInlineAssignee = !!projectId && !!onAssigneeChange && canEditAssignee && !isPlanTask;
|
|
40
|
+
const showTopMeta = showExecutionBadge ||
|
|
41
|
+
!!priorityLabel ||
|
|
42
|
+
isDecisionPointTask ||
|
|
43
|
+
(showDoneCheckmark && task.status === "Done");
|
|
44
|
+
const priorityBadge = priorityLabel ? (_jsx(Badge, { variant: "outline", size: "sm", className: cn("font-medium", priorityBadgeColor), children: priorityLabel })) : null;
|
|
34
45
|
const handleKeyDown = (event) => {
|
|
35
46
|
if (event.key !== "Enter" && event.key !== " ")
|
|
36
47
|
return;
|
|
37
48
|
event.preventDefault();
|
|
38
49
|
event.currentTarget.click();
|
|
39
50
|
};
|
|
40
|
-
return (
|
|
51
|
+
return (_jsx("div", { role: "button", tabIndex: 0, onClick: onClick, onKeyDown: handleKeyDown, className: cn("group relative w-full overflow-hidden rounded-[12px] border bg-white p-[12px] text-left transition-all", defaultBorderColor, hoverBorderColor, selected && selectedColor), children: _jsxs("div", { className: "flex flex-col gap-2", children: [showTopMeta && (_jsxs("div", { className: "flex min-h-5 items-center justify-between gap-2", children: [_jsx("div", { className: "flex min-w-0 items-center", children: showExecutionBadge && executionDisplay ? (_jsxs(Badge, { variant: executionDisplay.variant, size: "sm", className: cn("max-w-full font-medium", executionDisplay.className), title: executionDisplay.needsAttention
|
|
41
52
|
? "Assigned agent requires attention"
|
|
42
|
-
: undefined, children: [executionDisplay.showSpinner && (_jsx(Loader2, { className: "mr-1 h-2.5 w-2.5 animate-spin" })), executionDisplay.label] })) : null] })] })] }));
|
|
53
|
+
: undefined, children: [executionDisplay.showSpinner && (_jsx(Loader2, { className: "mr-1 h-2.5 w-2.5 animate-spin" })), _jsx("span", { className: "truncate", children: executionDisplay.label })] })) : (priorityBadge) }), _jsxs("div", { className: "flex shrink-0 items-center gap-1", children: [showExecutionBadge ? priorityBadge : null, isDecisionPointTask && (_jsx(GitBranch, { className: "text-feedback-blue h-4 w-4" })), showDoneCheckmark && task.status === "Done" && (_jsx(CheckCircle2, { className: "text-feedback-green h-4 w-4" }))] })] })), _jsx("div", { className: "text-neutral-grey-100 line-clamp-2 text-sm leading-snug font-medium", children: task.title }), dependencyTaskIds.length > 0 && (_jsxs("div", { className: "text-neutral-grey-50 line-clamp-1 text-[10px] font-medium", children: ["Depends on: ", dependencyTaskIds.join(", ")] })), _jsxs("div", { className: "mt-0.5 flex flex-wrap items-center gap-2", children: [isDecisionPointTask && (_jsx(Badge, { variant: "outline", size: "sm", className: "text-2xs border-feedback-blue bg-feedback-blue-light text-feedback-blue", children: "Decision Point" })), canEditInlineAssignee ? (_jsx("div", { className: "min-w-0 self-start", onClick: (event) => event.stopPropagation(), onMouseDown: (event) => event.stopPropagation(), children: _jsx(TaskAssigneePicker, { projectId: projectId, assigneeType: task.assigneeType ?? null, value: task.assigneeId ?? null, displayValue: task.assigneeDisplayName ?? task.assigneeId ?? null, onChange: onAssigneeChange, placeholder: "Assign user or agent", buttonClassName: taskAssigneePickerButtonClassName, buttonTestId: `taskboard-task-assignee-${task.taskId}`, showChevron: false, showAssigneeIcon: true }) })) : (_jsx(TaskAssigneeBadge, { assigneeType: task.assigneeType ?? null, label: userAssigneeLabel, labelClassName: "max-w-[160px]" })), task.dueDate && (_jsxs("div", { className: "text-neutral-grey-50 badge-pad-sm bg-neutral-grey-5 flex items-center gap-1 rounded-md text-xs font-medium", children: [_jsx(Calendar, { className: "h-3 w-3" }), _jsx("span", { children: format(new Date(task.dueDate), "MMM d") })] }))] }), _jsx("div", { className: "text-neutral-grey-50 text-[10px] font-medium tracking-widest", children: displayTaskId })] }) }));
|
|
43
54
|
}
|
|
44
55
|
//# sourceMappingURL=TaskCard.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TaskCard.js","sourceRoot":"","sources":["../../../src/task-board/components/TaskCard.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAC;AACrC,OAAO,
|
|
1
|
+
{"version":3,"file":"TaskCard.js","sourceRoot":"","sources":["../../../src/task-board/components/TaskCard.tsx"],"names":[],"mappings":"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"}
|
|
@@ -18,5 +18,6 @@ export declare function TaskDetailPanel(props: {
|
|
|
18
18
|
variant?: "panel" | "dialog";
|
|
19
19
|
agentLaunch?: TaskDetailAgentLaunchAction;
|
|
20
20
|
collapsed?: boolean;
|
|
21
|
+
showExpandButton?: boolean;
|
|
21
22
|
onToggleCollapsed?: () => void;
|
|
22
23
|
}): import("react/jsx-runtime").JSX.Element;
|