metis-desk/packages/rdx-ddd/src/value-objects/name.vo.ts

16 lines
421 B
TypeScript
Raw Normal View History

import { Result } from "@repo/rdx-utils";
2026-10-09 08:38:19 +00:00
import { ValueObject } from "./value-object.vo";
export class Name extends ValueObject<string> {
static create(value: string, maxLength = 255): Result<Name, Error> {
const normalized = value.trim();
2026-10-10 10:01:58 +00:00
if (!normalized || normalized.length > maxLength) {
return Result.fail(new Error("Nombre inválido."));
}
2026-10-10 10:01:58 +00:00
return Result.ok(new Name(normalized));
}
}