@ckeditor/ckeditor5-track-changes 36.0.0 → 37.0.0-rc.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.
Files changed (127) hide show
  1. package/build/track-changes.js +1 -1
  2. package/ckeditor5-metadata.json +10 -0
  3. package/package.json +21 -6
  4. package/src/augmentation.d.ts +36 -0
  5. package/src/augmentation.js +23 -0
  6. package/src/commands/acceptsuggestioncommand.d.ts +20 -0
  7. package/src/commands/acceptsuggestioncommand.js +1 -1
  8. package/src/commands/discardsuggestioncommand.d.ts +20 -0
  9. package/src/commands/discardsuggestioncommand.js +1 -1
  10. package/src/commands/executeonallsuggestionscommand.d.ts +20 -0
  11. package/src/commands/executeonallsuggestionscommand.js +1 -1
  12. package/src/commands/executeonselectedsuggestionscommand.d.ts +20 -0
  13. package/src/commands/executeonselectedsuggestionscommand.js +1 -1
  14. package/src/commands/trackchangescommand.d.ts +22 -0
  15. package/src/commands/trackchangescommand.js +1 -1
  16. package/src/index.d.ts +12 -0
  17. package/src/index.js +1 -1
  18. package/src/integrations/alignment.d.ts +13 -0
  19. package/src/integrations/alignment.js +1 -1
  20. package/src/integrations/basicstyles.d.ts +13 -0
  21. package/src/integrations/basicstyles.js +1 -1
  22. package/src/integrations/blockquote.d.ts +13 -0
  23. package/src/integrations/blockquote.js +1 -1
  24. package/src/integrations/ckbox.d.ts +13 -0
  25. package/src/integrations/ckbox.js +1 -1
  26. package/src/integrations/codeblock.d.ts +13 -0
  27. package/src/integrations/codeblock.js +1 -1
  28. package/src/integrations/comments.d.ts +10 -0
  29. package/src/integrations/comments.js +1 -1
  30. package/src/integrations/deletecommand.d.ts +12 -0
  31. package/src/integrations/deletecommand.js +1 -1
  32. package/src/integrations/documentlist.d.ts +13 -0
  33. package/src/integrations/documentlist.js +1 -1
  34. package/src/integrations/documentlistproperties.d.ts +25 -0
  35. package/src/integrations/documentlistproperties.js +1 -1
  36. package/src/integrations/entercommand.d.ts +11 -0
  37. package/src/integrations/entercommand.js +1 -1
  38. package/src/integrations/findandreplace.d.ts +17 -0
  39. package/src/integrations/findandreplace.js +1 -1
  40. package/src/integrations/font.d.ts +13 -0
  41. package/src/integrations/font.js +1 -1
  42. package/src/integrations/heading.d.ts +13 -0
  43. package/src/integrations/heading.js +1 -1
  44. package/src/integrations/highlight.d.ts +13 -0
  45. package/src/integrations/highlight.js +1 -1
  46. package/src/integrations/horizontalline.d.ts +13 -0
  47. package/src/integrations/horizontalline.js +1 -1
  48. package/src/integrations/htmlembed.d.ts +13 -0
  49. package/src/integrations/htmlembed.js +1 -1
  50. package/src/integrations/image.d.ts +13 -0
  51. package/src/integrations/image.js +1 -1
  52. package/src/integrations/imagereplace.d.ts +19 -0
  53. package/src/integrations/imagereplace.js +1 -1
  54. package/src/integrations/importword.d.ts +14 -0
  55. package/src/integrations/importword.js +1 -1
  56. package/src/integrations/indent.d.ts +13 -0
  57. package/src/integrations/indent.js +1 -1
  58. package/src/integrations/inputcommand.d.ts +11 -0
  59. package/src/integrations/inputcommand.js +1 -1
  60. package/src/integrations/link.d.ts +13 -0
  61. package/src/integrations/link.js +1 -1
  62. package/src/integrations/list.d.ts +13 -0
  63. package/src/integrations/list.js +1 -1
  64. package/src/integrations/listproperties.d.ts +25 -0
  65. package/src/integrations/listproperties.js +1 -1
  66. package/src/integrations/mediaembed.d.ts +13 -0
  67. package/src/integrations/mediaembed.js +1 -1
  68. package/src/integrations/mention.d.ts +13 -0
  69. package/src/integrations/mention.js +1 -1
  70. package/src/integrations/pagebreak.d.ts +13 -0
  71. package/src/integrations/pagebreak.js +1 -1
  72. package/src/integrations/paragraph.d.ts +13 -0
  73. package/src/integrations/paragraph.js +1 -1
  74. package/src/integrations/removeformat.d.ts +13 -0
  75. package/src/integrations/removeformat.js +1 -1
  76. package/src/integrations/restrictededitingmode.d.ts +13 -0
  77. package/src/integrations/restrictededitingmode.js +1 -1
  78. package/src/integrations/shiftentercommand.d.ts +11 -0
  79. package/src/integrations/shiftentercommand.js +1 -1
  80. package/src/integrations/standardeditingmode.d.ts +13 -0
  81. package/src/integrations/standardeditingmode.js +1 -1
  82. package/src/integrations/style.d.ts +14 -0
  83. package/src/integrations/style.js +1 -1
  84. package/src/integrations/table.d.ts +38 -0
  85. package/src/integrations/table.js +1 -1
  86. package/src/integrations/tablecaption.d.ts +17 -0
  87. package/src/integrations/tablecaption.js +1 -1
  88. package/src/integrations/tableclipboard.d.ts +17 -0
  89. package/src/integrations/tableclipboard.js +1 -1
  90. package/src/integrations/tablecolumnresize.d.ts +22 -0
  91. package/src/integrations/tablecolumnresize.js +1 -1
  92. package/src/integrations/tableheadings.d.ts +17 -0
  93. package/src/integrations/tableheadings.js +1 -1
  94. package/src/integrations/tablemergesplit.d.ts +17 -0
  95. package/src/integrations/tablemergesplit.js +1 -1
  96. package/src/integrations/tableproperties.d.ts +23 -0
  97. package/src/integrations/tableproperties.js +1 -1
  98. package/src/integrations/title.d.ts +13 -0
  99. package/src/integrations/title.js +1 -1
  100. package/src/integrations/undo.d.ts +13 -0
  101. package/src/integrations/undo.js +1 -1
  102. package/src/integrations/utils.d.ts +17 -0
  103. package/src/integrations/utils.js +1 -1
  104. package/src/suggestion.d.ts +266 -0
  105. package/src/suggestion.js +1 -1
  106. package/src/suggestiondescriptionfactory.d.ts +151 -0
  107. package/src/suggestiondescriptionfactory.js +1 -1
  108. package/src/trackchanges.d.ts +222 -0
  109. package/src/trackchanges.js +1 -1
  110. package/src/trackchangesconfig.d.ts +53 -0
  111. package/src/trackchangesconfig.js +23 -0
  112. package/src/trackchangesdata.d.ts +38 -0
  113. package/src/trackchangesdata.js +1 -1
  114. package/src/trackchangesediting.d.ts +391 -0
  115. package/src/trackchangesediting.js +1 -1
  116. package/src/trackchangesui.d.ts +34 -0
  117. package/src/trackchangesui.js +1 -1
  118. package/src/ui/suggestioncontroller.d.ts +36 -0
  119. package/src/ui/suggestioncontroller.js +1 -1
  120. package/src/ui/view/basesuggestionthreadview.d.ts +166 -0
  121. package/src/ui/view/basesuggestionthreadview.js +1 -1
  122. package/src/ui/view/suggestionthreadview.d.ts +184 -0
  123. package/src/ui/view/suggestionthreadview.js +1 -1
  124. package/src/utils/common-translations.d.ts +5 -0
  125. package/src/utils/common-translations.js +1 -1
  126. package/src/utils/utils.d.ts +26 -0
  127. package/src/utils/utils.js +1 -1
@@ -20,4 +20,4 @@
20
20
  *
21
21
  *
22
22
  */
