diff --git a/prisma/migrations/20260106112014_relax_unique_constraint_on_pairs/migration.sql b/prisma/migrations/20260106112014_relax_unique_constraint_on_pairs/migration.sql new file mode 100644 index 0000000..c16b32f --- /dev/null +++ b/prisma/migrations/20260106112014_relax_unique_constraint_on_pairs/migration.sql @@ -0,0 +1,11 @@ +/* + Warnings: + + - A unique constraint covering the columns `[folder_id,language1,language2,text1,text2]` on the table `pairs` will be added. If there are existing duplicate values, this will fail. + +*/ +-- DropIndex +DROP INDEX "pairs_folder_id_language1_language2_text1_key"; + +-- CreateIndex +CREATE UNIQUE INDEX "pairs_folder_id_language1_language2_text1_text2_key" ON "pairs"("folder_id", "language1", "language2", "text1", "text2"); diff --git a/prisma/schema.prisma b/prisma/schema.prisma index a04b695..4a603c2 100644 --- a/prisma/schema.prisma +++ b/prisma/schema.prisma @@ -87,7 +87,7 @@ model Pair { folder Folder @relation(fields: [folderId], references: [id], onDelete: Cascade) - @@unique([folderId, language1, language2, text1]) + @@unique([folderId, language1, language2, text1, text2]) @@index([folderId]) @@map("pairs") } diff --git a/src/lib/server/services/types.ts b/src/lib/server/services/types.ts index 55a345f..0094ca2 100644 --- a/src/lib/server/services/types.ts +++ b/src/lib/server/services/types.ts @@ -38,7 +38,7 @@ export interface UpdatePairInput { export interface CreateTranslationHistoryInput { userId?: string; sourceText: string; - sourceLanguage?: string; + sourceLanguage: string; targetLanguage: string; translatedText: string; sourceIpa?: string;