@txnlab/use-wallet 3.1.3 → 3.1.5
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.cjs +53 -36
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +53 -36
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -3481,6 +3481,9 @@ var StorageAdapter = class {
|
|
|
3481
3481
|
}
|
|
3482
3482
|
};
|
|
3483
3483
|
|
|
3484
|
+
// src/store.ts
|
|
3485
|
+
var import_algosdk11 = require("algosdk");
|
|
3486
|
+
|
|
3484
3487
|
// src/wallets/base.ts
|
|
3485
3488
|
var BaseWallet = class {
|
|
3486
3489
|
id;
|
|
@@ -5630,7 +5633,17 @@ var WalletConnect = class extends BaseWallet {
|
|
|
5630
5633
|
});
|
|
5631
5634
|
const signedTxns = signTxnsResult.reduce((acc, value) => {
|
|
5632
5635
|
if (value) {
|
|
5633
|
-
|
|
5636
|
+
let signedTxn;
|
|
5637
|
+
if (typeof value === "string") {
|
|
5638
|
+
signedTxn = base64ToByteArray(value);
|
|
5639
|
+
} else if (value instanceof Uint8Array) {
|
|
5640
|
+
signedTxn = value;
|
|
5641
|
+
} else if (Array.isArray(value)) {
|
|
5642
|
+
signedTxn = new Uint8Array(value);
|
|
5643
|
+
} else {
|
|
5644
|
+
console.warn(`[${this.metadata.name}] Unexpected type in signTxnsResult`, value);
|
|
5645
|
+
signedTxn = new Uint8Array();
|
|
5646
|
+
}
|
|
5634
5647
|
acc.push(signedTxn);
|
|
5635
5648
|
}
|
|
5636
5649
|
return acc;
|
|
@@ -5865,7 +5878,6 @@ var CustomWallet = class extends BaseWallet {
|
|
|
5865
5878
|
};
|
|
5866
5879
|
|
|
5867
5880
|
// src/store.ts
|
|
5868
|
-
var import_algosdk11 = require("algosdk");
|
|
5869
5881
|
var defaultState = {
|
|
5870
5882
|
wallets: {},
|
|
5871
5883
|
activeWallet: null,
|
|
@@ -5875,56 +5887,61 @@ var defaultState = {
|
|
|
5875
5887
|
var LOCAL_STORAGE_KEY = "@txnlab/use-wallet:v3";
|
|
5876
5888
|
function addWallet(store, { walletId, wallet }) {
|
|
5877
5889
|
store.setState((state) => {
|
|
5878
|
-
const
|
|
5890
|
+
const updatedWallets = {
|
|
5879
5891
|
...state.wallets,
|
|
5880
|
-
[walletId]:
|
|
5892
|
+
[walletId]: {
|
|
5893
|
+
accounts: wallet.accounts.map((account) => ({ ...account })),
|
|
5894
|
+
activeAccount: wallet.activeAccount ? { ...wallet.activeAccount } : null
|
|
5895
|
+
}
|
|
5881
5896
|
};
|
|
5882
5897
|
return {
|
|
5883
5898
|
...state,
|
|
5884
|
-
wallets:
|
|
5899
|
+
wallets: updatedWallets,
|
|
5885
5900
|
activeWallet: walletId
|
|
5886
5901
|
};
|
|
5887
5902
|
});
|
|
5888
5903
|
}
|
|
5889
5904
|
function removeWallet(store, { walletId }) {
|
|
5890
5905
|
store.setState((state) => {
|
|
5891
|
-
const
|
|
5892
|
-
delete
|
|
5906
|
+
const updatedWallets = { ...state.wallets };
|
|
5907
|
+
delete updatedWallets[walletId];
|
|
5893
5908
|
return {
|
|
5894
5909
|
...state,
|
|
5895
|
-
wallets:
|
|
5910
|
+
wallets: updatedWallets,
|
|
5896
5911
|
activeWallet: state.activeWallet === walletId ? null : state.activeWallet
|
|
5897
5912
|
};
|
|
5898
5913
|
});
|
|
5899
5914
|
}
|
|
5900
5915
|
function setActiveWallet(store, { walletId }) {
|
|
5901
|
-
store.setState((state) => {
|
|
5902
|
-
|
|
5903
|
-
|
|
5904
|
-
|
|
5905
|
-
};
|
|
5906
|
-
});
|
|
5916
|
+
store.setState((state) => ({
|
|
5917
|
+
...state,
|
|
5918
|
+
activeWallet: walletId
|
|
5919
|
+
}));
|
|
5907
5920
|
}
|
|
5908
5921
|
function setActiveAccount(store, { walletId, address }) {
|
|
5909
5922
|
store.setState((state) => {
|
|
5910
5923
|
const wallet = state.wallets[walletId];
|
|
5911
5924
|
if (!wallet) {
|
|
5925
|
+
console.warn(`Wallet with id "${walletId}" not found`);
|
|
5912
5926
|
return state;
|
|
5913
5927
|
}
|
|
5914
|
-
const
|
|
5915
|
-
if (!
|
|
5928
|
+
const newActiveAccount = wallet.accounts.find((a2) => a2.address === address);
|
|
5929
|
+
if (!newActiveAccount) {
|
|
5930
|
+
console.warn(`Account with address ${address} not found in wallet "${walletId}"`);
|
|
5916
5931
|
return state;
|
|
5917
5932
|
}
|
|
5918
|
-
const
|
|
5933
|
+
const updatedWallet = {
|
|
5934
|
+
...wallet,
|
|
5935
|
+
accounts: wallet.accounts.map((account) => ({ ...account })),
|
|
5936
|
+
activeAccount: { ...newActiveAccount }
|
|
5937
|
+
};
|
|
5938
|
+
const updatedWallets = {
|
|
5919
5939
|
...state.wallets,
|
|
5920
|
-
[walletId]:
|
|
5921
|
-
...wallet,
|
|
5922
|
-
activeAccount
|
|
5923
|
-
}
|
|
5940
|
+
[walletId]: updatedWallet
|
|
5924
5941
|
};
|
|
5925
5942
|
return {
|
|
5926
5943
|
...state,
|
|
5927
|
-
wallets:
|
|
5944
|
+
wallets: updatedWallets
|
|
5928
5945
|
};
|
|
5929
5946
|
});
|
|
5930
5947
|
}
|
|
@@ -5932,34 +5949,34 @@ function setAccounts(store, { walletId, accounts }) {
|
|
|
5932
5949
|
store.setState((state) => {
|
|
5933
5950
|
const wallet = state.wallets[walletId];
|
|
5934
5951
|
if (!wallet) {
|
|
5952
|
+
console.warn(`Wallet with id "${walletId}" not found`);
|
|
5935
5953
|
return state;
|
|
5936
5954
|
}
|
|
5937
|
-
const
|
|
5955
|
+
const newAccounts = accounts.map((account) => ({ ...account }));
|
|
5956
|
+
const isActiveAccountConnected = newAccounts.some(
|
|
5938
5957
|
(account) => account.address === wallet.activeAccount?.address
|
|
5939
5958
|
);
|
|
5940
|
-
const
|
|
5941
|
-
const
|
|
5959
|
+
const newActiveAccount = isActiveAccountConnected ? { ...wallet.activeAccount } : newAccounts[0] || null;
|
|
5960
|
+
const updatedWallet = {
|
|
5942
5961
|
...wallet,
|
|
5943
|
-
accounts,
|
|
5944
|
-
activeAccount
|
|
5962
|
+
accounts: newAccounts,
|
|
5963
|
+
activeAccount: newActiveAccount
|
|
5945
5964
|
};
|
|
5946
|
-
const
|
|
5965
|
+
const updatedWallets = {
|
|
5947
5966
|
...state.wallets,
|
|
5948
|
-
[walletId]:
|
|
5967
|
+
[walletId]: updatedWallet
|
|
5949
5968
|
};
|
|
5950
5969
|
return {
|
|
5951
5970
|
...state,
|
|
5952
|
-
wallets:
|
|
5971
|
+
wallets: updatedWallets
|
|
5953
5972
|
};
|
|
5954
5973
|
});
|
|
5955
5974
|
}
|
|
5956
5975
|
function setActiveNetwork(store, { networkId }) {
|
|
5957
|
-
store.setState((state) => {
|
|
5958
|
-
|
|
5959
|
-
|
|
5960
|
-
|
|
5961
|
-
};
|
|
5962
|
-
});
|
|
5976
|
+
store.setState((state) => ({
|
|
5977
|
+
...state,
|
|
5978
|
+
activeNetwork: networkId
|
|
5979
|
+
}));
|
|
5963
5980
|
}
|
|
5964
5981
|
function isValidWalletId(walletId) {
|
|
5965
5982
|
return Object.values(WalletId).includes(walletId);
|