https://project.mdnd-it.cc/work_packages/94
This commit is contained in:
2025-08-23 04:25:28 +02:00
parent 725516ad6c
commit 19cfa031d0
25823 changed files with 1095587 additions and 2801760 deletions
@@ -0,0 +1,28 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.UpdateUserCommandHandler = void 0;
const UserMapper_1 = require("../../DTOs/Mappers/UserMapper");
const PasswordService_1 = require("../../Services/PasswordService");
class UpdateUserCommandHandler {
constructor(userRepo) {
this.userRepo = userRepo;
}
async execute(cmd) {
const updateData = { ...cmd };
// Hash the password if it's being updated
if (cmd.password) {
// Validate password strength
const passwordValidation = PasswordService_1.PasswordService.validatePasswordStrength(cmd.password);
if (!passwordValidation.isValid) {
throw new Error(`Password validation failed: ${passwordValidation.errors.join(', ')}`);
}
updateData.password = await PasswordService_1.PasswordService.hashPassword(cmd.password);
}
const updated = await this.userRepo.update(cmd.id, updateData);
if (!updated)
return null;
return UserMapper_1.UserMapper.toShortDto(updated);
}
}
exports.UpdateUserCommandHandler = UpdateUserCommandHandler;
//# sourceMappingURL=UpdateUserCommandHandler.js.map