Browse Source

Merge pull request #19356 from abpframework/liangshiwei/npmpackages

Update vulnerable NPM packages to the latest version
pull/19364/head
maliming 3 years ago
committed by GitHub
parent
commit
1a076d614b
No known key found for this signature in database GPG Key ID: B5690EEEBB952194
  1. 172
      npm/packs/aspnetcore.mvc.ui/gulp/copy-resources.js
  2. 2793
      npm/packs/aspnetcore.mvc.ui/package-lock.json
  3. 7
      npm/packs/aspnetcore.mvc.ui/package.json
  4. 1442
      npm/packs/aspnetcore.mvc.ui/yarn.lock
  5. 2
      npm/packs/jquery-validation/package.json

172
npm/packs/aspnetcore.mvc.ui/gulp/copy-resources.js

@ -1,172 +0,0 @@
"use strict";
(function () {
var gulp = require("gulp"),
merge = require("merge-stream"),
fs = require('fs'),
glob = require('glob'),
micromatch = require('micromatch'),
path = require("path"),
extendObject = require('extend-object');
var investigatedPackagePaths = {};
var resourceMapping;
var rootPath;
function replaceAliases(text) {
if (!resourceMapping.aliases) {
return text;
}
for (var alias in resourceMapping.aliases) {
if (!resourceMapping.aliases.hasOwnProperty(alias)) {
continue;
}
text = replaceAll(text, alias, resourceMapping.aliases[alias]);
}
return text;
}
function replaceAll(text, search, replacement) {
return text.replace(new RegExp(search, 'g'), replacement);
}
function requireOptional(filePath) {
//TODO: Implement this using a library instead of try-catch!
try {
return require(filePath);
} catch (e) {
return undefined;
}
}
function cleanDirsAndFiles(patterns) {
const { dirs, files } = findDirsAndFiles(patterns);
files.forEach(file => {
try {
fs.unlinkSync(file);
} catch (_) {}
});
dirs.sort((a, b) => a < b ? 1 : -1);
dirs.forEach(dir => {
if (fs.readdirSync(dir).length) return;
try {
fs.rmdirSync(dir, {});
} catch (_) {}
});
}
function findDirsAndFiles(patterns) {
const dirs = [];
const files = [];
const list = glob.sync('**/*', { dot: true });
const matches = micromatch(list, normalizeGlob(patterns), {
dot: true,
});
matches.forEach(match => {
if (!fs.existsSync(match)) return;
(fs.statSync(match).isDirectory() ? dirs : files).push(match);
});
return { dirs, files };
}
function normalizeGlob(patterns) {
return patterns.map(pattern => {
const prefix = /\*$/.test(pattern) ? '' : '/**';
return replaceAliases(pattern).replace(/(!?)\.\//, '$1') + prefix;
});
}
function normalizeResourceMapping(resourcemapping) {
var defaultSettings = {
aliases: {
"@node_modules": "./node_modules",
"@libs": "./wwwroot/libs"
},
clean: [
"@libs"
]
};
extendObject(defaultSettings.aliases, resourcemapping.aliases);
resourcemapping.aliases = defaultSettings.aliases;
resourcemapping.clean = resourcemapping.clean || defaultSettings.clean;
return resourcemapping;
}
function buildResourceMapping(packagePath) {
if (investigatedPackagePaths[packagePath]) {
return {};
}
investigatedPackagePaths[packagePath] = 'OK';
var packageJson = requireOptional(path.join(packagePath, 'package.json'));
var resourcemapping = requireOptional(path.join(packagePath, 'abp.resourcemapping.js')) || { };
if (packageJson && packageJson.dependencies) {
var aliases = {};
var mappings = {};
for (var dependency in packageJson.dependencies) {
if (packageJson.dependencies.hasOwnProperty(dependency)) {
var dependedPackagePath = path.join(rootPath, 'node_modules', dependency);
var importedResourceMapping = buildResourceMapping(dependedPackagePath);
extendObject(aliases, importedResourceMapping.aliases);
extendObject(mappings, importedResourceMapping.mappings);
}
}
extendObject(aliases, resourcemapping.aliases);
extendObject(mappings, resourcemapping.mappings);
resourcemapping.aliases = aliases;
resourcemapping.mappings = mappings;
}
return resourcemapping;
}
function copyResourcesTask (path) {
rootPath = path;
resourceMapping = normalizeResourceMapping(buildResourceMapping(rootPath));
cleanDirsAndFiles(resourceMapping.clean);
var tasks = [];
if (resourceMapping.mappings) {
for (var mapping in resourceMapping.mappings) {
if (resourceMapping.mappings.hasOwnProperty(mapping)) {
var destination = replaceAliases(resourceMapping.mappings[mapping]);
if (fs.existsSync(destination)) continue;
var source = replaceAliases(mapping);
tasks.push(
gulp.src(source).pipe(gulp.dest(destination))
);
}
}
}
return merge(tasks);
}
module.exports = copyResourcesTask;
})();

2793
npm/packs/aspnetcore.mvc.ui/package-lock.json

File diff suppressed because it is too large

7
npm/packs/aspnetcore.mvc.ui/package.json

@ -10,12 +10,7 @@
"access": "public"
},
"dependencies": {
"ansi-colors": "^4.1.1",
"extend-object": "^1.0.0",
"glob": "^7.1.6",
"gulp": "^4.0.2",
"merge-stream": "^2.0.0",
"micromatch": "^4.0.2"
"ansi-colors": "^4.1.1"
},
"gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431",
"homepage": "https://abp.io",

1442
npm/packs/aspnetcore.mvc.ui/yarn.lock

File diff suppressed because it is too large

2
npm/packs/jquery-validation/package.json

@ -11,7 +11,7 @@
},
"dependencies": {
"@abp/jquery": "~8.1.0-rc.3",
"jquery-validation": "^1.19.3"
"jquery-validation": "^1.20.0"
},
"gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431",
"homepage": "https://abp.io",

Loading…
Cancel
Save