# TrackChangesConfig

interface

The configuration of the track changes feature.

Example:

```typescript
ClassicEditor
	.create( {
		// Track changes feature configuration.
		trackChanges: {
			// Do not allow users to comment suggestions (default is `false`).
			disableComments: true,
			// Do not track styling and formatting changes (default is `default`).
			trackFormatChanges: 'never',
			// Merges suggestion changes inside a block. (default is `true`).
			mergeNestedSuggestions: true,
			// Accept suggestions when they are copied to clipboard (default is `keep`).
			clipboardMode: 'accept'
		}
	} )
	.then( ... )
	.catch( ... );
```

See [all editor options](module_core_editor_editorconfig-EditorConfig.md).

<a id="properties">

## Properties

<a id="member-SuggestionThreadView">

### `SuggestionThreadView?: SuggestionThreadView`

A view class to be used to create suggestion thread views.

[`SuggestionThreadView`](module_track-changes_ui_view_suggestionthreadview-SuggestionThreadView.md) is used by default when this property is not set.

<a id="member-SuggestionView">

### `SuggestionView?: SuggestionView`

A view class to be used to create the suggestion view.

[`SuggestionView`](module_track-changes_ui_view_suggestionview-SuggestionView.md) is used by default when this property is not set.

<a id="member-aiAuthor">

### `aiAuthor?: object`

The view-only identity used to render AI-sourced suggestions when [`showAISource`](#member-showAISource) is set to `'author'`.

This is a view-only override. The persisted author of the suggestion is not affected.

Defaults to a built-in `AI Assistant` identity when this option is not provided.

<a id="member-clipboardMode">

### `clipboardMode?: 'accept' | 'keep'`

Specifies how content inside suggestions should be handled when it goes through the clipboard pipeline.

Possible values:

* `'keep'` - all selected content will be kept in the clipboard pipeline as-is.
* `'accept'` - suggestions will be automatically accepted when they are copied to clipboard. Note that this processing is not applied if all selected content is inside a deletion suggestion.

Defaults to `'keep'`

<a id="member-disableComments">

### `disableComments?: boolean`

A property that specifies if the comments for suggestions are enabled or disabled. When the option is set to `true`, the comment thread UI for suggestions will be hidden and commenting suggestions will be disabled.

Suggestion thread views will be marked with the additional `ck-suggestion--disabled-comments` class when the suggestion comments are disabled.

Defaults to `false`

<a id="member-mergeNestedSuggestions">

### `mergeNestedSuggestions?: boolean`

Specifies whether suggestions on an object (e.g. image, table) should be automatically merged with suggestions inside the object (e.g. image caption, table cell).

For example, when set to `true`, creating a table and writing some text inside the table will result in one suggestion. When set to `false`, it will be two separate suggestions, one for the inserted table and one for the inserted text.

Keep in mind that only suggestions from the same author and of the same type are merged this way.

Defaults to `true`

<a id="member-preview">

### `preview?: TrackChangesPreviewConfig`

Configuration of the track changes preview feature.

<a id="member-showAISource">

### `showAISource?: 'author' | 'pill' | null`

Controls if and how the suggestion annotation displays information that the suggestion was generated by AI.

Possible values:

* `'pill'` - shows an "AI-generated" pill in the suggestion balloon while preserving the original author's identity.
* `'author'` - swaps the author shown in the suggestion view (name + avatar) for a view-only AI identity. The original author's ID is still preserved in suggestion's data. The view-only identity can be customized via [`aiAuthor`](#member-aiAuthor).
* `null` - the AI source is hidden (default).

Defaults to `null`

<a id="member-trackFormatChanges">

### `trackFormatChanges?: 'default' | 'always' | 'never'`

A property that specifies whether formatting changes should be tracked.

Formatting changes are all changes other than insertions and deletions, including: styling, structure, widgets properties, etc.

By default, formatting changes are tracked. However, if you make a formatting change inside your own insertion suggestion, it is immediately applied, without creating a suggestion.

Possible values are:

* `'default'` - format changes are tracked, but when made inside your own insertion suggestion, they will be immediately applied.
* `'always'` - format changes will always be tracked, even inside your own insertion suggestion.
* `'never'` - format changes will never be tracked (suggestions for such changes will not be created).

Defaults to `'default'`

---

Full index of the CKEditor 5 API reference: [llms.txt](llms.txt)
