@agenticprimitives/payments 0.0.0-alpha.3 → 0.0.0-alpha.30

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 (82) hide show
  1. package/README.md +2 -0
  2. package/dist/entitlement/index.d.ts +125 -0
  3. package/dist/entitlement/index.d.ts.map +1 -0
  4. package/dist/entitlement/index.js +128 -0
  5. package/dist/entitlement/index.js.map +1 -0
  6. package/dist/entitlement/voucher.d.ts +85 -0
  7. package/dist/entitlement/voucher.d.ts.map +1 -0
  8. package/dist/entitlement/voucher.js +109 -0
  9. package/dist/entitlement/voucher.js.map +1 -0
  10. package/dist/index.d.ts +24 -0
  11. package/dist/index.d.ts.map +1 -1
  12. package/dist/index.js +20 -0
  13. package/dist/index.js.map +1 -1
  14. package/dist/mandate-sign.d.ts +190 -0
  15. package/dist/mandate-sign.d.ts.map +1 -0
  16. package/dist/mandate-sign.js +202 -0
  17. package/dist/mandate-sign.js.map +1 -0
  18. package/dist/mandate.d.ts +34 -0
  19. package/dist/mandate.d.ts.map +1 -0
  20. package/dist/mandate.js +40 -0
  21. package/dist/mandate.js.map +1 -0
  22. package/dist/ops.d.ts +55 -0
  23. package/dist/ops.d.ts.map +1 -0
  24. package/dist/ops.js +66 -0
  25. package/dist/ops.js.map +1 -0
  26. package/dist/rails/escrow.d.ts +156 -0
  27. package/dist/rails/escrow.d.ts.map +1 -0
  28. package/dist/rails/escrow.js +88 -0
  29. package/dist/rails/escrow.js.map +1 -0
  30. package/dist/rails/invoice.d.ts +65 -0
  31. package/dist/rails/invoice.d.ts.map +1 -0
  32. package/dist/rails/invoice.js +57 -0
  33. package/dist/rails/invoice.js.map +1 -0
  34. package/dist/rails/recurring.d.ts +56 -0
  35. package/dist/rails/recurring.d.ts.map +1 -0
  36. package/dist/rails/recurring.js +58 -0
  37. package/dist/rails/recurring.js.map +1 -0
  38. package/dist/rails/wallet.d.ts +16 -0
  39. package/dist/rails/wallet.d.ts.map +1 -0
  40. package/dist/rails/wallet.js +20 -0
  41. package/dist/rails/wallet.js.map +1 -0
  42. package/dist/rails/x402/executor.d.ts +118 -0
  43. package/dist/rails/x402/executor.d.ts.map +1 -0
  44. package/dist/rails/x402/executor.js +243 -0
  45. package/dist/rails/x402/executor.js.map +1 -0
  46. package/dist/rails/x402/index.d.ts +11 -0
  47. package/dist/rails/x402/index.d.ts.map +1 -0
  48. package/dist/rails/x402/index.js +8 -0
  49. package/dist/rails/x402/index.js.map +1 -0
  50. package/dist/rails/x402/nonce-store.d.ts +30 -0
  51. package/dist/rails/x402/nonce-store.d.ts.map +1 -0
  52. package/dist/rails/x402/nonce-store.js +35 -0
  53. package/dist/rails/x402/nonce-store.js.map +1 -0
  54. package/dist/rails/x402/quote.d.ts +41 -0
  55. package/dist/rails/x402/quote.d.ts.map +1 -0
  56. package/dist/rails/x402/quote.js +84 -0
  57. package/dist/rails/x402/quote.js.map +1 -0
  58. package/dist/rails/x402/resource.d.ts +42 -0
  59. package/dist/rails/x402/resource.d.ts.map +1 -0
  60. package/dist/rails/x402/resource.js +71 -0
  61. package/dist/rails/x402/resource.js.map +1 -0
  62. package/dist/rails/x402/wire.d.ts +81 -0
  63. package/dist/rails/x402/wire.d.ts.map +1 -0
  64. package/dist/rails/x402/wire.js +125 -0
  65. package/dist/rails/x402/wire.js.map +1 -0
  66. package/dist/receipt.d.ts +36 -0
  67. package/dist/receipt.d.ts.map +1 -0
  68. package/dist/receipt.js +50 -0
  69. package/dist/receipt.js.map +1 -0
  70. package/dist/refund.d.ts +29 -0
  71. package/dist/refund.d.ts.map +1 -0
  72. package/dist/refund.js +19 -0
  73. package/dist/refund.js.map +1 -0
  74. package/dist/split.d.ts +27 -0
  75. package/dist/split.d.ts.map +1 -0
  76. package/dist/split.js +33 -0
  77. package/dist/split.js.map +1 -0
  78. package/dist/transfer.d.ts +51 -0
  79. package/dist/transfer.d.ts.map +1 -0
  80. package/dist/transfer.js +54 -0
  81. package/dist/transfer.js.map +1 -0
  82. package/package.json +21 -11
