@multiplatform.one/web3 7.37.0 → 7.38.0

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.
Files changed (90) hide show
  1. package/dist/cjs/connectkit/connectors/metaMaskConnectConnector.cjs +79 -8
  2. package/dist/cjs/connectkit/connectors/metaMaskConnectConnector.native.js +90 -5
  3. package/dist/cjs/connectkit/connectors/metaMaskConnectConnector.native.js.map +1 -1
  4. package/dist/cjs/connectkit/connectors/restoredSession.cjs +136 -0
  5. package/dist/cjs/connectkit/connectors/restoredSession.native.js +297 -0
  6. package/dist/cjs/connectkit/connectors/restoredSession.native.js.map +1 -0
  7. package/dist/cjs/connectkit/defaultConfig.cjs +3 -1
  8. package/dist/cjs/connectkit/defaultConfig.native.js +3 -1
  9. package/dist/cjs/connectkit/defaultConfig.native.js.map +1 -1
  10. package/dist/cjs/connectkit/defaultConnectors.cjs +5 -1
  11. package/dist/cjs/connectkit/defaultConnectors.native.js +5 -1
  12. package/dist/cjs/connectkit/defaultConnectors.native.js.map +1 -1
  13. package/dist/cjs/connectkit/index.cjs +3 -0
  14. package/dist/cjs/connectkit/index.native.js +3 -0
  15. package/dist/cjs/connectkit/index.native.js.map +1 -1
  16. package/dist/cjs/keycloak/KeycloakWalletLogin.cjs +16 -2
  17. package/dist/cjs/keycloak/useWalletLogin.cjs +9 -2
  18. package/dist/esm/connectkit/connectors/metaMaskConnectConnector.mjs +79 -8
  19. package/dist/esm/connectkit/connectors/metaMaskConnectConnector.mjs.map +1 -1
  20. package/dist/esm/connectkit/connectors/metaMaskConnectConnector.native.js +90 -5
  21. package/dist/esm/connectkit/connectors/metaMaskConnectConnector.native.js.map +1 -1
  22. package/dist/esm/connectkit/connectors/restoredSession.mjs +107 -0
  23. package/dist/esm/connectkit/connectors/restoredSession.mjs.map +1 -0
  24. package/dist/esm/connectkit/connectors/restoredSession.native.js +265 -0
  25. package/dist/esm/connectkit/connectors/restoredSession.native.js.map +1 -0
  26. package/dist/esm/connectkit/defaultConfig.mjs +3 -1
  27. package/dist/esm/connectkit/defaultConfig.mjs.map +1 -1
  28. package/dist/esm/connectkit/defaultConfig.native.js +3 -1
  29. package/dist/esm/connectkit/defaultConfig.native.js.map +1 -1
  30. package/dist/esm/connectkit/defaultConnectors.mjs +5 -1
  31. package/dist/esm/connectkit/defaultConnectors.mjs.map +1 -1
  32. package/dist/esm/connectkit/defaultConnectors.native.js +5 -1
  33. package/dist/esm/connectkit/defaultConnectors.native.js.map +1 -1
  34. package/dist/esm/connectkit/index.mjs +2 -1
  35. package/dist/esm/connectkit/index.mjs.map +1 -1
  36. package/dist/esm/connectkit/index.native.js +2 -1
  37. package/dist/esm/connectkit/index.native.js.map +1 -1
  38. package/dist/esm/keycloak/KeycloakWalletLogin.mjs +16 -2
  39. package/dist/esm/keycloak/KeycloakWalletLogin.mjs.map +1 -1
  40. package/dist/esm/keycloak/useWalletLogin.mjs +10 -3
  41. package/dist/esm/keycloak/useWalletLogin.mjs.map +1 -1
  42. package/dist/jsx/connectkit/connectors/metaMaskConnectConnector.mjs +79 -8
  43. package/dist/jsx/connectkit/connectors/metaMaskConnectConnector.mjs.map +1 -1
  44. package/dist/jsx/connectkit/connectors/metaMaskConnectConnector.native.js +90 -5
  45. package/dist/jsx/connectkit/connectors/metaMaskConnectConnector.native.js.map +1 -1
  46. package/dist/jsx/connectkit/connectors/restoredSession.mjs +107 -0
  47. package/dist/jsx/connectkit/connectors/restoredSession.mjs.map +1 -0
  48. package/dist/jsx/connectkit/connectors/restoredSession.native.js +297 -0
  49. package/dist/jsx/connectkit/connectors/restoredSession.native.js.map +1 -0
  50. package/dist/jsx/connectkit/defaultConfig.mjs +3 -1
  51. package/dist/jsx/connectkit/defaultConfig.mjs.map +1 -1
  52. package/dist/jsx/connectkit/defaultConfig.native.js +3 -1
  53. package/dist/jsx/connectkit/defaultConfig.native.js.map +1 -1
  54. package/dist/jsx/connectkit/defaultConnectors.mjs +5 -1
  55. package/dist/jsx/connectkit/defaultConnectors.mjs.map +1 -1
  56. package/dist/jsx/connectkit/defaultConnectors.native.js +5 -1
  57. package/dist/jsx/connectkit/defaultConnectors.native.js.map +1 -1
  58. package/dist/jsx/connectkit/index.mjs +2 -1
  59. package/dist/jsx/connectkit/index.mjs.map +1 -1
  60. package/dist/jsx/connectkit/index.native.js +3 -0
  61. package/dist/jsx/connectkit/index.native.js.map +1 -1
  62. package/dist/jsx/keycloak/KeycloakWalletLogin.mjs +16 -2
  63. package/dist/jsx/keycloak/KeycloakWalletLogin.mjs.map +1 -1
  64. package/dist/jsx/keycloak/useWalletLogin.mjs +10 -3
  65. package/dist/jsx/keycloak/useWalletLogin.mjs.map +1 -1
  66. package/dist/keycloak/login.iife.js +356 -356
  67. package/package.json +6 -6
  68. package/src/connectkit/connectors/metaMaskConnectConnector.spec.ts +316 -0
  69. package/src/connectkit/connectors/metaMaskConnectConnector.ts +143 -3
  70. package/src/connectkit/connectors/restoredSession.spec.ts +206 -0
  71. package/src/connectkit/connectors/restoredSession.ts +165 -0
  72. package/src/connectkit/defaultConfig.ts +8 -0
  73. package/src/connectkit/defaultConnectors.ts +6 -0
  74. package/src/connectkit/index.ts +5 -0
  75. package/src/keycloak/KeycloakWalletLogin.spec.tsx +51 -1
  76. package/src/keycloak/KeycloakWalletLogin.tsx +12 -1
  77. package/src/keycloak/useWalletLogin.ts +18 -2
  78. package/types/connectkit/connectors/metaMaskConnectConnector.d.ts +9 -0
  79. package/types/connectkit/connectors/metaMaskConnectConnector.d.ts.map +1 -1
  80. package/types/connectkit/connectors/restoredSession.d.ts +45 -0
  81. package/types/connectkit/connectors/restoredSession.d.ts.map +1 -0
  82. package/types/connectkit/defaultConfig.d.ts +7 -1
  83. package/types/connectkit/defaultConfig.d.ts.map +1 -1
  84. package/types/connectkit/defaultConnectors.d.ts +3 -1
  85. package/types/connectkit/defaultConnectors.d.ts.map +1 -1
  86. package/types/connectkit/index.d.ts +1 -0
  87. package/types/connectkit/index.d.ts.map +1 -1
  88. package/types/keycloak/KeycloakWalletLogin.d.ts.map +1 -1
  89. package/types/keycloak/useWalletLogin.d.ts +6 -0
  90. package/types/keycloak/useWalletLogin.d.ts.map +1 -1
