Pass referer on native

This commit is contained in:
Dan Abramov
2024-11-22 21:40:15 +00:00
parent ba04bb58cd
commit 5e8535a1ba
+17
View File
@@ -33,6 +33,7 @@ export function useOpenLink() {
})
return
} else if (override ?? enabled) {
url = addUtmSource(url)
await sheetWrapper(
WebBrowser.openBrowserAsync(url, {
presentationStyle:
@@ -52,3 +53,19 @@ export function useOpenLink() {
return openLink
}
function addUtmSource(url: string): string {
let parsedUrl
try {
parsedUrl = new URL(url)
} catch (e) {
return url
}
if (!parsedUrl.searchParams.has('utm_source')) {
parsedUrl.searchParams.set('utm_source', 'bluesky')
if (!parsedUrl.searchParams.has('utm_medium')) {
parsedUrl.searchParams.set('utm_medium', 'social')
}
}
return parsedUrl.toString()
}