@peac/adapter-x402 0.12.12 → 0.12.14

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/dist/index.d.ts CHANGED
@@ -37,4 +37,6 @@ export type { ChallengeType } from './challenge.js';
37
37
  export { mapX402ToChallengeType } from './challenge.js';
38
38
  export { extractSettlementProofFromHeaders, fromX402SettlementObservation } from './settlement.js';
39
39
  export type { HeaderBag, SettlementProofSource, ExtractedSettlementProof, X402SettlementObservationInput, X402SettlementEvidence, X402SettlementOptions, } from './settlement.js';
40
+ export { computeX402TermsDigest, computeJsonDocumentDigestJcs, computeTextDocumentDigestUtf8, } from './terms.js';
41
+ export type { X402TermsRepresentation, DocumentRepresentation } from './terms.js';
40
42
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -14,7 +14,7 @@
14
14
  * @packageDocumentation
15
15
  */
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.fromX402SettlementObservation = exports.extractSettlementProofFromHeaders = exports.mapX402ToChallengeType = exports.X402CarrierAdapter = exports.fromSettlementResponseAsync = exports.fromSettlementResponse = exports.fromOfferResponseAsync = exports.fromOfferResponse = exports.extractReceiptArtifactFromHeaders = exports.X402_CARRIER_LIMITS = exports.toPeacCarrier = exports.toPeacRecordV2 = exports.toPeacRecord = exports.selectAccept = exports.matchAcceptTerms = exports.verifyOfferReceiptConsistency = exports.verifyReceiptWire = exports.verifyOfferWire = exports.verifyReceiptUnified = exports.verifyOfferUnified = exports.verifyReceiptV2 = exports.verifyOfferV2 = exports.verifyReceipt = exports.verifyOffer = exports.X402Error = exports.defaultAddressComparator = exports.MAX_AMOUNT_LENGTH = exports.MAX_TOTAL_ACCEPTS_BYTES = exports.MAX_ACCEPT_ENTRIES = exports.X402_OFFER_RECEIPT_PROFILE = exports.normalizeV2Receipt = exports.normalizeV2Offers = exports.normalizeV2Offer = exports.normalizeReceiptPayload = exports.normalizeOfferPayload = exports.detectX402VersionFromSource = exports.detectX402Version = exports.X402_V2_HEADERS = exports.extractReceiptFromHeaders = exports.extractExtensionInfo = exports.extractReceiptPayload = exports.extractOfferPayload = exports.parseCompactJWS = exports.X402_RECEIPT_HEADERS = exports.MAX_COMPACT_JWS_BYTES = exports.OFFER_RECEIPT = void 0;
17
+ exports.computeTextDocumentDigestUtf8 = exports.computeJsonDocumentDigestJcs = exports.computeX402TermsDigest = exports.fromX402SettlementObservation = exports.extractSettlementProofFromHeaders = exports.mapX402ToChallengeType = exports.X402CarrierAdapter = exports.fromSettlementResponseAsync = exports.fromSettlementResponse = exports.fromOfferResponseAsync = exports.fromOfferResponse = exports.extractReceiptArtifactFromHeaders = exports.X402_CARRIER_LIMITS = exports.toPeacCarrier = exports.toPeacRecordV2 = exports.toPeacRecord = exports.selectAccept = exports.matchAcceptTerms = exports.verifyOfferReceiptConsistency = exports.verifyReceiptWire = exports.verifyOfferWire = exports.verifyReceiptUnified = exports.verifyOfferUnified = exports.verifyReceiptV2 = exports.verifyOfferV2 = exports.verifyReceipt = exports.verifyOffer = exports.X402Error = exports.defaultAddressComparator = exports.MAX_AMOUNT_LENGTH = exports.MAX_TOTAL_ACCEPTS_BYTES = exports.MAX_ACCEPT_ENTRIES = exports.X402_OFFER_RECEIPT_PROFILE = exports.normalizeV2Receipt = exports.normalizeV2Offers = exports.normalizeV2Offer = exports.normalizeReceiptPayload = exports.normalizeOfferPayload = exports.detectX402VersionFromSource = exports.detectX402Version = exports.X402_V2_HEADERS = exports.extractReceiptFromHeaders = exports.extractExtensionInfo = exports.extractReceiptPayload = exports.extractOfferPayload = exports.parseCompactJWS = exports.X402_RECEIPT_HEADERS = exports.MAX_COMPACT_JWS_BYTES = exports.OFFER_RECEIPT = void 0;
18
18
  var raw_js_1 = require("./raw.js");
