Initial boiler plate project
This commit is contained in:
49
node_modules/next/dist/shared/lib/router/utils/path-match.js
generated
vendored
Normal file
49
node_modules/next/dist/shared/lib/router/utils/path-match.js
generated
vendored
Normal file
@ -0,0 +1,49 @@
|
||||
"use strict";
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
Object.defineProperty(exports, "getPathMatch", {
|
||||
enumerable: true,
|
||||
get: function() {
|
||||
return getPathMatch;
|
||||
}
|
||||
});
|
||||
const _pathtoregexp = require("next/dist/compiled/path-to-regexp");
|
||||
function getPathMatch(path, options) {
|
||||
const keys = [];
|
||||
const regexp = (0, _pathtoregexp.pathToRegexp)(path, keys, {
|
||||
delimiter: "/",
|
||||
sensitive: typeof (options == null ? void 0 : options.sensitive) === "boolean" ? options.sensitive : false,
|
||||
strict: options == null ? void 0 : options.strict
|
||||
});
|
||||
const matcher = (0, _pathtoregexp.regexpToFunction)((options == null ? void 0 : options.regexModifier) ? new RegExp(options.regexModifier(regexp.source), regexp.flags) : regexp, keys);
|
||||
/**
|
||||
* A matcher function that will check if a given pathname matches the path
|
||||
* given in the builder function. When the path does not match it will return
|
||||
* `false` but if it does it will return an object with the matched params
|
||||
* merged with the params provided in the second argument.
|
||||
*/ return (pathname, params)=>{
|
||||
// If no pathname is provided it's not a match.
|
||||
if (typeof pathname !== "string") return false;
|
||||
const match = matcher(pathname);
|
||||
// If the path did not match `false` will be returned.
|
||||
if (!match) return false;
|
||||
/**
|
||||
* If unnamed params are not allowed they must be removed from
|
||||
* the matched parameters. path-to-regexp uses "string" for named and
|
||||
* "number" for unnamed parameters.
|
||||
*/ if (options == null ? void 0 : options.removeUnnamedParams) {
|
||||
for (const key of keys){
|
||||
if (typeof key.name === "number") {
|
||||
delete match.params[key.name];
|
||||
}
|
||||
}
|
||||
}
|
||||
return {
|
||||
...params,
|
||||
...match.params
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
//# sourceMappingURL=path-match.js.map
|
||||
Reference in New Issue
Block a user