editor.on( 'pastePreProcess', function( event ) { var pastedStr = event.content; if ( pastedStr ) { pastedStr = tinymce.trim( pastedStr.replace( /<[^>]+>/g, '' ) ); if ( /^https?:\/\/\S+$/i.test( pastedStr ) ) { event.content = pastedStr; } } });
editor.$( '*', event.node ).each( function( i, node ) { if ( editor.dom.isBlock( node ) ) { // Insert <br> where the blocks used to be. Makes it look better after pasting in the caption. if ( tinymce.trim( node.textContent || node.innerText ) ) { editor.dom.insertAfter( editor.dom.create( 'br' ), node ); editor.dom.remove( node, true ); } else { editor.dom.remove( node ); } } } );
editor.on( 'pastepreprocess', function( event ) { let pastedStr = event.content; if ( ! editor.selection.isCollapsed() ) { pastedStr = pastedStr.replace( /<[^>]+>/g, '' ); pastedStr = tinymce.trim( pastedStr ); if ( /^(?:https?:)?\/\/\S+$/i.test( pastedStr ) ) { editor.execCommand( 'mceInsertLink', false, { href: editor.dom.decode( pastedStr ), } ); event.preventDefault(); } } } );