configure
uses tcmts.registry.session.clientMetadata, which uses location
Set up the OAuth client, once per page.
import { registryServices } from "#codebase/tcmts/registry"; import { clientMetadata, configured } from "#codebase/tcmts/registry/session"; import { CompositeDidDocumentResolver, LocalActorResolver, PlcDidDocumentResolver, WebDidDocumentResolver, XrpcHandleResolver, } from "@atcute/identity-resolver"; import { configureOAuth } from "@atcute/oauth-browser-client"; export function configure(): Promise<void> { configured.done ??= registryServices().then((s) => configureOAuth({ metadata: clientMetadata(), identityResolver: new LocalActorResolver({ handleResolver: new XrpcHandleResolver({ serviceUrl: s.appview as `https://${string}` }), didDocumentResolver: new CompositeDidDocumentResolver({ methods: { plc: new PlcDidDocumentResolver({ apiUrl: s.plc }), web: new WebDidDocumentResolver(), }, }), }), }), ); return configured.done!; }
uses
- tcmts.registry.registryServices
- tcmts.registry.session.clientMetadata
- tcmts.registry.session.configured