diff --git a/js/bns-register.js b/js/bns-register.js index d0d2b7e..9d3ba59 100644 --- a/js/bns-register.js +++ b/js/bns-register.js @@ -1,7 +1,7 @@ -import{generateBip39Mnemonic as Zn,deriveSeedFromBip39Mnemonic as We,deriveHdPrivateNodeFromSeed as to,deriveHdPath as eo,secp256k1 as Ge,hash160 as no,encodeCashAddress as Bs,lockingBytecodeToCashAddress as oo,cashAddressToLockingBytecode as Is,binToHex as so,hexToBin as Ps,utf8ToBin as ze,binToBase64 as te,base64ToBin as ee}from"@bitauth/libauth";var Tt={chipnet:{id:"chipnet",label:"chipnet",prefix:"bchtest",beacon:"bchtest:qp8njaa9a3ahg7259s5qajnce526n0rttsq8qwx4jl",beaconScripthash:"e1cdbba719436f49acb4bf245b44df875c6d6b405eda46a9d3e736d138102f3b",tldBeacon:"bchtest:qzc4c76vtw9nd49g6x8nmvc0jz62uvk4dc7hmpmerh",tldBeaconScripthash:"c85db10e106606273422b2733b2a6fb8b35a4d0e7dbfb20cf59bdb0833c008b8",electrum:[{url:"wss://silentmode.st/electrum",ip:"195.184.247.106"},{url:"wss://coinspectrum.duckdns.org:50011",ip:"195.184.247.106"},{url:"wss://chipnet.bch.ninja:50004",ip:"135.148.236.244"},{url:"wss://chipnet.imaginary.cash:50004",ip:"66.29.152.199"},{url:"wss://tbch4.loping.net:62002",ip:"183.89.202.207"}],beaconOnly:/silentmode\.st\/electrum|coinspectrum\.duckdns\.org:50011/,electrumListName:"electrum.bch",rootTldName:"tlds.bch",bootstrapTlds:["bch"],startHeight:2e5,hostingBucket:"bns",nameListUrl:"https://dl.silentmode.st/bns-name-snapshot.json",nameListMirrorUrl:"https://navigate.st/bns/silentmode.bch/bns-name-snapshot.json",cdnIndexUrl:"https://dl.silentmode.st/bns-name-index.json",nostrTags:{names:"bns-name-list",tlds:"bns-tld-list"},explorerTx:"https://chipnet.imaginary.cash/tx/",faucets:[{name:"tbch.googol.cash",url:"https://tbch.googol.cash/"},{name:"chipnet.bch.ninja faucet",url:"https://chipnet.bch.ninja/faucet"}],operatorAddress:"bchtest:qzew3dqcsj0guwe5y3uxf9q2xs5ajgy9lca4z093cu",accountPath:"m/44'/145'/0'",bchnRpcPort:48332,blocklists:[{name:"sirius-blocklist.x",beacon:"bchtest:qrrnwvuasq5fy63mdvp3umx5qfavtu7mnq950rdssw",scripthash:"fa14c5fd7a22bd1856b44168823a1ab3ff50961c917dafbcba749aeaa7b26646"}]},mainnet:{id:"mainnet",label:"mainnet",prefix:"bitcoincash",beacon:null,beaconScripthash:null,tldBeacon:null,tldBeaconScripthash:null,electrum:[{url:"wss://bch.imaginary.cash:50004",ip:"67.223.119.97"},{url:"wss://electrum.imaginary.cash:50004",ip:"15.204.113.162"},{url:"wss://electroncash.dk:50004",ip:"87.63.200.138"},{url:"wss://bch.loping.net:50004",ip:"183.89.202.207"},{url:"wss://bch.soul-dev.com:50004",ip:"174.141.196.204"},{url:"wss://cashnode.bch.ninja:50004",ip:"135.148.236.246"}],beaconOnly:/(?!)/,electrumListName:"electrum.bch",rootTldName:"tlds.bch",bootstrapTlds:["bch"],startHeight:null,hostingBucket:"bns-mainnet",nameListUrl:"https://s3.silentmode.st:8600/bns-mainnet/name-list.json",cdnIndexUrl:"https://dl.silentmode.st/bns-mainnet-name-index.json",nostrTags:{names:"bns-mainnet-name-list",tlds:"bns-mainnet-tld-list"},explorerTx:"https://blockchair.com/bitcoin-cash/transaction/",faucets:[],operatorAddress:null,accountPath:"m/44'/145'/0'",bchnRpcPort:8332,blocklists:[]}},Le="chipnet";function Pn(){let t=typeof globalThis<"u"?globalThis.BNS_NETWORK:null,e=typeof process<"u"&&process.env?process.env.BNS_NETWORK:null;return String(t||e||Le).trim().toLowerCase()}function Et(t){if(t&&typeof t=="object")return t;let e=t||Pn(),n=Tt[e];if(!n)throw new Error(`unknown network "${e}" (known: ${Object.keys(Tt).join(", ")})`);return n}var E=Et();function zt(t=E){let e=Et(t);if(!e.beaconScripthash||!e.tldBeaconScripthash)throw new Error(`${e.label}: beacon addresses are not pinned yet (see ROADMAP-MAINNET.md \xA76)`);return e}var ws=E.beacon,xs=E.beaconScripthash,bs=E.tldBeacon,ks=E.tldBeaconScripthash,Ss=E.electrum,Ts=Tt.chipnet.electrum,Es=E.electrumListName,Ae="BNS1";var De="bch",Nn=/^[a-z0-9-]{1,32}$/,Ce=/^[a-z0-9-]{1,16}$/,Ue=/^[a-z0-9-]{1,32}(\.[a-z0-9-]{1,16})?$/;function Fe(t){return t.includes(".")?t:t+"."+De}var $e=t=>{let e=new Uint8Array(t.length/2);for(let n=0;n[...new TextEncoder().encode(t)].map(e=>e.toString(16).padStart(2,"0")).join("");function Rn(t){let n=String(t).toLowerCase().trim().replace(/^[a-z]+:\/\//,"").split("/")[0].replace(/\.$/,"").split(".").filter(Boolean);if(n.length===0)throw new Error(`invalid name "${t}"`);let o,s;if(n.length===1?(o=n[0],s=De):(s=n[n.length-1],o=n[n.length-2]),!Nn.test(o)||!Ce.test(s))throw new Error(`invalid name "${t}" (allowed: