UNPKG

@alexasomba/better-auth-paystack

Version:

Production-ready Paystack billing plugin for Better Auth. Supports subscriptions, one-time payments, organization billing, secure webhooks and more

129 lines (128 loc) 3.67 kB
import { l as parsePaystackMetadata, t as PACKAGE_VERSION } from "./version-B4mP7Bib.mjs"; //#region src/client.ts /** * Better Auth Paystack Client Plugin */ const paystackClient = (_options) => { return { id: "paystack", version: PACKAGE_VERSION, $InferServerPlugin: {}, pathMethods: { "/paystack/initialize-transaction": "POST", "/paystack/verify-transaction": "POST", "/paystack/disable-subscription": "POST", "/paystack/enable-subscription": "POST", "/paystack/create-subscription": "POST", "/paystack/upgrade-subscription": "POST", "/paystack/cancel-subscription": "POST", "/paystack/restore-subscription": "POST" }, getActions: ($fetch, _store, _options) => { const fetch = $fetch; const actions = { transaction: { initialize: (data, options) => fetch("/paystack/initialize-transaction", { method: "POST", body: data, ...options }), verify: (data, options) => fetch("/paystack/verify-transaction", { method: "POST", body: data, ...options }), list: (data, options) => fetch("/paystack/list-transactions", { method: "GET", query: data?.query, ...options }) }, subscription: { upgrade: (data, options) => fetch("/paystack/initialize-transaction", { method: "POST", body: data, ...options }), create: (data, options) => fetch("/paystack/initialize-transaction", { method: "POST", body: data, ...options }), cancel: (data, options) => fetch("/paystack/disable-subscription", { method: "POST", body: data, ...options }), restore: (data, options) => fetch("/paystack/enable-subscription", { method: "POST", body: data, ...options }), list: (data, options) => fetch("/paystack/list-subscriptions", { method: "GET", query: data?.query, ...options }), billingPortal: (data, options) => fetch("/paystack/subscription-manage-link", { method: "GET", query: data, ...options }), manageLink: (data, options) => fetch("/paystack/subscription-manage-link", { method: "GET", query: data, ...options }), disable: function(data, options) { return this.cancel(data, options); }, enable: function(data, options) { return this.restore(data, options); } }, initializeTransaction: (data, options) => fetch("/paystack/initialize-transaction", { method: "POST", body: data, ...options }), verifyTransaction: (data, options) => fetch("/paystack/verify-transaction", { method: "POST", body: data, ...options }), listTransactions: (data, options) => fetch("/paystack/list-transactions", { method: "GET", query: data?.query, ...options }), listSubscriptions: (data, options) => fetch("/paystack/list-subscriptions", { method: "GET", query: data?.query, ...options }), getSubscriptionManageLink: (data, options) => fetch("/paystack/subscription-manage-link", { method: "GET", query: data, ...options }), config: () => fetch("/paystack/config", { method: "GET" }), listProducts: (options) => fetch("/paystack/list-products", { method: "GET", ...options }), listPlans: (options) => fetch("/paystack/list-plans", { method: "GET", ...options }), paystack: {} }; actions.paystack = actions; return actions; } }; }; const paystack = paystackClient; //#endregion export { parsePaystackMetadata, paystack, paystackClient }; //# sourceMappingURL=client.mjs.map