[Dart/Flutter]agent_dart updates v0.1.16 - Flutter Web Supported

Hi eveyone.

We are making a dart/flutter version of agent library for Internet Computer. Dart and Flutter devs can use it to build either mobile wallets, Stand-alone/fusion Dapps powered by canisters, or even backend service.

You can get it here:

https://pub.dev/packages/agent_dart

And for source code, here:

https://github.com/AstroxNetwork/agent_dart

Current version is 0.1.16, we will update latest features and changes in this post.

0.1.16

  • added principal to accountId
  • added Flutter Web support
  • regroup project structure
  • fixed archiver overriding
  • fixed bls on dart:io and dart:html
  • fixed test compatible with flutter web

0.1.11 - 0.1.15

  • Fixed secp256k1 signature length
  • Expose AgentFactory
  • Fix Cbor with List casting
  • Minor Fix fetch and KeySmith
  • added Windows ffi support
  • BREAKING separating auth_provider to standalone agent_dart_auth package
  • IMPORTANT fix candid parser with BigInt and others

0.1.10

  • Added Secp256k1 Identity with ECDA sign

  • Added ledger with send and getBalance

0.1.9

  • BREAKING the auth_client flow is a little bit change due to Internet Identity service won’t give correct identity using local webpage like we use webAuthProvider here

  • How ever we keep the provider here, because we may have other Identity Provider to give other solution.

  • But we managed to change auth_client a bit.

0.1.8

  • fixed uri parser, added path to auth_client

0.1.7

  • IMPORATANT Use blsSync instead of async isolation, to fix memory leak in rust-dart-ffi interop

0.1.6

  • Fix cbordecode in the Delegation

  • Apply rosetta-api to current docker specs

0.1.5

  • BREAKING remove ICPSigner.fromPrivatekey and added ICPSigner.fromSeed

  • Won’t support import privatekey to signer anymore, may separate different signer, eg: Secp256k1Signer or SchnorrSigner in the future supporting different coin specs.

0.1.4

  • added sourceType of II, plugWallet, keysmith with different settings since they use different derivePath to generate seed

  • added Signer.importPhrase to use settings above

  • added related tests

0.1.3

  • fix delegation request sign and request_id

0.1.2

  • fix delegation chain transformRequest

0.1.1

  • fix error decoding

  • follow agent-js latest features

  • fix readme

Here are core features in this package:

  • agent, core library, with crypto and encoding/decoding methods , http call/query encapsulated, for interacting with canister.

  • auth_client, a popup window for flutter, used for getting authentication from Identity provider(eg, Internet Identity).

  • authentication, a library supports auth_client

  • candid, candid library, used for encoding/decoding candid data types, and used them in dart-lang.

  • principal, principal library, used for generate principal for many usage cases.

  • protobuf, protobuf library, used for interacting with rosetta-node in submit/query transaction

  • utils, common utils, including useful helpers like extension methods in dart.

  • wallet, wallet library, signer, rosetta, key-smith all-in-one library.

20 Likes