diff options
| author | Adam Soltys <[email protected]> | 2022-11-24 13:50:18 -0800 |
|---|---|---|
| committer | Adam Soltys <[email protected]> | 2022-11-24 13:50:18 -0800 |
| commit | c3f0689dc728b2ed86792ad180132165479c05d5 (patch) | |
| tree | 5bb2778e60c411fe692190f03b960d5068024fd0 | |
| parent | 40e1723e0432d1656cbc5fbbd5e79a981d97809b (diff) | |
| download | coinos-server-c3f0689dc728b2ed86792ad180132165479c05d5.tar.gz coinos-server-c3f0689dc728b2ed86792ad180132165479c05d5.zip | |
remove lnd support
| -rw-r--r-- | lib/lnd.js | 13 | ||||
| -rw-r--r-- | lib/send.js | 27 | ||||
| -rw-r--r-- | lib/sync.js | 1 | ||||
| -rw-r--r-- | lib/utils.js | 9 | ||||
| -rw-r--r-- | package.json | 1 | ||||
| -rw-r--r-- | pnpm-lock.yaml | 330 | ||||
| -rw-r--r-- | routes/info.js | 4 | ||||
| -rw-r--r-- | routes/lightning/channel.js | 18 | ||||
| -rw-r--r-- | routes/lightning/invoice.js | 28 | ||||
| -rw-r--r-- | routes/lightning/receive.js | 4 | ||||
| -rw-r--r-- | routes/lnurl.js | 10 |
11 files changed, 17 insertions, 428 deletions
@@ -1,12 +1 @@ -import config from "$config"; -import { authenticatedLndGrpc } from "lightning"; - -const { cert, macaroon, socket } = config.lna; - -const { lnd } = authenticatedLndGrpc({ - cert, - macaroon, - socket -}); - -export default lnd; +export default {}; diff --git a/lib/send.js b/lib/send.js index 4f264509..54bcd103 100644 --- a/lib/send.js +++ b/lib/send.js @@ -8,9 +8,7 @@ import { computeConversionFee, conversionFeeReceiver } from "../routes/lightning/conversionFee"; -import lnd from "$lib/lnd"; import ln from "$lib/ln"; -import { payViaPaymentRequest } from "lightning"; import { l, warn, err } from "$lib/logging"; export default async (amount, memo, hash, user) => { @@ -90,25 +88,12 @@ export default async (amount, memo, hash, user) => { if (!payreq.satoshis) tokens = amount; let m; - if (config.lna.lnd) { - m = await payViaPaymentRequest({ - lnd, - request: hash, - max_fee: Math.min(10000, account.balance) - }); - - if (!m) throw new Error(`lightning payment failed ${amount} ${hash}`); - if (m.payment_error) throw new Error(m.payment_error); - ({ fee, secret, tokens } = m); - preimage = secret.toString("hex"); - } else { - let { msatoshi, msatoshi_sent, payment_preimage } = await ln.pay( - hash, - tokens ? `${tokens}sats` : undefined - ); - preimage = payment_preimage; - fee = parseInt((msatoshi_sent - msatoshi) / 1000); - } + let { msatoshi, msatoshi_sent, payment_preimage } = await ln.pay( + hash, + tokens ? `${tokens}sats` : undefined + ); + preimage = payment_preimage; + fee = parseInt((msatoshi_sent - msatoshi) / 1000); if (store.seen.includes(preimage)) { warn("duplicate payment detected", preimage); diff --git a/lib/sync.js b/lib/sync.js index 9e9be3fd..42291a94 100644 --- a/lib/sync.js +++ b/lib/sync.js @@ -11,7 +11,6 @@ import store from "./store"; import { l, err, warn } from "./logging"; import ln from "./ln"; import lnd from "./lnd"; -import { getInvoices } from "lightning"; import bc from "./bitcoin"; import lq from "./liquid"; diff --git a/lib/utils.js b/lib/utils.js index 48c351f0..c2f7e7eb 100644 --- a/lib/utils.js +++ b/lib/utils.js @@ -4,7 +4,6 @@ import sequelize from "@sequelize/core"; import { fromBase58 } from "bip32"; import { payments as bcPayments, networks as bcNetworks } from "bitcoinjs-lib"; import { payments as lqPayments, networks as lqNetworks } from "liquidjs-lib"; -import { createInvoice } from "lightning"; import lnd from "$lib/lnd"; import ln from "$lib/ln"; @@ -172,13 +171,5 @@ export const derivePayRequest = async ({ amount, memo, tip }) => { return ( await ln.invoice(value ? `${value}sat` : "any", new Date(), memo, 360) ).bolt11; - } else { - return ( - await createInvoice({ - lnd, - tokens: value, - description: memo - }) - ).request; } }; diff --git a/package.json b/package.json index e198de32..b868531e 100644 --- a/package.json +++ b/package.json @@ -39,7 +39,6 @@ "imap": "^0.8.19", "jsonwebtoken": "^8.5.1", "knex": "^2.3.0", - "lightning": "5", "liquidjs-lib": "6.0.2-liquid.8", "lnurl": "^0.24.2", "long": "^4.0.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index e036a7c4..75af23d3 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -33,7 +33,6 @@ specifiers: imap: ^0.8.19 jsonwebtoken: ^8.5.1 knex: ^2.3.0 - lightning: '5' liquidjs-lib: 6.0.2-liquid.8 lnurl: ^0.24.2 long: ^4.0.0 @@ -96,7 +95,6 @@ dependencies: imap: 0.8.19 jsonwebtoken: 8.5.1 knex: 2.3.0_miwdxfk6g3dfg4gj6dnwby2onu - lightning: 5.21.2 liquidjs-lib: 6.0.2-liquid.8 lnurl: 0.24.2 long: 4.0.0 @@ -242,26 +240,6 @@ packages: dev: false optional: true - /@grpc/grpc-js/1.7.0: - resolution: {integrity: sha512-wvKxal+40Xx11DXO2q5PfY3UiE25iwTb8SOz6A9IJII/V7d19x2ex0he+GJfVW0JZCaBjCPSjUB0yU9Ecm4WCw==} - engines: {node: ^8.13.0 || >=10.10.0} - dependencies: - '@grpc/proto-loader': 0.7.2 - '@types/node': 18.7.18 - dev: false - - /@grpc/proto-loader/0.7.2: - resolution: {integrity: sha512-jCdyLIT/tdQ1zhrbTQnJNK5nbDf0GoBpy5jVNywBzzMDF+Vs6uEaHnfz46dMtDxkvwrF2hzk5Z67goliceH0sA==} - engines: {node: '>=6'} - hasBin: true - dependencies: - '@types/long': 4.0.2 - lodash.camelcase: 4.3.0 - long: 4.0.0 - protobufjs: 7.1.2 - yargs: 16.2.0 - dev: false - /@mapbox/node-pre-gyp/1.0.10: resolution: {integrity: sha512-4ySo4CjzStuprMwk35H5pPbkymjv1SF3jGLj6rAHp/xT/RF7TL7bd9CTm1xDY49K2qF7jmR/g7k+SkLETP6opA==} hasBin: true @@ -330,49 +308,6 @@ packages: '@otplib/plugin-thirty-two': 12.0.1 dev: false - /@protobufjs/aspromise/1.1.2: - resolution: {integrity: sha512-j+gKExEuLmKwvz3OgROXtrJ2UG2x8Ch2YZUxahh+s1F2HZ+wAceUNLkvy6zKCPVRkU++ZWQrdxsUeQXmcg4uoQ==} - dev: false - - /@protobufjs/base64/1.1.2: - resolution: {integrity: sha512-AZkcAA5vnN/v4PDqKyMR5lx7hZttPDgClv83E//FMNhR2TMcLUhfRUBHCmSl0oi9zMgDDqRUJkSxO3wm85+XLg==} - dev: false - - /@protobufjs/codegen/2.0.4: - resolution: {integrity: sha512-YyFaikqM5sH0ziFZCN3xDC7zeGaB/d0IUb9CATugHWbd1FRFwWwt4ld4OYMPWu5a3Xe01mGAULCdqhMlPl29Jg==} - dev: false - - /@protobufjs/eventemitter/1.1.0: - resolution: {integrity: sha512-j9ednRT81vYJ9OfVuXG6ERSTdEL1xVsNgqpkxMsbIabzSo3goCjDIveeGv5d03om39ML71RdmrGNjG5SReBP/Q==} - dev: false - - /@protobufjs/fetch/1.1.0: - resolution: {integrity: sha512-lljVXpqXebpsijW71PZaCYeIcE5on1w5DlQy5WH6GLbFryLUrBD4932W/E2BSpfRJWseIL4v/KPgBFxDOIdKpQ==} - dependencies: - '@protobufjs/aspromise': 1.1.2 - '@protobufjs/inquire': 1.1.0 - dev: false - - /@protobufjs/float/1.0.2: - resolution: {integrity: sha512-Ddb+kVXlXst9d+R9PfTIxh1EdNkgoRe5tOX6t01f1lYWOvJnSPDBlG241QLzcyPdoNTsblLUdujGSE4RzrTZGQ==} - dev: false - - /@protobufjs/inquire/1.1.0: - resolution: {integrity: sha512-kdSefcPdruJiFMVSbn801t4vFK7KB/5gd2fYvrxhuJYg8ILrmn9SKSX2tZdV6V+ksulWqS7aXjBcRXl3wHoD9Q==} - dev: false - - /@protobufjs/path/1.1.2: - resolution: {integrity: sha512-6JOcJ5Tm08dOHAbdR3GrvP+yUUfkjG5ePsHYczMFLq3ZmMkAD98cDgcT2iA1lJ9NVwFd4tH/iSSoe44YWkltEA==} - dev: false - - /@protobufjs/pool/1.1.0: - resolution: {integrity: sha512-0kELaGSIDBKvcgS4zkjz1PeddatrjYcmMWOlAuAPwAeccUrPHdUqo/J6LiymHHEiJT5NrF1UVwxY14f+fy4WQw==} - dev: false - - /@protobufjs/utf8/1.1.0: - resolution: {integrity: sha512-Vvn3zZrhQZkkBE8LSuW3em98c0FwgO4nxzv6OdSxPKJIEKY2bGbHn+mhGIPerzI4twdxaP8/0+06HBpwf345Lw==} - dev: false - /@redis/bloom/1.0.2_@[email protected]: resolution: {integrity: sha512-EBw7Ag1hPgFzdznK2PBblc1kdlj5B5Cw3XwI9/oG7tSn85/HKy3X9xHy/8tm/eNXJYHLXHJL/pkwBpFMVVefkw==} peerDependencies: @@ -493,58 +428,16 @@ packages: '@types/node': 18.8.5 dev: false - /@types/body-parser/1.19.2: - resolution: {integrity: sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==} - dependencies: - '@types/connect': 3.4.35 - '@types/node': 18.7.18 - dev: false - - /@types/caseless/0.12.2: - resolution: {integrity: sha512-6ckxMjBBD8URvjB6J3NcnuAn5Pkl7t3TizAg+xdlzzQGSPSmBcXf8KoIH0ua/i+tio+ZRUHEXp0HEmvaR4kt0w==} - dev: false - - /@types/connect/3.4.35: - resolution: {integrity: sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==} - dependencies: - '@types/node': 18.7.18 - dev: false - /@types/debug/4.1.7: resolution: {integrity: sha512-9AonUzyTjXXhEOa0DnqpzZi6VHlqKMswga9EXjpXnnqxwLtdvPPtlO8evrI5D9S6asFRCQ6v+wpiUKbw+vKqyg==} dependencies: '@types/ms': 0.7.31 dev: false - /@types/express-serve-static-core/4.17.31: - resolution: {integrity: sha512-DxMhY+NAsTwMMFHBTtJFNp5qiHKJ7TeqOo23zVEM9alT1Ml27Q3xcTH0xwxn7Q0BbMcVEJOs/7aQtUWupUQN3Q==} - dependencies: - '@types/node': 18.7.18 - '@types/qs': 6.9.7 - '@types/range-parser': 1.2.4 - dev: false - - /@types/express/4.17.14: - resolution: {integrity: sha512-TEbt+vaPFQ+xpxFLFssxUDXj5cWCxZJjIcB7Yg0k0GMHGtgtQgpvx/MUQUeAkNbA9AAGrwkAsoeItdTgS7FMyg==} - dependencies: - '@types/body-parser': 1.19.2 - '@types/express-serve-static-core': 4.17.31 - '@types/qs': 6.9.7 - '@types/serve-static': 1.15.0 - dev: false - /@types/geojson/7946.0.10: resolution: {integrity: sha512-Nmh0K3iWQJzniTuPRcJn5hxXkfB1T1pgB89SBig5PlJQU5yocazeu4jATJlaA0GYFKWMqDdvYemoSnF2pXgLVA==} dev: false - /@types/long/4.0.2: - resolution: {integrity: sha512-MqTGEo5bj5t157U6fA/BiDynNkn0YknVdh48CMPkTSpFTVmvao5UQmm7uEF6xBEo7qIMAlY/JSleYaE6VOdpaA==} - dev: false - - /@types/mime/3.0.1: - resolution: {integrity: sha512-Y4XFY5VJAuw0FgAqPNd6NNoV44jbq9Bz2L7Rh/J6jLTiHBSBJa9fxqQIvkIld4GsoDOcCbvzOUAbLPsSKKg+uA==} - dev: false - /@types/ms/0.7.31: resolution: {integrity: sha512-iiUgKzV9AuaEkZqkOLDIvlQiL6ltuZd9tGcW3gwpnX8JbuiuhFlEGmmFXEXkN50Cvq7Os88IY2v0dkDqXYWVgA==} dev: false @@ -565,60 +458,22 @@ packages: resolution: {integrity: sha512-w+tIMs3rq2afQdsPJlODhoUEKzFP1ayaoyl1CcnwtIlsVe7K7bA1NGm4s3PraqTLlXnbIN84zuBlxBWo1u9BLw==} dev: false - /@types/node/18.7.18: - resolution: {integrity: sha512-m+6nTEOadJZuTPkKR/SYK3A2d7FZrgElol9UP1Kae90VVU4a6mxnPuLiIW1m4Cq4gZ/nWb9GrdVXJCoCazDAbg==} - dev: false - /@types/node/18.8.5: resolution: {integrity: sha512-Bq7G3AErwe5A/Zki5fdD3O6+0zDChhg671NfPjtIcbtzDNZTv4NPKMRFr7gtYPG7y+B8uTiNK4Ngd9T0FTar6Q==} dev: false - /@types/qs/6.9.7: - resolution: {integrity: sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==} - dev: false - /@types/randombytes/2.0.0: resolution: {integrity: sha512-bz8PhAVlwN72vqefzxa14DKNT8jK/mV66CSjwdVQM/k3Th3EPKfUtdMniwZgMedQTFuywAsfjnZsg+pEnltaMA==} dependencies: '@types/node': 18.8.5 dev: false - /@types/range-parser/1.2.4: - resolution: {integrity: sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==} - dev: false - - /@types/request/2.48.8: - resolution: {integrity: sha512-whjk1EDJPcAR2kYHRbFl/lKeeKYTi05A15K9bnLInCVroNDCtXce57xKdI0/rQaA3K+6q0eFyUBPmqfSndUZdQ==} - dependencies: - '@types/caseless': 0.12.2 - '@types/node': 18.7.18 - '@types/tough-cookie': 4.0.2 - form-data: 2.5.1 - dev: false - - /@types/serve-static/1.15.0: - resolution: {integrity: sha512-z5xyF6uh8CbjAu9760KDKsH2FcDxZ2tFCsA4HIMWE6IkiYMXfVoa+4f9KX+FN0ZLsaMw1WNG2ETLA6N+/YA+cg==} - dependencies: - '@types/mime': 3.0.1 - '@types/node': 18.7.18 - dev: false - - /@types/tough-cookie/4.0.2: - resolution: {integrity: sha512-Q5vtl1W5ue16D+nIaW8JWebSSraJVlK+EthKn7e7UcD4KWsaSJ8BqGPXNaPghgtcn/fhvrN17Tv8ksUsQpiplw==} - dev: false - /@types/wif/2.0.2: resolution: {integrity: sha512-IiIuBeJzlh4LWJ7kVTrX0nwB60OG0vvGTaWC/SgSbVFw7uYUTF6gEuvDZ1goWkeirekJDD58Y8g7NljQh2fNkA==} dependencies: '@types/node': 18.8.5 dev: false - /@types/ws/8.5.3: - resolution: {integrity: sha512-6YOoWjruKj1uLf3INHH7D3qTXwFfEsg1kf3c0uDdSBJwfa/llkwIjrAGV7j7mVgGNbzTQ3HiHKKDXl6bJPD97w==} - dependencies: - '@types/node': 18.7.18 - dev: false - /@vulpemventures/secp256k1-zkp/2.1.0: resolution: {integrity: sha512-86EGAkPqEwy5KKeC8Ow8+fMhSiFtorvIQQ9yhTwwHqT0UdUVOW/Fu2ZDoooQK5KAQbyISBB+vf0jK3eYH+Dlqw==} engines: {node: '>=12.0.0'} @@ -724,13 +579,6 @@ packages: color-convert: 1.9.3 dev: false - /ansi-styles/4.3.0: - resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} - engines: {node: '>=8'} - dependencies: - color-convert: 2.0.1 - dev: false - /anymatch/3.1.2: resolution: {integrity: sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==} engines: {node: '>= 8'} @@ -814,12 +662,6 @@ packages: resolution: {integrity: sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==} dev: false - /asyncjs-util/1.2.10: - resolution: {integrity: sha512-p4U6HQUw4k/xZKrwEQO7ZuF+8/OkzAQS4iAMhFUBGtSD8p3KkKBaTBuUTEH8TWKB3ArNbrP0401TGE2vIiU7uQ==} - dependencies: - async: 3.2.4 - dev: false - /asynckit/0.4.0: resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} dev: false @@ -983,10 +825,6 @@ packages: resolution: {integrity: sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==} dev: false - /bn.js/5.2.1: - resolution: {integrity: sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==} - dev: false - /body-parser/1.19.0: resolution: {integrity: sha512-dhEPs72UPbDnAQJ9ZKMNTP6ptJaionhP5cBb541nXPlW60Jepo9RV/a4fX4XWW9CuFNK22krhrj1+rgzifNCsw==} engines: {node: '>= 0.8'} @@ -1045,17 +883,6 @@ packages: - supports-color dev: false - /bolt07/1.8.2: - resolution: {integrity: sha512-jq1b/ZdMambhh+yi+pm+1PJBAnlYvQYljaBgSajvVAINHrHg32ovCBra8d0ADE3BAoj6G/tK7OSV4t/yT9A+/g==} - dependencies: - bn.js: 5.2.1 - dev: false - - /bolt09/0.2.3: - resolution: {integrity: sha512-xEt5GE6pXB8wMIWHAoyF28k0Yt2rFqIou1LCyIeNadAOQhu/F7GTjZwreFwLl07YYkhOH23avewRt5PD8JnKKg==} - engines: {node: '>=12.20.0'} - dev: false - /bolt11/1.3.4: resolution: {integrity: sha512-x4lHDv0oid13lGlZU7cl/5gx9nRwjB2vgK/uB3c50802Wh+9WjWQMwzD2PCETHylUijx2iBAqUQYbx3ZgwF06Q==} dependencies: @@ -1196,13 +1023,6 @@ packages: engines: {node: '>=6'} dev: false - /cbor/8.1.0: - resolution: {integrity: sha512-DwGjNW9omn6EwP70aXsn7FQJx5kO12tX0bZkaTjzdVFM6/7nhA4t0EENocKGx6D2Bch9PE2KzCUf5SceBdeijg==} - engines: {node: '>=12.19'} - dependencies: - nofilter: 3.1.0 - dev: false - /chalk/2.4.2: resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==} engines: {node: '>=4'} @@ -1258,14 +1078,6 @@ packages: - supports-color dev: false - /cliui/7.0.4: - resolution: {integrity: sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==} - dependencies: - string-width: 4.2.3 - strip-ansi: 6.0.1 - wrap-ansi: 7.0.0 - dev: false - /cluster-key-slot/1.1.0: resolution: {integrity: sha512-2Nii8p3RwAPiFwsnZvukotvow2rIHM+yQ6ZcBXGHdniadkYGZYiGmkHJIbZPIV9nfv7m/U1IPMVVcAhoWFeklw==} engines: {node: '>=0.10.0'} @@ -1612,15 +1424,6 @@ packages: safe-buffer: 5.2.1 dev: false - /ecpair/2.0.1: - resolution: {integrity: sha512-iT3wztQMeE/nDTlfnAg8dAFUfBS7Tq2BXzq3ae6L+pWgFU0fQ3l0woTzdTBrJV3OxBjxbzjq8EQhAbEmJNWFSw==} - engines: {node: '>=8.0.0'} - dependencies: - randombytes: 2.1.0 - typeforce: 1.18.0 - wif: 2.0.6 - dev: false - /ecpair/2.1.0: resolution: {integrity: sha512-cL/mh3MtJutFOvFc27GPZE2pWL3a3k4YvzUWEOvilnfZVlH3Jwgx/7d6tlD7/75tNk8TG2m+7Kgtz0SI1tWcqw==} engines: {node: '>=8.0.0'} @@ -2146,11 +1949,6 @@ packages: engines: {node: '>= 4'} dev: false - /get-caller-file/2.0.5: - resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==} - engines: {node: 6.* || 8.* || >= 10.*} - dev: false - /get-intrinsic/1.1.3: resolution: {integrity: sha512-QJVz1Tj7MS099PevUG5jvnt9tSkXN8K14dxQlikJuPt4uD9hHAHjLyLBiLR5zELelBdD9QNRAXZzsJx0WaDL9A==} dependencies: @@ -2484,18 +2282,6 @@ packages: engines: {node: '>= 0.10'} dev: false - /invoices/2.2.0: - resolution: {integrity: sha512-uVe0WdHGdhkKubfrH1rSC/RpFREC7D0dh1IHxEgmUhV1lhn2+1UFVUxhri4dGyklBgIi+DNzE8q3665PF8z5Vw==} - engines: {node: '>=12.20.0'} - dependencies: - bech32: 2.0.0 - bitcoinjs-lib: 6.0.2 - bn.js: 5.2.1 - bolt07: 1.8.2 - bolt09: 0.2.3 - tiny-secp256k1: 2.2.1 - dev: false - /ip/1.1.5: resolution: {integrity: sha512-rBtCAQAJm8A110nbwn6YdveUnuZH3WrC36IwkRXxDnq53JvXA2NVQvB7IHyKomxK1MJ4VDNw3UtFDdXQ+AvLYA==} dev: false @@ -2716,34 +2502,6 @@ packages: - supports-color dev: false - /lightning/5.21.2: - resolution: {integrity: sha512-DOfjPYOsY6pfRVtr4VuGk8IZi51bKwrYKi6WB5k7HzumXuIJAZdc6EHa7+ahjUL+I+b6XpRlFsIhz3cT3+lXwA==} - engines: {node: '>=12.20'} - dependencies: - '@grpc/grpc-js': 1.7.0 - '@grpc/proto-loader': 0.7.2 - '@types/express': 4.17.14 - '@types/node': 18.7.18 - '@types/request': 2.48.8 - '@types/ws': 8.5.3 - async: 3.2.4 - asyncjs-util: 1.2.10 - bitcoinjs-lib: 6.0.2 - bn.js: 5.2.1 - body-parser: 1.20.0 - bolt07: 1.8.2 - bolt09: 0.2.3 - cbor: 8.1.0 - ecpair: 2.0.1 - express: 4.18.1 - invoices: 2.2.0 - psbt: 2.7.1 - tiny-secp256k1: 2.2.1 - type-fest: 2.19.0 - transitivePeerDependencies: - - supports-color - dev: false - /liquidjs-lib/6.0.2-liquid.8: resolution: {integrity: sha512-KCtO/lXfKyZUJeZ1Mok3FQ5/viNLmKEEhGEC3iySnBakIII2rd1ijn3np16/3LzBiQhQ+tFm4Q1NYEG3YhWBTg==} engines: {node: '>=8.0.0'} @@ -2789,10 +2547,6 @@ packages: - supports-color dev: false - /lodash.camelcase/4.3.0: - resolution: {integrity: sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA==} - dev: false - /lodash.includes/4.3.0: resolution: {integrity: sha512-W3Bx6mdkRTGtlJISOvVD/lbqjTlPPUDTMnlXZFnVwi9NKJ6tiAk6LVdlhZMm17VZisqhKcgzpO5Wz91PCt5b0w==} dev: false @@ -3223,11 +2977,6 @@ packages: undefsafe: 2.0.5 dev: false - /nofilter/3.1.0: - resolution: {integrity: sha512-l2NNj07e9afPnhAhvgVrCD/oy2Ai1yfLpuo3EpiO1jFTsB4sFz6oIfAfSZyQzVpkZQ9xS8ZS5g1jCBgq4Hwo0g==} - engines: {node: '>=12.19'} - dev: false - /nopt/1.0.10: resolution: {integrity: sha512-NWmpvLSqUrgrAC9HCuxEvb+PSloHpqVu+FqcO4eeF2h5qYRhA7ev6KvelyQAKtegUbC6RypJnlEOhd8vloNKYg==} hasBin: true @@ -3608,25 +3357,6 @@ packages: with-callback: 1.0.2 dev: false - /protobufjs/7.1.2: - resolution: {integrity: sha512-4ZPTPkXCdel3+L81yw3dG6+Kq3umdWKh7Dc7GW/CpNk4SX3hK58iPCWeCyhVTDrbkNeKrYNZ7EojM5WDaEWTLQ==} - engines: {node: '>=12.0.0'} - requiresBuild: true - dependencies: - '@protobufjs/aspromise': 1.1.2 - '@protobufjs/base64': 1.1.2 - '@protobufjs/codegen': 2.0.4 - '@protobufjs/eventemitter': 1.1.0 - '@protobufjs/fetch': 1.1.0 - '@protobufjs/float': 1.0.2 - '@protobufjs/inquire': 1.1.0 - '@protobufjs/path': 1.1.2 - '@protobufjs/pool': 1.1.0 - '@protobufjs/utf8': 1.1.0 - '@types/node': 18.7.18 - long: 5.2.0 - dev: false - /proxy-addr/2.0.7: resolution: {integrity: sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==} engines: {node: '>= 0.10'} @@ -3655,18 +3385,6 @@ packages: resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==} dev: false - /psbt/2.7.1: - resolution: {integrity: sha512-qFnvwdQcDoQBHHi3jYVVX+W98CRTbyeQs3RlUdAIzdEVbwBHEcv1+xhVaEJHrYiF75n7L+i6roDmZHIXT6tDSQ==} - engines: {node: '>=12.20'} - dependencies: - bip66: 1.1.5 - bitcoin-ops: 1.4.1 - bitcoinjs-lib: 6.0.2 - bn.js: 5.2.1 - pushdata-bitcoin: 1.0.1 - varuint-bitcoin: 1.1.2 - dev: false - /pseudomap/1.0.2: resolution: {integrity: sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==} dev: false @@ -3691,12 +3409,6 @@ packages: engines: {node: '>=6'} dev: false - /pushdata-bitcoin/1.0.1: - resolution: {integrity: sha512-hw7rcYTJRAl4olM8Owe8x0fBuJJ+WGbMhQuLWOXEMN3PxPCKQHRkhfL+XG0+iXUmSHjkMmb3Ba55Mt21cZc9kQ==} - dependencies: - bitcoin-ops: 1.4.1 - dev: false - /qs/6.10.3: resolution: {integrity: sha512-wr7M2E0OFRfIfJZjKGieI8lBKb7fRCH4Fv5KNPEs7gJ8jadvotdsS08PzOKR7opXhZ/Xkjtt3WF9g38drmyRqQ==} engines: {node: '>=0.6'} @@ -3857,11 +3569,6 @@ packages: '@redis/time-series': 1.0.3_@[email protected] dev: false - /require-directory/2.1.1: - resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==} - engines: {node: '>=0.10.0'} - dev: false - /require-from-string/2.0.2: resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==} engines: {node: '>=0.10.0'} @@ -4509,11 +4216,6 @@ packages: prelude-ls: 1.1.2 dev: false - /type-fest/2.19.0: - resolution: {integrity: sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==} - engines: {node: '>=12.20'} - dev: false - /type-is/1.6.18: resolution: {integrity: sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==} engines: {node: '>= 0.6'} @@ -4686,15 +4388,6 @@ packages: resolution: {integrity: sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==} dev: false - /wrap-ansi/7.0.0: - resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} - engines: {node: '>=10'} - dependencies: - ansi-styles: 4.3.0 - string-width: 4.2.3 - strip-ansi: 6.0.1 - dev: false - /wrappy/1.0.2: resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} dev: false @@ -4733,11 +4426,6 @@ packages: resolution: {integrity: sha512-xl/50/Cf32VsGq/1R8jJE5ajH1yMCQkpmoS10QbFZWl2Oor4H0Me64Pu2yxvsRWK3m6soJbmGfzSR7BYmDcWAA==} dev: false - /y18n/5.0.8: - resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==} - engines: {node: '>=10'} - dev: false - /yallist/2.1.2: resolution: {integrity: sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==} dev: false @@ -4750,24 +4438,6 @@ packages: resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} dev: false - /yargs-parser/20.2.9: - resolution: {integrity: sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==} - engines: {node: '>=10'} - dev: false - - /yargs/16.2.0: - resolution: {integrity: sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==} - engines: {node: '>=10'} - dependencies: - cliui: 7.0.4 - escalade: 3.1.1 - get-caller-file: 2.0.5 - require-directory: 2.1.1 - string-width: 4.2.3 - y18n: 5.0.8 - yargs-parser: 20.2.9 - dev: false - /yocto-queue/0.1.0: resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} engines: {node: '>=10'} diff --git a/routes/info.js b/routes/info.js index f3de8907..3cbb7c86 100644 --- a/routes/info.js +++ b/routes/info.js @@ -8,7 +8,6 @@ import lq from "$lib/liquid"; import lnd from "$lib/lnd"; import ln from "$lib/ln"; -import { getChannelBalance, getChainBalance } from "lightning"; import sequelize from "@sequelize/core"; import { SATS } from "$lib/utils"; @@ -58,9 +57,6 @@ app.get("/balances", async (req, res, next) => { funds.channels.reduce((a, b) => a + b.channel_sat, 0) ); lnwallet = parseInt(funds.outputs.reduce((a, b) => a + b.value, 0)); - } else { - lnchannel = parseInt(await getChannelBalance({ lnd }).channel_balance); - lnwallet = parseInt(await getChainBalance({ lnd }).chain_balance); } } diff --git a/routes/lightning/channel.js b/routes/lightning/channel.js index 107896f4..d5d5b7b2 100644 --- a/routes/lightning/channel.js +++ b/routes/lightning/channel.js @@ -1,6 +1,4 @@ import axios from "axios"; -import { addPeer, getIdentity } from "lightning"; -import lnd from "$lib/lnd"; import ln from "$lib/ln"; export default async (req, res) => { @@ -9,27 +7,11 @@ export default async (req, res) => { l("connecting to peer", req.user.username, public_key, socket); let result; - try { - result = await addPeer({ - lnd, - socket, - public_key - }); - } catch (e) { - if (!e.message.includes("already connected")) { - err("problem connecting to peer", e.message); - return res.code(500).send(e.message); - } - } const { callback, k1 } = params; let remoteid; try { - if (config.lna.clightning) { remoteid = (await ln.getinfo()).id; - } else { - remoteid = (await getIdentity({ lnd })).public_key; - } } catch (e) { err("problem getting lightning node info", e.message); return res.code(500).send(e.message); diff --git a/routes/lightning/invoice.js b/routes/lightning/invoice.js index a97697a8..b5d90faf 100644 --- a/routes/lightning/invoice.js +++ b/routes/lightning/invoice.js @@ -1,5 +1,4 @@ import config from "$config"; -import { createInvoice } from "lightning"; import { err } from "$lib/logging"; import lnd from "$lib/lnd"; import ln from "$lib/ln"; @@ -11,25 +10,16 @@ export default async (req, res) => { let value = amount + tip; try { - if (config.lna.clightning) { - if (!memo) memo = "coinos"; - const invoice = await ln.invoice( - value ? `${value}sat` : "any", - v4(), - memo, - 360 - ); - res.send({ text: invoice.bolt11 }); - } else { - const invoice = await createInvoice({ - lnd, - tokens: value, - description: memo - }); - res.send({ text: invoice.request }); - } + if (!memo) memo = "coinos"; + const invoice = await ln.invoice( + value ? `${value}sat` : "any", + v4(), + memo, + 360 + ); + res.send({ text: invoice.bolt11 }); } catch (e) { - console.log(e) + console.log(e); err("problem creating invoice", e.message); res.code(500).send(e.message); } diff --git a/routes/lightning/receive.js b/routes/lightning/receive.js index f4a20a59..af8415f1 100644 --- a/routes/lightning/receive.js +++ b/routes/lightning/receive.js @@ -6,7 +6,6 @@ import { notify } from "$lib/notifications"; import { callWebhook } from "$lib/webhooks"; import { computeConversionFee } from "./conversionFee"; import { sendLiquid } from "$routes/liquid/send"; -import { subscribeToInvoices } from "lightning"; import lnd from "$lib/lnd"; import ln from "$lib/ln"; import { l, err, warn } from "$lib/logging"; @@ -163,7 +162,4 @@ if (config.lna.clightning) { }; poll(ln); -} else { - const invoices = subscribeToInvoices({ lnd }); - invoices.on("invoice_updated", handlePayment); } diff --git a/routes/lnurl.js b/routes/lnurl.js index 962a908c..171acbe5 100644 --- a/routes/lnurl.js +++ b/routes/lnurl.js @@ -16,7 +16,6 @@ import jwt from "jsonwebtoken"; import qs from "query-string"; import bolt11 from "bolt11"; -import { createInvoice, decodePaymentRequest, getPayments } from "lightning"; import { computeConversionFee, @@ -102,8 +101,6 @@ app.post("/withdraw", auth, async (req, res, next) => { let desc = label; invoice = await ln.invoice(`${value}sats`, label, desc); - } else { - invoice = await createInvoice({ lnd, value }); } const { payment_request: pr } = invoice; @@ -400,12 +397,7 @@ lnurlServer.bindToHook( if (config.lna.clightning) { let { msatoshi } = await ln.decodepay(pr); amount = parseInt(msatoshi / 1000); - } else { - ({ num_satoshis: amount } = await decodePaymentRequest({ - lnd, - request: pr - })); - } + } let conversionFee = computeConversionFee(amount); await db.transaction(async transaction => { |
