viem 3.0.0-next.13 → 3.0.0-next.14
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/chains/definitions/arcTestnet.d.ts +5 -5
- package/dist/chains/definitions/arcTestnet.d.ts.map +1 -1
- package/dist/chains/definitions/arcTestnet.js +11 -8
- package/dist/chains/definitions/arcTestnet.js.map +1 -1
- package/dist/chains/definitions/qmsTestnet.d.ts +27 -0
- package/dist/chains/definitions/qmsTestnet.d.ts.map +1 -0
- package/dist/chains/definitions/qmsTestnet.js +23 -0
- package/dist/chains/definitions/qmsTestnet.js.map +1 -0
- package/dist/chains/definitions/tempo.d.ts +1 -1
- package/dist/chains/definitions/tempo.js +1 -1
- package/dist/chains/definitions/tempoModerato.d.ts +2 -2
- package/dist/chains/definitions/tempoModerato.js +2 -2
- package/dist/chains/index.d.ts +1 -0
- package/dist/chains/index.d.ts.map +1 -1
- package/dist/chains/index.js +1 -0
- package/dist/chains/index.js.map +1 -1
- package/dist/core/actions/transaction/waitForReceipt.d.ts +1 -1
- package/dist/core/actions/transaction/waitForReceipt.d.ts.map +1 -1
- package/dist/core/actions/transaction/waitForReceipt.js +5 -2
- package/dist/core/actions/transaction/waitForReceipt.js.map +1 -1
- package/dist/core/actions/wallet/waitForCallsStatus.d.ts.map +1 -1
- package/dist/core/actions/wallet/waitForCallsStatus.js +24 -1
- package/dist/core/actions/wallet/waitForCallsStatus.js.map +1 -1
- package/dist/internal/inference.d.ts +3 -3
- package/dist/internal/inference.d.ts.map +1 -1
- package/dist/tempo/Abis.d.ts +1935 -899
- package/dist/tempo/Abis.d.ts.map +1 -1
- package/dist/tempo/Abis.js +215 -0
- package/dist/tempo/Abis.js.map +1 -1
- package/dist/tempo/Account.d.ts +30 -30
- package/dist/tempo/Account.d.ts.map +1 -1
- package/dist/tempo/Account.js +43 -43
- package/dist/tempo/Account.js.map +1 -1
- package/dist/tempo/Addresses.d.ts +2 -0
- package/dist/tempo/Addresses.d.ts.map +1 -1
- package/dist/tempo/Addresses.js +2 -0
- package/dist/tempo/Addresses.js.map +1 -1
- package/dist/tempo/Decorator.d.ts +33 -10
- package/dist/tempo/Decorator.d.ts.map +1 -1
- package/dist/tempo/Decorator.js +9 -8
- package/dist/tempo/Decorator.js.map +1 -1
- package/dist/tempo/ExecutionError.js +1 -1
- package/dist/tempo/ExecutionError.js.map +1 -1
- package/dist/tempo/KeyAuthorizationManager.d.ts +24 -13
- package/dist/tempo/KeyAuthorizationManager.d.ts.map +1 -1
- package/dist/tempo/KeyAuthorizationManager.js +44 -25
- package/dist/tempo/KeyAuthorizationManager.js.map +1 -1
- package/dist/tempo/Relay.d.ts +61 -12
- package/dist/tempo/Relay.d.ts.map +1 -1
- package/dist/tempo/Relay.js +48 -8
- package/dist/tempo/Relay.js.map +1 -1
- package/dist/tempo/Selectors.d.ts +12 -0
- package/dist/tempo/Selectors.d.ts.map +1 -1
- package/dist/tempo/Selectors.js +12 -0
- package/dist/tempo/Selectors.js.map +1 -1
- package/dist/tempo/Transport.d.ts +19 -6
- package/dist/tempo/Transport.d.ts.map +1 -1
- package/dist/tempo/Transport.js +18 -12
- package/dist/tempo/Transport.js.map +1 -1
- package/dist/tempo/{multisig → accounts}/Config.d.ts +8 -8
- package/dist/tempo/accounts/Config.d.ts.map +1 -0
- package/dist/tempo/{multisig → accounts}/Config.js +14 -14
- package/dist/tempo/{multisig → accounts}/Config.js.map +1 -1
- package/dist/tempo/{multisig → accounts}/Operation.d.ts +8 -8
- package/dist/tempo/{multisig → accounts}/Operation.d.ts.map +1 -1
- package/dist/tempo/{multisig → accounts}/Operation.js +17 -17
- package/dist/tempo/{multisig → accounts}/Operation.js.map +1 -1
- package/dist/tempo/{multisig → accounts}/Signature.d.ts +1 -1
- package/dist/tempo/accounts/Signature.d.ts.map +1 -0
- package/dist/tempo/accounts/Signature.js +9 -0
- package/dist/tempo/accounts/Signature.js.map +1 -0
- package/dist/tempo/actions/accessKey/index.d.ts +1 -0
- package/dist/tempo/actions/accessKey/index.d.ts.map +1 -1
- package/dist/tempo/actions/accessKey/index.js +1 -0
- package/dist/tempo/actions/accessKey/index.js.map +1 -1
- package/dist/tempo/actions/accessKey/prepareAuthorization.d.ts +4 -4
- package/dist/tempo/actions/accessKey/prepareAuthorization.d.ts.map +1 -1
- package/dist/tempo/actions/accessKey/prepareAuthorization.js +10 -10
- package/dist/tempo/actions/accessKey/prepareAuthorization.js.map +1 -1
- package/dist/tempo/actions/accessKey/saveAuthorization.d.ts +40 -0
- package/dist/tempo/actions/accessKey/saveAuthorization.d.ts.map +1 -0
- package/dist/tempo/actions/accessKey/saveAuthorization.js +32 -0
- package/dist/tempo/actions/accessKey/saveAuthorization.js.map +1 -0
- package/dist/tempo/actions/accessKey/signAuthorization.d.ts +17 -13
- package/dist/tempo/actions/accessKey/signAuthorization.d.ts.map +1 -1
- package/dist/tempo/actions/accessKey/signAuthorization.js +43 -30
- package/dist/tempo/actions/accessKey/signAuthorization.js.map +1 -1
- package/dist/tempo/actions/{multisig → accounts}/getConfig.d.ts +5 -5
- package/dist/tempo/actions/accounts/getConfig.d.ts.map +1 -0
- package/dist/tempo/actions/{multisig → accounts}/getConfig.js +5 -5
- package/dist/tempo/actions/accounts/getConfig.js.map +1 -0
- package/dist/tempo/actions/{multisig → accounts}/getConfigCommitment.d.ts +3 -3
- package/dist/tempo/actions/{multisig → accounts}/getConfigCommitment.d.ts.map +1 -1
- package/dist/tempo/actions/{multisig → accounts}/getConfigCommitment.js +2 -2
- package/dist/tempo/actions/{multisig → accounts}/getConfigCommitment.js.map +1 -1
- package/dist/tempo/actions/{multisig → accounts}/getOperation.d.ts +4 -4
- package/dist/tempo/actions/{multisig → accounts}/getOperation.d.ts.map +1 -1
- package/dist/tempo/actions/{multisig → accounts}/getOperation.js +4 -4
- package/dist/tempo/actions/accounts/getOperation.js.map +1 -0
- package/dist/tempo/actions/{multisig → accounts}/index.d.ts.map +1 -1
- package/dist/tempo/actions/{multisig → accounts}/index.js.map +1 -1
- package/dist/tempo/actions/{multisig → accounts}/updateConfig.d.ts +12 -12
- package/dist/tempo/actions/{multisig → accounts}/updateConfig.d.ts.map +1 -1
- package/dist/tempo/actions/{multisig → accounts}/updateConfig.js +16 -21
- package/dist/tempo/actions/{multisig → accounts}/updateConfig.js.map +1 -1
- package/dist/tempo/actions/{multisig → accounts}/updateConfigSync.d.ts +6 -6
- package/dist/tempo/actions/{multisig → accounts}/updateConfigSync.d.ts.map +1 -1
- package/dist/tempo/actions/{multisig → accounts}/updateConfigSync.js +6 -6
- package/dist/tempo/actions/{multisig → accounts}/updateConfigSync.js.map +1 -1
- package/dist/tempo/actions/index.d.ts +2 -2
- package/dist/tempo/actions/index.d.ts.map +1 -1
- package/dist/tempo/actions/index.js +2 -2
- package/dist/tempo/actions/index.js.map +1 -1
- package/dist/tempo/chainConfig.d.ts +16 -16
- package/dist/tempo/chainConfig.d.ts.map +1 -1
- package/dist/tempo/chainConfig.js +52 -52
- package/dist/tempo/chainConfig.js.map +1 -1
- package/dist/tempo/index.d.ts +2 -2
- package/dist/tempo/index.d.ts.map +1 -1
- package/dist/tempo/index.js +2 -2
- package/dist/tempo/index.js.map +1 -1
- package/dist/tempo/internal/relay/accounts.d.ts +15 -0
- package/dist/tempo/internal/relay/accounts.d.ts.map +1 -0
- package/dist/tempo/internal/relay/{multisig.js → accounts.js} +96 -101
- package/dist/tempo/internal/relay/accounts.js.map +1 -0
- package/dist/tempo/internal/relay/feePayer.js +5 -5
- package/dist/tempo/internal/relay/feePayer.js.map +1 -1
- package/dist/tempo/internal/relay/keyAuthorization.d.ts +25 -0
- package/dist/tempo/internal/relay/keyAuthorization.d.ts.map +1 -0
- package/dist/tempo/internal/relay/keyAuthorization.js +339 -0
- package/dist/tempo/internal/relay/keyAuthorization.js.map +1 -0
- package/dist/tempo/internal/relay/plugin.d.ts +6 -3
- package/dist/tempo/internal/relay/plugin.d.ts.map +1 -1
- package/dist/tempo/internal/relay/plugin.js +15 -6
- package/dist/tempo/internal/relay/plugin.js.map +1 -1
- package/dist/tempo/internal/relay/utils.d.ts +8 -0
- package/dist/tempo/internal/relay/utils.d.ts.map +1 -1
- package/dist/utils/RpcClient.d.ts.map +1 -1
- package/dist/utils/RpcClient.js +36 -19
- package/dist/utils/RpcClient.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +2 -2
- package/src/chains/definitions/arcTestnet.ts +11 -8
- package/src/chains/definitions/qmsTestnet.ts +23 -0
- package/src/chains/definitions/tempo.ts +1 -1
- package/src/chains/definitions/tempoModerato.ts +2 -2
- package/src/chains/index.ts +1 -0
- package/src/core/actions/transaction/waitForReceipt.ts +5 -3
- package/src/core/actions/wallet/waitForCallsStatus.ts +25 -1
- package/src/internal/inference.ts +3 -3
- package/src/tempo/Abis.ts +216 -0
- package/src/tempo/Account.ts +97 -87
- package/src/tempo/Addresses.ts +2 -0
- package/src/tempo/Decorator.ts +55 -28
- package/src/tempo/ExecutionError.ts +1 -1
- package/src/tempo/KeyAuthorizationManager.ts +53 -31
- package/src/tempo/Relay.ts +69 -14
- package/src/tempo/Selectors.ts +13 -0
- package/src/tempo/Transport.ts +46 -20
- package/src/tempo/{multisig → accounts}/Config.ts +21 -21
- package/src/tempo/{multisig → accounts}/Operation.ts +26 -26
- package/src/tempo/{multisig → accounts}/Signature.ts +5 -3
- package/src/tempo/actions/accessKey/index.ts +1 -0
- package/src/tempo/actions/accessKey/prepareAuthorization.ts +16 -15
- package/src/tempo/actions/accessKey/saveAuthorization.ts +51 -0
- package/src/tempo/actions/accessKey/signAuthorization.ts +73 -51
- package/src/tempo/actions/{multisig → accounts}/getConfig.ts +7 -7
- package/src/tempo/actions/{multisig → accounts}/getConfigCommitment.ts +3 -3
- package/src/tempo/actions/{multisig → accounts}/getOperation.ts +6 -6
- package/src/tempo/actions/{multisig → accounts}/updateConfig.ts +21 -26
- package/src/tempo/actions/{multisig → accounts}/updateConfigSync.ts +7 -7
- package/src/tempo/actions/index.ts +2 -3
- package/src/tempo/chainConfig.ts +87 -85
- package/src/tempo/index.ts +4 -4
- package/src/tempo/internal/relay/{multisig.ts → accounts.ts} +121 -121
- package/src/tempo/internal/relay/feePayer.ts +5 -5
- package/src/tempo/internal/relay/keyAuthorization.ts +419 -0
- package/src/tempo/internal/relay/plugin.ts +20 -7
- package/src/utils/RpcClient.ts +38 -21
- package/src/version.ts +1 -1
- package/dist/tempo/actions/multisig/getConfig.d.ts.map +0 -1
- package/dist/tempo/actions/multisig/getConfig.js.map +0 -1
- package/dist/tempo/actions/multisig/getOperation.js.map +0 -1
- package/dist/tempo/internal/relay/multisig.d.ts +0 -4
- package/dist/tempo/internal/relay/multisig.d.ts.map +0 -1
- package/dist/tempo/internal/relay/multisig.js.map +0 -1
- package/dist/tempo/multisig/Config.d.ts.map +0 -1
- package/dist/tempo/multisig/Signature.d.ts.map +0 -1
- package/dist/tempo/multisig/Signature.js +0 -9
- package/dist/tempo/multisig/Signature.js.map +0 -1
- /package/dist/tempo/actions/{multisig → accounts}/index.d.ts +0 -0
- /package/dist/tempo/actions/{multisig → accounts}/index.js +0 -0
- /package/src/tempo/actions/{multisig → accounts}/index.ts +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Transport.js","sourceRoot":"","sources":["../../src/tempo/Transport.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAE1C,OAAO,EAAE,WAAW,EAAE,MAAM,IAAI,CAAA;AAChC,OAAO,KAAK,SAAS,MAAM,sBAAsB,CAAA;AACjD,OAAO,EAAE,IAAI,IAAI,KAAK,EAAE,MAAM,4BAA4B,CAAA;AAC1D,OAAO,KAAK,MAAM,MAAM,4BAA4B,CAAA;AACpD,OAAO,KAAK,OAAO,MAAM,6BAA6B,CAAA;AAEtD,OAAO,KAAK,KAAK,MAAM,YAAY,CAAA;
|
|
1
|
+
{"version":3,"file":"Transport.js","sourceRoot":"","sources":["../../src/tempo/Transport.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,33 +1,33 @@
|
|
|
1
1
|
import type { Hex } from 'ox';
|
|
2
2
|
import { Address } from 'ox';
|
|
3
|
-
import {
|
|
3
|
+
import { AccountConfig } from 'ox/tempo';
|
|
4
4
|
import { BaseError } from '../../core/Errors.js';
|
|
5
5
|
import type * as Store from '../Store.js';
|
|
6
|
-
/** Reads a cached
|
|
7
|
-
export declare function read(store: Store.Store, options: read.Options): Promise<
|
|
6
|
+
/** Reads a cached account config. */
|
|
7
|
+
export declare function read(store: Store.Store, options: read.Options): Promise<AccountConfig.Config | null>;
|
|
8
8
|
export declare namespace read {
|
|
9
9
|
/** Parameters for {@link read}. */
|
|
10
10
|
type Options = {
|
|
11
|
-
/**
|
|
11
|
+
/** Configurable account address. */
|
|
12
12
|
address: Address.Address;
|
|
13
13
|
/** Config commitment observed onchain. */
|
|
14
14
|
commitment: Hex.Hex;
|
|
15
15
|
};
|
|
16
16
|
}
|
|
17
|
-
/** Writes a validated
|
|
17
|
+
/** Writes a validated account config. */
|
|
18
18
|
export declare function write(store: Store.Store, options: write.Options): Promise<void>;
|
|
19
19
|
export declare namespace write {
|
|
20
20
|
/** Parameters for {@link write}. */
|
|
21
21
|
type Options = {
|
|
22
|
-
/**
|
|
22
|
+
/** Configurable account address. */
|
|
23
23
|
address: Address.Address;
|
|
24
24
|
/** Config commitment used for lookup. */
|
|
25
25
|
commitment: Hex.Hex;
|
|
26
26
|
/** Complete config. */
|
|
27
|
-
config:
|
|
27
|
+
config: AccountConfig.Config;
|
|
28
28
|
};
|
|
29
29
|
}
|
|
30
|
-
/** Thrown when a stored
|
|
30
|
+
/** Thrown when a stored account config is malformed or mismatched. */
|
|
31
31
|
export declare class InvalidStoreValueError extends BaseError<Error | undefined> {
|
|
32
32
|
name: string;
|
|
33
33
|
/** Creates an invalid store value error. */
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Config.d.ts","sourceRoot":"","sources":["../../../src/tempo/accounts/Config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,IAAI,CAAA;AAC7B,OAAO,EAAE,OAAO,EAAc,MAAM,IAAI,CAAA;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAA;AAEhD,OAAO,KAAK,KAAK,KAAK,MAAM,aAAa,CAAA;AAQzC,qCAAqC;AACrC,wBAAsB,IAAI,CACxB,KAAK,EAAE,KAAK,CAAC,KAAK,EAClB,OAAO,EAAE,IAAI,CAAC,OAAO,GACpB,OAAO,CAAC,aAAa,CAAC,MAAM,GAAG,IAAI,CAAC,CAOtC;AAED,MAAM,CAAC,OAAO,WAAW,IAAI,CAAC;IAC5B,mCAAmC;IACnC,KAAY,OAAO,GAAG;QACpB,oCAAoC;QACpC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAA;QACxB,0CAA0C;QAC1C,UAAU,EAAE,GAAG,CAAC,GAAG,CAAA;KACpB,CAAA;CACF;AAED,yCAAyC;AACzC,wBAAsB,KAAK,CACzB,KAAK,EAAE,KAAK,CAAC,KAAK,EAClB,OAAO,EAAE,KAAK,CAAC,OAAO,GACrB,OAAO,CAAC,IAAI,CAAC,CAYf;AAED,MAAM,CAAC,OAAO,WAAW,KAAK,CAAC;IAC7B,oCAAoC;IACpC,KAAY,OAAO,GAAG;QACpB,oCAAoC;QACpC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAA;QACxB,yCAAyC;QACzC,UAAU,EAAE,GAAG,CAAC,GAAG,CAAA;QACnB,uBAAuB;QACvB,MAAM,EAAE,aAAa,CAAC,MAAM,CAAA;KAC7B,CAAA;CACF;AAyDD,sEAAsE;AACtE,qBAAa,sBAAuB,SAAQ,SAAS,CAAC,KAAK,GAAG,SAAS,CAAC;IAC7D,IAAI,SAA2C;IACxD,4CAA4C;IAC5C,YAAY,OAAO,GAAE,sBAAsB,CAAC,OAAY,EAIvD;CACF;AAED,MAAM,CAAC,OAAO,WAAW,sBAAsB,CAAC;IAC9C,kCAAkC;IAClC,KAAY,OAAO,GAAG;QACpB,wBAAwB;QACxB,KAAK,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;KAC5B,CAAA;CACF"}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { Address, Hash, Json } from 'ox';
|
|
2
|
-
import {
|
|
2
|
+
import { AccountConfig } from 'ox/tempo';
|
|
3
3
|
import { BaseError } from '../../core/Errors.js';
|
|
4
4
|
import { nativeMultisigFactory } from '../Addresses.js';
|
|
5
5
|
/** A valid 48-owner config is much smaller; 64 KiB bounds hostile store parsing work. */
|
|
6
6
|
const maxStoredValueLength = 65_536;
|
|
7
7
|
/** Zero commitment used before an account is initialized. */
|
|
8
8
|
const zeroCommitment = `0x${'00'.repeat(32)}`;
|
|
9
|
-
/** Reads a cached
|
|
9
|
+
/** Reads a cached account config. */
|
|
10
10
|
export async function read(store, options) {
|
|
11
11
|
const { address, commitment } = options;
|
|
12
12
|
const value = await store.getItem(key({ address, commitment }));
|
|
@@ -16,16 +16,16 @@ export async function read(store, options) {
|
|
|
16
16
|
assertKey({ address, commitment, config });
|
|
17
17
|
return config;
|
|
18
18
|
}
|
|
19
|
-
/** Writes a validated
|
|
19
|
+
/** Writes a validated account config. */
|
|
20
20
|
export async function write(store, options) {
|
|
21
21
|
const { address, commitment } = options;
|
|
22
|
-
const config =
|
|
22
|
+
const config = AccountConfig.from(options.config);
|
|
23
23
|
assertKey({ address, commitment, config });
|
|
24
24
|
const value = serialize(config);
|
|
25
25
|
await store.setItem(key({ address, commitment }), value);
|
|
26
26
|
// Initialization commits the version-zero config without changing its version.
|
|
27
27
|
if (commitment.toLowerCase() === zeroCommitment)
|
|
28
|
-
await store.setItem(key({ address, commitment:
|
|
28
|
+
await store.setItem(key({ address, commitment: AccountConfig.getCommitment(config) }), value);
|
|
29
29
|
}
|
|
30
30
|
/** Verifies that a config matches its account-and-commitment key. */
|
|
31
31
|
function assertKey(options) {
|
|
@@ -33,21 +33,21 @@ function assertKey(options) {
|
|
|
33
33
|
if (!Address.validate(address) || !Hash.validate(commitment))
|
|
34
34
|
throw new InvalidStoreValueError();
|
|
35
35
|
if (config.version === 0n) {
|
|
36
|
-
if (!Address.isEqual(
|
|
36
|
+
if (!Address.isEqual(AccountConfig.getAddress(config, { factory: nativeMultisigFactory }), address))
|
|
37
37
|
throw new InvalidStoreValueError();
|
|
38
38
|
if (commitment.toLowerCase() === zeroCommitment)
|
|
39
39
|
return;
|
|
40
40
|
}
|
|
41
|
-
if (
|
|
41
|
+
if (AccountConfig.getCommitment(config).toLowerCase() !==
|
|
42
42
|
commitment.toLowerCase())
|
|
43
43
|
throw new InvalidStoreValueError();
|
|
44
44
|
}
|
|
45
|
-
/** Deserializes
|
|
45
|
+
/** Deserializes an account config from storage. */
|
|
46
46
|
function deserialize(value) {
|
|
47
47
|
try {
|
|
48
48
|
if (value.length > maxStoredValueLength)
|
|
49
49
|
throw new InvalidStoreValueError();
|
|
50
|
-
return
|
|
50
|
+
return AccountConfig.fromRpc(Json.parse(value));
|
|
51
51
|
}
|
|
52
52
|
catch (cause) {
|
|
53
53
|
if (cause instanceof InvalidStoreValueError)
|
|
@@ -60,10 +60,10 @@ function key(options) {
|
|
|
60
60
|
const { address, commitment } = options;
|
|
61
61
|
return `multisig:config:${address.toLowerCase()}:${commitment.toLowerCase()}`;
|
|
62
62
|
}
|
|
63
|
-
/** Serializes
|
|
63
|
+
/** Serializes an account config for storage. */
|
|
64
64
|
function serialize(config) {
|
|
65
65
|
try {
|
|
66
|
-
const value = Json.stringify(
|
|
66
|
+
const value = Json.stringify(AccountConfig.toRpc(config));
|
|
67
67
|
if (value.length > maxStoredValueLength)
|
|
68
68
|
throw new InvalidStoreValueError();
|
|
69
69
|
return value;
|
|
@@ -74,18 +74,18 @@ function serialize(config) {
|
|
|
74
74
|
throw new InvalidStoreValueError({ cause });
|
|
75
75
|
}
|
|
76
76
|
}
|
|
77
|
-
/** Thrown when a stored
|
|
77
|
+
/** Thrown when a stored account config is malformed or mismatched. */
|
|
78
78
|
export class InvalidStoreValueError extends BaseError {
|
|
79
79
|
/** Creates an invalid store value error. */
|
|
80
80
|
constructor(options = {}) {
|
|
81
|
-
super('Stored
|
|
81
|
+
super('Stored account config is malformed or mismatched.', {
|
|
82
82
|
cause: options.cause,
|
|
83
83
|
});
|
|
84
84
|
Object.defineProperty(this, "name", {
|
|
85
85
|
enumerable: true,
|
|
86
86
|
configurable: true,
|
|
87
87
|
writable: true,
|
|
88
|
-
value: '
|
|
88
|
+
value: 'Accounts.Config.InvalidStoreValueError'
|
|
89
89
|
});
|
|
90
90
|
}
|
|
91
91
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Config.js","sourceRoot":"","sources":["../../../src/tempo/
|
|
1
|
+
{"version":3,"file":"Config.js","sourceRoot":"","sources":["../../../src/tempo/accounts/Config.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
import type { Hex } from 'ox';
|
|
2
|
-
import {
|
|
2
|
+
import { AccountOperation, TxEnvelopeTempo } from 'ox/tempo';
|
|
3
3
|
import { BaseError } from '../../core/Errors.js';
|
|
4
4
|
import type * as Store from '../Store.js';
|
|
5
|
-
/** Reads a persisted
|
|
6
|
-
export declare function read(store: Store.Store, hash: Hex.Hex): Promise<
|
|
7
|
-
/** Atomically updates
|
|
8
|
-
export declare function update(store: Store.Atomic, hash: Hex.Hex, update: (operation:
|
|
5
|
+
/** Reads a persisted account operation. */
|
|
6
|
+
export declare function read(store: Store.Store, hash: Hex.Hex): Promise<AccountOperation.Operation | null>;
|
|
7
|
+
/** Atomically updates an account operation. */
|
|
8
|
+
export declare function update(store: Store.Atomic, hash: Hex.Hex, update: (operation: AccountOperation.Operation | null) => AccountOperation.Operation | Promise<AccountOperation.Operation>): Promise<AccountOperation.Operation>;
|
|
9
9
|
/** Reads a submission hash without rebuilding its envelope from mutable configurations. */
|
|
10
|
-
export declare function readSubmission(store: Store.Store, operation:
|
|
10
|
+
export declare function readSubmission(store: Store.Store, operation: AccountOperation.TransactionOperation, submissionId: Hex.Hex): Promise<Hex.Hex | null>;
|
|
11
11
|
/** Removes a persisted final envelope after its submission is settled. */
|
|
12
12
|
export declare function removeSubmission(store: Store.Store, hash: Hex.Hex, submissionId: Hex.Hex): Promise<void>;
|
|
13
13
|
/** Persists the final envelope before broadcast so recovery uses the exact transaction. */
|
|
14
14
|
export declare function writeSubmission(store: Store.Atomic, hash: Hex.Hex, submissionId: Hex.Hex, transaction: TxEnvelopeTempo.Serialized): Promise<void>;
|
|
15
|
-
/** Thrown when a stored
|
|
15
|
+
/** Thrown when a stored account operation is malformed or unsupported. */
|
|
16
16
|
export declare class InvalidStoreValueError extends BaseError<Error | undefined> {
|
|
17
17
|
name: string;
|
|
18
18
|
/** Creates an invalid store value error. */
|
|
@@ -25,7 +25,7 @@ export declare namespace InvalidStoreValueError {
|
|
|
25
25
|
cause?: unknown | undefined;
|
|
26
26
|
};
|
|
27
27
|
}
|
|
28
|
-
/** Thrown
|
|
28
|
+
/** Thrown When an account operation cannot be updated due to contention. */
|
|
29
29
|
export declare class StoreConflictError extends BaseError<Error | undefined> {
|
|
30
30
|
name: string;
|
|
31
31
|
/** Creates a store conflict error. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Operation.d.ts","sourceRoot":"","sources":["../../../src/tempo/
|
|
1
|
+
{"version":3,"file":"Operation.d.ts","sourceRoot":"","sources":["../../../src/tempo/accounts/Operation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,IAAI,CAAA;AAE7B,OAAO,EAAE,gBAAgB,EAAqB,eAAe,EAAE,MAAM,UAAU,CAAA;AAC/E,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAA;AAChD,OAAO,KAAK,KAAK,KAAK,MAAM,aAAa,CAAA;AAWzC,2CAA2C;AAC3C,wBAAsB,IAAI,CACxB,KAAK,EAAE,KAAK,CAAC,KAAK,EAClB,IAAI,EAAE,GAAG,CAAC,GAAG,GACZ,OAAO,CAAC,gBAAgB,CAAC,SAAS,GAAG,IAAI,CAAC,CAO5C;AAED,+CAA+C;AAC/C,wBAAsB,MAAM,CAC1B,KAAK,EAAE,KAAK,CAAC,MAAM,EACnB,IAAI,EAAE,GAAG,CAAC,GAAG,EACb,MAAM,EAAE,CACN,SAAS,EAAE,gBAAgB,CAAC,SAAS,GAAG,IAAI,KACzC,gBAAgB,CAAC,SAAS,GAAG,OAAO,CAAC,gBAAgB,CAAC,SAAS,CAAC,GACpE,OAAO,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAwBrC;AAED,2FAA2F;AAC3F,wBAAsB,cAAc,CAClC,KAAK,EAAE,KAAK,CAAC,KAAK,EAClB,SAAS,EAAE,gBAAgB,CAAC,oBAAoB,EAChD,YAAY,EAAE,GAAG,CAAC,GAAG,GACpB,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,IAAI,CAAC,CAsBzB;AAED,0EAA0E;AAC1E,wBAAsB,gBAAgB,CACpC,KAAK,EAAE,KAAK,CAAC,KAAK,EAClB,IAAI,EAAE,GAAG,CAAC,GAAG,EACb,YAAY,EAAE,GAAG,CAAC,GAAG,GACpB,OAAO,CAAC,IAAI,CAAC,CAEf;AAED,2FAA2F;AAC3F,wBAAsB,eAAe,CACnC,KAAK,EAAE,KAAK,CAAC,MAAM,EACnB,IAAI,EAAE,GAAG,CAAC,GAAG,EACb,YAAY,EAAE,GAAG,CAAC,GAAG,EACrB,WAAW,EAAE,eAAe,CAAC,UAAU,GACtC,OAAO,CAAC,IAAI,CAAC,CAkBf;AA4DD,0EAA0E;AAC1E,qBAAa,sBAAuB,SAAQ,SAAS,CAAC,KAAK,GAAG,SAAS,CAAC;IAC7D,IAAI,SAA8C;IAC3D,4CAA4C;IAC5C,YAAY,OAAO,GAAE,sBAAsB,CAAC,OAAY,EAIvD;CACF;AAED,MAAM,CAAC,OAAO,WAAW,sBAAsB,CAAC;IAC9C,kCAAkC;IAClC,KAAY,OAAO,GAAG;QACpB,wBAAwB;QACxB,KAAK,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;KAC5B,CAAA;CACF;AAED,4EAA4E;AAC5E,qBAAa,kBAAmB,SAAQ,SAAS,CAAC,KAAK,GAAG,SAAS,CAAC;IACzD,IAAI,SAA0C;IACvD,sCAAsC;IACtC,cAKC;CACF"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Json } from 'ox';
|
|
2
|
-
import {
|
|
2
|
+
import { AccountOperation, SignatureEnvelope, TxEnvelopeTempo } from 'ox/tempo';
|
|
3
3
|
import { BaseError } from '../../core/Errors.js';
|
|
4
4
|
/** Bounds parsing and serialization work if a store returns unexpectedly large data. */
|
|
5
5
|
const maxStoredValueLength = 1_048_576;
|
|
@@ -7,7 +7,7 @@ const maxStoredValueLength = 1_048_576;
|
|
|
7
7
|
const maxUpdateAttempts = 32;
|
|
8
8
|
/** Bounds abandoned operation state while allowing long-lived approval ceremonies. */
|
|
9
9
|
const pendingOperationTtl = 30 * 24 * 60 * 60 * 1_000;
|
|
10
|
-
/** Reads a persisted
|
|
10
|
+
/** Reads a persisted account operation. */
|
|
11
11
|
export async function read(store, hash) {
|
|
12
12
|
const value = await store.getItem(operationKey(hash));
|
|
13
13
|
if (value === null || value === undefined)
|
|
@@ -17,7 +17,7 @@ export async function read(store, hash) {
|
|
|
17
17
|
throw new InvalidStoreValueError();
|
|
18
18
|
return operation;
|
|
19
19
|
}
|
|
20
|
-
/** Atomically updates
|
|
20
|
+
/** Atomically updates an account operation. */
|
|
21
21
|
export async function update(store, hash, update) {
|
|
22
22
|
const key = operationKey(hash);
|
|
23
23
|
for (let attempt = 0; attempt < maxUpdateAttempts; attempt++) {
|
|
@@ -28,7 +28,7 @@ export async function update(store, hash, update) {
|
|
|
28
28
|
const value_ = await update(current);
|
|
29
29
|
let next;
|
|
30
30
|
try {
|
|
31
|
-
next =
|
|
31
|
+
next = AccountOperation.from(value_);
|
|
32
32
|
}
|
|
33
33
|
catch (cause) {
|
|
34
34
|
throw new InvalidStoreValueError({ cause });
|
|
@@ -53,9 +53,9 @@ export async function readSubmission(store, operation, submissionId) {
|
|
|
53
53
|
if (value.length > maxStoredValueLength)
|
|
54
54
|
throw new InvalidStoreValueError();
|
|
55
55
|
const transaction = TxEnvelopeTempo.deserialize(value);
|
|
56
|
-
if (transaction.signature?.type !== '
|
|
56
|
+
if (transaction.signature?.type !== 'configurable')
|
|
57
57
|
throw new InvalidStoreValueError();
|
|
58
|
-
const serialized =
|
|
58
|
+
const serialized = AccountOperation.serializeTransaction(operation, {
|
|
59
59
|
approvals: transaction.signature.signatures.map((signature) => SignatureEnvelope.serialize(signature)),
|
|
60
60
|
});
|
|
61
61
|
if (serialized.toLowerCase() !== value.toLowerCase())
|
|
@@ -91,12 +91,12 @@ export async function writeSubmission(store, hash, submissionId, transaction) {
|
|
|
91
91
|
throw new InvalidStoreValueError({ cause });
|
|
92
92
|
}
|
|
93
93
|
}
|
|
94
|
-
/** Deserializes
|
|
94
|
+
/** Deserializes an account operation from storage. */
|
|
95
95
|
function deserialize(value) {
|
|
96
96
|
try {
|
|
97
97
|
if (value.length > maxStoredValueLength)
|
|
98
98
|
throw new InvalidStoreValueError();
|
|
99
|
-
const operation =
|
|
99
|
+
const operation = AccountOperation.from(Json.parse(value));
|
|
100
100
|
assertHash(operation);
|
|
101
101
|
return operation;
|
|
102
102
|
}
|
|
@@ -106,10 +106,10 @@ function deserialize(value) {
|
|
|
106
106
|
throw new InvalidStoreValueError({ cause });
|
|
107
107
|
}
|
|
108
108
|
}
|
|
109
|
-
/** Serializes
|
|
109
|
+
/** Serializes an account operation for storage. */
|
|
110
110
|
function serialize(operation) {
|
|
111
111
|
try {
|
|
112
|
-
const operation_ =
|
|
112
|
+
const operation_ = AccountOperation.from(operation);
|
|
113
113
|
assertHash(operation_);
|
|
114
114
|
const value = Json.stringify(operation_);
|
|
115
115
|
if (value.length > maxStoredValueLength)
|
|
@@ -124,7 +124,7 @@ function serialize(operation) {
|
|
|
124
124
|
}
|
|
125
125
|
/** Verifies that the operation hash commits to its stored payload. */
|
|
126
126
|
function assertHash(operation) {
|
|
127
|
-
const hash =
|
|
127
|
+
const hash = AccountOperation.getHash(operation.type === 'transaction'
|
|
128
128
|
? {
|
|
129
129
|
account: operation.account,
|
|
130
130
|
config: operation.config,
|
|
@@ -148,31 +148,31 @@ function operationKey(hash) {
|
|
|
148
148
|
function submissionKey(hash, submissionId) {
|
|
149
149
|
return `multisig:submission:${hash.toLowerCase()}:${submissionId.toLowerCase()}`;
|
|
150
150
|
}
|
|
151
|
-
/** Thrown when a stored
|
|
151
|
+
/** Thrown when a stored account operation is malformed or unsupported. */
|
|
152
152
|
export class InvalidStoreValueError extends BaseError {
|
|
153
153
|
/** Creates an invalid store value error. */
|
|
154
154
|
constructor(options = {}) {
|
|
155
|
-
super('Stored
|
|
155
|
+
super('Stored account operation is malformed or unsupported.', {
|
|
156
156
|
cause: options.cause,
|
|
157
157
|
});
|
|
158
158
|
Object.defineProperty(this, "name", {
|
|
159
159
|
enumerable: true,
|
|
160
160
|
configurable: true,
|
|
161
161
|
writable: true,
|
|
162
|
-
value: '
|
|
162
|
+
value: 'Accounts.Operation.InvalidStoreValueError'
|
|
163
163
|
});
|
|
164
164
|
}
|
|
165
165
|
}
|
|
166
|
-
/** Thrown
|
|
166
|
+
/** Thrown When an account operation cannot be updated due to contention. */
|
|
167
167
|
export class StoreConflictError extends BaseError {
|
|
168
168
|
/** Creates a store conflict error. */
|
|
169
169
|
constructor() {
|
|
170
|
-
super('
|
|
170
|
+
super('Account operation could not be updated after repeated conflicts.', {});
|
|
171
171
|
Object.defineProperty(this, "name", {
|
|
172
172
|
enumerable: true,
|
|
173
173
|
configurable: true,
|
|
174
174
|
writable: true,
|
|
175
|
-
value: '
|
|
175
|
+
value: 'Accounts.Operation.StoreConflictError'
|
|
176
176
|
});
|
|
177
177
|
}
|
|
178
178
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Operation.js","sourceRoot":"","sources":["../../../src/tempo/
|
|
1
|
+
{"version":3,"file":"Operation.js","sourceRoot":"","sources":["../../../src/tempo/accounts/Operation.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { SignatureEnvelope } from 'ox/tempo';
|
|
2
|
-
/** Parses a primitive
|
|
2
|
+
/** Parses a primitive owner approval. */
|
|
3
3
|
export declare function parseApproval(signature: SignatureEnvelope.Serialized): SignatureEnvelope.Primitive;
|
|
4
4
|
//# sourceMappingURL=Signature.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Signature.d.ts","sourceRoot":"","sources":["../../../src/tempo/accounts/Signature.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAA;AAE5C,yCAAyC;AACzC,wBAAgB,aAAa,CAC3B,SAAS,EAAE,iBAAiB,CAAC,UAAU,GACtC,iBAAiB,CAAC,SAAS,CAO7B"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { SignatureEnvelope } from 'ox/tempo';
|
|
2
|
+
/** Parses a primitive owner approval. */
|
|
3
|
+
export function parseApproval(signature) {
|
|
4
|
+
const approval = SignatureEnvelope.from(signature);
|
|
5
|
+
if (approval.type === 'configurable' || approval.type === 'keychain')
|
|
6
|
+
throw new Error('Configurable account owners must use primitive signatures.');
|
|
7
|
+
return approval;
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=Signature.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Signature.js","sourceRoot":"","sources":["../../../src/tempo/accounts/Signature.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAA;AAE5C,yCAAyC;AACzC,MAAM,UAAU,aAAa,CAC3B,SAAuC;IAEvC,MAAM,QAAQ,GAAG,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;IAClD,IAAI,QAAQ,CAAC,IAAI,KAAK,cAAc,IAAI,QAAQ,CAAC,IAAI,KAAK,UAAU;QAClE,MAAM,IAAI,KAAK,CACb,4DAA4D,CAC7D,CAAA;IACH,OAAO,QAAQ,CAAA;AACjB,CAAC"}
|
|
@@ -8,6 +8,7 @@ export { isAdmin } from './isAdmin.js';
|
|
|
8
8
|
export { isWitnessBurned } from './isWitnessBurned.js';
|
|
9
9
|
export { revoke } from './revoke.js';
|
|
10
10
|
export { revokeSync } from './revokeSync.js';
|
|
11
|
+
export { saveAuthorization } from './saveAuthorization.js';
|
|
11
12
|
export { signAuthorization } from './signAuthorization.js';
|
|
12
13
|
export { updateLimit } from './updateLimit.js';
|
|
13
14
|
export { updateLimitSync } from './updateLimitSync.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/tempo/actions/accessKey/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAC9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAC1D,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AACtC,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AACtD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAC5C,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAA;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAE5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/tempo/actions/accessKey/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAC9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAC1D,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AACtC,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AACtD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAC5C,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAA;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAE5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAA"}
|
|
@@ -9,6 +9,7 @@ export { isAdmin } from './isAdmin.js';
|
|
|
9
9
|
export { isWitnessBurned } from './isWitnessBurned.js';
|
|
10
10
|
export { revoke } from './revoke.js';
|
|
11
11
|
export { revokeSync } from './revokeSync.js';
|
|
12
|
+
export { saveAuthorization } from './saveAuthorization.js';
|
|
12
13
|
export { signAuthorization } from './signAuthorization.js';
|
|
13
14
|
export { updateLimit } from './updateLimit.js';
|
|
14
15
|
export { updateLimitSync } from './updateLimitSync.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/tempo/actions/accessKey/index.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAC9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAC1D,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AACtC,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AACtD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAC5C,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAA;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAE5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/tempo/actions/accessKey/index.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAC9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAC1D,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AACtC,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AACtD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAC5C,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAA;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAE5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAA"}
|
|
@@ -49,8 +49,8 @@ export declare namespace prepareAuthorization {
|
|
|
49
49
|
limit: bigint;
|
|
50
50
|
period?: number | undefined;
|
|
51
51
|
}[] | undefined;
|
|
52
|
-
/** @internal Prepared
|
|
53
|
-
|
|
52
|
+
/** @internal Prepared configurable account state. */
|
|
53
|
+
configurable?: signKeyAuthorization.Parameters['configurable'];
|
|
54
54
|
/** Call scopes restricting which contracts/selectors this key can call. */
|
|
55
55
|
scopes?: KeyAuthorization.Scope[] | undefined;
|
|
56
56
|
/**
|
|
@@ -68,8 +68,8 @@ export declare namespace prepareAuthorization {
|
|
|
68
68
|
type ReturnType = Compute<Omit<Options<CoreAccount.Account | undefined>, 'account' | 'chainId'> & {
|
|
69
69
|
account: CoreAccount.Account;
|
|
70
70
|
chainId: number;
|
|
71
|
-
|
|
72
|
-
/** Payload that the authorizing account or
|
|
71
|
+
configurable: signKeyAuthorization.Parameters['configurable'];
|
|
72
|
+
/** Payload that the authorizing account or owners sign. */
|
|
73
73
|
signPayload: Hex.Hex;
|
|
74
74
|
}>;
|
|
75
75
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prepareAuthorization.d.ts","sourceRoot":"","sources":["../../../../src/tempo/actions/accessKey/prepareAuthorization.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,GAAG,EAAE,MAAM,IAAI,CAAA;AACtC,OAAO,
|
|
1
|
+
{"version":3,"file":"prepareAuthorization.d.ts","sourceRoot":"","sources":["../../../../src/tempo/actions/accessKey/prepareAuthorization.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,GAAG,EAAE,MAAM,IAAI,CAAA;AACtC,OAAO,EAAiB,gBAAgB,EAAE,MAAM,UAAU,CAAA;AAC1D,OAAO,KAAK,WAAW,MAAM,0BAA0B,CAAA;AACvD,OAAO,KAAK,KAAK,KAAK,MAAM,wBAAwB,CAAA;AACpD,OAAO,KAAK,KAAK,MAAM,MAAM,yBAAyB,CAAA;AACtD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,iCAAiC,CAAA;AAC9D,OAAO,EAEL,gBAAgB,EAChB,oBAAoB,EAErB,MAAM,kBAAkB,CAAA;AAEzB;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAsB,oBAAoB,CACxC,KAAK,SAAS,KAAK,CAAC,KAAK,GAAG,SAAS,EACrC,OAAO,SAAS,WAAW,CAAC,OAAO,GAAG,SAAS,EAE/C,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,EACrC,UAAU,EAAE,oBAAoB,CAAC,OAAO,CAAC,OAAO,CAAC,GAChD,OAAO,CAAC,oBAAoB,CAAC,UAAU,CAAC,CAwC1C;AAED,yBAAiB,oBAAoB,CAAC;IACpC,KAAY,OAAO,CACjB,OAAO,SAAS,WAAW,CAAC,OAAO,GAAG,SAAS,GAC3C,WAAW,CAAC,OAAO,GACnB,SAAS,IACX;QACF,OAAO,CAAC,EAAE,OAAO,GAAG,WAAW,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,GAAG,SAAS,CAAA;KACtE,GAAG;QACF,mCAAmC;QACnC,SAAS,EAAE,gBAAgB,CAAC,UAAU,CAAA;QACtC;;;;;;WAMG;QACH,KAAK,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;QAC3B,oBAAoB;QACpB,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;QAC5B,2CAA2C;QAC3C,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;QAC3B,iCAAiC;QACjC,MAAM,CAAC,EACH;YAAE,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC;YAAC,KAAK,EAAE,MAAM,CAAC;YAAC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;SAAE,EAAE,GACxE,SAAS,CAAA;QACb,qDAAqD;QACrD,YAAY,CAAC,EAAE,oBAAoB,CAAC,UAAU,CAAC,cAAc,CAAC,CAAA;QAC9D,2EAA2E;QAC3E,MAAM,CAAC,EAAE,gBAAgB,CAAC,KAAK,EAAE,GAAG,SAAS,CAAA;QAC7C;;;;;;;;;WASG;QACH,OAAO,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG,SAAS,CAAA;KAC9B,CAAA;IAED,KAAY,UAAU,GAAG,OAAO,CAC9B,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,OAAO,GAAG,SAAS,CAAC,EAAE,SAAS,GAAG,SAAS,CAAC,GAAG;QACtE,OAAO,EAAE,WAAW,CAAC,OAAO,CAAA;QAC5B,OAAO,EAAE,MAAM,CAAA;QACf,YAAY,EAAE,oBAAoB,CAAC,UAAU,CAAC,cAAc,CAAC,CAAA;QAC7D,2DAA2D;QAC3D,WAAW,EAAE,GAAG,CAAC,GAAG,CAAA;KACrB,CACF,CAAA;CACF"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Address } from 'ox';
|
|
2
|
-
import {
|
|
2
|
+
import { AccountConfig, KeyAuthorization } from 'ox/tempo';
|
|
3
3
|
import * as CoreAccount from '../../../core/Account.js';
|
|
4
4
|
import { getKeyAuthorizationSignPayload, resolveAccessKey, signKeyAuthorization, } from '../../Account.js';
|
|
5
5
|
/**
|
|
@@ -29,14 +29,14 @@ export async function prepareAuthorization(client, parameters) {
|
|
|
29
29
|
if (!chainId)
|
|
30
30
|
throw new Error('chainId is required.');
|
|
31
31
|
const parsed = CoreAccount.from(account_);
|
|
32
|
-
const
|
|
33
|
-
if ('
|
|
34
|
-
return parameters.
|
|
35
|
-
if (!('source' in parsed) || parsed.source !== '
|
|
32
|
+
const configurableState = await (async () => {
|
|
33
|
+
if ('configurable' in parameters)
|
|
34
|
+
return parameters.configurable;
|
|
35
|
+
if (!('source' in parsed) || parsed.source !== 'configurable')
|
|
36
36
|
return undefined;
|
|
37
37
|
const account = parsed;
|
|
38
38
|
if (!account.config)
|
|
39
|
-
throw new Error('
|
|
39
|
+
throw new Error('An account config is required to prepare a key authorization.');
|
|
40
40
|
return { config: account.config };
|
|
41
41
|
})();
|
|
42
42
|
const authorizationSignPayload = getKeyAuthorizationSignPayload(parsed, {
|
|
@@ -44,10 +44,10 @@ export async function prepareAuthorization(client, parameters) {
|
|
|
44
44
|
chainId: BigInt(chainId),
|
|
45
45
|
key: parameters.accessKey,
|
|
46
46
|
});
|
|
47
|
-
const signPayload = 'source' in parsed && parsed.source === '
|
|
48
|
-
?
|
|
47
|
+
const signPayload = 'source' in parsed && parsed.source === 'configurable' && configurableState
|
|
48
|
+
? AccountConfig.getSignPayload({
|
|
49
49
|
account: parsed.address,
|
|
50
|
-
config:
|
|
50
|
+
config: configurableState.config,
|
|
51
51
|
payload: authorizationSignPayload,
|
|
52
52
|
})
|
|
53
53
|
: authorizationSignPayload;
|
|
@@ -55,7 +55,7 @@ export async function prepareAuthorization(client, parameters) {
|
|
|
55
55
|
...parameters,
|
|
56
56
|
account: parsed,
|
|
57
57
|
chainId,
|
|
58
|
-
|
|
58
|
+
configurable: configurableState,
|
|
59
59
|
signPayload,
|
|
60
60
|
};
|
|
61
61
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prepareAuthorization.js","sourceRoot":"","sources":["../../../../src/tempo/actions/accessKey/prepareAuthorization.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAY,MAAM,IAAI,CAAA;AACtC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"prepareAuthorization.js","sourceRoot":"","sources":["../../../../src/tempo/actions/accessKey/prepareAuthorization.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAY,MAAM,IAAI,CAAA;AACtC,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAA;AAC1D,OAAO,KAAK,WAAW,MAAM,0BAA0B,CAAA;AAIvD,OAAO,EACL,8BAA8B,EAC9B,gBAAgB,EAChB,oBAAoB,GAErB,MAAM,kBAAkB,CAAA;AAEzB;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAIxC,MAAqC,EACrC,UAAiD;IAEjD,MAAM,EAAE,OAAO,GAAG,MAAM,CAAC,KAAK,EAAE,EAAE,EAAE,GAAG,UAAU,CAAA;IACjD,MAAM,QAAQ,GAAG,UAAU,CAAC,OAAO,IAAI,MAAM,CAAC,OAAO,CAAA;IACrD,IAAI,CAAC,QAAQ;QAAE,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAA;IACtD,IAAI,CAAC,OAAO;QAAE,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAA;IACrD,MAAM,MAAM,GAAG,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IACzC,MAAM,iBAAiB,GAAG,MAAM,CAAC,KAAK,IAAI,EAAE;QAC1C,IAAI,cAAc,IAAI,UAAU;YAAE,OAAO,UAAU,CAAC,YAAY,CAAA;QAChE,IAAI,CAAC,CAAC,QAAQ,IAAI,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,KAAK,cAAc;YAC3D,OAAO,SAAS,CAAA;QAClB,MAAM,OAAO,GAAG,MAA6B,CAAA;QAC7C,IAAI,CAAC,OAAO,CAAC,MAAM;YACjB,MAAM,IAAI,KAAK,CACb,+DAA+D,CAChE,CAAA;QACH,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAA;IACnC,CAAC,CAAC,EAAE,CAAA;IACJ,MAAM,wBAAwB,GAAG,8BAA8B,CAC7D,MAA2B,EAC3B;QACE,GAAG,UAAU;QACb,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC;QACxB,GAAG,EAAE,UAAU,CAAC,SAAS;KAC1B,CACF,CAAA;IACD,MAAM,WAAW,GACf,QAAQ,IAAI,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,cAAc,IAAI,iBAAiB;QACzE,CAAC,CAAC,aAAa,CAAC,cAAc,CAAC;YAC3B,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,MAAM,EAAE,iBAAiB,CAAC,MAAM;YAChC,OAAO,EAAE,wBAAwB;SAClC,CAAC;QACJ,CAAC,CAAC,wBAAwB,CAAA;IAC9B,OAAO;QACL,GAAG,UAAU;QACb,OAAO,EAAE,MAAM;QACf,OAAO;QACP,YAAY,EAAE,iBAAiB;QAC/B,WAAW;KACuB,CAAA;AACtC,CAAC"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import type { Errors } from 'ox';
|
|
2
|
+
import { KeyAuthorization } from 'ox/tempo';
|
|
3
|
+
import type * as Client from '../../../core/Client.js';
|
|
4
|
+
/**
|
|
5
|
+
* Saves a signed key authorization to a relay with key authorization storage.
|
|
6
|
+
*
|
|
7
|
+
* The relay attaches the authorization to the access key's next transaction until
|
|
8
|
+
* the key is active onchain. Use this for authorizations signed outside
|
|
9
|
+
* `signAuthorization`, such as on another device. Requires a relay running the
|
|
10
|
+
* `Relay.keyAuthorization` plugin.
|
|
11
|
+
*
|
|
12
|
+
* @example
|
|
13
|
+
* ```ts
|
|
14
|
+
* import { Actions, Client, http, withRelay } from 'viem/tempo'
|
|
15
|
+
*
|
|
16
|
+
* const client = Client.create({
|
|
17
|
+
* transport: withRelay(http(), http('https://relay.example.com'), {
|
|
18
|
+
* keyAuthorization: true,
|
|
19
|
+
* }),
|
|
20
|
+
* })
|
|
21
|
+
*
|
|
22
|
+
* await Actions.accessKey.saveAuthorization(client, { keyAuthorization })
|
|
23
|
+
* ```
|
|
24
|
+
*
|
|
25
|
+
* @param client - Client.
|
|
26
|
+
* @param options - Options.
|
|
27
|
+
*/
|
|
28
|
+
export declare function saveAuthorization(client: Client.Client, options: saveAuthorization.Options): Promise<saveAuthorization.ReturnType>;
|
|
29
|
+
export declare namespace saveAuthorization {
|
|
30
|
+
/** Options for {@link saveAuthorization}. */
|
|
31
|
+
type Options = {
|
|
32
|
+
/** Signed key authorization to save. */
|
|
33
|
+
keyAuthorization: KeyAuthorization.Signed;
|
|
34
|
+
};
|
|
35
|
+
/** Return value for {@link saveAuthorization}. */
|
|
36
|
+
type ReturnType = void;
|
|
37
|
+
/** Error type for {@link saveAuthorization}. */
|
|
38
|
+
type ErrorType = Errors.GlobalErrorType;
|
|
39
|
+
}
|
|
40
|
+
//# sourceMappingURL=saveAuthorization.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"saveAuthorization.d.ts","sourceRoot":"","sources":["../../../../src/tempo/actions/accessKey/saveAuthorization.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,IAAI,CAAA;AAChC,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAA;AAC3C,OAAO,KAAK,KAAK,MAAM,MAAM,yBAAyB,CAAA;AAEtD;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,MAAM,CAAC,MAAM,EACrB,OAAO,EAAE,iBAAiB,CAAC,OAAO,GACjC,OAAO,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAKvC;AAED,MAAM,CAAC,OAAO,WAAW,iBAAiB,CAAC;IACzC,6CAA6C;IAC7C,KAAY,OAAO,GAAG;QACpB,wCAAwC;QACxC,gBAAgB,EAAE,gBAAgB,CAAC,MAAM,CAAA;KAC1C,CAAA;IAED,kDAAkD;IAClD,KAAY,UAAU,GAAG,IAAI,CAAA;IAE7B,gDAAgD;IAChD,KAAY,SAAS,GAAG,MAAM,CAAC,eAAe,CAAA;CAC/C"}
|