Build and Push Multi-Platform Images / build-and-push (push) Successful in 45s
Absender erzeugen PDFs beim erneuten Versand oft neu (andere Erstellungszeit/Dokument-ID), dadurch unterscheidet sich die Checksumme und die Duplikatprüfung griff nicht (z.B. Mail 7071 vs. 7072). - Neuer Text-Fingerprint (SHA-256 über normalisierten PDF-Text via pdf-parse) in Attachments.ContentFingerprint, inkl. Migration und Index - Wird beim Mail-Abruf berechnet; Altbestand füllt ein Hintergrund- Backfill beim Start auf, fehlende Werte werden bei Bedarf nachberechnet - Duplikatprüfung und Import-Sperre berücksichtigen Anhänge mit gleichem Inhalt, die importiert sind oder gerade importiert werden - Jest braucht für pdf-parse --experimental-vm-modules (test-Skripte) Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
40 lines
1.4 KiB
TypeScript
40 lines
1.4 KiB
TypeScript
import { Module } from '@nestjs/common';
|
|
import { TypeOrmModule } from '@nestjs/typeorm';
|
|
import { Email } from '../database/entities/email.entity';
|
|
import { Attachment } from '../database/entities/attachment.entity';
|
|
import { Content } from '../database/entities/content.entity';
|
|
import { EmailController } from './email.controller';
|
|
import { PaperlessModule } from '../paperless/paperless.module';
|
|
import { EmailPageCacheService } from './email-page-cache.service';
|
|
|
|
import { EmailImportController } from './email-import.controller';
|
|
import { EmailImportService } from './email-import.service';
|
|
import { ImapFolderService } from './imap-folder.service';
|
|
import { AttachmentFingerprintService } from './attachment-fingerprint.service';
|
|
import { CorrespondentEmailMapping } from '../database/entities/correspondent-email-mapping.entity';
|
|
import { Task } from '../database/entities/task.entity';
|
|
import { PreprocessingModule } from '../preprocessing/preprocessing.module';
|
|
|
|
@Module({
|
|
imports: [
|
|
TypeOrmModule.forFeature([
|
|
Email,
|
|
Attachment,
|
|
Content,
|
|
CorrespondentEmailMapping,
|
|
Task,
|
|
]),
|
|
PaperlessModule,
|
|
PreprocessingModule,
|
|
],
|
|
controllers: [EmailController, EmailImportController],
|
|
providers: [
|
|
EmailImportService,
|
|
EmailPageCacheService,
|
|
ImapFolderService,
|
|
AttachmentFingerprintService,
|
|
],
|
|
exports: [EmailPageCacheService],
|
|
})
|
|
export class EmailModule {}
|