@@ -0,0 +1,54 @@
1
+ /**
2
+ * Shared transfer-plan plumbing for the non-x402 rails (spec 243 §5.5).
3
+ *
4
+ * A `TransferPlan` is the inner call an SA executes (`AgentAccount.execute(to, value, data)`
5
+ * or a UserOp / wallet tx) — the same `{to, value, data}` shape the x402 rail's
6
+ * `buildRedemptionCalldata` returns. Wallet / invoice / refund / split all reduce to one or
7
+ * more ERC-20 transfers from the payer or treasury SA.
8
+ */
9
+ import { encodeFunctionData } from 'viem';
10
+ export const ERC20_TRANSFER_ABI = [
11
+ {
12
+ type: 'function',
13
+ name: 'transfer',
14
+ stateMutability: 'nonpayable',
15
+ inputs: [
16
+ { name: 'to', type: 'address' },
17
+ { name: 'amount', type: 'uint256' },
18
+ ],
19
+ outputs: [{ type: 'bool' }],
20
+ },
21
+ ];
22
+ /** A single ERC-20 transfer: the executing SA calls `asset.transfer(to, amount)`. */
23
+ export function buildErc20Transfer(asset, to, amount) {
24
+ return {
25
+ to: asset,
26
+ value: 0n,
27
+ data: encodeFunctionData({ abi: ERC20_TRANSFER_ABI, functionName: 'transfer', args: [to, amount] }),
28
+ };
29
+ }
30
+ /** A native-value transfer (the executing SA sends `amount` wei to `to`). */
31
+ export function buildNativeTransfer(to, amount) {
32
+ return { to, value: amount, data: '0x' };
33
+ }
34
+ export const ERC20_APPROVE_ABI = [
35
+ {
36
+ type: 'function',
37
+ name: 'approve',
38
+ stateMutability: 'nonpayable',
39
+ inputs: [
40
+ { name: 'spender', type: 'address' },
41
+ { name: 'amount', type: 'uint256' },
42
+ ],
43
+ outputs: [{ type: 'bool' }],
44
+ },
45
+ ];
46
+ /** An ERC-20 approval — needed before the escrow `deposit` pulls funds via `transferFrom`. */
47
+ export function buildErc20Approve(asset, spender, amount) {
48
+ return {
49
+ to: asset,
50
+ value: 0n,
51
+ data: encodeFunctionData({ abi: ERC20_APPROVE_ABI, functionName: 'approve', args: [spender, amount] }),
52
+ };
53
+ }
54
+ //# sourceMappingURL=transfer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transfer.js","sourceRoot":"","sources":["../src/transfer.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,kBAAkB,EAA0B,MAAM,MAAM,CAAC;AAQlE,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,UAAU;QAChB,eAAe,EAAE,YAAY;QAC7B,MAAM,EAAE;YACN,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE;YAC/B,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE;SACpC;QACD,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;KAC5B;CACO,CAAC;AAEX,qFAAqF;AACrF,MAAM,UAAU,kBAAkB,CAAC,KAAc,EAAE,EAAW,EAAE,MAAc;IAC5E,OAAO;QACL,EAAE,EAAE,KAAK;QACT,KAAK,EAAE,EAAE;QACT,IAAI,EAAE,kBAAkB,CAAC,EAAE,GAAG,EAAE,kBAAkB,EAAE,YAAY,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,MAAM,CAAC,EAAE,CAAC;KACpG,CAAC;AACJ,CAAC;AAED,6EAA6E;AAC7E,MAAM,UAAU,mBAAmB,CAAC,EAAW,EAAE,MAAc;IAC7D,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;AAC3C,CAAC;AAED,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,SAAS;QACf,eAAe,EAAE,YAAY;QAC7B,MAAM,EAAE;YACN,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE;YACpC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE;SACpC;QACD,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;KAC5B;CACO,CAAC;AAEX,8FAA8F;AAC9F,MAAM,UAAU,iBAAiB,CAAC,KAAc,EAAE,OAAgB,EAAE,MAAc;IAChF,OAAO;QACL,EAAE,EAAE,KAAK;QACT,KAAK,EAAE,EAAE;QACT,IAAI,EAAE,kBAAkB,CAAC,EAAE,GAAG,EAAE,iBAAiB,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE,CAAC;KACvG,CAAC;AACJ,CAAC"}
package/package.json CHANGED
@@ -1,17 +1,21 @@
1
1
  {
2
2
  "name": "@agenticprimitives/payments",
3
- "version": "0.0.0-alpha.3",
3
+ "version": "0.0.0-alpha.30",
4
4
  "description": "PaymentMandate + ContextBinding + MandateConstraints + open/closed mode discrimination. Three W1 rails (x402, wallet, sponsored-userop). PaymentReceipt asserted into AttestationRegistry per ADR-0023.",
5
+ "homepage": "https://agenticprimitives.dev",
6
+ "bugs": {
7
+ "url": "https://github.com/agentictrustlabs/agenticprimitives/issues"
8
+ },
9
+ "author": {
10
+ "name": "Agentic Trust Labs",
11
+ "url": "https://agenticprimitives.dev"
12
+ },
5
13
  "license": "MIT",
6
14
  "repository": {
7
15
  "type": "git",
8
16
  "url": "git+https://github.com/agentictrustlabs/agenticprimitives.git",
9
17
  "directory": "packages/payments"
10
18
  },
11
- "homepage": "https://github.com/agentictrustlabs/agenticprimitives/tree/master/packages/payments",
12
- "bugs": {
13
- "url": "https://github.com/agentictrustlabs/agenticprimitives/issues"
14
- },
15
19
  "type": "module",
16
20
  "main": "./dist/index.js",
17
21
  "types": "./dist/index.d.ts",
@@ -34,20 +38,26 @@
34
38
  "viem": "^2.52.2"
35
39
  },
