@0xsequence/provider 0.43.10 → 0.43.12

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.
@@ -3548,6 +3548,11 @@ class Wallet {
3548
3548
  this.closeWallet = () => {
3549
3549
  this.transport.messageProvider.closeWallet();
3550
3550
  };
3551
+ this.unregister = () => {
3552
+ var _this$transport$messa;
3553
+ this.disconnect();
3554
+ (_this$transport$messa = this.transport.messageProvider) == null ? void 0 : _this$transport$messa.unregister();
3555
+ };
3551
3556
  this.saveSession = async function (session) {
3552
3557
  utils.logger.debug('wallet provider: saving session');
3553
3558
  const data = JSON.stringify(session);
@@ -3802,13 +3807,18 @@ const DefaultProviderConfig = {
3802
3807
  };
3803
3808
  let walletInstance;
3804
3809
  const initWallet = async (network, config) => {
3805
- if (walletInstance && walletInstance.isOpened()) {
3806
- walletInstance.closeWallet();
3810
+ if (walletInstance) {
3811
+ return walletInstance;
3807
3812
  }
3808
3813
  walletInstance = new Wallet(network, config);
3809
3814
  await walletInstance.loadSession(network);
3810
3815
  return walletInstance;
3811
3816
  };
3817
+ const unregisterWallet = () => {
3818
+ if (!walletInstance) return;
3819
+ walletInstance.closeWallet();
3820
+ walletInstance.unregister();
3821
+ };
3812
3822
  const getWallet = () => {
3813
3823
  if (!walletInstance) {
3814
3824
  throw new Error('Wallet has not been initialized, call sequence.initWallet(network, config) first.');
@@ -3856,3 +3866,4 @@ exports.messageToBytes = messageToBytes;
3856
3866
  exports.nextMessageIdx = nextMessageIdx;
3857
3867
  exports.prefixEIP191Message = prefixEIP191Message;
3858
3868
  exports.recoverWalletConfig = recoverWalletConfig;
3869
+ exports.unregisterWallet = unregisterWallet;
@@ -3548,6 +3548,11 @@ class Wallet {
3548
3548
  this.closeWallet = () => {
3549
3549
  this.transport.messageProvider.closeWallet();
3550
3550
  };
3551
+ this.unregister = () => {
3552
+ var _this$transport$messa;
3553
+ this.disconnect();
3554
+ (_this$transport$messa = this.transport.messageProvider) == null ? void 0 : _this$transport$messa.unregister();
3555
+ };
3551
3556
  this.saveSession = async function (session) {
3552
3557
  utils.logger.debug('wallet provider: saving session');
3553
3558
  const data = JSON.stringify(session);
@@ -3802,13 +3807,18 @@ const DefaultProviderConfig = {
3802
3807
  };
3803
3808
  let walletInstance;
3804
3809
  const initWallet = async (network, config) => {
3805
- if (walletInstance && walletInstance.isOpened()) {
3806
- walletInstance.closeWallet();
3810
+ if (walletInstance) {
3811
+ return walletInstance;
3807
3812
  }
3808
3813
  walletInstance = new Wallet(network, config);
3809
3814
  await walletInstance.loadSession(network);
3810
3815
  return walletInstance;
3811
3816
  };
3817
+ const unregisterWallet = () => {
3818
+ if (!walletInstance) return;
3819
+ walletInstance.closeWallet();
3820
+ walletInstance.unregister();
3821
+ };
3812
3822
  const getWallet = () => {
3813
3823
  if (!walletInstance) {
3814
3824
  throw new Error('Wallet has not been initialized, call sequence.initWallet(network, config) first.');
@@ -3856,3 +3866,4 @@ exports.messageToBytes = messageToBytes;
3856
3866
  exports.nextMessageIdx = nextMessageIdx;
3857
3867
  exports.prefixEIP191Message = prefixEIP191Message;
3858
3868
  exports.recoverWalletConfig = recoverWalletConfig;
3869
+ exports.unregisterWallet = unregisterWallet;
@@ -3544,6 +3544,11 @@ class Wallet {
3544
3544
  this.closeWallet = () => {
3545
3545
  this.transport.messageProvider.closeWallet();
3546
3546
  };
3547
+ this.unregister = () => {
3548
+ var _this$transport$messa;
3549
+ this.disconnect();
3550
+ (_this$transport$messa = this.transport.messageProvider) == null ? void 0 : _this$transport$messa.unregister();
3551
+ };
3547
3552
  this.saveSession = async function (session) {
3548
3553
  logger.debug('wallet provider: saving session');
3549
3554
  const data = JSON.stringify(session);
@@ -3798,13 +3803,18 @@ const DefaultProviderConfig = {
3798
3803
  };
3799
3804
  let walletInstance;
3800
3805
  const initWallet = async (network, config) => {
3801
- if (walletInstance && walletInstance.isOpened()) {
3802
- walletInstance.closeWallet();
3806
+ if (walletInstance) {
3807
+ return walletInstance;
3803
3808
  }
3804
3809
  walletInstance = new Wallet(network, config);
3805
3810
  await walletInstance.loadSession(network);
3806
3811
  return walletInstance;
3807
3812
  };
3813
+ const unregisterWallet = () => {
3814
+ if (!walletInstance) return;
3815
+ walletInstance.closeWallet();
3816
+ walletInstance.unregister();
3817
+ };
3808
3818
  const getWallet = () => {
3809
3819
  if (!walletInstance) {
3810
3820
  throw new Error('Wallet has not been initialized, call sequence.initWallet(network, config) first.');
@@ -3812,4 +3822,4 @@ const getWallet = () => {
3812
3822
  return walletInstance;
3813
3823
  };
3814
3824
 
3815
- export { BaseInjectedTransport, BaseProviderTransport, BaseWalletTransport, CHANNEL_ID, DefaultProviderConfig, ErrSignedInRequired, EventType, ExtensionMessageHandler, ExtensionMessageProvider, InitState, LocalStorage, LocalStore, LocalWeb3Provider, MuxMessageProvider, OpenState, PROVIDER_OPEN_TIMEOUT, ProviderError, ProxyMessageChannel, ProxyMessageChannelPort, ProxyMessageHandler, ProxyMessageProvider, UnrealMessageHandler, UnrealMessageProvider, Wallet, WalletRequestHandler, Web3Provider, Web3Signer, WindowMessageHandler, WindowMessageProvider, WindowSessionParams, getWallet, initWallet, isBrowserExtension, isSequenceProvider, isUnityPlugin, isValidMessageSignature, isValidSignature, isValidTypedDataSignature, isWalletUpToDate, messageToBytes, nextMessageIdx, prefixEIP191Message, recoverWalletConfig };
3825
+ export { BaseInjectedTransport, BaseProviderTransport, BaseWalletTransport, CHANNEL_ID, DefaultProviderConfig, ErrSignedInRequired, EventType, ExtensionMessageHandler, ExtensionMessageProvider, InitState, LocalStorage, LocalStore, LocalWeb3Provider, MuxMessageProvider, OpenState, PROVIDER_OPEN_TIMEOUT, ProviderError, ProxyMessageChannel, ProxyMessageChannelPort, ProxyMessageHandler, ProxyMessageProvider, UnrealMessageHandler, UnrealMessageProvider, Wallet, WalletRequestHandler, Web3Provider, Web3Signer, WindowMessageHandler, WindowMessageProvider, WindowSessionParams, getWallet, initWallet, isBrowserExtension, isSequenceProvider, isUnityPlugin, isValidMessageSignature, isValidSignature, isValidTypedDataSignature, isWalletUpToDate, messageToBytes, nextMessageIdx, prefixEIP191Message, recoverWalletConfig, unregisterWallet };
@@ -71,6 +71,7 @@ export declare class Wallet implements WalletProvider {
71
71
  isDeployed(chainId?: ChainIdLike): Promise<boolean>;
72
72
  on<K extends keyof ProviderEventTypes>(event: K, fn: ProviderEventTypes[K]): void;
73
73
  once<K extends keyof ProviderEventTypes>(event: K, fn: ProviderEventTypes[K]): void;
74
+ unregister: () => void;
74
75
  private saveSession;
75
76
  private useSession;
76
77
  private useAccountAddress;
@@ -103,4 +104,5 @@ export interface ProviderConfig {
103
104
  }
104
105
  export declare const DefaultProviderConfig: ProviderConfig;
105
106
  export declare const initWallet: (network?: string | number, config?: Partial<ProviderConfig>) => Promise<Wallet>;
107
+ export declare const unregisterWallet: () => void;
106
108
  export declare const getWallet: () => Wallet;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@0xsequence/provider",
3
- "version": "0.43.10",
3
+ "version": "0.43.12",
4
4
  "description": "provider sub-package for Sequence",
5
5
  "repository": "https://github.com/0xsequence/sequence.js/tree/master/packages/provider",
6
6
  "source": "src/index.ts",
@@ -9,14 +9,14 @@
9
9
  "author": "Horizon Blockchain Games",
10
10
  "license": "Apache-2.0",
11
11
  "dependencies": {
12
- "@0xsequence/abi": "^0.43.10",
13
- "@0xsequence/auth": "^0.43.10",
14
- "@0xsequence/config": "^0.43.10",
15
- "@0xsequence/network": "^0.43.10",
16
- "@0xsequence/relayer": "^0.43.10",
17
- "@0xsequence/transactions": "^0.43.10",
18
- "@0xsequence/utils": "^0.43.10",
19
- "@0xsequence/wallet": "^0.43.10",
12
+ "@0xsequence/abi": "^0.43.12",
13
+ "@0xsequence/auth": "^0.43.12",
14
+ "@0xsequence/config": "^0.43.12",
15
+ "@0xsequence/network": "^0.43.12",
16
+ "@0xsequence/relayer": "^0.43.12",
17
+ "@0xsequence/transactions": "^0.43.12",
18
+ "@0xsequence/utils": "^0.43.12",
19
+ "@0xsequence/wallet": "^0.43.12",
20
20
  "eventemitter2": "^6.4.5",
21
21
  "webextension-polyfill": "^0.10.0"
22
22
  },
package/src/wallet.ts CHANGED
@@ -588,6 +588,11 @@ export class Wallet implements WalletProvider {
588
588
  this.transport.messageProvider!.once(event, fn)
589
589
  }
590
590
 
591
+ unregister = () => {
592
+ this.disconnect()
593
+ this.transport.messageProvider?.unregister()
594
+ }
595
+
591
596
  private saveSession = async (session: WalletSession) => {
592
597
  logger.debug('wallet provider: saving session')
593
598
  const data = JSON.stringify(session)
@@ -753,14 +758,20 @@ export const DefaultProviderConfig: ProviderConfig = {
753
758
  let walletInstance: Wallet | undefined
754
759
 
755
760
  export const initWallet = async (network?: string | number, config?: Partial<ProviderConfig>) => {
756
- if (walletInstance && walletInstance.isOpened()) {
757
- walletInstance.closeWallet()
761
+ if (walletInstance) {
762
+ return walletInstance
758
763
  }
759
764
  walletInstance = new Wallet(network, config)
760
765
  await walletInstance.loadSession(network)
761
766
  return walletInstance
762
767
  }
763
768
 
769
+ export const unregisterWallet = () => {
770
+ if (!walletInstance) return
771
+ walletInstance.closeWallet()
772
+ walletInstance.unregister()
773
+ }
774
+
764
775
  export const getWallet = () => {
765
776
  if (!walletInstance) {
766
777
  throw new Error('Wallet has not been initialized, call sequence.initWallet(network, config) first.')