@safe-global/protocol-kit 4.1.0-alpha.1 → 4.1.0-alpha.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/dist/src/Safe.d.ts +9 -11
- package/dist/src/Safe.js +35 -51
- package/dist/src/Safe.js.map +1 -1
- package/dist/src/SafeProvider.d.ts +4 -3
- package/dist/src/SafeProvider.js +24 -7
- package/dist/src/SafeProvider.js.map +1 -1
- package/dist/src/contracts/Safe/SafeBaseContract.js +4 -1
- package/dist/src/contracts/Safe/SafeBaseContract.js.map +1 -1
- package/dist/src/contracts/SafeWebAuthnSharedSigner/SafeWebAuthnSharedSignerBaseContract.d.ts +37 -0
- package/dist/src/contracts/SafeWebAuthnSharedSigner/SafeWebAuthnSharedSignerBaseContract.js +38 -0
- package/dist/src/contracts/SafeWebAuthnSharedSigner/SafeWebAuthnSharedSignerBaseContract.js.map +1 -0
- package/dist/src/contracts/SafeWebAuthnSharedSigner/v1.4.1/SafeWebAuthnSharedSignerContract_v1_4_1.d.ts +41 -0
- package/dist/src/contracts/SafeWebAuthnSharedSigner/v1.4.1/SafeWebAuthnSharedSignerContract_v1_4_1.js +59 -0
- package/dist/src/contracts/SafeWebAuthnSharedSigner/v1.4.1/SafeWebAuthnSharedSignerContract_v1_4_1.js.map +1 -0
- package/dist/src/contracts/SafeWebAuthnSignerFactory/SafeWebAuthnSignerFactoryBaseContract.d.ts +1 -1
- package/dist/src/contracts/SafeWebAuthnSignerFactory/SafeWebAuthnSignerFactoryBaseContract.js +1 -1
- package/dist/src/contracts/config.d.ts +1 -0
- package/dist/src/contracts/config.js +39 -7
- package/dist/src/contracts/config.js.map +1 -1
- package/dist/src/contracts/contractInstances.d.ts +2 -0
- package/dist/src/contracts/contractInstances.js +15 -1
- package/dist/src/contracts/contractInstances.js.map +1 -1
- package/dist/src/contracts/safeDeploymentContracts.d.ts +2 -1
- package/dist/src/contracts/safeDeploymentContracts.js +14 -1
- package/dist/src/contracts/safeDeploymentContracts.js.map +1 -1
- package/dist/src/index.d.ts +6 -3
- package/dist/src/index.js +10 -1
- package/dist/src/index.js.map +1 -1
- package/dist/src/types/contracts.d.ts +6 -0
- package/dist/src/types/safeProvider.d.ts +1 -1
- package/dist/src/utils/eip-3770/config.js +49 -7
- package/dist/src/utils/eip-3770/config.js.map +1 -1
- package/dist/src/utils/passkeys/PasskeySigner.d.ts +17 -13
- package/dist/src/utils/passkeys/PasskeySigner.js +29 -31
- package/dist/src/utils/passkeys/PasskeySigner.js.map +1 -1
- package/dist/src/utils/passkeys/createPasskeyDeploymentTransaction.d.ts +15 -0
- package/dist/src/utils/passkeys/createPasskeyDeploymentTransaction.js +35 -0
- package/dist/src/utils/passkeys/createPasskeyDeploymentTransaction.js.map +1 -0
- package/dist/src/utils/passkeys/extractPasskeyData.d.ts +1 -0
- package/dist/src/utils/passkeys/extractPasskeyData.js +16 -1
- package/dist/src/utils/passkeys/extractPasskeyData.js.map +1 -1
- package/dist/src/utils/passkeys/getPasskeyOwnerAddress.d.ts +11 -0
- package/dist/src/utils/passkeys/getPasskeyOwnerAddress.js +24 -0
- package/dist/src/utils/passkeys/getPasskeyOwnerAddress.js.map +1 -0
- package/dist/src/utils/passkeys/index.d.ts +1 -0
- package/dist/src/utils/passkeys/index.js +1 -0
- package/dist/src/utils/passkeys/index.js.map +1 -1
- package/dist/src/utils/passkeys/isSharedSigner.d.ts +8 -0
- package/dist/src/utils/passkeys/isSharedSigner.js +25 -0
- package/dist/src/utils/passkeys/isSharedSigner.js.map +1 -0
- package/dist/src/utils/safeVersions.d.ts +2 -1
- package/dist/src/utils/safeVersions.js +3 -1
- package/dist/src/utils/safeVersions.js.map +1 -1
- package/dist/src/utils/signatures/utils.js +1 -3
- package/dist/src/utils/signatures/utils.js.map +1 -1
- package/dist/src/utils/transactions/gas.js +1 -1
- package/dist/src/utils/transactions/gas.js.map +1 -1
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +12 -9
|
@@ -43,9 +43,10 @@ exports.networks = [
|
|
|
43
43
|
{ chainId: 122n, shortName: 'fuse' },
|
|
44
44
|
{ chainId: 123n, shortName: 'spark' },
|
|
45
45
|
{ chainId: 137n, shortName: 'matic' },
|
|
46
|
-
{ chainId: 148n, shortName: 'shimmerevm
|
|
46
|
+
{ chainId: 148n, shortName: 'shimmerevm' },
|
|
47
47
|
{ chainId: 155n, shortName: 'tenet-testnet' },
|
|
48
48
|
{ chainId: 169n, shortName: 'manta' },
|
|
49
|
+
{ chainId: 179n, shortName: 'abey' },
|
|
49
50
|
{ chainId: 195n, shortName: 'tokb' },
|
|
50
51
|
{ chainId: 196n, shortName: 'okb' },
|
|
51
52
|
{ chainId: 204n, shortName: 'opbnb' },
|
|
@@ -64,7 +65,9 @@ exports.networks = [
|
|
|
64
65
|
{ chainId: 338n, shortName: 'tcro' },
|
|
65
66
|
{ chainId: 369n, shortName: 'pls' },
|
|
66
67
|
{ chainId: 420n, shortName: 'ogor' },
|
|
67
|
-
{ chainId: 424n, shortName: '
|
|
68
|
+
{ chainId: 424n, shortName: 'PGN' },
|
|
69
|
+
{ chainId: 480n, shortName: 'wc' },
|
|
70
|
+
{ chainId: 530n, shortName: 'FxCore' },
|
|
68
71
|
{ chainId: 570n, shortName: 'sys-rollux' },
|
|
69
72
|
{ chainId: 588n, shortName: 'metis-stardust' },
|
|
70
73
|
{ chainId: 592n, shortName: 'astr' },
|
|
@@ -91,8 +94,11 @@ exports.networks = [
|
|
|
91
94
|
{ chainId: 1285n, shortName: 'mriver' },
|
|
92
95
|
{ chainId: 1287n, shortName: 'mbase' },
|
|
93
96
|
{ chainId: 1294n, shortName: 'bobabeam' },
|
|
97
|
+
{ chainId: 1329n, shortName: 'sei' },
|
|
98
|
+
{ chainId: 1337n, shortName: 'geth' },
|
|
94
99
|
{ chainId: 1442n, shortName: 'testnet-zkEVM-mango' },
|
|
95
100
|
{ chainId: 1559n, shortName: 'tenet' },
|
|
101
|
+
{ chainId: 1625n, shortName: 'gravity' },
|
|
96
102
|
{ chainId: 1663n, shortName: 'Gobi' },
|
|
97
103
|
{ chainId: 1729n, shortName: 'reya' },
|
|
98
104
|
{ chainId: 1807n, shortName: 'rana' },
|
|
@@ -107,11 +113,13 @@ exports.networks = [
|
|
|
107
113
|
{ chainId: 2019n, shortName: 'pmint_test' },
|
|
108
114
|
{ chainId: 2020n, shortName: 'pmint' },
|
|
109
115
|
{ chainId: 2021n, shortName: 'edg' },
|
|
116
|
+
{ chainId: 2039n, shortName: 'aleph' },
|
|
110
117
|
{ chainId: 2221n, shortName: 'tkava' },
|
|
111
118
|
{ chainId: 2222n, shortName: 'kava' },
|
|
112
119
|
{ chainId: 2331n, shortName: 'rss3-testnet' },
|
|
113
120
|
{ chainId: 2358n, shortName: 'kroma-sepolia' },
|
|
114
121
|
{ chainId: 2810n, shortName: 'hmorph' },
|
|
122
|
+
{ chainId: 3338n, shortName: 'PEAQ' },
|
|
115
123
|
{ chainId: 3636n, shortName: 'BTNX' },
|
|
116
124
|
{ chainId: 3737n, shortName: 'csb' },
|
|
117
125
|
{ chainId: 3776n, shortName: 'astrzk' },
|
|
@@ -131,16 +139,20 @@ exports.networks = [
|
|
|
131
139
|
{ chainId: 5700n, shortName: 'tsys' },
|
|
132
140
|
{ chainId: 6001n, shortName: 'bouncebit-mainnet' },
|
|
133
141
|
{ chainId: 6102n, shortName: 'cascadia' },
|
|
142
|
+
{ chainId: 6321n, shortName: 'eaura' },
|
|
143
|
+
{ chainId: 6322n, shortName: 'aura' },
|
|
134
144
|
{ chainId: 7000n, shortName: 'zetachain-mainnet' },
|
|
135
|
-
{ chainId: 7001n, shortName: 'zetachain-
|
|
145
|
+
{ chainId: 7001n, shortName: 'zetachain-testnet' },
|
|
136
146
|
{ chainId: 7171n, shortName: 'bitrock' },
|
|
137
147
|
{ chainId: 7332n, shortName: 'EON' },
|
|
138
148
|
{ chainId: 7341n, shortName: 'shyft' },
|
|
149
|
+
{ chainId: 7560n, shortName: 'cyeth' },
|
|
139
150
|
{ chainId: 7700n, shortName: 'canto' },
|
|
140
151
|
{ chainId: 7771n, shortName: 'tbitrock' },
|
|
141
152
|
{ chainId: 8192n, shortName: 'tqf' },
|
|
142
153
|
{ chainId: 8194n, shortName: 'ttqf' },
|
|
143
154
|
{ chainId: 8217n, shortName: 'cypress' },
|
|
155
|
+
{ chainId: 8329n, shortName: 'lrz' },
|
|
144
156
|
{ chainId: 8453n, shortName: 'base' },
|
|
145
157
|
{ chainId: 8822n, shortName: 'iotaevm' },
|
|
146
158
|
{ chainId: 9000n, shortName: 'evmos-testnet' },
|
|
@@ -152,10 +164,13 @@ exports.networks = [
|
|
|
152
164
|
{ chainId: 10200n, shortName: 'chi' },
|
|
153
165
|
{ chainId: 10242n, shortName: 'aa' },
|
|
154
166
|
{ chainId: 10243n, shortName: 'aat' },
|
|
167
|
+
{ chainId: 10849n, shortName: 'lamina1' },
|
|
155
168
|
{ chainId: 11111n, shortName: 'WAGMI' },
|
|
156
169
|
{ chainId: 11235n, shortName: 'islm' },
|
|
157
170
|
{ chainId: 11437n, shortName: 'shyftt' },
|
|
158
171
|
{ chainId: 11891n, shortName: 'Arianee' },
|
|
172
|
+
{ chainId: 12324n, shortName: 'l3x' },
|
|
173
|
+
{ chainId: 12325n, shortName: 'l3x-testnet' },
|
|
159
174
|
{ chainId: 12357n, shortName: 'rei-testnet' },
|
|
160
175
|
{ chainId: 12553n, shortName: 'rss3' },
|
|
161
176
|
{ chainId: 13337n, shortName: 'beam-testnet' },
|
|
@@ -164,38 +179,54 @@ exports.networks = [
|
|
|
164
179
|
{ chainId: 17000n, shortName: 'holesky' },
|
|
165
180
|
{ chainId: 17069n, shortName: 'garnet' },
|
|
166
181
|
{ chainId: 17172n, shortName: 'eclipse' },
|
|
167
|
-
{ chainId: 18231n, shortName: 'unreal' },
|
|
182
|
+
{ chainId: 18231n, shortName: 'unreal-old' },
|
|
183
|
+
{ chainId: 18233n, shortName: 'unreal' },
|
|
184
|
+
{ chainId: 22776n, shortName: 'mapo' },
|
|
168
185
|
{ chainId: 23294n, shortName: 'sapphire' },
|
|
169
186
|
{ chainId: 23295n, shortName: 'sapphire-testnet' },
|
|
170
187
|
{ chainId: 28979n, shortName: 'kimbonet-testnet' },
|
|
188
|
+
{ chainId: 32769n, shortName: 'zil' },
|
|
189
|
+
{ chainId: 33101n, shortName: 'zil-testnet' },
|
|
171
190
|
{ chainId: 34443n, shortName: 'mode' },
|
|
172
191
|
{ chainId: 42161n, shortName: 'arb1' },
|
|
173
192
|
{ chainId: 42170n, shortName: 'arb-nova' },
|
|
174
193
|
{ chainId: 42220n, shortName: 'celo' },
|
|
194
|
+
{ chainId: 42793n, shortName: 'etlk' },
|
|
175
195
|
{ chainId: 43113n, shortName: 'fuji' },
|
|
176
196
|
{ chainId: 43114n, shortName: 'avax' },
|
|
177
197
|
{ chainId: 43288n, shortName: 'boba-avax' },
|
|
178
198
|
{ chainId: 44787n, shortName: 'alfa' },
|
|
179
199
|
{ chainId: 45000n, shortName: 'autobahnnetwork' },
|
|
200
|
+
{ chainId: 47763n, shortName: 'neox-mainnet' },
|
|
180
201
|
{ chainId: 47805n, shortName: 'rei' },
|
|
202
|
+
{ chainId: 48899n, shortName: 'zircuit-testnet' },
|
|
203
|
+
{ chainId: 53457n, shortName: 'dodochain' },
|
|
181
204
|
{ chainId: 54211n, shortName: 'islmt' },
|
|
182
205
|
{ chainId: 56288n, shortName: 'boba-bnb' },
|
|
183
206
|
{ chainId: 57000n, shortName: 'tsys-rollux' },
|
|
184
|
-
{ chainId: 58008n, shortName: '
|
|
185
|
-
{ chainId: 59140n, shortName: 'linea-
|
|
207
|
+
{ chainId: 58008n, shortName: 'sepPGN' },
|
|
208
|
+
{ chainId: 59140n, shortName: 'linea-goerli' },
|
|
209
|
+
{ chainId: 59141n, shortName: 'linea-sepolia' },
|
|
186
210
|
{ chainId: 59144n, shortName: 'linea' },
|
|
187
211
|
{ chainId: 71401n, shortName: 'gw-testnet-v1' },
|
|
188
212
|
{ chainId: 71402n, shortName: 'gw-mainnet-v1' },
|
|
189
213
|
{ chainId: 73799n, shortName: 'vt' },
|
|
190
214
|
{ chainId: 80001n, shortName: 'maticmum' },
|
|
191
215
|
{ chainId: 80002n, shortName: 'polygonamoy' },
|
|
216
|
+
{ chainId: 80084n, shortName: 'berachainbArtio' },
|
|
192
217
|
{ chainId: 80085n, shortName: 'berachainArtio' },
|
|
193
218
|
{ chainId: 81457n, shortName: 'blastmainnet' },
|
|
219
|
+
{ chainId: 83291n, shortName: 'lrz-testnet' },
|
|
194
220
|
{ chainId: 84531n, shortName: 'basegor' },
|
|
195
221
|
{ chainId: 84532n, shortName: 'basesep' },
|
|
222
|
+
{ chainId: 90001n, shortName: 'dhobyghaut' },
|
|
196
223
|
{ chainId: 103454n, shortName: 'masatest' },
|
|
197
224
|
{ chainId: 105105n, shortName: 'stratis' },
|
|
225
|
+
{ chainId: 111188n, shortName: 're-al' },
|
|
226
|
+
{ chainId: 128123n, shortName: 'etlt' },
|
|
227
|
+
{ chainId: 167000n, shortName: 'tko-mainnet' },
|
|
198
228
|
{ chainId: 167008n, shortName: 'tko-katla' },
|
|
229
|
+
{ chainId: 167009n, shortName: 'tko-hekla' },
|
|
199
230
|
{ chainId: 200101n, shortName: 'milktada' },
|
|
200
231
|
{ chainId: 200202n, shortName: 'milktalgo' },
|
|
201
232
|
{ chainId: 200810n, shortName: 'btrt' },
|
|
@@ -205,24 +236,34 @@ exports.networks = [
|
|
|
205
236
|
{ chainId: 421613n, shortName: 'arb-goerli' },
|
|
206
237
|
{ chainId: 421614n, shortName: 'arb-sep' },
|
|
207
238
|
{ chainId: 444444n, shortName: 'syndr' },
|
|
239
|
+
{ chainId: 490000n, shortName: 'ATN' },
|
|
208
240
|
{ chainId: 534351n, shortName: 'scr-sepolia' },
|
|
209
241
|
{ chainId: 534352n, shortName: 'scr' },
|
|
210
242
|
{ chainId: 534353n, shortName: 'scr-alpha' },
|
|
211
243
|
{ chainId: 555666n, shortName: 'eclipset' },
|
|
212
244
|
{ chainId: 622277n, shortName: 'rth' },
|
|
245
|
+
{ chainId: 656476n, shortName: 'open-campus-codex' },
|
|
246
|
+
{ chainId: 660279n, shortName: 'xai' },
|
|
213
247
|
{ chainId: 713715n, shortName: 'sei-devnet' },
|
|
248
|
+
{ chainId: 764984n, shortName: 'lamina1test' },
|
|
249
|
+
{ chainId: 810180n, shortName: 'zklink-nova' },
|
|
250
|
+
{ chainId: 978657n, shortName: 'treasure-ruby' },
|
|
251
|
+
{ chainId: 6038361n, shortName: 'azkyt' },
|
|
214
252
|
{ chainId: 7225878n, shortName: 'saakuru' },
|
|
215
253
|
{ chainId: 7777777n, shortName: 'zora' },
|
|
216
|
-
{ chainId: 6038361n, shortName: 'azkyt' },
|
|
217
254
|
{ chainId: 11155111n, shortName: 'sep' },
|
|
218
255
|
{ chainId: 11155420n, shortName: 'opsep' },
|
|
256
|
+
{ chainId: 12227332n, shortName: 'neox-t4' },
|
|
219
257
|
{ chainId: 94204209n, shortName: 'polygon-blackberry' },
|
|
258
|
+
{ chainId: 111557560n, shortName: 'cysep' },
|
|
220
259
|
{ chainId: 123420111n, shortName: 'opcelestia-raspberry' },
|
|
260
|
+
{ chainId: 161221135n, shortName: 'plume-testnet' },
|
|
221
261
|
{ chainId: 168587773n, shortName: 'blastsepolia' },
|
|
222
262
|
{ chainId: 222000222n, shortName: 'kanazawa' },
|
|
223
263
|
{ chainId: 245022926n, shortName: 'neonevm-devnet' },
|
|
224
264
|
{ chainId: 245022934n, shortName: 'neonevm-mainnet' },
|
|
225
265
|
{ chainId: 333000333n, shortName: 'meld' },
|
|
266
|
+
{ chainId: 476462898n, shortName: 'Skopje' },
|
|
226
267
|
{ chainId: 666666666n, shortName: 'degen-chain' },
|
|
227
268
|
{ chainId: 999999999n, shortName: 'zsep' },
|
|
228
269
|
{ chainId: 1313161554n, shortName: 'aurora' },
|
|
@@ -231,6 +272,7 @@ exports.networks = [
|
|
|
231
272
|
{ chainId: 1666700000n, shortName: 'hmy-b-s0' },
|
|
232
273
|
{ chainId: 11297108099n, shortName: 'tpalm' },
|
|
233
274
|
{ chainId: 11297108109n, shortName: 'palm' },
|
|
275
|
+
{ chainId: 37714555429n, shortName: 'xaitestnet' },
|
|
234
276
|
{ chainId: 88153591557n, shortName: 'arb-blueberry' }
|
|
235
277
|
];
|
|
236
278
|
if (process.env.TEST_NETWORK === 'hardhat') {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../../src/utils/eip-3770/config.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../../src/utils/eip-3770/config.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ethers, AbstractSigner, Provider } from 'ethers';
|
|
2
2
|
import { PasskeyCoordinates, PasskeyArgType } from '../../types/passkeys';
|
|
3
|
-
import { SafeWebAuthnSignerFactoryContractImplementationType } from '../../types/contracts';
|
|
3
|
+
import { SafeWebAuthnSharedSignerContractImplementationType, SafeWebAuthnSignerFactoryContractImplementationType } from '../../types/contracts';
|
|
4
4
|
/**
|
|
5
5
|
* Represents a Signer that is created using a passkey.
|
|
6
6
|
* This class extends the AbstractSigner to implement signer functionalities.
|
|
@@ -17,15 +17,28 @@ declare class PasskeySigner extends AbstractSigner {
|
|
|
17
17
|
* Passkey Coordinates.
|
|
18
18
|
*/
|
|
19
19
|
coordinates: PasskeyCoordinates;
|
|
20
|
+
/**
|
|
21
|
+
* P256 Verifier Contract address.
|
|
22
|
+
*/
|
|
23
|
+
verifierAddress: string;
|
|
24
|
+
/**
|
|
25
|
+
* chainId
|
|
26
|
+
*/
|
|
27
|
+
chainId: string;
|
|
28
|
+
/**
|
|
29
|
+
* signerAddress
|
|
30
|
+
*/
|
|
31
|
+
signerAddress: string;
|
|
20
32
|
/**
|
|
21
33
|
* Safe WebAuthn signer factory Contract.
|
|
22
34
|
*/
|
|
23
35
|
safeWebAuthnSignerFactoryContract: SafeWebAuthnSignerFactoryContractImplementationType;
|
|
24
36
|
/**
|
|
25
|
-
*
|
|
37
|
+
* Safe WebAuthn shared signer Contract.
|
|
26
38
|
*/
|
|
27
|
-
|
|
28
|
-
constructor(passkey: PasskeyArgType, safeWebAuthnSignerFactoryContract: SafeWebAuthnSignerFactoryContractImplementationType, provider: Provider);
|
|
39
|
+
safeWebAuthnSharedSignerContract: SafeWebAuthnSharedSignerContractImplementationType;
|
|
40
|
+
constructor(passkey: PasskeyArgType, safeWebAuthnSignerFactoryContract: SafeWebAuthnSignerFactoryContractImplementationType, safeWebAuthnSharedSignerContract: SafeWebAuthnSharedSignerContractImplementationType, provider: Provider, chainId: string, signerAddress: string);
|
|
41
|
+
static init(passkey: PasskeyArgType, safeWebAuthnSignerFactoryContract: SafeWebAuthnSignerFactoryContractImplementationType, safeWebAuthnSharedSignerContract: SafeWebAuthnSharedSignerContractImplementationType, provider: Provider, safeAddress: string, owners: string[], chainId: string): Promise<PasskeySigner>;
|
|
29
42
|
/**
|
|
30
43
|
* Returns the address associated with the passkey signer.
|
|
31
44
|
* @returns {Promise<string>} A promise that resolves to the signer's address.
|
|
@@ -36,15 +49,6 @@ declare class PasskeySigner extends AbstractSigner {
|
|
|
36
49
|
* @returns {string} The encoded data to create a signer.
|
|
37
50
|
*/
|
|
38
51
|
encodeCreateSigner(): string;
|
|
39
|
-
/**
|
|
40
|
-
* Creates the deployment transaction to create a passkey signer.
|
|
41
|
-
* @returns {string} The deployment transaction to create a passkey signer.
|
|
42
|
-
*/
|
|
43
|
-
createPasskeyDeploymentTransaction(): Promise<{
|
|
44
|
-
to: string;
|
|
45
|
-
value: string;
|
|
46
|
-
data: string;
|
|
47
|
-
}>;
|
|
48
52
|
/**
|
|
49
53
|
* Signs the provided data using the passkey.
|
|
50
54
|
* @param {Uint8Array} data - The data to be signed.
|
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
2
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
6
|
const ethers_1 = require("ethers");
|
|
4
|
-
const constants_1 = require("../constants");
|
|
5
7
|
const extractPasskeyData_1 = require("./extractPasskeyData");
|
|
6
|
-
|
|
7
|
-
const P256_VERIFIER_ADDRESS = process.env.TEST_NETWORK === 'hardhat'
|
|
8
|
-
? '0x0287C6F8975f2571E8FAa1D34fe638B1468D563D' // In Hardhat, use the local deployed FCLP256Verifier contract
|
|
9
|
-
: '0xcA89CBa4813D5B40AeC6E57A30d0Eeb500d6531b'; // FCLP256Verifier deployed on Sepolia
|
|
8
|
+
const isSharedSigner_1 = __importDefault(require("./isSharedSigner"));
|
|
10
9
|
/**
|
|
11
10
|
* Represents a Signer that is created using a passkey.
|
|
12
11
|
* This class extends the AbstractSigner to implement signer functionalities.
|
|
@@ -14,25 +13,41 @@ const P256_VERIFIER_ADDRESS = process.env.TEST_NETWORK === 'hardhat'
|
|
|
14
13
|
* @extends {AbstractSigner}
|
|
15
14
|
*/
|
|
16
15
|
class PasskeySigner extends ethers_1.AbstractSigner {
|
|
17
|
-
constructor(passkey, safeWebAuthnSignerFactoryContract, provider) {
|
|
16
|
+
constructor(passkey, safeWebAuthnSignerFactoryContract, safeWebAuthnSharedSignerContract, provider, chainId, signerAddress) {
|
|
18
17
|
super(provider);
|
|
19
18
|
const { rawId, coordinates, customVerifierAddress } = passkey;
|
|
19
|
+
this.chainId = chainId;
|
|
20
20
|
this.passkeyRawId = (0, extractPasskeyData_1.hexStringToUint8Array)(rawId);
|
|
21
21
|
this.coordinates = coordinates;
|
|
22
|
-
this.
|
|
22
|
+
this.signerAddress = signerAddress;
|
|
23
23
|
this.safeWebAuthnSignerFactoryContract = safeWebAuthnSignerFactoryContract;
|
|
24
|
+
this.safeWebAuthnSharedSignerContract = safeWebAuthnSharedSignerContract;
|
|
25
|
+
this.verifierAddress = customVerifierAddress || (0, extractPasskeyData_1.getDefaultFCLP256VerifierAddress)(chainId);
|
|
26
|
+
}
|
|
27
|
+
static async init(passkey, safeWebAuthnSignerFactoryContract, safeWebAuthnSharedSignerContract, provider, safeAddress, owners, chainId) {
|
|
28
|
+
const { coordinates, customVerifierAddress } = passkey;
|
|
29
|
+
const verifierAddress = customVerifierAddress || (0, extractPasskeyData_1.getDefaultFCLP256VerifierAddress)(chainId);
|
|
30
|
+
let signerAddress;
|
|
31
|
+
const isPasskeySharedSigner = await (0, isSharedSigner_1.default)(passkey, safeWebAuthnSharedSignerContract, safeAddress, owners, chainId);
|
|
32
|
+
if (isPasskeySharedSigner) {
|
|
33
|
+
signerAddress = await safeWebAuthnSharedSignerContract.getAddress();
|
|
34
|
+
}
|
|
35
|
+
else {
|
|
36
|
+
;
|
|
37
|
+
[signerAddress] = await safeWebAuthnSignerFactoryContract.getSigner([
|
|
38
|
+
BigInt(coordinates.x),
|
|
39
|
+
BigInt(coordinates.y),
|
|
40
|
+
BigInt(verifierAddress)
|
|
41
|
+
]);
|
|
42
|
+
}
|
|
43
|
+
return new PasskeySigner(passkey, safeWebAuthnSignerFactoryContract, safeWebAuthnSharedSignerContract, provider, chainId, signerAddress);
|
|
24
44
|
}
|
|
25
45
|
/**
|
|
26
46
|
* Returns the address associated with the passkey signer.
|
|
27
47
|
* @returns {Promise<string>} A promise that resolves to the signer's address.
|
|
28
48
|
*/
|
|
29
49
|
async getAddress() {
|
|
30
|
-
|
|
31
|
-
BigInt(this.coordinates.x),
|
|
32
|
-
BigInt(this.coordinates.y),
|
|
33
|
-
BigInt(this.verifierAddress)
|
|
34
|
-
]);
|
|
35
|
-
return signerAddress;
|
|
50
|
+
return this.signerAddress;
|
|
36
51
|
}
|
|
37
52
|
/**
|
|
38
53
|
* Encodes the createSigner contract function.
|
|
@@ -45,23 +60,6 @@ class PasskeySigner extends ethers_1.AbstractSigner {
|
|
|
45
60
|
BigInt(this.verifierAddress)
|
|
46
61
|
]);
|
|
47
62
|
}
|
|
48
|
-
/**
|
|
49
|
-
* Creates the deployment transaction to create a passkey signer.
|
|
50
|
-
* @returns {string} The deployment transaction to create a passkey signer.
|
|
51
|
-
*/
|
|
52
|
-
async createPasskeyDeploymentTransaction() {
|
|
53
|
-
const passkeyAddress = await this.getAddress();
|
|
54
|
-
const isPasskeyDeployed = (await this.provider?.getCode(passkeyAddress)) !== constants_1.EMPTY_DATA;
|
|
55
|
-
if (isPasskeyDeployed) {
|
|
56
|
-
throw new Error('Passkey Signer contract already deployed');
|
|
57
|
-
}
|
|
58
|
-
const passkeySignerDeploymentTransaction = {
|
|
59
|
-
to: await this.safeWebAuthnSignerFactoryContract.getAddress(),
|
|
60
|
-
value: '0',
|
|
61
|
-
data: this.encodeCreateSigner()
|
|
62
|
-
};
|
|
63
|
-
return passkeySignerDeploymentTransaction;
|
|
64
|
-
}
|
|
65
63
|
/**
|
|
66
64
|
* Signs the provided data using the passkey.
|
|
67
65
|
* @param {Uint8Array} data - The data to be signed.
|
|
@@ -91,7 +89,7 @@ class PasskeySigner extends ethers_1.AbstractSigner {
|
|
|
91
89
|
coordinates: this.coordinates,
|
|
92
90
|
customVerifierAddress: this.verifierAddress
|
|
93
91
|
};
|
|
94
|
-
return new PasskeySigner(passkey, this.safeWebAuthnSignerFactoryContract, provider);
|
|
92
|
+
return new PasskeySigner(passkey, this.safeWebAuthnSignerFactoryContract, this.safeWebAuthnSharedSignerContract, provider, this.chainId, this.signerAddress);
|
|
95
93
|
}
|
|
96
94
|
signTransaction() {
|
|
97
95
|
throw new Error('Passkey Signers cannot sign transactions, they can only sign data.');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PasskeySigner.js","sourceRoot":"","sources":["../../../../src/utils/passkeys/PasskeySigner.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"PasskeySigner.js","sourceRoot":"","sources":["../../../../src/utils/passkeys/PasskeySigner.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import Safe from '../../Safe';
|
|
2
|
+
import { PasskeyArgType } from '../../types';
|
|
3
|
+
/**
|
|
4
|
+
* Creates the deployment transaction to create a passkey signer.
|
|
5
|
+
*
|
|
6
|
+
* @param {Safe} safe The protocol-kit instance of the current Safe
|
|
7
|
+
* @param {PasskeyArgType} passkey The passkey object
|
|
8
|
+
* @returns {Promise<{ to: string; value: string; data: string; }>} The deployment transaction to create a passkey signer.
|
|
9
|
+
*/
|
|
10
|
+
declare function createPasskeyDeploymentTransaction(safe: Safe, passkey: PasskeyArgType): Promise<{
|
|
11
|
+
to: string;
|
|
12
|
+
value: string;
|
|
13
|
+
data: string;
|
|
14
|
+
}>;
|
|
15
|
+
export default createPasskeyDeploymentTransaction;
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const constants_1 = require("../constants");
|
|
7
|
+
const SafeProvider_1 = __importDefault(require("../../SafeProvider"));
|
|
8
|
+
/**
|
|
9
|
+
* Creates the deployment transaction to create a passkey signer.
|
|
10
|
+
*
|
|
11
|
+
* @param {Safe} safe The protocol-kit instance of the current Safe
|
|
12
|
+
* @param {PasskeyArgType} passkey The passkey object
|
|
13
|
+
* @returns {Promise<{ to: string; value: string; data: string; }>} The deployment transaction to create a passkey signer.
|
|
14
|
+
*/
|
|
15
|
+
async function createPasskeyDeploymentTransaction(safe, passkey) {
|
|
16
|
+
const safeVersion = await safe.getContractVersion();
|
|
17
|
+
const safeAddress = await safe.getAddress();
|
|
18
|
+
const owners = await safe.getOwners();
|
|
19
|
+
const safePasskeyProvider = await SafeProvider_1.default.init(safe.getSafeProvider().provider, passkey, safeVersion, safe.getContractManager().contractNetworks, safeAddress, owners);
|
|
20
|
+
const passkeySigner = (await safePasskeyProvider.getExternalSigner());
|
|
21
|
+
const passkeyAddress = await passkeySigner.getAddress();
|
|
22
|
+
const provider = safe.getSafeProvider().getExternalProvider();
|
|
23
|
+
const isPasskeyDeployed = (await provider.getCode(passkeyAddress)) !== constants_1.EMPTY_DATA;
|
|
24
|
+
if (isPasskeyDeployed) {
|
|
25
|
+
throw new Error('Passkey Signer contract already deployed');
|
|
26
|
+
}
|
|
27
|
+
const passkeySignerDeploymentTransaction = {
|
|
28
|
+
to: await passkeySigner.safeWebAuthnSignerFactoryContract.getAddress(),
|
|
29
|
+
value: '0',
|
|
30
|
+
data: passkeySigner.encodeCreateSigner()
|
|
31
|
+
};
|
|
32
|
+
return passkeySignerDeploymentTransaction;
|
|
33
|
+
}
|
|
34
|
+
exports.default = createPasskeyDeploymentTransaction;
|
|
35
|
+
//# sourceMappingURL=createPasskeyDeploymentTransaction.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createPasskeyDeploymentTransaction.js","sourceRoot":"","sources":["../../../../src/utils/passkeys/createPasskeyDeploymentTransaction.ts"],"names":[],"mappings":";;;;;AAEA,4CAAyC;AACzC,sEAA6C;AAG7C;;;;;;GAMG;AACH,KAAK,UAAU,kCAAkC,CAC/C,IAAU,EACV,OAAuB;IAEvB,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAA;IACnD,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAA;IAC3C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAA;IAErC,MAAM,mBAAmB,GAAG,MAAM,sBAAY,CAAC,IAAI,CACjD,IAAI,CAAC,eAAe,EAAE,CAAC,QAAQ,EAC/B,OAAO,EACP,WAAW,EACX,IAAI,CAAC,kBAAkB,EAAE,CAAC,gBAAgB,EAC1C,WAAW,EACX,MAAM,CACP,CAAA;IAED,MAAM,aAAa,GAAG,CAAC,MAAM,mBAAmB,CAAC,iBAAiB,EAAE,CAAkB,CAAA;IACtF,MAAM,cAAc,GAAG,MAAM,aAAc,CAAC,UAAU,EAAE,CAAA;IACxD,MAAM,QAAQ,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC,mBAAmB,EAAE,CAAA;IAE7D,MAAM,iBAAiB,GAAG,CAAC,MAAM,QAAQ,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,KAAK,sBAAU,CAAA;IAEjF,IAAI,iBAAiB,EAAE,CAAC;QACtB,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAA;IAC7D,CAAC;IAED,MAAM,kCAAkC,GAAG;QACzC,EAAE,EAAE,MAAM,aAAa,CAAC,iCAAiC,CAAC,UAAU,EAAE;QACtE,KAAK,EAAE,GAAG;QACV,IAAI,EAAE,aAAa,CAAC,kBAAkB,EAAE;KACzC,CAAA;IAED,OAAO,kCAAkC,CAAA;AAC3C,CAAC;AAED,kBAAe,kCAAkC,CAAA"}
|
|
@@ -16,3 +16,4 @@ export declare function extractPasskeyData(passkeyCredential: Credential): Promi
|
|
|
16
16
|
*/
|
|
17
17
|
export declare function extractPasskeyCoordinates(publicKey: ArrayBuffer): Promise<PasskeyCoordinates>;
|
|
18
18
|
export declare function hexStringToUint8Array(hexString: string): Uint8Array;
|
|
19
|
+
export declare function getDefaultFCLP256VerifierAddress(chainId: string): string;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.hexStringToUint8Array = exports.extractPasskeyCoordinates = exports.extractPasskeyData = void 0;
|
|
3
|
+
exports.getDefaultFCLP256VerifierAddress = exports.hexStringToUint8Array = exports.extractPasskeyCoordinates = exports.extractPasskeyData = void 0;
|
|
4
|
+
const safe_modules_deployments_1 = require("@safe-global/safe-modules-deployments");
|
|
4
5
|
const buffer_1 = require("buffer");
|
|
5
6
|
/**
|
|
6
7
|
* Extracts and returns the passkey data (coordinates and rawId) from a given passkey Credential.
|
|
@@ -57,4 +58,18 @@ function hexStringToUint8Array(hexString) {
|
|
|
57
58
|
return new Uint8Array(arr);
|
|
58
59
|
}
|
|
59
60
|
exports.hexStringToUint8Array = hexStringToUint8Array;
|
|
61
|
+
function getDefaultFCLP256VerifierAddress(chainId) {
|
|
62
|
+
const network = BigInt(chainId).toString();
|
|
63
|
+
const FCLP256VerifierDeployment = (0, safe_modules_deployments_1.getFCLP256VerifierDeployment)({
|
|
64
|
+
version: '0.2.0',
|
|
65
|
+
released: true,
|
|
66
|
+
network
|
|
67
|
+
});
|
|
68
|
+
const verifierAddress = FCLP256VerifierDeployment?.networkAddresses[network];
|
|
69
|
+
if (!verifierAddress) {
|
|
70
|
+
throw new Error('FCLP256Verifier address not found');
|
|
71
|
+
}
|
|
72
|
+
return verifierAddress;
|
|
73
|
+
}
|
|
74
|
+
exports.getDefaultFCLP256VerifierAddress = getDefaultFCLP256VerifierAddress;
|
|
60
75
|
//# sourceMappingURL=extractPasskeyData.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extractPasskeyData.js","sourceRoot":"","sources":["../../../../src/utils/passkeys/extractPasskeyData.ts"],"names":[],"mappings":";;;AAAA,mCAA+B;AAG/B;;;;;;GAMG;AACI,KAAK,UAAU,kBAAkB,CAAC,iBAA6B;IACpE,MAAM,OAAO,GAAG,iBAAwC,CAAA;IACxD,MAAM,mBAAmB,GAAG,OAAO,CAAC,QAA4C,CAAA;IAEhF,MAAM,SAAS,GAAG,mBAAmB,CAAC,YAAY,EAAE,CAAA;IAEpD,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,+DAA+D,CAAC,CAAA;IAClF,CAAC;IAED,MAAM,WAAW,GAAG,MAAM,yBAAyB,CAAC,SAAS,CAAC,CAAA;IAC9D,MAAM,KAAK,GAAG,eAAM,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;IAExD,OAAO;QACL,KAAK;QACL,WAAW;KACZ,CAAA;AACH,CAAC;AAjBD,gDAiBC;AAED;;;;;;GAMG;AACI,KAAK,UAAU,yBAAyB,CAC7C,SAAsB;IAEtB,MAAM,SAAS,GAAG;QAChB,IAAI,EAAE,OAAO;QACb,UAAU,EAAE,OAAO;QACnB,IAAI,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;KAC1B,CAAA;IAED,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAA;IAEzF,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE,GAAG,CAAC,CAAA;IAE1D,MAAM,kBAAkB,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IAErC,IAAI,CAAC,kBAAkB,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CAAC,0EAA0E,CAAC,CAAA;IAC7F,CAAC;IAED,OAAO;QACL,CAAC,EAAE,IAAI,GAAG,eAAM,CAAC,IAAI,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;QAClD,CAAC,EAAE,IAAI,GAAG,eAAM,CAAC,IAAI,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;KACnD,CAAA;AACH,CAAC;AAvBD,8DAuBC;AAED,SAAgB,qBAAqB,CAAC,SAAiB;IACrD,MAAM,GAAG,GAAG,EAAE,CAAA;IACd,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QAC7C,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAA;IAChD,CAAC;IACD,OAAO,IAAI,UAAU,CAAC,GAAG,CAAC,CAAA;AAC5B,CAAC;AAND,sDAMC"}
|
|
1
|
+
{"version":3,"file":"extractPasskeyData.js","sourceRoot":"","sources":["../../../../src/utils/passkeys/extractPasskeyData.ts"],"names":[],"mappings":";;;AAAA,oFAAoF;AACpF,mCAA+B;AAG/B;;;;;;GAMG;AACI,KAAK,UAAU,kBAAkB,CAAC,iBAA6B;IACpE,MAAM,OAAO,GAAG,iBAAwC,CAAA;IACxD,MAAM,mBAAmB,GAAG,OAAO,CAAC,QAA4C,CAAA;IAEhF,MAAM,SAAS,GAAG,mBAAmB,CAAC,YAAY,EAAE,CAAA;IAEpD,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,+DAA+D,CAAC,CAAA;IAClF,CAAC;IAED,MAAM,WAAW,GAAG,MAAM,yBAAyB,CAAC,SAAS,CAAC,CAAA;IAC9D,MAAM,KAAK,GAAG,eAAM,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;IAExD,OAAO;QACL,KAAK;QACL,WAAW;KACZ,CAAA;AACH,CAAC;AAjBD,gDAiBC;AAED;;;;;;GAMG;AACI,KAAK,UAAU,yBAAyB,CAC7C,SAAsB;IAEtB,MAAM,SAAS,GAAG;QAChB,IAAI,EAAE,OAAO;QACb,UAAU,EAAE,OAAO;QACnB,IAAI,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;KAC1B,CAAA;IAED,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAA;IAEzF,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE,GAAG,CAAC,CAAA;IAE1D,MAAM,kBAAkB,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IAErC,IAAI,CAAC,kBAAkB,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CAAC,0EAA0E,CAAC,CAAA;IAC7F,CAAC;IAED,OAAO;QACL,CAAC,EAAE,IAAI,GAAG,eAAM,CAAC,IAAI,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;QAClD,CAAC,EAAE,IAAI,GAAG,eAAM,CAAC,IAAI,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;KACnD,CAAA;AACH,CAAC;AAvBD,8DAuBC;AAED,SAAgB,qBAAqB,CAAC,SAAiB;IACrD,MAAM,GAAG,GAAG,EAAE,CAAA;IACd,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QAC7C,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAA;IAChD,CAAC;IACD,OAAO,IAAI,UAAU,CAAC,GAAG,CAAC,CAAA;AAC5B,CAAC;AAND,sDAMC;AAED,SAAgB,gCAAgC,CAAC,OAAe;IAC9D,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,CAAA;IAE1C,MAAM,yBAAyB,GAAG,IAAA,uDAA4B,EAAC;QAC7D,OAAO,EAAE,OAAO;QAChB,QAAQ,EAAE,IAAI;QACd,OAAO;KACR,CAAC,CAAA;IAEF,MAAM,eAAe,GAAG,yBAAyB,EAAE,gBAAgB,CAAC,OAAO,CAAC,CAAA;IAE5E,IAAI,CAAC,eAAe,EAAE,CAAC;QACrB,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAA;IACtD,CAAC;IAED,OAAO,eAAe,CAAA;AACxB,CAAC;AAhBD,4EAgBC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import Safe from '../../Safe';
|
|
2
|
+
import { PasskeyArgType } from '../../types';
|
|
3
|
+
/**
|
|
4
|
+
* Returns the owner address associated with the specific passkey.
|
|
5
|
+
*
|
|
6
|
+
* @param {Safe} safe The protocol-kit instance of the current Safe
|
|
7
|
+
* @param {PasskeyArgType} passkey The passkey to check the owner address
|
|
8
|
+
* @returns {Promise<string>} Returns the passkey owner address associated with the passkey
|
|
9
|
+
*/
|
|
10
|
+
declare function getPasskeyOwnerAddress(safe: Safe, passkey: PasskeyArgType): Promise<string>;
|
|
11
|
+
export default getPasskeyOwnerAddress;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const SafeProvider_1 = __importDefault(require("../../SafeProvider"));
|
|
7
|
+
/**
|
|
8
|
+
* Returns the owner address associated with the specific passkey.
|
|
9
|
+
*
|
|
10
|
+
* @param {Safe} safe The protocol-kit instance of the current Safe
|
|
11
|
+
* @param {PasskeyArgType} passkey The passkey to check the owner address
|
|
12
|
+
* @returns {Promise<string>} Returns the passkey owner address associated with the passkey
|
|
13
|
+
*/
|
|
14
|
+
async function getPasskeyOwnerAddress(safe, passkey) {
|
|
15
|
+
const safeVersion = await safe.getContractVersion();
|
|
16
|
+
const safeAddress = await safe.getAddress();
|
|
17
|
+
const owners = await safe.getOwners();
|
|
18
|
+
const safePasskeyProvider = await SafeProvider_1.default.init(safe.getSafeProvider().provider, passkey, safeVersion, safe.getContractManager().contractNetworks, safeAddress, owners);
|
|
19
|
+
const passkeySigner = await safePasskeyProvider.getExternalSigner();
|
|
20
|
+
const passkeyOwnerAddress = await passkeySigner.getAddress();
|
|
21
|
+
return passkeyOwnerAddress;
|
|
22
|
+
}
|
|
23
|
+
exports.default = getPasskeyOwnerAddress;
|
|
24
|
+
//# sourceMappingURL=getPasskeyOwnerAddress.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getPasskeyOwnerAddress.js","sourceRoot":"","sources":["../../../../src/utils/passkeys/getPasskeyOwnerAddress.ts"],"names":[],"mappings":";;;;;AAAA,sEAA6C;AAI7C;;;;;;GAMG;AACH,KAAK,UAAU,sBAAsB,CAAC,IAAU,EAAE,OAAuB;IACvE,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAA;IACnD,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAA;IAC3C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAA;IAErC,MAAM,mBAAmB,GAAG,MAAM,sBAAY,CAAC,IAAI,CACjD,IAAI,CAAC,eAAe,EAAE,CAAC,QAAQ,EAC/B,OAAO,EACP,WAAW,EACX,IAAI,CAAC,kBAAkB,EAAE,CAAC,gBAAgB,EAC1C,WAAW,EACX,MAAM,CACP,CAAA;IAED,MAAM,aAAa,GAAG,MAAM,mBAAmB,CAAC,iBAAiB,EAAE,CAAA;IAEnE,MAAM,mBAAmB,GAAG,MAAM,aAAc,CAAC,UAAU,EAAE,CAAA;IAE7D,OAAO,mBAAmB,CAAA;AAC5B,CAAC;AAED,kBAAe,sBAAsB,CAAA"}
|
|
@@ -16,4 +16,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
17
|
__exportStar(require("./extractPasskeyData"), exports);
|
|
18
18
|
__exportStar(require("./PasskeySigner"), exports);
|
|
19
|
+
__exportStar(require("./getPasskeyOwnerAddress"), exports);
|
|
19
20
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/utils/passkeys/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,uDAAoC;AACpC,kDAA+B"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/utils/passkeys/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,uDAAoC;AACpC,kDAA+B;AAC/B,2DAAwC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { PasskeyArgType } from '../../types/passkeys';
|
|
2
|
+
import { SafeWebAuthnSharedSignerContractImplementationType } from '../../types/contracts';
|
|
3
|
+
/**
|
|
4
|
+
* Returns true if the passkey signer is a shared signer
|
|
5
|
+
* @returns {Promise<string>} A promise that resolves to the signer's address.
|
|
6
|
+
*/
|
|
7
|
+
declare function isSharedSigner(passkey: PasskeyArgType, safeWebAuthnSharedSignerContract: SafeWebAuthnSharedSignerContractImplementationType, safeAddress: string, owners: string[], chainId: string): Promise<boolean>;
|
|
8
|
+
export default isSharedSigner;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const extractPasskeyData_1 = require("./extractPasskeyData");
|
|
4
|
+
/**
|
|
5
|
+
* Returns true if the passkey signer is a shared signer
|
|
6
|
+
* @returns {Promise<string>} A promise that resolves to the signer's address.
|
|
7
|
+
*/
|
|
8
|
+
async function isSharedSigner(passkey, safeWebAuthnSharedSignerContract, safeAddress, owners, chainId) {
|
|
9
|
+
const sharedSignerContractAddress = await safeWebAuthnSharedSignerContract.getAddress();
|
|
10
|
+
// is a shared signer if the shared signer contract address is present in the owners and its configured in the Safe slot
|
|
11
|
+
if (safeAddress && owners.includes(sharedSignerContractAddress)) {
|
|
12
|
+
const [sharedSignerSlot] = await safeWebAuthnSharedSignerContract.getConfiguration([
|
|
13
|
+
safeAddress
|
|
14
|
+
]);
|
|
15
|
+
const { x, y, verifiers } = sharedSignerSlot;
|
|
16
|
+
const passkeyVerifierAddress = passkey.customVerifierAddress || (0, extractPasskeyData_1.getDefaultFCLP256VerifierAddress)(chainId.toString());
|
|
17
|
+
const isSharedSigner = BigInt(passkey.coordinates.x) === x &&
|
|
18
|
+
BigInt(passkey.coordinates.y) === y &&
|
|
19
|
+
BigInt(passkeyVerifierAddress) === verifiers;
|
|
20
|
+
return isSharedSigner;
|
|
21
|
+
}
|
|
22
|
+
return false;
|
|
23
|
+
}
|
|
24
|
+
exports.default = isSharedSigner;
|
|
25
|
+
//# sourceMappingURL=isSharedSigner.js.map
|