"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.Email = void 0; const ValueObject_1 = require("../../../../shared/domain/ValueObject"); class Email extends ValueObject_1.ValueObject { static create(value) { const normalized = value.trim().toLowerCase(); if (!Email.EMAIL_REGEX.test(normalized)) { throw new Error(`Invalid email address: ${value}`); } return new Email({ value: normalized }); } get value() { return this.props.value; } } exports.Email = Email; Email.EMAIL_REGEX = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;