From a0cd5dce81e13e6cba02b3ef80c4a81da7d1a5b3 Mon Sep 17 00:00:00 2001 From: Julien Fraichot Date: Mon, 17 Jul 2023 17:18:52 +0200 Subject: [PATCH] fix(Exports): prevent overwriting exports in jest ESM consumption --- index.js | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/index.js b/index.js index 87cdf49..e6b1890 100644 --- a/index.js +++ b/index.js @@ -1,15 +1,16 @@ -var exports = module.exports = function SHA (algorithm) { +const supportedAlgorithms = {}; +module.exports = function SHA (algorithm) { algorithm = algorithm.toLowerCase() - var Algorithm = exports[algorithm] + var Algorithm = supportedAlgorithms[algorithm] if (!Algorithm) throw new Error(algorithm + ' is not supported (we accept pull requests)') return new Algorithm() } -exports.sha = require('./sha') -exports.sha1 = require('./sha1') -exports.sha224 = require('./sha224') -exports.sha256 = require('./sha256') -exports.sha384 = require('./sha384') -exports.sha512 = require('./sha512') +module.exports.sha = supportedAlgorithms.sha = require('./sha') +module.exports.sha1 = supportedAlgorithms.sha1 = require('./sha1') +module.exports.sha224 = supportedAlgorithms.sha224 = require('./sha224') +module.exports.sha256 = supportedAlgorithms.sha256 = require('./sha256') +module.exports.sha384 = supportedAlgorithms.sha384 = require('./sha384') +module.exports.sha512 = supportedAlgorithms.sha512 = require('./sha512')