tsoa
This commit is contained in:
37
node_modules/@tsoa/cli/dist/utils/pathUtils.js
generated
vendored
Normal file
37
node_modules/@tsoa/cli/dist/utils/pathUtils.js
generated
vendored
Normal file
@@ -0,0 +1,37 @@
|
||||
"use strict";
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.normalisePath = normalisePath;
|
||||
exports.convertColonPathParams = convertColonPathParams;
|
||||
exports.convertBracesPathParams = convertBracesPathParams;
|
||||
/**
|
||||
* Removes all '/', '\', and spaces from the beginning and end of the path
|
||||
* Replaces all '/', '\', and spaces between sections of the path
|
||||
* Adds prefix and suffix if supplied
|
||||
* Replace ':pathParam' with '{pathParam}'
|
||||
*/
|
||||
function normalisePath(path, withPrefix, withSuffix, skipPrefixAndSuffixIfEmpty = true) {
|
||||
if ((!path || path === '/') && skipPrefixAndSuffixIfEmpty) {
|
||||
return '';
|
||||
}
|
||||
if (!path || typeof path !== 'string') {
|
||||
path = '' + path;
|
||||
}
|
||||
// normalise beginning and end of the path
|
||||
let normalised = path.replace(/^[/\\\s]+|[/\\\s]+$/g, '');
|
||||
normalised = withPrefix ? withPrefix + normalised : normalised;
|
||||
normalised = withSuffix ? normalised + withSuffix : normalised;
|
||||
// normalise / signs amount in all path
|
||||
normalised = normalised.replace(/[/\\\s]+/g, '/');
|
||||
return normalised;
|
||||
}
|
||||
function convertColonPathParams(path) {
|
||||
if (!path || typeof path !== 'string') {
|
||||
return path;
|
||||
}
|
||||
const normalised = path.replace(/:([^/]+)/g, '{$1}');
|
||||
return normalised;
|
||||
}
|
||||
function convertBracesPathParams(path) {
|
||||
return path.replace(/{(\w*)}/g, ':$1');
|
||||
}
|
||||
//# sourceMappingURL=pathUtils.js.map
|
||||
Reference in New Issue
Block a user