@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.
- package/.env.example +26 -17
- package/LICENSE +21 -0
- package/README.md +480 -48
- package/dist/anvil.d.ts +90 -2
- package/dist/anvil.d.ts.map +1 -1
- package/dist/anvil.js +215 -13
- package/dist/anvil.js.map +1 -1
- package/dist/benchmark.d.ts +55 -0
- package/dist/benchmark.d.ts.map +1 -0
- package/dist/benchmark.js +168 -0
- package/dist/benchmark.js.map +1 -0
- package/dist/contracts/test-erc20.d.ts +227 -0
- package/dist/contracts/test-erc20.d.ts.map +1 -0
- package/dist/contracts/test-erc20.js +8 -0
- package/dist/contracts/test-erc20.js.map +1 -0
- package/dist/erc20.d.ts +38 -0
- package/dist/erc20.d.ts.map +1 -0
- package/dist/erc20.js +229 -0
- package/dist/erc20.js.map +1 -0
- package/dist/fixtures.d.ts +44 -2
- package/dist/fixtures.d.ts.map +1 -1
- package/dist/fixtures.js +162 -17
- package/dist/fixtures.js.map +1 -1
- package/dist/index.d.ts +26 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +11 -1
- package/dist/index.js.map +1 -1
- package/dist/injected-provider.d.ts.map +1 -1
- package/dist/injected-provider.js +863 -77
- package/dist/injected-provider.js.map +1 -1
- package/dist/live-fixtures.d.ts +32 -3
- package/dist/live-fixtures.d.ts.map +1 -1
- package/dist/live-fixtures.js +64 -27
- package/dist/live-fixtures.js.map +1 -1
- package/dist/matchers.d.ts +90 -0
- package/dist/matchers.d.ts.map +1 -0
- package/dist/matchers.js +268 -0
- package/dist/matchers.js.map +1 -0
- package/dist/metamask-extension.d.ts +34 -0
- package/dist/metamask-extension.d.ts.map +1 -0
- package/dist/metamask-extension.js +97 -0
- package/dist/metamask-extension.js.map +1 -0
- package/dist/mock-wallet-controller.d.ts +354 -4
- package/dist/mock-wallet-controller.d.ts.map +1 -1
- package/dist/mock-wallet-controller.js +1444 -58
- package/dist/mock-wallet-controller.js.map +1 -1
- package/dist/private-key-rpc-client.d.ts +1744 -2
- package/dist/private-key-rpc-client.d.ts.map +1 -1
- package/dist/private-key-rpc-client.js +245 -30
- package/dist/private-key-rpc-client.js.map +1 -1
- package/dist/real-wallet-cache.d.ts +103 -0
- package/dist/real-wallet-cache.d.ts.map +1 -0
- package/dist/real-wallet-cache.js +331 -0
- package/dist/real-wallet-cache.js.map +1 -0
- package/dist/real-wallet-extension-fixtures.d.ts +35 -0
- package/dist/real-wallet-extension-fixtures.d.ts.map +1 -0
- package/dist/real-wallet-extension-fixtures.js +96 -0
- package/dist/real-wallet-extension-fixtures.js.map +1 -0
- package/dist/real-wallet-extension.d.ts +86 -0
- package/dist/real-wallet-extension.d.ts.map +1 -0
- package/dist/real-wallet-extension.js +245 -0
- package/dist/real-wallet-extension.js.map +1 -0
- package/dist/real-wallet-fixtures.d.ts +52 -0
- package/dist/real-wallet-fixtures.d.ts.map +1 -0
- package/dist/real-wallet-fixtures.js +88 -0
- package/dist/real-wallet-fixtures.js.map +1 -0
- package/dist/real-wallet.d.ts +119 -19
- package/dist/real-wallet.d.ts.map +1 -1
- package/dist/real-wallet.js +1656 -144
- package/dist/real-wallet.js.map +1 -1
- package/dist/safe.d.ts +311 -0
- package/dist/safe.d.ts.map +1 -0
- package/dist/safe.js +743 -0
- package/dist/safe.js.map +1 -0
- package/dist/transactions.d.ts +118 -0
- package/dist/transactions.d.ts.map +1 -0
- package/dist/transactions.js +207 -0
- package/dist/transactions.js.map +1 -0
- package/dist/types.d.ts +36 -1
- package/dist/types.d.ts.map +1 -1
- package/dist/wallet-personas.d.ts +99 -0
- package/dist/wallet-personas.d.ts.map +1 -0
- package/dist/wallet-personas.js +666 -0
- package/dist/wallet-personas.js.map +1 -0
- package/dist/walletconnect.d.ts +373 -0
- package/dist/walletconnect.d.ts.map +1 -0
- package/dist/walletconnect.js +799 -0
- package/dist/walletconnect.js.map +1 -0
- package/examples/live-sepolia.spec.ts +20 -1
- package/examples/playwright.config.ts +8 -0
- package/package.json +90 -8
- package/docs/API.md +0 -223
- package/docs/ARCHITECTURE.md +0 -81
- package/docs/CONSUMING_FROM_FJORD.md +0 -123
- package/docs/FJORD_LIVE_QA.md +0 -87
- package/docs/RELEASE_CHECKLIST.md +0 -55
package/dist/safe.js.map
ADDED
|
@@ -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
|
|
69
|
+
providers: readonly WalletProviderIdentity[];
|
|
70
|
+
allowedOrigins?: readonly string[];
|
|
36
71
|
};
|
|
37
72
|
export type ProviderRpcErrorLike = Error & {
|
|
38
73
|
code: number;
|
package/dist/types.d.ts.map
CHANGED
|
@@ -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,
|
|
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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"}
|