You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
This repo is archived. You can view files and clone it, but cannot push or open issues/pull-requests.
 
 
 

40 lines
1.0 KiB

import { injectable } from 'tsyringe';
import NavigateClient from '../clients/NavigateClient';
import TabPresenter from '../presenters/TabPresenter';
@injectable()
export default class NavigateUseCase {
constructor(
private tabPresenter: TabPresenter,
private navigateClient: NavigateClient,
) {
}
async openHistoryNext(): Promise<void> {
let tab = await this.tabPresenter.getCurrent();
await this.navigateClient.historyNext(tab.id!!);
}
async openHistoryPrev(): Promise<void> {
let tab = await this.tabPresenter.getCurrent();
await this.navigateClient.historyPrev(tab.id!!);
}
async openLinkNext(): Promise<void> {
let tab = await this.tabPresenter.getCurrent();
await this.navigateClient.linkNext(tab.id!!);
}
async openLinkPrev(): Promise<void> {
let tab = await this.tabPresenter.getCurrent();
await this.navigateClient.linkPrev(tab.id!!);
}
openParent(): Promise<void> {
throw new Error('not implemented');
}
openRoot(): Promise<void> {
throw new Error('not implemented');
}
}