@multiplatform.one/web3 7.31.1 → 7.33.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 (179) hide show
  1. package/README.md +84 -0
  2. package/dist/cjs/clients/evm.cjs +52 -1
  3. package/dist/cjs/clients/evm.native.js +56 -1
  4. package/dist/cjs/clients/evm.native.js.map +1 -1
  5. package/dist/cjs/clients/hooks.cjs +5 -2
  6. package/dist/cjs/clients/hooks.native.js +7 -2
  7. package/dist/cjs/clients/hooks.native.js.map +1 -1
  8. package/dist/cjs/clients/index.cjs +4 -0
  9. package/dist/cjs/clients/index.native.js +4 -0
  10. package/dist/cjs/clients/index.native.js.map +1 -1
  11. package/dist/cjs/clients/preparedSend.cjs +96 -0
  12. package/dist/cjs/clients/preparedSend.native.js +225 -0
  13. package/dist/cjs/clients/preparedSend.native.js.map +1 -0
  14. package/dist/cjs/connectkit/connectors/metaMaskConnectConnector.cjs +108 -27
  15. package/dist/cjs/connectkit/connectors/metaMaskConnectConnector.native.js +105 -28
  16. package/dist/cjs/connectkit/connectors/metaMaskConnectConnector.native.js.map +1 -1
  17. package/dist/cjs/connectkit/index.cjs +2 -0
  18. package/dist/cjs/connectkit/index.native.js +2 -0
  19. package/dist/cjs/connectkit/index.native.js.map +1 -1
  20. package/dist/cjs/connectkit/openConnector/context.cjs +16 -3
  21. package/dist/cjs/connectkit/openConnector/context.native.js +19 -4
  22. package/dist/cjs/connectkit/openConnector/context.native.js.map +1 -1
  23. package/dist/cjs/connectkit/openConnector/launcher.cjs +2 -2
  24. package/dist/cjs/connectkit/openConnector/launcher.native.js +2 -2
  25. package/dist/cjs/connectkit/openConnector/launcher.native.js.map +1 -1
  26. package/dist/cjs/phantom/evm.cjs +133 -0
  27. package/dist/cjs/phantom/evm.native.js +269 -0
  28. package/dist/cjs/phantom/evm.native.js.map +1 -0
  29. package/dist/cjs/phantom/index.cjs +36 -0
  30. package/dist/cjs/phantom/index.native.js +39 -0
  31. package/dist/cjs/phantom/index.native.js.map +1 -0
  32. package/dist/cjs/phantom/urls.cjs +33 -0
  33. package/dist/cjs/phantom/urls.native.js +38 -0
  34. package/dist/cjs/phantom/urls.native.js.map +1 -0
  35. package/dist/cjs/wagmi/driver.cjs +13 -9
  36. package/dist/cjs/wagmi/driver.native.js +17 -9
  37. package/dist/cjs/wagmi/driver.native.js.map +1 -1
  38. package/dist/esm/clients/evm.mjs +53 -2
  39. package/dist/esm/clients/evm.mjs.map +1 -1
  40. package/dist/esm/clients/evm.native.js +57 -2
  41. package/dist/esm/clients/evm.native.js.map +1 -1
  42. package/dist/esm/clients/hooks.mjs +5 -2
  43. package/dist/esm/clients/hooks.mjs.map +1 -1
  44. package/dist/esm/clients/hooks.native.js +7 -2
  45. package/dist/esm/clients/hooks.native.js.map +1 -1
  46. package/dist/esm/clients/index.mjs +2 -1
  47. package/dist/esm/clients/index.mjs.map +1 -1
  48. package/dist/esm/clients/index.native.js +2 -1
  49. package/dist/esm/clients/index.native.js.map +1 -1
  50. package/dist/esm/clients/preparedSend.mjs +69 -0
  51. package/dist/esm/clients/preparedSend.mjs.map +1 -0
  52. package/dist/esm/clients/preparedSend.native.js +195 -0
  53. package/dist/esm/clients/preparedSend.native.js.map +1 -0
  54. package/dist/esm/connectkit/connectors/metaMaskConnectConnector.mjs +107 -28
  55. package/dist/esm/connectkit/connectors/metaMaskConnectConnector.mjs.map +1 -1
  56. package/dist/esm/connectkit/connectors/metaMaskConnectConnector.native.js +104 -29
  57. package/dist/esm/connectkit/connectors/metaMaskConnectConnector.native.js.map +1 -1
  58. package/dist/esm/connectkit/index.mjs +2 -2
  59. package/dist/esm/connectkit/index.mjs.map +1 -1
  60. package/dist/esm/connectkit/index.native.js +2 -2
  61. package/dist/esm/connectkit/index.native.js.map +1 -1
  62. package/dist/esm/connectkit/openConnector/context.mjs +17 -4
  63. package/dist/esm/connectkit/openConnector/context.mjs.map +1 -1
  64. package/dist/esm/connectkit/openConnector/context.native.js +20 -5
  65. package/dist/esm/connectkit/openConnector/context.native.js.map +1 -1
  66. package/dist/esm/connectkit/openConnector/launcher.mjs +2 -2
  67. package/dist/esm/connectkit/openConnector/launcher.mjs.map +1 -1
  68. package/dist/esm/connectkit/openConnector/launcher.native.js +2 -2
  69. package/dist/esm/connectkit/openConnector/launcher.native.js.map +1 -1
  70. package/dist/esm/phantom/evm.mjs +103 -0
  71. package/dist/esm/phantom/evm.mjs.map +1 -0
  72. package/dist/esm/phantom/evm.native.js +236 -0
  73. package/dist/esm/phantom/evm.native.js.map +1 -0
  74. package/dist/esm/phantom/index.mjs +4 -0
  75. package/dist/esm/phantom/index.mjs.map +1 -0
  76. package/dist/esm/phantom/index.native.js +4 -0
  77. package/dist/esm/phantom/index.native.js.map +1 -0
  78. package/dist/esm/phantom/urls.mjs +7 -0
  79. package/dist/esm/phantom/urls.mjs.map +1 -0
  80. package/dist/esm/phantom/urls.native.js +9 -0
  81. package/dist/esm/phantom/urls.native.js.map +1 -0
  82. package/dist/esm/wagmi/driver.mjs +14 -10
  83. package/dist/esm/wagmi/driver.mjs.map +1 -1
  84. package/dist/esm/wagmi/driver.native.js +18 -10
  85. package/dist/esm/wagmi/driver.native.js.map +1 -1
  86. package/dist/jsx/clients/evm.mjs +53 -2
  87. package/dist/jsx/clients/evm.mjs.map +1 -1
  88. package/dist/jsx/clients/evm.native.js +56 -1
  89. package/dist/jsx/clients/evm.native.js.map +1 -1
  90. package/dist/jsx/clients/hooks.mjs +5 -2
  91. package/dist/jsx/clients/hooks.mjs.map +1 -1
  92. package/dist/jsx/clients/hooks.native.js +7 -2
  93. package/dist/jsx/clients/hooks.native.js.map +1 -1
  94. package/dist/jsx/clients/index.mjs +2 -1
  95. package/dist/jsx/clients/index.mjs.map +1 -1
  96. package/dist/jsx/clients/index.native.js +4 -0
  97. package/dist/jsx/clients/index.native.js.map +1 -1
  98. package/dist/jsx/clients/preparedSend.mjs +69 -0
  99. package/dist/jsx/clients/preparedSend.mjs.map +1 -0
  100. package/dist/jsx/clients/preparedSend.native.js +225 -0
  101. package/dist/jsx/clients/preparedSend.native.js.map +1 -0
  102. package/dist/jsx/connectkit/connectors/metaMaskConnectConnector.mjs +107 -28
  103. package/dist/jsx/connectkit/connectors/metaMaskConnectConnector.mjs.map +1 -1
  104. package/dist/jsx/connectkit/connectors/metaMaskConnectConnector.native.js +105 -28
  105. package/dist/jsx/connectkit/connectors/metaMaskConnectConnector.native.js.map +1 -1
  106. package/dist/jsx/connectkit/index.mjs +2 -2
  107. package/dist/jsx/connectkit/index.mjs.map +1 -1
  108. package/dist/jsx/connectkit/index.native.js +2 -0
  109. package/dist/jsx/connectkit/index.native.js.map +1 -1
  110. package/dist/jsx/connectkit/openConnector/context.mjs +17 -4
  111. package/dist/jsx/connectkit/openConnector/context.mjs.map +1 -1
  112. package/dist/jsx/connectkit/openConnector/context.native.js +19 -4
  113. package/dist/jsx/connectkit/openConnector/context.native.js.map +1 -1
  114. package/dist/jsx/connectkit/openConnector/launcher.mjs +2 -2
  115. package/dist/jsx/connectkit/openConnector/launcher.mjs.map +1 -1
  116. package/dist/jsx/connectkit/openConnector/launcher.native.js +2 -2
  117. package/dist/jsx/connectkit/openConnector/launcher.native.js.map +1 -1
  118. package/dist/jsx/phantom/evm.mjs +103 -0
  119. package/dist/jsx/phantom/evm.mjs.map +1 -0
  120. package/dist/jsx/phantom/evm.native.js +269 -0
  121. package/dist/jsx/phantom/evm.native.js.map +1 -0
  122. package/dist/jsx/phantom/index.mjs +4 -0
  123. package/dist/jsx/phantom/index.mjs.map +1 -0
  124. package/dist/jsx/phantom/index.native.js +39 -0
  125. package/dist/jsx/phantom/index.native.js.map +1 -0
  126. package/dist/jsx/phantom/urls.mjs +7 -0
  127. package/dist/jsx/phantom/urls.mjs.map +1 -0
  128. package/dist/jsx/phantom/urls.native.js +38 -0
  129. package/dist/jsx/phantom/urls.native.js.map +1 -0
  130. package/dist/jsx/wagmi/driver.mjs +14 -10
  131. package/dist/jsx/wagmi/driver.mjs.map +1 -1
  132. package/dist/jsx/wagmi/driver.native.js +17 -9
  133. package/dist/jsx/wagmi/driver.native.js.map +1 -1
  134. package/dist/keycloak/login.iife.js +382 -382
  135. package/package.json +12 -6
  136. package/src/clients/evm.ts +86 -0
  137. package/src/clients/hooks.spec.tsx +1 -0
  138. package/src/clients/hooks.ts +4 -1
  139. package/src/clients/index.ts +12 -0
  140. package/src/clients/preparedSend.spec.ts +214 -0
  141. package/src/clients/preparedSend.ts +136 -0
  142. package/src/connectkit/connectors/metaMaskConnectConnector.spec.ts +256 -4
  143. package/src/connectkit/connectors/metaMaskConnectConnector.ts +145 -33
  144. package/src/connectkit/index.ts +2 -0
  145. package/src/connectkit/openConnector/context.tsx +10 -5
  146. package/src/connectkit/openConnector/launcher.spec.ts +24 -2
  147. package/src/connectkit/openConnector/launcher.ts +10 -3
  148. package/src/core/types.ts +7 -0
  149. package/src/phantom/evm.spec.ts +195 -0
  150. package/src/phantom/evm.ts +163 -0
  151. package/src/phantom/index.ts +16 -0
  152. package/src/phantom/urls.spec.ts +29 -0
  153. package/src/phantom/urls.ts +16 -0
  154. package/src/wagmi/driver.spec.ts +31 -0
  155. package/src/wagmi/driver.ts +11 -4
  156. package/types/clients/evm.d.ts +32 -0
  157. package/types/clients/evm.d.ts.map +1 -1
  158. package/types/clients/hooks.d.ts.map +1 -1
  159. package/types/clients/index.d.ts +2 -1
  160. package/types/clients/index.d.ts.map +1 -1
  161. package/types/clients/preparedSend.d.ts +71 -0
  162. package/types/clients/preparedSend.d.ts.map +1 -0
  163. package/types/connectkit/connectors/metaMaskConnectConnector.d.ts +27 -0
  164. package/types/connectkit/connectors/metaMaskConnectConnector.d.ts.map +1 -1
  165. package/types/connectkit/index.d.ts +1 -1
  166. package/types/connectkit/index.d.ts.map +1 -1
  167. package/types/connectkit/openConnector/context.d.ts.map +1 -1
  168. package/types/connectkit/openConnector/launcher.d.ts +8 -1
  169. package/types/connectkit/openConnector/launcher.d.ts.map +1 -1
  170. package/types/core/types.d.ts +7 -0
  171. package/types/core/types.d.ts.map +1 -1
  172. package/types/phantom/evm.d.ts +76 -0
  173. package/types/phantom/evm.d.ts.map +1 -0
  174. package/types/phantom/index.d.ts +3 -0
  175. package/types/phantom/index.d.ts.map +1 -0
  176. package/types/phantom/urls.d.ts +11 -0
  177. package/types/phantom/urls.d.ts.map +1 -0
  178. package/types/wagmi/driver.d.ts +1 -1
  179. package/types/wagmi/driver.d.ts.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/clients/index.ts"],"names":[],"mappings":"AAMA,OAAO,EACL,mBAAmB,EACnB,4BAA4B,EAC5B,KAAK,WAAW,EAChB,KAAK,gBAAgB,EACrB,KAAK,YAAY,GAClB,MAAM,SAAS,CAAC;AACjB,OAAO,EACL,eAAe,EACf,SAAS,EACT,mBAAmB,EACnB,uBAAuB,EACvB,wBAAwB,EACxB,wBAAwB,EACxB,KAAK,YAAY,EACjB,KAAK,SAAS,EACd,KAAK,eAAe,EACpB,KAAK,oBAAoB,EACzB,KAAK,4BAA4B,EACjC,KAAK,cAAc,EACnB,KAAK,eAAe,EACpB,KAAK,0BAA0B,EAC/B,KAAK,WAAW,GACjB,MAAM,OAAO,CAAC;AACf,OAAO,EACL,aAAa,EACb,cAAc,EACd,KAAK,gBAAgB,EACrB,KAAK,aAAa,EAClB,KAAK,mBAAmB,EACxB,KAAK,cAAc,GACpB,MAAM,WAAW,CAAC;AACnB,YAAY,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,KAAK,aAAa,EAAE,MAAM,WAAW,CAAC;AAC9D,OAAO,EACL,kBAAkB,EAClB,eAAe,EACf,cAAc,EACd,YAAY,EACZ,KAAK,SAAS,EACd,KAAK,cAAc,GACpB,MAAM,OAAO,CAAC;AACf,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,kBAAkB,EAAE,KAAK,sBAAsB,EAAE,KAAK,YAAY,EAAE,MAAM,aAAa,CAAC;AACjG,OAAO,EACL,mBAAmB,EACnB,KAAK,WAAW,EAChB,KAAK,aAAa,EAClB,KAAK,mBAAmB,GACzB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/clients/index.ts"],"names":[],"mappings":"AAMA,OAAO,EACL,mBAAmB,EACnB,4BAA4B,EAC5B,KAAK,WAAW,EAChB,KAAK,gBAAgB,EACrB,KAAK,YAAY,GAClB,MAAM,SAAS,CAAC;AACjB,OAAO,EACL,eAAe,EACf,SAAS,EACT,mBAAmB,EACnB,uBAAuB,EACvB,wBAAwB,EACxB,wBAAwB,EACxB,KAAK,YAAY,EACjB,KAAK,SAAS,EACd,KAAK,eAAe,EACpB,KAAK,+BAA+B,EACpC,KAAK,iCAAiC,EACtC,KAAK,oBAAoB,EACzB,KAAK,4BAA4B,EACjC,KAAK,cAAc,EACnB,KAAK,eAAe,EACpB,KAAK,0BAA0B,EAC/B,KAAK,WAAW,GACjB,MAAM,OAAO,CAAC;AACf,OAAO,EACL,gCAAgC,EAChC,cAAc,EACd,sBAAsB,EACtB,KAAK,kBAAkB,EACvB,KAAK,cAAc,EACnB,KAAK,wBAAwB,EAC7B,KAAK,eAAe,EACpB,KAAK,uBAAuB,GAC7B,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,aAAa,EACb,cAAc,EACd,KAAK,gBAAgB,EACrB,KAAK,aAAa,EAClB,KAAK,mBAAmB,EACxB,KAAK,cAAc,GACpB,MAAM,WAAW,CAAC;AACnB,YAAY,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,KAAK,aAAa,EAAE,MAAM,WAAW,CAAC;AAC9D,OAAO,EACL,kBAAkB,EAClB,eAAe,EACf,cAAc,EACd,YAAY,EACZ,KAAK,SAAS,EACd,KAAK,cAAc,GACpB,MAAM,OAAO,CAAC;AACf,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,kBAAkB,EAAE,KAAK,sBAAsB,EAAE,KAAK,YAAY,EAAE,MAAM,aAAa,CAAC;AACjG,OAAO,EACL,mBAAmB,EACnB,KAAK,WAAW,EAChB,KAAK,aAAa,EAClB,KAAK,mBAAmB,GACzB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC"}
