You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Bump to beta.12, fix all examples, add CI for toolkits
- Bump @lightprotocol/compressed-token and stateless.js to ^0.23.0-beta.12
- Fix wrap/unwrap examples: replace removed decompressInterface, use TOKEN_PROGRAM_ID
- Fix delegate-transfer: use SPL mint + wrap pattern for hot balance
- Fix load-ata instruction: import from /unified, fix batching
- Fix gasless-transfer: pass recipient owner, not ATA address
- Fix gasless-transactions Cargo.toml: update binary path after rename
- Add CI jobs for payments toolkit and gasless-transactions TypeScript
- Remove dead script entries from typescript-client package.json
- Rename send examples to basic-send-action/instruction
- Add batch-send-instruction with createLightTokenTransferInstruction
- Update READMEs with renamed files and new examples
Entire-Checkpoint: 4afa49be1970
-**[batch-send-instruction](payments/send/batch-send-instruction.ts)** — Pay multiple recipients in one transaction
14
15
-**[payment-with-memo](payments/send/payment-with-memo.ts)** — Attach an invoice ID or payment reference to a transfer
15
16
-**[sign-all-transactions](payments/send/sign-all-transactions.ts)** — Sign all transactions with one wallet approval. Shows parallel load optimization.
16
17
@@ -29,7 +30,7 @@ See the [payments README](payments/README.md) for API comparison and setup.
29
30
-**[delegate-approve](payments/spend-permissions/delegate-approve.ts)** — Let a delegate spend tokens on your behalf
-**[delegate-check](payments/spend-permissions/delegate-check.ts)** — Check current delegation status and remaining allowance
32
-
-**[delegate-full-flow](payments/spend-permissions/delegate-full-flow.ts)** — Approve, check, and revoke in one script
33
+
-**[delegate-transfer](payments/spend-permissions/delegate-transfer.ts)** — Delegate transfers tokens on behalf of owner
33
34
34
35
### Sign with Privy
35
36
@@ -53,6 +54,13 @@ Abstract SOL fees so users never hold SOL. Set your application as the fee payer
53
54
-**[TypeScript](gasless-transactions/typescript/)** — Gasless transfer with separate fee payer
54
55
-**[Rust](gasless-transactions/rust/)** — Gasless transfer with separate fee payer
55
56
57
+
### [Nullifier Program](nullifier-program/)
58
+
59
+
For some use cases, such as sending payments, you might want to prevent your onchain instruction from being executed more than once. The nullifier program utility solves this for you. We also deployed a reference implementation to public networks so you can get started quickly.
Copy file name to clipboardExpand all lines: toolkits/payments/README.md
+8-9Lines changed: 8 additions & 9 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -27,13 +27,12 @@ Light Token reduces account creation cost by 200x compared to SPL. Transfer cost
27
27
28
28
### Send payments
29
29
30
-
| File | Description | Key function |
31
-
|:-----|:------------|:-------------|
32
-
|[send-action.ts](send/send-action.ts)| Send tokens. One call handles loading and recipient account creation. |`transferInterface`|
33
-
|[send-instruction.ts](send/send-instruction.ts)| Same transfer, but returns raw instructions for custom transaction building. |`createTransferInterfaceInstructions`|
34
-
|[payment-with-memo.ts](send/payment-with-memo.ts)| Attach an invoice ID or payment reference. Reads it back from transaction logs. |`createTransferInterfaceInstructions`, `sliceLast`|
35
-
|[batch-send.ts](send/batch-send.ts)| Pay multiple recipients in one transaction. |`createTransferInterfaceInstructions`, `createAtaInterfaceIdempotent`|
36
-
|[sign-all-transactions.ts](send/sign-all-transactions.ts)| Sign all transactions with one wallet approval. Shows parallel load optimization. |`signAllTransactions`, `sliceLast`|
30
+
| Example | Description | Action | Instruction |
31
+
|:--------|:------------|:-------|:------------|
32
+
| Basic send | Send tokens to a recipient. |[action](send/basic-send-action.ts)|[instruction](send/basic-send-instruction.ts)|
33
+
| Batch send | Pay multiple recipients in one transaction. |[action](send/batch-send-action.ts)|[instruction](send/batch-send-instruction.ts)|
34
+
| Payment with memo | Attach an invoice ID or payment reference. ||[instruction](send/payment-with-memo.ts)|
35
+
| Sign all transactions | Sign all transactions with one wallet approval. ||[instruction](send/sign-all-transactions.ts)|
37
36
|[verify-address.ts](verify/verify-address.ts)| Confirm a recipient account exists before sending. |`getAssociatedTokenAddressInterface`, `getAtaInterface`|
38
37
39
38
> For gasless transfers (separate fee payer / sponsor), see the [gasless-transactions](../gasless-transactions/) toolkit.
0 commit comments