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"
};