You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							52 lines
						
					
					
						
							1.4 KiB
						
					
					
				
			
		
		
	
	
							52 lines
						
					
					
						
							1.4 KiB
						
					
					
				| import { Node, mergeAttributes, wrappingInputRule } from '@tiptap/core';
 | |
| 
 | |
| const inputRegex = /^\s*>\s$/;
 | |
| const Blockquote = Node.create({
 | |
|     name: 'blockquote',
 | |
|     addOptions() {
 | |
|         return {
 | |
|             HTMLAttributes: {},
 | |
|         };
 | |
|     },
 | |
|     content: 'block+',
 | |
|     group: 'block',
 | |
|     defining: true,
 | |
|     parseHTML() {
 | |
|         return [
 | |
|             { tag: 'blockquote' },
 | |
|         ];
 | |
|     },
 | |
|     renderHTML({ HTMLAttributes }) {
 | |
|         return ['blockquote', mergeAttributes(this.options.HTMLAttributes, HTMLAttributes), 0];
 | |
|     },
 | |
|     addCommands() {
 | |
|         return {
 | |
|             setBlockquote: () => ({ commands }) => {
 | |
|                 return commands.wrapIn(this.name);
 | |
|             },
 | |
|             toggleBlockquote: () => ({ commands }) => {
 | |
|                 return commands.toggleWrap(this.name);
 | |
|             },
 | |
|             unsetBlockquote: () => ({ commands }) => {
 | |
|                 return commands.lift(this.name);
 | |
|             },
 | |
|         };
 | |
|     },
 | |
|     addKeyboardShortcuts() {
 | |
|         return {
 | |
|             'Mod-Shift-b': () => this.editor.commands.toggleBlockquote(),
 | |
|         };
 | |
|     },
 | |
|     addInputRules() {
 | |
|         return [
 | |
|             wrappingInputRule({
 | |
|                 find: inputRegex,
 | |
|                 type: this.type,
 | |
|             }),
 | |
|         ];
 | |
|     },
 | |
| });
 | |
| 
 | |
| export { Blockquote, Blockquote as default, inputRegex };
 | |
| //# sourceMappingURL=tiptap-extension-blockquote.esm.js.map
 |