@ckeditor/ckeditor5-track-changes 41.3.1 → 41.4.0-alpha.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 (238) hide show
  1. package/build/track-changes.js +1 -1
  2. package/dist/index-content.css +4 -0
  3. package/dist/index-editor.css +4 -0
  4. package/dist/index.css +4 -0
  5. package/dist/index.js +23 -0
  6. package/dist/translations/ar.d.ts +8 -0
  7. package/dist/translations/ar.js +23 -0
  8. package/dist/translations/az.d.ts +8 -0
  9. package/dist/translations/az.js +23 -0
  10. package/dist/translations/bg.d.ts +8 -0
  11. package/dist/translations/bg.js +23 -0
  12. package/dist/translations/bn.d.ts +8 -0
  13. package/dist/translations/bn.js +23 -0
  14. package/dist/translations/ca.d.ts +8 -0
  15. package/dist/translations/ca.js +23 -0
  16. package/dist/translations/cs.d.ts +8 -0
  17. package/dist/translations/cs.js +23 -0
  18. package/dist/translations/da.d.ts +8 -0
  19. package/dist/translations/da.js +23 -0
  20. package/dist/translations/de.d.ts +8 -0
  21. package/dist/translations/de.js +23 -0
  22. package/dist/translations/el.d.ts +8 -0
  23. package/dist/translations/el.js +23 -0
  24. package/dist/translations/en-au.d.ts +8 -0
  25. package/dist/translations/en-au.js +23 -0
  26. package/dist/translations/en.d.ts +8 -0
  27. package/dist/translations/en.js +23 -0
  28. package/dist/translations/es.d.ts +8 -0
  29. package/dist/translations/es.js +23 -0
  30. package/dist/translations/et.d.ts +8 -0
  31. package/dist/translations/et.js +23 -0
  32. package/dist/translations/fi.d.ts +8 -0
  33. package/dist/translations/fi.js +23 -0
  34. package/dist/translations/fr.d.ts +8 -0
  35. package/dist/translations/fr.js +23 -0
  36. package/dist/translations/gl.d.ts +8 -0
  37. package/dist/translations/gl.js +23 -0
  38. package/dist/translations/he.d.ts +8 -0
  39. package/dist/translations/he.js +23 -0
  40. package/dist/translations/hi.d.ts +8 -0
  41. package/dist/translations/hi.js +23 -0
  42. package/dist/translations/hr.d.ts +8 -0
  43. package/dist/translations/hr.js +23 -0
  44. package/dist/translations/hu.d.ts +8 -0
  45. package/dist/translations/hu.js +23 -0
  46. package/dist/translations/id.d.ts +8 -0
  47. package/dist/translations/id.js +23 -0
  48. package/dist/translations/it.d.ts +8 -0
  49. package/dist/translations/it.js +23 -0
  50. package/dist/translations/ja.d.ts +8 -0
  51. package/dist/translations/ja.js +23 -0
  52. package/dist/translations/ko.d.ts +8 -0
  53. package/dist/translations/ko.js +23 -0
  54. package/dist/translations/lt.d.ts +8 -0
  55. package/dist/translations/lt.js +23 -0
  56. package/dist/translations/lv.d.ts +8 -0
  57. package/dist/translations/lv.js +23 -0
  58. package/dist/translations/ms.d.ts +8 -0
  59. package/dist/translations/ms.js +23 -0
  60. package/dist/translations/nl.d.ts +8 -0
  61. package/dist/translations/nl.js +23 -0
  62. package/dist/translations/no.d.ts +8 -0
  63. package/dist/translations/no.js +23 -0
  64. package/dist/translations/pl.d.ts +8 -0
  65. package/dist/translations/pl.js +23 -0
  66. package/dist/translations/pt-br.d.ts +8 -0
  67. package/dist/translations/pt-br.js +23 -0
  68. package/dist/translations/pt.d.ts +8 -0
  69. package/dist/translations/pt.js +23 -0
  70. package/dist/translations/ro.d.ts +8 -0
  71. package/dist/translations/ro.js +23 -0
  72. package/dist/translations/ru.d.ts +8 -0
  73. package/dist/translations/ru.js +23 -0
  74. package/dist/translations/sk.d.ts +8 -0
  75. package/dist/translations/sk.js +23 -0
  76. package/dist/translations/sq.d.ts +8 -0
  77. package/dist/translations/sq.js +23 -0
  78. package/dist/translations/sr-latn.d.ts +8 -0
  79. package/dist/translations/sr-latn.js +23 -0
  80. package/dist/translations/sr.d.ts +8 -0
  81. package/dist/translations/sr.js +23 -0
  82. package/dist/translations/sv.d.ts +8 -0
  83. package/dist/translations/sv.js +23 -0
  84. package/dist/translations/th.d.ts +8 -0
  85. package/dist/translations/th.js +23 -0
  86. package/dist/translations/tk.d.ts +8 -0
  87. package/dist/translations/tk.js +23 -0
  88. package/dist/translations/tr.d.ts +8 -0
  89. package/dist/translations/tr.js +23 -0
  90. package/dist/translations/tt.d.ts +8 -0
  91. package/dist/translations/tt.js +23 -0
  92. package/dist/translations/uk.d.ts +8 -0
  93. package/dist/translations/uk.js +23 -0
  94. package/dist/translations/ur.d.ts +8 -0
  95. package/dist/translations/ur.js +23 -0
  96. package/dist/translations/vi.d.ts +8 -0
  97. package/dist/translations/vi.js +23 -0
  98. package/dist/translations/zh-cn.d.ts +8 -0
  99. package/dist/translations/zh-cn.js +23 -0
  100. package/dist/translations/zh.d.ts +8 -0
  101. package/dist/translations/zh.js +23 -0
  102. package/dist/types/augmentation.d.ts +44 -0
  103. package/dist/types/commands/acceptsuggestioncommand.d.ts +28 -0
  104. package/dist/types/commands/discardsuggestioncommand.d.ts +28 -0
  105. package/dist/types/commands/executeonallsuggestionscommand.d.ts +28 -0
  106. package/dist/types/commands/executeonselectedsuggestionscommand.d.ts +28 -0
  107. package/dist/types/commands/trackchangescommand.d.ts +30 -0
  108. package/dist/types/index.d.ts +20 -0
  109. package/dist/types/integrations/aiassistant.d.ts +21 -0
  110. package/dist/types/integrations/alignment.d.ts +21 -0
  111. package/dist/types/integrations/basicstyles.d.ts +21 -0
  112. package/dist/types/integrations/blockquote.d.ts +21 -0
  113. package/dist/types/integrations/casechange.d.ts +21 -0
  114. package/dist/types/integrations/ckbox.d.ts +21 -0
  115. package/dist/types/integrations/codeblock.d.ts +21 -0
  116. package/dist/types/integrations/comments.d.ts +18 -0
  117. package/dist/types/integrations/deletecommand.d.ts +21 -0
  118. package/dist/types/integrations/entercommand.d.ts +20 -0
  119. package/dist/types/integrations/findandreplace.d.ts +25 -0
  120. package/dist/types/integrations/font.d.ts +21 -0
  121. package/dist/types/integrations/formatpainter.d.ts +21 -0
  122. package/dist/types/integrations/heading.d.ts +21 -0
  123. package/dist/types/integrations/highlight.d.ts +21 -0
  124. package/dist/types/integrations/horizontalline.d.ts +21 -0
  125. package/dist/types/integrations/htmlembed.d.ts +21 -0
  126. package/dist/types/integrations/image.d.ts +21 -0
  127. package/dist/types/integrations/imagereplace.d.ts +21 -0
  128. package/dist/types/integrations/imagestyle.d.ts +21 -0
  129. package/dist/types/integrations/importword.d.ts +22 -0
  130. package/dist/types/integrations/indent.d.ts +21 -0
  131. package/dist/types/integrations/inputcommand.d.ts +20 -0
  132. package/dist/types/integrations/legacylist.d.ts +21 -0
  133. package/dist/types/integrations/legacylistproperties.d.ts +33 -0
  134. package/dist/types/integrations/link.d.ts +21 -0
  135. package/dist/types/integrations/list.d.ts +21 -0
  136. package/dist/types/integrations/listproperties.d.ts +24 -0
  137. package/dist/types/integrations/mediaembed.d.ts +21 -0
  138. package/dist/types/integrations/mention.d.ts +21 -0
  139. package/dist/types/integrations/multilevellist.d.ts +28 -0
  140. package/dist/types/integrations/pagebreak.d.ts +21 -0
  141. package/dist/types/integrations/paragraph.d.ts +21 -0
  142. package/dist/types/integrations/removeformat.d.ts +21 -0
  143. package/dist/types/integrations/restrictededitingmode.d.ts +21 -0
  144. package/dist/types/integrations/shiftentercommand.d.ts +20 -0
  145. package/dist/types/integrations/standardeditingmode.d.ts +21 -0
  146. package/dist/types/integrations/style.d.ts +21 -0
  147. package/dist/types/integrations/table.d.ts +46 -0
  148. package/dist/types/integrations/tablecaption.d.ts +26 -0
  149. package/dist/types/integrations/tableclipboard.d.ts +23 -0
  150. package/dist/types/integrations/tablecolumnresize.d.ts +30 -0
  151. package/dist/types/integrations/tableheadings.d.ts +26 -0
  152. package/dist/types/integrations/tablemergesplit.d.ts +26 -0
  153. package/dist/types/integrations/tableofcontents.d.ts +21 -0
  154. package/dist/types/integrations/tableproperties.d.ts +31 -0
  155. package/dist/types/integrations/template.d.ts +21 -0
  156. package/dist/types/integrations/title.d.ts +21 -0
  157. package/dist/types/integrations/undo.d.ts +21 -0
  158. package/dist/types/integrations/utils.d.ts +25 -0
  159. package/dist/types/suggestion.d.ts +295 -0
  160. package/dist/types/suggestiondescriptionfactory.d.ts +187 -0
  161. package/dist/types/trackchanges.d.ts +184 -0
  162. package/dist/types/trackchangesconfig.d.ts +82 -0
  163. package/dist/types/trackchangesdata.d.ts +45 -0
  164. package/dist/types/trackchangesediting.d.ts +530 -0
  165. package/dist/types/trackchangesui.d.ts +42 -0
  166. package/dist/types/ui/suggestioncontroller.d.ts +41 -0
  167. package/dist/types/ui/view/basesuggestionthreadview.d.ts +174 -0
  168. package/dist/types/ui/view/suggestionthreadview.d.ts +186 -0
  169. package/dist/types/utils/common-translations.d.ts +13 -0
  170. package/dist/types/utils/utils.d.ts +34 -0
  171. package/package.json +4 -3
  172. package/src/commands/acceptsuggestioncommand.js +1 -1
  173. package/src/commands/discardsuggestioncommand.js +1 -1
  174. package/src/commands/executeonallsuggestionscommand.js +1 -1
  175. package/src/commands/executeonselectedsuggestionscommand.js +1 -1
  176. package/src/commands/trackchangescommand.js +1 -1
  177. package/src/index.js +1 -1
  178. package/src/integrations/aiassistant.js +1 -1
  179. package/src/integrations/alignment.js +1 -1
  180. package/src/integrations/basicstyles.js +1 -1
  181. package/src/integrations/blockquote.js +1 -1
  182. package/src/integrations/casechange.js +1 -1
  183. package/src/integrations/ckbox.js +1 -1
  184. package/src/integrations/codeblock.js +1 -1
  185. package/src/integrations/comments.js +1 -1
  186. package/src/integrations/deletecommand.js +1 -1
  187. package/src/integrations/entercommand.js +1 -1
  188. package/src/integrations/findandreplace.js +1 -1
  189. package/src/integrations/font.js +1 -1
  190. package/src/integrations/formatpainter.js +1 -1
  191. package/src/integrations/heading.js +1 -1
  192. package/src/integrations/highlight.js +1 -1
  193. package/src/integrations/horizontalline.js +1 -1
  194. package/src/integrations/htmlembed.js +1 -1
  195. package/src/integrations/image.js +1 -1
  196. package/src/integrations/imagereplace.js +1 -1
  197. package/src/integrations/imagestyle.js +1 -1
  198. package/src/integrations/importword.js +1 -1
  199. package/src/integrations/indent.js +1 -1
  200. package/src/integrations/inputcommand.js +1 -1
  201. package/src/integrations/legacylist.js +1 -1
  202. package/src/integrations/legacylistproperties.js +1 -1
  203. package/src/integrations/link.js +1 -1
  204. package/src/integrations/list.js +1 -1
  205. package/src/integrations/listproperties.js +1 -1
  206. package/src/integrations/mediaembed.js +1 -1
  207. package/src/integrations/mention.js +1 -1
  208. package/src/integrations/multilevellist.js +1 -1
  209. package/src/integrations/pagebreak.js +1 -1
  210. package/src/integrations/paragraph.js +1 -1
  211. package/src/integrations/removeformat.js +1 -1
  212. package/src/integrations/restrictededitingmode.js +1 -1
  213. package/src/integrations/shiftentercommand.js +1 -1
  214. package/src/integrations/standardeditingmode.js +1 -1
  215. package/src/integrations/style.js +1 -1
  216. package/src/integrations/table.js +1 -1
  217. package/src/integrations/tablecaption.js +1 -1
  218. package/src/integrations/tableclipboard.js +1 -1
  219. package/src/integrations/tablecolumnresize.js +1 -1
  220. package/src/integrations/tableheadings.js +1 -1
  221. package/src/integrations/tablemergesplit.js +1 -1
  222. package/src/integrations/tableofcontents.js +1 -1
  223. package/src/integrations/tableproperties.js +1 -1
  224. package/src/integrations/template.js +1 -1
  225. package/src/integrations/title.js +1 -1
  226. package/src/integrations/undo.js +1 -1
  227. package/src/integrations/utils.js +1 -1
  228. package/src/suggestion.js +1 -1
  229. package/src/suggestiondescriptionfactory.js +1 -1
  230. package/src/trackchanges.js +1 -1
  231. package/src/trackchangesdata.js +1 -1
  232. package/src/trackchangesediting.js +1 -1
  233. package/src/trackchangesui.js +1 -1
  234. package/src/ui/suggestioncontroller.js +1 -1
  235. package/src/ui/view/basesuggestionthreadview.js +1 -1
  236. package/src/ui/view/suggestionthreadview.js +1 -1
  237. package/src/utils/common-translations.js +1 -1
  238. package/src/utils/utils.js +1 -1
