function addParams(url, params = {}) {
const urlCopy = new URL(url);
let paramsCopy = Object.fromEntries(urlCopy.searchParams.entries());
paramsCopy = {
...paramsCopy,
...params
};
const entries = Object.entries(paramsCopy).filter(
([_, v]) => v !== undefined
);
paramsCopy = Object.fromEntries(entries);
const newParams = new URLSearchParams(Object.entries(paramsCopy)).toString();
const newUrl = new URL(
`${urlCopy.origin}${urlCopy.pathname}${
newParams.length ? "?" : ""
}${newParams}`
);
return newUrl.href;
}