about summary refs log tree commit diff
path: root/src/lib/strings/url-helpers.ts
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/strings/url-helpers.ts')
-rw-r--r--src/lib/strings/url-helpers.ts20
1 files changed, 14 insertions, 6 deletions
diff --git a/src/lib/strings/url-helpers.ts b/src/lib/strings/url-helpers.ts
index 70a2b7069..2a20373a4 100644
--- a/src/lib/strings/url-helpers.ts
+++ b/src/lib/strings/url-helpers.ts
@@ -1,14 +1,15 @@
 import {AtUri} from '@atproto/api'
-import {BSKY_SERVICE} from 'lib/constants'
-import TLDs from 'tlds'
 import psl from 'psl'
+import TLDs from 'tlds'
+
+import {BSKY_SERVICE} from 'lib/constants'
 
 export const BSKY_APP_HOST = 'https://bsky.app'
 const BSKY_TRUSTED_HOSTS = [
-  'bsky.app',
-  'bsky.social',
-  'blueskyweb.xyz',
-  'blueskyweb.zendesk.com',
+  'bsky\\.app',
+  'bsky\\.social',
+  'blueskyweb\\.xyz',
+  'blueskyweb\\.zendesk\\.com',
   ...(__DEV__ ? ['localhost:19006', 'localhost:8100'] : []),
 ]
 
@@ -145,6 +146,13 @@ export function isBskyListUrl(url: string): boolean {
   return false
 }
 
+export function isBskyDownloadUrl(url: string): boolean {
+  if (isExternalUrl(url)) {
+    return false
+  }
+  return url === '/download' || url.startsWith('/download?')
+}
+
 export function convertBskyAppUrlIfNeeded(url: string): string {
   if (isBskyAppUrl(url)) {
     try {