@marigoldlabs/web3-tester 0.1.2 → 0.4.2

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 (96) hide show
  1. package/.env.example +26 -17
  2. package/LICENSE +21 -0
  3. package/README.md +480 -48
  4. package/dist/anvil.d.ts +90 -2
  5. package/dist/anvil.d.ts.map +1 -1
  6. package/dist/anvil.js +215 -13
  7. package/dist/anvil.js.map +1 -1
  8. package/dist/benchmark.d.ts +55 -0
  9. package/dist/benchmark.d.ts.map +1 -0
  10. package/dist/benchmark.js +168 -0
  11. package/dist/benchmark.js.map +1 -0
  12. package/dist/contracts/test-erc20.d.ts +227 -0
  13. package/dist/contracts/test-erc20.d.ts.map +1 -0
  14. package/dist/contracts/test-erc20.js +8 -0
  15. package/dist/contracts/test-erc20.js.map +1 -0
  16. package/dist/erc20.d.ts +38 -0
  17. package/dist/erc20.d.ts.map +1 -0
  18. package/dist/erc20.js +229 -0
  19. package/dist/erc20.js.map +1 -0
  20. package/dist/fixtures.d.ts +44 -2
  21. package/dist/fixtures.d.ts.map +1 -1
  22. package/dist/fixtures.js +162 -17
  23. package/dist/fixtures.js.map +1 -1
  24. package/dist/index.d.ts +26 -5
  25. package/dist/index.d.ts.map +1 -1
  26. package/dist/index.js +11 -1
  27. package/dist/index.js.map +1 -1
  28. package/dist/injected-provider.d.ts.map +1 -1
  29. package/dist/injected-provider.js +863 -77
  30. package/dist/injected-provider.js.map +1 -1
  31. package/dist/live-fixtures.d.ts +32 -3
  32. package/dist/live-fixtures.d.ts.map +1 -1
  33. package/dist/live-fixtures.js +64 -27
  34. package/dist/live-fixtures.js.map +1 -1
  35. package/dist/matchers.d.ts +90 -0
  36. package/dist/matchers.d.ts.map +1 -0
  37. package/dist/matchers.js +268 -0
  38. package/dist/matchers.js.map +1 -0
  39. package/dist/metamask-extension.d.ts +34 -0
  40. package/dist/metamask-extension.d.ts.map +1 -0
  41. package/dist/metamask-extension.js +97 -0
  42. package/dist/metamask-extension.js.map +1 -0
  43. package/dist/mock-wallet-controller.d.ts +354 -4
  44. package/dist/mock-wallet-controller.d.ts.map +1 -1
  45. package/dist/mock-wallet-controller.js +1444 -58
  46. package/dist/mock-wallet-controller.js.map +1 -1
  47. package/dist/private-key-rpc-client.d.ts +1744 -2
  48. package/dist/private-key-rpc-client.d.ts.map +1 -1
  49. package/dist/private-key-rpc-client.js +245 -30
  50. package/dist/private-key-rpc-client.js.map +1 -1
  51. package/dist/real-wallet-cache.d.ts +103 -0
  52. package/dist/real-wallet-cache.d.ts.map +1 -0
  53. package/dist/real-wallet-cache.js +331 -0
  54. package/dist/real-wallet-cache.js.map +1 -0
  55. package/dist/real-wallet-extension-fixtures.d.ts +35 -0
  56. package/dist/real-wallet-extension-fixtures.d.ts.map +1 -0
  57. package/dist/real-wallet-extension-fixtures.js +96 -0
  58. package/dist/real-wallet-extension-fixtures.js.map +1 -0
  59. package/dist/real-wallet-extension.d.ts +86 -0
  60. package/dist/real-wallet-extension.d.ts.map +1 -0
  61. package/dist/real-wallet-extension.js +245 -0
  62. package/dist/real-wallet-extension.js.map +1 -0
  63. package/dist/real-wallet-fixtures.d.ts +52 -0
  64. package/dist/real-wallet-fixtures.d.ts.map +1 -0
  65. package/dist/real-wallet-fixtures.js +88 -0
  66. package/dist/real-wallet-fixtures.js.map +1 -0
  67. package/dist/real-wallet.d.ts +119 -19
  68. package/dist/real-wallet.d.ts.map +1 -1
  69. package/dist/real-wallet.js +1656 -144
  70. package/dist/real-wallet.js.map +1 -1
  71. package/dist/safe.d.ts +311 -0
  72. package/dist/safe.d.ts.map +1 -0
  73. package/dist/safe.js +743 -0
  74. package/dist/safe.js.map +1 -0
  75. package/dist/transactions.d.ts +118 -0
  76. package/dist/transactions.d.ts.map +1 -0
  77. package/dist/transactions.js +207 -0
  78. package/dist/transactions.js.map +1 -0
  79. package/dist/types.d.ts +36 -1
  80. package/dist/types.d.ts.map +1 -1
  81. package/dist/wallet-personas.d.ts +99 -0
  82. package/dist/wallet-personas.d.ts.map +1 -0
  83. package/dist/wallet-personas.js +666 -0
  84. package/dist/wallet-personas.js.map +1 -0
  85. package/dist/walletconnect.d.ts +373 -0
  86. package/dist/walletconnect.d.ts.map +1 -0
  87. package/dist/walletconnect.js +799 -0
  88. package/dist/walletconnect.js.map +1 -0
  89. package/examples/live-sepolia.spec.ts +20 -1
  90. package/examples/playwright.config.ts +8 -0
  91. package/package.json +90 -8
  92. package/docs/API.md +0 -223
  93. package/docs/ARCHITECTURE.md +0 -81
  94. package/docs/CONSUMING_FROM_FJORD.md +0 -123
  95. package/docs/FJORD_LIVE_QA.md +0 -87
  96. package/docs/RELEASE_CHECKLIST.md +0 -55
