UNPKG

im-angular-validators

Version:

This library will help you with lots of already written mostly used validators for Angular 2+ applications.

16 lines 2.58 kB
export const IMNumberDecimalPlacesValidator = (scale = 0, fixed = false) => { return (control) => { const scaling = fixed ? `${scale}` : `0,${scale}`; const regexp = new RegExp(`^-?([0-9]*[.]?)?[0-9]{${scaling}}$`); if (control.value && !regexp.test(control.value)) { return { areDecimalPlacesInvalid: { isInvalid: true, scale, fixed } }; } }; }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtYmVyLWRlY2ltYWwtcGxhY2VzLnZhbGlkYXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdmFsaWRhdG9ycy9zcmMvbGliL3ZhbGlkYXRvcnMvbnVtYmVyLWRlY2ltYWwtcGxhY2VzLnZhbGlkYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxNQUFNLENBQUMsTUFBTSw4QkFBOEIsR0FBRyxDQUFDLFFBQWdCLENBQUMsRUFBRSxRQUFpQixLQUFLLEVBQWUsRUFBRTtJQUN2RyxPQUFPLENBQUMsT0FBd0IsRUFBa0UsRUFBRTtRQUNsRyxNQUFNLE9BQU8sR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLEdBQUcsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssS0FBSyxFQUFFLENBQUM7UUFDbEQsTUFBTSxNQUFNLEdBQVcsSUFBSSxNQUFNLENBQUMseUJBQXlCLE9BQU8sSUFBSSxDQUFDLENBQUM7UUFFeEUsSUFBSSxPQUFPLENBQUMsS0FBSyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDaEQsT0FBTztnQkFDTCx1QkFBdUIsRUFBRTtvQkFDdkIsU0FBUyxFQUFFLElBQUk7b0JBQ2YsS0FBSztvQkFDTCxLQUFLO2lCQUNpQzthQUN6QyxDQUFDO1NBQ0g7SUFDSCxDQUFDLENBQUM7QUFDSixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0Fic3RyYWN0Q29udHJvbCwgVmFsaWRhdG9yRm59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHtJTU51bWJlckRlY2ltYWxQbGFjZXNFcnJvckludGVyZmFjZX0gZnJvbSAnLi4vaW50ZXJmYWNlcy9udW1iZXItZGVjaW1hbC1wbGFjZXMtZXJyb3IuaW50ZXJmYWNlJztcclxuXHJcbmV4cG9ydCBjb25zdCBJTU51bWJlckRlY2ltYWxQbGFjZXNWYWxpZGF0b3IgPSAoc2NhbGU6IG51bWJlciA9IDAsIGZpeGVkOiBib29sZWFuID0gZmFsc2UpOiBWYWxpZGF0b3JGbiA9PiB7XHJcbiAgcmV0dXJuIChjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpOiB7YXJlRGVjaW1hbFBsYWNlc0ludmFsaWQ6IElNTnVtYmVyRGVjaW1hbFBsYWNlc0Vycm9ySW50ZXJmYWNlfSA9PiB7XHJcbiAgICBjb25zdCBzY2FsaW5nID0gZml4ZWQgPyBgJHtzY2FsZX1gIDogYDAsJHtzY2FsZX1gO1xyXG4gICAgY29uc3QgcmVnZXhwOiBSZWdFeHAgPSBuZXcgUmVnRXhwKGBeLT8oWzAtOV0qWy5dPyk/WzAtOV17JHtzY2FsaW5nfX0kYCk7XHJcblxyXG4gICAgaWYgKGNvbnRyb2wudmFsdWUgJiYgIXJlZ2V4cC50ZXN0KGNvbnRyb2wudmFsdWUpKSB7XHJcbiAgICAgIHJldHVybiB7XHJcbiAgICAgICAgYXJlRGVjaW1hbFBsYWNlc0ludmFsaWQ6IHtcclxuICAgICAgICAgIGlzSW52YWxpZDogdHJ1ZSxcclxuICAgICAgICAgIHNjYWxlLFxyXG4gICAgICAgICAgZml4ZWRcclxuICAgICAgICB9IGFzIElNTnVtYmVyRGVjaW1hbFBsYWNlc0Vycm9ySW50ZXJmYWNlXHJcbiAgICAgIH07XHJcbiAgICB9XHJcbiAgfTtcclxufTtcclxuIl19