Skip to content
This repository has been archived by the owner on Jun 26, 2020. It is now read-only.

Commit

Permalink
Remove Positon, Range, Selection imports from engine/model.
Browse files Browse the repository at this point in the history
  • Loading branch information
jodator committed Sep 26, 2018
1 parent 647f09d commit c83a209
Show file tree
Hide file tree
Showing 10 changed files with 27 additions and 36 deletions.
3 changes: 1 addition & 2 deletions src/image/converters.js
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@
* @module image/image/converters
*/

import ModelPosition from '@ckeditor/ckeditor5-engine/src/model/position';
import first from '@ckeditor/ckeditor5-utils/src/first';

/**
Expand Down Expand Up @@ -55,7 +54,7 @@ export function viewFigureToModel() {
}

// Convert rest of the figure element's children as an image children.
conversionApi.convertChildren( data.viewItem, ModelPosition.createAt( modelImage ) );
conversionApi.convertChildren( data.viewItem, conversionApi.writer.createPositionAt( modelImage ) );

// Set image range as conversion result.
data.modelRange = conversionResult.modelRange;
Expand Down
6 changes: 2 additions & 4 deletions src/image/utils.js
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@
*/

import { toWidget, isWidget } from '@ckeditor/ckeditor5-widget/src/utils';
import ModelElement from '@ckeditor/ckeditor5-engine/src/model/element';

const imageSymbol = Symbol( 'isImage' );

Expand Down Expand Up @@ -58,12 +57,11 @@ export function isImageWidgetSelected( selection ) {
}

/**
* Checks if the provided model element is an instance of {@link module:engine/model/element~Element Element} and its name
* is `image`.
* Checks if the provided model element is an `image`.
*
* @param {module:engine/model/element~Element} modelElement
* @returns {Boolean}
*/
export function isImage( modelElement ) {
return modelElement instanceof ModelElement && modelElement.name == 'image';
return !!modelElement && modelElement.is( 'image' );
}
3 changes: 1 addition & 2 deletions src/imagecaption/utils.js
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@
* @module image/imagecaption/utils
*/

import ModelElement from '@ckeditor/ckeditor5-engine/src/model/element';
import { attachPlaceholder } from '@ckeditor/ckeditor5-engine/src/view/placeholder';
import { toWidgetEditable } from '@ckeditor/ckeditor5-widget/src/utils';

