8
0
Эх сурвалжийг харах

Code refactoring: Sorted the properties inside class definition.

Piotrek Koszuliński 9 жил өмнө
parent
commit
83a2ebe36e

+ 83 - 82
packages/ckeditor5-ui/src/ui/view.js

@@ -115,93 +115,12 @@ export default class View {
 		this._element = el;
 	}
 
-	/**
-	 * Initializes the view.
-	 */
-	init() {
-		this._initRegions();
-	}
-
-	/**
-	 * Registers a region in {@link #regions}.
-	 *
-	 *		let view = new View();
-	 *
-	 *		// region.name == "foo", region.element == view.element.firstChild
-	 *		view.register( 'foo', el => el.firstChild );
-	 *
-	 *		// region.name == "bar", region.element == view.element.querySelector( 'span' )
-	 *		view.register( new Region( 'bar' ), 'span' );
-	 *
-	 *		// region.name == "bar", region.element == view.element.querySelector( '#div#id' )
-	 *		view.register( 'bar', 'div#id', true );
-	 *
-	 *		// region.name == "baz", region.element == null
-	 *		view.register( 'baz', true );
-	 *
-	 * @param {String|Region} stringOrRegion The name or an instance of the Region
-	 * to be registered. If `String`, the region will be created on the fly.
-	 * @param {String|Function|true} regionSelector The selector to retrieve region's element
-	 * in DOM when the region instance is initialized (see {@link Region#init}, {@link #init}).
-	 * @param {Boolean} [override] When set `true` it will allow overriding of registered regions.
-	 */
-	register( ...args ) {
-		let region, regionName;
-
-		if ( typeof args[ 0 ] === 'string' ) {
-			regionName = args[ 0 ];
-			region = this.regions.get( regionName ) || new Region( regionName );
-		} else if ( args[ 0 ] instanceof Region ) {
-			regionName = args[ 0 ].name;
-			region = args[ 0 ];
-		} else {
-			/**
-			 * A name of the region or an instance of Region is required.
-			 *
-			 * @error ui-view-register-wrongtype
-			 */
-			throw new CKEditorError( 'ui-view-register-wrongtype' );
-		}
-
-		const regionSelector = args[ 1 ];
-
-		if ( !regionSelector || !isValidRegionSelector( regionSelector ) ) {
-			/**
-			 * The selector must be String, Function or `true`.
-			 *
-			 * @error ui-view-register-badselector
-			 */
-			throw new CKEditorError( 'ui-view-register-badselector' );
-		}
-
-		const registered = this.regions.get( regionName );
-
-		if ( !registered ) {
-			this.regions.add( region );
-		} else {
-			if ( registered !== region ) {
-				if ( !args[ 2 ] ) {
-					/**
-					 * Overriding is possible only when `override` flag is set.
-					 *
-					 * @error ui-view-register-override
-					 */
-					throw new CKEditorError( 'ui-view-register-override' );
-				}
-
-				this.regions.remove( registered );
-				this.regions.add( region );
-			}
-		}
-
-		this._regionsSelectors[ regionName ] = regionSelector;
-	}
-
 	/**
 	 * And entry point to the interface which allows binding attributes of {@link View#model}
 	 * to the DOM items like HTMLElement attributes or Text Node `textContent`, so their state
 	 * is synchronized with {@link View#model}.
 	 *
+	 * @readonly
 	 * @property attributeBinder
 	 */
 	get attributeBinder() {
@@ -283,6 +202,88 @@ export default class View {
 		return ( this._attributeBinder = binder );
 	}
 
+	/**
+	 * Initializes the view.
+	 */
+	init() {
+		this._initRegions();
+	}
+
+	/**
+	 * Registers a region in {@link #regions}.
+	 *
+	 *		let view = new View();
+	 *
+	 *		// region.name == "foo", region.element == view.element.firstChild
+	 *		view.register( 'foo', el => el.firstChild );
+	 *
+	 *		// region.name == "bar", region.element == view.element.querySelector( 'span' )
+	 *		view.register( new Region( 'bar' ), 'span' );
+	 *
+	 *		// region.name == "bar", region.element == view.element.querySelector( '#div#id' )
+	 *		view.register( 'bar', 'div#id', true );
+	 *
+	 *		// region.name == "baz", region.element == null
+	 *		view.register( 'baz', true );
+	 *
+	 * @param {String|Region} stringOrRegion The name or an instance of the Region
+	 * to be registered. If `String`, the region will be created on the fly.
+	 * @param {String|Function|true} regionSelector The selector to retrieve region's element
+	 * in DOM when the region instance is initialized (see {@link Region#init}, {@link #init}).
+	 * @param {Boolean} [override] When set `true` it will allow overriding of registered regions.
+	 */
+	register( ...args ) {
+		let region, regionName;
+
+		if ( typeof args[ 0 ] === 'string' ) {
+			regionName = args[ 0 ];
+			region = this.regions.get( regionName ) || new Region( regionName );
+		} else if ( args[ 0 ] instanceof Region ) {
+			regionName = args[ 0 ].name;
+			region = args[ 0 ];
+		} else {
+			/**
+			 * A name of the region or an instance of Region is required.
+			 *
+			 * @error ui-view-register-wrongtype
+			 */
+			throw new CKEditorError( 'ui-view-register-wrongtype' );
+		}
+
+		const regionSelector = args[ 1 ];
+
+		if ( !regionSelector || !isValidRegionSelector( regionSelector ) ) {
+			/**
+			 * The selector must be String, Function or `true`.
+			 *
+			 * @error ui-view-register-badselector
+			 */
+			throw new CKEditorError( 'ui-view-register-badselector' );
+		}
+
+		const registered = this.regions.get( regionName );
+
+		if ( !registered ) {
+			this.regions.add( region );
+		} else {
+			if ( registered !== region ) {
+				if ( !args[ 2 ] ) {
+					/**
+					 * Overriding is possible only when `override` flag is set.
+					 *
+					 * @error ui-view-register-override
+					 */
+					throw new CKEditorError( 'ui-view-register-override' );
+				}
+
+				this.regions.remove( registered );
+				this.regions.add( region );
+			}
+		}
+
+		this._regionsSelectors[ regionName ] = regionSelector;
+	}
+
 	/**
 	 * Applies template to existing DOM element in the context of a View.
 	 *