@@ -0,0 +1,42 @@
1
+ /**
2
+ * @license Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.
3
+ * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
4
+ */
5
+ /**
6
+ * @license Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.
7
+ * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
8
+ */
9
+ /**
10
+ * @module track-changes/trackchangesui
11
+ */
12
+ import { Plugin, type Editor } from 'ckeditor5/src/core.js';
13
+ import { Users } from 'ckeditor5-collaboration/src/collaboration-core.js';
14
+ import TrackChangesEditing from './trackchangesediting.js';
15
+ /**
16
+ * Provides UI for track changes plugin.
17
+ *
18
+ * This plugin displays {@link module:track-changes/suggestion~Suggestion suggestions} as a
19
+ * {@link module:comments/annotations/annotations~Annotations}.
20
+ */
21
+ export default class TrackChangesUI extends Plugin {
22
+ /**
23
+ * @inheritDoc
24
+ */
25
+ static get requires(): readonly [typeof TrackChangesEditing, typeof Users, "CommentsRepository", "Annotations", "EditorAnnotations"];
26
+ /**
27
+ * @inheritDoc
28
+ */
29
+ static get pluginName(): "TrackChangesUI";
30
+ /**
31
+ * @inheritDoc
32
+ */
33
+ constructor(editor: Editor);
34
+ /**
35
+ * @inheritDoc
36
+ */
37
+ init(): void;
38
+ /**
39
+ * @inheritDoc
40
+ */
41
+ destroy(): void;
42
+ }
@@ -0,0 +1,41 @@
1
+ /**
2
+ * @license Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.
3
+ * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
4
+ */
5
+ /**
6
+ * @license Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.
7
+ * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
8
+ */
9
+ import type { Editor } from 'ckeditor5/src/core.js';
10
+ import type Suggestion from '../suggestion.js';
11
+ import type BaseSuggestionThreadView from './view/basesuggestionthreadview.js';
12
+ import type { CommentThreadController } from '@ckeditor/ckeditor5-comments';
13
+ declare const SuggestionController_base: {
14
+ new (): import("ckeditor5/src/utils.js").Observable;
15
+ prototype: import("ckeditor5/src/utils.js").Observable;
16
+ };
17
+ /**
18
+ * A controller for a suggestion.
19
+ *
20
+ * It takes a suggestion thread view, listens to events fired by that view and based on them performs actions
21
+ * on the provided suggestion model.
22
+ */
23
+ export default class SuggestionController extends SuggestionController_base {
24
+ model: Suggestion;
25
+ view: BaseSuggestionThreadView;
26
+ commentThreadController: CommentThreadController;
27
+ constructor(editor: Editor, model: Suggestion, view: BaseSuggestionThreadView, commentThreadController: CommentThreadController);
28
+ /**
29
+ * Accepts the suggestion that belongs to this controller.
30
+ */
31
+ acceptSuggestion(): void;
32
+ /**
33
+ * Discards the suggestion that belongs to this controller.
34
+ */
35
+ discardSuggestion(): void;
36
+ /**
37
+ * Destroys `SuggestionController` instance.
38
+ */
39
+ destroy(): void;
40
+ }
41
+ export {};
@@ -0,0 +1,174 @@
1
+ /**
2
+ * @license Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.
3
+ * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
4
+ */
5
+ /**
6
+ * @license Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.
7
+ * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
8
+ */
9
+ /**
10
+ * @module track-changes/ui/view/basesuggestionthreadview
11
+ * @publicApi
12
+ */
13
+ import { View } from 'ckeditor5/src/ui.js';
14
+ import type { Locale } from 'ckeditor5/src/utils.js';
15
+ import type { EditorConfig } from 'ckeditor5/src/core.js';
16
+ import type Suggestion from '../../suggestion.js';
17
+ import type { CommentsListView, CommentThreadInputView, CommentView } from '@ckeditor/ckeditor5-comments';
18
+ import type { User } from 'ckeditor5-collaboration/src/collaboration-core.js';
19
+ import type { Description } from '../../suggestiondescriptionfactory.js';
20
+ /**
21
+ * An abstract suggestion thread view class that should be used as a base for suggestion thread view implementations.
22
+ * It provides some behaviors, flags and building blocks to use when creating a custom suggestion thread view class.
23
+ *
24
+ * All events fired by {@link module:comments/comments/ui/view/basecommentview~BaseCommentView}
25
+ * are delegated to {@link module:track-changes/ui/view/basesuggestionthreadview~BaseSuggestionThreadView}.
26
+ * This means that {@link module:track-changes/ui/view/basesuggestionthreadview~BaseSuggestionThreadView} can also fire these
27
+ * events to communicate with CKEditor 5 collaboration features.
28
+ *
29
+ * For the usage examples check the {@glink features/collaboration/annotations/annotations-custom-view
30
+ * Annotations custom view} guide.
31
+ */
32
+ export default abstract class BaseSuggestionThreadView extends View {
33
+ /**
34
+ * The list of comment views. It should be used as a part of the view template when present.
35
+ */
36
+ commentsListView: CommentsListView | null;
37
+ /**
38
+ * The comment input area view. It should be used as a part of the view template when present.
39
+ */
40
+ commentThreadInputView: CommentThreadInputView | null;
41
+ /**
42
+ * A boolean value that informs if the comment thread view is in the active state ("highlighted").
43
+ * A comment thread view is in this state when it is focused or was activated by the user in any different way.
44
+ *
45
+ * @observable
46
+ */
47
+ isActive: boolean;
48
+ /**
49
+ * Suggestion creation date.
50
+ *
51
+ * @observable
52
+ */
53
+ authoredAt: Date | null;
54
+ /**
55
+ * Flag that indicates whether suggestion acceptation is possible.
56
+ *
57
+ * @observable
58
+ */
59
+ canAccept: boolean;
60
+ /**
61
+ * Flag that indicates whether suggestion discarding is possible.
62
+ *
63
+ * @observable
64
+ */
65
+ canDiscard: boolean;
66
+ /**
67
+ * Stores description entries generated for this suggestion that describe what is the suggested change.
68
+ * They are used to create the final description presented in the suggestion view to the user.
69
+ *
70
+ * Note that one suggestion may include multiple changes.
71
+ *
72
+ * Most cases are simple and include just one description item:
73
+ *
74
+ * ```ts
75
+ * [
76
+ * { type: 'insertion', content: '*Insert:* "Foo"' }
77
+ * ]
78
+ * ```
79
+ *
80
+ * This description item represents a suggestion for inserting the "Foo" text. The `type` property describes the performed action
81
+ * while the `content` property contains additional information about the action and is optional.
82
+ *
83
+ * A more complex example is presented below:
84
+ *
85
+ * ```ts
86
+ * [
87
+ * { type: 'insertion', content: '*Insert:* 2 paragraphs' },
88
+ * { type: 'insertion', content: '*Insert:* image' },
89
+ * { type: 'replace', content: '*Replace:* "Foo" *with* "Bar"' }
90
+ * ]
91
+ * ```
92
+ *
93
+ * In this example, there are three description instances (or lines). Two new (empty) paragraphs were added,
94
+ * an image was added and then "Foo" text was replaced by "Bar". The above structure could be rendered as:
95
+ *
96
+ * ```html
97
+ * <p><strong>Insert:</strong> 2 paragraphs</p>
98
+ * <p><strong>Insert:</strong> image</p>
99
+ * <p><strong>Replace:</strong> "Foo" <strong>with</strong> "Bar"</p>
100
+ * ```
101
+ *
102
+ * @observable
103
+ */
104
+ descriptionParts: Array<Description>;
105
+ /**
106
+ * Informs whether the suggestion thread has any changes that have not been saved.
107
+ *
108
+ * @observable
109
+ */
110
+ isDirty: boolean;
111
+ /**
112
+ * Informs whether the suggestion can be accepted or discarded.
113
+ *
114
+ * @observable
115
+ */
116
+ isEnabled: boolean;
117
+ /**
118
+ * The number of items in the view, where the suggestion itself counts as one.
119
+ *
120
+ * In other words, it is equal to the number of comments in the suggestion thread view plus one.
121
+ *
122
+ * @observable
123
+ */
124
+ readonly length: number;
125
+ constructor(locale: Locale, model: Suggestion, localUser: User, config: SuggestionThreadConfig);
126
+ /**
127
+ * Focuses the view.
128
+ */
129
+ focus(): void;
130
+ /**
131
+ * @inheritDoc
132
+ */
133
+ destroy(): void;
134
+ }
135
+ /**
136
+ * Fired when a user performed an action that should lead to accepting the suggestion.
137
+ *
138
+ * This event is not fired by default by any component created by `BaseSuggestionThreadView`.
139
+ * If you create a view class extending `BaseSuggestionCommentView`, you should provide
140
+ * a UI element that will fire this event.
141
+ *
142
+ * @eventName ~BaseSuggestionThreadView#acceptSuggestion
143
+ */
144
+ export type AcceptSuggestionEvent = {
145
+ name: 'acceptSuggestion';
146
+ args: [];
147
+ };
148
+ /**
149
+ * Fired when a user performed an action that should lead to discarding the suggestion.
150
+ *
151
+ * This event is not fired by default by any component created by `BaseSuggestionThreadView`.
152
+ * If you create a view class extending `BaseSuggestionCommentView`, you should provide
153
+ * a UI element that will fire this event.
154
+ *
155
+ * @eventName ~BaseSuggestionThreadView#discardSuggestion
156
+ */
157
+ export type DiscardSuggestionEvent = {
158
+ name: 'discardSuggestion';
159
+ args: [];
160
+ };
161
+ /**
162
+ * Config used for suggestion thread views.
163
+ */
164
+ export interface SuggestionThreadConfig {
165
+ disableComments: boolean;
166
+ editorConfig: EditorConfig;
167
+ maxCommentsWhenCollapsed: number;
168
+ maxThreadTotalWeight: number;
169
+ maxCommentCharsWhenCollapsed: number;
170
+ formatDateTime: (date: Date | string) => string;
171
+ CommentView: typeof CommentView;
172
+ CommentsListView: typeof CommentsListView;
173
+ CommentThreadInputView: typeof CommentThreadInputView;
174
+ }
@@ -0,0 +1,186 @@
1
+ /**
2
+ * @license Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.
3
+ * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
4
+ */
5
+ /**
6
+ * @license Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.
7
+ * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
8
+ */
9
+ import { default as BaseSuggestionThreadView, type SuggestionThreadConfig } from './basesuggestionthreadview.js';
10
+ import { ButtonView, type TemplateDefinition } from 'ckeditor5/src/ui.js';
11
+ import { UserView, type User } from 'ckeditor5-collaboration/src/collaboration-core.js';
12
+ import type { Locale } from 'ckeditor5/src/utils.js';
13
+ import type Suggestion from '../../suggestion.js';
14
+ /**
15
+ * The default view for a suggestion thread.
16
+ *
17
+ * This view can be replaced by other view by overwriting the
18
+ * {@link module:track-changes/trackchangesconfig~TrackChangesConfig#SuggestionThreadView} configuration.
19
+ */
20
+ export default class SuggestionThreadView extends BaseSuggestionThreadView {
21
+ /**
22
+ * The suggestion thread view type.
23
+ *
24
+ * This value is not equal to the suggestion (model) type. It is evaluated based on the type of the first suggestion for
25
+ * the suggestion thread view template purposes.
26
+ *
27
+ * @observable
28
+ */
29
+ type: 'format' | 'replace' | 'deletion' | 'insertion' | '';
30
+ /**
31
+ * A suggestion description explaining what has been changed. To be presented to the user.
32
+ *
33
+ * @observable
34
+ */
35
+ description: string;
36
+ /**
37
+ * A user view for the suggestion author.
38
+ */
39
+ userView: UserView;
40
+ /**
41
+ * A button view for the button that accepts the suggestion.
42
+ */
43
+ acceptButton: ButtonView | null;
44
+ /**
45
+ * A button view for the button that discards the suggestion.
46
+ */
47
+ discardButton: ButtonView | null;
48
+ constructor(locale: Locale, model: Suggestion, localUser: User, config: SuggestionThreadConfig);
49
+ /**
50
+ * Returns a template definition that will be passed to {@link module:ui/view~View#setTemplate}.
51
+ *
52
+ * Overwrite this method if you want to set a custom template for the suggestion thread view.
53
+ *
54
+ * The template looks as follows:
55
+ *
56
+ * ```ts
57
+ * {
58
+ * tag: 'div',
59
+ * attributes: {
60
+ * class: [
61
+ * 'ck-suggestion-wrapper',
62
+ * bind.if( 'isActive', 'ck-suggestion-wrapper--active' ),
63
+ * bind.to( 'type', value => `ck-suggestion-${ value }` ),
64
+ * this._config.disableComments && 'ck-suggestion--disabled-comments'
65
+ * ],
66
+ * 'data-suggestion-id': this._model.id,
67
+ * 'data-thread-id': this._model.commentThread.id,
68
+ * 'data-author-id': this._model.author.id,
69
+ * // Needed for managing focus after adding a new comment.
70
+ * tabindex: -1
71
+ * },
72
+ * children: [
73
+ * {
74
+ * tag: 'div',
75
+ *
76
+ * attributes: {
77
+ * class: [
78
+ * 'ck-suggestion',
79
+ * 'ck-annotation'
80
+ * ]
81
+ * },
82
+ *
83
+ * children: [
84
+ * this.userView,
85
+ * {
86
+ * tag: 'div',
87
+ *
88
+ * attributes: {
89
+ * class: [ 'ck-suggestion__main', 'ck-annotation__main' ]
90
+ * },
91
+ *
92
+ * children: [
93
+ * {
94
+ * tag: 'div',
95
+ *
96
+ * attributes: {
97
+ * class: [ 'ck-suggestion__info', 'ck-annotation__info' ]
98
+ * },
99
+ *
100
+ * children: [
101
+ * {
102
+ * tag: 'span',
103
+ *
104
+ * children: [
105
+ * {
106
+ * text: this.userView.name
107
+ * }
108
+ * ],
109
+ *
110
+ * attributes: {
111
+ * class: [ 'ck-suggestion__info-name', 'ck-annotation__info-name' ]
112
+ * }
113
+ * },
114
+ * {
115
+ * tag: 'time',
116
+ *
117
+ * attributes: {
118
+ * datetime: bind.to( 'authoredAt' ),
119
+ * class: [ 'ck-comment__info-time', 'ck-annotation__info-time' ]
120
+ * },
121
+ *
122
+ * children: [
123
+ * {
124
+ * text: bind.to( 'authoredAt', value => this._config.formatDateTime( value ) )
125
+ * }
126
+ * ]
127
+ * }
128
+ * ]
129
+ * },
130
+ * {
131
+ * tag: 'div',
132
+ *
133
+ * attributes: {
134
+ * class: [
135
+ * 'ck-suggestion__actions',
136
+ * 'ck-annotation__actions'
137
+ * ]
138
+ * },
139
+ *
140
+ * children: [
141
+ * this.acceptButton,
142
+ * this.discardButton
143
+ * ]
144
+ * },
145
+ * {
146
+ * tag: 'div',
147
+ *
148
+ * attributes: {
149
+ * class: [ 'ck-annotation__content-wrapper' ]
150
+ * }
151
+ * },
152
+ * {
153
+ * tag: 'div',
154
+ *
155
+ * attributes: {
156
+ * class: [ 'ck-comment__external' ]
157
+ * },
158
+ *
159
+ * children: [ {
160
+ * text: getTranslation( this.locale, 'EXTERNAL_SUGGESTION' )
161
+ * } ]
162
+ * }
163
+ * ]
164
+ * }
165
+ * ]
166
+ * },
167
+ * this.commentsListView,
168
+ * this.commentThreadInputView
169
+ * ]
170
+ * }
171
+ * ```
172
+ */
173
+ getTemplate(): TemplateDefinition;
174
+ /**
175
+ * @inheritDoc
176
+ */
177
+ render(): void;
178
+ /**
179
+ * Gets the translated note which indicates that the suggestion comes from an external source.
180
+ */
181
+ getExternalSuggestionNote(): string;
182
+ /**
183
+ * Gets the translated notification text which indicates that the author name comes from an external source.
184
+ */
185
+ getUserViewNotificationText(): string | null;
186
+ }
@@ -0,0 +1,13 @@
1
+ /**
2
+ * @license Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.
3
+ * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
4
+ */
5
+ /**
6
+ * @license Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.
7
+ * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
8
+ */
9
+ /**
10
+ * @module track-changes/utils/common-translations
11
+ */
12
+ import { type Locale } from 'ckeditor5/src/utils.js';
13
+ export declare function getTranslation(locale: Locale, id: string, values?: number | string | ReadonlyArray<number | string>): string;
@@ -0,0 +1,34 @@
1
+ /**
2
+ * @license Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.
3
+ * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
4
+ */
5
+ /**
6
+ * @license Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.
7
+ * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
8
+ */
9
+ /**
10
+ * @module track-changes/utils/utils
11
+ */
12
+ import type { Command } from 'ckeditor5/src/core.js';
13
+ import type { DocumentSelection, Model } from 'ckeditor5/src/engine.js';
14
+ import type Suggestion from '../suggestion.js';
15
+ import type { Description } from '../suggestiondescriptionfactory.js';
16
+ /**
17
+ * Used in tests for easy suggestion comparison.
18
+ */
19
+ export declare function normalizeDescription(description: Array<Description> | Description): string;
20
+ export declare function sortSuggestions(suggestions: Array<Suggestion>): Array<Suggestion>;
21
+ /**
22
+ * From the list of passed `suggestions` returns those that are selected by given `selection`.
23
+ */
24
+ export declare function getSelectedSuggestions(selection: DocumentSelection, suggestions: Array<Suggestion>): Set<Suggestion>;
25
+ /**
26
+ * How many suggestion actions should be put into one batch when multiple suggestions are accepted or discarded.
27
+ */
28
+ export declare const MAX_SUGGESTION_ACTIONS_IN_BATCH = 100;
29
+ /**
30
+ * Executes given `command` for given `suggestions`. If there is a lot of suggestions, the command executions is split into batches.
31
+ * There is at most `MAX_SUGGESTION_ACTIONS_IN_BATCH` exeuctions in one batch. As a result, this limits number of actions to be done
32
+ * in one undo step but may create multiple undo steps.
33
+ */
34
+ export declare function executeCommandForSuggestions(model: Model, command: Command, suggestions: Array<Suggestion>): void;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ckeditor/ckeditor5-track-changes",
3
- "version": "41.3.1",
3
+ "version": "41.4.0-alpha.0",
4
4
  "description": "CKEditor 5 track changes plugin.",
