export class UrlParamFilterService { public urlEncode(rawFilters: {[key: string]: any} = {}): {[key: string]: string|string[]} { const parsedFilters: {[key: string]: any} = {}; Object.keys(rawFilters).forEach((key: string) => { const encodedKey: string = encodeURIComponent(key); const value: any = rawFilters[key]; if (value instanceof Array) { const encodedValues: string[] = []; value.forEach((item: any) => encodedValues.push(encodeURIComponent(item))); parsedFilters[encodedKey] = encodedValues; } else { parsedFilters[encodedKey] = encodeURIComponent(value); } }); return parsedFilters; } }