diff options
author | Ansh <anshnanda10@gmail.com> | 2023-06-26 10:15:39 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-06-26 12:15:39 -0500 |
commit | b9abd444e5c49420ba7a4e93bd781403349076ef (patch) | |
tree | 2f6c122d912921700ec3c98b70b579cb9b6eafe0 /src/lib/link-meta | |
parent | 1666a747eb346e3d6f9d64866881da4404fb3f56 (diff) | |
download | voidsky-b9abd444e5c49420ba7a4e93bd781403349076ef.tar.zst |
[APP-657] Add share list functionality (#863)
* replace delete list button text with icon * fix mute list styling on desktop * add share button to nav bar on a list * fix styling when on profile * bug: add key to ImageHorzList * clean up code & refactor * fix styling for ListItems * create a reusable ListActions component for actions on a list * remove dead styles * add keys to ListActions * add helpers to set list embed * render list embeds * fix list sharing on web * make style prop optional in ListCard * update `@atproto/api` to `0.3.13`
Diffstat (limited to 'src/lib/link-meta')
-rw-r--r-- | src/lib/link-meta/bsky.ts | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/src/lib/link-meta/bsky.ts b/src/lib/link-meta/bsky.ts index cf43feca8..aed103894 100644 --- a/src/lib/link-meta/bsky.ts +++ b/src/lib/link-meta/bsky.ts @@ -155,3 +155,29 @@ export async function getFeedAsEmbed( }, } } + +export async function getListAsEmbed( + store: RootStoreModel, + url: string, +): Promise<apilib.ExternalEmbedDraft> { + url = convertBskyAppUrlIfNeeded(url) + const [_0, user, _1, rkey] = url.split('/').filter(Boolean) + const list = makeRecordUri(user, 'app.bsky.graph.list', rkey) + const res = await store.agent.app.bsky.graph.getList({list}) + return { + isLoading: false, + uri: list, + meta: { + url: list, + likelyType: LikelyType.AtpData, + title: res.data.list.name, + }, + embed: { + $type: 'app.bsky.embed.record', + record: { + uri: res.data.list.uri, + cid: res.data.list.cid, + }, + }, + } +} |