mppx 0.4.11 → 0.4.12

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.
Files changed (66) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/dist/internal/env.d.ts +1 -1
  3. package/dist/internal/env.d.ts.map +1 -1
  4. package/dist/internal/env.js +2 -6
  5. package/dist/internal/env.js.map +1 -1
  6. package/dist/internal/types.d.ts +23 -0
  7. package/dist/internal/types.d.ts.map +1 -1
  8. package/dist/server/Mppx.d.ts +1 -1
  9. package/dist/server/Mppx.d.ts.map +1 -1
  10. package/dist/server/Mppx.js +49 -2
  11. package/dist/server/Mppx.js.map +1 -1
  12. package/dist/tempo/Methods.d.ts +15 -0
  13. package/dist/tempo/Methods.d.ts.map +1 -1
  14. package/dist/tempo/Methods.js +27 -3
  15. package/dist/tempo/Methods.js.map +1 -1
  16. package/dist/tempo/client/Charge.d.ts +21 -0
  17. package/dist/tempo/client/Charge.d.ts.map +1 -1
  18. package/dist/tempo/client/Charge.js +33 -7
  19. package/dist/tempo/client/Charge.js.map +1 -1
  20. package/dist/tempo/client/Methods.d.ts +15 -0
  21. package/dist/tempo/client/Methods.d.ts.map +1 -1
  22. package/dist/tempo/internal/account.d.ts +5 -11
  23. package/dist/tempo/internal/account.d.ts.map +1 -1
  24. package/dist/tempo/internal/charge.d.ts +20 -0
  25. package/dist/tempo/internal/charge.d.ts.map +1 -0
  26. package/dist/tempo/internal/charge.js +23 -0
  27. package/dist/tempo/internal/charge.js.map +1 -0
  28. package/dist/tempo/internal/fee-payer.d.ts.map +1 -1
  29. package/dist/tempo/internal/fee-payer.js +15 -3
  30. package/dist/tempo/internal/fee-payer.js.map +1 -1
  31. package/dist/tempo/server/Charge.d.ts +17 -2
  32. package/dist/tempo/server/Charge.d.ts.map +1 -1
  33. package/dist/tempo/server/Charge.js +148 -99
  34. package/dist/tempo/server/Charge.js.map +1 -1
  35. package/dist/tempo/server/Methods.d.ts +17 -2
  36. package/dist/tempo/server/Methods.d.ts.map +1 -1
  37. package/dist/tempo/server/Methods.js +4 -1
  38. package/dist/tempo/server/Methods.js.map +1 -1
  39. package/dist/tempo/server/Session.d.ts +9 -4
  40. package/dist/tempo/server/Session.d.ts.map +1 -1
  41. package/dist/tempo/server/Session.js +18 -3
  42. package/dist/tempo/server/Session.js.map +1 -1
  43. package/dist/tempo/session/Chain.d.ts +18 -2
  44. package/dist/tempo/session/Chain.d.ts.map +1 -1
  45. package/dist/tempo/session/Chain.js +18 -14
  46. package/dist/tempo/session/Chain.js.map +1 -1
  47. package/package.json +1 -1
  48. package/src/internal/env.test.ts +12 -12
  49. package/src/internal/env.ts +2 -6
  50. package/src/internal/types.ts +25 -0
  51. package/src/server/Mppx.test.ts +287 -0
  52. package/src/server/Mppx.ts +59 -5
  53. package/src/tempo/Methods.test.ts +79 -0
  54. package/src/tempo/Methods.ts +53 -17
  55. package/src/tempo/client/Charge.ts +41 -8
  56. package/src/tempo/internal/account.ts +7 -14
  57. package/src/tempo/internal/charge.ts +43 -0
  58. package/src/tempo/internal/fee-payer.test.ts +33 -14
  59. package/src/tempo/internal/fee-payer.ts +21 -6
  60. package/src/tempo/server/Charge.test.ts +231 -0
  61. package/src/tempo/server/Charge.ts +193 -124
  62. package/src/tempo/server/Methods.ts +4 -1
  63. package/src/tempo/server/Session.test.ts +28 -0
  64. package/src/tempo/server/Session.ts +26 -17
  65. package/src/tempo/session/Chain.test.ts +25 -5
  66. package/src/tempo/session/Chain.ts +30 -14
@@ -13,7 +13,10 @@ import { session as session_, settle as settle_ } from './Session.js';
13
13
  * ```
14
14
  */
15
15
  export function tempo(parameters) {
16
- return [tempo.charge(parameters), tempo.session(parameters)];
16
+ return [
17
+ tempo.charge(parameters),
18
+ tempo.session(parameters),
19
+ ];
17
20
  }
18
21
  (function (tempo) {
19
22
  /** Creates a Tempo `charge` method for one-time TIP-20 token transfers. */
@@ -1 +1 @@
1
- {"version":3,"file":"Methods.js","sourceRoot":"","sources":["../../../src/tempo/server/Methods.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,OAAO,EAAE,MAAM,aAAa,CAAA;AAC/C,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,IAAI,OAAO,EAAE,MAAM,cAAc,CAAA;AAErE;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,KAAK,CAA4C,UAAuB;IACtF,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,CAAU,CAAA;AACvE,CAAC;AAED,WAAiB,KAAK;IAGpB,2EAA2E;IAC9D,YAAM,GAAG,OAAO,CAAA;IAC7B,gFAAgF;IACnE,aAAO,GAAG,QAAQ,CAAA;IAC/B,gFAAgF;IACnE,YAAM,GAAG,OAAO,CAAA;AAC/B,CAAC,EATgB,KAAK,KAAL,KAAK,QASrB"}
1
+ {"version":3,"file":"Methods.js","sourceRoot":"","sources":["../../../src/tempo/server/Methods.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,OAAO,EAAE,MAAM,aAAa,CAAA;AAC/C,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,IAAI,OAAO,EAAE,MAAM,cAAc,CAAA;AAErE;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,KAAK,CAA4C,UAAuB;IACtF,OAAO;QACL,KAAK,CAAC,MAAM,CAAC,UAAyC,CAAC;QACvD,KAAK,CAAC,OAAO,CAAC,UAA0C,CAAC;KACjD,CAAA;AACZ,CAAC;AAED,WAAiB,KAAK;IAGpB,2EAA2E;IAC9D,YAAM,GAAG,OAAO,CAAA;IAC7B,gFAAgF;IACnE,aAAO,GAAG,QAAQ,CAAA;IAC/B,gFAAgF;IACnE,YAAM,GAAG,OAAO,CAAA;AAC/B,CAAC,EATgB,KAAK,KAAL,KAAK,QASrB"}
@@ -11,7 +11,7 @@
11
11
  * request, use {@link ../session/Sse} instead.
12
12
  */
13
13
  import { type Address, type Hex, type Account as viem_Account, type Client as viem_Client } from 'viem';
14
- import type { LooseOmit } from '../../internal/types.js';
14
+ import type { LooseOmit, NoExtraKeys } from '../../internal/types.js';
15
15
  import * as Method from '../../Method.js';
16
16
  import * as Store from '../../Store.js';
17
17
  import * as Client from '../../viem/Client.js';
@@ -41,7 +41,7 @@ import * as Transport from './internal/transport.js';
41
41
  * })
42
42
  * ```
43
43
  */
