fix: allow claims without appointment + support post/core multi-tooth input

- Make appointmentId nullable/optional in Prisma Zod schema via @zod rich
  comment so claims can be submitted without an existing appointment
- Convert undefined appointmentId to null in all claim form handlers and
  the backend claim creation endpoint
- Add AI classifier rule for expanding one procedure across multiple
  comma-separated tooth numbers (e.g. "post/core on #23, 24, 25, 26")
- Add "post/core" (slash) alias to CDT lookup maps

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-06-28 22:57:24 -04:00
parent c9d08028a9
commit e1fe4862d5
1613 changed files with 59200 additions and 422 deletions

View File

@@ -0,0 +1,56 @@
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
var desc = Object.getOwnPropertyDescriptor(m, k);
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
desc = { enumerable: true, get: function() { return m[k]; } };
}
Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
o["default"] = v;
});
var __importStar = (this && this.__importStar) || (function () {
var ownKeys = function(o) {
ownKeys = Object.getOwnPropertyNames || function (o) {
var ar = [];
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
return ar;
};
return ownKeys(o);
};
return function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
__setModuleDefault(result, mod);
return result;
};
})();
Object.defineProperty(exports, "__esModule", { value: true });
exports.AiSettingsModelSchema = void 0;
const z = __importStar(require("zod"));
// prettier-ignore
exports.AiSettingsModelSchema = z.object({
id: z.number().int(),
userId: z.number().int(),
apiKey: z.string(),
aiEnabled: z.boolean(),
openAiKey: z.string(),
openAiEnabled: z.boolean(),
claudeAiKey: z.string(),
claudeAiEnabled: z.boolean(),
claudeAiModel: z.string(),
openAiModel: z.string(),
googleAiModel: z.string(),
dentalMgmtKey: z.string(),
dentalMgmtEnabled: z.boolean(),
afterHoursEnabled: z.boolean(),
openPhoneReply: z.boolean(),
user: z.unknown()
}).strict();

View File

@@ -47,14 +47,17 @@ exports.AppointmentModelSchema = z.object({
startTime: z.string(),
endTime: z.string(),
type: z.string(),
typeLocked: z.boolean(),
notes: z.string().nullable(),
procedureCodeNotes: z.string().nullable(),
status: z.string(),
movedByAi: z.boolean(),
createdAt: z.date(),
eligibilityStatus: PatientStatus_schema_1.PatientStatusSchema,
patient: z.unknown(),
user: z.unknown(),
staff: z.unknown().nullable(),
procedures: z.array(z.unknown()),
claims: z.array(z.unknown())
claims: z.array(z.unknown()),
files: z.array(z.unknown())
}).strict();

View File

@@ -0,0 +1,46 @@
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
var desc = Object.getOwnPropertyDescriptor(m, k);
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
desc = { enumerable: true, get: function() { return m[k]; } };
}
Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
o["default"] = v;
});
var __importStar = (this && this.__importStar) || (function () {
var ownKeys = function(o) {
ownKeys = Object.getOwnPropertyNames || function (o) {
var ar = [];
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
return ar;
};
return ownKeys(o);
};
return function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
__setModuleDefault(result, mod);
return result;
};
})();
Object.defineProperty(exports, "__esModule", { value: true });
exports.AppointmentFileModelSchema = void 0;
const z = __importStar(require("zod"));
// prettier-ignore
exports.AppointmentFileModelSchema = z.object({
id: z.number().int(),
appointmentId: z.number().int(),
filename: z.string(),
mimeType: z.string().nullable(),
filePath: z.string().nullable(),
appointment: z.unknown()
}).strict();

View File

