| | |
| | | outsideContainer?.removeEventListener("click", click) |
| | | outsideContainer?.addEventListener("click", click) |
| | | document.removeEventListener("keydown", esc) |
| | | document.addEventListener('keydown', esc) |
| | | } |
| | | |
| | | export function stripIndex(s: string): string { |
| | | return s.endsWith("index") ? s.slice(0, -"index".length) : s |
| | | } |
| | | |
| | | export function relative(from: string, to: string) { |
| | | from = encodeURI(stripIndex(from)) |
| | | to = encodeURI(stripIndex(to)) |
| | | const start = [location.protocol, '//', location.host, location.pathname].join('') |
| | | const trimEnd = from.length === 0 ? start.length : -from.length |
| | | const url = start.slice(0, trimEnd) + to |
| | | return url |
| | | document.addEventListener("keydown", esc) |
| | | } |
| | | |
| | | export function removeAllChildren(node: HTMLElement) { |