import { computed, type Ref } from "vue"; // Validation rules similar to those in Vuetify export function validateFormValue(value: T, rules: ((v: T) => boolean | string)[]) { const errors: string[] = []; if (rules && rules.length > 0) { rules.forEach((rule) => { const err = rule(value); if (typeof err === "string") { errors.push(err); } }); } return { isValid: errors.length === 0, errors: errors, }; } export function useValidation(val: Ref, rules: ((v: T) => boolean | string)[]) { return computed(() => { return validateFormValue(val.value, rules); }); }