Невозможно автоматически преобразовать дату UTC в некоторый случайный часовой пояс. Это будет работать, если пользователь живет в этом конкретном часовом поясе. В любом случае, вы можете использовать простую математику, чтобы решить эту проблему.
Рассчитать временную шкалу, отличную в миллисекундах
const timeZone= `-07:00`
const timezoneDiff = timeZone[0]==='-' ? (timezone.split(':')[0]*60*60*1000 - timeZone.split(':')[1]*60*1000) : (timeZone.split(':')[0]*60*60*1000 + timeZone.split(':')[1]*60*1000)
Добавьте разницу к стандартной метке времени UNIX
const endDateTime = `${new Date( endMs1+ (timeZoneDiff)).toISOString().split('.')[0]}${timeZone}`;
Или же использовать какой-нибудь модуль NPM, такой как момент или момент-часовой пояс