@@ -0,0 +1,71 @@
1
+ import { type Address, type Hash, type Hex, type PublicClient, type RpcTransactionRequest } from "viem";
2
+ /**
3
+ * A phone wallet reached by deeplink (MetaMask Connect, Phantom) opens only
4
+ * while the tap that asked for it still has its user activation. Chrome on
5
+ * Android asks "Continue to MetaMask?" when the request comes after an await,
6
+ * and iOS always asks. So everything that needs the network (nonce, gas, fees,
7
+ * a simulation) happens before the tap, and the tap's handler calls `send()`,
8
+ * which hands eth_sendTransaction to the wallet before it returns.
9
+ */
10
+ /** The wallet's EIP-1193 `request`: an injected provider's, MetaMask Connect's, Phantom's. */
11
+ export type Eip1193Request = (args: {
12
+ method: string;
13
+ params?: unknown;
14
+ }) => Promise<unknown>;
15
+ /** What a prepared send carries, the transaction to send and the state it was built for. */
16
+ export interface PreparedEvmSend {
17
+ /** The eth_sendTransaction parameter, hex encoded. */
18
+ readonly request: RpcTransactionRequest & {
19
+ from: Address;
20
+ chainId: Hex;
21
+ };
22
+ readonly from: Address;
23
+ readonly chainId: number;
24
+ /** `Date.now()` when it was prepared. */
25
+ readonly preparedAt: number;
26
+ /**
27
+ * Sends it. Call it synchronously from the tap's handler with nothing awaited
28
+ * before it: the wallet gets eth_sendTransaction before `send()` returns.
29
+ * Rejects with PreparedSendStaleError, sending nothing, when the wallet's
30
+ * account or chain moved since it was prepared or it is older than `maxAgeMs`.
31
+ */
32
+ send(): Promise<Hash>;
33
+ }
34
+ export type PreparedSendStaleReason = "account" | "chain" | "expired";
35
+ /** A prepared send refused because the wallet or the clock moved on. Nothing was sent. */
36
+ export declare class PreparedSendStaleError extends Error {
37
+ readonly reason: PreparedSendStaleReason;
38
+ constructor(reason: PreparedSendStaleReason, detail: string);
39
+ }
40
+ /** The wallet's account and chain right now, read without awaiting (wagmi's `getAccount`). */
41
+ export type CurrentWalletState = () => {
42
+ address?: string;
43
+ chainId?: number;
44
+ } | undefined;
45
+ export interface PrepareEvmSendParameters {
46
+ /** Reads: nonce, gas and fees come from here, never from the wallet. */
47
+ publicClient: PublicClient;
48
+ /** The wallet that signs and sends. */
49
+ request: Eip1193Request;
50
+ from: Address;
51
+ chainId: number;
52
+ to: Address;
53
+ data?: Hex;
54
+ value?: bigint;
55
+ /** Skip the estimate. */
56
+ gas?: bigint;
57
+ /** Skip the lookup. */
58
+ nonce?: number;
59
+ /** Checked by `send()` before it sends. */
60
+ current?: CurrentWalletState;
61
+ /** How long the gas, fees and nonce stay good. 60 s by default. */
62
+ maxAgeMs?: number;
63
+ }
64
+ export declare const DEFAULT_PREPARED_SEND_MAX_AGE_MS = 60000;
65
+ /**
66
+ * Prepares a transaction for any EIP-1193 wallet so the send fires inside the
67
+ * user's tap. Works for a native-coin transfer (`value`) and for a contract
68
+ * call (`data`, from viem's `encodeFunctionData`).
69
+ */
70
+ export declare function prepareEvmSend(parameters: PrepareEvmSendParameters): Promise<PreparedEvmSend>;
71
+ //# sourceMappingURL=preparedSend.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"preparedSend.d.ts","sourceRoot":"","sources":["../../src/clients/preparedSend.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,OAAO,EACZ,KAAK,IAAI,EACT,KAAK,GAAG,EACR,KAAK,YAAY,EACjB,KAAK,qBAAqB,EAC3B,MAAM,MAAM,CAAC;AAEd;;;;;;;GAOG;AAEH,8FAA8F;AAC9F,MAAM,MAAM,cAAc,GAAG,CAAC,IAAI,EAAE;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAA;CAAE,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;AAE9F,4FAA4F;AAC5F,MAAM,WAAW,eAAe;IAC9B,sDAAsD;IACtD,QAAQ,CAAC,OAAO,EAAE,qBAAqB,GAAG;QAAE,IAAI,EAAE,OAAO,CAAC;QAAC,OAAO,EAAE,GAAG,CAAA;KAAE,CAAC;IAC1E,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,yCAAyC;IACzC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B;;;;;OAKG;IACH,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACvB;AAED,MAAM,MAAM,uBAAuB,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,CAAC;AAEtE,0FAA0F;AAC1F,qBAAa,sBAAuB,SAAQ,KAAK;IAC/C,QAAQ,CAAC,MAAM,EAAE,uBAAuB,CAAC;gBAC7B,MAAM,EAAE,uBAAuB,EAAE,MAAM,EAAE,MAAM;CAK5D;AAED,8FAA8F;AAC9F,MAAM,MAAM,kBAAkB,GAAG,MAAM;IAAE,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,SAAS,CAAC;AAE1F,MAAM,WAAW,wBAAwB;IACvC,wEAAwE;IACxE,YAAY,EAAE,YAAY,CAAC;IAC3B,uCAAuC;IACvC,OAAO,EAAE,cAAc,CAAC;IACxB,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,EAAE,EAAE,OAAO,CAAC;IACZ,IAAI,CAAC,EAAE,GAAG,CAAC;IACX,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,yBAAyB;IACzB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,uBAAuB;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,2CAA2C;IAC3C,OAAO,CAAC,EAAE,kBAAkB,CAAC;IAC7B,mEAAmE;IACnE,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,eAAO,MAAM,gCAAgC,QAAS,CAAC;AAIvD;;;;GAIG;AACH,wBAAsB,cAAc,CAClC,UAAU,EAAE,wBAAwB,GACnC,OAAO,CAAC,eAAe,CAAC,CAkD1B"}
@@ -14,6 +14,18 @@ export type MetaMaskConnectParameters = {
14
14
  /** `metamask://` instead of the https://metamask.app.link universal link. */
15
15
  useDeeplink?: boolean;
16
16
  debug?: boolean;
17
+ /**
18
+ * MetaMask is the phone app, reached over the relay: every request it has to
19
+ * approve is a trip to the app that only a tap can start. Defaults to
20
+ * connectkit's `isMobile()`.
21
+ */
22
+ mobile?: boolean;
23
+ /**
24
+ * On a phone, whether a switch to `chain` asks MetaMask to add it
25
+ * (`wallet_addEthereumChain`, which adds the network and switches in one trip)
26
+ * rather than to switch to it. Defaults to `metaMaskMayLackChain`.
27
+ */
28
+ addChainFirst?: (chain: Chain) => boolean;
17
29
  };
