@thorium-dev-group/x402-mcp-extension
Version:
X402-MCP Protocol Extension
44 lines • 1.44 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.buildPaymentRequiredRequest = buildPaymentRequiredRequest;
exports.buildPaymentRequiredResponse = buildPaymentRequiredResponse;
const schemas_1 = require("../schemas");
const PaymentError_1 = require("../errors/PaymentError");
const error_codes_1 = require("../error-codes");
function buildPaymentRequiredRequest(id, paymentRequirements, paymentId, requestId) {
const request = {
jsonrpc: '2.0',
id,
method: schemas_1.PaymentRequiredRequestSchema.shape.method.value,
params: {
...paymentRequirements,
x402Version: 1,
...(paymentId && { paymentId }),
...(requestId && { requestId }),
},
};
try {
schemas_1.PaymentRequiredRequestSchema.parse(request);
}
catch (error) {
throw new PaymentError_1.PaymentError(error_codes_1.ERROR_CODES.INVALID_REQUEST, error.message);
}
return request;
}
function buildPaymentRequiredResponse(id, payment) {
const response = {
jsonrpc: '2.0',
id,
result: {
payment,
},
};
try {
schemas_1.PaymentRequiredResponseSchema.parse(response);
}
catch (error) {
throw new PaymentError_1.PaymentError(error_codes_1.ERROR_CODES.INVALID_REQUEST, error.message);
}
return response;
}
//# sourceMappingURL=protocol.js.map