accounts 0.14.1 → 0.14.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/CHANGELOG.md +6 -0
- package/dist/core/AccessKey.d.ts +1 -1
- package/dist/core/AccessKey.d.ts.map +1 -1
- package/dist/core/adapters/privy.d.ts.map +1 -1
- package/dist/core/adapters/privy.js +112 -155
- package/dist/core/adapters/privy.js.map +1 -1
- package/package.json +1 -1
- package/src/core/AccessKey.ts +1 -1
- package/src/core/adapters/privy.test.ts +150 -10
- package/src/core/adapters/privy.ts +148 -192
package/CHANGELOG.md
CHANGED
package/dist/core/AccessKey.d.ts
CHANGED
|
@@ -159,7 +159,7 @@ export declare namespace authorize {
|
|
|
159
159
|
/** Options for {@link authorize}. */
|
|
160
160
|
type Options = {
|
|
161
161
|
/** Root account that owns this access key and signs its authorization. */
|
|
162
|
-
account: TempoAccount.Account
|
|
162
|
+
account: Pick<TempoAccount.Account, 'address' | 'sign'>;
|
|
163
163
|
/** Default chain ID for the authorization when `parameters.chainId` is not set. */
|
|
164
164
|
chainId: bigint | number;
|
|
165
165
|
/** Access key authorization parameters. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AccessKey.d.ts","sourceRoot":"","sources":["../../src/core/AccessKey.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"AccessKey.d.ts","sourceRoot":"","sources":["../../src/core/AccessKey.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"privy.d.ts","sourceRoot":"","sources":["../../../src/core/adapters/privy.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"privy.d.ts","sourceRoot":"","sources":["../../../src/core/adapters/privy.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { Address as core_Address, Hex, Provider as ox_Provider,
|
|
2
|
-
import {
|
|
1
|
+
import { Address as core_Address, Hex, Provider as ox_Provider, Secp256k1, Signature } from 'ox';
|
|
2
|
+
import { SignatureEnvelope } from 'ox/tempo';
|
|
3
3
|
import { hashMessage, hashTypedData, isAddressEqual, keccak256 } from 'viem';
|
|
4
4
|
import { prepareTransactionRequest } from 'viem/actions';
|
|
5
5
|
import { Actions, Transaction as TempoTransaction } from 'viem/tempo';
|
|
@@ -63,7 +63,7 @@ export function privy(options) {
|
|
|
63
63
|
return Adapter.define({ icon, name, rdns }, ({ getClient, store }) => {
|
|
64
64
|
let privyClient_promise;
|
|
65
65
|
let restore_promise;
|
|
66
|
-
let walletAccounts
|
|
66
|
+
let walletAccounts;
|
|
67
67
|
async function getPrivyClient() {
|
|
68
68
|
privyClient_promise ??= (async () => {
|
|
69
69
|
await options.client.initialize?.();
|
|
@@ -77,9 +77,25 @@ export function privy(options) {
|
|
|
77
77
|
...(label ? { label } : {}),
|
|
78
78
|
};
|
|
79
79
|
}
|
|
80
|
+
function toTempoAccount(account) {
|
|
81
|
+
const address = core_Address.from(account.address);
|
|
82
|
+
async function sign(parameters) {
|
|
83
|
+
return await signPayload({
|
|
84
|
+
payload: parameters.hash,
|
|
85
|
+
walletAccount: account,
|
|
86
|
+
});
|
|
87
|
+
}
|
|
88
|
+
return {
|
|
89
|
+
address,
|
|
90
|
+
sign,
|
|
91
|
+
signTransaction: async (transaction) => await privySignTransaction({ sign, transaction }),
|
|
92
|
+
source: 'privy',
|
|
93
|
+
type: 'local',
|
|
94
|
+
};
|
|
95
|
+
}
|
|
80
96
|
function clear() {
|
|
81
97
|
restore_promise = undefined;
|
|
82
|
-
walletAccounts =
|
|
98
|
+
walletAccounts = undefined;
|
|
83
99
|
store.setState({ accessKeys: [], accounts: [], activeAccount: 0 });
|
|
84
100
|
}
|
|
85
101
|
async function hasValidSession() {
|
|
@@ -144,7 +160,7 @@ export function privy(options) {
|
|
|
144
160
|
}
|
|
145
161
|
async function restore() {
|
|
146
162
|
await Store.waitForHydration(store);
|
|
147
|
-
if (walletAccounts
|
|
163
|
+
if (walletAccounts)
|
|
148
164
|
return;
|
|
149
165
|
if (restore_promise)
|
|
150
166
|
return await restore_promise;
|
|
@@ -163,21 +179,22 @@ export function privy(options) {
|
|
|
163
179
|
clear();
|
|
164
180
|
throw new ox_Provider.DisconnectedError({ message: 'Privy session expired.' });
|
|
165
181
|
});
|
|
166
|
-
walletAccounts =
|
|
182
|
+
walletAccounts = restored;
|
|
183
|
+
const accounts = persisted
|
|
167
184
|
.map((account) => restored.find((walletAccount) => isAddressEqual(core_Address.from(walletAccount.address), account.address)))
|
|
168
185
|
.filter((account) => !!account);
|
|
169
186
|
// If the persisted accounts no longer exist in Privy (different user
|
|
170
187
|
// signed in, wallets removed), wipe the stale state so callers see a
|
|
171
188
|
// clean disconnected state instead of ghost accounts without providers.
|
|
172
|
-
if (
|
|
189
|
+
if (accounts.length === 0) {
|
|
173
190
|
clear();
|
|
174
191
|
throw new ox_Provider.DisconnectedError({
|
|
175
192
|
message: 'Privy session no longer matches persisted accounts.',
|
|
176
193
|
});
|
|
177
194
|
}
|
|
178
195
|
store.setState({
|
|
179
|
-
accounts:
|
|
180
|
-
activeAccount: Math.min(state.activeAccount,
|
|
196
|
+
accounts: accounts.map((account) => toStoreAccount(account)),
|
|
197
|
+
activeAccount: Math.min(state.activeAccount, accounts.length - 1),
|
|
181
198
|
});
|
|
182
199
|
})();
|
|
183
200
|
try {
|
|
@@ -193,20 +210,26 @@ export function privy(options) {
|
|
|
193
210
|
clear();
|
|
194
211
|
throw new ox_Provider.DisconnectedError({ message: 'Privy session expired.' });
|
|
195
212
|
}
|
|
196
|
-
async function
|
|
213
|
+
async function getTempoAccount(address) {
|
|
197
214
|
await restore();
|
|
198
215
|
await requireSession();
|
|
199
|
-
const
|
|
216
|
+
const state = store.getState();
|
|
217
|
+
const address_ = address ?? state.accounts[state.activeAccount]?.address;
|
|
200
218
|
if (!address_)
|
|
201
219
|
throw new ox_Provider.DisconnectedError({ message: 'No accounts connected.' });
|
|
202
|
-
|
|
203
|
-
if (account)
|
|
204
|
-
return account;
|
|
205
|
-
if (walletAccounts.length === 0)
|
|
220
|
+
if (state.accounts.length === 0)
|
|
206
221
|
throw new ox_Provider.DisconnectedError({
|
|
207
222
|
message: 'No Privy account connected.',
|
|
208
223
|
});
|
|
209
|
-
|
|
224
|
+
const connected = state.accounts.some((account) => isAddressEqual(account.address, address_));
|
|
225
|
+
if (!connected)
|
|
226
|
+
throw new ox_Provider.UnauthorizedError({ message: `Account "${address_}" not found.` });
|
|
227
|
+
const account = (walletAccounts ?? []).find((account) => isAddressEqual(core_Address.from(account.address), address_));
|
|
228
|
+
if (account)
|
|
229
|
+
return toTempoAccount(account);
|
|
230
|
+
throw new ox_Provider.DisconnectedError({
|
|
231
|
+
message: 'Privy session no longer matches persisted accounts.',
|
|
232
|
+
});
|
|
210
233
|
}
|
|
211
234
|
async function signPayload(parameters) {
|
|
212
235
|
const { payload, walletAccount } = parameters;
|
|
@@ -248,90 +271,63 @@ export function privy(options) {
|
|
|
248
271
|
});
|
|
249
272
|
return signature;
|
|
250
273
|
}
|
|
251
|
-
/**
|
|
252
|
-
* Builds, signs, and saves an access key authorization for the given Privy
|
|
253
|
-
* wallet. Generates a local P256 key pair when no external key is provided.
|
|
254
|
-
*/
|
|
255
|
-
async function authorizeAccessKeyFor(account, options) {
|
|
256
|
-
const { expiry, limits, scopes } = options;
|
|
257
|
-
const chainId = options.chainId ?? getClient().chain.id;
|
|
258
|
-
const prepared = await (async () => {
|
|
259
|
-
if (options.publicKey || options.address) {
|
|
260
|
-
const address = options.address ?? core_Address.fromPublicKey(PublicKey.from(options.publicKey));
|
|
261
|
-
return {
|
|
262
|
-
keyAuthorization: KeyAuthorization.from({
|
|
263
|
-
address,
|
|
264
|
-
chainId: BigInt(chainId),
|
|
265
|
-
expiry,
|
|
266
|
-
limits,
|
|
267
|
-
scopes,
|
|
268
|
-
type: options.keyType ?? 'secp256k1',
|
|
269
|
-
}),
|
|
270
|
-
};
|
|
271
|
-
}
|
|
272
|
-
if (options.keyType && options.keyType !== 'p256')
|
|
273
|
-
throw new RpcResponse.InvalidParamsError({
|
|
274
|
-
message: `\`keyType: "${options.keyType}"\` requires externally generated key material; provide \`publicKey\` or \`address\`.`,
|
|
275
|
-
});
|
|
276
|
-
const keyPair = await WebCryptoP256.createKeyPair();
|
|
277
|
-
const address = core_Address.fromPublicKey(PublicKey.from(keyPair.publicKey));
|
|
278
|
-
return {
|
|
279
|
-
keyAuthorization: KeyAuthorization.from({
|
|
280
|
-
address,
|
|
281
|
-
chainId: BigInt(chainId),
|
|
282
|
-
expiry,
|
|
283
|
-
limits,
|
|
284
|
-
scopes,
|
|
285
|
-
type: 'p256',
|
|
286
|
-
}),
|
|
287
|
-
keyPair,
|
|
288
|
-
};
|
|
289
|
-
})();
|
|
290
|
-
const signature = await signPayload({
|
|
291
|
-
payload: KeyAuthorization.getSignPayload(prepared.keyAuthorization),
|
|
292
|
-
walletAccount: account,
|
|
293
|
-
});
|
|
294
|
-
const keyAuthorization = KeyAuthorization.from(prepared.keyAuthorization, {
|
|
295
|
-
signature: SignatureEnvelope.from(signature),
|
|
296
|
-
});
|
|
297
|
-
AccessKey.add({
|
|
298
|
-
account: core_Address.from(account.address),
|
|
299
|
-
authorization: keyAuthorization,
|
|
300
|
-
...(prepared.keyPair ? { keyPair: prepared.keyPair } : {}),
|
|
301
|
-
store,
|
|
302
|
-
});
|
|
303
|
-
return KeyAuthorization.toRpc(keyAuthorization);
|
|
304
|
-
}
|
|
305
274
|
async function signTransaction(parameters) {
|
|
306
|
-
const account = await
|
|
275
|
+
const account = await getTempoAccount(parameters.from);
|
|
307
276
|
const { feePayer, ...rest } = parameters;
|
|
308
277
|
const viemClient = getClient({
|
|
309
278
|
chainId: parameters.chainId,
|
|
310
279
|
feePayer: feePayer === true ? undefined : feePayer,
|
|
311
280
|
});
|
|
312
281
|
const prepared = await prepareTransactionRequest(viemClient, {
|
|
313
|
-
account:
|
|
282
|
+
account: account.address,
|
|
314
283
|
...rest,
|
|
315
284
|
...(feePayer ? { feePayer: true } : {}),
|
|
316
285
|
type: 'tempo',
|
|
317
286
|
});
|
|
318
|
-
return await
|
|
287
|
+
return await account.signTransaction(prepared);
|
|
319
288
|
}
|
|
320
|
-
async function
|
|
289
|
+
async function privySignTransaction(parameters) {
|
|
290
|
+
const { sign, transaction } = parameters;
|
|
321
291
|
const presign = (() => {
|
|
322
|
-
if (
|
|
323
|
-
typeof
|
|
324
|
-
'feePayerSignature' in
|
|
325
|
-
|
|
326
|
-
return { ...
|
|
327
|
-
return
|
|
292
|
+
if (transaction &&
|
|
293
|
+
typeof transaction === 'object' &&
|
|
294
|
+
'feePayerSignature' in transaction &&
|
|
295
|
+
transaction.feePayerSignature)
|
|
296
|
+
return { ...transaction, feePayerSignature: null };
|
|
297
|
+
return transaction;
|
|
328
298
|
})();
|
|
329
299
|
const unsignedTransaction = await TempoTransaction.serialize(presign);
|
|
330
|
-
const signature = await
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
300
|
+
const signature = await sign({ hash: keccak256(unsignedTransaction) });
|
|
301
|
+
return await TempoTransaction.serialize(transaction, SignatureEnvelope.from(Signature.fromHex(signature)));
|
|
302
|
+
}
|
|
303
|
+
async function connectAccounts(parameters) {
|
|
304
|
+
const { addresses, authorizeAccessKey, label, personalSign, privyClient } = parameters;
|
|
305
|
+
await requireSession();
|
|
306
|
+
const wallets = await loadEthereumWallets(privyClient);
|
|
307
|
+
const selected = selectWalletAccounts(wallets, addresses);
|
|
308
|
+
const account = selected[0] ? toTempoAccount(selected[0]) : undefined;
|
|
309
|
+
if (!account && parameters.noAccountsMessage)
|
|
310
|
+
throw new ox_Provider.DisconnectedError({
|
|
311
|
+
message: parameters.noAccountsMessage,
|
|
312
|
+
});
|
|
313
|
+
const digest = personalSign ? hashMessage(personalSign.message) : parameters.digest;
|
|
314
|
+
const keyAuthorization = authorizeAccessKey && account
|
|
315
|
+
? await AccessKey.authorize({
|
|
316
|
+
account,
|
|
317
|
+
chainId: getClient().chain.id,
|
|
318
|
+
parameters: authorizeAccessKey,
|
|
319
|
+
store,
|
|
320
|
+
})
|
|
321
|
+
: undefined;
|
|
322
|
+
const signature = digest && account ? await account.sign({ hash: digest }) : undefined;
|
|
323
|
+
walletAccounts = wallets;
|
|
324
|
+
restore_promise = undefined;
|
|
325
|
+
return {
|
|
326
|
+
accounts: selected.map((account, index) => toStoreAccount(account, index === 0 ? label : undefined)),
|
|
327
|
+
...(personalSign ? { personalSign: { message: personalSign.message } } : {}),
|
|
328
|
+
...(keyAuthorization ? { keyAuthorization } : {}),
|
|
329
|
+
signature,
|
|
330
|
+
};
|
|
335
331
|
}
|
|
336
332
|
async function prepareTransaction(parameters) {
|
|
337
333
|
const viemClient = getClient({
|
|
@@ -446,33 +442,15 @@ export function privy(options) {
|
|
|
446
442
|
...(personalSign ? { personalSign } : {}),
|
|
447
443
|
},
|
|
448
444
|
});
|
|
449
|
-
await
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
throw new ox_Provider.DisconnectedError({
|
|
459
|
-
message: 'Privy returned no wallet.',
|
|
460
|
-
});
|
|
461
|
-
const digest = personalSign ? hashMessage(personalSign.message) : parameters.digest;
|
|
462
|
-
const keyAuthorization = authorizeAccessKey
|
|
463
|
-
? await authorizeAccessKeyFor(account, authorizeAccessKey)
|
|
464
|
-
: undefined;
|
|
465
|
-
return {
|
|
466
|
-
accounts: walletAccounts.map((wallet, index) => toStoreAccount(wallet, index === 0 ? parameters.name : undefined)),
|
|
467
|
-
...(personalSign ? { personalSign: { message: personalSign.message } } : {}),
|
|
468
|
-
...(keyAuthorization ? { keyAuthorization } : {}),
|
|
469
|
-
signature: digest
|
|
470
|
-
? await signPayload({
|
|
471
|
-
payload: digest,
|
|
472
|
-
walletAccount: account,
|
|
473
|
-
})
|
|
474
|
-
: undefined,
|
|
475
|
-
};
|
|
445
|
+
return await connectAccounts({
|
|
446
|
+
addresses,
|
|
447
|
+
...(authorizeAccessKey ? { authorizeAccessKey } : {}),
|
|
448
|
+
...(parameters.digest ? { digest: parameters.digest } : {}),
|
|
449
|
+
label: parameters.name,
|
|
450
|
+
...(personalSign ? { personalSign } : {}),
|
|
451
|
+
privyClient,
|
|
452
|
+
noAccountsMessage: 'Privy returned no wallet.',
|
|
453
|
+
});
|
|
476
454
|
},
|
|
477
455
|
async loadAccounts(parameters) {
|
|
478
456
|
const { authorizeAccessKey, personalSign } = parameters ?? {};
|
|
@@ -480,46 +458,29 @@ export function privy(options) {
|
|
|
480
458
|
throw new ox_Provider.ProviderRpcError(-32602, '`digest` and `personalSign` cannot both be set on `wallet_connect`.');
|
|
481
459
|
const privyClient = await getPrivyClient();
|
|
482
460
|
const addresses = await options.loadAccounts({ client: privyClient, parameters });
|
|
483
|
-
await
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
const digest = personalSign ? hashMessage(personalSign.message) : parameters?.digest;
|
|
491
|
-
const account = walletAccounts[0];
|
|
492
|
-
const keyAuthorization = authorizeAccessKey && account
|
|
493
|
-
? await authorizeAccessKeyFor(account, authorizeAccessKey)
|
|
494
|
-
: undefined;
|
|
495
|
-
return {
|
|
496
|
-
accounts: walletAccounts.map((account) => toStoreAccount(account)),
|
|
497
|
-
...(personalSign ? { personalSign: { message: personalSign.message } } : {}),
|
|
498
|
-
...(keyAuthorization ? { keyAuthorization } : {}),
|
|
499
|
-
signature: digest && account
|
|
500
|
-
? await signPayload({
|
|
501
|
-
payload: digest,
|
|
502
|
-
walletAccount: account,
|
|
503
|
-
})
|
|
504
|
-
: undefined,
|
|
505
|
-
};
|
|
461
|
+
return await connectAccounts({
|
|
462
|
+
addresses,
|
|
463
|
+
...(authorizeAccessKey ? { authorizeAccessKey } : {}),
|
|
464
|
+
...(parameters?.digest ? { digest: parameters.digest } : {}),
|
|
465
|
+
...(personalSign ? { personalSign } : {}),
|
|
466
|
+
privyClient,
|
|
467
|
+
});
|
|
506
468
|
},
|
|
507
469
|
async authorizeAccessKey(parameters) {
|
|
508
|
-
const account = await
|
|
509
|
-
const keyAuthorization = await
|
|
510
|
-
|
|
470
|
+
const account = await getTempoAccount(undefined);
|
|
471
|
+
const keyAuthorization = await AccessKey.authorize({
|
|
472
|
+
account,
|
|
473
|
+
chainId: getClient().chain.id,
|
|
474
|
+
parameters,
|
|
475
|
+
store,
|
|
476
|
+
});
|
|
477
|
+
return { keyAuthorization, rootAddress: account.address };
|
|
511
478
|
},
|
|
512
479
|
async revokeAccessKey(parameters) {
|
|
513
|
-
const account = await
|
|
514
|
-
const account_tempo = {
|
|
515
|
-
address: core_Address.from(account.address),
|
|
516
|
-
source: 'privy',
|
|
517
|
-
signTransaction: async (request) => await signPreparedTransaction(account, request),
|
|
518
|
-
type: 'local',
|
|
519
|
-
};
|
|
480
|
+
const account = await getTempoAccount(parameters.address);
|
|
520
481
|
try {
|
|
521
482
|
await Actions.accessKey.revoke(getClient(), {
|
|
522
|
-
account:
|
|
483
|
+
account: account,
|
|
523
484
|
accessKey: parameters.accessKeyAddress,
|
|
524
485
|
});
|
|
525
486
|
}
|
|
@@ -529,27 +490,23 @@ export function privy(options) {
|
|
|
529
490
|
}
|
|
530
491
|
AccessKey.remove({
|
|
531
492
|
accessKey: parameters.accessKeyAddress,
|
|
532
|
-
account:
|
|
493
|
+
account: account.address,
|
|
533
494
|
chainId: store.getState().chainId,
|
|
534
495
|
store,
|
|
535
496
|
});
|
|
536
497
|
},
|
|
537
498
|
async signPersonalMessage(parameters) {
|
|
538
|
-
|
|
539
|
-
|
|
540
|
-
payload: hashMessage({ raw: parameters.data }),
|
|
541
|
-
walletAccount: account,
|
|
499
|
+
return await (await getTempoAccount(parameters.address)).sign({
|
|
500
|
+
hash: hashMessage({ raw: parameters.data }),
|
|
542
501
|
});
|
|
543
502
|
},
|
|
544
503
|
async signTransaction(parameters) {
|
|
545
504
|
return await (await prepareTransaction(parameters)).sign();
|
|
546
505
|
},
|
|
547
506
|
async signTypedData(parameters) {
|
|
548
|
-
const account = await accountForSigning(parameters.address);
|
|
549
507
|
const typedData = JSON.parse(parameters.data);
|
|
550
|
-
return await
|
|
551
|
-
|
|
552
|
-
walletAccount: account,
|
|
508
|
+
return await (await getTempoAccount(parameters.address)).sign({
|
|
509
|
+
hash: hashTypedData(typedData),
|
|
553
510
|
});
|
|
554
511
|
},
|
|
555
512
|
async sendTransaction(parameters) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"privy.js","sourceRoot":"","sources":["../../../src/core/adapters/privy.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,IAAI,YAAY,EACvB,GAAG,EACH,QAAQ,IAAI,WAAW,EACvB,SAAS,EACT,WAAW,EACX,SAAS,EACT,SAAS,EACT,aAAa,GACd,MAAM,IAAI,CAAA;AACX,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAA;AAC9D,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,MAAM,CAAA;AAE5E,OAAO,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAA;AACxD,OAAO,EAAE,OAAO,EAAE,WAAW,IAAI,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAErE,OAAO,KAAK,SAAS,MAAM,iBAAiB,CAAA;AAC5C,OAAO,KAAK,OAAO,MAAM,eAAe,CAAA;AACxC,OAAO,KAAK,oBAAoB,MAAM,qCAAqC,CAAA;AAC3E,OAAO,KAAK,KAAK,MAAM,aAAa,CAAA;AAEpC,MAAM,sBAAsB,GAAG,IAAI,GAAG,CAAC;IACrC,qCAAqC;IACrC,qDAAqD;IACrD,kCAAkC;IAClC,gCAAgC;IAChC,+BAA+B;IAC/B,oBAAoB;IACpB,qBAAqB;IACrB,sBAAsB;IACtB,uBAAuB;IACvB,iBAAiB;IACjB,iBAAiB;IACjB,cAAc;CACf,CAAC,CAAA;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,MAAM,UAAU,KAAK,CACnB,OAA8B;IAE9B,MAAM,EAAE,IAAI,EAAE,IAAI,GAAG,OAAO,EAAE,IAAI,GAAG,UAAU,EAAE,GAAG,OAAO,CAAA;IAE3D,OAAO,OAAO,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,EAAE;QACnE,IAAI,mBAAgD,CAAA;QACpD,IAAI,eAA0C,CAAA;QAC9C,IAAI,cAAc,GAAoC,EAAE,CAAA;QAExD,KAAK,UAAU,cAAc;YAC3B,mBAAmB,KAAK,CAAC,KAAK,IAAI,EAAE;gBAClC,MAAM,OAAO,CAAC,MAAM,CAAC,UAAU,EAAE,EAAE,CAAA;gBACnC,OAAO,OAAO,CAAC,MAAM,CAAA;YACvB,CAAC,CAAC,EAAE,CAAA;YACJ,OAAO,MAAM,mBAAmB,CAAA;QAClC,CAAC;QAED,SAAS,cAAc,CAAC,OAA6B,EAAE,KAA0B;YAC/E,OAAO;gBACL,OAAO,EAAE,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;gBAC3C,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC5B,CAAA;QACH,CAAC;QAED,SAAS,KAAK;YACZ,eAAe,GAAG,SAAS,CAAA;YAC3B,cAAc,GAAG,EAAE,CAAA;YACnB,KAAK,CAAC,QAAQ,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,aAAa,EAAE,CAAC,EAAE,CAAC,CAAA;QACpE,CAAC;QAED,KAAK,UAAU,eAAe;YAC5B,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,cAAc,EAAE,CAAC,CAAC,cAAc,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;gBAC5E,IAAI,cAAc,CAAC,KAAK,CAAC;oBAAE,OAAO,IAAI,CAAA;gBACtC,MAAM,KAAK,CAAA;YACb,CAAC,CAAC,CAAA;YACF,OAAO,CAAC,CAAC,KAAK,CAAA;QAChB,CAAC;QAED;;;;;;;WAOG;QACH,KAAK,UAAU,mBAAmB,CAChC,WAAyB;YAEzB,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC,GAAG,EAAE,CAAA;YAC7C,MAAM,OAAO,GAAG,CAAC,IAAI,EAAE,eAAe,IAAI,EAAE,CAAC;iBAC1C,MAAM,CACL,CAAC,OAAO,EAAE,EAAE,CACV,OAAO,CAAC,IAAI,KAAK,QAAQ;gBACzB,OAAO,CAAC,kBAAkB,KAAK,OAAO;gBACtC,OAAO,CAAC,cAAc,KAAK,UAAU;gBACrC,OAAO,CAAC,UAAU,KAAK,UAAU;gBACjC,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ,CACtC;iBACA,KAAK,EAAE;iBACP,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;gBACb,iEAAiE;gBACjE,iEAAiE;gBACjE,MAAM,OAAO,GAAG,CAAC,CAAC,YAAY,IAAI,MAAM,CAAC,iBAAiB,CAAA;gBAC1D,MAAM,OAAO,GAAG,CAAC,CAAC,YAAY,IAAI,MAAM,CAAC,iBAAiB,CAAA;gBAC1D,OAAO,OAAO,GAAG,OAAO,CAAA;YAC1B,CAAC,CAAC,CAAA;YAEJ,oEAAoE;YACpE,8DAA8D;YAC9D,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,YAAY,KAAK,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,CAAA;YACjF,IAAI,CAAC,OAAO;gBAAE,OAAO,EAAE,CAAA;YACvB,MAAM,SAAS,GAAG,OAAO,CAAC,OAAiB,CAAA;YAE3C,OAAO,MAAM,OAAO,CAAC,GAAG,CACtB,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;gBAC7B,OAAO,EAAE,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,OAAiB,CAAC;gBACpD,QAAQ,EAAE,MAAM,WAAW,CAAC,cAAc,CAAC,mBAAmB,CAAC;oBAC7D,MAAM;oBACN,SAAS;oBACT,iBAAiB,EAAE,2BAA2B;iBAC/C,CAAC;aACH,CAAC,CAAC,CACJ,CAAA;QACH,CAAC;QAED,SAAS,oBAAoB,CAC3B,QAAyC,EACzC,SAAiC;YAEjC,IAAI,CAAC,SAAS;gBAAE,OAAO,QAAQ,CAAA;YAE/B,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;gBAC/B,MAAM,QAAQ,GAAG,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;gBAC3C,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CACxC,cAAc,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAC,CAC7D,CAAA;gBACD,IAAI,OAAO;oBAAE,OAAO,OAAO,CAAA;gBAE3B,MAAM,IAAI,WAAW,CAAC,iBAAiB,CAAC;oBACtC,OAAO,EAAE,oCAAoC,QAAQ,sDAAsD;iBAC5G,CAAC,CAAA;YACJ,CAAC,CAAC,CAAA;QACJ,CAAC;QAED,KAAK,UAAU,OAAO;YACpB,MAAM,KAAK,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAA;YACnC,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC;gBAAE,OAAM;YACrC,IAAI,eAAe;gBAAE,OAAO,MAAM,eAAe,CAAA;YAEjD,eAAe,GAAG,CAAC,KAAK,IAAI,EAAE;gBAC5B,MAAM,KAAK,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAA;gBAC9B,MAAM,SAAS,GAAG,KAAK,CAAC,QAAQ,CAAA;gBAChC,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;oBAAE,OAAM;gBAElC,IAAI,CAAC,CAAC,MAAM,eAAe,EAAE,CAAC,EAAE,CAAC;oBAC/B,KAAK,EAAE,CAAA;oBACP,MAAM,IAAI,WAAW,CAAC,iBAAiB,CAAC,EAAE,OAAO,EAAE,wBAAwB,EAAE,CAAC,CAAA;gBAChF,CAAC;gBAED,MAAM,QAAQ,GAAG,MAAM,mBAAmB,CAAC,MAAM,cAAc,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;oBACjF,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC;wBAAE,MAAM,KAAK,CAAA;oBACvC,KAAK,EAAE,CAAA;oBACP,MAAM,IAAI,WAAW,CAAC,iBAAiB,CAAC,EAAE,OAAO,EAAE,wBAAwB,EAAE,CAAC,CAAA;gBAChF,CAAC,CAAC,CAAA;gBACF,cAAc,GAAG,SAAS;qBACvB,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CACf,QAAQ,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,EAAE,CAC9B,cAAc,CAAC,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC,CAC1E,CACF;qBACA,MAAM,CAAC,CAAC,OAAO,EAAmC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAA;gBAElE,qEAAqE;gBACrE,qEAAqE;gBACrE,wEAAwE;gBACxE,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAChC,KAAK,EAAE,CAAA;oBACP,MAAM,IAAI,WAAW,CAAC,iBAAiB,CAAC;wBACtC,OAAO,EAAE,qDAAqD;qBAC/D,CAAC,CAAA;gBACJ,CAAC;gBAED,KAAK,CAAC,QAAQ,CAAC;oBACb,QAAQ,EAAE,cAAc,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;oBAClE,aAAa,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,aAAa,EAAE,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC;iBACxE,CAAC,CAAA;YACJ,CAAC,CAAC,EAAE,CAAA;YAEJ,IAAI,CAAC;gBACH,MAAM,eAAe,CAAA;YACvB,CAAC;oBAAS,CAAC;gBACT,eAAe,GAAG,SAAS,CAAA;YAC7B,CAAC;QACH,CAAC;QAED,KAAK,UAAU,cAAc;YAC3B,IAAI,MAAM,eAAe,EAAE;gBAAE,OAAM;YACnC,KAAK,EAAE,CAAA;YACP,MAAM,IAAI,WAAW,CAAC,iBAAiB,CAAC,EAAE,OAAO,EAAE,wBAAwB,EAAE,CAAC,CAAA;QAChF,CAAC;QAED,KAAK,UAAU,iBAAiB,CAAC,OAA4B;YAC3D,MAAM,OAAO,EAAE,CAAA;YACf,MAAM,cAAc,EAAE,CAAA;YAEtB,MAAM,QAAQ,GAAG,OAAO,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,aAAa,CAAC,EAAE,OAAO,CAAA;YAC9F,IAAI,CAAC,QAAQ;gBAAE,MAAM,IAAI,WAAW,CAAC,iBAAiB,CAAC,EAAE,OAAO,EAAE,wBAAwB,EAAE,CAAC,CAAA;YAE7F,MAAM,OAAO,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAC9C,cAAc,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAC,CAC7D,CAAA;YACD,IAAI,OAAO;gBAAE,OAAO,OAAO,CAAA;YAE3B,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC;gBAC7B,MAAM,IAAI,WAAW,CAAC,iBAAiB,CAAC;oBACtC,OAAO,EAAE,6BAA6B;iBACvC,CAAC,CAAA;YAEJ,MAAM,IAAI,WAAW,CAAC,iBAAiB,CAAC,EAAE,OAAO,EAAE,YAAY,QAAQ,cAAc,EAAE,CAAC,CAAA;QAC1F,CAAC;QAED,KAAK,UAAU,WAAW,CAAC,UAG1B;YACC,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,GAAG,UAAU,CAAA;YAC7C,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,QAAQ;iBACxC,OAAO,CAAC,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;iBACxD,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;gBACf,MAAM,IAAI,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAA;gBACrC,MAAM,OAAO,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE,CAAA;gBACzD,MAAM,WAAW,GACf,CAAC,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC;oBAChE,CAAC,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;oBACxE,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC;oBAC/B,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAA;gBACtC,IAAI,WAAW;oBACb,MAAM,IAAI,WAAW,CAAC,sBAAsB,CAAC;wBAC3C,OAAO,EACL,gHAAgH;qBACnH,CAAC,CAAA;gBACJ,IAAI,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC;oBAC1B,KAAK,EAAE,CAAA;oBACP,MAAM,IAAI,WAAW,CAAC,iBAAiB,CAAC,EAAE,OAAO,EAAE,wBAAwB,EAAE,CAAC,CAAA;gBAChF,CAAC;gBACD,MAAM,KAAK,CAAA;YACb,CAAC,CAAC,CAAA;YACJ,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC;gBACrD,MAAM,IAAI,WAAW,CAAC,gBAAgB,CACpC,CAAC,KAAK,EACN,0DAA0D,CAC3D,CAAA;YACH,MAAM,SAAS,GAAY,MAAM,CAAA;YAEjC,6DAA6D;YAC7D,MAAM,QAAQ,GAAG,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAA;YACzD,MAAM,SAAS,GAAG,CAAC,GAAG,EAAE;gBACtB,IAAI,CAAC;oBACH,OAAO,SAAS,CAAC,cAAc,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC,CAAA;gBACvF,CAAC;gBAAC,MAAM,CAAC;oBACP,OAAO,SAAS,CAAA;gBAClB,CAAC;YACH,CAAC,CAAC,EAAE,CAAA;YACJ,IAAI,CAAC,SAAS,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE,QAAQ,CAAC;gBACpD,MAAM,IAAI,WAAW,CAAC,iBAAiB,CAAC;oBACtC,OAAO,EAAE,4CAA4C,SAAS,IAAI,SAAS,+CAA+C,QAAQ,IAAI;iBACvI,CAAC,CAAA;YACJ,OAAO,SAAS,CAAA;QAClB,CAAC;QAED;;;WAGG;QACH,KAAK,UAAU,qBAAqB,CAClC,OAA6B,EAC7B,OAA8C;YAE9C,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAA;YAC1C,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,SAAS,EAAE,CAAC,KAAK,CAAC,EAAE,CAAA;YAEvD,MAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,IAAI,EAAE;gBACjC,IAAI,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;oBACzC,MAAM,OAAO,GACX,OAAO,CAAC,OAAO,IAAI,YAAY,CAAC,aAAa,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,SAAU,CAAC,CAAC,CAAA;oBACnF,OAAO;wBACL,gBAAgB,EAAE,gBAAgB,CAAC,IAAI,CAAC;4BACtC,OAAO;4BACP,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC;4BACxB,MAAM;4BACN,MAAM;4BACN,MAAM;4BACN,IAAI,EAAE,OAAO,CAAC,OAAO,IAAI,WAAW;yBACrC,CAAC;qBACH,CAAA;gBACH,CAAC;gBAED,IAAI,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,OAAO,KAAK,MAAM;oBAC/C,MAAM,IAAI,WAAW,CAAC,kBAAkB,CAAC;wBACvC,OAAO,EAAE,eAAe,OAAO,CAAC,OAAO,uFAAuF;qBAC/H,CAAC,CAAA;gBAEJ,MAAM,OAAO,GAAG,MAAM,aAAa,CAAC,aAAa,EAAE,CAAA;gBACnD,MAAM,OAAO,GAAG,YAAY,CAAC,aAAa,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAA;gBAC7E,OAAO;oBACL,gBAAgB,EAAE,gBAAgB,CAAC,IAAI,CAAC;wBACtC,OAAO;wBACP,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC;wBACxB,MAAM;wBACN,MAAM;wBACN,MAAM;wBACN,IAAI,EAAE,MAAM;qBACb,CAAC;oBACF,OAAO;iBACR,CAAA;YACH,CAAC,CAAC,EAAE,CAAA;YAEJ,MAAM,SAAS,GAAG,MAAM,WAAW,CAAC;gBAClC,OAAO,EAAE,gBAAgB,CAAC,cAAc,CAAC,QAAQ,CAAC,gBAAgB,CAAC;gBACnE,aAAa,EAAE,OAAO;aACvB,CAAC,CAAA;YACF,MAAM,gBAAgB,GAAG,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,gBAAgB,EAAE;gBACxE,SAAS,EAAE,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC;aAC7C,CAAC,CAAA;YAEF,SAAS,CAAC,GAAG,CAAC;gBACZ,OAAO,EAAE,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;gBAC3C,aAAa,EAAE,gBAAgB;gBAC/B,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC1D,KAAK;aACN,CAAC,CAAA;YAEF,OAAO,gBAAgB,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAA;QACjD,CAAC;QAED,KAAK,UAAU,eAAe,CAAC,UAA8C;YAC3E,MAAM,OAAO,GAAG,MAAM,iBAAiB,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;YACxD,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,GAAG,UAAU,CAAA;YACxC,MAAM,UAAU,GAAG,SAAS,CAAC;gBAC3B,OAAO,EAAE,UAAU,CAAC,OAAO;gBAC3B,QAAQ,EAAE,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ;aACnD,CAAC,CAAA;YACF,MAAM,QAAQ,GAAG,MAAM,yBAAyB,CAAC,UAAU,EAAE;gBAC3D,OAAO,EAAE,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;gBAC3C,GAAG,IAAI;gBACP,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACvC,IAAI,EAAE,OAAO;aACL,CAAC,CAAA;YACX,OAAO,MAAM,uBAAuB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;QACzD,CAAC;QAED,KAAK,UAAU,uBAAuB,CAAC,OAA6B,EAAE,QAAiB;YACrF,MAAM,OAAO,GAAG,CAAC,GAAG,EAAE;gBACpB,IACE,QAAQ;oBACR,OAAO,QAAQ,KAAK,QAAQ;oBAC5B,mBAAmB,IAAI,QAAQ;oBAC/B,QAAQ,CAAC,iBAAiB;oBAE1B,OAAO,EAAE,GAAG,QAAQ,EAAE,iBAAiB,EAAE,IAAI,EAAE,CAAA;gBACjD,OAAO,QAAQ,CAAA;YACjB,CAAC,CAAC,EAAE,CAAA;YACJ,MAAM,mBAAmB,GAAG,MAAM,gBAAgB,CAAC,SAAS,CAAC,OAAgB,CAAC,CAAA;YAE9E,MAAM,SAAS,GAAG,MAAM,WAAW,CAAC;gBAClC,OAAO,EAAE,SAAS,CAAC,mBAAmB,CAAC;gBACvC,aAAa,EAAE,OAAO;aACvB,CAAC,CAAA;YACF,OAAO,MAAM,gBAAgB,CAAC,SAAS,CACrC,QAAiB,EACjB,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,SAAS,CAAC,CAAU,CAC9D,CAAA;QACH,CAAC;QAED,KAAK,UAAU,kBAAkB,CAAC,UAA8C;YAC9E,MAAM,UAAU,GAAG,SAAS,CAAC;gBAC3B,OAAO,EAAE,UAAU,CAAC,OAAO;gBAC3B,QAAQ,EAAE,UAAU,CAAC,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,QAAQ;aACzE,CAAC,CAAA;YAEF,MAAM,KAAK,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAA;YAC9B,MAAM,OAAO,GAAG,UAAU,CAAC,IAAI,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE,OAAO,CAAA;YAC/E,MAAM,WAAW,GAAG,OAAO;gBACzB,CAAC,CAAC,MAAM,oBAAoB,CAAC,MAAM,CAAC;oBAChC,OAAO;oBACP,KAAK,EAAE,UAAU,CAAC,KAAK;oBACvB,OAAO,EAAE,UAAU,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO;oBAC5C,MAAM,EAAE,UAAU;oBAClB,KAAK;iBACN,CAAC;gBACJ,CAAC,CAAC,SAAS,CAAA;YACb,IAAI,WAAW,EAAE,CAAC;gBAChB,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,GAAG,UAAU,CAAA;gBACxC,IAAI,CAAC;oBACH,OAAO,MAAM,WAAW,CAAC,OAAO,CAAC;wBAC/B,GAAG,IAAI;wBACP,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;qBACxC,CAAC,CAAA;gBACJ,CAAC;gBAAC,MAAM,CAAC,CAAA,CAAC;YACZ,CAAC;YAED,KAAK,UAAU,IAAI;gBACjB,OAAO,MAAM,eAAe,CAAC,UAAU,CAAC,CAAA;YAC1C,CAAC;YAED,OAAO;gBACL,OAAO,EAAE,SAAkB;gBAC3B,IAAI;gBACJ,KAAK,CAAC,IAAI;oBACR,MAAM,MAAM,GAAG,MAAM,IAAI,EAAE,CAAA;oBAC3B,OAAO,MAAM,UAAU,CAAC,OAAO,CAAC;wBAC9B,MAAM,EAAE,wBAAiC;wBACzC,MAAM,EAAE,CAAC,MAAM,CAAC;qBACjB,CAAC,CAAA;gBACJ,CAAC;gBACD,KAAK,CAAC,QAAQ;oBACZ,MAAM,MAAM,GAAG,MAAM,IAAI,EAAE,CAAA;oBAC3B,OAAO,MAAM,UAAU,CAAC,OAAO,CAAC;wBAC9B,MAAM,EAAE,4BAAqC;wBAC7C,MAAM,EAAE,CAAC,MAAM,CAAC;qBACjB,CAAC,CAAA;gBACJ,CAAC;aACF,CAAA;QACH,CAAC;QAED,SAAS,cAAc,CAAC,KAAc;YACpC,MAAM,IAAI,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAA;YACrC,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC7B,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,EAAE,CAAA;gBACrC,IAAI,sBAAsB,CAAC,GAAG,CAAC,UAAU,CAAC;oBAAE,OAAO,IAAI,CAAA;gBACvD,IAAI,UAAU,CAAC,QAAQ,CAAC,SAAS,CAAC;oBAAE,OAAO,IAAI,CAAA;gBAC/C,IAAI,UAAU,CAAC,QAAQ,CAAC,kBAAkB,CAAC;oBAAE,OAAO,IAAI,CAAA;YAC1D,CAAC;YAED,MAAM,OAAO,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE,CAAA;YACzD,OAAO,CACL,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAC;gBACvC,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAC;gBACrC,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAC;gBACrC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC;gBACjC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CACpC,CAAA;QACH,CAAC;QAED,SAAS,iBAAiB,CAAC,KAAc;YACvC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;gBAAE,OAAO,SAAS,CAAA;YAEtC,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ;gBAAE,OAAO,KAAK,CAAC,IAAI,CAAA;YACvF,IAAI,OAAO,KAAK,CAAC,UAAU,KAAK,QAAQ,IAAI,OAAO,KAAK,CAAC,UAAU,KAAK,QAAQ;gBAC9E,OAAO,KAAK,CAAC,UAAU,CAAA;YACzB,IAAI,OAAO,KAAK,CAAC,SAAS,KAAK,QAAQ,IAAI,OAAO,KAAK,CAAC,SAAS,KAAK,QAAQ;gBAC5E,OAAO,KAAK,CAAC,SAAS,CAAA;YAExB,OAAO,iBAAiB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QACvC,CAAC;QAED,SAAS,oBAAoB,CAAC,KAAc;YAC1C,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;gBAC3B,MAAM,MAAM,GAAG,oBAAoB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;gBAChD,OAAO,MAAM,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,OAAO,IAAI,MAAM,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAA;YAC9D,CAAC;YACD,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;gBAAE,OAAO,EAAE,CAAA;YAC/B,MAAM,GAAG,GACP,CAAC,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC;gBACpD,CAAC,OAAO,KAAK,CAAC,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,KAAK,CAAC;gBAChD,EAAE,CAAA;YACJ,MAAM,MAAM,GAAG,oBAAoB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;YAChD,IAAI,GAAG,IAAI,MAAM;gBAAE,OAAO,GAAG,GAAG,IAAI,MAAM,EAAE,CAAA;YAC5C,OAAO,GAAG,IAAI,MAAM,CAAA;QACtB,CAAC;QAED,SAAS,QAAQ,CAAC,KAAc;YAC9B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,CAAA;QACpD,CAAC;QAED,OAAO;YACL,OAAO,KAAI,CAAC;YACZ,OAAO,EAAE;gBACP,KAAK,CAAC,aAAa,CAAC,UAAU;oBAC5B,MAAM,EAAE,kBAAkB,EAAE,YAAY,EAAE,GAAG,UAAU,CAAA;oBACvD,IAAI,YAAY,IAAI,UAAU,CAAC,MAAM;wBACnC,MAAM,IAAI,WAAW,CAAC,gBAAgB,CACpC,CAAC,KAAK,EACN,qEAAqE,CACtE,CAAA;oBAEH,MAAM,WAAW,GAAG,MAAM,cAAc,EAAE,CAAA;oBAC1C,MAAM,SAAS,GAAG,OAAO,CAAC,aAAa;wBACrC,CAAC,CAAC,MAAM,OAAO,CAAC,aAAa,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC;wBAClE,CAAC,CAAC,MAAM,OAAO,CAAC,YAAY,CAAC;4BACzB,MAAM,EAAE,WAAW;4BACnB,UAAU,EAAE;gCACV,GAAG,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gCACrD,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gCAC3D,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;6BAC1C;yBACF,CAAC,CAAA;oBACN,MAAM,cAAc,EAAE,CAAA;oBACtB,cAAc,GAAG,oBAAoB,CAAC,MAAM,mBAAmB,CAAC,WAAW,CAAC,EAAE,SAAS,CAAC,CAAA;oBACxF,yEAAyE;oBACzE,wEAAwE;oBACxE,iEAAiE;oBACjE,mCAAmC;oBACnC,eAAe,GAAG,SAAS,CAAA;oBAE3B,MAAM,OAAO,GAAG,cAAc,CAAC,CAAC,CAAC,CAAA;oBACjC,IAAI,CAAC,OAAO;wBACV,MAAM,IAAI,WAAW,CAAC,iBAAiB,CAAC;4BACtC,OAAO,EAAE,2BAA2B;yBACrC,CAAC,CAAA;oBAEJ,MAAM,MAAM,GAAG,YAAY,CAAC,CAAC,CAAC,WAAW,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAA;oBACnF,MAAM,gBAAgB,GAAG,kBAAkB;wBACzC,CAAC,CAAC,MAAM,qBAAqB,CAAC,OAAO,EAAE,kBAAkB,CAAC;wBAC1D,CAAC,CAAC,SAAS,CAAA;oBAEb,OAAO;wBACL,QAAQ,EAAE,cAAc,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAC7C,cAAc,CAAC,MAAM,EAAE,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAClE;wBACD,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,EAAE,OAAO,EAAE,YAAY,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBAC5E,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBACjD,SAAS,EAAE,MAAM;4BACf,CAAC,CAAC,MAAM,WAAW,CAAC;gCAChB,OAAO,EAAE,MAAM;gCACf,aAAa,EAAE,OAAO;6BACvB,CAAC;4BACJ,CAAC,CAAC,SAAS;qBACd,CAAA;gBACH,CAAC;gBACD,KAAK,CAAC,YAAY,CAAC,UAAU;oBAC3B,MAAM,EAAE,kBAAkB,EAAE,YAAY,EAAE,GACxC,UAAU,IAAK,EAAsC,CAAA;oBACvD,IAAI,YAAY,IAAI,UAAU,EAAE,MAAM;wBACpC,MAAM,IAAI,WAAW,CAAC,gBAAgB,CACpC,CAAC,KAAK,EACN,qEAAqE,CACtE,CAAA;oBAEH,MAAM,WAAW,GAAG,MAAM,cAAc,EAAE,CAAA;oBAC1C,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,YAAY,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC,CAAA;oBACjF,MAAM,cAAc,EAAE,CAAA;oBACtB,cAAc,GAAG,oBAAoB,CAAC,MAAM,mBAAmB,CAAC,WAAW,CAAC,EAAE,SAAS,CAAC,CAAA;oBACxF,yEAAyE;oBACzE,wEAAwE;oBACxE,iEAAiE;oBACjE,mCAAmC;oBACnC,eAAe,GAAG,SAAS,CAAA;oBAE3B,MAAM,MAAM,GAAG,YAAY,CAAC,CAAC,CAAC,WAAW,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,UAAU,EAAE,MAAM,CAAA;oBACpF,MAAM,OAAO,GAAG,cAAc,CAAC,CAAC,CAAC,CAAA;oBACjC,MAAM,gBAAgB,GACpB,kBAAkB,IAAI,OAAO;wBAC3B,CAAC,CAAC,MAAM,qBAAqB,CAAC,OAAO,EAAE,kBAAkB,CAAC;wBAC1D,CAAC,CAAC,SAAS,CAAA;oBAEf,OAAO;wBACL,QAAQ,EAAE,cAAc,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;wBAClE,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,EAAE,OAAO,EAAE,YAAY,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBAC5E,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBACjD,SAAS,EACP,MAAM,IAAI,OAAO;4BACf,CAAC,CAAC,MAAM,WAAW,CAAC;gCAChB,OAAO,EAAE,MAAM;gCACf,aAAa,EAAE,OAAO;6BACvB,CAAC;4BACJ,CAAC,CAAC,SAAS;qBAChB,CAAA;gBACH,CAAC;gBACD,KAAK,CAAC,kBAAkB,CAAC,UAAU;oBACjC,MAAM,OAAO,GAAG,MAAM,iBAAiB,CAAC,SAAS,CAAC,CAAA;oBAClD,MAAM,gBAAgB,GAAG,MAAM,qBAAqB,CAAC,OAAO,EAAE,UAAU,CAAC,CAAA;oBACzE,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAA;gBAC9E,CAAC;gBACD,KAAK,CAAC,eAAe,CAAC,UAAU;oBAC9B,MAAM,OAAO,GAAG,MAAM,iBAAiB,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;oBAC3D,MAAM,aAAa,GAAG;wBACpB,OAAO,EAAE,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;wBAC3C,MAAM,EAAE,OAAO;wBACf,eAAe,EAAE,KAAK,EAAE,OAAgB,EAAE,EAAE,CAC1C,MAAM,uBAAuB,CAAC,OAAO,EAAE,OAAO,CAAC;wBACjD,IAAI,EAAE,OAAO;qBAMd,CAAA;oBACD,IAAI,CAAC;wBACH,MAAM,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,EAAE,EAAE;4BAC1C,OAAO,EAAE,aAAsC;4BAC/C,SAAS,EAAE,UAAU,CAAC,gBAAgB;yBACvC,CAAC,CAAA;oBACJ,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBACf,IAAI,CAAC,SAAS,CAAC,kBAAkB,CAAC,KAAK,CAAC;4BAAE,MAAM,KAAK,CAAA;oBACvD,CAAC;oBACD,SAAS,CAAC,MAAM,CAAC;wBACf,SAAS,EAAE,UAAU,CAAC,gBAAgB;wBACtC,OAAO,EAAE,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;wBAC3C,OAAO,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,OAAO;wBACjC,KAAK;qBACN,CAAC,CAAA;gBACJ,CAAC;gBACD,KAAK,CAAC,mBAAmB,CAAC,UAAU;oBAClC,MAAM,OAAO,GAAG,MAAM,iBAAiB,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;oBAC3D,OAAO,MAAM,WAAW,CAAC;wBACvB,OAAO,EAAE,WAAW,CAAC,EAAE,GAAG,EAAE,UAAU,CAAC,IAAI,EAAE,CAAC;wBAC9C,aAAa,EAAE,OAAO;qBACvB,CAAC,CAAA;gBACJ,CAAC;gBACD,KAAK,CAAC,eAAe,CAAC,UAAU;oBAC9B,OAAO,MAAM,CAAC,MAAM,kBAAkB,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;gBAC5D,CAAC;gBACD,KAAK,CAAC,aAAa,CAAC,UAAU;oBAC5B,MAAM,OAAO,GAAG,MAAM,iBAAiB,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;oBAC3D,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAK3C,CAAA;oBACD,OAAO,MAAM,WAAW,CAAC;wBACvB,OAAO,EAAE,aAAa,CAAC,SAAkB,CAAC;wBAC1C,aAAa,EAAE,OAAO;qBACvB,CAAC,CAAA;gBACJ,CAAC;gBACD,KAAK,CAAC,eAAe,CAAC,UAAU;oBAC9B,OAAO,MAAM,CAAC,MAAM,kBAAkB,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;gBAC5D,CAAC;gBACD,KAAK,CAAC,mBAAmB,CAAC,UAAU;oBAClC,OAAO,MAAM,CAAC,MAAM,kBAAkB,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAA;gBAChE,CAAC;gBACD,KAAK,CAAC,UAAU;oBACd,IAAI,CAAC;wBACH,MAAM,WAAW,GAAG,MAAM,cAAc,EAAE,CAAA;wBAC1C,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,IAAI;6BAClC,GAAG,EAAE;6BACL,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;6BAC3B,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAA;wBACzB,MAAM,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;oBAChE,CAAC;4BAAS,CAAC;wBACT,KAAK,EAAE,CAAA;oBACT,CAAC;gBACH,CAAC;aACF;SACF,CAAA;IACH,CAAC,CAAC,CAAA;AACJ,CAAC"}
|
|
1
|
+
{"version":3,"file":"privy.js","sourceRoot":"","sources":["../../../src/core/adapters/privy.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/core/AccessKey.ts
CHANGED
|
@@ -251,7 +251,7 @@ export declare namespace authorize {
|
|
|
251
251
|
/** Options for {@link authorize}. */
|
|
252
252
|
type Options = {
|
|
253
253
|
/** Root account that owns this access key and signs its authorization. */
|
|
254
|
-
account: TempoAccount.Account
|
|
254
|
+
account: Pick<TempoAccount.Account, 'address' | 'sign'>
|
|
255
255
|
/** Default chain ID for the authorization when `parameters.chainId` is not set. */
|
|
256
256
|
chainId: bigint | number
|
|
257
257
|
/** Access key authorization parameters. */
|
|
@@ -80,10 +80,34 @@ describe('privy', () => {
|
|
|
80
80
|
`)
|
|
81
81
|
})
|
|
82
82
|
|
|
83
|
+
test('default: createAccount can select the active embedded wallet', async () => {
|
|
84
|
+
const { adapter, client } = setup({ createAddresses: [other] })
|
|
85
|
+
client.addWallet(other)
|
|
86
|
+
|
|
87
|
+
const result = await adapter.actions.createAccount(
|
|
88
|
+
{ digest: '0x1234', name: 'Ada' },
|
|
89
|
+
{ method: 'wallet_connect', params: undefined },
|
|
90
|
+
)
|
|
91
|
+
|
|
92
|
+
expect(client.signWith).toMatchInlineSnapshot(`
|
|
93
|
+
[
|
|
94
|
+
"0x2b5ad5c4795c026514f8317c7a215e218dccd6cf",
|
|
95
|
+
]
|
|
96
|
+
`)
|
|
97
|
+
expect(result.accounts).toMatchInlineSnapshot(`
|
|
98
|
+
[
|
|
99
|
+
{
|
|
100
|
+
"address": "0x2b5ad5c4795c026514f8317c7a215e218dccd6cf",
|
|
101
|
+
"label": "Ada",
|
|
102
|
+
},
|
|
103
|
+
]
|
|
104
|
+
`)
|
|
105
|
+
})
|
|
106
|
+
|
|
83
107
|
test('default: loadAccounts delegates login and caches embedded wallets for signing', async () => {
|
|
84
|
-
const { adapter, client } = setup()
|
|
108
|
+
const { adapter, client, store } = setup()
|
|
85
109
|
|
|
86
|
-
await
|
|
110
|
+
await connect({ adapter, store })
|
|
87
111
|
const result = await adapter.actions.signPersonalMessage(
|
|
88
112
|
{ address, data: '0x68656c6c6f' },
|
|
89
113
|
{ method: 'personal_sign', params: ['0x68656c6c6f', address] },
|
|
@@ -100,6 +124,32 @@ describe('privy', () => {
|
|
|
100
124
|
)
|
|
101
125
|
})
|
|
102
126
|
|
|
127
|
+
test('default: loadAccounts can select and order embedded wallets', async () => {
|
|
128
|
+
const { adapter, client } = setup({ loadAddresses: [other, address] })
|
|
129
|
+
client.addWallet(other)
|
|
130
|
+
|
|
131
|
+
const result = await adapter.actions.loadAccounts(
|
|
132
|
+
{ digest: '0x1234' },
|
|
133
|
+
{ method: 'wallet_connect', params: undefined },
|
|
134
|
+
)
|
|
135
|
+
|
|
136
|
+
expect(client.signWith).toMatchInlineSnapshot(`
|
|
137
|
+
[
|
|
138
|
+
"0x2b5ad5c4795c026514f8317c7a215e218dccd6cf",
|
|
139
|
+
]
|
|
140
|
+
`)
|
|
141
|
+
expect(result.accounts).toMatchInlineSnapshot(`
|
|
142
|
+
[
|
|
143
|
+
{
|
|
144
|
+
"address": "0x2b5ad5c4795c026514f8317c7a215e218dccd6cf",
|
|
145
|
+
},
|
|
146
|
+
{
|
|
147
|
+
"address": "0x7e5f4552091a69125d5dfcb7b8c2659029395bdf",
|
|
148
|
+
},
|
|
149
|
+
]
|
|
150
|
+
`)
|
|
151
|
+
})
|
|
152
|
+
|
|
103
153
|
test('default: loadAccounts can provision an external access key', async () => {
|
|
104
154
|
const { adapter, client } = setup()
|
|
105
155
|
|
|
@@ -144,6 +194,39 @@ describe('privy', () => {
|
|
|
144
194
|
`)
|
|
145
195
|
})
|
|
146
196
|
|
|
197
|
+
test('default: signs transactions with a materialized Privy account', async () => {
|
|
198
|
+
const { adapter, client, store } = setup()
|
|
199
|
+
await connect({ adapter, store })
|
|
200
|
+
|
|
201
|
+
const result = await adapter.actions.signTransaction(
|
|
202
|
+
{
|
|
203
|
+
chainId: 1,
|
|
204
|
+
from: address,
|
|
205
|
+
gas: 21_000n,
|
|
206
|
+
maxFeePerGas: 1n,
|
|
207
|
+
maxPriorityFeePerGas: 1n,
|
|
208
|
+
nonce: 0,
|
|
209
|
+
to: other,
|
|
210
|
+
value: 1n,
|
|
211
|
+
},
|
|
212
|
+
{ method: 'eth_signTransaction', params: [{ from: address }] },
|
|
213
|
+
)
|
|
214
|
+
|
|
215
|
+
expect(client.signWith).toMatchInlineSnapshot(`
|
|
216
|
+
[
|
|
217
|
+
"0x7e5f4552091a69125d5dfcb7b8c2659029395bdf",
|
|
218
|
+
]
|
|
219
|
+
`)
|
|
220
|
+
expect(client.signPayloads).toMatchInlineSnapshot(`
|
|
221
|
+
[
|
|
222
|
+
"0x62f087d34b8a023e0461eb1b9a01267ba5b8400c13d2ffdac615ccec872cc288",
|
|
223
|
+
]
|
|
224
|
+
`)
|
|
225
|
+
expect(result).toMatchInlineSnapshot(
|
|
226
|
+
`"0x76f86a010101825208d8d7942b5ad5c4795c026514f8317c7a215e218dccd6cf0180c0808080808080c0b8418b0c18077cb78666296a4c0e8149935124f70d7820ec4e4ae81de428659d6c305c098dea43ccb536e813bb1c136eab5e96611de69489be6291169b2bb2318cde1b"`,
|
|
227
|
+
)
|
|
228
|
+
})
|
|
229
|
+
|
|
147
230
|
test('default: authorizeAccessKey signs with the connected Privy account', async () => {
|
|
148
231
|
const { adapter, client, store } = setup()
|
|
149
232
|
store.setState({ accounts: [{ address }], activeAccount: 0 })
|
|
@@ -386,6 +469,51 @@ describe('privy', () => {
|
|
|
386
469
|
expect(store.getState().accounts).toMatchInlineSnapshot(`[]`)
|
|
387
470
|
})
|
|
388
471
|
|
|
472
|
+
test('behavior: failed account selection does not poison silent restore cache', async () => {
|
|
473
|
+
const { adapter, store } = setup({ loadAddresses: [other] })
|
|
474
|
+
store.setState({ accounts: [{ address: other }], activeAccount: 0 })
|
|
475
|
+
|
|
476
|
+
await expect(
|
|
477
|
+
adapter.actions.loadAccounts(undefined, { method: 'wallet_connect', params: undefined }),
|
|
478
|
+
).rejects.toThrowErrorMatchingInlineSnapshot(
|
|
479
|
+
`[Provider.UnauthorizedError: Privy callback returned address "${other}" that was not found in the user's embedded wallets.]`,
|
|
480
|
+
)
|
|
481
|
+
|
|
482
|
+
await expect(
|
|
483
|
+
adapter.actions.signPersonalMessage(
|
|
484
|
+
{ address: other, data: '0x68656c6c6f' },
|
|
485
|
+
{ method: 'personal_sign', params: ['0x68656c6c6f', other] },
|
|
486
|
+
),
|
|
487
|
+
).rejects.toMatchInlineSnapshot(
|
|
488
|
+
'[Provider.DisconnectedError: Privy session no longer matches persisted accounts.]',
|
|
489
|
+
)
|
|
490
|
+
expect(store.getState().accounts).toMatchInlineSnapshot(`[]`)
|
|
491
|
+
})
|
|
492
|
+
|
|
493
|
+
test('behavior: failed empty createAccount selection does not poison silent restore cache', async () => {
|
|
494
|
+
const { adapter, store } = setup({ createAddresses: [] })
|
|
495
|
+
store.setState({ accounts: [{ address: other }], activeAccount: 0 })
|
|
496
|
+
|
|
497
|
+
await expect(
|
|
498
|
+
adapter.actions.createAccount(
|
|
499
|
+
{ digest: '0x1234', name: 'Ada' },
|
|
500
|
+
{ method: 'wallet_connect', params: undefined },
|
|
501
|
+
),
|
|
502
|
+
).rejects.toThrowErrorMatchingInlineSnapshot(
|
|
503
|
+
`[Provider.DisconnectedError: Privy returned no wallet.]`,
|
|
504
|
+
)
|
|
505
|
+
|
|
506
|
+
await expect(
|
|
507
|
+
adapter.actions.signPersonalMessage(
|
|
508
|
+
{ address: other, data: '0x68656c6c6f' },
|
|
509
|
+
{ method: 'personal_sign', params: ['0x68656c6c6f', other] },
|
|
510
|
+
),
|
|
511
|
+
).rejects.toMatchInlineSnapshot(
|
|
512
|
+
'[Provider.DisconnectedError: Privy session no longer matches persisted accounts.]',
|
|
513
|
+
)
|
|
514
|
+
expect(store.getState().accounts).toMatchInlineSnapshot(`[]`)
|
|
515
|
+
})
|
|
516
|
+
|
|
389
517
|
test('error: silent restore rejects non-hex secp256k1_sign results', async () => {
|
|
390
518
|
const { adapter, store } = setup({ signResult: 'not-hex' })
|
|
391
519
|
store.setState({ accounts: [{ address }], activeAccount: 0 })
|
|
@@ -410,8 +538,8 @@ describe('privy', () => {
|
|
|
410
538
|
})
|
|
411
539
|
|
|
412
540
|
test('error: malformed secp256k1_sign result is rejected by signer recovery', async () => {
|
|
413
|
-
const { adapter } = setup({ signResult: '0x1234' })
|
|
414
|
-
await
|
|
541
|
+
const { adapter, store } = setup({ signResult: '0x1234' })
|
|
542
|
+
await connect({ adapter, store })
|
|
415
543
|
|
|
416
544
|
await expect(
|
|
417
545
|
adapter.actions.signPersonalMessage(
|
|
@@ -424,8 +552,8 @@ describe('privy', () => {
|
|
|
424
552
|
})
|
|
425
553
|
|
|
426
554
|
test('error: signing for an unconnected address while others are connected throws Unauthorized', async () => {
|
|
427
|
-
const { adapter } = setup()
|
|
428
|
-
await
|
|
555
|
+
const { adapter, store } = setup()
|
|
556
|
+
await connect({ adapter, store })
|
|
429
557
|
|
|
430
558
|
await expect(
|
|
431
559
|
adapter.actions.signPersonalMessage(
|
|
@@ -478,8 +606,8 @@ describe('privy', () => {
|
|
|
478
606
|
})
|
|
479
607
|
|
|
480
608
|
test('error: signature recovered from a different key is rejected as Unauthorized', async () => {
|
|
481
|
-
const { adapter } = setup({ signWithPrivateKey: privateKeyB })
|
|
482
|
-
await
|
|
609
|
+
const { adapter, store } = setup({ signWithPrivateKey: privateKeyB })
|
|
610
|
+
await connect({ adapter, store })
|
|
483
611
|
|
|
484
612
|
await expect(
|
|
485
613
|
adapter.actions.signPersonalMessage(
|
|
@@ -503,12 +631,12 @@ function setup(options: setup.Options = {}) {
|
|
|
503
631
|
: {
|
|
504
632
|
createAccount: async () => {
|
|
505
633
|
client.createCalls++
|
|
506
|
-
return
|
|
634
|
+
return options.createAddresses
|
|
507
635
|
},
|
|
508
636
|
}),
|
|
509
637
|
loadAccounts: async () => {
|
|
510
638
|
client.loadCalls++
|
|
511
|
-
return
|
|
639
|
+
return options.loadAddresses
|
|
512
640
|
},
|
|
513
641
|
})({
|
|
514
642
|
getAccount: (() => {
|
|
@@ -527,10 +655,22 @@ function setup(options: setup.Options = {}) {
|
|
|
527
655
|
return { adapter, client, store }
|
|
528
656
|
}
|
|
529
657
|
|
|
658
|
+
async function connect(options: Pick<ReturnType<typeof setup>, 'adapter' | 'store'>) {
|
|
659
|
+
const { adapter, store } = options
|
|
660
|
+
const loaded = await adapter.actions.loadAccounts(undefined, {
|
|
661
|
+
method: 'wallet_connect',
|
|
662
|
+
params: undefined,
|
|
663
|
+
})
|
|
664
|
+
store.setState({ accounts: loaded.accounts, activeAccount: 0 })
|
|
665
|
+
return loaded
|
|
666
|
+
}
|
|
667
|
+
|
|
530
668
|
declare namespace setup {
|
|
531
669
|
type Options = {
|
|
532
670
|
/** Pass `false` to omit the adapter's `createAccount` callback (tests fallback to `loadAccounts`). */
|
|
533
671
|
createAccount?: false | undefined
|
|
672
|
+
createAddresses?: readonly Address[] | undefined
|
|
673
|
+
loadAddresses?: readonly Address[] | undefined
|
|
534
674
|
/** Make the mock client's `user.get` throw, to test restore-side session errors. */
|
|
535
675
|
restoreError?: unknown
|
|
536
676
|
token?: string | null | undefined
|
|
@@ -1,14 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
Hex,
|
|
4
|
-
Provider as ox_Provider,
|
|
5
|
-
PublicKey,
|
|
6
|
-
RpcResponse,
|
|
7
|
-
Secp256k1,
|
|
8
|
-
Signature,
|
|
9
|
-
WebCryptoP256,
|
|
10
|
-
} from 'ox'
|
|
11
|
-
import { KeyAuthorization, SignatureEnvelope } from 'ox/tempo'
|
|
1
|
+
import { Address as core_Address, Hex, Provider as ox_Provider, Secp256k1, Signature } from 'ox'
|
|
2
|
+
import { SignatureEnvelope } from 'ox/tempo'
|
|
12
3
|
import { hashMessage, hashTypedData, isAddressEqual, keccak256 } from 'viem'
|
|
13
4
|
import type { Address, LocalAccount } from 'viem/accounts'
|
|
14
5
|
import { prepareTransactionRequest } from 'viem/actions'
|
|
@@ -79,7 +70,7 @@ export function privy<const client extends privy.Client>(
|
|
|
79
70
|
return Adapter.define({ icon, name, rdns }, ({ getClient, store }) => {
|
|
80
71
|
let privyClient_promise: Promise<client> | undefined
|
|
81
72
|
let restore_promise: Promise<void> | undefined
|
|
82
|
-
let walletAccounts: readonly privy.EmbeddedWallet[]
|
|
73
|
+
let walletAccounts: readonly privy.EmbeddedWallet[] | undefined
|
|
83
74
|
|
|
84
75
|
async function getPrivyClient(): Promise<client> {
|
|
85
76
|
privyClient_promise ??= (async () => {
|
|
@@ -96,9 +87,35 @@ export function privy<const client extends privy.Client>(
|
|
|
96
87
|
}
|
|
97
88
|
}
|
|
98
89
|
|
|
90
|
+
function toTempoAccount(account: privy.EmbeddedWallet) {
|
|
91
|
+
const address = core_Address.from(account.address)
|
|
92
|
+
|
|
93
|
+
async function sign(parameters: { hash: Hex.Hex }) {
|
|
94
|
+
return await signPayload({
|
|
95
|
+
payload: parameters.hash,
|
|
96
|
+
walletAccount: account,
|
|
97
|
+
})
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
return {
|
|
101
|
+
address,
|
|
102
|
+
sign,
|
|
103
|
+
signTransaction: async (transaction: unknown) =>
|
|
104
|
+
await privySignTransaction({ sign, transaction }),
|
|
105
|
+
source: 'privy',
|
|
106
|
+
type: 'local',
|
|
107
|
+
} satisfies {
|
|
108
|
+
address: Address
|
|
109
|
+
sign: (parameters: { hash: Hex.Hex }) => Promise<Hex.Hex>
|
|
110
|
+
signTransaction: (transaction: unknown) => Promise<Hex.Hex>
|
|
111
|
+
source: 'privy'
|
|
112
|
+
type: 'local'
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
|
|
99
116
|
function clear() {
|
|
100
117
|
restore_promise = undefined
|
|
101
|
-
walletAccounts =
|
|
118
|
+
walletAccounts = undefined
|
|
102
119
|
store.setState({ accessKeys: [], accounts: [], activeAccount: 0 })
|
|
103
120
|
}
|
|
104
121
|
|
|
@@ -179,7 +196,7 @@ export function privy<const client extends privy.Client>(
|
|
|
179
196
|
|
|
180
197
|
async function restore() {
|
|
181
198
|
await Store.waitForHydration(store)
|
|
182
|
-
if (walletAccounts
|
|
199
|
+
if (walletAccounts) return
|
|
183
200
|
if (restore_promise) return await restore_promise
|
|
184
201
|
|
|
185
202
|
restore_promise = (async () => {
|
|
@@ -197,7 +214,8 @@ export function privy<const client extends privy.Client>(
|
|
|
197
214
|
clear()
|
|
198
215
|
throw new ox_Provider.DisconnectedError({ message: 'Privy session expired.' })
|
|
199
216
|
})
|
|
200
|
-
walletAccounts =
|
|
217
|
+
walletAccounts = restored
|
|
218
|
+
const accounts = persisted
|
|
201
219
|
.map((account) =>
|
|
202
220
|
restored.find((walletAccount) =>
|
|
203
221
|
isAddressEqual(core_Address.from(walletAccount.address), account.address),
|
|
@@ -208,7 +226,7 @@ export function privy<const client extends privy.Client>(
|
|
|
208
226
|
// If the persisted accounts no longer exist in Privy (different user
|
|
209
227
|
// signed in, wallets removed), wipe the stale state so callers see a
|
|
210
228
|
// clean disconnected state instead of ghost accounts without providers.
|
|
211
|
-
if (
|
|
229
|
+
if (accounts.length === 0) {
|
|
212
230
|
clear()
|
|
213
231
|
throw new ox_Provider.DisconnectedError({
|
|
214
232
|
message: 'Privy session no longer matches persisted accounts.',
|
|
@@ -216,8 +234,8 @@ export function privy<const client extends privy.Client>(
|
|
|
216
234
|
}
|
|
217
235
|
|
|
218
236
|
store.setState({
|
|
219
|
-
accounts:
|
|
220
|
-
activeAccount: Math.min(state.activeAccount,
|
|
237
|
+
accounts: accounts.map((account) => toStoreAccount(account)),
|
|
238
|
+
activeAccount: Math.min(state.activeAccount, accounts.length - 1),
|
|
221
239
|
})
|
|
222
240
|
})()
|
|
223
241
|
|
|
@@ -234,24 +252,31 @@ export function privy<const client extends privy.Client>(
|
|
|
234
252
|
throw new ox_Provider.DisconnectedError({ message: 'Privy session expired.' })
|
|
235
253
|
}
|
|
236
254
|
|
|
237
|
-
async function
|
|
255
|
+
async function getTempoAccount(address: Address | undefined) {
|
|
238
256
|
await restore()
|
|
239
257
|
await requireSession()
|
|
240
258
|
|
|
241
|
-
const
|
|
259
|
+
const state = store.getState()
|
|
260
|
+
const address_ = address ?? state.accounts[state.activeAccount]?.address
|
|
242
261
|
if (!address_) throw new ox_Provider.DisconnectedError({ message: 'No accounts connected.' })
|
|
243
262
|
|
|
244
|
-
|
|
245
|
-
isAddressEqual(core_Address.from(account.address), address_),
|
|
246
|
-
)
|
|
247
|
-
if (account) return account
|
|
248
|
-
|
|
249
|
-
if (walletAccounts.length === 0)
|
|
263
|
+
if (state.accounts.length === 0)
|
|
250
264
|
throw new ox_Provider.DisconnectedError({
|
|
251
265
|
message: 'No Privy account connected.',
|
|
252
266
|
})
|
|
253
267
|
|
|
254
|
-
|
|
268
|
+
const connected = state.accounts.some((account) => isAddressEqual(account.address, address_))
|
|
269
|
+
if (!connected)
|
|
270
|
+
throw new ox_Provider.UnauthorizedError({ message: `Account "${address_}" not found.` })
|
|
271
|
+
|
|
272
|
+
const account = (walletAccounts ?? []).find((account) =>
|
|
273
|
+
isAddressEqual(core_Address.from(account.address), address_),
|
|
274
|
+
)
|
|
275
|
+
if (account) return toTempoAccount(account)
|
|
276
|
+
|
|
277
|
+
throw new ox_Provider.DisconnectedError({
|
|
278
|
+
message: 'Privy session no longer matches persisted accounts.',
|
|
279
|
+
})
|
|
255
280
|
}
|
|
256
281
|
|
|
257
282
|
async function signPayload(parameters: {
|
|
@@ -303,110 +328,91 @@ export function privy<const client extends privy.Client>(
|
|
|
303
328
|
return signature
|
|
304
329
|
}
|
|
305
330
|
|
|
306
|
-
/**
|
|
307
|
-
* Builds, signs, and saves an access key authorization for the given Privy
|
|
308
|
-
* wallet. Generates a local P256 key pair when no external key is provided.
|
|
309
|
-
*/
|
|
310
|
-
async function authorizeAccessKeyFor(
|
|
311
|
-
account: privy.EmbeddedWallet,
|
|
312
|
-
options: Adapter.authorizeAccessKey.Parameters,
|
|
313
|
-
) {
|
|
314
|
-
const { expiry, limits, scopes } = options
|
|
315
|
-
const chainId = options.chainId ?? getClient().chain.id
|
|
316
|
-
|
|
317
|
-
const prepared = await (async () => {
|
|
318
|
-
if (options.publicKey || options.address) {
|
|
319
|
-
const address =
|
|
320
|
-
options.address ?? core_Address.fromPublicKey(PublicKey.from(options.publicKey!))
|
|
321
|
-
return {
|
|
322
|
-
keyAuthorization: KeyAuthorization.from({
|
|
323
|
-
address,
|
|
324
|
-
chainId: BigInt(chainId),
|
|
325
|
-
expiry,
|
|
326
|
-
limits,
|
|
327
|
-
scopes,
|
|
328
|
-
type: options.keyType ?? 'secp256k1',
|
|
329
|
-
}),
|
|
330
|
-
}
|
|
331
|
-
}
|
|
332
|
-
|
|
333
|
-
if (options.keyType && options.keyType !== 'p256')
|
|
334
|
-
throw new RpcResponse.InvalidParamsError({
|
|
335
|
-
message: `\`keyType: "${options.keyType}"\` requires externally generated key material; provide \`publicKey\` or \`address\`.`,
|
|
336
|
-
})
|
|
337
|
-
|
|
338
|
-
const keyPair = await WebCryptoP256.createKeyPair()
|
|
339
|
-
const address = core_Address.fromPublicKey(PublicKey.from(keyPair.publicKey))
|
|
340
|
-
return {
|
|
341
|
-
keyAuthorization: KeyAuthorization.from({
|
|
342
|
-
address,
|
|
343
|
-
chainId: BigInt(chainId),
|
|
344
|
-
expiry,
|
|
345
|
-
limits,
|
|
346
|
-
scopes,
|
|
347
|
-
type: 'p256',
|
|
348
|
-
}),
|
|
349
|
-
keyPair,
|
|
350
|
-
}
|
|
351
|
-
})()
|
|
352
|
-
|
|
353
|
-
const signature = await signPayload({
|
|
354
|
-
payload: KeyAuthorization.getSignPayload(prepared.keyAuthorization),
|
|
355
|
-
walletAccount: account,
|
|
356
|
-
})
|
|
357
|
-
const keyAuthorization = KeyAuthorization.from(prepared.keyAuthorization, {
|
|
358
|
-
signature: SignatureEnvelope.from(signature),
|
|
359
|
-
})
|
|
360
|
-
|
|
361
|
-
AccessKey.add({
|
|
362
|
-
account: core_Address.from(account.address),
|
|
363
|
-
authorization: keyAuthorization,
|
|
364
|
-
...(prepared.keyPair ? { keyPair: prepared.keyPair } : {}),
|
|
365
|
-
store,
|
|
366
|
-
})
|
|
367
|
-
|
|
368
|
-
return KeyAuthorization.toRpc(keyAuthorization)
|
|
369
|
-
}
|
|
370
|
-
|
|
371
331
|
async function signTransaction(parameters: Adapter.signTransaction.Parameters) {
|
|
372
|
-
const account = await
|
|
332
|
+
const account = await getTempoAccount(parameters.from)
|
|
373
333
|
const { feePayer, ...rest } = parameters
|
|
374
334
|
const viemClient = getClient({
|
|
375
335
|
chainId: parameters.chainId,
|
|
376
336
|
feePayer: feePayer === true ? undefined : feePayer,
|
|
377
337
|
})
|
|
378
338
|
const prepared = await prepareTransactionRequest(viemClient, {
|
|
379
|
-
account:
|
|
339
|
+
account: account.address,
|
|
380
340
|
...rest,
|
|
381
341
|
...(feePayer ? { feePayer: true } : {}),
|
|
382
342
|
type: 'tempo',
|
|
383
343
|
} as never)
|
|
384
|
-
return await
|
|
344
|
+
return await account.signTransaction(prepared)
|
|
385
345
|
}
|
|
386
346
|
|
|
387
|
-
async function
|
|
347
|
+
async function privySignTransaction(parameters: {
|
|
348
|
+
sign: (parameters: { hash: Hex.Hex }) => Promise<Hex.Hex>
|
|
349
|
+
transaction: unknown
|
|
350
|
+
}) {
|
|
351
|
+
const { sign, transaction } = parameters
|
|
388
352
|
const presign = (() => {
|
|
389
353
|
if (
|
|
390
|
-
|
|
391
|
-
typeof
|
|
392
|
-
'feePayerSignature' in
|
|
393
|
-
|
|
354
|
+
transaction &&
|
|
355
|
+
typeof transaction === 'object' &&
|
|
356
|
+
'feePayerSignature' in transaction &&
|
|
357
|
+
transaction.feePayerSignature
|
|
394
358
|
)
|
|
395
|
-
return { ...
|
|
396
|
-
return
|
|
359
|
+
return { ...transaction, feePayerSignature: null }
|
|
360
|
+
return transaction
|
|
397
361
|
})()
|
|
398
362
|
const unsignedTransaction = await TempoTransaction.serialize(presign as never)
|
|
399
363
|
|
|
400
|
-
const signature = await
|
|
401
|
-
payload: keccak256(unsignedTransaction),
|
|
402
|
-
walletAccount: account,
|
|
403
|
-
})
|
|
364
|
+
const signature = await sign({ hash: keccak256(unsignedTransaction) })
|
|
404
365
|
return await TempoTransaction.serialize(
|
|
405
|
-
|
|
366
|
+
transaction as never,
|
|
406
367
|
SignatureEnvelope.from(Signature.fromHex(signature)) as never,
|
|
407
368
|
)
|
|
408
369
|
}
|
|
409
370
|
|
|
371
|
+
async function connectAccounts(parameters: {
|
|
372
|
+
addresses: privy.AccountSelection
|
|
373
|
+
authorizeAccessKey?: Adapter.authorizeAccessKey.Parameters | undefined
|
|
374
|
+
digest?: Hex.Hex | undefined
|
|
375
|
+
label?: string | undefined
|
|
376
|
+
noAccountsMessage?: string | undefined
|
|
377
|
+
personalSign?: { message: string } | undefined
|
|
378
|
+
privyClient: privy.Client
|
|
379
|
+
}) {
|
|
380
|
+
const { addresses, authorizeAccessKey, label, personalSign, privyClient } = parameters
|
|
381
|
+
await requireSession()
|
|
382
|
+
const wallets = await loadEthereumWallets(privyClient)
|
|
383
|
+
const selected = selectWalletAccounts(wallets, addresses)
|
|
384
|
+
|
|
385
|
+
const account = selected[0] ? toTempoAccount(selected[0]) : undefined
|
|
386
|
+
if (!account && parameters.noAccountsMessage)
|
|
387
|
+
throw new ox_Provider.DisconnectedError({
|
|
388
|
+
message: parameters.noAccountsMessage,
|
|
389
|
+
})
|
|
390
|
+
|
|
391
|
+
const digest = personalSign ? hashMessage(personalSign.message) : parameters.digest
|
|
392
|
+
const keyAuthorization =
|
|
393
|
+
authorizeAccessKey && account
|
|
394
|
+
? await AccessKey.authorize({
|
|
395
|
+
account,
|
|
396
|
+
chainId: getClient().chain.id,
|
|
397
|
+
parameters: authorizeAccessKey,
|
|
398
|
+
store,
|
|
399
|
+
})
|
|
400
|
+
: undefined
|
|
401
|
+
|
|
402
|
+
const signature = digest && account ? await account.sign({ hash: digest }) : undefined
|
|
403
|
+
walletAccounts = wallets
|
|
404
|
+
restore_promise = undefined
|
|
405
|
+
|
|
406
|
+
return {
|
|
407
|
+
accounts: selected.map((account, index) =>
|
|
408
|
+
toStoreAccount(account, index === 0 ? label : undefined),
|
|
409
|
+
),
|
|
410
|
+
...(personalSign ? { personalSign: { message: personalSign.message } } : {}),
|
|
411
|
+
...(keyAuthorization ? { keyAuthorization } : {}),
|
|
412
|
+
signature,
|
|
413
|
+
}
|
|
414
|
+
}
|
|
415
|
+
|
|
410
416
|
async function prepareTransaction(parameters: Adapter.signTransaction.Parameters) {
|
|
411
417
|
const viemClient = getClient({
|
|
412
418
|
chainId: parameters.chainId,
|
|
@@ -530,38 +536,15 @@ export function privy<const client extends privy.Client>(
|
|
|
530
536
|
...(personalSign ? { personalSign } : {}),
|
|
531
537
|
},
|
|
532
538
|
})
|
|
533
|
-
await
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
|
|
537
|
-
|
|
538
|
-
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
if (!account)
|
|
543
|
-
throw new ox_Provider.DisconnectedError({
|
|
544
|
-
message: 'Privy returned no wallet.',
|
|
545
|
-
})
|
|
546
|
-
|
|
547
|
-
const digest = personalSign ? hashMessage(personalSign.message) : parameters.digest
|
|
548
|
-
const keyAuthorization = authorizeAccessKey
|
|
549
|
-
? await authorizeAccessKeyFor(account, authorizeAccessKey)
|
|
550
|
-
: undefined
|
|
551
|
-
|
|
552
|
-
return {
|
|
553
|
-
accounts: walletAccounts.map((wallet, index) =>
|
|
554
|
-
toStoreAccount(wallet, index === 0 ? parameters.name : undefined),
|
|
555
|
-
),
|
|
556
|
-
...(personalSign ? { personalSign: { message: personalSign.message } } : {}),
|
|
557
|
-
...(keyAuthorization ? { keyAuthorization } : {}),
|
|
558
|
-
signature: digest
|
|
559
|
-
? await signPayload({
|
|
560
|
-
payload: digest,
|
|
561
|
-
walletAccount: account,
|
|
562
|
-
})
|
|
563
|
-
: undefined,
|
|
564
|
-
}
|
|
539
|
+
return await connectAccounts({
|
|
540
|
+
addresses,
|
|
541
|
+
...(authorizeAccessKey ? { authorizeAccessKey } : {}),
|
|
542
|
+
...(parameters.digest ? { digest: parameters.digest } : {}),
|
|
543
|
+
label: parameters.name,
|
|
544
|
+
...(personalSign ? { personalSign } : {}),
|
|
545
|
+
privyClient,
|
|
546
|
+
noAccountsMessage: 'Privy returned no wallet.',
|
|
547
|
+
})
|
|
565
548
|
},
|
|
566
549
|
async loadAccounts(parameters) {
|
|
567
550
|
const { authorizeAccessKey, personalSign } =
|
|
@@ -574,56 +557,29 @@ export function privy<const client extends privy.Client>(
|
|
|
574
557
|
|
|
575
558
|
const privyClient = await getPrivyClient()
|
|
576
559
|
const addresses = await options.loadAccounts({ client: privyClient, parameters })
|
|
577
|
-
await
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
|
|
583
|
-
|
|
584
|
-
|
|
585
|
-
const digest = personalSign ? hashMessage(personalSign.message) : parameters?.digest
|
|
586
|
-
const account = walletAccounts[0]
|
|
587
|
-
const keyAuthorization =
|
|
588
|
-
authorizeAccessKey && account
|
|
589
|
-
? await authorizeAccessKeyFor(account, authorizeAccessKey)
|
|
590
|
-
: undefined
|
|
591
|
-
|
|
592
|
-
return {
|
|
593
|
-
accounts: walletAccounts.map((account) => toStoreAccount(account)),
|
|
594
|
-
...(personalSign ? { personalSign: { message: personalSign.message } } : {}),
|
|
595
|
-
...(keyAuthorization ? { keyAuthorization } : {}),
|
|
596
|
-
signature:
|
|
597
|
-
digest && account
|
|
598
|
-
? await signPayload({
|
|
599
|
-
payload: digest,
|
|
600
|
-
walletAccount: account,
|
|
601
|
-
})
|
|
602
|
-
: undefined,
|
|
603
|
-
}
|
|
560
|
+
return await connectAccounts({
|
|
561
|
+
addresses,
|
|
562
|
+
...(authorizeAccessKey ? { authorizeAccessKey } : {}),
|
|
563
|
+
...(parameters?.digest ? { digest: parameters.digest } : {}),
|
|
564
|
+
...(personalSign ? { personalSign } : {}),
|
|
565
|
+
privyClient,
|
|
566
|
+
})
|
|
604
567
|
},
|
|
605
568
|
async authorizeAccessKey(parameters) {
|
|
606
|
-
const account = await
|
|
607
|
-
const keyAuthorization = await
|
|
608
|
-
|
|
569
|
+
const account = await getTempoAccount(undefined)
|
|
570
|
+
const keyAuthorization = await AccessKey.authorize({
|
|
571
|
+
account,
|
|
572
|
+
chainId: getClient().chain.id,
|
|
573
|
+
parameters,
|
|
574
|
+
store,
|
|
575
|
+
})
|
|
576
|
+
return { keyAuthorization, rootAddress: account.address }
|
|
609
577
|
},
|
|
610
578
|
async revokeAccessKey(parameters) {
|
|
611
|
-
const account = await
|
|
612
|
-
const account_tempo = {
|
|
613
|
-
address: core_Address.from(account.address),
|
|
614
|
-
source: 'privy',
|
|
615
|
-
signTransaction: async (request: unknown) =>
|
|
616
|
-
await signPreparedTransaction(account, request),
|
|
617
|
-
type: 'local',
|
|
618
|
-
} satisfies {
|
|
619
|
-
address: Address
|
|
620
|
-
signTransaction: (request: unknown) => Promise<Hex.Hex>
|
|
621
|
-
source: 'privy'
|
|
622
|
-
type: 'local'
|
|
623
|
-
}
|
|
579
|
+
const account = await getTempoAccount(parameters.address)
|
|
624
580
|
try {
|
|
625
581
|
await Actions.accessKey.revoke(getClient(), {
|
|
626
|
-
account:
|
|
582
|
+
account: account as LocalAccount<'privy'>,
|
|
627
583
|
accessKey: parameters.accessKeyAddress,
|
|
628
584
|
})
|
|
629
585
|
} catch (error) {
|
|
@@ -631,32 +587,32 @@ export function privy<const client extends privy.Client>(
|
|
|
631
587
|
}
|
|
632
588
|
AccessKey.remove({
|
|
633
589
|
accessKey: parameters.accessKeyAddress,
|
|
634
|
-
account:
|
|
590
|
+
account: account.address,
|
|
635
591
|
chainId: store.getState().chainId,
|
|
636
592
|
store,
|
|
637
593
|
})
|
|
638
594
|
},
|
|
639
595
|
async signPersonalMessage(parameters) {
|
|
640
|
-
|
|
641
|
-
|
|
642
|
-
|
|
643
|
-
|
|
596
|
+
return await (
|
|
597
|
+
await getTempoAccount(parameters.address)
|
|
598
|
+
).sign({
|
|
599
|
+
hash: hashMessage({ raw: parameters.data }),
|
|
644
600
|
})
|
|
645
601
|
},
|
|
646
602
|
async signTransaction(parameters) {
|
|
647
603
|
return await (await prepareTransaction(parameters)).sign()
|
|
648
604
|
},
|
|
649
605
|
async signTypedData(parameters) {
|
|
650
|
-
const account = await accountForSigning(parameters.address)
|
|
651
606
|
const typedData = JSON.parse(parameters.data) as {
|
|
652
607
|
domain: Record<string, unknown>
|
|
653
608
|
message: Record<string, unknown>
|
|
654
609
|
primaryType: string
|
|
655
610
|
types: Record<string, unknown>
|
|
656
611
|
}
|
|
657
|
-
return await
|
|
658
|
-
|
|
659
|
-
|
|
612
|
+
return await (
|
|
613
|
+
await getTempoAccount(parameters.address)
|
|
614
|
+
).sign({
|
|
615
|
+
hash: hashTypedData(typedData as never),
|
|
660
616
|
})
|
|
661
617
|
},
|
|
662
618
|
async sendTransaction(parameters) {
|