5
5
  "license": "SEE LICENSE IN LICENSE.md",
6
6
  "author": "CKSource (http://cksource.com/)",
@@ -32,6 +32,7 @@
32
32
  "main": "src/index.js",
33
33
  "files": [
34
34
  "build",
35
+ "dist",
35
36
  "lang",
36
37
  "src/**/*.js",
37
38
  "src/**/*.d.ts",
@@ -40,8 +41,8 @@
40
41
  "CHANGELOG.md"
41
42
  ],
42
43
  "dependencies": {
43
- "ckeditor5": "41.3.1",
44
- "ckeditor5-collaboration": "41.3.1",
44
+ "ckeditor5": "41.4.0-alpha.0",
45
+ "ckeditor5-collaboration": "41.4.0-alpha.0",
45
46
  "lodash-es": "4.17.21"
46
47
  },
47
48
  "types": "src/index.d.ts",
@@ -20,4 +20,4 @@
20
20
  *
21
21
  *
22
22
  */
23
- const _0x413d38=_0x1276;(function(_0x251cd0,_0x19c57b){const _0x5b64f4=_0x1276,_0x309c4b=_0x251cd0();while(!![]){try{const _0x4beb27=-parseInt(_0x5b64f4(0x196))/0x1+-parseInt(_0x5b64f4(0x1aa))/0x2+parseInt(_0x5b64f4(0x1a3))/0x3+parseInt(_0x5b64f4(0x1a4))/0x4*(-parseInt(_0x5b64f4(0x1a6))/0x5)+-parseInt(_0x5b64f4(0x198))/0x6*(-parseInt(_0x5b64f4(0x197))/0x7)+-parseInt(_0x5b64f4(0x199))/0x8+parseInt(_0x5b64f4(0x19b))/0x9;if(_0x4beb27===_0x19c57b)break;else _0x309c4b['push'](_0x309c4b['shift']());}catch(_0x3ba80c){_0x309c4b['push'](_0x309c4b['shift']());}}}(_0x30e6,0x9f670));import{Command as _0x2ac651}from'ckeditor5/src/core.js';import{CKEditorError as _0x280f7a}from'ckeditor5/src/utils.js';function _0x30e6(){const _0x325f9f=['isEnabled','_suggestions','editor','1074315PbQpGM','1918004aQtnoK','refresh','10FCLUMW','execute','model','TrackChangesEditing','2459928jLoFIY','plugins','acceptSuggestion','1171137cgDxwF','926569lVoIzY','6fABjle','4569384bqmqYq','canEditAt','36843444iZDNyd','get','track-changes-accept-suggestion-not-found','_isEnabledBasedOnSelection','getRanges'];_0x30e6=function(){return _0x325f9f;};return _0x30e6();}function _0x1276(_0x16a35a,_0x359b3f){const _0x30e649=_0x30e6();return _0x1276=function(_0x1276aa,_0x3e429d){_0x1276aa=_0x1276aa-0x196;let _0x448255=_0x30e649[_0x1276aa];return _0x448255;},_0x1276(_0x16a35a,_0x359b3f);}export default class $ extends _0x2ac651{constructor(_0x2e61db,_0x2ee1a3){const _0x2c5955=_0x1276;super(_0x2e61db),this[_0x2c5955(0x1a1)]=_0x2ee1a3,this[_0x2c5955(0x1a5)](),this[_0x2c5955(0x19e)]=!0x1;}[_0x413d38(0x1a5)](){const _0x11f057=_0x413d38;this[_0x11f057(0x1a0)]=!0x0;}[_0x413d38(0x1a7)](_0xf50c7e){const _0x37c1cd=_0x413d38,_0x4cf29b=this[_0x37c1cd(0x1a1)][_0x37c1cd(0x19c)](_0xf50c7e);if(!_0x4cf29b)throw new _0x280f7a(_0x37c1cd(0x19d),this);const _0xdec13b=_0x4cf29b[_0x37c1cd(0x19f)]();this[_0x37c1cd(0x1a2)][_0x37c1cd(0x1a8)][_0x37c1cd(0x19a)](_0xdec13b)&&this[_0x37c1cd(0x1a2)][_0x37c1cd(0x1ab)][_0x37c1cd(0x19c)](_0x37c1cd(0x1a9))[_0x37c1cd(0x1ac)](_0x4cf29b);}}
23
+ function _0x3097(){const _0x1bce68=['303JNIZPn','editor','9121SABpUZ','_suggestions','19778958dKxlfA','_isEnabledBasedOnSelection','756072MBMGHi','TrackChangesEditing','canEditAt','execute','track-changes-accept-suggestion-not-found','760rxIRtD','4158588PfHBnn','acceptSuggestion','model','isEnabled','9754lYtUbI','getRanges','get','1235000QDJuiz','plugins','6104046UVHyWW','refresh'];_0x3097=function(){return _0x1bce68;};return _0x3097();}function _0x4ecb(_0x2a797c,_0x3706b3){const _0x3097a9=_0x3097();return _0x4ecb=function(_0x4ecb47,_0x2258a1){_0x4ecb47=_0x4ecb47-0x6a;let _0x2e39d1=_0x3097a9[_0x4ecb47];return _0x2e39d1;},_0x4ecb(_0x2a797c,_0x3706b3);}const _0x4221ef=_0x4ecb;(function(_0x410036,_0x5ea869){const _0x44ba5d=_0x4ecb,_0x106883=_0x410036();while(!![]){try{const _0x2c9d0c=-parseInt(_0x44ba5d(0x7f))/0x1+-parseInt(_0x44ba5d(0x72))/0x2*(parseInt(_0x44ba5d(0x79))/0x3)+parseInt(_0x44ba5d(0x6e))/0x4+-parseInt(_0x44ba5d(0x75))/0x5+-parseInt(_0x44ba5d(0x77))/0x6+-parseInt(_0x44ba5d(0x7b))/0x7*(parseInt(_0x44ba5d(0x6d))/0x8)+parseInt(_0x44ba5d(0x7d))/0x9;if(_0x2c9d0c===_0x5ea869)break;else _0x106883['push'](_0x106883['shift']());}catch(_0x4d0315){_0x106883['push'](_0x106883['shift']());}}}(_0x3097,0x929d6));import{Command as _0xfb09b}from'ckeditor5/src/core.js';import{CKEditorError as _0x496ac4}from'ckeditor5/src/utils.js';export default class $ extends _0xfb09b{constructor(_0x476bfa,_0x5c26db){const _0x3d00dd=_0x4ecb;super(_0x476bfa),this[_0x3d00dd(0x7c)]=_0x5c26db,this[_0x3d00dd(0x78)](),this[_0x3d00dd(0x7e)]=!0x1;}[_0x4221ef(0x78)](){const _0x1615bc=_0x4221ef;this[_0x1615bc(0x71)]=!0x0;}[_0x4221ef(0x6b)](_0x9ae112){const _0x1d418b=_0x4221ef,_0x4db559=this[_0x1d418b(0x7c)][_0x1d418b(0x74)](_0x9ae112);if(!_0x4db559)throw new _0x496ac4(_0x1d418b(0x6c),this);const _0x1dc420=_0x4db559[_0x1d418b(0x73)]();this[_0x1d418b(0x7a)][_0x1d418b(0x70)][_0x1d418b(0x6a)](_0x1dc420)&&this[_0x1d418b(0x7a)][_0x1d418b(0x76)][_0x1d418b(0x74)](_0x1d418b(0x80))[_0x1d418b(0x6f)](_0x4db559);}}
@@ -20,4 +20,4 @@
20
20
  *
