dmux 3.1.1 → 3.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/CleanTextInput.d.ts +9 -0
- package/dist/CleanTextInput.d.ts.map +1 -1
- package/dist/CleanTextInput.js +127 -47
- package/dist/CleanTextInput.js.map +1 -1
- package/dist/DmuxApp.d.ts +2 -2
- package/dist/DmuxApp.d.ts.map +1 -1
- package/dist/DmuxApp.js +1396 -750
- package/dist/DmuxApp.js.map +1 -1
- package/dist/actions/paneActions.d.ts.map +1 -1
- package/dist/actions/paneActions.js +68 -11
- package/dist/actions/paneActions.js.map +1 -1
- package/dist/actions/types.d.ts +1 -0
- package/dist/actions/types.d.ts.map +1 -1
- package/dist/actions/types.js +1 -0
- package/dist/actions/types.js.map +1 -1
- package/dist/components/ActionInputDialog.d.ts.map +1 -1
- package/dist/components/ActionInputDialog.js +3 -2
- package/dist/components/ActionInputDialog.js.map +1 -1
- package/dist/components/DialogBox.d.ts +16 -0
- package/dist/components/DialogBox.d.ts.map +1 -0
- package/dist/components/DialogBox.js +12 -0
- package/dist/components/DialogBox.js.map +1 -0
- package/dist/components/FooterHelp.d.ts +9 -0
- package/dist/components/FooterHelp.d.ts.map +1 -1
- package/dist/components/FooterHelp.js +41 -5
- package/dist/components/FooterHelp.js.map +1 -1
- package/dist/components/PaneCard.d.ts +3 -1
- package/dist/components/PaneCard.d.ts.map +1 -1
- package/dist/components/PaneCard.js +50 -33
- package/dist/components/PaneCard.js.map +1 -1
- package/dist/components/PanesGrid.d.ts +3 -5
- package/dist/components/PanesGrid.d.ts.map +1 -1
- package/dist/components/PanesGrid.js +40 -10
- package/dist/components/PanesGrid.js.map +1 -1
- package/dist/dashboard.js +1 -1
- package/dist/decorative-pane.d.ts +3 -0
- package/dist/decorative-pane.d.ts.map +1 -0
- package/dist/decorative-pane.js +136 -0
- package/dist/decorative-pane.js.map +1 -0
- package/dist/hooks/useActionSystem.d.ts +14 -1
- package/dist/hooks/useActionSystem.d.ts.map +1 -1
- package/dist/hooks/useActionSystem.js +93 -4
- package/dist/hooks/useActionSystem.js.map +1 -1
- package/dist/hooks/useNavigation.js +1 -1
- package/dist/hooks/useNavigation.js.map +1 -1
- package/dist/hooks/usePaneCreation.d.ts +1 -2
- package/dist/hooks/usePaneCreation.d.ts.map +1 -1
- package/dist/hooks/usePaneCreation.js +13 -27
- package/dist/hooks/usePaneCreation.js.map +1 -1
- package/dist/hooks/usePaneRunner.d.ts.map +1 -1
- package/dist/hooks/usePaneRunner.js +8 -3
- package/dist/hooks/usePaneRunner.js.map +1 -1
- package/dist/hooks/usePanes.d.ts.map +1 -1
- package/dist/hooks/usePanes.js +210 -37
- package/dist/hooks/usePanes.js.map +1 -1
- package/dist/hooks/useWorktreeActions.d.ts.map +1 -1
- package/dist/hooks/useWorktreeActions.js +7 -13
- package/dist/hooks/useWorktreeActions.js.map +1 -1
- package/dist/index.js +217 -29
- package/dist/index.js.map +1 -1
- package/dist/popups/agentChoicePopup.d.ts +7 -0
- package/dist/popups/agentChoicePopup.d.ts.map +1 -0
- package/dist/popups/agentChoicePopup.js +74 -0
- package/dist/popups/agentChoicePopup.js.map +1 -0
- package/dist/popups/choicePopup.d.ts +7 -0
- package/dist/popups/choicePopup.d.ts.map +1 -0
- package/dist/popups/choicePopup.js +64 -0
- package/dist/popups/choicePopup.js.map +1 -0
- package/dist/popups/components/FileList.d.ts +13 -0
- package/dist/popups/components/FileList.d.ts.map +1 -0
- package/dist/popups/components/FileList.js +61 -0
- package/dist/popups/components/FileList.js.map +1 -0
- package/dist/popups/components/PopupContainer.d.ts +14 -0
- package/dist/popups/components/PopupContainer.d.ts.map +1 -0
- package/dist/popups/components/PopupContainer.js +15 -0
- package/dist/popups/components/PopupContainer.js.map +1 -0
- package/dist/popups/components/PopupInputBox.d.ts +11 -0
- package/dist/popups/components/PopupInputBox.d.ts.map +1 -0
- package/dist/popups/components/PopupInputBox.js +10 -0
- package/dist/popups/components/PopupInputBox.js.map +1 -0
- package/dist/popups/components/PopupWrapper.d.ts +37 -0
- package/dist/popups/components/PopupWrapper.d.ts.map +1 -0
- package/dist/popups/components/PopupWrapper.js +88 -0
- package/dist/popups/components/PopupWrapper.js.map +1 -0
- package/dist/popups/components/index.d.ts +8 -0
- package/dist/popups/components/index.d.ts.map +1 -0
- package/dist/popups/components/index.js +8 -0
- package/dist/popups/components/index.js.map +1 -0
- package/dist/popups/config.d.ts +40 -0
- package/dist/popups/config.d.ts.map +1 -0
- package/dist/popups/config.js +40 -0
- package/dist/popups/config.js.map +1 -0
- package/dist/popups/confirmPopup.d.ts +7 -0
- package/dist/popups/confirmPopup.d.ts.map +1 -0
- package/dist/popups/confirmPopup.js +72 -0
- package/dist/popups/confirmPopup.js.map +1 -0
- package/dist/popups/hooksPopup.d.ts +7 -0
- package/dist/popups/hooksPopup.d.ts.map +1 -0
- package/dist/popups/hooksPopup.js +71 -0
- package/dist/popups/hooksPopup.js.map +1 -0
- package/dist/popups/inputPopup.d.ts +7 -0
- package/dist/popups/inputPopup.d.ts.map +1 -0
- package/dist/popups/inputPopup.js +48 -0
- package/dist/popups/inputPopup.js.map +1 -0
- package/dist/popups/kebabMenuPopup.d.ts +7 -0
- package/dist/popups/kebabMenuPopup.d.ts.map +1 -0
- package/dist/popups/kebabMenuPopup.js +52 -0
- package/dist/popups/kebabMenuPopup.js.map +1 -0
- package/dist/popups/logsPopup.d.ts +12 -0
- package/dist/popups/logsPopup.d.ts.map +1 -0
- package/dist/popups/logsPopup.js +364 -0
- package/dist/popups/logsPopup.js.map +1 -0
- package/dist/popups/mergePopup.d.ts +7 -0
- package/dist/popups/mergePopup.d.ts.map +1 -0
- package/dist/popups/mergePopup.js +310 -0
- package/dist/popups/mergePopup.js.map +1 -0
- package/dist/popups/newPanePopup.d.ts +7 -0
- package/dist/popups/newPanePopup.d.ts.map +1 -0
- package/dist/popups/newPanePopup.js +234 -0
- package/dist/popups/newPanePopup.js.map +1 -0
- package/dist/popups/progressPopup.d.ts +8 -0
- package/dist/popups/progressPopup.d.ts.map +1 -0
- package/dist/popups/progressPopup.js +54 -0
- package/dist/popups/progressPopup.js.map +1 -0
- package/dist/popups/remotePopup.d.ts +6 -0
- package/dist/popups/remotePopup.d.ts.map +1 -0
- package/dist/popups/remotePopup.js +166 -0
- package/dist/popups/remotePopup.js.map +1 -0
- package/dist/popups/settingsPopup.d.ts +7 -0
- package/dist/popups/settingsPopup.d.ts.map +1 -0
- package/dist/popups/settingsPopup.js +212 -0
- package/dist/popups/settingsPopup.js.map +1 -0
- package/dist/popups/shortcutsPopup.d.ts +6 -0
- package/dist/popups/shortcutsPopup.d.ts.map +1 -0
- package/dist/popups/shortcutsPopup.js +74 -0
- package/dist/popups/shortcutsPopup.js.map +1 -0
- package/dist/popups/templates/SimpleInputPopup.d.ts +15 -0
- package/dist/popups/templates/SimpleInputPopup.d.ts.map +1 -0
- package/dist/popups/templates/SimpleInputPopup.js +28 -0
- package/dist/popups/templates/SimpleInputPopup.js.map +1 -0
- package/dist/server/embedded-assets.d.ts.map +1 -1
- package/dist/server/embedded-assets.js +2066 -968
- package/dist/server/embedded-assets.js.map +1 -1
- package/dist/server/index.js +1 -1
- package/dist/server/index.js.map +1 -1
- package/dist/server/routes.d.ts +1 -1
- package/dist/server/routes.d.ts.map +1 -1
- package/dist/server/routes.js +73 -6
- package/dist/server/routes.js.map +1 -1
- package/dist/services/ConfigWatcher.d.ts.map +1 -1
- package/dist/services/ConfigWatcher.js +10 -3
- package/dist/services/ConfigWatcher.js.map +1 -1
- package/dist/services/LogService.d.ts +112 -0
- package/dist/services/LogService.d.ts.map +1 -0
- package/dist/services/LogService.js +252 -0
- package/dist/services/LogService.js.map +1 -0
- package/dist/services/PaneWorkerManager.d.ts.map +1 -1
- package/dist/services/PaneWorkerManager.js +35 -9
- package/dist/services/PaneWorkerManager.js.map +1 -1
- package/dist/services/TunnelService.d.ts +1 -0
- package/dist/services/TunnelService.d.ts.map +1 -1
- package/dist/services/TunnelService.js +56 -15
- package/dist/services/TunnelService.js.map +1 -1
- package/dist/shared/StateManager.d.ts +49 -1
- package/dist/shared/StateManager.d.ts.map +1 -1
- package/dist/shared/StateManager.js +97 -2
- package/dist/shared/StateManager.js.map +1 -1
- package/dist/spacer-pane.d.ts +8 -0
- package/dist/spacer-pane.d.ts.map +1 -0
- package/dist/spacer-pane.js +40 -0
- package/dist/spacer-pane.js.map +1 -0
- package/dist/theme/colors.d.ts +25 -0
- package/dist/theme/colors.d.ts.map +1 -0
- package/dist/theme/colors.js +33 -0
- package/dist/theme/colors.js.map +1 -0
- package/dist/types.d.ts +14 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/utils/asciiArt.d.ts +26 -0
- package/dist/utils/asciiArt.d.ts.map +1 -0
- package/dist/utils/asciiArt.js +88 -0
- package/dist/utils/asciiArt.js.map +1 -0
- package/dist/utils/conflictResolutionPane.d.ts.map +1 -1
- package/dist/utils/conflictResolutionPane.js +8 -4
- package/dist/utils/conflictResolutionPane.js.map +1 -1
- package/dist/utils/fileScanner.d.ts +23 -0
- package/dist/utils/fileScanner.d.ts.map +1 -0
- package/dist/utils/fileScanner.js +123 -0
- package/dist/utils/fileScanner.js.map +1 -0
- package/dist/utils/generated-agents-doc.d.ts +1 -1
- package/dist/utils/generated-agents-doc.js +1 -1
- package/dist/utils/hooks.d.ts.map +1 -1
- package/dist/utils/hooks.js +65 -36
- package/dist/utils/hooks.js.map +1 -1
- package/dist/utils/hooksDocs.d.ts +1 -1
- package/dist/utils/layoutManager.d.ts +45 -0
- package/dist/utils/layoutManager.d.ts.map +1 -0
- package/dist/utils/layoutManager.js +500 -0
- package/dist/utils/layoutManager.js.map +1 -0
- package/dist/utils/paneCreation.d.ts.map +1 -1
- package/dist/utils/paneCreation.js +125 -11
- package/dist/utils/paneCreation.js.map +1 -1
- package/dist/utils/popup.d.ts +97 -0
- package/dist/utils/popup.d.ts.map +1 -0
- package/dist/utils/popup.js +509 -0
- package/dist/utils/popup.js.map +1 -0
- package/dist/utils/postPaneCleanup.d.ts +12 -0
- package/dist/utils/postPaneCleanup.d.ts.map +1 -0
- package/dist/utils/postPaneCleanup.js +53 -0
- package/dist/utils/postPaneCleanup.js.map +1 -0
- package/dist/utils/shellPaneDetection.d.ts +44 -0
- package/dist/utils/shellPaneDetection.d.ts.map +1 -0
- package/dist/utils/shellPaneDetection.js +175 -0
- package/dist/utils/shellPaneDetection.js.map +1 -0
- package/dist/utils/tmux.d.ts +53 -1
- package/dist/utils/tmux.d.ts.map +1 -1
- package/dist/utils/tmux.js +352 -84
- package/dist/utils/tmux.js.map +1 -1
- package/dist/utils/welcomePane.d.ts +22 -0
- package/dist/utils/welcomePane.d.ts.map +1 -0
- package/dist/utils/welcomePane.js +119 -0
- package/dist/utils/welcomePane.js.map +1 -0
- package/dist/utils/welcomePaneManager.d.ts +36 -0
- package/dist/utils/welcomePaneManager.d.ts.map +1 -0
- package/dist/utils/welcomePaneManager.js +160 -0
- package/dist/utils/welcomePaneManager.js.map +1 -0
- package/dist/workers/PaneWorker.js +2 -0
- package/dist/workers/PaneWorker.js.map +1 -1
- package/package.json +5 -2
- package/dist/components/NewPaneDialog.d.ts +0 -9
- package/dist/components/NewPaneDialog.d.ts.map +0 -1
- package/dist/components/NewPaneDialog.js +0 -11
- package/dist/components/NewPaneDialog.js.map +0 -1
|
@@ -1,20 +1,39 @@
|
|
|
1
1
|
import { EventEmitter } from 'events';
|
|
2
2
|
import { ConfigWatcher } from '../services/ConfigWatcher.js';
|
|
3
|
+
import { LogService } from '../services/LogService.js';
|
|
3
4
|
export class StateManager extends EventEmitter {
|
|
4
5
|
static instance;
|
|
5
6
|
state;
|
|
6
7
|
updateCallbacks = new Set();
|
|
7
8
|
configWatcher = null;
|
|
8
9
|
debugMessageCallback;
|
|
10
|
+
logService;
|
|
9
11
|
constructor() {
|
|
10
12
|
super();
|
|
13
|
+
this.logService = LogService.getInstance();
|
|
11
14
|
this.state = {
|
|
12
15
|
panes: [],
|
|
13
16
|
projectName: '',
|
|
14
17
|
sessionName: '',
|
|
15
18
|
projectRoot: '',
|
|
16
|
-
settings: {}
|
|
19
|
+
settings: {},
|
|
20
|
+
logs: [],
|
|
21
|
+
unreadErrorCount: 0,
|
|
22
|
+
unreadWarningCount: 0,
|
|
17
23
|
};
|
|
24
|
+
// Listen to log events and sync state
|
|
25
|
+
this.logService.on('log-added', () => {
|
|
26
|
+
this.syncLogsFromService();
|
|
27
|
+
});
|
|
28
|
+
this.logService.on('logs-marked-read', () => {
|
|
29
|
+
this.syncLogsFromService();
|
|
30
|
+
});
|
|
31
|
+
this.logService.on('all-logs-marked-read', () => {
|
|
32
|
+
this.syncLogsFromService();
|
|
33
|
+
});
|
|
34
|
+
this.logService.on('logs-cleared', () => {
|
|
35
|
+
this.syncLogsFromService();
|
|
36
|
+
});
|
|
18
37
|
}
|
|
19
38
|
static getInstance() {
|
|
20
39
|
if (!StateManager.instance) {
|
|
@@ -112,6 +131,77 @@ export class StateManager extends EventEmitter {
|
|
|
112
131
|
this.configWatcher.resume();
|
|
113
132
|
}
|
|
114
133
|
}
|
|
134
|
+
/**
|
|
135
|
+
* Sync logs from LogService to state
|
|
136
|
+
*/
|
|
137
|
+
syncLogsFromService() {
|
|
138
|
+
const logs = this.logService.getLogs();
|
|
139
|
+
const stats = this.logService.getStats();
|
|
140
|
+
this.state.logs = logs;
|
|
141
|
+
this.state.unreadErrorCount = stats.unreadErrors;
|
|
142
|
+
this.state.unreadWarningCount = stats.unreadWarnings;
|
|
143
|
+
this.notifyListeners();
|
|
144
|
+
}
|
|
145
|
+
/**
|
|
146
|
+
* Get logs from service with optional filtering
|
|
147
|
+
*/
|
|
148
|
+
getLogs(filter) {
|
|
149
|
+
return this.logService.getLogs(filter);
|
|
150
|
+
}
|
|
151
|
+
/**
|
|
152
|
+
* Get unread error count
|
|
153
|
+
*/
|
|
154
|
+
getUnreadErrorCount() {
|
|
155
|
+
return this.logService.getUnreadErrorCount();
|
|
156
|
+
}
|
|
157
|
+
/**
|
|
158
|
+
* Get unread warning count
|
|
159
|
+
*/
|
|
160
|
+
getUnreadWarningCount() {
|
|
161
|
+
return this.logService.getUnreadWarningCount();
|
|
162
|
+
}
|
|
163
|
+
/**
|
|
164
|
+
* Mark specific logs as read
|
|
165
|
+
*/
|
|
166
|
+
markLogsAsRead(logIds) {
|
|
167
|
+
this.logService.markAsRead(logIds);
|
|
168
|
+
}
|
|
169
|
+
/**
|
|
170
|
+
* Mark all logs as read
|
|
171
|
+
*/
|
|
172
|
+
markAllLogsAsRead() {
|
|
173
|
+
this.logService.markAllAsRead();
|
|
174
|
+
}
|
|
175
|
+
/**
|
|
176
|
+
* Mark all logs of a specific level as read
|
|
177
|
+
*/
|
|
178
|
+
markLogLevelAsRead(level) {
|
|
179
|
+
this.logService.markLevelAsRead(level);
|
|
180
|
+
}
|
|
181
|
+
/**
|
|
182
|
+
* Clear all logs
|
|
183
|
+
*/
|
|
184
|
+
clearAllLogs() {
|
|
185
|
+
this.logService.clearAll();
|
|
186
|
+
}
|
|
187
|
+
/**
|
|
188
|
+
* Clear logs for a specific pane
|
|
189
|
+
*/
|
|
190
|
+
clearLogsForPane(paneId) {
|
|
191
|
+
this.logService.clearForPane(paneId);
|
|
192
|
+
}
|
|
193
|
+
/**
|
|
194
|
+
* Generate test logs for development
|
|
195
|
+
*/
|
|
196
|
+
generateTestLogs(count = 100) {
|
|
197
|
+
this.logService.generateTestLogs(count);
|
|
198
|
+
}
|
|
199
|
+
/**
|
|
200
|
+
* Get log statistics
|
|
201
|
+
*/
|
|
202
|
+
getLogStats() {
|
|
203
|
+
return this.logService.getStats();
|
|
204
|
+
}
|
|
115
205
|
reset() {
|
|
116
206
|
// Stop file watcher
|
|
117
207
|
if (this.configWatcher) {
|
|
@@ -123,11 +213,16 @@ export class StateManager extends EventEmitter {
|
|
|
123
213
|
projectName: '',
|
|
124
214
|
sessionName: '',
|
|
125
215
|
projectRoot: '',
|
|
126
|
-
settings: {}
|
|
216
|
+
settings: {},
|
|
217
|
+
logs: [],
|
|
218
|
+
unreadErrorCount: 0,
|
|
219
|
+
unreadWarningCount: 0,
|
|
127
220
|
};
|
|
128
221
|
this.updateCallbacks.clear();
|
|
129
222
|
this.removeAllListeners();
|
|
130
223
|
this.debugMessageCallback = undefined;
|
|
224
|
+
// Also reset log service
|
|
225
|
+
this.logService.reset();
|
|
131
226
|
}
|
|
132
227
|
}
|
|
133
228
|
export default StateManager.getInstance();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StateManager.js","sourceRoot":"","sources":["../../src/shared/StateManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAEtC,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"StateManager.js","sourceRoot":"","sources":["../../src/shared/StateManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
declare const DIM_GRAY = "\u001B[38;5;238m";
|
|
3
|
+
declare const RESET = "\u001B[0m";
|
|
4
|
+
declare const FILL_CHAR = "\u00B7";
|
|
5
|
+
declare function render(width: number, height: number): void;
|
|
6
|
+
declare const initialWidth: number;
|
|
7
|
+
declare const initialHeight: number;
|
|
8
|
+
//# sourceMappingURL=spacer-pane.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"spacer-pane.d.ts","sourceRoot":"","sources":["../src/spacer-pane.ts"],"names":[],"mappings":";AAKA,QAAA,MAAM,QAAQ,qBAAmB,CAAA;AACjC,QAAA,MAAM,KAAK,cAAY,CAAA;AACvB,QAAA,MAAM,SAAS,WAAM,CAAA;AAErB,iBAAS,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAcnD;AAGD,QAAA,MAAM,YAAY,QAA+B,CAAA;AACjD,QAAA,MAAM,aAAa,QAA4B,CAAA"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
"use strict";
|
|
3
|
+
// Spacer pane - displays only gray dots, no ASCII art
|
|
4
|
+
// Used to fill empty space in layouts
|
|
5
|
+
const DIM_GRAY = "\x1b[38;5;238m"; // Same gray as decorative-pane
|
|
6
|
+
const RESET = "\x1b[0m";
|
|
7
|
+
const FILL_CHAR = "·";
|
|
8
|
+
function render(width, height) {
|
|
9
|
+
const lines = [];
|
|
10
|
+
for (let row = 0; row < height; row++) {
|
|
11
|
+
let line = "";
|
|
12
|
+
for (let col = 0; col < width; col++) {
|
|
13
|
+
line += DIM_GRAY + FILL_CHAR + RESET;
|
|
14
|
+
}
|
|
15
|
+
lines.push(line);
|
|
16
|
+
}
|
|
17
|
+
// Clear screen and render
|
|
18
|
+
process.stdout.write("\x1b[2J\x1b[H"); // Clear screen and home cursor
|
|
19
|
+
process.stdout.write(lines.join("\n"));
|
|
20
|
+
}
|
|
21
|
+
// Initial render
|
|
22
|
+
const initialWidth = process.stdout.columns || 80;
|
|
23
|
+
const initialHeight = process.stdout.rows || 24;
|
|
24
|
+
render(initialWidth, initialHeight);
|
|
25
|
+
// Re-render on terminal resize
|
|
26
|
+
process.stdout.on("resize", () => {
|
|
27
|
+
const width = process.stdout.columns || 80;
|
|
28
|
+
const height = process.stdout.rows || 24;
|
|
29
|
+
render(width, height);
|
|
30
|
+
});
|
|
31
|
+
// Keep the process running
|
|
32
|
+
process.stdin.resume();
|
|
33
|
+
// Handle Ctrl+C gracefully
|
|
34
|
+
process.on("SIGINT", () => {
|
|
35
|
+
process.exit(0);
|
|
36
|
+
});
|
|
37
|
+
process.on("SIGTERM", () => {
|
|
38
|
+
process.exit(0);
|
|
39
|
+
});
|
|
40
|
+
//# sourceMappingURL=spacer-pane.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"spacer-pane.js","sourceRoot":"","sources":["../src/spacer-pane.ts"],"names":[],"mappings":";;AAEA,sDAAsD;AACtD,sCAAsC;AAEtC,MAAM,QAAQ,GAAG,gBAAgB,CAAA,CAAC,+BAA+B;AACjE,MAAM,KAAK,GAAG,SAAS,CAAA;AACvB,MAAM,SAAS,GAAG,GAAG,CAAA;AAErB,SAAS,MAAM,CAAC,KAAa,EAAE,MAAc;IAC3C,MAAM,KAAK,GAAa,EAAE,CAAA;IAE1B,KAAK,IAAI,GAAG,GAAG,CAAC,EAAE,GAAG,GAAG,MAAM,EAAE,GAAG,EAAE,EAAE,CAAC;QACtC,IAAI,IAAI,GAAG,EAAE,CAAA;QACb,KAAK,IAAI,GAAG,GAAG,CAAC,EAAE,GAAG,GAAG,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC;YACrC,IAAI,IAAI,QAAQ,GAAG,SAAS,GAAG,KAAK,CAAA;QACtC,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAClB,CAAC;IAED,0BAA0B;IAC1B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC,CAAA,CAAC,+BAA+B;IACrE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;AACxC,CAAC;AAED,iBAAiB;AACjB,MAAM,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE,CAAA;AACjD,MAAM,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,IAAI,EAAE,CAAA;AAC/C,MAAM,CAAC,YAAY,EAAE,aAAa,CAAC,CAAA;AAEnC,+BAA+B;AAC/B,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE;IAC/B,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE,CAAA;IAC1C,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,IAAI,EAAE,CAAA;IACxC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;AACvB,CAAC,CAAC,CAAA;AAEF,2BAA2B;AAC3B,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE,CAAA;AAEtB,2BAA2B;AAC3B,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE;IACxB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AACjB,CAAC,CAAC,CAAA;AAEF,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE;IACzB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AACjB,CAAC,CAAC,CAAA"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Global color theme for dmux
|
|
3
|
+
* These colors are used consistently across the TUI
|
|
4
|
+
*/
|
|
5
|
+
export declare const DMUX_ORANGE = "#ff8700";
|
|
6
|
+
export declare const DMUX_ORANGE_LIGHT = "#ffaf00";
|
|
7
|
+
export declare const COLORS: {
|
|
8
|
+
readonly accent: "#ff8700";
|
|
9
|
+
readonly selected: "#ff8700";
|
|
10
|
+
readonly unselected: "white";
|
|
11
|
+
readonly border: "gray";
|
|
12
|
+
readonly borderSelected: "#ff8700";
|
|
13
|
+
readonly success: "green";
|
|
14
|
+
readonly error: "red";
|
|
15
|
+
readonly warning: "yellow";
|
|
16
|
+
readonly info: "cyan";
|
|
17
|
+
readonly working: "cyan";
|
|
18
|
+
readonly analyzing: "magenta";
|
|
19
|
+
readonly waiting: "yellow";
|
|
20
|
+
};
|
|
21
|
+
export declare const TMUX_COLORS: {
|
|
22
|
+
readonly activeBorder: "214";
|
|
23
|
+
readonly inactiveBorder: "240";
|
|
24
|
+
};
|
|
25
|
+
//# sourceMappingURL=colors.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"colors.d.ts","sourceRoot":"","sources":["../../src/theme/colors.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,eAAO,MAAM,WAAW,YAAY,CAAC;AAGrC,eAAO,MAAM,iBAAiB,YAAY,CAAC;AAE3C,eAAO,MAAM,MAAM;;;;;;;;;;;;;CAoBT,CAAC;AAIX,eAAO,MAAM,WAAW;;;CAGd,CAAC"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Global color theme for dmux
|
|
3
|
+
* These colors are used consistently across the TUI
|
|
4
|
+
*/
|
|
5
|
+
// ANSI 256-color code 208 - matches the decorative welcome pane
|
|
6
|
+
export const DMUX_ORANGE = '#ff8700';
|
|
7
|
+
// Lighter orange for tmux borders (ANSI 256-color code 214)
|
|
8
|
+
export const DMUX_ORANGE_LIGHT = '#ffaf00';
|
|
9
|
+
export const COLORS = {
|
|
10
|
+
// Primary accent color (orange from welcome pane)
|
|
11
|
+
accent: DMUX_ORANGE,
|
|
12
|
+
// UI colors
|
|
13
|
+
selected: DMUX_ORANGE,
|
|
14
|
+
unselected: 'white',
|
|
15
|
+
border: 'gray',
|
|
16
|
+
borderSelected: DMUX_ORANGE,
|
|
17
|
+
// Status colors
|
|
18
|
+
success: 'green',
|
|
19
|
+
error: 'red',
|
|
20
|
+
warning: 'yellow',
|
|
21
|
+
info: 'cyan',
|
|
22
|
+
// Agent status colors
|
|
23
|
+
working: 'cyan',
|
|
24
|
+
analyzing: 'magenta',
|
|
25
|
+
waiting: 'yellow',
|
|
26
|
+
};
|
|
27
|
+
// Tmux-specific colors (for use in tmux commands)
|
|
28
|
+
// Only foreground colors - respects user's terminal background settings
|
|
29
|
+
export const TMUX_COLORS = {
|
|
30
|
+
activeBorder: '214', // Light orange (ANSI 256-color)
|
|
31
|
+
inactiveBorder: '240', // Gray (ANSI 256-color)
|
|
32
|
+
};
|
|
33
|
+
//# sourceMappingURL=colors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"colors.js","sourceRoot":"","sources":["../../src/theme/colors.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,gEAAgE;AAChE,MAAM,CAAC,MAAM,WAAW,GAAG,SAAS,CAAC;AAErC,4DAA4D;AAC5D,MAAM,CAAC,MAAM,iBAAiB,GAAG,SAAS,CAAC;AAE3C,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,kDAAkD;IAClD,MAAM,EAAE,WAAW;IAEnB,YAAY;IACZ,QAAQ,EAAE,WAAW;IACrB,UAAU,EAAE,OAAO;IACnB,MAAM,EAAE,MAAM;IACd,cAAc,EAAE,WAAW;IAE3B,gBAAgB;IAChB,OAAO,EAAE,OAAO;IAChB,KAAK,EAAE,KAAK;IACZ,OAAO,EAAE,QAAQ;IACjB,IAAI,EAAE,MAAM;IAEZ,sBAAsB;IACtB,OAAO,EAAE,MAAM;IACf,SAAS,EAAE,SAAS;IACpB,OAAO,EAAE,QAAQ;CACT,CAAC;AAEX,kDAAkD;AAClD,wEAAwE;AACxE,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,YAAY,EAAE,KAAK,EAAG,gCAAgC;IACtD,cAAc,EAAE,KAAK,EAAE,wBAAwB;CACvC,CAAC"}
|
package/dist/types.d.ts
CHANGED
|
@@ -13,6 +13,8 @@ export interface DmuxPane {
|
|
|
13
13
|
slug: string;
|
|
14
14
|
prompt: string;
|
|
15
15
|
paneId: string;
|
|
16
|
+
type?: 'worktree' | 'shell';
|
|
17
|
+
shellType?: string;
|
|
16
18
|
worktreePath?: string;
|
|
17
19
|
testWindowId?: string;
|
|
18
20
|
testStatus?: 'running' | 'passed' | 'failed';
|
|
@@ -69,6 +71,18 @@ export interface DmuxAppProps {
|
|
|
69
71
|
autoUpdater?: any;
|
|
70
72
|
serverPort?: number;
|
|
71
73
|
server?: any;
|
|
74
|
+
controlPaneId?: string;
|
|
75
|
+
}
|
|
76
|
+
export interface DmuxConfig {
|
|
77
|
+
projectName: string;
|
|
78
|
+
projectRoot: string;
|
|
79
|
+
panes: DmuxPane[];
|
|
80
|
+
settings: DmuxSettings;
|
|
81
|
+
lastUpdated: string;
|
|
82
|
+
controlPaneId?: string;
|
|
83
|
+
controlPaneSize?: number;
|
|
84
|
+
welcomePaneId?: string;
|
|
72
85
|
}
|
|
73
86
|
export type { HookType, HookEnvironment, } from './utils/hooks.js';
|
|
87
|
+
export type { LogLevel, LogEntry, } from './services/LogService.js';
|
|
74
88
|
//# sourceMappingURL=types.d.ts.map
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AACA,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,WAAW,GAAG,SAAS,GAAG,SAAS,CAAC;AAEvE,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,SAAS,GAAG,QAAQ,GAAG,QAAQ,CAAC;IAC7C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,SAAS,GAAG,SAAS,CAAC;IAClC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,QAAQ,GAAG,UAAU,CAAC;IAC9B,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,uBAAuB,CAAC,EAAE,WAAW,GAAG,SAAS,CAAC;IAClD,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,OAAO,CAAC,EAAE,YAAY,EAAE,CAAC;IACzB,aAAa,CAAC,EAAE,aAAa,CAAC;IAE9B,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,eAAe;IAC9B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,YAAY;IAE3B,wBAAwB,CAAC,EAAE,OAAO,CAAC;IAEnC,YAAY,CAAC,EAAE,QAAQ,GAAG,UAAU,CAAC;CACtC;AAED,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,SAAS,CAAC;AAEjD,MAAM,WAAW,iBAAiB;IAChC,GAAG,EAAE,MAAM,YAAY,GAAG,MAAM,CAAC;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,SAAS,GAAG,QAAQ,GAAG,QAAQ,CAAC;IACtC,OAAO,CAAC,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACnD;AAED,MAAM,WAAW,YAAY;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,GAAG,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,GAAG,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AACA,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,WAAW,GAAG,SAAS,GAAG,SAAS,CAAC;AAEvE,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,SAAS,GAAG,QAAQ,GAAG,QAAQ,CAAC;IAC7C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,SAAS,GAAG,SAAS,CAAC;IAClC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,QAAQ,GAAG,UAAU,CAAC;IAC9B,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,uBAAuB,CAAC,EAAE,WAAW,GAAG,SAAS,CAAC;IAClD,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,OAAO,CAAC,EAAE,YAAY,EAAE,CAAC;IACzB,aAAa,CAAC,EAAE,aAAa,CAAC;IAE9B,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,eAAe;IAC9B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,YAAY;IAE3B,wBAAwB,CAAC,EAAE,OAAO,CAAC;IAEnC,YAAY,CAAC,EAAE,QAAQ,GAAG,UAAU,CAAC;CACtC;AAED,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,SAAS,CAAC;AAEjD,MAAM,WAAW,iBAAiB;IAChC,GAAG,EAAE,MAAM,YAAY,GAAG,MAAM,CAAC;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,SAAS,GAAG,QAAQ,GAAG,QAAQ,CAAC;IACtC,OAAO,CAAC,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACnD;AAED,MAAM,WAAW,YAAY;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,GAAG,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,GAAG,CAAC;IACb,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,UAAU;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,QAAQ,EAAE,YAAY,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAGD,YAAY,EACV,QAAQ,EACR,eAAe,GAChB,MAAM,kBAAkB,CAAC;AAG1B,YAAY,EACV,QAAQ,EACR,QAAQ,GACT,MAAM,0BAA0B,CAAC"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
export interface RenderAsciiArtOptions {
|
|
2
|
+
paneId: string;
|
|
3
|
+
art: string[];
|
|
4
|
+
fillChar?: string;
|
|
5
|
+
centerVertically?: boolean;
|
|
6
|
+
centerHorizontally?: boolean;
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Render ASCII art centered in a tmux pane with fill characters
|
|
10
|
+
* Uses a persistent node script that re-renders on resize
|
|
11
|
+
*
|
|
12
|
+
* @param options - Rendering options
|
|
13
|
+
* @param options.paneId - The tmux pane ID to render to
|
|
14
|
+
* @param options.art - Array of strings representing each line of ASCII art (unused, uses default art)
|
|
15
|
+
* @param options.fillChar - Character to fill empty space (unused, uses default)
|
|
16
|
+
* @param options.centerVertically - Center art vertically (unused, always centered)
|
|
17
|
+
* @param options.centerHorizontally - Center art horizontally (unused, always centered)
|
|
18
|
+
*/
|
|
19
|
+
export declare function renderAsciiArt(options: RenderAsciiArtOptions): Promise<void>;
|
|
20
|
+
/**
|
|
21
|
+
* Predefined ASCII art designs
|
|
22
|
+
*/
|
|
23
|
+
export declare const ASCII_ART: {
|
|
24
|
+
dmuxWelcome: string;
|
|
25
|
+
};
|
|
26
|
+
//# sourceMappingURL=asciiArt.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"asciiArt.d.ts","sourceRoot":"","sources":["../../src/utils/asciiArt.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,qBAAqB;IACpC,MAAM,EAAE,MAAM,CAAA;IACd,GAAG,EAAE,MAAM,EAAE,CAAA;IACb,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,kBAAkB,CAAC,EAAE,OAAO,CAAA;CAC7B;AAmBD;;;;;;;;;;GAUG;AACH,wBAAsB,cAAc,CAClC,OAAO,EAAE,qBAAqB,GAC7B,OAAO,CAAC,IAAI,CAAC,CAkDf;AAED;;GAEG;AACH,eAAO,MAAM,SAAS;;CAiBrB,CAAA"}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
import { execSync } from "child_process";
|
|
2
|
+
/**
|
|
3
|
+
* Get dimensions of a tmux pane
|
|
4
|
+
*/
|
|
5
|
+
function getPaneDimensions(paneId) {
|
|
6
|
+
try {
|
|
7
|
+
const output = execSync(`tmux display-message -t '${paneId}' -p '#{pane_width} #{pane_height}'`, { encoding: "utf-8", stdio: "pipe" }).trim();
|
|
8
|
+
const [width, height] = output.split(" ").map((n) => parseInt(n));
|
|
9
|
+
return { width, height };
|
|
10
|
+
}
|
|
11
|
+
catch {
|
|
12
|
+
return { width: 80, height: 24 }; // Fallback
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Render ASCII art centered in a tmux pane with fill characters
|
|
17
|
+
* Uses a persistent node script that re-renders on resize
|
|
18
|
+
*
|
|
19
|
+
* @param options - Rendering options
|
|
20
|
+
* @param options.paneId - The tmux pane ID to render to
|
|
21
|
+
* @param options.art - Array of strings representing each line of ASCII art (unused, uses default art)
|
|
22
|
+
* @param options.fillChar - Character to fill empty space (unused, uses default)
|
|
23
|
+
* @param options.centerVertically - Center art vertically (unused, always centered)
|
|
24
|
+
* @param options.centerHorizontally - Center art horizontally (unused, always centered)
|
|
25
|
+
*/
|
|
26
|
+
export async function renderAsciiArt(options) {
|
|
27
|
+
const { paneId } = options;
|
|
28
|
+
// Find the decorative pane script - check both dist and src directories
|
|
29
|
+
const path = await import("path");
|
|
30
|
+
const { fileURLToPath } = await import("url");
|
|
31
|
+
const fs = await import("fs");
|
|
32
|
+
const __dirname = path.dirname(fileURLToPath(import.meta.url));
|
|
33
|
+
// Try multiple possible locations
|
|
34
|
+
const possiblePaths = [
|
|
35
|
+
path.join(__dirname, "..", "..", "dist", "decorative-pane.js"),
|
|
36
|
+
path.join(__dirname, "..", "decorative-pane.js"),
|
|
37
|
+
path.join(process.cwd(), "dist", "decorative-pane.js"),
|
|
38
|
+
];
|
|
39
|
+
let scriptPath = possiblePaths[0]; // Default
|
|
40
|
+
for (const p of possiblePaths) {
|
|
41
|
+
if (fs.existsSync(p)) {
|
|
42
|
+
scriptPath = p;
|
|
43
|
+
break;
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
// Verify the script exists
|
|
47
|
+
if (!fs.existsSync(scriptPath)) {
|
|
48
|
+
throw new Error(`Decorative pane script not found at ${scriptPath}. Tried: ${possiblePaths.join(", ")}`);
|
|
49
|
+
}
|
|
50
|
+
// Kill any existing process in the pane
|
|
51
|
+
try {
|
|
52
|
+
execSync(`tmux send-keys -t '${paneId}' C-c`, { stdio: "pipe" });
|
|
53
|
+
}
|
|
54
|
+
catch {
|
|
55
|
+
// Pane might not have a running process, that's okay
|
|
56
|
+
}
|
|
57
|
+
await new Promise((resolve) => setTimeout(resolve, 100));
|
|
58
|
+
// Run the decorative pane script with absolute path
|
|
59
|
+
const absolutePath = path.isAbsolute(scriptPath)
|
|
60
|
+
? scriptPath
|
|
61
|
+
: path.resolve(scriptPath);
|
|
62
|
+
execSync(`tmux send-keys -t '${paneId}' 'node "${absolutePath}"' Enter`, {
|
|
63
|
+
stdio: "pipe",
|
|
64
|
+
});
|
|
65
|
+
await new Promise((resolve) => setTimeout(resolve, 150));
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Predefined ASCII art designs
|
|
69
|
+
*/
|
|
70
|
+
export const ASCII_ART = {
|
|
71
|
+
dmuxWelcome: `
|
|
72
|
+
╭─────────────────────────────────────────────────────────╮
|
|
73
|
+
│ │
|
|
74
|
+
│ ███ │
|
|
75
|
+
│ ███ │
|
|
76
|
+
│ ███████ █████████████ ███ ███ ███ ███ │
|
|
77
|
+
│ ███ ███ ███ ███ ████ ███ ███ ███ ███ │
|
|
78
|
+
│ ███ ███ ███ ███ ████ ███ ███ █████ │
|
|
79
|
+
│ ███ ███ ███ ███ ████ ███ ███ ███ ███ │
|
|
80
|
+
│ ████████ ███ ███ ████ ████████ ███ ███ │
|
|
81
|
+
│ │
|
|
82
|
+
│ AI developer agent multiplexer │
|
|
83
|
+
│ Press [n] to create a new agent │
|
|
84
|
+
│ │
|
|
85
|
+
╰─────────────────────────────────────────────────────────╯
|
|
86
|
+
`,
|
|
87
|
+
};
|
|
88
|
+
//# sourceMappingURL=asciiArt.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"asciiArt.js","sourceRoot":"","sources":["../../src/utils/asciiArt.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"conflictResolutionPane.d.ts","sourceRoot":"","sources":["../../src/utils/conflictResolutionPane.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"conflictResolutionPane.d.ts","sourceRoot":"","sources":["../../src/utils/conflictResolutionPane.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAK5C,MAAM,WAAW,6BAA6B;IAC5C,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,KAAK,EAAE,QAAQ,GAAG,UAAU,CAAC;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,QAAQ,EAAE,CAAC;CAC3B;AAED;;GAEG;AACH,wBAAsB,4BAA4B,CAChD,OAAO,EAAE,6BAA6B,GACrC,OAAO,CAAC,QAAQ,CAAC,CAkInB"}
|
|
@@ -4,8 +4,9 @@
|
|
|
4
4
|
* Utilities for creating a new pane specifically for AI-assisted merge conflict resolution
|
|
5
5
|
*/
|
|
6
6
|
import { execSync } from 'child_process';
|
|
7
|
-
import {
|
|
7
|
+
import { enforceControlPaneSize } from './tmux.js';
|
|
8
8
|
import { capturePaneContent } from './paneCapture.js';
|
|
9
|
+
import { SIDEBAR_WIDTH } from './layoutManager.js';
|
|
9
10
|
/**
|
|
10
11
|
* Create a pane for resolving merge conflicts with AI assistance
|
|
11
12
|
*/
|
|
@@ -41,9 +42,12 @@ export async function createConflictResolutionPane(options) {
|
|
|
41
42
|
catch {
|
|
42
43
|
// Ignore if setting title fails
|
|
43
44
|
}
|
|
44
|
-
//
|
|
45
|
-
|
|
46
|
-
|
|
45
|
+
// Don't apply global layouts - just enforce sidebar width
|
|
46
|
+
try {
|
|
47
|
+
const controlPaneId = execSync('tmux display-message -p "#{pane_id}"', { encoding: 'utf-8' }).trim();
|
|
48
|
+
enforceControlPaneSize(controlPaneId, SIDEBAR_WIDTH);
|
|
49
|
+
}
|
|
50
|
+
catch { }
|
|
47
51
|
// CD into the target repository (where we'll resolve conflicts)
|
|
48
52
|
try {
|
|
49
53
|
execSync(`tmux send-keys -t '${paneInfo}' 'cd "${targetRepoPath}"' Enter`, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"conflictResolutionPane.js","sourceRoot":"","sources":["../../src/utils/conflictResolutionPane.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"conflictResolutionPane.js","sourceRoot":"","sources":["../../src/utils/conflictResolutionPane.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Scans project files for autocomplete
|
|
3
|
+
* Uses git ls-files for performance and respects .gitignore
|
|
4
|
+
*/
|
|
5
|
+
export interface FileScanResult {
|
|
6
|
+
files: string[];
|
|
7
|
+
basePath: string;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Get list of files in the project, relative to project root
|
|
11
|
+
* Uses git ls-files for fast scanning and automatic .gitignore respect
|
|
12
|
+
*/
|
|
13
|
+
export declare function scanProjectFiles(projectPath: string): FileScanResult;
|
|
14
|
+
/**
|
|
15
|
+
* Fuzzy match a query against a list of file paths
|
|
16
|
+
* Returns sorted list of matches with best matches first
|
|
17
|
+
*/
|
|
18
|
+
export declare function fuzzyMatchFiles(query: string, files: string[]): string[];
|
|
19
|
+
/**
|
|
20
|
+
* Clear the file cache (useful when files are created/deleted)
|
|
21
|
+
*/
|
|
22
|
+
export declare function clearFileCache(): void;
|
|
23
|
+
//# sourceMappingURL=fileScanner.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fileScanner.d.ts","sourceRoot":"","sources":["../../src/utils/fileScanner.ts"],"names":[],"mappings":"AAGA;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAOD;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,WAAW,EAAE,MAAM,GAAG,cAAc,CAsDpE;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAkExE;AAED;;GAEG;AACH,wBAAgB,cAAc,IAAI,IAAI,CAGrC"}
|