import React from 'react'; import { Checkbox, Wizard, WizardStep } from '@breakaway/preact-core'; interface SomeContextProps { errorMessage: string | undefined; setErrorMessage(error: string | undefined): void; } type SomeContextRenderProps = Pick; interface SomeContextProviderProps { children: (context: SomeContextRenderProps) => React.ReactElement; } const SomeContext: React.Context = React.createContext({} as SomeContextProps); const SomeContextProvider = ({ children }: SomeContextProviderProps) => { const [errorMessage, setErrorMessage] = React.useState(); return ( {children({ errorMessage })} ); }; const StepContentWithAction = () => { const { errorMessage, setErrorMessage } = React.useContext(SomeContext); return ( setErrorMessage(checked ? 'Some error message' : undefined)} id="toggle-error-checkbox" name="Toggle Error Checkbox" /> ); }; export const WizardStepErrorStatus: React.FunctionComponent = () => ( {({ errorMessage }) => ( Step 1 content Review step content )} );