@nocturnium/svelte-ide 1.0.0-rc.1
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/LICENSE +21 -0
- package/README.md +251 -0
- package/dist/components/agents/AgentActivityPanel.svelte +565 -0
- package/dist/components/agents/AgentActivityPanel.svelte.d.ts +24 -0
- package/dist/components/agents/AgentAvatar.svelte +417 -0
- package/dist/components/agents/AgentAvatar.svelte.d.ts +23 -0
- package/dist/components/agents/AgentCursor.svelte +224 -0
- package/dist/components/agents/AgentCursor.svelte.d.ts +35 -0
- package/dist/components/agents/AgentPresenceBar.svelte +261 -0
- package/dist/components/agents/AgentPresenceBar.svelte.d.ts +20 -0
- package/dist/components/agents/index.d.ts +4 -0
- package/dist/components/agents/index.js +5 -0
- package/dist/components/ai/AIConversationList.svelte +524 -0
- package/dist/components/ai/AIConversationList.svelte.d.ts +17 -0
- package/dist/components/ai/AIEditPreview.svelte +132 -0
- package/dist/components/ai/AIEditPreview.svelte.d.ts +8 -0
- package/dist/components/ai/AIInlineEdit.svelte +155 -0
- package/dist/components/ai/AIInlineEdit.svelte.d.ts +10 -0
- package/dist/components/ai/AIMessage.svelte +239 -0
- package/dist/components/ai/AIMessage.svelte.d.ts +13 -0
- package/dist/components/ai/AIMessageActions.svelte +176 -0
- package/dist/components/ai/AIMessageActions.svelte.d.ts +12 -0
- package/dist/components/ai/AIMessageContent.svelte +355 -0
- package/dist/components/ai/AIMessageContent.svelte.d.ts +7 -0
- package/dist/components/ai/AIPanel.svelte +561 -0
- package/dist/components/ai/AIPanel.svelte.d.ts +7 -0
- package/dist/components/ai/AISuggestionWidget.svelte +132 -0
- package/dist/components/ai/AISuggestionWidget.svelte.d.ts +10 -0
- package/dist/components/ai/AIToolCallDisplay.svelte +317 -0
- package/dist/components/ai/AIToolCallDisplay.svelte.d.ts +12 -0
- package/dist/components/ai/index.d.ts +9 -0
- package/dist/components/ai/index.js +10 -0
- package/dist/components/core/Avatar.svelte +110 -0
- package/dist/components/core/Avatar.svelte.d.ts +12 -0
- package/dist/components/core/Badge.svelte +98 -0
- package/dist/components/core/Badge.svelte.d.ts +11 -0
- package/dist/components/core/Button.svelte +175 -0
- package/dist/components/core/Button.svelte.d.ts +18 -0
- package/dist/components/core/ConnectionStatus.svelte +294 -0
- package/dist/components/core/ConnectionStatus.svelte.d.ts +20 -0
- package/dist/components/core/ContextMenu.svelte +176 -0
- package/dist/components/core/ContextMenu.svelte.d.ts +19 -0
- package/dist/components/core/ErrorBoundary.svelte +277 -0
- package/dist/components/core/ErrorBoundary.svelte.d.ts +23 -0
- package/dist/components/core/Icon.svelte +107 -0
- package/dist/components/core/Icon.svelte.d.ts +8 -0
- package/dist/components/core/Input.svelte +138 -0
- package/dist/components/core/Input.svelte.d.ts +20 -0
- package/dist/components/core/Kbd.svelte +34 -0
- package/dist/components/core/Kbd.svelte.d.ts +7 -0
- package/dist/components/core/ResizeHandle.svelte +200 -0
- package/dist/components/core/ResizeHandle.svelte.d.ts +23 -0
- package/dist/components/core/Spinner.svelte +35 -0
- package/dist/components/core/Spinner.svelte.d.ts +7 -0
- package/dist/components/core/Textarea.svelte +112 -0
- package/dist/components/core/Textarea.svelte.d.ts +18 -0
- package/dist/components/core/Tooltip.svelte +103 -0
- package/dist/components/core/Tooltip.svelte.d.ts +11 -0
- package/dist/components/core/index.d.ts +13 -0
- package/dist/components/core/index.js +14 -0
- package/dist/components/editor/AIFocusLayer.svelte +430 -0
- package/dist/components/editor/AIFocusLayer.svelte.d.ts +32 -0
- package/dist/components/editor/Breadcrumbs.svelte +435 -0
- package/dist/components/editor/Breadcrumbs.svelte.d.ts +33 -0
- package/dist/components/editor/BreakpointLayer.svelte +642 -0
- package/dist/components/editor/BreakpointLayer.svelte.d.ts +20 -0
- package/dist/components/editor/CognitiveLoadMeter.svelte +324 -0
- package/dist/components/editor/CognitiveLoadMeter.svelte.d.ts +18 -0
- package/dist/components/editor/CollaborativeEditor.svelte +218 -0
- package/dist/components/editor/CollaborativeEditor.svelte.d.ts +32 -0
- package/dist/components/editor/CommandPalette.svelte +434 -0
- package/dist/components/editor/CommandPalette.svelte.d.ts +11 -0
- package/dist/components/editor/ComplexityLayer.svelte +293 -0
- package/dist/components/editor/ComplexityLayer.svelte.d.ts +23 -0
- package/dist/components/editor/ConflictZoneLayer.svelte +441 -0
- package/dist/components/editor/ConflictZoneLayer.svelte.d.ts +25 -0
- package/dist/components/editor/ContextLens.svelte +262 -0
- package/dist/components/editor/ContextLens.svelte.d.ts +27 -0
- package/dist/components/editor/CustomEditor.svelte +1242 -0
- package/dist/components/editor/CustomEditor.svelte.d.ts +37 -0
- package/dist/components/editor/DebugConsole.svelte +646 -0
- package/dist/components/editor/DebugConsole.svelte.d.ts +41 -0
- package/dist/components/editor/EchoCursorLayer.svelte +363 -0
- package/dist/components/editor/EchoCursorLayer.svelte.d.ts +24 -0
- package/dist/components/editor/Editor.svelte +61 -0
- package/dist/components/editor/Editor.svelte.d.ts +22 -0
- package/dist/components/editor/EditorGutter.svelte +119 -0
- package/dist/components/editor/EditorGutter.svelte.d.ts +19 -0
- package/dist/components/editor/EditorLines.svelte +182 -0
- package/dist/components/editor/EditorLines.svelte.d.ts +43 -0
- package/dist/components/editor/EditorPane.svelte +134 -0
- package/dist/components/editor/EditorPane.svelte.d.ts +9 -0
- package/dist/components/editor/EditorSelections.svelte +186 -0
- package/dist/components/editor/EditorSelections.svelte.d.ts +25 -0
- package/dist/components/editor/EditorTabs.svelte +170 -0
- package/dist/components/editor/EditorTabs.svelte.d.ts +12 -0
- package/dist/components/editor/FileExplorer.svelte +811 -0
- package/dist/components/editor/FileExplorer.svelte.d.ts +67 -0
- package/dist/components/editor/FileIcon.svelte +110 -0
- package/dist/components/editor/FileIcon.svelte.d.ts +10 -0
- package/dist/components/editor/FindReplace.svelte +448 -0
- package/dist/components/editor/FindReplace.svelte.d.ts +40 -0
- package/dist/components/editor/GhostBracketLayer.svelte +391 -0
- package/dist/components/editor/GhostBracketLayer.svelte.d.ts +24 -0
- package/dist/components/editor/GitBlameLayer.svelte +436 -0
- package/dist/components/editor/GitBlameLayer.svelte.d.ts +18 -0
- package/dist/components/editor/InlineDiagnosticsLayer.svelte +540 -0
- package/dist/components/editor/InlineDiagnosticsLayer.svelte.d.ts +35 -0
- package/dist/components/editor/InlineDiffLayer.svelte +337 -0
- package/dist/components/editor/InlineDiffLayer.svelte.d.ts +31 -0
- package/dist/components/editor/MinimalEditor.svelte +75 -0
- package/dist/components/editor/MinimalEditor.svelte.d.ts +6 -0
- package/dist/components/editor/MinimalEditor2.svelte +84 -0
- package/dist/components/editor/MinimalEditor2.svelte.d.ts +6 -0
- package/dist/components/editor/Minimap.svelte +327 -0
- package/dist/components/editor/Minimap.svelte.d.ts +34 -0
- package/dist/components/editor/PluginPreviewSandbox.svelte +793 -0
- package/dist/components/editor/PluginPreviewSandbox.svelte.d.ts +49 -0
- package/dist/components/editor/ProblemsPanel.svelte +628 -0
- package/dist/components/editor/ProblemsPanel.svelte.d.ts +25 -0
- package/dist/components/editor/QuickActionsMenu.svelte +403 -0
- package/dist/components/editor/QuickActionsMenu.svelte.d.ts +18 -0
- package/dist/components/editor/SnippetPalette.svelte +530 -0
- package/dist/components/editor/SnippetPalette.svelte.d.ts +16 -0
- package/dist/components/editor/StructureMap.svelte +431 -0
- package/dist/components/editor/StructureMap.svelte.d.ts +37 -0
- package/dist/components/editor/SymbolOutline.svelte +722 -0
- package/dist/components/editor/SymbolOutline.svelte.d.ts +44 -0
- package/dist/components/editor/TimelineScrubber.svelte +470 -0
- package/dist/components/editor/TimelineScrubber.svelte.d.ts +40 -0
- package/dist/components/editor/TokenRenderer.svelte +69 -0
- package/dist/components/editor/TokenRenderer.svelte.d.ts +15 -0
- package/dist/components/editor/constants.d.ts +32 -0
- package/dist/components/editor/constants.js +36 -0
- package/dist/components/editor/core/ai-awareness.d.ts +176 -0
- package/dist/components/editor/core/ai-awareness.js +210 -0
- package/dist/components/editor/core/bracket-healer.d.ts +189 -0
- package/dist/components/editor/core/bracket-healer.js +406 -0
- package/dist/components/editor/core/breakpoints.d.ts +203 -0
- package/dist/components/editor/core/breakpoints.js +414 -0
- package/dist/components/editor/core/commands.d.ts +108 -0
- package/dist/components/editor/core/commands.js +246 -0
- package/dist/components/editor/core/complexity-analyzer.d.ts +123 -0
- package/dist/components/editor/core/complexity-analyzer.js +376 -0
- package/dist/components/editor/core/conflict-predictor.d.ts +135 -0
- package/dist/components/editor/core/conflict-predictor.js +316 -0
- package/dist/components/editor/core/crdt-binding.d.ts +118 -0
- package/dist/components/editor/core/crdt-binding.js +286 -0
- package/dist/components/editor/core/diagnostics.d.ts +210 -0
- package/dist/components/editor/core/diagnostics.js +335 -0
- package/dist/components/editor/core/echo-cursor.d.ts +201 -0
- package/dist/components/editor/core/echo-cursor.js +267 -0
- package/dist/components/editor/core/folding.d.ts +124 -0
- package/dist/components/editor/core/folding.js +672 -0
- package/dist/components/editor/core/ghost-pair.d.ts +122 -0
- package/dist/components/editor/core/ghost-pair.js +221 -0
- package/dist/components/editor/core/git-blame.d.ts +170 -0
- package/dist/components/editor/core/git-blame.js +324 -0
- package/dist/components/editor/core/index.d.ts +26 -0
- package/dist/components/editor/core/index.js +24 -0
- package/dist/components/editor/core/keybindings.d.ts +79 -0
- package/dist/components/editor/core/keybindings.js +357 -0
- package/dist/components/editor/core/multi-cursor.d.ts +196 -0
- package/dist/components/editor/core/multi-cursor.js +521 -0
- package/dist/components/editor/core/navigation.d.ts +107 -0
- package/dist/components/editor/core/navigation.js +408 -0
- package/dist/components/editor/core/quick-actions.d.ts +189 -0
- package/dist/components/editor/core/quick-actions.js +427 -0
- package/dist/components/editor/core/search.d.ts +88 -0
- package/dist/components/editor/core/search.js +192 -0
- package/dist/components/editor/core/semantic-analyzer.d.ts +77 -0
- package/dist/components/editor/core/semantic-analyzer.js +424 -0
- package/dist/components/editor/core/snippet-manager.d.ts +202 -0
- package/dist/components/editor/core/snippet-manager.js +565 -0
- package/dist/components/editor/core/state.d.ts +367 -0
- package/dist/components/editor/core/state.js +900 -0
- package/dist/components/editor/core/timeline.d.ts +204 -0
- package/dist/components/editor/core/timeline.js +349 -0
- package/dist/components/editor/editor-find.d.ts +56 -0
- package/dist/components/editor/editor-find.js +148 -0
- package/dist/components/editor/editor-input.d.ts +77 -0
- package/dist/components/editor/editor-input.js +445 -0
- package/dist/components/editor/editor-multicursor.d.ts +21 -0
- package/dist/components/editor/editor-multicursor.js +196 -0
- package/dist/components/editor/editor-scroll.d.ts +14 -0
- package/dist/components/editor/editor-scroll.js +34 -0
- package/dist/components/editor/index.d.ts +15 -0
- package/dist/components/editor/index.js +21 -0
- package/dist/components/editor/languages.d.ts +62 -0
- package/dist/components/editor/languages.js +285 -0
- package/dist/components/editor/theme.d.ts +88 -0
- package/dist/components/editor/theme.js +139 -0
- package/dist/components/editor/tokenizer/base.d.ts +40 -0
- package/dist/components/editor/tokenizer/base.js +203 -0
- package/dist/components/editor/tokenizer/index.d.ts +56 -0
- package/dist/components/editor/tokenizer/index.js +215 -0
- package/dist/components/editor/tokenizer/languages/css.d.ts +17 -0
- package/dist/components/editor/tokenizer/languages/css.js +194 -0
- package/dist/components/editor/tokenizer/languages/go.d.ts +17 -0
- package/dist/components/editor/tokenizer/languages/go.js +220 -0
- package/dist/components/editor/tokenizer/languages/html.d.ts +24 -0
- package/dist/components/editor/tokenizer/languages/html.js +145 -0
- package/dist/components/editor/tokenizer/languages/javascript.d.ts +56 -0
- package/dist/components/editor/tokenizer/languages/javascript.js +452 -0
- package/dist/components/editor/tokenizer/languages/json.d.ts +12 -0
- package/dist/components/editor/tokenizer/languages/json.js +91 -0
- package/dist/components/editor/tokenizer/languages/markdown.d.ts +16 -0
- package/dist/components/editor/tokenizer/languages/markdown.js +156 -0
- package/dist/components/editor/tokenizer/languages/python.d.ts +20 -0
- package/dist/components/editor/tokenizer/languages/python.js +227 -0
- package/dist/components/editor/tokenizer/languages/svelte.d.ts +40 -0
- package/dist/components/editor/tokenizer/languages/svelte.js +326 -0
- package/dist/components/editor/tokenizer/types.d.ts +86 -0
- package/dist/components/editor/tokenizer/types.js +4 -0
- package/dist/components/layout/IDELayout.svelte +274 -0
- package/dist/components/layout/IDELayout.svelte.d.ts +29 -0
- package/dist/components/layout/StatusBar.svelte +511 -0
- package/dist/components/layout/StatusBar.svelte.d.ts +47 -0
- package/dist/components/layout/index.d.ts +2 -0
- package/dist/components/layout/index.js +3 -0
- package/dist/components/lsp/AutocompleteWidget.svelte +364 -0
- package/dist/components/lsp/AutocompleteWidget.svelte.d.ts +33 -0
- package/dist/components/lsp/DiagnosticMarker.svelte +166 -0
- package/dist/components/lsp/DiagnosticMarker.svelte.d.ts +19 -0
- package/dist/components/lsp/DiagnosticsPanel.svelte +388 -0
- package/dist/components/lsp/DiagnosticsPanel.svelte.d.ts +21 -0
- package/dist/components/lsp/HoverTooltip.svelte +274 -0
- package/dist/components/lsp/HoverTooltip.svelte.d.ts +24 -0
- package/dist/components/lsp/LSPEditor.svelte +486 -0
- package/dist/components/lsp/LSPEditor.svelte.d.ts +39 -0
- package/dist/components/lsp/SignatureHelpWidget.svelte +216 -0
- package/dist/components/lsp/SignatureHelpWidget.svelte.d.ts +22 -0
- package/dist/components/lsp/index.d.ts +6 -0
- package/dist/components/lsp/index.js +7 -0
- package/dist/components/plugins/PluginCard.svelte +153 -0
- package/dist/components/plugins/PluginCard.svelte.d.ts +19 -0
- package/dist/components/plugins/PluginPanel.svelte +280 -0
- package/dist/components/plugins/PluginPanel.svelte.d.ts +8 -0
- package/dist/components/plugins/PluginProposalForm.svelte +250 -0
- package/dist/components/plugins/PluginProposalForm.svelte.d.ts +6 -0
- package/dist/components/plugins/PluginStatusBadge.svelte +14 -0
- package/dist/components/plugins/PluginStatusBadge.svelte.d.ts +8 -0
- package/dist/components/plugins/index.d.ts +4 -0
- package/dist/components/plugins/index.js +5 -0
- package/dist/components/vfs/LockConflictDialog.svelte +705 -0
- package/dist/components/vfs/LockConflictDialog.svelte.d.ts +21 -0
- package/dist/components/vfs/LockIndicator.svelte +194 -0
- package/dist/components/vfs/LockIndicator.svelte.d.ts +29 -0
- package/dist/components/vfs/LockOverlay.svelte +344 -0
- package/dist/components/vfs/LockOverlay.svelte.d.ts +17 -0
- package/dist/components/vfs/VersionConflictDialog.svelte +549 -0
- package/dist/components/vfs/VersionConflictDialog.svelte.d.ts +24 -0
- package/dist/components/vfs/index.d.ts +4 -0
- package/dist/components/vfs/index.js +5 -0
- package/dist/crdt/awareness.d.ts +42 -0
- package/dist/crdt/awareness.js +109 -0
- package/dist/crdt/document.d.ts +101 -0
- package/dist/crdt/document.js +187 -0
- package/dist/crdt/index.d.ts +9 -0
- package/dist/crdt/index.js +8 -0
- package/dist/crdt/provider.d.ts +85 -0
- package/dist/crdt/provider.js +150 -0
- package/dist/crdt/types.d.ts +61 -0
- package/dist/crdt/types.js +4 -0
- package/dist/crdt/undo.d.ts +34 -0
- package/dist/crdt/undo.js +70 -0
- package/dist/index.d.ts +277 -0
- package/dist/index.js +280 -0
- package/dist/plugins/index.d.ts +103 -0
- package/dist/plugins/index.js +153 -0
- package/dist/services/error-handling.d.ts +95 -0
- package/dist/services/error-handling.js +413 -0
- package/dist/services/ide-integration.d.ts +83 -0
- package/dist/services/ide-integration.js +367 -0
- package/dist/services/lsp-client.d.ts +69 -0
- package/dist/services/lsp-client.js +667 -0
- package/dist/services/mock-ai.d.ts +37 -0
- package/dist/services/mock-ai.js +318 -0
- package/dist/services/optimistic.d.ts +141 -0
- package/dist/services/optimistic.js +367 -0
- package/dist/services/vfs-client.d.ts +81 -0
- package/dist/services/vfs-client.js +348 -0
- package/dist/stores/agents.svelte.d.ts +85 -0
- package/dist/stores/agents.svelte.js +459 -0
- package/dist/stores/ai-persistence.svelte.d.ts +76 -0
- package/dist/stores/ai-persistence.svelte.js +334 -0
- package/dist/stores/ai.svelte.d.ts +140 -0
- package/dist/stores/ai.svelte.js +383 -0
- package/dist/stores/collaboration.svelte.d.ts +164 -0
- package/dist/stores/collaboration.svelte.js +334 -0
- package/dist/stores/editor.svelte.d.ts +131 -0
- package/dist/stores/editor.svelte.js +250 -0
- package/dist/stores/index.d.ts +10 -0
- package/dist/stores/index.js +29 -0
- package/dist/stores/layout.svelte.d.ts +171 -0
- package/dist/stores/layout.svelte.js +351 -0
- package/dist/stores/plugin.svelte.d.ts +121 -0
- package/dist/stores/plugin.svelte.js +410 -0
- package/dist/stores/vfs.svelte.d.ts +123 -0
- package/dist/stores/vfs.svelte.js +680 -0
- package/dist/styles/theme.css +623 -0
- package/dist/types/agents.d.ts +127 -0
- package/dist/types/agents.js +5 -0
- package/dist/types/ai.d.ts +137 -0
- package/dist/types/ai.js +4 -0
- package/dist/types/crdt.d.ts +222 -0
- package/dist/types/crdt.js +5 -0
- package/dist/types/editor.d.ts +52 -0
- package/dist/types/editor.js +18 -0
- package/dist/types/events.d.ts +133 -0
- package/dist/types/events.js +4 -0
- package/dist/types/filesystem.d.ts +77 -0
- package/dist/types/filesystem.js +4 -0
- package/dist/types/index.d.ts +9 -0
- package/dist/types/index.js +12 -0
- package/dist/types/lsp.d.ts +691 -0
- package/dist/types/lsp.js +108 -0
- package/dist/types/plugin.d.ts +239 -0
- package/dist/types/plugin.js +5 -0
- package/dist/types/vfs.d.ts +191 -0
- package/dist/types/vfs.js +18 -0
- package/dist/utils/format.d.ts +55 -0
- package/dist/utils/format.js +152 -0
- package/dist/utils/index.d.ts +3 -0
- package/dist/utils/index.js +4 -0
- package/dist/utils/keybindings.d.ts +33 -0
- package/dist/utils/keybindings.js +171 -0
- package/dist/utils/language.d.ts +27 -0
- package/dist/utils/language.js +222 -0
- package/package.json +178 -0
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Store exports with namespacing to avoid conflicts
|
|
3
|
+
*/
|
|
4
|
+
export { tabs, activeTabId, activeTab, splitMode, preferences, recentFiles, loading, dirtyTabs, hasDirtyTabs, openFile, closeTab, forceCloseTab, closeAllTabs, closeOtherTabs, setActiveTab, updateContent, markSaved, reorderTabs, setSplitMode, updatePreferences, resetPreferences, getTab, getTabByPath, nextTab, prevTab, setLoading, error as editorError, setError as setEditorError, updateCursor as updateEditorCursor, setAIEditing } from './editor.svelte';
|
|
5
|
+
export { conversations, activeConversationId, activeConversation, messages, tools, editSessions, activeEditSessions, suggestions, isStreaming, isPanelOpen, createConversation, setActiveConversation, deleteConversation, addMessage, updateMessage, sendMessage, registerTool, unregisterTool, updateConfig, togglePanel, openPanel, closePanel, startEditSession, updateEditSession, completeEditSession, resolveEditSession, addSuggestion, removeSuggestion, clearSuggestions, updateContext, config as aiConfig, error as aiError, clearError as clearAIError } from './ai.svelte';
|
|
6
|
+
export { proposals, instances, activeInstances, commands, panels, connected, loadingProposals, loadingInstance, draftProposals, reviewingProposals, deployedProposals, connect, fetchProposals, createProposal, submitProposal, loadPlugin, unloadPlugin, registerCommand, registerPanel, executeCommand, getProposal, getInstance, clearError as clearPluginError, error as pluginError, disconnect as disconnectPlugins, onEvent as onPluginEvent } from './plugin.svelte';
|
|
7
|
+
export { status, synced, users, cursors, awareness, aiSessions, activeAISessions, pendingChanges, snapshots, localUser, isConnected, otherUsers, initialize, setStatus, setSynced, addUser, removeUser, updateAwareness, setLocalCursor, setLocalAwareness, startAISession, updateAISession, setAITask, proposeAIChange, reviewAIChange, completeAISession, cancelAISession, createSnapshot, getDocumentSnapshots, reset, getUserColor, config as collabConfig, error as collabError, updateCursor as updateCollabCursor, disconnect as disconnectCollab, onEvent as onCollabEvent } from './collaboration.svelte';
|
|
8
|
+
export * from './layout.svelte';
|
|
9
|
+
export { workspace, workspaceLoading, files, fileTree, locks, dirtyFiles, activeTransactions, syncing, getWorkspace, getWorkspaceLoading, getFiles, getFileTree, getFile, getLocks, getLock, getLockStatus, isLocked, isLockedByMe, isLockedByOther, getMyLocks, getOtherLocks, getDirtyFiles, isDirty, getActiveTransactions, getTransactionHistory, getSyncing, getVersion, getReconnectAttempts, getLockedFiles, getMyLockedFiles, getDirectories, getFilesInDirectory, initialize as initializeVFS, loadWorkspace, updateFileInfo, removeFileInfo, markDirty, markClean, setFiles, setLock, removeLock, setLockStatus, setLocks, acquireLock, releaseLock, releaseAllMyLocks, startTransaction, completeTransaction, setSyncing, connected as vfsConnected, error as vfsError, clearError as clearVFSError, connect as connectVFS, disconnect as disconnectVFS, onEvent as onVFSEvent, reset as resetVFS } from './vfs.svelte';
|
|
10
|
+
export { agents, onlineAgents, busyAgents, events as agentEvents, activities, cursors as agentCursors, selectedAgent, filter as agentFilter, getAgents, getAgent, getOnlineAgents, getOfflineAgents, getBusyAgents, getStalledAgents, getAgentsByType, getAgentsWorkingOnFile, getEvents as getAgentEvents, getActivities, getActivitiesForAgent, getRecentActivities, getCursors as getAgentCursors, getCursor as getAgentCursor, getCursorsForFile, getSelectedAgent, getFilter as getAgentFilter, getFilteredAgents, getActiveTasksCount, getTotalProgress, getAgentCount, getOnlineCount, addAgent, removeAgent, updateAgent, setAgentStatus, setAgentTask, updateAgentProgress, completeAgentTask, updateCursor as updateAgentCursor, removeCursor as removeAgentCursor, clearCursorsForFile, addEvent as addAgentEvent, onTeamEvent, addActivity, selectAgent, setFilter as setAgentFilter, clearActivities, clearEvents as clearAgentEvents, handleVFSEvent, addMockAgents, connected as agentsConnected, error as agentsError, setConnected as setAgentsConnected, setError as setAgentsError, clearError as clearAgentsError, reset as resetAgents } from './agents.svelte';
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Store exports with namespacing to avoid conflicts
|
|
3
|
+
*/
|
|
4
|
+
// Editor store - namespaced exports
|
|
5
|
+
export { tabs, activeTabId, activeTab, splitMode, preferences, recentFiles, loading, dirtyTabs, hasDirtyTabs, openFile, closeTab, forceCloseTab, closeAllTabs, closeOtherTabs, setActiveTab, updateContent, markSaved, reorderTabs, setSplitMode, updatePreferences, resetPreferences, getTab, getTabByPath, nextTab, prevTab, setLoading,
|
|
6
|
+
// Renamed to avoid conflict
|
|
7
|
+
error as editorError, setError as setEditorError, updateCursor as updateEditorCursor, setAIEditing } from './editor.svelte';
|
|
8
|
+
// AI store
|
|
9
|
+
export { conversations, activeConversationId, activeConversation, messages, tools, editSessions, activeEditSessions, suggestions, isStreaming, isPanelOpen, createConversation, setActiveConversation, deleteConversation, addMessage, updateMessage, sendMessage, registerTool, unregisterTool, updateConfig, togglePanel, openPanel, closePanel, startEditSession, updateEditSession, completeEditSession, resolveEditSession, addSuggestion, removeSuggestion, clearSuggestions, updateContext,
|
|
10
|
+
// Renamed to avoid conflicts
|
|
11
|
+
config as aiConfig, error as aiError, clearError as clearAIError } from './ai.svelte';
|
|
12
|
+
// Plugin store
|
|
13
|
+
export { proposals, instances, activeInstances, commands, panels, connected, loadingProposals, loadingInstance, draftProposals, reviewingProposals, deployedProposals, connect, fetchProposals, createProposal, submitProposal, loadPlugin, unloadPlugin, registerCommand, registerPanel, executeCommand, getProposal, getInstance, clearError as clearPluginError,
|
|
14
|
+
// Renamed to avoid conflicts
|
|
15
|
+
error as pluginError, disconnect as disconnectPlugins, onEvent as onPluginEvent } from './plugin.svelte';
|
|
16
|
+
// Collaboration store
|
|
17
|
+
export { status, synced, users, cursors, awareness, aiSessions, activeAISessions, pendingChanges, snapshots, localUser, isConnected, otherUsers, initialize, setStatus, setSynced, addUser, removeUser, updateAwareness, setLocalCursor, setLocalAwareness, startAISession, updateAISession, setAITask, proposeAIChange, reviewAIChange, completeAISession, cancelAISession, createSnapshot, getDocumentSnapshots, reset, getUserColor,
|
|
18
|
+
// Renamed to avoid conflicts
|
|
19
|
+
config as collabConfig, error as collabError, updateCursor as updateCollabCursor, disconnect as disconnectCollab, onEvent as onCollabEvent } from './collaboration.svelte';
|
|
20
|
+
// Layout store - no conflicts
|
|
21
|
+
export * from './layout.svelte';
|
|
22
|
+
// VFS store
|
|
23
|
+
export { workspace, workspaceLoading, files, fileTree, locks, dirtyFiles, activeTransactions, syncing, getWorkspace, getWorkspaceLoading, getFiles, getFileTree, getFile, getLocks, getLock, getLockStatus, isLocked, isLockedByMe, isLockedByOther, getMyLocks, getOtherLocks, getDirtyFiles, isDirty, getActiveTransactions, getTransactionHistory, getSyncing, getVersion, getReconnectAttempts, getLockedFiles, getMyLockedFiles, getDirectories, getFilesInDirectory, initialize as initializeVFS, loadWorkspace, updateFileInfo, removeFileInfo, markDirty, markClean, setFiles, setLock, removeLock, setLockStatus, setLocks, acquireLock, releaseLock, releaseAllMyLocks, startTransaction, completeTransaction, setSyncing,
|
|
24
|
+
// Renamed to avoid conflicts
|
|
25
|
+
connected as vfsConnected, error as vfsError, clearError as clearVFSError, connect as connectVFS, disconnect as disconnectVFS, onEvent as onVFSEvent, reset as resetVFS } from './vfs.svelte';
|
|
26
|
+
// Agents store
|
|
27
|
+
export { agents, onlineAgents, busyAgents, events as agentEvents, activities, cursors as agentCursors, selectedAgent, filter as agentFilter, getAgents, getAgent, getOnlineAgents, getOfflineAgents, getBusyAgents, getStalledAgents, getAgentsByType, getAgentsWorkingOnFile, getEvents as getAgentEvents, getActivities, getActivitiesForAgent, getRecentActivities, getCursors as getAgentCursors, getCursor as getAgentCursor, getCursorsForFile, getSelectedAgent, getFilter as getAgentFilter, getFilteredAgents, getActiveTasksCount, getTotalProgress, getAgentCount, getOnlineCount, addAgent, removeAgent, updateAgent, setAgentStatus, setAgentTask, updateAgentProgress, completeAgentTask, updateCursor as updateAgentCursor, removeCursor as removeAgentCursor, clearCursorsForFile, addEvent as addAgentEvent, onTeamEvent, addActivity, selectAgent, setFilter as setAgentFilter, clearActivities, clearEvents as clearAgentEvents, handleVFSEvent, addMockAgents,
|
|
28
|
+
// Renamed to avoid conflicts
|
|
29
|
+
connected as agentsConnected, error as agentsError, setConnected as setAgentsConnected, setError as setAgentsError, clearError as clearAgentsError, reset as resetAgents } from './agents.svelte';
|
|
@@ -0,0 +1,171 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Layout store using Svelte 5 runes
|
|
3
|
+
* Manages IDE panel visibility and sizes
|
|
4
|
+
*
|
|
5
|
+
* Note: Svelte 5 modules cannot directly export $derived values.
|
|
6
|
+
* We use getter functions to expose reactive derived state.
|
|
7
|
+
*/
|
|
8
|
+
export declare function getLeftSidebarVisible(): boolean;
|
|
9
|
+
export declare function getLeftSidebarWidth(): number;
|
|
10
|
+
export declare function getLeftSidebarActivePanel(): string;
|
|
11
|
+
export declare function getRightSidebarVisible(): boolean;
|
|
12
|
+
export declare function getRightSidebarWidth(): number;
|
|
13
|
+
export declare function getRightSidebarActivePanel(): string;
|
|
14
|
+
export declare function getBottomPanelVisible(): boolean;
|
|
15
|
+
export declare function getBottomPanelHeight(): number;
|
|
16
|
+
export declare function getBottomPanelActiveTab(): string;
|
|
17
|
+
export declare function getActivityBarPosition(): 'left' | 'hidden';
|
|
18
|
+
export declare function getStatusBarVisible(): boolean;
|
|
19
|
+
export declare function getIsFullScreen(): boolean;
|
|
20
|
+
export declare function getZenMode(): boolean;
|
|
21
|
+
export declare function getCommandPaletteOpen(): boolean;
|
|
22
|
+
export declare function getSearchPanelOpen(): boolean;
|
|
23
|
+
export declare function getSettingsOpen(): boolean;
|
|
24
|
+
export declare function getEditorAreaStyle(): {
|
|
25
|
+
marginLeft: string;
|
|
26
|
+
marginRight: string;
|
|
27
|
+
marginBottom: string;
|
|
28
|
+
};
|
|
29
|
+
/**
|
|
30
|
+
* Toggle left sidebar visibility
|
|
31
|
+
*/
|
|
32
|
+
export declare function toggleLeftSidebar(): void;
|
|
33
|
+
/**
|
|
34
|
+
* Show left sidebar
|
|
35
|
+
*/
|
|
36
|
+
export declare function showLeftSidebar(): void;
|
|
37
|
+
/**
|
|
38
|
+
* Hide left sidebar
|
|
39
|
+
*/
|
|
40
|
+
export declare function hideLeftSidebar(): void;
|
|
41
|
+
/**
|
|
42
|
+
* Set left sidebar width
|
|
43
|
+
*/
|
|
44
|
+
export declare function setLeftSidebarWidth(width: number): void;
|
|
45
|
+
/**
|
|
46
|
+
* Set left sidebar active panel
|
|
47
|
+
*/
|
|
48
|
+
export declare function setLeftSidebarPanel(panel: string): void;
|
|
49
|
+
/**
|
|
50
|
+
* Toggle right sidebar visibility
|
|
51
|
+
*/
|
|
52
|
+
export declare function toggleRightSidebar(): void;
|
|
53
|
+
/**
|
|
54
|
+
* Show right sidebar
|
|
55
|
+
*/
|
|
56
|
+
export declare function showRightSidebar(): void;
|
|
57
|
+
/**
|
|
58
|
+
* Hide right sidebar
|
|
59
|
+
*/
|
|
60
|
+
export declare function hideRightSidebar(): void;
|
|
61
|
+
/**
|
|
62
|
+
* Set right sidebar width
|
|
63
|
+
*/
|
|
64
|
+
export declare function setRightSidebarWidth(width: number): void;
|
|
65
|
+
/**
|
|
66
|
+
* Set right sidebar active panel
|
|
67
|
+
*/
|
|
68
|
+
export declare function setRightSidebarPanel(panel: string): void;
|
|
69
|
+
/**
|
|
70
|
+
* Toggle bottom panel visibility
|
|
71
|
+
*/
|
|
72
|
+
export declare function toggleBottomPanel(): void;
|
|
73
|
+
/**
|
|
74
|
+
* Show bottom panel
|
|
75
|
+
*/
|
|
76
|
+
export declare function showBottomPanel(): void;
|
|
77
|
+
/**
|
|
78
|
+
* Hide bottom panel
|
|
79
|
+
*/
|
|
80
|
+
export declare function hideBottomPanel(): void;
|
|
81
|
+
/**
|
|
82
|
+
* Set bottom panel height
|
|
83
|
+
*/
|
|
84
|
+
export declare function setBottomPanelHeight(height: number): void;
|
|
85
|
+
/**
|
|
86
|
+
* Set bottom panel active tab
|
|
87
|
+
*/
|
|
88
|
+
export declare function setBottomPanelTab(tab: string): void;
|
|
89
|
+
/**
|
|
90
|
+
* Toggle activity bar visibility
|
|
91
|
+
*/
|
|
92
|
+
export declare function toggleActivityBar(): void;
|
|
93
|
+
/**
|
|
94
|
+
* Toggle status bar visibility
|
|
95
|
+
*/
|
|
96
|
+
export declare function toggleStatusBar(): void;
|
|
97
|
+
/**
|
|
98
|
+
* Toggle full screen mode
|
|
99
|
+
*/
|
|
100
|
+
export declare function toggleFullScreen(): void;
|
|
101
|
+
/**
|
|
102
|
+
* Toggle zen mode (distraction-free editing)
|
|
103
|
+
*/
|
|
104
|
+
export declare function toggleZenMode(): void;
|
|
105
|
+
/**
|
|
106
|
+
* Exit zen mode
|
|
107
|
+
*/
|
|
108
|
+
export declare function exitZenMode(): void;
|
|
109
|
+
/**
|
|
110
|
+
* Open command palette
|
|
111
|
+
*/
|
|
112
|
+
export declare function openCommandPalette(): void;
|
|
113
|
+
/**
|
|
114
|
+
* Close command palette
|
|
115
|
+
*/
|
|
116
|
+
export declare function closeCommandPalette(): void;
|
|
117
|
+
/**
|
|
118
|
+
* Toggle command palette
|
|
119
|
+
*/
|
|
120
|
+
export declare function toggleCommandPalette(): void;
|
|
121
|
+
/**
|
|
122
|
+
* Open search panel
|
|
123
|
+
*/
|
|
124
|
+
export declare function openSearchPanel(): void;
|
|
125
|
+
/**
|
|
126
|
+
* Close search panel
|
|
127
|
+
*/
|
|
128
|
+
export declare function closeSearchPanel(): void;
|
|
129
|
+
/**
|
|
130
|
+
* Toggle search panel
|
|
131
|
+
*/
|
|
132
|
+
export declare function toggleSearchPanel(): void;
|
|
133
|
+
/**
|
|
134
|
+
* Open settings
|
|
135
|
+
*/
|
|
136
|
+
export declare function openSettings(): void;
|
|
137
|
+
/**
|
|
138
|
+
* Close settings
|
|
139
|
+
*/
|
|
140
|
+
export declare function closeSettings(): void;
|
|
141
|
+
/**
|
|
142
|
+
* Toggle settings
|
|
143
|
+
*/
|
|
144
|
+
export declare function toggleSettings(): void;
|
|
145
|
+
/**
|
|
146
|
+
* Reset layout to defaults
|
|
147
|
+
*/
|
|
148
|
+
export declare function resetLayout(): void;
|
|
149
|
+
/**
|
|
150
|
+
* Focus the AI panel
|
|
151
|
+
*/
|
|
152
|
+
export declare function focusAIPanel(): void;
|
|
153
|
+
/**
|
|
154
|
+
* Focus the explorer panel
|
|
155
|
+
*/
|
|
156
|
+
export declare function focusExplorer(): void;
|
|
157
|
+
/**
|
|
158
|
+
* Focus the terminal
|
|
159
|
+
*/
|
|
160
|
+
export declare function focusTerminal(): void;
|
|
161
|
+
/**
|
|
162
|
+
* Get layout constraints
|
|
163
|
+
*/
|
|
164
|
+
export declare const constraints: {
|
|
165
|
+
sidebarMinWidth: number;
|
|
166
|
+
sidebarMaxWidth: number;
|
|
167
|
+
sidebarDefaultWidth: number;
|
|
168
|
+
panelMinHeight: number;
|
|
169
|
+
panelMaxHeight: number;
|
|
170
|
+
panelDefaultHeight: number;
|
|
171
|
+
};
|
|
@@ -0,0 +1,351 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Layout store using Svelte 5 runes
|
|
3
|
+
* Manages IDE panel visibility and sizes
|
|
4
|
+
*
|
|
5
|
+
* Note: Svelte 5 modules cannot directly export $derived values.
|
|
6
|
+
* We use getter functions to expose reactive derived state.
|
|
7
|
+
*/
|
|
8
|
+
// Default sizes
|
|
9
|
+
const SIDEBAR_DEFAULT_WIDTH = 260;
|
|
10
|
+
const SIDEBAR_MIN_WIDTH = 180;
|
|
11
|
+
const SIDEBAR_MAX_WIDTH = 500;
|
|
12
|
+
const PANEL_DEFAULT_HEIGHT = 200;
|
|
13
|
+
const PANEL_MIN_HEIGHT = 100;
|
|
14
|
+
const PANEL_MAX_HEIGHT = 500;
|
|
15
|
+
// Reactive state
|
|
16
|
+
let state = $state({
|
|
17
|
+
leftSidebarVisible: true,
|
|
18
|
+
leftSidebarWidth: SIDEBAR_DEFAULT_WIDTH,
|
|
19
|
+
leftSidebarActivePanel: 'explorer',
|
|
20
|
+
rightSidebarVisible: false,
|
|
21
|
+
rightSidebarWidth: SIDEBAR_DEFAULT_WIDTH,
|
|
22
|
+
rightSidebarActivePanel: 'ai',
|
|
23
|
+
bottomPanelVisible: false,
|
|
24
|
+
bottomPanelHeight: PANEL_DEFAULT_HEIGHT,
|
|
25
|
+
bottomPanelActiveTab: 'terminal',
|
|
26
|
+
activityBarPosition: 'left',
|
|
27
|
+
statusBarVisible: true,
|
|
28
|
+
isFullScreen: false,
|
|
29
|
+
zenMode: false,
|
|
30
|
+
commandPaletteOpen: false,
|
|
31
|
+
searchPanelOpen: false,
|
|
32
|
+
settingsOpen: false
|
|
33
|
+
});
|
|
34
|
+
// Getter functions for derived values (Svelte 5 module-safe)
|
|
35
|
+
export function getLeftSidebarVisible() {
|
|
36
|
+
return state.leftSidebarVisible && !state.zenMode;
|
|
37
|
+
}
|
|
38
|
+
export function getLeftSidebarWidth() {
|
|
39
|
+
return state.leftSidebarWidth;
|
|
40
|
+
}
|
|
41
|
+
export function getLeftSidebarActivePanel() {
|
|
42
|
+
return state.leftSidebarActivePanel;
|
|
43
|
+
}
|
|
44
|
+
export function getRightSidebarVisible() {
|
|
45
|
+
return state.rightSidebarVisible && !state.zenMode;
|
|
46
|
+
}
|
|
47
|
+
export function getRightSidebarWidth() {
|
|
48
|
+
return state.rightSidebarWidth;
|
|
49
|
+
}
|
|
50
|
+
export function getRightSidebarActivePanel() {
|
|
51
|
+
return state.rightSidebarActivePanel;
|
|
52
|
+
}
|
|
53
|
+
export function getBottomPanelVisible() {
|
|
54
|
+
return state.bottomPanelVisible && !state.zenMode;
|
|
55
|
+
}
|
|
56
|
+
export function getBottomPanelHeight() {
|
|
57
|
+
return state.bottomPanelHeight;
|
|
58
|
+
}
|
|
59
|
+
export function getBottomPanelActiveTab() {
|
|
60
|
+
return state.bottomPanelActiveTab;
|
|
61
|
+
}
|
|
62
|
+
export function getActivityBarPosition() {
|
|
63
|
+
return state.activityBarPosition;
|
|
64
|
+
}
|
|
65
|
+
export function getStatusBarVisible() {
|
|
66
|
+
return state.statusBarVisible && !state.zenMode;
|
|
67
|
+
}
|
|
68
|
+
export function getIsFullScreen() {
|
|
69
|
+
return state.isFullScreen;
|
|
70
|
+
}
|
|
71
|
+
export function getZenMode() {
|
|
72
|
+
return state.zenMode;
|
|
73
|
+
}
|
|
74
|
+
export function getCommandPaletteOpen() {
|
|
75
|
+
return state.commandPaletteOpen;
|
|
76
|
+
}
|
|
77
|
+
export function getSearchPanelOpen() {
|
|
78
|
+
return state.searchPanelOpen;
|
|
79
|
+
}
|
|
80
|
+
export function getSettingsOpen() {
|
|
81
|
+
return state.settingsOpen;
|
|
82
|
+
}
|
|
83
|
+
// Computed editor area dimensions
|
|
84
|
+
export function getEditorAreaStyle() {
|
|
85
|
+
const left = state.leftSidebarVisible && !state.zenMode ? state.leftSidebarWidth : 0;
|
|
86
|
+
const right = state.rightSidebarVisible && !state.zenMode ? state.rightSidebarWidth : 0;
|
|
87
|
+
const bottom = state.bottomPanelVisible && !state.zenMode ? state.bottomPanelHeight : 0;
|
|
88
|
+
const activityBar = state.activityBarPosition === 'left' && !state.zenMode ? 48 : 0;
|
|
89
|
+
const statusBar = state.statusBarVisible && !state.zenMode ? 24 : 0;
|
|
90
|
+
return {
|
|
91
|
+
marginLeft: `${activityBar + left}px`,
|
|
92
|
+
marginRight: `${right}px`,
|
|
93
|
+
marginBottom: `${bottom + statusBar}px`
|
|
94
|
+
};
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
* Toggle left sidebar visibility
|
|
98
|
+
*/
|
|
99
|
+
export function toggleLeftSidebar() {
|
|
100
|
+
state.leftSidebarVisible = !state.leftSidebarVisible;
|
|
101
|
+
}
|
|
102
|
+
/**
|
|
103
|
+
* Show left sidebar
|
|
104
|
+
*/
|
|
105
|
+
export function showLeftSidebar() {
|
|
106
|
+
state.leftSidebarVisible = true;
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* Hide left sidebar
|
|
110
|
+
*/
|
|
111
|
+
export function hideLeftSidebar() {
|
|
112
|
+
state.leftSidebarVisible = false;
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* Set left sidebar width
|
|
116
|
+
*/
|
|
117
|
+
export function setLeftSidebarWidth(width) {
|
|
118
|
+
state.leftSidebarWidth = Math.max(SIDEBAR_MIN_WIDTH, Math.min(SIDEBAR_MAX_WIDTH, width));
|
|
119
|
+
}
|
|
120
|
+
/**
|
|
121
|
+
* Set left sidebar active panel
|
|
122
|
+
*/
|
|
123
|
+
export function setLeftSidebarPanel(panel) {
|
|
124
|
+
if (state.leftSidebarActivePanel === panel && state.leftSidebarVisible) {
|
|
125
|
+
// Toggle off if clicking same panel
|
|
126
|
+
state.leftSidebarVisible = false;
|
|
127
|
+
}
|
|
128
|
+
else {
|
|
129
|
+
state.leftSidebarActivePanel = panel;
|
|
130
|
+
state.leftSidebarVisible = true;
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
/**
|
|
134
|
+
* Toggle right sidebar visibility
|
|
135
|
+
*/
|
|
136
|
+
export function toggleRightSidebar() {
|
|
137
|
+
state.rightSidebarVisible = !state.rightSidebarVisible;
|
|
138
|
+
}
|
|
139
|
+
/**
|
|
140
|
+
* Show right sidebar
|
|
141
|
+
*/
|
|
142
|
+
export function showRightSidebar() {
|
|
143
|
+
state.rightSidebarVisible = true;
|
|
144
|
+
}
|
|
145
|
+
/**
|
|
146
|
+
* Hide right sidebar
|
|
147
|
+
*/
|
|
148
|
+
export function hideRightSidebar() {
|
|
149
|
+
state.rightSidebarVisible = false;
|
|
150
|
+
}
|
|
151
|
+
/**
|
|
152
|
+
* Set right sidebar width
|
|
153
|
+
*/
|
|
154
|
+
export function setRightSidebarWidth(width) {
|
|
155
|
+
state.rightSidebarWidth = Math.max(SIDEBAR_MIN_WIDTH, Math.min(SIDEBAR_MAX_WIDTH, width));
|
|
156
|
+
}
|
|
157
|
+
/**
|
|
158
|
+
* Set right sidebar active panel
|
|
159
|
+
*/
|
|
160
|
+
export function setRightSidebarPanel(panel) {
|
|
161
|
+
if (state.rightSidebarActivePanel === panel && state.rightSidebarVisible) {
|
|
162
|
+
state.rightSidebarVisible = false;
|
|
163
|
+
}
|
|
164
|
+
else {
|
|
165
|
+
state.rightSidebarActivePanel = panel;
|
|
166
|
+
state.rightSidebarVisible = true;
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
/**
|
|
170
|
+
* Toggle bottom panel visibility
|
|
171
|
+
*/
|
|
172
|
+
export function toggleBottomPanel() {
|
|
173
|
+
state.bottomPanelVisible = !state.bottomPanelVisible;
|
|
174
|
+
}
|
|
175
|
+
/**
|
|
176
|
+
* Show bottom panel
|
|
177
|
+
*/
|
|
178
|
+
export function showBottomPanel() {
|
|
179
|
+
state.bottomPanelVisible = true;
|
|
180
|
+
}
|
|
181
|
+
/**
|
|
182
|
+
* Hide bottom panel
|
|
183
|
+
*/
|
|
184
|
+
export function hideBottomPanel() {
|
|
185
|
+
state.bottomPanelVisible = false;
|
|
186
|
+
}
|
|
187
|
+
/**
|
|
188
|
+
* Set bottom panel height
|
|
189
|
+
*/
|
|
190
|
+
export function setBottomPanelHeight(height) {
|
|
191
|
+
state.bottomPanelHeight = Math.max(PANEL_MIN_HEIGHT, Math.min(PANEL_MAX_HEIGHT, height));
|
|
192
|
+
}
|
|
193
|
+
/**
|
|
194
|
+
* Set bottom panel active tab
|
|
195
|
+
*/
|
|
196
|
+
export function setBottomPanelTab(tab) {
|
|
197
|
+
if (state.bottomPanelActiveTab === tab && state.bottomPanelVisible) {
|
|
198
|
+
state.bottomPanelVisible = false;
|
|
199
|
+
}
|
|
200
|
+
else {
|
|
201
|
+
state.bottomPanelActiveTab = tab;
|
|
202
|
+
state.bottomPanelVisible = true;
|
|
203
|
+
}
|
|
204
|
+
}
|
|
205
|
+
/**
|
|
206
|
+
* Toggle activity bar visibility
|
|
207
|
+
*/
|
|
208
|
+
export function toggleActivityBar() {
|
|
209
|
+
state.activityBarPosition = state.activityBarPosition === 'left' ? 'hidden' : 'left';
|
|
210
|
+
}
|
|
211
|
+
/**
|
|
212
|
+
* Toggle status bar visibility
|
|
213
|
+
*/
|
|
214
|
+
export function toggleStatusBar() {
|
|
215
|
+
state.statusBarVisible = !state.statusBarVisible;
|
|
216
|
+
}
|
|
217
|
+
/**
|
|
218
|
+
* Toggle full screen mode
|
|
219
|
+
*/
|
|
220
|
+
export function toggleFullScreen() {
|
|
221
|
+
state.isFullScreen = !state.isFullScreen;
|
|
222
|
+
if (state.isFullScreen) {
|
|
223
|
+
document.documentElement.requestFullscreen?.();
|
|
224
|
+
}
|
|
225
|
+
else {
|
|
226
|
+
document.exitFullscreen?.();
|
|
227
|
+
}
|
|
228
|
+
}
|
|
229
|
+
/**
|
|
230
|
+
* Toggle zen mode (distraction-free editing)
|
|
231
|
+
*/
|
|
232
|
+
export function toggleZenMode() {
|
|
233
|
+
state.zenMode = !state.zenMode;
|
|
234
|
+
}
|
|
235
|
+
/**
|
|
236
|
+
* Exit zen mode
|
|
237
|
+
*/
|
|
238
|
+
export function exitZenMode() {
|
|
239
|
+
state.zenMode = false;
|
|
240
|
+
}
|
|
241
|
+
/**
|
|
242
|
+
* Open command palette
|
|
243
|
+
*/
|
|
244
|
+
export function openCommandPalette() {
|
|
245
|
+
state.commandPaletteOpen = true;
|
|
246
|
+
}
|
|
247
|
+
/**
|
|
248
|
+
* Close command palette
|
|
249
|
+
*/
|
|
250
|
+
export function closeCommandPalette() {
|
|
251
|
+
state.commandPaletteOpen = false;
|
|
252
|
+
}
|
|
253
|
+
/**
|
|
254
|
+
* Toggle command palette
|
|
255
|
+
*/
|
|
256
|
+
export function toggleCommandPalette() {
|
|
257
|
+
state.commandPaletteOpen = !state.commandPaletteOpen;
|
|
258
|
+
}
|
|
259
|
+
/**
|
|
260
|
+
* Open search panel
|
|
261
|
+
*/
|
|
262
|
+
export function openSearchPanel() {
|
|
263
|
+
state.searchPanelOpen = true;
|
|
264
|
+
state.leftSidebarActivePanel = 'search';
|
|
265
|
+
state.leftSidebarVisible = true;
|
|
266
|
+
}
|
|
267
|
+
/**
|
|
268
|
+
* Close search panel
|
|
269
|
+
*/
|
|
270
|
+
export function closeSearchPanel() {
|
|
271
|
+
state.searchPanelOpen = false;
|
|
272
|
+
}
|
|
273
|
+
/**
|
|
274
|
+
* Toggle search panel
|
|
275
|
+
*/
|
|
276
|
+
export function toggleSearchPanel() {
|
|
277
|
+
if (state.searchPanelOpen) {
|
|
278
|
+
closeSearchPanel();
|
|
279
|
+
}
|
|
280
|
+
else {
|
|
281
|
+
openSearchPanel();
|
|
282
|
+
}
|
|
283
|
+
}
|
|
284
|
+
/**
|
|
285
|
+
* Open settings
|
|
286
|
+
*/
|
|
287
|
+
export function openSettings() {
|
|
288
|
+
state.settingsOpen = true;
|
|
289
|
+
}
|
|
290
|
+
/**
|
|
291
|
+
* Close settings
|
|
292
|
+
*/
|
|
293
|
+
export function closeSettings() {
|
|
294
|
+
state.settingsOpen = false;
|
|
295
|
+
}
|
|
296
|
+
/**
|
|
297
|
+
* Toggle settings
|
|
298
|
+
*/
|
|
299
|
+
export function toggleSettings() {
|
|
300
|
+
state.settingsOpen = !state.settingsOpen;
|
|
301
|
+
}
|
|
302
|
+
/**
|
|
303
|
+
* Reset layout to defaults
|
|
304
|
+
*/
|
|
305
|
+
export function resetLayout() {
|
|
306
|
+
state.leftSidebarVisible = true;
|
|
307
|
+
state.leftSidebarWidth = SIDEBAR_DEFAULT_WIDTH;
|
|
308
|
+
state.leftSidebarActivePanel = 'explorer';
|
|
309
|
+
state.rightSidebarVisible = false;
|
|
310
|
+
state.rightSidebarWidth = SIDEBAR_DEFAULT_WIDTH;
|
|
311
|
+
state.rightSidebarActivePanel = 'ai';
|
|
312
|
+
state.bottomPanelVisible = false;
|
|
313
|
+
state.bottomPanelHeight = PANEL_DEFAULT_HEIGHT;
|
|
314
|
+
state.bottomPanelActiveTab = 'terminal';
|
|
315
|
+
state.activityBarPosition = 'left';
|
|
316
|
+
state.statusBarVisible = true;
|
|
317
|
+
state.isFullScreen = false;
|
|
318
|
+
state.zenMode = false;
|
|
319
|
+
}
|
|
320
|
+
/**
|
|
321
|
+
* Focus the AI panel
|
|
322
|
+
*/
|
|
323
|
+
export function focusAIPanel() {
|
|
324
|
+
state.rightSidebarActivePanel = 'ai';
|
|
325
|
+
state.rightSidebarVisible = true;
|
|
326
|
+
}
|
|
327
|
+
/**
|
|
328
|
+
* Focus the explorer panel
|
|
329
|
+
*/
|
|
330
|
+
export function focusExplorer() {
|
|
331
|
+
state.leftSidebarActivePanel = 'explorer';
|
|
332
|
+
state.leftSidebarVisible = true;
|
|
333
|
+
}
|
|
334
|
+
/**
|
|
335
|
+
* Focus the terminal
|
|
336
|
+
*/
|
|
337
|
+
export function focusTerminal() {
|
|
338
|
+
state.bottomPanelActiveTab = 'terminal';
|
|
339
|
+
state.bottomPanelVisible = true;
|
|
340
|
+
}
|
|
341
|
+
/**
|
|
342
|
+
* Get layout constraints
|
|
343
|
+
*/
|
|
344
|
+
export const constraints = {
|
|
345
|
+
sidebarMinWidth: SIDEBAR_MIN_WIDTH,
|
|
346
|
+
sidebarMaxWidth: SIDEBAR_MAX_WIDTH,
|
|
347
|
+
sidebarDefaultWidth: SIDEBAR_DEFAULT_WIDTH,
|
|
348
|
+
panelMinHeight: PANEL_MIN_HEIGHT,
|
|
349
|
+
panelMaxHeight: PANEL_MAX_HEIGHT,
|
|
350
|
+
panelDefaultHeight: PANEL_DEFAULT_HEIGHT
|
|
351
|
+
};
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Plugin store using Svelte 5 runes.
|
|
3
|
+
*
|
|
4
|
+
* Manages the proposal-based plugin lifecycle (draft → review → testing →
|
|
5
|
+
* deployed) against a backend "plugin host". The host is expected to expose a
|
|
6
|
+
* REST + Server-Sent-Events API under a configurable base path (default
|
|
7
|
+
* `/api/plugins`); see {@link connect} and the fetch helpers below for the
|
|
8
|
+
* exact contract.
|
|
9
|
+
*
|
|
10
|
+
* Note: Svelte 5 modules cannot directly export $derived values.
|
|
11
|
+
* We use getter functions to expose reactive derived state.
|
|
12
|
+
*/
|
|
13
|
+
import type { PluginProposal, PluginInstance, PluginEvent, PluginCommand, PluginPanel } from '../types';
|
|
14
|
+
export declare function seedProposals(proposals: PluginProposal[]): void;
|
|
15
|
+
export declare function getProposals(): PluginProposal[];
|
|
16
|
+
export declare function getInstances(): PluginInstance[];
|
|
17
|
+
export declare function getActiveInstances(): PluginInstance[];
|
|
18
|
+
export declare function getCommands(): PluginCommand[];
|
|
19
|
+
export declare function getPanels(): PluginPanel[];
|
|
20
|
+
export declare function getConnected(): boolean;
|
|
21
|
+
export declare function getLoadingProposals(): boolean;
|
|
22
|
+
export declare function getLoadingInstance(): string | null;
|
|
23
|
+
export declare function getError(): string | null;
|
|
24
|
+
export declare function getDraftProposals(): PluginProposal[];
|
|
25
|
+
export declare function getReviewingProposals(): PluginProposal[];
|
|
26
|
+
export declare function getDeployedProposals(): PluginProposal[];
|
|
27
|
+
export declare const proposals: {
|
|
28
|
+
readonly current: PluginProposal[];
|
|
29
|
+
};
|
|
30
|
+
export declare const instances: {
|
|
31
|
+
readonly current: PluginInstance[];
|
|
32
|
+
};
|
|
33
|
+
export declare const activeInstances: {
|
|
34
|
+
readonly current: PluginInstance[];
|
|
35
|
+
};
|
|
36
|
+
export declare const commands: {
|
|
37
|
+
readonly current: PluginCommand[];
|
|
38
|
+
};
|
|
39
|
+
export declare const panels: {
|
|
40
|
+
readonly current: PluginPanel[];
|
|
41
|
+
};
|
|
42
|
+
export declare const connected: {
|
|
43
|
+
readonly current: boolean;
|
|
44
|
+
};
|
|
45
|
+
export declare const loadingProposals: {
|
|
46
|
+
readonly current: boolean;
|
|
47
|
+
};
|
|
48
|
+
export declare const loadingInstance: {
|
|
49
|
+
readonly current: string | null;
|
|
50
|
+
};
|
|
51
|
+
export declare const error: {
|
|
52
|
+
readonly current: string | null;
|
|
53
|
+
};
|
|
54
|
+
export declare const draftProposals: {
|
|
55
|
+
readonly current: PluginProposal[];
|
|
56
|
+
};
|
|
57
|
+
export declare const reviewingProposals: {
|
|
58
|
+
readonly current: PluginProposal[];
|
|
59
|
+
};
|
|
60
|
+
export declare const deployedProposals: {
|
|
61
|
+
readonly current: PluginProposal[];
|
|
62
|
+
};
|
|
63
|
+
/**
|
|
64
|
+
* Connect to the plugin host's Server-Sent-Events stream.
|
|
65
|
+
*
|
|
66
|
+
* @param endpoint - SSE endpoint on your plugin host. Defaults to
|
|
67
|
+
* `/api/plugins/stream` (same-origin).
|
|
68
|
+
*/
|
|
69
|
+
export declare function connect(endpoint?: string): void;
|
|
70
|
+
/**
|
|
71
|
+
* Disconnect from the event stream
|
|
72
|
+
*/
|
|
73
|
+
export declare function disconnect(): void;
|
|
74
|
+
/**
|
|
75
|
+
* Subscribe to plugin events
|
|
76
|
+
*/
|
|
77
|
+
export declare function onEvent(type: PluginEvent['type'] | '*', handler: (event: PluginEvent) => void): () => void;
|
|
78
|
+
/**
|
|
79
|
+
* Fetch all proposals from the server
|
|
80
|
+
*/
|
|
81
|
+
export declare function fetchProposals(): Promise<void>;
|
|
82
|
+
/**
|
|
83
|
+
* Create a new plugin proposal
|
|
84
|
+
*/
|
|
85
|
+
export declare function createProposal(proposal: Omit<PluginProposal, 'id' | 'version' | 'status' | 'votes' | 'issues' | 'createdAt' | 'updatedAt'>): Promise<string | null>;
|
|
86
|
+
/**
|
|
87
|
+
* Submit a proposal for review
|
|
88
|
+
*/
|
|
89
|
+
export declare function submitProposal(proposalId: string): Promise<boolean>;
|
|
90
|
+
/**
|
|
91
|
+
* Load and activate a deployed plugin
|
|
92
|
+
*/
|
|
93
|
+
export declare function loadPlugin(proposalId: string): Promise<boolean>;
|
|
94
|
+
/**
|
|
95
|
+
* Unload a plugin
|
|
96
|
+
*/
|
|
97
|
+
export declare function unloadPlugin(proposalId: string): void;
|
|
98
|
+
/**
|
|
99
|
+
* Register a command from a plugin
|
|
100
|
+
*/
|
|
101
|
+
export declare function registerCommand(pluginId: string, command: PluginCommand): void;
|
|
102
|
+
/**
|
|
103
|
+
* Register a panel from a plugin
|
|
104
|
+
*/
|
|
105
|
+
export declare function registerPanel(pluginId: string, panel: PluginPanel): void;
|
|
106
|
+
/**
|
|
107
|
+
* Execute a command
|
|
108
|
+
*/
|
|
109
|
+
export declare function executeCommand(commandId: string): Promise<void>;
|
|
110
|
+
/**
|
|
111
|
+
* Get a proposal by ID
|
|
112
|
+
*/
|
|
113
|
+
export declare function getProposal(proposalId: string): PluginProposal | undefined;
|
|
114
|
+
/**
|
|
115
|
+
* Get an instance by ID
|
|
116
|
+
*/
|
|
117
|
+
export declare function getInstance(pluginId: string): PluginInstance | undefined;
|
|
118
|
+
/**
|
|
119
|
+
* Clear error state
|
|
120
|
+
*/
|
|
121
|
+
export declare function clearError(): void;
|