wallet-core/packages/anastasis-webui/src/pages/home/SolveEmailEntry.tsx
2021-10-19 11:05:32 -03:00

23 lines
741 B
TypeScript

import { h, VNode } from "preact";
import { useState } from "preact/hooks";
import { AnastasisClientFrame, LabeledInput } from "./index";
import { SolveEntryProps } from "./SolveScreen";
export function SolveEmailEntry(props: SolveEntryProps): VNode {
const [answer, setAnswer] = useState("");
const { reducer, challenge, feedback } = props;
const next = (): void => reducer.transition("solve_challenge", {
answer,
});
return (
<AnastasisClientFrame
title="Recovery: Solve challenge"
onNext={() => next()}
>
<p>Feedback: {JSON.stringify(feedback)}</p>
<p>{challenge.instructions}</p>
<LabeledInput label="Answer" grabFocus bind={[answer, setAnswer]} />
</AnastasisClientFrame>
);
}