feat: add AI Dental Shopping section with sidebar nav and Login Info page

- Add AI Dental Shopping to sidebar with Search/Tag and Login Info sub-pages
- Build full-stack Login Info CRUD: save vendor name, website, username, password per user
- Add ShoppingVendor Prisma model, run db push, regenerate client and Zod schemas
- Add storage layer, REST API at /api/shopping-vendors/, and frontend table with add/edit/delete modal

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Gitead
2026-05-17 00:35:38 -04:00
parent edec03e893
commit e34140c2b1
217 changed files with 4081 additions and 14 deletions

View File

@@ -1,7 +1,7 @@
{
"version": "1.0",
"generatorVersion": "1.0.0",
"generatedAt": "2026-05-16T03:17:00.434Z",
"generatedAt": "2026-05-17T04:25:11.522Z",
"outputPath": "/home/ee/Desktop/DentalManagementMH05/packages/db/shared",
"files": [
"schemas/enums/TransactionIsolationLevel.schema.ts",
@@ -16,6 +16,7 @@
"schemas/enums/ServiceLineScalarFieldEnum.schema.ts",
"schemas/enums/ClaimFileScalarFieldEnum.schema.ts",
"schemas/enums/InsuranceCredentialScalarFieldEnum.schema.ts",
"schemas/enums/ShoppingVendorScalarFieldEnum.schema.ts",
"schemas/enums/PdfGroupScalarFieldEnum.schema.ts",
"schemas/enums/PdfFileScalarFieldEnum.schema.ts",
"schemas/enums/PaymentScalarFieldEnum.schema.ts",
@@ -111,6 +112,11 @@
"schemas/objects/InsuranceCredentialWhereUniqueInput.schema.ts",
"schemas/objects/InsuranceCredentialOrderByWithAggregationInput.schema.ts",
"schemas/objects/InsuranceCredentialScalarWhereWithAggregatesInput.schema.ts",
"schemas/objects/ShoppingVendorWhereInput.schema.ts",
"schemas/objects/ShoppingVendorOrderByWithRelationInput.schema.ts",
"schemas/objects/ShoppingVendorWhereUniqueInput.schema.ts",
"schemas/objects/ShoppingVendorOrderByWithAggregationInput.schema.ts",
"schemas/objects/ShoppingVendorScalarWhereWithAggregatesInput.schema.ts",
"schemas/objects/PdfGroupWhereInput.schema.ts",
"schemas/objects/PdfGroupOrderByWithRelationInput.schema.ts",
"schemas/objects/PdfGroupWhereUniqueInput.schema.ts",
@@ -298,6 +304,13 @@
"schemas/objects/InsuranceCredentialCreateManyInput.schema.ts",
"schemas/objects/InsuranceCredentialUpdateManyMutationInput.schema.ts",
"schemas/objects/InsuranceCredentialUncheckedUpdateManyInput.schema.ts",
"schemas/objects/ShoppingVendorCreateInput.schema.ts",
"schemas/objects/ShoppingVendorUncheckedCreateInput.schema.ts",
"schemas/objects/ShoppingVendorUpdateInput.schema.ts",
"schemas/objects/ShoppingVendorUncheckedUpdateInput.schema.ts",
"schemas/objects/ShoppingVendorCreateManyInput.schema.ts",
"schemas/objects/ShoppingVendorUpdateManyMutationInput.schema.ts",
"schemas/objects/ShoppingVendorUncheckedUpdateManyInput.schema.ts",
"schemas/objects/PdfGroupCreateInput.schema.ts",
"schemas/objects/PdfGroupUncheckedCreateInput.schema.ts",
"schemas/objects/PdfGroupUpdateInput.schema.ts",
@@ -461,6 +474,7 @@
"schemas/objects/NpiProviderListRelationFilter.schema.ts",
"schemas/objects/ClaimListRelationFilter.schema.ts",
"schemas/objects/InsuranceCredentialListRelationFilter.schema.ts",
"schemas/objects/ShoppingVendorListRelationFilter.schema.ts",
"schemas/objects/PaymentListRelationFilter.schema.ts",
"schemas/objects/DatabaseBackupListRelationFilter.schema.ts",
"schemas/objects/BackupDestinationListRelationFilter.schema.ts",
@@ -481,6 +495,7 @@
"schemas/objects/NpiProviderOrderByRelationAggregateInput.schema.ts",
"schemas/objects/ClaimOrderByRelationAggregateInput.schema.ts",
"schemas/objects/InsuranceCredentialOrderByRelationAggregateInput.schema.ts",
"schemas/objects/ShoppingVendorOrderByRelationAggregateInput.schema.ts",
"schemas/objects/PaymentOrderByRelationAggregateInput.schema.ts",
"schemas/objects/DatabaseBackupOrderByRelationAggregateInput.schema.ts",
"schemas/objects/BackupDestinationOrderByRelationAggregateInput.schema.ts",
@@ -564,6 +579,7 @@
"schemas/objects/EnumMissingTeethStatusFilter.schema.ts",
"schemas/objects/JsonNullableFilter.schema.ts",
"schemas/objects/EnumClaimStatusFilter.schema.ts",
"schemas/objects/AppointmentNullableScalarRelationFilter.schema.ts",
"schemas/objects/ServiceLineListRelationFilter.schema.ts",
"schemas/objects/ClaimFileListRelationFilter.schema.ts",
"schemas/objects/PaymentNullableScalarRelationFilter.schema.ts",
@@ -601,6 +617,11 @@
"schemas/objects/InsuranceCredentialMaxOrderByAggregateInput.schema.ts",
"schemas/objects/InsuranceCredentialMinOrderByAggregateInput.schema.ts",
"schemas/objects/InsuranceCredentialSumOrderByAggregateInput.schema.ts",
"schemas/objects/ShoppingVendorCountOrderByAggregateInput.schema.ts",
"schemas/objects/ShoppingVendorAvgOrderByAggregateInput.schema.ts",
"schemas/objects/ShoppingVendorMaxOrderByAggregateInput.schema.ts",
"schemas/objects/ShoppingVendorMinOrderByAggregateInput.schema.ts",
"schemas/objects/ShoppingVendorSumOrderByAggregateInput.schema.ts",
"schemas/objects/EnumPdfTitleKeyFilter.schema.ts",
"schemas/objects/PdfFileListRelationFilter.schema.ts",
"schemas/objects/PdfFileOrderByRelationAggregateInput.schema.ts",
@@ -753,6 +774,7 @@
"schemas/objects/NpiProviderCreateNestedManyWithoutUserInput.schema.ts",
"schemas/objects/ClaimCreateNestedManyWithoutUserInput.schema.ts",
"schemas/objects/InsuranceCredentialCreateNestedManyWithoutUserInput.schema.ts",
"schemas/objects/ShoppingVendorCreateNestedManyWithoutUserInput.schema.ts",
"schemas/objects/PaymentCreateNestedManyWithoutUpdatedByInput.schema.ts",
"schemas/objects/DatabaseBackupCreateNestedManyWithoutUserInput.schema.ts",
"schemas/objects/BackupDestinationCreateNestedManyWithoutUserInput.schema.ts",
@@ -773,6 +795,7 @@
"schemas/objects/NpiProviderUncheckedCreateNestedManyWithoutUserInput.schema.ts",
"schemas/objects/ClaimUncheckedCreateNestedManyWithoutUserInput.schema.ts",
"schemas/objects/InsuranceCredentialUncheckedCreateNestedManyWithoutUserInput.schema.ts",
"schemas/objects/ShoppingVendorUncheckedCreateNestedManyWithoutUserInput.schema.ts",
"schemas/objects/PaymentUncheckedCreateNestedManyWithoutUpdatedByInput.schema.ts",
"schemas/objects/DatabaseBackupUncheckedCreateNestedManyWithoutUserInput.schema.ts",
"schemas/objects/BackupDestinationUncheckedCreateNestedManyWithoutUserInput.schema.ts",
@@ -795,6 +818,7 @@
"schemas/objects/NpiProviderUpdateManyWithoutUserNestedInput.schema.ts",
"schemas/objects/ClaimUpdateManyWithoutUserNestedInput.schema.ts",
"schemas/objects/InsuranceCredentialUpdateManyWithoutUserNestedInput.schema.ts",
"schemas/objects/ShoppingVendorUpdateManyWithoutUserNestedInput.schema.ts",
"schemas/objects/PaymentUpdateManyWithoutUpdatedByNestedInput.schema.ts",
"schemas/objects/DatabaseBackupUpdateManyWithoutUserNestedInput.schema.ts",
"schemas/objects/BackupDestinationUpdateManyWithoutUserNestedInput.schema.ts",
@@ -816,6 +840,7 @@
"schemas/objects/NpiProviderUncheckedUpdateManyWithoutUserNestedInput.schema.ts",
"schemas/objects/ClaimUncheckedUpdateManyWithoutUserNestedInput.schema.ts",
"schemas/objects/InsuranceCredentialUncheckedUpdateManyWithoutUserNestedInput.schema.ts",
"schemas/objects/ShoppingVendorUncheckedUpdateManyWithoutUserNestedInput.schema.ts",
"schemas/objects/PaymentUncheckedUpdateManyWithoutUpdatedByNestedInput.schema.ts",
"schemas/objects/DatabaseBackupUncheckedUpdateManyWithoutUserNestedInput.schema.ts",
"schemas/objects/BackupDestinationUncheckedUpdateManyWithoutUserNestedInput.schema.ts",
@@ -939,7 +964,7 @@
"schemas/objects/EnumMissingTeethStatusFieldUpdateOperationsInput.schema.ts",
"schemas/objects/EnumClaimStatusFieldUpdateOperationsInput.schema.ts",
"schemas/objects/PatientUpdateOneRequiredWithoutClaimsNestedInput.schema.ts",
"schemas/objects/AppointmentUpdateOneRequiredWithoutClaimsNestedInput.schema.ts",
"schemas/objects/AppointmentUpdateOneWithoutClaimsNestedInput.schema.ts",
"schemas/objects/UserUpdateOneWithoutClaimsNestedInput.schema.ts",
"schemas/objects/StaffUpdateOneWithoutClaimsNestedInput.schema.ts",
"schemas/objects/NpiProviderUpdateOneWithoutClaimsNestedInput.schema.ts",
@@ -963,6 +988,8 @@
"schemas/objects/ClaimUpdateOneRequiredWithoutClaimFilesNestedInput.schema.ts",
"schemas/objects/UserCreateNestedOneWithoutInsuranceCredentialsInput.schema.ts",
"schemas/objects/UserUpdateOneRequiredWithoutInsuranceCredentialsNestedInput.schema.ts",
"schemas/objects/UserCreateNestedOneWithoutShoppingVendorsInput.schema.ts",
"schemas/objects/UserUpdateOneRequiredWithoutShoppingVendorsNestedInput.schema.ts",
"schemas/objects/PatientCreateNestedOneWithoutGroupsInput.schema.ts",
"schemas/objects/PdfFileCreateNestedManyWithoutGroupInput.schema.ts",
"schemas/objects/PdfFileUncheckedCreateNestedManyWithoutGroupInput.schema.ts",
@@ -1138,6 +1165,10 @@
"schemas/objects/InsuranceCredentialUncheckedCreateWithoutUserInput.schema.ts",
"schemas/objects/InsuranceCredentialCreateOrConnectWithoutUserInput.schema.ts",
"schemas/objects/InsuranceCredentialCreateManyUserInputEnvelope.schema.ts",
"schemas/objects/ShoppingVendorCreateWithoutUserInput.schema.ts",
"schemas/objects/ShoppingVendorUncheckedCreateWithoutUserInput.schema.ts",
"schemas/objects/ShoppingVendorCreateOrConnectWithoutUserInput.schema.ts",
"schemas/objects/ShoppingVendorCreateManyUserInputEnvelope.schema.ts",
"schemas/objects/PaymentCreateWithoutUpdatedByInput.schema.ts",
"schemas/objects/PaymentUncheckedCreateWithoutUpdatedByInput.schema.ts",
"schemas/objects/PaymentCreateOrConnectWithoutUpdatedByInput.schema.ts",
@@ -1213,6 +1244,10 @@
"schemas/objects/InsuranceCredentialUpdateWithWhereUniqueWithoutUserInput.schema.ts",
"schemas/objects/InsuranceCredentialUpdateManyWithWhereWithoutUserInput.schema.ts",
"schemas/objects/InsuranceCredentialScalarWhereInput.schema.ts",
"schemas/objects/ShoppingVendorUpsertWithWhereUniqueWithoutUserInput.schema.ts",
"schemas/objects/ShoppingVendorUpdateWithWhereUniqueWithoutUserInput.schema.ts",
"schemas/objects/ShoppingVendorUpdateManyWithWhereWithoutUserInput.schema.ts",
"schemas/objects/ShoppingVendorScalarWhereInput.schema.ts",
"schemas/objects/PaymentUpsertWithWhereUniqueWithoutUpdatedByInput.schema.ts",
"schemas/objects/PaymentUpdateWithWhereUniqueWithoutUpdatedByInput.schema.ts",
"schemas/objects/PaymentUpdateManyWithWhereWithoutUpdatedByInput.schema.ts",
@@ -1557,6 +1592,13 @@
"schemas/objects/UserUpdateToOneWithWhereWithoutInsuranceCredentialsInput.schema.ts",
"schemas/objects/UserUpdateWithoutInsuranceCredentialsInput.schema.ts",
"schemas/objects/UserUncheckedUpdateWithoutInsuranceCredentialsInput.schema.ts",
"schemas/objects/UserCreateWithoutShoppingVendorsInput.schema.ts",
"schemas/objects/UserUncheckedCreateWithoutShoppingVendorsInput.schema.ts",
"schemas/objects/UserCreateOrConnectWithoutShoppingVendorsInput.schema.ts",
"schemas/objects/UserUpsertWithoutShoppingVendorsInput.schema.ts",
"schemas/objects/UserUpdateToOneWithWhereWithoutShoppingVendorsInput.schema.ts",
"schemas/objects/UserUpdateWithoutShoppingVendorsInput.schema.ts",
"schemas/objects/UserUncheckedUpdateWithoutShoppingVendorsInput.schema.ts",
"schemas/objects/PatientCreateWithoutGroupsInput.schema.ts",
"schemas/objects/PatientUncheckedCreateWithoutGroupsInput.schema.ts",
"schemas/objects/PatientCreateOrConnectWithoutGroupsInput.schema.ts",
@@ -1832,6 +1874,7 @@
"schemas/objects/NpiProviderCreateManyUserInput.schema.ts",
"schemas/objects/ClaimCreateManyUserInput.schema.ts",
"schemas/objects/InsuranceCredentialCreateManyUserInput.schema.ts",
"schemas/objects/ShoppingVendorCreateManyUserInput.schema.ts",
"schemas/objects/PaymentCreateManyUpdatedByInput.schema.ts",
"schemas/objects/DatabaseBackupCreateManyUserInput.schema.ts",
"schemas/objects/BackupDestinationCreateManyUserInput.schema.ts",
@@ -1859,6 +1902,9 @@
"schemas/objects/InsuranceCredentialUpdateWithoutUserInput.schema.ts",
"schemas/objects/InsuranceCredentialUncheckedUpdateWithoutUserInput.schema.ts",
"schemas/objects/InsuranceCredentialUncheckedUpdateManyWithoutUserInput.schema.ts",
"schemas/objects/ShoppingVendorUpdateWithoutUserInput.schema.ts",
"schemas/objects/ShoppingVendorUncheckedUpdateWithoutUserInput.schema.ts",
"schemas/objects/ShoppingVendorUncheckedUpdateManyWithoutUserInput.schema.ts",
"schemas/objects/PaymentUpdateWithoutUpdatedByInput.schema.ts",
"schemas/objects/PaymentUncheckedUpdateWithoutUpdatedByInput.schema.ts",
"schemas/objects/PaymentUncheckedUpdateManyWithoutUpdatedByInput.schema.ts",
@@ -2049,6 +2095,11 @@
"schemas/objects/InsuranceCredentialSumAggregateInput.schema.ts",
"schemas/objects/InsuranceCredentialMinAggregateInput.schema.ts",
"schemas/objects/InsuranceCredentialMaxAggregateInput.schema.ts",
"schemas/objects/ShoppingVendorCountAggregateInput.schema.ts",
"schemas/objects/ShoppingVendorAvgAggregateInput.schema.ts",
"schemas/objects/ShoppingVendorSumAggregateInput.schema.ts",
"schemas/objects/ShoppingVendorMinAggregateInput.schema.ts",
"schemas/objects/ShoppingVendorMaxAggregateInput.schema.ts",
"schemas/objects/PdfGroupCountAggregateInput.schema.ts",
"schemas/objects/PdfGroupAvgAggregateInput.schema.ts",
"schemas/objects/PdfGroupSumAggregateInput.schema.ts",
@@ -2178,6 +2229,7 @@
"schemas/objects/UserCountOutputTypeCountNpiProvidersArgs.schema.ts",
"schemas/objects/UserCountOutputTypeCountClaimsArgs.schema.ts",
"schemas/objects/UserCountOutputTypeCountInsuranceCredentialsArgs.schema.ts",
"schemas/objects/UserCountOutputTypeCountShoppingVendorsArgs.schema.ts",
"schemas/objects/UserCountOutputTypeCountUpdatedPaymentsArgs.schema.ts",
"schemas/objects/UserCountOutputTypeCountBackupsArgs.schema.ts",
"schemas/objects/UserCountOutputTypeCountBackupDestinationsArgs.schema.ts",
@@ -2236,6 +2288,7 @@
"schemas/objects/ServiceLineSelect.schema.ts",
"schemas/objects/ClaimFileSelect.schema.ts",
"schemas/objects/InsuranceCredentialSelect.schema.ts",
"schemas/objects/ShoppingVendorSelect.schema.ts",
"schemas/objects/PdfGroupSelect.schema.ts",
"schemas/objects/PdfFileSelect.schema.ts",
"schemas/objects/PaymentSelect.schema.ts",
@@ -2269,6 +2322,7 @@
"schemas/objects/ServiceLineArgs.schema.ts",
"schemas/objects/ClaimFileArgs.schema.ts",
"schemas/objects/InsuranceCredentialArgs.schema.ts",
"schemas/objects/ShoppingVendorArgs.schema.ts",
"schemas/objects/PdfGroupArgs.schema.ts",
"schemas/objects/PdfFileArgs.schema.ts",
"schemas/objects/PaymentArgs.schema.ts",
@@ -2302,6 +2356,7 @@
"schemas/objects/ServiceLineInclude.schema.ts",
"schemas/objects/ClaimFileInclude.schema.ts",
"schemas/objects/InsuranceCredentialInclude.schema.ts",
"schemas/objects/ShoppingVendorInclude.schema.ts",
"schemas/objects/PdfGroupInclude.schema.ts",
"schemas/objects/PdfFileInclude.schema.ts",
"schemas/objects/PaymentInclude.schema.ts",
@@ -2510,6 +2565,23 @@
"schemas/upsertOneInsuranceCredential.schema.ts",
"schemas/aggregateInsuranceCredential.schema.ts",
"schemas/groupByInsuranceCredential.schema.ts",
"schemas/findUniqueShoppingVendor.schema.ts",
"schemas/findUniqueOrThrowShoppingVendor.schema.ts",
"schemas/findFirstShoppingVendor.schema.ts",
"schemas/findFirstOrThrowShoppingVendor.schema.ts",
"schemas/findManyShoppingVendor.schema.ts",
"schemas/countShoppingVendor.schema.ts",
"schemas/createOneShoppingVendor.schema.ts",
"schemas/createManyShoppingVendor.schema.ts",
"schemas/createManyAndReturnShoppingVendor.schema.ts",
"schemas/deleteOneShoppingVendor.schema.ts",
"schemas/deleteManyShoppingVendor.schema.ts",
"schemas/updateOneShoppingVendor.schema.ts",
"schemas/updateManyShoppingVendor.schema.ts",
"schemas/updateManyAndReturnShoppingVendor.schema.ts",
"schemas/upsertOneShoppingVendor.schema.ts",
"schemas/aggregateShoppingVendor.schema.ts",
"schemas/groupByShoppingVendor.schema.ts",
"schemas/findUniquePdfGroup.schema.ts",
"schemas/findUniqueOrThrowPdfGroup.schema.ts",
"schemas/findFirstPdfGroup.schema.ts",
@@ -3027,6 +3099,19 @@
"schemas/results/InsuranceCredentialAggregateResult.schema.ts",
"schemas/results/InsuranceCredentialGroupByResult.schema.ts",
"schemas/results/InsuranceCredentialCountResult.schema.ts",
"schemas/results/ShoppingVendorFindUniqueResult.schema.ts",
"schemas/results/ShoppingVendorFindFirstResult.schema.ts",
"schemas/results/ShoppingVendorFindManyResult.schema.ts",
"schemas/results/ShoppingVendorCreateResult.schema.ts",
"schemas/results/ShoppingVendorCreateManyResult.schema.ts",
"schemas/results/ShoppingVendorUpdateResult.schema.ts",
"schemas/results/ShoppingVendorUpdateManyResult.schema.ts",
"schemas/results/ShoppingVendorUpsertResult.schema.ts",
"schemas/results/ShoppingVendorDeleteResult.schema.ts",
"schemas/results/ShoppingVendorDeleteManyResult.schema.ts",
"schemas/results/ShoppingVendorAggregateResult.schema.ts",
"schemas/results/ShoppingVendorGroupByResult.schema.ts",
"schemas/results/ShoppingVendorCountResult.schema.ts",
"schemas/results/PdfGroupFindUniqueResult.schema.ts",
"schemas/results/PdfGroupFindFirstResult.schema.ts",
"schemas/results/PdfGroupFindManyResult.schema.ts",
@@ -3326,6 +3411,7 @@
"schemas/variants/pure/ServiceLine.pure.ts",
"schemas/variants/pure/ClaimFile.pure.ts",
"schemas/variants/pure/InsuranceCredential.pure.ts",
"schemas/variants/pure/ShoppingVendor.pure.ts",
"schemas/variants/pure/PdfGroup.pure.ts",
"schemas/variants/pure/PdfFile.pure.ts",
"schemas/variants/pure/Payment.pure.ts",
@@ -3360,6 +3446,7 @@
"schemas/variants/input/ServiceLine.input.ts",
"schemas/variants/input/ClaimFile.input.ts",
"schemas/variants/input/InsuranceCredential.input.ts",
"schemas/variants/input/ShoppingVendor.input.ts",
"schemas/variants/input/PdfGroup.input.ts",
"schemas/variants/input/PdfFile.input.ts",
"schemas/variants/input/Payment.input.ts",
@@ -3394,6 +3481,7 @@
"schemas/variants/result/ServiceLine.result.ts",
"schemas/variants/result/ClaimFile.result.ts",
"schemas/variants/result/InsuranceCredential.result.ts",
"schemas/variants/result/ShoppingVendor.result.ts",
"schemas/variants/result/PdfGroup.result.ts",
"schemas/variants/result/PdfFile.result.ts",
"schemas/variants/result/Payment.result.ts",