/* eslint-disable @typescript-eslint/camelcase */ import { canonicalJson, encodeCrock, stringToBytes } from "@gnu-taler/taler-util"; import { h, VNode } from "preact"; import { useState } from "preact/hooks"; import { AuthMethodSetupProps } from "./AuthenticationEditorScreen"; import { LabeledInput } from "../../components/fields/LabeledInput"; export function AuthMethodPostSetup(props: AuthMethodSetupProps): VNode { const [fullName, setFullName] = useState(""); const [street, setStreet] = useState(""); const [city, setCity] = useState(""); const [postcode, setPostcode] = useState(""); const [country, setCountry] = useState(""); const addPostAuth = () => { const challengeJson = { full_name: fullName, street, city, postcode, country, }; props.addAuthMethod({ authentication_method: { type: "email", instructions: `Letter to address in postal code ${postcode}`, challenge: encodeCrock(stringToBytes(canonicalJson(challengeJson))), }, }); }; return (

Add {props.method} authentication

For postal letter authentication, you need to provide a postal address. When recovering your secret, you will be asked to enter a code that you will receive in a letter to that address.

); }