@@ -0,0 +1 @@
1
+ {"version":3,"file":"safe.js","sourceRoot":"","sources":["../src/safe.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,118 @@
1
+ import { type Abi, type Address, type Hex, type Log, type TransactionReceipt } from 'viem';
2
+ /**
3
+ * Anything the matchers can read a chain through. ChainController (via its
4
+ * `client`), PrivateKeyRpcClient (via the `client` getter), or a bare viem
5
+ * PublicClient all satisfy it structurally.
6
+ */
7
+ export type ReadClient = {
8
+ getTransactionReceipt(args: {
9
+ hash: Hex;
10
+ }): Promise<TransactionReceipt>;
11
+ waitForTransactionReceipt(args: {
12
+ hash: Hex;
13
+ timeout?: number;
14
+ }): Promise<TransactionReceipt>;
15
+ getTransaction(args: {
16
+ hash: Hex;
17
+ }): Promise<{
18
+ from: Address;
19
+ to: Address | null;
20
+ input: Hex;
21
+ value: bigint;
22
+ gas: bigint;
23
+ }>;
24
+ getBalance(args: {
25
+ address: Address;
26
+ blockNumber?: bigint;
27
+ }): Promise<bigint>;
28
+ readContract(args: {
29
+ address: Address;
30
+ abi: Abi;
31
+ functionName: string;
32
+ args?: readonly unknown[];
33
+ blockNumber?: bigint;
34
+ }): Promise<unknown>;
35
+ call(args: Record<string, unknown>): Promise<unknown>;
36
+ getBlock(args: {
37
+ blockNumber: bigint;
38
+ }): Promise<{
39
+ transactions: readonly Hex[];
40
+ }>;
41
+ /** Raw JSON-RPC escape hatch (viem clients have it) — used for tracing. */
42
+ request?(args: {
43
+ method: string;
44
+ params?: unknown;
45
+ }): Promise<unknown>;
46
+ };
47
+ /** ChainController fits the second arm. */
48
+ export type ChainLike = ReadClient | {
49
+ client: ReadClient;
50
+ };
51
+ /** SentTransactionRecord fits { hash }. */
52
+ export type TransactionRef = Hex | {
53
+ hash: Hex;
54
+ };
55
+ /** waitForNextTransaction() fits. */
56
+ export type TransactionTarget = TransactionRef | Promise<TransactionRef>;
57
+ export type RevertTarget = TransactionTarget | Promise<unknown> | (() => Promise<unknown>);
58
+ export type RevertInfo = {
59
+ kind: 'reason';
60
+ reason: string;
61
+ data: Hex;
62
+ } | {
63
+ kind: 'panic';
64
+ code: bigint;
65
+ description: string;
66
+ data: Hex;
67
+ } | {
68
+ kind: 'custom';
69
+ errorName: string;
70
+ args?: readonly unknown[];
71
+ selector: Hex;
72
+ data: Hex;
73
+ } | {
74
+ kind: 'unknown';
75
+ data?: Hex;
76
+ message?: string;
77
+ };
78
+ export type DecodedTransaction = {
79
+ receipt: TransactionReceipt;
80
+ status: 'success' | 'reverted';
81
+ logs: (Log & {
82
+ eventName: string;
83
+ args: unknown;
84
+ })[];
85
+ revertReason?: string;
86
+ revertInfo?: RevertInfo;
87
+ };
88
+ export declare const resolveClient: (chain: ChainLike) => ReadClient;
89
+ /** Returns the 32-byte hash, or undefined when the target is not tx-shaped. */
90
+ export declare const resolveTxHash: (target: unknown) => Promise<Hex | undefined>;
91
+ export declare const describePanic: (code: bigint) => string;
92
+ export declare const decodeRevertData: (data: Hex, abi?: Abi) => RevertInfo;
93
+ /**
94
+ * Wallet approval failures (deny-by-default gating, simulateRejection,
95
+ * origin scoping). Detection is by message text: EIP-1193 error codes do not
96
+ * survive Playwright's page.evaluate error serialization.
97
+ */
98
+ export declare const isWalletRejectionError: (error: unknown) => boolean;
99
+ /**
100
+ * Walks an error's cause chain for revert data: viem's
101
+ * ContractFunctionRevertedError (`raw`), RpcRequestError (`data`), nested
102
+ * `.data.data`, and finally "execution reverted: …" message text.
103
+ */
104
+ export declare const extractRevertInfo: (error: unknown, abi?: Abi) => RevertInfo | undefined;
105
+ export declare const recoverRevertInfo: (client: ReadClient, hash: Hex, receipt: TransactionReceipt, abi?: Abi) => Promise<RevertInfo>;
106
+ export declare function waitForDecodedTransaction(client: ReadClient, hash: Hex, options?: {
107
+ abi?: Abi;
108
+ timeoutMs?: number;
109
+ }): Promise<DecodedTransaction>;
110
+ /** JSON stringifier that renders bigints as `123n`. */
111
+ export declare const web3Stringify: (value: unknown) => string;
112
+ /**
113
+ * Matcher equality: predicates apply, bigint-vs-number/decimal-string
114
+ * coerces, 0x-strings compare case-insensitively, arrays compare item-wise.
115
+ */
116
+ export declare const web3Equals: (expected: unknown, actual: unknown) => boolean;
117
+ export declare const renderRevertInfo: (info: RevertInfo | undefined) => string;
118
+ //# sourceMappingURL=transactions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transactions.d.ts","sourceRoot":"","sources":["../src/transactions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,207 @@
1
+ import { decodeErrorResult, parseEventLogs, } from 'viem';
2
+ export const resolveClient = (chain) => 'client' in chain ? chain.client : chain;
3
+ const TX_HASH_PATTERN = /^0x[0-9a-f]{64}$/i;
4
+ /** Returns the 32-byte hash, or undefined when the target is not tx-shaped. */
5
+ export const resolveTxHash = async (target) => {
6
+ const resolved = await target;
7
+ const hash = typeof resolved === 'string'
8
+ ? resolved
9
+ : resolved && typeof resolved === 'object' && 'hash' in resolved
10
+ ? resolved.hash
11
+ : undefined;
12
+ return typeof hash === 'string' && TX_HASH_PATTERN.test(hash) ? hash : undefined;
13
+ };
14
+ const PANIC_DESCRIPTIONS = {
15
+ 0x00: 'generic compiler panic',
16
+ 0x01: 'assertion failed',
17
+ 0x11: 'arithmetic overflow or underflow',
18
+ 0x12: 'division or modulo by zero',
19
+ 0x21: 'invalid enum value',
20
+ 0x22: 'invalid storage byte array encoding',
21
+ 0x31: 'pop on an empty array',
22
+ 0x32: 'array index out of bounds',
23
+ 0x41: 'allocation of too much memory',
24
+ 0x51: 'call to an uninitialized internal function',
25
+ };
26
+ export const describePanic = (code) => PANIC_DESCRIPTIONS[Number(code)] ?? 'unknown panic code';
27
+ const isRevertDataHex = (value) => typeof value === 'string' && /^0x[0-9a-f]*$/i.test(value) && value.length >= 10;
28
+ // decodeErrorResult appends the built-in Error(string)/Panic(uint256) ABIs,
29
+ // so reasons and panics decode even without a user abi.
30
+ export const decodeRevertData = (data, abi) => {
31
+ try {
32
+ const decoded = decodeErrorResult({ abi: abi ?? [], data });
33
+ if (decoded.errorName === 'Error') {
34
+ return { kind: 'reason', reason: String(decoded.args?.[0] ?? ''), data };
35
+ }
36
+ if (decoded.errorName === 'Panic') {
37
+ const code = decoded.args?.[0];
38
+ return { kind: 'panic', code, description: describePanic(code), data };
39
+ }
40
+ return {
41
+ kind: 'custom',
42
+ errorName: decoded.errorName,
43
+ args: decoded.args,
44
+ selector: data.slice(0, 10),
45
+ data,
46
+ };
47
+ }
48
+ catch {
49
+ return { kind: 'unknown', data };
50
+ }
51
+ };
52
+ /**
53
+ * Wallet approval failures (deny-by-default gating, simulateRejection,
54
+ * origin scoping). Detection is by message text: EIP-1193 error codes do not
55
+ * survive Playwright's page.evaluate error serialization.
56
+ */
57
+ export const isWalletRejectionError = (error) => {
58
+ const message = error instanceof Error ? error.message : typeof error === 'string' ? error : '';
59
+ return /user rejected the request|has not been authorized by the user|wallet is not available to origin/i.test(message);
60
+ };
61
+ /**
62
+ * Walks an error's cause chain for revert data: viem's
63
+ * ContractFunctionRevertedError (`raw`), RpcRequestError (`data`), nested
64
+ * `.data.data`, and finally "execution reverted: …" message text.
65
+ */
66
+ export const extractRevertInfo = (error, abi) => {
67
+ let current = error;
68
+ const seen = new Set();
69
+ let messageInfo;
70
+ while (current && typeof current === 'object' && !seen.has(current)) {
71
+ seen.add(current);
72
+ const err = current;
73
+ if (isRevertDataHex(err.raw)) {
74
+ return decodeRevertData(err.raw, abi);
75
+ }
76
+ if (isRevertDataHex(err.data)) {
77
+ return decodeRevertData(err.data, abi);
78
+ }
79
+ const nested = err.data?.data;
80
+ if (isRevertDataHex(nested)) {
81
+ return decodeRevertData(nested, abi);
82
+ }
83
+ if (!messageInfo && typeof err.message === 'string') {
84
+ const reason = err.message.match(/reverted with reason string '([^']*)'/i)?.[1] ??
85
+ err.message.match(/execution reverted:\s*([^\n]+)/i)?.[1];
86
+ if (reason !== undefined) {
87
+ messageInfo = { kind: 'reason', reason: reason.trim(), data: '0x' };
88
+ }
89
+ else if (/execution reverted|reverted/i.test(err.message)) {
90
+ messageInfo = { kind: 'unknown', message: err.message };
91
+ }
92
+ }
93
+ current = current.cause;
94
+ }
95
+ return messageInfo;
96
+ };
97
+ // Reason recovery for a MINED reverted transaction: replay the call at the
98
+ // parent block (exact under automine where each tx is alone in its block),
99
+ // then fall back to debug_traceTransaction, which is immune to multi-tx
100
+ // blocks and block-env-dependent reverts.
101
+ export const recoverRevertInfo = async (client, hash, receipt, abi) => {
102
+ try {
103
+ const transaction = await client.getTransaction({ hash });
104
+ await client.call({
105
+ account: transaction.from,
106
+ to: transaction.to ?? undefined,
107
+ data: transaction.input,
108
+ value: transaction.value,
109
+ gas: transaction.gas,
110
+ blockNumber: receipt.blockNumber - 1n,
111
+ });
112
+ // The replay unexpectedly succeeded (state divergence) — fall through.
113
+ }
114
+ catch (error) {
115
+ const info = extractRevertInfo(error, abi);
116
+ if (info) {
117
+ return info;
118
+ }
119
+ }
120
+ try {
121
+ const trace = (await client.request?.({
122
+ method: 'debug_traceTransaction',
123
+ params: [hash, { tracer: 'callTracer' }],
124
+ }));
125
+ if (trace && isRevertDataHex(trace.output)) {
126
+ return decodeRevertData(trace.output, abi);
127
+ }
128
+ }
129
+ catch {
130
+ // Tracing unavailable — report unknown below.
131
+ }
132
+ return {
133
+ kind: 'unknown',
134
+ message: 'the transaction reverted but the reason could not be recovered (multi-transaction block or pruned state?)',
135
+ };
136
+ };
137
+ export async function waitForDecodedTransaction(client, hash, options = {}) {
138
+ const receipt = await client.waitForTransactionReceipt({ hash, timeout: options.timeoutMs });
139
+ const status = receipt.status === 'success' ? 'success' : 'reverted';
140
+ const logs = options.abi
141
+ ? parseEventLogs({
142
+ abi: options.abi,
143
+ logs: receipt.logs,
144
+ strict: false,
145
+ })
146
+ : [];
147
+ let revertInfo;
148
+ if (status === 'reverted') {
149
+ revertInfo = await recoverRevertInfo(client, hash, receipt, options.abi);
150
+ }
151
+ return {
152
+ receipt,
153
+ status,
154
+ logs,
155
+ revertInfo,
156
+ revertReason: revertInfo?.kind === 'reason' ? revertInfo.reason : undefined,
157
+ };
158
+ }
159
+ /** JSON stringifier that renders bigints as `123n`. */
160
+ export const web3Stringify = (value) => {
161
+ const rendered = JSON.stringify(value, (_key, item) => (typeof item === 'bigint' ? `${item}n` : item), 2);
162
+ return rendered ?? String(value);
163
+ };
164
+ /**
165
+ * Matcher equality: predicates apply, bigint-vs-number/decimal-string
166
+ * coerces, 0x-strings compare case-insensitively, arrays compare item-wise.
167
+ */
168
+ export const web3Equals = (expected, actual) => {
169
+ if (typeof expected === 'function') {
170
+ return Boolean(expected(actual));
171
+ }
172
+ if (typeof actual === 'bigint' && (typeof expected === 'number' || typeof expected === 'string')) {
173
+ try {
174
+ return BigInt(expected) === actual;
175
+ }
176
+ catch {
177
+ return false;
178
+ }
179
+ }
180
+ if (typeof expected === 'string' &&
181
+ typeof actual === 'string' &&
182
+ expected.startsWith('0x') &&
183
+ actual.startsWith('0x')) {
184
+ return expected.toLowerCase() === actual.toLowerCase();
185
+ }
186
+ if (Array.isArray(expected) && Array.isArray(actual)) {
187
+ return (expected.length === actual.length &&
188
+ expected.every((item, index) => web3Equals(item, actual[index])));
189
+ }
190
+ return Object.is(expected, actual);
191
+ };
192
+ export const renderRevertInfo = (info) => {
193
+ if (!info) {
194
+ return 'no revert information';
195
+ }
196
+ switch (info.kind) {
197
+ case 'reason':
198
+ return `Error("${info.reason}")`;
199
+ case 'panic':
200
+ return `Panic(0x${info.code.toString(16)}) — ${info.description}`;
201
+ case 'custom':
202
+ return `${info.errorName}(${(info.args ?? []).map((arg) => String(arg)).join(', ')}) [selector ${info.selector}]`;
203
+ case 'unknown':
204
+ return info.message ?? `undecodable revert data ${info.data ?? ''}`.trim();
205
+ }
206
+ };
207
+ //# sourceMappingURL=transactions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transactions.js","sourceRoot":"","sources":["../src/transactions.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -27,12 +27,47 @@ export type WalletProviderInfo = {
27
27
  icon: string;
28
28
  rdns: string;
29
29
  };
