UNPKG

@simpleapps-com/augur-api

Version:

TypeScript client library for Augur microservices API endpoints

85 lines 3.74 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.ContactUserDefinedFieldsResponseSchema = exports.ContactCustomersResponseSchema = exports.ContactResponseSchema = exports.ContactListResponseSchema = exports.ContactUserDefinedFieldsSchema = exports.ContactUserDefinedFieldSchema = exports.ContactCustomersParamsSchema = exports.ContactListParamsSchema = exports.ContactCreateParamsSchema = exports.ContactSchema = void 0; const zod_1 = require("zod"); const schemas_1 = require("../../../core/schemas"); // Contact schemas exports.ContactSchema = zod_1.z.object({ contactId: zod_1.z.number(), customerId: zod_1.z.number(), firstName: zod_1.z.string(), lastName: zod_1.z.string(), email: zod_1.z.string(), phoneNumber: zod_1.z.string().optional(), title: zod_1.z.string().optional(), role: zod_1.z.string().optional(), isPrimary: zod_1.z.boolean().optional(), webEnabled: zod_1.z.boolean().optional(), dateCreated: zod_1.z.string().optional(), dateLastModified: zod_1.z.string().optional(), loginCredentials: zod_1.z .object({ username: zod_1.z.string().optional(), lastLogin: zod_1.z.string().optional(), }) .optional(), permissions: zod_1.z .object({ canViewPricing: zod_1.z.boolean().optional(), canPlaceOrders: zod_1.z.boolean().optional(), canViewInvoices: zod_1.z.boolean().optional(), }) .optional(), }); exports.ContactCreateParamsSchema = zod_1.z.object({ firstName: zod_1.z.string().min(1), lastName: zod_1.z.string().min(1), email: zod_1.z.string().email(), phoneNumber: zod_1.z.string().optional(), title: zod_1.z.string().optional(), role: zod_1.z.string().optional(), isPrimary: zod_1.z.boolean().optional(), webEnabled: zod_1.z.boolean().optional(), permissions: zod_1.z .object({ canViewPricing: zod_1.z.boolean().optional(), canPlaceOrders: zod_1.z.boolean().optional(), canViewInvoices: zod_1.z.boolean().optional(), }) .optional(), }); exports.ContactListParamsSchema = schemas_1.BaseGetParamsSchema.extend({ q: zod_1.z.string(), limit: zod_1.z.coerce.number().optional(), offset: zod_1.z.coerce.number().optional(), }); exports.ContactCustomersParamsSchema = schemas_1.BaseGetParamsSchema.extend({ class5Id: zod_1.z.string().optional(), limit: zod_1.z.coerce.number().optional(), offset: zod_1.z.coerce.number().optional(), q: zod_1.z.string().optional(), }); // Contact user-defined fields schema exports.ContactUserDefinedFieldSchema = zod_1.z.object({ fieldName: zod_1.z.string(), fieldValue: zod_1.z.string(), fieldType: zod_1.z.string(), }); exports.ContactUserDefinedFieldsSchema = zod_1.z.object({ contactId: zod_1.z.number(), customFields: zod_1.z.array(exports.ContactUserDefinedFieldSchema), lastUpdated: zod_1.z.string(), }); // Response schemas using BaseResponseSchema (8-field format) exports.ContactListResponseSchema = (0, schemas_1.BaseResponseSchema)(zod_1.z.array(exports.ContactSchema)); exports.ContactResponseSchema = (0, schemas_1.BaseResponseSchema)(exports.ContactSchema); exports.ContactCustomersResponseSchema = (0, schemas_1.BaseResponseSchema)(zod_1.z.array(zod_1.z.object({ customerId: zod_1.z.number(), customerName: zod_1.z.string(), class5Id: zod_1.z.string().optional(), salesRepId: zod_1.z.string().optional(), territoryId: zod_1.z.string().optional(), lastOrderDate: zod_1.z.string().optional(), }))); exports.ContactUserDefinedFieldsResponseSchema = (0, schemas_1.BaseResponseSchema)(exports.ContactUserDefinedFieldsSchema); //# sourceMappingURL=contacts.js.map