18
30
  type ConnectorConfig = Parameters<CreateConnectorFn>[0];
19
31
  /**
@@ -31,8 +43,23 @@ export declare function metaMaskNetworks(chains: readonly Chain[], transports?:
31
43
  * included, so the wallet could never prove itself (PROMA-121).
32
44
  */
33
45
  export declare function metaMaskSupportedNetworks(networks: Record<Hex, string>, transports?: ConnectorConfig["transports"]): Record<Hex, string>;
46
+ /**
47
+ * Whether a phone's MetaMask may not have `chain` yet: a testnet it does not
48
+ * ship. A switch to a chain MetaMask lacks only answers "Unrecognized chain ID",
49
+ * and the add request that has to follow is a second trip to the app, which
50
+ * Chrome on Android drops when no tap started it.
51
+ */
52
+ export declare function metaMaskMayLackChain(chain: Chain): boolean;
34
53
  /** The chain ids a connect asks MetaMask for, the requested one first (it becomes the active chain). */
35
54
  export declare function metaMaskConnectChainIds(networks: Record<Hex, string>, chainId?: number): Hex[];
55
+ /**
56
+ * Opens the MetaMask app again on the request it was last sent to. Call it
57
+ * synchronously from a tap, for an "Open MetaMask" button the page shows while
58
+ * a request waits: MetaMask can open before the request reaches it and show
59
+ * nothing, and a request sent after an await or a trip back opens nothing on
60
+ * Chrome for Android. Returns false when there is nothing to reopen.
61
+ */
62
+ export declare function reopenMetaMask(): boolean;
36
63
  /** Test seam: forget the page's client so the next connector builds a fresh one. */
