autumn-js
Version:
Autumn JS Library
161 lines (158 loc) • 3.46 kB
JavaScript
import {
withAuth
} from "./chunk-UJBSJTAV.mjs";
import {
BASE_PATH
} from "./chunk-KSG3E4Q2.mjs";
// src/libraries/backend/routes/genRoutes.ts
import { addRoute } from "rou3";
var sanitizeBody = (body) => {
const bodyCopy = { ...body };
delete bodyCopy.customer_id;
delete bodyCopy.customer_data;
return bodyCopy;
};
var checkoutHandler = (options) => withAuth({
fn: async ({
autumn,
customer_id,
customer_data,
body
}) => {
const result = await autumn.checkout({
...sanitizeBody(body),
customer_id,
customer_data
});
return result;
},
suppressLogs: options?.suppressLogs
});
var attachHandler = (options) => withAuth({
fn: async ({
autumn,
customer_id,
customer_data,
body
}) => {
console.log("Body: ", body);
console.log("Customer ID: ", customer_id);
return await autumn.attach({
...sanitizeBody(body),
customer_id,
customer_data
});
},
suppressLogs: options?.suppressLogs
});
var setupPaymentHandler = (options) => withAuth({
fn: async ({
autumn,
customer_id,
customer_data,
body
}) => {
return await autumn.setupPayment({
...sanitizeBody(body),
customer_id,
customer_data
});
},
suppressLogs: options?.suppressLogs
});
var cancelHandler = (options) => withAuth({
fn: async ({
autumn,
customer_id,
body
}) => {
return await autumn.cancel({
...sanitizeBody(body),
customer_id
});
},
suppressLogs: options?.suppressLogs
});
var checkHandler = (options) => withAuth({
fn: async ({
autumn,
customer_id,
customer_data,
body
}) => {
const result = await autumn.check({
...sanitizeBody(body),
customer_id,
customer_data
});
return result;
},
suppressLogs: options?.suppressLogs
});
var trackHandler = (options) => withAuth({
fn: async ({
autumn,
customer_id,
customer_data,
body
}) => {
return await autumn.track({
...sanitizeBody(body),
customer_id,
customer_data
});
},
suppressLogs: options?.suppressLogs
});
var openBillingPortalHandler = (options) => withAuth({
fn: async ({
autumn,
customer_id,
body
}) => {
return await autumn.customers.billingPortal(customer_id, body);
},
suppressLogs: options?.suppressLogs
});
var queryHandler = (options) => withAuth({
fn: async ({
autumn,
customer_id,
body
}) => {
return await autumn.query({
...sanitizeBody(body),
customer_id
});
},
suppressLogs: options?.suppressLogs
});
var addGenRoutes = (router, options) => {
addRoute(router, "POST", `${BASE_PATH}/checkout`, {
handler: checkoutHandler(options)
});
addRoute(router, "POST", `${BASE_PATH}/attach`, {
handler: attachHandler(options)
});
addRoute(router, "POST", `${BASE_PATH}/cancel`, {
handler: cancelHandler(options)
});
addRoute(router, "POST", `${BASE_PATH}/check`, {
handler: checkHandler(options)
});
addRoute(router, "POST", `${BASE_PATH}/track`, {
handler: trackHandler(options)
});
addRoute(router, "POST", `${BASE_PATH}/billing_portal`, {
handler: openBillingPortalHandler(options)
});
addRoute(router, "POST", `${BASE_PATH}/setup_payment`, {
handler: setupPaymentHandler(options)
});
addRoute(router, "POST", `${BASE_PATH}/query`, {
handler: queryHandler(options)
});
};
export {
addGenRoutes
};