@ckeditor/ckeditor5-core 35.3.2 → 35.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +17 -17
- package/src/command.js +16 -13
- package/src/commandcollection.js +1 -1
- package/src/context.js +3 -6
- package/src/contextplugin.js +2 -2
- package/src/editingkeystrokehandler.js +1 -1
- package/src/editor/editor.js +3 -9
- package/src/editor/editorui.js +4 -4
- package/src/editor/utils/attachtoform.js +1 -1
- package/src/editor/utils/elementapimixin.js +1 -2
- package/src/editor/utils/securesourceelement.js +1 -1
- package/src/multicommand.js +3 -3
- package/src/pendingactions.js +3 -5
- package/src/plugin.js +2 -2
- package/src/plugincollection.js +2 -3
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ckeditor/ckeditor5-core",
|
|
3
|
-
"version": "35.
|
|
3
|
+
"version": "35.4.0",
|
|
4
4
|
"description": "The core architecture of CKEditor 5 – the best browser-based rich text editor.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"wysiwyg",
|
|
@@ -23,25 +23,25 @@
|
|
|
23
23
|
],
|
|
24
24
|
"main": "src/index.js",
|
|
25
25
|
"dependencies": {
|
|
26
|
-
"@ckeditor/ckeditor5-engine": "^35.
|
|
27
|
-
"@ckeditor/ckeditor5-ui": "^35.
|
|
28
|
-
"@ckeditor/ckeditor5-utils": "^35.
|
|
26
|
+
"@ckeditor/ckeditor5-engine": "^35.4.0",
|
|
27
|
+
"@ckeditor/ckeditor5-ui": "^35.4.0",
|
|
28
|
+
"@ckeditor/ckeditor5-utils": "^35.4.0",
|
|
29
29
|
"lodash-es": "^4.17.15"
|
|
30
30
|
},
|
|
31
31
|
"devDependencies": {
|
|
32
|
-
"@ckeditor/ckeditor5-autoformat": "^35.
|
|
33
|
-
"@ckeditor/ckeditor5-basic-styles": "^35.
|
|
34
|
-
"@ckeditor/ckeditor5-block-quote": "^35.
|
|
35
|
-
"@ckeditor/ckeditor5-editor-classic": "^35.
|
|
36
|
-
"@ckeditor/ckeditor5-essentials": "^35.
|
|
37
|
-
"@ckeditor/ckeditor5-heading": "^35.
|
|
38
|
-
"@ckeditor/ckeditor5-image": "^35.
|
|
39
|
-
"@ckeditor/ckeditor5-indent": "^35.
|
|
40
|
-
"@ckeditor/ckeditor5-link": "^35.
|
|
41
|
-
"@ckeditor/ckeditor5-list": "^35.
|
|
42
|
-
"@ckeditor/ckeditor5-media-embed": "^35.
|
|
43
|
-
"@ckeditor/ckeditor5-paragraph": "^35.
|
|
44
|
-
"@ckeditor/ckeditor5-table": "^35.
|
|
32
|
+
"@ckeditor/ckeditor5-autoformat": "^35.4.0",
|
|
33
|
+
"@ckeditor/ckeditor5-basic-styles": "^35.4.0",
|
|
34
|
+
"@ckeditor/ckeditor5-block-quote": "^35.4.0",
|
|
35
|
+
"@ckeditor/ckeditor5-editor-classic": "^35.4.0",
|
|
36
|
+
"@ckeditor/ckeditor5-essentials": "^35.4.0",
|
|
37
|
+
"@ckeditor/ckeditor5-heading": "^35.4.0",
|
|
38
|
+
"@ckeditor/ckeditor5-image": "^35.4.0",
|
|
39
|
+
"@ckeditor/ckeditor5-indent": "^35.4.0",
|
|
40
|
+
"@ckeditor/ckeditor5-link": "^35.4.0",
|
|
41
|
+
"@ckeditor/ckeditor5-list": "^35.4.0",
|
|
42
|
+
"@ckeditor/ckeditor5-media-embed": "^35.4.0",
|
|
43
|
+
"@ckeditor/ckeditor5-paragraph": "^35.4.0",
|
|
44
|
+
"@ckeditor/ckeditor5-table": "^35.4.0",
|
|
45
45
|
"typescript": "^4.8.4",
|
|
46
46
|
"webpack": "^5.58.1",
|
|
47
47
|
"webpack-cli": "^4.9.0"
|
package/src/command.js
CHANGED
|
@@ -2,27 +2,30 @@
|
|
|
2
2
|
* @license Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.
|
|
3
3
|
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
|
|
4
4
|
*/
|
|
5
|
-
import { Observable } from '@ckeditor/ckeditor5-utils/src/observablemixin';
|
|
6
5
|
/**
|
|
7
|
-
*
|
|
6
|
+
* @module core/command
|
|
7
|
+
*/
|
|
8
|
+
import { ObservableMixin } from '@ckeditor/ckeditor5-utils';
|
|
9
|
+
/**
|
|
10
|
+
* Base class for the CKEditor commands.
|
|
8
11
|
*
|
|
9
|
-
* Commands are the main way to manipulate editor contents and state. They are mostly used by UI elements (or by other
|
|
10
|
-
* commands) to make changes in the model. Commands are available in every part of code that has access to
|
|
12
|
+
* Commands are the main way to manipulate the editor contents and state. They are mostly used by UI elements (or by other
|
|
13
|
+
* commands) to make changes in the model. Commands are available in every part of the code that has access to
|
|
11
14
|
* the {@link module:core/editor/editor~Editor editor} instance.
|
|
12
15
|
*
|
|
13
16
|
* Instances of registered commands can be retrieved from {@link module:core/editor/editor~Editor#commands `editor.commands`}.
|
|
14
17
|
* The easiest way to execute a command is through {@link module:core/editor/editor~Editor#execute `editor.execute()`}.
|
|
15
18
|
*
|
|
16
|
-
* By default, commands are disabled when the editor is in {@link module:core/editor/editor~Editor#isReadOnly read-only} mode
|
|
19
|
+
* By default, commands are disabled when the editor is in the {@link module:core/editor/editor~Editor#isReadOnly read-only} mode
|
|
17
20
|
* but commands with the {@link module:core/command~Command#affectsData `affectsData`} flag set to `false` will not be disabled.
|
|
18
21
|
*
|
|
19
22
|
* @mixes module:utils/observablemixin~ObservableMixin
|
|
20
23
|
*/
|
|
21
|
-
export default class Command extends
|
|
24
|
+
export default class Command extends ObservableMixin() {
|
|
22
25
|
/**
|
|
23
26
|
* Creates a new `Command` instance.
|
|
24
27
|
*
|
|
25
|
-
* @param {module:core/editor/editor~Editor} editor
|
|
28
|
+
* @param {module:core/editor/editor~Editor} editor The editor on which this command will be used.
|
|
26
29
|
*/
|
|
27
30
|
constructor(editor) {
|
|
28
31
|
super();
|
|
@@ -34,14 +37,14 @@ export default class Command extends Observable {
|
|
|
34
37
|
*/
|
|
35
38
|
this.editor = editor;
|
|
36
39
|
/**
|
|
37
|
-
* The value of the command. A
|
|
40
|
+
* The value of the command. A given command class should define what it represents for it.
|
|
38
41
|
*
|
|
39
42
|
* For example, the `'bold'` command's value indicates whether the selection starts in a bolded text.
|
|
40
|
-
* And the value of the `'link'` command may be an object with
|
|
43
|
+
* And the value of the `'link'` command may be an object with link details.
|
|
41
44
|
*
|
|
42
45
|
* It is possible for a command to have no value (e.g. for stateless actions such as `'uploadImage'`).
|
|
43
46
|
*
|
|
44
|
-
* A
|
|
47
|
+
* A given command class should control this value by overriding the {@link #refresh `refresh()`} method.
|
|
45
48
|
*
|
|
46
49
|
* @observable
|
|
47
50
|
* @readonly
|
|
@@ -52,9 +55,9 @@ export default class Command extends Observable {
|
|
|
52
55
|
* Flag indicating whether a command is enabled or disabled.
|
|
53
56
|
* A disabled command will do nothing when executed.
|
|
54
57
|
*
|
|
55
|
-
* A
|
|
58
|
+
* A given command class should control this value by overriding the {@link #refresh `refresh()`} method.
|
|
56
59
|
*
|
|
57
|
-
* It is possible to disable a command from
|
|
60
|
+
* It is possible to disable a command "from outside". For instance, in your integration you may want to disable
|
|
58
61
|
* a certain set of commands for the time being. To do that, you can use the fact that `isEnabled` is observable
|
|
59
62
|
* and it fires the `set:isEnabled` event every time anyone tries to modify its value:
|
|
60
63
|
*
|
|
@@ -149,7 +152,7 @@ export default class Command extends Observable {
|
|
|
149
152
|
* Disables the command.
|
|
150
153
|
*
|
|
151
154
|
* Command may be disabled by multiple features or algorithms (at once). When disabling a command, unique id should be passed
|
|
152
|
-
* (e.g. feature name). The same identifier should be used when {@link #clearForceDisabled enabling back} the command.
|
|
155
|
+
* (e.g. the feature name). The same identifier should be used when {@link #clearForceDisabled enabling back} the command.
|
|
153
156
|
* The command becomes enabled only after all features {@link #clearForceDisabled enabled it back}.
|
|
154
157
|
*
|
|
155
158
|
* Disabling and enabling a command:
|
package/src/commandcollection.js
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
/**
|
|
6
6
|
* @module core/commandcollection
|
|
7
7
|
*/
|
|
8
|
-
import CKEditorError from '@ckeditor/ckeditor5-utils
|
|
8
|
+
import { CKEditorError } from '@ckeditor/ckeditor5-utils';
|
|
9
9
|
/**
|
|
10
10
|
* Collection of commands. Its instance is available in {@link module:core/editor/editor~Editor#commands `editor.commands`}.
|
|
11
11
|
*/
|
package/src/context.js
CHANGED
|
@@ -5,17 +5,14 @@
|
|
|
5
5
|
/**
|
|
6
6
|
* @module core/context
|
|
7
7
|
*/
|
|
8
|
-
import Config from '@ckeditor/ckeditor5-utils
|
|
9
|
-
import Collection from '@ckeditor/ckeditor5-utils/src/collection';
|
|
8
|
+
import { Config, Collection, CKEditorError, Locale } from '@ckeditor/ckeditor5-utils';
|
|
10
9
|
import PluginCollection from './plugincollection';
|
|
11
|
-
import Locale from '@ckeditor/ckeditor5-utils/src/locale';
|
|
12
|
-
import CKEditorError from '@ckeditor/ckeditor5-utils/src/ckeditorerror';
|
|
13
10
|
/**
|
|
14
11
|
* Provides a common, higher-level environment for solutions that use multiple {@link module:core/editor/editor~Editor editors}
|
|
15
12
|
* or plugins that work outside the editor. Use it instead of {@link module:core/editor/editor~Editor.create `Editor.create()`}
|
|
16
13
|
* in advanced application integrations.
|
|
17
14
|
*
|
|
18
|
-
* All configuration options passed to a context will be used as default options for editor instances initialized in that context.
|
|
15
|
+
* All configuration options passed to a context will be used as default options for the editor instances initialized in that context.
|
|
19
16
|
*
|
|
20
17
|
* {@link module:core/contextplugin~ContextPlugin Context plugins} passed to a context instance will be shared among all
|
|
21
18
|
* editor instances initialized in this context. These will be the same plugin instances for all the editors.
|
|
@@ -33,7 +30,7 @@ import CKEditorError from '@ckeditor/ckeditor5-utils/src/ckeditorerror';
|
|
|
33
30
|
* enable and configure them using the context.
|
|
34
31
|
*
|
|
35
32
|
* If you are using only a single editor on each page, use {@link module:core/editor/editor~Editor.create `Editor.create()`} instead.
|
|
36
|
-
* In such case, a context instance will be created by the editor instance in a transparent way.
|
|
33
|
+
* In such a case, a context instance will be created by the editor instance in a transparent way.
|
|
37
34
|
*
|
|
38
35
|
* See {@link module:core/context~Context.create `Context.create()`} for usage examples.
|
|
39
36
|
*/
|
package/src/contextplugin.js
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
/**
|
|
6
6
|
* @module core/contextplugin
|
|
7
7
|
*/
|
|
8
|
-
import {
|
|
8
|
+
import { ObservableMixin } from '@ckeditor/ckeditor5-utils';
|
|
9
9
|
/**
|
|
10
10
|
* The base class for {@link module:core/context~Context} plugin classes.
|
|
11
11
|
*
|
|
@@ -23,7 +23,7 @@ import { Observable } from '@ckeditor/ckeditor5-utils/src/observablemixin';
|
|
|
23
23
|
* @implements module:core/plugin~PluginInterface
|
|
24
24
|
* @mixes module:utils/observablemixin~ObservableMixin
|
|
25
25
|
*/
|
|
26
|
-
export default class ContextPlugin extends
|
|
26
|
+
export default class ContextPlugin extends ObservableMixin() {
|
|
27
27
|
/**
|
|
28
28
|
* Creates a new plugin instance.
|
|
29
29
|
*
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
/**
|
|
6
6
|
* @module core/editingkeystrokehandler
|
|
7
7
|
*/
|
|
8
|
-
import KeystrokeHandler from '@ckeditor/ckeditor5-utils
|
|
8
|
+
import { KeystrokeHandler } from '@ckeditor/ckeditor5-utils';
|
|
9
9
|
/**
|
|
10
10
|
* A keystroke handler for editor editing. Its instance is available
|
|
11
11
|
* in {@link module:core/editor/editor~Editor#keystrokes} so plugins
|
package/src/editor/editor.js
CHANGED
|
@@ -5,18 +5,12 @@
|
|
|
5
5
|
/**
|
|
6
6
|
* @module core/editor/editor
|
|
7
7
|
*/
|
|
8
|
+
import { Config, CKEditorError, ObservableMixin } from '@ckeditor/ckeditor5-utils';
|
|
9
|
+
import { Conversion, DataController, EditingController, Model, StylesProcessor } from '@ckeditor/ckeditor5-engine';
|
|
8
10
|
import Context from '../context';
|
|
9
|
-
import Config from '@ckeditor/ckeditor5-utils/src/config';
|
|
10
|
-
import EditingController from '@ckeditor/ckeditor5-engine/src/controller/editingcontroller';
|
|
11
11
|
import PluginCollection from '../plugincollection';
|
|
12
12
|
import CommandCollection from '../commandcollection';
|
|
13
|
-
import DataController from '@ckeditor/ckeditor5-engine/src/controller/datacontroller';
|
|
14
|
-
import Conversion from '@ckeditor/ckeditor5-engine/src/conversion/conversion';
|
|
15
|
-
import Model from '@ckeditor/ckeditor5-engine/src/model/model';
|
|
16
13
|
import EditingKeystrokeHandler from '../editingkeystrokehandler';
|
|
17
|
-
import { Observable } from '@ckeditor/ckeditor5-utils/src/observablemixin';
|
|
18
|
-
import CKEditorError from '@ckeditor/ckeditor5-utils/src/ckeditorerror';
|
|
19
|
-
import { StylesProcessor } from '@ckeditor/ckeditor5-engine/src/view/stylesmap';
|
|
20
14
|
/**
|
|
21
15
|
* The class representing a basic, generic editor.
|
|
22
16
|
*
|
|
@@ -38,7 +32,7 @@ import { StylesProcessor } from '@ckeditor/ckeditor5-engine/src/view/stylesmap';
|
|
|
38
32
|
* @abstract
|
|
39
33
|
* @mixes module:utils/observablemixin~ObservableMixin
|
|
40
34
|
*/
|
|
41
|
-
export default class Editor extends
|
|
35
|
+
export default class Editor extends ObservableMixin() {
|
|
42
36
|
/**
|
|
43
37
|
* Creates a new instance of the editor class.
|
|
44
38
|
*
|
package/src/editor/editorui.js
CHANGED
|
@@ -2,17 +2,17 @@
|
|
|
2
2
|
* @license Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.
|
|
3
3
|
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
|
|
4
4
|
*/
|
|
5
|
+
// TODO: can't import it from `@ckeditor/ckeditor5-ui` because of indirect circular dependency
|
|
6
|
+
// between `@ckeditor/ckeditor5-{ui,core}/src/index.ts`.
|
|
5
7
|
import ComponentFactory from '@ckeditor/ckeditor5-ui/src/componentfactory';
|
|
6
|
-
import FocusTracker from '@ckeditor/ckeditor5-utils/src/focustracker';
|
|
7
8
|
import TooltipManager from '@ckeditor/ckeditor5-ui/src/tooltipmanager';
|
|
8
|
-
import {
|
|
9
|
-
import isVisible from '@ckeditor/ckeditor5-utils/src/dom/isvisible';
|
|
9
|
+
import { ObservableMixin, isVisible, FocusTracker } from '@ckeditor/ckeditor5-utils';
|
|
10
10
|
/**
|
|
11
11
|
* A class providing the minimal interface that is required to successfully bootstrap any editor UI.
|
|
12
12
|
*
|
|
13
13
|
* @mixes module:utils/emittermixin~EmitterMixin
|
|
14
14
|
*/
|
|
15
|
-
export default class EditorUI extends
|
|
15
|
+
export default class EditorUI extends ObservableMixin() {
|
|
16
16
|
/**
|
|
17
17
|
* Creates an instance of the editor UI class.
|
|
18
18
|
*
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
|
|
4
4
|
*/
|
|
5
5
|
import { isFunction } from 'lodash-es';
|
|
6
|
-
import CKEditorError from '@ckeditor/ckeditor5-utils
|
|
6
|
+
import { CKEditorError } from '@ckeditor/ckeditor5-utils';
|
|
7
7
|
/**
|
|
8
8
|
* @module core/editor/utils/attachtoform
|
|
9
9
|
*/
|
|
@@ -3,8 +3,7 @@
|
|
|
3
3
|
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
|
|
4
4
|
*/
|
|
5
5
|
/* eslint-disable @typescript-eslint/explicit-module-boundary-types */
|
|
6
|
-
import CKEditorError from '@ckeditor/ckeditor5-utils
|
|
7
|
-
import setDataInElement from '@ckeditor/ckeditor5-utils/src/dom/setdatainelement';
|
|
6
|
+
import { CKEditorError, setDataInElement } from '@ckeditor/ckeditor5-utils';
|
|
8
7
|
/**
|
|
9
8
|
* @module core/editor/utils/elementapimixin
|
|
10
9
|
*/
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* @license Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.
|
|
3
3
|
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
|
|
4
4
|
*/
|
|
5
|
-
import CKEditorError from '@ckeditor/ckeditor5-utils
|
|
5
|
+
import { CKEditorError } from '@ckeditor/ckeditor5-utils';
|
|
6
6
|
/**
|
|
7
7
|
* @module core/editor/utils/securesourceelement
|
|
8
8
|
*/
|
package/src/multicommand.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
|
|
4
4
|
*/
|
|
5
5
|
import Command from './command';
|
|
6
|
-
import insertToPriorityArray from '@ckeditor/ckeditor5-utils
|
|
6
|
+
import { insertToPriorityArray } from '@ckeditor/ckeditor5-utils';
|
|
7
7
|
/**
|
|
8
8
|
* @module core/multicommand
|
|
9
9
|
*/
|
|
@@ -12,7 +12,7 @@ import insertToPriorityArray from '@ckeditor/ckeditor5-utils/src/inserttopriorit
|
|
|
12
12
|
*
|
|
13
13
|
* This command is used to proxy multiple commands. The multi-command is enabled when
|
|
14
14
|
* at least one of its registered child commands is enabled.
|
|
15
|
-
* When executing a multi-command the first enabled command with highest priority will be executed.
|
|
15
|
+
* When executing a multi-command, the first enabled command with highest priority will be executed.
|
|
16
16
|
*
|
|
17
17
|
* const multiCommand = new MultiCommand( editor );
|
|
18
18
|
*
|
|
@@ -69,7 +69,7 @@ export default class MultiCommand extends Command {
|
|
|
69
69
|
*/
|
|
70
70
|
registerChildCommand(command, options = {}) {
|
|
71
71
|
insertToPriorityArray(this._childCommandsDefinitions, { command, priority: options.priority || 'normal' });
|
|
72
|
-
// Change multi
|
|
72
|
+
// Change multi-command enabled state when one of registered commands changes state.
|
|
73
73
|
command.on('change:isEnabled', () => this._checkEnabled());
|
|
74
74
|
this._checkEnabled();
|
|
75
75
|
}
|
package/src/pendingactions.js
CHANGED
|
@@ -6,9 +6,7 @@
|
|
|
6
6
|
* @module core/pendingactions
|
|
7
7
|
*/
|
|
8
8
|
import ContextPlugin from './contextplugin';
|
|
9
|
-
import {
|
|
10
|
-
import Collection from '@ckeditor/ckeditor5-utils/src/collection';
|
|
11
|
-
import CKEditorError from '@ckeditor/ckeditor5-utils/src/ckeditorerror';
|
|
9
|
+
import { CKEditorError, Collection, ObservableMixin } from '@ckeditor/ckeditor5-utils';
|
|
12
10
|
/**
|
|
13
11
|
* The list of pending editor actions.
|
|
14
12
|
*
|
|
@@ -95,7 +93,7 @@ export default class PendingActions extends ContextPlugin {
|
|
|
95
93
|
*/
|
|
96
94
|
throw new CKEditorError('pendingactions-add-invalid-message', this);
|
|
97
95
|
}
|
|
98
|
-
const action = new
|
|
96
|
+
const action = new (ObservableMixin())();
|
|
99
97
|
action.set('message', message);
|
|
100
98
|
this._actions.add(action);
|
|
101
99
|
this.hasAny = true;
|
|
@@ -111,7 +109,7 @@ export default class PendingActions extends ContextPlugin {
|
|
|
111
109
|
this.hasAny = !!this._actions.length;
|
|
112
110
|
}
|
|
113
111
|
/**
|
|
114
|
-
* Returns the first action from the list or null
|
|
112
|
+
* Returns the first action from the list or null if the list is empty
|
|
115
113
|
*
|
|
116
114
|
* returns {Object|null} The pending action object.
|
|
117
115
|
*/
|
package/src/plugin.js
CHANGED
|
@@ -6,14 +6,14 @@
|
|
|
6
6
|
/**
|
|
7
7
|
* @module core/plugin
|
|
8
8
|
*/
|
|
9
|
-
import {
|
|
9
|
+
import { ObservableMixin } from '@ckeditor/ckeditor5-utils';
|
|
10
10
|
/**
|
|
11
11
|
* The base class for CKEditor plugin classes.
|
|
12
12
|
*
|
|
13
13
|
* @implements module:core/plugin~PluginInterface
|
|
14
14
|
* @mixes module:utils/observablemixin~ObservableMixin
|
|
15
15
|
*/
|
|
16
|
-
export default class Plugin extends
|
|
16
|
+
export default class Plugin extends ObservableMixin() {
|
|
17
17
|
/**
|
|
18
18
|
* @inheritDoc
|
|
19
19
|
*/
|
package/src/plugincollection.js
CHANGED
|
@@ -5,14 +5,13 @@
|
|
|
5
5
|
/**
|
|
6
6
|
* @module core/plugincollection
|
|
7
7
|
*/
|
|
8
|
-
import CKEditorError from '@ckeditor/ckeditor5-utils
|
|
9
|
-
import { Emitter } from '@ckeditor/ckeditor5-utils/src/emittermixin';
|
|
8
|
+
import { CKEditorError, EmitterMixin } from '@ckeditor/ckeditor5-utils';
|
|
10
9
|
/**
|
|
11
10
|
* Manages a list of CKEditor plugins, including loading, resolving dependencies and initialization.
|
|
12
11
|
*
|
|
13
12
|
* @mixes module:utils/emittermixin~EmitterMixin
|
|
14
13
|
*/
|
|
15
|
-
export default class PluginCollection extends
|
|
14
|
+
export default class PluginCollection extends EmitterMixin() {
|
|
16
15
|
/**
|
|
17
16
|
* Creates an instance of the plugin collection class.
|
|
18
17
|
* Allows loading and initializing plugins and their dependencies.
|