36
40
  "devDependencies": {
37
- "vitest": "^4.1.8",
41
+ "vitest": "^4.1.11",
38
42
  "viem": "^2.52.2"
39
43
  },
40
44
  "keywords": [
41
45
  "agentic",
42
46
  "primitives",
43
- "payments"
47
+ "payments",
48
+ "agentic-primitives",
49
+ "agenticprimitives",
50
+ "ai-agents",
51
+ "agent-authority",
52
+ "agentic-trust"
44
53
  ],
45
54
  "dependencies": {
46
55
  "@noble/hashes": "^2.2.0",
47
- "@agenticprimitives/attestations": "0.0.0-alpha.3",
48
- "@agenticprimitives/delegation": "1.0.0-alpha.7",
49
- "@agenticprimitives/verifiable-credentials": "0.0.0-alpha.3",
50
- "@agenticprimitives/types": "1.0.0-alpha.7"
56
+ "@noble/curves": "^2.2.0",
57
+ "@agenticprimitives/attestations": "0.0.0-alpha.30",
58
+ "@agenticprimitives/delegation": "1.0.0-alpha.34",
59
+ "@agenticprimitives/types": "1.0.0-alpha.34",
60
+ "@agenticprimitives/verifiable-credentials": "0.0.0-alpha.31"
51
61
  },
52
62
  "scripts": {
53
63
  "build": "tsc -p tsconfig.build.json",