mirror of
https://github.com/karakeep-app/karakeep.git
synced 2026-10-10 20:49:25 +02:00
18 lines
573 B
TypeScript
18 lines
573 B
TypeScript
export function setUrlHostnameFromResolvedAddress(url: URL, address: string) {
|
|
url.hostname = address.includes(":") ? `[${address}]` : address;
|
|
}
|
|
|
|
const ALLOWED_BOOKMARK_URL_PROTOCOLS: readonly string[] = ["http:", "https:"];
|
|
|
|
/**
|
|
* Bookmark link URLs are reflected in HTML exports, RSS feeds and anchor tags,
|
|
* so schemes like javascript:, data: and vbscript: must never be accepted.
|
|
*/
|
|
export function isAllowedBookmarkUrl(url: string): boolean {
|
|
try {
|
|
return ALLOWED_BOOKMARK_URL_PROTOCOLS.includes(new URL(url).protocol);
|
|
} catch {
|
|
return false;
|
|
}
|
|
}
|