dateInDestinationTimeZone = {
const inputDate = new Date(dateString + 'Z');
const parts = ['year', 'month', 'day', 'hour', 'minute', 'second'];
const o = Object.assign(
...new Intl.DateTimeFormat('en-US',
{ ...Object.assign(...parts.map(p => ({ [p]: 'numeric' }))), hour12: false, timeZone }
)
.formatToParts(inputDate)
.map(part => ({ [part.type]: part.value }))
)
const shiftedDate = new Date(
Date.UTC(o.year, o.month - 1, o.day, o.hour, o.minute, o.second, inputDate.getMilliseconds())
);
return new Date(inputDate - new Date(shiftedDate - inputDate))
}