UNPKG

@snipsonian/core

Version:

Core/base reusable javascript code snippets

20 lines (19 loc) 603 B
import isString from '../is/isString'; import replacePlaceholders from '../string/replacePlaceholders'; export default function replacePathParams({ url, params = {}, }) { return replacePlaceholders({ msg: url, placeholders: encodeStringParams(params), }); } function encodeStringParams(params) { if (!params) { return params; } return Object.keys(params) .reduce((paramAccumulator, key) => { const val = params[key]; paramAccumulator[key] = isString(val) ? encodeURIComponent(val) : val; return paramAccumulator; }, {}); }