App: [HOLD for payment 2023-10-24] [$1000] Chat - Edit code block inside strike-through moves edited label down

If you haven’t already, check out our contributing guidelines for onboarding and email contributors@expensify.com to request to join our Slack channel!


Action Performed:

  1. Go to any chat
  2. Paste this in composer ->
    image
  3. Click send -> Edit that message and add space in between Test
  4. Save
  5. Again edit same message and put Backticks (`) and tild (~) together and Hit save

Expected Result:

Edited label should maintain position

Actual Result:

Edited label goes down on editing code block inside strike-through

Workaround:

Unknown

Platforms:

Which of our officially supported platforms is this issue occurring on?

  • Android / native
  • Android / Chrome
  • iOS / native
  • iOS / Safari
  • MacOS / Chrome / Safari
  • MacOS / Desktop

Version Number: 1.3.51.0

Reproducible in staging?: Yes

Reproducible in production?: Yes

If this was caught during regression testing, add the test name, ID and link from TestRail:

Email or phone of affected tester (no customers):

Logs: https://stackoverflow.com/c/expensify/questions/4856

Notes/Photos/Videos: Any additional supporting documentation

https://github.com/Expensify/App/assets/43996225/592c3e91-98d4-4484-be6f-d2abae2d6074

https://github.com/Expensify/App/assets/43996225/7bad3b7f-de7f-44ba-baf7-14314c6226d6

Expensify/Expensify Issue URL:

Issue reported by: @DinalJivani

Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1690918812009579

View all open jobs on GitHub

Upwork Automation - Do Not Edit
  • Upwork Job URL: https://www.upwork.com/jobs/~01e64b87477a7b36f2
  • Upwork Job ID: 1698540341553090560
  • Last Price Increase: 2023-10-10
  • Automatic offers:
    • Krishna2323 | Contributor | 27140365
    • DinalJivani | Reporter | 27140369

About this issue

  • Original URL
  • State: closed
  • Created a year ago
  • Comments: 88 (48 by maintainers)

Most upvoted comments

Regression Test Proposal

  1. Open any report
  2. Paste ~```Code```~ into the composer and send the message
  3. Verify that the code block text doesn’t get strike-through line
  4. Verify that there’s a ~ symbol above and below the code block image

Do we agree 👍 or 👎

@trjExpensify I have received offer of 50 instead of 250. Please check and update.

@mallenexpensify will likely take care of it when we’re ready for payments.

@Krishna2323 do not needlessly bump/@mention Expensifiers please

d’oh, sorry about that @DinalJivani , I was following the auto-amount and should have checked the date the bug was reported. I bonused you $200 and updated the comment above so that it’s correct.

Just noting that the PR in expensify-common repo was merged within 2 days and PR in this repo was approved and reviewed by @eVoloshchak within 3 working days of assignment.

@eVoloshchak, PR for hash update, pls review, IOS native and Android Native demo will be updated in few minutes.

Yeah, Alex and I were talking about that in the other issue and I agree. He’s going to dismantle that tracker, so feel free to move forward here.

whenever code blocks are used with three ticks the codeblock markdown should take precedence over other markdown since it’s intended purpose is to be a block of characters in it’s own line. If we agree on that, then the bug would be that having the ~ before the codeblock should show the same way at the bold and the italic options above do.

Agree with this, it should be consistent with how bold and italic are handled

@Krishna2323’s proposal looks good to me There is an inconsistency with how markdown is shown when editing a message image But the same happens for bold and italic, so it’s unrelated to @Krishna2323’s changes (and is intentional according to this comment)

🎀👀🎀 C+ reviewed!

I did some more testing on desktop and here’s how bold and italic show image

Which makes me think that, whenever code blocks are used with three ticks the codeblock markdown should take precedence over other markdown since it’s intended purpose is to be a block of characters in it’s own line. If we agree on that, then the bug would be that having the ~ before the codeblock should show the same way at the bold and the italic options above do… right? (sorry if this was discussed before, at some point I was thinking single tick for markdown and not three ticks

@Krishna2323 This was discussed in Slack thread.

And this issue was reported later than current issue. Not sure what will be next Step 😅 Let’s wait for team to review

I agree with @yh-0218’s assessment of the root cause, this is indeed caused by a <del> tag, however

  • I’m not sure if applyStrikethrough is the right place to apply the fix, could we do that in htmlToMarkdownRules?
  • Most importantly, why does it work incorrectly only on native platforms? (verified Android also has this problem). Is this an issue with react-native-render-html itself? If so, I think it’s best we fix it in their repo

Can we get a new CME here @Expensify/bug-zero as @mallenexpensify is OOO?

Also, I’m unassigning myself to due low bandwidth, Please assign a new C+ plus here, thanks!

cc: @anmurali