-
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 2023-04-26] [$2000] New Room Dropdown does not properly reflect multiple spaces in the New Room Modal #16329
Comments
Triggered auto assignment to @jliexpensify ( |
Bug0 Triage Checklist (Main S/O)
|
@alex-mechler I wanted to ask about this as I'm on v1.2.87-0. This is what I see when I input multiple spaces between words: I also don't have a DEV environment - can I actually test this? |
When #15646 is actually deployed to staging, you should see multiple spaces in the workspace name. I created this issue because we know we needed the follow up after the pr was merged. With the next app deploy you should be able to test this on staging |
Awesome, thanks for the context - will check it out once it's deployed! |
Job added to Upwork: https://www.upwork.com/jobs/~018f5eeb68bbcf95bc |
Current assignee @jliexpensify is eligible for the External assigner, not assigning anyone new. |
Triggered auto assignment to Contributor-plus team member for initial proposal review - @0xmiroslav ( |
Current assignee @alex-mechler is eligible for the External assigner, not assigning anyone new. |
ProposalProblem StatementIn the current React Native application, when a user updates the workspace name with multiple consecutive spaces and opens the modal/dropdown for creating a new room, the workspace name is displayed with only a single space instead of the intended multiple consecutive spaces. The root cause of this problem is that HTML automatically collapses multiple consecutive spaces into a single space when rendering text. As a result, the workspace name with multiple spaces is not being displayed as intended in the modal/dropdown. Proposed SolutionTo solve this issue, we should wrap the workspace name text in a element and apply the white-space: pre-wrap style. This style will preserve the white space in the text, including multiple consecutive spaces.
This solution ensures that the workspace name is displayed with multiple consecutive spaces as intended in the modal/dropdown. An alternative solution could involve using non-breaking spaces ( ) to replace multiple consecutive spaces. However, this approach requires additional processing of the input text and might introduce unnecessary complexity to the codebase. |
ProposalPlease re-state the problem that we are trying to solve in this issue.New Room Dropdown does not properly reflect multiple spaces in the New Room Modal What is the root cause of that problem?select.option will filter consecutive spaces What changes do you think we should make in order to solve the problem?App/src/components/Picker/Picker.js Lines 194 to 195 in ebc03db
- // We add a text color to prevent white text on white background dropdown items on Windows
- items={_.map(this.props.items, item => ({...item, color: themeColors.pickerOptionsTextColor}))}
+ items={_.map(this.props.items, item => ({
+ ...item,
+ // We add a text color to prevent white text on white background dropdown items on Windows
+ color: themeColors. pickerOptionsTextColor,
+ // We replace normal space to unicode consecutive space to display consecutive space in browser, it's also support native parse
+ label: item.label.replace(/ /g, '\u00A0')
+ }))} We replace it with I tried ['\n', '\t', '\r', ';', '<', '&'], but I have not found that other characters need to be replaced. What alternative solutions did you explore? (Optional)not yet |
2 proposals in review |
@hellohublot That was a solution we tried in the original issue. It did work, but we removed it because it felt rather hacky. We would like to use a less hacky solution if possible. See #15646 (comment) for the discussion on that |
@dayyad thanks for your proposal but root cause is not correct. Solution is also not considerable. @hellohublot same feedback as @alex-mechler Looking for proposals with non-hacky solution... |
I've added a temporary solution to the upstream PR here: Expensify/react-native-picker-select#9 @alex-mechler Let me know if this is enough to close this issue or should we wait for the PR at @react-native-picker/picker to be merged. Thanks! |
Requested some changes to the temporary solution. Once we get that merged, can you also make the required changes in the |
I've merged the temporary solution PR. Can you spin up a App PR to update the package we are using? |
@alex-mechler Thank you. I just opened a PR #17456 . |
|
The solution for this issue has been 🚀 deployed to production 🚀 in version 1.3.1-3 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-04-26. 🎊 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.
As a reminder, here are the bonuses/penalties that should be applied for any External issue:
|
BugZero Checklist: The PR fixing this issue has been merged! The following checklist (instructions) will need to be completed before the issue can be closed:
|
Summarising payments here: (also @alex-mechler if you have any thoughts on this one, seeing as I'm taking over from JLi) Also, want to make sure there's nothing happening with this PR here that is still open? |
@OlimpiaZurek is from CallStack, so they will be paid through that https://stackoverflowteams.com/c/expensify/questions/15868/15869#15869
That's an upstream PR where we are held on the maintainer of that library reviewing that pr. We have fixed the issue in Expensify's code, so we should not be waiting on that |
Cool - Do we have a shortlist somewhere of who is with Callstack? I'll still need help with @0xmiroslav's payment though, @alex-mechler 🙏 |
https://docs.google.com/document/d/1BvohU05MTaHnjOD_vwJv_aqDAirv-ChkyRnKCAvOVyQ/edit#heading=h.et1hcenskp8 |
Okay so @0xmiroslav - you're being compensated $2000? What I'm questioning is the bonus timeframe - are we saying this does not apply because a Callstack engineer created a PR? |
I haven't found any discussion related to timeline bonus/penalty when agency assigned, but I believe it's flatten fee regardless of PR merge timeline. |
Agency-jobs are eligible for timeline bonuses. The only part that's different than other issues is we don't pay agency-contributors via Upwork, most-everything else should be the same (well... the other difference is agency-contributors don't need to submit a proposal before being hired either (they do before submitting a PR though)). |
Okay I'm going to leave the payment as is for now, (no bonus but no penalty either) as it's not clear when the first PR was merged vs contributor assigned. |
Offer sent, @0xmiroslav! |
@sophiepintoraetz accepted offer. thanks |
Coming from #15646 (comment)
Action Performed:
New Room
Expected Result:
The displayed name should show multiple spaces, same as elsewhere
Actual Result:
The display name shows a single space
Workaround:
N/A, its simply a display issue
Platforms:
Which of our officially supported platforms is this issue occurring on?
Version Number: v1.2.84-1 DEV
Reproducible in staging?: Y
Reproducible in production?: Y
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers): N/a
Logs: https://stackoverflow.com/c/expensify/questions/4856 N/a
Notes/Photos/Videos: Any additional supporting documentation
Expensify/Expensify Issue URL: N/a
Issue reported by: @tienifr
Slack conversation: N/a #15646 (comment)
View all open jobs on GitHub
Upwork Automation - Do Not Edit
The text was updated successfully, but these errors were encountered: