@ckeditor/ckeditor5-comments 40.0.0 → 40.1.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/LICENSE.md +3 -3
- package/build/comments.js +2 -2
- package/build/translations/af.js +1 -1
- package/build/translations/ar.js +1 -1
- package/build/translations/bg.js +1 -1
- package/build/translations/bn.js +1 -1
- package/build/translations/bs.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-ch.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-co.js +1 -1
- package/build/translations/es.js +1 -1
- package/build/translations/et.js +1 -1
- package/build/translations/fa.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/jv.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/sq.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/tk.js +1 -1
- package/build/translations/tr.js +1 -1
- package/build/translations/tt.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 -0
- package/lang/translations/af.po +8 -0
- package/lang/translations/ar.po +8 -0
- package/lang/translations/bg.po +8 -0
- package/lang/translations/bn.po +8 -0
- package/lang/translations/bs.po +8 -0
- package/lang/translations/ca.po +8 -0
- package/lang/translations/cs.po +8 -0
- package/lang/translations/da.po +8 -0
- package/lang/translations/de-ch.po +8 -0
- package/lang/translations/de.po +8 -0
- package/lang/translations/el.po +8 -0
- package/lang/translations/en-au.po +8 -0
- package/lang/translations/en.po +8 -0
- package/lang/translations/es-co.po +8 -0
- package/lang/translations/es.po +8 -0
- package/lang/translations/et.po +8 -0
- package/lang/translations/fa.po +8 -0
- package/lang/translations/fi.po +8 -0
- package/lang/translations/fr.po +8 -0
- package/lang/translations/gl.po +8 -0
- package/lang/translations/he.po +8 -0
- package/lang/translations/hi.po +8 -0
- package/lang/translations/hr.po +8 -0
- package/lang/translations/hu.po +8 -0
- package/lang/translations/id.po +8 -0
- package/lang/translations/it.po +8 -0
- package/lang/translations/ja.po +8 -0
- package/lang/translations/jv.po +8 -0
- package/lang/translations/ko.po +8 -0
- package/lang/translations/lt.po +8 -0
- package/lang/translations/lv.po +8 -0
- package/lang/translations/ms.po +8 -0
- package/lang/translations/nl.po +8 -0
- package/lang/translations/no.po +8 -0
- package/lang/translations/pl.po +8 -0
- package/lang/translations/pt-br.po +8 -0
- package/lang/translations/pt.po +8 -0
- package/lang/translations/ro.po +8 -0
- package/lang/translations/ru.po +8 -0
- package/lang/translations/sk.po +8 -0
- package/lang/translations/sq.po +8 -0
- package/lang/translations/sr-latn.po +8 -0
- package/lang/translations/sr.po +8 -0
- package/lang/translations/sv.po +8 -0
- package/lang/translations/th.po +8 -0
- package/lang/translations/tk.po +8 -0
- package/lang/translations/tr.po +8 -0
- package/lang/translations/tt.po +8 -0
- package/lang/translations/ug.po +8 -0
- package/lang/translations/uk.po +8 -0
- package/lang/translations/ur.po +8 -0
- package/lang/translations/vi.po +8 -0
- package/lang/translations/zh-cn.po +8 -0
- package/lang/translations/zh.po +8 -0
- package/package.json +3 -3
- package/src/annotations/annotation.d.ts +90 -90
- package/src/annotations/annotation.js +1 -1
- package/src/annotations/annotationcollection.d.ts +98 -98
- package/src/annotations/annotationcollection.js +1 -1
- package/src/annotations/annotations.d.ts +154 -154
- package/src/annotations/annotations.js +1 -1
- package/src/annotations/annotationsuis.d.ts +232 -232
- package/src/annotations/annotationsuis.js +1 -1
- package/src/annotations/editorannotations.d.ts +67 -67
- package/src/annotations/editorannotations.js +1 -1
- package/src/annotations/inlineannotations.d.ts +90 -90
- package/src/annotations/inlineannotations.js +1 -1
- package/src/annotations/narrowsidebar.d.ts +85 -85
- package/src/annotations/narrowsidebar.js +1 -1
- package/src/annotations/sidebar.d.ts +100 -100
- package/src/annotations/sidebar.js +1 -1
- package/src/annotations/view/annotationcounterbuttonview.d.ts +29 -29
- package/src/annotations/view/annotationcounterbuttonview.js +1 -1
- package/src/annotations/view/annotationview.d.ts +90 -90
- package/src/annotations/view/annotationview.js +1 -1
- package/src/annotations/view/sidebaritemview.d.ts +55 -55
- package/src/annotations/view/sidebaritemview.js +1 -1
- package/src/annotations/view/sidebarview.d.ts +32 -32
- package/src/annotations/view/sidebarview.js +1 -1
- package/src/annotations/widesidebar.d.ts +77 -77
- package/src/annotations/widesidebar.js +1 -1
- package/src/augmentation.d.ts +52 -52
- package/src/comments/addcommentthreadcommand.d.ts +35 -35
- package/src/comments/addcommentthreadcommand.js +1 -1
- package/src/comments/commentsarchive.d.ts +31 -31
- package/src/comments/commentsarchive.js +1 -1
- package/src/comments/commentsarchiveui.d.ts +38 -38
- package/src/comments/commentsarchiveui.js +1 -1
- package/src/comments/commentsediting.d.ts +79 -79
- package/src/comments/commentsediting.js +1 -1
- package/src/comments/commentsrepository.d.ts +1129 -1129
- package/src/comments/commentsrepository.js +1 -1
- package/src/comments/commentsui.d.ts +33 -33
- package/src/comments/commentsui.js +1 -1
- package/src/comments/integrations/commentsrestrictededitingmode.d.ts +17 -17
- package/src/comments/integrations/commentsrestrictededitingmode.js +1 -1
- package/src/comments/integrations/importword.d.ts +21 -21
- package/src/comments/integrations/importword.js +1 -1
- package/src/comments/ui/commenteditor/commenteditor.d.ts +36 -36
- package/src/comments/ui/commenteditor/commenteditor.js +1 -1
- package/src/comments/ui/commenteditor/commenteditorui.d.ts +31 -31
- package/src/comments/ui/commenteditor/commenteditorui.js +1 -1
- package/src/comments/ui/commenteditor/commenteditoruiview.d.ts +36 -36
- package/src/comments/ui/commenteditor/commenteditoruiview.js +1 -1
- package/src/comments/ui/commentthreadcontroller.d.ts +64 -64
- package/src/comments/ui/commentthreadcontroller.js +1 -1
- package/src/comments/ui/view/basecommentthreadview.d.ts +119 -119
- package/src/comments/ui/view/basecommentthreadview.js +1 -1
- package/src/comments/ui/view/basecommentview.d.ts +112 -112
- package/src/comments/ui/view/basecommentview.js +1 -1
- package/src/comments/ui/view/collapsedcommentsview.d.ts +13 -13
- package/src/comments/ui/view/collapsedcommentsview.js +1 -1
- package/src/comments/ui/view/commentcontentview.d.ts +14 -14
- package/src/comments/ui/view/commentcontentview.js +1 -1
- package/src/comments/ui/view/commentinputview.d.ts +86 -86
- package/src/comments/ui/view/commentinputview.js +1 -1
- package/src/comments/ui/view/commentsarchiveview.d.ts +38 -38
- package/src/comments/ui/view/commentsarchiveview.js +1 -1
- package/src/comments/ui/view/commentslistview.d.ts +100 -100
- package/src/comments/ui/view/commentslistview.js +1 -1
- package/src/comments/ui/view/commentthreadheaderview.d.ts +50 -50
- package/src/comments/ui/view/commentthreadheaderview.js +1 -1
- package/src/comments/ui/view/commentthreadinputview.d.ts +41 -41
- package/src/comments/ui/view/commentthreadinputview.js +1 -1
- package/src/comments/ui/view/commentthreadview.d.ts +118 -118
- package/src/comments/ui/view/commentthreadview.js +1 -1
- package/src/comments/ui/view/commentview.d.ts +243 -243
- package/src/comments/ui/view/commentview.js +1 -1
- package/src/comments.d.ts +35 -35
- package/src/comments.js +1 -1
- package/src/commentsonly.d.ts +33 -33
- package/src/commentsonly.js +1 -1
- package/src/config.d.ts +176 -176
- package/src/index.d.ts +24 -24
- package/src/utils/common-translations.d.ts +9 -9
- package/src/utils/common-translations.js +1 -1
- package/src/utils/createmutationobserver.d.ts +14 -14
- package/src/utils/createmutationobserver.js +1 -1
- package/theme/comment.css +1 -1
package/src/augmentation.d.ts
CHANGED
|
@@ -1,52 +1,52 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @license Copyright (c) 2003-2023, 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
|
-
import type { CommentsConfig, SidebarConfig, Annotations, AnnotationsUIs, EditorAnnotations, CommentsRepository, CommentsUI } from './index';
|
|
6
|
-
declare module '@ckeditor/ckeditor5-core' {
|
|
7
|
-
interface EditorConfig {
|
|
8
|
-
/**
|
|
9
|
-
* The configuration of the comments feature.
|
|
10
|
-
* Introduced by the {@link module:comments/comments~Comments} feature.
|
|
11
|
-
*
|
|
12
|
-
* Read more in {@link module:comments/config~CommentsConfig}.
|
|
13
|
-
*
|
|
14
|
-
* ```ts
|
|
15
|
-
* ClassicEditor
|
|
16
|
-
* .create( {
|
|
17
|
-
* comments: ... // Locale editor configuration.
|
|
18
|
-
* } )
|
|
19
|
-
* .then( ... )
|
|
20
|
-
* .catch( ... );
|
|
21
|
-
* ```
|
|
22
|
-
*
|
|
23
|
-
* See {@link module:core/editor/editorconfig~EditorConfig all editor options}.
|
|
24
|
-
*/
|
|
25
|
-
comments?: CommentsConfig;
|
|
26
|
-
/**
|
|
27
|
-
* The configuration of the sidebar feature.
|
|
28
|
-
* Introduced by the {@link module:comments/annotations/sidebar~Sidebar} feature.
|
|
29
|
-
*/
|
|
30
|
-
sidebar?: SidebarConfig;
|
|
31
|
-
/**
|
|
32
|
-
* Enables {@link module:comments/commentsonly~CommentsOnly comments-only mode} when the editor initializes.
|
|
33
|
-
*
|
|
34
|
-
* ```ts
|
|
35
|
-
* ClassicEditor
|
|
36
|
-
* .create( {
|
|
37
|
-
* commentsOnly: true
|
|
38
|
-
* } )
|
|
39
|
-
* .then( ... )
|
|
40
|
-
* .catch( ... );
|
|
41
|
-
* ```
|
|
42
|
-
*/
|
|
43
|
-
commentsOnly?: boolean;
|
|
44
|
-
}
|
|
45
|
-
interface PluginsMap {
|
|
46
|
-
[Annotations.pluginName]: Annotations;
|
|
47
|
-
[AnnotationsUIs.pluginName]: AnnotationsUIs;
|
|
48
|
-
[EditorAnnotations.pluginName]: EditorAnnotations;
|
|
49
|
-
[CommentsRepository.pluginName]: CommentsRepository;
|
|
50
|
-
[CommentsUI.pluginName]: CommentsUI;
|
|
51
|
-
}
|
|
52
|
-
}
|
|
1
|
+
/**
|
|
2
|
+
* @license Copyright (c) 2003-2023, 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
|
+
import type { CommentsConfig, SidebarConfig, Annotations, AnnotationsUIs, EditorAnnotations, CommentsRepository, CommentsUI } from './index';
|
|
6
|
+
declare module '@ckeditor/ckeditor5-core' {
|
|
7
|
+
interface EditorConfig {
|
|
8
|
+
/**
|
|
9
|
+
* The configuration of the comments feature.
|
|
10
|
+
* Introduced by the {@link module:comments/comments~Comments} feature.
|
|
11
|
+
*
|
|
12
|
+
* Read more in {@link module:comments/config~CommentsConfig}.
|
|
13
|
+
*
|
|
14
|
+
* ```ts
|
|
15
|
+
* ClassicEditor
|
|
16
|
+
* .create( {
|
|
17
|
+
* comments: ... // Locale editor configuration.
|
|
18
|
+
* } )
|
|
19
|
+
* .then( ... )
|
|
20
|
+
* .catch( ... );
|
|
21
|
+
* ```
|
|
22
|
+
*
|
|
23
|
+
* See {@link module:core/editor/editorconfig~EditorConfig all editor options}.
|
|
24
|
+
*/
|
|
25
|
+
comments?: CommentsConfig;
|
|
26
|
+
/**
|
|
27
|
+
* The configuration of the sidebar feature.
|
|
28
|
+
* Introduced by the {@link module:comments/annotations/sidebar~Sidebar} feature.
|
|
29
|
+
*/
|
|
30
|
+
sidebar?: SidebarConfig;
|
|
31
|
+
/**
|
|
32
|
+
* Enables {@link module:comments/commentsonly~CommentsOnly comments-only mode} when the editor initializes.
|
|
33
|
+
*
|
|
34
|
+
* ```ts
|
|
35
|
+
* ClassicEditor
|
|
36
|
+
* .create( {
|
|
37
|
+
* commentsOnly: true
|
|
38
|
+
* } )
|
|
39
|
+
* .then( ... )
|
|
40
|
+
* .catch( ... );
|
|
41
|
+
* ```
|
|
42
|
+
*/
|
|
43
|
+
commentsOnly?: boolean;
|
|
44
|
+
}
|
|
45
|
+
interface PluginsMap {
|
|
46
|
+
[Annotations.pluginName]: Annotations;
|
|
47
|
+
[AnnotationsUIs.pluginName]: AnnotationsUIs;
|
|
48
|
+
[EditorAnnotations.pluginName]: EditorAnnotations;
|
|
49
|
+
[CommentsRepository.pluginName]: CommentsRepository;
|
|
50
|
+
[CommentsUI.pluginName]: CommentsUI;
|
|
51
|
+
}
|
|
52
|
+
}
|
|
@@ -1,35 +1,35 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @license Copyright (c) 2003-2023, 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
|
-
* @module comments/comments/addcommentthreadcommand
|
|
7
|
-
* @publicApi
|
|
8
|
-
*/
|
|
9
|
-
import { Command } from 'ckeditor5/src/core';
|
|
10
|
-
/**
|
|
11
|
-
* Adds a new CommentMarker what automatically adds corresponding CommentThread to the CommentsEditing#threads collection.
|
|
12
|
-
* Note this command adds only a CommentThread draft, to make is public marker has to be changed to be managed using operation.
|
|
13
|
-
*
|
|
14
|
-
* ```ts
|
|
15
|
-
* // If `threadId` is not specified, `addCommentThread()` will generate a unique ID and use it:
|
|
16
|
-
* editor.execute( 'addCommentThread' );
|
|
17
|
-
*
|
|
18
|
-
* // If you want to specify the exact thread ID, pass it through the optional `threadId` configuration parameter.
|
|
19
|
-
* editor.execute( 'addCommentThread', { threadId: 'thread-1' } );
|
|
20
|
-
* ```
|
|
21
|
-
*/
|
|
22
|
-
export default class AddCommentThreadCommand extends Command {
|
|
23
|
-
/**
|
|
24
|
-
* @inheritDoc
|
|
25
|
-
*/
|
|
26
|
-
refresh(): void;
|
|
27
|
-
/**
|
|
28
|
-
* @fires execute
|
|
29
|
-
* @param options Options for executed command.
|
|
30
|
-
* @param options.threadId Id of comment marker that will be added.
|
|
31
|
-
*/
|
|
32
|
-
execute({ threadId }?: {
|
|
33
|
-
threadId?: string | undefined;
|
|
34
|
-
}): void;
|
|
35
|
-
}
|
|
1
|
+
/**
|
|
2
|
+
* @license Copyright (c) 2003-2023, 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
|
+
* @module comments/comments/addcommentthreadcommand
|
|
7
|
+
* @publicApi
|
|
8
|
+
*/
|
|
9
|
+
import { Command } from 'ckeditor5/src/core';
|
|
10
|
+
/**
|
|
11
|
+
* Adds a new CommentMarker what automatically adds corresponding CommentThread to the CommentsEditing#threads collection.
|
|
12
|
+
* Note this command adds only a CommentThread draft, to make is public marker has to be changed to be managed using operation.
|
|
13
|
+
*
|
|
14
|
+
* ```ts
|
|
15
|
+
* // If `threadId` is not specified, `addCommentThread()` will generate a unique ID and use it:
|
|
16
|
+
* editor.execute( 'addCommentThread' );
|
|
17
|
+
*
|
|
18
|
+
* // If you want to specify the exact thread ID, pass it through the optional `threadId` configuration parameter.
|
|
19
|
+
* editor.execute( 'addCommentThread', { threadId: 'thread-1' } );
|
|
20
|
+
* ```
|
|
21
|
+
*/
|
|
22
|
+
export default class AddCommentThreadCommand extends Command {
|
|
23
|
+
/**
|
|
24
|
+
* @inheritDoc
|
|
25
|
+
*/
|
|
26
|
+
refresh(): void;
|
|
27
|
+
/**
|
|
28
|
+
* @fires execute
|
|
29
|
+
* @param options Options for executed command.
|
|
30
|
+
* @param options.threadId Id of comment marker that will be added.
|
|
31
|
+
*/
|
|
32
|
+
execute({ threadId }?: {
|
|
33
|
+
threadId?: string | undefined;
|
|
34
|
+
}): void;
|
|
35
|
+
}
|
|
@@ -20,4 +20,4 @@
|
|
|
20
20
|
*
|
|
21
21
|
*
|
|
22
22
|
*/
|
|
23
|
-
const
|
|
23
|
+
const _0x3e30=['tableCell','change','_hasContent','_trimToContent','element','document','push','editor','comment:','backward','substr','execute','getRanges','selection','model','isEnabled','_itemIsContent','addMarker','end'];(function(_0x356ef4,_0x3e30bc){const _0x55d810=function(_0x3bdc1e){while(--_0x3bdc1e){_0x356ef4['push'](_0x356ef4['shift']());}};_0x55d810(++_0x3e30bc);}(_0x3e30,0x144));const _0x55d8=function(_0x356ef4,_0x3e30bc){_0x356ef4=_0x356ef4-0x0;let _0x55d810=_0x3e30[_0x356ef4];return _0x55d810;};import{Command as _0x5b604a}from'ckeditor5/src/core';import{uid as _0x3274b8}from'ckeditor5/src/utils';export default class q extends _0x5b604a{['refresh'](){const _0x5eb916=this['editor']['model']['document'][_0x55d8('0xc')];for(const _0x365083 of _0x5eb916['getRanges']())if(this[_0x55d8('0x1')](_0x365083))return void(this[_0x55d8('0xe')]=!0x0);this['isEnabled']=!0x1;}[_0x55d8('0xa')]({threadId:_0x315ee2=_0x3274b8()}={}){const _0x359991=this['editor'][_0x55d8('0xd')],_0x280d78=[];for(const _0x184d71 of _0x359991[_0x55d8('0x4')]['selection'][_0x55d8('0xb')]())this['_hasContent'](_0x184d71)&&_0x280d78[_0x55d8('0x5')](this[_0x55d8('0x2')](_0x184d71));_0x359991[_0x55d8('0x0')](_0x8ae8bc=>{for(const _0x1d98b4 of _0x280d78){const _0x199d3e=_0x3274b8()[_0x55d8('0x9')](0x1,0x5),_0x3ce2f=_0x55d8('0x7')+_0x315ee2+':'+_0x199d3e;_0x8ae8bc[_0x55d8('0x10')](_0x3ce2f,{'range':_0x1d98b4,'usingOperation':!0x1,'affectsData':!0x1});}});}['_hasContent'](_0x165d69){for(const _0x39c302 of _0x165d69['getItems']())if(this[_0x55d8('0xf')](_0x39c302))return!0x0;return!0x1;}[_0x55d8('0xf')](_0x2fcbe4){return _0x2fcbe4['is']('$textProxy')||this[_0x55d8('0x6')]['model']['schema']['isObject'](_0x2fcbe4)&&!_0x2fcbe4['is'](_0x55d8('0x3'),_0x55d8('0x12'));}[_0x55d8('0x2')](_0x195ad0){const _0x46f706=_0x5647e3=>!this[_0x55d8('0xf')](_0x5647e3['item']),_0x38e28b=_0x195ad0['start']['getLastMatchingPosition'](_0x46f706),_0x5c1a2a=_0x195ad0[_0x55d8('0x11')]['getLastMatchingPosition'](_0x46f706,{'direction':_0x55d8('0x8')});return this[_0x55d8('0x6')][_0x55d8('0xd')]['createRange'](_0x38e28b,_0x5c1a2a);}}
|
|
@@ -1,31 +1,31 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @license Copyright (c) 2003-2023, 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
|
-
* @module comments/comments/commentsarchive
|
|
7
|
-
* @publicApi
|
|
8
|
-
*/
|
|
9
|
-
import { ContextPlugin, type Context, type Editor } from 'ckeditor5/src/core';
|
|
10
|
-
import { Collection } from 'ckeditor5/src/utils';
|
|
11
|
-
import CommentsRepository, { type CommentThread } from './commentsrepository';
|
|
12
|
-
import Annotations from '../annotations/annotations';
|
|
13
|
-
/**
|
|
14
|
-
* This plugin handles all operations on archived threads needed for the comments archive.
|
|
15
|
-
*/
|
|
16
|
-
export default class CommentsArchive extends ContextPlugin {
|
|
17
|
-
archivedThreads: Collection<CommentThread>;
|
|
18
|
-
/**
|
|
19
|
-
* @inheritDoc
|
|
20
|
-
*/
|
|
21
|
-
static get pluginName(): "CommentsArchive";
|
|
22
|
-
/**
|
|
23
|
-
* @inheritDoc
|
|
24
|
-
*/
|
|
25
|
-
static get requires(): readonly [typeof CommentsRepository, typeof Annotations];
|
|
26
|
-
constructor(context: Context | Editor);
|
|
27
|
-
/**
|
|
28
|
-
* @inheritDoc
|
|
29
|
-
*/
|
|
30
|
-
init(): void;
|
|
31
|
-
}
|
|
1
|
+
/**
|
|
2
|
+
* @license Copyright (c) 2003-2023, 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
|
+
* @module comments/comments/commentsarchive
|
|
7
|
+
* @publicApi
|
|
8
|
+
*/
|
|
9
|
+
import { ContextPlugin, type Context, type Editor } from 'ckeditor5/src/core';
|
|
10
|
+
import { Collection } from 'ckeditor5/src/utils';
|
|
11
|
+
import CommentsRepository, { type CommentThread } from './commentsrepository';
|
|
12
|
+
import Annotations from '../annotations/annotations';
|
|
13
|
+
/**
|
|
14
|
+
* This plugin handles all operations on archived threads needed for the comments archive.
|
|
15
|
+
*/
|
|
16
|
+
export default class CommentsArchive extends ContextPlugin {
|
|
17
|
+
archivedThreads: Collection<CommentThread>;
|
|
18
|
+
/**
|
|
19
|
+
* @inheritDoc
|
|
20
|
+
*/
|
|
21
|
+
static get pluginName(): "CommentsArchive";
|
|
22
|
+
/**
|
|
23
|
+
* @inheritDoc
|
|
24
|
+
*/
|
|
25
|
+
static get requires(): readonly [typeof CommentsRepository, typeof Annotations];
|
|
26
|
+
constructor(context: Context | Editor);
|
|
27
|
+
/**
|
|
28
|
+
* @inheritDoc
|
|
29
|
+
*/
|
|
30
|
+
init(): void;
|
|
31
|
+
}
|
|
@@ -20,4 +20,4 @@
|
|
|
20
20
|
*
|
|
21
21
|
*
|
|
22
22
|
*/
|
|
23
|
-
const
|
|
23
|
+
const _0x42e6=['add','addCommentThread','isActive','findIndex','stopListening','remove','requires','getCommentThread','has','archivedAt','length','CommentsArchive','context','pluginName','archivedThreads','highest','change:archivedAt','init','listenTo','plugins','_calculatePosition','collection','activate'];(function(_0x5e7572,_0x42e6ff){const _0x3b1c85=function(_0x247b23){while(--_0x247b23){_0x5e7572['push'](_0x5e7572['shift']());}};_0x3b1c85(++_0x42e6ff);}(_0x42e6,0x1f1));const _0x3b1c=function(_0x5e7572,_0x42e6ff){_0x5e7572=_0x5e7572-0x0;let _0x3b1c85=_0x42e6[_0x5e7572];return _0x3b1c85;};import{ContextPlugin as _0x40eb32}from'ckeditor5/src/core';import{Collection as _0x80fa6}from'ckeditor5/src/utils';import _0x445a7c from'./commentsrepository';import _0x32fde3 from'../annotations/annotations';export default class p extends _0x40eb32{static get[_0x3b1c('0x16')](){return _0x3b1c('0x14');}static get[_0x3b1c('0xf')](){return[_0x445a7c,_0x32fde3];}constructor(_0x4fa508){super(_0x4fa508),this[_0x3b1c('0x0')]=new _0x80fa6();}[_0x3b1c('0x3')](){const _0x192b0b=this[_0x3b1c('0x15')],_0x45c017=_0x192b0b[_0x3b1c('0x5')]['get'](_0x445a7c),_0x3d29de=_0x192b0b['plugins']['get'](_0x32fde3);this[_0x3b1c('0x4')](_0x45c017,_0x3b1c('0xa'),(_0x51fe00,{threadId:_0x834d6f})=>{const _0x83bd3f=_0x45c017['getCommentThread'](_0x834d6f);_0x83bd3f[_0x3b1c('0x12')]&&this[_0x3b1c('0x0')][_0x3b1c('0x9')](_0x83bd3f,this[_0x3b1c('0x6')](_0x83bd3f[_0x3b1c('0x12')])),this[_0x3b1c('0x4')](_0x83bd3f,_0x3b1c('0x2'),(_0x1cd244,_0x5227ff,_0x3ae91d)=>{_0x3ae91d?this[_0x3b1c('0x0')]['has'](_0x83bd3f)||this[_0x3b1c('0x0')][_0x3b1c('0x9')](_0x83bd3f,this['_calculatePosition'](_0x83bd3f[_0x3b1c('0x12')])):this['archivedThreads']['has'](_0x83bd3f)&&this[_0x3b1c('0x0')][_0x3b1c('0xe')](_0x83bd3f);});}),this[_0x3b1c('0x4')](_0x45c017,'removeCommentThread',(_0x2d1094,{threadId:_0x7c858e})=>{const _0x7cf5c=_0x45c017[_0x3b1c('0x10')](_0x7c858e);this[_0x3b1c('0xd')](_0x7cf5c),this[_0x3b1c('0x0')][_0x3b1c('0x11')](_0x7cf5c)&&this[_0x3b1c('0x0')][_0x3b1c('0xe')](_0x7cf5c);},{'priority':_0x3b1c('0x1')}),this['listenTo'](_0x3d29de[_0x3b1c('0x7')],'focus',(_0x1c64b6,_0x4e7452)=>{_0x4e7452[_0x3b1c('0xb')]=!0x0,_0x3d29de[_0x3b1c('0x8')](_0x4e7452);});}['_calculatePosition'](_0x45747b){const _0x2ef519=[...this[_0x3b1c('0x0')]][_0x3b1c('0xc')](_0x14aadb=>_0x14aadb[_0x3b1c('0x12')]<_0x45747b);return _0x2ef519>-0x1?_0x2ef519:this[_0x3b1c('0x0')][_0x3b1c('0x13')];}}
|
|
@@ -1,38 +1,38 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @license Copyright (c) 2003-2023, 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
|
-
* @module comments/comments/commentsarchiveui
|
|
7
|
-
* @publicApi
|
|
8
|
-
*/
|
|
9
|
-
import '../../theme/commentsarchive.css';
|
|
10
|
-
import { Plugin, type Editor } from 'ckeditor5/src/core';
|
|
11
|
-
import { ViewCollection } from 'ckeditor5/src/ui';
|
|
12
|
-
import CommentsArchiveView from './ui/view/commentsarchiveview';
|
|
13
|
-
import CommentsArchive from './commentsarchive';
|
|
14
|
-
import type AnnotationView from '../annotations/view/annotationview';
|
|
15
|
-
/**
|
|
16
|
-
* Creates comments archive {@link module:ui/dropdown/dropdownview~DropdownView ui dropdown} and binds with
|
|
17
|
-
* archived comment thread annotation views.
|
|
18
|
-
*/
|
|
19
|
-
export default class CommentsArchiveUI extends Plugin {
|
|
20
|
-
commentsArchiveView: CommentsArchiveView | undefined;
|
|
21
|
-
annotationViews: ViewCollection<AnnotationView>;
|
|
22
|
-
/**
|
|
23
|
-
* @inheritDoc
|
|
24
|
-
*/
|
|
25
|
-
static get pluginName(): "CommentsArchiveUI";
|
|
26
|
-
/**
|
|
27
|
-
* @inheritDoc
|
|
28
|
-
*/
|
|
29
|
-
static get requires(): readonly [typeof CommentsArchive];
|
|
30
|
-
/**
|
|
31
|
-
* @inheritDoc
|
|
32
|
-
*/
|
|
33
|
-
constructor(editor: Editor);
|
|
34
|
-
/**
|
|
35
|
-
* @inheritDoc
|
|
36
|
-
*/
|
|
37
|
-
init(): void;
|
|
38
|
-
}
|
|
1
|
+
/**
|
|
2
|
+
* @license Copyright (c) 2003-2023, 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
|
+
* @module comments/comments/commentsarchiveui
|
|
7
|
+
* @publicApi
|
|
8
|
+
*/
|
|
9
|
+
import '../../theme/commentsarchive.css';
|
|
10
|
+
import { Plugin, type Editor } from 'ckeditor5/src/core';
|
|
11
|
+
import { ViewCollection } from 'ckeditor5/src/ui';
|
|
12
|
+
import CommentsArchiveView from './ui/view/commentsarchiveview';
|
|
13
|
+
import CommentsArchive from './commentsarchive';
|
|
14
|
+
import type AnnotationView from '../annotations/view/annotationview';
|
|
15
|
+
/**
|
|
16
|
+
* Creates comments archive {@link module:ui/dropdown/dropdownview~DropdownView ui dropdown} and binds with
|
|
17
|
+
* archived comment thread annotation views.
|
|
18
|
+
*/
|
|
19
|
+
export default class CommentsArchiveUI extends Plugin {
|
|
20
|
+
commentsArchiveView: CommentsArchiveView | undefined;
|
|
21
|
+
annotationViews: ViewCollection<AnnotationView>;
|
|
22
|
+
/**
|
|
23
|
+
* @inheritDoc
|
|
24
|
+
*/
|
|
25
|
+
static get pluginName(): "CommentsArchiveUI";
|
|
26
|
+
/**
|
|
27
|
+
* @inheritDoc
|
|
28
|
+
*/
|
|
29
|
+
static get requires(): readonly [typeof CommentsArchive];
|
|
30
|
+
/**
|
|
31
|
+
* @inheritDoc
|
|
32
|
+
*/
|
|
33
|
+
constructor(editor: Editor);
|
|
34
|
+
/**
|
|
35
|
+
* @inheritDoc
|
|
36
|
+
*/
|
|
37
|
+
init(): void;
|
|
38
|
+
}
|
|
@@ -20,4 +20,4 @@
|
|
|
20
20
|
*
|
|
21
21
|
*
|
|
22
22
|
*/
|
|
23
|
-
const
|
|
23
|
+
const _0x3d25=['change:isOpen','locale','requires','position','panelView','indexOf','_handleAnnotationFocusableElements','commentsArchive','config','add','focusableElements','plugins','_calculatePosition','splice','classList','pluginName','editor','listenTo','_pendingThreads','find','_threadToController','annotationViews','contains','buttonView','stopListening','archivedThreads','ck-body','_createArchiveUIDropdown','init','getByInnerView','filter','children','_visibleAnnotations','get','Annotations','commentsArchiveView','focusTracker','remove','channelId','componentFactory','isVisible','collaboration.channelId','CommentsArchiveUI','view','innerView','collection','CommentsRepository','push','extendTemplate','COMMENTS_ARCHIVE','findIndex'];(function(_0x416842,_0x3d2571){const _0x59d908=function(_0x4d9b5a){while(--_0x4d9b5a){_0x416842['push'](_0x416842['shift']());}};_0x59d908(++_0x3d2571);}(_0x3d25,0x177));const _0x59d9=function(_0x416842,_0x3d2571){_0x416842=_0x416842-0x0;let _0x59d908=_0x3d25[_0x416842];return _0x59d908;};import'../../theme/commentsarchive.css';import{Plugin as _0x246a99}from'ckeditor5/src/core';import{createDropdown as _0x5c697f,ViewCollection as _0x41bbe6}from'ckeditor5/src/ui';import _0x232463 from'../../theme/icons/comments-archive.svg';import{getTranslation as _0x376a89}from'../utils/common-translations';import _0x2306fa from'./ui/view/commentsarchiveview';import _0x8784b1 from'./commentsarchive';export default class a extends _0x246a99{static get[_0x59d9('0x30')](){return _0x59d9('0x18');}static get[_0x59d9('0x23')](){return[_0x8784b1];}constructor(_0x4385c0){super(_0x4385c0),this[_0x59d9('0x3')]=new _0x41bbe6(),this[_0x59d9('0x0')]=[];}[_0x59d9('0xa')](){this[_0x59d9('0x31')]['ui'][_0x59d9('0x15')][_0x59d9('0x2a')](_0x59d9('0x28'),()=>this[_0x59d9('0x9')]());const _0x34111d=this['editor']['plugins'][_0x59d9('0xf')](_0x8784b1),_0x48eeb1=this[_0x59d9('0x31')]['plugins']['get'](_0x59d9('0x10')),_0x5297a9=this[_0x59d9('0x31')][_0x59d9('0x2c')][_0x59d9('0xf')](_0x59d9('0x1c'));this[_0x59d9('0x32')](_0x34111d[_0x59d9('0x7')],_0x59d9('0x2a'),(_0x5441d4,_0x131ead)=>{const _0x4bb50d=this[_0x59d9('0x31')][_0x59d9('0x29')]['get'](_0x59d9('0x17'));if(!_0x4bb50d||_0x131ead[_0x59d9('0x14')]===_0x4bb50d){const _0x22e54d=this[_0x59d9('0x2d')](_0x131ead['archivedAt']),_0xdf384d=_0x5297a9[_0x59d9('0x2')][_0x59d9('0xf')](_0x131ead);if(!_0xdf384d)return void this[_0x59d9('0x0')][_0x59d9('0x1d')]({'thread':_0x131ead,'position':_0x22e54d});const _0x2dc2da=_0x48eeb1[_0x59d9('0xb')](_0xdf384d[_0x59d9('0x19')]);_0x2dc2da[_0x59d9('0x16')]&&_0x48eeb1[_0x59d9('0xe')][_0x59d9('0x13')](_0x2dc2da),this[_0x59d9('0x3')][_0x59d9('0x2a')](_0x2dc2da[_0x59d9('0x19')],_0x22e54d);}}),this['listenTo'](_0x48eeb1[_0x59d9('0x1b')],_0x59d9('0x2a'),(_0x1552e5,_0xec8925)=>{const _0x181272=this[_0x59d9('0x0')][_0x59d9('0x1')](({thread:_0x356e7d})=>{const _0x59970e=_0x5297a9[_0x59d9('0x2')][_0x59d9('0xf')](_0x356e7d);return _0x59970e&&_0xec8925[_0x59d9('0x1a')]===_0x59970e['view'];});_0x181272&&(this[_0x59d9('0x3')]['add'](_0xec8925['view'],_0x181272[_0x59d9('0x24')]),this[_0x59d9('0x0')][_0x59d9('0x2e')](this[_0x59d9('0x0')][_0x59d9('0x26')](_0x181272),0x1));}),this[_0x59d9('0x32')](_0x34111d[_0x59d9('0x7')],_0x59d9('0x13'),(_0x10f8fa,_0x522a82)=>{const _0x41d933=this[_0x59d9('0x31')][_0x59d9('0x29')][_0x59d9('0xf')](_0x59d9('0x17'));if(!_0x41d933||_0x522a82[_0x59d9('0x14')]===_0x41d933){const _0x4bd726=_0x5297a9[_0x59d9('0x2')]['get'](_0x522a82),_0x5413ab=_0x48eeb1[_0x59d9('0xb')](_0x4bd726['view']);this[_0x59d9('0x3')]['remove'](_0x5413ab['view']),this[_0x59d9('0x6')](_0x5413ab['focusableElements']);}});}[_0x59d9('0x27')](_0x2ebca8,_0x490ecb){for(const _0xd55fa2 of _0x490ecb[_0x59d9('0x2b')])_0xd55fa2['classList'][_0x59d9('0x4')]('ck-body')&&_0x2ebca8[_0x59d9('0x12')][_0x59d9('0x2a')](_0xd55fa2);this[_0x59d9('0x32')](_0x490ecb[_0x59d9('0x2b')],_0x59d9('0x2a'),(_0x4c6a8f,_0x3e0da1)=>{_0x3e0da1['classList'][_0x59d9('0x4')](_0x59d9('0x8'))&&_0x2ebca8[_0x59d9('0x12')]['add'](_0x3e0da1);}),this[_0x59d9('0x32')](_0x490ecb['focusableElements'],_0x59d9('0x13'),(_0x5d1236,_0x2d9a4a)=>{_0x2d9a4a[_0x59d9('0x2f')][_0x59d9('0x4')](_0x59d9('0x8'))&&_0x2ebca8['focusTracker'][_0x59d9('0x13')](_0x2d9a4a);});}[_0x59d9('0x2d')](_0x507800){const _0x7751cd=this[_0x59d9('0x31')][_0x59d9('0x29')][_0x59d9('0xf')](_0x59d9('0x17')),_0x1dc055=[...this['editor'][_0x59d9('0x2c')][_0x59d9('0xf')](_0x8784b1)['archivedThreads']][_0x59d9('0xc')](_0x5ba931=>_0x5ba931[_0x59d9('0x14')]===_0x7751cd)[_0x59d9('0x20')](_0x22b29d=>_0x22b29d['archivedAt']<_0x507800);return _0x1dc055>-0x1?_0x1dc055-0x1:this[_0x59d9('0x3')]['length'];}[_0x59d9('0x9')](){const _0x44821e=this['editor'],_0x189d9d=this[_0x59d9('0x31')][_0x59d9('0x2c')][_0x59d9('0xf')](_0x59d9('0x10')),_0x4f6ef5=_0x5c697f(_0x44821e[_0x59d9('0x22')]);_0x4f6ef5[_0x59d9('0x5')]['set']({'icon':_0x232463,'label':_0x376a89(_0x44821e['locale'],_0x59d9('0x1f')),'tooltip':!0x0}),_0x4f6ef5[_0x59d9('0x25')][_0x59d9('0x1e')]({'attributes':{'class':'ck-comments-archive-dropdown'}}),_0x4f6ef5['on'](_0x59d9('0x21'),(_0x56f59,_0x3da6c6,_0x4290bd)=>{this['commentsArchiveView']||(this[_0x59d9('0x11')]=new _0x2306fa(_0x44821e[_0x59d9('0x22')],this[_0x59d9('0x3')])),_0x4290bd?_0x4f6ef5['panelView'][_0x59d9('0xd')]['add'](this[_0x59d9('0x11')]):_0x4f6ef5[_0x59d9('0x25')][_0x59d9('0xd')][_0x59d9('0x13')](this[_0x59d9('0x11')]);});for(const _0x231a28 of this[_0x59d9('0x3')]){const _0x40cd23=_0x189d9d[_0x59d9('0xb')](_0x231a28['mainView']);this[_0x59d9('0x27')](_0x4f6ef5,_0x40cd23);}return _0x4f6ef5['listenTo'](this[_0x59d9('0x3')],_0x59d9('0x2a'),(_0x416c94,_0x1d1ec4)=>{const _0x46bb0c=_0x189d9d['getByInnerView'](_0x1d1ec4['mainView']);this[_0x59d9('0x27')](_0x4f6ef5,_0x46bb0c);}),_0x4f6ef5[_0x59d9('0x32')](this['annotationViews'],'remove',(_0x545bcb,_0x2af550)=>{const _0x3bd62b=_0x189d9d[_0x59d9('0xb')](_0x2af550['mainView']);for(const _0x4edd4f of _0x3bd62b[_0x59d9('0x2b')])_0x4edd4f[_0x59d9('0x2f')][_0x59d9('0x4')](_0x59d9('0x8'))&&_0x4f6ef5[_0x59d9('0x12')][_0x59d9('0x13')](_0x4edd4f);}),_0x4f6ef5;}}
|
|
@@ -1,79 +1,79 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @license Copyright (c) 2003-2023, 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
|
-
* @module comments/comments/commentsediting
|
|
7
|
-
*/
|
|
8
|
-
import { Plugin, type Editor } from 'ckeditor5/src/core';
|
|
9
|
-
import type { Marker } from 'ckeditor5/src/engine';
|
|
10
|
-
import CommentsRepository from './commentsrepository';
|
|
11
|
-
import EditorAnnotations from '../annotations/editorannotations';
|
|
12
|
-
import CommentsRestrictedEditingMode from './integrations/commentsrestrictededitingmode';
|
|
13
|
-
import '../../theme/commentmarker.css';
|
|
14
|
-
import CommentsImportWord from './integrations/importword';
|
|
15
|
-
/**
|
|
16
|
-
* Plugin that keeps in sync comments in {@link module:comments/comments/commentsrepository~CommentsRepository} with
|
|
17
|
-
* {@link module:engine/model/markercollection~Marker comment markers}.
|
|
18
|
-
*/
|
|
19
|
-
export default class CommentsEditing extends Plugin {
|
|
20
|
-
/**
|
|
21
|
-
* If set to `true`, the plugin won't load comment thread for the new marker immediately after the marker is added to the editor.
|
|
22
|
-
* Instead, the plugin will wait until the flag will be set to `false` and then load missing comments.
|
|
23
|
-
*
|
|
24
|
-
* It's useful to hold fetching comments from the server when comments are used with real-time collaboration.
|
|
25
|
-
* When a user connects to an existing document, the operations from the history need to be applied one by one.
|
|
26
|
-
* An operation which added a new comment marker might be followed by an operation which removes that marker, so it's not
|
|
27
|
-
* necessary to make an additional request then.
|
|
28
|
-
*
|
|
29
|
-
* @observable
|
|
30
|
-
*/
|
|
31
|
-
isThreadsLoadingPaused: boolean;
|
|
32
|
-
/**
|
|
33
|
-
* Name of the active comment marker.
|
|
34
|
-
*
|
|
35
|
-
* Markers conversion checks if comment should be marked as active and adds/removes additional css class during the conversion.
|
|
36
|
-
*
|
|
37
|
-
* @observable
|
|
38
|
-
*/
|
|
39
|
-
activeMarker: string | null;
|
|
40
|
-
/**
|
|
41
|
-
* @inheritDoc
|
|
42
|
-
*/
|
|
43
|
-
static get requires(): readonly [typeof CommentsRepository, typeof EditorAnnotations, typeof CommentsRestrictedEditingMode, typeof CommentsImportWord];
|
|
44
|
-
/**
|
|
45
|
-
* @inheritDoc
|
|
46
|
-
*/
|
|
47
|
-
static get pluginName(): "CommentsEditing";
|
|
48
|
-
/**
|
|
49
|
-
* @inheritDoc
|
|
50
|
-
*/
|
|
51
|
-
constructor(editor: Editor);
|
|
52
|
-
/**
|
|
53
|
-
* @inheritDoc
|
|
54
|
-
*/
|
|
55
|
-
init(): void;
|
|
56
|
-
/**
|
|
57
|
-
* @inheritDoc
|
|
58
|
-
*/
|
|
59
|
-
destroy(): void;
|
|
60
|
-
/**
|
|
61
|
-
* Returns `true` if there is at least one marker in the content that is related to a comment thread with given `threadId`.
|
|
62
|
-
*
|
|
63
|
-
* @param threadId Comment thread id.
|
|
64
|
-
*/
|
|
65
|
-
hasMarkerForId(threadId: string): boolean;
|
|
66
|
-
/**
|
|
67
|
-
* Returns all markers that are related to the comment thread with the given `threadId`.
|
|
68
|
-
*
|
|
69
|
-
* @param threadId Comment thread id.
|
|
70
|
-
* @returns Array with all markers related to given comment thread.
|
|
71
|
-
*/
|
|
72
|
-
getAllMarkersForId(threadId: string): Array<Marker>;
|
|
73
|
-
/**
|
|
74
|
-
* Scrolls editing view to the first thread marker.
|
|
75
|
-
*
|
|
76
|
-
* @param threadId Comment thread id.
|
|
77
|
-
*/
|
|
78
|
-
scrollToThreadMarker(threadId: string): void;
|
|
79
|
-
}
|
|
1
|
+
/**
|
|
2
|
+
* @license Copyright (c) 2003-2023, 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
|
+
* @module comments/comments/commentsediting
|
|
7
|
+
*/
|
|
8
|
+
import { Plugin, type Editor } from 'ckeditor5/src/core';
|
|
9
|
+
import type { Marker } from 'ckeditor5/src/engine';
|
|
10
|
+
import CommentsRepository from './commentsrepository';
|
|
11
|
+
import EditorAnnotations from '../annotations/editorannotations';
|
|
12
|
+
import CommentsRestrictedEditingMode from './integrations/commentsrestrictededitingmode';
|
|
13
|
+
import '../../theme/commentmarker.css';
|
|
14
|
+
import CommentsImportWord from './integrations/importword';
|
|
15
|
+
/**
|
|
16
|
+
* Plugin that keeps in sync comments in {@link module:comments/comments/commentsrepository~CommentsRepository} with
|
|
17
|
+
* {@link module:engine/model/markercollection~Marker comment markers}.
|
|
18
|
+
*/
|
|
19
|
+
export default class CommentsEditing extends Plugin {
|
|
20
|
+
/**
|
|
21
|
+
* If set to `true`, the plugin won't load comment thread for the new marker immediately after the marker is added to the editor.
|
|
22
|
+
* Instead, the plugin will wait until the flag will be set to `false` and then load missing comments.
|
|
23
|
+
*
|
|
24
|
+
* It's useful to hold fetching comments from the server when comments are used with real-time collaboration.
|
|
25
|
+
* When a user connects to an existing document, the operations from the history need to be applied one by one.
|
|
26
|
+
* An operation which added a new comment marker might be followed by an operation which removes that marker, so it's not
|
|
27
|
+
* necessary to make an additional request then.
|
|
28
|
+
*
|
|
29
|
+
* @observable
|
|
30
|
+
*/
|
|
31
|
+
isThreadsLoadingPaused: boolean;
|
|
32
|
+
/**
|
|
33
|
+
* Name of the active comment marker.
|
|
34
|
+
*
|
|
35
|
+
* Markers conversion checks if comment should be marked as active and adds/removes additional css class during the conversion.
|
|
36
|
+
*
|
|
37
|
+
* @observable
|
|
38
|
+
*/
|
|
39
|
+
activeMarker: string | null;
|
|
40
|
+
/**
|
|
41
|
+
* @inheritDoc
|
|
42
|
+
*/
|
|
43
|
+
static get requires(): readonly [typeof CommentsRepository, typeof EditorAnnotations, typeof CommentsRestrictedEditingMode, typeof CommentsImportWord];
|
|
44
|
+
/**
|
|
45
|
+
* @inheritDoc
|
|
46
|
+
*/
|
|
47
|
+
static get pluginName(): "CommentsEditing";
|
|
48
|
+
/**
|
|
49
|
+
* @inheritDoc
|
|
50
|
+
*/
|
|
51
|
+
constructor(editor: Editor);
|
|
52
|
+
/**
|
|
53
|
+
* @inheritDoc
|
|
54
|
+
*/
|
|
55
|
+
init(): void;
|
|
56
|
+
/**
|
|
57
|
+
* @inheritDoc
|
|
58
|
+
*/
|
|
59
|
+
destroy(): void;
|
|
60
|
+
/**
|
|
61
|
+
* Returns `true` if there is at least one marker in the content that is related to a comment thread with given `threadId`.
|
|
62
|
+
*
|
|
63
|
+
* @param threadId Comment thread id.
|
|
64
|
+
*/
|
|
65
|
+
hasMarkerForId(threadId: string): boolean;
|
|
66
|
+
/**
|
|
67
|
+
* Returns all markers that are related to the comment thread with the given `threadId`.
|
|
68
|
+
*
|
|
69
|
+
* @param threadId Comment thread id.
|
|
70
|
+
* @returns Array with all markers related to given comment thread.
|
|
71
|
+
*/
|
|
72
|
+
getAllMarkersForId(threadId: string): Array<Marker>;
|
|
73
|
+
/**
|
|
74
|
+
* Scrolls editing view to the first thread marker.
|
|
75
|
+
*
|
|
76
|
+
* @param threadId Comment thread id.
|
|
77
|
+
*/
|
|
78
|
+
scrollToThreadMarker(threadId: string): void;
|
|
79
|
+
}
|