-
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
Apple sign-in #16723
Apple sign-in #16723
Conversation
CLA Assistant Lite bot All contributors have signed the CLA ✍️ ✅ |
I have read the CLA Document and I hereby sign the CLA |
I have read the CLA Document and I hereby sign the CLA |
1 similar comment
I have read the CLA Document and I hereby sign the CLA |
8034923
to
d471996
Compare
1c7ab31
to
fd40209
Compare
I have read the CLA Document and I hereby sign the CLA |
@marcochavezf I'm unable to edit Lizzi's comment so I'll be posting the videos and testing instructions in comments. |
Screenshots/VideosWebLow_Res_Web_AppleSignIn.movMobile Web - ChromeLow_Res_AndroidChrome_AppleSignIn.movMobile Web - SafariLow_Res_iOSSafari_AppleSignIn.movDesktopLow_Res_Desktop_AppleSignIn.moviOSLow_Res_iOS_AppleSignIn.movAndroidLow_Res_Android_AppleSignIn.mov |
TestsiOS
Android
Web
Desktop
Offline testsFeature is not available in offline mode QA StepsSame as Tests |
@marcochavezf @thesahindia One of you needs to 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] |
Ok, I will update the OP with the instructions. |
Since we're rolling this out alongside a new feature allowing unauthenticated users to open public rooms, could you also run through these steps while testing? @cdanwards @rushatgabhane
If you find any issue let me know so I can fix it immediately |
accessibilityRole="button" | ||
accessibilityLabel={props.translate('common.signInWithApple')} | ||
> | ||
<ButtonBase |
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.
nitpick: the cursor should be of type pointer
for the buttons
Screen.Recording.2023-05-31.at.23.52.30.mov
}; | ||
|
||
return ( | ||
<SafeAreaView style={[styles.signInPage]}> |
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.
welcomeHeader={props.translate('welcomeText.getStarted')} | ||
shouldShowWelcomeHeader | ||
> | ||
{props.signInProvider === 'apple' ? <AppleSignIn isDesktopFlow /> : 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.
I think this should be move to CONST
file
...windowDimensionsPropTypes, | ||
}; | ||
|
||
const capitalize = (word) => word.charAt(0).toUpperCase() + word.slice(1); |
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.
why are we capitalizing the first letter of sign in provider?
could we add a comment above this on why we're doing it?
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.
Removing this.
✋ 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/marcochavezf in version: 1.3.43-0 🚀
|
Now that deployed to staging, gonna test web based platforms. At first, apple sign-in button doesn't show at all, which was reported earlier. |
@ayazhussain79 did you run install npm and pod? |
it is working now |
Hi @cdanwards @lindboe the PR was deployed to staging and seems there's an issue with CSP to load the apple script |
@marcochavezf as far as I'm aware, that's a backend change to add the script host ( |
@lindboe @marcochavezf @rushatgabhane @shawnborton We are facing the issue with the login. Should we log a bug, or its expected now? Recording.83.1.mp4 |
Hmm this a bug but I think we should need to revert until we fix the CSP issue. @roryabraham given how the app is hosted for web, I think we'd to wait until NewDot is migrated to our servers to fix the CSP issue, correct? Or do you know if there's way to allow load the apple script for this case? |
Depending on the urgency we can fix the existing CSP in CloudFlare. |
I think we can make this change in the CSP pretty easily, I'll create a PR... |
@marcochavezf https://github.com/Expensify/Cloudflare-Workers/pull/67 FWIW, static things are pretty easy to add to our CSP, but dynamic things (like injecting a nonce into script tags) are harder. The main thing is that we don't currently have any way to locally test our CSP, and we're working on fixing that by moving NewDot web hosting from S3 to our servers and re-implementing the CSP in PHP instead of in a CloudFlare worker where it lives today. |
Perfect, thank you! We'd just need to wait for the PR that updates the CSP in the Cloudflare worker |
CSP was updated 👍 |
button shows now but still not working after apple login - Continue button still does nothing (#16723 (comment)) Screen.Recording.2023-07-20.at.9.47.25.AM.mov |
@cdanwards @lindboe seems the authorization request to the Apple servers is successful, but it seems it's not redirecting/sending the response to the site: Looking at the URL seems we're redirecting to the production site (new.expensiy.com vs staging (staging.new.expensify.com):
|
Linking here an issue where we were using |
@cdanwards @lindboe could you check this issue ^? I wonder if we can move |
🚀 Deployed to staging by https://github.com/marcochavezf in version: 1.3.43-0 🚀
|
This caused a regression, so reverting it #23285 |
🚀 Deployed to staging by https://github.com/marcochavezf in version: 1.3.44-0 🚀
|
🚀 Deployed to production by https://github.com/jasperhuangg in version: 1.3.43-7 🚀
|
🚀 Deployed to production by https://github.com/marcaaron in version: 1.3.44-2 🚀
|
Details
Fixed Issues
$ #7079
PROPOSAL: GH_LINK_ISSUE(COMMENT)
Tests
iOS
Android
Web
Desktop
new.expensify.com/sign-in-with-apple
(It will automatically redirect to home login because of redirects)staging.new.expensify.com/sign-in-with-apple
Continue with Apple
button.Offline tests
Feature is not available in offline mode
QA Steps
Same as Tests
PR 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.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
Web
Mobile Web - Chrome
Mobile Web - Safari
Desktop
iOS
Android