How do we handle Milestone Target Dates?
Why do Milestone Target Dates look wrong in collection/list views?
When a Target Date is saved, the API strips off any time portion of the value and appends the workspace timezone offset. Because of this, it doesn't matter what time is passed in an API call, it will be stripped down to the date
For example, if the subscription is set to Asia/Shanghai and you pass a target date of 2021-10-28T06:00:00.000Z, the API will strip it to 2021-10-28 and add the timezone offset of T17:00:00.000Z
When the date is displayed in the milestone details page, it is based on the date portion of the value stored in the API, so no conversion is being performed there and the details page will show a target date of 2021-10-28
When milestones are being displayed in a list/collection on the milestones page, however, there is a timezone offset applied as related to the user's timezone setting on their computer.
A user with a timezone setting of MST/MDT will see the following date/time in the collection:
2021-10-28 12:00 AM +07
While this seems very complex, the reason this is done is to try and represent the TargetDate as the end of the day in the timezone that the workspace is configured as.