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/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,39 @@
|
|
|
1
1
|
# mppx
|
|
2
2
|
|
|
3
|
+
## 0.8.14
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- a8e73b7: Replaced per-sender sponsored charge serialization with durable atomic aggregate fee-budget reservations. Independent expiring-nonce transactions ran concurrently, waited for capacity when the sponsor budget was full, and retained pending exposure until receipt reconciliation or transaction expiry.
|
|
8
|
+
- 6156f80: Added an optional `topUpAmount` policy for batching automatic Tempo session top-ups while preserving exact-shortfall behavior by default.
|
|
9
|
+
- 7711982: Added a single-file Hono Tempo API relay-backed charge example.
|
|
10
|
+
- 8935947: Fixed automatic session top-ups before signing HTTP, SSE, and WebSocket credentials, including preserving a durable resumed channel after a committed top-up when the paid request failed.
|
|
11
|
+
- 9cc198e: Fixed Tempo relay verification fallback and restricted server lifecycle hook combinations to unambiguous configurations.
|
|
12
|
+
- a3a0d82: Use expiring nonces for sponsored and unsponsored Tempo session management transactions.
|
|
13
|
+
- 4fbcd0a: Added automatic stablecoin swaps for Tempo session channel opens and top-ups.
|
|
14
|
+
- 0f91d5d: Marked legacy combined payment verification hooks as deprecated in favor of separate validation and broadcast hooks.
|
|
15
|
+
- 9932a58: Added structured error codes and diagnostics for payment validation failures.
|
|
16
|
+
- 8f2e847: Added Tempo API relay configuration for server-side charge validation and broadcast.
|
|
17
|
+
- c7c1e4b: Added generic `validate`/`broadcast` credential lifecycle APIs and a Tempo charge implementation; Tempo session credential handling remained unchanged.
|
|
18
|
+
|
|
19
|
+
## 0.8.13
|
|
20
|
+
|
|
21
|
+
### Patch Changes
|
|
22
|
+
|
|
23
|
+
- d807f92: Improved agent environment detection for automatic JSON validate output.
|
|
24
|
+
|
|
25
|
+
Added SDK guidance when validate could not find an OpenAPI discovery document.
|
|
26
|
+
|
|
27
|
+
- 2ff74a5: Fixed server method handlers to require request fields that were not configured as defaults, and exposed Tempo's resolved currency and decimals as defaults.
|
|
28
|
+
- bd9b05c: Added explicit per-message amounts and cancellation signals to manual WebSocket session metering.
|
|
29
|
+
- ae30448: Fixed server-driven Tempo session close and settlement transactions when the configured account is also the fee payer.
|
|
30
|
+
- 92c7b6e: Fixed hosted fee payer routing for caller-provided custom Viem transports.
|
|
31
|
+
- a20358e: Add a Node SQLite session `ChannelStore` that defaults to Tempo Wallet's channels database and can read existing wallet-cli v2 session rows.
|
|
32
|
+
- 8e95155: Added persistent CLI payment sessions with automatic reuse, inspection, and explicit closing.
|
|
33
|
+
- 8e71221: Rehydrate Tempo client sessions from server snapshots, reconciling the last accepted voucher with on-chain channel state before continuing cumulative payments.
|
|
34
|
+
- fb45074: Include the highest signed voucher in Tempo session bootstrap snapshots so cold clients can safely validate and resume an existing channel.
|
|
35
|
+
- 0f256ef: Added `onSessionSettlement` hook for visibility into on-chain session settlement transactions, with chain-agnostic context including trigger, txHash, channelId, cumulative amount, and incremental delta.
|
|
36
|
+
|
|
3
37
|
## 0.8.12
|
|
4
38
|
|
|
5
39
|
### Patch Changes
|
package/README.md
CHANGED
|
@@ -33,6 +33,8 @@
|
|
|
33
33
|
|
|
34
34
|
Full documentation, API reference, and guides are available at **[mpp.dev/sdk/typescript](https://mpp.dev/sdk/typescript)**.
|
|
35
35
|
|
|
36
|
+
Contributors changing Tempo sessions should read the [session design](./src/tempo/session/README.md) before altering credential, recovery, accounting, or transport behavior.
|
|
37
|
+
|
|
36
38
|
## Install
|
|
37
39
|
|
|
38
40
|
```bash
|
|
@@ -97,7 +99,8 @@ npx gitpick wevm/mppx/examples/charge
|
|
|
97
99
|
|
|
98
100
|
## CLI
|
|
99
101
|
|
|
100
|
-
`mppx` includes a basic CLI for making HTTP requests with automatic payment handling.
|
|
102
|
+
`mppx` includes a basic CLI for making HTTP requests with automatic payment handling. Tempo
|
|
103
|
+
session channels are retained and reused automatically until you close them.
|
|
101
104
|
|
|
102
105
|
```bash
|
|
103
106
|
# create account - stored in keychain, autofunded on testnet
|
|
@@ -105,8 +108,20 @@ mppx account create
|
|
|
105
108
|
|
|
106
109
|
# make request - automatic payment handling, curl-like api
|
|
107
110
|
mppx example.com
|
|
111
|
+
|
|
112
|
+
# open another session instead of reusing the preferred channel
|
|
113
|
+
mppx example.com --session new
|
|
114
|
+
|
|
115
|
+
# inspect and close retained sessions
|
|
116
|
+
mppx sessions list
|
|
117
|
+
mppx sessions view <channel-id>
|
|
118
|
+
mppx sessions close <channel-id>
|
|
119
|
+
mppx sessions close --all --yes
|
|
108
120
|
```
|
|
109
121
|
|
|
122
|
+
`--session auto` is the default. Pass `new` to open another channel or a channel ID to select one
|
|
123
|
+
explicitly.
|
|
124
|
+
|
|
110
125
|
You can also install globally to use the `mppx` CLI from anywhere:
|
|
111
126
|
|
|
112
127
|
```bash
|
package/dist/Errors.d.ts
CHANGED
|
@@ -8,6 +8,8 @@ export declare const Hints: {
|
|
|
8
8
|
* Base class for all payment-related errors.
|
|
9
9
|
*/
|
|
10
10
|
export declare abstract class PaymentError extends Error {
|
|
11
|
+
/** Safe method-specific context for diagnostics and relay responses. */
|
|
12
|
+
readonly details: Readonly<Record<string, unknown>> | undefined;
|
|
11
13
|
/** RFC 9457 Problem Details type URI. */
|
|
12
14
|
abstract readonly type: string;
|
|
13
15
|
/** Human-readable summary for RFC 9457 Problem Details. */
|
|
@@ -16,10 +18,14 @@ export declare abstract class PaymentError extends Error {
|
|
|
16
18
|
readonly status: number;
|
|
17
19
|
/** Actionable hint for resolving the error (RFC 9457 extension member). */
|
|
18
20
|
readonly hint: string | undefined;
|
|
21
|
+
protected constructor(message: string, options?: PaymentError.Options);
|
|
19
22
|
/** Converts the error to RFC 9457 Problem Details format. */
|
|
20
23
|
toProblemDetails(challengeId?: string): PaymentError.ProblemDetails;
|
|
21
24
|
}
|
|
22
25
|
export declare namespace PaymentError {
|
|
26
|
+
type Options = {
|
|
27
|
+
details?: Record<string, unknown> | undefined;
|
|
28
|
+
};
|
|
23
29
|
type ProblemDetails = {
|
|
24
30
|
/** RFC 9457 Problem Details type URI. */
|
|
25
31
|
type: string;
|
|
@@ -29,6 +35,8 @@ export declare namespace PaymentError {
|
|
|
29
35
|
status: number;
|
|
30
36
|
/** Human-readable explanation. */
|
|
31
37
|
detail: string;
|
|
38
|
+
/** Safe method-specific diagnostic context. */
|
|
39
|
+
details?: Readonly<Record<string, unknown>>;
|
|
32
40
|
/** Actionable hint for resolving the error (RFC 9457 extension member). */
|
|
33
41
|
hint?: string;
|
|
34
42
|
/** Associated challenge ID, if applicable. */
|
|
@@ -81,6 +89,8 @@ export declare class VerificationFailedError extends PaymentError {
|
|
|
81
89
|
}
|
|
82
90
|
export declare namespace VerificationFailedError {
|
|
83
91
|
type Options = {
|
|
92
|
+
/** Safe method-specific diagnostic context. */
|
|
93
|
+
details?: Record<string, unknown> | undefined;
|
|
84
94
|
/** Reason verification failed (e.g., "invalid signature", "insufficient amount"). */
|
|
85
95
|
reason?: string;
|
|
86
96
|
};
|
package/dist/Errors.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Errors.d.ts","sourceRoot":"","sources":["../src/Errors.ts"],"names":[],"mappings":"AAAA,gDAAgD;AAChD,eAAO,MAAM,KAAK;;;;CAOR,CAAA;AAEV;;GAEG;AACH,8BAAsB,YAAa,SAAQ,KAAK;IAC9C,yCAAyC;IACzC,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IAE9B,2DAA2D;IAC3D,QAAQ,CAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IAE/B,wBAAwB;IACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAM;IAE7B,2EAA2E;IAC3E,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,CAAA;IAEjC,6DAA6D;IAC7D,gBAAgB,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,YAAY,CAAC,cAAc;
|
|
1
|
+
{"version":3,"file":"Errors.d.ts","sourceRoot":"","sources":["../src/Errors.ts"],"names":[],"mappings":"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"}
|
package/dist/Errors.js
CHANGED
|
@@ -8,10 +8,16 @@ export const Hints = {
|
|
|
8
8
|
* Base class for all payment-related errors.
|
|
9
9
|
*/
|
|
10
10
|
export class PaymentError extends Error {
|
|
11
|
+
/** Safe method-specific context for diagnostics and relay responses. */
|
|
12
|
+
details;
|
|
11
13
|
/** HTTP status code. */
|
|
12
14
|
status = 402;
|
|
13
15
|
/** Actionable hint for resolving the error (RFC 9457 extension member). */
|
|
14
16
|
hint;
|
|
17
|
+
constructor(message, options = {}) {
|
|
18
|
+
super(message);
|
|
19
|
+
this.details = options.details;
|
|
20
|
+
}
|
|
15
21
|
/** Converts the error to RFC 9457 Problem Details format. */
|
|
16
22
|
toProblemDetails(challengeId) {
|
|
17
23
|
return {
|
|
@@ -19,6 +25,7 @@ export class PaymentError extends Error {
|
|
|
19
25
|
title: this.title,
|
|
20
26
|
status: this.status,
|
|
21
27
|
detail: this.message,
|
|
28
|
+
...(this.details && Object.keys(this.details).length > 0 && { details: this.details }),
|
|
22
29
|
...(this.hint && { hint: this.hint }),
|
|
23
30
|
...(challengeId && { challengeId }),
|
|
24
31
|
};
|
|
@@ -61,8 +68,10 @@ export class VerificationFailedError extends PaymentError {
|
|
|
61
68
|
title = 'Verification Failed';
|
|
62
69
|
type = 'https://paymentauth.org/problems/verification-failed';
|
|
63
70
|
constructor(options = {}) {
|
|
64
|
-
const { reason } = options;
|
|
65
|
-
super(reason ? `Payment verification failed: ${reason}.` : 'Payment verification failed.'
|
|
71
|
+
const { details, reason } = options;
|
|
72
|
+
super(reason ? `Payment verification failed: ${reason}.` : 'Payment verification failed.', {
|
|
73
|
+
details,
|
|
74
|
+
});
|
|
66
75
|
}
|
|
67
76
|
}
|
|
68
77
|
/**
|
package/dist/Errors.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Errors.js","sourceRoot":"","sources":["../src/Errors.ts"],"names":[],"mappings":"AAAA,gDAAgD;AAChD,MAAM,CAAC,MAAM,KAAK,GAAG;IACnB,eAAe,EACb,yKAAyK;IAC3K,mBAAmB,EACjB,6KAA6K;IAC/K,iBAAiB,EACf,yKAAyK;CACnK,CAAA;AAEV;;GAEG;AACH,MAAM,OAAgB,YAAa,SAAQ,KAAK;
|
|
1
|
+
{"version":3,"file":"Errors.js","sourceRoot":"","sources":["../src/Errors.ts"],"names":[],"mappings":"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"}
|
package/dist/Method.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type * as Challenge from './Challenge.js';
|
|
2
|
-
import
|
|
2
|
+
import * as Credential from './Credential.js';
|
|
3
3
|
import type { ExactPartial, LooseOmit, MaybePromise } from './internal/types.js';
|
|
4
4
|
import type * as Receipt from './Receipt.js';
|
|
5
5
|
import type * as Html from './server/internal/html/config.js';
|
|
@@ -83,11 +83,62 @@ export type VerifyContext<method extends Method> = {
|
|
|
83
83
|
envelope?: VerifiedChallengeEnvelope<z.output<method['schema']['request']>, z.output<method['schema']['credential']['payload']>, method['intent'], method['name']> | undefined;
|
|
84
84
|
request: z.input<method['schema']['request']>;
|
|
85
85
|
};
|
|
86
|
+
/** Validation hook parameters for a single method. */
|
|
87
|
+
export type ValidateContext<method extends Method> = VerifyContext<method>;
|
|
86
88
|
/** Response hook parameters for a single method. */
|
|
87
89
|
export type RespondContext<method extends Method> = VerifyContext<method> & {
|
|
88
90
|
input: globalThis.Request;
|
|
89
91
|
receipt: Receipt.Receipt;
|
|
90
92
|
};
|
|
93
|
+
/**
|
|
94
|
+
* Non-mutating method-specific validation result.
|
|
95
|
+
*
|
|
96
|
+
* Returned by {@link ValidateFn} and exposed from `mppx.validateCredential()`.
|
|
97
|
+
* This confirms that a credential is currently acceptable to the payment
|
|
98
|
+
* method; it does not settle, reserve, or otherwise consume the payment.
|
|
99
|
+
*/
|
|
100
|
+
export type Validation<method extends Method = Method, details = unknown> = Readonly<{
|
|
101
|
+
/**
|
|
102
|
+
* The challenge echoed by the credential and accepted by the method.
|
|
103
|
+
*
|
|
104
|
+
* Callers using `Mppx.validateCredential()` receive a challenge whose HMAC,
|
|
105
|
+
* expiry, route binding, and method identity have already been checked.
|
|
106
|
+
* Lower-level `Method.validateCredential()` callers must verify challenge
|
|
107
|
+
* issuance and route binding themselves.
|
|
108
|
+
*/
|
|
109
|
+
challenge: Challenge.Challenge<z.output<method['schema']['request']>, method['intent'], method['name']>;
|
|
110
|
+
/**
|
|
111
|
+
* The submitted credential with its method-specific payload parsed by the
|
|
112
|
+
* selected method schema. This is the exact credential validation examined.
|
|
113
|
+
*/
|
|
114
|
+
credential: Credential.Credential<z.output<method['schema']['credential']['payload']>, Challenge.Challenge<z.output<method['schema']['request']>, method['intent'], method['name']>>;
|
|
115
|
+
/**
|
|
116
|
+
* Method-defined, non-mutating validation data.
|
|
117
|
+
*
|
|
118
|
+
* Its shape is intentionally method-specific—for example, a recovered payer
|
|
119
|
+
* address or a simulation result. Consumers must not assume a particular
|
|
120
|
+
* shape or use it as a settlement receipt.
|
|
121
|
+
*/
|
|
122
|
+
details: details;
|
|
123
|
+
/** The validated payment intent, repeated for convenient dispatch. */
|
|
124
|
+
intent: method['intent'];
|
|
125
|
+
/** The validated payment method, repeated for convenient dispatch. */
|
|
126
|
+
method: method['name'];
|
|
127
|
+
/**
|
|
128
|
+
* The validated method request after the method's schema transforms.
|
|
129
|
+
*
|
|
130
|
+
* For `Mppx.validateCredential()` with route options, this is the
|
|
131
|
+
* authoritative route request after defaults and request-hook transforms.
|
|
132
|
+
*/
|
|
133
|
+
request: z.output<method['schema']['request']>;
|
|
134
|
+
/**
|
|
135
|
+
* Optional payer identity declared by the credential.
|
|
136
|
+
*
|
|
137
|
+
* This is an asserted identity, not independent proof of control; methods
|
|
138
|
+
* that rely on it must validate the relationship to the credential payload.
|
|
139
|
+
*/
|
|
140
|
+
source?: string | undefined;
|
|
141
|
+
}>;
|
|
91
142
|
/**
|
|
92
143
|
* A server-side configured method with verification logic.
|
|
93
144
|
*/
|
|
@@ -100,8 +151,15 @@ export type Server<method extends Method = Method, defaults extends ExactPartial
|
|
|
100
151
|
preflight?: PreflightFn<method> | undefined;
|
|
101
152
|
request?: RequestFn<method> | undefined;
|
|
102
153
|
respond?: RespondFn<method> | undefined;
|
|
154
|
+
broadcast?: BroadcastFn<method> | undefined;
|
|
103
155
|
stableBinding?: StableBindingFn<method> | undefined;
|
|
104
156
|
transport?: transportOverride | undefined;
|
|
157
|
+
validate?: ValidateFn<method> | undefined;
|
|
158
|
+
/**
|
|
159
|
+
* @deprecated Use `validate` for the non-mutating pre-check and `broadcast`
|
|
160
|
+
* for settlement. `verify` combines both operations and may consume payment
|
|
161
|
+
* state, so it cannot support a safe pre-check endpoint.
|
|
162
|
+
*/
|
|
105
163
|
verify: VerifyFn<method>;
|
|
106
164
|
};
|
|
107
165
|
export type AnyServer = Server<any, any, any, any, any>;
|
|
@@ -162,8 +220,40 @@ export type PreflightFn<method extends Method> = (parameters: {
|
|
|
162
220
|
* default amount/currency/recipient binding used by generic methods.
|
|
163
221
|
*/
|
|
164
222
|
export type StableBindingFn<method extends Method> = (request: z.output<method['schema']['request']>) => Record<string, unknown>;
|
|
165
|
-
/**
|
|
223
|
+
/**
|
|
224
|
+
* Legacy combined validation and settlement function for a single method.
|
|
225
|
+
*
|
|
226
|
+
* @deprecated Implement `validate` and `broadcast` instead. `validate` must
|
|
227
|
+
* be non-mutating; `broadcast` performs the terminal payment operation. This
|
|
228
|
+
* hook remains only for existing methods that cannot yet split those phases.
|
|
229
|
+
*/
|
|
166
230
|
export type VerifyFn<method extends Method> = (parameters: VerifyContext<method>) => Promise<Receipt.Receipt>;
|
|
231
|
+
/**
|
|
232
|
+
* Non-mutating validation function for a single method.
|
|
233
|
+
*
|
|
234
|
+
* @returns A {@link Validation} record describing the credential that was
|
|
235
|
+
* accepted. It must not settle, reserve, or otherwise consume payment state.
|
|
236
|
+
*/
|
|
237
|
+
export type ValidateFn<method extends Method> = (parameters: ValidateContext<method>) => Promise<Validation<method>>;
|
|
238
|
+
/** Terminal payment function for a single method. */
|
|
239
|
+
export type BroadcastFn<method extends Method> = (parameters: VerifyContext<method>) => Promise<Receipt.Receipt>;
|
|
240
|
+
/**
|
|
241
|
+
* Validates a credential against one of the configured methods.
|
|
242
|
+
*
|
|
243
|
+
* This checks credential structure, challenge expiry, and method-specific
|
|
244
|
+
* validation. It does not prove that the challenge was issued by a particular
|
|
245
|
+
* server; hosts that issue challenges must verify that binding separately.
|
|
246
|
+
*/
|
|
247
|
+
export declare function validateCredential<const methods extends readonly AnyServer[]>(methods: methods, input: string | Credential.Credential): Promise<Validation<methods[number]>>;
|
|
248
|
+
/**
|
|
249
|
+
* Re-validates and performs the terminal payment operation for a credential.
|
|
250
|
+
*
|
|
251
|
+
* This does not prove that the challenge was issued by a particular server;
|
|
252
|
+
* hosts that issue challenges must verify that binding separately.
|
|
253
|
+
*/
|
|
254
|
+
export declare function broadcastCredential<const methods extends readonly AnyServer[]>(methods: methods, input: string | Credential.Credential): Promise<Receipt.Receipt>;
|
|
255
|
+
/** @internal */
|
|
256
|
+
export declare function selectServerMethod(methods: readonly AnyServer[], challenge: Challenge.Challenge): AnyServer | undefined;
|
|
167
257
|
/**
|
|
168
258
|
* Optional respond function for a server-side method.
|
|
169
259
|
*
|
|
@@ -239,7 +329,19 @@ export declare namespace toServer {
|
|
|
239
329
|
respond?: RespondFn<method> | undefined;
|
|
240
330
|
stableBinding?: StableBindingFn<method> | undefined;
|
|
241
331
|
transport?: transportOverride | Transport.AnyTransport | undefined;
|
|
332
|
+
} & ({
|
|
333
|
+
broadcast: BroadcastFn<method>;
|
|
334
|
+
validate?: ValidateFn<method> | undefined;
|
|
335
|
+
verify?: undefined;
|
|
336
|
+
} | {
|
|
337
|
+
broadcast?: undefined;
|
|
338
|
+
validate?: undefined;
|
|
339
|
+
/**
|
|
340
|
+
* @deprecated Use `validate` and `broadcast` for new methods. This
|
|
341
|
+
* combined hook may mutate payment state and cannot power a safe
|
|
342
|
+
* validation-only endpoint.
|
|
343
|
+
*/
|
|
242
344
|
verify: VerifyFn<method>;
|
|
243
|
-
};
|
|
345
|
+
});
|
|
244
346
|
}
|
|
245
347
|
//# sourceMappingURL=Method.d.ts.map
|
package/dist/Method.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Method.d.ts","sourceRoot":"","sources":["../src/Method.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Method.d.ts","sourceRoot":"","sources":["../src/Method.ts"],"names":[],"mappings":"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"}
|
package/dist/Method.js
CHANGED
|
@@ -1,3 +1,7 @@
|
|
|
1
|
+
import * as Constants from './Constants.js';
|
|
2
|
+
import * as Credential from './Credential.js';
|
|
3
|
+
import * as Errors from './Errors.js';
|
|
4
|
+
import * as Expires from './Expires.js';
|
|
1
5
|
/**
|
|
2
6
|
* Creates a payment method.
|
|
3
7
|
*
|
|
@@ -28,6 +32,90 @@
|
|
|
28
32
|
export function from(method) {
|
|
29
33
|
return method;
|
|
30
34
|
}
|
|
35
|
+
/**
|
|
36
|
+
* Validates a credential against one of the configured methods.
|
|
37
|
+
*
|
|
38
|
+
* This checks credential structure, challenge expiry, and method-specific
|
|
39
|
+
* validation. It does not prove that the challenge was issued by a particular
|
|
40
|
+
* server; hosts that issue challenges must verify that binding separately.
|
|
41
|
+
*/
|
|
42
|
+
export async function validateCredential(methods, input) {
|
|
43
|
+
const prepared = prepareCredential(methods, input);
|
|
44
|
+
if (!prepared.method.validate)
|
|
45
|
+
throw new Errors.VerificationFailedError({
|
|
46
|
+
details: { intent: prepared.method.intent, method: prepared.method.name },
|
|
47
|
+
reason: `${prepared.method.name}/${prepared.method.intent} does not support non-mutating credential validation`,
|
|
48
|
+
});
|
|
49
|
+
return prepared.method.validate({
|
|
50
|
+
credential: prepared.credential,
|
|
51
|
+
request: prepared.request,
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Re-validates and performs the terminal payment operation for a credential.
|
|
56
|
+
*
|
|
57
|
+
* This does not prove that the challenge was issued by a particular server;
|
|
58
|
+
* hosts that issue challenges must verify that binding separately.
|
|
59
|
+
*/
|
|
60
|
+
export async function broadcastCredential(methods, input) {
|
|
61
|
+
const prepared = prepareCredential(methods, input);
|
|
62
|
+
const { method } = prepared;
|
|
63
|
+
if (method.broadcast && method.validate)
|
|
64
|
+
await method.validate({ credential: prepared.credential, request: prepared.request });
|
|
65
|
+
const broadcast = method.broadcast ?? method.verify;
|
|
66
|
+
return broadcast({ credential: prepared.credential, request: prepared.request });
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Parses a submitted credential into the inputs required for method execution.
|
|
70
|
+
*
|
|
71
|
+
* Dispatch is based on the challenge method and intent. When more than one
|
|
72
|
+
* server method handles the same wire identity, session protocol details select
|
|
73
|
+
* the appropriate implementation. The helper then asserts challenge expiry and
|
|
74
|
+
* parses the method-specific credential payload before returning the selected
|
|
75
|
+
* method and the unmodified challenge request.
|
|
76
|
+
*
|
|
77
|
+
* This intentionally does not verify that the challenge was issued by a
|
|
78
|
+
* particular host, authorize the caller or requested resource, validate the
|
|
79
|
+
* method request, or invoke method lifecycle hooks. Hosts that issue challenges
|
|
80
|
+
* must verify their challenge binding before accepting the credential.
|
|
81
|
+
*/
|
|
82
|
+
function prepareCredential(methods, input) {
|
|
83
|
+
const credential = typeof input === 'string' ? Credential.deserialize(input) : input;
|
|
84
|
+
const candidates = methods.filter((method) => method.name === credential.challenge.method && method.intent === credential.challenge.intent);
|
|
85
|
+
const method = selectServerMethod(candidates, credential.challenge);
|
|
86
|
+
if (!method)
|
|
87
|
+
throw new Errors.InvalidChallengeError({
|
|
88
|
+
id: credential.challenge.id,
|
|
89
|
+
reason: `no registered method for ${credential.challenge.method}/${credential.challenge.intent}`,
|
|
90
|
+
});
|
|
91
|
+
Expires.assert(credential.challenge.expires, credential.challenge.id);
|
|
92
|
+
let payload;
|
|
93
|
+
try {
|
|
94
|
+
payload = method.schema.credential.payload.parse(credential.payload);
|
|
95
|
+
}
|
|
96
|
+
catch (error) {
|
|
97
|
+
throw new Errors.InvalidPayloadError(error instanceof Error ? { reason: error.message } : {});
|
|
98
|
+
}
|
|
99
|
+
return {
|
|
100
|
+
credential: { ...credential, payload },
|
|
101
|
+
method,
|
|
102
|
+
request: credential.challenge.request,
|
|
103
|
+
};
|
|
104
|
+
}
|
|
105
|
+
/** @internal */
|
|
106
|
+
export function selectServerMethod(methods, challenge) {
|
|
107
|
+
if (methods.length <= 1)
|
|
108
|
+
return methods[0];
|
|
109
|
+
if (challenge.method !== Constants.Methods.tempo ||
|
|
110
|
+
challenge.intent !== Constants.Intents.session)
|
|
111
|
+
return methods[0];
|
|
112
|
+
const sessionProtocol = Constants.getMethodDetail(challenge.request.methodDetails, Constants.MethodDetailKeys.sessionProtocol);
|
|
113
|
+
if (sessionProtocol === undefined || sessionProtocol === Constants.SessionProtocols.v1)
|
|
114
|
+
return methods.find((method) => method.alias === 'sessionLegacy') ?? methods[0];
|
|
115
|
+
if (sessionProtocol === Constants.SessionProtocols.v2)
|
|
116
|
+
return methods.find((method) => method.alias === undefined) ?? methods[0];
|
|
117
|
+
return undefined;
|
|
118
|
+
}
|
|
31
119
|
/**
|
|
32
120
|
* Extends a method with client-side credential creation logic.
|
|
33
121
|
*
|
|
@@ -69,7 +157,17 @@ export function toClient(method, options) {
|
|
|
69
157
|
* ```
|
|
70
158
|
*/
|
|
71
159
|
export function toServer(method, options) {
|
|
72
|
-
const { alias, authorize, defaults, extensions, html, preflight, request, respond, stableBinding, transport, verify, } = options;
|
|
160
|
+
const { alias, authorize, defaults, extensions, html, preflight, request, respond, broadcast, stableBinding, transport, validate, verify, } = options;
|
|
161
|
+
const effectiveVerify = verify ??
|
|
162
|
+
(async (parameters) => {
|
|
163
|
+
if (validate)
|
|
164
|
+
await validate(parameters);
|
|
165
|
+
if (!broadcast)
|
|
166
|
+
throw new Errors.VerificationFailedError({
|
|
167
|
+
reason: `${method.name}/${method.intent} does not support credential broadcast`,
|
|
168
|
+
});
|
|
169
|
+
return broadcast(parameters);
|
|
170
|
+
});
|
|
73
171
|
return {
|
|
74
172
|
...method,
|
|
75
173
|
alias,
|
|
@@ -80,9 +178,11 @@ export function toServer(method, options) {
|
|
|
80
178
|
preflight,
|
|
81
179
|
request,
|
|
82
180
|
respond,
|
|
181
|
+
broadcast,
|
|
83
182
|
stableBinding,
|
|
84
183
|
transport,
|
|
85
|
-
|
|
184
|
+
validate,
|
|
185
|
+
verify: effectiveVerify,
|
|
86
186
|
};
|
|
87
187
|
}
|
|
88
188
|
//# sourceMappingURL=Method.js.map
|
package/dist/Method.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Method.js","sourceRoot":"","sources":["../src/Method.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Method.js","sourceRoot":"","sources":["../src/Method.ts"],"names":[],"mappings":"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"}
|