@pay-skill/sdk 0.1.7 → 0.1.10

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 (58) hide show
  1. package/README.md +80 -91
  2. package/dist/auth.d.ts +11 -6
  3. package/dist/auth.d.ts.map +1 -1
  4. package/dist/auth.js +19 -7
  5. package/dist/auth.js.map +1 -1
  6. package/dist/errors.d.ts +4 -2
  7. package/dist/errors.d.ts.map +1 -1
  8. package/dist/errors.js +8 -3
  9. package/dist/errors.js.map +1 -1
  10. package/dist/index.d.ts +2 -13
  11. package/dist/index.d.ts.map +1 -1
  12. package/dist/index.js +1 -6
  13. package/dist/index.js.map +1 -1
  14. package/dist/keychain.d.ts +8 -0
  15. package/dist/keychain.d.ts.map +1 -0
  16. package/dist/keychain.js +17 -0
  17. package/dist/keychain.js.map +1 -0
  18. package/dist/wallet.d.ts +135 -104
  19. package/dist/wallet.d.ts.map +1 -1
  20. package/dist/wallet.js +683 -280
  21. package/dist/wallet.js.map +1 -1
  22. package/jsr.json +1 -1
  23. package/package.json +5 -2
  24. package/src/auth.ts +28 -18
  25. package/src/errors.ts +10 -3
  26. package/src/index.ts +12 -39
  27. package/src/keychain.ts +18 -0
  28. package/src/wallet.ts +1074 -355
  29. package/tests/test_auth_rejection.ts +43 -95
  30. package/tests/test_crypto.ts +59 -172
  31. package/tests/test_e2e.ts +46 -105
  32. package/tests/test_errors.ts +9 -1
  33. package/tests/test_ows.ts +153 -0
  34. package/tests/test_wallet.ts +194 -0
  35. package/dist/client.d.ts +0 -94
  36. package/dist/client.d.ts.map +0 -1
  37. package/dist/client.js +0 -443
  38. package/dist/client.js.map +0 -1
  39. package/dist/models.d.ts +0 -78
  40. package/dist/models.d.ts.map +0 -1
  41. package/dist/models.js +0 -2
  42. package/dist/models.js.map +0 -1
  43. package/dist/ows-signer.d.ts +0 -75
  44. package/dist/ows-signer.d.ts.map +0 -1
  45. package/dist/ows-signer.js +0 -130
  46. package/dist/ows-signer.js.map +0 -1
  47. package/dist/signer.d.ts +0 -46
  48. package/dist/signer.d.ts.map +0 -1
  49. package/dist/signer.js +0 -111
  50. package/dist/signer.js.map +0 -1
  51. package/src/client.ts +0 -644
  52. package/src/models.ts +0 -77
  53. package/src/ows-signer.ts +0 -223
  54. package/src/signer.ts +0 -147
  55. package/tests/test_ows_integration.ts +0 -92
  56. package/tests/test_ows_signer.ts +0 -365
  57. package/tests/test_signer.ts +0 -47
  58. package/tests/test_validation.ts +0 -66
package/README.md CHANGED
@@ -1,8 +1,13 @@
1
1
  # @pay-skill/sdk
2
2
 
