const getHubspotPipelines = require("./getHubspotPipelines") const getHubspotTicketStatusByContact = require("./getHubspotTicketStatusByContact") async function findTicketOpenHubspotByContact(authentication, contact) { const { token } = authentication console.log('contact: ', contact) const pipelines = await getHubspotPipelines(token) const tickets = await getHubspotTicketStatusByContact(token, contact.contactId) let open_tickets = [] for (let pipeline of pipelines.results) { const open = pipeline.stages.filter((s) => s.metadata.ticketState.toLowerCase() == "open") if (open && open.length > 0) { open_tickets = [...open_tickets, ...open]; } } const ticket_ids = open_tickets.map((t) => t.id) if (ticket_ids && ticket_ids.length > 0 && tickets?.results?.length > 0) { const ticket = tickets.results.find(t => ticket_ids.includes(t.properties.hs_pipeline_stage)) return ticket } } module.exports = findTicketOpenHubspotByContact