mirror of
https://github.com/Eugeny/tabby.git
synced 2025-06-27 06:49:53 +00:00
wrap TerminalTab into SSHTab
This commit is contained in:
parent
2101c18657
commit
deb99b0865
13
terminus-ssh/src/components/sshTab.component.scss
Normal file
13
terminus-ssh/src/components/sshTab.component.scss
Normal file
@ -0,0 +1,13 @@
|
||||
:host {
|
||||
flex: auto;
|
||||
display: flex;
|
||||
overflow: hidden;
|
||||
|
||||
&> .content {
|
||||
flex: auto;
|
||||
position: relative;
|
||||
display: block;
|
||||
overflow: hidden;
|
||||
margin: 15px;
|
||||
}
|
||||
}
|
14
terminus-ssh/src/components/sshTab.component.ts
Normal file
14
terminus-ssh/src/components/sshTab.component.ts
Normal file
@ -0,0 +1,14 @@
|
||||
import { Component } from '@angular/core'
|
||||
import { TerminalTabComponent } from 'terminus-terminal'
|
||||
|
||||
@Component({
|
||||
template: `
|
||||
<div
|
||||
#content
|
||||
class="content"
|
||||
></div>
|
||||
`,
|
||||
styles: [require('./sshTab.component.scss')],
|
||||
})
|
||||
export class SSHTabComponent extends TerminalTabComponent {
|
||||
}
|
@ -10,6 +10,7 @@ import { EditConnectionModalComponent } from './components/editConnectionModal.c
|
||||
import { SSHModalComponent } from './components/sshModal.component'
|
||||
import { PromptModalComponent } from './components/promptModal.component'
|
||||
import { SSHSettingsTabComponent } from './components/sshSettingsTab.component'
|
||||
import { SSHTabComponent } from './components/sshTab.component'
|
||||
|
||||
import { ButtonProvider } from './buttonProvider'
|
||||
import { SSHConfigProvider } from './config'
|
||||
@ -33,12 +34,14 @@ import { SSHSettingsTabProvider } from './settings'
|
||||
PromptModalComponent,
|
||||
SSHModalComponent,
|
||||
SSHSettingsTabComponent,
|
||||
SSHTabComponent,
|
||||
],
|
||||
declarations: [
|
||||
EditConnectionModalComponent,
|
||||
PromptModalComponent,
|
||||
SSHModalComponent,
|
||||
SSHSettingsTabComponent,
|
||||
SSHTabComponent,
|
||||
],
|
||||
})
|
||||
export default class SSHModule { }
|
||||
|
@ -5,9 +5,9 @@ import * as fs from 'mz/fs'
|
||||
import * as path from 'path'
|
||||
import { ToastrService } from 'ngx-toastr'
|
||||
import { AppService, HostAppService, Platform, Logger, LogService } from 'terminus-core'
|
||||
import { TerminalTabComponent } from 'terminus-terminal'
|
||||
import { SSHConnection, SSHSession } from '../api'
|
||||
import { PromptModalComponent } from '../components/promptModal.component'
|
||||
import { SSHTabComponent } from '../components/sshTab.component'
|
||||
import { PasswordStorageService } from './passwordStorage.service'
|
||||
const { SSH2Stream } = require('ssh2-streams')
|
||||
|
||||
@ -33,7 +33,7 @@ export class SSHService {
|
||||
this.logger = log.create('ssh')
|
||||
}
|
||||
|
||||
async connect (connection: SSHConnection): Promise<TerminalTabComponent> {
|
||||
async connect (connection: SSHConnection): Promise<SSHTabComponent> {
|
||||
let privateKey: string = null
|
||||
let privateKeyPassphrase: string = null
|
||||
let privateKeyPath = connection.privateKey
|
||||
@ -171,9 +171,9 @@ export class SSHService {
|
||||
let session = new SSHSession(shell, connection)
|
||||
|
||||
return this.zone.run(() => this.app.openNewTab(
|
||||
TerminalTabComponent,
|
||||
SSHTabComponent,
|
||||
{ session, sessionOptions: {} }
|
||||
) as TerminalTabComponent)
|
||||
) as SSHTabComponent)
|
||||
} catch (error) {
|
||||
console.log(error)
|
||||
throw error
|
||||
|
Loading…
x
Reference in New Issue
Block a user