liquidjs-lib
Advanced tools
Comparing version 5.2.0 to 5.2.1
{ | ||
"name": "liquidjs-lib", | ||
"version": "5.2.0", | ||
"version": "5.2.1", | ||
"description": "Client-side Liquid JavaScript library", | ||
@@ -5,0 +5,0 @@ "main": "./src/index.js", |
@@ -172,27 +172,25 @@ 'use strict'; | ||
exports.toOutputScript = toOutputScript; | ||
function isNetwork(network, address) { | ||
if (address.startsWith(network.blech32) || address.startsWith(network.bech32)) | ||
return true; | ||
try { | ||
const payload = bs58check_1.default.decode(address); | ||
const prefix = payload.readUInt8(0); | ||
if ( | ||
prefix === network.confidentialPrefix || | ||
prefix === network.pubKeyHash || | ||
prefix === network.scriptHash | ||
) | ||
return true; | ||
} catch (_a) { | ||
return false; | ||
} | ||
return false; | ||
} | ||
// determines the network of a given address | ||
function getNetwork(address) { | ||
if ( | ||
address.startsWith(networks.liquid.blech32) || | ||
address.startsWith(networks.liquid.bech32) | ||
) | ||
return networks.liquid; | ||
if ( | ||
address.startsWith(networks.regtest.blech32) || | ||
address.startsWith(networks.regtest.bech32) | ||
) | ||
return networks.regtest; | ||
const payload = bs58check_1.default.decode(address); | ||
const prefix = payload.readUInt8(0); | ||
if ( | ||
prefix === networks.liquid.confidentialPrefix || | ||
prefix === networks.liquid.pubKeyHash || | ||
prefix === networks.liquid.scriptHash | ||
) | ||
return networks.liquid; | ||
if ( | ||
prefix === networks.regtest.confidentialPrefix || | ||
prefix === networks.regtest.pubKeyHash || | ||
prefix === networks.regtest.scriptHash | ||
) | ||
return networks.regtest; | ||
const allNetworks = [networks.liquid, networks.regtest, networks.testnet]; | ||
for (const network of allNetworks) { | ||
if (isNetwork(network, address)) return network; | ||
} | ||
throw new Error(address + ' has an invalid prefix'); | ||
@@ -199,0 +197,0 @@ } |
@@ -96,3 +96,3 @@ 'use strict'; | ||
if (!network) throw new Error('Unknown network version'); | ||
// otherwise, assume a network object (or default to bitcoin) | ||
// otherwise, assume a network object (or default to liquid) | ||
} else { | ||
@@ -99,0 +99,0 @@ network = network || NETWORKS.liquid; |
@@ -31,1 +31,9 @@ 'use strict'; | ||
}; | ||
exports.testnet = Object.assign({}, exports.regtest, { | ||
bech32: 'tex', | ||
blech32: 'tlq', | ||
pubKeyHash: 36, | ||
scriptHash: 19, | ||
confidentialPrefix: 23, | ||
assetHash: '144c654344aa716d6f3abcc1ca90e5641e4e2a7f633bc09fe3baf64585819a49', | ||
}); |
@@ -118,2 +118,3 @@ 'use strict'; | ||
if (!o.blindkey) return; | ||
if (!o.network) return; | ||
const res = baddress.fromBech32(o.address); | ||
@@ -120,0 +121,0 @@ const data = Buffer.concat([ |
@@ -18,2 +18,3 @@ export interface Network { | ||
export declare const regtest: Network; | ||
export declare const testnet: Network; | ||
export {}; |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
265709
99
7356