@solana/mpp 0.1.0-beta.1 → 0.1.1

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 (77) hide show
  1. package/README.md +75 -90
  2. package/dist/Methods.d.ts +9 -4
  3. package/dist/Methods.d.ts.map +1 -1
  4. package/dist/Methods.js +9 -4
  5. package/dist/Methods.js.map +1 -1
  6. package/dist/client/Charge.d.ts +6 -4
  7. package/dist/client/Charge.d.ts.map +1 -1
  8. package/dist/client/Charge.js +71 -59
  9. package/dist/client/Charge.js.map +1 -1
  10. package/dist/client/Methods.d.ts.map +1 -1
  11. package/dist/client/Methods.js.map +1 -1
  12. package/dist/client/Session.d.ts.map +1 -1
  13. package/dist/client/Session.js.map +1 -1
  14. package/dist/client/index.d.ts.map +1 -1
  15. package/dist/client/index.js.map +1 -1
  16. package/dist/constants.d.ts.map +1 -1
  17. package/dist/constants.js.map +1 -1
  18. package/dist/index.d.ts +0 -2
  19. package/dist/index.d.ts.map +1 -1
  20. package/dist/index.js +0 -3
  21. package/dist/index.js.map +1 -1
  22. package/dist/server/Charge.d.ts +24 -11
  23. package/dist/server/Charge.d.ts.map +1 -1
  24. package/dist/server/Charge.js +71 -44
  25. package/dist/server/Charge.js.map +1 -1
  26. package/dist/server/Methods.d.ts.map +1 -1
  27. package/dist/server/Methods.js.map +1 -1
  28. package/dist/server/Session.d.ts.map +1 -1
  29. package/dist/server/Session.js.map +1 -1
  30. package/dist/server/index.d.ts.map +1 -1
  31. package/dist/server/index.js.map +1 -1
  32. package/dist/session/ChannelStore.d.ts.map +1 -1
  33. package/dist/session/ChannelStore.js.map +1 -1
  34. package/dist/session/Types.d.ts.map +1 -1
  35. package/dist/session/Types.js.map +1 -1
  36. package/dist/session/Voucher.d.ts.map +1 -1
  37. package/dist/session/Voucher.js.map +1 -1
  38. package/dist/session/authorizers/BudgetAuthorizer.d.ts.map +1 -1
  39. package/dist/session/authorizers/BudgetAuthorizer.js.map +1 -1
  40. package/dist/session/authorizers/SwigSessionAuthorizer.d.ts.map +1 -1
  41. package/dist/session/authorizers/SwigSessionAuthorizer.js.map +1 -1
  42. package/dist/session/authorizers/UnboundedAuthorizer.d.ts.map +1 -1
  43. package/dist/session/authorizers/UnboundedAuthorizer.js.map +1 -1
  44. package/dist/session/authorizers/index.d.ts.map +1 -1
  45. package/dist/session/authorizers/index.js.map +1 -1
  46. package/dist/session/authorizers/makeSessionAuthorizer.d.ts.map +1 -1
  47. package/dist/session/authorizers/makeSessionAuthorizer.js.map +1 -1
  48. package/dist/session/index.d.ts.map +1 -1
  49. package/dist/session/index.js.map +1 -1
  50. package/dist/utils/transactions.d.ts +3 -3
  51. package/dist/utils/transactions.d.ts.map +1 -1
  52. package/dist/utils/transactions.js +23 -6
  53. package/dist/utils/transactions.js.map +1 -1
  54. package/package.json +8 -30
  55. package/{sdk/src → src}/Methods.ts +13 -4
  56. package/{sdk/src → src}/client/Charge.ts +93 -76
  57. package/{sdk/src → src}/index.ts +0 -4
  58. package/{sdk/src → src}/server/Charge.ts +114 -59
  59. package/src/utils/transactions.ts +46 -0
  60. package/LICENSE +0 -21
  61. package/sdk/src/utils/transactions.ts +0 -26
  62. /package/{sdk/src → src}/client/Methods.ts +0 -0
  63. /package/{sdk/src → src}/client/Session.ts +0 -0
  64. /package/{sdk/src → src}/client/index.ts +0 -0
  65. /package/{sdk/src → src}/constants.ts +0 -0
  66. /package/{sdk/src → src}/server/Methods.ts +0 -0
  67. /package/{sdk/src → src}/server/Session.ts +0 -0
  68. /package/{sdk/src → src}/server/index.ts +0 -0
  69. /package/{sdk/src → src}/session/ChannelStore.ts +0 -0
  70. /package/{sdk/src → src}/session/Types.ts +0 -0
  71. /package/{sdk/src → src}/session/Voucher.ts +0 -0
  72. /package/{sdk/src → src}/session/authorizers/BudgetAuthorizer.ts +0 -0
  73. /package/{sdk/src → src}/session/authorizers/SwigSessionAuthorizer.ts +0 -0
  74. /package/{sdk/src → src}/session/authorizers/UnboundedAuthorizer.ts +0 -0
  75. /package/{sdk/src → src}/session/authorizers/index.ts +0 -0
  76. /package/{sdk/src → src}/session/authorizers/makeSessionAuthorizer.ts +0 -0
  77. /package/{sdk/src → src}/session/index.ts +0 -0
