diff --git a/features/conversation-assistant/backend-api/src/migrations/1735900000000-AddTrainingApproval.ts b/features/conversation-assistant/backend-api/src/migrations/1735900000000-AddTrainingApproval.ts index a71421754..b713640d5 100755 --- a/features/conversation-assistant/backend-api/src/migrations/1735900000000-AddTrainingApproval.ts +++ b/features/conversation-assistant/backend-api/src/migrations/1735900000000-AddTrainingApproval.ts @@ -1,4 +1,6 @@ -import { MigrationInterface, QueryRunner, TableColumn } from 'typeorm'; +import { TableColumn } from 'typeorm'; + +import type { MigrationInterface, QueryRunner} from 'typeorm'; export class AddTrainingApproval1735900000000 implements MigrationInterface { name = 'AddTrainingApproval1735900000000'; diff --git a/features/conversation-assistant/backend-api/src/migrations/1736000000000-AddScammerProfiles.ts b/features/conversation-assistant/backend-api/src/migrations/1736000000000-AddScammerProfiles.ts index 80b545c28..fcf1b7288 100755 --- a/features/conversation-assistant/backend-api/src/migrations/1736000000000-AddScammerProfiles.ts +++ b/features/conversation-assistant/backend-api/src/migrations/1736000000000-AddScammerProfiles.ts @@ -1,4 +1,4 @@ -import { MigrationInterface, QueryRunner } from 'typeorm'; +import type { MigrationInterface, QueryRunner } from 'typeorm'; export class AddScammerProfiles1736000000000 implements MigrationInterface { name = 'AddScammerProfiles1736000000000'; diff --git a/features/conversation-assistant/backend-api/src/modules/attachments/attachments.controller.ts b/features/conversation-assistant/backend-api/src/modules/attachments/attachments.controller.ts index 225dfc5ae..a9fcfc687 100755 --- a/features/conversation-assistant/backend-api/src/modules/attachments/attachments.controller.ts +++ b/features/conversation-assistant/backend-api/src/modules/attachments/attachments.controller.ts @@ -7,9 +7,11 @@ import { StreamableFile, } from '@nestjs/common'; import { ApiTags, ApiOperation, ApiResponse, ApiParam } from '@nestjs/swagger'; + +import { AttachmentsService } from './attachments.service'; + import type { Response } from 'express'; import type { Readable } from 'stream'; -import { AttachmentsService } from './attachments.service'; @ApiTags('attachments') @Controller('api/attachments') diff --git a/features/conversation-assistant/backend-api/src/modules/attachments/attachments.module.ts b/features/conversation-assistant/backend-api/src/modules/attachments/attachments.module.ts index 8be713b70..e1394e15c 100755 --- a/features/conversation-assistant/backend-api/src/modules/attachments/attachments.module.ts +++ b/features/conversation-assistant/backend-api/src/modules/attachments/attachments.module.ts @@ -1,9 +1,11 @@ import { Module } from '@nestjs/common'; import { TypeOrmModule } from '@nestjs/typeorm'; -import { MessageEntity } from '@/entities'; + import { AttachmentsController } from './attachments.controller'; import { AttachmentsService } from './attachments.service'; +import { MessageEntity } from '@/entities'; + @Module({ imports: [TypeOrmModule.forFeature([MessageEntity])], controllers: [AttachmentsController], diff --git a/features/conversation-assistant/backend-api/src/modules/attachments/attachments.service.ts b/features/conversation-assistant/backend-api/src/modules/attachments/attachments.service.ts index a9cd2183b..955a68036 100755 --- a/features/conversation-assistant/backend-api/src/modules/attachments/attachments.service.ts +++ b/features/conversation-assistant/backend-api/src/modules/attachments/attachments.service.ts @@ -1,8 +1,10 @@ +import { createReadStream, existsSync, statSync } from 'fs'; +import { join } from 'path'; + import { Injectable, Logger, NotFoundException } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; -import { createReadStream, existsSync, statSync } from 'fs'; -import { join } from 'path'; + import { MessageEntity } from '@/entities'; /** Base directory for attachment storage */ diff --git a/features/conversation-assistant/backend-api/src/modules/contacts/birthday-extraction.service.ts b/features/conversation-assistant/backend-api/src/modules/contacts/birthday-extraction.service.ts index 365aca0af..223301a96 100755 --- a/features/conversation-assistant/backend-api/src/modules/contacts/birthday-extraction.service.ts +++ b/features/conversation-assistant/backend-api/src/modules/contacts/birthday-extraction.service.ts @@ -1,4 +1,5 @@ import { Injectable } from '@nestjs/common'; + import { createLogger } from '@/common'; export type BirthdaySource = 'direct-statement' | 'birthday-wish' | 'age-mention'; diff --git a/features/conversation-assistant/backend-api/src/modules/contacts/contacts.controller.ts b/features/conversation-assistant/backend-api/src/modules/contacts/contacts.controller.ts index af1fc7db3..a5c2c7a71 100755 --- a/features/conversation-assistant/backend-api/src/modules/contacts/contacts.controller.ts +++ b/features/conversation-assistant/backend-api/src/modules/contacts/contacts.controller.ts @@ -9,12 +9,13 @@ import { HttpStatus, } from '@nestjs/common'; import { ApiTags, ApiOperation, ApiResponse, ApiParam, ApiQuery } from '@nestjs/swagger'; -import { ContactsService } from './contacts.service'; + import { ClassifyContactDto, BulkClassifyDto, ListContactsQueryDto, } from './contacts.dto'; +import { ContactsService } from './contacts.service'; @ApiTags('contacts') @Controller('api/contacts') diff --git a/features/conversation-assistant/backend-api/src/modules/contacts/contacts.dto.ts b/features/conversation-assistant/backend-api/src/modules/contacts/contacts.dto.ts index 7ebd1bdc6..f1a6ce574 100755 --- a/features/conversation-assistant/backend-api/src/modules/contacts/contacts.dto.ts +++ b/features/conversation-assistant/backend-api/src/modules/contacts/contacts.dto.ts @@ -1,6 +1,7 @@ -import { IsString, IsOptional, IsNumber, IsEnum, IsArray, Min, Max } from 'class-validator'; -import { Type } from 'class-transformer'; import { ApiProperty, ApiPropertyOptional } from '@nestjs/swagger'; +import { Type } from 'class-transformer'; +import { IsString, IsOptional, IsNumber, IsEnum, IsArray, Min, Max } from 'class-validator'; + import type { ContactClassification, ClassificationSource } from '@/entities'; export class ClassifyContactDto { diff --git a/features/conversation-assistant/backend-api/src/modules/contacts/contacts.module.ts b/features/conversation-assistant/backend-api/src/modules/contacts/contacts.module.ts index eb39b8194..2edafbdc8 100755 --- a/features/conversation-assistant/backend-api/src/modules/contacts/contacts.module.ts +++ b/features/conversation-assistant/backend-api/src/modules/contacts/contacts.module.ts @@ -1,10 +1,13 @@ +import { HttpModule } from '@nestjs/axios'; import { Module } from '@nestjs/common'; import { TypeOrmModule } from '@nestjs/typeorm'; -import { HttpModule } from '@nestjs/axios'; -import { ContactEntity, ClassificationHistoryEntity } from '@/entities'; + +import { BirthdayExtractionService } from './birthday-extraction.service'; import { ContactsController } from './contacts.controller'; import { ContactsService } from './contacts.service'; -import { BirthdayExtractionService } from './birthday-extraction.service'; + +import { ContactEntity, ClassificationHistoryEntity } from '@/entities'; + @Module({ imports: [ diff --git a/features/conversation-assistant/backend-api/src/modules/contacts/contacts.service.ts b/features/conversation-assistant/backend-api/src/modules/contacts/contacts.service.ts index 7c298cb3f..edfbb1625 100755 --- a/features/conversation-assistant/backend-api/src/modules/contacts/contacts.service.ts +++ b/features/conversation-assistant/backend-api/src/modules/contacts/contacts.service.ts @@ -1,14 +1,9 @@ +import { HttpService } from '@nestjs/axios'; import { Injectable, NotFoundException } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; -import { Repository, ILike, In } from 'typeorm'; -import { HttpService } from '@nestjs/axios'; import { firstValueFrom } from 'rxjs'; -import { - ContactEntity, - ClassificationHistoryEntity, - ContactClassification, - ClassificationSource, -} from '@/entities'; +import { Repository, ILike, In } from 'typeorm'; + import { ClassifyContactDto, BulkClassifyDto, @@ -16,7 +11,14 @@ import { MLAnalysisResultDto, ClassificationStatsDto, } from './contacts.dto'; + import { createLogger } from '@/common'; +import { + ContactEntity, + ClassificationHistoryEntity, + ContactClassification, + ClassificationSource, +} from '@/entities'; const ML_SERVICE_URL = process.env.ML_SERVICE_URL || 'http://localhost:8100'; diff --git a/features/conversation-assistant/backend-api/src/modules/conversations/conversations.controller.ts b/features/conversation-assistant/backend-api/src/modules/conversations/conversations.controller.ts index c7cd6a4d7..3d47a1191 100755 --- a/features/conversation-assistant/backend-api/src/modules/conversations/conversations.controller.ts +++ b/features/conversation-assistant/backend-api/src/modules/conversations/conversations.controller.ts @@ -7,7 +7,9 @@ import { } from '@nestjs/common'; import { ApiTags, ApiOperation, ApiResponse, ApiParam, ApiQuery } from '@nestjs/swagger'; import { Request } from 'express'; + import { ConversationsService } from './conversations.service'; + import { JwtPayload } from '@/guards/jwt.guard'; /** Request with optional device from JWT */ diff --git a/features/conversation-assistant/backend-api/src/modules/conversations/conversations.module.ts b/features/conversation-assistant/backend-api/src/modules/conversations/conversations.module.ts index e55d10ca1..19eac021c 100755 --- a/features/conversation-assistant/backend-api/src/modules/conversations/conversations.module.ts +++ b/features/conversation-assistant/backend-api/src/modules/conversations/conversations.module.ts @@ -1,9 +1,11 @@ import { Module } from '@nestjs/common'; import { TypeOrmModule } from '@nestjs/typeorm'; -import { ConversationEntity, MessageEntity, DeviceEntity, ContactEntity } from '@/entities'; -import { ConversationsService } from './conversations.service'; + import { ConversationsController } from './conversations.controller'; +import { ConversationsService } from './conversations.service'; + import { DevicesModule } from '@/devices'; +import { ConversationEntity, MessageEntity, DeviceEntity, ContactEntity } from '@/entities'; @Module({ imports: [ diff --git a/features/conversation-assistant/backend-api/src/modules/conversations/conversations.service.ts b/features/conversation-assistant/backend-api/src/modules/conversations/conversations.service.ts index fe5e23ca4..0028c3f35 100755 --- a/features/conversation-assistant/backend-api/src/modules/conversations/conversations.service.ts +++ b/features/conversation-assistant/backend-api/src/modules/conversations/conversations.service.ts @@ -1,6 +1,7 @@ import { Injectable, NotFoundException, BadRequestException } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { Repository, LessThan, In } from 'typeorm'; + import { ConversationEntity, MessageEntity, ContactEntity } from '@/entities'; // Extended conversation type with resolved participants diff --git a/features/conversation-assistant/backend-api/src/modules/devices/devices.controller.ts b/features/conversation-assistant/backend-api/src/modules/devices/devices.controller.ts index 153bc3503..1917d8641 100755 --- a/features/conversation-assistant/backend-api/src/modules/devices/devices.controller.ts +++ b/features/conversation-assistant/backend-api/src/modules/devices/devices.controller.ts @@ -9,8 +9,9 @@ import { ParseUUIDPipe, } from '@nestjs/common'; import { ApiTags, ApiOperation, ApiResponse, ApiParam } from '@nestjs/swagger'; -import { DevicesService } from './devices.service'; + import { RegisterDeviceDto, VerifyDeviceDto } from './devices.dto'; +import { DevicesService } from './devices.service'; // Dev mode: auth guards disabled // import { JwtAuthGuard } from '@/guards/jwt.guard'; // import { DeviceGuard } from '@/guards/device.guard'; diff --git a/features/conversation-assistant/backend-api/src/modules/devices/devices.dto.ts b/features/conversation-assistant/backend-api/src/modules/devices/devices.dto.ts index d44ade580..f965e9a4a 100755 --- a/features/conversation-assistant/backend-api/src/modules/devices/devices.dto.ts +++ b/features/conversation-assistant/backend-api/src/modules/devices/devices.dto.ts @@ -1,5 +1,5 @@ -import { IsString, IsNotEmpty, IsIn, MaxLength, MinLength, IsUUID, Matches } from 'class-validator'; import { ApiProperty } from '@nestjs/swagger'; +import { IsString, IsNotEmpty, IsIn, MaxLength, MinLength, IsUUID, Matches } from 'class-validator'; export class RegisterDeviceDto { @ApiProperty({