@trellixio/roaster-coffee
Version:
Beans' product component library
23 lines (20 loc) • 543 B
JavaScript
import { useState } from 'react';
function useUncontrolled({
value,
defaultValue,
finalValue,
onChange = () => {
}
}) {
const [uncontrolledValue, setUncontrolledValue] = useState(defaultValue !== void 0 ? defaultValue : finalValue);
const handleUncontrolledChange = (val) => {
setUncontrolledValue(val);
onChange?.(val);
};
if (value !== void 0) {
return [value, onChange, true];
}
return [uncontrolledValue, handleUncontrolledChange, false];
}
export { useUncontrolled };
//# sourceMappingURL=index.js.map