21
21
  *
22
22
  */
23
- const _0x2f50a3=_0x3e36;(function(_0x57a79e,_0x501770){const _0x24288e=_0x3e36,_0x17e473=_0x57a79e();while(!![]){try{const _0x572357=-parseInt(_0x24288e(0x1b5))/0x1*(parseInt(_0x24288e(0x1ab))/0x2)+-parseInt(_0x24288e(0x1c2))/0x3*(parseInt(_0x24288e(0x1af))/0x4)+-parseInt(_0x24288e(0x1b9))/0x5*(-parseInt(_0x24288e(0x1b7))/0x6)+-parseInt(_0x24288e(0x1b2))/0x7*(parseInt(_0x24288e(0x1ae))/0x8)+parseInt(_0x24288e(0x1be))/0x9+parseInt(_0x24288e(0x1b4))/0xa+parseInt(_0x24288e(0x1bd))/0xb*(parseInt(_0x24288e(0x1a9))/0xc);if(_0x572357===_0x501770)break;else _0x17e473['push'](_0x17e473['shift']());}catch(_0x34477f){_0x17e473['push'](_0x17e473['shift']());}}}(_0x3d67,0x5864e));import{Command as _0x561700}from'ckeditor5/src/core.js';function _0x3e36(_0x528563,_0x33a13f){const _0x3d67c0=_0x3d67();return _0x3e36=function(_0x3e369b,_0xf8319){_0x3e369b=_0x3e369b-0x1a9;let _0x2cfff4=_0x3d67c0[_0x3e369b];return _0x2cfff4;},_0x3e36(_0x528563,_0x33a13f);}import{CKEditorError as _0x4c9ab8}from'ckeditor5/src/utils.js';export default class B extends _0x561700{constructor(_0x35e823,_0x3cd0bb){const _0x451a68=_0x3e36;super(_0x35e823),this[_0x451a68(0x1b8)]=_0x3cd0bb,this[_0x451a68(0x1b0)](),this[_0x451a68(0x1b3)]=!0x1;}[_0x2f50a3(0x1b0)](){const _0x3d813e=_0x2f50a3;this[_0x3d813e(0x1b1)]=!0x0;}[_0x2f50a3(0x1bc)](_0x2d0b5a){const _0x3bdc67=_0x2f50a3,_0x10c8df=this[_0x3bdc67(0x1b8)][_0x3bdc67(0x1bf)](_0x2d0b5a);if(!_0x10c8df)throw new _0x4c9ab8(_0x3bdc67(0x1b6),this);const _0x55a867=_0x10c8df[_0x3bdc67(0x1bb)]();this[_0x3bdc67(0x1c0)][_0x3bdc67(0x1ac)][_0x3bdc67(0x1aa)](_0x55a867)&&this[_0x3bdc67(0x1c0)][_0x3bdc67(0x1c1)][_0x3bdc67(0x1bf)](_0x3bdc67(0x1ba))[_0x3bdc67(0x1ad)](_0x10c8df);}}function _0x3d67(){const _0x5e7d9b=['editor','plugins','87279pGfaez','516jZrJea','canEditAt','52090saNdrI','model','discardSuggestion','328OCbuKZ','88xQICqv','refresh','isEnabled','68215QaAnyl','_isEnabledBasedOnSelection','3895830mSZAxh','14CkOIvg','track-changes-discard-suggestion-not-found','54ycyjxc','_suggestions','9495WDNnmf','TrackChangesEditing','getRanges','execute','226864lLnABc','4254993QwxiNm','get'];_0x3d67=function(){return _0x5e7d9b;};return _0x3d67();}
23
+ const _0x1cdb61=_0x2059;(function(_0x38ef07,_0x18f237){const _0x15ac5e=_0x2059,_0x426e8e=_0x38ef07();while(!![]){try{const _0x509271=-parseInt(_0x15ac5e(0x173))/0x1+parseInt(_0x15ac5e(0x16c))/0x2+-parseInt(_0x15ac5e(0x16d))/0x3*(parseInt(_0x15ac5e(0x16e))/0x4)+-parseInt(_0x15ac5e(0x168))/0x5*(-parseInt(_0x15ac5e(0x165))/0x6)+-parseInt(_0x15ac5e(0x172))/0x7+parseInt(_0x15ac5e(0x170))/0x8+parseInt(_0x15ac5e(0x174))/0x9;if(_0x509271===_0x18f237)break;else _0x426e8e['push'](_0x426e8e['shift']());}catch(_0x590200){_0x426e8e['push'](_0x426e8e['shift']());}}}(_0x1e41,0xb209d));function _0x2059(_0x3ccce8,_0x2255ee){const _0x1e4161=_0x1e41();return _0x2059=function(_0x205953,_0xbec9fe){_0x205953=_0x205953-0x160;let _0x289ded=_0x1e4161[_0x205953];return _0x289ded;},_0x2059(_0x3ccce8,_0x2255ee);}import{Command as _0x5a5f54}from'ckeditor5/src/core.js';import{CKEditorError as _0x33f720}from'ckeditor5/src/utils.js';function _0x1e41(){const _0x4fbee7=['893473Okrtwk','1097705FvZpmF','14826141fsutSz','editor','isEnabled','get','canEditAt','refresh','track-changes-discard-suggestion-not-found','_isEnabledBasedOnSelection','6sFpSoH','model','execute','4674215ctjZoV','TrackChangesEditing','getRanges','discardSuggestion','176856xbZwpJ','2777403Lxjkhq','4QWwJVm','plugins','1678160GYZcKE','_suggestions'];_0x1e41=function(){return _0x4fbee7;};return _0x1e41();}export default class B extends _0x5a5f54{constructor(_0x1debe9,_0x11bee2){const _0xdf3445=_0x2059;super(_0x1debe9),this[_0xdf3445(0x171)]=_0x11bee2,this[_0xdf3445(0x162)](),this[_0xdf3445(0x164)]=!0x1;}[_0x1cdb61(0x162)](){const _0x4ac3ae=_0x1cdb61;this[_0x4ac3ae(0x176)]=!0x0;}[_0x1cdb61(0x167)](_0x554882){const _0x4f9bd4=_0x1cdb61,_0x55d94b=this[_0x4f9bd4(0x171)][_0x4f9bd4(0x160)](_0x554882);if(!_0x55d94b)throw new _0x33f720(_0x4f9bd4(0x163),this);const _0x3bea7b=_0x55d94b[_0x4f9bd4(0x16a)]();this[_0x4f9bd4(0x175)][_0x4f9bd4(0x166)][_0x4f9bd4(0x161)](_0x3bea7b)&&this[_0x4f9bd4(0x175)][_0x4f9bd4(0x16f)][_0x4f9bd4(0x160)](_0x4f9bd4(0x169))[_0x4f9bd4(0x16b)](_0x55d94b);}}
@@ -20,4 +20,4 @@
20
20
  *