30
+ export type SolanaProviderIdentity = {
31
+ /** Base58 public key exposed by the simulated Solana provider. */
32
+ publicKey?: string;
33
+ /** CAIP-2 Solana chain identifiers exposed through Wallet Standard. */
34
+ chains?: readonly string[];
35
+ /** Wallet-specific boolean markers exposed on the Solana provider. */
36
+ flags?: Readonly<Record<string, boolean>>;
37
+ /** Additional window paths that should reference this provider. */
38
+ aliases?: readonly string[];
39
+ };
40
+ export type WalletProviderIdentity = WalletProviderInfo & {
41
+ /**
42
+ * Whether this persona exposes an EIP-1193/EIP-6963 Ethereum provider.
43
+ * Defaults to true. Set false for Solana-only wallets such as Solflare.
44
+ */
45
+ evm?: boolean;
46
+ /**
47
+ * Wallet-specific boolean markers exposed on the provider object
48
+ * (`isMetaMask`, `isRabby`, `isCoinbaseWallet`, ...).
49
+ */
50
+ flags?: Readonly<Record<string, boolean>>;
51
+ /**
52
+ * Additional window paths that should reference this provider, e.g.
53
+ * `phantom.ethereum` for Phantom's EVM provider.
54
+ */
55
+ aliases?: readonly string[];
56
+ /**
57
+ * Optional Phantom/Backpack-style Solana provider surface. This is a
58
+ * browser-provider simulation for selector/auth UI tests, not a Solana
59
+ * chain backend.
60
+ */
61
+ solana?: SolanaProviderIdentity;
62
+ };
30
63
  export type MockWalletConfig = {
31
64
  accounts: readonly Address[];
32
65
  chainId: Hex;
33
66
  connected: boolean;
67
+ unlocked: boolean;
34
68
  autoApprove: boolean;
35
- providers: readonly WalletProviderInfo[];
69
+ providers: readonly WalletProviderIdentity[];
70
+ allowedOrigins?: readonly string[];
36
71
  };
