Introduce ComponentState (#4386)
* Proof of concept ComponentState * Migrate to createState and createFamilyState * Refactor * Fix * Fix tests * Fix lint * Fix tests * Re-enable coverage
This commit is contained in:
@ -11,7 +11,7 @@ const renderHooks = (initialStep: number) => {
|
||||
const { nextStep, prevStep, reset, setStep } = useStepBar({
|
||||
initialStep,
|
||||
});
|
||||
const stepBarInternal = useRecoilValue(stepBarInternalState);
|
||||
const stepBarInternal = useRecoilValue(stepBarInternalState());
|
||||
|
||||
return {
|
||||
nextStep,
|
||||
|
||||
@ -8,8 +8,9 @@ export type StepsOptions = {
|
||||
};
|
||||
|
||||
export const useStepBar = ({ initialStep }: StepsOptions) => {
|
||||
const [stepBarInternal, setStepBarInternal] =
|
||||
useRecoilState(stepBarInternalState);
|
||||
const [stepBarInternal, setStepBarInternal] = useRecoilState(
|
||||
stepBarInternalState(),
|
||||
);
|
||||
|
||||
const nextStep = () => {
|
||||
setStepBarInternal((prevState) => ({
|
||||
|
||||
@ -1,12 +1,12 @@
|
||||
import { atom } from 'recoil';
|
||||
import { createState } from '@/ui/utilities/state/utils/createState';
|
||||
|
||||
export type StepsState = {
|
||||
activeStep: number;
|
||||
};
|
||||
|
||||
export const stepBarInternalState = atom<StepsState>({
|
||||
export const stepBarInternalState = createState<StepsState>({
|
||||
key: 'step-bar/internal-state',
|
||||
default: {
|
||||
defaultValue: {
|
||||
activeStep: -1,
|
||||
},
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user