UNPKG

@simpleapps-com/augur-api

Version:

TypeScript client library for Augur microservices API endpoints

78 lines 3.58 kB
import { z } from 'zod'; import { BaseResponseSchema, BaseGetParamsSchema } from '../../../core/schemas'; import { mysqlDatetimeSchema } from '../../../core/schema-utils'; // Item Wishlist Header Schema based on ItemWishlistHdr.json export const ItemWishlistHeaderSchema = z.object({ itemWishlistHdrUid: z.coerce.number(), usersId: z.coerce.number(), wishlistName: z.string().max(100), wishlistDescription: z.string().max(500).optional(), isPublic: z.string().max(1).optional(), shareCode: z.string().max(50).optional(), dateCreated: mysqlDatetimeSchema().optional(), dateLastModified: mysqlDatetimeSchema().optional(), createdBy: z.string().max(255).optional(), lastMaintainedBy: z.string().max(255).optional(), }); // Item Wishlist Line Schema based on ItemWishlistLine.json export const ItemWishlistLineSchema = z.object({ itemWishlistLineUid: z.coerce.number(), itemWishlistHdrUid: z.coerce.number(), invMastUid: z.coerce.number(), itemId: z.string().max(40), itemDesc: z.string().max(255).optional(), qtyDesired: z.coerce.number().optional(), priority: z.coerce.number().optional(), notes: z.string().max(1000).optional(), dateCreated: mysqlDatetimeSchema().optional(), dateLastModified: mysqlDatetimeSchema().optional(), createdBy: z.string().max(255).optional(), lastMaintainedBy: z.string().max(255).optional(), }); // Complete Wishlist with Lines Schema export const ItemWishlistDetailSchema = ItemWishlistHeaderSchema.extend({ lines: z.array(ItemWishlistLineSchema).optional(), }); // Create Wishlist Header Request Schema export const CreateItemWishlistHeaderRequestSchema = z.object({ wishlistName: z.string().max(100), wishlistDescription: z.string().max(500).optional(), isPublic: z.string().max(1).optional(), }); // Update Wishlist Header Request Schema export const UpdateItemWishlistHeaderRequestSchema = z.object({ wishlistName: z.string().max(100).optional(), wishlistDescription: z.string().max(500).optional(), isPublic: z.string().max(1).optional(), }); // Create Wishlist Line Request Schema export const CreateItemWishlistLineRequestSchema = z.object({ invMastUid: z.coerce.number(), qtyDesired: z.coerce.number().optional(), priority: z.coerce.number().optional(), notes: z.string().max(1000).optional(), }); // Update Wishlist Line Request Schema export const UpdateItemWishlistLineRequestSchema = z.object({ qtyDesired: z.coerce.number().optional(), priority: z.coerce.number().optional(), notes: z.string().max(1000).optional(), }); // Wishlist List Parameters Schema export const ItemWishlistListParamsSchema = BaseGetParamsSchema.extend({ isPublic: z.string().optional(), shareCode: z.string().optional(), orderBy: z.string().optional(), }); // Wishlist Line List Parameters Schema export const ItemWishlistLineListParamsSchema = BaseGetParamsSchema.extend({ priority: z.coerce.number().optional(), orderBy: z.string().optional(), }); // Response Schemas export const ItemWishlistHeaderResponseSchema = BaseResponseSchema(ItemWishlistHeaderSchema); export const ItemWishlistHeaderListResponseSchema = BaseResponseSchema(z.array(ItemWishlistHeaderSchema)); export const ItemWishlistLineResponseSchema = BaseResponseSchema(ItemWishlistLineSchema); export const ItemWishlistLineListResponseSchema = BaseResponseSchema(z.array(ItemWishlistLineSchema)); export const ItemWishlistDetailResponseSchema = BaseResponseSchema(ItemWishlistDetailSchema); //# sourceMappingURL=wishlists.js.map