/** * Extrai e valida informações de mudança de status do Lead a partir do dynamicBodyRequest. * - newStatus: deve ser string não vazia * - leadId: opcional; se ausente, pode ser fornecido externamente (ex.: contactId) */ function extractLeadStatusChange(dynamicBodyRequest = {}) { if (!dynamicBodyRequest || typeof dynamicBodyRequest !== 'object') { return { shouldUpdate: false } } const rawStatus = dynamicBodyRequest.__newLeadStatus const rawLeadId = dynamicBodyRequest.__leadId const newStatus = typeof rawStatus === 'string' ? rawStatus.trim() : '' const leadId = typeof rawLeadId === 'string' ? rawLeadId.trim() : undefined if (!newStatus) { return { shouldUpdate: false } } return { shouldUpdate: true, newStatus, leadId } } module.exports = extractLeadStatusChange