Summary
On iOS, react-native-markdown-display 7.0.2 drops trailing text in a paragraph when the paragraph contains bold spans earlier and later includes a currency value like $3.75.
The persisted content and a plain React Native <Text> render both preserve the full sentence. The disappearance only happens when rendering through react-native-markdown-display.
Environment
react-native-markdown-display: 7.0.2
- React Native: 0.81.5
- Expo SDK: 54
- Platform observed: iOS
Repro content
Maison Benoit is a French artisanal bakery in **Danville, CA** (East Bay) — not a restaurant per se, but it made a serious splash. Owner Benoît Vialle left careers at Microsoft and the wine industry to open it, and his pastry chef Lucile Espeillac came from Paris' La Tour d'Argent. They just won the **2025 Best Croissant San Francisco** competition, beating out 349 contenders including perennial favorites like Arsicault. Their croissants are $3.75.
Located at 402 Railroad Ave, Danville — open 7 AM to 4 PM daily. Worth the drive if you're ever out that way.
Expected behavior
The first paragraph should end with:
Their croissants are $3.75.
Actual behavior
The first paragraph renders as if it ends at:
The trailing phrase are $3.75. is not visible. The next paragraph then starts normally.
Things tried / ruled out
- Rendering the same content as plain React Native
<Text> shows the missing phrase correctly.
- The app-side parsed string still includes
Their croissants are $3.75..
- Escaping
$ before passing markdown did not fix it.
- Adding styles for
textgroup / text like width: '100%' and flexShrink: 1 did not fix it.
- Overriding
paragraph to render as <Text> instead of the default <View> did not fix it.
Notes
This appears related to the library's inline text grouping / nested <Text> rendering path on iOS, especially after previous bold spans in the same paragraph. We worked around it by replacing this library on our chat surface with a small purpose-built renderer that treats currency as ordinary text.
Summary
On iOS,
react-native-markdown-display7.0.2 drops trailing text in a paragraph when the paragraph contains bold spans earlier and later includes a currency value like$3.75.The persisted content and a plain React Native
<Text>render both preserve the full sentence. The disappearance only happens when rendering throughreact-native-markdown-display.Environment
react-native-markdown-display: 7.0.2Repro content
Expected behavior
The first paragraph should end with:
Actual behavior
The first paragraph renders as if it ends at:
The trailing phrase
are $3.75.is not visible. The next paragraph then starts normally.Things tried / ruled out
<Text>shows the missing phrase correctly.Their croissants are $3.75..$before passing markdown did not fix it.textgroup/textlikewidth: '100%'andflexShrink: 1did not fix it.paragraphto render as<Text>instead of the default<View>did not fix it.Notes
This appears related to the library's inline text grouping / nested
<Text>rendering path on iOS, especially after previous bold spans in the same paragraph. We worked around it by replacing this library on our chat surface with a small purpose-built renderer that treats currency as ordinary text.