diff --git a/npm/packs/aspnetcore.mvc.ui/gulp/copy-resources.js b/npm/packs/aspnetcore.mvc.ui/gulp/copy-resources.js index 03b9dc1e4a..582d41e92a 100644 --- a/npm/packs/aspnetcore.mvc.ui/gulp/copy-resources.js +++ b/npm/packs/aspnetcore.mvc.ui/gulp/copy-resources.js @@ -4,7 +4,7 @@ var gulp = require("gulp"), merge = require("merge-stream"), - fse = require('fs-extra'), + fs = require('fs'), glob = require('glob'), micromatch = require('micromatch'), path = require("path"), @@ -47,10 +47,19 @@ function cleanDirsAndFiles(patterns) { const { dirs, files } = findDirsAndFiles(patterns); - files.forEach(file => fse.unlinkSync(file)); + 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 { - fse.rmdirSync(dir); + fs.rmdirSync(dir, {}); } catch (_) {} }); } @@ -66,9 +75,9 @@ }); matches.forEach(match => { - if (!fse.pathExistsSync(match)) return; + if (!fs.existsSync(match)) return; - (fse.statSync(match).isDirectory() ? dirs : files).push(match); + (fs.statSync(match).isDirectory() ? dirs : files).push(match); }); return { dirs, files }; @@ -144,8 +153,10 @@ if (resourceMapping.mappings) { for (var mapping in resourceMapping.mappings) { if (resourceMapping.mappings.hasOwnProperty(mapping)) { - var source = replaceAliases(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)) ); diff --git a/npm/packs/aspnetcore.mvc.ui/package-lock.json b/npm/packs/aspnetcore.mvc.ui/package-lock.json index 2f2844cd19..280d7416a0 100644 --- a/npm/packs/aspnetcore.mvc.ui/package-lock.json +++ b/npm/packs/aspnetcore.mvc.ui/package-lock.json @@ -202,11 +202,6 @@ "async-done": "^1.2.2" } }, - "at-least-node": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz", - "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==" - }, "atob": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", @@ -973,17 +968,6 @@ "map-cache": "^0.2.2" } }, - "fs-extra": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.0.1.tgz", - "integrity": "sha512-h2iAoN838FqAFJY2/qVpzFXy+EBxfVE220PalAqQLDVsFOHLJrZvut5puAbCdNv6WJk+B8ihI+k0c7JK5erwqQ==", - "requires": { - "at-least-node": "^1.0.0", - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^1.0.0" - } - }, "fs-mkdirp-stream": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs-mkdirp-stream/-/fs-mkdirp-stream-1.0.0.tgz", @@ -1465,22 +1449,6 @@ "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=" }, - "jsonfile": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", - "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", - "requires": { - "graceful-fs": "^4.1.6", - "universalify": "^2.0.0" - }, - "dependencies": { - "universalify": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", - "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==" - } - } - }, "just-debounce": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/just-debounce/-/just-debounce-1.0.0.tgz", @@ -1910,15 +1878,6 @@ "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=" }, - "path": { - "version": "0.12.7", - "resolved": "https://registry.npmjs.org/path/-/path-0.12.7.tgz", - "integrity": "sha1-1NwqUGxM4hl+tIHr/NWzbAFAsQ8=", - "requires": { - "process": "^0.11.1", - "util": "^0.10.3" - } - }, "path-dirname": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz", @@ -1998,11 +1957,6 @@ "resolved": "https://registry.npmjs.org/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz", "integrity": "sha1-t+PqQkNaTJsnWdmeDyAesZWALuE=" }, - "process": { - "version": "0.11.10", - "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", - "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=" - }, "process-nextick-args": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", @@ -2628,11 +2582,6 @@ "through2-filter": "^3.0.0" } }, - "universalify": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-1.0.0.tgz", - "integrity": "sha512-rb6X1W158d7pRQBg5gkR8uPaSfiids68LTJQYOtEUhoJUWBdaQHsuT/EUduxXYxcrt4r5PJ4fuHW1MHT6p0qug==" - }, "unset-value": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", @@ -2684,21 +2633,6 @@ "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==" }, - "util": { - "version": "0.10.4", - "resolved": "https://registry.npmjs.org/util/-/util-0.10.4.tgz", - "integrity": "sha512-0Pm9hTQ3se5ll1XihRic3FDIku70C+iHUdT/W926rSgHV5QgXsYbKZN8MSC3tJtSkhuROzvsQjAaFENRXr+19A==", - "requires": { - "inherits": "2.0.3" - }, - "dependencies": { - "inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" - } - } - }, "util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", diff --git a/npm/packs/aspnetcore.mvc.ui/package.json b/npm/packs/aspnetcore.mvc.ui/package.json index fa8b985b2f..a38676cc06 100644 --- a/npm/packs/aspnetcore.mvc.ui/package.json +++ b/npm/packs/aspnetcore.mvc.ui/package.json @@ -7,12 +7,10 @@ "dependencies": { "ansi-colors": "^4.1.1", "extend-object": "^1.0.0", - "fs-extra": "^9.0.1", "glob": "^7.1.6", "gulp": "^4.0.2", "merge-stream": "^2.0.0", - "micromatch": "^4.0.2", - "path": "^0.12.7" + "micromatch": "^4.0.2" }, "gitHead": "bb4ea17d5996f01889134c138d00b6c8f858a431" }