@snipsonian/core
Version:
Core/base reusable javascript code snippets
12 lines (11 loc) • 472 B
JavaScript
import appendUrlParam, { encodeParamName } from './appendUrlParam';
export default function appendUrlParamIfNotAlready({ url, paramName, paramValue, }) {
if (doesUrlContainParam({ url, paramName })) {
return url;
}
return appendUrlParam({ url, paramName, paramValue });
}
function doesUrlContainParam({ url, paramName }) {
const encodedParamName = encodeParamName(paramName);
return url.search(new RegExp(`[\\?&]${encodedParamName}=`)) > -1;
}