@coursebuilder/core
Version:
Core package for Course Builder
46 lines (44 loc) • 1.6 kB
JavaScript
import {
productSchema
} from "./chunk-6HESVS2V.js";
import {
userSchema
} from "./chunk-K7QQ3LOH.js";
import {
couponSchema
} from "./chunk-U3NTIXIA.js";
import {
z
} from "./chunk-JLNB6NRA.js";
// src/schemas/purchase-schema.ts
var purchaseSchema = z.object({
id: z.string().max(191),
userId: z.string().max(191).optional().nullable(),
createdAt: z.date(),
totalAmount: z.coerce.number().refine((value) => {
const decimalPlaces = value.toString().split(".")[1]?.length || 0;
return decimalPlaces <= 2;
}),
ipAddress: z.string().max(191).optional().nullable(),
city: z.string().max(191).optional().nullable(),
state: z.string().max(191).optional().nullable(),
country: z.string().max(191).optional().nullable(),
couponId: z.string().max(191).optional().nullable(),
productId: z.string().max(191),
merchantChargeId: z.string().max(191).optional().nullable(),
upgradedFromId: z.string().max(191).optional().nullable(),
status: z.string().max(191).default("Valid"),
bulkCouponId: z.string().max(191).optional().nullable(),
merchantSessionId: z.string().max(191).optional().nullable(),
redeemedBulkCouponId: z.string().max(191).optional().nullable(),
fields: z.record(z.any()).default({}),
user: userSchema.optional().nullable(),
bulkCoupon: couponSchema.optional().nullable(),
product: productSchema.optional().nullable(),
purchasedByorganizationMembershipId: z.string().max(191).optional().nullable(),
organizationId: z.string().max(191).optional().nullable()
});
export {
purchaseSchema
};
//# sourceMappingURL=chunk-HO5SC2MW.js.map