21
21
  *
22
22
  */
23
- const _0xa3fbd8=_0x4fec;(function(_0x5313b8,_0x104f23){const _0x2192cf=_0x4fec,_0x14cb9f=_0x5313b8();while(!![]){try{const _0x36105d=parseInt(_0x2192cf(0x1d2))/0x1+parseInt(_0x2192cf(0x1da))/0x2*(-parseInt(_0x2192cf(0x1cf))/0x3)+parseInt(_0x2192cf(0x1cb))/0x4+-parseInt(_0x2192cf(0x1dd))/0x5+-parseInt(_0x2192cf(0x1d1))/0x6+-parseInt(_0x2192cf(0x1d3))/0x7+parseInt(_0x2192cf(0x1d0))/0x8*(parseInt(_0x2192cf(0x1cd))/0x9);if(_0x36105d===_0x104f23)break;else _0x14cb9f['push'](_0x14cb9f['shift']());}catch(_0x144da8){_0x14cb9f['push'](_0x14cb9f['shift']());}}}(_0x2ba4,0x19277));import{Command as _0x7c4ce0}from'ckeditor5/src/core.js';import{sortSuggestions as _0xb59c7c,executeCommandForSuggestions as _0x4e49b4}from'../utils/utils.js';function _0x4fec(_0x371492,_0x52dee2){const _0x2ba4ac=_0x2ba4();return _0x4fec=function(_0x4fec1d,_0x3abd6a){_0x4fec1d=_0x4fec1d-0x1c8;let _0x3b0305=_0x2ba4ac[_0x4fec1d];return _0x3b0305;},_0x4fec(_0x371492,_0x52dee2);}export default class x extends _0x7c4ce0{constructor(_0x5156b9,_0x5514c9,_0x79393b){const _0x552e3b=_0x4fec;super(_0x5156b9),this[_0x552e3b(0x1cc)]=_0x5514c9,this[_0x552e3b(0x1d6)]=_0x79393b,this[_0x552e3b(0x1ce)](),this[_0x552e3b(0x1de)]=!0x1;}[_0xa3fbd8(0x1ce)](){const _0x18b4ba=_0xa3fbd8,_0x3a4f3a=Array[_0x18b4ba(0x1d9)](this[_0x18b4ba(0x1d6)][_0x18b4ba(0x1d8)]())[_0x18b4ba(0x1d4)](_0x1d9a35=>_0x1d9a35[_0x18b4ba(0x1dc)]);this[_0x18b4ba(0x1d7)]=this[_0x18b4ba(0x1cc)][_0x18b4ba(0x1d7)]&&_0x3a4f3a;}[_0xa3fbd8(0x1d5)](){const _0x3aea2c=_0xa3fbd8,_0x914313=_0xb59c7c(Array[_0x3aea2c(0x1d9)](this[_0x3aea2c(0x1d6)][_0x3aea2c(0x1d8)]()));for(const _0x92d7cb of _0x914313){const _0xdc4e52=_0x92d7cb[_0x3aea2c(0x1db)]();if(!this[_0x3aea2c(0x1c9)][_0x3aea2c(0x1ca)][_0x3aea2c(0x1c8)](_0xdc4e52))return;}_0x4e49b4(this[_0x3aea2c(0x1c9)][_0x3aea2c(0x1ca)],this[_0x3aea2c(0x1cc)],_0x914313);}}function _0x2ba4(){const _0x277214=['24ZHFogq','1176270NJlDCi','27199pdlOye','72814LCizPe','some','execute','_suggestions','isEnabled','values','from','15716JIHjVn','getRanges','isInContent','155595SbxlhM','_isEnabledBasedOnSelection','canEditAt','editor','model','384980NdjoOy','_command','1052217irOJOT','refresh','51kboSmU'];_0x2ba4=function(){return _0x277214;};return _0x2ba4();}
23
+ const _0x32d561=_0x39ca;function _0x39ca(_0x24a36d,_0x275bfe){const _0x58e28e=_0x58e2();return _0x39ca=function(_0x39ca72,_0x11a338){_0x39ca72=_0x39ca72-0x13f;let _0x2b4994=_0x58e28e[_0x39ca72];return _0x2b4994;},_0x39ca(_0x24a36d,_0x275bfe);}(function(_0x314699,_0x390e41){const _0x18094a=_0x39ca,_0x54cb20=_0x314699();while(!![]){try{const _0x2cd836=-parseInt(_0x18094a(0x144))/0x1*(-parseInt(_0x18094a(0x141))/0x2)+parseInt(_0x18094a(0x14d))/0x3*(-parseInt(_0x18094a(0x156))/0x4)+parseInt(_0x18094a(0x146))/0x5*(-parseInt(_0x18094a(0x152))/0x6)+-parseInt(_0x18094a(0x145))/0x7*(-parseInt(_0x18094a(0x14e))/0x8)+-parseInt(_0x18094a(0x157))/0x9*(parseInt(_0x18094a(0x14f))/0xa)+-parseInt(_0x18094a(0x158))/0xb+parseInt(_0x18094a(0x153))/0xc;if(_0x2cd836===_0x390e41)break;else _0x54cb20['push'](_0x54cb20['shift']());}catch(_0x3a4126){_0x54cb20['push'](_0x54cb20['shift']());}}}(_0x58e2,0x47494));import{Command as _0x4662e4}from'ckeditor5/src/core.js';import{sortSuggestions as _0x5f32be,executeCommandForSuggestions as _0x579835}from'../utils/utils.js';export default class x extends _0x4662e4{constructor(_0x4b571a,_0x39dac4,_0x5c13fc){const _0x2075fe=_0x39ca;super(_0x4b571a),this[_0x2075fe(0x140)]=_0x39dac4,this[_0x2075fe(0x143)]=_0x5c13fc,this[_0x2075fe(0x14b)](),this[_0x2075fe(0x14c)]=!0x1;}[_0x32d561(0x14b)](){const _0x534edd=_0x32d561,_0x4b00fe=Array[_0x534edd(0x14a)](this[_0x534edd(0x143)][_0x534edd(0x148)]())[_0x534edd(0x150)](_0x28062e=>_0x28062e[_0x534edd(0x149)]);this[_0x534edd(0x142)]=this[_0x534edd(0x140)][_0x534edd(0x142)]&&_0x4b00fe;}[_0x32d561(0x154)](){const _0x23b47f=_0x32d561,_0x4007a6=_0x5f32be(Array[_0x23b47f(0x14a)](this[_0x23b47f(0x143)][_0x23b47f(0x148)]()));for(const _0x2916cf of _0x4007a6){const _0x8a1ee1=_0x2916cf[_0x23b47f(0x155)]();if(!this[_0x23b47f(0x13f)][_0x23b47f(0x147)][_0x23b47f(0x151)](_0x8a1ee1))return;}_0x579835(this[_0x23b47f(0x13f)][_0x23b47f(0x147)],this[_0x23b47f(0x140)],_0x4007a6);}}function _0x58e2(){const _0x3e26b5=['_isEnabledBasedOnSelection','391011vxBQrw','32rNjGAi','3660QgmFCL','some','canEditAt','2100366SSZCXY','10986372ErVRCv','execute','getRanges','4cSJmEf','9585ctyBRZ','6315177rNuCYy','editor','_command','182KgXgFl','isEnabled','_suggestions','4204frpCuT','766829RYzdnr','5AbcOlH','model','values','isInContent','from','refresh'];_0x58e2=function(){return _0x3e26b5;};return _0x58e2();}
@@ -20,4 +20,4 @@
20
20
  *
