@a5c-ai/genty-ui 5.1.1-staging.00ceebd28cf2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +94 -0
- package/dist/client/GatewayClient.d.ts +72 -0
- package/dist/client/GatewayClient.d.ts.map +1 -0
- package/dist/client/GatewayClient.js +239 -0
- package/dist/client/GatewayClient.js.map +1 -0
- package/dist/client/backoff.d.ts +6 -0
- package/dist/client/backoff.d.ts.map +1 -0
- package/dist/client/backoff.js +9 -0
- package/dist/client/backoff.js.map +1 -0
- package/dist/client/errors.d.ts +9 -0
- package/dist/client/errors.d.ts.map +1 -0
- package/dist/client/errors.js +19 -0
- package/dist/client/errors.js.map +1 -0
- package/dist/client/transports/ws-browser.d.ts +12 -0
- package/dist/client/transports/ws-browser.d.ts.map +1 -0
- package/dist/client/transports/ws-browser.js +24 -0
- package/dist/client/transports/ws-browser.js.map +1 -0
- package/dist/client/transports/ws-node.d.ts +2 -0
- package/dist/client/transports/ws-node.d.ts.map +1 -0
- package/dist/client/transports/ws-node.js +25 -0
- package/dist/client/transports/ws-node.js.map +1 -0
- package/dist/client/transports/ws-react-native.d.ts +2 -0
- package/dist/client/transports/ws-react-native.d.ts.map +1 -0
- package/dist/client/transports/ws-react-native.js +24 -0
- package/dist/client/transports/ws-react-native.js.map +1 -0
- package/dist/codegen/kotlin-types.d.ts +1 -0
- package/dist/codegen/kotlin-types.d.ts.map +1 -0
- package/dist/codegen/kotlin-types.js +236 -0
- package/dist/codegen/kotlin-types.js.map +1 -0
- package/dist/codegen/swift-types.d.ts +1 -0
- package/dist/codegen/swift-types.d.ts.map +1 -0
- package/dist/codegen/swift-types.js +298 -0
- package/dist/codegen/swift-types.js.map +1 -0
- package/dist/components/Agent/AgentAppearanceEditor.d.ts +23 -0
- package/dist/components/Agent/AgentAppearanceEditor.d.ts.map +1 -0
- package/dist/components/Agent/AgentAppearanceEditor.js +10 -0
- package/dist/components/Agent/AgentAppearanceEditor.js.map +1 -0
- package/dist/components/Agent/AgentCreateWizard.d.ts +26 -0
- package/dist/components/Agent/AgentCreateWizard.d.ts.map +1 -0
- package/dist/components/Agent/AgentCreateWizard.js +136 -0
- package/dist/components/Agent/AgentCreateWizard.js.map +1 -0
- package/dist/components/Agent/AgentDirectory.d.ts +8 -0
- package/dist/components/Agent/AgentDirectory.d.ts.map +1 -0
- package/dist/components/Agent/AgentDirectory.js +19 -0
- package/dist/components/Agent/AgentDirectory.js.map +1 -0
- package/dist/components/Agent/AgentPersonaEditor.d.ts +23 -0
- package/dist/components/Agent/AgentPersonaEditor.d.ts.map +1 -0
- package/dist/components/Agent/AgentPersonaEditor.js +29 -0
- package/dist/components/Agent/AgentPersonaEditor.js.map +1 -0
- package/dist/components/Agent/AgentProfileCard.d.ts +39 -0
- package/dist/components/Agent/AgentProfileCard.d.ts.map +1 -0
- package/dist/components/Agent/AgentProfileCard.js +27 -0
- package/dist/components/Agent/AgentProfileCard.js.map +1 -0
- package/dist/components/Agent/AgentProfilePage.d.ts +68 -0
- package/dist/components/Agent/AgentProfilePage.d.ts.map +1 -0
- package/dist/components/Agent/AgentProfilePage.js +31 -0
- package/dist/components/Agent/AgentProfilePage.js.map +1 -0
- package/dist/components/Agent/AgentSoulEditor.d.ts +5 -0
- package/dist/components/Agent/AgentSoulEditor.d.ts.map +1 -0
- package/dist/components/Agent/AgentSoulEditor.js +5 -0
- package/dist/components/Agent/AgentSoulEditor.js.map +1 -0
- package/dist/components/Agent/AgentVoiceEditor.d.ts +17 -0
- package/dist/components/Agent/AgentVoiceEditor.d.ts.map +1 -0
- package/dist/components/Agent/AgentVoiceEditor.js +29 -0
- package/dist/components/Agent/AgentVoiceEditor.js.map +1 -0
- package/dist/components/Agent/ApprovalActions.d.ts +5 -0
- package/dist/components/Agent/ApprovalActions.d.ts.map +1 -0
- package/dist/components/Agent/ApprovalActions.js +55 -0
- package/dist/components/Agent/ApprovalActions.js.map +1 -0
- package/dist/components/Agent/DispatchButton.d.ts +37 -0
- package/dist/components/Agent/DispatchButton.d.ts.map +1 -0
- package/dist/components/Agent/DispatchButton.js +111 -0
- package/dist/components/Agent/DispatchButton.js.map +1 -0
- package/dist/components/Agent/index.d.ts +20 -0
- package/dist/components/Agent/index.d.ts.map +1 -0
- package/dist/components/Agent/index.js +11 -0
- package/dist/components/Agent/index.js.map +1 -0
- package/dist/components/AgentPicker.d.ts +5 -0
- package/dist/components/AgentPicker.d.ts.map +1 -0
- package/dist/components/AgentPicker.js +7 -0
- package/dist/components/AgentPicker.js.map +1 -0
- package/dist/components/Chat/ChatMessages.d.ts +32 -0
- package/dist/components/Chat/ChatMessages.d.ts.map +1 -0
- package/dist/components/Chat/ChatMessages.js +146 -0
- package/dist/components/Chat/ChatMessages.js.map +1 -0
- package/dist/components/Chat/chatStyles.d.ts +41 -0
- package/dist/components/Chat/chatStyles.d.ts.map +1 -0
- package/dist/components/Chat/chatStyles.js +181 -0
- package/dist/components/Chat/chatStyles.js.map +1 -0
- package/dist/components/Chat/index.d.ts +2 -0
- package/dist/components/Chat/index.d.ts.map +1 -0
- package/dist/components/Chat/index.js +3 -0
- package/dist/components/Chat/index.js.map +1 -0
- package/dist/components/ConnectionBanner.d.ts +4 -0
- package/dist/components/ConnectionBanner.d.ts.map +1 -0
- package/dist/components/ConnectionBanner.js +9 -0
- package/dist/components/ConnectionBanner.js.map +1 -0
- package/dist/components/CostMeter.d.ts +3 -0
- package/dist/components/CostMeter.d.ts.map +1 -0
- package/dist/components/CostMeter.js +7 -0
- package/dist/components/CostMeter.js.map +1 -0
- package/dist/components/EventList.d.ts +9 -0
- package/dist/components/EventList.d.ts.map +1 -0
- package/dist/components/EventList.js +21 -0
- package/dist/components/EventList.js.map +1 -0
- package/dist/components/HookApprovalPrompt.d.ts +10 -0
- package/dist/components/HookApprovalPrompt.d.ts.map +1 -0
- package/dist/components/HookApprovalPrompt.js +20 -0
- package/dist/components/HookApprovalPrompt.js.map +1 -0
- package/dist/components/InputBar.d.ts +5 -0
- package/dist/components/InputBar.d.ts.map +1 -0
- package/dist/components/InputBar.js +9 -0
- package/dist/components/InputBar.js.map +1 -0
- package/dist/components/Kanban/KanbanBoard.d.ts +14 -0
- package/dist/components/Kanban/KanbanBoard.d.ts.map +1 -0
- package/dist/components/Kanban/KanbanBoard.js +183 -0
- package/dist/components/Kanban/KanbanBoard.js.map +1 -0
- package/dist/components/Kanban/KanbanCard.d.ts +13 -0
- package/dist/components/Kanban/KanbanCard.d.ts.map +1 -0
- package/dist/components/Kanban/KanbanCard.js +75 -0
- package/dist/components/Kanban/KanbanCard.js.map +1 -0
- package/dist/components/Kanban/KanbanColumn.d.ts +25 -0
- package/dist/components/Kanban/KanbanColumn.d.ts.map +1 -0
- package/dist/components/Kanban/KanbanColumn.js +130 -0
- package/dist/components/Kanban/KanbanColumn.js.map +1 -0
- package/dist/components/Kanban/KanbanFilters.d.ts +16 -0
- package/dist/components/Kanban/KanbanFilters.d.ts.map +1 -0
- package/dist/components/Kanban/KanbanFilters.js +45 -0
- package/dist/components/Kanban/KanbanFilters.js.map +1 -0
- package/dist/components/Kanban/index.d.ts +5 -0
- package/dist/components/Kanban/index.d.ts.map +1 -0
- package/dist/components/Kanban/index.js +6 -0
- package/dist/components/Kanban/index.js.map +1 -0
- package/dist/components/Kanban/kanbanHelpers.d.ts +76 -0
- package/dist/components/Kanban/kanbanHelpers.d.ts.map +1 -0
- package/dist/components/Kanban/kanbanHelpers.js +160 -0
- package/dist/components/Kanban/kanbanHelpers.js.map +1 -0
- package/dist/components/Memory/MemoryOntologyEditor.d.ts +27 -0
- package/dist/components/Memory/MemoryOntologyEditor.d.ts.map +1 -0
- package/dist/components/Memory/MemoryOntologyEditor.js +225 -0
- package/dist/components/Memory/MemoryOntologyEditor.js.map +1 -0
- package/dist/components/Memory/MemorySearchForm.d.ts +46 -0
- package/dist/components/Memory/MemorySearchForm.d.ts.map +1 -0
- package/dist/components/Memory/MemorySearchForm.js +194 -0
- package/dist/components/Memory/MemorySearchForm.js.map +1 -0
- package/dist/components/Memory/index.d.ts +4 -0
- package/dist/components/Memory/index.d.ts.map +1 -0
- package/dist/components/Memory/index.js +3 -0
- package/dist/components/Memory/index.js.map +1 -0
- package/dist/components/ModelPicker.d.ts +5 -0
- package/dist/components/ModelPicker.d.ts.map +1 -0
- package/dist/components/ModelPicker.js +7 -0
- package/dist/components/ModelPicker.js.map +1 -0
- package/dist/components/Observability/ActivityFeed.d.ts +13 -0
- package/dist/components/Observability/ActivityFeed.d.ts.map +1 -0
- package/dist/components/Observability/ActivityFeed.js +155 -0
- package/dist/components/Observability/ActivityFeed.js.map +1 -0
- package/dist/components/Observability/ToolInspector.d.ts +22 -0
- package/dist/components/Observability/ToolInspector.d.ts.map +1 -0
- package/dist/components/Observability/ToolInspector.js +166 -0
- package/dist/components/Observability/ToolInspector.js.map +1 -0
- package/dist/components/Observability/index.d.ts +4 -0
- package/dist/components/Observability/index.d.ts.map +1 -0
- package/dist/components/Observability/index.js +3 -0
- package/dist/components/Observability/index.js.map +1 -0
- package/dist/components/Rendering/EffectTreeView.d.ts +20 -0
- package/dist/components/Rendering/EffectTreeView.d.ts.map +1 -0
- package/dist/components/Rendering/EffectTreeView.js +123 -0
- package/dist/components/Rendering/EffectTreeView.js.map +1 -0
- package/dist/components/Rendering/MessageTypeRenderer.d.ts +4 -0
- package/dist/components/Rendering/MessageTypeRenderer.d.ts.map +1 -0
- package/dist/components/Rendering/MessageTypeRenderer.js +108 -0
- package/dist/components/Rendering/MessageTypeRenderer.js.map +1 -0
- package/dist/components/Rendering/ProgressStatusLine.d.ts +9 -0
- package/dist/components/Rendering/ProgressStatusLine.d.ts.map +1 -0
- package/dist/components/Rendering/ProgressStatusLine.js +57 -0
- package/dist/components/Rendering/ProgressStatusLine.js.map +1 -0
- package/dist/components/Rendering/StreamingOutputPanel.d.ts +20 -0
- package/dist/components/Rendering/StreamingOutputPanel.d.ts.map +1 -0
- package/dist/components/Rendering/StreamingOutputPanel.js +75 -0
- package/dist/components/Rendering/StreamingOutputPanel.js.map +1 -0
- package/dist/components/Rendering/StructuredDiffView.d.ts +13 -0
- package/dist/components/Rendering/StructuredDiffView.d.ts.map +1 -0
- package/dist/components/Rendering/StructuredDiffView.js +106 -0
- package/dist/components/Rendering/StructuredDiffView.js.map +1 -0
- package/dist/components/Rendering/SubagentDrillDown.d.ts +46 -0
- package/dist/components/Rendering/SubagentDrillDown.d.ts.map +1 -0
- package/dist/components/Rendering/SubagentDrillDown.js +101 -0
- package/dist/components/Rendering/SubagentDrillDown.js.map +1 -0
- package/dist/components/Rendering/index.d.ts +12 -0
- package/dist/components/Rendering/index.d.ts.map +1 -0
- package/dist/components/Rendering/index.js +10 -0
- package/dist/components/Rendering/index.js.map +1 -0
- package/dist/components/RunStatusBadge.d.ts +3 -0
- package/dist/components/RunStatusBadge.d.ts.map +1 -0
- package/dist/components/RunStatusBadge.js +7 -0
- package/dist/components/RunStatusBadge.js.map +1 -0
- package/dist/components/Session/SessionCost.d.ts +22 -0
- package/dist/components/Session/SessionCost.d.ts.map +1 -0
- package/dist/components/Session/SessionCost.js +168 -0
- package/dist/components/Session/SessionCost.js.map +1 -0
- package/dist/components/Session/SessionShell.d.ts +63 -0
- package/dist/components/Session/SessionShell.d.ts.map +1 -0
- package/dist/components/Session/SessionShell.js +150 -0
- package/dist/components/Session/SessionShell.js.map +1 -0
- package/dist/components/Session/SessionTabs.d.ts +6 -0
- package/dist/components/Session/SessionTabs.d.ts.map +1 -0
- package/dist/components/Session/SessionTabs.js +7 -0
- package/dist/components/Session/SessionTabs.js.map +1 -0
- package/dist/components/Session/index.d.ts +7 -0
- package/dist/components/Session/index.d.ts.map +1 -0
- package/dist/components/Session/index.js +5 -0
- package/dist/components/Session/index.js.map +1 -0
- package/dist/components/Session/sessionUtils.d.ts +31 -0
- package/dist/components/Session/sessionUtils.d.ts.map +1 -0
- package/dist/components/Session/sessionUtils.js +90 -0
- package/dist/components/Session/sessionUtils.js.map +1 -0
- package/dist/components/SessionListItem.d.ts +5 -0
- package/dist/components/SessionListItem.d.ts.map +1 -0
- package/dist/components/SessionListItem.js +8 -0
- package/dist/components/SessionListItem.js.map +1 -0
- package/dist/components/Workspace/WorkspaceAssociations.d.ts +10 -0
- package/dist/components/Workspace/WorkspaceAssociations.d.ts.map +1 -0
- package/dist/components/Workspace/WorkspaceAssociations.js +72 -0
- package/dist/components/Workspace/WorkspaceAssociations.js.map +1 -0
- package/dist/components/Workspace/WorkspaceCodespace.d.ts +18 -0
- package/dist/components/Workspace/WorkspaceCodespace.d.ts.map +1 -0
- package/dist/components/Workspace/WorkspaceCodespace.js +91 -0
- package/dist/components/Workspace/WorkspaceCodespace.js.map +1 -0
- package/dist/components/Workspace/WorkspacePanel.d.ts +89 -0
- package/dist/components/Workspace/WorkspacePanel.d.ts.map +1 -0
- package/dist/components/Workspace/WorkspacePanel.js +451 -0
- package/dist/components/Workspace/WorkspacePanel.js.map +1 -0
- package/dist/components/Workspace/index.d.ts +6 -0
- package/dist/components/Workspace/index.d.ts.map +1 -0
- package/dist/components/Workspace/index.js +4 -0
- package/dist/components/Workspace/index.js.map +1 -0
- package/dist/components/event-cards/TextDeltaBubble.d.ts +3 -0
- package/dist/components/event-cards/TextDeltaBubble.d.ts.map +1 -0
- package/dist/components/event-cards/TextDeltaBubble.js +7 -0
- package/dist/components/event-cards/TextDeltaBubble.js.map +1 -0
- package/dist/components/event-cards/ThinkingBubble.d.ts +3 -0
- package/dist/components/event-cards/ThinkingBubble.d.ts.map +1 -0
- package/dist/components/event-cards/ThinkingBubble.js +7 -0
- package/dist/components/event-cards/ThinkingBubble.js.map +1 -0
- package/dist/components/event-cards/ToolCallCard.d.ts +7 -0
- package/dist/components/event-cards/ToolCallCard.d.ts.map +1 -0
- package/dist/components/event-cards/ToolCallCard.js +27 -0
- package/dist/components/event-cards/ToolCallCard.js.map +1 -0
- package/dist/components/event-cards/ToolResultCard.d.ts +7 -0
- package/dist/components/event-cards/ToolResultCard.d.ts.map +1 -0
- package/dist/components/event-cards/ToolResultCard.js +20 -0
- package/dist/components/event-cards/ToolResultCard.js.map +1 -0
- package/dist/components/event-cards/builtins.d.ts +1 -0
- package/dist/components/event-cards/builtins.d.ts.map +1 -0
- package/dist/components/event-cards/builtins.js +31 -0
- package/dist/components/event-cards/builtins.js.map +1 -0
- package/dist/components/event-cards/index.d.ts +6 -0
- package/dist/components/event-cards/index.d.ts.map +1 -0
- package/dist/components/event-cards/index.js +6 -0
- package/dist/components/event-cards/index.js.map +1 -0
- package/dist/components/event-cards/registry.d.ts +24 -0
- package/dist/components/event-cards/registry.d.ts.map +1 -0
- package/dist/components/event-cards/registry.js +24 -0
- package/dist/components/event-cards/registry.js.map +1 -0
- package/dist/components/event-cards/renderers/bash.d.ts +2 -0
- package/dist/components/event-cards/renderers/bash.d.ts.map +1 -0
- package/dist/components/event-cards/renderers/bash.js +8 -0
- package/dist/components/event-cards/renderers/bash.js.map +1 -0
- package/dist/components/event-cards/renderers/edit.d.ts +2 -0
- package/dist/components/event-cards/renderers/edit.d.ts.map +1 -0
- package/dist/components/event-cards/renderers/edit.js +8 -0
- package/dist/components/event-cards/renderers/edit.js.map +1 -0
- package/dist/components/event-cards/renderers/generic.d.ts +2 -0
- package/dist/components/event-cards/renderers/generic.d.ts.map +1 -0
- package/dist/components/event-cards/renderers/generic.js +33 -0
- package/dist/components/event-cards/renderers/generic.js.map +1 -0
- package/dist/components/event-cards/renderers/glob.d.ts +2 -0
- package/dist/components/event-cards/renderers/glob.d.ts.map +1 -0
- package/dist/components/event-cards/renderers/glob.js +8 -0
- package/dist/components/event-cards/renderers/glob.js.map +1 -0
- package/dist/components/event-cards/renderers/grep.d.ts +2 -0
- package/dist/components/event-cards/renderers/grep.d.ts.map +1 -0
- package/dist/components/event-cards/renderers/grep.js +8 -0
- package/dist/components/event-cards/renderers/grep.js.map +1 -0
- package/dist/components/event-cards/renderers/read.d.ts +2 -0
- package/dist/components/event-cards/renderers/read.d.ts.map +1 -0
- package/dist/components/event-cards/renderers/read.js +8 -0
- package/dist/components/event-cards/renderers/read.js.map +1 -0
- package/dist/components/event-cards/renderers/web-fetch.d.ts +2 -0
- package/dist/components/event-cards/renderers/web-fetch.d.ts.map +1 -0
- package/dist/components/event-cards/renderers/web-fetch.js +8 -0
- package/dist/components/event-cards/renderers/web-fetch.js.map +1 -0
- package/dist/components/event-cards/renderers/web-search.d.ts +2 -0
- package/dist/components/event-cards/renderers/web-search.d.ts.map +1 -0
- package/dist/components/event-cards/renderers/web-search.js +8 -0
- package/dist/components/event-cards/renderers/web-search.js.map +1 -0
- package/dist/components/event-cards/renderers/write.d.ts +2 -0
- package/dist/components/event-cards/renderers/write.d.ts.map +1 -0
- package/dist/components/event-cards/renderers/write.js +8 -0
- package/dist/components/event-cards/renderers/write.js.map +1 -0
- package/dist/components/primitives/Button.d.ts +5 -0
- package/dist/components/primitives/Button.d.ts.map +1 -0
- package/dist/components/primitives/Button.js +19 -0
- package/dist/components/primitives/Button.js.map +1 -0
- package/dist/components/primitives/Card.d.ts +2 -0
- package/dist/components/primitives/Card.d.ts.map +1 -0
- package/dist/components/primitives/Card.js +22 -0
- package/dist/components/primitives/Card.js.map +1 -0
- package/dist/components/primitives/CommandPalette.d.ts +21 -0
- package/dist/components/primitives/CommandPalette.d.ts.map +1 -0
- package/dist/components/primitives/CommandPalette.js +229 -0
- package/dist/components/primitives/CommandPalette.js.map +1 -0
- package/dist/components/primitives/ConfirmDialog.d.ts +19 -0
- package/dist/components/primitives/ConfirmDialog.d.ts.map +1 -0
- package/dist/components/primitives/ConfirmDialog.js +78 -0
- package/dist/components/primitives/ConfirmDialog.js.map +1 -0
- package/dist/components/primitives/NotificationBell.d.ts +5 -0
- package/dist/components/primitives/NotificationBell.d.ts.map +1 -0
- package/dist/components/primitives/NotificationBell.js +202 -0
- package/dist/components/primitives/NotificationBell.js.map +1 -0
- package/dist/components/primitives/Pagination.d.ts +14 -0
- package/dist/components/primitives/Pagination.d.ts.map +1 -0
- package/dist/components/primitives/Pagination.js +46 -0
- package/dist/components/primitives/Pagination.js.map +1 -0
- package/dist/components/primitives/ScrollContainer.d.ts +2 -0
- package/dist/components/primitives/ScrollContainer.d.ts.map +1 -0
- package/dist/components/primitives/ScrollContainer.js +17 -0
- package/dist/components/primitives/ScrollContainer.js.map +1 -0
- package/dist/components/primitives/Text.d.ts +2 -0
- package/dist/components/primitives/Text.d.ts.map +1 -0
- package/dist/components/primitives/Text.js +14 -0
- package/dist/components/primitives/Text.js.map +1 -0
- package/dist/components/primitives/index.d.ts +13 -0
- package/dist/components/primitives/index.d.ts.map +1 -0
- package/dist/components/primitives/index.js +9 -0
- package/dist/components/primitives/index.js.map +1 -0
- package/dist/components/primitives/theme.d.ts +8 -0
- package/dist/components/primitives/theme.d.ts.map +1 -0
- package/dist/components/primitives/theme.js +10 -0
- package/dist/components/primitives/theme.js.map +1 -0
- package/dist/components/session-flow/SessionFlowView.d.ts +9 -0
- package/dist/components/session-flow/SessionFlowView.d.ts.map +1 -0
- package/dist/components/session-flow/SessionFlowView.js +228 -0
- package/dist/components/session-flow/SessionFlowView.js.map +1 -0
- package/dist/gateway.d.ts +8 -0
- package/dist/gateway.d.ts.map +1 -0
- package/dist/gateway.js +8 -0
- package/dist/gateway.js.map +1 -0
- package/dist/hooks/GatewayProvider.d.ts +10 -0
- package/dist/hooks/GatewayProvider.d.ts.map +1 -0
- package/dist/hooks/GatewayProvider.js +84 -0
- package/dist/hooks/GatewayProvider.js.map +1 -0
- package/dist/hooks/useAgents.d.ts +1 -0
- package/dist/hooks/useAgents.d.ts.map +1 -0
- package/dist/hooks/useAgents.js +7 -0
- package/dist/hooks/useAgents.js.map +1 -0
- package/dist/hooks/useConnection.d.ts +1 -0
- package/dist/hooks/useConnection.d.ts.map +1 -0
- package/dist/hooks/useConnection.js +7 -0
- package/dist/hooks/useConnection.js.map +1 -0
- package/dist/hooks/useCostTotals.d.ts +3 -0
- package/dist/hooks/useCostTotals.d.ts.map +1 -0
- package/dist/hooks/useCostTotals.js +8 -0
- package/dist/hooks/useCostTotals.js.map +1 -0
- package/dist/hooks/useGateway.d.ts +4 -0
- package/dist/hooks/useGateway.d.ts.map +1 -0
- package/dist/hooks/useGateway.js +11 -0
- package/dist/hooks/useGateway.js.map +1 -0
- package/dist/hooks/useHookRequests.d.ts +1 -0
- package/dist/hooks/useHookRequests.d.ts.map +1 -0
- package/dist/hooks/useHookRequests.js +9 -0
- package/dist/hooks/useHookRequests.js.map +1 -0
- package/dist/hooks/useRun.d.ts +1 -0
- package/dist/hooks/useRun.d.ts.map +1 -0
- package/dist/hooks/useRun.js +7 -0
- package/dist/hooks/useRun.js.map +1 -0
- package/dist/hooks/useRunEvents.d.ts +8 -0
- package/dist/hooks/useRunEvents.d.ts.map +1 -0
- package/dist/hooks/useRunEvents.js +8 -0
- package/dist/hooks/useRunEvents.js.map +1 -0
- package/dist/hooks/useSendSessionMessage.d.ts +6 -0
- package/dist/hooks/useSendSessionMessage.d.ts.map +1 -0
- package/dist/hooks/useSendSessionMessage.js +19 -0
- package/dist/hooks/useSendSessionMessage.js.map +1 -0
- package/dist/hooks/useSession.d.ts +1 -0
- package/dist/hooks/useSession.d.ts.map +1 -0
- package/dist/hooks/useSession.js +7 -0
- package/dist/hooks/useSession.js.map +1 -0
- package/dist/hooks/useSessions.d.ts +1 -0
- package/dist/hooks/useSessions.d.ts.map +1 -0
- package/dist/hooks/useSessions.js +8 -0
- package/dist/hooks/useSessions.js.map +1 -0
- package/dist/hooks/useStartSession.d.ts +10 -0
- package/dist/hooks/useStartSession.d.ts.map +1 -0
- package/dist/hooks/useStartSession.js +29 -0
- package/dist/hooks/useStartSession.js.map +1 -0
- package/dist/hooks/useStopRun.d.ts +1 -0
- package/dist/hooks/useStopRun.d.ts.map +1 -0
- package/dist/hooks/useStopRun.js +11 -0
- package/dist/hooks/useStopRun.js.map +1 -0
- package/dist/index.d.ts +49 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +46 -0
- package/dist/index.js.map +1 -0
- package/dist/protocol/v1.d.ts +111 -0
- package/dist/protocol/v1.d.ts.map +1 -0
- package/dist/protocol/v1.js +2 -0
- package/dist/protocol/v1.js.map +1 -0
- package/dist/screens/AgentsScreen.d.ts +4 -0
- package/dist/screens/AgentsScreen.d.ts.map +1 -0
- package/dist/screens/AgentsScreen.js +9 -0
- package/dist/screens/AgentsScreen.js.map +1 -0
- package/dist/screens/HookInboxScreen.d.ts +1 -0
- package/dist/screens/HookInboxScreen.d.ts.map +1 -0
- package/dist/screens/HookInboxScreen.js +19 -0
- package/dist/screens/HookInboxScreen.js.map +1 -0
- package/dist/screens/NewRunScreen.d.ts +6 -0
- package/dist/screens/NewRunScreen.d.ts.map +1 -0
- package/dist/screens/NewRunScreen.js +35 -0
- package/dist/screens/NewRunScreen.js.map +1 -0
- package/dist/screens/SessionDetailScreen.d.ts +3 -0
- package/dist/screens/SessionDetailScreen.d.ts.map +1 -0
- package/dist/screens/SessionDetailScreen.js +46 -0
- package/dist/screens/SessionDetailScreen.js.map +1 -0
- package/dist/screens/SessionListScreen.d.ts +3 -0
- package/dist/screens/SessionListScreen.d.ts.map +1 -0
- package/dist/screens/SessionListScreen.js +9 -0
- package/dist/screens/SessionListScreen.js.map +1 -0
- package/dist/screens/SettingsScreen.d.ts +1 -0
- package/dist/screens/SettingsScreen.d.ts.map +1 -0
- package/dist/screens/SettingsScreen.js +9 -0
- package/dist/screens/SettingsScreen.js.map +1 -0
- package/dist/session-flow/adapters.d.ts +36 -0
- package/dist/session-flow/adapters.d.ts.map +1 -0
- package/dist/session-flow/adapters.js +362 -0
- package/dist/session-flow/adapters.js.map +1 -0
- package/dist/session-flow/cost.d.ts +2 -0
- package/dist/session-flow/cost.d.ts.map +1 -0
- package/dist/session-flow/cost.js +30 -0
- package/dist/session-flow/cost.js.map +1 -0
- package/dist/session-flow/file-attention.d.ts +3 -0
- package/dist/session-flow/file-attention.d.ts.map +1 -0
- package/dist/session-flow/file-attention.js +43 -0
- package/dist/session-flow/file-attention.js.map +1 -0
- package/dist/session-flow/model.d.ts +6 -0
- package/dist/session-flow/model.d.ts.map +1 -0
- package/dist/session-flow/model.js +110 -0
- package/dist/session-flow/model.js.map +1 -0
- package/dist/session-flow/native.d.ts +3 -0
- package/dist/session-flow/native.d.ts.map +1 -0
- package/dist/session-flow/native.js +185 -0
- package/dist/session-flow/native.js.map +1 -0
- package/dist/session-flow/projector.d.ts +8 -0
- package/dist/session-flow/projector.d.ts.map +1 -0
- package/dist/session-flow/projector.js +392 -0
- package/dist/session-flow/projector.js.map +1 -0
- package/dist/session-flow/types.d.ts +87 -0
- package/dist/session-flow/types.d.ts.map +1 -0
- package/dist/session-flow/types.js +2 -0
- package/dist/session-flow/types.js.map +1 -0
- package/dist/session-flow/utils.d.ts +11 -0
- package/dist/session-flow/utils.d.ts.map +1 -0
- package/dist/session-flow/utils.js +118 -0
- package/dist/session-flow/utils.js.map +1 -0
- package/dist/session-flow.d.ts +7 -0
- package/dist/session-flow.d.ts.map +1 -0
- package/dist/session-flow.js +6 -0
- package/dist/session-flow.js.map +1 -0
- package/dist/store/index.d.ts +72 -0
- package/dist/store/index.d.ts.map +1 -0
- package/dist/store/index.js +145 -0
- package/dist/store/index.js.map +1 -0
- package/dist/store/selectors.d.ts +15 -0
- package/dist/store/selectors.d.ts.map +1 -0
- package/dist/store/selectors.js +72 -0
- package/dist/store/selectors.js.map +1 -0
- package/dist/store/slices/agents.d.ts +2 -0
- package/dist/store/slices/agents.d.ts.map +1 -0
- package/dist/store/slices/agents.js +4 -0
- package/dist/store/slices/agents.js.map +1 -0
- package/dist/store/slices/connection.d.ts +2 -0
- package/dist/store/slices/connection.d.ts.map +1 -0
- package/dist/store/slices/connection.js +4 -0
- package/dist/store/slices/connection.js.map +1 -0
- package/dist/store/slices/events.d.ts +2 -0
- package/dist/store/slices/events.d.ts.map +1 -0
- package/dist/store/slices/events.js +4 -0
- package/dist/store/slices/events.js.map +1 -0
- package/dist/store/slices/hooks.d.ts +2 -0
- package/dist/store/slices/hooks.d.ts.map +1 -0
- package/dist/store/slices/hooks.js +4 -0
- package/dist/store/slices/hooks.js.map +1 -0
- package/dist/store/slices/runs.d.ts +2 -0
- package/dist/store/slices/runs.d.ts.map +1 -0
- package/dist/store/slices/runs.js +4 -0
- package/dist/store/slices/runs.js.map +1 -0
- package/dist/store/slices/sessions.d.ts +2 -0
- package/dist/store/slices/sessions.d.ts.map +1 -0
- package/dist/store/slices/sessions.js +4 -0
- package/dist/store/slices/sessions.js.map +1 -0
- package/dist/theme/dark.d.ts +2 -0
- package/dist/theme/dark.d.ts.map +1 -0
- package/dist/theme/dark.js +21 -0
- package/dist/theme/dark.js.map +1 -0
- package/dist/theme/light.d.ts +2 -0
- package/dist/theme/light.d.ts.map +1 -0
- package/dist/theme/light.js +21 -0
- package/dist/theme/light.js.map +1 -0
- package/dist/theme/tokens.d.ts +20 -0
- package/dist/theme/tokens.d.ts.map +1 -0
- package/dist/theme/tokens.js +2 -0
- package/dist/theme/tokens.js.map +1 -0
- package/package.json +152 -0
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
function priorityColor(priority) {
|
|
3
|
+
switch ((priority || '').toLowerCase()) {
|
|
4
|
+
case 'critical': return '#ef4444';
|
|
5
|
+
case 'high': return '#f97316';
|
|
6
|
+
case 'medium': return '#eab308';
|
|
7
|
+
case 'low': return '#22c55e';
|
|
8
|
+
default: return '#9ca3af';
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
export function KanbanCard({ item, columnColor, onDragStart, onDragEnd, isDragging, onCardClick, onStartWork, org = 'default', }) {
|
|
12
|
+
const name = item.metadata?.name || item.spec?.title;
|
|
13
|
+
const title = item.spec?.title || name || 'Untitled';
|
|
14
|
+
const priority = item.spec?.priority;
|
|
15
|
+
const assignee = item.spec?.assignee;
|
|
16
|
+
const labels = item.spec?.labels || [];
|
|
17
|
+
const storyPoints = item.spec?.storyPoints || item.spec?.points;
|
|
18
|
+
// Workspace/session/run/agent refs
|
|
19
|
+
const workspaceRef = item.workspaceRef || item.spec?.workspaceRef || null;
|
|
20
|
+
const workspacePvcStatus = item.workspacePvcStatus || item.spec?.workspacePvcStatus || null;
|
|
21
|
+
const sessionRef = item.sessionRef || item.spec?.sessionRef || null;
|
|
22
|
+
const sessionStatus = item.sessionStatus || item.spec?.sessionStatus || null;
|
|
23
|
+
const dispatchRunRef = item.dispatchRunRef || item.spec?.dispatchRunRef || null;
|
|
24
|
+
const agentName = item.agentName || item.spec?.agentName || (item.status?.agentActive ? 'Agent active' : null);
|
|
25
|
+
const hasWorkspace = !!workspaceRef;
|
|
26
|
+
return (_jsxs("div", { draggable: true, onDragStart: (e) => onDragStart(e, item), onDragEnd: onDragEnd, onClick: () => onCardClick(item), className: "kanbanCard", tabIndex: 0, role: "button", "aria-label": `Card: ${title}`, onKeyDown: (e) => { if (e.key === 'Enter' || e.key === ' ') {
|
|
27
|
+
e.preventDefault();
|
|
28
|
+
onCardClick(item);
|
|
29
|
+
} }, style: {
|
|
30
|
+
background: 'var(--surface)',
|
|
31
|
+
borderRadius: '0.375rem',
|
|
32
|
+
padding: '0.625rem 0.75rem',
|
|
33
|
+
borderLeft: `4px solid ${columnColor}`,
|
|
34
|
+
boxShadow: '0 1px 2px rgba(0,0,0,0.06)',
|
|
35
|
+
cursor: 'pointer',
|
|
36
|
+
userSelect: 'none',
|
|
37
|
+
opacity: isDragging ? 0.4 : 1,
|
|
38
|
+
transition: 'opacity 0.15s ease, box-shadow 0.15s ease',
|
|
39
|
+
}, onMouseEnter: (e) => { if (!isDragging)
|
|
40
|
+
e.currentTarget.style.boxShadow = '0 3px 8px rgba(0,0,0,0.12)'; }, onMouseLeave: (e) => { e.currentTarget.style.boxShadow = '0 1px 2px rgba(0,0,0,0.06)'; }, children: [_jsx("strong", { style: { fontSize: '0.8125rem', display: 'block', marginBottom: '0.25rem', lineHeight: 1.4 }, children: title }), _jsxs("div", { style: { display: 'flex', flexWrap: 'wrap', gap: '0.25rem', marginBottom: labels.length ? '0.25rem' : 0 }, children: [priority ? (_jsx("span", { style: { fontSize: '0.6875rem', fontWeight: 600, color: priorityColor(priority) }, children: priority })) : null, labels.slice(0, 3).map((label) => (_jsx("span", { className: "pill neutral", style: { fontSize: '0.6875rem' }, children: label }, label)))] }), workspaceRef ? (_jsxs("div", { style: { display: 'flex', alignItems: 'center', gap: '0.25rem', marginTop: '0.25rem', fontSize: '0.6875rem' }, children: [_jsx("span", { style: { background: '#ede9fe', color: '#6d28d9', padding: '0.0625rem 0.375rem', borderRadius: '9999px', fontWeight: 600, flexShrink: 0 }, children: "WS" }), _jsx("span", { style: { color: 'var(--text-muted)', overflow: 'hidden', textOverflow: 'ellipsis', whiteSpace: 'nowrap', flex: 1 }, children: workspaceRef }), _jsx("span", { style: {
|
|
41
|
+
fontSize: '0.5625rem',
|
|
42
|
+
padding: '0.0625rem 0.25rem',
|
|
43
|
+
borderRadius: '9999px',
|
|
44
|
+
background: workspacePvcStatus === 'Bound' ? '#dcfce7' : '#fef3c7',
|
|
45
|
+
color: workspacePvcStatus === 'Bound' ? '#16a34a' : '#92400e',
|
|
46
|
+
fontWeight: 600,
|
|
47
|
+
flexShrink: 0,
|
|
48
|
+
}, children: workspacePvcStatus || 'Pending' })] })) : null, sessionRef ? (_jsxs("a", { href: `/orgs/${encodeURIComponent(org)}/agents/sessions/${sessionRef}`, onClick: (e) => e.stopPropagation(), style: { display: 'flex', alignItems: 'center', gap: '0.25rem', marginTop: '0.25rem', fontSize: '0.6875rem', color: 'var(--accent)', textDecoration: 'none' }, children: [_jsx("span", { style: { background: '#dbeafe', color: 'var(--accent)', padding: '0.0625rem 0.375rem', borderRadius: '9999px', fontWeight: 600, flexShrink: 0 }, children: "Session" }), _jsxs("span", { style: { overflow: 'hidden', textOverflow: 'ellipsis', whiteSpace: 'nowrap', flex: 1 }, children: [sessionRef.slice(0, 12), "\u2026"] }), sessionStatus ? (_jsx("span", { style: { fontSize: '0.5625rem', color: 'var(--text-muted)', flexShrink: 0 }, children: sessionStatus })) : null] })) : null, dispatchRunRef ? (_jsxs("a", { href: `/orgs/${encodeURIComponent(org)}/agents/runs/${dispatchRunRef}`, onClick: (e) => e.stopPropagation(), style: { display: 'flex', alignItems: 'center', gap: '0.25rem', marginTop: '0.125rem', fontSize: '0.6875rem', color: '#7c3aed', textDecoration: 'none' }, children: [_jsx("span", { style: { background: '#ede9fe', color: '#6d28d9', padding: '0.0625rem 0.375rem', borderRadius: '9999px', fontWeight: 600, flexShrink: 0 }, children: "Run" }), _jsx("span", { style: { overflow: 'hidden', textOverflow: 'ellipsis', whiteSpace: 'nowrap' }, children: dispatchRunRef.slice(0, 14) })] })) : null, agentName ? (_jsxs("div", { style: { display: 'flex', alignItems: 'center', gap: '0.25rem', marginTop: '0.25rem', fontSize: '0.6875rem', color: '#059669' }, children: [_jsx("span", { style: {
|
|
49
|
+
width: '0.5rem',
|
|
50
|
+
height: '0.5rem',
|
|
51
|
+
borderRadius: '9999px',
|
|
52
|
+
background: '#10b981',
|
|
53
|
+
flexShrink: 0,
|
|
54
|
+
animation: 'kanbanPulse 2s ease-in-out infinite',
|
|
55
|
+
} }), _jsx("span", { style: { overflow: 'hidden', textOverflow: 'ellipsis', whiteSpace: 'nowrap' }, children: agentName })] })) : null, _jsxs("div", { style: { display: 'flex', alignItems: 'center', justifyContent: 'space-between', marginTop: '0.25rem' }, children: [assignee ? (_jsx("small", { style: { color: 'var(--text-muted)', fontSize: '0.75rem' }, children: assignee })) : _jsx("span", {}), storyPoints != null ? (_jsx("span", { style: {
|
|
56
|
+
background: 'var(--bg-subtle)',
|
|
57
|
+
borderRadius: '9999px',
|
|
58
|
+
padding: '0.0625rem 0.375rem',
|
|
59
|
+
fontSize: '0.6875rem',
|
|
60
|
+
fontWeight: 700,
|
|
61
|
+
color: 'var(--text)',
|
|
62
|
+
}, children: storyPoints })) : null] }), onStartWork && !hasWorkspace && item._column !== 'done' ? (_jsx("button", { onClick: (e) => { e.stopPropagation(); onStartWork(item); }, style: {
|
|
63
|
+
marginTop: '0.375rem',
|
|
64
|
+
padding: '0.1875rem 0.5rem',
|
|
65
|
+
fontSize: '0.6875rem',
|
|
66
|
+
background: '#eff6ff',
|
|
67
|
+
color: 'var(--accent)',
|
|
68
|
+
border: '1px solid #bfdbfe',
|
|
69
|
+
borderRadius: '0.25rem',
|
|
70
|
+
cursor: 'pointer',
|
|
71
|
+
width: '100%',
|
|
72
|
+
textAlign: 'center',
|
|
73
|
+
}, children: "Start Work" })) : null] }));
|
|
74
|
+
}
|
|
75
|
+
//# sourceMappingURL=KanbanCard.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"KanbanCard.js","sourceRoot":"","sources":["../../../src/components/Kanban/KanbanCard.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { KanbanIssue } from './kanbanHelpers.js';
|
|
3
|
+
export interface KanbanColumnDef {
|
|
4
|
+
id: string;
|
|
5
|
+
label: string;
|
|
6
|
+
color: string;
|
|
7
|
+
wipLimit?: number | null;
|
|
8
|
+
}
|
|
9
|
+
export interface KanbanColumnProps {
|
|
10
|
+
col: KanbanColumnDef;
|
|
11
|
+
items: KanbanIssue[];
|
|
12
|
+
draggingId: string | null;
|
|
13
|
+
dragOverCol: string | null;
|
|
14
|
+
onDragStart: (e: React.DragEvent, item: KanbanIssue) => void;
|
|
15
|
+
onDragEnd: () => void;
|
|
16
|
+
onDragOver: (e: React.DragEvent, colId: string) => void;
|
|
17
|
+
onDragLeave: (e: React.DragEvent) => void;
|
|
18
|
+
onDrop: (e: React.DragEvent, colId: string) => void;
|
|
19
|
+
onCardClick: (item: KanbanIssue) => void;
|
|
20
|
+
onAddCard: (colId: string, title: string) => void;
|
|
21
|
+
onStartWork?: (item: KanbanIssue) => void;
|
|
22
|
+
groupBy?: string;
|
|
23
|
+
org?: string;
|
|
24
|
+
}
|
|
25
|
+
export declare function KanbanColumn({ col, items, draggingId, dragOverCol, onDragStart, onDragEnd, onDragOver, onDragLeave, onDrop, onCardClick, onAddCard, onStartWork, groupBy, org, }: KanbanColumnProps): JSX.Element;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"KanbanColumn.d.ts","sourceRoot":"","sources":["../../../src/components/Kanban/KanbanColumn.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA4B,MAAM,OAAO,CAAC;AAEjD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAsJtD,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B;AAED,MAAM,WAAW,iBAAiB;IAChC,GAAG,EAAE,eAAe,CAAC;IACrB,KAAK,EAAE,WAAW,EAAE,CAAC;IACrB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,WAAW,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,SAAS,EAAE,IAAI,EAAE,WAAW,KAAK,IAAI,CAAC;IAC7D,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB,UAAU,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,SAAS,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACxD,WAAW,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,SAAS,KAAK,IAAI,CAAC;IAC1C,MAAM,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,SAAS,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACpD,WAAW,EAAE,CAAC,IAAI,EAAE,WAAW,KAAK,IAAI,CAAC;IACzC,SAAS,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClD,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,WAAW,KAAK,IAAI,CAAC;IAC1C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,wBAAgB,YAAY,CAAC,EAC3B,GAAG,EACH,KAAK,EACL,UAAU,EACV,WAAW,EACX,WAAW,EACX,SAAS,EACT,UAAU,EACV,WAAW,EACX,MAAM,EACN,WAAW,EACX,SAAS,EACT,WAAW,EACX,OAAO,EACP,GAAe,GAChB,EAAE,iBAAiB,GAAG,GAAG,CAAC,OAAO,CA4IjC"}
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useState, useMemo } from 'react';
|
|
3
|
+
import { KanbanCard } from './KanbanCard.js';
|
|
4
|
+
const PRIORITY_ORDER = { critical: 0, high: 1, medium: 2, low: 3, undefined: 4 };
|
|
5
|
+
function AddCardRow({ onAdd }) {
|
|
6
|
+
const [adding, setAdding] = useState(false);
|
|
7
|
+
const [title, setTitle] = useState('');
|
|
8
|
+
function submit() {
|
|
9
|
+
const t = title.trim();
|
|
10
|
+
if (t) {
|
|
11
|
+
onAdd(t);
|
|
12
|
+
}
|
|
13
|
+
setTitle('');
|
|
14
|
+
setAdding(false);
|
|
15
|
+
}
|
|
16
|
+
if (adding) {
|
|
17
|
+
return (_jsxs("div", { style: { display: 'flex', flexDirection: 'column', gap: '0.375rem' }, children: [_jsx("input", { autoFocus: true, value: title, onChange: (e) => setTitle(e.target.value), onKeyDown: (e) => {
|
|
18
|
+
if (e.key === 'Enter')
|
|
19
|
+
submit();
|
|
20
|
+
if (e.key === 'Escape') {
|
|
21
|
+
setAdding(false);
|
|
22
|
+
setTitle('');
|
|
23
|
+
}
|
|
24
|
+
}, placeholder: "Card title...", style: {
|
|
25
|
+
width: '100%',
|
|
26
|
+
padding: '0.375rem 0.5rem',
|
|
27
|
+
fontSize: '0.8125rem',
|
|
28
|
+
border: '1px solid #d1d5db',
|
|
29
|
+
borderRadius: '0.375rem',
|
|
30
|
+
outline: 'none',
|
|
31
|
+
boxSizing: 'border-box',
|
|
32
|
+
} }), _jsxs("div", { style: { display: 'flex', gap: '0.375rem' }, children: [_jsx("button", { onClick: submit, style: {
|
|
33
|
+
flex: 1,
|
|
34
|
+
padding: '0.25rem',
|
|
35
|
+
fontSize: '0.75rem',
|
|
36
|
+
background: '#2563eb',
|
|
37
|
+
color: '#fff',
|
|
38
|
+
border: 'none',
|
|
39
|
+
borderRadius: '0.25rem',
|
|
40
|
+
cursor: 'pointer',
|
|
41
|
+
}, children: "Add" }), _jsx("button", { onClick: () => { setAdding(false); setTitle(''); }, style: {
|
|
42
|
+
flex: 1,
|
|
43
|
+
padding: '0.25rem',
|
|
44
|
+
fontSize: '0.75rem',
|
|
45
|
+
background: '#f3f4f6',
|
|
46
|
+
color: '#374151',
|
|
47
|
+
border: 'none',
|
|
48
|
+
borderRadius: '0.25rem',
|
|
49
|
+
cursor: 'pointer',
|
|
50
|
+
}, children: "Cancel" })] })] }));
|
|
51
|
+
}
|
|
52
|
+
return (_jsx("button", { onClick: () => setAdding(true), "aria-label": "Add a new card", style: {
|
|
53
|
+
width: '100%',
|
|
54
|
+
padding: '0.375rem',
|
|
55
|
+
fontSize: '0.75rem',
|
|
56
|
+
background: 'transparent',
|
|
57
|
+
color: '#9ca3af',
|
|
58
|
+
border: '1px dashed #d1d5db',
|
|
59
|
+
borderRadius: '0.375rem',
|
|
60
|
+
cursor: 'pointer',
|
|
61
|
+
textAlign: 'center',
|
|
62
|
+
transition: 'color 0.15s, border-color 0.15s',
|
|
63
|
+
}, onMouseEnter: (e) => { e.currentTarget.style.color = '#374151'; e.currentTarget.style.borderColor = '#9ca3af'; }, onMouseLeave: (e) => { e.currentTarget.style.color = '#9ca3af'; e.currentTarget.style.borderColor = '#d1d5db'; }, children: "+ Add card" }));
|
|
64
|
+
}
|
|
65
|
+
function Swimlane({ label, items, columnColor, draggingId, onDragStart, onDragEnd, onCardClick, onStartWork, org }) {
|
|
66
|
+
return (_jsxs("div", { style: { marginBottom: '0.5rem' }, children: [_jsxs("div", { style: {
|
|
67
|
+
fontSize: '0.6875rem',
|
|
68
|
+
fontWeight: 700,
|
|
69
|
+
color: '#6b7280',
|
|
70
|
+
textTransform: 'uppercase',
|
|
71
|
+
letterSpacing: '0.05em',
|
|
72
|
+
padding: '0.125rem 0',
|
|
73
|
+
marginBottom: '0.25rem',
|
|
74
|
+
borderBottom: '1px solid #e5e7eb',
|
|
75
|
+
}, children: [label, " (", items.length, ")"] }), _jsx("div", { style: { display: 'flex', flexDirection: 'column', gap: '0.375rem' }, children: items.map((item) => (_jsx("div", { role: "listitem", children: _jsx(KanbanCard, { item: item, columnColor: columnColor, onDragStart: onDragStart, onDragEnd: onDragEnd, isDragging: draggingId === (item.metadata?.name || item.spec?.title), onCardClick: onCardClick, onStartWork: onStartWork, org: org }) }, item.metadata?.name || item.spec?.title))) })] }));
|
|
76
|
+
}
|
|
77
|
+
export function KanbanColumn({ col, items, draggingId, dragOverCol, onDragStart, onDragEnd, onDragOver, onDragLeave, onDrop, onCardClick, onAddCard, onStartWork, groupBy, org = 'default', }) {
|
|
78
|
+
const isOver = dragOverCol === col.id;
|
|
79
|
+
const wipExceeded = col.wipLimit != null && items.length > col.wipLimit;
|
|
80
|
+
const totalPoints = items.reduce((sum, item) => {
|
|
81
|
+
const pts = item.spec?.storyPoints || item.spec?.points;
|
|
82
|
+
return sum + (pts != null ? Number(pts) : 0);
|
|
83
|
+
}, 0);
|
|
84
|
+
const grouped = useMemo(() => {
|
|
85
|
+
if (groupBy === 'none' || !groupBy)
|
|
86
|
+
return null;
|
|
87
|
+
const groups = {};
|
|
88
|
+
items.forEach((item) => {
|
|
89
|
+
const key = (groupBy === 'assignee' ? item.spec?.assignee : item.spec?.priority) || 'Unassigned';
|
|
90
|
+
if (!groups[key])
|
|
91
|
+
groups[key] = [];
|
|
92
|
+
groups[key].push(item);
|
|
93
|
+
});
|
|
94
|
+
if (groupBy === 'priority') {
|
|
95
|
+
return Object.entries(groups).sort(([a], [b]) => {
|
|
96
|
+
return (PRIORITY_ORDER[a.toLowerCase()] ?? 4) - (PRIORITY_ORDER[b.toLowerCase()] ?? 4);
|
|
97
|
+
});
|
|
98
|
+
}
|
|
99
|
+
return Object.entries(groups).sort(([a], [b]) => a.localeCompare(b));
|
|
100
|
+
}, [items, groupBy]);
|
|
101
|
+
return (_jsxs("section", { className: "kanbanColumn", role: "list", "aria-label": `${col.label} column, ${items.length} cards`, onDragOver: (e) => onDragOver(e, col.id), onDragLeave: onDragLeave, onDrop: (e) => onDrop(e, col.id), style: {
|
|
102
|
+
background: isOver ? 'var(--surface-hover, #f0f4ff)' : 'var(--surface-muted, #f9fafb)',
|
|
103
|
+
borderRadius: '0.5rem',
|
|
104
|
+
padding: '0.75rem',
|
|
105
|
+
display: 'flex',
|
|
106
|
+
flexDirection: 'column',
|
|
107
|
+
gap: '0.375rem',
|
|
108
|
+
border: wipExceeded
|
|
109
|
+
? '2px solid #f97316'
|
|
110
|
+
: isOver
|
|
111
|
+
? `2px solid ${col.color}`
|
|
112
|
+
: '2px solid transparent',
|
|
113
|
+
transition: 'border-color 0.15s ease, background 0.15s ease',
|
|
114
|
+
minHeight: '12rem',
|
|
115
|
+
}, children: [_jsxs("div", { style: { display: 'flex', alignItems: 'center', justifyContent: 'space-between', marginBottom: '0.25rem' }, children: [_jsx("h3", { style: { margin: 0, fontSize: '0.875rem', fontWeight: 600 }, children: col.label }), _jsxs("div", { style: { display: 'flex', alignItems: 'center', gap: '0.375rem' }, children: [wipExceeded ? (_jsx("span", { title: `WIP limit exceeded (limit: ${col.wipLimit})`, style: { fontSize: '0.75rem', color: '#f97316', fontWeight: 700 }, children: "WIP!" })) : null, _jsxs("span", { style: {
|
|
116
|
+
background: wipExceeded ? '#f97316' : col.color,
|
|
117
|
+
color: '#fff',
|
|
118
|
+
borderRadius: '9999px',
|
|
119
|
+
padding: '0.125rem 0.5rem',
|
|
120
|
+
fontSize: '0.75rem',
|
|
121
|
+
fontWeight: 600,
|
|
122
|
+
}, children: [items.length, col.wipLimit != null ? `/${col.wipLimit}` : ''] })] })] }), _jsxs("div", { style: { display: 'flex', gap: '0.5rem', fontSize: '0.6875rem', color: '#9ca3af', marginBottom: '0.25rem' }, children: [_jsxs("span", { children: [items.length, " card", items.length !== 1 ? 's' : ''] }), totalPoints > 0 ? _jsxs("span", { children: [totalPoints, " pts"] }) : null, col.wipLimit != null ? (_jsxs("span", { style: { color: wipExceeded ? '#f97316' : '#9ca3af' }, children: ["limit ", col.wipLimit] })) : null] }), items.length === 0 ? (_jsx("p", { style: {
|
|
123
|
+
color: '#9ca3af',
|
|
124
|
+
fontSize: '0.8125rem',
|
|
125
|
+
textAlign: 'center',
|
|
126
|
+
margin: 'auto 0',
|
|
127
|
+
padding: '1rem 0',
|
|
128
|
+
}, children: "No items" })) : grouped ? (grouped.map(([groupLabel, groupItems]) => (_jsx(Swimlane, { label: groupLabel, items: groupItems, columnColor: col.color, draggingId: draggingId, onDragStart: onDragStart, onDragEnd: onDragEnd, onCardClick: onCardClick, onStartWork: onStartWork, org: org }, groupLabel)))) : (_jsx("div", { style: { display: 'flex', flexDirection: 'column', gap: '0.375rem' }, children: items.map((item) => (_jsx("div", { role: "listitem", children: _jsx(KanbanCard, { item: item, columnColor: col.color, onDragStart: onDragStart, onDragEnd: onDragEnd, isDragging: draggingId === (item.metadata?.name || item.spec?.title), onCardClick: onCardClick, onStartWork: onStartWork, org: org }) }, item.metadata?.name || item.spec?.title))) })), _jsx("div", { style: { marginTop: 'auto', paddingTop: '0.5rem' }, children: _jsx(AddCardRow, { onAdd: (t) => onAddCard(col.id, t) }) })] }));
|
|
129
|
+
}
|
|
130
|
+
//# sourceMappingURL=KanbanColumn.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"KanbanColumn.js","sourceRoot":"","sources":["../../../src/components/Kanban/KanbanColumn.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
export interface KanbanFiltersProps {
|
|
2
|
+
searchText: string;
|
|
3
|
+
onSearchChange: (value: string) => void;
|
|
4
|
+
filterAssignee: string;
|
|
5
|
+
onAssigneeChange: (value: string) => void;
|
|
6
|
+
filterLabel: string;
|
|
7
|
+
onLabelChange: (value: string) => void;
|
|
8
|
+
groupBy: string;
|
|
9
|
+
onGroupByChange: (value: string) => void;
|
|
10
|
+
allAssignees: string[];
|
|
11
|
+
allLabels: string[];
|
|
12
|
+
filteredCount: number;
|
|
13
|
+
totalCount: number;
|
|
14
|
+
onClearFilters: () => void;
|
|
15
|
+
}
|
|
16
|
+
export declare function KanbanFilters({ searchText, onSearchChange, filterAssignee, onAssigneeChange, filterLabel, onLabelChange, groupBy, onGroupByChange, allAssignees, allLabels, filteredCount, totalCount, onClearFilters, }: KanbanFiltersProps): JSX.Element;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"KanbanFilters.d.ts","sourceRoot":"","sources":["../../../src/components/Kanban/KanbanFilters.tsx"],"names":[],"mappings":"AAEA,MAAM,WAAW,kBAAkB;IACjC,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,cAAc,EAAE,MAAM,CAAC;IACvB,gBAAgB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1C,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,IAAI,CAAC;CAC5B;AAED,wBAAgB,aAAa,CAAC,EAC5B,UAAU,EACV,cAAc,EACd,cAAc,EACd,gBAAgB,EAChB,WAAW,EACX,aAAa,EACb,OAAO,EACP,eAAe,EACf,YAAY,EACZ,SAAS,EACT,aAAa,EACb,UAAU,EACV,cAAc,GACf,EAAE,kBAAkB,GAAG,GAAG,CAAC,OAAO,CAsGlC"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
export function KanbanFilters({ searchText, onSearchChange, filterAssignee, onAssigneeChange, filterLabel, onLabelChange, groupBy, onGroupByChange, allAssignees, allLabels, filteredCount, totalCount, onClearFilters, }) {
|
|
3
|
+
const hasActiveFilter = filterAssignee || filterLabel || searchText;
|
|
4
|
+
return (_jsxs("div", { style: {
|
|
5
|
+
display: 'flex',
|
|
6
|
+
flexWrap: 'wrap',
|
|
7
|
+
gap: '0.5rem',
|
|
8
|
+
marginBottom: '1rem',
|
|
9
|
+
alignItems: 'center',
|
|
10
|
+
}, children: [_jsx("input", { type: "search", placeholder: "Search cards...", value: searchText, onChange: (e) => onSearchChange(e.target.value), "aria-label": "Search kanban cards by title or content", style: {
|
|
11
|
+
padding: '0.375rem 0.625rem',
|
|
12
|
+
fontSize: '0.8125rem',
|
|
13
|
+
border: '1px solid #d1d5db',
|
|
14
|
+
borderRadius: '0.375rem',
|
|
15
|
+
outline: 'none',
|
|
16
|
+
minWidth: '10rem',
|
|
17
|
+
} }), allAssignees.length > 0 ? (_jsxs("select", { value: filterAssignee, onChange: (e) => onAssigneeChange(e.target.value), "aria-label": "Filter cards by assignee", style: {
|
|
18
|
+
padding: '0.375rem 0.625rem',
|
|
19
|
+
fontSize: '0.8125rem',
|
|
20
|
+
border: '1px solid #d1d5db',
|
|
21
|
+
borderRadius: '0.375rem',
|
|
22
|
+
background: '#fff',
|
|
23
|
+
}, children: [_jsx("option", { value: "", children: "All assignees" }), allAssignees.map((a) => _jsx("option", { value: a, children: a }, a))] })) : null, allLabels.length > 0 ? (_jsxs("select", { value: filterLabel, onChange: (e) => onLabelChange(e.target.value), "aria-label": "Filter cards by label", style: {
|
|
24
|
+
padding: '0.375rem 0.625rem',
|
|
25
|
+
fontSize: '0.8125rem',
|
|
26
|
+
border: '1px solid #d1d5db',
|
|
27
|
+
borderRadius: '0.375rem',
|
|
28
|
+
background: '#fff',
|
|
29
|
+
}, children: [_jsx("option", { value: "", children: "All labels" }), allLabels.map((l) => _jsx("option", { value: l, children: l }, l))] })) : null, _jsxs("select", { value: groupBy, onChange: (e) => onGroupByChange(e.target.value), "aria-label": "Group cards by attribute", style: {
|
|
30
|
+
padding: '0.375rem 0.625rem',
|
|
31
|
+
fontSize: '0.8125rem',
|
|
32
|
+
border: '1px solid #d1d5db',
|
|
33
|
+
borderRadius: '0.375rem',
|
|
34
|
+
background: '#fff',
|
|
35
|
+
}, children: [_jsx("option", { value: "none", children: "No grouping" }), _jsx("option", { value: "assignee", children: "Group by assignee" }), _jsx("option", { value: "priority", children: "Group by priority" })] }), hasActiveFilter ? (_jsx("button", { onClick: onClearFilters, "aria-label": "Clear all active kanban filters", style: {
|
|
36
|
+
padding: '0.375rem 0.75rem',
|
|
37
|
+
fontSize: '0.75rem',
|
|
38
|
+
background: '#fee2e2',
|
|
39
|
+
color: '#991b1b',
|
|
40
|
+
border: 'none',
|
|
41
|
+
borderRadius: '0.375rem',
|
|
42
|
+
cursor: 'pointer',
|
|
43
|
+
}, children: "Clear filters" })) : null, hasActiveFilter ? (_jsxs("span", { style: { fontSize: '0.75rem', color: '#6b7280' }, children: ["Showing ", filteredCount, " of ", totalCount, " cards"] })) : null] }));
|
|
44
|
+
}
|
|
45
|
+
//# sourceMappingURL=KanbanFilters.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"KanbanFilters.js","sourceRoot":"","sources":["../../../src/components/Kanban/KanbanFilters.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Kanban/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,cAAc,oBAAoB,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export { KanbanBoard } from './KanbanBoard.js';
|
|
2
|
+
export { KanbanCard } from './KanbanCard.js';
|
|
3
|
+
export { KanbanColumn } from './KanbanColumn.js';
|
|
4
|
+
export { KanbanFilters } from './KanbanFilters.js';
|
|
5
|
+
export * from './kanbanHelpers.js';
|
|
6
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/Kanban/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,cAAc,oBAAoB,CAAC"}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
export interface WorkflowColumn {
|
|
3
|
+
id: string;
|
|
4
|
+
label: string;
|
|
5
|
+
color: string;
|
|
6
|
+
wipLimit: number | null;
|
|
7
|
+
}
|
|
8
|
+
export declare const WORKFLOW_COLUMNS: WorkflowColumn[];
|
|
9
|
+
export declare function priorityColor(priority: string | undefined | null): string;
|
|
10
|
+
export interface DragHandlerOptions {
|
|
11
|
+
dragItemRef: React.MutableRefObject<KanbanIssue | null>;
|
|
12
|
+
setDraggingId: (id: string | null) => void;
|
|
13
|
+
setDragOverCol: (col: string | null) => void;
|
|
14
|
+
}
|
|
15
|
+
export interface KanbanIssue {
|
|
16
|
+
metadata?: {
|
|
17
|
+
name?: string;
|
|
18
|
+
creationTimestamp?: string;
|
|
19
|
+
};
|
|
20
|
+
spec?: {
|
|
21
|
+
title?: string;
|
|
22
|
+
description?: string;
|
|
23
|
+
body?: string;
|
|
24
|
+
priority?: string;
|
|
25
|
+
assignee?: string;
|
|
26
|
+
labels?: string[];
|
|
27
|
+
storyPoints?: number;
|
|
28
|
+
points?: number;
|
|
29
|
+
repoRef?: string;
|
|
30
|
+
repository?: string;
|
|
31
|
+
workspaceRef?: string;
|
|
32
|
+
workspacePvcStatus?: string;
|
|
33
|
+
sessionRef?: string;
|
|
34
|
+
sessionStatus?: string;
|
|
35
|
+
dispatchRunRef?: string;
|
|
36
|
+
agentName?: string;
|
|
37
|
+
createdAt?: string;
|
|
38
|
+
updatedAt?: string;
|
|
39
|
+
};
|
|
40
|
+
status?: {
|
|
41
|
+
column?: string;
|
|
42
|
+
agentActive?: boolean;
|
|
43
|
+
updatedAt?: string;
|
|
44
|
+
linkedSessions?: number;
|
|
45
|
+
linkedWorkspaces?: number;
|
|
46
|
+
};
|
|
47
|
+
_column: string;
|
|
48
|
+
_local?: boolean;
|
|
49
|
+
workspaceRef?: string;
|
|
50
|
+
workspacePvcStatus?: string;
|
|
51
|
+
sessionRef?: string;
|
|
52
|
+
sessionStatus?: string;
|
|
53
|
+
dispatchRunRef?: string;
|
|
54
|
+
agentName?: string;
|
|
55
|
+
}
|
|
56
|
+
export declare function createDragHandlers({ dragItemRef, setDraggingId, setDragOverCol }: DragHandlerOptions): {
|
|
57
|
+
handleDragStart: (e: React.DragEvent, item: KanbanIssue) => void;
|
|
58
|
+
handleDragEnd: () => void;
|
|
59
|
+
handleDragOver: (e: React.DragEvent, colId: string) => void;
|
|
60
|
+
handleDragLeave: (e: React.DragEvent) => void;
|
|
61
|
+
};
|
|
62
|
+
export declare const KANBAN_PULSE_STYLE = "\n @keyframes kanbanPulse {\n 0%, 100% { opacity: 1; transform: scale(1); }\n 50% { opacity: 0.4; transform: scale(0.85); }\n }\n";
|
|
63
|
+
export interface CardDetailModalProps {
|
|
64
|
+
item: KanbanIssue;
|
|
65
|
+
onClose: () => void;
|
|
66
|
+
columnColor: string;
|
|
67
|
+
org?: string;
|
|
68
|
+
}
|
|
69
|
+
export declare function CardDetailModal({ item, onClose, columnColor, org }: CardDetailModalProps): JSX.Element;
|
|
70
|
+
export interface StartWorkDialogProps {
|
|
71
|
+
item: KanbanIssue;
|
|
72
|
+
onConfirm: (item: KanbanIssue) => Promise<void>;
|
|
73
|
+
onCancel: () => void;
|
|
74
|
+
org?: string;
|
|
75
|
+
}
|
|
76
|
+
export declare function StartWorkDialog({ item, onConfirm, onCancel, org }: StartWorkDialogProps): JSX.Element;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"kanbanHelpers.d.ts","sourceRoot":"","sources":["../../../src/components/Kanban/kanbanHelpers.tsx"],"names":[],"mappings":"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"}
|