Files
emaui/node_modules/@mantine/hooks/cjs/use-validated-state/use-validated-state.cjs
2026-05-29 15:23:46 +03:00

28 lines
787 B
JavaScript

'use client';
'use strict';
var React = require('react');
function useValidatedState(initialValue, validate, initialValidationState) {
const [value, setValue] = React.useState(initialValue);
const [lastValidValue, setLastValidValue] = React.useState(
validate(initialValue) ? initialValue : void 0
);
const [valid, setValid] = React.useState(
typeof initialValidationState === "boolean" ? initialValidationState : validate(initialValue)
);
const onChange = (val) => {
if (validate(val)) {
setLastValidValue(val);
setValid(true);
} else {
setValid(false);
}
setValue(val);
};
return [{ value, lastValidValue, valid }, onChange];
}
exports.useValidatedState = useValidatedState;
//# sourceMappingURL=use-validated-state.cjs.map