web3_webview 1.0.14 copy "web3_webview: ^1.0.14" to clipboard
web3_webview: ^1.0.14 copied to clipboard

web3_webview is a powerful bridge between a DApp running inside a WebView and your Flutter application, enabling secure and seamless two-way communication between them

1.0.14 #

  • Fix: static analysis 50/50 – add lib/utils/address_utils.dart:1 with toChecksumHex()/toHex() using eip55 + dynamic fallback to handle web3dart 2.7.3 (hexEip55/hex) and 3.0.3 (eip55With0x/with0x); replace hexEip55 in lib/ethereum/ethereum_provider.dart:141,186 and lib/signer/private_key_signer.dart:48, replace hex in lib/signing/signing_handler.dart:53; add eip55: ^1.0.2 dep and constrain web3dart: ">=2.7.3 <3.0.0" for pana 150/160
  • Fix: lint curly_braces_in_flow_control_structures in lib/ethereum/wallet_dialog_service.dart:206,1117,1140,1161 and dart format 30 files

1.0.13 #

  • Feature: fully custom UI – WalletDialogBuilders (lib/ethereum/wallet_dialog_builders.dart:12) with connect/sign/transaction/switchNetwork/addNetwork builders. Pass Web3WalletConfig(dialogBuilders: WalletDialogBuilders(connect: (ctx, {address, host, appName, controller, theme}) => showDialog(...))) or WalletDialogService.instance.setBuilders(...); null builder falls back to premium default. Example 4th tab “Custom” in example/lib/main.dart:56 shows AlertDialog branding.
  • Docs: README.md new Custom UI section, pubspec.yaml bump to 1.0.13

1.0.12 #

  • UI: premium redesign of confirm dialogs – WalletDialogTheme indigo #6366F1, 20 radius, 16 card, origin chip with avatar, hero amount, FilledButton 52h/14 radius; BottomSheetDialog 320ms, barrier 0.42, rounded 20
  • UI: auto dark mode – WalletDialogTheme.dark() (bg #0F172A, surface #1E293B, border #334155, text #F1F5F9), Web3WalletConfig(dialogTheme:, darkDialogTheme:) auto-switches via Theme.of(context).brightness; warning/success adapt for dark
  • Example: example/lib/main.dart now ThemeMode toggle in AppBar, passes light/dark themes to all 3 WebViews for live preview

1.0.11 #

  • Feature: make privateKey optional – read-only mode when no signer (Web3WalletConfig() without privateKey/signer). eth_call, eth_getBalance, eth_blockNumber, eth_estimateGas, wallet_switchEthereumChain etc. work without key; signing (personal_sign, eth_sign*, eth_sendTransaction, eth_requestAccounts) throws 4100 per EIP-1193
  • Feature: add Web3Signer abstraction (lib/signer/web3_signer.dart:14) + PrivateKeySigner (lib/signer/private_key_signer.dart:11). Pass Web3WalletConfig(signer: MySigner()) for WalletConnect / Secure Enclave / biometrics – signer takes precedence over privateKey
  • Fix: EthereumProvider.initialize lib/ethereum/ethereum_provider.dart:63 now String? privateKey, Web3Signer? signer – validates only if provided; Web3WebView._initProvider lib/web3_webview_eip1193.dart:825 no longer shows initError when key is omitted
  • Fix: eth_call now uses makeRPCCall('eth_call') directly (was incorrectly routing through TransactionHandler.handleTransaction); net_version now returns decimal string per EIP-1474
  • Docs: update README.md (architecture with Signer, 3 quick-start modes, Web3WalletConfig table, Signer & Read-only section), example/lib/main.dart (3 demos), bump pubspec.yaml to 1.0.11

1.0.10 #

  • Docs: fix library conflict (web3_webview vs web3_webview_eip1193), add dartdoc for 80% coverage (230/287), add example/ (example/lib/main.dart)
  • Analysis: replace withOpacity with withValues, fix BuildContext async gaps, use_super_parameters, unnecessary_import, prefer_const_constructors; remove unnecessary_library_name, add analysis_options tweaks; dart format clean
  • Deps: widen web3dart to >=2.7.3 <4.0.0 (compatible with 3.0.3), keep hex, remove clipboard/pointycastle, bump flutter_lints to ^6.0.0, bump version to 1.0.10

1.0.9 #

  • Security: validate privateKey (64 hex, 0x optional) in EthereumProvider.initialize and Web3WebView._initProvider; show inline initError instead of EthPrivateKey.fromHex('') crash; add WalletException.code with EIP-1193 -32601/-32602/4001/4200
  • Security: XSS-safe JS injection via jsonEncode in ProviderScriptGenerator (chainId/accounts/info), Web3Result.sendError/sendResult/sendResults/setAddress, and EthereumProvider._emit/_updateProviderScript
  • Security: onPermissionRequest default DENY (was GRANT all); AppUtils.copyToClipboard via flutter/services without logging sensitive text
  • Bridge: Web3WebView (ethereumRequest) no longer swallows errors – maps WalletException to {code,message} thrown to JS, invokes onError with JsonRpcMethod.tryFromString, correctly surfaces 4200 for unknown methods
  • Transaction: TransactionHandler.handleTransaction(waitForConfirmation:false) returns hash immediately (EIP-1193), fire-and-forget polling; estimateGas buffered +20% with BigInt arithmetic (no toDouble loss)
  • Signing: fix getEncryptionPublicKey precedence and 65-byte 0x04 handling; EIP-712 bool/address/bytesN now 32-byte ABI padded
  • Lifecycle: Web3WebView adds _providerInitialized/_initError, _initProvider async, dispose() closes Web3Client+Client via EthereumProvider.dispose; LoadingHelper refCount + whenComplete; remove clipboard/pointycastle deps, keep hex
  • Docs: rewrite README.md (architecture, RPC table, error codes, security), update SECURITY.md (supported 1.0.x), bump pubspec.yaml to 1.0.9

1.0.8 #

  • Fix sign message, dialog,...
  • Fix UI/UX

1.0.7 #

  • Fix bug

1.0.6 #

  • Fix bug

1.0.5 #

  • Fix bug

1.0.4 #

  • FIx UI

1.0.3 #

  • Update README.md

1.0.2 #

  • Fix bug

1.0.1 #

  • Fix bug

1.0.0 #

  • Big update
  • Using ethers.js [6.7.0] instead of web3.js
  • Dialog for connect wallet
  • Dialog for approve transaction
  • Dialog for sign transaction
  • Dialog for sign message

0.0.3 #

  • Fix bug custom provider

0.0.2 #

  • Remove decimal, fix required version of intl

0.0.1 #

  • init plugin
7
likes
150
points
62
downloads

Documentation

API reference

Publisher

verified publisherdatit309.is-a.dev

Weekly Downloads

web3_webview is a powerful bridge between a DApp running inside a WebView and your Flutter application, enabling secure and seamless two-way communication between them

Repository (GitHub)
View/report issues

License

BSD-3-Clause (license)

Dependencies

crypto, eip55, flutter, flutter_inappwebview, hex, http, intl, modal_bottom_sheet, uuid, web3dart

More

Packages that depend on web3_webview