Giter Club home page Giter Club logo

dart_bolt11_decoder's Introduction

A decoder for BOLT #11 invoices.

Usage

A simple usage example:

import 'package:bolt11_decoder/bolt11_decoder.dart';

main() {
  PaymentRequest req = PaymentRequest(
      "lnbc1pvjluezpp5qqqsyqcyq5rqwzqfqqqsyqcyq5rqwzqfqqqsyqcyq5rqwzqfqypqdpl2pkx2ctnv5sxxmmwwd5kgetjypeh2ursdae8g6twvus8g6rfwvs8qun0dfjkxaq8rkx3yf5tcsyz3d73gafnh3cax9rn449d9p5uxz9ezhhypd0elx87sjle52x86fux2ypatgddc6k63n7erqz25le42c4u4ecky03ylcqca784w");
  print("amount: ${req.amount}");
  // => amount: 0
  print("timestamp: ${req.timestamp}");
  // => timestamp: 1496314658

  req.tags.forEach((TaggedField t) {
    print("${t.type}: ${t.data}");
  });
  // => payment_hash: 0001020304050607080900010203040506070809000102030405060708090102
  // => description: Please consider supporting this project
}

Features and bugs

Please file feature requests and bugs at the tracker.

Credits

Much of this is based on Richard Bondis bolt11 tutorial. Thanks a lot!

License

Distributed under the MIT license. See LICENSE for more information.

dart_bolt11_decoder's People

Contributors

fusion44 avatar itxtoledo avatar ryzizub avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

dart_bolt11_decoder's Issues

Exception while parsing invoice

Found issue that this library will fail to decode invoice (which is valid)

lnbc11p3l8hmnpp5fszjygxclu4v8lk9aqwentt8yku9fw23leqsagd824dtgxkhdk5sdqqcqzzgxqyz5vqrzjqwnvuc0u4txn35cafc7w94gxvq5p3cu9dd95f7hlrh0fvs46wpvhdut0l0wdgvxeu5qqqqryqqqqthqqpyrzjqw8c7yfutqqy3kz8662fxutjvef7q2ujsxtt45csu0k688lkzu3ldut0l0wdgvxeu5qqqqryqqqqthqqpysp5sfddfymd22vyr6fq00hxay5nu0qjjhfeu73kft95yvyq7zgksems9qypqsqgnlqghe7e60u00p0gseghk779fc837r74k9l5wwpyh9thdr847j55r9kgqae6yc829atajeaps998sr2vdrzyrjqywh7anvxm6ewzrgqasp0t5

Exception

Unhandled Exception: FormatException: Could not parse BigInt
#0      _BigIntImpl.parse (dart:core-patch/bigint_patch.dart:169:7)
#1      BigInt.parse (dart:core-patch/bigint_patch.dart:52:19)
#2      new Rational.parse
rational.dart:79
#3      new Decimal.parse
decimal.dart:19
#4      Bolt11PaymentRequest._processAmount
pay_request.dart:68
#5      new Bolt11PaymentRequest

Not all tags are decoded

Thanks a lot for the library!
I have noticed that not all tags are decoded such as "payee pubkey" (identifier 19).
For example in this invoice taken from the example:

lnbc1pvjluezpp5qqqsyqcyq5rqwzqfqqqsyqcyq5rqwzqfqqqsyqcyq5rqwzqfqypqdpl2pkx2ctnv5sxxmmwwd5kgetjypeh2ursdae8g6twvus8g6rfwvs8qun0dfjkxaq8rkx3yf5tcsyz3d73gafnh3cax9rn449d9p5uxz9ezhhypd0elx87sjle52x86fux2ypatgddc6k63n7erqz25le42c4u4ecky03ylcqca784w

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.