fix: invisible url when only a protocol (#1059)

* fix: invisible url when only a protocol

- Fixes https://github.com/bluesky-social/social-app/issues/1058

* fix: handle more cases when url is not http/https
zio/stable
Steven 2023-07-27 11:49:37 -04:00 committed by GitHub
parent 44b3929240
commit 5a0899b989
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 4 additions and 1 deletions

View File

@ -39,6 +39,9 @@ export function toNiceDomain(url: string): string {
export function toShortUrl(url: string): string {
try {
const urlp = new URL(url)
if (urlp.protocol !== 'http:' && urlp.protocol !== 'https:') {
return url
}
const shortened =
urlp.host +
(urlp.pathname === '/' ? '' : urlp.pathname) +
@ -47,7 +50,7 @@ export function toShortUrl(url: string): string {
if (shortened.length > 30) {
return shortened.slice(0, 27) + '...'
}
return shortened
return shortened ? shortened : url
} catch (e) {
return url
}