@napi-rs/blake-hash
Advanced tools
Comparing version 1.0.0 to 1.1.0
@@ -0,1 +1,6 @@ | ||
export function blake2b(input: string | Buffer): Buffer | ||
export function blake2bp(input: string | Buffer): Buffer | ||
export function blake2s(input: string | Buffer): Buffer | ||
export function blake2sp(input: string | Buffer): Buffer | ||
export function blake3(input: string | Buffer): Buffer | ||
export class Blake2BParam { | ||
@@ -2,0 +7,0 @@ |
234
index.js
@@ -1,233 +0,1 @@ | ||
const { existsSync, readFileSync } = require('fs') | ||
const { join } = require('path') | ||
const { platform, arch } = process | ||
let nativeBinding = null | ||
let localFileExisted = false | ||
let isMusl = false | ||
let loadError = null | ||
switch (platform) { | ||
case 'android': | ||
if (arch !== 'arm64') { | ||
throw new Error(`Unsupported architecture on Android ${arch}`) | ||
} | ||
localFileExisted = existsSync(join(__dirname, 'blake.android-arm64.node')) | ||
try { | ||
if (localFileExisted) { | ||
nativeBinding = require('./blake.android-arm64.node') | ||
} else { | ||
nativeBinding = require('@napi-rs/blake-hash-android-arm64') | ||
} | ||
} catch (e) { | ||
loadError = e | ||
} | ||
break | ||
case 'win32': | ||
switch (arch) { | ||
case 'x64': | ||
localFileExisted = existsSync( | ||
join(__dirname, 'blake.win32-x64-msvc.node') | ||
) | ||
try { | ||
if (localFileExisted) { | ||
nativeBinding = require('./blake.win32-x64-msvc.node') | ||
} else { | ||
nativeBinding = require('@napi-rs/blake-hash-win32-x64-msvc') | ||
} | ||
} catch (e) { | ||
loadError = e | ||
} | ||
break | ||
case 'ia32': | ||
localFileExisted = existsSync( | ||
join(__dirname, 'blake.win32-ia32-msvc.node') | ||
) | ||
try { | ||
if (localFileExisted) { | ||
nativeBinding = require('./blake.win32-ia32-msvc.node') | ||
} else { | ||
nativeBinding = require('@napi-rs/blake-hash-win32-ia32-msvc') | ||
} | ||
} catch (e) { | ||
loadError = e | ||
} | ||
break | ||
case 'arm64': | ||
localFileExisted = existsSync( | ||
join(__dirname, 'blake.win32-arm64-msvc.node') | ||
) | ||
try { | ||
if (localFileExisted) { | ||
nativeBinding = require('./blake.win32-arm64-msvc.node') | ||
} else { | ||
nativeBinding = require('@napi-rs/blake-hash-win32-arm64-msvc') | ||
} | ||
} catch (e) { | ||
loadError = e | ||
} | ||
break | ||
default: | ||
throw new Error(`Unsupported architecture on Windows: ${arch}`) | ||
} | ||
break | ||
case 'darwin': | ||
switch (arch) { | ||
case 'x64': | ||
localFileExisted = existsSync(join(__dirname, 'blake.darwin-x64.node')) | ||
try { | ||
if (localFileExisted) { | ||
nativeBinding = require('./blake.darwin-x64.node') | ||
} else { | ||
nativeBinding = require('@napi-rs/blake-hash-darwin-x64') | ||
} | ||
} catch (e) { | ||
loadError = e | ||
} | ||
break | ||
case 'arm64': | ||
localFileExisted = existsSync( | ||
join(__dirname, 'blake.darwin-arm64.node') | ||
) | ||
try { | ||
if (localFileExisted) { | ||
nativeBinding = require('./blake.darwin-arm64.node') | ||
} else { | ||
nativeBinding = require('@napi-rs/blake-hash-darwin-arm64') | ||
} | ||
} catch (e) { | ||
loadError = e | ||
} | ||
break | ||
default: | ||
throw new Error(`Unsupported architecture on macOS: ${arch}`) | ||
} | ||
break | ||
case 'freebsd': | ||
if (arch !== 'x64') { | ||
throw new Error(`Unsupported architecture on FreeBSD: ${arch}`) | ||
} | ||
localFileExisted = existsSync(join(__dirname, 'blake.freebsd-x64.node')) | ||
try { | ||
if (localFileExisted) { | ||
nativeBinding = require('./blake.freebsd-x64.node') | ||
} else { | ||
nativeBinding = require('@napi-rs/blake-hash-freebsd-x64') | ||
} | ||
} catch (e) { | ||
loadError = e | ||
} | ||
break | ||
case 'linux': | ||
switch (arch) { | ||
case 'x64': | ||
isMusl = readFileSync('/usr/bin/ldd', 'utf8').includes('musl') | ||
if (isMusl) { | ||
localFileExisted = existsSync( | ||
join(__dirname, 'blake.linux-x64-musl.node') | ||
) | ||
try { | ||
if (localFileExisted) { | ||
nativeBinding = require('./blake.linux-x64-musl.node') | ||
} else { | ||
nativeBinding = require('@napi-rs/blake-hash-linux-x64-musl') | ||
} | ||
} catch (e) { | ||
loadError = e | ||
} | ||
} else { | ||
localFileExisted = existsSync( | ||
join(__dirname, 'blake.linux-x64-gnu.node') | ||
) | ||
try { | ||
if (localFileExisted) { | ||
nativeBinding = require('./blake.linux-x64-gnu.node') | ||
} else { | ||
nativeBinding = require('@napi-rs/blake-hash-linux-x64-gnu') | ||
} | ||
} catch (e) { | ||
loadError = e | ||
} | ||
} | ||
break | ||
case 'arm64': | ||
isMusl = readFileSync('/usr/bin/ldd', 'utf8').includes('musl') | ||
if (isMusl) { | ||
localFileExisted = existsSync( | ||
join(__dirname, 'blake.linux-arm64-musl.node') | ||
) | ||
try { | ||
if (localFileExisted) { | ||
nativeBinding = require('./blake.linux-arm64-musl.node') | ||
} else { | ||
nativeBinding = require('@napi-rs/blake-hash-linux-arm64-musl') | ||
} | ||
} catch (e) { | ||
loadError = e | ||
} | ||
} else { | ||
localFileExisted = existsSync( | ||
join(__dirname, 'blake.linux-arm64-gnu.node') | ||
) | ||
try { | ||
if (localFileExisted) { | ||
nativeBinding = require('./blake.linux-arm64-gnu.node') | ||
} else { | ||
nativeBinding = require('@napi-rs/blake-hash-linux-arm64-gnu') | ||
} | ||
} catch (e) { | ||
loadError = e | ||
} | ||
} | ||
break | ||
case 'arm': | ||
localFileExisted = existsSync( | ||
join(__dirname, 'blake.linux-arm-gnueabihf.node') | ||
) | ||
try { | ||
if (localFileExisted) { | ||
nativeBinding = require('./blake.linux-arm-gnueabihf.node') | ||
} else { | ||
nativeBinding = require('@napi-rs/blake-hash-linux-arm-gnueabihf') | ||
} | ||
} catch (e) { | ||
loadError = e | ||
} | ||
break | ||
default: | ||
throw new Error(`Unsupported architecture on Linux: ${arch}`) | ||
} | ||
break | ||
default: | ||
throw new Error(`Unsupported OS: ${platform}, architecture: ${arch}`) | ||
} | ||
if (!nativeBinding) { | ||
if (loadError) { | ||
throw loadError | ||
} | ||
throw new Error(`Failed to load native binding`) | ||
} | ||
const { | ||
Blake2BHasher, | ||
Blake2SHasher, | ||
Blake3Hasher, | ||
Blake2BpHasher, | ||
Blake2SpHasher, | ||
Blake2BParam, | ||
Blake2SParam, | ||
Blake2SpParam, | ||
} = nativeBinding | ||
module.exports = { | ||
Blake2BHasher, | ||
Blake2SHasher, | ||
Blake3Hasher, | ||
Blake2BpHasher, | ||
Blake2SpHasher, | ||
Blake2BParam, | ||
Blake2SParam, | ||
Blake2SpParam, | ||
} | ||
const{existsSync,readFileSync}=require("fs"),{join}=require("path"),{platform,arch}=process;let nativeBinding=null,localFileExisted=!1,isMusl=!1,loadError=null;switch(platform){case"android":if(arch!=="arm64")throw new Error(`Unsupported architecture on Android ${arch}`);localFileExisted=existsSync(join(__dirname,"blake.android-arm64.node"));try{localFileExisted?nativeBinding=require("./blake.android-arm64.node"):nativeBinding=require("@napi-rs/blake-hash-android-arm64")}catch(e){loadError=e}break;case"win32":switch(arch){case"x64":localFileExisted=existsSync(join(__dirname,"blake.win32-x64-msvc.node"));try{localFileExisted?nativeBinding=require("./blake.win32-x64-msvc.node"):nativeBinding=require("@napi-rs/blake-hash-win32-x64-msvc")}catch(e){loadError=e}break;case"ia32":localFileExisted=existsSync(join(__dirname,"blake.win32-ia32-msvc.node"));try{localFileExisted?nativeBinding=require("./blake.win32-ia32-msvc.node"):nativeBinding=require("@napi-rs/blake-hash-win32-ia32-msvc")}catch(e){loadError=e}break;case"arm64":localFileExisted=existsSync(join(__dirname,"blake.win32-arm64-msvc.node"));try{localFileExisted?nativeBinding=require("./blake.win32-arm64-msvc.node"):nativeBinding=require("@napi-rs/blake-hash-win32-arm64-msvc")}catch(e){loadError=e}break;default:throw new Error(`Unsupported architecture on Windows: ${arch}`)}break;case"darwin":switch(arch){case"x64":localFileExisted=existsSync(join(__dirname,"blake.darwin-x64.node"));try{localFileExisted?nativeBinding=require("./blake.darwin-x64.node"):nativeBinding=require("@napi-rs/blake-hash-darwin-x64")}catch(e){loadError=e}break;case"arm64":localFileExisted=existsSync(join(__dirname,"blake.darwin-arm64.node"));try{localFileExisted?nativeBinding=require("./blake.darwin-arm64.node"):nativeBinding=require("@napi-rs/blake-hash-darwin-arm64")}catch(e){loadError=e}break;default:throw new Error(`Unsupported architecture on macOS: ${arch}`)}break;case"freebsd":if(arch!=="x64")throw new Error(`Unsupported architecture on FreeBSD: ${arch}`);localFileExisted=existsSync(join(__dirname,"blake.freebsd-x64.node"));try{localFileExisted?nativeBinding=require("./blake.freebsd-x64.node"):nativeBinding=require("@napi-rs/blake-hash-freebsd-x64")}catch(e){loadError=e}break;case"linux":switch(arch){case"x64":if(isMusl=readFileSync("/usr/bin/ldd","utf8").includes("musl"),isMusl){localFileExisted=existsSync(join(__dirname,"blake.linux-x64-musl.node"));try{localFileExisted?nativeBinding=require("./blake.linux-x64-musl.node"):nativeBinding=require("@napi-rs/blake-hash-linux-x64-musl")}catch(e){loadError=e}}else{localFileExisted=existsSync(join(__dirname,"blake.linux-x64-gnu.node"));try{localFileExisted?nativeBinding=require("./blake.linux-x64-gnu.node"):nativeBinding=require("@napi-rs/blake-hash-linux-x64-gnu")}catch(e){loadError=e}}break;case"arm64":if(isMusl=readFileSync("/usr/bin/ldd","utf8").includes("musl"),isMusl){localFileExisted=existsSync(join(__dirname,"blake.linux-arm64-musl.node"));try{localFileExisted?nativeBinding=require("./blake.linux-arm64-musl.node"):nativeBinding=require("@napi-rs/blake-hash-linux-arm64-musl")}catch(e){loadError=e}}else{localFileExisted=existsSync(join(__dirname,"blake.linux-arm64-gnu.node"));try{localFileExisted?nativeBinding=require("./blake.linux-arm64-gnu.node"):nativeBinding=require("@napi-rs/blake-hash-linux-arm64-gnu")}catch(e){loadError=e}}break;case"arm":localFileExisted=existsSync(join(__dirname,"blake.linux-arm-gnueabihf.node"));try{localFileExisted?nativeBinding=require("./blake.linux-arm-gnueabihf.node"):nativeBinding=require("@napi-rs/blake-hash-linux-arm-gnueabihf")}catch(e){loadError=e}break;default:throw new Error(`Unsupported architecture on Linux: ${arch}`)}break;default:throw new Error(`Unsupported OS: ${platform}, architecture: ${arch}`)}if(!nativeBinding)throw loadError||new Error("Failed to load native binding");const{Blake2BParam,Blake2SParam,Blake2BpParam,Blake2SpParam,Blake2BHasher,Blake2BpHasher,Blake2SHasher,Blake2SpHasher,Blake3Hasher,blake2b,blake2bp,blake2s,blake2sp,blake3}=nativeBinding;module.exports.Blake2BParam=Blake2BParam,module.exports.Blake2SParam=Blake2SParam,module.exports.Blake2BpParam=Blake2BpParam,module.exports.Blake2SpParam=Blake2SpParam,module.exports.Blake2BHasher=Blake2BHasher,module.exports.Blake2BpHasher=Blake2BpHasher,module.exports.Blake2SHasher=Blake2SHasher,module.exports.Blake2SpHasher=Blake2SpHasher,module.exports.Blake3Hasher=Blake3Hasher,module.exports.blake2b=blake2b,module.exports.blake2bp=blake2bp,module.exports.blake2s=blake2s,module.exports.blake2sp=blake2sp,module.exports.blake3=blake3; |
{ | ||
"name": "@napi-rs/blake-hash", | ||
"version": "1.0.0", | ||
"version": "1.1.0", | ||
"main": "index.js", | ||
@@ -22,5 +22,9 @@ "types": "index.d.ts", | ||
}, | ||
"files": [ | ||
"index.js", | ||
"index.d.ts" | ||
], | ||
"license": "MIT", | ||
"devDependencies": { | ||
"@napi-rs/cli": "^2.0.0-alpha.3", | ||
"@napi-rs/cli": "^2.0.0-alpha.4", | ||
"@node-rs/deno-lint": "^1.10.3", | ||
@@ -32,3 +36,4 @@ "@swc-node/register": "^1.3.7", | ||
"blake2": "^4.0.2", | ||
"blake3": "^2.1.4" | ||
"blake3": "^2.1.4", | ||
"esbuild": "^0.13.13" | ||
}, | ||
@@ -54,3 +59,3 @@ "engines": { | ||
"lint": "denolint .", | ||
"prepublishOnly": "napi prepublish -t npm", | ||
"prepublishOnly": "napi prepublish -t npm && esbuild --minify --outfile=index.js --allow-overwrite index.js", | ||
"version": "napi version", | ||
@@ -64,15 +69,15 @@ "test": "ava" | ||
"optionalDependencies": { | ||
"@napi-rs/blake-hash-win32-x64-msvc": "1.0.0", | ||
"@napi-rs/blake-hash-darwin-x64": "1.0.0", | ||
"@napi-rs/blake-hash-linux-x64-gnu": "1.0.0", | ||
"@napi-rs/blake-hash-darwin-arm64": "1.0.0", | ||
"@napi-rs/blake-hash-android-arm64": "1.0.0", | ||
"@napi-rs/blake-hash-linux-arm64-gnu": "1.0.0", | ||
"@napi-rs/blake-hash-linux-arm64-musl": "1.0.0", | ||
"@napi-rs/blake-hash-win32-arm64-msvc": "1.0.0", | ||
"@napi-rs/blake-hash-linux-arm-gnueabihf": "1.0.0", | ||
"@napi-rs/blake-hash-linux-x64-musl": "1.0.0", | ||
"@napi-rs/blake-hash-freebsd-x64": "1.0.0", | ||
"@napi-rs/blake-hash-win32-ia32-msvc": "1.0.0" | ||
"@napi-rs/blake-hash-win32-x64-msvc": "1.1.0", | ||
"@napi-rs/blake-hash-darwin-x64": "1.1.0", | ||
"@napi-rs/blake-hash-linux-x64-gnu": "1.1.0", | ||
"@napi-rs/blake-hash-darwin-arm64": "1.1.0", | ||
"@napi-rs/blake-hash-android-arm64": "1.1.0", | ||
"@napi-rs/blake-hash-linux-arm64-gnu": "1.1.0", | ||
"@napi-rs/blake-hash-linux-arm64-musl": "1.1.0", | ||
"@napi-rs/blake-hash-win32-arm64-msvc": "1.1.0", | ||
"@napi-rs/blake-hash-linux-arm-gnueabihf": "1.1.0", | ||
"@napi-rs/blake-hash-linux-x64-musl": "1.1.0", | ||
"@napi-rs/blake-hash-freebsd-x64": "1.1.0", | ||
"@napi-rs/blake-hash-win32-ia32-msvc": "1.1.0" | ||
} | ||
} |
Major refactor
Supply chain riskPackage has recently undergone a major refactor. It may be unstable or indicate significant internal changes. Use caution when updating to versions that include significant changes.
Found 1 instance in 1 package
Filesystem access
Supply chain riskAccesses the file system, and could potentially read sensitive data.
Found 1 instance in 1 package
Minified code
QualityThis package contains minified code. This may be harmless in some cases where minified code is included in packaged libraries, however packages on npm should not minify code.
Found 1 instance in 1 package
Filesystem access
Supply chain riskAccesses the file system, and could potentially read sensitive data.
Found 1 instance in 1 package
2
11997
9
5
95
2
1