@@ -2,6 +2,7 @@ import { isMobile } from "@multiplatform.one/connectkit";
2
2
  import { ChainNotConfiguredError, createConnector } from "wagmi";
3
3
  import { getAddress, numberToHex, ResourceUnavailableRpcError, SwitchChainError, UserRejectedRequestError } from "viem";
4
4
  import { mainnet } from "wagmi/chains";
5
+ import { forgetStoredSessions, untilSilent } from "./restoredSession.mjs";
5
6
  import { isSyntheticChainId } from "./syntheticChains.mjs";
6
7
  function metaMaskNetworks(chains, transports) {
7
8
  const networks = {};
@@ -85,10 +86,47 @@ let owner;
85
86
  const permittedChains = /* @__PURE__ */new Set();
86
87
  const unrecognizedChains = /* @__PURE__ */new Set();
87
88
  let lastDeeplink;
89
+ let handshakes = 0;
90
+ let answered = false;
88
91
  function forgetChains() {
89
92
  permittedChains.clear();
90
93
  unrecognizedChains.clear();
91
94
  lastDeeplink = void 0;
95
+ answered = false;
96
+ }
97
+ const walletMethods = /* @__PURE__ */new Set(["personal_sign", "eth_sign", "eth_signTypedData", "eth_signTypedData_v3", "eth_signTypedData_v4", "eth_sendTransaction", "wallet_requestPermissions", "wallet_addEthereumChain", "wallet_watchAsset", "wallet_sendCalls"]);
98
+ function watchRestoredSession(provider, timeout, drop) {
99
+ const request = args => {
100
+ const sent = provider.request(args);
101
+ if (!walletMethods.has(args.method)) return sent;
102
+ const heard = sent.then(value => {
103
+ answered = true;
104
+ return value;
105
+ }, err => {
106
+ if (err?.code === UserRejectedRequestError.code) answered = true;
107
+ throw err;
108
+ });
109
+ return answered ? heard : untilSilent(heard, timeout, drop);
110
+ };
111
+ return new Proxy(provider, {
112
+ get(target, property) {
113
+ if (property === "request") return request;
114
+ const value = Reflect.get(target, property);
115
+ return typeof value === "function" ? value.bind(target) : value;
116
+ }
117
+ });
118
+ }
119
+ const forgetDeadlineMs = 1500;
120
+ const dropDeadlineMs = 5e3;
121
+ const disconnectWaitMs = 1e3;
122
+ let dropping;
123
+ let forgetting;
124
+ let disconnecting;
125
+ function withDeadline(promise, ms) {
126
+ let timer;
127
+ return Promise.race([promise, new Promise((_, reject) => {
128
+ timer = setTimeout(() => reject(new Error(`timed out after ${ms} ms`)), ms);
129
+ })]).finally(() => clearTimeout(timer));
92
130
  }
93
131
  function reopenMetaMask() {
94
132
  if (!lastDeeplink) return false;
@@ -176,10 +214,13 @@ function getClient(parameters, networks) {
176
214
  forgetChains();
177
215
  owner?.emit("disconnect");
178
216
  },
179
- displayUri: uri => owner?.emit("message", {
180
- type: "display_uri",
181
- data: uri
182
- })
217
+ displayUri: uri => {
218
+ handshakes += 1;
219
+ owner?.emit("message", {
220
+ type: "display_uri",
221
+ data: uri
222
+ });
223
+ }
183
224
  }
184
225
  }));
