25 lines
646 B
TypeScript
25 lines
646 B
TypeScript
export default interface ConsoleFramePresenter {
|
|
initialize(): void;
|
|
|
|
blur(): void;
|
|
|
|
// eslint-disable-next-line semi
|
|
}
|
|
|
|
export class ConsoleFramePresenterImpl implements ConsoleFramePresenter {
|
|
initialize(): void {
|
|
let iframe = document.createElement('iframe');
|
|
iframe.src = browser.runtime.getURL('build/console.html');
|
|
iframe.id = 'vimvixen-console-frame';
|
|
iframe.className = 'vimvixen-console-frame';
|
|
document.body.append(iframe);
|
|
}
|
|
|
|
blur(): void {
|
|
let ele = document.getElementById('vimvixen-console-frame');
|
|
if (!ele) {
|
|
throw new Error('console frame not created');
|
|
}
|
|
ele.blur();
|
|
}
|
|
}
|