recoveryProvider.ts 761 B

12345678910111213141516171819202122
  1. import { Injectable } from '@angular/core'
  2. import { TabRecoveryProvider, NewTabParameters, RecoveryToken } from 'tabby-core'
  3. import { TerminalTabComponent } from './components/terminalTab.component'
  4. /** @hidden */
  5. @Injectable()
  6. export class RecoveryProvider extends TabRecoveryProvider<TerminalTabComponent> {
  7. async applicableTo (recoveryToken: RecoveryToken): Promise<boolean> {
  8. return recoveryToken.type === 'app:local-tab'
  9. }
  10. async recover (recoveryToken: RecoveryToken): Promise<NewTabParameters<TerminalTabComponent>> {
  11. return {
  12. type: TerminalTabComponent,
  13. inputs: {
  14. profile: recoveryToken.profile,
  15. savedState: recoveryToken.savedState,
  16. },
  17. }
  18. }
  19. }