Twilio now handles only the in-browser dial pad (Access Token + browser-Device outbound TwiML); Telnyx takes over SMS, inbound voicemail, the AI voice conversation loop, and staff-triggered outbound calls via TeXML. Adds TelnyxSettings model, Communication.provider discriminator, new comms/routes modules, and a real Telnyx Settings page. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
31 lines
3.6 KiB
TypeScript
31 lines
3.6 KiB
TypeScript
import * as z from 'zod';
|
|
import type { Prisma } from '../../../generated/prisma';
|
|
import { IntFieldUpdateOperationsInputObjectSchema as IntFieldUpdateOperationsInputObjectSchema } from './IntFieldUpdateOperationsInput.schema';
|
|
import { NullableIntFieldUpdateOperationsInputObjectSchema as NullableIntFieldUpdateOperationsInputObjectSchema } from './NullableIntFieldUpdateOperationsInput.schema';
|
|
import { CommunicationChannelSchema } from '../enums/CommunicationChannel.schema';
|
|
import { EnumCommunicationChannelFieldUpdateOperationsInputObjectSchema as EnumCommunicationChannelFieldUpdateOperationsInputObjectSchema } from './EnumCommunicationChannelFieldUpdateOperationsInput.schema';
|
|
import { CommunicationDirectionSchema } from '../enums/CommunicationDirection.schema';
|
|
import { EnumCommunicationDirectionFieldUpdateOperationsInputObjectSchema as EnumCommunicationDirectionFieldUpdateOperationsInputObjectSchema } from './EnumCommunicationDirectionFieldUpdateOperationsInput.schema';
|
|
import { CommunicationStatusSchema } from '../enums/CommunicationStatus.schema';
|
|
import { EnumCommunicationStatusFieldUpdateOperationsInputObjectSchema as EnumCommunicationStatusFieldUpdateOperationsInputObjectSchema } from './EnumCommunicationStatusFieldUpdateOperationsInput.schema';
|
|
import { CommunicationProviderSchema } from '../enums/CommunicationProvider.schema';
|
|
import { EnumCommunicationProviderFieldUpdateOperationsInputObjectSchema as EnumCommunicationProviderFieldUpdateOperationsInputObjectSchema } from './EnumCommunicationProviderFieldUpdateOperationsInput.schema';
|
|
import { NullableStringFieldUpdateOperationsInputObjectSchema as NullableStringFieldUpdateOperationsInputObjectSchema } from './NullableStringFieldUpdateOperationsInput.schema';
|
|
import { DateTimeFieldUpdateOperationsInputObjectSchema as DateTimeFieldUpdateOperationsInputObjectSchema } from './DateTimeFieldUpdateOperationsInput.schema'
|
|
|
|
const makeSchema = () => z.object({
|
|
id: z.union([z.number().int(), z.lazy(() => IntFieldUpdateOperationsInputObjectSchema)]).optional(),
|
|
patientId: z.union([z.number().int(), z.lazy(() => IntFieldUpdateOperationsInputObjectSchema)]).optional(),
|
|
userId: z.union([z.number().int(), z.lazy(() => NullableIntFieldUpdateOperationsInputObjectSchema)]).optional().nullable(),
|
|
channel: z.union([CommunicationChannelSchema, z.lazy(() => EnumCommunicationChannelFieldUpdateOperationsInputObjectSchema)]).optional(),
|
|
direction: z.union([CommunicationDirectionSchema, z.lazy(() => EnumCommunicationDirectionFieldUpdateOperationsInputObjectSchema)]).optional(),
|
|
status: z.union([CommunicationStatusSchema, z.lazy(() => EnumCommunicationStatusFieldUpdateOperationsInputObjectSchema)]).optional(),
|
|
provider: z.union([CommunicationProviderSchema, z.lazy(() => EnumCommunicationProviderFieldUpdateOperationsInputObjectSchema)]).optional(),
|
|
body: z.union([z.string(), z.lazy(() => NullableStringFieldUpdateOperationsInputObjectSchema)]).optional().nullable(),
|
|
callDuration: z.union([z.number().int(), z.lazy(() => NullableIntFieldUpdateOperationsInputObjectSchema)]).optional().nullable(),
|
|
twilioSid: z.union([z.string(), z.lazy(() => NullableStringFieldUpdateOperationsInputObjectSchema)]).optional().nullable(),
|
|
createdAt: z.union([z.coerce.date(), z.lazy(() => DateTimeFieldUpdateOperationsInputObjectSchema)]).optional()
|
|
}).strict();
|
|
export const CommunicationUncheckedUpdateManyInputObjectSchema: z.ZodType<Prisma.CommunicationUncheckedUpdateManyInput> = makeSchema() as unknown as z.ZodType<Prisma.CommunicationUncheckedUpdateManyInput>;
|
|
export const CommunicationUncheckedUpdateManyInputObjectZodSchema = makeSchema();
|