25 lines
743 B
JavaScript
25 lines
743 B
JavaScript
"use strict";
|
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
exports.composeLocationUrl = void 0;
|
|
function composeLocationUrl(location, url, props) {
|
|
const { port, protocol, hostname } = location;
|
|
let Url = `${protocol}//${hostname}`;
|
|
if (port) {
|
|
Url += `:${port}`;
|
|
}
|
|
if (url) {
|
|
Url += url.startsWith('/') ? url : `/${url}`;
|
|
if (props) {
|
|
const k = Object.keys(props);
|
|
if (k.length > 0) {
|
|
for (const k2 of k) {
|
|
Url += Url.includes('?') ? '&' : '?';
|
|
Url += `${k2}=${encodeURI(props[k2])}`;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
return Url;
|
|
}
|
|
exports.composeLocationUrl = composeLocationUrl;
|