@xyo-network/metamask-connector 2.110.9 → 2.110.11

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.
@@ -1 +1 @@
1
- {"version":3,"file":"MetaMaskConnector.d.ts","sourceRoot":"","sources":["../../src/MetaMaskConnector.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAA;AAElD,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,OAAO,CAAK;IACpB,OAAO,CAAC,QAAQ,CAA4C;IAE5D,OAAO,CAAC,SAAS,CAAiB;IAClC,OAAO,CAAC,QAAQ,CAA6B;IAC7C,OAAO,CAAC,iBAAiB,CAA4C;gBAEzD,QAAQ,CAAC,EAAE,eAAe;IAQtC,IAAI,OAAO,kBAEV;IAED,IAAI,cAAc,kBAEjB;IAEK,aAAa;IAgBnB,mBAAmB;IAInB,mBAAmB,gBAMlB;IAQD,yBAAyB,CAAC,QAAQ,EAAE,QAAQ;IAK5C,sBAAsB,CAAC,QAAQ,EAAE,QAAQ;IAKzC,iBAAiB,CAAC,QAAQ,EAAE,QAAQ;IAKpC,oBAAoB,CAAC,QAAQ,EAAE,QAAQ;IAKvC,sBAAsB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ;IAKxD,uBAAuB;IAIjB,eAAe,IAAI,OAAO,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC;IAS3C,WAAW,CAAC,OAAO,EAAE,MAAM;IAajC,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAOvD,0BAA0B,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAOnE,2BAA2B,IAAI,IAAI;IAMnC,OAAO,CAAC,kBAAkB;CAG3B"}
1
+ {"version":3,"file":"MetaMaskConnector.d.ts","sourceRoot":"","sources":["../../src/MetaMaskConnector.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAA;AAElD,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,OAAO,CAAK;IACpB,OAAO,CAAC,QAAQ,CAA4C;IAE5D,OAAO,CAAC,SAAS,CAAiB;IAClC,OAAO,CAAC,QAAQ,CAA6B;IAC7C,OAAO,CAAC,iBAAiB,CAA4C;gBAEzD,QAAQ,CAAC,EAAE,eAAe;IAQtC,IAAI,OAAO,kBAEV;IAED,IAAI,cAAc,kBAEjB;IAEK,aAAa;IAgBnB,mBAAmB;IAInB,mBAAmB,gBAMlB;IAQD,yBAAyB,CAAC,QAAQ,EAAE,QAAQ;IAK5C,sBAAsB,CAAC,QAAQ,EAAE,QAAQ;IAKzC,iBAAiB,CAAC,QAAQ,EAAE,QAAQ;IAKpC,oBAAoB,CAAC,QAAQ,EAAE,QAAQ;IAKvC,sBAAsB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ;IAKxD,uBAAuB;IAIjB,eAAe,IAAI,OAAO,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC;IAS3C,WAAW,CAAC,OAAO,EAAE,MAAM;IAYjC,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAOvD,0BAA0B,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAOnE,2BAA2B,IAAI,IAAI;IAMnC,OAAO,CAAC,kBAAkB;CAG3B"}
@@ -1 +1 @@
1
- {"version":3,"file":"MetaMaskConnector.d.ts","sourceRoot":"","sources":["../../src/MetaMaskConnector.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAA;AAElD,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,OAAO,CAAK;IACpB,OAAO,CAAC,QAAQ,CAA4C;IAE5D,OAAO,CAAC,SAAS,CAAiB;IAClC,OAAO,CAAC,QAAQ,CAA6B;IAC7C,OAAO,CAAC,iBAAiB,CAA4C;gBAEzD,QAAQ,CAAC,EAAE,eAAe;IAQtC,IAAI,OAAO,kBAEV;IAED,IAAI,cAAc,kBAEjB;IAEK,aAAa;IAgBnB,mBAAmB;IAInB,mBAAmB,gBAMlB;IAQD,yBAAyB,CAAC,QAAQ,EAAE,QAAQ;IAK5C,sBAAsB,CAAC,QAAQ,EAAE,QAAQ;IAKzC,iBAAiB,CAAC,QAAQ,EAAE,QAAQ;IAKpC,oBAAoB,CAAC,QAAQ,EAAE,QAAQ;IAKvC,sBAAsB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ;IAKxD,uBAAuB;IAIjB,eAAe,IAAI,OAAO,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC;IAS3C,WAAW,CAAC,OAAO,EAAE,MAAM;IAajC,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAOvD,0BAA0B,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAOnE,2BAA2B,IAAI,IAAI;IAMnC,OAAO,CAAC,kBAAkB;CAG3B"}
1
+ {"version":3,"file":"MetaMaskConnector.d.ts","sourceRoot":"","sources":["../../src/MetaMaskConnector.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAA;AAElD,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,OAAO,CAAK;IACpB,OAAO,CAAC,QAAQ,CAA4C;IAE5D,OAAO,CAAC,SAAS,CAAiB;IAClC,OAAO,CAAC,QAAQ,CAA6B;IAC7C,OAAO,CAAC,iBAAiB,CAA4C;gBAEzD,QAAQ,CAAC,EAAE,eAAe;IAQtC,IAAI,OAAO,kBAEV;IAED,IAAI,cAAc,kBAEjB;IAEK,aAAa;IAgBnB,mBAAmB;IAInB,mBAAmB,gBAMlB;IAQD,yBAAyB,CAAC,QAAQ,EAAE,QAAQ;IAK5C,sBAAsB,CAAC,QAAQ,EAAE,QAAQ;IAKzC,iBAAiB,CAAC,QAAQ,EAAE,QAAQ;IAKpC,oBAAoB,CAAC,QAAQ,EAAE,QAAQ;IAKvC,sBAAsB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ;IAKxD,uBAAuB;IAIjB,eAAe,IAAI,OAAO,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC;IAS3C,WAAW,CAAC,OAAO,EAAE,MAAM;IAYjC,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAOvD,0BAA0B,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAOnE,2BAA2B,IAAI,IAAI;IAMnC,OAAO,CAAC,kBAAkB;CAG3B"}
@@ -1 +1 @@
1
- {"version":3,"file":"MetaMaskConnector.d.ts","sourceRoot":"","sources":["../../src/MetaMaskConnector.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAA;AAElD,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,OAAO,CAAK;IACpB,OAAO,CAAC,QAAQ,CAA4C;IAE5D,OAAO,CAAC,SAAS,CAAiB;IAClC,OAAO,CAAC,QAAQ,CAA6B;IAC7C,OAAO,CAAC,iBAAiB,CAA4C;gBAEzD,QAAQ,CAAC,EAAE,eAAe;IAQtC,IAAI,OAAO,kBAEV;IAED,IAAI,cAAc,kBAEjB;IAEK,aAAa;IAgBnB,mBAAmB;IAInB,mBAAmB,gBAMlB;IAQD,yBAAyB,CAAC,QAAQ,EAAE,QAAQ;IAK5C,sBAAsB,CAAC,QAAQ,EAAE,QAAQ;IAKzC,iBAAiB,CAAC,QAAQ,EAAE,QAAQ;IAKpC,oBAAoB,CAAC,QAAQ,EAAE,QAAQ;IAKvC,sBAAsB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ;IAKxD,uBAAuB;IAIjB,eAAe,IAAI,OAAO,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC;IAS3C,WAAW,CAAC,OAAO,EAAE,MAAM;IAajC,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAOvD,0BAA0B,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAOnE,2BAA2B,IAAI,IAAI;IAMnC,OAAO,CAAC,kBAAkB;CAG3B"}
1
+ {"version":3,"file":"MetaMaskConnector.d.ts","sourceRoot":"","sources":["../../src/MetaMaskConnector.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAA;AAElD,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,OAAO,CAAK;IACpB,OAAO,CAAC,QAAQ,CAA4C;IAE5D,OAAO,CAAC,SAAS,CAAiB;IAClC,OAAO,CAAC,QAAQ,CAA6B;IAC7C,OAAO,CAAC,iBAAiB,CAA4C;gBAEzD,QAAQ,CAAC,EAAE,eAAe;IAQtC,IAAI,OAAO,kBAEV;IAED,IAAI,cAAc,kBAEjB;IAEK,aAAa;IAgBnB,mBAAmB;IAInB,mBAAmB,gBAMlB;IAQD,yBAAyB,CAAC,QAAQ,EAAE,QAAQ;IAK5C,sBAAsB,CAAC,QAAQ,EAAE,QAAQ;IAKzC,iBAAiB,CAAC,QAAQ,EAAE,QAAQ;IAKpC,oBAAoB,CAAC,QAAQ,EAAE,QAAQ;IAKvC,sBAAsB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ;IAKxD,uBAAuB;IAIjB,eAAe,IAAI,OAAO,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC;IAS3C,WAAW,CAAC,OAAO,EAAE,MAAM;IAYjC,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAOvD,0BAA0B,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAOnE,2BAA2B,IAAI,IAAI;IAMnC,OAAO,CAAC,kBAAkB;CAG3B"}
@@ -3,7 +3,6 @@ var __defProp = Object.defineProperty;
3
3
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
4
  var __getOwnPropNames = Object.getOwnPropertyNames;
5
5
  var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
7
6
  var __export = (target, all) => {
8
7
  for (var name in all)
9
8
  __defProp(target, name, { get: all[name], enumerable: true });
@@ -29,9 +28,6 @@ module.exports = __toCommonJS(src_exports);
29
28
  var import_forget = require("@xylabs/forget");
30
29
  var import_ethers = require("ethers");
31
30
  var MetaMaskConnector = class {
32
- static {
33
- __name(this, "MetaMaskConnector");
34
- }
35
31
  account = "";
36
32
  ethereum = window.ethereum;
37
33
  listeners = [];
@@ -66,46 +62,34 @@ var MetaMaskConnector = class {
66
62
  isMetaMaskInstalled() {
67
63
  return this.ethereum && this.ethereum.isMetaMask;
68
64
  }
69
- isWalletIsConnected = /* @__PURE__ */ __name(() => {
65
+ isWalletIsConnected = () => {
70
66
  if (this.currentAccount) {
71
67
  console.log("Found an authorized account:", this.ethereum?.selectedAddress);
72
68
  return true;
73
69
  }
74
70
  return false;
75
- }, "isWalletIsConnected");
71
+ };
76
72
  /**
77
- * EIP-1193 Event Listeners
78
- *
79
- * .on in Web3Provider does not understand EIP-1193 events
80
- * see - https://github.com/ethers-io/ethers.js/discussions/1560#discussioncomment-730893
81
- */
73
+ * EIP-1193 Event Listeners
74
+ *
75
+ * .on in Web3Provider does not understand EIP-1193 events
76
+ * see - https://github.com/ethers-io/ethers.js/discussions/1560#discussioncomment-730893
77
+ */
82
78
  providerOnAccountsChanged(listener) {
83
79
  this.ethereum?.on("accountsChanged", listener);
84
- this.providerListeners.push([
85
- "accountsChanged",
86
- listener
87
- ]);
80
+ this.providerListeners.push(["accountsChanged", listener]);
88
81
  }
89
82
  providerOnChainChanged(listener) {
90
83
  this.ethereum?.on("chainChanged", listener);
91
- this.providerListeners.push([
92
- "chainChanged",
93
- listener
94
- ]);
84
+ this.providerListeners.push(["chainChanged", listener]);
95
85
  }
96
86
  providerOnConnect(listener) {
97
87
  this.ethereum?.on("connect", listener);
98
- this.providerListeners.push([
99
- "connect",
100
- listener
101
- ]);
88
+ this.providerListeners.push(["connect", listener]);
102
89
  }
103
90
  providerOnDisconnect(listener) {
104
91
  this.ethereum?.on("disconnect", listener);
105
- this.providerListeners.push([
106
- "disconnect",
107
- listener
108
- ]);
92
+ this.providerListeners.push(["disconnect", listener]);
109
93
  }
110
94
  providerRemoveListener(event, listener) {
111
95
  this.providerListeners = this.providerListeners.filter(([, savedListener]) => listener !== savedListener);
@@ -126,8 +110,7 @@ var MetaMaskConnector = class {
126
110
  }
127
111
  const signer = await this.provider.getSigner();
128
112
  await signer.getAddress();
129
- const signature = await signer.signMessage(message);
130
- return signature;
113
+ return await signer.signMessage(message);
131
114
  }
132
115
  /** Web3Provider Listeners - https://docs.ethers.org/v5/api/providers/provider/#Provider--events */
133
116
  web3ProviderOn(event, listener) {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/index.ts","../../src/MetaMaskConnector.ts"],"sourcesContent":["export * from './MetaMaskConnector.js'\n","import { MetaMaskInpageProvider } from '@metamask/providers'\nimport { forget } from '@xylabs/forget'\nimport { BrowserProvider, Listener } from 'ethers'\n\nexport class MetaMaskConnector {\n private account = ''\n private ethereum = window.ethereum as MetaMaskInpageProvider\n\n private listeners: Listener[] = []\n private provider: BrowserProvider | undefined\n private providerListeners: [event: string, listener: Listener][] = []\n\n constructor(provider?: BrowserProvider) {\n if (provider) {\n this.provider = provider\n } else if (this.ethereum) {\n this.provider = new BrowserProvider(window.ethereum)\n }\n }\n\n get chainId() {\n return this.ethereum?.networkVersion\n }\n\n get currentAccount() {\n return this.ethereum?.selectedAddress\n }\n\n async connectWallet() {\n if (!this.provider) {\n this.logProviderMissing()\n return\n }\n\n const accounts = await this.provider.send('eth_requestAccounts', [])\n // We could have multiple accounts. Check for one.\n if (accounts.length > 0) {\n this.account = accounts[0]\n console.log('Connected:', this.account)\n } else {\n console.log('No authorized account found.')\n }\n }\n\n isMetaMaskInstalled() {\n return this.ethereum && this.ethereum.isMetaMask\n }\n\n isWalletIsConnected = () => {\n if (this.currentAccount) {\n console.log('Found an authorized account:', this.ethereum?.selectedAddress)\n return true\n }\n return false\n }\n\n /**\n * EIP-1193 Event Listeners\n *\n * .on in Web3Provider does not understand EIP-1193 events\n * see - https://github.com/ethers-io/ethers.js/discussions/1560#discussioncomment-730893\n */\n providerOnAccountsChanged(listener: Listener) {\n this.ethereum?.on('accountsChanged', listener)\n this.providerListeners.push(['accountsChanged', listener])\n }\n\n providerOnChainChanged(listener: Listener) {\n this.ethereum?.on('chainChanged', listener)\n this.providerListeners.push(['chainChanged', listener])\n }\n\n providerOnConnect(listener: Listener) {\n this.ethereum?.on('connect', listener)\n this.providerListeners.push(['connect', listener])\n }\n\n providerOnDisconnect(listener: Listener) {\n this.ethereum?.on('disconnect', listener)\n this.providerListeners.push(['disconnect', listener])\n }\n\n providerRemoveListener(event: string, listener: Listener) {\n //this.ethereum?.removeListener(event, listener)\n this.providerListeners = this.providerListeners.filter(([, savedListener]) => listener !== savedListener)\n }\n\n providerRemoveListeners() {\n //for (const [event, listener] of this.providerListeners) this.ethereum?.removeListener(event, listener)\n }\n\n async requestAccounts(): Promise<string[] | null> {\n if (!this.provider) {\n this.logProviderMissing()\n return null\n }\n\n return await this.provider.send('eth_requestAccounts', [])\n }\n\n async signMessage(message: string) {\n if (!this.provider) {\n this.logProviderMissing()\n return\n }\n\n const signer = await this.provider.getSigner()\n await signer.getAddress()\n const signature = await signer.signMessage(message)\n return signature\n }\n\n /** Web3Provider Listeners - https://docs.ethers.org/v5/api/providers/provider/#Provider--events */\n web3ProviderOn(event: string, listener: Listener): void {\n if (this.provider) {\n forget(this.provider.on(event, listener))\n }\n this.listeners.push(listener)\n }\n\n web3ProviderRemoveListener(event: string, listener: Listener): void {\n if (this.provider) {\n forget(this.provider.removeListener(event, listener))\n }\n this.listeners = this.listeners.filter((savedListener) => listener !== savedListener)\n }\n\n web3ProviderRemoveListeners(): void {\n if (this.provider) {\n forget(this.provider.removeAllListeners())\n }\n }\n\n private logProviderMissing(): void {\n console.warn('Cannot call this method because there is no web3 provider connected. Please confirm that metamask is installed')\n }\n}\n"],"mappings":"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","names":["MetaMaskConnector","account","ethereum","window","listeners","provider","providerListeners","constructor","BrowserProvider","chainId","networkVersion","currentAccount","selectedAddress","connectWallet","logProviderMissing","accounts","send","length","console","log","isMetaMaskInstalled","isMetaMask","isWalletIsConnected","providerOnAccountsChanged","listener","on","push","providerOnChainChanged","providerOnConnect","providerOnDisconnect","providerRemoveListener","event","filter","savedListener","providerRemoveListeners","requestAccounts","signMessage","message","signer","getSigner","getAddress","signature","web3ProviderOn","forget","web3ProviderRemoveListener","removeListener","web3ProviderRemoveListeners","removeAllListeners","warn"]}
1
+ {"version":3,"sources":["../../src/index.ts","../../src/MetaMaskConnector.ts"],"sourcesContent":["export * from './MetaMaskConnector.js'\n","import { MetaMaskInpageProvider } from '@metamask/providers'\nimport { forget } from '@xylabs/forget'\nimport { BrowserProvider, Listener } from 'ethers'\n\nexport class MetaMaskConnector {\n private account = ''\n private ethereum = window.ethereum as MetaMaskInpageProvider\n\n private listeners: Listener[] = []\n private provider: BrowserProvider | undefined\n private providerListeners: [event: string, listener: Listener][] = []\n\n constructor(provider?: BrowserProvider) {\n if (provider) {\n this.provider = provider\n } else if (this.ethereum) {\n this.provider = new BrowserProvider(window.ethereum)\n }\n }\n\n get chainId() {\n return this.ethereum?.networkVersion\n }\n\n get currentAccount() {\n return this.ethereum?.selectedAddress\n }\n\n async connectWallet() {\n if (!this.provider) {\n this.logProviderMissing()\n return\n }\n\n const accounts = await this.provider.send('eth_requestAccounts', [])\n // We could have multiple accounts. Check for one.\n if (accounts.length > 0) {\n this.account = accounts[0]\n console.log('Connected:', this.account)\n } else {\n console.log('No authorized account found.')\n }\n }\n\n isMetaMaskInstalled() {\n return this.ethereum && this.ethereum.isMetaMask\n }\n\n isWalletIsConnected = () => {\n if (this.currentAccount) {\n console.log('Found an authorized account:', this.ethereum?.selectedAddress)\n return true\n }\n return false\n }\n\n /**\n * EIP-1193 Event Listeners\n *\n * .on in Web3Provider does not understand EIP-1193 events\n * see - https://github.com/ethers-io/ethers.js/discussions/1560#discussioncomment-730893\n */\n providerOnAccountsChanged(listener: Listener) {\n this.ethereum?.on('accountsChanged', listener)\n this.providerListeners.push(['accountsChanged', listener])\n }\n\n providerOnChainChanged(listener: Listener) {\n this.ethereum?.on('chainChanged', listener)\n this.providerListeners.push(['chainChanged', listener])\n }\n\n providerOnConnect(listener: Listener) {\n this.ethereum?.on('connect', listener)\n this.providerListeners.push(['connect', listener])\n }\n\n providerOnDisconnect(listener: Listener) {\n this.ethereum?.on('disconnect', listener)\n this.providerListeners.push(['disconnect', listener])\n }\n\n providerRemoveListener(event: string, listener: Listener) {\n //this.ethereum?.removeListener(event, listener)\n this.providerListeners = this.providerListeners.filter(([, savedListener]) => listener !== savedListener)\n }\n\n providerRemoveListeners() {\n //for (const [event, listener] of this.providerListeners) this.ethereum?.removeListener(event, listener)\n }\n\n async requestAccounts(): Promise<string[] | null> {\n if (!this.provider) {\n this.logProviderMissing()\n return null\n }\n\n return await this.provider.send('eth_requestAccounts', [])\n }\n\n async signMessage(message: string) {\n if (!this.provider) {\n this.logProviderMissing()\n return\n }\n\n const signer = await this.provider.getSigner()\n await signer.getAddress()\n return await signer.signMessage(message)\n }\n\n /** Web3Provider Listeners - https://docs.ethers.org/v5/api/providers/provider/#Provider--events */\n web3ProviderOn(event: string, listener: Listener): void {\n if (this.provider) {\n forget(this.provider.on(event, listener))\n }\n this.listeners.push(listener)\n }\n\n web3ProviderRemoveListener(event: string, listener: Listener): void {\n if (this.provider) {\n forget(this.provider.removeListener(event, listener))\n }\n this.listeners = this.listeners.filter((savedListener) => listener !== savedListener)\n }\n\n web3ProviderRemoveListeners(): void {\n if (this.provider) {\n forget(this.provider.removeAllListeners())\n }\n }\n\n private logProviderMissing(): void {\n console.warn('Cannot call this method because there is no web3 provider connected. Please confirm that metamask is installed')\n }\n}\n"],"mappings":"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","names":[]}
@@ -1,13 +1,7 @@
1
- var __defProp = Object.defineProperty;
2
- var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
-
4
1
  // src/MetaMaskConnector.ts
5
2
  import { forget } from "@xylabs/forget";
6
3
  import { BrowserProvider } from "ethers";
7
4
  var MetaMaskConnector = class {
8
- static {
9
- __name(this, "MetaMaskConnector");
10
- }
11
5
  account = "";
12
6
  ethereum = window.ethereum;
13
7
  listeners = [];
@@ -42,46 +36,34 @@ var MetaMaskConnector = class {
42
36
  isMetaMaskInstalled() {
43
37
  return this.ethereum && this.ethereum.isMetaMask;
44
38
  }
45
- isWalletIsConnected = /* @__PURE__ */ __name(() => {
39
+ isWalletIsConnected = () => {
46
40
  if (this.currentAccount) {
47
41
  console.log("Found an authorized account:", this.ethereum?.selectedAddress);
48
42
  return true;
49
43
  }
50
44
  return false;
51
- }, "isWalletIsConnected");
45
+ };
52
46
  /**
53
- * EIP-1193 Event Listeners
54
- *
55
- * .on in Web3Provider does not understand EIP-1193 events
56
- * see - https://github.com/ethers-io/ethers.js/discussions/1560#discussioncomment-730893
57
- */
47
+ * EIP-1193 Event Listeners
48
+ *
49
+ * .on in Web3Provider does not understand EIP-1193 events
50
+ * see - https://github.com/ethers-io/ethers.js/discussions/1560#discussioncomment-730893
51
+ */
58
52
  providerOnAccountsChanged(listener) {
59
53
  this.ethereum?.on("accountsChanged", listener);
60
- this.providerListeners.push([
61
- "accountsChanged",
62
- listener
63
- ]);
54
+ this.providerListeners.push(["accountsChanged", listener]);
64
55
  }
65
56
  providerOnChainChanged(listener) {
66
57
  this.ethereum?.on("chainChanged", listener);
67
- this.providerListeners.push([
68
- "chainChanged",
69
- listener
70
- ]);
58
+ this.providerListeners.push(["chainChanged", listener]);
71
59
  }
72
60
  providerOnConnect(listener) {
73
61
  this.ethereum?.on("connect", listener);
74
- this.providerListeners.push([
75
- "connect",
76
- listener
77
- ]);
62
+ this.providerListeners.push(["connect", listener]);
78
63
  }
79
64
  providerOnDisconnect(listener) {
80
65
  this.ethereum?.on("disconnect", listener);
81
- this.providerListeners.push([
82
- "disconnect",
83
- listener
84
- ]);
66
+ this.providerListeners.push(["disconnect", listener]);
85
67
  }
86
68
  providerRemoveListener(event, listener) {
87
69
  this.providerListeners = this.providerListeners.filter(([, savedListener]) => listener !== savedListener);
@@ -102,8 +84,7 @@ var MetaMaskConnector = class {
102
84
  }
103
85
  const signer = await this.provider.getSigner();
104
86
  await signer.getAddress();
105
- const signature = await signer.signMessage(message);
106
- return signature;
87
+ return await signer.signMessage(message);
107
88
  }
108
89
  /** Web3Provider Listeners - https://docs.ethers.org/v5/api/providers/provider/#Provider--events */
109
90
  web3ProviderOn(event, listener) {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/MetaMaskConnector.ts"],"sourcesContent":["import { MetaMaskInpageProvider } from '@metamask/providers'\nimport { forget } from '@xylabs/forget'\nimport { BrowserProvider, Listener } from 'ethers'\n\nexport class MetaMaskConnector {\n private account = ''\n private ethereum = window.ethereum as MetaMaskInpageProvider\n\n private listeners: Listener[] = []\n private provider: BrowserProvider | undefined\n private providerListeners: [event: string, listener: Listener][] = []\n\n constructor(provider?: BrowserProvider) {\n if (provider) {\n this.provider = provider\n } else if (this.ethereum) {\n this.provider = new BrowserProvider(window.ethereum)\n }\n }\n\n get chainId() {\n return this.ethereum?.networkVersion\n }\n\n get currentAccount() {\n return this.ethereum?.selectedAddress\n }\n\n async connectWallet() {\n if (!this.provider) {\n this.logProviderMissing()\n return\n }\n\n const accounts = await this.provider.send('eth_requestAccounts', [])\n // We could have multiple accounts. Check for one.\n if (accounts.length > 0) {\n this.account = accounts[0]\n console.log('Connected:', this.account)\n } else {\n console.log('No authorized account found.')\n }\n }\n\n isMetaMaskInstalled() {\n return this.ethereum && this.ethereum.isMetaMask\n }\n\n isWalletIsConnected = () => {\n if (this.currentAccount) {\n console.log('Found an authorized account:', this.ethereum?.selectedAddress)\n return true\n }\n return false\n }\n\n /**\n * EIP-1193 Event Listeners\n *\n * .on in Web3Provider does not understand EIP-1193 events\n * see - https://github.com/ethers-io/ethers.js/discussions/1560#discussioncomment-730893\n */\n providerOnAccountsChanged(listener: Listener) {\n this.ethereum?.on('accountsChanged', listener)\n this.providerListeners.push(['accountsChanged', listener])\n }\n\n providerOnChainChanged(listener: Listener) {\n this.ethereum?.on('chainChanged', listener)\n this.providerListeners.push(['chainChanged', listener])\n }\n\n providerOnConnect(listener: Listener) {\n this.ethereum?.on('connect', listener)\n this.providerListeners.push(['connect', listener])\n }\n\n providerOnDisconnect(listener: Listener) {\n this.ethereum?.on('disconnect', listener)\n this.providerListeners.push(['disconnect', listener])\n }\n\n providerRemoveListener(event: string, listener: Listener) {\n //this.ethereum?.removeListener(event, listener)\n this.providerListeners = this.providerListeners.filter(([, savedListener]) => listener !== savedListener)\n }\n\n providerRemoveListeners() {\n //for (const [event, listener] of this.providerListeners) this.ethereum?.removeListener(event, listener)\n }\n\n async requestAccounts(): Promise<string[] | null> {\n if (!this.provider) {\n this.logProviderMissing()\n return null\n }\n\n return await this.provider.send('eth_requestAccounts', [])\n }\n\n async signMessage(message: string) {\n if (!this.provider) {\n this.logProviderMissing()\n return\n }\n\n const signer = await this.provider.getSigner()\n await signer.getAddress()\n const signature = await signer.signMessage(message)\n return signature\n }\n\n /** Web3Provider Listeners - https://docs.ethers.org/v5/api/providers/provider/#Provider--events */\n web3ProviderOn(event: string, listener: Listener): void {\n if (this.provider) {\n forget(this.provider.on(event, listener))\n }\n this.listeners.push(listener)\n }\n\n web3ProviderRemoveListener(event: string, listener: Listener): void {\n if (this.provider) {\n forget(this.provider.removeListener(event, listener))\n }\n this.listeners = this.listeners.filter((savedListener) => listener !== savedListener)\n }\n\n web3ProviderRemoveListeners(): void {\n if (this.provider) {\n forget(this.provider.removeAllListeners())\n }\n }\n\n private logProviderMissing(): void {\n console.warn('Cannot call this method because there is no web3 provider connected. Please confirm that metamask is installed')\n }\n}\n"],"mappings":"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","names":["forget","BrowserProvider","MetaMaskConnector","account","ethereum","window","listeners","provider","providerListeners","constructor","BrowserProvider","chainId","networkVersion","currentAccount","selectedAddress","connectWallet","logProviderMissing","accounts","send","length","console","log","isMetaMaskInstalled","isMetaMask","isWalletIsConnected","providerOnAccountsChanged","listener","on","push","providerOnChainChanged","providerOnConnect","providerOnDisconnect","providerRemoveListener","event","filter","savedListener","providerRemoveListeners","requestAccounts","signMessage","message","signer","getSigner","getAddress","signature","web3ProviderOn","forget","web3ProviderRemoveListener","removeListener","web3ProviderRemoveListeners","removeAllListeners","warn"]}
1
+ {"version":3,"sources":["../../src/MetaMaskConnector.ts"],"sourcesContent":["import { MetaMaskInpageProvider } from '@metamask/providers'\nimport { forget } from '@xylabs/forget'\nimport { BrowserProvider, Listener } from 'ethers'\n\nexport class MetaMaskConnector {\n private account = ''\n private ethereum = window.ethereum as MetaMaskInpageProvider\n\n private listeners: Listener[] = []\n private provider: BrowserProvider | undefined\n private providerListeners: [event: string, listener: Listener][] = []\n\n constructor(provider?: BrowserProvider) {\n if (provider) {\n this.provider = provider\n } else if (this.ethereum) {\n this.provider = new BrowserProvider(window.ethereum)\n }\n }\n\n get chainId() {\n return this.ethereum?.networkVersion\n }\n\n get currentAccount() {\n return this.ethereum?.selectedAddress\n }\n\n async connectWallet() {\n if (!this.provider) {\n this.logProviderMissing()\n return\n }\n\n const accounts = await this.provider.send('eth_requestAccounts', [])\n // We could have multiple accounts. Check for one.\n if (accounts.length > 0) {\n this.account = accounts[0]\n console.log('Connected:', this.account)\n } else {\n console.log('No authorized account found.')\n }\n }\n\n isMetaMaskInstalled() {\n return this.ethereum && this.ethereum.isMetaMask\n }\n\n isWalletIsConnected = () => {\n if (this.currentAccount) {\n console.log('Found an authorized account:', this.ethereum?.selectedAddress)\n return true\n }\n return false\n }\n\n /**\n * EIP-1193 Event Listeners\n *\n * .on in Web3Provider does not understand EIP-1193 events\n * see - https://github.com/ethers-io/ethers.js/discussions/1560#discussioncomment-730893\n */\n providerOnAccountsChanged(listener: Listener) {\n this.ethereum?.on('accountsChanged', listener)\n this.providerListeners.push(['accountsChanged', listener])\n }\n\n providerOnChainChanged(listener: Listener) {\n this.ethereum?.on('chainChanged', listener)\n this.providerListeners.push(['chainChanged', listener])\n }\n\n providerOnConnect(listener: Listener) {\n this.ethereum?.on('connect', listener)\n this.providerListeners.push(['connect', listener])\n }\n\n providerOnDisconnect(listener: Listener) {\n this.ethereum?.on('disconnect', listener)\n this.providerListeners.push(['disconnect', listener])\n }\n\n providerRemoveListener(event: string, listener: Listener) {\n //this.ethereum?.removeListener(event, listener)\n this.providerListeners = this.providerListeners.filter(([, savedListener]) => listener !== savedListener)\n }\n\n providerRemoveListeners() {\n //for (const [event, listener] of this.providerListeners) this.ethereum?.removeListener(event, listener)\n }\n\n async requestAccounts(): Promise<string[] | null> {\n if (!this.provider) {\n this.logProviderMissing()\n return null\n }\n\n return await this.provider.send('eth_requestAccounts', [])\n }\n\n async signMessage(message: string) {\n if (!this.provider) {\n this.logProviderMissing()\n return\n }\n\n const signer = await this.provider.getSigner()\n await signer.getAddress()\n return await signer.signMessage(message)\n }\n\n /** Web3Provider Listeners - https://docs.ethers.org/v5/api/providers/provider/#Provider--events */\n web3ProviderOn(event: string, listener: Listener): void {\n if (this.provider) {\n forget(this.provider.on(event, listener))\n }\n this.listeners.push(listener)\n }\n\n web3ProviderRemoveListener(event: string, listener: Listener): void {\n if (this.provider) {\n forget(this.provider.removeListener(event, listener))\n }\n this.listeners = this.listeners.filter((savedListener) => listener !== savedListener)\n }\n\n web3ProviderRemoveListeners(): void {\n if (this.provider) {\n forget(this.provider.removeAllListeners())\n }\n }\n\n private logProviderMissing(): void {\n console.warn('Cannot call this method because there is no web3 provider connected. Please confirm that metamask is installed')\n }\n}\n"],"mappings":"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","names":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"MetaMaskConnector.d.ts","sourceRoot":"","sources":["../../src/MetaMaskConnector.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAA;AAElD,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,OAAO,CAAK;IACpB,OAAO,CAAC,QAAQ,CAA4C;IAE5D,OAAO,CAAC,SAAS,CAAiB;IAClC,OAAO,CAAC,QAAQ,CAA6B;IAC7C,OAAO,CAAC,iBAAiB,CAA4C;gBAEzD,QAAQ,CAAC,EAAE,eAAe;IAQtC,IAAI,OAAO,kBAEV;IAED,IAAI,cAAc,kBAEjB;IAEK,aAAa;IAgBnB,mBAAmB;IAInB,mBAAmB,gBAMlB;IAQD,yBAAyB,CAAC,QAAQ,EAAE,QAAQ;IAK5C,sBAAsB,CAAC,QAAQ,EAAE,QAAQ;IAKzC,iBAAiB,CAAC,QAAQ,EAAE,QAAQ;IAKpC,oBAAoB,CAAC,QAAQ,EAAE,QAAQ;IAKvC,sBAAsB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ;IAKxD,uBAAuB;IAIjB,eAAe,IAAI,OAAO,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC;IAS3C,WAAW,CAAC,OAAO,EAAE,MAAM;IAajC,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAOvD,0BAA0B,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAOnE,2BAA2B,IAAI,IAAI;IAMnC,OAAO,CAAC,kBAAkB;CAG3B"}
1
+ {"version":3,"file":"MetaMaskConnector.d.ts","sourceRoot":"","sources":["../../src/MetaMaskConnector.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAA;AAElD,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,OAAO,CAAK;IACpB,OAAO,CAAC,QAAQ,CAA4C;IAE5D,OAAO,CAAC,SAAS,CAAiB;IAClC,OAAO,CAAC,QAAQ,CAA6B;IAC7C,OAAO,CAAC,iBAAiB,CAA4C;gBAEzD,QAAQ,CAAC,EAAE,eAAe;IAQtC,IAAI,OAAO,kBAEV;IAED,IAAI,cAAc,kBAEjB;IAEK,aAAa;IAgBnB,mBAAmB;IAInB,mBAAmB,gBAMlB;IAQD,yBAAyB,CAAC,QAAQ,EAAE,QAAQ;IAK5C,sBAAsB,CAAC,QAAQ,EAAE,QAAQ;IAKzC,iBAAiB,CAAC,QAAQ,EAAE,QAAQ;IAKpC,oBAAoB,CAAC,QAAQ,EAAE,QAAQ;IAKvC,sBAAsB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ;IAKxD,uBAAuB;IAIjB,eAAe,IAAI,OAAO,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC;IAS3C,WAAW,CAAC,OAAO,EAAE,MAAM;IAYjC,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAOvD,0BAA0B,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAOnE,2BAA2B,IAAI,IAAI;IAMnC,OAAO,CAAC,kBAAkB;CAG3B"}
@@ -1 +1 @@
1
- {"version":3,"file":"MetaMaskConnector.d.ts","sourceRoot":"","sources":["../../src/MetaMaskConnector.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAA;AAElD,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,OAAO,CAAK;IACpB,OAAO,CAAC,QAAQ,CAA4C;IAE5D,OAAO,CAAC,SAAS,CAAiB;IAClC,OAAO,CAAC,QAAQ,CAA6B;IAC7C,OAAO,CAAC,iBAAiB,CAA4C;gBAEzD,QAAQ,CAAC,EAAE,eAAe;IAQtC,IAAI,OAAO,kBAEV;IAED,IAAI,cAAc,kBAEjB;IAEK,aAAa;IAgBnB,mBAAmB;IAInB,mBAAmB,gBAMlB;IAQD,yBAAyB,CAAC,QAAQ,EAAE,QAAQ;IAK5C,sBAAsB,CAAC,QAAQ,EAAE,QAAQ;IAKzC,iBAAiB,CAAC,QAAQ,EAAE,QAAQ;IAKpC,oBAAoB,CAAC,QAAQ,EAAE,QAAQ;IAKvC,sBAAsB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ;IAKxD,uBAAuB;IAIjB,eAAe,IAAI,OAAO,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC;IAS3C,WAAW,CAAC,OAAO,EAAE,MAAM;IAajC,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAOvD,0BAA0B,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAOnE,2BAA2B,IAAI,IAAI;IAMnC,OAAO,CAAC,kBAAkB;CAG3B"}
1
+ {"version":3,"file":"MetaMaskConnector.d.ts","sourceRoot":"","sources":["../../src/MetaMaskConnector.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAA;AAElD,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,OAAO,CAAK;IACpB,OAAO,CAAC,QAAQ,CAA4C;IAE5D,OAAO,CAAC,SAAS,CAAiB;IAClC,OAAO,CAAC,QAAQ,CAA6B;IAC7C,OAAO,CAAC,iBAAiB,CAA4C;gBAEzD,QAAQ,CAAC,EAAE,eAAe;IAQtC,IAAI,OAAO,kBAEV;IAED,IAAI,cAAc,kBAEjB;IAEK,aAAa;IAgBnB,mBAAmB;IAInB,mBAAmB,gBAMlB;IAQD,yBAAyB,CAAC,QAAQ,EAAE,QAAQ;IAK5C,sBAAsB,CAAC,QAAQ,EAAE,QAAQ;IAKzC,iBAAiB,CAAC,QAAQ,EAAE,QAAQ;IAKpC,oBAAoB,CAAC,QAAQ,EAAE,QAAQ;IAKvC,sBAAsB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ;IAKxD,uBAAuB;IAIjB,eAAe,IAAI,OAAO,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC;IAS3C,WAAW,CAAC,OAAO,EAAE,MAAM;IAYjC,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAOvD,0BAA0B,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAOnE,2BAA2B,IAAI,IAAI;IAMnC,OAAO,CAAC,kBAAkB;CAG3B"}
@@ -1 +1 @@
1
- {"version":3,"file":"MetaMaskConnector.d.ts","sourceRoot":"","sources":["../../src/MetaMaskConnector.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAA;AAElD,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,OAAO,CAAK;IACpB,OAAO,CAAC,QAAQ,CAA4C;IAE5D,OAAO,CAAC,SAAS,CAAiB;IAClC,OAAO,CAAC,QAAQ,CAA6B;IAC7C,OAAO,CAAC,iBAAiB,CAA4C;gBAEzD,QAAQ,CAAC,EAAE,eAAe;IAQtC,IAAI,OAAO,kBAEV;IAED,IAAI,cAAc,kBAEjB;IAEK,aAAa;IAgBnB,mBAAmB;IAInB,mBAAmB,gBAMlB;IAQD,yBAAyB,CAAC,QAAQ,EAAE,QAAQ;IAK5C,sBAAsB,CAAC,QAAQ,EAAE,QAAQ;IAKzC,iBAAiB,CAAC,QAAQ,EAAE,QAAQ;IAKpC,oBAAoB,CAAC,QAAQ,EAAE,QAAQ;IAKvC,sBAAsB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ;IAKxD,uBAAuB;IAIjB,eAAe,IAAI,OAAO,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC;IAS3C,WAAW,CAAC,OAAO,EAAE,MAAM;IAajC,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAOvD,0BAA0B,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAOnE,2BAA2B,IAAI,IAAI;IAMnC,OAAO,CAAC,kBAAkB;CAG3B"}
1
+ {"version":3,"file":"MetaMaskConnector.d.ts","sourceRoot":"","sources":["../../src/MetaMaskConnector.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAA;AAElD,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,OAAO,CAAK;IACpB,OAAO,CAAC,QAAQ,CAA4C;IAE5D,OAAO,CAAC,SAAS,CAAiB;IAClC,OAAO,CAAC,QAAQ,CAA6B;IAC7C,OAAO,CAAC,iBAAiB,CAA4C;gBAEzD,QAAQ,CAAC,EAAE,eAAe;IAQtC,IAAI,OAAO,kBAEV;IAED,IAAI,cAAc,kBAEjB;IAEK,aAAa;IAgBnB,mBAAmB;IAInB,mBAAmB,gBAMlB;IAQD,yBAAyB,CAAC,QAAQ,EAAE,QAAQ;IAK5C,sBAAsB,CAAC,QAAQ,EAAE,QAAQ;IAKzC,iBAAiB,CAAC,QAAQ,EAAE,QAAQ;IAKpC,oBAAoB,CAAC,QAAQ,EAAE,QAAQ;IAKvC,sBAAsB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ;IAKxD,uBAAuB;IAIjB,eAAe,IAAI,OAAO,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC;IAS3C,WAAW,CAAC,OAAO,EAAE,MAAM;IAYjC,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAOvD,0BAA0B,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAOnE,2BAA2B,IAAI,IAAI;IAMnC,OAAO,CAAC,kBAAkB;CAG3B"}
@@ -3,7 +3,6 @@ var __defProp = Object.defineProperty;
3
3
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
4
  var __getOwnPropNames = Object.getOwnPropertyNames;
5
5
  var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
7
6
  var __export = (target, all) => {
8
7
  for (var name in all)
9
8
  __defProp(target, name, { get: all[name], enumerable: true });
@@ -29,9 +28,6 @@ module.exports = __toCommonJS(src_exports);
29
28
  var import_forget = require("@xylabs/forget");
30
29
  var import_ethers = require("ethers");
31
30
  var MetaMaskConnector = class {
32
- static {
33
- __name(this, "MetaMaskConnector");
34
- }
35
31
  account = "";
36
32
  ethereum = window.ethereum;
37
33
  listeners = [];
@@ -66,46 +62,34 @@ var MetaMaskConnector = class {
66
62
  isMetaMaskInstalled() {
67
63
  return this.ethereum && this.ethereum.isMetaMask;
68
64
  }
69
- isWalletIsConnected = /* @__PURE__ */ __name(() => {
65
+ isWalletIsConnected = () => {
70
66
  if (this.currentAccount) {
71
67
  console.log("Found an authorized account:", this.ethereum?.selectedAddress);
72
68
  return true;
73
69
  }
74
70
  return false;
75
- }, "isWalletIsConnected");
71
+ };
76
72
  /**
77
- * EIP-1193 Event Listeners
78
- *
79
- * .on in Web3Provider does not understand EIP-1193 events
80
- * see - https://github.com/ethers-io/ethers.js/discussions/1560#discussioncomment-730893
81
- */
73
+ * EIP-1193 Event Listeners
74
+ *
75
+ * .on in Web3Provider does not understand EIP-1193 events
76
+ * see - https://github.com/ethers-io/ethers.js/discussions/1560#discussioncomment-730893
77
+ */
82
78
  providerOnAccountsChanged(listener) {
83
79
  this.ethereum?.on("accountsChanged", listener);
84
- this.providerListeners.push([
85
- "accountsChanged",
86
- listener
87
- ]);
80
+ this.providerListeners.push(["accountsChanged", listener]);
88
81
  }
89
82
  providerOnChainChanged(listener) {
90
83
  this.ethereum?.on("chainChanged", listener);
91
- this.providerListeners.push([
92
- "chainChanged",
93
- listener
94
- ]);
84
+ this.providerListeners.push(["chainChanged", listener]);
95
85
  }
96
86
  providerOnConnect(listener) {
97
87
  this.ethereum?.on("connect", listener);
98
- this.providerListeners.push([
99
- "connect",
100
- listener
101
- ]);
88
+ this.providerListeners.push(["connect", listener]);
102
89
  }
103
90
  providerOnDisconnect(listener) {
104
91
  this.ethereum?.on("disconnect", listener);
105
- this.providerListeners.push([
106
- "disconnect",
107
- listener
108
- ]);
92
+ this.providerListeners.push(["disconnect", listener]);
109
93
  }
110
94
  providerRemoveListener(event, listener) {
111
95
  this.providerListeners = this.providerListeners.filter(([, savedListener]) => listener !== savedListener);
@@ -126,8 +110,7 @@ var MetaMaskConnector = class {
126
110
  }
127
111
  const signer = await this.provider.getSigner();
128
112
  await signer.getAddress();
129
- const signature = await signer.signMessage(message);
130
- return signature;
113
+ return await signer.signMessage(message);
131
114
  }
132
115
  /** Web3Provider Listeners - https://docs.ethers.org/v5/api/providers/provider/#Provider--events */
133
116
  web3ProviderOn(event, listener) {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/index.ts","../../src/MetaMaskConnector.ts"],"sourcesContent":["export * from './MetaMaskConnector.js'\n","import { MetaMaskInpageProvider } from '@metamask/providers'\nimport { forget } from '@xylabs/forget'\nimport { BrowserProvider, Listener } from 'ethers'\n\nexport class MetaMaskConnector {\n private account = ''\n private ethereum = window.ethereum as MetaMaskInpageProvider\n\n private listeners: Listener[] = []\n private provider: BrowserProvider | undefined\n private providerListeners: [event: string, listener: Listener][] = []\n\n constructor(provider?: BrowserProvider) {\n if (provider) {\n this.provider = provider\n } else if (this.ethereum) {\n this.provider = new BrowserProvider(window.ethereum)\n }\n }\n\n get chainId() {\n return this.ethereum?.networkVersion\n }\n\n get currentAccount() {\n return this.ethereum?.selectedAddress\n }\n\n async connectWallet() {\n if (!this.provider) {\n this.logProviderMissing()\n return\n }\n\n const accounts = await this.provider.send('eth_requestAccounts', [])\n // We could have multiple accounts. Check for one.\n if (accounts.length > 0) {\n this.account = accounts[0]\n console.log('Connected:', this.account)\n } else {\n console.log('No authorized account found.')\n }\n }\n\n isMetaMaskInstalled() {\n return this.ethereum && this.ethereum.isMetaMask\n }\n\n isWalletIsConnected = () => {\n if (this.currentAccount) {\n console.log('Found an authorized account:', this.ethereum?.selectedAddress)\n return true\n }\n return false\n }\n\n /**\n * EIP-1193 Event Listeners\n *\n * .on in Web3Provider does not understand EIP-1193 events\n * see - https://github.com/ethers-io/ethers.js/discussions/1560#discussioncomment-730893\n */\n providerOnAccountsChanged(listener: Listener) {\n this.ethereum?.on('accountsChanged', listener)\n this.providerListeners.push(['accountsChanged', listener])\n }\n\n providerOnChainChanged(listener: Listener) {\n this.ethereum?.on('chainChanged', listener)\n this.providerListeners.push(['chainChanged', listener])\n }\n\n providerOnConnect(listener: Listener) {\n this.ethereum?.on('connect', listener)\n this.providerListeners.push(['connect', listener])\n }\n\n providerOnDisconnect(listener: Listener) {\n this.ethereum?.on('disconnect', listener)\n this.providerListeners.push(['disconnect', listener])\n }\n\n providerRemoveListener(event: string, listener: Listener) {\n //this.ethereum?.removeListener(event, listener)\n this.providerListeners = this.providerListeners.filter(([, savedListener]) => listener !== savedListener)\n }\n\n providerRemoveListeners() {\n //for (const [event, listener] of this.providerListeners) this.ethereum?.removeListener(event, listener)\n }\n\n async requestAccounts(): Promise<string[] | null> {\n if (!this.provider) {\n this.logProviderMissing()\n return null\n }\n\n return await this.provider.send('eth_requestAccounts', [])\n }\n\n async signMessage(message: string) {\n if (!this.provider) {\n this.logProviderMissing()\n return\n }\n\n const signer = await this.provider.getSigner()\n await signer.getAddress()\n const signature = await signer.signMessage(message)\n return signature\n }\n\n /** Web3Provider Listeners - https://docs.ethers.org/v5/api/providers/provider/#Provider--events */\n web3ProviderOn(event: string, listener: Listener): void {\n if (this.provider) {\n forget(this.provider.on(event, listener))\n }\n this.listeners.push(listener)\n }\n\n web3ProviderRemoveListener(event: string, listener: Listener): void {\n if (this.provider) {\n forget(this.provider.removeListener(event, listener))\n }\n this.listeners = this.listeners.filter((savedListener) => listener !== savedListener)\n }\n\n web3ProviderRemoveListeners(): void {\n if (this.provider) {\n forget(this.provider.removeAllListeners())\n }\n }\n\n private logProviderMissing(): void {\n console.warn('Cannot call this method because there is no web3 provider connected. Please confirm that metamask is installed')\n }\n}\n"],"mappings":"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","names":["MetaMaskConnector","account","ethereum","window","listeners","provider","providerListeners","constructor","BrowserProvider","chainId","networkVersion","currentAccount","selectedAddress","connectWallet","logProviderMissing","accounts","send","length","console","log","isMetaMaskInstalled","isMetaMask","isWalletIsConnected","providerOnAccountsChanged","listener","on","push","providerOnChainChanged","providerOnConnect","providerOnDisconnect","providerRemoveListener","event","filter","savedListener","providerRemoveListeners","requestAccounts","signMessage","message","signer","getSigner","getAddress","signature","web3ProviderOn","forget","web3ProviderRemoveListener","removeListener","web3ProviderRemoveListeners","removeAllListeners","warn"]}
1
+ {"version":3,"sources":["../../src/index.ts","../../src/MetaMaskConnector.ts"],"sourcesContent":["export * from './MetaMaskConnector.js'\n","import { MetaMaskInpageProvider } from '@metamask/providers'\nimport { forget } from '@xylabs/forget'\nimport { BrowserProvider, Listener } from 'ethers'\n\nexport class MetaMaskConnector {\n private account = ''\n private ethereum = window.ethereum as MetaMaskInpageProvider\n\n private listeners: Listener[] = []\n private provider: BrowserProvider | undefined\n private providerListeners: [event: string, listener: Listener][] = []\n\n constructor(provider?: BrowserProvider) {\n if (provider) {\n this.provider = provider\n } else if (this.ethereum) {\n this.provider = new BrowserProvider(window.ethereum)\n }\n }\n\n get chainId() {\n return this.ethereum?.networkVersion\n }\n\n get currentAccount() {\n return this.ethereum?.selectedAddress\n }\n\n async connectWallet() {\n if (!this.provider) {\n this.logProviderMissing()\n return\n }\n\n const accounts = await this.provider.send('eth_requestAccounts', [])\n // We could have multiple accounts. Check for one.\n if (accounts.length > 0) {\n this.account = accounts[0]\n console.log('Connected:', this.account)\n } else {\n console.log('No authorized account found.')\n }\n }\n\n isMetaMaskInstalled() {\n return this.ethereum && this.ethereum.isMetaMask\n }\n\n isWalletIsConnected = () => {\n if (this.currentAccount) {\n console.log('Found an authorized account:', this.ethereum?.selectedAddress)\n return true\n }\n return false\n }\n\n /**\n * EIP-1193 Event Listeners\n *\n * .on in Web3Provider does not understand EIP-1193 events\n * see - https://github.com/ethers-io/ethers.js/discussions/1560#discussioncomment-730893\n */\n providerOnAccountsChanged(listener: Listener) {\n this.ethereum?.on('accountsChanged', listener)\n this.providerListeners.push(['accountsChanged', listener])\n }\n\n providerOnChainChanged(listener: Listener) {\n this.ethereum?.on('chainChanged', listener)\n this.providerListeners.push(['chainChanged', listener])\n }\n\n providerOnConnect(listener: Listener) {\n this.ethereum?.on('connect', listener)\n this.providerListeners.push(['connect', listener])\n }\n\n providerOnDisconnect(listener: Listener) {\n this.ethereum?.on('disconnect', listener)\n this.providerListeners.push(['disconnect', listener])\n }\n\n providerRemoveListener(event: string, listener: Listener) {\n //this.ethereum?.removeListener(event, listener)\n this.providerListeners = this.providerListeners.filter(([, savedListener]) => listener !== savedListener)\n }\n\n providerRemoveListeners() {\n //for (const [event, listener] of this.providerListeners) this.ethereum?.removeListener(event, listener)\n }\n\n async requestAccounts(): Promise<string[] | null> {\n if (!this.provider) {\n this.logProviderMissing()\n return null\n }\n\n return await this.provider.send('eth_requestAccounts', [])\n }\n\n async signMessage(message: string) {\n if (!this.provider) {\n this.logProviderMissing()\n return\n }\n\n const signer = await this.provider.getSigner()\n await signer.getAddress()\n return await signer.signMessage(message)\n }\n\n /** Web3Provider Listeners - https://docs.ethers.org/v5/api/providers/provider/#Provider--events */\n web3ProviderOn(event: string, listener: Listener): void {\n if (this.provider) {\n forget(this.provider.on(event, listener))\n }\n this.listeners.push(listener)\n }\n\n web3ProviderRemoveListener(event: string, listener: Listener): void {\n if (this.provider) {\n forget(this.provider.removeListener(event, listener))\n }\n this.listeners = this.listeners.filter((savedListener) => listener !== savedListener)\n }\n\n web3ProviderRemoveListeners(): void {\n if (this.provider) {\n forget(this.provider.removeAllListeners())\n }\n }\n\n private logProviderMissing(): void {\n console.warn('Cannot call this method because there is no web3 provider connected. Please confirm that metamask is installed')\n }\n}\n"],"mappings":"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","names":[]}
@@ -1,13 +1,7 @@
1
- var __defProp = Object.defineProperty;
2
- var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
-
4
1
  // src/MetaMaskConnector.ts
5
2
  import { forget } from "@xylabs/forget";
6
3
  import { BrowserProvider } from "ethers";
7
4
  var MetaMaskConnector = class {
8
- static {
9
- __name(this, "MetaMaskConnector");
10
- }
11
5
  account = "";
12
6
  ethereum = window.ethereum;
13
7
  listeners = [];
@@ -42,46 +36,34 @@ var MetaMaskConnector = class {
42
36
  isMetaMaskInstalled() {
43
37
  return this.ethereum && this.ethereum.isMetaMask;
44
38
  }
45
- isWalletIsConnected = /* @__PURE__ */ __name(() => {
39
+ isWalletIsConnected = () => {
46
40
  if (this.currentAccount) {
47
41
  console.log("Found an authorized account:", this.ethereum?.selectedAddress);
48
42
  return true;
49
43
  }
50
44
  return false;
51
- }, "isWalletIsConnected");
45
+ };
52
46
  /**
53
- * EIP-1193 Event Listeners
54
- *
55
- * .on in Web3Provider does not understand EIP-1193 events
56
- * see - https://github.com/ethers-io/ethers.js/discussions/1560#discussioncomment-730893
57
- */
47
+ * EIP-1193 Event Listeners
48
+ *
49
+ * .on in Web3Provider does not understand EIP-1193 events
50
+ * see - https://github.com/ethers-io/ethers.js/discussions/1560#discussioncomment-730893
51
+ */
58
52
  providerOnAccountsChanged(listener) {
59
53
  this.ethereum?.on("accountsChanged", listener);
60
- this.providerListeners.push([
61
- "accountsChanged",
62
- listener
63
- ]);
54
+ this.providerListeners.push(["accountsChanged", listener]);
64
55
  }
65
56
  providerOnChainChanged(listener) {
66
57
  this.ethereum?.on("chainChanged", listener);
67
- this.providerListeners.push([
68
- "chainChanged",
69
- listener
70
- ]);
58
+ this.providerListeners.push(["chainChanged", listener]);
71
59
  }
72
60
  providerOnConnect(listener) {
73
61
  this.ethereum?.on("connect", listener);
74
- this.providerListeners.push([
75
- "connect",
76
- listener
77
- ]);
62
+ this.providerListeners.push(["connect", listener]);
78
63
  }
79
64
  providerOnDisconnect(listener) {
80
65
  this.ethereum?.on("disconnect", listener);
81
- this.providerListeners.push([
82
- "disconnect",
83
- listener
84
- ]);
66
+ this.providerListeners.push(["disconnect", listener]);
85
67
  }
86
68
  providerRemoveListener(event, listener) {
87
69
  this.providerListeners = this.providerListeners.filter(([, savedListener]) => listener !== savedListener);
@@ -102,8 +84,7 @@ var MetaMaskConnector = class {
102
84
  }
103
85
  const signer = await this.provider.getSigner();
104
86
  await signer.getAddress();
105
- const signature = await signer.signMessage(message);
106
- return signature;
87
+ return await signer.signMessage(message);
107
88
  }
108
89
  /** Web3Provider Listeners - https://docs.ethers.org/v5/api/providers/provider/#Provider--events */
109
90
  web3ProviderOn(event, listener) {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/MetaMaskConnector.ts"],"sourcesContent":["import { MetaMaskInpageProvider } from '@metamask/providers'\nimport { forget } from '@xylabs/forget'\nimport { BrowserProvider, Listener } from 'ethers'\n\nexport class MetaMaskConnector {\n private account = ''\n private ethereum = window.ethereum as MetaMaskInpageProvider\n\n private listeners: Listener[] = []\n private provider: BrowserProvider | undefined\n private providerListeners: [event: string, listener: Listener][] = []\n\n constructor(provider?: BrowserProvider) {\n if (provider) {\n this.provider = provider\n } else if (this.ethereum) {\n this.provider = new BrowserProvider(window.ethereum)\n }\n }\n\n get chainId() {\n return this.ethereum?.networkVersion\n }\n\n get currentAccount() {\n return this.ethereum?.selectedAddress\n }\n\n async connectWallet() {\n if (!this.provider) {\n this.logProviderMissing()\n return\n }\n\n const accounts = await this.provider.send('eth_requestAccounts', [])\n // We could have multiple accounts. Check for one.\n if (accounts.length > 0) {\n this.account = accounts[0]\n console.log('Connected:', this.account)\n } else {\n console.log('No authorized account found.')\n }\n }\n\n isMetaMaskInstalled() {\n return this.ethereum && this.ethereum.isMetaMask\n }\n\n isWalletIsConnected = () => {\n if (this.currentAccount) {\n console.log('Found an authorized account:', this.ethereum?.selectedAddress)\n return true\n }\n return false\n }\n\n /**\n * EIP-1193 Event Listeners\n *\n * .on in Web3Provider does not understand EIP-1193 events\n * see - https://github.com/ethers-io/ethers.js/discussions/1560#discussioncomment-730893\n */\n providerOnAccountsChanged(listener: Listener) {\n this.ethereum?.on('accountsChanged', listener)\n this.providerListeners.push(['accountsChanged', listener])\n }\n\n providerOnChainChanged(listener: Listener) {\n this.ethereum?.on('chainChanged', listener)\n this.providerListeners.push(['chainChanged', listener])\n }\n\n providerOnConnect(listener: Listener) {\n this.ethereum?.on('connect', listener)\n this.providerListeners.push(['connect', listener])\n }\n\n providerOnDisconnect(listener: Listener) {\n this.ethereum?.on('disconnect', listener)\n this.providerListeners.push(['disconnect', listener])\n }\n\n providerRemoveListener(event: string, listener: Listener) {\n //this.ethereum?.removeListener(event, listener)\n this.providerListeners = this.providerListeners.filter(([, savedListener]) => listener !== savedListener)\n }\n\n providerRemoveListeners() {\n //for (const [event, listener] of this.providerListeners) this.ethereum?.removeListener(event, listener)\n }\n\n async requestAccounts(): Promise<string[] | null> {\n if (!this.provider) {\n this.logProviderMissing()\n return null\n }\n\n return await this.provider.send('eth_requestAccounts', [])\n }\n\n async signMessage(message: string) {\n if (!this.provider) {\n this.logProviderMissing()\n return\n }\n\n const signer = await this.provider.getSigner()\n await signer.getAddress()\n const signature = await signer.signMessage(message)\n return signature\n }\n\n /** Web3Provider Listeners - https://docs.ethers.org/v5/api/providers/provider/#Provider--events */\n web3ProviderOn(event: string, listener: Listener): void {\n if (this.provider) {\n forget(this.provider.on(event, listener))\n }\n this.listeners.push(listener)\n }\n\n web3ProviderRemoveListener(event: string, listener: Listener): void {\n if (this.provider) {\n forget(this.provider.removeListener(event, listener))\n }\n this.listeners = this.listeners.filter((savedListener) => listener !== savedListener)\n }\n\n web3ProviderRemoveListeners(): void {\n if (this.provider) {\n forget(this.provider.removeAllListeners())\n }\n }\n\n private logProviderMissing(): void {\n console.warn('Cannot call this method because there is no web3 provider connected. Please confirm that metamask is installed')\n }\n}\n"],"mappings":"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","names":["forget","BrowserProvider","MetaMaskConnector","account","ethereum","window","listeners","provider","providerListeners","constructor","BrowserProvider","chainId","networkVersion","currentAccount","selectedAddress","connectWallet","logProviderMissing","accounts","send","length","console","log","isMetaMaskInstalled","isMetaMask","isWalletIsConnected","providerOnAccountsChanged","listener","on","push","providerOnChainChanged","providerOnConnect","providerOnDisconnect","providerRemoveListener","event","filter","savedListener","providerRemoveListeners","requestAccounts","signMessage","message","signer","getSigner","getAddress","signature","web3ProviderOn","forget","web3ProviderRemoveListener","removeListener","web3ProviderRemoveListeners","removeAllListeners","warn"]}
1
+ {"version":3,"sources":["../../src/MetaMaskConnector.ts"],"sourcesContent":["import { MetaMaskInpageProvider } from '@metamask/providers'\nimport { forget } from '@xylabs/forget'\nimport { BrowserProvider, Listener } from 'ethers'\n\nexport class MetaMaskConnector {\n private account = ''\n private ethereum = window.ethereum as MetaMaskInpageProvider\n\n private listeners: Listener[] = []\n private provider: BrowserProvider | undefined\n private providerListeners: [event: string, listener: Listener][] = []\n\n constructor(provider?: BrowserProvider) {\n if (provider) {\n this.provider = provider\n } else if (this.ethereum) {\n this.provider = new BrowserProvider(window.ethereum)\n }\n }\n\n get chainId() {\n return this.ethereum?.networkVersion\n }\n\n get currentAccount() {\n return this.ethereum?.selectedAddress\n }\n\n async connectWallet() {\n if (!this.provider) {\n this.logProviderMissing()\n return\n }\n\n const accounts = await this.provider.send('eth_requestAccounts', [])\n // We could have multiple accounts. Check for one.\n if (accounts.length > 0) {\n this.account = accounts[0]\n console.log('Connected:', this.account)\n } else {\n console.log('No authorized account found.')\n }\n }\n\n isMetaMaskInstalled() {\n return this.ethereum && this.ethereum.isMetaMask\n }\n\n isWalletIsConnected = () => {\n if (this.currentAccount) {\n console.log('Found an authorized account:', this.ethereum?.selectedAddress)\n return true\n }\n return false\n }\n\n /**\n * EIP-1193 Event Listeners\n *\n * .on in Web3Provider does not understand EIP-1193 events\n * see - https://github.com/ethers-io/ethers.js/discussions/1560#discussioncomment-730893\n */\n providerOnAccountsChanged(listener: Listener) {\n this.ethereum?.on('accountsChanged', listener)\n this.providerListeners.push(['accountsChanged', listener])\n }\n\n providerOnChainChanged(listener: Listener) {\n this.ethereum?.on('chainChanged', listener)\n this.providerListeners.push(['chainChanged', listener])\n }\n\n providerOnConnect(listener: Listener) {\n this.ethereum?.on('connect', listener)\n this.providerListeners.push(['connect', listener])\n }\n\n providerOnDisconnect(listener: Listener) {\n this.ethereum?.on('disconnect', listener)\n this.providerListeners.push(['disconnect', listener])\n }\n\n providerRemoveListener(event: string, listener: Listener) {\n //this.ethereum?.removeListener(event, listener)\n this.providerListeners = this.providerListeners.filter(([, savedListener]) => listener !== savedListener)\n }\n\n providerRemoveListeners() {\n //for (const [event, listener] of this.providerListeners) this.ethereum?.removeListener(event, listener)\n }\n\n async requestAccounts(): Promise<string[] | null> {\n if (!this.provider) {\n this.logProviderMissing()\n return null\n }\n\n return await this.provider.send('eth_requestAccounts', [])\n }\n\n async signMessage(message: string) {\n if (!this.provider) {\n this.logProviderMissing()\n return\n }\n\n const signer = await this.provider.getSigner()\n await signer.getAddress()\n return await signer.signMessage(message)\n }\n\n /** Web3Provider Listeners - https://docs.ethers.org/v5/api/providers/provider/#Provider--events */\n web3ProviderOn(event: string, listener: Listener): void {\n if (this.provider) {\n forget(this.provider.on(event, listener))\n }\n this.listeners.push(listener)\n }\n\n web3ProviderRemoveListener(event: string, listener: Listener): void {\n if (this.provider) {\n forget(this.provider.removeListener(event, listener))\n }\n this.listeners = this.listeners.filter((savedListener) => listener !== savedListener)\n }\n\n web3ProviderRemoveListeners(): void {\n if (this.provider) {\n forget(this.provider.removeAllListeners())\n }\n }\n\n private logProviderMissing(): void {\n console.warn('Cannot call this method because there is no web3 provider connected. Please confirm that metamask is installed')\n }\n}\n"],"mappings":"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","names":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"MetaMaskConnector.d.ts","sourceRoot":"","sources":["../../src/MetaMaskConnector.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAA;AAElD,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,OAAO,CAAK;IACpB,OAAO,CAAC,QAAQ,CAA4C;IAE5D,OAAO,CAAC,SAAS,CAAiB;IAClC,OAAO,CAAC,QAAQ,CAA6B;IAC7C,OAAO,CAAC,iBAAiB,CAA4C;gBAEzD,QAAQ,CAAC,EAAE,eAAe;IAQtC,IAAI,OAAO,kBAEV;IAED,IAAI,cAAc,kBAEjB;IAEK,aAAa;IAgBnB,mBAAmB;IAInB,mBAAmB,gBAMlB;IAQD,yBAAyB,CAAC,QAAQ,EAAE,QAAQ;IAK5C,sBAAsB,CAAC,QAAQ,EAAE,QAAQ;IAKzC,iBAAiB,CAAC,QAAQ,EAAE,QAAQ;IAKpC,oBAAoB,CAAC,QAAQ,EAAE,QAAQ;IAKvC,sBAAsB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ;IAKxD,uBAAuB;IAIjB,eAAe,IAAI,OAAO,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC;IAS3C,WAAW,CAAC,OAAO,EAAE,MAAM;IAajC,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAOvD,0BAA0B,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAOnE,2BAA2B,IAAI,IAAI;IAMnC,OAAO,CAAC,kBAAkB;CAG3B"}
1
+ {"version":3,"file":"MetaMaskConnector.d.ts","sourceRoot":"","sources":["../../src/MetaMaskConnector.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAA;AAElD,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,OAAO,CAAK;IACpB,OAAO,CAAC,QAAQ,CAA4C;IAE5D,OAAO,CAAC,SAAS,CAAiB;IAClC,OAAO,CAAC,QAAQ,CAA6B;IAC7C,OAAO,CAAC,iBAAiB,CAA4C;gBAEzD,QAAQ,CAAC,EAAE,eAAe;IAQtC,IAAI,OAAO,kBAEV;IAED,IAAI,cAAc,kBAEjB;IAEK,aAAa;IAgBnB,mBAAmB;IAInB,mBAAmB,gBAMlB;IAQD,yBAAyB,CAAC,QAAQ,EAAE,QAAQ;IAK5C,sBAAsB,CAAC,QAAQ,EAAE,QAAQ;IAKzC,iBAAiB,CAAC,QAAQ,EAAE,QAAQ;IAKpC,oBAAoB,CAAC,QAAQ,EAAE,QAAQ;IAKvC,sBAAsB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ;IAKxD,uBAAuB;IAIjB,eAAe,IAAI,OAAO,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC;IAS3C,WAAW,CAAC,OAAO,EAAE,MAAM;IAYjC,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAOvD,0BAA0B,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAOnE,2BAA2B,IAAI,IAAI;IAMnC,OAAO,CAAC,kBAAkB;CAG3B"}
@@ -1 +1 @@
1
- {"version":3,"file":"MetaMaskConnector.d.ts","sourceRoot":"","sources":["../../src/MetaMaskConnector.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAA;AAElD,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,OAAO,CAAK;IACpB,OAAO,CAAC,QAAQ,CAA4C;IAE5D,OAAO,CAAC,SAAS,CAAiB;IAClC,OAAO,CAAC,QAAQ,CAA6B;IAC7C,OAAO,CAAC,iBAAiB,CAA4C;gBAEzD,QAAQ,CAAC,EAAE,eAAe;IAQtC,IAAI,OAAO,kBAEV;IAED,IAAI,cAAc,kBAEjB;IAEK,aAAa;IAgBnB,mBAAmB;IAInB,mBAAmB,gBAMlB;IAQD,yBAAyB,CAAC,QAAQ,EAAE,QAAQ;IAK5C,sBAAsB,CAAC,QAAQ,EAAE,QAAQ;IAKzC,iBAAiB,CAAC,QAAQ,EAAE,QAAQ;IAKpC,oBAAoB,CAAC,QAAQ,EAAE,QAAQ;IAKvC,sBAAsB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ;IAKxD,uBAAuB;IAIjB,eAAe,IAAI,OAAO,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC;IAS3C,WAAW,CAAC,OAAO,EAAE,MAAM;IAajC,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAOvD,0BAA0B,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAOnE,2BAA2B,IAAI,IAAI;IAMnC,OAAO,CAAC,kBAAkB;CAG3B"}
1
+ {"version":3,"file":"MetaMaskConnector.d.ts","sourceRoot":"","sources":["../../src/MetaMaskConnector.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAA;AAElD,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,OAAO,CAAK;IACpB,OAAO,CAAC,QAAQ,CAA4C;IAE5D,OAAO,CAAC,SAAS,CAAiB;IAClC,OAAO,CAAC,QAAQ,CAA6B;IAC7C,OAAO,CAAC,iBAAiB,CAA4C;gBAEzD,QAAQ,CAAC,EAAE,eAAe;IAQtC,IAAI,OAAO,kBAEV;IAED,IAAI,cAAc,kBAEjB;IAEK,aAAa;IAgBnB,mBAAmB;IAInB,mBAAmB,gBAMlB;IAQD,yBAAyB,CAAC,QAAQ,EAAE,QAAQ;IAK5C,sBAAsB,CAAC,QAAQ,EAAE,QAAQ;IAKzC,iBAAiB,CAAC,QAAQ,EAAE,QAAQ;IAKpC,oBAAoB,CAAC,QAAQ,EAAE,QAAQ;IAKvC,sBAAsB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ;IAKxD,uBAAuB;IAIjB,eAAe,IAAI,OAAO,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC;IAS3C,WAAW,CAAC,OAAO,EAAE,MAAM;IAYjC,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAOvD,0BAA0B,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAOnE,2BAA2B,IAAI,IAAI;IAMnC,OAAO,CAAC,kBAAkB;CAG3B"}
@@ -1 +1 @@
1
- {"version":3,"file":"MetaMaskConnector.d.ts","sourceRoot":"","sources":["../../src/MetaMaskConnector.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAA;AAElD,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,OAAO,CAAK;IACpB,OAAO,CAAC,QAAQ,CAA4C;IAE5D,OAAO,CAAC,SAAS,CAAiB;IAClC,OAAO,CAAC,QAAQ,CAA6B;IAC7C,OAAO,CAAC,iBAAiB,CAA4C;gBAEzD,QAAQ,CAAC,EAAE,eAAe;IAQtC,IAAI,OAAO,kBAEV;IAED,IAAI,cAAc,kBAEjB;IAEK,aAAa;IAgBnB,mBAAmB;IAInB,mBAAmB,gBAMlB;IAQD,yBAAyB,CAAC,QAAQ,EAAE,QAAQ;IAK5C,sBAAsB,CAAC,QAAQ,EAAE,QAAQ;IAKzC,iBAAiB,CAAC,QAAQ,EAAE,QAAQ;IAKpC,oBAAoB,CAAC,QAAQ,EAAE,QAAQ;IAKvC,sBAAsB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ;IAKxD,uBAAuB;IAIjB,eAAe,IAAI,OAAO,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC;IAS3C,WAAW,CAAC,OAAO,EAAE,MAAM;IAajC,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAOvD,0BAA0B,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAOnE,2BAA2B,IAAI,IAAI;IAMnC,OAAO,CAAC,kBAAkB;CAG3B"}
1
+ {"version":3,"file":"MetaMaskConnector.d.ts","sourceRoot":"","sources":["../../src/MetaMaskConnector.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAA;AAElD,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,OAAO,CAAK;IACpB,OAAO,CAAC,QAAQ,CAA4C;IAE5D,OAAO,CAAC,SAAS,CAAiB;IAClC,OAAO,CAAC,QAAQ,CAA6B;IAC7C,OAAO,CAAC,iBAAiB,CAA4C;gBAEzD,QAAQ,CAAC,EAAE,eAAe;IAQtC,IAAI,OAAO,kBAEV;IAED,IAAI,cAAc,kBAEjB;IAEK,aAAa;IAgBnB,mBAAmB;IAInB,mBAAmB,gBAMlB;IAQD,yBAAyB,CAAC,QAAQ,EAAE,QAAQ;IAK5C,sBAAsB,CAAC,QAAQ,EAAE,QAAQ;IAKzC,iBAAiB,CAAC,QAAQ,EAAE,QAAQ;IAKpC,oBAAoB,CAAC,QAAQ,EAAE,QAAQ;IAKvC,sBAAsB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ;IAKxD,uBAAuB;IAIjB,eAAe,IAAI,OAAO,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC;IAS3C,WAAW,CAAC,OAAO,EAAE,MAAM;IAYjC,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAOvD,0BAA0B,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAOnE,2BAA2B,IAAI,IAAI;IAMnC,OAAO,CAAC,kBAAkB;CAG3B"}
@@ -3,7 +3,6 @@ var __defProp = Object.defineProperty;
3
3
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
4
  var __getOwnPropNames = Object.getOwnPropertyNames;
5
5
  var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
7
6
  var __export = (target, all) => {
8
7
  for (var name in all)
9
8
  __defProp(target, name, { get: all[name], enumerable: true });
@@ -28,7 +27,7 @@ module.exports = __toCommonJS(src_exports);
28
27
  // src/MetaMaskConnector.ts
29
28
  var import_forget = require("@xylabs/forget");
30
29
  var import_ethers = require("ethers");
31
- var _MetaMaskConnector = class _MetaMaskConnector {
30
+ var MetaMaskConnector = class {
32
31
  account = "";
33
32
  ethereum = window.ethereum;
34
33
  listeners = [];
@@ -65,51 +64,39 @@ var _MetaMaskConnector = class _MetaMaskConnector {
65
64
  isMetaMaskInstalled() {
66
65
  return this.ethereum && this.ethereum.isMetaMask;
67
66
  }
68
- isWalletIsConnected = /* @__PURE__ */ __name(() => {
67
+ isWalletIsConnected = () => {
69
68
  var _a;
70
69
  if (this.currentAccount) {
71
70
  console.log("Found an authorized account:", (_a = this.ethereum) == null ? void 0 : _a.selectedAddress);
72
71
  return true;
73
72
  }
74
73
  return false;
75
- }, "isWalletIsConnected");
74
+ };
76
75
  /**
77
- * EIP-1193 Event Listeners
78
- *
79
- * .on in Web3Provider does not understand EIP-1193 events
80
- * see - https://github.com/ethers-io/ethers.js/discussions/1560#discussioncomment-730893
81
- */
76
+ * EIP-1193 Event Listeners
77
+ *
78
+ * .on in Web3Provider does not understand EIP-1193 events
79
+ * see - https://github.com/ethers-io/ethers.js/discussions/1560#discussioncomment-730893
80
+ */
82
81
  providerOnAccountsChanged(listener) {
83
82
  var _a;
84
83
  (_a = this.ethereum) == null ? void 0 : _a.on("accountsChanged", listener);
85
- this.providerListeners.push([
86
- "accountsChanged",
87
- listener
88
- ]);
84
+ this.providerListeners.push(["accountsChanged", listener]);
89
85
  }
90
86
  providerOnChainChanged(listener) {
91
87
  var _a;
92
88
  (_a = this.ethereum) == null ? void 0 : _a.on("chainChanged", listener);
93
- this.providerListeners.push([
94
- "chainChanged",
95
- listener
96
- ]);
89
+ this.providerListeners.push(["chainChanged", listener]);
97
90
  }
98
91
  providerOnConnect(listener) {
99
92
  var _a;
100
93
  (_a = this.ethereum) == null ? void 0 : _a.on("connect", listener);
101
- this.providerListeners.push([
102
- "connect",
103
- listener
104
- ]);
94
+ this.providerListeners.push(["connect", listener]);
105
95
  }
106
96
  providerOnDisconnect(listener) {
107
97
  var _a;
108
98
  (_a = this.ethereum) == null ? void 0 : _a.on("disconnect", listener);
109
- this.providerListeners.push([
110
- "disconnect",
111
- listener
112
- ]);
99
+ this.providerListeners.push(["disconnect", listener]);
113
100
  }
114
101
  providerRemoveListener(event, listener) {
115
102
  this.providerListeners = this.providerListeners.filter(([, savedListener]) => listener !== savedListener);
@@ -130,8 +117,7 @@ var _MetaMaskConnector = class _MetaMaskConnector {
130
117
  }
131
118
  const signer = await this.provider.getSigner();
132
119
  await signer.getAddress();
133
- const signature = await signer.signMessage(message);
134
- return signature;
120
+ return await signer.signMessage(message);
135
121
  }
136
122
  /** Web3Provider Listeners - https://docs.ethers.org/v5/api/providers/provider/#Provider--events */
137
123
  web3ProviderOn(event, listener) {
@@ -155,8 +141,6 @@ var _MetaMaskConnector = class _MetaMaskConnector {
155
141
  console.warn("Cannot call this method because there is no web3 provider connected. Please confirm that metamask is installed");
156
142
  }
157
143
  };
158
- __name(_MetaMaskConnector, "MetaMaskConnector");
159
- var MetaMaskConnector = _MetaMaskConnector;
160
144
  // Annotate the CommonJS export names for ESM import in node:
161
145
  0 && (module.exports = {
162
146
  MetaMaskConnector
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/index.ts","../../src/MetaMaskConnector.ts"],"sourcesContent":["export * from './MetaMaskConnector.js'\n","import { MetaMaskInpageProvider } from '@metamask/providers'\nimport { forget } from '@xylabs/forget'\nimport { BrowserProvider, Listener } from 'ethers'\n\nexport class MetaMaskConnector {\n private account = ''\n private ethereum = window.ethereum as MetaMaskInpageProvider\n\n private listeners: Listener[] = []\n private provider: BrowserProvider | undefined\n private providerListeners: [event: string, listener: Listener][] = []\n\n constructor(provider?: BrowserProvider) {\n if (provider) {\n this.provider = provider\n } else if (this.ethereum) {\n this.provider = new BrowserProvider(window.ethereum)\n }\n }\n\n get chainId() {\n return this.ethereum?.networkVersion\n }\n\n get currentAccount() {\n return this.ethereum?.selectedAddress\n }\n\n async connectWallet() {\n if (!this.provider) {\n this.logProviderMissing()\n return\n }\n\n const accounts = await this.provider.send('eth_requestAccounts', [])\n // We could have multiple accounts. Check for one.\n if (accounts.length > 0) {\n this.account = accounts[0]\n console.log('Connected:', this.account)\n } else {\n console.log('No authorized account found.')\n }\n }\n\n isMetaMaskInstalled() {\n return this.ethereum && this.ethereum.isMetaMask\n }\n\n isWalletIsConnected = () => {\n if (this.currentAccount) {\n console.log('Found an authorized account:', this.ethereum?.selectedAddress)\n return true\n }\n return false\n }\n\n /**\n * EIP-1193 Event Listeners\n *\n * .on in Web3Provider does not understand EIP-1193 events\n * see - https://github.com/ethers-io/ethers.js/discussions/1560#discussioncomment-730893\n */\n providerOnAccountsChanged(listener: Listener) {\n this.ethereum?.on('accountsChanged', listener)\n this.providerListeners.push(['accountsChanged', listener])\n }\n\n providerOnChainChanged(listener: Listener) {\n this.ethereum?.on('chainChanged', listener)\n this.providerListeners.push(['chainChanged', listener])\n }\n\n providerOnConnect(listener: Listener) {\n this.ethereum?.on('connect', listener)\n this.providerListeners.push(['connect', listener])\n }\n\n providerOnDisconnect(listener: Listener) {\n this.ethereum?.on('disconnect', listener)\n this.providerListeners.push(['disconnect', listener])\n }\n\n providerRemoveListener(event: string, listener: Listener) {\n //this.ethereum?.removeListener(event, listener)\n this.providerListeners = this.providerListeners.filter(([, savedListener]) => listener !== savedListener)\n }\n\n providerRemoveListeners() {\n //for (const [event, listener] of this.providerListeners) this.ethereum?.removeListener(event, listener)\n }\n\n async requestAccounts(): Promise<string[] | null> {\n if (!this.provider) {\n this.logProviderMissing()\n return null\n }\n\n return await this.provider.send('eth_requestAccounts', [])\n }\n\n async signMessage(message: string) {\n if (!this.provider) {\n this.logProviderMissing()\n return\n }\n\n const signer = await this.provider.getSigner()\n await signer.getAddress()\n const signature = await signer.signMessage(message)\n return signature\n }\n\n /** Web3Provider Listeners - https://docs.ethers.org/v5/api/providers/provider/#Provider--events */\n web3ProviderOn(event: string, listener: Listener): void {\n if (this.provider) {\n forget(this.provider.on(event, listener))\n }\n this.listeners.push(listener)\n }\n\n web3ProviderRemoveListener(event: string, listener: Listener): void {\n if (this.provider) {\n forget(this.provider.removeListener(event, listener))\n }\n this.listeners = this.listeners.filter((savedListener) => listener !== savedListener)\n }\n\n web3ProviderRemoveListeners(): void {\n if (this.provider) {\n forget(this.provider.removeAllListeners())\n }\n }\n\n private logProviderMissing(): void {\n console.warn('Cannot call this method because there is no web3 provider connected. Please confirm that metamask is installed')\n }\n}\n"],"mappings":"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","names":["MetaMaskConnector","account","ethereum","window","listeners","provider","providerListeners","constructor","BrowserProvider","chainId","networkVersion","currentAccount","selectedAddress","connectWallet","logProviderMissing","accounts","send","length","console","log","isMetaMaskInstalled","isMetaMask","isWalletIsConnected","providerOnAccountsChanged","listener","on","push","providerOnChainChanged","providerOnConnect","providerOnDisconnect","providerRemoveListener","event","filter","savedListener","providerRemoveListeners","requestAccounts","signMessage","message","signer","getSigner","getAddress","signature","web3ProviderOn","forget","web3ProviderRemoveListener","removeListener","web3ProviderRemoveListeners","removeAllListeners","warn"]}
1
+ {"version":3,"sources":["../../src/index.ts","../../src/MetaMaskConnector.ts"],"sourcesContent":["export * from './MetaMaskConnector.js'\n","import { MetaMaskInpageProvider } from '@metamask/providers'\nimport { forget } from '@xylabs/forget'\nimport { BrowserProvider, Listener } from 'ethers'\n\nexport class MetaMaskConnector {\n private account = ''\n private ethereum = window.ethereum as MetaMaskInpageProvider\n\n private listeners: Listener[] = []\n private provider: BrowserProvider | undefined\n private providerListeners: [event: string, listener: Listener][] = []\n\n constructor(provider?: BrowserProvider) {\n if (provider) {\n this.provider = provider\n } else if (this.ethereum) {\n this.provider = new BrowserProvider(window.ethereum)\n }\n }\n\n get chainId() {\n return this.ethereum?.networkVersion\n }\n\n get currentAccount() {\n return this.ethereum?.selectedAddress\n }\n\n async connectWallet() {\n if (!this.provider) {\n this.logProviderMissing()\n return\n }\n\n const accounts = await this.provider.send('eth_requestAccounts', [])\n // We could have multiple accounts. Check for one.\n if (accounts.length > 0) {\n this.account = accounts[0]\n console.log('Connected:', this.account)\n } else {\n console.log('No authorized account found.')\n }\n }\n\n isMetaMaskInstalled() {\n return this.ethereum && this.ethereum.isMetaMask\n }\n\n isWalletIsConnected = () => {\n if (this.currentAccount) {\n console.log('Found an authorized account:', this.ethereum?.selectedAddress)\n return true\n }\n return false\n }\n\n /**\n * EIP-1193 Event Listeners\n *\n * .on in Web3Provider does not understand EIP-1193 events\n * see - https://github.com/ethers-io/ethers.js/discussions/1560#discussioncomment-730893\n */\n providerOnAccountsChanged(listener: Listener) {\n this.ethereum?.on('accountsChanged', listener)\n this.providerListeners.push(['accountsChanged', listener])\n }\n\n providerOnChainChanged(listener: Listener) {\n this.ethereum?.on('chainChanged', listener)\n this.providerListeners.push(['chainChanged', listener])\n }\n\n providerOnConnect(listener: Listener) {\n this.ethereum?.on('connect', listener)\n this.providerListeners.push(['connect', listener])\n }\n\n providerOnDisconnect(listener: Listener) {\n this.ethereum?.on('disconnect', listener)\n this.providerListeners.push(['disconnect', listener])\n }\n\n providerRemoveListener(event: string, listener: Listener) {\n //this.ethereum?.removeListener(event, listener)\n this.providerListeners = this.providerListeners.filter(([, savedListener]) => listener !== savedListener)\n }\n\n providerRemoveListeners() {\n //for (const [event, listener] of this.providerListeners) this.ethereum?.removeListener(event, listener)\n }\n\n async requestAccounts(): Promise<string[] | null> {\n if (!this.provider) {\n this.logProviderMissing()\n return null\n }\n\n return await this.provider.send('eth_requestAccounts', [])\n }\n\n async signMessage(message: string) {\n if (!this.provider) {\n this.logProviderMissing()\n return\n }\n\n const signer = await this.provider.getSigner()\n await signer.getAddress()\n return await signer.signMessage(message)\n }\n\n /** Web3Provider Listeners - https://docs.ethers.org/v5/api/providers/provider/#Provider--events */\n web3ProviderOn(event: string, listener: Listener): void {\n if (this.provider) {\n forget(this.provider.on(event, listener))\n }\n this.listeners.push(listener)\n }\n\n web3ProviderRemoveListener(event: string, listener: Listener): void {\n if (this.provider) {\n forget(this.provider.removeListener(event, listener))\n }\n this.listeners = this.listeners.filter((savedListener) => listener !== savedListener)\n }\n\n web3ProviderRemoveListeners(): void {\n if (this.provider) {\n forget(this.provider.removeAllListeners())\n }\n }\n\n private logProviderMissing(): void {\n console.warn('Cannot call this method because there is no web3 provider connected. Please confirm that metamask is installed')\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACCA,oBAAuB;AACvB,oBAA0C;AAEnC,IAAM,oBAAN,MAAwB;AAAA,EACrB,UAAU;AAAA,EACV,WAAW,OAAO;AAAA,EAElB,YAAwB,CAAC;AAAA,EACzB;AAAA,EACA,oBAA2D,CAAC;AAAA,EAEpE,YAAY,UAA4B;AACtC,QAAI,UAAU;AACZ,WAAK,WAAW;AAAA,IAClB,WAAW,KAAK,UAAU;AACxB,WAAK,WAAW,IAAI,8BAAgB,OAAO,QAAQ;AAAA,IACrD;AAAA,EACF;AAAA,EAEA,IAAI,UAAU;AApBhB;AAqBI,YAAO,UAAK,aAAL,mBAAe;AAAA,EACxB;AAAA,EAEA,IAAI,iBAAiB;AAxBvB;AAyBI,YAAO,UAAK,aAAL,mBAAe;AAAA,EACxB;AAAA,EAEA,MAAM,gBAAgB;AACpB,QAAI,CAAC,KAAK,UAAU;AAClB,WAAK,mBAAmB;AACxB;AAAA,IACF;AAEA,UAAM,WAAW,MAAM,KAAK,SAAS,KAAK,uBAAuB,CAAC,CAAC;AAEnE,QAAI,SAAS,SAAS,GAAG;AACvB,WAAK,UAAU,SAAS,CAAC;AACzB,cAAQ,IAAI,cAAc,KAAK,OAAO;AAAA,IACxC,OAAO;AACL,cAAQ,IAAI,8BAA8B;AAAA,IAC5C;AAAA,EACF;AAAA,EAEA,sBAAsB;AACpB,WAAO,KAAK,YAAY,KAAK,SAAS;AAAA,EACxC;AAAA,EAEA,sBAAsB,MAAM;AAhD9B;AAiDI,QAAI,KAAK,gBAAgB;AACvB,cAAQ,IAAI,iCAAgC,UAAK,aAAL,mBAAe,eAAe;AAC1E,aAAO;AAAA,IACT;AACA,WAAO;AAAA,EACT;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,0BAA0B,UAAoB;AA9DhD;AA+DI,eAAK,aAAL,mBAAe,GAAG,mBAAmB;AACrC,SAAK,kBAAkB,KAAK,CAAC,mBAAmB,QAAQ,CAAC;AAAA,EAC3D;AAAA,EAEA,uBAAuB,UAAoB;AAnE7C;AAoEI,eAAK,aAAL,mBAAe,GAAG,gBAAgB;AAClC,SAAK,kBAAkB,KAAK,CAAC,gBAAgB,QAAQ,CAAC;AAAA,EACxD;AAAA,EAEA,kBAAkB,UAAoB;AAxExC;AAyEI,eAAK,aAAL,mBAAe,GAAG,WAAW;AAC7B,SAAK,kBAAkB,KAAK,CAAC,WAAW,QAAQ,CAAC;AAAA,EACnD;AAAA,EAEA,qBAAqB,UAAoB;AA7E3C;AA8EI,eAAK,aAAL,mBAAe,GAAG,cAAc;AAChC,SAAK,kBAAkB,KAAK,CAAC,cAAc,QAAQ,CAAC;AAAA,EACtD;AAAA,EAEA,uBAAuB,OAAe,UAAoB;AAExD,SAAK,oBAAoB,KAAK,kBAAkB,OAAO,CAAC,CAAC,EAAE,aAAa,MAAM,aAAa,aAAa;AAAA,EAC1G;AAAA,EAEA,0BAA0B;AAAA,EAE1B;AAAA,EAEA,MAAM,kBAA4C;AAChD,QAAI,CAAC,KAAK,UAAU;AAClB,WAAK,mBAAmB;AACxB,aAAO;AAAA,IACT;AAEA,WAAO,MAAM,KAAK,SAAS,KAAK,uBAAuB,CAAC,CAAC;AAAA,EAC3D;AAAA,EAEA,MAAM,YAAY,SAAiB;AACjC,QAAI,CAAC,KAAK,UAAU;AAClB,WAAK,mBAAmB;AACxB;AAAA,IACF;AAEA,UAAM,SAAS,MAAM,KAAK,SAAS,UAAU;AAC7C,UAAM,OAAO,WAAW;AACxB,WAAO,MAAM,OAAO,YAAY,OAAO;AAAA,EACzC;AAAA;AAAA,EAGA,eAAe,OAAe,UAA0B;AACtD,QAAI,KAAK,UAAU;AACjB,gCAAO,KAAK,SAAS,GAAG,OAAO,QAAQ,CAAC;AAAA,IAC1C;AACA,SAAK,UAAU,KAAK,QAAQ;AAAA,EAC9B;AAAA,EAEA,2BAA2B,OAAe,UAA0B;AAClE,QAAI,KAAK,UAAU;AACjB,gCAAO,KAAK,SAAS,eAAe,OAAO,QAAQ,CAAC;AAAA,IACtD;AACA,SAAK,YAAY,KAAK,UAAU,OAAO,CAAC,kBAAkB,aAAa,aAAa;AAAA,EACtF;AAAA,EAEA,8BAAoC;AAClC,QAAI,KAAK,UAAU;AACjB,gCAAO,KAAK,SAAS,mBAAmB,CAAC;AAAA,IAC3C;AAAA,EACF;AAAA,EAEQ,qBAA2B;AACjC,YAAQ,KAAK,iHAAiH;AAAA,EAChI;AACF;","names":[]}
@@ -1,10 +1,7 @@
1
- var __defProp = Object.defineProperty;
2
- var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
-
4
1
  // src/MetaMaskConnector.ts
5
2
  import { forget } from "@xylabs/forget";
6
3
  import { BrowserProvider } from "ethers";
7
- var _MetaMaskConnector = class _MetaMaskConnector {
4
+ var MetaMaskConnector = class {
8
5
  account = "";
9
6
  ethereum = window.ethereum;
10
7
  listeners = [];
@@ -41,51 +38,39 @@ var _MetaMaskConnector = class _MetaMaskConnector {
41
38
  isMetaMaskInstalled() {
42
39
  return this.ethereum && this.ethereum.isMetaMask;
43
40
  }
44
- isWalletIsConnected = /* @__PURE__ */ __name(() => {
41
+ isWalletIsConnected = () => {
45
42
  var _a;
46
43
  if (this.currentAccount) {
47
44
  console.log("Found an authorized account:", (_a = this.ethereum) == null ? void 0 : _a.selectedAddress);
48
45
  return true;
49
46
  }
50
47
  return false;
51
- }, "isWalletIsConnected");
48
+ };
52
49
  /**
53
- * EIP-1193 Event Listeners
54
- *
55
- * .on in Web3Provider does not understand EIP-1193 events
56
- * see - https://github.com/ethers-io/ethers.js/discussions/1560#discussioncomment-730893
57
- */
50
+ * EIP-1193 Event Listeners
51
+ *
52
+ * .on in Web3Provider does not understand EIP-1193 events
53
+ * see - https://github.com/ethers-io/ethers.js/discussions/1560#discussioncomment-730893
54
+ */
58
55
  providerOnAccountsChanged(listener) {
59
56
  var _a;
60
57
  (_a = this.ethereum) == null ? void 0 : _a.on("accountsChanged", listener);
61
- this.providerListeners.push([
62
- "accountsChanged",
63
- listener
64
- ]);
58
+ this.providerListeners.push(["accountsChanged", listener]);
65
59
  }
66
60
  providerOnChainChanged(listener) {
67
61
  var _a;
68
62
  (_a = this.ethereum) == null ? void 0 : _a.on("chainChanged", listener);
69
- this.providerListeners.push([
70
- "chainChanged",
71
- listener
72
- ]);
63
+ this.providerListeners.push(["chainChanged", listener]);
73
64
  }
74
65
  providerOnConnect(listener) {
75
66
  var _a;
76
67
  (_a = this.ethereum) == null ? void 0 : _a.on("connect", listener);
77
- this.providerListeners.push([
78
- "connect",
79
- listener
80
- ]);
68
+ this.providerListeners.push(["connect", listener]);
81
69
  }
82
70
  providerOnDisconnect(listener) {
83
71
  var _a;
84
72
  (_a = this.ethereum) == null ? void 0 : _a.on("disconnect", listener);
85
- this.providerListeners.push([
86
- "disconnect",
87
- listener
88
- ]);
73
+ this.providerListeners.push(["disconnect", listener]);
89
74
  }
90
75
  providerRemoveListener(event, listener) {
91
76
  this.providerListeners = this.providerListeners.filter(([, savedListener]) => listener !== savedListener);
@@ -106,8 +91,7 @@ var _MetaMaskConnector = class _MetaMaskConnector {
106
91
  }
107
92
  const signer = await this.provider.getSigner();
108
93
  await signer.getAddress();
109
- const signature = await signer.signMessage(message);
110
- return signature;
94
+ return await signer.signMessage(message);
111
95
  }
112
96
  /** Web3Provider Listeners - https://docs.ethers.org/v5/api/providers/provider/#Provider--events */
113
97
  web3ProviderOn(event, listener) {
@@ -131,8 +115,6 @@ var _MetaMaskConnector = class _MetaMaskConnector {
131
115
  console.warn("Cannot call this method because there is no web3 provider connected. Please confirm that metamask is installed");
132
116
  }
133
117
  };
134
- __name(_MetaMaskConnector, "MetaMaskConnector");
135
- var MetaMaskConnector = _MetaMaskConnector;
136
118
  export {
137
119
  MetaMaskConnector
138
120
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/MetaMaskConnector.ts"],"sourcesContent":["import { MetaMaskInpageProvider } from '@metamask/providers'\nimport { forget } from '@xylabs/forget'\nimport { BrowserProvider, Listener } from 'ethers'\n\nexport class MetaMaskConnector {\n private account = ''\n private ethereum = window.ethereum as MetaMaskInpageProvider\n\n private listeners: Listener[] = []\n private provider: BrowserProvider | undefined\n private providerListeners: [event: string, listener: Listener][] = []\n\n constructor(provider?: BrowserProvider) {\n if (provider) {\n this.provider = provider\n } else if (this.ethereum) {\n this.provider = new BrowserProvider(window.ethereum)\n }\n }\n\n get chainId() {\n return this.ethereum?.networkVersion\n }\n\n get currentAccount() {\n return this.ethereum?.selectedAddress\n }\n\n async connectWallet() {\n if (!this.provider) {\n this.logProviderMissing()\n return\n }\n\n const accounts = await this.provider.send('eth_requestAccounts', [])\n // We could have multiple accounts. Check for one.\n if (accounts.length > 0) {\n this.account = accounts[0]\n console.log('Connected:', this.account)\n } else {\n console.log('No authorized account found.')\n }\n }\n\n isMetaMaskInstalled() {\n return this.ethereum && this.ethereum.isMetaMask\n }\n\n isWalletIsConnected = () => {\n if (this.currentAccount) {\n console.log('Found an authorized account:', this.ethereum?.selectedAddress)\n return true\n }\n return false\n }\n\n /**\n * EIP-1193 Event Listeners\n *\n * .on in Web3Provider does not understand EIP-1193 events\n * see - https://github.com/ethers-io/ethers.js/discussions/1560#discussioncomment-730893\n */\n providerOnAccountsChanged(listener: Listener) {\n this.ethereum?.on('accountsChanged', listener)\n this.providerListeners.push(['accountsChanged', listener])\n }\n\n providerOnChainChanged(listener: Listener) {\n this.ethereum?.on('chainChanged', listener)\n this.providerListeners.push(['chainChanged', listener])\n }\n\n providerOnConnect(listener: Listener) {\n this.ethereum?.on('connect', listener)\n this.providerListeners.push(['connect', listener])\n }\n\n providerOnDisconnect(listener: Listener) {\n this.ethereum?.on('disconnect', listener)\n this.providerListeners.push(['disconnect', listener])\n }\n\n providerRemoveListener(event: string, listener: Listener) {\n //this.ethereum?.removeListener(event, listener)\n this.providerListeners = this.providerListeners.filter(([, savedListener]) => listener !== savedListener)\n }\n\n providerRemoveListeners() {\n //for (const [event, listener] of this.providerListeners) this.ethereum?.removeListener(event, listener)\n }\n\n async requestAccounts(): Promise<string[] | null> {\n if (!this.provider) {\n this.logProviderMissing()\n return null\n }\n\n return await this.provider.send('eth_requestAccounts', [])\n }\n\n async signMessage(message: string) {\n if (!this.provider) {\n this.logProviderMissing()\n return\n }\n\n const signer = await this.provider.getSigner()\n await signer.getAddress()\n const signature = await signer.signMessage(message)\n return signature\n }\n\n /** Web3Provider Listeners - https://docs.ethers.org/v5/api/providers/provider/#Provider--events */\n web3ProviderOn(event: string, listener: Listener): void {\n if (this.provider) {\n forget(this.provider.on(event, listener))\n }\n this.listeners.push(listener)\n }\n\n web3ProviderRemoveListener(event: string, listener: Listener): void {\n if (this.provider) {\n forget(this.provider.removeListener(event, listener))\n }\n this.listeners = this.listeners.filter((savedListener) => listener !== savedListener)\n }\n\n web3ProviderRemoveListeners(): void {\n if (this.provider) {\n forget(this.provider.removeAllListeners())\n }\n }\n\n private logProviderMissing(): void {\n console.warn('Cannot call this method because there is no web3 provider connected. Please confirm that metamask is installed')\n }\n}\n"],"mappings":"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","names":["forget","BrowserProvider","MetaMaskConnector","account","ethereum","window","listeners","provider","providerListeners","constructor","BrowserProvider","chainId","networkVersion","currentAccount","selectedAddress","connectWallet","logProviderMissing","accounts","send","length","console","log","isMetaMaskInstalled","isMetaMask","isWalletIsConnected","providerOnAccountsChanged","listener","on","push","providerOnChainChanged","providerOnConnect","providerOnDisconnect","providerRemoveListener","event","filter","savedListener","providerRemoveListeners","requestAccounts","signMessage","message","signer","getSigner","getAddress","signature","web3ProviderOn","forget","web3ProviderRemoveListener","removeListener","web3ProviderRemoveListeners","removeAllListeners","warn"]}
1
+ {"version":3,"sources":["../../src/MetaMaskConnector.ts"],"sourcesContent":["import { MetaMaskInpageProvider } from '@metamask/providers'\nimport { forget } from '@xylabs/forget'\nimport { BrowserProvider, Listener } from 'ethers'\n\nexport class MetaMaskConnector {\n private account = ''\n private ethereum = window.ethereum as MetaMaskInpageProvider\n\n private listeners: Listener[] = []\n private provider: BrowserProvider | undefined\n private providerListeners: [event: string, listener: Listener][] = []\n\n constructor(provider?: BrowserProvider) {\n if (provider) {\n this.provider = provider\n } else if (this.ethereum) {\n this.provider = new BrowserProvider(window.ethereum)\n }\n }\n\n get chainId() {\n return this.ethereum?.networkVersion\n }\n\n get currentAccount() {\n return this.ethereum?.selectedAddress\n }\n\n async connectWallet() {\n if (!this.provider) {\n this.logProviderMissing()\n return\n }\n\n const accounts = await this.provider.send('eth_requestAccounts', [])\n // We could have multiple accounts. Check for one.\n if (accounts.length > 0) {\n this.account = accounts[0]\n console.log('Connected:', this.account)\n } else {\n console.log('No authorized account found.')\n }\n }\n\n isMetaMaskInstalled() {\n return this.ethereum && this.ethereum.isMetaMask\n }\n\n isWalletIsConnected = () => {\n if (this.currentAccount) {\n console.log('Found an authorized account:', this.ethereum?.selectedAddress)\n return true\n }\n return false\n }\n\n /**\n * EIP-1193 Event Listeners\n *\n * .on in Web3Provider does not understand EIP-1193 events\n * see - https://github.com/ethers-io/ethers.js/discussions/1560#discussioncomment-730893\n */\n providerOnAccountsChanged(listener: Listener) {\n this.ethereum?.on('accountsChanged', listener)\n this.providerListeners.push(['accountsChanged', listener])\n }\n\n providerOnChainChanged(listener: Listener) {\n this.ethereum?.on('chainChanged', listener)\n this.providerListeners.push(['chainChanged', listener])\n }\n\n providerOnConnect(listener: Listener) {\n this.ethereum?.on('connect', listener)\n this.providerListeners.push(['connect', listener])\n }\n\n providerOnDisconnect(listener: Listener) {\n this.ethereum?.on('disconnect', listener)\n this.providerListeners.push(['disconnect', listener])\n }\n\n providerRemoveListener(event: string, listener: Listener) {\n //this.ethereum?.removeListener(event, listener)\n this.providerListeners = this.providerListeners.filter(([, savedListener]) => listener !== savedListener)\n }\n\n providerRemoveListeners() {\n //for (const [event, listener] of this.providerListeners) this.ethereum?.removeListener(event, listener)\n }\n\n async requestAccounts(): Promise<string[] | null> {\n if (!this.provider) {\n this.logProviderMissing()\n return null\n }\n\n return await this.provider.send('eth_requestAccounts', [])\n }\n\n async signMessage(message: string) {\n if (!this.provider) {\n this.logProviderMissing()\n return\n }\n\n const signer = await this.provider.getSigner()\n await signer.getAddress()\n return await signer.signMessage(message)\n }\n\n /** Web3Provider Listeners - https://docs.ethers.org/v5/api/providers/provider/#Provider--events */\n web3ProviderOn(event: string, listener: Listener): void {\n if (this.provider) {\n forget(this.provider.on(event, listener))\n }\n this.listeners.push(listener)\n }\n\n web3ProviderRemoveListener(event: string, listener: Listener): void {\n if (this.provider) {\n forget(this.provider.removeListener(event, listener))\n }\n this.listeners = this.listeners.filter((savedListener) => listener !== savedListener)\n }\n\n web3ProviderRemoveListeners(): void {\n if (this.provider) {\n forget(this.provider.removeAllListeners())\n }\n }\n\n private logProviderMissing(): void {\n console.warn('Cannot call this method because there is no web3 provider connected. Please confirm that metamask is installed')\n }\n}\n"],"mappings":"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","names":[]}
package/package.json CHANGED
@@ -10,13 +10,13 @@
10
10
  },
11
11
  "dependencies": {
12
12
  "@metamask/providers": "^17.1.2",
13
- "@xylabs/forget": "^3.6.4",
14
- "ethers": "6.13.1"
13
+ "@xylabs/forget": "^3.6.5",
14
+ "ethers": "6.13.2"
15
15
  },
16
16
  "description": "Primary SDK for using XYO Protocol 2.0",
17
17
  "devDependencies": {
18
- "@xylabs/ts-scripts-yarn3": "^3.12.4",
19
- "@xylabs/tsconfig-dom": "^3.12.4",
18
+ "@xylabs/ts-scripts-yarn3": "^3.13.3",
19
+ "@xylabs/tsconfig-dom": "^3.13.3",
20
20
  "typescript": "^5.5.4"
21
21
  },
22
22
  "exports": {
@@ -58,6 +58,6 @@
58
58
  "url": "https://github.com/XYOracleNetwork/sdk-xyo-client-js.git"
59
59
  },
60
60
  "sideEffects": false,
61
- "version": "2.110.9",
61
+ "version": "2.110.11",
62
62
  "type": "module"
63
63
  }
@@ -106,8 +106,7 @@ export class MetaMaskConnector {
106
106
 
107
107
  const signer = await this.provider.getSigner()
108
108
  await signer.getAddress()
109
- const signature = await signer.signMessage(message)
110
- return signature
109
+ return await signer.signMessage(message)
111
110
  }
112
111
 
113
112
  /** Web3Provider Listeners - https://docs.ethers.org/v5/api/providers/provider/#Provider--events */