UNPKG

ckeditor5-image-upload-base64

Version:

The development environment of CKEditor 5 – the best browser-based rich text editor.

66 lines (57 loc) 1.78 kB
/** * @license Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved. * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license */ import CKEditorError from '@ckeditor/ckeditor5-utils/src/ckeditorerror'; import setDataInElement from '@ckeditor/ckeditor5-utils/src/dom/setdatainelement'; /** * @module core/editor/utils/elementapimixin */ /** * Implementation of the {@link module:core/editor/utils/elementapimixin~ElementApi}. * * @mixin ElementApiMixin * @implements module:core/editor/utils/elementapimixin~ElementApi */ const ElementApiMixin = { /** * @inheritDoc */ updateSourceElement() { if ( !this.sourceElement ) { /** * Cannot update the source element of a detached editor. * * The {@link ~ElementApi#updateSourceElement `updateSourceElement()`} method cannot be called if you did not * pass an element to `Editor.create()`. * * @error editor-missing-sourceelement */ throw new CKEditorError( 'editor-missing-sourceelement: Cannot update the source element of a detached editor.', this ); } setDataInElement( this.sourceElement, this.data.get() ); } }; export default ElementApiMixin; /** * Interface describing an editor that replaced a DOM element (was "initialized on an element"). * * Such an editor should provide a method to * {@link module:core/editor/utils/elementapimixin~ElementApi#updateSourceElement update the replaced element with the current data}. * * @interface ElementApi */ /** * The element on which the editor has been initialized. * * @readonly * @member {HTMLElement} #sourceElement */ /** * Updates the {@link #sourceElement editor source element}'s content with the data. * * @method #updateSourceElement */