dmux 3.2.0 → 3.3.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/DmuxApp.d.ts.map +1 -1
- package/dist/DmuxApp.js +221 -1596
- package/dist/DmuxApp.js.map +1 -1
- package/dist/actions/implementations/closeAction.d.ts +10 -0
- package/dist/actions/implementations/closeAction.d.ts.map +1 -0
- package/dist/actions/implementations/closeAction.js +197 -0
- package/dist/actions/implementations/closeAction.js.map +1 -0
- package/dist/actions/implementations/copyPathAction.d.ts +10 -0
- package/dist/actions/implementations/copyPathAction.d.ts.map +1 -0
- package/dist/actions/implementations/copyPathAction.js +34 -0
- package/dist/actions/implementations/copyPathAction.js.map +1 -0
- package/dist/actions/implementations/duplicateAction.d.ts +10 -0
- package/dist/actions/implementations/duplicateAction.d.ts.map +1 -0
- package/dist/actions/implementations/duplicateAction.js +25 -0
- package/dist/actions/implementations/duplicateAction.js.map +1 -0
- package/dist/actions/implementations/index.d.ts +14 -0
- package/dist/actions/implementations/index.d.ts.map +1 -0
- package/dist/actions/implementations/index.js +14 -0
- package/dist/actions/implementations/index.js.map +1 -0
- package/dist/actions/implementations/mergeAction.d.ts +14 -0
- package/dist/actions/implementations/mergeAction.d.ts.map +1 -0
- package/dist/actions/implementations/mergeAction.js +84 -0
- package/dist/actions/implementations/mergeAction.js.map +1 -0
- package/dist/actions/implementations/openInEditorAction.d.ts +12 -0
- package/dist/actions/implementations/openInEditorAction.d.ts.map +1 -0
- package/dist/actions/implementations/openInEditorAction.js +33 -0
- package/dist/actions/implementations/openInEditorAction.js.map +1 -0
- package/dist/actions/implementations/renameAction.d.ts +13 -0
- package/dist/actions/implementations/renameAction.d.ts.map +1 -0
- package/dist/actions/implementations/renameAction.js +18 -0
- package/dist/actions/implementations/renameAction.js.map +1 -0
- package/dist/actions/implementations/toggleAutopilotAction.d.ts +10 -0
- package/dist/actions/implementations/toggleAutopilotAction.d.ts.map +1 -0
- package/dist/actions/implementations/toggleAutopilotAction.js +33 -0
- package/dist/actions/implementations/toggleAutopilotAction.js.map +1 -0
- package/dist/actions/implementations/viewAction.d.ts +10 -0
- package/dist/actions/implementations/viewAction.d.ts.map +1 -0
- package/dist/actions/implementations/viewAction.js +26 -0
- package/dist/actions/implementations/viewAction.js.map +1 -0
- package/dist/actions/merge/commitMessageHandler.d.ts +27 -0
- package/dist/actions/merge/commitMessageHandler.d.ts.map +1 -0
- package/dist/actions/merge/commitMessageHandler.js +131 -0
- package/dist/actions/merge/commitMessageHandler.js.map +1 -0
- package/dist/actions/merge/conflictResolution.d.ts +13 -0
- package/dist/actions/merge/conflictResolution.d.ts.map +1 -0
- package/dist/actions/merge/conflictResolution.js +134 -0
- package/dist/actions/merge/conflictResolution.js.map +1 -0
- package/dist/actions/merge/issueHandlers/index.d.ts +11 -0
- package/dist/actions/merge/issueHandlers/index.d.ts.map +1 -0
- package/dist/actions/merge/issueHandlers/index.js +8 -0
- package/dist/actions/merge/issueHandlers/index.js.map +1 -0
- package/dist/actions/merge/issueHandlers/mainDirtyHandler.d.ts +13 -0
- package/dist/actions/merge/issueHandlers/mainDirtyHandler.d.ts.map +1 -0
- package/dist/actions/merge/issueHandlers/mainDirtyHandler.js +72 -0
- package/dist/actions/merge/issueHandlers/mainDirtyHandler.js.map +1 -0
- package/dist/actions/merge/issueHandlers/mergeConflictHandler.d.ts +13 -0
- package/dist/actions/merge/issueHandlers/mergeConflictHandler.d.ts.map +1 -0
- package/dist/actions/merge/issueHandlers/mergeConflictHandler.js +52 -0
- package/dist/actions/merge/issueHandlers/mergeConflictHandler.js.map +1 -0
- package/dist/actions/merge/issueHandlers/nothingToMergeHandler.d.ts +7 -0
- package/dist/actions/merge/issueHandlers/nothingToMergeHandler.d.ts.map +1 -0
- package/dist/actions/merge/issueHandlers/nothingToMergeHandler.js +12 -0
- package/dist/actions/merge/issueHandlers/nothingToMergeHandler.js.map +1 -0
- package/dist/actions/merge/issueHandlers/worktreeUncommittedHandler.d.ts +13 -0
- package/dist/actions/merge/issueHandlers/worktreeUncommittedHandler.d.ts.map +1 -0
- package/dist/actions/merge/issueHandlers/worktreeUncommittedHandler.js +49 -0
- package/dist/actions/merge/issueHandlers/worktreeUncommittedHandler.js.map +1 -0
- package/dist/actions/merge/mergeExecution.d.ts +22 -0
- package/dist/actions/merge/mergeExecution.d.ts.map +1 -0
- package/dist/actions/merge/mergeExecution.js +180 -0
- package/dist/actions/merge/mergeExecution.js.map +1 -0
- package/dist/actions/paneActions.d.ts +3 -40
- package/dist/actions/paneActions.d.ts.map +1 -1
- package/dist/actions/paneActions.js +4 -1038
- 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.map +1 -1
- package/dist/components/{ActionChoiceDialog.d.ts → dialogs/ActionChoiceDialog.d.ts} +1 -1
- package/dist/components/dialogs/ActionChoiceDialog.d.ts.map +1 -0
- package/dist/components/dialogs/ActionChoiceDialog.js.map +1 -0
- package/dist/components/dialogs/ActionConfirmDialog.d.ts.map +1 -0
- package/dist/components/dialogs/ActionConfirmDialog.js.map +1 -0
- package/dist/components/dialogs/ActionInputDialog.d.ts.map +1 -0
- package/dist/components/{ActionInputDialog.js → dialogs/ActionInputDialog.js} +2 -2
- package/dist/components/dialogs/ActionInputDialog.js.map +1 -0
- package/dist/components/dialogs/ActionProgressDialog.d.ts.map +1 -0
- package/dist/components/dialogs/ActionProgressDialog.js.map +1 -0
- package/dist/components/dialogs/AgentChoiceDialog.d.ts.map +1 -0
- package/dist/components/dialogs/AgentChoiceDialog.js.map +1 -0
- package/dist/components/{CloseOptionsDialog.d.ts → dialogs/CloseOptionsDialog.d.ts} +1 -1
- package/dist/components/dialogs/CloseOptionsDialog.d.ts.map +1 -0
- package/dist/components/dialogs/CloseOptionsDialog.js.map +1 -0
- package/dist/components/dialogs/CommandPromptDialog.d.ts.map +1 -0
- package/dist/components/{CommandPromptDialog.js → dialogs/CommandPromptDialog.js} +1 -1
- package/dist/components/dialogs/CommandPromptDialog.js.map +1 -0
- package/dist/components/dialogs/DialogBox.d.ts.map +1 -0
- package/dist/components/dialogs/DialogBox.js.map +1 -0
- package/dist/components/dialogs/HooksDialog.d.ts.map +1 -0
- package/dist/components/dialogs/HooksDialog.js.map +1 -0
- package/dist/components/{MergeConfirmationDialog.d.ts → dialogs/MergeConfirmationDialog.d.ts} +1 -1
- package/dist/components/dialogs/MergeConfirmationDialog.d.ts.map +1 -0
- package/dist/components/dialogs/MergeConfirmationDialog.js.map +1 -0
- package/dist/components/{SettingsDialog.d.ts → dialogs/SettingsDialog.d.ts} +1 -1
- package/dist/components/dialogs/SettingsDialog.d.ts.map +1 -0
- package/dist/components/dialogs/SettingsDialog.js.map +1 -0
- package/dist/components/dialogs/UpdateDialog.d.ts.map +1 -0
- package/dist/components/dialogs/UpdateDialog.js.map +1 -0
- package/dist/components/indicators/CreatingIndicator.d.ts.map +1 -0
- package/dist/components/indicators/CreatingIndicator.js.map +1 -0
- package/dist/components/indicators/LoadingIndicator.d.ts.map +1 -0
- package/dist/components/indicators/LoadingIndicator.js.map +1 -0
- package/dist/components/indicators/RunningIndicator.d.ts.map +1 -0
- package/dist/components/indicators/RunningIndicator.js.map +1 -0
- package/dist/components/indicators/Spinner.d.ts.map +1 -0
- package/dist/components/indicators/Spinner.js.map +1 -0
- package/dist/components/indicators/UpdatingIndicator.d.ts.map +1 -0
- package/dist/components/indicators/UpdatingIndicator.js.map +1 -0
- package/dist/components/indicators/index.d.ts +6 -0
- package/dist/components/indicators/index.d.ts.map +1 -0
- package/dist/components/indicators/index.js +6 -0
- package/dist/components/indicators/index.js.map +1 -0
- package/dist/components/inputs/CleanTextInput.d.ts.map +1 -0
- package/dist/{CleanTextInput.js → components/inputs/CleanTextInput.js} +2 -144
- package/dist/components/inputs/CleanTextInput.js.map +1 -0
- package/dist/components/inputs/StyledTextInput.d.ts.map +1 -0
- package/dist/components/inputs/StyledTextInput.js.map +1 -0
- package/dist/components/inputs/index.d.ts +3 -0
- package/dist/components/inputs/index.d.ts.map +1 -0
- package/dist/components/inputs/index.js +3 -0
- package/dist/components/inputs/index.js.map +1 -0
- package/dist/components/{KebabMenu.d.ts → panes/KebabMenu.d.ts} +1 -1
- package/dist/components/panes/KebabMenu.d.ts.map +1 -0
- package/dist/components/panes/KebabMenu.js.map +1 -0
- package/dist/components/panes/MergePane.d.ts.map +1 -0
- package/dist/{MergePane.js → components/panes/MergePane.js} +1 -1
- package/dist/components/panes/MergePane.js.map +1 -0
- package/dist/components/{PaneCard.d.ts → panes/PaneCard.d.ts} +1 -1
- package/dist/components/panes/PaneCard.d.ts.map +1 -0
- package/dist/components/{PaneCard.js → panes/PaneCard.js} +1 -1
- package/dist/components/panes/PaneCard.js.map +1 -0
- package/dist/components/{PanesGrid.d.ts → panes/PanesGrid.d.ts} +2 -2
- package/dist/components/panes/PanesGrid.d.ts.map +1 -0
- package/dist/components/{PanesGrid.js → panes/PanesGrid.js} +1 -1
- package/dist/components/panes/PanesGrid.js.map +1 -0
- package/dist/components/panes/index.d.ts +5 -0
- package/dist/components/panes/index.d.ts.map +1 -0
- package/dist/components/panes/index.js +5 -0
- package/dist/components/panes/index.js.map +1 -0
- package/dist/components/popups/agentChoicePopup.d.ts.map +1 -0
- package/dist/{popups → components/popups}/agentChoicePopup.js +1 -1
- package/dist/components/popups/agentChoicePopup.js.map +1 -0
- package/dist/components/popups/choicePopup.d.ts.map +1 -0
- package/dist/{popups → components/popups}/choicePopup.js +3 -3
- package/dist/components/popups/choicePopup.js.map +1 -0
- package/dist/components/popups/config.d.ts.map +1 -0
- package/dist/{popups → components/popups}/config.js +1 -1
- package/dist/components/popups/config.js.map +1 -0
- package/dist/components/popups/confirmPopup.d.ts.map +1 -0
- package/dist/{popups → components/popups}/confirmPopup.js +2 -3
- package/dist/components/popups/confirmPopup.js.map +1 -0
- package/dist/components/popups/hooksPopup.d.ts.map +1 -0
- package/dist/{popups → components/popups}/hooksPopup.js +1 -1
- package/dist/components/popups/hooksPopup.js.map +1 -0
- package/dist/components/popups/inputPopup.d.ts.map +1 -0
- package/dist/{popups → components/popups}/inputPopup.js +3 -4
- package/dist/components/popups/inputPopup.js.map +1 -0
- package/dist/components/popups/kebabMenuPopup.d.ts.map +1 -0
- package/dist/{popups → components/popups}/kebabMenuPopup.js +1 -1
- package/dist/components/popups/kebabMenuPopup.js.map +1 -0
- package/dist/components/popups/logsPopup.d.ts.map +1 -0
- package/dist/{popups → components/popups}/logsPopup.js +15 -7
- package/dist/components/popups/logsPopup.js.map +1 -0
- package/dist/components/popups/mergePopup.d.ts.map +1 -0
- package/dist/{popups → components/popups}/mergePopup.js +6 -6
- package/dist/components/popups/mergePopup.js.map +1 -0
- package/dist/components/popups/newPanePopup.d.ts.map +1 -0
- package/dist/{popups → components/popups}/newPanePopup.js +3 -3
- package/dist/components/popups/newPanePopup.js.map +1 -0
- package/dist/components/popups/progressPopup.d.ts.map +1 -0
- package/dist/{popups → components/popups}/progressPopup.js +1 -2
- package/dist/components/popups/progressPopup.js.map +1 -0
- package/dist/components/popups/remotePopup.d.ts.map +1 -0
- package/dist/{popups → components/popups}/remotePopup.js +1 -1
- package/dist/components/popups/remotePopup.js.map +1 -0
- package/dist/components/popups/settingsPopup.d.ts.map +1 -0
- package/dist/{popups → components/popups}/settingsPopup.js +1 -1
- package/dist/components/popups/settingsPopup.js.map +1 -0
- package/dist/components/popups/shared/FileList.d.ts.map +1 -0
- package/dist/components/popups/shared/FileList.js.map +1 -0
- package/dist/components/popups/shared/PopupContainer.d.ts.map +1 -0
- package/dist/components/popups/shared/PopupContainer.js.map +1 -0
- package/dist/components/popups/shared/PopupInputBox.d.ts.map +1 -0
- package/dist/components/popups/shared/PopupInputBox.js.map +1 -0
- package/dist/components/popups/shared/PopupWrapper.d.ts.map +1 -0
- package/dist/components/popups/shared/PopupWrapper.js.map +1 -0
- package/dist/components/popups/shared/index.d.ts.map +1 -0
- package/dist/components/popups/shared/index.js.map +1 -0
- package/dist/components/popups/shortcutsPopup.d.ts.map +1 -0
- package/dist/{popups → components/popups}/shortcutsPopup.js +1 -1
- package/dist/components/popups/shortcutsPopup.js.map +1 -0
- package/dist/components/popups/templates/SimpleInputPopup.d.ts.map +1 -0
- package/dist/{popups → components/popups}/templates/SimpleInputPopup.js +2 -2
- package/dist/components/popups/templates/SimpleInputPopup.js.map +1 -0
- package/dist/components/ui/FileCopyPrompt.d.ts.map +1 -0
- package/dist/components/ui/FileCopyPrompt.js.map +1 -0
- package/dist/components/ui/FooterHelp.d.ts.map +1 -0
- package/dist/components/ui/FooterHelp.js.map +1 -0
- package/dist/components/ui/QRCode.d.ts.map +1 -0
- package/dist/components/ui/QRCode.js.map +1 -0
- package/dist/components/ui/index.d.ts +4 -0
- package/dist/components/ui/index.d.ts.map +1 -0
- package/dist/components/ui/index.js +4 -0
- package/dist/components/ui/index.js.map +1 -0
- package/dist/constants/timing.d.ts +22 -0
- package/dist/constants/timing.d.ts.map +1 -0
- package/dist/constants/timing.js +26 -0
- package/dist/constants/timing.js.map +1 -0
- package/dist/hooks/useActionSystem.d.ts +5 -4
- package/dist/hooks/useActionSystem.d.ts.map +1 -1
- package/dist/hooks/useActionSystem.js +120 -114
- package/dist/hooks/useActionSystem.js.map +1 -1
- package/dist/hooks/useDebugInfo.d.ts +11 -0
- package/dist/hooks/useDebugInfo.d.ts.map +1 -0
- package/dist/hooks/useDebugInfo.js +34 -0
- package/dist/hooks/useDebugInfo.js.map +1 -0
- package/dist/hooks/useDialogState.d.ts +22 -0
- package/dist/hooks/useDialogState.d.ts.map +1 -0
- package/dist/hooks/useDialogState.js +62 -0
- package/dist/hooks/useDialogState.js.map +1 -0
- package/dist/hooks/useInputHandling.d.ts +60 -0
- package/dist/hooks/useInputHandling.d.ts.map +1 -0
- package/dist/hooks/useInputHandling.js +280 -0
- package/dist/hooks/useInputHandling.js.map +1 -0
- package/dist/hooks/useLayoutManagement.d.ts +12 -0
- package/dist/hooks/useLayoutManagement.d.ts.map +1 -0
- package/dist/hooks/useLayoutManagement.js +58 -0
- package/dist/hooks/useLayoutManagement.js.map +1 -0
- package/dist/hooks/usePaneCreation.d.ts.map +1 -1
- package/dist/hooks/usePaneCreation.js +4 -9
- package/dist/hooks/usePaneCreation.js.map +1 -1
- package/dist/hooks/usePaneLoading.d.ts +45 -0
- package/dist/hooks/usePaneLoading.d.ts.map +1 -0
- package/dist/hooks/usePaneLoading.js +188 -0
- package/dist/hooks/usePaneLoading.js.map +1 -0
- package/dist/hooks/usePaneRunner.d.ts.map +1 -1
- package/dist/hooks/usePaneRunner.js +9 -6
- package/dist/hooks/usePaneRunner.js.map +1 -1
- package/dist/hooks/usePaneSync.d.ts +34 -0
- package/dist/hooks/usePaneSync.d.ts.map +1 -0
- package/dist/hooks/usePaneSync.js +182 -0
- package/dist/hooks/usePaneSync.js.map +1 -0
- package/dist/hooks/usePanes.d.ts.map +1 -1
- package/dist/hooks/usePanes.js +55 -405
- package/dist/hooks/usePanes.js.map +1 -1
- package/dist/hooks/useServices.d.ts +24 -0
- package/dist/hooks/useServices.d.ts.map +1 -0
- package/dist/hooks/useServices.js +39 -0
- package/dist/hooks/useServices.js.map +1 -0
- package/dist/hooks/useShellDetection.d.ts +10 -0
- package/dist/hooks/useShellDetection.d.ts.map +1 -0
- package/dist/hooks/useShellDetection.js +53 -0
- package/dist/hooks/useShellDetection.js.map +1 -0
- package/dist/hooks/useStatusMessages.d.ts +11 -0
- package/dist/hooks/useStatusMessages.d.ts.map +1 -0
- package/dist/hooks/useStatusMessages.js +32 -0
- package/dist/hooks/useStatusMessages.js.map +1 -0
- package/dist/hooks/useTemporaryStatus.d.ts +13 -0
- package/dist/hooks/useTemporaryStatus.d.ts.map +1 -0
- package/dist/hooks/useTemporaryStatus.js +30 -0
- package/dist/hooks/useTemporaryStatus.js.map +1 -0
- package/dist/hooks/useTerminalWidth.d.ts.map +1 -1
- package/dist/hooks/useTerminalWidth.js +7 -12
- package/dist/hooks/useTerminalWidth.js.map +1 -1
- package/dist/hooks/useTunnelManagement.d.ts +18 -0
- package/dist/hooks/useTunnelManagement.d.ts.map +1 -0
- package/dist/hooks/useTunnelManagement.js +55 -0
- package/dist/hooks/useTunnelManagement.js.map +1 -0
- package/dist/hooks/useWorktreeActions.d.ts.map +1 -1
- package/dist/hooks/useWorktreeActions.js +18 -13
- package/dist/hooks/useWorktreeActions.js.map +1 -1
- package/dist/index.js +75 -57
- package/dist/index.js.map +1 -1
- package/dist/layout/LayoutCalculator.d.ts +62 -0
- package/dist/layout/LayoutCalculator.d.ts.map +1 -0
- package/dist/layout/LayoutCalculator.js +143 -0
- package/dist/layout/LayoutCalculator.js.map +1 -0
- package/dist/layout/SpacerManager.d.ts +64 -0
- package/dist/layout/SpacerManager.d.ts.map +1 -0
- package/dist/layout/SpacerManager.js +148 -0
- package/dist/layout/SpacerManager.js.map +1 -0
- package/dist/layout/TmuxLayoutApplier.d.ts +59 -0
- package/dist/layout/TmuxLayoutApplier.d.ts.map +1 -0
- package/dist/layout/TmuxLayoutApplier.js +135 -0
- package/dist/layout/TmuxLayoutApplier.js.map +1 -0
- package/dist/panes/decorative-pane.d.ts.map +1 -0
- package/dist/{decorative-pane.js → panes/decorative-pane.js} +1 -1
- package/dist/panes/decorative-pane.js.map +1 -0
- package/dist/panes/spacer-pane.d.ts.map +1 -0
- package/dist/panes/spacer-pane.js.map +1 -0
- package/dist/server/embedded-assets.d.ts.map +1 -1
- package/dist/server/embedded-assets.js +636 -5637
- package/dist/server/embedded-assets.js.map +1 -1
- package/dist/server/routes/actionsRoutes.d.ts +2 -0
- package/dist/server/routes/actionsRoutes.d.ts.map +1 -0
- package/dist/server/routes/actionsRoutes.js +110 -0
- package/dist/server/routes/actionsRoutes.js.map +1 -0
- package/dist/server/routes/healthRoutes.d.ts +13 -0
- package/dist/server/routes/healthRoutes.d.ts.map +1 -0
- package/dist/server/routes/healthRoutes.js +70 -0
- package/dist/server/routes/healthRoutes.js.map +1 -0
- package/dist/server/routes/index.d.ts +8 -0
- package/dist/server/routes/index.d.ts.map +1 -0
- package/dist/server/routes/index.js +67 -0
- package/dist/server/routes/index.js.map +1 -0
- package/dist/server/routes/keysRoutes.d.ts +20 -0
- package/dist/server/routes/keysRoutes.d.ts.map +1 -0
- package/dist/server/routes/keysRoutes.js +111 -0
- package/dist/server/routes/keysRoutes.js.map +1 -0
- package/dist/server/routes/panesRoutes.d.ts +2 -0
- package/dist/server/routes/panesRoutes.d.ts.map +1 -0
- package/dist/server/routes/panesRoutes.js +373 -0
- package/dist/server/routes/panesRoutes.js.map +1 -0
- package/dist/server/routes/settingsRoutes.d.ts +94 -0
- package/dist/server/routes/settingsRoutes.d.ts.map +1 -0
- package/dist/server/routes/settingsRoutes.js +159 -0
- package/dist/server/routes/settingsRoutes.js.map +1 -0
- package/dist/server/routes/streamRoutes.d.ts +18 -0
- package/dist/server/routes/streamRoutes.d.ts.map +1 -0
- package/dist/server/routes/streamRoutes.js +87 -0
- package/dist/server/routes/streamRoutes.js.map +1 -0
- package/dist/server/routes/tunnelRoutes.d.ts +11 -0
- package/dist/server/routes/tunnelRoutes.d.ts.map +1 -0
- package/dist/server/routes/tunnelRoutes.js +28 -0
- package/dist/server/routes/tunnelRoutes.js.map +1 -0
- package/dist/server/routes.d.ts +16 -2
- package/dist/server/routes.d.ts.map +1 -1
- package/dist/server/routes.js +16 -878
- package/dist/server/routes.js.map +1 -1
- package/dist/{AutoUpdater.d.ts → services/AutoUpdater.d.ts} +1 -0
- package/dist/services/AutoUpdater.d.ts.map +1 -0
- package/dist/{AutoUpdater.js → services/AutoUpdater.js} +42 -9
- package/dist/services/AutoUpdater.js.map +1 -0
- package/dist/services/PaneAnalyzer.d.ts.map +1 -0
- package/dist/{PaneAnalyzer.js → services/PaneAnalyzer.js} +1 -1
- package/dist/services/PaneAnalyzer.js.map +1 -0
- package/dist/services/PaneLifecycleManager.d.ts +60 -0
- package/dist/services/PaneLifecycleManager.d.ts.map +1 -0
- package/dist/services/PaneLifecycleManager.js +119 -0
- package/dist/services/PaneLifecycleManager.js.map +1 -0
- package/dist/services/PaneWorkerManager.d.ts.map +1 -1
- package/dist/services/PaneWorkerManager.js +6 -3
- package/dist/services/PaneWorkerManager.js.map +1 -1
- package/dist/services/PopupManager.d.ts +68 -0
- package/dist/services/PopupManager.d.ts.map +1 -0
- package/dist/services/PopupManager.js +415 -0
- package/dist/services/PopupManager.js.map +1 -0
- package/dist/services/StatusDetector.js +1 -1
- package/dist/services/StatusDetector.js.map +1 -1
- package/dist/services/TerminalStreamer.d.ts +1 -0
- package/dist/services/TerminalStreamer.d.ts.map +1 -1
- package/dist/services/TerminalStreamer.js +22 -16
- package/dist/services/TerminalStreamer.js.map +1 -1
- package/dist/services/TmuxService.d.ts +298 -0
- package/dist/services/TmuxService.d.ts.map +1 -0
- package/dist/services/TmuxService.js +768 -0
- package/dist/services/TmuxService.js.map +1 -0
- package/dist/services/TunnelService.d.ts.map +1 -1
- package/dist/services/TunnelService.js +2 -1
- package/dist/services/TunnelService.js.map +1 -1
- package/dist/types.d.ts +4 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/utils/asciiArt.d.ts.map +1 -1
- package/dist/utils/asciiArt.js +6 -19
- package/dist/utils/asciiArt.js.map +1 -1
- package/dist/utils/conflictMonitor.d.ts +20 -0
- package/dist/utils/conflictMonitor.d.ts.map +1 -0
- package/dist/utils/conflictMonitor.js +113 -0
- package/dist/utils/conflictMonitor.js.map +1 -0
- package/dist/utils/conflictResolutionPane.d.ts.map +1 -1
- package/dist/utils/conflictResolutionPane.js +70 -79
- package/dist/utils/conflictResolutionPane.js.map +1 -1
- package/dist/utils/errorHandling.d.ts +37 -0
- package/dist/utils/errorHandling.d.ts.map +1 -0
- package/dist/utils/errorHandling.js +112 -0
- package/dist/utils/errorHandling.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/git.d.ts +4 -0
- package/dist/utils/git.d.ts.map +1 -1
- package/dist/utils/git.js +15 -0
- package/dist/utils/git.js.map +1 -1
- package/dist/utils/hooksDocs.d.ts +1 -1
- package/dist/utils/layoutManager.d.ts +20 -16
- package/dist/utils/layoutManager.d.ts.map +1 -1
- package/dist/utils/layoutManager.js +116 -367
- package/dist/utils/layoutManager.js.map +1 -1
- package/dist/utils/mergeExecution.d.ts.map +1 -1
- package/dist/utils/mergeExecution.js +8 -1
- package/dist/utils/mergeExecution.js.map +1 -1
- package/dist/utils/mergeValidation.d.ts.map +1 -1
- package/dist/utils/mergeValidation.js +42 -13
- package/dist/utils/mergeValidation.js.map +1 -1
- package/dist/utils/paneCreation.d.ts.map +1 -1
- package/dist/utils/paneCreation.js +111 -103
- package/dist/utils/paneCreation.js.map +1 -1
- package/dist/utils/paneRebinding.d.ts +14 -0
- package/dist/utils/paneRebinding.d.ts.map +1 -0
- package/dist/utils/paneRebinding.js +28 -0
- package/dist/utils/paneRebinding.js.map +1 -0
- package/dist/utils/popup.d.ts.map +1 -1
- package/dist/utils/popup.js +11 -17
- package/dist/utils/popup.js.map +1 -1
- package/dist/utils/postPaneCleanup.d.ts.map +1 -1
- package/dist/utils/postPaneCleanup.js +4 -3
- package/dist/utils/postPaneCleanup.js.map +1 -1
- package/dist/utils/shellPaneDetection.d.ts +3 -3
- package/dist/utils/shellPaneDetection.d.ts.map +1 -1
- package/dist/utils/shellPaneDetection.js +10 -6
- package/dist/utils/shellPaneDetection.js.map +1 -1
- package/dist/utils/systemCheck.d.ts +19 -0
- package/dist/utils/systemCheck.d.ts.map +1 -0
- package/dist/utils/systemCheck.js +160 -0
- package/dist/utils/systemCheck.js.map +1 -0
- package/dist/utils/tmux.d.ts +26 -7
- package/dist/utils/tmux.d.ts.map +1 -1
- package/dist/utils/tmux.js +66 -64
- package/dist/utils/tmux.js.map +1 -1
- package/dist/utils/welcomePane.d.ts +2 -2
- package/dist/utils/welcomePane.d.ts.map +1 -1
- package/dist/utils/welcomePane.js +20 -28
- package/dist/utils/welcomePane.js.map +1 -1
- package/dist/utils/welcomePaneManager.js +1 -1
- package/dist/utils/welcomePaneManager.js.map +1 -1
- package/dist/workers/PaneWorker.js +7 -9
- package/dist/workers/PaneWorker.js.map +1 -1
- package/dist/workers/updateChecker.js +1 -1
- package/dist/workers/updateChecker.js.map +1 -1
- package/package.json +3 -1
- package/dist/AutoUpdater.d.ts.map +0 -1
- package/dist/AutoUpdater.js.map +0 -1
- package/dist/BetterTextInput.d.ts +0 -10
- package/dist/BetterTextInput.d.ts.map +0 -1
- package/dist/BetterTextInput.js +0 -177
- package/dist/BetterTextInput.js.map +0 -1
- package/dist/CleanTextInput.d.ts.map +0 -1
- package/dist/CleanTextInput.js.map +0 -1
- package/dist/EnhancedTextInput.d.ts +0 -13
- package/dist/EnhancedTextInput.d.ts.map +0 -1
- package/dist/EnhancedTextInput.js +0 -443
- package/dist/EnhancedTextInput.js.map +0 -1
- package/dist/GeminiTextInput.d.ts +0 -12
- package/dist/GeminiTextInput.d.ts.map +0 -1
- package/dist/GeminiTextInput.js +0 -210
- package/dist/GeminiTextInput.js.map +0 -1
- package/dist/MergePane.d.ts.map +0 -1
- package/dist/MergePane.js.map +0 -1
- package/dist/MultilineTextInput.d.ts +0 -10
- package/dist/MultilineTextInput.d.ts.map +0 -1
- package/dist/MultilineTextInput.js +0 -184
- package/dist/MultilineTextInput.js.map +0 -1
- package/dist/PaneAnalyzer.d.ts.map +0 -1
- package/dist/PaneAnalyzer.js.map +0 -1
- package/dist/SimpleEnhancedInput.d.ts +0 -13
- package/dist/SimpleEnhancedInput.d.ts.map +0 -1
- package/dist/SimpleEnhancedInput.js +0 -639
- package/dist/SimpleEnhancedInput.js.map +0 -1
- package/dist/SimpleGeminiInput.d.ts +0 -12
- package/dist/SimpleGeminiInput.d.ts.map +0 -1
- package/dist/SimpleGeminiInput.js +0 -223
- package/dist/SimpleGeminiInput.js.map +0 -1
- package/dist/StyledTextInput.d.ts.map +0 -1
- package/dist/StyledTextInput.js.map +0 -1
- package/dist/components/ActionChoiceDialog.d.ts.map +0 -1
- package/dist/components/ActionChoiceDialog.js.map +0 -1
- package/dist/components/ActionConfirmDialog.d.ts.map +0 -1
- package/dist/components/ActionConfirmDialog.js.map +0 -1
- package/dist/components/ActionInputDialog.d.ts.map +0 -1
- package/dist/components/ActionInputDialog.js.map +0 -1
- package/dist/components/ActionProgressDialog.d.ts.map +0 -1
- package/dist/components/ActionProgressDialog.js.map +0 -1
- package/dist/components/AgentChoiceDialog.d.ts.map +0 -1
- package/dist/components/AgentChoiceDialog.js.map +0 -1
- package/dist/components/CloseOptionsDialog.d.ts.map +0 -1
- package/dist/components/CloseOptionsDialog.js.map +0 -1
- package/dist/components/CommandPromptDialog.d.ts.map +0 -1
- package/dist/components/CommandPromptDialog.js.map +0 -1
- package/dist/components/CreatingIndicator.d.ts.map +0 -1
- package/dist/components/CreatingIndicator.js.map +0 -1
- package/dist/components/DialogBox.d.ts.map +0 -1
- package/dist/components/DialogBox.js.map +0 -1
- package/dist/components/FileCopyPrompt.d.ts.map +0 -1
- package/dist/components/FileCopyPrompt.js.map +0 -1
- package/dist/components/FooterHelp.d.ts.map +0 -1
- package/dist/components/FooterHelp.js.map +0 -1
- package/dist/components/HooksDialog.d.ts.map +0 -1
- package/dist/components/HooksDialog.js.map +0 -1
- package/dist/components/KebabMenu.d.ts.map +0 -1
- package/dist/components/KebabMenu.js.map +0 -1
- package/dist/components/LoadingIndicator.d.ts.map +0 -1
- package/dist/components/LoadingIndicator.js.map +0 -1
- package/dist/components/MergeConfirmationDialog.d.ts.map +0 -1
- package/dist/components/MergeConfirmationDialog.js.map +0 -1
- package/dist/components/PaneCard.d.ts.map +0 -1
- package/dist/components/PaneCard.js.map +0 -1
- package/dist/components/PanesGrid.d.ts.map +0 -1
- package/dist/components/PanesGrid.js.map +0 -1
- package/dist/components/QRCode.d.ts.map +0 -1
- package/dist/components/QRCode.js.map +0 -1
- package/dist/components/RunningIndicator.d.ts.map +0 -1
- package/dist/components/RunningIndicator.js.map +0 -1
- package/dist/components/SettingsDialog.d.ts.map +0 -1
- package/dist/components/SettingsDialog.js.map +0 -1
- package/dist/components/Spinner.d.ts.map +0 -1
- package/dist/components/Spinner.js.map +0 -1
- package/dist/components/UpdateDialog.d.ts.map +0 -1
- package/dist/components/UpdateDialog.js.map +0 -1
- package/dist/components/UpdatingIndicator.d.ts.map +0 -1
- package/dist/components/UpdatingIndicator.js.map +0 -1
- package/dist/decorative-pane.d.ts.map +0 -1
- package/dist/decorative-pane.js.map +0 -1
- package/dist/popups/agentChoicePopup.d.ts.map +0 -1
- package/dist/popups/agentChoicePopup.js.map +0 -1
- package/dist/popups/choicePopup.d.ts.map +0 -1
- package/dist/popups/choicePopup.js.map +0 -1
- package/dist/popups/components/FileList.d.ts.map +0 -1
- package/dist/popups/components/FileList.js.map +0 -1
- package/dist/popups/components/PopupContainer.d.ts.map +0 -1
- package/dist/popups/components/PopupContainer.js.map +0 -1
- package/dist/popups/components/PopupInputBox.d.ts.map +0 -1
- package/dist/popups/components/PopupInputBox.js.map +0 -1
- package/dist/popups/components/PopupWrapper.d.ts.map +0 -1
- package/dist/popups/components/PopupWrapper.js.map +0 -1
- package/dist/popups/components/index.d.ts.map +0 -1
- package/dist/popups/components/index.js.map +0 -1
- package/dist/popups/config.d.ts.map +0 -1
- package/dist/popups/config.js.map +0 -1
- package/dist/popups/confirmPopup.d.ts.map +0 -1
- package/dist/popups/confirmPopup.js.map +0 -1
- package/dist/popups/hooksPopup.d.ts.map +0 -1
- package/dist/popups/hooksPopup.js.map +0 -1
- package/dist/popups/inputPopup.d.ts.map +0 -1
- package/dist/popups/inputPopup.js.map +0 -1
- package/dist/popups/kebabMenuPopup.d.ts.map +0 -1
- package/dist/popups/kebabMenuPopup.js.map +0 -1
- package/dist/popups/logsPopup.d.ts.map +0 -1
- package/dist/popups/logsPopup.js.map +0 -1
- package/dist/popups/mergePopup.d.ts.map +0 -1
- package/dist/popups/mergePopup.js.map +0 -1
- package/dist/popups/newPanePopup.d.ts.map +0 -1
- package/dist/popups/newPanePopup.js.map +0 -1
- package/dist/popups/progressPopup.d.ts.map +0 -1
- package/dist/popups/progressPopup.js.map +0 -1
- package/dist/popups/remotePopup.d.ts.map +0 -1
- package/dist/popups/remotePopup.js.map +0 -1
- package/dist/popups/settingsPopup.d.ts.map +0 -1
- package/dist/popups/settingsPopup.js.map +0 -1
- package/dist/popups/shortcutsPopup.d.ts.map +0 -1
- package/dist/popups/shortcutsPopup.js.map +0 -1
- package/dist/popups/templates/SimpleInputPopup.d.ts.map +0 -1
- package/dist/popups/templates/SimpleInputPopup.js.map +0 -1
- package/dist/server/static.d.ts +0 -6
- package/dist/server/static.d.ts.map +0 -1
- package/dist/server/static.js +0 -3040
- package/dist/server/static.js.map +0 -1
- package/dist/spacer-pane.d.ts.map +0 -1
- package/dist/spacer-pane.js.map +0 -1
- /package/dist/components/{ActionChoiceDialog.js → dialogs/ActionChoiceDialog.js} +0 -0
- /package/dist/components/{ActionConfirmDialog.d.ts → dialogs/ActionConfirmDialog.d.ts} +0 -0
- /package/dist/components/{ActionConfirmDialog.js → dialogs/ActionConfirmDialog.js} +0 -0
- /package/dist/components/{ActionInputDialog.d.ts → dialogs/ActionInputDialog.d.ts} +0 -0
- /package/dist/components/{ActionProgressDialog.d.ts → dialogs/ActionProgressDialog.d.ts} +0 -0
- /package/dist/components/{ActionProgressDialog.js → dialogs/ActionProgressDialog.js} +0 -0
- /package/dist/components/{AgentChoiceDialog.d.ts → dialogs/AgentChoiceDialog.d.ts} +0 -0
- /package/dist/components/{AgentChoiceDialog.js → dialogs/AgentChoiceDialog.js} +0 -0
- /package/dist/components/{CloseOptionsDialog.js → dialogs/CloseOptionsDialog.js} +0 -0
- /package/dist/components/{CommandPromptDialog.d.ts → dialogs/CommandPromptDialog.d.ts} +0 -0
- /package/dist/components/{DialogBox.d.ts → dialogs/DialogBox.d.ts} +0 -0
- /package/dist/components/{DialogBox.js → dialogs/DialogBox.js} +0 -0
- /package/dist/components/{HooksDialog.d.ts → dialogs/HooksDialog.d.ts} +0 -0
- /package/dist/components/{HooksDialog.js → dialogs/HooksDialog.js} +0 -0
- /package/dist/components/{MergeConfirmationDialog.js → dialogs/MergeConfirmationDialog.js} +0 -0
- /package/dist/components/{SettingsDialog.js → dialogs/SettingsDialog.js} +0 -0
- /package/dist/components/{UpdateDialog.d.ts → dialogs/UpdateDialog.d.ts} +0 -0
- /package/dist/components/{UpdateDialog.js → dialogs/UpdateDialog.js} +0 -0
- /package/dist/components/{CreatingIndicator.d.ts → indicators/CreatingIndicator.d.ts} +0 -0
- /package/dist/components/{CreatingIndicator.js → indicators/CreatingIndicator.js} +0 -0
- /package/dist/components/{LoadingIndicator.d.ts → indicators/LoadingIndicator.d.ts} +0 -0
- /package/dist/components/{LoadingIndicator.js → indicators/LoadingIndicator.js} +0 -0
- /package/dist/components/{RunningIndicator.d.ts → indicators/RunningIndicator.d.ts} +0 -0
- /package/dist/components/{RunningIndicator.js → indicators/RunningIndicator.js} +0 -0
- /package/dist/components/{Spinner.d.ts → indicators/Spinner.d.ts} +0 -0
- /package/dist/components/{Spinner.js → indicators/Spinner.js} +0 -0
- /package/dist/components/{UpdatingIndicator.d.ts → indicators/UpdatingIndicator.d.ts} +0 -0
- /package/dist/components/{UpdatingIndicator.js → indicators/UpdatingIndicator.js} +0 -0
- /package/dist/{CleanTextInput.d.ts → components/inputs/CleanTextInput.d.ts} +0 -0
- /package/dist/{StyledTextInput.d.ts → components/inputs/StyledTextInput.d.ts} +0 -0
- /package/dist/{StyledTextInput.js → components/inputs/StyledTextInput.js} +0 -0
- /package/dist/components/{KebabMenu.js → panes/KebabMenu.js} +0 -0
- /package/dist/{MergePane.d.ts → components/panes/MergePane.d.ts} +0 -0
- /package/dist/{popups → components/popups}/agentChoicePopup.d.ts +0 -0
- /package/dist/{popups → components/popups}/choicePopup.d.ts +0 -0
- /package/dist/{popups → components/popups}/config.d.ts +0 -0
- /package/dist/{popups → components/popups}/confirmPopup.d.ts +0 -0
- /package/dist/{popups → components/popups}/hooksPopup.d.ts +0 -0
- /package/dist/{popups → components/popups}/inputPopup.d.ts +0 -0
- /package/dist/{popups → components/popups}/kebabMenuPopup.d.ts +0 -0
- /package/dist/{popups → components/popups}/logsPopup.d.ts +0 -0
- /package/dist/{popups → components/popups}/mergePopup.d.ts +0 -0
- /package/dist/{popups → components/popups}/newPanePopup.d.ts +0 -0
- /package/dist/{popups → components/popups}/progressPopup.d.ts +0 -0
- /package/dist/{popups → components/popups}/remotePopup.d.ts +0 -0
- /package/dist/{popups → components/popups}/settingsPopup.d.ts +0 -0
- /package/dist/{popups/components → components/popups/shared}/FileList.d.ts +0 -0
- /package/dist/{popups/components → components/popups/shared}/FileList.js +0 -0
- /package/dist/{popups/components → components/popups/shared}/PopupContainer.d.ts +0 -0
- /package/dist/{popups/components → components/popups/shared}/PopupContainer.js +0 -0
- /package/dist/{popups/components → components/popups/shared}/PopupInputBox.d.ts +0 -0
- /package/dist/{popups/components → components/popups/shared}/PopupInputBox.js +0 -0
- /package/dist/{popups/components → components/popups/shared}/PopupWrapper.d.ts +0 -0
- /package/dist/{popups/components → components/popups/shared}/PopupWrapper.js +0 -0
- /package/dist/{popups/components → components/popups/shared}/index.d.ts +0 -0
- /package/dist/{popups/components → components/popups/shared}/index.js +0 -0
- /package/dist/{popups → components/popups}/shortcutsPopup.d.ts +0 -0
- /package/dist/{popups → components/popups}/templates/SimpleInputPopup.d.ts +0 -0
- /package/dist/components/{FileCopyPrompt.d.ts → ui/FileCopyPrompt.d.ts} +0 -0
- /package/dist/components/{FileCopyPrompt.js → ui/FileCopyPrompt.js} +0 -0
- /package/dist/components/{FooterHelp.d.ts → ui/FooterHelp.d.ts} +0 -0
- /package/dist/components/{FooterHelp.js → ui/FooterHelp.js} +0 -0
- /package/dist/components/{QRCode.d.ts → ui/QRCode.d.ts} +0 -0
- /package/dist/components/{QRCode.js → ui/QRCode.js} +0 -0
- /package/dist/{decorative-pane.d.ts → panes/decorative-pane.d.ts} +0 -0
- /package/dist/{spacer-pane.d.ts → panes/spacer-pane.d.ts} +0 -0
- /package/dist/{spacer-pane.js → panes/spacer-pane.js} +0 -0
- /package/dist/{PaneAnalyzer.d.ts → services/PaneAnalyzer.d.ts} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"embedded-assets.js","sourceRoot":"","sources":["../../src/server/embedded-assets.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAQH,MAAM,CAAC,MAAM,cAAc,GAAkC;IAC3D,
|
|
1
|
+
{"version":3,"file":"embedded-assets.js","sourceRoot":"","sources":["../../src/server/embedded-assets.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"actionsRoutes.d.ts","sourceRoot":"","sources":["../../../src/server/routes/actionsRoutes.ts"],"names":[],"mappings":"AAeA,wBAAgB,mBAAmB,wBA2HlC"}
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
import { eventHandler, getRouterParams, setHeader, createRouter, } from 'h3';
|
|
2
|
+
import { handleListActions, handleGetPaneActions, handleExecuteAction, handleConfirmCallback, handleChoiceCallback, handleInputCallback } from '../actionsApi.js';
|
|
3
|
+
export function createActionsRoutes() {
|
|
4
|
+
const router = createRouter();
|
|
5
|
+
// GET /api/actions - List all actions
|
|
6
|
+
router.get('/api/actions', eventHandler(async (event) => {
|
|
7
|
+
return new Promise((resolve, reject) => {
|
|
8
|
+
handleListActions(event.node.req, {
|
|
9
|
+
writeHead: (code, headers) => {
|
|
10
|
+
event.node.res.statusCode = code;
|
|
11
|
+
Object.entries(headers).forEach(([k, v]) => setHeader(event, k, v));
|
|
12
|
+
},
|
|
13
|
+
end: (data) => resolve(JSON.parse(data))
|
|
14
|
+
});
|
|
15
|
+
});
|
|
16
|
+
}));
|
|
17
|
+
// GET /api/panes/:id/actions - Get available actions for pane
|
|
18
|
+
router.get('/api/panes/:id/actions', eventHandler(async (event) => {
|
|
19
|
+
const params = getRouterParams(event);
|
|
20
|
+
const paneId = params?.id;
|
|
21
|
+
if (!paneId) {
|
|
22
|
+
event.node.res.statusCode = 400;
|
|
23
|
+
return { error: 'Missing pane ID' };
|
|
24
|
+
}
|
|
25
|
+
return new Promise((resolve, reject) => {
|
|
26
|
+
handleGetPaneActions(event.node.req, {
|
|
27
|
+
writeHead: (code, headers) => {
|
|
28
|
+
event.node.res.statusCode = code;
|
|
29
|
+
Object.entries(headers).forEach(([k, v]) => setHeader(event, k, v));
|
|
30
|
+
},
|
|
31
|
+
end: (data) => resolve(JSON.parse(data))
|
|
32
|
+
}, decodeURIComponent(paneId));
|
|
33
|
+
});
|
|
34
|
+
}));
|
|
35
|
+
// POST /api/panes/:paneId/actions/:actionId - Execute action
|
|
36
|
+
router.post('/api/panes/:paneId/actions/:actionId', eventHandler(async (event) => {
|
|
37
|
+
const params = getRouterParams(event);
|
|
38
|
+
const paneId = params?.paneId;
|
|
39
|
+
const actionId = params?.actionId;
|
|
40
|
+
if (!paneId || !actionId) {
|
|
41
|
+
event.node.res.statusCode = 400;
|
|
42
|
+
return { error: 'Missing pane ID or action ID' };
|
|
43
|
+
}
|
|
44
|
+
return new Promise((resolve, reject) => {
|
|
45
|
+
handleExecuteAction(event.node.req, {
|
|
46
|
+
writeHead: (code, headers) => {
|
|
47
|
+
event.node.res.statusCode = code;
|
|
48
|
+
Object.entries(headers).forEach(([k, v]) => setHeader(event, k, v));
|
|
49
|
+
},
|
|
50
|
+
end: (data) => resolve(JSON.parse(data))
|
|
51
|
+
}, decodeURIComponent(paneId), decodeURIComponent(actionId));
|
|
52
|
+
});
|
|
53
|
+
}));
|
|
54
|
+
// POST /api/callbacks/confirm/:callbackId - Respond to confirm dialog
|
|
55
|
+
router.post('/api/callbacks/confirm/:callbackId', eventHandler(async (event) => {
|
|
56
|
+
const params = getRouterParams(event);
|
|
57
|
+
const callbackId = params?.callbackId;
|
|
58
|
+
if (!callbackId) {
|
|
59
|
+
event.node.res.statusCode = 400;
|
|
60
|
+
return { error: 'Missing callback ID' };
|
|
61
|
+
}
|
|
62
|
+
return new Promise((resolve, reject) => {
|
|
63
|
+
handleConfirmCallback(event.node.req, {
|
|
64
|
+
writeHead: (code, headers) => {
|
|
65
|
+
event.node.res.statusCode = code;
|
|
66
|
+
Object.entries(headers).forEach(([k, v]) => setHeader(event, k, v));
|
|
67
|
+
},
|
|
68
|
+
end: (data) => resolve(JSON.parse(data))
|
|
69
|
+
}, decodeURIComponent(callbackId));
|
|
70
|
+
});
|
|
71
|
+
}));
|
|
72
|
+
// POST /api/callbacks/choice/:callbackId - Respond to choice dialog
|
|
73
|
+
router.post('/api/callbacks/choice/:callbackId', eventHandler(async (event) => {
|
|
74
|
+
const params = getRouterParams(event);
|
|
75
|
+
const callbackId = params?.callbackId;
|
|
76
|
+
if (!callbackId) {
|
|
77
|
+
event.node.res.statusCode = 400;
|
|
78
|
+
return { error: 'Missing callback ID' };
|
|
79
|
+
}
|
|
80
|
+
return new Promise((resolve, reject) => {
|
|
81
|
+
handleChoiceCallback(event.node.req, {
|
|
82
|
+
writeHead: (code, headers) => {
|
|
83
|
+
event.node.res.statusCode = code;
|
|
84
|
+
Object.entries(headers).forEach(([k, v]) => setHeader(event, k, v));
|
|
85
|
+
},
|
|
86
|
+
end: (data) => resolve(JSON.parse(data))
|
|
87
|
+
}, decodeURIComponent(callbackId));
|
|
88
|
+
});
|
|
89
|
+
}));
|
|
90
|
+
// POST /api/callbacks/input/:callbackId - Respond to input dialog
|
|
91
|
+
router.post('/api/callbacks/input/:callbackId', eventHandler(async (event) => {
|
|
92
|
+
const params = getRouterParams(event);
|
|
93
|
+
const callbackId = params?.callbackId;
|
|
94
|
+
if (!callbackId) {
|
|
95
|
+
event.node.res.statusCode = 400;
|
|
96
|
+
return { error: 'Missing callback ID' };
|
|
97
|
+
}
|
|
98
|
+
return new Promise((resolve, reject) => {
|
|
99
|
+
handleInputCallback(event.node.req, {
|
|
100
|
+
writeHead: (code, headers) => {
|
|
101
|
+
event.node.res.statusCode = code;
|
|
102
|
+
Object.entries(headers).forEach(([k, v]) => setHeader(event, k, v));
|
|
103
|
+
},
|
|
104
|
+
end: (data) => resolve(JSON.parse(data))
|
|
105
|
+
}, decodeURIComponent(callbackId));
|
|
106
|
+
});
|
|
107
|
+
}));
|
|
108
|
+
return router;
|
|
109
|
+
}
|
|
110
|
+
//# sourceMappingURL=actionsRoutes.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"actionsRoutes.js","sourceRoot":"","sources":["../../../src/server/routes/actionsRoutes.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export declare function createHealthRoutes(): ({
|
|
2
|
+
path: string;
|
|
3
|
+
handler: import("h3").EventHandler<import("h3").EventHandlerRequest, Promise<{
|
|
4
|
+
status: string;
|
|
5
|
+
timestamp: number;
|
|
6
|
+
}>>;
|
|
7
|
+
} | {
|
|
8
|
+
path: string;
|
|
9
|
+
handler: import("h3").EventHandler<import("h3").EventHandlerRequest, Promise<string | {
|
|
10
|
+
error: string;
|
|
11
|
+
}>>;
|
|
12
|
+
})[];
|
|
13
|
+
//# sourceMappingURL=healthRoutes.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"healthRoutes.d.ts","sourceRoot":"","sources":["../../../src/server/routes/healthRoutes.ts"],"names":[],"mappings":"AAWA,wBAAgB,kBAAkB;;;;;;;;;;;KAmEjC"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import { eventHandler, setHeader } from 'h3';
|
|
2
|
+
import { getEmbeddedAsset } from '../embedded-assets.js';
|
|
3
|
+
function serveEmbeddedAsset(filename) {
|
|
4
|
+
const asset = getEmbeddedAsset(filename);
|
|
5
|
+
if (!asset) {
|
|
6
|
+
throw new Error(`Embedded asset not found: ${filename}`);
|
|
7
|
+
}
|
|
8
|
+
return asset.content;
|
|
9
|
+
}
|
|
10
|
+
export function createHealthRoutes() {
|
|
11
|
+
return [
|
|
12
|
+
// GET /api/health - Health check
|
|
13
|
+
{
|
|
14
|
+
path: '/api/health',
|
|
15
|
+
handler: eventHandler(async () => {
|
|
16
|
+
return { status: 'ok', timestamp: Date.now() };
|
|
17
|
+
})
|
|
18
|
+
},
|
|
19
|
+
// Static files - Dashboard HTML
|
|
20
|
+
// IMPORTANT: This must be last to avoid catching API routes
|
|
21
|
+
{
|
|
22
|
+
path: '/',
|
|
23
|
+
handler: eventHandler(async (event) => {
|
|
24
|
+
const path = event.node.req.url || '/';
|
|
25
|
+
// Skip API routes - let them 404 naturally
|
|
26
|
+
if (path.startsWith('/api/')) {
|
|
27
|
+
event.node.res.statusCode = 404;
|
|
28
|
+
return { error: 'API endpoint not found' };
|
|
29
|
+
}
|
|
30
|
+
if (path === '/' || path === '/index.html') {
|
|
31
|
+
setHeader(event, 'Content-Type', 'text/html');
|
|
32
|
+
return serveEmbeddedAsset('dashboard.html');
|
|
33
|
+
}
|
|
34
|
+
// Terminal viewer page
|
|
35
|
+
if (path.startsWith('/panes/')) {
|
|
36
|
+
setHeader(event, 'Content-Type', 'text/html');
|
|
37
|
+
return serveEmbeddedAsset('terminal.html');
|
|
38
|
+
}
|
|
39
|
+
// Serve any CSS file from root of dist/
|
|
40
|
+
if (path.endsWith('.css')) {
|
|
41
|
+
const filename = path.substring(1); // Remove leading /
|
|
42
|
+
const asset = getEmbeddedAsset(filename);
|
|
43
|
+
if (asset) {
|
|
44
|
+
setHeader(event, 'Content-Type', 'text/css');
|
|
45
|
+
return asset.content;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
// Serve any JS file from root of dist/ (not in subdirectories)
|
|
49
|
+
if (path.endsWith('.js') && path.lastIndexOf('/') === 0) {
|
|
50
|
+
const filename = path.substring(1); // Remove leading /
|
|
51
|
+
const asset = getEmbeddedAsset(filename);
|
|
52
|
+
if (asset) {
|
|
53
|
+
setHeader(event, 'Content-Type', 'application/javascript');
|
|
54
|
+
return asset.content;
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
// Serve chunk files
|
|
58
|
+
if (path.startsWith('/chunks/')) {
|
|
59
|
+
setHeader(event, 'Content-Type', 'application/javascript');
|
|
60
|
+
const filename = path.substring(1); // Remove leading /
|
|
61
|
+
return serveEmbeddedAsset(filename);
|
|
62
|
+
}
|
|
63
|
+
// 404 for unknown routes
|
|
64
|
+
event.node.res.statusCode = 404;
|
|
65
|
+
return 'Not Found';
|
|
66
|
+
})
|
|
67
|
+
}
|
|
68
|
+
];
|
|
69
|
+
}
|
|
70
|
+
//# sourceMappingURL=healthRoutes.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"healthRoutes.js","sourceRoot":"","sources":["../../../src/server/routes/healthRoutes.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { type App } from 'h3';
|
|
2
|
+
/**
|
|
3
|
+
* Sets up all application routes
|
|
4
|
+
* @param app - The h3 app instance
|
|
5
|
+
* @param server - Optional server instance for tunnel functionality
|
|
6
|
+
*/
|
|
7
|
+
export declare function setupRoutes(app: App, server?: any): void;
|
|
8
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/server/routes/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAA2B,KAAK,GAAG,EAAE,MAAM,IAAI,CAAC;AASvD;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,GAAG,QA6DjD"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { eventHandler, setHeader } from 'h3';
|
|
2
|
+
import { createPanesRoutes } from './panesRoutes.js';
|
|
3
|
+
import { createStreamRoutes } from './streamRoutes.js';
|
|
4
|
+
import { createKeysRoutes } from './keysRoutes.js';
|
|
5
|
+
import { createActionsRoutes } from './actionsRoutes.js';
|
|
6
|
+
import { createSettingsRoutes } from './settingsRoutes.js';
|
|
7
|
+
import { createTunnelRoutes } from './tunnelRoutes.js';
|
|
8
|
+
import { createHealthRoutes } from './healthRoutes.js';
|
|
9
|
+
/**
|
|
10
|
+
* Sets up all application routes
|
|
11
|
+
* @param app - The h3 app instance
|
|
12
|
+
* @param server - Optional server instance for tunnel functionality
|
|
13
|
+
*/
|
|
14
|
+
export function setupRoutes(app, server) {
|
|
15
|
+
// CORS middleware for all routes
|
|
16
|
+
app.use('/', eventHandler(async (event) => {
|
|
17
|
+
// Get the origin from the request
|
|
18
|
+
const origin = event.node.req.headers.origin;
|
|
19
|
+
// Allow any origin (including tunnel URLs) for SSE and API requests
|
|
20
|
+
if (origin) {
|
|
21
|
+
setHeader(event, 'Access-Control-Allow-Origin', origin);
|
|
22
|
+
setHeader(event, 'Access-Control-Allow-Credentials', 'true');
|
|
23
|
+
}
|
|
24
|
+
else {
|
|
25
|
+
setHeader(event, 'Access-Control-Allow-Origin', '*');
|
|
26
|
+
}
|
|
27
|
+
setHeader(event, 'Access-Control-Allow-Methods', 'GET, POST, PATCH, OPTIONS');
|
|
28
|
+
setHeader(event, 'Access-Control-Allow-Headers', 'Content-Type, Cache-Control');
|
|
29
|
+
setHeader(event, 'Access-Control-Max-Age', 86400); // 24 hours
|
|
30
|
+
if (event.node.req.method === 'OPTIONS') {
|
|
31
|
+
event.node.res.statusCode = 204;
|
|
32
|
+
return '';
|
|
33
|
+
}
|
|
34
|
+
}));
|
|
35
|
+
// Mount settings routes (includes session, hooks, logs)
|
|
36
|
+
const settingsRoutes = createSettingsRoutes();
|
|
37
|
+
settingsRoutes.forEach(route => {
|
|
38
|
+
app.use(route.path, route.handler);
|
|
39
|
+
});
|
|
40
|
+
// Mount tunnel routes
|
|
41
|
+
const tunnelRoutes = createTunnelRoutes(server);
|
|
42
|
+
tunnelRoutes.forEach(route => {
|
|
43
|
+
app.use(route.path, route.handler);
|
|
44
|
+
});
|
|
45
|
+
// Mount actions routes (uses createRouter internally)
|
|
46
|
+
const actionsRouter = createActionsRoutes();
|
|
47
|
+
app.use(actionsRouter);
|
|
48
|
+
// Mount panes routes (uses createRouter internally)
|
|
49
|
+
const panesRouter = createPanesRoutes();
|
|
50
|
+
app.use(panesRouter);
|
|
51
|
+
// Mount stream routes
|
|
52
|
+
const streamRoutes = createStreamRoutes();
|
|
53
|
+
streamRoutes.forEach(route => {
|
|
54
|
+
app.use(route.path, route.handler);
|
|
55
|
+
});
|
|
56
|
+
// Mount keys routes
|
|
57
|
+
const keysRoutes = createKeysRoutes();
|
|
58
|
+
keysRoutes.forEach(route => {
|
|
59
|
+
app.use(route.path, route.handler);
|
|
60
|
+
});
|
|
61
|
+
// Mount health routes (includes static file serving - MUST BE LAST)
|
|
62
|
+
const healthRoutes = createHealthRoutes();
|
|
63
|
+
healthRoutes.forEach(route => {
|
|
64
|
+
app.use(route.path, route.handler);
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/server/routes/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
export declare function createKeysRoutes(): {
|
|
2
|
+
path: string;
|
|
3
|
+
handler: import("h3").EventHandler<import("h3").EventHandlerRequest, Promise<{
|
|
4
|
+
error: string;
|
|
5
|
+
success?: undefined;
|
|
6
|
+
key?: undefined;
|
|
7
|
+
details?: undefined;
|
|
8
|
+
} | {
|
|
9
|
+
success: boolean;
|
|
10
|
+
key: any;
|
|
11
|
+
error?: undefined;
|
|
12
|
+
details?: undefined;
|
|
13
|
+
} | {
|
|
14
|
+
error: string;
|
|
15
|
+
details: any;
|
|
16
|
+
success?: undefined;
|
|
17
|
+
key?: undefined;
|
|
18
|
+
}>>;
|
|
19
|
+
}[];
|
|
20
|
+
//# sourceMappingURL=keysRoutes.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"keysRoutes.d.ts","sourceRoot":"","sources":["../../../src/server/routes/keysRoutes.ts"],"names":[],"mappings":"AAQA,wBAAgB,gBAAgB;;;;;;;;;;;;;;;;;;IAiH/B"}
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
import { eventHandler, readBody } from 'h3';
|
|
2
|
+
import { StateManager } from '../../shared/StateManager.js';
|
|
3
|
+
import { LogService } from '../../services/LogService.js';
|
|
4
|
+
import { TmuxService } from '../../services/TmuxService.js';
|
|
5
|
+
const stateManager = StateManager.getInstance();
|
|
6
|
+
const tmuxService = TmuxService.getInstance();
|
|
7
|
+
export function createKeysRoutes() {
|
|
8
|
+
return [
|
|
9
|
+
// POST /api/keys/:paneId - Send keystrokes to pane
|
|
10
|
+
{
|
|
11
|
+
path: '/api/keys',
|
|
12
|
+
handler: eventHandler(async (event) => {
|
|
13
|
+
// Only accept POST requests
|
|
14
|
+
if (event.node.req.method !== 'POST') {
|
|
15
|
+
event.node.res.statusCode = 405;
|
|
16
|
+
return { error: 'Method not allowed' };
|
|
17
|
+
}
|
|
18
|
+
const url = event.node.req.url || '';
|
|
19
|
+
const dmuxId = url.startsWith('/') ? url.substring(1) : url;
|
|
20
|
+
if (!dmuxId || dmuxId.includes('/')) {
|
|
21
|
+
event.node.res.statusCode = 404;
|
|
22
|
+
return { error: 'Invalid pane ID' };
|
|
23
|
+
}
|
|
24
|
+
// Find the pane by dmux ID
|
|
25
|
+
const pane = stateManager.getPaneById(decodeURIComponent(dmuxId));
|
|
26
|
+
if (!pane || !pane.paneId) {
|
|
27
|
+
event.node.res.statusCode = 404;
|
|
28
|
+
return { error: 'Pane not found' };
|
|
29
|
+
}
|
|
30
|
+
// Read the keystroke data from the request body
|
|
31
|
+
const body = await readBody(event);
|
|
32
|
+
if (!body || typeof body.key !== 'string') {
|
|
33
|
+
event.node.res.statusCode = 400;
|
|
34
|
+
return { error: 'Missing or invalid key data' };
|
|
35
|
+
}
|
|
36
|
+
try {
|
|
37
|
+
// Map special keys to tmux send-keys format
|
|
38
|
+
const key = body.key;
|
|
39
|
+
let tmuxKey = key;
|
|
40
|
+
// Handle special keys
|
|
41
|
+
const specialKeys = {
|
|
42
|
+
'Enter': 'Enter',
|
|
43
|
+
'Tab': 'Tab',
|
|
44
|
+
'Backspace': 'BSpace',
|
|
45
|
+
'Delete': 'DC', // Delete Character
|
|
46
|
+
'Escape': 'Escape',
|
|
47
|
+
'ArrowUp': 'Up',
|
|
48
|
+
'ArrowDown': 'Down',
|
|
49
|
+
'ArrowLeft': 'Left',
|
|
50
|
+
'ArrowRight': 'Right',
|
|
51
|
+
'Home': 'Home',
|
|
52
|
+
'End': 'End',
|
|
53
|
+
'PageUp': 'PageUp',
|
|
54
|
+
'PageDown': 'PageDown',
|
|
55
|
+
'Space': 'Space'
|
|
56
|
+
};
|
|
57
|
+
// Priority order: Ctrl/Alt combinations first, then special keys, then regular
|
|
58
|
+
// Handle Ctrl+ combinations with regular characters
|
|
59
|
+
if (body.ctrlKey && key.length === 1 && !specialKeys[key]) {
|
|
60
|
+
tmuxKey = `C-${key.toLowerCase()}`;
|
|
61
|
+
}
|
|
62
|
+
// Handle Alt+ combinations with regular characters
|
|
63
|
+
else if (body.altKey && key.length === 1 && !specialKeys[key]) {
|
|
64
|
+
tmuxKey = `M-${key.toLowerCase()}`;
|
|
65
|
+
}
|
|
66
|
+
// Handle Shift+Tab
|
|
67
|
+
else if (body.shiftKey && key === 'Tab') {
|
|
68
|
+
tmuxKey = 'BTab';
|
|
69
|
+
}
|
|
70
|
+
// Handle Shift+Enter - send the escape sequence using printf to handle escape character
|
|
71
|
+
else if (body.shiftKey && key === 'Enter') {
|
|
72
|
+
// Send ESC[13;2~ which is the standard Shift+Enter sequence
|
|
73
|
+
const bufferName = 'dmux-shift-enter';
|
|
74
|
+
await tmuxService.setBuffer(bufferName, '\x1b[13;2~');
|
|
75
|
+
await tmuxService.pasteBuffer(bufferName, pane.paneId);
|
|
76
|
+
await tmuxService.deleteBuffer(bufferName);
|
|
77
|
+
return { success: true, key: 'Shift+Enter (CSI sequence)' };
|
|
78
|
+
}
|
|
79
|
+
// Handle Ctrl+ with special keys
|
|
80
|
+
else if (body.ctrlKey && specialKeys[key]) {
|
|
81
|
+
tmuxKey = `C-${specialKeys[key]}`;
|
|
82
|
+
}
|
|
83
|
+
// Handle Alt+ with special keys
|
|
84
|
+
else if (body.altKey && specialKeys[key]) {
|
|
85
|
+
tmuxKey = `M-${specialKeys[key]}`;
|
|
86
|
+
}
|
|
87
|
+
// Handle special keys alone
|
|
88
|
+
else if (specialKeys[key]) {
|
|
89
|
+
tmuxKey = specialKeys[key];
|
|
90
|
+
}
|
|
91
|
+
// Regular character - use sendKeys which handles literal flag
|
|
92
|
+
else if (key.length === 1) {
|
|
93
|
+
await tmuxService.sendKeys(pane.paneId, `-l ${JSON.stringify(key)}`);
|
|
94
|
+
return { success: true, key: key };
|
|
95
|
+
}
|
|
96
|
+
// Send the key to tmux (for all non-literal keys)
|
|
97
|
+
await tmuxService.sendKeys(pane.paneId, tmuxKey);
|
|
98
|
+
return { success: true, key: tmuxKey };
|
|
99
|
+
}
|
|
100
|
+
catch (error) {
|
|
101
|
+
const msg = 'Failed to send keys to pane';
|
|
102
|
+
console.error(msg, error);
|
|
103
|
+
LogService.getInstance().error(msg, 'routes', pane.id, error instanceof Error ? error : undefined);
|
|
104
|
+
event.node.res.statusCode = 500;
|
|
105
|
+
return { error: 'Failed to send keys', details: error.message };
|
|
106
|
+
}
|
|
107
|
+
})
|
|
108
|
+
}
|
|
109
|
+
];
|
|
110
|
+
}
|
|
111
|
+
//# sourceMappingURL=keysRoutes.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"keysRoutes.js","sourceRoot":"","sources":["../../../src/server/routes/keysRoutes.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"panesRoutes.d.ts","sourceRoot":"","sources":["../../../src/server/routes/panesRoutes.ts"],"names":[],"mappings":"AAkCA,wBAAgB,iBAAiB,wBA8ahC"}
|