File: //home/arjun/projects/buyercall/node_modules/react-router/generatePath.js
"use strict";
exports.__esModule = true;
var _pathToRegexp = require("path-to-regexp");
var _pathToRegexp2 = _interopRequireDefault(_pathToRegexp);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var patternCache = {};
var cacheLimit = 10000;
var cacheCount = 0;
var compileGenerator = function compileGenerator(pattern) {
var cacheKey = pattern;
var cache = patternCache[cacheKey] || (patternCache[cacheKey] = {});
if (cache[pattern]) return cache[pattern];
var compiledGenerator = _pathToRegexp2.default.compile(pattern);
if (cacheCount < cacheLimit) {
cache[pattern] = compiledGenerator;
cacheCount++;
}
return compiledGenerator;
};
/**
* Public API for generating a URL pathname from a pattern and parameters.
*/
var generatePath = function generatePath() {
var pattern = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : "/";
var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
if (pattern === "/") {
return pattern;
}
var generator = compileGenerator(pattern);
return generator(params, { pretty: true });
};
exports.default = generatePath;