21
21
  *
22
22
  */
23
- function _0x2666(){const _0x556909=['1454230KrCajY','editor','9351OcbRGK','810YfZGFc','_isEnabledBasedOnSelection','execute','canEditAt','2534bfRXMY','_command','6090348qOZeLW','1426741wcRuNw','_selectedSuggestions','values','_suggestions','size','10359760ymfXAb','document','selection','isEnabled','getRanges','model','refresh','from','24306QMblme','19237185PMJaJD'];_0x2666=function(){return _0x556909;};return _0x2666();}const _0x2c3090=_0x2994;(function(_0x183344,_0x550446){const _0x4a04e5=_0x2994,_0x53cf2b=_0x183344();while(!![]){try{const _0xdaa904=-parseInt(_0x4a04e5(0xbd))/0x1+-parseInt(_0x4a04e5(0xb6))/0x2*(parseInt(_0x4a04e5(0xb5))/0x3)+-parseInt(_0x4a04e5(0xbc))/0x4+parseInt(_0x4a04e5(0xcc))/0x5+-parseInt(_0x4a04e5(0xca))/0x6*(-parseInt(_0x4a04e5(0xba))/0x7)+parseInt(_0x4a04e5(0xc2))/0x8+parseInt(_0x4a04e5(0xcb))/0x9;if(_0xdaa904===_0x550446)break;else _0x53cf2b['push'](_0x53cf2b['shift']());}catch(_0x4cdfdd){_0x53cf2b['push'](_0x53cf2b['shift']());}}}(_0x2666,0xeec6e));import{Command as _0x42b6b9}from'ckeditor5/src/core.js';import{sortSuggestions as _0xcdeede,getSelectedSuggestions as _0x1d3b73,executeCommandForSuggestions as _0xcab27e}from'../utils/utils.js';function _0x2994(_0xfd2c14,_0x2e8c9d){const _0x266601=_0x2666();return _0x2994=function(_0x2994a5,_0x4075c7){_0x2994a5=_0x2994a5-0xb4;let _0xe6e264=_0x266601[_0x2994a5];return _0xe6e264;},_0x2994(_0xfd2c14,_0x2e8c9d);}export default class R extends _0x42b6b9{constructor(_0x1a8582,_0x3aa298,_0x172678){const _0x562237=_0x2994;super(_0x1a8582),this[_0x562237(0xbb)]=_0x3aa298,this[_0x562237(0xc0)]=_0x172678,this[_0x562237(0xbe)]=new Set(),this[_0x562237(0xc8)](),this[_0x562237(0xb7)]=!0x1;}[_0x2c3090(0xc8)](){const _0x4aaa02=_0x2c3090,_0x4e666f=this[_0x4aaa02(0xb4)][_0x4aaa02(0xc7)][_0x4aaa02(0xc3)][_0x4aaa02(0xc4)],_0x233a33=Array[_0x4aaa02(0xc9)](this[_0x4aaa02(0xc0)][_0x4aaa02(0xbf)]());this[_0x4aaa02(0xbe)]=_0x1d3b73(_0x4e666f,_0x233a33),this[_0x4aaa02(0xc5)]=this[_0x4aaa02(0xbb)][_0x4aaa02(0xc5)]&&!!this[_0x4aaa02(0xbe)][_0x4aaa02(0xc1)];}[_0x2c3090(0xb8)](){const _0x95ca40=_0x2c3090,_0x1ad68d=_0xcdeede(Array[_0x95ca40(0xc9)](this[_0x95ca40(0xbe)]));for(const _0x54e5a0 of _0x1ad68d){const _0x286e3a=_0x54e5a0[_0x95ca40(0xc6)]();if(!this[_0x95ca40(0xb4)][_0x95ca40(0xc7)][_0x95ca40(0xb9)](_0x286e3a))return;}_0xcab27e(this[_0x95ca40(0xb4)][_0x95ca40(0xc7)],this[_0x95ca40(0xbb)],_0x1ad68d);}}
23
+ function _0xcacf(_0x1a0aab,_0x1f39ab){const _0x424cda=_0x424c();return _0xcacf=function(_0xcacf1a,_0x29d837){_0xcacf1a=_0xcacf1a-0xa6;let _0x3d0d04=_0x424cda[_0xcacf1a];return _0x3d0d04;},_0xcacf(_0x1a0aab,_0x1f39ab);}const _0x31c4c5=_0xcacf;(function(_0x181746,_0xb9e2e3){const _0x51bdfd=_0xcacf,_0x178727=_0x181746();while(!![]){try{const _0x5da465=parseInt(_0x51bdfd(0xae))/0x1*(parseInt(_0x51bdfd(0xa9))/0x2)+-parseInt(_0x51bdfd(0xa7))/0x3*(-parseInt(_0x51bdfd(0xba))/0x4)+-parseInt(_0x51bdfd(0xb6))/0x5*(parseInt(_0x51bdfd(0xb9))/0x6)+parseInt(_0x51bdfd(0xac))/0x7+-parseInt(_0x51bdfd(0xbd))/0x8+parseInt(_0x51bdfd(0xb1))/0x9+parseInt(_0x51bdfd(0xbc))/0xa;if(_0x5da465===_0xb9e2e3)break;else _0x178727['push'](_0x178727['shift']());}catch(_0x5e725a){_0x178727['push'](_0x178727['shift']());}}}(_0x424c,0x5e6ec));import{Command as _0x15d94e}from'ckeditor5/src/core.js';import{sortSuggestions as _0x42bd,getSelectedSuggestions as _0x23b027,executeCommandForSuggestions as _0x48ae3c}from'../utils/utils.js';function _0x424c(){const _0x255d85=['isEnabled','124357NYJuRs','size','_isEnabledBasedOnSelection','3653244QvFjsW','refresh','values','selection','editor','15XwBELA','_selectedSuggestions','_command','1056696aPVdrZ','64UUUlww','document','314610AkicCF','2539648xdGMzq','getRanges','_suggestions','canEditAt','58668rUlDGS','from','4yGXZnT','execute','model','1635291bFLsuV'];_0x424c=function(){return _0x255d85;};return _0x424c();}export default class R extends _0x15d94e{constructor(_0x2a0b78,_0x26cf29,_0x92922d){const _0x9fd442=_0xcacf;super(_0x2a0b78),this[_0x9fd442(0xb8)]=_0x26cf29,this[_0x9fd442(0xbf)]=_0x92922d,this[_0x9fd442(0xb7)]=new Set(),this[_0x9fd442(0xb2)](),this[_0x9fd442(0xb0)]=!0x1;}[_0x31c4c5(0xb2)](){const _0x379af9=_0x31c4c5,_0x36b7f9=this[_0x379af9(0xb5)][_0x379af9(0xab)][_0x379af9(0xbb)][_0x379af9(0xb4)],_0x114d30=Array[_0x379af9(0xa8)](this[_0x379af9(0xbf)][_0x379af9(0xb3)]());this[_0x379af9(0xb7)]=_0x23b027(_0x36b7f9,_0x114d30),this[_0x379af9(0xad)]=this[_0x379af9(0xb8)][_0x379af9(0xad)]&&!!this[_0x379af9(0xb7)][_0x379af9(0xaf)];}[_0x31c4c5(0xaa)](){const _0x651499=_0x31c4c5,_0x5630e8=_0x42bd(Array[_0x651499(0xa8)](this[_0x651499(0xb7)]));for(const _0x44d027 of _0x5630e8){const _0x5e6e89=_0x44d027[_0x651499(0xbe)]();if(!this[_0x651499(0xb5)][_0x651499(0xab)][_0x651499(0xa6)](_0x5e6e89))return;}_0x48ae3c(this[_0x651499(0xb5)][_0x651499(0xab)],this[_0x651499(0xb8)],_0x5630e8);}}
@@ -20,4 +20,4 @@
20
20
  *
