@ckeditor/ckeditor5-source-editing 41.3.0-alpha.4 → 41.3.1
Sign up to get free protection for your applications and to get access to all the features.
- package/build/source-editing.js +2 -2
- package/build/translations/ar.js +1 -1
- package/build/translations/bg.js +1 -1
- package/build/translations/bn.js +1 -1
- package/build/translations/ca.js +1 -1
- package/build/translations/cs.js +1 -1
- package/build/translations/da.js +1 -1
- package/build/translations/de.js +1 -1
- package/build/translations/el.js +1 -1
- package/build/translations/en-au.js +1 -1
- package/build/translations/es.js +1 -1
- package/build/translations/et.js +1 -1
- package/build/translations/fi.js +1 -1
- package/build/translations/fr.js +1 -1
- package/build/translations/gl.js +1 -1
- package/build/translations/he.js +1 -1
- package/build/translations/hi.js +1 -1
- package/build/translations/hr.js +1 -1
- package/build/translations/hu.js +1 -1
- package/build/translations/id.js +1 -1
- package/build/translations/it.js +1 -1
- package/build/translations/ja.js +1 -1
- package/build/translations/ko.js +1 -1
- package/build/translations/lt.js +1 -1
- package/build/translations/lv.js +1 -1
- package/build/translations/ms.js +1 -1
- package/build/translations/nl.js +1 -1
- package/build/translations/no.js +1 -1
- package/build/translations/pl.js +1 -1
- package/build/translations/pt-br.js +1 -1
- package/build/translations/pt.js +1 -1
- package/build/translations/ro.js +1 -1
- package/build/translations/ru.js +1 -1
- package/build/translations/sk.js +1 -1
- package/build/translations/sr-latn.js +1 -1
- package/build/translations/sr.js +1 -1
- package/build/translations/sv.js +1 -1
- package/build/translations/th.js +1 -1
- package/build/translations/tr.js +1 -1
- package/build/translations/ug.js +1 -1
- package/build/translations/uk.js +1 -1
- package/build/translations/ur.js +1 -1
- package/build/translations/vi.js +1 -1
- package/build/translations/zh-cn.js +1 -1
- package/build/translations/zh.js +1 -1
- package/lang/contexts.json +2 -1
- package/lang/translations/ar.po +4 -0
- package/lang/translations/bg.po +4 -0
- package/lang/translations/bn.po +4 -0
- package/lang/translations/ca.po +4 -0
- package/lang/translations/cs.po +4 -0
- package/lang/translations/da.po +4 -0
- package/lang/translations/de.po +4 -0
- package/lang/translations/el.po +4 -0
- package/lang/translations/en-au.po +4 -0
- package/lang/translations/en.po +4 -0
- package/lang/translations/es.po +4 -0
- package/lang/translations/et.po +4 -0
- package/lang/translations/fi.po +4 -0
- package/lang/translations/fr.po +4 -0
- package/lang/translations/gl.po +4 -0
- package/lang/translations/he.po +4 -0
- package/lang/translations/hi.po +4 -0
- package/lang/translations/hr.po +4 -0
- package/lang/translations/hu.po +4 -0
- package/lang/translations/id.po +4 -0
- package/lang/translations/it.po +4 -0
- package/lang/translations/ja.po +4 -0
- package/lang/translations/ko.po +4 -0
- package/lang/translations/lt.po +4 -0
- package/lang/translations/lv.po +4 -0
- package/lang/translations/ms.po +4 -0
- package/lang/translations/nl.po +4 -0
- package/lang/translations/no.po +4 -0
- package/lang/translations/pl.po +4 -0
- package/lang/translations/pt-br.po +4 -0
- package/lang/translations/pt.po +4 -0
- package/lang/translations/ro.po +4 -0
- package/lang/translations/ru.po +4 -0
- package/lang/translations/sk.po +4 -0
- package/lang/translations/sr-latn.po +4 -0
- package/lang/translations/sr.po +4 -0
- package/lang/translations/sv.po +4 -0
- package/lang/translations/th.po +4 -0
- package/lang/translations/tr.po +4 -0
- package/lang/translations/ug.po +4 -0
- package/lang/translations/uk.po +4 -0
- package/lang/translations/ur.po +4 -0
- package/lang/translations/vi.po +4 -0
- package/lang/translations/zh-cn.po +4 -0
- package/lang/translations/zh.po +4 -0
- package/package.json +3 -4
- package/src/sourceediting.d.ts +1 -0
- package/src/sourceediting.js +47 -25
- package/dist/content-index.css +0 -4
- package/dist/editor-index.css +0 -43
- package/dist/index.css +0 -87
- package/dist/index.css.map +0 -1
- package/dist/translations/ar.d.ts +0 -8
- package/dist/translations/ar.js +0 -5
- package/dist/translations/bg.d.ts +0 -8
- package/dist/translations/bg.js +0 -5
- package/dist/translations/bn.d.ts +0 -8
- package/dist/translations/bn.js +0 -5
- package/dist/translations/ca.d.ts +0 -8
- package/dist/translations/ca.js +0 -5
- package/dist/translations/cs.d.ts +0 -8
- package/dist/translations/cs.js +0 -5
- package/dist/translations/da.d.ts +0 -8
- package/dist/translations/da.js +0 -5
- package/dist/translations/de.d.ts +0 -8
- package/dist/translations/de.js +0 -5
- package/dist/translations/el.d.ts +0 -8
- package/dist/translations/el.js +0 -5
- package/dist/translations/en-au.d.ts +0 -8
- package/dist/translations/en-au.js +0 -5
- package/dist/translations/en.d.ts +0 -8
- package/dist/translations/en.js +0 -5
- package/dist/translations/es.d.ts +0 -8
- package/dist/translations/es.js +0 -5
- package/dist/translations/et.d.ts +0 -8
- package/dist/translations/et.js +0 -5
- package/dist/translations/fi.d.ts +0 -8
- package/dist/translations/fi.js +0 -5
- package/dist/translations/fr.d.ts +0 -8
- package/dist/translations/fr.js +0 -5
- package/dist/translations/gl.d.ts +0 -8
- package/dist/translations/gl.js +0 -5
- package/dist/translations/he.d.ts +0 -8
- package/dist/translations/he.js +0 -5
- package/dist/translations/hi.d.ts +0 -8
- package/dist/translations/hi.js +0 -5
- package/dist/translations/hr.d.ts +0 -8
- package/dist/translations/hr.js +0 -5
- package/dist/translations/hu.d.ts +0 -8
- package/dist/translations/hu.js +0 -5
- package/dist/translations/id.d.ts +0 -8
- package/dist/translations/id.js +0 -5
- package/dist/translations/it.d.ts +0 -8
- package/dist/translations/it.js +0 -5
- package/dist/translations/ja.d.ts +0 -8
- package/dist/translations/ja.js +0 -5
- package/dist/translations/ko.d.ts +0 -8
- package/dist/translations/ko.js +0 -5
- package/dist/translations/lt.d.ts +0 -8
- package/dist/translations/lt.js +0 -5
- package/dist/translations/lv.d.ts +0 -8
- package/dist/translations/lv.js +0 -5
- package/dist/translations/ms.d.ts +0 -8
- package/dist/translations/ms.js +0 -5
- package/dist/translations/nl.d.ts +0 -8
- package/dist/translations/nl.js +0 -5
- package/dist/translations/no.d.ts +0 -8
- package/dist/translations/no.js +0 -5
- package/dist/translations/pl.d.ts +0 -8
- package/dist/translations/pl.js +0 -5
- package/dist/translations/pt-br.d.ts +0 -8
- package/dist/translations/pt-br.js +0 -5
- package/dist/translations/pt.d.ts +0 -8
- package/dist/translations/pt.js +0 -5
- package/dist/translations/ro.d.ts +0 -8
- package/dist/translations/ro.js +0 -5
- package/dist/translations/ru.d.ts +0 -8
- package/dist/translations/ru.js +0 -5
- package/dist/translations/sk.d.ts +0 -8
- package/dist/translations/sk.js +0 -5
- package/dist/translations/sr-latn.d.ts +0 -8
- package/dist/translations/sr-latn.js +0 -5
- package/dist/translations/sr.d.ts +0 -8
- package/dist/translations/sr.js +0 -5
- package/dist/translations/sv.d.ts +0 -8
- package/dist/translations/sv.js +0 -5
- package/dist/translations/th.d.ts +0 -8
- package/dist/translations/th.js +0 -5
- package/dist/translations/tr.d.ts +0 -8
- package/dist/translations/tr.js +0 -5
- package/dist/translations/ug.d.ts +0 -8
- package/dist/translations/ug.js +0 -5
- package/dist/translations/uk.d.ts +0 -8
- package/dist/translations/uk.js +0 -5
- package/dist/translations/ur.d.ts +0 -8
- package/dist/translations/ur.js +0 -5
- package/dist/translations/vi.d.ts +0 -8
- package/dist/translations/vi.js +0 -5
- package/dist/translations/zh-cn.d.ts +0 -8
- package/dist/translations/zh-cn.js +0 -5
- package/dist/translations/zh.d.ts +0 -8
- package/dist/translations/zh.js +0 -5
- package/dist/types/augmentation.d.ts +0 -22
- package/dist/types/index.d.ts +0 -14
- package/dist/types/sourceediting.d.ts +0 -107
- package/dist/types/sourceeditingconfig.d.ts +0 -38
- package/dist/types/utils/formathtml.d.ts +0 -23
@@ -1,107 +0,0 @@
|
|
1
|
-
/**
|
2
|
-
* @license Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.
|
3
|
-
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
|
4
|
-
*/
|
5
|
-
/**
|
6
|
-
* @license Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.
|
7
|
-
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
|
8
|
-
*/
|
9
|
-
/**
|
10
|
-
* @module source-editing/sourceediting
|
11
|
-
*/
|
12
|
-
import { type Editor, Plugin, PendingActions } from 'ckeditor5/src/core.js';
|
13
|
-
import '../theme/sourceediting.css';
|
14
|
-
/**
|
15
|
-
* The source editing feature.
|
16
|
-
*
|
17
|
-
* It provides the possibility to view and edit the source of the document.
|
18
|
-
*
|
19
|
-
* For a detailed overview, check the {@glink features/source-editing source editing feature documentation} and the
|
20
|
-
* {@glink api/source-editing package page}.
|
21
|
-
*/
|
22
|
-
export default class SourceEditing extends Plugin {
|
23
|
-
/**
|
24
|
-
* @inheritDoc
|
25
|
-
*/
|
26
|
-
static get pluginName(): "SourceEditing";
|
27
|
-
/**
|
28
|
-
* @inheritDoc
|
29
|
-
*/
|
30
|
-
static get requires(): readonly [typeof PendingActions];
|
31
|
-
/**
|
32
|
-
* Flag indicating whether the document source mode is active.
|
33
|
-
*
|
34
|
-
* @observable
|
35
|
-
*/
|
36
|
-
isSourceEditingMode: boolean;
|
37
|
-
/**
|
38
|
-
* The element replacer instance used to replace the editing roots with the wrapper elements containing the document source.
|
39
|
-
*/
|
40
|
-
private _elementReplacer;
|
41
|
-
/**
|
42
|
-
* Maps all root names to wrapper elements containing the document source.
|
43
|
-
*/
|
44
|
-
private _replacedRoots;
|
45
|
-
/**
|
46
|
-
* Maps all root names to their document data.
|
47
|
-
*/
|
48
|
-
private _dataFromRoots;
|
49
|
-
/**
|
50
|
-
* @inheritDoc
|
51
|
-
*/
|
52
|
-
constructor(editor: Editor);
|
53
|
-
/**
|
54
|
-
* @inheritDoc
|
55
|
-
*/
|
56
|
-
init(): void;
|
57
|
-
/**
|
58
|
-
* Updates the source data in all hidden editing roots.
|
59
|
-
*/
|
60
|
-
updateEditorData(): void;
|
61
|
-
private _checkCompatibility;
|
62
|
-
/**
|
63
|
-
* Creates source editing wrappers that replace each editing root. Each wrapper contains the document source from the corresponding
|
64
|
-
* root.
|
65
|
-
*
|
66
|
-
* The wrapper element contains a textarea and it solves the problem, that the textarea element cannot auto expand its height based on
|
67
|
-
* the content it contains. The solution is to make the textarea more like a plain div element, which expands in height as much as it
|
68
|
-
* needs to, in order to display the whole document source without scrolling. The wrapper element is a parent for the textarea and for
|
69
|
-
* the pseudo-element `::after`, that replicates the look, content, and position of the textarea. The pseudo-element replica is hidden,
|
70
|
-
* but it is styled to be an identical visual copy of the textarea with the same content. Then, the wrapper is a grid container and both
|
71
|
-
* of its children (the textarea and the `::after` pseudo-element) are positioned within a CSS grid to occupy the same grid cell. The
|
72
|
-
* content in the pseudo-element `::after` is set in CSS and it stretches the grid to the appropriate size based on the textarea value.
|
73
|
-
* Since both children occupy the same grid cell, both have always the same height.
|
74
|
-
*/
|
75
|
-
private _showSourceEditing;
|
76
|
-
/**
|
77
|
-
* Restores all hidden editing roots and sets the source data in them.
|
78
|
-
*/
|
79
|
-
private _hideSourceEditing;
|
80
|
-
/**
|
81
|
-
* Focuses the textarea containing document source from the first editing root.
|
82
|
-
*/
|
83
|
-
private _focusSourceEditing;
|
84
|
-
/**
|
85
|
-
* Disables all commands.
|
86
|
-
*/
|
87
|
-
private _disableCommands;
|
88
|
-
/**
|
89
|
-
* Clears forced disable for all commands, that was previously set through {@link #_disableCommands}.
|
90
|
-
*/
|
91
|
-
private _enableCommands;
|
92
|
-
/**
|
93
|
-
* Adds or removes the `readonly` attribute from the textarea from all roots, if document source mode is active.
|
94
|
-
*
|
95
|
-
* @param isReadOnly Indicates whether all textarea elements should be read-only.
|
96
|
-
*/
|
97
|
-
private _handleReadOnlyMode;
|
98
|
-
/**
|
99
|
-
* Checks, if the plugin is allowed to handle the source editing mode by itself. Currently, the source editing mode is supported only
|
100
|
-
* for the {@link module:editor-classic/classiceditor~ClassicEditor classic editor}.
|
101
|
-
*/
|
102
|
-
private _isAllowedToHandleSourceEditingMode;
|
103
|
-
/**
|
104
|
-
* If any {@link module:ui/dialog/dialogview~DialogView editor dialog} is currently visible, hide it.
|
105
|
-
*/
|
106
|
-
private _hideVisibleDialog;
|
107
|
-
}
|
@@ -1,38 +0,0 @@
|
|
1
|
-
/**
|
2
|
-
* @license Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.
|
3
|
-
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
|
4
|
-
*/
|
5
|
-
/**
|
6
|
-
* @license Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.
|
7
|
-
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
|
8
|
-
*/
|
9
|
-
/**
|
10
|
-
* @module source-editing/sourceeditingconfig
|
11
|
-
*/
|
12
|
-
/**
|
13
|
-
* The configuration of the source editing feature.
|
14
|
-
*
|
15
|
-
* ```ts
|
16
|
-
* ClassicEditor
|
17
|
-
* .create( {
|
18
|
-
* sourceEditing: {
|
19
|
-
* allowCollaborationFeatures: true
|
20
|
-
* }
|
21
|
-
* } )
|
22
|
-
* .then( ... )
|
23
|
-
* .catch( ... );
|
24
|
-
* ```
|
25
|
-
*
|
26
|
-
* See {@link module:core/editor/editorconfig~EditorConfig all editor options}.
|
27
|
-
*/
|
28
|
-
export interface SourceEditingConfig {
|
29
|
-
/**
|
30
|
-
* Set to `true` to enable source editing feature for real-time collaboration.
|
31
|
-
*
|
32
|
-
* Please note that source editing feature is not fully compatible with real-time collaboration and using it may lead to data loss.
|
33
|
-
* {@glink features/source-editing#limitations-and-incompatibilities Read more}.
|
34
|
-
*
|
35
|
-
* @default false
|
36
|
-
*/
|
37
|
-
allowCollaborationFeatures?: boolean;
|
38
|
-
}
|
@@ -1,23 +0,0 @@
|
|
1
|
-
/**
|
2
|
-
* @license Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.
|
3
|
-
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
|
4
|
-
*/
|
5
|
-
/**
|
6
|
-
* @license Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.
|
7
|
-
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
|
8
|
-
*/
|
9
|
-
/**
|
10
|
-
* @module source-editing/utils/formathtml
|
11
|
-
*/
|
12
|
-
/**
|
13
|
-
* A simple (and naive) HTML code formatter that returns a formatted HTML markup that can be easily
|
14
|
-
* parsed by human eyes. It beautifies the HTML code by adding new lines between elements that behave like block elements
|
15
|
-
* (https://developer.mozilla.org/en-US/docs/Web/HTML/Block-level_elements
|
16
|
-
* and a few more like `tr`, `td`, and similar ones) and inserting indents for nested content.
|
17
|
-
*
|
18
|
-
* WARNING: This function works only on a text that does not contain any indentations or new lines.
|
19
|
-
* Calling this function on the already formatted text will damage the formatting.
|
20
|
-
*
|
21
|
-
* @param input An HTML string to format.
|
22
|
-
*/
|
23
|
-
export declare function formatHtml(input: string): string;
|