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.
Files changed (232) hide show
  1. package/dist/CleanTextInput.d.ts +9 -0
  2. package/dist/CleanTextInput.d.ts.map +1 -1
  3. package/dist/CleanTextInput.js +127 -47
  4. package/dist/CleanTextInput.js.map +1 -1
  5. package/dist/DmuxApp.d.ts +2 -2
  6. package/dist/DmuxApp.d.ts.map +1 -1
  7. package/dist/DmuxApp.js +1396 -750
  8. package/dist/DmuxApp.js.map +1 -1
  9. package/dist/actions/paneActions.d.ts.map +1 -1
  10. package/dist/actions/paneActions.js +68 -11
  11. package/dist/actions/paneActions.js.map +1 -1
  12. package/dist/actions/types.d.ts +1 -0
  13. package/dist/actions/types.d.ts.map +1 -1
  14. package/dist/actions/types.js +1 -0
  15. package/dist/actions/types.js.map +1 -1
  16. package/dist/components/ActionInputDialog.d.ts.map +1 -1
  17. package/dist/components/ActionInputDialog.js +3 -2
  18. package/dist/components/ActionInputDialog.js.map +1 -1
  19. package/dist/components/DialogBox.d.ts +16 -0
  20. package/dist/components/DialogBox.d.ts.map +1 -0
  21. package/dist/components/DialogBox.js +12 -0
  22. package/dist/components/DialogBox.js.map +1 -0
  23. package/dist/components/FooterHelp.d.ts +9 -0
  24. package/dist/components/FooterHelp.d.ts.map +1 -1
  25. package/dist/components/FooterHelp.js +41 -5
  26. package/dist/components/FooterHelp.js.map +1 -1
  27. package/dist/components/PaneCard.d.ts +3 -1
  28. package/dist/components/PaneCard.d.ts.map +1 -1
  29. package/dist/components/PaneCard.js +50 -33
  30. package/dist/components/PaneCard.js.map +1 -1
  31. package/dist/components/PanesGrid.d.ts +3 -5
  32. package/dist/components/PanesGrid.d.ts.map +1 -1
  33. package/dist/components/PanesGrid.js +40 -10
  34. package/dist/components/PanesGrid.js.map +1 -1
  35. package/dist/dashboard.js +1 -1
  36. package/dist/decorative-pane.d.ts +3 -0
  37. package/dist/decorative-pane.d.ts.map +1 -0
  38. package/dist/decorative-pane.js +136 -0
  39. package/dist/decorative-pane.js.map +1 -0
  40. package/dist/hooks/useActionSystem.d.ts +14 -1
  41. package/dist/hooks/useActionSystem.d.ts.map +1 -1
  42. package/dist/hooks/useActionSystem.js +93 -4
  43. package/dist/hooks/useActionSystem.js.map +1 -1
  44. package/dist/hooks/useNavigation.js +1 -1
  45. package/dist/hooks/useNavigation.js.map +1 -1
  46. package/dist/hooks/usePaneCreation.d.ts +1 -2
  47. package/dist/hooks/usePaneCreation.d.ts.map +1 -1
  48. package/dist/hooks/usePaneCreation.js +13 -27
  49. package/dist/hooks/usePaneCreation.js.map +1 -1
  50. package/dist/hooks/usePaneRunner.d.ts.map +1 -1
  51. package/dist/hooks/usePaneRunner.js +8 -3
  52. package/dist/hooks/usePaneRunner.js.map +1 -1
  53. package/dist/hooks/usePanes.d.ts.map +1 -1
  54. package/dist/hooks/usePanes.js +210 -37
  55. package/dist/hooks/usePanes.js.map +1 -1
  56. package/dist/hooks/useWorktreeActions.d.ts.map +1 -1
  57. package/dist/hooks/useWorktreeActions.js +7 -13
  58. package/dist/hooks/useWorktreeActions.js.map +1 -1
  59. package/dist/index.js +217 -29
  60. package/dist/index.js.map +1 -1
  61. package/dist/popups/agentChoicePopup.d.ts +7 -0
  62. package/dist/popups/agentChoicePopup.d.ts.map +1 -0
  63. package/dist/popups/agentChoicePopup.js +74 -0
  64. package/dist/popups/agentChoicePopup.js.map +1 -0
  65. package/dist/popups/choicePopup.d.ts +7 -0
  66. package/dist/popups/choicePopup.d.ts.map +1 -0
  67. package/dist/popups/choicePopup.js +64 -0
  68. package/dist/popups/choicePopup.js.map +1 -0
  69. package/dist/popups/components/FileList.d.ts +13 -0
  70. package/dist/popups/components/FileList.d.ts.map +1 -0
  71. package/dist/popups/components/FileList.js +61 -0
  72. package/dist/popups/components/FileList.js.map +1 -0
  73. package/dist/popups/components/PopupContainer.d.ts +14 -0
  74. package/dist/popups/components/PopupContainer.d.ts.map +1 -0
  75. package/dist/popups/components/PopupContainer.js +15 -0
  76. package/dist/popups/components/PopupContainer.js.map +1 -0
  77. package/dist/popups/components/PopupInputBox.d.ts +11 -0
  78. package/dist/popups/components/PopupInputBox.d.ts.map +1 -0
  79. package/dist/popups/components/PopupInputBox.js +10 -0
  80. package/dist/popups/components/PopupInputBox.js.map +1 -0
  81. package/dist/popups/components/PopupWrapper.d.ts +37 -0
  82. package/dist/popups/components/PopupWrapper.d.ts.map +1 -0
  83. package/dist/popups/components/PopupWrapper.js +88 -0
  84. package/dist/popups/components/PopupWrapper.js.map +1 -0
  85. package/dist/popups/components/index.d.ts +8 -0
  86. package/dist/popups/components/index.d.ts.map +1 -0
  87. package/dist/popups/components/index.js +8 -0
  88. package/dist/popups/components/index.js.map +1 -0
  89. package/dist/popups/config.d.ts +40 -0
  90. package/dist/popups/config.d.ts.map +1 -0
  91. package/dist/popups/config.js +40 -0
  92. package/dist/popups/config.js.map +1 -0
  93. package/dist/popups/confirmPopup.d.ts +7 -0
  94. package/dist/popups/confirmPopup.d.ts.map +1 -0
  95. package/dist/popups/confirmPopup.js +72 -0
  96. package/dist/popups/confirmPopup.js.map +1 -0
  97. package/dist/popups/hooksPopup.d.ts +7 -0
  98. package/dist/popups/hooksPopup.d.ts.map +1 -0
  99. package/dist/popups/hooksPopup.js +71 -0
  100. package/dist/popups/hooksPopup.js.map +1 -0
  101. package/dist/popups/inputPopup.d.ts +7 -0
  102. package/dist/popups/inputPopup.d.ts.map +1 -0
  103. package/dist/popups/inputPopup.js +48 -0
  104. package/dist/popups/inputPopup.js.map +1 -0
  105. package/dist/popups/kebabMenuPopup.d.ts +7 -0
  106. package/dist/popups/kebabMenuPopup.d.ts.map +1 -0
  107. package/dist/popups/kebabMenuPopup.js +52 -0
  108. package/dist/popups/kebabMenuPopup.js.map +1 -0
  109. package/dist/popups/logsPopup.d.ts +12 -0
  110. package/dist/popups/logsPopup.d.ts.map +1 -0
  111. package/dist/popups/logsPopup.js +364 -0
  112. package/dist/popups/logsPopup.js.map +1 -0
  113. package/dist/popups/mergePopup.d.ts +7 -0
  114. package/dist/popups/mergePopup.d.ts.map +1 -0
  115. package/dist/popups/mergePopup.js +310 -0
  116. package/dist/popups/mergePopup.js.map +1 -0
  117. package/dist/popups/newPanePopup.d.ts +7 -0
  118. package/dist/popups/newPanePopup.d.ts.map +1 -0
  119. package/dist/popups/newPanePopup.js +234 -0
  120. package/dist/popups/newPanePopup.js.map +1 -0
  121. package/dist/popups/progressPopup.d.ts +8 -0
  122. package/dist/popups/progressPopup.d.ts.map +1 -0
  123. package/dist/popups/progressPopup.js +54 -0
  124. package/dist/popups/progressPopup.js.map +1 -0
  125. package/dist/popups/remotePopup.d.ts +6 -0
  126. package/dist/popups/remotePopup.d.ts.map +1 -0
  127. package/dist/popups/remotePopup.js +166 -0
  128. package/dist/popups/remotePopup.js.map +1 -0
  129. package/dist/popups/settingsPopup.d.ts +7 -0
  130. package/dist/popups/settingsPopup.d.ts.map +1 -0
  131. package/dist/popups/settingsPopup.js +212 -0
  132. package/dist/popups/settingsPopup.js.map +1 -0
  133. package/dist/popups/shortcutsPopup.d.ts +6 -0
  134. package/dist/popups/shortcutsPopup.d.ts.map +1 -0
  135. package/dist/popups/shortcutsPopup.js +74 -0
  136. package/dist/popups/shortcutsPopup.js.map +1 -0
  137. package/dist/popups/templates/SimpleInputPopup.d.ts +15 -0
  138. package/dist/popups/templates/SimpleInputPopup.d.ts.map +1 -0
  139. package/dist/popups/templates/SimpleInputPopup.js +28 -0
  140. package/dist/popups/templates/SimpleInputPopup.js.map +1 -0
  141. package/dist/server/embedded-assets.d.ts.map +1 -1
  142. package/dist/server/embedded-assets.js +2066 -968
  143. package/dist/server/embedded-assets.js.map +1 -1
  144. package/dist/server/index.js +1 -1
  145. package/dist/server/index.js.map +1 -1
  146. package/dist/server/routes.d.ts +1 -1
  147. package/dist/server/routes.d.ts.map +1 -1
  148. package/dist/server/routes.js +73 -6
  149. package/dist/server/routes.js.map +1 -1
  150. package/dist/services/ConfigWatcher.d.ts.map +1 -1
  151. package/dist/services/ConfigWatcher.js +10 -3
  152. package/dist/services/ConfigWatcher.js.map +1 -1
  153. package/dist/services/LogService.d.ts +112 -0
  154. package/dist/services/LogService.d.ts.map +1 -0
  155. package/dist/services/LogService.js +252 -0
  156. package/dist/services/LogService.js.map +1 -0
  157. package/dist/services/PaneWorkerManager.d.ts.map +1 -1
  158. package/dist/services/PaneWorkerManager.js +35 -9
  159. package/dist/services/PaneWorkerManager.js.map +1 -1
  160. package/dist/services/TunnelService.d.ts +1 -0
  161. package/dist/services/TunnelService.d.ts.map +1 -1
  162. package/dist/services/TunnelService.js +56 -15
  163. package/dist/services/TunnelService.js.map +1 -1
  164. package/dist/shared/StateManager.d.ts +49 -1
  165. package/dist/shared/StateManager.d.ts.map +1 -1
  166. package/dist/shared/StateManager.js +97 -2
  167. package/dist/shared/StateManager.js.map +1 -1
  168. package/dist/spacer-pane.d.ts +8 -0
  169. package/dist/spacer-pane.d.ts.map +1 -0
  170. package/dist/spacer-pane.js +40 -0
  171. package/dist/spacer-pane.js.map +1 -0
  172. package/dist/theme/colors.d.ts +25 -0
  173. package/dist/theme/colors.d.ts.map +1 -0
  174. package/dist/theme/colors.js +33 -0
  175. package/dist/theme/colors.js.map +1 -0
  176. package/dist/types.d.ts +14 -0
  177. package/dist/types.d.ts.map +1 -1
  178. package/dist/utils/asciiArt.d.ts +26 -0
  179. package/dist/utils/asciiArt.d.ts.map +1 -0
  180. package/dist/utils/asciiArt.js +88 -0
  181. package/dist/utils/asciiArt.js.map +1 -0
  182. package/dist/utils/conflictResolutionPane.d.ts.map +1 -1
  183. package/dist/utils/conflictResolutionPane.js +8 -4
  184. package/dist/utils/conflictResolutionPane.js.map +1 -1
  185. package/dist/utils/fileScanner.d.ts +23 -0
  186. package/dist/utils/fileScanner.d.ts.map +1 -0
  187. package/dist/utils/fileScanner.js +123 -0
  188. package/dist/utils/fileScanner.js.map +1 -0
  189. package/dist/utils/generated-agents-doc.d.ts +1 -1
  190. package/dist/utils/generated-agents-doc.js +1 -1
  191. package/dist/utils/hooks.d.ts.map +1 -1
  192. package/dist/utils/hooks.js +65 -36
  193. package/dist/utils/hooks.js.map +1 -1
  194. package/dist/utils/hooksDocs.d.ts +1 -1
  195. package/dist/utils/layoutManager.d.ts +45 -0
  196. package/dist/utils/layoutManager.d.ts.map +1 -0
  197. package/dist/utils/layoutManager.js +500 -0
  198. package/dist/utils/layoutManager.js.map +1 -0
  199. package/dist/utils/paneCreation.d.ts.map +1 -1
  200. package/dist/utils/paneCreation.js +125 -11
  201. package/dist/utils/paneCreation.js.map +1 -1
  202. package/dist/utils/popup.d.ts +97 -0
  203. package/dist/utils/popup.d.ts.map +1 -0
  204. package/dist/utils/popup.js +509 -0
  205. package/dist/utils/popup.js.map +1 -0
  206. package/dist/utils/postPaneCleanup.d.ts +12 -0
  207. package/dist/utils/postPaneCleanup.d.ts.map +1 -0
  208. package/dist/utils/postPaneCleanup.js +53 -0
  209. package/dist/utils/postPaneCleanup.js.map +1 -0
  210. package/dist/utils/shellPaneDetection.d.ts +44 -0
  211. package/dist/utils/shellPaneDetection.d.ts.map +1 -0
  212. package/dist/utils/shellPaneDetection.js +175 -0
  213. package/dist/utils/shellPaneDetection.js.map +1 -0
  214. package/dist/utils/tmux.d.ts +53 -1
  215. package/dist/utils/tmux.d.ts.map +1 -1
  216. package/dist/utils/tmux.js +352 -84
  217. package/dist/utils/tmux.js.map +1 -1
  218. package/dist/utils/welcomePane.d.ts +22 -0
  219. package/dist/utils/welcomePane.d.ts.map +1 -0
  220. package/dist/utils/welcomePane.js +119 -0
  221. package/dist/utils/welcomePane.js.map +1 -0
  222. package/dist/utils/welcomePaneManager.d.ts +36 -0
  223. package/dist/utils/welcomePaneManager.d.ts.map +1 -0
  224. package/dist/utils/welcomePaneManager.js +160 -0
  225. package/dist/utils/welcomePaneManager.js.map +1 -0
  226. package/dist/workers/PaneWorker.js +2 -0
  227. package/dist/workers/PaneWorker.js.map +1 -1
  228. package/package.json +5 -2
  229. package/dist/components/NewPaneDialog.d.ts +0 -9
  230. package/dist/components/NewPaneDialog.d.ts.map +0 -1
  231. package/dist/components/NewPaneDialog.js +0 -11
  232. package/dist/components/NewPaneDialog.js.map +0 -1