package/README.md CHANGED
@@ -17,57 +17,47 @@ Solana payment method for the [Machine Payments Protocol](https://mpp.dev).
17
17
  pnpm add @solana/mpp
18
18
  ```
19
19
 
20
- Peer dependencies:
21
-
22
- ```bash
23
- pnpm add @solana/kit mppx
24
- # Optional — for Swig session authorization:
25
- pnpm add @swig-wallet/kit
26
- ```
27
-
28
20
  ## Features
29
21
 
30
22
  **Charge** (one-time payments)
31
23
  - Native SOL and SPL token transfers (USDC, PYUSD, Token-2022, etc.)
32
24
  - Two settlement modes: pull (`type="transaction"`, default) and push (`type="signature"`)
33
25
  - Fee sponsorship: server pays transaction fees on behalf of clients
26
+ - Split payments: send one charge to multiple recipients in a single transaction
34
27
  - Replay protection via consumed transaction signatures
35
28
 
36
- **Session** (metered / streaming payments)
37
- - Voucher-based payment channels with monotonic cumulative amounts
38
- - Multiple authorization modes: `unbounded`, `regular_budget`, `swig_session`
39
- - Auto-open, auto-topup, and close lifecycle
40
- - [Swig](https://build.onswig.com) smart wallet integration for on-chain spend limits
41
-
42
29
  **General**
43
30
  - Works with [ConnectorKit](https://www.connectorkit.dev), `@solana/kit` keypair signers, and [Solana Keychain](https://github.com/solana-foundation/solana-keychain) remote signers
44
31
  - Server pre-fetches `recentBlockhash` to save client an RPC round-trip
45
32
  - Transaction simulation before broadcast to prevent wasted fees
33
+ - Optional `tokenProgram` hint; clients resolve the mint owner and fail closed if discovery fails
46
34
 
47
35
  ## Architecture
48
36
 
49
37
  ```
50
- sdk/src/
51
- ├── Methods.ts # Shared charge + session schemas
52
- ├── constants.ts # Token programs, USDC mints, RPC URLs
53
- ├── server/
54
- ├── Charge.ts # Server: challenge, verify, broadcast
55
- └── Session.ts # Server: session channel management
56
- ├── client/
57
- ├── Charge.ts # Client: build tx, sign, send
58
- └── Session.ts # Client: session lifecycle
59
- └── session/
60
- ├── Types.ts # Session types and interfaces
61
- ├── Voucher.ts # Voucher signing and verification
62
- ├── ChannelStore.ts # Persistent channel state
63
- └── authorizers/ # Pluggable authorization strategies
64
- ├── UnboundedAuthorizer.ts
65
- ├── BudgetAuthorizer.ts
66
- └── SwigSessionAuthorizer.ts
38
+ mpp-sdk/
39
+ ├── typescript/ # TypeScript SDK
40
+ │ └── packages/mpp/src/
41
+ ├── Methods.ts # Shared charge + session schemas
42
+ ├── constants.ts # Token programs, USDC mints, RPC URLs
43
+ ├── server/
44
+ │ │ ├── Charge.ts # Server: challenge, verify, broadcast
45
+ └── Session.ts # Server: session channel management
46
+ ├── client/
47
+ │ │ ├── Charge.ts # Client: build tx, sign, send
48
+ │ │ └── Session.ts # Client: session lifecycle
49
+ │ └── session/
50
+ ├── Types.ts # Session types and interfaces
51
+ │ ├── Voucher.ts # Voucher signing and verification
52
+ ├── ChannelStore.ts # Persistent channel state
53
+ │ └── authorizers/ # Pluggable authorization strategies
54
+ ├── rust/ # Rust SDK (coming soon)
55
+ │ └── src/lib.rs
56
+ └── demo/ # Interactive playground
67
57
  ```
68
58
 
69
59
  **Exports:**
70
- - `@solana/mpp` — shared schemas, session types, and authorizers
60
+ - `@solana/mpp` — shared schemas, session types, and authorizers only
71
61
  - `@solana/mpp/server` — server-side charge + session, `Mppx`, `Store`
72
62
  - `@solana/mpp/client` — client-side charge + session, `Mppx`
73
63
 
@@ -85,7 +75,7 @@ const mppx = Mppx.create({
85
75
  methods: [
86
76
  solana.charge({
87
77
  recipient: 'RecipientPubkey...',
88
- splToken: 'EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v',
78
+ currency: 'EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v',
89
79
  decimals: 6,
90
80
  }),
91
81
  ],
@@ -112,45 +102,6 @@ const mppx = Mppx.create({
112
102
  const response = await mppx.fetch('https://api.example.com/paid-endpoint')
113
103
  ```
114
104
 
115
- ### Session (metered payments)
116
-
117
- **Server:**
118
-
119
- ```ts
120
- import { Mppx, solana } from '@solana/mpp/server'
121
-
122
- const mppx = Mppx.create({
123
- secretKey: process.env.MPP_SECRET_KEY,
124
- methods: [
125
- solana.session({
126
- recipient: 'RecipientPubkey...',
127
- asset: { kind: 'sol', decimals: 9 },
128
- channelProgram: 'ChannelProgramId...',
129
- pricing: { unit: 'request', amountPerUnit: '10', meter: 'api_calls' },
130
- sessionDefaults: { suggestedDeposit: '1000', ttlSeconds: 60 },
131
- }),
132
- ],
133
- })
134
- ```
135
-
136
- **Client:**
137
-
138
- ```ts
139
- import { Mppx, solana } from '@solana/mpp/client'
140
- import { UnboundedAuthorizer } from '@solana/mpp'
141
-
142
- const mppx = Mppx.create({
143
- methods: [
144
- solana.session({
145
- signer,
146
- authorizer: new UnboundedAuthorizer({ signer, buildOpenTx, buildTopupTx }),
147
- }),
148
- ],
149
- })
150
-
151
- const response = await mppx.fetch('https://api.example.com/metered-endpoint')
152
- ```
153
-
154
105
  ### Fee Sponsorship (charge)
155
106
 
156
107
  The server can pay transaction fees on behalf of clients:
@@ -170,20 +121,49 @@ solana.charge({
170
121
  ### Charge Flow
171
122
 
172
123
  1. Client requests a resource
173
- 2. Server returns **402 Payment Required** with a challenge (`recipient`, `amount`, `currency`, `recentBlockhash`)
124
+ 2. Server returns **402 Payment Required** with a challenge (`recipient`, `amount`, `currency`, optional `tokenProgram`, optional `recentBlockhash`)
174
125
  3. Client builds and signs a Solana transfer transaction
175
126
  4. Server simulates, broadcasts, confirms on-chain, and verifies the transfer
176
127
  5. Server returns the resource with a `Payment-Receipt` header
177
128
 
178
129
  With fee sponsorship, the client partially signs (transfer authority only) and the server co-signs as fee payer before broadcasting.
179
130
 
180
- ### Session Flow
131
+ ### Splits (charge)
132
+
133
+ Use `splits` when one charge should pay multiple recipients in the same asset.
134
+ The top-level `amount` is the total paid. The primary `recipient` receives
135
+ `amount - sum(splits)`, and each split recipient receives its own `amount`.
136
+
137
+ ```ts
138
+ import { Mppx, solana } from '@solana/mpp/server'
139
+
140
+ const mppx = Mppx.create({
141
+ secretKey: process.env.MPP_SECRET_KEY,
142
+ methods: [
143
+ solana.charge({
144
+ recipient: 'SellerPubkey...',
145
+ currency: 'EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v',
146
+ decimals: 6,
147
+ splits: [
148
+ { recipient: 'PlatformPubkey...', amount: '50000', memo: 'platform fee' },
149
+ { recipient: 'ReferrerPubkey...', amount: '20000', memo: 'referral fee' },
150
+ ],
151
+ }),
152
+ ],
153
+ })
154
+
155
+ const result = await mppx.charge({
156
+ amount: '1000000', // total: 1.00 USDC
157
+ currency: 'EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v',
158
+ })(request)
159
+ ```
160
+
161
+ In this example:
162
+ - seller receives `930000`
163
+ - platform receives `50000`
164
+ - referrer receives `20000`
181
165
 
182
- 1. First request: server returns 402, client opens a channel (deposit + voucher)
183
- 2. Subsequent requests: client sends updated vouchers with monotonic cumulative amounts
184
- 3. Server deducts from the channel balance per its pricing config
185
- 4. When balance runs low: client tops up the channel
186
- 5. On close: final voucher settles the channel
166
+ The same `splits` shape works for native SOL charges.
187
167
 
188
168
  ## Demo
189
169
 
@@ -204,23 +184,28 @@ See [demo/README.md](demo/README.md) for full details.
204
184
  ## Development
205
185
 
206
186
  ```bash
207
- pnpm install
208
-
209
- just fmt # Format and lint
210
- just build # Typecheck
211
- just test # Unit tests (charge + session, no network)
212
- just test-integration # Integration tests (requires Surfpool)
213
- just test-all # All tests
214
- just pre-commit # fmt + typecheck + unit tests
187
+ # TypeScript
188
+ cd typescript && pnpm install
189
+
190
+ just ts-fmt # Format and lint
191
+ just ts-build # Build
192
+ just ts-test # Unit tests (charge + session, no network)
193
+ just ts-test-integration # Integration tests (requires Surfpool)
194
+ # Rust
195
+ cd rust && cargo build
196
+
197
+ # Everything
198
+ just build # Build both
199
+ just test # Test both
200
+ just pre-commit # Full pre-commit checks
215
201
  ```
216
202
 
217
203
  ## Spec
218
204
 
219
205
  This SDK implements the [Solana Charge Intent](https://github.com/tempoxyz/mpp-specs/pull/188) for the [HTTP Payment Authentication Scheme](https://paymentauth.org).
220
206
 
221
- Session method docs and implementation notes:
222
-
223
- - [docs/methods/sessions.md](docs/methods/sessions.md)
207
+ Session method docs and implementation notes are intentionally kept out of this
208
+ README for now. See [docs/methods/sessions.md](docs/methods/sessions.md).
224
209
 
225
210
  ## License
226
211
 
package/dist/Methods.d.ts CHANGED
@@ -45,10 +45,15 @@ export declare const charge: {
45
45
  network: z.ZodMiniOptional<z.ZodMiniString<string>>;
46
46
  /** Server-provided base58-encoded recent blockhash. Saves the client an RPC round-trip. */
47
47
  recentBlockhash: z.ZodMiniOptional<z.ZodMiniString<string>>;
48
- /** Unique reference ID for this charge (server-generated, used for tracking). */
49
- reference: z.ZodMiniString<string>;
50
- /** SPL token mint address. If absent, payment is in native SOL. */
51
- splToken: z.ZodMiniOptional<z.ZodMiniString<string>>;
48
+ /** Additional payment splits (max 32). Same asset as primary payment. */
49
+ splits: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniObject<{
50
+ /** Amount in base units (same asset as primary). */
51
+ amount: z.ZodMiniString<string>;
52
+ /** Optional memo for this split (max 566 bytes). */
53
+ memo: z.ZodMiniOptional<z.ZodMiniString<string>>;
54
+ /** Base58-encoded recipient of this split. */
55
+ recipient: z.ZodMiniString<string>;
56
+ }, z.core.$strip>>>;
52
57
  /** Token program address (TOKEN_PROGRAM or TOKEN_2022_PROGRAM). Defaults to TOKEN_PROGRAM. */
53
58
  tokenProgram: z.ZodMiniOptional<z.ZodMiniString<string>>;
54
59
  }, z.core.$strip>;
@@ -1 +1 @@
1
- {"version":3,"file":"Methods.d.ts","sourceRoot":"","sources":["../sdk/src/Methods.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,CAAC,EAAE,MAAM,MAAM,CAAC;AAEjC;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,MAAM;;;;;;gBAMH,oEAAoE;;gBAEpE,8EAA8E;;gBAE9E,iGAAiG;;;;;YAKrG,6EAA6E;;YAE7E,4FAA4F;;YAE5F,6EAA6E;;YAE7E,gFAAgF;;;gBAG5E,yDAAyD;;gBAEzD,uFAAuF;;gBAEvF,yFAAyF;;gBAEzF,yDAAyD;;gBAEzD,2FAA2F;;gBAE3F,iFAAiF;;gBAEjF,mEAAmE;;gBAEnE,8FAA8F;;;YAGlG,2CAA2C;;;;CAIrD,CAAC;AAqCH;;;;;;;;;GASG;AACH,eAAO,MAAM,OAAO;;;;;;gBAOA,gCAAgC;;gBAEhC,oEAAoE;;gBAEpE,oEAAoE;;oBAG5D,0DAA0D;;oBAE1D,6DAA6D;;;gBAIrE,oEAAoE;;gBAEpE,wDAAwD;;gBAExD,gEAAgE;;gBAEhE,8DAA8D;;gBAE9D,yDAAyD;;gBAEzD,sDAAsD;;oBAjDtE,6DAA6D;;oBAE7D,oEAAoE;;oBAEpE,iCAAiC;;;wBA7BjC,2DAA2D;;wBAE3D,gDAAgD;;wBAEhD,2DAA2D;;wBAE3D,8CAA8C;;wBAE9C,gEAAgE;;wBAEhE,4CAA4C;;wBAE5C,0CAA0C;;wBAE1C,wCAAwC;;wBAExC,uDAAuD;;wBAEvD,mDAAmD;;wBAEnD,6DAA6D;;;;;gBA0D7C,gCAAgC;;gBAEhC,2DAA2D;;gBAE3D,uDAAuD;;oBAzDvE,6DAA6D;;oBAE7D,oEAAoE;;oBAEpE,iCAAiC;;;wBA7BjC,2DAA2D;;wBAE3D,gDAAgD;;wBAEhD,2DAA2D;;wBAE3D,8CAA8C;;wBAE9C,gEAAgE;;wBAEhE,4CAA4C;;wBAE5C,0CAA0C;;wBAE1C,wCAAwC;;wBAExC,uDAAuD;;wBAEvD,mDAAmD;;wBAEnD,6DAA6D;;;;;gBAkE7C,gCAAgC;;gBAEhC,0DAA0D;;gBAE1D,0DAA0D;;gBAE1D,8DAA8D;;;gBAI9D,gCAAgC;;gBAEhC,0DAA0D;;gBAE1D,yEAAyE;;gBAEzE,qDAAqD;;oBA7ErE,6DAA6D;;oBAE7D,oEAAoE;;oBAEpE,iCAAiC;;;wBA7BjC,2DAA2D;;wBAE3D,gDAAgD;;wBAEhD,2DAA2D;;wBAE3D,8CAA8C;;wBAE9C,gEAAgE;;wBAEhE,4CAA4C;;wBAE5C,0CAA0C;;wBAE1C,wCAAwC;;wBAExC,uDAAuD;;wBAEvD,mDAAmD;;wBAEnD,6DAA6D;;;;;;;;gBAyFjD,+CAA+C;;gBAE/C,2CAA2C;;gBAE3C,2CAA2C;;gBAE3C,+CAA+C;;;YAGnD,mEAAmE;;YAEnE,uEAAuE;;YAEvE,iEAAiE;;gBAGzD,0CAA0C;;gBAE1C,6CAA6C;;gBAE7C,mDAAmD;;gBAEnD,gDAAgD;;;YAIxD,+DAA+D;;YAE/D,0DAA0D;;gBAGlD,kDAAkD;;gBAElD,gDAAgD;;;;;;gBAQhD,qDAAqD;;gBAErD,6DAA6D;;;YAIrE,kDAAkD;;gBAG1C,uDAAuD;;gBAEvD,6DAA6D;;;;;CAM/E,CAAC"}
1
+ {"version":3,"file":"Methods.d.ts","sourceRoot":"","sources":["../src/Methods.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,CAAC,EAAE,MAAM,MAAM,CAAC;AAEjC;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,MAAM;;;;;;gBAMH,oEAAoE;;gBAEpE,8EAA8E;;gBAE9E,iGAAiG;;;;;YAKrG,6EAA6E;;YAE7E,4FAA4F;;YAE5F,6EAA6E;;YAE7E,gFAAgF;;;gBAG5E,yDAAyD;;gBAEzD,uFAAuF;;gBAEvF,yFAAyF;;gBAEzF,yDAAyD;;gBAEzD,2FAA2F;;gBAE3F,yEAAyE;;oBAI7D,oDAAoD;;oBAEpD,oDAAoD;;oBAEpD,8CAA8C;;;gBAK1D,8FAA8F;;;YAGlG,2CAA2C;;;;CAIrD,CAAC;AAqCH;;;;;;;;;GASG;AACH,eAAO,MAAM,OAAO;;;;;;gBAOA,gCAAgC;;gBAEhC,oEAAoE;;gBAEpE,oEAAoE;;oBAG5D,0DAA0D;;oBAE1D,6DAA6D;;;gBAIrE,oEAAoE;;gBAEpE,wDAAwD;;gBAExD,gEAAgE;;gBAEhE,8DAA8D;;gBAE9D,yDAAyD;;gBAEzD,sDAAsD;;oBAjDtE,6DAA6D;;oBAE7D,oEAAoE;;oBAEpE,iCAAiC;;;wBA7BjC,2DAA2D;;wBAE3D,gDAAgD;;wBAEhD,2DAA2D;;wBAE3D,8CAA8C;;wBAE9C,gEAAgE;;wBAEhE,4CAA4C;;wBAE5C,0CAA0C;;wBAE1C,wCAAwC;;wBAExC,uDAAuD;;wBAEvD,mDAAmD;;wBAEnD,6DAA6D;;;;;gBA0D7C,gCAAgC;;gBAEhC,2DAA2D;;gBAE3D,uDAAuD;;oBAzDvE,6DAA6D;;oBAE7D,oEAAoE;;oBAEpE,iCAAiC;;;wBA7BjC,2DAA2D;;wBAE3D,gDAAgD;;wBAEhD,2DAA2D;;wBAE3D,8CAA8C;;wBAE9C,gEAAgE;;wBAEhE,4CAA4C;;wBAE5C,0CAA0C;;wBAE1C,wCAAwC;;wBAExC,uDAAuD;;wBAEvD,mDAAmD;;wBAEnD,6DAA6D;;;;;gBAkE7C,gCAAgC;;gBAEhC,0DAA0D;;gBAE1D,0DAA0D;;gBAE1D,8DAA8D;;;gBAI9D,gCAAgC;;gBAEhC,0DAA0D;;gBAE1D,yEAAyE;;gBAEzE,qDAAqD;;oBA7ErE,6DAA6D;;oBAE7D,oEAAoE;;oBAEpE,iCAAiC;;;wBA7BjC,2DAA2D;;wBAE3D,gDAAgD;;wBAEhD,2DAA2D;;wBAE3D,8CAA8C;;wBAE9C,gEAAgE;;wBAEhE,4CAA4C;;wBAE5C,0CAA0C;;wBAE1C,wCAAwC;;wBAExC,uDAAuD;;wBAEvD,mDAAmD;;wBAEnD,6DAA6D;;;;;;;;gBAyFjD,+CAA+C;;gBAE/C,2CAA2C;;gBAE3C,2CAA2C;;gBAE3C,+CAA+C;;;YAGnD,mEAAmE;;YAEnE,uEAAuE;;YAEvE,iEAAiE;;gBAGzD,0CAA0C;;gBAE1C,6CAA6C;;gBAE7C,mDAAmD;;gBAEnD,gDAAgD;;;YAIxD,+DAA+D;;YAE/D,0DAA0D;;gBAGlD,kDAAkD;;gBAElD,gDAAgD;;;;;;gBAQhD,qDAAqD;;gBAErD,6DAA6D;;;YAIrE,kDAAkD;;gBAG1C,uDAAuD;;gBAEvD,6DAA6D;;;;;CAM/E,CAAC"}
package/dist/Methods.js CHANGED
@@ -45,10 +45,15 @@ export const charge = Method.from({
45
45
  network: z.optional(z.string()),
46
46
  /** Server-provided base58-encoded recent blockhash. Saves the client an RPC round-trip. */
47
47
  recentBlockhash: z.optional(z.string()),
48
- /** Unique reference ID for this charge (server-generated, used for tracking). */
49
- reference: z.string(),
50
- /** SPL token mint address. If absent, payment is in native SOL. */
51
- splToken: z.optional(z.string()),
48
+ /** Additional payment splits (max 32). Same asset as primary payment. */
49
+ splits: z.optional(z.array(z.object({
50
+ /** Amount in base units (same asset as primary). */
51
+ amount: z.string(),
52
+ /** Optional memo for this split (max 566 bytes). */
53
+ memo: z.optional(z.string()),
54
+ /** Base58-encoded recipient of this split. */
55
+ recipient: z.string(),
56
+ }))),
52
57
  /** Token program address (TOKEN_PROGRAM or TOKEN_2022_PROGRAM). Defaults to TOKEN_PROGRAM. */
53
58
  tokenProgram: z.optional(z.string()),
54
59
  }),
@@ -1 +1 @@
1
- {"version":3,"file":"Methods.js","sourceRoot":"","sources":["../sdk/src/Methods.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Methods.js","sourceRoot":"","sources":["../src/Methods.ts"],"names":[],"mappings":"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"}
@@ -51,8 +51,11 @@ export declare function charge(parameters: charge.Parameters): Method.Client<{
51
51
  feePayerKey: import("zod/mini").ZodMiniOptional<import("zod/mini").ZodMiniString<string>>;
52
52
  network: import("zod/mini").ZodMiniOptional<import("zod/mini").ZodMiniString<string>>;
53
53
  recentBlockhash: import("zod/mini").ZodMiniOptional<import("zod/mini").ZodMiniString<string>>;
54
- reference: import("zod/mini").ZodMiniString<string>;
55
- splToken: import("zod/mini").ZodMiniOptional<import("zod/mini").ZodMiniString<string>>;
54
+ splits: import("zod/mini").ZodMiniOptional<import("zod/mini").ZodMiniArray<import("zod/mini").ZodMiniObject<{
55
+ amount: import("zod/mini").ZodMiniString<string>;
56
+ memo: import("zod/mini").ZodMiniOptional<import("zod/mini").ZodMiniString<string>>;
57
+ recipient: import("zod/mini").ZodMiniString<string>;
58
+ }, import("zod/v4/core").$strip>>>;
56
59
  tokenProgram: import("zod/mini").ZodMiniOptional<import("zod/mini").ZodMiniString<string>>;
57
60
  }, import("zod/v4/core").$strip>;
58
61
  recipient: import("zod/mini").ZodMiniString<string>;
@@ -70,7 +73,7 @@ export declare namespace charge {
70
73
  * Cannot be used with server fee sponsorship (feePayer mode).
71
74
  */
72
75
  broadcast?: boolean;
73
- /** Compute unit limit. Defaults to 50,000. */
76
+ /** Compute unit limit. Defaults to 200,000. */
74
77
  computeUnitLimit?: number;
75
78
  /** Compute unit price in micro-lamports for priority fees. Defaults to 1. */
76
79
  computeUnitPrice?: bigint;
@@ -92,7 +95,6 @@ export declare namespace charge {
92
95
  currency: string;
93
96
  feePayerKey?: string;
94
97
  recipient: string;
95
- splToken?: string;
96
98
  type: 'challenge';
97
99
  } | {
98
100
  signature: string;
@@ -1 +1 @@
1
- {"version":3,"file":"Charge.d.ts","sourceRoot":"","sources":["../../sdk/src/client/Charge.ts"],"names":[],"mappings":"AAAA,OAAO,EAkBH,KAAK,iBAAiB,EACzB,MAAM,aAAa,CAAC;AAQrB,OAAO,EAAc,MAAM,EAAE,MAAM,MAAM,CAAC;AAQ1C;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAgB,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAmLnD;AAkED,MAAM,CAAC,OAAO,WAAW,MAAM,CAAC;IAC5B,KAAK,UAAU,GAAG;QACd;;;;;;;WAOG;QACH,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,8CAA8C;QAC9C,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,6EAA6E;QAC7E,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,kDAAkD;QAClD,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;QAC5C,+EAA+E;QAC/E,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB;;;;;;WAMG;QACH,MAAM,EAAE,iBAAiB,CAAC;KAC7B,CAAC;IAEF,KAAK,aAAa,GACZ;QACI,MAAM,EAAE,MAAM,CAAC;QACf,QAAQ,EAAE,MAAM,CAAC;QACjB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,SAAS,EAAE,MAAM,CAAC;QAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,IAAI,EAAE,WAAW,CAAC;KACrB,GACD;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,YAAY,CAAA;KAAE,GACzC;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,GACnC;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,QAAQ,CAAA;KAAE,GACvC;QAAE,IAAI,EAAE,QAAQ,CAAA;KAAE,GAClB;QAAE,IAAI,EAAE,SAAS,CAAA;KAAE,CAAC;CAC7B"}
1
+ {"version":3,"file":"Charge.d.ts","sourceRoot":"","sources":["../../src/client/Charge.ts"],"names":[],"mappings":"AAAA,OAAO,EAkBH,KAAK,iBAAiB,EACzB,MAAM,aAAa,CAAC;AAQrB,OAAO,EAAc,MAAM,EAAE,MAAM,MAAM,CAAC;AAK1C;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAgB,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAsMnD;AAoED,MAAM,CAAC,OAAO,WAAW,MAAM,CAAC;IAC5B,KAAK,UAAU,GAAG;QACd;;;;;;;WAOG;QACH,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,+CAA+C;QAC/C,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,6EAA6E;QAC7E,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,kDAAkD;QAClD,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;QAC5C,+EAA+E;QAC/E,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB;;;;;;WAMG;QACH,MAAM,EAAE,iBAAiB,CAAC;KAC7B,CAAC;IAEF,KAAK,aAAa,GACZ;QACI,MAAM,EAAE,MAAM,CAAC;QACf,QAAQ,EAAE,MAAM,CAAC;QACjB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,SAAS,EAAE,MAAM,CAAC;QAClB,IAAI,EAAE,WAAW,CAAC;KACrB,GACD;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,YAAY,CAAA;KAAE,GACzC;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,GACnC;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,QAAQ,CAAA;KAAE,GACvC;QAAE,IAAI,EAAE,QAAQ,CAAA;KAAE,GAClB;QAAE,IAAI,EAAE,SAAS,CAAA;KAAE,CAAC;CAC7B"}
@@ -3,10 +3,8 @@ import { getSetComputeUnitLimitInstruction, getSetComputeUnitPriceInstruction }
3
3
  import { getTransferSolInstruction } from '@solana-program/system';
4
4
  import { findAssociatedTokenPda, getCreateAssociatedTokenIdempotentInstruction, getTransferCheckedInstruction, } from '@solana-program/token';
5
5
  import { Credential, Method } from 'mppx';
6
- import { ASSOCIATED_TOKEN_PROGRAM, DEFAULT_RPC_URLS, TOKEN_PROGRAM } from '../constants.js';
6
+ import { ASSOCIATED_TOKEN_PROGRAM, DEFAULT_RPC_URLS, TOKEN_2022_PROGRAM, TOKEN_PROGRAM } from '../constants.js';
7
7
  import * as Methods from '../Methods.js';
8
- const MEMO_PROGRAM = 'MemoSq4gqABAXKb96qnH8TysNcWxMyWCqXgDLGmfcHr';
9
- const textEncoder = new TextEncoder();
10
8
  /**
11
9
  * Creates a Solana `charge` method for usage on the client.
12
10
  *
@@ -41,74 +39,88 @@ export function charge(parameters) {
41
39
  const method = Method.toClient(Methods.charge, {
42
40
  async createCredential({ challenge }) {
43
41
  const { amount, currency, recipient, methodDetails } = challenge.request;
44
- const { network, splToken, decimals, reference, tokenProgram: tokenProgramAddr, feePayer: serverPaysFees, feePayerKey, recentBlockhash: serverBlockhash, } = methodDetails;
42
+ const { network, decimals, tokenProgram: tokenProgramAddr, feePayer: serverPaysFees, feePayerKey, recentBlockhash: serverBlockhash, splits, } = methodDetails;
43
+ // currency is "sol" for native, or the mint address for SPL tokens.
44
+ const mint = currency !== 'sol' ? currency : undefined;
45
45
  const rpcUrl = parameters.rpcUrl ?? DEFAULT_RPC_URLS[network || 'mainnet-beta'] ?? DEFAULT_RPC_URLS['mainnet-beta'];
46
46
  const rpc = createSolanaRpc(rpcUrl);
47
47
  onProgress?.({
48
48
  amount,
49
- currency: currency || (splToken ? 'token' : 'SOL'),
49
+ currency,
50
50
  feePayerKey: feePayerKey || undefined,
51
51
  recipient,
52
- splToken: splToken || undefined,
53
52
  type: 'challenge',
54
53
  });
55
54
  const useServerFeePayer = serverPaysFees && feePayerKey && !broadcast;
55
+ // Compute primary amount (total minus splits).
56
+ const splitsTotal = (splits ?? []).reduce((sum, s) => sum + BigInt(s.amount), 0n);
57
+ const primaryAmount = BigInt(amount) - splitsTotal;
56
58
  // Build transfer instructions.
57
59
  const instructions = [];
58
- if (splToken) {
59
- // ── SPL token transfer ──
60
- const mint = address(splToken);
61
- const tokenProg = address(tokenProgramAddr || TOKEN_PROGRAM);
60
+ if (mint) {
61
+ // ── SPL token transfers ──
62
+ const mintAddress = address(mint);
63
+ const tokenProg = tokenProgramAddr
64
+ ? address(tokenProgramAddr)
65
+ : await resolveTokenProgram(rpc, mintAddress);
66
+ const tokenDecimals = decimals ?? 6;
62
67
  const [sourceAta] = await findAssociatedTokenPda({
63
- mint,
68
+ mint: mintAddress,
64
69
  owner: signer.address,
65
70
  tokenProgram: tokenProg,
66
71
  });
67
- const [destAta] = await findAssociatedTokenPda({
68
- mint,
69
- owner: address(recipient),
70
- tokenProgram: tokenProg,
71
- });
72
- // Create destination ATA if it doesn't exist (idempotent).
73
- // WARNING: When the server is fee payer, it pays ~0.002 SOL rent for ATA
74
- // creation. The recipient can close the ATA to reclaim rent, then the next
75
- // payment re-creates it — repeatedly draining the fee payer. Servers SHOULD
76
- // verify the ATA exists before signing, or require recipients to pre-create
77
- // their ATAs, or factor rent cost into pricing.
78
- if (useServerFeePayer) {
79
- // In fee payer mode, the server's key pays ATA rent.
80
- // We build the instruction manually since the payer isn't a local signer.
81
- instructions.push(createAssociatedTokenAccountIdempotent(address(feePayerKey), address(recipient), mint, destAta, tokenProg));
82
- }
83
- else {
84
- // Standard mode: client pays ATA rent via Codama-generated instruction.
85
- instructions.push(getCreateAssociatedTokenIdempotentInstruction({
86
- ata: destAta,
87
- mint,
88
- owner: address(recipient),
89
- payer: signer,
72
+ // Helper: add ATA creation + transferChecked for a recipient.
73
+ const addSplTransfer = async (dest, transferAmount) => {
74
+ const [destAta] = await findAssociatedTokenPda({
75
+ mint: mintAddress,
76
+ owner: address(dest),
90
77
  tokenProgram: tokenProg,
91
- }));
78
+ });
79
+ // Create destination ATA if it doesn't exist (idempotent).
80
+ if (useServerFeePayer) {
81
+ instructions.push(createAssociatedTokenAccountIdempotent(address(feePayerKey), address(dest), mintAddress, destAta, tokenProg));
82
+ }
83
+ else {
84
+ instructions.push(getCreateAssociatedTokenIdempotentInstruction({
85
+ ata: destAta,
86
+ mint: mintAddress,
87
+ owner: address(dest),
88
+ payer: signer,
89
+ tokenProgram: tokenProg,
90
+ }));
91
+ }
92
+ instructions.push(getTransferCheckedInstruction({
93
+ amount: transferAmount,
94
+ authority: signer,
95
+ decimals: tokenDecimals,
96
+ destination: destAta,
97
+ mint: mintAddress,
98
+ source: sourceAta,
99
+ }, { programAddress: tokenProg }));
100
+ };
101
+ // Primary transfer to recipient.
102
+ await addSplTransfer(recipient, primaryAmount);
103
+ // Split transfers.
104
+ for (const split of splits ?? []) {
105
+ await addSplTransfer(split.recipient, BigInt(split.amount));
92
106
  }
93
- instructions.push(getTransferCheckedInstruction({
94
- amount: BigInt(amount),
95
- authority: signer,
96
- decimals: decimals ?? 6,
97
- destination: destAta,
98
- mint,
99
- source: sourceAta,
100
- }, { programAddress: tokenProg }));
101
107
  }
102
108
  else {
103
- // ── Native SOL transfer ──
109
+ // ── Native SOL transfers ──
110
+ // Primary transfer to recipient.
104
111
  instructions.push(getTransferSolInstruction({
105
- amount: BigInt(amount),
112
+ amount: primaryAmount,
106
113
  destination: address(recipient),
107
114
  source: signer,
108
115
  }));
109
- }
110
- if (reference?.trim()) {
111
- instructions.push(createReferenceMemoInstruction(reference));
116
+ // Split transfers.
117
+ for (const split of splits ?? []) {
118
+ instructions.push(getTransferSolInstruction({
119
+ amount: BigInt(split.amount),
120
+ destination: address(split.recipient),
121
+ source: signer,
122
+ }));
123
+ }
112
124
  }
113
125
  onProgress?.({ type: 'signing' });
114
126
  // Use server-provided blockhash if available, otherwise fetch one.
@@ -124,7 +136,7 @@ export function charge(parameters) {
124
136
  // Prepend compute budget instructions per best practice.
125
137
  msg => prependTransactionMessageInstructions([
126
138
  getSetComputeUnitPriceInstruction({ microLamports: parameters.computeUnitPrice ?? 1n }),
127
- getSetComputeUnitLimitInstruction({ units: parameters.computeUnitLimit ?? 50_000 }),
139
+ getSetComputeUnitLimitInstruction({ units: parameters.computeUnitLimit ?? 200_000 }),
128
140
  ], msg));
129
141
  // When server pays fees, partially sign (only the transfer authority).
130
142
  // The server will add its fee payer signature before broadcasting.
@@ -181,16 +193,16 @@ function createAssociatedTokenAccountIdempotent(payer, owner, mint, ata, tokenPr
181
193
  programAddress: address(ASSOCIATED_TOKEN_PROGRAM), // CreateIdempotent discriminator
182
194
  };
183
195
  }
184
- /**
185
- * Adds challenge reference as memo to make rapid identical payments unique
186
- * per challenge (important for local simnets such as Surfpool).
187
- */
188
- function createReferenceMemoInstruction(reference) {
189
- return {
190
- accounts: [],
191
- data: textEncoder.encode(`mppx:${reference}`),
192
- programAddress: address(MEMO_PROGRAM),
193
- };
196
+ async function resolveTokenProgram(rpc, mint) {
197
+ const account = await rpc.getAccountInfo(mint, { encoding: 'base64' }).send();
198
+ const owner = account.value?.owner;
199
+ if (!owner) {
200
+ throw new Error('Failed to determine token program for mint: mint account not found');
201
+ }
202
+ if (owner === TOKEN_PROGRAM || owner === TOKEN_2022_PROGRAM) {
203
+ return address(owner);
204
+ }
205
+ throw new Error(`Failed to determine token program for mint: unexpected owner ${owner}`);
194
206
  }
195
207
  /**
196
208
  * Polls for transaction confirmation via getSignatureStatuses.
@@ -1 +1 @@
1
- {"version":3,"file":"Charge.js","sourceRoot":"","sources":["../../sdk/src/client/Charge.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Charge.js","sourceRoot":"","sources":["../../src/client/Charge.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"Methods.d.ts","sourceRoot":"","sources":["../../sdk/src/client/Methods.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,OAAO,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,cAAc,CAAC;AAEnD;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,MAAM,EAAE;IACjB,CAAC,UAAU,EAAE,MAAM,CAAC,UAAU,GAAG,UAAU,CAAC,OAAO,OAAO,CAAC,CAAC;IAC5D,MAAM,EAAE,OAAO,OAAO,CAAC;IACvB,OAAO,EAAE,OAAO,QAAQ,CAAC;CAI3B,CAAC;AAEH,MAAM,CAAC,OAAO,WAAW,MAAM,CAAC;IAC5B,KAAK,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;CACxC"}
1
+ {"version":3,"file":"Methods.d.ts","sourceRoot":"","sources":["../../src/client/Methods.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,OAAO,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,cAAc,CAAC;AAEnD;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,MAAM,EAAE;IACjB,CAAC,UAAU,EAAE,MAAM,CAAC,UAAU,GAAG,UAAU,CAAC,OAAO,OAAO,CAAC,CAAC;IAC5D,MAAM,EAAE,OAAO,OAAO,CAAC;IACvB,OAAO,EAAE,OAAO,QAAQ,CAAC;CAI3B,CAAC;AAEH,MAAM,CAAC,OAAO,WAAW,MAAM,CAAC;IAC5B,KAAK,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;CACxC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Methods.js","sourceRoot":"","sources":["../../sdk/src/client/Methods.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,OAAO,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,cAAc,CAAC;AAEnD;;;;;;;;;;;;;;;GAeG;AACH,MAAM,CAAC,MAAM,MAAM,GAIf,MAAM,CAAC,MAAM,CAAC,CAAC,UAA6B,EAAE,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;IACtE,MAAM,EAAE,OAAO;IACf,OAAO,EAAE,QAAQ;CACpB,CAAC,CAAC"}
1
+ {"version":3,"file":"Methods.js","sourceRoot":"","sources":["../../src/client/Methods.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,OAAO,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,cAAc,CAAC;AAEnD;;;;;;;;;;;;;;;GAeG;AACH,MAAM,CAAC,MAAM,MAAM,GAIf,MAAM,CAAC,MAAM,CAAC,CAAC,UAA6B,EAAE,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;IACtE,MAAM,EAAE,OAAO;IACf,OAAO,EAAE,QAAQ;CACpB,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Session.d.ts","sourceRoot":"","sources":["../../sdk/src/client/Session.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,EAA8B,MAAM,EAAE,CAAC,EAAE,MAAM,MAAM,CAAC;AAG7D,OAAO,KAAK,EAAE,iBAAiB,EAA4B,MAAM,qBAAqB,CAAC;AAEvF,KAAK,YAAY,GAAG;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,KAAK,GAAG,KAAK,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAmCF,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;iBAS/B,CAAC;AAEH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE,wBAAgB,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBA2WrD;AA6LD,MAAM,CAAC,OAAO,WAAW,OAAO,CAAC;IAC7B,KAAK,UAAU,GAAG;QACd,UAAU,EAAE,iBAAiB,CAAC;QAC9B,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;QAC5C,gBAAgB,CAAC,EAAE,OAAO,CAAC;QAC3B,MAAM,CAAC,EAAE,iBAAiB,CAAC;KAC9B,CAAC;IAEF,KAAK,aAAa,GACZ;QAAE,KAAK,EAAE,YAAY,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,WAAW,CAAA;KAAE,GAC9E;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,gBAAgB,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,SAAS,CAAA;KAAE,GAChE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,gBAAgB,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,UAAU,CAAA;KAAE,GACjE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,QAAQ,CAAA;KAAE,GACrC;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,SAAS,CAAA;KAAE,GACtC;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,QAAQ,CAAA;KAAE,GACrC;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,SAAS,CAAA;KAAE,CAAC;CAChD"}
1
+ {"version":3,"file":"Session.d.ts","sourceRoot":"","sources":["../../src/client/Session.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,EAA8B,MAAM,EAAE,CAAC,EAAE,MAAM,MAAM,CAAC;AAG7D,OAAO,KAAK,EAAE,iBAAiB,EAA4B,MAAM,qBAAqB,CAAC;AAEvF,KAAK,YAAY,GAAG;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,KAAK,GAAG,KAAK,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAmCF,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;iBAS/B,CAAC;AAEH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE,wBAAgB,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBA2WrD;AA6LD,MAAM,CAAC,OAAO,WAAW,OAAO,CAAC;IAC7B,KAAK,UAAU,GAAG;QACd,UAAU,EAAE,iBAAiB,CAAC;QAC9B,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;QAC5C,gBAAgB,CAAC,EAAE,OAAO,CAAC;QAC3B,MAAM,CAAC,EAAE,iBAAiB,CAAC;KAC9B,CAAC;IAEF,KAAK,aAAa,GACZ;QAAE,KAAK,EAAE,YAAY,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,WAAW,CAAA;KAAE,GAC9E;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,gBAAgB,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,SAAS,CAAA;KAAE,GAChE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,gBAAgB,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,UAAU,CAAA;KAAE,GACjE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,QAAQ,CAAA;KAAE,GACrC;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,SAAS,CAAA;KAAE,GACtC;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,QAAQ,CAAA;KAAE,GACrC;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,SAAS,CAAA;KAAE,CAAC;CAChD"}