mirror of
https://github.com/discordjs/discord.js.git
synced 2026-03-12 01:23:31 +01:00
Use libsodium.js if available (#1390)
* Use libsodium.js if available
* Style consistency
* Added peer dep and update README
* Link should point to npmjs 🤔
This commit is contained in:
@@ -1,13 +1,22 @@
|
||||
try {
|
||||
const sodium = require('sodium');
|
||||
module.exports = {
|
||||
const libs = {
|
||||
sodium: sodium => ({
|
||||
open: sodium.api.crypto_secretbox_open_easy,
|
||||
close: sodium.api.crypto_secretbox_easy,
|
||||
};
|
||||
} catch (err) {
|
||||
const tweetnacl = require('tweetnacl');
|
||||
module.exports = {
|
||||
}),
|
||||
'libsodium-wrappers': sodium => ({
|
||||
open: sodium.crypto_secretbox_open_easy,
|
||||
close: sodium.crypto_secretbox_easy,
|
||||
}),
|
||||
tweetnacl: tweetnacl => ({
|
||||
open: tweetnacl.secretbox.open,
|
||||
close: tweetnacl.secretbox,
|
||||
};
|
||||
}),
|
||||
};
|
||||
|
||||
for (const libName of Object.keys(libs)) {
|
||||
try {
|
||||
const lib = require(libName);
|
||||
module.exports = libs[libName](lib);
|
||||
break;
|
||||
} catch (err) {} // eslint-disable-line no-empty
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user