23
- const _0x38a6=['change:isDirty','_removePendingAction','view','PendingActions','acceptSuggestion','_editor','commentThreadController','listenTo','bind','model','add','locale','get','stopListening','discardSuggestion','_pendingAction','_discardCommand','execute','_acceptCommand','destroy','isDirty','plugins','PENDING_ACTION_SUGGESTION','_setPendingAction','commands','isEnabled'];(function(_0x1e3af9,_0x38a6c8){const _0x14d9b0=function(_0x32eae7){while(--_0x32eae7){_0x1e3af9['push'](_0x1e3af9['shift']());}};_0x14d9b0(++_0x38a6c8);}(_0x38a6,0xe3));const _0x14d9=function(_0x1e3af9,_0x38a6c8){_0x1e3af9=_0x1e3af9-0x0;let _0x14d9b0=_0x38a6[_0x1e3af9];return _0x14d9b0;};import{ObservableMixin as _0x1733a9,mix as _0x24fbb6}from'ckeditor5/src/utils';import{getTranslation as _0x4a5feb}from'../utils/common-translations';export default class Ot{constructor(_0x536a5d,_0x492328,_0x7f9552,_0x2b30e5){this[_0x14d9('0x10')]=_0x492328,this[_0x14d9('0x9')]=_0x7f9552,this['commentThreadController']=_0x2b30e5,this[_0x14d9('0xc')]=_0x536a5d,this[_0x14d9('0x19')]=_0x536a5d[_0x14d9('0x5')][_0x14d9('0x13')]('acceptSuggestion'),this[_0x14d9('0x17')]=_0x536a5d[_0x14d9('0x5')][_0x14d9('0x13')](_0x14d9('0x15')),this[_0x14d9('0x9')][_0x14d9('0xf')](_0x14d9('0x6'))['to'](this[_0x14d9('0x19')]),this['_pendingAction']=null,_0x7f9552[_0x14d9('0x1')]&&this[_0x14d9('0x4')](),this[_0x14d9('0xe')](_0x7f9552,'acceptSuggestion',()=>this['acceptSuggestion']()),this[_0x14d9('0xe')](_0x7f9552,_0x14d9('0x15'),()=>this[_0x14d9('0x15')]()),this[_0x14d9('0xe')](_0x7f9552,_0x14d9('0x7'),()=>{_0x7f9552[_0x14d9('0x1')]?this[_0x14d9('0x4')]():this[_0x14d9('0x8')]();});}[_0x14d9('0xb')](){this['_acceptCommand'][_0x14d9('0x18')](this[_0x14d9('0x10')]['id']);}[_0x14d9('0x15')](){this[_0x14d9('0x17')][_0x14d9('0x18')](this['model']['id']);}[_0x14d9('0x0')](){this[_0x14d9('0x9')]['unbind'](_0x14d9('0x6')),this[_0x14d9('0x14')](),this[_0x14d9('0xd')][_0x14d9('0x0')](),this[_0x14d9('0x16')]&&this[_0x14d9('0x8')]();}[_0x14d9('0x4')](){const _0xf0d707=_0x4a5feb(this[_0x14d9('0xc')][_0x14d9('0x12')],_0x14d9('0x3'));this[_0x14d9('0x16')]=this[_0x14d9('0xc')][_0x14d9('0x2')][_0x14d9('0x13')](_0x14d9('0xa'))[_0x14d9('0x11')](_0xf0d707);}['_removePendingAction'](){this[_0x14d9('0xc')][_0x14d9('0x2')][_0x14d9('0x13')]('PendingActions')['remove'](this['_pendingAction']),this[_0x14d9('0x16')]=null;}}_0x24fbb6(Ot,_0x1733a9);
23
+ const _0x2066=['unbind','PENDING_ACTION_SUGGESTION','isDirty','execute','isEnabled','_discardCommand','plugins','model','_editor','canAccept','_removePendingAction','_acceptCommand','add','_pendingAction','view','listenTo','change:isDirty','bind','commands','discardSuggestion','PendingActions','canDiscard','_setPendingAction','acceptSuggestion','destroy','locale','commentThreadController','get'];(function(_0x28c127,_0x206668){const _0x368b30=function(_0x129fc0){while(--_0x129fc0){_0x28c127['push'](_0x28c127['shift']());}};_0x368b30(++_0x206668);}(_0x2066,0x10f));const _0x368b=function(_0x28c127,_0x206668){_0x28c127=_0x28c127-0x0;let _0x368b30=_0x2066[_0x28c127];return _0x368b30;};import{ObservableMixin as _0x54bec8}from'ckeditor5/src/utils';import{getTranslation as _0xbc3a41}from'../utils/common-translations';export default class Lt extends _0x54bec8(){constructor(_0x2a47dd,_0x321a50,_0x39f166,_0x12cc34){super(),this['model']=_0x321a50,this[_0x368b('0x17')]=_0x39f166,this[_0x368b('0x7')]=_0x12cc34,this[_0x368b('0x11')]=_0x2a47dd,this[_0x368b('0x14')]=_0x2a47dd[_0x368b('0x1b')][_0x368b('0x8')](_0x368b('0x4')),this[_0x368b('0xe')]=_0x2a47dd['commands'][_0x368b('0x8')](_0x368b('0x0')),this[_0x368b('0x17')][_0x368b('0x1a')](_0x368b('0xd'))['to'](this[_0x368b('0x14')],this[_0x368b('0xe')],(_0x298b73,_0x351fee)=>_0x298b73||_0x351fee),this['view'][_0x368b('0x1a')](_0x368b('0x12'))['to'](this[_0x368b('0x14')],_0x368b('0xd')),this['view']['bind']('canDiscard')['to'](this[_0x368b('0xe')],_0x368b('0xd')),this[_0x368b('0x16')]=null,_0x39f166[_0x368b('0xb')]&&this['_setPendingAction'](),this[_0x368b('0x18')](_0x39f166,'acceptSuggestion',()=>this[_0x368b('0x4')]()),this['listenTo'](_0x39f166,'discardSuggestion',()=>this[_0x368b('0x0')]()),this[_0x368b('0x18')](_0x39f166,_0x368b('0x19'),()=>{_0x39f166[_0x368b('0xb')]?this[_0x368b('0x3')]():this[_0x368b('0x13')]();});}[_0x368b('0x4')](){this['_acceptCommand'][_0x368b('0xc')](this[_0x368b('0x10')]['id']);}['discardSuggestion'](){this['_discardCommand'][_0x368b('0xc')](this[_0x368b('0x10')]['id']);}[_0x368b('0x5')](){this[_0x368b('0x17')]['unbind'](_0x368b('0xd')),this[_0x368b('0x17')][_0x368b('0x9')]('canAccept'),this[_0x368b('0x17')]['unbind'](_0x368b('0x2')),this['stopListening'](),this[_0x368b('0x7')]['destroy'](),this[_0x368b('0x16')]&&this[_0x368b('0x13')]();}['_setPendingAction'](){const _0x435964=_0xbc3a41(this[_0x368b('0x11')][_0x368b('0x6')],_0x368b('0xa'));this[_0x368b('0x16')]=this[_0x368b('0x11')][_0x368b('0xf')]['get'](_0x368b('0x1'))[_0x368b('0x15')](_0x435964);}['_removePendingAction'](){null!==this[_0x368b('0x16')]&&this[_0x368b('0x11')][_0x368b('0xf')][_0x368b('0x8')]('PendingActions')['remove'](this[_0x368b('0x16')]),this['_pendingAction']=null;}}
@@ -0,0 +1,166 @@
1
+ /**
2
+ * @module track-changes/ui/view/basesuggestionthreadview
3
+ * @publicApi
4
+ */
5
+ import { View } from 'ckeditor5/src/ui';
6
+ import type { Locale } from 'ckeditor5/src/utils';
7
+ import type { EditorConfig } from 'ckeditor5/src/core';
8
+ import type Suggestion from '../../suggestion';
9
+ import type { CommentsListView, CommentThreadInputView, CommentView } from '@ckeditor/ckeditor5-comments';
10
+ import type { User } from 'ckeditor5-collaboration/src/collaboration-core';
11
+ import type { Description } from '../../suggestiondescriptionfactory';
12
+ /**
13
+ * An abstract suggestion thread view class that should be used as a base for suggestion thread view implementations.
14
+ * It provides some behaviors, flags and building blocks to use when creating a custom suggestion thread view class.
15
+ *
16
+ * All events fired by {@link module:comments/comments/ui/view/basecommentview~BaseCommentView}
17
+ * are delegated to {@link module:track-changes/ui/view/basesuggestionthreadview~BaseSuggestionThreadView}.
18
+ * This means that {@link module:track-changes/ui/view/basesuggestionthreadview~BaseSuggestionThreadView} can also fire these
19
+ * events to communicate with CKEditor 5 collaboration features.
20
+ *
21
+ * For the usage examples check the {@glink features/collaboration/annotations/annotations-custom-view
22
+ * Annotations custom view} guide.
23
+ */
24
+ export default abstract class BaseSuggestionThreadView extends View {
25
+ /**
26
+ * The list of comment views. It should be used as a part of the view template when present.
27
+ */
28
+ commentsListView: CommentsListView | null;
29
+ /**
30
+ * The comment input area view. It should be used as a part of the view template when present.
31
+ */
32
+ commentThreadInputView: CommentThreadInputView | null;
33
+ /**
34
+ * A boolean value that informs if the comment thread view is in the active state ("highlighted").
35
+ * A comment thread view is in this state when it is focused or was activated by the user in any different way.
36
+ *
37
+ * @observable
38
+ */
39
+ isActive: boolean;
40
+ /**
41
+ * Suggestion creation date.
42
+ *
43
+ * @observable
44
+ */
45
+ authoredAt: Date | null;
46
+ /**
47
+ * Flag that indicates whether suggestion acceptation is possible.
48
+ *
49
+ * @observable
50
+ */
51
+ canAccept: boolean;
52
+ /**
53
+ * Flag that indicates whether suggestion discarding is possible.
54
+ *
55
+ * @observable
56
+ */
57
+ canDiscard: boolean;
58
+ /**
59
+ * Stores description entries generated for this suggestion that describe what is the suggested change.
60
+ * They are used to create the final description presented in the suggestion view to the user.
61
+ *
62
+ * Note that one suggestion may include multiple changes.
63
+ *
64
+ * Most cases are simple and include just one description item:
65
+ *
66
+ * ```ts
67
+ * [
68
+ * { type: 'insertion', content: '*Insert:* "Foo"' }
69
+ * ]
70
+ * ```
71
+ *
72
+ * This description item represents a suggestion for inserting the "Foo" text. The `type` property describes the performed action
73
+ * while the `content` property contains additional information about the action and is optional.
74
+ *
75
+ * A more complex example is presented below:
76
+ *
77
+ * ```ts
78
+ * [
79
+ * { type: 'insertion', content: '*Insert:* 2 paragraphs' },
80
+ * { type: 'insertion', content: '*Insert:* image' },
81
+ * { type: 'replace', content: '*Replace:* "Foo" *with* "Bar"' }
82
+ * ]
83
+ * ```
84
+ *
85
+ * In this example, there are three description instances (or lines). Two new (empty) paragraphs were added,
86
+ * an image was added and then "Foo" text was replaced by "Bar". The above structure could be rendered as:
87
+ *
88
+ * ```html
89
+ * <p><strong>Insert:</strong> 2 paragraphs</p>
90
+ * <p><strong>Insert:</strong> image</p>
91
+ * <p><strong>Replace:</strong> "Foo" <strong>with</strong> "Bar"</p>
92
+ * ```
93
+ *
94
+ * @observable
95
+ */
96
+ descriptionParts: Array<Description>;
97
+ /**
98
+ * Informs whether the suggestion thread has any changes that have not been saved.
99
+ *
100
+ * @observable
101
+ */
102
+ isDirty: boolean;
103
+ /**
104
+ * Informs whether the suggestion can be accepted or discarded.
105
+ *
106
+ * @observable
107
+ */
108
+ isEnabled: boolean;
109
+ /**
110
+ * The number of items in the view, where the suggestion itself counts as one.
111
+ *
112
+ * In other words, it is equal to the number of comments in the suggestion thread view plus one.
113
+ *
114
+ * @observable
115
+ */
116
+ readonly length: number;
117
+ constructor(locale: Locale, model: Suggestion, localUser: User, config: SuggestionThreadConfig);
118
+ /**
119
+ * Focuses the view.
120
+ */
121
+ focus(): void;
122
+ /**
123
+ * @inheritDoc
124
+ */
125
+ destroy(): void;
126
+ }
127
+ /**
128
+ * Fired when a user performed an action that should lead to accepting the suggestion.
129
+ *
130
+ * This event is not fired by default by any component created by `BaseSuggestionThreadView`.
131
+ * If you create a view class extending `BaseSuggestionCommentView`, you should provide
132
+ * a UI element that will fire this event.
133
+ *
134
+ * @eventName ~BaseSuggestionThreadView#acceptSuggestion
135
+ */
136
+ export type AcceptSuggestionEvent = {
137
+ name: 'acceptSuggestion';
138
+ args: [];
139
+ };
140
+ /**
141
+ * Fired when a user performed an action that should lead to discarding the suggestion.
142
+ *
143
+ * This event is not fired by default by any component created by `BaseSuggestionThreadView`.
144
+ * If you create a view class extending `BaseSuggestionCommentView`, you should provide
145
+ * a UI element that will fire this event.
146
+ *
147
+ * @eventName ~BaseSuggestionThreadView#discardSuggestion
148
+ */
149
+ export type DiscardSuggestionEvent = {
150
+ name: 'discardSuggestion';
151
+ args: [];
152
+ };
153
+ /**
154
+ * Config used for suggestion thread views.
155
+ */
156
+ export interface SuggestionThreadConfig {
157
+ disableComments: boolean;
158
+ editorConfig: EditorConfig;
159
+ maxCommentsWhenCollapsed: number;
160
+ maxThreadTotalWeight: number;
161
+ maxCommentCharsWhenCollapsed: number;
162
+ formatDateTime: (date: Date | string) => string;
163
+ CommentView: typeof CommentView;
164
+ CommentsListView: typeof CommentsListView;
165
+ CommentThreadInputView: typeof CommentThreadInputView;
166
+ }
@@ -20,4 +20,4 @@
20
20
  *
21
21
  *
22
22
  */
