-
Notifications
You must be signed in to change notification settings - Fork 3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add DateTimeFormat
polyfills with timezone abbreviations
#31074
Conversation
DateTimeFormat
polyfillsDateTimeFormat
polyfills with timezone abbreviations
@situchan Don't forget to review this PR asap |
@situchan Still waiting for your review. |
@situchan It's been 2 weeks, please review asap! |
Auto-assigning the review so I can follow the progress and I can make sure it gets reviewed. |
reviewing |
let currentTimezone = timezone.automatic ? Intl.DateTimeFormat().resolvedOptions().timeZone : timezone.selected; | ||
if (currentTimezone in tzLinks) { | ||
currentTimezone = tzLinks[currentTimezone]; | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can we reuse DateUtils.getCurrentTimezone()
without connecting Onyx here unless it causes cyclic dependency?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Updated!
Timezone is not updated automatically after turning on "Automatically determine your location" web2-bug.movI think this can be out of scope as already happens on main |
Reviewer Checklist
Screenshots/VideosAndroid: Nativeandroid.movAndroid: mWeb Chromemchrome.moviOS: Nativeios.moviOS: mWeb Safarimsafari.movMacOS: Chrome / Safariweb1.movMacOS: Desktopdesktop.mov |
Performance tests are failing. It's random so let's see if success after pull main |
@pecanoro Please review. |
Sorry @tienifr I was on vacation last week, I will review it today!! |
PST8PDT: 'America/Los_Angeles', | ||
WET: 'Europe/Lisbon', | ||
}; | ||
/* eslint-disable @typescript-eslint/naming-convention */ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Did you mean eslint-enable
here?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@tienifr Friendly bump! Maybe I am missing something haha
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You're right! I've updated.
✋ This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release. |
🚀 Deployed to staging by https://github.com/pecanoro in version: 1.4.24-0 🚀
|
🚀 Deployed to production by https://github.com/thienlnam in version: 1.4.24-3 🚀
|
currentTimezone = tzLinks[currentTimezone]; | ||
} | ||
|
||
require('@formatjs/intl-datetimeformat/polyfill-force'); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@tienifr Can you address this comment: #34035 (comment)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I have replied on the other issue #34035 (comment)
Details
Add
DateTimeFormat
polyfills to support backward timezones and display them as modern, canonicalized timezone names. This PR adds support for timezone abbreviations which was not covered in #29113.Fixed Issues
$ #27392
PROPOSAL: #27392 (comment)
Tests
How to change local timezone
MacOS
Chrome (or Chormium-based browsers) on MacOS Sonoma is failing to retrieve timezone. Reported issue here: https://support.google.com/chrome/thread/231926653/timezone-return-undefined. So if you're using Mac Sonoma, please use Safari for testing; or use other Mac OS versions.
iOS
MacOS's timezone settings also applies to simulator. For physical device:
Android
Set automatically
Test steps
Automatic timezone detection requires app restart/refresh to take effects.
All platforms
Kolkata - India
Asia/Kolkata
Hanoi - Vietnam
city and verifyAsia/Ho_Chi_Minh
timezoneMore for iOS
Asia/Ho_Chi_Minh
on WebOffline tests
NA
QA Steps
Same as Tests
PR Author Checklist
### Fixed Issues
section aboveTests
sectionOffline steps
sectionQA steps
sectiontoggleReport
and notonIconClick
)myBool && <MyComponent />
.src/languages/*
files and using the translation methodWaiting for Copy
label for a copy review on the original GH to get the correct copy.STYLE.md
) were followedAvatar
, I verified the components usingAvatar
are working as expected)/** comment above it */
this
are necessary to be bound (i.e. avoidthis.submit = this.submit.bind(this);
ifthis.submit
is never passed to a component event handler likeonClick
)StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG)
)Avatar
is modified, I verified thatAvatar
is working as expected in all cases)ScrollView
component to make it scrollable when more elements are added to the page.main
branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to theTest
steps.Screenshots/Videos
Android: Native
Android: mWeb Chrome
iOS: Native
iOS: mWeb Safari
MacOS: Chrome / Safari
MacOS: Desktop