feat: add Lab RX feature with template management and auto-seed defaults

- New lab_rx_template table with sortOrder and Prisma migrations
- Backend CRUD + reorder routes at /api/lab-rx/templates
- Auto-seeds 3 Highland Dental Studio defaults on first use per user
- LabRxModal: template picker, inline rename, up/down reorder, full
  template form with sections (Template Name / Lab Info / Case Details)
- RX popup: Tooth Number, Shade, Due Date, Doctor (from NPI providers),
  Instructions pre-filled with "Please make / Thank you!", print output
- lab-rx-templates.ts config file for future git-managed additions

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-07-02 23:20:44 -04:00
co-authored by Claude Sonnet 4.6
parent ac4d8c4c74
commit abb2a0ac96
908 changed files with 4858 additions and 14271 deletions
@@ -1,39 +0,0 @@
/**
* Pure Variant Schemas
* Auto-generated - do not edit manually
*/
export { UserModelSchema } from './User.pure';
export { PatientModelSchema } from './Patient.pure';
export { AppointmentModelSchema } from './Appointment.pure';
export { AppointmentFileModelSchema } from './AppointmentFile.pure';
export { StaffModelSchema } from './Staff.pure';
export { NpiProviderModelSchema } from './NpiProvider.pure';
export { AppointmentProcedureModelSchema } from './AppointmentProcedure.pure';
export { ClaimModelSchema } from './Claim.pure';
export { ServiceLineModelSchema } from './ServiceLine.pure';
export { ClaimFileModelSchema } from './ClaimFile.pure';
export { InsuranceCredentialModelSchema } from './InsuranceCredential.pure';
export { ShoppingVendorModelSchema } from './ShoppingVendor.pure';
export { PdfGroupModelSchema } from './PdfGroup.pure';
export { PdfFileModelSchema } from './PdfFile.pure';
export { PaymentModelSchema } from './Payment.pure';
export { ServiceLineTransactionModelSchema } from './ServiceLineTransaction.pure';
export { DatabaseBackupModelSchema } from './DatabaseBackup.pure';
export { BackupDestinationModelSchema } from './BackupDestination.pure';
export { NotificationModelSchema } from './Notification.pure';
export { CronJobLogModelSchema } from './CronJobLog.pure';
export { CloudFolderModelSchema } from './CloudFolder.pure';
export { CloudFileModelSchema } from './CloudFile.pure';
export { CloudFileChunkModelSchema } from './CloudFileChunk.pure';
export { CommunicationModelSchema } from './Communication.pure';
export { PatientDocumentModelSchema } from './PatientDocument.pure';
export { TwilioSettingsModelSchema } from './TwilioSettings.pure';
export { AiSettingsModelSchema } from './AiSettings.pure';
export { OfficeHoursModelSchema } from './OfficeHours.pure';
export { OfficeContactModelSchema } from './OfficeContact.pure';
export { InsuranceContactModelSchema } from './InsuranceContact.pure';
export { ProcedureTimeslotModelSchema } from './ProcedureTimeslot.pure';
export { PatientConversationModelSchema } from './PatientConversation.pure';
export { CommissionBatchModelSchema } from './CommissionBatch.pure';
export { CommissionBatchItemModelSchema } from './CommissionBatchItem.pure';