Content Editor toolbar
What does this MR do?
This MR contains an initial implementation of the Content Editor toolbar. The toolbar contains the following actions:
- Bold text
- Italic
- Inserting a quote
- Inserting a bullet list
- Inserting an ordered list
This MR does not intend to add all the actions we expect to include in the toolbar. In upcoming MRs, we will add other controls for inserting and editing links, images, etc.
Design notes
TipTap Editor class contains all the state of the editor. An Editor’s state contains, among other things, the following information:
- Cursor position
- Current selection
- Format applied to certain parts of the text
The ToolbarButton
component is just a presentation component that queries the editor model to determine when a piece of text has format related to the button’s content type. The button can also execute commands but this is optional
How to test
The Content Editor is not included in an existing feature yet. However, the following patch allows to test the editor when editing a Wiki page:
Screenshots (strongly suggested)
Does this MR meet the acceptance criteria?
Conformity
-
📋 Does this MR need a changelog?-
I have included a changelog entry. -
I have not included a changelog entry because _____.
-
-
Documentation (if required) -
Code review guidelines -
Merge request performance guidelines -
Style guides -
Database guides -
Separation of EE specific content
Availability and Testing
-
Review and add/update tests for this feature/bug. Consider all test levels. See the Test Planning Process. -
Tested in all supported browsers -
Informed Infrastructure department of a default or new setting change, if applicable per definition of done
Security
If this MR contains changes to processing or storing of credentials or tokens, authorization and authentication methods and other items described in the security review guidelines:
-
Label as security and @ mention @gitlab-com/gl-security/appsec
-
The MR includes necessary changes to maintain consistency between UI, API, email, or other methods -
Security reports checked/validated by a reviewer from the AppSec team
Related to #325741 (closed)