8
0
Просмотр исходного кода

Changed attribute `marker-name` to `data-name`.

Oskar Wróbel 8 лет назад
Родитель
Сommit
8b53b6c570

+ 1 - 1
packages/ckeditor5-engine/src/controller/datacontroller.js

@@ -355,7 +355,7 @@ function extractMarkersDataFromModelElement( documentFragment ) {
 		for ( const value of walker ) {
 			// Check if current element is a marker stamp.
 			if ( value.item.name == '$marker' ) {
-				const markerName = value.item.getAttribute( 'marker-name' );
+				const markerName = value.item.getAttribute( 'data-name' );
 				const currentPosition = ModelPosition.createBefore( value.item );
 
 				// When marker of given name is not stored it means that we have found the beginning of the range.

+ 1 - 1
packages/ckeditor5-engine/src/conversion/buildmodelconverter.js

@@ -260,7 +260,7 @@ class ModelConverterBuilder {
 	 *
 	 * Method accepts various ways of providing how the view element will be created. You can pass view element name as
 	 * `string`, view element instance which will be cloned and used, or creator function which returns view element that
-	 * will be used. Keep in mind that when you view element instance or creator function, it has to be/return a
+	 * will be used. Keep in mind that when you provide view element instance or creator function, it has to be/return a
 	 * proper type of view element: {@link module:engine/view/uielement~UIElement UIElement}.
 	 *
 	 *		buildModelConverter().for( dispatcher ).fromMarker( 'comment' ).toStamp( 'span' );

+ 8 - 8
packages/ckeditor5-engine/src/conversion/buildviewconverter.js

@@ -365,16 +365,16 @@ class ViewConverterBuilder {
 	/**
 	 * Registers how model element marking marker range will be created by converter.
 	 *
-	 * Element which marking marker range (marker stamp) has to match the following pattern:
+	 * Created element has to match the following pattern:
 	 *
-	 * 		{ name: '$marker', attribute: { marker-name: /^\w/ } }
+	 * 		{ name: '$marker', attribute: { data-name: /^\w/ } }
 	 *
 	 * There are two ways of creating this element:
-	 * 1. Makes sure that converted view element will have property `marker-name` then converter will
-	 * automatically take this property value. In this case there no need to provide creator function.
+	 * 1. Makes sure that converted view element will have property `data-name` then converter will
+	 * automatically take this property value. In this case there is no need to provide creator function.
 	 * For the following view:
 	 *
-	 *		<marker marker-name="search"></marker>foo<marker marker-name="search"></marker>
+	 *		<marker data-name="search"></marker>foo<marker data-name="search"></marker>
 	 *
 	 * converter should look like this:
 	 *
@@ -388,7 +388,7 @@ class ViewConverterBuilder {
 	 * converter should looks like this:
 	 *
 	 * 		buildViewConverter().for( dispatcher ).from( { name: 'span', { attribute: foo: /^\w/ } } ).toMarker( ( data ) => {
-	 * 			return new Element( '$marker', { 'marker-name': data.getAttribute( 'foo' ) } );
+	 * 			return new Element( '$marker', { 'data-name': data.getAttribute( 'foo' ) } );
 	 * 		} );
 	 *
 	 * @param {Function} [creator] Creator function.
@@ -412,11 +412,11 @@ class ViewConverterBuilder {
 					modelElement = creator( data.input );
 				// When there is no creator then create model element basing on data from view element.
 				} else {
-					modelElement = new ModelElement( '$marker', { 'marker-name': data.input.getAttribute( 'marker-name' ) } );
+					modelElement = new ModelElement( '$marker', { 'data-name': data.input.getAttribute( 'data-name' ) } );
 				}
 
 				// Check if model element is correct (has proper name and property).
-				if ( modelElement.name != '$marker' || typeof modelElement.getAttribute( 'marker-name' ) != 'string' ) {
+				if ( modelElement.name != '$marker' || typeof modelElement.getAttribute( 'data-name' ) != 'string' ) {
 					throw new CKEditorError(
 						'build-view-converter-invalid-marker: Invalid model element to mark marker range.'
 					);

+ 7 - 7
packages/ckeditor5-engine/tests/controller/datacontroller.js

@@ -231,13 +231,13 @@ describe( 'DataController', () => {
 			data.set(
 				'<p>' +
 					'F' +
-					'<m marker-name="comment"></m>' +
+					'<m data-name="comment"></m>' +
 					'o' +
-					'<m marker-name="search"></m>' +
+					'<m data-name="search"></m>' +
 					'o ba' +
-					'<m marker-name="comment"></m>' +
+					'<m data-name="comment"></m>' +
 					'r bi' +
-					'<m marker-name="search"></m>' +
+					'<m data-name="search"></m>' +
 					'z' +
 				'</p>'
 			);
@@ -258,7 +258,7 @@ describe( 'DataController', () => {
 			buildViewConverter().for( data.viewToModel ).fromElement( 'p' ).toElement( 'paragraph' );
 			buildViewConverter().for( data.viewToModel ).fromElement( 'm' ).toMarker();
 
-			data.set( '<p>F<m marker-name="comment"></m>o<m marker-name="search"></m>o ba</m>r biz</p>' );
+			data.set( '<p>F<m data-name="comment"></m>o<m data-name="search"></m>o ba</m>r biz</p>' );
 
 			expect( getData( modelDocument, { withoutSelection: true } ) ).to.equal( '<paragraph>Foo bar biz</paragraph>' );
 			expect( Array.from( modelDocument.markers ).length ).to.equal( 2 );
@@ -481,9 +481,9 @@ describe( 'DataController', () => {
 			const spy = sinon.spy();
 			const content = new ModelDocumentFragment( [
 				new ModelText( 'x' ),
-				new ModelElement( '$marker', { 'marker-name': 'search' } ),
+				new ModelElement( '$marker', { 'data-name': 'search' } ),
 				new ModelText( 'y' ),
-				new ModelElement( '$marker', { 'marker-name': 'search' } ),
+				new ModelElement( '$marker', { 'data-name': 'search' } ),
 				new ModelText( 'z' )
 			] );
 

+ 13 - 13
packages/ckeditor5-engine/tests/conversion/buildviewconverter.js

@@ -191,19 +191,19 @@ describe( 'View converter builder', () => {
 	} );
 
 	it( 'should convert from pattern to marker', () => {
-		buildViewConverter().for( dispatcher ).from( { attribute: { 'marker-name': 'search' } } ).toMarker();
+		buildViewConverter().for( dispatcher ).from( { attribute: { 'data-name': 'search' } } ).toMarker();
 
-		const viewElement = new ViewAttributeElement( 'span', { 'marker-name': 'search' } );
+		const viewElement = new ViewAttributeElement( 'span', { 'data-name': 'search' } );
 
 		const result = dispatcher.convert( viewElement, objWithContext );
 		modelRoot.appendChildren( result );
 
-		expect( modelToString( result ) ).to.equal( '<$marker marker-name="search"></$marker>' );
+		expect( modelToString( result ) ).to.equal( '<$marker data-name="search"></$marker>' );
 	} );
 
 	it( 'should convert from element to marker using creator function', () => {
 		buildViewConverter().for( dispatcher ).fromElement( 'marker' ).toMarker( ( data ) => {
-			return new ModelElement( '$marker', { 'marker-name': data.getAttribute( 'class' ) } );
+			return new ModelElement( '$marker', { 'data-name': data.getAttribute( 'class' ) } );
 		} );
 
 		const element = new ViewAttributeElement( 'marker', { class: 'search' } );
@@ -211,7 +211,7 @@ describe( 'View converter builder', () => {
 		const result = dispatcher.convert( element, objWithContext );
 		modelRoot.appendChildren( result );
 
-		expect( modelToString( result ) ).to.equal( '<$marker marker-name="search"></$marker>' );
+		expect( modelToString( result ) ).to.equal( '<$marker data-name="search"></$marker>' );
 	} );
 
 	it( 'should convert from multiple view entities to marker', () => {
@@ -219,19 +219,19 @@ describe( 'View converter builder', () => {
 
 		buildViewConverter().for( dispatcher )
 			.fromElement( 'marker' )
-			.from( { attribute: { 'marker-name': 'search' } } )
+			.from( { attribute: { 'data-name': 'search' } } )
 			.toMarker();
 
 		const viewElement = new ViewContainerElement( 'p', null, [
-			new ViewAttributeElement( 'marker', { 'marker-name': 'comment' } ),
-			new ViewAttributeElement( 'span', { 'marker-name': 'search' } )
+			new ViewAttributeElement( 'marker', { 'data-name': 'comment' } ),
+			new ViewAttributeElement( 'span', { 'data-name': 'search' } )
 		] );
 
 		const result = dispatcher.convert( viewElement, objWithContext );
 		modelRoot.appendChildren( result );
 
 		expect( modelToString( result ) ).to.equal(
-			'<paragraph><$marker marker-name="comment"></$marker><$marker marker-name="search"></$marker></paragraph>'
+			'<paragraph><$marker data-name="comment"></$marker><$marker data-name="search"></$marker></paragraph>'
 		);
 	} );
 
@@ -255,22 +255,22 @@ describe( 'View converter builder', () => {
 
 	it( 'should throw an error when model element returned by creator has not valid name', () => {
 		buildViewConverter().for( dispatcher ).fromElement( 'marker' ).toMarker( () => {
-			return new ModelElement( 'element', { 'marker-name': 'search' } );
+			return new ModelElement( 'element', { 'data-name': 'search' } );
 		} );
 
-		const element = new ViewAttributeElement( 'marker', { 'marker-name': 'search' } );
+		const element = new ViewAttributeElement( 'marker', { 'data-name': 'search' } );
 
 		expect( () => {
 			dispatcher.convert( element, objWithContext );
 		} ).to.throw( CKEditorError, /^build-view-converter-invalid-marker/ );
 	} );
 
-	it( 'should throw an error when model element returned by creator has not valid marker-name attribute', () => {
+	it( 'should throw an error when model element returned by creator has not valid data-name attribute', () => {
 		buildViewConverter().for( dispatcher ).fromElement( 'marker' ).toMarker( () => {
 			return new ModelElement( '$marker', { 'foo': 'search' } );
 		} );
 
-		const element = new ViewAttributeElement( 'marker', { 'marker-name': 'search' } );
+		const element = new ViewAttributeElement( 'marker', { 'data-name': 'search' } );
 
 		expect( () => {
 			dispatcher.convert( element, objWithContext );