UNPKG

@paykit-sdk/core

Version:

The Payment Toolkit for Typescript

56 lines (52 loc) 1.3 kB
'use strict'; var zod = require('zod'); // src/provider-schema.ts var PAYKIT_PROVIDER_METHODS = [ "createCheckout", "retrieveCheckout", "updateCheckout", "deleteCheckout", "createCustomer", "updateCustomer", "retrieveCustomer", "deleteCustomer", "createSubscription", "updateSubscription", "cancelSubscription", "deleteSubscription", "retrieveSubscription", "createPayment", "updatePayment", "retrievePayment", "deletePayment", "capturePayment", "cancelPayment", "createRefund", "handleWebhook" ]; var providerSchema = zod.z.custom( (val) => { if (!val || typeof val !== "object") return false; const provider = val; if (typeof provider.providerName !== "string") return false; return PAYKIT_PROVIDER_METHODS.every( (method) => typeof provider[method] === "function" ); }, { message: "Invalid PayKit provider: Missing implementation for required methods." } ); var payKitAdapterMetadataSchema = zod.z.object({ /** * The name of the adapter */ name: zod.z.string(), /** * The version of the adapter */ version: zod.z.string() }); exports.PAYKIT_PROVIDER_METHODS = PAYKIT_PROVIDER_METHODS; exports.payKitAdapterMetadataSchema = payKitAdapterMetadataSchema; exports.providerSchema = providerSchema;