claude-code-plus-plus 0.2.1 → 0.2.2
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/package.json +1 -1
- package/dist/app.d.ts +0 -52
- package/dist/app.d.ts.map +0 -1
- package/dist/app.js +0 -318
- package/dist/app.js.map +0 -1
- package/dist/core/index.d.ts +0 -14
- package/dist/core/index.d.ts.map +0 -1
- package/dist/core/index.js +0 -14
- package/dist/core/index.js.map +0 -1
- package/dist/core/session/index.d.ts +0 -7
- package/dist/core/session/index.d.ts.map +0 -1
- package/dist/core/session/index.js +0 -6
- package/dist/core/session/index.js.map +0 -1
- package/dist/core/session/session-manager.d.ts +0 -46
- package/dist/core/session/session-manager.d.ts.map +0 -1
- package/dist/core/session/session-manager.js +0 -245
- package/dist/core/session/session-manager.js.map +0 -1
- package/dist/core/session/session.d.ts +0 -44
- package/dist/core/session/session.d.ts.map +0 -1
- package/dist/core/session/session.js +0 -78
- package/dist/core/session/session.js.map +0 -1
- package/dist/core/terminal/index.d.ts +0 -7
- package/dist/core/terminal/index.d.ts.map +0 -1
- package/dist/core/terminal/index.js +0 -6
- package/dist/core/terminal/index.js.map +0 -1
- package/dist/core/terminal/terminal-manager.d.ts +0 -36
- package/dist/core/terminal/terminal-manager.d.ts.map +0 -1
- package/dist/core/terminal/terminal-manager.js +0 -182
- package/dist/core/terminal/terminal-manager.js.map +0 -1
- package/dist/core/terminal/terminal.d.ts +0 -27
- package/dist/core/terminal/terminal.d.ts.map +0 -1
- package/dist/core/terminal/terminal.js +0 -38
- package/dist/core/terminal/terminal.js.map +0 -1
- package/dist/core/workspace/index.d.ts +0 -7
- package/dist/core/workspace/index.d.ts.map +0 -1
- package/dist/core/workspace/index.js +0 -6
- package/dist/core/workspace/index.js.map +0 -1
- package/dist/core/workspace/workspace-manager.d.ts +0 -59
- package/dist/core/workspace/workspace-manager.d.ts.map +0 -1
- package/dist/core/workspace/workspace-manager.js +0 -224
- package/dist/core/workspace/workspace-manager.js.map +0 -1
- package/dist/core/workspace/workspace.d.ts +0 -56
- package/dist/core/workspace/workspace.d.ts.map +0 -1
- package/dist/core/workspace/workspace.js +0 -96
- package/dist/core/workspace/workspace.js.map +0 -1
- package/dist/core/worktree/index.d.ts +0 -7
- package/dist/core/worktree/index.d.ts.map +0 -1
- package/dist/core/worktree/index.js +0 -6
- package/dist/core/worktree/index.js.map +0 -1
- package/dist/core/worktree/worktree-manager.d.ts +0 -47
- package/dist/core/worktree/worktree-manager.d.ts.map +0 -1
- package/dist/core/worktree/worktree-manager.js +0 -170
- package/dist/core/worktree/worktree-manager.js.map +0 -1
- package/dist/core/worktree/worktree.d.ts +0 -35
- package/dist/core/worktree/worktree.d.ts.map +0 -1
- package/dist/core/worktree/worktree.js +0 -50
- package/dist/core/worktree/worktree.js.map +0 -1
- package/dist/core/worktree-manager.d.ts +0 -26
- package/dist/core/worktree-manager.d.ts.map +0 -1
- package/dist/core/worktree-manager.js +0 -177
- package/dist/core/worktree-manager.js.map +0 -1
- package/dist/events/bus.d.ts +0 -76
- package/dist/events/bus.d.ts.map +0 -1
- package/dist/events/bus.js +0 -223
- package/dist/events/bus.js.map +0 -1
- package/dist/events/handlers/index.d.ts +0 -28
- package/dist/events/handlers/index.d.ts.map +0 -1
- package/dist/events/handlers/index.js +0 -44
- package/dist/events/handlers/index.js.map +0 -1
- package/dist/events/handlers/session-events.d.ts +0 -12
- package/dist/events/handlers/session-events.d.ts.map +0 -1
- package/dist/events/handlers/session-events.js +0 -38
- package/dist/events/handlers/session-events.js.map +0 -1
- package/dist/events/handlers/terminal-events.d.ts +0 -12
- package/dist/events/handlers/terminal-events.d.ts.map +0 -1
- package/dist/events/handlers/terminal-events.js +0 -37
- package/dist/events/handlers/terminal-events.js.map +0 -1
- package/dist/events/handlers/ui-events.d.ts +0 -11
- package/dist/events/handlers/ui-events.d.ts.map +0 -1
- package/dist/events/handlers/ui-events.js +0 -202
- package/dist/events/handlers/ui-events.js.map +0 -1
- package/dist/events/index.d.ts +0 -9
- package/dist/events/index.d.ts.map +0 -1
- package/dist/events/index.js +0 -10
- package/dist/events/index.js.map +0 -1
- package/dist/multiplexer/base.d.ts +0 -73
- package/dist/multiplexer/base.d.ts.map +0 -1
- package/dist/multiplexer/base.js +0 -68
- package/dist/multiplexer/base.js.map +0 -1
- package/dist/multiplexer/factory.d.ts +0 -28
- package/dist/multiplexer/factory.d.ts.map +0 -1
- package/dist/multiplexer/factory.js +0 -72
- package/dist/multiplexer/factory.js.map +0 -1
- package/dist/multiplexer/index.d.ts +0 -14
- package/dist/multiplexer/index.d.ts.map +0 -1
- package/dist/multiplexer/index.js +0 -15
- package/dist/multiplexer/index.js.map +0 -1
- package/dist/multiplexer/tmux/index.d.ts +0 -9
- package/dist/multiplexer/tmux/index.d.ts.map +0 -1
- package/dist/multiplexer/tmux/index.js +0 -7
- package/dist/multiplexer/tmux/index.js.map +0 -1
- package/dist/multiplexer/tmux/tmux-commands.d.ts +0 -96
- package/dist/multiplexer/tmux/tmux-commands.d.ts.map +0 -1
- package/dist/multiplexer/tmux/tmux-commands.js +0 -282
- package/dist/multiplexer/tmux/tmux-commands.js.map +0 -1
- package/dist/multiplexer/tmux/tmux-config.d.ts +0 -57
- package/dist/multiplexer/tmux/tmux-config.d.ts.map +0 -1
- package/dist/multiplexer/tmux/tmux-config.js +0 -103
- package/dist/multiplexer/tmux/tmux-config.js.map +0 -1
- package/dist/multiplexer/tmux/tmux-multiplexer.d.ts +0 -94
- package/dist/multiplexer/tmux/tmux-multiplexer.d.ts.map +0 -1
- package/dist/multiplexer/tmux/tmux-multiplexer.js +0 -302
- package/dist/multiplexer/tmux/tmux-multiplexer.js.map +0 -1
- package/dist/multiplexer/windows/index.d.ts +0 -5
- package/dist/multiplexer/windows/index.d.ts.map +0 -1
- package/dist/multiplexer/windows/index.js +0 -5
- package/dist/multiplexer/windows/index.js.map +0 -1
- package/dist/multiplexer/windows/windows-multiplexer.d.ts +0 -61
- package/dist/multiplexer/windows/windows-multiplexer.d.ts.map +0 -1
- package/dist/multiplexer/windows/windows-multiplexer.js +0 -151
- package/dist/multiplexer/windows/windows-multiplexer.js.map +0 -1
- package/dist/services/claude/claude-detector.d.ts +0 -37
- package/dist/services/claude/claude-detector.d.ts.map +0 -1
- package/dist/services/claude/claude-detector.js +0 -83
- package/dist/services/claude/claude-detector.js.map +0 -1
- package/dist/services/claude/claude-service.d.ts +0 -57
- package/dist/services/claude/claude-service.d.ts.map +0 -1
- package/dist/services/claude/claude-service.js +0 -108
- package/dist/services/claude/claude-service.js.map +0 -1
- package/dist/services/claude/index.d.ts +0 -7
- package/dist/services/claude/index.d.ts.map +0 -1
- package/dist/services/claude/index.js +0 -6
- package/dist/services/claude/index.js.map +0 -1
- package/dist/services/git/branch-service.d.ts +0 -64
- package/dist/services/git/branch-service.d.ts.map +0 -1
- package/dist/services/git/branch-service.js +0 -217
- package/dist/services/git/branch-service.js.map +0 -1
- package/dist/services/git/git-service.d.ts +0 -44
- package/dist/services/git/git-service.d.ts.map +0 -1
- package/dist/services/git/git-service.js +0 -145
- package/dist/services/git/git-service.js.map +0 -1
- package/dist/services/git/index.d.ts +0 -8
- package/dist/services/git/index.d.ts.map +0 -1
- package/dist/services/git/index.js +0 -7
- package/dist/services/git/index.js.map +0 -1
- package/dist/services/git/worktree-service.d.ts +0 -61
- package/dist/services/git/worktree-service.d.ts.map +0 -1
- package/dist/services/git/worktree-service.js +0 -243
- package/dist/services/git/worktree-service.js.map +0 -1
- package/dist/services/index.d.ts +0 -12
- package/dist/services/index.d.ts.map +0 -1
- package/dist/services/index.js +0 -12
- package/dist/services/index.js.map +0 -1
- package/dist/services/process/index.d.ts +0 -8
- package/dist/services/process/index.d.ts.map +0 -1
- package/dist/services/process/index.js +0 -6
- package/dist/services/process/index.js.map +0 -1
- package/dist/services/process/process-monitor.d.ts +0 -98
- package/dist/services/process/process-monitor.d.ts.map +0 -1
- package/dist/services/process/process-monitor.js +0 -173
- package/dist/services/process/process-monitor.js.map +0 -1
- package/dist/services/process/process-spawner.d.ts +0 -55
- package/dist/services/process/process-spawner.d.ts.map +0 -1
- package/dist/services/process/process-spawner.js +0 -93
- package/dist/services/process/process-spawner.js.map +0 -1
- package/dist/sidebar.d.ts +0 -13
- package/dist/sidebar.d.ts.map +0 -1
- package/dist/sidebar.js +0 -1535
- package/dist/sidebar.js.map +0 -1
- package/dist/state/actions.d.ts +0 -49
- package/dist/state/actions.d.ts.map +0 -1
- package/dist/state/actions.js +0 -512
- package/dist/state/actions.js.map +0 -1
- package/dist/state/index.d.ts +0 -16
- package/dist/state/index.d.ts.map +0 -1
- package/dist/state/index.js +0 -28
- package/dist/state/index.js.map +0 -1
- package/dist/state/middleware/index.d.ts +0 -7
- package/dist/state/middleware/index.d.ts.map +0 -1
- package/dist/state/middleware/index.js +0 -6
- package/dist/state/middleware/index.js.map +0 -1
- package/dist/state/middleware/logger.d.ts +0 -22
- package/dist/state/middleware/logger.d.ts.map +0 -1
- package/dist/state/middleware/logger.js +0 -45
- package/dist/state/middleware/logger.js.map +0 -1
- package/dist/state/middleware/persistence.d.ts +0 -29
- package/dist/state/middleware/persistence.d.ts.map +0 -1
- package/dist/state/middleware/persistence.js +0 -71
- package/dist/state/middleware/persistence.js.map +0 -1
- package/dist/state/persistence/file-adapter.d.ts +0 -48
- package/dist/state/persistence/file-adapter.d.ts.map +0 -1
- package/dist/state/persistence/file-adapter.js +0 -96
- package/dist/state/persistence/file-adapter.js.map +0 -1
- package/dist/state/persistence/index.d.ts +0 -8
- package/dist/state/persistence/index.d.ts.map +0 -1
- package/dist/state/persistence/index.js +0 -6
- package/dist/state/persistence/index.js.map +0 -1
- package/dist/state/persistence/serializer.d.ts +0 -41
- package/dist/state/persistence/serializer.d.ts.map +0 -1
- package/dist/state/persistence/serializer.js +0 -114
- package/dist/state/persistence/serializer.js.map +0 -1
- package/dist/state/selectors.d.ts +0 -67
- package/dist/state/selectors.d.ts.map +0 -1
- package/dist/state/selectors.js +0 -177
- package/dist/state/selectors.js.map +0 -1
- package/dist/state/store.d.ts +0 -86
- package/dist/state/store.d.ts.map +0 -1
- package/dist/state/store.js +0 -161
- package/dist/state/store.js.map +0 -1
- package/dist/state/types.d.ts +0 -269
- package/dist/state/types.d.ts.map +0 -1
- package/dist/state/types.js +0 -7
- package/dist/state/types.js.map +0 -1
- package/dist/state.d.ts +0 -53
- package/dist/state.d.ts.map +0 -1
- package/dist/state.js +0 -101
- package/dist/state.js.map +0 -1
- package/dist/terminal-manager.d.ts +0 -16
- package/dist/terminal-manager.d.ts.map +0 -1
- package/dist/terminal-manager.js +0 -364
- package/dist/terminal-manager.js.map +0 -1
- package/dist/tmux.d.ts +0 -163
- package/dist/tmux.d.ts.map +0 -1
- package/dist/tmux.js +0 -360
- package/dist/tmux.js.map +0 -1
- package/dist/types/config.d.ts +0 -103
- package/dist/types/config.d.ts.map +0 -1
- package/dist/types/config.js +0 -7
- package/dist/types/config.js.map +0 -1
- package/dist/types/entities.d.ts +0 -88
- package/dist/types/entities.d.ts.map +0 -1
- package/dist/types/entities.js +0 -8
- package/dist/types/entities.js.map +0 -1
- package/dist/types/events.d.ts +0 -156
- package/dist/types/events.d.ts.map +0 -1
- package/dist/types/events.js +0 -8
- package/dist/types/events.js.map +0 -1
- package/dist/types/index.d.ts +0 -11
- package/dist/types/index.d.ts.map +0 -1
- package/dist/types/index.js +0 -8
- package/dist/types/index.js.map +0 -1
- package/dist/types/multiplexer.d.ts +0 -238
- package/dist/types/multiplexer.d.ts.map +0 -1
- package/dist/types/multiplexer.js +0 -8
- package/dist/types/multiplexer.js.map +0 -1
- package/dist/ui/components/base.d.ts +0 -155
- package/dist/ui/components/base.d.ts.map +0 -1
- package/dist/ui/components/base.js +0 -269
- package/dist/ui/components/base.js.map +0 -1
- package/dist/ui/components/index.d.ts +0 -10
- package/dist/ui/components/index.d.ts.map +0 -1
- package/dist/ui/components/index.js +0 -10
- package/dist/ui/components/index.js.map +0 -1
- package/dist/ui/components/input-field.d.ts +0 -98
- package/dist/ui/components/input-field.d.ts.map +0 -1
- package/dist/ui/components/input-field.js +0 -274
- package/dist/ui/components/input-field.js.map +0 -1
- package/dist/ui/components/list.d.ts +0 -94
- package/dist/ui/components/list.d.ts.map +0 -1
- package/dist/ui/components/list.js +0 -294
- package/dist/ui/components/list.js.map +0 -1
- package/dist/ui/components/modal.d.ts +0 -83
- package/dist/ui/components/modal.d.ts.map +0 -1
- package/dist/ui/components/modal.js +0 -249
- package/dist/ui/components/modal.js.map +0 -1
- package/dist/ui/components/tabs.d.ts +0 -97
- package/dist/ui/components/tabs.d.ts.map +0 -1
- package/dist/ui/components/tabs.js +0 -252
- package/dist/ui/components/tabs.js.map +0 -1
- package/dist/ui/components/text.d.ts +0 -60
- package/dist/ui/components/text.d.ts.map +0 -1
- package/dist/ui/components/text.js +0 -224
- package/dist/ui/components/text.js.map +0 -1
- package/dist/ui/index.d.ts +0 -12
- package/dist/ui/index.d.ts.map +0 -1
- package/dist/ui/index.js +0 -18
- package/dist/ui/index.js.map +0 -1
- package/dist/ui/input/index.d.ts +0 -8
- package/dist/ui/input/index.d.ts.map +0 -1
- package/dist/ui/input/index.js +0 -8
- package/dist/ui/input/index.js.map +0 -1
- package/dist/ui/input/input-manager.d.ts +0 -83
- package/dist/ui/input/input-manager.d.ts.map +0 -1
- package/dist/ui/input/input-manager.js +0 -200
- package/dist/ui/input/input-manager.js.map +0 -1
- package/dist/ui/input/keybindings.d.ts +0 -47
- package/dist/ui/input/keybindings.d.ts.map +0 -1
- package/dist/ui/input/keybindings.js +0 -168
- package/dist/ui/input/keybindings.js.map +0 -1
- package/dist/ui/input/keyboard.d.ts +0 -24
- package/dist/ui/input/keyboard.d.ts.map +0 -1
- package/dist/ui/input/keyboard.js +0 -230
- package/dist/ui/input/keyboard.js.map +0 -1
- package/dist/ui/input/mouse.d.ts +0 -44
- package/dist/ui/input/mouse.d.ts.map +0 -1
- package/dist/ui/input/mouse.js +0 -161
- package/dist/ui/input/mouse.js.map +0 -1
- package/dist/ui/layout/box.d.ts +0 -63
- package/dist/ui/layout/box.d.ts.map +0 -1
- package/dist/ui/layout/box.js +0 -160
- package/dist/ui/layout/box.js.map +0 -1
- package/dist/ui/layout/constraints.d.ts +0 -77
- package/dist/ui/layout/constraints.d.ts.map +0 -1
- package/dist/ui/layout/constraints.js +0 -154
- package/dist/ui/layout/constraints.js.map +0 -1
- package/dist/ui/layout/flex.d.ts +0 -59
- package/dist/ui/layout/flex.d.ts.map +0 -1
- package/dist/ui/layout/flex.js +0 -163
- package/dist/ui/layout/flex.js.map +0 -1
- package/dist/ui/layout/index.d.ts +0 -7
- package/dist/ui/layout/index.d.ts.map +0 -1
- package/dist/ui/layout/index.js +0 -7
- package/dist/ui/layout/index.js.map +0 -1
- package/dist/ui/modals/delete-modal.d.ts +0 -27
- package/dist/ui/modals/delete-modal.d.ts.map +0 -1
- package/dist/ui/modals/delete-modal.js +0 -59
- package/dist/ui/modals/delete-modal.js.map +0 -1
- package/dist/ui/modals/index.d.ts +0 -7
- package/dist/ui/modals/index.d.ts.map +0 -1
- package/dist/ui/modals/index.js +0 -7
- package/dist/ui/modals/index.js.map +0 -1
- package/dist/ui/modals/input-modal.d.ts +0 -66
- package/dist/ui/modals/input-modal.d.ts.map +0 -1
- package/dist/ui/modals/input-modal.js +0 -185
- package/dist/ui/modals/input-modal.js.map +0 -1
- package/dist/ui/modals/quit-modal.d.ts +0 -30
- package/dist/ui/modals/quit-modal.d.ts.map +0 -1
- package/dist/ui/modals/quit-modal.js +0 -65
- package/dist/ui/modals/quit-modal.js.map +0 -1
- package/dist/ui/renderer/ansi.d.ts +0 -206
- package/dist/ui/renderer/ansi.d.ts.map +0 -1
- package/dist/ui/renderer/ansi.js +0 -318
- package/dist/ui/renderer/ansi.js.map +0 -1
- package/dist/ui/renderer/canvas.d.ts +0 -126
- package/dist/ui/renderer/canvas.d.ts.map +0 -1
- package/dist/ui/renderer/canvas.js +0 -346
- package/dist/ui/renderer/canvas.js.map +0 -1
- package/dist/ui/renderer/colors.d.ts +0 -65
- package/dist/ui/renderer/colors.d.ts.map +0 -1
- package/dist/ui/renderer/colors.js +0 -260
- package/dist/ui/renderer/colors.js.map +0 -1
- package/dist/ui/renderer/index.d.ts +0 -8
- package/dist/ui/renderer/index.d.ts.map +0 -1
- package/dist/ui/renderer/index.js +0 -8
- package/dist/ui/renderer/index.js.map +0 -1
- package/dist/ui/renderer/symbols.d.ts +0 -176
- package/dist/ui/renderer/symbols.d.ts.map +0 -1
- package/dist/ui/renderer/symbols.js +0 -246
- package/dist/ui/renderer/symbols.js.map +0 -1
- package/dist/ui/views/index.d.ts +0 -7
- package/dist/ui/views/index.d.ts.map +0 -1
- package/dist/ui/views/index.js +0 -7
- package/dist/ui/views/index.js.map +0 -1
- package/dist/ui/views/sidebar-view.d.ts +0 -89
- package/dist/ui/views/sidebar-view.d.ts.map +0 -1
- package/dist/ui/views/sidebar-view.js +0 -259
- package/dist/ui/views/sidebar-view.js.map +0 -1
- package/dist/ui/views/terminal-bar-view.d.ts +0 -67
- package/dist/ui/views/terminal-bar-view.d.ts.map +0 -1
- package/dist/ui/views/terminal-bar-view.js +0 -172
- package/dist/ui/views/terminal-bar-view.js.map +0 -1
- package/dist/ui/views/welcome-view.d.ts +0 -34
- package/dist/ui/views/welcome-view.d.ts.map +0 -1
- package/dist/ui/views/welcome-view.js +0 -116
- package/dist/ui/views/welcome-view.js.map +0 -1
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Terminal Entity
|
|
3
|
-
*
|
|
4
|
-
* Factory functions for creating Terminal objects.
|
|
5
|
-
*/
|
|
6
|
-
import type { Terminal } from '../../types';
|
|
7
|
-
/**
|
|
8
|
-
* Options for creating a new terminal
|
|
9
|
-
*/
|
|
10
|
-
export interface CreateTerminalOptions {
|
|
11
|
-
sessionId: string;
|
|
12
|
-
title?: string;
|
|
13
|
-
paneId?: string;
|
|
14
|
-
}
|
|
15
|
-
/**
|
|
16
|
-
* Create a new terminal
|
|
17
|
-
*/
|
|
18
|
-
export declare function createTerminal(options: CreateTerminalOptions): Terminal;
|
|
19
|
-
/**
|
|
20
|
-
* Generate a default terminal title based on count
|
|
21
|
-
*/
|
|
22
|
-
export declare function generateTerminalTitle(terminalNumber: number): string;
|
|
23
|
-
/**
|
|
24
|
-
* Clone a terminal with a new ID
|
|
25
|
-
*/
|
|
26
|
-
export declare function cloneTerminal(terminal: Terminal, overrides?: Partial<Terminal>): Terminal;
|
|
27
|
-
//# sourceMappingURL=terminal.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"terminal.d.ts","sourceRoot":"","sources":["../../../src/core/terminal/terminal.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAG5C;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,qBAAqB,GAAG,QAAQ,CAUvE;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,cAAc,EAAE,MAAM,GAAG,MAAM,CAEpE;AAED;;GAEG;AACH,wBAAgB,aAAa,CAC3B,QAAQ,EAAE,QAAQ,EAClB,SAAS,CAAC,EAAE,OAAO,CAAC,QAAQ,CAAC,GAC5B,QAAQ,CAQV"}
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Terminal Entity
|
|
3
|
-
*
|
|
4
|
-
* Factory functions for creating Terminal objects.
|
|
5
|
-
*/
|
|
6
|
-
import { generateId } from '../../utils';
|
|
7
|
-
/**
|
|
8
|
-
* Create a new terminal
|
|
9
|
-
*/
|
|
10
|
-
export function createTerminal(options) {
|
|
11
|
-
const { sessionId, title, paneId } = options;
|
|
12
|
-
return {
|
|
13
|
-
id: generateId(8),
|
|
14
|
-
sessionId,
|
|
15
|
-
paneId: paneId ?? null,
|
|
16
|
-
title: title ?? 'Terminal',
|
|
17
|
-
createdAt: new Date(),
|
|
18
|
-
};
|
|
19
|
-
}
|
|
20
|
-
/**
|
|
21
|
-
* Generate a default terminal title based on count
|
|
22
|
-
*/
|
|
23
|
-
export function generateTerminalTitle(terminalNumber) {
|
|
24
|
-
return `Terminal ${terminalNumber}`;
|
|
25
|
-
}
|
|
26
|
-
/**
|
|
27
|
-
* Clone a terminal with a new ID
|
|
28
|
-
*/
|
|
29
|
-
export function cloneTerminal(terminal, overrides) {
|
|
30
|
-
return {
|
|
31
|
-
...terminal,
|
|
32
|
-
id: generateId(8),
|
|
33
|
-
createdAt: new Date(),
|
|
34
|
-
paneId: null,
|
|
35
|
-
...overrides,
|
|
36
|
-
};
|
|
37
|
-
}
|
|
38
|
-
//# sourceMappingURL=terminal.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"terminal.js","sourceRoot":"","sources":["../../../src/core/terminal/terminal.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAWzC;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,OAA8B;IAC3D,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;IAE7C,OAAO;QACL,EAAE,EAAE,UAAU,CAAC,CAAC,CAAC;QACjB,SAAS;QACT,MAAM,EAAE,MAAM,IAAI,IAAI;QACtB,KAAK,EAAE,KAAK,IAAI,UAAU;QAC1B,SAAS,EAAE,IAAI,IAAI,EAAE;KACtB,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,qBAAqB,CAAC,cAAsB;IAC1D,OAAO,YAAY,cAAc,EAAE,CAAC;AACtC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,aAAa,CAC3B,QAAkB,EAClB,SAA6B;IAE7B,OAAO;QACL,GAAG,QAAQ;QACX,EAAE,EAAE,UAAU,CAAC,CAAC,CAAC;QACjB,SAAS,EAAE,IAAI,IAAI,EAAE;QACrB,MAAM,EAAE,IAAI;QACZ,GAAG,SAAS;KACb,CAAC;AACJ,CAAC"}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Workspace Module
|
|
3
|
-
*/
|
|
4
|
-
export { createWorkspace, addWorktreeToWorkspace, removeWorktreeFromWorkspace, getActiveSession, getMainWorktree, getAllSessions, getTotalSessionCount, findWorktreeBySessionId, findWorktreeByBranch, findWorktreeById, } from './workspace';
|
|
5
|
-
export type { CreateWorkspaceOptions } from './workspace';
|
|
6
|
-
export { WorkspaceManager, createWorkspaceManager } from './workspace-manager';
|
|
7
|
-
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/workspace/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACL,eAAe,EACf,sBAAsB,EACtB,2BAA2B,EAC3B,gBAAgB,EAChB,eAAe,EACf,cAAc,EACd,oBAAoB,EACpB,uBAAuB,EACvB,oBAAoB,EACpB,gBAAgB,GACjB,MAAM,aAAa,CAAC;AACrB,YAAY,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAE1D,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC"}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Workspace Module
|
|
3
|
-
*/
|
|
4
|
-
export { createWorkspace, addWorktreeToWorkspace, removeWorktreeFromWorkspace, getActiveSession, getMainWorktree, getAllSessions, getTotalSessionCount, findWorktreeBySessionId, findWorktreeByBranch, findWorktreeById, } from './workspace';
|
|
5
|
-
export { WorkspaceManager, createWorkspaceManager } from './workspace-manager';
|
|
6
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/workspace/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACL,eAAe,EACf,sBAAsB,EACtB,2BAA2B,EAC3B,gBAAgB,EAChB,eAAe,EACf,cAAc,EACd,oBAAoB,EACpB,uBAAuB,EACvB,oBAAoB,EACpB,gBAAgB,GACjB,MAAM,aAAa,CAAC;AAGrB,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC"}
|
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Workspace Manager
|
|
3
|
-
*
|
|
4
|
-
* Manages the lifecycle of workspaces and coordinates between
|
|
5
|
-
* worktrees, sessions, and terminals.
|
|
6
|
-
*/
|
|
7
|
-
import type { Workspace, Worktree, Session, IMultiplexer } from '../../types';
|
|
8
|
-
/**
|
|
9
|
-
* Workspace manager class
|
|
10
|
-
*/
|
|
11
|
-
export declare class WorkspaceManager {
|
|
12
|
-
private multiplexer;
|
|
13
|
-
private worktreesBasePath;
|
|
14
|
-
constructor(multiplexer: IMultiplexer, worktreesBasePath: string);
|
|
15
|
-
/**
|
|
16
|
-
* Initialize workspace for a repository
|
|
17
|
-
*/
|
|
18
|
-
initialize(projectPath: string, multiplexerSessionId: string): Promise<Workspace>;
|
|
19
|
-
/**
|
|
20
|
-
* Get the current workspace
|
|
21
|
-
*/
|
|
22
|
-
getWorkspace(): Workspace | null;
|
|
23
|
-
/**
|
|
24
|
-
* Get the main worktree
|
|
25
|
-
*/
|
|
26
|
-
getMainWorktree(): Worktree | undefined;
|
|
27
|
-
/**
|
|
28
|
-
* Get worktree by ID
|
|
29
|
-
*/
|
|
30
|
-
getWorktreeById(worktreeId: string): Worktree | undefined;
|
|
31
|
-
/**
|
|
32
|
-
* Switch to a different session
|
|
33
|
-
*/
|
|
34
|
-
switchSession(sessionId: string, sidebarPaneId: string): Promise<void>;
|
|
35
|
-
/**
|
|
36
|
-
* Create a new worktree with a session
|
|
37
|
-
*/
|
|
38
|
-
createWorktreeWithSession(branch: string, sidebarPaneId: string, sessionTitle?: string): Promise<{
|
|
39
|
-
worktree: Worktree;
|
|
40
|
-
session: Session;
|
|
41
|
-
}>;
|
|
42
|
-
/**
|
|
43
|
-
* Delete a worktree and all its sessions
|
|
44
|
-
*/
|
|
45
|
-
deleteWorktree(worktreeId: string): Promise<void>;
|
|
46
|
-
/**
|
|
47
|
-
* Create a session in a worktree
|
|
48
|
-
*/
|
|
49
|
-
createSession(worktreeId: string, sidebarPaneId: string, title?: string): Promise<Session>;
|
|
50
|
-
/**
|
|
51
|
-
* Clean up and shutdown workspace
|
|
52
|
-
*/
|
|
53
|
-
shutdown(reason?: 'user' | 'error' | 'detach'): Promise<void>;
|
|
54
|
-
}
|
|
55
|
-
/**
|
|
56
|
-
* Create a workspace manager
|
|
57
|
-
*/
|
|
58
|
-
export declare function createWorkspaceManager(multiplexer: IMultiplexer, worktreesBasePath: string): WorkspaceManager;
|
|
59
|
-
//# sourceMappingURL=workspace-manager.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"workspace-manager.d.ts","sourceRoot":"","sources":["../../../src/core/workspace/workspace-manager.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAY9E;;GAEG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,WAAW,CAAe;IAClC,OAAO,CAAC,iBAAiB,CAAS;gBAEtB,WAAW,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM;IAKhE;;OAEG;IACG,UAAU,CAAC,WAAW,EAAE,MAAM,EAAE,oBAAoB,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;IAwCvF;;OAEG;IACH,YAAY,IAAI,SAAS,GAAG,IAAI;IAKhC;;OAEG;IACH,eAAe,IAAI,QAAQ,GAAG,SAAS;IAKvC;;OAEG;IACH,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS;IAMzD;;OAEG;IACG,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA8B5E;;OAEG;IACG,yBAAyB,CAC7B,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,MAAM,EACrB,YAAY,CAAC,EAAE,MAAM,GACpB,OAAO,CAAC;QAAE,QAAQ,EAAE,QAAQ,CAAC;QAAC,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC;IAoCpD;;OAEG;IACG,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAqCvD;;OAEG;IACG,aAAa,CACjB,UAAU,EAAE,MAAM,EAClB,aAAa,EAAE,MAAM,EACrB,KAAK,CAAC,EAAE,MAAM,GACb,OAAO,CAAC,OAAO,CAAC;IA0BnB;;OAEG;IACG,QAAQ,CAAC,MAAM,GAAE,MAAM,GAAG,OAAO,GAAG,QAAiB,GAAG,OAAO,CAAC,IAAI,CAAC;CAsC5E;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,WAAW,EAAE,YAAY,EACzB,iBAAiB,EAAE,MAAM,GACxB,gBAAgB,CAElB"}
|
|
@@ -1,224 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Workspace Manager
|
|
3
|
-
*
|
|
4
|
-
* Manages the lifecycle of workspaces and coordinates between
|
|
5
|
-
* worktrees, sessions, and terminals.
|
|
6
|
-
*/
|
|
7
|
-
import { getLogger, AppError, WorktreeError, NotFoundError } from '../../utils';
|
|
8
|
-
import { getEventBus } from '../../events';
|
|
9
|
-
import { getStore, actions, selectWorkspace, selectMainWorktree, selectSessionById } from '../../state';
|
|
10
|
-
import { getGitService, getWorktreeService } from '../../services';
|
|
11
|
-
import { createWorkspace, findWorktreeById } from './workspace';
|
|
12
|
-
import { createWorktreeManager, worktreesFromInfoList } from '../worktree';
|
|
13
|
-
import { createSessionManager } from '../session';
|
|
14
|
-
import { createTerminalManager } from '../terminal';
|
|
15
|
-
const logger = getLogger().child('workspace-manager');
|
|
16
|
-
/**
|
|
17
|
-
* Workspace manager class
|
|
18
|
-
*/
|
|
19
|
-
export class WorkspaceManager {
|
|
20
|
-
multiplexer;
|
|
21
|
-
worktreesBasePath;
|
|
22
|
-
constructor(multiplexer, worktreesBasePath) {
|
|
23
|
-
this.multiplexer = multiplexer;
|
|
24
|
-
this.worktreesBasePath = worktreesBasePath;
|
|
25
|
-
}
|
|
26
|
-
/**
|
|
27
|
-
* Initialize workspace for a repository
|
|
28
|
-
*/
|
|
29
|
-
async initialize(projectPath, multiplexerSessionId) {
|
|
30
|
-
const eventBus = getEventBus();
|
|
31
|
-
const store = getStore();
|
|
32
|
-
const gitService = getGitService();
|
|
33
|
-
const worktreeService = getWorktreeService();
|
|
34
|
-
logger.info('Initializing workspace', { projectPath });
|
|
35
|
-
// Validate repository
|
|
36
|
-
if (!gitService.isGitRepository(projectPath)) {
|
|
37
|
-
throw new AppError(`Not a git repository: ${projectPath}`, 'INVALID_REPOSITORY');
|
|
38
|
-
}
|
|
39
|
-
// Create workspace
|
|
40
|
-
const workspace = createWorkspace({
|
|
41
|
-
projectPath,
|
|
42
|
-
multiplexerSessionId,
|
|
43
|
-
});
|
|
44
|
-
// Load existing worktrees
|
|
45
|
-
const worktreeInfos = worktreeService.list(projectPath);
|
|
46
|
-
const worktrees = worktreesFromInfoList(worktreeInfos);
|
|
47
|
-
// Update workspace with worktrees
|
|
48
|
-
workspace.worktrees = worktrees;
|
|
49
|
-
// Update state
|
|
50
|
-
store.dispatch(actions.loadWorkspace(workspace));
|
|
51
|
-
// Emit event
|
|
52
|
-
eventBus.emit('workspace:loaded', { workspace });
|
|
53
|
-
logger.info('Workspace initialized', {
|
|
54
|
-
workspaceId: workspace.id,
|
|
55
|
-
worktreeCount: worktrees.length,
|
|
56
|
-
});
|
|
57
|
-
return workspace;
|
|
58
|
-
}
|
|
59
|
-
/**
|
|
60
|
-
* Get the current workspace
|
|
61
|
-
*/
|
|
62
|
-
getWorkspace() {
|
|
63
|
-
const state = getStore().getState();
|
|
64
|
-
return selectWorkspace(state);
|
|
65
|
-
}
|
|
66
|
-
/**
|
|
67
|
-
* Get the main worktree
|
|
68
|
-
*/
|
|
69
|
-
getMainWorktree() {
|
|
70
|
-
const state = getStore().getState();
|
|
71
|
-
return selectMainWorktree(state);
|
|
72
|
-
}
|
|
73
|
-
/**
|
|
74
|
-
* Get worktree by ID
|
|
75
|
-
*/
|
|
76
|
-
getWorktreeById(worktreeId) {
|
|
77
|
-
const workspace = this.getWorkspace();
|
|
78
|
-
if (!workspace)
|
|
79
|
-
return undefined;
|
|
80
|
-
return findWorktreeById(workspace, worktreeId);
|
|
81
|
-
}
|
|
82
|
-
/**
|
|
83
|
-
* Switch to a different session
|
|
84
|
-
*/
|
|
85
|
-
async switchSession(sessionId, sidebarPaneId) {
|
|
86
|
-
const eventBus = getEventBus();
|
|
87
|
-
const store = getStore();
|
|
88
|
-
const state = store.getState();
|
|
89
|
-
const workspace = selectWorkspace(state);
|
|
90
|
-
if (!workspace) {
|
|
91
|
-
throw new AppError('No workspace initialized', 'NO_WORKSPACE');
|
|
92
|
-
}
|
|
93
|
-
const session = selectSessionById(state, sessionId);
|
|
94
|
-
if (!session) {
|
|
95
|
-
throw new NotFoundError('Session', sessionId);
|
|
96
|
-
}
|
|
97
|
-
const previousSessionId = workspace.activeSessionId;
|
|
98
|
-
logger.debug('Switching session', { from: previousSessionId, to: sessionId });
|
|
99
|
-
// Use session manager to handle the switch
|
|
100
|
-
const sessionManager = createSessionManager(this.multiplexer);
|
|
101
|
-
await sessionManager.activate(sessionId, sidebarPaneId);
|
|
102
|
-
// Emit event
|
|
103
|
-
eventBus.emit('session:activated', {
|
|
104
|
-
sessionId,
|
|
105
|
-
previousSessionId,
|
|
106
|
-
});
|
|
107
|
-
}
|
|
108
|
-
/**
|
|
109
|
-
* Create a new worktree with a session
|
|
110
|
-
*/
|
|
111
|
-
async createWorktreeWithSession(branch, sidebarPaneId, sessionTitle) {
|
|
112
|
-
const workspace = this.getWorkspace();
|
|
113
|
-
if (!workspace) {
|
|
114
|
-
throw new AppError('No workspace initialized', 'NO_WORKSPACE');
|
|
115
|
-
}
|
|
116
|
-
// Create worktree manager
|
|
117
|
-
const worktreeManager = createWorktreeManager(workspace.projectPath, this.worktreesBasePath);
|
|
118
|
-
// Create the worktree
|
|
119
|
-
const worktree = await worktreeManager.create(branch);
|
|
120
|
-
// Create session manager and terminal manager
|
|
121
|
-
const sessionManager = createSessionManager(this.multiplexer);
|
|
122
|
-
const terminalManager = createTerminalManager(this.multiplexer);
|
|
123
|
-
// Create initial session
|
|
124
|
-
const session = await sessionManager.create(worktree.id, worktree.path, branch, {
|
|
125
|
-
title: sessionTitle,
|
|
126
|
-
targetPaneId: sidebarPaneId,
|
|
127
|
-
});
|
|
128
|
-
// Create initial terminal for the session
|
|
129
|
-
await terminalManager.create(session.id, worktree.path);
|
|
130
|
-
return { worktree, session };
|
|
131
|
-
}
|
|
132
|
-
/**
|
|
133
|
-
* Delete a worktree and all its sessions
|
|
134
|
-
*/
|
|
135
|
-
async deleteWorktree(worktreeId) {
|
|
136
|
-
const workspace = this.getWorkspace();
|
|
137
|
-
if (!workspace) {
|
|
138
|
-
throw new AppError('No workspace initialized', 'NO_WORKSPACE');
|
|
139
|
-
}
|
|
140
|
-
const worktree = findWorktreeById(workspace, worktreeId);
|
|
141
|
-
if (!worktree) {
|
|
142
|
-
throw new NotFoundError('Worktree', worktreeId);
|
|
143
|
-
}
|
|
144
|
-
if (worktree.isMain) {
|
|
145
|
-
throw new WorktreeError('Cannot delete main worktree');
|
|
146
|
-
}
|
|
147
|
-
logger.debug('Deleting worktree', { worktreeId, sessionCount: worktree.sessions.length });
|
|
148
|
-
// Delete all sessions in the worktree
|
|
149
|
-
const sessionManager = createSessionManager(this.multiplexer);
|
|
150
|
-
for (const session of worktree.sessions) {
|
|
151
|
-
await sessionManager.delete(session.id);
|
|
152
|
-
}
|
|
153
|
-
// Delete the worktree
|
|
154
|
-
const worktreeManager = createWorktreeManager(workspace.projectPath, this.worktreesBasePath);
|
|
155
|
-
await worktreeManager.delete(worktreeId);
|
|
156
|
-
// If the active session was in this worktree, clear it
|
|
157
|
-
if (worktree.sessions.some((s) => s.id === workspace.activeSessionId)) {
|
|
158
|
-
const store = getStore();
|
|
159
|
-
store.dispatch(actions.activateSession(''));
|
|
160
|
-
}
|
|
161
|
-
}
|
|
162
|
-
/**
|
|
163
|
-
* Create a session in a worktree
|
|
164
|
-
*/
|
|
165
|
-
async createSession(worktreeId, sidebarPaneId, title) {
|
|
166
|
-
const worktree = this.getWorktreeById(worktreeId);
|
|
167
|
-
if (!worktree) {
|
|
168
|
-
throw new NotFoundError('Worktree', worktreeId);
|
|
169
|
-
}
|
|
170
|
-
const sessionManager = createSessionManager(this.multiplexer);
|
|
171
|
-
const terminalManager = createTerminalManager(this.multiplexer);
|
|
172
|
-
// Create session
|
|
173
|
-
const session = await sessionManager.create(worktreeId, worktree.path, worktree.branch, {
|
|
174
|
-
title,
|
|
175
|
-
targetPaneId: sidebarPaneId,
|
|
176
|
-
});
|
|
177
|
-
// Create initial terminal
|
|
178
|
-
await terminalManager.create(session.id, worktree.path);
|
|
179
|
-
return session;
|
|
180
|
-
}
|
|
181
|
-
/**
|
|
182
|
-
* Clean up and shutdown workspace
|
|
183
|
-
*/
|
|
184
|
-
async shutdown(reason = 'user') {
|
|
185
|
-
const eventBus = getEventBus();
|
|
186
|
-
const store = getStore();
|
|
187
|
-
const workspace = this.getWorkspace();
|
|
188
|
-
if (!workspace) {
|
|
189
|
-
return;
|
|
190
|
-
}
|
|
191
|
-
logger.info('Shutting down workspace', { workspaceId: workspace.id });
|
|
192
|
-
// Emit shutdown event
|
|
193
|
-
eventBus.emit('app:shutdown', { reason });
|
|
194
|
-
// Clean up tmux sessions
|
|
195
|
-
const sessionManager = createSessionManager(this.multiplexer);
|
|
196
|
-
for (const worktree of workspace.worktrees) {
|
|
197
|
-
for (const session of worktree.sessions) {
|
|
198
|
-
try {
|
|
199
|
-
await sessionManager.delete(session.id);
|
|
200
|
-
}
|
|
201
|
-
catch {
|
|
202
|
-
// Ignore errors during shutdown
|
|
203
|
-
}
|
|
204
|
-
}
|
|
205
|
-
}
|
|
206
|
-
// Clear state
|
|
207
|
-
store.dispatch(actions.loadWorkspace({
|
|
208
|
-
id: '',
|
|
209
|
-
projectPath: '',
|
|
210
|
-
projectName: '',
|
|
211
|
-
multiplexerSessionId: '',
|
|
212
|
-
worktrees: [],
|
|
213
|
-
activeSessionId: null,
|
|
214
|
-
}));
|
|
215
|
-
logger.info('Workspace shutdown complete');
|
|
216
|
-
}
|
|
217
|
-
}
|
|
218
|
-
/**
|
|
219
|
-
* Create a workspace manager
|
|
220
|
-
*/
|
|
221
|
-
export function createWorkspaceManager(multiplexer, worktreesBasePath) {
|
|
222
|
-
return new WorkspaceManager(multiplexer, worktreesBasePath);
|
|
223
|
-
}
|
|
224
|
-
//# sourceMappingURL=workspace-manager.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"workspace-manager.js","sourceRoot":"","sources":["../../../src/core/workspace/workspace-manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Workspace Entity
|
|
3
|
-
*
|
|
4
|
-
* Factory functions for creating Workspace objects.
|
|
5
|
-
* A workspace represents the entire application state for a repository.
|
|
6
|
-
*/
|
|
7
|
-
import type { Workspace, Worktree, Session } from '../../types';
|
|
8
|
-
/**
|
|
9
|
-
* Options for creating a new workspace
|
|
10
|
-
*/
|
|
11
|
-
export interface CreateWorkspaceOptions {
|
|
12
|
-
projectPath: string;
|
|
13
|
-
projectName?: string;
|
|
14
|
-
multiplexerSessionId?: string;
|
|
15
|
-
}
|
|
16
|
-
/**
|
|
17
|
-
* Create a new workspace
|
|
18
|
-
*/
|
|
19
|
-
export declare function createWorkspace(options: CreateWorkspaceOptions): Workspace;
|
|
20
|
-
/**
|
|
21
|
-
* Add a worktree to workspace
|
|
22
|
-
*/
|
|
23
|
-
export declare function addWorktreeToWorkspace(workspace: Workspace, worktree: Worktree): Workspace;
|
|
24
|
-
/**
|
|
25
|
-
* Remove a worktree from workspace
|
|
26
|
-
*/
|
|
27
|
-
export declare function removeWorktreeFromWorkspace(workspace: Workspace, worktreeId: string): Workspace;
|
|
28
|
-
/**
|
|
29
|
-
* Get the active session from workspace
|
|
30
|
-
*/
|
|
31
|
-
export declare function getActiveSession(workspace: Workspace): Session | undefined;
|
|
32
|
-
/**
|
|
33
|
-
* Get the main worktree from workspace
|
|
34
|
-
*/
|
|
35
|
-
export declare function getMainWorktree(workspace: Workspace): Worktree | undefined;
|
|
36
|
-
/**
|
|
37
|
-
* Get all sessions across all worktrees
|
|
38
|
-
*/
|
|
39
|
-
export declare function getAllSessions(workspace: Workspace): Session[];
|
|
40
|
-
/**
|
|
41
|
-
* Get total session count
|
|
42
|
-
*/
|
|
43
|
-
export declare function getTotalSessionCount(workspace: Workspace): number;
|
|
44
|
-
/**
|
|
45
|
-
* Find worktree containing a session
|
|
46
|
-
*/
|
|
47
|
-
export declare function findWorktreeBySessionId(workspace: Workspace, sessionId: string): Worktree | undefined;
|
|
48
|
-
/**
|
|
49
|
-
* Find worktree by branch name
|
|
50
|
-
*/
|
|
51
|
-
export declare function findWorktreeByBranch(workspace: Workspace, branch: string): Worktree | undefined;
|
|
52
|
-
/**
|
|
53
|
-
* Find worktree by ID
|
|
54
|
-
*/
|
|
55
|
-
export declare function findWorktreeById(workspace: Workspace, worktreeId: string): Worktree | undefined;
|
|
56
|
-
//# sourceMappingURL=workspace.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"workspace.d.ts","sourceRoot":"","sources":["../../../src/core/workspace/workspace.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAGhE;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,sBAAsB,GAAG,SAAS,CAW1E;AAUD;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,SAAS,EAAE,SAAS,EACpB,QAAQ,EAAE,QAAQ,GACjB,SAAS,CAKX;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CACzC,SAAS,EAAE,SAAS,EACpB,UAAU,EAAE,MAAM,GACjB,SAAS,CAKX;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,GAAG,SAAS,CAO1E;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,SAAS,EAAE,SAAS,GAAG,QAAQ,GAAG,SAAS,CAE1E;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,EAAE,CAE9D;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,SAAS,GAAG,MAAM,CAEjE;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CACrC,SAAS,EAAE,SAAS,EACpB,SAAS,EAAE,MAAM,GAChB,QAAQ,GAAG,SAAS,CAItB;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,SAAS,EAAE,SAAS,EACpB,MAAM,EAAE,MAAM,GACb,QAAQ,GAAG,SAAS,CAEtB;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,SAAS,EAAE,SAAS,EACpB,UAAU,EAAE,MAAM,GACjB,QAAQ,GAAG,SAAS,CAEtB"}
|
|
@@ -1,96 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Workspace Entity
|
|
3
|
-
*
|
|
4
|
-
* Factory functions for creating Workspace objects.
|
|
5
|
-
* A workspace represents the entire application state for a repository.
|
|
6
|
-
*/
|
|
7
|
-
import { generateId } from '../../utils';
|
|
8
|
-
/**
|
|
9
|
-
* Create a new workspace
|
|
10
|
-
*/
|
|
11
|
-
export function createWorkspace(options) {
|
|
12
|
-
const { projectPath, projectName, multiplexerSessionId } = options;
|
|
13
|
-
return {
|
|
14
|
-
id: generateId(12),
|
|
15
|
-
projectPath,
|
|
16
|
-
projectName: projectName ?? extractProjectName(projectPath),
|
|
17
|
-
multiplexerSessionId: multiplexerSessionId ?? '',
|
|
18
|
-
worktrees: [],
|
|
19
|
-
activeSessionId: null,
|
|
20
|
-
};
|
|
21
|
-
}
|
|
22
|
-
/**
|
|
23
|
-
* Extract project name from path
|
|
24
|
-
*/
|
|
25
|
-
function extractProjectName(projectPath) {
|
|
26
|
-
const parts = projectPath.split('/');
|
|
27
|
-
return parts[parts.length - 1] || 'workspace';
|
|
28
|
-
}
|
|
29
|
-
/**
|
|
30
|
-
* Add a worktree to workspace
|
|
31
|
-
*/
|
|
32
|
-
export function addWorktreeToWorkspace(workspace, worktree) {
|
|
33
|
-
return {
|
|
34
|
-
...workspace,
|
|
35
|
-
worktrees: [...workspace.worktrees, worktree],
|
|
36
|
-
};
|
|
37
|
-
}
|
|
38
|
-
/**
|
|
39
|
-
* Remove a worktree from workspace
|
|
40
|
-
*/
|
|
41
|
-
export function removeWorktreeFromWorkspace(workspace, worktreeId) {
|
|
42
|
-
return {
|
|
43
|
-
...workspace,
|
|
44
|
-
worktrees: workspace.worktrees.filter((w) => w.id !== worktreeId),
|
|
45
|
-
};
|
|
46
|
-
}
|
|
47
|
-
/**
|
|
48
|
-
* Get the active session from workspace
|
|
49
|
-
*/
|
|
50
|
-
export function getActiveSession(workspace) {
|
|
51
|
-
if (!workspace.activeSessionId)
|
|
52
|
-
return undefined;
|
|
53
|
-
for (const wt of workspace.worktrees) {
|
|
54
|
-
const session = wt.sessions.find((s) => s.id === workspace.activeSessionId);
|
|
55
|
-
if (session)
|
|
56
|
-
return session;
|
|
57
|
-
}
|
|
58
|
-
return undefined;
|
|
59
|
-
}
|
|
60
|
-
/**
|
|
61
|
-
* Get the main worktree from workspace
|
|
62
|
-
*/
|
|
63
|
-
export function getMainWorktree(workspace) {
|
|
64
|
-
return workspace.worktrees.find((w) => w.isMain);
|
|
65
|
-
}
|
|
66
|
-
/**
|
|
67
|
-
* Get all sessions across all worktrees
|
|
68
|
-
*/
|
|
69
|
-
export function getAllSessions(workspace) {
|
|
70
|
-
return workspace.worktrees.flatMap((w) => w.sessions);
|
|
71
|
-
}
|
|
72
|
-
/**
|
|
73
|
-
* Get total session count
|
|
74
|
-
*/
|
|
75
|
-
export function getTotalSessionCount(workspace) {
|
|
76
|
-
return workspace.worktrees.reduce((sum, w) => sum + w.sessions.length, 0);
|
|
77
|
-
}
|
|
78
|
-
/**
|
|
79
|
-
* Find worktree containing a session
|
|
80
|
-
*/
|
|
81
|
-
export function findWorktreeBySessionId(workspace, sessionId) {
|
|
82
|
-
return workspace.worktrees.find((w) => w.sessions.some((s) => s.id === sessionId));
|
|
83
|
-
}
|
|
84
|
-
/**
|
|
85
|
-
* Find worktree by branch name
|
|
86
|
-
*/
|
|
87
|
-
export function findWorktreeByBranch(workspace, branch) {
|
|
88
|
-
return workspace.worktrees.find((w) => w.branch === branch);
|
|
89
|
-
}
|
|
90
|
-
/**
|
|
91
|
-
* Find worktree by ID
|
|
92
|
-
*/
|
|
93
|
-
export function findWorktreeById(workspace, worktreeId) {
|
|
94
|
-
return workspace.worktrees.find((w) => w.id === worktreeId);
|
|
95
|
-
}
|
|
96
|
-
//# sourceMappingURL=workspace.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"workspace.js","sourceRoot":"","sources":["../../../src/core/workspace/workspace.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Worktree Module
|
|
3
|
-
*/
|
|
4
|
-
export { createWorktree, worktreeFromInfo, worktreesFromInfoList, hasSessions, getSessionCount, } from './worktree';
|
|
5
|
-
export type { CreateWorktreeOptions } from './worktree';
|
|
6
|
-
export { WorktreeManager, createWorktreeManager } from './worktree-manager';
|
|
7
|
-
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/worktree/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACL,cAAc,EACd,gBAAgB,EAChB,qBAAqB,EACrB,WAAW,EACX,eAAe,GAChB,MAAM,YAAY,CAAC;AACpB,YAAY,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAExD,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/worktree/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACL,cAAc,EACd,gBAAgB,EAChB,qBAAqB,EACrB,WAAW,EACX,eAAe,GAChB,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC"}
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Worktree Manager
|
|
3
|
-
*
|
|
4
|
-
* Manages the lifecycle of git worktrees.
|
|
5
|
-
*/
|
|
6
|
-
import type { Worktree } from '../../types';
|
|
7
|
-
/**
|
|
8
|
-
* Worktree manager class
|
|
9
|
-
*/
|
|
10
|
-
export declare class WorktreeManager {
|
|
11
|
-
private repoPath;
|
|
12
|
-
private worktreesBasePath;
|
|
13
|
-
constructor(repoPath: string, worktreesBasePath: string);
|
|
14
|
-
/**
|
|
15
|
-
* Load all worktrees from git
|
|
16
|
-
*/
|
|
17
|
-
loadWorktrees(): Worktree[];
|
|
18
|
-
/**
|
|
19
|
-
* Create a new worktree
|
|
20
|
-
*/
|
|
21
|
-
create(branch: string): Promise<Worktree>;
|
|
22
|
-
/**
|
|
23
|
-
* Delete a worktree
|
|
24
|
-
*/
|
|
25
|
-
delete(worktreeId: string): Promise<void>;
|
|
26
|
-
/**
|
|
27
|
-
* Rename a worktree (renames branch and moves directory)
|
|
28
|
-
*/
|
|
29
|
-
rename(worktreeId: string, newBranch: string): Promise<void>;
|
|
30
|
-
/**
|
|
31
|
-
* Get a worktree by ID
|
|
32
|
-
*/
|
|
33
|
-
get(worktreeId: string): Worktree | undefined;
|
|
34
|
-
/**
|
|
35
|
-
* Get all worktrees
|
|
36
|
-
*/
|
|
37
|
-
getAll(): Worktree[];
|
|
38
|
-
/**
|
|
39
|
-
* Check if a branch name is available
|
|
40
|
-
*/
|
|
41
|
-
isBranchAvailable(branch: string): boolean;
|
|
42
|
-
}
|
|
43
|
-
/**
|
|
44
|
-
* Create a worktree manager
|
|
45
|
-
*/
|
|
46
|
-
export declare function createWorktreeManager(repoPath: string, worktreesBasePath: string): WorktreeManager;
|
|
47
|
-
//# sourceMappingURL=worktree-manager.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"worktree-manager.d.ts","sourceRoot":"","sources":["../../../src/core/worktree/worktree-manager.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAgB,MAAM,aAAa,CAAC;AAU1D;;GAEG;AACH,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,iBAAiB,CAAS;gBAEtB,QAAQ,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM;IAKvD;;OAEG;IACH,aAAa,IAAI,QAAQ,EAAE;IAM3B;;OAEG;IACG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;IAkD/C;;OAEG;IACG,MAAM,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAgC/C;;OAEG;IACG,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAmDlE;;OAEG;IACH,GAAG,CAAC,UAAU,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS;IAK7C;;OAEG;IACH,MAAM,IAAI,QAAQ,EAAE;IAKpB;;OAEG;IACH,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;CAY3C;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,MAAM,EAChB,iBAAiB,EAAE,MAAM,GACxB,eAAe,CAEjB"}
|