Support remote project tabs with local OpenCode bridge
Keeps provider credentials local while executing OpenCode shell and file tools against the selected remote workspace over SSH.
This commit is contained in:
@@ -11,6 +11,7 @@
|
||||
},
|
||||
"dependencies": {
|
||||
"@git.zone/ide-protocol": "workspace:*",
|
||||
"@git.zone/ide-opencode-bridge": "workspace:*",
|
||||
"@git.zone/ide-server-installer": "workspace:*",
|
||||
"@git.zone/ide-ssh": "workspace:*",
|
||||
"electron": "^42.0.1"
|
||||
|
||||
@@ -4,6 +4,8 @@ contextBridge.exposeInMainWorld('gitZoneIde', {
|
||||
listHosts: () => ipcRenderer.invoke('gitzone:list-hosts'),
|
||||
saveHost: (input) => ipcRenderer.invoke('gitzone:save-host', input),
|
||||
connect: (input) => ipcRenderer.invoke('gitzone:connect', input),
|
||||
addProject: (input) => ipcRenderer.invoke('gitzone:add-project', input),
|
||||
openProject: (input) => ipcRenderer.invoke('gitzone:open-project', input),
|
||||
onConnectProgress: (callback) => {
|
||||
const listener = (_event, message) => callback(message);
|
||||
ipcRenderer.on('gitzone:connect-progress', listener);
|
||||
|
||||
+1122
-180
File diff suppressed because it is too large
Load Diff
@@ -1,6 +1,8 @@
|
||||
import * as crypto from 'node:crypto';
|
||||
import * as http from 'node:http';
|
||||
import * as electron from 'electron';
|
||||
import * as ideOpenCodeBridge from '@git.zone/ide-opencode-bridge';
|
||||
import * as ideServerInstaller from '@git.zone/ide-server-installer';
|
||||
import * as ideSsh from '@git.zone/ide-ssh';
|
||||
|
||||
export { crypto, electron, ideServerInstaller, ideSsh };
|
||||
export { crypto, electron, http, ideOpenCodeBridge, ideServerInstaller, ideSsh };
|
||||
|
||||
@@ -41,12 +41,14 @@
|
||||
"target": "browser",
|
||||
"backend": {
|
||||
"config": {
|
||||
"singleInstance": false,
|
||||
"configurationFolder": ".git.zone/ide/theia"
|
||||
}
|
||||
},
|
||||
"frontend": {
|
||||
"config": {
|
||||
"applicationName": "Git.Zone IDE",
|
||||
"defaultTheme": "dark",
|
||||
"preferencesDirName": ".git-zone-ide"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -6,7 +6,7 @@ const { BackendApplicationConfigProvider } = require('@theia/core/lib/node/backe
|
||||
const main = require('@theia/core/lib/node/main');
|
||||
|
||||
BackendApplicationConfigProvider.set({
|
||||
"singleInstance": true,
|
||||
"singleInstance": false,
|
||||
"frontendConnectionTimeout": 0,
|
||||
"configurationFolder": ".git.zone/ide/theia"
|
||||
});
|
||||
|
||||
@@ -7,10 +7,7 @@ const { FrontendApplicationConfigProvider } = require('@theia/core/lib/browser/f
|
||||
|
||||
FrontendApplicationConfigProvider.set({
|
||||
"applicationName": "Git.Zone IDE",
|
||||
"defaultTheme": {
|
||||
"light": "light",
|
||||
"dark": "dark"
|
||||
},
|
||||
"defaultTheme": "dark",
|
||||
"defaultIconTheme": "theia-file-icons",
|
||||
"electron": {
|
||||
"windowOptions": {},
|
||||
|
||||
Reference in New Issue
Block a user