Changeset View
Changeset View
Standalone View
Standalone View
keyserver/src/responders/siwe-nonce-responders.js
// @flow | // @flow | ||||
import { generateNonce } from 'siwe'; | import { generateNonce } from 'siwe'; | ||||
import t, { type TInterface } from 'tcomb'; | |||||
import type { SIWENonceResponse } from 'lib/types/siwe-types.js'; | import type { SIWENonceResponse } from 'lib/types/siwe-types.js'; | ||||
import { tShape } from 'lib/utils/validation-utils.js'; | |||||
import { createSIWENonceEntry } from '../creators/siwe-nonce-creator.js'; | import { createSIWENonceEntry } from '../creators/siwe-nonce-creator.js'; | ||||
export const siweNonceResponseValidator: TInterface<SIWENonceResponse> = | |||||
tShape<SIWENonceResponse>({ nonce: t.String }); | |||||
async function siweNonceResponder(): Promise<SIWENonceResponse> { | async function siweNonceResponder(): Promise<SIWENonceResponse> { | ||||
const generatedNonce = generateNonce(); | const generatedNonce = generateNonce(); | ||||
await createSIWENonceEntry(generatedNonce); | await createSIWENonceEntry(generatedNonce); | ||||
return { nonce: generatedNonce }; | return { nonce: generatedNonce }; | ||||
} | } | ||||
export { siweNonceResponder }; | export { siweNonceResponder }; |