@hitachivantara/uikit-react-core
Version:
UI Kit Core React components.
22 lines (21 loc) • 535 B
JavaScript
import { useCallback, useState } from "react";
//#region src/utils/useSavedState.ts
function useSavedState(defaultState) {
const [state, setState] = useState(defaultState);
const [submittedState, setSubmittedState] = useState(defaultState);
const changeState = useCallback((value, save = false) => {
setState(value);
if (save) setSubmittedState(value);
}, []);
const rollback = () => {
setState(submittedState);
};
return [
state,
changeState,
rollback,
submittedState
];
}
//#endregion
export { useSavedState };