UNPKG

@coursebuilder/core

Version:

Core package for Course Builder

42 lines (41 loc) 1.37 kB
import { z } from "../../chunk-JLNB6NRA.js"; import { __name } from "../../chunk-VLQXSCFN.js"; // src/lib/pricing/build-stripe-checkout-path.ts import { isNil, omitBy } from "@coursebuilder/nodash"; var ParamsSchema = z.object({ productId: z.string().optional(), couponId: z.string().optional(), bulk: z.boolean(), quantity: z.number().default(1), userId: z.string().optional(), upgradeFromPurchaseId: z.string().optional(), cancelUrl: z.string().optional(), usedCouponId: z.string().optional(), errorRedirectUrl: z.string().optional(), organizationId: z.string().nullish() }).transform((params) => { return { ...params, bulk: Boolean(params.bulk).toString(), productId: params.productId || "", quantity: String(params.quantity), organizationId: params.organizationId || void 0 }; }); var buildStripeCheckoutPath = /* @__PURE__ */ __name((params) => { const result = ParamsSchema.safeParse(params); if (result.success) { const queryParams = omitBy(result.data, isNil); const queryParamString = new URLSearchParams(queryParams).toString(); return `/api/coursebuilder/checkout/stripe?${queryParamString}`; } return `/api/coursebuilder/checkout/stripe?productId=${params.productId}`; }, "buildStripeCheckoutPath"); export { buildStripeCheckoutPath }; //# sourceMappingURL=build-stripe-checkout-path.js.map