@@ -1,7 +1,8 @@
1
1
  import { execSync } from 'child_process';
2
2
  import path from 'path';
3
3
  import * as fs from 'fs';
4
- import { applySmartLayout } from './tmux.js';
4
+ import { setupSidebarLayout, getTerminalDimensions, } from './tmux.js';
5
+ import { SIDEBAR_WIDTH, recalculateAndApplyLayout } from './layoutManager.js';
5
6
  import { generateSlug } from './slug.js';
6
7
  import { capturePaneContent } from './paneCapture.js';
7
8
  import { triggerHook } from './hooks.js';
@@ -77,6 +78,44 @@ export async function createPane(options, availableAgents) {
77
78
  const originalPaneId = execSync('tmux display-message -p "#{pane_id}"', {
78
79
  encoding: 'utf-8',
79
80
  }).trim();
81
+ // Load config to get control pane info
82
+ const configPath = path.join(projectRoot, '.dmux', 'dmux.config.json');
83
+ let controlPaneId;
84
+ try {
85
+ const configContent = fs.readFileSync(configPath, 'utf-8');
86
+ const config = JSON.parse(configContent);
87
+ controlPaneId = config.controlPaneId;
88
+ // Verify the control pane ID from config still exists
89
+ if (controlPaneId) {
90
+ try {
91
+ execSync(`tmux display-message -t '${controlPaneId}' -p '#{pane_id}'`, {
92
+ encoding: 'utf-8',
93
+ stdio: 'pipe'
94
+ });
95
+ // Pane exists, we can use it
96
+ }
97
+ catch {
98
+ // Pane doesn't exist anymore, use current pane and update config
99
+ controlPaneId = originalPaneId;
100
+ config.controlPaneId = controlPaneId;
101
+ config.controlPaneSize = SIDEBAR_WIDTH;
102
+ config.lastUpdated = new Date().toISOString();
103
+ fs.writeFileSync(configPath, JSON.stringify(config, null, 2));
104
+ }
105
+ }
106
+ // If control pane ID is missing, save it
107
+ if (!controlPaneId) {
108
+ controlPaneId = originalPaneId;
109
+ config.controlPaneId = controlPaneId;
110
+ config.controlPaneSize = SIDEBAR_WIDTH;
111
+ config.lastUpdated = new Date().toISOString();
112
+ fs.writeFileSync(configPath, JSON.stringify(config, null, 2));
113
+ }
114
+ }
115
+ catch (error) {
116
+ // Fallback if config loading fails
117
+ controlPaneId = originalPaneId;
118
+ }
80
119
  // Get current pane count
81
120
  const paneCount = parseInt(execSync('tmux list-panes | wc -l', { encoding: 'utf-8' }).trim());
82
121
  // Enable pane borders to show titles
@@ -86,10 +125,25 @@ export async function createPane(options, availableAgents) {
86
125
  catch {
87
126
  // Ignore if already set or fails
88
127
  }
89
- // Create new pane
90
- const paneInfo = execSync(`tmux split-window -h -P -F '#{pane_id}'`, {
91
- encoding: 'utf-8',
92
- }).trim();
128
+ // Determine if this is the first content pane
129
+ // Check existingPanes instead of contentPaneIds, because contentPaneIds includes the welcome pane
130
+ const isFirstContentPane = existingPanes.length === 0;
131
+ let paneInfo;
132
+ if (isFirstContentPane) {
133
+ // First, create the tmux pane but DON'T destroy welcome pane yet
134
+ // This way we can save the pane to config first, THEN destroy welcome pane
135
+ paneInfo = setupSidebarLayout(controlPaneId);
136
+ // Wait for pane creation to settle
137
+ await new Promise((resolve) => setTimeout(resolve, 300));
138
+ }
139
+ else {
140
+ // Subsequent panes - always split horizontally, let layout manager organize
141
+ // Get actual dmux pane IDs (not welcome pane) from existingPanes
142
+ const dmuxPaneIds = existingPanes.map(p => p.paneId);
143
+ const targetPane = dmuxPaneIds[dmuxPaneIds.length - 1]; // Split from the most recent dmux pane
144
+ // Always split horizontally - the layout manager will organize panes optimally
145
+ paneInfo = execSync(`tmux split-window -h -t '${targetPane}' -P -F '#{pane_id}'`, { encoding: 'utf-8' }).trim();
146
+ }
93
147
  // Wait for pane creation to settle
94
148
  await new Promise((resolve) => setTimeout(resolve, 500));
95
149
  // Set pane title to match the slug
@@ -101,9 +155,14 @@ export async function createPane(options, availableAgents) {
101
155
  catch {
102
156
  // Ignore if setting title fails
103
157
  }
104
- // Apply smart layout based on pane count
105
- const newPaneCount = paneCount + 1;
106
- applySmartLayout(newPaneCount);
158
+ // Apply optimal layout using the layout manager
159
+ if (controlPaneId) {
160
+ const dimensions = getTerminalDimensions();
161
+ const allContentPaneIds = [...existingPanes.map(p => p.paneId), paneInfo];
162
+ recalculateAndApplyLayout(controlPaneId, allContentPaneIds, dimensions.width, dimensions.height);
163
+ // Refresh tmux to apply changes
164
+ execSync('tmux refresh-client', { stdio: 'pipe' });
165
+ }
107
166
  // Trigger pane_created hook (after pane created, before worktree)
108
167
  await triggerHook('pane_created', projectRoot, undefined, {
109
168
  DMUX_PANE_ID: `dmux-${Date.now()}`,
@@ -116,7 +175,37 @@ export async function createPane(options, availableAgents) {
116
175
  const isHooksEditingSession = prompt && /edit.*dmux.*hooks/i.test(prompt);
117
176
  // Create git worktree and cd into it
118
177
  try {
119
- const worktreeCmd = `git worktree add "${worktreePath}" -b ${slug} 2>/dev/null ; cd "${worktreePath}"`;
178
+ // IMPORTANT: Prune stale worktrees first to avoid conflicts
179
+ // This must run synchronously from dmux, not in the pane
180
+ try {
181
+ execSync('git worktree prune', {
182
+ encoding: 'utf-8',
183
+ stdio: 'pipe',
184
+ cwd: projectRoot,
185
+ });
186
+ }
187
+ catch {
188
+ // Ignore prune errors, proceed anyway
189
+ }
190
+ // Check if branch already exists (from a deleted worktree)
191
+ let branchExists = false;
192
+ try {
193
+ execSync(`git show-ref --verify --quiet refs/heads/${slug}`, {
194
+ stdio: 'pipe',
195
+ cwd: projectRoot,
196
+ });
197
+ branchExists = true;
198
+ }
199
+ catch {
200
+ // Branch doesn't exist, which is good
201
+ }
202
+ // Build worktree command:
203
+ // - If branch exists, use it (don't create with -b)
204
+ // - If branch doesn't exist, create it with -b
205
+ // - DON'T silence errors (we want to see them in the pane for debugging)
206
+ const worktreeCmd = branchExists
207
+ ? `git worktree add "${worktreePath}" ${slug} && cd "${worktreePath}"`
208
+ : `git worktree add "${worktreePath}" -b ${slug} && cd "${worktreePath}"`;
120
209
  execSync(`tmux send-keys -t '${paneInfo}' '${worktreeCmd}' Enter`, {
121
210
  stdio: 'pipe',
122
211
  });
@@ -127,6 +216,10 @@ export async function createPane(options, availableAgents) {
127
216
  while (!fs.existsSync(worktreePath) && (Date.now() - startTime) < maxWaitTime) {
128
217
  await new Promise((resolve) => setTimeout(resolve, checkInterval));
129
218
  }
219
+ // Verify worktree was created successfully
220
+ if (!fs.existsSync(worktreePath)) {
221
+ throw new Error(`Worktree directory not created at ${worktreePath} after ${maxWaitTime}ms`);
222
+ }
130
223
  // Give a bit more time for git to finish setting up the worktree
131
224
  await new Promise((resolve) => setTimeout(resolve, 500));
132
225
  // Initialize .dmux-hooks if this is a hooks editing session
@@ -146,9 +239,12 @@ export async function createPane(options, availableAgents) {
146
239
  }
147
240
  }
148
241
  catch (error) {
149
- // Even if worktree creation failed, try to cd to the directory
150
- execSync(`tmux send-keys -t '${paneInfo}' 'cd "${worktreePath}" 2>/dev/null || (echo "ERROR: Failed to create/enter worktree ${slug}" && pwd)' Enter`, { stdio: 'pipe' });
242
+ // Worktree creation failed - send helpful error message to the pane
243
+ const errorMsg = error instanceof Error ? error.message : String(error);
244
+ execSync(`tmux send-keys -t '${paneInfo}' 'echo "❌ Failed to create worktree: ${errorMsg}"' Enter`, { stdio: 'pipe' });
245
+ execSync(`tmux send-keys -t '${paneInfo}' 'echo "Tip: Try running: git worktree prune && git branch -D ${slug}"' Enter`, { stdio: 'pipe' });
151
246
  await new Promise((resolve) => setTimeout(resolve, 1000));
247
+ // Don't throw - let the pane stay open so user can debug
152
248
  }
153
249
  // Launch agent if specified
154
250
  if (agent === 'claude') {
@@ -209,6 +305,24 @@ export async function createPane(options, availableAgents) {
209
305
  // Set autopilot based on settings (use ?? to properly handle false vs undefined)
210
306
  autopilot: settings.enableAutopilotByDefault ?? false,
211
307
  };
308
+ // CRITICAL: Save the pane to config IMMEDIATELY before destroying welcome pane
309
+ // This is the event that triggers welcome pane destruction (event-based, no polling)
310
+ if (isFirstContentPane) {
311
+ try {
312
+ const configContent = fs.readFileSync(configPath, 'utf-8');
313
+ const config = JSON.parse(configContent);
314
+ // Add the new pane to the config (panesCount becomes 1)
315
+ config.panes = [...existingPanes, newPane];
316
+ config.lastUpdated = new Date().toISOString();
317
+ fs.writeFileSync(configPath, JSON.stringify(config, null, 2));
318
+ // NOW destroy the welcome pane (event-based destruction)
319
+ const { destroyWelcomePaneCoordinated } = await import('./welcomePaneManager.js');
320
+ destroyWelcomePaneCoordinated(projectRoot);
321
+ }
322
+ catch (error) {
323
+ // Log but don't fail - welcome pane cleanup is not critical
324
+ }
325
+ }
212
326
  // Trigger worktree_created hook (after full pane setup)
213
327
  await triggerHook('worktree_created', projectRoot, newPane);
214
328
  // Switch back to the original pane
@@ -1 +1 @@
1
- {"version":3,"file":"paneCreation.js","sourceRoot":"","sources":["../../src/utils/paneCreation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"paneCreation.js","sourceRoot":"","sources":["../../src/utils/paneCreation.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,97 @@
1
+ /**
2
+ * Utility for launching tmux popup modals
3
+ * Requires tmux 3.2+
4
+ */
5
+ export interface PopupOptions {
6
+ width?: number;
7
+ height?: number;
8
+ title?: string;
9
+ centered?: boolean;
10
+ x?: number;
11
+ y?: number;
12
+ cwd?: string;
13
+ borderStyle?: string;
14
+ leftOffset?: number;
15
+ topOffset?: number;
16
+ }
17
+ export interface PopupResult<T> {
18
+ success: boolean;
19
+ data?: T;
20
+ cancelled?: boolean;
21
+ error?: string;
22
+ }
23
+ export interface PopupHandle<T> {
24
+ pid: number;
25
+ bounds: {
26
+ x: number;
27
+ y: number;
28
+ width: number;
29
+ height: number;
30
+ };
31
+ resultPromise: Promise<PopupResult<T>>;
32
+ kill: () => void;
33
+ }
34
+ /**
35
+ * Launch a tmux popup modal
36
+ * @param command - Command to run in the popup
37
+ * @param options - Popup display options
38
+ * @returns Promise that resolves when popup closes
39
+ */
40
+ export declare function launchPopup(command: string, options?: PopupOptions): Promise<PopupResult<string>>;
41
+ /**
42
+ * Launch a popup that runs a Node.js script
43
+ * @param scriptPath - Path to the compiled JS script
44
+ * @param args - Arguments to pass to the script
45
+ * @param options - Popup display options
46
+ */
47
+ export declare function launchNodePopup<T = any>(scriptPath: string, args?: string[], options?: PopupOptions): Promise<PopupResult<T>>;
48
+ /**
49
+ * Launch a popup non-blocking (returns handle immediately)
50
+ * @param command - Command to run in the popup
51
+ * @param options - Popup display options
52
+ * @returns Handle with PID, bounds, and result promise
53
+ */
54
+ export declare function launchPopupNonBlocking(command: string, options?: PopupOptions): PopupHandle<string>;
55
+ /**
56
+ * Launch a Node.js popup non-blocking (returns handle immediately)
57
+ * @param scriptPath - Path to the compiled JS script
58
+ * @param args - Arguments to pass to the script
59
+ * @param options - Popup display options
60
+ * @returns Handle with PID, bounds, and result promise
61
+ */
62
+ export declare function launchNodePopupNonBlocking<T = any>(scriptPath: string, args?: string[], options?: PopupOptions): PopupHandle<T>;
63
+ /**
64
+ * Enable tmux mouse mode for click-outside-to-close popup behavior (session-specific)
65
+ * @param sessionName - The tmux session name to enable mouse mode for
66
+ */
67
+ export declare function ensureMouseMode(sessionName: string): void;
68
+ /**
69
+ * Check if tmux supports popups (3.2+)
70
+ */
71
+ export declare function supportsPopups(): boolean;
72
+ /**
73
+ * Standard popup positioning presets for consistent UX
74
+ */
75
+ export declare const POPUP_POSITIONING: {
76
+ /**
77
+ * Standard position: top-left corner, offset from sidebar
78
+ * Use this for most popups (menus, dialogs, forms)
79
+ */
80
+ standard(sidebarWidth: number): Partial<PopupOptions>;
81
+ /**
82
+ * Centered with sidebar offset
83
+ * Use for important dialogs like new pane creation
84
+ */
85
+ centeredWithSidebar(sidebarWidth: number): Partial<PopupOptions>;
86
+ /**
87
+ * Fully centered (no sidebar consideration)
88
+ * Use only when sidebar doesn't exist or doesn't matter
89
+ */
90
+ fullyCentered(): Partial<PopupOptions>;
91
+ /**
92
+ * Large popup that takes up most of the available space
93
+ * Use for logs viewer and other content-heavy popups
94
+ */
95
+ large(sidebarWidth: number, terminalWidth: number, terminalHeight: number): Partial<PopupOptions>;
96
+ };
97
+ //# sourceMappingURL=popup.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"popup.d.ts","sourceRoot":"","sources":["../../src/utils/popup.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAQH,MAAM,WAAW,YAAY;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,CAAC,CAAC,EAAE,MAAM,CAAC;IACX,CAAC,CAAC,EAAE,MAAM,CAAC;IAEX,GAAG,CAAC,EAAE,MAAM,CAAC;IAEb,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,WAAW,CAAC,CAAC;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,CAAC,CAAC;IACT,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,WAAW,CAAC,CAAC;IAC5B,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE;QACN,CAAC,EAAE,MAAM,CAAC;QACV,CAAC,EAAE,MAAM,CAAC;QACV,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,aAAa,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;IACvC,IAAI,EAAE,MAAM,IAAI,CAAC;CAClB;AAiDD;;;;;GAKG;AACH,wBAAsB,WAAW,CAC/B,OAAO,EAAE,MAAM,EACf,OAAO,GAAE,YAAiB,GACzB,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAkH9B;AAED;;;;;GAKG;AACH,wBAAsB,eAAe,CAAC,CAAC,GAAG,GAAG,EAC3C,UAAU,EAAE,MAAM,EAClB,IAAI,GAAE,MAAM,EAAO,EACnB,OAAO,GAAE,YAAiB,GACzB,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAezB;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,MAAM,EACf,OAAO,GAAE,YAAiB,GACzB,WAAW,CAAC,MAAM,CAAC,CAoIrB;AAED;;;;;;GAMG;AACH,wBAAgB,0BAA0B,CAAC,CAAC,GAAG,GAAG,EAChD,UAAU,EAAE,MAAM,EAClB,IAAI,GAAE,MAAM,EAAO,EACnB,OAAO,GAAE,YAAiB,GACzB,WAAW,CAAC,CAAC,CAAC,CAiJhB;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAezD;AAED;;GAEG;AACH,wBAAgB,cAAc,IAAI,OAAO,CAaxC;AAED;;GAEG;AACH,eAAO,MAAM,iBAAiB;IAC5B;;;OAGG;2BACoB,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAQrD;;;OAGG;sCAC+B,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAOhE;;;OAGG;qBACc,OAAO,CAAC,YAAY,CAAC;IAMtC;;;OAGG;wBACiB,MAAM,iBAAiB,MAAM,kBAAkB,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;CASlG,CAAC"}