UNPKG

1.01 kBJavaScriptView Raw
1"use strict";
2
3var _Object$defineProperty = require("@babel/runtime-corejs2/core-js/object/define-property");
4
5_Object$defineProperty(exports, "__esModule", {
6 value: true
7});
8
9exports["default"] = void 0;
10
11var pathModule = require('path');
12
13var fs = require('fs'); // flow-disable-next-line
14
15
16var klawSync = require('klaw-sync'); // flow-disable-next-line
17
18
19var md5 = require('md5');
20
21var dirChecksum = function dirChecksum(dirPath) {
22 var extraPaths = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
23 var files = klawSync(pathModule.resolve(dirPath), {
24 nodir: true
25 }).map(function (f) {
26 return f.path;
27 });
28 var extraFiles = extraPaths.map(function (p) {
29 return pathModule.resolve(p);
30 });
31 files = files.concat(extraFiles);
32 var md5s = files.map(function (f) {
33 return fs.readFileSync(f);
34 });
35 var concatenatedMd5s = md5s.join();
36 var finalMd5 = md5(concatenatedMd5s);
37 return finalMd5;
38};
39
40var _default = dirChecksum;
41exports["default"] = _default;
\No newline at end of file