UNPKG

imgix-url-builder

Version:

JavaScript/TypeScript Imgix URL builders for browsers and Node.js

30 lines (29 loc) 867 B
const camelCaseToParamCase = (input) => { return input.replace(/[A-Z]/g, (match) => { return `-${match.toLowerCase()}`; }); }; const buildURL = (url, params) => { const instance = new URL(url); for (const camelCasedParamKey in params) { const paramKey = camelCaseToParamCase(camelCasedParamKey); const paramValue = params[camelCasedParamKey]; if (paramValue === void 0) { instance.searchParams.delete(paramKey); } else if (Array.isArray(paramValue)) { instance.searchParams.set(paramKey, paramValue.join(",")); } else { instance.searchParams.set(paramKey, `${paramValue}`); } } const s = instance.searchParams.get("s"); if (s) { instance.searchParams.delete("s"); instance.searchParams.append("s", s); } return instance.toString(); }; export { buildURL }; //# sourceMappingURL=buildURL.js.map