forked from
pds.ls/pdsls
atmosphere explorer
1export type AtUri = { repo: string; collection: string; rkey: string };
2type TemplateFn = (uri: AtUri, record?: any) => { label: string; link: string };
3type TemplateMap = Record<string, TemplateFn>;
4
5export const uriTemplates: TemplateMap = {
6 "app.bsky.actor.profile": (uri) => ({
7 label: "Bluesky",
8 link: `https://bsky.app/profile/${uri.repo}`,
9 }),
10 "app.bsky.feed.post": (uri) => ({
11 label: "Bluesky",
12 link: `https://bsky.app/profile/${uri.repo}/post/${uri.rkey}`,
13 }),
14 "app.bsky.graph.list": (uri) => ({
15 label: "Bluesky",
16 link: `https://bsky.app/profile/${uri.repo}/lists/${uri.rkey}`,
17 }),
18 "app.bsky.feed.generator": (uri) => ({
19 label: "Bluesky",
20 link: `https://bsky.app/profile/${uri.repo}/feed/${uri.rkey}`,
21 }),
22 "com.shinolabs.pinksea.oekaki": (uri) => ({
23 label: "PinkSea",
24 link: `https://pinksea.art/${uri.repo}/oekaki/${uri.rkey}`,
25 }),
26 "com.shinolabs.pinksea.profile": (uri) => ({
27 label: "PinkSea",
28 link: `https://pinksea.art/${uri.repo}`,
29 }),
30 "sh.tangled.actor.profile": (uri) => ({
31 label: "Tangled",
32 link: `https://tangled.org/${uri.repo}`,
33 }),
34 "sh.tangled.repo": (uri, record) => ({
35 label: "Tangled",
36 link: `https://tangled.org/${uri.repo}/${record.name}`,
37 }),
38 "app.blento.card": (uri) => ({
39 label: "blento",
40 link: `https://blento.app/${uri.repo}`,
41 }),
42 "social.popfeed.actor.profile": (uri) => ({
43 label: "Popfeed",
44 link: `https://popfeed.social/profile/${uri.repo}`,
45 }),
46 "social.popfeed.feed.review": (uri) => ({
47 label: "Popfeed",
48 link: `https://popfeed.social/review/at:/${uri.repo}/${uri.collection}/${uri.rkey}`,
49 }),
50 "social.popfeed.feed.list": (uri) => ({
51 label: "Popfeed",
52 link: `https://popfeed.social/list/at:/${uri.repo}/${uri.collection}/${uri.rkey}`,
53 }),
54};