Use TSyringe on content script

This commit is contained in:
Shin'ya Ueoka 2019-05-20 22:21:31 +09:00
parent 71f3a1ea2d
commit 1666e626b0
35 changed files with 398 additions and 433 deletions

View file

@ -1,19 +1,17 @@
import AddonIndicatorClient, { AddonIndicatorClientImpl }
from '../client/AddonIndicatorClient';
import AddonEnabledRepository, { AddonEnabledRepositoryImpl }
from '../repositories/AddonEnabledRepository';
import { injectable, inject } from 'tsyringe';
import AddonIndicatorClient from '../client/AddonIndicatorClient';
import AddonEnabledRepository from '../repositories/AddonEnabledRepository';
@injectable()
export default class AddonEnabledUseCase {
private indicator: AddonIndicatorClient;
private repository: AddonEnabledRepository;
constructor(
@inject('AddonIndicatorClient')
private indicator: AddonIndicatorClient,
constructor({
indicator = new AddonIndicatorClientImpl(),
repository = new AddonEnabledRepositoryImpl(),
} = {}) {
this.indicator = indicator;
this.repository = repository;
@inject('AddonEnabledRepository')
private repository: AddonEnabledRepository,
) {
}
async enable(): Promise<void> {