@@ -41,7 +41,7 @@ const ClaimStatus_schema_1 = require("../../enums/ClaimStatus.schema");
exports.ClaimModelSchema = z.object({
id: z.number().int(),
patientId: z.number().int(),
appointmentId: z.number().int(),
appointmentId: z.number().int().int().nullable(),
userId: z.number().int(),
staffId: z.number().int(),
patientName: z.string(),
@@ -56,9 +56,10 @@ exports.ClaimModelSchema = z.object({
updatedAt: z.date(),
status: ClaimStatus_schema_1.ClaimStatusSchema,
claimNumber: z.string().nullable(),
preAuthNumber: z.string().nullable(),
npiProviderId: z.number().int().nullable(),
patient: z.unknown(),
appointment: z.unknown(),
appointment: z.unknown().nullable(),
user: z.unknown().nullable(),
staff: z.unknown().nullable(),
npiProvider: z.unknown().nullable(),

View File

@@ -5,7 +5,7 @@ import { ClaimStatusSchema } from '../../enums/ClaimStatus.schema';
export const ClaimModelSchema = z.object({
id: z.number().int(),
patientId: z.number().int(),
appointmentId: z.number().int().nullable(),
appointmentId: z.number().int().int().nullable(),
userId: z.number().int(),
staffId: z.number().int(),
patientName: z.string(),

View File

@@ -41,9 +41,11 @@ exports.CloudFolderModelSchema = z.object({
userId: z.number().int(),
name: z.string(),
parentId: z.number().int().nullable(),
patientId: z.number().int().nullable(),
parent: z.unknown().nullable(),
children: z.array(z.unknown()),
user: z.unknown(),
patient: z.unknown().nullable(),
files: z.array(z.unknown()),
createdAt: z.date(),
updatedAt: z.date()

View File

@@ -0,0 +1,48 @@
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
var desc = Object.getOwnPropertyDescriptor(m, k);
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
desc = { enumerable: true, get: function() { return m[k]; } };
}
Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
o["default"] = v;
});
var __importStar = (this && this.__importStar) || (function () {
var ownKeys = function(o) {
ownKeys = Object.getOwnPropertyNames || function (o) {
var ar = [];
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
return ar;
};
return ownKeys(o);
};
return function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
__setModuleDefault(result, mod);
return result;
};
})();
Object.defineProperty(exports, "__esModule", { value: true });
exports.CommissionBatchModelSchema = void 0;
const z = __importStar(require("zod"));
// prettier-ignore
exports.CommissionBatchModelSchema = z.object({
id: z.number().int(),
npiProviderId: z.number().int(),
totalCollection: z.number(),
commissionAmount: z.number(),
notes: z.string().nullable(),
createdAt: z.date(),
npiProvider: z.unknown(),
items: z.array(z.unknown())
}).strict();

View File

@@ -0,0 +1,46 @@
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
var desc = Object.getOwnPropertyDescriptor(m, k);
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
desc = { enumerable: true, get: function() { return m[k]; } };
}
Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
o["default"] = v;
});
var __importStar = (this && this.__importStar) || (function () {
var ownKeys = function(o) {
ownKeys = Object.getOwnPropertyNames || function (o) {
var ar = [];
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
return ar;
};
return ownKeys(o);
};
return function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
__setModuleDefault(result, mod);
return result;
};
})();
Object.defineProperty(exports, "__esModule", { value: true });
exports.CommissionBatchItemModelSchema = void 0;
const z = __importStar(require("zod"));
// prettier-ignore
exports.CommissionBatchItemModelSchema = z.object({
id: z.number().int(),
commissionBatchId: z.number().int(),
paymentId: z.number().int(),
collectionAmount: z.number(),
commissionBatch: z.unknown(),
payment: z.unknown()
}).strict();

View File

@@ -0,0 +1,46 @@
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
var desc = Object.getOwnPropertyDescriptor(m, k);
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
desc = { enumerable: true, get: function() { return m[k]; } };
}
Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
o["default"] = v;
});
var __importStar = (this && this.__importStar) || (function () {
var ownKeys = function(o) {
ownKeys = Object.getOwnPropertyNames || function (o) {
var ar = [];
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
return ar;
};
return ownKeys(o);
};
return function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
__setModuleDefault(result, mod);
return result;
};
})();
Object.defineProperty(exports, "__esModule", { value: true });
exports.InsuranceContactModelSchema = void 0;
const z = __importStar(require("zod"));
// prettier-ignore
exports.InsuranceContactModelSchema = z.object({
id: z.number().int(),
userId: z.number().int(),
name: z.string(),
phoneNumber: z.string().nullable(),
createdAt: z.date(),
user: z.unknown()
}).strict();

View File

