@multiplatform.one/web3 7.29.1 → 7.30.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +6 -2
- package/dist/cjs/connectkit/connectors/coinbaseWalletConnector.cjs +79 -0
- package/dist/cjs/connectkit/connectors/coinbaseWalletConnector.native.js +101 -0
- package/dist/cjs/connectkit/connectors/coinbaseWalletConnector.native.js.map +1 -0
- package/dist/cjs/connectkit/connectors/metaMaskConnectConnector.cjs +37 -2
- package/dist/cjs/connectkit/connectors/metaMaskConnectConnector.native.js +38 -2
- package/dist/cjs/connectkit/connectors/metaMaskConnectConnector.native.js.map +1 -1
- package/dist/cjs/connectkit/defaultConnectors.cjs +2 -2
- package/dist/cjs/connectkit/defaultConnectors.native.js +2 -2
- package/dist/cjs/connectkit/defaultConnectors.native.js.map +1 -1
- package/dist/esm/connectkit/connectors/coinbaseWalletConnector.mjs +42 -0
- package/dist/esm/connectkit/connectors/coinbaseWalletConnector.mjs.map +1 -0
- package/dist/esm/connectkit/connectors/coinbaseWalletConnector.native.js +61 -0
- package/dist/esm/connectkit/connectors/coinbaseWalletConnector.native.js.map +1 -0
- package/dist/esm/connectkit/connectors/metaMaskConnectConnector.mjs +37 -3
- package/dist/esm/connectkit/connectors/metaMaskConnectConnector.mjs.map +1 -1
- package/dist/esm/connectkit/connectors/metaMaskConnectConnector.native.js +38 -3
- package/dist/esm/connectkit/connectors/metaMaskConnectConnector.native.js.map +1 -1
- package/dist/esm/connectkit/defaultConnectors.mjs +2 -2
- package/dist/esm/connectkit/defaultConnectors.mjs.map +1 -1
- package/dist/esm/connectkit/defaultConnectors.native.js +2 -2
- package/dist/esm/connectkit/defaultConnectors.native.js.map +1 -1
- package/dist/jsx/connectkit/connectors/coinbaseWalletConnector.mjs +42 -0
- package/dist/jsx/connectkit/connectors/coinbaseWalletConnector.mjs.map +1 -0
- package/dist/jsx/connectkit/connectors/coinbaseWalletConnector.native.js +101 -0
- package/dist/jsx/connectkit/connectors/coinbaseWalletConnector.native.js.map +1 -0
- package/dist/jsx/connectkit/connectors/metaMaskConnectConnector.mjs +37 -3
- package/dist/jsx/connectkit/connectors/metaMaskConnectConnector.mjs.map +1 -1
- package/dist/jsx/connectkit/connectors/metaMaskConnectConnector.native.js +38 -2
- package/dist/jsx/connectkit/connectors/metaMaskConnectConnector.native.js.map +1 -1
- package/dist/jsx/connectkit/defaultConnectors.mjs +2 -2
- package/dist/jsx/connectkit/defaultConnectors.mjs.map +1 -1
- package/dist/jsx/connectkit/defaultConnectors.native.js +2 -2
- package/dist/jsx/connectkit/defaultConnectors.native.js.map +1 -1
- package/dist/keycloak/login.iife.js +303 -303
- package/package.json +7 -6
- package/src/connectkit/connectors/coinbaseWalletConnector.spec.ts +141 -0
- package/src/connectkit/connectors/coinbaseWalletConnector.ts +71 -0
- package/src/connectkit/connectors/metaMaskConnectConnector.spec.ts +179 -3
- package/src/connectkit/connectors/metaMaskConnectConnector.ts +78 -2
- package/src/connectkit/defaultConnectors.ts +3 -2
- package/src/keycloak/useWalletLogin.spec.tsx +15 -2
- package/types/connectkit/connectors/coinbaseWalletConnector.d.ts +5 -0
- package/types/connectkit/connectors/coinbaseWalletConnector.d.ts.map +1 -0
- package/types/connectkit/connectors/metaMaskConnectConnector.d.ts +8 -0
- package/types/connectkit/connectors/metaMaskConnectConnector.d.ts.map +1 -1
- package/types/connectkit/defaultConnectors.d.ts +1 -1
- package/types/connectkit/defaultConnectors.d.ts.map +1 -1
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { ChainNotConfiguredError, createConnector } from "wagmi";
|
|
2
2
|
import { getAddress, numberToHex, ResourceUnavailableRpcError, SwitchChainError, UserRejectedRequestError } from "viem";
|
|
3
|
+
import { mainnet } from "wagmi/chains";
|
|
3
4
|
import { isSyntheticChainId } from "./syntheticChains.mjs";
|
|
4
5
|
function metaMaskNetworks(chains, transports) {
|
|
5
6
|
const networks = {};
|
|
@@ -10,6 +11,31 @@ function metaMaskNetworks(chains, transports) {
|
|
|
10
11
|
}
|
|
11
12
|
return networks;
|
|
12
13
|
}
|
|
14
|
+
function metaMaskSupportedNetworks(networks, transports) {
|
|
15
|
+
const id = numberToHex(mainnet.id);
|
|
16
|
+
if (networks[id]) return networks;
|
|
17
|
+
return {
|
|
18
|
+
...networks,
|
|
19
|
+
[id]: metaMaskNetworks([mainnet], transports)[id] ?? mainnet.rpcUrls.default.http[0]
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
const offListMethods = /* @__PURE__ */new Set(["personal_sign", "eth_accounts", "eth_coinbase", "eth_chainId", "eth_requestAccounts", "net_version", "wallet_getPermissions", "wallet_requestPermissions", "wallet_revokePermissions", "wallet_switchEthereumChain", "wallet_addEthereumChain", "metamask_getProviderState", "metamask_sendDomainMetadata", "metamask_logWeb3ShimUsage", "wallet_registerOnboarding"]);
|
|
23
|
+
function listedChainsOnly(provider, mm, networks) {
|
|
24
|
+
const request = async args => {
|
|
25
|
+
const chainId = mm.getChainId();
|
|
26
|
+
if (chainId && !networks[numberToHex(Number(chainId))] && !offListMethods.has(args.method)) throw Object.assign(new Error(`MetaMask is on chain ${Number(chainId)}, which this app does not list, so ${args.method} was not sent`), {
|
|
27
|
+
code: 4901
|
|
28
|
+
});
|
|
29
|
+
return provider.request(args);
|
|
30
|
+
};
|
|
31
|
+
return new Proxy(provider, {
|
|
32
|
+
get(target, property) {
|
|
33
|
+
if (property === "request") return request;
|
|
34
|
+
const value = Reflect.get(target, property);
|
|
35
|
+
return typeof value === "function" ? value.bind(target) : value;
|
|
36
|
+
}
|
|
37
|
+
});
|
|
38
|
+
}
|
|
13
39
|
function transportUrl(chain, transports) {
|
|
14
40
|
const transport = transports?.[chain.id]?.({
|
|
15
41
|
chain
|
|
@@ -116,8 +142,10 @@ function metaMaskConnect(parameters) {
|
|
|
116
142
|
return createConnector(config => {
|
|
117
143
|
owner ??= config.emitter;
|
|
118
144
|
const networks = metaMaskNetworks(config.chains, config.transports);
|
|
145
|
+
const supportedNetworks = metaMaskSupportedNetworks(networks, config.transports);
|
|
119
146
|
const fallbackChainId = Number(Object.keys(networks)[0] ?? 1);
|
|
120
|
-
const instance = () => getClient(parameters,
|
|
147
|
+
const instance = () => getClient(parameters, supportedNetworks);
|
|
148
|
+
let guarded;
|
|
121
149
|
const claim = () => {
|
|
122
150
|
owner = config.emitter;
|
|
123
151
|
return instance();
|
|
@@ -166,7 +194,13 @@ function metaMaskConnect(parameters) {
|
|
|
166
194
|
return chainIdOf(await claim());
|
|
167
195
|
},
|
|
168
196
|
async getProvider() {
|
|
169
|
-
|
|
197
|
+
const mm = await claim();
|
|
198
|
+
const provider = mm.getProvider();
|
|
199
|
+
if (guarded?.provider !== provider) guarded = {
|
|
200
|
+
provider,
|
|
201
|
+
wrapped: listedChainsOnly(provider, mm, networks)
|
|
202
|
+
};
|
|
203
|
+
return guarded.wrapped;
|
|
170
204
|
},
|
|
171
205
|
async isAuthorized() {
|
|
172
206
|
try {
|
|
@@ -216,5 +250,5 @@ function metaMaskConnect(parameters) {
|
|
|
216
250
|
};
|
|
217
251
|
});
|
|
218
252
|
}
|
|
219
|
-
export { metaMaskConnect, metaMaskConnectChainIds, metaMaskNetworks, resetMetaMaskConnectClient };
|
|
253
|
+
export { metaMaskConnect, metaMaskConnectChainIds, metaMaskNetworks, metaMaskSupportedNetworks, resetMetaMaskConnectClient };
|
|
220
254
|
//# sourceMappingURL=metaMaskConnectConnector.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["ChainNotConfiguredError","createConnector","getAddress","numberToHex","ResourceUnavailableRpcError","SwitchChainError","UserRejectedRequestError","isSyntheticChainId","metaMaskNetworks","chains","transports","networks","chain","id","url","transportUrl","rpcUrls","default","http","isUrl","
|
|
1
|
+
{"version":3,"names":["ChainNotConfiguredError","createConnector","getAddress","numberToHex","ResourceUnavailableRpcError","SwitchChainError","UserRejectedRequestError","mainnet","isSyntheticChainId","metaMaskNetworks","chains","transports","networks","chain","id","url","transportUrl","rpcUrls","default","http","isUrl","metaMaskSupportedNetworks","offListMethods","Set","listedChainsOnly","provider","mm","request","args","chainId","getChainId","Number","has","method","Object","assign","Error","code","Proxy","get","target","property","value","Reflect","bind","transport","first","URL","metaMaskConnectChainIds","ids","keys","includes","filter","client","owner","getClient","parameters","then","createEVMClient","dapp","name","window","location","origin","iconUrl","api","supportedNetworks","analytics","enabled","skipAutoAnnounce","debug","headless","ui","preferredOpenLink","useDeeplink","mobile","eventHandlers","connect","accounts","length","emit","map","a","accountsChanged","chainChanged","disconnect","displayUri","uri","type","data","catch","resetMetaMaskConnectClient","rethrow","err","metaMaskConnect","config","emitter","fallbackChainId","instance","guarded","claim","accountsOf","chainIdOf","hex","rdns","setup","isReconnecting","result","chainIds","getAccounts","getProvider","wrapped","isAuthorized","switchChain","addEthereumChainParameter","find","c","chainConfiguration","chainName","nativeCurrency","blockExplorers","blockExplorerUrls","onAccountsChanged","onChainChanged","onDisconnect"],"sources":["../../../../src/connectkit/connectors/metaMaskConnectConnector.ts"],"sourcesContent":[null],"mappings":"AAcA,SAASA,uBAAA,EAAiDC,eAAA,QAAuB;AACjF,SAGEC,UAAA,EAEAC,WAAA,EACAC,2BAAA,EACAC,gBAAA,EACAC,wBAAA,QACK;AACP,SAASC,OAAA,QAAe;AAExB,SAASC,kBAAA,QAA0B;AAsB5B,SAASC,iBACdC,MAAA,EACAC,UAAA,EACqB;EACrB,MAAMC,QAAA,GAAgC,CAAC;EACvC,WAAWC,KAAA,IAASH,MAAA,EAAQ;IAC1B,IAAIF,kBAAA,CAAmBK,KAAA,CAAMC,EAAE,GAAG;IAClC,MAAMC,GAAA,GAAMC,YAAA,CAAaH,KAAA,EAAOF,UAAU,KAAKE,KAAA,CAAMI,OAAA,CAAQC,OAAA,EAASC,IAAA,CAAK,CAAC;IAC5E,IAAIJ,GAAA,IAAOK,KAAA,CAAML,GAAG,GAAGH,QAAA,CAAST,WAAA,CAAYU,KAAA,CAAMC,EAAE,CAAC,IAAIC,GAAA;EAC3D;EACA,OAAOH,QAAA;AACT;AASO,SAASS,0BACdT,QAAA,EACAD,UAAA,EACqB;EACrB,MAAMG,EAAA,GAAKX,WAAA,CAAYI,OAAA,CAAQO,EAAE;EACjC,IAAIF,QAAA,CAASE,EAAE,GAAG,OAAOF,QAAA;EACzB,OAAO;IACL,GAAGA,QAAA;IACH,CAACE,EAAE,GAAGL,gBAAA,CAAiB,CAACF,OAAO,GAAGI,UAAU,EAAEG,EAAE,KAAKP,OAAA,CAAQU,OAAA,CAAQC,OAAA,CAAQC,IAAA,CAAK,CAAC;EACrF;AACF;AAOA,MAAMG,cAAA,GAAiB,mBAAIC,GAAA,CAAI,CAC7B,iBACA,gBACA,gBACA,eACA,uBACA,eACA,yBACA,6BACA,4BACA,8BACA,2BACA,6BACA,+BACA,6BACA,4BACD;AAED,SAASC,iBACPC,QAAA,EACAC,EAAA,EACAd,QAAA,EACiB;EACjB,MAAMe,OAAA,GAAW,MAAOC,IAAA,IAA+C;IACrE,MAAMC,OAAA,GAAUH,EAAA,CAAGI,UAAA,CAAW;IAC9B,IAAID,OAAA,IAAW,CAACjB,QAAA,CAAST,WAAA,CAAY4B,MAAA,CAAOF,OAAO,CAAC,CAAC,KAAK,CAACP,cAAA,CAAeU,GAAA,CAAIJ,IAAA,CAAKK,MAAM,GACvF,MAAMC,MAAA,CAAOC,MAAA,CACX,IAAIC,KAAA,CACF,wBAAwBL,MAAA,CAAOF,OAAO,CAAC,sCAAsCD,IAAA,CAAKK,MAAM,eAC1F,GACA;MAAEI,IAAA,EAAM;IAAK,CACf;IACF,OAAOZ,QAAA,CAASE,OAAA,CAAQC,IAAa;EACvC;EACA,OAAO,IAAIU,KAAA,CAAMb,QAAA,EAAU;IACzBc,IAAIC,MAAA,EAAQC,QAAA,EAAU;MACpB,IAAIA,QAAA,KAAa,WAAW,OAAOd,OAAA;MACnC,MAAMe,KAAA,GAAQC,OAAA,CAAQJ,GAAA,CAAIC,MAAA,EAAQC,QAAQ;MAC1C,OAAO,OAAOC,KAAA,KAAU,aAAaA,KAAA,CAAME,IAAA,CAAKJ,MAAM,IAAIE,KAAA;IAC5D;EACF,CAAC;AACH;AAMA,SAAS1B,aACPH,KAAA,EACAF,UAAA,EACoB;EACpB,MAAMkC,SAAA,GAAYlC,UAAA,GAAaE,KAAA,CAAMC,EAAE,IAAI;IAAED;EAAM,CAAC;EACpD,MAAMiC,KAAA,GAASD,SAAA,EAAWH,KAAA,EAAO/B,UAAA,GAAkD,CAAC;EACpF,QAAQmC,KAAA,IAASD,SAAA,GAAYH,KAAA,EAAO3B,GAAA;AACtC;AAEA,SAASK,MAAMsB,KAAA,EAAwB;EACrC,IAAI;IACF,IAAIK,GAAA,CAAIL,KAAK;IACb,OAAO;EACT,QAAQ;IACN,OAAO;EACT;AACF;AAGO,SAASM,wBAAwBpC,QAAA,EAA+BiB,OAAA,EAAyB;EAC9F,MAAMoB,GAAA,GAAMf,MAAA,CAAOgB,IAAA,CAAKtC,QAAQ;EAChC,IAAI,CAACiB,OAAA,IAAWrB,kBAAA,CAAmBqB,OAAO,GAAG,OAAOoB,GAAA;EACpD,MAAMH,KAAA,GAAQ3C,WAAA,CAAY0B,OAAO;EACjC,OAAOoB,GAAA,CAAIE,QAAA,CAASL,KAAK,IAAI,CAACA,KAAA,EAAO,GAAGG,GAAA,CAAIG,MAAA,CAAQtC,EAAA,IAAOA,EAAA,KAAOgC,KAAK,CAAC,IAAIG,GAAA;AAC9E;AAOA,IAAII,MAAA;AACJ,IAAIC,KAAA;AAEJ,SAASC,UACPC,UAAA,EACA5C,QAAA,EAC6B;EAC7B,IAAIyC,MAAA,EAAQ,OAAOA,MAAA;EACnBA,MAAA,GAAS,OAAO,uBAAuB,EAAEI,IAAA,CAAK,CAAC;IAAEC;EAAgB,MAC/DA,eAAA,CAAgB;IACdC,IAAA,EAAM;MACJC,IAAA,EAAMJ,UAAA,CAAWG,IAAA,CAAKC,IAAA;MACtB7C,GAAA,EACEyC,UAAA,CAAWG,IAAA,CAAK5C,GAAA,KACf,OAAO8C,MAAA,KAAW,cAAcA,MAAA,CAAOC,QAAA,CAASC,MAAA,GAAS;MAC5D,IAAIP,UAAA,CAAWG,IAAA,CAAKK,OAAA,GAAU;QAAEA,OAAA,EAASR,UAAA,CAAWG,IAAA,CAAKK;MAAQ,IAAI,CAAC;IACxE;IACAC,GAAA,EAAK;MAAEC,iBAAA,EAAmBtD;IAAS;IACnCuD,SAAA,EAAW;MAAEC,OAAA,EAAS;IAAM;IAC5BC,gBAAA,EAAkB;IAClBC,KAAA,EAAOd,UAAA,CAAWc,KAAA;IAClB,IAAId,UAAA,CAAWe,QAAA,GAAW;MAAEC,EAAA,EAAI;QAAED,QAAA,EAAU;MAAK;IAAE,IAAI,CAAC;IACxD,IAAIf,UAAA,CAAWiB,iBAAA,IAAqBjB,UAAA,CAAWkB,WAAA,KAAgB,SAC3D;MACEC,MAAA,EAAQ;QACN,IAAInB,UAAA,CAAWiB,iBAAA,GACX;UAAEA,iBAAA,EAAmBjB,UAAA,CAAWiB;QAAkB,IAClD,CAAC;QACL,IAAIjB,UAAA,CAAWkB,WAAA,KAAgB,SAC3B;UAAEA,WAAA,EAAalB,UAAA,CAAWkB;QAAY,IACtC,CAAC;MACP;IACF,IACA,CAAC;IACLE,aAAA,EAAe;MAAA;MAAA;MAAA;MAIbC,OAAA,EAASA,CAAC;QAAEC,QAAA;QAAUjD;MAAQ,MAAM;QAClC,IAAIiD,QAAA,CAASC,MAAA,EACXzB,KAAA,EAAO0B,IAAA,CAAK,WAAW;UACrBF,QAAA,EAAUA,QAAA,CAASG,GAAA,CAAKC,CAAA,IAAMhF,UAAA,CAAWgF,CAAC,CAAC;UAC3CrD,OAAA,EAASE,MAAA,CAAOF,OAAO;QACzB,CAAC;MACL;MACAsD,eAAA,EAAkBL,QAAA,IAAa;QAC7B,IAAIA,QAAA,CAASC,MAAA,KAAW,GAAGzB,KAAA,EAAO0B,IAAA,CAAK,YAAY,OAC9C1B,KAAA,EAAO0B,IAAA,CAAK,UAAU;UAAEF,QAAA,EAAUA,QAAA,CAASG,GAAA,CAAKC,CAAA,IAAMhF,UAAA,CAAWgF,CAAC,CAAC;QAAE,CAAC;MAC7E;MACAE,YAAA,EAAevD,OAAA,IAAYyB,KAAA,EAAO0B,IAAA,CAAK,UAAU;QAAEnD,OAAA,EAASE,MAAA,CAAOF,OAAO;MAAE,CAAC;MAC7EwD,UAAA,EAAYA,CAAA,KAAM/B,KAAA,EAAO0B,IAAA,CAAK,YAAY;MAC1CM,UAAA,EAAaC,GAAA,IAAQjC,KAAA,EAAO0B,IAAA,CAAK,WAAW;QAAEQ,IAAA,EAAM;QAAeC,IAAA,EAAMF;MAAI,CAAC;IAChF;EACF,CAAC,CACH;EACAlC,MAAA,CAAOqC,KAAA,CAAM,MAAM;IACjBrC,MAAA,GAAS;EACX,CAAC;EACD,OAAOA,MAAA;AACT;AAGO,SAASsC,2BAAA,EAAmC;EACjDtC,MAAA,GAAS;EACTC,KAAA,GAAQ;AACV;AAEA,SAASsC,QAAQC,GAAA,EAAqB;EACpC,MAAMxD,IAAA,GAAQwD,GAAA,EAA2BxD,IAAA;EACzC,IAAIA,IAAA,KAAS/B,wBAAA,CAAyB+B,IAAA,EAAM,MAAM,IAAI/B,wBAAA,CAAyBuF,GAAY;EAC3F,IAAIxD,IAAA,KAASjC,2BAAA,CAA4BiC,IAAA,EACvC,MAAM,IAAIjC,2BAAA,CAA4ByF,GAAY;EACpD,MAAMA,GAAA;AACR;AAEAC,eAAA,CAAgBN,IAAA,GAAO;AAChB,SAASM,gBAAgBtC,UAAA,EAAuC;EACrE,OAAOvD,eAAA,CAAkC8F,MAAA,IAAW;IAClDzC,KAAA,KAAUyC,MAAA,CAAOC,OAAA;IACjB,MAAMpF,QAAA,GAAWH,gBAAA,CAAiBsF,MAAA,CAAOrF,MAAA,EAAQqF,MAAA,CAAOpF,UAAU;IAClE,MAAMuD,iBAAA,GAAoB7C,yBAAA,CAA0BT,QAAA,EAAUmF,MAAA,CAAOpF,UAAU;IAC/E,MAAMsF,eAAA,GAAkBlE,MAAA,CAAOG,MAAA,CAAOgB,IAAA,CAAKtC,QAAQ,EAAE,CAAC,KAAK,CAAC;IAC5D,MAAMsF,QAAA,GAAWA,CAAA,KAAM3C,SAAA,CAAUC,UAAA,EAAYU,iBAAiB;IAC9D,IAAIiC,OAAA;IAGJ,MAAMC,KAAA,GAAQA,CAAA,KAAM;MAClB9C,KAAA,GAAQyC,MAAA,CAAOC,OAAA;MACf,OAAOE,QAAA,CAAS;IAClB;IACA,MAAMG,UAAA,GAAc3E,EAAA,IAAsCA,EAAA,CAAGoD,QAAA,CAASG,GAAA,CAAKC,CAAA,IAAMhF,UAAA,CAAWgF,CAAC,CAAC;IAC9F,MAAMoB,SAAA,GAAa5E,EAAA,IAA2B;MAC5C,MAAM6E,GAAA,GAAM7E,EAAA,CAAGI,UAAA,CAAW;MAC1B,OAAOyE,GAAA,GAAMxE,MAAA,CAAOwE,GAAG,IAAIN,eAAA;IAC7B;IAEA,OAAO;MACLnF,EAAA,EAAI;MACJ8C,IAAA,EAAM;MACN4C,IAAA,EAAM,CAAC,eAAe,oBAAoB;MAC1ChB,IAAA,EAAMM,eAAA,CAAgBN,IAAA;MACtB,MAAMiB,MAAA,EAAQ;QAGZ,MAAMP,QAAA,CAAS,EAAER,KAAA,CAAM,MAAM,MAAS;MACxC;MACA,MAAMb,QAAQ;QAAEhD,OAAA;QAAS6E;MAAe,IAAI,CAAC,GAAG;QAG9C,MAAMhF,EAAA,GAAK,MAAM0E,KAAA,CAAM;QACvB,IAAI;UACF,IAAItB,QAAA,GAAW4B,cAAA,GAAiBL,UAAA,CAAW3E,EAAE,IAAI,EAAC;UAClD,IAAI,CAACoD,QAAA,CAASC,MAAA,EAAQ;YACpB,MAAM4B,MAAA,GAAS,MAAMjF,EAAA,CAAGmD,OAAA,CAAQ;cAC9B+B,QAAA,EAAU5D,uBAAA,CAAwBpC,QAAA,EAAUiB,OAAO;YACrD,CAAC;YACDiD,QAAA,GAAW6B,MAAA,CAAO7B,QAAA,CAASG,GAAA,CAAKC,CAAA,IAAMhF,UAAA,CAAWgF,CAAC,CAAC;UACrD;UACA,OAAO;YAAEJ,QAAA;YAA6BjD,OAAA,EAASyE,SAAA,CAAU5E,EAAE;UAAE;QAC/D,SAASmE,GAAA,EAAK;UACZD,OAAA,CAAQC,GAAG;QACb;MACF;MACA,MAAMR,WAAA,EAAa;QACjB,OAAO,MAAMe,KAAA,CAAM,GAAGf,UAAA,CAAW;MACnC;MACA,MAAMwB,YAAA,EAAc;QAClB,OAAOR,UAAA,CAAW,MAAMD,KAAA,CAAM,CAAC;MACjC;MACA,MAAMtE,WAAA,EAAa;QACjB,OAAOwE,SAAA,CAAU,MAAMF,KAAA,CAAM,CAAC;MAChC;MACA,MAAMU,YAAA,EAAc;QAGlB,MAAMpF,EAAA,GAAK,MAAM0E,KAAA,CAAM;QACvB,MAAM3E,QAAA,GAAWC,EAAA,CAAGoF,WAAA,CAAY;QAChC,IAAIX,OAAA,EAAS1E,QAAA,KAAaA,QAAA,EACxB0E,OAAA,GAAU;UAAE1E,QAAA;UAAUsF,OAAA,EAASvF,gBAAA,CAAiBC,QAAA,EAAUC,EAAA,EAAId,QAAQ;QAAE;QAC1E,OAAOuF,OAAA,CAAQY,OAAA;MACjB;MACA,MAAMC,aAAA,EAAe;QAInB,IAAI;UACF,OAAOX,UAAA,CAAW,MAAMD,KAAA,CAAM,CAAC,EAAErB,MAAA,GAAS;QAC5C,QAAQ;UACN,OAAO;QACT;MACF;MACA,MAAMkC,YAAY;QAAEC,yBAAA;QAA2BrF;MAAQ,GAAG;QACxD,MAAMhB,KAAA,GAAQkF,MAAA,CAAOrF,MAAA,CAAOyG,IAAA,CAAMC,CAAA,IAAMA,CAAA,CAAEtG,EAAA,KAAOe,OAAO;QACxD,IAAI,CAAChB,KAAA,IAAS,CAACD,QAAA,CAAST,WAAA,CAAY0B,OAAO,CAAC,GAC1C,MAAM,IAAIxB,gBAAA,CAAiB,IAAIL,uBAAA,CAAwB,CAAC;QAC1D,IAAI;UACF,OACE,MAAMoG,KAAA,CAAM,GACZa,WAAA,CAAY;YACZpF,OAAA,EAAS1B,WAAA,CAAY0B,OAAO;YAC5BwF,kBAAA,EAAoB;cAClBxF,OAAA,EAAS1B,WAAA,CAAY0B,OAAO;cAC5ByF,SAAA,EAAWJ,yBAAA,EAA2BI,SAAA,IAAazG,KAAA,CAAM+C,IAAA;cACzD2D,cAAA,EAAgBL,yBAAA,EAA2BK,cAAA,IAAkB1G,KAAA,CAAM0G,cAAA;cACnEtG,OAAA,EAASiG,yBAAA,EAA2BjG,OAAA,GAChC,CAAC,GAAGiG,yBAAA,CAA0BjG,OAAO,IACrC,CAACL,QAAA,CAAST,WAAA,CAAY0B,OAAO,CAAC,CAAC;cACnC,IAAIhB,KAAA,CAAM2G,cAAA,EAAgBtG,OAAA,CAAQH,GAAA,GAC9B;gBAAE0G,iBAAA,EAAmB,CAAC5G,KAAA,CAAM2G,cAAA,CAAetG,OAAA,CAAQH,GAAG;cAAE,IACxD,CAAC;YACP;UACF,CAAC;UACD,OAAOF,KAAA;QACT,SAASgF,GAAA,EAAK;UACZ,IAAKA,GAAA,EAA2BxD,IAAA,KAAS/B,wBAAA,CAAyB+B,IAAA,EAChE,MAAM,IAAI/B,wBAAA,CAAyBuF,GAAY;UACjD,MAAM,IAAIxF,gBAAA,CAAiBwF,GAAY;QACzC;MACF;MACA6B,kBAAkB5C,QAAA,EAAU;QAC1B,IAAIA,QAAA,CAASC,MAAA,KAAW,GAAGgB,MAAA,CAAOC,OAAA,CAAQhB,IAAA,CAAK,YAAY,OACtDe,MAAA,CAAOC,OAAA,CAAQhB,IAAA,CAAK,UAAU;UAAEF,QAAA,EAAUA,QAAA,CAASG,GAAA,CAAKC,CAAA,IAAMhF,UAAA,CAAWgF,CAAC,CAAC;QAAE,CAAC;MACrF;MACAyC,eAAe9G,KAAA,EAAO;QACpBkF,MAAA,CAAOC,OAAA,CAAQhB,IAAA,CAAK,UAAU;UAAEnD,OAAA,EAASE,MAAA,CAAOlB,KAAK;QAAE,CAAC;MAC1D;MACA+G,aAAA,EAAe;QACb7B,MAAA,CAAOC,OAAA,CAAQhB,IAAA,CAAK,YAAY;MAClC;IACF;EACF,CAAC;AACH","ignoreList":[]}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { ChainNotConfiguredError, createConnector } from "wagmi";
|
|
2
2
|
import { getAddress, numberToHex, ResourceUnavailableRpcError, SwitchChainError, UserRejectedRequestError } from "viem";
|
|
3
|
+
import { mainnet } from "wagmi/chains";
|
|
3
4
|
import { isSyntheticChainId } from "./syntheticChains.native.js";
|
|
4
5
|
function metaMaskNetworks(chains, transports) {
|
|
5
6
|
var networks = {};
|
|
@@ -30,6 +31,32 @@ function metaMaskNetworks(chains, transports) {
|
|
|
30
31
|
}
|
|
31
32
|
return networks;
|
|
32
33
|
}
|
|
34
|
+
function metaMaskSupportedNetworks(networks, transports) {
|
|
35
|
+
var _metaMaskNetworks_id;
|
|
36
|
+
var id = numberToHex(mainnet.id);
|
|
37
|
+
if (networks[id]) return networks;
|
|
38
|
+
return {
|
|
39
|
+
...networks,
|
|
40
|
+
[id]: (_metaMaskNetworks_id = metaMaskNetworks([mainnet], transports)[id]) !== null && _metaMaskNetworks_id !== void 0 ? _metaMaskNetworks_id : mainnet.rpcUrls.default.http[0]
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
var offListMethods = /* @__PURE__ */new Set(["personal_sign", "eth_accounts", "eth_coinbase", "eth_chainId", "eth_requestAccounts", "net_version", "wallet_getPermissions", "wallet_requestPermissions", "wallet_revokePermissions", "wallet_switchEthereumChain", "wallet_addEthereumChain", "metamask_getProviderState", "metamask_sendDomainMetadata", "metamask_logWeb3ShimUsage", "wallet_registerOnboarding"]);
|
|
44
|
+
function listedChainsOnly(provider, mm, networks) {
|
|
45
|
+
var request = async function request2(args) {
|
|
46
|
+
var chainId = mm.getChainId();
|
|
47
|
+
if (chainId && !networks[numberToHex(Number(chainId))] && !offListMethods.has(args.method)) throw Object.assign(new Error(`MetaMask is on chain ${Number(chainId)}, which this app does not list, so ${args.method} was not sent`), {
|
|
48
|
+
code: 4901
|
|
49
|
+
});
|
|
50
|
+
return provider.request(args);
|
|
51
|
+
};
|
|
52
|
+
return new Proxy(provider, {
|
|
53
|
+
get(target, property) {
|
|
54
|
+
if (property === "request") return request;
|
|
55
|
+
var value = Reflect.get(target, property);
|
|
56
|
+
return typeof value === "function" ? value.bind(target) : value;
|
|
57
|
+
}
|
|
58
|
+
});
|
|
59
|
+
}
|
|
33
60
|
function transportUrl(chain, transports) {
|
|
34
61
|
var _transports_chain_id, _transport_value_transports, _transport_value, _value, _this;
|
|
35
62
|
var transport = transports === null || transports === void 0 ? void 0 : (_transports_chain_id = transports[chain.id]) === null || _transports_chain_id === void 0 ? void 0 : _transports_chain_id.call(transports, {
|
|
@@ -155,10 +182,12 @@ function metaMaskConnect(parameters) {
|
|
|
155
182
|
var _Object_keys_;
|
|
156
183
|
owner !== null && owner !== void 0 ? owner : owner = config.emitter;
|
|
157
184
|
var networks = metaMaskNetworks(config.chains, config.transports);
|
|
185
|
+
var supportedNetworks = metaMaskSupportedNetworks(networks, config.transports);
|
|
158
186
|
var fallbackChainId = Number((_Object_keys_ = Object.keys(networks)[0]) !== null && _Object_keys_ !== void 0 ? _Object_keys_ : 1);
|
|
159
187
|
var instance = function instance2() {
|
|
160
|
-
return getClient(parameters,
|
|
188
|
+
return getClient(parameters, supportedNetworks);
|
|
161
189
|
};
|
|
190
|
+
var guarded;
|
|
162
191
|
var claim = function claim2() {
|
|
163
192
|
owner = config.emitter;
|
|
164
193
|
return instance();
|
|
@@ -216,7 +245,13 @@ function metaMaskConnect(parameters) {
|
|
|
216
245
|
return chainIdOf(await claim());
|
|
217
246
|
},
|
|
218
247
|
async getProvider() {
|
|
219
|
-
|
|
248
|
+
var mm = await claim();
|
|
249
|
+
var provider = mm.getProvider();
|
|
250
|
+
if ((guarded === null || guarded === void 0 ? void 0 : guarded.provider) !== provider) guarded = {
|
|
251
|
+
provider,
|
|
252
|
+
wrapped: listedChainsOnly(provider, mm, networks)
|
|
253
|
+
};
|
|
254
|
+
return guarded.wrapped;
|
|
220
255
|
},
|
|
221
256
|
async isAuthorized() {
|
|
222
257
|
try {
|
|
@@ -273,5 +308,5 @@ function metaMaskConnect(parameters) {
|
|
|
273
308
|
};
|
|
274
309
|
});
|
|
275
310
|
}
|
|
276
|
-
export { metaMaskConnect, metaMaskConnectChainIds, metaMaskNetworks, resetMetaMaskConnectClient };
|
|
311
|
+
export { metaMaskConnect, metaMaskConnectChainIds, metaMaskNetworks, metaMaskSupportedNetworks, resetMetaMaskConnectClient };
|
|
277
312
|
//# sourceMappingURL=metaMaskConnectConnector.native.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["ChainNotConfiguredError","createConnector","getAddress","numberToHex","ResourceUnavailableRpcError","SwitchChainError","UserRejectedRequestError","isSyntheticChainId","metaMaskNetworks","chains","transports","networks","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","next","done","chain","value","_chain_rpcUrls_default","id","url","transportUrl","rpcUrls","default","http","isUrl","err","return","_transports_chain_id","_transport_value_transports","_transport_value","_value","_this","transport","call","first","URL","unused","metaMaskConnectChainIds","
|
|
1
|
+
{"version":3,"names":["ChainNotConfiguredError","createConnector","getAddress","numberToHex","ResourceUnavailableRpcError","SwitchChainError","UserRejectedRequestError","mainnet","isSyntheticChainId","metaMaskNetworks","chains","transports","networks","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","next","done","chain","value","_chain_rpcUrls_default","id","url","transportUrl","rpcUrls","default","http","isUrl","err","return","metaMaskSupportedNetworks","_metaMaskNetworks_id","offListMethods","Set","listedChainsOnly","provider","mm","request","request2","args","chainId","getChainId","Number","has","method","Object","assign","Error","code","Proxy","get","target","property","Reflect","bind","_transports_chain_id","_transport_value_transports","_transport_value","_value","_this","transport","call","first","URL","unused","metaMaskConnectChainIds","ids","keys","includes","filter","client","owner","getClient","parameters","then","param","createEVMClient","_parameters_dapp_url","dapp","name","window","location","origin","iconUrl","api","supportedNetworks","analytics","enabled","skipAutoAnnounce","debug","headless","ui","preferredOpenLink","useDeeplink","mobile","eventHandlers","connect","param2","accounts","length","emit","map","a","accountsChanged","chainChanged","disconnect","displayUri","uri","type","data","catch","resetMetaMaskConnectClient","rethrow","metaMaskConnect","config","_Object_keys_","emitter","fallbackChainId","instance","instance2","guarded","claim","claim2","accountsOf","accountsOf2","chainIdOf","chainIdOf2","hex","rdns","setup","isReconnecting","arguments","result","chainIds"],"sources":["../../../../src/connectkit/connectors/metaMaskConnectConnector.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { coinbaseWallet } from "wagmi/connectors/coinbaseWallet";
|
|
2
1
|
import { safe } from "wagmi/connectors/safe";
|
|
3
2
|
import { metaMaskConnect } from "./connectors/metaMaskConnectConnector.mjs";
|
|
4
3
|
import { isEmbeddedDesktopWebview, metaMaskOptionsForEmbeddedDesktop } from "./connectors/embeddedDesktop.mjs";
|
|
5
4
|
import { aaveAccountConnector } from "./connectors/aaveAccountConnector.mjs";
|
|
5
|
+
import { coinbaseWalletConnector } from "./connectors/coinbaseWalletConnector.mjs";
|
|
6
6
|
const defaultConnectors = ({
|
|
7
7
|
app,
|
|
8
8
|
coinbaseWalletPreference,
|
|
@@ -29,7 +29,7 @@ const defaultConnectors = ({
|
|
|
29
29
|
iconUrl: app.icon
|
|
30
30
|
},
|
|
31
31
|
...(isEmbeddedDesktopWebview() ? metaMaskOptionsForEmbeddedDesktop() : {})
|
|
32
|
-
}),
|
|
32
|
+
}), coinbaseWalletConnector({
|
|
33
33
|
appName: app.name,
|
|
34
34
|
appLogoUrl: app.icon,
|
|
35
35
|
preference: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["safe","metaMaskConnect","isEmbeddedDesktopWebview","metaMaskOptionsForEmbeddedDesktop","aaveAccountConnector","coinbaseWalletConnector","defaultConnectors","app","coinbaseWalletPreference","enableAaveAccount","aaveAccountOptions","shouldUseSafeConnector","window","parent","connectors","push","allowedDomains","dapp","name","url","iconUrl","icon","appName","appLogoUrl","preference","options","telemetry","defaultConnectors_default"],"sources":["../../../src/connectkit/defaultConnectors.ts"],"sourcesContent":[null],"mappings":"AAIA,SAASA,IAAA,QAAY;AACrB,SAASC,eAAA,QAAuB;AAChC,SACEC,wBAAA,EACAC,iCAAA,QACK;AAGP,SAASC,oBAAA,QAA4B;AACrC,SAASC,uBAAA,QAA+B;AAcxC,MAAMC,iBAAA,GAAoBA,CAAC;EACzBC,GAAA;EACAC,wBAAA;EACAC,iBAAA;EACAC;AACF,MAAmD;EACjD,MAAMC,sBAAA,GAAyB,EAAE,OAAOC,MAAA,KAAW,gBAAgBA,MAAA,EAAQC,MAAA,KAAWD,MAAA;EAEtF,MAAME,UAAA,GAAkCL,iBAAA,GACpC,CAACL,oBAAA,CAAqBM,kBAAkB,CAAC,IACzC,EAAC;EAGL,IAAIC,sBAAA,EAAwB;IAC1BG,UAAA,CAAWC,IAAA,CACTf,IAAA,CAAK;MACHgB,cAAA,EAAgB,CAAC,mBAAmB,kBAAkB;IACxD,CAAC,CACH;EACF;EAEAF,UAAA,CAAWC,IAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAMTd,eAAA,CAAgB;IACdgB,IAAA,EAAM;MACJC,IAAA,EAAMX,GAAA,CAAIW,IAAA;MACVC,GAAA,EAAKZ,GAAA,CAAIY,GAAA;MACTC,OAAA,EAASb,GAAA,CAAIc;IACf;IACA,IAAInB,wBAAA,CAAyB,IAAIC,iCAAA,CAAkC,IAAI,CAAC;EAC1E,CAAC,GACDE,uBAAA,CAAwB;IACtBiB,OAAA,EAASf,GAAA,CAAIW,IAAA;IACbK,UAAA,EAAYhB,GAAA,CAAIc,IAAA;IAChBG,UAAA,EAAY;MACVC,OAAA,EAAS;MACT,GAAGjB,wBAAA;MACHkB,SAAA,EAAW;IACb;EACF,CAAC,CACH;EAUA,OAAOZ,UAAA;AACT;AAEA,IAAOa,yBAAA,GAAQrB,iBAAA","ignoreList":[]}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { coinbaseWallet } from "wagmi/connectors/coinbaseWallet";
|
|
2
1
|
import { safe } from "wagmi/connectors/safe";
|
|
3
2
|
import { metaMaskConnect } from "./connectors/metaMaskConnectConnector.native.js";
|
|
4
3
|
import { isEmbeddedDesktopWebview, metaMaskOptionsForEmbeddedDesktop } from "./connectors/embeddedDesktop.native.js";
|
|
5
4
|
import { aaveAccountConnector } from "./connectors/aaveAccountConnector.native.js";
|
|
5
|
+
import { coinbaseWalletConnector } from "./connectors/coinbaseWalletConnector.native.js";
|
|
6
6
|
var defaultConnectors = function defaultConnectors2(param) {
|
|
7
7
|
var {
|
|
8
8
|
app,
|
|
@@ -31,7 +31,7 @@ var defaultConnectors = function defaultConnectors2(param) {
|
|
|
31
31
|
iconUrl: app.icon
|
|
32
32
|
},
|
|
33
33
|
...(isEmbeddedDesktopWebview() ? metaMaskOptionsForEmbeddedDesktop() : {})
|
|
34
|
-
}),
|
|
34
|
+
}), coinbaseWalletConnector({
|
|
35
35
|
appName: app.name,
|
|
36
36
|
appLogoUrl: app.icon,
|
|
37
37
|
preference: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["safe","metaMaskConnect","isEmbeddedDesktopWebview","metaMaskOptionsForEmbeddedDesktop","aaveAccountConnector","coinbaseWalletConnector","defaultConnectors","defaultConnectors2","param","app","coinbaseWalletPreference","enableAaveAccount","aaveAccountOptions","_window","shouldUseSafeConnector","window","parent","connectors","push","allowedDomains","dapp","name","url","iconUrl","icon","appName","appLogoUrl","preference","options","telemetry","defaultConnectors_default","default"],"sources":["../../../src/connectkit/defaultConnectors.ts"],"sourcesContent":[null],"mappings":"AAIA,SAASA,IAAA,QAAY;AACrB,SAASC,eAAA,QAAuB;AAChC,SAAAC,wBAAA,EAAAC,iCAAA;AAAA,SACEC,oBAAA;AAAA,SACAC,uBAAA;AAAA,IAAAC,iBACK,YAAAC,mBAAAC,KAAA;EAGP;IAAAC,GAAS;IAAAC,wBAA4B;IAAAC,iBAAA;IAAAC;EAAA,IAAAJ,KAAA;EACrC,IAAAK,OAAS;EAcT,IAAMC,sBAAqB,YAAAC,MAAA,uBAAAF,OAAA,GAAAE,MAAA,cAAAF,OAAA,uBAAAA,OAAA,CAAAG,MAAA,MAAAD,MAAA;EACzB,IAAAE,UAAA,GAAAN,iBAAA,IACAP,oBAAA,CAAAQ,kBAAA,EACA;EACA,IAAAE,sBAAA;IACFG,UAAmD,CAAAC,IAAA,CAAAlB,IAAA;MACjDmB,cAAM,GAEA,iBAAkC,EAKpC;IACS,EACT;EAAK;EACmDF,UACvD,CAAAC,IAAA;EACH;EACF;EAEA;EAAW;EAAA;EAAAjB,eAAA;IAAAmB,IAAA;MAAAC,IAAA,EAAAZ,GAAA,CAAAY,IAAA;MAMTC,GAAA,EAAAb,GAAA,CAAAa,GAAgB;MACdC,OAAM,EAAAd,GAAA,CAAAe;IAAA;IACM,IACVtB,wBAAS,KAAAC,iCAAA;EAAA,IACIE,uBACf;IACAoB,OAAI,EAAAhB,GAAA,CAAAY,IAAA;IACLK,UAAA,EAAAjB,GAAA,CAAAe,IAAA;IACDG,UAAA;MACEC,OAAS,OAAI;MACb,GAAAlB,wBAAgB;MAChBmB,SAAA,EAAY;IAAA;EACD,EACN;EACQ,OACbZ,UAAA;AAAA;AACD,IACHa,yBAAA,GAAAxB,iBAAA;AAUA,SACFwB,yBAAA,IAAAC,OAAA","ignoreList":[]}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { coinbaseWallet } from "wagmi/connectors/coinbaseWallet";
|
|
2
|
+
const coinbaseWalletConnectorId = "coinbaseWalletSDK";
|
|
3
|
+
async function heldConnectorIds(storage) {
|
|
4
|
+
const persisted = await storage?.getItem("store");
|
|
5
|
+
const connections = persisted?.state?.connections;
|
|
6
|
+
if (!(connections instanceof Map)) return [];
|
|
7
|
+
return [...connections.values()].flatMap(connection => connection?.connector?.id ?? []);
|
|
8
|
+
}
|
|
9
|
+
function coinbaseWalletConnector(parameters) {
|
|
10
|
+
const base = coinbaseWallet(parameters);
|
|
11
|
+
return config => {
|
|
12
|
+
const connector = base(config);
|
|
13
|
+
const heldOnLoad = heldConnectorIds(config.storage).catch(() => []);
|
|
14
|
+
let picked = false;
|
|
15
|
+
const due = async () => {
|
|
16
|
+
if (picked) return true;
|
|
17
|
+
const [recent, held] = await Promise.all([config.storage?.getItem("recentConnectorId"), heldOnLoad]);
|
|
18
|
+
if (recent === coinbaseWalletConnectorId || held.includes(coinbaseWalletConnectorId)) picked = true;
|
|
19
|
+
return picked;
|
|
20
|
+
};
|
|
21
|
+
return {
|
|
22
|
+
...connector,
|
|
23
|
+
async setup() {
|
|
24
|
+
if (typeof window !== "undefined") void import("@coinbase/wallet-sdk").catch(() => void 0);
|
|
25
|
+
},
|
|
26
|
+
async connect(parameters2) {
|
|
27
|
+
picked = true;
|
|
28
|
+
return connector.connect.call(this, parameters2);
|
|
29
|
+
},
|
|
30
|
+
async getProvider(parameters2) {
|
|
31
|
+
if (!(await due())) return void 0;
|
|
32
|
+
return connector.getProvider.call(this, parameters2);
|
|
33
|
+
},
|
|
34
|
+
async isAuthorized() {
|
|
35
|
+
if (!(await due())) return false;
|
|
36
|
+
return connector.isAuthorized.call(this);
|
|
37
|
+
}
|
|
38
|
+
};
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
export { coinbaseWalletConnector, coinbaseWalletConnectorId };
|
|
42
|
+
//# sourceMappingURL=coinbaseWalletConnector.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["coinbaseWallet","coinbaseWalletConnectorId","heldConnectorIds","storage","persisted","getItem","connections","state","Map","values","flatMap","connection","connector","id","coinbaseWalletConnector","parameters","base","config","heldOnLoad","catch","picked","due","recent","held","Promise","all","includes","setup","window","connect","call","getProvider","isAuthorized"],"sources":["../../../../src/connectkit/connectors/coinbaseWalletConnector.ts"],"sourcesContent":[null],"mappings":"AASA,SAASA,cAAA,QAAqD;AAEvD,MAAMC,yBAAA,GAA4B;AAMzC,eAAeC,iBAAiBC,OAAA,EAAwD;EACtF,MAAMC,SAAA,GAAa,MAAMD,OAAA,EAASE,OAAA,CAAQ,OAAgB;EAI1D,MAAMC,WAAA,GAAcF,SAAA,EAAWG,KAAA,EAAOD,WAAA;EACtC,IAAI,EAAEA,WAAA,YAAuBE,GAAA,GAAM,OAAO,EAAC;EAC3C,OAAO,CAAC,GAAIF,WAAA,CAAiDG,MAAA,CAAO,CAAC,EAAEC,OAAA,CACpEC,UAAA,IAAeA,UAAA,EAAYC,SAAA,EAAWC,EAAA,IAAM,EAC/C;AACF;AAEO,SAASC,wBAAwBC,UAAA,EAA0D;EAChG,MAAMC,IAAA,GAAOhB,cAAA,CAAee,UAAU;EAEtC,OAAQE,MAAA,IAAW;IACjB,MAAML,SAAA,GAAYI,IAAA,CAAKC,MAAM;IAG7B,MAAMC,UAAA,GAAahB,gBAAA,CAAiBe,MAAA,CAAOd,OAAO,EAAEgB,KAAA,CAAM,MAAgB,EAAE;IAC5E,IAAIC,MAAA,GAAS;IACb,MAAMC,GAAA,GAAM,MAAAA,CAAA,KAAY;MACtB,IAAID,MAAA,EAAQ,OAAO;MACnB,MAAM,CAACE,MAAA,EAAQC,IAAI,IAAI,MAAMC,OAAA,CAAQC,GAAA,CAAI,CACvCR,MAAA,CAAOd,OAAA,EAASE,OAAA,CAAQ,mBAAmB,GAC3Ca,UAAA,CACD;MACD,IAAII,MAAA,KAAWrB,yBAAA,IAA6BsB,IAAA,CAAKG,QAAA,CAASzB,yBAAyB,GACjFmB,MAAA,GAAS;MACX,OAAOA,MAAA;IACT;IACA,OAAO;MACL,GAAGR,SAAA;MACH,MAAMe,MAAA,EAAQ;QAGZ,IAAI,OAAOC,MAAA,KAAW,aACpB,KAAK,OAAO,sBAAsB,EAAET,KAAA,CAAM,MAAM,MAAS;MAC7D;MACA,MAAMU,QAAQd,WAAA,EAAY;QACxBK,MAAA,GAAS;QACT,OAAOR,SAAA,CAAUiB,OAAA,CAAQC,IAAA,CAAK,MAAMf,WAAU;MAChD;MACA,MAAMgB,YAAYhB,WAAA,EAAY;QAC5B,IAAI,EAAE,MAAMM,GAAA,CAAI,IAAI,OAAO;QAC3B,OAAOT,SAAA,CAAUmB,WAAA,CAAYD,IAAA,CAAK,MAAMf,WAAU;MACpD;MACA,MAAMiB,aAAA,EAAe;QACnB,IAAI,EAAE,MAAMX,GAAA,CAAI,IAAI,OAAO;QAC3B,OAAOT,SAAA,CAAUoB,YAAA,CAAaF,IAAA,CAAK,IAAI;MACzC;IACF;EACF;AACF","ignoreList":[]}
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var __create = Object.create;
|
|
4
|
+
var __defProp = Object.defineProperty;
|
|
5
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
6
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
7
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
8
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
9
|
+
var __export = (target, all) => {
|
|
10
|
+
for (var name in all) __defProp(target, name, {
|
|
11
|
+
get: all[name],
|
|
12
|
+
enumerable: true
|
|
13
|
+
});
|
|
14
|
+
};
|
|
15
|
+
var __copyProps = (to, from, except, desc) => {
|
|
16
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
17
|
+
for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
|
|
18
|
+
get: () => from[key],
|
|
19
|
+
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
return to;
|
|
23
|
+
};
|
|
24
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
25
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
26
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
27
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
28
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
29
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
|
|
30
|
+
value: mod,
|
|
31
|
+
enumerable: true
|
|
32
|
+
}) : target, mod));
|
|
33
|
+
var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
34
|
+
value: true
|
|
35
|
+
}), mod);
|
|
36
|
+
var coinbaseWalletConnector_exports = {};
|
|
37
|
+
__export(coinbaseWalletConnector_exports, {
|
|
38
|
+
coinbaseWalletConnector: () => coinbaseWalletConnector,
|
|
39
|
+
coinbaseWalletConnectorId: () => coinbaseWalletConnectorId
|
|
40
|
+
});
|
|
41
|
+
module.exports = __toCommonJS(coinbaseWalletConnector_exports);
|
|
42
|
+
var import_coinbaseWallet = require("wagmi/connectors/coinbaseWallet");
|
|
43
|
+
function _instanceof(left, right) {
|
|
44
|
+
"@swc/helpers - instanceof";
|
|
45
|
+
|
|
46
|
+
if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) {
|
|
47
|
+
return !!right[Symbol.hasInstance](left);
|
|
48
|
+
} else {
|
|
49
|
+
return left instanceof right;
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
var coinbaseWalletConnectorId = "coinbaseWalletSDK";
|
|
53
|
+
async function heldConnectorIds(storage) {
|
|
54
|
+
var _persisted_state;
|
|
55
|
+
var persisted = await (storage === null || storage === void 0 ? void 0 : storage.getItem("store"));
|
|
56
|
+
var connections = persisted === null || persisted === void 0 ? void 0 : (_persisted_state = persisted.state) === null || _persisted_state === void 0 ? void 0 : _persisted_state.connections;
|
|
57
|
+
if (!_instanceof(connections, Map)) return [];
|
|
58
|
+
return [...connections.values()].flatMap(function (connection) {
|
|
59
|
+
var _ref;
|
|
60
|
+
var _connection_connector;
|
|
61
|
+
return (_ref = connection === null || connection === void 0 ? void 0 : (_connection_connector = connection.connector) === null || _connection_connector === void 0 ? void 0 : _connection_connector.id) !== null && _ref !== void 0 ? _ref : [];
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
function coinbaseWalletConnector(parameters) {
|
|
65
|
+
var base = (0, import_coinbaseWallet.coinbaseWallet)(parameters);
|
|
66
|
+
return function (config) {
|
|
67
|
+
var connector = base(config);
|
|
68
|
+
var heldOnLoad = heldConnectorIds(config.storage).catch(function () {
|
|
69
|
+
return [];
|
|
70
|
+
});
|
|
71
|
+
var picked = false;
|
|
72
|
+
var due = async function due2() {
|
|
73
|
+
var _config_storage;
|
|
74
|
+
if (picked) return true;
|
|
75
|
+
var [recent, held] = await Promise.all([(_config_storage = config.storage) === null || _config_storage === void 0 ? void 0 : _config_storage.getItem("recentConnectorId"), heldOnLoad]);
|
|
76
|
+
if (recent === coinbaseWalletConnectorId || held.includes(coinbaseWalletConnectorId)) picked = true;
|
|
77
|
+
return picked;
|
|
78
|
+
};
|
|
79
|
+
return {
|
|
80
|
+
...connector,
|
|
81
|
+
async setup() {
|
|
82
|
+
if (typeof window !== "undefined") void import("@coinbase/wallet-sdk").catch(function () {
|
|
83
|
+
return void 0;
|
|
84
|
+
});
|
|
85
|
+
},
|
|
86
|
+
async connect(parameters2) {
|
|
87
|
+
picked = true;
|
|
88
|
+
return connector.connect.call(this, parameters2);
|
|
89
|
+
},
|
|
90
|
+
async getProvider(parameters2) {
|
|
91
|
+
if (!(await due())) return void 0;
|
|
92
|
+
return connector.getProvider.call(this, parameters2);
|
|
93
|
+
},
|
|
94
|
+
async isAuthorized() {
|
|
95
|
+
if (!(await due())) return false;
|
|
96
|
+
return connector.isAuthorized.call(this);
|
|
97
|
+
}
|
|
98
|
+
};
|
|
99
|
+
};
|
|
100
|
+
}
|
|
101
|
+
//# sourceMappingURL=coinbaseWalletConnector.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["__create","Object","create","__defProp","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__getProtoOf","getPrototypeOf","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toESM","mod","isNodeMode","__esModule","value","__toCommonJS","coinbaseWalletConnector_exports","coinbaseWalletConnector","coinbaseWalletConnectorId","module","exports","import_coinbaseWallet","require","_instanceof","left","right","Symbol","hasInstance","heldConnectorIds","storage","_persisted_state","persisted","getItem"],"sources":["../../../../src/connectkit/connectors/coinbaseWalletConnector.ts"],"sourcesContent":[null],"mappings":"AASA,YAAS;;AAEF,IAAAA,QAAM,GAAAC,MAAA,CAAAC,MAAA;AAMb,IAAAC,SAAA,GAAeF,MAAA,CAAAG,cAAiB;AAC9B,IAAAC,gBAAmB,GAAAJ,MAAM,CAAAK,wBAAiC;AAI1D,IAAAC,iBAAM,GAAcN,MAAA,CAAAO,mBAAkB;AACtC,IAAAC,YAAM,GAAAR,MAAA,CAAAS,cAA6B;AACnC,IAAAC,YAAY,GAAAV,MAAiD,CAAAW,SAAU,CAAAC,cAAA;AAAA,IACrEC,QAAC,GAAAA,CAAAC,MAAe,EAAAC,GAAA,KAAY;EAC9B,SAAAC,IAAA,IAAAD,GAAA,EACFb,SAAA,CAAAY,MAAA,EAAAE,IAAA;IAAAC,GAAA,EAAAF,GAAA,CAAAC,IAAA;IAAAE,UAAA;EAAA;AAEO;AACL,IAAAC,WAAa,GAAAA,CAAAC,EAAA,EAAAC,IAAA,EAAAC,MAAe,EAAAC,IAAU;EAEtC,IAAAF,IAAQ,WAAWA,IAAA,wBAAAA,IAAA;IACjB,SAAMG,GAAA,IAAAlB,iBAAuB,CAAAe,IAAA,GAG7B,IAAM,CAAAX,YAAa,CAAAe,IAAA,CAAAL,EAAA,EAAAI,GAAA,KAAiBA,GAAA,KAAOF,MAAO,EAC9CpB,SAAS,CAAAkB,EAAA,EAAAI,GAAA;MAAAP,GAAA,EAAAA,CAAA,KAAAI,IAAA,CAAAG,GAAA;MAAAN,UAAA,IAAAK,IAAA,GAAAnB,gBAAA,CAAAiB,IAAA,EAAAG,GAAA,MAAAD,IAAA,CAAAL;IAAA;EACb;EACE,OAAAE,EAAI;AACJ;AAAyC,IAAAM,OACvC,GAAAA,CAAOC,GAAA,EAAAC,UAAS,EAAQd,MAAA,MAAAA,MAAA,GAAmBa,GAAA,WAAA5B,QAAA,CAAAS,YAAA,CAAAmB,GAAA,SAAAR,WAAA;AAAA;AAC3C;AAEF;AACE;AACFS,UAAA,IAAO,CAAAD,GAAA,KAAAA,GAAA,CAAAE,UAAA,GAAA3B,SAAA,CAAAY,MAAA;EAAAgB,KAAA,EAAAH,GAAA;EAAAT,UAAA;AAAA,KAAAJ,MAAA,EAAAa,GAET;AAAO,IAAAI,YACF,GAAAJ,GAAA,IAAAR,WAAA,CAAAjB,SAAA;EAAA4B,KAAA;AAAA,IAAAH,GAAA;AAAA,IAAAK,+BACW;AAGZnB,QAAA,CAAAmB,+BAAsB;EACpBC,uBAAY,EAAAA,CAAA,KAAAA,uBAA8B;EAAeC,yBAC7D,EAAAA,CAAA,KAAAA;AAAA;AAEEC,MAAA,CAAAC,OAAA,GAASL,YAAA,CAAAC,+BAAA;AACT,IAAAK,qBAAiB,GAAAC,OAAQ,kCAAqB;AAAA,SAChDC,YAAAC,IAAA,EAAAC,KAAA;EAAA,2BACkB;;EAChB,IAAAA,KAAA,IAAM,IAAM,IAAI,OAAIC,MAAO,oBAAAD,KAAA,CAAAC,MAAA,CAAAC,WAAA;IAC3B,SAAAF,KAAO,CAAAC,MAAU,CAAAC,WAAY,EAAAH,IAAK;EAAgB,OACpD;IAAA,OACAA,IAAM,YAAeC,KAAA;EACnB;AACA;AAAuC,IAAAP,yBACzC;AAAA,eACFU,iBAAAC,OAAA;EACF,IAAAC,gBAAA;EACF,IAAAC,SAAA,UAAAF,OAAA,aAAAA,OAAA,uBAAAA,OAAA,CAAAG,OAAA","ignoreList":[]}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { ChainNotConfiguredError, createConnector } from "wagmi";
|
|
2
2
|
import { getAddress, numberToHex, ResourceUnavailableRpcError, SwitchChainError, UserRejectedRequestError } from "viem";
|
|
3
|
+
import { mainnet } from "wagmi/chains";
|
|
3
4
|
import { isSyntheticChainId } from "./syntheticChains.mjs";
|
|
4
5
|
function metaMaskNetworks(chains, transports) {
|
|
5
6
|
const networks = {};
|
|
@@ -10,6 +11,31 @@ function metaMaskNetworks(chains, transports) {
|
|
|
10
11
|
}
|
|
11
12
|
return networks;
|
|
12
13
|
}
|
|
14
|
+
function metaMaskSupportedNetworks(networks, transports) {
|
|
15
|
+
const id = numberToHex(mainnet.id);
|
|
16
|
+
if (networks[id]) return networks;
|
|
17
|
+
return {
|
|
18
|
+
...networks,
|
|
19
|
+
[id]: metaMaskNetworks([mainnet], transports)[id] ?? mainnet.rpcUrls.default.http[0]
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
const offListMethods = /* @__PURE__ */new Set(["personal_sign", "eth_accounts", "eth_coinbase", "eth_chainId", "eth_requestAccounts", "net_version", "wallet_getPermissions", "wallet_requestPermissions", "wallet_revokePermissions", "wallet_switchEthereumChain", "wallet_addEthereumChain", "metamask_getProviderState", "metamask_sendDomainMetadata", "metamask_logWeb3ShimUsage", "wallet_registerOnboarding"]);
|
|
23
|
+
function listedChainsOnly(provider, mm, networks) {
|
|
24
|
+
const request = async args => {
|
|
25
|
+
const chainId = mm.getChainId();
|
|
26
|
+
if (chainId && !networks[numberToHex(Number(chainId))] && !offListMethods.has(args.method)) throw Object.assign(new Error(`MetaMask is on chain ${Number(chainId)}, which this app does not list, so ${args.method} was not sent`), {
|
|
27
|
+
code: 4901
|
|
28
|
+
});
|
|
29
|
+
return provider.request(args);
|
|
30
|
+
};
|
|
31
|
+
return new Proxy(provider, {
|
|
32
|
+
get(target, property) {
|
|
33
|
+
if (property === "request") return request;
|
|
34
|
+
const value = Reflect.get(target, property);
|
|
35
|
+
return typeof value === "function" ? value.bind(target) : value;
|
|
36
|
+
}
|
|
37
|
+
});
|
|
38
|
+
}
|
|
13
39
|
function transportUrl(chain, transports) {
|
|
14
40
|
const transport = transports?.[chain.id]?.({
|
|
15
41
|
chain
|
|
@@ -116,8 +142,10 @@ function metaMaskConnect(parameters) {
|
|
|
116
142
|
return createConnector(config => {
|
|
117
143
|
owner ??= config.emitter;
|
|
118
144
|
const networks = metaMaskNetworks(config.chains, config.transports);
|
|
145
|
+
const supportedNetworks = metaMaskSupportedNetworks(networks, config.transports);
|
|
119
146
|
const fallbackChainId = Number(Object.keys(networks)[0] ?? 1);
|
|
120
|
-
const instance = () => getClient(parameters,
|
|
147
|
+
const instance = () => getClient(parameters, supportedNetworks);
|
|
148
|
+
let guarded;
|
|
121
149
|
const claim = () => {
|
|
122
150
|
owner = config.emitter;
|
|
123
151
|
return instance();
|
|
@@ -166,7 +194,13 @@ function metaMaskConnect(parameters) {
|
|
|
166
194
|
return chainIdOf(await claim());
|
|
167
195
|
},
|
|
168
196
|
async getProvider() {
|
|
169
|
-
|
|
197
|
+
const mm = await claim();
|
|
198
|
+
const provider = mm.getProvider();
|
|
199
|
+
if (guarded?.provider !== provider) guarded = {
|
|
200
|
+
provider,
|
|
201
|
+
wrapped: listedChainsOnly(provider, mm, networks)
|
|
202
|
+
};
|
|
203
|
+
return guarded.wrapped;
|
|
170
204
|
},
|
|
171
205
|
async isAuthorized() {
|
|
172
206
|
try {
|
|
@@ -216,5 +250,5 @@ function metaMaskConnect(parameters) {
|
|
|
216
250
|
};
|
|
217
251
|
});
|
|
218
252
|
}
|
|
219
|
-
export { metaMaskConnect, metaMaskConnectChainIds, metaMaskNetworks, resetMetaMaskConnectClient };
|
|
253
|
+
export { metaMaskConnect, metaMaskConnectChainIds, metaMaskNetworks, metaMaskSupportedNetworks, resetMetaMaskConnectClient };
|
|
220
254
|
//# sourceMappingURL=metaMaskConnectConnector.mjs.map
|