37
64
  export declare function resetMetaMaskConnectClient(): void;
38
65
  export declare function metaMaskConnect(parameters: MetaMaskConnectParameters): CreateConnectorFn<EIP1193Provider, Record<string, unknown>, Record<string, unknown>>;
@@ -1 +1 @@
1
- {"version":3,"file":"metaMaskConnectConnector.d.ts","sourceRoot":"","sources":["../../../src/connectkit/connectors/metaMaskConnectConnector.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,eAAe,EAAsB,MAAM,uBAAuB,CAAC;AACjF,OAAO,EAA2B,KAAK,iBAAiB,EAAmB,MAAM,OAAO,CAAC;AACzF,OAAO,EAEL,KAAK,KAAK,EAEV,KAAK,GAAG,EAKT,MAAM,MAAM,CAAC;AAKd,MAAM,MAAM,yBAAyB,GAAG;IACtC,IAAI,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACvD,6FAA6F;IAC7F,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,mFAAmF;IACnF,iBAAiB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAChE,6EAA6E;IAC7E,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,CAAC;AAEF,KAAK,eAAe,GAAG,UAAU,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC;AAGxD;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,SAAS,KAAK,EAAE,EACxB,UAAU,CAAC,EAAE,eAAe,CAAC,YAAY,CAAC,GACzC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,CAQrB;AAED;;;;;;GAMG;AACH,wBAAgB,yBAAyB,CACvC,QAAQ,EAAE,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,EAC7B,UAAU,CAAC,EAAE,eAAe,CAAC,YAAY,CAAC,GACzC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,CAOrB;AAwED,wGAAwG;AACxG,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,GAAG,EAAE,CAK9F;AAoED,oFAAoF;AACpF,wBAAgB,0BAA0B,IAAI,IAAI,CAGjD;AAWD,wBAAgB,eAAe,CAAC,UAAU,EAAE,yBAAyB,wFAmHpE;yBAnHe,eAAe"}
1
+ {"version":3,"file":"metaMaskConnectConnector.d.ts","sourceRoot":"","sources":["../../../src/connectkit/connectors/metaMaskConnectConnector.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,eAAe,EAAsB,MAAM,uBAAuB,CAAC;AAEjF,OAAO,EAA2B,KAAK,iBAAiB,EAAmB,MAAM,OAAO,CAAC;AACzF,OAAO,EAEL,KAAK,KAAK,EAEV,KAAK,GAAG,EAKT,MAAM,MAAM,CAAC;AAKd,MAAM,MAAM,yBAAyB,GAAG;IACtC,IAAI,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACvD,6FAA6F;IAC7F,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,mFAAmF;IACnF,iBAAiB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAChE,6EAA6E;IAC7E,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB;;;;OAIG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;;;OAIG;IACH,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,OAAO,CAAC;CAC3C,CAAC;AAEF,KAAK,eAAe,GAAG,UAAU,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC;AAGxD;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,SAAS,KAAK,EAAE,EACxB,UAAU,CAAC,EAAE,eAAe,CAAC,YAAY,CAAC,GACzC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,CAQrB;AAED;;;;;;GAMG;AACH,wBAAgB,yBAAyB,CACvC,QAAQ,EAAE,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,EAC7B,UAAU,CAAC,EAAE,eAAe,CAAC,YAAY,CAAC,GACzC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,CAOrB;AA6ED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAE1D;AAOD,wGAAwG;AACxG,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,GAAG,EAAE,CAK9F;AAqBD;;;;;;GAMG;AACH,wBAAgB,cAAc,IAAI,OAAO,CAIxC;AAgFD,oFAAoF;AACpF,wBAAgB,0BAA0B,IAAI,IAAI,CAIjD;AAWD,wBAAgB,eAAe,CAAC,UAAU,EAAE,yBAAyB,wFAqJpE;yBArJe,eAAe"}
@@ -3,7 +3,7 @@ export { Types } from "@multiplatform.one/connectkit";
3
3
  export { default as getDefaultConfig } from "./defaultConfig";
4
4
  export { default as getDefaultConnectors } from "./defaultConnectors";
5
5
  export { wallets } from "./wallets";
6
- export { metaMaskConnect, type MetaMaskConnectParameters, } from "./connectors/metaMaskConnectConnector";
6
+ export { metaMaskConnect, metaMaskMayLackChain, reopenMetaMask, type MetaMaskConnectParameters, } from "./connectors/metaMaskConnectConnector";
7
7
  export { useWeb3Modal as useModal } from "./useWeb3Modal";
8
8
  export { DEFAULT_DESKTOP_OPEN_CONNECTOR_FALLBACK_MS, DEFAULT_OPEN_CONNECTOR_FALLBACK_MS, type MobileConnectOptions, type OpenConnectorOptions, type Web3ConnectKitOptions, } from "./openConnector";
9
9
  export { CONNECT_INTENT_TTL_MS } from "./siwe/connectIntent";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/connectkit/index.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,kBAAkB,UAAU,CAAC;AAE1C,OAAO,EAAE,KAAK,EAAE,MAAM,+BAA+B,CAAC;AACtD,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAC9D,OAAO,EAAE,OAAO,IAAI,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AACtE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EACL,eAAe,EACf,KAAK,yBAAyB,GAC/B,MAAM,uCAAuC,CAAC;AAI/C,OAAO,EAAE,YAAY,IAAI,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1D,OAAO,EACL,0CAA0C,EAC1C,kCAAkC,EAClC,KAAK,oBAAoB,EACzB,KAAK,oBAAoB,EACzB,KAAK,qBAAqB,GAC3B,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,MAAM,QAAQ,CAAC;AAC7F,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAItD,OAAO,EACL,MAAM,EACN,cAAc,EACd,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,YAAY,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAExD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAInE,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAGjE,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAGlE,OAAO,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AAKhF,OAAO,EACL,eAAe,EACf,eAAe,EACf,aAAa,EACb,UAAU,EACV,cAAc,EACd,KAAK,aAAa,EAClB,KAAK,WAAW,EAChB,KAAK,eAAe,GACrB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AACvE,OAAO,EACL,sBAAsB,EACtB,KAAK,oBAAoB,GAC1B,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EACL,eAAe,EACf,WAAW,EACX,QAAQ,EACR,YAAY,EACZ,eAAe,EACf,YAAY,EACZ,gBAAgB,EAChB,kBAAkB,GACnB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACL,qBAAqB,EACrB,iBAAiB,EACjB,KAAK,SAAS,GACf,MAAM,+BAA+B,CAAC;AAIvC,OAAO,EAAE,kBAAkB,EAAE,KAAK,YAAY,EAAE,KAAK,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAC9F,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EACjB,KAAK,uBAAuB,GAC7B,MAAM,kCAAkC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/connectkit/index.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,kBAAkB,UAAU,CAAC;AAE1C,OAAO,EAAE,KAAK,EAAE,MAAM,+BAA+B,CAAC;AACtD,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAC9D,OAAO,EAAE,OAAO,IAAI,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AACtE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EACL,eAAe,EACf,oBAAoB,EACpB,cAAc,EACd,KAAK,yBAAyB,GAC/B,MAAM,uCAAuC,CAAC;AAI/C,OAAO,EAAE,YAAY,IAAI,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1D,OAAO,EACL,0CAA0C,EAC1C,kCAAkC,EAClC,KAAK,oBAAoB,EACzB,KAAK,oBAAoB,EACzB,KAAK,qBAAqB,GAC3B,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,MAAM,QAAQ,CAAC;AAC7F,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAItD,OAAO,EACL,MAAM,EACN,cAAc,EACd,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,YAAY,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAExD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAInE,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAGjE,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAGlE,OAAO,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AAKhF,OAAO,EACL,eAAe,EACf,eAAe,EACf,aAAa,EACb,UAAU,EACV,cAAc,EACd,KAAK,aAAa,EAClB,KAAK,WAAW,EAChB,KAAK,eAAe,GACrB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AACvE,OAAO,EACL,sBAAsB,EACtB,KAAK,oBAAoB,GAC1B,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EACL,eAAe,EACf,WAAW,EACX,QAAQ,EACR,YAAY,EACZ,eAAe,EACf,YAAY,EACZ,gBAAgB,EAChB,kBAAkB,GACnB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACL,qBAAqB,EACrB,iBAAiB,EACjB,KAAK,SAAS,GACf,MAAM,+BAA+B,CAAC;AAIvC,OAAO,EAAE,kBAAkB,EAAE,KAAK,YAAY,EAAE,KAAK,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAC9F,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EACjB,KAAK,uBAAuB,GAC7B,MAAM,kCAAkC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/connectkit/openConnector/context.tsx"],"names":[],"mappings":"AAAA,OAAO,KAQN,MAAM,OAAO,CAAC;AACf,OAAO,EAAoB,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AACzD,OAAO,EAIL,KAAK,iBAAiB,EACvB,MAAM,+BAA+B,CAAC;AAIvC,OAAO,EAAc,KAAK,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAGrE,OAAO,EAGL,KAAK,oBAAoB,EACzB,KAAK,cAAc,EACpB,MAAM,YAAY,CAAC;AAEpB,MAAM,MAAM,oBAAoB,GAAG;IACjC;;;;;;OAMG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,6DAA6D;IAC7D,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,kEAAkE;AAClE,MAAM,MAAM,qBAAqB,GAAG,iBAAiB,GAAG;IACtD,MAAM,CAAC,EAAE,oBAAoB,CAAC;CAC/B,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACnC,aAAa,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,oBAAoB,KAAK,IAAI,CAAC;IACpE;;;OAGG;IACH,sBAAsB,EAAE,MAAM,OAAO,CAAC;IACtC,wDAAwD;IACxD,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,8EAA8E;IAC9E,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,yEAAyE;IACzE,OAAO,EAAE,cAAc,GAAG,IAAI,CAAC;CAChC,CAAC;AAIF,+DAA+D;AAC/D,wBAAgB,oBAAoB,IAAI,sBAAsB,GAAG,IAAI,CAEpE;AAED,wBAAgB,gBAAgB,CAAC,OAAO,CAAC,EAAE,iBAAiB,GAAG,oBAAoB,CAElF;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAC3B,OAAO,EAAE,SAAS,WAAW,EAAE,EAC/B,UAAU,EAAE,SAAS,SAAS,EAAE,EAChC,EAAE,EAAE,MAAM,GACT,WAAW,GAAG,SAAS,CAOzB;AAED,eAAO,MAAM,yBAAyB,EAAE,KAAK,CAAC,EAAE,CAAC;IAAE,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CAAE,CAoF7E,CAAC"}
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/connectkit/openConnector/context.tsx"],"names":[],"mappings":"AAAA,OAAO,KAQN,MAAM,OAAO,CAAC;AACf,OAAO,EAAwD,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAC7F,OAAO,EAIL,KAAK,iBAAiB,EACvB,MAAM,+BAA+B,CAAC;AAIvC,OAAO,EAAc,KAAK,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAGrE,OAAO,EAGL,KAAK,oBAAoB,EACzB,KAAK,cAAc,EACpB,MAAM,YAAY,CAAC;AAEpB,MAAM,MAAM,oBAAoB,GAAG;IACjC;;;;;;OAMG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,6DAA6D;IAC7D,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,kEAAkE;AAClE,MAAM,MAAM,qBAAqB,GAAG,iBAAiB,GAAG;IACtD,MAAM,CAAC,EAAE,oBAAoB,CAAC;CAC/B,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACnC,aAAa,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,oBAAoB,KAAK,IAAI,CAAC;IACpE;;;OAGG;IACH,sBAAsB,EAAE,MAAM,OAAO,CAAC;IACtC,wDAAwD;IACxD,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,8EAA8E;IAC9E,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,yEAAyE;IACzE,OAAO,EAAE,cAAc,GAAG,IAAI,CAAC;CAChC,CAAC;AAIF,+DAA+D;AAC/D,wBAAgB,oBAAoB,IAAI,sBAAsB,GAAG,IAAI,CAEpE;AAED,wBAAgB,gBAAgB,CAAC,OAAO,CAAC,EAAE,iBAAiB,GAAG,oBAAoB,CAElF;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAC3B,OAAO,EAAE,SAAS,WAAW,EAAE,EAC/B,UAAU,EAAE,SAAS,SAAS,EAAE,EAChC,EAAE,EAAE,MAAM,GACT,WAAW,GAAG,SAAS,CAOzB;AAED,eAAO,MAAM,yBAAyB,EAAE,KAAK,CAAC,EAAE,CAAC;IAAE,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CAAE,CAyF7E,CAAC"}
@@ -15,6 +15,13 @@ export type OpenConnectorOptions = {
15
15
  * to settle however long that takes.
16
16
  */
17
17
  fallbackMs?: number;
18
+ /**
19
+ * The chain to connect on. MetaMask asks the wallet for it first, so a page
20
+ * that knows its purchase chain connects there and needs no switch after.
21
+ * Must be one of the config's chains; a wallet that does not grant it
22
+ * connects on another, which the connect result reports.
23
+ */
24
+ chainId?: number;
18
25
  };
19
26
  export type PendingConnect = {
20
27
  /** The wallet-list id the connect was opened for. */
@@ -25,7 +32,7 @@ export type PendingConnect = {
25
32
  };
26
33
  type Listener = (event: Event) => void;
27
34
  export type LauncherDeps = {
28
- connect: (connector: Connector) => Promise<unknown>;
35
+ connect: (connector: Connector, chainId?: number) => Promise<unknown>;
29
36
  /** Show the connecting state for this wallet. */
30
37
  showConnecting: (walletId: string) => void;
31
38
  /** Show the wallet list. */
@@ -1 +1 @@
1
- {"version":3,"file":"launcher.d.ts","sourceRoot":"","sources":["../../../src/connectkit/openConnector/launcher.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAgBvC,kFAAkF;AAClF,eAAO,MAAM,kCAAkC,OAAQ,CAAC;AAExD;;;GAGG;AACH,eAAO,MAAM,0CAA0C,QAAS,CAAC;AAEjE,MAAM,MAAM,oBAAoB,GAAG;IACjC;;;;;;OAMG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,qDAAqD;IACrD,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,SAAS,CAAC;IACrB,6EAA6E;IAC7E,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,KAAK,QAAQ,GAAG,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;AAEvC,MAAM,MAAM,YAAY,GAAG;IACzB,OAAO,EAAE,CAAC,SAAS,EAAE,SAAS,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IACpD,iDAAiD;IACjD,cAAc,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3C,4BAA4B;IAC5B,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,mEAAmE;IACnE,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IACpC,GAAG,CAAC,EAAE;QACJ,gBAAgB,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,KAAK,IAAI,CAAC;QAC7D,mBAAmB,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,KAAK,IAAI,CAAC;KACjE,CAAC;IACF,GAAG,CAAC,EAAE;QACJ,gBAAgB,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,KAAK,IAAI,CAAC;QAC7D,mBAAmB,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,KAAK,IAAI,CAAC;QAChE,eAAe,CAAC,EAAE,MAAM,CAAC;KAC1B,CAAC;CACH,CAAC;AAOF,MAAM,MAAM,iBAAiB,GAAG;IAC9B;;;;;OAKG;IACH,IAAI,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,oBAAoB,KAAK,IAAI,CAAC;IACvF,OAAO,EAAE,MAAM,cAAc,GAAG,IAAI,CAAC;IACrC,SAAS,EAAE,CAAC,QAAQ,EAAE,MAAM,IAAI,KAAK,MAAM,IAAI,CAAC;IAChD;;;;OAIG;IACH,MAAM,EAAE,MAAM,IAAI,CAAC;CACpB,CAAC;AAEF,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,MAAM,YAAY,GAAG,iBAAiB,CAkHtF"}
1
+ {"version":3,"file":"launcher.d.ts","sourceRoot":"","sources":["../../../src/connectkit/openConnector/launcher.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAgBvC,kFAAkF;AAClF,eAAO,MAAM,kCAAkC,OAAQ,CAAC;AAExD;;;GAGG;AACH,eAAO,MAAM,0CAA0C,QAAS,CAAC;AAEjE,MAAM,MAAM,oBAAoB,GAAG;IACjC;;;;;;OAMG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;;OAKG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,qDAAqD;IACrD,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,SAAS,CAAC;IACrB,6EAA6E;IAC7E,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,KAAK,QAAQ,GAAG,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;AAEvC,MAAM,MAAM,YAAY,GAAG;IACzB,OAAO,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IACtE,iDAAiD;IACjD,cAAc,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3C,4BAA4B;IAC5B,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,mEAAmE;IACnE,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IACpC,GAAG,CAAC,EAAE;QACJ,gBAAgB,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,KAAK,IAAI,CAAC;QAC7D,mBAAmB,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,KAAK,IAAI,CAAC;KACjE,CAAC;IACF,GAAG,CAAC,EAAE;QACJ,gBAAgB,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,KAAK,IAAI,CAAC;QAC7D,mBAAmB,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,KAAK,IAAI,CAAC;QAChE,eAAe,CAAC,EAAE,MAAM,CAAC;KAC1B,CAAC;CACH,CAAC;AAOF,MAAM,MAAM,iBAAiB,GAAG;IAC9B;;;;;OAKG;IACH,IAAI,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,oBAAoB,KAAK,IAAI,CAAC;IACvF,OAAO,EAAE,MAAM,cAAc,GAAG,IAAI,CAAC;IACrC,SAAS,EAAE,CAAC,QAAQ,EAAE,MAAM,IAAI,KAAK,MAAM,IAAI,CAAC;IAChD;;;;OAIG;IACH,MAAM,EAAE,MAAM,IAAI,CAAC;CACpB,CAAC;AAEF,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,MAAM,YAAY,GAAG,iBAAiB,CAkHtF"}
@@ -24,6 +24,13 @@ export interface DriverState {
24
24
  export interface DriverConnectOptions {
25
25
  /** Called with a pairing URI when the connector hands off to another app or device. */
26
26
  onDisplayUri?: (uri: string) => void;
27
+ /**
28
+ * EVM: the chain to connect on, asked of the wallet first so no switch is
29
+ * needed after. A chain the config does not list rejects before the wallet
30
+ * is asked. Ignored by drivers without EVM chains, and by a connector the
31
+ * driver already holds open.
32
+ */
33
+ chainId?: number;
27
34
  }
28
35
  /** What the connection store's `connect` takes. */
29
36
  export interface ConnectOptions extends DriverConnectOptions {
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,76 @@
1
+ import { type Chain, type EIP1193Provider, type PublicClient } from "viem";
2
+ import { type EvmClient } from "../clients/evm";
3
+ export type PhantomEthereumProvider = EIP1193Provider & {
4
+ isPhantom?: boolean;
5
+ };
6
+ interface PhantomWindow {
7
+ phantom?: {
8
+ ethereum?: PhantomEthereumProvider;
9
+ };
10
+ ethereum?: PhantomEthereumProvider;
11
+ location?: {
12
+ href: string;
13
+ origin: string;
14
+ assign(url: string): void;
15
+ };
16
+ addEventListener?: (type: string, listener: (event: Event) => void) => void;
17
+ removeEventListener?: (type: string, listener: (event: Event) => void) => void;
18
+ dispatchEvent?: (event: Event) => boolean;
19
+ }
20
+ /**
21
+ * Phantom's injected EVM provider: `window.phantom.ethereum`, else a
22
+ * `window.ethereum` that says it is Phantom. Present in Phantom's desktop
23
+ * extension and its in-app browser, never in Chrome or Safari on a phone.
24
+ */
25
+ export declare function phantomEthereumProvider(win?: PhantomWindow): PhantomEthereumProvider | undefined;
26
+ /**
27
+ * phantomEthereumProvider, or Phantom's EIP-6963 announcement (rdns
28
+ * `app.phantom`) when the provider is not on `window` yet. Resolves undefined
29
+ * after `timeout` ms.
30
+ */
31
+ export declare function discoverPhantomEthereumProvider(options?: {
32
+ timeout?: number;
33
+ window?: PhantomWindow;
34
+ }): Promise<PhantomEthereumProvider | undefined>;
35
+ /**
36
+ * How this page reaches Phantom's EVM wallet: `injected` when Phantom's
37
+ * provider is here (extension or Phantom's browser), `browse` when the page
38
+ * must first reopen inside Phantom with openInPhantom.
39
+ */
40
+ export declare function phantomEvmRoute(win?: PhantomWindow): "injected" | "browse";
41
+ export interface OpenInPhantomOptions {
42
+ /** The page to open in Phantom's browser. Defaults to this page. */
43
+ url?: string;
44
+ /** The requesting app. Defaults to this page's origin. */
45
+ ref?: string;
46
+ /** Defaults to `location.assign`. */
47
+ navigate?: (url: string) => void;
48
+ base?: string;
49
+ window?: PhantomWindow;
50
+ }
51
+ /**
52
+ * Reopens the page inside Phantom's in-app browser. Call it straight from the
53
+ * tap handler with nothing awaited first: mobile browsers only follow a link
54
+ * into another app without a prompt inside the tap's user activation.
55
+ * Returns the link, for an `<a href>` instead.
56
+ */
57
+ export declare function openInPhantom(options?: OpenInPhantomOptions): string;
58
+ export interface ConnectPhantomEvmOptions {
59
+ chain: Chain;
60
+ /** Defaults to phantomEthereumProvider(). */
61
+ provider?: PhantomEthereumProvider;
62
+ publicClient?: PublicClient;
63
+ rpcUrl?: string;
64
+ }
65
+ export declare class PhantomNotInjectedError extends Error {
66
+ constructor();
67
+ }
68
+ /**
69
+ * Connects Phantom's injected EVM wallet, moves it to `chain`, and returns
70
+ * the mpo EVM client on it, so `erc20.transfer` and `writeContract` go to
71
+ * Phantom for approval. Testnets such as Base Sepolia need Phantom's Testnet
72
+ * Mode on.
73
+ */
74
+ export declare function connectPhantomEvm(options: ConnectPhantomEvmOptions): Promise<EvmClient>;
75
+ export {};
76
+ //# sourceMappingURL=evm.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"evm.d.ts","sourceRoot":"","sources":["../../src/phantom/evm.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,KAAK,KAAK,EAAE,KAAK,eAAe,EAAE,KAAK,YAAY,EAAE,MAAM,MAAM,CAAC;AACxF,OAAO,EAAa,KAAK,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAG3D,MAAM,MAAM,uBAAuB,GAAG,eAAe,GAAG;IAAE,SAAS,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC;AAEhF,UAAU,aAAa;IACrB,OAAO,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,uBAAuB,CAAA;KAAE,CAAC;IACjD,QAAQ,CAAC,EAAE,uBAAuB,CAAC;IACnC,QAAQ,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAC;IACvE,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,KAAK,IAAI,CAAC;IAC5E,mBAAmB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,KAAK,IAAI,CAAC;IAC/E,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,OAAO,CAAC;CAC3C;AAID;;;;GAIG;AACH,wBAAgB,uBAAuB,CACrC,GAAG,GAAE,aAA2C,GAC/C,uBAAuB,GAAG,SAAS,CAKrC;AAED;;;;GAIG;AACH,wBAAgB,+BAA+B,CAC7C,OAAO,GAAE;IAAE,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,aAAa,CAAA;CAAO,GACzD,OAAO,CAAC,uBAAuB,GAAG,SAAS,CAAC,CAqB9C;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,GAAG,GAAE,aAA2C,yBAE/E;AAED,MAAM,WAAW,oBAAoB;IACnC,oEAAoE;IACpE,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,0DAA0D;IAC1D,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,qCAAqC;IACrC,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IACjC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,aAAa,CAAC;CACxB;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,OAAO,GAAE,oBAAyB,GAAG,MAAM,CAQxE;AAED,MAAM,WAAW,wBAAwB;IACvC,KAAK,EAAE,KAAK,CAAC;IACb,6CAA6C;IAC7C,QAAQ,CAAC,EAAE,uBAAuB,CAAC;IACnC,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,qBAAa,uBAAwB,SAAQ,KAAK;;CAOjD;AA8BD;;;;;GAKG;AACH,wBAAsB,iBAAiB,CAAC,OAAO,EAAE,wBAAwB,GAAG,OAAO,CAAC,SAAS,CAAC,CAc7F"}
@@ -0,0 +1,3 @@
1
+ export { connectPhantomEvm, discoverPhantomEthereumProvider, openInPhantom, phantomEthereumProvider, phantomEvmRoute, PhantomNotInjectedError, type ConnectPhantomEvmOptions, type OpenInPhantomOptions, type PhantomEthereumProvider, } from "./evm";
2
+ export { phantomBrowseUrl, phantomUniversalLinkBase } from "./urls";
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/phantom/index.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,iBAAiB,EACjB,+BAA+B,EAC/B,aAAa,EACb,uBAAuB,EACvB,eAAe,EACf,uBAAuB,EACvB,KAAK,wBAAwB,EAC7B,KAAK,oBAAoB,EACzB,KAAK,uBAAuB,GAC7B,MAAM,OAAO,CAAC;AACf,OAAO,EAAE,gBAAgB,EAAE,wBAAwB,EAAE,MAAM,QAAQ,CAAC"}
@@ -0,0 +1,11 @@
1
+ /** Phantom's universal-link host. `https://phantom.app/ul` still answers; Phantom asks new code to use this one. */
2
+ export declare const phantomUniversalLinkBase = "https://phantom.com/ul";
3
+ /**
4
+ * Opens `url` inside Phantom's in-app browser, where Phantom injects
5
+ * `window.phantom.ethereum`. Phantom's deeplinks carry no EVM methods, so
6
+ * this is how a phone's browser reaches its EVM wallet.
7
+ */
8
+ export declare function phantomBrowseUrl(url: string, ref: string, options?: {
9
+ base?: string;
10
+ }): string;
11
+ //# sourceMappingURL=urls.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"urls.d.ts","sourceRoot":"","sources":["../../src/phantom/urls.ts"],"names":[],"mappings":"AAAA,oHAAoH;AACpH,eAAO,MAAM,wBAAwB,2BAA2B,CAAC;AAEjE;;;;GAIG;AACH,wBAAgB,gBAAgB,CAC9B,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,OAAO,GAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAA;CAAO,GAC9B,MAAM,CAGR"}
@@ -1,4 +1,4 @@
1
- import type { Config, Connector } from "wagmi";
1
+ import { type Config, type Connector } from "wagmi";
2
2
  import type { ChainClient } from "../clients/types";
3
3
  import type { ConnectionDriver, DriverState } from "../core/types";
4
4
  export interface WagmiDriverOptions {
@@ -1 +1 @@
1
- {"version":3,"file":"driver.d.ts","sourceRoot":"","sources":["../../src/wagmi/driver.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAc,SAAS,EAAE,MAAM,OAAO,CAAC;AAW3D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,KAAK,EACV,gBAAgB,EAGhB,WAAW,EAEZ,MAAM,eAAe,CAAC;AAEvB,MAAM,WAAW,kBAAkB;IACjC;;;;OAIG;IACH,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,SAAS,KAAK,OAAO,CAAC;IAC3C;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC1B;;;OAGG;IACH,MAAM,CAAC,EAAE,CACP,SAAS,EAAE,SAAS,EACpB,KAAK,EAAE,WAAW,KACf,WAAW,GAAG,IAAI,GAAG,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC;CACvD;AAkCD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,kBAAuB,GAAG,gBAAgB,CA6M9F"}
1
+ {"version":3,"file":"driver.d.ts","sourceRoot":"","sources":["../../src/wagmi/driver.ts"],"names":[],"mappings":"AAAA,OAAO,EAA2B,KAAK,MAAM,EAAmB,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAY9F,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,KAAK,EACV,gBAAgB,EAGhB,WAAW,EAEZ,MAAM,eAAe,CAAC;AAEvB,MAAM,WAAW,kBAAkB;IACjC;;;;OAIG;IACH,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,SAAS,KAAK,OAAO,CAAC;IAC3C;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC1B;;;OAGG;IACH,MAAM,CAAC,EAAE,CACP,SAAS,EAAE,SAAS,EACpB,KAAK,EAAE,WAAW,KACf,WAAW,GAAG,IAAI,GAAG,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC;CACvD;AAkCD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,kBAAuB,GAAG,gBAAgB,CAmN9F"}