23
- const _0x398d=['locale','cancel','setData','disabledSubmit','authoredAt','set','removeComment','disableComments','bind','showInput','addComment','isReadOnly','_createCommentViews','delegate','isDirty','element','value','submit','destroy','_model','descriptionParts','length','commentsListView','focus','_config','assign','commentThread','isActive','commentThreadInputView','updateComment','commentInputView','_createCommentThreadInputView'];(function(_0x16bda0,_0x398d89){const _0x820f8f=function(_0x3fe168){while(--_0x3fe168){_0x16bda0['push'](_0x16bda0['shift']());}};_0x820f8f(++_0x398d89);}(_0x398d,0xc3));const _0x820f=function(_0x16bda0,_0x398d89){_0x16bda0=_0x16bda0-0x0;let _0x820f8f=_0x398d[_0x16bda0];return _0x820f8f;};import{View as _0x3e8100}from'ckeditor5/src/ui';export default class ii extends _0x3e8100{constructor(_0x53f908,_0x29a2c0,_0x3f1052,_0x40ddf7){super(_0x53f908),this[_0x820f('0x13')]=null,this[_0x820f('0x19')]=null,this[_0x820f('0x2')](_0x820f('0x18'),!0x1),this[_0x820f('0x2')](_0x820f('0x1'),_0x29a2c0[_0x820f('0x1')]),this[_0x820f('0x5')](_0x820f('0x1'))['to'](_0x29a2c0),this['set'](_0x820f('0x11'),[]),this[_0x820f('0x2')]('isDirty',!0x1),this[_0x820f('0x2')]('isEnabled',!0x1),this[_0x820f('0x10')]=_0x29a2c0,this['_localUser']=_0x3f1052,this[_0x820f('0x15')]=_0x40ddf7,_0x40ddf7[_0x820f('0x4')]?this[_0x820f('0x2')](_0x820f('0x12'),0x1):this['_createCommentViews']();}['focus'](){this[_0x820f('0xc')][_0x820f('0x14')]();}[_0x820f('0xf')](){this[_0x820f('0x13')]&&this[_0x820f('0x13')][_0x820f('0xf')](),this[_0x820f('0x19')]&&this[_0x820f('0x19')][_0x820f('0xf')](),super['destroy']();}[_0x820f('0x9')](){const {CommentsListView:_0x1b4775}=this[_0x820f('0x15')];this['commentsListView']=new _0x1b4775(this[_0x820f('0x1d')],this['_model'][_0x820f('0x17')],Object[_0x820f('0x16')]({'CommentView':this['_config']['CommentView']},this[_0x820f('0x15')])),this[_0x820f('0x13')][_0x820f('0xa')](_0x820f('0x3'))['to'](this),this[_0x820f('0x13')][_0x820f('0xa')](_0x820f('0x1a'))['to'](this),this[_0x820f('0x13')][_0x820f('0x5')](_0x820f('0x18'))['to'](this),this[_0x820f('0x2')](_0x820f('0x12'),this[_0x820f('0x13')][_0x820f('0x12')]+0x1),this[_0x820f('0x5')](_0x820f('0x12'))['to'](this[_0x820f('0x13')],_0x820f('0x12'),_0x3e48c1=>_0x3e48c1+0x1),this[_0x820f('0x19')]=this['_createCommentThreadInputView'](),this['on'](_0x820f('0x3'),()=>this[_0x820f('0x14')]()),this['bind'](_0x820f('0xb'))['to'](this['commentsListView'],'hasDirtyComment',this[_0x820f('0x19')]['commentInputView'],_0x820f('0xd'),(_0x4c67a0,_0x3a882a)=>_0x4c67a0||!!_0x3a882a);}[_0x820f('0x1c')](){const {CommentThreadInputView:_0x28025f}=this['_config'],_0xd02f41=new _0x28025f(this[_0x820f('0x1d')],this['_localUser'],this[_0x820f('0x15')]['editorConfig']),_0xcd9e34=_0xd02f41[_0x820f('0x1b')];return _0xd02f41[_0x820f('0x5')](_0x820f('0x6'))['to'](this,_0x820f('0x18'),this[_0x820f('0x10')][_0x820f('0x17')],_0x820f('0x8'),_0xcd9e34,_0x820f('0xd'),(_0x28423f,_0x3f23ba,_0x531380)=>!!_0x531380||_0x28423f&&!_0x3f23ba),_0xcd9e34['on'](_0x820f('0xe'),(_0x316315,_0x5c5b3c)=>{this['fire'](_0x820f('0x7'),_0x5c5b3c),_0xcd9e34['editor'][_0x820f('0x1f')]('');}),_0xcd9e34['on'](_0x820f('0x1e'),()=>this['focus']()),_0xcd9e34[_0x820f('0x5')](_0x820f('0x0'))['to'](this['_model'][_0x820f('0x17')],'isReadOnly'),_0xd02f41;}}
23
+ const _0x425a=['editor','commentInputView','updateComment','isDirty','bind','commentThread','isActive','_createCommentThreadInputView','commentThreadInputView','editorConfig','set','submit','_model','disableComments','disabledSubmit','_createCommentViews','_localUser','commentsListView','length','cancel','canAccept','destroy','value','showInput','delegate','focus','element','_config','fire','isReadOnly','CommentView','removeComment'];(function(_0x65b306,_0x425a11){const _0x322db8=function(_0xb14c15){while(--_0xb14c15){_0x65b306['push'](_0x65b306['shift']());}};_0x322db8(++_0x425a11);}(_0x425a,0x7e));const _0x322d=function(_0x65b306,_0x425a11){_0x65b306=_0x65b306-0x0;let _0x322db8=_0x425a[_0x65b306];return _0x322db8;};import{View as _0x60ff7e}from'ckeditor5/src/ui';export default class ii extends _0x60ff7e{constructor(_0x5423a2,_0x438ac2,_0x227486,_0x171c66){super(_0x5423a2),this[_0x322d('0x13')]=null,this['commentThreadInputView']=null,this[_0x322d('0xc')]('isActive',!0x1),this[_0x322d('0xc')]('authoredAt',_0x438ac2['authoredAt']),this[_0x322d('0x6')]('authoredAt')['to'](_0x438ac2),this[_0x322d('0xc')]('descriptionParts',[]),this['set'](_0x322d('0x5'),!0x1),this[_0x322d('0xc')]('isEnabled',!0x1),this[_0x322d('0xc')](_0x322d('0x16'),!0x1),this[_0x322d('0xc')]('canDiscard',!0x1),this[_0x322d('0xe')]=_0x438ac2,this[_0x322d('0x12')]=_0x227486,this[_0x322d('0x1d')]=_0x171c66,_0x171c66[_0x322d('0xf')]?this['set'](_0x322d('0x14'),0x1):this[_0x322d('0x11')]();}['focus'](){this[_0x322d('0x1c')]['focus']();}['destroy'](){this['commentsListView']&&this[_0x322d('0x13')][_0x322d('0x17')](),this['commentThreadInputView']&&this[_0x322d('0xa')][_0x322d('0x17')](),super[_0x322d('0x17')]();}['_createCommentViews'](){const {CommentsListView:_0x5d10e7}=this[_0x322d('0x1d')];this[_0x322d('0x13')]=new _0x5d10e7(this['locale'],this[_0x322d('0xe')][_0x322d('0x7')],Object['assign']({'CommentView':this[_0x322d('0x1d')][_0x322d('0x0')]},this['_config'])),this[_0x322d('0x13')][_0x322d('0x1a')]('removeComment')['to'](this),this[_0x322d('0x13')]['delegate'](_0x322d('0x4'))['to'](this),this[_0x322d('0x13')][_0x322d('0x6')](_0x322d('0x8'))['to'](this),this['set'](_0x322d('0x14'),this[_0x322d('0x13')][_0x322d('0x14')]+0x1),this[_0x322d('0x6')](_0x322d('0x14'))['to'](this[_0x322d('0x13')],_0x322d('0x14'),_0xb1a8f5=>_0xb1a8f5+0x1),this['commentThreadInputView']=this[_0x322d('0x9')](),this['on'](_0x322d('0x1'),()=>this[_0x322d('0x1b')]()),this[_0x322d('0x6')]('isDirty')['to'](this[_0x322d('0x13')],'hasDirtyComment',this['commentThreadInputView'][_0x322d('0x3')],_0x322d('0x18'),(_0x5a2180,_0x112f40)=>_0x5a2180||!!_0x112f40);}[_0x322d('0x9')](){const {CommentThreadInputView:_0x332608}=this[_0x322d('0x1d')],_0x309bfe=new _0x332608(this['locale'],this['_localUser'],this[_0x322d('0x1d')][_0x322d('0xb')]),_0x45ee9d=_0x309bfe[_0x322d('0x3')];return _0x309bfe[_0x322d('0x6')](_0x322d('0x19'))['to'](this,_0x322d('0x8'),this[_0x322d('0xe')][_0x322d('0x7')],_0x322d('0x1f'),_0x45ee9d,_0x322d('0x18'),(_0x14611c,_0x4367ff,_0x47a68b)=>!!_0x47a68b||_0x14611c&&!_0x4367ff),_0x45ee9d['on'](_0x322d('0xd'),(_0x429853,_0x4c44f1)=>{this[_0x322d('0x1e')]('addComment',_0x4c44f1),_0x45ee9d[_0x322d('0x2')]['setData']('');}),_0x45ee9d['on'](_0x322d('0x15'),()=>this[_0x322d('0x1b')]()),_0x45ee9d[_0x322d('0x6')](_0x322d('0x10'))['to'](this[_0x322d('0xe')][_0x322d('0x7')],_0x322d('0x1f')),_0x309bfe;}}
@@ -0,0 +1,184 @@
1
+ /**
2
+ * @module track-changes/ui/view/suggestionthreadview
3
+ * @publicApi
4
+ */
5
+ import { default as BaseSuggestionThreadView, type SuggestionThreadConfig } from './basesuggestionthreadview';
6
+ import { ButtonView, type TemplateDefinition } from 'ckeditor5/src/ui';
7
+ import { UserView, type User } from 'ckeditor5-collaboration/src/collaboration-core';
8
+ import type { Locale } from 'ckeditor5/src/utils';
9
+ import type Suggestion from '../../suggestion';
10
+ /**
11
+ * The default view for a suggestion thread.
12
+ *
13
+ * This view can be replaced by other view by overwriting the
14
+ * {@link module:track-changes/trackchanges~TrackChangesConfig#SuggestionThreadView} configuration.
15
+ *
16
+ * @extends module:track-changes/ui/view/basesuggestionthreadview~BaseSuggestionThreadView
17
+ */
18
+ export default class SuggestionThreadView extends BaseSuggestionThreadView {
19
+ /**
20
+ * The suggestion thread view type.
21
+ *
22
+ * This value is not equal to the suggestion (model) type. It is evaluated based on the type of the first suggestion for
23
+ * the suggestion thread view template purposes.
24
+ *
25
+ * @observable
26
+ */
27
+ type: 'format' | 'replace' | 'deletion' | 'insertion' | '';
28
+ /**
29
+ * A suggestion description explaining what has been changed. To be presented to the user.
30
+ *
31
+ * @observable
32
+ */
33
+ description: string;
34
+ /**
35
+ * A user view for the suggestion author.
36
+ */
37
+ userView: UserView;
38
+ /**
39
+ * A button view for the button that accepts the suggestion.
40
+ */
41
+ acceptButton: ButtonView | null;
42
+ /**
43
+ * A button view for the button that discards the suggestion.
44
+ */
45
+ discardButton: ButtonView | null;
46
+ constructor(locale: Locale, model: Suggestion, localUser: User, config: SuggestionThreadConfig);
47
+ /**
48
+ * Returns a template definition that will be passed to {@link module:ui/view~View#setTemplate}.
49
+ *
50
+ * Overwrite this method if you want to set a custom template for the suggestion thread view.
51
+ *
52
+ * The template looks as follows:
53
+ *
54
+ * ```ts
55
+ * {
56
+ * tag: 'div',
57
+ * attributes: {
58
+ * class: [
59
+ * 'ck-suggestion-wrapper',
60
+ * bind.if( 'isActive', 'ck-suggestion-wrapper--active' ),
61
+ * bind.to( 'type', value => `ck-suggestion-${ value }` ),
62
+ * this._config.disableComments && 'ck-suggestion--disabled-comments'
63
+ * ],
64
+ * 'data-suggestion-id': this._model.id,
65
+ * 'data-thread-id': this._model.commentThread.id,
66
+ * 'data-author-id': this._model.author.id,
67
+ * // Needed for managing focus after adding a new comment.
68
+ * tabindex: -1
69
+ * },
70
+ * children: [
71
+ * {
72
+ * tag: 'div',
73
+ *
74
+ * attributes: {
75
+ * class: [
76
+ * 'ck-suggestion',
77
+ * 'ck-annotation'
78
+ * ]
79
+ * },
80
+ *
81
+ * children: [
82
+ * this.userView,
83
+ * {
84
+ * tag: 'div',
85
+ *
86
+ * attributes: {
87
+ * class: [ 'ck-suggestion__main', 'ck-annotation__main' ]
88
+ * },
89
+ *
90
+ * children: [
91
+ * {
92
+ * tag: 'div',
93
+ *
94
+ * attributes: {
95
+ * class: [ 'ck-suggestion__info', 'ck-annotation__info' ]
96
+ * },
97
+ *
98
+ * children: [
99
+ * {
100
+ * tag: 'span',
101
+ *
102
+ * children: [
103
+ * {
104
+ * text: this.userView.name
105
+ * }
106
+ * ],
107
+ *
108
+ * attributes: {
109
+ * class: [ 'ck-suggestion__info-name', 'ck-annotation__info-name' ]
110
+ * }
111
+ * },
112
+ * {
113
+ * tag: 'time',
114
+ *
115
+ * attributes: {
116
+ * datetime: bind.to( 'authoredAt' ),
117
+ * class: [ 'ck-comment__info-time', 'ck-annotation__info-time' ]
118
+ * },
119
+ *
120
+ * children: [
121
+ * {
122
+ * text: bind.to( 'authoredAt', value => this._config.formatDateTime( value ) )
123
+ * }
124
+ * ]
125
+ * }
126
+ * ]
127
+ * },
128
+ * {
129
+ * tag: 'div',
130
+ *
131
+ * attributes: {
132
+ * class: [
133
+ * 'ck-suggestion__actions',
134
+ * 'ck-annotation__actions'
135
+ * ]
136
+ * },
137
+ *
138
+ * children: [
139
+ * this.acceptButton,
140
+ * this.discardButton
141
+ * ]
142
+ * },
143
+ * {
144
+ * tag: 'div',
145
+ *
146
+ * attributes: {
147
+ * class: [ 'ck-annotation__content-wrapper' ]
148
+ * }
149
+ * },
150
+ * {
151
+ * tag: 'div',
152
+ *
153
+ * attributes: {
154
+ * class: [ 'ck-comment__external' ]
155
+ * },
156
+ *
157
+ * children: [ {
158
+ * text: getTranslation( this.locale, 'EXTERNAL_SUGGESTION' )
159
+ * } ]
160
+ * }
161
+ * ]
162
+ * }
163
+ * ]
164
+ * },
165
+ * this.commentsListView,
166
+ * this.commentThreadInputView
167
+ * ]
168
+ * }
169
+ * ```
170
+ */
171
+ getTemplate(): TemplateDefinition;
172
+ /**
173
+ * @inheritDoc
174
+ */
175
+ render(): void;
176
+ /**
177
+ * Gets the translated note which indicates that the suggestion comes from an external source.
178
+ */
179
+ getExternalSuggestionNote(): string;
180
+ /**
181
+ * Gets the translated notification text which indicates that the author name comes from an external source.
182
+ */
183
+ getUserViewNotificationText(): string | null;
184
+ }
@@ -20,4 +20,4 @@
20
20
  *