21
21
  *
22
22
  */
23
- const _0x36c621=_0x14ce;function _0x2d6d(){const _0x369de6=['_disableUnsupportedCommands','38896875JBcJFC','7536872jfExsW','refresh','_enabledCommands','isEnabled','editor','3YlyPTy','_enableCommands','2xwYBip','clearForceDisabled','has','4014004prpFmH','3800944PyUpnF','TrackChangesCommand','forceDisabled','456957lqbMgO','affectsData','8393118abOrdh','execute','commands','_isEnabledBasedOnSelection','value','9141080wgkhue'];_0x2d6d=function(){return _0x369de6;};return _0x2d6d();}function _0x14ce(_0x315222,_0x4578ab){const _0x2d6d36=_0x2d6d();return _0x14ce=function(_0x14ce5c,_0x480f1a){_0x14ce5c=_0x14ce5c-0x1ba;let _0x5d5b41=_0x2d6d36[_0x14ce5c];return _0x5d5b41;},_0x14ce(_0x315222,_0x4578ab);}(function(_0x3e3272,_0xae2682){const _0x3f52bd=_0x14ce,_0xfdaeb5=_0x3e3272();while(!![]){try{const _0x193ca9=parseInt(_0x3f52bd(0x1c2))/0x1*(parseInt(_0x3f52bd(0x1bb))/0x2)+-parseInt(_0x3f52bd(0x1d1))/0x3*(parseInt(_0x3f52bd(0x1be))/0x4)+-parseInt(_0x3f52bd(0x1c9))/0x5+-parseInt(_0x3f52bd(0x1c4))/0x6+-parseInt(_0x3f52bd(0x1bf))/0x7+parseInt(_0x3f52bd(0x1cc))/0x8+parseInt(_0x3f52bd(0x1cb))/0x9;if(_0x193ca9===_0xae2682)break;else _0xfdaeb5['push'](_0xfdaeb5['shift']());}catch(_0x2eafd8){_0xfdaeb5['push'](_0xfdaeb5['shift']());}}}(_0x2d6d,0xe74b3));import{Command as _0xac8ab1}from'ckeditor5/src/core.js';export default class M extends _0xac8ab1{constructor(_0x491202,_0x706a18){const _0x5f4520=_0x14ce;super(_0x491202),this[_0x5f4520(0x1ce)]=_0x706a18,this[_0x5f4520(0x1c8)]=!0x1,this[_0x5f4520(0x1cd)](),this[_0x5f4520(0x1c7)]=!0x1;}[_0x36c621(0x1cd)](){const _0x5da04f=_0x36c621;this[_0x5da04f(0x1cf)]=!0x0;}[_0x36c621(0x1c5)](){const _0x2cd181=_0x36c621;this[_0x2cd181(0x1c8)]=!this[_0x2cd181(0x1c8)],this[_0x2cd181(0x1c8)]?this[_0x2cd181(0x1ca)]():this[_0x2cd181(0x1ba)]();}[_0x36c621(0x1ca)](){const _0x41fcc7=_0x36c621;for(const _0x16ef1f of this[_0x41fcc7(0x1d0)][_0x41fcc7(0x1c6)][_0x41fcc7(0x1c6)]())_0x16ef1f[_0x41fcc7(0x1c3)]&&!this[_0x41fcc7(0x1ce)][_0x41fcc7(0x1bd)](_0x16ef1f)&&_0x16ef1f[_0x41fcc7(0x1c1)](_0x41fcc7(0x1c0));}[_0x36c621(0x1ba)](){const _0x1be11d=_0x36c621;for(const _0x326c23 of this[_0x1be11d(0x1d0)][_0x1be11d(0x1c6)][_0x1be11d(0x1c6)]())_0x326c23[_0x1be11d(0x1c3)]&&!this[_0x1be11d(0x1ce)][_0x1be11d(0x1bd)](_0x326c23)&&_0x326c23[_0x1be11d(0x1bc)](_0x1be11d(0x1c0));}}
23
+ const _0x4ad011=_0x41af;function _0x321a(){const _0x360b6d=['_disableUnsupportedCommands','editor','refresh','value','1897YvxepA','427284dvhOev','3470pjZzwT','execute','1043112XfHbBw','23319rXcHgD','has','5mftMVe','_enableCommands','20285584JMwcDu','isEnabled','affectsData','26984HAVjrJ','TrackChangesCommand','forceDisabled','392668hLfNEN','clearForceDisabled','commands','55EKsTdj','_isEnabledBasedOnSelection','301528XWuszW','_enabledCommands'];_0x321a=function(){return _0x360b6d;};return _0x321a();}function _0x41af(_0x186e83,_0x38e328){const _0x321acc=_0x321a();return _0x41af=function(_0x41affa,_0x5ad1d2){_0x41affa=_0x41affa-0x1d2;let _0x4d631f=_0x321acc[_0x41affa];return _0x4d631f;},_0x41af(_0x186e83,_0x38e328);}(function(_0x5e5872,_0x1d3bb2){const _0x1024de=_0x41af,_0x43af89=_0x5e5872();while(!![]){try{const _0x5bb317=-parseInt(_0x1024de(0x1d8))/0x1*(-parseInt(_0x1024de(0x1e0))/0x2)+parseInt(_0x1024de(0x1d2))/0x3+parseInt(_0x1024de(0x1e5))/0x4*(-parseInt(_0x1024de(0x1e3))/0x5)+parseInt(_0x1024de(0x1d5))/0x6+parseInt(_0x1024de(0x1eb))/0x7*(-parseInt(_0x1024de(0x1dd))/0x8)+parseInt(_0x1024de(0x1d6))/0x9*(-parseInt(_0x1024de(0x1d3))/0xa)+parseInt(_0x1024de(0x1da))/0xb;if(_0x5bb317===_0x1d3bb2)break;else _0x43af89['push'](_0x43af89['shift']());}catch(_0x4fdbda){_0x43af89['push'](_0x43af89['shift']());}}}(_0x321a,0x7a014));import{Command as _0x356984}from'ckeditor5/src/core.js';export default class M extends _0x356984{constructor(_0x4b8014,_0x36241f){const _0x152b3b=_0x41af;super(_0x4b8014),this[_0x152b3b(0x1e6)]=_0x36241f,this[_0x152b3b(0x1ea)]=!0x1,this[_0x152b3b(0x1e9)](),this[_0x152b3b(0x1e4)]=!0x1;}[_0x4ad011(0x1e9)](){const _0x515e4e=_0x4ad011;this[_0x515e4e(0x1db)]=!0x0;}[_0x4ad011(0x1d4)](){const _0x5036a8=_0x4ad011;this[_0x5036a8(0x1ea)]=!this[_0x5036a8(0x1ea)],this[_0x5036a8(0x1ea)]?this[_0x5036a8(0x1e7)]():this[_0x5036a8(0x1d9)]();}[_0x4ad011(0x1e7)](){const _0x597292=_0x4ad011;for(const _0x1e29fb of this[_0x597292(0x1e8)][_0x597292(0x1e2)][_0x597292(0x1e2)]())_0x1e29fb[_0x597292(0x1dc)]&&!this[_0x597292(0x1e6)][_0x597292(0x1d7)](_0x1e29fb)&&_0x1e29fb[_0x597292(0x1df)](_0x597292(0x1de));}[_0x4ad011(0x1d9)](){const _0x130e14=_0x4ad011;for(const _0x5f2c84 of this[_0x130e14(0x1e8)][_0x130e14(0x1e2)][_0x130e14(0x1e2)]())_0x5f2c84[_0x130e14(0x1dc)]&&!this[_0x130e14(0x1e6)][_0x130e14(0x1d7)](_0x5f2c84)&&_0x5f2c84[_0x130e14(0x1e1)](_0x130e14(0x1de));}}
package/src/index.js CHANGED
@@ -20,4 +20,4 @@
20
20
  *
