diff options
Diffstat (limited to 'src/content/operators/impls/YankURLOperator.ts')
-rw-r--r-- | src/content/operators/impls/YankURLOperator.ts | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/src/content/operators/impls/YankURLOperator.ts b/src/content/operators/impls/YankURLOperator.ts new file mode 100644 index 0000000..2e774eb --- /dev/null +++ b/src/content/operators/impls/YankURLOperator.ts @@ -0,0 +1,18 @@ +import Operator from "../Operator"; +import ClipboardRepository from "../../repositories/ClipboardRepository"; +import ConsoleClient from "../../client/ConsoleClient"; +import URLRepository from "./URLRepository"; + +export default class YankURLOperator implements Operator { + constructor( + private readonly repository: ClipboardRepository, + private readonly consoleClient: ConsoleClient, + private readonly urlRepository: URLRepository + ) {} + + async run(): Promise<void> { + const url = this.urlRepository.getCurrentURL(); + this.repository.write(url); + await this.consoleClient.info("Yanked " + url); + } +} |