Files
ETB/ETB-FrontEnd/node_modules/@mui/x-date-pickers/internals/hooks/validation/useValidation.js
Iliyan Angelov 306b20e24a Frontend start
2025-09-14 00:54:48 +03:00

23 lines
699 B
JavaScript

import * as React from 'react';
import { useLocalizationContext } from '../useUtils';
export function useValidation(props, validate, isSameError) {
const {
value,
onError
} = props;
const adapter = useLocalizationContext();
const previousValidationErrorRef = React.useRef(null);
const validationError = validate({
adapter,
value,
props
});
React.useEffect(() => {
if (onError && !isSameError(validationError, previousValidationErrorRef.current)) {
onError(validationError, value);
}
previousValidationErrorRef.current = validationError;
}, [isSameError, onError, previousValidationErrorRef, validationError, value]);
return validationError;
}