@txnlab/use-wallet 3.1.4 → 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 +42 -35
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +42 -35
- 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;
|
|
@@ -5875,7 +5878,6 @@ var CustomWallet = class extends BaseWallet {
|
|
|
5875
5878
|
};
|
|
5876
5879
|
|
|
5877
5880
|
// src/store.ts
|
|
5878
|
-
var import_algosdk11 = require("algosdk");
|
|
5879
5881
|
var defaultState = {
|
|
5880
5882
|
wallets: {},
|
|
5881
5883
|
activeWallet: null,
|
|
@@ -5885,56 +5887,61 @@ var defaultState = {
|
|
|
5885
5887
|
var LOCAL_STORAGE_KEY = "@txnlab/use-wallet:v3";
|
|
5886
5888
|
function addWallet(store, { walletId, wallet }) {
|
|
5887
5889
|
store.setState((state) => {
|
|
5888
|
-
const
|
|
5890
|
+
const updatedWallets = {
|
|
5889
5891
|
...state.wallets,
|
|
5890
|
-
[walletId]:
|
|
5892
|
+
[walletId]: {
|
|
5893
|
+
accounts: wallet.accounts.map((account) => ({ ...account })),
|
|
5894
|
+
activeAccount: wallet.activeAccount ? { ...wallet.activeAccount } : null
|
|
5895
|
+
}
|
|
5891
5896
|
};
|
|
5892
5897
|
return {
|
|
5893
5898
|
...state,
|
|
5894
|
-
wallets:
|
|
5899
|
+
wallets: updatedWallets,
|
|
5895
5900
|
activeWallet: walletId
|
|
5896
5901
|
};
|
|
5897
5902
|
});
|
|
5898
5903
|
}
|
|
5899
5904
|
function removeWallet(store, { walletId }) {
|
|
5900
5905
|
store.setState((state) => {
|
|
5901
|
-
const
|
|
5902
|
-
delete
|
|
5906
|
+
const updatedWallets = { ...state.wallets };
|
|
5907
|
+
delete updatedWallets[walletId];
|
|
5903
5908
|
return {
|
|
5904
5909
|
...state,
|
|
5905
|
-
wallets:
|
|
5910
|
+
wallets: updatedWallets,
|
|
5906
5911
|
activeWallet: state.activeWallet === walletId ? null : state.activeWallet
|
|
5907
5912
|
};
|
|
5908
5913
|
});
|
|
5909
5914
|
}
|
|
5910
5915
|
function setActiveWallet(store, { walletId }) {
|
|
5911
|
-
store.setState((state) => {
|
|
5912
|
-
|
|
5913
|
-
|
|
5914
|
-
|
|
5915
|
-
};
|
|
5916
|
-
});
|
|
5916
|
+
store.setState((state) => ({
|
|
5917
|
+
...state,
|
|
5918
|
+
activeWallet: walletId
|
|
5919
|
+
}));
|
|
5917
5920
|
}
|
|
5918
5921
|
function setActiveAccount(store, { walletId, address }) {
|
|
5919
5922
|
store.setState((state) => {
|
|
5920
5923
|
const wallet = state.wallets[walletId];
|
|
5921
5924
|
if (!wallet) {
|
|
5925
|
+
console.warn(`Wallet with id "${walletId}" not found`);
|
|
5922
5926
|
return state;
|
|
5923
5927
|
}
|
|
5924
|
-
const
|
|
5925
|
-
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}"`);
|
|
5926
5931
|
return state;
|
|
5927
5932
|
}
|
|
5928
|
-
const
|
|
5933
|
+
const updatedWallet = {
|
|
5934
|
+
...wallet,
|
|
5935
|
+
accounts: wallet.accounts.map((account) => ({ ...account })),
|
|
5936
|
+
activeAccount: { ...newActiveAccount }
|
|
5937
|
+
};
|
|
5938
|
+
const updatedWallets = {
|
|
5929
5939
|
...state.wallets,
|
|
5930
|
-
[walletId]:
|
|
5931
|
-
...wallet,
|
|
5932
|
-
activeAccount
|
|
5933
|
-
}
|
|
5940
|
+
[walletId]: updatedWallet
|
|
5934
5941
|
};
|
|
5935
5942
|
return {
|
|
5936
5943
|
...state,
|
|
5937
|
-
wallets:
|
|
5944
|
+
wallets: updatedWallets
|
|
5938
5945
|
};
|
|
5939
5946
|
});
|
|
5940
5947
|
}
|
|
@@ -5942,34 +5949,34 @@ function setAccounts(store, { walletId, accounts }) {
|
|
|
5942
5949
|
store.setState((state) => {
|
|
5943
5950
|
const wallet = state.wallets[walletId];
|
|
5944
5951
|
if (!wallet) {
|
|
5952
|
+
console.warn(`Wallet with id "${walletId}" not found`);
|
|
5945
5953
|
return state;
|
|
5946
5954
|
}
|
|
5947
|
-
const
|
|
5955
|
+
const newAccounts = accounts.map((account) => ({ ...account }));
|
|
5956
|
+
const isActiveAccountConnected = newAccounts.some(
|
|
5948
5957
|
(account) => account.address === wallet.activeAccount?.address
|
|
5949
5958
|
);
|
|
5950
|
-
const
|
|
5951
|
-
const
|
|
5959
|
+
const newActiveAccount = isActiveAccountConnected ? { ...wallet.activeAccount } : newAccounts[0] || null;
|
|
5960
|
+
const updatedWallet = {
|
|
5952
5961
|
...wallet,
|
|
5953
|
-
accounts,
|
|
5954
|
-
activeAccount
|
|
5962
|
+
accounts: newAccounts,
|
|
5963
|
+
activeAccount: newActiveAccount
|
|
5955
5964
|
};
|
|
5956
|
-
const
|
|
5965
|
+
const updatedWallets = {
|
|
5957
5966
|
...state.wallets,
|
|
5958
|
-
[walletId]:
|
|
5967
|
+
[walletId]: updatedWallet
|
|
5959
5968
|
};
|
|
5960
5969
|
return {
|
|
5961
5970
|
...state,
|
|
5962
|
-
wallets:
|
|
5971
|
+
wallets: updatedWallets
|
|
5963
5972
|
};
|
|
5964
5973
|
});
|
|
5965
5974
|
}
|
|
5966
5975
|
function setActiveNetwork(store, { networkId }) {
|
|
5967
|
-
store.setState((state) => {
|
|
5968
|
-
|
|
5969
|
-
|
|
5970
|
-
|
|
5971
|
-
};
|
|
5972
|
-
});
|
|
5976
|
+
store.setState((state) => ({
|
|
5977
|
+
...state,
|
|
5978
|
+
activeNetwork: networkId
|
|
5979
|
+
}));
|
|
5973
5980
|
}
|
|
5974
5981
|
function isValidWalletId(walletId) {
|
|
5975
5982
|
return Object.values(WalletId).includes(walletId);
|