21
21
  *
22
22
  */
23
- const _0x116b=['commentThread','ck-suggestion--disabled-comments','type','getExternalSuggestionNote','authoredAt','change:description','innerText','isEnabled','ck-annotation__content-wrapper','Discard\x20suggestion','bind','bindTemplate','ck-suggestion__main','check','element','</span>','</p>','description','ck-suggestion__info','setTemplate','_config','ck-suggestion','EXTERNAL_AVATAR','render','time','EXTERNAL_IMPORT_WORD_SUGGESTION','join','extendTemplate','creator','name','div','importWord','EXTERNAL_IMPORT_WORD_AVATAR','push','ck-annotation__info-name','formatDateTime','<span\x20class=\x22ck-suggestion-color\x22\x20style=\x22background-color:\x20','descriptionParts','acceptButton','ck-annotation__info','<p>','discardButton','_model','value','acceptSuggestion','Accept\x20suggestion','content','EXTERNAL_SUGGESTION','_createButton','innerHTML','title','map','discardSuggestion','disableComments','ck-suggestion--accept','fire','ck-comment__info-time','ck-suggestion__user','isActive','children','_descriptionElement','userView','createElement','isExternal','ck-suggestion-','ck-annotation__user','ck-annotation__main','split','ck-annotation__actions','execute','commentsListView','attributes','locale','span','@external','source','getUserViewNotificationText','ck-suggestion-wrapper--active','ck-annotation','ck-annotation__info-time','ck-comment__external','set','getTemplate'];(function(_0x7b28a5,_0x116bb4){const _0x1ea570=function(_0xe392b4){while(--_0xe392b4){_0x7b28a5['push'](_0x7b28a5['shift']());}};_0x1ea570(++_0x116bb4);}(_0x116b,0x84));const _0x1ea5=function(_0x7b28a5,_0x116bb4){_0x7b28a5=_0x7b28a5-0x0;let _0x1ea570=_0x116b[_0x7b28a5];return _0x1ea570;};import{getTranslation as _0x19e0c6}from'../../utils/common-translations';import _0x53c025 from'./basesuggestionthreadview';import{ButtonView as _0x53a77d}from'ckeditor5/src/ui';import{icons as _0x3e8cb2}from'ckeditor5/src/core';import{trimHtml as _0x574676,UserView as _0x2b4dd3}from'ckeditor5-collaboration/src/collaboration-core';export default class qt extends _0x53c025{constructor(_0x4a6c88,_0x188cc3,_0x544fd5,_0x3e54d2){super(_0x4a6c88,_0x188cc3,_0x544fd5,_0x3e54d2),this['set']('type',''),this['bind']('type')['to'](this,'descriptionParts',_0x50de69=>_0x50de69&&_0x50de69[0x0]?_0x50de69[0x0][_0x1ea5('0x24')]:''),this[_0x1ea5('0x2c')]('description')['to'](this,_0x1ea5('0x47'),this,'isActive',(_0x1ac192,_0x27a7fc)=>{let _0x3795fd='';for(const _0x4bc7b0 of _0x1ac192)_0x3795fd+=_0x1ea5('0x4a')+ns(_0x4bc7b0[_0x1ea5('0x50')],_0x4bc7b0['color'])+_0x1ea5('0x32');return _0x27a7fc?_0x3795fd:_0x574676(_0x3795fd,{'limit':0x8c});}),this[_0x1ea5('0xb')]=null,this[_0x1ea5('0x48')]=this[_0x1ea5('0x52')](_0x19e0c6(_0x4a6c88,_0x1ea5('0x4f')),_0x3e8cb2[_0x1ea5('0x2f')],_0x1ea5('0x5'),_0x1ea5('0x4e'),'sw'),this[_0x1ea5('0x4b')]=this[_0x1ea5('0x52')](_0x19e0c6(_0x4a6c88,_0x1ea5('0x2b')),_0x3e8cb2['cancel'],'ck-suggestion--discard',_0x1ea5('0x3'),'sw'),this[_0x1ea5('0xc')]=new _0x2b4dd3(_0x4a6c88,this[_0x1ea5('0x4c')]['author'],this[_0x1ea5('0x1b')]()),this['userView'][_0x1ea5('0x3d')]({'attributes':{'class':[_0x1ea5('0x8'),_0x1ea5('0x10')]}}),this[_0x1ea5('0x35')](this[_0x1ea5('0x21')]());}[_0x1ea5('0x21')](){const _0x217e7e=this[_0x1ea5('0x2d')],_0x2d133f=[{'tag':_0x1ea5('0x40'),'attributes':{'class':[_0x1ea5('0x34'),_0x1ea5('0x49')]},'children':[{'tag':_0x1ea5('0x18'),'children':[{'text':this['userView'][_0x1ea5('0x3f')]}],'attributes':{'class':['ck-suggestion__info-name',_0x1ea5('0x44')]}},{'tag':_0x1ea5('0x3a'),'attributes':{'datetime':_0x217e7e['to'](_0x1ea5('0x26')),'class':[_0x1ea5('0x7'),_0x1ea5('0x1e')]},'children':[{'text':_0x217e7e['to'](_0x1ea5('0x26'),_0x4b68a7=>this['_config'][_0x1ea5('0x45')](_0x4b68a7))}]}]},{'tag':'div','attributes':{'class':['ck-suggestion__actions',_0x1ea5('0x13')]},'children':[this[_0x1ea5('0x48')],this[_0x1ea5('0x4b')]]},{'tag':_0x1ea5('0x40'),'attributes':{'class':[_0x1ea5('0x2a')]}}];this[_0x1ea5('0x4c')][_0x1ea5('0xe')]&&_0x2d133f[_0x1ea5('0x43')]({'tag':_0x1ea5('0x40'),'attributes':{'class':[_0x1ea5('0x1f')]},'children':[{'text':this[_0x1ea5('0x25')]()}]});const _0x38eaca={'tag':'div','attributes':{'class':['ck-suggestion-wrapper',_0x217e7e['if'](_0x1ea5('0x9'),_0x1ea5('0x1c')),_0x217e7e['to'](_0x1ea5('0x24'),_0x4ccace=>_0x1ea5('0xf')+_0x4ccace),this[_0x1ea5('0x36')][_0x1ea5('0x4')]&&_0x1ea5('0x23')],'data-suggestion-id':this[_0x1ea5('0x4c')]['id'],'data-thread-id':this[_0x1ea5('0x4c')][_0x1ea5('0x22')]['id'],'data-author-id':this[_0x1ea5('0x4c')]['author']['id'],'tabindex':-0x1},'children':[{'tag':_0x1ea5('0x40'),'attributes':{'class':[_0x1ea5('0x37'),_0x1ea5('0x1d')]},'children':[this['userView'],{'tag':_0x1ea5('0x40'),'attributes':{'class':[_0x1ea5('0x2e'),_0x1ea5('0x11')]},'children':_0x2d133f}]}]};return this[_0x1ea5('0x15')]&&this['commentThreadInputView']&&_0x38eaca[_0x1ea5('0xa')]['push'](this[_0x1ea5('0x15')],this['commentThreadInputView']),_0x38eaca;}[_0x1ea5('0x39')](){super[_0x1ea5('0x39')](),this[_0x1ea5('0xb')]=this[_0x1ea5('0x30')]['querySelector']('.ck-annotation__content-wrapper'),this[_0x1ea5('0xb')][_0x1ea5('0x0')]=this[_0x1ea5('0x33')],this['on'](_0x1ea5('0x27'),(_0x5a189f,_0x2f2370,_0x37e8cc)=>{this['_descriptionElement'][_0x1ea5('0x0')]=_0x37e8cc;});}[_0x1ea5('0x52')](_0x2fea44,_0x11edca,_0x41fc68,_0x3f1fe6,_0x1bf060){const _0x1b79e7=new _0x53a77d(this[_0x1ea5('0x17')]);return _0x1b79e7[_0x1ea5('0x20')]({'label':_0x2fea44,'icon':_0x11edca,'tooltip':!0x0,'tooltipPosition':_0x1bf060}),_0x1b79e7[_0x1ea5('0x3d')]({'attributes':{'class':_0x41fc68}}),_0x1b79e7['on'](_0x1ea5('0x14'),()=>{this[_0x1ea5('0x6')](_0x3f1fe6,this[_0x1ea5('0x4c')]['id']);}),_0x1b79e7[_0x1ea5('0x2c')](_0x1ea5('0x29'))['to'](this),_0x1b79e7;}['getExternalSuggestionNote'](){return _0x1ea5('0x41')===this[_0x1ea5('0x4c')][_0x1ea5('0x16')][_0x1ea5('0x19')][_0x1ea5('0x1a')]?_0x19e0c6(this[_0x1ea5('0x17')],_0x1ea5('0x3b')):_0x19e0c6(this[_0x1ea5('0x17')],_0x1ea5('0x51'));}[_0x1ea5('0x1b')](){return this[_0x1ea5('0x4c')][_0x1ea5('0xe')]?_0x1ea5('0x41')===this[_0x1ea5('0x4c')][_0x1ea5('0x16')][_0x1ea5('0x19')]['source']?_0x19e0c6(this[_0x1ea5('0x17')],_0x1ea5('0x42'),this[_0x1ea5('0x4c')][_0x1ea5('0x3e')][_0x1ea5('0x3f')]):_0x19e0c6(this['locale'],_0x1ea5('0x38'),this[_0x1ea5('0x4c')][_0x1ea5('0x3e')]['name']):null;}}function ns(_0x46ecbe,_0x29fe71){let _0x29d696='';return _0x29d696+=_0x46ecbe[_0x1ea5('0x12')]('*')[_0x1ea5('0x2')]((_0x384a9d,_0x291d49)=>_0x291d49%0x2!=0x0?'<span\x20class=\x22ck-suggestion-type\x22>'+os(_0x384a9d)+_0x1ea5('0x31'):os(_0x384a9d))[_0x1ea5('0x3c')](''),_0x29fe71&&(_0x29d696+=_0x1ea5('0x46')+_0x29fe71[_0x1ea5('0x4d')]+'\x22\x20title=\x22'+_0x29fe71[_0x1ea5('0x1')]+'\x22></span>'),_0x29d696;}function os(_0x24be83){const _0x42b898=document[_0x1ea5('0xd')]('span');return _0x42b898[_0x1ea5('0x28')]=_0x24be83,_0x42b898[_0x1ea5('0x0')];}
23
+ const _0x2201=['title','ck-annotation','innerText','ck-suggestion__user','userView','ck-annotation__info-time','ck-annotation__user','EXTERNAL_AVATAR','ck-annotation__content-wrapper','isEnabled','div','commentThread','setTemplate','innerHTML','getTemplate','push','source','</span>','extendTemplate','children','bindTemplate','Discard\x20suggestion','ck-suggestion--disabled-comments','<p>','importWord','.ck-annotation__content-wrapper','ck-comment__info-time','_createButton','\x22></span>','EXTERNAL_IMPORT_WORD_SUGGESTION','isActive','color','author','<span\x20class=\x22ck-suggestion-color\x22\x20style=\x22background-color:\x20','attributes','acceptButton','split','discardSuggestion','check','disableComments','name','type','ck-annotation__main','ck-suggestion','render','getExternalSuggestionNote','isExternal','locale','set','ck-suggestion-','ck-annotation__info','\x22\x20title=\x22','acceptSuggestion','ck-annotation__actions','querySelector','ck-comment__external','ck-annotation__info-name','ck-suggestion-wrapper','@external','element','value','canAccept','ck-suggestion__actions','EXTERNAL_IMPORT_WORD_AVATAR','_config','join','ck-suggestion-wrapper--active','getUserViewNotificationText','</p>','Accept\x20suggestion','ck-suggestion--accept','ck-suggestion__info','span','fire','_descriptionElement','authoredAt','time','_model','bind','cancel','change:description','EXTERNAL_SUGGESTION','descriptionParts','discardButton','ck-suggestion__info-name','commentsListView'];(function(_0x2bb975,_0x22013e){const _0x4340e8=function(_0x562ba1){while(--_0x562ba1){_0x2bb975['push'](_0x2bb975['shift']());}};_0x4340e8(++_0x22013e);}(_0x2201,0x11b));const _0x4340=function(_0x2bb975,_0x22013e){_0x2bb975=_0x2bb975-0x0;let _0x4340e8=_0x2201[_0x2bb975];return _0x4340e8;};import{getTranslation as _0x294d91}from'../../utils/common-translations';import{default as _0x4ed78a}from'./basesuggestionthreadview';import{ButtonView as _0x571b68}from'ckeditor5/src/ui';import{icons as _0x556aac}from'ckeditor5/src/core';import{trimHtml as _0x48313d,UserView as _0x4e74dd}from'ckeditor5-collaboration/src/collaboration-core';export default class Rt extends _0x4ed78a{constructor(_0x2385a5,_0x528abe,_0x59a628,_0x36bc59){super(_0x2385a5,_0x528abe,_0x59a628,_0x36bc59),this[_0x4340('0x17')]('type',''),this[_0x4340('0x35')](_0x4340('0x10'))['to'](this,_0x4340('0x39'),_0x1cd3af=>_0x1cd3af&&_0x1cd3af[0x0]?_0x1cd3af[0x0][_0x4340('0x10')]:''),this['bind']('description')['to'](this,_0x4340('0x39'),this,_0x4340('0x5'),(_0x38b270,_0x45efbc)=>{let _0x4032ec='';for(const _0x1425bc of _0x38b270)_0x4032ec+=_0x4340('0x54')+ns(_0x1425bc['content'],_0x1425bc[_0x4340('0x6')])+_0x4340('0x2b');return _0x45efbc?_0x4032ec:_0x48313d(_0x4032ec,{'limit':0x8c});}),this['_descriptionElement']=null,this['acceptButton']=this[_0x4340('0x2')](_0x294d91(_0x2385a5,_0x4340('0x2c')),_0x556aac[_0x4340('0xd')],_0x4340('0x2d'),_0x4340('0x1b'),'sw'),this['acceptButton'][_0x4340('0x35')](_0x4340('0x46'))['to'](this,_0x4340('0x24')),this[_0x4340('0x3a')]=this[_0x4340('0x2')](_0x294d91(_0x2385a5,_0x4340('0x52')),_0x556aac[_0x4340('0x36')],'ck-suggestion--discard',_0x4340('0xc'),'sw'),this[_0x4340('0x3a')][_0x4340('0x35')](_0x4340('0x46'))['to'](this,'canDiscard'),this[_0x4340('0x41')]=new _0x4e74dd(_0x2385a5,this['_model'][_0x4340('0x7')],this[_0x4340('0x2a')]()),this['userView'][_0x4340('0x4f')]({'attributes':{'class':[_0x4340('0x40'),_0x4340('0x43')]}}),this[_0x4340('0x49')](this[_0x4340('0x4b')]());}[_0x4340('0x4b')](){const _0x3f4a70=this[_0x4340('0x51')],_0xdfc5fd=[{'tag':'div','attributes':{'class':[_0x4340('0x2e'),_0x4340('0x19')]},'children':[{'tag':_0x4340('0x2f'),'children':[{'text':this[_0x4340('0x41')][_0x4340('0xf')]}],'attributes':{'class':[_0x4340('0x3b'),_0x4340('0x1f')]}},{'tag':_0x4340('0x33'),'attributes':{'datetime':_0x3f4a70['to'](_0x4340('0x32')),'class':[_0x4340('0x1'),_0x4340('0x42')]},'children':[{'text':_0x3f4a70['to'](_0x4340('0x32'),_0x1d2721=>this[_0x4340('0x27')]['formatDateTime'](_0x1d2721))}]}]},{'tag':_0x4340('0x47'),'attributes':{'class':[_0x4340('0x25'),_0x4340('0x1c')]},'children':[this[_0x4340('0xa')],this[_0x4340('0x3a')]]},{'tag':_0x4340('0x47'),'attributes':{'class':[_0x4340('0x45')]}}];this[_0x4340('0x34')][_0x4340('0x15')]&&_0xdfc5fd[_0x4340('0x4c')]({'tag':_0x4340('0x47'),'attributes':{'class':[_0x4340('0x1e')]},'children':[{'text':this[_0x4340('0x14')]()}]});const _0xe0ae76={'tag':_0x4340('0x47'),'attributes':{'class':[_0x4340('0x20'),_0x3f4a70['if']('isActive',_0x4340('0x29')),_0x3f4a70['to'](_0x4340('0x10'),_0x58ea23=>_0x4340('0x18')+_0x58ea23),this[_0x4340('0x27')][_0x4340('0xe')]&&_0x4340('0x53')],'data-suggestion-id':this[_0x4340('0x34')]['id'],'data-thread-id':this[_0x4340('0x34')][_0x4340('0x48')]['id'],'data-author-id':this[_0x4340('0x34')][_0x4340('0x7')]['id'],'tabindex':-0x1},'children':[{'tag':_0x4340('0x47'),'attributes':{'class':[_0x4340('0x12'),_0x4340('0x3e')]},'children':[this['userView'],{'tag':_0x4340('0x47'),'attributes':{'class':['ck-suggestion__main',_0x4340('0x11')]},'children':_0xdfc5fd}]}]};return this[_0x4340('0x3c')]&&this['commentThreadInputView']&&_0xe0ae76[_0x4340('0x50')][_0x4340('0x4c')](this['commentsListView'],this['commentThreadInputView']),_0xe0ae76;}[_0x4340('0x13')](){super['render'](),this[_0x4340('0x31')]=this[_0x4340('0x22')][_0x4340('0x1d')](_0x4340('0x0')),this[_0x4340('0x31')][_0x4340('0x4a')]=this['description'],this['on'](_0x4340('0x37'),(_0x18542a,_0x26ed7d,_0x5b0ca7)=>{this[_0x4340('0x31')]['innerHTML']=_0x5b0ca7;});}[_0x4340('0x2')](_0x5eb1b2,_0x1464a2,_0x50ee81,_0x1ec925,_0x265df4){const _0x3fc01e=new _0x571b68(this['locale']);return _0x3fc01e[_0x4340('0x17')]({'label':_0x5eb1b2,'icon':_0x1464a2,'tooltip':!0x0,'tooltipPosition':_0x265df4}),_0x3fc01e['extendTemplate']({'attributes':{'class':_0x50ee81}}),_0x3fc01e['on']('execute',()=>{this[_0x4340('0x30')](_0x1ec925,this[_0x4340('0x34')]['id']);}),_0x3fc01e;}[_0x4340('0x14')](){return _0x4340('0x55')===this[_0x4340('0x34')][_0x4340('0x9')][_0x4340('0x21')][_0x4340('0x4d')]?_0x294d91(this[_0x4340('0x16')],_0x4340('0x4')):_0x294d91(this[_0x4340('0x16')],_0x4340('0x38'));}[_0x4340('0x2a')](){return this[_0x4340('0x34')][_0x4340('0x15')]?_0x4340('0x55')===this['_model'][_0x4340('0x9')][_0x4340('0x21')][_0x4340('0x4d')]?_0x294d91(this[_0x4340('0x16')],_0x4340('0x26'),this[_0x4340('0x34')]['creator'][_0x4340('0xf')]):_0x294d91(this[_0x4340('0x16')],_0x4340('0x44'),this[_0x4340('0x34')]['creator'][_0x4340('0xf')]):null;}}function ns(_0x7fafa4,_0x1be98a){let _0x42a840='';return _0x42a840+=_0x7fafa4[_0x4340('0xb')]('*')['map']((_0x39b8f2,_0x210306)=>_0x210306%0x2!=0x0?'<span\x20class=\x22ck-suggestion-type\x22>'+os(_0x39b8f2)+_0x4340('0x4e'):os(_0x39b8f2))[_0x4340('0x28')](''),_0x1be98a&&(_0x42a840+=_0x4340('0x8')+_0x1be98a[_0x4340('0x23')]+_0x4340('0x1a')+_0x1be98a[_0x4340('0x3d')]+_0x4340('0x3')),_0x42a840;}function os(_0x2c3af4){const _0x2bfabc=document['createElement']('span');return _0x2bfabc[_0x4340('0x3f')]=_0x2c3af4,_0x2bfabc[_0x4340('0x4a')];}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * @module track-changes/utils/common-translations
3
+ */
4
+ import { type Locale } from 'ckeditor5/src/utils';
5
+ export declare function getTranslation(locale: Locale, id: string, values?: number | string | ReadonlyArray<number | string>): string;
@@ -20,4 +20,4 @@
20
20
  *
