-
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
Show all Expensify logins in Contact Methods page & view each in new Contact Method Details page #15204
Conversation
@mollfpr thanks for the comments, I addressed them! 👍 About that weird issue when adding a secondary login, I won't worry about that for now since I'm not modifying that page ( |
@Beamanator Yeah, I feel this PR has nothing to do about the issue. I'll take a look more at issue and report it. Besides that, everything looks good to me 👍 |
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.
Well done @Beamanator 🚀
Groovy, thanks @mollfpr 👍 @cristipaval @shawnborton all y'all! 👍 😈 |
Looks good to me! |
✋ 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/cristipaval in version: 1.2.80-0 🚀
|
🚀 Deployed to production by https://github.com/roryabraham in version: 1.2.80-2 🚀
|
<View style={[styles.flexRow, styles.alignItemsCenter, styles.mb1, styles.mt3]}> | ||
<Icon src={Expensicons.DotIndicator} fill={colors.green} /> | ||
<View style={[styles.flex1, styles.ml4]}> | ||
<Text> | ||
{this.props.translate('contacts.enterMagicCode', {contactMethod})} | ||
</Text> | ||
</View> | ||
</View> |
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.
Coming from #18544:
For consistency, we should have reused DotIndicatorMessage
component 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.
@shawnborton approved the designs of this PR, are you sure we wanted the other designs there? It looks like we didn't wait for Shawn to respond in Slack - https://expensify.slack.com/archives/C049HHMV9SM/p1683310488445319
And he wasn't ping'ed in that issue 🤷
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.
Here's discussion where @shawnborton involved: https://expensify.slack.com/archives/C049HHMV9SM/p1683306715287389?thread_ts=1683190809.653859&cid=C049HHMV9SM
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.
Ooh perfecto, thanks @0xmiroslav !
[contactMethod]: { | ||
pendingFields: { | ||
validateLogin: null, | ||
}, |
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.
✋ Coming from #21220
We need to clear the errorFields.validateCodeSent
from the requestContactMethodValidateCode
method, otherwise the error still visible after validating the contact method.
[contactMethod]: { | ||
partnerUserID: '', | ||
errorFields: { | ||
deletedLogin: null, |
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.
Coming from #33021
We can clear all errors here, allowing the indicator to display the correct color. :)
cc @cristipaval since you're helping with all of these related account settings / contact methods pages
Holding on New Contact methods page linked from Profile page #15039, which this PR was forked fromHolding on https://github.com/Expensify/Web-Expensify/pull/36541, where all the new commands will be createdDetails
Nothing too fishy, but I left a few comments about places we have temporary logic that we'll remove soon - the next phase in this rollout is to create the "Add new contact method" page. At this point, we'll remove the old
LoginField
component & the oldAddSecondaryLoginPage
page and routeFixed Issues
$ #15203
$ #11575
Tests
Notes:
DELETE FROM nameValuePairs WHERE accountID = <accountID> and name glob 'private_throttleAttempts_*';
Default contact method
Still able to add new contact methods
Resend magic code to unvalidated contact method & validate it
000000
magic code (@cristipaval will make the link work in a future PR)Resend magic code, and observe errors
Validate secondary login, and observe errors
12345
. Click "Verify".Remove contact method
Offline tests
Send magic code
Validate a secondary login
Delete a secondary login
QA Steps
Same as above, except:
000000
- use the code that is sent to your emailPR Author Checklist
### Fixed Issues
section aboveTests
sectionOffline steps
sectionQA steps
sectiontoggleReport
and notonIconClick
)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
properly so there are no scoping issues (i.e. foronClick={this.submit}
the methodthis.submit
should be bound tothis
in the constructor)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.Screenshots/Videos
Web
Screen.Recording.2023-02-27.at.7.27.38.PM.mov
Mobile Web - Chrome
Screen.Recording.2023-03-01.at.1.59.44.PM.mov
Mobile Web - Safari
Screen.Recording.2023-03-01.at.2.17.43.PM.mov
Desktop
Screen.Recording.2023-02-27.at.7.43.14.PM.mov
iOS
Screen.Recording.2023-03-01.at.2.17.43.PM.mov
Android
Screen.Recording.2023-03-01.at.1.55.45.PM.mov