import React, { useState } from "react"; import useDebounceEvent, { UseDebounceResult } from ".."; import "../../__stories__/general-hooks-stories.scss"; export default { title: "Hooks/useDebounceEvent" }; export const Overview = { render: () => { const { inputValue, onEventChanged }: UseDebounceResult = useDebounceEvent({ delay: 100, onChange: () => {} }); return ; }, name: "Overview" }; export const PassingAnInitialValue = { render: () => { const { inputValue, onEventChanged }: UseDebounceResult = useDebounceEvent({ initialStateValue: "bla bla bla", onChange: () => {} }); return ; }, name: "Passing an initial value" }; export const PassingAnOnChangeHandler = { render: () => { const [length, setLength] = useState(0); const { inputValue, onEventChanged }: UseDebounceResult = useDebounceEvent({ onChange: (value: string) => setLength(value.length) }); return ( <> Input has {length} characters ); }, name: "Passing an `onChange` handler" }; export const WithTrim = { render: () => { const { inputValue, onEventChanged }: UseDebounceResult = useDebounceEvent({ trim: true, onChange: () => {} }); return ; }, name: "With trim" };