summaryrefslogtreecommitdiffstats
path: root/node_modules/find-cache-dir/index.js
diff options
context:
space:
mode:
Diffstat (limited to 'node_modules/find-cache-dir/index.js')
-rw-r--r--node_modules/find-cache-dir/index.js34
1 files changed, 34 insertions, 0 deletions
diff --git a/node_modules/find-cache-dir/index.js b/node_modules/find-cache-dir/index.js
new file mode 100644
index 0000000..2502e44
--- /dev/null
+++ b/node_modules/find-cache-dir/index.js
@@ -0,0 +1,34 @@
+'use strict';
+const path = require('path');
+const commonDir = require('commondir');
+const pkgDir = require('pkg-dir');
+const makeDir = require('make-dir');
+
+module.exports = options => {
+ const name = options.name;
+ let dir = options.cwd;
+
+ if (options.files) {
+ dir = commonDir(dir, options.files);
+ } else {
+ dir = dir || process.cwd();
+ }
+
+ dir = pkgDir.sync(dir);
+
+ if (dir) {
+ dir = path.join(dir, 'node_modules', '.cache', name);
+
+ if (dir && options.create) {
+ makeDir.sync(dir);
+ }
+
+ if (options.thunk) {
+ return function () {
+ return path.join.apply(path, [dir].concat(Array.prototype.slice.call(arguments)));
+ };
+ }
+ }
+
+ return dir;
+};