UNPKG

use-query-params

Version:

React Hook for managing state in URL query parameters with easy serialization.

40 lines (39 loc) 1.17 kB
function serializeUrlNameMap(paramConfigMap) { let urlNameMapParts; for (const paramName in paramConfigMap) { if (paramConfigMap[paramName].urlName) { const urlName = paramConfigMap[paramName].urlName; const part = `${urlName}\0${paramName}`; if (!urlNameMapParts) urlNameMapParts = [part]; else urlNameMapParts.push(part); } } return urlNameMapParts ? urlNameMapParts.join("\n") : void 0; } function deserializeUrlNameMap(urlNameMapStr) { if (!urlNameMapStr) return void 0; return Object.fromEntries( urlNameMapStr.split("\n").map((part) => part.split("\0")) ); } function applyUrlNames(encodedValues, paramConfigMap) { var _a; let newEncodedValues = {}; for (const paramName in encodedValues) { if (((_a = paramConfigMap[paramName]) == null ? void 0 : _a.urlName) != null) { newEncodedValues[paramConfigMap[paramName].urlName] = encodedValues[paramName]; } else { newEncodedValues[paramName] = encodedValues[paramName]; } } return newEncodedValues; } export { applyUrlNames, deserializeUrlNameMap, serializeUrlNameMap }; //# sourceMappingURL=urlName.js.map