
//import { Node, Extension, Plugin } from '@tiptap/vue-3';
//import { chainCommands, exitCode } from 'prosemirror-commands';

//export class HardBreak extends Node
//{
//  get name()
//  {
//    return 'br'
//  }

//  get schema()
//  {
//    return {
//      inline: true,
//      group: 'inline',
//      selectable: false,
//      parseDOM: [
//        { tag: 'br' },
//      ],
//      toDOM: () => ['br'],
//    }
//  }

//  keys({ type })
//  {
//    const command = chainCommands(exitCode, (state, dispatch) =>
//    {
//      dispatch(state.tr.replaceSelectionWith(type.create()).scrollIntoView())
//      return true
//    })
//    return {
//      'Enter': command
//    }
//  }
//}


//export class MaxSize extends Extension
//{
//  get name()
//  {
//    return 'maxSize'
//  }

//  get defaultOptions()
//  {
//    return {
//      maxSize: null
//    }
//  }

//  get plugins()
//  {
//    return [
//      new Plugin({
//        appendTransaction: (transactions, oldState, newState) =>
//        {
//          const max = this.options.maxSize;
//          const oldLength = oldState.doc.content.size;
//          const newLength = newState.doc.content.size;

//          if (max && newLength > max && newLength > oldLength)
//          {
//            let newTr = newState.tr;
//            newTr.insertText('', max + 1, newLength);
//            return newTr;
//          }
//        }
//      })
//    ]
//  }
//}