@@ -41,8 +41,11 @@ exports.NpiProviderModelSchema = z.object({
userId: z.number().int(),
npiNumber: z.string(),
providerName: z.string(),
sortOrder: z.number().int(),
createdAt: z.date(),
user: z.unknown(),
claims: z.array(z.unknown()),
payments: z.array(z.unknown()),
commissionBatches: z.array(z.unknown()),
appointmentProcedures: z.array(z.unknown())
}).strict();

View File

@@ -0,0 +1,53 @@
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
var desc = Object.getOwnPropertyDescriptor(m, k);
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
desc = { enumerable: true, get: function() { return m[k]; } };
}
Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
o["default"] = v;
});
var __importStar = (this && this.__importStar) || (function () {
var ownKeys = function(o) {
ownKeys = Object.getOwnPropertyNames || function (o) {
var ar = [];
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
return ar;
};
return ownKeys(o);
};
return function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
__setModuleDefault(result, mod);
return result;
};
})();
Object.defineProperty(exports, "__esModule", { value: true });
exports.OfficeContactModelSchema = void 0;
const z = __importStar(require("zod"));
// prettier-ignore
exports.OfficeContactModelSchema = z.object({
id: z.number().int(),
userId: z.number().int(),
officeName: z.string().nullable(),
receptionistName: z.string().nullable(),
dentistName: z.string().nullable(),
phoneNumber: z.string().nullable(),
email: z.string().nullable(),
fax: z.string().nullable(),
streetAddress: z.string().nullable(),
city: z.string().nullable(),
state: z.string().nullable(),
zipCode: z.string().nullable(),
user: z.unknown()
}).strict();

View File

@@ -0,0 +1,44 @@
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
var desc = Object.getOwnPropertyDescriptor(m, k);
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
desc = { enumerable: true, get: function() { return m[k]; } };
}
Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
o["default"] = v;
});
var __importStar = (this && this.__importStar) || (function () {
var ownKeys = function(o) {
ownKeys = Object.getOwnPropertyNames || function (o) {
var ar = [];
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
return ar;
};
return ownKeys(o);
};
return function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
__setModuleDefault(result, mod);
return result;
};
})();
Object.defineProperty(exports, "__esModule", { value: true });
exports.OfficeHoursModelSchema = void 0;
const z = __importStar(require("zod"));
// prettier-ignore
exports.OfficeHoursModelSchema = z.object({
id: z.number().int(),
userId: z.number().int(),
data: z.unknown(),
user: z.unknown()
}).strict();

View File

@@ -54,9 +54,11 @@ exports.PatientModelSchema = z.object({
policyHolder: z.string().nullable(),
allergies: z.string().nullable(),
medicalConditions: z.string().nullable(),
preferredLanguage: z.string().nullable(),
status: PatientStatus_schema_1.PatientStatusSchema,
userId: z.number().int(),
createdAt: z.date(),
updatedAt: z.date(),
user: z.unknown(),
appointments: z.array(z.unknown()),
procedures: z.array(z.unknown()),
@@ -64,5 +66,7 @@ exports.PatientModelSchema = z.object({
groups: z.array(z.unknown()),
payment: z.array(z.unknown()),
communications: z.array(z.unknown()),
documents: z.array(z.unknown())
documents: z.array(z.unknown()),
conversation: z.unknown().nullable(),
cloudFolders: z.array(z.unknown())
}).strict();

View File

@@ -0,0 +1,48 @@
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
var desc = Object.getOwnPropertyDescriptor(m, k);
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
desc = { enumerable: true, get: function() { return m[k]; } };
}
Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
o["default"] = v;
});
var __importStar = (this && this.__importStar) || (function () {
var ownKeys = function(o) {
ownKeys = Object.getOwnPropertyNames || function (o) {
var ar = [];
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
return ar;
};
return ownKeys(o);
};
return function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
__setModuleDefault(result, mod);
return result;
};
})();
Object.defineProperty(exports, "__esModule", { value: true });
exports.PatientConversationModelSchema = void 0;
const z = __importStar(require("zod"));
// prettier-ignore
exports.PatientConversationModelSchema = z.object({
id: z.number().int(),
patientId: z.number().int(),
userId: z.number().int(),
stage: z.string(),
aiHandoff: z.boolean(),
updatedAt: z.date(),
patient: z.unknown(),
user: z.unknown()
}).strict();

