-
Notifications
You must be signed in to change notification settings - Fork 2.9k
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
[TS migration] Migrate 'NewTask' page to TypeScript #36886
[TS migration] Migrate 'NewTask' page to TypeScript #36886
Conversation
aaefe05
to
f16ad88
Compare
src/pages/tasks/NewTaskPage.tsx
Outdated
<FormAlertWithSubmitButton | ||
isAlertVisible={!_.isEmpty(errorMessage)} | ||
isAlertVisible={!isEmptyObject(errorMessage)} |
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.
The way isEmptyObject
is implemented with obj, it looks like isEmptyObject
is true
for any string. I think this is not what we expect 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.
Updated to Boolean, since isEmptyObject
is mostly for objects
But cannot agree. isEmptyObject
will work well with empty and nonempty strings. (you can check it by yourself, Object.keys()
works great with string and converting it into an empty or nonempty array )
|
||
...withLocalizePropTypes, | ||
type NewTaskDescriptionPageOnyxProps = { | ||
/** Grab the Share title of the Task */ |
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.
NAB/NIT: In this comment, Share title
is kinda irrelevant to this description page. Maybe just Details of the Task
or Grab the details of the Task
appears better to me.
Or just omit this comment? Does not appear to be useful at all.
Same for the NewTaskDetailsPage
and NewTaskTitlePage
. I think Share
is only applicable to Share somewhere
and is not for details and title.
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
4f76cd9
to
9c17b9c
Compare
@neil-marcellini Please copy/paste the Reviewer Checklist from here into a new comment on this PR and complete it. If you have the K2 extension, you can simply click: [this button] |
@c3024 PR updated |
Reviewer Checklist
Screenshots/VideosAndroid: NativenewTaskAndroid.mp4Android: mWeb ChromenewTaskAndroidChrome.mp4iOS: NativenewTaskiOS.mp4iOS: mWeb SafarinewTaskSafari.mp4MacOS: Chrome / SafarinewTaskChrome.mp4MacOS: DesktopnewTaskDesktop.mp4 |
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.
LGTM
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.
@c3024 @pasyukevich these test steps do not meet our standards, they are way too vague and subjective. Please get them updated and retest if needed. I'll review the code in the meantime.
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.
The code looks good, thanks
@neil-marcellini test cases updated |
Tests well newTaskAfterMainMerge.mp4 |
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.
Looks great. Thanks for explaining the optional chaining and improving the test steps.
✋ 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/neil-marcellini in version: 1.4.52-0 🚀
|
🚀 Deployed to production by https://github.com/Beamanator in version: 1.4.52-6 🚀
|
onPress={() => Navigation.navigate(ROUTES.NEW_TASK_SHARE_DESTINATION)} | ||
interactive={!task?.parentReportID} | ||
shouldShowRightIcon={!task?.parentReportID} | ||
titleWithTooltips={shareDestination?.shouldUseFullTitleToDisplay ? shareDestination?.displayNamesWithTooltips : []} |
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.
Incorrect conversion of this old conditional caused a regression #38294
Details
Fixed Issues
$#25213
PROPOSAL:
Tests
Offline tests
QA Steps
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)StyleUtils.getBackgroundAndBorderStyle(theme.componentBG)
)Avatar
is modified, I verified thatAvatar
is working as expected in all cases)Design
label so the design team can review the changes.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-native-converted.webm
Android: mWeb Chrome
android-web-converted.webm
iOS: Native
ios-native-converted.mp4
iOS: mWeb Safari
ios-web-converted.mp4
MacOS: Chrome / Safari
Desktop-web-converted.mov
MacOS: Desktop
desktop-native-converted.mov