@ckeditor/ckeditor5-real-time-collaboration 44.0.0-alpha.2 → 44.0.0-alpha.4

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 (168) hide show
  1. package/build/real-time-collaboration.js +1 -1
  2. package/dist/index.js +6 -6
  3. package/dist/translations/af.js +1 -1
  4. package/dist/translations/af.umd.js +1 -1
  5. package/dist/translations/ar.js +1 -1
  6. package/dist/translations/ar.umd.js +1 -1
  7. package/dist/translations/ast.js +1 -1
  8. package/dist/translations/ast.umd.js +1 -1
  9. package/dist/translations/az.js +1 -1
  10. package/dist/translations/az.umd.js +1 -1
  11. package/dist/translations/bg.js +1 -1
  12. package/dist/translations/bg.umd.js +1 -1
  13. package/dist/translations/bn.js +1 -1
  14. package/dist/translations/bn.umd.js +1 -1
  15. package/dist/translations/bs.js +1 -1
  16. package/dist/translations/bs.umd.js +1 -1
  17. package/dist/translations/ca.js +1 -1
  18. package/dist/translations/ca.umd.js +1 -1
  19. package/dist/translations/cs.js +1 -1
  20. package/dist/translations/cs.umd.js +1 -1
  21. package/dist/translations/da.js +1 -1
  22. package/dist/translations/da.umd.js +1 -1
  23. package/dist/translations/de-ch.js +1 -1
  24. package/dist/translations/de-ch.umd.js +1 -1
  25. package/dist/translations/de.js +1 -1
  26. package/dist/translations/de.umd.js +1 -1
  27. package/dist/translations/el.js +1 -1
  28. package/dist/translations/el.umd.js +1 -1
  29. package/dist/translations/en-au.js +1 -1
  30. package/dist/translations/en-au.umd.js +1 -1
  31. package/dist/translations/en-gb.js +1 -1
  32. package/dist/translations/en-gb.umd.js +1 -1
  33. package/dist/translations/en.js +1 -1
  34. package/dist/translations/en.umd.js +1 -1
  35. package/dist/translations/eo.js +1 -1
  36. package/dist/translations/eo.umd.js +1 -1
  37. package/dist/translations/es-co.js +1 -1
  38. package/dist/translations/es-co.umd.js +1 -1
  39. package/dist/translations/es.js +1 -1
  40. package/dist/translations/es.umd.js +1 -1
  41. package/dist/translations/et.js +1 -1
  42. package/dist/translations/et.umd.js +1 -1
  43. package/dist/translations/eu.js +1 -1
  44. package/dist/translations/eu.umd.js +1 -1
  45. package/dist/translations/fa.js +1 -1
  46. package/dist/translations/fa.umd.js +1 -1
  47. package/dist/translations/fi.js +1 -1
  48. package/dist/translations/fi.umd.js +1 -1
  49. package/dist/translations/fr.js +1 -1
  50. package/dist/translations/fr.umd.js +1 -1
  51. package/dist/translations/gl.js +1 -1
  52. package/dist/translations/gl.umd.js +1 -1
  53. package/dist/translations/gu.js +1 -1
  54. package/dist/translations/gu.umd.js +1 -1
  55. package/dist/translations/he.js +1 -1
  56. package/dist/translations/he.umd.js +1 -1
  57. package/dist/translations/hi.js +1 -1
  58. package/dist/translations/hi.umd.js +1 -1
  59. package/dist/translations/hr.js +1 -1
  60. package/dist/translations/hr.umd.js +1 -1
  61. package/dist/translations/hu.js +1 -1
  62. package/dist/translations/hu.umd.js +1 -1
  63. package/dist/translations/hy.js +1 -1
  64. package/dist/translations/hy.umd.js +1 -1
  65. package/dist/translations/id.js +1 -1
  66. package/dist/translations/id.umd.js +1 -1
  67. package/dist/translations/it.js +1 -1
  68. package/dist/translations/it.umd.js +1 -1
  69. package/dist/translations/ja.js +1 -1
  70. package/dist/translations/ja.umd.js +1 -1
  71. package/dist/translations/jv.js +1 -1
  72. package/dist/translations/jv.umd.js +1 -1
  73. package/dist/translations/kk.js +1 -1
  74. package/dist/translations/kk.umd.js +1 -1
  75. package/dist/translations/km.js +1 -1
  76. package/dist/translations/km.umd.js +1 -1
  77. package/dist/translations/kn.js +1 -1
  78. package/dist/translations/kn.umd.js +1 -1
  79. package/dist/translations/ko.js +1 -1
  80. package/dist/translations/ko.umd.js +1 -1
  81. package/dist/translations/ku.js +1 -1
  82. package/dist/translations/ku.umd.js +1 -1
  83. package/dist/translations/lt.js +1 -1
  84. package/dist/translations/lt.umd.js +1 -1
  85. package/dist/translations/lv.js +1 -1
  86. package/dist/translations/lv.umd.js +1 -1
  87. package/dist/translations/ms.js +1 -1
  88. package/dist/translations/ms.umd.js +1 -1
  89. package/dist/translations/nb.js +1 -1
  90. package/dist/translations/nb.umd.js +1 -1
  91. package/dist/translations/ne.js +1 -1
  92. package/dist/translations/ne.umd.js +1 -1
  93. package/dist/translations/nl.js +1 -1
  94. package/dist/translations/nl.umd.js +1 -1
  95. package/dist/translations/no.js +1 -1
  96. package/dist/translations/no.umd.js +1 -1
  97. package/dist/translations/oc.js +1 -1
  98. package/dist/translations/oc.umd.js +1 -1
  99. package/dist/translations/pl.js +1 -1
  100. package/dist/translations/pl.umd.js +1 -1
  101. package/dist/translations/pt-br.js +1 -1
  102. package/dist/translations/pt-br.umd.js +1 -1
  103. package/dist/translations/pt.js +1 -1
  104. package/dist/translations/pt.umd.js +1 -1
  105. package/dist/translations/ro.js +1 -1
  106. package/dist/translations/ro.umd.js +1 -1
  107. package/dist/translations/ru.js +1 -1
  108. package/dist/translations/ru.umd.js +1 -1
  109. package/dist/translations/si.js +1 -1
  110. package/dist/translations/si.umd.js +1 -1
  111. package/dist/translations/sk.js +1 -1
  112. package/dist/translations/sk.umd.js +1 -1
  113. package/dist/translations/sl.js +1 -1
  114. package/dist/translations/sl.umd.js +1 -1
  115. package/dist/translations/sq.js +1 -1
  116. package/dist/translations/sq.umd.js +1 -1
  117. package/dist/translations/sr-latn.js +1 -1
  118. package/dist/translations/sr-latn.umd.js +1 -1
  119. package/dist/translations/sr.js +1 -1
  120. package/dist/translations/sr.umd.js +1 -1
  121. package/dist/translations/sv.js +1 -1
  122. package/dist/translations/sv.umd.js +1 -1
  123. package/dist/translations/th.js +1 -1
  124. package/dist/translations/th.umd.js +1 -1
  125. package/dist/translations/ti.js +1 -1
  126. package/dist/translations/ti.umd.js +1 -1
  127. package/dist/translations/tk.js +1 -1
  128. package/dist/translations/tk.umd.js +1 -1
  129. package/dist/translations/tr.js +1 -1
  130. package/dist/translations/tr.umd.js +1 -1
  131. package/dist/translations/tt.js +1 -1
  132. package/dist/translations/tt.umd.js +1 -1
  133. package/dist/translations/ug.js +1 -1
  134. package/dist/translations/ug.umd.js +1 -1
  135. package/dist/translations/uk.js +1 -1
  136. package/dist/translations/uk.umd.js +1 -1
  137. package/dist/translations/ur.js +1 -1
  138. package/dist/translations/ur.umd.js +1 -1
  139. package/dist/translations/uz.js +1 -1
  140. package/dist/translations/uz.umd.js +1 -1
  141. package/dist/translations/vi.js +1 -1
  142. package/dist/translations/vi.umd.js +1 -1
  143. package/dist/translations/zh-cn.js +1 -1
  144. package/dist/translations/zh-cn.umd.js +1 -1
  145. package/dist/translations/zh.js +1 -1
  146. package/dist/translations/zh.umd.js +1 -1
  147. package/package.json +9 -9
  148. package/src/common-translations.js +1 -1
  149. package/src/index.js +1 -1
  150. package/src/presencelist/presencelistui.js +1 -1
  151. package/src/presencelist/view/presencecounterview.js +1 -1
  152. package/src/presencelist/view/presencedropdownlistitemview.js +1 -1
  153. package/src/presencelist/view/presencedropdownlistview.js +1 -1
  154. package/src/presencelist/view/presenceinlinelistitemview.js +1 -1
  155. package/src/presencelist/view/presenceinlinelistview.js +1 -1
  156. package/src/presencelist/view/presencelistview.js +1 -1
  157. package/src/presencelist.js +1 -1
  158. package/src/realtimecollaborativecomments/cloudservicescommentsadapter.js +1 -1
  159. package/src/realtimecollaborativecomments.js +1 -1
  160. package/src/realtimecollaborativeediting/realtimecollaborationclient.js +1 -1
  161. package/src/realtimecollaborativeediting/sessions.js +1 -1
  162. package/src/realtimecollaborativeediting/usermarkers.js +1 -1
  163. package/src/realtimecollaborativeediting/websocketgateway.js +1 -1
  164. package/src/realtimecollaborativeediting.js +1 -1
  165. package/src/realtimecollaborativerevisionhistory/cloudservicesrevisionhistoryadapter.js +1 -1
  166. package/src/realtimecollaborativerevisionhistory.js +1 -1
  167. package/src/realtimecollaborativetrackchanges/cloudservicestrackchangesadapter.js +1 -1
  168. package/src/realtimecollaborativetrackchanges.js +1 -1
package/dist/index.js CHANGED
@@ -20,9 +20,9 @@
20
20
  *
21
21
  *
22
22
  */
