ox 1.8.8 → 1.8.9
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 +19 -0
- package/dist/tempo/AccountConfig.d.ts +46 -3
- package/dist/tempo/AccountConfig.d.ts.map +1 -1
- package/dist/tempo/AccountConfig.js +58 -9
- package/dist/tempo/AccountConfig.js.map +1 -1
- package/dist/tempo/AccountSimulation.d.ts +6 -2
- package/dist/tempo/AccountSimulation.d.ts.map +1 -1
- package/dist/tempo/AccountSimulation.js +15 -5
- package/dist/tempo/AccountSimulation.js.map +1 -1
- package/dist/tempo/KeyAuthorization.d.ts +14 -9
- package/dist/tempo/KeyAuthorization.d.ts.map +1 -1
- package/dist/tempo/KeyAuthorization.js +8 -12
- package/dist/tempo/KeyAuthorization.js.map +1 -1
- package/dist/tempo/TransactionRequest.d.ts +3 -3
- package/dist/tempo/TransactionRequest.d.ts.map +1 -1
- package/dist/tempo/TransactionRequest.js +10 -6
- package/dist/tempo/TransactionRequest.js.map +1 -1
- package/dist/zod/tempo/AccountSimulation.d.ts +4 -0
- package/dist/zod/tempo/AccountSimulation.d.ts.map +1 -1
- package/dist/zod/tempo/AccountSimulation.js +2 -0
- package/dist/zod/tempo/AccountSimulation.js.map +1 -1
- package/dist/zod/tempo/KeyAuthorization.d.ts +5 -5
- package/dist/zod/tempo/KeyAuthorization.d.ts.map +1 -1
- package/dist/zod/tempo/KeyAuthorization.js +10 -13
- package/dist/zod/tempo/KeyAuthorization.js.map +1 -1
- package/dist/zod/tempo/RpcSchemaTempo.d.ts +16 -8
- package/dist/zod/tempo/RpcSchemaTempo.d.ts.map +1 -1
- package/dist/zod/tempo/Transaction.d.ts +6 -6
- package/dist/zod/tempo/TransactionRequest.d.ts +23 -9
- package/dist/zod/tempo/TransactionRequest.d.ts.map +1 -1
- package/dist/zod/tempo/TransactionRequest.js +13 -9
- package/dist/zod/tempo/TransactionRequest.js.map +1 -1
- package/package.json +1 -1
- package/src/tempo/AccountConfig.test-d.ts +10 -0
- package/src/tempo/AccountConfig.test.ts +143 -10
- package/src/tempo/AccountConfig.ts +80 -9
- package/src/tempo/AccountOperation.test.ts +32 -32
- package/src/tempo/AccountSimulation.test.ts +43 -0
- package/src/tempo/AccountSimulation.ts +19 -5
- package/src/tempo/KeyAuthorization.test.ts +91 -32
- package/src/tempo/KeyAuthorization.ts +16 -39
- package/src/tempo/RpcSchemaTempo.test-d.ts +2 -2
- package/src/tempo/TransactionRequest.test-d.ts +5 -5
- package/src/tempo/TransactionRequest.test.ts +11 -9
- package/src/tempo/TransactionRequest.ts +13 -9
- package/src/version.ts +1 -1
- package/src/zod/tempo/AccountSimulation.ts +2 -0
- package/src/zod/tempo/KeyAuthorization.ts +28 -46
- package/src/zod/tempo/TransactionRequest.ts +17 -9
- package/src/zod/tempo/_test/AccountOperation.test.ts +1 -1
- package/src/zod/tempo/_test/KeyAuthorization.test.ts +5 -5
- package/src/zod/tempo/_test/TransactionRequest.test.ts +12 -7
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,24 @@
|
|
|
1
1
|
# ox
|
|
2
2
|
|
|
3
|
+
## 1.8.9
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- [#518](https://github.com/wevm/ox/pull/518) [`010d6b5`](https://github.com/wevm/ox/commit/010d6b53d74c01b674d82de07887786a2f4b7b18) Thanks [@jxom](https://github.com/jxom)! - Added `AccountConfig.fromUpgrade` for deriving the version-one config an account installs when it migrates in place with `upgradeAccount` (TIP-1113).
|
|
8
|
+
|
|
9
|
+
- [#518](https://github.com/wevm/ox/pull/518) [`010d6b5`](https://github.com/wevm/ox/commit/010d6b53d74c01b674d82de07887786a2f4b7b18) Thanks [@jxom](https://github.com/jxom)! - Fixed `AccountSimulation.toRpc` passing through empty and 3-byte `keyData`, which the Tempo node rejects, by shimming them into a 2-byte length hint.
|
|
10
|
+
|
|
11
|
+
- [#518](https://github.com/wevm/ox/pull/518) [`010d6b5`](https://github.com/wevm/ox/commit/010d6b53d74c01b674d82de07887786a2f4b7b18) Thanks [@jxom](https://github.com/jxom)! - Renamed the Tempo configurable account hash domains from `tempo:multisig:*` to `tempo:configurable-account:*` to match Tempo main (tempoxyz/tempo#8502), which changes every `AccountConfig.getAddress`, `AccountConfig.getCommitment`, and `AccountConfig.getSignPayload` result.
|
|
12
|
+
|
|
13
|
+
- [#518](https://github.com/wevm/ox/pull/518) [`010d6b5`](https://github.com/wevm/ox/commit/010d6b53d74c01b674d82de07887786a2f4b7b18) Thanks [@jxom](https://github.com/jxom)! - Renamed the configurable account RPC key type from `multisig` to `configurableAccount` and `TransactionRequest.multisigSimulation` to `configurableAccountSimulation`, and added the optional `AccountSimulation` grant `signer`, to match the Tempo node.
|
|
14
|
+
|
|
15
|
+
```diff
|
|
16
|
+
- { keyType: 'multisig', multisigSimulation: spec }
|
|
17
|
+
+ { keyType: 'configurableAccount', configurableAccountSimulation: spec }
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
- [#518](https://github.com/wevm/ox/pull/518) [`010d6b5`](https://github.com/wevm/ox/commit/010d6b53d74c01b674d82de07887786a2f4b7b18) Thanks [@jxom](https://github.com/jxom)! - Stopped requiring an `account` binding on configurable account key grants, so `KeyAuthorization` and its zod schemas accept every grant the Tempo node accepts, and deprecated `KeyAuthorization.MissingAccountError`, which is no longer thrown.
|
|
21
|
+
|
|
3
22
|
## 1.8.8
|
|
4
23
|
|
|
5
24
|
### Patch Changes
|
|
@@ -183,12 +183,55 @@ export declare namespace fromRpc {
|
|
|
183
183
|
* @returns The account config.
|
|
184
184
|
*/
|
|
185
185
|
export declare function fromTuple(tuple: Tuple): Config;
|
|
186
|
+
/**
|
|
187
|
+
* Derives the configuration an existing account installs when it migrates in
|
|
188
|
+
* place with the `upgradeAccount` precompile call
|
|
189
|
+
* ([TIP-1113](https://tips.sh/1113)).
|
|
190
|
+
*
|
|
191
|
+
* The account keeps its address. Its salt is
|
|
192
|
+
* `keccak256("tempo:configurable-account:upgrade" || account)` and its version
|
|
193
|
+
* is `1n`. Owners are sorted into canonical order and the config is validated.
|
|
194
|
+
* The account itself may be listed as an owner.
|
|
195
|
+
*
|
|
196
|
+
* @example
|
|
197
|
+
* ```ts twoslash
|
|
198
|
+
* import { AccountConfig } from 'ox/tempo'
|
|
199
|
+
*
|
|
200
|
+
* const config = AccountConfig.fromUpgrade(
|
|
201
|
+
* '0x3333333333333333333333333333333333333333',
|
|
202
|
+
* {
|
|
203
|
+
* owners: [
|
|
204
|
+
* {
|
|
205
|
+
* owner: '0x1111111111111111111111111111111111111111',
|
|
206
|
+
* weight: 1
|
|
207
|
+
* }
|
|
208
|
+
* ],
|
|
209
|
+
* threshold: 1
|
|
210
|
+
* }
|
|
211
|
+
* )
|
|
212
|
+
* // config.version === 1n
|
|
213
|
+
* ```
|
|
214
|
+
*
|
|
215
|
+
* @param account - The account migrating in place.
|
|
216
|
+
* @param options - The owners and threshold to install.
|
|
217
|
+
* @returns The installed account config.
|
|
218
|
+
*/
|
|
219
|
+
export declare function fromUpgrade<numberType = number>(account: Address.Address, options: fromUpgrade.Options<numberType>): Config<1n, numberType>;
|
|
220
|
+
export declare namespace fromUpgrade {
|
|
221
|
+
type Options<numberType = number> = {
|
|
222
|
+
/** Weighted owners to install. Sorted into canonical order. */
|
|
223
|
+
owners: readonly Owner<numberType>[];
|
|
224
|
+
/** Minimum total owner weight required for authorization. */
|
|
225
|
+
threshold: numberType;
|
|
226
|
+
};
|
|
227
|
+
type ErrorType = Address.assert.ErrorType | assert.ErrorType | Hash.keccak256.ErrorType | Hex.concat.ErrorType | Hex.fromString.ErrorType | Errors.GlobalErrorType;
|
|
228
|
+
}
|
|
186
229
|
/**
|
|
187
230
|
* Derives the stable configurable account address.
|
|
188
231
|
*
|
|
189
232
|
* The initial config is hashed into a CREATE2 salt using fixed-width
|
|
190
233
|
* big-endian fields, not RLP. The account uses the chain-configured recovery
|
|
191
|
-
* factory and
|
|
234
|
+
* factory and account proxy init-code hash.
|
|
192
235
|
*
|
|
193
236
|
* The address is derived once from the initial version-0 config. Config
|
|
194
237
|
* updates do not change it.
|
|
@@ -228,7 +271,7 @@ export declare namespace getAddress {
|
|
|
228
271
|
* Computes the commitment for an account configuration.
|
|
229
272
|
*
|
|
230
273
|
* The commitment uses raw fixed-width fields, not RLP or ABI encoding:
|
|
231
|
-
* `keccak256("tempo:
|
|
274
|
+
* `keccak256("tempo:configurable-account:config" || salt || uint64be(version) || uint8(threshold) || uint8(owners.length) || owners)`.
|
|
232
275
|
*
|
|
233
276
|
* @example
|
|
234
277
|
* ```ts twoslash
|
|
@@ -256,7 +299,7 @@ export declare namespace getCommitment {
|
|
|
256
299
|
/**
|
|
257
300
|
* Computes the digest a configurable account owner approves (signs).
|
|
258
301
|
*
|
|
259
|
-
* `keccak256("tempo:
|
|
302
|
+
* `keccak256("tempo:configurable-account:signature" || inner_digest || account || uint64be(version))`,
|
|
260
303
|
* where `inner_digest` is the transaction sign payload
|
|
261
304
|
* ({@link ox#TxEnvelopeTempo.(getSignPayload:function)}).
|
|
262
305
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AccountConfig.d.ts","sourceRoot":"","sources":["../../src/tempo/AccountConfig.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,oBAAoB,CAAA;AAC7C,OAAO,KAAK,KAAK,KAAK,MAAM,kBAAkB,CAAA;AAC9C,OAAO,KAAK,eAAe,MAAM,4BAA4B,CAAA;AAC7D,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAA;AAC3C,OAAO,KAAK,IAAI,MAAM,iBAAiB,CAAA;AACvC,OAAO,KAAK,GAAG,MAAM,gBAAgB,CAAA;AACrC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAA;AAExD,oEAAoE;AACpE,eAAO,MAAM,sBAAsB,OAAO,CAAA;AAE1C,6DAA6D;AAC7D,eAAO,MAAM,SAAS,KAAK,CAAA;AAE3B,6EAA6E;AAC7E,eAAO,MAAM,aAAa,IAAI,CAAA;AAE9B;;;;;GAKG;AACH,eAAO,MAAM,YAAY,MAAO,CAAA;AAEhC,qDAAqD;AACrD,eAAO,MAAM,UAAU,QAAiB,CAAA;AAExC,qEAAqE;AACrE,eAAO,MAAM,iBAAiB,QAAkB,CAAA;AAEhD,gEAAgE;AAChE,eAAO,MAAM,QAAQ,eAAkC,CAAA;
|
|
1
|
+
{"version":3,"file":"AccountConfig.d.ts","sourceRoot":"","sources":["../../src/tempo/AccountConfig.ts"],"names":[],"mappings":"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"}
|
|
@@ -23,13 +23,20 @@ export const signatureTypeByte = '0x05';
|
|
|
23
23
|
/** Zero 32-byte salt (the default when no salt is provided). */
|
|
24
24
|
export const zeroSalt = `0x${'00'.repeat(32)}`;
|
|
25
25
|
/** Domain prefix for the configurable account address derivation. */
|
|
26
|
-
const accountDomain = 'tempo:
|
|
26
|
+
const accountDomain = 'tempo:configurable-account:account';
|
|
27
27
|
/** Domain prefix for account configuration commitments. */
|
|
28
|
-
const configDomain = 'tempo:
|
|
29
|
-
/**
|
|
30
|
-
|
|
28
|
+
const configDomain = 'tempo:configurable-account:config';
|
|
29
|
+
/**
|
|
30
|
+
* Keccak-256 of the account proxy creation code.
|
|
31
|
+
*
|
|
32
|
+
* Placeholder until [TIP-1110](https://tips.sh/1110) fixes the canonical
|
|
33
|
+
* account proxy, which will change every derived address.
|
|
34
|
+
*/
|
|
35
|
+
const accountProxyInitCodeHash = '0x583cc63a2e37f645b43eac911b1a6d6de08b83abdc308c61364edda8cfc3bd37';
|
|
31
36
|
/** Domain prefix for configurable account owner approvals. */
|
|
32
|
-
const signatureDomain = 'tempo:
|
|
37
|
+
const signatureDomain = 'tempo:configurable-account:signature';
|
|
38
|
+
/** Domain prefix for the salt of an account migrated in place. */
|
|
39
|
+
const upgradeDomain = 'tempo:configurable-account:upgrade';
|
|
33
40
|
/**
|
|
34
41
|
* Asserts that an {@link ox#AccountConfig.Config} is valid.
|
|
35
42
|
*
|
|
@@ -207,12 +214,54 @@ export function fromTuple(tuple) {
|
|
|
207
214
|
assert(config);
|
|
208
215
|
return config;
|
|
209
216
|
}
|
|
217
|
+
/**
|
|
218
|
+
* Derives the configuration an existing account installs when it migrates in
|
|
219
|
+
* place with the `upgradeAccount` precompile call
|
|
220
|
+
* ([TIP-1113](https://tips.sh/1113)).
|
|
221
|
+
*
|
|
222
|
+
* The account keeps its address. Its salt is
|
|
223
|
+
* `keccak256("tempo:configurable-account:upgrade" || account)` and its version
|
|
224
|
+
* is `1n`. Owners are sorted into canonical order and the config is validated.
|
|
225
|
+
* The account itself may be listed as an owner.
|
|
226
|
+
*
|
|
227
|
+
* @example
|
|
228
|
+
* ```ts twoslash
|
|
229
|
+
* import { AccountConfig } from 'ox/tempo'
|
|
230
|
+
*
|
|
231
|
+
* const config = AccountConfig.fromUpgrade(
|
|
232
|
+
* '0x3333333333333333333333333333333333333333',
|
|
233
|
+
* {
|
|
234
|
+
* owners: [
|
|
235
|
+
* {
|
|
236
|
+
* owner: '0x1111111111111111111111111111111111111111',
|
|
237
|
+
* weight: 1
|
|
238
|
+
* }
|
|
239
|
+
* ],
|
|
240
|
+
* threshold: 1
|
|
241
|
+
* }
|
|
242
|
+
* )
|
|
243
|
+
* // config.version === 1n
|
|
244
|
+
* ```
|
|
245
|
+
*
|
|
246
|
+
* @param account - The account migrating in place.
|
|
247
|
+
* @param options - The owners and threshold to install.
|
|
248
|
+
* @returns The installed account config.
|
|
249
|
+
*/
|
|
250
|
+
export function fromUpgrade(account, options) {
|
|
251
|
+
Address.assert(account);
|
|
252
|
+
return from({
|
|
253
|
+
owners: options.owners,
|
|
254
|
+
salt: Hash.keccak256(Hex.concat(Hex.fromString(upgradeDomain), account)),
|
|
255
|
+
threshold: options.threshold,
|
|
256
|
+
version: 1n,
|
|
257
|
+
});
|
|
258
|
+
}
|
|
210
259
|
/**
|
|
211
260
|
* Derives the stable configurable account address.
|
|
212
261
|
*
|
|
213
262
|
* The initial config is hashed into a CREATE2 salt using fixed-width
|
|
214
263
|
* big-endian fields, not RLP. The account uses the chain-configured recovery
|
|
215
|
-
* factory and
|
|
264
|
+
* factory and account proxy init-code hash.
|
|
216
265
|
*
|
|
217
266
|
* The address is derived once from the initial version-0 config. Config
|
|
218
267
|
* updates do not change it.
|
|
@@ -252,7 +301,7 @@ export function getAddress(config, options) {
|
|
|
252
301
|
Hex.fromNumber(owner.weight, { size: 1 }),
|
|
253
302
|
])));
|
|
254
303
|
const account = ContractAddress.fromCreate2({
|
|
255
|
-
bytecodeHash:
|
|
304
|
+
bytecodeHash: accountProxyInitCodeHash,
|
|
256
305
|
from: options.factory,
|
|
257
306
|
salt: accountSalt,
|
|
258
307
|
});
|
|
@@ -268,7 +317,7 @@ export function getAddress(config, options) {
|
|
|
268
317
|
* Computes the commitment for an account configuration.
|
|
269
318
|
*
|
|
270
319
|
* The commitment uses raw fixed-width fields, not RLP or ABI encoding:
|
|
271
|
-
* `keccak256("tempo:
|
|
320
|
+
* `keccak256("tempo:configurable-account:config" || salt || uint64be(version) || uint8(threshold) || uint8(owners.length) || owners)`.
|
|
272
321
|
*
|
|
273
322
|
* @example
|
|
274
323
|
* ```ts twoslash
|
|
@@ -299,7 +348,7 @@ export function getCommitment(config) {
|
|
|
299
348
|
/**
|
|
300
349
|
* Computes the digest a configurable account owner approves (signs).
|
|
301
350
|
*
|
|
302
|
-
* `keccak256("tempo:
|
|
351
|
+
* `keccak256("tempo:configurable-account:signature" || inner_digest || account || uint64be(version))`,
|
|
303
352
|
* where `inner_digest` is the transaction sign payload
|
|
304
353
|
* ({@link ox#TxEnvelopeTempo.(getSignPayload:function)}).
|
|
305
354
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AccountConfig.js","sourceRoot":"","sources":["../../src/tempo/AccountConfig.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"AccountConfig.js","sourceRoot":"","sources":["../../src/tempo/AccountConfig.ts"],"names":[],"mappings":"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"}
|
|
@@ -24,6 +24,8 @@ export type Rpc = Compute<{
|
|
|
24
24
|
approvals: readonly ApprovalRpc[];
|
|
25
25
|
/** Canonical RLP-encoded applicable configuration. */
|
|
26
26
|
config: Hex.Hex;
|
|
27
|
+
/** Account that signs the modeled key authorization. Omitted for a direct signature. */
|
|
28
|
+
signer?: Address.Address | undefined;
|
|
27
29
|
}>;
|
|
28
30
|
/** Account simulation spec used to construct an RPC simulation signature. */
|
|
29
31
|
export type Spec = Compute<{
|
|
@@ -31,6 +33,8 @@ export type Spec = Compute<{
|
|
|
31
33
|
approvals: readonly Approval[];
|
|
32
34
|
/** Complete applicable configuration. */
|
|
33
35
|
config: AccountConfig.Config;
|
|
36
|
+
/** Account that signs the modeled key authorization. Omitted for a direct signature. */
|
|
37
|
+
signer?: Address.Address | undefined;
|
|
34
38
|
}>;
|
|
35
39
|
/**
|
|
36
40
|
* Converts a JSON-RPC account simulation spec to its domain representation.
|
|
@@ -49,7 +53,7 @@ export type Spec = Compute<{
|
|
|
49
53
|
export declare function fromRpc(spec: Rpc): Spec;
|
|
50
54
|
export declare namespace fromRpc {
|
|
51
55
|
/** Error type for `fromRpc`. */
|
|
52
|
-
type ErrorType = Hex.isEqual.ErrorType | InvalidSimulationError | AccountConfig.assert.ErrorType | Rlp.fromHex.ErrorType | Rlp.toHex.ErrorType | Errors.GlobalErrorType;
|
|
56
|
+
type ErrorType = Address.assert.ErrorType | Hex.isEqual.ErrorType | InvalidSimulationError | AccountConfig.assert.ErrorType | Rlp.fromHex.ErrorType | Rlp.toHex.ErrorType | Errors.GlobalErrorType;
|
|
53
57
|
}
|
|
54
58
|
/**
|
|
55
59
|
* Converts an account simulation spec to its JSON-RPC representation.
|
|
@@ -68,7 +72,7 @@ export declare namespace fromRpc {
|
|
|
68
72
|
export declare function toRpc(spec: Spec): Rpc;
|
|
69
73
|
export declare namespace toRpc {
|
|
70
74
|
/** Error type for `toRpc`. */
|
|
71
|
-
type ErrorType = Hex.fromNumber.ErrorType | InvalidSimulationError | AccountConfig.assert.ErrorType | Rlp.fromHex.ErrorType | Errors.GlobalErrorType;
|
|
75
|
+
type ErrorType = Address.assert.ErrorType | Hex.fromNumber.ErrorType | InvalidSimulationError | AccountConfig.assert.ErrorType | Rlp.fromHex.ErrorType | Errors.GlobalErrorType;
|
|
72
76
|
}
|
|
73
77
|
/** Thrown when an account simulation spec is invalid. */
|
|
74
78
|
export declare class InvalidSimulationError extends Errors.BaseError {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AccountSimulation.d.ts","sourceRoot":"","sources":["../../src/tempo/AccountSimulation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,oBAAoB,CAAA;AAC7C,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAA;AAC3C,OAAO,KAAK,GAAG,MAAM,gBAAgB,CAAA;AACrC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAA;AACxD,OAAO,KAAK,GAAG,MAAM,gBAAgB,CAAA;AACrC,OAAO,KAAK,aAAa,MAAM,oBAAoB,CAAA;AACnD,OAAO,KAAK,KAAK,iBAAiB,MAAM,wBAAwB,CAAA;AAEhE,mEAAmE;AACnE,MAAM,MAAM,QAAQ,GAAG,iBAAiB,CAAA;AAExC,4EAA4E;AAC5E,MAAM,MAAM,WAAW,GAAG,iBAAiB,CAAA;AAE3C,wDAAwD;AACxD,MAAM,MAAM,iBAAiB,GAAG;IAC9B,uDAAuD;IACvD,OAAO,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG,SAAS,CAAA;IAC7B,gFAAgF;IAChF,OAAO,CAAC,EAAE,iBAAiB,CAAC,IAAI,GAAG,SAAS,CAAA;IAC5C,gCAAgC;IAChC,KAAK,EAAE,OAAO,CAAC,OAAO,CAAA;CACvB,CAAA;AAED,6DAA6D;AAC7D,MAAM,MAAM,GAAG,GAAG,OAAO,CAAC;IACxB,gCAAgC;IAChC,SAAS,EAAE,SAAS,WAAW,EAAE,CAAA;IACjC,sDAAsD;IACtD,MAAM,EAAE,GAAG,CAAC,GAAG,CAAA;
|
|
1
|
+
{"version":3,"file":"AccountSimulation.d.ts","sourceRoot":"","sources":["../../src/tempo/AccountSimulation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,oBAAoB,CAAA;AAC7C,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAA;AAC3C,OAAO,KAAK,GAAG,MAAM,gBAAgB,CAAA;AACrC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAA;AACxD,OAAO,KAAK,GAAG,MAAM,gBAAgB,CAAA;AACrC,OAAO,KAAK,aAAa,MAAM,oBAAoB,CAAA;AACnD,OAAO,KAAK,KAAK,iBAAiB,MAAM,wBAAwB,CAAA;AAEhE,mEAAmE;AACnE,MAAM,MAAM,QAAQ,GAAG,iBAAiB,CAAA;AAExC,4EAA4E;AAC5E,MAAM,MAAM,WAAW,GAAG,iBAAiB,CAAA;AAE3C,wDAAwD;AACxD,MAAM,MAAM,iBAAiB,GAAG;IAC9B,uDAAuD;IACvD,OAAO,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG,SAAS,CAAA;IAC7B,gFAAgF;IAChF,OAAO,CAAC,EAAE,iBAAiB,CAAC,IAAI,GAAG,SAAS,CAAA;IAC5C,gCAAgC;IAChC,KAAK,EAAE,OAAO,CAAC,OAAO,CAAA;CACvB,CAAA;AAED,6DAA6D;AAC7D,MAAM,MAAM,GAAG,GAAG,OAAO,CAAC;IACxB,gCAAgC;IAChC,SAAS,EAAE,SAAS,WAAW,EAAE,CAAA;IACjC,sDAAsD;IACtD,MAAM,EAAE,GAAG,CAAC,GAAG,CAAA;IACf,wFAAwF;IACxF,MAAM,CAAC,EAAE,OAAO,CAAC,OAAO,GAAG,SAAS,CAAA;CACrC,CAAC,CAAA;AAEF,6EAA6E;AAC7E,MAAM,MAAM,IAAI,GAAG,OAAO,CAAC;IACzB,gCAAgC;IAChC,SAAS,EAAE,SAAS,QAAQ,EAAE,CAAA;IAC9B,yCAAyC;IACzC,MAAM,EAAE,aAAa,CAAC,MAAM,CAAA;IAC5B,wFAAwF;IACxF,MAAM,CAAC,EAAE,OAAO,CAAC,OAAO,GAAG,SAAS,CAAA;CACrC,CAAC,CAAA;AAEF;;;;;;;;;;;;;GAaG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,GAAG,GAAG,IAAI,CASvC;AAED,MAAM,CAAC,OAAO,WAAW,OAAO,CAAC;IAC/B,gCAAgC;IAChC,KAAY,SAAS,GACjB,OAAO,CAAC,MAAM,CAAC,SAAS,GACxB,GAAG,CAAC,OAAO,CAAC,SAAS,GACrB,sBAAsB,GACtB,aAAa,CAAC,MAAM,CAAC,SAAS,GAC9B,GAAG,CAAC,OAAO,CAAC,SAAS,GACrB,GAAG,CAAC,KAAK,CAAC,SAAS,GACnB,MAAM,CAAC,eAAe,CAAA;CAC3B;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,KAAK,CAAC,IAAI,EAAE,IAAI,GAAG,GAAG,CAarC;AAED,MAAM,CAAC,OAAO,WAAW,KAAK,CAAC;IAC7B,8BAA8B;IAC9B,KAAY,SAAS,GACjB,OAAO,CAAC,MAAM,CAAC,SAAS,GACxB,GAAG,CAAC,UAAU,CAAC,SAAS,GACxB,sBAAsB,GACtB,aAAa,CAAC,MAAM,CAAC,SAAS,GAC9B,GAAG,CAAC,OAAO,CAAC,SAAS,GACrB,MAAM,CAAC,eAAe,CAAA;CAC3B;AAsED,yDAAyD;AACzD,qBAAa,sBAAuB,SAAQ,MAAM,CAAC,SAAS;IAC1D,SAAkB,IAAI,8CAA6C;gBACvD,OAAO,EAAE,sBAAsB,CAAC,OAAO;CAGpD;AAED,MAAM,CAAC,OAAO,WAAW,sBAAsB,CAAC;IAC9C,kCAAkC;IAClC,KAAY,OAAO,GAAG;QACpB,0BAA0B;QAC1B,MAAM,EAAE,MAAM,CAAA;KACf,CAAA;CACF"}
|
|
@@ -18,9 +18,15 @@ import * as AccountConfig from './AccountConfig.js';
|
|
|
18
18
|
* @returns The account simulation spec with decoded configurations.
|
|
19
19
|
*/
|
|
20
20
|
export function fromRpc(spec) {
|
|
21
|
-
const { approvals, config } = spec;
|
|
21
|
+
const { approvals, config, signer } = spec;
|
|
22
22
|
assertApprovals(approvals);
|
|
23
|
-
|
|
23
|
+
if (signer !== undefined)
|
|
24
|
+
Address.assert(signer);
|
|
25
|
+
return {
|
|
26
|
+
approvals,
|
|
27
|
+
config: deserializeConfig(config),
|
|
28
|
+
...(signer !== undefined ? { signer } : {}),
|
|
29
|
+
};
|
|
24
30
|
}
|
|
25
31
|
/**
|
|
26
32
|
* Converts an account simulation spec to its JSON-RPC representation.
|
|
@@ -37,8 +43,10 @@ export function fromRpc(spec) {
|
|
|
37
43
|
* @returns The JSON-RPC account simulation spec with encoded configurations.
|
|
38
44
|
*/
|
|
39
45
|
export function toRpc(spec) {
|
|
40
|
-
const { approvals, config } = spec;
|
|
46
|
+
const { approvals, config, signer } = spec;
|
|
41
47
|
assertApprovals(approvals);
|
|
48
|
+
if (signer !== undefined)
|
|
49
|
+
Address.assert(signer);
|
|
42
50
|
return {
|
|
43
51
|
approvals: approvals.map(({ keyData, keyType, owner }) => ({
|
|
44
52
|
...(keyData !== undefined ? { keyData: shimKeyData(keyData) } : {}),
|
|
@@ -46,6 +54,7 @@ export function toRpc(spec) {
|
|
|
46
54
|
owner,
|
|
47
55
|
})),
|
|
48
56
|
config: serializeConfig(config),
|
|
57
|
+
...(signer !== undefined ? { signer } : {}),
|
|
49
58
|
};
|
|
50
59
|
}
|
|
51
60
|
/** @internal */
|
|
@@ -93,12 +102,13 @@ function serializeConfig(config) {
|
|
|
93
102
|
return Rlp.fromHex(AccountConfig.toTuple(config));
|
|
94
103
|
}
|
|
95
104
|
/**
|
|
96
|
-
* Shims
|
|
105
|
+
* Shims key data into the 1-, 2-, or 4-byte length hint accepted by Tempo's
|
|
106
|
+
* gas estimator. Other sizes are replaced by a 2-byte hint of their length.
|
|
97
107
|
* @internal
|
|
98
108
|
*/
|
|
99
109
|
function shimKeyData(data) {
|
|
100
110
|
const size = Hex.size(data);
|
|
101
|
-
if (size
|
|
111
|
+
if (size === 1 || size === 2 || size === 4)
|
|
102
112
|
return data;
|
|
103
113
|
return Hex.fromNumber(size, { size: 2 });
|
|
104
114
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AccountSimulation.js","sourceRoot":"","sources":["../../src/tempo/AccountSimulation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,oBAAoB,CAAA;AAC7C,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAA;AAC3C,OAAO,KAAK,GAAG,MAAM,gBAAgB,CAAA;AAErC,OAAO,KAAK,GAAG,MAAM,gBAAgB,CAAA;AACrC,OAAO,KAAK,aAAa,MAAM,oBAAoB,CAAA;
|
|
1
|
+
{"version":3,"file":"AccountSimulation.js","sourceRoot":"","sources":["../../src/tempo/AccountSimulation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,oBAAoB,CAAA;AAC7C,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAA;AAC3C,OAAO,KAAK,GAAG,MAAM,gBAAgB,CAAA;AAErC,OAAO,KAAK,GAAG,MAAM,gBAAgB,CAAA;AACrC,OAAO,KAAK,aAAa,MAAM,oBAAoB,CAAA;AAuCnD;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,OAAO,CAAC,IAAS;IAC/B,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAA;IAC1C,eAAe,CAAC,SAAS,CAAC,CAAA;IAC1B,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;IAChD,OAAO;QACL,SAAS;QACT,MAAM,EAAE,iBAAiB,CAAC,MAAM,CAAC;QACjC,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC5C,CAAA;AACH,CAAC;AAcD;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,KAAK,CAAC,IAAU;IAC9B,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAA;IAC1C,eAAe,CAAC,SAAS,CAAC,CAAA;IAC1B,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;IAChD,OAAO;QACL,SAAS,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;YACzD,GAAG,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACnE,GAAG,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7C,KAAK;SACN,CAAC,CAAC;QACH,MAAM,EAAE,eAAe,CAAC,MAAM,CAAC;QAC/B,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC5C,CAAA;AACH,CAAC;AAaD,gBAAgB;AAChB,SAAS,eAAe,CAAC,SAA6B;IACpD,IACE,SAAS,CAAC,IAAI,CACZ,CAAC,QAAQ,EAAE,EAAE,CACX,OAAO,QAAQ,KAAK,QAAQ;QAC5B,QAAQ,KAAK,IAAI;QACjB,MAAM,IAAI,QAAQ;QAClB,MAAM,IAAI,QAAQ,CACrB;QAED,MAAM,IAAI,sBAAsB,CAAC;YAC/B,MAAM,EAAE,qDAAqD;SAC9D,CAAC,CAAA;IACJ,IAAI,SAAS,CAAC,MAAM,GAAG,aAAa,CAAC,aAAa;QAChD,MAAM,IAAI,sBAAsB,CAAC;YAC/B,MAAM,EAAE,0BAA0B,aAAa,CAAC,aAAa,EAAE;SAChE,CAAC,CAAA;AACN,CAAC;AAED,gBAAgB;AAChB,SAAS,iBAAiB,CAAC,MAAe;IACxC,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;IAC/B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAC7C,MAAM,IAAI,sBAAsB,CAAC,EAAE,MAAM,EAAE,yBAAyB,EAAE,CAAC,CAAA;IACzE,MAAM,CAAC,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,GAAG,KAAK,CAAA;IAChD,IACE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;QACnB,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;QACrB,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;QACtB,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC;QACrB,CAAC,OAAO,KAAK,IAAI,IAAI,GAAG,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,MAAM,CAAC;QACzD,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC;QACxB,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC;QACvB,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;QACtB,MAAM,CAAC,IAAI,CACT,CAAC,KAAK,EAAE,EAAE,CACR,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;YACrB,KAAK,CAAC,MAAM,KAAK,CAAC;YAClB,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC;YACzB,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAC3B,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAY,CAAC,GAAG,CAAC,CACpC;QAED,MAAM,IAAI,sBAAsB,CAAC,EAAE,MAAM,EAAE,yBAAyB,EAAE,CAAC,CAAA;IACzE,MAAM,KAAK,GAAG,aAAa,CAAC,SAAS,CAAC,KAAuC,CAAC,CAAA;IAC9E,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;IAC3B,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,eAAe,CAAC,KAAK,CAAC,CAAC;QAC9C,MAAM,IAAI,sBAAsB,CAAC,EAAE,MAAM,EAAE,8BAA8B,EAAE,CAAC,CAAA;IAC9E,OAAO,KAAK,CAAA;AACd,CAAC;AAED,gBAAgB;AAChB,SAAS,eAAe,CAAC,MAA2B;IAClD,OAAO,GAAG,CAAC,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAA;AACnD,CAAC;AAED;;;;GAIG;AACH,SAAS,WAAW,CAAC,IAAa;IAChC,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAC3B,IAAI,IAAI,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC;QAAE,OAAO,IAAI,CAAA;IACvD,OAAO,GAAG,CAAC,UAAU,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAA;AAC1C,CAAC;AAED,yDAAyD;AACzD,MAAM,OAAO,sBAAuB,SAAQ,MAAM,CAAC,SAAS;IACxC,IAAI,GAAG,0CAA0C,CAAA;IACnE,YAAY,OAAuC;QACjD,KAAK,CAAC,+BAA+B,OAAO,CAAC,MAAM,GAAG,CAAC,CAAA;IACzD,CAAC;CACF"}
|
|
@@ -27,7 +27,7 @@ import * as SignatureEnvelope from './SignatureEnvelope.js';
|
|
|
27
27
|
* [Access Keys Specification](https://docs.tempo.xyz/protocol/transactions/spec-tempo-transaction#access-keys)
|
|
28
28
|
*/
|
|
29
29
|
export type KeyAuthorization<signed extends boolean = boolean, bigintType = bigint, numberType = number> = {
|
|
30
|
-
/** Account address this authorization is bound to. Required
|
|
30
|
+
/** Account address this authorization is bound to. Required when an admin access key signs the grant (TIP-1049). */
|
|
31
31
|
account?: Address.Address | undefined;
|
|
32
32
|
/** Address derived from the public key of the key type. */
|
|
33
33
|
address: Address.Address;
|
|
@@ -90,8 +90,8 @@ export type Rpc = {
|
|
|
90
90
|
isAdmin?: boolean | null | undefined;
|
|
91
91
|
/** Key identifier. */
|
|
92
92
|
keyId: Address.Address;
|
|
93
|
-
/** Key type. Configurable accounts use the node's `
|
|
94
|
-
keyType: SignatureEnvelope.Type | '
|
|
93
|
+
/** Key type. Configurable accounts use the node's `configurableAccount` key type. */
|
|
94
|
+
keyType: SignatureEnvelope.Type | 'configurableAccount';
|
|
95
95
|
/** Token spending limits (`null`/`undefined` = unlimited, `[]` = no spending allowed). */
|
|
96
96
|
limits?: readonly RpcTokenLimit[] | null | undefined;
|
|
97
97
|
/** Primitive or configurable account signature authorizing this key. */
|
|
@@ -384,7 +384,7 @@ export declare namespace from {
|
|
|
384
384
|
type ReturnType<authorization extends KeyAuthorization | Input | Rpc = KeyAuthorization, signature extends SignatureValue | undefined = SignatureValue | undefined> = Compute<authorization extends Rpc ? Signed : authorization & (signature extends SignatureValue ? {
|
|
385
385
|
signature: Extract<SignatureEnvelope.from.ReturnValue<signature>, SignatureEnvelope.Primitive | SignatureEnvelope.Configurable>;
|
|
386
386
|
} : {})>;
|
|
387
|
-
type ErrorType = InvalidSignatureTypeError |
|
|
387
|
+
type ErrorType = InvalidSignatureTypeError | Errors.GlobalErrorType;
|
|
388
388
|
}
|
|
389
389
|
/**
|
|
390
390
|
* Converts an {@link ox#AuthorizationTempo.Rpc} to an {@link ox#AuthorizationTempo.AuthorizationTempo}.
|
|
@@ -418,7 +418,7 @@ export declare namespace from {
|
|
|
418
418
|
*/
|
|
419
419
|
export declare function fromRpc(authorization: Rpc): Signed;
|
|
420
420
|
export declare namespace fromRpc {
|
|
421
|
-
type ErrorType = InvalidSignatureTypeError |
|
|
421
|
+
type ErrorType = InvalidSignatureTypeError | Errors.GlobalErrorType;
|
|
422
422
|
}
|
|
423
423
|
/**
|
|
424
424
|
* Converts an {@link ox#KeyAuthorization.Tuple} to an {@link ox#KeyAuthorization.KeyAuthorization}.
|
|
@@ -472,7 +472,7 @@ export declare namespace fromRpc {
|
|
|
472
472
|
export declare function fromTuple<const tuple extends Tuple>(tuple: tuple): fromTuple.ReturnType<tuple>;
|
|
473
473
|
export declare namespace fromTuple {
|
|
474
474
|
type ReturnType<authorization extends Tuple = Tuple> = Compute<KeyAuthorization<authorization extends Tuple<true> ? true : false>>;
|
|
475
|
-
type ErrorType = InvalidSignatureTypeError |
|
|
475
|
+
type ErrorType = InvalidSignatureTypeError | Errors.GlobalErrorType;
|
|
476
476
|
}
|
|
477
477
|
/**
|
|
478
478
|
* Computes the sign payload for an {@link ox#KeyAuthorization.KeyAuthorization}.
|
|
@@ -649,7 +649,7 @@ export declare function toRpc(authorization: toRpc.Input): Rpc;
|
|
|
649
649
|
export declare namespace toRpc {
|
|
650
650
|
/** Numberish input accepted by {@link ox#KeyAuthorization.(toRpc:function)}. */
|
|
651
651
|
type Input = Signed<Hex.Hex | bigint | number, Hex.Hex | number>;
|
|
652
|
-
type ErrorType = InvalidSignatureTypeError |
|
|
652
|
+
type ErrorType = InvalidSignatureTypeError | Errors.GlobalErrorType;
|
|
653
653
|
}
|
|
654
654
|
/**
|
|
655
655
|
* Converts an {@link ox#KeyAuthorization.KeyAuthorization} to an {@link ox#KeyAuthorization.Tuple}.
|
|
@@ -687,7 +687,7 @@ export declare namespace toRpc {
|
|
|
687
687
|
export declare function toTuple<const authorization extends KeyAuthorization>(authorization: authorization): toTuple.ReturnType<authorization>;
|
|
688
688
|
export declare namespace toTuple {
|
|
689
689
|
type ReturnType<authorization extends KeyAuthorization = KeyAuthorization> = Compute<Tuple<authorization extends KeyAuthorization<true> ? true : false>>;
|
|
690
|
-
type ErrorType = InvalidSignatureTypeError |
|
|
690
|
+
type ErrorType = InvalidSignatureTypeError | Errors.GlobalErrorType;
|
|
691
691
|
}
|
|
692
692
|
/** Thrown when a `witness` field is not exactly 32 bytes. */
|
|
693
693
|
export declare class InvalidWitnessSizeError extends Error {
|
|
@@ -704,7 +704,12 @@ export declare class InvalidSignatureTypeError extends Error {
|
|
|
704
704
|
readonly name = "KeyAuthorization.InvalidSignatureTypeError";
|
|
705
705
|
constructor(type: SignatureEnvelope.SignatureEnvelope['type']);
|
|
706
706
|
}
|
|
707
|
-
/**
|
|
707
|
+
/**
|
|
708
|
+
* Thrown when a configurable account key grant omits its parent account binding.
|
|
709
|
+
*
|
|
710
|
+
* @deprecated No longer thrown. The Tempo node only requires `account` on grants
|
|
711
|
+
* signed by an admin access key, which it checks against the transaction sender.
|
|
712
|
+
*/
|
|
708
713
|
export declare class MissingAccountError extends Error {
|
|
709
714
|
readonly name = "KeyAuthorization.MissingAccountError";
|
|
710
715
|
constructor();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"KeyAuthorization.d.ts","sourceRoot":"","sources":["../../src/tempo/KeyAuthorization.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,OAAO,MAAM,oBAAoB,CAAA;AAClD,OAAO,KAAK,KAAK,MAAM,MAAM,mBAAmB,CAAA;AAChD,OAAO,KAAK,IAAI,MAAM,iBAAiB,CAAA;AACvC,OAAO,KAAK,GAAG,MAAM,gBAAgB,CAAA;AAErC,OAAO,KAAK,EACV,OAAO,EACP,SAAS,EACT,cAAc,EACf,MAAM,2BAA2B,CAAA;AAClC,OAAO,KAAK,GAAG,MAAM,gBAAgB,CAAA;AACrC,OAAO,KAAK,iBAAiB,MAAM,wBAAwB,CAAA;AAE3D;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,MAAM,gBAAgB,CAC1B,MAAM,SAAS,OAAO,GAAG,OAAO,EAChC,UAAU,GAAG,MAAM,EACnB,UAAU,GAAG,MAAM,IACjB;IACF,
|
|
1
|
+
{"version":3,"file":"KeyAuthorization.d.ts","sourceRoot":"","sources":["../../src/tempo/KeyAuthorization.ts"],"names":[],"mappings":"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"}
|
|
@@ -164,7 +164,6 @@ import * as SignatureEnvelope from './SignatureEnvelope.js';
|
|
|
164
164
|
export function from(authorization, options = {}) {
|
|
165
165
|
if ('keyId' in authorization)
|
|
166
166
|
return fromRpc(authorization);
|
|
167
|
-
assertAccountBinding(authorization.type, authorization.account);
|
|
168
167
|
const auth = authorization;
|
|
169
168
|
if (auth.witness !== undefined)
|
|
170
169
|
assertWitness(auth.witness);
|
|
@@ -226,8 +225,7 @@ export function fromRpc(authorization) {
|
|
|
226
225
|
const witness = authorization.witness ?? undefined;
|
|
227
226
|
const isAdmin = authorization.isAdmin ?? undefined;
|
|
228
227
|
const account = authorization.account ?? undefined;
|
|
229
|
-
const type = keyType === '
|
|
230
|
-
assertAccountBinding(type, account);
|
|
228
|
+
const type = keyType === 'configurableAccount' ? 'configurable' : keyType;
|
|
231
229
|
const signature = SignatureEnvelope.fromRpc(authorization.signature);
|
|
232
230
|
assertSignature(signature);
|
|
233
231
|
if (witness !== undefined)
|
|
@@ -385,7 +383,6 @@ export function fromTuple(tuple) {
|
|
|
385
383
|
const account = isAbsent(rawAccount)
|
|
386
384
|
? undefined
|
|
387
385
|
: rawAccount;
|
|
388
|
-
assertAccountBinding(keyType, account);
|
|
389
386
|
const args = {
|
|
390
387
|
address: keyId,
|
|
391
388
|
chainId: chainId === '0x' ? 0n : Hex.toBigInt(chainId),
|
|
@@ -576,7 +573,6 @@ export function serialize(authorization) {
|
|
|
576
573
|
* @returns An RPC-formatted Key Authorization.
|
|
577
574
|
*/
|
|
578
575
|
export function toRpc(authorization) {
|
|
579
|
-
assertAccountBinding(authorization.type, authorization.account);
|
|
580
576
|
const { address, scopes, chainId, expiry, limits, type, signature, witness, isAdmin, account, } = authorization;
|
|
581
577
|
assertSignature(signature);
|
|
582
578
|
if (witness !== undefined)
|
|
@@ -609,7 +605,7 @@ export function toRpc(authorization) {
|
|
|
609
605
|
chainId: chainIdHex === '0x0' ? '0x' : chainIdHex,
|
|
610
606
|
expiry: expiry != null ? Quantity.fromNumberish(expiry) : null,
|
|
611
607
|
keyId: address,
|
|
612
|
-
keyType: type === 'configurable' ? '
|
|
608
|
+
keyType: type === 'configurable' ? 'configurableAccount' : type,
|
|
613
609
|
limits: limits?.map(({ token, limit, period }) => ({
|
|
614
610
|
token,
|
|
615
611
|
limit: Quantity.fromNumberish(limit),
|
|
@@ -656,7 +652,6 @@ export function toRpc(authorization) {
|
|
|
656
652
|
* @returns A Tempo Key Authorization tuple.
|
|
657
653
|
*/
|
|
658
654
|
export function toTuple(authorization) {
|
|
659
|
-
assertAccountBinding(authorization.type, authorization.account);
|
|
660
655
|
const { address, chainId, scopes, expiry, limits, witness, isAdmin, account, } = authorization;
|
|
661
656
|
if (witness !== undefined)
|
|
662
657
|
assertWitness(witness);
|
|
@@ -777,10 +772,6 @@ function resolveSelector(selector) {
|
|
|
777
772
|
return selector;
|
|
778
773
|
return AbiItem.getSelector(selector);
|
|
779
774
|
}
|
|
780
|
-
function assertAccountBinding(type, account) {
|
|
781
|
-
if (type === 'configurable' && account == null)
|
|
782
|
-
throw new MissingAccountError();
|
|
783
|
-
}
|
|
784
775
|
function assertWitness(witness) {
|
|
785
776
|
if (Hex.size(witness) !== 32)
|
|
786
777
|
throw new InvalidWitnessSizeError(witness);
|
|
@@ -813,7 +804,12 @@ export class InvalidSignatureTypeError extends Error {
|
|
|
813
804
|
super(`Signature type \`${type}\` is invalid for key authorizations; expected \`secp256k1\`, \`p256\`, \`webAuthn\`, or \`configurable\`.`);
|
|
814
805
|
}
|
|
815
806
|
}
|
|
816
|
-
/**
|
|
807
|
+
/**
|
|
808
|
+
* Thrown when a configurable account key grant omits its parent account binding.
|
|
809
|
+
*
|
|
810
|
+
* @deprecated No longer thrown. The Tempo node only requires `account` on grants
|
|
811
|
+
* signed by an admin access key, which it checks against the transaction sender.
|
|
812
|
+
*/
|
|
817
813
|
export class MissingAccountError extends Error {
|
|
818
814
|
name = 'KeyAuthorization.MissingAccountError';
|
|
819
815
|
constructor() {
|