37
72
  export type ProviderRpcErrorLike = Error & {
38
73
  code: number;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,MAAM,CAAC;AACzC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAE3C,MAAM,MAAM,aAAa,GAAG,SAAS,OAAO,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC;AAErF,MAAM,MAAM,cAAc,GAAG;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,aAAa,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAC/B;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,MAAM,EAAE,OAAO,CAAA;CAAE,GAC7B;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,mBAAmB,CAAA;CAAE,CAAC;AAE9C,MAAM,MAAM,SAAS,GAAG;IACtB,OAAO,EAAE,CAAC,OAAO,EAAE,cAAc,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;CACxD,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG,OAAO,OAAO,CAAC;AAExC,MAAM,MAAM,kBAAkB,GAAG;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,QAAQ,EAAE,SAAS,OAAO,EAAE,CAAC;IAC7B,OAAO,EAAE,GAAG,CAAC;IACb,SAAS,EAAE,OAAO,CAAC;IACnB,WAAW,EAAE,OAAO,CAAC;IACrB,SAAS,EAAE,SAAS,kBAAkB,EAAE,CAAC;CAC1C,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG,KAAK,GAAG;IACzC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,MAAM,CAAC;AACzC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAE3C,MAAM,MAAM,aAAa,GAAG,SAAS,OAAO,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC;AAErF,MAAM,MAAM,cAAc,GAAG;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,aAAa,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAC/B;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,MAAM,EAAE,OAAO,CAAA;CAAE,GAC7B;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,mBAAmB,CAAA;CAAE,CAAC;AAE9C,MAAM,MAAM,SAAS,GAAG;IACtB,OAAO,EAAE,CAAC,OAAO,EAAE,cAAc,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;CACxD,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG,OAAO,OAAO,CAAC;AAExC,MAAM,MAAM,kBAAkB,GAAG;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACnC,kEAAkE;IAClE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,uEAAuE;IACvE,MAAM,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC3B,sEAAsE;IACtE,KAAK,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAC1C,mEAAmE;IACnE,OAAO,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAC7B,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG,kBAAkB,GAAG;IACxD;;;OAGG;IACH,GAAG,CAAC,EAAE,OAAO,CAAC;IACd;;;OAGG;IACH,KAAK,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAC1C;;;OAGG;IACH,OAAO,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC5B;;;;OAIG;IACH,MAAM,CAAC,EAAE,sBAAsB,CAAC;CACjC,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,QAAQ,EAAE,SAAS,OAAO,EAAE,CAAC;IAC7B,OAAO,EAAE,GAAG,CAAC;IACb,SAAS,EAAE,OAAO,CAAC;IACnB,QAAQ,EAAE,OAAO,CAAC;IAClB,WAAW,EAAE,OAAO,CAAC;IACrB,SAAS,EAAE,SAAS,sBAAsB,EAAE,CAAC;IAC7C,cAAc,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CACpC,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG,KAAK,GAAG;IACzC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB,CAAC"}
@@ -0,0 +1,99 @@
1
+ import type { WalletProviderIdentity, WalletProviderInfo } from './types.js';
2
+ import type { CoinbaseWalletSimulationOptions, HardwareWalletSimulationOptions, MockWalletControllerOptions } from './mock-wallet-controller.js';
3
+ export type WalletConnectPersonaMetadata = {
4
+ name: string;
5
+ description: string;
6
+ url: string;
7
+ icons: string[];
8
+ links?: WalletConnectPersonaLinks;
9
+ };
10
+ export type WalletConnectLinkTarget = 'mobile' | 'qrCode' | 'desktop' | 'universal' | 'native';
11
+ export type WalletConnectPersonaLinks = Partial<Record<WalletConnectLinkTarget, string>>;
12
+ export type WalletPersona = WalletProviderIdentity & {
13
+ walletConnect?: Partial<WalletConnectPersonaMetadata>;
14
+ };
15
+ export type WalletPersonaInput = Partial<WalletPersona>;
16
+ export type WalletControllerProfile = Pick<MockWalletControllerOptions, 'persona' | 'hardwareWallet' | 'coinbase'>;
17
+ export type WalletProfileOptions = {
18
+ persona?: WalletPersonaInput;
19
+ };
20
+ export type HardwareWalletProfileOptions = WalletProfileOptions & {
21
+ hardwareWallet?: boolean | HardwareWalletSimulationOptions;
22
+ };
23
+ export type CoinbaseWalletProfileOptions = WalletProfileOptions & {
24
+ coinbase?: boolean | CoinbaseWalletSimulationOptions;
25
+ };
26
+ export declare const mockWalletPersona: (overrides?: WalletPersonaInput) => WalletPersona;
27
+ export declare const walletPersonas: {
28
+ readonly mock: (overrides?: WalletPersonaInput) => WalletPersona;
29
+ readonly metamask: (overrides?: WalletPersonaInput) => WalletPersona;
30
+ readonly rabby: (overrides?: WalletPersonaInput) => WalletPersona;
31
+ readonly coinbase: (overrides?: WalletPersonaInput) => WalletPersona;
32
+ readonly phantomEvm: (overrides?: WalletPersonaInput) => WalletPersona;
33
+ readonly rainbow: (overrides?: WalletPersonaInput) => WalletPersona;
34
+ readonly okx: (overrides?: WalletPersonaInput) => WalletPersona;
35
+ readonly trust: (overrides?: WalletPersonaInput) => WalletPersona;
36
+ readonly brave: (overrides?: WalletPersonaInput) => WalletPersona;
37
+ readonly zerion: (overrides?: WalletPersonaInput) => WalletPersona;
38
+ readonly backpack: (overrides?: WalletPersonaInput) => WalletPersona;
39
+ readonly solflare: (overrides?: WalletPersonaInput) => WalletPersona;
40
+ readonly ledger: (overrides?: WalletPersonaInput) => WalletPersona;
41
+ readonly trezor: (overrides?: WalletPersonaInput) => WalletPersona;
42
+ readonly safe: (overrides?: WalletPersonaInput) => WalletPersona;
43
+ readonly bitget: (overrides?: WalletPersonaInput) => WalletPersona;
44
+ readonly tokenPocket: (overrides?: WalletPersonaInput) => WalletPersona;
45
+ readonly safePal: (overrides?: WalletPersonaInput) => WalletPersona;
46
+ readonly binance: (overrides?: WalletPersonaInput) => WalletPersona;
47
+ readonly imToken: (overrides?: WalletPersonaInput) => WalletPersona;
48
+ readonly mathWallet: (overrides?: WalletPersonaInput) => WalletPersona;
49
+ readonly frame: (overrides?: WalletPersonaInput) => WalletPersona;
50
+ readonly enkrypt: (overrides?: WalletPersonaInput) => WalletPersona;
51
+ readonly core: (overrides?: WalletPersonaInput) => WalletPersona;
52
+ readonly frontier: (overrides?: WalletPersonaInput) => WalletPersona;
53
+ readonly oneKey: (overrides?: WalletPersonaInput) => WalletPersona;
54
+ readonly ctrl: (overrides?: WalletPersonaInput) => WalletPersona;
55
+ readonly uniswap: (overrides?: WalletPersonaInput) => WalletPersona;
56
+ readonly argent: (overrides?: WalletPersonaInput) => WalletPersona;
57
+ readonly exodus: (overrides?: WalletPersonaInput) => WalletPersona;
58
+ readonly fireblocks: (overrides?: WalletPersonaInput) => WalletPersona;
59
+ };
60
+ export declare const majorWalletPersonas: () => WalletPersona[];
61
+ export declare const walletProfiles: {
62
+ readonly mock: (options?: WalletProfileOptions) => WalletControllerProfile;
63
+ readonly metamask: (options?: WalletProfileOptions) => WalletControllerProfile;
64
+ readonly rabby: (options?: WalletProfileOptions) => WalletControllerProfile;
65
+ readonly coinbase: (options?: CoinbaseWalletProfileOptions) => WalletControllerProfile;
66
+ readonly phantomEvm: (options?: WalletProfileOptions) => WalletControllerProfile;
67
+ readonly rainbow: (options?: WalletProfileOptions) => WalletControllerProfile;
68
+ readonly okx: (options?: WalletProfileOptions) => WalletControllerProfile;
69
+ readonly trust: (options?: WalletProfileOptions) => WalletControllerProfile;
70
+ readonly brave: (options?: WalletProfileOptions) => WalletControllerProfile;
71
+ readonly zerion: (options?: WalletProfileOptions) => WalletControllerProfile;
72
+ readonly backpack: (options?: WalletProfileOptions) => WalletControllerProfile;
73
+ readonly solflare: (options?: WalletProfileOptions) => WalletControllerProfile;
74
+ readonly ledger: (options?: HardwareWalletProfileOptions) => WalletControllerProfile;
75
+ readonly trezor: (options?: HardwareWalletProfileOptions) => WalletControllerProfile;
76
+ readonly safe: (options?: WalletProfileOptions) => WalletControllerProfile;
77
+ readonly bitget: (options?: WalletProfileOptions) => WalletControllerProfile;
78
+ readonly tokenPocket: (options?: WalletProfileOptions) => WalletControllerProfile;
79
+ readonly safePal: (options?: WalletProfileOptions) => WalletControllerProfile;
80
+ readonly binance: (options?: WalletProfileOptions) => WalletControllerProfile;
81
+ readonly imToken: (options?: WalletProfileOptions) => WalletControllerProfile;
82
+ readonly mathWallet: (options?: WalletProfileOptions) => WalletControllerProfile;
83
+ readonly frame: (options?: WalletProfileOptions) => WalletControllerProfile;
84
+ readonly enkrypt: (options?: WalletProfileOptions) => WalletControllerProfile;
85
+ readonly core: (options?: WalletProfileOptions) => WalletControllerProfile;
86
+ readonly frontier: (options?: WalletProfileOptions) => WalletControllerProfile;
87
+ readonly oneKey: (options?: WalletProfileOptions) => WalletControllerProfile;
88
+ readonly ctrl: (options?: WalletProfileOptions) => WalletControllerProfile;
89
+ readonly uniswap: (options?: WalletProfileOptions) => WalletControllerProfile;
90
+ readonly argent: (options?: WalletProfileOptions) => WalletControllerProfile;
91
+ readonly exodus: (options?: WalletProfileOptions) => WalletControllerProfile;
92
+ readonly fireblocks: (options?: WalletProfileOptions) => WalletControllerProfile;
93
+ };
94
+ export declare function createWalletPersona(input: WalletPersonaInput): WalletPersona;
95
+ export declare function walletPersonaToProviderInfo(persona: WalletPersona): WalletProviderInfo;
96
+ export declare function walletConnectMetadataForPersona(persona: WalletPersona): Omit<WalletConnectPersonaMetadata, 'links'>;
97
+ export declare function walletConnectLinksForPersona(persona: WalletPersona): WalletConnectPersonaLinks;
98
+ export declare function formatWalletConnectUriForPersona(uri: string, persona: WalletPersona, target?: WalletConnectLinkTarget): string;
99
+ //# sourceMappingURL=wallet-personas.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wallet-personas.d.ts","sourceRoot":"","sources":["../src/wallet-personas.ts"],"names":[],"mappings":"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"}