UNPKG

1.02 kBJavaScriptView Raw
1"use strict";
2
3const rimraf = require('rimraf');
4const promisify = require('./utils/promisify');
5const promisifiedRimraf = promisify(rimraf);
6const validate = require("./utils/validate");
7
8const validateInput = (methodName, path) => {
9 const methodSignature = `${methodName}([path])`;
10 validate.argument(methodSignature, "path", path, ["string", "undefined"]);
11};
12
13// ---------------------------------------------------------
14// Sync
15// ---------------------------------------------------------
16
17const removeSync = path => {
18 rimraf.sync(path, { disableGlob: true });
19};
20
21// ---------------------------------------------------------
22// Async
23// ---------------------------------------------------------
24
25const removeAsync = path => {
26 return promisifiedRimraf(path, { disableGlob: true });
27};
28
29// ---------------------------------------------------------
30// API
31// ---------------------------------------------------------
32
33exports.validateInput = validateInput;
34exports.sync = removeSync;
35exports.async = removeAsync;