@ckeditor/ckeditor5-horizontal-line 48.2.0 → 48.3.0-alpha.1
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/dist/augmentation.d.ts +13 -13
- package/dist/horizontalline.d.ts +27 -27
- package/dist/horizontallinecommand.d.ts +24 -24
- package/dist/horizontallineediting.d.ts +21 -21
- package/dist/horizontallineui.d.ts +24 -24
- package/dist/index.css.map +1 -1
- package/dist/index.d.ts +10 -10
- package/dist/index.js +221 -185
- package/dist/index.js.map +1 -1
- package/package.json +7 -7
package/dist/augmentation.d.ts
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
/**
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
import type { HorizontalLine, HorizontalLineCommand, HorizontalLineEditing, HorizontalLineUI } from
|
|
6
|
-
declare module
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
2
|
+
* @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.
|
|
3
|
+
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
|
|
4
|
+
*/
|
|
5
|
+
import type { HorizontalLine, HorizontalLineCommand, HorizontalLineEditing, HorizontalLineUI } from "./index.js";
|
|
6
|
+
declare module "@ckeditor/ckeditor5-core" {
|
|
7
|
+
interface PluginsMap {
|
|
8
|
+
[HorizontalLine.pluginName]: HorizontalLine;
|
|
9
|
+
[HorizontalLineEditing.pluginName]: HorizontalLineEditing;
|
|
10
|
+
[HorizontalLineUI.pluginName]: HorizontalLineUI;
|
|
11
|
+
}
|
|
12
|
+
interface CommandsMap {
|
|
13
|
+
horizontalLine: HorizontalLineCommand;
|
|
14
|
+
}
|
|
15
15
|
}
|
package/dist/horizontalline.d.ts
CHANGED
|
@@ -1,32 +1,32 @@
|
|
|
1
1
|
/**
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
2
|
+
* @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.
|
|
3
|
+
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
|
|
4
|
+
*/
|
|
5
5
|
/**
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
import { Plugin } from
|
|
9
|
-
import { Widget } from
|
|
10
|
-
import { HorizontalLineEditing } from
|
|
11
|
-
import { HorizontalLineUI } from
|
|
6
|
+
* @module horizontal-line/horizontalline
|
|
7
|
+
*/
|
|
8
|
+
import { Plugin, type PluginDependenciesOf } from "@ckeditor/ckeditor5-core";
|
|
9
|
+
import { Widget } from "@ckeditor/ckeditor5-widget";
|
|
10
|
+
import { HorizontalLineEditing } from "./horizontallineediting.js";
|
|
11
|
+
import { HorizontalLineUI } from "./horizontallineui.js";
|
|
12
12
|
/**
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
13
|
+
* The horizontal line feature.
|
|
14
|
+
*
|
|
15
|
+
* It provides the possibility to insert a horizontal line into the rich-text editor.
|
|
16
|
+
*
|
|
17
|
+
* For a detailed overview, check the {@glink features/horizontal-line Horizontal line feature} documentation.
|
|
18
|
+
*/
|
|
19
19
|
export declare class HorizontalLine extends Plugin {
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
20
|
+
/**
|
|
21
|
+
* @inheritDoc
|
|
22
|
+
*/
|
|
23
|
+
static get requires(): PluginDependenciesOf<[HorizontalLineEditing, HorizontalLineUI, Widget]>;
|
|
24
|
+
/**
|
|
25
|
+
* @inheritDoc
|
|
26
|
+
*/
|
|
27
|
+
static get pluginName(): "HorizontalLine";
|
|
28
|
+
/**
|
|
29
|
+
* @inheritDoc
|
|
30
|
+
*/
|
|
31
|
+
static override get isOfficialPlugin(): true;
|
|
32
32
|
}
|
|
@@ -1,28 +1,28 @@
|
|
|
1
1
|
/**
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
import { Command } from
|
|
2
|
+
* @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.
|
|
3
|
+
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
|
|
4
|
+
*/
|
|
5
|
+
import { Command } from "@ckeditor/ckeditor5-core";
|
|
6
6
|
/**
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
7
|
+
* The horizontal line command.
|
|
8
|
+
*
|
|
9
|
+
* The command is registered by {@link module:horizontal-line/horizontallineediting~HorizontalLineEditing} as `'horizontalLine'`.
|
|
10
|
+
*
|
|
11
|
+
* To insert a horizontal line at the current selection, execute the command:
|
|
12
|
+
*
|
|
13
|
+
* ```ts
|
|
14
|
+
* editor.execute( 'horizontalLine' );
|
|
15
|
+
* ```
|
|
16
|
+
*/
|
|
17
17
|
export declare class HorizontalLineCommand extends Command {
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
18
|
+
/**
|
|
19
|
+
* @inheritDoc
|
|
20
|
+
*/
|
|
21
|
+
override refresh(): void;
|
|
22
|
+
/**
|
|
23
|
+
* Executes the command.
|
|
24
|
+
*
|
|
25
|
+
* @fires execute
|
|
26
|
+
*/
|
|
27
|
+
override execute(): void;
|
|
28
28
|
}
|
|
@@ -1,26 +1,26 @@
|
|
|
1
1
|
/**
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
2
|
+
* @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.
|
|
3
|
+
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
|
|
4
|
+
*/
|
|
5
5
|
/**
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
import { Plugin } from
|
|
9
|
-
import
|
|
6
|
+
* @module horizontal-line/horizontallineediting
|
|
7
|
+
*/
|
|
8
|
+
import { Plugin } from "@ckeditor/ckeditor5-core";
|
|
9
|
+
import "../theme/horizontalline.css";
|
|
10
10
|
/**
|
|
11
|
-
|
|
12
|
-
|
|
11
|
+
* The horizontal line editing feature.
|
|
12
|
+
*/
|
|
13
13
|
export declare class HorizontalLineEditing extends Plugin {
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
14
|
+
/**
|
|
15
|
+
* @inheritDoc
|
|
16
|
+
*/
|
|
17
|
+
static get pluginName(): "HorizontalLineEditing";
|
|
18
|
+
/**
|
|
19
|
+
* @inheritDoc
|
|
20
|
+
*/
|
|
21
|
+
static override get isOfficialPlugin(): true;
|
|
22
|
+
/**
|
|
23
|
+
* @inheritDoc
|
|
24
|
+
*/
|
|
25
|
+
init(): void;
|
|
26
26
|
}
|
|
@@ -1,29 +1,29 @@
|
|
|
1
1
|
/**
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
2
|
+
* @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.
|
|
3
|
+
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
|
|
4
|
+
*/
|
|
5
5
|
/**
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
import { Plugin } from
|
|
6
|
+
* @module horizontal-line/horizontallineui
|
|
7
|
+
*/
|
|
8
|
+
import { Plugin } from "@ckeditor/ckeditor5-core";
|
|
9
9
|
/**
|
|
10
|
-
|
|
11
|
-
|
|
10
|
+
* The horizontal line UI plugin.
|
|
11
|
+
*/
|
|
12
12
|
export declare class HorizontalLineUI extends Plugin {
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
13
|
+
/**
|
|
14
|
+
* @inheritDoc
|
|
15
|
+
*/
|
|
16
|
+
static get pluginName(): "HorizontalLineUI";
|
|
17
|
+
/**
|
|
18
|
+
* @inheritDoc
|
|
19
|
+
*/
|
|
20
|
+
static override get isOfficialPlugin(): true;
|
|
21
|
+
/**
|
|
22
|
+
* @inheritDoc
|
|
23
|
+
*/
|
|
24
|
+
init(): void;
|
|
25
|
+
/**
|
|
26
|
+
* Creates a button for horizontal line command to use either in toolbar or in menu bar.
|
|
27
|
+
*/
|
|
28
|
+
private _createButton;
|
|
29
29
|
}
|
package/dist/index.css.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../theme/horizontalline.css","index.css"],"names":[],"mappings":";;;;AAMA,CAAA,EAAA,CAAA,gBAAA,CAAA,CAAA,EAAA,CAAA,UAAA,CAAA,IAAA,CAAA;ACLA,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI;AACpB;;ADSA,CAAA,EAAA,CAAA,OAAA,CAAA,EAAA,CAAA;ACNA,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,MAAM;AACxB,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM;AACrB,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;AACX,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC;AACb,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG;AACb,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC;AAChB,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,KAAK;AACvB;;AAEA,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC","file":"index.css.map","sourcesContent":["/*\n * Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options\n */\n\n\n.ck-editor__editable .ck-horizontal-line {\n\t/* Necessary to render properly next to floated objects, e.g. side image case. */\n\tdisplay: flow-root;\n}\n\n.ck-content hr {\n\tdisplay: inline-block;\n\twidth: 100%;\n\tmargin: 15px 0;\n\theight: 4px;\n\tbackground: hsl(0, 0%, 87%);\n\tborder: 0;\n\tvertical-align: middle;\n}\n",".ck-editor__editable .ck-horizontal-line {\n display: flow-root;\n}\n\n.ck-content hr {\n vertical-align: middle;\n background: #dedede;\n border: 0;\n width: 100%;\n height: 4px;\n margin: 15px 0;\n display: inline-block;\n}\n\n/*# sourceMappingURL=index.css.map */"]}
|
|
1
|
+
{"version":3,"sources":["../theme/horizontalline.css","index.css"],"names":[],"mappings":";;;;AAMA,CAAA,EAAA,CAAA,gBAAA,CAAA,CAAA,EAAA,CAAA,UAAA,CAAA,IAAA,CAAA;ACLA,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI;AACpB;;ADSA,CAAA,EAAA,CAAA,OAAA,CAAA,EAAA,CAAA;ACNA,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,MAAM;AACxB,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM;AACrB,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;AACX,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC;AACb,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG;AACb,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC;AAChB,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,KAAK;AACvB;;AAEA,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC","file":"index.css.map","sourcesContent":["/*\n * @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options\n */\n\n\n.ck-editor__editable .ck-horizontal-line {\n\t/* Necessary to render properly next to floated objects, e.g. side image case. */\n\tdisplay: flow-root;\n}\n\n.ck-content hr {\n\tdisplay: inline-block;\n\twidth: 100%;\n\tmargin: 15px 0;\n\theight: 4px;\n\tbackground: hsl(0, 0%, 87%);\n\tborder: 0;\n\tvertical-align: middle;\n}\n",".ck-editor__editable .ck-horizontal-line {\n display: flow-root;\n}\n\n.ck-content hr {\n vertical-align: middle;\n background: #dedede;\n border: 0;\n width: 100%;\n height: 4px;\n margin: 15px 0;\n display: inline-block;\n}\n\n/*# sourceMappingURL=index.css.map */"]}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
/**
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
2
|
+
* @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.
|
|
3
|
+
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
|
|
4
|
+
*/
|
|
5
5
|
/**
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
export { HorizontalLine } from
|
|
9
|
-
export { HorizontalLineEditing } from
|
|
10
|
-
export { HorizontalLineUI } from
|
|
11
|
-
export { HorizontalLineCommand } from
|
|
12
|
-
import
|
|
6
|
+
* @module horizontal-line
|
|
7
|
+
*/
|
|
8
|
+
export { HorizontalLine } from "./horizontalline.js";
|
|
9
|
+
export { HorizontalLineEditing } from "./horizontallineediting.js";
|
|
10
|
+
export { HorizontalLineUI } from "./horizontallineui.js";
|
|
11
|
+
export { HorizontalLineCommand } from "./horizontallinecommand.js";
|
|
12
|
+
import "./augmentation.js";
|
package/dist/index.js
CHANGED
|
@@ -2,204 +2,240 @@
|
|
|
2
2
|
* @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.
|
|
3
3
|
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
|
|
4
4
|
*/
|
|
5
|
-
import { Command, Plugin } from
|
|
6
|
-
import { findOptimalInsertionRange, toWidget
|
|
7
|
-
import { IconHorizontalLine } from
|
|
8
|
-
import { ButtonView, MenuBarMenuListItemButtonView } from
|
|
5
|
+
import { Command, Plugin } from "@ckeditor/ckeditor5-core";
|
|
6
|
+
import { Widget, findOptimalInsertionRange, toWidget } from "@ckeditor/ckeditor5-widget";
|
|
7
|
+
import { IconHorizontalLine } from "@ckeditor/ckeditor5-icons";
|
|
8
|
+
import { ButtonView, MenuBarMenuListItemButtonView } from "@ckeditor/ckeditor5-ui";
|
|
9
9
|
|
|
10
10
|
/**
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
11
|
+
* @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.
|
|
12
|
+
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
|
|
13
|
+
*/
|
|
14
|
+
/**
|
|
15
|
+
* The horizontal line command.
|
|
16
|
+
*
|
|
17
|
+
* The command is registered by {@link module:horizontal-line/horizontallineediting~HorizontalLineEditing} as `'horizontalLine'`.
|
|
18
|
+
*
|
|
19
|
+
* To insert a horizontal line at the current selection, execute the command:
|
|
20
|
+
*
|
|
21
|
+
* ```ts
|
|
22
|
+
* editor.execute( 'horizontalLine' );
|
|
23
|
+
* ```
|
|
24
|
+
*/
|
|
25
|
+
var HorizontalLineCommand = class extends Command {
|
|
26
|
+
/**
|
|
27
|
+
* @inheritDoc
|
|
28
|
+
*/
|
|
29
|
+
refresh() {
|
|
30
|
+
const model = this.editor.model;
|
|
31
|
+
const schema = model.schema;
|
|
32
|
+
const selection = model.document.selection;
|
|
33
|
+
this.isEnabled = isHorizontalLineAllowedInParent(selection, schema, model);
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Executes the command.
|
|
37
|
+
*
|
|
38
|
+
* @fires execute
|
|
39
|
+
*/
|
|
40
|
+
execute() {
|
|
41
|
+
const model = this.editor.model;
|
|
42
|
+
model.change((writer) => {
|
|
43
|
+
const horizontalElement = writer.createElement("horizontalLine");
|
|
44
|
+
model.insertObject(horizontalElement, null, null, { setSelection: "after" });
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
};
|
|
43
48
|
/**
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
49
|
+
* Checks if a horizontal line is allowed by the schema in the optimal insertion parent.
|
|
50
|
+
*
|
|
51
|
+
* @param model Model instance.
|
|
52
|
+
*/
|
|
53
|
+
function isHorizontalLineAllowedInParent(selection, schema, model) {
|
|
54
|
+
const parent = getInsertHorizontalLineParent(selection, model);
|
|
55
|
+
return schema.checkChild(parent, "horizontalLine");
|
|
50
56
|
}
|
|
51
57
|
/**
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
}
|
|
62
|
-
return parent;
|
|
58
|
+
* Returns a node that will be used to insert a horizontal line with `model.insertContent` to check if the horizontal line can be
|
|
59
|
+
* placed there.
|
|
60
|
+
*
|
|
61
|
+
* @param model Model instance.
|
|
62
|
+
*/
|
|
63
|
+
function getInsertHorizontalLineParent(selection, model) {
|
|
64
|
+
const parent = findOptimalInsertionRange(selection, model).start.parent;
|
|
65
|
+
if (parent.isEmpty && !parent.is("rootElement")) return parent.parent;
|
|
66
|
+
return parent;
|
|
63
67
|
}
|
|
64
68
|
|
|
65
69
|
/**
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
}
|
|
73
|
-
/**
|
|
74
|
-
* @inheritDoc
|
|
75
|
-
*/ static get isOfficialPlugin() {
|
|
76
|
-
return true;
|
|
77
|
-
}
|
|
78
|
-
/**
|
|
79
|
-
* @inheritDoc
|
|
80
|
-
*/ init() {
|
|
81
|
-
const editor = this.editor;
|
|
82
|
-
const schema = editor.model.schema;
|
|
83
|
-
const t = editor.t;
|
|
84
|
-
const conversion = editor.conversion;
|
|
85
|
-
schema.register('horizontalLine', {
|
|
86
|
-
inheritAllFrom: '$blockObject'
|
|
87
|
-
});
|
|
88
|
-
conversion.for('dataDowncast').elementToElement({
|
|
89
|
-
model: 'horizontalLine',
|
|
90
|
-
view: (modelElement, { writer })=>{
|
|
91
|
-
return writer.createEmptyElement('hr');
|
|
92
|
-
}
|
|
93
|
-
});
|
|
94
|
-
conversion.for('editingDowncast').elementToStructure({
|
|
95
|
-
model: 'horizontalLine',
|
|
96
|
-
view: (modelElement, { writer })=>{
|
|
97
|
-
const label = t('Horizontal line');
|
|
98
|
-
const viewWrapper = writer.createContainerElement('div', null, writer.createEmptyElement('hr'));
|
|
99
|
-
writer.addClass('ck-horizontal-line', viewWrapper);
|
|
100
|
-
writer.setCustomProperty('hr', true, viewWrapper);
|
|
101
|
-
return toHorizontalLineWidget(viewWrapper, writer, label);
|
|
102
|
-
}
|
|
103
|
-
});
|
|
104
|
-
conversion.for('upcast').elementToElement({
|
|
105
|
-
view: 'hr',
|
|
106
|
-
model: 'horizontalLine'
|
|
107
|
-
});
|
|
108
|
-
editor.commands.add('horizontalLine', new HorizontalLineCommand(editor));
|
|
109
|
-
}
|
|
110
|
-
}
|
|
70
|
+
* @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.
|
|
71
|
+
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
|
|
72
|
+
*/
|
|
73
|
+
/**
|
|
74
|
+
* @module horizontal-line/horizontallineediting
|
|
75
|
+
*/
|
|
111
76
|
/**
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
77
|
+
* The horizontal line editing feature.
|
|
78
|
+
*/
|
|
79
|
+
var HorizontalLineEditing = class extends Plugin {
|
|
80
|
+
/**
|
|
81
|
+
* @inheritDoc
|
|
82
|
+
*/
|
|
83
|
+
static get pluginName() {
|
|
84
|
+
return "HorizontalLineEditing";
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* @inheritDoc
|
|
88
|
+
*/
|
|
89
|
+
static get isOfficialPlugin() {
|
|
90
|
+
return true;
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* @inheritDoc
|
|
94
|
+
*/
|
|
95
|
+
init() {
|
|
96
|
+
const editor = this.editor;
|
|
97
|
+
const schema = editor.model.schema;
|
|
98
|
+
const t = editor.t;
|
|
99
|
+
const conversion = editor.conversion;
|
|
100
|
+
schema.register("horizontalLine", { inheritAllFrom: "$blockObject" });
|
|
101
|
+
conversion.for("dataDowncast").elementToElement({
|
|
102
|
+
model: "horizontalLine",
|
|
103
|
+
view: (modelElement, { writer }) => {
|
|
104
|
+
return writer.createEmptyElement("hr");
|
|
105
|
+
}
|
|
106
|
+
});
|
|
107
|
+
conversion.for("editingDowncast").elementToStructure({
|
|
108
|
+
model: "horizontalLine",
|
|
109
|
+
view: (modelElement, { writer }) => {
|
|
110
|
+
const label = t("Horizontal line");
|
|
111
|
+
const viewWrapper = writer.createContainerElement("div", null, writer.createEmptyElement("hr"));
|
|
112
|
+
writer.addClass("ck-horizontal-line", viewWrapper);
|
|
113
|
+
writer.setCustomProperty("hr", true, viewWrapper);
|
|
114
|
+
return toHorizontalLineWidget(viewWrapper, writer, label);
|
|
115
|
+
}
|
|
116
|
+
});
|
|
117
|
+
conversion.for("upcast").elementToElement({
|
|
118
|
+
view: "hr",
|
|
119
|
+
model: "horizontalLine"
|
|
120
|
+
});
|
|
121
|
+
editor.commands.add("horizontalLine", new HorizontalLineCommand(editor));
|
|
122
|
+
}
|
|
123
|
+
};
|
|
124
|
+
/**
|
|
125
|
+
* Converts a given {@link module:engine/view/element~ViewElement} to a horizontal line widget:
|
|
126
|
+
* * Adds a {@link module:engine/view/element~ViewElement#_setCustomProperty custom property} allowing to
|
|
127
|
+
* recognize the horizontal line widget element.
|
|
128
|
+
* * Calls the {@link module:widget/utils~toWidget} function with the proper element's label creator.
|
|
129
|
+
*
|
|
130
|
+
* @param writer An instance of the view writer.
|
|
131
|
+
*/
|
|
132
|
+
function toHorizontalLineWidget(viewElement, writer, label) {
|
|
133
|
+
writer.setCustomProperty("horizontalLine", true, viewElement);
|
|
134
|
+
return toWidget(viewElement, writer, { label });
|
|
123
135
|
}
|
|
124
136
|
|
|
125
137
|
/**
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
}
|
|
138
|
+
* @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.
|
|
139
|
+
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
|
|
140
|
+
*/
|
|
141
|
+
/**
|
|
142
|
+
* @module horizontal-line/horizontallineui
|
|
143
|
+
*/
|
|
144
|
+
/**
|
|
145
|
+
* The horizontal line UI plugin.
|
|
146
|
+
*/
|
|
147
|
+
var HorizontalLineUI = class extends Plugin {
|
|
148
|
+
/**
|
|
149
|
+
* @inheritDoc
|
|
150
|
+
*/
|
|
151
|
+
static get pluginName() {
|
|
152
|
+
return "HorizontalLineUI";
|
|
153
|
+
}
|
|
154
|
+
/**
|
|
155
|
+
* @inheritDoc
|
|
156
|
+
*/
|
|
157
|
+
static get isOfficialPlugin() {
|
|
158
|
+
return true;
|
|
159
|
+
}
|
|
160
|
+
/**
|
|
161
|
+
* @inheritDoc
|
|
162
|
+
*/
|
|
163
|
+
init() {
|
|
164
|
+
const editor = this.editor;
|
|
165
|
+
editor.ui.componentFactory.add("horizontalLine", () => {
|
|
166
|
+
const buttonView = this._createButton(ButtonView);
|
|
167
|
+
buttonView.set({ tooltip: true });
|
|
168
|
+
return buttonView;
|
|
169
|
+
});
|
|
170
|
+
editor.ui.componentFactory.add("menuBar:horizontalLine", () => {
|
|
171
|
+
return this._createButton(MenuBarMenuListItemButtonView);
|
|
172
|
+
});
|
|
173
|
+
}
|
|
174
|
+
/**
|
|
175
|
+
* Creates a button for horizontal line command to use either in toolbar or in menu bar.
|
|
176
|
+
*/
|
|
177
|
+
_createButton(ButtonClass) {
|
|
178
|
+
const editor = this.editor;
|
|
179
|
+
const locale = editor.locale;
|
|
180
|
+
const command = editor.commands.get("horizontalLine");
|
|
181
|
+
const view = new ButtonClass(editor.locale);
|
|
182
|
+
const t = locale.t;
|
|
183
|
+
view.set({
|
|
184
|
+
label: t("Horizontal line"),
|
|
185
|
+
icon: IconHorizontalLine
|
|
186
|
+
});
|
|
187
|
+
view.bind("isEnabled").to(command, "isEnabled");
|
|
188
|
+
this.listenTo(view, "execute", () => {
|
|
189
|
+
editor.execute("horizontalLine");
|
|
190
|
+
editor.editing.view.focus();
|
|
191
|
+
});
|
|
192
|
+
return view;
|
|
193
|
+
}
|
|
194
|
+
};
|
|
175
195
|
|
|
176
196
|
/**
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
197
|
+
* @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.
|
|
198
|
+
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
|
|
199
|
+
*/
|
|
200
|
+
/**
|
|
201
|
+
* @module horizontal-line/horizontalline
|
|
202
|
+
*/
|
|
203
|
+
/**
|
|
204
|
+
* The horizontal line feature.
|
|
205
|
+
*
|
|
206
|
+
* It provides the possibility to insert a horizontal line into the rich-text editor.
|
|
207
|
+
*
|
|
208
|
+
* For a detailed overview, check the {@glink features/horizontal-line Horizontal line feature} documentation.
|
|
209
|
+
*/
|
|
210
|
+
var HorizontalLine = class extends Plugin {
|
|
211
|
+
/**
|
|
212
|
+
* @inheritDoc
|
|
213
|
+
*/
|
|
214
|
+
static get requires() {
|
|
215
|
+
return [
|
|
216
|
+
HorizontalLineEditing,
|
|
217
|
+
HorizontalLineUI,
|
|
218
|
+
Widget
|
|
219
|
+
];
|
|
220
|
+
}
|
|
221
|
+
/**
|
|
222
|
+
* @inheritDoc
|
|
223
|
+
*/
|
|
224
|
+
static get pluginName() {
|
|
225
|
+
return "HorizontalLine";
|
|
226
|
+
}
|
|
227
|
+
/**
|
|
228
|
+
* @inheritDoc
|
|
229
|
+
*/
|
|
230
|
+
static get isOfficialPlugin() {
|
|
231
|
+
return true;
|
|
232
|
+
}
|
|
233
|
+
};
|
|
234
|
+
|
|
235
|
+
/**
|
|
236
|
+
* @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.
|
|
237
|
+
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
|
|
238
|
+
*/
|
|
203
239
|
|
|
204
240
|
export { HorizontalLine, HorizontalLineCommand, HorizontalLineEditing, HorizontalLineUI };
|
|
205
|
-
//# sourceMappingURL=index.js.map
|
|
241
|
+
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["index.js","../src/horizontallinecommand.ts","../src/horizontallineediting.ts","../src/horizontallineui.ts","../src/horizontalline.ts"],"names":["HorizontalLineCommand","Command","refresh","model","editor","schema","selection","document","isEnabled","isHorizontalLineAllowedInParent","execute","change","writer","horizontalElement","createElement","insertObject","setSelection","parent","getInsertHorizontalLineParent","checkChild","insertionRange","findOptimalInsertionRange","start","isEmpty","is","HorizontalLineEditing","Plugin","pluginName","isOfficialPlugin","init","t","conversion","register","inheritAllFrom","for","elementToElement","view","modelElement","createEmptyElement","elementToStructure","label","viewWrapper","createContainerElement","addClass","setCustomProperty","toHorizontalLineWidget","commands","add","viewElement","toWidget","HorizontalLineUI","ui","componentFactory","buttonView","_createButton","ButtonView","set","tooltip","MenuBarMenuListItemButtonView","ButtonClass","locale","command","get","icon","IconHorizontalLine","bind","to","listenTo","editing","focus","HorizontalLine","requires","Widget"],"mappings":"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","file":"index.js.map","sourcesContent":["import { Command, Plugin } from '@ckeditor/ckeditor5-core/dist/index.js';\nimport { findOptimalInsertionRange, toWidget, Widget } from '@ckeditor/ckeditor5-widget/dist/index.js';\nimport { IconHorizontalLine } from '@ckeditor/ckeditor5-icons/dist/index.js';\nimport { ButtonView, MenuBarMenuListItemButtonView } from '@ckeditor/ckeditor5-ui/dist/index.js';\n\n/**\n * The horizontal line command.\n *\n * The command is registered by {@link module:horizontal-line/horizontallineediting~HorizontalLineEditing} as `'horizontalLine'`.\n *\n * To insert a horizontal line at the current selection, execute the command:\n *\n * ```ts\n * editor.execute( 'horizontalLine' );\n * ```\n */ class HorizontalLineCommand extends Command {\n /**\n\t * @inheritDoc\n\t */ refresh() {\n const model = this.editor.model;\n const schema = model.schema;\n const selection = model.document.selection;\n this.isEnabled = isHorizontalLineAllowedInParent(selection, schema, model);\n }\n /**\n\t * Executes the command.\n\t *\n\t * @fires execute\n\t */ execute() {\n const model = this.editor.model;\n model.change((writer)=>{\n const horizontalElement = writer.createElement('horizontalLine');\n model.insertObject(horizontalElement, null, null, {\n setSelection: 'after'\n });\n });\n }\n}\n/**\n * Checks if a horizontal line is allowed by the schema in the optimal insertion parent.\n *\n * @param model Model instance.\n */ function isHorizontalLineAllowedInParent(selection, schema, model) {\n const parent = getInsertHorizontalLineParent(selection, model);\n return schema.checkChild(parent, 'horizontalLine');\n}\n/**\n * Returns a node that will be used to insert a horizontal line with `model.insertContent` to check if the horizontal line can be\n * placed there.\n *\n * @param model Model instance.\n */ function getInsertHorizontalLineParent(selection, model) {\n const insertionRange = findOptimalInsertionRange(selection, model);\n const parent = insertionRange.start.parent;\n if (parent.isEmpty && !parent.is('rootElement')) {\n return parent.parent;\n }\n return parent;\n}\n\n/**\n * The horizontal line editing feature.\n */ class HorizontalLineEditing extends Plugin {\n /**\n\t * @inheritDoc\n\t */ static get pluginName() {\n return 'HorizontalLineEditing';\n }\n /**\n\t * @inheritDoc\n\t */ static get isOfficialPlugin() {\n return true;\n }\n /**\n\t * @inheritDoc\n\t */ init() {\n const editor = this.editor;\n const schema = editor.model.schema;\n const t = editor.t;\n const conversion = editor.conversion;\n schema.register('horizontalLine', {\n inheritAllFrom: '$blockObject'\n });\n conversion.for('dataDowncast').elementToElement({\n model: 'horizontalLine',\n view: (modelElement, { writer })=>{\n return writer.createEmptyElement('hr');\n }\n });\n conversion.for('editingDowncast').elementToStructure({\n model: 'horizontalLine',\n view: (modelElement, { writer })=>{\n const label = t('Horizontal line');\n const viewWrapper = writer.createContainerElement('div', null, writer.createEmptyElement('hr'));\n writer.addClass('ck-horizontal-line', viewWrapper);\n writer.setCustomProperty('hr', true, viewWrapper);\n return toHorizontalLineWidget(viewWrapper, writer, label);\n }\n });\n conversion.for('upcast').elementToElement({\n view: 'hr',\n model: 'horizontalLine'\n });\n editor.commands.add('horizontalLine', new HorizontalLineCommand(editor));\n }\n}\n/**\n * Converts a given {@link module:engine/view/element~ViewElement} to a horizontal line widget:\n * * Adds a {@link module:engine/view/element~ViewElement#_setCustomProperty custom property} allowing to\n * recognize the horizontal line widget element.\n * * Calls the {@link module:widget/utils~toWidget} function with the proper element's label creator.\n *\n * @param writer An instance of the view writer.\n */ function toHorizontalLineWidget(viewElement, writer, label) {\n writer.setCustomProperty('horizontalLine', true, viewElement);\n return toWidget(viewElement, writer, {\n label\n });\n}\n\n/**\n * The horizontal line UI plugin.\n */ class HorizontalLineUI extends Plugin {\n /**\n\t * @inheritDoc\n\t */ static get pluginName() {\n return 'HorizontalLineUI';\n }\n /**\n\t * @inheritDoc\n\t */ static get isOfficialPlugin() {\n return true;\n }\n /**\n\t * @inheritDoc\n\t */ init() {\n const editor = this.editor;\n // Add the `horizontalLine` button to feature components.\n editor.ui.componentFactory.add('horizontalLine', ()=>{\n const buttonView = this._createButton(ButtonView);\n buttonView.set({\n tooltip: true\n });\n return buttonView;\n });\n editor.ui.componentFactory.add('menuBar:horizontalLine', ()=>{\n return this._createButton(MenuBarMenuListItemButtonView);\n });\n }\n /**\n\t * Creates a button for horizontal line command to use either in toolbar or in menu bar.\n\t */ _createButton(ButtonClass) {\n const editor = this.editor;\n const locale = editor.locale;\n const command = editor.commands.get('horizontalLine');\n const view = new ButtonClass(editor.locale);\n const t = locale.t;\n view.set({\n label: t('Horizontal line'),\n icon: IconHorizontalLine\n });\n view.bind('isEnabled').to(command, 'isEnabled');\n // Execute the command.\n this.listenTo(view, 'execute', ()=>{\n editor.execute('horizontalLine');\n editor.editing.view.focus();\n });\n return view;\n }\n}\n\n/**\n * The horizontal line feature.\n *\n * It provides the possibility to insert a horizontal line into the rich-text editor.\n *\n * For a detailed overview, check the {@glink features/horizontal-line Horizontal line feature} documentation.\n */ class HorizontalLine extends Plugin {\n /**\n\t * @inheritDoc\n\t */ static get requires() {\n return [\n HorizontalLineEditing,\n HorizontalLineUI,\n Widget\n ];\n }\n /**\n\t * @inheritDoc\n\t */ static get pluginName() {\n return 'HorizontalLine';\n }\n /**\n\t * @inheritDoc\n\t */ static get isOfficialPlugin() {\n return true;\n }\n}\n\nexport { HorizontalLine, HorizontalLineCommand, HorizontalLineEditing, HorizontalLineUI };\n//# sourceMappingURL=index.js.map\n","/**\n * @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options\n */\n\n/**\n * @module horizontal-line/horizontallinecommand\n */\n\nimport type { ModelDocumentSelection, ModelElement, Model, ModelSchema, ModelSelection } from '@ckeditor/ckeditor5-engine';\nimport { Command } from '@ckeditor/ckeditor5-core';\nimport { findOptimalInsertionRange } from '@ckeditor/ckeditor5-widget';\n\n/**\n * The horizontal line command.\n *\n * The command is registered by {@link module:horizontal-line/horizontallineediting~HorizontalLineEditing} as `'horizontalLine'`.\n *\n * To insert a horizontal line at the current selection, execute the command:\n *\n * ```ts\n * editor.execute( 'horizontalLine' );\n * ```\n */\nexport class HorizontalLineCommand extends Command {\n\t/**\n\t * @inheritDoc\n\t */\n\tpublic override refresh(): void {\n\t\tconst model = this.editor.model;\n\t\tconst schema = model.schema;\n\t\tconst selection = model.document.selection;\n\n\t\tthis.isEnabled = isHorizontalLineAllowedInParent( selection, schema, model );\n\t}\n\n\t/**\n\t * Executes the command.\n\t *\n\t * @fires execute\n\t */\n\tpublic override execute(): void {\n\t\tconst model = this.editor.model;\n\n\t\tmodel.change( writer => {\n\t\t\tconst horizontalElement = writer.createElement( 'horizontalLine' );\n\n\t\t\tmodel.insertObject( horizontalElement, null, null, { setSelection: 'after' } );\n\t\t} );\n\t}\n}\n\n/**\n * Checks if a horizontal line is allowed by the schema in the optimal insertion parent.\n *\n * @param model Model instance.\n */\nfunction isHorizontalLineAllowedInParent( selection: ModelSelection | ModelDocumentSelection, schema: ModelSchema, model: Model ): boolean {\n\tconst parent = getInsertHorizontalLineParent( selection, model );\n\n\treturn schema.checkChild( parent, 'horizontalLine' );\n}\n\n/**\n * Returns a node that will be used to insert a horizontal line with `model.insertContent` to check if the horizontal line can be\n * placed there.\n *\n * @param model Model instance.\n */\nfunction getInsertHorizontalLineParent( selection: ModelSelection | ModelDocumentSelection, model: Model ): ModelElement {\n\tconst insertionRange = findOptimalInsertionRange( selection, model );\n\tconst parent = insertionRange.start.parent;\n\n\tif ( parent.isEmpty && !parent.is( 'rootElement' ) ) {\n\t\treturn parent.parent! as ModelElement;\n\t}\n\n\treturn parent as ModelElement;\n}\n","/**\n * @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options\n */\n\n/**\n * @module horizontal-line/horizontallineediting\n */\n\nimport { Plugin } from '@ckeditor/ckeditor5-core';\nimport { toWidget } from '@ckeditor/ckeditor5-widget';\nimport type { ViewDowncastWriter, ViewElement } from '@ckeditor/ckeditor5-engine';\n\nimport { HorizontalLineCommand } from './horizontallinecommand.js';\n\nimport '../theme/horizontalline.css';\n\n/**\n * The horizontal line editing feature.\n */\nexport class HorizontalLineEditing extends Plugin {\n\t/**\n\t * @inheritDoc\n\t */\n\tpublic static get pluginName() {\n\t\treturn 'HorizontalLineEditing' as const;\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tpublic static override get isOfficialPlugin(): true {\n\t\treturn true;\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tpublic init(): void {\n\t\tconst editor = this.editor;\n\t\tconst schema = editor.model.schema;\n\t\tconst t = editor.t;\n\t\tconst conversion = editor.conversion;\n\n\t\tschema.register( 'horizontalLine', {\n\t\t\tinheritAllFrom: '$blockObject'\n\t\t} );\n\n\t\tconversion.for( 'dataDowncast' ).elementToElement( {\n\t\t\tmodel: 'horizontalLine',\n\t\t\tview: ( modelElement, { writer } ) => {\n\t\t\t\treturn writer.createEmptyElement( 'hr' );\n\t\t\t}\n\t\t} );\n\n\t\tconversion.for( 'editingDowncast' ).elementToStructure( {\n\t\t\tmodel: 'horizontalLine',\n\t\t\tview: ( modelElement, { writer } ) => {\n\t\t\t\tconst label = t( 'Horizontal line' );\n\n\t\t\t\tconst viewWrapper = writer.createContainerElement( 'div', null,\n\t\t\t\t\twriter.createEmptyElement( 'hr' )\n\t\t\t\t);\n\n\t\t\t\twriter.addClass( 'ck-horizontal-line', viewWrapper );\n\t\t\t\twriter.setCustomProperty( 'hr', true, viewWrapper );\n\n\t\t\t\treturn toHorizontalLineWidget( viewWrapper, writer, label );\n\t\t\t}\n\t\t} );\n\n\t\tconversion.for( 'upcast' ).elementToElement( { view: 'hr', model: 'horizontalLine' } );\n\n\t\teditor.commands.add( 'horizontalLine', new HorizontalLineCommand( editor ) );\n\t}\n}\n\n/**\n * Converts a given {@link module:engine/view/element~ViewElement} to a horizontal line widget:\n * * Adds a {@link module:engine/view/element~ViewElement#_setCustomProperty custom property} allowing to\n * recognize the horizontal line widget element.\n * * Calls the {@link module:widget/utils~toWidget} function with the proper element's label creator.\n *\n * @param writer An instance of the view writer.\n */\nfunction toHorizontalLineWidget( viewElement: ViewElement, writer: ViewDowncastWriter, label: string ): ViewElement {\n\twriter.setCustomProperty( 'horizontalLine', true, viewElement );\n\n\treturn toWidget( viewElement, writer, { label } );\n}\n","/**\n * @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options\n */\n\n/**\n * @module horizontal-line/horizontallineui\n */\n\nimport { Plugin } from '@ckeditor/ckeditor5-core';\nimport { IconHorizontalLine } from '@ckeditor/ckeditor5-icons';\nimport { ButtonView, MenuBarMenuListItemButtonView } from '@ckeditor/ckeditor5-ui';\n\nimport { type HorizontalLineCommand } from './horizontallinecommand.js';\n\n/**\n * The horizontal line UI plugin.\n */\nexport class HorizontalLineUI extends Plugin {\n\t/**\n\t * @inheritDoc\n\t */\n\tpublic static get pluginName() {\n\t\treturn 'HorizontalLineUI' as const;\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tpublic static override get isOfficialPlugin(): true {\n\t\treturn true;\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tpublic init(): void {\n\t\tconst editor = this.editor;\n\n\t\t// Add the `horizontalLine` button to feature components.\n\t\teditor.ui.componentFactory.add( 'horizontalLine', () => {\n\t\t\tconst buttonView = this._createButton( ButtonView );\n\n\t\t\tbuttonView.set( {\n\t\t\t\ttooltip: true\n\t\t\t} );\n\n\t\t\treturn buttonView;\n\t\t} );\n\n\t\teditor.ui.componentFactory.add( 'menuBar:horizontalLine', () => {\n\t\t\treturn this._createButton( MenuBarMenuListItemButtonView );\n\t\t} );\n\t}\n\n\t/**\n\t * Creates a button for horizontal line command to use either in toolbar or in menu bar.\n\t */\n\tprivate _createButton<T extends typeof ButtonView | typeof MenuBarMenuListItemButtonView>( ButtonClass: T ): InstanceType<T> {\n\t\tconst editor = this.editor;\n\t\tconst locale = editor.locale;\n\t\tconst command: HorizontalLineCommand = editor.commands.get( 'horizontalLine' )!;\n\t\tconst view = new ButtonClass( editor.locale ) as InstanceType<T>;\n\t\tconst t = locale.t;\n\n\t\tview.set( {\n\t\t\tlabel: t( 'Horizontal line' ),\n\t\t\ticon: IconHorizontalLine\n\t\t} );\n\n\t\tview.bind( 'isEnabled' ).to( command, 'isEnabled' );\n\n\t\t// Execute the command.\n\t\tthis.listenTo( view, 'execute', () => {\n\t\t\teditor.execute( 'horizontalLine' );\n\t\t\teditor.editing.view.focus();\n\t\t} );\n\n\t\treturn view;\n\t}\n}\n","/**\n * @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options\n */\n\n/**\n * @module horizontal-line/horizontalline\n */\n\nimport { Plugin } from '@ckeditor/ckeditor5-core';\nimport { Widget } from '@ckeditor/ckeditor5-widget';\nimport { HorizontalLineEditing } from './horizontallineediting.js';\nimport { HorizontalLineUI } from './horizontallineui.js';\n\n/**\n * The horizontal line feature.\n *\n * It provides the possibility to insert a horizontal line into the rich-text editor.\n *\n * For a detailed overview, check the {@glink features/horizontal-line Horizontal line feature} documentation.\n */\nexport class HorizontalLine extends Plugin {\n\t/**\n\t * @inheritDoc\n\t */\n\tpublic static get requires() {\n\t\treturn [ HorizontalLineEditing, HorizontalLineUI, Widget ] as const;\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tpublic static get pluginName() {\n\t\treturn 'HorizontalLine' as const;\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tpublic static override get isOfficialPlugin(): true {\n\t\treturn true;\n\t}\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["index.js","../src/horizontallinecommand.ts","../src/horizontallineediting.ts","../src/horizontallineui.ts","../src/horizontalline.ts"],"names":[],"mappings":"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","file":"index.js.map","sourcesContent":["import { Command, Plugin } from \"@ckeditor/ckeditor5-core\";\nimport { Widget, findOptimalInsertionRange, toWidget } from \"@ckeditor/ckeditor5-widget\";\nimport { IconHorizontalLine } from \"@ckeditor/ckeditor5-icons\";\nimport { ButtonView, MenuBarMenuListItemButtonView } from \"@ckeditor/ckeditor5-ui\";\n\n/**\n* @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.\n* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options\n*/\n/**\n* The horizontal line command.\n*\n* The command is registered by {@link module:horizontal-line/horizontallineediting~HorizontalLineEditing} as `'horizontalLine'`.\n*\n* To insert a horizontal line at the current selection, execute the command:\n*\n* ```ts\n* editor.execute( 'horizontalLine' );\n* ```\n*/\nvar HorizontalLineCommand = class extends Command {\n\t/**\n\t* @inheritDoc\n\t*/\n\trefresh() {\n\t\tconst model = this.editor.model;\n\t\tconst schema = model.schema;\n\t\tconst selection = model.document.selection;\n\t\tthis.isEnabled = isHorizontalLineAllowedInParent(selection, schema, model);\n\t}\n\t/**\n\t* Executes the command.\n\t*\n\t* @fires execute\n\t*/\n\texecute() {\n\t\tconst model = this.editor.model;\n\t\tmodel.change((writer) => {\n\t\t\tconst horizontalElement = writer.createElement(\"horizontalLine\");\n\t\t\tmodel.insertObject(horizontalElement, null, null, { setSelection: \"after\" });\n\t\t});\n\t}\n};\n/**\n* Checks if a horizontal line is allowed by the schema in the optimal insertion parent.\n*\n* @param model Model instance.\n*/\nfunction isHorizontalLineAllowedInParent(selection, schema, model) {\n\tconst parent = getInsertHorizontalLineParent(selection, model);\n\treturn schema.checkChild(parent, \"horizontalLine\");\n}\n/**\n* Returns a node that will be used to insert a horizontal line with `model.insertContent` to check if the horizontal line can be\n* placed there.\n*\n* @param model Model instance.\n*/\nfunction getInsertHorizontalLineParent(selection, model) {\n\tconst parent = findOptimalInsertionRange(selection, model).start.parent;\n\tif (parent.isEmpty && !parent.is(\"rootElement\")) return parent.parent;\n\treturn parent;\n}\n\n/**\n* @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.\n* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options\n*/\n/**\n* @module horizontal-line/horizontallineediting\n*/\n/**\n* The horizontal line editing feature.\n*/\nvar HorizontalLineEditing = class extends Plugin {\n\t/**\n\t* @inheritDoc\n\t*/\n\tstatic get pluginName() {\n\t\treturn \"HorizontalLineEditing\";\n\t}\n\t/**\n\t* @inheritDoc\n\t*/\n\tstatic get isOfficialPlugin() {\n\t\treturn true;\n\t}\n\t/**\n\t* @inheritDoc\n\t*/\n\tinit() {\n\t\tconst editor = this.editor;\n\t\tconst schema = editor.model.schema;\n\t\tconst t = editor.t;\n\t\tconst conversion = editor.conversion;\n\t\tschema.register(\"horizontalLine\", { inheritAllFrom: \"$blockObject\" });\n\t\tconversion.for(\"dataDowncast\").elementToElement({\n\t\t\tmodel: \"horizontalLine\",\n\t\t\tview: (modelElement, { writer }) => {\n\t\t\t\treturn writer.createEmptyElement(\"hr\");\n\t\t\t}\n\t\t});\n\t\tconversion.for(\"editingDowncast\").elementToStructure({\n\t\t\tmodel: \"horizontalLine\",\n\t\t\tview: (modelElement, { writer }) => {\n\t\t\t\tconst label = t(\"Horizontal line\");\n\t\t\t\tconst viewWrapper = writer.createContainerElement(\"div\", null, writer.createEmptyElement(\"hr\"));\n\t\t\t\twriter.addClass(\"ck-horizontal-line\", viewWrapper);\n\t\t\t\twriter.setCustomProperty(\"hr\", true, viewWrapper);\n\t\t\t\treturn toHorizontalLineWidget(viewWrapper, writer, label);\n\t\t\t}\n\t\t});\n\t\tconversion.for(\"upcast\").elementToElement({\n\t\t\tview: \"hr\",\n\t\t\tmodel: \"horizontalLine\"\n\t\t});\n\t\teditor.commands.add(\"horizontalLine\", new HorizontalLineCommand(editor));\n\t}\n};\n/**\n* Converts a given {@link module:engine/view/element~ViewElement} to a horizontal line widget:\n* * Adds a {@link module:engine/view/element~ViewElement#_setCustomProperty custom property} allowing to\n* recognize the horizontal line widget element.\n* * Calls the {@link module:widget/utils~toWidget} function with the proper element's label creator.\n*\n* @param writer An instance of the view writer.\n*/\nfunction toHorizontalLineWidget(viewElement, writer, label) {\n\twriter.setCustomProperty(\"horizontalLine\", true, viewElement);\n\treturn toWidget(viewElement, writer, { label });\n}\n\n/**\n* @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.\n* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options\n*/\n/**\n* @module horizontal-line/horizontallineui\n*/\n/**\n* The horizontal line UI plugin.\n*/\nvar HorizontalLineUI = class extends Plugin {\n\t/**\n\t* @inheritDoc\n\t*/\n\tstatic get pluginName() {\n\t\treturn \"HorizontalLineUI\";\n\t}\n\t/**\n\t* @inheritDoc\n\t*/\n\tstatic get isOfficialPlugin() {\n\t\treturn true;\n\t}\n\t/**\n\t* @inheritDoc\n\t*/\n\tinit() {\n\t\tconst editor = this.editor;\n\t\teditor.ui.componentFactory.add(\"horizontalLine\", () => {\n\t\t\tconst buttonView = this._createButton(ButtonView);\n\t\t\tbuttonView.set({ tooltip: true });\n\t\t\treturn buttonView;\n\t\t});\n\t\teditor.ui.componentFactory.add(\"menuBar:horizontalLine\", () => {\n\t\t\treturn this._createButton(MenuBarMenuListItemButtonView);\n\t\t});\n\t}\n\t/**\n\t* Creates a button for horizontal line command to use either in toolbar or in menu bar.\n\t*/\n\t_createButton(ButtonClass) {\n\t\tconst editor = this.editor;\n\t\tconst locale = editor.locale;\n\t\tconst command = editor.commands.get(\"horizontalLine\");\n\t\tconst view = new ButtonClass(editor.locale);\n\t\tconst t = locale.t;\n\t\tview.set({\n\t\t\tlabel: t(\"Horizontal line\"),\n\t\t\ticon: IconHorizontalLine\n\t\t});\n\t\tview.bind(\"isEnabled\").to(command, \"isEnabled\");\n\t\tthis.listenTo(view, \"execute\", () => {\n\t\t\teditor.execute(\"horizontalLine\");\n\t\t\teditor.editing.view.focus();\n\t\t});\n\t\treturn view;\n\t}\n};\n\n/**\n* @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.\n* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options\n*/\n/**\n* @module horizontal-line/horizontalline\n*/\n/**\n* The horizontal line feature.\n*\n* It provides the possibility to insert a horizontal line into the rich-text editor.\n*\n* For a detailed overview, check the {@glink features/horizontal-line Horizontal line feature} documentation.\n*/\nvar HorizontalLine = class extends Plugin {\n\t/**\n\t* @inheritDoc\n\t*/\n\tstatic get requires() {\n\t\treturn [\n\t\t\tHorizontalLineEditing,\n\t\t\tHorizontalLineUI,\n\t\t\tWidget\n\t\t];\n\t}\n\t/**\n\t* @inheritDoc\n\t*/\n\tstatic get pluginName() {\n\t\treturn \"HorizontalLine\";\n\t}\n\t/**\n\t* @inheritDoc\n\t*/\n\tstatic get isOfficialPlugin() {\n\t\treturn true;\n\t}\n};\n\n/**\n* @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.\n* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options\n*/\n\nexport { HorizontalLine, HorizontalLineCommand, HorizontalLineEditing, HorizontalLineUI };\n//# sourceMappingURL=index.js.map","/**\n * @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options\n */\n\n/**\n * @module horizontal-line/horizontallinecommand\n */\n\nimport type { ModelDocumentSelection, ModelElement, Model, ModelSchema, ModelSelection } from '@ckeditor/ckeditor5-engine';\nimport { Command } from '@ckeditor/ckeditor5-core';\nimport { findOptimalInsertionRange } from '@ckeditor/ckeditor5-widget';\n\n/**\n * The horizontal line command.\n *\n * The command is registered by {@link module:horizontal-line/horizontallineediting~HorizontalLineEditing} as `'horizontalLine'`.\n *\n * To insert a horizontal line at the current selection, execute the command:\n *\n * ```ts\n * editor.execute( 'horizontalLine' );\n * ```\n */\nexport class HorizontalLineCommand extends Command {\n\t/**\n\t * @inheritDoc\n\t */\n\tpublic override refresh(): void {\n\t\tconst model = this.editor.model;\n\t\tconst schema = model.schema;\n\t\tconst selection = model.document.selection;\n\n\t\tthis.isEnabled = isHorizontalLineAllowedInParent( selection, schema, model );\n\t}\n\n\t/**\n\t * Executes the command.\n\t *\n\t * @fires execute\n\t */\n\tpublic override execute(): void {\n\t\tconst model = this.editor.model;\n\n\t\tmodel.change( writer => {\n\t\t\tconst horizontalElement = writer.createElement( 'horizontalLine' );\n\n\t\t\tmodel.insertObject( horizontalElement, null, null, { setSelection: 'after' } );\n\t\t} );\n\t}\n}\n\n/**\n * Checks if a horizontal line is allowed by the schema in the optimal insertion parent.\n *\n * @param model Model instance.\n */\nfunction isHorizontalLineAllowedInParent( selection: ModelSelection | ModelDocumentSelection, schema: ModelSchema, model: Model ): boolean {\n\tconst parent = getInsertHorizontalLineParent( selection, model );\n\n\treturn schema.checkChild( parent, 'horizontalLine' );\n}\n\n/**\n * Returns a node that will be used to insert a horizontal line with `model.insertContent` to check if the horizontal line can be\n * placed there.\n *\n * @param model Model instance.\n */\nfunction getInsertHorizontalLineParent( selection: ModelSelection | ModelDocumentSelection, model: Model ): ModelElement {\n\tconst insertionRange = findOptimalInsertionRange( selection, model );\n\tconst parent = insertionRange.start.parent;\n\n\tif ( parent.isEmpty && !parent.is( 'rootElement' ) ) {\n\t\treturn parent.parent! as ModelElement;\n\t}\n\n\treturn parent as ModelElement;\n}\n","/**\n * @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options\n */\n\n/**\n * @module horizontal-line/horizontallineediting\n */\n\nimport { Plugin } from '@ckeditor/ckeditor5-core';\nimport { toWidget } from '@ckeditor/ckeditor5-widget';\nimport type { ViewDowncastWriter, ViewElement } from '@ckeditor/ckeditor5-engine';\n\nimport { HorizontalLineCommand } from './horizontallinecommand.js';\n\nimport '../theme/horizontalline.css';\n\n/**\n * The horizontal line editing feature.\n */\nexport class HorizontalLineEditing extends Plugin {\n\t/**\n\t * @inheritDoc\n\t */\n\tpublic static get pluginName() {\n\t\treturn 'HorizontalLineEditing' as const;\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tpublic static override get isOfficialPlugin(): true {\n\t\treturn true;\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tpublic init(): void {\n\t\tconst editor = this.editor;\n\t\tconst schema = editor.model.schema;\n\t\tconst t = editor.t;\n\t\tconst conversion = editor.conversion;\n\n\t\tschema.register( 'horizontalLine', {\n\t\t\tinheritAllFrom: '$blockObject'\n\t\t} );\n\n\t\tconversion.for( 'dataDowncast' ).elementToElement( {\n\t\t\tmodel: 'horizontalLine',\n\t\t\tview: ( modelElement, { writer } ) => {\n\t\t\t\treturn writer.createEmptyElement( 'hr' );\n\t\t\t}\n\t\t} );\n\n\t\tconversion.for( 'editingDowncast' ).elementToStructure( {\n\t\t\tmodel: 'horizontalLine',\n\t\t\tview: ( modelElement, { writer } ) => {\n\t\t\t\tconst label = t( 'Horizontal line' );\n\n\t\t\t\tconst viewWrapper = writer.createContainerElement( 'div', null,\n\t\t\t\t\twriter.createEmptyElement( 'hr' )\n\t\t\t\t);\n\n\t\t\t\twriter.addClass( 'ck-horizontal-line', viewWrapper );\n\t\t\t\twriter.setCustomProperty( 'hr', true, viewWrapper );\n\n\t\t\t\treturn toHorizontalLineWidget( viewWrapper, writer, label );\n\t\t\t}\n\t\t} );\n\n\t\tconversion.for( 'upcast' ).elementToElement( { view: 'hr', model: 'horizontalLine' } );\n\n\t\teditor.commands.add( 'horizontalLine', new HorizontalLineCommand( editor ) );\n\t}\n}\n\n/**\n * Converts a given {@link module:engine/view/element~ViewElement} to a horizontal line widget:\n * * Adds a {@link module:engine/view/element~ViewElement#_setCustomProperty custom property} allowing to\n * recognize the horizontal line widget element.\n * * Calls the {@link module:widget/utils~toWidget} function with the proper element's label creator.\n *\n * @param writer An instance of the view writer.\n */\nfunction toHorizontalLineWidget( viewElement: ViewElement, writer: ViewDowncastWriter, label: string ): ViewElement {\n\twriter.setCustomProperty( 'horizontalLine', true, viewElement );\n\n\treturn toWidget( viewElement, writer, { label } );\n}\n","/**\n * @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options\n */\n\n/**\n * @module horizontal-line/horizontallineui\n */\n\nimport { Plugin } from '@ckeditor/ckeditor5-core';\nimport { IconHorizontalLine } from '@ckeditor/ckeditor5-icons';\nimport { ButtonView, MenuBarMenuListItemButtonView } from '@ckeditor/ckeditor5-ui';\n\nimport { type HorizontalLineCommand } from './horizontallinecommand.js';\n\n/**\n * The horizontal line UI plugin.\n */\nexport class HorizontalLineUI extends Plugin {\n\t/**\n\t * @inheritDoc\n\t */\n\tpublic static get pluginName() {\n\t\treturn 'HorizontalLineUI' as const;\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tpublic static override get isOfficialPlugin(): true {\n\t\treturn true;\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tpublic init(): void {\n\t\tconst editor = this.editor;\n\n\t\t// Add the `horizontalLine` button to feature components.\n\t\teditor.ui.componentFactory.add( 'horizontalLine', () => {\n\t\t\tconst buttonView = this._createButton( ButtonView );\n\n\t\t\tbuttonView.set( {\n\t\t\t\ttooltip: true\n\t\t\t} );\n\n\t\t\treturn buttonView;\n\t\t} );\n\n\t\teditor.ui.componentFactory.add( 'menuBar:horizontalLine', () => {\n\t\t\treturn this._createButton( MenuBarMenuListItemButtonView );\n\t\t} );\n\t}\n\n\t/**\n\t * Creates a button for horizontal line command to use either in toolbar or in menu bar.\n\t */\n\tprivate _createButton<T extends typeof ButtonView | typeof MenuBarMenuListItemButtonView>( ButtonClass: T ): InstanceType<T> {\n\t\tconst editor = this.editor;\n\t\tconst locale = editor.locale;\n\t\tconst command: HorizontalLineCommand = editor.commands.get( 'horizontalLine' )!;\n\t\tconst view = new ButtonClass( editor.locale ) as InstanceType<T>;\n\t\tconst t = locale.t;\n\n\t\tview.set( {\n\t\t\tlabel: t( 'Horizontal line' ),\n\t\t\ticon: IconHorizontalLine\n\t\t} );\n\n\t\tview.bind( 'isEnabled' ).to( command, 'isEnabled' );\n\n\t\t// Execute the command.\n\t\tthis.listenTo( view, 'execute', () => {\n\t\t\teditor.execute( 'horizontalLine' );\n\t\t\teditor.editing.view.focus();\n\t\t} );\n\n\t\treturn view;\n\t}\n}\n","/**\n * @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options\n */\n\n/**\n * @module horizontal-line/horizontalline\n */\n\nimport { Plugin, type PluginDependenciesOf } from '@ckeditor/ckeditor5-core';\nimport { Widget } from '@ckeditor/ckeditor5-widget';\nimport { HorizontalLineEditing } from './horizontallineediting.js';\nimport { HorizontalLineUI } from './horizontallineui.js';\n\n/**\n * The horizontal line feature.\n *\n * It provides the possibility to insert a horizontal line into the rich-text editor.\n *\n * For a detailed overview, check the {@glink features/horizontal-line Horizontal line feature} documentation.\n */\nexport class HorizontalLine extends Plugin {\n\t/**\n\t * @inheritDoc\n\t */\n\tpublic static get requires(): PluginDependenciesOf<[ HorizontalLineEditing, HorizontalLineUI, Widget ]> {\n\t\treturn [ HorizontalLineEditing, HorizontalLineUI, Widget ];\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tpublic static get pluginName() {\n\t\treturn 'HorizontalLine' as const;\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tpublic static override get isOfficialPlugin(): true {\n\t\treturn true;\n\t}\n}\n"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ckeditor/ckeditor5-horizontal-line",
|
|
3
|
-
"version": "48.
|
|
3
|
+
"version": "48.3.0-alpha.1",
|
|
4
4
|
"description": "Horizontal line feature for CKEditor 5.",
|
|
5
5
|
"license": "SEE LICENSE IN LICENSE.md",
|
|
6
6
|
"author": "CKSource (http://cksource.com/)",
|
|
@@ -26,12 +26,12 @@
|
|
|
26
26
|
"./package.json": "./package.json"
|
|
27
27
|
},
|
|
28
28
|
"dependencies": {
|
|
29
|
-
"@ckeditor/ckeditor5-core": "48.
|
|
30
|
-
"@ckeditor/ckeditor5-engine": "48.
|
|
31
|
-
"@ckeditor/ckeditor5-icons": "48.
|
|
32
|
-
"@ckeditor/ckeditor5-ui": "48.
|
|
33
|
-
"@ckeditor/ckeditor5-utils": "48.
|
|
34
|
-
"@ckeditor/ckeditor5-widget": "48.
|
|
29
|
+
"@ckeditor/ckeditor5-core": "48.3.0-alpha.1",
|
|
30
|
+
"@ckeditor/ckeditor5-engine": "48.3.0-alpha.1",
|
|
31
|
+
"@ckeditor/ckeditor5-icons": "48.3.0-alpha.1",
|
|
32
|
+
"@ckeditor/ckeditor5-ui": "48.3.0-alpha.1",
|
|
33
|
+
"@ckeditor/ckeditor5-utils": "48.3.0-alpha.1",
|
|
34
|
+
"@ckeditor/ckeditor5-widget": "48.3.0-alpha.1"
|
|
35
35
|
},
|
|
36
36
|
"files": [
|
|
37
37
|
"dist",
|