Vuepic / vue-datepicker

Datepicker component for Vue 3
https://vue3datepicker.com
MIT License
1.43k stars 142 forks source link

Months are computed wrongly when using format-locale in a negative offset timezone #817

Closed brunolopesr closed 4 months ago

brunolopesr commented 5 months ago

Describe the bug When using the prop format-locale with a browser using a timezone different from UTC (probably timezones with negative offsets like America/Sao_Paulo), the months of a year are computed wrong, from December to November.

To Reproduce Set your browser timezone to a value different from UTC or +00:00, then use a date-fns locale as a value of the prop format-locale

Codesandbox: https://codesandbox.io/p/devbox/prod-glitter-lm5nsv

Expected behavior The months should be in the correct order from January to December

Screenshots image

Desktop & mobile (please complete the following information):

brunolopesr commented 5 months ago

Made a PR #818 that I think will fix this problem.

I believe it just occurs in negative timezone offsets, because as the ISO 8601 strings used to compute month dates are always something like 2017-01-01T00:00-00:00, it then makes a date one day earlier, that will be the last day of the previous month.

brunolopesr commented 5 months ago

Well, the bug exists in this package for at least 9 months, made the PR above to fix the problem and it was closed because the maintainer has a simpler fix..

As I don't want to wait for this fix, as I dont know if it will be in the next day or the next year, I'm closing the issue.

Jasenkoo commented 5 months ago

WIll keep it open, as it will be fixed in the next release