Skip to content

Latest commit

 

History

History
637 lines (341 loc) · 34 KB

CHANGELOG.md

File metadata and controls

637 lines (341 loc) · 34 KB

3.10.0 (2024-10-25)

Features

  • Webpack: Add webpackFallback export to resolve optional wallet dependencies (#307) (32baa7f)

Documentation

  • Add Webpack configuration for Next.js (#308) (ddb9c57)

3.9.0 (2024-10-21)

Features

Bug Fixes

  • Liquid: Implement dynamic import for LiquidAuthClient (#299) (7a97d94)

Documentation

  • Add Liquid Auth to supported wallets (#304) (5049aaa)

3.8.0 (2024-10-09)

Features

  • Mnemonic: Resume session when persisting to store (#283) (88997e9)

Bug Fixes

  • Wallets: Limit WalletConnect backup to Defly and Pera (#292) (61b2827)

3.7.3-docs (2024-10-07)

Documentation

3.7.2 (2024-10-04)

Bug Fixes

  • WalletConnect: Use active network chain ID only (#282) (eb433b9)

3.7.1 (2024-10-01)

Fixes

  • Scripts: Replace single quotes w/ escaped double quotes (#278) (b3451d7)
  • Core: Remove circular import in store.ts & MnemonicWallet (#279) (d3f2764)

3.7.0 (2024-09-27)

Features

  • Wallets: Add WalletConnect v1 session management (#275) (484b2b5)

3.6.1 (2024-09-25)

Test Updates

  • Lute: Update mocking for lute-connect v1.4.1 compatibility (#273) (77f1a37)

3.6.0 (2024-09-24)

Features

  • Networks: Add voimain, aramidmain, fix caip10 fnet (#267) (fa55713)
  • Wallets: Add Biatec Wallet (#255) (c1e8849)

Bug Fixes

  • Wallets: Correct disconnect handling for Pera and Defly (#272) (caa7f48)

3.5.0 (2024-09-18)

Features

  • Implement configurable logging system (#264) (4912e4e)

Bug Fixes

  • Correct DEBUG log level handling in WalletManager (#265) (53057b5)

3.4.0 (2024-09-13)

Features

  • Add resetNetwork option to WalletManager (#260) (70b8454)

Bug Fixes

3.3.0 (2024-09-11)

Features

  • Add fnet to list of valid networks and update nodely urls to new versions (#258) (07e7273)
  • Update algosdk import to resolve CommonJS module issue (#259) (8743101)

3.2.1 (2024-09-05)

Other Changes

  • Update Renovate configuration to no longer ignore examples/** projects' dependencies
  • Update all dependencies to latest versions, including algosdk (v2.9.0), @tanstack/store (v0.5.5), and typescript (v5.5.4)
  • Improve dev/build process with new development scripts (#253) (0c9f976)
  • Add CONTRIBUTING.md with contribution guidelines (#254) (91ebc0b)

3.2.0 (2024-09-03)

Features

3.1.6 (2024-08-29)

Bug Fixes

  • Core: Initialize manager with active network from persisted state (#221) (2ff796b)

3.1.5 (2024-08-21)

Bug Fixes

  • Core: Immutable state updates in store mutation functions (#220) (22421d4)

3.1.4 (2024-08-19)

Bug Fixes

  • WalletConnect: Handle untyped byte arrays returned by sign request (#218) (9a39164)

3.1.3 (2024-08-10)

Bug Fixes

  • Next.js Example: Resolve Webpack "module not found" errors (#212) (b0eea4d)

3.1.2 (2024-08-09)

Bug Fixes

  • Revert "fix(core): fix Webpack static analysis issue with dynamic imports (#211)" (fc1529b)

3.1.1 (2024-08-09)

Bug Fixes

  • Core: Fix Webpack static analysis issue with dynamic imports (#211) (4f77fc3)

3.1.0 (2024-08-02)

Features

3.0.0 (2024-07-17)

Summary

Version 3.0.0 introduces a complete rewrite of the use-wallet library, now structured as a monorepo to support vanilla JavaScript/TypeScript applications with reactive framework-specific adapters. This major release focuses on improving flexibility, performance, and developer experience.

Key Features

  • Framework-Agnostic Core: Rewritten in vanilla TypeScript for broader compatibility.
  • Framework Adapters: Initial support for React, Vue, and Solid.js with adapters for Angular and Svelte planned.
  • Enhanced Performance: More lightweight and easier to debug.
  • Expanded Examples: Includes demo apps for vanilla TypeScript, React, Vue, Solid.js, and server-side rendering examples for Next.js and Nuxt.
  • Improved Tooling: Adoption of PNPM for package management and Vitest for testing.
  • Network Switching: Easy switching between different networks (MainNet, TestNet, LocalNet).
  • Increased Test Coverage: Ensuring robustness and reliability.

Breaking Changes

This version includes significant API changes. Please refer to the Migration Guide for detailed upgrade instructions.

3.0.0-rc.3 (2024-07-02)

Fixes

  • Move algosdk to peerDependencies (#193) (179ba8d)
  • Add algosdk to devDependencies, sync versions (#197) (332f360)
  • Switching networks should not disconnect wallets (#198) (47e5704)

3.0.0-rc.2 (2024-06-20)

Fixes

  • Core: Fixes isTransactionArray utility function (#190) (0e119ea)

3.0.0-rc.1 (2024-06-20)

⚠️ BREAKING CHANGES

This release includes breaking changes. Please refer to the release notes for upgrade instructions.

Features

  • Core: Add Custom provider (#181) (bdaf3ee)
  • Kibisis: Implement AVM provider with Kibisis client (#175) (9a7203d)
  • Core: Wallet provider updates (#183) (1b7720a)
  • Core: Switching networks (#187) (ef07c4d)
  • Core: Revert Pera provider to Pera Connect v1 (#188) (4a5c947)
  • Core: signTransactions response should match length of txnGroup (#189) (5244482)

Fixes

  • WalletConnect: Handle all response types from algo_signTxn (#185) (1e246e1)
  • WalletConnect: Get default metadata from window (#186) (2c1762d)

Other Changes

3.0.0-beta.10 (2024-06-04)

Features

3.0.0-beta.9 (2024-06-01)

Fixes

  • Core: Fallbacks for named/default Pera Connect v2 export (b4ccb40)

3.0.0-beta.8 (2024-06-01)

⚠️ BREAKING CHANGES

This release includes breaking changes. Please refer to the release notes for upgrade instructions.

Features

  • Core: Migrate Pera Wallet provider to Pera Connect v2 (#179) (87db889)

3.0.0-beta.7 (2024-05-16)

Fixes

  • Solid: Fix transaction signing functions, add signing to example app (#172) (097638f)

Other Changes

  • Update README with SolidJS quick start (9e2611b)

3.0.0-beta.6 (2024-05-16)

Features

  • Solid.js framework adapter: use-wallet-solid (#169) (a5f407b)

Other Changes

2.8.2 (2024-05-15)

Bug Fixes

3.0.0-beta.5 (2024-04-11)

Hotfix

  • Core: Use correct Localnet algod default port (#165) (ec1c4bb)

3.0.0-beta.4 (2024-04-11)

Features

  • Core: Set default LocalNet network config (#164) (ef65328)

Bug Fixes

  • Core: Use correct this context in setActiveNetwork (#163) (b48dd33)

Other Changes

  • Remove @walletconnect/utils dependency (drastically reducing bundle size) (025d0a9)

2.8.1 (2024-04-09)

Bug Fixes

  • Perform byte array <-> b64 conversions w/ native JS (v2) (#155) (8f0e354)

3.0.0-beta.3 (2024-04-09)

Bug Fixes

  • Core: Perform byte array <-> b64 conversions w/ native JS (#153) (054947c)

3.0.0-beta.2 (2024-04-02)

Bug Fixes

  • Core: Ensure correct this context in public callback methods (#152) (88e649f)

3.0.0-beta.1 (2024-03-27)

Summary

Introduces a complete rewrite of the use-wallet library, now structured as a monorepo to support vanilla JavaScript/TypeScript applications alongside framework-specific adapters for React and Vue. Key advancements include:

  • Transition to vanilla TypeScript for the core library, ensuring framework-agnostic compatibility.
  • Addition of framework-specific adapters, initially for React and Vue, with plans for Solid.js and Svelte.
  • Examples for vanilla TS, React, Vue, along with SSR examples for Next.js and Nuxt.
  • Modernization of the toolchain, adopting PNPM for package management and Vitest for testing.

This update retains a familiar API design for ease of transition from v2, while significantly expanding the library's functionality and developer experience.

See https://github.com/TxnLab/use-wallet-js for alpha stage development history.

2.8.0 (2024-03-27)

Bug Fixes

  • Allow any connected account to be set active (#141) (6220ed3)
  • Lute: Fix ESLint error in LuteClient (802d297)
  • Wrap postMessage in timeout to prevent race conditions (#143) (2d18482)

Features

  • Add ability to throw connection errors (#142) (53689eb)

2.7.0 (2024-02-06)

Features

  • Lute: New Lute icon, util function to convert SVG to Base64 (#137) (b9b45f9)

Bug Fixes

  • Kibisis: Replace global object with window (#139) (e686564)

2.6.2 (2024-01-31)

Bug Fixes

  • Magic: Magic Algorand extension should be provided by consuming application (#136) (a5ee9af), closes #135

2.6.1 (2024-01-30)

Bug Fixes

  • Fix package.json typo in peerDependenciesMeta (magic-sdk as optional) (4c139d9)

2.6.0 (2024-01-30)

Features

  • Magic.link provider (email based authentication) (#124) (85f8bef)

Bug Fixes

  • Kibisis: Lower getProvider timeout from 3 seconds to 0.75 seconds (#133) (fadf667)
  • Kibisis: Remove native web Crypto API dependency when generating UUID (#134) (54b43e8)

2.5.0 (2024-01-25)

Features

2.4.0 (2024-01-17)

Features

2.3.1 (2023-12-15)

Changes

  • Throw error if useWallet hook is being used outside the WalletProvider (#125) (3ccc5e0)
  • Use named export of zustand/shallow to suppress deprecation warning (263a56b)

2.3.0 (2023-11-29)

Features

2.2.0 (2023-10-11)

Features

2.1.3 (2023-09-22)

Bug Fixes

  • preserve order of providers as passed into useInitializeProviders (#111) (35a6333), closes #104

2.1.2 (2023-09-12)

Changes

  • Update documentation to show recommended approach for node configuration (#110) (b50c564)

2.1.1 (2023-08-11)

Bug Fixes

2.1.0 (2023-08-07)

Features

  • enable dynamic import of wallet libraries (#100) (57f38f3)

2.0.0 (2023-06-27)

Features

  • Improved initializeProviders API (#66)
  • WalletConnect 2.0 support (#83)
  • Debug mode (#89)

Changes

  • Add unit tests (#61)

Breaking Changes

  • The function used to initialize providers in version 1.x is no longer exported by the library. Use the useInitializeProviders hook or manually construct the wallet providers map that gets passed to the WalletProvider.
  • There is no longer a "default" provider configuration. All providers to be supported must be explicitly defined.
  • Wallet provider peer dependencies (SDK/client libraries) are no longer dynamically imported behind the scenes. The modules must be statically imported and passed to the clientStatic property when initializing the provider.

1.3.3 (2023-06-24)

Changes

  • Upgrade @blockshake/defly-connect to v1.1.5 (32c7bba)

1.3.2 (2023-06-21)

Changes

  • Upgrade @blockshake/defly-connect to v1.1.3 (b25cbeb)

1.3.1 (2023-06-20)

Features

  • Handle nested transaction arrays in signTransactions (#79)

Changes

  • Update signTransactions type signature in useWallet hook

1.3.0 (2023-04-28)

Features

  • Daffi Wallet support (#68)
  • Provider dependencies are optional (#72)

1.2.12 (2023-04-24)

Bug Fixes

  • Add missing unsigned txns to group in Defly client (#69)

1.2.11 (2023-03-29)

Changes

  • Fixes jest tests, initial CI pipeline, adding commitizen, starter config for automation tools (#58)

1.2.10 (2023-03-26)

Bug Fixes

  • Fixes dependency resolution errors on npm install for local development (aea17fc)

1.2.9 (2023-03-23)

Bug Fixes

  • Fix return type of groupTransactionsBySender in base client (07ae640)

1.2.8 (2023-03-23)

Changes

  • Upgrade @perawallet/connect to v1.2.1 (496000c)

1.2.7 (2023-03-17)

Features

  • Migration to AlgoSigner v1.10.0, which adds support for rekeyed signing (fbff1ee)

Changes

  • ESLint added and source files formatted following the new ESLint/Prettier config (77b8f03)

1.2.6 (2023-03-14)

Bug Fixes

  • Handle varying payload lengths in WalletConnect signTransactions method (79a9228)

1.2.5 (2023-03-14)

Bug Fixes

  • Fix handling signed transactions in WalletConnect client (c973514)

1.2.4 (2023-03-11)

Changes

  • Only reconnect to active providers in reconnectProviders (0a48316)

1.2.3 (2023-03-06)

Changes

  • Upgrade @perawallet/connect to v1.1.1, which adds Ledger support for Pera Web Wallet

1.2.2 (2023-02-07)

Changes

  • Upgrade algosdk so that polyfills for Buffer and Crypto globals are no longer necessary.

1.2.1 (2023-01-25)

Features

  • Support signing transaction groups from multiple accounts with Pera

Bug Fixes

  • Fill in MyAlgo logo so that it shows up in dark backgrounds (#42) (d982c95)

Changes

  • Remove deprecated functions

1.2.0 (2023-01-19)

Features

  • adding algoworld swapper to used by (#29) (1bca5ab)
  • adding new mnemonic wallet provider for e2e testing (#28) (ca38100)

Bug Fixes

  • adding method to use cached wallet id if available, otherwise grab it from the kmd (#40) (b7c0cf2)

1.1.6 (2023-01-16)

Changes

  • Change provider initialization failure from console error to warning.

1.1.5 (2023-01-16)

Features

  • Add status, isReady and isActive properties to check status of the providers.

1.0.5 (2022-12-29)

Features

  • Add the indexesToSign option to signTransactions to optionally specify which indexes of the group should be signed.
  • Add the returnGroup parameter to signTransactions to specify if all transactions that were passed should be returned, or just the ones signed by the provider.

Bug Fixes

  • Fix the signer method so that it accepts both signed and unsigned transactions.

1.0.4 (2022-12-15)

Features

  • Enable multiple WalletConnect sessions (e.g., Pera and Defly) to be active at the same time.

Bug Fixes

  • Fix hydration errors that occur with SSR frameworks like Next.js.
  • Prevent the providers from being initialized during SSR, as many of them rely on client side globals like window and Audio.

1.0.3 (2022-12-13)

Bug Fixes

  • Prevent KMD from prompting password on app mount.
  • Fix a bug where default KMD configuration wasn't valid.
  • Fix a bug where providers would not disconnect if the session was killed in the wallet app (affected Defly and Pera)

1.0.2 (2022-12-07)

Features

  • remove 'audio hack' for Pera (8dc3a2d)

1.0.1 (2022-12-07)

Bug Fixes

  • decoding unsigned AlgoSigner txn as signed (#18) (8f892ab)

1.0.0 (2022-12-07)

Features

  • The provider clients are now passed to child components using React Context, allowing for more configuration options.
  • Provider clients provide support for both dynamic and static imports, allowing use-wallet to be used with frameworks that don't support dynamic imports.

Breaking Changes

  • To setup the providers, the initializeProviders function should be used, and passed to the WalletProviders context provider in the application root.
  • The provider ID, name, and icon are now part of the metadata property of providers.
  • Using environment variables to configure the clients is deprecated.

0.1.23 (2022-11-16)

Features

  • Dynamically import wallet provider dependencies and reduce bundle size (#9)
  • Use first and last valid rounds to determine how many rounds to wait to confirm transactions (#13)
  • Handle signing transactions for multiple connected accounts (#14)
  • Upgrade to Zustand v4 (#11)