21
21
  *
22
22
  */
23
- export function getTranslation(_0x28c354,_0x348d3f,_0x3f8473){const t=_0x28c354['t'];switch(_0x348d3f){case'Track\x20changes':return t('Track\x20changes');case'Accept\x20suggestion':return t('Accept\x20suggestion');case'Discard\x20suggestion':return t('Discard\x20suggestion');case'Accept\x20all\x20suggestions':return t('Accept\x20all\x20suggestions');case'Accept\x20all\x20selected\x20suggestions':return t('Accept\x20all\x20selected\x20suggestions');case'Discard\x20all\x20suggestions':return t('Discard\x20all\x20suggestions');case'Discard\x20all\x20selected\x20suggestions':return t('Discard\x20all\x20selected\x20suggestions');case'*Reset\x20font\x20size*':return t('*Reset\x20font\x20size*');case'*Reset\x20font\x20family*':return t('*Reset\x20font\x20family*');case'*Reset\x20font\x20color*':return t('*Reset\x20font\x20color*');case'*Reset\x20font\x20background\x20color*':return t('*Reset\x20font\x20background\x20color*');case'*Remove\x20image\x20text\x20alternative*':return t('*Remove\x20image\x20text\x20alternative*');case'*Reset\x20image\x20width*':return t('*Reset\x20image\x20width*');case'*Remove\x20link*':return t('*Remove\x20link*');case'*Check\x20item*':return t('*Check\x20item*');case'*Uncheck\x20item*':return t('*Uncheck\x20item*');case'*Remove\x20all\x20formatting*':return t('*Remove\x20all\x20formatting*');case'*Replace\x20table\x20cells*':return t('*Replace\x20table\x20cells*');case'*Merge\x20cells*':return t('*Merge\x20cells*');case'*Split\x20cell:*\x20vertically':return t('*Split\x20cell:*\x20vertically');case'*Split\x20cell:*\x20horizontally':return t('*Split\x20cell:*\x20horizontally');case'*Indent:*\x20%0':return t('*Indent:*\x20%0',_0x3f8473);case'*Outdent:*\x20%0':return t('*Outdent:*\x20%0',_0x3f8473);case'*Change\x20to:*\x20%0':return t('*Change\x20to:*\x20%0',_0x3f8473);case'*Insert:*\x20%0':return t('*Insert:*\x20%0',_0x3f8473);case'*Format:*\x20%0':return t('*Format:*\x20%0',_0x3f8473);case'*Format:*\x20change\x20table\x20properties':return t('*Format:*\x20change\x20table\x20properties');case'*Format:*\x20change\x20table\x20cell\x20properties':return t('*Format:*\x20change\x20table\x20cell\x20properties');case'*Format:*\x20insert\x20into\x20%0':return t('*Format:*\x20insert\x20into\x20%0',_0x3f8473);case'*Format:*\x20remove\x20from\x20%0':return t('*Format:*\x20remove\x20from\x20%0',_0x3f8473);case'*Format:*\x20replace\x20image\x20URL':return t('*Format:*\x20replace\x20image\x20URL');case'*Format:*\x20resize\x20table':return t('*Format:*\x20resize\x20table');case'*Format:*\x20set\x20order\x20to\x20reversed':return t('*Format:*\x20set\x20order\x20to\x20reversed');case'*Format:*\x20set\x20order\x20to\x20regular':return t('*Format:*\x20set\x20order\x20to\x20regular');case'*Format:*\x20set\x20start\x20index\x20to\x20%0':return t('*Format:*\x20set\x20start\x20index\x20to\x20%0',_0x3f8473);case'*Change\x20%0\x20content*':return t('*Change\x20%0\x20content*',_0x3f8473);case'*Remove:*\x20%0':return t('*Remove:*\x20%0',_0x3f8473);case'*Merge:*\x20%0':return t('*Merge:*\x20%0',_0x3f8473);case'*Split:*\x20%0':return t('*Split:*\x20%0',_0x3f8473);case'*Remove\x20format:*\x20%0':return t('*Remove\x20format:*\x20%0',_0x3f8473);case'*Set\x20font\x20size:*\x20%0':return t('*Set\x20font\x20size:*\x20%0',_0x3f8473);case'*Set\x20font\x20family:*\x20%0':return t('*Set\x20font\x20family:*\x20%0',_0x3f8473);case'*Set\x20font\x20color:*\x20%0':return t('*Set\x20font\x20color:*\x20%0',_0x3f8473);case'*Set\x20font\x20background\x20color:*\x20%0':return t('*Set\x20font\x20background\x20color:*\x20%0',_0x3f8473);case'*Set\x20image\x20text\x20alternative:*\x20%0':return t('*Set\x20image\x20text\x20alternative:*\x20%0',_0x3f8473);case'*Set\x20image\x20width:*\x20%0':return t('*Set\x20image\x20width:*\x20%0',_0x3f8473);case'*Set\x20link:*\x20%0':return t('*Set\x20link:*\x20%0',_0x3f8473);case'*Set\x20highlight:*\x20%0':return t('*Set\x20highlight:*\x20%0',_0x3f8473);case'*Remove\x20highlight*':return t('*Remove\x20highlight*');case'FORMAT_HIGHLIGHT':return t({'string':'highlight','id':'FORMAT_HIGHLIGHT'});case'FORMAT_RESTRICTED_ENABLED':return t({'string':'*Enable\x20in\x20restricted\x20editing\x20mode*','id':'FORMAT_RESTRICTED_ENABLED'});case'FORMAT_RESTRICTED_DISABLED':return t({'string':'*Disable\x20in\x20restricted\x20editing\x20mode*','id':'FORMAT_RESTRICTED_DISABLED'});case'ELEMENT_TABLE':return t({'string':'table','plural':'%0\x20tables','id':'ELEMENT_TABLE'},_0x3f8473);case'ELEMENT_PARAGRAPH':return t({'string':'paragraph','plural':'%0\x20paragraphs','id':'ELEMENT_PARAGRAPH'},_0x3f8473);case'ELEMENT_PAGE_BREAK':return t({'string':'page\x20break','plural':'%0\x20page\x20breaks','id':'ELEMENT_PAGE_BREAK'},_0x3f8473);case'ELEMENT_MEDIA':return t({'string':'media\x20item','plural':'%0\x20media\x20items','id':'ELEMENT_MEDIA'},_0x3f8473);case'ELEMENT_IMAGE':return t({'string':'image','plural':'%0\x20images','id':'ELEMENT_IMAGE'},_0x3f8473);case'ELEMENT_INLINE_IMAGE':return t({'string':'image','plural':'%0\x20images','id':'ELEMENT_INLINE_IMAGE'},_0x3f8473);case'FORMAT_SIDE_IMAGE':return t({'string':'side\x20image','id':'FORMAT_SIDE_IMAGE'});case'ELEMENT_CAPTION':return t({'string':'caption','id':'ELEMENT_CAPTION'});case'ELEMENT_HORIZONTAL_LINE':return t({'string':'horizontal\x20line','plural':'%0\x20horizontal\x20lines','id':'ELEMENT_HORIZONTAL_LINE'},_0x3f8473);case'ELEMENT_HTML_EMBED':return t({'string':'HTML\x20embed','plural':'%0\x20HTML\x20embeds','id':'ELEMENT_HTML_EMBED'},_0x3f8473);case'ELEMENT_HEADING':return t({'string':'heading\x20(level\x20%1)','plural':'%0\x20headings\x20(level\x20%1)','id':'ELEMENT_HEADING'},_0x3f8473);case'ELEMENT_HEADING_CUSTOM':return t({'string':'heading\x20(%1)','plural':'%0\x20headings\x20(%1)','id':'ELEMENT_HEADING_CUSTOM'},_0x3f8473);case'ELEMENT_LIST_ITEM':return t({'string':'list\x20item','plural':'%0\x20list\x20items','id':'ELEMENT_LIST_ITEM'},_0x3f8473);case'ELEMENT_BULLETED_LIST':return t({'string':'bulleted\x20list','id':'ELEMENT_BULLETED_LIST'});case'ELEMENT_BULLETED_LIST_CIRCLE':return t({'string':'bulleted\x20list\x20(circle)','id':'ELEMENT_BULLETED_LIST_CIRCLE'});case'ELEMENT_BULLETED_LIST_DISC':return t({'string':'bulleted\x20list\x20(disc)','id':'ELEMENT_BULLETED_LIST_DISC'});case'ELEMENT_BULLETED_LIST_SQUARE':return t({'string':'bulleted\x20list\x20(square)','id':'ELEMENT_BULLETED_LIST_SQUARE'});case'ELEMENT_NUMBERED_LIST':return t({'string':'numbered\x20list','id':'ELEMENT_NUMBERED_LIST'});case'ELEMENT_NUMBERED_LIST_DECIMAL':return t({'string':'numbered\x20list\x20(decimal)','id':'ELEMENT_NUMBERED_LIST_DECIMAL'});case'ELEMENT_NUMBERED_LIST_DECIMAL_LEADING_ZERO':return t({'string':'numbered\x20list\x20(decimal\x20with\x20leading\x20zero)','id':'ELEMENT_NUMBERED_LIST_DECIMAL_LEADING_ZERO'});case'ELEMENT_NUMBERED_LIST_LOWER_LATIN':return t({'string':'numbered\x20list\x20(lower-latin)','id':'ELEMENT_NUMBERED_LIST_LOWER_LATIN'});case'ELEMENT_NUMBERED_LIST_LOWER_ROMAN':return t({'string':'numbered\x20list\x20(lower-roman)','id':'ELEMENT_NUMBERED_LIST_LOWER_ROMAN'});case'ELEMENT_NUMBERED_LIST_UPPER_LATIN':return t({'string':'numbered\x20list\x20(upper-latin)','id':'ELEMENT_NUMBERED_LIST_UPPER_LATIN'});case'ELEMENT_NUMBERED_LIST_UPPER_ROMAN':return t({'string':'numbered\x20list\x20(upper-roman)','id':'ELEMENT_NUMBERED_LIST_UPPER_ROMAN'});case'ELEMENT_TODO_LIST':return t({'string':'to-do\x20list','id':'ELEMENT_TODO_LIST'});case'REPLACE_TEXT':return t({'string':'*Replace:*\x20%0\x20*with*\x20%1','id':'REPLACE_TEXT'},_0x3f8473);case'ELEMENT_SPACE':return t({'string':'space','plural':'%0\x20spaces','id':'ELEMENT_SPACE'},_0x3f8473);case'FORMAT_ALIGN_TO_LEFT':return t({'string':'align\x20to\x20left','id':'FORMAT_ALIGN_TO_LEFT'});case'FORMAT_ALIGN_TO_RIGHT':return t({'string':'align\x20to\x20right','id':'FORMAT_ALIGN_TO_RIGHT'});case'FORMAT_ALIGN_TO_CENTER':return t({'string':'align\x20to\x20center','id':'FORMAT_ALIGN_TO_CENTER'});case'FORMAT_JUSTIFY_TEXT':return t({'string':'justify','id':'FORMAT_JUSTIFY_TEXT'});case'FORMAT_BOLD':return t({'string':'bold','id':'FORMAT_BOLD'});case'FORMAT_ITALIC':return t({'string':'italic','id':'FORMAT_ITALIC'});case'FORMAT_UNDERLINE':return t({'string':'underline','id':'FORMAT_UNDERLINE'});case'FORMAT_CODE':return t({'string':'code','id':'FORMAT_CODE'});case'FORMAT_STRIKETHROUGH':return t({'string':'strikethrough','id':'FORMAT_STRIKETHROUGH'});case'FORMAT_SUBSCRIPT':return t({'string':'subscript','id':'FORMAT_SUBSCRIPT'});case'FORMAT_SUPERSCRIPT':return t({'string':'superscript','id':'FORMAT_SUPERSCRIPT'});case'ELEMENT_BLOCK_QUOTE':return t({'string':'block\x20quote','id':'ELEMENT_BLOCK_QUOTE'});case'ELEMENT_CODE_BLOCK':return t({'string':'code\x20block','plural':'%0\x20code\x20blocks','id':'ELEMENT_CODE_BLOCK'},_0x3f8473);case'FORMAT_HEADER_COLUMN':return t({'string':'header\x20column','id':'FORMAT_HEADER_COLUMN'});case'FORMAT_REGULAR_COLUMN':return t({'string':'regular\x20column','id':'FORMAT_REGULAR_COLUMN'});case'FORMAT_HEADER_ROW':return t({'string':'header\x20row','id':'FORMAT_HEADER_ROW'});case'FORMAT_REGULAR_ROW':return t({'string':'regular\x20row','id':'FORMAT_REGULAR_ROW'});case'PENDING_ACTION_SUGGESTION':return t({'string':'Unsaved\x20change\x20in\x20suggestion.','id':'PENDING_ACTION_SUGGESTION'});case'ELEMENT_TABLE_WITH_TEXT':return t({'string':'table\x20*with\x20text*\x20%0','id':'ELEMENT_TABLE_WITH_TEXT'},_0x3f8473);case'ELEMENT_TABLE_ROW':return t({'string':'table\x20row','plural':'%0\x20table\x20rows','id':'ELEMENT_TABLE_ROW'},_0x3f8473);case'ELEMENT_TABLE_ROW_WITH_TEXT':return t({'string':'table\x20row\x20*with\x20text*\x20%1','plural':'%0\x20table\x20rows\x20*with\x20text*\x20%1','id':'ELEMENT_TABLE_ROW_WITH_TEXT'},_0x3f8473);case'ELEMENT_TABLE_COLUMN':return t({'string':'table\x20column','plural':'%0\x20table\x20columns','id':'ELEMENT_TABLE_COLUMN'},_0x3f8473);case'ELEMENT_TABLE_COLUMN_WITH_TEXT':return t({'string':'table\x20column\x20*with\x20text*\x20%1','plural':'%0\x20table\x20columns\x20*with\x20text*\x20%1','id':'ELEMENT_TABLE_COLUMN_WITH_TEXT'},_0x3f8473);case'ELEMENT_LINE_BREAK':return t({'id':'ELEMENT_LINE_BREAK','string':'line\x20break','plural':'%0\x20line\x20breaks'},_0x3f8473);case'ELEMENT_TITLE':return t({'id':'ELEMENT_TITLE','string':'title'});case'EXTERNAL_SUGGESTION':return t({'id':'EXTERNAL_SUGGESTION','string':'This\x20suggestion\x20comes\x20from\x20an\x20external\x20source.'});case'EXTERNAL_IMPORT_WORD_SUGGESTION':return t({'string':'This\x20suggestion\x20comes\x20from\x20an\x20imported\x20Word\x20file.','id':'EXTERNAL_IMPORT_WORD_SUGGESTION'});case'EXTERNAL_AVATAR':return t({'string':'Displayed\x20author\x20name\x20comes\x20from\x20external\x20source\x20(added\x20by\x20%0)','id':'EXTERNAL_AVATAR'},_0x3f8473);case'EXTERNAL_IMPORT_WORD_AVATAR':return t({'string':'Displayed\x20author\x20name\x20comes\x20from\x20a\x20Word\x20document\x20imported\x20by\x20%0','id':'EXTERNAL_IMPORT_WORD_AVATAR'},_0x3f8473);}}
23
+ export function getTranslation(_0x29a4a5,_0x71caf0,_0x1a1910){const t=_0x29a4a5['t'];switch(_0x71caf0){case'Track\x20changes':return t('Track\x20changes');case'Accept\x20suggestion':return t('Accept\x20suggestion');case'Discard\x20suggestion':return t('Discard\x20suggestion');case'Accept\x20all\x20suggestions':return t('Accept\x20all\x20suggestions');case'Accept\x20all\x20selected\x20suggestions':return t('Accept\x20all\x20selected\x20suggestions');case'Discard\x20all\x20suggestions':return t('Discard\x20all\x20suggestions');case'Discard\x20all\x20selected\x20suggestions':return t('Discard\x20all\x20selected\x20suggestions');case'*Reset\x20font\x20size*':return t('*Reset\x20font\x20size*');case'*Reset\x20font\x20family*':return t('*Reset\x20font\x20family*');case'*Reset\x20font\x20color*':return t('*Reset\x20font\x20color*');case'*Reset\x20font\x20background\x20color*':return t('*Reset\x20font\x20background\x20color*');case'*Remove\x20image\x20text\x20alternative*':return t('*Remove\x20image\x20text\x20alternative*');case'*Reset\x20image\x20width*':return t('*Reset\x20image\x20width*');case'*Remove\x20link*':return t('*Remove\x20link*');case'*Check\x20item*':return t('*Check\x20item*');case'*Uncheck\x20item*':return t('*Uncheck\x20item*');case'*Remove\x20all\x20formatting*':return t('*Remove\x20all\x20formatting*');case'*Replace\x20table\x20cells*':return t('*Replace\x20table\x20cells*');case'*Merge\x20cells*':return t('*Merge\x20cells*');case'*Split\x20cell:*\x20vertically':return t('*Split\x20cell:*\x20vertically');case'*Split\x20cell:*\x20horizontally':return t('*Split\x20cell:*\x20horizontally');case'*Indent:*\x20%0':return t('*Indent:*\x20%0',_0x1a1910);case'*Outdent:*\x20%0':return t('*Outdent:*\x20%0',_0x1a1910);case'*Change\x20to:*\x20%0':return t('*Change\x20to:*\x20%0',_0x1a1910);case'*Insert:*\x20%0':return t('*Insert:*\x20%0',_0x1a1910);case'*Format:*\x20%0':return t('*Format:*\x20%0',_0x1a1910);case'*Format:*\x20change\x20table\x20properties':return t('*Format:*\x20change\x20table\x20properties');case'*Format:*\x20change\x20table\x20cell\x20properties':return t('*Format:*\x20change\x20table\x20cell\x20properties');case'*Format:*\x20insert\x20into\x20%0':return t('*Format:*\x20insert\x20into\x20%0',_0x1a1910);case'*Format:*\x20remove\x20from\x20%0':return t('*Format:*\x20remove\x20from\x20%0',_0x1a1910);case'*Format:*\x20replace\x20image\x20URL':return t('*Format:*\x20replace\x20image\x20URL');case'*Format:*\x20resize\x20table':return t('*Format:*\x20resize\x20table');case'*Format:*\x20set\x20order\x20to\x20reversed':return t('*Format:*\x20set\x20order\x20to\x20reversed');case'*Format:*\x20set\x20order\x20to\x20regular':return t('*Format:*\x20set\x20order\x20to\x20regular');case'*Format:*\x20set\x20start\x20index\x20to\x20%0':return t('*Format:*\x20set\x20start\x20index\x20to\x20%0',_0x1a1910);case'*Change\x20%0\x20content*':return t('*Change\x20%0\x20content*',_0x1a1910);case'*Remove:*\x20%0':return t('*Remove:*\x20%0',_0x1a1910);case'*Merge:*\x20%0':return t('*Merge:*\x20%0',_0x1a1910);case'*Split:*\x20%0':return t('*Split:*\x20%0',_0x1a1910);case'*Remove\x20format:*\x20%0':return t('*Remove\x20format:*\x20%0',_0x1a1910);case'*Set\x20font\x20size:*\x20%0':return t('*Set\x20font\x20size:*\x20%0',_0x1a1910);case'*Set\x20font\x20family:*\x20%0':return t('*Set\x20font\x20family:*\x20%0',_0x1a1910);case'*Set\x20font\x20color:*\x20%0':return t('*Set\x20font\x20color:*\x20%0',_0x1a1910);case'*Set\x20font\x20background\x20color:*\x20%0':return t('*Set\x20font\x20background\x20color:*\x20%0',_0x1a1910);case'*Set\x20image\x20text\x20alternative:*\x20%0':return t('*Set\x20image\x20text\x20alternative:*\x20%0',_0x1a1910);case'*Set\x20image\x20width:*\x20%0':return t('*Set\x20image\x20width:*\x20%0',_0x1a1910);case'*Set\x20link:*\x20%0':return t('*Set\x20link:*\x20%0',_0x1a1910);case'*Set\x20highlight:*\x20%0':return t('*Set\x20highlight:*\x20%0',_0x1a1910);case'*Remove\x20highlight*':return t('*Remove\x20highlight*');case'FORMAT_HIGHLIGHT':return t({'string':'highlight','id':'FORMAT_HIGHLIGHT'});case'FORMAT_RESTRICTED_ENABLED':return t({'string':'*Enable\x20in\x20restricted\x20editing\x20mode*','id':'FORMAT_RESTRICTED_ENABLED'});case'FORMAT_RESTRICTED_DISABLED':return t({'string':'*Disable\x20in\x20restricted\x20editing\x20mode*','id':'FORMAT_RESTRICTED_DISABLED'});case'ELEMENT_TABLE':return t({'string':'table','plural':'%0\x20tables','id':'ELEMENT_TABLE'},_0x1a1910);case'ELEMENT_PARAGRAPH':return t({'string':'paragraph','plural':'%0\x20paragraphs','id':'ELEMENT_PARAGRAPH'},_0x1a1910);case'ELEMENT_PAGE_BREAK':return t({'string':'page\x20break','plural':'%0\x20page\x20breaks','id':'ELEMENT_PAGE_BREAK'},_0x1a1910);case'ELEMENT_MEDIA':return t({'string':'media\x20item','plural':'%0\x20media\x20items','id':'ELEMENT_MEDIA'},_0x1a1910);case'ELEMENT_IMAGE':return t({'string':'image','plural':'%0\x20images','id':'ELEMENT_IMAGE'},_0x1a1910);case'ELEMENT_INLINE_IMAGE':return t({'string':'image','plural':'%0\x20images','id':'ELEMENT_INLINE_IMAGE'},_0x1a1910);case'FORMAT_SIDE_IMAGE':return t({'string':'side\x20image','id':'FORMAT_SIDE_IMAGE'});case'ELEMENT_CAPTION':return t({'string':'caption','id':'ELEMENT_CAPTION'});case'ELEMENT_HORIZONTAL_LINE':return t({'string':'horizontal\x20line','plural':'%0\x20horizontal\x20lines','id':'ELEMENT_HORIZONTAL_LINE'},_0x1a1910);case'ELEMENT_HTML_EMBED':return t({'string':'HTML\x20embed','plural':'%0\x20HTML\x20embeds','id':'ELEMENT_HTML_EMBED'},_0x1a1910);case'ELEMENT_HEADING':return t({'string':'heading\x20(level\x20%1)','plural':'%0\x20headings\x20(level\x20%1)','id':'ELEMENT_HEADING'},_0x1a1910);case'ELEMENT_HEADING_CUSTOM':return t({'string':'heading\x20(%1)','plural':'%0\x20headings\x20(%1)','id':'ELEMENT_HEADING_CUSTOM'},_0x1a1910);case'ELEMENT_LIST_ITEM':return t({'string':'list\x20item','plural':'%0\x20list\x20items','id':'ELEMENT_LIST_ITEM'},_0x1a1910);case'ELEMENT_BULLETED_LIST':return t({'string':'bulleted\x20list','id':'ELEMENT_BULLETED_LIST'});case'ELEMENT_BULLETED_LIST_CIRCLE':return t({'string':'bulleted\x20list\x20(circle)','id':'ELEMENT_BULLETED_LIST_CIRCLE'});case'ELEMENT_BULLETED_LIST_DISC':return t({'string':'bulleted\x20list\x20(disc)','id':'ELEMENT_BULLETED_LIST_DISC'});case'ELEMENT_BULLETED_LIST_SQUARE':return t({'string':'bulleted\x20list\x20(square)','id':'ELEMENT_BULLETED_LIST_SQUARE'});case'ELEMENT_NUMBERED_LIST':return t({'string':'numbered\x20list','id':'ELEMENT_NUMBERED_LIST'});case'ELEMENT_NUMBERED_LIST_DECIMAL':return t({'string':'numbered\x20list\x20(decimal)','id':'ELEMENT_NUMBERED_LIST_DECIMAL'});case'ELEMENT_NUMBERED_LIST_DECIMAL_LEADING_ZERO':return t({'string':'numbered\x20list\x20(decimal\x20with\x20leading\x20zero)','id':'ELEMENT_NUMBERED_LIST_DECIMAL_LEADING_ZERO'});case'ELEMENT_NUMBERED_LIST_LOWER_LATIN':return t({'string':'numbered\x20list\x20(lower-latin)','id':'ELEMENT_NUMBERED_LIST_LOWER_LATIN'});case'ELEMENT_NUMBERED_LIST_LOWER_ROMAN':return t({'string':'numbered\x20list\x20(lower-roman)','id':'ELEMENT_NUMBERED_LIST_LOWER_ROMAN'});case'ELEMENT_NUMBERED_LIST_UPPER_LATIN':return t({'string':'numbered\x20list\x20(upper-latin)','id':'ELEMENT_NUMBERED_LIST_UPPER_LATIN'});case'ELEMENT_NUMBERED_LIST_UPPER_ROMAN':return t({'string':'numbered\x20list\x20(upper-roman)','id':'ELEMENT_NUMBERED_LIST_UPPER_ROMAN'});case'ELEMENT_TODO_LIST':return t({'string':'to-do\x20list','id':'ELEMENT_TODO_LIST'});case'REPLACE_TEXT':return t({'string':'*Replace:*\x20%0\x20*with*\x20%1','id':'REPLACE_TEXT'},_0x1a1910);case'ELEMENT_SPACE':return t({'string':'space','plural':'%0\x20spaces','id':'ELEMENT_SPACE'},_0x1a1910);case'FORMAT_ALIGN_TO_LEFT':return t({'string':'align\x20to\x20left','id':'FORMAT_ALIGN_TO_LEFT'});case'FORMAT_ALIGN_TO_RIGHT':return t({'string':'align\x20to\x20right','id':'FORMAT_ALIGN_TO_RIGHT'});case'FORMAT_ALIGN_TO_CENTER':return t({'string':'align\x20to\x20center','id':'FORMAT_ALIGN_TO_CENTER'});case'FORMAT_JUSTIFY_TEXT':return t({'string':'justify','id':'FORMAT_JUSTIFY_TEXT'});case'FORMAT_BOLD':return t({'string':'bold','id':'FORMAT_BOLD'});case'FORMAT_ITALIC':return t({'string':'italic','id':'FORMAT_ITALIC'});case'FORMAT_UNDERLINE':return t({'string':'underline','id':'FORMAT_UNDERLINE'});case'FORMAT_CODE':return t({'string':'code','id':'FORMAT_CODE'});case'FORMAT_STRIKETHROUGH':return t({'string':'strikethrough','id':'FORMAT_STRIKETHROUGH'});case'FORMAT_SUBSCRIPT':return t({'string':'subscript','id':'FORMAT_SUBSCRIPT'});case'FORMAT_SUPERSCRIPT':return t({'string':'superscript','id':'FORMAT_SUPERSCRIPT'});case'ELEMENT_BLOCK_QUOTE':return t({'string':'block\x20quote','id':'ELEMENT_BLOCK_QUOTE'});case'ELEMENT_CODE_BLOCK':return t({'string':'code\x20block','plural':'%0\x20code\x20blocks','id':'ELEMENT_CODE_BLOCK'},_0x1a1910);case'FORMAT_HEADER_COLUMN':return t({'string':'header\x20column','id':'FORMAT_HEADER_COLUMN'});case'FORMAT_REGULAR_COLUMN':return t({'string':'regular\x20column','id':'FORMAT_REGULAR_COLUMN'});case'FORMAT_HEADER_ROW':return t({'string':'header\x20row','id':'FORMAT_HEADER_ROW'});case'FORMAT_REGULAR_ROW':return t({'string':'regular\x20row','id':'FORMAT_REGULAR_ROW'});case'PENDING_ACTION_SUGGESTION':return t({'string':'Unsaved\x20change\x20in\x20suggestion.','id':'PENDING_ACTION_SUGGESTION'});case'ELEMENT_TABLE_WITH_TEXT':return t({'string':'table\x20*with\x20text*\x20%0','id':'ELEMENT_TABLE_WITH_TEXT'},_0x1a1910);case'ELEMENT_TABLE_ROW':return t({'string':'table\x20row','plural':'%0\x20table\x20rows','id':'ELEMENT_TABLE_ROW'},_0x1a1910);case'ELEMENT_TABLE_ROW_WITH_TEXT':return t({'string':'table\x20row\x20*with\x20text*\x20%1','plural':'%0\x20table\x20rows\x20*with\x20text*\x20%1','id':'ELEMENT_TABLE_ROW_WITH_TEXT'},_0x1a1910);case'ELEMENT_TABLE_COLUMN':return t({'string':'table\x20column','plural':'%0\x20table\x20columns','id':'ELEMENT_TABLE_COLUMN'},_0x1a1910);case'ELEMENT_TABLE_COLUMN_WITH_TEXT':return t({'string':'table\x20column\x20*with\x20text*\x20%1','plural':'%0\x20table\x20columns\x20*with\x20text*\x20%1','id':'ELEMENT_TABLE_COLUMN_WITH_TEXT'},_0x1a1910);case'ELEMENT_LINE_BREAK':return t({'id':'ELEMENT_LINE_BREAK','string':'line\x20break','plural':'%0\x20line\x20breaks'},_0x1a1910);case'ELEMENT_TITLE':return t({'id':'ELEMENT_TITLE','string':'title'});case'EXTERNAL_SUGGESTION':return t({'id':'EXTERNAL_SUGGESTION','string':'This\x20suggestion\x20comes\x20from\x20an\x20external\x20source.'});case'EXTERNAL_IMPORT_WORD_SUGGESTION':return t({'string':'This\x20suggestion\x20comes\x20from\x20an\x20imported\x20Word\x20file.','id':'EXTERNAL_IMPORT_WORD_SUGGESTION'});case'EXTERNAL_AVATAR':return t({'string':'Displayed\x20author\x20name\x20comes\x20from\x20external\x20source\x20(added\x20by\x20%0)','id':'EXTERNAL_AVATAR'},_0x1a1910);case'EXTERNAL_IMPORT_WORD_AVATAR':return t({'string':'Displayed\x20author\x20name\x20comes\x20from\x20a\x20Word\x20document\x20imported\x20by\x20%0','id':'EXTERNAL_IMPORT_WORD_AVATAR'},_0x1a1910);default:return _0x71caf0;}}
@@ -0,0 +1,26 @@
1
+ /**
2
+ * @module track-changes/utils/utils
3
+ */
4
+ import type { Command } from 'ckeditor5/src/core';
5
+ import type { DocumentSelection, Model } from 'ckeditor5/src/engine';
6
+ import type Suggestion from '../suggestion';
7
+ import type { Description } from '../suggestiondescriptionfactory';
8
+ /**
9
+ * Used in tests for easy suggestion comparison.
10
+ */
11
+ export declare function normalizeDescription(description: Array<Description> | Description): string;
12
+ export declare function sortSuggestions(suggestions: Array<Suggestion>): Array<Suggestion>;
13
+ /**
14
+ * From the list of passed `suggestions` returns those that are selected by given `selection`.
15
+ */
16
+ export declare function getSelectedSuggestions(selection: DocumentSelection, suggestions: Array<Suggestion>): Set<Suggestion>;
17
+ /**
18
+ * How many suggestion actions should be put into one batch when multiple suggestions are accepted or discarded.
19
+ */
20
+ export declare const MAX_SUGGESTION_ACTIONS_IN_BATCH = 100;
21
+ /**
22
+ * Executes given `command` for given `suggestions`. If there is a lot of suggestions, the command executions is split into batches.
23
+ * There is at most `MAX_SUGGESTION_ACTIONS_IN_BATCH` exeuctions in one batch. As a result, this limits number of actions to be done
24
+ * in one undo step but may create multiple undo steps.
25
+ */
26
+ export declare function executeCommandForSuggestions(model: Model, command: Command, suggestions: Array<Suggestion>): void;
@@ -20,4 +20,4 @@
20
20
  *
