@txnlab/use-wallet 3.2.1 → 3.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.cts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { Store } from '@tanstack/store';
2
- import algosdk, { Algodv2 } from 'algosdk';
2
+ import algosdk from 'algosdk';
3
3
  import AVMWebProviderSDK from '@agoralabs-sh/avm-web-provider';
4
4
  import { InstanceWithExtensions, SDKBase } from '@magic-sdk/provider';
5
5
  import { AlgorandExtension } from '@magic-ext/algorand';
@@ -11,6 +11,7 @@ declare enum NetworkId {
11
11
  MAINNET = "mainnet",
12
12
  TESTNET = "testnet",
13
13
  BETANET = "betanet",
14
+ FNET = "fnet",
14
15
  LOCALNET = "localnet"
15
16
  }
16
17
  interface AlgodConfig {
@@ -570,7 +571,7 @@ interface State {
570
571
  wallets: WalletStateMap;
571
572
  activeWallet: WalletId | null;
572
573
  activeNetwork: NetworkId;
573
- algodClient: Algodv2;
574
+ algodClient: algosdk.Algodv2;
574
575
  }
575
576
  declare const defaultState: State;
576
577
 
@@ -578,13 +579,19 @@ interface WalletManagerConfig {
578
579
  wallets?: SupportedWallet[];
579
580
  network?: NetworkId;
580
581
  algod?: NetworkConfig;
582
+ options?: {
583
+ resetNetwork?: boolean;
584
+ };
581
585
  }
582
586
  declare class WalletManager {
583
587
  _clients: Map<WalletId, BaseWallet>;
584
588
  networkConfig: NetworkConfigMap;
585
589
  store: Store<State>;
586
590
  subscribe: (callback: (state: State) => void) => () => void;
587
- constructor({ wallets, network, algod }?: WalletManagerConfig);
591
+ options: {
592
+ resetNetwork: boolean;
593
+ };
594
+ constructor({ wallets, network, algod, options }?: WalletManagerConfig);
588
595
  get algodClient(): algosdk.Algodv2;
589
596
  set algodClient(algodClient: algosdk.Algodv2);
590
597
  private loadPersistedState;
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { Store } from '@tanstack/store';
2
- import algosdk, { Algodv2 } from 'algosdk';
2
+ import algosdk from 'algosdk';
3
3
  import AVMWebProviderSDK from '@agoralabs-sh/avm-web-provider';
4
4
  import { InstanceWithExtensions, SDKBase } from '@magic-sdk/provider';
5
5
  import { AlgorandExtension } from '@magic-ext/algorand';
@@ -11,6 +11,7 @@ declare enum NetworkId {
11
11
  MAINNET = "mainnet",
12
12
  TESTNET = "testnet",
13
13
  BETANET = "betanet",
14
+ FNET = "fnet",
14
15
  LOCALNET = "localnet"
15
16
  }
16
17
  interface AlgodConfig {
@@ -570,7 +571,7 @@ interface State {
570
571
  wallets: WalletStateMap;
571
572
  activeWallet: WalletId | null;
572
573
  activeNetwork: NetworkId;
573
- algodClient: Algodv2;
574
+ algodClient: algosdk.Algodv2;
574
575
  }
575
576
  declare const defaultState: State;
576
577
 
@@ -578,13 +579,19 @@ interface WalletManagerConfig {
578
579
  wallets?: SupportedWallet[];
579
580
  network?: NetworkId;
580
581
  algod?: NetworkConfig;
582
+ options?: {
583
+ resetNetwork?: boolean;
584
+ };
581
585
  }
582
586
  declare class WalletManager {
583
587
  _clients: Map<WalletId, BaseWallet>;
584
588
  networkConfig: NetworkConfigMap;
585
589
  store: Store<State>;
586
590
  subscribe: (callback: (state: State) => void) => () => void;
587
- constructor({ wallets, network, algod }?: WalletManagerConfig);
591
+ options: {
592
+ resetNetwork: boolean;
593
+ };
594
+ constructor({ wallets, network, algod, options }?: WalletManagerConfig);
588
595
  get algodClient(): algosdk.Algodv2;
589
596
  set algodClient(algodClient: algosdk.Algodv2);
590
597
  private loadPersistedState;
package/dist/index.js CHANGED
@@ -3212,13 +3212,14 @@ var init_es5 = __esm({
3212
3212
 
3213
3213
  // src/manager.ts
3214
3214
  import { Store } from "@tanstack/store";
3215
- import algosdk11 from "algosdk";
3215
+ import algosdk12 from "algosdk";
3216
3216
 
3217
3217
  // src/network.ts
3218
3218
  var NetworkId = /* @__PURE__ */ ((NetworkId2) => {
3219
3219
  NetworkId2["MAINNET"] = "mainnet";
3220
3220
  NetworkId2["TESTNET"] = "testnet";
3221
3221
  NetworkId2["BETANET"] = "betanet";
3222
+ NetworkId2["FNET"] = "fnet";
3222
3223
  NetworkId2["LOCALNET"] = "localnet";
3223
3224
  return NetworkId2;
3224
3225
  })(NetworkId || {});
@@ -3230,9 +3231,10 @@ function isNetworkConfigMap(config) {
3230
3231
  return Object.keys(config).some((key) => networkKeys.includes(key));
3231
3232
  }
3232
3233
  var nodeServerMap = {
3233
- ["mainnet" /* MAINNET */]: "https://mainnet-api.algonode.cloud",
3234
- ["testnet" /* TESTNET */]: "https://testnet-api.algonode.cloud",
3235
- ["betanet" /* BETANET */]: "https://betanet-api.algonode.cloud"
3234
+ ["mainnet" /* MAINNET */]: "https://mainnet-api.4160.nodely.dev",
3235
+ ["testnet" /* TESTNET */]: "https://testnet-api.4160.nodely.dev",
3236
+ ["betanet" /* BETANET */]: "https://betanet-api.4160.nodely.dev",
3237
+ ["fnet" /* FNET */]: "https://fnet-api.4160.nodely.dev"
3236
3238
  };
3237
3239
  function createDefaultNetworkConfig() {
3238
3240
  const localnetConfig = {
@@ -3276,7 +3278,7 @@ var StorageAdapter = class {
3276
3278
  };
3277
3279
 
3278
3280
  // src/store.ts
3279
- import { Algodv2 } from "algosdk";
3281
+ import algosdk11 from "algosdk";
3280
3282
 
3281
3283
  // src/wallets/base.ts
3282
3284
  var BaseWallet = class {
@@ -3858,12 +3860,18 @@ var KibisisWallet = class _KibisisWallet extends BaseWallet {
3858
3860
  console.info(
3859
3861
  `[${_KibisisWallet.name}]#${_functionName}: initializing @agoralabs-sh/avm-web-provider...`
3860
3862
  );
3861
- this.avmWebProviderSDK = await import("@agoralabs-sh/avm-web-provider");
3863
+ const module = await import("@agoralabs-sh/avm-web-provider");
3864
+ this.avmWebProviderSDK = module.default ? module.default : module;
3862
3865
  if (!this.avmWebProviderSDK) {
3863
3866
  throw new Error(
3864
3867
  "failed to initialize, the @agoralabs-sh/avm-web-provider sdk was not provided"
3865
3868
  );
3866
3869
  }
3870
+ if (!this.avmWebProviderSDK.AVMWebClient) {
3871
+ throw new Error(
3872
+ "failed to initialize, the @agoralabs-sh/avm-web-provider sdk was not provided. AVMWebClient missing"
3873
+ );
3874
+ }
3867
3875
  }
3868
3876
  return this.avmWebProviderSDK;
3869
3877
  }
@@ -5677,7 +5685,7 @@ var defaultState = {
5677
5685
  wallets: {},
5678
5686
  activeWallet: null,
5679
5687
  activeNetwork: "testnet" /* TESTNET */,
5680
- algodClient: new Algodv2("", "https://testnet-api.algonode.cloud/")
5688
+ algodClient: new algosdk11.Algodv2("", "https://testnet-api.4160.nodely.dev/")
5681
5689
  };
5682
5690
  var LOCAL_STORAGE_KEY = "@txnlab/use-wallet:v3";
5683
5691
  function addWallet(store, { walletId, wallet }) {
@@ -5800,16 +5808,23 @@ var WalletManager = class {
5800
5808
  networkConfig;
5801
5809
  store;
5802
5810
  subscribe;
5803
- constructor({ wallets = [], network = "testnet" /* TESTNET */, algod = {} } = {}) {
5811
+ options;
5812
+ constructor({
5813
+ wallets = [],
5814
+ network = "testnet" /* TESTNET */,
5815
+ algod = {},
5816
+ options = {}
5817
+ } = {}) {
5804
5818
  this.networkConfig = this.initNetworkConfig(network, algod);
5819
+ this.options = { resetNetwork: options.resetNetwork || false };
5805
5820
  const persistedState = this.loadPersistedState();
5806
- const initialState = persistedState ? {
5807
- ...persistedState,
5808
- algodClient: this.createAlgodClient(this.networkConfig[persistedState.activeNetwork])
5809
- } : {
5821
+ const activeNetwork = this.options.resetNetwork ? network : persistedState?.activeNetwork || network;
5822
+ const algodClient = this.createAlgodClient(this.networkConfig[activeNetwork]);
5823
+ const initialState = {
5810
5824
  ...defaultState,
5811
- activeNetwork: network,
5812
- algodClient: this.createAlgodClient(this.networkConfig[network])
5825
+ ...persistedState,
5826
+ activeNetwork,
5827
+ algodClient
5813
5828
  };
5814
5829
  this.store = new Store(initialState, {
5815
5830
  onUpdate: () => this.savePersistedState()
@@ -5934,7 +5949,7 @@ var WalletManager = class {
5934
5949
  createAlgodClient(config) {
5935
5950
  if (this.store) console.info(`[Manager] Creating Algodv2 client for ${this.activeNetwork}...`);
5936
5951
  const { token = "", baseServer, port = "", headers = {} } = config;
5937
- return new algosdk11.Algodv2(token, baseServer, port, headers);
5952
+ return new algosdk12.Algodv2(token, baseServer, port, headers);
5938
5953
  }
5939
5954
  getAlgodClient = () => {
5940
5955
  return this.algodClient;