Capitalize background scripts

This commit is contained in:
Shin'ya Ueoka 2019-02-24 20:54:35 +09:00
parent 21788740c1
commit a26d8a8a1b
50 changed files with 247 additions and 245 deletions

View file

@ -0,0 +1,11 @@
import AddonEnabledUseCase from '../usecases/AddonEnabledUseCase';
export default class AddonEnabledController {
constructor() {
this.addonEnabledUseCase = new AddonEnabledUseCase();
}
indicate(enabled) {
return this.addonEnabledUseCase.indicate(enabled);
}
}

View file

@ -1,6 +1,6 @@
import CompletionsInteractor from '../usecases/completions';
import CommandInteractor from '../usecases/command';
import Completions from '../domains/completions';
import CompletionsUseCase from '../usecases/CompletionsUseCase';
import CommandUseCase from '../usecases/CommandUseCase';
import Completions from '../domains/Completions';
const trimStart = (str) => {
// NOTE String.trimStart is available on Firefox 61
@ -9,8 +9,8 @@ const trimStart = (str) => {
export default class CommandController {
constructor() {
this.completionsInteractor = new CompletionsInteractor();
this.commandIndicator = new CommandInteractor();
this.completionsUseCase = new CompletionsUseCase();
this.commandIndicator = new CommandUseCase();
}
getCompletions(line) {
@ -18,7 +18,7 @@ export default class CommandController {
let words = trimmed.split(/ +/);
let name = words[0];
if (words.length === 1) {
return this.completionsInteractor.queryConsoleCommand(name);
return this.completionsUseCase.queryConsoleCommand(name);
}
let keywords = trimStart(trimmed.slice(name.length));
switch (words[0]) {
@ -28,22 +28,22 @@ export default class CommandController {
case 'tabopen':
case 'w':
case 'winopen':
return this.completionsInteractor.queryOpen(name, keywords);
return this.completionsUseCase.queryOpen(name, keywords);
case 'b':
case 'buffer':
return this.completionsInteractor.queryBuffer(name, keywords);
return this.completionsUseCase.queryBuffer(name, keywords);
case 'bd':
case 'bdel':
case 'bdelete':
case 'bdeletes':
return this.completionsInteractor.queryBdelete(name, keywords);
return this.completionsUseCase.queryBdelete(name, keywords);
case 'bd!':
case 'bdel!':
case 'bdelete!':
case 'bdeletes!':
return this.completionsInteractor.queryBdeleteForce(name, keywords);
return this.completionsUseCase.queryBdeleteForce(name, keywords);
case 'set':
return this.completionsInteractor.querySet(name, keywords);
return this.completionsUseCase.querySet(name, keywords);
}
return Promise.resolve(Completions.empty());
}

View file

@ -0,0 +1,15 @@
import FindUseCase from '../usecases/FindUseCase';
export default class FindController {
constructor() {
this.findUseCase = new FindUseCase();
}
getKeyword() {
return this.findUseCase.getKeyword();
}
setKeyword(keyword) {
return this.findUseCase.setKeyword(keyword);
}
}

View file

@ -0,0 +1,15 @@
import LinkUseCase from '../usecases/LinkUseCase';
export default class LinkController {
constructor() {
this.linkUseCase = new LinkUseCase();
}
openToTab(url, tabId) {
this.linkUseCase.openToTab(url, tabId);
}
openNewTab(url, openerId, background) {
this.linkUseCase.openNewTab(url, openerId, background);
}
}

View file

@ -0,0 +1,15 @@
import MarkUseCase from '../usecases/MarkUseCase';
export default class MarkController {
constructor() {
this.markUseCase = new MarkUseCase();
}
setGlobal(key, x, y) {
this.markUseCase.setGlobal(key, x, y);
}
jumpGlobal(key) {
this.markUseCase.jumpGlobal(key);
}
}

View file

@ -0,0 +1,69 @@
import operations from '../../shared/operations';
import OperationUseCase from '../usecases/OperationUseCase';
export default class OperationController {
constructor() {
this.operationUseCase = new OperationUseCase();
}
// eslint-disable-next-line complexity, max-lines-per-function
exec(operation) {
switch (operation.type) {
case operations.TAB_CLOSE:
return this.operationUseCase.close(false);
case operations.TAB_CLOSE_RIGHT:
return this.operationUseCase.closeRight();
case operations.TAB_CLOSE_FORCE:
return this.operationUseCase.close(true);
case operations.TAB_REOPEN:
return this.operationUseCase.reopen();
case operations.TAB_PREV:
return this.operationUseCase.selectPrev(1);
case operations.TAB_NEXT:
return this.operationUseCase.selectNext(1);
case operations.TAB_FIRST:
return this.operationUseCase.selectFirst();
case operations.TAB_LAST:
return this.operationUseCase.selectLast();
case operations.TAB_PREV_SEL:
return this.operationUseCase.selectPrevSelected();
case operations.TAB_RELOAD:
return this.operationUseCase.reload(operation.cache);
case operations.TAB_PIN:
return this.operationUseCase.setPinned(true);
case operations.TAB_UNPIN:
return this.operationUseCase.setPinned(false);
case operations.TAB_TOGGLE_PINNED:
return this.operationUseCase.togglePinned();
case operations.TAB_DUPLICATE:
return this.operationUseCase.duplicate();
case operations.PAGE_SOURCE:
return this.operationUseCase.openPageSource();
case operations.PAGE_HOME:
return this.operationUseCase.openHome(operation.newTab);
case operations.ZOOM_IN:
return this.operationUseCase.zoomIn();
case operations.ZOOM_OUT:
return this.operationUseCase.zoomOut();
case operations.ZOOM_NEUTRAL:
return this.operationUseCase.zoomNutoral();
case operations.COMMAND_SHOW:
return this.operationUseCase.showCommand();
case operations.COMMAND_SHOW_OPEN:
return this.operationUseCase.showOpenCommand(operation.alter);
case operations.COMMAND_SHOW_TABOPEN:
return this.operationUseCase.showTabopenCommand(operation.alter);
case operations.COMMAND_SHOW_WINOPEN:
return this.operationUseCase.showWinopenCommand(operation.alter);
case operations.COMMAND_SHOW_BUFFER:
return this.operationUseCase.showBufferCommand();
case operations.COMMAND_SHOW_ADDBOOKMARK:
return this.operationUseCase.showAddbookmarkCommand(operation.alter);
case operations.FIND_START:
return this.operationUseCase.findStart();
case operations.CANCEL:
return this.operationUseCase.hideConsole();
}
}
}

View file

@ -0,0 +1,18 @@
import SettingUseCase from '../usecases/SettingUseCase';
import ContentMessageClient from '../infrastructures/ContentMessageClient';
export default class SettingController {
constructor() {
this.settingUseCase = new SettingUseCase();
this.contentMessageClient = new ContentMessageClient();
}
getSetting() {
return this.settingUseCase.get();
}
async reload() {
await this.settingUseCase.reload();
this.contentMessageClient.broadcastSettingsChanged();
}
}

View file

@ -0,0 +1,11 @@
import VersionUseCase from '../usecases/VersionUseCase';
export default class VersionController {
constructor() {
this.versionUseCase = new VersionUseCase();
}
notifyIfUpdated() {
this.versionUseCase.notifyIfUpdated();
}
}

View file

@ -1,11 +0,0 @@
import AddonEnabledInteractor from '../usecases/addon-enabled';
export default class AddonEnabledController {
constructor() {
this.addonEnabledInteractor = new AddonEnabledInteractor();
}
indicate(enabled) {
return this.addonEnabledInteractor.indicate(enabled);
}
}

View file

@ -1,15 +0,0 @@
import FindInteractor from '../usecases/find';
export default class FindController {
constructor() {
this.findInteractor = new FindInteractor();
}
getKeyword() {
return this.findInteractor.getKeyword();
}
setKeyword(keyword) {
return this.findInteractor.setKeyword(keyword);
}
}

View file

@ -1,15 +0,0 @@
import LinkInteractor from '../usecases/link';
export default class LinkController {
constructor() {
this.linkInteractor = new LinkInteractor();
}
openToTab(url, tabId) {
this.linkInteractor.openToTab(url, tabId);
}
openNewTab(url, openerId, background) {
this.linkInteractor.openNewTab(url, openerId, background);
}
}

View file

@ -1,15 +0,0 @@
import MarkInteractor from '../usecases/mark';
export default class MarkController {
constructor() {
this.markInteractor = new MarkInteractor();
}
setGlobal(key, x, y) {
this.markInteractor.setGlobal(key, x, y);
}
jumpGlobal(key) {
this.markInteractor.jumpGlobal(key);
}
}

View file

@ -1,69 +0,0 @@
import operations from '../../shared/operations';
import OperationInteractor from '../usecases/operation';
export default class OperationController {
constructor() {
this.operationInteractor = new OperationInteractor();
}
// eslint-disable-next-line complexity, max-lines-per-function
exec(operation) {
switch (operation.type) {
case operations.TAB_CLOSE:
return this.operationInteractor.close(false);
case operations.TAB_CLOSE_RIGHT:
return this.operationInteractor.closeRight();
case operations.TAB_CLOSE_FORCE:
return this.operationInteractor.close(true);
case operations.TAB_REOPEN:
return this.operationInteractor.reopen();
case operations.TAB_PREV:
return this.operationInteractor.selectPrev(1);
case operations.TAB_NEXT:
return this.operationInteractor.selectNext(1);
case operations.TAB_FIRST:
return this.operationInteractor.selectFirst();
case operations.TAB_LAST:
return this.operationInteractor.selectLast();
case operations.TAB_PREV_SEL:
return this.operationInteractor.selectPrevSelected();
case operations.TAB_RELOAD:
return this.operationInteractor.reload(operation.cache);
case operations.TAB_PIN:
return this.operationInteractor.setPinned(true);
case operations.TAB_UNPIN:
return this.operationInteractor.setPinned(false);
case operations.TAB_TOGGLE_PINNED:
return this.operationInteractor.togglePinned();
case operations.TAB_DUPLICATE:
return this.operationInteractor.duplicate();
case operations.PAGE_SOURCE:
return this.operationInteractor.openPageSource();
case operations.PAGE_HOME:
return this.operationInteractor.openHome(operation.newTab);
case operations.ZOOM_IN:
return this.operationInteractor.zoomIn();
case operations.ZOOM_OUT:
return this.operationInteractor.zoomOut();
case operations.ZOOM_NEUTRAL:
return this.operationInteractor.zoomNutoral();
case operations.COMMAND_SHOW:
return this.operationInteractor.showCommand();
case operations.COMMAND_SHOW_OPEN:
return this.operationInteractor.showOpenCommand(operation.alter);
case operations.COMMAND_SHOW_TABOPEN:
return this.operationInteractor.showTabopenCommand(operation.alter);
case operations.COMMAND_SHOW_WINOPEN:
return this.operationInteractor.showWinopenCommand(operation.alter);
case operations.COMMAND_SHOW_BUFFER:
return this.operationInteractor.showBufferCommand();
case operations.COMMAND_SHOW_ADDBOOKMARK:
return this.operationInteractor.showAddbookmarkCommand(operation.alter);
case operations.FIND_START:
return this.operationInteractor.findStart();
case operations.CANCEL:
return this.operationInteractor.hideConsole();
}
}
}

View file

@ -1,18 +0,0 @@
import SettingInteractor from '../usecases/setting';
import ContentMessageClient from '../infrastructures/content-message-client';
export default class SettingController {
constructor() {
this.settingInteractor = new SettingInteractor();
this.contentMessageClient = new ContentMessageClient();
}
getSetting() {
return this.settingInteractor.get();
}
async reload() {
await this.settingInteractor.reload();
this.contentMessageClient.broadcastSettingsChanged();
}
}

View file

@ -1,11 +0,0 @@
import VersionInteractor from '../usecases/version';
export default class VersionController {
constructor() {
this.versionInteractor = new VersionInteractor();
}
notifyIfUpdated() {
this.versionInteractor.notifyIfUpdated();
}
}