19
19
  Object.defineProperty(exports, "OFFER_RECEIPT", { enumerable: true, get: function () { return raw_js_1.OFFER_RECEIPT; } });
20
20
  Object.defineProperty(exports, "MAX_COMPACT_JWS_BYTES", { enumerable: true, get: function () { return raw_js_1.MAX_COMPACT_JWS_BYTES; } });
@@ -78,4 +78,11 @@ Object.defineProperty(exports, "mapX402ToChallengeType", { enumerable: true, get
78
78
  var settlement_js_1 = require("./settlement.js");
79
79
  Object.defineProperty(exports, "extractSettlementProofFromHeaders", { enumerable: true, get: function () { return settlement_js_1.extractSettlementProofFromHeaders; } });
80
80
  Object.defineProperty(exports, "fromX402SettlementObservation", { enumerable: true, get: function () { return settlement_js_1.fromX402SettlementObservation; } });
81
+ // x402 PR #1986 terms digest helpers (v0.12.14). Mapper-local convenience
82
+ // over @peac/protocol/document-binding; digest is NEVER stamped into the
83
+ // emitted record / envelope shape (verifier-report-only).
84
+ var terms_js_1 = require("./terms.js");
85
+ Object.defineProperty(exports, "computeX402TermsDigest", { enumerable: true, get: function () { return terms_js_1.computeX402TermsDigest; } });
86
+ Object.defineProperty(exports, "computeJsonDocumentDigestJcs", { enumerable: true, get: function () { return terms_js_1.computeJsonDocumentDigestJcs; } });
87
+ Object.defineProperty(exports, "computeTextDocumentDigestUtf8", { enumerable: true, get: function () { return terms_js_1.computeTextDocumentDigestUtf8; } });
81
88
  //# 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;;;;;;;;;;;;;GAaG;;;AAgBH,mCASkB;AARhB,uGAAA,aAAa,OAAA;AACb,+GAAA,qBAAqB,OAAA;AACrB,8GAAA,oBAAoB,OAAA;AACpB,yGAAA,eAAe,OAAA;AACf,6GAAA,mBAAmB,OAAA;AACnB,+GAAA,qBAAqB,OAAA;AACrB,8GAAA,oBAAoB,OAAA;AACpB,mHAAA,yBAAyB,OAAA;AAgB3B,yCAA8C;AAArC,4GAAA,eAAe,OAAA;AAIxB,2CAA8E;AAArE,+GAAA,iBAAiB,OAAA;AAAE,yHAAA,2BAA2B,OAAA;AAKvD,+CAAgF;AAAvE,qHAAA,qBAAqB,OAAA;AAAE,uHAAA,uBAAuB,OAAA;AAIvD,qDAA4F;AAAnF,mHAAA,gBAAgB,OAAA;AAAE,oHAAA,iBAAiB,OAAA;AAAE,qHAAA,kBAAkB,OAAA;AA+BhE,qCAAqC;AACrC,uCAMoB;AALlB,sHAAA,0BAA0B,OAAA;AAC1B,8GAAA,kBAAkB,OAAA;AAClB,mHAAA,uBAAuB,OAAA;AACvB,6GAAA,iBAAiB,OAAA;AACjB,oHAAA,wBAAwB,OAAA;AAM1B,SAAS;AACT,yCAAwC;AAA/B,sGAAA,SAAS,OAAA;AAGlB,eAAe;AACf,yCAYqB;AAXnB,wGAAA,WAAW,OAAA;AACX,0GAAA,aAAa,OAAA;AACb,0GAAA,aAAa,OAAA;AACb,4GAAA,eAAe,OAAA;AACf,+GAAA,kBAAkB,OAAA;AAClB,iHAAA,oBAAoB,OAAA;AACpB,4GAAA,eAAe,OAAA;AACf,8GAAA,iBAAiB,OAAA;AACjB,0HAAA,6BAA6B,OAAA;AAC7B,6GAAA,gBAAgB,OAAA;AAChB,yGAAA,YAAY,OAAA;AAId,UAAU;AACV,mCAAuE;AAA9D,sGAAA,YAAY,OAAA;AAAE,wGAAA,cAAc,OAAA;AAAE,uGAAA,aAAa,OAAA;AAepD,2CAQsB;AAPpB,iHAAA,mBAAmB,OAAA;AACnB,+HAAA,iCAAiC,OAAA;AACjC,+GAAA,iBAAiB,OAAA;AACjB,oHAAA,sBAAsB,OAAA;AACtB,oHAAA,sBAAsB,OAAA;AACtB,yHAAA,2BAA2B,OAAA;AAC3B,gHAAA,kBAAkB,OAAA;AAKpB,+CAAwD;AAA/C,sHAAA,sBAAsB,OAAA;AAE/B,uEAAuE;AACvE,iDAAmG;AAA1F,kIAAA,iCAAiC,OAAA;AAAE,8HAAA,6BAA6B,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;GAaG;;;AAgBH,mCASkB;AARhB,uGAAA,aAAa,OAAA;AACb,+GAAA,qBAAqB,OAAA;AACrB,8GAAA,oBAAoB,OAAA;AACpB,yGAAA,eAAe,OAAA;AACf,6GAAA,mBAAmB,OAAA;AACnB,+GAAA,qBAAqB,OAAA;AACrB,8GAAA,oBAAoB,OAAA;AACpB,mHAAA,yBAAyB,OAAA;AAgB3B,yCAA8C;AAArC,4GAAA,eAAe,OAAA;AAIxB,2CAA8E;AAArE,+GAAA,iBAAiB,OAAA;AAAE,yHAAA,2BAA2B,OAAA;AAKvD,+CAAgF;AAAvE,qHAAA,qBAAqB,OAAA;AAAE,uHAAA,uBAAuB,OAAA;AAIvD,qDAA4F;AAAnF,mHAAA,gBAAgB,OAAA;AAAE,oHAAA,iBAAiB,OAAA;AAAE,qHAAA,kBAAkB,OAAA;AA+BhE,qCAAqC;AACrC,uCAMoB;AALlB,sHAAA,0BAA0B,OAAA;AAC1B,8GAAA,kBAAkB,OAAA;AAClB,mHAAA,uBAAuB,OAAA;AACvB,6GAAA,iBAAiB,OAAA;AACjB,oHAAA,wBAAwB,OAAA;AAM1B,SAAS;AACT,yCAAwC;AAA/B,sGAAA,SAAS,OAAA;AAGlB,eAAe;AACf,yCAYqB;AAXnB,wGAAA,WAAW,OAAA;AACX,0GAAA,aAAa,OAAA;AACb,0GAAA,aAAa,OAAA;AACb,4GAAA,eAAe,OAAA;AACf,+GAAA,kBAAkB,OAAA;AAClB,iHAAA,oBAAoB,OAAA;AACpB,4GAAA,eAAe,OAAA;AACf,8GAAA,iBAAiB,OAAA;AACjB,0HAAA,6BAA6B,OAAA;AAC7B,6GAAA,gBAAgB,OAAA;AAChB,yGAAA,YAAY,OAAA;AAId,UAAU;AACV,mCAAuE;AAA9D,sGAAA,YAAY,OAAA;AAAE,wGAAA,cAAc,OAAA;AAAE,uGAAA,aAAa,OAAA;AAepD,2CAQsB;AAPpB,iHAAA,mBAAmB,OAAA;AACnB,+HAAA,iCAAiC,OAAA;AACjC,+GAAA,iBAAiB,OAAA;AACjB,oHAAA,sBAAsB,OAAA;AACtB,oHAAA,sBAAsB,OAAA;AACtB,yHAAA,2BAA2B,OAAA;AAC3B,gHAAA,kBAAkB,OAAA;AAKpB,+CAAwD;AAA/C,sHAAA,sBAAsB,OAAA;AAE/B,uEAAuE;AACvE,iDAAmG;AAA1F,kIAAA,iCAAiC,OAAA;AAAE,8HAAA,6BAA6B,OAAA;AAUzE,0EAA0E;AAC1E,yEAAyE;AACzE,0DAA0D;AAC1D,uCAIoB;AAHlB,kHAAA,sBAAsB,OAAA;AACtB,wHAAA,4BAA4B,OAAA;AAC5B,yHAAA,6BAA6B,OAAA"}
@@ -0,0 +1,55 @@
1
+ /**
2
+ * x402 PR #1986 `terms` digest helpers (Layer 4).
3
+ *
4
+ * Mapper-local conveniences for callers that want to bind a server's
5
+ * advertised x402 `terms` representation into a verifier-side
6
+ * `bindings.terms` result. Computes the digest of a single
7
+ * representation envelope (uri / markdown / plaintext / json) using the
8
+ * canonical helpers in `@peac/protocol/document-binding`.
9
+ *
10
+ * Cross-representation comparison is `'failed'` by design; each
11
+ * representation envelope is its own binding identity. Publishers that
12
+ * commit to a single canonical JSON form may also supply a separate
13
+ * `canonical_digest` (computed via `computeJsonDocumentDigestJcs`) for
14
+ * cross-representation equivalence; see `docs/specs/DOCUMENT-BINDING.md`.
15
+ *
16
+ * v0.12.14: digests computed here are NEVER stamped into the emitted
17
+ * record / envelope shape. Callers thread results through verifyLocal's
18
+ * `bindings.terms` option for verifier-report surfacing only.
19
+ */
20
+ import { computeJsonDocumentDigestJcs, computeTextDocumentDigestUtf8, type DocumentRepresentation } from '@peac/protocol';
21
+ import type { JsonValue } from '@peac/kernel';
22
+ /**
23
+ * Single x402 `terms` representation envelope. Matches the four formats
24
+ * defined in x402 PR #1986: `uri`, `markdown`, `plaintext`, `json`.
25
+ *
26
+ * For `uri`, callers MUST supply the fetched bytes if they want a
27
+ * binding digest (PEAC does not perform network I/O from this layer).
28
+ * Without bytes, `computeX402TermsDigest` returns `'unavailable'`.
29
+ */
30
+ export type X402TermsRepresentation = {
31
+ representation: 'json';
32
+ value: JsonValue;
33
+ } | {
34
+ representation: 'markdown';
35
+ bytes: string;
36
+ } | {
37
+ representation: 'plaintext';
38
+ bytes: string;
39
+ } | {
40
+ representation: 'uri';
41
+ uri: string;
42
+ bytes?: string;
43
+ };
44
+ /**
45
+ * Compute the binding digest for a single x402 `terms` representation
46
+ * envelope. Returns the canonical PEAC self-describing hash format
47
+ * `'sha256:<64 lowercase hex>'`, or `'unavailable'` for a `uri`
48
+ * representation supplied without bytes.
49
+ *
50
+ * Thin convenience over `computeDocumentDigest` from `@peac/protocol`;
51
+ * digest output is byte-identical.
52
+ */
53
+ export declare function computeX402TermsDigest(terms: X402TermsRepresentation): Promise<string | 'unavailable'>;
54
+ export { computeJsonDocumentDigestJcs, computeTextDocumentDigestUtf8, type DocumentRepresentation };
55
+ //# sourceMappingURL=terms.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"terms.d.ts","sourceRoot":"","sources":["../src/terms.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,EACL,4BAA4B,EAC5B,6BAA6B,EAE7B,KAAK,sBAAsB,EAC5B,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAE9C;;;;;;;GAOG;AACH,MAAM,MAAM,uBAAuB,GAC/B;IAAE,cAAc,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,SAAS,CAAA;CAAE,GAC5C;IAAE,cAAc,EAAE,UAAU,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAC7C;IAAE,cAAc,EAAE,WAAW,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAC9C;IAAE,cAAc,EAAE,KAAK,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAE3D;;;;;;;;GAQG;AACH,wBAAsB,sBAAsB,CAC1C,KAAK,EAAE,uBAAuB,GAC7B,OAAO,CAAC,MAAM,GAAG,aAAa,CAAC,CAEjC;AAED,OAAO,EAAE,4BAA4B,EAAE,6BAA6B,EAAE,KAAK,sBAAsB,EAAE,CAAC"}
package/dist/terms.js ADDED
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+ /**
3
+ * x402 PR #1986 `terms` digest helpers (Layer 4).
4
+ *
5
+ * Mapper-local conveniences for callers that want to bind a server's
6
+ * advertised x402 `terms` representation into a verifier-side
7
+ * `bindings.terms` result. Computes the digest of a single
8
+ * representation envelope (uri / markdown / plaintext / json) using the
9
+ * canonical helpers in `@peac/protocol/document-binding`.
10
+ *
11
+ * Cross-representation comparison is `'failed'` by design; each
12
+ * representation envelope is its own binding identity. Publishers that
13
+ * commit to a single canonical JSON form may also supply a separate
14
+ * `canonical_digest` (computed via `computeJsonDocumentDigestJcs`) for
15
+ * cross-representation equivalence; see `docs/specs/DOCUMENT-BINDING.md`.
16
+ *
17
+ * v0.12.14: digests computed here are NEVER stamped into the emitted
18
+ * record / envelope shape. Callers thread results through verifyLocal's
19
+ * `bindings.terms` option for verifier-report surfacing only.
20
+ */
21
+ Object.defineProperty(exports, "__esModule", { value: true });
22
+ exports.computeTextDocumentDigestUtf8 = exports.computeJsonDocumentDigestJcs = void 0;
23
+ exports.computeX402TermsDigest = computeX402TermsDigest;
24
+ const protocol_1 = require("@peac/protocol");
25
+ Object.defineProperty(exports, "computeJsonDocumentDigestJcs", { enumerable: true, get: function () { return protocol_1.computeJsonDocumentDigestJcs; } });
26
+ Object.defineProperty(exports, "computeTextDocumentDigestUtf8", { enumerable: true, get: function () { return protocol_1.computeTextDocumentDigestUtf8; } });
27
+ /**
28
+ * Compute the binding digest for a single x402 `terms` representation
29
+ * envelope. Returns the canonical PEAC self-describing hash format
30
+ * `'sha256:<64 lowercase hex>'`, or `'unavailable'` for a `uri`
31
+ * representation supplied without bytes.
32
+ *
33
+ * Thin convenience over `computeDocumentDigest` from `@peac/protocol`;
34
+ * digest output is byte-identical.
35
+ */
36
+ async function computeX402TermsDigest(terms) {
37
+ return (0, protocol_1.computeDocumentDigest)(terms);
38
+ }
39
+ //# sourceMappingURL=terms.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"terms.js","sourceRoot":"","sources":["../src/terms.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;GAkBG;;;AAiCH,wDAIC;AAnCD,6CAKwB;AAgCf,6GApCP,uCAA4B,OAoCO;AAAE,8GAnCrC,wCAA6B,OAmCqC;AAfpE;;;;;;;;GAQG;AACI,KAAK,UAAU,sBAAsB,CAC1C,KAA8B;IAE9B,OAAO,IAAA,gCAAqB,EAAC,KAAK,CAAC,CAAC;AACtC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@peac/adapter-x402",
3
- "version": "0.12.12",
3
+ "version": "0.12.14",
4
4
  "description": "x402 offer/receipt verification, term-matching, and PEAC record mapping",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -19,10 +19,11 @@
19
19
  "access": "public"
20
20
  },
21
21
  "dependencies": {
22
- "@peac/adapter-core": "0.12.12",
23
- "@peac/kernel": "0.12.12",
24
- "@peac/crypto": "0.12.12",
25
- "@peac/schema": "0.12.12"
22
+ "@peac/adapter-core": "0.12.14",
23
+ "@peac/protocol": "0.12.14",
24
+ "@peac/kernel": "0.12.14",
25
+ "@peac/schema": "0.12.14",
26
+ "@peac/crypto": "0.12.14"
26
27
  },
27
28
  "devDependencies": {
28
29
  "@types/node": "^22.19.11",