export function isEventLiveNow(item) { if (!item?.pinswg_dateeventrequested) return false; const now = new Date(); const start = new Date(item.pinswg_dateeventrequested); if (isNaN(start.getTime())) return false; const endDateValue = item.pinswg_enddateofevent || item.pinswg_enddateoftheevent; if (endDateValue) { const end = new Date(endDateValue); if (isNaN(end.getTime())) return false; end.setHours(23, 59, 59, 999); return now >= start && now <= end; } const endOfStartDay = new Date(start); endOfStartDay.setHours(23, 59, 59, 999); return now >= start && now <= endOfStartDay; } export function getLivePublishedEvent(eventsObj) { const eventsArr = eventsObj?.value || []; return eventsArr.find( (item) => item.pinswg_eventpublishflag && item.pinswg_linktotheevent && isEventLiveNow(item) ); }