diff --git a/.changeset/gorgeous-taxis-tickle.md b/.changeset/gorgeous-taxis-tickle.md new file mode 100644 index 000000000..2cad634d0 --- /dev/null +++ b/.changeset/gorgeous-taxis-tickle.md @@ -0,0 +1,5 @@ +--- +"@nextui-org/input": patch +--- + +onValueChange returned value fixed, it nows return a plain string diff --git a/apps/docs/app/examples/perf/page.tsx b/apps/docs/app/examples/perf/page.tsx index baae246b0..2ed0b63a6 100644 --- a/apps/docs/app/examples/perf/page.tsx +++ b/apps/docs/app/examples/perf/page.tsx @@ -179,9 +179,9 @@ const MyButton2 = extendVariants(Button, { }); export default function NextUIPerf() { - const [textA, setTextA] = useState(""); - const [textB, setTextB] = useState(""); - const [textC, setTextC] = useState(""); + const [textA, setTextA] = useState(""); + const [textB, setTextB] = useState(""); + const [textC, setTextC] = useState(""); return (
diff --git a/packages/components/input/src/use-input.ts b/packages/components/input/src/use-input.ts index e84a3b13e..999fa5d6a 100644 --- a/packages/components/input/src/use-input.ts +++ b/packages/components/input/src/use-input.ts @@ -58,7 +58,7 @@ export interface Props void; + onValueChange?: (value: string) => void; } export type UseInputProps = @@ -86,10 +86,17 @@ export function useInput { + onValueChange(value ?? ""); + }, + [onValueChange], + ); + const [inputValue, setInputValue] = useControlledState( - props.value, - props.defaultValue, - onValueChange, + props.value ?? undefined, + props.defaultValue ?? undefined, + handleValueChange, ); const Component = as || "div";