30 lines
525 B
TypeScript
30 lines
525 B
TypeScript
import { makeAutoObservable, observable } from 'mobx';
|
|
|
|
export default class Validation {
|
|
messages = observable<string>([]);
|
|
|
|
constructor() {
|
|
makeAutoObservable(this);
|
|
}
|
|
|
|
getMessages() {
|
|
return this.messages;
|
|
}
|
|
|
|
addError = (message: string) => {
|
|
this.messages.push(message);
|
|
|
|
const messageIndex = this.messages.length;
|
|
|
|
const removeError = () => {
|
|
this.messages.splice(messageIndex - 1, 1);
|
|
};
|
|
|
|
return removeError;
|
|
};
|
|
|
|
clearErrors = () => {
|
|
this.messages.clear();
|
|
};
|
|
}
|