Initial commit
This commit is contained in:
37
node_modules/react-router/es/generatePath.js
generated
vendored
Normal file
37
node_modules/react-router/es/generatePath.js
generated
vendored
Normal file
@@ -0,0 +1,37 @@
|
||||
import pathToRegexp from "path-to-regexp";
|
||||
|
||||
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 = pathToRegexp.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 });
|
||||
};
|
||||
|
||||
export default generatePath;
|
||||
Reference in New Issue
Block a user