Skip to content
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 2023-06-21] [$1000] Update user tooltips to include avatar, display name, and handle #20086

Closed
puneetlath opened this issue Jun 2, 2023 · 37 comments
Assignees
Labels
Awaiting Payment Auto-added when associated PR is deployed to production Daily KSv2 External Added to denote the issue can be worked on by a contributor NewFeature Something to build that is a new item.

Comments

@puneetlath
Copy link
Contributor

puneetlath commented Jun 2, 2023

Today our user tooltips look like this:

image

We want to update them to look like this:

image

Things to note:

  1. The three elements on the tooltip are avatar, display name, handle
  2. Handle is a new field that is being added to the personalDetails object in this back-end PR (Note: That back-end PR got reverted 😅 )
  3. Display name and handle are not always present, so we should gracefully handle showing whichever of the three pieces of information we have available.
Upwork Automation - Do Not Edit
  • Upwork Job URL: https://www.upwork.com/jobs/~01630563c7656399b7
  • Upwork Job ID: 1664697769214058496
  • Last Price Increase: 2023-06-02
@puneetlath puneetlath added External Added to denote the issue can be worked on by a contributor Daily KSv2 NewFeature Something to build that is a new item. labels Jun 2, 2023
@melvin-bot melvin-bot bot changed the title Update user tooltips to include avatar, display name, and handle [$1000] Update user tooltips to include avatar, display name, and handle Jun 2, 2023
@melvin-bot
Copy link

melvin-bot bot commented Jun 2, 2023

Job added to Upwork: https://www.upwork.com/jobs/~01630563c7656399b7

@melvin-bot
Copy link

melvin-bot bot commented Jun 2, 2023

@melvin-bot melvin-bot bot added Weekly KSv2 and removed Daily KSv2 labels Jun 2, 2023
@melvin-bot
Copy link

melvin-bot bot commented Jun 2, 2023

Triggered auto assignment to @trjExpensify (External), see https://stackoverflow.com/c/expensify/questions/8582 for more details.

@melvin-bot melvin-bot bot added Daily KSv2 and removed Weekly KSv2 labels Jun 2, 2023
@melvin-bot
Copy link

melvin-bot bot commented Jun 2, 2023

Triggered auto assignment to Contributor-plus team member for initial proposal review - @fedirjh (External)

@melvin-bot melvin-bot bot added the Help Wanted Apply this label when an issue is open to proposals by contributors label Jun 2, 2023
@melvin-bot
Copy link

melvin-bot bot commented Jun 2, 2023

Triggered auto assignment to @aldo-expensify (External), see https://stackoverflow.com/c/expensify/questions/7972 for more details.

@puneetlath
Copy link
Contributor Author

puneetlath commented Jun 2, 2023

Sorry @trjExpensify @aldo-expensify @mallenexpensify. I'll manage this one.

@jayeshmangwani
Copy link
Contributor

jayeshmangwani commented Jun 2, 2023

Proposal

Please re-state the problem that we are trying to solve in this issue.

We have to update user tooltips to include an avatar, display name, and handle address, right now it is only the email address

What is the root cause of that problem?

This is more like a feature request before we only show the email

What changes do you think we should make in order to solve the problem?

Here at ReportActionItemSingle Component, we are showing actorEmail on ToolTip

<Tooltip text={actorEmail}>
<View>
<Avatar
containerStyles={[styles.actionAvatar]}
source={avatarSource}
/>
</View>
</Tooltip>

here, We need to remove the text prop and need to use renderTooltipContent for rendering Avatar, name and address
like this

        renderTooltipContent={()=> (
            <View>
                <Avatar
                    containerStyles={[styles.actionAvatar]}
                    source={avatarSource}
                />
                <Text>{name}</Text>
                <Text>@{handle}</Text>
            </View>
        )}

We have to handle a similar case for the email address beside Avatar In the Message header, At ReportActionItemSingle Component we have ReportActionItemFragment for rendering the email text and here we are passing tooltipText={actorEmail} and here we have to create a new prop renderTooltipContent for handling renderTooltipContent instead of text in ReportActionItemFragment, here we will pass renderTooltipContent with same Component we have created for ReportActionItemSingle Avatar

