export function objectToParamString()

in public/js/util/urlParameters.js [16:32]


export function objectToParamString(obj, prefix) {
  return Object.keys(obj).reduce(function(soFar, key) {
    const value = obj[key];
    const encodedKey = encodeURIComponent(prefix ? `${prefix}.${key}`: key);
    if (!isValidValue(value)) {
      return soFar;
    }

    if (Array.isArray(value)) {
      return soFar.concat(value.map((subValue) => [encodedKey + '[]=' + encodeURIComponent(subValue)]));
    } else if (typeof value === 'object') {
      return soFar.concat([objectToParamString(value, key)]);
    } else {
      return soFar.concat([encodedKey + '=' + encodeURIComponent(value)]);
    }
  }, []).join('&');
}