185
226
  client.catch(() => {
@@ -190,6 +231,10 @@ function getClient(parameters, networks) {
190
231
  function resetMetaMaskConnectClient() {
191
232
  client = void 0;
192
233
  owner = void 0;
234
+ handshakes = 0;
235
+ dropping = void 0;
236
+ forgetting = void 0;
237
+ disconnecting = void 0;
193
238
  forgetChains();
194
239
  }
195
240
  function rethrow(err) {
@@ -207,6 +252,7 @@ function metaMaskConnect(parameters) {
207
252
  const fallbackChainId = Number(Object.keys(networks)[0] ?? 1);
208
253
  const mobile = parameters.mobile ?? isMobile();
209
254
  const addChainFirst = parameters.addChainFirst ?? metaMaskMayLackChain;
255
+ const restoredSessionTimeout = mobile ? parameters.restoredSessionTimeout : void 0;
210
256
  const instance = () => getClient(parameters, supportedNetworks);
211
257
  let guarded;
212
258
  const claim = () => {
@@ -218,6 +264,24 @@ function metaMaskConnect(parameters) {
218
264
  const hex = mm.getChainId();
219
265
  return hex ? Number(hex) : fallbackChainId;
220
266
  };
267
+ const dropSession = () => {
268
+ if (dropping) return dropping;
269
+ forgetChains();
270
+ config.emitter.emit("disconnect");
271
+ const forgotten = withDeadline(forgetStoredSessions(), forgetDeadlineMs).catch(() => void 0).finally(() => {
272
+ if (forgetting === forgotten) forgetting = void 0;
273
+ });
274
+ forgetting = forgotten;
275
+ const disconnected = instance().then(mm => mm.disconnect()).catch(() => void 0).finally(() => {
276
+ if (disconnecting === disconnected) disconnecting = void 0;
277
+ });
278
+ disconnecting = disconnected;
279
+ const drop = forgotten.then(() => withDeadline(disconnected, dropDeadlineMs)).catch(() => void 0).finally(() => {
280
+ if (dropping === drop) dropping = void 0;
281
+ });
282
+ dropping = drop;
283
+ return drop;
284
+ };
221
285
  return {
222
286
  id: "metaMaskSDK",
223
287
  name: "MetaMask",
@@ -230,13 +294,17 @@ function metaMaskConnect(parameters) {
230
294
  chainId,
231
295
  isReconnecting
232
296
  } = {}) {
297
+ if (forgetting) await forgetting;
298
+ if (disconnecting) await withDeadline(disconnecting, disconnectWaitMs).catch(() => void 0);
233
299
  const mm = await claim();
234
300
  try {
235
301
  let accounts = isReconnecting ? accountsOf(mm) : [];
236
302
  if (!accounts.length) {
303
+ const before = handshakes;
237
304
  const result = await mm.connect({
238
305
  chainIds: metaMaskConnectChainIds(networks, chainId)
239
306
  });
307
+ if (handshakes !== before) answered = true;
240
308
  accounts = result.accounts.map(a => getAddress(a));
241
309
  }
242
310
  const current = chainIdOf(mm);
@@ -262,10 +330,13 @@ function metaMaskConnect(parameters) {
262
330
  async getProvider() {
263
331
  const mm = await claim();
264
332
  const provider = mm.getProvider();
265
- if (guarded?.provider !== provider) guarded = {
266
- provider,
267
- wrapped: listedChainsOnly(provider, mm, networks, supportedNetworks)
268
- };
333
+ if (guarded?.provider !== provider) {
334
+ const listed = listedChainsOnly(provider, mm, networks, supportedNetworks);
335
+ guarded = {
336
+ provider,
337
+ wrapped: restoredSessionTimeout ? watchRestoredSession(listed, restoredSessionTimeout, dropSession) : listed
338
+ };
339
+ }
269
340
  return guarded.wrapped;
270
341
  },
271
342
  async isAuthorized() {
@@ -1 +1 @@
1
- {"version":3,"names":["isMobile","ChainNotConfiguredError","createConnector","getAddress","numberToHex","ResourceUnavailableRpcError","SwitchChainError","UserRejectedRequestError","mainnet","isSyntheticChainId","metaMaskNetworks","chains","transports","networks","chain","id","url","transportUrl","rpcUrls","default","http","isUrl","metaMaskSupportedNetworks","offListMethods","Set","signUnderMainnet","provider","args","selected","selectedChainId","request","listedChainsOnly","mm","supportedNetworks","chainId","getChainId","current","Number","has","method","Object","assign","Error","code","Proxy","get","target","property","value","Reflect","bind","transport","first","URL","metaMaskBuiltInTestnets","metaMaskMayLackChain","testnet","isUnrecognizedChain","err","message","includes","metaMaskConnectChainIds","ids","keys","filter","client","owner","permittedChains","unrecognizedChains","lastDeeplink","forgetChains","clear","reopenMetaMask","open","recordingOpenLink","navigate","window","location","href","getClient","parameters","then","createEVMClient","dapp","name","origin","iconUrl","api","analytics","enabled","skipAutoAnnounce","debug","headless","ui","mobile","preferredOpenLink","useDeeplink","eventHandlers","connect","accounts","length","emit","map","a","accountsChanged","chainChanged","add","disconnect","displayUri","uri","type","data","catch","resetMetaMaskConnectClient","rethrow","metaMaskConnect","config","emitter","fallbackChainId","addChainFirst","instance","guarded","claim","accountsOf","chainIdOf","hex","rdns","setup","isReconnecting","result","chainIds","getAccounts","getProvider","wrapped","isAuthorized","switchChain","addEthereumChainParameter","find","c","chainConfiguration","chainName","nativeCurrency","blockExplorers","blockExplorerUrls","params","delete","cause","onAccountsChanged","onChainChanged","onDisconnect"],"sources":["../../../../src/connectkit/connectors/metaMaskConnectConnector.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["isMobile","ChainNotConfiguredError","createConnector","getAddress","numberToHex","ResourceUnavailableRpcError","SwitchChainError","UserRejectedRequestError","mainnet","forgetStoredSessions","untilSilent","isSyntheticChainId","metaMaskNetworks","chains","transports","networks","chain","id","url","transportUrl","rpcUrls","default","http","isUrl","metaMaskSupportedNetworks","offListMethods","Set","signUnderMainnet","provider","args","selected","selectedChainId","request","listedChainsOnly","mm","supportedNetworks","chainId","getChainId","current","Number","has","method","Object","assign","Error","code","Proxy","get","target","property","value","Reflect","bind","transport","first","URL","metaMaskBuiltInTestnets","metaMaskMayLackChain","testnet","isUnrecognizedChain","err","message","includes","metaMaskConnectChainIds","ids","keys","filter","client","owner","permittedChains","unrecognizedChains","lastDeeplink","handshakes","answered","forgetChains","clear","walletMethods","watchRestoredSession","timeout","drop","sent","heard","then","forgetDeadlineMs","dropDeadlineMs","disconnectWaitMs","dropping","forgetting","disconnecting","withDeadline","promise","ms","timer","Promise","race","_","reject","setTimeout","finally","clearTimeout","reopenMetaMask","open","recordingOpenLink","navigate","window","location","href","getClient","parameters","createEVMClient","dapp","name","origin","iconUrl","api","analytics","enabled","skipAutoAnnounce","debug","headless","ui","mobile","preferredOpenLink","useDeeplink","eventHandlers","connect","accounts","length","emit","map","a","accountsChanged","chainChanged","add","disconnect","displayUri","uri","type","data","catch","resetMetaMaskConnectClient","rethrow","metaMaskConnect","config","emitter","fallbackChainId","addChainFirst","restoredSessionTimeout","instance","guarded","claim","accountsOf","chainIdOf","hex","dropSession","forgotten","disconnected","rdns","setup","isReconnecting","before","result","chainIds","getAccounts","getProvider","listed","wrapped","isAuthorized","switchChain","addEthereumChainParameter","find","c","chainConfiguration","chainName","nativeCurrency","blockExplorers","blockExplorerUrls","params","delete","cause","onAccountsChanged","onChainChanged","onDisconnect"],"sources":["../../../../src/connectkit/connectors/metaMaskConnectConnector.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -2,6 +2,7 @@ import { isMobile } from "@multiplatform.one/connectkit";
2
2
  import { ChainNotConfiguredError, createConnector } from "wagmi";
3
3
  import { getAddress, numberToHex, ResourceUnavailableRpcError, SwitchChainError, UserRejectedRequestError } from "viem";
4
4
  import { mainnet } from "wagmi/chains";
5
+ import { forgetStoredSessions, untilSilent } from "./restoredSession.native.js";
5
6
  import { isSyntheticChainId } from "./syntheticChains.native.js";
6
7
  function metaMaskNetworks(chains, transports) {
7
8
  var networks = {};
@@ -109,10 +110,51 @@ var owner;
109
110
  var permittedChains = /* @__PURE__ */new Set();
110
111
  var unrecognizedChains = /* @__PURE__ */new Set();
111
112
  var lastDeeplink;
113
+ var handshakes = 0;
114
+ var answered = false;
112
115
  function forgetChains() {
113
116
  permittedChains.clear();
114
117
  unrecognizedChains.clear();
115
118
  lastDeeplink = void 0;
119
+ answered = false;
120
+ }
121
+ var walletMethods = /* @__PURE__ */new Set(["personal_sign", "eth_sign", "eth_signTypedData", "eth_signTypedData_v3", "eth_signTypedData_v4", "eth_sendTransaction", "wallet_requestPermissions", "wallet_addEthereumChain", "wallet_watchAsset", "wallet_sendCalls"]);
122
+ function watchRestoredSession(provider, timeout, drop) {
123
+ var request = function request2(args) {
124
+ var sent = provider.request(args);
125
+ if (!walletMethods.has(args.method)) return sent;
126
+ var heard = sent.then(function (value) {
127
+ answered = true;
128
+ return value;
129
+ }, function (err) {
130
+ if ((err === null || err === void 0 ? void 0 : err.code) === UserRejectedRequestError.code) answered = true;
131
+ throw err;
132
+ });
133
+ return answered ? heard : untilSilent(heard, timeout, drop);
134
+ };
135
+ return new Proxy(provider, {
136
+ get(target, property) {
137
+ if (property === "request") return request;
138
+ var value = Reflect.get(target, property);
139
+ return typeof value === "function" ? value.bind(target) : value;
140
+ }
141
+ });
142
+ }
143
+ var forgetDeadlineMs = 1500;
144
+ var dropDeadlineMs = 5e3;
145
+ var disconnectWaitMs = 1e3;
146
+ var dropping;
147
+ var forgetting;
148
+ var disconnecting;
149
+ function withDeadline(promise, ms) {
150
+ var timer;
151
+ return Promise.race([promise, new Promise(function (_, reject) {
152
+ timer = setTimeout(function () {
153
+ return reject(new Error(`timed out after ${ms} ms`));
154
+ }, ms);
155
+ })]).finally(function () {
156
+ return clearTimeout(timer);
157
+ });
116
158
  }
117
159
  function reopenMetaMask() {
118
160
  if (!lastDeeplink) return false;
@@ -209,7 +251,8 @@ function getClient(parameters, networks) {
209
251
  owner === null || owner === void 0 ? void 0 : owner.emit("disconnect");
210
252
  },
211
253
  displayUri: function displayUri(uri) {
212
- return owner === null || owner === void 0 ? void 0 : owner.emit("message", {
254
+ handshakes += 1;
255
+ owner === null || owner === void 0 ? void 0 : owner.emit("message", {
213
256
  type: "display_uri",
214
257
  data: uri
215
258
  });
@@ -225,6 +268,10 @@ function getClient(parameters, networks) {
225
268
  function resetMetaMaskConnectClient() {
226
269
  client = void 0;
227
270
  owner = void 0;
271
+ handshakes = 0;
272
+ dropping = void 0;
273
+ forgetting = void 0;
274
+ disconnecting = void 0;
228
275
  forgetChains();
229
276
  }
230
277
  function rethrow(err) {
@@ -243,6 +290,7 @@ function metaMaskConnect(parameters) {
243
290
  var fallbackChainId = Number((_Object_keys_ = Object.keys(networks)[0]) !== null && _Object_keys_ !== void 0 ? _Object_keys_ : 1);
244
291
  var mobile = (_parameters_mobile = parameters.mobile) !== null && _parameters_mobile !== void 0 ? _parameters_mobile : isMobile();
245
292
  var addChainFirst = (_parameters_addChainFirst = parameters.addChainFirst) !== null && _parameters_addChainFirst !== void 0 ? _parameters_addChainFirst : metaMaskMayLackChain;
293
+ var restoredSessionTimeout = mobile ? parameters.restoredSessionTimeout : void 0;
246
294
  var instance = function instance2() {
247
295
  return getClient(parameters, supportedNetworks);
248
296
  };
@@ -260,6 +308,34 @@ function metaMaskConnect(parameters) {
260
308
  var hex = mm.getChainId();
261
309
  return hex ? Number(hex) : fallbackChainId;
262
310
  };
311
+ var dropSession = function dropSession2() {
312
+ if (dropping) return dropping;
313
+ forgetChains();
314
+ config.emitter.emit("disconnect");
315
+ var forgotten = withDeadline(forgetStoredSessions(), forgetDeadlineMs).catch(function () {
316
+ return void 0;
317
+ }).finally(function () {
318
+ if (forgetting === forgotten) forgetting = void 0;
319
+ });
320
+ forgetting = forgotten;
321
+ var disconnected = instance().then(function (mm) {
322
+ return mm.disconnect();
323
+ }).catch(function () {
324
+ return void 0;
325
+ }).finally(function () {
326
+ if (disconnecting === disconnected) disconnecting = void 0;
327
+ });
328
+ disconnecting = disconnected;
329
+ var drop = forgotten.then(function () {
330
+ return withDeadline(disconnected, dropDeadlineMs);
331
+ }).catch(function () {
332
+ return void 0;
333
+ }).finally(function () {
334
+ if (dropping === drop) dropping = void 0;
335
+ });
336
+ dropping = drop;
337
+ return drop;
338
+ };
263
339
  return {
264
340
  id: "metaMaskSDK",
265
341
  name: "MetaMask",
@@ -275,13 +351,19 @@ function metaMaskConnect(parameters) {
275
351
  chainId,
276
352
  isReconnecting
277
353
  } = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
354
+ if (forgetting) await forgetting;
355
+ if (disconnecting) await withDeadline(disconnecting, disconnectWaitMs).catch(function () {
356
+ return void 0;
357
+ });
278
358
  var mm = await claim();
279
359
  try {
280
360
  var accounts = isReconnecting ? accountsOf(mm) : [];
281
361
  if (!accounts.length) {
362
+ var before = handshakes;
282
363
  var result = await mm.connect({
283
364
  chainIds: metaMaskConnectChainIds(networks, chainId)
284
365
  });
366
+ if (handshakes !== before) answered = true;
285
367
  accounts = result.accounts.map(function (a) {
286
368
  return getAddress(a);
287
369
  });
@@ -309,10 +391,13 @@ function metaMaskConnect(parameters) {
309
391
  async getProvider() {
310
392
  var mm = await claim();
311
393
  var provider = mm.getProvider();
312
- if ((guarded === null || guarded === void 0 ? void 0 : guarded.provider) !== provider) guarded = {
313
- provider,
314
- wrapped: listedChainsOnly(provider, mm, networks, supportedNetworks)
315
- };
394
+ if ((guarded === null || guarded === void 0 ? void 0 : guarded.provider) !== provider) {
395
+ var listed = listedChainsOnly(provider, mm, networks, supportedNetworks);
396
+ guarded = {
397
+ provider,
398
+ wrapped: restoredSessionTimeout ? watchRestoredSession(listed, restoredSessionTimeout, dropSession) : listed
399
+ };
400
+ }
316
401
  return guarded.wrapped;
317
402
  },
318
403
  async isAuthorized() {
@@ -1 +1 @@
1
- {"version":3,"names":["isMobile","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","signUnderMainnet","provider","args","selected","selectedChainId","request","listedChainsOnly","mm","supportedNetworks","request2","chainId","getChainId","current","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","metaMaskBuiltInTestnets","metaMaskMayLackChain","testnet","isUnrecognizedChain","message","includes","metaMaskConnectChainIds","ids","keys","filter","client","owner","permittedChains","unrecognizedChains","lastDeeplink","forgetChains","clear","reopenMetaMask","open","recordingOpenLink","navigate","window","location","href","getClient","parameters","then","param","createEVMClient","_parameters_dapp_url","dapp","name","origin","iconUrl","api","analytics","enabled","skipAutoAnnounce","debug","headless","ui","mobile","preferredOpenLink","useDeeplink","eventHandlers","connect","param2","accounts","length","emit","map","a","accountsChanged","chainChanged","add","disconnect","displayUri","uri","type","data","catch","resetMetaMaskConnectClient","rethrow","metaMaskConnect","config","_Object_keys_","_parameters_mobile","_parameters_addChainFirst","emitter","fallbackChainId","addChainFirst","instance","instance2","guarded","claim","claim2","accountsOf","accountsOf2","chainIdOf","chainIdOf2","hex","rdns","setup","isReconnecting","arguments","result","chainIds","getAccounts"],"sources":["../../../../src/connectkit/connectors/metaMaskConnectConnector.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["isMobile","ChainNotConfiguredError","createConnector","getAddress","numberToHex","ResourceUnavailableRpcError","SwitchChainError","UserRejectedRequestError","mainnet","forgetStoredSessions","untilSilent","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","signUnderMainnet","provider","args","selected","selectedChainId","request","listedChainsOnly","mm","supportedNetworks","request2","chainId","getChainId","current","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","metaMaskBuiltInTestnets","metaMaskMayLackChain","testnet","isUnrecognizedChain","message","includes","metaMaskConnectChainIds","ids","keys","filter","client","owner","permittedChains","unrecognizedChains","lastDeeplink","handshakes","answered","forgetChains","clear","walletMethods","watchRestoredSession","timeout","drop","sent","heard","then","forgetDeadlineMs","dropDeadlineMs","disconnectWaitMs","dropping","forgetting","disconnecting","withDeadline","promise","ms","timer","Promise","race","_","reject","setTimeout","finally","clearTimeout","reopenMetaMask","open","recordingOpenLink","navigate","window","location","href","getClient","parameters","param","createEVMClient","_parameters_dapp_url","dapp","name","origin","iconUrl","api","analytics","enabled","skipAutoAnnounce","debug","headless","ui","mobile","preferredOpenLink","useDeeplink","eventHandlers","connect","param2","accounts","length","emit","map","a","accountsChanged","chainChanged","add","disconnect","displayUri","uri","type","data","catch","resetMetaMaskConnectClient","rethrow","metaMaskConnect","config","_Object_keys_","_parameters_mobile","_parameters_addChainFirst","emitter","fallbackChainId","addChainFirst","restoredSessionTimeout","instance","instance2","guarded","claim","claim2","accountsOf","accountsOf2","chainIdOf","chainIdOf2","hex","dropSession","dropSession2","forgotten","disconnected","rdns","setup","isReconnecting","arguments","before","result","chainIds"],"sources":["../../../../src/connectkit/connectors/metaMaskConnectConnector.ts"],"sourcesContent":[null],"mappings":"AAcA,SAASA,QAAA,QAAgB;AACzB,SAASC,uBAAA,EAAiDC,eAAA,QAAuB;AACjF,SAAAC,UAAA,EAAAC,WAAA,EAAAC,2BAAA,EAAAC,gBAAA,EAAAC,wBAAA;AAAA,SAGEC,OAAA;AAAA,SAEAC,oBAAA,EAAAC,WAAA;AAAA,SACAC,kBAAA;AAAA,SACAC,iBAAAC,MAAA,EAAAC,UAAA;EACA,IAAAC,QAAA;EAAA,IAAAC,yBACK;IAAAC,iBAAA;IAAAC,cAAA;EACP;IAEA,KAAS,IAAAC,SAAA,GAAAN,MAAmD,CAAAO,MAAA,CAAAC,QAAA,GAAmB,EAAAC,KAAA,IAAAN,yBAAA,IAAAM,KAAA,GAAAH,SAAA,CAAAI,IAAA,IAAAC,IAAA,GAAAR,yBAAA;MAC/E,IAASS,KAAA,GAAAH,KAAA,CAAAI,KAAA;MA0CF,IAASC,sBACd;MAGA,IAAMhB,kBAAiC,CAAAc,KAAA,CAAAG,EAAA;MACvC,IAAAC,GAAW,GAAAC,YAAS,CAAAL,KAAQ,EAAAX,UAAA,OAAAa,sBAAA,GAAAF,KAAA,CAAAM,OAAA,CAAAC,OAAA,cAAAL,sBAAA,uBAAAA,sBAAA,CAAAM,IAAA;MAC1B,IAAIJ,GAAA,IAAAK,KAAA,CAAAL,GAAA,CAAmB,EAAAd,QAAW,CAAAX,WAAA,CAAAqB,KAAA,CAAAG,EAAA,KAAAC,GAAA;IAClC;EACA,SAAIM,GAAA,EAAO;IACblB,iBAAA;IACAC,cAAO,GAAAiB,GAAA;EACT;IASO;MAIL,IAAM,CAAAnB,yBAA2B,IAAAG,SAAA,CAAAiB,MAAA;QAC7BjB,SAAW,CAAAiB,MAAG;MAClB;IACE,UAAG;MACF,IAAKnB,iBAAiB,EAAC;QAC1B,MAAAC,cAAA;MACF;IAOA;EACE;EACA,OAAAH,QAAA;AAAA;AACA,SACAsB,0BAAAtB,QAAA,EAAAD,UAAA;EACA,IAAAwB,oBAAA;EACA,IAAAV,EAAA,GAAAxB,WAAA,CAAAI,OAAA,CAAAoB,EAAA;EACA,IAAAb,QAAA,CAAAa,EAAA,UAAAb,QAAA;EACA;IACA,GAAAA,QAAA;IACA,CAAAa,EAAA,IAAAU,oBAAA,GAAA1B,gBAAA,EACAJ,OAAA,CACA,EAAAM,UAAA,EAAAc,EAAA,eAAAU,oBAAA,cAAAA,oBAAA,GAAA9B,OAAA,CAAAuB,OAAA,CAAAC,OAAA,CAAAC,IAAA;EACA;AAAA;AACA,IACAM,cAAA,sBAAAC,GAAA,EACD,iBAUD,cAAS,EAIP,cAAM,EACN,aAAS,EACT,qBAAI,EACF,aAAO,EACT,uBAAE,EACA,2BAAS,EACX,4BACF,8BAEA,yBACE,EAKA,2BAAwB,EACtB,6BAAmB,EACnB,2BAAgB,EAChB,2BAAyB,CACvB;AAAa,SACXC,gBAAIA,CAAAC,QAAA,EAAAC,IAAA;EAAA,IAAAC,QACF,GAAAF,QAAA,CAAAG,eAA+B;EAAyDH,QAC1F,CAAAG,eAAA,GAAAzC,WAAA,CAAAI,OAAA,CAAAoB,EAAA;EAAA;IACa,OACfc,QAAA,CAAAI,OAAA,CAAAH,IAAA;EACF,UAAI;IACFD,QAAA,CAAOG,eAAA,GAAiBD,QAAA;EAC1B;AAAqC;AAEvC,SAAOG,gBAAUA,CAAAL,QAAU,EAAAM,EAAA,EAAAjC,QAAA,EAAAkC,iBAAA;EAAA,IACzBH,OAAI,GAAQ,eAAUI,SAAAP,IAAA;IACpB,IAAAQ,OAAI,GAAAH,EAAA,CAAAI,UAAa,EAAW;IAC5B,IAAAC,OAAM,GAAAF,OAAQ,GAAQ/C,WAAI,CAAQkD,MAAA,CAAAH,OAAQ;IAC1C,IAAAE,OAAO,KAAOtC,QAAA,CAAAsC,OAAU,MAAAd,cAAwB,CAAAgB,GAAM,CAAAZ,IAAI,CAAAa,MAAA,SAAAC,MAAA,CAAAC,MAAA,KAAAC,KAAA,yBAAAL,MAAA,CAAAH,OAAA,uCAAAR,IAAA,CAAAa,MAAA;MAC5DI,IAAA;IACD;IACH,IAAAP,OAAA,KAAAJ,iBAAA,CAAAI,OAAA,KAAAV,IAAA,CAAAa,MAAA,6BAAAf,gBAAA,CAAAC,QAAA,EAAAC,IAAA;IAMA,OAASD,QAAA,CAAAI,OACP,CAAAH,IACA;EAEA;EACA,OAAM,IAAAkB,KAAS,CAAAnB,QAAW;IAC1BoB,IAAAC,MAAQ,EAAAC,QAAS;MACnB,IAAAA,QAAA,uBAAAlB,OAAA;MAEA,IAASpB,KAAM,GAAAuC,OAAwB,CAAAH,GAAA,CAAAC,MAAA,EAAAC,QAAA;MACjC,cAAAtC,KAAA,kBAAAA,KAAA,CAAAwC,IAAA,CAAAH,MAAA,IAAArC,KAAA;IACF;EACA;AAAO;AAEP,SAAAI,YAAOA,CAAAL,KAAA,EAAAX,UAAA;EACT,IAAAqD,oBAAA,EAAAC,2BAAA,EAAAC,gBAAA,EAAAC,MAAA,EAAAC,KAAA;EACF,IAAAC,SAAA,GAAA1D,UAAA,aAAAA,UAAA,wBAAAqD,oBAAA,GAAArD,UAAA,CAAAW,KAAA,CAAAG,EAAA,eAAAuC,oBAAA,uBAAAA,oBAAA,CAAAM,IAAA,CAAA3D,UAAA;IAKAW;EAQO;EACL,IAAAiD,KAAO,GAAAF,SAAM,KAAY,QAASA,SAAA,mBAA4B,KAAAH,gBAAQ,GAAAG,SAAA,CAAA9C,KAAA,cAAA2C,gBAAA,wBAAAD,2BAAA,GAAAC,gBAAA,CAAAvD,UAAA,cAAAsD,2BAAA,uBAAAA,2BAAA;EACxE,QAAAG,KAAA,GAAAG,KAAA,aAAAA,KAAA,cAAAA,KAAA,GAAAF,SAAA,cAAAD,KAAA,wBAAAD,MAAA,GAAAC,KAAA,CAAA7C,KAAA,cAAA4C,MAAA,uBAAAA,MAAA,CAAAzC,GAAA;AAEA;AACE,SAAMK,KAAEA,CAAAR,KAAM;EACd;IACF,IAAAiD,GAAA,CAAAjD,KAAA;IAGO,OAAS;EACd,SAAMkD,MAAM;IACZ,OAAK;EACL;AACA;AACF,IAAAC,uBAAA,sBAAArC,GAAA,EAOA,QAAI,EACJ,KAAI,EAGJ,KAAM,EACN,IAAM,EACN,IAAI,CAKJ;AACA,SAAIsC,oBAAWA,CAAArD,KAAA;EAEf,OAASA,KAAA,CAAAsD,OAAA,KAAqB,SAAAF,uBAAA,CAAAtB,GAAA,CAAA9B,KAAA,CAAAG,EAAA;AAC5B;AACA,SAAAoD,mBAAyBA,CAAA7C,GAAA;EACzB;IAAAyB,IAAA;IAAAqB;EAAe,IAAA9C,GAAA,aAAAA,GAAA,cAAAA,GAAA;EACf,OAAAyB,IAAW,oBAAAqB,OAAA,iBAAAA,OAAA,CAAAC,QAAA;AACb;AAKA,SAAMC,uBAAgBA,CAAApE,QAAA,EAAIoC,OAAI;EAC5B,IAAAiC,GAAA,GAAA3B,MAAA,CAAA4B,IAAA,CAAAtE,QAAA;EACA,KAAAoC,OAAA,IAAAxC,kBAAA,CAAAwC,OAAA,UAAAiC,GAAA;EACA,IAAAV,KAAA,GAAAtE,WAAA,CAAA+C,OAAA;EACA,OAAAiC,GAAA,CAAAF,QAAA,CAAAR,KAAA,KACAA,KAAA,EACA,GAAAU,GAAA,CAAAE,MAAA,WAAA1D,EAAA;IACA,OAAAA,EAAA,KAAA8C,KAAA;EACA,GACA,GAAAU,GAAA;AAAA;AAEF,IAACG,MAAA;AAED,IAAAC,KAAS;AAKP,IAAAC,eAAiB,GAAC,eAA+C,IAAAjD,GAAA;AAC/D,IAAAkD,kBAAa,kBAA8B,IAAAlD,GAAA;AAC3C,IAAAmD,YAAK;AACL,IAAAC,UAAM,IAAQ;AAAK,IAAAC,QAChB,QAAU;AACT,SAAAC,YAAWA,CAAA;EACXL,eAAO,CAAAM,KAAA;EAAAL,kBACT,CAAAK,KAAA;EAAAJ,YACC,GAAiB;EAChBE,QAAA,GAAK,KAA2B;AAChC;AAAM,IAAAG,aACR,sBAAAxD,GAAA,iBACF,EACA,UAAO,EACT,qBACA,sBAAiB,EAAU,sBACb,EACV,qBAAiB,EACjB,2BAAsB,EACtB,yBAAc,EAA4C,mBAC5D,EACF,kBAAC,CACH;AAIA,SAAMyD,oBAAmBA,CAAAvD,QAAA,EAAAwD,OAAA,EAAAC,IAAA;EACzB,IAAMrD,OAAA,YAAiBI,SAAAP,IAAA;IACvB,IAAMyD,IAAA,GAAA1D,QAAA,CAAAI,OAAmB,CAAAH,IAAA;IAIrB,KAAAqD,aAAA,CAAAzC,GAAA,CAAAZ,IAAA,CAAAa,MAAA,UAAA4C,IAAA;IAEA,IAAAC,KAAA,GAAAD,IAAA,CAAAE,IAAA,WAAA5E,KAAA;MAIAmE,QAAA;MAEJ,OAASnE,KAAA;IACP,GAAI,UAAAS,GAAA;MACJ,IAAO,CAAAA,GAAA,KAAQ,IAAK,IAAAA,GAAA,uBAAAA,GAAA,CAAAyB,IAAA,MAAArD,wBAAA,CAAAqD,IAAA,EAAAiC,QAAA;MAClB,MAAA1D,GAAA;IACA;IACE,OAAA0D,QAAQ,GAAAQ,KAAW,GAAA3F,WAAa,CAAI2F,KAAA,EAAMH,OAAA,EAAAC,IAAA;EAAgC;EAE9E,OAAG,IAAQtC,KAAA,CAAMnB,QAAA;IACnBoB,IAAAC,MAAA,EAAAC,QAAA;MASO,IAASA,QAAA,cAA0B,SAAAlB,OAAA;MACpC,IAACpB,KAAA,GAAAuC,OAAc,CAAAH,GAAO,CAAAC,MAAA,EAAAC,QAAA;MAC1B,cAAkBtC,KAAA,eAAkB,GAAAA,KAAO,CAAAwC,IAAA,CAAAH,MAAA,IAAArC,KAAA;IAC3C;EACF;AAEA;AAGE,IAAA6E,gBAAa,OAAW;AACtB,IAAAC,cAAA,GAAiB;AACjB,IAAAC,gBAAgB;AAAA,IAClBC,QAAA;AACF,IAAAC,UAAA;AAEA,IAAAC,aAAS;AACP,SAAIC,YAAOA,CAAAC,OAAW,EAAAC,EAAA;EACxB,IAAAC,KAAA;EAEA,OAASC,OAAA,CAAAC,IACP,EAGAJ,OAAI,EACJ,IAAAG,OAAS,WAAOE,CAAA,EAAAC,MAAA;IAA+BJ,KAAE,GAAAK,UAAgB,aAC/D;MACE,OAAMD,MAAA,KAAAzD,KAAA,oBAAAoD,EAAA;IAAA,GACJA,EAAA;EAAsB,GAGsC,EAAAO,OACxD,aAAW;IAAuD,OACxEC,YAAA,CAAAP,KAAA;EAAA;AACmC;AACP,SAC5BQ,eAAA,EAAkB;EAAA,IAClB,CAAA7B,YAAO,SAAW;EAAAA,YACd,CAAA8B,IAAA,CAAW9B,YAAW,CAAE9D,GAAA,EAAI,OAAE;EAAsB,OACxD;AAAQ;AAAA,SAAA6F,kBAAAD,IAAA;EAAA,iBAAA5F,GAAA,EAAAkC,MAAA;IAAA4B,YAIF;MAImD9D,GACvD;MACF4F;IAAA;IACeA,IAAA,CAAA5F,GAAA,EAAAkC,MAAA;EAAA;AAAA;AAAA,SAIb4D,QAASA,CAAC9F,GAAE;EACV,WAAA+F,MAAI,KAAS,aAAAA,MAAA,CAAAC,QAAA,CAAAC,IAAA,GAAAjG,GAAA;AACX;AAAuB,SAAAkG,SACrBA,CAAAC,UAAU,EAAAjH,QAAc;EAAmB,IAAAwE,MAAA,EAC3C,OAAAA,MAAS;EAAcA,MAAA,SACxB,0BAAAe,IAAA,WAAA2B,KAAA;IAAA,IACL;MAAAC;IAAA,IAAAD,KAAA;IAAA,IACAE,oBAAkB;IAChB,OAAAD,eAAa;MACXE,IAAA;QACAC,IAAA,EAAAL,UAAY,CAAAI,IAAA,CAAAC,IAAA;QAAYxG,GAC1B,GAAAsG,oBAAmB,GAAAH,UAAY,CAAAI,IAAU,CAAAvG,GAAA,MAAS,IAAK,IAAAsG,oBAAsB,cAAAA,oBAAA,UAAAP,MAAA,mBAAAA,MAAA,CAAAC,QAAA,CAAAS,MAAA;QAC/E,IAAAN,UAAA,CAAAI,IAAA,CAAAG,OAAA;UACAA,OAAA,EAAAP,UAAe,CAAAI,IAAA,CAAYG;QACzB;MACA;MAAkDC,GACpD;QACAvF,iBAAY,EAAMlC;MAChB;MACA0H,SAAA,EAAO;QACTC,OAAA;MAAA;MAEEC,gBAAA,EAAc;MACdC,KAAA,EAAAZ,UAAY,CAAAY,KAAA;MAA6C,IAC3DZ,UAAA,CAAAa,QAAA;QACFC,EAAA;UACDD,QAAA;QACH;MACA,IAAO;MACLE,MAAA,EAAS;QACV;QACD;QACF;QAGO,IAASf,UAAA,CAAAgB,iBAAmC;UACjDA,iBAAS,EAAAtB,iBAAA,CAAAM,UAAA,CAAAgB,iBAAA;QACT,IAAQhB,UAAA,CAAAiB,WAAA;UACRD,iBAAa,EAAAtB,iBAAA,CAAAC,QAAA;QACb;QACA,IAAAK,UAAa,CAAAiB,WAAA;UACbA,WAAgB,EAAAjB,UAAA,CAAAiB;QAChB;MACF;MAEAC,aAAiB;QACT;QACF;QACA;QACFC,OAAU,WAAAA,QAAAC,MAAA,EAA4B;UAClC;YAAAC,QAAA;YAAAlG;UAAA,IAAAiG,MAAA;UACR,IAAAC,QAAA,CAAAC,MAAA,EAAA9D,KAAA,aAAAA,KAAA,uBAAAA,KAAA,CAAA+D,IAAA;YAEAF,QAAgB,EAAAA,QAAO,CAAAG,GAAA,WAAAC,CAAA;cACP,OAAAtJ,UAAgB,CAAAsJ,CAAA;YACvB;YACLtG,OAAU,EAAOG,MAAA,CAAAH,OAAA;UACX;QACN;QACAuG,eAAM,WAAkBA,eAAmBA,CAAAL,QAAW;UAChD,IAAAA,QAAS,CAAAC,MAAA,KAAW;YACpBxD,YAAA,EAAgB;YAChBN,KAAA,aAAAA,KAAyB,UAAS,UAAW,GAAAA,KAAA,CAAA+D,IAAA,aAAyB;UACtE,OAAA/D,KAAW,KAAM,QAAAA,KAAU,UAAY,aAAAA,KAAiB,CAAA+D,IAAA;YAC1DF,QAAA,EAAAA,QAAA,CAAAG,GAAA,WAAAC,CAAA;cAGE,OAAQtJ,UAAM,CAAAsJ,CAAA;YAClB;UACA;QACF;QACAE,YAAM,WAAoDA,YAAYA,CAAAxG,OAAK;UACrEsC,eAAa,CAAAmE,GAAA,CAA2BtG,MAAA,CAAAH,OAAA;UAC5CqC,KAAM,KAAM,IAAG,IAAAA,KAAW,uBAAAA,KAAA,CAAA+D,IAAA;YAC1BpG,OAAa,EAAAG,MAAO,CAAAH,OAAO;UAC7B;QAMA;QACE0G,UAAI,EAAU,SAAOA,WAAA;UACrB/D,YAAa;UACbN,KAAO,SAAQ,IAAKA,KAAA,KAAY,kBAAAA,KAAA,CAAA+D,IAAA;QAChC;QAGIO,UAAI,WAAeA,UAAWA,CAAAC,GAAA;UAC/BnE,UAAA;UACHJ,KAAA,KAAa,QAAAA,KAAA,uBAAAA,KAAA,CAAA+D,IAAA;YACPS,IAAA,eAA8B;YAI5BC,IAAA,EAAAF;UACL;QACH;MACA;IAII;EAAkC;EAEtCxE,MAAA,CAAA2E,KAAA,aAAW;IACX3E,MAAA,GAAO;EAAA,EACT;EAEA,OAAAA,MAAO;AAAA;AACD,SACJ4E,0BAAMA,CAAA;EAAA5E,MACN,QAAO;EAAmCC,KAC1C,QAAM;EAAgBI,UAChB;EAGJc,QAAA,QAAM;EAAgCC,UACxC;EAAAC,aACM,QAAU;EAKdd,YAAI;AAIJ;AACE,SAAAsE,OAAMA,CAAAjI,GAAA;EACR,IAAAyB,IAAA,GAAAzB,GAAM,KAAK,IAAM,IAAAA,GAAM,uBAAAA,GAAA,CAAAyB,IAAA;EACvB,IAAAA,IAAA,KAAIrD,wBAAA,CAAAqD,IAAA,YAAArD,wBAAA,CAAA4B,GAAA;EACF,IAAAyB,IAAA,KAAIvD,2BAA4B,CAAAuD,IAAA,QAAa,IAAIvD,2BAAC,CAAA8B,GAAA;EAClD,MAAAA,GAAA;AACE;AACAkI,eAAA,CAAAL,IAAM,aAAe;AAAW,SAAAK,eACpBA,CAAArC,UAAA;EAAyC,OAAA9H,eACpD,WAAAoK,MAAA;IACD,IAAAC,aAAI,EAAAC,kBAAuB,EAAAC,yBAAW;IACtCjF,KAAA,aAAAA,KAAW,KAAO,SAASA,KAAK,GAAAA,KAAM,GAAA8E,MAAa,CAAAI,OAAA;IAAA,IAAA3J,QACrD,GAAAH,gBAAA,CAAA0J,MAAA,CAAAzJ,MAAA,EAAAyJ,MAAA,CAAAxJ,UAAA;IACA,IAAAmC,iBAAM,GAAUZ,yBAAY,CAAAtB,QAAA,EAAAuJ,MAAA,CAAAxJ,UAAA;IAC5B,IAAA6J,eAAA,GAAgBrH,MAAI,EAAAiH,aAAO,GAAA9G,MAAA,CAAA4B,IAAA,CAAAtE,QAAA,kBAAAwJ,aAAA,cAAAA,aAAA;IAC3B,IAAAxB,MAAA,GAAO,CAAAyB,kBAA+B,GAASxC,UAAQ,CAAAe,MAAA,cAAAyB,kBAAA,cAAAA,kBAAA,GAAAxK,QAAA;IAAA,IACzD4K,aAAS,GAAK,CAAAH,yBAAA,GAAAzC,UAAA,CAAA4C,aAAA,cAAAH,yBAAA,cAAAA,yBAAA,GAAA3F,oBAAA;IACZ,IAAA+F,sBAAW,GAAA9B,MAAA,GAAAf,UAAA,CAAA6C,sBAAA;IAAA,IACbC,QAAA,YAAAC,UAAA;MACF,OAAAhD,SAAA,CAAAC,UAAA,EAAA/E,iBAAA;IAAA;IAEE,IAAA+H,OAAA;IACA,IAAAC,KAAA,GAAO,SAAMC,MAASA,CAAA;MACxB1F,KAAA,GAAA8E,MAAA,CAAAI,OAAA;MACA,OAAMI,QAAA;IACJ;IAA+B,IACjCK,UAAA,YAAAC,YAAApI,EAAA;MACA,OAAMA,EAAA,CAAAqG,QAAA,CAAaG,GAAA,WAAAC,CAAA;QACjB,OAAOtJ,UAAU,CAAAsJ,CAAA;MACnB;IAAA;IAIE,IAAA4B,SAAM,GAAK,SAAMC,UAAMA,CAAAtI,EAAA;MACvB,IAAAuI,GAAA,GAAMvI,EAAA,CAAAI,UAAc;MACpB,OAAImI,GAAA,GAAAjI,MAAS,CAAAiI,GAAA,IAAAZ,eAAuB;IAClC;IACA,IAAAa,WAAA,GAAU,SAAAC,aAAA;MAAA,IAAA/E,QACR,SAAAA,QAAA;MAAAZ,YACA;MAEIwE,MACN,CAAAI,OAAA,CAAAnB,IAAA;MAAA,IACFmC,SAAA,GAAA7E,YAAA,CAAApG,oBAAA,IAAA8F,gBAAA,EAAA2D,KAAA;QACA,OAAO;MACT,GAAA5C,OAAA;QACA,IAAMX,UAAA,KAAe+E,SAAA,EAAA/E,UAAA;MAInB;MACEA,UAAA,GAAO+E,SAAW;MAAwB,IAC5CC,YAAQ,GAAAb,QAAA,GAAAxE,IAAA,WAAAtD,EAAA;QACN,OAAAA,EAAO,CAAA6G,UAAA;MAAA,EACT,CAAAK,KAAA;QACF;MACA,GAAA5C,OAAM,aAAc;QAClB,IAAAV,aAAc,KAAO+E,YAAa,EAAA/E,aAAe,QAAO;MACxD;MACEA,aAAM,GAAI+E,YAAA;MACZ,IAAAxF,IAAM,GAAAuF,SAAA,CAAApF,IAAA,aAAqB;QAAA,OACzBO,YAAS,CAAA8E,YAAmB,EAAAnF,cAAA;MAAA,GAAA0D,KAC5B,aAAW;QAA8C,OACzD;MAAmE,GAAA5C,OACnE,aAAS;QAE2B,IACpCZ,QAAU,KAAAP,IAAA,EAAAO,QAAgB,QAAQ;MAE7B,EACP;MACAA,QAAM,GAAAP,IAAK;MACX,OAAIA,IAAG;IACP;IACE;MACEvE,EAAA,eAAS;MAAiEyG,IAC5E,YACG;MAKDuD,IAAA,GAA+B,aAC7B,EAAQ,oBACC,CAAkB;MACnB5B,IACZ,EAAAK,eAAO,CAAAL,IAAA;MAIL,MAAA6B,MAAA,EAAM;QAAgD,MACxDf,QAAA,GAAAZ,KAAA;UACA;QACA;MACA;MAAO,MACTf,OAASA,CAAA,EAAK;QACZ;UAAKhG,OAA2B;UAAA2I;QAAS,IAAAC,SAAA,CAAAzC,MAAyB,QAAAyC,SAAA,iBAAAA,SAAA;QAChE,IAAApF,UAAU,QAAAA,UAAA;QACZ,IAAAC,aAAc,QAAAC,YAAoB,CAAAD,aAAM,EAAAH,gBAAA,EAAAyD,KAAA;UACtC;QACA;QAAU,IAAAlH,EACR,SAAOiI,KAAA;QAAA;UACD,IAAA5B,QACF,GAAAyC,cAAA,GAAAX,UAAgC,CAAAnI,EAAI;UAAA,KAAAqG,QAClC,CAAAC,MAAO,EAAI;YAAA,IACf0C,MAAA,GAAApG,UAAA;YAAA,IACAqG,MAAE,GAAM,MAAKjJ,EAAA,CAAAmG,OAAA;cACf+C,QAAA,EAAA/G,uBAAA,CAAApE,QAAA,EAAAoC,OAAA;YACF;YACF,IAAAyC,UAAA,KAAAoG,MAAA,EAAAnG,QAAA;YACAwD,QAAU,GAAA4C,MAAA,CAAA5C,QAAiB,CAAAG,GAAY,WAAAC,CAAA;cACzC,OAAAtJ,UAAA,CAAAsJ,CAAA;YACF;UACA;UACE,IAAIpG,OAAS,GAAAgI,SAAW,CAAGrI,EAAA;UAAgCyC,eAC/C,CAAAmE,GAAQ,CAAAvG,OAAK;UAC3B;YACAgG,QAAA;YACElG,OAAO,EAAAE;UACT;QACA,SAAAlB,GAAA,EAAe;UACbiI,OAAO,CAAAjI,GAAA;QACT;MACF;MACD,MAAA0H,WAAA;QACH/D,YAAA","ignoreList":[]}
@@ -0,0 +1,107 @@
1
+ const defaultRestoredSessionTimeout = {
2
+ afterReturnMs: 2e4,
3
+ withoutTripMs: 45e3
4
+ };
5
+ class MetaMaskSessionLostError extends Error {
6
+ /** EIP-1193 "Disconnected". */
7
+ code = 4900;
8
+ constructor() {
9
+ super("MetaMask never answered on the stored connection, so it was dropped. Connect your wallet again.");
10
+ this.name = "MetaMaskSessionLostError";
11
+ }
12
+ }
13
+ const metaMaskConnectSessionStore = {
14
+ database: "mmconnect-kv-store",
15
+ store: "sdk-kv-store",
16
+ sessionsKey: "sessions:master-list",
17
+ sessionKey: id => `session:${id}`
18
+ };
19
+ function forgetStoredSessions(idb = globalThis.indexedDB) {
20
+ const {
21
+ database,
22
+ store,
23
+ sessionsKey,
24
+ sessionKey
25
+ } = metaMaskConnectSessionStore;
26
+ return new Promise(resolve => {
27
+ let open;
28
+ try {
29
+ if (!idb) throw new Error("no IndexedDB");
30
+ open = idb.open(database);
31
+ } catch {
32
+ resolve();
33
+ return;
34
+ }
35
+ open.onupgradeneeded = () => open.transaction?.abort();
36
+ open.onerror = () => resolve();
37
+ open.onsuccess = () => {
38
+ const db = open.result;
39
+ const done = () => {
40
+ db.close();
41
+ resolve();
42
+ };
43
+ try {
44
+ if (!db.objectStoreNames.contains(store)) return done();
45
+ const tx = db.transaction(store, "readwrite");
46
+ tx.oncomplete = done;
47
+ tx.onabort = done;
48
+ const sessions = tx.objectStore(store);
49
+ const listed = sessions.get(sessionsKey);
50
+ listed.onsuccess = () => {
51
+ try {
52
+ let ids;
53
+ try {
54
+ ids = JSON.parse(String(listed.result ?? "[]"));
55
+ } catch {
56
+ ids = [];
57
+ }
58
+ for (const id of Array.isArray(ids) ? ids : []) if (typeof id === "string") sessions.delete(sessionKey(id));
59
+ sessions.delete(sessionsKey);
60
+ } catch {
61
+ done();
62
+ }
63
+ };
64
+ } catch {
65
+ done();
66
+ }
67
+ };
68
+ });
69
+ }
70
+ function untilSilent(request, timeout, drop, page = globalThis.document) {
71
+ return new Promise((resolve, reject) => {
72
+ let settled = false;
73
+ let leftPage = page?.visibilityState === "hidden";
74
+ let timer;
75
+ const settle = () => {
76
+ settled = true;
77
+ clearTimeout(timer);
78
+ page?.removeEventListener("visibilitychange", arm);
79
+ };
80
+ const silent = () => {
81
+ if (settled) return;
82
+ settle();
83
+ void drop().catch(() => void 0).then(() => reject(new MetaMaskSessionLostError()));
84
+ };
85
+ function arm() {
86
+ clearTimeout(timer);
87
+ if (page?.visibilityState === "hidden") {
88
+ leftPage = true;
89
+ return;
90
+ }
91
+ timer = setTimeout(silent, leftPage ? timeout.afterReturnMs : timeout.withoutTripMs);
92
+ }
93
+ page?.addEventListener("visibilitychange", arm);
94
+ arm();
95
+ request.then(value => {
96
+ if (settled) return;
97
+ settle();
98
+ resolve(value);
99
+ }, error => {
100
+ if (settled) return;
101
+ settle();
102
+ reject(error);
103
+ });
104
+ });
105
+ }
106
+ export { MetaMaskSessionLostError, defaultRestoredSessionTimeout, forgetStoredSessions, metaMaskConnectSessionStore, untilSilent };
107
+ //# sourceMappingURL=restoredSession.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["defaultRestoredSessionTimeout","afterReturnMs","withoutTripMs","MetaMaskSessionLostError","Error","code","constructor","name","metaMaskConnectSessionStore","database","store","sessionsKey","sessionKey","id","forgetStoredSessions","idb","globalThis","indexedDB","Promise","resolve","open","onupgradeneeded","transaction","abort","onerror","onsuccess","db","result","done","close","objectStoreNames","contains","tx","oncomplete","onabort","sessions","objectStore","listed","get","ids","JSON","parse","String","Array","isArray","delete","untilSilent","request","timeout","drop","page","document","reject","settled","leftPage","visibilityState","timer","settle","clearTimeout","removeEventListener","arm","silent","catch","then","setTimeout","addEventListener","value","error"],"sources":["../../../../src/connectkit/connectors/restoredSession.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}