Style tweaks
This commit is contained in:
parent
27e49d9298
commit
6e37129ec5
@ -2,14 +2,14 @@ const validateNpmPackageName = require("validate-npm-package-name");
|
|||||||
const parsePackageURL = require("../utils/parsePackageURL");
|
const parsePackageURL = require("../utils/parsePackageURL");
|
||||||
const createSearch = require("./utils/createSearch");
|
const createSearch = require("./utils/createSearch");
|
||||||
|
|
||||||
const KnownQueryParams = {
|
const knownQueryParams = {
|
||||||
main: true,
|
main: true,
|
||||||
meta: true,
|
meta: true,
|
||||||
module: true
|
module: true
|
||||||
};
|
};
|
||||||
|
|
||||||
function isKnownQueryParam(param) {
|
function isKnownQueryParam(param) {
|
||||||
return !!KnownQueryParams[param];
|
return !!knownQueryParams[param];
|
||||||
}
|
}
|
||||||
|
|
||||||
function queryIsKnown(query) {
|
function queryIsKnown(query) {
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
const validateNpmPackageName = require("validate-npm-package-name");
|
const validateNpmPackageName = require("validate-npm-package-name");
|
||||||
|
|
||||||
function validatePackageName(packageName) {
|
function isValidPackageName(packageName) {
|
||||||
return validateNpmPackageName(packageName).errors == null;
|
return validateNpmPackageName(packageName).errors == null;
|
||||||
}
|
}
|
||||||
|
|
||||||
module.exports = validatePackageName;
|
module.exports = isValidPackageName;
|
@ -1,5 +1,5 @@
|
|||||||
const url = require("url");
|
const url = require("url");
|
||||||
const validatePackageName = require("./validatePackageName");
|
const isValidPackageName = require("./isValidPackageName");
|
||||||
|
|
||||||
const URLFormat = /^\/((?:@[^/@]+\/)?[^/@]+)(?:@([^/]+))?(\/.*)?$/;
|
const URLFormat = /^\/((?:@[^/@]+\/)?[^/@]+)(?:@([^/]+))?(\/.*)?$/;
|
||||||
|
|
||||||
@ -15,18 +15,22 @@ function decodeParam(param) {
|
|||||||
return "";
|
return "";
|
||||||
}
|
}
|
||||||
|
|
||||||
function parsePackageURL(packageURL) {
|
function parsePackageURL(originalURL) {
|
||||||
const { pathname, search, query } = url.parse(packageURL, true);
|
const { pathname, search, query } = url.parse(originalURL, true);
|
||||||
|
|
||||||
const match = URLFormat.exec(pathname);
|
const match = URLFormat.exec(pathname);
|
||||||
|
|
||||||
// Disallow invalid URL formats.
|
// Disallow invalid URL formats.
|
||||||
if (match == null) return null;
|
if (match == null) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
const packageName = match[1];
|
const packageName = match[1];
|
||||||
|
|
||||||
// Disallow invalid npm package names.
|
// Disallow invalid npm package names.
|
||||||
if (!validatePackageName(packageName)) return null;
|
if (!isValidPackageName(packageName)) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
const packageVersion = decodeParam(match[2]) || "latest";
|
const packageVersion = decodeParam(match[2]) || "latest";
|
||||||
const filename = decodeParam(match[3]);
|
const filename = decodeParam(match[3]);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user