anote

Форк
0
/
Add.ts 
32 строки · 1.0 Кб
1
import { Keywords } from "../flows/Keywords";
2
import { Command } from "./Command";
3
import MessageStore from "../service/MessageStore";
4
import Saver from "../service/Saver";
5

6
export class Add extends Command {
7
    messageNumber = 5;
8

9
    async execute(): Promise<string> {
10
        if(!this.isValid(Keywords.ADD)) return '[ADD] Not valid command.';
11
        const tail: string = this.getTail();
12
        
13
        if(tail === '/') {
14
            const input: string = MessageStore.getPreviousValue();
15
            return await new Saver().appendLine("default.txt", input);
16
        }
17

18
        if(this.isValidMessageNumber(tail))
19
            return await new Saver().appendLine("default.txt", MessageStore.getPreviousValue(tail as unknown as number));
20

21
        return '[ADD] Index out of range';
22
    }
23

24
    private isValidMessageNumber(tail: string): boolean {
25
        let flag: boolean = false;
26
        for(let i=0; i<this.messageNumber; i++){
27
            if(tail === i.toString())
28
                flag = true;
29
        }
30
        return flag;
31
    }
32
}
33

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.