nitropage
Version:
A free and open source, extensible visual page builder based on SolidStart.
20 lines (16 loc) • 441 B
text/typescript
export const urlJoin = (...segments: string[]) => {
const separator = "://";
const url = segments.join("/");
const parts = url.split(separator);
const hasSeparator = parts.length > 1;
const pathClean = (hasSeparator ? parts[1] : parts[0]).replace(
slashRegex,
"/",
);
if (!hasSeparator) {
return pathClean;
}
const result = parts[0] + separator + pathClean;
return result;
};
const slashRegex = /\/\/+/gm;