UNPKG

@simpleapps-com/augur-api

Version:

TypeScript client library for Augur microservices API endpoints

54 lines 2.23 kB
import { z } from 'zod'; import { BaseResponseSchema, BaseGetParamsSchema } from '../../../core/schemas'; import { mysqlDatetimeSchema } from '../../../core/schema-utils'; // Item FAQ Schema based on InvMastFaq.json export const ItemFaqSchema = z.object({ invMastFaqUid: z.coerce.number(), invMastUid: z.coerce.number(), question: z.string().max(500), answer: z.string().max(2000), category: z.string().max(100).optional(), displayOrder: z.coerce.number().optional(), isActive: z.string().max(1).optional(), isPublic: z.string().max(1).optional(), viewCount: z.coerce.number().optional(), helpfulCount: z.coerce.number().optional(), dateCreated: mysqlDatetimeSchema().optional(), dateLastModified: mysqlDatetimeSchema().optional(), createdBy: z.string().max(255).optional(), lastMaintainedBy: z.string().max(255).optional(), }); // Create FAQ Request Schema export const CreateItemFaqRequestSchema = z.object({ question: z.string().max(500), answer: z.string().max(2000), category: z.string().max(100).optional(), displayOrder: z.coerce.number().optional(), isActive: z.string().max(1).optional(), isPublic: z.string().max(1).optional(), }); // Update FAQ Request Schema export const UpdateItemFaqRequestSchema = z.object({ question: z.string().max(500).optional(), answer: z.string().max(2000).optional(), category: z.string().max(100).optional(), displayOrder: z.coerce.number().optional(), isActive: z.string().max(1).optional(), isPublic: z.string().max(1).optional(), }); // FAQ List Parameters Schema export const ItemFaqListParamsSchema = BaseGetParamsSchema.extend({ category: z.string().optional(), isActive: z.string().optional(), isPublic: z.string().optional(), q: z.string().optional(), // Search in questions and answers orderBy: z.string().optional(), }); // FAQ Vote Request Schema (for helpful voting) export const ItemFaqVoteRequestSchema = z.object({ isHelpful: z.boolean(), }); // Response Schemas export const ItemFaqResponseSchema = BaseResponseSchema(ItemFaqSchema); export const ItemFaqListResponseSchema = BaseResponseSchema(z.array(ItemFaqSchema)); //# sourceMappingURL=faq.js.map