23
- import{ContextPlugin as _0x5a8039,Plugin as _0x2f4ec7,PendingActions as _0x19630d,Context as _0x4f9ef2}from'@ckeditor/ckeditor5-core/dist/index.js';import{DomEmitterMixin as _0x33bf11,CKEditorError as _0x4bb820,Collection as _0x3fd87a,global as _0x11ae4d,version as nt,uid as _0x1076e1,KeystrokeHandler as _0x5393f7}from'@ckeditor/ckeditor5-utils/dist/index.js';import{Notification as _0x1b3b0a,View as _0x4a36b3,ListView as _0x5b5e13,ListItemView as rt,LabelView as ot,BalloonPanelView as _0xd0549f,clickOutsideHandler as _0x17dab6,BodyCollection as _0x24f1cb}from'@ckeditor/ckeditor5-ui/dist/index.js';import{LiveRange as ht,History as _0x12c917,NoOperation as _0x27ffb8,InsertOperation as _0x3709a8,MarkerOperation as _0x164bdb,RootAttributeOperation as _0x257d74,transformSets as _0x583353,OperationFactory as _0x3e5cf4}from'@ckeditor/ckeditor5-engine/dist/index.js';import{WebSocketGateway as lt,WEB_SOCKET_GATEWAY_STATES as _0x42944f,CollaborativeEditingService as _0x205cab,User as dt,CommentsService as _0x507313,TrackChangesService as et,RevisionHistoryService as it,EditorService as tt}from'@ckeditor/ckeditor-cloud-services-collaboration/dist/index.js';import{Users as _0x5e51ff,UserView as ct}from'ckeditor5-collaboration/dist/index.js';import{Compressor as _0x5808a4}from'@ckeditor/ckeditor5-operations-compressor/dist/index.js';import{isElement as _0x77664d}from'lodash-es';class c extends _0x5a8039{static ['WebSocketGateway']=/* #__PURE__ -- @preserve */
24
- ((()=>lt)());static ['initialReconnectionInterval']=0x3e8;['connection'];['_reconnectionStack'];['_shouldPluginsReconnect'];['_domEmitter'];static get['requires'](){return['CloudServices',_0x1b3b0a];}static get['pluginName'](){return'WebSocketGateway';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x3ed359){super(_0x3ed359),this['set']('state',_0x42944f['CONNECTED']),this['set']('_isBrowserOffline',!0x1),this['_reconnectionStack']=new Set(),this['_shouldPluginsReconnect']=!0x1,this['_domEmitter']=Object['create'](_0x33bf11);}['init'](){const _0x1e7b3f=this['context'],_0x2e4ce=_0x1e7b3f['plugins']['get']('CloudServices'),_0x5c77a3=_0x1e7b3f['plugins']['get'](_0x1b3b0a);if(!_0x2e4ce['token'])throw new _0x4bb820('websocketgateway-missing-token',this);if(!_0x2e4ce['webSocketUrl'])throw new _0x4bb820('websocketgateway-missing-websocket-url',this);return this['_domEmitter']['listenTo'](window,'offline',()=>this['_isBrowserOffline']=!0x0),this['_domEmitter']['listenTo'](window,'online',()=>this['_isBrowserOffline']=!0x1),this['context']['config']['define']('cloudServices.connectionTimeout',0xa),this['context']['config']['define']('cloudServices.requestTimeout',0x14),c['WebSocketGateway']['connect'](_0x2e4ce['token'],_0x2e4ce['webSocketUrl'],{'timeout':0x3e8*this['context']['config']['get']('cloudServices.connectionTimeout'),'requestTimeout':0x3e8*this['context']['config']['get']('cloudServices.requestTimeout')})['then'](_0x3351fd=>{if(this['connection']=_0x3351fd,this['bind']('state')['to'](_0x3351fd,'state',this,'_isBrowserOffline',(_0x954908,_0x2ce732)=>('connected'!==_0x954908&&(this['_shouldPluginsReconnect']=!0x0),_0x2ce732||_0x954908!==_0x42944f['CONNECTED']?_0x42944f['DISCONNECTED']:this['state']==_0x42944f['DISCONNECTED']&&this['_shouldPluginsReconnect']?(this['_shouldPluginsReconnect']=!0x1,this['_reconnect'](),_0x42944f['CONNECTING']):_0x42944f['CONNECTED'])),this['connection']['on']('error',(_0x18b483,_0xf8d3e9)=>{if('limitExceeded'!==_0xf8d3e9['code'])throw console['error'](_0xf8d3e9),new _0x4bb820('cloudservices-init',null,{'originalError':_0xf8d3e9});_0x5c77a3['showWarning']('The\x20limit\x20of\x20maximum\x20concurrent\x20connections\x20that\x20the\x20collaboration\x20server\x20can\x20handle\x20has\x20been\x20reached.\x20Try\x20opening\x20the\x20document\x20again\x20in\x20a\x20few\x20minutes.\x20Please\x20contact\x20your\x20system\x20administrator\x20if\x20the\x20problem\x20persists.',{'title':'Connected\x20users\x20limit\x20exceeded','namespace':'real-time-collaboration'});}),!_0x3351fd['me'])return new Promise(_0xa91353=>_0x3351fd['on']('change:me',_0xa91353));})['catch'](_0x33c635=>{throw console['error'](_0x33c635),new _0x4bb820('cloudservices-init',null,{'originalError':_0x33c635});});}['addToReconnectionStack'](_0x30ef69){if('function'!=typeof _0x30ef69['reconnect'])throw new _0x4bb820('websocketgateway-invalid-plugin-interface',this);if(this['isInReconnectionStack'](_0x30ef69))throw new _0x4bb820('websocketgateway-plugin-already-registered',this,{'name':_0x30ef69['constructor']['pluginName']});this['_reconnectionStack']['add'](_0x30ef69);}['removeFromReconnectionStack'](_0xc0bbc9){this['_reconnectionStack']['delete'](_0xc0bbc9);}['isInReconnectionStack'](_0x3537a2){return this['_reconnectionStack']['has'](_0x3537a2);}['_reconnect'](){return this['connection']['reconnect']()['then'](()=>Promise['all'](Array['from'](this['_reconnectionStack'],_0x2d1782=>_0x2d1782['reconnect']())))['then'](()=>this['state']=_0x42944f['CONNECTED'])['catch'](_0x221cb7=>{throw console['error'](_0x221cb7),new _0x4bb820('cloudservices-reconnection-error',this['context']);});}['destroy'](){this['connection']&&this['connection']['disconnect'](),this['state']=_0x42944f['DISCONNECTED'],this['_domEmitter']['stopListening'](),super['destroy']();}}class i extends _0x5a8039{['channelSessions'];['channelConnectedUsers'];['allConnectedUsers'];['_registeredSessions'];['_uniqueUsersCount'];['_users'];static get['pluginName'](){return'Sessions';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}static get['requires'](){return[c,_0x5e51ff];}constructor(_0x1e63ce){super(_0x1e63ce),this['channelSessions']=new Map(),this['channelConnectedUsers']=new Map(),this['allConnectedUsers']=new _0x3fd87a(),this['_registeredSessions']=new Map(),this['_uniqueUsersCount']=0x0,this['_users']=this['context']['plugins']['get'](_0x5e51ff);}['init'](){const _0x319f9b=this['context']['plugins']['get'](c);this['listenTo'](_0x319f9b,'change:state',(_0x42227d,_0x40f1c3,_0x4688de)=>{if('connected'!==_0x4688de)this['channelSessions']['forEach'](_0x55c838=>_0x55c838['clear']()),this['channelConnectedUsers']['forEach'](_0x3d872c=>_0x3d872c['clear']()),this['allConnectedUsers']['clear']();else{for(const [_0x2253fd,_0x3d75ff]of this['_registeredSessions'])for(const _0x1a8d6a of _0x3d75ff)this['_handleSessionAdd'](_0x2253fd,_0x1a8d6a);}}),this['_createUser'](_0x319f9b['connection']['me'],!0x0);}['register'](_0x2aa87c,_0x5491d3){if(this['_registeredSessions']['has'](_0x2aa87c))throw new _0x4bb820('sessions-register-already-registered',null,{'channelId':_0x2aa87c});this['_registeredSessions']['set'](_0x2aa87c,_0x5491d3),this['channelSessions']['set'](_0x2aa87c,new _0x3fd87a()),this['channelConnectedUsers']['set'](_0x2aa87c,new _0x3fd87a()),this['listenTo'](_0x5491d3,'add',(_0x56fd44,_0x427eaf)=>this['_handleSessionAdd'](_0x2aa87c,_0x427eaf)),this['listenTo'](_0x5491d3,'remove',(_0x346b37,_0x191340)=>this['_handleSessionRemove'](_0x2aa87c,_0x191340));for(const _0x39d4d0 of _0x5491d3)this['_handleSessionAdd'](_0x2aa87c,_0x39d4d0);}['unregister'](_0x21b7df){if(!this['_registeredSessions']['has'](_0x21b7df))throw new _0x4bb820('sessions-unregister-not-exist',null,{'channelId':_0x21b7df});const _0x406445=this['_registeredSessions']['get'](_0x21b7df);this['stopListening'](_0x406445);for(const _0xc95e25 of _0x406445)'connected'===this['context']['plugins']['get'](c)['state']&&this['_handleSessionRemove'](_0x21b7df,_0xc95e25);this['_registeredSessions']['delete'](_0x21b7df),this['channelSessions']['delete'](_0x21b7df),this['channelConnectedUsers']['delete'](_0x21b7df);}get['mySessionId'](){return this['context']['plugins']['get'](c)['connection']['sessionId'];}['getUserBySessionId'](_0x259340){for(const _0x210236 of this['channelSessions']['values']())for(const _0x435d2b of _0x210236)if(_0x435d2b['id']===_0x259340)return _0x435d2b['user'];}['getUserSessions'](_0x3c7157,_0xd5186d){const _0x5009d0=_0xd5186d?[this['channelSessions']['get'](_0xd5186d)]:this['channelSessions']['values'](),_0xb590e0=new Set();for(const _0x3bed1b of _0x5009d0)for(const _0x23cd42 of _0x3bed1b)_0x23cd42['user']['id']===_0x3c7157['id']&&_0xb590e0['add'](_0x23cd42['id']);return _0xb590e0;}['getUserRole'](_0x530106){for(const _0xbc6067 of this['channelSessions']['values']())for(const _0x178bdc of _0xbc6067)if(_0x178bdc['user']===_0x530106)return _0x178bdc['role'];}['_handleSessionAdd'](_0x38976d,_0x46439a){if('connected'!==this['context']['plugins']['get'](c)['state'])return;const _0x4670dc=_0x46439a['user'],_0x3ceba6=this['_users']['getUser'](_0x4670dc['id'])||this['_createUser'](_0x4670dc),_0x2a7d68=Object['assign']({},_0x46439a,{'user':_0x3ceba6});this['channelSessions']['get'](_0x38976d)['add'](_0x2a7d68);const _0x530fdc=this['channelConnectedUsers']['get'](_0x38976d);_0x530fdc['has'](_0x3ceba6['id'])||_0x530fdc['add'](_0x3ceba6),this['allConnectedUsers']['has'](_0x3ceba6['id'])||this['allConnectedUsers']['add'](_0x3ceba6,_0x3ceba6['isMe']?0x0:void 0x0),this['fire']('sessionAdd:'+_0x38976d,{'channelId':_0x38976d,'session':_0x2a7d68});}['_handleSessionRemove'](_0x295aaa,_0x11d75f){if('connected'!==this['context']['plugins']['get'](c)['state'])return;const _0x450913=this['channelConnectedUsers']['get'](_0x295aaa),_0x575264=_0x11d75f['user'];_0x575264['id']&&(this['channelSessions']['get'](_0x295aaa)['remove'](_0x11d75f['id']),_0x450913['has'](_0x575264['id'])&&!this['getUserSessions'](_0x575264,_0x295aaa)['size']&&_0x450913['remove'](_0x575264['id']),this['allConnectedUsers']['get'](_0x575264['id'])&&!this['getUserSessions'](_0x575264)['size']&&this['allConnectedUsers']['remove'](_0x575264['id']));}['_createUser'](_0x599fb8,_0x553130){const _0x1ac7da=this['_users']['addUser'](_0x599fb8);return _0x553130&&this['_users']['defineMe'](_0x599fb8['id']),_0x1ac7da['orderNumber']=this['_uniqueUsersCount']++,_0x1ac7da;}}class H extends _0x2f4ec7{['_domEmitter']=new(_0x33bf11())();static get['requires'](){return[i];}static get['pluginName'](){return'UserMarkers';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['init'](){const _0x73e655=this['editor'],_0x231eba=_0x73e655['plugins']['get'](i);_0x73e655['conversion']['for']('editingDowncast')['markerToElement']({'model':'user:position','view':(_0xef0520,{writer:_0x23430e})=>function(_0x3bd82f,_0x33ba68,_0x25615c,_0x321784){const _0xaff47b=_0x3bd82f['markerName']['split'](':')[0x2],_0x5b6dce=_0x25615c['getUserBySessionId'](_0xaff47b);if(!_0x5b6dce||_0xaff47b===_0x25615c['mySessionId'])return;if(!_0x321784['model']['schema']['checkChild'](_0x3bd82f['markerRange']['start'],'$text'))return;const _0x4f4776={'class':'ck-user__marker\x20'+_0x5b6dce['color']['getMarkerClass'](),'data-name':_0x5b6dce['name'],'data-session-id':_0xaff47b},_0x3b2990=_0x321784['model']['markers']['get'](_0x3bd82f['markerName']),_0x2ec786=_0x3b2990['getStart'](),_0x3dd034=_0x2ec786['nodeAfter'],_0x11b5fe=_0x321784['model']['schema'];if(_0x3dd034&&_0x11b5fe['isObject'](_0x3dd034)&&_0x11b5fe['isInline'](_0x3dd034)&&!_0x321784['model']['markers']['get']('user:range:'+_0xaff47b)['getRange']()['isCollapsed'])return;const _0x219612=_0x2ec786['parent'];return _0x321784['model']['schema']['isLimit'](_0x219612)&&!_0x321784['model']['hasContent'](_0x219612)&&(_0x4f4776['contenteditable']=!0x1),function(_0xffe653,_0x1b90da,_0x131009){const _0x5deec3=_0xffe653['createUIElement']('span',_0x1b90da);return _0xffe653['setCustomProperty']('userPositionMarker',!0x0,_0x5deec3),_0x5deec3['render']=function(_0x54edf8){const _0x5bbc5c=this['toDomElement'](_0x54edf8);return _0x5bbc5c['innerHTML']='⁠<span\x20class=\x22ck-user__marker-line\x22\x20contenteditable=\x22false\x22><span\x20class=\x22ck-user__marker-dot\x22></span></span><span\x20class=\x22ck-user__marker-tooltip\x22\x20contenteditable=\x22false\x22\x20spellcheck=\x22false\x22>'+_0x131009['name']+'</span>⁠',_0x5bbc5c['addEventListener']('mouseenter',()=>{_0x5bbc5c['classList']['add']('ck-user__marker_hovered');}),_0x5bbc5c['addEventListener']('mouseleave',()=>{_0x5bbc5c['classList']['remove']('ck-user__marker_hovered');}),_0x5bbc5c;},_0x5deec3['isSimilar']=function(_0x4ab138){return!(!this['getCustomProperty']('userPositionMarker')||!_0x4ab138['getCustomProperty']('userPositionMarker')||this['getAttribute']('data-session-id')!=_0x4ab138['getAttribute']('data-session-id'));},_0x5deec3;}(_0x33ba68,_0x4f4776,_0x5b6dce);}(_0xef0520,_0x23430e,_0x231eba,_0x73e655)}),_0x73e655['conversion']['for']('editingDowncast')['markerToHighlight']({'model':'user:range','view':_0x33ddc5=>function(_0x4e88bf,_0x57b973){const _0xd58adb=_0x4e88bf['markerName']['split'](':')[0x2];if(_0xd58adb===_0x57b973['mySessionId'])return null;const _0x74be4b=_0x57b973['getUserBySessionId'](_0xd58adb);if(!_0x74be4b)return{'id':_0xd58adb,'classes':[]};return{'id':_0xd58adb,'classes':['ck-user__selection',_0x74be4b['color']['getSelectionClass']()],'attributes':{'data-session-id':_0xd58adb},'priority':0x7d0+_0x74be4b['orderNumber']};}(_0x33ddc5,_0x231eba)}),function(_0x5226f1){const _0x46a892=_0x5226f1['model'],_0x3d4cc2=new Map(),_0xa41186=_0x5226f1['plugins']['get'](i);_0x46a892['markers']['on']('update:user:range',(_0x43b49b,_0x4dea60,_0x364448,_0xad3492)=>{if(!_0xad3492&&_0x3d4cc2['get'](_0x4dea60['name']))return _0x3d4cc2['get'](_0x4dea60['name'])['detach'](),void _0x3d4cc2['delete'](_0x4dea60['name']);const _0x16b9ac=_0x4dea60['name']['split'](':')[0x2];if(_0x16b9ac===_0xa41186['mySessionId'])return;const _0x13ccb6='user:position:'+_0x16b9ac;_0x46a892['markers']['has'](_0x13ccb6)&&_0x5226f1['editing']['reconvertMarker'](_0x13ccb6),_0x4dea60['on']('change:range',(_0x59cf83,_0x35f592,_0x142615)=>{if('$graveyard'!=_0x35f592['root']['rootName']&&'$graveyard'==_0x4dea60['getRange']()['root']['rootName']&&!_0x3d4cc2['has'](_0x4dea60['name'])){const _0x114105=_0x46a892['schema']['getNearestSelectionRange'](_0x142615['deletionPosition']);if(_0x114105){const _0xbd262a=ht['fromRange'](_0x114105);_0x3d4cc2['set'](_0x4dea60['name'],_0xbd262a),_0xbd262a['on']('change:range',(_0x425836,_0x3c23ab,_0x462b73)=>{if('$graveyard'==_0xbd262a['root']['rootName']){const _0x2d5467=_0x46a892['schema']['getNearestSelectionRange'](_0x462b73['deletionPosition']);_0x2d5467?(_0xbd262a['start']=_0x2d5467['start'],_0xbd262a['end']=_0x2d5467['end']):(_0x3d4cc2['delete'](_0x4dea60['name']),_0xbd262a['detach']());}});}}});}),_0x46a892['document']['on']('change',()=>{_0x3d4cc2['size']>0x0&&_0x46a892['enqueueChange']({'isUndoable':!0x1},_0x9377b3=>{for(const [_0x5dad32,_0x2994f6]of _0x3d4cc2)'$graveyard'==_0x46a892['markers']['get'](_0x5dad32)['getRange']()['root']['rootName']&&(re(_0x5dad32['split'](':')[0x2],_0x2994f6['toRange'](),_0x46a892,_0x9377b3),_0x2994f6['detach']());_0x3d4cc2['clear']();});});}(_0x73e655),this['_domEmitter']['listenTo'](_0x11ae4d['document'],'keydown',(_0x3e5539,{key:_0x45318b})=>{'Escape'===_0x45318b&&function(_0x203153){_0x203153['editing']['view']['change'](_0x54fa98=>{for(const _0x5b725d of _0x203153['model']['markers']){if(!_0x5b725d['name']['startsWith']('user:position'))continue;const _0x4b316c=_0x203153['editing']['mapper']['markerNameToElements'](_0x5b725d['name']);if(_0x4b316c){for(const _0x3a1576 of _0x4b316c)_0x54fa98['removeClass']('ck-user__marker_hovered',_0x3a1576);}}});}(_0x73e655);},{'useCapture':!0x0});}['afterInit'](){const _0x555cfd=this['editor'],_0x2fb068=_0x555cfd['commands']['get']('undo');_0x2fb068&&_0x555cfd['model']['on']('applyOperation',(_0x4dc8c6,_0x3aeee2)=>{const _0x835707=_0x3aeee2[0x0];if('marker'!=_0x835707['type']||!_0x835707['name']['startsWith']('user:'))return;const _0x59c8b=_0x835707['batch'];_0x2fb068['_createdBatches']['has'](_0x59c8b)&&(_0x835707['newRange']=_0x835707['oldRange']?_0x555cfd['model']['createRange'](_0x835707['oldRange']['start'],_0x835707['oldRange']['end']):null);},{'priority':'highest'});}['destroy'](){return this['_domEmitter']['stopListening'](),super['destroy']();}['createUserMarkerOperations'](){const _0x109a3d=this['editor'],_0x4571af=_0x109a3d['model']['document'],_0x2fcd6c=_0x109a3d['plugins']['get'](i);_0x109a3d['model']['enqueueChange']({'isUndoable':!0x1},_0x3c9f07=>{const _0x49ef9b='user:range:'+_0x2fcd6c['mySessionId'],_0x49d32c='user:position:'+_0x2fcd6c['mySessionId'],_0x10757a=_0x109a3d['model']['markers']['has'](_0x49ef9b);_0x109a3d['editing']['view']['hasDomSelection']?re(_0x2fcd6c['mySessionId'],_0x4571af['selection']['getFirstRange'](),_0x109a3d['model'],_0x3c9f07):_0x10757a&&(_0x3c9f07['removeMarker'](_0x49ef9b),_0x3c9f07['removeMarker'](_0x49d32c));});}}function re(_0x157219,_0x1811dd,_0x564db1,_0x48813a){const _0x33cd1f='user:range:'+_0x157219,_0x470833='user:position:'+_0x157219,_0x13a812=_0x1811dd['getContainedElement']();let _0x5aeb2e=_0x1811dd['start'];_0x13a812&&_0x13a812['is']('element','tableCell')&&(_0x5aeb2e=function(_0xecd0b5,_0x89fc2f){for(const _0x3da43a of _0xecd0b5['getPositions']())if(_0x89fc2f['schema']['checkChild'](_0x3da43a,'$text'))return _0x3da43a;}(_0x1811dd,_0x564db1),_0x1811dd=_0x48813a['createRange'](_0x5aeb2e));const _0x4c5f66=_0x48813a['createRange'](_0x5aeb2e);_0x564db1['markers']['has'](_0x33cd1f)?(_0x48813a['updateMarker'](_0x33cd1f,{'range':_0x1811dd}),_0x48813a['updateMarker'](_0x470833,{'range':_0x4c5f66})):(_0x48813a['addMarker'](_0x33cd1f,{'range':_0x1811dd,'usingOperation':!0x0}),_0x48813a['addMarker'](_0x470833,{'range':_0x4c5f66,'usingOperation':!0x0}));}function q(_0x583af6,_0x337ff6,_0x1c7c06){const _0x12b68b=_0x583af6['t'],t=_0x583af6['t'];switch(_0x337ff6){case'PENDING_ACTION_SENDING_DATA':return t({'string':'Sending\x20data\x20to\x20the\x20server.','id':'PENDING_ACTION_SENDING_DATA'});case'The\x20local\x20document\x20and\x20server\x20document\x20differ\x20and\x20merging\x20them\x20can\x20cause\x20unexpected\x20behavior.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':return t('The\x20local\x20document\x20and\x20server\x20document\x20differ\x20and\x20merging\x20them\x20can\x20cause\x20unexpected\x20behavior.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.');case'The\x20document\x20cannot\x20be\x20connected\x20back\x20to\x20the\x20server.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':return t('The\x20document\x20cannot\x20be\x20connected\x20back\x20to\x20the\x20server.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.');case'The\x20document\x20details\x20could\x20not\x20be\x20taken\x20during\x20the\x20reconnection.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':return t('The\x20document\x20details\x20could\x20not\x20be\x20taken\x20during\x20the\x20reconnection.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.');case'The\x20last\x20saved\x20version\x20of\x20the\x20document\x20does\x20not\x20match\x20the\x20local\x20version.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':return t('The\x20last\x20saved\x20version\x20of\x20the\x20document\x20does\x20not\x20match\x20the\x20local\x20version.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.');case'Synchronization\x20issue':return t('Synchronization\x20issue');case'Connected\x20users\x20list\x20dropdown\x20menu':return t('Connected\x20users\x20list\x20dropdown\x20menu');case'Collapsed\x20connected\x20users\x20list\x20(press\x20ENTER\x20to\x20open\x20it)':return t('Collapsed\x20connected\x20users\x20list\x20(press\x20ENTER\x20to\x20open\x20it)');case'Connected\x20users\x20list':return t('Connected\x20users\x20list');case'PENDING_ACTION_REVISION_HISTORY':return _0x12b68b({'string':'Unsaved\x20change\x20in\x20revision\x20history.','id':'PENDING_ACTION_REVISION_HISTORY'});case'CONNECTED_USERS':return t({'string':'1\x20connected\x20user\x20(me)','plural':'%0\x20connected\x20users','id':'CONNECTED_USERS'},_0x1c7c06);default:return'';}}let K=0x1;class l extends _0x2f4ec7{static ['CollaborativeEditingService']=/* #__PURE__ -- @preserve */
25
- ((()=>_0x205cab)());['_offset'];['sessionId'];['serverHistory'];['_channelId'];['_service'];['_document'];['_compressor'];['_bufferedOperations'];['_knownOperations'];['_knownRootNames'];['_pendingAction'];['_hasSelectionChanged'];['_sendBufferedOperationsDelayId'];['_baseBufferDelay'];['_currentBufferDelay'];['_lastSyncedOperationId'];['_disconnectionOperations'];['_operationIdentifier'];static get['requires'](){return[c,i,H,_0x19630d,_0x5e51ff,_0x1b3b0a];}static get['pluginName'](){return'RealTimeCollaborationClient';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}get['cloudDocumentVersion'](){return this['_lastServerVersion']+this['_offset'];}get['_lastServerVersion'](){return this['serverHistory']['version']-this['_offset'];}get['lastSyncVersion'](){const _0x5ebbb6=this['serverHistory']['getOperations']();for(let _0x401991=_0x5ebbb6['length']-0x1;_0x401991>=0x0;_0x401991--){const _0xc11cfb=_0x5ebbb6[_0x401991];if(!this['_disconnectionOperations']['has'](_0xc11cfb))return _0xc11cfb['baseVersion']+0x1-this['_offset'];}return 0x0;}constructor(_0x499522){if(super(_0x499522),this['_offset']=0x0,this['sessionId']=null,this['serverHistory']=new _0x12c917(),this['editor']['config']['define']('collaboration',{}),this['_channelId']=this['editor']['config']['get']('collaboration.channelId'),!this['_channelId'])throw new _0x4bb820('collaboration-missing-channelid',this);const _0x85eeb8=_0x499522['config']['get']('cloudServices.bundleVersion')||nt;this['_service']=new l['CollaborativeEditingService'](_0x85eeb8,this['_channelId']),this['_document']=this['editor']['model']['document'],this['_compressor']=new _0x5808a4(),this['_bufferedOperations']=[],this['_knownOperations']=new WeakSet(),this['_knownRootNames']=new Set(),this['set']('_isPendingUpdate',!0x1),this['set']('_hasSynchronizationProblem',!0x1),this['_pendingAction']=null,this['_hasSelectionChanged']=!0x1,this['_sendBufferedOperationsDelayId']=null,this['_baseBufferDelay']=0x12c,this['_currentBufferDelay']=this['_baseBufferDelay'],this['_lastSyncedOperationId']=null,this['_disconnectionOperations']=new WeakSet(),this['_operationIdentifier']=new X(this['_disconnectionOperations']);}['init'](){const _0x8b245b=this['editor'],_0xc08767=_0x8b245b['plugins']['get'](_0x5e51ff),_0x5bda34=_0x8b245b['plugins']['get'](c);this['listenTo'](_0xc08767,'getOperationAuthor',(_0x1622bf,_0x5c301a)=>{const _0x1aa6f1=_0x5c301a[0x0];_0x1aa6f1['_authorId']&&(_0x1622bf['return']=_0xc08767['getUser'](_0x1aa6f1['_authorId']),_0x1622bf['stop']()),null===_0x1aa6f1['_authorId']&&(_0x1622bf['return']=null,_0x1622bf['stop']());},{'priority':'high'}),this['listenTo'](_0x8b245b['model']['document']['selection'],'change:range',(_0xd4f0f9,_0x510dd4)=>{_0x510dd4['directChange']&&this['_refreshUserSelectionMarkers']();}),this['listenTo'](_0x8b245b['editing']['view'],'change:hasDomSelection',()=>{this['_refreshUserSelectionMarkers']();}),this['_initThrowingOnDataSet'](),_0x8b245b['model']['on']('applyOperation',(_0x3386cb,_0x2559d3)=>{const _0x53aa73=_0x2559d3[0x0];_0x53aa73['isDocumentOperation']&&(this['_saveOperationInBuffer'](_0x53aa73),this['_shouldSendUpdate']()&&this['_sendBufferedOperationsDelayed']());}),this['_setUpDataInit'](),this['bind']('_isEditingAllowed')['to'](_0x5bda34,'state',this,'_hasSynchronizationProblem',(_0x39f9a7,_0x57595f)=>'connected'===_0x39f9a7&&!_0x57595f),this['on']('change:_isEditingAllowed',()=>{this['_isEditingAllowed']?_0x8b245b['disableReadOnlyMode']('rtc-offline'):_0x8b245b['enableReadOnlyMode']('rtc-offline');}),this['_isEditingAllowed']?_0x8b245b['disableReadOnlyMode']('rtc-offline'):_0x8b245b['enableReadOnlyMode']('rtc-offline'),this['set']('_isConnected',!0x1);}async['reconnect'](){const _0x16f32f=this['editor']['plugins']['get'](i),_0x8431a5=this['editor']['plugins']['get'](c);try{this['_isPendingUpdate']=!0x0,_0x16f32f['unregister'](this['_channelId']);const _0x20dd21=await this['_service']['reconnect'](_0x8431a5['connection'],this['lastSyncVersion']);await this['_handleReconnectionResponse'](_0x20dd21)&&(this['_isPendingUpdate']=!0x1,this['_clearPendingAction']());const _0x51ee5a=await this['_service']['getConnectedSessions']();_0x16f32f['register'](this['_channelId'],_0x51ee5a),this['_handleSendingSelectionMarkers'](),this['_isConnected']=!0x0;}catch(_0x5e1873){if(function(_0x1a4295){return'404'===_0x1a4295['code'];}(_0x5e1873)&&this['sessionId'])await this['_connectAfterSessionHasBeenFlushed']();else{if(function(_0x1967fa){return'409'===_0x1967fa['code'];}(_0x5e1873)){const _0x49c7c9=q(this['editor']['locale'],'The\x20document\x20cannot\x20be\x20connected\x20back\x20to\x20the\x20server.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.');this['_handleReconnectionError'](_0x49c7c9);}else{if(!(_0x5e1873 instanceof J))throw _0x5e1873;this['_handleReconnectionError']();}}}}['destroy'](){const _0x1608a7=this['editor']['plugins']['get'](c),_0x2aabab=this['editor']['plugins']['get'](i);this['editor']['enableReadOnlyMode']('rtc-destroyed'),_0x2aabab['channelSessions']['has'](this['_channelId'])&&_0x2aabab['unregister'](this['_channelId']),_0x1608a7['removeFromReconnectionStack'](this),this['_disconnectService'](),super['destroy']();}async['_handleReconnectionResponse'](_0x4f4eed){if(this['sessionId']!==_0x4f4eed['sessionId']&&this['_lastSyncedOperationId']!==_0x4f4eed['lastOperationId'])throw new J();return this['sessionId']=_0x4f4eed['sessionId'],this['_handleServerResponse']([],{..._0x4f4eed,'wereChangesApplied':!0x1,'data':_0x4f4eed['data']},'reconnect');}async['_connectService'](_0x5ad166,_0x2ac486=!0x1){const {connection:_0x35e5fa}=this['editor']['plugins']['get'](c);l['CollaborativeEditingService']['getConnectedSessions'](_0x35e5fa,this['_channelId'])['then'](_0x4143ed=>this['_initSessionsHandling'](_0x4143ed))['catch'](_0x4ee191=>{this['_crash']('realtimecollaborationclient-init-session-connection-error',_0x4ee191);}),this['listenTo'](this['_service'],'operationsReceived',this['_handleReceivedOperations']['bind'](this)),this['listenTo'](this['_service'],'error',(_0x219295,_0x4ffe0c)=>{this['_crash']('realtimecollaborationclient-initservice-internal-error',_0x4ffe0c);}),this['listenTo'](this['_service'],'disconnected',()=>{this['_isConnected']=!0x1;});const _0x4dea94=this['_operationIdentifier']['getIdOfTheLastOperation'](_0x5ad166);this['_isPendingUpdate']=!0x0;const _0x4f4fde=await this['_service']['connect'](_0x35e5fa,this['_compressOperations'](_0x5ad166),_0x4dea94);if(this['sessionId']=_0x4f4fde['sessionId'],_0x2ac486){if(!_0x4f4fde['wereChangesApplied'])return void this['_handleReconnectionError']();this['_isPendingUpdate']=!0x1,this['_clearPendingAction'](),this['serverHistory']['reset'](),this['_offset']=_0x4f4fde['offset'],this['serverHistory']['version']=this['_offset'],await this['_handleServerResponse'](_0x5ad166,_0x4f4fde,'reconnection:\x20flushed\x20session');}else await this['_handleInitialConnectionData'](_0x4f4fde,_0x5ad166);this['_handleSendingSelectionMarkers'](),this['_isConnected']=!0x0;}['_handleSendingSelectionMarkers'](){const _0x35124f=this['editor']['plugins']['get'](i),_0x3c527c=this['editor']['plugins']['get'](H),_0x293e41=_0x35124f['channelSessions']['get'](this['_channelId']);_0x293e41&&_0x293e41['length']>0x1?_0x3c527c['createUserMarkerOperations']():this['listenTo'](_0x35124f,'sessionAdd:'+this['_channelId'],()=>{0x2===_0x35124f['channelSessions']['get'](this['_channelId'])['length']&&_0x3c527c['createUserMarkerOperations']();});}async['_handleReceivedOperations'](_0x46215d,_0x537d67,_0x52ed15,_0x1337af){if(!this['_isPendingUpdate']&&this['_document']['version']==_0x537d67){const _0x4f8cdf=this['_decompressOperations'](_0x52ed15,_0x1337af);await this['_fetchMissingUsers'](_0x4f8cdf),this['_handleExternalOperations'](_0x4f8cdf,_0x537d67,_0x52ed15['lastOperationId'])||this['_crash']('realtimecollaborationclient-initservice-incorrect-server-operation');}}async['_connectAfterSessionHasBeenFlushed'](){this['_disconnectService']();const {locale:_0x37de5e}=this['editor'];let _0x426c44;try{_0x426c44=await this['_service']['getDocumentDetails']();}catch(_0x3f72f2){const _0x1d3961=q(_0x37de5e,'The\x20document\x20details\x20could\x20not\x20be\x20taken\x20during\x20the\x20reconnection.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.');return void this['_handleReconnectionError'](_0x1d3961);}const _0x4d0d81=_0x426c44['currentDocumentSession']||_0x426c44['lastDocumentSession'];if(this['_lastSyncedOperationId']===_0x4d0d81['lastOperationId'])await this['_connectService'](this['editor']['model']['document']['history']['getOperations'](),!0x0);else{const _0x7a610=q(_0x37de5e,'The\x20last\x20saved\x20version\x20of\x20the\x20document\x20does\x20not\x20match\x20the\x20local\x20version.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.');this['_handleReconnectionError'](_0x7a610);}}['_disconnectService'](){this['_service']['disconnect'](),this['_bufferedOperations']=[],clearTimeout(this['_sendBufferedOperationsDelayId']),this['stopListening'](this['_service']);}['_initSessionsHandling'](_0x2c9a90){const _0x25dd1a=this['editor']['plugins']['get'](i);this['listenTo'](_0x25dd1a,'sessionAdd:'+this['_channelId'],(_0x29d721,{session:_0x34e7bc})=>{if(_0x34e7bc['id']===_0x25dd1a['mySessionId']){_0x29d721['off']();const _0x595a54=this['editor']['plugins']['has']('CommentsOnly')&&this['editor']['plugins']['get']('CommentsOnly');let _0x259d80=_0x34e7bc['permissions'];_0x595a54&&_0x595a54['isEnabled']&&(_0x259d80=_0x259d80['filter'](_0x3b5ab1=>'document:write'!==_0x3b5ab1)),this['editor']['plugins']['get']('Permissions')['setPermissions'](_0x259d80,this['_channelId']);}}),_0x25dd1a['register'](this['_channelId'],_0x2c9a90);}['_initThrowingOnDataSet'](){const _0x328cec=this['editor']['data']['set'];this['editor']['data']['set']=(..._0x2bb345)=>{if(!_0x2bb345[_0x2bb345['length']-0x1]['suppressErrorInCollaboration'])throw new _0x4bb820('realtimecollaborationclient-editor-setdata-and-editor-data-set-are-forbidden-in-real-time-collaboration',this);_0x328cec['apply'](this['editor']['data'],_0x2bb345);};}['_setUpDataInit'](){this['editor']['data']['on']('init',(_0x46fcfe,[_0x277f20])=>{if(this['_document']['version'])throw new _0x4bb820('realtimecollaborationclient-init-document-already-initialized',this);_0x46fcfe['stop'](),this['_setPendingAction']();const _0x458618=this['editor']['config']['get']('rootsAttributes'),_0x114223=this['_getOperationsFromInitData'](_0x277f20,_0x458618);0x0==_0x114223['length']&&_0x114223['push'](new _0x27ffb8(0x0)),_0x46fcfe['return']=this['_connectService'](_0x114223)['then'](()=>{this['editor']['plugins']['get'](c)['addToReconnectionStack'](this),this['editor']['data']['fire']('ready');})['catch'](_0x595c69=>this['_crash']('realtimecollaborationclient-init-connection-failed',_0x595c69))['finally'](()=>this['_clearPendingAction']());},{'priority':'high'}),this['editor']['on']('loadRoot',async(_0x18d6c5,[_0x5990c7,_0x54e1c3])=>{_0x18d6c5['stop']();const _0x189642=this['editor']['model']['document']['getRoot'](_0x5990c7);if(!this['_knownRootNames']['has'](_0x5990c7)){const _0x2bd678=_0x54e1c3&&_0x54e1c3['data']?_0x54e1c3['data']:'',_0x1fb309=_0x54e1c3&&_0x54e1c3['attributes']?_0x54e1c3['attributes']:{};await this['_loadRoot'](_0x5990c7,_0x2bd678,_0x1fb309);}this['editor']['model']['enqueueChange']({'isUndoable':!0x1},()=>{_0x189642['_isLoaded']=!0x0,this['editor']['model']['document']['differ']['_bufferRootLoad'](_0x189642);});},{'priority':'high'});}async['_fetchMissingUsers'](_0x134426){const _0x5b9647=this['editor']['plugins']['get'](_0x5e51ff),{connection:_0x135831}=this['editor']['plugins']['get'](c),_0x1e32b3=new Set();for(const _0x494b06 of _0x134426){const _0xc7d676=_0x494b06['_authorId'];_0xc7d676&&!_0x5b9647['getUser'](_0xc7d676)&&_0x1e32b3['add'](_0xc7d676);}if(0x0===_0x1e32b3['size'])return;const _0x5433ad=await dt['getMany'](_0x135831,Array['from'](_0x1e32b3));for(const _0x493705 of _0x5433ad)_0x5b9647['getUser'](_0x493705['id'])||_0x5b9647['addUser'](_0x493705);}['_getOperationsFromInitData'](_0x5bb1bb,_0x5c6b42={}){const _0x4a6b17=this['editor']['model'],_0x4f4842=[];let _0x43bcbf=0x0;const _0x31ffd1='string'==typeof _0x5bb1bb?{'main':_0x5bb1bb}:_0x5bb1bb;for(const _0x5eb0f0 of Object['keys'](_0x31ffd1)){if(!this['_document']['roots']['has'](_0x5eb0f0))throw new _0x4bb820('realtimecollaborationclient-init-non-existent-root',this);const _0x3cd4e2=this['editor']['data']['parse'](_0x31ffd1[_0x5eb0f0]),_0x5c91ef=this['_document']['getRoot'](_0x5eb0f0),_0x439271=new _0x3709a8(_0x4a6b17['createPositionAt'](_0x5c91ef,0x0),_0x3cd4e2,_0x43bcbf++);_0x4f4842['push'](_0x439271);for(const [_0x430f6a,_0x2c7e53]of _0x3cd4e2['markers']){const _0xe8c0f=_0x4a6b17['createRange'](_0x4a6b17['createPositionFromPath'](_0x5c91ef,_0x2c7e53['start']['path']['slice']()),_0x4a6b17['createPositionFromPath'](_0x5c91ef,_0x2c7e53['end']['path']['slice']())),_0x2a012e=new _0x164bdb(_0x430f6a,null,_0xe8c0f,_0x4a6b17['markers'],!0x0,_0x43bcbf++);_0x4f4842['push'](_0x2a012e);}}if(_0x5c6b42)for(const [_0x1d5e06,_0x1ddcce]of Object['entries'](_0x5c6b42)){const _0x43e170=_0x4a6b17['document']['getRoot'](_0x1d5e06);if(!_0x43e170)throw new _0x4bb820('multi-root-editor-root-attributes-no-root',null);for(const [_0x1a392b,_0xce9008]of Object['entries'](_0x1ddcce))if(null!==_0xce9008){const _0x116fac=new _0x257d74(_0x43e170,_0x1a392b,null,_0xce9008,_0x43bcbf++);_0x4f4842['push'](_0x116fac);}}return _0x4f4842;}async['_loadRoot'](_0x5cfa0d,_0x5d1449,_0xcc645){this['_getOperationsFromInitData']({[_0x5cfa0d]:_0x5d1449},{[_0x5cfa0d]:_0xcc645})['forEach']((_0x34ebb6,_0x19d843)=>{_0x34ebb6['baseVersion']=this['_document']['version']+_0x19d843,_0x34ebb6['_isInit']=!0x0,this['_saveOperationInBuffer'](_0x34ebb6);}),this['_sendBufferedOperationsDelayed'](),await this['_waitUntilSynced']();}async['_handleInitialConnectionData'](_0x10e056,_0x4e51b8){let _0x2cf2ca;this['_offset']=_0x10e056['offset'];const _0x289c12=_0x10e056['wereChangesApplied']&&!_0x10e056['initData'],_0x16b8b6=_0x289c12?0x0:_0x10e056['data']['baseVersion'];if(_0x4e51b8['forEach'](_0x5d5274=>{_0x5d5274['_isInit']=!0x0,_0x5d5274['createdAt']=_0x10e056['sessionCreatedAt'],_0x5d5274['_authorId']=null;}),_0x289c12)_0x2cf2ca=_0x4e51b8,this['_applyOperationsSet'](_0x2cf2ca,_0x289c12);else{if(_0x10e056['initData']){const _0x31aefc=this['_getOperationsFromInitData'](_0x10e056['initData']);this['_document']['history']['version']=-_0x31aefc['length'],_0x31aefc['forEach'](_0x284cc7=>{_0x284cc7['baseVersion']-=_0x31aefc['length'],_0x284cc7['createdAt']=_0x10e056['sessionCreatedAt'],_0x284cc7['_isInit']=!0x0,_0x284cc7['_authorId']=null;}),this['_applyOperationsSet'](_0x31aefc,!0x0),this['serverHistory']['version']=-_0x31aefc['length']+this['_offset'],this['_updateServerHistory'](_0x31aefc);}this['_document']['history']['version']=_0x16b8b6,_0x2cf2ca=this['_decompressOperations'](_0x10e056['data'],_0x10e056['metadata']),await this['_fetchMissingUsers'](_0x2cf2ca),this['_applyOperationsSet'](_0x2cf2ca,_0x289c12);}_0x10e056['lastOperationId']&&(this['_operationIdentifier']['setIdForTheLastOperation'](_0x2cf2ca,_0x10e056['lastOperationId']),this['_lastSyncedOperationId']=_0x10e056['lastOperationId']),this['serverHistory']['version']=_0x16b8b6+this['_offset'],this['_updateServerHistory'](_0x2cf2ca),_0x4e51b8['filter'](_0x3ced9e=>{const _0x2f7c19=this['_getAffectedRoot'](_0x3ced9e);return _0x2f7c19&&!this['_knownRootNames']['has'](_0x2f7c19);})['forEach']((_0x36af0f,_0x556a27)=>{_0x36af0f['baseVersion']=this['_document']['version']+_0x556a27,this['_saveOperationInBuffer'](_0x36af0f);}),this['_shouldSendUpdate']()?(this['_currentBufferDelay']=0x0,this['_sendBufferedOperationsDelayed'](!0x0),await this['_waitUntilSynced']()):(this['_isPendingUpdate']=!0x1,this['_clearPendingAction']());}['_crash'](_0x2f0b59,_0x39c7d8,_0x11af1f){throw this['_isPendingUpdate']=!0x0,_0x39c7d8&&console['error'](_0x39c7d8),_0x11af1f&&this['editor']['enableReadOnlyMode']('realtimecollaborationclient-error'),new _0x4bb820(_0x2f0b59,this['editor']);}['_saveOperationInBuffer'](_0x5ac183){this['_knownOperations']['has'](_0x5ac183)||(this['_knownOperations']['add'](_0x5ac183),this['_bufferedOperations']['push'](_0x5ac183),this['_pendingAction']||'marker'==_0x5ac183['type']&&!_0x5ac183['affectsData']||this['_setPendingAction']());}['_sendBufferedOperationsDelayed'](_0x28b6e9=!0x1){!_0x28b6e9&&this['_isPendingUpdate']||(this['_isPendingUpdate']=!0x0,clearTimeout(this['_sendBufferedOperationsDelayId']),this['_sendBufferedOperationsDelayId']=setTimeout(()=>{this['_sendBufferedOperations']()['then'](_0x4c747f=>{_0x4c747f&&(this['_clearPendingAction'](),this['_isPendingUpdate']=!0x1);})['catch'](_0x3cd2f7=>{this['_clearPendingAction'](),this['_isPendingUpdate']=!0x1,function(_0x136e54){return _0x136e54['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x136e54['message']['startsWith']('cloud-services-internal-error:\x20Collaborative\x20Editing\x20Service\x20is\x20not\x20connected.')||_0x136e54['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}(_0x3cd2f7)||this['_crash'](_0x3cd2f7['message'],_0x3cd2f7,!0x0);});},this['_currentBufferDelay']));}['_waitUntilSynced'](){return new Promise(_0x244498=>{this['on']('change:_isPendingUpdate',()=>{_0x244498();});});}async['_sendBufferedOperations'](){const _0x305b47=this['editor']['plugins']['get'](H);if(this['_shouldSendSelectionUpdate']()&&(_0x305b47['createUserMarkerOperations'](),this['_hasSelectionChanged']=!0x1),!this['_shouldSendUpdate']())return!0x0;const _0x46607c=[...this['_bufferedOperations']];for(const _0x29b241 of _0x46607c)_0x29b241['wasUndone']=this['_document']['history']['isUndoneOperation'](_0x29b241);const _0x4ab5b9=this['_operationIdentifier']['getIdOfTheLastOperation'](_0x46607c),_0x89bc5c=K++,_0x1051da=this['_compressOperations'](_0x46607c),_0x344e58=await this['_service']['sendOperations'](_0x1051da,_0x1051da['baseVersion'],_0x4ab5b9);try{return await this['_handleServerResponse'](_0x46607c,_0x344e58,_0x89bc5c);}catch(_0x5c888c){return this['_crash']('realtimecollaborationclient-sendbufferedoperations',_0x5c888c);}}async['_handleServerResponse'](_0x1f092f,_0x529dc4,_0x8b1007){if('error'in _0x529dc4)throw _0x529dc4['error'];let _0x5d1264=!0x1;if(_0x529dc4['wereChangesApplied']){_0x529dc4['lastOperationId']&&(this['_lastSyncedOperationId']=_0x529dc4['lastOperationId']),this['_bufferedOperations']=this['_bufferedOperations']['filter'](_0x57f3f0=>!_0x1f092f['includes'](_0x57f3f0));for(const _0x2c9046 of _0x1f092f)_0x2c9046['createdAt']='lastOperationAcceptedAt'in _0x529dc4&&_0x529dc4['lastOperationAcceptedAt']||void 0x0;Q(_0x1f092f,_0x529dc4['version']-_0x1f092f['length']),this['_updateServerHistory'](_0x1f092f);const _0x13d2ff=_0x1f092f['filter'](_0x377015=>{if(!_0x377015['_isInit'])return!0x1;const _0xa18f9f=this['_getAffectedRoot'](_0x377015);return _0xa18f9f&&!this['_knownRootNames']['has'](_0xa18f9f);});Q(_0x13d2ff,this['_document']['version']),this['_applyOperationsSet'](_0x13d2ff),_0x5d1264=!0x0,this['_currentBufferDelay']=this['_baseBufferDelay'];}else{const _0x398c16=this['_decompressOperations'](_0x529dc4['data'],_0x529dc4['metadata'])['filter'](_0x27e296=>_0x27e296['baseVersion']>=this['_lastServerVersion']);_0x398c16['forEach'](_0x5680be=>this['_addKnownRoot'](_0x5680be)),this['_bufferedOperations']=this['_bufferedOperations']['filter'](_0x3c37e1=>!_0x3c37e1['_isInit']||!this['_knownRootNames']['has'](this['_getAffectedRoot'](_0x3c37e1))),this['_bufferedOperations']['length']&&Q(this['_bufferedOperations'],this['_bufferedOperations'][0x0]['baseVersion']),await this['_fetchMissingUsers'](_0x398c16),_0x5d1264=this['_handleExternalOperations'](_0x398c16,_0x529dc4['version'],_0x529dc4['lastOperationId']),this['_currentBufferDelay']=Math['round'](this['_currentBufferDelay']/0x2);}return _0x5d1264?!this['_shouldSendUpdate']()||(this['_sendBufferedOperationsDelayed'](!0x0),!0x1):this['_crash']('realtimecollaborationclient-handleserverresponse');}['_handleExternalOperations'](_0x2da746,_0x2437b4,_0x1e0ebf){try{const _0x115725={'document':this['_document'],'useRelations':!0x1,'padWithNoOps':!0x0},{operationsA:_0x34b322,operationsB:_0x589da4,originalOperations:_0x32e1ba}=_0x583353(_0x2da746,this['_bufferedOperations'],_0x115725);Q(_0x34b322,this['_document']['version']),Q(_0x589da4,_0x2437b4);for(const _0x338eca of _0x34b322){const _0x82af41=_0x32e1ba['get'](_0x338eca);_0x338eca['_authorId']=_0x82af41?_0x82af41['_authorId']:null;}_0x1e0ebf&&(this['_operationIdentifier']['setIdForTheLastOperation'](_0x2da746,_0x1e0ebf),this['_lastSyncedOperationId']=_0x1e0ebf),this['_bufferedOperations']=[..._0x589da4],this['_applyOperationsSet'](_0x34b322),this['_updateServerHistory'](_0x2da746);}catch(_0x4b4f65){return console['error'](_0x4b4f65),!0x1;}return!0x0;}['_applyOperationsSet'](_0x9fd829,_0x190de7=!0x1){this['editor']['model']['enqueueChange']({'isUndoable':!0x1,'isLocal':!0x1},_0x4b7f96=>{for(const _0x4111df of _0x9fd829)this['_knownOperations']['add'](_0x4111df),this['_addKnownRoot'](_0x4111df),_0x4b7f96['batch']['addOperation'](_0x4111df),this['editor']['model']['applyOperation'](_0x4111df);});}['_addKnownRoot'](_0x4f1598){const _0x2422b8=this['_getAffectedRoot'](_0x4f1598);_0x2422b8&&this['_knownRootNames']['add'](_0x2422b8);}['_getAffectedRoot'](_0x268b10){let _0x4a8fd5,_0x1cdd9c;switch(_0x268b10['type']){case'insert':_0x4a8fd5=_0x268b10['position']['root'];break;case'marker':if(_0x1cdd9c=_0x268b10['newRange'],!_0x1cdd9c)return null;_0x4a8fd5=_0x1cdd9c['root'];break;case'addRootAttribute':_0x4a8fd5=_0x268b10['root'];break;case'addRoot':_0x4a8fd5=_0x268b10['affectedSelectable'];break;case'move':_0x4a8fd5=_0x268b10['targetPosition']['root'];break;default:return null;}return _0x4a8fd5['rootName'];}['_updateServerHistory'](_0x462c45){_0x462c45['forEach'](_0x370751=>{const _0x2c893d=_0x370751['clone']();_0x2c893d['_authorId']=_0x370751['_authorId'],_0x2c893d['_isInit']=!!_0x370751['_isInit'],_0x2c893d['createdAt']=_0x370751['createdAt'],_0x2c893d['baseVersion']+=this['_offset'],_0x370751['_isDisconnection']&&this['_disconnectionOperations']['add'](_0x2c893d),this['serverHistory']['addOperation'](_0x2c893d);});}['_handleReconnectionError'](_0x3f9052){const _0x5bb337=this['editor']['plugins']['get']('Notification'),_0x58881e=this['editor']['locale'];_0x3f9052||(_0x3f9052=q(_0x58881e,'The\x20local\x20document\x20and\x20server\x20document\x20differ\x20and\x20merging\x20them\x20can\x20cause\x20unexpected\x20behavior.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.')),_0x5bb337['showWarning'](_0x3f9052,{'title':q(_0x58881e,'Synchronization\x20issue'),'namespace':'real-time-collaboration'}),this['_hasSynchronizationProblem']=!0x0,clearTimeout(this['_sendBufferedOperationsDelayId']),this['_bufferedOperations']=[],this['editor']['plugins']['get'](c)['destroy']();}['_setPendingAction'](){this['_pendingAction']||(this['_pendingAction']=this['editor']['plugins']['get'](_0x19630d)['add'](q(this['editor']['locale'],'PENDING_ACTION_SENDING_DATA')));}['_clearPendingAction'](){this['_pendingAction']&&(this['editor']['plugins']['get'](_0x19630d)['remove'](this['_pendingAction']),this['_pendingAction']=null);}['_compressOperations'](_0x277c31){const _0x5ac04e=_0x277c31['map'](_0x2c7818=>_0x2c7818['toJSON']());return this['_compressor']['compress'](_0x5ac04e);}['_decompressOperations'](_0x562b67,_0x215866){return this['_compressor']['decompress'](_0x562b67)['map']((_0x43927d,_0x1b0db1)=>{const _0x34425c='init'==_0x215866[_0x1b0db1]['type'];if('InsertOperation'==_0x43927d['__className']){const _0x458186=_0x43927d['position']['root'];!this['_document']['getRoot'](_0x458186)&&(this['_document']['createRoot']('$root',_0x458186)['_isAttached']=!0x1);}const _0x32f7f7=_0x3e5cf4['fromJSON'](_0x43927d,this['_document']);return _0x32f7f7['wasUndone']=_0x43927d['wasUndone'],_0x32f7f7['_isInit']=_0x34425c,_0x32f7f7['_authorId']=_0x34425c?null:_0x215866[_0x1b0db1]['userId'],_0x32f7f7['_isDisconnection']='cs:removeUser'===_0x215866[_0x1b0db1]['type'],_0x32f7f7['createdAt']=_0x215866[_0x1b0db1]['createdAt'],_0x32f7f7;});}['_refreshUserSelectionMarkers'](){this['_hasSelectionChanged']=!0x0,this['_shouldSendSelectionUpdate']()?this['_sendBufferedOperationsDelayed']():this['_hasSelectionChanged']=!0x1;}['_shouldSendSelectionUpdate'](){const _0x416517=this['editor']['plugins']['get'](i)['channelSessions']['get'](this['_channelId']);return!this['editor']['isReadOnly']&&!!_0x416517&&_0x416517['length']>0x1&&this['_hasSelectionChanged'];}['_shouldSendUpdate'](){return this['_bufferedOperations']['length']>0x0||this['_shouldSendSelectionUpdate']();}}class J extends Error{}function Q(_0x482d0c,_0x1d4d7d){for(const _0xa391e1 of _0x482d0c)_0xa391e1['baseVersion']=_0x1d4d7d++;}class X{['_ignoredOperations'];['_operationToId'];constructor(_0x198192){this['_ignoredOperations']=_0x198192,this['_operationToId']=new WeakMap();}['getIdOfTheLastOperation'](_0x4b3b37){let _0x12c1ac=_0x4b3b37['length'];for(;_0x12c1ac--;){const _0x1d13bf=_0x4b3b37[_0x12c1ac];if(!this['_ignoredOperations']['has'](_0x1d13bf)){if(!this['_operationToId']['has'](_0x1d13bf)){const _0x204001=_0x1076e1()['slice'](0x1,0x12);this['_operationToId']['set'](_0x1d13bf,_0x204001);}return this['_operationToId']['get'](_0x1d13bf);}}}['setIdForTheLastOperation'](_0x18af57,_0x3efcbe){if(!_0x3efcbe)return;let _0x39ff42=_0x18af57['length'];for(;_0x39ff42--;){const _0x290972=_0x18af57[_0x39ff42];this['_ignoredOperations']['has'](_0x290972)||this['_operationToId']['set'](_0x290972,_0x3efcbe);}}}class n extends _0x2f4ec7{static get['requires'](){return[l];}static get['pluginName'](){return'RealTimeCollaborativeEditing';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}class a extends _0x5a8039{static ['CommentsService']=/* #__PURE__ -- @preserve */
26
- ((()=>_0x507313)());['_services'];static get['requires'](){return[c,'CommentsRepository',i,_0x5e51ff];}static get['pluginName'](){return'CloudServicesCommentsAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x1fd16d){super(_0x1fd16d),this['_services']=new Map();}async['init'](){const _0x470a8e=this['context'],_0x393a68=_0x470a8e['plugins']['get']('CommentsRepository');if(_0x470a8e['plugins']['get'](c)['addToReconnectionStack'](this),_0x393a68['adapter']={'addCommentThread':async({channelId:_0x2b5e15,threadId:_0x3ea87d,comments:_0xe96397,resolvedAt:_0x14c5ea,resolvedBy:_0x44e694,context:_0x1c133d,attributes:_0x1246a2})=>{const _0x303e28=await this['_getService'](_0x2b5e15)['addCommentThread']({'commentThreadId':_0x3ea87d,'comments':_0xe96397['map'](_0x6fb6d4=>function(_0xb52649,_0x2eb0f9,_0x148bde){return{'commentThreadId':_0x148bde,'commentId':_0xb52649['commentId'],'userId':_0xb52649['authorId'],'content':_0xb52649['content'],'documentId':_0x2eb0f9,'createdAt':_0xb52649['createdAt'],'attributes':_0xb52649['attributes']||{}};}(_0x6fb6d4,_0x2b5e15,_0x3ea87d)),'resolvedAt':_0x14c5ea,'resolvedBy':_0x44e694,'context':_0x1c133d,'attributes':_0x1246a2})['catch'](ut);return{'threadId':_0x303e28['commentThreadId'],'comments':_0x303e28['comments']};},'getCommentThread':async({channelId:_0x282cdf,threadId:_0x50696f})=>{const _0x369ed9=await this['_getService'](_0x282cdf)['getCommentThread'](_0x50696f)['catch'](ut);return _0x369ed9['deletedAt']?null:(await this['_fetchMissingUsersForThreads']([_0x369ed9]),{'threadId':_0x369ed9['commentThreadId'],'comments':_0x369ed9['comments']['map'](b),'context':_0x369ed9['context'],'resolvedAt':_0x369ed9['resolvedAt'],'resolvedBy':_0x369ed9['resolvedBy'],'attributes':_0x369ed9['attributes']||{}});},'updateCommentThread':async({channelId:_0x1e3d90,threadId:_0x112f43,context:_0x426caf,unlinkedAt:_0x1ec8f4,attributes:_0x567601})=>this['_getService'](_0x1e3d90)['updateCommentThread']({'commentThreadId':_0x112f43,'context':_0x426caf,'attributes':_0x567601,'unlinkedAt':_0x1ec8f4})['catch'](y)['catch'](ut),'resolveCommentThread':async({channelId:_0x5c1ce9,threadId:_0x3a2207})=>{const _0xf976c1=await this['_getService'](_0x5c1ce9)['resolveCommentThread'](_0x3a2207)['catch'](y)['catch'](ut);return{'threadId':_0xf976c1['commentThreadId'],'resolvedAt':_0xf976c1['resolvedAt'],'resolvedBy':_0xf976c1['resolvedBy']};},'reopenCommentThread':async({channelId:_0x4e5dd5,threadId:_0x292496})=>this['_getService'](_0x4e5dd5)['reopenCommentThread'](_0x292496)['catch'](y)['catch'](ut),'removeCommentThread':({channelId:_0x3a27aa,threadId:_0x8de907})=>this['_getService'](_0x3a27aa)['removeCommentThread'](_0x8de907)['catch'](y)['catch'](ut),'addComment':({channelId:_0x3dbef0,threadId:_0x2bb618,commentId:_0x25aacc,content:_0xdaf414,attributes:_0x68e5c8})=>this['_getService'](_0x3dbef0)['addComment'](_0x2bb618,_0x25aacc,_0xdaf414,_0x68e5c8)['catch'](ut),'updateComment':({channelId:_0x300241,threadId:_0x330629,commentId:_0x24e4c8,content:_0x160bb1,attributes:_0x46355b})=>this['_getService'](_0x300241)['updateComment'](_0x330629,_0x24e4c8,_0x160bb1,_0x46355b)['catch'](y)['catch'](ut),'removeComment':({channelId:_0xf2fe30,threadId:_0x18b006,commentId:_0x47745e})=>this['_getService'](_0xf2fe30)['removeComment'](_0x18b006,_0x47745e)['catch'](y)['catch'](ut)},_0x470a8e instanceof _0x4f9ef2){const _0x2ab058=_0x470a8e['config']['get']('collaboration.channelId'),_0x3e84c9=_0x470a8e['plugins']['get'](i);await this['_setUpService'](_0x2ab058);const _0x457c98=await this['_services']['get'](_0x2ab058)['getConnectedSessions']();this['listenTo'](_0x3e84c9,'sessionAdd:'+_0x2ab058,(_0xc1415c,{session:_0x2b9ca0})=>{_0x2b9ca0['id']===_0x3e84c9['mySessionId']&&(_0xc1415c['off'](),this['context']['plugins']['get']('Permissions')['setPermissions'](_0x2b9ca0['permissions'],_0x2ab058));}),_0x3e84c9['register'](_0x2ab058,_0x457c98);}}async['_setUpService'](_0x452715){if(this['_services']['has'](_0x452715))throw new _0x4bb820('cloudservicescommentsadapter-connect-already-connected',null,{'channelId':_0x452715});const _0x1cb15d=this['context']['plugins']['get']('CommentsRepository'),_0x32f8ee=new a['CommentsService'](_0x452715);this['_services']['set'](_0x452715,_0x32f8ee),this['listenTo'](_0x32f8ee,'commentThreadAdded',(_0x445f9d,_0x163fa2)=>{const {commentThreadId:_0x2c0989,documentId:_0x52b53e,context:_0x2328f5,attributes:_0x2f58a5,resolvedAt:_0xf88d58,resolvedBy:_0x2ba311,comments:_0x205106}=_0x163fa2;_0x1cb15d['getCommentThread'](_0x2c0989)||_0x1cb15d['addCommentThread']({'threadId':_0x2c0989,'channelId':_0x52b53e,'comments':_0x205106?_0x205106['map'](b):[],'context':_0x2328f5,'attributes':_0x2f58a5,'resolvedAt':_0xf88d58,'resolvedBy':_0x2ba311,'isFromAdapter':!0x0});}),this['listenTo'](_0x32f8ee,'commentThreadUpdated',(_0x390b09,{commentThreadId:_0x5a367e,documentId:_0x888d50,context:_0x239e70,unlinkedAt:_0xdf6b15,attributes:_0xe5437f})=>{_0x1cb15d['getCommentThread'](_0x5a367e)&&_0x1cb15d['updateCommentThread']({'threadId':_0x5a367e,'channelId':_0x888d50,'context':_0x239e70,'unlinkedAt':_0xdf6b15,'attributes':_0xe5437f,'isFromAdapter':!0x0});}),this['listenTo'](_0x32f8ee,'commentThreadResolved',(_0x21d95a,{commentThreadId:_0x2b7108,resolvedBy:_0x13cb74,resolvedAt:_0xf9915c})=>{const _0x2d8b1e=_0x1cb15d['getCommentThread'](_0x2b7108);_0x2d8b1e&&_0x2d8b1e['resolve']({'resolvedBy':_0x13cb74,'resolvedAt':_0xf9915c,'isFromAdapter':!0x0});}),this['listenTo'](_0x32f8ee,'commentThreadReopened',(_0x1e091a,{commentThreadId:_0x1ff159})=>{const _0x19aba4=_0x1cb15d['getCommentThread'](_0x1ff159);_0x19aba4&&_0x19aba4['reopen']({'isFromAdapter':!0x0});}),this['listenTo'](_0x32f8ee,'commentThreadRemoved',(_0x2f4a77,{commentThreadId:_0x5a6c5c})=>{const _0x11887b=_0x1cb15d['getCommentThread'](_0x5a6c5c);_0x11887b&&_0x11887b['remove']({'isFromAdapter':!0x0});}),this['listenTo'](_0x32f8ee,'commentAdded',(_0x569bf0,_0x4241d7)=>{const _0x1284e5=_0x4241d7['commentThreadId'],_0x5b4fae=_0x1cb15d['getCommentThread'](_0x1284e5);_0x5b4fae&&_0x5b4fae['addComment']({...b(_0x4241d7),'isFromAdapter':!0x0});}),this['listenTo'](_0x32f8ee,'commentUpdated',(_0x1ccf54,{commentThreadId:_0x36033c,commentId:_0x40da70,content:_0x4f3931,attributes:_0x322237})=>{const _0x2e3592=_0x1cb15d['getCommentThread'](_0x36033c);if(_0x2e3592){const _0x3a3abc=_0x2e3592['getComment'](_0x40da70);_0x3a3abc&&_0x3a3abc['update']({'content':_0x4f3931,'attributes':_0x322237,'isFromAdapter':!0x0});}}),this['listenTo'](_0x32f8ee,'commentRemoved',(_0x449d8e,{commentThreadId:_0x21681d,commentId:_0x810607})=>{const _0x342d7c=_0x1cb15d['getCommentThread'](_0x21681d);if(_0x342d7c){const _0x2c10db=_0x342d7c['getComment'](_0x810607);_0x2c10db&&_0x2c10db['remove']({'isFromAdapter':!0x0});}}),await this['_connectService'](_0x452715);}['destroy'](){if(this['context']instanceof _0x4f9ef2){const _0x1f9599=this['context']['config']['get']('collaboration.channelId');this['_terminateService'](_0x1f9599);}}['_terminateService'](_0x39e888){if(!this['_services']['has'](_0x39e888))throw new _0x4bb820('cloudservicescommentsadapter-disconnect-not-exist',null,{'channelId':_0x39e888});this['_getService'](_0x39e888)['disconnect'](),this['_services']['delete'](_0x39e888);}async['reconnect'](){for(const _0x53513a of this['_services']['keys']())await this['_connectService'](_0x53513a);if(this['context']instanceof _0x4f9ef2){const _0x135803=this['context']['config']['get']('collaboration.channelId'),_0x3df634=this['context']['plugins']['get'](i);_0x3df634['unregister'](_0x135803);const _0xffdd60=await this['_services']['get'](_0x135803)['getConnectedSessions']();_0x3df634['register'](_0x135803,_0xffdd60);}}async['_connectService'](_0x979723){const {connection:_0x17b8c6}=this['context']['plugins']['get'](c),_0x529440=this['context']['plugins']['get']('CommentsRepository'),_0x4d6152=this['_services']['get'](_0x979723),_0x197a16=await _0x4d6152['connect'](_0x17b8c6);await this['_fetchMissingUsersForThreads'](_0x197a16);const _0x49d5db=new Set(Array['from'](_0x529440['getCommentThreads']({'channelId':_0x979723}),_0x319f48=>_0x319f48['id']));for(const _0x4fb326 of _0x197a16)_0x4fb326['deletedAt']||_0x49d5db['delete'](_0x4fb326['commentThreadId']);for(const _0x2c8bbc of _0x49d5db)_0x529440['getCommentThread'](_0x2c8bbc)['remove']({'isFromAdapter':!0x0});for(const _0x4e21d6 of _0x197a16){let _0x3b9099=_0x529440['getCommentThread'](_0x4e21d6['commentThreadId']);const {commentThreadId:_0x4af3c6,context:_0x395bb0,attributes:_0x176029,resolvedBy:_0x28ef9f,resolvedAt:_0x26ff0d,unlinkedAt:_0x5cdf58,deletedAt:_0xcbf5e2}=_0x4e21d6;if(_0xcbf5e2)continue;_0x3b9099||(_0x3b9099=_0x529440['addCommentThread']({'channelId':_0x979723,'threadId':_0x4af3c6,'context':_0x395bb0,'attributes':_0x176029||{},'resolvedBy':_0x28ef9f,'resolvedAt':_0x26ff0d,'unlinkedAt':_0x5cdf58,'isFromAdapter':!0x0}));const _0xe03b89=new Set(Array['from'](_0x3b9099['comments'],_0x3383cb=>_0x3383cb['id']));for(const _0x4a26b0 of _0x4e21d6['comments'])_0xe03b89['delete'](_0x4a26b0['commentId']);for(const _0x34897c of _0xe03b89)_0x3b9099['getComment'](_0x34897c)['remove']({'isFromAdapter':!0x0});for(const _0x1dc840 of _0x4e21d6['comments']){const _0x4730bf=_0x3b9099['getComment'](_0x1dc840['commentId']);_0x4730bf?_0x4730bf['content']!==_0x1dc840['content']&&_0x4730bf['update']({'content':_0x1dc840['content'],'isFromAdapter':!0x0}):_0x3b9099['addComment'](Object['assign'](b(_0x1dc840),{'isFromAdapter':!0x0}));}}}['_getService'](_0x14d5f1){if(!this['_services']['has'](_0x14d5f1))throw new _0x4bb820('cloudservicescommentsadapter-service-not-exist',null,{'channelId':_0x14d5f1});return this['_services']['get'](_0x14d5f1);}async['_fetchMissingUsersForThreads'](_0x23d6ba){const _0xdbd6b2=this['context']['plugins']['get'](_0x5e51ff),{connection:_0x3f540b}=this['context']['plugins']['get'](c),_0x14054a=new Set();for(const {resolvedBy:_0x49f305,comments:_0x33a8c9}of _0x23d6ba){_0x49f305&&!_0xdbd6b2['getUser'](_0x49f305)&&_0x14054a['add'](_0x49f305);for(const {userId:_0x2dcc13}of _0x33a8c9)_0xdbd6b2['getUser'](_0x2dcc13)||_0x14054a['add'](_0x2dcc13);}if(0x0===_0x14054a['size'])return;const _0x953ef9=await dt['getMany'](_0x3f540b,Array['from'](_0x14054a));for(const _0x2db98f of _0x953ef9)_0xdbd6b2['getUser'](_0x2db98f['id'])||_0xdbd6b2['addUser'](_0x2db98f);}}async function y(_0x49e612){if('404'!==_0x49e612['code'])throw _0x49e612;}function ut(_0xa15a01){if((_0x21fc15=_0xa15a01)['message']['startsWith']('cloud-services-internal-error:\x20Comments\x20Service\x20is\x20not\x20connected.')||_0x21fc15['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x21fc15['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.'))return new Promise(()=>{});var _0x21fc15;throw _0xa15a01;}function b(_0x3017b6){return{'threadId':_0x3017b6['commentThreadId'],'commentId':_0x3017b6['commentId'],'content':_0x3017b6['content'],'createdAt':_0x3017b6['createdAt'],'authorId':_0x3017b6['userId'],'attributes':_0x3017b6['attributes']||{}};}class f extends _0x2f4ec7{static ['TrackChangesService']=/* #__PURE__ -- @preserve */
27
- ((()=>et)());['_bufferedRequests'];['_trackChangesService'];static get['requires'](){return[a,'TrackChangesEditing',c];}static get['pluginName'](){return'CloudServicesTrackChangesAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x247d85){super(_0x247d85);const _0x2c3e91=this['editor']['config']['get']('collaboration.channelId');this['_bufferedRequests']=new Map(),this['_trackChangesService']=new f['TrackChangesService'](_0x2c3e91);}['init'](){const _0x2ff439=this['editor']['plugins']['get'](c),_0x3fe073=this['editor']['plugins']['get']('TrackChangesEditing');return _0x3fe073['adapter']={'getSuggestion':async _0x3d74f4=>{await this['_waitForServiceReady']();const _0x5196a3=await this['_trackChangesService']['get'](_0x3d74f4)['catch'](w);return await this['_fetchMissingUsersForThreads']([_0x5196a3]),_0x5196a3;},'addSuggestion':async({id:_0x374ff6,type:_0x9a3506,data:_0x534ae,originalSuggestionId:_0x296531,attributes:_0x474479})=>{await this['_waitForServiceReady']();const _0x285db9={'id':_0x374ff6,'type':_0x9a3506,'data':_0x534ae,'originalSuggestionId':_0x296531,'attributes':_0x474479},_0x3f9bc3=await this['_trackChangesService']['add'](_0x374ff6,_0x9a3506,_0x534ae,_0x296531,_0x474479)['catch'](_0x3ae227=>{if(ft(_0x3ae227))return new Promise(_0x554ce3=>{this['_bufferedRequests']['set'](_0x374ff6,{'resolve':_0x554ce3,'suggestionData':_0x285db9});});throw _0x3ae227;});return this['_bufferedRequests']['delete'](_0x374ff6),_0x3f9bc3;},'updateSuggestion':async(_0xb6326a,_0x16b4e2)=>{if(await this['_waitForServiceReady'](),'open'!==_0x16b4e2['state'])return this['_trackChangesService']['update'](_0xb6326a,_0x16b4e2)['catch'](w);}},this['listenTo'](this['_trackChangesService'],'suggestionUpdated',(_0x28e296,_0x5f8ba3)=>{_0x3fe073['hasSuggestion'](_0x5f8ba3['id'])&&(_0x3fe073['getSuggestion'](_0x5f8ba3['id'])['attributes']=_0x5f8ba3['attributes']);}),this['_trackChangesService']['connect'](_0x2ff439['connection'])['then'](_0x41d57b=>(_0x2ff439['addToReconnectionStack'](this),this['_fetchMissingUsersForThreads'](_0x41d57b)['then'](()=>{for(const _0x58cbe3 of _0x41d57b){_0x3fe073['addSuggestionData'](_0x58cbe3)['_saved']=!0x0;}})));}async['reconnect'](){const _0x7740da=this['editor']['plugins']['get']('TrackChangesEditing'),{connection:_0x58d1ef}=this['editor']['plugins']['get'](c),_0x48679b=await this['_trackChangesService']['connect'](_0x58d1ef);await this['_fetchMissingUsersForThreads'](_0x48679b);for(const {suggestionData:_0x524450,resolve:_0x190252}of this['_bufferedRequests']['values']()){let _0x23106d=_0x48679b['find'](_0x2436d7=>_0x2436d7['id']===_0x524450['id']);_0x23106d||(_0x23106d=await this['_trackChangesService']['add'](_0x524450['id'],_0x524450['type'],_0x524450['data'],_0x524450['originalSuggestionId'])),_0x190252(_0x23106d);}for(const _0x40588e of _0x48679b)_0x7740da['hasSuggestion'](_0x40588e['id'])||_0x7740da['addSuggestionData'](_0x40588e);}async['_waitForServiceReady'](){this['_trackChangesService']['isConnected']||await new Promise(_0x495aba=>{this['listenTo'](this['_trackChangesService'],'connected',_0x372354=>{_0x372354['off'](),_0x495aba();});});}async['_fetchMissingUsersForThreads'](_0xfefa33){const _0x5c4118=this['editor']['plugins']['get'](_0x5e51ff),{connection:_0x214175}=this['editor']['plugins']['get'](c),_0xa0412b=new Set();for(const {authorId:_0x30071e}of _0xfefa33)_0x5c4118['getUser'](_0x30071e)||_0xa0412b['add'](_0x30071e);if(0x0===_0xa0412b['size'])return;const _0x27d24e=await dt['getMany'](_0x214175,Array['from'](_0xa0412b));for(const _0x144e5a of _0x27d24e)_0x5c4118['getUser'](_0x144e5a['id'])||_0x5c4118['addUser'](_0x144e5a);}}function w(_0x494234){if(ft(_0x494234))return new Promise(()=>{});throw _0x494234;}function ft(_0x55821f){return _0x55821f['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x55821f['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}class m extends _0x2f4ec7{static get['requires'](){return['Comments',a,n,c];}static get['pluginName'](){return'RealTimeCollaborativeComments';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['init'](){const _0x2df85b=this['editor']['plugins']['get'](c),_0x50a757=this['editor']['plugins']['get']('CommentsEditing'),_0x14bd3f=this['editor']['plugins']['get'](a);return this['editor']['data']['once']('ready',()=>{this['listenTo'](_0x2df85b,'change:state',(_0x1d193a,_0x46fa81,_0x36d658)=>{_0x50a757['isThreadsLoadingPaused']='connected'!==_0x36d658;});}),this['listenTo'](_0x2df85b,'change:state',(_0x34c388,_0x455f4a,_0x16d284)=>{this['editor']['plugins']['get']('CommentsRepository')['switchReadOnly']('connected'!==_0x16d284);}),_0x14bd3f['_setUpService'](this['editor']['config']['get']('collaboration.channelId'));}['destroy'](){this['editor']['plugins']['get'](a)['_terminateService'](this['editor']['config']['get']('collaboration.channelId')),super['destroy']();}}class p extends _0x2f4ec7{static get['requires'](){return[m,f,'TrackChanges'];}static get['pluginName'](){return'RealTimeCollaborativeTrackChanges';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}class u extends _0x2f4ec7{static ['RevisionHistoryService']=/* #__PURE__ -- @preserve */
28
- ((()=>it)());['_lastRequestId'];['_revisionTracker'];['_revisionHistoryService'];['_oldOffset'];static get['requires'](){return[c,l,'RevisionTracker',i,_0x5e51ff];}static get['pluginName'](){return'CloudServicesRevisionHistoryAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x22d6fa){super(_0x22d6fa);const _0x1298d9=this['editor']['config']['get']('collaboration.channelId');this['_lastRequestId']=null,this['_revisionTracker']=this['editor']['plugins']['get']('RevisionTracker'),this['_revisionHistoryService']=new u['RevisionHistoryService'](_0x1298d9);}async['init'](){const _0x23a5be=this['editor']['plugins']['get'](l),_0x386f3c=_0x23a5be['serverHistory'],_0x1cfd29=this['editor']['plugins']['get'](c);this['_revisionTracker']['setSource']({'history':_0x386f3c,'getLatestVersion':()=>this['_getLatestVersion'](),'getCurrentRevisionId':()=>_0x23a5be['sessionId']});const _0x3ed48f=this['editor']['config']['get']('cloudServices.bundleVersion')||nt,_0x53aed7=await tt['isBundleUploaded'](_0x1cfd29['connection'],_0x3ed48f);this['_revisionTracker']['adapter']={'getRevision':async({revisionId:_0x33bef9})=>(await this['_waitForServiceReady'](),await this['_revisionHistoryService']['getRevision'](_0x33bef9)),'updateRevisions':async _0x113ce6=>{await this['_waitForServiceReady']();const _0xb743d0=this['_revisionTracker']['currentRevision'];if(_0x53aed7&&0x1===_0x113ce6['length']&&_0x113ce6[0x0]['id']===_0xb743d0['id'])return _0x113ce6;for(const _0x2df726 of _0x113ce6)_0x2df726['id']===_0xb743d0['id']&&(_0x2df726['isEmptyCurrent']=_0x2df726['fromVersion']===_0x2df726['toVersion']);return this['_revisionHistoryService']['updateRevisions'](_0x113ce6,this['_lastRequestId'])['then'](_0x171727=>(this['_lastRequestId']=_0x171727,_0x113ce6))['catch'](_0x5d9432=>{if(st(_0x5d9432)||'400'===_0x5d9432['code']&&void 0x0!==_0x5d9432['data']['wrongRequestId']){for(const _0x151a63 of _0x113ce6){!this['_revisionTracker']['repository']['getRevision'](_0x151a63['id'])||this['_revisionTracker']['_bufferUpdate'](_0x151a63['id'],_0x151a63,!0x1);}if(st(_0x5d9432))throw _0x5d9432;return _0x113ce6;}throw _0x5d9432;});}},this['listenTo'](this['_revisionHistoryService'],'revisionsUpdated',(_0xebe53f,{revisionsData:_0x1d2304,requestId:_0x4f8c0b})=>{Math['max'](..._0x1d2304['map'](_0x713f29=>_0x713f29['toVersion']))>this['_getLatestVersionFromServerOperations']()-0x1?this['_getLatestVersion']()['then'](()=>{this['_handleRevisionsUpdate'](_0x1d2304,_0x4f8c0b);}):this['_handleRevisionsUpdate'](_0x1d2304,_0x4f8c0b);});const {revisions:_0x4efedd,requestId:_0x381946}=await this['_revisionHistoryService']['connect'](_0x1cfd29['connection']);_0x1cfd29['addToReconnectionStack'](this),this['_lastRequestId']=_0x381946,await this['_fetchMissingUsers'](_0x4efedd);for(const _0x5e00f7 of _0x4efedd)this['_revisionTracker']['addRevisionData'](_0x5e00f7);this['listenTo'](_0x23a5be,'change:_isConnected',(_0x2fa337,_0x1b3f38,_0xe0668)=>{_0xe0668&&(this['_oldOffset']=_0x23a5be['_offset'],_0x2fa337['off']());}),this['_revisionTracker']['bind']('isEnabled')['to'](_0x1cfd29,'state',_0x2397c8=>_0x2397c8===_0x42944f['CONNECTED']);}async['reconnect'](){const _0x277534=this['editor']['plugins']['get'](c),_0x150eb9=this['editor']['plugins']['get'](l),_0x54ab0a=async()=>{const _0x52a5d6=this['_revisionTracker']['currentRevision'],_0xe4b2fc=_0x52a5d6['id'],_0x389108=_0xe4b2fc!==_0x150eb9['sessionId'];if(_0x389108){const _0x555f53=_0x150eb9['_offset']-this['_oldOffset'],_0x2978e8=this['_getLatestVersionFromServerOperations']();this['_revisionTracker']['_revisionDataBuilder']['reInit']();if(_0x52a5d6['toVersion']+_0x555f53!==_0x2978e8){const _0x27bd81=_0x52a5d6['fromVersion']+_0x555f53,_0x8907d0=this['editor']['plugins']['get'](_0x5e51ff),_0x209563=this['_revisionTracker']['buildRevisionData']({'revision':_0x52a5d6,'from':_0x27bd81,'to':_0x2978e8});_0x209563['id']=_0x52a5d6['id'];const _0x15e418=_0x209563['authorsIds']['map'](_0x2db170=>_0x8907d0['getUser'](_0x2db170));_0x52a5d6['_update']({..._0x209563,'authors':_0x15e418},!0x0),this['_revisionTracker']['_bufferUpdate'](_0x52a5d6['id'],_0x209563,!0x0);}this['_revisionTracker']['_startingVersion']=_0x2978e8,(_0x52a5d6['toVersion']===_0x52a5d6['fromVersion']&&!this['_revisionTracker']['_bufferedUpdates']['has'](_0xe4b2fc)&&this['_revisionTracker']['repository']['_revisions']['remove'](_0xe4b2fc),this['_revisionTracker']['_createCurrentRevision'](_0x2978e8));}const {revisions:_0x19d144,requestId:_0x14b21f}=await this['_revisionHistoryService']['reconnect'](_0x277534['connection'],this['_lastRequestId']);_0x389108&&_0x19d144['length']>0x0?_0x150eb9['_handleReconnectionError']():(await this['_fetchMissingUsers'](_0x19d144),this['_handleRevisionsUpdate'](_0x19d144,_0x14b21f),this['_revisionTracker']['sendBufferedUpdates']());};return _0x150eb9['_isConnected']?_0x54ab0a():new Promise((_0x1fd695,_0x332b44)=>{_0x150eb9['once']('change:_isConnected',()=>{_0x54ab0a()['then'](_0x1fd695)['catch'](_0x332b44);});});}['destroy'](){super['destroy']();}async['_waitForServiceReady'](){this['_revisionHistoryService']['isConnected']||await new Promise(_0x39b1a0=>{this['listenTo'](this['_revisionHistoryService'],'connected',_0x40e236=>{_0x40e236['off'](),_0x39b1a0();});});}['_getLatestVersionFromServerOperations'](){const _0x3f08b0=this['editor']['plugins']['get'](l)['serverHistory']['getOperations']()['reverse']();for(const _0x5eb32a of _0x3f08b0)if('marker'!==_0x5eb32a['type']||_0x5eb32a['affectsData'])return _0x5eb32a['baseVersion']+0x1;}['_getLatestVersion'](){const _0x812ed7=this['editor']['plugins']['get'](l);return new Promise(_0x1a18b5=>{_0x812ed7['_isPendingUpdate']?_0x812ed7['once']('change:_isPendingUpdate',()=>{_0x1a18b5(this['_getLatestVersionFromServerOperations']());}):_0x1a18b5(this['_getLatestVersionFromServerOperations']());});}['_handleRevisionsUpdate'](_0xa9dee6,_0x429d5c){const _0x57844e=this['_revisionTracker']['repository'];this['_lastRequestId']=_0x429d5c;for(const _0x2cc27d of _0xa9dee6){const _0x4693e6=_0x57844e['getRevision'](_0x2cc27d['id']);if(_0x4693e6){if((_0x2cc27d['fromVersion']||_0x2cc27d['toVersion'])&&(_0x2cc27d['diffData']=null),_0x4693e6===this['_revisionTracker']['currentRevision']){const _0x1bb018=Math['max'](_0x4693e6['toVersion'],_0x2cc27d['toVersion']),_0x57f084=Math['max'](_0x4693e6['fromVersion'],_0x2cc27d['fromVersion']);let _0x6eb1d2;_0x4693e6['toVersion']===_0x2cc27d['toVersion']&&_0x4693e6['fromVersion']===_0x2cc27d['fromVersion']?(_0x6eb1d2=!0x0,this['_preventResendingRevisionData'](_0x2cc27d)):_0x2cc27d['toVersion']===_0x1bb018&&_0x2cc27d['fromVersion']===_0x57f084?_0x6eb1d2=!0x1:(_0x4693e6['toVersion']===_0x1bb018&&_0x4693e6['fromVersion']===_0x57f084||this['_fixRevision']({'revision':_0x4693e6,'from':_0x57f084,'to':_0x1bb018}),_0x6eb1d2=!0x0),_0x6eb1d2&&(delete _0x2cc27d['fromVersion'],delete _0x2cc27d['toVersion'],delete _0x2cc27d['diffData'],delete _0x2cc27d['createdAt'],delete _0x2cc27d['authorsIds']);}this['_revisionTracker']['setRevisionData'](_0x2cc27d),this['_preventResendingRevisionData'](_0x2cc27d);}else this['_revisionTracker']['addRevisionData'](_0x2cc27d);}const _0x45ed48=_0x57844e['getRevisions']();_0x45ed48['reverse']();for(let _0x594521=0x0;_0x594521<_0x45ed48['length']-0x1;_0x594521++){const _0x12f033=_0x45ed48[_0x594521],_0x2ce9f1=_0x45ed48[_0x594521+0x1];if(_0x12f033['fromVersion']<_0x2ce9f1['toVersion']){const _0x74f36e=_0x2ce9f1['toVersion'],_0x185c3c=Math['max'](_0x74f36e,_0x12f033['toVersion']);this['_fixRevision']({'revision':_0x12f033,'from':_0x74f36e,'to':_0x185c3c});}}}['_fixRevision']({revision:_0x43a217,from:_0x2de269,to:_0x5907df}={}){const _0x3b40ac=this['editor']['plugins']['get'](_0x5e51ff),_0x53907d=this['_revisionTracker']['buildRevisionData']({'revision':_0x43a217,'from':_0x2de269,'to':_0x5907df});_0x53907d['authors']=_0x53907d['authorsIds']['map'](_0x45d85b=>_0x3b40ac['getUser'](_0x45d85b)),_0x43a217['_update'](_0x53907d);}['_preventResendingRevisionData'](_0x512cff){const _0xb48dd6={};_0xb48dd6['id']=_0x512cff['id'];for(const _0xccb03f of Object['keys'](_0x512cff))'id'!==_0xccb03f&&(_0xb48dd6[_0xccb03f]=void 0x0);this['_revisionTracker']['_bufferUpdate'](_0xb48dd6['id'],_0xb48dd6,!0x0);}async['_fetchMissingUsers'](_0x201bb7){const _0x44a9c8=this['editor']['plugins']['get'](_0x5e51ff),{connection:_0x4cda27}=this['editor']['plugins']['get'](c),_0x2ffa8e=new Set();for(const _0x5c3135 of _0x201bb7){for(const _0x18a413 of _0x5c3135['authorsIds'])_0x4fbe5d(_0x18a413);_0x5c3135['creatorId']&&_0x4fbe5d(_0x5c3135['creatorId']);}if(0x0===_0x2ffa8e['size'])return;const _0x5dca43=await dt['getMany'](_0x4cda27,Array['from'](_0x2ffa8e));for(const _0x27a04f of _0x5dca43)_0x44a9c8['getUser'](_0x27a04f['id'])||_0x44a9c8['addUser'](_0x27a04f);function _0x4fbe5d(_0x5d5d6a){_0x44a9c8['getUser'](_0x5d5d6a)||_0x2ffa8e['add'](_0x5d5d6a);}}}function st(_0x51e0d8){return _0x51e0d8['message']['startsWith']('cloud-services-internal-error:\x20Revision\x20History\x20Service\x20is\x20not\x20connected.')||_0x51e0d8['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x51e0d8['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}class g extends _0x2f4ec7{static get['requires'](){return['RevisionHistory',u,n];}static get['pluginName'](){return'RealTimeCollaborativeRevisionHistory';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}class ts extends _0x4a36b3{constructor(_0x509190){super(_0x509190);const _0x5e99f1=this['bindTemplate'];this['set']('usersCount',0x0),this['set']('isHidden',!0x0),this['setTemplate']({'tag':'div','attributes':{'class':['ck','ck-presence-list__counter',_0x5e99f1['if']('isHidden','ck-presence-list__counter--hidden')]},'children':[{'text':_0x5e99f1['to']('usersCount',_0x53da39=>q(_0x509190,'CONNECTED_USERS',_0x53da39))}]});}}class es extends _0x4a36b3{['items'];['keystrokes'];constructor(_0x26f530){super(_0x26f530);const _0x401480=this['bindTemplate'];this['items']=this['createCollection'](),this['keystrokes']=new _0x5393f7(),this['set']({'hasPopup':!0x1,'isExpanded':!0x1}),this['setTemplate']({'tag':'div','attributes':{'aria-haspopup':_0x401480['if']('hasPopup'),'aria-expanded':_0x401480['to']('isExpanded',_0x51be11=>this['hasPopup']&&String(_0x51be11)),'aria-label':_0x401480['to']('hasPopup',_0x42d3cf=>q(_0x26f530,_0x42d3cf?'Collapsed\x20connected\x20users\x20list\x20(press\x20ENTER\x20to\x20open\x20it)':'Connected\x20users\x20list')),'role':'list','tabindex':_0x401480['to']('hasPopup',_0x3c9cd6=>!!_0x3c9cd6&&0x0),'class':['ck','ck-presence-list__list']},'children':this['items'],'on':{'click':_0x401480['to'](()=>this['fire']('execute'))}}),this['on']('change:hasPopup',(_0x584dae,_0xb9e711,_0x42cc5d)=>{this['element']&&(_0x42cc5d?this['element']['setAttribute']('aria-expanded',String(this['isExpanded'])):this['element']['removeAttribute']('aria-expanded'));});}['focus'](){this['element']['focus']();}['render'](){super['render'](),this['keystrokes']['listenTo'](this['element']);}}class _ extends _0x4a36b3{['counterView'];['inlineListView'];constructor(_0x417ee4){super(_0x417ee4);const _0x20c9ed=this['bindTemplate'];this['set']('isCollapsed',!0x0),this['counterView']=new ts(this['locale']),this['inlineListView']=new es(_0x417ee4),this['inlineListView']['bind']('hasPopup')['to'](this,'isCollapsed'),this['listenTo'](this['inlineListView']['items'],'change',()=>{for(const _0x1c659c of this['inlineListView']['items'])_0x1c659c['tooltipPosition']='s';this['inlineListView']['items']['first']&&(this['inlineListView']['items']['first']['tooltipPosition']='se');}),this['setTemplate']({'tag':'div','attributes':{'class':['ck','ck-presence-list','ck-reset','ck-rounded-corners',_0x20c9ed['if']('isCollapsed','ck-presence-list--collapsed')]},'children':[this['counterView'],this['inlineListView']]});}}class M extends _0x4a36b3{['listWrapperView'];constructor(_0x2c5f36,_0x2a3e0f){super(_0x2c5f36),this['listWrapperView']=new mt(_0x2c5f36,_0x2a3e0f),this['setTemplate']({'tag':'div','attributes':{'tabindex':-0x1,'role':'application','class':['ck','ck-presence-list__dropdown-list'],'aria-label':q(_0x2c5f36,'Connected\x20users\x20list\x20dropdown\x20menu')},'children':[this['listWrapperView']]});}}class mt extends _0x5b5e13{constructor(_0x5310aa,_0x3abe44){super(_0x5310aa);const _0x3fccd7=this['bindTemplate'];this['set']('_isScrollable',!0x1),this['setTemplate']({'tag':_0x3abe44?'div':'ul','attributes':{'class':['ck','ck-reset','ck-list','ck-presence-list__dropdown-list-wrapper',_0x3fccd7['if']('_isScrollable','ck-presence-list__dropdown-list-wrapper_scrollable')],'role':_0x3fccd7['to']('role'),'aria-label':_0x3fccd7['to']('ariaLabel'),'aria-labelledby':_0x3fccd7['to']('ariaLabelledBy')},'children':this['items']}),this['listenTo'](_0x11ae4d['window'],'resize',()=>this['checkIfScrollable']()),this['items']['on']('change',()=>this['checkIfScrollable']());}['render'](){super['render'](),this['checkIfScrollable']();}['checkIfScrollable'](){const _0x501575=this['element'];_0x501575&&(this['_isScrollable']=Math['max'](_0x501575['scrollHeight'],_0x501575['clientHeight'])>0.8*window['innerHeight']);}}class E extends rt{['userView'];constructor(_0x1845dd,_0x1c69dd,_0x870c9a){super(_0x1845dd);const _0x4bd903=this['bindTemplate'];this['userView']=new ct(_0x1845dd,_0x1c69dd);const _0x2d655e={'tag':'li','attributes':{'class':['ck','ck-presence-list__dropdown-list-item'],'tabindex':-0x1,'role':'presentation','aria-label':_0x1c69dd['name']},'children':[this['userView'],{'tag':'span','attributes':{'class':['ck','ck-user__full-name']},'children':[{'text':_0x1c69dd['name']}]},{'tag':'span','attributes':{'class':['ck','ck-presence-list__marker',_0x1c69dd['color']['getBackgroundColorClass']()],'aria-hidden':'true'}}]};_0x870c9a&&(_0x2d655e['tag']='button',_0x2d655e['on']={'click':_0x4bd903['to'](()=>this['fire']('execute'))}),this['setTemplate'](_0x2d655e);}['focus'](){this['element']['focus']();}}class T extends _0x4a36b3{['userView'];['markerView'];constructor(_0x27b1b3,_0xcecb0d,_0x12eb16){super(_0x27b1b3);const _0x38a948=this['bindTemplate'];this['set']('isFocusable',!0x1),this['set']('hasTooltip',!0x0),this['set']('tooltipPosition',''),this['userView']=new ct(_0x27b1b3,_0xcecb0d),this['markerView']=new at(_0x27b1b3,_0xcecb0d);const _0x124d6f=new ot(_0x27b1b3);_0x124d6f['template']['tag']='span',_0x124d6f['text']=_0xcecb0d['name'];const _0x2cfbba={'tag':'div','attributes':{'class':['ck','ck-presence-list__list-item'],'role':'listitem','tabindex':_0x38a948['to']('isFocusable',_0x31906a=>!!_0x31906a&&0x0),'aria-labelledby':_0x124d6f['id'],'data-cke-tooltip-text':this['userView']['name'],'data-cke-tooltip-position':_0x38a948['to']('tooltipPosition'),'data-cke-tooltip-disabled':_0x38a948['to']('hasTooltip',_0x25d187=>!_0x25d187),'data-cke-tooltip-class':'ck-presence-list__list-item__tooltip'},'children':[this['userView'],this['markerView'],_0x124d6f]};_0x12eb16&&(_0x2cfbba['tag']='button',_0x2cfbba['on']={'click':_0x38a948['to'](()=>this['fire']('execute'))}),this['setTemplate'](_0x2cfbba);}}class at extends _0x4a36b3{constructor(_0x5cf8c3,_0x3823af){super(_0x5cf8c3),this['setTemplate']({'tag':'span','attributes':{'class':['ck','ck-presence-list__marker',_0x3823af['color']['getBackgroundColorClass']()],'aria-hidden':'true'}});}}const D={'collapseAt':0x6,'displayMe':!0x0};class r extends _0x5a8039{['currentDisplayedUsers'];['balloonPanelView'];['view'];['presenceDropdownView'];['_bodyCollection']=null;constructor(_0x10e118){super(_0x10e118),this['context']['config']['define']('presenceList',D);const _0x328456=_0x10e118['config']['get']('presenceList.collapseAt');if('number'!=typeof _0x328456)throw new _0x4bb820('presencelist-collapseat-invalid-format',this);if(_0x328456<0x1)throw new _0x4bb820('presencelist-collapseat-invalid-format',this);this['_allConnectedUsers']=this['context']['plugins']['get'](i)['allConnectedUsers'],this['set']('usersCount',0x0),this['currentDisplayedUsers']=new _0x3fd87a(),this['balloonPanelView']=new _0xd0549f(),this['balloonPanelView']['class']='ck\x20ck-presence-list__balloon',this['view']=this['_createView'](),this['presenceDropdownView']=void 0x0;}static get['requires'](){return[i];}['init'](){for(const _0x4ea7f5 of this['_allConnectedUsers'])this['_handleUserAdd'](_0x4ea7f5);this['listenTo'](this['_allConnectedUsers'],'add',(_0x17b3f4,_0x3281db)=>{this['_handleUserAdd'](_0x3281db);}),this['listenTo'](this['_allConnectedUsers'],'remove',(_0x289237,_0x2115f4)=>{this['_handleUserRemove'](_0x2115f4);});}['_createView'](){const _0x42cd9c=this['context'],_0x425af9=new _(this['context']['locale']),_0x40ffe5=this['balloonPanelView'];if(!_0x77664d(_0x42cd9c['config']['get']('presenceList.container')))throw new _0x4bb820('presencelist-missing-container',this);return _0x425af9['counterView']['bind']('usersCount')['to'](this),_0x425af9['bind']('isCollapsed')['to'](this,'usersCount',_0x14a05b=>{const {collapseAt:_0x12da3b,displayMe:_0x65b443}=_0x42cd9c['config']['get']('presenceList'),_0x46f9d5=_0x14a05b>=_0x12da3b;return _0x425af9['counterView']['isHidden']=!(0x1==_0x14a05b&&_0x65b443||_0x46f9d5),_0x46f9d5||this['hideDropdown'](),_0x46f9d5;}),_0x425af9['inlineListView']['items']['bindTo'](this['currentDisplayedUsers'])['using'](_0x9a4c0e=>{const _0x2cad8e=_0x42cd9c['config']['get']('presenceList'),_0x103f40=new T(_0x42cd9c['locale'],_0x9a4c0e,!!_0x2cad8e['onClick']);return _0x103f40['bind']('hasTooltip')['to'](_0x425af9,'isCollapsed',_0x15f385=>!_0x15f385),_0x103f40['bind']('isFocusable')['to'](_0x425af9,'isCollapsed',_0x439acd=>!_0x439acd),_0x2cad8e['onClick']&&this['listenTo'](_0x103f40,'execute',()=>{this['view']['isCollapsed']||_0x2cad8e['onClick'](_0x9a4c0e,_0x103f40['element']);}),_0x103f40;}),this['listenTo'](_0x425af9['inlineListView'],'execute',()=>{this['presenceDropdownView']?this['hideDropdown']():this['view']['isCollapsed']&&this['showDropdown']();}),_0x425af9['inlineListView']['keystrokes']['set']('Enter',(_0x371b61,_0x483ab0)=>{this['view']['isCollapsed']&&(this['showDropdown'](),_0x483ab0());}),_0x425af9['render'](),_0x40ffe5['render'](),_0x17dab6({'emitter':_0x425af9,'activator':()=>_0x40ffe5['isVisible'],'contextElements':[_0x40ffe5['element'],_0x425af9['inlineListView']['element']],'callback':()=>this['hideDropdown']()}),_0x42cd9c['config']['get']('presenceList.container')['appendChild'](_0x425af9['element']),this['_bodyCollection']=new _0x24f1cb(this['context']['locale']),this['_bodyCollection']['attachToDom'](),this['_bodyCollection']['add'](this['balloonPanelView']),_0x425af9;}['_handleUserAdd'](_0x30bbfe){if(!this['context']['config']['get']('presenceList.displayMe')&&_0x30bbfe['isMe'])return;const _0x2c6191=this['context']['config']['get']('presenceList.collapseAt')-0x1;this['usersCount']++,this['currentDisplayedUsers']['length']==_0x2c6191&&this['currentDisplayedUsers']['length']>0x1&&this['currentDisplayedUsers']['remove'](0x1);const _0x1094aa=_0x30bbfe['isMe']?0x0:this['currentDisplayedUsers']['length'];this['currentDisplayedUsers']['add'](_0x30bbfe,_0x1094aa);}['_handleUserRemove'](_0x24ebcf){if(this['usersCount']--,this['currentDisplayedUsers']['get'](_0x24ebcf['id'])&&(this['currentDisplayedUsers']['remove'](_0x24ebcf['id']),this['currentDisplayedUsers']['length']<this['usersCount'])){for(const _0x3f4e0f of Array['from'](this['_allConnectedUsers'])['reverse']())if(!this['currentDisplayedUsers']['get'](_0x3f4e0f['id']))return void this['currentDisplayedUsers']['add'](_0x3f4e0f,Math['min'](this['currentDisplayedUsers']['length'],0x1));}}['showDropdown'](){if(this['presenceDropdownView'])return;const _0x10742c=this['context']['config']['get']('presenceList');this['presenceDropdownView']=new M(this['context']['locale'],!!_0x10742c['onClick']),this['view']['inlineListView']['isExpanded']=!0x0;const {listWrapperView:_0x279614}=this['presenceDropdownView'];_0x279614['items']['bindTo'](this['_allConnectedUsers'])['using'](_0x3f08d7=>{if(!_0x10742c['displayMe']&&_0x3f08d7['isMe'])return null;const _0xee9584=new E(this['context']['locale'],_0x3f08d7,!!_0x10742c['onClick']);return _0x10742c['onClick']&&this['listenTo'](_0xee9584,'execute',()=>{_0x10742c['onClick'](_0x3f08d7,_0xee9584['element']);}),_0xee9584;}),this['balloonPanelView']['content']['add'](this['presenceDropdownView']),this['balloonPanelView']['pin']({'target':this['view']['inlineListView']['element']}),_0x279614['focus'](),_0x279614['checkIfScrollable']();const _0x4723a2=(_0x13045d,_0x3cf56f)=>{this['hideDropdown'](),this['view']['inlineListView']['focus'](),_0x3cf56f();};_0x279614['keystrokes']['set']('Esc',_0x4723a2),_0x279614['keystrokes']['set']('Shift+Tab',_0x4723a2),_0x279614['keystrokes']['set']('Tab',(_0x17b77a,_0x3d1855)=>{!function(_0x2f177f){const _0x4731d9=['a','button','input','select','textarea','[tabindex]','[contenteditable]']['map'](_0x4841f3=>_0x4841f3+':not([disabled]):not([tabindex=\x22-1\x22])')['join'](','),_0x26866d=[...document['body']['querySelectorAll'](_0x4731d9)]['filter'](_0x38f9fb=>_0x38f9fb===document['activeElement']||_0x38f9fb['offsetWidth']+_0x38f9fb['offsetHeight']>0x0)['sort']((_0x4deb64,_0x3da990)=>(_0x4deb64['tabIndex']||0x0)-(_0x3da990['tabIndex']||0x0)),_0x99bef8=_0x26866d['indexOf'](_0x2f177f),_0x155336=_0x26866d[(_0x99bef8+0x1)%_0x26866d['length']];_0x155336&&_0x155336['focus']();}(this['view']['element']),this['hideDropdown'](),_0x3d1855();}),_0x279614['focusTracker']['add'](this['view']['element']),_0x279614['focusTracker']['on']('change:isFocused',(_0x5cdacd,_0x12805a,_0x23751d)=>{_0x23751d||this['hideDropdown']();});}['hideDropdown'](){this['presenceDropdownView']&&(this['view']['inlineListView']['isExpanded']=!0x1,this['balloonPanelView']['unpin'](),this['balloonPanelView']['content']['remove'](this['presenceDropdownView']),this['presenceDropdownView']['destroy'](),this['presenceDropdownView']=void 0x0);}['destroy'](){super['destroy'](),this['view']&&this['view']['isRendered']&&this['view']['destroy'](),this['_bodyCollection']&&(this['_bodyCollection']['detachFromDom'](),this['_bodyCollection']['destroy'](),this['_bodyCollection']=null);}}class s extends _0x5a8039{static get['requires'](){return[i,r];}static get['pluginName'](){return'PresenceList';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}export{a as CloudServicesCommentsAdapter,u as CloudServicesRevisionHistoryAdapter,f as CloudServicesTrackChangesAdapter,s as PresenceList,l as RealTimeCollaborationClient,m as RealTimeCollaborativeComments,n as RealTimeCollaborativeEditing,g as RealTimeCollaborativeRevisionHistory,p as RealTimeCollaborativeTrackChanges};
23
+ import{ContextPlugin as _0x5b046d,Plugin as _0x3b81de,PendingActions as _0x5c30be,Context as _0x285205}from'@ckeditor/ckeditor5-core/dist/index.js';import{DomEmitterMixin as _0x1d1d21,CKEditorError as _0x3d0c02,Collection as _0x3c61b0,global as _0x5a383f,version as nt,uid as _0x4cacba,KeystrokeHandler as _0x57d7ba}from'@ckeditor/ckeditor5-utils/dist/index.js';import{Notification as _0x580b9,View as _0x57c216,ListView as _0x121aff,ListItemView as rt,LabelView as ot,BalloonPanelView as _0x2e4728,clickOutsideHandler as _0x18b487,BodyCollection as _0x2000c1}from'@ckeditor/ckeditor5-ui/dist/index.js';import{LiveRange as ht,History as _0x358a9d,NoOperation as _0x2334c7,InsertOperation as _0x19d019,MarkerOperation as _0x21b767,RootAttributeOperation as _0x3b1d5d,transformSets as _0x11f3c8,OperationFactory as _0x38f585}from'@ckeditor/ckeditor5-engine/dist/index.js';import{WebSocketGateway as lt,WEB_SOCKET_GATEWAY_STATES as _0x597b3f,CollaborativeEditingService as _0x2ef4b7,User as dt,CommentsService as _0x2228f5,TrackChangesService as et,RevisionHistoryService as it,EditorService as tt}from'@ckeditor/ckeditor-cloud-services-collaboration/dist/index.js';import{Users as _0x305f5d,UserView as ct}from'ckeditor5-collaboration/dist/index.js';import{Compressor as _0x263294}from'@ckeditor/ckeditor5-operations-compressor/dist/index.js';import{isElement as _0x4c3572}from'lodash-es';class c extends _0x5b046d{static ['WebSocketGateway']=/* #__PURE__ -- @preserve */
24
+ ((()=>lt)());static ['initialReconnectionInterval']=0x3e8;['connection'];['_reconnectionStack'];['_shouldPluginsReconnect'];['_domEmitter'];static get['requires'](){return['CloudServices',_0x580b9];}static get['pluginName'](){return'WebSocketGateway';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0xee19bb){super(_0xee19bb),this['set']('state',_0x597b3f['CONNECTED']),this['set']('_isBrowserOffline',!0x1),this['_reconnectionStack']=new Set(),this['_shouldPluginsReconnect']=!0x1,this['_domEmitter']=Object['create'](_0x1d1d21);}['init'](){const _0x3904a6=this['context'],_0x5051d1=_0x3904a6['plugins']['get']('CloudServices'),_0x23b951=_0x3904a6['plugins']['get'](_0x580b9);if(!_0x5051d1['token'])throw new _0x3d0c02('websocketgateway-missing-token',this);if(!_0x5051d1['webSocketUrl'])throw new _0x3d0c02('websocketgateway-missing-websocket-url',this);return this['_domEmitter']['listenTo'](window,'offline',()=>this['_isBrowserOffline']=!0x0),this['_domEmitter']['listenTo'](window,'online',()=>this['_isBrowserOffline']=!0x1),this['context']['config']['define']('cloudServices.connectionTimeout',0xa),this['context']['config']['define']('cloudServices.requestTimeout',0x14),c['WebSocketGateway']['connect'](_0x5051d1['token'],_0x5051d1['webSocketUrl'],{'timeout':0x3e8*this['context']['config']['get']('cloudServices.connectionTimeout'),'requestTimeout':0x3e8*this['context']['config']['get']('cloudServices.requestTimeout')})['then'](_0x39c10a=>{if(this['connection']=_0x39c10a,this['bind']('state')['to'](_0x39c10a,'state',this,'_isBrowserOffline',(_0x351355,_0x43a799)=>('connected'!==_0x351355&&(this['_shouldPluginsReconnect']=!0x0),_0x43a799||_0x351355!==_0x597b3f['CONNECTED']?_0x597b3f['DISCONNECTED']:this['state']==_0x597b3f['DISCONNECTED']&&this['_shouldPluginsReconnect']?(this['_shouldPluginsReconnect']=!0x1,this['_reconnect'](),_0x597b3f['CONNECTING']):_0x597b3f['CONNECTED'])),this['connection']['on']('error',(_0x1d3eba,_0x18b182)=>{if('limitExceeded'!==_0x18b182['code'])throw console['error'](_0x18b182),new _0x3d0c02('cloudservices-init',null,{'originalError':_0x18b182});_0x23b951['showWarning']('The\x20limit\x20of\x20maximum\x20concurrent\x20connections\x20that\x20the\x20collaboration\x20server\x20can\x20handle\x20has\x20been\x20reached.\x20Try\x20opening\x20the\x20document\x20again\x20in\x20a\x20few\x20minutes.\x20Please\x20contact\x20your\x20system\x20administrator\x20if\x20the\x20problem\x20persists.',{'title':'Connected\x20users\x20limit\x20exceeded','namespace':'real-time-collaboration'});}),!_0x39c10a['me'])return new Promise(_0x4eccb1=>_0x39c10a['on']('change:me',_0x4eccb1));})['catch'](_0x542609=>{throw console['error'](_0x542609),new _0x3d0c02('cloudservices-init',null,{'originalError':_0x542609});});}['addToReconnectionStack'](_0x2e8e72){if('function'!=typeof _0x2e8e72['reconnect'])throw new _0x3d0c02('websocketgateway-invalid-plugin-interface',this);if(this['isInReconnectionStack'](_0x2e8e72))throw new _0x3d0c02('websocketgateway-plugin-already-registered',this,{'name':_0x2e8e72['constructor']['pluginName']});this['_reconnectionStack']['add'](_0x2e8e72);}['removeFromReconnectionStack'](_0x567200){this['_reconnectionStack']['delete'](_0x567200);}['isInReconnectionStack'](_0x5c746b){return this['_reconnectionStack']['has'](_0x5c746b);}['_reconnect'](){return this['connection']['reconnect']()['then'](()=>Promise['all'](Array['from'](this['_reconnectionStack'],_0x10544d=>_0x10544d['reconnect']())))['then'](()=>this['state']=_0x597b3f['CONNECTED'])['catch'](_0x20ab9c=>{throw console['error'](_0x20ab9c),new _0x3d0c02('cloudservices-reconnection-error',this['context']);});}['destroy'](){this['connection']&&this['connection']['disconnect'](),this['state']=_0x597b3f['DISCONNECTED'],this['_domEmitter']['stopListening'](),super['destroy']();}}class i extends _0x5b046d{['channelSessions'];['channelConnectedUsers'];['allConnectedUsers'];['_registeredSessions'];['_uniqueUsersCount'];['_users'];static get['pluginName'](){return'Sessions';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}static get['requires'](){return[c,_0x305f5d];}constructor(_0x89fe37){super(_0x89fe37),this['channelSessions']=new Map(),this['channelConnectedUsers']=new Map(),this['allConnectedUsers']=new _0x3c61b0(),this['_registeredSessions']=new Map(),this['_uniqueUsersCount']=0x0,this['_users']=this['context']['plugins']['get'](_0x305f5d);}['init'](){const _0x3ec710=this['context']['plugins']['get'](c);this['listenTo'](_0x3ec710,'change:state',(_0x523103,_0x1ca620,_0x345f99)=>{if('connected'!==_0x345f99)this['channelSessions']['forEach'](_0xeb6ff=>_0xeb6ff['clear']()),this['channelConnectedUsers']['forEach'](_0x4c9f66=>_0x4c9f66['clear']()),this['allConnectedUsers']['clear']();else{for(const [_0x4be1f3,_0x5a5f2c]of this['_registeredSessions'])for(const _0x3ae398 of _0x5a5f2c)this['_handleSessionAdd'](_0x4be1f3,_0x3ae398);}}),this['_createUser'](_0x3ec710['connection']['me'],!0x0);}['register'](_0x3e9b39,_0x58b8f7){if(this['_registeredSessions']['has'](_0x3e9b39))throw new _0x3d0c02('sessions-register-already-registered',null,{'channelId':_0x3e9b39});this['_registeredSessions']['set'](_0x3e9b39,_0x58b8f7),this['channelSessions']['set'](_0x3e9b39,new _0x3c61b0()),this['channelConnectedUsers']['set'](_0x3e9b39,new _0x3c61b0()),this['listenTo'](_0x58b8f7,'add',(_0x257718,_0x25ec2f)=>this['_handleSessionAdd'](_0x3e9b39,_0x25ec2f)),this['listenTo'](_0x58b8f7,'remove',(_0x217807,_0x33df66)=>this['_handleSessionRemove'](_0x3e9b39,_0x33df66));for(const _0x58ebe1 of _0x58b8f7)this['_handleSessionAdd'](_0x3e9b39,_0x58ebe1);}['unregister'](_0xc49df8){if(!this['_registeredSessions']['has'](_0xc49df8))throw new _0x3d0c02('sessions-unregister-not-exist',null,{'channelId':_0xc49df8});const _0x32cac3=this['_registeredSessions']['get'](_0xc49df8);this['stopListening'](_0x32cac3);for(const _0x104cea of _0x32cac3)'connected'===this['context']['plugins']['get'](c)['state']&&this['_handleSessionRemove'](_0xc49df8,_0x104cea);this['_registeredSessions']['delete'](_0xc49df8),this['channelSessions']['delete'](_0xc49df8),this['channelConnectedUsers']['delete'](_0xc49df8);}get['mySessionId'](){return this['context']['plugins']['get'](c)['connection']['sessionId'];}['getUserBySessionId'](_0x568517){for(const _0x1c6792 of this['channelSessions']['values']())for(const _0x5719d8 of _0x1c6792)if(_0x5719d8['id']===_0x568517)return _0x5719d8['user'];}['getUserSessions'](_0xbcf33c,_0x23993d){const _0xe1a89a=_0x23993d?[this['channelSessions']['get'](_0x23993d)]:this['channelSessions']['values'](),_0x50cdf5=new Set();for(const _0x8ccfff of _0xe1a89a)for(const _0x1cdb7d of _0x8ccfff)_0x1cdb7d['user']['id']===_0xbcf33c['id']&&_0x50cdf5['add'](_0x1cdb7d['id']);return _0x50cdf5;}['getUserRole'](_0x180d06){for(const _0x3a7755 of this['channelSessions']['values']())for(const _0x96a12c of _0x3a7755)if(_0x96a12c['user']===_0x180d06)return _0x96a12c['role'];}['_handleSessionAdd'](_0x3214b7,_0x30e8e3){if('connected'!==this['context']['plugins']['get'](c)['state'])return;const _0x4058df=_0x30e8e3['user'],_0x327e38=this['_users']['getUser'](_0x4058df['id'])||this['_createUser'](_0x4058df),_0x4b0345=Object['assign']({},_0x30e8e3,{'user':_0x327e38});this['channelSessions']['get'](_0x3214b7)['add'](_0x4b0345);const _0x40be62=this['channelConnectedUsers']['get'](_0x3214b7);_0x40be62['has'](_0x327e38['id'])||_0x40be62['add'](_0x327e38),this['allConnectedUsers']['has'](_0x327e38['id'])||this['allConnectedUsers']['add'](_0x327e38,_0x327e38['isMe']?0x0:void 0x0),this['fire']('sessionAdd:'+_0x3214b7,{'channelId':_0x3214b7,'session':_0x4b0345});}['_handleSessionRemove'](_0xc8c260,_0x1405fd){if('connected'!==this['context']['plugins']['get'](c)['state'])return;const _0x55b08d=this['channelConnectedUsers']['get'](_0xc8c260),_0x398b1a=_0x1405fd['user'];_0x398b1a['id']&&(this['channelSessions']['get'](_0xc8c260)['remove'](_0x1405fd['id']),_0x55b08d['has'](_0x398b1a['id'])&&!this['getUserSessions'](_0x398b1a,_0xc8c260)['size']&&_0x55b08d['remove'](_0x398b1a['id']),this['allConnectedUsers']['get'](_0x398b1a['id'])&&!this['getUserSessions'](_0x398b1a)['size']&&this['allConnectedUsers']['remove'](_0x398b1a['id']));}['_createUser'](_0x294288,_0x265b02){const _0x6002fe=this['_users']['addUser'](_0x294288);return _0x265b02&&this['_users']['defineMe'](_0x294288['id']),_0x6002fe['orderNumber']=this['_uniqueUsersCount']++,_0x6002fe;}}class H extends _0x3b81de{['_domEmitter']=new(_0x1d1d21())();static get['requires'](){return[i];}static get['pluginName'](){return'UserMarkers';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['init'](){const _0x81c490=this['editor'],_0x59878c=_0x81c490['plugins']['get'](i);_0x81c490['conversion']['for']('editingDowncast')['markerToElement']({'model':'user:position','view':(_0x242325,{writer:_0x420b9b})=>function(_0x1285c6,_0x5d1faf,_0x15850e,_0x551812){const _0x211c86=_0x1285c6['markerName']['split'](':')[0x2],_0x4aa106=_0x15850e['getUserBySessionId'](_0x211c86);if(!_0x4aa106||_0x211c86===_0x15850e['mySessionId'])return;if(!_0x551812['model']['schema']['checkChild'](_0x1285c6['markerRange']['start'],'$text'))return;const _0x3c2ca1={'class':'ck-user__marker\x20'+_0x4aa106['color']['getMarkerClass'](),'data-name':_0x4aa106['name'],'data-session-id':_0x211c86},_0x4e7a5d=_0x551812['model']['markers']['get'](_0x1285c6['markerName']),_0x4b2525=_0x4e7a5d['getStart'](),_0xbbbe61=_0x4b2525['nodeAfter'],_0x2ef228=_0x551812['model']['schema'];if(_0xbbbe61&&_0x2ef228['isObject'](_0xbbbe61)&&_0x2ef228['isInline'](_0xbbbe61)&&!_0x551812['model']['markers']['get']('user:range:'+_0x211c86)['getRange']()['isCollapsed'])return;const _0x323393=_0x4b2525['parent'];return _0x551812['model']['schema']['isLimit'](_0x323393)&&!_0x551812['model']['hasContent'](_0x323393)&&(_0x3c2ca1['contenteditable']=!0x1),function(_0x495ed0,_0x5d3b1e,_0x104502){const _0x4cc9be=_0x495ed0['createUIElement']('span',_0x5d3b1e);return _0x495ed0['setCustomProperty']('userPositionMarker',!0x0,_0x4cc9be),_0x4cc9be['render']=function(_0x2006e1){const _0x54bbc5=this['toDomElement'](_0x2006e1);return _0x54bbc5['innerHTML']='⁠<span\x20class=\x22ck-user__marker-line\x22\x20contenteditable=\x22false\x22><span\x20class=\x22ck-user__marker-dot\x22></span></span><span\x20class=\x22ck-user__marker-tooltip\x22\x20contenteditable=\x22false\x22\x20spellcheck=\x22false\x22>'+_0x104502['name']+'</span>⁠',_0x54bbc5['addEventListener']('mouseenter',()=>{_0x54bbc5['classList']['add']('ck-user__marker_hovered');}),_0x54bbc5['addEventListener']('mouseleave',()=>{_0x54bbc5['classList']['remove']('ck-user__marker_hovered');}),_0x54bbc5;},_0x4cc9be['isSimilar']=function(_0x3a3886){return!(!this['getCustomProperty']('userPositionMarker')||!_0x3a3886['getCustomProperty']('userPositionMarker')||this['getAttribute']('data-session-id')!=_0x3a3886['getAttribute']('data-session-id'));},_0x4cc9be;}(_0x5d1faf,_0x3c2ca1,_0x4aa106);}(_0x242325,_0x420b9b,_0x59878c,_0x81c490)}),_0x81c490['conversion']['for']('editingDowncast')['markerToHighlight']({'model':'user:range','view':_0x318a41=>function(_0x583525,_0x398fd9){const _0x21b609=_0x583525['markerName']['split'](':')[0x2];if(_0x21b609===_0x398fd9['mySessionId'])return null;const _0x1b96ce=_0x398fd9['getUserBySessionId'](_0x21b609);if(!_0x1b96ce)return{'id':_0x21b609,'classes':[]};return{'id':_0x21b609,'classes':['ck-user__selection',_0x1b96ce['color']['getSelectionClass']()],'attributes':{'data-session-id':_0x21b609},'priority':0x7d0+_0x1b96ce['orderNumber']};}(_0x318a41,_0x59878c)}),function(_0x160f72){const _0x5a7ba3=_0x160f72['model'],_0x557199=new Map(),_0x15c0f8=_0x160f72['plugins']['get'](i);_0x5a7ba3['markers']['on']('update:user:range',(_0x2b118a,_0x529fe8,_0x4d0e06,_0x1a42de)=>{if(!_0x1a42de&&_0x557199['get'](_0x529fe8['name']))return _0x557199['get'](_0x529fe8['name'])['detach'](),void _0x557199['delete'](_0x529fe8['name']);const _0x56efba=_0x529fe8['name']['split'](':')[0x2];if(_0x56efba===_0x15c0f8['mySessionId'])return;const _0x565750='user:position:'+_0x56efba;_0x5a7ba3['markers']['has'](_0x565750)&&_0x160f72['editing']['reconvertMarker'](_0x565750),_0x529fe8['on']('change:range',(_0x22dec2,_0x48ae58,_0x390c21)=>{if('$graveyard'!=_0x48ae58['root']['rootName']&&'$graveyard'==_0x529fe8['getRange']()['root']['rootName']&&!_0x557199['has'](_0x529fe8['name'])){const _0x55a975=_0x5a7ba3['schema']['getNearestSelectionRange'](_0x390c21['deletionPosition']);if(_0x55a975){const _0x205064=ht['fromRange'](_0x55a975);_0x557199['set'](_0x529fe8['name'],_0x205064),_0x205064['on']('change:range',(_0x3afd05,_0x8cc385,_0x5ef939)=>{if('$graveyard'==_0x205064['root']['rootName']){const _0x1a9d67=_0x5a7ba3['schema']['getNearestSelectionRange'](_0x5ef939['deletionPosition']);_0x1a9d67?(_0x205064['start']=_0x1a9d67['start'],_0x205064['end']=_0x1a9d67['end']):(_0x557199['delete'](_0x529fe8['name']),_0x205064['detach']());}});}}});}),_0x5a7ba3['document']['on']('change',()=>{_0x557199['size']>0x0&&_0x5a7ba3['enqueueChange']({'isUndoable':!0x1},_0x5d6cc6=>{for(const [_0x1fe5a6,_0xad9d8e]of _0x557199)'$graveyard'==_0x5a7ba3['markers']['get'](_0x1fe5a6)['getRange']()['root']['rootName']&&(re(_0x1fe5a6['split'](':')[0x2],_0xad9d8e['toRange'](),_0x5a7ba3,_0x5d6cc6),_0xad9d8e['detach']());_0x557199['clear']();});});}(_0x81c490),this['_domEmitter']['listenTo'](_0x5a383f['document'],'keydown',(_0x5bc031,{key:_0x80ffb7})=>{'Escape'===_0x80ffb7&&function(_0x44a996){_0x44a996['editing']['view']['change'](_0x51d046=>{for(const _0x46b977 of _0x44a996['model']['markers']){if(!_0x46b977['name']['startsWith']('user:position'))continue;const _0x5e1f63=_0x44a996['editing']['mapper']['markerNameToElements'](_0x46b977['name']);if(_0x5e1f63){for(const _0x4eb0b3 of _0x5e1f63)_0x51d046['removeClass']('ck-user__marker_hovered',_0x4eb0b3);}}});}(_0x81c490);},{'useCapture':!0x0});}['afterInit'](){const _0x2ffc2c=this['editor'],_0x585af2=_0x2ffc2c['commands']['get']('undo');_0x585af2&&_0x2ffc2c['model']['on']('applyOperation',(_0x516aed,_0x2a7b8f)=>{const _0x1a9e68=_0x2a7b8f[0x0];if('marker'!=_0x1a9e68['type']||!_0x1a9e68['name']['startsWith']('user:'))return;const _0x141f48=_0x1a9e68['batch'];_0x585af2['_createdBatches']['has'](_0x141f48)&&(_0x1a9e68['newRange']=_0x1a9e68['oldRange']?_0x2ffc2c['model']['createRange'](_0x1a9e68['oldRange']['start'],_0x1a9e68['oldRange']['end']):null);},{'priority':'highest'});}['destroy'](){return this['_domEmitter']['stopListening'](),super['destroy']();}['createUserMarkerOperations'](){const _0x2265cb=this['editor'],_0x4ccdd2=_0x2265cb['model']['document'],_0x205e68=_0x2265cb['plugins']['get'](i);_0x2265cb['model']['enqueueChange']({'isUndoable':!0x1},_0x4e0fc9=>{const _0x4196d2='user:range:'+_0x205e68['mySessionId'],_0x3fe0a3='user:position:'+_0x205e68['mySessionId'],_0x34b55a=_0x2265cb['model']['markers']['has'](_0x4196d2);_0x2265cb['editing']['view']['hasDomSelection']?re(_0x205e68['mySessionId'],_0x4ccdd2['selection']['getFirstRange'](),_0x2265cb['model'],_0x4e0fc9):_0x34b55a&&(_0x4e0fc9['removeMarker'](_0x4196d2),_0x4e0fc9['removeMarker'](_0x3fe0a3));});}}function re(_0x121ca8,_0x484361,_0x30ef8b,_0x184240){const _0x5dd9f8='user:range:'+_0x121ca8,_0x20ec9e='user:position:'+_0x121ca8,_0x11483c=_0x484361['getContainedElement']();let _0x3fe48f=_0x484361['start'];_0x11483c&&_0x11483c['is']('element','tableCell')&&(_0x3fe48f=function(_0x51ba0e,_0x5783a5){for(const _0x3a5836 of _0x51ba0e['getPositions']())if(_0x5783a5['schema']['checkChild'](_0x3a5836,'$text'))return _0x3a5836;}(_0x484361,_0x30ef8b),_0x484361=_0x184240['createRange'](_0x3fe48f));const _0x75cd0f=_0x184240['createRange'](_0x3fe48f);_0x30ef8b['markers']['has'](_0x5dd9f8)?(_0x184240['updateMarker'](_0x5dd9f8,{'range':_0x484361}),_0x184240['updateMarker'](_0x20ec9e,{'range':_0x75cd0f})):(_0x184240['addMarker'](_0x5dd9f8,{'range':_0x484361,'usingOperation':!0x0}),_0x184240['addMarker'](_0x20ec9e,{'range':_0x75cd0f,'usingOperation':!0x0}));}function q(_0x4c5e2c,_0x406f5c,_0x3685e7){const _0x510511=_0x4c5e2c['t'],t=_0x4c5e2c['t'];switch(_0x406f5c){case'PENDING_ACTION_SENDING_DATA':return t({'string':'Sending\x20data\x20to\x20the\x20server.','id':'PENDING_ACTION_SENDING_DATA'});case'The\x20local\x20document\x20and\x20server\x20document\x20differ\x20and\x20merging\x20them\x20can\x20cause\x20unexpected\x20behavior.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':return t('The\x20local\x20document\x20and\x20server\x20document\x20differ\x20and\x20merging\x20them\x20can\x20cause\x20unexpected\x20behavior.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.');case'The\x20document\x20cannot\x20be\x20connected\x20back\x20to\x20the\x20server.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':return t('The\x20document\x20cannot\x20be\x20connected\x20back\x20to\x20the\x20server.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.');case'The\x20document\x20details\x20could\x20not\x20be\x20taken\x20during\x20the\x20reconnection.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':return t('The\x20document\x20details\x20could\x20not\x20be\x20taken\x20during\x20the\x20reconnection.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.');case'The\x20last\x20saved\x20version\x20of\x20the\x20document\x20does\x20not\x20match\x20the\x20local\x20version.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':return t('The\x20last\x20saved\x20version\x20of\x20the\x20document\x20does\x20not\x20match\x20the\x20local\x20version.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.');case'Synchronization\x20issue':return t('Synchronization\x20issue');case'Connected\x20users\x20list\x20dropdown\x20menu':return t('Connected\x20users\x20list\x20dropdown\x20menu');case'Collapsed\x20connected\x20users\x20list\x20(press\x20ENTER\x20to\x20open\x20it)':return t('Collapsed\x20connected\x20users\x20list\x20(press\x20ENTER\x20to\x20open\x20it)');case'Connected\x20users\x20list':return t('Connected\x20users\x20list');case'PENDING_ACTION_REVISION_HISTORY':return _0x510511({'string':'Unsaved\x20change\x20in\x20revision\x20history.','id':'PENDING_ACTION_REVISION_HISTORY'});case'CONNECTED_USERS':return t({'string':'1\x20connected\x20user\x20(me)','plural':'%0\x20connected\x20users','id':'CONNECTED_USERS'},_0x3685e7);default:return'';}}let K=0x1;class l extends _0x3b81de{static ['CollaborativeEditingService']=/* #__PURE__ -- @preserve */
25
+ ((()=>_0x2ef4b7)());['_offset'];['sessionId'];['serverHistory'];['_channelId'];['_service'];['_document'];['_compressor'];['_bufferedOperations'];['_knownOperations'];['_knownRootNames'];['_pendingAction'];['_hasSelectionChanged'];['_sendBufferedOperationsDelayId'];['_baseBufferDelay'];['_currentBufferDelay'];['_lastSyncedOperationId'];['_disconnectionOperations'];['_operationIdentifier'];static get['requires'](){return[c,i,H,_0x5c30be,_0x305f5d,_0x580b9];}static get['pluginName'](){return'RealTimeCollaborationClient';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}get['cloudDocumentVersion'](){return this['_lastServerVersion']+this['_offset'];}get['_lastServerVersion'](){return this['serverHistory']['version']-this['_offset'];}get['lastSyncVersion'](){const _0x2d0de0=this['serverHistory']['getOperations']();for(let _0x541d51=_0x2d0de0['length']-0x1;_0x541d51>=0x0;_0x541d51--){const _0x2aea69=_0x2d0de0[_0x541d51];if(!this['_disconnectionOperations']['has'](_0x2aea69))return _0x2aea69['baseVersion']+0x1-this['_offset'];}return 0x0;}constructor(_0x38ec6e){if(super(_0x38ec6e),this['_offset']=0x0,this['sessionId']=null,this['serverHistory']=new _0x358a9d(),this['editor']['config']['define']('collaboration',{}),this['_channelId']=this['editor']['config']['get']('collaboration.channelId'),!this['_channelId'])throw new _0x3d0c02('collaboration-missing-channelid',this);const _0x2131df=_0x38ec6e['config']['get']('cloudServices.bundleVersion')||nt;this['_service']=new l['CollaborativeEditingService'](_0x2131df,this['_channelId']),this['_document']=this['editor']['model']['document'],this['_compressor']=new _0x263294(),this['_bufferedOperations']=[],this['_knownOperations']=new WeakSet(),this['_knownRootNames']=new Set(),this['set']('_isPendingUpdate',!0x1),this['set']('_hasSynchronizationProblem',!0x1),this['_pendingAction']=null,this['_hasSelectionChanged']=!0x1,this['_sendBufferedOperationsDelayId']=null,this['_baseBufferDelay']=0x12c,this['_currentBufferDelay']=this['_baseBufferDelay'],this['_lastSyncedOperationId']=null,this['_disconnectionOperations']=new WeakSet(),this['_operationIdentifier']=new X(this['_disconnectionOperations']);}['init'](){const _0x4f589e=this['editor'],_0x25fe36=_0x4f589e['plugins']['get'](_0x305f5d),_0x5bb410=_0x4f589e['plugins']['get'](c);this['listenTo'](_0x25fe36,'getOperationAuthor',(_0x1c9b88,_0x13d9b7)=>{const _0x392727=_0x13d9b7[0x0];_0x392727['_authorId']&&(_0x1c9b88['return']=_0x25fe36['getUser'](_0x392727['_authorId']),_0x1c9b88['stop']()),null===_0x392727['_authorId']&&(_0x1c9b88['return']=null,_0x1c9b88['stop']());},{'priority':'high'}),this['listenTo'](_0x4f589e['model']['document']['selection'],'change:range',(_0x4f8ff1,_0x21b163)=>{_0x21b163['directChange']&&this['_refreshUserSelectionMarkers']();}),this['listenTo'](_0x4f589e['editing']['view'],'change:hasDomSelection',()=>{this['_refreshUserSelectionMarkers']();}),this['_initThrowingOnDataSet'](),_0x4f589e['model']['on']('applyOperation',(_0xb1feca,_0x1919cc)=>{const _0x51e7e3=_0x1919cc[0x0];_0x51e7e3['isDocumentOperation']&&(this['_saveOperationInBuffer'](_0x51e7e3),this['_shouldSendUpdate']()&&this['_sendBufferedOperationsDelayed']());}),this['_setUpDataInit'](),this['bind']('_isEditingAllowed')['to'](_0x5bb410,'state',this,'_hasSynchronizationProblem',(_0x1b4a6f,_0x1d063b)=>'connected'===_0x1b4a6f&&!_0x1d063b),this['on']('change:_isEditingAllowed',()=>{this['_isEditingAllowed']?_0x4f589e['disableReadOnlyMode']('rtc-offline'):_0x4f589e['enableReadOnlyMode']('rtc-offline');}),this['_isEditingAllowed']?_0x4f589e['disableReadOnlyMode']('rtc-offline'):_0x4f589e['enableReadOnlyMode']('rtc-offline'),this['set']('_isConnected',!0x1);}async['reconnect'](){const _0x338bf2=this['editor']['plugins']['get'](i),_0x55dfa2=this['editor']['plugins']['get'](c);try{this['_isPendingUpdate']=!0x0,_0x338bf2['unregister'](this['_channelId']);const _0x4d317c=await this['_service']['reconnect'](_0x55dfa2['connection'],this['lastSyncVersion']);await this['_handleReconnectionResponse'](_0x4d317c)&&(this['_isPendingUpdate']=!0x1,this['_clearPendingAction']());const _0x56105f=await this['_service']['getConnectedSessions']();_0x338bf2['register'](this['_channelId'],_0x56105f),this['_handleSendingSelectionMarkers'](),this['_isConnected']=!0x0;}catch(_0x20921a){if(function(_0x34862a){return'404'===_0x34862a['code'];}(_0x20921a)&&this['sessionId'])await this['_connectAfterSessionHasBeenFlushed']();else{if(function(_0x2d6b1b){return'409'===_0x2d6b1b['code'];}(_0x20921a)){const _0x25e45=q(this['editor']['locale'],'The\x20document\x20cannot\x20be\x20connected\x20back\x20to\x20the\x20server.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.');this['_handleReconnectionError'](_0x25e45);}else{if(!(_0x20921a instanceof J))throw _0x20921a;this['_handleReconnectionError']();}}}}['destroy'](){const _0x134958=this['editor']['plugins']['get'](c),_0x43465f=this['editor']['plugins']['get'](i);this['editor']['enableReadOnlyMode']('rtc-destroyed'),_0x43465f['channelSessions']['has'](this['_channelId'])&&_0x43465f['unregister'](this['_channelId']),_0x134958['removeFromReconnectionStack'](this),this['_disconnectService'](),super['destroy']();}async['_handleReconnectionResponse'](_0x4c1f3f){if(this['sessionId']!==_0x4c1f3f['sessionId']&&this['_lastSyncedOperationId']!==_0x4c1f3f['lastOperationId'])throw new J();return this['sessionId']=_0x4c1f3f['sessionId'],this['_handleServerResponse']([],{..._0x4c1f3f,'wereChangesApplied':!0x1,'data':_0x4c1f3f['data']},'reconnect');}async['_connectService'](_0xef76f3,_0x56561f=!0x1){const {connection:_0x1e32b3}=this['editor']['plugins']['get'](c);l['CollaborativeEditingService']['getConnectedSessions'](_0x1e32b3,this['_channelId'])['then'](_0x283b60=>this['_initSessionsHandling'](_0x283b60))['catch'](_0x4ca795=>{this['_crash']('realtimecollaborationclient-init-session-connection-error',_0x4ca795);}),this['listenTo'](this['_service'],'operationsReceived',this['_handleReceivedOperations']['bind'](this)),this['listenTo'](this['_service'],'error',(_0x52f6e6,_0x2ea5dc)=>{this['_crash']('realtimecollaborationclient-initservice-internal-error',_0x2ea5dc);}),this['listenTo'](this['_service'],'disconnected',()=>{this['_isConnected']=!0x1;});const _0x3a7ae0=this['_operationIdentifier']['getIdOfTheLastOperation'](_0xef76f3);this['_isPendingUpdate']=!0x0;const _0x1005a7=await this['_service']['connect'](_0x1e32b3,this['_compressOperations'](_0xef76f3),_0x3a7ae0);if(this['sessionId']=_0x1005a7['sessionId'],_0x56561f){if(!_0x1005a7['wereChangesApplied'])return void this['_handleReconnectionError']();this['_isPendingUpdate']=!0x1,this['_clearPendingAction'](),this['serverHistory']['reset'](),this['_offset']=_0x1005a7['offset'],this['serverHistory']['version']=this['_offset'],await this['_handleServerResponse'](_0xef76f3,_0x1005a7,'reconnection:\x20flushed\x20session');}else await this['_handleInitialConnectionData'](_0x1005a7,_0xef76f3);this['_handleSendingSelectionMarkers'](),this['_isConnected']=!0x0;}['_handleSendingSelectionMarkers'](){const _0x30a6f7=this['editor']['plugins']['get'](i),_0xd0cade=this['editor']['plugins']['get'](H),_0x153c41=_0x30a6f7['channelSessions']['get'](this['_channelId']);_0x153c41&&_0x153c41['length']>0x1?_0xd0cade['createUserMarkerOperations']():this['listenTo'](_0x30a6f7,'sessionAdd:'+this['_channelId'],()=>{0x2===_0x30a6f7['channelSessions']['get'](this['_channelId'])['length']&&_0xd0cade['createUserMarkerOperations']();});}async['_handleReceivedOperations'](_0x1e5d8e,_0x5686d8,_0x38450f,_0x269a0a){if(!this['_isPendingUpdate']&&this['_document']['version']==_0x5686d8){const _0x46d6f6=this['_decompressOperations'](_0x38450f,_0x269a0a);await this['_fetchMissingUsers'](_0x46d6f6),this['_handleExternalOperations'](_0x46d6f6,_0x5686d8,_0x38450f['lastOperationId'])||this['_crash']('realtimecollaborationclient-initservice-incorrect-server-operation');}}async['_connectAfterSessionHasBeenFlushed'](){this['_disconnectService']();const {locale:_0x39981e}=this['editor'];let _0x5cdb9a;try{_0x5cdb9a=await this['_service']['getDocumentDetails']();}catch(_0x476a4d){const _0x1f0247=q(_0x39981e,'The\x20document\x20details\x20could\x20not\x20be\x20taken\x20during\x20the\x20reconnection.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.');return void this['_handleReconnectionError'](_0x1f0247);}const _0x1d592b=_0x5cdb9a['currentDocumentSession']||_0x5cdb9a['lastDocumentSession'];if(this['_lastSyncedOperationId']===_0x1d592b['lastOperationId'])await this['_connectService'](this['editor']['model']['document']['history']['getOperations'](),!0x0);else{const _0x218dfc=q(_0x39981e,'The\x20last\x20saved\x20version\x20of\x20the\x20document\x20does\x20not\x20match\x20the\x20local\x20version.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.');this['_handleReconnectionError'](_0x218dfc);}}['_disconnectService'](){this['_service']['disconnect'](),this['_bufferedOperations']=[],clearTimeout(this['_sendBufferedOperationsDelayId']),this['stopListening'](this['_service']);}['_initSessionsHandling'](_0x3fce74){const _0x221547=this['editor']['plugins']['get'](i);this['listenTo'](_0x221547,'sessionAdd:'+this['_channelId'],(_0x3b946d,{session:_0x23d7ce})=>{if(_0x23d7ce['id']===_0x221547['mySessionId']){_0x3b946d['off']();const _0x34745f=this['editor']['plugins']['has']('CommentsOnly')&&this['editor']['plugins']['get']('CommentsOnly');let _0x1188b3=_0x23d7ce['permissions'];_0x34745f&&_0x34745f['isEnabled']&&(_0x1188b3=_0x1188b3['filter'](_0x21fe79=>'document:write'!==_0x21fe79)),this['editor']['plugins']['get']('Permissions')['setPermissions'](_0x1188b3,this['_channelId']);}}),_0x221547['register'](this['_channelId'],_0x3fce74);}['_initThrowingOnDataSet'](){const _0x482c4c=this['editor']['data']['set'];this['editor']['data']['set']=(..._0x131ef7)=>{if(!_0x131ef7[_0x131ef7['length']-0x1]['suppressErrorInCollaboration'])throw new _0x3d0c02('realtimecollaborationclient-editor-setdata-and-editor-data-set-are-forbidden-in-real-time-collaboration',this);_0x482c4c['apply'](this['editor']['data'],_0x131ef7);};}['_setUpDataInit'](){this['editor']['data']['on']('init',(_0x2afe8c,[_0xd7dbf3])=>{if(this['_document']['version'])throw new _0x3d0c02('realtimecollaborationclient-init-document-already-initialized',this);_0x2afe8c['stop'](),this['_setPendingAction']();const _0x19ab23=this['editor']['config']['get']('rootsAttributes'),_0x4e6044=this['_getOperationsFromInitData'](_0xd7dbf3,_0x19ab23);0x0==_0x4e6044['length']&&_0x4e6044['push'](new _0x2334c7(0x0)),_0x2afe8c['return']=this['_connectService'](_0x4e6044)['then'](()=>{this['editor']['plugins']['get'](c)['addToReconnectionStack'](this),this['editor']['data']['fire']('ready');})['catch'](_0x24e809=>this['_crash']('realtimecollaborationclient-init-connection-failed',_0x24e809))['finally'](()=>this['_clearPendingAction']());},{'priority':'high'}),this['editor']['on']('loadRoot',async(_0x1d4a48,[_0x598ad6,_0x2bb562])=>{_0x1d4a48['stop']();const _0x523012=this['editor']['model']['document']['getRoot'](_0x598ad6);if(!this['_knownRootNames']['has'](_0x598ad6)){const _0x3910b2=_0x2bb562&&_0x2bb562['data']?_0x2bb562['data']:'',_0x365cc6=_0x2bb562&&_0x2bb562['attributes']?_0x2bb562['attributes']:{};await this['_loadRoot'](_0x598ad6,_0x3910b2,_0x365cc6);}this['editor']['model']['enqueueChange']({'isUndoable':!0x1},()=>{_0x523012['_isLoaded']=!0x0,this['editor']['model']['document']['differ']['_bufferRootLoad'](_0x523012);});},{'priority':'high'});}async['_fetchMissingUsers'](_0x43009e){const _0x365095=this['editor']['plugins']['get'](_0x305f5d),{connection:_0x39f646}=this['editor']['plugins']['get'](c),_0x2bf945=new Set();for(const _0x585065 of _0x43009e){const _0x51ea6e=_0x585065['_authorId'];_0x51ea6e&&!_0x365095['getUser'](_0x51ea6e)&&_0x2bf945['add'](_0x51ea6e);}if(0x0===_0x2bf945['size'])return;const _0x4477c9=await dt['getMany'](_0x39f646,Array['from'](_0x2bf945));for(const _0x408231 of _0x4477c9)_0x365095['getUser'](_0x408231['id'])||_0x365095['addUser'](_0x408231);}['_getOperationsFromInitData'](_0x31d8a9,_0x425966={}){const _0x2e6b60=this['editor']['model'],_0x2f6d28=[];let _0x113378=0x0;const _0x1ed460='string'==typeof _0x31d8a9?{'main':_0x31d8a9}:_0x31d8a9;for(const _0x20575b of Object['keys'](_0x1ed460)){if(!this['_document']['roots']['has'](_0x20575b))throw new _0x3d0c02('realtimecollaborationclient-init-non-existent-root',this);const _0xbd04e9=this['editor']['data']['parse'](_0x1ed460[_0x20575b]),_0x41beed=this['_document']['getRoot'](_0x20575b),_0x107f97=new _0x19d019(_0x2e6b60['createPositionAt'](_0x41beed,0x0),_0xbd04e9,_0x113378++);_0x2f6d28['push'](_0x107f97);for(const [_0x146371,_0x2719b9]of _0xbd04e9['markers']){const _0x48432d=_0x2e6b60['createRange'](_0x2e6b60['createPositionFromPath'](_0x41beed,_0x2719b9['start']['path']['slice']()),_0x2e6b60['createPositionFromPath'](_0x41beed,_0x2719b9['end']['path']['slice']())),_0x31f544=new _0x21b767(_0x146371,null,_0x48432d,_0x2e6b60['markers'],!0x0,_0x113378++);_0x2f6d28['push'](_0x31f544);}}if(_0x425966)for(const [_0x11fa08,_0x1412bb]of Object['entries'](_0x425966)){const _0xfed834=_0x2e6b60['document']['getRoot'](_0x11fa08);if(!_0xfed834)throw new _0x3d0c02('multi-root-editor-root-attributes-no-root',null);for(const [_0x2477cb,_0x326eb3]of Object['entries'](_0x1412bb))if(null!==_0x326eb3){const _0x5230a4=new _0x3b1d5d(_0xfed834,_0x2477cb,null,_0x326eb3,_0x113378++);_0x2f6d28['push'](_0x5230a4);}}return _0x2f6d28;}async['_loadRoot'](_0x3cae51,_0x58dbcc,_0x2c075f){this['_getOperationsFromInitData']({[_0x3cae51]:_0x58dbcc},{[_0x3cae51]:_0x2c075f})['forEach']((_0x52a217,_0x190b11)=>{_0x52a217['baseVersion']=this['_document']['version']+_0x190b11,_0x52a217['_isInit']=!0x0,this['_saveOperationInBuffer'](_0x52a217);}),this['_sendBufferedOperationsDelayed'](),await this['_waitUntilSynced']();}async['_handleInitialConnectionData'](_0x129569,_0x54b044){let _0x1d7680;this['_offset']=_0x129569['offset'];const _0x172d5c=_0x129569['wereChangesApplied']&&!_0x129569['initData'],_0x1ec5ab=_0x172d5c?0x0:_0x129569['data']['baseVersion'];if(_0x54b044['forEach'](_0x5435ac=>{_0x5435ac['_isInit']=!0x0,_0x5435ac['createdAt']=_0x129569['sessionCreatedAt'],_0x5435ac['_authorId']=null;}),_0x172d5c)_0x1d7680=_0x54b044,this['_applyOperationsSet'](_0x1d7680,_0x172d5c);else{if(_0x129569['initData']){const _0x77757e=this['_getOperationsFromInitData'](_0x129569['initData']);this['_document']['history']['version']=-_0x77757e['length'],_0x77757e['forEach'](_0x425499=>{_0x425499['baseVersion']-=_0x77757e['length'],_0x425499['createdAt']=_0x129569['sessionCreatedAt'],_0x425499['_isInit']=!0x0,_0x425499['_authorId']=null;}),this['_applyOperationsSet'](_0x77757e,!0x0),this['serverHistory']['version']=-_0x77757e['length']+this['_offset'],this['_updateServerHistory'](_0x77757e);}this['_document']['history']['version']=_0x1ec5ab,_0x1d7680=this['_decompressOperations'](_0x129569['data'],_0x129569['metadata']),await this['_fetchMissingUsers'](_0x1d7680),this['_applyOperationsSet'](_0x1d7680,_0x172d5c);}_0x129569['lastOperationId']&&(this['_operationIdentifier']['setIdForTheLastOperation'](_0x1d7680,_0x129569['lastOperationId']),this['_lastSyncedOperationId']=_0x129569['lastOperationId']),this['serverHistory']['version']=_0x1ec5ab+this['_offset'],this['_updateServerHistory'](_0x1d7680),_0x54b044['filter'](_0x5e3da9=>{const _0x5a3b4e=this['_getAffectedRoot'](_0x5e3da9);return _0x5a3b4e&&!this['_knownRootNames']['has'](_0x5a3b4e);})['forEach']((_0x5cee4,_0x171249)=>{_0x5cee4['baseVersion']=this['_document']['version']+_0x171249,this['_saveOperationInBuffer'](_0x5cee4);}),this['_shouldSendUpdate']()?(this['_currentBufferDelay']=0x0,this['_sendBufferedOperationsDelayed'](!0x0),await this['_waitUntilSynced']()):(this['_isPendingUpdate']=!0x1,this['_clearPendingAction']());}['_crash'](_0xfb0058,_0x3c441a,_0x14de0e){throw this['_isPendingUpdate']=!0x0,_0x3c441a&&console['error'](_0x3c441a),_0x14de0e&&this['editor']['enableReadOnlyMode']('realtimecollaborationclient-error'),new _0x3d0c02(_0xfb0058,this['editor']);}['_saveOperationInBuffer'](_0x4c6a7f){this['_knownOperations']['has'](_0x4c6a7f)||(this['_knownOperations']['add'](_0x4c6a7f),this['_bufferedOperations']['push'](_0x4c6a7f),this['_pendingAction']||'marker'==_0x4c6a7f['type']&&!_0x4c6a7f['affectsData']||this['_setPendingAction']());}['_sendBufferedOperationsDelayed'](_0x37fcfb=!0x1){!_0x37fcfb&&this['_isPendingUpdate']||(this['_isPendingUpdate']=!0x0,clearTimeout(this['_sendBufferedOperationsDelayId']),this['_sendBufferedOperationsDelayId']=setTimeout(()=>{this['_sendBufferedOperations']()['then'](_0xb2dda9=>{_0xb2dda9&&(this['_clearPendingAction'](),this['_isPendingUpdate']=!0x1);})['catch'](_0x8bdc72=>{this['_clearPendingAction'](),this['_isPendingUpdate']=!0x1,function(_0x544b97){return _0x544b97['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x544b97['message']['startsWith']('cloud-services-internal-error:\x20Collaborative\x20Editing\x20Service\x20is\x20not\x20connected.')||_0x544b97['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}(_0x8bdc72)||this['_crash'](_0x8bdc72['message'],_0x8bdc72,!0x0);});},this['_currentBufferDelay']));}['_waitUntilSynced'](){return new Promise(_0x1a2c16=>{this['on']('change:_isPendingUpdate',()=>{_0x1a2c16();});});}async['_sendBufferedOperations'](){const _0x380f21=this['editor']['plugins']['get'](H);if(this['_shouldSendSelectionUpdate']()&&(_0x380f21['createUserMarkerOperations'](),this['_hasSelectionChanged']=!0x1),!this['_shouldSendUpdate']())return!0x0;const _0x174d00=[...this['_bufferedOperations']];for(const _0x252faf of _0x174d00)_0x252faf['wasUndone']=this['_document']['history']['isUndoneOperation'](_0x252faf);const _0x2eddd4=this['_operationIdentifier']['getIdOfTheLastOperation'](_0x174d00),_0x34cfb7=K++,_0x49f10a=this['_compressOperations'](_0x174d00),_0x4d94b5=await this['_service']['sendOperations'](_0x49f10a,_0x49f10a['baseVersion'],_0x2eddd4);try{return await this['_handleServerResponse'](_0x174d00,_0x4d94b5,_0x34cfb7);}catch(_0x4b1e24){return this['_crash']('realtimecollaborationclient-sendbufferedoperations',_0x4b1e24);}}async['_handleServerResponse'](_0x453528,_0x4bb91a,_0x121767){if('error'in _0x4bb91a)throw _0x4bb91a['error'];let _0x2a3117=!0x1;if(_0x4bb91a['wereChangesApplied']){_0x4bb91a['lastOperationId']&&(this['_lastSyncedOperationId']=_0x4bb91a['lastOperationId']),this['_bufferedOperations']=this['_bufferedOperations']['filter'](_0x4cde13=>!_0x453528['includes'](_0x4cde13));for(const _0xb7d3d5 of _0x453528)_0xb7d3d5['createdAt']='lastOperationAcceptedAt'in _0x4bb91a&&_0x4bb91a['lastOperationAcceptedAt']||void 0x0;Q(_0x453528,_0x4bb91a['version']-_0x453528['length']),this['_updateServerHistory'](_0x453528);const _0x5f0b17=_0x453528['filter'](_0x267f3d=>{if(!_0x267f3d['_isInit'])return!0x1;const _0x14d5aa=this['_getAffectedRoot'](_0x267f3d);return _0x14d5aa&&!this['_knownRootNames']['has'](_0x14d5aa);});Q(_0x5f0b17,this['_document']['version']),this['_applyOperationsSet'](_0x5f0b17),_0x2a3117=!0x0,this['_currentBufferDelay']=this['_baseBufferDelay'];}else{const _0x3b493b=this['_decompressOperations'](_0x4bb91a['data'],_0x4bb91a['metadata'])['filter'](_0x3e1e97=>_0x3e1e97['baseVersion']>=this['_lastServerVersion']);_0x3b493b['forEach'](_0x249e9f=>this['_addKnownRoot'](_0x249e9f)),this['_bufferedOperations']=this['_bufferedOperations']['filter'](_0x3cb2dc=>!_0x3cb2dc['_isInit']||!this['_knownRootNames']['has'](this['_getAffectedRoot'](_0x3cb2dc))),this['_bufferedOperations']['length']&&Q(this['_bufferedOperations'],this['_bufferedOperations'][0x0]['baseVersion']),await this['_fetchMissingUsers'](_0x3b493b),_0x2a3117=this['_handleExternalOperations'](_0x3b493b,_0x4bb91a['version'],_0x4bb91a['lastOperationId']),this['_currentBufferDelay']=Math['round'](this['_currentBufferDelay']/0x2);}return _0x2a3117?!this['_shouldSendUpdate']()||(this['_sendBufferedOperationsDelayed'](!0x0),!0x1):this['_crash']('realtimecollaborationclient-handleserverresponse');}['_handleExternalOperations'](_0xee96d9,_0x1558c9,_0x311a0a){try{const _0x529723={'document':this['_document'],'useRelations':!0x1,'padWithNoOps':!0x0},{operationsA:_0x414d64,operationsB:_0x215152,originalOperations:_0x52714b}=_0x11f3c8(_0xee96d9,this['_bufferedOperations'],_0x529723);Q(_0x414d64,this['_document']['version']),Q(_0x215152,_0x1558c9);for(const _0x1bbf63 of _0x414d64){const _0x423e28=_0x52714b['get'](_0x1bbf63);_0x1bbf63['_authorId']=_0x423e28?_0x423e28['_authorId']:null;}_0x311a0a&&(this['_operationIdentifier']['setIdForTheLastOperation'](_0xee96d9,_0x311a0a),this['_lastSyncedOperationId']=_0x311a0a),this['_bufferedOperations']=[..._0x215152],this['_applyOperationsSet'](_0x414d64),this['_updateServerHistory'](_0xee96d9);}catch(_0x567757){return console['error'](_0x567757),!0x1;}return!0x0;}['_applyOperationsSet'](_0x356624,_0x209138=!0x1){this['editor']['model']['enqueueChange']({'isUndoable':!0x1,'isLocal':!0x1},_0x339812=>{for(const _0x1d120b of _0x356624)this['_knownOperations']['add'](_0x1d120b),this['_addKnownRoot'](_0x1d120b),_0x339812['batch']['addOperation'](_0x1d120b),this['editor']['model']['applyOperation'](_0x1d120b);});}['_addKnownRoot'](_0x2955b0){const _0x5bf870=this['_getAffectedRoot'](_0x2955b0);_0x5bf870&&this['_knownRootNames']['add'](_0x5bf870);}['_getAffectedRoot'](_0x47b4bf){let _0x11803a,_0x27a45e;switch(_0x47b4bf['type']){case'insert':_0x11803a=_0x47b4bf['position']['root'];break;case'marker':if(_0x27a45e=_0x47b4bf['newRange'],!_0x27a45e)return null;_0x11803a=_0x27a45e['root'];break;case'addRootAttribute':_0x11803a=_0x47b4bf['root'];break;case'addRoot':_0x11803a=_0x47b4bf['affectedSelectable'];break;case'move':_0x11803a=_0x47b4bf['targetPosition']['root'];break;default:return null;}return _0x11803a['rootName'];}['_updateServerHistory'](_0x5d0281){_0x5d0281['forEach'](_0x20339c=>{const _0x45b697=_0x20339c['clone']();_0x45b697['_authorId']=_0x20339c['_authorId'],_0x45b697['_isInit']=!!_0x20339c['_isInit'],_0x45b697['createdAt']=_0x20339c['createdAt'],_0x45b697['baseVersion']+=this['_offset'],_0x20339c['_isDisconnection']&&this['_disconnectionOperations']['add'](_0x45b697),this['serverHistory']['addOperation'](_0x45b697);});}['_handleReconnectionError'](_0x56518f){const _0x33014e=this['editor']['plugins']['get']('Notification'),_0x94642d=this['editor']['locale'];_0x56518f||(_0x56518f=q(_0x94642d,'The\x20local\x20document\x20and\x20server\x20document\x20differ\x20and\x20merging\x20them\x20can\x20cause\x20unexpected\x20behavior.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.')),_0x33014e['showWarning'](_0x56518f,{'title':q(_0x94642d,'Synchronization\x20issue'),'namespace':'real-time-collaboration'}),this['_hasSynchronizationProblem']=!0x0,clearTimeout(this['_sendBufferedOperationsDelayId']),this['_bufferedOperations']=[],this['editor']['plugins']['get'](c)['destroy']();}['_setPendingAction'](){this['_pendingAction']||(this['_pendingAction']=this['editor']['plugins']['get'](_0x5c30be)['add'](q(this['editor']['locale'],'PENDING_ACTION_SENDING_DATA')));}['_clearPendingAction'](){this['_pendingAction']&&(this['editor']['plugins']['get'](_0x5c30be)['remove'](this['_pendingAction']),this['_pendingAction']=null);}['_compressOperations'](_0x399fca){const _0x47b0d3=_0x399fca['map'](_0x490e65=>_0x490e65['toJSON']());return this['_compressor']['compress'](_0x47b0d3);}['_decompressOperations'](_0x1d4ae4,_0x4a8399){return this['_compressor']['decompress'](_0x1d4ae4)['map']((_0x537bde,_0x303e2f)=>{const _0x55b135='init'==_0x4a8399[_0x303e2f]['type'];if('InsertOperation'==_0x537bde['__className']){const _0x351b7f=_0x537bde['position']['root'];!this['_document']['getRoot'](_0x351b7f)&&(this['_document']['createRoot']('$root',_0x351b7f)['_isAttached']=!0x1);}const _0x3a6528=_0x38f585['fromJSON'](_0x537bde,this['_document']);return _0x3a6528['wasUndone']=_0x537bde['wasUndone'],_0x3a6528['_isInit']=_0x55b135,_0x3a6528['_authorId']=_0x55b135?null:_0x4a8399[_0x303e2f]['userId'],_0x3a6528['_isDisconnection']='cs:removeUser'===_0x4a8399[_0x303e2f]['type'],_0x3a6528['createdAt']=_0x4a8399[_0x303e2f]['createdAt'],_0x3a6528;});}['_refreshUserSelectionMarkers'](){this['_hasSelectionChanged']=!0x0,this['_shouldSendSelectionUpdate']()?this['_sendBufferedOperationsDelayed']():this['_hasSelectionChanged']=!0x1;}['_shouldSendSelectionUpdate'](){const _0x1cd7de=this['editor']['plugins']['get'](i)['channelSessions']['get'](this['_channelId']);return!this['editor']['isReadOnly']&&!!_0x1cd7de&&_0x1cd7de['length']>0x1&&this['_hasSelectionChanged'];}['_shouldSendUpdate'](){return this['_bufferedOperations']['length']>0x0||this['_shouldSendSelectionUpdate']();}}class J extends Error{}function Q(_0x412540,_0x215202){for(const _0x15e815 of _0x412540)_0x15e815['baseVersion']=_0x215202++;}class X{['_ignoredOperations'];['_operationToId'];constructor(_0x5e9858){this['_ignoredOperations']=_0x5e9858,this['_operationToId']=new WeakMap();}['getIdOfTheLastOperation'](_0x223277){let _0x39807f=_0x223277['length'];for(;_0x39807f--;){const _0x1b203a=_0x223277[_0x39807f];if(!this['_ignoredOperations']['has'](_0x1b203a)){if(!this['_operationToId']['has'](_0x1b203a)){const _0x10080a=_0x4cacba()['slice'](0x1,0x12);this['_operationToId']['set'](_0x1b203a,_0x10080a);}return this['_operationToId']['get'](_0x1b203a);}}}['setIdForTheLastOperation'](_0x5dbbfc,_0x8755b9){if(!_0x8755b9)return;let _0x99dad1=_0x5dbbfc['length'];for(;_0x99dad1--;){const _0x3c96a0=_0x5dbbfc[_0x99dad1];this['_ignoredOperations']['has'](_0x3c96a0)||this['_operationToId']['set'](_0x3c96a0,_0x8755b9);}}}class n extends _0x3b81de{static get['requires'](){return[l];}static get['pluginName'](){return'RealTimeCollaborativeEditing';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}class a extends _0x5b046d{static ['CommentsService']=/* #__PURE__ -- @preserve */
26
+ ((()=>_0x2228f5)());['_services'];static get['requires'](){return[c,'CommentsRepository',i,_0x305f5d];}static get['pluginName'](){return'CloudServicesCommentsAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x48a339){super(_0x48a339),this['_services']=new Map();}async['init'](){const _0x578ceb=this['context'],_0x2bcdd3=_0x578ceb['plugins']['get']('CommentsRepository');if(_0x578ceb['plugins']['get'](c)['addToReconnectionStack'](this),_0x2bcdd3['adapter']={'addCommentThread':async({channelId:_0xdab520,threadId:_0x24030b,comments:_0x5dd94c,resolvedAt:_0x5b0b9f,resolvedBy:_0x29a23e,context:_0x37a2dc,attributes:_0x13df04})=>{const _0x4d8e4f=await this['_getService'](_0xdab520)['addCommentThread']({'commentThreadId':_0x24030b,'comments':_0x5dd94c['map'](_0x1f5095=>function(_0x300932,_0x44247b,_0x3f9f1d){return{'commentThreadId':_0x3f9f1d,'commentId':_0x300932['commentId'],'userId':_0x300932['authorId'],'content':_0x300932['content'],'documentId':_0x44247b,'createdAt':_0x300932['createdAt'],'attributes':_0x300932['attributes']||{}};}(_0x1f5095,_0xdab520,_0x24030b)),'resolvedAt':_0x5b0b9f,'resolvedBy':_0x29a23e,'context':_0x37a2dc,'attributes':_0x13df04})['catch'](ut);return{'threadId':_0x4d8e4f['commentThreadId'],'comments':_0x4d8e4f['comments']};},'getCommentThread':async({channelId:_0x45d306,threadId:_0x4d1e36})=>{const _0x3a92e7=await this['_getService'](_0x45d306)['getCommentThread'](_0x4d1e36)['catch'](ut);return _0x3a92e7['deletedAt']?null:(await this['_fetchMissingUsersForThreads']([_0x3a92e7]),{'threadId':_0x3a92e7['commentThreadId'],'comments':_0x3a92e7['comments']['map'](S),'context':_0x3a92e7['context'],'resolvedAt':_0x3a92e7['resolvedAt'],'resolvedBy':_0x3a92e7['resolvedBy'],'attributes':_0x3a92e7['attributes']||{}});},'updateCommentThread':async({channelId:_0x391452,threadId:_0x1367df,context:_0x22dd71,unlinkedAt:_0x1c91df,attributes:_0x340104})=>this['_getService'](_0x391452)['updateCommentThread']({'commentThreadId':_0x1367df,'context':_0x22dd71,'attributes':_0x340104,'unlinkedAt':_0x1c91df})['catch'](B)['catch'](ut),'resolveCommentThread':async({channelId:_0x41510f,threadId:_0x56d866})=>{const _0x2de1ce=await this['_getService'](_0x41510f)['resolveCommentThread'](_0x56d866)['catch'](B)['catch'](ut);return{'threadId':_0x2de1ce['commentThreadId'],'resolvedAt':_0x2de1ce['resolvedAt'],'resolvedBy':_0x2de1ce['resolvedBy']};},'reopenCommentThread':async({channelId:_0x163c7d,threadId:_0x153531})=>this['_getService'](_0x163c7d)['reopenCommentThread'](_0x153531)['catch'](B)['catch'](ut),'removeCommentThread':({channelId:_0x1edd21,threadId:_0x37941f})=>this['_getService'](_0x1edd21)['removeCommentThread'](_0x37941f)['catch'](B)['catch'](ut),'addComment':({channelId:_0x10b2ea,threadId:_0x32d8d0,commentId:_0x39b0e6,content:_0x2699a1,attributes:_0x1a2109})=>this['_getService'](_0x10b2ea)['addComment'](_0x32d8d0,_0x39b0e6,_0x2699a1,_0x1a2109)['catch'](ut),'updateComment':({channelId:_0x22acf7,threadId:_0x5d63e0,commentId:_0x3e07cd,content:_0x129d5d,attributes:_0x447f86})=>this['_getService'](_0x22acf7)['updateComment'](_0x5d63e0,_0x3e07cd,_0x129d5d,_0x447f86)['catch'](B)['catch'](ut),'removeComment':({channelId:_0x370378,threadId:_0x1beaec,commentId:_0x19ee7b})=>this['_getService'](_0x370378)['removeComment'](_0x1beaec,_0x19ee7b)['catch'](B)['catch'](ut)},_0x578ceb instanceof _0x285205){const _0x12192a=_0x578ceb['config']['get']('collaboration.channelId'),_0x16ab8b=_0x578ceb['plugins']['get'](i);await this['_setUpService'](_0x12192a);const _0x1fb59a=await this['_services']['get'](_0x12192a)['getConnectedSessions']();this['listenTo'](_0x16ab8b,'sessionAdd:'+_0x12192a,(_0x225fb4,{session:_0x2aa143})=>{_0x2aa143['id']===_0x16ab8b['mySessionId']&&(_0x225fb4['off'](),this['context']['plugins']['get']('Permissions')['setPermissions'](_0x2aa143['permissions'],_0x12192a));}),_0x16ab8b['register'](_0x12192a,_0x1fb59a);}}async['_setUpService'](_0x122c65){if(this['_services']['has'](_0x122c65))throw new _0x3d0c02('cloudservicescommentsadapter-connect-already-connected',null,{'channelId':_0x122c65});const _0x2fabfe=this['context']['plugins']['get']('CommentsRepository'),_0x3cc508=new a['CommentsService'](_0x122c65);this['_services']['set'](_0x122c65,_0x3cc508),this['listenTo'](_0x3cc508,'commentThreadAdded',(_0x410928,_0x57a172)=>{const {commentThreadId:_0x1ddb0f,documentId:_0x58b81a,context:_0x477c39,attributes:_0x57d070,resolvedAt:_0xbb219f,resolvedBy:_0x20f334,comments:_0x331f2b}=_0x57a172;_0x2fabfe['getCommentThread'](_0x1ddb0f)||_0x2fabfe['addCommentThread']({'threadId':_0x1ddb0f,'channelId':_0x58b81a,'comments':_0x331f2b?_0x331f2b['map'](S):[],'context':_0x477c39,'attributes':_0x57d070,'resolvedAt':_0xbb219f,'resolvedBy':_0x20f334,'isFromAdapter':!0x0});}),this['listenTo'](_0x3cc508,'commentThreadUpdated',(_0x23ef7e,{commentThreadId:_0x5ae0be,documentId:_0x150fd5,context:_0x27c011,unlinkedAt:_0x433fe6,attributes:_0x1718a2})=>{_0x2fabfe['getCommentThread'](_0x5ae0be)&&_0x2fabfe['updateCommentThread']({'threadId':_0x5ae0be,'channelId':_0x150fd5,'context':_0x27c011,'unlinkedAt':_0x433fe6,'attributes':_0x1718a2,'isFromAdapter':!0x0});}),this['listenTo'](_0x3cc508,'commentThreadResolved',(_0x711983,{commentThreadId:_0x3c3bbb,resolvedBy:_0x53c971,resolvedAt:_0x38f516})=>{const _0x973022=_0x2fabfe['getCommentThread'](_0x3c3bbb);_0x973022&&_0x973022['resolve']({'resolvedBy':_0x53c971,'resolvedAt':_0x38f516,'isFromAdapter':!0x0});}),this['listenTo'](_0x3cc508,'commentThreadReopened',(_0xf4e927,{commentThreadId:_0x45ba2d})=>{const _0x1ee8dc=_0x2fabfe['getCommentThread'](_0x45ba2d);_0x1ee8dc&&_0x1ee8dc['reopen']({'isFromAdapter':!0x0});}),this['listenTo'](_0x3cc508,'commentThreadRemoved',(_0x5af135,{commentThreadId:_0x11e8ab})=>{const _0xcf92d8=_0x2fabfe['getCommentThread'](_0x11e8ab);_0xcf92d8&&_0xcf92d8['remove']({'isFromAdapter':!0x0});}),this['listenTo'](_0x3cc508,'commentAdded',(_0x1cdd82,_0x507ea4)=>{const _0x29afbb=_0x507ea4['commentThreadId'],_0x5dd5f0=_0x2fabfe['getCommentThread'](_0x29afbb);_0x5dd5f0&&_0x5dd5f0['addComment']({...S(_0x507ea4),'isFromAdapter':!0x0});}),this['listenTo'](_0x3cc508,'commentUpdated',(_0x315769,{commentThreadId:_0x5ea1c0,commentId:_0x65e556,content:_0x20d29a,attributes:_0x103c4c})=>{const _0x3a3347=_0x2fabfe['getCommentThread'](_0x5ea1c0);if(_0x3a3347){const _0x2d1919=_0x3a3347['getComment'](_0x65e556);_0x2d1919&&_0x2d1919['update']({'content':_0x20d29a,'attributes':_0x103c4c,'isFromAdapter':!0x0});}}),this['listenTo'](_0x3cc508,'commentRemoved',(_0x69c571,{commentThreadId:_0x2d3a66,commentId:_0x1766c8})=>{const _0x239b85=_0x2fabfe['getCommentThread'](_0x2d3a66);if(_0x239b85){const _0x12ea5e=_0x239b85['getComment'](_0x1766c8);_0x12ea5e&&_0x12ea5e['remove']({'isFromAdapter':!0x0});}}),await this['_connectService'](_0x122c65);}['destroy'](){if(this['context']instanceof _0x285205){const _0x28066f=this['context']['config']['get']('collaboration.channelId');this['_terminateService'](_0x28066f);}}['_terminateService'](_0x3ee94b){if(!this['_services']['has'](_0x3ee94b))throw new _0x3d0c02('cloudservicescommentsadapter-disconnect-not-exist',null,{'channelId':_0x3ee94b});this['_getService'](_0x3ee94b)['disconnect'](),this['_services']['delete'](_0x3ee94b);}async['reconnect'](){for(const _0x277ab5 of this['_services']['keys']())await this['_connectService'](_0x277ab5);if(this['context']instanceof _0x285205){const _0x4216c2=this['context']['config']['get']('collaboration.channelId'),_0x59bfc6=this['context']['plugins']['get'](i);_0x59bfc6['unregister'](_0x4216c2);const _0xba5fc2=await this['_services']['get'](_0x4216c2)['getConnectedSessions']();_0x59bfc6['register'](_0x4216c2,_0xba5fc2);}}async['_connectService'](_0x1bb92e){const {connection:_0x3ca5c0}=this['context']['plugins']['get'](c),_0x5e5c12=this['context']['plugins']['get']('CommentsRepository'),_0x192ed9=this['_services']['get'](_0x1bb92e),_0x110f77=await _0x192ed9['connect'](_0x3ca5c0);await this['_fetchMissingUsersForThreads'](_0x110f77);const _0x2f74f3=new Set(Array['from'](_0x5e5c12['getCommentThreads']({'channelId':_0x1bb92e}),_0x10f6d4=>_0x10f6d4['id']));for(const _0x4f1551 of _0x110f77)_0x4f1551['deletedAt']||_0x2f74f3['delete'](_0x4f1551['commentThreadId']);for(const _0x4f9ef8 of _0x2f74f3)_0x5e5c12['getCommentThread'](_0x4f9ef8)['remove']({'isFromAdapter':!0x0});for(const _0x5005fb of _0x110f77){let _0x5f17ad=_0x5e5c12['getCommentThread'](_0x5005fb['commentThreadId']);const {commentThreadId:_0x5d2855,context:_0x4f8b79,attributes:_0x51320b,resolvedBy:_0x284286,resolvedAt:_0x508487,unlinkedAt:_0x30ae3b,deletedAt:_0x527849}=_0x5005fb;if(_0x527849)continue;_0x5f17ad||(_0x5f17ad=_0x5e5c12['addCommentThread']({'channelId':_0x1bb92e,'threadId':_0x5d2855,'context':_0x4f8b79,'attributes':_0x51320b||{},'resolvedBy':_0x284286,'resolvedAt':_0x508487,'unlinkedAt':_0x30ae3b,'isFromAdapter':!0x0}));const _0x4c34d9=new Set(Array['from'](_0x5f17ad['comments'],_0x1f2b94=>_0x1f2b94['id']));for(const _0x526842 of _0x5005fb['comments'])_0x4c34d9['delete'](_0x526842['commentId']);for(const _0x52c365 of _0x4c34d9)_0x5f17ad['getComment'](_0x52c365)['remove']({'isFromAdapter':!0x0});for(const _0xb97e4b of _0x5005fb['comments']){const _0x13fe69=_0x5f17ad['getComment'](_0xb97e4b['commentId']);_0x13fe69?_0x13fe69['content']!==_0xb97e4b['content']&&_0x13fe69['update']({'content':_0xb97e4b['content'],'isFromAdapter':!0x0}):_0x5f17ad['addComment'](Object['assign'](S(_0xb97e4b),{'isFromAdapter':!0x0}));}}}['_getService'](_0x202aec){if(!this['_services']['has'](_0x202aec))throw new _0x3d0c02('cloudservicescommentsadapter-service-not-exist',null,{'channelId':_0x202aec});return this['_services']['get'](_0x202aec);}async['_fetchMissingUsersForThreads'](_0x357bdf){const _0x1a42ec=this['context']['plugins']['get'](_0x305f5d),{connection:_0x3ee10e}=this['context']['plugins']['get'](c),_0x2995be=new Set();for(const {resolvedBy:_0x1b4013,comments:_0x126bb4}of _0x357bdf){_0x1b4013&&!_0x1a42ec['getUser'](_0x1b4013)&&_0x2995be['add'](_0x1b4013);for(const {userId:_0x4a4c37}of _0x126bb4)_0x1a42ec['getUser'](_0x4a4c37)||_0x2995be['add'](_0x4a4c37);}if(0x0===_0x2995be['size'])return;const _0x427db8=await dt['getMany'](_0x3ee10e,Array['from'](_0x2995be));for(const _0x5b2e86 of _0x427db8)_0x1a42ec['getUser'](_0x5b2e86['id'])||_0x1a42ec['addUser'](_0x5b2e86);}}async function B(_0x5c8811){if('404'!==_0x5c8811['code'])throw _0x5c8811;}function ut(_0x56d36b){if((_0x3501a1=_0x56d36b)['message']['startsWith']('cloud-services-internal-error:\x20Comments\x20Service\x20is\x20not\x20connected.')||_0x3501a1['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x3501a1['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.'))return new Promise(()=>{});var _0x3501a1;throw _0x56d36b;}function S(_0x2504c0){return{'threadId':_0x2504c0['commentThreadId'],'commentId':_0x2504c0['commentId'],'content':_0x2504c0['content'],'createdAt':_0x2504c0['createdAt'],'authorId':_0x2504c0['userId'],'attributes':_0x2504c0['attributes']||{}};}class f extends _0x3b81de{static ['TrackChangesService']=/* #__PURE__ -- @preserve */
27
+ ((()=>et)());['_bufferedRequests'];['_trackChangesService'];static get['requires'](){return[a,'TrackChangesEditing',c];}static get['pluginName'](){return'CloudServicesTrackChangesAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x56e076){super(_0x56e076);const _0xe3ddc4=this['editor']['config']['get']('collaboration.channelId');this['_bufferedRequests']=new Map(),this['_trackChangesService']=new f['TrackChangesService'](_0xe3ddc4);}['init'](){const _0x831dd1=this['editor']['plugins']['get'](c),_0x1e5ca7=this['editor']['plugins']['get']('TrackChangesEditing');return _0x1e5ca7['adapter']={'getSuggestion':async _0x17dbab=>{await this['_waitForServiceReady']();const _0x548215=await this['_trackChangesService']['get'](_0x17dbab)['catch'](R);return await this['_fetchMissingUsersForThreads']([_0x548215]),_0x548215;},'addSuggestion':async({id:_0x185c40,type:_0x207cbe,data:_0x316a79,originalSuggestionId:_0x579c16,attributes:_0x8ccdbe})=>{await this['_waitForServiceReady']();const _0x31c046={'id':_0x185c40,'type':_0x207cbe,'data':_0x316a79,'originalSuggestionId':_0x579c16,'attributes':_0x8ccdbe},_0x17ece6=await this['_trackChangesService']['add'](_0x185c40,_0x207cbe,_0x316a79,_0x579c16,_0x8ccdbe)['catch'](_0x5a13dd=>{if(ft(_0x5a13dd))return new Promise(_0xf28326=>{this['_bufferedRequests']['set'](_0x185c40,{'resolve':_0xf28326,'suggestionData':_0x31c046});});throw _0x5a13dd;});return this['_bufferedRequests']['delete'](_0x185c40),_0x17ece6;},'updateSuggestion':async(_0x578fa0,_0x6c06a8)=>{if(await this['_waitForServiceReady'](),'open'!==_0x6c06a8['state'])return this['_trackChangesService']['update'](_0x578fa0,_0x6c06a8)['catch'](R);}},this['listenTo'](this['_trackChangesService'],'suggestionUpdated',(_0x2481fa,_0x3ca809)=>{_0x1e5ca7['hasSuggestion'](_0x3ca809['id'])&&(_0x1e5ca7['getSuggestion'](_0x3ca809['id'])['attributes']=_0x3ca809['attributes']);}),this['_trackChangesService']['connect'](_0x831dd1['connection'])['then'](_0x443061=>(_0x831dd1['addToReconnectionStack'](this),this['_fetchMissingUsersForThreads'](_0x443061)['then'](()=>{for(const _0x3cbc12 of _0x443061){_0x1e5ca7['addSuggestionData'](_0x3cbc12)['_saved']=!0x0;}})));}async['reconnect'](){const _0x65b00a=this['editor']['plugins']['get']('TrackChangesEditing'),{connection:_0xe753e4}=this['editor']['plugins']['get'](c),_0x3ee764=await this['_trackChangesService']['connect'](_0xe753e4);await this['_fetchMissingUsersForThreads'](_0x3ee764);for(const {suggestionData:_0x19a384,resolve:_0x3e60c9}of this['_bufferedRequests']['values']()){let _0x2947f3=_0x3ee764['find'](_0x593f59=>_0x593f59['id']===_0x19a384['id']);_0x2947f3||(_0x2947f3=await this['_trackChangesService']['add'](_0x19a384['id'],_0x19a384['type'],_0x19a384['data'],_0x19a384['originalSuggestionId'])),_0x3e60c9(_0x2947f3);}for(const _0x49409d of _0x3ee764)_0x65b00a['hasSuggestion'](_0x49409d['id'])||_0x65b00a['addSuggestionData'](_0x49409d);}async['_waitForServiceReady'](){this['_trackChangesService']['isConnected']||await new Promise(_0x4a356b=>{this['listenTo'](this['_trackChangesService'],'connected',_0x59e3d5=>{_0x59e3d5['off'](),_0x4a356b();});});}async['_fetchMissingUsersForThreads'](_0x945808){const _0x47a164=this['editor']['plugins']['get'](_0x305f5d),{connection:_0x595fb6}=this['editor']['plugins']['get'](c),_0x5028ce=new Set();for(const {authorId:_0x73eb53}of _0x945808)_0x47a164['getUser'](_0x73eb53)||_0x5028ce['add'](_0x73eb53);if(0x0===_0x5028ce['size'])return;const _0x54edd9=await dt['getMany'](_0x595fb6,Array['from'](_0x5028ce));for(const _0x2c675d of _0x54edd9)_0x47a164['getUser'](_0x2c675d['id'])||_0x47a164['addUser'](_0x2c675d);}}function R(_0x2e263c){if(ft(_0x2e263c))return new Promise(()=>{});throw _0x2e263c;}function ft(_0x1ae18){return _0x1ae18['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x1ae18['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}class m extends _0x3b81de{static get['requires'](){return['Comments',a,n,c];}static get['pluginName'](){return'RealTimeCollaborativeComments';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['init'](){const _0x3a858b=this['editor']['plugins']['get'](c),_0x54ae13=this['editor']['plugins']['get']('CommentsEditing'),_0x3e2e12=this['editor']['plugins']['get'](a);return this['editor']['data']['once']('ready',()=>{this['listenTo'](_0x3a858b,'change:state',(_0x198e23,_0x5da1f4,_0x53ed2f)=>{_0x54ae13['isThreadsLoadingPaused']='connected'!==_0x53ed2f;});}),this['listenTo'](_0x3a858b,'change:state',(_0x26cbec,_0x446855,_0x518da1)=>{this['editor']['plugins']['get']('CommentsRepository')['switchReadOnly']('connected'!==_0x518da1);}),_0x3e2e12['_setUpService'](this['editor']['config']['get']('collaboration.channelId'));}['destroy'](){this['editor']['plugins']['get'](a)['_terminateService'](this['editor']['config']['get']('collaboration.channelId')),super['destroy']();}}class p extends _0x3b81de{static get['requires'](){return[m,f,'TrackChanges'];}static get['pluginName'](){return'RealTimeCollaborativeTrackChanges';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}class u extends _0x3b81de{static ['RevisionHistoryService']=/* #__PURE__ -- @preserve */
28
+ ((()=>it)());['_lastRequestId'];['_revisionTracker'];['_revisionHistoryService'];['_oldOffset'];static get['requires'](){return[c,l,'RevisionTracker',i,_0x305f5d];}static get['pluginName'](){return'CloudServicesRevisionHistoryAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x182690){super(_0x182690);const _0x520cb7=this['editor']['config']['get']('collaboration.channelId');this['_lastRequestId']=null,this['_revisionTracker']=this['editor']['plugins']['get']('RevisionTracker'),this['_revisionHistoryService']=new u['RevisionHistoryService'](_0x520cb7);}async['init'](){const _0x448922=this['editor']['plugins']['get'](l),_0x550502=_0x448922['serverHistory'],_0x49224c=this['editor']['plugins']['get'](c);this['_revisionTracker']['setSource']({'history':_0x550502,'getLatestVersion':()=>this['_getLatestVersion'](),'getCurrentRevisionId':()=>_0x448922['sessionId']});const _0x49f063=this['editor']['config']['get']('cloudServices.bundleVersion')||nt,_0x4fec7a=await tt['isBundleUploaded'](_0x49224c['connection'],_0x49f063);this['_revisionTracker']['adapter']={'getRevision':async({revisionId:_0x531ab})=>(await this['_waitForServiceReady'](),await this['_revisionHistoryService']['getRevision'](_0x531ab)),'updateRevisions':async _0x77317b=>{await this['_waitForServiceReady']();const _0x593665=this['_revisionTracker']['currentRevision'];if(_0x4fec7a&&0x1===_0x77317b['length']&&_0x77317b[0x0]['id']===_0x593665['id'])return _0x77317b;for(const _0x896c0a of _0x77317b)_0x896c0a['id']===_0x593665['id']&&(_0x896c0a['isEmptyCurrent']=_0x896c0a['fromVersion']===_0x896c0a['toVersion']);return this['_revisionHistoryService']['updateRevisions'](_0x77317b,this['_lastRequestId'])['then'](_0xee6018=>(this['_lastRequestId']=_0xee6018,_0x77317b))['catch'](_0x279973=>{if(st(_0x279973)||'400'===_0x279973['code']&&void 0x0!==_0x279973['data']['wrongRequestId']){for(const _0x34f9bd of _0x77317b){!this['_revisionTracker']['repository']['getRevision'](_0x34f9bd['id'])||this['_revisionTracker']['_bufferUpdate'](_0x34f9bd['id'],_0x34f9bd,!0x1);}if(st(_0x279973))throw _0x279973;return _0x77317b;}throw _0x279973;});}},this['listenTo'](this['_revisionHistoryService'],'revisionsUpdated',(_0x3ebbf5,{revisionsData:_0x30681d,requestId:_0x16da07})=>{Math['max'](..._0x30681d['map'](_0x59c5d8=>_0x59c5d8['toVersion']))>this['_getLatestVersionFromServerOperations']()-0x1?this['_getLatestVersion']()['then'](()=>{this['_handleRevisionsUpdate'](_0x30681d,_0x16da07);}):this['_handleRevisionsUpdate'](_0x30681d,_0x16da07);});const {revisions:_0x275a33,requestId:_0x25a5ee}=await this['_revisionHistoryService']['connect'](_0x49224c['connection']);_0x49224c['addToReconnectionStack'](this),this['_lastRequestId']=_0x25a5ee,await this['_fetchMissingUsers'](_0x275a33);for(const _0x4453b6 of _0x275a33)this['_revisionTracker']['addRevisionData'](_0x4453b6);this['listenTo'](_0x448922,'change:_isConnected',(_0x1654e1,_0x5c666b,_0x5a6212)=>{_0x5a6212&&(this['_oldOffset']=_0x448922['_offset'],_0x1654e1['off']());}),this['_revisionTracker']['bind']('isEnabled')['to'](_0x49224c,'state',_0x4ad18c=>_0x4ad18c===_0x597b3f['CONNECTED']);}async['reconnect'](){const _0x2b328f=this['editor']['plugins']['get'](c),_0x232bee=this['editor']['plugins']['get'](l),_0x54580f=async()=>{const _0x18e3b4=this['_revisionTracker']['currentRevision'],_0x178fb1=_0x18e3b4['id'],_0x20c85e=_0x178fb1!==_0x232bee['sessionId'];if(_0x20c85e){const _0x510727=_0x232bee['_offset']-this['_oldOffset'],_0x4135fb=this['_getLatestVersionFromServerOperations']();this['_revisionTracker']['_revisionDataBuilder']['reInit']();if(_0x18e3b4['toVersion']+_0x510727!==_0x4135fb){const _0x40a5f8=_0x18e3b4['fromVersion']+_0x510727,_0x514a65=this['editor']['plugins']['get'](_0x305f5d),_0x4bff66=this['_revisionTracker']['buildRevisionData']({'revision':_0x18e3b4,'from':_0x40a5f8,'to':_0x4135fb});_0x4bff66['id']=_0x18e3b4['id'];const _0x4ffbdf=_0x4bff66['authorsIds']['map'](_0x54b5f0=>_0x514a65['getUser'](_0x54b5f0));_0x18e3b4['_update']({..._0x4bff66,'authors':_0x4ffbdf},!0x0),this['_revisionTracker']['_bufferUpdate'](_0x18e3b4['id'],_0x4bff66,!0x0);}this['_revisionTracker']['_startingVersion']=_0x4135fb,(_0x18e3b4['toVersion']===_0x18e3b4['fromVersion']&&!this['_revisionTracker']['_bufferedUpdates']['has'](_0x178fb1)&&this['_revisionTracker']['repository']['_revisions']['remove'](_0x178fb1),this['_revisionTracker']['_createCurrentRevision'](_0x4135fb));}const {revisions:_0x2262a2,requestId:_0x183b3e}=await this['_revisionHistoryService']['reconnect'](_0x2b328f['connection'],this['_lastRequestId']);_0x20c85e&&_0x2262a2['length']>0x0?_0x232bee['_handleReconnectionError']():(await this['_fetchMissingUsers'](_0x2262a2),this['_handleRevisionsUpdate'](_0x2262a2,_0x183b3e),this['_revisionTracker']['sendBufferedUpdates']());};return _0x232bee['_isConnected']?_0x54580f():new Promise((_0x4c6dc1,_0x141b9f)=>{_0x232bee['once']('change:_isConnected',()=>{_0x54580f()['then'](_0x4c6dc1)['catch'](_0x141b9f);});});}['destroy'](){super['destroy']();}async['_waitForServiceReady'](){this['_revisionHistoryService']['isConnected']||await new Promise(_0x35edc6=>{this['listenTo'](this['_revisionHistoryService'],'connected',_0x5208af=>{_0x5208af['off'](),_0x35edc6();});});}['_getLatestVersionFromServerOperations'](){const _0x3e14ce=this['editor']['plugins']['get'](l)['serverHistory']['getOperations']()['reverse']();for(const _0x273d33 of _0x3e14ce)if('marker'!==_0x273d33['type']||_0x273d33['affectsData'])return _0x273d33['baseVersion']+0x1;}['_getLatestVersion'](){const _0x20e67e=this['editor']['plugins']['get'](l);return new Promise(_0x19372c=>{_0x20e67e['_isPendingUpdate']?_0x20e67e['once']('change:_isPendingUpdate',()=>{_0x19372c(this['_getLatestVersionFromServerOperations']());}):_0x19372c(this['_getLatestVersionFromServerOperations']());});}['_handleRevisionsUpdate'](_0x5cb753,_0x23242b){const _0x44f2b4=this['_revisionTracker']['repository'];this['_lastRequestId']=_0x23242b;for(const _0x37a8dd of _0x5cb753){const _0x40ddb4=_0x44f2b4['getRevision'](_0x37a8dd['id']);if(_0x40ddb4){if((_0x37a8dd['fromVersion']||_0x37a8dd['toVersion'])&&(_0x37a8dd['diffData']=null),_0x40ddb4===this['_revisionTracker']['currentRevision']){const _0x1d9fa6=Math['max'](_0x40ddb4['toVersion'],_0x37a8dd['toVersion']),_0x3ff617=Math['max'](_0x40ddb4['fromVersion'],_0x37a8dd['fromVersion']);let _0x748352;_0x40ddb4['toVersion']===_0x37a8dd['toVersion']&&_0x40ddb4['fromVersion']===_0x37a8dd['fromVersion']?(_0x748352=!0x0,this['_preventResendingRevisionData'](_0x37a8dd)):_0x37a8dd['toVersion']===_0x1d9fa6&&_0x37a8dd['fromVersion']===_0x3ff617?_0x748352=!0x1:(_0x40ddb4['toVersion']===_0x1d9fa6&&_0x40ddb4['fromVersion']===_0x3ff617||this['_fixRevision']({'revision':_0x40ddb4,'from':_0x3ff617,'to':_0x1d9fa6}),_0x748352=!0x0),_0x748352&&(delete _0x37a8dd['fromVersion'],delete _0x37a8dd['toVersion'],delete _0x37a8dd['diffData'],delete _0x37a8dd['createdAt'],delete _0x37a8dd['authorsIds']);}this['_revisionTracker']['setRevisionData'](_0x37a8dd),this['_preventResendingRevisionData'](_0x37a8dd);}else this['_revisionTracker']['addRevisionData'](_0x37a8dd);}const _0xac995a=_0x44f2b4['getRevisions']();_0xac995a['reverse']();for(let _0xa4c290=0x0;_0xa4c290<_0xac995a['length']-0x1;_0xa4c290++){const _0x25ab96=_0xac995a[_0xa4c290],_0x42303d=_0xac995a[_0xa4c290+0x1];if(_0x25ab96['fromVersion']<_0x42303d['toVersion']){const _0x39386f=_0x42303d['toVersion'],_0x3523e6=Math['max'](_0x39386f,_0x25ab96['toVersion']);this['_fixRevision']({'revision':_0x25ab96,'from':_0x39386f,'to':_0x3523e6});}}}['_fixRevision']({revision:_0x11c5e5,from:_0x429d4b,to:_0x5e7867}={}){const _0xa4bc3b=this['editor']['plugins']['get'](_0x305f5d),_0x43cf91=this['_revisionTracker']['buildRevisionData']({'revision':_0x11c5e5,'from':_0x429d4b,'to':_0x5e7867});_0x43cf91['authors']=_0x43cf91['authorsIds']['map'](_0x2ff61b=>_0xa4bc3b['getUser'](_0x2ff61b)),_0x11c5e5['_update'](_0x43cf91);}['_preventResendingRevisionData'](_0x598e46){const _0xcd2dcc={};_0xcd2dcc['id']=_0x598e46['id'];for(const _0x59ddbd of Object['keys'](_0x598e46))'id'!==_0x59ddbd&&(_0xcd2dcc[_0x59ddbd]=void 0x0);this['_revisionTracker']['_bufferUpdate'](_0xcd2dcc['id'],_0xcd2dcc,!0x0);}async['_fetchMissingUsers'](_0x374661){const _0x234fa3=this['editor']['plugins']['get'](_0x305f5d),{connection:_0x2de467}=this['editor']['plugins']['get'](c),_0x1a1f52=new Set();for(const _0x5de212 of _0x374661){for(const _0x153774 of _0x5de212['authorsIds'])_0x3f3f9c(_0x153774);_0x5de212['creatorId']&&_0x3f3f9c(_0x5de212['creatorId']);}if(0x0===_0x1a1f52['size'])return;const _0x2699f0=await dt['getMany'](_0x2de467,Array['from'](_0x1a1f52));for(const _0x12d624 of _0x2699f0)_0x234fa3['getUser'](_0x12d624['id'])||_0x234fa3['addUser'](_0x12d624);function _0x3f3f9c(_0x71b7c0){_0x234fa3['getUser'](_0x71b7c0)||_0x1a1f52['add'](_0x71b7c0);}}}function st(_0x483802){return _0x483802['message']['startsWith']('cloud-services-internal-error:\x20Revision\x20History\x20Service\x20is\x20not\x20connected.')||_0x483802['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x483802['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}class g extends _0x3b81de{static get['requires'](){return['RevisionHistory',u,n];}static get['pluginName'](){return'RealTimeCollaborativeRevisionHistory';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}class ts extends _0x57c216{constructor(_0x539bc6){super(_0x539bc6);const _0x38105d=this['bindTemplate'];this['set']('usersCount',0x0),this['set']('isHidden',!0x0),this['setTemplate']({'tag':'div','attributes':{'class':['ck','ck-presence-list__counter',_0x38105d['if']('isHidden','ck-presence-list__counter--hidden')]},'children':[{'text':_0x38105d['to']('usersCount',_0x1f9f69=>q(_0x539bc6,'CONNECTED_USERS',_0x1f9f69))}]});}}class es extends _0x57c216{['items'];['keystrokes'];constructor(_0x2cfeaf){super(_0x2cfeaf);const _0x302678=this['bindTemplate'];this['items']=this['createCollection'](),this['keystrokes']=new _0x57d7ba(),this['set']({'hasPopup':!0x1,'isExpanded':!0x1}),this['setTemplate']({'tag':'div','attributes':{'aria-haspopup':_0x302678['if']('hasPopup'),'aria-expanded':_0x302678['to']('isExpanded',_0x4643bd=>this['hasPopup']&&String(_0x4643bd)),'aria-label':_0x302678['to']('hasPopup',_0x54f924=>q(_0x2cfeaf,_0x54f924?'Collapsed\x20connected\x20users\x20list\x20(press\x20ENTER\x20to\x20open\x20it)':'Connected\x20users\x20list')),'role':'list','tabindex':_0x302678['to']('hasPopup',_0x237930=>!!_0x237930&&0x0),'class':['ck','ck-presence-list__list']},'children':this['items'],'on':{'click':_0x302678['to'](()=>this['fire']('execute'))}}),this['on']('change:hasPopup',(_0xacbac1,_0x145eb1,_0xe54051)=>{this['element']&&(_0xe54051?this['element']['setAttribute']('aria-expanded',String(this['isExpanded'])):this['element']['removeAttribute']('aria-expanded'));});}['focus'](){this['element']['focus']();}['render'](){super['render'](),this['keystrokes']['listenTo'](this['element']);}}class L extends _0x57c216{['counterView'];['inlineListView'];constructor(_0xa7bce){super(_0xa7bce);const _0x5c9015=this['bindTemplate'];this['set']('isCollapsed',!0x0),this['counterView']=new ts(this['locale']),this['inlineListView']=new es(_0xa7bce),this['inlineListView']['bind']('hasPopup')['to'](this,'isCollapsed'),this['listenTo'](this['inlineListView']['items'],'change',()=>{for(const _0x5191ae of this['inlineListView']['items'])_0x5191ae['tooltipPosition']='s';this['inlineListView']['items']['first']&&(this['inlineListView']['items']['first']['tooltipPosition']='se');}),this['setTemplate']({'tag':'div','attributes':{'class':['ck','ck-presence-list','ck-reset','ck-rounded-corners',_0x5c9015['if']('isCollapsed','ck-presence-list--collapsed')]},'children':[this['counterView'],this['inlineListView']]});}}class j extends _0x57c216{['listWrapperView'];constructor(_0x27d01a,_0x5434c2){super(_0x27d01a),this['listWrapperView']=new mt(_0x27d01a,_0x5434c2),this['setTemplate']({'tag':'div','attributes':{'tabindex':-0x1,'role':'application','class':['ck','ck-presence-list__dropdown-list'],'aria-label':q(_0x27d01a,'Connected\x20users\x20list\x20dropdown\x20menu')},'children':[this['listWrapperView']]});}}class mt extends _0x121aff{constructor(_0x44fbd3,_0x494336){super(_0x44fbd3);const _0x1c2d55=this['bindTemplate'];this['set']('_isScrollable',!0x1),this['setTemplate']({'tag':_0x494336?'div':'ul','attributes':{'class':['ck','ck-reset','ck-list','ck-presence-list__dropdown-list-wrapper',_0x1c2d55['if']('_isScrollable','ck-presence-list__dropdown-list-wrapper_scrollable')],'role':_0x1c2d55['to']('role'),'aria-label':_0x1c2d55['to']('ariaLabel'),'aria-labelledby':_0x1c2d55['to']('ariaLabelledBy')},'children':this['items']}),this['listenTo'](_0x5a383f['window'],'resize',()=>this['checkIfScrollable']()),this['items']['on']('change',()=>this['checkIfScrollable']());}['render'](){super['render'](),this['checkIfScrollable']();}['checkIfScrollable'](){const _0x5e15c2=this['element'];_0x5e15c2&&(this['_isScrollable']=Math['max'](_0x5e15c2['scrollHeight'],_0x5e15c2['clientHeight'])>0.8*window['innerHeight']);}}class k extends rt{['userView'];constructor(_0x2cdfa6,_0x4b8918,_0xdc0616){super(_0x2cdfa6);const _0x374632=this['bindTemplate'];this['userView']=new ct(_0x2cdfa6,_0x4b8918);const _0xdcc022={'tag':'li','attributes':{'class':['ck','ck-presence-list__dropdown-list-item'],'tabindex':-0x1,'role':'presentation','aria-label':_0x4b8918['name']},'children':[this['userView'],{'tag':'span','attributes':{'class':['ck','ck-user__full-name']},'children':[{'text':_0x4b8918['name']}]},{'tag':'span','attributes':{'class':['ck','ck-presence-list__marker',_0x4b8918['color']['getBackgroundColorClass']()],'aria-hidden':'true'}}]};_0xdc0616&&(_0xdcc022['tag']='button',_0xdcc022['on']={'click':_0x374632['to'](()=>this['fire']('execute'))}),this['setTemplate'](_0xdcc022);}['focus'](){this['element']['focus']();}}class y extends _0x57c216{['userView'];['markerView'];constructor(_0x2174e2,_0x594ab2,_0x350e75){super(_0x2174e2);const _0x45e08a=this['bindTemplate'];this['set']('isFocusable',!0x1),this['set']('hasTooltip',!0x0),this['set']('tooltipPosition',''),this['userView']=new ct(_0x2174e2,_0x594ab2),this['markerView']=new at(_0x2174e2,_0x594ab2);const _0x5744cd=new ot(_0x2174e2);_0x5744cd['template']['tag']='span',_0x5744cd['text']=_0x594ab2['name'];const _0x5cd04e={'tag':'div','attributes':{'class':['ck','ck-presence-list__list-item'],'role':'listitem','tabindex':_0x45e08a['to']('isFocusable',_0xfe667=>!!_0xfe667&&0x0),'aria-labelledby':_0x5744cd['id'],'data-cke-tooltip-text':this['userView']['name'],'data-cke-tooltip-position':_0x45e08a['to']('tooltipPosition'),'data-cke-tooltip-disabled':_0x45e08a['to']('hasTooltip',_0x3b6c9a=>!_0x3b6c9a),'data-cke-tooltip-class':'ck-presence-list__list-item__tooltip'},'children':[this['userView'],this['markerView'],_0x5744cd]};_0x350e75&&(_0x5cd04e['tag']='button',_0x5cd04e['on']={'click':_0x45e08a['to'](()=>this['fire']('execute'))}),this['setTemplate'](_0x5cd04e);}}class at extends _0x57c216{constructor(_0x289fa3,_0x17af32){super(_0x289fa3),this['setTemplate']({'tag':'span','attributes':{'class':['ck','ck-presence-list__marker',_0x17af32['color']['getBackgroundColorClass']()],'aria-hidden':'true'}});}}const A={'collapseAt':0x6,'displayMe':!0x0};class r extends _0x5b046d{['currentDisplayedUsers'];['balloonPanelView'];['view'];['presenceDropdownView'];['_bodyCollection']=null;constructor(_0x2c94ec){super(_0x2c94ec),this['context']['config']['define']('presenceList',A);const _0x578c8d=_0x2c94ec['config']['get']('presenceList.collapseAt');if('number'!=typeof _0x578c8d)throw new _0x3d0c02('presencelist-collapseat-invalid-format',this);if(_0x578c8d<0x1)throw new _0x3d0c02('presencelist-collapseat-invalid-format',this);this['_allConnectedUsers']=this['context']['plugins']['get'](i)['allConnectedUsers'],this['set']('usersCount',0x0),this['currentDisplayedUsers']=new _0x3c61b0(),this['balloonPanelView']=new _0x2e4728(),this['balloonPanelView']['class']='ck\x20ck-presence-list__balloon',this['view']=this['_createView'](),this['presenceDropdownView']=void 0x0;}static get['requires'](){return[i];}['init'](){for(const _0x35f3ac of this['_allConnectedUsers'])this['_handleUserAdd'](_0x35f3ac);this['listenTo'](this['_allConnectedUsers'],'add',(_0xcfdcd5,_0x372b83)=>{this['_handleUserAdd'](_0x372b83);}),this['listenTo'](this['_allConnectedUsers'],'remove',(_0x1c357c,_0x4d23b5)=>{this['_handleUserRemove'](_0x4d23b5);});}['_createView'](){const _0x5d8ea7=this['context'],_0x288bc1=new L(this['context']['locale']),_0x4c0780=this['balloonPanelView'];if(!_0x4c3572(_0x5d8ea7['config']['get']('presenceList.container')))throw new _0x3d0c02('presencelist-missing-container',this);return _0x288bc1['counterView']['bind']('usersCount')['to'](this),_0x288bc1['bind']('isCollapsed')['to'](this,'usersCount',_0x315467=>{const {collapseAt:_0x3b7ff9,displayMe:_0x59e70b}=_0x5d8ea7['config']['get']('presenceList'),_0x30d3e3=_0x315467>=_0x3b7ff9;return _0x288bc1['counterView']['isHidden']=!(0x1==_0x315467&&_0x59e70b||_0x30d3e3),_0x30d3e3||this['hideDropdown'](),_0x30d3e3;}),_0x288bc1['inlineListView']['items']['bindTo'](this['currentDisplayedUsers'])['using'](_0x52f658=>{const _0x2d054d=_0x5d8ea7['config']['get']('presenceList'),_0x444b8b=new y(_0x5d8ea7['locale'],_0x52f658,!!_0x2d054d['onClick']);return _0x444b8b['bind']('hasTooltip')['to'](_0x288bc1,'isCollapsed',_0x130753=>!_0x130753),_0x444b8b['bind']('isFocusable')['to'](_0x288bc1,'isCollapsed',_0x284ce8=>!_0x284ce8),_0x2d054d['onClick']&&this['listenTo'](_0x444b8b,'execute',()=>{this['view']['isCollapsed']||_0x2d054d['onClick'](_0x52f658,_0x444b8b['element']);}),_0x444b8b;}),this['listenTo'](_0x288bc1['inlineListView'],'execute',()=>{this['presenceDropdownView']?this['hideDropdown']():this['view']['isCollapsed']&&this['showDropdown']();}),_0x288bc1['inlineListView']['keystrokes']['set']('Enter',(_0x37a008,_0x5988bf)=>{this['view']['isCollapsed']&&(this['showDropdown'](),_0x5988bf());}),_0x288bc1['render'](),_0x4c0780['render'](),_0x18b487({'emitter':_0x288bc1,'activator':()=>_0x4c0780['isVisible'],'contextElements':[_0x4c0780['element'],_0x288bc1['inlineListView']['element']],'callback':()=>this['hideDropdown']()}),_0x5d8ea7['config']['get']('presenceList.container')['appendChild'](_0x288bc1['element']),this['_bodyCollection']=new _0x2000c1(this['context']['locale']),this['_bodyCollection']['attachToDom'](),this['_bodyCollection']['add'](this['balloonPanelView']),_0x288bc1;}['_handleUserAdd'](_0x332ddc){if(!this['context']['config']['get']('presenceList.displayMe')&&_0x332ddc['isMe'])return;const _0x83860=this['context']['config']['get']('presenceList.collapseAt')-0x1;this['usersCount']++,this['currentDisplayedUsers']['length']==_0x83860&&this['currentDisplayedUsers']['length']>0x1&&this['currentDisplayedUsers']['remove'](0x1);const _0x21f0a7=_0x332ddc['isMe']?0x0:this['currentDisplayedUsers']['length'];this['currentDisplayedUsers']['add'](_0x332ddc,_0x21f0a7);}['_handleUserRemove'](_0x266bb4){if(this['usersCount']--,this['currentDisplayedUsers']['get'](_0x266bb4['id'])&&(this['currentDisplayedUsers']['remove'](_0x266bb4['id']),this['currentDisplayedUsers']['length']<this['usersCount'])){for(const _0x100327 of Array['from'](this['_allConnectedUsers'])['reverse']())if(!this['currentDisplayedUsers']['get'](_0x100327['id']))return void this['currentDisplayedUsers']['add'](_0x100327,Math['min'](this['currentDisplayedUsers']['length'],0x1));}}['showDropdown'](){if(this['presenceDropdownView'])return;const _0x5bbef1=this['context']['config']['get']('presenceList');this['presenceDropdownView']=new j(this['context']['locale'],!!_0x5bbef1['onClick']),this['view']['inlineListView']['isExpanded']=!0x0;const {listWrapperView:_0x515b07}=this['presenceDropdownView'];_0x515b07['items']['bindTo'](this['_allConnectedUsers'])['using'](_0x2603b4=>{if(!_0x5bbef1['displayMe']&&_0x2603b4['isMe'])return null;const _0x3eae13=new k(this['context']['locale'],_0x2603b4,!!_0x5bbef1['onClick']);return _0x5bbef1['onClick']&&this['listenTo'](_0x3eae13,'execute',()=>{_0x5bbef1['onClick'](_0x2603b4,_0x3eae13['element']);}),_0x3eae13;}),this['balloonPanelView']['content']['add'](this['presenceDropdownView']),this['balloonPanelView']['pin']({'target':this['view']['inlineListView']['element']}),_0x515b07['focus'](),_0x515b07['checkIfScrollable']();const _0x286aa2=(_0x432347,_0x3429a4)=>{this['hideDropdown'](),this['view']['inlineListView']['focus'](),_0x3429a4();};_0x515b07['keystrokes']['set']('Esc',_0x286aa2),_0x515b07['keystrokes']['set']('Shift+Tab',_0x286aa2),_0x515b07['keystrokes']['set']('Tab',(_0x1763fb,_0x1a74ce)=>{!function(_0x15eefa){const _0x541498=['a','button','input','select','textarea','[tabindex]','[contenteditable]']['map'](_0xfd1d22=>_0xfd1d22+':not([disabled]):not([tabindex=\x22-1\x22])')['join'](','),_0x2f9614=[...document['body']['querySelectorAll'](_0x541498)]['filter'](_0x30c900=>_0x30c900===document['activeElement']||_0x30c900['offsetWidth']+_0x30c900['offsetHeight']>0x0)['sort']((_0x4d1e95,_0x5e8810)=>(_0x4d1e95['tabIndex']||0x0)-(_0x5e8810['tabIndex']||0x0)),_0x55737b=_0x2f9614['indexOf'](_0x15eefa),_0x22a269=_0x2f9614[(_0x55737b+0x1)%_0x2f9614['length']];_0x22a269&&_0x22a269['focus']();}(this['view']['element']),this['hideDropdown'](),_0x1a74ce();}),_0x515b07['focusTracker']['add'](this['view']['element']),_0x515b07['focusTracker']['on']('change:isFocused',(_0x46ea8e,_0x3d946d,_0x5a1473)=>{_0x5a1473||this['hideDropdown']();});}['hideDropdown'](){this['presenceDropdownView']&&(this['view']['inlineListView']['isExpanded']=!0x1,this['balloonPanelView']['unpin'](),this['balloonPanelView']['content']['remove'](this['presenceDropdownView']),this['presenceDropdownView']['destroy'](),this['presenceDropdownView']=void 0x0);}['destroy'](){super['destroy'](),this['view']&&this['view']['isRendered']&&this['view']['destroy'](),this['_bodyCollection']&&(this['_bodyCollection']['detachFromDom'](),this['_bodyCollection']['destroy'](),this['_bodyCollection']=null);}}class s extends _0x5b046d{static get['requires'](){return[i,r];}static get['pluginName'](){return'PresenceList';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}export{a as CloudServicesCommentsAdapter,u as CloudServicesRevisionHistoryAdapter,f as CloudServicesTrackChangesAdapter,s as PresenceList,l as RealTimeCollaborationClient,m as RealTimeCollaborativeComments,n as RealTimeCollaborativeEditing,g as RealTimeCollaborativeRevisionHistory,p as RealTimeCollaborativeTrackChanges};
@@ -20,4 +20,4 @@
20
20
  *
21
21
  *
22
22
  */
23
- export default{'af':{'dictionary':{'CONNECTED_USERS':['',''],'PENDING_ACTION_SENDING_DATA':'','Synchronization\x20issue':'','Connected\x20users\x20list\x20dropdown\x20menu':'','Connected\x20users\x20list':'','Collapsed\x20connected\x20users\x20list\x20(press\x20ENTER\x20to\x20open\x20it)':'','The\x20document\x20cannot\x20be\x20connected\x20back\x20to\x20the\x20server.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':'','The\x20document\x20details\x20could\x20not\x20be\x20taken\x20during\x20the\x20reconnection.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':'','The\x20last\x20saved\x20version\x20of\x20the\x20document\x20does\x20not\x20match\x20the\x20local\x20version.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':'','The\x20local\x20document\x20and\x20server\x20document\x20differ\x20and\x20merging\x20them\x20can\x20cause\x20unexpected\x20behavior.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':''},'getPluralForm':_0x101a1d=>0x1!=_0x101a1d}};
23
+ export default{'af':{'dictionary':{'CONNECTED_USERS':['',''],'PENDING_ACTION_SENDING_DATA':'','Synchronization\x20issue':'','Connected\x20users\x20list\x20dropdown\x20menu':'','Connected\x20users\x20list':'','Collapsed\x20connected\x20users\x20list\x20(press\x20ENTER\x20to\x20open\x20it)':'','The\x20document\x20cannot\x20be\x20connected\x20back\x20to\x20the\x20server.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':'','The\x20document\x20details\x20could\x20not\x20be\x20taken\x20during\x20the\x20reconnection.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':'','The\x20last\x20saved\x20version\x20of\x20the\x20document\x20does\x20not\x20match\x20the\x20local\x20version.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':'','The\x20local\x20document\x20and\x20server\x20document\x20differ\x20and\x20merging\x20them\x20can\x20cause\x20unexpected\x20behavior.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':''},'getPluralForm':_0x4da334=>0x1!=_0x4da334}};
@@ -20,4 +20,4 @@
20
20
  *
21
21
  *
22
22
  */
23
- (_0x322691=>{const {af:{dictionary:_0x3c198e,getPluralForm:_0x13d030}}={'af':{'dictionary':{'CONNECTED_USERS':['',''],'PENDING_ACTION_SENDING_DATA':'','Synchronization\x20issue':'','Connected\x20users\x20list\x20dropdown\x20menu':'','Connected\x20users\x20list':'','Collapsed\x20connected\x20users\x20list\x20(press\x20ENTER\x20to\x20open\x20it)':'','The\x20document\x20cannot\x20be\x20connected\x20back\x20to\x20the\x20server.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':'','The\x20document\x20details\x20could\x20not\x20be\x20taken\x20during\x20the\x20reconnection.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':'','The\x20last\x20saved\x20version\x20of\x20the\x20document\x20does\x20not\x20match\x20the\x20local\x20version.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':'','The\x20local\x20document\x20and\x20server\x20document\x20differ\x20and\x20merging\x20them\x20can\x20cause\x20unexpected\x20behavior.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':''},'getPluralForm':_0x43d0de=>0x1!=_0x43d0de}};_0x322691['af']||={'dictionary':{},'getPluralForm':null},_0x322691['af']['dictionary']=Object['assign'](_0x322691['af']['dictionary'],_0x3c198e),_0x322691['af']['getPluralForm']=_0x13d030;})(window['CKEDITOR_TRANSLATIONS']||={});
23
+ (_0x3c4750=>{const {af:{dictionary:_0x27e003,getPluralForm:_0x687554}}={'af':{'dictionary':{'CONNECTED_USERS':['',''],'PENDING_ACTION_SENDING_DATA':'','Synchronization\x20issue':'','Connected\x20users\x20list\x20dropdown\x20menu':'','Connected\x20users\x20list':'','Collapsed\x20connected\x20users\x20list\x20(press\x20ENTER\x20to\x20open\x20it)':'','The\x20document\x20cannot\x20be\x20connected\x20back\x20to\x20the\x20server.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':'','The\x20document\x20details\x20could\x20not\x20be\x20taken\x20during\x20the\x20reconnection.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':'','The\x20last\x20saved\x20version\x20of\x20the\x20document\x20does\x20not\x20match\x20the\x20local\x20version.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':'','The\x20local\x20document\x20and\x20server\x20document\x20differ\x20and\x20merging\x20them\x20can\x20cause\x20unexpected\x20behavior.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':''},'getPluralForm':_0x35e6ff=>0x1!=_0x35e6ff}};_0x3c4750['af']||={'dictionary':{},'getPluralForm':null},_0x3c4750['af']['dictionary']=Object['assign'](_0x3c4750['af']['dictionary'],_0x27e003),_0x3c4750['af']['getPluralForm']=_0x687554;})(window['CKEDITOR_TRANSLATIONS']||={});