6 changed files with 38 additions and 17 deletions
@ -1,3 +1,22 @@ |
|||||||
|
const anchor_regex = /<a\s+([^>]*)href=['"]([^'"]+)['"]([^>]*)>/gi; |
||||||
|
|
||||||
export function api(rel_path){ |
export function api(rel_path){ |
||||||
return `${location.protocol}//${location.host.replace('5173','8080')}/api/${rel_path}`; |
return `${location.protocol}//${location.host.replace('5173','8080')}/api/${rel_path}`; |
||||||
} |
} |
||||||
|
|
||||||
|
export function target(code){ |
||||||
|
if (!code) return null; |
||||||
|
let altered = code; |
||||||
|
|
||||||
|
let match; |
||||||
|
while(match = anchor_regex.exec(code)) { |
||||||
|
const orig = match[0]; |
||||||
|
const href = match[2]; |
||||||
|
if (orig.includes('target=')) continue; // if there is already a target: skip
|
||||||
|
if (!href.includes('://')) continue; // if this is a relative path: skip
|
||||||
|
const anchor = '<a target="_blank" '+orig.substring(3); |
||||||
|
altered = altered.replaceAll(orig,anchor); |
||||||
|
} |
||||||
|
|
||||||
|
return altered; |
||||||
|
} |
||||||
Loading…
Reference in new issue