UNPKG

@e280/authlocal

Version:

User-sovereign login system for everybody

38 lines (29 loc) 760 B
import {Time} from "../../tools/time.js" import {Login} from "../concepts/session/login.js" import {generateSession} from "../concepts/session/session.js" import {generateIdentity} from "../concepts/identity/identity.js" export class Mock { constructor(public options: { appOrigin?: string authorityOrigin?: string } = {}) {} async login({ expiresAt = Time.future.minutes(5), }: { expiresAt?: number } = {}) { const o = "https://example.e280.org" const {appOrigin = o, authorityOrigin = o} = this.options const identity = await generateIdentity() const session = await generateSession({ identity, expiresAt, appOrigin, authorityOrigin, }) return Login.verify({ session, appOrigins: [appOrigin], }) } }