Skip to content

Conversation

@dt-iohk
Copy link
Contributor

@dt-iohk dt-iohk commented Dec 1, 2025

Description

  • Handles markdown unknown embeds in VoicesRichText (divider).
  • Adds on the fly recognition for the hr markdown element (---).

Note the following limitations:

  • The flutter_quill has limited built-in support for recognizing formatting patterns on the fly. This means when the user will enter i.e. >> it will not immediately appear as a blockquote. The user must save it, open in edit again and only then this renders as a blockquote. The reason for this behavior is that the MarkdownCodec from the markdown_quill is only run when clicking the Edit button. flutter_quill has an API for recognizing formatting patterns but it's currently very limited and can only handle some limited cases (see: SpaceShortcutEvent).
  • The toolbar header inside of the VoicesRichText editor has only handful of formatting styles but many many more are supported by flutter_quill and markdown_quill as listed in the Examples below.

Related Issue(s)

Part of #3746

Screenshots

Divider support:

Screen.Recording.2025-12-01.at.20.10.59.mov

All supported markdown styles and attributes:

Screen.Recording.2025-12-01.at.20.15.36.mov

Examples

# Heading 1
## Heading 2
### Heading 3
#### Heading 4
##### Heading 5
###### Heading 6

---

# Text Formatting

**Bold text**

__Bold text__

*Italic text*

_Italic text_

***Bold italic***

___Bold italic___

~~Strikethrough~~

`Inline code`

==Highlight (not supported)==

Line with a break  
Second line

[Link to external website](https://google.com)

---

# Blockquotes

> This is a quote.
>> This is a nested quote.

---

# Lists

## Unordered lists

- Item A
- Item B
  - Sub item B1
  - Sub item B2
* Another style
+ Another style

## Ordered lists

1. First item
2. Second item
3. Third item

Auto-numbering:
1. Item
1. Item
1. Item

---

# Task Lists (not supported)

- [ ] Not done
- [x] Done

---

# Code Blocks

## Fenced code block

```dart
void main() {
  print("Hello, world!");
}

Not supported:

  • tables
  • checkboxes [ ]
  • highlights == some text ==

Please confirm the following checks

  • My code follows the style guidelines of this project
  • I have performed a self-review of my code
  • I have commented my code, particularly in hard-to-understand areas
  • I have made corresponding changes to the documentation
  • My changes generate no new warnings
  • I have added tests that prove my fix is effective or that my feature works
  • New and existing unit tests pass locally with my changes
  • Any dependent changes have been merged and published in downstream module

@dt-iohk dt-iohk self-assigned this Dec 1, 2025
@dt-iohk dt-iohk added this to Catalyst Dec 1, 2025
@dt-iohk dt-iohk added ux/ui UX/UI related issues dart Pull requests that update Dart code squad: face Frontend Catalyst Experience Team labels Dec 1, 2025
@dt-iohk dt-iohk moved this from New to 👀 In review in Catalyst Dec 1, 2025
@github-actions
Copy link
Contributor

github-actions bot commented Dec 1, 2025

📚 Docs Preview

The docs for this PR can be previewed at the following URL:

https://docs.dev.projectcatalyst.io/voices/fix/voices-rich-text-markdown-fixes-3746

@dt-iohk dt-iohk added the review me PR is ready for review label Dec 1, 2025
@dt-iohk dt-iohk merged commit 5656973 into main Dec 2, 2025
49 checks passed
@dt-iohk dt-iohk deleted the fix/voices-rich-text-markdown-fixes-3746 branch December 2, 2025 10:11
@github-project-automation github-project-automation bot moved this from 👀 In review to ✅ Done in Catalyst Dec 2, 2025
@damian-molinski damian-molinski added the needs user documentation Issue requires updates to user-facing documentation. label Dec 3, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dart Pull requests that update Dart code needs user documentation Issue requires updates to user-facing documentation. review me PR is ready for review squad: face Frontend Catalyst Experience Team ux/ui UX/UI related issues

Projects

Status: ✅ Done

Development

Successfully merging this pull request may close these issues.

4 participants