Expand Down Expand Up @@ -48,7 +47,7 @@ export function isCaption( viewElement ) {
*/
export function getCaptionFromImage( imageModelElement ) {
for ( const node of imageModelElement.getChildren() ) {
if ( node instanceof ModelElement && node.name == 'caption' ) {
if ( !!node && node.is( 'caption' ) ) {
return node;
}
}
Expand Down
10 changes: 4 additions & 6 deletions src/imageupload/imageuploadcommand.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,6 @@
* For licensing, see LICENSE.md.
*/

import ModelRange from '@ckeditor/ckeditor5-engine/src/model/range';
import ModelSelection from '@ckeditor/ckeditor5-engine/src/model/selection';
import FileRepository from '@ckeditor/ckeditor5-upload/src/filerepository';
import Command from '@ckeditor/ckeditor5-core/src/command';

Expand Down Expand Up @@ -47,15 +45,15 @@ export default class ImageUploadCommand extends Command {
uploadId: loader.id
} );

let insertAtSelection;
let insertAtSelectable;

if ( options.insertAt ) {
insertAtSelection = new ModelSelection( [ new ModelRange( options.insertAt ) ] );
insertAtSelectable = writer.createRange( options.insertAt );
} else {
insertAtSelection = doc.selection;
insertAtSelectable = doc.selection;
}

editor.model.insertContent( imageElement, insertAtSelection );
editor.model.insertContent( imageElement, insertAtSelectable );

// Inserting an image might've failed due to schema regulations.
if ( imageElement.parent ) {
Expand Down
1 change: 1 addition & 0 deletions src/imageupload/imageuploadediting.js
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ import Plugin from '@ckeditor/ckeditor5-core/src/plugin';
import FileRepository from '@ckeditor/ckeditor5-upload/src/filerepository';
import ImageUploadCommand from '../../src/imageupload/imageuploadcommand';
import Notification from '@ckeditor/ckeditor5-ui/src/notification/notification';
// TODO: After my other PR in image...
import ModelSelection from '@ckeditor/ckeditor5-engine/src/model/selection';
import { isImageType } from '../../src/imageupload/utils';
import { findOptimalInsertionPosition } from '@ckeditor/ckeditor5-widget/src/utils';
Expand Down
3 changes: 1 addition & 2 deletions tests/image.js
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,6 @@ import Widget from '@ckeditor/ckeditor5-widget/src/widget';
import ImageTextAlternative from '../src/imagetextalternative';
import { setData as setModelData } from '@ckeditor/ckeditor5-engine/src/dev-utils/model';
import { getData as getViewData } from '@ckeditor/ckeditor5-engine/src/dev-utils/view';
import ModelRange from '@ckeditor/ckeditor5-engine/src/model/range';
import global from '@ckeditor/ckeditor5-utils/src/dom/global';
import env from '@ckeditor/ckeditor5-utils/src/env';
import testUtils from '@ckeditor/ckeditor5-core/tests/_utils/utils';
Expand Down Expand Up @@ -106,7 +105,7 @@ describe( 'Image', () => {

model.change( writer => {
const secondImage = document.getRoot().getChild( 1 );
writer.setSelection( ModelRange.createOn( secondImage ) );
writer.setSelection( writer.createRangeOn( secondImage ) );
} );

expect( getViewData( view ) ).to.equal(
Expand Down
3 changes: 1 addition & 2 deletions tests/image/converters.js
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,6 @@ import VirtualTestEditor from '@ckeditor/ckeditor5-core/tests/_utils/virtualtest
import { downcastElementToElement } from '@ckeditor/ckeditor5-engine/src/conversion/downcast-converters';
import { upcastElementToElement } from '@ckeditor/ckeditor5-engine/src/conversion/upcast-converters';

import ModelRange from '@ckeditor/ckeditor5-engine/src/model/range';
import { getData as getViewData } from '@ckeditor/ckeditor5-engine/src/dev-utils/view';
import { setData as setModelData, getData as getModelData } from '@ckeditor/ckeditor5-engine/src/dev-utils/model';
import env from '@ckeditor/ckeditor5-utils/src/env';
Expand Down Expand Up @@ -178,7 +177,7 @@ describe( 'Image converters', () => {
}
} );
conversionApi.writer.insert( element, data.modelCursor );
data.modelRange = ModelRange.createOn( element );
data.modelRange = conversionApi.writer.createRangeOn( element );
data.modelCursor = data.modelRange.end;
}, { priority: 'high' } );

Expand Down
26 changes: 13 additions & 13 deletions tests/imagecaption/imagecaptionediting.js
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,6 @@ import Paragraph from '@ckeditor/ckeditor5-paragraph/src/paragraph';

import ViewAttributeElement from '@ckeditor/ckeditor5-engine/src/view/attributeelement';
import ViewPosition from '@ckeditor/ckeditor5-engine/src/view/position';
import ModelElement from '@ckeditor/ckeditor5-engine/src/model/element';
import ModelRange from '@ckeditor/ckeditor5-engine/src/model/range';

import { getData as getModelData, setData as setModelData } from '@ckeditor/ckeditor5-engine/src/dev-utils/model';
import { getData as getViewData } from '@ckeditor/ckeditor5-engine/src/dev-utils/view';
Expand Down Expand Up @@ -200,7 +198,7 @@ describe( 'ImageCaptionEditing', () => {
const caption = image.getChild( 0 );

model.change( writer => {
writer.remove( ModelRange.createIn( caption ) );
writer.remove( writer.createRangeIn( caption ) );
} );

expect( getViewData( view ) ).to.equal(
Expand All @@ -221,7 +219,7 @@ describe( 'ImageCaptionEditing', () => {
const caption = image.getChild( 0 );

model.change( writer => {
writer.remove( ModelRange.createFromParentsAndOffsets( caption, 0, caption, 8 ) );
writer.remove( writer.createRange( writer.createPositionAt( caption, 0 ), writer.createPositionAt( caption, 8 ) ) );
} );

expect( getViewData( view ) ).to.equal(
Expand Down Expand Up @@ -258,10 +256,12 @@ describe( 'ImageCaptionEditing', () => {
} );

it( 'should not add caption element if image already have it', () => {
const caption = new ModelElement( 'caption', null, 'foo bar' );
const image = new ModelElement( 'image', { src: '', alt: '' }, caption );

model.change( writer => {
const caption = writer.createElement( 'caption' );
const image = writer.createElement( 'image', { src: '', alt: '' } );

writer.insertText( 'foo bar', caption );
writer.insert( caption, image );
writer.insert( image, doc.getRoot() );
} );

Expand All @@ -282,10 +282,10 @@ describe( 'ImageCaptionEditing', () => {
} );

it( 'should not add caption element twice', () => {
const image = new ModelElement( 'image', { src: '', alt: '' } );
const caption = new ModelElement( 'caption' );

model.change( writer => {
const image = writer.createElement( 'image', { src: '', alt: '' } );
const caption = writer.createElement( 'caption' );

// Since we are adding an empty image, this should trigger caption fixer.
writer.insert( image, doc.getRoot() );

Expand Down Expand Up @@ -407,7 +407,7 @@ describe( 'ImageCaptionEditing', () => {

model.change( writer => {
writer.remove( doc.selection.getFirstRange() );
writer.setSelection( ModelRange.createOn( image ) );
writer.setSelection( writer.createRangeOn( image ) );
} );

expect( getViewData( view ) ).to.equal(
Expand All @@ -424,7 +424,7 @@ describe( 'ImageCaptionEditing', () => {
const image = doc.getRoot().getChild( 1 );

model.change( writer => {
writer.setSelection( ModelRange.createOn( image ) );
writer.setSelection( writer.createRangeOn( image ) );
} );

expect( getViewData( view ) ).to.equal(
Expand All @@ -451,7 +451,7 @@ describe( 'ImageCaptionEditing', () => {

// Remove text and selection from caption.
model.change( writer => {
writer.remove( ModelRange.createIn( modelCaption ) );
writer.remove( writer.createRangeIn( modelCaption ) );
writer.setSelection( null );
} );

Expand Down
5 changes: 2 additions & 3 deletions tests/imagetoolbar.js
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,6 @@ import global from '@ckeditor/ckeditor5-utils/src/dom/global';
import Plugin from '@ckeditor/ckeditor5-core/src/plugin';
import ButtonView from '@ckeditor/ckeditor5-ui/src/button/buttonview';
import Paragraph from '@ckeditor/ckeditor5-paragraph/src/paragraph';
import Range from '@ckeditor/ckeditor5-engine/src/model/range';
import View from '@ckeditor/ckeditor5-ui/src/view';
import { setData } from '@ckeditor/ckeditor5-engine/src/dev-utils/model';
import env from '@ckeditor/ckeditor5-utils/src/env';
Expand Down Expand Up @@ -135,7 +134,7 @@ describe( 'ImageToolbar', () => {
model.change( writer => {
// Select the [<image></image>]
writer.setSelection(
Range.createOn( doc.getRoot().getChild( 1 ) )
writer.createRangeOn( doc.getRoot().getChild( 1 ) )
);
} );

Expand Down Expand Up @@ -177,7 +176,7 @@ describe( 'ImageToolbar', () => {
model.change( writer => {
// Select the <paragraph>[...]</paragraph>
writer.setSelection(
Range.createIn( doc.getRoot().getChild( 0 ) )
writer.createRangeIn( doc.getRoot().getChild( 0 ) )
);
} );

Expand Down
3 changes: 1 addition & 2 deletions tests/imageupload/imageuploadediting.js
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,6 @@ import { UploadAdapterMock, createNativeFileMock, NativeFileReaderMock } from '@
import { setData as setModelData, getData as getModelData } from '@ckeditor/ckeditor5-engine/src/dev-utils/model';
import { getData as getViewData } from '@ckeditor/ckeditor5-engine/src/dev-utils/view';
import Range from '@ckeditor/ckeditor5-engine/src/model/range';
import Position from '@ckeditor/ckeditor5-engine/src/model/position';

import log from '@ckeditor/ckeditor5-utils/src/log';
import env from '@ckeditor/ckeditor5-utils/src/env';
Expand Down Expand Up @@ -472,7 +471,7 @@ describe( 'ImageUploadEditing', () => {
const image = doc.getRoot().getChild( 0 );

model.change( writer => {
writer.move( Range.createOn( image ), Position.createAt( doc.getRoot(), 2 ) );
writer.move( Range.createOn( image ), writer.createPositionAt( doc.getRoot(), 2 ) );
} );

expect( abortSpy.called ).to.be.false;
Expand Down

0 comments on commit c83a209

Please sign in to comment.