-
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
[HOLD for payment 2024-08-07] [$250] Add deep links for CTA links #45350
Comments
Triggered auto assignment to @dylanexpensify ( |
|
Job added to Upwork: https://www.upwork.com/jobs/~01967a3704af99de82 |
Triggered auto assignment to Design team member for new feature review - @dannymcclain ( |
Triggered auto assignment to Contributor-plus team member for initial proposal review - @ikevin127 ( |
This issue is frontend implementation for Harpoons for NewDot, specifically for this internal issue. |
Looks like nothing in the UI is actually changing for this right? I probably don't need to be assigned since this "new feature" basically has nothing to do with design—but I will wait for confirmation! |
ProposalPlease re-state the problem that we are trying to solve in this issue.Add deep links for CTA links What is the root cause of that problem?This is a new feature What changes do you think we should make in order to solve the problem?We can use the same implementation as we do on the concierge page. For each track-expense and submit expense create a navigation page with the corresponding route And then on this page create a Here is an example for track-expense page
What alternative solutions did you explore? (Optional) |
Proposal: Add Deep Links for CTA Links on Expensify Problem Statement: The current implementation of CTA links on Expensify does not provide deep links, resulting in a poor user experience. Users are not able to navigate directly to the relevant section of the report. Root Cause: The lack of deep links in the CTA links is due to the absence of a proper linking mechanism. Proposed Solution: To resolve this issue, we recommend adding deep links to the CTA links on Expensify. This can be achieved by: Modifying the CTA link generation: Update the CTA link generation logic to include deep links that point to the relevant section of the report. Code: interface CTALinkProps { const CTALink: React.FC = ({ reportId, sectionId, children }) => { return ( export default CTALink; const Report = () => { ReportView Expenses View Income ); }; export default Report; export default CtaLink; We explored the following alternative solutions: Using a URL parameter: Pass the section ID as a URL parameter, allowing the report to navigate to the desired section. |
@nkdengineer Thanks for your proposal. I implementing the solution you proposed locally for testing purposes and while the redirect part works, when submitting the track expense -> the API call fails (responding with Additionally, your if (isUnmounted.current) {
return;
} in order to get the redirect working and open the routed RHP. In order for me to move on with assignment here I need proof of at least one of the deep link routes working as expected, functionality wise as well - meaning the whole track expense flow working as it would when triggered from the FAB button. |
@kabeer95 Thanks for your proposal. To be reviewed by Contributor+, please update your proposal comment using the proposal template. |
ProposalPlease re-state the problem that we are trying to solve in this issue.Add deep links for CTA links What is the root cause of that problem?new feature What changes do you think we should make in order to solve the problem?Create a new route for for
Then for
we need to create new function
Or we can modify Have created a branch for the proof, please check and test this branch RESULT track-expense, the user already logged in New-Expensify.9.mp4track-expense, the user not logged in New-Expensify.11.mp4Additionally, if we want to display
What alternative solutions did you explore? (Optional) |
@ikevin127 I created a test branch here. |
For track-expense we should find the self DM instead of generating a new reportID because only selft can create track-expense. I updated proposal #45350 (comment). |
Hi @nyomanjyotisa, is the issue still happening? |
The latest main on desktop Chrome works perfectly, but the issue persists on mWeb Chrome. Got not found page after login Expensify-magic-sign-in-code-138578---jyotisa1616-gmail-com---Gmail.mp4 |
@nyomanjyotisa That's fine - you can safely open the PR if that's the only issue - as it's expected to get the Not Found page when using ngrok and this happens regardless of your changes, happens to everybody that uses tunneling - including on adhoc build since we're not using the dev / staging / prod domains when we tunnel. To test this without ngrok (on iOS only) you can setup the iPhone Simulator by running Note On your PR author checklist, for Android: mWeb just post the video even if it's showing the Not Found page as reviewers know that's not a bug and just a tunneling issue. |
Ongoing |
@marcochavezf mind giving us a quick update when you have a free moment 🙇♂️ ❤️ |
PR opened @ikevin127 And for this problem I believe we should handle it in another issue, since it gives the same error when we create an expense from the FAB button. It only works without error if we submit expense to user or workspace that are in the Recents list, or user that we never start a chat: -1-New-Expensify.8.mp4 |
@marcochavezf I think it's safe to move forward with the PR review despite this issue mentioned in #45350 (comment) (above) What do you think ? Update: After additional testing, turns out the issue is only happening locally due to StrictMode. I figured this out by testing the submit expense flow on staging and noticed that it's not happening there. Next, I went on local dev and set Therefore this shouldn't be a concern since it's only happening on local dev due to StrictMode, and the flow would work without any issues once deployed on staging / production. |
Apologies for the delay here. The PR has been merged! |
|
The solution for this issue has been 🚀 deployed to production 🚀 in version 9.0.14-6 and is now subject to a 7-day regression period 📆. Here is the list of pull requests that resolve this issue: If no regressions arise, payment will be issued on 2024-08-07. 🎊 For reference, here are some details about the assignees on this issue:
|
BugZero Checklist: The PR adding this new feature has been merged! The following checklist (instructions) will need to be completed before the issue can be closed:
|
Regression Test ProposalA. Track expense deep link
B. Submit expense deep link
Do we agree 👍 or 👎. |
Payment coming up! |
This comment has been minimized.
This comment has been minimized.
Payment summary:
Please apply or request! |
@ikevin127 payment sent, @nyomanjyotisa offer sent! |
offer accepted |
Done! |
If you haven’t already, check out our contributing guidelines for onboarding and email [email protected] to request to join our Slack channel!
We want to add a couple of deep links for the following actions, where each link will open the corresponding views:
/track-expense
/submit-expense
Potentially, we'd want to create something like a
/concierge
deep link, where we create a component that navigates to the Concierge chat. In this case, we would start the corresponding money request action usingIOU.startMoneyRequest
.View all open jobs on GitHub
Upwork Automation - Do Not Edit
Issue Owner
Current Issue Owner: @dylanexpensifyThe text was updated successfully, but these errors were encountered: