diff options
author | Florian Dold <florian.dold@gmail.com> | 2019-03-27 21:01:33 +0100 |
---|---|---|
committer | Florian Dold <florian.dold@gmail.com> | 2019-03-27 21:01:33 +0100 |
commit | cc97a4dd2a967e1c2273bd5f4c5f49a5bf2e2585 (patch) | |
tree | 92c5d88706a6ffc654d1b133618d357890e7096b /node_modules/caching-transform/index.js | |
parent | 3771b4d6b67b34c130f3a9a1a15f42deefdb2eda (diff) |
remove node_modules
Diffstat (limited to 'node_modules/caching-transform/index.js')
-rw-r--r-- | node_modules/caching-transform/index.js | 67 |
1 files changed, 0 insertions, 67 deletions
diff --git a/node_modules/caching-transform/index.js b/node_modules/caching-transform/index.js deleted file mode 100644 index a66a6741d..000000000 --- a/node_modules/caching-transform/index.js +++ /dev/null @@ -1,67 +0,0 @@ -'use strict'; - -var mkdirp = require('mkdirp'); -var md5Hex = require('md5-hex'); -var fs = require('fs'); -var path = require('path'); -var writeFileAtomic = require('write-file-atomic'); - -function defaultHash(input, additionalData, salt) { - return md5Hex([input, salt || '']); -} - -function wrap(opts) { - if (!(opts.factory || opts.transform) || (opts.factory && opts.transform)) { - throw new Error('specify factory or transform but not both'); - } - if (typeof opts.cacheDir !== 'string' && !opts.disableCache) { - throw new Error('cacheDir must be a string'); - } - - var transformFn = opts.transform; - var factory = opts.factory; - var cacheDir = opts.cacheDir; - var cacheDirCreated = opts.createCacheDir === false; - var created = transformFn && cacheDirCreated; - var ext = opts.ext || ''; - var salt = opts.salt || ''; - var shouldTransform = opts.shouldTransform; - var disableCache = opts.disableCache; - var hashFn = opts.hash || defaultHash; - var encoding = opts.encoding === 'buffer' ? undefined : opts.encoding || 'utf8'; - - function transform(input, metadata, hash) { - if (!created) { - if (!cacheDirCreated && !disableCache) { - mkdirp.sync(cacheDir); - } - if (!transformFn) { - transformFn = factory(cacheDir); - } - created = true; - } - return transformFn(input, metadata, hash); - } - - return function (input, metadata) { - if (shouldTransform && !shouldTransform(input, metadata)) { - return input; - } - if (disableCache) { - return transform(input, metadata); - } - - var hash = hashFn(input, metadata, salt); - var cachedPath = path.join(cacheDir, hash + ext); - - try { - return fs.readFileSync(cachedPath, encoding); - } catch (e) { - var result = transform(input, metadata, hash); - writeFileAtomic.sync(cachedPath, result, encoding); - return result; - } - }; -} - -module.exports = wrap; |