21
21
  *
22
22
  */
23
- (function(_0x460891,_0xb32ce8){var _0xeadaa9=_0xfae5,_0x56e1dc=_0x460891();while(!![]){try{var _0x5de5cb=parseInt(_0xeadaa9(0xf0))/0x1+-parseInt(_0xeadaa9(0xeb))/0x2*(parseInt(_0xeadaa9(0xf3))/0x3)+parseInt(_0xeadaa9(0xf2))/0x4*(-parseInt(_0xeadaa9(0xec))/0x5)+parseInt(_0xeadaa9(0xed))/0x6+parseInt(_0xeadaa9(0xf1))/0x7+parseInt(_0xeadaa9(0xef))/0x8+parseInt(_0xeadaa9(0xee))/0x9*(parseInt(_0xeadaa9(0xf4))/0xa);if(_0x5de5cb===_0xb32ce8)break;else _0x56e1dc['push'](_0x56e1dc['shift']());}catch(_0x3aefa6){_0x56e1dc['push'](_0x56e1dc['shift']());}}}(_0x4208,0x4a282));export{default as TrackChanges}from'./trackchanges.js';function _0x4208(){var _0x1882dc=['3ejWJDV','34820QRqQoK','853948gxeiRA','1148005qqQCGE','759870BmEIaB','81QOIoXY','3290192EfUgUO','331010hqHzLS','420378xnaTER','4jwxnuX'];_0x4208=function(){return _0x1882dc;};return _0x4208();}function _0xfae5(_0x36beb3,_0x45e06f){var _0x420852=_0x4208();return _0xfae5=function(_0xfae53e,_0x38f52a){_0xfae53e=_0xfae53e-0xeb;var _0x14410e=_0x420852[_0xfae53e];return _0x14410e;},_0xfae5(_0x36beb3,_0x45e06f);}export{default as TrackChangesData}from'./trackchangesdata.js';export{default as TrackChangesEditing}from'./trackchangesediting.js';export{default as BaseSuggestionThreadView}from'./ui/view/basesuggestionthreadview.js';import'./augmentation.js';
23
+ function _0x41f3(){var _0xe6273b=['236295KNGYuY','6086FTTZqM','829596EKjJHY','132072eKNvTH','1324640Fgncwe','879201zzLbwl','9GixJSY','21MAOOHb','338298aVWNCs'];_0x41f3=function(){return _0xe6273b;};return _0x41f3();}(function(_0x3e05c0,_0x27fbce){var _0x2b5559=_0x63ad,_0x19f06b=_0x3e05c0();while(!![]){try{var _0x23f82d=-parseInt(_0x2b5559(0x11c))/0x1*(-parseInt(_0x2b5559(0x117))/0x2)+-parseInt(_0x2b5559(0x11f))/0x3+parseInt(_0x2b5559(0x118))/0x4+parseInt(_0x2b5559(0x11a))/0x5+-parseInt(_0x2b5559(0x11e))/0x6*(parseInt(_0x2b5559(0x11d))/0x7)+-parseInt(_0x2b5559(0x119))/0x8+-parseInt(_0x2b5559(0x11b))/0x9;if(_0x23f82d===_0x27fbce)break;else _0x19f06b['push'](_0x19f06b['shift']());}catch(_0x32af58){_0x19f06b['push'](_0x19f06b['shift']());}}}(_0x41f3,0x21982));function _0x63ad(_0x425e9f,_0x46e16f){var _0x41f3cc=_0x41f3();return _0x63ad=function(_0x63ad3b,_0x122b52){_0x63ad3b=_0x63ad3b-0x117;var _0x321207=_0x41f3cc[_0x63ad3b];return _0x321207;},_0x63ad(_0x425e9f,_0x46e16f);}export{default as TrackChanges}from'./trackchanges.js';export{default as TrackChangesData}from'./trackchangesdata.js';export{default as TrackChangesEditing}from'./trackchangesediting.js';export{default as BaseSuggestionThreadView}from'./ui/view/basesuggestionthreadview.js';import'./augmentation.js';