mirror of
https://github.com/Tria-plc/emaui.git
synced 2026-08-27 22:30:56 +00:00
26 lines
601 B
JavaScript
26 lines
601 B
JavaScript
'use client';
|
|
import { useState } from 'react';
|
|
|
|
function useUncontrolled({
|
|
value,
|
|
defaultValue,
|
|
finalValue,
|
|
onChange = () => {
|
|
}
|
|
}) {
|
|
const [uncontrolledValue, setUncontrolledValue] = useState(
|
|
defaultValue !== void 0 ? defaultValue : finalValue
|
|
);
|
|
const handleUncontrolledChange = (val, ...payload) => {
|
|
setUncontrolledValue(val);
|
|
onChange?.(val, ...payload);
|
|
};
|
|
if (value !== void 0) {
|
|
return [value, onChange, true];
|
|
}
|
|
return [uncontrolledValue, handleUncontrolledChange, false];
|
|
}
|
|
|
|
export { useUncontrolled };
|
|
//# sourceMappingURL=use-uncontrolled.mjs.map
|