engine/dev-utils/model
@ckeditor/ckeditor5-engine/src/dev-utils/model
Filtering
Functions
-
getData( model, [ options ] = { [options.withoutSelection], [options.rootName], [options.convertMarkers] } ) → String
static
Writes the content of a model document to an HTML-like string.
Note: A text node that contains attributes will be represented as:
<$text attribute="value">Text data</$text>
Parameters
model : Model
[ options ] : Object
-
Properties
[ options.withoutSelection ] : Boolean
Whether to write the selection. When set to
true
, the selection will not be included in the returned string.Defaults to
false
[ options.rootName ] : String
The name of the root from which the data should be stringified. If not provided, the default
main
name will be used.Defaults to
'main'
[ options.convertMarkers ] : Boolean
Whether to include markers in the returned string.
Defaults to
false
Returns
String
The stringified data.
-
parse( data, schema, batch, [ options ] = { [options.selectionAttributes], [options.lastRangeBackward], [options.context] } ) → Element | Text | DocumentFragment | Object
static
Parses an HTML-like string and returns the model rootElement.
Note: To create a text node that contains attributes use:
<$text attribute="value">Text data</$text>
Parameters
data : String
HTML-like string to be parsed.
schema : Schema
A schema instance used by converters for element validation.
batch : Batch
A batch used for conversion.
[ options ] : Object
Additional configuration.
Properties[ options.selectionAttributes ] : Array.<Object>
A list of attributes which will be passed to the selection.
[ options.lastRangeBackward ] : Boolean
If set to
true
, the last range will be added as backward.Defaults to
false
[ options.context ] : SchemaContextDefinition
The conversion context. If not provided, the default
'$root'
will be used.Defaults to
'$root'
Defaults to
{}
Returns
Element | Text | DocumentFragment | Object
Returns the parsed model node or an object with two fields:
model
andselection
, when selection ranges were included in the data to parse.
-
setData( model, data, options = { [options.rootName], [options.selectionAttributes], [options.lastRangeBackward], [options.batchType] } )
static
Sets the content of a model document provided as an HTML-like string.
Note: Remember to register elements in the model's schema before trying to use them.
Note: To create a text node that contains attributes use:
<$text attribute="value">Text data</$text>
Parameters
model : Model
data : String
HTML-like string to write into the document.
options : Object
-
Properties
[ options.rootName ] : String
Root name where parsed data will be stored. If not provided, the default
main
name will be used.Defaults to
'main'
[ options.selectionAttributes ] : Array.<Object>
A list of attributes which will be passed to the selection.
[ options.lastRangeBackward ] : Boolean
If set to
true
, the last range will be added as backward.Defaults to
false
[ options.batchType ] : String
Batch type used for inserting elements. See
type
.Defaults to
'transparent'
-
stringify( node, [ selectionOrPositionOrRange ], markers ) → String
static
Converts model nodes to HTML-like string representation.
Note: A text node that contains attributes will be represented as:
<$text attribute="value">Text data</$text>
Parameters
node : RootElement | Element | Text | DocumentFragment
A node to stringify.
[ selectionOrPositionOrRange ] : Selection | Position | Range
A selection instance whose ranges will be included in the returned string data. If a range instance is provided, it will be converted to a selection containing this range. If a position instance is provided, it will be converted to a selection containing one range collapsed at this position.
markers : Iterable.<Marker> | null
Markers to include.
Returns
String
An HTML-like string representing the model.