ldc-boutique-cnc-sable/resources/ts/modules/parseLaravelErrorMessages.ts
2026-10-27 09:58:12 +01:00

47 lines
1.2 KiB
TypeScript

/**
* Parse error messages for a specific input.
*
* @param inputName string
* @param allErrors Record<string, Array<string>>
* @return string
*/
export function parseValidationErrors(
allErrors: Record<string, Array<string>> = {}
): string | null {
const errorList = Object.values(allErrors);
if (!errorList.length) {
return null;
}
return errorList
.flat()
.reduce(
(oldInputString: string | null, inputString: string) =>
(oldInputString ? `${oldInputString}, ` : "") +
inputString,
null
);
}
/**
* Parse error messages for a specific input.
*
* @param inputName string
* @param allErrors Record<string, Array<string>>
* @return string
*/
export function parseValidationInput(
inputName: string,
allErrors: Record<string, Array<string>> = {}
): string | null {
let errorList = [] as Array<string>;
for (const value of Object.keys(allErrors)) {
if (value == inputName) {
errorList = allErrors[inputName];
}
}
return errorList.length
? errorList.reduce((oldString: string | null, string) => {
return (oldString ? `${oldString}, ` : "") + string;
}, null)
: null;
}