video.cerulea.blue/common/identity.ts
Charlotte Som a25ec9f235 complete viewer
now that PDSls has blob uploading i don't have to make the uploader
first. yaaay
2025-06-04 23:10:23 +01:00

26 lines
730 B
TypeScript

import type { DidDocument } from "@atcute/identity";
import {
CompositeDidDocumentResolver,
PlcDidDocumentResolver,
WebDidDocumentResolver,
XrpcHandleResolver,
} from "@atcute/identity-resolver";
const handleResolver = new XrpcHandleResolver({
serviceUrl: "https://public.api.bsky.app",
});
const didResolver = new CompositeDidDocumentResolver({
methods: {
plc: new PlcDidDocumentResolver(),
web: new WebDidDocumentResolver(),
},
});
export function resolveHandle(handle: string): Promise<string> {
return handleResolver.resolve(handle as `${string}.${string}`);
}
export function resolveDid(did: string): Promise<DidDocument> {
return didResolver.resolve(did as `did:${"plc" | "web"}:${string}`);
}