Sha256: 5091bbdd460f695cb883d17861d5ae838c8243c57feea2258c6dce25db1b1fe7
Contents?: true
Size: 1.53 KB
Versions: 3
Compression:
Stored size: 1.53 KB
Contents
'use strict'; var path = require('path'); var globby = require('globby'); var isPathCwd = require('is-path-cwd'); var isPathInCwd = require('is-path-in-cwd'); var objectAssign = require('object-assign'); var Promise = require('pinkie-promise'); var pify = require('pify'); var rimraf = require('rimraf'); var rimrafP = pify(rimraf, Promise); function safeCheck(file) { if (isPathCwd(file)) { throw new Error('Cannot delete the current working directory. Can be overriden with the `force` option.'); } if (!isPathInCwd(file)) { throw new Error('Cannot delete files/folders outside the current working directory. Can be overriden with the `force` option.'); } } module.exports = function (patterns, opts) { opts = objectAssign({}, opts); var force = opts.force; delete opts.force; var dryRun = opts.dryRun; delete opts.dryRun; return globby(patterns, opts).then(function (files) { return Promise.all(files.map(function (file) { if (!force) { safeCheck(file); } file = path.resolve(opts.cwd || '', file); if (dryRun) { return Promise.resolve(file); } return rimrafP(file).then(function () { return file; }); })); }); }; module.exports.sync = function (patterns, opts) { opts = objectAssign({}, opts); var force = opts.force; delete opts.force; var dryRun = opts.dryRun; delete opts.dryRun; return globby.sync(patterns, opts).map(function (file) { if (!force) { safeCheck(file); } file = path.resolve(opts.cwd || '', file); if (!dryRun) { rimraf.sync(file); } return file; }); };
Version data entries
3 entries across 3 versions & 2 rubygems
Version | Path |
---|---|
guard-sass-lint-0.1.2 | node_modules/del/index.js |
guard-sass-lint-0.1.1 | node_modules/del/index.js |
lanes-0.8.0 | node_modules/del/index.js |