@lautarobock/file-input
Version:
Angular Material File Input
20 lines • 2.19 kB
JavaScript
/**
* Validator for input file accept
* @param accept Allowable type of file
*/
export function AcceptValidator(accept) {
return (ctrl) => {
if (!accept) {
throw ('AcceptValidator: allowable type of file can not be empty');
}
if (ctrl.value == null)
return null;
if (!accept.includes(ctrl.value.type)) {
return {
accept: true
};
}
return null;
};
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjZXB0LnZhbGlkYXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ZpbGUtaW5wdXQvc3JjL2xpYi92YWxpZGF0b3JzL2FjY2VwdC52YWxpZGF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUE7OztHQUdHO0FBQ0gsTUFBTSxVQUFVLGVBQWUsQ0FBQyxNQUFjO0lBQzFDLE9BQU8sQ0FBQyxJQUFxQixFQUEyQixFQUFFO1FBQ3RELElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNWLE1BQU0sQ0FBQywwREFBMEQsQ0FBQyxDQUFDO1FBQ3ZFLENBQUM7UUFFRCxJQUFJLElBQUksQ0FBQyxLQUFLLElBQUksSUFBSTtZQUFFLE9BQU8sSUFBSSxDQUFDO1FBRXBDLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztZQUNwQyxPQUFPO2dCQUNILE1BQU0sRUFBRSxJQUFJO2FBQ2YsQ0FBQztRQUNOLENBQUM7UUFFRCxPQUFPLElBQUksQ0FBQztJQUVoQixDQUFDLENBQUE7QUFDTCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBWYWxpZGF0aW9uRXJyb3JzLCBWYWxpZGF0b3JGbiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuXHJcbi8qKlxyXG4gKiBWYWxpZGF0b3IgZm9yIGlucHV0IGZpbGUgYWNjZXB0XHJcbiAqIEBwYXJhbSBhY2NlcHQgQWxsb3dhYmxlIHR5cGUgb2YgZmlsZVxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIEFjY2VwdFZhbGlkYXRvcihhY2NlcHQ6IHN0cmluZyk6IFZhbGlkYXRvckZuIHtcclxuICAgIHJldHVybiAoY3RybDogQWJzdHJhY3RDb250cm9sKTogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwgPT4ge1xyXG4gICAgICAgIGlmICghYWNjZXB0KSB7XHJcbiAgICAgICAgICAgIHRocm93ICgnQWNjZXB0VmFsaWRhdG9yOiBhbGxvd2FibGUgdHlwZSBvZiBmaWxlIGNhbiBub3QgYmUgZW1wdHknKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGlmIChjdHJsLnZhbHVlID09IG51bGwpIHJldHVybiBudWxsO1xyXG5cclxuICAgICAgICBpZiAoIWFjY2VwdC5pbmNsdWRlcyhjdHJsLnZhbHVlLnR5cGUpKSB7XHJcbiAgICAgICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgICAgICBhY2NlcHQ6IHRydWVcclxuICAgICAgICAgICAgfTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHJldHVybiBudWxsO1xyXG5cclxuICAgIH1cclxufSJdfQ==