stupa-pdf-api/frontend/node_modules/@mui/x-date-pickers/legacy/internals/hooks/useValidation.js

20 lines
762 B
JavaScript

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