{_.map(personArray, (fragment, index) => (
<ReportActionItemFragment
key={`person-${props.action.reportActionID}-${index}`}
fragment={fragment}
tooltipText={actorEmail}
isAttachment={props.action.isAttachment}
isLoading={props.action.isLoading}
isSingleLine

<Tooltip text={props.tooltipText}>
<Text
numberOfLines={props.isSingleLine ? 1 : undefined}
style={[styles.chatItemMessageHeaderSender, props.isSingleLine ? styles.pre : styles.preWrap]}
>
{props.fragment.text}
</Text>
</Tooltip>

Result
upadte-name.mov

What alternative solutions did you explore? (Optional)

none

@Pujan92
Copy link
Contributor

Pujan92 commented Jun 2, 2023

Proposal

Please re-state the problem that we are trying to solve in this issue.

Update user tooltips which shows more details of the user instead of just email/loginid

What is the root cause of that problem?

Currently, we are only passing a string of the actor emailid/loginid for the user tooltip.

What changes do you think we should make in order to solve the problem?

For this new feature, we need to create a new general component called UserDetailsTooltipContent and pass that component within the function for renderTooltipContent prop of Tooltip component wherever we need to update the user tooltip part. UserDetailsTooltipContent component will be responsible for showing the required 3 fields details of the user based on the availability.

Similar kind of behaviour we have for reaction tooltip content here.

<Tooltip
renderTooltipContent={() => (
<ReactionTooltipContent

@puneetlath
Copy link
Contributor Author

@Nikhil-Vats yes!

@Nikhil-Vats
Copy link
Contributor

@puneetlath Thanks, I will work on one then!

@Christinadobrzyn
Copy link
Contributor

Hi! - I think this other GH #20052 is the same issue as this one, could you please take a peek and let me know if you agree?

@fedirjh
Copy link
Contributor

fedirjh commented Jun 2, 2023

@Christinadobrzyn I think issues are different, this is a new feature where we will update existing tooltips , however the other issue #20052 , the tooltip itself is missing

@puneetlath
Copy link
Contributor Author

Love the thorough review @fedirjh. @cloudpresser let's do it.

@melvin-bot melvin-bot bot removed the Help Wanted Apply this label when an issue is open to proposals by contributors label Jun 5, 2023
@melvin-bot
Copy link

melvin-bot bot commented Jun 5, 2023

📣 @cloudpresser You have been assigned to this job by @puneetlath!
Please apply to this job in Upwork and leave a comment on the Github issue letting us know when we can expect a PR to be ready for review 🧑‍💻
Keep in mind: Code of Conduct | Contributing 📖

@puneetlath
Copy link
Contributor Author

@cloudpresser what's your ETA for when you could have a PR up?

@cloudpresser
Copy link
Contributor

@puneetlath I will have a PR tomorrow before 12pm EST.

@melvin-bot melvin-bot bot added the Reviewing Has a PR in review label Jun 6, 2023
@puneetlath
Copy link
Contributor Author

PR is close to merging.

@melvin-bot
Copy link

melvin-bot bot commented Jun 13, 2023

⚠️ Looks like this issue was linked to a Deploy Blocker here

If you are the assigned CME please investigate whether the linked PR caused a regression and leave a comment with the results.

If a regression has occurred and you are the assigned CM follow the instructions here.

If this regression could have been avoided please consider also proposing a recommendation to the PR checklist so that we can avoid it in the future.

@melvin-bot
Copy link

melvin-bot bot commented Jun 13, 2023

⚠️ Looks like this issue was linked to a Deploy Blocker here

If you are the assigned CME please investigate whether the linked PR caused a regression and leave a comment with the results.

If a regression has occurred and you are the assigned CM follow the instructions here.

If this regression could have been avoided please consider also proposing a recommendation to the PR checklist so that we can avoid it in the future.

@melvin-bot melvin-bot bot added Weekly KSv2 Awaiting Payment Auto-added when associated PR is deployed to production and removed Daily KSv2 labels Jun 14, 2023
@melvin-bot melvin-bot bot changed the title [$1000] Update user tooltips to include avatar, display name, and handle [HOLD for payment 2023-06-21] [$1000] Update user tooltips to include avatar, display name, and handle Jun 14, 2023
@melvin-bot melvin-bot bot removed the Reviewing Has a PR in review label Jun 14, 2023
@melvin-bot
Copy link

melvin-bot bot commented Jun 14, 2023

Reviewing label has been removed, please complete the "BugZero Checklist".

@melvin-bot
Copy link

melvin-bot bot commented Jun 14, 2023

The solution for this issue has been 🚀 deployed to production 🚀 in version 1.3.27-7 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 2023-06-21. 🎊

After the hold period is over and BZ checklist items are completed, please complete any of the applicable payments for this issue, and check them off once done.

  • External issue reporter n/a
  • Contributor that fixed the issue @cloudpresser
  • Contributor+ that helped on the issue and/or PR @fedirjh

As a reminder, here are the bonuses/penalties that should be applied for any External issue:

  • Merged PR within 3 business days of assignment - 50% bonus
  • Merged PR more than 9 business days after assignment - 50% penalty

@grgia
Copy link
Contributor

grgia commented Jun 15, 2023

Commented on the PR as well, but I think we need to handle workspace avatars case: https://expensify.slack.com/archives/C049HHMV9SM/p1686821040533159

@melvin-bot melvin-bot bot added Daily KSv2 and removed Weekly KSv2 labels Jun 21, 2023
@puneetlath
Copy link
Contributor Author

@cloudpresser @fedirjh sorry for the delay. Sent you both hiring offers.

@fedirjh
Copy link
Contributor

fedirjh commented Jun 23, 2023

@puneetlath Thanks, accepted.

@melvin-bot melvin-bot bot added the Overdue label Jun 26, 2023
@puneetlath
Copy link
Contributor Author

@cloudpresser friendly bump on accepting the Upwork offer. That way I can get you paid and we can close out this issue. Thanks!

@melvin-bot melvin-bot bot removed the Overdue label Jun 26, 2023
@cloudpresser
Copy link
Contributor

@puneetlath Accepted, thanks

@puneetlath
Copy link
Contributor Author

All paid. Thanks for the effort everyone! Looking forward to your future contributions 💪🏾

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Awaiting Payment Auto-added when associated PR is deployed to production Daily KSv2 External Added to denote the issue can be worked on by a contributor NewFeature Something to build that is a new item.
Projects
None yet
Development

No branches or pull requests