@ckeditor/ckeditor5-real-time-collaboration 44.2.0-alpha.9 → 44.2.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 +2 -2
  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 +14 -14
  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 _0xeb5452,Plugin as _0x29f929,PendingActions as _0x30d762,Context as _0x388067}from'@ckeditor/ckeditor5-core/dist/index.js';import{DomEmitterMixin as _0xec6cd1,CKEditorError as _0x11d4a3,Collection as _0x404462,global as _0x1f34b0,version as nt,uid as _0x1f9cf5,KeystrokeHandler as _0x171814}from'@ckeditor/ckeditor5-utils/dist/index.js';import{Notification as _0x248dca,View as _0xebb4e5,ListView as _0x218bba,ListItemView as rt,LabelView as ot,BalloonPanelView as _0x4e3fc0,clickOutsideHandler as _0x2d394f,BodyCollection as _0xa3bc39}from'@ckeditor/ckeditor5-ui/dist/index.js';import{LiveRange as ht,History as _0x58093d,NoOperation as _0x1e3caa,InsertOperation as _0x5cec2a,MarkerOperation as _0x10bd76,RootAttributeOperation as _0x4f841d,transformSets as _0x7207ef,OperationFactory as _0x31f2c3}from'@ckeditor/ckeditor5-engine/dist/index.js';import{WebSocketGateway as lt,WEB_SOCKET_GATEWAY_STATES as _0x54acd2,CollaborativeEditingService as _0x55e30f,User as dt,CommentsService as _0x2d8fc6,TrackChangesService as et,RevisionHistoryService as it,EditorService as tt}from'@ckeditor/ckeditor-cloud-services-collaboration/dist/index.js';import{Users as _0x5e26c0,UserView as ct}from'ckeditor5-collaboration/dist/index.js';import{Compressor as _0xdf2ff3}from'@ckeditor/ckeditor5-operations-compressor/dist/index.js';import{isElement as _0x2e96cc}from'lodash-es';class c extends _0xeb5452{static ['WebSocketGateway']=/* #__PURE__ -- @preserve */
24
- ((()=>lt)());static ['initialReconnectionInterval']=0x3e8;['connection'];['_reconnectionStack'];['_shouldPluginsReconnect'];['_domEmitter'];static get['requires'](){return['CloudServices',_0x248dca];}static get['pluginName'](){return'WebSocketGateway';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x15beaf){super(_0x15beaf),this['set']('state',_0x54acd2['CONNECTED']),this['set']('_isBrowserOffline',!0x1),this['_reconnectionStack']=new Set(),this['_shouldPluginsReconnect']=!0x1,this['_domEmitter']=Object['create'](_0xec6cd1);}['init'](){const _0x2d2816=this['context'],_0x1bdec6=_0x2d2816['plugins']['get']('CloudServices'),_0x20d366=_0x2d2816['plugins']['get'](_0x248dca);if(!_0x1bdec6['token'])throw new _0x11d4a3('websocketgateway-missing-token',this);if(!_0x1bdec6['webSocketUrl'])throw new _0x11d4a3('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'](_0x1bdec6['token'],_0x1bdec6['webSocketUrl'],{'timeout':0x3e8*this['context']['config']['get']('cloudServices.connectionTimeout'),'requestTimeout':0x3e8*this['context']['config']['get']('cloudServices.requestTimeout')})['then'](_0x395022=>{if(this['connection']=_0x395022,this['bind']('state')['to'](_0x395022,'state',this,'_isBrowserOffline',(_0xdd54ac,_0x1797e7)=>('connected'!==_0xdd54ac&&(this['_shouldPluginsReconnect']=!0x0),_0x1797e7||_0xdd54ac!==_0x54acd2['CONNECTED']?_0x54acd2['DISCONNECTED']:this['state']==_0x54acd2['DISCONNECTED']&&this['_shouldPluginsReconnect']?(this['_shouldPluginsReconnect']=!0x1,this['_reconnect'](),_0x54acd2['CONNECTING']):_0x54acd2['CONNECTED'])),this['connection']['on']('error',(_0x87fc,_0x3625b6)=>{if('limitExceeded'!==_0x3625b6['code'])throw console['error'](_0x3625b6),new _0x11d4a3('cloudservices-init',null,{'originalError':_0x3625b6});_0x20d366['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'});}),!_0x395022['me'])return new Promise(_0x50e865=>_0x395022['on']('change:me',_0x50e865));})['catch'](_0x4a31fb=>{throw console['error'](_0x4a31fb),new _0x11d4a3('cloudservices-init',null,{'originalError':_0x4a31fb});});}['addToReconnectionStack'](_0x458a1e){if('function'!=typeof _0x458a1e['reconnect'])throw new _0x11d4a3('websocketgateway-invalid-plugin-interface',this);if(this['isInReconnectionStack'](_0x458a1e))throw new _0x11d4a3('websocketgateway-plugin-already-registered',this,{'name':_0x458a1e['constructor']['pluginName']});this['_reconnectionStack']['add'](_0x458a1e);}['removeFromReconnectionStack'](_0x21c11a){this['_reconnectionStack']['delete'](_0x21c11a);}['isInReconnectionStack'](_0x1bf840){return this['_reconnectionStack']['has'](_0x1bf840);}['_reconnect'](){return this['connection']['reconnect']()['then'](()=>Promise['all'](Array['from'](this['_reconnectionStack'],_0x1d0cbb=>_0x1d0cbb['reconnect']())))['then'](()=>this['state']=_0x54acd2['CONNECTED'])['catch'](_0x448ccf=>{throw console['error'](_0x448ccf),new _0x11d4a3('cloudservices-reconnection-error',this['context']);});}['disconnect'](){this['connection']&&this['connection']['disconnect'](),this['state']=_0x54acd2['DISCONNECTED'],this['_domEmitter']['stopListening']();}['destroy'](){this['disconnect'](),super['destroy']();}}class i extends _0xeb5452{['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,_0x5e26c0];}constructor(_0x5374e1){super(_0x5374e1),this['channelSessions']=new Map(),this['channelConnectedUsers']=new Map(),this['allConnectedUsers']=new _0x404462(),this['_registeredSessions']=new Map(),this['_uniqueUsersCount']=0x0,this['_users']=this['context']['plugins']['get'](_0x5e26c0);}['init'](){const _0x3bd296=this['context']['plugins']['get'](c);this['listenTo'](_0x3bd296,'change:state',(_0x53cad6,_0x4c3db6,_0x39b387)=>{if('connected'!==_0x39b387)this['channelSessions']['forEach'](_0x5910c3=>_0x5910c3['clear']()),this['channelConnectedUsers']['forEach'](_0x1959f5=>_0x1959f5['clear']()),this['allConnectedUsers']['clear']();else{for(const [_0x56475b,_0x3d640d]of this['_registeredSessions'])for(const _0x32507c of _0x3d640d)this['_handleSessionAdd'](_0x56475b,_0x32507c);}}),this['_createUser'](_0x3bd296['connection']['me'],!0x0);}['register'](_0x447516,_0x52c241){if(this['_registeredSessions']['has'](_0x447516))throw new _0x11d4a3('sessions-register-already-registered',null,{'channelId':_0x447516});this['_registeredSessions']['set'](_0x447516,_0x52c241),this['channelSessions']['set'](_0x447516,new _0x404462()),this['channelConnectedUsers']['set'](_0x447516,new _0x404462()),this['listenTo'](_0x52c241,'add',(_0x1ca0ee,_0x5a1002)=>this['_handleSessionAdd'](_0x447516,_0x5a1002)),this['listenTo'](_0x52c241,'remove',(_0x1f939e,_0x9c7866)=>this['_handleSessionRemove'](_0x447516,_0x9c7866));for(const _0x27c551 of _0x52c241)this['_handleSessionAdd'](_0x447516,_0x27c551);}['unregister'](_0xb50f1f){if(!this['_registeredSessions']['has'](_0xb50f1f))throw new _0x11d4a3('sessions-unregister-not-exist',null,{'channelId':_0xb50f1f});const _0x1be3f0=this['_registeredSessions']['get'](_0xb50f1f);this['stopListening'](_0x1be3f0);for(const _0x1d2493 of _0x1be3f0)'connected'===this['context']['plugins']['get'](c)['state']&&this['_handleSessionRemove'](_0xb50f1f,_0x1d2493);this['_registeredSessions']['delete'](_0xb50f1f),this['channelSessions']['delete'](_0xb50f1f),this['channelConnectedUsers']['delete'](_0xb50f1f);}get['mySessionId'](){return this['context']['plugins']['get'](c)['connection']['sessionId'];}['getUserBySessionId'](_0x3682e9){for(const _0x4bf7b9 of this['channelSessions']['values']())for(const _0x3a8c3b of _0x4bf7b9)if(_0x3a8c3b['id']===_0x3682e9)return _0x3a8c3b['user'];}['getUserSessions'](_0x3764cc,_0xa1ff0d){const _0x2c1ec4=_0xa1ff0d?[this['channelSessions']['get'](_0xa1ff0d)]:this['channelSessions']['values'](),_0x37d37b=new Set();for(const _0x313376 of _0x2c1ec4)for(const _0x522dfa of _0x313376)_0x522dfa['user']['id']===_0x3764cc['id']&&_0x37d37b['add'](_0x522dfa['id']);return _0x37d37b;}['getUserRole'](_0x4dd545){for(const _0x3499b9 of this['channelSessions']['values']())for(const _0x9163b2 of _0x3499b9)if(_0x9163b2['user']===_0x4dd545)return _0x9163b2['role'];}['_handleSessionAdd'](_0x2178cc,_0x10c371){if('connected'!==this['context']['plugins']['get'](c)['state'])return;const _0x584b6f=_0x10c371['user'],_0x26236d=this['_users']['getUser'](_0x584b6f['id'])||this['_createUser'](_0x584b6f),_0x15c5d0=Object['assign']({},_0x10c371,{'user':_0x26236d});this['channelSessions']['get'](_0x2178cc)['add'](_0x15c5d0);const _0x28d6db=this['channelConnectedUsers']['get'](_0x2178cc);_0x28d6db['has'](_0x26236d['id'])||_0x28d6db['add'](_0x26236d),this['allConnectedUsers']['has'](_0x26236d['id'])||this['allConnectedUsers']['add'](_0x26236d,_0x26236d['isMe']?0x0:void 0x0),this['fire']('sessionAdd:'+_0x2178cc,{'channelId':_0x2178cc,'session':_0x15c5d0});}['_handleSessionRemove'](_0x3bc1f8,_0x6fe10a){if('connected'!==this['context']['plugins']['get'](c)['state'])return;const _0x577e41=this['channelConnectedUsers']['get'](_0x3bc1f8),_0x2c91b0=_0x6fe10a['user'];_0x2c91b0['id']&&(this['channelSessions']['get'](_0x3bc1f8)['remove'](_0x6fe10a['id']),_0x577e41['has'](_0x2c91b0['id'])&&!this['getUserSessions'](_0x2c91b0,_0x3bc1f8)['size']&&_0x577e41['remove'](_0x2c91b0['id']),this['allConnectedUsers']['get'](_0x2c91b0['id'])&&!this['getUserSessions'](_0x2c91b0)['size']&&this['allConnectedUsers']['remove'](_0x2c91b0['id']));}['_createUser'](_0x2fbb7a,_0x921a08){const _0x53269d=this['_users']['addUser'](_0x2fbb7a);return _0x921a08&&this['_users']['defineMe'](_0x2fbb7a['id']),_0x53269d['orderNumber']=this['_uniqueUsersCount']++,_0x53269d;}}class H extends _0x29f929{['_domEmitter']=new(_0xec6cd1())();static get['requires'](){return[i];}static get['pluginName'](){return'UserMarkers';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['init'](){const _0x457a02=this['editor'],_0x2dd3ce=_0x457a02['plugins']['get'](i);_0x457a02['conversion']['for']('editingDowncast')['markerToElement']({'model':'user:position','view':(_0x1af7f5,{writer:_0x4b5586})=>function(_0x2443c6,_0x28d6bc,_0x3526c9,_0x3d0faf){const _0x4402b0=_0x2443c6['markerName']['split'](':')[0x2],_0x2ffb21=_0x3526c9['getUserBySessionId'](_0x4402b0);if(!_0x2ffb21||_0x4402b0===_0x3526c9['mySessionId'])return;if(!_0x3d0faf['model']['schema']['checkChild'](_0x2443c6['markerRange']['start'],'$text'))return;const _0xb74196={'class':'ck-user__marker\x20'+_0x2ffb21['color']['getMarkerClass'](),'data-name':_0x2ffb21['name'],'data-session-id':_0x4402b0},_0x87779=_0x3d0faf['model']['markers']['get'](_0x2443c6['markerName']),_0x423f16=_0x87779['getStart'](),_0x5f3971=_0x423f16['nodeAfter'],_0x4c4013=_0x3d0faf['model']['schema'];if(_0x5f3971&&_0x4c4013['isObject'](_0x5f3971)&&_0x4c4013['isInline'](_0x5f3971)&&!_0x3d0faf['model']['markers']['get']('user:range:'+_0x4402b0)['getRange']()['isCollapsed'])return;const _0x2aaf6a=_0x423f16['parent'];return _0x3d0faf['model']['schema']['isLimit'](_0x2aaf6a)&&!_0x3d0faf['model']['hasContent'](_0x2aaf6a)&&(_0xb74196['contenteditable']=!0x1),function(_0x935968,_0x27e047,_0x21d8c1){const _0x4e60c5=_0x935968['createUIElement']('span',_0x27e047);return _0x935968['setCustomProperty']('userPositionMarker',!0x0,_0x4e60c5),_0x4e60c5['render']=function(_0x8587f3){const _0x2a4d6e=this['toDomElement'](_0x8587f3);return _0x2a4d6e['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>'+_0x21d8c1['name']+'</span>⁠',_0x2a4d6e['addEventListener']('mouseenter',()=>{_0x2a4d6e['classList']['add']('ck-user__marker_hovered');}),_0x2a4d6e['addEventListener']('mouseleave',()=>{_0x2a4d6e['classList']['remove']('ck-user__marker_hovered');}),_0x2a4d6e;},_0x4e60c5['isSimilar']=function(_0x40a813){return!(!this['getCustomProperty']('userPositionMarker')||!_0x40a813['getCustomProperty']('userPositionMarker')||this['getAttribute']('data-session-id')!=_0x40a813['getAttribute']('data-session-id'));},_0x4e60c5;}(_0x28d6bc,_0xb74196,_0x2ffb21);}(_0x1af7f5,_0x4b5586,_0x2dd3ce,_0x457a02)}),_0x457a02['conversion']['for']('editingDowncast')['markerToHighlight']({'model':'user:range','view':_0x1d7ae5=>function(_0x331b2b,_0x266a20){const _0x30e251=_0x331b2b['markerName']['split'](':')[0x2];if(_0x30e251===_0x266a20['mySessionId'])return null;const _0x30cb14=_0x266a20['getUserBySessionId'](_0x30e251);if(!_0x30cb14)return{'id':_0x30e251,'classes':[]};return{'id':_0x30e251,'classes':['ck-user__selection',_0x30cb14['color']['getSelectionClass']()],'attributes':{'data-session-id':_0x30e251},'priority':0x7d0+_0x30cb14['orderNumber']};}(_0x1d7ae5,_0x2dd3ce)}),function(_0x367d1e){const _0x1b6b9c=_0x367d1e['model'],_0xa5ad6d=new Map(),_0x3b1306=_0x367d1e['plugins']['get'](i);_0x1b6b9c['markers']['on']('update:user:range',(_0x172654,_0x15be56,_0x23e4d9,_0xa97d2)=>{if(!_0xa97d2&&_0xa5ad6d['get'](_0x15be56['name']))return _0xa5ad6d['get'](_0x15be56['name'])['detach'](),void _0xa5ad6d['delete'](_0x15be56['name']);const _0x30f83b=_0x15be56['name']['split'](':')[0x2];if(_0x30f83b===_0x3b1306['mySessionId'])return;const _0x4433ea='user:position:'+_0x30f83b;_0x1b6b9c['markers']['has'](_0x4433ea)&&_0x367d1e['editing']['reconvertMarker'](_0x4433ea),_0x15be56['on']('change:range',(_0x2b3ae8,_0x5df005,_0x4696da)=>{if('$graveyard'!=_0x5df005['root']['rootName']&&'$graveyard'==_0x15be56['getRange']()['root']['rootName']&&!_0xa5ad6d['has'](_0x15be56['name'])){const _0x1d753d=_0x1b6b9c['schema']['getNearestSelectionRange'](_0x4696da['deletionPosition']);if(_0x1d753d){const _0x2801c0=ht['fromRange'](_0x1d753d);_0xa5ad6d['set'](_0x15be56['name'],_0x2801c0),_0x2801c0['on']('change:range',(_0x3dd8d7,_0x23f563,_0x19e1b7)=>{if('$graveyard'==_0x2801c0['root']['rootName']){const _0x1eb4c1=_0x1b6b9c['schema']['getNearestSelectionRange'](_0x19e1b7['deletionPosition']);_0x1eb4c1?(_0x2801c0['start']=_0x1eb4c1['start'],_0x2801c0['end']=_0x1eb4c1['end']):(_0xa5ad6d['delete'](_0x15be56['name']),_0x2801c0['detach']());}});}}});}),_0x1b6b9c['document']['on']('change',()=>{_0xa5ad6d['size']>0x0&&_0x1b6b9c['enqueueChange']({'isUndoable':!0x1},_0x535d6f=>{for(const [_0x5b6850,_0x4f58c0]of _0xa5ad6d)'$graveyard'==_0x1b6b9c['markers']['get'](_0x5b6850)['getRange']()['root']['rootName']&&(re(_0x5b6850['split'](':')[0x2],_0x4f58c0['toRange'](),_0x1b6b9c,_0x535d6f),_0x4f58c0['detach']());_0xa5ad6d['clear']();});});}(_0x457a02),this['_domEmitter']['listenTo'](_0x1f34b0['document'],'keydown',(_0xb55cc,{key:_0x208c05})=>{'Escape'===_0x208c05&&function(_0x67cf35){_0x67cf35['editing']['view']['change'](_0x184f2e=>{for(const _0x3d4054 of _0x67cf35['model']['markers']){if(!_0x3d4054['name']['startsWith']('user:position'))continue;const _0xf0501c=_0x67cf35['editing']['mapper']['markerNameToElements'](_0x3d4054['name']);if(_0xf0501c){for(const _0x79a18b of _0xf0501c)_0x184f2e['removeClass']('ck-user__marker_hovered',_0x79a18b);}}});}(_0x457a02);},{'useCapture':!0x0});}['afterInit'](){const _0x2e3dbe=this['editor'],_0x2329a0=_0x2e3dbe['commands']['get']('undo');_0x2329a0&&_0x2e3dbe['model']['on']('applyOperation',(_0x280e17,_0x36a39b)=>{const _0x37c7d3=_0x36a39b[0x0];if(!_0x37c7d3['isDocumentOperation'])return;if('marker'!=_0x37c7d3['type']||!_0x37c7d3['name']['startsWith']('user:'))return;const _0x2434ce=_0x37c7d3['batch'];_0x2329a0['_createdBatches']['has'](_0x2434ce)&&(_0x37c7d3['newRange']=_0x37c7d3['oldRange']?_0x2e3dbe['model']['createRange'](_0x37c7d3['oldRange']['start'],_0x37c7d3['oldRange']['end']):null);},{'priority':'highest'});}['destroy'](){return this['_domEmitter']['stopListening'](),super['destroy']();}['createUserMarkerOperations'](){const _0x3fbf76=this['editor'],_0x213c14=_0x3fbf76['model']['document'],_0x3e19e6=_0x3fbf76['plugins']['get'](i);_0x3fbf76['model']['enqueueChange']({'isUndoable':!0x1},_0xc87a9d=>{const _0x3eb814='user:range:'+_0x3e19e6['mySessionId'],_0x2e000c='user:position:'+_0x3e19e6['mySessionId'],_0x4df084=_0x3fbf76['model']['markers']['has'](_0x3eb814);_0x3fbf76['editing']['view']['hasDomSelection']?re(_0x3e19e6['mySessionId'],_0x213c14['selection']['getFirstRange'](),_0x3fbf76['model'],_0xc87a9d):_0x4df084&&(_0xc87a9d['removeMarker'](_0x3eb814),_0xc87a9d['removeMarker'](_0x2e000c));});}}function re(_0x2b238d,_0x29c0b6,_0x4554fc,_0x31b53b){const _0x2ea0b2='user:range:'+_0x2b238d,_0x2f0cfb='user:position:'+_0x2b238d,_0x34134d=_0x29c0b6['getContainedElement']();let _0x1e91e7=_0x29c0b6['start'];_0x34134d&&_0x34134d['is']('element','tableCell')&&(_0x1e91e7=function(_0xd26439,_0x5e9aa3){for(const _0x30c06a of _0xd26439['getPositions']())if(_0x5e9aa3['schema']['checkChild'](_0x30c06a,'$text'))return _0x30c06a;}(_0x29c0b6,_0x4554fc),_0x29c0b6=_0x31b53b['createRange'](_0x1e91e7));const _0x1f4ce1=_0x31b53b['createRange'](_0x1e91e7);_0x4554fc['markers']['has'](_0x2ea0b2)?(_0x31b53b['updateMarker'](_0x2ea0b2,{'range':_0x29c0b6}),_0x31b53b['updateMarker'](_0x2f0cfb,{'range':_0x1f4ce1})):(_0x31b53b['addMarker'](_0x2ea0b2,{'range':_0x29c0b6,'usingOperation':!0x0}),_0x31b53b['addMarker'](_0x2f0cfb,{'range':_0x1f4ce1,'usingOperation':!0x0}));}function q(_0x4bc763,_0x31e3e8,_0x52e0bb){const _0xbc0d76=_0x4bc763['t'],t=_0x4bc763['t'];switch(_0x31e3e8){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 _0xbc0d76({'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'},_0x52e0bb);default:return'';}}let K=0x1;class l extends _0x29f929{static ['CollaborativeEditingService']=/* #__PURE__ -- @preserve */
25
- ((()=>_0x55e30f)());['_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,_0x30d762,_0x5e26c0,_0x248dca];}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 _0x410309=this['serverHistory']['getOperations']();for(let _0x930ea9=_0x410309['length']-0x1;_0x930ea9>=0x0;_0x930ea9--){const _0x5aa606=_0x410309[_0x930ea9];if(!this['_disconnectionOperations']['has'](_0x5aa606))return _0x5aa606['baseVersion']+0x1-this['_offset'];}return 0x0;}constructor(_0x223468){if(super(_0x223468),this['_offset']=0x0,this['sessionId']=null,this['serverHistory']=new _0x58093d(),this['editor']['config']['define']('collaboration',{}),this['_channelId']=this['editor']['config']['get']('collaboration.channelId'),!this['_channelId'])throw new _0x11d4a3('collaboration-missing-channelid',this);const _0x513024=_0x223468['config']['get']('cloudServices.bundleVersion')||nt;this['_service']=new l['CollaborativeEditingService'](_0x513024,this['_channelId']),this['_document']=this['editor']['model']['document'],this['_compressor']=new _0xdf2ff3(),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 _0x4d8e03=this['editor'],_0x79f4f3=_0x4d8e03['plugins']['get'](_0x5e26c0),_0x333b1c=_0x4d8e03['plugins']['get'](c);this['listenTo'](_0x79f4f3,'getOperationAuthor',(_0x3389c0,_0x39425e)=>{const _0x794ef2=_0x39425e[0x0];_0x794ef2['_authorId']&&(_0x3389c0['return']=_0x79f4f3['getUser'](_0x794ef2['_authorId']),_0x3389c0['stop']()),null===_0x794ef2['_authorId']&&(_0x3389c0['return']=null,_0x3389c0['stop']());},{'priority':'high'}),this['listenTo'](_0x4d8e03['model']['document']['selection'],'change:range',(_0x485863,_0x96217c)=>{_0x96217c['directChange']&&this['_refreshUserSelectionMarkers']();}),this['listenTo'](_0x4d8e03['editing']['view'],'change:hasDomSelection',()=>{this['_refreshUserSelectionMarkers']();}),this['_initThrowingOnDataSet'](),_0x4d8e03['model']['on']('applyOperation',(_0x482130,_0x4ac6df)=>{const _0x5d092d=_0x4ac6df[0x0];_0x5d092d['isDocumentOperation']&&(this['_saveOperationInBuffer'](_0x5d092d),this['_shouldSendUpdate']()&&this['_sendBufferedOperationsDelayed']());}),this['_setUpDataInit'](),this['bind']('_isEditingAllowed')['to'](_0x333b1c,'state',this,'_hasSynchronizationProblem',(_0x34452c,_0x152760)=>'connected'===_0x34452c&&!_0x152760),this['on']('change:_isEditingAllowed',()=>{this['_isEditingAllowed']?_0x4d8e03['disableReadOnlyMode']('rtc-offline'):_0x4d8e03['enableReadOnlyMode']('rtc-offline');}),this['_isEditingAllowed']?_0x4d8e03['disableReadOnlyMode']('rtc-offline'):_0x4d8e03['enableReadOnlyMode']('rtc-offline'),this['set']('_isConnected',!0x1);}async['reconnect'](){const _0x1b2597=this['editor']['plugins']['get'](i),_0x51de19=this['editor']['plugins']['get'](c);try{this['_isPendingUpdate']=!0x0,_0x1b2597['unregister'](this['_channelId']);const _0x24082c=await this['_service']['reconnect'](_0x51de19['connection'],this['lastSyncVersion']);await this['_handleReconnectionResponse'](_0x24082c)&&(this['_isPendingUpdate']=!0x1,this['_clearPendingAction']());const _0x534ece=await this['_service']['getConnectedSessions']();_0x1b2597['register'](this['_channelId'],_0x534ece),this['_handleSendingSelectionMarkers'](),this['_isConnected']=!0x0;}catch(_0x9e0145){if(function(_0xd784d1){return'404'===_0xd784d1['code'];}(_0x9e0145)&&this['sessionId'])await this['_connectAfterSessionHasBeenFlushed']();else{if(function(_0x2009d7){return'409'===_0x2009d7['code'];}(_0x9e0145)){const _0x3a1c0a=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'](_0x3a1c0a);}else{if(!(_0x9e0145 instanceof J))throw _0x9e0145;this['_handleReconnectionError']();}}}}['destroy'](){const _0x2fe52f=this['editor']['plugins']['get'](c),_0x502492=this['editor']['plugins']['get'](i);this['editor']['enableReadOnlyMode']('rtc-destroyed'),_0x502492['channelSessions']['has'](this['_channelId'])&&_0x502492['unregister'](this['_channelId']),_0x2fe52f['removeFromReconnectionStack'](this),this['_disconnectService'](),super['destroy']();}async['_handleReconnectionResponse'](_0x5cefdc){if(this['sessionId']!==_0x5cefdc['sessionId']&&this['_lastSyncedOperationId']!==_0x5cefdc['lastOperationId'])throw new J();return this['sessionId']=_0x5cefdc['sessionId'],this['_handleServerResponse']([],{..._0x5cefdc,'wereChangesApplied':!0x1,'data':_0x5cefdc['data']},'reconnect');}async['_connectService'](_0x262193,_0x29d84b=!0x1){const {connection:_0x15e78a}=this['editor']['plugins']['get'](c);l['CollaborativeEditingService']['getConnectedSessions'](_0x15e78a,this['_channelId'])['then'](_0x33f28f=>this['_initSessionsHandling'](_0x33f28f))['catch'](_0x133672=>{this['_crash']('realtimecollaborationclient-init-session-connection-error',_0x133672);}),this['listenTo'](this['_service'],'operationsReceived',this['_handleReceivedOperations']['bind'](this)),this['listenTo'](this['_service'],'error',(_0x4bc9bf,_0x22d495)=>{this['_crash']('realtimecollaborationclient-init-service-internal-error',_0x22d495);}),this['listenTo'](this['_service'],'disconnected',()=>{this['_isConnected']=!0x1;});const _0x90c87b=this['_operationIdentifier']['getIdOfTheLastOperation'](_0x262193);this['_isPendingUpdate']=!0x0;const _0x58abf4=await this['_service']['connect'](_0x15e78a,this['_compressOperations'](_0x262193),_0x90c87b);if(this['sessionId']=_0x58abf4['sessionId'],_0x29d84b){if(!_0x58abf4['wereChangesApplied'])return void this['_handleReconnectionError']();this['_isPendingUpdate']=!0x1,this['_clearPendingAction'](),this['serverHistory']['reset'](),this['_offset']=_0x58abf4['offset'],this['serverHistory']['version']=this['_offset'],await this['_handleServerResponse'](_0x262193,_0x58abf4,'reconnection:\x20flushed\x20session');}else await this['_handleInitialConnectionData'](_0x58abf4,_0x262193);this['_handleSendingSelectionMarkers'](),this['_isConnected']=!0x0;}['_handleSendingSelectionMarkers'](){const _0x561b83=this['editor']['plugins']['get'](i),_0x41b780=this['editor']['plugins']['get'](H),_0x314fa0=_0x561b83['channelSessions']['get'](this['_channelId']);_0x314fa0&&_0x314fa0['length']>0x1?_0x41b780['createUserMarkerOperations']():this['listenTo'](_0x561b83,'sessionAdd:'+this['_channelId'],()=>{0x2===_0x561b83['channelSessions']['get'](this['_channelId'])['length']&&_0x41b780['createUserMarkerOperations']();});}async['_handleReceivedOperations'](_0xb53634,_0x2d5534,_0x535fc7,_0x2d8b04){if(!this['_isPendingUpdate']&&this['_document']['version']==_0x2d5534){const _0x2249e6=this['_decompressOperations'](_0x535fc7,_0x2d8b04);await this['_fetchMissingUsers'](_0x2249e6),this['_handleExternalOperations'](_0x2249e6,_0x2d5534,_0x535fc7['lastOperationId'])||this['_crash']('realtimecollaborationclient-init-service-incorrect-server-operation');}}async['_connectAfterSessionHasBeenFlushed'](){this['_disconnectService']();const {locale:_0x4926c8}=this['editor'];let _0x44b8bf;try{_0x44b8bf=await this['_service']['getDocumentDetails']();}catch(_0x56d458){const _0x21a18c=q(_0x4926c8,'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'](_0x21a18c);}const _0x4d6131=_0x44b8bf['currentDocumentSession']||_0x44b8bf['lastDocumentSession'];if(this['_lastSyncedOperationId']===_0x4d6131['lastOperationId'])await this['_connectService'](this['editor']['model']['document']['history']['getOperations'](),!0x0);else{const _0x164b7a=q(_0x4926c8,'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'](_0x164b7a);}}['_disconnectService'](){this['_service']['disconnect'](),this['_bufferedOperations']=[],clearTimeout(this['_sendBufferedOperationsDelayId']),this['stopListening'](this['_service']);}['_initSessionsHandling'](_0x1e035e){const _0x665dd1=this['editor']['plugins']['get'](i);this['listenTo'](_0x665dd1,'sessionAdd:'+this['_channelId'],(_0x5246e8,{session:_0x247131})=>{if(_0x247131['id']===_0x665dd1['mySessionId']){_0x5246e8['off']();const _0x25a293=this['editor']['plugins']['has']('CommentsOnly')&&this['editor']['plugins']['get']('CommentsOnly');let _0x27f957=_0x247131['permissions'];_0x25a293&&_0x25a293['isEnabled']&&(_0x27f957=_0x27f957['filter'](_0x252c3e=>'document:write'!==_0x252c3e)),this['editor']['plugins']['get']('Permissions')['setPermissions'](_0x27f957,this['_channelId']);}}),_0x665dd1['register'](this['_channelId'],_0x1e035e);}['_initThrowingOnDataSet'](){const _0x3dbfe5=this['editor']['data']['set'];this['editor']['data']['set']=(..._0x250cb3)=>{if(!_0x250cb3[_0x250cb3['length']-0x1]['suppressErrorInCollaboration'])throw new _0x11d4a3('realtimecollaborationclient-editor-setdata-and-editor-data-set-are-forbidden-in-real-time-collaboration',this);_0x3dbfe5['apply'](this['editor']['data'],_0x250cb3);};}['_setUpDataInit'](){this['editor']['data']['on']('init',(_0x5448c8,[_0x790492])=>{if(this['_document']['version'])throw new _0x11d4a3('realtimecollaborationclient-init-document-already-initialized',this);_0x5448c8['stop'](),this['_setPendingAction']();const _0x5af02b=this['editor']['config']['get']('rootsAttributes'),_0x9b7b47=this['_getOperationsFromInitData'](_0x790492,_0x5af02b);0x0==_0x9b7b47['length']&&_0x9b7b47['push'](new _0x1e3caa(0x0)),_0x5448c8['return']=this['_connectService'](_0x9b7b47)['then'](()=>{this['editor']['plugins']['get'](c)['addToReconnectionStack'](this),this['editor']['data']['fire']('ready');})['catch'](_0x2f3755=>this['_crash']('realtimecollaborationclient-init-connection-failed',_0x2f3755))['finally'](()=>this['_clearPendingAction']());},{'priority':'high'}),this['editor']['on']('loadRoot',async(_0x284a1d,[_0x3ff8c2,_0x350017])=>{_0x284a1d['stop']();const _0x174942=this['editor']['model']['document']['getRoot'](_0x3ff8c2);if(!this['_knownRootNames']['has'](_0x3ff8c2)){const _0x35d634=_0x350017&&_0x350017['data']?_0x350017['data']:'',_0x757ed3=_0x350017&&_0x350017['attributes']?_0x350017['attributes']:{};await this['_loadRoot'](_0x3ff8c2,_0x35d634,_0x757ed3);}this['editor']['model']['enqueueChange']({'isUndoable':!0x1},()=>{_0x174942['_isLoaded']=!0x0,this['editor']['model']['document']['differ']['_bufferRootLoad'](_0x174942);});},{'priority':'high'});}async['_fetchMissingUsers'](_0x34b8fb){const _0x682c72=this['editor']['plugins']['get'](_0x5e26c0),{connection:_0x33b599}=this['editor']['plugins']['get'](c),_0x22c81a=new Set();for(const _0xa75c2c of _0x34b8fb){const _0x2d5434=_0xa75c2c['_authorId'];_0x2d5434&&!_0x682c72['getUser'](_0x2d5434)&&_0x22c81a['add'](_0x2d5434);}if(0x0===_0x22c81a['size'])return;const _0x55912a=await dt['getMany'](_0x33b599,Array['from'](_0x22c81a));for(const _0x4b8adf of _0x55912a)_0x682c72['getUser'](_0x4b8adf['id'])||_0x682c72['addUser'](_0x4b8adf);}['_getOperationsFromInitData'](_0x2f9afb,_0x5e0fe1={}){const _0x60da65=this['editor']['model'],_0x24e220=[];let _0x30e8d5=0x0;const _0x579a8f='string'==typeof _0x2f9afb?{'main':_0x2f9afb}:_0x2f9afb;for(const _0x416837 of Object['keys'](_0x579a8f)){if(!this['_document']['roots']['has'](_0x416837))throw new _0x11d4a3('realtimecollaborationclient-init-non-existent-root',this);const _0x329e87=this['editor']['data']['parse'](_0x579a8f[_0x416837]),_0x5d4978=this['_document']['getRoot'](_0x416837),_0x57509a=new _0x5cec2a(_0x60da65['createPositionAt'](_0x5d4978,0x0),_0x329e87,_0x30e8d5++);_0x24e220['push'](_0x57509a);for(const [_0x5e1b25,_0x562acb]of _0x329e87['markers']){const _0x2478f4=_0x60da65['createRange'](_0x60da65['createPositionFromPath'](_0x5d4978,_0x562acb['start']['path']['slice']()),_0x60da65['createPositionFromPath'](_0x5d4978,_0x562acb['end']['path']['slice']())),_0x18a2e6=new _0x10bd76(_0x5e1b25,null,_0x2478f4,_0x60da65['markers'],!0x0,_0x30e8d5++);_0x24e220['push'](_0x18a2e6);}}if(_0x5e0fe1)for(const [_0x2bb725,_0x242634]of Object['entries'](_0x5e0fe1)){const _0x315575=_0x60da65['document']['getRoot'](_0x2bb725);if(!_0x315575)throw new _0x11d4a3('multi-root-editor-root-attributes-no-root',null);for(const [_0x3e99d9,_0x2b0a15]of Object['entries'](_0x242634))if(null!==_0x2b0a15){const _0x23b545=new _0x4f841d(_0x315575,_0x3e99d9,null,_0x2b0a15,_0x30e8d5++);_0x24e220['push'](_0x23b545);}}return _0x24e220;}async['_loadRoot'](_0x2937ae,_0xe30bca,_0x40df59){this['_getOperationsFromInitData']({[_0x2937ae]:_0xe30bca},{[_0x2937ae]:_0x40df59})['forEach']((_0x390106,_0x5aa135)=>{_0x390106['baseVersion']=this['_document']['version']+_0x5aa135,_0x390106['_isInit']=!0x0,this['_saveOperationInBuffer'](_0x390106);}),this['_sendBufferedOperationsDelayed'](),await this['_waitUntilSynced']();}async['_handleInitialConnectionData'](_0x309312,_0x2e4866){let _0x3c5c1a;this['_offset']=_0x309312['offset'];const _0x28ffd8=_0x309312['wereChangesApplied']&&!_0x309312['initData'],_0x2b6f85=_0x28ffd8?0x0:_0x309312['data']['baseVersion'];if(_0x2e4866['forEach'](_0x46f267=>{_0x46f267['_isInit']=!0x0,_0x46f267['createdAt']=_0x309312['sessionCreatedAt'],_0x46f267['_authorId']=null;}),_0x28ffd8)_0x3c5c1a=_0x2e4866,this['_applyOperationsSet'](_0x3c5c1a,_0x28ffd8);else{if(_0x309312['initData']){const _0xb5af7=this['_getOperationsFromInitData'](_0x309312['initData']);this['_document']['history']['version']=-_0xb5af7['length'],_0xb5af7['forEach'](_0x544a29=>{_0x544a29['baseVersion']-=_0xb5af7['length'],_0x544a29['createdAt']=_0x309312['sessionCreatedAt'],_0x544a29['_isInit']=!0x0,_0x544a29['_authorId']=null;}),this['_applyOperationsSet'](_0xb5af7,!0x0),this['serverHistory']['version']=-_0xb5af7['length']+this['_offset'],this['_updateServerHistory'](_0xb5af7);}this['_document']['history']['version']=_0x2b6f85,_0x3c5c1a=this['_decompressOperations'](_0x309312['data'],_0x309312['metadata']),await this['_fetchMissingUsers'](_0x3c5c1a),this['_applyOperationsSet'](_0x3c5c1a,_0x28ffd8);}_0x309312['lastOperationId']&&(this['_operationIdentifier']['setIdForTheLastOperation'](_0x3c5c1a,_0x309312['lastOperationId']),this['_lastSyncedOperationId']=_0x309312['lastOperationId']),this['serverHistory']['version']=_0x2b6f85+this['_offset'],this['_updateServerHistory'](_0x3c5c1a),_0x2e4866['filter'](_0x55ed3f=>{const _0x279c19=this['_getAffectedRoot'](_0x55ed3f);return _0x279c19&&!this['_knownRootNames']['has'](_0x279c19);})['forEach']((_0x14a242,_0x31ecba)=>{_0x14a242['baseVersion']=this['_document']['version']+_0x31ecba,this['_saveOperationInBuffer'](_0x14a242);}),this['_shouldSendUpdate']()?(this['_currentBufferDelay']=0x0,this['_sendBufferedOperationsDelayed'](!0x0),await this['_waitUntilSynced']()):(this['_isPendingUpdate']=!0x1,this['_clearPendingAction']());}['_crash'](_0x378824,_0x2f74b8){const _0x1df4f0=_0x2f74b8&&_0x2f74b8['message'];if(_0x1df4f0&&_0x1df4f0['startsWith']('realtimecollaborationclient'))throw _0x2f74b8;const _0x30f252=this['editor']['plugins']['get'](c);throw this['_isPendingUpdate']=!0x0,_0x30f252['disconnect'](),this['editor']['enableReadOnlyMode']('realtimecollaborationclient-error'),new _0x11d4a3(_0x378824,this['editor'],_0x1df4f0?{'originalError':_0x1df4f0}:void 0x0);}['_saveOperationInBuffer'](_0xef982f){this['_knownOperations']['has'](_0xef982f)||(this['_knownOperations']['add'](_0xef982f),this['_bufferedOperations']['push'](_0xef982f),this['_pendingAction']||'marker'==_0xef982f['type']&&!_0xef982f['affectsData']||this['_setPendingAction']());}['_sendBufferedOperationsDelayed'](_0x151030=!0x1){!_0x151030&&this['_isPendingUpdate']||(this['_isPendingUpdate']=!0x0,clearTimeout(this['_sendBufferedOperationsDelayId']),this['_sendBufferedOperationsDelayId']=setTimeout(()=>{this['_sendBufferedOperations']()['then'](_0x1c8187=>{_0x1c8187&&(this['_clearPendingAction'](),this['_isPendingUpdate']=!0x1);})['catch'](_0xedf99e=>{this['_clearPendingAction'](),this['_isPendingUpdate']=!0x1,function(_0x8516e8){return _0x8516e8['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x8516e8['message']['startsWith']('cloud-services-internal-error:\x20Collaborative\x20Editing\x20Service\x20is\x20not\x20connected.')||_0x8516e8['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}(_0xedf99e)||this['_crash'](_0xedf99e['message'],_0xedf99e);});},this['_currentBufferDelay']));}['_waitUntilSynced'](){return new Promise(_0x31f4db=>{this['on']('change:_isPendingUpdate',()=>{_0x31f4db();});});}async['_sendBufferedOperations'](){const _0x1f3946=this['editor']['plugins']['get'](H);if(this['_shouldSendSelectionUpdate']()&&(_0x1f3946['createUserMarkerOperations'](),this['_hasSelectionChanged']=!0x1),!this['_shouldSendUpdate']())return!0x0;const _0x23fddb=[...this['_bufferedOperations']];for(const _0x333d9b of _0x23fddb)_0x333d9b['wasUndone']=this['_document']['history']['isUndoneOperation'](_0x333d9b);const _0x326999=this['_operationIdentifier']['getIdOfTheLastOperation'](_0x23fddb),_0x17ef13=K++,_0x4cbd65=this['_compressOperations'](_0x23fddb),_0x5cb3b0=await this['_service']['sendOperations'](_0x4cbd65,_0x4cbd65['baseVersion'],_0x326999);try{return await this['_handleServerResponse'](_0x23fddb,_0x5cb3b0,_0x17ef13);}catch(_0x70ed9f){return this['_crash']('realtimecollaborationclient-sendbufferedoperations',_0x70ed9f);}}async['_handleServerResponse'](_0x54ea1b,_0xf2a09c,_0x569aa5){if('error'in _0xf2a09c)throw _0xf2a09c['error'];let _0x4f3f7d=!0x1;if(_0xf2a09c['wereChangesApplied']){_0xf2a09c['lastOperationId']&&(this['_lastSyncedOperationId']=_0xf2a09c['lastOperationId']),this['_bufferedOperations']=this['_bufferedOperations']['filter'](_0x2187b5=>!_0x54ea1b['includes'](_0x2187b5));for(const _0x1f0864 of _0x54ea1b)_0x1f0864['createdAt']='lastOperationAcceptedAt'in _0xf2a09c&&_0xf2a09c['lastOperationAcceptedAt']||void 0x0;Q(_0x54ea1b,_0xf2a09c['version']-_0x54ea1b['length']),this['_updateServerHistory'](_0x54ea1b);const _0x468d40=_0x54ea1b['filter'](_0x5f3141=>{if(!_0x5f3141['_isInit'])return!0x1;const _0x44120b=this['_getAffectedRoot'](_0x5f3141);return _0x44120b&&!this['_knownRootNames']['has'](_0x44120b);});Q(_0x468d40,this['_document']['version']),this['_applyOperationsSet'](_0x468d40),_0x4f3f7d=!0x0,this['_currentBufferDelay']=this['_baseBufferDelay'];}else{const _0x3b08b2=this['_decompressOperations'](_0xf2a09c['data'],_0xf2a09c['metadata'])['filter'](_0x1bff9b=>_0x1bff9b['baseVersion']>=this['_lastServerVersion']);_0x3b08b2['forEach'](_0x167acf=>this['_addKnownRoot'](_0x167acf)),this['_bufferedOperations']=this['_bufferedOperations']['filter'](_0x21ae7a=>!_0x21ae7a['_isInit']||!this['_knownRootNames']['has'](this['_getAffectedRoot'](_0x21ae7a))),this['_bufferedOperations']['length']&&Q(this['_bufferedOperations'],this['_bufferedOperations'][0x0]['baseVersion']),await this['_fetchMissingUsers'](_0x3b08b2),_0x4f3f7d=this['_handleExternalOperations'](_0x3b08b2,_0xf2a09c['version'],_0xf2a09c['lastOperationId']),this['_currentBufferDelay']=Math['round'](this['_currentBufferDelay']/0x2);}return _0x4f3f7d?!this['_shouldSendUpdate']()||(this['_sendBufferedOperationsDelayed'](!0x0),!0x1):this['_crash']('realtimecollaborationclient-handleserverresponse');}['_handleExternalOperations'](_0x179844,_0x3783dc,_0x1e0505){try{const _0x305052={'document':this['_document'],'useRelations':!0x1,'padWithNoOps':!0x0},{operationsA:_0x2f9205,operationsB:_0x24b437,originalOperations:_0x1f11e2}=_0x7207ef(_0x179844,this['_bufferedOperations'],_0x305052);Q(_0x2f9205,this['_document']['version']),Q(_0x24b437,_0x3783dc);for(const _0x26c305 of _0x2f9205){const _0x328304=_0x1f11e2['get'](_0x26c305);_0x26c305['_authorId']=_0x328304?_0x328304['_authorId']:null;}_0x1e0505&&(this['_operationIdentifier']['setIdForTheLastOperation'](_0x179844,_0x1e0505),this['_lastSyncedOperationId']=_0x1e0505),this['_bufferedOperations']=[..._0x24b437],this['_applyOperationsSet'](_0x2f9205),this['_updateServerHistory'](_0x179844);}catch(_0x49ecb9){return console['error'](_0x49ecb9),!0x1;}return!0x0;}['_applyOperationsSet'](_0x15495b,_0x1c4217=!0x1){this['editor']['model']['enqueueChange']({'isUndoable':!0x1,'isLocal':!0x1},_0x183892=>{for(const _0x30404b of _0x15495b)this['_knownOperations']['add'](_0x30404b),this['_addKnownRoot'](_0x30404b),_0x183892['batch']['addOperation'](_0x30404b),this['editor']['model']['applyOperation'](_0x30404b);});}['_addKnownRoot'](_0x5589f9){const _0x31ddbd=this['_getAffectedRoot'](_0x5589f9);_0x31ddbd&&this['_knownRootNames']['add'](_0x31ddbd);}['_getAffectedRoot'](_0x3fe1a3){let _0x317276,_0x431ac8;switch(_0x3fe1a3['type']){case'insert':_0x317276=_0x3fe1a3['position']['root'];break;case'marker':if(_0x431ac8=_0x3fe1a3['newRange'],!_0x431ac8)return null;_0x317276=_0x431ac8['root'];break;case'addRootAttribute':_0x317276=_0x3fe1a3['root'];break;case'addRoot':_0x317276=_0x3fe1a3['affectedSelectable'];break;case'move':_0x317276=_0x3fe1a3['targetPosition']['root'];break;default:return null;}return _0x317276['rootName'];}['_updateServerHistory'](_0x2f3567){_0x2f3567['forEach'](_0x52c439=>{const _0x1c4ec0=_0x52c439['clone']();_0x1c4ec0['_authorId']=_0x52c439['_authorId'],_0x1c4ec0['_isInit']=!!_0x52c439['_isInit'],_0x1c4ec0['createdAt']=_0x52c439['createdAt'],_0x1c4ec0['baseVersion']+=this['_offset'],_0x52c439['_isDisconnection']&&this['_disconnectionOperations']['add'](_0x1c4ec0),this['serverHistory']['addOperation'](_0x1c4ec0);});}['_handleReconnectionError'](_0x417849){const _0x12e083=this['editor']['plugins']['get']('Notification'),_0x11df9c=this['editor']['locale'];_0x417849||(_0x417849=q(_0x11df9c,'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.')),_0x12e083['showWarning'](_0x417849,{'title':q(_0x11df9c,'Synchronization\x20issue'),'namespace':'real-time-collaboration'}),this['_hasSynchronizationProblem']=!0x0,clearTimeout(this['_sendBufferedOperationsDelayId']),this['_bufferedOperations']=[],this['editor']['plugins']['get'](c)['disconnect']();}['_setPendingAction'](){this['_pendingAction']||(this['_pendingAction']=this['editor']['plugins']['get'](_0x30d762)['add'](q(this['editor']['locale'],'PENDING_ACTION_SENDING_DATA')));}['_clearPendingAction'](){this['_pendingAction']&&(this['editor']['plugins']['get'](_0x30d762)['remove'](this['_pendingAction']),this['_pendingAction']=null);}['_compressOperations'](_0x1ebc28){const _0x121c32=_0x1ebc28['map'](_0x52ae7e=>_0x52ae7e['toJSON']());return this['_compressor']['compress'](_0x121c32);}['_decompressOperations'](_0x21a638,_0x163e8e){return this['_compressor']['decompress'](_0x21a638)['map']((_0x5ab77c,_0x242e2a)=>{const _0x1262f7='init'==_0x163e8e[_0x242e2a]['type'];if('InsertOperation'==_0x5ab77c['__className']){const _0x338223=_0x5ab77c['position']['root'];!this['_document']['getRoot'](_0x338223)&&(this['_document']['createRoot']('$root',_0x338223)['_isAttached']=!0x1);}const _0x200572=_0x31f2c3['fromJSON'](_0x5ab77c,this['_document']);return _0x200572['wasUndone']=_0x5ab77c['wasUndone'],_0x200572['_isInit']=_0x1262f7,_0x200572['_authorId']=_0x1262f7?null:_0x163e8e[_0x242e2a]['userId'],_0x200572['_isDisconnection']='cs:removeUser'===_0x163e8e[_0x242e2a]['type'],_0x200572['createdAt']=_0x163e8e[_0x242e2a]['createdAt'],_0x200572;});}['_refreshUserSelectionMarkers'](){this['_hasSelectionChanged']=!0x0,this['_shouldSendSelectionUpdate']()?this['_sendBufferedOperationsDelayed']():this['_hasSelectionChanged']=!0x1;}['_shouldSendSelectionUpdate'](){const _0x42f38a=this['editor']['plugins']['get'](i)['channelSessions']['get'](this['_channelId']);return!this['editor']['isReadOnly']&&!!_0x42f38a&&_0x42f38a['length']>0x1&&this['_hasSelectionChanged'];}['_shouldSendUpdate'](){return this['_bufferedOperations']['length']>0x0||this['_shouldSendSelectionUpdate']();}}class J extends Error{}function Q(_0x232e6f,_0x4e305b){for(const _0x316176 of _0x232e6f)_0x316176['baseVersion']=_0x4e305b++;}class X{['_ignoredOperations'];['_operationToId'];constructor(_0x51bd06){this['_ignoredOperations']=_0x51bd06,this['_operationToId']=new WeakMap();}['getIdOfTheLastOperation'](_0x217e2f){let _0x171b82=_0x217e2f['length'];for(;_0x171b82--;){const _0x4e3126=_0x217e2f[_0x171b82];if(!this['_ignoredOperations']['has'](_0x4e3126)){if(!this['_operationToId']['has'](_0x4e3126)){const _0x21cf3b=_0x1f9cf5()['slice'](0x1,0x12);this['_operationToId']['set'](_0x4e3126,_0x21cf3b);}return this['_operationToId']['get'](_0x4e3126);}}}['setIdForTheLastOperation'](_0x1d773c,_0x1cd63a){if(!_0x1cd63a)return;let _0xf221a=_0x1d773c['length'];for(;_0xf221a--;){const _0x1624d3=_0x1d773c[_0xf221a];this['_ignoredOperations']['has'](_0x1624d3)||this['_operationToId']['set'](_0x1624d3,_0x1cd63a);}}}class n extends _0x29f929{static get['requires'](){return[l];}static get['pluginName'](){return'RealTimeCollaborativeEditing';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}class a extends _0xeb5452{static ['CommentsService']=/* #__PURE__ -- @preserve */
26
- ((()=>_0x2d8fc6)());['_services'];static get['requires'](){return[c,'CommentsRepository',i,_0x5e26c0];}static get['pluginName'](){return'CloudServicesCommentsAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x1e026d){super(_0x1e026d),this['_services']=new Map();}async['init'](){const _0x12778e=this['context'],_0x22d027=_0x12778e['plugins']['get']('CommentsRepository');if(_0x12778e['plugins']['get'](c)['addToReconnectionStack'](this),_0x22d027['adapter']={'addCommentThread':async({channelId:_0x1c9072,threadId:_0x16e254,comments:_0x156a4c,resolvedAt:_0x2807f4,resolvedBy:_0x1f7c75,context:_0x21c582,attributes:_0x34e69})=>{const _0x11efd1=await this['_getService'](_0x1c9072)['addCommentThread']({'commentThreadId':_0x16e254,'comments':_0x156a4c['map'](_0x603ecb=>function(_0x51b32f,_0x2d1bb8,_0x4f9727){return{'commentThreadId':_0x4f9727,'commentId':_0x51b32f['commentId'],'userId':_0x51b32f['authorId'],'content':_0x51b32f['content'],'documentId':_0x2d1bb8,'createdAt':_0x51b32f['createdAt'],'attributes':_0x51b32f['attributes']||{}};}(_0x603ecb,_0x1c9072,_0x16e254)),'resolvedAt':_0x2807f4,'resolvedBy':_0x1f7c75,'context':_0x21c582,'attributes':_0x34e69})['catch'](ut);return{'threadId':_0x11efd1['commentThreadId'],'comments':_0x11efd1['comments']};},'getCommentThread':async({channelId:_0x43ccbd,threadId:_0x4327c2})=>{const _0x363832=await this['_getService'](_0x43ccbd)['getCommentThread'](_0x4327c2)['catch'](ut);return _0x363832['deletedAt']?null:(await this['_fetchMissingUsersForThreads']([_0x363832]),{'threadId':_0x363832['commentThreadId'],'comments':_0x363832['comments']['map'](S),'context':_0x363832['context'],'resolvedAt':_0x363832['resolvedAt'],'resolvedBy':_0x363832['resolvedBy'],'attributes':_0x363832['attributes']||{}});},'updateCommentThread':async({channelId:_0x79a35a,threadId:_0x4ef5cc,context:_0x50f305,unlinkedAt:_0x181fb0,attributes:_0x1f00e9})=>this['_getService'](_0x79a35a)['updateCommentThread']({'commentThreadId':_0x4ef5cc,'context':_0x50f305,'attributes':_0x1f00e9,'unlinkedAt':_0x181fb0})['catch'](B)['catch'](ut),'resolveCommentThread':async({channelId:_0x54e5a4,threadId:_0x4e89d3})=>{const _0x134b9f=await this['_getService'](_0x54e5a4)['resolveCommentThread'](_0x4e89d3)['catch'](B)['catch'](ut);return{'threadId':_0x134b9f['commentThreadId'],'resolvedAt':_0x134b9f['resolvedAt'],'resolvedBy':_0x134b9f['resolvedBy']};},'reopenCommentThread':async({channelId:_0x1b38ca,threadId:_0x50aabc})=>this['_getService'](_0x1b38ca)['reopenCommentThread'](_0x50aabc)['catch'](B)['catch'](ut),'removeCommentThread':({channelId:_0x3328c1,threadId:_0x509dbb})=>this['_getService'](_0x3328c1)['removeCommentThread'](_0x509dbb)['catch'](B)['catch'](ut),'addComment':({channelId:_0x412048,threadId:_0x211af3,commentId:_0x1254af,content:_0x5516ba,attributes:_0x3c4f7c})=>this['_getService'](_0x412048)['addComment'](_0x211af3,_0x1254af,_0x5516ba,_0x3c4f7c)['catch'](ut),'updateComment':({channelId:_0x397ea1,threadId:_0x30c8e3,commentId:_0x3b2dc5,content:_0x7affff,attributes:_0x1c4de7})=>this['_getService'](_0x397ea1)['updateComment'](_0x30c8e3,_0x3b2dc5,_0x7affff,_0x1c4de7)['catch'](B)['catch'](ut),'removeComment':({channelId:_0x73adca,threadId:_0xcb5209,commentId:_0x468f9e})=>this['_getService'](_0x73adca)['removeComment'](_0xcb5209,_0x468f9e)['catch'](B)['catch'](ut)},_0x12778e instanceof _0x388067){const _0x37cdd1=_0x12778e['config']['get']('collaboration.channelId'),_0xb72a28=_0x12778e['plugins']['get'](i);await this['_setUpService'](_0x37cdd1);const _0x54fb4b=await this['_services']['get'](_0x37cdd1)['getConnectedSessions']();this['listenTo'](_0xb72a28,'sessionAdd:'+_0x37cdd1,(_0x4ac664,{session:_0x3a2147})=>{_0x3a2147['id']===_0xb72a28['mySessionId']&&(_0x4ac664['off'](),this['context']['plugins']['get']('Permissions')['setPermissions'](_0x3a2147['permissions'],_0x37cdd1));}),_0xb72a28['register'](_0x37cdd1,_0x54fb4b);}}async['_setUpService'](_0x36d9b7){if(this['_services']['has'](_0x36d9b7))throw new _0x11d4a3('cloudservicescommentsadapter-connect-already-connected',null,{'channelId':_0x36d9b7});const _0x4c8032=this['context']['plugins']['get']('CommentsRepository'),_0x13f1c5=new a['CommentsService'](_0x36d9b7);this['_services']['set'](_0x36d9b7,_0x13f1c5),this['listenTo'](_0x13f1c5,'commentThreadAdded',(_0x29c367,_0x619ad5)=>{const {commentThreadId:_0x83d098,documentId:_0x25c5e3,context:_0x4528a5,attributes:_0x1279ad,resolvedAt:_0x357271,resolvedBy:_0x592ef8,comments:_0x2f77d3}=_0x619ad5;_0x4c8032['getCommentThread'](_0x83d098)||_0x4c8032['addCommentThread']({'threadId':_0x83d098,'channelId':_0x25c5e3,'comments':_0x2f77d3?_0x2f77d3['map'](S):[],'context':_0x4528a5,'attributes':_0x1279ad,'resolvedAt':_0x357271,'resolvedBy':_0x592ef8,'isFromAdapter':!0x0});}),this['listenTo'](_0x13f1c5,'commentThreadUpdated',(_0x5c7e7b,{commentThreadId:_0x12cf80,documentId:_0x33fa01,context:_0x197734,unlinkedAt:_0xaed6d8,attributes:_0x441e6b})=>{_0x4c8032['getCommentThread'](_0x12cf80)&&_0x4c8032['updateCommentThread']({'threadId':_0x12cf80,'channelId':_0x33fa01,'context':_0x197734,'unlinkedAt':_0xaed6d8,'attributes':_0x441e6b,'isFromAdapter':!0x0});}),this['listenTo'](_0x13f1c5,'commentThreadResolved',(_0x45462f,{commentThreadId:_0x1b5a1d,resolvedBy:_0x4975f7,resolvedAt:_0x3bb671})=>{const _0x139ab5=_0x4c8032['getCommentThread'](_0x1b5a1d);_0x139ab5&&_0x139ab5['resolve']({'resolvedBy':_0x4975f7,'resolvedAt':_0x3bb671,'isFromAdapter':!0x0});}),this['listenTo'](_0x13f1c5,'commentThreadReopened',(_0x2f99b8,{commentThreadId:_0xcae81a})=>{const _0x3b511d=_0x4c8032['getCommentThread'](_0xcae81a);_0x3b511d&&_0x3b511d['reopen']({'isFromAdapter':!0x0});}),this['listenTo'](_0x13f1c5,'commentThreadRemoved',(_0xf11ef8,{commentThreadId:_0x89188c})=>{const _0x36771f=_0x4c8032['getCommentThread'](_0x89188c);_0x36771f&&_0x36771f['remove']({'isFromAdapter':!0x0});}),this['listenTo'](_0x13f1c5,'commentAdded',(_0x25b3ef,_0x163151)=>{const _0x53e167=_0x163151['commentThreadId'],_0xe9eae0=_0x4c8032['getCommentThread'](_0x53e167);_0xe9eae0&&_0xe9eae0['addComment']({...S(_0x163151),'isFromAdapter':!0x0});}),this['listenTo'](_0x13f1c5,'commentUpdated',(_0x3dfaac,{commentThreadId:_0x1347ac,commentId:_0x63e3f,content:_0x4512af,attributes:_0x58f1cf})=>{const _0x69a944=_0x4c8032['getCommentThread'](_0x1347ac);if(_0x69a944){const _0x29a875=_0x69a944['getComment'](_0x63e3f);_0x29a875&&_0x29a875['update']({'content':_0x4512af,'attributes':_0x58f1cf,'isFromAdapter':!0x0});}}),this['listenTo'](_0x13f1c5,'commentRemoved',(_0x3404c4,{commentThreadId:_0x43294a,commentId:_0x274d3d})=>{const _0xd6d249=_0x4c8032['getCommentThread'](_0x43294a);if(_0xd6d249){const _0x538b3a=_0xd6d249['getComment'](_0x274d3d);_0x538b3a&&_0x538b3a['remove']({'isFromAdapter':!0x0});}}),await this['_connectService'](_0x36d9b7);}['destroy'](){if(this['context']instanceof _0x388067){const _0xa3ae6=this['context']['config']['get']('collaboration.channelId');this['_terminateService'](_0xa3ae6);}}['_terminateService'](_0x441e8c){if(!this['_services']['has'](_0x441e8c))throw new _0x11d4a3('cloudservicescommentsadapter-disconnect-not-exist',null,{'channelId':_0x441e8c});this['_getService'](_0x441e8c)['disconnect'](),this['_services']['delete'](_0x441e8c);}async['reconnect'](){for(const _0x5f1a61 of this['_services']['keys']())await this['_connectService'](_0x5f1a61);if(this['context']instanceof _0x388067){const _0x265f45=this['context']['config']['get']('collaboration.channelId'),_0x185866=this['context']['plugins']['get'](i);_0x185866['unregister'](_0x265f45);const _0x3ff9ba=await this['_services']['get'](_0x265f45)['getConnectedSessions']();_0x185866['register'](_0x265f45,_0x3ff9ba);}}async['_connectService'](_0x38065c){const {connection:_0x300cac}=this['context']['plugins']['get'](c),_0x4f0253=this['context']['plugins']['get']('CommentsRepository'),_0x365cc4=this['_services']['get'](_0x38065c),_0x5339b9=await _0x365cc4['connect'](_0x300cac);await this['_fetchMissingUsersForThreads'](_0x5339b9);const _0x319574=new Set(Array['from'](_0x4f0253['getCommentThreads']({'channelId':_0x38065c}),_0x157c85=>_0x157c85['id']));for(const _0x1af0c2 of _0x5339b9)_0x1af0c2['deletedAt']||_0x319574['delete'](_0x1af0c2['commentThreadId']);for(const _0xe078d0 of _0x319574)_0x4f0253['getCommentThread'](_0xe078d0)['remove']({'isFromAdapter':!0x0});for(const _0x5eed1a of _0x5339b9){let _0x702f99=_0x4f0253['getCommentThread'](_0x5eed1a['commentThreadId']);const {commentThreadId:_0x8feea,context:_0xe94971,attributes:_0x345f9d,resolvedBy:_0x2ccc93,resolvedAt:_0x409ab8,unlinkedAt:_0x1515b4,deletedAt:_0x194031}=_0x5eed1a;if(_0x194031)continue;_0x702f99||(_0x702f99=_0x4f0253['addCommentThread']({'channelId':_0x38065c,'threadId':_0x8feea,'context':_0xe94971,'attributes':_0x345f9d||{},'resolvedBy':_0x2ccc93,'resolvedAt':_0x409ab8,'unlinkedAt':_0x1515b4,'isFromAdapter':!0x0}));const _0x3925a4=new Set(Array['from'](_0x702f99['comments'],_0x5a2d0c=>_0x5a2d0c['id']));for(const _0x489922 of _0x5eed1a['comments'])_0x3925a4['delete'](_0x489922['commentId']);for(const _0x4ace49 of _0x3925a4)_0x702f99['getComment'](_0x4ace49)['remove']({'isFromAdapter':!0x0});for(const _0xac197f of _0x5eed1a['comments']){const _0x51139e=_0x702f99['getComment'](_0xac197f['commentId']);_0x51139e?_0x51139e['content']!==_0xac197f['content']&&_0x51139e['update']({'content':_0xac197f['content'],'isFromAdapter':!0x0}):_0x702f99['addComment'](Object['assign'](S(_0xac197f),{'isFromAdapter':!0x0}));}}}['_getService'](_0x34507e){if(!this['_services']['has'](_0x34507e))throw new _0x11d4a3('cloudservicescommentsadapter-service-not-exist',null,{'channelId':_0x34507e});return this['_services']['get'](_0x34507e);}async['_fetchMissingUsersForThreads'](_0x9d0051){const _0x5b357e=this['context']['plugins']['get'](_0x5e26c0),{connection:_0xff3cb9}=this['context']['plugins']['get'](c),_0x57cf3f=new Set();for(const {resolvedBy:_0x5abd0b,comments:_0x59711a}of _0x9d0051){_0x5abd0b&&!_0x5b357e['getUser'](_0x5abd0b)&&_0x57cf3f['add'](_0x5abd0b);for(const {userId:_0x56bf40}of _0x59711a)_0x5b357e['getUser'](_0x56bf40)||_0x57cf3f['add'](_0x56bf40);}if(0x0===_0x57cf3f['size'])return;const _0x1c8ceb=await dt['getMany'](_0xff3cb9,Array['from'](_0x57cf3f));for(const _0x534a68 of _0x1c8ceb)_0x5b357e['getUser'](_0x534a68['id'])||_0x5b357e['addUser'](_0x534a68);}}async function B(_0x188669){if('404'!==_0x188669['code'])throw _0x188669;}function ut(_0xd61bc){if((_0x5490d0=_0xd61bc)['message']['startsWith']('cloud-services-internal-error:\x20Comments\x20Service\x20is\x20not\x20connected.')||_0x5490d0['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x5490d0['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.'))return new Promise(()=>{});var _0x5490d0;throw _0xd61bc;}function S(_0xe6d5e7){return{'threadId':_0xe6d5e7['commentThreadId'],'commentId':_0xe6d5e7['commentId'],'content':_0xe6d5e7['content'],'createdAt':_0xe6d5e7['createdAt'],'authorId':_0xe6d5e7['userId'],'attributes':_0xe6d5e7['attributes']||{}};}class f extends _0x29f929{static ['TrackChangesService']=/* #__PURE__ -- @preserve */
27
- ((()=>et)());['_bufferedRequests'];['_trackChangesService'];static get['requires'](){return[a,'TrackChangesEditing',c];}static get['pluginName'](){return'CloudServicesTrackChangesAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0xf5bcb9){super(_0xf5bcb9);const _0x1888e7=this['editor']['config']['get']('collaboration.channelId');this['_bufferedRequests']=new Map(),this['_trackChangesService']=new f['TrackChangesService'](_0x1888e7);}['init'](){const _0x575079=this['editor']['plugins']['get'](c),_0x250660=this['editor']['plugins']['get']('TrackChangesEditing');return _0x250660['adapter']={'getSuggestion':async _0x10857b=>{await this['_waitForServiceReady']();const _0x4292db=await this['_trackChangesService']['get'](_0x10857b)['catch'](R);return await this['_fetchMissingUsersForThreads']([_0x4292db]),_0x4292db;},'addSuggestion':async({id:_0x22d569,type:_0x733830,data:_0x1d5ed8,originalSuggestionId:_0x2e7dd0,attributes:_0x53d843})=>{await this['_waitForServiceReady']();const _0x4304d3={'id':_0x22d569,'type':_0x733830,'data':_0x1d5ed8,'originalSuggestionId':_0x2e7dd0,'attributes':_0x53d843},_0x1b6c60=await this['_trackChangesService']['add'](_0x22d569,_0x733830,_0x1d5ed8,_0x2e7dd0,_0x53d843)['catch'](_0x3ecee0=>{if(ft(_0x3ecee0))return new Promise(_0x385430=>{this['_bufferedRequests']['set'](_0x22d569,{'resolve':_0x385430,'suggestionData':_0x4304d3});});throw _0x3ecee0;});return this['_bufferedRequests']['delete'](_0x22d569),_0x1b6c60;},'updateSuggestion':async(_0x501723,_0x383be2)=>{if(await this['_waitForServiceReady'](),'open'!==_0x383be2['state'])return this['_trackChangesService']['update'](_0x501723,_0x383be2)['catch'](R);}},this['listenTo'](this['_trackChangesService'],'suggestionUpdated',(_0x1219b1,_0x6e1f08)=>{_0x250660['hasSuggestion'](_0x6e1f08['id'])&&(_0x250660['getSuggestion'](_0x6e1f08['id'])['attributes']=_0x6e1f08['attributes']);}),this['_trackChangesService']['connect'](_0x575079['connection'])['then'](_0x359e99=>(_0x575079['addToReconnectionStack'](this),this['_fetchMissingUsersForThreads'](_0x359e99)['then'](()=>{for(const _0x7086 of _0x359e99){_0x250660['addSuggestionData'](_0x7086)['_saved']=!0x0;}})));}async['reconnect'](){const _0x3e1b0a=this['editor']['plugins']['get']('TrackChangesEditing'),{connection:_0xe7cec}=this['editor']['plugins']['get'](c),_0x3dcf7c=await this['_trackChangesService']['connect'](_0xe7cec);await this['_fetchMissingUsersForThreads'](_0x3dcf7c);for(const {suggestionData:_0xd92b15,resolve:_0x2c9710}of this['_bufferedRequests']['values']()){let _0x4a21a9=_0x3dcf7c['find'](_0x1ce747=>_0x1ce747['id']===_0xd92b15['id']);_0x4a21a9||(_0x4a21a9=await this['_trackChangesService']['add'](_0xd92b15['id'],_0xd92b15['type'],_0xd92b15['data'],_0xd92b15['originalSuggestionId'])),_0x2c9710(_0x4a21a9);}for(const _0x376517 of _0x3dcf7c)_0x3e1b0a['hasSuggestion'](_0x376517['id'])||_0x3e1b0a['addSuggestionData'](_0x376517);}async['_waitForServiceReady'](){this['_trackChangesService']['isConnected']||await new Promise(_0x17a3cd=>{this['listenTo'](this['_trackChangesService'],'connected',_0x4090d7=>{_0x4090d7['off'](),_0x17a3cd();});});}async['_fetchMissingUsersForThreads'](_0x4b6c4f){const _0x425e43=this['editor']['plugins']['get'](_0x5e26c0),{connection:_0x33a1e4}=this['editor']['plugins']['get'](c),_0x44caf7=new Set();for(const {authorId:_0x2c5024}of _0x4b6c4f)_0x425e43['getUser'](_0x2c5024)||_0x44caf7['add'](_0x2c5024);if(0x0===_0x44caf7['size'])return;const _0x3ea2cf=await dt['getMany'](_0x33a1e4,Array['from'](_0x44caf7));for(const _0x39de9d of _0x3ea2cf)_0x425e43['getUser'](_0x39de9d['id'])||_0x425e43['addUser'](_0x39de9d);}}function R(_0x156683){if(ft(_0x156683))return new Promise(()=>{});throw _0x156683;}function ft(_0x177041){return _0x177041['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x177041['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}class m extends _0x29f929{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 _0x4767d5=this['editor']['plugins']['get'](c),_0x5c9c2e=this['editor']['plugins']['get']('CommentsEditing'),_0x4e37c3=this['editor']['plugins']['get'](a);return this['editor']['data']['once']('ready',()=>{this['listenTo'](_0x4767d5,'change:state',(_0x2040d6,_0x5037a1,_0x2a8c15)=>{_0x5c9c2e['isThreadsLoadingPaused']='connected'!==_0x2a8c15;});}),this['listenTo'](_0x4767d5,'change:state',(_0x50d675,_0x40f018,_0x1834cd)=>{this['editor']['plugins']['get']('CommentsRepository')['switchReadOnly']('connected'!==_0x1834cd);}),_0x4e37c3['_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 _0x29f929{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 _0x29f929{static ['RevisionHistoryService']=/* #__PURE__ -- @preserve */
28
- ((()=>it)());['_lastRequestId'];['_revisionTracker'];['_revisionHistoryService'];['_oldOffset'];static get['requires'](){return[c,l,'RevisionTracker',i,_0x5e26c0];}static get['pluginName'](){return'CloudServicesRevisionHistoryAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x3ba1f7){super(_0x3ba1f7);const _0x429663=this['editor']['config']['get']('collaboration.channelId');this['_lastRequestId']=null,this['_revisionTracker']=this['editor']['plugins']['get']('RevisionTracker'),this['_revisionHistoryService']=new u['RevisionHistoryService'](_0x429663);}async['init'](){const _0x5d874b=this['editor']['plugins']['get'](l),_0x2dfbe0=_0x5d874b['serverHistory'],_0x1b1770=this['editor']['plugins']['get'](c);this['_revisionTracker']['setSource']({'history':_0x2dfbe0,'getLatestVersion':()=>this['_getLatestVersion'](),'getCurrentRevisionId':()=>_0x5d874b['sessionId']});const _0x29aaf2=this['editor']['config']['get']('cloudServices.bundleVersion')||nt,_0x4860f0=await tt['isBundleUploaded'](_0x1b1770['connection'],_0x29aaf2);this['_revisionTracker']['adapter']={'getRevision':async({revisionId:_0x35777f})=>(await this['_waitForServiceReady'](),await this['_revisionHistoryService']['getRevision'](_0x35777f)),'updateRevisions':async _0x436954=>{await this['_waitForServiceReady']();const _0x4f7d24=this['_revisionTracker']['currentRevision'];if(_0x4860f0&&0x1===_0x436954['length']&&_0x436954[0x0]['id']===_0x4f7d24['id'])return _0x436954;for(const _0x4c7615 of _0x436954)_0x4c7615['id']===_0x4f7d24['id']&&(_0x4c7615['isEmptyCurrent']=_0x4c7615['fromVersion']===_0x4c7615['toVersion']);return this['_revisionHistoryService']['updateRevisions'](_0x436954,this['_lastRequestId'])['then'](_0x17a1c3=>(this['_lastRequestId']=_0x17a1c3,_0x436954))['catch'](_0x38d6a5=>{if(st(_0x38d6a5)||'400'===_0x38d6a5['code']&&void 0x0!==_0x38d6a5['data']['wrongRequestId']){for(const _0x568d21 of _0x436954){!this['_revisionTracker']['repository']['getRevision'](_0x568d21['id'])||this['_revisionTracker']['_bufferUpdate'](_0x568d21['id'],_0x568d21,!0x1);}if(st(_0x38d6a5))throw _0x38d6a5;return _0x436954;}throw _0x38d6a5;});}},this['listenTo'](this['_revisionHistoryService'],'revisionsUpdated',(_0x4ea530,{revisionsData:_0xe49dbd,requestId:_0x5ea3bd})=>{Math['max'](..._0xe49dbd['map'](_0x2cff35=>_0x2cff35['toVersion']))>this['_getLatestVersionFromServerOperations']()-0x1?this['_getLatestVersion']()['then'](()=>{this['_handleRevisionsUpdate'](_0xe49dbd,_0x5ea3bd);}):this['_handleRevisionsUpdate'](_0xe49dbd,_0x5ea3bd);});const {revisions:_0x3e854a,requestId:_0x312a2c}=await this['_revisionHistoryService']['connect'](_0x1b1770['connection']);_0x1b1770['addToReconnectionStack'](this),this['_lastRequestId']=_0x312a2c,await this['_fetchMissingUsers'](_0x3e854a);for(const _0x5199c4 of _0x3e854a)this['_revisionTracker']['addRevisionData'](_0x5199c4);this['listenTo'](_0x5d874b,'change:_isConnected',(_0x42a8b2,_0x2f297f,_0x31b825)=>{_0x31b825&&(this['_oldOffset']=_0x5d874b['_offset'],_0x42a8b2['off']());}),this['_revisionTracker']['bind']('isEnabled')['to'](_0x1b1770,'state',_0xdbcc4f=>_0xdbcc4f===_0x54acd2['CONNECTED']);}async['reconnect'](){const _0x4bf523=this['editor']['plugins']['get'](c),_0x3a8056=this['editor']['plugins']['get'](l),_0x22ee74=async()=>{const _0x10950b=this['_revisionTracker']['currentRevision'],_0x5b4178=_0x10950b['id'],_0x1ed41d=_0x5b4178!==_0x3a8056['sessionId'];if(_0x1ed41d){const _0x2d2dde=_0x3a8056['_offset']-this['_oldOffset'],_0x577b43=this['_getLatestVersionFromServerOperations']();this['_revisionTracker']['_revisionDataBuilder']['reInit']();if(_0x10950b['toVersion']+_0x2d2dde!==_0x577b43){const _0x4eaad8=_0x10950b['fromVersion']+_0x2d2dde,_0x43f225=this['editor']['plugins']['get'](_0x5e26c0),_0xc0df46=this['_revisionTracker']['buildRevisionData']({'revision':_0x10950b,'from':_0x4eaad8,'to':_0x577b43});_0xc0df46['id']=_0x10950b['id'];const _0x55d287=_0xc0df46['authorsIds']['map'](_0xc64883=>_0x43f225['getUser'](_0xc64883));_0x10950b['_update']({..._0xc0df46,'authors':_0x55d287},!0x0),this['_revisionTracker']['_bufferUpdate'](_0x10950b['id'],_0xc0df46,!0x0);}this['_revisionTracker']['_startingVersion']=_0x577b43,(_0x10950b['toVersion']===_0x10950b['fromVersion']&&!this['_revisionTracker']['_bufferedUpdates']['has'](_0x5b4178)&&this['_revisionTracker']['repository']['_revisions']['remove'](_0x5b4178),this['_revisionTracker']['_createCurrentRevision'](_0x577b43));}const {revisions:_0x37bf52,requestId:_0x574c30}=await this['_revisionHistoryService']['reconnect'](_0x4bf523['connection'],this['_lastRequestId']);_0x1ed41d&&_0x37bf52['length']>0x0?_0x3a8056['_handleReconnectionError']():(await this['_fetchMissingUsers'](_0x37bf52),this['_handleRevisionsUpdate'](_0x37bf52,_0x574c30),this['_revisionTracker']['sendBufferedUpdates']());};return _0x3a8056['_isConnected']?_0x22ee74():new Promise((_0x27dd56,_0xffab88)=>{_0x3a8056['once']('change:_isConnected',()=>{_0x22ee74()['then'](_0x27dd56)['catch'](_0xffab88);});});}['destroy'](){super['destroy']();}async['_waitForServiceReady'](){this['_revisionHistoryService']['isConnected']||await new Promise(_0x48d889=>{this['listenTo'](this['_revisionHistoryService'],'connected',_0x9daa76=>{_0x9daa76['off'](),_0x48d889();});});}['_getLatestVersionFromServerOperations'](){const _0x132ecf=this['editor']['plugins']['get'](l)['serverHistory']['getOperations']()['reverse']();for(const _0xa38570 of _0x132ecf)if('marker'!==_0xa38570['type']||_0xa38570['affectsData'])return _0xa38570['baseVersion']+0x1;}['_getLatestVersion'](){const _0x130dde=this['editor']['plugins']['get'](l);return new Promise(_0x557945=>{_0x130dde['_isPendingUpdate']?_0x130dde['once']('change:_isPendingUpdate',()=>{_0x557945(this['_getLatestVersionFromServerOperations']());}):_0x557945(this['_getLatestVersionFromServerOperations']());});}['_handleRevisionsUpdate'](_0x3dd064,_0x24122d){const _0x50411f=this['_revisionTracker']['repository'];this['_lastRequestId']=_0x24122d;for(const _0x1acb45 of _0x3dd064){const _0x77689a=_0x50411f['getRevision'](_0x1acb45['id']);if(_0x77689a){if((_0x1acb45['fromVersion']||_0x1acb45['toVersion'])&&(_0x1acb45['diffData']=null),_0x77689a===this['_revisionTracker']['currentRevision']){const _0x5c7b37=Math['max'](_0x77689a['toVersion'],_0x1acb45['toVersion']),_0xce6249=Math['max'](_0x77689a['fromVersion'],_0x1acb45['fromVersion']);let _0x394ba5;_0x77689a['toVersion']===_0x1acb45['toVersion']&&_0x77689a['fromVersion']===_0x1acb45['fromVersion']?(_0x394ba5=!0x0,this['_preventResendingRevisionData'](_0x1acb45)):_0x1acb45['toVersion']===_0x5c7b37&&_0x1acb45['fromVersion']===_0xce6249?_0x394ba5=!0x1:(_0x77689a['toVersion']===_0x5c7b37&&_0x77689a['fromVersion']===_0xce6249||this['_fixRevision']({'revision':_0x77689a,'from':_0xce6249,'to':_0x5c7b37}),_0x394ba5=!0x0),_0x394ba5&&(delete _0x1acb45['fromVersion'],delete _0x1acb45['toVersion'],delete _0x1acb45['diffData'],delete _0x1acb45['createdAt'],delete _0x1acb45['authorsIds']);}this['_revisionTracker']['setRevisionData'](_0x1acb45),this['_preventResendingRevisionData'](_0x1acb45);}else this['_revisionTracker']['addRevisionData'](_0x1acb45);}const _0x5e43ba=_0x50411f['getRevisions']();_0x5e43ba['reverse']();for(let _0xed854d=0x0;_0xed854d<_0x5e43ba['length']-0x1;_0xed854d++){const _0x1d2029=_0x5e43ba[_0xed854d],_0x441a93=_0x5e43ba[_0xed854d+0x1];if(_0x1d2029['fromVersion']<_0x441a93['toVersion']){const _0x22a43f=_0x441a93['toVersion'],_0x5d9a7d=Math['max'](_0x22a43f,_0x1d2029['toVersion']);this['_fixRevision']({'revision':_0x1d2029,'from':_0x22a43f,'to':_0x5d9a7d});}}}['_fixRevision']({revision:_0x4f64f0,from:_0x3f50ac,to:_0xa04b3b}={}){const _0x516f38=this['editor']['plugins']['get'](_0x5e26c0),_0x9eef83=this['_revisionTracker']['buildRevisionData']({'revision':_0x4f64f0,'from':_0x3f50ac,'to':_0xa04b3b});_0x9eef83['authors']=_0x9eef83['authorsIds']['map'](_0x2846b1=>_0x516f38['getUser'](_0x2846b1)),_0x4f64f0['_update'](_0x9eef83);}['_preventResendingRevisionData'](_0x1a6601){const _0xe8d6dd={};_0xe8d6dd['id']=_0x1a6601['id'];for(const _0xb352fa of Object['keys'](_0x1a6601))'id'!==_0xb352fa&&(_0xe8d6dd[_0xb352fa]=void 0x0);this['_revisionTracker']['_bufferUpdate'](_0xe8d6dd['id'],_0xe8d6dd,!0x0);}async['_fetchMissingUsers'](_0x2a8b4b){const _0x11e712=this['editor']['plugins']['get'](_0x5e26c0),{connection:_0x47b135}=this['editor']['plugins']['get'](c),_0x42ad05=new Set();for(const _0x55e1e4 of _0x2a8b4b){for(const _0x501ebb of _0x55e1e4['authorsIds'])_0x525387(_0x501ebb);_0x55e1e4['creatorId']&&_0x525387(_0x55e1e4['creatorId']);}if(0x0===_0x42ad05['size'])return;const _0xfd61b4=await dt['getMany'](_0x47b135,Array['from'](_0x42ad05));for(const _0x1dc44a of _0xfd61b4)_0x11e712['getUser'](_0x1dc44a['id'])||_0x11e712['addUser'](_0x1dc44a);function _0x525387(_0x34c112){_0x11e712['getUser'](_0x34c112)||_0x42ad05['add'](_0x34c112);}}}function st(_0x31f2ed){return _0x31f2ed['message']['startsWith']('cloud-services-internal-error:\x20Revision\x20History\x20Service\x20is\x20not\x20connected.')||_0x31f2ed['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x31f2ed['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}class g extends _0x29f929{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 _0xebb4e5{constructor(_0x4b808a){super(_0x4b808a);const _0x5df39e=this['bindTemplate'];this['set']('usersCount',0x0),this['set']('isHidden',!0x0),this['setTemplate']({'tag':'div','attributes':{'class':['ck','ck-presence-list__counter',_0x5df39e['if']('isHidden','ck-presence-list__counter--hidden')]},'children':[{'text':_0x5df39e['to']('usersCount',_0x21d026=>q(_0x4b808a,'CONNECTED_USERS',_0x21d026))}]});}}class es extends _0xebb4e5{['items'];['keystrokes'];constructor(_0xd634ba){super(_0xd634ba);const _0x574e1d=this['bindTemplate'];this['items']=this['createCollection'](),this['keystrokes']=new _0x171814(),this['set']({'hasPopup':!0x1,'isExpanded':!0x1}),this['setTemplate']({'tag':'div','attributes':{'aria-haspopup':_0x574e1d['if']('hasPopup'),'aria-expanded':_0x574e1d['to']('isExpanded',_0x3b6b2d=>this['hasPopup']&&String(_0x3b6b2d)),'aria-label':_0x574e1d['to']('hasPopup',_0x219049=>q(_0xd634ba,_0x219049?'Collapsed\x20connected\x20users\x20list\x20(press\x20ENTER\x20to\x20open\x20it)':'Connected\x20users\x20list')),'role':'list','tabindex':_0x574e1d['to']('hasPopup',_0x1a6cf6=>!!_0x1a6cf6&&0x0),'class':['ck','ck-presence-list__list']},'children':this['items'],'on':{'click':_0x574e1d['to'](()=>this['fire']('execute'))}}),this['on']('change:hasPopup',(_0xea5848,_0x4ce84a,_0x1e3705)=>{this['element']&&(_0x1e3705?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 _0xebb4e5{['counterView'];['inlineListView'];constructor(_0x3dd22c){super(_0x3dd22c);const _0x4a3f99=this['bindTemplate'];this['set']('isCollapsed',!0x0),this['counterView']=new ts(this['locale']),this['inlineListView']=new es(_0x3dd22c),this['inlineListView']['bind']('hasPopup')['to'](this,'isCollapsed'),this['listenTo'](this['inlineListView']['items'],'change',()=>{for(const _0x5ca1fa of this['inlineListView']['items'])_0x5ca1fa['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',_0x4a3f99['if']('isCollapsed','ck-presence-list--collapsed')]},'children':[this['counterView'],this['inlineListView']]});}}class j extends _0xebb4e5{['listWrapperView'];constructor(_0x59aa29,_0x2ed023){super(_0x59aa29),this['listWrapperView']=new mt(_0x59aa29,_0x2ed023),this['setTemplate']({'tag':'div','attributes':{'tabindex':-0x1,'role':'application','class':['ck','ck-presence-list__dropdown-list'],'aria-label':q(_0x59aa29,'Connected\x20users\x20list\x20dropdown\x20menu')},'children':[this['listWrapperView']]});}}class mt extends _0x218bba{constructor(_0xe45d81,_0x32f637){super(_0xe45d81);const _0x307bc0=this['bindTemplate'];this['set']('_isScrollable',!0x1),this['setTemplate']({'tag':_0x32f637?'div':'ul','attributes':{'class':['ck','ck-reset','ck-list','ck-presence-list__dropdown-list-wrapper',_0x307bc0['if']('_isScrollable','ck-presence-list__dropdown-list-wrapper_scrollable')],'role':_0x307bc0['to']('role'),'aria-label':_0x307bc0['to']('ariaLabel'),'aria-labelledby':_0x307bc0['to']('ariaLabelledBy')},'children':this['items']}),this['listenTo'](_0x1f34b0['window'],'resize',()=>this['checkIfScrollable']()),this['items']['on']('change',()=>this['checkIfScrollable']());}['render'](){super['render'](),this['checkIfScrollable']();}['checkIfScrollable'](){const _0x490dfe=this['element'];_0x490dfe&&(this['_isScrollable']=Math['max'](_0x490dfe['scrollHeight'],_0x490dfe['clientHeight'])>0.8*window['innerHeight']);}}class k extends rt{['userView'];constructor(_0x159bae,_0x2282c1,_0x43b37d){super(_0x159bae);const _0x34678c=this['bindTemplate'];this['userView']=new ct(_0x159bae,_0x2282c1);const _0xf4d250={'tag':'li','attributes':{'class':['ck','ck-presence-list__dropdown-list-item'],'tabindex':-0x1,'role':'presentation','aria-label':_0x2282c1['name']},'children':[this['userView'],{'tag':'span','attributes':{'class':['ck','ck-user__full-name']},'children':[{'text':_0x2282c1['name']}]},{'tag':'span','attributes':{'class':['ck','ck-presence-list__marker',_0x2282c1['color']['getBackgroundColorClass']()],'aria-hidden':'true'}}]};_0x43b37d&&(_0xf4d250['tag']='button',_0xf4d250['on']={'click':_0x34678c['to'](()=>this['fire']('execute'))}),this['setTemplate'](_0xf4d250);}['focus'](){this['element']['focus']();}}class y extends _0xebb4e5{['userView'];['markerView'];constructor(_0x4e7355,_0x21008d,_0x433f47){super(_0x4e7355);const _0x4e0914=this['bindTemplate'];this['set']('isFocusable',!0x1),this['set']('hasTooltip',!0x0),this['set']('tooltipPosition',''),this['userView']=new ct(_0x4e7355,_0x21008d),this['markerView']=new at(_0x4e7355,_0x21008d);const _0x3479f6=new ot(_0x4e7355);_0x3479f6['template']['tag']='span',_0x3479f6['text']=_0x21008d['name'];const _0x40a137={'tag':'div','attributes':{'class':['ck','ck-presence-list__list-item'],'role':'listitem','tabindex':_0x4e0914['to']('isFocusable',_0x26cdb2=>!!_0x26cdb2&&0x0),'aria-labelledby':_0x3479f6['id'],'data-cke-tooltip-text':this['userView']['name'],'data-cke-tooltip-position':_0x4e0914['to']('tooltipPosition'),'data-cke-tooltip-disabled':_0x4e0914['to']('hasTooltip',_0x3152a8=>!_0x3152a8),'data-cke-tooltip-class':'ck-presence-list__list-item__tooltip'},'children':[this['userView'],this['markerView'],_0x3479f6]};_0x433f47&&(_0x40a137['tag']='button',_0x40a137['on']={'click':_0x4e0914['to'](()=>this['fire']('execute'))}),this['setTemplate'](_0x40a137);}}class at extends _0xebb4e5{constructor(_0x1d458e,_0xe22a45){super(_0x1d458e),this['setTemplate']({'tag':'span','attributes':{'class':['ck','ck-presence-list__marker',_0xe22a45['color']['getBackgroundColorClass']()],'aria-hidden':'true'}});}}const A={'collapseAt':0x6,'displayMe':!0x0};class r extends _0xeb5452{['currentDisplayedUsers'];['balloonPanelView'];['view'];['presenceDropdownView'];['_bodyCollection']=null;constructor(_0x101f7a){super(_0x101f7a),this['context']['config']['define']('presenceList',A);const _0x5785b4=_0x101f7a['config']['get']('presenceList.collapseAt');if('number'!=typeof _0x5785b4)throw new _0x11d4a3('presencelist-collapseat-invalid-format',this);if(_0x5785b4<0x1)throw new _0x11d4a3('presencelist-collapseat-invalid-format',this);this['_allConnectedUsers']=this['context']['plugins']['get'](i)['allConnectedUsers'],this['set']('usersCount',0x0),this['currentDisplayedUsers']=new _0x404462(),this['balloonPanelView']=new _0x4e3fc0(),this['balloonPanelView']['class']='ck\x20ck-presence-list__balloon',this['view']=this['_createView'](),this['presenceDropdownView']=void 0x0;}static get['requires'](){return[i];}['init'](){for(const _0xd10bf4 of this['_allConnectedUsers'])this['_handleUserAdd'](_0xd10bf4);this['listenTo'](this['_allConnectedUsers'],'add',(_0x2d6036,_0x384d5a)=>{this['_handleUserAdd'](_0x384d5a);}),this['listenTo'](this['_allConnectedUsers'],'remove',(_0x344067,_0x5c9227)=>{this['_handleUserRemove'](_0x5c9227);});}['_createView'](){const _0x3d2c06=this['context'],_0x3753b4=new L(this['context']['locale']),_0x4f91b8=this['balloonPanelView'];if(!_0x2e96cc(_0x3d2c06['config']['get']('presenceList.container')))throw new _0x11d4a3('presencelist-missing-container',this);return _0x3753b4['counterView']['bind']('usersCount')['to'](this),_0x3753b4['bind']('isCollapsed')['to'](this,'usersCount',_0x286150=>{const {collapseAt:_0x1bed02,displayMe:_0x1a4be9}=_0x3d2c06['config']['get']('presenceList'),_0x163ac1=_0x286150>=_0x1bed02;return _0x3753b4['counterView']['isHidden']=!(0x1==_0x286150&&_0x1a4be9||_0x163ac1),_0x163ac1||this['hideDropdown'](),_0x163ac1;}),_0x3753b4['inlineListView']['items']['bindTo'](this['currentDisplayedUsers'])['using'](_0x306f3e=>{const _0x400fdb=_0x3d2c06['config']['get']('presenceList'),_0x5ed921=new y(_0x3d2c06['locale'],_0x306f3e,!!_0x400fdb['onClick']);return _0x5ed921['bind']('hasTooltip')['to'](_0x3753b4,'isCollapsed',_0x3a3e15=>!_0x3a3e15),_0x5ed921['bind']('isFocusable')['to'](_0x3753b4,'isCollapsed',_0x3ad58c=>!_0x3ad58c),_0x400fdb['onClick']&&this['listenTo'](_0x5ed921,'execute',()=>{this['view']['isCollapsed']||_0x400fdb['onClick'](_0x306f3e,_0x5ed921['element']);}),_0x5ed921;}),this['listenTo'](_0x3753b4['inlineListView'],'execute',()=>{this['presenceDropdownView']?this['hideDropdown']():this['view']['isCollapsed']&&this['showDropdown']();}),_0x3753b4['inlineListView']['keystrokes']['set']('Enter',(_0x5d44c9,_0xdece90)=>{this['view']['isCollapsed']&&(this['showDropdown'](),_0xdece90());}),_0x3753b4['render'](),_0x4f91b8['render'](),_0x2d394f({'emitter':_0x3753b4,'activator':()=>_0x4f91b8['isVisible'],'contextElements':[_0x4f91b8['element'],_0x3753b4['inlineListView']['element']],'callback':()=>this['hideDropdown']()}),_0x3d2c06['config']['get']('presenceList.container')['appendChild'](_0x3753b4['element']),this['_bodyCollection']=new _0xa3bc39(this['context']['locale']),this['_bodyCollection']['attachToDom'](),this['_bodyCollection']['add'](this['balloonPanelView']),_0x3753b4;}['_handleUserAdd'](_0x48db27){if(!this['context']['config']['get']('presenceList.displayMe')&&_0x48db27['isMe'])return;const _0x333693=this['context']['config']['get']('presenceList.collapseAt')-0x1;this['usersCount']++,this['currentDisplayedUsers']['length']==_0x333693&&this['currentDisplayedUsers']['length']>0x1&&this['currentDisplayedUsers']['remove'](0x1);const _0x4803d6=_0x48db27['isMe']?0x0:this['currentDisplayedUsers']['length'];this['currentDisplayedUsers']['add'](_0x48db27,_0x4803d6);}['_handleUserRemove'](_0x42d7e1){if(this['usersCount']--,this['currentDisplayedUsers']['get'](_0x42d7e1['id'])&&(this['currentDisplayedUsers']['remove'](_0x42d7e1['id']),this['currentDisplayedUsers']['length']<this['usersCount'])){for(const _0x2e3ad8 of Array['from'](this['_allConnectedUsers'])['reverse']())if(!this['currentDisplayedUsers']['get'](_0x2e3ad8['id']))return void this['currentDisplayedUsers']['add'](_0x2e3ad8,Math['min'](this['currentDisplayedUsers']['length'],0x1));}}['showDropdown'](){if(this['presenceDropdownView'])return;const _0x168b81=this['context']['config']['get']('presenceList');this['presenceDropdownView']=new j(this['context']['locale'],!!_0x168b81['onClick']),this['view']['inlineListView']['isExpanded']=!0x0;const {listWrapperView:_0x38fc85}=this['presenceDropdownView'];_0x38fc85['items']['bindTo'](this['_allConnectedUsers'])['using'](_0x338699=>{if(!_0x168b81['displayMe']&&_0x338699['isMe'])return null;const _0xa82ca3=new k(this['context']['locale'],_0x338699,!!_0x168b81['onClick']);return _0x168b81['onClick']&&this['listenTo'](_0xa82ca3,'execute',()=>{_0x168b81['onClick'](_0x338699,_0xa82ca3['element']);}),_0xa82ca3;}),this['balloonPanelView']['content']['add'](this['presenceDropdownView']),this['balloonPanelView']['pin']({'target':this['view']['inlineListView']['element']}),_0x38fc85['focus'](),_0x38fc85['checkIfScrollable']();const _0x3d13b6=(_0xe4dd21,_0x4d0fb2)=>{this['hideDropdown'](),this['view']['inlineListView']['focus'](),_0x4d0fb2();};_0x38fc85['keystrokes']['set']('Esc',_0x3d13b6),_0x38fc85['keystrokes']['set']('Shift+Tab',_0x3d13b6),_0x38fc85['keystrokes']['set']('Tab',(_0x1c35ba,_0x180ed7)=>{!function(_0xbe98ad){const _0x6d5cc1=['a','button','input','select','textarea','[tabindex]','[contenteditable]']['map'](_0x29c7e9=>_0x29c7e9+':not([disabled]):not([tabindex=\x22-1\x22])')['join'](','),_0x3346fc=[...document['body']['querySelectorAll'](_0x6d5cc1)]['filter'](_0x29ac2d=>_0x29ac2d===document['activeElement']||_0x29ac2d['offsetWidth']+_0x29ac2d['offsetHeight']>0x0)['sort']((_0x5032c7,_0x30e6e5)=>(_0x5032c7['tabIndex']||0x0)-(_0x30e6e5['tabIndex']||0x0)),_0x482f15=_0x3346fc['indexOf'](_0xbe98ad),_0x1a3241=_0x3346fc[(_0x482f15+0x1)%_0x3346fc['length']];_0x1a3241&&_0x1a3241['focus']();}(this['view']['element']),this['hideDropdown'](),_0x180ed7();}),_0x38fc85['focusTracker']['add'](this['view']['element']),_0x38fc85['focusTracker']['on']('change:isFocused',(_0x27ef29,_0x4bddd3,_0x5cb02c)=>{_0x5cb02c||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 _0xeb5452{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,i as Sessions};
23
+ import{ContextPlugin as _0x39c783,Plugin as _0x82c6ed,PendingActions as _0x2b8738,Context as _0x2f2afa}from'@ckeditor/ckeditor5-core/dist/index.js';import{DomEmitterMixin as _0xea8f84,CKEditorError as _0x45d95c,Collection as _0x107994,global as _0x3c7de5,version as nt,uid as _0x237aaa,KeystrokeHandler as _0x3a5c99}from'@ckeditor/ckeditor5-utils/dist/index.js';import{Notification as _0x41acef,View as _0x22b55f,ListView as _0x4e8cc6,ListItemView as rt,LabelView as ot,BalloonPanelView as _0x1d7d19,clickOutsideHandler as _0x1d9fd0,BodyCollection as _0x45e834}from'@ckeditor/ckeditor5-ui/dist/index.js';import{LiveRange as ht,History as _0xdb1047,NoOperation as _0x318c00,InsertOperation as _0x3d617a,MarkerOperation as _0x35ef4d,RootAttributeOperation as _0x4ef5b1,transformSets as _0xc03069,OperationFactory as _0x33f511}from'@ckeditor/ckeditor5-engine/dist/index.js';import{WebSocketGateway as lt,WEB_SOCKET_GATEWAY_STATES as _0xaa45d7,CollaborativeEditingService as _0x1ff92e,User as dt,CommentsService as _0x5d25ff,TrackChangesService as et,RevisionHistoryService as it,EditorService as tt}from'@ckeditor/ckeditor-cloud-services-collaboration/dist/index.js';import{Users as _0x3ee0a5,UserView as ct}from'ckeditor5-collaboration/dist/index.js';import{Compressor as _0x52edff}from'@ckeditor/ckeditor5-operations-compressor/dist/index.js';import{isElement as _0x35a613}from'lodash-es';class c extends _0x39c783{static ['WebSocketGateway']=/* #__PURE__ -- @preserve */
24
+ ((()=>lt)());static ['initialReconnectionInterval']=0x3e8;['connection'];['_reconnectionStack'];['_shouldPluginsReconnect'];['_domEmitter'];static get['requires'](){return['CloudServices',_0x41acef];}static get['pluginName'](){return'WebSocketGateway';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x2ee4ce){super(_0x2ee4ce),this['set']('state',_0xaa45d7['CONNECTED']),this['set']('_isBrowserOffline',!0x1),this['_reconnectionStack']=new Set(),this['_shouldPluginsReconnect']=!0x1,this['_domEmitter']=Object['create'](_0xea8f84);}['init'](){const _0x2692f0=this['context'],_0x44d658=_0x2692f0['plugins']['get']('CloudServices'),_0x29eec9=_0x2692f0['plugins']['get'](_0x41acef);if(!_0x44d658['token'])throw new _0x45d95c('websocketgateway-missing-token',this);if(!_0x44d658['webSocketUrl'])throw new _0x45d95c('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'](_0x44d658['token'],_0x44d658['webSocketUrl'],{'timeout':0x3e8*this['context']['config']['get']('cloudServices.connectionTimeout'),'requestTimeout':0x3e8*this['context']['config']['get']('cloudServices.requestTimeout')})['then'](_0x567438=>{if(this['connection']=_0x567438,this['bind']('state')['to'](_0x567438,'state',this,'_isBrowserOffline',(_0x220fad,_0x55eb08)=>('connected'!==_0x220fad&&(this['_shouldPluginsReconnect']=!0x0),_0x55eb08||_0x220fad!==_0xaa45d7['CONNECTED']?_0xaa45d7['DISCONNECTED']:this['state']==_0xaa45d7['DISCONNECTED']&&this['_shouldPluginsReconnect']?(this['_shouldPluginsReconnect']=!0x1,this['_reconnect'](),_0xaa45d7['CONNECTING']):_0xaa45d7['CONNECTED'])),this['connection']['on']('error',(_0x4f38ae,_0x604c65)=>{if('limitExceeded'!==_0x604c65['code'])throw console['error'](_0x604c65),new _0x45d95c('cloudservices-init',null,{'originalError':_0x604c65});_0x29eec9['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'});}),!_0x567438['me'])return new Promise(_0x36f724=>_0x567438['on']('change:me',_0x36f724));})['catch'](_0x274452=>{throw console['error'](_0x274452),new _0x45d95c('cloudservices-init',null,{'originalError':_0x274452});});}['addToReconnectionStack'](_0x341732){if('function'!=typeof _0x341732['reconnect'])throw new _0x45d95c('websocketgateway-invalid-plugin-interface',this);if(this['isInReconnectionStack'](_0x341732))throw new _0x45d95c('websocketgateway-plugin-already-registered',this,{'name':_0x341732['constructor']['pluginName']});this['_reconnectionStack']['add'](_0x341732);}['removeFromReconnectionStack'](_0x4c6fe3){this['_reconnectionStack']['delete'](_0x4c6fe3);}['isInReconnectionStack'](_0x32f695){return this['_reconnectionStack']['has'](_0x32f695);}['_reconnect'](){return this['connection']['reconnect']()['then'](()=>Promise['all'](Array['from'](this['_reconnectionStack'],_0x2efa76=>_0x2efa76['reconnect']())))['then'](()=>this['state']=_0xaa45d7['CONNECTED'])['catch'](_0x551e50=>{throw console['error'](_0x551e50),new _0x45d95c('cloudservices-reconnection-error',this['context']);});}['disconnect'](){this['connection']&&this['connection']['disconnect'](),this['state']=_0xaa45d7['DISCONNECTED'],this['_domEmitter']['stopListening']();}['destroy'](){this['disconnect'](),super['destroy']();}}class i extends _0x39c783{['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,_0x3ee0a5];}constructor(_0xc7dcff){super(_0xc7dcff),this['channelSessions']=new Map(),this['channelConnectedUsers']=new Map(),this['allConnectedUsers']=new _0x107994(),this['_registeredSessions']=new Map(),this['_uniqueUsersCount']=0x0,this['_users']=this['context']['plugins']['get'](_0x3ee0a5);}['init'](){const _0x4614ff=this['context']['plugins']['get'](c);this['listenTo'](_0x4614ff,'change:state',(_0x2ad43f,_0x50fff4,_0x49b5ad)=>{if('connected'!==_0x49b5ad)this['channelSessions']['forEach'](_0x29877e=>_0x29877e['clear']()),this['channelConnectedUsers']['forEach'](_0x257ce2=>_0x257ce2['clear']()),this['allConnectedUsers']['clear']();else{for(const [_0x1a8e77,_0x2606aa]of this['_registeredSessions'])for(const _0x3e3849 of _0x2606aa)this['_handleSessionAdd'](_0x1a8e77,_0x3e3849);}}),this['_createUser'](_0x4614ff['connection']['me'],!0x0);}['register'](_0x2b7d9b,_0x573916){if(this['_registeredSessions']['has'](_0x2b7d9b))throw new _0x45d95c('sessions-register-already-registered',null,{'channelId':_0x2b7d9b});this['_registeredSessions']['set'](_0x2b7d9b,_0x573916),this['channelSessions']['set'](_0x2b7d9b,new _0x107994()),this['channelConnectedUsers']['set'](_0x2b7d9b,new _0x107994()),this['listenTo'](_0x573916,'add',(_0x57401f,_0x4b0e2b)=>this['_handleSessionAdd'](_0x2b7d9b,_0x4b0e2b)),this['listenTo'](_0x573916,'remove',(_0x515d2b,_0x23ce5f)=>this['_handleSessionRemove'](_0x2b7d9b,_0x23ce5f));for(const _0x525e75 of _0x573916)this['_handleSessionAdd'](_0x2b7d9b,_0x525e75);}['unregister'](_0x2b2fb0){if(!this['_registeredSessions']['has'](_0x2b2fb0))throw new _0x45d95c('sessions-unregister-not-exist',null,{'channelId':_0x2b2fb0});const _0x2c58e8=this['_registeredSessions']['get'](_0x2b2fb0);this['stopListening'](_0x2c58e8);for(const _0x48dab3 of _0x2c58e8)'connected'===this['context']['plugins']['get'](c)['state']&&this['_handleSessionRemove'](_0x2b2fb0,_0x48dab3);this['_registeredSessions']['delete'](_0x2b2fb0),this['channelSessions']['delete'](_0x2b2fb0),this['channelConnectedUsers']['delete'](_0x2b2fb0);}get['mySessionId'](){return this['context']['plugins']['get'](c)['connection']['sessionId'];}['getUserBySessionId'](_0x127286){for(const _0x51d7a4 of this['channelSessions']['values']())for(const _0x2e8468 of _0x51d7a4)if(_0x2e8468['id']===_0x127286)return _0x2e8468['user'];}['getUserSessions'](_0x20a549,_0x58c83c){const _0x1a9ce0=_0x58c83c?[this['channelSessions']['get'](_0x58c83c)]:this['channelSessions']['values'](),_0x2f8eb8=new Set();for(const _0x2ac7b3 of _0x1a9ce0)for(const _0x2fb1ac of _0x2ac7b3)_0x2fb1ac['user']['id']===_0x20a549['id']&&_0x2f8eb8['add'](_0x2fb1ac['id']);return _0x2f8eb8;}['getUserRole'](_0x2b9b3b){for(const _0x5190fe of this['channelSessions']['values']())for(const _0x338320 of _0x5190fe)if(_0x338320['user']===_0x2b9b3b)return _0x338320['role'];}['_handleSessionAdd'](_0x3039ce,_0x172a7e){if('connected'!==this['context']['plugins']['get'](c)['state'])return;const _0xac9fa8=_0x172a7e['user'],_0x2dd2a8=this['_users']['getUser'](_0xac9fa8['id'])||this['_createUser'](_0xac9fa8),_0xb13c42=Object['assign']({},_0x172a7e,{'user':_0x2dd2a8});this['channelSessions']['get'](_0x3039ce)['add'](_0xb13c42);const _0x214ab0=this['channelConnectedUsers']['get'](_0x3039ce);_0x214ab0['has'](_0x2dd2a8['id'])||_0x214ab0['add'](_0x2dd2a8),this['allConnectedUsers']['has'](_0x2dd2a8['id'])||this['allConnectedUsers']['add'](_0x2dd2a8,_0x2dd2a8['isMe']?0x0:void 0x0),this['fire']('sessionAdd:'+_0x3039ce,{'channelId':_0x3039ce,'session':_0xb13c42});}['_handleSessionRemove'](_0xe1ac50,_0x26fae8){if('connected'!==this['context']['plugins']['get'](c)['state'])return;const _0x41d3d4=this['channelConnectedUsers']['get'](_0xe1ac50),_0x2d41b5=_0x26fae8['user'];_0x2d41b5['id']&&(this['channelSessions']['get'](_0xe1ac50)['remove'](_0x26fae8['id']),_0x41d3d4['has'](_0x2d41b5['id'])&&!this['getUserSessions'](_0x2d41b5,_0xe1ac50)['size']&&_0x41d3d4['remove'](_0x2d41b5['id']),this['allConnectedUsers']['get'](_0x2d41b5['id'])&&!this['getUserSessions'](_0x2d41b5)['size']&&this['allConnectedUsers']['remove'](_0x2d41b5['id']));}['_createUser'](_0x295992,_0x41bce1){const _0x2c982b=this['_users']['addUser'](_0x295992);return _0x41bce1&&this['_users']['defineMe'](_0x295992['id']),_0x2c982b['orderNumber']=this['_uniqueUsersCount']++,_0x2c982b;}}class H extends _0x82c6ed{['_domEmitter']=new(_0xea8f84())();static get['requires'](){return[i];}static get['pluginName'](){return'UserMarkers';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['init'](){const _0x48c8fe=this['editor'],_0x3c39b0=_0x48c8fe['plugins']['get'](i);_0x48c8fe['conversion']['for']('editingDowncast')['markerToElement']({'model':'user:position','view':(_0x599b7a,{writer:_0x16d555})=>function(_0x11d39d,_0x3ab4ed,_0x532d3f,_0x482310){const _0x2973d2=_0x11d39d['markerName']['split'](':')[0x2],_0x19ed6b=_0x532d3f['getUserBySessionId'](_0x2973d2);if(!_0x19ed6b||_0x2973d2===_0x532d3f['mySessionId'])return;if(!_0x482310['model']['schema']['checkChild'](_0x11d39d['markerRange']['start'],'$text'))return;const _0x32b1d5={'class':'ck-user__marker\x20'+_0x19ed6b['color']['getMarkerClass'](),'data-name':_0x19ed6b['name'],'data-session-id':_0x2973d2},_0x4b0c2d=_0x482310['model']['markers']['get'](_0x11d39d['markerName']),_0x236944=_0x4b0c2d['getStart'](),_0x2dd228=_0x236944['nodeAfter'],_0x24af83=_0x482310['model']['schema'];if(_0x2dd228&&_0x24af83['isObject'](_0x2dd228)&&_0x24af83['isInline'](_0x2dd228)&&!_0x482310['model']['markers']['get']('user:range:'+_0x2973d2)['getRange']()['isCollapsed'])return;const _0x5c41bc=_0x236944['parent'];return _0x482310['model']['schema']['isLimit'](_0x5c41bc)&&!_0x482310['model']['hasContent'](_0x5c41bc)&&(_0x32b1d5['contenteditable']=!0x1),function(_0x33e7f8,_0x535d48,_0x3753d1){const _0x534702=_0x33e7f8['createUIElement']('span',_0x535d48);return _0x33e7f8['setCustomProperty']('userPositionMarker',!0x0,_0x534702),_0x534702['render']=function(_0x591d09){const _0x1f1396=this['toDomElement'](_0x591d09),_0x59487c=document['createElement']('span');return _0x59487c['classList']['add']('ck-user__marker-tooltip'),_0x59487c['setAttribute']('contenteditable','false'),_0x59487c['setAttribute']('spellcheck','false'),_0x59487c['textContent']=_0x3753d1['name'],_0x1f1396['innerHTML']='⁠<span\x20class=\x22ck-user__marker-line\x22\x20contenteditable=\x22false\x22><span\x20class=\x22ck-user__marker-dot\x22></span></span>'+_0x59487c['outerHTML']+'⁠',_0x1f1396['addEventListener']('mouseenter',()=>{_0x1f1396['classList']['add']('ck-user__marker_hovered');}),_0x1f1396['addEventListener']('mouseleave',()=>{_0x1f1396['classList']['remove']('ck-user__marker_hovered');}),_0x1f1396;},_0x534702['isSimilar']=function(_0x421455){return!(!this['getCustomProperty']('userPositionMarker')||!_0x421455['getCustomProperty']('userPositionMarker')||this['getAttribute']('data-session-id')!=_0x421455['getAttribute']('data-session-id'));},_0x534702;}(_0x3ab4ed,_0x32b1d5,_0x19ed6b);}(_0x599b7a,_0x16d555,_0x3c39b0,_0x48c8fe)}),_0x48c8fe['conversion']['for']('editingDowncast')['markerToHighlight']({'model':'user:range','view':_0xb32b69=>function(_0x411ee9,_0x318325){const _0x39449d=_0x411ee9['markerName']['split'](':')[0x2];if(_0x39449d===_0x318325['mySessionId'])return null;const _0x172823=_0x318325['getUserBySessionId'](_0x39449d);if(!_0x172823)return{'id':_0x39449d,'classes':[]};return{'id':_0x39449d,'classes':['ck-user__selection',_0x172823['color']['getSelectionClass']()],'attributes':{'data-session-id':_0x39449d},'priority':0x7d0+_0x172823['orderNumber']};}(_0xb32b69,_0x3c39b0)}),function(_0x2e4286){const _0x892a7d=_0x2e4286['model'],_0x29796b=new Map(),_0x540e67=_0x2e4286['plugins']['get'](i);_0x892a7d['markers']['on']('update:user:range',(_0x362711,_0x1de87b,_0x3208dd,_0x3496dd)=>{if(!_0x3496dd&&_0x29796b['get'](_0x1de87b['name']))return _0x29796b['get'](_0x1de87b['name'])['detach'](),void _0x29796b['delete'](_0x1de87b['name']);const _0xd946a3=_0x1de87b['name']['split'](':')[0x2];if(_0xd946a3===_0x540e67['mySessionId'])return;const _0x42e1a6='user:position:'+_0xd946a3;_0x892a7d['markers']['has'](_0x42e1a6)&&_0x2e4286['editing']['reconvertMarker'](_0x42e1a6),_0x1de87b['on']('change:range',(_0x4bf5a5,_0x533b4a,_0xedc532)=>{if('$graveyard'!=_0x533b4a['root']['rootName']&&'$graveyard'==_0x1de87b['getRange']()['root']['rootName']&&!_0x29796b['has'](_0x1de87b['name'])){const _0x28a286=_0x892a7d['schema']['getNearestSelectionRange'](_0xedc532['deletionPosition']);if(_0x28a286){const _0x48db97=ht['fromRange'](_0x28a286);_0x29796b['set'](_0x1de87b['name'],_0x48db97),_0x48db97['on']('change:range',(_0x15d0d3,_0x38c387,_0x13e75d)=>{if('$graveyard'==_0x48db97['root']['rootName']){const _0x247898=_0x892a7d['schema']['getNearestSelectionRange'](_0x13e75d['deletionPosition']);_0x247898?(_0x48db97['start']=_0x247898['start'],_0x48db97['end']=_0x247898['end']):(_0x29796b['delete'](_0x1de87b['name']),_0x48db97['detach']());}});}}});}),_0x892a7d['document']['on']('change',()=>{_0x29796b['size']>0x0&&_0x892a7d['enqueueChange']({'isUndoable':!0x1},_0x553e16=>{for(const [_0xb466ae,_0x1ccdad]of _0x29796b)'$graveyard'==_0x892a7d['markers']['get'](_0xb466ae)['getRange']()['root']['rootName']&&(re(_0xb466ae['split'](':')[0x2],_0x1ccdad['toRange'](),_0x892a7d,_0x553e16),_0x1ccdad['detach']());_0x29796b['clear']();});});}(_0x48c8fe),this['_domEmitter']['listenTo'](_0x3c7de5['document'],'keydown',(_0x5b1ec0,{key:_0x42a97f})=>{'Escape'===_0x42a97f&&function(_0x442d77){_0x442d77['editing']['view']['change'](_0x5751e5=>{for(const _0x39233f of _0x442d77['model']['markers']){if(!_0x39233f['name']['startsWith']('user:position'))continue;const _0x5dfaa1=_0x442d77['editing']['mapper']['markerNameToElements'](_0x39233f['name']);if(_0x5dfaa1){for(const _0x4b5fed of _0x5dfaa1)_0x5751e5['removeClass']('ck-user__marker_hovered',_0x4b5fed);}}});}(_0x48c8fe);},{'useCapture':!0x0});}['afterInit'](){const _0x2c80e2=this['editor'],_0x5d5125=_0x2c80e2['commands']['get']('undo');_0x5d5125&&_0x2c80e2['model']['on']('applyOperation',(_0x3c7195,_0x250980)=>{const _0x547d25=_0x250980[0x0];if(!_0x547d25['isDocumentOperation'])return;if('marker'!=_0x547d25['type']||!_0x547d25['name']['startsWith']('user:'))return;const _0x587be4=_0x547d25['batch'];_0x5d5125['_createdBatches']['has'](_0x587be4)&&(_0x547d25['newRange']=_0x547d25['oldRange']?_0x2c80e2['model']['createRange'](_0x547d25['oldRange']['start'],_0x547d25['oldRange']['end']):null);},{'priority':'highest'});}['destroy'](){return this['_domEmitter']['stopListening'](),super['destroy']();}['createUserMarkerOperations'](){const _0x481991=this['editor'],_0x31804b=_0x481991['model']['document'],_0x52840d=_0x481991['plugins']['get'](i);_0x481991['model']['enqueueChange']({'isUndoable':!0x1},_0xe88f53=>{const _0x1ac42e='user:range:'+_0x52840d['mySessionId'],_0x1c9299='user:position:'+_0x52840d['mySessionId'],_0xc5cba3=_0x481991['model']['markers']['has'](_0x1ac42e);_0x481991['editing']['view']['hasDomSelection']?re(_0x52840d['mySessionId'],_0x31804b['selection']['getFirstRange'](),_0x481991['model'],_0xe88f53):_0xc5cba3&&(_0xe88f53['removeMarker'](_0x1ac42e),_0xe88f53['removeMarker'](_0x1c9299));});}}function re(_0x430f63,_0xb335ed,_0x4944ea,_0x2d83f2){const _0x100c88='user:range:'+_0x430f63,_0x203225='user:position:'+_0x430f63,_0x2cf21e=_0xb335ed['getContainedElement']();let _0x260b3c=_0xb335ed['start'];_0x2cf21e&&_0x2cf21e['is']('element','tableCell')&&(_0x260b3c=function(_0xa9153f,_0x3bce07){for(const _0x46158e of _0xa9153f['getPositions']())if(_0x3bce07['schema']['checkChild'](_0x46158e,'$text'))return _0x46158e;}(_0xb335ed,_0x4944ea),_0xb335ed=_0x2d83f2['createRange'](_0x260b3c));const _0x512f00=_0x2d83f2['createRange'](_0x260b3c);_0x4944ea['markers']['has'](_0x100c88)?(_0x2d83f2['updateMarker'](_0x100c88,{'range':_0xb335ed}),_0x2d83f2['updateMarker'](_0x203225,{'range':_0x512f00})):(_0x2d83f2['addMarker'](_0x100c88,{'range':_0xb335ed,'usingOperation':!0x0}),_0x2d83f2['addMarker'](_0x203225,{'range':_0x512f00,'usingOperation':!0x0}));}function q(_0x22a933,_0x138e19,_0x2f5856){const _0x11937a=_0x22a933['t'],t=_0x22a933['t'];switch(_0x138e19){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 _0x11937a({'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'},_0x2f5856);default:return'';}}let K=0x1;class l extends _0x82c6ed{static ['CollaborativeEditingService']=/* #__PURE__ -- @preserve */
25
+ ((()=>_0x1ff92e)());['_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,_0x2b8738,_0x3ee0a5,_0x41acef];}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 _0x3b5667=this['serverHistory']['getOperations']();for(let _0x15c069=_0x3b5667['length']-0x1;_0x15c069>=0x0;_0x15c069--){const _0x1f4bce=_0x3b5667[_0x15c069];if(!this['_disconnectionOperations']['has'](_0x1f4bce))return _0x1f4bce['baseVersion']+0x1-this['_offset'];}return 0x0;}constructor(_0x4372c1){if(super(_0x4372c1),this['_offset']=0x0,this['sessionId']=null,this['serverHistory']=new _0xdb1047(),this['editor']['config']['define']('collaboration',{}),this['_channelId']=this['editor']['config']['get']('collaboration.channelId'),!this['_channelId'])throw new _0x45d95c('collaboration-missing-channelid',this);const _0x1811d7=_0x4372c1['config']['get']('cloudServices.bundleVersion')||nt;this['_service']=new l['CollaborativeEditingService'](_0x1811d7,this['_channelId']),this['_document']=this['editor']['model']['document'],this['_compressor']=new _0x52edff(),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 _0x36487=this['editor'],_0x4ac1e5=_0x36487['plugins']['get'](_0x3ee0a5),_0x2c37dc=_0x36487['plugins']['get'](c);this['listenTo'](_0x4ac1e5,'getOperationAuthor',(_0x2ac50b,_0x317082)=>{const _0xc5a762=_0x317082[0x0];_0xc5a762['_authorId']&&(_0x2ac50b['return']=_0x4ac1e5['getUser'](_0xc5a762['_authorId']),_0x2ac50b['stop']()),null===_0xc5a762['_authorId']&&(_0x2ac50b['return']=null,_0x2ac50b['stop']());},{'priority':'high'}),this['listenTo'](_0x36487['model']['document']['selection'],'change:range',(_0x497e7c,_0xd6690f)=>{_0xd6690f['directChange']&&this['_refreshUserSelectionMarkers']();}),this['listenTo'](_0x36487['editing']['view'],'change:hasDomSelection',()=>{this['_refreshUserSelectionMarkers']();}),this['_initThrowingOnDataSet'](),_0x36487['model']['on']('applyOperation',(_0x150e78,_0x197a3e)=>{const _0x4000e4=_0x197a3e[0x0];_0x4000e4['isDocumentOperation']&&(this['_saveOperationInBuffer'](_0x4000e4),this['_shouldSendUpdate']()&&this['_sendBufferedOperationsDelayed']());}),this['_setUpDataInit'](),this['bind']('_isEditingAllowed')['to'](_0x2c37dc,'state',this,'_hasSynchronizationProblem',(_0x1d1fa9,_0x216271)=>'connected'===_0x1d1fa9&&!_0x216271),this['on']('change:_isEditingAllowed',()=>{this['_isEditingAllowed']?_0x36487['disableReadOnlyMode']('rtc-offline'):_0x36487['enableReadOnlyMode']('rtc-offline');}),this['_isEditingAllowed']?_0x36487['disableReadOnlyMode']('rtc-offline'):_0x36487['enableReadOnlyMode']('rtc-offline'),this['set']('_isConnected',!0x1);}async['reconnect'](){const _0x5ac855=this['editor']['plugins']['get'](i),_0x101b44=this['editor']['plugins']['get'](c);try{this['_isPendingUpdate']=!0x0,_0x5ac855['unregister'](this['_channelId']);const _0x9acc1d=await this['_service']['reconnect'](_0x101b44['connection'],this['lastSyncVersion']);await this['_handleReconnectionResponse'](_0x9acc1d)&&(this['_isPendingUpdate']=!0x1,this['_clearPendingAction']());const _0x4f6230=await this['_service']['getConnectedSessions']();_0x5ac855['register'](this['_channelId'],_0x4f6230),this['_handleSendingSelectionMarkers'](),this['_isConnected']=!0x0;}catch(_0x1805e4){if(function(_0x392966){return'404'===_0x392966['code'];}(_0x1805e4)&&this['sessionId'])await this['_connectAfterSessionHasBeenFlushed']();else{if(function(_0x1e7177){return'409'===_0x1e7177['code'];}(_0x1805e4)){const _0x54bfc1=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'](_0x54bfc1);}else{if(!(_0x1805e4 instanceof J))throw _0x1805e4;this['_handleReconnectionError']();}}}}['destroy'](){const _0x289e65=this['editor']['plugins']['get'](c),_0xfc9887=this['editor']['plugins']['get'](i);this['editor']['enableReadOnlyMode']('rtc-destroyed'),_0xfc9887['channelSessions']['has'](this['_channelId'])&&_0xfc9887['unregister'](this['_channelId']),_0x289e65['removeFromReconnectionStack'](this),this['_disconnectService'](),super['destroy']();}async['_handleReconnectionResponse'](_0x1cad04){if(this['sessionId']!==_0x1cad04['sessionId']&&this['_lastSyncedOperationId']!==_0x1cad04['lastOperationId'])throw new J();return this['sessionId']=_0x1cad04['sessionId'],this['_handleServerResponse']([],{..._0x1cad04,'wereChangesApplied':!0x1,'data':_0x1cad04['data']},'reconnect');}async['_connectService'](_0x24f5c7,_0x421167=!0x1){const {connection:_0x13c751}=this['editor']['plugins']['get'](c);l['CollaborativeEditingService']['getConnectedSessions'](_0x13c751,this['_channelId'])['then'](_0x434d32=>this['_initSessionsHandling'](_0x434d32))['catch'](_0x4594f0=>{this['_crash']('realtimecollaborationclient-init-session-connection-error',_0x4594f0);}),this['listenTo'](this['_service'],'operationsReceived',this['_handleReceivedOperations']['bind'](this)),this['listenTo'](this['_service'],'error',(_0x5aecc9,_0x154769)=>{this['_crash']('realtimecollaborationclient-init-service-internal-error',_0x154769);}),this['listenTo'](this['_service'],'disconnected',()=>{this['_isConnected']=!0x1;});const _0x1c6b38=this['_operationIdentifier']['getIdOfTheLastOperation'](_0x24f5c7);this['_isPendingUpdate']=!0x0;const _0x4fcab6=await this['_service']['connect'](_0x13c751,this['_compressOperations'](_0x24f5c7),_0x1c6b38);if(this['sessionId']=_0x4fcab6['sessionId'],_0x421167){if(!_0x4fcab6['wereChangesApplied'])return void this['_handleReconnectionError']();this['_isPendingUpdate']=!0x1,this['_clearPendingAction'](),this['serverHistory']['reset'](),this['_offset']=_0x4fcab6['offset'],this['serverHistory']['version']=this['_offset'],await this['_handleServerResponse'](_0x24f5c7,_0x4fcab6,'reconnection:\x20flushed\x20session');}else await this['_handleInitialConnectionData'](_0x4fcab6,_0x24f5c7);this['_handleSendingSelectionMarkers'](),this['_isConnected']=!0x0;}['_handleSendingSelectionMarkers'](){const _0x4c3019=this['editor']['plugins']['get'](i),_0x55a5cd=this['editor']['plugins']['get'](H),_0x46cfd8=_0x4c3019['channelSessions']['get'](this['_channelId']);_0x46cfd8&&_0x46cfd8['length']>0x1?_0x55a5cd['createUserMarkerOperations']():this['listenTo'](_0x4c3019,'sessionAdd:'+this['_channelId'],()=>{0x2===_0x4c3019['channelSessions']['get'](this['_channelId'])['length']&&_0x55a5cd['createUserMarkerOperations']();});}async['_handleReceivedOperations'](_0x2ebb6d,_0x19cd92,_0x57d5db,_0x241f6b){if(!this['_isPendingUpdate']&&this['_document']['version']==_0x19cd92){const _0x43cf4c=this['_decompressOperations'](_0x57d5db,_0x241f6b);await this['_fetchMissingUsers'](_0x43cf4c),this['_handleExternalOperations'](_0x43cf4c,_0x19cd92,_0x57d5db['lastOperationId'])||this['_crash']('realtimecollaborationclient-init-service-incorrect-server-operation');}}async['_connectAfterSessionHasBeenFlushed'](){this['_disconnectService']();const {locale:_0x31f260}=this['editor'];let _0x431d8a;try{_0x431d8a=await this['_service']['getDocumentDetails']();}catch(_0x1b53c5){const _0xee2296=q(_0x31f260,'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'](_0xee2296);}const _0x41e0d3=_0x431d8a['currentDocumentSession']||_0x431d8a['lastDocumentSession'];if(this['_lastSyncedOperationId']===_0x41e0d3['lastOperationId'])await this['_connectService'](this['editor']['model']['document']['history']['getOperations'](),!0x0);else{const _0x11f3ff=q(_0x31f260,'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'](_0x11f3ff);}}['_disconnectService'](){this['_service']['disconnect'](),this['_bufferedOperations']=[],clearTimeout(this['_sendBufferedOperationsDelayId']),this['stopListening'](this['_service']);}['_initSessionsHandling'](_0x55febb){const _0x28317e=this['editor']['plugins']['get'](i);this['listenTo'](_0x28317e,'sessionAdd:'+this['_channelId'],(_0x28a386,{session:_0x15791c})=>{if(_0x15791c['id']===_0x28317e['mySessionId']){_0x28a386['off']();const _0x50e01e=this['editor']['plugins']['has']('CommentsOnly')&&this['editor']['plugins']['get']('CommentsOnly');let _0x5cd95b=_0x15791c['permissions'];_0x50e01e&&_0x50e01e['isEnabled']&&(_0x5cd95b=_0x5cd95b['filter'](_0x1561ad=>'document:write'!==_0x1561ad)),this['editor']['plugins']['get']('Permissions')['setPermissions'](_0x5cd95b,this['_channelId']);}}),_0x28317e['register'](this['_channelId'],_0x55febb);}['_initThrowingOnDataSet'](){const _0x1b9e6a=this['editor']['data']['set'];this['editor']['data']['set']=(..._0x19b68a)=>{if(!_0x19b68a[_0x19b68a['length']-0x1]['suppressErrorInCollaboration'])throw new _0x45d95c('realtimecollaborationclient-editor-setdata-and-editor-data-set-are-forbidden-in-real-time-collaboration',this);_0x1b9e6a['apply'](this['editor']['data'],_0x19b68a);};}['_setUpDataInit'](){this['editor']['data']['on']('init',(_0x14ba7d,[_0x269178])=>{if(this['_document']['version'])throw new _0x45d95c('realtimecollaborationclient-init-document-already-initialized',this);_0x14ba7d['stop'](),this['_setPendingAction']();const _0x4bda94=this['editor']['config']['get']('rootsAttributes'),_0x5d38dd=this['_getOperationsFromInitData'](_0x269178,_0x4bda94);0x0==_0x5d38dd['length']&&_0x5d38dd['push'](new _0x318c00(0x0)),_0x14ba7d['return']=this['_connectService'](_0x5d38dd)['then'](()=>{this['editor']['plugins']['get'](c)['addToReconnectionStack'](this),this['editor']['data']['fire']('ready');})['catch'](_0x403152=>this['_crash']('realtimecollaborationclient-init-connection-failed',_0x403152))['finally'](()=>this['_clearPendingAction']());},{'priority':'high'}),this['editor']['on']('loadRoot',async(_0x59cc4b,[_0x1dc006,_0x59a048])=>{_0x59cc4b['stop']();const _0x1a80f0=this['editor']['model']['document']['getRoot'](_0x1dc006);if(!this['_knownRootNames']['has'](_0x1dc006)){const _0x4c6dd8=_0x59a048&&_0x59a048['data']?_0x59a048['data']:'',_0x28531a=_0x59a048&&_0x59a048['attributes']?_0x59a048['attributes']:{};await this['_loadRoot'](_0x1dc006,_0x4c6dd8,_0x28531a);}this['editor']['model']['enqueueChange']({'isUndoable':!0x1},()=>{_0x1a80f0['_isLoaded']=!0x0,this['editor']['model']['document']['differ']['_bufferRootLoad'](_0x1a80f0);});},{'priority':'high'});}async['_fetchMissingUsers'](_0x1725db){const _0x2fd390=this['editor']['plugins']['get'](_0x3ee0a5),{connection:_0x53f987}=this['editor']['plugins']['get'](c),_0x4a1b54=new Set();for(const _0x18e5fb of _0x1725db){const _0x11442c=_0x18e5fb['_authorId'];_0x11442c&&!_0x2fd390['getUser'](_0x11442c)&&_0x4a1b54['add'](_0x11442c);}if(0x0===_0x4a1b54['size'])return;const _0x1bf8da=await dt['getMany'](_0x53f987,Array['from'](_0x4a1b54));for(const _0xfdbea9 of _0x1bf8da)_0x2fd390['getUser'](_0xfdbea9['id'])||_0x2fd390['addUser'](_0xfdbea9);}['_getOperationsFromInitData'](_0xe35154,_0x54cec7={}){const _0x5de0c2=this['editor']['model'],_0x466ddb=[];let _0x2557ca=0x0;const _0x592694='string'==typeof _0xe35154?{'main':_0xe35154}:_0xe35154;for(const _0x48e73b of Object['keys'](_0x592694)){if(!this['_document']['roots']['has'](_0x48e73b))throw new _0x45d95c('realtimecollaborationclient-init-non-existent-root',this);const _0x325148=this['editor']['data']['parse'](_0x592694[_0x48e73b]),_0x5ed665=this['_document']['getRoot'](_0x48e73b),_0x166599=new _0x3d617a(_0x5de0c2['createPositionAt'](_0x5ed665,0x0),_0x325148,_0x2557ca++);_0x466ddb['push'](_0x166599);for(const [_0x55d81a,_0x22a2d3]of _0x325148['markers']){const _0xfce85f=_0x5de0c2['createRange'](_0x5de0c2['createPositionFromPath'](_0x5ed665,_0x22a2d3['start']['path']['slice']()),_0x5de0c2['createPositionFromPath'](_0x5ed665,_0x22a2d3['end']['path']['slice']())),_0x5b1441=new _0x35ef4d(_0x55d81a,null,_0xfce85f,_0x5de0c2['markers'],!0x0,_0x2557ca++);_0x466ddb['push'](_0x5b1441);}}if(_0x54cec7)for(const [_0x149592,_0x41b6d6]of Object['entries'](_0x54cec7)){const _0xf647a6=_0x5de0c2['document']['getRoot'](_0x149592);if(!_0xf647a6)throw new _0x45d95c('multi-root-editor-root-attributes-no-root',null);for(const [_0x1901e5,_0x4b6231]of Object['entries'](_0x41b6d6))if(null!==_0x4b6231){const _0x3f008b=new _0x4ef5b1(_0xf647a6,_0x1901e5,null,_0x4b6231,_0x2557ca++);_0x466ddb['push'](_0x3f008b);}}return _0x466ddb;}async['_loadRoot'](_0x3de724,_0xf771a4,_0x22e8c6){this['_getOperationsFromInitData']({[_0x3de724]:_0xf771a4},{[_0x3de724]:_0x22e8c6})['forEach']((_0x3bffe5,_0x502bc1)=>{_0x3bffe5['baseVersion']=this['_document']['version']+_0x502bc1,_0x3bffe5['_isInit']=!0x0,this['_saveOperationInBuffer'](_0x3bffe5);}),this['_sendBufferedOperationsDelayed'](),await this['_waitUntilSynced']();}async['_handleInitialConnectionData'](_0x38defe,_0x7b20a2){let _0x128da5;this['_offset']=_0x38defe['offset'];const _0x1d8abd=_0x38defe['wereChangesApplied']&&!_0x38defe['initData'],_0x4dbc11=_0x1d8abd?0x0:_0x38defe['data']['baseVersion'];if(_0x7b20a2['forEach'](_0x45d43d=>{_0x45d43d['_isInit']=!0x0,_0x45d43d['createdAt']=_0x38defe['sessionCreatedAt'],_0x45d43d['_authorId']=null;}),_0x1d8abd)_0x128da5=_0x7b20a2,this['_applyOperationsSet'](_0x128da5,_0x1d8abd);else{if(_0x38defe['initData']){const _0x5d9a8d=this['_getOperationsFromInitData'](_0x38defe['initData']);this['_document']['history']['version']=-_0x5d9a8d['length'],_0x5d9a8d['forEach'](_0x366baa=>{_0x366baa['baseVersion']-=_0x5d9a8d['length'],_0x366baa['createdAt']=_0x38defe['sessionCreatedAt'],_0x366baa['_isInit']=!0x0,_0x366baa['_authorId']=null;}),this['_applyOperationsSet'](_0x5d9a8d,!0x0),this['serverHistory']['version']=-_0x5d9a8d['length']+this['_offset'],this['_updateServerHistory'](_0x5d9a8d);}this['_document']['history']['version']=_0x4dbc11,_0x128da5=this['_decompressOperations'](_0x38defe['data'],_0x38defe['metadata']),await this['_fetchMissingUsers'](_0x128da5),this['_applyOperationsSet'](_0x128da5,_0x1d8abd);}_0x38defe['lastOperationId']&&(this['_operationIdentifier']['setIdForTheLastOperation'](_0x128da5,_0x38defe['lastOperationId']),this['_lastSyncedOperationId']=_0x38defe['lastOperationId']),this['serverHistory']['version']=_0x4dbc11+this['_offset'],this['_updateServerHistory'](_0x128da5),_0x7b20a2['filter'](_0x96bc89=>{const _0x284f59=this['_getAffectedRoot'](_0x96bc89);return _0x284f59&&!this['_knownRootNames']['has'](_0x284f59);})['forEach']((_0x244ca0,_0x3b909d)=>{_0x244ca0['baseVersion']=this['_document']['version']+_0x3b909d,this['_saveOperationInBuffer'](_0x244ca0);}),this['_shouldSendUpdate']()?(this['_currentBufferDelay']=0x0,this['_sendBufferedOperationsDelayed'](!0x0),await this['_waitUntilSynced']()):(this['_isPendingUpdate']=!0x1,this['_clearPendingAction']());}['_crash'](_0x4d4260,_0x3f7495){const _0x2d5aaf=_0x3f7495&&_0x3f7495['message'];if(_0x2d5aaf&&_0x2d5aaf['startsWith']('realtimecollaborationclient'))throw _0x3f7495;const _0x34c696=this['editor']['plugins']['get'](c);throw this['_isPendingUpdate']=!0x0,_0x34c696['disconnect'](),this['editor']['enableReadOnlyMode']('realtimecollaborationclient-error'),new _0x45d95c(_0x4d4260,this['editor'],_0x2d5aaf?{'originalError':_0x2d5aaf}:void 0x0);}['_saveOperationInBuffer'](_0xaafd2){this['_knownOperations']['has'](_0xaafd2)||(this['_knownOperations']['add'](_0xaafd2),this['_bufferedOperations']['push'](_0xaafd2),this['_pendingAction']||'marker'==_0xaafd2['type']&&!_0xaafd2['affectsData']||this['_setPendingAction']());}['_sendBufferedOperationsDelayed'](_0x5df4b1=!0x1){!_0x5df4b1&&this['_isPendingUpdate']||(this['_isPendingUpdate']=!0x0,clearTimeout(this['_sendBufferedOperationsDelayId']),this['_sendBufferedOperationsDelayId']=setTimeout(()=>{this['_sendBufferedOperations']()['then'](_0x525b75=>{_0x525b75&&(this['_clearPendingAction'](),this['_isPendingUpdate']=!0x1);})['catch'](_0x4eb080=>{this['_clearPendingAction'](),this['_isPendingUpdate']=!0x1,function(_0x280ce9){return _0x280ce9['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x280ce9['message']['startsWith']('cloud-services-internal-error:\x20Collaborative\x20Editing\x20Service\x20is\x20not\x20connected.')||_0x280ce9['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}(_0x4eb080)||this['_crash'](_0x4eb080['message'],_0x4eb080);});},this['_currentBufferDelay']));}['_waitUntilSynced'](){return new Promise(_0x756af4=>{this['on']('change:_isPendingUpdate',()=>{_0x756af4();});});}async['_sendBufferedOperations'](){const _0x1ebac6=this['editor']['plugins']['get'](H);if(this['_shouldSendSelectionUpdate']()&&(_0x1ebac6['createUserMarkerOperations'](),this['_hasSelectionChanged']=!0x1),!this['_shouldSendUpdate']())return!0x0;const _0x2b5448=[...this['_bufferedOperations']];for(const _0x47557f of _0x2b5448)_0x47557f['wasUndone']=this['_document']['history']['isUndoneOperation'](_0x47557f);const _0x1683b7=this['_operationIdentifier']['getIdOfTheLastOperation'](_0x2b5448),_0x2ca9a0=K++,_0x549c85=this['_compressOperations'](_0x2b5448),_0x3428a2=await this['_service']['sendOperations'](_0x549c85,_0x549c85['baseVersion'],_0x1683b7);try{return await this['_handleServerResponse'](_0x2b5448,_0x3428a2,_0x2ca9a0);}catch(_0x49e2fd){return this['_crash']('realtimecollaborationclient-sendbufferedoperations',_0x49e2fd);}}async['_handleServerResponse'](_0x329dad,_0x21620e,_0x31544d){if('error'in _0x21620e)throw _0x21620e['error'];let _0x1bbb6f=!0x1;if(_0x21620e['wereChangesApplied']){_0x21620e['lastOperationId']&&(this['_lastSyncedOperationId']=_0x21620e['lastOperationId']),this['_bufferedOperations']=this['_bufferedOperations']['filter'](_0xf5add6=>!_0x329dad['includes'](_0xf5add6));for(const _0x1b8b0e of _0x329dad)_0x1b8b0e['createdAt']='lastOperationAcceptedAt'in _0x21620e&&_0x21620e['lastOperationAcceptedAt']||void 0x0;Q(_0x329dad,_0x21620e['version']-_0x329dad['length']),this['_updateServerHistory'](_0x329dad);const _0x38ed26=_0x329dad['filter'](_0x2f3508=>{if(!_0x2f3508['_isInit'])return!0x1;const _0x5f0427=this['_getAffectedRoot'](_0x2f3508);return _0x5f0427&&!this['_knownRootNames']['has'](_0x5f0427);});Q(_0x38ed26,this['_document']['version']),this['_applyOperationsSet'](_0x38ed26),_0x1bbb6f=!0x0,this['_currentBufferDelay']=this['_baseBufferDelay'];}else{const _0x131e83=this['_decompressOperations'](_0x21620e['data'],_0x21620e['metadata'])['filter'](_0xd598e2=>_0xd598e2['baseVersion']>=this['_lastServerVersion']);_0x131e83['forEach'](_0x4bc294=>this['_addKnownRoot'](_0x4bc294)),this['_bufferedOperations']=this['_bufferedOperations']['filter'](_0x2a6f99=>!_0x2a6f99['_isInit']||!this['_knownRootNames']['has'](this['_getAffectedRoot'](_0x2a6f99))),this['_bufferedOperations']['length']&&Q(this['_bufferedOperations'],this['_bufferedOperations'][0x0]['baseVersion']),await this['_fetchMissingUsers'](_0x131e83),_0x1bbb6f=this['_handleExternalOperations'](_0x131e83,_0x21620e['version'],_0x21620e['lastOperationId']),this['_currentBufferDelay']=Math['round'](this['_currentBufferDelay']/0x2);}return _0x1bbb6f?!this['_shouldSendUpdate']()||(this['_sendBufferedOperationsDelayed'](!0x0),!0x1):this['_crash']('realtimecollaborationclient-handleserverresponse');}['_handleExternalOperations'](_0x4861d7,_0x2edf43,_0x356e4a){try{const _0x44c6c4={'document':this['_document'],'useRelations':!0x1,'padWithNoOps':!0x0},{operationsA:_0xa2897b,operationsB:_0x2a2138,originalOperations:_0x332f49}=_0xc03069(_0x4861d7,this['_bufferedOperations'],_0x44c6c4);Q(_0xa2897b,this['_document']['version']),Q(_0x2a2138,_0x2edf43);for(const _0x36a9ba of _0xa2897b){const _0x2b25e3=_0x332f49['get'](_0x36a9ba);_0x36a9ba['_authorId']=_0x2b25e3?_0x2b25e3['_authorId']:null;}_0x356e4a&&(this['_operationIdentifier']['setIdForTheLastOperation'](_0x4861d7,_0x356e4a),this['_lastSyncedOperationId']=_0x356e4a),this['_bufferedOperations']=[..._0x2a2138],this['_applyOperationsSet'](_0xa2897b),this['_updateServerHistory'](_0x4861d7);}catch(_0x4d0ba5){return console['error'](_0x4d0ba5),!0x1;}return!0x0;}['_applyOperationsSet'](_0x5408e7,_0x24cb8c=!0x1){this['editor']['model']['enqueueChange']({'isUndoable':!0x1,'isLocal':!0x1},_0x406153=>{for(const _0xac5e3b of _0x5408e7)this['_knownOperations']['add'](_0xac5e3b),this['_addKnownRoot'](_0xac5e3b),_0x406153['batch']['addOperation'](_0xac5e3b),this['editor']['model']['applyOperation'](_0xac5e3b);});}['_addKnownRoot'](_0x24bd44){const _0x1f9dbe=this['_getAffectedRoot'](_0x24bd44);_0x1f9dbe&&this['_knownRootNames']['add'](_0x1f9dbe);}['_getAffectedRoot'](_0xad65af){let _0x203471,_0x3b0705;switch(_0xad65af['type']){case'insert':_0x203471=_0xad65af['position']['root'];break;case'marker':if(_0x3b0705=_0xad65af['newRange'],!_0x3b0705)return null;_0x203471=_0x3b0705['root'];break;case'addRootAttribute':_0x203471=_0xad65af['root'];break;case'addRoot':_0x203471=_0xad65af['affectedSelectable'];break;case'move':_0x203471=_0xad65af['targetPosition']['root'];break;default:return null;}return _0x203471['rootName'];}['_updateServerHistory'](_0x493c05){_0x493c05['forEach'](_0x5267c6=>{const _0x319ede=_0x5267c6['clone']();_0x319ede['_authorId']=_0x5267c6['_authorId'],_0x319ede['_isInit']=!!_0x5267c6['_isInit'],_0x319ede['createdAt']=_0x5267c6['createdAt'],_0x319ede['baseVersion']+=this['_offset'],_0x5267c6['_isDisconnection']&&this['_disconnectionOperations']['add'](_0x319ede),this['serverHistory']['addOperation'](_0x319ede);});}['_handleReconnectionError'](_0x4f90b1){const _0x4f1a0d=this['editor']['plugins']['get']('Notification'),_0x220a14=this['editor']['locale'];_0x4f90b1||(_0x4f90b1=q(_0x220a14,'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.')),_0x4f1a0d['showWarning'](_0x4f90b1,{'title':q(_0x220a14,'Synchronization\x20issue'),'namespace':'real-time-collaboration'}),this['_hasSynchronizationProblem']=!0x0,clearTimeout(this['_sendBufferedOperationsDelayId']),this['_bufferedOperations']=[],this['editor']['plugins']['get'](c)['disconnect']();}['_setPendingAction'](){this['_pendingAction']||(this['_pendingAction']=this['editor']['plugins']['get'](_0x2b8738)['add'](q(this['editor']['locale'],'PENDING_ACTION_SENDING_DATA')));}['_clearPendingAction'](){this['_pendingAction']&&(this['editor']['plugins']['get'](_0x2b8738)['remove'](this['_pendingAction']),this['_pendingAction']=null);}['_compressOperations'](_0x1fe695){const _0x4b4b43=_0x1fe695['map'](_0x2c03da=>_0x2c03da['toJSON']());return this['_compressor']['compress'](_0x4b4b43);}['_decompressOperations'](_0x24b433,_0x17fe2f){return this['_compressor']['decompress'](_0x24b433)['map']((_0x31243d,_0x4120d5)=>{const _0x35272a='init'==_0x17fe2f[_0x4120d5]['type'];if('InsertOperation'==_0x31243d['__className']){const _0x1d68ac=_0x31243d['position']['root'];!this['_document']['getRoot'](_0x1d68ac)&&(this['_document']['createRoot']('$root',_0x1d68ac)['_isAttached']=!0x1);}const _0x223a93=_0x33f511['fromJSON'](_0x31243d,this['_document']);return _0x223a93['wasUndone']=_0x31243d['wasUndone'],_0x223a93['_isInit']=_0x35272a,_0x223a93['_authorId']=_0x35272a?null:_0x17fe2f[_0x4120d5]['userId'],_0x223a93['_isDisconnection']='cs:removeUser'===_0x17fe2f[_0x4120d5]['type'],_0x223a93['createdAt']=_0x17fe2f[_0x4120d5]['createdAt'],_0x223a93;});}['_refreshUserSelectionMarkers'](){this['_hasSelectionChanged']=!0x0,this['_shouldSendSelectionUpdate']()?this['_sendBufferedOperationsDelayed']():this['_hasSelectionChanged']=!0x1;}['_shouldSendSelectionUpdate'](){const _0x189207=this['editor']['plugins']['get'](i)['channelSessions']['get'](this['_channelId']);return!this['editor']['isReadOnly']&&!!_0x189207&&_0x189207['length']>0x1&&this['_hasSelectionChanged'];}['_shouldSendUpdate'](){return this['_bufferedOperations']['length']>0x0||this['_shouldSendSelectionUpdate']();}}class J extends Error{}function Q(_0x1516ed,_0x52dac6){for(const _0x352588 of _0x1516ed)_0x352588['baseVersion']=_0x52dac6++;}class X{['_ignoredOperations'];['_operationToId'];constructor(_0xc99a24){this['_ignoredOperations']=_0xc99a24,this['_operationToId']=new WeakMap();}['getIdOfTheLastOperation'](_0xcd49bf){let _0x1e2e6f=_0xcd49bf['length'];for(;_0x1e2e6f--;){const _0x5a09a3=_0xcd49bf[_0x1e2e6f];if(!this['_ignoredOperations']['has'](_0x5a09a3)){if(!this['_operationToId']['has'](_0x5a09a3)){const _0x212d73=_0x237aaa()['slice'](0x1,0x12);this['_operationToId']['set'](_0x5a09a3,_0x212d73);}return this['_operationToId']['get'](_0x5a09a3);}}}['setIdForTheLastOperation'](_0x3e8207,_0x388737){if(!_0x388737)return;let _0x53e2f3=_0x3e8207['length'];for(;_0x53e2f3--;){const _0x52edcd=_0x3e8207[_0x53e2f3];this['_ignoredOperations']['has'](_0x52edcd)||this['_operationToId']['set'](_0x52edcd,_0x388737);}}}class n extends _0x82c6ed{static get['requires'](){return[l];}static get['pluginName'](){return'RealTimeCollaborativeEditing';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}class a extends _0x39c783{static ['CommentsService']=/* #__PURE__ -- @preserve */
26
+ ((()=>_0x5d25ff)());['_services'];static get['requires'](){return[c,'CommentsRepository',i,_0x3ee0a5];}static get['pluginName'](){return'CloudServicesCommentsAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x13f414){super(_0x13f414),this['_services']=new Map();}async['init'](){const _0x1bf484=this['context'],_0x5e595e=_0x1bf484['plugins']['get']('CommentsRepository');if(_0x1bf484['plugins']['get'](c)['addToReconnectionStack'](this),_0x5e595e['adapter']={'addCommentThread':async({channelId:_0x20ae6d,threadId:_0x240751,comments:_0x47e825,resolvedAt:_0x89e08f,resolvedBy:_0x6072ea,context:_0x149d2d,attributes:_0x57c9b2})=>{const _0x2cf9ed=await this['_getService'](_0x20ae6d)['addCommentThread']({'commentThreadId':_0x240751,'comments':_0x47e825['map'](_0x1b3f2b=>function(_0x37d171,_0x3f108b,_0x44c4b8){return{'commentThreadId':_0x44c4b8,'commentId':_0x37d171['commentId'],'userId':_0x37d171['authorId'],'content':_0x37d171['content'],'documentId':_0x3f108b,'createdAt':_0x37d171['createdAt'],'attributes':_0x37d171['attributes']||{}};}(_0x1b3f2b,_0x20ae6d,_0x240751)),'resolvedAt':_0x89e08f,'resolvedBy':_0x6072ea,'context':_0x149d2d,'attributes':_0x57c9b2})['catch'](ut);return{'threadId':_0x2cf9ed['commentThreadId'],'comments':_0x2cf9ed['comments']};},'getCommentThread':async({channelId:_0x5d5ec0,threadId:_0x1ad198})=>{const _0x1404d4=await this['_getService'](_0x5d5ec0)['getCommentThread'](_0x1ad198)['catch'](ut);return _0x1404d4['deletedAt']?null:(await this['_fetchMissingUsersForThreads']([_0x1404d4]),{'threadId':_0x1404d4['commentThreadId'],'comments':_0x1404d4['comments']['map'](b),'context':_0x1404d4['context'],'resolvedAt':_0x1404d4['resolvedAt'],'resolvedBy':_0x1404d4['resolvedBy'],'attributes':_0x1404d4['attributes']||{}});},'updateCommentThread':async({channelId:_0x296609,threadId:_0x5e7a7c,context:_0x2c922a,unlinkedAt:_0x3b4728,attributes:_0x305a33})=>this['_getService'](_0x296609)['updateCommentThread']({'commentThreadId':_0x5e7a7c,'context':_0x2c922a,'attributes':_0x305a33,'unlinkedAt':_0x3b4728})['catch'](y)['catch'](ut),'resolveCommentThread':async({channelId:_0x3eeb81,threadId:_0x39f4e0})=>{const _0x103258=await this['_getService'](_0x3eeb81)['resolveCommentThread'](_0x39f4e0)['catch'](y)['catch'](ut);return{'threadId':_0x103258['commentThreadId'],'resolvedAt':_0x103258['resolvedAt'],'resolvedBy':_0x103258['resolvedBy']};},'reopenCommentThread':async({channelId:_0x1177f4,threadId:_0x1611ad})=>this['_getService'](_0x1177f4)['reopenCommentThread'](_0x1611ad)['catch'](y)['catch'](ut),'removeCommentThread':({channelId:_0x156cb6,threadId:_0x3ac898})=>this['_getService'](_0x156cb6)['removeCommentThread'](_0x3ac898)['catch'](y)['catch'](ut),'addComment':({channelId:_0x36e344,threadId:_0x5bdfd7,commentId:_0x5ee9d2,content:_0x623a84,attributes:_0x5baf7d})=>this['_getService'](_0x36e344)['addComment'](_0x5bdfd7,_0x5ee9d2,_0x623a84,_0x5baf7d)['catch'](ut),'updateComment':({channelId:_0x42db77,threadId:_0x242e74,commentId:_0x5d1877,content:_0x85151b,attributes:_0x135d1d})=>this['_getService'](_0x42db77)['updateComment'](_0x242e74,_0x5d1877,_0x85151b,_0x135d1d)['catch'](y)['catch'](ut),'removeComment':({channelId:_0x1d1de0,threadId:_0x2375fc,commentId:_0x5b3928})=>this['_getService'](_0x1d1de0)['removeComment'](_0x2375fc,_0x5b3928)['catch'](y)['catch'](ut)},_0x1bf484 instanceof _0x2f2afa){const _0x18c677=_0x1bf484['config']['get']('collaboration.channelId'),_0x1ce9df=_0x1bf484['plugins']['get'](i);await this['_setUpService'](_0x18c677);const _0x37c56d=await this['_services']['get'](_0x18c677)['getConnectedSessions']();this['listenTo'](_0x1ce9df,'sessionAdd:'+_0x18c677,(_0x53bcc3,{session:_0x2499cc})=>{_0x2499cc['id']===_0x1ce9df['mySessionId']&&(_0x53bcc3['off'](),this['context']['plugins']['get']('Permissions')['setPermissions'](_0x2499cc['permissions'],_0x18c677));}),_0x1ce9df['register'](_0x18c677,_0x37c56d);}}async['_setUpService'](_0x17fc42){if(this['_services']['has'](_0x17fc42))throw new _0x45d95c('cloudservicescommentsadapter-connect-already-connected',null,{'channelId':_0x17fc42});const _0x5d903a=this['context']['plugins']['get']('CommentsRepository'),_0x2a8873=new a['CommentsService'](_0x17fc42);this['_services']['set'](_0x17fc42,_0x2a8873),this['listenTo'](_0x2a8873,'commentThreadAdded',(_0x3de9f4,_0x295b5a)=>{const {commentThreadId:_0x155493,documentId:_0x166836,context:_0x37426c,attributes:_0xb24f67,resolvedAt:_0x11f537,resolvedBy:_0x4b14cd,comments:_0x1e3e14}=_0x295b5a;_0x5d903a['getCommentThread'](_0x155493)||_0x5d903a['addCommentThread']({'threadId':_0x155493,'channelId':_0x166836,'comments':_0x1e3e14?_0x1e3e14['map'](b):[],'context':_0x37426c,'attributes':_0xb24f67,'resolvedAt':_0x11f537,'resolvedBy':_0x4b14cd,'isFromAdapter':!0x0});}),this['listenTo'](_0x2a8873,'commentThreadUpdated',(_0x1d5a45,{commentThreadId:_0x13eb41,documentId:_0x30a2f4,context:_0x24b6bd,unlinkedAt:_0x5d7d7e,attributes:_0x429bff})=>{_0x5d903a['getCommentThread'](_0x13eb41)&&_0x5d903a['updateCommentThread']({'threadId':_0x13eb41,'channelId':_0x30a2f4,'context':_0x24b6bd,'unlinkedAt':_0x5d7d7e,'attributes':_0x429bff,'isFromAdapter':!0x0});}),this['listenTo'](_0x2a8873,'commentThreadResolved',(_0x2f2f39,{commentThreadId:_0x5d4d54,resolvedBy:_0x579c6e,resolvedAt:_0x4f1ba9})=>{const _0x2af93f=_0x5d903a['getCommentThread'](_0x5d4d54);_0x2af93f&&_0x2af93f['resolve']({'resolvedBy':_0x579c6e,'resolvedAt':_0x4f1ba9,'isFromAdapter':!0x0});}),this['listenTo'](_0x2a8873,'commentThreadReopened',(_0x45b1fe,{commentThreadId:_0x412a06})=>{const _0x48f31b=_0x5d903a['getCommentThread'](_0x412a06);_0x48f31b&&_0x48f31b['reopen']({'isFromAdapter':!0x0});}),this['listenTo'](_0x2a8873,'commentThreadRemoved',(_0x3b551f,{commentThreadId:_0x4186ba})=>{const _0x15a869=_0x5d903a['getCommentThread'](_0x4186ba);_0x15a869&&_0x15a869['remove']({'isFromAdapter':!0x0});}),this['listenTo'](_0x2a8873,'commentAdded',(_0x11d55d,_0x23a4a6)=>{const _0x2a8a6c=_0x23a4a6['commentThreadId'],_0x5b7352=_0x5d903a['getCommentThread'](_0x2a8a6c);_0x5b7352&&_0x5b7352['addComment']({...b(_0x23a4a6),'isFromAdapter':!0x0});}),this['listenTo'](_0x2a8873,'commentUpdated',(_0x203d99,{commentThreadId:_0x27bb85,commentId:_0x4c0b46,content:_0x1ac07c,attributes:_0xcf98f9})=>{const _0x3c5ca7=_0x5d903a['getCommentThread'](_0x27bb85);if(_0x3c5ca7){const _0x445bce=_0x3c5ca7['getComment'](_0x4c0b46);_0x445bce&&_0x445bce['update']({'content':_0x1ac07c,'attributes':_0xcf98f9,'isFromAdapter':!0x0});}}),this['listenTo'](_0x2a8873,'commentRemoved',(_0x3de193,{commentThreadId:_0xd8189a,commentId:_0x19c159})=>{const _0x1eee5d=_0x5d903a['getCommentThread'](_0xd8189a);if(_0x1eee5d){const _0x49b048=_0x1eee5d['getComment'](_0x19c159);_0x49b048&&_0x49b048['remove']({'isFromAdapter':!0x0});}}),await this['_connectService'](_0x17fc42);}['destroy'](){if(this['context']instanceof _0x2f2afa){const _0x6c10f5=this['context']['config']['get']('collaboration.channelId');this['_terminateService'](_0x6c10f5);}}['_terminateService'](_0x441eb3){if(!this['_services']['has'](_0x441eb3))throw new _0x45d95c('cloudservicescommentsadapter-disconnect-not-exist',null,{'channelId':_0x441eb3});this['_getService'](_0x441eb3)['disconnect'](),this['_services']['delete'](_0x441eb3);}async['reconnect'](){for(const _0x18ca69 of this['_services']['keys']())await this['_connectService'](_0x18ca69);if(this['context']instanceof _0x2f2afa){const _0xdd8032=this['context']['config']['get']('collaboration.channelId'),_0xf8f003=this['context']['plugins']['get'](i);_0xf8f003['unregister'](_0xdd8032);const _0x1db74b=await this['_services']['get'](_0xdd8032)['getConnectedSessions']();_0xf8f003['register'](_0xdd8032,_0x1db74b);}}async['_connectService'](_0x594fb8){const {connection:_0x38d550}=this['context']['plugins']['get'](c),_0x51d8de=this['context']['plugins']['get']('CommentsRepository'),_0x375b6e=this['_services']['get'](_0x594fb8),_0x49db1d=await _0x375b6e['connect'](_0x38d550);await this['_fetchMissingUsersForThreads'](_0x49db1d);const _0x444228=new Set(Array['from'](_0x51d8de['getCommentThreads']({'channelId':_0x594fb8}),_0x4092e1=>_0x4092e1['id']));for(const _0xef68f6 of _0x49db1d)_0xef68f6['deletedAt']||_0x444228['delete'](_0xef68f6['commentThreadId']);for(const _0x4d77ed of _0x444228)_0x51d8de['getCommentThread'](_0x4d77ed)['remove']({'isFromAdapter':!0x0});for(const _0x4265fc of _0x49db1d){let _0x289e67=_0x51d8de['getCommentThread'](_0x4265fc['commentThreadId']);const {commentThreadId:_0x5e0b9e,context:_0x310939,attributes:_0x5b8e75,resolvedBy:_0x51fd0d,resolvedAt:_0x274079,unlinkedAt:_0x572112,deletedAt:_0x20118b}=_0x4265fc;if(_0x20118b)continue;_0x289e67||(_0x289e67=_0x51d8de['addCommentThread']({'channelId':_0x594fb8,'threadId':_0x5e0b9e,'context':_0x310939,'attributes':_0x5b8e75||{},'resolvedBy':_0x51fd0d,'resolvedAt':_0x274079,'unlinkedAt':_0x572112,'isFromAdapter':!0x0}));const _0xd80f87=new Set(Array['from'](_0x289e67['comments'],_0x22da50=>_0x22da50['id']));for(const _0x51feba of _0x4265fc['comments'])_0xd80f87['delete'](_0x51feba['commentId']);for(const _0x43498e of _0xd80f87)_0x289e67['getComment'](_0x43498e)['remove']({'isFromAdapter':!0x0});for(const _0x2d5e3d of _0x4265fc['comments']){const _0xd21399=_0x289e67['getComment'](_0x2d5e3d['commentId']);_0xd21399?_0xd21399['content']!==_0x2d5e3d['content']&&_0xd21399['update']({'content':_0x2d5e3d['content'],'isFromAdapter':!0x0}):_0x289e67['addComment'](Object['assign'](b(_0x2d5e3d),{'isFromAdapter':!0x0}));}}}['_getService'](_0x21d73d){if(!this['_services']['has'](_0x21d73d))throw new _0x45d95c('cloudservicescommentsadapter-service-not-exist',null,{'channelId':_0x21d73d});return this['_services']['get'](_0x21d73d);}async['_fetchMissingUsersForThreads'](_0x5c0151){const _0x58194d=this['context']['plugins']['get'](_0x3ee0a5),{connection:_0x5600dc}=this['context']['plugins']['get'](c),_0xf41e70=new Set();for(const {resolvedBy:_0x2822cc,comments:_0x36b9b5}of _0x5c0151){_0x2822cc&&!_0x58194d['getUser'](_0x2822cc)&&_0xf41e70['add'](_0x2822cc);for(const {userId:_0x2b26a5}of _0x36b9b5)_0x58194d['getUser'](_0x2b26a5)||_0xf41e70['add'](_0x2b26a5);}if(0x0===_0xf41e70['size'])return;const _0x53b322=await dt['getMany'](_0x5600dc,Array['from'](_0xf41e70));for(const _0x2540d0 of _0x53b322)_0x58194d['getUser'](_0x2540d0['id'])||_0x58194d['addUser'](_0x2540d0);}}async function y(_0x3a01ca){if('404'!==_0x3a01ca['code'])throw _0x3a01ca;}function ut(_0x1ffb72){if((_0x21e7d3=_0x1ffb72)['message']['startsWith']('cloud-services-internal-error:\x20Comments\x20Service\x20is\x20not\x20connected.')||_0x21e7d3['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x21e7d3['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.'))return new Promise(()=>{});var _0x21e7d3;throw _0x1ffb72;}function b(_0x3a25f7){return{'threadId':_0x3a25f7['commentThreadId'],'commentId':_0x3a25f7['commentId'],'content':_0x3a25f7['content'],'createdAt':_0x3a25f7['createdAt'],'authorId':_0x3a25f7['userId'],'attributes':_0x3a25f7['attributes']||{}};}class f extends _0x82c6ed{static ['TrackChangesService']=/* #__PURE__ -- @preserve */
27
+ ((()=>et)());['_bufferedRequests'];['_trackChangesService'];static get['requires'](){return[a,'TrackChangesEditing',c];}static get['pluginName'](){return'CloudServicesTrackChangesAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x40f083){super(_0x40f083);const _0x2e1846=this['editor']['config']['get']('collaboration.channelId');this['_bufferedRequests']=new Map(),this['_trackChangesService']=new f['TrackChangesService'](_0x2e1846);}['init'](){const _0x5266aa=this['editor']['plugins']['get'](c),_0x4aa2be=this['editor']['plugins']['get']('TrackChangesEditing');return _0x4aa2be['adapter']={'getSuggestion':async _0x1794fc=>{await this['_waitForServiceReady']();const _0x1c5958=await this['_trackChangesService']['get'](_0x1794fc)['catch'](w);return await this['_fetchMissingUsersForThreads']([_0x1c5958]),_0x1c5958;},'addSuggestion':async({id:_0x800676,type:_0x4d1d7d,data:_0x59cf76,originalSuggestionId:_0x3a7e1b,attributes:_0x3fdfc6})=>{await this['_waitForServiceReady']();const _0x2fb623={'id':_0x800676,'type':_0x4d1d7d,'data':_0x59cf76,'originalSuggestionId':_0x3a7e1b,'attributes':_0x3fdfc6},_0x4a7da7=await this['_trackChangesService']['add'](_0x800676,_0x4d1d7d,_0x59cf76,_0x3a7e1b,_0x3fdfc6)['catch'](_0x320bf8=>{if(ft(_0x320bf8))return new Promise(_0x44918d=>{this['_bufferedRequests']['set'](_0x800676,{'resolve':_0x44918d,'suggestionData':_0x2fb623});});throw _0x320bf8;});return this['_bufferedRequests']['delete'](_0x800676),_0x4a7da7;},'updateSuggestion':async(_0x865cef,_0x7ccbc6)=>{if(await this['_waitForServiceReady'](),'open'!==_0x7ccbc6['state'])return this['_trackChangesService']['update'](_0x865cef,_0x7ccbc6)['catch'](w);}},this['listenTo'](this['_trackChangesService'],'suggestionUpdated',(_0x577382,_0x47d516)=>{_0x4aa2be['hasSuggestion'](_0x47d516['id'])&&(_0x4aa2be['getSuggestion'](_0x47d516['id'])['attributes']=_0x47d516['attributes']);}),this['_trackChangesService']['connect'](_0x5266aa['connection'])['then'](_0x42d37f=>(_0x5266aa['addToReconnectionStack'](this),this['_fetchMissingUsersForThreads'](_0x42d37f)['then'](()=>{for(const _0x261674 of _0x42d37f){_0x4aa2be['addSuggestionData'](_0x261674)['_saved']=!0x0;}})));}async['reconnect'](){const _0x5c21c5=this['editor']['plugins']['get']('TrackChangesEditing'),{connection:_0x1de4cd}=this['editor']['plugins']['get'](c),_0x129aed=await this['_trackChangesService']['connect'](_0x1de4cd);await this['_fetchMissingUsersForThreads'](_0x129aed);for(const {suggestionData:_0x291d52,resolve:_0x202aa4}of this['_bufferedRequests']['values']()){let _0x6ed854=_0x129aed['find'](_0x576cdc=>_0x576cdc['id']===_0x291d52['id']);_0x6ed854||(_0x6ed854=await this['_trackChangesService']['add'](_0x291d52['id'],_0x291d52['type'],_0x291d52['data'],_0x291d52['originalSuggestionId'])),_0x202aa4(_0x6ed854);}for(const _0x48e952 of _0x129aed)_0x5c21c5['hasSuggestion'](_0x48e952['id'])||_0x5c21c5['addSuggestionData'](_0x48e952);}async['_waitForServiceReady'](){this['_trackChangesService']['isConnected']||await new Promise(_0x30b023=>{this['listenTo'](this['_trackChangesService'],'connected',_0x4b38b4=>{_0x4b38b4['off'](),_0x30b023();});});}async['_fetchMissingUsersForThreads'](_0x23db91){const _0x550cc5=this['editor']['plugins']['get'](_0x3ee0a5),{connection:_0x1e1a70}=this['editor']['plugins']['get'](c),_0x26c9bc=new Set();for(const {authorId:_0x50fe8a}of _0x23db91)_0x550cc5['getUser'](_0x50fe8a)||_0x26c9bc['add'](_0x50fe8a);if(0x0===_0x26c9bc['size'])return;const _0x7b1fcc=await dt['getMany'](_0x1e1a70,Array['from'](_0x26c9bc));for(const _0x1f763c of _0x7b1fcc)_0x550cc5['getUser'](_0x1f763c['id'])||_0x550cc5['addUser'](_0x1f763c);}}function w(_0x236a02){if(ft(_0x236a02))return new Promise(()=>{});throw _0x236a02;}function ft(_0x225686){return _0x225686['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x225686['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}class m extends _0x82c6ed{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 _0x2973b9=this['editor']['plugins']['get'](c),_0xf0ea07=this['editor']['plugins']['get']('CommentsEditing'),_0x37106e=this['editor']['plugins']['get'](a);return this['editor']['data']['once']('ready',()=>{this['listenTo'](_0x2973b9,'change:state',(_0x55965a,_0x3fd87a,_0x5075e2)=>{_0xf0ea07['isThreadsLoadingPaused']='connected'!==_0x5075e2;});}),this['listenTo'](_0x2973b9,'change:state',(_0x37493b,_0x4e5832,_0x106069)=>{this['editor']['plugins']['get']('CommentsRepository')['switchReadOnly']('connected'!==_0x106069);}),_0x37106e['_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 _0x82c6ed{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 _0x82c6ed{static ['RevisionHistoryService']=/* #__PURE__ -- @preserve */
28
+ ((()=>it)());['_lastRequestId'];['_revisionTracker'];['_revisionHistoryService'];['_oldOffset'];static get['requires'](){return[c,l,'RevisionTracker',i,_0x3ee0a5];}static get['pluginName'](){return'CloudServicesRevisionHistoryAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x5a615a){super(_0x5a615a);const _0x19623a=this['editor']['config']['get']('collaboration.channelId');this['_lastRequestId']=null,this['_revisionTracker']=this['editor']['plugins']['get']('RevisionTracker'),this['_revisionHistoryService']=new u['RevisionHistoryService'](_0x19623a);}async['init'](){const _0x26a638=this['editor']['plugins']['get'](l),_0x4ed1e2=_0x26a638['serverHistory'],_0x444ebe=this['editor']['plugins']['get'](c);this['_revisionTracker']['setSource']({'history':_0x4ed1e2,'getLatestVersion':()=>this['_getLatestVersion'](),'getCurrentRevisionId':()=>_0x26a638['sessionId']});const _0x2ef2b4=this['editor']['config']['get']('cloudServices.bundleVersion')||nt,_0x115e11=await tt['isBundleUploaded'](_0x444ebe['connection'],_0x2ef2b4);this['_revisionTracker']['adapter']={'getRevision':async({revisionId:_0xd17928})=>(await this['_waitForServiceReady'](),await this['_revisionHistoryService']['getRevision'](_0xd17928)),'updateRevisions':async _0x228198=>{await this['_waitForServiceReady']();const _0x29c141=this['_revisionTracker']['currentRevision'];if(_0x115e11&&0x1===_0x228198['length']&&_0x228198[0x0]['id']===_0x29c141['id'])return _0x228198;for(const _0x4db47e of _0x228198)_0x4db47e['id']===_0x29c141['id']&&(_0x4db47e['isEmptyCurrent']=_0x4db47e['fromVersion']===_0x4db47e['toVersion']);return this['_revisionHistoryService']['updateRevisions'](_0x228198,this['_lastRequestId'])['then'](_0x43e52e=>(this['_lastRequestId']=_0x43e52e,_0x228198))['catch'](_0x2e4492=>{if(st(_0x2e4492)||'400'===_0x2e4492['code']&&void 0x0!==_0x2e4492['data']['wrongRequestId']){for(const _0x5bf1cc of _0x228198){!this['_revisionTracker']['repository']['getRevision'](_0x5bf1cc['id'])||this['_revisionTracker']['_bufferUpdate'](_0x5bf1cc['id'],_0x5bf1cc,!0x1);}if(st(_0x2e4492))throw _0x2e4492;return _0x228198;}throw _0x2e4492;});}},this['listenTo'](this['_revisionHistoryService'],'revisionsUpdated',(_0x3910c5,{revisionsData:_0x533dbf,requestId:_0x1f12b1})=>{Math['max'](..._0x533dbf['map'](_0x1dabc7=>_0x1dabc7['toVersion']))>this['_getLatestVersionFromServerOperations']()-0x1?this['_getLatestVersion']()['then'](()=>{this['_handleRevisionsUpdate'](_0x533dbf,_0x1f12b1);}):this['_handleRevisionsUpdate'](_0x533dbf,_0x1f12b1);});const {revisions:_0x62fd3,requestId:_0x50646c}=await this['_revisionHistoryService']['connect'](_0x444ebe['connection']);_0x444ebe['addToReconnectionStack'](this),this['_lastRequestId']=_0x50646c,await this['_fetchMissingUsers'](_0x62fd3);for(const _0x504450 of _0x62fd3)this['_revisionTracker']['addRevisionData'](_0x504450);this['listenTo'](_0x26a638,'change:_isConnected',(_0x5e58db,_0x1ea0bb,_0x510d13)=>{_0x510d13&&(this['_oldOffset']=_0x26a638['_offset'],_0x5e58db['off']());}),this['_revisionTracker']['bind']('isEnabled')['to'](_0x444ebe,'state',_0x4ad0cc=>_0x4ad0cc===_0xaa45d7['CONNECTED']);}async['reconnect'](){const _0x45b03f=this['editor']['plugins']['get'](c),_0x2d3614=this['editor']['plugins']['get'](l),_0x5485b4=async()=>{const _0x4b0674=this['_revisionTracker']['currentRevision'],_0x448cef=_0x4b0674['id'],_0x24f027=_0x448cef!==_0x2d3614['sessionId'];if(_0x24f027){const _0x4bbf69=_0x2d3614['_offset']-this['_oldOffset'],_0x36d89d=this['_getLatestVersionFromServerOperations']();this['_revisionTracker']['_revisionDataBuilder']['reInit']();if(_0x4b0674['toVersion']+_0x4bbf69!==_0x36d89d){const _0x1274c6=_0x4b0674['fromVersion']+_0x4bbf69,_0x5acb5f=this['editor']['plugins']['get'](_0x3ee0a5),_0xb100f5=this['_revisionTracker']['buildRevisionData']({'revision':_0x4b0674,'from':_0x1274c6,'to':_0x36d89d});_0xb100f5['id']=_0x4b0674['id'];const _0x5c6377=_0xb100f5['authorsIds']['map'](_0x12e1e6=>_0x5acb5f['getUser'](_0x12e1e6));_0x4b0674['_update']({..._0xb100f5,'authors':_0x5c6377},!0x0),this['_revisionTracker']['_bufferUpdate'](_0x4b0674['id'],_0xb100f5,!0x0);}this['_revisionTracker']['_startingVersion']=_0x36d89d,(_0x4b0674['toVersion']===_0x4b0674['fromVersion']&&!this['_revisionTracker']['_bufferedUpdates']['has'](_0x448cef)&&this['_revisionTracker']['repository']['_revisions']['remove'](_0x448cef),this['_revisionTracker']['_createCurrentRevision'](_0x36d89d));}const {revisions:_0x11f846,requestId:_0x444e74}=await this['_revisionHistoryService']['reconnect'](_0x45b03f['connection'],this['_lastRequestId']);_0x24f027&&_0x11f846['length']>0x0?_0x2d3614['_handleReconnectionError']():(await this['_fetchMissingUsers'](_0x11f846),this['_handleRevisionsUpdate'](_0x11f846,_0x444e74),this['_revisionTracker']['sendBufferedUpdates']());};return _0x2d3614['_isConnected']?_0x5485b4():new Promise((_0x221c7f,_0x16815b)=>{_0x2d3614['once']('change:_isConnected',()=>{_0x5485b4()['then'](_0x221c7f)['catch'](_0x16815b);});});}['destroy'](){super['destroy']();}async['_waitForServiceReady'](){this['_revisionHistoryService']['isConnected']||await new Promise(_0x3a2b8f=>{this['listenTo'](this['_revisionHistoryService'],'connected',_0x26f818=>{_0x26f818['off'](),_0x3a2b8f();});});}['_getLatestVersionFromServerOperations'](){const _0x487b0a=this['editor']['plugins']['get'](l)['serverHistory']['getOperations']()['reverse']();for(const _0x475991 of _0x487b0a)if('marker'!==_0x475991['type']||_0x475991['affectsData'])return _0x475991['baseVersion']+0x1;}['_getLatestVersion'](){const _0x35f538=this['editor']['plugins']['get'](l);return new Promise(_0x47249f=>{_0x35f538['_isPendingUpdate']?_0x35f538['once']('change:_isPendingUpdate',()=>{_0x47249f(this['_getLatestVersionFromServerOperations']());}):_0x47249f(this['_getLatestVersionFromServerOperations']());});}['_handleRevisionsUpdate'](_0x5349ad,_0x3d8cba){const _0x3d2176=this['_revisionTracker']['repository'];this['_lastRequestId']=_0x3d8cba;for(const _0x170b01 of _0x5349ad){const _0x33ed5b=_0x3d2176['getRevision'](_0x170b01['id']);if(_0x33ed5b){if((_0x170b01['fromVersion']||_0x170b01['toVersion'])&&(_0x170b01['diffData']=null),_0x33ed5b===this['_revisionTracker']['currentRevision']){const _0x45eaf1=Math['max'](_0x33ed5b['toVersion'],_0x170b01['toVersion']),_0x1ac526=Math['max'](_0x33ed5b['fromVersion'],_0x170b01['fromVersion']);let _0x4cc85f;_0x33ed5b['toVersion']===_0x170b01['toVersion']&&_0x33ed5b['fromVersion']===_0x170b01['fromVersion']?(_0x4cc85f=!0x0,this['_preventResendingRevisionData'](_0x170b01)):_0x170b01['toVersion']===_0x45eaf1&&_0x170b01['fromVersion']===_0x1ac526?_0x4cc85f=!0x1:(_0x33ed5b['toVersion']===_0x45eaf1&&_0x33ed5b['fromVersion']===_0x1ac526||this['_fixRevision']({'revision':_0x33ed5b,'from':_0x1ac526,'to':_0x45eaf1}),_0x4cc85f=!0x0),_0x4cc85f&&(delete _0x170b01['fromVersion'],delete _0x170b01['toVersion'],delete _0x170b01['diffData'],delete _0x170b01['createdAt'],delete _0x170b01['authorsIds']);}this['_revisionTracker']['setRevisionData'](_0x170b01),this['_preventResendingRevisionData'](_0x170b01);}else this['_revisionTracker']['addRevisionData'](_0x170b01);}const _0x3dc6c6=_0x3d2176['getRevisions']();_0x3dc6c6['reverse']();for(let _0x1c5fdb=0x0;_0x1c5fdb<_0x3dc6c6['length']-0x1;_0x1c5fdb++){const _0x187ae4=_0x3dc6c6[_0x1c5fdb],_0x388604=_0x3dc6c6[_0x1c5fdb+0x1];if(_0x187ae4['fromVersion']<_0x388604['toVersion']){const _0xc436c3=_0x388604['toVersion'],_0x343505=Math['max'](_0xc436c3,_0x187ae4['toVersion']);this['_fixRevision']({'revision':_0x187ae4,'from':_0xc436c3,'to':_0x343505});}}}['_fixRevision']({revision:_0xce7579,from:_0x4e44d1,to:_0x67fdc3}={}){const _0x560579=this['editor']['plugins']['get'](_0x3ee0a5),_0x5e1961=this['_revisionTracker']['buildRevisionData']({'revision':_0xce7579,'from':_0x4e44d1,'to':_0x67fdc3});_0x5e1961['authors']=_0x5e1961['authorsIds']['map'](_0x4a54ad=>_0x560579['getUser'](_0x4a54ad)),_0xce7579['_update'](_0x5e1961);}['_preventResendingRevisionData'](_0x25919c){const _0x5c2725={};_0x5c2725['id']=_0x25919c['id'];for(const _0x5875be of Object['keys'](_0x25919c))'id'!==_0x5875be&&(_0x5c2725[_0x5875be]=void 0x0);this['_revisionTracker']['_bufferUpdate'](_0x5c2725['id'],_0x5c2725,!0x0);}async['_fetchMissingUsers'](_0x5528f8){const _0x47d127=this['editor']['plugins']['get'](_0x3ee0a5),{connection:_0x5e1462}=this['editor']['plugins']['get'](c),_0x20cc3e=new Set();for(const _0x32ec46 of _0x5528f8){for(const _0xf63cc8 of _0x32ec46['authorsIds'])_0x1c7dbe(_0xf63cc8);_0x32ec46['creatorId']&&_0x1c7dbe(_0x32ec46['creatorId']);}if(0x0===_0x20cc3e['size'])return;const _0x400e5b=await dt['getMany'](_0x5e1462,Array['from'](_0x20cc3e));for(const _0x3b0588 of _0x400e5b)_0x47d127['getUser'](_0x3b0588['id'])||_0x47d127['addUser'](_0x3b0588);function _0x1c7dbe(_0x71b554){_0x47d127['getUser'](_0x71b554)||_0x20cc3e['add'](_0x71b554);}}}function st(_0x452a52){return _0x452a52['message']['startsWith']('cloud-services-internal-error:\x20Revision\x20History\x20Service\x20is\x20not\x20connected.')||_0x452a52['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x452a52['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}class g extends _0x82c6ed{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 _0x22b55f{constructor(_0x1b9398){super(_0x1b9398);const _0x594714=this['bindTemplate'];this['set']('usersCount',0x0),this['set']('isHidden',!0x0),this['setTemplate']({'tag':'div','attributes':{'class':['ck','ck-presence-list__counter',_0x594714['if']('isHidden','ck-presence-list__counter--hidden')]},'children':[{'text':_0x594714['to']('usersCount',_0x27c457=>q(_0x1b9398,'CONNECTED_USERS',_0x27c457))}]});}}class es extends _0x22b55f{['items'];['keystrokes'];constructor(_0x5b3e45){super(_0x5b3e45);const _0x1c1a5c=this['bindTemplate'];this['items']=this['createCollection'](),this['keystrokes']=new _0x3a5c99(),this['set']({'hasPopup':!0x1,'isExpanded':!0x1}),this['setTemplate']({'tag':'div','attributes':{'aria-haspopup':_0x1c1a5c['if']('hasPopup'),'aria-expanded':_0x1c1a5c['to']('isExpanded',_0x2e1991=>this['hasPopup']&&String(_0x2e1991)),'aria-label':_0x1c1a5c['to']('hasPopup',_0x214e9f=>q(_0x5b3e45,_0x214e9f?'Collapsed\x20connected\x20users\x20list\x20(press\x20ENTER\x20to\x20open\x20it)':'Connected\x20users\x20list')),'role':'list','tabindex':_0x1c1a5c['to']('hasPopup',_0x3fbe1a=>!!_0x3fbe1a&&0x0),'class':['ck','ck-presence-list__list']},'children':this['items'],'on':{'click':_0x1c1a5c['to'](()=>this['fire']('execute'))}}),this['on']('change:hasPopup',(_0x5e1ad6,_0x4ab2c3,_0x234e7e)=>{this['element']&&(_0x234e7e?this['element']['setAttribute']('aria-expanded',String(this['isExpanded'])):this['element']['removeAttribute']('aria-expanded'));});}['focus'](){this['element']['focus']();}['render'](){super['render'](),this['keystrokes']['listenTo'](this['element']);}}class _ extends _0x22b55f{['counterView'];['inlineListView'];constructor(_0x422eec){super(_0x422eec);const _0x51f076=this['bindTemplate'];this['set']('isCollapsed',!0x0),this['counterView']=new ts(this['locale']),this['inlineListView']=new es(_0x422eec),this['inlineListView']['bind']('hasPopup')['to'](this,'isCollapsed'),this['listenTo'](this['inlineListView']['items'],'change',()=>{for(const _0x361176 of this['inlineListView']['items'])_0x361176['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',_0x51f076['if']('isCollapsed','ck-presence-list--collapsed')]},'children':[this['counterView'],this['inlineListView']]});}}class M extends _0x22b55f{['listWrapperView'];constructor(_0x5e39f5,_0x38230c){super(_0x5e39f5),this['listWrapperView']=new mt(_0x5e39f5,_0x38230c),this['setTemplate']({'tag':'div','attributes':{'tabindex':-0x1,'role':'application','class':['ck','ck-presence-list__dropdown-list'],'aria-label':q(_0x5e39f5,'Connected\x20users\x20list\x20dropdown\x20menu')},'children':[this['listWrapperView']]});}}class mt extends _0x4e8cc6{constructor(_0x78eef8,_0x31eb7c){super(_0x78eef8);const _0x7a0f3d=this['bindTemplate'];this['set']('_isScrollable',!0x1),this['setTemplate']({'tag':_0x31eb7c?'div':'ul','attributes':{'class':['ck','ck-reset','ck-list','ck-presence-list__dropdown-list-wrapper',_0x7a0f3d['if']('_isScrollable','ck-presence-list__dropdown-list-wrapper_scrollable')],'role':_0x7a0f3d['to']('role'),'aria-label':_0x7a0f3d['to']('ariaLabel'),'aria-labelledby':_0x7a0f3d['to']('ariaLabelledBy')},'children':this['items']}),this['listenTo'](_0x3c7de5['window'],'resize',()=>this['checkIfScrollable']()),this['items']['on']('change',()=>this['checkIfScrollable']());}['render'](){super['render'](),this['checkIfScrollable']();}['checkIfScrollable'](){const _0x3a7ada=this['element'];_0x3a7ada&&(this['_isScrollable']=Math['max'](_0x3a7ada['scrollHeight'],_0x3a7ada['clientHeight'])>0.8*window['innerHeight']);}}class E extends rt{['userView'];constructor(_0x40485a,_0x396b66,_0x525cdd){super(_0x40485a);const _0x156e8d=this['bindTemplate'];this['userView']=new ct(_0x40485a,_0x396b66);const _0x2f3e6d={'tag':'li','attributes':{'class':['ck','ck-presence-list__dropdown-list-item'],'tabindex':-0x1,'role':'presentation','aria-label':_0x396b66['name']},'children':[this['userView'],{'tag':'span','attributes':{'class':['ck','ck-user__full-name']},'children':[{'text':_0x396b66['name']}]},{'tag':'span','attributes':{'class':['ck','ck-presence-list__marker',_0x396b66['color']['getBackgroundColorClass']()],'aria-hidden':'true'}}]};_0x525cdd&&(_0x2f3e6d['tag']='button',_0x2f3e6d['on']={'click':_0x156e8d['to'](()=>this['fire']('execute'))}),this['setTemplate'](_0x2f3e6d);}['focus'](){this['element']['focus']();}}class T extends _0x22b55f{['userView'];['markerView'];constructor(_0x1a2484,_0xab6ef7,_0x3e27e0){super(_0x1a2484);const _0x297bad=this['bindTemplate'];this['set']('isFocusable',!0x1),this['set']('hasTooltip',!0x0),this['set']('tooltipPosition',''),this['userView']=new ct(_0x1a2484,_0xab6ef7),this['markerView']=new at(_0x1a2484,_0xab6ef7);const _0x115b17=new ot(_0x1a2484);_0x115b17['template']['tag']='span',_0x115b17['text']=_0xab6ef7['name'];const _0x1b4349={'tag':'div','attributes':{'class':['ck','ck-presence-list__list-item'],'role':'listitem','tabindex':_0x297bad['to']('isFocusable',_0x574a37=>!!_0x574a37&&0x0),'aria-labelledby':_0x115b17['id'],'data-cke-tooltip-text':this['userView']['name'],'data-cke-tooltip-position':_0x297bad['to']('tooltipPosition'),'data-cke-tooltip-disabled':_0x297bad['to']('hasTooltip',_0xdc2d9=>!_0xdc2d9),'data-cke-tooltip-class':'ck-presence-list__list-item__tooltip'},'children':[this['userView'],this['markerView'],_0x115b17]};_0x3e27e0&&(_0x1b4349['tag']='button',_0x1b4349['on']={'click':_0x297bad['to'](()=>this['fire']('execute'))}),this['setTemplate'](_0x1b4349);}}class at extends _0x22b55f{constructor(_0x40e141,_0x220345){super(_0x40e141),this['setTemplate']({'tag':'span','attributes':{'class':['ck','ck-presence-list__marker',_0x220345['color']['getBackgroundColorClass']()],'aria-hidden':'true'}});}}const D={'collapseAt':0x6,'displayMe':!0x0};class r extends _0x39c783{['currentDisplayedUsers'];['balloonPanelView'];['view'];['presenceDropdownView'];['_bodyCollection']=null;constructor(_0x3bb76a){super(_0x3bb76a),this['context']['config']['define']('presenceList',D);const _0x580d50=_0x3bb76a['config']['get']('presenceList.collapseAt');if('number'!=typeof _0x580d50)throw new _0x45d95c('presencelist-collapseat-invalid-format',this);if(_0x580d50<0x1)throw new _0x45d95c('presencelist-collapseat-invalid-format',this);this['_allConnectedUsers']=this['context']['plugins']['get'](i)['allConnectedUsers'],this['set']('usersCount',0x0),this['currentDisplayedUsers']=new _0x107994(),this['balloonPanelView']=new _0x1d7d19(),this['balloonPanelView']['class']='ck\x20ck-presence-list__balloon',this['view']=this['_createView'](),this['presenceDropdownView']=void 0x0;}static get['requires'](){return[i];}['init'](){for(const _0xcf563f of this['_allConnectedUsers'])this['_handleUserAdd'](_0xcf563f);this['listenTo'](this['_allConnectedUsers'],'add',(_0x200caa,_0x325391)=>{this['_handleUserAdd'](_0x325391);}),this['listenTo'](this['_allConnectedUsers'],'remove',(_0x264f66,_0xa4a09d)=>{this['_handleUserRemove'](_0xa4a09d);});}['_createView'](){const _0x2d84ac=this['context'],_0xec7564=new _(this['context']['locale']),_0x179d68=this['balloonPanelView'];if(!_0x35a613(_0x2d84ac['config']['get']('presenceList.container')))throw new _0x45d95c('presencelist-missing-container',this);return _0xec7564['counterView']['bind']('usersCount')['to'](this),_0xec7564['bind']('isCollapsed')['to'](this,'usersCount',_0x27ba51=>{const {collapseAt:_0x757553,displayMe:_0x55eefe}=_0x2d84ac['config']['get']('presenceList'),_0x716bd6=_0x27ba51>=_0x757553;return _0xec7564['counterView']['isHidden']=!(0x1==_0x27ba51&&_0x55eefe||_0x716bd6),_0x716bd6||this['hideDropdown'](),_0x716bd6;}),_0xec7564['inlineListView']['items']['bindTo'](this['currentDisplayedUsers'])['using'](_0x2b2647=>{const _0x529780=_0x2d84ac['config']['get']('presenceList'),_0x5d9d8b=new T(_0x2d84ac['locale'],_0x2b2647,!!_0x529780['onClick']);return _0x5d9d8b['bind']('hasTooltip')['to'](_0xec7564,'isCollapsed',_0x3a4483=>!_0x3a4483),_0x5d9d8b['bind']('isFocusable')['to'](_0xec7564,'isCollapsed',_0xc54771=>!_0xc54771),_0x529780['onClick']&&this['listenTo'](_0x5d9d8b,'execute',()=>{this['view']['isCollapsed']||_0x529780['onClick'](_0x2b2647,_0x5d9d8b['element']);}),_0x5d9d8b;}),this['listenTo'](_0xec7564['inlineListView'],'execute',()=>{this['presenceDropdownView']?this['hideDropdown']():this['view']['isCollapsed']&&this['showDropdown']();}),_0xec7564['inlineListView']['keystrokes']['set']('Enter',(_0x2d6225,_0x4636b3)=>{this['view']['isCollapsed']&&(this['showDropdown'](),_0x4636b3());}),_0xec7564['render'](),_0x179d68['render'](),_0x1d9fd0({'emitter':_0xec7564,'activator':()=>_0x179d68['isVisible'],'contextElements':[_0x179d68['element'],_0xec7564['inlineListView']['element']],'callback':()=>this['hideDropdown']()}),_0x2d84ac['config']['get']('presenceList.container')['appendChild'](_0xec7564['element']),this['_bodyCollection']=new _0x45e834(this['context']['locale']),this['_bodyCollection']['attachToDom'](),this['_bodyCollection']['add'](this['balloonPanelView']),_0xec7564;}['_handleUserAdd'](_0x3e8f9a){if(!this['context']['config']['get']('presenceList.displayMe')&&_0x3e8f9a['isMe'])return;const _0x307959=this['context']['config']['get']('presenceList.collapseAt')-0x1;this['usersCount']++,this['currentDisplayedUsers']['length']==_0x307959&&this['currentDisplayedUsers']['length']>0x1&&this['currentDisplayedUsers']['remove'](0x1);const _0x430d30=_0x3e8f9a['isMe']?0x0:this['currentDisplayedUsers']['length'];this['currentDisplayedUsers']['add'](_0x3e8f9a,_0x430d30);}['_handleUserRemove'](_0x3d6e04){if(this['usersCount']--,this['currentDisplayedUsers']['get'](_0x3d6e04['id'])&&(this['currentDisplayedUsers']['remove'](_0x3d6e04['id']),this['currentDisplayedUsers']['length']<this['usersCount'])){for(const _0x132f1c of Array['from'](this['_allConnectedUsers'])['reverse']())if(!this['currentDisplayedUsers']['get'](_0x132f1c['id']))return void this['currentDisplayedUsers']['add'](_0x132f1c,Math['min'](this['currentDisplayedUsers']['length'],0x1));}}['showDropdown'](){if(this['presenceDropdownView'])return;const _0xaae698=this['context']['config']['get']('presenceList');this['presenceDropdownView']=new M(this['context']['locale'],!!_0xaae698['onClick']),this['view']['inlineListView']['isExpanded']=!0x0;const {listWrapperView:_0x3a1e41}=this['presenceDropdownView'];_0x3a1e41['items']['bindTo'](this['_allConnectedUsers'])['using'](_0x223952=>{if(!_0xaae698['displayMe']&&_0x223952['isMe'])return null;const _0x2a4f34=new E(this['context']['locale'],_0x223952,!!_0xaae698['onClick']);return _0xaae698['onClick']&&this['listenTo'](_0x2a4f34,'execute',()=>{_0xaae698['onClick'](_0x223952,_0x2a4f34['element']);}),_0x2a4f34;}),this['balloonPanelView']['content']['add'](this['presenceDropdownView']),this['balloonPanelView']['pin']({'target':this['view']['inlineListView']['element']}),_0x3a1e41['focus'](),_0x3a1e41['checkIfScrollable']();const _0x96d6db=(_0x2da254,_0x53a75f)=>{this['hideDropdown'](),this['view']['inlineListView']['focus'](),_0x53a75f();};_0x3a1e41['keystrokes']['set']('Esc',_0x96d6db),_0x3a1e41['keystrokes']['set']('Shift+Tab',_0x96d6db),_0x3a1e41['keystrokes']['set']('Tab',(_0x775623,_0x108e08)=>{!function(_0x7cd423){const _0x5b4b91=['a','button','input','select','textarea','[tabindex]','[contenteditable]']['map'](_0x4480ee=>_0x4480ee+':not([disabled]):not([tabindex=\x22-1\x22])')['join'](','),_0xccffa=[...document['body']['querySelectorAll'](_0x5b4b91)]['filter'](_0x471d8e=>_0x471d8e===document['activeElement']||_0x471d8e['offsetWidth']+_0x471d8e['offsetHeight']>0x0)['sort']((_0x5d7054,_0x26b85c)=>(_0x5d7054['tabIndex']||0x0)-(_0x26b85c['tabIndex']||0x0)),_0x52a2f3=_0xccffa['indexOf'](_0x7cd423),_0xf67806=_0xccffa[(_0x52a2f3+0x1)%_0xccffa['length']];_0xf67806&&_0xf67806['focus']();}(this['view']['element']),this['hideDropdown'](),_0x108e08();}),_0x3a1e41['focusTracker']['add'](this['view']['element']),_0x3a1e41['focusTracker']['on']('change:isFocused',(_0x470df5,_0xb1667c,_0x4c9603)=>{_0x4c9603||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 _0x39c783{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,i as Sessions};
@@ -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':_0x1d86d8=>0x1!=_0x1d86d8}};
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':_0x2d0065=>0x1!=_0x2d0065}};
@@ -20,4 +20,4 @@
20
20
  *
21
21
  *
22
22
  */
23
- (_0x56828e=>{const {af:{dictionary:_0x43c258,getPluralForm:_0xb682f8}}={'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':_0x5ee984=>0x1!=_0x5ee984}};_0x56828e['af']||={'dictionary':{},'getPluralForm':null},_0x56828e['af']['dictionary']=Object['assign'](_0x56828e['af']['dictionary'],_0x43c258),_0x56828e['af']['getPluralForm']=_0xb682f8;})(window['CKEDITOR_TRANSLATIONS']||={});
23
+ (_0x20dc0d=>{const {af:{dictionary:_0x5ab49a,getPluralForm:_0x5b2bd0}}={'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':_0x131eb2=>0x1!=_0x131eb2}};_0x20dc0d['af']||={'dictionary':{},'getPluralForm':null},_0x20dc0d['af']['dictionary']=Object['assign'](_0x20dc0d['af']['dictionary'],_0x5ab49a),_0x20dc0d['af']['getPluralForm']=_0x5b2bd0;})(window['CKEDITOR_TRANSLATIONS']||={});