x402z-server 0.1.3 → 0.1.4

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.
package/README.md CHANGED
@@ -78,6 +78,8 @@ server.listen(8080);
78
78
  - `routes`: map of `METHOD /path` to payment requirements
79
79
  - `routes["METHOD /path"].onRequest`: optional pre-payment hook; return a response to short-circuit
80
80
  - `routes["METHOD /path"].onPaid`: handler for successful payment (returns response body + optional headers)
81
+ - `onPaid` receives `{ paymentRequirements, settleHeaders, request }`
82
+ - `request` includes `method`, `path`, `url`, and normalized `headers`
81
83
 
82
84
  ## Examples
83
85
 
package/dist/index.d.mts CHANGED
@@ -63,6 +63,12 @@ type NoScheme = {
63
63
  type X402zRouteHandler = (args: {
64
64
  paymentRequirements: PaymentRequirements;
65
65
  settleHeaders: Record<string, string>;
66
+ request: {
67
+ method: string;
68
+ path: string;
69
+ url: string;
70
+ headers: Record<string, string>;
71
+ };
66
72
  }) => Promise<{
67
73
  status?: number;
68
74
  headers?: Record<string, string>;
package/dist/index.d.ts CHANGED
@@ -63,6 +63,12 @@ type NoScheme = {
63
63
  type X402zRouteHandler = (args: {
64
64
  paymentRequirements: PaymentRequirements;
65
65
  settleHeaders: Record<string, string>;
66
+ request: {
67
+ method: string;
68
+ path: string;
69
+ url: string;
70
+ headers: Record<string, string>;
71
+ };
66
72
  }) => Promise<{
67
73
  status?: number;
68
74
  headers?: Record<string, string>;
package/dist/index.js CHANGED
@@ -507,9 +507,20 @@ async function createX402zServer(config) {
507
507
  }
508
508
  return;
509
509
  }
510
+ const headers = {};
511
+ for (const [key, value] of Object.entries(req.headers)) {
512
+ if (value === void 0) continue;
513
+ headers[key.toLowerCase()] = Array.isArray(value) ? value.join(",") : value;
514
+ }
510
515
  const payload = await routeConfig.onPaid({
511
516
  paymentRequirements: result.paymentRequirements,
512
- settleHeaders
517
+ settleHeaders,
518
+ request: {
519
+ method,
520
+ path,
521
+ url: adapter.getUrl(),
522
+ headers
523
+ }
513
524
  });
514
525
  const status = payload.status ?? 200;
515
526
  const responseHeaders = {
package/dist/index.mjs CHANGED
@@ -471,9 +471,20 @@ async function createX402zServer(config) {
471
471
  }
472
472
  return;
473
473
  }
474
+ const headers = {};
475
+ for (const [key, value] of Object.entries(req.headers)) {
476
+ if (value === void 0) continue;
477
+ headers[key.toLowerCase()] = Array.isArray(value) ? value.join(",") : value;
478
+ }
474
479
  const payload = await routeConfig.onPaid({
475
480
  paymentRequirements: result.paymentRequirements,
476
- settleHeaders
481
+ settleHeaders,
482
+ request: {
483
+ method,
484
+ path,
485
+ url: adapter.getUrl(),
486
+ headers
487
+ }
477
488
  });
478
489
  const status = payload.status ?? 200;
479
490
  const responseHeaders = {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "x402z-server",
3
- "version": "0.1.3",
3
+ "version": "0.1.4",
4
4
  "main": "./dist/index.js",
5
5
  "module": "./dist/index.mjs",
6
6
  "types": "./dist/index.d.ts",