···43 // Parse the AT URI
44 const atUri = new AtUri(decodedUri)
4546- // Validate it's a skeetlonger post
47- if (atUri.collection !== 'app.skeetlonger.post') {
48- setError("Invalid post URI - not a SkeetLonger post")
49 setLoading(false)
50 return
51 }
5253- // // We need to resolve the DID to find the user's PDS
54- // const resolverAgent = new AtpAgent({ service: 'https://bsky.social' })
55- // const didDoc = await resolverAgent.com.atproto.identity.resolveHandle({
56- // handle: atUri.host
57- // })
58-59 if (!isAtprotoDid(atUri.host)) {
60 throw new Error("Not a valid DID identifier");
61 }
···63 const doc = await didDocumentResolver.resolve(atUri.host);
6465 const pdsUrl = getPdsEndpoint(doc);
66-67- // // Get the PDS endpoint from the DID document
68- // // For now, we'll need to make a separate call to get the service endpoint
69- //const pdsUrl = `https://pds.minito.dev` // This should be resolved from the DID document
70-71- // Create an agent pointing to the user's PDS
72 if (!pdsUrl) {
73 throw new Error("No PDS found");
74 }
···76 const fetchAgent = new AtpAgent({ service: pdsUrl })
7778 // Fetch the record from their PDS
0079 const recordResponse = await fetchAgent.com.atproto.repo.getRecord({
80 repo: atUri.host,
81 collection: atUri.collection,
···176 marginBottom: '1rem',
177 textAlign: 'left'
178 }}>
179- {post.value.post}
180 </div>
181182 {/* Post Metadata */}
···202 </p>
203 </div>
204 </div>
205-206207-208 <style>{`
209 @keyframes spin {
210 to { transform: rotate(360deg); }
···43 // Parse the AT URI
44 const atUri = new AtUri(decodedUri)
4546+ // Validate it's a bsky post
47+ if (atUri.collection !== 'app.bsky.feed.post') {
48+ setError("Invalid post URI - not a bsky post")
49 setLoading(false)
50 return
51 }
5200000053 if (!isAtprotoDid(atUri.host)) {
54 throw new Error("Not a valid DID identifier");
55 }
···57 const doc = await didDocumentResolver.resolve(atUri.host);
5859 const pdsUrl = getPdsEndpoint(doc);
60+0000061 if (!pdsUrl) {
62 throw new Error("No PDS found");
63 }
···65 const fetchAgent = new AtpAgent({ service: pdsUrl })
6667 // Fetch the record from their PDS
68+ // This should be more involved, it should check a db, then something like constellation
69+ // if neither has the record, then we hit the PDS.
70 const recordResponse = await fetchAgent.com.atproto.repo.getRecord({
71 repo: atUri.host,
72 collection: atUri.collection,
···167 marginBottom: '1rem',
168 textAlign: 'left'
169 }}>
170+ {post.value.text}
171 </div>
172173 {/* Post Metadata */}
···193 </p>
194 </div>
195 </div>
01960197 <style>{`
198 @keyframes spin {
199 to { transform: rotate(360deg); }