mppx 0.8.12 → 0.8.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/CHANGELOG.md +34 -0
- package/README.md +16 -1
- package/dist/Errors.d.ts +10 -0
- package/dist/Errors.d.ts.map +1 -1
- package/dist/Errors.js +11 -2
- package/dist/Errors.js.map +1 -1
- package/dist/Method.d.ts +105 -3
- package/dist/Method.d.ts.map +1 -1
- package/dist/Method.js +102 -2
- package/dist/Method.js.map +1 -1
- package/dist/cli/account.d.ts +88 -0
- package/dist/cli/account.d.ts.map +1 -1
- package/dist/cli/account.js +39 -9
- package/dist/cli/account.js.map +1 -1
- package/dist/cli/cli.d.ts +2 -1
- package/dist/cli/cli.d.ts.map +1 -1
- package/dist/cli/cli.js +59 -2
- package/dist/cli/cli.js.map +1 -1
- package/dist/cli/sessions/Manager.d.ts +31 -0
- package/dist/cli/sessions/Manager.d.ts.map +1 -0
- package/dist/cli/sessions/Manager.js +56 -0
- package/dist/cli/sessions/Manager.js.map +1 -0
- package/dist/cli/sessions/commands.d.ts +36 -0
- package/dist/cli/sessions/commands.d.ts.map +1 -0
- package/dist/cli/sessions/commands.js +407 -0
- package/dist/cli/sessions/commands.js.map +1 -0
- package/dist/cli/sessions/request.d.ts +35 -0
- package/dist/cli/sessions/request.d.ts.map +1 -0
- package/dist/cli/sessions/request.js +271 -0
- package/dist/cli/sessions/request.js.map +1 -0
- package/dist/cli/sessions/store.d.ts +134 -0
- package/dist/cli/sessions/store.d.ts.map +1 -0
- package/dist/cli/sessions/store.js +723 -0
- package/dist/cli/sessions/store.js.map +1 -0
- package/dist/cli/utils.d.ts +2 -0
- package/dist/cli/utils.d.ts.map +1 -1
- package/dist/cli/utils.js +12 -0
- package/dist/cli/utils.js.map +1 -1
- package/dist/cli/validate/index.d.ts.map +1 -1
- package/dist/cli/validate/index.js +12 -6
- package/dist/cli/validate/index.js.map +1 -1
- package/dist/cli/validate/messages.d.ts +2 -0
- package/dist/cli/validate/messages.d.ts.map +1 -0
- package/dist/cli/validate/messages.js +8 -0
- package/dist/cli/validate/messages.js.map +1 -0
- package/dist/client/internal/Fetch.d.ts.map +1 -1
- package/dist/client/internal/Fetch.js +12 -2
- package/dist/client/internal/Fetch.js.map +1 -1
- package/dist/client/internal/MethodChallenge.d.ts +17 -0
- package/dist/client/internal/MethodChallenge.d.ts.map +1 -0
- package/dist/client/internal/MethodChallenge.js +11 -0
- package/dist/client/internal/MethodChallenge.js.map +1 -0
- package/dist/client/node.d.ts +29 -0
- package/dist/client/node.d.ts.map +1 -0
- package/dist/client/node.js +177 -0
- package/dist/client/node.js.map +1 -0
- package/dist/internal/types.d.ts +24 -0
- package/dist/internal/types.d.ts.map +1 -1
- package/dist/server/Mppx.d.ts +23 -4
- package/dist/server/Mppx.d.ts.map +1 -1
- package/dist/server/Mppx.js +91 -82
- package/dist/server/Mppx.js.map +1 -1
- package/dist/stripe/server/Charge.d.ts +8 -4
- package/dist/stripe/server/Charge.d.ts.map +1 -1
- package/dist/stripe/server/Charge.js.map +1 -1
- package/dist/stripe/server/internal/html.gen.d.ts +1 -1
- package/dist/stripe/server/internal/html.gen.d.ts.map +1 -1
- package/dist/stripe/server/internal/html.gen.js +1 -1
- package/dist/stripe/server/internal/html.gen.js.map +1 -1
- package/dist/tempo/client/Methods.d.ts +2 -1
- package/dist/tempo/client/Methods.d.ts.map +1 -1
- package/dist/tempo/internal/fee-payer.d.ts +1 -0
- package/dist/tempo/internal/fee-payer.d.ts.map +1 -1
- package/dist/tempo/internal/fee-payer.js +7 -2
- package/dist/tempo/internal/fee-payer.js.map +1 -1
- package/dist/tempo/internal/types.d.ts +10 -1
- package/dist/tempo/internal/types.d.ts.map +1 -1
- package/dist/tempo/legacy/client/ChannelOps.d.ts.map +1 -1
- package/dist/tempo/legacy/client/ChannelOps.js +2 -1
- package/dist/tempo/legacy/client/ChannelOps.js.map +1 -1
- package/dist/tempo/legacy/client/Session.d.ts +2 -2
- package/dist/tempo/legacy/server/Session.d.ts +3 -3
- package/dist/tempo/legacy/server/Session.d.ts.map +1 -1
- package/dist/tempo/legacy/server/Session.js.map +1 -1
- package/dist/tempo/server/Charge.d.ts +40 -78
- package/dist/tempo/server/Charge.d.ts.map +1 -1
- package/dist/tempo/server/Charge.js +289 -209
- package/dist/tempo/server/Charge.js.map +1 -1
- package/dist/tempo/server/Methods.d.ts +13 -23
- package/dist/tempo/server/Methods.d.ts.map +1 -1
- package/dist/tempo/server/Methods.js +6 -2
- package/dist/tempo/server/Methods.js.map +1 -1
- package/dist/tempo/server/Relay.d.ts +48 -0
- package/dist/tempo/server/Relay.d.ts.map +1 -0
- package/dist/tempo/server/Relay.js +177 -0
- package/dist/tempo/server/Relay.js.map +1 -0
- package/dist/tempo/server/SponsorBudget.d.ts +59 -0
- package/dist/tempo/server/SponsorBudget.d.ts.map +1 -0
- package/dist/tempo/server/SponsorBudget.js +144 -0
- package/dist/tempo/server/SponsorBudget.js.map +1 -0
- package/dist/tempo/server/Subscription.d.ts +3 -2
- package/dist/tempo/server/Subscription.d.ts.map +1 -1
- package/dist/tempo/server/Subscription.js.map +1 -1
- package/dist/tempo/server/index.d.ts +1 -1
- package/dist/tempo/server/index.d.ts.map +1 -1
- package/dist/tempo/server/index.js.map +1 -1
- package/dist/tempo/server/internal/html.gen.d.ts +1 -1
- package/dist/tempo/server/internal/html.gen.d.ts.map +1 -1
- package/dist/tempo/server/internal/html.gen.js +1 -1
- package/dist/tempo/server/internal/html.gen.js.map +1 -1
- package/dist/tempo/session/Snapshot.d.ts +9 -0
- package/dist/tempo/session/Snapshot.d.ts.map +1 -1
- package/dist/tempo/session/Snapshot.js +6 -0
- package/dist/tempo/session/Snapshot.js.map +1 -1
- package/dist/tempo/session/client/ChannelOps.d.ts +7 -1
- package/dist/tempo/session/client/ChannelOps.d.ts.map +1 -1
- package/dist/tempo/session/client/ChannelOps.js +17 -3
- package/dist/tempo/session/client/ChannelOps.js.map +1 -1
- package/dist/tempo/session/client/CredentialState.d.ts +26 -2
- package/dist/tempo/session/client/CredentialState.d.ts.map +1 -1
- package/dist/tempo/session/client/CredentialState.js +99 -16
- package/dist/tempo/session/client/CredentialState.js.map +1 -1
- package/dist/tempo/session/client/Runtime.d.ts +8 -0
- package/dist/tempo/session/client/Runtime.d.ts.map +1 -1
- package/dist/tempo/session/client/Runtime.js +17 -0
- package/dist/tempo/session/client/Runtime.js.map +1 -1
- package/dist/tempo/session/client/Session.d.ts +16 -6
- package/dist/tempo/session/client/Session.d.ts.map +1 -1
- package/dist/tempo/session/client/Session.js +93 -36
- package/dist/tempo/session/client/Session.js.map +1 -1
- package/dist/tempo/session/client/SessionManager.d.ts +10 -3
- package/dist/tempo/session/client/SessionManager.d.ts.map +1 -1
- package/dist/tempo/session/client/SessionManager.js +176 -50
- package/dist/tempo/session/client/SessionManager.js.map +1 -1
- package/dist/tempo/session/client/Transports.d.ts +18 -7
- package/dist/tempo/session/client/Transports.d.ts.map +1 -1
- package/dist/tempo/session/client/Transports.js +81 -33
- package/dist/tempo/session/client/Transports.js.map +1 -1
- package/dist/tempo/session/client/internal/SessionManager.d.ts +19 -0
- package/dist/tempo/session/client/internal/SessionManager.d.ts.map +1 -0
- package/dist/tempo/session/client/internal/SessionManager.js +13 -0
- package/dist/tempo/session/client/internal/SessionManager.js.map +1 -0
- package/dist/tempo/session/precompile/Chain.d.ts.map +1 -1
- package/dist/tempo/session/precompile/Chain.js +109 -12
- package/dist/tempo/session/precompile/Chain.js.map +1 -1
- package/dist/tempo/session/precompile/Channel.d.ts +2 -0
- package/dist/tempo/session/precompile/Channel.d.ts.map +1 -1
- package/dist/tempo/session/precompile/Channel.js +4 -0
- package/dist/tempo/session/precompile/Channel.js.map +1 -1
- package/dist/tempo/session/server/CredentialVerification.d.ts +3 -0
- package/dist/tempo/session/server/CredentialVerification.d.ts.map +1 -1
- package/dist/tempo/session/server/CredentialVerification.js +14 -0
- package/dist/tempo/session/server/CredentialVerification.js.map +1 -1
- package/dist/tempo/session/server/MeteredStream.d.ts +7 -1
- package/dist/tempo/session/server/MeteredStream.d.ts.map +1 -1
- package/dist/tempo/session/server/MeteredStream.js +5 -4
- package/dist/tempo/session/server/MeteredStream.js.map +1 -1
- package/dist/tempo/session/server/RequestState.d.ts +5 -1
- package/dist/tempo/session/server/RequestState.d.ts.map +1 -1
- package/dist/tempo/session/server/RequestState.js +13 -5
- package/dist/tempo/session/server/RequestState.js.map +1 -1
- package/dist/tempo/session/server/Session.d.ts +21 -6
- package/dist/tempo/session/server/Session.d.ts.map +1 -1
- package/dist/tempo/session/server/Session.js +4 -1
- package/dist/tempo/session/server/Session.js.map +1 -1
- package/dist/tempo/session/server/Settlement.d.ts +20 -0
- package/dist/tempo/session/server/Settlement.d.ts.map +1 -1
- package/dist/tempo/session/server/Settlement.js +20 -0
- package/dist/tempo/session/server/Settlement.js.map +1 -1
- package/dist/tempo/session/server/Ws.d.ts +2 -0
- package/dist/tempo/session/server/Ws.d.ts.map +1 -1
- package/dist/tempo/session/server/Ws.js.map +1 -1
- package/dist/tempo/session/server/index.d.ts +1 -1
- package/dist/tempo/session/server/index.d.ts.map +1 -1
- package/dist/tempo/subscription/KeyAuthorization.d.ts +21 -21
- package/dist/validation/core.d.ts.map +1 -1
- package/dist/validation/core.js +6 -2
- package/dist/validation/core.js.map +1 -1
- package/dist/viem/Client.d.ts.map +1 -1
- package/dist/viem/Client.js +24 -17
- package/dist/viem/Client.js.map +1 -1
- package/package.json +6 -1
- package/src/Errors.test.ts +23 -0
- package/src/Errors.ts +21 -2
- package/src/Method.test.ts +102 -1
- package/src/Method.ts +241 -5
- package/src/cli/account.ts +45 -10
- package/src/cli/cli.test.ts +165 -70
- package/src/cli/cli.ts +67 -2
- package/src/cli/mcp.test.ts +11 -0
- package/src/cli/sessions/Manager.test.ts +249 -0
- package/src/cli/sessions/Manager.ts +93 -0
- package/src/cli/sessions/commands.ts +444 -0
- package/src/cli/sessions/request.test.ts +51 -0
- package/src/cli/sessions/request.ts +353 -0
- package/src/cli/sessions/store.test.ts +581 -0
- package/src/cli/sessions/store.ts +940 -0
- package/src/cli/utils.test.ts +23 -0
- package/src/cli/utils.ts +10 -0
- package/src/cli/validate/index.ts +12 -14
- package/src/cli/validate/messages.ts +7 -0
- package/src/cli/validate.test.ts +38 -5
- package/src/client/Mppx.test-d.ts +3 -3
- package/src/client/internal/Fetch.ts +16 -7
- package/src/client/internal/MethodChallenge.ts +30 -0
- package/src/client/node.test.ts +115 -0
- package/src/client/node.ts +247 -0
- package/src/internal/types.test-d.ts +21 -0
- package/src/internal/types.ts +33 -0
- package/src/server/Mppx.test-d.ts +44 -0
- package/src/server/Mppx.test.ts +205 -0
- package/src/server/Mppx.ts +167 -103
- package/src/stripe/Methods.test.ts +10 -0
- package/src/stripe/server/Charge.test-d.ts +66 -0
- package/src/stripe/server/Charge.ts +8 -5
- package/src/stripe/server/internal/html.gen.ts +1 -1
- package/src/tempo/PublicExports.test-d.ts +20 -0
- package/src/tempo/internal/fee-payer.ts +7 -3
- package/src/tempo/internal/types.ts +13 -2
- package/src/tempo/legacy/client/ChannelOps.test.ts +7 -0
- package/src/tempo/legacy/client/ChannelOps.ts +2 -1
- package/src/tempo/legacy/server/Defaults.test-d.ts +9 -0
- package/src/tempo/legacy/server/Session.ts +6 -5
- package/src/tempo/server/Charge.test.ts +337 -63
- package/src/tempo/server/Charge.ts +440 -270
- package/src/tempo/server/Methods.ts +16 -4
- package/src/tempo/server/Relay.test.ts +523 -0
- package/src/tempo/server/Relay.ts +288 -0
- package/src/tempo/server/SponsorBudget.test.ts +125 -0
- package/src/tempo/server/SponsorBudget.ts +213 -0
- package/src/tempo/server/Subscription.ts +6 -4
- package/src/tempo/server/index.ts +5 -1
- package/src/tempo/server/internal/html.gen.ts +1 -1
- package/src/tempo/session/README.md +201 -0
- package/src/tempo/session/Snapshot.ts +21 -0
- package/src/tempo/session/client/ChannelOps.test.ts +55 -0
- package/src/tempo/session/client/ChannelOps.ts +21 -3
- package/src/tempo/session/client/CredentialState.test.ts +2 -2
- package/src/tempo/session/client/CredentialState.ts +159 -16
- package/src/tempo/session/client/Runtime.test.ts +12 -0
- package/src/tempo/session/client/Runtime.ts +22 -0
- package/src/tempo/session/client/Session.test.ts +238 -5
- package/src/tempo/session/client/Session.ts +130 -41
- package/src/tempo/session/client/SessionManager.test.ts +239 -8
- package/src/tempo/session/client/SessionManager.ts +204 -54
- package/src/tempo/session/client/Transports.test.ts +181 -8
- package/src/tempo/session/client/Transports.ts +127 -45
- package/src/tempo/session/client/internal/SessionManager.ts +36 -0
- package/src/tempo/session/precompile/Chain.integration.test.ts +19 -1
- package/src/tempo/session/precompile/Chain.test.ts +223 -10
- package/src/tempo/session/precompile/Chain.ts +119 -12
- package/src/tempo/session/precompile/Channel.test.ts +9 -0
- package/src/tempo/session/precompile/Channel.ts +5 -0
- package/src/tempo/session/server/CredentialVerification.ts +18 -1
- package/src/tempo/session/server/MeteredStream.ts +12 -5
- package/src/tempo/session/server/RequestState.test.ts +47 -4
- package/src/tempo/session/server/RequestState.ts +15 -8
- package/src/tempo/session/server/Session.test.ts +461 -0
- package/src/tempo/session/server/Session.ts +31 -8
- package/src/tempo/session/server/Settlement.ts +45 -0
- package/src/tempo/session/server/Ws.test.ts +113 -0
- package/src/tempo/session/server/Ws.ts +2 -0
- package/src/tempo/session/server/index.ts +2 -0
- package/src/validation/core.ts +7 -1
- package/src/viem/Client.test.ts +44 -1
- package/src/viem/Client.ts +31 -17
package/dist/cli/account.d.ts
CHANGED
|
@@ -15,6 +15,94 @@ export declare function createKeychain(account?: string): {
|
|
|
15
15
|
set(value: string): Promise<void>;
|
|
16
16
|
delete(): Promise<void>;
|
|
17
17
|
};
|
|
18
|
+
/** Resolves a local CLI signer together with its durable account reference. */
|
|
19
|
+
export declare function resolveLocalAccount(name?: string): Promise<{
|
|
20
|
+
account: {
|
|
21
|
+
address: import("viem/accounts").Address;
|
|
22
|
+
nonceManager?: import("viem/accounts").NonceManager | undefined;
|
|
23
|
+
sign: (parameters: {
|
|
24
|
+
hash: import("viem").Hash;
|
|
25
|
+
}) => Promise<import("viem").Hex>;
|
|
26
|
+
signAuthorization: (parameters: import("viem").AuthorizationRequest) => Promise<import("viem/accounts").SignAuthorizationReturnType>;
|
|
27
|
+
signMessage: ({ message }: {
|
|
28
|
+
message: import("viem").SignableMessage;
|
|
29
|
+
}) => Promise<import("viem").Hex>;
|
|
30
|
+
signTransaction: <serializer extends import("viem").SerializeTransactionFn<import("viem").TransactionSerializable> = import("viem").SerializeTransactionFn<import("viem").TransactionSerializable>, transaction extends Parameters<serializer>[0] = Parameters<serializer>[0]>(transaction: transaction, options?: {
|
|
31
|
+
serializer?: serializer | undefined;
|
|
32
|
+
} | undefined) => Promise<import("viem").Hex>;
|
|
33
|
+
signTypedData: <const typedData extends import("viem").TypedData | Record<string, unknown>, primaryType extends keyof typedData | "EIP712Domain" = keyof typedData>(parameters: import("viem").TypedDataDefinition<typedData, primaryType>) => Promise<import("viem").Hex>;
|
|
34
|
+
publicKey: import("viem").Hex;
|
|
35
|
+
source: "privateKey";
|
|
36
|
+
type: "local";
|
|
37
|
+
};
|
|
38
|
+
source: "environment";
|
|
39
|
+
accountName?: undefined;
|
|
40
|
+
} | {
|
|
41
|
+
account: {
|
|
42
|
+
address: import("viem/accounts").Address;
|
|
43
|
+
nonceManager?: import("viem/accounts").NonceManager | undefined;
|
|
44
|
+
sign: (parameters: {
|
|
45
|
+
hash: import("viem").Hash;
|
|
46
|
+
}) => Promise<import("viem").Hex>;
|
|
47
|
+
signAuthorization: (parameters: import("viem").AuthorizationRequest) => Promise<import("viem/accounts").SignAuthorizationReturnType>;
|
|
48
|
+
signMessage: ({ message }: {
|
|
49
|
+
message: import("viem").SignableMessage;
|
|
50
|
+
}) => Promise<import("viem").Hex>;
|
|
51
|
+
signTransaction: <serializer extends import("viem").SerializeTransactionFn<import("viem").TransactionSerializable> = import("viem").SerializeTransactionFn<import("viem").TransactionSerializable>, transaction extends Parameters<serializer>[0] = Parameters<serializer>[0]>(transaction: transaction, options?: {
|
|
52
|
+
serializer?: serializer | undefined;
|
|
53
|
+
} | undefined) => Promise<import("viem").Hex>;
|
|
54
|
+
signTypedData: <const typedData extends import("viem").TypedData | Record<string, unknown>, primaryType extends keyof typedData | "EIP712Domain" = keyof typedData>(parameters: import("viem").TypedDataDefinition<typedData, primaryType>) => Promise<import("viem").Hex>;
|
|
55
|
+
publicKey: import("viem").Hex;
|
|
56
|
+
source: "privateKey";
|
|
57
|
+
type: "local";
|
|
58
|
+
};
|
|
59
|
+
accountName: string;
|
|
60
|
+
source: "keychain";
|
|
61
|
+
}>;
|
|
62
|
+
/** Resolves an account supported by persistent CLI sessions. */
|
|
63
|
+
export declare function resolvePersistentAccount(name?: string): Promise<{
|
|
64
|
+
account: {
|
|
65
|
+
address: import("viem/accounts").Address;
|
|
66
|
+
nonceManager?: import("viem/accounts").NonceManager | undefined;
|
|
67
|
+
sign: (parameters: {
|
|
68
|
+
hash: import("viem").Hash;
|
|
69
|
+
}) => Promise<import("viem").Hex>;
|
|
70
|
+
signAuthorization: (parameters: import("viem").AuthorizationRequest) => Promise<import("viem/accounts").SignAuthorizationReturnType>;
|
|
71
|
+
signMessage: ({ message }: {
|
|
72
|
+
message: import("viem").SignableMessage;
|
|
73
|
+
}) => Promise<import("viem").Hex>;
|
|
74
|
+
signTransaction: <serializer extends import("viem").SerializeTransactionFn<import("viem").TransactionSerializable> = import("viem").SerializeTransactionFn<import("viem").TransactionSerializable>, transaction extends Parameters<serializer>[0] = Parameters<serializer>[0]>(transaction: transaction, options?: {
|
|
75
|
+
serializer?: serializer | undefined;
|
|
76
|
+
} | undefined) => Promise<import("viem").Hex>;
|
|
77
|
+
signTypedData: <const typedData extends import("viem").TypedData | Record<string, unknown>, primaryType extends keyof typedData | "EIP712Domain" = keyof typedData>(parameters: import("viem").TypedDataDefinition<typedData, primaryType>) => Promise<import("viem").Hex>;
|
|
78
|
+
publicKey: import("viem").Hex;
|
|
79
|
+
source: "privateKey";
|
|
80
|
+
type: "local";
|
|
81
|
+
};
|
|
82
|
+
source: "environment";
|
|
83
|
+
accountName?: undefined;
|
|
84
|
+
} | {
|
|
85
|
+
account: {
|
|
86
|
+
address: import("viem/accounts").Address;
|
|
87
|
+
nonceManager?: import("viem/accounts").NonceManager | undefined;
|
|
88
|
+
sign: (parameters: {
|
|
89
|
+
hash: import("viem").Hash;
|
|
90
|
+
}) => Promise<import("viem").Hex>;
|
|
91
|
+
signAuthorization: (parameters: import("viem").AuthorizationRequest) => Promise<import("viem/accounts").SignAuthorizationReturnType>;
|
|
92
|
+
signMessage: ({ message }: {
|
|
93
|
+
message: import("viem").SignableMessage;
|
|
94
|
+
}) => Promise<import("viem").Hex>;
|
|
95
|
+
signTransaction: <serializer extends import("viem").SerializeTransactionFn<import("viem").TransactionSerializable> = import("viem").SerializeTransactionFn<import("viem").TransactionSerializable>, transaction extends Parameters<serializer>[0] = Parameters<serializer>[0]>(transaction: transaction, options?: {
|
|
96
|
+
serializer?: serializer | undefined;
|
|
97
|
+
} | undefined) => Promise<import("viem").Hex>;
|
|
98
|
+
signTypedData: <const typedData extends import("viem").TypedData | Record<string, unknown>, primaryType extends keyof typedData | "EIP712Domain" = keyof typedData>(parameters: import("viem").TypedDataDefinition<typedData, primaryType>) => Promise<import("viem").Hex>;
|
|
99
|
+
publicKey: import("viem").Hex;
|
|
100
|
+
source: "privateKey";
|
|
101
|
+
type: "local";
|
|
102
|
+
};
|
|
103
|
+
accountName: string;
|
|
104
|
+
source: "keychain";
|
|
105
|
+
}>;
|
|
18
106
|
/**
|
|
19
107
|
* Resolve a CLI account to a viem `LocalAccount`.
|
|
20
108
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"account.d.ts","sourceRoot":"","sources":["../../src/cli/account.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"account.d.ts","sourceRoot":"","sources":["../../src/cli/account.ts"],"names":[],"mappings":"AAqCA,wBAAgB,WAAW,CACzB,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,EAAE,GACb,OAAO,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,KAAK,GAAG,IAAI,CAAA;CAAE,CAAC,CAMlE;AAED,wBAAgB,kBAAkB;WAOvB,MAAM;eAOF,MAAM,GAAG,IAAI;aAIf,IAAI;EAMhB;AAED,wBAAgB,kBAAkB,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAI5D;AAGD,wBAAgB,cAAc,CAAC,OAAO,SAAS;YAG7B,OAAO,CAAC,MAAM,EAAE,CAAC;WAgClB,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;eA0BvB,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;cA2CvB,OAAO,CAAC,IAAI,CAAC;EAoBhC;AAED,+EAA+E;AAC/E,wBAAsB,mBAAmB,CAAC,IAAI,CAAC,EAAE,MAAM;;;;;;;;;;;wTA/JtC,CAAC;sBACV,CAAC;;;;;;;;;;;;;;;;;;;;wTADQ,CAAC;sBACV,CAAC;;;;;;;;;GAkLR;AAED,gEAAgE;AAChE,wBAAsB,wBAAwB,CAAC,IAAI,CAAC,EAAE,MAAM;;;;;;;;;;;wTAtL3C,CAAC;sBACV,CAAC;;;;;;;;;;;;;;;;;;;;wTADQ,CAAC;sBACV,CAAC;;;;;;;;;GAqMR;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,cAAc,CAAC,IAAI,CAAC,EAAE,MAAM;;;;;;;;;;oTAzNjC,CAAC;kBACV,CAAC;;;;;;GA0NR"}
|
package/dist/cli/account.js
CHANGED
|
@@ -3,6 +3,7 @@ import * as fs from 'node:fs';
|
|
|
3
3
|
import * as os from 'node:os';
|
|
4
4
|
import * as path from 'node:path';
|
|
5
5
|
import { Errors } from 'incur';
|
|
6
|
+
import { isTempoAccount } from './utils.js';
|
|
6
7
|
const SERVICE_NAME = 'mppx';
|
|
7
8
|
const defaultCommandTimeoutMs = 10_000;
|
|
8
9
|
function commandTimeoutMs() {
|
|
@@ -196,6 +197,43 @@ export function createKeychain(account = 'main') {
|
|
|
196
197
|
},
|
|
197
198
|
};
|
|
198
199
|
}
|
|
200
|
+
/** Resolves a local CLI signer together with its durable account reference. */
|
|
201
|
+
export async function resolveLocalAccount(name) {
|
|
202
|
+
const { privateKeyToAccount } = await import('viem/accounts');
|
|
203
|
+
const envKey = process.env.MPPX_PRIVATE_KEY?.trim();
|
|
204
|
+
if (envKey)
|
|
205
|
+
return {
|
|
206
|
+
account: privateKeyToAccount(envKey),
|
|
207
|
+
source: 'environment',
|
|
208
|
+
};
|
|
209
|
+
const accountName = resolveAccountName(name);
|
|
210
|
+
const key = await createKeychain(accountName).get();
|
|
211
|
+
if (key)
|
|
212
|
+
return {
|
|
213
|
+
account: privateKeyToAccount(key),
|
|
214
|
+
accountName,
|
|
215
|
+
source: 'keychain',
|
|
216
|
+
};
|
|
217
|
+
throw new Error(`Account "${accountName}" not found.`);
|
|
218
|
+
}
|
|
219
|
+
/** Resolves an account supported by persistent CLI sessions. */
|
|
220
|
+
export async function resolvePersistentAccount(name) {
|
|
221
|
+
const accountName = resolveAccountName(name);
|
|
222
|
+
if (!process.env.MPPX_PRIVATE_KEY?.trim() && isTempoAccount(accountName))
|
|
223
|
+
throw new Errors.IncurError({
|
|
224
|
+
code: 'UNSUPPORTED_ACCOUNT',
|
|
225
|
+
message: 'Persistent sessions require an mppx account or MPPX_PRIVATE_KEY.',
|
|
226
|
+
exitCode: 2,
|
|
227
|
+
});
|
|
228
|
+
return resolveLocalAccount(name).catch((cause) => {
|
|
229
|
+
throw new Errors.IncurError({
|
|
230
|
+
code: 'ACCOUNT_NOT_FOUND',
|
|
231
|
+
message: cause instanceof Error ? cause.message : 'No account found.',
|
|
232
|
+
exitCode: 69,
|
|
233
|
+
...(cause instanceof Error && { cause }),
|
|
234
|
+
});
|
|
235
|
+
});
|
|
236
|
+
}
|
|
199
237
|
/**
|
|
200
238
|
* Resolve a CLI account to a viem `LocalAccount`.
|
|
201
239
|
*
|
|
@@ -214,14 +252,6 @@ export function createKeychain(account = 'main') {
|
|
|
214
252
|
* ```
|
|
215
253
|
*/
|
|
216
254
|
export async function resolveAccount(name) {
|
|
217
|
-
|
|
218
|
-
const envKey = process.env.MPPX_PRIVATE_KEY?.trim();
|
|
219
|
-
if (envKey)
|
|
220
|
-
return privateKeyToAccount(envKey);
|
|
221
|
-
const accountName = resolveAccountName(name);
|
|
222
|
-
const key = await createKeychain(accountName).get();
|
|
223
|
-
if (key)
|
|
224
|
-
return privateKeyToAccount(key);
|
|
225
|
-
throw new Error(`Account "${accountName}" not found.`);
|
|
255
|
+
return (await resolveLocalAccount(name)).account;
|
|
226
256
|
}
|
|
227
257
|
//# sourceMappingURL=account.js.map
|
package/dist/cli/account.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"account.js","sourceRoot":"","sources":["../../src/cli/account.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"account.js","sourceRoot":"","sources":["../../src/cli/account.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/cli.d.ts
CHANGED
|
@@ -6,6 +6,7 @@ declare const cli: Cli.Cli<{
|
|
|
6
6
|
};
|
|
7
7
|
options: {
|
|
8
8
|
confirm: boolean;
|
|
9
|
+
session: string;
|
|
9
10
|
silent: boolean;
|
|
10
11
|
userAgent: string;
|
|
11
12
|
verbose: number;
|
|
@@ -22,7 +23,7 @@ declare const cli: Cli.Cli<{
|
|
|
22
23
|
location?: boolean | undefined;
|
|
23
24
|
method?: string | undefined;
|
|
24
25
|
methodOpt?: string[] | undefined;
|
|
25
|
-
network?: "
|
|
26
|
+
network?: "testnet" | "mainnet" | undefined;
|
|
26
27
|
payWith?: string | undefined;
|
|
27
28
|
rpcUrl?: string | undefined;
|
|
28
29
|
slippage?: number | undefined;
|
package/dist/cli/cli.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../src/cli/cli.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,GAAG,EAAa,MAAM,OAAO,CAAA;
|
|
1
|
+
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../src/cli/cli.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,GAAG,EAAa,MAAM,OAAO,CAAA;AAiNtC,QAAA,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mCAgiBP,CAAA;AA23BF,eAAe,GAAG,CAAA"}
|
package/dist/cli/cli.js
CHANGED
|
@@ -11,9 +11,13 @@ import { normalizeHeaders } from '../client/internal/Fetch.js';
|
|
|
11
11
|
import * as Mppx from '../client/Mppx.js';
|
|
12
12
|
import * as Constants from '../Constants.js';
|
|
13
13
|
import { validate as validateDiscovery } from '../discovery/Validate.js';
|
|
14
|
+
import { isTempoSessionChallenge } from '../tempo/session/client/Transports.js';
|
|
14
15
|
import { createDefaultStore, createKeychain, resolveAccountName } from './account.js';
|
|
15
16
|
import { loadConfig, resolveAcceptPayment, selectChallenge } from './internal.js';
|
|
16
17
|
import { orderTempoChargeChallengesByBalance, readTempoKeystore, resolveTempoAccount, } from './plugins/tempo.js';
|
|
18
|
+
import sessions, { sessionCommandError } from './sessions/commands.js';
|
|
19
|
+
import { runPersistentSessionRequest } from './sessions/request.js';
|
|
20
|
+
import { createSessionRegistry } from './sessions/store.js';
|
|
17
21
|
import { chainName, confirm, decodeMemo, fetchBalanceLines, fmtBalance, fmtChallengeValue, fmtRequestValue, isTempoAccount, link, parseMethodOpts, pc, printRequestHeaders, printResponseHeaders, prompt, resolveChain, resolveFundingNetwork, resolveRpcUrl, } from './utils.js';
|
|
18
22
|
import validate from './validate/index.js';
|
|
19
23
|
const packageJson = createRequire(import.meta.url)('../../package.json');
|
|
@@ -183,6 +187,12 @@ const cli = Cli.create('mppx', {
|
|
|
183
187
|
.string()
|
|
184
188
|
.optional()
|
|
185
189
|
.describe('RPC endpoint, defaults to public RPC for chain (env: MPPX_RPC_URL)'),
|
|
190
|
+
session: z
|
|
191
|
+
.string()
|
|
192
|
+
.optional()
|
|
193
|
+
.default('auto')
|
|
194
|
+
.refine((value) => value === 'auto' || value === 'new' || /^0x[0-9a-fA-F]{64}$/.test(value), 'Expected auto, new, or a 32-byte channel ID')
|
|
195
|
+
.describe('Session selection: auto, new, or channel ID'),
|
|
186
196
|
silent: z.boolean().default(false).describe('Silent mode (suppress progress and info)'),
|
|
187
197
|
slippage: z.number().optional().describe('Tempo auto-swap max slippage percentage'),
|
|
188
198
|
userAgent: z
|
|
@@ -280,6 +290,8 @@ const cli = Cli.create('mppx', {
|
|
|
280
290
|
headers.Host = host;
|
|
281
291
|
}
|
|
282
292
|
try {
|
|
293
|
+
const methodOpts = parseMethodOpts(c.options.methodOpt);
|
|
294
|
+
const sessionRegistry = createSessionRegistry();
|
|
283
295
|
const init = { redirect: c.options.location ? 'follow' : 'manual' };
|
|
284
296
|
if (c.options.jsonBody) {
|
|
285
297
|
init.body = c.options.jsonBody;
|
|
@@ -304,6 +316,12 @@ const cli = Cli.create('mppx', {
|
|
|
304
316
|
printRequestHeaders(url, init, info);
|
|
305
317
|
const challengeResponse = await targetFetch(fetchUrl, init);
|
|
306
318
|
if (challengeResponse.status !== 402) {
|
|
319
|
+
if (c.options.session !== 'auto')
|
|
320
|
+
return c.error({
|
|
321
|
+
code: 'UNSUPPORTED_SESSION',
|
|
322
|
+
message: '--session requires a tempo/session payment challenge.',
|
|
323
|
+
exitCode: 2,
|
|
324
|
+
});
|
|
307
325
|
if (c.options.fail && challengeResponse.status >= 400)
|
|
308
326
|
return c.error({
|
|
309
327
|
code: 'HTTP_ERROR',
|
|
@@ -314,7 +332,6 @@ const cli = Cli.create('mppx', {
|
|
|
314
332
|
await writeResponseBody(challengeResponse);
|
|
315
333
|
return;
|
|
316
334
|
}
|
|
317
|
-
const methodOpts = parseMethodOpts(c.options.methodOpt);
|
|
318
335
|
const offeredChallenges = Challenge.fromResponseList(challengeResponse);
|
|
319
336
|
const currencyChallenges = filterChallengesByCurrency(offeredChallenges, c.options.currency);
|
|
320
337
|
if (c.options.currency && currencyChallenges.length === 0) {
|
|
@@ -376,7 +393,9 @@ const cli = Cli.create('mppx', {
|
|
|
376
393
|
// Display challenge
|
|
377
394
|
const shownKeys = new Set();
|
|
378
395
|
{
|
|
379
|
-
printResponseHeaders(challengeResponse,
|
|
396
|
+
printResponseHeaders(challengeResponse, challenge.method === 'tempo' && challenge.intent === 'session' && c.options.include
|
|
397
|
+
? { ...headerOpts, include: false, verbose: Math.max(headerOpts.verbose, 2) }
|
|
398
|
+
: headerOpts);
|
|
380
399
|
const challengeRows = (() => {
|
|
381
400
|
const skip = new Set(['id', 'request']);
|
|
382
401
|
const rows = [];
|
|
@@ -447,6 +466,43 @@ const cli = Cli.create('mppx', {
|
|
|
447
466
|
}
|
|
448
467
|
}
|
|
449
468
|
}
|
|
469
|
+
const persistentSessionAccount = process.env.MPPX_PRIVATE_KEY?.trim() ||
|
|
470
|
+
!isTempoAccount(resolveAccountName(c.options.account));
|
|
471
|
+
if (isTempoSessionChallenge(challenge) && persistentSessionAccount) {
|
|
472
|
+
try {
|
|
473
|
+
await runPersistentSessionRequest({
|
|
474
|
+
challenge,
|
|
475
|
+
challengeResponse: selectedChallengeResponse,
|
|
476
|
+
endpoint: url,
|
|
477
|
+
fetch: targetFetch,
|
|
478
|
+
fetchInput: fetchUrl,
|
|
479
|
+
init,
|
|
480
|
+
info,
|
|
481
|
+
methodOptions: methodOpts,
|
|
482
|
+
options: {
|
|
483
|
+
account: c.options.account,
|
|
484
|
+
fail: c.options.fail,
|
|
485
|
+
include: c.options.include,
|
|
486
|
+
network: c.options.network,
|
|
487
|
+
rpcUrl: c.options.rpcUrl,
|
|
488
|
+
session: c.options.session,
|
|
489
|
+
silent: c.options.silent,
|
|
490
|
+
verbose: c.options.verbose,
|
|
491
|
+
},
|
|
492
|
+
registry: sessionRegistry,
|
|
493
|
+
});
|
|
494
|
+
}
|
|
495
|
+
catch (error) {
|
|
496
|
+
return sessionCommandError(error, 'SESSION_REQUEST_FAILED');
|
|
497
|
+
}
|
|
498
|
+
return;
|
|
499
|
+
}
|
|
500
|
+
if (c.options.session !== 'auto')
|
|
501
|
+
return c.error({
|
|
502
|
+
code: 'UNSUPPORTED_SESSION',
|
|
503
|
+
message: '--session requires a tempo/session payment challenge.',
|
|
504
|
+
exitCode: 2,
|
|
505
|
+
});
|
|
450
506
|
// Create credential
|
|
451
507
|
let credential;
|
|
452
508
|
if (pluginResult?.createCredential)
|
|
@@ -1448,6 +1504,7 @@ cli.command(account);
|
|
|
1448
1504
|
cli.command(discover);
|
|
1449
1505
|
cli.command(init);
|
|
1450
1506
|
cli.command(services);
|
|
1507
|
+
cli.command(sessions);
|
|
1451
1508
|
cli.command(sign);
|
|
1452
1509
|
cli.command(validate);
|
|
1453
1510
|
export default cli;
|