Files
DentalManagementMH06/packages/db/shared/schemas/results/UserFindManyResult.schema.ts
ff 8cab823d60 feat: share patients across all users
Removed per-user patient filtering so all staff accounts see the same
patient pool. Previously each user only saw patients they created.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-17 23:04:26 -04:00

39 lines
1.3 KiB
TypeScript

import * as z from 'zod';
export const UserFindManyResultSchema = z.object({
data: z.array(z.object({
id: z.number().int(),
username: z.string(),
password: z.string(),
autoBackupEnabled: z.boolean(),
usbBackupEnabled: z.boolean(),
patients: z.array(z.unknown()),
appointments: z.array(z.unknown()),
staff: z.array(z.unknown()),
npiProviders: z.array(z.unknown()),
claims: z.array(z.unknown()),
insuranceCredentials: z.array(z.unknown()),
shoppingVendors: z.array(z.unknown()),
updatedPayments: z.array(z.unknown()),
backups: z.array(z.unknown()),
backupDestinations: z.array(z.unknown()),
notifications: z.array(z.unknown()),
cloudFolders: z.array(z.unknown()),
cloudFiles: z.array(z.unknown()),
communications: z.array(z.unknown()),
twilioSettings: z.unknown().optional(),
aiSettings: z.unknown().optional(),
officeHours: z.unknown().optional(),
officeContact: z.unknown().optional(),
procedureTimeslot: z.unknown().optional(),
insuranceContacts: z.array(z.unknown()),
patientConversations: z.array(z.unknown())
})),
pagination: z.object({
page: z.number().int().min(1),
pageSize: z.number().int().min(1),
total: z.number().int().min(0),
totalPages: z.number().int().min(0),
hasNext: z.boolean(),
hasPrev: z.boolean()
})
});