View File

@@ -43,10 +43,14 @@ exports.PaymentModelSchema = z.object({
patientId: z.number().int(),
userId: z.number().int(),
updatedById: z.number().int().nullable(),
npiProviderId: z.number().int().nullable(),
totalBilled: z.number(),
totalPaid: z.number(),
totalAdjusted: z.number(),
totalDue: z.number(),
mhPaidAmount: z.number().nullable(),
copayment: z.number(),
adjustment: z.number(),
status: PaymentStatus_schema_1.PaymentStatusSchema,
notes: z.string().nullable(),
icn: z.string().nullable(),
@@ -55,6 +59,8 @@ exports.PaymentModelSchema = z.object({
claim: z.unknown().nullable(),
patient: z.unknown(),
updatedBy: z.unknown().nullable(),
npiProvider: z.unknown().nullable(),
serviceLineTransactions: z.array(z.unknown()),
serviceLines: z.array(z.unknown())
serviceLines: z.array(z.unknown()),
commissionBatchItems: z.array(z.unknown())
}).strict();

View File

@@ -0,0 +1,44 @@
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
var desc = Object.getOwnPropertyDescriptor(m, k);
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
desc = { enumerable: true, get: function() { return m[k]; } };
}
Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
o["default"] = v;
});
var __importStar = (this && this.__importStar) || (function () {
var ownKeys = function(o) {
ownKeys = Object.getOwnPropertyNames || function (o) {
var ar = [];
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
return ar;
};
return ownKeys(o);
};
return function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
__setModuleDefault(result, mod);
return result;
};
})();
Object.defineProperty(exports, "__esModule", { value: true });
exports.ProcedureTimeslotModelSchema = void 0;
const z = __importStar(require("zod"));
// prettier-ignore
exports.ProcedureTimeslotModelSchema = z.object({
id: z.number().int(),
userId: z.number().int(),
data: z.unknown(),
user: z.unknown()
}).strict();

View File

@@ -47,6 +47,9 @@ exports.ServiceLineModelSchema = z.object({
arch: z.string().nullable(),
toothNumber: z.string().nullable(),
toothSurface: z.string().nullable(),
icn: z.string().nullable(),
paidCode: z.string().nullable(),
allowedAmount: z.number().nullable(),
totalBilled: z.number(),
totalPaid: z.number(),
totalAdjusted: z.number(),

View File

@@ -0,0 +1,47 @@
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
var desc = Object.getOwnPropertyDescriptor(m, k);
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
desc = { enumerable: true, get: function() { return m[k]; } };
}
Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
o["default"] = v;
});
var __importStar = (this && this.__importStar) || (function () {
var ownKeys = function(o) {
ownKeys = Object.getOwnPropertyNames || function (o) {
var ar = [];
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
return ar;
};
return ownKeys(o);
};
return function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
__setModuleDefault(result, mod);
return result;
};
})();
Object.defineProperty(exports, "__esModule", { value: true });
exports.ShoppingVendorModelSchema = void 0;
const z = __importStar(require("zod"));
// prettier-ignore
exports.ShoppingVendorModelSchema = z.object({
id: z.number().int(),
userId: z.number().int(),
vendorName: z.string(),
websiteUrl: z.string(),
loginUsername: z.string(),
loginPassword: z.string(),
user: z.unknown()
}).strict();

View File

@@ -0,0 +1,48 @@
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
var desc = Object.getOwnPropertyDescriptor(m, k);
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
desc = { enumerable: true, get: function() { return m[k]; } };
}
Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
o["default"] = v;
});
var __importStar = (this && this.__importStar) || (function () {
var ownKeys = function(o) {
ownKeys = Object.getOwnPropertyNames || function (o) {
var ar = [];
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
return ar;
};
return ownKeys(o);
};
return function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
__setModuleDefault(result, mod);
return result;
};
})();
Object.defineProperty(exports, "__esModule", { value: true });
exports.TwilioSettingsModelSchema = void 0;
const z = __importStar(require("zod"));
// prettier-ignore
exports.TwilioSettingsModelSchema = z.object({
id: z.number().int(),
userId: z.number().int(),
accountSid: z.string(),
authToken: z.string(),
phoneNumber: z.string(),
greetingMessage: z.string().nullable(),
templates: z.unknown().nullable(),
user: z.unknown()
}).strict();

