File: index.js

package info (click to toggle)
node-md5-hex 2.0.0-2
  • links: PTS, VCS
  • area: main
  • in suites: bullseye, buster, sid
  • size: 104 kB
  • sloc: makefile: 2; sh: 2
file content (23 lines) | stat: -rw-r--r-- 477 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
'use strict';
const crypto = require('crypto');

module.exports = function (input) {
	const hash = crypto.createHash('md5');

	const update = buf => {
		const inputEncoding = typeof buf === 'string' ? 'utf8' : undefined;
		hash.update(buf, inputEncoding);
	};

	if (arguments.length > 1) {
		throw new Error('Too many arguments. Try specifying an array.');
	}

	if (Array.isArray(input)) {
		input.forEach(update);
	} else {
		update(input);
	}

	return hash.digest('hex');
};