@ritas-inc/sapb1commandapi-client
Version:
A stateless TypeScript client for SAP B1 Service Layer Command API with comprehensive error handling, type safety, and batch operations
35 lines (34 loc) • 1.2 kB
JavaScript
import { z } from 'zod';
import { APIResponseSchema } from './common.schema.js';
export const PlanProductSchema = z.object({
itemCode: z.string(),
quantity: z.number().positive().min(1)
});
export const PlanProductsArraySchema = z.array(PlanProductSchema);
export const PlanStatusSchema = z.enum([
'Draft',
'Generating',
'Generated',
'Releasing',
'Released',
'Completed',
'Canceling',
'Canceled'
]);
export const CreatePlanRequestSchema = z.object({
user: z.number().int().positive(),
products: PlanProductsArraySchema
});
export const CreatePlanDataResponseSchema = z.object({
planId: z.number().int().positive()
});
export const CreatePlanResponseSchema = APIResponseSchema(CreatePlanDataResponseSchema, z.any());
export const UpdatePlanStatusRequestSchema = z.object({
status: PlanStatusSchema
});
export const UpdatePlanStatusResponseSchema = APIResponseSchema(z.any(), z.any());
export const UpdatePlanProductsRequestSchema = z.object({
products: PlanProductsArraySchema
});
export const UpdatePlanProductsResponseSchema = APIResponseSchema(z.any(), z.any());
export const CancelPlanResponseSchema = APIResponseSchema(z.any(), z.any());