21
21
  *
22
22
  */
23
- const _0x6366=['value','\x20[color\x20','schema','createPositionAfter','change','isMultiRange','execute','start','isObject','join','content','createRange','sort','isTouching','getRanges','end','createPositionBefore','from','isIntersecting','color','push','add','type','map','getRange','isInContent','isCollapsed','deletion','replace'];(function(_0x31956b,_0x6366a9){const _0x2850b4=function(_0x4db450){while(--_0x4db450){_0x31956b['push'](_0x31956b['shift']());}};_0x2850b4(++_0x6366a9);}(_0x6366,0x134));const _0x2850=function(_0x31956b,_0x6366a9){_0x31956b=_0x31956b-0x0;let _0x2850b4=_0x6366[_0x31956b];return _0x2850b4;};export function normalizeDescription(_0x2de6ec){return Array['isArray'](_0x2de6ec)||(_0x2de6ec=[_0x2de6ec]),_0x2de6ec[_0x2850('0x5')](_0x559c0e=>{const _0xf1321b=_0x559c0e[_0x2850('0x15')][_0x2850('0xa')](/\*/g,''),_0x10271a=_0x559c0e[_0x2850('0x1')]?_0x2850('0xc')+_0x559c0e['color'][_0x2850('0xb')]+']':'';return'['+_0x559c0e['type']+']\x20'+_0xf1321b+_0x10271a;})[_0x2850('0x14')](';\x20');}export function sortSuggestions(_0x5566cb){return _0x5566cb[_0x2850('0x17')]((_0x16a6ac,_0x4ce845)=>_0x2850('0x9')==_0x16a6ac[_0x2850('0x4')]&&_0x2850('0x9')!=_0x4ce845['type']?-0x1:_0x2850('0x9')!=_0x16a6ac['type']&&_0x2850('0x9')==_0x4ce845['type']?0x1:0x0);}export function getSelectedSuggestions(_0x4ad0b3,_0x4436e8){const _0x149edd=Array[_0x2850('0x1c')](_0x4ad0b3[_0x2850('0x19')]()),_0x4c8660=new Set();for(const _0x5bb64d of _0x4436e8)if(_0x5bb64d[_0x2850('0x7')])for(const _0xed68e8 of _0x149edd)for(const _0x251cdf of _0x5bb64d['getMarkers']()){const _0x3c12e3=_0x251cdf[_0x2850('0x6')]();(_0xed68e8[_0x2850('0x0')](_0x3c12e3)||_0x4ad0b3[_0x2850('0x8')]&&!_0x5bb64d[_0x2850('0x10')]&&_0x5bb64d['next']&&_0x3c12e3[_0x2850('0x1a')][_0x2850('0x18')](_0xed68e8[_0x2850('0x12')]))&&_0x4c8660[_0x2850('0x3')](_0x5bb64d);}return _0x4c8660;}export function getRangesOfBlockGroups(_0x442f47,_0x450189){let _0x58286d,_0x168470=0x0;const _0x3f4d57=[],_0x298179=_0x450189[_0x2850('0xd')];for(;_0x168470<_0x442f47['length'];){const _0x44224b=_0x442f47[_0x168470],_0x358404=_0x442f47[_0x168470+0x1];_0x58286d||(_0x58286d=_0x450189[_0x2850('0x1b')](_0x44224b)),no(_0x450189,_0x44224b,_0x358404)||(_0x3f4d57[_0x2850('0x2')](_0x450189[_0x2850('0x16')](_0x58286d,_0x298179[_0x2850('0x13')](_0x44224b)?_0x450189[_0x2850('0xe')](_0x44224b):_0x450189['createPositionAt'](_0x44224b,'end'))),_0x58286d=null),_0x168470++;}return _0x3f4d57;}function no(_0x41b692,_0x4dbff0,_0x487a7a){if(!_0x487a7a)return!0x1;const _0x3c28e2=_0x41b692[_0x2850('0xe')](_0x4dbff0),_0x1350fe=_0x41b692['createPositionBefore'](_0x487a7a);return _0x3c28e2['isTouching'](_0x1350fe);}export const MAX_SUGGESTION_ACTIONS_IN_BATCH=0x64;export function executeCommandForSuggestions(_0x4b8528,_0x349ad2,_0x271e2e){for(;_0x271e2e['length'];){const _0x53061c=_0x271e2e['splice'](0x0,0x64);_0x4b8528[_0x2850('0xf')](()=>{for(const _0x4b7e37 of _0x53061c)_0x4b7e37[_0x2850('0x7')]&&_0x349ad2[_0x2850('0x11')](_0x4b7e37['id']);});}}
23
+ const _0x3aca=['sort','isMultiRange','add','createRange','getMarkers','end','createPositionBefore','deletion','isTouching','\x20[color\x20','replace','from','map','isObject','createPositionAt','isIntersecting','change','getRange','isInContent','length','push','type','join','splice','value','color','start','createPositionAfter','schema','execute'];(function(_0x1aba86,_0x3aca20){const _0x18374f=function(_0x471f46){while(--_0x471f46){_0x1aba86['push'](_0x1aba86['shift']());}};_0x18374f(++_0x3aca20);}(_0x3aca,0xd4));const _0x1837=function(_0x1aba86,_0x3aca20){_0x1aba86=_0x1aba86-0x0;let _0x18374f=_0x3aca[_0x1aba86];return _0x18374f;};export function normalizeDescription(_0x280c90){return Array['isArray'](_0x280c90)||(_0x280c90=[_0x280c90]),_0x280c90[_0x1837('0xa')](_0x55f895=>{const _0x1a4a0=_0x55f895['content'][_0x1837('0x8')](/\*/g,''),_0x19f6fc=_0x55f895['color']?_0x1837('0x7')+_0x55f895[_0x1837('0x17')][_0x1837('0x16')]+']':'';return'['+_0x55f895['type']+']\x20'+_0x1a4a0+_0x19f6fc;})[_0x1837('0x14')](';\x20');}export function sortSuggestions(_0x96f06b){return _0x96f06b[_0x1837('0x1c')]((_0x465d8c,_0x5124cf)=>_0x1837('0x5')==_0x465d8c[_0x1837('0x13')]&&_0x1837('0x5')!=_0x5124cf[_0x1837('0x13')]?-0x1:_0x1837('0x5')!=_0x465d8c[_0x1837('0x13')]&&_0x1837('0x5')==_0x5124cf['type']?0x1:0x0);}export function getSelectedSuggestions(_0x2bbb62,_0x175695){const _0xbd41e7=Array[_0x1837('0x9')](_0x2bbb62['getRanges']()),_0x535a28=new Set();for(const _0x42f94d of _0x175695)if(_0x42f94d[_0x1837('0x10')])for(const _0xefea9f of _0xbd41e7)for(const _0x1af98f of _0x42f94d[_0x1837('0x2')]()){const _0x3a3732=_0x1af98f[_0x1837('0xf')]();(_0xefea9f[_0x1837('0xd')](_0x3a3732)||_0x2bbb62['isCollapsed']&&!_0x42f94d[_0x1837('0x1d')]&&_0x42f94d['next']&&_0x3a3732[_0x1837('0x3')][_0x1837('0x6')](_0xefea9f[_0x1837('0x18')]))&&_0x535a28[_0x1837('0x0')](_0x42f94d);}return _0x535a28;}export function getRangesOfBlockGroups(_0x77a04,_0x2df8f3){let _0x42769e,_0x2d1530=0x0;const _0x1890f7=[],_0x4dd36d=_0x2df8f3[_0x1837('0x1a')];for(;_0x2d1530<_0x77a04[_0x1837('0x11')];){const _0x4b32bb=_0x77a04[_0x2d1530],_0x3161b9=_0x77a04[_0x2d1530+0x1];_0x42769e||(_0x42769e=_0x2df8f3[_0x1837('0x4')](_0x4b32bb)),oo(_0x2df8f3,_0x4b32bb,_0x3161b9)||(_0x1890f7[_0x1837('0x12')](_0x2df8f3[_0x1837('0x1')](_0x42769e,_0x4dd36d[_0x1837('0xb')](_0x4b32bb)?_0x2df8f3[_0x1837('0x19')](_0x4b32bb):_0x2df8f3[_0x1837('0xc')](_0x4b32bb,_0x1837('0x3')))),_0x42769e=null),_0x2d1530++;}return _0x1890f7;}function oo(_0x54cda9,_0x27c0bd,_0xd3d7b){if(!_0xd3d7b)return!0x1;const _0x35d3db=_0x54cda9[_0x1837('0x19')](_0x27c0bd),_0x16d599=_0x54cda9[_0x1837('0x4')](_0xd3d7b);return _0x35d3db['isTouching'](_0x16d599);}export const MAX_SUGGESTION_ACTIONS_IN_BATCH=0x64;export function executeCommandForSuggestions(_0x3a26a2,_0x1fa046,_0x283165){for(;_0x283165[_0x1837('0x11')];){const _0x174b2b=_0x283165[_0x1837('0x15')](0x0,0x64);_0x3a26a2[_0x1837('0xe')](()=>{for(const _0x549d94 of _0x174b2b)_0x549d94[_0x1837('0x10')]&&_0x1fa046[_0x1837('0x1b')](_0x549d94['id']);});}}