diff --git a/__tests__/lib/string.test.ts b/__tests__/lib/string.test.ts index 2aef90fea1..3e741c1e99 100644 --- a/__tests__/lib/string.test.ts +++ b/__tests__/lib/string.test.ts @@ -844,6 +844,7 @@ describe('parseStarterPackHttpUri', () => { 'https://bsky.app/start/testlover9000.com', 'https://bsky.app/start/testlover9000.com/rkey/other', 'https://bsky.app/start', + undefined, ] const outputs = [ {name: 'haileyok.com', rkey: 'rkey'}, @@ -852,6 +853,7 @@ describe('parseStarterPackHttpUri', () => { null, null, null, + null, ] it('returns the correct name and rkey when input is valid', () => { diff --git a/src/lib/strings/starter-pack.ts b/src/lib/strings/starter-pack.ts index 36f6c7802d..0265fb450b 100644 --- a/src/lib/strings/starter-pack.ts +++ b/src/lib/strings/starter-pack.ts @@ -24,10 +24,12 @@ export function createStarterPackLinkFromAndroidReferrer( } } -export function parseStarterPackHttpUri(uri: string): { +export function parseStarterPackHttpUri(uri?: string): { name?: string rkey?: string } | null { + if (!uri) return null + try { const url = new URL(uri) const parts = url.pathname.split('/')