atmosphere explorer pds.ls
tool typescript atproto
434
fork

Configure Feed

Select the types of activity you want to include in your feed.

show repos with a missing PDS

Juliet ed34ac44 b550be27

+16 -8
+16 -8
src/views/repo.tsx
··· 79 79 try { 80 80 pds = await resolvePDS(did); 81 81 } catch { 82 - try { 83 - const did = await resolveHandle(params.repo as Handle); 84 - navigate(location.pathname.replace(params.repo, did)); 85 - } catch { 82 + if (!did.startsWith("did:")) { 86 83 try { 87 - const nsid = params.repo as Nsid; 88 - const res = await resolveLexiconAuthority(nsid); 89 - navigate(`/at://${res}/com.atproto.lexicon.schema/${nsid}`); 84 + const did = await resolveHandle(params.repo as Handle); 85 + navigate(location.pathname.replace(params.repo, did)); 90 86 } catch { 91 - navigate(`/${did}`); 87 + try { 88 + const nsid = params.repo as Nsid; 89 + const res = await resolveLexiconAuthority(nsid); 90 + navigate(`/at://${res}/com.atproto.lexicon.schema/${nsid}`); 91 + } catch { 92 + navigate(`/${did}`); 93 + } 92 94 } 93 95 } 94 96 } ··· 96 98 getRotationKeys(); 97 99 98 100 validateHandles(); 101 + 102 + if (!pds) { 103 + setError("Missing PDS"); 104 + navigate(`/at://${params.repo}#identity`); 105 + return {}; 106 + } 99 107 100 108 rpc = new Client({ handler: new CredentialManager({ service: pds }) }); 101 109 const res = await rpc.get("com.atproto.repo.describeRepo", {