@ckeditor/ckeditor5-real-time-collaboration 43.3.0-alpha.8 → 43.3.1-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (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 _0x1f4b11,Plugin as _0x19a2cf,PendingActions as _0x348cb2,Context as _0x40f0f4}from'@ckeditor/ckeditor5-core/dist/index.js';import{DomEmitterMixin as _0x232e3e,CKEditorError as _0x111ec8,Collection as _0x31aad8,global as _0x378d67,version as nt,uid as _0x2d4457,KeystrokeHandler as _0x193340}from'@ckeditor/ckeditor5-utils/dist/index.js';import{Notification as _0x489625,View as _0x348816,ListView as _0x1b93e4,ListItemView as rt,LabelView as ot,BalloonPanelView as _0x589f52,clickOutsideHandler as _0x15bf43,BodyCollection as _0x1080b2}from'@ckeditor/ckeditor5-ui/dist/index.js';import{LiveRange as ht,History as _0x46144f,NoOperation as _0x3310ee,InsertOperation as _0x433745,MarkerOperation as _0x253e69,RootAttributeOperation as _0x560b41,transformSets as _0x5453a3,OperationFactory as _0x4b5901}from'@ckeditor/ckeditor5-engine/dist/index.js';import{WebSocketGateway as lt,WEB_SOCKET_GATEWAY_STATES as _0x3e94aa,CollaborativeEditingService as _0x43a9a2,User as dt,CommentsService as _0xfbf3c9,TrackChangesService as tt,RevisionHistoryService as et,EditorService as st}from'@ckeditor/ckeditor-cloud-services-collaboration/dist/index.js';import{Users as _0x2bb1a6,UserView as ct}from'ckeditor5-collaboration/dist/index.js';import{Compressor as _0xf624f5}from'@ckeditor/ckeditor5-operations-compressor/dist/index.js';import{isElement as _0x2bce76}from'lodash-es';class c extends _0x1f4b11{static ['WebSocketGateway']=/* #__PURE__ -- @preserve */
24
- ((()=>lt)());static ['initialReconnectionInterval']=0x3e8;['connection'];['_reconnectionStack'];['_shouldPluginsReconnect'];['_domEmitter'];static get['requires'](){return['CloudServices',_0x489625];}static get['pluginName'](){return'WebSocketGateway';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x1ed242){super(_0x1ed242),this['set']('state',_0x3e94aa['CONNECTED']),this['set']('_isBrowserOffline',!0x1),this['_reconnectionStack']=new Set(),this['_shouldPluginsReconnect']=!0x1,this['_domEmitter']=Object['create'](_0x232e3e);}['init'](){const _0x13fac6=this['context'],_0x770ae7=_0x13fac6['plugins']['get']('CloudServices'),_0x546995=_0x13fac6['plugins']['get'](_0x489625);if(!_0x770ae7['token'])throw new _0x111ec8('websocketgateway-missing-token',this);if(!_0x770ae7['webSocketUrl'])throw new _0x111ec8('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'](_0x770ae7['token'],_0x770ae7['webSocketUrl'],{'timeout':0x3e8*this['context']['config']['get']('cloudServices.connectionTimeout'),'requestTimeout':0x3e8*this['context']['config']['get']('cloudServices.requestTimeout')})['then'](_0x55af22=>{if(this['connection']=_0x55af22,this['bind']('state')['to'](_0x55af22,'state',this,'_isBrowserOffline',(_0x566803,_0x19cd33)=>('connected'!==_0x566803&&(this['_shouldPluginsReconnect']=!0x0),_0x19cd33||_0x566803!==_0x3e94aa['CONNECTED']?_0x3e94aa['DISCONNECTED']:this['state']==_0x3e94aa['DISCONNECTED']&&this['_shouldPluginsReconnect']?(this['_shouldPluginsReconnect']=!0x1,this['_reconnect'](),_0x3e94aa['CONNECTING']):_0x3e94aa['CONNECTED'])),this['connection']['on']('error',(_0x3b431e,_0x4287e1)=>{if('limitExceeded'!==_0x4287e1['code'])throw console['error'](_0x4287e1),new _0x111ec8('cloudservices-init',null,{'originalError':_0x4287e1});_0x546995['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'});}),!_0x55af22['me'])return new Promise(_0x272aff=>_0x55af22['on']('change:me',_0x272aff));})['catch'](_0x385273=>{throw console['error'](_0x385273),new _0x111ec8('cloudservices-init',null,{'originalError':_0x385273});});}['addToReconnectionStack'](_0xfc9c47){if('function'!=typeof _0xfc9c47['reconnect'])throw new _0x111ec8('websocketgateway-invalid-plugin-interface',this);if(this['isInReconnectionStack'](_0xfc9c47))throw new _0x111ec8('websocketgateway-plugin-already-registered',this,{'name':_0xfc9c47['constructor']['pluginName']});this['_reconnectionStack']['add'](_0xfc9c47);}['removeFromReconnectionStack'](_0xa8e371){this['_reconnectionStack']['delete'](_0xa8e371);}['isInReconnectionStack'](_0x5d953c){return this['_reconnectionStack']['has'](_0x5d953c);}['_reconnect'](){return this['connection']['reconnect']()['then'](()=>Promise['all'](Array['from'](this['_reconnectionStack'],_0x42b55b=>_0x42b55b['reconnect']())))['then'](()=>this['state']=_0x3e94aa['CONNECTED'])['catch'](_0x1e6e48=>{throw console['error'](_0x1e6e48),new _0x111ec8('cloudservices-reconnection-error',this['context']);});}['destroy'](){this['connection']&&this['connection']['disconnect'](),this['state']=_0x3e94aa['DISCONNECTED'],this['_domEmitter']['stopListening'](),super['destroy']();}}class i extends _0x1f4b11{['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,_0x2bb1a6];}constructor(_0x3721d5){super(_0x3721d5),this['channelSessions']=new Map(),this['channelConnectedUsers']=new Map(),this['allConnectedUsers']=new _0x31aad8(),this['_registeredSessions']=new Map(),this['_uniqueUsersCount']=0x0,this['_users']=this['context']['plugins']['get'](_0x2bb1a6);}['init'](){const _0x4df366=this['context']['plugins']['get'](c);this['listenTo'](_0x4df366,'change:state',(_0x45b03e,_0x28f9df,_0x3a4877)=>{if('connected'!==_0x3a4877)this['channelSessions']['forEach'](_0x53268d=>_0x53268d['clear']()),this['channelConnectedUsers']['forEach'](_0x5efc55=>_0x5efc55['clear']()),this['allConnectedUsers']['clear']();else{for(const [_0x4e009a,_0x1fb6c4]of this['_registeredSessions'])for(const _0x17f29b of _0x1fb6c4)this['_handleSessionAdd'](_0x4e009a,_0x17f29b);}}),this['_createUser'](_0x4df366['connection']['me'],!0x0);}['register'](_0x15de8e,_0xaacc7f){if(this['_registeredSessions']['has'](_0x15de8e))throw new _0x111ec8('sessions-register-already-registered',null,{'channelId':_0x15de8e});this['_registeredSessions']['set'](_0x15de8e,_0xaacc7f),this['channelSessions']['set'](_0x15de8e,new _0x31aad8()),this['channelConnectedUsers']['set'](_0x15de8e,new _0x31aad8()),this['listenTo'](_0xaacc7f,'add',(_0x2cca23,_0x2d838b)=>this['_handleSessionAdd'](_0x15de8e,_0x2d838b)),this['listenTo'](_0xaacc7f,'remove',(_0x150efb,_0x145415)=>this['_handleSessionRemove'](_0x15de8e,_0x145415));for(const _0x845526 of _0xaacc7f)this['_handleSessionAdd'](_0x15de8e,_0x845526);}['unregister'](_0x5d1cd1){if(!this['_registeredSessions']['has'](_0x5d1cd1))throw new _0x111ec8('sessions-unregister-not-exist',null,{'channelId':_0x5d1cd1});const _0x3cd55e=this['_registeredSessions']['get'](_0x5d1cd1);this['stopListening'](_0x3cd55e);for(const _0x7aa028 of _0x3cd55e)'connected'===this['context']['plugins']['get'](c)['state']&&this['_handleSessionRemove'](_0x5d1cd1,_0x7aa028);this['_registeredSessions']['delete'](_0x5d1cd1),this['channelSessions']['delete'](_0x5d1cd1),this['channelConnectedUsers']['delete'](_0x5d1cd1);}get['mySessionId'](){return this['context']['plugins']['get'](c)['connection']['sessionId'];}['getUserBySessionId'](_0x2b625f){for(const _0x342476 of this['channelSessions']['values']())for(const _0x3d0829 of _0x342476)if(_0x3d0829['id']===_0x2b625f)return _0x3d0829['user'];}['getUserSessions'](_0x5ab4e8,_0xbc9c2d){const _0x22e6db=_0xbc9c2d?[this['channelSessions']['get'](_0xbc9c2d)]:this['channelSessions']['values'](),_0x54c021=new Set();for(const _0x9e645d of _0x22e6db)for(const _0x588df2 of _0x9e645d)_0x588df2['user']['id']===_0x5ab4e8['id']&&_0x54c021['add'](_0x588df2['id']);return _0x54c021;}['getUserRole'](_0x2f2f84){for(const _0x26b613 of this['channelSessions']['values']())for(const _0x462b2b of _0x26b613)if(_0x462b2b['user']===_0x2f2f84)return _0x462b2b['role'];}['_handleSessionAdd'](_0x510d13,_0x442dff){if('connected'!==this['context']['plugins']['get'](c)['state'])return;const _0x2e7069=_0x442dff['user'],_0x48445f=this['_users']['getUser'](_0x2e7069['id'])||this['_createUser'](_0x2e7069),_0x24dc70=Object['assign']({},_0x442dff,{'user':_0x48445f});this['channelSessions']['get'](_0x510d13)['add'](_0x24dc70);const _0x42725a=this['channelConnectedUsers']['get'](_0x510d13);_0x42725a['has'](_0x48445f['id'])||_0x42725a['add'](_0x48445f),this['allConnectedUsers']['has'](_0x48445f['id'])||this['allConnectedUsers']['add'](_0x48445f,_0x48445f['isMe']?0x0:void 0x0),this['fire']('sessionAdd:'+_0x510d13,{'channelId':_0x510d13,'session':_0x24dc70});}['_handleSessionRemove'](_0x34deba,_0x31379f){if('connected'!==this['context']['plugins']['get'](c)['state'])return;const _0x31a132=this['channelConnectedUsers']['get'](_0x34deba),_0xc1ab76=_0x31379f['user'];_0xc1ab76['id']&&(this['channelSessions']['get'](_0x34deba)['remove'](_0x31379f['id']),_0x31a132['has'](_0xc1ab76['id'])&&!this['getUserSessions'](_0xc1ab76,_0x34deba)['size']&&_0x31a132['remove'](_0xc1ab76['id']),this['allConnectedUsers']['get'](_0xc1ab76['id'])&&!this['getUserSessions'](_0xc1ab76)['size']&&this['allConnectedUsers']['remove'](_0xc1ab76['id']));}['_createUser'](_0x1b3218,_0x351e8f){const _0x27933e=this['_users']['addUser'](_0x1b3218);return _0x351e8f&&this['_users']['defineMe'](_0x1b3218['id']),_0x27933e['orderNumber']=this['_uniqueUsersCount']++,_0x27933e;}}class H extends _0x19a2cf{['_domEmitter']=new(_0x232e3e())();static get['requires'](){return[i];}static get['pluginName'](){return'UserMarkers';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['init'](){const _0x5438da=this['editor'],_0x35f813=_0x5438da['plugins']['get'](i);_0x5438da['conversion']['for']('editingDowncast')['markerToElement']({'model':'user:position','view':(_0x12085d,{writer:_0x419ea4})=>function(_0x2ec92f,_0x471e29,_0x59c7b9,_0xc6b23f){const _0x4a6cf5=_0x2ec92f['markerName']['split'](':')[0x2],_0x122069=_0x59c7b9['getUserBySessionId'](_0x4a6cf5);if(!_0x122069||_0x4a6cf5===_0x59c7b9['mySessionId'])return;if(!_0xc6b23f['model']['schema']['checkChild'](_0x2ec92f['markerRange']['start'],'$text'))return;const _0x195382={'class':'ck-user__marker\x20'+_0x122069['color']['getMarkerClass'](),'data-name':_0x122069['name'],'data-session-id':_0x4a6cf5},_0x515f79=_0xc6b23f['model']['markers']['get'](_0x2ec92f['markerName']),_0xbc9f23=_0x515f79['getStart'](),_0x158f9a=_0xbc9f23['nodeAfter'],_0x200c48=_0xc6b23f['model']['schema'];if(_0x158f9a&&_0x200c48['isObject'](_0x158f9a)&&_0x200c48['isInline'](_0x158f9a)&&!_0xc6b23f['model']['markers']['get']('user:range:'+_0x4a6cf5)['getRange']()['isCollapsed'])return;const _0x4c98c7=_0xbc9f23['parent'];return _0xc6b23f['model']['schema']['isLimit'](_0x4c98c7)&&!_0xc6b23f['model']['hasContent'](_0x4c98c7)&&(_0x195382['contenteditable']=!0x1),function(_0x2c7d1e,_0x172c66,_0x5ab736){const _0x5b6fe5=_0x2c7d1e['createUIElement']('span',_0x172c66);return _0x2c7d1e['setCustomProperty']('userPositionMarker',!0x0,_0x5b6fe5),_0x5b6fe5['render']=function(_0xea4de0){const _0x33a704=this['toDomElement'](_0xea4de0);return _0x33a704['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>'+_0x5ab736['name']+'</span>⁠',_0x33a704['addEventListener']('mouseenter',()=>{_0x33a704['classList']['add']('ck-user__marker_hovered');}),_0x33a704['addEventListener']('mouseleave',()=>{_0x33a704['classList']['remove']('ck-user__marker_hovered');}),_0x33a704;},_0x5b6fe5['isSimilar']=function(_0x4376c4){return!(!this['getCustomProperty']('userPositionMarker')||!_0x4376c4['getCustomProperty']('userPositionMarker')||this['getAttribute']('data-session-id')!=_0x4376c4['getAttribute']('data-session-id'));},_0x5b6fe5;}(_0x471e29,_0x195382,_0x122069);}(_0x12085d,_0x419ea4,_0x35f813,_0x5438da)}),_0x5438da['conversion']['for']('editingDowncast')['markerToHighlight']({'model':'user:range','view':_0x14c31e=>function(_0x1c2572,_0x2a9fb3){const _0x14409c=_0x1c2572['markerName']['split'](':')[0x2];if(_0x14409c===_0x2a9fb3['mySessionId'])return null;const _0x20a76e=_0x2a9fb3['getUserBySessionId'](_0x14409c);if(!_0x20a76e)return{'id':_0x14409c,'classes':[]};return{'id':_0x14409c,'classes':['ck-user__selection',_0x20a76e['color']['getSelectionClass']()],'attributes':{'data-session-id':_0x14409c},'priority':0x7d0+_0x20a76e['orderNumber']};}(_0x14c31e,_0x35f813)}),function(_0x5f0481){const _0x5a7b57=_0x5f0481['model'],_0xa7135c=new Map(),_0x5832a6=_0x5f0481['plugins']['get'](i);_0x5a7b57['markers']['on']('update:user:range',(_0x41a4c5,_0x1f7119,_0x59f6e2,_0x328955)=>{if(!_0x328955&&_0xa7135c['get'](_0x1f7119['name']))return _0xa7135c['get'](_0x1f7119['name'])['detach'](),void _0xa7135c['delete'](_0x1f7119['name']);const _0x2faea8=_0x1f7119['name']['split'](':')[0x2];if(_0x2faea8===_0x5832a6['mySessionId'])return;const _0x17a708='user:position:'+_0x2faea8;_0x5a7b57['markers']['has'](_0x17a708)&&_0x5f0481['editing']['reconvertMarker'](_0x17a708),_0x1f7119['on']('change:range',(_0x262be7,_0x2abd15,_0x127f43)=>{if('$graveyard'!=_0x2abd15['root']['rootName']&&'$graveyard'==_0x1f7119['getRange']()['root']['rootName']&&!_0xa7135c['has'](_0x1f7119['name'])){const _0x14bb36=_0x5a7b57['schema']['getNearestSelectionRange'](_0x127f43['deletionPosition']);if(_0x14bb36){const _0x86a924=ht['fromRange'](_0x14bb36);_0xa7135c['set'](_0x1f7119['name'],_0x86a924),_0x86a924['on']('change:range',(_0x4f08d8,_0x325552,_0x28a4cb)=>{if('$graveyard'==_0x86a924['root']['rootName']){const _0x5dc8f0=_0x5a7b57['schema']['getNearestSelectionRange'](_0x28a4cb['deletionPosition']);_0x5dc8f0?(_0x86a924['start']=_0x5dc8f0['start'],_0x86a924['end']=_0x5dc8f0['end']):(_0xa7135c['delete'](_0x1f7119['name']),_0x86a924['detach']());}});}}});}),_0x5a7b57['document']['on']('change',()=>{_0xa7135c['size']>0x0&&_0x5a7b57['enqueueChange']({'isUndoable':!0x1},_0x380344=>{for(const [_0x901e82,_0x51c14b]of _0xa7135c)'$graveyard'==_0x5a7b57['markers']['get'](_0x901e82)['getRange']()['root']['rootName']&&(re(_0x901e82['split'](':')[0x2],_0x51c14b['toRange'](),_0x5a7b57,_0x380344),_0x51c14b['detach']());_0xa7135c['clear']();});});}(_0x5438da),this['_domEmitter']['listenTo'](_0x378d67['document'],'keydown',(_0x3de894,{key:_0x5e7405})=>{'Escape'===_0x5e7405&&function(_0x1a0699){_0x1a0699['editing']['view']['change'](_0x421c67=>{for(const _0x4d6f1d of _0x1a0699['model']['markers']){if(!_0x4d6f1d['name']['startsWith']('user:position'))continue;const _0x44ccbf=_0x1a0699['editing']['mapper']['markerNameToElements'](_0x4d6f1d['name']);if(_0x44ccbf){for(const _0x69f8c7 of _0x44ccbf)_0x421c67['removeClass']('ck-user__marker_hovered',_0x69f8c7);}}});}(_0x5438da);},{'useCapture':!0x0});}['afterInit'](){const _0x5db181=this['editor'],_0x5b4ec9=_0x5db181['commands']['get']('undo');_0x5b4ec9&&_0x5db181['model']['on']('applyOperation',(_0x205a08,_0x36d07b)=>{const _0x2661e8=_0x36d07b[0x0];if('marker'!=_0x2661e8['type']||!_0x2661e8['name']['startsWith']('user:'))return;const _0x234369=_0x2661e8['batch'];_0x5b4ec9['_createdBatches']['has'](_0x234369)&&(_0x2661e8['newRange']=_0x2661e8['oldRange']?_0x5db181['model']['createRange'](_0x2661e8['oldRange']['start'],_0x2661e8['oldRange']['end']):null);},{'priority':'highest'});}['destroy'](){return this['_domEmitter']['stopListening'](),super['destroy']();}['createUserMarkerOperations'](){const _0x34b333=this['editor'],_0x388900=_0x34b333['model']['document'],_0xceb612=_0x34b333['plugins']['get'](i);_0x34b333['model']['enqueueChange']({'isUndoable':!0x1},_0x143e4d=>{const _0x2d9417='user:range:'+_0xceb612['mySessionId'],_0x4ce13c='user:position:'+_0xceb612['mySessionId'],_0x22607a=_0x34b333['model']['markers']['has'](_0x2d9417);_0x34b333['editing']['view']['hasDomSelection']?re(_0xceb612['mySessionId'],_0x388900['selection']['getFirstRange'](),_0x34b333['model'],_0x143e4d):_0x22607a&&(_0x143e4d['removeMarker'](_0x2d9417),_0x143e4d['removeMarker'](_0x4ce13c));});}}function re(_0x2ca2b6,_0x17cd5a,_0x5f6d20,_0x1d689b){const _0x2b0e7f='user:range:'+_0x2ca2b6,_0x144b06='user:position:'+_0x2ca2b6,_0x33f811=_0x17cd5a['getContainedElement']();let _0x2e728b=_0x17cd5a['start'];_0x33f811&&_0x33f811['is']('element','tableCell')&&(_0x2e728b=function(_0x944c9e,_0xb2dfaf){for(const _0x55b23d of _0x944c9e['getPositions']())if(_0xb2dfaf['schema']['checkChild'](_0x55b23d,'$text'))return _0x55b23d;}(_0x17cd5a,_0x5f6d20),_0x17cd5a=_0x1d689b['createRange'](_0x2e728b));const _0x5dbec6=_0x1d689b['createRange'](_0x2e728b);_0x5f6d20['markers']['has'](_0x2b0e7f)?(_0x1d689b['updateMarker'](_0x2b0e7f,{'range':_0x17cd5a}),_0x1d689b['updateMarker'](_0x144b06,{'range':_0x5dbec6})):(_0x1d689b['addMarker'](_0x2b0e7f,{'range':_0x17cd5a,'usingOperation':!0x0}),_0x1d689b['addMarker'](_0x144b06,{'range':_0x5dbec6,'usingOperation':!0x0}));}function q(_0x599932,_0x52f1b4,_0x38b476){const _0x22b5c=_0x599932['t'],t=_0x599932['t'];switch(_0x52f1b4){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 _0x22b5c({'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'},_0x38b476);default:return'';}}let K=0x1;class l extends _0x19a2cf{static ['CollaborativeEditingService']=/* #__PURE__ -- @preserve */
25
- ((()=>_0x43a9a2)());['_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,_0x348cb2,_0x2bb1a6,_0x489625];}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 _0x354e6c=this['serverHistory']['getOperations']();for(let _0x30a269=_0x354e6c['length']-0x1;_0x30a269>=0x0;_0x30a269--){const _0x579ee0=_0x354e6c[_0x30a269];if(!this['_disconnectionOperations']['has'](_0x579ee0))return _0x579ee0['baseVersion']+0x1-this['_offset'];}return 0x0;}constructor(_0x21af2d){if(super(_0x21af2d),this['_offset']=0x0,this['sessionId']=null,this['serverHistory']=new _0x46144f(),this['editor']['config']['define']('collaboration',{}),this['_channelId']=this['editor']['config']['get']('collaboration.channelId'),!this['_channelId'])throw new _0x111ec8('collaboration-missing-channelid',this);const _0x3720d7=_0x21af2d['config']['get']('cloudServices.bundleVersion')||nt;this['_service']=new l['CollaborativeEditingService'](_0x3720d7,this['_channelId']),this['_document']=this['editor']['model']['document'],this['_compressor']=new _0xf624f5(),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 _0x82b979=this['editor'],_0x5994d1=_0x82b979['plugins']['get'](_0x2bb1a6),_0x17873a=_0x82b979['plugins']['get'](c);this['listenTo'](_0x5994d1,'getOperationAuthor',(_0xf07d2d,_0x2f1295)=>{const _0x3c5306=_0x2f1295[0x0];_0x3c5306['_authorId']&&(_0xf07d2d['return']=_0x5994d1['getUser'](_0x3c5306['_authorId']),_0xf07d2d['stop']()),null===_0x3c5306['_authorId']&&(_0xf07d2d['return']=null,_0xf07d2d['stop']());},{'priority':'high'}),this['listenTo'](_0x82b979['model']['document']['selection'],'change:range',(_0x57e32f,_0x403750)=>{_0x403750['directChange']&&this['_refreshUserSelectionMarkers']();}),this['listenTo'](_0x82b979['editing']['view'],'change:hasDomSelection',()=>{this['_refreshUserSelectionMarkers']();}),this['_initThrowingOnDataSet'](),_0x82b979['model']['on']('applyOperation',(_0x2fb736,_0x399e56)=>{const _0xbe57d6=_0x399e56[0x0];_0xbe57d6['isDocumentOperation']&&(this['_saveOperationInBuffer'](_0xbe57d6),this['_shouldSendUpdate']()&&this['_sendBufferedOperationsDelayed']());}),this['_setUpDataInit'](),this['bind']('_isEditingAllowed')['to'](_0x17873a,'state',this,'_hasSynchronizationProblem',(_0x36e618,_0x4cd3ee)=>'connected'===_0x36e618&&!_0x4cd3ee),this['on']('change:_isEditingAllowed',()=>{this['_isEditingAllowed']?_0x82b979['disableReadOnlyMode']('rtc-offline'):_0x82b979['enableReadOnlyMode']('rtc-offline');}),this['_isEditingAllowed']?_0x82b979['disableReadOnlyMode']('rtc-offline'):_0x82b979['enableReadOnlyMode']('rtc-offline'),this['set']('_isConnected',!0x1);}async['reconnect'](){const _0x53d817=this['editor']['plugins']['get'](i),_0x28fe03=this['editor']['plugins']['get'](c);try{this['_isPendingUpdate']=!0x0,_0x53d817['unregister'](this['_channelId']);const _0xb9c039=await this['_service']['reconnect'](_0x28fe03['connection'],this['lastSyncVersion']);await this['_handleReconnectionResponse'](_0xb9c039)&&(this['_isPendingUpdate']=!0x1,this['_clearPendingAction']());const _0x479178=await this['_service']['getConnectedSessions']();_0x53d817['register'](this['_channelId'],_0x479178),this['_handleSendingSelectionMarkers'](),this['_isConnected']=!0x0;}catch(_0x2cfa2f){if(function(_0x1494a4){return'404'===_0x1494a4['code'];}(_0x2cfa2f)&&this['sessionId'])await this['_connectAfterSessionHasBeenFlushed']();else{if(function(_0x50348b){return'409'===_0x50348b['code'];}(_0x2cfa2f)){const _0x4f5d16=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'](_0x4f5d16);}else{if(!(_0x2cfa2f instanceof J))throw _0x2cfa2f;this['_handleReconnectionError']();}}}}['destroy'](){const _0x4155d9=this['editor']['plugins']['get'](c),_0x5b21f0=this['editor']['plugins']['get'](i);this['editor']['enableReadOnlyMode']('rtc-destroyed'),_0x5b21f0['channelSessions']['has'](this['_channelId'])&&_0x5b21f0['unregister'](this['_channelId']),_0x4155d9['removeFromReconnectionStack'](this),this['_disconnectService'](),super['destroy']();}async['_handleReconnectionResponse'](_0x2ec2d0){if(this['sessionId']!==_0x2ec2d0['sessionId']&&this['_lastSyncedOperationId']!==_0x2ec2d0['lastOperationId'])throw new J();return this['sessionId']=_0x2ec2d0['sessionId'],this['_handleServerResponse']([],{..._0x2ec2d0,'wereChangesApplied':!0x1,'data':_0x2ec2d0['data']},'reconnect');}async['_connectService'](_0x196fc4,_0x2499c4=!0x1){const {connection:_0x1ae446}=this['editor']['plugins']['get'](c);l['CollaborativeEditingService']['getConnectedSessions'](_0x1ae446,this['_channelId'])['then'](_0x4435e2=>this['_initSessionsHandling'](_0x4435e2))['catch'](_0x2f9d3b=>{this['_crash']('realtimecollaborationclient-init-session-connection-error',_0x2f9d3b);}),this['listenTo'](this['_service'],'operationsReceived',this['_handleReceivedOperations']['bind'](this)),this['listenTo'](this['_service'],'error',(_0x21bec4,_0x20a772)=>{this['_crash']('realtimecollaborationclient-initservice-internal-error',_0x20a772);}),this['listenTo'](this['_service'],'disconnected',()=>{this['_isConnected']=!0x1;});const _0x2b2c77=this['_operationIdentifier']['getIdOfTheLastOperation'](_0x196fc4);this['_isPendingUpdate']=!0x0;const _0x56c6bc=await this['_service']['connect'](_0x1ae446,this['_compressOperations'](_0x196fc4),_0x2b2c77);if(this['sessionId']=_0x56c6bc['sessionId'],_0x2499c4){if(!_0x56c6bc['wereChangesApplied'])return void this['_handleReconnectionError']();this['_isPendingUpdate']=!0x1,this['_clearPendingAction'](),this['serverHistory']['reset'](),this['_offset']=_0x56c6bc['offset'],this['serverHistory']['version']=this['_offset'],await this['_handleServerResponse'](_0x196fc4,_0x56c6bc,'reconnection:\x20flushed\x20session');}else await this['_handleInitialConnectionData'](_0x56c6bc,_0x196fc4);this['_handleSendingSelectionMarkers'](),this['_isConnected']=!0x0;}['_handleSendingSelectionMarkers'](){const _0x2fdf5e=this['editor']['plugins']['get'](i),_0x2e6086=this['editor']['plugins']['get'](H),_0x5494d0=_0x2fdf5e['channelSessions']['get'](this['_channelId']);_0x5494d0&&_0x5494d0['length']>0x1?_0x2e6086['createUserMarkerOperations']():this['listenTo'](_0x2fdf5e,'sessionAdd:'+this['_channelId'],()=>{0x2===_0x2fdf5e['channelSessions']['get'](this['_channelId'])['length']&&_0x2e6086['createUserMarkerOperations']();});}async['_handleReceivedOperations'](_0xb0a486,_0x4c6a1f,_0x3e8897,_0x579f54){if(!this['_isPendingUpdate']&&this['_document']['version']==_0x4c6a1f){const _0x58b387=this['_decompressOperations'](_0x3e8897,_0x579f54);await this['_fetchMissingUsers'](_0x58b387),this['_handleExternalOperations'](_0x58b387,_0x4c6a1f,_0x3e8897['lastOperationId'])||this['_crash']('realtimecollaborationclient-initservice-incorrect-server-operation');}}async['_connectAfterSessionHasBeenFlushed'](){this['_disconnectService']();const {locale:_0x15a82e}=this['editor'];let _0x30ae65;try{_0x30ae65=await this['_service']['getDocumentDetails']();}catch(_0x1a2cbd){const _0x562e78=q(_0x15a82e,'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'](_0x562e78);}const _0x3808ce=_0x30ae65['currentDocumentSession']||_0x30ae65['lastDocumentSession'];if(this['_lastSyncedOperationId']===_0x3808ce['lastOperationId'])await this['_connectService'](this['editor']['model']['document']['history']['getOperations'](),!0x0);else{const _0x550c5c=q(_0x15a82e,'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'](_0x550c5c);}}['_disconnectService'](){this['_service']['disconnect'](),this['_bufferedOperations']=[],clearTimeout(this['_sendBufferedOperationsDelayId']),this['stopListening'](this['_service']);}['_initSessionsHandling'](_0x32400e){const _0x205d02=this['editor']['plugins']['get'](i);this['listenTo'](_0x205d02,'sessionAdd:'+this['_channelId'],(_0x19967b,{session:_0x295679})=>{if(_0x295679['id']===_0x205d02['mySessionId']){_0x19967b['off']();const _0x125c6d=this['editor']['plugins']['has']('CommentsOnly')&&this['editor']['plugins']['get']('CommentsOnly');let _0xa3a98d=_0x295679['permissions'];_0x125c6d&&_0x125c6d['isEnabled']&&(_0xa3a98d=_0xa3a98d['filter'](_0x30bcc3=>'document:write'!==_0x30bcc3)),this['editor']['plugins']['get']('Permissions')['setPermissions'](_0xa3a98d,this['_channelId']);}}),_0x205d02['register'](this['_channelId'],_0x32400e);}['_initThrowingOnDataSet'](){const _0x9fda76=this['editor']['data']['set'];this['editor']['data']['set']=(..._0x40ce80)=>{if(!_0x40ce80[_0x40ce80['length']-0x1]['suppressErrorInCollaboration'])throw new _0x111ec8('realtimecollaborationclient-editor-setdata-and-editor-data-set-are-forbidden-in-real-time-collaboration',this);_0x9fda76['apply'](this['editor']['data'],_0x40ce80);};}['_setUpDataInit'](){this['editor']['data']['on']('init',(_0x4c4585,[_0xb02197])=>{if(this['_document']['version'])throw new _0x111ec8('realtimecollaborationclient-init-document-already-initialized',this);_0x4c4585['stop'](),this['_setPendingAction']();const _0x488523=this['editor']['config']['get']('rootsAttributes'),_0x397df0=this['_getOperationsFromInitData'](_0xb02197,_0x488523);0x0==_0x397df0['length']&&_0x397df0['push'](new _0x3310ee(0x0)),_0x4c4585['return']=this['_connectService'](_0x397df0)['then'](()=>{this['editor']['plugins']['get'](c)['addToReconnectionStack'](this),this['editor']['data']['fire']('ready');})['catch'](_0x368659=>this['_crash']('realtimecollaborationclient-init-connection-failed',_0x368659))['finally'](()=>this['_clearPendingAction']());},{'priority':'high'}),this['editor']['on']('loadRoot',async(_0x3d50d6,[_0x440c52,_0x5db9f3])=>{_0x3d50d6['stop']();const _0x4fe653=this['editor']['model']['document']['getRoot'](_0x440c52);if(!this['_knownRootNames']['has'](_0x440c52)){const _0x1332c1=_0x5db9f3&&_0x5db9f3['data']?_0x5db9f3['data']:'',_0x45581a=_0x5db9f3&&_0x5db9f3['attributes']?_0x5db9f3['attributes']:{};await this['_loadRoot'](_0x440c52,_0x1332c1,_0x45581a);}this['editor']['model']['enqueueChange']({'isUndoable':!0x1},()=>{_0x4fe653['_isLoaded']=!0x0,this['editor']['model']['document']['differ']['_bufferRootLoad'](_0x4fe653);});},{'priority':'high'});}async['_fetchMissingUsers'](_0x579505){const _0xf4b1b3=this['editor']['plugins']['get'](_0x2bb1a6),{connection:_0x233ff6}=this['editor']['plugins']['get'](c),_0x4acc96=new Set();for(const _0x9862df of _0x579505){const _0x45adf4=_0x9862df['_authorId'];_0x45adf4&&!_0xf4b1b3['getUser'](_0x45adf4)&&_0x4acc96['add'](_0x45adf4);}if(0x0===_0x4acc96['size'])return;const _0x4c56fb=await dt['getMany'](_0x233ff6,Array['from'](_0x4acc96));for(const _0x28cf9b of _0x4c56fb)_0xf4b1b3['getUser'](_0x28cf9b['id'])||_0xf4b1b3['addUser'](_0x28cf9b);}['_getOperationsFromInitData'](_0x2422d9,_0x3d42cf={}){const _0x396fad=this['editor']['model'],_0x19c912=[];let _0xcc8ae8=0x0;const _0x59867b='string'==typeof _0x2422d9?{'main':_0x2422d9}:_0x2422d9;for(const _0x215743 of Object['keys'](_0x59867b)){if(!this['_document']['roots']['has'](_0x215743))throw new _0x111ec8('realtimecollaborationclient-init-non-existent-root',this);const _0x2536cd=this['editor']['data']['parse'](_0x59867b[_0x215743]),_0x2fb49e=this['_document']['getRoot'](_0x215743),_0x38aa24=new _0x433745(_0x396fad['createPositionAt'](_0x2fb49e,0x0),_0x2536cd,_0xcc8ae8++);_0x19c912['push'](_0x38aa24);for(const [_0x5318d5,_0x4dd1fe]of _0x2536cd['markers']){const _0xe37bf0=_0x396fad['createRange'](_0x396fad['createPositionFromPath'](_0x2fb49e,_0x4dd1fe['start']['path']['slice']()),_0x396fad['createPositionFromPath'](_0x2fb49e,_0x4dd1fe['end']['path']['slice']())),_0x565d2c=new _0x253e69(_0x5318d5,null,_0xe37bf0,_0x396fad['markers'],!0x0,_0xcc8ae8++);_0x19c912['push'](_0x565d2c);}}if(_0x3d42cf)for(const [_0x47cbb5,_0x3f3c4d]of Object['entries'](_0x3d42cf)){const _0x252287=_0x396fad['document']['getRoot'](_0x47cbb5);if(!_0x252287)throw new _0x111ec8('multi-root-editor-root-attributes-no-root',null);for(const [_0x302d6a,_0x4cdb8c]of Object['entries'](_0x3f3c4d))if(null!==_0x4cdb8c){const _0x1f1fb4=new _0x560b41(_0x252287,_0x302d6a,null,_0x4cdb8c,_0xcc8ae8++);_0x19c912['push'](_0x1f1fb4);}}return _0x19c912;}async['_loadRoot'](_0x1368bc,_0x3d6742,_0x3ae3e3){this['_getOperationsFromInitData']({[_0x1368bc]:_0x3d6742},{[_0x1368bc]:_0x3ae3e3})['forEach']((_0x24306c,_0x1adf55)=>{_0x24306c['baseVersion']=this['_document']['version']+_0x1adf55,_0x24306c['_isInit']=!0x0,this['_saveOperationInBuffer'](_0x24306c);}),this['_sendBufferedOperationsDelayed'](),await this['_waitUntilSynced']();}async['_handleInitialConnectionData'](_0x176589,_0xdb52d5){let _0x1bc985;this['_offset']=_0x176589['offset'];const _0x503c9f=_0x176589['wereChangesApplied']&&!_0x176589['initData'],_0x6ce25a=_0x503c9f?0x0:_0x176589['data']['baseVersion'];if(_0xdb52d5['forEach'](_0x4739dc=>{_0x4739dc['_isInit']=!0x0,_0x4739dc['createdAt']=_0x176589['sessionCreatedAt'],_0x4739dc['_authorId']=null;}),_0x503c9f)_0x1bc985=_0xdb52d5,this['_applyOperationsSet'](_0x1bc985,_0x503c9f);else{if(_0x176589['initData']){const _0x13f35d=this['_getOperationsFromInitData'](_0x176589['initData']);this['_document']['history']['version']=-_0x13f35d['length'],_0x13f35d['forEach'](_0x37cc29=>{_0x37cc29['baseVersion']-=_0x13f35d['length'],_0x37cc29['createdAt']=_0x176589['sessionCreatedAt'],_0x37cc29['_isInit']=!0x0,_0x37cc29['_authorId']=null;}),this['_applyOperationsSet'](_0x13f35d,!0x0),this['serverHistory']['version']=-_0x13f35d['length']+this['_offset'],this['_updateServerHistory'](_0x13f35d);}this['_document']['history']['version']=_0x6ce25a,_0x1bc985=this['_decompressOperations'](_0x176589['data'],_0x176589['metadata']),await this['_fetchMissingUsers'](_0x1bc985),this['_applyOperationsSet'](_0x1bc985,_0x503c9f);}_0x176589['lastOperationId']&&(this['_operationIdentifier']['setIdForTheLastOperation'](_0x1bc985,_0x176589['lastOperationId']),this['_lastSyncedOperationId']=_0x176589['lastOperationId']),this['serverHistory']['version']=_0x6ce25a+this['_offset'],this['_updateServerHistory'](_0x1bc985),_0xdb52d5['filter'](_0x2c9062=>{const _0x37e7f0=this['_getAffectedRoot'](_0x2c9062);return _0x37e7f0&&!this['_knownRootNames']['has'](_0x37e7f0);})['forEach']((_0x5a0853,_0x43c778)=>{_0x5a0853['baseVersion']=this['_document']['version']+_0x43c778,this['_saveOperationInBuffer'](_0x5a0853);}),this['_shouldSendUpdate']()?(this['_currentBufferDelay']=0x0,this['_sendBufferedOperationsDelayed'](!0x0),await this['_waitUntilSynced']()):(this['_isPendingUpdate']=!0x1,this['_clearPendingAction']());}['_crash'](_0x44d286,_0x3d1657){throw this['_isPendingUpdate']=!0x0,_0x3d1657&&console['error'](_0x3d1657),new _0x111ec8(_0x44d286,this['editor']);}['_saveOperationInBuffer'](_0x460cb7){this['_knownOperations']['has'](_0x460cb7)||(this['_knownOperations']['add'](_0x460cb7),this['_bufferedOperations']['push'](_0x460cb7),this['_pendingAction']||'marker'==_0x460cb7['type']&&!_0x460cb7['affectsData']||this['_setPendingAction']());}['_sendBufferedOperationsDelayed'](_0x32dbc5=!0x1){!_0x32dbc5&&this['_isPendingUpdate']||(this['_isPendingUpdate']=!0x0,clearTimeout(this['_sendBufferedOperationsDelayId']),this['_sendBufferedOperationsDelayId']=setTimeout(()=>{this['_sendBufferedOperations']()['then'](_0x367423=>{_0x367423&&(this['_clearPendingAction'](),this['_isPendingUpdate']=!0x1);})['catch'](_0x509465=>{if(this['_clearPendingAction'](),this['_isPendingUpdate']=!0x1,!function(_0x902bc5){return _0x902bc5['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x902bc5['message']['startsWith']('cloud-services-internal-error:\x20Collaborative\x20Editing\x20Service\x20is\x20not\x20connected.')||_0x902bc5['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}(_0x509465))throw _0x509465;});},this['_currentBufferDelay']));}['_waitUntilSynced'](){return new Promise(_0x3b3f22=>{this['on']('change:_isPendingUpdate',()=>{_0x3b3f22();});});}async['_sendBufferedOperations'](){const _0x46d498=this['editor']['plugins']['get'](H);if(this['_shouldSendSelectionUpdate']()&&(_0x46d498['createUserMarkerOperations'](),this['_hasSelectionChanged']=!0x1),!this['_shouldSendUpdate']())return!0x0;const _0xfc67a=[...this['_bufferedOperations']];for(const _0x30e5cc of _0xfc67a)_0x30e5cc['wasUndone']=this['_document']['history']['isUndoneOperation'](_0x30e5cc);const _0x343e20=this['_operationIdentifier']['getIdOfTheLastOperation'](_0xfc67a),_0x44eb38=K++,_0x4a5f24=this['_compressOperations'](_0xfc67a),_0x12ad02=await this['_service']['sendOperations'](_0x4a5f24,_0x4a5f24['baseVersion'],_0x343e20);try{return await this['_handleServerResponse'](_0xfc67a,_0x12ad02,_0x44eb38);}catch(_0x32ee86){return this['_crash']('realtimecollaborationclient-sendbufferedoperations',_0x32ee86);}}async['_handleServerResponse'](_0x38979f,_0x146d3b,_0x1bec24){if('error'in _0x146d3b)throw _0x146d3b['error'];let _0x456f6c=!0x1;if(_0x146d3b['wereChangesApplied']){_0x146d3b['lastOperationId']&&(this['_lastSyncedOperationId']=_0x146d3b['lastOperationId']),this['_bufferedOperations']=this['_bufferedOperations']['filter'](_0x4d00f9=>!_0x38979f['includes'](_0x4d00f9));for(const _0x259c2a of _0x38979f)_0x259c2a['createdAt']='lastOperationAcceptedAt'in _0x146d3b&&_0x146d3b['lastOperationAcceptedAt']||void 0x0;Q(_0x38979f,_0x146d3b['version']-_0x38979f['length']),this['_updateServerHistory'](_0x38979f);const _0x1047dd=_0x38979f['filter'](_0x36bc1c=>{if(!_0x36bc1c['_isInit'])return!0x1;const _0x53510e=this['_getAffectedRoot'](_0x36bc1c);return _0x53510e&&!this['_knownRootNames']['has'](_0x53510e);});Q(_0x1047dd,this['_document']['version']),this['_applyOperationsSet'](_0x1047dd),_0x456f6c=!0x0,this['_currentBufferDelay']=this['_baseBufferDelay'];}else{const _0x1e5291=this['_decompressOperations'](_0x146d3b['data'],_0x146d3b['metadata'])['filter'](_0x5c7d65=>_0x5c7d65['baseVersion']>=this['_lastServerVersion']);_0x1e5291['forEach'](_0x1fb42f=>this['_addKnownRoot'](_0x1fb42f)),this['_bufferedOperations']=this['_bufferedOperations']['filter'](_0x4ca186=>!_0x4ca186['_isInit']||!this['_knownRootNames']['has'](this['_getAffectedRoot'](_0x4ca186))),this['_bufferedOperations']['length']&&Q(this['_bufferedOperations'],this['_bufferedOperations'][0x0]['baseVersion']),await this['_fetchMissingUsers'](_0x1e5291),_0x456f6c=this['_handleExternalOperations'](_0x1e5291,_0x146d3b['version'],_0x146d3b['lastOperationId']),this['_currentBufferDelay']=Math['round'](this['_currentBufferDelay']/0x2);}return _0x456f6c?!this['_shouldSendUpdate']()||(this['_sendBufferedOperationsDelayed'](!0x0),!0x1):this['_crash']('realtimecollaborationclient-handleserverresponse');}['_handleExternalOperations'](_0x1b4e04,_0x2d01b2,_0x393b8c){try{const _0x59cc6c={'document':this['_document'],'useRelations':!0x1,'padWithNoOps':!0x0},{operationsA:_0x1c75a4,operationsB:_0x2fba61,originalOperations:_0x9c0f7f}=_0x5453a3(_0x1b4e04,this['_bufferedOperations'],_0x59cc6c);Q(_0x1c75a4,this['_document']['version']),Q(_0x2fba61,_0x2d01b2);for(const _0x2e53be of _0x1c75a4){const _0x1bf898=_0x9c0f7f['get'](_0x2e53be);_0x2e53be['_authorId']=_0x1bf898?_0x1bf898['_authorId']:null;}_0x393b8c&&(this['_operationIdentifier']['setIdForTheLastOperation'](_0x1b4e04,_0x393b8c),this['_lastSyncedOperationId']=_0x393b8c),this['_bufferedOperations']=[..._0x2fba61],this['_applyOperationsSet'](_0x1c75a4),this['_updateServerHistory'](_0x1b4e04);}catch(_0x22208a){return console['error'](_0x22208a),!0x1;}return!0x0;}['_applyOperationsSet'](_0x4e83d9,_0x607a08=!0x1){this['editor']['model']['enqueueChange']({'isUndoable':!0x1,'isLocal':!0x1},_0x5b31ec=>{for(const _0x53e243 of _0x4e83d9)this['_knownOperations']['add'](_0x53e243),this['_addKnownRoot'](_0x53e243),_0x5b31ec['batch']['addOperation'](_0x53e243),this['editor']['model']['applyOperation'](_0x53e243);});}['_addKnownRoot'](_0x36e953){const _0x31290e=this['_getAffectedRoot'](_0x36e953);_0x31290e&&this['_knownRootNames']['add'](_0x31290e);}['_getAffectedRoot'](_0x1fb206){let _0x8327c2,_0x123f1f;switch(_0x1fb206['type']){case'insert':_0x8327c2=_0x1fb206['position']['root'];break;case'marker':if(_0x123f1f=_0x1fb206['newRange'],!_0x123f1f)return null;_0x8327c2=_0x123f1f['root'];break;case'addRootAttribute':_0x8327c2=_0x1fb206['root'];break;case'addRoot':_0x8327c2=_0x1fb206['affectedSelectable'];break;case'move':_0x8327c2=_0x1fb206['targetPosition']['root'];break;default:return null;}return _0x8327c2['rootName'];}['_updateServerHistory'](_0x5d402f){_0x5d402f['forEach'](_0x289d8c=>{const _0x3bca47=_0x289d8c['clone']();_0x3bca47['_authorId']=_0x289d8c['_authorId'],_0x3bca47['_isInit']=!!_0x289d8c['_isInit'],_0x3bca47['createdAt']=_0x289d8c['createdAt'],_0x3bca47['baseVersion']+=this['_offset'],_0x289d8c['_isDisconnection']&&this['_disconnectionOperations']['add'](_0x3bca47),this['serverHistory']['addOperation'](_0x3bca47);});}['_handleReconnectionError'](_0x333f3b){const _0x376bf3=this['editor']['plugins']['get']('Notification'),_0x5949eb=this['editor']['locale'];_0x333f3b||(_0x333f3b=q(_0x5949eb,'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.')),_0x376bf3['showWarning'](_0x333f3b,{'title':q(_0x5949eb,'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'](_0x348cb2)['add'](q(this['editor']['locale'],'PENDING_ACTION_SENDING_DATA')));}['_clearPendingAction'](){this['_pendingAction']&&(this['editor']['plugins']['get'](_0x348cb2)['remove'](this['_pendingAction']),this['_pendingAction']=null);}['_compressOperations'](_0x398d61){const _0x2f9da5=_0x398d61['map'](_0x19780a=>_0x19780a['toJSON']());return this['_compressor']['compress'](_0x2f9da5);}['_decompressOperations'](_0x21d191,_0xfade3b){return this['_compressor']['decompress'](_0x21d191)['map']((_0x553b53,_0x397cbe)=>{const _0x26d8df='init'==_0xfade3b[_0x397cbe]['type'];if('InsertOperation'==_0x553b53['__className']){const _0x1acb10=_0x553b53['position']['root'];!this['_document']['getRoot'](_0x1acb10)&&(this['_document']['createRoot']('$root',_0x1acb10)['_isAttached']=!0x1);}const _0x2b1a9c=_0x4b5901['fromJSON'](_0x553b53,this['_document']);return _0x2b1a9c['wasUndone']=_0x553b53['wasUndone'],_0x2b1a9c['_isInit']=_0x26d8df,_0x2b1a9c['_authorId']=_0x26d8df?null:_0xfade3b[_0x397cbe]['userId'],_0x2b1a9c['_isDisconnection']='cs:removeUser'===_0xfade3b[_0x397cbe]['type'],_0x2b1a9c['createdAt']=_0xfade3b[_0x397cbe]['createdAt'],_0x2b1a9c;});}['_refreshUserSelectionMarkers'](){this['_hasSelectionChanged']=!0x0,this['_shouldSendSelectionUpdate']()?this['_sendBufferedOperationsDelayed']():this['_hasSelectionChanged']=!0x1;}['_shouldSendSelectionUpdate'](){const _0x1473be=this['editor']['plugins']['get'](i)['channelSessions']['get'](this['_channelId']);return!this['editor']['isReadOnly']&&!!_0x1473be&&_0x1473be['length']>0x1&&this['_hasSelectionChanged'];}['_shouldSendUpdate'](){return this['_bufferedOperations']['length']>0x0||this['_shouldSendSelectionUpdate']();}}class J extends Error{}function Q(_0xe946c1,_0x165b05){for(const _0x35cd1a of _0xe946c1)_0x35cd1a['baseVersion']=_0x165b05++;}class X{['_ignoredOperations'];['_operationToId'];constructor(_0x19d156){this['_ignoredOperations']=_0x19d156,this['_operationToId']=new WeakMap();}['getIdOfTheLastOperation'](_0x718f5a){let _0x3f5faf=_0x718f5a['length'];for(;_0x3f5faf--;){const _0x56c28e=_0x718f5a[_0x3f5faf];if(!this['_ignoredOperations']['has'](_0x56c28e)){if(!this['_operationToId']['has'](_0x56c28e)){const _0x24d970=_0x2d4457()['slice'](0x1,0x12);this['_operationToId']['set'](_0x56c28e,_0x24d970);}return this['_operationToId']['get'](_0x56c28e);}}}['setIdForTheLastOperation'](_0x595254,_0x10491a){if(!_0x10491a)return;let _0x87d350=_0x595254['length'];for(;_0x87d350--;){const _0x1d4e2e=_0x595254[_0x87d350];this['_ignoredOperations']['has'](_0x1d4e2e)||this['_operationToId']['set'](_0x1d4e2e,_0x10491a);}}}class n extends _0x19a2cf{static get['requires'](){return[l];}static get['pluginName'](){return'RealTimeCollaborativeEditing';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}class a extends _0x1f4b11{static ['CommentsService']=/* #__PURE__ -- @preserve */
26
- ((()=>_0xfbf3c9)());['_services'];static get['requires'](){return[c,'CommentsRepository',i,_0x2bb1a6];}static get['pluginName'](){return'CloudServicesCommentsAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x4bb295){super(_0x4bb295),this['_services']=new Map();}async['init'](){const _0x1b6c4e=this['context'],_0x30bfaa=_0x1b6c4e['plugins']['get']('CommentsRepository');if(_0x1b6c4e['plugins']['get'](c)['addToReconnectionStack'](this),_0x30bfaa['adapter']={'addCommentThread':async({channelId:_0x5f3e4a,threadId:_0x387123,comments:_0x2061cc,resolvedAt:_0x94397e,resolvedBy:_0x374c70,context:_0x1fb46c,attributes:_0x1c8bbe})=>{const _0x122a3e=await this['_getService'](_0x5f3e4a)['addCommentThread']({'commentThreadId':_0x387123,'comments':_0x2061cc['map'](_0x3c3bf2=>function(_0x2eb376,_0x5940c5,_0xe42bad){return{'commentThreadId':_0xe42bad,'commentId':_0x2eb376['commentId'],'userId':_0x2eb376['authorId'],'content':_0x2eb376['content'],'documentId':_0x5940c5,'createdAt':_0x2eb376['createdAt'],'attributes':_0x2eb376['attributes']||{}};}(_0x3c3bf2,_0x5f3e4a,_0x387123)),'resolvedAt':_0x94397e,'resolvedBy':_0x374c70,'context':_0x1fb46c,'attributes':_0x1c8bbe})['catch'](ut);return{'threadId':_0x122a3e['commentThreadId'],'comments':_0x122a3e['comments']};},'getCommentThread':async({channelId:_0x27aeb8,threadId:_0x3fcacb})=>{const _0x171bcd=await this['_getService'](_0x27aeb8)['getCommentThread'](_0x3fcacb)['catch'](ut);return _0x171bcd['deletedAt']?null:(await this['_fetchMissingUsersForThreads']([_0x171bcd]),{'threadId':_0x171bcd['commentThreadId'],'comments':_0x171bcd['comments']['map'](S),'context':_0x171bcd['context'],'resolvedAt':_0x171bcd['resolvedAt'],'resolvedBy':_0x171bcd['resolvedBy'],'attributes':_0x171bcd['attributes']||{}});},'updateCommentThread':async({channelId:_0x27bd5e,threadId:_0x45bb92,context:_0x5a16d0,unlinkedAt:_0x357ac6,attributes:_0x8b33a3})=>this['_getService'](_0x27bd5e)['updateCommentThread']({'commentThreadId':_0x45bb92,'context':_0x5a16d0,'attributes':_0x8b33a3,'unlinkedAt':_0x357ac6})['catch'](B)['catch'](ut),'resolveCommentThread':async({channelId:_0x2dec64,threadId:_0x3bbb75})=>{const _0x22eea0=await this['_getService'](_0x2dec64)['resolveCommentThread'](_0x3bbb75)['catch'](B)['catch'](ut);return{'threadId':_0x22eea0['commentThreadId'],'resolvedAt':_0x22eea0['resolvedAt'],'resolvedBy':_0x22eea0['resolvedBy']};},'reopenCommentThread':async({channelId:_0x3835c4,threadId:_0x59b560})=>this['_getService'](_0x3835c4)['reopenCommentThread'](_0x59b560)['catch'](B)['catch'](ut),'removeCommentThread':({channelId:_0x4d2fff,threadId:_0x4e215e})=>this['_getService'](_0x4d2fff)['removeCommentThread'](_0x4e215e)['catch'](B)['catch'](ut),'addComment':({channelId:_0x3d8620,threadId:_0x56ce2a,commentId:_0x5bb57d,content:_0x395394,attributes:_0x1cfb2f})=>this['_getService'](_0x3d8620)['addComment'](_0x56ce2a,_0x5bb57d,_0x395394,_0x1cfb2f)['catch'](ut),'updateComment':({channelId:_0x434698,threadId:_0x227e92,commentId:_0x60f76f,content:_0x262572,attributes:_0x5ef2cc})=>this['_getService'](_0x434698)['updateComment'](_0x227e92,_0x60f76f,_0x262572,_0x5ef2cc)['catch'](B)['catch'](ut),'removeComment':({channelId:_0x4c4d06,threadId:_0x3f63b9,commentId:_0x56262a})=>this['_getService'](_0x4c4d06)['removeComment'](_0x3f63b9,_0x56262a)['catch'](B)['catch'](ut)},_0x1b6c4e instanceof _0x40f0f4){const _0x59fc59=_0x1b6c4e['config']['get']('collaboration.channelId'),_0x660f7f=_0x1b6c4e['plugins']['get'](i);await this['_setUpService'](_0x59fc59);const _0xf57b91=await this['_services']['get'](_0x59fc59)['getConnectedSessions']();this['listenTo'](_0x660f7f,'sessionAdd:'+_0x59fc59,(_0x1fc0f1,{session:_0x4d0af9})=>{_0x4d0af9['id']===_0x660f7f['mySessionId']&&(_0x1fc0f1['off'](),this['context']['plugins']['get']('Permissions')['setPermissions'](_0x4d0af9['permissions'],_0x59fc59));}),_0x660f7f['register'](_0x59fc59,_0xf57b91);}}async['_setUpService'](_0x3ec3c6){if(this['_services']['has'](_0x3ec3c6))throw new _0x111ec8('cloudservicescommentsadapter-connect-already-connected',null,{'channelId':_0x3ec3c6});const _0x542945=this['context']['plugins']['get']('CommentsRepository'),_0x1b8f44=new a['CommentsService'](_0x3ec3c6);this['_services']['set'](_0x3ec3c6,_0x1b8f44),this['listenTo'](_0x1b8f44,'commentThreadAdded',(_0x16e453,_0x1c9b8b)=>{const {commentThreadId:_0x45494d,documentId:_0x3e8761,context:_0x36a285,attributes:_0x98e5f8,resolvedAt:_0x297acc,resolvedBy:_0x59fe67,comments:_0x39fbda}=_0x1c9b8b;_0x542945['getCommentThread'](_0x45494d)||_0x542945['addCommentThread']({'threadId':_0x45494d,'channelId':_0x3e8761,'comments':_0x39fbda?_0x39fbda['map'](S):[],'context':_0x36a285,'attributes':_0x98e5f8,'resolvedAt':_0x297acc,'resolvedBy':_0x59fe67,'isFromAdapter':!0x0});}),this['listenTo'](_0x1b8f44,'commentThreadUpdated',(_0x299e49,{commentThreadId:_0x53565f,documentId:_0x5c0c38,context:_0x2ac6aa,unlinkedAt:_0x3dfd4b,attributes:_0x2343b3})=>{_0x542945['getCommentThread'](_0x53565f)&&_0x542945['updateCommentThread']({'threadId':_0x53565f,'channelId':_0x5c0c38,'context':_0x2ac6aa,'unlinkedAt':_0x3dfd4b,'attributes':_0x2343b3,'isFromAdapter':!0x0});}),this['listenTo'](_0x1b8f44,'commentThreadResolved',(_0x148b21,{commentThreadId:_0x599451,resolvedBy:_0x53c058,resolvedAt:_0x10bcf8})=>{const _0x103247=_0x542945['getCommentThread'](_0x599451);_0x103247&&_0x103247['resolve']({'resolvedBy':_0x53c058,'resolvedAt':_0x10bcf8,'isFromAdapter':!0x0});}),this['listenTo'](_0x1b8f44,'commentThreadReopened',(_0x293083,{commentThreadId:_0xdcf9c0})=>{const _0x4a8c01=_0x542945['getCommentThread'](_0xdcf9c0);_0x4a8c01&&_0x4a8c01['reopen']({'isFromAdapter':!0x0});}),this['listenTo'](_0x1b8f44,'commentThreadRemoved',(_0x38d3d0,{commentThreadId:_0x5e64a6})=>{const _0x5d548f=_0x542945['getCommentThread'](_0x5e64a6);_0x5d548f&&_0x5d548f['remove']({'isFromAdapter':!0x0});}),this['listenTo'](_0x1b8f44,'commentAdded',(_0xf68e9c,_0x1b9050)=>{const _0x13315a=_0x1b9050['commentThreadId'],_0x262f96=_0x542945['getCommentThread'](_0x13315a);_0x262f96&&_0x262f96['addComment']({...S(_0x1b9050),'isFromAdapter':!0x0});}),this['listenTo'](_0x1b8f44,'commentUpdated',(_0x4dc6c1,{commentThreadId:_0xbe621e,commentId:_0x13ca4d,content:_0x2e2c8b,attributes:_0x495654})=>{const _0x4820dd=_0x542945['getCommentThread'](_0xbe621e);if(_0x4820dd){const _0x243de6=_0x4820dd['getComment'](_0x13ca4d);_0x243de6&&_0x243de6['update']({'content':_0x2e2c8b,'attributes':_0x495654,'isFromAdapter':!0x0});}}),this['listenTo'](_0x1b8f44,'commentRemoved',(_0x453bb6,{commentThreadId:_0x4a2aa2,commentId:_0x1f72f5})=>{const _0x3fd653=_0x542945['getCommentThread'](_0x4a2aa2);if(_0x3fd653){const _0x1d594c=_0x3fd653['getComment'](_0x1f72f5);_0x1d594c&&_0x1d594c['remove']({'isFromAdapter':!0x0});}}),await this['_connectService'](_0x3ec3c6);}['destroy'](){if(this['context']instanceof _0x40f0f4){const _0x3d980f=this['context']['config']['get']('collaboration.channelId');this['_terminateService'](_0x3d980f);}}['_terminateService'](_0x202949){if(!this['_services']['has'](_0x202949))throw new _0x111ec8('cloudservicescommentsadapter-disconnect-not-exist',null,{'channelId':_0x202949});this['_getService'](_0x202949)['disconnect'](),this['_services']['delete'](_0x202949);}async['reconnect'](){for(const _0x22a1b3 of this['_services']['keys']())await this['_connectService'](_0x22a1b3);if(this['context']instanceof _0x40f0f4){const _0x1e4a0d=this['context']['config']['get']('collaboration.channelId'),_0x1fd826=this['context']['plugins']['get'](i);_0x1fd826['unregister'](_0x1e4a0d);const _0x56edb6=await this['_services']['get'](_0x1e4a0d)['getConnectedSessions']();_0x1fd826['register'](_0x1e4a0d,_0x56edb6);}}async['_connectService'](_0x1bbaea){const {connection:_0x284fbd}=this['context']['plugins']['get'](c),_0x4960e2=this['context']['plugins']['get']('CommentsRepository'),_0x1a94fd=this['_services']['get'](_0x1bbaea),_0x3db64a=await _0x1a94fd['connect'](_0x284fbd);await this['_fetchMissingUsersForThreads'](_0x3db64a);const _0x62658=new Set(Array['from'](_0x4960e2['getCommentThreads']({'channelId':_0x1bbaea}),_0x56e8b0=>_0x56e8b0['id']));for(const _0x453bdb of _0x3db64a)_0x453bdb['deletedAt']||_0x62658['delete'](_0x453bdb['commentThreadId']);for(const _0x56d8c0 of _0x62658)_0x4960e2['getCommentThread'](_0x56d8c0)['remove']({'isFromAdapter':!0x0});for(const _0x4f7e8e of _0x3db64a){let _0x15a298=_0x4960e2['getCommentThread'](_0x4f7e8e['commentThreadId']);const {commentThreadId:_0x2e258a,context:_0x4ae73f,attributes:_0x902446,resolvedBy:_0x209511,resolvedAt:_0x1d6283,unlinkedAt:_0x4c5f55,deletedAt:_0x255dec}=_0x4f7e8e;if(_0x255dec)continue;_0x15a298||(_0x15a298=_0x4960e2['addCommentThread']({'channelId':_0x1bbaea,'threadId':_0x2e258a,'context':_0x4ae73f,'attributes':_0x902446||{},'resolvedBy':_0x209511,'resolvedAt':_0x1d6283,'unlinkedAt':_0x4c5f55,'isFromAdapter':!0x0}));const _0x247ac3=new Set(Array['from'](_0x15a298['comments'],_0x3f7e44=>_0x3f7e44['id']));for(const _0x427939 of _0x4f7e8e['comments'])_0x247ac3['delete'](_0x427939['commentId']);for(const _0x7f177d of _0x247ac3)_0x15a298['getComment'](_0x7f177d)['remove']({'isFromAdapter':!0x0});for(const _0x15871f of _0x4f7e8e['comments']){const _0x589bed=_0x15a298['getComment'](_0x15871f['commentId']);_0x589bed?_0x589bed['content']!==_0x15871f['content']&&_0x589bed['update']({'content':_0x15871f['content'],'isFromAdapter':!0x0}):_0x15a298['addComment'](Object['assign'](S(_0x15871f),{'isFromAdapter':!0x0}));}}}['_getService'](_0x109cc8){if(!this['_services']['has'](_0x109cc8))throw new _0x111ec8('cloudservicescommentsadapter-service-not-exist',null,{'channelId':_0x109cc8});return this['_services']['get'](_0x109cc8);}async['_fetchMissingUsersForThreads'](_0x337b94){const _0x30aa72=this['context']['plugins']['get'](_0x2bb1a6),{connection:_0x174d21}=this['context']['plugins']['get'](c),_0x27d5aa=new Set();for(const {resolvedBy:_0x39be96,comments:_0x3f7256}of _0x337b94){_0x39be96&&!_0x30aa72['getUser'](_0x39be96)&&_0x27d5aa['add'](_0x39be96);for(const {userId:_0x4a673b}of _0x3f7256)_0x30aa72['getUser'](_0x4a673b)||_0x27d5aa['add'](_0x4a673b);}if(0x0===_0x27d5aa['size'])return;const _0x4ed0f3=await dt['getMany'](_0x174d21,Array['from'](_0x27d5aa));for(const _0x4c81a9 of _0x4ed0f3)_0x30aa72['getUser'](_0x4c81a9['id'])||_0x30aa72['addUser'](_0x4c81a9);}}async function B(_0x46ee0f){if('404'!==_0x46ee0f['code'])throw _0x46ee0f;}function ut(_0x1ac589){if((_0x449e66=_0x1ac589)['message']['startsWith']('cloud-services-internal-error:\x20Comments\x20Service\x20is\x20not\x20connected.')||_0x449e66['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x449e66['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.'))return new Promise(()=>{});var _0x449e66;throw _0x1ac589;}function S(_0x11b193){return{'threadId':_0x11b193['commentThreadId'],'commentId':_0x11b193['commentId'],'content':_0x11b193['content'],'createdAt':_0x11b193['createdAt'],'authorId':_0x11b193['userId'],'attributes':_0x11b193['attributes']||{}};}class f extends _0x19a2cf{static ['TrackChangesService']=/* #__PURE__ -- @preserve */
27
- ((()=>tt)());['_bufferedRequests'];['_trackChangesService'];static get['requires'](){return[a,'TrackChangesEditing',c];}constructor(_0x261d65){super(_0x261d65);const _0x1ab000=this['editor']['config']['get']('collaboration.channelId');this['_bufferedRequests']=new Map(),this['_trackChangesService']=new f['TrackChangesService'](_0x1ab000);}['init'](){const _0x5019fd=this['editor']['plugins']['get'](c),_0x3aabd4=this['editor']['plugins']['get']('TrackChangesEditing');return _0x3aabd4['adapter']={'getSuggestion':async _0x4fcb64=>{await this['_waitForServiceReady']();const _0x157240=await this['_trackChangesService']['get'](_0x4fcb64)['catch'](R);return await this['_fetchMissingUsersForThreads']([_0x157240]),_0x157240;},'addSuggestion':async({id:_0x2d5d30,type:_0x16c7da,data:_0x47e464,originalSuggestionId:_0x28492f,attributes:_0x39b796})=>{await this['_waitForServiceReady']();const _0x2b2d4f={'id':_0x2d5d30,'type':_0x16c7da,'data':_0x47e464,'originalSuggestionId':_0x28492f,'attributes':_0x39b796},_0x3fc4db=await this['_trackChangesService']['add'](_0x2d5d30,_0x16c7da,_0x47e464,_0x28492f,_0x39b796)['catch'](_0x42e1b4=>{if(ft(_0x42e1b4))return new Promise(_0x285377=>{this['_bufferedRequests']['set'](_0x2d5d30,{'resolve':_0x285377,'suggestionData':_0x2b2d4f});});throw _0x42e1b4;});return this['_bufferedRequests']['delete'](_0x2d5d30),_0x3fc4db;},'updateSuggestion':async(_0x17dac1,_0x2e1f72)=>{if(await this['_waitForServiceReady'](),'open'!==_0x2e1f72['state'])return this['_trackChangesService']['update'](_0x17dac1,_0x2e1f72)['catch'](R);}},this['listenTo'](this['_trackChangesService'],'suggestionUpdated',(_0x39d67b,_0x3581d4)=>{_0x3aabd4['hasSuggestion'](_0x3581d4['id'])&&(_0x3aabd4['getSuggestion'](_0x3581d4['id'])['attributes']=_0x3581d4['attributes']);}),this['_trackChangesService']['connect'](_0x5019fd['connection'])['then'](_0x2a593c=>(_0x5019fd['addToReconnectionStack'](this),this['_fetchMissingUsersForThreads'](_0x2a593c)['then'](()=>{for(const _0x445969 of _0x2a593c){_0x3aabd4['addSuggestionData'](_0x445969)['_saved']=!0x0;}})));}async['reconnect'](){const _0x3055a7=this['editor']['plugins']['get']('TrackChangesEditing'),{connection:_0x378174}=this['editor']['plugins']['get'](c),_0x48c826=await this['_trackChangesService']['connect'](_0x378174);await this['_fetchMissingUsersForThreads'](_0x48c826);for(const {suggestionData:_0x56693a,resolve:_0x1f9fc0}of this['_bufferedRequests']['values']()){let _0x256f95=_0x48c826['find'](_0x6e08da=>_0x6e08da['id']===_0x56693a['id']);_0x256f95||(_0x256f95=await this['_trackChangesService']['add'](_0x56693a['id'],_0x56693a['type'],_0x56693a['data'],_0x56693a['originalSuggestionId'])),_0x1f9fc0(_0x256f95);}for(const _0xfa5957 of _0x48c826)_0x3055a7['hasSuggestion'](_0xfa5957['id'])||_0x3055a7['addSuggestionData'](_0xfa5957);}async['_waitForServiceReady'](){this['_trackChangesService']['isConnected']||await new Promise(_0x2af28b=>{this['listenTo'](this['_trackChangesService'],'connected',_0x970b96=>{_0x970b96['off'](),_0x2af28b();});});}async['_fetchMissingUsersForThreads'](_0x52a690){const _0x5c2a80=this['editor']['plugins']['get'](_0x2bb1a6),{connection:_0x466ce0}=this['editor']['plugins']['get'](c),_0x512417=new Set();for(const {authorId:_0x4c427b}of _0x52a690)_0x5c2a80['getUser'](_0x4c427b)||_0x512417['add'](_0x4c427b);if(0x0===_0x512417['size'])return;const _0x3dbdce=await dt['getMany'](_0x466ce0,Array['from'](_0x512417));for(const _0x2b77fd of _0x3dbdce)_0x5c2a80['getUser'](_0x2b77fd['id'])||_0x5c2a80['addUser'](_0x2b77fd);}}function R(_0x594a52){if(ft(_0x594a52))return new Promise(()=>{});throw _0x594a52;}function ft(_0x52f729){return _0x52f729['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x52f729['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}class m extends _0x19a2cf{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 _0x123e0e=this['editor']['plugins']['get'](c),_0x55309e=this['editor']['plugins']['get']('CommentsEditing'),_0x40a130=this['editor']['plugins']['get'](a);return this['editor']['data']['once']('ready',()=>{this['listenTo'](_0x123e0e,'change:state',(_0x7f5468,_0x38ae91,_0x495361)=>{_0x55309e['isThreadsLoadingPaused']='connected'!==_0x495361;});}),this['listenTo'](_0x123e0e,'change:state',(_0x3a2f1b,_0x16cabc,_0x2f7851)=>{this['editor']['plugins']['get']('CommentsRepository')['switchReadOnly']('connected'!==_0x2f7851);}),_0x40a130['_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 _0x19a2cf{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 _0x19a2cf{static ['RevisionHistoryService']=/* #__PURE__ -- @preserve */
28
- ((()=>et)());['_lastRequestId'];['_revisionTracker'];['_revisionHistoryService'];['_oldOffset'];static get['requires'](){return[c,l,'RevisionTracker',i,_0x2bb1a6];}constructor(_0xf14ff4){super(_0xf14ff4);const _0x2e644b=this['editor']['config']['get']('collaboration.channelId');this['_lastRequestId']=null,this['_revisionTracker']=this['editor']['plugins']['get']('RevisionTracker'),this['_revisionHistoryService']=new u['RevisionHistoryService'](_0x2e644b);}async['init'](){const _0x13ebd6=this['editor']['plugins']['get'](l),_0x1b7320=_0x13ebd6['serverHistory'],_0x377fcd=this['editor']['plugins']['get'](c);this['_revisionTracker']['setSource']({'history':_0x1b7320,'getLatestVersion':()=>this['_getLatestVersion'](),'getCurrentRevisionId':()=>_0x13ebd6['sessionId']});const _0x5e9610=this['editor']['config']['get']('cloudServices.bundleVersion')||nt,_0x209117=await st['isBundleUploaded'](_0x377fcd['connection'],_0x5e9610);this['_revisionTracker']['adapter']={'getRevision':async({revisionId:_0x1a9d11})=>(await this['_waitForServiceReady'](),await this['_revisionHistoryService']['getRevision'](_0x1a9d11)),'updateRevisions':async _0x17b911=>{await this['_waitForServiceReady']();const _0x3c0925=this['_revisionTracker']['currentRevision'];if(_0x209117&&0x1===_0x17b911['length']&&_0x17b911[0x0]['id']===_0x3c0925['id'])return _0x17b911;for(const _0x464b0d of _0x17b911)_0x464b0d['id']===_0x3c0925['id']&&(_0x464b0d['isEmptyCurrent']=_0x464b0d['fromVersion']===_0x464b0d['toVersion']);return this['_revisionHistoryService']['updateRevisions'](_0x17b911,this['_lastRequestId'])['then'](_0x14f079=>(this['_lastRequestId']=_0x14f079,_0x17b911))['catch'](_0x10b313=>{if(it(_0x10b313)||'400'===_0x10b313['code']&&void 0x0!==_0x10b313['data']['wrongRequestId']){for(const _0x3c6243 of _0x17b911){!this['_revisionTracker']['repository']['getRevision'](_0x3c6243['id'])||this['_revisionTracker']['_bufferUpdate'](_0x3c6243['id'],_0x3c6243,!0x1);}if(it(_0x10b313))throw _0x10b313;return _0x17b911;}throw _0x10b313;});}},this['listenTo'](this['_revisionHistoryService'],'revisionsUpdated',(_0x164116,{revisionsData:_0x3c2a61,requestId:_0x28efbf})=>{Math['max'](..._0x3c2a61['map'](_0x2436b8=>_0x2436b8['toVersion']))>this['_getLatestVersionFromServerOperations']()-0x1?this['_getLatestVersion']()['then'](()=>{this['_handleRevisionsUpdate'](_0x3c2a61,_0x28efbf);}):this['_handleRevisionsUpdate'](_0x3c2a61,_0x28efbf);});const {revisions:_0x1d1e35,requestId:_0x2f5b2c}=await this['_revisionHistoryService']['connect'](_0x377fcd['connection']);_0x377fcd['addToReconnectionStack'](this),this['_lastRequestId']=_0x2f5b2c,await this['_fetchMissingUsers'](_0x1d1e35);for(const _0x5de723 of _0x1d1e35)this['_revisionTracker']['addRevisionData'](_0x5de723);this['listenTo'](_0x13ebd6,'change:_isConnected',(_0xba5a5c,_0x4257b7,_0x3b52be)=>{_0x3b52be&&(this['_oldOffset']=_0x13ebd6['_offset'],_0xba5a5c['off']());}),this['_revisionTracker']['bind']('isEnabled')['to'](_0x377fcd,'state',_0x4edec7=>_0x4edec7===_0x3e94aa['CONNECTED']);}async['reconnect'](){const _0x48ae2c=this['editor']['plugins']['get'](c),_0x3d8896=this['editor']['plugins']['get'](l),_0x185ad1=async()=>{const _0x2ecdd0=this['_revisionTracker']['currentRevision'],_0x55cf56=_0x2ecdd0['id'],_0x5aa25d=_0x55cf56!==_0x3d8896['sessionId'];if(_0x5aa25d){const _0x41efa4=_0x3d8896['_offset']-this['_oldOffset'],_0x3f9448=this['_getLatestVersionFromServerOperations']();this['_revisionTracker']['_revisionDataBuilder']['reInit']();if(_0x2ecdd0['toVersion']+_0x41efa4!==_0x3f9448){const _0x26831d=_0x2ecdd0['fromVersion']+_0x41efa4,_0x11a76a=this['editor']['plugins']['get'](_0x2bb1a6),_0x5934b3=this['_revisionTracker']['buildRevisionData']({'revision':_0x2ecdd0,'from':_0x26831d,'to':_0x3f9448});_0x5934b3['id']=_0x2ecdd0['id'];const _0xfc76c6=_0x5934b3['authorsIds']['map'](_0x7badb8=>_0x11a76a['getUser'](_0x7badb8));_0x2ecdd0['_update']({..._0x5934b3,'authors':_0xfc76c6},!0x0),this['_revisionTracker']['_bufferUpdate'](_0x2ecdd0['id'],_0x5934b3,!0x0);}this['_revisionTracker']['_startingVersion']=_0x3f9448,(_0x2ecdd0['toVersion']===_0x2ecdd0['fromVersion']&&!this['_revisionTracker']['_bufferedUpdates']['has'](_0x55cf56)&&this['_revisionTracker']['repository']['_revisions']['remove'](_0x55cf56),this['_revisionTracker']['_createCurrentRevision'](_0x3f9448));}const {revisions:_0x44fab7,requestId:_0x25897b}=await this['_revisionHistoryService']['reconnect'](_0x48ae2c['connection'],this['_lastRequestId']);_0x5aa25d&&_0x44fab7['length']>0x0?_0x3d8896['_handleReconnectionError']():(await this['_fetchMissingUsers'](_0x44fab7),this['_handleRevisionsUpdate'](_0x44fab7,_0x25897b),this['_revisionTracker']['sendBufferedUpdates']());};return _0x3d8896['_isConnected']?_0x185ad1():new Promise((_0x20fbaf,_0xcf9206)=>{_0x3d8896['once']('change:_isConnected',()=>{_0x185ad1()['then'](_0x20fbaf)['catch'](_0xcf9206);});});}['destroy'](){super['destroy']();}async['_waitForServiceReady'](){this['_revisionHistoryService']['isConnected']||await new Promise(_0x1b3d94=>{this['listenTo'](this['_revisionHistoryService'],'connected',_0x5efea9=>{_0x5efea9['off'](),_0x1b3d94();});});}['_getLatestVersionFromServerOperations'](){const _0x995496=this['editor']['plugins']['get'](l)['serverHistory']['getOperations']()['reverse']();for(const _0x106d95 of _0x995496)if('marker'!==_0x106d95['type']||_0x106d95['affectsData'])return _0x106d95['baseVersion']+0x1;}['_getLatestVersion'](){const _0x2d2a64=this['editor']['plugins']['get'](l);return new Promise(_0x4d1cdf=>{_0x2d2a64['_isPendingUpdate']?_0x2d2a64['once']('change:_isPendingUpdate',()=>{_0x4d1cdf(this['_getLatestVersionFromServerOperations']());}):_0x4d1cdf(this['_getLatestVersionFromServerOperations']());});}['_handleRevisionsUpdate'](_0xf0fabb,_0xe61f6e){const _0x5bc010=this['_revisionTracker']['repository'];this['_lastRequestId']=_0xe61f6e;for(const _0x5aeab2 of _0xf0fabb){const _0x3d66c9=_0x5bc010['getRevision'](_0x5aeab2['id']);if(_0x3d66c9){if((_0x5aeab2['fromVersion']||_0x5aeab2['toVersion'])&&(_0x5aeab2['diffData']=null),_0x3d66c9===this['_revisionTracker']['currentRevision']){const _0x1f1c12=Math['max'](_0x3d66c9['toVersion'],_0x5aeab2['toVersion']),_0x4d487f=Math['max'](_0x3d66c9['fromVersion'],_0x5aeab2['fromVersion']);let _0x180600;_0x3d66c9['toVersion']===_0x5aeab2['toVersion']&&_0x3d66c9['fromVersion']===_0x5aeab2['fromVersion']?(_0x180600=!0x0,this['_preventResendingRevisionData'](_0x5aeab2)):_0x5aeab2['toVersion']===_0x1f1c12&&_0x5aeab2['fromVersion']===_0x4d487f?_0x180600=!0x1:(_0x3d66c9['toVersion']===_0x1f1c12&&_0x3d66c9['fromVersion']===_0x4d487f||this['_fixRevision']({'revision':_0x3d66c9,'from':_0x4d487f,'to':_0x1f1c12}),_0x180600=!0x0),_0x180600&&(delete _0x5aeab2['fromVersion'],delete _0x5aeab2['toVersion'],delete _0x5aeab2['diffData'],delete _0x5aeab2['createdAt'],delete _0x5aeab2['authorsIds']);}this['_revisionTracker']['setRevisionData'](_0x5aeab2),this['_preventResendingRevisionData'](_0x5aeab2);}else this['_revisionTracker']['addRevisionData'](_0x5aeab2);}const _0x47fbd6=_0x5bc010['getRevisions']();_0x47fbd6['reverse']();for(let _0x4e19ea=0x0;_0x4e19ea<_0x47fbd6['length']-0x1;_0x4e19ea++){const _0x269086=_0x47fbd6[_0x4e19ea],_0x3776c7=_0x47fbd6[_0x4e19ea+0x1];if(_0x269086['fromVersion']<_0x3776c7['toVersion']){const _0x16d898=_0x3776c7['toVersion'],_0x1abbdf=Math['max'](_0x16d898,_0x269086['toVersion']);this['_fixRevision']({'revision':_0x269086,'from':_0x16d898,'to':_0x1abbdf});}}}['_fixRevision']({revision:_0x5923f5,from:_0x4c9f9f,to:_0x4ffdac}={}){const _0x21ea7a=this['editor']['plugins']['get'](_0x2bb1a6),_0x3e1c0d=this['_revisionTracker']['buildRevisionData']({'revision':_0x5923f5,'from':_0x4c9f9f,'to':_0x4ffdac});_0x3e1c0d['authors']=_0x3e1c0d['authorsIds']['map'](_0x55caee=>_0x21ea7a['getUser'](_0x55caee)),_0x5923f5['_update'](_0x3e1c0d);}['_preventResendingRevisionData'](_0xf5ffb4){const _0x2680ba={};_0x2680ba['id']=_0xf5ffb4['id'];for(const _0x550dca of Object['keys'](_0xf5ffb4))'id'!==_0x550dca&&(_0x2680ba[_0x550dca]=void 0x0);this['_revisionTracker']['_bufferUpdate'](_0x2680ba['id'],_0x2680ba,!0x0);}async['_fetchMissingUsers'](_0x9ca647){const _0x411974=this['editor']['plugins']['get'](_0x2bb1a6),{connection:_0x337ff7}=this['editor']['plugins']['get'](c),_0x10838a=new Set();for(const _0x209125 of _0x9ca647){for(const _0x3750dd of _0x209125['authorsIds'])_0x37b7d5(_0x3750dd);_0x209125['creatorId']&&_0x37b7d5(_0x209125['creatorId']);}if(0x0===_0x10838a['size'])return;const _0x22cc6f=await dt['getMany'](_0x337ff7,Array['from'](_0x10838a));for(const _0x4043fc of _0x22cc6f)_0x411974['getUser'](_0x4043fc['id'])||_0x411974['addUser'](_0x4043fc);function _0x37b7d5(_0x426ff5){_0x411974['getUser'](_0x426ff5)||_0x10838a['add'](_0x426ff5);}}}function it(_0x20bc0c){return _0x20bc0c['message']['startsWith']('cloud-services-internal-error:\x20Revision\x20History\x20Service\x20is\x20not\x20connected.')||_0x20bc0c['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x20bc0c['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}class g extends _0x19a2cf{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 _0x348816{constructor(_0xda177d){super(_0xda177d);const _0x526c5b=this['bindTemplate'];this['set']('usersCount',0x0),this['set']('isHidden',!0x0),this['setTemplate']({'tag':'div','attributes':{'class':['ck','ck-presence-list__counter',_0x526c5b['if']('isHidden','ck-presence-list__counter--hidden')]},'children':[{'text':_0x526c5b['to']('usersCount',_0x2a6a27=>q(_0xda177d,'CONNECTED_USERS',_0x2a6a27))}]});}}class es extends _0x348816{['items'];['keystrokes'];constructor(_0x2687d0){super(_0x2687d0);const _0x39c60c=this['bindTemplate'];this['items']=this['createCollection'](),this['keystrokes']=new _0x193340(),this['set']({'hasPopup':!0x1,'isExpanded':!0x1}),this['setTemplate']({'tag':'div','attributes':{'aria-haspopup':_0x39c60c['if']('hasPopup'),'aria-expanded':_0x39c60c['to']('isExpanded',_0x467bec=>this['hasPopup']&&String(_0x467bec)),'aria-label':_0x39c60c['to']('hasPopup',_0x27c1e3=>q(_0x2687d0,_0x27c1e3?'Collapsed\x20connected\x20users\x20list\x20(press\x20ENTER\x20to\x20open\x20it)':'Connected\x20users\x20list')),'role':'list','tabindex':_0x39c60c['to']('hasPopup',_0x36dc9a=>!!_0x36dc9a&&0x0),'class':['ck','ck-presence-list__list']},'children':this['items'],'on':{'click':_0x39c60c['to'](()=>this['fire']('execute'))}}),this['on']('change:hasPopup',(_0x500d07,_0x4ae47c,_0x273822)=>{this['element']&&(_0x273822?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 _0x348816{['counterView'];['inlineListView'];constructor(_0x129c15){super(_0x129c15);const _0x2d6a96=this['bindTemplate'];this['set']('isCollapsed',!0x0),this['counterView']=new ts(this['locale']),this['inlineListView']=new es(_0x129c15),this['inlineListView']['bind']('hasPopup')['to'](this,'isCollapsed'),this['listenTo'](this['inlineListView']['items'],'change',()=>{for(const _0x1033aa of this['inlineListView']['items'])_0x1033aa['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',_0x2d6a96['if']('isCollapsed','ck-presence-list--collapsed')]},'children':[this['counterView'],this['inlineListView']]});}}class j extends _0x348816{['listWrapperView'];constructor(_0x29e216,_0x392ee6){super(_0x29e216),this['listWrapperView']=new mt(_0x29e216,_0x392ee6),this['setTemplate']({'tag':'div','attributes':{'tabindex':-0x1,'role':'application','class':['ck','ck-presence-list__dropdown-list'],'aria-label':q(_0x29e216,'Connected\x20users\x20list\x20dropdown\x20menu')},'children':[this['listWrapperView']]});}}class mt extends _0x1b93e4{constructor(_0x181e66,_0x3b71bb){super(_0x181e66);const _0x64a3ac=this['bindTemplate'];this['set']('_isScrollable',!0x1),this['setTemplate']({'tag':_0x3b71bb?'div':'ul','attributes':{'class':['ck','ck-reset','ck-list','ck-presence-list__dropdown-list-wrapper',_0x64a3ac['if']('_isScrollable','ck-presence-list__dropdown-list-wrapper_scrollable')],'role':_0x64a3ac['to']('role'),'aria-label':_0x64a3ac['to']('ariaLabel'),'aria-labelledby':_0x64a3ac['to']('ariaLabelledBy')},'children':this['items']}),this['listenTo'](_0x378d67['window'],'resize',()=>this['checkIfScrollable']()),this['items']['on']('change',()=>this['checkIfScrollable']());}['render'](){super['render'](),this['checkIfScrollable']();}['checkIfScrollable'](){const _0x22691c=this['element'];_0x22691c&&(this['_isScrollable']=Math['max'](_0x22691c['scrollHeight'],_0x22691c['clientHeight'])>0.8*window['innerHeight']);}}class k extends rt{['userView'];constructor(_0x299c86,_0x3f1ea3,_0x49bae1){super(_0x299c86);const _0x2e726c=this['bindTemplate'];this['userView']=new ct(_0x299c86,_0x3f1ea3);const _0x4e40ad={'tag':'li','attributes':{'class':['ck','ck-presence-list__dropdown-list-item'],'tabindex':-0x1,'role':'presentation','aria-label':_0x3f1ea3['name']},'children':[this['userView'],{'tag':'span','attributes':{'class':['ck','ck-user__full-name']},'children':[{'text':_0x3f1ea3['name']}]},{'tag':'span','attributes':{'class':['ck','ck-presence-list__marker',_0x3f1ea3['color']['getBackgroundColorClass']()],'aria-hidden':'true'}}]};_0x49bae1&&(_0x4e40ad['tag']='button',_0x4e40ad['on']={'click':_0x2e726c['to'](()=>this['fire']('execute'))}),this['setTemplate'](_0x4e40ad);}['focus'](){this['element']['focus']();}}class y extends _0x348816{['userView'];['markerView'];constructor(_0x434cf8,_0x3d64bc,_0x16ee8b){super(_0x434cf8);const _0x253ca6=this['bindTemplate'];this['set']('isFocusable',!0x1),this['set']('hasTooltip',!0x0),this['set']('tooltipPosition',''),this['userView']=new ct(_0x434cf8,_0x3d64bc),this['markerView']=new at(_0x434cf8,_0x3d64bc);const _0x577ff7=new ot(_0x434cf8);_0x577ff7['template']['tag']='span',_0x577ff7['text']=_0x3d64bc['name'];const _0x1d83ec={'tag':'div','attributes':{'class':['ck','ck-presence-list__list-item'],'role':'listitem','tabindex':_0x253ca6['to']('isFocusable',_0x1d5c84=>!!_0x1d5c84&&0x0),'aria-labelledby':_0x577ff7['id'],'data-cke-tooltip-text':this['userView']['name'],'data-cke-tooltip-position':_0x253ca6['to']('tooltipPosition'),'data-cke-tooltip-disabled':_0x253ca6['to']('hasTooltip',_0x8d9ee3=>!_0x8d9ee3),'data-cke-tooltip-class':'ck-presence-list__list-item__tooltip'},'children':[this['userView'],this['markerView'],_0x577ff7]};_0x16ee8b&&(_0x1d83ec['tag']='button',_0x1d83ec['on']={'click':_0x253ca6['to'](()=>this['fire']('execute'))}),this['setTemplate'](_0x1d83ec);}}class at extends _0x348816{constructor(_0x292abe,_0x40ce5d){super(_0x292abe),this['setTemplate']({'tag':'span','attributes':{'class':['ck','ck-presence-list__marker',_0x40ce5d['color']['getBackgroundColorClass']()],'aria-hidden':'true'}});}}const A={'collapseAt':0x6,'displayMe':!0x0};class r extends _0x1f4b11{['currentDisplayedUsers'];['balloonPanelView'];['view'];['presenceDropdownView'];['_bodyCollection']=null;constructor(_0x3dcea2){super(_0x3dcea2),this['context']['config']['define']('presenceList',A);const _0x412fad=_0x3dcea2['config']['get']('presenceList.collapseAt');if('number'!=typeof _0x412fad)throw new _0x111ec8('presencelist-collapseat-invalid-format',this);if(_0x412fad<0x1)throw new _0x111ec8('presencelist-collapseat-invalid-format',this);this['_allConnectedUsers']=this['context']['plugins']['get'](i)['allConnectedUsers'],this['set']('usersCount',0x0),this['currentDisplayedUsers']=new _0x31aad8(),this['balloonPanelView']=new _0x589f52(),this['balloonPanelView']['class']='ck\x20ck-presence-list__balloon',this['view']=this['_createView'](),this['presenceDropdownView']=void 0x0;}static get['requires'](){return[i];}['init'](){for(const _0x1e9c1f of this['_allConnectedUsers'])this['_handleUserAdd'](_0x1e9c1f);this['listenTo'](this['_allConnectedUsers'],'add',(_0x18b5d7,_0x4806b9)=>{this['_handleUserAdd'](_0x4806b9);}),this['listenTo'](this['_allConnectedUsers'],'remove',(_0x4b6d62,_0x33f84e)=>{this['_handleUserRemove'](_0x33f84e);});}['_createView'](){const _0x5e0c79=this['context'],_0x1e3583=new L(this['context']['locale']),_0x1fac00=this['balloonPanelView'];if(!_0x2bce76(_0x5e0c79['config']['get']('presenceList.container')))throw new _0x111ec8('presencelist-missing-container',this);return _0x1e3583['counterView']['bind']('usersCount')['to'](this),_0x1e3583['bind']('isCollapsed')['to'](this,'usersCount',_0x115464=>{const {collapseAt:_0x3f42cd,displayMe:_0x1f83fc}=_0x5e0c79['config']['get']('presenceList'),_0x13df5f=_0x115464>=_0x3f42cd;return _0x1e3583['counterView']['isHidden']=!(0x1==_0x115464&&_0x1f83fc||_0x13df5f),_0x13df5f||this['hideDropdown'](),_0x13df5f;}),_0x1e3583['inlineListView']['items']['bindTo'](this['currentDisplayedUsers'])['using'](_0x4d4347=>{const _0x1677af=_0x5e0c79['config']['get']('presenceList'),_0x5d151b=new y(_0x5e0c79['locale'],_0x4d4347,!!_0x1677af['onClick']);return _0x5d151b['bind']('hasTooltip')['to'](_0x1e3583,'isCollapsed',_0x7af852=>!_0x7af852),_0x5d151b['bind']('isFocusable')['to'](_0x1e3583,'isCollapsed',_0x384db=>!_0x384db),_0x1677af['onClick']&&this['listenTo'](_0x5d151b,'execute',()=>{this['view']['isCollapsed']||_0x1677af['onClick'](_0x4d4347,_0x5d151b['element']);}),_0x5d151b;}),this['listenTo'](_0x1e3583['inlineListView'],'execute',()=>{this['presenceDropdownView']?this['hideDropdown']():this['view']['isCollapsed']&&this['showDropdown']();}),_0x1e3583['inlineListView']['keystrokes']['set']('Enter',(_0x75c334,_0x11f442)=>{this['view']['isCollapsed']&&(this['showDropdown'](),_0x11f442());}),_0x1e3583['render'](),_0x1fac00['render'](),_0x15bf43({'emitter':_0x1e3583,'activator':()=>_0x1fac00['isVisible'],'contextElements':[_0x1fac00['element'],_0x1e3583['inlineListView']['element']],'callback':()=>this['hideDropdown']()}),_0x5e0c79['config']['get']('presenceList.container')['appendChild'](_0x1e3583['element']),this['_bodyCollection']=new _0x1080b2(this['context']['locale']),this['_bodyCollection']['attachToDom'](),this['_bodyCollection']['add'](this['balloonPanelView']),_0x1e3583;}['_handleUserAdd'](_0x47febe){if(!this['context']['config']['get']('presenceList.displayMe')&&_0x47febe['isMe'])return;const _0x1dfa2a=this['context']['config']['get']('presenceList.collapseAt')-0x1;this['usersCount']++,this['currentDisplayedUsers']['length']==_0x1dfa2a&&this['currentDisplayedUsers']['length']>0x1&&this['currentDisplayedUsers']['remove'](0x1);const _0x1b4b8a=_0x47febe['isMe']?0x0:this['currentDisplayedUsers']['length'];this['currentDisplayedUsers']['add'](_0x47febe,_0x1b4b8a);}['_handleUserRemove'](_0x2c2a8f){if(this['usersCount']--,this['currentDisplayedUsers']['get'](_0x2c2a8f['id'])&&(this['currentDisplayedUsers']['remove'](_0x2c2a8f['id']),this['currentDisplayedUsers']['length']<this['usersCount'])){for(const _0x4845be of Array['from'](this['_allConnectedUsers'])['reverse']())if(!this['currentDisplayedUsers']['get'](_0x4845be['id']))return void this['currentDisplayedUsers']['add'](_0x4845be,Math['min'](this['currentDisplayedUsers']['length'],0x1));}}['showDropdown'](){if(this['presenceDropdownView'])return;const _0x3a62d7=this['context']['config']['get']('presenceList');this['presenceDropdownView']=new j(this['context']['locale'],!!_0x3a62d7['onClick']),this['view']['inlineListView']['isExpanded']=!0x0;const {listWrapperView:_0x5193ad}=this['presenceDropdownView'];_0x5193ad['items']['bindTo'](this['_allConnectedUsers'])['using'](_0x302afa=>{if(!_0x3a62d7['displayMe']&&_0x302afa['isMe'])return null;const _0x391636=new k(this['context']['locale'],_0x302afa,!!_0x3a62d7['onClick']);return _0x3a62d7['onClick']&&this['listenTo'](_0x391636,'execute',()=>{_0x3a62d7['onClick'](_0x302afa,_0x391636['element']);}),_0x391636;}),this['balloonPanelView']['content']['add'](this['presenceDropdownView']),this['balloonPanelView']['pin']({'target':this['view']['inlineListView']['element']}),_0x5193ad['focus'](),_0x5193ad['checkIfScrollable']();const _0x1f4ac7=(_0x5c9705,_0x1dc916)=>{this['hideDropdown'](),this['view']['inlineListView']['focus'](),_0x1dc916();};_0x5193ad['keystrokes']['set']('Esc',_0x1f4ac7),_0x5193ad['keystrokes']['set']('Shift+Tab',_0x1f4ac7),_0x5193ad['keystrokes']['set']('Tab',(_0x3b0f2c,_0x4abdfa)=>{!function(_0x8ad7c1){const _0x3671bb=['a','button','input','select','textarea','[tabindex]','[contenteditable]']['map'](_0x10b55d=>_0x10b55d+':not([disabled]):not([tabindex=\x22-1\x22])')['join'](','),_0x5ded57=[...document['body']['querySelectorAll'](_0x3671bb)]['filter'](_0x3c08dc=>_0x3c08dc===document['activeElement']||_0x3c08dc['offsetWidth']+_0x3c08dc['offsetHeight']>0x0)['sort']((_0x30c9de,_0x525047)=>(_0x30c9de['tabIndex']||0x0)-(_0x525047['tabIndex']||0x0)),_0x1d11e3=_0x5ded57['indexOf'](_0x8ad7c1),_0x6ee68=_0x5ded57[(_0x1d11e3+0x1)%_0x5ded57['length']];_0x6ee68&&_0x6ee68['focus']();}(this['view']['element']),this['hideDropdown'](),_0x4abdfa();}),_0x5193ad['focusTracker']['add'](this['view']['element']),_0x5193ad['focusTracker']['on']('change:isFocused',(_0x2c6383,_0x5f13b6,_0x3a7e08)=>{_0x3a7e08||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 _0x1f4b11{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 _0x5b7fc6,Plugin as _0x14de47,PendingActions as _0x123214,Context as _0x519f07}from'@ckeditor/ckeditor5-core/dist/index.js';import{DomEmitterMixin as _0x2e2ed6,CKEditorError as _0x4a76a1,Collection as _0x522579,global as _0x464eca,version as nt,uid as _0x10ed5f,KeystrokeHandler as _0x348a7e}from'@ckeditor/ckeditor5-utils/dist/index.js';import{Notification as _0x563021,View as _0x339a2e,ListView as _0x844517,ListItemView as rt,LabelView as ot,BalloonPanelView as _0x587910,clickOutsideHandler as _0x38d9a6,BodyCollection as _0x173f50}from'@ckeditor/ckeditor5-ui/dist/index.js';import{LiveRange as ht,History as _0x10f310,NoOperation as _0x16d544,InsertOperation as _0x40b766,MarkerOperation as _0x569505,RootAttributeOperation as _0x590b8d,transformSets as _0x395948,OperationFactory as _0x5cad72}from'@ckeditor/ckeditor5-engine/dist/index.js';import{WebSocketGateway as lt,WEB_SOCKET_GATEWAY_STATES as _0x294a6e,CollaborativeEditingService as _0x8e956b,User as dt,CommentsService as _0x2e5868,TrackChangesService as et,RevisionHistoryService as it,EditorService as tt}from'@ckeditor/ckeditor-cloud-services-collaboration/dist/index.js';import{Users as _0x11f245,UserView as ct}from'ckeditor5-collaboration/dist/index.js';import{Compressor as _0x4a7478}from'@ckeditor/ckeditor5-operations-compressor/dist/index.js';import{isElement as _0x12ec12}from'lodash-es';class c extends _0x5b7fc6{static ['WebSocketGateway']=/* #__PURE__ -- @preserve */
24
+ ((()=>lt)());static ['initialReconnectionInterval']=0x3e8;['connection'];['_reconnectionStack'];['_shouldPluginsReconnect'];['_domEmitter'];static get['requires'](){return['CloudServices',_0x563021];}static get['pluginName'](){return'WebSocketGateway';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x3c62fe){super(_0x3c62fe),this['set']('state',_0x294a6e['CONNECTED']),this['set']('_isBrowserOffline',!0x1),this['_reconnectionStack']=new Set(),this['_shouldPluginsReconnect']=!0x1,this['_domEmitter']=Object['create'](_0x2e2ed6);}['init'](){const _0x193116=this['context'],_0x17b53a=_0x193116['plugins']['get']('CloudServices'),_0x239603=_0x193116['plugins']['get'](_0x563021);if(!_0x17b53a['token'])throw new _0x4a76a1('websocketgateway-missing-token',this);if(!_0x17b53a['webSocketUrl'])throw new _0x4a76a1('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'](_0x17b53a['token'],_0x17b53a['webSocketUrl'],{'timeout':0x3e8*this['context']['config']['get']('cloudServices.connectionTimeout'),'requestTimeout':0x3e8*this['context']['config']['get']('cloudServices.requestTimeout')})['then'](_0x127471=>{if(this['connection']=_0x127471,this['bind']('state')['to'](_0x127471,'state',this,'_isBrowserOffline',(_0x9cb631,_0x569025)=>('connected'!==_0x9cb631&&(this['_shouldPluginsReconnect']=!0x0),_0x569025||_0x9cb631!==_0x294a6e['CONNECTED']?_0x294a6e['DISCONNECTED']:this['state']==_0x294a6e['DISCONNECTED']&&this['_shouldPluginsReconnect']?(this['_shouldPluginsReconnect']=!0x1,this['_reconnect'](),_0x294a6e['CONNECTING']):_0x294a6e['CONNECTED'])),this['connection']['on']('error',(_0x4f2589,_0x32dbd7)=>{if('limitExceeded'!==_0x32dbd7['code'])throw console['error'](_0x32dbd7),new _0x4a76a1('cloudservices-init',null,{'originalError':_0x32dbd7});_0x239603['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'});}),!_0x127471['me'])return new Promise(_0x217b89=>_0x127471['on']('change:me',_0x217b89));})['catch'](_0x5ac2c6=>{throw console['error'](_0x5ac2c6),new _0x4a76a1('cloudservices-init',null,{'originalError':_0x5ac2c6});});}['addToReconnectionStack'](_0x2cf06f){if('function'!=typeof _0x2cf06f['reconnect'])throw new _0x4a76a1('websocketgateway-invalid-plugin-interface',this);if(this['isInReconnectionStack'](_0x2cf06f))throw new _0x4a76a1('websocketgateway-plugin-already-registered',this,{'name':_0x2cf06f['constructor']['pluginName']});this['_reconnectionStack']['add'](_0x2cf06f);}['removeFromReconnectionStack'](_0x1194b3){this['_reconnectionStack']['delete'](_0x1194b3);}['isInReconnectionStack'](_0x20fd16){return this['_reconnectionStack']['has'](_0x20fd16);}['_reconnect'](){return this['connection']['reconnect']()['then'](()=>Promise['all'](Array['from'](this['_reconnectionStack'],_0x119f91=>_0x119f91['reconnect']())))['then'](()=>this['state']=_0x294a6e['CONNECTED'])['catch'](_0x415b3b=>{throw console['error'](_0x415b3b),new _0x4a76a1('cloudservices-reconnection-error',this['context']);});}['destroy'](){this['connection']&&this['connection']['disconnect'](),this['state']=_0x294a6e['DISCONNECTED'],this['_domEmitter']['stopListening'](),super['destroy']();}}class i extends _0x5b7fc6{['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,_0x11f245];}constructor(_0x464500){super(_0x464500),this['channelSessions']=new Map(),this['channelConnectedUsers']=new Map(),this['allConnectedUsers']=new _0x522579(),this['_registeredSessions']=new Map(),this['_uniqueUsersCount']=0x0,this['_users']=this['context']['plugins']['get'](_0x11f245);}['init'](){const _0x105fd0=this['context']['plugins']['get'](c);this['listenTo'](_0x105fd0,'change:state',(_0x5175f1,_0x1ea16e,_0x385a65)=>{if('connected'!==_0x385a65)this['channelSessions']['forEach'](_0x5b0458=>_0x5b0458['clear']()),this['channelConnectedUsers']['forEach'](_0x2726e1=>_0x2726e1['clear']()),this['allConnectedUsers']['clear']();else{for(const [_0x5169a0,_0x161d30]of this['_registeredSessions'])for(const _0x48a568 of _0x161d30)this['_handleSessionAdd'](_0x5169a0,_0x48a568);}}),this['_createUser'](_0x105fd0['connection']['me'],!0x0);}['register'](_0x64aa24,_0x8f4181){if(this['_registeredSessions']['has'](_0x64aa24))throw new _0x4a76a1('sessions-register-already-registered',null,{'channelId':_0x64aa24});this['_registeredSessions']['set'](_0x64aa24,_0x8f4181),this['channelSessions']['set'](_0x64aa24,new _0x522579()),this['channelConnectedUsers']['set'](_0x64aa24,new _0x522579()),this['listenTo'](_0x8f4181,'add',(_0x46c5b2,_0x25b7da)=>this['_handleSessionAdd'](_0x64aa24,_0x25b7da)),this['listenTo'](_0x8f4181,'remove',(_0x2d2431,_0x2352f7)=>this['_handleSessionRemove'](_0x64aa24,_0x2352f7));for(const _0x12b553 of _0x8f4181)this['_handleSessionAdd'](_0x64aa24,_0x12b553);}['unregister'](_0x29a4df){if(!this['_registeredSessions']['has'](_0x29a4df))throw new _0x4a76a1('sessions-unregister-not-exist',null,{'channelId':_0x29a4df});const _0x25c967=this['_registeredSessions']['get'](_0x29a4df);this['stopListening'](_0x25c967);for(const _0x482038 of _0x25c967)'connected'===this['context']['plugins']['get'](c)['state']&&this['_handleSessionRemove'](_0x29a4df,_0x482038);this['_registeredSessions']['delete'](_0x29a4df),this['channelSessions']['delete'](_0x29a4df),this['channelConnectedUsers']['delete'](_0x29a4df);}get['mySessionId'](){return this['context']['plugins']['get'](c)['connection']['sessionId'];}['getUserBySessionId'](_0x438130){for(const _0x1a489e of this['channelSessions']['values']())for(const _0x3b81e7 of _0x1a489e)if(_0x3b81e7['id']===_0x438130)return _0x3b81e7['user'];}['getUserSessions'](_0x558322,_0x26af25){const _0xb5755f=_0x26af25?[this['channelSessions']['get'](_0x26af25)]:this['channelSessions']['values'](),_0x43de96=new Set();for(const _0x18b29f of _0xb5755f)for(const _0xad8acb of _0x18b29f)_0xad8acb['user']['id']===_0x558322['id']&&_0x43de96['add'](_0xad8acb['id']);return _0x43de96;}['getUserRole'](_0x12c602){for(const _0x316dff of this['channelSessions']['values']())for(const _0x4f8889 of _0x316dff)if(_0x4f8889['user']===_0x12c602)return _0x4f8889['role'];}['_handleSessionAdd'](_0x56d80a,_0xd831f2){if('connected'!==this['context']['plugins']['get'](c)['state'])return;const _0x2fd689=_0xd831f2['user'],_0x1eb6a6=this['_users']['getUser'](_0x2fd689['id'])||this['_createUser'](_0x2fd689),_0x51bb7b=Object['assign']({},_0xd831f2,{'user':_0x1eb6a6});this['channelSessions']['get'](_0x56d80a)['add'](_0x51bb7b);const _0xbd4f08=this['channelConnectedUsers']['get'](_0x56d80a);_0xbd4f08['has'](_0x1eb6a6['id'])||_0xbd4f08['add'](_0x1eb6a6),this['allConnectedUsers']['has'](_0x1eb6a6['id'])||this['allConnectedUsers']['add'](_0x1eb6a6,_0x1eb6a6['isMe']?0x0:void 0x0),this['fire']('sessionAdd:'+_0x56d80a,{'channelId':_0x56d80a,'session':_0x51bb7b});}['_handleSessionRemove'](_0x559944,_0x21bc04){if('connected'!==this['context']['plugins']['get'](c)['state'])return;const _0x3d6629=this['channelConnectedUsers']['get'](_0x559944),_0x4e770e=_0x21bc04['user'];_0x4e770e['id']&&(this['channelSessions']['get'](_0x559944)['remove'](_0x21bc04['id']),_0x3d6629['has'](_0x4e770e['id'])&&!this['getUserSessions'](_0x4e770e,_0x559944)['size']&&_0x3d6629['remove'](_0x4e770e['id']),this['allConnectedUsers']['get'](_0x4e770e['id'])&&!this['getUserSessions'](_0x4e770e)['size']&&this['allConnectedUsers']['remove'](_0x4e770e['id']));}['_createUser'](_0x79d1a,_0x2af03e){const _0x3f407=this['_users']['addUser'](_0x79d1a);return _0x2af03e&&this['_users']['defineMe'](_0x79d1a['id']),_0x3f407['orderNumber']=this['_uniqueUsersCount']++,_0x3f407;}}class H extends _0x14de47{['_domEmitter']=new(_0x2e2ed6())();static get['requires'](){return[i];}static get['pluginName'](){return'UserMarkers';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['init'](){const _0x1d79bb=this['editor'],_0x760c72=_0x1d79bb['plugins']['get'](i);_0x1d79bb['conversion']['for']('editingDowncast')['markerToElement']({'model':'user:position','view':(_0x56f1bc,{writer:_0x3182d5})=>function(_0x3a904f,_0x2e8c8e,_0x203eb2,_0x150cbd){const _0x148def=_0x3a904f['markerName']['split'](':')[0x2],_0x5cd08b=_0x203eb2['getUserBySessionId'](_0x148def);if(!_0x5cd08b||_0x148def===_0x203eb2['mySessionId'])return;if(!_0x150cbd['model']['schema']['checkChild'](_0x3a904f['markerRange']['start'],'$text'))return;const _0x1ff225={'class':'ck-user__marker\x20'+_0x5cd08b['color']['getMarkerClass'](),'data-name':_0x5cd08b['name'],'data-session-id':_0x148def},_0x478fa4=_0x150cbd['model']['markers']['get'](_0x3a904f['markerName']),_0x136717=_0x478fa4['getStart'](),_0x56c619=_0x136717['nodeAfter'],_0x188c0f=_0x150cbd['model']['schema'];if(_0x56c619&&_0x188c0f['isObject'](_0x56c619)&&_0x188c0f['isInline'](_0x56c619)&&!_0x150cbd['model']['markers']['get']('user:range:'+_0x148def)['getRange']()['isCollapsed'])return;const _0x584a09=_0x136717['parent'];return _0x150cbd['model']['schema']['isLimit'](_0x584a09)&&!_0x150cbd['model']['hasContent'](_0x584a09)&&(_0x1ff225['contenteditable']=!0x1),function(_0x59c517,_0x2f8bb2,_0x9f4415){const _0x537006=_0x59c517['createUIElement']('span',_0x2f8bb2);return _0x59c517['setCustomProperty']('userPositionMarker',!0x0,_0x537006),_0x537006['render']=function(_0xb671d9){const _0x50f277=this['toDomElement'](_0xb671d9);return _0x50f277['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>'+_0x9f4415['name']+'</span>⁠',_0x50f277['addEventListener']('mouseenter',()=>{_0x50f277['classList']['add']('ck-user__marker_hovered');}),_0x50f277['addEventListener']('mouseleave',()=>{_0x50f277['classList']['remove']('ck-user__marker_hovered');}),_0x50f277;},_0x537006['isSimilar']=function(_0x592e11){return!(!this['getCustomProperty']('userPositionMarker')||!_0x592e11['getCustomProperty']('userPositionMarker')||this['getAttribute']('data-session-id')!=_0x592e11['getAttribute']('data-session-id'));},_0x537006;}(_0x2e8c8e,_0x1ff225,_0x5cd08b);}(_0x56f1bc,_0x3182d5,_0x760c72,_0x1d79bb)}),_0x1d79bb['conversion']['for']('editingDowncast')['markerToHighlight']({'model':'user:range','view':_0x2ff607=>function(_0xfd47ae,_0x2cac0d){const _0x5cfa01=_0xfd47ae['markerName']['split'](':')[0x2];if(_0x5cfa01===_0x2cac0d['mySessionId'])return null;const _0x4238e7=_0x2cac0d['getUserBySessionId'](_0x5cfa01);if(!_0x4238e7)return{'id':_0x5cfa01,'classes':[]};return{'id':_0x5cfa01,'classes':['ck-user__selection',_0x4238e7['color']['getSelectionClass']()],'attributes':{'data-session-id':_0x5cfa01},'priority':0x7d0+_0x4238e7['orderNumber']};}(_0x2ff607,_0x760c72)}),function(_0x8b83e9){const _0x31bb2d=_0x8b83e9['model'],_0x4ca3a4=new Map(),_0x3a4816=_0x8b83e9['plugins']['get'](i);_0x31bb2d['markers']['on']('update:user:range',(_0x2b96c3,_0x346dac,_0x3a260d,_0x565f8c)=>{if(!_0x565f8c&&_0x4ca3a4['get'](_0x346dac['name']))return _0x4ca3a4['get'](_0x346dac['name'])['detach'](),void _0x4ca3a4['delete'](_0x346dac['name']);const _0x335900=_0x346dac['name']['split'](':')[0x2];if(_0x335900===_0x3a4816['mySessionId'])return;const _0x5e303e='user:position:'+_0x335900;_0x31bb2d['markers']['has'](_0x5e303e)&&_0x8b83e9['editing']['reconvertMarker'](_0x5e303e),_0x346dac['on']('change:range',(_0x5321d3,_0x2bba6e,_0x2a2c79)=>{if('$graveyard'!=_0x2bba6e['root']['rootName']&&'$graveyard'==_0x346dac['getRange']()['root']['rootName']&&!_0x4ca3a4['has'](_0x346dac['name'])){const _0x3509f5=_0x31bb2d['schema']['getNearestSelectionRange'](_0x2a2c79['deletionPosition']);if(_0x3509f5){const _0x1d77ef=ht['fromRange'](_0x3509f5);_0x4ca3a4['set'](_0x346dac['name'],_0x1d77ef),_0x1d77ef['on']('change:range',(_0x3e7300,_0xbb6dea,_0x2df80c)=>{if('$graveyard'==_0x1d77ef['root']['rootName']){const _0x241033=_0x31bb2d['schema']['getNearestSelectionRange'](_0x2df80c['deletionPosition']);_0x241033?(_0x1d77ef['start']=_0x241033['start'],_0x1d77ef['end']=_0x241033['end']):(_0x4ca3a4['delete'](_0x346dac['name']),_0x1d77ef['detach']());}});}}});}),_0x31bb2d['document']['on']('change',()=>{_0x4ca3a4['size']>0x0&&_0x31bb2d['enqueueChange']({'isUndoable':!0x1},_0x4e4ee4=>{for(const [_0x1644a3,_0x443434]of _0x4ca3a4)'$graveyard'==_0x31bb2d['markers']['get'](_0x1644a3)['getRange']()['root']['rootName']&&(re(_0x1644a3['split'](':')[0x2],_0x443434['toRange'](),_0x31bb2d,_0x4e4ee4),_0x443434['detach']());_0x4ca3a4['clear']();});});}(_0x1d79bb),this['_domEmitter']['listenTo'](_0x464eca['document'],'keydown',(_0x43f86a,{key:_0x5a441f})=>{'Escape'===_0x5a441f&&function(_0x64e4a1){_0x64e4a1['editing']['view']['change'](_0x4e95cb=>{for(const _0x2162e8 of _0x64e4a1['model']['markers']){if(!_0x2162e8['name']['startsWith']('user:position'))continue;const _0x40615a=_0x64e4a1['editing']['mapper']['markerNameToElements'](_0x2162e8['name']);if(_0x40615a){for(const _0x45a05b of _0x40615a)_0x4e95cb['removeClass']('ck-user__marker_hovered',_0x45a05b);}}});}(_0x1d79bb);},{'useCapture':!0x0});}['afterInit'](){const _0x5d7a0b=this['editor'],_0x25ab8f=_0x5d7a0b['commands']['get']('undo');_0x25ab8f&&_0x5d7a0b['model']['on']('applyOperation',(_0x1d2d1a,_0x142792)=>{const _0x265d6c=_0x142792[0x0];if('marker'!=_0x265d6c['type']||!_0x265d6c['name']['startsWith']('user:'))return;const _0x36029f=_0x265d6c['batch'];_0x25ab8f['_createdBatches']['has'](_0x36029f)&&(_0x265d6c['newRange']=_0x265d6c['oldRange']?_0x5d7a0b['model']['createRange'](_0x265d6c['oldRange']['start'],_0x265d6c['oldRange']['end']):null);},{'priority':'highest'});}['destroy'](){return this['_domEmitter']['stopListening'](),super['destroy']();}['createUserMarkerOperations'](){const _0xce937=this['editor'],_0x14ed55=_0xce937['model']['document'],_0x1b1765=_0xce937['plugins']['get'](i);_0xce937['model']['enqueueChange']({'isUndoable':!0x1},_0x4c695a=>{const _0x378893='user:range:'+_0x1b1765['mySessionId'],_0x1abeb9='user:position:'+_0x1b1765['mySessionId'],_0x5c2e38=_0xce937['model']['markers']['has'](_0x378893);_0xce937['editing']['view']['hasDomSelection']?re(_0x1b1765['mySessionId'],_0x14ed55['selection']['getFirstRange'](),_0xce937['model'],_0x4c695a):_0x5c2e38&&(_0x4c695a['removeMarker'](_0x378893),_0x4c695a['removeMarker'](_0x1abeb9));});}}function re(_0x12adc6,_0x2ea80a,_0x407e31,_0x282e91){const _0x4fe9e6='user:range:'+_0x12adc6,_0xfbeafe='user:position:'+_0x12adc6,_0x3719a8=_0x2ea80a['getContainedElement']();let _0x31487=_0x2ea80a['start'];_0x3719a8&&_0x3719a8['is']('element','tableCell')&&(_0x31487=function(_0x222dfa,_0xb7bfd6){for(const _0x5685a8 of _0x222dfa['getPositions']())if(_0xb7bfd6['schema']['checkChild'](_0x5685a8,'$text'))return _0x5685a8;}(_0x2ea80a,_0x407e31),_0x2ea80a=_0x282e91['createRange'](_0x31487));const _0x527df2=_0x282e91['createRange'](_0x31487);_0x407e31['markers']['has'](_0x4fe9e6)?(_0x282e91['updateMarker'](_0x4fe9e6,{'range':_0x2ea80a}),_0x282e91['updateMarker'](_0xfbeafe,{'range':_0x527df2})):(_0x282e91['addMarker'](_0x4fe9e6,{'range':_0x2ea80a,'usingOperation':!0x0}),_0x282e91['addMarker'](_0xfbeafe,{'range':_0x527df2,'usingOperation':!0x0}));}function q(_0x3bb1b8,_0x266535,_0x432067){const _0x383210=_0x3bb1b8['t'],t=_0x3bb1b8['t'];switch(_0x266535){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 _0x383210({'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'},_0x432067);default:return'';}}let K=0x1;class l extends _0x14de47{static ['CollaborativeEditingService']=/* #__PURE__ -- @preserve */
25
+ ((()=>_0x8e956b)());['_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,_0x123214,_0x11f245,_0x563021];}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 _0x12e806=this['serverHistory']['getOperations']();for(let _0x29fb68=_0x12e806['length']-0x1;_0x29fb68>=0x0;_0x29fb68--){const _0x5a6768=_0x12e806[_0x29fb68];if(!this['_disconnectionOperations']['has'](_0x5a6768))return _0x5a6768['baseVersion']+0x1-this['_offset'];}return 0x0;}constructor(_0x4c3b71){if(super(_0x4c3b71),this['_offset']=0x0,this['sessionId']=null,this['serverHistory']=new _0x10f310(),this['editor']['config']['define']('collaboration',{}),this['_channelId']=this['editor']['config']['get']('collaboration.channelId'),!this['_channelId'])throw new _0x4a76a1('collaboration-missing-channelid',this);const _0x184ecc=_0x4c3b71['config']['get']('cloudServices.bundleVersion')||nt;this['_service']=new l['CollaborativeEditingService'](_0x184ecc,this['_channelId']),this['_document']=this['editor']['model']['document'],this['_compressor']=new _0x4a7478(),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 _0x168d93=this['editor'],_0x17d212=_0x168d93['plugins']['get'](_0x11f245),_0x332bce=_0x168d93['plugins']['get'](c);this['listenTo'](_0x17d212,'getOperationAuthor',(_0x520176,_0x3ec6f9)=>{const _0x13b18d=_0x3ec6f9[0x0];_0x13b18d['_authorId']&&(_0x520176['return']=_0x17d212['getUser'](_0x13b18d['_authorId']),_0x520176['stop']()),null===_0x13b18d['_authorId']&&(_0x520176['return']=null,_0x520176['stop']());},{'priority':'high'}),this['listenTo'](_0x168d93['model']['document']['selection'],'change:range',(_0x74b265,_0x242c4f)=>{_0x242c4f['directChange']&&this['_refreshUserSelectionMarkers']();}),this['listenTo'](_0x168d93['editing']['view'],'change:hasDomSelection',()=>{this['_refreshUserSelectionMarkers']();}),this['_initThrowingOnDataSet'](),_0x168d93['model']['on']('applyOperation',(_0x5e6816,_0x56d095)=>{const _0x150418=_0x56d095[0x0];_0x150418['isDocumentOperation']&&(this['_saveOperationInBuffer'](_0x150418),this['_shouldSendUpdate']()&&this['_sendBufferedOperationsDelayed']());}),this['_setUpDataInit'](),this['bind']('_isEditingAllowed')['to'](_0x332bce,'state',this,'_hasSynchronizationProblem',(_0x1c2a2a,_0x5b851d)=>'connected'===_0x1c2a2a&&!_0x5b851d),this['on']('change:_isEditingAllowed',()=>{this['_isEditingAllowed']?_0x168d93['disableReadOnlyMode']('rtc-offline'):_0x168d93['enableReadOnlyMode']('rtc-offline');}),this['_isEditingAllowed']?_0x168d93['disableReadOnlyMode']('rtc-offline'):_0x168d93['enableReadOnlyMode']('rtc-offline'),this['set']('_isConnected',!0x1);}async['reconnect'](){const _0x37ee72=this['editor']['plugins']['get'](i),_0x17e8a5=this['editor']['plugins']['get'](c);try{this['_isPendingUpdate']=!0x0,_0x37ee72['unregister'](this['_channelId']);const _0x17c306=await this['_service']['reconnect'](_0x17e8a5['connection'],this['lastSyncVersion']);await this['_handleReconnectionResponse'](_0x17c306)&&(this['_isPendingUpdate']=!0x1,this['_clearPendingAction']());const _0x18fb28=await this['_service']['getConnectedSessions']();_0x37ee72['register'](this['_channelId'],_0x18fb28),this['_handleSendingSelectionMarkers'](),this['_isConnected']=!0x0;}catch(_0xe9086d){if(function(_0x5cd1e0){return'404'===_0x5cd1e0['code'];}(_0xe9086d)&&this['sessionId'])await this['_connectAfterSessionHasBeenFlushed']();else{if(function(_0x2126b0){return'409'===_0x2126b0['code'];}(_0xe9086d)){const _0x20bde6=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'](_0x20bde6);}else{if(!(_0xe9086d instanceof J))throw _0xe9086d;this['_handleReconnectionError']();}}}}['destroy'](){const _0x1c3464=this['editor']['plugins']['get'](c),_0x45ab20=this['editor']['plugins']['get'](i);this['editor']['enableReadOnlyMode']('rtc-destroyed'),_0x45ab20['channelSessions']['has'](this['_channelId'])&&_0x45ab20['unregister'](this['_channelId']),_0x1c3464['removeFromReconnectionStack'](this),this['_disconnectService'](),super['destroy']();}async['_handleReconnectionResponse'](_0x948b7e){if(this['sessionId']!==_0x948b7e['sessionId']&&this['_lastSyncedOperationId']!==_0x948b7e['lastOperationId'])throw new J();return this['sessionId']=_0x948b7e['sessionId'],this['_handleServerResponse']([],{..._0x948b7e,'wereChangesApplied':!0x1,'data':_0x948b7e['data']},'reconnect');}async['_connectService'](_0x3b6ca6,_0x2728ab=!0x1){const {connection:_0x8da68c}=this['editor']['plugins']['get'](c);l['CollaborativeEditingService']['getConnectedSessions'](_0x8da68c,this['_channelId'])['then'](_0x32dfac=>this['_initSessionsHandling'](_0x32dfac))['catch'](_0x143d70=>{this['_crash']('realtimecollaborationclient-init-session-connection-error',_0x143d70);}),this['listenTo'](this['_service'],'operationsReceived',this['_handleReceivedOperations']['bind'](this)),this['listenTo'](this['_service'],'error',(_0x5b8e66,_0x14c0d2)=>{this['_crash']('realtimecollaborationclient-initservice-internal-error',_0x14c0d2);}),this['listenTo'](this['_service'],'disconnected',()=>{this['_isConnected']=!0x1;});const _0x412c82=this['_operationIdentifier']['getIdOfTheLastOperation'](_0x3b6ca6);this['_isPendingUpdate']=!0x0;const _0x42a3c0=await this['_service']['connect'](_0x8da68c,this['_compressOperations'](_0x3b6ca6),_0x412c82);if(this['sessionId']=_0x42a3c0['sessionId'],_0x2728ab){if(!_0x42a3c0['wereChangesApplied'])return void this['_handleReconnectionError']();this['_isPendingUpdate']=!0x1,this['_clearPendingAction'](),this['serverHistory']['reset'](),this['_offset']=_0x42a3c0['offset'],this['serverHistory']['version']=this['_offset'],await this['_handleServerResponse'](_0x3b6ca6,_0x42a3c0,'reconnection:\x20flushed\x20session');}else await this['_handleInitialConnectionData'](_0x42a3c0,_0x3b6ca6);this['_handleSendingSelectionMarkers'](),this['_isConnected']=!0x0;}['_handleSendingSelectionMarkers'](){const _0x3a99b2=this['editor']['plugins']['get'](i),_0xfd7fb3=this['editor']['plugins']['get'](H),_0x26d4bb=_0x3a99b2['channelSessions']['get'](this['_channelId']);_0x26d4bb&&_0x26d4bb['length']>0x1?_0xfd7fb3['createUserMarkerOperations']():this['listenTo'](_0x3a99b2,'sessionAdd:'+this['_channelId'],()=>{0x2===_0x3a99b2['channelSessions']['get'](this['_channelId'])['length']&&_0xfd7fb3['createUserMarkerOperations']();});}async['_handleReceivedOperations'](_0x3ca33d,_0x78ef84,_0x478bf5,_0x749553){if(!this['_isPendingUpdate']&&this['_document']['version']==_0x78ef84){const _0x18c382=this['_decompressOperations'](_0x478bf5,_0x749553);await this['_fetchMissingUsers'](_0x18c382),this['_handleExternalOperations'](_0x18c382,_0x78ef84,_0x478bf5['lastOperationId'])||this['_crash']('realtimecollaborationclient-initservice-incorrect-server-operation');}}async['_connectAfterSessionHasBeenFlushed'](){this['_disconnectService']();const {locale:_0x13d631}=this['editor'];let _0x39e3b3;try{_0x39e3b3=await this['_service']['getDocumentDetails']();}catch(_0x18e599){const _0x337ef7=q(_0x13d631,'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'](_0x337ef7);}const _0x5a9467=_0x39e3b3['currentDocumentSession']||_0x39e3b3['lastDocumentSession'];if(this['_lastSyncedOperationId']===_0x5a9467['lastOperationId'])await this['_connectService'](this['editor']['model']['document']['history']['getOperations'](),!0x0);else{const _0x3a3da3=q(_0x13d631,'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'](_0x3a3da3);}}['_disconnectService'](){this['_service']['disconnect'](),this['_bufferedOperations']=[],clearTimeout(this['_sendBufferedOperationsDelayId']),this['stopListening'](this['_service']);}['_initSessionsHandling'](_0x4cbacf){const _0x53e64a=this['editor']['plugins']['get'](i);this['listenTo'](_0x53e64a,'sessionAdd:'+this['_channelId'],(_0x543cd4,{session:_0x29d03f})=>{if(_0x29d03f['id']===_0x53e64a['mySessionId']){_0x543cd4['off']();const _0x1deef5=this['editor']['plugins']['has']('CommentsOnly')&&this['editor']['plugins']['get']('CommentsOnly');let _0x50770f=_0x29d03f['permissions'];_0x1deef5&&_0x1deef5['isEnabled']&&(_0x50770f=_0x50770f['filter'](_0x23244a=>'document:write'!==_0x23244a)),this['editor']['plugins']['get']('Permissions')['setPermissions'](_0x50770f,this['_channelId']);}}),_0x53e64a['register'](this['_channelId'],_0x4cbacf);}['_initThrowingOnDataSet'](){const _0x2a8c08=this['editor']['data']['set'];this['editor']['data']['set']=(..._0x216c16)=>{if(!_0x216c16[_0x216c16['length']-0x1]['suppressErrorInCollaboration'])throw new _0x4a76a1('realtimecollaborationclient-editor-setdata-and-editor-data-set-are-forbidden-in-real-time-collaboration',this);_0x2a8c08['apply'](this['editor']['data'],_0x216c16);};}['_setUpDataInit'](){this['editor']['data']['on']('init',(_0x483947,[_0x1f3db9])=>{if(this['_document']['version'])throw new _0x4a76a1('realtimecollaborationclient-init-document-already-initialized',this);_0x483947['stop'](),this['_setPendingAction']();const _0x3525ed=this['editor']['config']['get']('rootsAttributes'),_0x59a41a=this['_getOperationsFromInitData'](_0x1f3db9,_0x3525ed);0x0==_0x59a41a['length']&&_0x59a41a['push'](new _0x16d544(0x0)),_0x483947['return']=this['_connectService'](_0x59a41a)['then'](()=>{this['editor']['plugins']['get'](c)['addToReconnectionStack'](this),this['editor']['data']['fire']('ready');})['catch'](_0x3fb0d5=>this['_crash']('realtimecollaborationclient-init-connection-failed',_0x3fb0d5))['finally'](()=>this['_clearPendingAction']());},{'priority':'high'}),this['editor']['on']('loadRoot',async(_0x5dd7ba,[_0x2f7871,_0x1f6ae4])=>{_0x5dd7ba['stop']();const _0x521b4a=this['editor']['model']['document']['getRoot'](_0x2f7871);if(!this['_knownRootNames']['has'](_0x2f7871)){const _0x4f77a0=_0x1f6ae4&&_0x1f6ae4['data']?_0x1f6ae4['data']:'',_0x1c21d5=_0x1f6ae4&&_0x1f6ae4['attributes']?_0x1f6ae4['attributes']:{};await this['_loadRoot'](_0x2f7871,_0x4f77a0,_0x1c21d5);}this['editor']['model']['enqueueChange']({'isUndoable':!0x1},()=>{_0x521b4a['_isLoaded']=!0x0,this['editor']['model']['document']['differ']['_bufferRootLoad'](_0x521b4a);});},{'priority':'high'});}async['_fetchMissingUsers'](_0xea7b99){const _0x40dde6=this['editor']['plugins']['get'](_0x11f245),{connection:_0x1cbd39}=this['editor']['plugins']['get'](c),_0x4a7a53=new Set();for(const _0x194828 of _0xea7b99){const _0x11d716=_0x194828['_authorId'];_0x11d716&&!_0x40dde6['getUser'](_0x11d716)&&_0x4a7a53['add'](_0x11d716);}if(0x0===_0x4a7a53['size'])return;const _0x582336=await dt['getMany'](_0x1cbd39,Array['from'](_0x4a7a53));for(const _0x13df9a of _0x582336)_0x40dde6['getUser'](_0x13df9a['id'])||_0x40dde6['addUser'](_0x13df9a);}['_getOperationsFromInitData'](_0xd77a6c,_0x5e4db6={}){const _0x261e11=this['editor']['model'],_0x249427=[];let _0x4e3979=0x0;const _0x27cbc2='string'==typeof _0xd77a6c?{'main':_0xd77a6c}:_0xd77a6c;for(const _0x30641b of Object['keys'](_0x27cbc2)){if(!this['_document']['roots']['has'](_0x30641b))throw new _0x4a76a1('realtimecollaborationclient-init-non-existent-root',this);const _0x5773ea=this['editor']['data']['parse'](_0x27cbc2[_0x30641b]),_0x1935a7=this['_document']['getRoot'](_0x30641b),_0x2f8929=new _0x40b766(_0x261e11['createPositionAt'](_0x1935a7,0x0),_0x5773ea,_0x4e3979++);_0x249427['push'](_0x2f8929);for(const [_0x1c6232,_0x13f8ed]of _0x5773ea['markers']){const _0x9cf59c=_0x261e11['createRange'](_0x261e11['createPositionFromPath'](_0x1935a7,_0x13f8ed['start']['path']['slice']()),_0x261e11['createPositionFromPath'](_0x1935a7,_0x13f8ed['end']['path']['slice']())),_0x90d806=new _0x569505(_0x1c6232,null,_0x9cf59c,_0x261e11['markers'],!0x0,_0x4e3979++);_0x249427['push'](_0x90d806);}}if(_0x5e4db6)for(const [_0x5c2357,_0x106193]of Object['entries'](_0x5e4db6)){const _0x2fd4a2=_0x261e11['document']['getRoot'](_0x5c2357);if(!_0x2fd4a2)throw new _0x4a76a1('multi-root-editor-root-attributes-no-root',null);for(const [_0x228a39,_0xd917e1]of Object['entries'](_0x106193))if(null!==_0xd917e1){const _0x2322a3=new _0x590b8d(_0x2fd4a2,_0x228a39,null,_0xd917e1,_0x4e3979++);_0x249427['push'](_0x2322a3);}}return _0x249427;}async['_loadRoot'](_0x2d043c,_0x527f1f,_0x496b42){this['_getOperationsFromInitData']({[_0x2d043c]:_0x527f1f},{[_0x2d043c]:_0x496b42})['forEach']((_0x40f0cd,_0x4f4603)=>{_0x40f0cd['baseVersion']=this['_document']['version']+_0x4f4603,_0x40f0cd['_isInit']=!0x0,this['_saveOperationInBuffer'](_0x40f0cd);}),this['_sendBufferedOperationsDelayed'](),await this['_waitUntilSynced']();}async['_handleInitialConnectionData'](_0x2afa3b,_0x5073a6){let _0x1931ab;this['_offset']=_0x2afa3b['offset'];const _0xd56396=_0x2afa3b['wereChangesApplied']&&!_0x2afa3b['initData'],_0x428bc8=_0xd56396?0x0:_0x2afa3b['data']['baseVersion'];if(_0x5073a6['forEach'](_0x4f00da=>{_0x4f00da['_isInit']=!0x0,_0x4f00da['createdAt']=_0x2afa3b['sessionCreatedAt'],_0x4f00da['_authorId']=null;}),_0xd56396)_0x1931ab=_0x5073a6,this['_applyOperationsSet'](_0x1931ab,_0xd56396);else{if(_0x2afa3b['initData']){const _0x2f54ab=this['_getOperationsFromInitData'](_0x2afa3b['initData']);this['_document']['history']['version']=-_0x2f54ab['length'],_0x2f54ab['forEach'](_0x3734cf=>{_0x3734cf['baseVersion']-=_0x2f54ab['length'],_0x3734cf['createdAt']=_0x2afa3b['sessionCreatedAt'],_0x3734cf['_isInit']=!0x0,_0x3734cf['_authorId']=null;}),this['_applyOperationsSet'](_0x2f54ab,!0x0),this['serverHistory']['version']=-_0x2f54ab['length']+this['_offset'],this['_updateServerHistory'](_0x2f54ab);}this['_document']['history']['version']=_0x428bc8,_0x1931ab=this['_decompressOperations'](_0x2afa3b['data'],_0x2afa3b['metadata']),await this['_fetchMissingUsers'](_0x1931ab),this['_applyOperationsSet'](_0x1931ab,_0xd56396);}_0x2afa3b['lastOperationId']&&(this['_operationIdentifier']['setIdForTheLastOperation'](_0x1931ab,_0x2afa3b['lastOperationId']),this['_lastSyncedOperationId']=_0x2afa3b['lastOperationId']),this['serverHistory']['version']=_0x428bc8+this['_offset'],this['_updateServerHistory'](_0x1931ab),_0x5073a6['filter'](_0x37d68a=>{const _0x3550fa=this['_getAffectedRoot'](_0x37d68a);return _0x3550fa&&!this['_knownRootNames']['has'](_0x3550fa);})['forEach']((_0x5a30eb,_0x42175f)=>{_0x5a30eb['baseVersion']=this['_document']['version']+_0x42175f,this['_saveOperationInBuffer'](_0x5a30eb);}),this['_shouldSendUpdate']()?(this['_currentBufferDelay']=0x0,this['_sendBufferedOperationsDelayed'](!0x0),await this['_waitUntilSynced']()):(this['_isPendingUpdate']=!0x1,this['_clearPendingAction']());}['_crash'](_0x29ff8a,_0x58a589){throw this['_isPendingUpdate']=!0x0,_0x58a589&&console['error'](_0x58a589),new _0x4a76a1(_0x29ff8a,this['editor']);}['_saveOperationInBuffer'](_0x3c5cc5){this['_knownOperations']['has'](_0x3c5cc5)||(this['_knownOperations']['add'](_0x3c5cc5),this['_bufferedOperations']['push'](_0x3c5cc5),this['_pendingAction']||'marker'==_0x3c5cc5['type']&&!_0x3c5cc5['affectsData']||this['_setPendingAction']());}['_sendBufferedOperationsDelayed'](_0x12ab3e=!0x1){!_0x12ab3e&&this['_isPendingUpdate']||(this['_isPendingUpdate']=!0x0,clearTimeout(this['_sendBufferedOperationsDelayId']),this['_sendBufferedOperationsDelayId']=setTimeout(()=>{this['_sendBufferedOperations']()['then'](_0x336e02=>{_0x336e02&&(this['_clearPendingAction'](),this['_isPendingUpdate']=!0x1);})['catch'](_0x4abafc=>{if(this['_clearPendingAction'](),this['_isPendingUpdate']=!0x1,!function(_0x34237b){return _0x34237b['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x34237b['message']['startsWith']('cloud-services-internal-error:\x20Collaborative\x20Editing\x20Service\x20is\x20not\x20connected.')||_0x34237b['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}(_0x4abafc))throw _0x4abafc;});},this['_currentBufferDelay']));}['_waitUntilSynced'](){return new Promise(_0x333bd6=>{this['on']('change:_isPendingUpdate',()=>{_0x333bd6();});});}async['_sendBufferedOperations'](){const _0x56e532=this['editor']['plugins']['get'](H);if(this['_shouldSendSelectionUpdate']()&&(_0x56e532['createUserMarkerOperations'](),this['_hasSelectionChanged']=!0x1),!this['_shouldSendUpdate']())return!0x0;const _0x5f0452=[...this['_bufferedOperations']];for(const _0x12ebac of _0x5f0452)_0x12ebac['wasUndone']=this['_document']['history']['isUndoneOperation'](_0x12ebac);const _0x2a3c2a=this['_operationIdentifier']['getIdOfTheLastOperation'](_0x5f0452),_0x42927f=K++,_0x400a79=this['_compressOperations'](_0x5f0452),_0x26d626=await this['_service']['sendOperations'](_0x400a79,_0x400a79['baseVersion'],_0x2a3c2a);try{return await this['_handleServerResponse'](_0x5f0452,_0x26d626,_0x42927f);}catch(_0x61880b){return this['_crash']('realtimecollaborationclient-sendbufferedoperations',_0x61880b);}}async['_handleServerResponse'](_0x5f3ae0,_0xfdd3a9,_0x4a0dd6){if('error'in _0xfdd3a9)throw _0xfdd3a9['error'];let _0x34cfbd=!0x1;if(_0xfdd3a9['wereChangesApplied']){_0xfdd3a9['lastOperationId']&&(this['_lastSyncedOperationId']=_0xfdd3a9['lastOperationId']),this['_bufferedOperations']=this['_bufferedOperations']['filter'](_0x21fe9f=>!_0x5f3ae0['includes'](_0x21fe9f));for(const _0x4598e0 of _0x5f3ae0)_0x4598e0['createdAt']='lastOperationAcceptedAt'in _0xfdd3a9&&_0xfdd3a9['lastOperationAcceptedAt']||void 0x0;Q(_0x5f3ae0,_0xfdd3a9['version']-_0x5f3ae0['length']),this['_updateServerHistory'](_0x5f3ae0);const _0x1b2b0b=_0x5f3ae0['filter'](_0x31eb06=>{if(!_0x31eb06['_isInit'])return!0x1;const _0x536e00=this['_getAffectedRoot'](_0x31eb06);return _0x536e00&&!this['_knownRootNames']['has'](_0x536e00);});Q(_0x1b2b0b,this['_document']['version']),this['_applyOperationsSet'](_0x1b2b0b),_0x34cfbd=!0x0,this['_currentBufferDelay']=this['_baseBufferDelay'];}else{const _0x54ff3f=this['_decompressOperations'](_0xfdd3a9['data'],_0xfdd3a9['metadata'])['filter'](_0x1f7142=>_0x1f7142['baseVersion']>=this['_lastServerVersion']);_0x54ff3f['forEach'](_0x6e2721=>this['_addKnownRoot'](_0x6e2721)),this['_bufferedOperations']=this['_bufferedOperations']['filter'](_0x5a64bc=>!_0x5a64bc['_isInit']||!this['_knownRootNames']['has'](this['_getAffectedRoot'](_0x5a64bc))),this['_bufferedOperations']['length']&&Q(this['_bufferedOperations'],this['_bufferedOperations'][0x0]['baseVersion']),await this['_fetchMissingUsers'](_0x54ff3f),_0x34cfbd=this['_handleExternalOperations'](_0x54ff3f,_0xfdd3a9['version'],_0xfdd3a9['lastOperationId']),this['_currentBufferDelay']=Math['round'](this['_currentBufferDelay']/0x2);}return _0x34cfbd?!this['_shouldSendUpdate']()||(this['_sendBufferedOperationsDelayed'](!0x0),!0x1):this['_crash']('realtimecollaborationclient-handleserverresponse');}['_handleExternalOperations'](_0x585f6f,_0x205e21,_0x3f2f78){try{const _0x4a0fac={'document':this['_document'],'useRelations':!0x1,'padWithNoOps':!0x0},{operationsA:_0x584f26,operationsB:_0xe45bee,originalOperations:_0xcb5be}=_0x395948(_0x585f6f,this['_bufferedOperations'],_0x4a0fac);Q(_0x584f26,this['_document']['version']),Q(_0xe45bee,_0x205e21);for(const _0x534b4a of _0x584f26){const _0xc6fc8b=_0xcb5be['get'](_0x534b4a);_0x534b4a['_authorId']=_0xc6fc8b?_0xc6fc8b['_authorId']:null;}_0x3f2f78&&(this['_operationIdentifier']['setIdForTheLastOperation'](_0x585f6f,_0x3f2f78),this['_lastSyncedOperationId']=_0x3f2f78),this['_bufferedOperations']=[..._0xe45bee],this['_applyOperationsSet'](_0x584f26),this['_updateServerHistory'](_0x585f6f);}catch(_0x25e268){return console['error'](_0x25e268),!0x1;}return!0x0;}['_applyOperationsSet'](_0x330849,_0x534996=!0x1){this['editor']['model']['enqueueChange']({'isUndoable':!0x1,'isLocal':!0x1},_0x2ab2c1=>{for(const _0xddbb96 of _0x330849)this['_knownOperations']['add'](_0xddbb96),this['_addKnownRoot'](_0xddbb96),_0x2ab2c1['batch']['addOperation'](_0xddbb96),this['editor']['model']['applyOperation'](_0xddbb96);});}['_addKnownRoot'](_0xb4b4c6){const _0xd6d70a=this['_getAffectedRoot'](_0xb4b4c6);_0xd6d70a&&this['_knownRootNames']['add'](_0xd6d70a);}['_getAffectedRoot'](_0x3b78e7){let _0x43cad4,_0x224726;switch(_0x3b78e7['type']){case'insert':_0x43cad4=_0x3b78e7['position']['root'];break;case'marker':if(_0x224726=_0x3b78e7['newRange'],!_0x224726)return null;_0x43cad4=_0x224726['root'];break;case'addRootAttribute':_0x43cad4=_0x3b78e7['root'];break;case'addRoot':_0x43cad4=_0x3b78e7['affectedSelectable'];break;case'move':_0x43cad4=_0x3b78e7['targetPosition']['root'];break;default:return null;}return _0x43cad4['rootName'];}['_updateServerHistory'](_0xcf8877){_0xcf8877['forEach'](_0xe87ad=>{const _0x150a00=_0xe87ad['clone']();_0x150a00['_authorId']=_0xe87ad['_authorId'],_0x150a00['_isInit']=!!_0xe87ad['_isInit'],_0x150a00['createdAt']=_0xe87ad['createdAt'],_0x150a00['baseVersion']+=this['_offset'],_0xe87ad['_isDisconnection']&&this['_disconnectionOperations']['add'](_0x150a00),this['serverHistory']['addOperation'](_0x150a00);});}['_handleReconnectionError'](_0x3f9934){const _0x1b0675=this['editor']['plugins']['get']('Notification'),_0x3224c3=this['editor']['locale'];_0x3f9934||(_0x3f9934=q(_0x3224c3,'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.')),_0x1b0675['showWarning'](_0x3f9934,{'title':q(_0x3224c3,'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'](_0x123214)['add'](q(this['editor']['locale'],'PENDING_ACTION_SENDING_DATA')));}['_clearPendingAction'](){this['_pendingAction']&&(this['editor']['plugins']['get'](_0x123214)['remove'](this['_pendingAction']),this['_pendingAction']=null);}['_compressOperations'](_0x4c4361){const _0x43c91f=_0x4c4361['map'](_0x13f888=>_0x13f888['toJSON']());return this['_compressor']['compress'](_0x43c91f);}['_decompressOperations'](_0x3726bc,_0x1da686){return this['_compressor']['decompress'](_0x3726bc)['map']((_0x1e447a,_0x302eb7)=>{const _0x330fdb='init'==_0x1da686[_0x302eb7]['type'];if('InsertOperation'==_0x1e447a['__className']){const _0x10b131=_0x1e447a['position']['root'];!this['_document']['getRoot'](_0x10b131)&&(this['_document']['createRoot']('$root',_0x10b131)['_isAttached']=!0x1);}const _0x310eba=_0x5cad72['fromJSON'](_0x1e447a,this['_document']);return _0x310eba['wasUndone']=_0x1e447a['wasUndone'],_0x310eba['_isInit']=_0x330fdb,_0x310eba['_authorId']=_0x330fdb?null:_0x1da686[_0x302eb7]['userId'],_0x310eba['_isDisconnection']='cs:removeUser'===_0x1da686[_0x302eb7]['type'],_0x310eba['createdAt']=_0x1da686[_0x302eb7]['createdAt'],_0x310eba;});}['_refreshUserSelectionMarkers'](){this['_hasSelectionChanged']=!0x0,this['_shouldSendSelectionUpdate']()?this['_sendBufferedOperationsDelayed']():this['_hasSelectionChanged']=!0x1;}['_shouldSendSelectionUpdate'](){const _0x55153b=this['editor']['plugins']['get'](i)['channelSessions']['get'](this['_channelId']);return!this['editor']['isReadOnly']&&!!_0x55153b&&_0x55153b['length']>0x1&&this['_hasSelectionChanged'];}['_shouldSendUpdate'](){return this['_bufferedOperations']['length']>0x0||this['_shouldSendSelectionUpdate']();}}class J extends Error{}function Q(_0x569839,_0x27cf71){for(const _0x550f41 of _0x569839)_0x550f41['baseVersion']=_0x27cf71++;}class X{['_ignoredOperations'];['_operationToId'];constructor(_0x3ee893){this['_ignoredOperations']=_0x3ee893,this['_operationToId']=new WeakMap();}['getIdOfTheLastOperation'](_0x3a84bc){let _0x2d8bff=_0x3a84bc['length'];for(;_0x2d8bff--;){const _0x2b5f08=_0x3a84bc[_0x2d8bff];if(!this['_ignoredOperations']['has'](_0x2b5f08)){if(!this['_operationToId']['has'](_0x2b5f08)){const _0x62bef5=_0x10ed5f()['slice'](0x1,0x12);this['_operationToId']['set'](_0x2b5f08,_0x62bef5);}return this['_operationToId']['get'](_0x2b5f08);}}}['setIdForTheLastOperation'](_0x5e1fc1,_0x4af634){if(!_0x4af634)return;let _0xfc4153=_0x5e1fc1['length'];for(;_0xfc4153--;){const _0x30b703=_0x5e1fc1[_0xfc4153];this['_ignoredOperations']['has'](_0x30b703)||this['_operationToId']['set'](_0x30b703,_0x4af634);}}}class n extends _0x14de47{static get['requires'](){return[l];}static get['pluginName'](){return'RealTimeCollaborativeEditing';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}class a extends _0x5b7fc6{static ['CommentsService']=/* #__PURE__ -- @preserve */
26
+ ((()=>_0x2e5868)());['_services'];static get['requires'](){return[c,'CommentsRepository',i,_0x11f245];}static get['pluginName'](){return'CloudServicesCommentsAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x413778){super(_0x413778),this['_services']=new Map();}async['init'](){const _0x4246d2=this['context'],_0xc5ca72=_0x4246d2['plugins']['get']('CommentsRepository');if(_0x4246d2['plugins']['get'](c)['addToReconnectionStack'](this),_0xc5ca72['adapter']={'addCommentThread':async({channelId:_0x23dbd7,threadId:_0x6d2837,comments:_0x3b89ef,resolvedAt:_0x269cec,resolvedBy:_0xb05643,context:_0x175084,attributes:_0x1e3328})=>{const _0x3656ed=await this['_getService'](_0x23dbd7)['addCommentThread']({'commentThreadId':_0x6d2837,'comments':_0x3b89ef['map'](_0x4d3b62=>function(_0x29a163,_0x8858e9,_0x217dd0){return{'commentThreadId':_0x217dd0,'commentId':_0x29a163['commentId'],'userId':_0x29a163['authorId'],'content':_0x29a163['content'],'documentId':_0x8858e9,'createdAt':_0x29a163['createdAt'],'attributes':_0x29a163['attributes']||{}};}(_0x4d3b62,_0x23dbd7,_0x6d2837)),'resolvedAt':_0x269cec,'resolvedBy':_0xb05643,'context':_0x175084,'attributes':_0x1e3328})['catch'](ut);return{'threadId':_0x3656ed['commentThreadId'],'comments':_0x3656ed['comments']};},'getCommentThread':async({channelId:_0x5b722c,threadId:_0x4fae9c})=>{const _0x5bda9f=await this['_getService'](_0x5b722c)['getCommentThread'](_0x4fae9c)['catch'](ut);return _0x5bda9f['deletedAt']?null:(await this['_fetchMissingUsersForThreads']([_0x5bda9f]),{'threadId':_0x5bda9f['commentThreadId'],'comments':_0x5bda9f['comments']['map'](S),'context':_0x5bda9f['context'],'resolvedAt':_0x5bda9f['resolvedAt'],'resolvedBy':_0x5bda9f['resolvedBy'],'attributes':_0x5bda9f['attributes']||{}});},'updateCommentThread':async({channelId:_0x2a732b,threadId:_0x48d391,context:_0x48582a,unlinkedAt:_0x394300,attributes:_0x395b8c})=>this['_getService'](_0x2a732b)['updateCommentThread']({'commentThreadId':_0x48d391,'context':_0x48582a,'attributes':_0x395b8c,'unlinkedAt':_0x394300})['catch'](B)['catch'](ut),'resolveCommentThread':async({channelId:_0x1d527e,threadId:_0x1c423f})=>{const _0x4321e7=await this['_getService'](_0x1d527e)['resolveCommentThread'](_0x1c423f)['catch'](B)['catch'](ut);return{'threadId':_0x4321e7['commentThreadId'],'resolvedAt':_0x4321e7['resolvedAt'],'resolvedBy':_0x4321e7['resolvedBy']};},'reopenCommentThread':async({channelId:_0x4922e1,threadId:_0x50ea6f})=>this['_getService'](_0x4922e1)['reopenCommentThread'](_0x50ea6f)['catch'](B)['catch'](ut),'removeCommentThread':({channelId:_0x482d93,threadId:_0x2936e9})=>this['_getService'](_0x482d93)['removeCommentThread'](_0x2936e9)['catch'](B)['catch'](ut),'addComment':({channelId:_0x28d9d2,threadId:_0x19757a,commentId:_0x5e2ff8,content:_0x7832b2,attributes:_0x4910e4})=>this['_getService'](_0x28d9d2)['addComment'](_0x19757a,_0x5e2ff8,_0x7832b2,_0x4910e4)['catch'](ut),'updateComment':({channelId:_0x5e020e,threadId:_0x39b6c3,commentId:_0x29fd51,content:_0x39b3d0,attributes:_0x5d9a35})=>this['_getService'](_0x5e020e)['updateComment'](_0x39b6c3,_0x29fd51,_0x39b3d0,_0x5d9a35)['catch'](B)['catch'](ut),'removeComment':({channelId:_0x2fec24,threadId:_0x34f4da,commentId:_0x5caad5})=>this['_getService'](_0x2fec24)['removeComment'](_0x34f4da,_0x5caad5)['catch'](B)['catch'](ut)},_0x4246d2 instanceof _0x519f07){const _0x560f9c=_0x4246d2['config']['get']('collaboration.channelId'),_0x3d29ef=_0x4246d2['plugins']['get'](i);await this['_setUpService'](_0x560f9c);const _0x213624=await this['_services']['get'](_0x560f9c)['getConnectedSessions']();this['listenTo'](_0x3d29ef,'sessionAdd:'+_0x560f9c,(_0x321bf0,{session:_0x430aad})=>{_0x430aad['id']===_0x3d29ef['mySessionId']&&(_0x321bf0['off'](),this['context']['plugins']['get']('Permissions')['setPermissions'](_0x430aad['permissions'],_0x560f9c));}),_0x3d29ef['register'](_0x560f9c,_0x213624);}}async['_setUpService'](_0x150e5){if(this['_services']['has'](_0x150e5))throw new _0x4a76a1('cloudservicescommentsadapter-connect-already-connected',null,{'channelId':_0x150e5});const _0xd5f8f4=this['context']['plugins']['get']('CommentsRepository'),_0x4148cf=new a['CommentsService'](_0x150e5);this['_services']['set'](_0x150e5,_0x4148cf),this['listenTo'](_0x4148cf,'commentThreadAdded',(_0x9672b2,_0x15dc57)=>{const {commentThreadId:_0xb5826e,documentId:_0x30c0b9,context:_0x38ebf3,attributes:_0x1a9b53,resolvedAt:_0x4adc5a,resolvedBy:_0x3d966f,comments:_0x53f064}=_0x15dc57;_0xd5f8f4['getCommentThread'](_0xb5826e)||_0xd5f8f4['addCommentThread']({'threadId':_0xb5826e,'channelId':_0x30c0b9,'comments':_0x53f064?_0x53f064['map'](S):[],'context':_0x38ebf3,'attributes':_0x1a9b53,'resolvedAt':_0x4adc5a,'resolvedBy':_0x3d966f,'isFromAdapter':!0x0});}),this['listenTo'](_0x4148cf,'commentThreadUpdated',(_0x40bfd4,{commentThreadId:_0x450098,documentId:_0x3498d2,context:_0x524c5b,unlinkedAt:_0x1002e5,attributes:_0x2fc99d})=>{_0xd5f8f4['getCommentThread'](_0x450098)&&_0xd5f8f4['updateCommentThread']({'threadId':_0x450098,'channelId':_0x3498d2,'context':_0x524c5b,'unlinkedAt':_0x1002e5,'attributes':_0x2fc99d,'isFromAdapter':!0x0});}),this['listenTo'](_0x4148cf,'commentThreadResolved',(_0x3e0216,{commentThreadId:_0x4d1d15,resolvedBy:_0x2d1b02,resolvedAt:_0x140d71})=>{const _0x76d106=_0xd5f8f4['getCommentThread'](_0x4d1d15);_0x76d106&&_0x76d106['resolve']({'resolvedBy':_0x2d1b02,'resolvedAt':_0x140d71,'isFromAdapter':!0x0});}),this['listenTo'](_0x4148cf,'commentThreadReopened',(_0x4c662d,{commentThreadId:_0x518b60})=>{const _0xd7e987=_0xd5f8f4['getCommentThread'](_0x518b60);_0xd7e987&&_0xd7e987['reopen']({'isFromAdapter':!0x0});}),this['listenTo'](_0x4148cf,'commentThreadRemoved',(_0x296b5b,{commentThreadId:_0x4c164b})=>{const _0x198533=_0xd5f8f4['getCommentThread'](_0x4c164b);_0x198533&&_0x198533['remove']({'isFromAdapter':!0x0});}),this['listenTo'](_0x4148cf,'commentAdded',(_0x14fe13,_0x115b00)=>{const _0x78d955=_0x115b00['commentThreadId'],_0xaf8391=_0xd5f8f4['getCommentThread'](_0x78d955);_0xaf8391&&_0xaf8391['addComment']({...S(_0x115b00),'isFromAdapter':!0x0});}),this['listenTo'](_0x4148cf,'commentUpdated',(_0x5b01d0,{commentThreadId:_0x32cfd3,commentId:_0xb8b3b3,content:_0x15463b,attributes:_0x152f37})=>{const _0x77b8fd=_0xd5f8f4['getCommentThread'](_0x32cfd3);if(_0x77b8fd){const _0x5829cd=_0x77b8fd['getComment'](_0xb8b3b3);_0x5829cd&&_0x5829cd['update']({'content':_0x15463b,'attributes':_0x152f37,'isFromAdapter':!0x0});}}),this['listenTo'](_0x4148cf,'commentRemoved',(_0x17af77,{commentThreadId:_0x1cf090,commentId:_0x3e9f8e})=>{const _0x19d5a2=_0xd5f8f4['getCommentThread'](_0x1cf090);if(_0x19d5a2){const _0xf2f4ae=_0x19d5a2['getComment'](_0x3e9f8e);_0xf2f4ae&&_0xf2f4ae['remove']({'isFromAdapter':!0x0});}}),await this['_connectService'](_0x150e5);}['destroy'](){if(this['context']instanceof _0x519f07){const _0x4370a0=this['context']['config']['get']('collaboration.channelId');this['_terminateService'](_0x4370a0);}}['_terminateService'](_0x3b1464){if(!this['_services']['has'](_0x3b1464))throw new _0x4a76a1('cloudservicescommentsadapter-disconnect-not-exist',null,{'channelId':_0x3b1464});this['_getService'](_0x3b1464)['disconnect'](),this['_services']['delete'](_0x3b1464);}async['reconnect'](){for(const _0x32364c of this['_services']['keys']())await this['_connectService'](_0x32364c);if(this['context']instanceof _0x519f07){const _0x4c1b67=this['context']['config']['get']('collaboration.channelId'),_0xecb594=this['context']['plugins']['get'](i);_0xecb594['unregister'](_0x4c1b67);const _0x4084d2=await this['_services']['get'](_0x4c1b67)['getConnectedSessions']();_0xecb594['register'](_0x4c1b67,_0x4084d2);}}async['_connectService'](_0x5811a8){const {connection:_0x1e2187}=this['context']['plugins']['get'](c),_0x505b24=this['context']['plugins']['get']('CommentsRepository'),_0x56ff89=this['_services']['get'](_0x5811a8),_0x2badee=await _0x56ff89['connect'](_0x1e2187);await this['_fetchMissingUsersForThreads'](_0x2badee);const _0x181f03=new Set(Array['from'](_0x505b24['getCommentThreads']({'channelId':_0x5811a8}),_0x1bda0b=>_0x1bda0b['id']));for(const _0x263a52 of _0x2badee)_0x263a52['deletedAt']||_0x181f03['delete'](_0x263a52['commentThreadId']);for(const _0x3e71b4 of _0x181f03)_0x505b24['getCommentThread'](_0x3e71b4)['remove']({'isFromAdapter':!0x0});for(const _0xea1f5d of _0x2badee){let _0x565e60=_0x505b24['getCommentThread'](_0xea1f5d['commentThreadId']);const {commentThreadId:_0x3158a9,context:_0x172eb3,attributes:_0x3fc607,resolvedBy:_0x139716,resolvedAt:_0x39cbe3,unlinkedAt:_0xebfb2,deletedAt:_0x462e5d}=_0xea1f5d;if(_0x462e5d)continue;_0x565e60||(_0x565e60=_0x505b24['addCommentThread']({'channelId':_0x5811a8,'threadId':_0x3158a9,'context':_0x172eb3,'attributes':_0x3fc607||{},'resolvedBy':_0x139716,'resolvedAt':_0x39cbe3,'unlinkedAt':_0xebfb2,'isFromAdapter':!0x0}));const _0x57d88a=new Set(Array['from'](_0x565e60['comments'],_0x1ae139=>_0x1ae139['id']));for(const _0x43cd30 of _0xea1f5d['comments'])_0x57d88a['delete'](_0x43cd30['commentId']);for(const _0x3c6987 of _0x57d88a)_0x565e60['getComment'](_0x3c6987)['remove']({'isFromAdapter':!0x0});for(const _0xa27dc8 of _0xea1f5d['comments']){const _0x2f4a32=_0x565e60['getComment'](_0xa27dc8['commentId']);_0x2f4a32?_0x2f4a32['content']!==_0xa27dc8['content']&&_0x2f4a32['update']({'content':_0xa27dc8['content'],'isFromAdapter':!0x0}):_0x565e60['addComment'](Object['assign'](S(_0xa27dc8),{'isFromAdapter':!0x0}));}}}['_getService'](_0xc9050a){if(!this['_services']['has'](_0xc9050a))throw new _0x4a76a1('cloudservicescommentsadapter-service-not-exist',null,{'channelId':_0xc9050a});return this['_services']['get'](_0xc9050a);}async['_fetchMissingUsersForThreads'](_0x5ec93d){const _0xb7c9b=this['context']['plugins']['get'](_0x11f245),{connection:_0x30289}=this['context']['plugins']['get'](c),_0x4539fb=new Set();for(const {resolvedBy:_0xfaaa44,comments:_0x37c24f}of _0x5ec93d){_0xfaaa44&&!_0xb7c9b['getUser'](_0xfaaa44)&&_0x4539fb['add'](_0xfaaa44);for(const {userId:_0x228d59}of _0x37c24f)_0xb7c9b['getUser'](_0x228d59)||_0x4539fb['add'](_0x228d59);}if(0x0===_0x4539fb['size'])return;const _0x490d76=await dt['getMany'](_0x30289,Array['from'](_0x4539fb));for(const _0xa967fc of _0x490d76)_0xb7c9b['getUser'](_0xa967fc['id'])||_0xb7c9b['addUser'](_0xa967fc);}}async function B(_0x46e247){if('404'!==_0x46e247['code'])throw _0x46e247;}function ut(_0x442237){if((_0x280f7b=_0x442237)['message']['startsWith']('cloud-services-internal-error:\x20Comments\x20Service\x20is\x20not\x20connected.')||_0x280f7b['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x280f7b['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.'))return new Promise(()=>{});var _0x280f7b;throw _0x442237;}function S(_0x1293ec){return{'threadId':_0x1293ec['commentThreadId'],'commentId':_0x1293ec['commentId'],'content':_0x1293ec['content'],'createdAt':_0x1293ec['createdAt'],'authorId':_0x1293ec['userId'],'attributes':_0x1293ec['attributes']||{}};}class f extends _0x14de47{static ['TrackChangesService']=/* #__PURE__ -- @preserve */
27
+ ((()=>et)());['_bufferedRequests'];['_trackChangesService'];static get['requires'](){return[a,'TrackChangesEditing',c];}constructor(_0x2296b8){super(_0x2296b8);const _0xf8bacd=this['editor']['config']['get']('collaboration.channelId');this['_bufferedRequests']=new Map(),this['_trackChangesService']=new f['TrackChangesService'](_0xf8bacd);}['init'](){const _0x56038b=this['editor']['plugins']['get'](c),_0x1eeea1=this['editor']['plugins']['get']('TrackChangesEditing');return _0x1eeea1['adapter']={'getSuggestion':async _0x2e8343=>{await this['_waitForServiceReady']();const _0x3d1627=await this['_trackChangesService']['get'](_0x2e8343)['catch'](R);return await this['_fetchMissingUsersForThreads']([_0x3d1627]),_0x3d1627;},'addSuggestion':async({id:_0x18654a,type:_0x33fcce,data:_0x5a3f54,originalSuggestionId:_0x460d1b,attributes:_0xc90cbc})=>{await this['_waitForServiceReady']();const _0x30ae4c={'id':_0x18654a,'type':_0x33fcce,'data':_0x5a3f54,'originalSuggestionId':_0x460d1b,'attributes':_0xc90cbc},_0x3c67f9=await this['_trackChangesService']['add'](_0x18654a,_0x33fcce,_0x5a3f54,_0x460d1b,_0xc90cbc)['catch'](_0x2b3ac6=>{if(ft(_0x2b3ac6))return new Promise(_0x28e409=>{this['_bufferedRequests']['set'](_0x18654a,{'resolve':_0x28e409,'suggestionData':_0x30ae4c});});throw _0x2b3ac6;});return this['_bufferedRequests']['delete'](_0x18654a),_0x3c67f9;},'updateSuggestion':async(_0x24ac37,_0x18bfc9)=>{if(await this['_waitForServiceReady'](),'open'!==_0x18bfc9['state'])return this['_trackChangesService']['update'](_0x24ac37,_0x18bfc9)['catch'](R);}},this['listenTo'](this['_trackChangesService'],'suggestionUpdated',(_0x44187d,_0x34d7ba)=>{_0x1eeea1['hasSuggestion'](_0x34d7ba['id'])&&(_0x1eeea1['getSuggestion'](_0x34d7ba['id'])['attributes']=_0x34d7ba['attributes']);}),this['_trackChangesService']['connect'](_0x56038b['connection'])['then'](_0x4a3938=>(_0x56038b['addToReconnectionStack'](this),this['_fetchMissingUsersForThreads'](_0x4a3938)['then'](()=>{for(const _0x9cae6a of _0x4a3938){_0x1eeea1['addSuggestionData'](_0x9cae6a)['_saved']=!0x0;}})));}async['reconnect'](){const _0x30d727=this['editor']['plugins']['get']('TrackChangesEditing'),{connection:_0x1f1e06}=this['editor']['plugins']['get'](c),_0x54d524=await this['_trackChangesService']['connect'](_0x1f1e06);await this['_fetchMissingUsersForThreads'](_0x54d524);for(const {suggestionData:_0x3c00c6,resolve:_0x21bd62}of this['_bufferedRequests']['values']()){let _0x80c9c3=_0x54d524['find'](_0x411250=>_0x411250['id']===_0x3c00c6['id']);_0x80c9c3||(_0x80c9c3=await this['_trackChangesService']['add'](_0x3c00c6['id'],_0x3c00c6['type'],_0x3c00c6['data'],_0x3c00c6['originalSuggestionId'])),_0x21bd62(_0x80c9c3);}for(const _0x12422d of _0x54d524)_0x30d727['hasSuggestion'](_0x12422d['id'])||_0x30d727['addSuggestionData'](_0x12422d);}async['_waitForServiceReady'](){this['_trackChangesService']['isConnected']||await new Promise(_0x3c6b36=>{this['listenTo'](this['_trackChangesService'],'connected',_0x419de6=>{_0x419de6['off'](),_0x3c6b36();});});}async['_fetchMissingUsersForThreads'](_0x42f308){const _0x18624f=this['editor']['plugins']['get'](_0x11f245),{connection:_0x2a8e28}=this['editor']['plugins']['get'](c),_0x22ecaf=new Set();for(const {authorId:_0x3bf3d5}of _0x42f308)_0x18624f['getUser'](_0x3bf3d5)||_0x22ecaf['add'](_0x3bf3d5);if(0x0===_0x22ecaf['size'])return;const _0x567966=await dt['getMany'](_0x2a8e28,Array['from'](_0x22ecaf));for(const _0x2edfa9 of _0x567966)_0x18624f['getUser'](_0x2edfa9['id'])||_0x18624f['addUser'](_0x2edfa9);}}function R(_0x2bc715){if(ft(_0x2bc715))return new Promise(()=>{});throw _0x2bc715;}function ft(_0x3617c0){return _0x3617c0['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x3617c0['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}class m extends _0x14de47{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 _0x260cb6=this['editor']['plugins']['get'](c),_0x5187cd=this['editor']['plugins']['get']('CommentsEditing'),_0x4d5c9d=this['editor']['plugins']['get'](a);return this['editor']['data']['once']('ready',()=>{this['listenTo'](_0x260cb6,'change:state',(_0x19a14d,_0x5af0d9,_0x4c6d6d)=>{_0x5187cd['isThreadsLoadingPaused']='connected'!==_0x4c6d6d;});}),this['listenTo'](_0x260cb6,'change:state',(_0x5ab5b7,_0x595a69,_0x23cc5f)=>{this['editor']['plugins']['get']('CommentsRepository')['switchReadOnly']('connected'!==_0x23cc5f);}),_0x4d5c9d['_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 _0x14de47{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 _0x14de47{static ['RevisionHistoryService']=/* #__PURE__ -- @preserve */
28
+ ((()=>it)());['_lastRequestId'];['_revisionTracker'];['_revisionHistoryService'];['_oldOffset'];static get['requires'](){return[c,l,'RevisionTracker',i,_0x11f245];}constructor(_0x133907){super(_0x133907);const _0x283e06=this['editor']['config']['get']('collaboration.channelId');this['_lastRequestId']=null,this['_revisionTracker']=this['editor']['plugins']['get']('RevisionTracker'),this['_revisionHistoryService']=new u['RevisionHistoryService'](_0x283e06);}async['init'](){const _0x3ba511=this['editor']['plugins']['get'](l),_0x16d48a=_0x3ba511['serverHistory'],_0xc3c148=this['editor']['plugins']['get'](c);this['_revisionTracker']['setSource']({'history':_0x16d48a,'getLatestVersion':()=>this['_getLatestVersion'](),'getCurrentRevisionId':()=>_0x3ba511['sessionId']});const _0x221854=this['editor']['config']['get']('cloudServices.bundleVersion')||nt,_0x42c10a=await tt['isBundleUploaded'](_0xc3c148['connection'],_0x221854);this['_revisionTracker']['adapter']={'getRevision':async({revisionId:_0x41ab65})=>(await this['_waitForServiceReady'](),await this['_revisionHistoryService']['getRevision'](_0x41ab65)),'updateRevisions':async _0x2ddc5c=>{await this['_waitForServiceReady']();const _0x33215f=this['_revisionTracker']['currentRevision'];if(_0x42c10a&&0x1===_0x2ddc5c['length']&&_0x2ddc5c[0x0]['id']===_0x33215f['id'])return _0x2ddc5c;for(const _0x133c71 of _0x2ddc5c)_0x133c71['id']===_0x33215f['id']&&(_0x133c71['isEmptyCurrent']=_0x133c71['fromVersion']===_0x133c71['toVersion']);return this['_revisionHistoryService']['updateRevisions'](_0x2ddc5c,this['_lastRequestId'])['then'](_0x1b094c=>(this['_lastRequestId']=_0x1b094c,_0x2ddc5c))['catch'](_0x25ef1b=>{if(st(_0x25ef1b)||'400'===_0x25ef1b['code']&&void 0x0!==_0x25ef1b['data']['wrongRequestId']){for(const _0x6827c9 of _0x2ddc5c){!this['_revisionTracker']['repository']['getRevision'](_0x6827c9['id'])||this['_revisionTracker']['_bufferUpdate'](_0x6827c9['id'],_0x6827c9,!0x1);}if(st(_0x25ef1b))throw _0x25ef1b;return _0x2ddc5c;}throw _0x25ef1b;});}},this['listenTo'](this['_revisionHistoryService'],'revisionsUpdated',(_0x3e2650,{revisionsData:_0x52fcc4,requestId:_0x30ba17})=>{Math['max'](..._0x52fcc4['map'](_0x268b1a=>_0x268b1a['toVersion']))>this['_getLatestVersionFromServerOperations']()-0x1?this['_getLatestVersion']()['then'](()=>{this['_handleRevisionsUpdate'](_0x52fcc4,_0x30ba17);}):this['_handleRevisionsUpdate'](_0x52fcc4,_0x30ba17);});const {revisions:_0x111bcc,requestId:_0x4644d3}=await this['_revisionHistoryService']['connect'](_0xc3c148['connection']);_0xc3c148['addToReconnectionStack'](this),this['_lastRequestId']=_0x4644d3,await this['_fetchMissingUsers'](_0x111bcc);for(const _0x39967c of _0x111bcc)this['_revisionTracker']['addRevisionData'](_0x39967c);this['listenTo'](_0x3ba511,'change:_isConnected',(_0x426cba,_0x36b5e3,_0x278ee6)=>{_0x278ee6&&(this['_oldOffset']=_0x3ba511['_offset'],_0x426cba['off']());}),this['_revisionTracker']['bind']('isEnabled')['to'](_0xc3c148,'state',_0x3d42fa=>_0x3d42fa===_0x294a6e['CONNECTED']);}async['reconnect'](){const _0x575cdf=this['editor']['plugins']['get'](c),_0x465b88=this['editor']['plugins']['get'](l),_0x6a0537=async()=>{const _0x21ce6d=this['_revisionTracker']['currentRevision'],_0x427293=_0x21ce6d['id'],_0x35a76a=_0x427293!==_0x465b88['sessionId'];if(_0x35a76a){const _0x50d5b3=_0x465b88['_offset']-this['_oldOffset'],_0x53cffc=this['_getLatestVersionFromServerOperations']();this['_revisionTracker']['_revisionDataBuilder']['reInit']();if(_0x21ce6d['toVersion']+_0x50d5b3!==_0x53cffc){const _0x167f9f=_0x21ce6d['fromVersion']+_0x50d5b3,_0x52908b=this['editor']['plugins']['get'](_0x11f245),_0x2374d3=this['_revisionTracker']['buildRevisionData']({'revision':_0x21ce6d,'from':_0x167f9f,'to':_0x53cffc});_0x2374d3['id']=_0x21ce6d['id'];const _0x299fcb=_0x2374d3['authorsIds']['map'](_0x30ba1f=>_0x52908b['getUser'](_0x30ba1f));_0x21ce6d['_update']({..._0x2374d3,'authors':_0x299fcb},!0x0),this['_revisionTracker']['_bufferUpdate'](_0x21ce6d['id'],_0x2374d3,!0x0);}this['_revisionTracker']['_startingVersion']=_0x53cffc,(_0x21ce6d['toVersion']===_0x21ce6d['fromVersion']&&!this['_revisionTracker']['_bufferedUpdates']['has'](_0x427293)&&this['_revisionTracker']['repository']['_revisions']['remove'](_0x427293),this['_revisionTracker']['_createCurrentRevision'](_0x53cffc));}const {revisions:_0x4f957f,requestId:_0x57c215}=await this['_revisionHistoryService']['reconnect'](_0x575cdf['connection'],this['_lastRequestId']);_0x35a76a&&_0x4f957f['length']>0x0?_0x465b88['_handleReconnectionError']():(await this['_fetchMissingUsers'](_0x4f957f),this['_handleRevisionsUpdate'](_0x4f957f,_0x57c215),this['_revisionTracker']['sendBufferedUpdates']());};return _0x465b88['_isConnected']?_0x6a0537():new Promise((_0x1a86e9,_0x2fd87e)=>{_0x465b88['once']('change:_isConnected',()=>{_0x6a0537()['then'](_0x1a86e9)['catch'](_0x2fd87e);});});}['destroy'](){super['destroy']();}async['_waitForServiceReady'](){this['_revisionHistoryService']['isConnected']||await new Promise(_0x3f936d=>{this['listenTo'](this['_revisionHistoryService'],'connected',_0x496fac=>{_0x496fac['off'](),_0x3f936d();});});}['_getLatestVersionFromServerOperations'](){const _0xc2a6ea=this['editor']['plugins']['get'](l)['serverHistory']['getOperations']()['reverse']();for(const _0x9fcdc5 of _0xc2a6ea)if('marker'!==_0x9fcdc5['type']||_0x9fcdc5['affectsData'])return _0x9fcdc5['baseVersion']+0x1;}['_getLatestVersion'](){const _0x55eea7=this['editor']['plugins']['get'](l);return new Promise(_0x58e560=>{_0x55eea7['_isPendingUpdate']?_0x55eea7['once']('change:_isPendingUpdate',()=>{_0x58e560(this['_getLatestVersionFromServerOperations']());}):_0x58e560(this['_getLatestVersionFromServerOperations']());});}['_handleRevisionsUpdate'](_0x49e426,_0x5c015a){const _0x264117=this['_revisionTracker']['repository'];this['_lastRequestId']=_0x5c015a;for(const _0x2f9611 of _0x49e426){const _0x3e8ee5=_0x264117['getRevision'](_0x2f9611['id']);if(_0x3e8ee5){if((_0x2f9611['fromVersion']||_0x2f9611['toVersion'])&&(_0x2f9611['diffData']=null),_0x3e8ee5===this['_revisionTracker']['currentRevision']){const _0x200adf=Math['max'](_0x3e8ee5['toVersion'],_0x2f9611['toVersion']),_0x51bce7=Math['max'](_0x3e8ee5['fromVersion'],_0x2f9611['fromVersion']);let _0x2d440a;_0x3e8ee5['toVersion']===_0x2f9611['toVersion']&&_0x3e8ee5['fromVersion']===_0x2f9611['fromVersion']?(_0x2d440a=!0x0,this['_preventResendingRevisionData'](_0x2f9611)):_0x2f9611['toVersion']===_0x200adf&&_0x2f9611['fromVersion']===_0x51bce7?_0x2d440a=!0x1:(_0x3e8ee5['toVersion']===_0x200adf&&_0x3e8ee5['fromVersion']===_0x51bce7||this['_fixRevision']({'revision':_0x3e8ee5,'from':_0x51bce7,'to':_0x200adf}),_0x2d440a=!0x0),_0x2d440a&&(delete _0x2f9611['fromVersion'],delete _0x2f9611['toVersion'],delete _0x2f9611['diffData'],delete _0x2f9611['createdAt'],delete _0x2f9611['authorsIds']);}this['_revisionTracker']['setRevisionData'](_0x2f9611),this['_preventResendingRevisionData'](_0x2f9611);}else this['_revisionTracker']['addRevisionData'](_0x2f9611);}const _0x18a3ef=_0x264117['getRevisions']();_0x18a3ef['reverse']();for(let _0x36978e=0x0;_0x36978e<_0x18a3ef['length']-0x1;_0x36978e++){const _0x210703=_0x18a3ef[_0x36978e],_0x49054e=_0x18a3ef[_0x36978e+0x1];if(_0x210703['fromVersion']<_0x49054e['toVersion']){const _0x267814=_0x49054e['toVersion'],_0x2c71be=Math['max'](_0x267814,_0x210703['toVersion']);this['_fixRevision']({'revision':_0x210703,'from':_0x267814,'to':_0x2c71be});}}}['_fixRevision']({revision:_0x221d25,from:_0x1fa786,to:_0x47e6f1}={}){const _0x1ec727=this['editor']['plugins']['get'](_0x11f245),_0x2eac76=this['_revisionTracker']['buildRevisionData']({'revision':_0x221d25,'from':_0x1fa786,'to':_0x47e6f1});_0x2eac76['authors']=_0x2eac76['authorsIds']['map'](_0x52b29e=>_0x1ec727['getUser'](_0x52b29e)),_0x221d25['_update'](_0x2eac76);}['_preventResendingRevisionData'](_0x504353){const _0x41f766={};_0x41f766['id']=_0x504353['id'];for(const _0x531873 of Object['keys'](_0x504353))'id'!==_0x531873&&(_0x41f766[_0x531873]=void 0x0);this['_revisionTracker']['_bufferUpdate'](_0x41f766['id'],_0x41f766,!0x0);}async['_fetchMissingUsers'](_0xb8750d){const _0x4175d5=this['editor']['plugins']['get'](_0x11f245),{connection:_0x16d4df}=this['editor']['plugins']['get'](c),_0x8a1c66=new Set();for(const _0x19ec17 of _0xb8750d){for(const _0x4f1b75 of _0x19ec17['authorsIds'])_0x3d3e52(_0x4f1b75);_0x19ec17['creatorId']&&_0x3d3e52(_0x19ec17['creatorId']);}if(0x0===_0x8a1c66['size'])return;const _0x54122d=await dt['getMany'](_0x16d4df,Array['from'](_0x8a1c66));for(const _0x2b0023 of _0x54122d)_0x4175d5['getUser'](_0x2b0023['id'])||_0x4175d5['addUser'](_0x2b0023);function _0x3d3e52(_0xa7083){_0x4175d5['getUser'](_0xa7083)||_0x8a1c66['add'](_0xa7083);}}}function st(_0x5a2b4e){return _0x5a2b4e['message']['startsWith']('cloud-services-internal-error:\x20Revision\x20History\x20Service\x20is\x20not\x20connected.')||_0x5a2b4e['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x5a2b4e['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}class g extends _0x14de47{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 _0x339a2e{constructor(_0x2cc5ed){super(_0x2cc5ed);const _0x1b9961=this['bindTemplate'];this['set']('usersCount',0x0),this['set']('isHidden',!0x0),this['setTemplate']({'tag':'div','attributes':{'class':['ck','ck-presence-list__counter',_0x1b9961['if']('isHidden','ck-presence-list__counter--hidden')]},'children':[{'text':_0x1b9961['to']('usersCount',_0x3e165c=>q(_0x2cc5ed,'CONNECTED_USERS',_0x3e165c))}]});}}class es extends _0x339a2e{['items'];['keystrokes'];constructor(_0x24b9d0){super(_0x24b9d0);const _0xe8b9d8=this['bindTemplate'];this['items']=this['createCollection'](),this['keystrokes']=new _0x348a7e(),this['set']({'hasPopup':!0x1,'isExpanded':!0x1}),this['setTemplate']({'tag':'div','attributes':{'aria-haspopup':_0xe8b9d8['if']('hasPopup'),'aria-expanded':_0xe8b9d8['to']('isExpanded',_0xe44123=>this['hasPopup']&&String(_0xe44123)),'aria-label':_0xe8b9d8['to']('hasPopup',_0x1c77da=>q(_0x24b9d0,_0x1c77da?'Collapsed\x20connected\x20users\x20list\x20(press\x20ENTER\x20to\x20open\x20it)':'Connected\x20users\x20list')),'role':'list','tabindex':_0xe8b9d8['to']('hasPopup',_0x30637d=>!!_0x30637d&&0x0),'class':['ck','ck-presence-list__list']},'children':this['items'],'on':{'click':_0xe8b9d8['to'](()=>this['fire']('execute'))}}),this['on']('change:hasPopup',(_0x2a437e,_0x14965d,_0x30b934)=>{this['element']&&(_0x30b934?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 _0x339a2e{['counterView'];['inlineListView'];constructor(_0x5e51ef){super(_0x5e51ef);const _0x33363d=this['bindTemplate'];this['set']('isCollapsed',!0x0),this['counterView']=new ts(this['locale']),this['inlineListView']=new es(_0x5e51ef),this['inlineListView']['bind']('hasPopup')['to'](this,'isCollapsed'),this['listenTo'](this['inlineListView']['items'],'change',()=>{for(const _0x5b513a of this['inlineListView']['items'])_0x5b513a['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',_0x33363d['if']('isCollapsed','ck-presence-list--collapsed')]},'children':[this['counterView'],this['inlineListView']]});}}class j extends _0x339a2e{['listWrapperView'];constructor(_0x50b340,_0x258e17){super(_0x50b340),this['listWrapperView']=new mt(_0x50b340,_0x258e17),this['setTemplate']({'tag':'div','attributes':{'tabindex':-0x1,'role':'application','class':['ck','ck-presence-list__dropdown-list'],'aria-label':q(_0x50b340,'Connected\x20users\x20list\x20dropdown\x20menu')},'children':[this['listWrapperView']]});}}class mt extends _0x844517{constructor(_0x736e10,_0x8f628b){super(_0x736e10);const _0x390e12=this['bindTemplate'];this['set']('_isScrollable',!0x1),this['setTemplate']({'tag':_0x8f628b?'div':'ul','attributes':{'class':['ck','ck-reset','ck-list','ck-presence-list__dropdown-list-wrapper',_0x390e12['if']('_isScrollable','ck-presence-list__dropdown-list-wrapper_scrollable')],'role':_0x390e12['to']('role'),'aria-label':_0x390e12['to']('ariaLabel'),'aria-labelledby':_0x390e12['to']('ariaLabelledBy')},'children':this['items']}),this['listenTo'](_0x464eca['window'],'resize',()=>this['checkIfScrollable']()),this['items']['on']('change',()=>this['checkIfScrollable']());}['render'](){super['render'](),this['checkIfScrollable']();}['checkIfScrollable'](){const _0x5e41b9=this['element'];_0x5e41b9&&(this['_isScrollable']=Math['max'](_0x5e41b9['scrollHeight'],_0x5e41b9['clientHeight'])>0.8*window['innerHeight']);}}class k extends rt{['userView'];constructor(_0x3d2d34,_0x221a3d,_0x4a7911){super(_0x3d2d34);const _0x53dfec=this['bindTemplate'];this['userView']=new ct(_0x3d2d34,_0x221a3d);const _0x23d2db={'tag':'li','attributes':{'class':['ck','ck-presence-list__dropdown-list-item'],'tabindex':-0x1,'role':'presentation','aria-label':_0x221a3d['name']},'children':[this['userView'],{'tag':'span','attributes':{'class':['ck','ck-user__full-name']},'children':[{'text':_0x221a3d['name']}]},{'tag':'span','attributes':{'class':['ck','ck-presence-list__marker',_0x221a3d['color']['getBackgroundColorClass']()],'aria-hidden':'true'}}]};_0x4a7911&&(_0x23d2db['tag']='button',_0x23d2db['on']={'click':_0x53dfec['to'](()=>this['fire']('execute'))}),this['setTemplate'](_0x23d2db);}['focus'](){this['element']['focus']();}}class y extends _0x339a2e{['userView'];['markerView'];constructor(_0x1c547b,_0x2a0c8a,_0xa35692){super(_0x1c547b);const _0x2f6b12=this['bindTemplate'];this['set']('isFocusable',!0x1),this['set']('hasTooltip',!0x0),this['set']('tooltipPosition',''),this['userView']=new ct(_0x1c547b,_0x2a0c8a),this['markerView']=new at(_0x1c547b,_0x2a0c8a);const _0x282fba=new ot(_0x1c547b);_0x282fba['template']['tag']='span',_0x282fba['text']=_0x2a0c8a['name'];const _0x13f43a={'tag':'div','attributes':{'class':['ck','ck-presence-list__list-item'],'role':'listitem','tabindex':_0x2f6b12['to']('isFocusable',_0x1e0198=>!!_0x1e0198&&0x0),'aria-labelledby':_0x282fba['id'],'data-cke-tooltip-text':this['userView']['name'],'data-cke-tooltip-position':_0x2f6b12['to']('tooltipPosition'),'data-cke-tooltip-disabled':_0x2f6b12['to']('hasTooltip',_0x3d3fa7=>!_0x3d3fa7),'data-cke-tooltip-class':'ck-presence-list__list-item__tooltip'},'children':[this['userView'],this['markerView'],_0x282fba]};_0xa35692&&(_0x13f43a['tag']='button',_0x13f43a['on']={'click':_0x2f6b12['to'](()=>this['fire']('execute'))}),this['setTemplate'](_0x13f43a);}}class at extends _0x339a2e{constructor(_0x40749d,_0x3a1e29){super(_0x40749d),this['setTemplate']({'tag':'span','attributes':{'class':['ck','ck-presence-list__marker',_0x3a1e29['color']['getBackgroundColorClass']()],'aria-hidden':'true'}});}}const A={'collapseAt':0x6,'displayMe':!0x0};class r extends _0x5b7fc6{['currentDisplayedUsers'];['balloonPanelView'];['view'];['presenceDropdownView'];['_bodyCollection']=null;constructor(_0x2db825){super(_0x2db825),this['context']['config']['define']('presenceList',A);const _0x59ce41=_0x2db825['config']['get']('presenceList.collapseAt');if('number'!=typeof _0x59ce41)throw new _0x4a76a1('presencelist-collapseat-invalid-format',this);if(_0x59ce41<0x1)throw new _0x4a76a1('presencelist-collapseat-invalid-format',this);this['_allConnectedUsers']=this['context']['plugins']['get'](i)['allConnectedUsers'],this['set']('usersCount',0x0),this['currentDisplayedUsers']=new _0x522579(),this['balloonPanelView']=new _0x587910(),this['balloonPanelView']['class']='ck\x20ck-presence-list__balloon',this['view']=this['_createView'](),this['presenceDropdownView']=void 0x0;}static get['requires'](){return[i];}['init'](){for(const _0x258838 of this['_allConnectedUsers'])this['_handleUserAdd'](_0x258838);this['listenTo'](this['_allConnectedUsers'],'add',(_0x525d61,_0x24032f)=>{this['_handleUserAdd'](_0x24032f);}),this['listenTo'](this['_allConnectedUsers'],'remove',(_0x43f1fd,_0x4d59c7)=>{this['_handleUserRemove'](_0x4d59c7);});}['_createView'](){const _0x533bf6=this['context'],_0x2438f2=new L(this['context']['locale']),_0x409856=this['balloonPanelView'];if(!_0x12ec12(_0x533bf6['config']['get']('presenceList.container')))throw new _0x4a76a1('presencelist-missing-container',this);return _0x2438f2['counterView']['bind']('usersCount')['to'](this),_0x2438f2['bind']('isCollapsed')['to'](this,'usersCount',_0x4e3fdc=>{const {collapseAt:_0x44c136,displayMe:_0x358998}=_0x533bf6['config']['get']('presenceList'),_0x2e0f5a=_0x4e3fdc>=_0x44c136;return _0x2438f2['counterView']['isHidden']=!(0x1==_0x4e3fdc&&_0x358998||_0x2e0f5a),_0x2e0f5a||this['hideDropdown'](),_0x2e0f5a;}),_0x2438f2['inlineListView']['items']['bindTo'](this['currentDisplayedUsers'])['using'](_0x2a6a6d=>{const _0x478558=_0x533bf6['config']['get']('presenceList'),_0x30379d=new y(_0x533bf6['locale'],_0x2a6a6d,!!_0x478558['onClick']);return _0x30379d['bind']('hasTooltip')['to'](_0x2438f2,'isCollapsed',_0x2db536=>!_0x2db536),_0x30379d['bind']('isFocusable')['to'](_0x2438f2,'isCollapsed',_0x456be8=>!_0x456be8),_0x478558['onClick']&&this['listenTo'](_0x30379d,'execute',()=>{this['view']['isCollapsed']||_0x478558['onClick'](_0x2a6a6d,_0x30379d['element']);}),_0x30379d;}),this['listenTo'](_0x2438f2['inlineListView'],'execute',()=>{this['presenceDropdownView']?this['hideDropdown']():this['view']['isCollapsed']&&this['showDropdown']();}),_0x2438f2['inlineListView']['keystrokes']['set']('Enter',(_0x3c2535,_0x206ed6)=>{this['view']['isCollapsed']&&(this['showDropdown'](),_0x206ed6());}),_0x2438f2['render'](),_0x409856['render'](),_0x38d9a6({'emitter':_0x2438f2,'activator':()=>_0x409856['isVisible'],'contextElements':[_0x409856['element'],_0x2438f2['inlineListView']['element']],'callback':()=>this['hideDropdown']()}),_0x533bf6['config']['get']('presenceList.container')['appendChild'](_0x2438f2['element']),this['_bodyCollection']=new _0x173f50(this['context']['locale']),this['_bodyCollection']['attachToDom'](),this['_bodyCollection']['add'](this['balloonPanelView']),_0x2438f2;}['_handleUserAdd'](_0x38acc4){if(!this['context']['config']['get']('presenceList.displayMe')&&_0x38acc4['isMe'])return;const _0x3e0356=this['context']['config']['get']('presenceList.collapseAt')-0x1;this['usersCount']++,this['currentDisplayedUsers']['length']==_0x3e0356&&this['currentDisplayedUsers']['length']>0x1&&this['currentDisplayedUsers']['remove'](0x1);const _0x2d97cc=_0x38acc4['isMe']?0x0:this['currentDisplayedUsers']['length'];this['currentDisplayedUsers']['add'](_0x38acc4,_0x2d97cc);}['_handleUserRemove'](_0xde341b){if(this['usersCount']--,this['currentDisplayedUsers']['get'](_0xde341b['id'])&&(this['currentDisplayedUsers']['remove'](_0xde341b['id']),this['currentDisplayedUsers']['length']<this['usersCount'])){for(const _0x1dcb7f of Array['from'](this['_allConnectedUsers'])['reverse']())if(!this['currentDisplayedUsers']['get'](_0x1dcb7f['id']))return void this['currentDisplayedUsers']['add'](_0x1dcb7f,Math['min'](this['currentDisplayedUsers']['length'],0x1));}}['showDropdown'](){if(this['presenceDropdownView'])return;const _0x59f82f=this['context']['config']['get']('presenceList');this['presenceDropdownView']=new j(this['context']['locale'],!!_0x59f82f['onClick']),this['view']['inlineListView']['isExpanded']=!0x0;const {listWrapperView:_0x5959f2}=this['presenceDropdownView'];_0x5959f2['items']['bindTo'](this['_allConnectedUsers'])['using'](_0x523196=>{if(!_0x59f82f['displayMe']&&_0x523196['isMe'])return null;const _0x37f6c6=new k(this['context']['locale'],_0x523196,!!_0x59f82f['onClick']);return _0x59f82f['onClick']&&this['listenTo'](_0x37f6c6,'execute',()=>{_0x59f82f['onClick'](_0x523196,_0x37f6c6['element']);}),_0x37f6c6;}),this['balloonPanelView']['content']['add'](this['presenceDropdownView']),this['balloonPanelView']['pin']({'target':this['view']['inlineListView']['element']}),_0x5959f2['focus'](),_0x5959f2['checkIfScrollable']();const _0x7c221d=(_0x455916,_0x52be95)=>{this['hideDropdown'](),this['view']['inlineListView']['focus'](),_0x52be95();};_0x5959f2['keystrokes']['set']('Esc',_0x7c221d),_0x5959f2['keystrokes']['set']('Shift+Tab',_0x7c221d),_0x5959f2['keystrokes']['set']('Tab',(_0x531e1e,_0x5a62b3)=>{!function(_0x595c9a){const _0xe6373d=['a','button','input','select','textarea','[tabindex]','[contenteditable]']['map'](_0x246659=>_0x246659+':not([disabled]):not([tabindex=\x22-1\x22])')['join'](','),_0x1b4e2f=[...document['body']['querySelectorAll'](_0xe6373d)]['filter'](_0x7ab03a=>_0x7ab03a===document['activeElement']||_0x7ab03a['offsetWidth']+_0x7ab03a['offsetHeight']>0x0)['sort']((_0x3bbe17,_0x16ab21)=>(_0x3bbe17['tabIndex']||0x0)-(_0x16ab21['tabIndex']||0x0)),_0x3b84cd=_0x1b4e2f['indexOf'](_0x595c9a),_0x13213f=_0x1b4e2f[(_0x3b84cd+0x1)%_0x1b4e2f['length']];_0x13213f&&_0x13213f['focus']();}(this['view']['element']),this['hideDropdown'](),_0x5a62b3();}),_0x5959f2['focusTracker']['add'](this['view']['element']),_0x5959f2['focusTracker']['on']('change:isFocused',(_0x355a45,_0xc5dc65,_0x4e6385)=>{_0x4e6385||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 _0x5b7fc6{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':_0x3a7a18=>0x1!=_0x3a7a18}};
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':_0x443487=>0x1!=_0x443487}};
@@ -20,4 +20,4 @@
20
20
  *
21
21
  *
22
22
  */
23
- (_0x3914c2=>{const {af:{dictionary:_0x1db8aa,getPluralForm:_0x2f2274}}={'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':_0x373ead=>0x1!=_0x373ead}};_0x3914c2['af']||={'dictionary':{},'getPluralForm':null},_0x3914c2['af']['dictionary']=Object['assign'](_0x3914c2['af']['dictionary'],_0x1db8aa),_0x3914c2['af']['getPluralForm']=_0x2f2274;})(window['CKEDITOR_TRANSLATIONS']||={});
23
+ (_0x4c5403=>{const {af:{dictionary:_0x2a31d8,getPluralForm:_0x59b057}}={'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':_0x59bd59=>0x1!=_0x59bd59}};_0x4c5403['af']||={'dictionary':{},'getPluralForm':null},_0x4c5403['af']['dictionary']=Object['assign'](_0x4c5403['af']['dictionary'],_0x2a31d8),_0x4c5403['af']['getPluralForm']=_0x59b057;})(window['CKEDITOR_TRANSLATIONS']||={});