ref(connectable tab) getRecoveryToken method

This commit is contained in:
Clem Fern 2023-05-12 20:06:40 +02:00
parent bd4b11813c
commit 38b8702373
4 changed files with 10 additions and 24 deletions

View file

@ -90,14 +90,6 @@ export class SerialTabComponent extends ConnectableTerminalTabComponent<SerialPr
}
}
async getRecoveryToken (options?: GetRecoveryTokenOptions): Promise<any> {
return {
type: 'app:serial-tab',
profile: this.profile,
savedState: options?.includeState && this.frontend?.saveState(),
}
}
async changeBaudRate () {
const rate = await this.selector.show(
this.translate.instant(_('Baud rate')),

View file

@ -186,14 +186,6 @@ export class SSHTabComponent extends ConnectableTerminalTabComponent<SSHProfile>
}
}
async getRecoveryToken (options?: GetRecoveryTokenOptions): Promise<RecoveryToken> {
return {
type: 'app:ssh-tab',
profile: this.profile,
savedState: options?.includeState && this.frontend?.saveState(),
}
}
showPortForwarding (): void {
const modal = this.ngbModal.open(SSHPortForwardingModalComponent).componentInstance as SSHPortForwardingModalComponent
modal.session = this.sshSession!

View file

@ -73,14 +73,6 @@ export class TelnetTabComponent extends ConnectableTerminalTabComponent<TelnetPr
}
}
async getRecoveryToken (options?: GetRecoveryTokenOptions): Promise<RecoveryToken> {
return {
type: 'app:telnet-tab',
profile: this.profile,
savedState: options?.includeState && this.frontend?.saveState(),
}
}
async canClose (): Promise<boolean> {
if (!this.session?.open) {
return true

View file

@ -6,6 +6,8 @@ import { first } from 'rxjs'
import { BaseTerminalProfile } from './interfaces'
import { BaseTerminalTabComponent } from './baseTerminalTab.component'
import { GetRecoveryTokenOptions } from 'tabby-core'
/**
* A class to base your custom connectable terminal tabs on
@ -69,6 +71,14 @@ export abstract class ConnectableTerminalTabComponent<P extends BaseTerminalProf
}
}
async getRecoveryToken (options?: GetRecoveryTokenOptions): Promise<any> {
return {
type: `app:${this.profile.type}-tab`,
profile: this.profile,
savedState: options?.includeState && this.frontend?.saveState(),
}
}
async reconnect (): Promise<void> {
this.session?.destroy()
await this.initializeSession()