Errors handler

Errors handler

by kordarei

TypeScript

interface ErrorsData {
    [key: string]: any;
}

class Errors {

    errors : ErrorsData;

    constructor() {
        this.errors = {};
    }

    has = (field: string) => this.errors.hasOwnProperty(field);

    get = (field: any) => (this.errors[field]) ? this.errors[field][0] : null;

    record = (errors: object) => this.errors = errors;

    clear = (field: any) => (field) ? delete this.errors[field] : this.errors = {};

    empty = () => this.errors = {};

    any = () => {
        for (let key in this.errors) {
            if (this.errors.hasOwnProperty(key)) return true;
        }
        return false;
    };
}