@thorium-dev-group/x402-mcp-extension
Version:
X402-MCP Protocol Extension
37 lines • 1.56 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.METADATA_KEY_MCP_RESOURCE = void 0;
exports.MCPResource = MCPResource;
exports.isMCPResource = isMCPResource;
exports.getMCPResourceOptions = getMCPResourceOptions;
exports.isPaymentRequired = isPaymentRequired;
exports.getPaymentOptions = getPaymentOptions;
require("reflect-metadata");
const registry_1 = require("./registry");
const PaymentOptions_1 = require("./PaymentOptions");
exports.METADATA_KEY_MCP_RESOURCE = 'x402_mcp_protocol:mcp_resource';
function MCPResource(options) {
return function (target, propertyKey) {
Reflect.defineMetadata(exports.METADATA_KEY_MCP_RESOURCE, options, target[propertyKey]);
(0, registry_1.registerHandler)({
target,
propertyKey,
resourceOptions: options,
});
};
}
function isMCPResource(target, propertyKey) {
const method = target[propertyKey];
return method ? Reflect.hasMetadata(exports.METADATA_KEY_MCP_RESOURCE, method) : false;
}
function getMCPResourceOptions(target, propertyKey) {
const method = target[propertyKey];
return method ? Reflect.getMetadata(exports.METADATA_KEY_MCP_RESOURCE, method) : undefined;
}
function isPaymentRequired(target, propertyKey) {
return (0, PaymentOptions_1.isPaymentRequired)(getMCPResourceOptions, target, propertyKey);
}
function getPaymentOptions(target, propertyKey) {
return (0, PaymentOptions_1.getPaymentOptions)(getMCPResourceOptions, target, propertyKey);
}
//# sourceMappingURL=mcpResource.js.map