diff --git a/resources/assets/javascripts/lib/url_helper.ts b/resources/assets/javascripts/lib/url_helper.ts index b9ebbf60d9005699d0b9907482ac8dca9616ab05..8815142ed69311bc6ee7cd63a0bd45ad54c7f77a 100644 --- a/resources/assets/javascripts/lib/url_helper.ts +++ b/resources/assets/javascripts/lib/url_helper.ts @@ -16,7 +16,7 @@ class URLHelper { base_url: string; parameters: Record<string, string>; - constructor(base_url = "", parameters = {}) { + constructor(base_url: string = "", parameters: any = {}) { //the base url for all links this.base_url = base_url; @@ -33,7 +33,7 @@ class URLHelper { * @param ignore_params boolean: ignore previously bound parameters * @return: url with all necessary and additional parameters, encoded */ - getURL(url: string, param_object: any, ignore_params: boolean): string { + getURL(url: string, param_object: any = {}, ignore_params: boolean = false): string { let result; if (url === '' || url.match(/^[?#]/)) { @@ -44,9 +44,11 @@ class URLHelper { if (!ignore_params) { for (const key in this.parameters) { - if (!result.searchParams.has(key)) { - result.searchParams.set(key, this.parameters[key]); + if (result.searchParams.has(key) || this.parameters[key] === null) { + continue; } + + result.searchParams.set(key, this.parameters[key]); } }