All files / app/assets/javascripts/content_editor/extensions description_list.js

100% Statements 4/4
100% Branches 0/0
100% Functions 3/3
100% Lines 4/4

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23                  86x       1x       86x   86x      
import { Node, mergeAttributes, wrappingInputRule } from '@tiptap/core';
 
export default Node.create({
  name: 'descriptionList',
  // eslint-disable-next-line @gitlab/require-i18n-strings
  group: 'block list',
  content: 'descriptionItem+',
 
  parseHTML() {
    return [{ tag: 'dl' }];
  },
 
  renderHTML({ HTMLAttributes }) {
    return ['ul', mergeAttributes(HTMLAttributes, { class: 'dl-content' }), 0];
  },
 
  addInputRules() {
    const inputRegex = /^\s*(<dl>)$/;
 
    return [wrappingInputRule({ find: inputRegex, type: this.type })];
  },
});