3
- TypeScript SDK for [pay](https://pay-skill.com) payment infrastructure for AI agents. USDC on Base.
3
+ TypeScript SDK for [pay](https://pay-skill.com) -- payment infrastructure for AI agents. USDC on Base.
4
4
 
5
- Three primitives: direct payments, tabs (pre-funded metered accounts), and x402 HTTP paywalls.
5
+ ```ts
6
+ import { Wallet } from "@pay-skill/sdk";
7
+
8
+ const wallet = new Wallet();
9
+ await wallet.send("0xProvider...", 5, "for API access");
10
+ ```
6
11
 
7
12
  ## Install
8
13
 
@@ -10,144 +15,128 @@ Three primitives: direct payments, tabs (pre-funded metered accounts), and x402
10
15
  npm install @pay-skill/sdk
11
16
  ```
12
17
 
13
- Requires Node.js 20+.
14
-
15
18
  ## Quick Start
16
19
 
17
- ```typescript
18
- import { PayClient } from "@pay-skill/sdk";
20
+ ### Zero-config (env var)
19
21
 
20
- const client = new PayClient({ signer: "cli" }); // uses `pay sign` subprocess
22
+ Set `PAYSKILL_KEY` to your hex private key:
21
23
 
22
- // Pay another agent $5
23
- const result = await client.payDirect("0xprovider...", 5_000_000, { memo: "task-42" });
24
- console.log(result.txHash);
24
+ ```ts
25
+ const wallet = new Wallet();
26
+ const { txHash } = await wallet.send("0xRecipient...", 10);
27
+ ```
25
28
 
26
- // Open a metered tab
27
- const tab = await client.openTab("0xprovider...", 20_000_000, { maxChargePerCall: 500_000 });
29
+ ### Explicit key
28
30
 
29
- // x402 request (SDK handles payment automatically)
30
- const response = await client.request("https://api.example.com/data");
31
+ ```ts
32
+ const wallet = new Wallet({ privateKey: "0xdead..." });
31
33
  ```
32
34
 
33
- All amounts are in USDC micro-units (6 decimals). `$1.00 = 1_000_000`.
35
+ ### OS keychain (same key as `pay` CLI)
34
36
 
35
- ## API Reference
36
-
37
- ### PayClient
37
+ ```ts
38
+ const wallet = await Wallet.create();
39
+ ```
38
40
 
39
- ```typescript
40
- import { PayClient } from "@pay-skill/sdk";
41
+ ### Testnet
41
42
 
42
- const client = new PayClient({
43
- apiUrl: "https://pay-skill.com/api/v1", // default
44
- signer: "cli", // "cli", "raw", "custom", or a Signer instance
45
- });
43
+ ```ts
44
+ const wallet = new Wallet({ testnet: true });
45
+ // or: PAYSKILL_TESTNET=1
46
+ await wallet.mint(100); // mint $100 test USDC
46
47
  ```
47
48
 
48
- ### Direct Payment
49
+ ### OWS (Open Wallet Standard)
49
50
 
50
- One-shot USDC transfer. $1.00 minimum.
51
-
52
- ```typescript
53
- const result = await client.payDirect(to, amount, { memo });
54
- // Returns: { txHash, status, amount, fee }
51
+ ```ts
52
+ const wallet = await Wallet.fromOws({ walletId: "my-agent" });
55
53
  ```
56
54
 
57
- ### Tab Management
58
-
59
- Pre-funded metered account. $5.00 minimum to open.
55
+ Requires `@open-wallet-standard/core` as a peer dependency.
60
56
 
61
- ```typescript
62
- // Open
63
- const tab = await client.openTab(provider, amount, { maxChargePerCall });
57
+ ## API
64
58
 
65
- // Query
66
- const tabs = await client.listTabs();
67
- const tab = await client.getTab(tabId);
59
+ All amounts are in dollars by default. Use `{ micro: N }` for micro-USDC precision.
68
60
 
69
- // Top up (no extra activation fee)
70
- const tab = await client.topUpTab(tabId, amount);
61
+ ### Payments
71
62
 
72
- // Close (either party, unilateral)
73
- const tab = await client.closeTab(tabId);
63
+ ```ts
64
+ await wallet.send(to, 5); // $5 direct payment
65
+ await wallet.send(to, 5, "invoice #42"); // with memo
66
+ await wallet.send(to, { micro: 5_000_000 }); // micro-USDC
74
67
  ```
75
68
 
76
- Returns `Tab { tabId, provider, amount, balanceRemaining, totalCharged, chargeCount, maxChargePerCall, status }`.
69
+ ### Tabs (pre-funded metered accounts)
77
70
 
78
- ### x402 Requests
71
+ ```ts
72
+ const tab = await wallet.openTab(provider, 50, 1); // $50 tab, $1 max/charge
73
+ await wallet.chargeTab(tab.id, 0.01); // charge $0.01
74
+ await wallet.topUpTab(tab.id, 25); // add $25
75
+ await wallet.closeTab(tab.id); // close + settle
76
+ const tabs = await wallet.listTabs();
77
+ const tab = await wallet.getTab(tabId);
78
+ ```
79
79
 
80
- Transparent HTTP 402 handling. The SDK detects `402 Payment Required`, pays (via direct or tab), and retries.
80
+ ### x402 (paid HTTP)
81
81
 
82
- ```typescript
83
- const response = await client.request(url, { method, body, headers });
84
- // Returns: Response (native fetch Response)
82
+ ```ts
83
+ const resp = await wallet.request("https://api.example.com/data");
84
+ // Handles 402 responses automatically: pays, retries, returns final response
85
85
  ```
86
86
 
87
- If the provider requires tab settlement, the SDK auto-opens a tab at 10x the per-call price (minimum $5).
88
-
89
87
  ### Wallet
90
88
 
91
- ```typescript
92
- const status = await client.getStatus();
93
- // Returns: { address, balance, openTabs }
89
+ ```ts
90
+ const bal = await wallet.balance(); // { total, locked, available }
91
+ const info = await wallet.status(); // { address, balance, openTabs }
94
92
  ```
95
93
 
96
- ### Webhooks
94
+ ### Discovery
97
95
 
98
- ```typescript
99
- const wh = await client.registerWebhook(url, { events: ["tab.opened"], secret: "whsec_..." });
100
- const webhooks = await client.listWebhooks();
101
- await client.deleteWebhook(webhookId);
96
+ ```ts
97
+ const services = await wallet.discover("weather");
98
+ // Or without a wallet:
99
+ import { discover } from "@pay-skill/sdk";
100
+ const services = await discover("weather");
102
101
  ```
103
102
 
104
103
  ### Funding
105
104
 
106
- ```typescript
107
- const fundUrl = await client.createFundLink(10_000_000); // Coinbase Onramp
108
- const withdrawUrl = await client.createWithdrawLink(5_000_000);
105
+ ```ts
106
+ const url = await wallet.createFundLink({ message: "Need $50 for API calls" });
107
+ const url = await wallet.createWithdrawLink();
109
108
  ```
110
109
 
111
- ## Signer Modes
112
-
113
- | Mode | Usage | When |
114
- |------|-------|------|
115
- | `"cli"` | Subprocess call to `pay sign` | Default. Key in OS keychain. |
116
- | `"raw"` | `PAYSKILL_KEY` env var | Dev/testing only. |
117
- | `"custom"` | Your own callback | Custom key management. |
110
+ ### Webhooks
118
111
 
119
- ```typescript
120
- // CLI signer (default)
121
- const client = new PayClient({ signer: "cli" });
112
+ ```ts
113
+ const wh = await wallet.registerWebhook("https://example.com/hook", ["payment.completed"]);
114
+ const hooks = await wallet.listWebhooks();
115
+ await wallet.deleteWebhook(wh.id);
116
+ ```
122
117
 
123
- // Raw key (dev only)
124
- const client = new PayClient({ signer: "raw", signerOptions: { key: "0xdead..." } });
118
+ ### Testnet
125
119
 
126
- // Custom callback
127
- import { CallbackSigner } from "@pay-skill/sdk";
128
- const signer = new CallbackSigner((hash: Uint8Array) => mySign(hash));
129
- const client = new PayClient({ signer });
120
+ ```ts
121
+ await wallet.mint(100); // mint $100 test USDC (testnet only)
130
122
  ```
131
123
 
132
- ## Error Handling
124
+ ## Errors
133
125
 
134
- ```typescript
126
+ ```ts
135
127
  import {
136
- PayError, // Base class
137
- PayValidationError, // Bad input (has .field)
138
- PayNetworkError, // Connection failed
139
- PayServerError, // Server returned error (has .statusCode)
140
- PayInsufficientFundsError, // Not enough USDC
128
+ PayError, // base
129
+ PayValidationError, // invalid input
130
+ PayNetworkError, // network failure
131
+ PayServerError, // server 4xx/5xx
132
+ PayInsufficientFundsError, // low balance (hints createFundLink)
141
133
  } from "@pay-skill/sdk";
142
134
  ```
143
135
 
144
- ## Configuration
145
-
146
- | Env Var | Purpose |
147
- |---------|---------|
148
- | `PAYSKILL_KEY` | Private key for raw signer mode |
136
+ ## Requirements
149
137
 
150
- The API URL is configurable via the `apiUrl` option. Default: `https://pay-skill.com/api/v1`.
138
+ - Node.js 18+
139
+ - ESM only
151
140
 
152
141
  ## License
153
142
 
package/dist/auth.d.ts CHANGED
@@ -32,13 +32,18 @@ export interface AuthHeaders {
32
32
  */
33
33
  export declare function buildAuthHeaders(privateKey: Hex, method: string, path: string, config: AuthConfig): Promise<AuthHeaders>;
34
34
  /**
35
- * Build auth headers using a generic signer (Signer interface).
36
- * Computes the EIP-712 hash manually and delegates signing to the signer.
35
+ * Build auth headers using a signTypedData function.
36
+ * Used by OWS signers and any non-raw-key signing path.
37
37
  */
38
- export declare function buildAuthHeadersWithSigner(signer: {
39
- sign(hash: Uint8Array): Uint8Array;
40
- address: string;
41
- }, method: string, path: string, config: AuthConfig): AuthHeaders;
38
+ export declare function buildAuthHeadersSigned(address: string, signTypedData: (params: {
39
+ domain: Record<string, unknown>;
40
+ types: Record<string, readonly {
41
+ name: string;
42
+ type: string;
43
+ }[]>;
44
+ primaryType: string;
45
+ message: Record<string, unknown>;
46
+ }) => Promise<string>, method: string, path: string, config: AuthConfig): Promise<AuthHeaders>;
42
47
  /**
43
48
  * Compute the EIP-712 hash for an APIRequest.
44
49
  * Must match the server's computation exactly.
@@ -1 +1 @@
1
- {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAAE,KAAK,GAAG,EAA2B,KAAK,OAAO,EAAE,MAAM,MAAM,CAAC;AAIvE,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,WAAW;IAC1B,aAAa,EAAE,MAAM,CAAC;IACtB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,aAAa,EAAE,MAAM,CAAC;CACvB;AAgBD;;GAEG;AACH,wBAAsB,gBAAgB,CACpC,UAAU,EAAE,GAAG,EACf,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,UAAU,GACjB,OAAO,CAAC,WAAW,CAAC,CA2BtB;AAED;;;GAGG;AACH,wBAAgB,0BAA0B,CACxC,MAAM,EAAE;IAAE,IAAI,CAAC,IAAI,EAAE,UAAU,GAAG,UAAU,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,EAC/D,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,UAAU,GACjB,WAAW,CAsBb;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,GAAG,EACV,OAAO,EAAE,MAAM,EACf,iBAAiB,EAAE,OAAO,GACzB,UAAU,CA4DZ"}
1
+ {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAAE,KAAK,GAAG,EAA2B,KAAK,OAAO,EAAE,MAAM,MAAM,CAAC;AAIvE,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,WAAW;IAC1B,aAAa,EAAE,MAAM,CAAC;IACtB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,aAAa,EAAE,MAAM,CAAC;CACvB;AAgBD;;GAEG;AACH,wBAAsB,gBAAgB,CACpC,UAAU,EAAE,GAAG,EACf,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,UAAU,GACjB,OAAO,CAAC,WAAW,CAAC,CA2BtB;AAED;;;GAGG;AACH,wBAAsB,sBAAsB,CAC1C,OAAO,EAAE,MAAM,EACf,aAAa,EAAE,CAAC,MAAM,EAAE;IACtB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC,CAAC;IACjE,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAClC,KAAK,OAAO,CAAC,MAAM,CAAC,EACrB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,UAAU,GACjB,OAAO,CAAC,WAAW,CAAC,CA0BtB;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,GAAG,EACV,OAAO,EAAE,MAAM,EACf,iBAAiB,EAAE,OAAO,GACzB,UAAU,CA4DZ"}
package/dist/auth.js CHANGED
@@ -61,17 +61,29 @@ export async function buildAuthHeaders(privateKey, method, path, config) {
61
61
  };
62
62
  }
63
63
  /**
64
- * Build auth headers using a generic signer (Signer interface).
65
- * Computes the EIP-712 hash manually and delegates signing to the signer.
64
+ * Build auth headers using a signTypedData function.
65
+ * Used by OWS signers and any non-raw-key signing path.
66
66
  */
67
- export function buildAuthHeadersWithSigner(signer, method, path, config) {
67
+ export async function buildAuthHeadersSigned(address, signTypedData, method, path, config) {
68
68
  const timestamp = BigInt(Math.floor(Date.now() / 1000));
69
69
  const nonce = ("0x" + randomBytes(32).toString("hex"));
70
- const hash = computeEip712Hash(method.toUpperCase(), path, timestamp, nonce, config.chainId, config.routerAddress);
71
- const sigBytes = signer.sign(hash);
72
- const signature = ("0x" + Buffer.from(sigBytes).toString("hex"));
70
+ const signature = await signTypedData({
71
+ domain: {
72
+ ...EIP712_DOMAIN,
73
+ chainId: config.chainId,
74
+ verifyingContract: config.routerAddress,
75
+ },
76
+ types: API_REQUEST_TYPES,
77
+ primaryType: "APIRequest",
78
+ message: {
79
+ method: method.toUpperCase(),
80
+ path,
81
+ timestamp,
82
+ nonce,
83
+ },
84
+ });
73
85
  return {
74
- "X-Pay-Agent": signer.address,
86
+ "X-Pay-Agent": address,
75
87
  "X-Pay-Signature": signature,
76
88
  "X-Pay-Timestamp": timestamp.toString(),
77
89
  "X-Pay-Nonce": nonce,
package/dist/auth.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"auth.js","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auth.js","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"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"}
package/dist/errors.d.ts CHANGED
@@ -17,8 +17,10 @@ export declare class PayServerError extends PayError {
17
17
  readonly statusCode: number;
18
18
  constructor(message: string, statusCode: number);
19
19
  }
20
- /** Insufficient USDC balance. */
20
+ /** Insufficient USDC balance. Includes fund link hint for agents. */
21
21
  export declare class PayInsufficientFundsError extends PayError {
22
- constructor(message?: string);
22
+ readonly balance: number;
23
+ readonly required: number;
24
+ constructor(message: string, balance?: number, required?: number);
23
25
  }
24
26
  //# sourceMappingURL=errors.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA,yCAAyC;AACzC,qBAAa,QAAS,SAAQ,KAAK;IACjC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;gBAEV,OAAO,EAAE,MAAM,EAAE,IAAI,SAAc;CAKhD;AAED,+BAA+B;AAC/B,qBAAa,kBAAmB,SAAQ,QAAQ;IAC9C,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;gBAEZ,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM;CAK5C;AAED,8CAA8C;AAC9C,qBAAa,eAAgB,SAAQ,QAAQ;gBAC/B,OAAO,EAAE,MAAM;CAI5B;AAED,yCAAyC;AACzC,qBAAa,cAAe,SAAQ,QAAQ;IAC1C,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;gBAEhB,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM;CAKhD;AAED,iCAAiC;AACjC,qBAAa,yBAA0B,SAAQ,QAAQ;gBACzC,OAAO,SAA8B;CAIlD"}
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA,yCAAyC;AACzC,qBAAa,QAAS,SAAQ,KAAK;IACjC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;gBAEV,OAAO,EAAE,MAAM,EAAE,IAAI,SAAc;CAKhD;AAED,+BAA+B;AAC/B,qBAAa,kBAAmB,SAAQ,QAAQ;IAC9C,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;gBAEZ,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM;CAK5C;AAED,8CAA8C;AAC9C,qBAAa,eAAgB,SAAQ,QAAQ;gBAC/B,OAAO,EAAE,MAAM;CAI5B;AAED,yCAAyC;AACzC,qBAAa,cAAe,SAAQ,QAAQ;IAC1C,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;gBAEhB,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM;CAKhD;AAED,qEAAqE;AACrE,qBAAa,yBAA0B,SAAQ,QAAQ;IACrD,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;gBAEd,OAAO,EAAE,MAAM,EAAE,OAAO,SAAI,EAAE,QAAQ,SAAI;CAQvD"}
package/dist/errors.js CHANGED
@@ -32,11 +32,16 @@ export class PayServerError extends PayError {
32
32
  this.statusCode = statusCode;
33
33
  }
34
34
  }
35
- /** Insufficient USDC balance. */
35
+ /** Insufficient USDC balance. Includes fund link hint for agents. */
36
36
  export class PayInsufficientFundsError extends PayError {
37
- constructor(message = "Insufficient USDC balance") {
38
- super(message, "insufficient_funds");
37
+ balance;
38
+ required;
39
+ constructor(message, balance = 0, required = 0) {
40
+ const hint = '\nUse wallet.createFundLink({ message: "Need funds" }) to request funding.';
41
+ super(message + hint, "insufficient_funds");
39
42
  this.name = "PayInsufficientFundsError";
43
+ this.balance = balance;
44
+ this.required = required;
40
45
  }
41
46
  }
42
47
  //# sourceMappingURL=errors.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA,yCAAyC;AACzC,MAAM,OAAO,QAAS,SAAQ,KAAK;IACxB,IAAI,CAAS;IAEtB,YAAY,OAAe,EAAE,IAAI,GAAG,WAAW;QAC7C,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC;QACvB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;CACF;AAED,+BAA+B;AAC/B,MAAM,OAAO,kBAAmB,SAAQ,QAAQ;IACrC,KAAK,CAAU;IAExB,YAAY,OAAe,EAAE,KAAc;QACzC,KAAK,CAAC,OAAO,EAAE,kBAAkB,CAAC,CAAC;QACnC,IAAI,CAAC,IAAI,GAAG,oBAAoB,CAAC;QACjC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;CACF;AAED,8CAA8C;AAC9C,MAAM,OAAO,eAAgB,SAAQ,QAAQ;IAC3C,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;QAChC,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAC;IAChC,CAAC;CACF;AAED,yCAAyC;AACzC,MAAM,OAAO,cAAe,SAAQ,QAAQ;IACjC,UAAU,CAAS;IAE5B,YAAY,OAAe,EAAE,UAAkB;QAC7C,KAAK,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;QAC/B,IAAI,CAAC,IAAI,GAAG,gBAAgB,CAAC;QAC7B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC/B,CAAC;CACF;AAED,iCAAiC;AACjC,MAAM,OAAO,yBAA0B,SAAQ,QAAQ;IACrD,YAAY,OAAO,GAAG,2BAA2B;QAC/C,KAAK,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAC;QACrC,IAAI,CAAC,IAAI,GAAG,2BAA2B,CAAC;IAC1C,CAAC;CACF"}
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA,yCAAyC;AACzC,MAAM,OAAO,QAAS,SAAQ,KAAK;IACxB,IAAI,CAAS;IAEtB,YAAY,OAAe,EAAE,IAAI,GAAG,WAAW;QAC7C,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC;QACvB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;CACF;AAED,+BAA+B;AAC/B,MAAM,OAAO,kBAAmB,SAAQ,QAAQ;IACrC,KAAK,CAAU;IAExB,YAAY,OAAe,EAAE,KAAc;QACzC,KAAK,CAAC,OAAO,EAAE,kBAAkB,CAAC,CAAC;QACnC,IAAI,CAAC,IAAI,GAAG,oBAAoB,CAAC;QACjC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;CACF;AAED,8CAA8C;AAC9C,MAAM,OAAO,eAAgB,SAAQ,QAAQ;IAC3C,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;QAChC,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAC;IAChC,CAAC;CACF;AAED,yCAAyC;AACzC,MAAM,OAAO,cAAe,SAAQ,QAAQ;IACjC,UAAU,CAAS;IAE5B,YAAY,OAAe,EAAE,UAAkB;QAC7C,KAAK,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;QAC/B,IAAI,CAAC,IAAI,GAAG,gBAAgB,CAAC;QAC7B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC/B,CAAC;CACF;AAED,qEAAqE;AACrE,MAAM,OAAO,yBAA0B,SAAQ,QAAQ;IAC5C,OAAO,CAAS;IAChB,QAAQ,CAAS;IAE1B,YAAY,OAAe,EAAE,OAAO,GAAG,CAAC,EAAE,QAAQ,GAAG,CAAC;QACpD,MAAM,IAAI,GACR,4EAA4E,CAAC;QAC/E,KAAK,CAAC,OAAO,GAAG,IAAI,EAAE,oBAAoB,CAAC,CAAC;QAC5C,IAAI,CAAC,IAAI,GAAG,2BAA2B,CAAC;QACxC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;CACF"}
package/dist/index.d.ts CHANGED
@@ -1,15 +1,4 @@
1
- export { PayClient, DEFAULT_API_URL } from "./client.js";
2
- export type { PayClientOptions } from "./client.js";
3
1
  export { PayError, PayValidationError, PayNetworkError, PayServerError, PayInsufficientFundsError, } from "./errors.js";
4
- export type { DirectPaymentResult, DiscoverOptions, DiscoverService, Tab, TabStatus, StatusResponse, WebhookRegistration, } from "./models.js";
5
- export type { Signer } from "./signer.js";
6
- export { CliSigner, RawKeySigner, CallbackSigner, createSigner, } from "./signer.js";
7
- export { OwsSigner } from "./ows-signer.js";
8
- export type { OwsSignerOptions } from "./ows-signer.js";
9
- export { Wallet, PrivateKeySigner } from "./wallet.js";
10
- export type { WalletOptions, FundLinkOptions, PermitResult, } from "./wallet.js";
11
- export { buildAuthHeaders, buildAuthHeadersWithSigner, computeEip712Hash, } from "./auth.js";
12
- export type { AuthConfig, AuthHeaders } from "./auth.js";
13
- export { signTransferAuthorization, combinedSignature, } from "./eip3009.js";
14
- export type { TransferAuthorization } from "./eip3009.js";
2
+ export { Wallet, discover } from "./wallet.js";
3
+ export type { Amount, WalletOptions, OwsWalletOptions, SendResult, Tab, ChargeResult, Balance, Status, DiscoverService, DiscoverOptions, FundLinkOptions, WebhookRegistration, MintResult, } from "./wallet.js";
15
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AACzD,YAAY,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAEpD,OAAO,EACL,QAAQ,EACR,kBAAkB,EAClB,eAAe,EACf,cAAc,EACd,yBAAyB,GAC1B,MAAM,aAAa,CAAC;AAErB,YAAY,EACV,mBAAmB,EACnB,eAAe,EACf,eAAe,EACf,GAAG,EACH,SAAS,EACT,cAAc,EACd,mBAAmB,GACpB,MAAM,aAAa,CAAC;AAErB,YAAY,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EACL,SAAS,EACT,YAAY,EACZ,cAAc,EACd,YAAY,GACb,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,YAAY,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAExD,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AACvD,YAAY,EACV,aAAa,EACb,eAAe,EACf,YAAY,GACb,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,gBAAgB,EAChB,0BAA0B,EAC1B,iBAAiB,GAClB,MAAM,WAAW,CAAC;AACnB,YAAY,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAEzD,OAAO,EACL,yBAAyB,EACzB,iBAAiB,GAClB,MAAM,cAAc,CAAC;AACtB,YAAY,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EACR,kBAAkB,EAClB,eAAe,EACf,cAAc,EACd,yBAAyB,GAC1B,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAC/C,YAAY,EACV,MAAM,EACN,aAAa,EACb,gBAAgB,EAChB,UAAU,EACV,GAAG,EACH,YAAY,EACZ,OAAO,EACP,MAAM,EACN,eAAe,EACf,eAAe,EACf,eAAe,EACf,mBAAmB,EACnB,UAAU,GACX,MAAM,aAAa,CAAC"}
package/dist/index.js CHANGED
@@ -1,8 +1,3 @@
1
- export { PayClient, DEFAULT_API_URL } from "./client.js";
2
1
  export { PayError, PayValidationError, PayNetworkError, PayServerError, PayInsufficientFundsError, } from "./errors.js";
3
- export { CliSigner, RawKeySigner, CallbackSigner, createSigner, } from "./signer.js";
4
- export { OwsSigner } from "./ows-signer.js";
5
- export { Wallet, PrivateKeySigner } from "./wallet.js";
6
- export { buildAuthHeaders, buildAuthHeadersWithSigner, computeEip712Hash, } from "./auth.js";
7
- export { signTransferAuthorization, combinedSignature, } from "./eip3009.js";
2
+ export { Wallet, discover } from "./wallet.js";
8
3
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAGzD,OAAO,EACL,QAAQ,EACR,kBAAkB,EAClB,eAAe,EACf,cAAc,EACd,yBAAyB,GAC1B,MAAM,aAAa,CAAC;AAarB,OAAO,EACL,SAAS,EACT,YAAY,EACZ,cAAc,EACd,YAAY,GACb,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAG5C,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAOvD,OAAO,EACL,gBAAgB,EAChB,0BAA0B,EAC1B,iBAAiB,GAClB,MAAM,WAAW,CAAC;AAGnB,OAAO,EACL,yBAAyB,EACzB,iBAAiB,GAClB,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EACR,kBAAkB,EAClB,eAAe,EACf,cAAc,EACd,yBAAyB,GAC1B,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * OS keychain reader — reads the private key stored by `pay` CLI.
3
+ * Service: "pay", account: "default".
4
+ *
5
+ * keytar is an optional dependency. If not installed, returns null.
6
+ */
7
+ export declare function readFromKeychain(): Promise<string | null>;
8
+ //# sourceMappingURL=keychain.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"keychain.d.ts","sourceRoot":"","sources":["../src/keychain.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAU/D"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * OS keychain reader — reads the private key stored by `pay` CLI.
3
+ * Service: "pay", account: "default".
4
+ *
5
+ * keytar is an optional dependency. If not installed, returns null.
6
+ */
7
+ export async function readFromKeychain() {
8
+ try {
9
+ const moduleName = "keytar";
10
+ const keytar = (await import(moduleName));
11
+ return await keytar.default.getPassword("pay", "default");
12
+ }
13
+ catch {
14
+ return null;
15
+ }
16
+ }
17
+ //# sourceMappingURL=keychain.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"keychain.js","sourceRoot":"","sources":["../src/keychain.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,MAAM,CAAC,KAAK,UAAU,gBAAgB;IACpC,IAAI,CAAC;QACH,MAAM,UAAU,GAAG,QAAQ,CAAC;QAC5B,MAAM,MAAM,GAAG,CAAC,MAAM,MAAM,CAAC,UAAU,CAAC,CAEvC,CAAC;QACF,OAAO,MAAM,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;IAC5D,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC"}