feat: new customer object

This commit is contained in:
John Yeo
2026-02-13 15:50:07 +00:00
parent 79eb22c22f
commit d4099508de
79 changed files with 1630 additions and 944 deletions

View File

@@ -1,13 +1,17 @@
import { ApiBalanceV1Schema } from "@api/customers/cusFeatures/apiBalanceV1.js";
import { z } from "zod/v4";
import { ApiBalanceSchema } from "../customers/cusFeatures/apiBalance.js";
import { ApiSubscriptionV1Schema } from "../customers/cusPlans/apiSubscriptionV1.js";
import {
ApiPurchaseV0Schema,
ApiSubscriptionV1Schema,
} from "../customers/cusPlans/apiSubscriptionV1.js";
import { ApiInvoiceV1Schema } from "../others/apiInvoice/apiInvoiceV1.js";
import { ApiBaseEntitySchema } from "./apiBaseEntity.js";
// V2 base entity - uses V1 subscriptions (single array with status field)
export const BaseApiEntityV2Schema = ApiBaseEntitySchema.extend({
subscriptions: z.array(ApiSubscriptionV1Schema),
balances: z.record(z.string(), ApiBalanceSchema),
purchases: z.array(ApiPurchaseV0Schema),
balances: z.record(z.string(), ApiBalanceV1Schema),
});
export const ApiEntityExpandSchema = z.object({