MarkdownEditor
MdEditor

BitMarkdownEditor is a simple markdown editor like the GitHub editor.

Notes

To use this component, you need to install the
Bit.BlazorUI.Extras
nuget package, as described in the Optional steps of the Getting started page.

Introduction

Just like the simple MD editor used in GitHub, our MarkdownEditor has simple but useful features that you can start discovering them here.
Start typing below in the editor and see the result in real-time:

BitMarkdownEditor in action

  • Ctrl+H => Heading
  • Ctrl+B => Bold
  • Ctrl+I => Italic
  • Ctrl+L => Link
  • Ctrl+P => Picture/Image
  • Ctrl+Q => Quote
  • auto handling ordered/unordered lists
  • auto handling Ctrl+X and Ctrl+C

Missing features:

  1. Undo/Redo
  2. Multi-level unordered lists
  3. Tab to go deeper list level

Start typing here...

Usage

Basic
The simplest usage of a BitMarkdownEditor is without any specific configuration. You can start typing and discover it's basic features.

GetValue
Using GetValue public api of the BitMarkdownEditor you can have access to the current value of it without creating any dotnet object that is the most optimized way to have the content of the editor.

OnChange
By utilizing the OnChange and DefaultValue parameters you can have another way to access the content of the editor.

Binding
You can use the two-way bound parameter named Value (like any normal input component) to have access to the editor content or set its value.

Advanced
In this example you can see all advanced features of the BitMarkdownEditor in shaping an editor very similar to the github one.

| |

API

BitMarkdownEditor parameters
Name
Type
Default value
Description
DefaultValue string? null The default text value of the editor to use at initialization.
OnChange EventCallback<string?> Callback for when the editor value changes.
Value string? null The two-way bound text value of the editor.
BitMarkdownEditor public members
Name
Type
Default value
Description
GetValue Func<ValueTask<string>> Returns the current value of the editor.
Run Func<BitMarkdownEditorCommand, ValueTask> Runs a specific command on the editor.
Add Func<string, BitMarkdownEditorContentType, ValueTask> Adds a specific content to the editor.
BitComponentBase parameters
Name
Type
Default value
Description
AriaLabel string? null The aria-label of the control for the benefit of screen readers.
Class string? null Custom CSS class for the root element of the component.
Dir BitDir? null Determines the component direction.
HtmlAttributes Dictionary<string, object> new Dictionary<string, object>() Capture and render additional attributes in addition to the component's parameters.
Id string? null Custom id attribute for the root element. if null the UniqueId will be used instead.
IsEnabled bool true Whether or not the component is enabled.
Style string? null Custom CSS style for the root element of the component.
Visibility BitVisibility BitVisibility.Visible Whether the component is visible, hidden or collapsed.
BitComponentBase public members
Name
Type
Default value
Description
UniqueId Guid Guid.NewGuid() The readonly unique id of the root element. it will be assigned to a new Guid at component instance construction.
RootElement ElementReference The ElementReference of the root element.
BitMarkdownEditorCommand enum
Name
Value
Description
Heading 0 Makes the current line a heading.
Bold 1 Makes the current selection text bold.
Italic 2 Makes the current selection text italic.
Link 3 Makes the current selection text a link.
Picture 4 Makes the current selection text an image.
Quote 5 Makes the current selection text a quote message.
Code 6 Makes the current selection text a code phrase.
CodeBlock 7 Makes the current selection text a code block.
BitMarkdownEditorContentType enum
Name
Value
Description
Inline 0 Inline content type.
Block 1 Block content type.
Wrap 2 Wrap content type.
BitVisibility enum
Name
Value
Description
Visible 0 The content of the component is visible.
Hidden 1 The content of the component is hidden, but the space it takes on the page remains (visibility:hidden).
Collapsed 2 The component is hidden (display:none).
BitDir enum
Name
Value
Description
Ltr 0 Ltr (left to right) is to be used for languages that are written from the left to the right (like English).
Rtl 1 Rtl (right to left) is to be used for languages that are written from the right to the left (like Arabic).
Auto 2 Auto lets the user agent decide. It uses a basic algorithm as it parses the characters inside the element until it finds a character with a strong directionality, then applies that directionality to the whole element.

Feedback

You can give us your feedback through our GitHub repo by filing a new Issue or starting a new Discussion.

Or you can review / edit this page on GitHub.

Or you can review / edit this component on GitHub.
  • On this page