ckeditor5-image-upload-base64
Version:
The development environment of CKEditor 5 – the best browser-based rich text editor.
28 lines (24 loc) • 864 B
JavaScript
/**
* @license Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
*/
/**
* @module clipboard/utils/normalizeclipboarddata
*/
/**
* Removes some popular browser quirks out of the clipboard data (HTML).
*
* @param {String} data The HTML data to normalize.
* @returns {String} Normalized HTML.
*/
export default function normalizeClipboardData( data ) {
return data
.replace( /<span(?: class="Apple-converted-space"|)>(\s+)<\/span>/g, ( fullMatch, spaces ) => {
// Handle the most popular and problematic case when even a single space becomes an nbsp;.
// Decode those to normal spaces. Read more in https://github.com/ckeditor/ckeditor5-clipboard/issues/2.
if ( spaces.length == 1 ) {
return ' ';
}
return spaces;
} );
}