View File

@@ -41,18 +41,31 @@ exports.UserModelSchema = z.object({
username: z.string(),
password: z.string(),
autoBackupEnabled: z.boolean(),
autoBackupHour: z.number().int(),
usbBackupEnabled: z.boolean(),
usbBackupHour: z.number().int(),
autoMhCheckEnabled: z.boolean(),
autoMhCheckDayOfWeek: z.number().int(),
autoMhCheckHour: z.number().int(),
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())
communications: z.array(z.unknown()),
twilioSettings: z.unknown().nullable(),
aiSettings: z.unknown().nullable(),
officeHours: z.unknown().nullable(),
officeContact: z.unknown().nullable(),
procedureTimeslot: z.unknown().nullable(),
insuranceContacts: z.array(z.unknown()),
patientConversations: z.array(z.unknown())
}).strict();

View File

@@ -4,13 +4,15 @@
* Auto-generated - do not edit manually
*/
Object.defineProperty(exports, "__esModule", { value: true });
exports.PatientDocumentModelSchema = exports.CommunicationModelSchema = exports.CloudFileChunkModelSchema = exports.CloudFileModelSchema = exports.CloudFolderModelSchema = exports.CronJobLogModelSchema = exports.NotificationModelSchema = exports.BackupDestinationModelSchema = exports.DatabaseBackupModelSchema = exports.ServiceLineTransactionModelSchema = exports.PaymentModelSchema = exports.PdfFileModelSchema = exports.PdfGroupModelSchema = exports.InsuranceCredentialModelSchema = exports.ClaimFileModelSchema = exports.ServiceLineModelSchema = exports.ClaimModelSchema = exports.AppointmentProcedureModelSchema = exports.NpiProviderModelSchema = exports.StaffModelSchema = exports.AppointmentModelSchema = exports.PatientModelSchema = exports.UserModelSchema = void 0;
exports.CommissionBatchItemModelSchema = exports.CommissionBatchModelSchema = exports.PatientConversationModelSchema = exports.ProcedureTimeslotModelSchema = exports.InsuranceContactModelSchema = exports.OfficeContactModelSchema = exports.OfficeHoursModelSchema = exports.AiSettingsModelSchema = exports.TwilioSettingsModelSchema = exports.PatientDocumentModelSchema = exports.CommunicationModelSchema = exports.CloudFileChunkModelSchema = exports.CloudFileModelSchema = exports.CloudFolderModelSchema = exports.CronJobLogModelSchema = exports.NotificationModelSchema = exports.BackupDestinationModelSchema = exports.DatabaseBackupModelSchema = exports.ServiceLineTransactionModelSchema = exports.PaymentModelSchema = exports.PdfFileModelSchema = exports.PdfGroupModelSchema = exports.ShoppingVendorModelSchema = exports.InsuranceCredentialModelSchema = exports.ClaimFileModelSchema = exports.ServiceLineModelSchema = exports.ClaimModelSchema = exports.AppointmentProcedureModelSchema = exports.NpiProviderModelSchema = exports.StaffModelSchema = exports.AppointmentFileModelSchema = exports.AppointmentModelSchema = exports.PatientModelSchema = exports.UserModelSchema = void 0;
var User_pure_1 = require("./User.pure");
Object.defineProperty(exports, "UserModelSchema", { enumerable: true, get: function () { return User_pure_1.UserModelSchema; } });
var Patient_pure_1 = require("./Patient.pure");
Object.defineProperty(exports, "PatientModelSchema", { enumerable: true, get: function () { return Patient_pure_1.PatientModelSchema; } });
var Appointment_pure_1 = require("./Appointment.pure");
Object.defineProperty(exports, "AppointmentModelSchema", { enumerable: true, get: function () { return Appointment_pure_1.AppointmentModelSchema; } });
var AppointmentFile_pure_1 = require("./AppointmentFile.pure");
Object.defineProperty(exports, "AppointmentFileModelSchema", { enumerable: true, get: function () { return AppointmentFile_pure_1.AppointmentFileModelSchema; } });
var Staff_pure_1 = require("./Staff.pure");
Object.defineProperty(exports, "StaffModelSchema", { enumerable: true, get: function () { return Staff_pure_1.StaffModelSchema; } });
var NpiProvider_pure_1 = require("./NpiProvider.pure");
@@ -25,6 +27,8 @@ var ClaimFile_pure_1 = require("./ClaimFile.pure");
Object.defineProperty(exports, "ClaimFileModelSchema", { enumerable: true, get: function () { return ClaimFile_pure_1.ClaimFileModelSchema; } });
var InsuranceCredential_pure_1 = require("./InsuranceCredential.pure");
Object.defineProperty(exports, "InsuranceCredentialModelSchema", { enumerable: true, get: function () { return InsuranceCredential_pure_1.InsuranceCredentialModelSchema; } });
var ShoppingVendor_pure_1 = require("./ShoppingVendor.pure");
Object.defineProperty(exports, "ShoppingVendorModelSchema", { enumerable: true, get: function () { return ShoppingVendor_pure_1.ShoppingVendorModelSchema; } });
var PdfGroup_pure_1 = require("./PdfGroup.pure");
Object.defineProperty(exports, "PdfGroupModelSchema", { enumerable: true, get: function () { return PdfGroup_pure_1.PdfGroupModelSchema; } });
var PdfFile_pure_1 = require("./PdfFile.pure");
@@ -51,3 +55,21 @@ var Communication_pure_1 = require("./Communication.pure");
Object.defineProperty(exports, "CommunicationModelSchema", { enumerable: true, get: function () { return Communication_pure_1.CommunicationModelSchema; } });
var PatientDocument_pure_1 = require("./PatientDocument.pure");
Object.defineProperty(exports, "PatientDocumentModelSchema", { enumerable: true, get: function () { return PatientDocument_pure_1.PatientDocumentModelSchema; } });
var TwilioSettings_pure_1 = require("./TwilioSettings.pure");
Object.defineProperty(exports, "TwilioSettingsModelSchema", { enumerable: true, get: function () { return TwilioSettings_pure_1.TwilioSettingsModelSchema; } });
var AiSettings_pure_1 = require("./AiSettings.pure");
Object.defineProperty(exports, "AiSettingsModelSchema", { enumerable: true, get: function () { return AiSettings_pure_1.AiSettingsModelSchema; } });
var OfficeHours_pure_1 = require("./OfficeHours.pure");
Object.defineProperty(exports, "OfficeHoursModelSchema", { enumerable: true, get: function () { return OfficeHours_pure_1.OfficeHoursModelSchema; } });
var OfficeContact_pure_1 = require("./OfficeContact.pure");
Object.defineProperty(exports, "OfficeContactModelSchema", { enumerable: true, get: function () { return OfficeContact_pure_1.OfficeContactModelSchema; } });
var InsuranceContact_pure_1 = require("./InsuranceContact.pure");
Object.defineProperty(exports, "InsuranceContactModelSchema", { enumerable: true, get: function () { return InsuranceContact_pure_1.InsuranceContactModelSchema; } });
var ProcedureTimeslot_pure_1 = require("./ProcedureTimeslot.pure");
Object.defineProperty(exports, "ProcedureTimeslotModelSchema", { enumerable: true, get: function () { return ProcedureTimeslot_pure_1.ProcedureTimeslotModelSchema; } });
var PatientConversation_pure_1 = require("./PatientConversation.pure");
Object.defineProperty(exports, "PatientConversationModelSchema", { enumerable: true, get: function () { return PatientConversation_pure_1.PatientConversationModelSchema; } });
var CommissionBatch_pure_1 = require("./CommissionBatch.pure");
Object.defineProperty(exports, "CommissionBatchModelSchema", { enumerable: true, get: function () { return CommissionBatch_pure_1.CommissionBatchModelSchema; } });
var CommissionBatchItem_pure_1 = require("./CommissionBatchItem.pure");
Object.defineProperty(exports, "CommissionBatchItemModelSchema", { enumerable: true, get: function () { return CommissionBatchItem_pure_1.CommissionBatchItemModelSchema; } });