diff options
author | Hailey <me@haileyok.com> | 2024-07-03 18:15:08 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-07-04 02:15:08 +0100 |
commit | aa7117edb60711a67464f7559118334185f01680 (patch) | |
tree | b0ccd3d7ef0d792613542a1af48c3fbae1f36f21 /src/view/com/composer/useExternalLinkFetch.ts | |
parent | a3d4fb652b888ba81aecbf0e81a954968ea65d39 (diff) | |
download | voidsky-aa7117edb60711a67464f7559118334185f01680.tar.zst |
Add starter pack embeds to posts (#4699)
* starter pack embeds * revert test code * Types * add `BaseLink` * precache on click * rm log * add a comment * loading state * top margin --------- Co-authored-by: Dan Abramov <dan.abramov@gmail.com>
Diffstat (limited to 'src/view/com/composer/useExternalLinkFetch.ts')
-rw-r--r-- | src/view/com/composer/useExternalLinkFetch.ts | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/src/view/com/composer/useExternalLinkFetch.ts b/src/view/com/composer/useExternalLinkFetch.ts index 743535a5e..2938ea25a 100644 --- a/src/view/com/composer/useExternalLinkFetch.ts +++ b/src/view/com/composer/useExternalLinkFetch.ts @@ -10,6 +10,7 @@ import { getFeedAsEmbed, getListAsEmbed, getPostAsQuote, + getStarterPackAsEmbed, } from 'lib/link-meta/bsky' import {getLinkMeta} from 'lib/link-meta/link-meta' import {resolveShortLink} from 'lib/link-meta/resolve-short-link' @@ -18,6 +19,8 @@ import { isBskyCustomFeedUrl, isBskyListUrl, isBskyPostUrl, + isBskyStarterPackUrl, + isBskyStartUrl, isShortLink, } from 'lib/strings/url-helpers' import {ImageModel} from 'state/models/media/image' @@ -96,6 +99,23 @@ export function useExternalLinkFetch({ setExtLink(undefined) }, ) + } else if ( + isBskyStartUrl(extLink.uri) || + isBskyStarterPackUrl(extLink.uri) + ) { + getStarterPackAsEmbed(agent, fetchDid, extLink.uri).then( + ({embed, meta}) => { + if (aborted) { + return + } + setExtLink({ + uri: extLink.uri, + isLoading: false, + meta, + embed, + }) + }, + ) } else if (isShortLink(extLink.uri)) { if (isShortLink(extLink.uri)) { resolveShortLink(extLink.uri).then(res => { |