xpeditis2.0/apps/backend/src/application/mappers/user.mapper.ts
David 08787c89c8
Some checks failed
Dev CI / Unit Tests (${{ matrix.app }}) (backend) (push) Blocked by required conditions
Dev CI / Unit Tests (${{ matrix.app }}) (frontend) (push) Blocked by required conditions
Dev CI / Notify Failure (push) Blocked by required conditions
Dev CI / Quality (${{ matrix.app }}) (backend) (push) Has been cancelled
Dev CI / Quality (${{ matrix.app }}) (frontend) (push) Has been cancelled
chore: sync full codebase from cicd branch
Aligns dev with the complete application codebase (cicd branch).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-04 12:56:16 +02:00

34 lines
789 B
TypeScript

import { User } from '@domain/entities/user.entity';
import { UserResponseDto } from '../dto/user.dto';
/**
* User Mapper
*
* Maps between User domain entities and DTOs
*/
export class UserMapper {
/**
* Convert User entity to DTO (without sensitive fields)
*/
static toDto(user: User): UserResponseDto {
return {
id: user.id,
email: user.email,
firstName: user.firstName,
lastName: user.lastName,
role: user.role as any,
organizationId: user.organizationId,
isActive: user.isActive,
createdAt: user.createdAt,
updatedAt: user.updatedAt,
};
}
/**
* Convert array of User entities to DTOs
*/
static toDtoArray(users: User[]): UserResponseDto[] {
return users.map(user => this.toDto(user));
}
}