Piotr Jasiun 10 éve
szülő
commit
e7cdeee2a7

+ 1 - 1
packages/ckeditor5-engine/src/treeview/element.js

@@ -57,7 +57,7 @@ CKEDITOR.define( [ 'utils', 'treeview/Node' ], ( utils, Node ) => {
 				nodes = [ nodes ];
 			}
 
-			for ( node of nodes ) {
+			for ( let node of nodes ) {
 				node.parent = this;
 
 				this._children.splice( index, 0, node );

+ 1 - 1
packages/ckeditor5-engine/src/treeview/node.js

@@ -5,7 +5,7 @@
 
 'use strict';
 
-CKEDITOR.define( [ 'treeview/Renderer' ], ( Renderer ) => {
+CKEDITOR.define( [ 'treeview/Renderer', 'ckeditorerror' ], ( Renderer, CKEditorError ) => {
 	class Node {
 		constructor() {
 			this.parent = null;

+ 3 - 3
packages/ckeditor5-engine/src/treeview/observer/mutationobserver.js

@@ -42,8 +42,8 @@ CKEDITOR.define( [ 'treeview/observer/observer' ], ( Observer ) => {
 			this._mutationObserver.disconnect();
 		}
 
-		_onMutations( mutations ) {
-
-		}
+		// _onMutations( mutations ) {}
 	}
+
+	return MutationObserver;
 } );

+ 2 - 0
packages/ckeditor5-engine/src/treeview/observer/observer.js

@@ -20,4 +20,6 @@ CKEDITOR.define( [], () => {
 		 * @method detach
 		 */
 	}
+
+	return Observer;
 } );

+ 19 - 16
packages/ckeditor5-engine/src/treeview/renderer.js

@@ -5,16 +5,19 @@
 
 'use strict';
 
-CKEDITOR.define( [ 'utils-diff', 'treeview/element', 'treeview/text' ], ( diff, ViewElement, ViewText ) => {
-	ATTRIBUTES_NEED_UPDATE = 0;
-	CHILDREN_NEED_UPDATE = 1;
+CKEDITOR.define( [
+	'utils-diff',
+	'treeview/element',
+	'treeview/text'
+], ( diff, ViewElement, ViewText ) => {
+	const ATTRIBUTES_NEED_UPDATE = 0;
+	const CHILDREN_NEED_UPDATE = 1;
 
 	class Renderer {
 		constructor( treeView ) {
 			this.view = treeView.view;
 
 			this.domRoot = treeView.domRoot;
-			this.domDocument = domRoot.ownerDocument;
 
 			this.markedAttrs = new Set();
 			this.markedChildren = new Set();
@@ -24,11 +27,13 @@ CKEDITOR.define( [ 'utils-diff', 'treeview/element', 'treeview/text' ], ( diff,
 			if ( type === ATTRIBUTES_NEED_UPDATE ) {
 				this.markedAttrs.push( node );
 			} else if ( type === CHILDREN_NEED_UPDATE ) {
-				this.markedChildren.push( element );
+				this.markedChildren.push( node );
 			}
 		}
 
 		render() {
+			const domDocument = this.domRoot.ownerDocument;
+
 			for ( let element of this.markedAttrs ) {
 				updateAttrs( element );
 			}
@@ -44,13 +49,13 @@ CKEDITOR.define( [ 'utils-diff', 'treeview/element', 'treeview/text' ], ( diff,
 
 				// Add or overwrite attributes.
 				for ( let key of viewAttrKeys ) {
-					element.setAttribute( key, viewElement.getAttr( key ) );
+					domElement.setAttribute( key, viewElement.getAttr( key ) );
 				}
 
 				// Remove from DOM attributes which do not exists in the view.
 				for ( let key of domAttrKeys ) {
 					if ( !viewElement.hasAttr( key ) ) {
-						element.removeAttribute( key );
+						domElement.removeAttribute( key );
 					}
 				}
 			}
@@ -68,7 +73,7 @@ CKEDITOR.define( [ 'utils-diff', 'treeview/element', 'treeview/text' ], ( diff,
 					if ( action === diff.EQUAL ) {
 						i++;
 					} else if ( action === diff.INSERT ) {
-						domElement.insertBefore( viewToDom( viewChildren[ i ] ), domChildren[ i ] || null  )
+						domElement.insertBefore( viewToDom( viewChildren[ i ] ), domChildren[ i ] || null  );
 						i++;
 					} else if ( action === diff.DELETE ) {
 						domElement.removeChild( domChildren[ i ] );
@@ -79,7 +84,7 @@ CKEDITOR.define( [ 'utils-diff', 'treeview/element', 'treeview/text' ], ( diff,
 			function compareNodes( domNode, viewNode ) {
 				// Elements.
 				if ( domNode instanceof HTMLElement && viewNode instanceof ViewElement ) {
-					return domNode === viewNode.DOMElement
+					return domNode === viewNode.DOMElement;
 				}
 				// Texts.
 				else if ( domNode instanceof Text && viewNode instanceof ViewText ) {
@@ -92,21 +97,21 @@ CKEDITOR.define( [ 'utils-diff', 'treeview/element', 'treeview/text' ], ( diff,
 
 			function viewToDom( view ) {
 				if ( view.domElement ) {
-					return domElement;
+					return view.domElement;
 				}
 
 				if ( view instanceof ViewText ) {
-					return this.domDocument.createTextNode( view.getText() );
+					return domDocument.createTextNode( view.getText() );
 				} else {
-					const domElement = this.domDocument.createElement( view.name );
+					const domElement = domDocument.createElement( view.name );
 					view.setDomElement( domElement );
 
 					for ( let key of view.getAttrKeys() ) {
-						element.setAttribute( key, view.getAttr( key ) );
+						domElement.setAttribute( key, view.getAttr( key ) );
 					}
 
 					for ( let childView of view.getChildren() ) {
-						element.appendChild( viewToDom( childView ) );
+						domElement.appendChild( viewToDom( childView ) );
 					}
 
 					return domElement;
@@ -118,7 +123,5 @@ CKEDITOR.define( [ 'utils-diff', 'treeview/element', 'treeview/text' ], ( diff,
 	Renderer.ATTRIBUTES_NEED_UPDATE = ATTRIBUTES_NEED_UPDATE;
 	Renderer.CHILDREN_NEED_UPDATE = CHILDREN_NEED_UPDATE;
 
-	utils.extend( Document.prototype, EmitterMixin );
-
 	return Renderer;
 } );

+ 2 - 0
packages/ckeditor5-engine/src/treeview/text.js

@@ -21,4 +21,6 @@ CKEDITOR.define( [], () => {
 			this._text = text;
 		}
 	}
+
+	return Text;
 } );

+ 8 - 1
packages/ckeditor5-engine/src/treeview/treeview.js

@@ -5,7 +5,12 @@
 
 'use strict';
 
-CKEDITOR.define( [ 'treeview/rootelement', 'treeview/renderer' ], ( RootElement, Renderer ) => {
+CKEDITOR.define( [
+	'utils',
+	'emittermixin',
+	'treeview/rootelement',
+	'treeview/renderer'
+], ( utils, EmitterMixin, RootElement, Renderer ) => {
 	class TreeView {
 		constructor( domElement ) {
 			/**
@@ -44,4 +49,6 @@ CKEDITOR.define( [ 'treeview/rootelement', 'treeview/renderer' ], ( RootElement,
 	}
 
 	utils.extend( Document.prototype, EmitterMixin );
+
+	return TreeView;
 } );