44
- export declare function session<const parameters extends session.Parameters>(p?: parameters): Method.Server<{
44
+ export declare function session<const parameters extends session.Parameters>(p?: NoExtraKeys<parameters, session.Parameters>): Method.Server<{
45
45
  readonly name: "tempo";
46
46
  readonly intent: "session";
47
47
  readonly schema: {
@@ -154,8 +154,13 @@ export declare namespace session {
154
154
  */
155
155
  export declare function settle(store: ChannelStore.ChannelStore, client: viem_Client, channelId: Hex, options?: {
156
156
  escrowContract?: Address | undefined;
157
- feePayer?: viem_Account | undefined;
158
- }): Promise<Hex>;
157
+ } & ({
158
+ feePayer: viem_Account;
159
+ account: viem_Account;
160
+ } | {
161
+ feePayer?: undefined;
162
+ account?: viem_Account | undefined;
163
+ })): Promise<Hex>;
159
164
  /**
160
165
  * Charge against a channel's balance.
161
166
  *
@@ -1 +1 @@
1
- {"version":3,"file":"Session.d.ts","sourceRoot":"","sources":["../../../src/tempo/server/Session.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,EACL,KAAK,OAAO,EACZ,KAAK,GAAG,EAER,KAAK,OAAO,IAAI,YAAY,EAC5B,KAAK,MAAM,IAAI,WAAW,EAC3B,MAAM,MAAM,CAAA;AAcb,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AACxD,OAAO,KAAK,MAAM,MAAM,iBAAiB,CAAA;AACzC,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAA;AACvC,OAAO,KAAK,MAAM,MAAM,sBAAsB,CAAA;AAC9C,OAAO,KAAK,OAAO,MAAM,wBAAwB,CAAA;AAEjD,OAAO,KAAK,KAAK,KAAK,MAAM,sBAAsB,CAAA;AAClD,OAAO,KAAK,OAAO,MAAM,eAAe,CAAA;AASxC,OAAO,KAAK,YAAY,MAAM,4BAA4B,CAAA;AAI1D,OAAO,KAAK,SAAS,MAAM,yBAAyB,CAAA;AAWpD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,OAAO,CAAC,KAAK,CAAC,UAAU,SAAS,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC,EAAE,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gHAuMlF;AAED,MAAM,CAAC,OAAO,WAAW,OAAO,CAAC;IAC/B,KAAK,QAAQ,GAAG,SAAS,CACvB,MAAM,CAAC,eAAe,CAAC,OAAO,OAAO,CAAC,OAAO,CAAC,EAC9C,UAAU,GAAG,WAAW,CACzB,CAAA;IAED,KAAK,UAAU,GAAG;QAChB,+LAA+L;QAC/L,eAAe,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;QACpC,sEAAsE;QACtE,eAAe,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;QACpC;;;;;;;;;;WAUG;QACH,mBAAmB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;QACzC,uCAAuC;QACvC,KAAK,CAAC,EAAE,KAAK,CAAC,KAAK,GAAG,SAAS,CAAA;QAC/B;;;;;;WAMG;QACH,GAAG,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC,GAAG,CAAC,OAAO,GAAG,SAAS,CAAA;QACjD,oBAAoB;QACpB,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;KAC9B,GAAG,OAAO,CAAC,OAAO,CAAC,UAAU,GAC5B,MAAM,CAAC,WAAW,CAAC,UAAU,GAC7B,QAAQ,CAAA;IAEV,KAAK,cAAc,CAAC,UAAU,SAAS,UAAU,IAAI,KAAK,CAAC,cAAc,CACvE,UAAU,EACV,QAAQ,CACT,GAAG;QACF,QAAQ,EAAE,MAAM,CAAA;QAChB,cAAc,EAAE,OAAO,CAAA;KACxB,CAAA;CACF;AAED;;GAEG;AACH,wBAAsB,MAAM,CAC1B,KAAK,EAAE,YAAY,CAAC,YAAY,EAChC,MAAM,EAAE,WAAW,EACnB,SAAS,EAAE,GAAG,EACd,OAAO,CAAC,EAAE;IACR,cAAc,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IACpC,QAAQ,CAAC,EAAE,YAAY,GAAG,SAAS,CAAA;CACpC,GACA,OAAO,CAAC,GAAG,CAAC,CA2Bd;AAED;;;;;;;;GAQG;AACH,wBAAsB,MAAM,CAC1B,KAAK,EAAE,YAAY,CAAC,YAAY,EAChC,SAAS,EAAE,GAAG,EACd,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,CAc7B"}
1
+ {"version":3,"file":"Session.d.ts","sourceRoot":"","sources":["../../../src/tempo/server/Session.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,EACL,KAAK,OAAO,EACZ,KAAK,GAAG,EAGR,KAAK,OAAO,IAAI,YAAY,EAC5B,KAAK,MAAM,IAAI,WAAW,EAC3B,MAAM,MAAM,CAAA;AAcb,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AACrE,OAAO,KAAK,MAAM,MAAM,iBAAiB,CAAA;AACzC,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAA;AACvC,OAAO,KAAK,MAAM,MAAM,sBAAsB,CAAA;AAC9C,OAAO,KAAK,OAAO,MAAM,wBAAwB,CAAA;AAEjD,OAAO,KAAK,KAAK,KAAK,MAAM,sBAAsB,CAAA;AAClD,OAAO,KAAK,OAAO,MAAM,eAAe,CAAA;AASxC,OAAO,KAAK,YAAY,MAAM,4BAA4B,CAAA;AAI1D,OAAO,KAAK,SAAS,MAAM,yBAAyB,CAAA;AAWpD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,OAAO,CAAC,KAAK,CAAC,UAAU,SAAS,OAAO,CAAC,UAAU,EACjE,CAAC,CAAC,EAAE,WAAW,CAAC,UAAU,EAAE,OAAO,CAAC,UAAU,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gHAwMhD;AAED,MAAM,CAAC,OAAO,WAAW,OAAO,CAAC;IAC/B,KAAK,QAAQ,GAAG,SAAS,CACvB,MAAM,CAAC,eAAe,CAAC,OAAO,OAAO,CAAC,OAAO,CAAC,EAC9C,UAAU,GAAG,WAAW,CACzB,CAAA;IAED,KAAK,UAAU,GAAG;QAChB,+LAA+L;QAC/L,eAAe,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;QACpC,sEAAsE;QACtE,eAAe,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;QACpC;;;;;;;;;;WAUG;QACH,mBAAmB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;QACzC,uCAAuC;QACvC,KAAK,CAAC,EAAE,KAAK,CAAC,KAAK,GAAG,SAAS,CAAA;QAC/B;;;;;;WAMG;QACH,GAAG,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC,GAAG,CAAC,OAAO,GAAG,SAAS,CAAA;QACjD,oBAAoB;QACpB,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;KAC9B,GAAG,OAAO,CAAC,OAAO,CAAC,UAAU,GAC5B,MAAM,CAAC,WAAW,CAAC,UAAU,GAC7B,QAAQ,CAAA;IAEV,KAAK,cAAc,CAAC,UAAU,SAAS,UAAU,IAAI,KAAK,CAAC,cAAc,CACvE,UAAU,EACV,QAAQ,CACT,GAAG;QACF,QAAQ,EAAE,MAAM,CAAA;QAChB,cAAc,EAAE,OAAO,CAAA;KACxB,CAAA;CACF;AAED;;GAEG;AACH,wBAAsB,MAAM,CAC1B,KAAK,EAAE,YAAY,CAAC,YAAY,EAChC,MAAM,EAAE,WAAW,EACnB,SAAS,EAAE,GAAG,EACd,OAAO,CAAC,EAAE;IACR,cAAc,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;CACrC,GAAG,CACA;IAAE,QAAQ,EAAE,YAAY,CAAC;IAAC,OAAO,EAAE,YAAY,CAAA;CAAE,GACjD;IAAE,QAAQ,CAAC,EAAE,SAAS,CAAC;IAAC,OAAO,CAAC,EAAE,YAAY,GAAG,SAAS,CAAA;CAAE,CAC/D,GACA,OAAO,CAAC,GAAG,CAAC,CA0Bd;AAED;;;;;;;;GAQG;AACH,wBAAsB,MAAM,CAC1B,KAAK,EAAE,YAAY,CAAC,YAAY,EAChC,SAAS,EAAE,GAAG,EACd,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,CAc7B"}
@@ -10,7 +10,7 @@
10
10
  * For long-lived connections that emit multiple paid events over a single
11
11
  * request, use {@link ../session/Sse} instead.
12
12
  */
13
- import { parseUnits, } from 'viem';
13
+ import { parseUnits, zeroAddress, } from 'viem';
14
14
  import { tempo as tempo_chain } from 'viem/chains';
15
15
  import { AmountExceedsDepositError, BadRequestError, ChannelClosedError, ChannelNotFoundError, DeltaTooSmallError, InsufficientBalanceError, InvalidSignatureError, VerificationFailedError, } from '../../Errors.js';
16
16
  import * as Method from '../../Method.js';
@@ -197,7 +197,11 @@ export async function settle(store, client, channelId, options) {
197
197
  if (!resolvedEscrow)
198
198
  throw new Error(`No escrow contract for chainId ${chainId}.`);
199
199
  const settledAmount = channel.highestVoucher.cumulativeAmount;
200
- const txHash = await settleOnChain(client, resolvedEscrow, channel.highestVoucher, options?.feePayer);
200
+ const txHash = await settleOnChain(client, resolvedEscrow, channel.highestVoucher, {
201
+ ...(options?.feePayer && options?.account
202
+ ? { feePayer: options.feePayer, account: options.account }
203
+ : { account: options?.account }),
204
+ });
201
205
  await store.updateChannel(channelId, (current) => {
202
206
  if (!current)
203
207
  return null;
@@ -270,6 +274,15 @@ async function verifyAndAcceptVoucher(parameters) {
270
274
  if (onChain.closeRequestedAt !== 0n) {
271
275
  throw new ChannelClosedError({ reason: 'channel has a pending close request' });
272
276
  }
277
+ // Treat a zero deposit on an existing channel as settled/closed.
278
+ // During settlement the escrow contract may zero the deposit before
279
+ // setting the finalized flag, creating a brief window where
280
+ // finalized=false but deposit=0. Without this guard the voucher
281
+ // check below would return a 402 (AmountExceedsDepositError) instead
282
+ // of the correct 410 (ChannelClosedError).
283
+ if (onChain.deposit === 0n && onChain.payer !== zeroAddress) {
284
+ throw new ChannelClosedError({ reason: 'channel deposit is zero (settled)' });
285
+ }
273
286
  if (voucher.cumulativeAmount <= onChain.settled) {
274
287
  throw new VerificationFailedError({
275
288
  reason: 'voucher cumulativeAmount is below on-chain settled amount',
@@ -552,7 +565,9 @@ async function handleClose(store, client, challenge, payload, methodDetails, acc
552
565
  if (!isValid) {
553
566
  throw new InvalidSignatureError({ reason: 'invalid voucher signature' });
554
567
  }
555
- const txHash = await closeOnChain(client, methodDetails.escrowContract, voucher, account, feePayer);
568
+ const txHash = await closeOnChain(client, methodDetails.escrowContract, voucher, {
569
+ ...(feePayer && account ? { feePayer, account } : { account }),
570
+ });
556
571
  const updated = await store.updateChannel(payload.channelId, (current) => {
557
572
  if (!current)
558
573
  return null;
@@ -1 +1 @@
1
- {"version":3,"file":"Session.js","sourceRoot":"","sources":["../../../src/tempo/server/Session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Session.js","sourceRoot":"","sources":["../../../src/tempo/server/Session.ts"],"names":[],"mappings":"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"}
@@ -16,14 +16,30 @@ export declare function getOnChainChannel(client: Client, escrowContract: Addres
16
16
  export declare function verifyTopUpTransaction(client: Client, escrowContract: Address, channelId: Hex, previousDeposit: bigint): Promise<{
17
17
  deposit: bigint;
18
18
  }>;
19
+ /** Options for {@link settleOnChain}. */
20
+ export type SettleOptions = {
21
+ feePayer: Account;
22
+ account: Account;
23
+ } | {
24
+ feePayer?: undefined;
25
+ account?: Account | undefined;
26
+ };
19
27
  /**
20
28
  * Submit a settle transaction on-chain.
21
29
  */
22
- export declare function settleOnChain(client: Client, escrowContract: Address, voucher: SignedVoucher, feePayer?: Account | undefined): Promise<Hex>;
30
+ export declare function settleOnChain(client: Client, escrowContract: Address, voucher: SignedVoucher, options?: SettleOptions): Promise<Hex>;
31
+ /** Options for {@link closeOnChain}. */
32
+ export type CloseOptions = {
33
+ feePayer: Account;
34
+ account: Account;
35
+ } | {
36
+ feePayer?: undefined;
37
+ account?: Account | undefined;
38
+ };
23
39
  /**
24
40
  * Submit a close transaction on-chain.
25
41
  */
26
- export declare function closeOnChain(client: Client, escrowContract: Address, voucher: SignedVoucher, account?: Account, feePayer?: Account | undefined): Promise<Hex>;
42
+ export declare function closeOnChain(client: Client, escrowContract: Address, voucher: SignedVoucher, options?: CloseOptions): Promise<Hex>;
27
43
  export type BroadcastResult = {
28
44
  txHash: Hex | undefined;
29
45
  onChain: OnChainChannel;
@@ -1 +1 @@
1
- {"version":3,"file":"Chain.d.ts","sourceRoot":"","sources":["../../../src/tempo/session/Chain.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,OAAO,EACZ,KAAK,OAAO,EACZ,KAAK,MAAM,EAIX,KAAK,GAAG,EACR,KAAK,sBAAsB,EAE5B,MAAM,MAAM,CAAA;AAiBb,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAE/C,OAAO,EAAE,SAAS,EAAE,CAAA;AAgBpB;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,sBAAsB,CAAC,OAAO,SAAS,EAAE,YAAY,CAAC,CAAA;AAEnF;;GAEG;AACH,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,MAAM,EACd,cAAc,EAAE,OAAO,EACvB,SAAS,EAAE,GAAG,GACb,OAAO,CAAC,cAAc,CAAC,CAOzB;AAED;;GAEG;AACH,wBAAsB,sBAAsB,CAC1C,MAAM,EAAE,MAAM,EACd,cAAc,EAAE,OAAO,EACvB,SAAS,EAAE,GAAG,EACd,eAAe,EAAE,MAAM,GACtB,OAAO,CAAC;IAAE,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,CAY9B;AAQD;;GAEG;AACH,wBAAsB,aAAa,CACjC,MAAM,EAAE,MAAM,EACd,cAAc,EAAE,OAAO,EACvB,OAAO,EAAE,aAAa,EACtB,QAAQ,CAAC,EAAE,OAAO,GAAG,SAAS,GAC7B,OAAO,CAAC,GAAG,CAAC,CAed;AAED;;GAEG;AACH,wBAAsB,YAAY,CAChC,MAAM,EAAE,MAAM,EACd,cAAc,EAAE,OAAO,EACvB,OAAO,EAAE,aAAa,EACtB,OAAO,CAAC,EAAE,OAAO,EACjB,QAAQ,CAAC,EAAE,OAAO,GAAG,SAAS,GAC7B,OAAO,CAAC,GAAG,CAAC,CAoBd;AA8DD,MAAM,MAAM,eAAe,GAAG;IAC5B,MAAM,EAAE,GAAG,GAAG,SAAS,CAAA;IACvB,OAAO,EAAE,cAAc,CAAA;CACxB,CAAA;AAED,wBAAsB,wBAAwB,CAAC,UAAU,EAAE;IACzD,MAAM,EAAE,MAAM,CAAA;IACd,qBAAqB,EAAE,GAAG,CAAA;IAC1B,cAAc,EAAE,OAAO,CAAA;IACvB,SAAS,EAAE,GAAG,CAAA;IACd,SAAS,EAAE,OAAO,CAAA;IAClB,QAAQ,EAAE,OAAO,CAAA;IACjB,QAAQ,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IAC9B,kHAAkH;IAClH,mBAAmB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;CAC1C,GAAG,OAAO,CAAC,eAAe,CAAC,CA6J3B;AAED,wBAAsB,yBAAyB,CAAC,UAAU,EAAE;IAC1D,MAAM,EAAE,MAAM,CAAA;IACd,qBAAqB,EAAE,GAAG,CAAA;IAC1B,cAAc,EAAE,OAAO,CAAA;IACvB,SAAS,EAAE,GAAG,CAAA;IACd,QAAQ,EAAE,OAAO,CAAA;IACjB,eAAe,EAAE,MAAM,CAAA;IACvB,eAAe,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;CAC/B,GAAG,OAAO,CAAC;IAAE,MAAM,EAAE,GAAG,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,CAAC,CAqG/C"}
1
+ {"version":3,"file":"Chain.d.ts","sourceRoot":"","sources":["../../../src/tempo/session/Chain.ts"],"names":[],"mappings":"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"}
@@ -52,15 +52,18 @@ function assertUint128(amount) {
52
52
  /**
53
53
  * Submit a settle transaction on-chain.
54
54
  */
55
- export async function settleOnChain(client, escrowContract, voucher, feePayer) {
55
+ export async function settleOnChain(client, escrowContract, voucher, options) {
56
56
  assertUint128(voucher.cumulativeAmount);
57
+ const resolved = options?.account ?? client.account;
58
+ if (!resolved)
59
+ throw new Error('Cannot settle channel: no account available. Pass an `account` to tempo.settle(), or provide a `getClient` that returns an account-bearing client.');
57
60
  const args = [voucher.channelId, voucher.cumulativeAmount, voucher.signature];
58
- if (feePayer) {
61
+ if (options?.feePayer) {
59
62
  const data = encodeFunctionData({ abi: escrowAbi, functionName: 'settle', args });
60
- return sendFeePayerTx(client, feePayer, escrowContract, data, 'settle');
63
+ return sendFeePayerTx(client, resolved, options.feePayer, escrowContract, data, 'settle');
61
64
  }
62
65
  return writeContract(client, {
63
- account: client.account,
66
+ account: resolved,
64
67
  chain: client.chain,
65
68
  address: escrowContract,
66
69
  abi: escrowAbi,
@@ -71,15 +74,15 @@ export async function settleOnChain(client, escrowContract, voucher, feePayer) {
71
74
  /**
72
75
  * Submit a close transaction on-chain.
73
76
  */
74
- export async function closeOnChain(client, escrowContract, voucher, account, feePayer) {
77
+ export async function closeOnChain(client, escrowContract, voucher, options) {
75
78
  assertUint128(voucher.cumulativeAmount);
76
- const resolved = account ?? client.account;
79
+ const resolved = options?.account ?? client.account;
77
80
  if (!resolved)
78
81
  throw new Error('Cannot close channel: no account available. Pass an `account` (viem Account, e.g. privateKeyToAccount("0x...")) to tempo.session(), or provide a `getClient` that returns an account-bearing client.');
79
82
  const args = [voucher.channelId, voucher.cumulativeAmount, voucher.signature];
80
- if (feePayer) {
83
+ if (options?.feePayer) {
81
84
  const data = encodeFunctionData({ abi: escrowAbi, functionName: 'close', args });
82
- return sendFeePayerTx(client, feePayer, escrowContract, data, 'close');
85
+ return sendFeePayerTx(client, resolved, options.feePayer, escrowContract, data, 'close');
83
86
  }
84
87
  return writeContract(client, {
85
88
  account: resolved,
@@ -96,24 +99,25 @@ export async function closeOnChain(client, escrowContract, voucher, account, fee
96
99
  * Follows the same signTransaction + sendRawTransactionSync pattern used
97
100
  * by broadcastOpenTransaction / broadcastTopUpTransaction, but originates
98
101
  * the transaction server-side (estimating gas and fees first).
102
+ *
103
+ * @param account - The logical sender / msg.sender (e.g. the payee).
104
+ * @param feePayer - The gas sponsor — only co-signs to cover fees.
99
105
  */
100
- async function sendFeePayerTx(client, feePayer, to, data, label) {
106
+ async function sendFeePayerTx(client, account, feePayer, to, data, label) {
101
107
  // Resolve the fee token for this chain so the tx pays gas in the correct
102
108
  // token. `feePayer: true` tells the prepare hook to use expiring nonces but
103
109
  // does NOT set feeToken automatically, so we must provide it explicitly.
104
110
  const chainId = client.chain?.id;
105
- const feeToken = chainId
106
- ? defaults.currency[chainId]
107
- : undefined;
111
+ const feeToken = chainId ? defaults.resolveCurrency({ chainId }) : undefined;
108
112
  const prepared = await prepareTransactionRequest(client, {
109
- account: feePayer,
113
+ account,
110
114
  calls: [{ to, data }],
111
115
  feePayer: true,
112
116
  ...(feeToken ? { feeToken } : {}),
113
117
  });
114
118
  const serialized = (await signTransaction(client, {
115
119
  ...prepared,
116
- account: feePayer,
120
+ account,
117
121
  feePayer,
118
122
  }));
119
123
  const receipt = await sendRawTransactionSync(client, {
@@ -1 +1 @@
1
- {"version":3,"file":"Chain.js","sourceRoot":"","sources":["../../../src/tempo/session/Chain.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Chain.js","sourceRoot":"","sources":["../../../src/tempo/session/Chain.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "mppx",
3
3
  "type": "module",
4
- "version": "0.4.11",
4
+ "version": "0.4.12",
5
5
  "main": "./dist/index.js",
6
6
  "license": "MIT",
7
7
  "files": [
@@ -5,8 +5,8 @@ afterEach(() => {
5
5
  })
6
6
 
7
7
  describe('Env.get', () => {
8
- test('returns default realm when no env vars are set', () => {
9
- expect(Env.get('realm')).toBe('MPP Payment')
8
+ test('returns undefined when no env vars are set', () => {
9
+ expect(Env.get('realm')).toBeUndefined()
10
10
  })
11
11
 
12
12
  test('returns undefined when MPP_SECRET_KEY is not set', () => {
@@ -18,25 +18,25 @@ describe('Env.get', () => {
18
18
  expect(Env.get('secretKey')).toBe('sk_live_abc123')
19
19
  })
20
20
 
21
+ test('MPP_REALM takes precedence over platform vars', () => {
22
+ vi.stubEnv('MPP_REALM', 'custom-realm')
23
+ vi.stubEnv('FLY_APP_NAME', 'fly-app')
24
+ expect(Env.get('realm')).toBe('custom-realm')
25
+ })
26
+
21
27
  test('returns FLY_APP_NAME when set', () => {
22
28
  vi.stubEnv('FLY_APP_NAME', 'my-fly-app')
23
29
  expect(Env.get('realm')).toBe('my-fly-app')
24
30
  })
25
31
 
26
- test('FLY_APP_NAME takes precedence over HOST', () => {
32
+ test('FLY_APP_NAME takes precedence over VERCEL_URL', () => {
27
33
  vi.stubEnv('FLY_APP_NAME', 'fly-app')
28
- vi.stubEnv('HOST', 'my-host')
34
+ vi.stubEnv('VERCEL_URL', 'my-app.vercel.app')
29
35
  expect(Env.get('realm')).toBe('fly-app')
30
36
  })
31
37
 
32
- test('HOST takes precedence over MPP_REALM', () => {
33
- vi.stubEnv('HOST', 'my-host')
34
- vi.stubEnv('MPP_REALM', 'custom-realm')
35
- expect(Env.get('realm')).toBe('my-host')
36
- })
37
-
38
38
  test('falls through to later vars when earlier ones are unset', () => {
39
- vi.stubEnv('MPP_REALM', 'fallback-realm')
40
- expect(Env.get('realm')).toBe('fallback-realm')
39
+ vi.stubEnv('VERCEL_URL', 'my-app.vercel.app')
40
+ expect(Env.get('realm')).toBe('my-app.vercel.app')
41
41
  })
42
42
  })
@@ -1,11 +1,9 @@
1
1
  /** Map of configuration keys to environment variable names, checked in order. */
2
2
  const variables = {
3
3
  realm: [
4
+ 'MPP_REALM',
4
5
  'FLY_APP_NAME',
5
6
  'HEROKU_APP_NAME',
6
- 'HOST',
7
- 'HOSTNAME',
8
- 'MPP_REALM',
9
7
  'RAILWAY_PUBLIC_DOMAIN',
10
8
  'RENDER_EXTERNAL_HOSTNAME',
11
9
  'VERCEL_URL',
@@ -15,9 +13,7 @@ const variables = {
15
13
  } as const satisfies Record<string, readonly string[]>
16
14
 
17
15
  /** Fallback values when no environment variable is set. */
18
- const defaults = {
19
- realm: 'MPP Payment',
20
- } as const satisfies Partial<Record<keyof typeof variables, string>>
16
+ const defaults = {} as const satisfies Partial<Record<keyof typeof variables, string>>
21
17
 
22
18
  /**
23
19
  * Resolves a configuration value from environment variables.
@@ -410,3 +410,28 @@ export type Flatten<element> = element extends readonly (infer item)[] ? item :
410
410
  * @internal
411
411
  */
412
412
  export type ValueOf<T> = T[keyof T]
413
+
414
+ /**
415
+ * Rejects objects with keys not present in `Shape`.
416
+ *
417
+ * TypeScript's `extends` constraint on generics does not perform excess-property
418
+ * checking, so typos like `{ stream: … }` instead of `{ sse: … }` silently
419
+ * pass. Wrapping the parameter type with `NoExtraKeys` maps every extra key
420
+ * to `never`, surfacing a compile-time error.
421
+ *
422
+ * @example
423
+ * ```ts
424
+ * type Opts = { sse?: boolean }
425
+ * declare function f<T extends Opts>(p: NoExtraKeys<T, Opts>): void
426
+ * f({ sse: true }) // ✅
427
+ * f({ stream: true }) // ❌ — 'stream' mapped to never
428
+ * ```
429
+ *
430
+ * @internal
431
+ */
432
+ export type NoExtraKeys<T, Shape> = [T] extends [Shape]
433
+ ? T & { [K in Exclude<keyof T, KeysOfUnion<Shape>>]: never }
434
+ : never
435
+
436
+ /** @internal */
437
+ type KeysOfUnion<T> = T extends unknown ? keyof T : never