From c6dd41e2271fa4c1930eee43d84b0be9f6f47d44 Mon Sep 17 00:00:00 2001 From: Kevin Mok Date: Tue, 26 Apr 2022 18:10:21 -0400 Subject: [PATCH] Owner mint CLI --- .gitignore | 2 + index.js | 6 +- mint-nft.js | 47 +++ package-lock.json | 849 ++++++++++++++++++++++++++++++++++++++++++++++ package.json | 6 +- 5 files changed, 906 insertions(+), 4 deletions(-) create mode 100644 mint-nft.js diff --git a/.gitignore b/.gitignore index c2658d7..7f25fe7 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,3 @@ node_modules/ + +.env diff --git a/index.js b/index.js index 6acb6e8..35bd76f 100644 --- a/index.js +++ b/index.js @@ -54,6 +54,6 @@ emitter.on('txPool', transaction => { // }) // catch every other event that occurs and log it -emitter.on('all', transaction => { - console.log(`Transaction event: ${transaction.eventCode}`) -}) +// emitter.on('all', transaction => { + // console.log(`Transaction event: ${transaction.eventCode}`) +// }) diff --git a/mint-nft.js b/mint-nft.js new file mode 100644 index 0000000..3d02e70 --- /dev/null +++ b/mint-nft.js @@ -0,0 +1,47 @@ +// require('dotenv').config(); +import dotenv from 'dotenv' +dotenv.config() +const API_URL = process.env.API_URL; +// const { createAlchemyWeb3 } = require("@alch/alchemy-web3"); +import { createAlchemyWeb3 } from "@alch/alchemy-web3" +const web3 = createAlchemyWeb3(API_URL); + +// const contract = require("../artifacts/contracts/MyNFT.sol/MyNFT.json"); +import contractABI from './MoonbirdPunks.json' assert { type: 'json' } +// console.log(JSON.stringify(contract.abi)); + +const contractAddress = "0x7d82a88Efb60Bb83B3f1665757c20D07E5C0f3ED"; +const nftContract = new web3.eth.Contract(contractABI.abi, contractAddress); + +async function mintOwnerNFT() { + const nonce = await web3.eth.getTransactionCount(process.env.PUBLIC_KEY, 'latest'); //get latest nonce + + //the transaction + const tx = { + 'from': process.env.PUBLIC_KEY, + 'to': contractAddress, + 'nonce': nonce, + 'gas': 100000, + 'maxPriorityFeePerGas': 1000000000, + 'data': nftContract.methods.ownerMint([process.env.PUBLIC_KEY], 1).encodeABI() + }; + + const signedTx = await web3.eth.accounts.signTransaction(tx, process.env.PRIVATE_KEY); + const transactionReceipt = await web3.eth.sendSignedTransaction(signedTx.rawTransaction); + + console.log(`Transaction receipt: ${JSON.stringify(transactionReceipt)}`); +} + +// const fs = require('fs') +// const base64 = require('base-64'); + +// fs.readFile('scripts/geo.json', 'utf8' , (err, data) => { + // if (err) { + // console.error(err) + // return + // } + // // console.log("data:application/json;base64," + base64.encode(data)) + // // mintNFT("data:application/json;base64," + base64.encode(data)) +// }) + +mintOwnerNFT() diff --git a/package-lock.json b/package-lock.json index d80eb65..428c856 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,8 +9,399 @@ "version": "1.0.0", "license": "ISC", "dependencies": { + "@alch/alchemy-web3": "^1.4.1", "bnc-sdk": "^4.2.0", "web3": "^1.7.3" + }, + "devDependencies": { + "dotenv": "^16.0.0" + } + }, + "node_modules/@alch/alchemy-web3": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/@alch/alchemy-web3/-/alchemy-web3-1.4.1.tgz", + "integrity": "sha512-xu1TLU8XxWxmdFfRZalmkGcwmN0OcuA/UoCB9WZvnNQaWqCUSRpMqe0JFidfLv2+ExToa/FeSwg85qz1gLMXjw==", + "dependencies": { + "@types/web3": "^1.2.2", + "assert-never": "^1.2.0", + "eventemitter3": "^3.1.2", + "fetch-ponyfill": "^6.0.2", + "sturdy-websocket": "^0.2.1", + "tslib": "^2.1.0", + "urijs": "^1.19.7", + "web3": "1.7.1", + "web3-core": "1.7.1", + "web3-core-helpers": "1.7.1", + "web3-core-method": "1.7.1", + "web3-core-subscriptions": "1.7.1", + "web3-eth": "1.7.1", + "web3-eth-abi": "1.7.1", + "web3-utils": "1.7.1", + "websocket": "^1.0.28" + } + }, + "node_modules/@alch/alchemy-web3/node_modules/eth-lib": { + "version": "0.2.8", + "resolved": "https://registry.npmjs.org/eth-lib/-/eth-lib-0.2.8.tgz", + "integrity": "sha512-ArJ7x1WcWOlSpzdoTBX8vkwlkSQ85CjjifSZtV4co64vWxSV8geWfPI9x4SVYu3DSxnX4yWFVTtGL+j9DUFLNw==", + "dependencies": { + "bn.js": "^4.11.6", + "elliptic": "^6.4.0", + "xhr-request-promise": "^0.1.2" + } + }, + "node_modules/@alch/alchemy-web3/node_modules/eventemitter3": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-3.1.2.tgz", + "integrity": "sha512-tvtQIeLVHjDkJYnzf2dgVMxfuSGJeM/7UCG17TT4EumTfNtF+0nebF/4zWOIkCreAbtNqhGEboB6BWrwqNaw4Q==" + }, + "node_modules/@alch/alchemy-web3/node_modules/sturdy-websocket": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/sturdy-websocket/-/sturdy-websocket-0.2.1.tgz", + "integrity": "sha512-NnzSOEKyv4I83qbuKw9ROtJrrT6Z/Xt7I0HiP/e6H6GnpeTDvzwGIGeJ8slai+VwODSHQDooW2CAilJwT9SpRg==" + }, + "node_modules/@alch/alchemy-web3/node_modules/tslib": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz", + "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==" + }, + "node_modules/@alch/alchemy-web3/node_modules/uuid": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz", + "integrity": "sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==", + "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", + "bin": { + "uuid": "bin/uuid" + } + }, + "node_modules/@alch/alchemy-web3/node_modules/web3": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3/-/web3-1.7.1.tgz", + "integrity": "sha512-RKVdyZ5FuVEykj62C1o2tc0teJciSOh61jpVB9yb344dBHO3ZV4XPPP24s/PPqIMXmVFN00g2GD9M/v1SoHO/A==", + "hasInstallScript": true, + "dependencies": { + "web3-bzz": "1.7.1", + "web3-core": "1.7.1", + "web3-eth": "1.7.1", + "web3-eth-personal": "1.7.1", + "web3-net": "1.7.1", + "web3-shh": "1.7.1", + "web3-utils": "1.7.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@alch/alchemy-web3/node_modules/web3-bzz": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-bzz/-/web3-bzz-1.7.1.tgz", + "integrity": "sha512-sVeUSINx4a4pfdnT+3ahdRdpDPvZDf4ZT/eBF5XtqGWq1mhGTl8XaQAk15zafKVm6Onq28vN8abgB/l+TrG8kA==", + "hasInstallScript": true, + "dependencies": { + "@types/node": "^12.12.6", + "got": "9.6.0", + "swarm-js": "^0.1.40" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@alch/alchemy-web3/node_modules/web3-core": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-core/-/web3-core-1.7.1.tgz", + "integrity": "sha512-HOyDPj+4cNyeNPwgSeUkhtS0F+Pxc2obcm4oRYPW5ku6jnTO34pjaij0us+zoY3QEusR8FfAKVK1kFPZnS7Dzw==", + "dependencies": { + "@types/bn.js": "^4.11.5", + "@types/node": "^12.12.6", + "bignumber.js": "^9.0.0", + "web3-core-helpers": "1.7.1", + "web3-core-method": "1.7.1", + "web3-core-requestmanager": "1.7.1", + "web3-utils": "1.7.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@alch/alchemy-web3/node_modules/web3-core-helpers": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-core-helpers/-/web3-core-helpers-1.7.1.tgz", + "integrity": "sha512-xn7Sx+s4CyukOJdlW8bBBDnUCWndr+OCJAlUe/dN2wXiyaGRiCWRhuQZrFjbxLeBt1fYFH7uWyYHhYU6muOHgw==", + "dependencies": { + "web3-eth-iban": "1.7.1", + "web3-utils": "1.7.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@alch/alchemy-web3/node_modules/web3-core-method": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-core-method/-/web3-core-method-1.7.1.tgz", + "integrity": "sha512-383wu5FMcEphBFl5jCjk502JnEg3ugHj7MQrsX7DY76pg5N5/dEzxeEMIJFCN6kr5Iq32NINOG3VuJIyjxpsEg==", + "dependencies": { + "@ethersproject/transactions": "^5.0.0-beta.135", + "web3-core-helpers": "1.7.1", + "web3-core-promievent": "1.7.1", + "web3-core-subscriptions": "1.7.1", + "web3-utils": "1.7.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@alch/alchemy-web3/node_modules/web3-core-promievent": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-core-promievent/-/web3-core-promievent-1.7.1.tgz", + "integrity": "sha512-Vd+CVnpPejrnevIdxhCkzMEywqgVbhHk/AmXXceYpmwA6sX41c5a65TqXv1i3FWRJAz/dW7oKz9NAzRIBAO/kA==", + "dependencies": { + "eventemitter3": "4.0.4" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@alch/alchemy-web3/node_modules/web3-core-promievent/node_modules/eventemitter3": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.4.tgz", + "integrity": "sha512-rlaVLnVxtxvoyLsQQFBx53YmXHDxRIzzTLbdfxqi4yocpSjAxXwkU0cScM5JgSKMqEhrZpnvQ2D9gjylR0AimQ==" + }, + "node_modules/@alch/alchemy-web3/node_modules/web3-core-requestmanager": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-core-requestmanager/-/web3-core-requestmanager-1.7.1.tgz", + "integrity": "sha512-/EHVTiMShpZKiq0Jka0Vgguxi3vxq1DAHKxg42miqHdUsz4/cDWay2wGALDR2x3ofDB9kqp7pb66HsvQImQeag==", + "dependencies": { + "util": "^0.12.0", + "web3-core-helpers": "1.7.1", + "web3-providers-http": "1.7.1", + "web3-providers-ipc": "1.7.1", + "web3-providers-ws": "1.7.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@alch/alchemy-web3/node_modules/web3-core-subscriptions": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-core-subscriptions/-/web3-core-subscriptions-1.7.1.tgz", + "integrity": "sha512-NZBsvSe4J+Wt16xCf4KEtBbxA9TOwSVr8KWfUQ0tC2KMdDYdzNswl0Q9P58xaVuNlJ3/BH+uDFZJJ5E61BSA1Q==", + "dependencies": { + "eventemitter3": "4.0.4", + "web3-core-helpers": "1.7.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@alch/alchemy-web3/node_modules/web3-core-subscriptions/node_modules/eventemitter3": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.4.tgz", + "integrity": "sha512-rlaVLnVxtxvoyLsQQFBx53YmXHDxRIzzTLbdfxqi4yocpSjAxXwkU0cScM5JgSKMqEhrZpnvQ2D9gjylR0AimQ==" + }, + "node_modules/@alch/alchemy-web3/node_modules/web3-eth": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-eth/-/web3-eth-1.7.1.tgz", + "integrity": "sha512-Uz3gO4CjTJ+hMyJZAd2eiv2Ur1uurpN7sTMATWKXYR/SgG+SZgncnk/9d8t23hyu4lyi2GiVL1AqVqptpRElxg==", + "dependencies": { + "web3-core": "1.7.1", + "web3-core-helpers": "1.7.1", + "web3-core-method": "1.7.1", + "web3-core-subscriptions": "1.7.1", + "web3-eth-abi": "1.7.1", + "web3-eth-accounts": "1.7.1", + "web3-eth-contract": "1.7.1", + "web3-eth-ens": "1.7.1", + "web3-eth-iban": "1.7.1", + "web3-eth-personal": "1.7.1", + "web3-net": "1.7.1", + "web3-utils": "1.7.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@alch/alchemy-web3/node_modules/web3-eth-abi": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-eth-abi/-/web3-eth-abi-1.7.1.tgz", + "integrity": "sha512-8BVBOoFX1oheXk+t+uERBibDaVZ5dxdcefpbFTWcBs7cdm0tP8CD1ZTCLi5Xo+1bolVHNH2dMSf/nEAssq5pUA==", + "dependencies": { + "@ethersproject/abi": "5.0.7", + "web3-utils": "1.7.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@alch/alchemy-web3/node_modules/web3-eth-accounts": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-eth-accounts/-/web3-eth-accounts-1.7.1.tgz", + "integrity": "sha512-3xGQ2bkTQc7LFoqGWxp5cQDrKndlX05s7m0rAFVoyZZODMqrdSGjMPMqmWqHzJRUswNEMc+oelqSnGBubqhguQ==", + "dependencies": { + "@ethereumjs/common": "^2.5.0", + "@ethereumjs/tx": "^3.3.2", + "crypto-browserify": "3.12.0", + "eth-lib": "0.2.8", + "ethereumjs-util": "^7.0.10", + "scrypt-js": "^3.0.1", + "uuid": "3.3.2", + "web3-core": "1.7.1", + "web3-core-helpers": "1.7.1", + "web3-core-method": "1.7.1", + "web3-utils": "1.7.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@alch/alchemy-web3/node_modules/web3-eth-contract": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-eth-contract/-/web3-eth-contract-1.7.1.tgz", + "integrity": "sha512-HpnbkPYkVK3lOyos2SaUjCleKfbF0SP3yjw7l551rAAi5sIz/vwlEzdPWd0IHL7ouxXbO0tDn7jzWBRcD3sTbA==", + "dependencies": { + "@types/bn.js": "^4.11.5", + "web3-core": "1.7.1", + "web3-core-helpers": "1.7.1", + "web3-core-method": "1.7.1", + "web3-core-promievent": "1.7.1", + "web3-core-subscriptions": "1.7.1", + "web3-eth-abi": "1.7.1", + "web3-utils": "1.7.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@alch/alchemy-web3/node_modules/web3-eth-ens": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-eth-ens/-/web3-eth-ens-1.7.1.tgz", + "integrity": "sha512-DVCF76i9wM93DrPQwLrYiCw/UzxFuofBsuxTVugrnbm0SzucajLLNftp3ITK0c4/lV3x9oo5ER/wD6RRMHQnvw==", + "dependencies": { + "content-hash": "^2.5.2", + "eth-ens-namehash": "2.0.8", + "web3-core": "1.7.1", + "web3-core-helpers": "1.7.1", + "web3-core-promievent": "1.7.1", + "web3-eth-abi": "1.7.1", + "web3-eth-contract": "1.7.1", + "web3-utils": "1.7.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@alch/alchemy-web3/node_modules/web3-eth-iban": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-eth-iban/-/web3-eth-iban-1.7.1.tgz", + "integrity": "sha512-XG4I3QXuKB/udRwZdNEhdYdGKjkhfb/uH477oFVMLBqNimU/Cw8yXUI5qwFKvBHM+hMQWfzPDuSDEDKC2uuiMg==", + "dependencies": { + "bn.js": "^4.11.9", + "web3-utils": "1.7.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@alch/alchemy-web3/node_modules/web3-eth-personal": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-eth-personal/-/web3-eth-personal-1.7.1.tgz", + "integrity": "sha512-02H6nFBNfNmFjMGZL6xcDi0r7tUhxrUP91FTFdoLyR94eIJDadPp4rpXfG7MVES873i1PReh4ep5pSCHbc3+Pg==", + "dependencies": { + "@types/node": "^12.12.6", + "web3-core": "1.7.1", + "web3-core-helpers": "1.7.1", + "web3-core-method": "1.7.1", + "web3-net": "1.7.1", + "web3-utils": "1.7.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@alch/alchemy-web3/node_modules/web3-net": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-net/-/web3-net-1.7.1.tgz", + "integrity": "sha512-8yPNp2gvjInWnU7DCoj4pIPNhxzUjrxKlODsyyXF8j0q3Z2VZuQp+c63gL++r2Prg4fS8t141/HcJw4aMu5sVA==", + "dependencies": { + "web3-core": "1.7.1", + "web3-core-method": "1.7.1", + "web3-utils": "1.7.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@alch/alchemy-web3/node_modules/web3-providers-http": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-providers-http/-/web3-providers-http-1.7.1.tgz", + "integrity": "sha512-dmiO6G4dgAa3yv+2VD5TduKNckgfR97VI9YKXVleWdcpBoKXe2jofhdvtafd42fpIoaKiYsErxQNcOC5gI/7Vg==", + "dependencies": { + "web3-core-helpers": "1.7.1", + "xhr2-cookies": "1.1.0" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@alch/alchemy-web3/node_modules/web3-providers-ipc": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-providers-ipc/-/web3-providers-ipc-1.7.1.tgz", + "integrity": "sha512-uNgLIFynwnd5M9ZC0lBvRQU5iLtU75hgaPpc7ZYYR+kjSk2jr2BkEAQhFVJ8dlqisrVmmqoAPXOEU0flYZZgNQ==", + "dependencies": { + "oboe": "2.1.5", + "web3-core-helpers": "1.7.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@alch/alchemy-web3/node_modules/web3-providers-ws": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-providers-ws/-/web3-providers-ws-1.7.1.tgz", + "integrity": "sha512-Uj0n5hdrh0ESkMnTQBsEUS2u6Unqdc7Pe4Zl+iZFb7Yn9cIGsPJBl7/YOP4137EtD5ueXAv+MKwzcelpVhFiFg==", + "dependencies": { + "eventemitter3": "4.0.4", + "web3-core-helpers": "1.7.1", + "websocket": "^1.0.32" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@alch/alchemy-web3/node_modules/web3-providers-ws/node_modules/eventemitter3": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.4.tgz", + "integrity": "sha512-rlaVLnVxtxvoyLsQQFBx53YmXHDxRIzzTLbdfxqi4yocpSjAxXwkU0cScM5JgSKMqEhrZpnvQ2D9gjylR0AimQ==" + }, + "node_modules/@alch/alchemy-web3/node_modules/web3-shh": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-shh/-/web3-shh-1.7.1.tgz", + "integrity": "sha512-NO+jpEjo8kYX6c7GiaAm57Sx93PLYkWYUCWlZmUOW7URdUcux8VVluvTWklGPvdM9H1WfDrol91DjuSW+ykyqg==", + "hasInstallScript": true, + "dependencies": { + "web3-core": "1.7.1", + "web3-core-method": "1.7.1", + "web3-core-subscriptions": "1.7.1", + "web3-net": "1.7.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@alch/alchemy-web3/node_modules/web3-utils": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-utils/-/web3-utils-1.7.1.tgz", + "integrity": "sha512-fef0EsqMGJUgiHPdX+KN9okVWshbIumyJPmR+btnD1HgvoXijKEkuKBv0OmUqjbeqmLKP2/N9EiXKJel5+E1Dw==", + "dependencies": { + "bn.js": "^4.11.9", + "ethereum-bloom-filters": "^1.0.6", + "ethereumjs-util": "^7.1.0", + "ethjs-unit": "0.1.6", + "number-to-bn": "1.7.0", + "randombytes": "^2.1.0", + "utf8": "3.0.0" + }, + "engines": { + "node": ">=8.0.0" } }, "node_modules/@ethereumjs/common": { @@ -442,6 +833,15 @@ "@types/node": "*" } }, + "node_modules/@types/web3": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/@types/web3/-/web3-1.2.2.tgz", + "integrity": "sha512-eFiYJKggNrOl0nsD+9cMh2MLk4zVBfXfGnVeRFbpiZzBE20eet4KLA3fXcjSuHaBn0RnQzwLAGdgzgzdet4C0A==", + "deprecated": "This is a stub types definition. web3 provides its own type definitions, so you do not need this installed.", + "dependencies": { + "web3": "*" + } + }, "node_modules/accepts": { "version": "1.3.8", "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", @@ -493,6 +893,11 @@ "safer-buffer": "^2.1.0" } }, + "node_modules/assert-never": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/assert-never/-/assert-never-1.2.1.tgz", + "integrity": "sha512-TaTivMB6pYI1kXwrFlEhLeGfOqoDNdTxjCdwRfFFkEA30Eu+k48W34nlok2EYWJfFFzqaEmichdNM7th6M5HNw==" + }, "node_modules/assert-plus": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", @@ -1144,6 +1549,15 @@ "resolved": "https://registry.npmjs.org/dom-walk/-/dom-walk-0.1.2.tgz", "integrity": "sha512-6QvTW9mrGeIegrFXdtQi9pk7O/nSK6lSdXW2eqUspN5LWD7UTji2Fqw5V2YLjBpHEoU9Xl/eUWNpDeZvoyOv2w==" }, + "node_modules/dotenv": { + "version": "16.0.0", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.0.0.tgz", + "integrity": "sha512-qD9WU0MPM4SWLPJy/r2Be+2WgQj8plChsyrCNQzW/0WjvcJQiKQJ9mH3ZgB3fxbUUxgc/11ZJ0Fi5KiimWGz2Q==", + "dev": true, + "engines": { + "node": ">=12" + } + }, "node_modules/duplexer3": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", @@ -1482,6 +1896,14 @@ "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==" }, + "node_modules/fetch-ponyfill": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/fetch-ponyfill/-/fetch-ponyfill-6.1.1.tgz", + "integrity": "sha512-rWLgTr5A44/XhvCQPYj0X9Tc+cjUaHofSM4lcwjc9MavD5lkjIhJ+h8JQlavPlTIgDpwhuRozaIykBvX9ItaSA==", + "dependencies": { + "node-fetch": "~2.6.0" + } + }, "node_modules/finalhandler": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", @@ -2457,6 +2879,25 @@ "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-2.0.2.tgz", "integrity": "sha512-Ntyt4AIXyaLIuMHF6IOoTakB3K+RWxwtsHNRxllEoA6vPwP9o4866g6YWDLUdnucilZhmkxiHwHr11gAENw+QA==" }, + "node_modules/node-fetch": { + "version": "2.6.7", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", + "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", + "dependencies": { + "whatwg-url": "^5.0.0" + }, + "engines": { + "node": "4.x || >=6.0.0" + }, + "peerDependencies": { + "encoding": "^0.1.0" + }, + "peerDependenciesMeta": { + "encoding": { + "optional": true + } + } + }, "node_modules/node-gyp-build": { "version": "4.4.0", "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.4.0.tgz", @@ -3268,6 +3709,11 @@ "node": ">=0.8" } }, + "node_modules/tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o=" + }, "node_modules/tslib": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", @@ -3357,6 +3803,11 @@ "punycode": "^2.1.0" } }, + "node_modules/urijs": { + "version": "1.19.11", + "resolved": "https://registry.npmjs.org/urijs/-/urijs-1.19.11.tgz", + "integrity": "sha512-HXgFDgDommxn5/bIv0cnQZsPhHDA90NPHD6+c/v21U5+Sx5hoP8+dP9IZXBU1gIfvdRfhG8cel9QNPeionfcCQ==" + }, "node_modules/url-parse-lax": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz", @@ -3793,6 +4244,11 @@ "node": ">=8.0.0" } }, + "node_modules/webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE=" + }, "node_modules/websocket": { "version": "1.0.34", "resolved": "https://registry.npmjs.org/websocket/-/websocket-1.0.34.tgz", @@ -3809,6 +4265,15 @@ "node": ">=4.0.0" } }, + "node_modules/whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha1-lmRU6HZUYuN2RNNib2dCzotwll0=", + "dependencies": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" + } + }, "node_modules/which-boxed-primitive": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", @@ -3927,6 +4392,331 @@ } }, "dependencies": { + "@alch/alchemy-web3": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/@alch/alchemy-web3/-/alchemy-web3-1.4.1.tgz", + "integrity": "sha512-xu1TLU8XxWxmdFfRZalmkGcwmN0OcuA/UoCB9WZvnNQaWqCUSRpMqe0JFidfLv2+ExToa/FeSwg85qz1gLMXjw==", + "requires": { + "@types/web3": "^1.2.2", + "assert-never": "^1.2.0", + "eventemitter3": "^3.1.2", + "fetch-ponyfill": "^6.0.2", + "sturdy-websocket": "^0.2.1", + "tslib": "^2.1.0", + "urijs": "^1.19.7", + "web3": "1.7.1", + "web3-core": "1.7.1", + "web3-core-helpers": "1.7.1", + "web3-core-method": "1.7.1", + "web3-core-subscriptions": "1.7.1", + "web3-eth": "1.7.1", + "web3-eth-abi": "1.7.1", + "web3-utils": "1.7.1", + "websocket": "^1.0.28" + }, + "dependencies": { + "eth-lib": { + "version": "0.2.8", + "resolved": "https://registry.npmjs.org/eth-lib/-/eth-lib-0.2.8.tgz", + "integrity": "sha512-ArJ7x1WcWOlSpzdoTBX8vkwlkSQ85CjjifSZtV4co64vWxSV8geWfPI9x4SVYu3DSxnX4yWFVTtGL+j9DUFLNw==", + "requires": { + "bn.js": "^4.11.6", + "elliptic": "^6.4.0", + "xhr-request-promise": "^0.1.2" + } + }, + "eventemitter3": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-3.1.2.tgz", + "integrity": "sha512-tvtQIeLVHjDkJYnzf2dgVMxfuSGJeM/7UCG17TT4EumTfNtF+0nebF/4zWOIkCreAbtNqhGEboB6BWrwqNaw4Q==" + }, + "sturdy-websocket": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/sturdy-websocket/-/sturdy-websocket-0.2.1.tgz", + "integrity": "sha512-NnzSOEKyv4I83qbuKw9ROtJrrT6Z/Xt7I0HiP/e6H6GnpeTDvzwGIGeJ8slai+VwODSHQDooW2CAilJwT9SpRg==" + }, + "tslib": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz", + "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==" + }, + "uuid": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz", + "integrity": "sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==" + }, + "web3": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3/-/web3-1.7.1.tgz", + "integrity": "sha512-RKVdyZ5FuVEykj62C1o2tc0teJciSOh61jpVB9yb344dBHO3ZV4XPPP24s/PPqIMXmVFN00g2GD9M/v1SoHO/A==", + "requires": { + "web3-bzz": "1.7.1", + "web3-core": "1.7.1", + "web3-eth": "1.7.1", + "web3-eth-personal": "1.7.1", + "web3-net": "1.7.1", + "web3-shh": "1.7.1", + "web3-utils": "1.7.1" + } + }, + "web3-bzz": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-bzz/-/web3-bzz-1.7.1.tgz", + "integrity": "sha512-sVeUSINx4a4pfdnT+3ahdRdpDPvZDf4ZT/eBF5XtqGWq1mhGTl8XaQAk15zafKVm6Onq28vN8abgB/l+TrG8kA==", + "requires": { + "@types/node": "^12.12.6", + "got": "9.6.0", + "swarm-js": "^0.1.40" + } + }, + "web3-core": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-core/-/web3-core-1.7.1.tgz", + "integrity": "sha512-HOyDPj+4cNyeNPwgSeUkhtS0F+Pxc2obcm4oRYPW5ku6jnTO34pjaij0us+zoY3QEusR8FfAKVK1kFPZnS7Dzw==", + "requires": { + "@types/bn.js": "^4.11.5", + "@types/node": "^12.12.6", + "bignumber.js": "^9.0.0", + "web3-core-helpers": "1.7.1", + "web3-core-method": "1.7.1", + "web3-core-requestmanager": "1.7.1", + "web3-utils": "1.7.1" + } + }, + "web3-core-helpers": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-core-helpers/-/web3-core-helpers-1.7.1.tgz", + "integrity": "sha512-xn7Sx+s4CyukOJdlW8bBBDnUCWndr+OCJAlUe/dN2wXiyaGRiCWRhuQZrFjbxLeBt1fYFH7uWyYHhYU6muOHgw==", + "requires": { + "web3-eth-iban": "1.7.1", + "web3-utils": "1.7.1" + } + }, + "web3-core-method": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-core-method/-/web3-core-method-1.7.1.tgz", + "integrity": "sha512-383wu5FMcEphBFl5jCjk502JnEg3ugHj7MQrsX7DY76pg5N5/dEzxeEMIJFCN6kr5Iq32NINOG3VuJIyjxpsEg==", + "requires": { + "@ethersproject/transactions": "^5.0.0-beta.135", + "web3-core-helpers": "1.7.1", + "web3-core-promievent": "1.7.1", + "web3-core-subscriptions": "1.7.1", + "web3-utils": "1.7.1" + } + }, + "web3-core-promievent": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-core-promievent/-/web3-core-promievent-1.7.1.tgz", + "integrity": "sha512-Vd+CVnpPejrnevIdxhCkzMEywqgVbhHk/AmXXceYpmwA6sX41c5a65TqXv1i3FWRJAz/dW7oKz9NAzRIBAO/kA==", + "requires": { + "eventemitter3": "4.0.4" + }, + "dependencies": { + "eventemitter3": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.4.tgz", + "integrity": "sha512-rlaVLnVxtxvoyLsQQFBx53YmXHDxRIzzTLbdfxqi4yocpSjAxXwkU0cScM5JgSKMqEhrZpnvQ2D9gjylR0AimQ==" + } + } + }, + "web3-core-requestmanager": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-core-requestmanager/-/web3-core-requestmanager-1.7.1.tgz", + "integrity": "sha512-/EHVTiMShpZKiq0Jka0Vgguxi3vxq1DAHKxg42miqHdUsz4/cDWay2wGALDR2x3ofDB9kqp7pb66HsvQImQeag==", + "requires": { + "util": "^0.12.0", + "web3-core-helpers": "1.7.1", + "web3-providers-http": "1.7.1", + "web3-providers-ipc": "1.7.1", + "web3-providers-ws": "1.7.1" + } + }, + "web3-core-subscriptions": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-core-subscriptions/-/web3-core-subscriptions-1.7.1.tgz", + "integrity": "sha512-NZBsvSe4J+Wt16xCf4KEtBbxA9TOwSVr8KWfUQ0tC2KMdDYdzNswl0Q9P58xaVuNlJ3/BH+uDFZJJ5E61BSA1Q==", + "requires": { + "eventemitter3": "4.0.4", + "web3-core-helpers": "1.7.1" + }, + "dependencies": { + "eventemitter3": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.4.tgz", + "integrity": "sha512-rlaVLnVxtxvoyLsQQFBx53YmXHDxRIzzTLbdfxqi4yocpSjAxXwkU0cScM5JgSKMqEhrZpnvQ2D9gjylR0AimQ==" + } + } + }, + "web3-eth": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-eth/-/web3-eth-1.7.1.tgz", + "integrity": "sha512-Uz3gO4CjTJ+hMyJZAd2eiv2Ur1uurpN7sTMATWKXYR/SgG+SZgncnk/9d8t23hyu4lyi2GiVL1AqVqptpRElxg==", + "requires": { + "web3-core": "1.7.1", + "web3-core-helpers": "1.7.1", + "web3-core-method": "1.7.1", + "web3-core-subscriptions": "1.7.1", + "web3-eth-abi": "1.7.1", + "web3-eth-accounts": "1.7.1", + "web3-eth-contract": "1.7.1", + "web3-eth-ens": "1.7.1", + "web3-eth-iban": "1.7.1", + "web3-eth-personal": "1.7.1", + "web3-net": "1.7.1", + "web3-utils": "1.7.1" + } + }, + "web3-eth-abi": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-eth-abi/-/web3-eth-abi-1.7.1.tgz", + "integrity": "sha512-8BVBOoFX1oheXk+t+uERBibDaVZ5dxdcefpbFTWcBs7cdm0tP8CD1ZTCLi5Xo+1bolVHNH2dMSf/nEAssq5pUA==", + "requires": { + "@ethersproject/abi": "5.0.7", + "web3-utils": "1.7.1" + } + }, + "web3-eth-accounts": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-eth-accounts/-/web3-eth-accounts-1.7.1.tgz", + "integrity": "sha512-3xGQ2bkTQc7LFoqGWxp5cQDrKndlX05s7m0rAFVoyZZODMqrdSGjMPMqmWqHzJRUswNEMc+oelqSnGBubqhguQ==", + "requires": { + "@ethereumjs/common": "^2.5.0", + "@ethereumjs/tx": "^3.3.2", + "crypto-browserify": "3.12.0", + "eth-lib": "0.2.8", + "ethereumjs-util": "^7.0.10", + "scrypt-js": "^3.0.1", + "uuid": "3.3.2", + "web3-core": "1.7.1", + "web3-core-helpers": "1.7.1", + "web3-core-method": "1.7.1", + "web3-utils": "1.7.1" + } + }, + "web3-eth-contract": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-eth-contract/-/web3-eth-contract-1.7.1.tgz", + "integrity": "sha512-HpnbkPYkVK3lOyos2SaUjCleKfbF0SP3yjw7l551rAAi5sIz/vwlEzdPWd0IHL7ouxXbO0tDn7jzWBRcD3sTbA==", + "requires": { + "@types/bn.js": "^4.11.5", + "web3-core": "1.7.1", + "web3-core-helpers": "1.7.1", + "web3-core-method": "1.7.1", + "web3-core-promievent": "1.7.1", + "web3-core-subscriptions": "1.7.1", + "web3-eth-abi": "1.7.1", + "web3-utils": "1.7.1" + } + }, + "web3-eth-ens": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-eth-ens/-/web3-eth-ens-1.7.1.tgz", + "integrity": "sha512-DVCF76i9wM93DrPQwLrYiCw/UzxFuofBsuxTVugrnbm0SzucajLLNftp3ITK0c4/lV3x9oo5ER/wD6RRMHQnvw==", + "requires": { + "content-hash": "^2.5.2", + "eth-ens-namehash": "2.0.8", + "web3-core": "1.7.1", + "web3-core-helpers": "1.7.1", + "web3-core-promievent": "1.7.1", + "web3-eth-abi": "1.7.1", + "web3-eth-contract": "1.7.1", + "web3-utils": "1.7.1" + } + }, + "web3-eth-iban": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-eth-iban/-/web3-eth-iban-1.7.1.tgz", + "integrity": "sha512-XG4I3QXuKB/udRwZdNEhdYdGKjkhfb/uH477oFVMLBqNimU/Cw8yXUI5qwFKvBHM+hMQWfzPDuSDEDKC2uuiMg==", + "requires": { + "bn.js": "^4.11.9", + "web3-utils": "1.7.1" + } + }, + "web3-eth-personal": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-eth-personal/-/web3-eth-personal-1.7.1.tgz", + "integrity": "sha512-02H6nFBNfNmFjMGZL6xcDi0r7tUhxrUP91FTFdoLyR94eIJDadPp4rpXfG7MVES873i1PReh4ep5pSCHbc3+Pg==", + "requires": { + "@types/node": "^12.12.6", + "web3-core": "1.7.1", + "web3-core-helpers": "1.7.1", + "web3-core-method": "1.7.1", + "web3-net": "1.7.1", + "web3-utils": "1.7.1" + } + }, + "web3-net": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-net/-/web3-net-1.7.1.tgz", + "integrity": "sha512-8yPNp2gvjInWnU7DCoj4pIPNhxzUjrxKlODsyyXF8j0q3Z2VZuQp+c63gL++r2Prg4fS8t141/HcJw4aMu5sVA==", + "requires": { + "web3-core": "1.7.1", + "web3-core-method": "1.7.1", + "web3-utils": "1.7.1" + } + }, + "web3-providers-http": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-providers-http/-/web3-providers-http-1.7.1.tgz", + "integrity": "sha512-dmiO6G4dgAa3yv+2VD5TduKNckgfR97VI9YKXVleWdcpBoKXe2jofhdvtafd42fpIoaKiYsErxQNcOC5gI/7Vg==", + "requires": { + "web3-core-helpers": "1.7.1", + "xhr2-cookies": "1.1.0" + } + }, + "web3-providers-ipc": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-providers-ipc/-/web3-providers-ipc-1.7.1.tgz", + "integrity": "sha512-uNgLIFynwnd5M9ZC0lBvRQU5iLtU75hgaPpc7ZYYR+kjSk2jr2BkEAQhFVJ8dlqisrVmmqoAPXOEU0flYZZgNQ==", + "requires": { + "oboe": "2.1.5", + "web3-core-helpers": "1.7.1" + } + }, + "web3-providers-ws": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-providers-ws/-/web3-providers-ws-1.7.1.tgz", + "integrity": "sha512-Uj0n5hdrh0ESkMnTQBsEUS2u6Unqdc7Pe4Zl+iZFb7Yn9cIGsPJBl7/YOP4137EtD5ueXAv+MKwzcelpVhFiFg==", + "requires": { + "eventemitter3": "4.0.4", + "web3-core-helpers": "1.7.1", + "websocket": "^1.0.32" + }, + "dependencies": { + "eventemitter3": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.4.tgz", + "integrity": "sha512-rlaVLnVxtxvoyLsQQFBx53YmXHDxRIzzTLbdfxqi4yocpSjAxXwkU0cScM5JgSKMqEhrZpnvQ2D9gjylR0AimQ==" + } + } + }, + "web3-shh": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-shh/-/web3-shh-1.7.1.tgz", + "integrity": "sha512-NO+jpEjo8kYX6c7GiaAm57Sx93PLYkWYUCWlZmUOW7URdUcux8VVluvTWklGPvdM9H1WfDrol91DjuSW+ykyqg==", + "requires": { + "web3-core": "1.7.1", + "web3-core-method": "1.7.1", + "web3-core-subscriptions": "1.7.1", + "web3-net": "1.7.1" + } + }, + "web3-utils": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/web3-utils/-/web3-utils-1.7.1.tgz", + "integrity": "sha512-fef0EsqMGJUgiHPdX+KN9okVWshbIumyJPmR+btnD1HgvoXijKEkuKBv0OmUqjbeqmLKP2/N9EiXKJel5+E1Dw==", + "requires": { + "bn.js": "^4.11.9", + "ethereum-bloom-filters": "^1.0.6", + "ethereumjs-util": "^7.1.0", + "ethjs-unit": "0.1.6", + "number-to-bn": "1.7.0", + "randombytes": "^2.1.0", + "utf8": "3.0.0" + } + } + } + }, "@ethereumjs/common": { "version": "2.6.4", "resolved": "https://registry.npmjs.org/@ethereumjs/common/-/common-2.6.4.tgz", @@ -4180,6 +4970,14 @@ "@types/node": "*" } }, + "@types/web3": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/@types/web3/-/web3-1.2.2.tgz", + "integrity": "sha512-eFiYJKggNrOl0nsD+9cMh2MLk4zVBfXfGnVeRFbpiZzBE20eet4KLA3fXcjSuHaBn0RnQzwLAGdgzgzdet4C0A==", + "requires": { + "web3": "*" + } + }, "accepts": { "version": "1.3.8", "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", @@ -4224,6 +5022,11 @@ "safer-buffer": "^2.1.0" } }, + "assert-never": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/assert-never/-/assert-never-1.2.1.tgz", + "integrity": "sha512-TaTivMB6pYI1kXwrFlEhLeGfOqoDNdTxjCdwRfFFkEA30Eu+k48W34nlok2EYWJfFFzqaEmichdNM7th6M5HNw==" + }, "assert-plus": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", @@ -4759,6 +5562,12 @@ "resolved": "https://registry.npmjs.org/dom-walk/-/dom-walk-0.1.2.tgz", "integrity": "sha512-6QvTW9mrGeIegrFXdtQi9pk7O/nSK6lSdXW2eqUspN5LWD7UTji2Fqw5V2YLjBpHEoU9Xl/eUWNpDeZvoyOv2w==" }, + "dotenv": { + "version": "16.0.0", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.0.0.tgz", + "integrity": "sha512-qD9WU0MPM4SWLPJy/r2Be+2WgQj8plChsyrCNQzW/0WjvcJQiKQJ9mH3ZgB3fxbUUxgc/11ZJ0Fi5KiimWGz2Q==", + "dev": true + }, "duplexer3": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", @@ -5070,6 +5879,14 @@ "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==" }, + "fetch-ponyfill": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/fetch-ponyfill/-/fetch-ponyfill-6.1.1.tgz", + "integrity": "sha512-rWLgTr5A44/XhvCQPYj0X9Tc+cjUaHofSM4lcwjc9MavD5lkjIhJ+h8JQlavPlTIgDpwhuRozaIykBvX9ItaSA==", + "requires": { + "node-fetch": "~2.6.0" + } + }, "finalhandler": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", @@ -5796,6 +6613,14 @@ "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-2.0.2.tgz", "integrity": "sha512-Ntyt4AIXyaLIuMHF6IOoTakB3K+RWxwtsHNRxllEoA6vPwP9o4866g6YWDLUdnucilZhmkxiHwHr11gAENw+QA==" }, + "node-fetch": { + "version": "2.6.7", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", + "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", + "requires": { + "whatwg-url": "^5.0.0" + } + }, "node-gyp-build": { "version": "4.4.0", "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.4.0.tgz", @@ -6424,6 +7249,11 @@ "punycode": "^2.1.1" } }, + "tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o=" + }, "tslib": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", @@ -6498,6 +7328,11 @@ "punycode": "^2.1.0" } }, + "urijs": { + "version": "1.19.11", + "resolved": "https://registry.npmjs.org/urijs/-/urijs-1.19.11.tgz", + "integrity": "sha512-HXgFDgDommxn5/bIv0cnQZsPhHDA90NPHD6+c/v21U5+Sx5hoP8+dP9IZXBU1gIfvdRfhG8cel9QNPeionfcCQ==" + }, "url-parse-lax": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz", @@ -6843,6 +7678,11 @@ "utf8": "3.0.0" } }, + "webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE=" + }, "websocket": { "version": "1.0.34", "resolved": "https://registry.npmjs.org/websocket/-/websocket-1.0.34.tgz", @@ -6856,6 +7696,15 @@ "yaeti": "^0.0.6" } }, + "whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha1-lmRU6HZUYuN2RNNib2dCzotwll0=", + "requires": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" + } + }, "which-boxed-primitive": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", diff --git a/package.json b/package.json index 997cd27..99da81f 100644 --- a/package.json +++ b/package.json @@ -9,8 +9,12 @@ "author": "", "license": "ISC", "dependencies": { + "@alch/alchemy-web3": "^1.4.1", "bnc-sdk": "^4.2.0", "web3": "^1.7.3" }, - "type": "module" + "type": "module", + "devDependencies": { + "dotenv": "^16.0.0" + } }