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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (168) hide show
  1. package/build/real-time-collaboration.js +1 -1
  2. package/dist/index.js +6 -6
  3. package/dist/translations/af.js +1 -1
  4. package/dist/translations/af.umd.js +1 -1
  5. package/dist/translations/ar.js +1 -1
  6. package/dist/translations/ar.umd.js +1 -1
  7. package/dist/translations/ast.js +1 -1
  8. package/dist/translations/ast.umd.js +1 -1
  9. package/dist/translations/az.js +1 -1
  10. package/dist/translations/az.umd.js +1 -1
  11. package/dist/translations/bg.js +1 -1
  12. package/dist/translations/bg.umd.js +1 -1
  13. package/dist/translations/bn.js +1 -1
  14. package/dist/translations/bn.umd.js +1 -1
  15. package/dist/translations/bs.js +1 -1
  16. package/dist/translations/bs.umd.js +1 -1
  17. package/dist/translations/ca.js +1 -1
  18. package/dist/translations/ca.umd.js +1 -1
  19. package/dist/translations/cs.js +1 -1
  20. package/dist/translations/cs.umd.js +1 -1
  21. package/dist/translations/da.js +1 -1
  22. package/dist/translations/da.umd.js +1 -1
  23. package/dist/translations/de-ch.js +1 -1
  24. package/dist/translations/de-ch.umd.js +1 -1
  25. package/dist/translations/de.js +1 -1
  26. package/dist/translations/de.umd.js +1 -1
  27. package/dist/translations/el.js +1 -1
  28. package/dist/translations/el.umd.js +1 -1
  29. package/dist/translations/en-au.js +1 -1
  30. package/dist/translations/en-au.umd.js +1 -1
  31. package/dist/translations/en-gb.js +1 -1
  32. package/dist/translations/en-gb.umd.js +1 -1
  33. package/dist/translations/en.js +1 -1
  34. package/dist/translations/en.umd.js +1 -1
  35. package/dist/translations/eo.js +1 -1
  36. package/dist/translations/eo.umd.js +1 -1
  37. package/dist/translations/es-co.js +1 -1
  38. package/dist/translations/es-co.umd.js +1 -1
  39. package/dist/translations/es.js +1 -1
  40. package/dist/translations/es.umd.js +1 -1
  41. package/dist/translations/et.js +1 -1
  42. package/dist/translations/et.umd.js +1 -1
  43. package/dist/translations/eu.js +1 -1
  44. package/dist/translations/eu.umd.js +1 -1
  45. package/dist/translations/fa.js +1 -1
  46. package/dist/translations/fa.umd.js +1 -1
  47. package/dist/translations/fi.js +1 -1
  48. package/dist/translations/fi.umd.js +1 -1
  49. package/dist/translations/fr.js +1 -1
  50. package/dist/translations/fr.umd.js +1 -1
  51. package/dist/translations/gl.js +1 -1
  52. package/dist/translations/gl.umd.js +1 -1
  53. package/dist/translations/gu.js +1 -1
  54. package/dist/translations/gu.umd.js +1 -1
  55. package/dist/translations/he.js +1 -1
  56. package/dist/translations/he.umd.js +1 -1
  57. package/dist/translations/hi.js +1 -1
  58. package/dist/translations/hi.umd.js +1 -1
  59. package/dist/translations/hr.js +1 -1
  60. package/dist/translations/hr.umd.js +1 -1
  61. package/dist/translations/hu.js +1 -1
  62. package/dist/translations/hu.umd.js +1 -1
  63. package/dist/translations/hy.js +1 -1
  64. package/dist/translations/hy.umd.js +1 -1
  65. package/dist/translations/id.js +1 -1
  66. package/dist/translations/id.umd.js +1 -1
  67. package/dist/translations/it.js +1 -1
  68. package/dist/translations/it.umd.js +1 -1
  69. package/dist/translations/ja.js +1 -1
  70. package/dist/translations/ja.umd.js +1 -1
  71. package/dist/translations/jv.js +1 -1
  72. package/dist/translations/jv.umd.js +1 -1
  73. package/dist/translations/kk.js +1 -1
  74. package/dist/translations/kk.umd.js +1 -1
  75. package/dist/translations/km.js +1 -1
  76. package/dist/translations/km.umd.js +1 -1
  77. package/dist/translations/kn.js +1 -1
  78. package/dist/translations/kn.umd.js +1 -1
  79. package/dist/translations/ko.js +1 -1
  80. package/dist/translations/ko.umd.js +1 -1
  81. package/dist/translations/ku.js +1 -1
  82. package/dist/translations/ku.umd.js +1 -1
  83. package/dist/translations/lt.js +1 -1
  84. package/dist/translations/lt.umd.js +1 -1
  85. package/dist/translations/lv.js +1 -1
  86. package/dist/translations/lv.umd.js +1 -1
  87. package/dist/translations/ms.js +1 -1
  88. package/dist/translations/ms.umd.js +1 -1
  89. package/dist/translations/nb.js +1 -1
  90. package/dist/translations/nb.umd.js +1 -1
  91. package/dist/translations/ne.js +1 -1
  92. package/dist/translations/ne.umd.js +1 -1
  93. package/dist/translations/nl.js +1 -1
  94. package/dist/translations/nl.umd.js +1 -1
  95. package/dist/translations/no.js +1 -1
  96. package/dist/translations/no.umd.js +1 -1
  97. package/dist/translations/oc.js +1 -1
  98. package/dist/translations/oc.umd.js +1 -1
  99. package/dist/translations/pl.js +1 -1
  100. package/dist/translations/pl.umd.js +1 -1
  101. package/dist/translations/pt-br.js +1 -1
  102. package/dist/translations/pt-br.umd.js +1 -1
  103. package/dist/translations/pt.js +1 -1
  104. package/dist/translations/pt.umd.js +1 -1
  105. package/dist/translations/ro.js +1 -1
  106. package/dist/translations/ro.umd.js +1 -1
  107. package/dist/translations/ru.js +1 -1
  108. package/dist/translations/ru.umd.js +1 -1
  109. package/dist/translations/si.js +1 -1
  110. package/dist/translations/si.umd.js +1 -1
  111. package/dist/translations/sk.js +1 -1
  112. package/dist/translations/sk.umd.js +1 -1
  113. package/dist/translations/sl.js +1 -1
  114. package/dist/translations/sl.umd.js +1 -1
  115. package/dist/translations/sq.js +1 -1
  116. package/dist/translations/sq.umd.js +1 -1
  117. package/dist/translations/sr-latn.js +1 -1
  118. package/dist/translations/sr-latn.umd.js +1 -1
  119. package/dist/translations/sr.js +1 -1
  120. package/dist/translations/sr.umd.js +1 -1
  121. package/dist/translations/sv.js +1 -1
  122. package/dist/translations/sv.umd.js +1 -1
  123. package/dist/translations/th.js +1 -1
  124. package/dist/translations/th.umd.js +1 -1
  125. package/dist/translations/ti.js +1 -1
  126. package/dist/translations/ti.umd.js +1 -1
  127. package/dist/translations/tk.js +1 -1
  128. package/dist/translations/tk.umd.js +1 -1
  129. package/dist/translations/tr.js +1 -1
  130. package/dist/translations/tr.umd.js +1 -1
  131. package/dist/translations/tt.js +1 -1
  132. package/dist/translations/tt.umd.js +1 -1
  133. package/dist/translations/ug.js +1 -1
  134. package/dist/translations/ug.umd.js +1 -1
  135. package/dist/translations/uk.js +1 -1
  136. package/dist/translations/uk.umd.js +1 -1
  137. package/dist/translations/ur.js +1 -1
  138. package/dist/translations/ur.umd.js +1 -1
  139. package/dist/translations/uz.js +1 -1
  140. package/dist/translations/uz.umd.js +1 -1
  141. package/dist/translations/vi.js +1 -1
  142. package/dist/translations/vi.umd.js +1 -1
  143. package/dist/translations/zh-cn.js +1 -1
  144. package/dist/translations/zh-cn.umd.js +1 -1
  145. package/dist/translations/zh.js +1 -1
  146. package/dist/translations/zh.umd.js +1 -1
  147. package/package.json +9 -9
  148. package/src/common-translations.js +1 -1
  149. package/src/index.js +1 -1
  150. package/src/presencelist/presencelistui.js +1 -1
  151. package/src/presencelist/view/presencecounterview.js +1 -1
  152. package/src/presencelist/view/presencedropdownlistitemview.js +1 -1
  153. package/src/presencelist/view/presencedropdownlistview.js +1 -1
  154. package/src/presencelist/view/presenceinlinelistitemview.js +1 -1
  155. package/src/presencelist/view/presenceinlinelistview.js +1 -1
  156. package/src/presencelist/view/presencelistview.js +1 -1
  157. package/src/presencelist.js +1 -1
  158. package/src/realtimecollaborativecomments/cloudservicescommentsadapter.js +1 -1
  159. package/src/realtimecollaborativecomments.js +1 -1
  160. package/src/realtimecollaborativeediting/realtimecollaborationclient.js +1 -1
  161. package/src/realtimecollaborativeediting/sessions.js +1 -1
  162. package/src/realtimecollaborativeediting/usermarkers.js +1 -1
  163. package/src/realtimecollaborativeediting/websocketgateway.js +1 -1
  164. package/src/realtimecollaborativeediting.js +1 -1
  165. package/src/realtimecollaborativerevisionhistory/cloudservicesrevisionhistoryadapter.js +1 -1
  166. package/src/realtimecollaborativerevisionhistory.js +1 -1
  167. package/src/realtimecollaborativetrackchanges/cloudservicestrackchangesadapter.js +1 -1
  168. package/src/realtimecollaborativetrackchanges.js +1 -1
package/dist/index.js CHANGED
@@ -20,9 +20,9 @@
20
20
  *
21
21
  *
22
22
  */
23
- import{ContextPlugin as _0x34d5bf,Plugin as _0x255d8c,PendingActions as _0x3c2701,Context as _0x326182}from'@ckeditor/ckeditor5-core/dist/index.js';import{DomEmitterMixin as _0x4bc5a2,CKEditorError as _0x2e31b4,Collection as _0x3b97a7,global as _0x54f579,version as dt,uid as _0x24a4f3,KeystrokeHandler as _0x38ba82}from'@ckeditor/ckeditor5-utils/dist/index.js';import{Notification as _0xb84eee,View as _0x4a9566,ListView as _0x51992f,ListItemView as ct,LabelView as lt,BalloonPanelView as _0x21dd49,clickOutsideHandler as _0x1e1784,BodyCollection as tt}from'@ckeditor/ckeditor5-ui/dist/index.js';import{LiveRange as ut,History as _0xa9ff56,NoOperation as _0x712f2e,InsertOperation as _0x3558c6,MarkerOperation as _0x4bec01,RootAttributeOperation as _0x35113a,transformSets as _0x2d51b7,OperationFactory as _0x460006}from'@ckeditor/ckeditor5-engine/dist/index.js';import{WebSocketGateway as ft,WEB_SOCKET_GATEWAY_STATES as _0x5c0f85,CollaborativeEditingService as _0x4564af,User as mt,CommentsService as _0x3b207a,TrackChangesService as nt,RevisionHistoryService as _0xca19f1,EditorService as _0x25c071}from'@ckeditor/ckeditor-cloud-services-collaboration/dist/index.js';import{Users as _0x3ff6b5,UserView as at}from'ckeditor5-collaboration/dist/index.js';import{Compressor as _0x1142ec}from'@ckeditor/ckeditor5-operations-compressor/dist/index.js';import{isElement as st}from'lodash-es';class c extends _0x34d5bf{static ['WebSocketGateway']=/* #__PURE__ -- @preserve */
24
- ((()=>ft)());static ['initialReconnectionInterval']=0x3e8;['connection'];['_reconnectionStack'];['_shouldPluginsReconnect'];['_domEmitter'];static get['requires'](){return['CloudServices',_0xb84eee];}static get['pluginName'](){return'WebSocketGateway';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x4ac7ea){super(_0x4ac7ea),this['set']('state',_0x5c0f85['CONNECTED']),this['set']('_isBrowserOffline',!0x1),this['_reconnectionStack']=new Set(),this['_shouldPluginsReconnect']=!0x1,this['_domEmitter']=Object['create'](_0x4bc5a2);}['init'](){const _0x51bc35=this['context'],_0x2c1ea1=_0x51bc35['plugins']['get']('CloudServices'),_0x3cd429=_0x51bc35['plugins']['get'](_0xb84eee);if(!_0x2c1ea1['token'])throw new _0x2e31b4('websocketgateway-missing-token',this);if(!_0x2c1ea1['webSocketUrl'])throw new _0x2e31b4('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'](_0x2c1ea1['token'],_0x2c1ea1['webSocketUrl'],{'timeout':0x3e8*this['context']['config']['get']('cloudServices.connectionTimeout'),'requestTimeout':0x3e8*this['context']['config']['get']('cloudServices.requestTimeout')})['then'](_0x1705ee=>{if(this['connection']=_0x1705ee,this['bind']('state')['to'](_0x1705ee,'state',this,'_isBrowserOffline',(_0x3d8e99,_0x3ee91e)=>('connected'!==_0x3d8e99&&(this['_shouldPluginsReconnect']=!0x0),_0x3ee91e||_0x3d8e99!==_0x5c0f85['CONNECTED']?_0x5c0f85['DISCONNECTED']:this['state']==_0x5c0f85['DISCONNECTED']&&this['_shouldPluginsReconnect']?(this['_shouldPluginsReconnect']=!0x1,this['_reconnect'](),_0x5c0f85['CONNECTING']):_0x5c0f85['CONNECTED'])),this['connection']['on']('error',(_0x36ada9,_0x68113f)=>{if('limitExceeded'!==_0x68113f['code'])throw console['error'](_0x68113f),new _0x2e31b4('cloudservices-init',null,{'originalError':_0x68113f});_0x3cd429['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'});}),!_0x1705ee['me'])return new Promise(_0x1c71de=>_0x1705ee['on']('change:me',_0x1c71de));})['catch'](_0x1edee8=>{throw console['error'](_0x1edee8),new _0x2e31b4('cloudservices-init',null,{'originalError':_0x1edee8});});}['addToReconnectionStack'](_0x5913b0){if('function'!=typeof _0x5913b0['reconnect'])throw new _0x2e31b4('websocketgateway-invalid-plugin-interface',this);if(this['isInReconnectionStack'](_0x5913b0))throw new _0x2e31b4('websocketgateway-plugin-already-registered',this,{'name':_0x5913b0['constructor']['pluginName']});this['_reconnectionStack']['add'](_0x5913b0);}['removeFromReconnectionStack'](_0x55b6fd){this['_reconnectionStack']['delete'](_0x55b6fd);}['isInReconnectionStack'](_0x396e62){return this['_reconnectionStack']['has'](_0x396e62);}['_reconnect'](){return this['connection']['reconnect']()['then'](()=>Promise['all'](Array['from'](this['_reconnectionStack'],_0x27c40f=>_0x27c40f['reconnect']())))['then'](()=>this['state']=_0x5c0f85['CONNECTED'])['catch'](_0x7d545=>{throw console['error'](_0x7d545),new _0x2e31b4('cloudservices-reconnection-error',this['context']);});}['destroy'](){this['connection']&&this['connection']['disconnect'](),this['state']=_0x5c0f85['DISCONNECTED'],this['_domEmitter']['stopListening'](),super['destroy']();}}class i extends _0x34d5bf{['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,_0x3ff6b5];}constructor(_0x3e8837){super(_0x3e8837),this['channelSessions']=new Map(),this['channelConnectedUsers']=new Map(),this['allConnectedUsers']=new _0x3b97a7(),this['_registeredSessions']=new Map(),this['_uniqueUsersCount']=0x0,this['_users']=this['context']['plugins']['get'](_0x3ff6b5);}['init'](){const _0x541ab6=this['context']['plugins']['get'](c);this['listenTo'](_0x541ab6,'change:state',(_0x2f212f,_0x1d0deb,_0x5d7bf0)=>{if('connected'!==_0x5d7bf0)this['channelSessions']['forEach'](_0x4dc8f5=>_0x4dc8f5['clear']()),this['channelConnectedUsers']['forEach'](_0x1ff037=>_0x1ff037['clear']()),this['allConnectedUsers']['clear']();else{for(const [_0x2c9396,_0x5ab6f2]of this['_registeredSessions'])for(const _0xe6076a of _0x5ab6f2)this['_handleSessionAdd'](_0x2c9396,_0xe6076a);}}),this['_createUser'](_0x541ab6['connection']['me'],!0x0);}['register'](_0x1541d8,_0x12ef6d){if(this['_registeredSessions']['has'](_0x1541d8))throw new _0x2e31b4('sessions-register-already-registered',null,{'channelId':_0x1541d8});this['_registeredSessions']['set'](_0x1541d8,_0x12ef6d),this['channelSessions']['set'](_0x1541d8,new _0x3b97a7()),this['channelConnectedUsers']['set'](_0x1541d8,new _0x3b97a7()),this['listenTo'](_0x12ef6d,'add',(_0x5249e0,_0xf96e35)=>this['_handleSessionAdd'](_0x1541d8,_0xf96e35)),this['listenTo'](_0x12ef6d,'remove',(_0x3a370b,_0x380049)=>this['_handleSessionRemove'](_0x1541d8,_0x380049));for(const _0x45f8f7 of _0x12ef6d)this['_handleSessionAdd'](_0x1541d8,_0x45f8f7);}['unregister'](_0xd597df){if(!this['_registeredSessions']['has'](_0xd597df))throw new _0x2e31b4('sessions-unregister-not-exist',null,{'channelId':_0xd597df});const _0x547266=this['_registeredSessions']['get'](_0xd597df);this['stopListening'](_0x547266);for(const _0x15b8cd of _0x547266)'connected'===this['context']['plugins']['get'](c)['state']&&this['_handleSessionRemove'](_0xd597df,_0x15b8cd);this['_registeredSessions']['delete'](_0xd597df),this['channelSessions']['delete'](_0xd597df),this['channelConnectedUsers']['delete'](_0xd597df);}get['mySessionId'](){return this['context']['plugins']['get'](c)['connection']['sessionId'];}['getUserBySessionId'](_0x307448){for(const _0x176d8b of this['channelSessions']['values']())for(const _0x578ce3 of _0x176d8b)if(_0x578ce3['id']===_0x307448)return _0x578ce3['user'];}['getUserSessions'](_0x1d65f9,_0x1d1ef6){const _0x5cd742=_0x1d1ef6?[this['channelSessions']['get'](_0x1d1ef6)]:this['channelSessions']['values'](),_0x36e814=new Set();for(const _0x20752a of _0x5cd742)for(const _0x26c4c3 of _0x20752a)_0x26c4c3['user']['id']===_0x1d65f9['id']&&_0x36e814['add'](_0x26c4c3['id']);return _0x36e814;}['getUserRole'](_0x4b8bfa){for(const _0x13688f of this['channelSessions']['values']())for(const _0x468506 of _0x13688f)if(_0x468506['user']===_0x4b8bfa)return _0x468506['role'];}['_handleSessionAdd'](_0x3ba294,_0x4ac7aa){if('connected'!==this['context']['plugins']['get'](c)['state'])return;const _0x20c2ce=_0x4ac7aa['user'],_0x1cfd9f=this['_users']['getUser'](_0x20c2ce['id'])||this['_createUser'](_0x20c2ce),_0x114340=Object['assign']({},_0x4ac7aa,{'user':_0x1cfd9f});this['channelSessions']['get'](_0x3ba294)['add'](_0x114340);const _0x1ac7d9=this['channelConnectedUsers']['get'](_0x3ba294);_0x1ac7d9['has'](_0x1cfd9f['id'])||_0x1ac7d9['add'](_0x1cfd9f),this['allConnectedUsers']['has'](_0x1cfd9f['id'])||this['allConnectedUsers']['add'](_0x1cfd9f,_0x1cfd9f['isMe']?0x0:void 0x0),this['fire']('sessionAdd:'+_0x3ba294,{'channelId':_0x3ba294,'session':_0x114340});}['_handleSessionRemove'](_0x4bbf7e,_0x53bc28){if('connected'!==this['context']['plugins']['get'](c)['state'])return;const _0x475ebf=this['channelConnectedUsers']['get'](_0x4bbf7e),_0x23c3e7=_0x53bc28['user'];_0x23c3e7['id']&&(this['channelSessions']['get'](_0x4bbf7e)['remove'](_0x53bc28['id']),_0x475ebf['has'](_0x23c3e7['id'])&&!this['getUserSessions'](_0x23c3e7,_0x4bbf7e)['size']&&_0x475ebf['remove'](_0x23c3e7['id']),this['allConnectedUsers']['get'](_0x23c3e7['id'])&&!this['getUserSessions'](_0x23c3e7)['size']&&this['allConnectedUsers']['remove'](_0x23c3e7['id']));}['_createUser'](_0x33901c,_0x5e0854){const _0x2f9328=this['_users']['addUser'](_0x33901c);return _0x5e0854&&this['_users']['defineMe'](_0x33901c['id']),_0x2f9328['orderNumber']=this['_uniqueUsersCount']++,_0x2f9328;}}class N extends _0x255d8c{['_domEmitter']=new(_0x4bc5a2())();static get['requires'](){return[i];}static get['pluginName'](){return'UserMarkers';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['init'](){const _0x3d69fe=this['editor'],_0x4fa257=_0x3d69fe['plugins']['get'](i);_0x3d69fe['conversion']['for']('editingDowncast')['markerToElement']({'model':'user:position','view':(_0x4a6ab5,{writer:_0x22e7ea})=>function(_0x2f0afc,_0x5b180a,_0x43719a,_0x4cb300){const _0x1fd566=_0x2f0afc['markerName']['split'](':')[0x2],_0xcd7cc5=_0x43719a['getUserBySessionId'](_0x1fd566);if(!_0xcd7cc5||_0x1fd566===_0x43719a['mySessionId'])return;if(!_0x4cb300['model']['schema']['checkChild'](_0x2f0afc['markerRange']['start'],'$text'))return;const _0x14dd8f={'class':'ck-user__marker\x20'+_0xcd7cc5['color']['getMarkerClass'](),'data-name':_0xcd7cc5['name'],'data-session-id':_0x1fd566},_0x23831e=_0x4cb300['model']['markers']['get'](_0x2f0afc['markerName']),_0x3d4e1e=_0x23831e['getStart'](),_0x842743=_0x3d4e1e['nodeAfter'],_0x351077=_0x4cb300['model']['schema'];if(_0x842743&&_0x351077['isObject'](_0x842743)&&_0x351077['isInline'](_0x842743)&&!_0x4cb300['model']['markers']['get']('user:range:'+_0x1fd566)['getRange']()['isCollapsed'])return;const _0x19286a=_0x3d4e1e['parent'];return _0x4cb300['model']['schema']['isLimit'](_0x19286a)&&!_0x4cb300['model']['hasContent'](_0x19286a)&&(_0x14dd8f['contenteditable']=!0x1),function(_0x4c0618,_0x6583cb,_0x4f83a4){const _0x346fdf=_0x4c0618['createUIElement']('span',_0x6583cb);return _0x4c0618['setCustomProperty']('userPositionMarker',!0x0,_0x346fdf),_0x346fdf['render']=function(_0x40dd81){const _0x2a19ea=this['toDomElement'](_0x40dd81);return _0x2a19ea['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>'+_0x4f83a4['name']+'</span>⁠',_0x2a19ea['addEventListener']('mouseenter',()=>{_0x2a19ea['classList']['add']('ck-user__marker_hovered');}),_0x2a19ea['addEventListener']('mouseleave',()=>{_0x2a19ea['classList']['remove']('ck-user__marker_hovered');}),_0x2a19ea;},_0x346fdf['isSimilar']=function(_0x2cbf8e){return!(!this['getCustomProperty']('userPositionMarker')||!_0x2cbf8e['getCustomProperty']('userPositionMarker')||this['getAttribute']('data-session-id')!=_0x2cbf8e['getAttribute']('data-session-id'));},_0x346fdf;}(_0x5b180a,_0x14dd8f,_0xcd7cc5);}(_0x4a6ab5,_0x22e7ea,_0x4fa257,_0x3d69fe)}),_0x3d69fe['conversion']['for']('editingDowncast')['markerToHighlight']({'model':'user:range','view':_0x46ec7f=>function(_0x341750,_0x663d14){const _0x2a9341=_0x341750['markerName']['split'](':')[0x2];if(_0x2a9341===_0x663d14['mySessionId'])return null;const _0x463cc2=_0x663d14['getUserBySessionId'](_0x2a9341);if(!_0x463cc2)return{'id':_0x2a9341,'classes':[]};return{'id':_0x2a9341,'classes':['ck-user__selection',_0x463cc2['color']['getSelectionClass']()],'attributes':{'data-session-id':_0x2a9341},'priority':0x7d0+_0x463cc2['orderNumber']};}(_0x46ec7f,_0x4fa257)}),function(_0x11d8ad){const _0x11709e=_0x11d8ad['model'],_0x24da7f=new Map(),_0x2fc70c=_0x11d8ad['plugins']['get'](i);_0x11709e['markers']['on']('update:user:range',(_0x543e9a,_0xae36c6,_0x328272,_0x27d83b)=>{if(!_0x27d83b&&_0x24da7f['get'](_0xae36c6['name']))return _0x24da7f['get'](_0xae36c6['name'])['detach'](),void _0x24da7f['delete'](_0xae36c6['name']);const _0x36f4be=_0xae36c6['name']['split'](':')[0x2];if(_0x36f4be===_0x2fc70c['mySessionId'])return;const _0x5789d2='user:position:'+_0x36f4be;_0x11709e['markers']['has'](_0x5789d2)&&_0x11d8ad['editing']['reconvertMarker'](_0x5789d2),_0xae36c6['on']('change:range',(_0x21407e,_0x5775d3,_0x5a9580)=>{if('$graveyard'!=_0x5775d3['root']['rootName']&&'$graveyard'==_0xae36c6['getRange']()['root']['rootName']&&!_0x24da7f['has'](_0xae36c6['name'])){const _0x80a346=_0x11709e['schema']['getNearestSelectionRange'](_0x5a9580['deletionPosition']);if(_0x80a346){const _0x190508=ut['fromRange'](_0x80a346);_0x24da7f['set'](_0xae36c6['name'],_0x190508),_0x190508['on']('change:range',(_0x1b918b,_0x52fc73,_0x550a65)=>{if('$graveyard'==_0x190508['root']['rootName']){const _0xdd30d2=_0x11709e['schema']['getNearestSelectionRange'](_0x550a65['deletionPosition']);_0xdd30d2?(_0x190508['start']=_0xdd30d2['start'],_0x190508['end']=_0xdd30d2['end']):(_0x24da7f['delete'](_0xae36c6['name']),_0x190508['detach']());}});}}});}),_0x11709e['document']['on']('change',()=>{_0x24da7f['size']>0x0&&_0x11709e['enqueueChange']({'isUndoable':!0x1},_0x149efc=>{for(const [_0x421676,_0x39c0b5]of _0x24da7f)'$graveyard'==_0x11709e['markers']['get'](_0x421676)['getRange']()['root']['rootName']&&(G(_0x421676['split'](':')[0x2],_0x39c0b5['toRange'](),_0x11709e,_0x149efc),_0x39c0b5['detach']());_0x24da7f['clear']();});});}(_0x3d69fe),this['_domEmitter']['listenTo'](_0x54f579['document'],'keydown',(_0x39027c,{key:_0x20fc36})=>{'Escape'===_0x20fc36&&function(_0xf1023e){_0xf1023e['editing']['view']['change'](_0x51daf4=>{for(const _0x50471e of _0xf1023e['model']['markers']){if(!_0x50471e['name']['startsWith']('user:position'))continue;const _0x4a9cc9=_0xf1023e['editing']['mapper']['markerNameToElements'](_0x50471e['name']);if(_0x4a9cc9){for(const _0x3b92ed of _0x4a9cc9)_0x51daf4['removeClass']('ck-user__marker_hovered',_0x3b92ed);}}});}(_0x3d69fe);},{'useCapture':!0x0});}['afterInit'](){const _0x19ba80=this['editor'],_0x4c46b4=_0x19ba80['commands']['get']('undo');_0x4c46b4&&_0x19ba80['model']['on']('applyOperation',(_0x1c6d81,_0x44fb9d)=>{const _0x3b7010=_0x44fb9d[0x0];if('marker'!=_0x3b7010['type']||!_0x3b7010['name']['startsWith']('user:'))return;const _0x25fae4=_0x3b7010['batch'];_0x4c46b4['_createdBatches']['has'](_0x25fae4)&&(_0x3b7010['newRange']=_0x3b7010['oldRange']?_0x19ba80['model']['createRange'](_0x3b7010['oldRange']['start'],_0x3b7010['oldRange']['end']):null);},{'priority':'highest'});}['destroy'](){return this['_domEmitter']['stopListening'](),super['destroy']();}['createUserMarkerOperations'](){const _0xff7cfa=this['editor'],_0x42564e=_0xff7cfa['model']['document'],_0x1bed41=_0xff7cfa['plugins']['get'](i);_0xff7cfa['model']['enqueueChange']({'isUndoable':!0x1},_0x2dbff3=>{const _0x1843ba='user:range:'+_0x1bed41['mySessionId'],_0x2559c9='user:position:'+_0x1bed41['mySessionId'],_0x3d83b4=_0xff7cfa['model']['markers']['has'](_0x1843ba);_0xff7cfa['editing']['view']['hasDomSelection']?G(_0x1bed41['mySessionId'],_0x42564e['selection']['getFirstRange'](),_0xff7cfa['model'],_0x2dbff3):_0x3d83b4&&(_0x2dbff3['removeMarker'](_0x1843ba),_0x2dbff3['removeMarker'](_0x2559c9));});}}function G(_0x1fd4a7,_0x4a6171,_0x5e16a6,_0x1bee2d){const _0x130778='user:range:'+_0x1fd4a7,_0x2161fb='user:position:'+_0x1fd4a7,_0x129ad2=_0x4a6171['getContainedElement']();let _0x186dc0=_0x4a6171['start'];_0x129ad2&&_0x129ad2['is']('element','tableCell')&&(_0x186dc0=function(_0x42abe4,_0x34486f){for(const _0x322b47 of _0x42abe4['getPositions']())if(_0x34486f['schema']['checkChild'](_0x322b47,'$text'))return _0x322b47;}(_0x4a6171,_0x5e16a6),_0x4a6171=_0x1bee2d['createRange'](_0x186dc0));const _0x39a9b7=_0x1bee2d['createRange'](_0x186dc0);_0x5e16a6['markers']['has'](_0x130778)?(_0x1bee2d['updateMarker'](_0x130778,{'range':_0x4a6171}),_0x1bee2d['updateMarker'](_0x2161fb,{'range':_0x39a9b7})):(_0x1bee2d['addMarker'](_0x130778,{'range':_0x4a6171,'usingOperation':!0x0}),_0x1bee2d['addMarker'](_0x2161fb,{'range':_0x39a9b7,'usingOperation':!0x0}));}function E(_0x2b0d22,_0x56868b,_0x4a91e8){const _0x5f3aea=_0x2b0d22['t'],t=_0x2b0d22['t'];switch(_0x56868b){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 _0x5f3aea({'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'},_0x4a91e8);default:return'';}}let M=0x1;class l extends _0x255d8c{static ['CollaborativeEditingService']=/* #__PURE__ -- @preserve */
25
- ((()=>_0x4564af)());['_offset'];['sessionId'];['serverHistory'];['_channelId'];['_service'];['_document'];['_compressor'];['_bufferedOperations'];['_knownOperations'];['_knownRootNames'];['_pendingAction'];['_hasSelectionChanged'];['_sendBufferedOperationsDelayId'];['_baseBufferDelay'];['_currentBufferDelay'];['_lastSyncedOperationId'];['_disconnectionOperations'];['_operationIdentifier'];static get['requires'](){return[c,i,N,_0x3c2701,_0x3ff6b5,_0xb84eee];}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 _0x54c536=this['serverHistory']['getOperations']();for(let _0x1c6af6=_0x54c536['length']-0x1;_0x1c6af6>=0x0;_0x1c6af6--){const _0x4d16f6=_0x54c536[_0x1c6af6];if(!this['_disconnectionOperations']['has'](_0x4d16f6))return _0x4d16f6['baseVersion']+0x1-this['_offset'];}return 0x0;}constructor(_0x2efed0){if(super(_0x2efed0),this['_offset']=0x0,this['sessionId']=null,this['serverHistory']=new _0xa9ff56(),this['editor']['config']['define']('collaboration',{}),this['_channelId']=this['editor']['config']['get']('collaboration.channelId'),!this['_channelId'])throw new _0x2e31b4('collaboration-missing-channelid',this);const _0x348240=_0x2efed0['config']['get']('cloudServices.bundleVersion')||dt;this['_service']=new l['CollaborativeEditingService'](_0x348240,this['_channelId']),this['_document']=this['editor']['model']['document'],this['_compressor']=new _0x1142ec(),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 W(this['_disconnectionOperations']);}['init'](){const _0x3cb529=this['editor'],_0xd9ad23=_0x3cb529['plugins']['get'](_0x3ff6b5),_0x4cb23e=_0x3cb529['plugins']['get'](c);this['listenTo'](_0xd9ad23,'getOperationAuthor',(_0x378249,_0x3aa26f)=>{const _0x1789a9=_0x3aa26f[0x0];_0x1789a9['_authorId']&&(_0x378249['return']=_0xd9ad23['getUser'](_0x1789a9['_authorId']),_0x378249['stop']()),null===_0x1789a9['_authorId']&&(_0x378249['return']=null,_0x378249['stop']());},{'priority':'high'}),this['listenTo'](_0x3cb529['model']['document']['selection'],'change:range',(_0x3ea83c,_0x404994)=>{_0x404994['directChange']&&this['_refreshUserSelectionMarkers']();}),this['listenTo'](_0x3cb529['editing']['view'],'change:hasDomSelection',()=>{this['_refreshUserSelectionMarkers']();}),this['_initThrowingOnDataSet'](),_0x3cb529['model']['on']('applyOperation',(_0x547491,_0x4dc801)=>{const _0x326441=_0x4dc801[0x0];_0x326441['isDocumentOperation']&&(this['_saveOperationInBuffer'](_0x326441),this['_shouldSendUpdate']()&&this['_sendBufferedOperationsDelayed']());}),this['_setUpDataInit'](),this['bind']('_isEditingAllowed')['to'](_0x4cb23e,'state',this,'_hasSynchronizationProblem',(_0x2855a4,_0x3e1080)=>'connected'===_0x2855a4&&!_0x3e1080),this['on']('change:_isEditingAllowed',()=>{this['_isEditingAllowed']?_0x3cb529['disableReadOnlyMode']('rtc-offline'):_0x3cb529['enableReadOnlyMode']('rtc-offline');}),this['_isEditingAllowed']?_0x3cb529['disableReadOnlyMode']('rtc-offline'):_0x3cb529['enableReadOnlyMode']('rtc-offline'),this['set']('_isConnected',!0x1);}async['reconnect'](){const _0x52dcd0=this['editor']['plugins']['get'](i),_0x48c4db=this['editor']['plugins']['get'](c);try{this['_isPendingUpdate']=!0x0,_0x52dcd0['unregister'](this['_channelId']);const _0x5bbb88=await this['_service']['reconnect'](_0x48c4db['connection'],this['lastSyncVersion']);await this['_handleReconnectionResponse'](_0x5bbb88)&&(this['_isPendingUpdate']=!0x1,this['_clearPendingAction']());const _0x3c1e37=await this['_service']['getConnectedSessions']();_0x52dcd0['register'](this['_channelId'],_0x3c1e37),this['_handleSendingSelectionMarkers'](),this['_isConnected']=!0x0;}catch(_0x1d6109){if(function(_0x4aab7e){return'404'===_0x4aab7e['code'];}(_0x1d6109)&&this['sessionId'])await this['_connectAfterSessionHasBeenFlushed']();else{if(function(_0x963931){return'409'===_0x963931['code'];}(_0x1d6109)){const _0x226124=E(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'](_0x226124);}else{if(!(_0x1d6109 instanceof z))throw _0x1d6109;this['_handleReconnectionError']();}}}}['destroy'](){const _0x440a20=this['editor']['plugins']['get'](c),_0x4f2d2c=this['editor']['plugins']['get'](i);this['editor']['enableReadOnlyMode']('rtc-destroyed'),_0x4f2d2c['channelSessions']['has'](this['_channelId'])&&_0x4f2d2c['unregister'](this['_channelId']),_0x440a20['removeFromReconnectionStack'](this),this['_disconnectService'](),super['destroy']();}async['_handleReconnectionResponse'](_0x5a9c21){if(this['sessionId']!==_0x5a9c21['sessionId']&&this['_lastSyncedOperationId']!==_0x5a9c21['lastOperationId'])throw new z();return this['sessionId']=_0x5a9c21['sessionId'],this['_handleServerResponse']([],{..._0x5a9c21,'wereChangesApplied':!0x1,'data':_0x5a9c21['data']},'reconnect');}async['_connectService'](_0x26c356,_0x2229f1=!0x1){const {connection:_0x106f55}=this['editor']['plugins']['get'](c);l['CollaborativeEditingService']['getConnectedSessions'](_0x106f55,this['_channelId'])['then'](_0x3fcf93=>this['_initSessionsHandling'](_0x3fcf93))['catch'](_0x3c5695=>{this['_crash']('realtimecollaborationclient-init-session-connection-error',_0x3c5695);}),this['listenTo'](this['_service'],'operationsReceived',this['_handleReceivedOperations']['bind'](this)),this['listenTo'](this['_service'],'error',(_0x31f093,_0x36a9a7)=>{this['_crash']('realtimecollaborationclient-initservice-internal-error',_0x36a9a7);}),this['listenTo'](this['_service'],'disconnected',()=>{this['_isConnected']=!0x1;});const _0x2df6db=this['_operationIdentifier']['getIdOfTheLastOperation'](_0x26c356);this['_isPendingUpdate']=!0x0;const _0x20a6e7=await this['_service']['connect'](_0x106f55,this['_compressOperations'](_0x26c356),_0x2df6db);if(this['sessionId']=_0x20a6e7['sessionId'],_0x2229f1){if(!_0x20a6e7['wereChangesApplied'])return void this['_handleReconnectionError']();this['_isPendingUpdate']=!0x1,this['_clearPendingAction'](),this['serverHistory']['reset'](),this['_offset']=_0x20a6e7['offset'],this['serverHistory']['version']=this['_offset'],await this['_handleServerResponse'](_0x26c356,_0x20a6e7,'reconnection:\x20flushed\x20session');}else await this['_handleInitialConnectionData'](_0x20a6e7,_0x26c356);this['_handleSendingSelectionMarkers'](),this['_isConnected']=!0x0;}['_handleSendingSelectionMarkers'](){const _0x4f836f=this['editor']['plugins']['get'](i),_0x4354d1=this['editor']['plugins']['get'](N),_0x577985=_0x4f836f['channelSessions']['get'](this['_channelId']);_0x577985&&_0x577985['length']>0x1?_0x4354d1['createUserMarkerOperations']():this['listenTo'](_0x4f836f,'sessionAdd:'+this['_channelId'],()=>{0x2===_0x4f836f['channelSessions']['get'](this['_channelId'])['length']&&_0x4354d1['createUserMarkerOperations']();});}async['_handleReceivedOperations'](_0x4dbe17,_0x2432d1,_0xecc235,_0xd110ec){if(!this['_isPendingUpdate']&&this['_document']['version']==_0x2432d1){const _0x381c21=this['_decompressOperations'](_0xecc235,_0xd110ec);await this['_fetchMissingUsers'](_0x381c21),this['_handleExternalOperations'](_0x381c21,_0x2432d1,_0xecc235['lastOperationId'])||this['_crash']('realtimecollaborationclient-initservice-incorrect-server-operation');}}async['_connectAfterSessionHasBeenFlushed'](){this['_disconnectService']();const {locale:_0xc47f82}=this['editor'];let _0x1c5f33;try{_0x1c5f33=await this['_service']['getDocumentDetails']();}catch(_0x36153f){const _0x53232b=E(_0xc47f82,'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'](_0x53232b);}const _0x35bcb5=_0x1c5f33['currentDocumentSession']||_0x1c5f33['lastDocumentSession'];if(this['_lastSyncedOperationId']===_0x35bcb5['lastOperationId'])await this['_connectService'](this['editor']['model']['document']['history']['getOperations'](),!0x0);else{const _0x507223=E(_0xc47f82,'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'](_0x507223);}}['_disconnectService'](){this['_service']['disconnect'](),this['_bufferedOperations']=[],clearTimeout(this['_sendBufferedOperationsDelayId']),this['stopListening'](this['_service']);}['_initSessionsHandling'](_0x4a82ce){const _0x291b8f=this['editor']['plugins']['get'](i);this['listenTo'](_0x291b8f,'sessionAdd:'+this['_channelId'],(_0x1aaf5f,{session:_0x5f09e4})=>{if(_0x5f09e4['id']===_0x291b8f['mySessionId']){_0x1aaf5f['off']();const _0x1e9be4=this['editor']['plugins']['has']('CommentsOnly')&&this['editor']['plugins']['get']('CommentsOnly');let _0x274f8a=_0x5f09e4['permissions'];_0x1e9be4&&_0x1e9be4['isEnabled']&&(_0x274f8a=_0x274f8a['filter'](_0x2bdf47=>'document:write'!==_0x2bdf47)),this['editor']['plugins']['get']('Permissions')['setPermissions'](_0x274f8a,this['_channelId']);}}),_0x291b8f['register'](this['_channelId'],_0x4a82ce);}['_initThrowingOnDataSet'](){const _0x2f69d1=this['editor']['data']['set'];this['editor']['data']['set']=(..._0xb6a417)=>{if(!_0xb6a417[_0xb6a417['length']-0x1]['suppressErrorInCollaboration'])throw new _0x2e31b4('realtimecollaborationclient-editor-setdata-and-editor-data-set-are-forbidden-in-real-time-collaboration',this);_0x2f69d1['apply'](this['editor']['data'],_0xb6a417);};}['_setUpDataInit'](){this['editor']['data']['on']('init',(_0x1ed946,[_0x50bd47])=>{if(this['_document']['version'])throw new _0x2e31b4('realtimecollaborationclient-init-document-already-initialized',this);_0x1ed946['stop'](),this['_setPendingAction']();const _0x5b1c7b=this['editor']['config']['get']('rootsAttributes'),_0x38b2c0=this['_getOperationsFromInitData'](_0x50bd47,_0x5b1c7b);0x0==_0x38b2c0['length']&&_0x38b2c0['push'](new _0x712f2e(0x0)),_0x1ed946['return']=this['_connectService'](_0x38b2c0)['then'](()=>{this['editor']['plugins']['get'](c)['addToReconnectionStack'](this),this['editor']['data']['fire']('ready');})['catch'](_0x5cdb30=>this['_crash']('realtimecollaborationclient-init-connection-failed',_0x5cdb30))['finally'](()=>this['_clearPendingAction']());},{'priority':'high'}),this['editor']['on']('loadRoot',async(_0x5a20bb,[_0x148c2c,_0xcb4d5c])=>{_0x5a20bb['stop']();const _0x2b6e18=this['editor']['model']['document']['getRoot'](_0x148c2c);if(!this['_knownRootNames']['has'](_0x148c2c)){const _0x272864=_0xcb4d5c&&_0xcb4d5c['data']?_0xcb4d5c['data']:'',_0x57b6cc=_0xcb4d5c&&_0xcb4d5c['attributes']?_0xcb4d5c['attributes']:{};await this['_loadRoot'](_0x148c2c,_0x272864,_0x57b6cc);}this['editor']['model']['enqueueChange']({'isUndoable':!0x1},()=>{_0x2b6e18['_isLoaded']=!0x0,this['editor']['model']['document']['differ']['_bufferRootLoad'](_0x2b6e18);});},{'priority':'high'});}async['_fetchMissingUsers'](_0x47381a){const _0x4078ec=this['editor']['plugins']['get'](_0x3ff6b5),{connection:_0x29a48c}=this['editor']['plugins']['get'](c),_0x3b0763=new Set();for(const _0xe3c6b8 of _0x47381a){const _0x2dceb4=_0xe3c6b8['_authorId'];_0x2dceb4&&!_0x4078ec['getUser'](_0x2dceb4)&&_0x3b0763['add'](_0x2dceb4);}if(0x0===_0x3b0763['size'])return;const _0x329290=await mt['getMany'](_0x29a48c,Array['from'](_0x3b0763));for(const _0x2e96fa of _0x329290)_0x4078ec['getUser'](_0x2e96fa['id'])||_0x4078ec['addUser'](_0x2e96fa);}['_getOperationsFromInitData'](_0x42910a,_0xb85e17={}){const _0x326ea3=this['editor']['model'],_0x3e6f7a=[];let _0x5d2f47=0x0;const _0x56de00='string'==typeof _0x42910a?{'main':_0x42910a}:_0x42910a;for(const _0x4e970e of Object['keys'](_0x56de00)){if(!this['_document']['roots']['has'](_0x4e970e))throw new _0x2e31b4('realtimecollaborationclient-init-non-existent-root',this);const _0x41174a=this['editor']['data']['parse'](_0x56de00[_0x4e970e]),_0x4c8ccf=this['_document']['getRoot'](_0x4e970e),_0x2eedc9=new _0x3558c6(_0x326ea3['createPositionAt'](_0x4c8ccf,0x0),_0x41174a,_0x5d2f47++);_0x3e6f7a['push'](_0x2eedc9);for(const [_0x50d682,_0x39a454]of _0x41174a['markers']){const _0x356881=_0x326ea3['createRange'](_0x326ea3['createPositionFromPath'](_0x4c8ccf,_0x39a454['start']['path']['slice']()),_0x326ea3['createPositionFromPath'](_0x4c8ccf,_0x39a454['end']['path']['slice']())),_0xb1c33c=new _0x4bec01(_0x50d682,null,_0x356881,_0x326ea3['markers'],!0x0,_0x5d2f47++);_0x3e6f7a['push'](_0xb1c33c);}}if(_0xb85e17)for(const [_0x59edb5,_0x3205e3]of Object['entries'](_0xb85e17)){const _0x3ffe9d=_0x326ea3['document']['getRoot'](_0x59edb5);if(!_0x3ffe9d)throw new _0x2e31b4('multi-root-editor-root-attributes-no-root',null);for(const [_0x308226,_0x4a19c6]of Object['entries'](_0x3205e3))if(null!==_0x4a19c6){const _0x103077=new _0x35113a(_0x3ffe9d,_0x308226,null,_0x4a19c6,_0x5d2f47++);_0x3e6f7a['push'](_0x103077);}}return _0x3e6f7a;}async['_loadRoot'](_0xe3ade9,_0xb56dc0,_0x27f533){this['_getOperationsFromInitData']({[_0xe3ade9]:_0xb56dc0},{[_0xe3ade9]:_0x27f533})['forEach']((_0x59401b,_0xdc034)=>{_0x59401b['baseVersion']=this['_document']['version']+_0xdc034,_0x59401b['_isInit']=!0x0,this['_saveOperationInBuffer'](_0x59401b);}),this['_sendBufferedOperationsDelayed'](),await this['_waitUntilSynced']();}async['_handleInitialConnectionData'](_0x4ac3b4,_0x294321){let _0x4d9911;this['_offset']=_0x4ac3b4['offset'];const _0x1237f8=_0x4ac3b4['wereChangesApplied']&&!_0x4ac3b4['initData'],_0x304a5e=_0x1237f8?0x0:_0x4ac3b4['data']['baseVersion'];if(_0x294321['forEach'](_0x1769dc=>{_0x1769dc['_isInit']=!0x0,_0x1769dc['createdAt']=_0x4ac3b4['sessionCreatedAt'],_0x1769dc['_authorId']=null;}),_0x1237f8)_0x4d9911=_0x294321,this['_applyOperationsSet'](_0x4d9911,_0x1237f8);else{if(_0x4ac3b4['initData']){const _0x340fce=this['_getOperationsFromInitData'](_0x4ac3b4['initData']);this['_document']['history']['version']=-_0x340fce['length'],_0x340fce['forEach'](_0x4bf461=>{_0x4bf461['baseVersion']-=_0x340fce['length'],_0x4bf461['createdAt']=_0x4ac3b4['sessionCreatedAt'],_0x4bf461['_isInit']=!0x0,_0x4bf461['_authorId']=null;}),this['_applyOperationsSet'](_0x340fce,!0x0),this['serverHistory']['version']=-_0x340fce['length']+this['_offset'],this['_updateServerHistory'](_0x340fce);}this['_document']['history']['version']=_0x304a5e,_0x4d9911=this['_decompressOperations'](_0x4ac3b4['data'],_0x4ac3b4['metadata']),await this['_fetchMissingUsers'](_0x4d9911),this['_applyOperationsSet'](_0x4d9911,_0x1237f8);}_0x4ac3b4['lastOperationId']&&(this['_operationIdentifier']['setIdForTheLastOperation'](_0x4d9911,_0x4ac3b4['lastOperationId']),this['_lastSyncedOperationId']=_0x4ac3b4['lastOperationId']),this['serverHistory']['version']=_0x304a5e+this['_offset'],this['_updateServerHistory'](_0x4d9911),_0x294321['filter'](_0x572ec3=>{const _0x295612=this['_getAffectedRoot'](_0x572ec3);return _0x295612&&!this['_knownRootNames']['has'](_0x295612);})['forEach']((_0x593421,_0x335594)=>{_0x593421['baseVersion']=this['_document']['version']+_0x335594,this['_saveOperationInBuffer'](_0x593421);}),this['_shouldSendUpdate']()?(this['_currentBufferDelay']=0x0,this['_sendBufferedOperationsDelayed'](!0x0),await this['_waitUntilSynced']()):(this['_isPendingUpdate']=!0x1,this['_clearPendingAction']());}['_crash'](_0x3eae08,_0x1e3424){throw this['_isPendingUpdate']=!0x0,_0x1e3424&&console['error'](_0x1e3424),new _0x2e31b4(_0x3eae08,this['editor']);}['_saveOperationInBuffer'](_0x5374f3){this['_knownOperations']['has'](_0x5374f3)||(this['_knownOperations']['add'](_0x5374f3),this['_bufferedOperations']['push'](_0x5374f3),this['_pendingAction']||'marker'==_0x5374f3['type']&&!_0x5374f3['affectsData']||this['_setPendingAction']());}['_sendBufferedOperationsDelayed'](_0x5076d5=!0x1){!_0x5076d5&&this['_isPendingUpdate']||(this['_isPendingUpdate']=!0x0,clearTimeout(this['_sendBufferedOperationsDelayId']),this['_sendBufferedOperationsDelayId']=setTimeout(()=>{this['_sendBufferedOperations']()['then'](_0x32a0d3=>{_0x32a0d3&&(this['_clearPendingAction'](),this['_isPendingUpdate']=!0x1);})['catch'](_0x111bf0=>{if(this['_clearPendingAction'](),this['_isPendingUpdate']=!0x1,!function(_0x594736){return _0x594736['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x594736['message']['startsWith']('cloud-services-internal-error:\x20Collaborative\x20Editing\x20Service\x20is\x20not\x20connected.')||_0x594736['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}(_0x111bf0))throw _0x111bf0;});},this['_currentBufferDelay']));}['_waitUntilSynced'](){return new Promise(_0x78d5c0=>{this['on']('change:_isPendingUpdate',()=>{_0x78d5c0();});});}async['_sendBufferedOperations'](){const _0x3f34d2=this['editor']['plugins']['get'](N);if(this['_shouldSendSelectionUpdate']()&&(_0x3f34d2['createUserMarkerOperations'](),this['_hasSelectionChanged']=!0x1),!this['_shouldSendUpdate']())return!0x0;const _0x1908e0=[...this['_bufferedOperations']];for(const _0xbe5be6 of _0x1908e0)_0xbe5be6['wasUndone']=this['_document']['history']['isUndoneOperation'](_0xbe5be6);const _0x1daab6=this['_operationIdentifier']['getIdOfTheLastOperation'](_0x1908e0),_0x2bb8d6=M++,_0xaa080=this['_compressOperations'](_0x1908e0),_0x26c7ec=await this['_service']['sendOperations'](_0xaa080,_0xaa080['baseVersion'],_0x1daab6);try{return await this['_handleServerResponse'](_0x1908e0,_0x26c7ec,_0x2bb8d6);}catch(_0x380618){return this['_crash']('realtimecollaborationclient-sendbufferedoperations',_0x380618);}}async['_handleServerResponse'](_0xced1ae,_0x14b668,_0x25bf4f){if('error'in _0x14b668)throw _0x14b668['error'];let _0x4ba738=!0x1;if(_0x14b668['wereChangesApplied']){_0x14b668['lastOperationId']&&(this['_lastSyncedOperationId']=_0x14b668['lastOperationId']),this['_bufferedOperations']=this['_bufferedOperations']['filter'](_0x2ab341=>!_0xced1ae['includes'](_0x2ab341));for(const _0x4ba6e8 of _0xced1ae)_0x4ba6e8['createdAt']='lastOperationAcceptedAt'in _0x14b668&&_0x14b668['lastOperationAcceptedAt']||void 0x0;V(_0xced1ae,_0x14b668['version']-_0xced1ae['length']),this['_updateServerHistory'](_0xced1ae);const _0x17a112=_0xced1ae['filter'](_0x5595f8=>{if(!_0x5595f8['_isInit'])return!0x1;const _0x531457=this['_getAffectedRoot'](_0x5595f8);return _0x531457&&!this['_knownRootNames']['has'](_0x531457);});V(_0x17a112,this['_document']['version']),this['_applyOperationsSet'](_0x17a112),_0x4ba738=!0x0,this['_currentBufferDelay']=this['_baseBufferDelay'];}else{const _0x5e1032=this['_decompressOperations'](_0x14b668['data'],_0x14b668['metadata'])['filter'](_0x362965=>_0x362965['baseVersion']>=this['_lastServerVersion']);_0x5e1032['forEach'](_0x18a2e9=>this['_addKnownRoot'](_0x18a2e9)),this['_bufferedOperations']=this['_bufferedOperations']['filter'](_0x21c6ee=>!_0x21c6ee['_isInit']||!this['_knownRootNames']['has'](this['_getAffectedRoot'](_0x21c6ee))),this['_bufferedOperations']['length']&&V(this['_bufferedOperations'],this['_bufferedOperations'][0x0]['baseVersion']),await this['_fetchMissingUsers'](_0x5e1032),_0x4ba738=this['_handleExternalOperations'](_0x5e1032,_0x14b668['version'],_0x14b668['lastOperationId']),this['_currentBufferDelay']=Math['round'](this['_currentBufferDelay']/0x2);}return _0x4ba738?!this['_shouldSendUpdate']()||(this['_sendBufferedOperationsDelayed'](!0x0),!0x1):this['_crash']('realtimecollaborationclient-handleserverresponse');}['_handleExternalOperations'](_0x240bfd,_0x45152c,_0x5c4164){try{const _0x472c9d={'document':this['_document'],'useRelations':!0x1,'padWithNoOps':!0x0},{operationsA:_0x55f136,operationsB:_0x3306bb,originalOperations:_0x34f7dc}=_0x2d51b7(_0x240bfd,this['_bufferedOperations'],_0x472c9d);V(_0x55f136,this['_document']['version']),V(_0x3306bb,_0x45152c);for(const _0x2f739a of _0x55f136){const _0x226bfd=_0x34f7dc['get'](_0x2f739a);_0x2f739a['_authorId']=_0x226bfd?_0x226bfd['_authorId']:null;}_0x5c4164&&(this['_operationIdentifier']['setIdForTheLastOperation'](_0x240bfd,_0x5c4164),this['_lastSyncedOperationId']=_0x5c4164),this['_bufferedOperations']=[..._0x3306bb],this['_applyOperationsSet'](_0x55f136),this['_updateServerHistory'](_0x240bfd);}catch(_0x4ee6d8){return console['error'](_0x4ee6d8),!0x1;}return!0x0;}['_applyOperationsSet'](_0x4f1c6f,_0x3a9a2e=!0x1){this['editor']['model']['enqueueChange']({'isUndoable':!0x1,'isLocal':!0x1},_0x4c90c1=>{for(const _0x458a4f of _0x4f1c6f)this['_knownOperations']['add'](_0x458a4f),this['_addKnownRoot'](_0x458a4f),_0x4c90c1['batch']['addOperation'](_0x458a4f),this['editor']['model']['applyOperation'](_0x458a4f);});}['_addKnownRoot'](_0x7ca3dd){const _0x13cb1b=this['_getAffectedRoot'](_0x7ca3dd);_0x13cb1b&&this['_knownRootNames']['add'](_0x13cb1b);}['_getAffectedRoot'](_0xa03b46){let _0x33d4f3,_0x38b780;switch(_0xa03b46['type']){case'insert':_0x33d4f3=_0xa03b46['position']['root'];break;case'marker':if(_0x38b780=_0xa03b46['newRange'],!_0x38b780)return null;_0x33d4f3=_0x38b780['root'];break;case'addRootAttribute':_0x33d4f3=_0xa03b46['root'];break;case'addRoot':_0x33d4f3=_0xa03b46['affectedSelectable'];break;case'move':_0x33d4f3=_0xa03b46['targetPosition']['root'];break;default:return null;}return _0x33d4f3['rootName'];}['_updateServerHistory'](_0x55ec4d){_0x55ec4d['forEach'](_0x3ceb1f=>{const _0x516e6e=_0x3ceb1f['clone']();_0x516e6e['_authorId']=_0x3ceb1f['_authorId'],_0x516e6e['_isInit']=!!_0x3ceb1f['_isInit'],_0x516e6e['createdAt']=_0x3ceb1f['createdAt'],_0x516e6e['baseVersion']+=this['_offset'],_0x3ceb1f['_isDisconnection']&&this['_disconnectionOperations']['add'](_0x516e6e),this['serverHistory']['addOperation'](_0x516e6e);});}['_handleReconnectionError'](_0x56f521){const _0x251030=this['editor']['plugins']['get']('Notification'),_0x1f5eb2=this['editor']['locale'];_0x56f521||(_0x56f521=E(_0x1f5eb2,'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.')),_0x251030['showWarning'](_0x56f521,{'title':E(_0x1f5eb2,'Synchronization\x20issue'),'namespace':'real-time-collaboration'}),this['_hasSynchronizationProblem']=!0x0,clearTimeout(this['_sendBufferedOperationsDelayId']),this['_bufferedOperations']=[],this['editor']['plugins']['get'](c)['destroy']();}['_setPendingAction'](){this['_pendingAction']||(this['_pendingAction']=this['editor']['plugins']['get'](_0x3c2701)['add'](E(this['editor']['locale'],'PENDING_ACTION_SENDING_DATA')));}['_clearPendingAction'](){this['_pendingAction']&&(this['editor']['plugins']['get'](_0x3c2701)['remove'](this['_pendingAction']),this['_pendingAction']=null);}['_compressOperations'](_0x3d197a){const _0x968fd1=_0x3d197a['map'](_0x2d9c2c=>_0x2d9c2c['toJSON']());return this['_compressor']['compress'](_0x968fd1);}['_decompressOperations'](_0x268a2e,_0xf5c5cb){return this['_compressor']['decompress'](_0x268a2e)['map']((_0x2e21d1,_0x5bb455)=>{const _0x3384aa='init'==_0xf5c5cb[_0x5bb455]['type'];if('InsertOperation'==_0x2e21d1['__className']){const _0x5f1451=_0x2e21d1['position']['root'];!this['_document']['getRoot'](_0x5f1451)&&(this['_document']['createRoot']('$root',_0x5f1451)['_isAttached']=!0x1);}const _0x215550=_0x460006['fromJSON'](_0x2e21d1,this['_document']);return _0x215550['wasUndone']=_0x2e21d1['wasUndone'],_0x215550['_isInit']=_0x3384aa,_0x215550['_authorId']=_0x3384aa?null:_0xf5c5cb[_0x5bb455]['userId'],_0x215550['_isDisconnection']='cs:removeUser'===_0xf5c5cb[_0x5bb455]['type'],_0x215550['createdAt']=_0xf5c5cb[_0x5bb455]['createdAt'],_0x215550;});}['_refreshUserSelectionMarkers'](){this['_hasSelectionChanged']=!0x0,this['_shouldSendSelectionUpdate']()?this['_sendBufferedOperationsDelayed']():this['_hasSelectionChanged']=!0x1;}['_shouldSendSelectionUpdate'](){const _0x5a03ed=this['editor']['plugins']['get'](i)['channelSessions']['get'](this['_channelId']);return!this['editor']['isReadOnly']&&!!_0x5a03ed&&_0x5a03ed['length']>0x1&&this['_hasSelectionChanged'];}['_shouldSendUpdate'](){return this['_bufferedOperations']['length']>0x0||this['_shouldSendSelectionUpdate']();}}class z extends Error{}function V(_0x47bd3a,_0x591e1e){for(const _0x1010e0 of _0x47bd3a)_0x1010e0['baseVersion']=_0x591e1e++;}class W{['_ignoredOperations'];['_operationToId'];constructor(_0x50c9e1){this['_ignoredOperations']=_0x50c9e1,this['_operationToId']=new WeakMap();}['getIdOfTheLastOperation'](_0x3eb4cc){let _0x38b489=_0x3eb4cc['length'];for(;_0x38b489--;){const _0x285354=_0x3eb4cc[_0x38b489];if(!this['_ignoredOperations']['has'](_0x285354)){if(!this['_operationToId']['has'](_0x285354)){const _0x2e1d33=_0x24a4f3()['slice'](0x1,0x12);this['_operationToId']['set'](_0x285354,_0x2e1d33);}return this['_operationToId']['get'](_0x285354);}}}['setIdForTheLastOperation'](_0x5cb69a,_0xa24c4a){if(!_0xa24c4a)return;let _0x529397=_0x5cb69a['length'];for(;_0x529397--;){const _0x44a66c=_0x5cb69a[_0x529397];this['_ignoredOperations']['has'](_0x44a66c)||this['_operationToId']['set'](_0x44a66c,_0xa24c4a);}}}class n extends _0x255d8c{static get['requires'](){return[l];}static get['pluginName'](){return'RealTimeCollaborativeEditing';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}class a extends _0x34d5bf{static ['CommentsService']=/* #__PURE__ -- @preserve */
26
- ((()=>_0x3b207a)());['_services'];static get['requires'](){return[c,'CommentsRepository',i,_0x3ff6b5];}static get['pluginName'](){return'CloudServicesCommentsAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x3bf2a3){super(_0x3bf2a3),this['_services']=new Map();}async['init'](){const _0x44857f=this['context'],_0xa8781b=_0x44857f['plugins']['get']('CommentsRepository');if(_0x44857f['plugins']['get'](c)['addToReconnectionStack'](this),_0xa8781b['adapter']={'addCommentThread':async({channelId:_0xa9eadd,threadId:_0x37f266,comments:_0x2ebefd,resolvedAt:_0x469558,resolvedBy:_0x181579,context:_0x1c104a,attributes:_0x11294f})=>{const _0x3999a1=await this['_getService'](_0xa9eadd)['addCommentThread']({'commentThreadId':_0x37f266,'comments':_0x2ebefd['map'](_0x323ea2=>function(_0x2b0e30,_0x56abb2,_0x2d5941){return{'commentThreadId':_0x2d5941,'commentId':_0x2b0e30['commentId'],'userId':_0x2b0e30['authorId'],'content':_0x2b0e30['content'],'documentId':_0x56abb2,'createdAt':_0x2b0e30['createdAt'],'attributes':_0x2b0e30['attributes']||{}};}(_0x323ea2,_0xa9eadd,_0x37f266)),'resolvedAt':_0x469558,'resolvedBy':_0x181579,'context':_0x1c104a,'attributes':_0x11294f})['catch'](gt);return{'threadId':_0x3999a1['commentThreadId'],'comments':_0x3999a1['comments']};},'getCommentThread':async({channelId:_0x28f4c0,threadId:_0x3d00ad})=>{const _0x5e2660=await this['_getService'](_0x28f4c0)['getCommentThread'](_0x3d00ad)['catch'](gt);return _0x5e2660['deletedAt']?null:(await this['_fetchMissingUsersForThreads']([_0x5e2660]),{'threadId':_0x5e2660['commentThreadId'],'comments':_0x5e2660['comments']['map'](b),'context':_0x5e2660['context'],'resolvedAt':_0x5e2660['resolvedAt'],'resolvedBy':_0x5e2660['resolvedBy'],'attributes':_0x5e2660['attributes']||{}});},'updateCommentThread':async({channelId:_0x3e56b8,threadId:_0x4a491d,context:_0x17f9dc,unlinkedAt:_0x5665f2,attributes:_0x3216b4})=>this['_getService'](_0x3e56b8)['updateCommentThread']({'commentThreadId':_0x4a491d,'context':_0x17f9dc,'attributes':_0x3216b4,'unlinkedAt':_0x5665f2})['catch'](y)['catch'](gt),'resolveCommentThread':async({channelId:_0x444d8e,threadId:_0x4a2324})=>{const _0xed1aca=await this['_getService'](_0x444d8e)['resolveCommentThread'](_0x4a2324)['catch'](y)['catch'](gt);return{'threadId':_0xed1aca['commentThreadId'],'resolvedAt':_0xed1aca['resolvedAt'],'resolvedBy':_0xed1aca['resolvedBy']};},'reopenCommentThread':async({channelId:_0x2750c1,threadId:_0x370540})=>this['_getService'](_0x2750c1)['reopenCommentThread'](_0x370540)['catch'](y)['catch'](gt),'removeCommentThread':({channelId:_0x44b873,threadId:_0x5847c4})=>this['_getService'](_0x44b873)['removeCommentThread'](_0x5847c4)['catch'](y)['catch'](gt),'addComment':({channelId:_0x2cac7a,threadId:_0x337d79,commentId:_0x2b7008,content:_0x58b52b,attributes:_0x1c1141})=>this['_getService'](_0x2cac7a)['addComment'](_0x337d79,_0x2b7008,_0x58b52b,_0x1c1141)['catch'](gt),'updateComment':({channelId:_0xbec47c,threadId:_0x45e3bc,commentId:_0x2eeb16,content:_0x302e1b,attributes:_0x7567ee})=>this['_getService'](_0xbec47c)['updateComment'](_0x45e3bc,_0x2eeb16,_0x302e1b,_0x7567ee)['catch'](y)['catch'](gt),'removeComment':({channelId:_0x1605a5,threadId:_0x464e86,commentId:_0x5119c3})=>this['_getService'](_0x1605a5)['removeComment'](_0x464e86,_0x5119c3)['catch'](y)['catch'](gt)},_0x44857f instanceof _0x326182){const _0x56a0fa=_0x44857f['config']['get']('collaboration.channelId'),_0x164ee2=_0x44857f['plugins']['get'](i);await this['_setUpService'](_0x56a0fa);const _0xb44ba2=await this['_services']['get'](_0x56a0fa)['getConnectedSessions']();this['listenTo'](_0x164ee2,'sessionAdd:'+_0x56a0fa,(_0x1ce055,{session:_0x22b843})=>{_0x22b843['id']===_0x164ee2['mySessionId']&&(_0x1ce055['off'](),this['context']['plugins']['get']('Permissions')['setPermissions'](_0x22b843['permissions'],_0x56a0fa));}),_0x164ee2['register'](_0x56a0fa,_0xb44ba2);}}async['_setUpService'](_0x199659){if(this['_services']['has'](_0x199659))throw new _0x2e31b4('cloudservicescommentsadapter-connect-already-connected',null,{'channelId':_0x199659});const _0x1550e3=this['context']['plugins']['get']('CommentsRepository'),_0x35214d=new a['CommentsService'](_0x199659);this['_services']['set'](_0x199659,_0x35214d),this['listenTo'](_0x35214d,'commentThreadAdded',(_0x186b53,_0x335e71)=>{const {commentThreadId:_0x1c3ff8,documentId:_0x3de4dc,context:_0x4ed30e,attributes:_0x1dd760,resolvedAt:_0x28dcc8,resolvedBy:_0xdd416b,comments:_0xe12b50}=_0x335e71;_0x1550e3['getCommentThread'](_0x1c3ff8)||_0x1550e3['addCommentThread']({'threadId':_0x1c3ff8,'channelId':_0x3de4dc,'comments':_0xe12b50?_0xe12b50['map'](b):[],'context':_0x4ed30e,'attributes':_0x1dd760,'resolvedAt':_0x28dcc8,'resolvedBy':_0xdd416b,'isFromAdapter':!0x0});}),this['listenTo'](_0x35214d,'commentThreadUpdated',(_0x4949f0,{commentThreadId:_0x3b5bee,documentId:_0x5cac53,context:_0x426d0d,unlinkedAt:_0x5f1c1a,attributes:_0x4d4de5})=>{_0x1550e3['getCommentThread'](_0x3b5bee)&&_0x1550e3['updateCommentThread']({'threadId':_0x3b5bee,'channelId':_0x5cac53,'context':_0x426d0d,'unlinkedAt':_0x5f1c1a,'attributes':_0x4d4de5,'isFromAdapter':!0x0});}),this['listenTo'](_0x35214d,'commentThreadResolved',(_0x11a2b4,{commentThreadId:_0xffc32f,resolvedBy:_0x2eb725,resolvedAt:_0x3a9813})=>{const _0x19a1ed=_0x1550e3['getCommentThread'](_0xffc32f);_0x19a1ed&&_0x19a1ed['resolve']({'resolvedBy':_0x2eb725,'resolvedAt':_0x3a9813,'isFromAdapter':!0x0});}),this['listenTo'](_0x35214d,'commentThreadReopened',(_0x2d5a5b,{commentThreadId:_0x5ad5c6})=>{const _0x37cbd5=_0x1550e3['getCommentThread'](_0x5ad5c6);_0x37cbd5&&_0x37cbd5['reopen']({'isFromAdapter':!0x0});}),this['listenTo'](_0x35214d,'commentThreadRemoved',(_0x50ff13,{commentThreadId:_0x9dbde5})=>{const _0x1e153a=_0x1550e3['getCommentThread'](_0x9dbde5);_0x1e153a&&_0x1e153a['remove']({'isFromAdapter':!0x0});}),this['listenTo'](_0x35214d,'commentAdded',(_0x5d1f2a,_0x38e882)=>{const _0x1900ab=_0x38e882['commentThreadId'],_0x3a0971=_0x1550e3['getCommentThread'](_0x1900ab);_0x3a0971&&_0x3a0971['addComment']({...b(_0x38e882),'isFromAdapter':!0x0});}),this['listenTo'](_0x35214d,'commentUpdated',(_0x2f85f5,{commentThreadId:_0xa270e7,commentId:_0x38aeb9,content:_0x4e6789,attributes:_0xe419d4})=>{const _0x2068ae=_0x1550e3['getCommentThread'](_0xa270e7);if(_0x2068ae){const _0x4eea8f=_0x2068ae['getComment'](_0x38aeb9);_0x4eea8f&&_0x4eea8f['update']({'content':_0x4e6789,'attributes':_0xe419d4,'isFromAdapter':!0x0});}}),this['listenTo'](_0x35214d,'commentRemoved',(_0x226534,{commentThreadId:_0x11697b,commentId:_0x5836f6})=>{const _0xf3b7fd=_0x1550e3['getCommentThread'](_0x11697b);if(_0xf3b7fd){const _0x33dff4=_0xf3b7fd['getComment'](_0x5836f6);_0x33dff4&&_0x33dff4['remove']({'isFromAdapter':!0x0});}}),await this['_connectService'](_0x199659);}['destroy'](){if(this['context']instanceof _0x326182){const _0x4f5130=this['context']['config']['get']('collaboration.channelId');this['_terminateService'](_0x4f5130);}}['_terminateService'](_0x2135f8){if(!this['_services']['has'](_0x2135f8))throw new _0x2e31b4('cloudservicescommentsadapter-disconnect-not-exist',null,{'channelId':_0x2135f8});this['_getService'](_0x2135f8)['disconnect'](),this['_services']['delete'](_0x2135f8);}async['reconnect'](){for(const _0x1c300d of this['_services']['keys']())await this['_connectService'](_0x1c300d);if(this['context']instanceof _0x326182){const _0x5dca9c=this['context']['config']['get']('collaboration.channelId'),_0x2061e9=this['context']['plugins']['get'](i);_0x2061e9['unregister'](_0x5dca9c);const _0x14d19b=await this['_services']['get'](_0x5dca9c)['getConnectedSessions']();_0x2061e9['register'](_0x5dca9c,_0x14d19b);}}async['_connectService'](_0x35d143){const {connection:_0x1637b3}=this['context']['plugins']['get'](c),_0x372373=this['context']['plugins']['get']('CommentsRepository'),_0x52008e=this['_services']['get'](_0x35d143),_0x30ecf1=await _0x52008e['connect'](_0x1637b3);await this['_fetchMissingUsersForThreads'](_0x30ecf1);const _0x5ab2cd=new Set(Array['from'](_0x372373['getCommentThreads']({'channelId':_0x35d143}),_0xd84e3e=>_0xd84e3e['id']));for(const _0x2f1438 of _0x30ecf1)_0x2f1438['deletedAt']||_0x5ab2cd['delete'](_0x2f1438['commentThreadId']);for(const _0x54dea8 of _0x5ab2cd)_0x372373['getCommentThread'](_0x54dea8)['remove']({'isFromAdapter':!0x0});for(const _0x5f21a4 of _0x30ecf1){let _0x2c6b0c=_0x372373['getCommentThread'](_0x5f21a4['commentThreadId']);const {commentThreadId:_0x31ed92,context:_0x439365,attributes:_0x31b4e7,resolvedBy:_0x303a78,resolvedAt:_0x19bc5d,unlinkedAt:_0x4f0911,deletedAt:_0x428bb8}=_0x5f21a4;if(_0x428bb8)continue;_0x2c6b0c||(_0x2c6b0c=_0x372373['addCommentThread']({'channelId':_0x35d143,'threadId':_0x31ed92,'context':_0x439365,'attributes':_0x31b4e7||{},'resolvedBy':_0x303a78,'resolvedAt':_0x19bc5d,'unlinkedAt':_0x4f0911,'isFromAdapter':!0x0}));const _0x203055=new Set(Array['from'](_0x2c6b0c['comments'],_0x40afae=>_0x40afae['id']));for(const _0x1cb42b of _0x5f21a4['comments'])_0x203055['delete'](_0x1cb42b['commentId']);for(const _0x377b67 of _0x203055)_0x2c6b0c['getComment'](_0x377b67)['remove']({'isFromAdapter':!0x0});for(const _0x360331 of _0x5f21a4['comments']){const _0x542882=_0x2c6b0c['getComment'](_0x360331['commentId']);_0x542882?_0x542882['content']!==_0x360331['content']&&_0x542882['update']({'content':_0x360331['content'],'isFromAdapter':!0x0}):_0x2c6b0c['addComment'](Object['assign'](b(_0x360331),{'isFromAdapter':!0x0}));}}}['_getService'](_0x30161b){if(!this['_services']['has'](_0x30161b))throw new _0x2e31b4('cloudservicescommentsadapter-service-not-exist',null,{'channelId':_0x30161b});return this['_services']['get'](_0x30161b);}async['_fetchMissingUsersForThreads'](_0x26b178){const _0x4f276e=this['context']['plugins']['get'](_0x3ff6b5),{connection:_0x740874}=this['context']['plugins']['get'](c),_0x3fcf4b=new Set();for(const {resolvedBy:_0x2a24bd,comments:_0x416d6b}of _0x26b178){_0x2a24bd&&!_0x4f276e['getUser'](_0x2a24bd)&&_0x3fcf4b['add'](_0x2a24bd);for(const {userId:_0x3d2195}of _0x416d6b)_0x4f276e['getUser'](_0x3d2195)||_0x3fcf4b['add'](_0x3d2195);}if(0x0===_0x3fcf4b['size'])return;const _0x44206d=await mt['getMany'](_0x740874,Array['from'](_0x3fcf4b));for(const _0x16d9a0 of _0x44206d)_0x4f276e['getUser'](_0x16d9a0['id'])||_0x4f276e['addUser'](_0x16d9a0);}}async function y(_0x7cf2b8){if('404'!==_0x7cf2b8['code'])throw _0x7cf2b8;}function gt(_0x18ead8){if((_0x5800d8=_0x18ead8)['message']['startsWith']('cloud-services-internal-error:\x20Comments\x20Service\x20is\x20not\x20connected.')||_0x5800d8['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x5800d8['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.'))return new Promise(()=>{});var _0x5800d8;throw _0x18ead8;}function b(_0x22c9e2){return{'threadId':_0x22c9e2['commentThreadId'],'commentId':_0x22c9e2['commentId'],'content':_0x22c9e2['content'],'createdAt':_0x22c9e2['createdAt'],'authorId':_0x22c9e2['userId'],'attributes':_0x22c9e2['attributes']||{}};}class f extends _0x255d8c{static ['TrackChangesService']=/* #__PURE__ -- @preserve */
27
- ((()=>nt)());['_bufferedRequests'];['_trackChangesService'];static get['requires'](){return[a,'TrackChangesEditing',c];}constructor(_0x573219){super(_0x573219);const _0x4c2724=this['editor']['config']['get']('collaboration.channelId');this['_bufferedRequests']=new Map(),this['_trackChangesService']=new f['TrackChangesService'](_0x4c2724);}['init'](){const _0x357219=this['editor']['plugins']['get'](c),_0x122b48=this['editor']['plugins']['get']('TrackChangesEditing');return _0x122b48['adapter']={'getSuggestion':async _0x521b14=>{await this['_waitForServiceReady']();const _0x1c3868=await this['_trackChangesService']['get'](_0x521b14)['catch'](w);return await this['_fetchMissingUsersForThreads']([_0x1c3868]),_0x1c3868;},'addSuggestion':async({id:_0x119a0e,type:_0x5e89e7,data:_0x445991,originalSuggestionId:_0x18274d,attributes:_0x580d0b})=>{await this['_waitForServiceReady']();const _0x3602f7={'id':_0x119a0e,'type':_0x5e89e7,'data':_0x445991,'originalSuggestionId':_0x18274d,'attributes':_0x580d0b},_0x53deea=await this['_trackChangesService']['add'](_0x119a0e,_0x5e89e7,_0x445991,_0x18274d,_0x580d0b)['catch'](_0xeb4da8=>{if(wt(_0xeb4da8))return new Promise(_0x5a1124=>{this['_bufferedRequests']['set'](_0x119a0e,{'resolve':_0x5a1124,'suggestionData':_0x3602f7});});throw _0xeb4da8;});return this['_bufferedRequests']['delete'](_0x119a0e),_0x53deea;},'updateSuggestion':async(_0x23107e,_0x231eca)=>{if(await this['_waitForServiceReady'](),'open'!==_0x231eca['state'])return this['_trackChangesService']['update'](_0x23107e,_0x231eca)['catch'](w);}},this['listenTo'](this['_trackChangesService'],'suggestionUpdated',(_0x586bd9,_0x48003a)=>{_0x122b48['hasSuggestion'](_0x48003a['id'])&&(_0x122b48['getSuggestion'](_0x48003a['id'])['attributes']=_0x48003a['attributes']);}),this['_trackChangesService']['connect'](_0x357219['connection'])['then'](_0xf95582=>(_0x357219['addToReconnectionStack'](this),this['_fetchMissingUsersForThreads'](_0xf95582)['then'](()=>{for(const _0x33a37c of _0xf95582){_0x122b48['addSuggestionData'](_0x33a37c)['_saved']=!0x0;}})));}async['reconnect'](){const _0x1d5d34=this['editor']['plugins']['get']('TrackChangesEditing'),{connection:_0xf53349}=this['editor']['plugins']['get'](c),_0x4423b1=await this['_trackChangesService']['connect'](_0xf53349);await this['_fetchMissingUsersForThreads'](_0x4423b1);for(const {suggestionData:_0x5095c3,resolve:_0x222089}of this['_bufferedRequests']['values']()){let _0x590caa=_0x4423b1['find'](_0x2a00c1=>_0x2a00c1['id']===_0x5095c3['id']);_0x590caa||(_0x590caa=await this['_trackChangesService']['add'](_0x5095c3['id'],_0x5095c3['type'],_0x5095c3['data'],_0x5095c3['originalSuggestionId'])),_0x222089(_0x590caa);}for(const _0x3f6bca of _0x4423b1)_0x1d5d34['hasSuggestion'](_0x3f6bca['id'])||_0x1d5d34['addSuggestionData'](_0x3f6bca);}async['_waitForServiceReady'](){this['_trackChangesService']['isConnected']||await new Promise(_0x1f1fd9=>{this['listenTo'](this['_trackChangesService'],'connected',_0x6fdda3=>{_0x6fdda3['off'](),_0x1f1fd9();});});}async['_fetchMissingUsersForThreads'](_0x2a9d52){const _0x57606e=this['editor']['plugins']['get'](_0x3ff6b5),{connection:_0x296ceb}=this['editor']['plugins']['get'](c),_0x31dc77=new Set();for(const {authorId:_0x473016}of _0x2a9d52)_0x57606e['getUser'](_0x473016)||_0x31dc77['add'](_0x473016);if(0x0===_0x31dc77['size'])return;const _0x3bda91=await mt['getMany'](_0x296ceb,Array['from'](_0x31dc77));for(const _0x5cf8d4 of _0x3bda91)_0x57606e['getUser'](_0x5cf8d4['id'])||_0x57606e['addUser'](_0x5cf8d4);}}function w(_0x53a5ea){if(wt(_0x53a5ea))return new Promise(()=>{});throw _0x53a5ea;}function wt(_0x34baf7){return _0x34baf7['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x34baf7['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}class m extends _0x255d8c{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 _0x3db55e=this['editor']['plugins']['get'](c),_0x23317a=this['editor']['plugins']['get']('CommentsEditing'),_0x54da3d=this['editor']['plugins']['get'](a);return this['editor']['data']['once']('ready',()=>{this['listenTo'](_0x3db55e,'change:state',(_0x25cedd,_0xb428e5,_0x260889)=>{_0x23317a['isThreadsLoadingPaused']='connected'!==_0x260889;});}),this['listenTo'](_0x3db55e,'change:state',(_0x3af8f2,_0x2547d4,_0x92b087)=>{this['editor']['plugins']['get']('CommentsRepository')['switchReadOnly']('connected'!==_0x92b087);}),_0x54da3d['_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 _0x255d8c{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 _0x255d8c{static ['RevisionHistoryService']=/* #__PURE__ -- @preserve */
28
- ((()=>_0xca19f1)());['_lastRequestId'];['_revisionTracker'];['_revisionHistoryService'];['_oldOffset'];static get['requires'](){return[c,l,'RevisionTracker',i,_0x3ff6b5];}constructor(_0x234fe4){super(_0x234fe4);const _0x22a0f6=this['editor']['config']['get']('collaboration.channelId');this['_lastRequestId']=null,this['_revisionTracker']=this['editor']['plugins']['get']('RevisionTracker'),this['_revisionHistoryService']=new u['RevisionHistoryService'](_0x22a0f6);}async['init'](){const _0xa9b21d=this['editor']['plugins']['get'](l),_0x71558a=_0xa9b21d['serverHistory'],_0x3c2984=this['editor']['plugins']['get'](c);this['_revisionTracker']['setSource']({'history':_0x71558a,'getLatestVersion':()=>this['_getLatestVersion'](),'getCurrentRevisionId':()=>_0xa9b21d['sessionId']});const _0x465cde=this['editor']['config']['get']('cloudServices.bundleVersion')||dt,_0x24f4b5=await _0x25c071['isBundleUploaded'](_0x3c2984['connection'],_0x465cde);this['_revisionTracker']['adapter']={'getRevision':async({revisionId:_0x21fc52})=>(await this['_waitForServiceReady'](),await this['_revisionHistoryService']['getRevision'](_0x21fc52)),'updateRevisions':async _0x24f361=>{await this['_waitForServiceReady']();const _0x22b159=this['_revisionTracker']['currentRevision'];if(_0x24f4b5&&0x1===_0x24f361['length']&&_0x24f361[0x0]['id']===_0x22b159['id'])return _0x24f361;for(const _0x12e03b of _0x24f361)_0x12e03b['id']===_0x22b159['id']&&(_0x12e03b['isEmptyCurrent']=_0x12e03b['fromVersion']===_0x12e03b['toVersion']);return this['_revisionHistoryService']['updateRevisions'](_0x24f361,this['_lastRequestId'])['then'](_0x4aa250=>(this['_lastRequestId']=_0x4aa250,_0x24f361))['catch'](_0x1eb7e3=>{if(X(_0x1eb7e3)||'400'===_0x1eb7e3['code']&&void 0x0!==_0x1eb7e3['data']['wrongRequestId']){for(const _0x361049 of _0x24f361){!this['_revisionTracker']['repository']['getRevision'](_0x361049['id'])||this['_revisionTracker']['_bufferUpdate'](_0x361049['id'],_0x361049,!0x1);}if(X(_0x1eb7e3))throw _0x1eb7e3;return _0x24f361;}throw _0x1eb7e3;});}},this['listenTo'](this['_revisionHistoryService'],'revisionsUpdated',(_0x2c5495,{revisionsData:_0x3ed43c,requestId:_0x3f8e49})=>{Math['max'](..._0x3ed43c['map'](_0xfa0594=>_0xfa0594['toVersion']))>this['_getLatestVersionFromServerOperations']()-0x1?this['_getLatestVersion']()['then'](()=>{this['_handleRevisionsUpdate'](_0x3ed43c,_0x3f8e49);}):this['_handleRevisionsUpdate'](_0x3ed43c,_0x3f8e49);});const {revisions:_0x96cb1d,requestId:_0x5a90dc}=await this['_revisionHistoryService']['connect'](_0x3c2984['connection']);_0x3c2984['addToReconnectionStack'](this),this['_lastRequestId']=_0x5a90dc,await this['_fetchMissingUsers'](_0x96cb1d);for(const _0x41da9f of _0x96cb1d)this['_revisionTracker']['addRevisionData'](_0x41da9f);this['listenTo'](_0xa9b21d,'change:_isConnected',(_0x3e085c,_0x31a143,_0x2380bd)=>{_0x2380bd&&(this['_oldOffset']=_0xa9b21d['_offset'],_0x3e085c['off']());}),this['_revisionTracker']['bind']('isEnabled')['to'](_0x3c2984,'state',_0x1fb024=>_0x1fb024===_0x5c0f85['CONNECTED']);}async['reconnect'](){const _0x4ab57a=this['editor']['plugins']['get'](c),_0x6551f6=this['editor']['plugins']['get'](l),_0x56f614=async()=>{const _0x25af31=this['_revisionTracker']['currentRevision'],_0x29e436=_0x25af31['id'],_0xb4165d=_0x29e436!==_0x6551f6['sessionId'];if(_0xb4165d){const _0x38a6a2=_0x6551f6['_offset']-this['_oldOffset'],_0x486a89=this['_getLatestVersionFromServerOperations']();this['_revisionTracker']['_revisionDataBuilder']['reInit']();if(_0x25af31['toVersion']+_0x38a6a2!==_0x486a89){const _0x5bbc24=_0x25af31['fromVersion']+_0x38a6a2,_0x407e9f=this['editor']['plugins']['get'](_0x3ff6b5),_0x1bf517=this['_revisionTracker']['buildRevisionData']({'revision':_0x25af31,'from':_0x5bbc24,'to':_0x486a89});_0x1bf517['id']=_0x25af31['id'];const _0x15159f=_0x1bf517['authorsIds']['map'](_0x1e9faa=>_0x407e9f['getUser'](_0x1e9faa));_0x25af31['_update']({..._0x1bf517,'authors':_0x15159f},!0x0),this['_revisionTracker']['_bufferUpdate'](_0x25af31['id'],_0x1bf517,!0x0);}this['_revisionTracker']['_startingVersion']=_0x486a89,(_0x25af31['toVersion']===_0x25af31['fromVersion']&&!this['_revisionTracker']['_bufferedUpdates']['has'](_0x29e436)&&this['_revisionTracker']['repository']['_revisions']['remove'](_0x29e436),this['_revisionTracker']['_createCurrentRevision'](_0x486a89));}const {revisions:_0x4d12bd,requestId:_0x2dac26}=await this['_revisionHistoryService']['reconnect'](_0x4ab57a['connection'],this['_lastRequestId']);_0xb4165d&&_0x4d12bd['length']>0x0?_0x6551f6['_handleReconnectionError']():(await this['_fetchMissingUsers'](_0x4d12bd),this['_handleRevisionsUpdate'](_0x4d12bd,_0x2dac26),this['_revisionTracker']['sendBufferedUpdates']());};return _0x6551f6['_isConnected']?_0x56f614():new Promise((_0x17733e,_0x3c9d7b)=>{_0x6551f6['once']('change:_isConnected',()=>{_0x56f614()['then'](_0x17733e)['catch'](_0x3c9d7b);});});}['destroy'](){super['destroy']();}async['_waitForServiceReady'](){this['_revisionHistoryService']['isConnected']||await new Promise(_0x490c59=>{this['listenTo'](this['_revisionHistoryService'],'connected',_0x42a012=>{_0x42a012['off'](),_0x490c59();});});}['_getLatestVersionFromServerOperations'](){const _0x33c962=this['editor']['plugins']['get'](l)['serverHistory']['getOperations']()['reverse']();for(const _0x3298c1 of _0x33c962)if('marker'!==_0x3298c1['type']||_0x3298c1['affectsData'])return _0x3298c1['baseVersion']+0x1;}['_getLatestVersion'](){const _0x5d4111=this['editor']['plugins']['get'](l);return new Promise(_0x1917b0=>{_0x5d4111['_isPendingUpdate']?_0x5d4111['once']('change:_isPendingUpdate',()=>{_0x1917b0(this['_getLatestVersionFromServerOperations']());}):_0x1917b0(this['_getLatestVersionFromServerOperations']());});}['_handleRevisionsUpdate'](_0x4c4b37,_0x497e81){const _0x4b9d1c=this['_revisionTracker']['repository'];this['_lastRequestId']=_0x497e81;for(const _0x35a256 of _0x4c4b37){const _0x4f4521=_0x4b9d1c['getRevision'](_0x35a256['id']);if(_0x4f4521){if((_0x35a256['fromVersion']||_0x35a256['toVersion'])&&(_0x35a256['diffData']=null),_0x4f4521===this['_revisionTracker']['currentRevision']){const _0x4fe3f8=Math['max'](_0x4f4521['toVersion'],_0x35a256['toVersion']),_0x4c8136=Math['max'](_0x4f4521['fromVersion'],_0x35a256['fromVersion']);let _0x38658f;_0x4f4521['toVersion']===_0x35a256['toVersion']&&_0x4f4521['fromVersion']===_0x35a256['fromVersion']?(_0x38658f=!0x0,this['_preventResendingRevisionData'](_0x35a256)):_0x35a256['toVersion']===_0x4fe3f8&&_0x35a256['fromVersion']===_0x4c8136?_0x38658f=!0x1:(_0x4f4521['toVersion']===_0x4fe3f8&&_0x4f4521['fromVersion']===_0x4c8136||this['_fixRevision']({'revision':_0x4f4521,'from':_0x4c8136,'to':_0x4fe3f8}),_0x38658f=!0x0),_0x38658f&&(delete _0x35a256['fromVersion'],delete _0x35a256['toVersion'],delete _0x35a256['diffData'],delete _0x35a256['createdAt'],delete _0x35a256['authorsIds']);}this['_revisionTracker']['setRevisionData'](_0x35a256),this['_preventResendingRevisionData'](_0x35a256);}else this['_revisionTracker']['addRevisionData'](_0x35a256);}const _0x57123a=_0x4b9d1c['getRevisions']();_0x57123a['reverse']();for(let _0xd1b967=0x0;_0xd1b967<_0x57123a['length']-0x1;_0xd1b967++){const _0x5ab4e0=_0x57123a[_0xd1b967],_0x28b74e=_0x57123a[_0xd1b967+0x1];if(_0x5ab4e0['fromVersion']<_0x28b74e['toVersion']){const _0x44e078=_0x28b74e['toVersion'],_0x2a98a0=Math['max'](_0x44e078,_0x5ab4e0['toVersion']);this['_fixRevision']({'revision':_0x5ab4e0,'from':_0x44e078,'to':_0x2a98a0});}}}['_fixRevision']({revision:_0x26003d,from:_0x3116f2,to:_0x3b5e72}={}){const _0xb4d505=this['editor']['plugins']['get'](_0x3ff6b5),_0xa66521=this['_revisionTracker']['buildRevisionData']({'revision':_0x26003d,'from':_0x3116f2,'to':_0x3b5e72});_0xa66521['authors']=_0xa66521['authorsIds']['map'](_0x74150c=>_0xb4d505['getUser'](_0x74150c)),_0x26003d['_update'](_0xa66521);}['_preventResendingRevisionData'](_0x4fb4ec){const _0x5ee2b3={};_0x5ee2b3['id']=_0x4fb4ec['id'];for(const _0x333883 of Object['keys'](_0x4fb4ec))'id'!==_0x333883&&(_0x5ee2b3[_0x333883]=void 0x0);this['_revisionTracker']['_bufferUpdate'](_0x5ee2b3['id'],_0x5ee2b3,!0x0);}async['_fetchMissingUsers'](_0x39cc71){const _0x1d7d1c=this['editor']['plugins']['get'](_0x3ff6b5),{connection:_0x2f4bdf}=this['editor']['plugins']['get'](c),_0xe5f524=new Set();for(const _0x385ea5 of _0x39cc71){for(const _0x190d6e of _0x385ea5['authorsIds'])_0x2b5457(_0x190d6e);_0x385ea5['creatorId']&&_0x2b5457(_0x385ea5['creatorId']);}if(0x0===_0xe5f524['size'])return;const _0x31fbea=await mt['getMany'](_0x2f4bdf,Array['from'](_0xe5f524));for(const _0x579b2b of _0x31fbea)_0x1d7d1c['getUser'](_0x579b2b['id'])||_0x1d7d1c['addUser'](_0x579b2b);function _0x2b5457(_0x35b3a1){_0x1d7d1c['getUser'](_0x35b3a1)||_0xe5f524['add'](_0x35b3a1);}}}function X(_0x5657f3){return _0x5657f3['message']['startsWith']('cloud-services-internal-error:\x20Revision\x20History\x20Service\x20is\x20not\x20connected.')||_0x5657f3['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x5657f3['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}class g extends _0x255d8c{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 _0x4a9566{constructor(_0x355c9e){super(_0x355c9e);const _0x187802=this['bindTemplate'];this['set']('usersCount',0x0),this['set']('isHidden',!0x0),this['setTemplate']({'tag':'div','attributes':{'class':['ck','ck-presence-list__counter',_0x187802['if']('isHidden','ck-presence-list__counter--hidden')]},'children':[{'text':_0x187802['to']('usersCount',_0x264e53=>E(_0x355c9e,'CONNECTED_USERS',_0x264e53))}]});}}class es extends _0x4a9566{['items'];['keystrokes'];constructor(_0x566395){super(_0x566395);const _0x169c28=this['bindTemplate'];this['items']=this['createCollection'](),this['keystrokes']=new _0x38ba82(),this['set']({'hasPopup':!0x1,'isExpanded':!0x1}),this['setTemplate']({'tag':'div','attributes':{'aria-haspopup':_0x169c28['if']('hasPopup'),'aria-expanded':_0x169c28['to']('isExpanded',_0x1676af=>this['hasPopup']&&String(_0x1676af)),'aria-label':_0x169c28['to']('hasPopup',_0xa68d7d=>E(_0x566395,_0xa68d7d?'Collapsed\x20connected\x20users\x20list\x20(press\x20ENTER\x20to\x20open\x20it)':'Connected\x20users\x20list')),'role':'list','tabindex':_0x169c28['to']('hasPopup',_0x5ab470=>!!_0x5ab470&&0x0),'class':['ck','ck-presence-list__list']},'children':this['items'],'on':{'click':_0x169c28['to'](()=>this['fire']('execute'))}}),this['on']('change:hasPopup',(_0x54e633,_0x2927a8,_0x33a424)=>{this['element']&&(_0x33a424?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 it extends _0x4a9566{['counterView'];['inlineListView'];constructor(_0x5332e5){super(_0x5332e5);const _0x4288be=this['bindTemplate'];this['set']('isCollapsed',!0x0),this['counterView']=new ts(this['locale']),this['inlineListView']=new es(_0x5332e5),this['inlineListView']['bind']('hasPopup')['to'](this,'isCollapsed'),this['listenTo'](this['inlineListView']['items'],'change',()=>{for(const _0x38f820 of this['inlineListView']['items'])_0x38f820['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',_0x4288be['if']('isCollapsed','ck-presence-list--collapsed')]},'children':[this['counterView'],this['inlineListView']]});}}class et extends _0x4a9566{['listWrapperView'];constructor(_0x49ddc9,_0x2b2c94){super(_0x49ddc9),this['listWrapperView']=new vt(_0x49ddc9,_0x2b2c94),this['setTemplate']({'tag':'div','attributes':{'tabindex':-0x1,'role':'application','class':['ck','ck-presence-list__dropdown-list'],'aria-label':E(_0x49ddc9,'Connected\x20users\x20list\x20dropdown\x20menu')},'children':[this['listWrapperView']]});}}class vt extends _0x51992f{constructor(_0x3508ed,_0x1f8def){super(_0x3508ed);const _0x47eb0f=this['bindTemplate'];this['set']('_isScrollable',!0x1),this['setTemplate']({'tag':_0x1f8def?'div':'ul','attributes':{'class':['ck','ck-reset','ck-list','ck-presence-list__dropdown-list-wrapper',_0x47eb0f['if']('_isScrollable','ck-presence-list__dropdown-list-wrapper_scrollable')],'role':_0x47eb0f['to']('role'),'aria-label':_0x47eb0f['to']('ariaLabel'),'aria-labelledby':_0x47eb0f['to']('ariaLabelledBy')},'children':this['items']}),this['listenTo'](_0x54f579['window'],'resize',()=>this['checkIfScrollable']()),this['items']['on']('change',()=>this['checkIfScrollable']());}['render'](){super['render'](),this['checkIfScrollable']();}['checkIfScrollable'](){const _0x4c44f2=this['element'];_0x4c44f2&&(this['_isScrollable']=Math['max'](_0x4c44f2['scrollHeight'],_0x4c44f2['clientHeight'])>0.8*window['innerHeight']);}}class ht extends ct{['userView'];constructor(_0x1e6a48,_0x5cc43c,_0x5a0346){super(_0x1e6a48);const _0x712660=this['bindTemplate'];this['userView']=new at(_0x1e6a48,_0x5cc43c);const _0xf2d59c={'tag':'li','attributes':{'class':['ck','ck-presence-list__dropdown-list-item'],'tabindex':-0x1,'role':'presentation','aria-label':_0x5cc43c['name']},'children':[this['userView'],{'tag':'span','attributes':{'class':['ck','ck-user__full-name']},'children':[{'text':_0x5cc43c['name']}]},{'tag':'span','attributes':{'class':['ck','ck-presence-list__marker',_0x5cc43c['color']['getBackgroundColorClass']()],'aria-hidden':'true'}}]};_0x5a0346&&(_0xf2d59c['tag']='button',_0xf2d59c['on']={'click':_0x712660['to'](()=>this['fire']('execute'))}),this['setTemplate'](_0xf2d59c);}['focus'](){this['element']['focus']();}}class rt extends _0x4a9566{['userView'];['markerView'];constructor(_0x1315d3,_0x358530,_0x17848e){super(_0x1315d3);const _0x103a0f=this['bindTemplate'];this['set']('isFocusable',!0x1),this['set']('hasTooltip',!0x0),this['set']('tooltipPosition',''),this['userView']=new at(_0x1315d3,_0x358530),this['markerView']=new pt(_0x1315d3,_0x358530);const _0x4130cb=new lt(_0x1315d3);_0x4130cb['template']['tag']='span',_0x4130cb['text']=_0x358530['name'];const _0x1375ac={'tag':'div','attributes':{'class':['ck','ck-presence-list__list-item'],'role':'listitem','tabindex':_0x103a0f['to']('isFocusable',_0x498769=>!!_0x498769&&0x0),'aria-labelledby':_0x4130cb['id'],'data-cke-tooltip-text':this['userView']['name'],'data-cke-tooltip-position':_0x103a0f['to']('tooltipPosition'),'data-cke-tooltip-disabled':_0x103a0f['to']('hasTooltip',_0x486920=>!_0x486920),'data-cke-tooltip-class':'ck-presence-list__list-item__tooltip'},'children':[this['userView'],this['markerView'],_0x4130cb]};_0x17848e&&(_0x1375ac['tag']='button',_0x1375ac['on']={'click':_0x103a0f['to'](()=>this['fire']('execute'))}),this['setTemplate'](_0x1375ac);}}class pt extends _0x4a9566{constructor(_0x51cc67,_0x1a3387){super(_0x51cc67),this['setTemplate']({'tag':'span','attributes':{'class':['ck','ck-presence-list__marker',_0x1a3387['color']['getBackgroundColorClass']()],'aria-hidden':'true'}});}}const ot={'collapseAt':0x6,'displayMe':!0x0};class r extends _0x34d5bf{['currentDisplayedUsers'];['balloonPanelView'];['view'];['presenceDropdownView'];['_bodyCollection']=null;constructor(_0x75b2d8){super(_0x75b2d8),this['context']['config']['define']('presenceList',ot);const _0x2d453a=_0x75b2d8['config']['get']('presenceList.collapseAt');if('number'!=typeof _0x2d453a)throw new _0x2e31b4('presencelist-collapseat-invalid-format',this);if(_0x2d453a<0x1)throw new _0x2e31b4('presencelist-collapseat-invalid-format',this);this['_allConnectedUsers']=this['context']['plugins']['get'](i)['allConnectedUsers'],this['set']('usersCount',0x0),this['currentDisplayedUsers']=new _0x3b97a7(),this['balloonPanelView']=new _0x21dd49(),this['balloonPanelView']['class']='ck\x20ck-presence-list__balloon',this['view']=this['_createView'](),this['presenceDropdownView']=void 0x0;}static get['requires'](){return[i];}['init'](){for(const _0x41b40c of this['_allConnectedUsers'])this['_handleUserAdd'](_0x41b40c);this['listenTo'](this['_allConnectedUsers'],'add',(_0x47fe8f,_0x12b2e1)=>{this['_handleUserAdd'](_0x12b2e1);}),this['listenTo'](this['_allConnectedUsers'],'remove',(_0x3ca1f5,_0x269f5b)=>{this['_handleUserRemove'](_0x269f5b);});}['_createView'](){const _0x378525=this['context'],_0x5b70c8=new it(this['context']['locale']),_0x5c4106=this['balloonPanelView'];if(!st(_0x378525['config']['get']('presenceList.container')))throw new _0x2e31b4('presencelist-missing-container',this);return _0x5b70c8['counterView']['bind']('usersCount')['to'](this),_0x5b70c8['bind']('isCollapsed')['to'](this,'usersCount',_0x54c295=>{const {collapseAt:_0x3bed75,displayMe:_0x446c04}=_0x378525['config']['get']('presenceList'),_0x476ed6=_0x54c295>=_0x3bed75;return _0x5b70c8['counterView']['isHidden']=!(0x1==_0x54c295&&_0x446c04||_0x476ed6),_0x476ed6||this['hideDropdown'](),_0x476ed6;}),_0x5b70c8['inlineListView']['items']['bindTo'](this['currentDisplayedUsers'])['using'](_0x5d099b=>{const _0x16b355=_0x378525['config']['get']('presenceList'),_0x62fd8a=new rt(_0x378525['locale'],_0x5d099b,!!_0x16b355['onClick']);return _0x62fd8a['bind']('hasTooltip')['to'](_0x5b70c8,'isCollapsed',_0x50f2af=>!_0x50f2af),_0x62fd8a['bind']('isFocusable')['to'](_0x5b70c8,'isCollapsed',_0x2a274a=>!_0x2a274a),_0x16b355['onClick']&&this['listenTo'](_0x62fd8a,'execute',()=>{this['view']['isCollapsed']||_0x16b355['onClick'](_0x5d099b,_0x62fd8a['element']);}),_0x62fd8a;}),this['listenTo'](_0x5b70c8['inlineListView'],'execute',()=>{this['presenceDropdownView']?this['hideDropdown']():this['view']['isCollapsed']&&this['showDropdown']();}),_0x5b70c8['inlineListView']['keystrokes']['set']('Enter',(_0x36471f,_0x2661b8)=>{this['view']['isCollapsed']&&(this['showDropdown'](),_0x2661b8());}),_0x5b70c8['render'](),_0x5c4106['render'](),_0x1e1784({'emitter':_0x5b70c8,'activator':()=>_0x5c4106['isVisible'],'contextElements':[_0x5c4106['element'],_0x5b70c8['inlineListView']['element']],'callback':()=>this['hideDropdown']()}),_0x378525['config']['get']('presenceList.container')['appendChild'](_0x5b70c8['element']),this['_bodyCollection']=new tt(this['context']['locale']),this['_bodyCollection']['attachToDom'](),this['_bodyCollection']['add'](this['balloonPanelView']),_0x5b70c8;}['_handleUserAdd'](_0x56f53f){if(!this['context']['config']['get']('presenceList.displayMe')&&_0x56f53f['isMe'])return;const _0x57acbd=this['context']['config']['get']('presenceList.collapseAt')-0x1;this['usersCount']++,this['currentDisplayedUsers']['length']==_0x57acbd&&this['currentDisplayedUsers']['length']>0x1&&this['currentDisplayedUsers']['remove'](0x1);const _0x9028d0=_0x56f53f['isMe']?0x0:this['currentDisplayedUsers']['length'];this['currentDisplayedUsers']['add'](_0x56f53f,_0x9028d0);}['_handleUserRemove'](_0x1111e8){if(this['usersCount']--,this['currentDisplayedUsers']['get'](_0x1111e8['id'])&&(this['currentDisplayedUsers']['remove'](_0x1111e8['id']),this['currentDisplayedUsers']['length']<this['usersCount'])){for(const _0x560ab4 of Array['from'](this['_allConnectedUsers'])['reverse']())if(!this['currentDisplayedUsers']['get'](_0x560ab4['id']))return void this['currentDisplayedUsers']['add'](_0x560ab4,Math['min'](this['currentDisplayedUsers']['length'],0x1));}}['showDropdown'](){if(this['presenceDropdownView'])return;const _0x5c9d4b=this['context']['config']['get']('presenceList');this['presenceDropdownView']=new et(this['context']['locale'],!!_0x5c9d4b['onClick']),this['view']['inlineListView']['isExpanded']=!0x0;const {listWrapperView:_0x559d65}=this['presenceDropdownView'];_0x559d65['items']['bindTo'](this['_allConnectedUsers'])['using'](_0x184a5a=>{if(!_0x5c9d4b['displayMe']&&_0x184a5a['isMe'])return null;const _0x1aa8f5=new ht(this['context']['locale'],_0x184a5a,!!_0x5c9d4b['onClick']);return _0x5c9d4b['onClick']&&this['listenTo'](_0x1aa8f5,'execute',()=>{_0x5c9d4b['onClick'](_0x184a5a,_0x1aa8f5['element']);}),_0x1aa8f5;}),this['balloonPanelView']['content']['add'](this['presenceDropdownView']),this['balloonPanelView']['pin']({'target':this['view']['inlineListView']['element']}),_0x559d65['focus'](),_0x559d65['checkIfScrollable']();const _0x5dd822=(_0x1225e1,_0x4a357f)=>{this['hideDropdown'](),this['view']['inlineListView']['focus'](),_0x4a357f();};_0x559d65['keystrokes']['set']('Esc',_0x5dd822),_0x559d65['keystrokes']['set']('Shift+Tab',_0x5dd822),_0x559d65['keystrokes']['set']('Tab',(_0x53b19d,_0x31caac)=>{!function(_0x4e17c1){const _0x4c3ae5=['a','button','input','select','textarea','[tabindex]','[contenteditable]']['map'](_0x448858=>_0x448858+':not([disabled]):not([tabindex=\x22-1\x22])')['join'](','),_0x52e414=[...document['body']['querySelectorAll'](_0x4c3ae5)]['filter'](_0x2be570=>_0x2be570===document['activeElement']||_0x2be570['offsetWidth']+_0x2be570['offsetHeight']>0x0)['sort']((_0x1146e1,_0x438567)=>(_0x1146e1['tabIndex']||0x0)-(_0x438567['tabIndex']||0x0)),_0x22518e=_0x52e414['indexOf'](_0x4e17c1),_0x42c3fa=_0x52e414[(_0x22518e+0x1)%_0x52e414['length']];_0x42c3fa&&_0x42c3fa['focus']();}(this['view']['element']),this['hideDropdown'](),_0x31caac();}),_0x559d65['focusTracker']['add'](this['view']['element']),_0x559d65['focusTracker']['on']('change:isFocused',(_0x3b39db,_0x5f59e4,_0x40129e)=>{_0x40129e||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 _0x34d5bf{static get['requires'](){return[i,r];}static get['pluginName'](){return'PresenceList';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}export{a as CloudServicesCommentsAdapter,u as CloudServicesRevisionHistoryAdapter,f as CloudServicesTrackChangesAdapter,s as PresenceList,l as RealTimeCollaborationClient,m as RealTimeCollaborativeComments,n as RealTimeCollaborativeEditing,g as RealTimeCollaborativeRevisionHistory,p as RealTimeCollaborativeTrackChanges};
23
+ import{ContextPlugin as _0x33a461,Plugin as _0xc45049,PendingActions as _0x54a0be,Context as _0x35bf49}from'@ckeditor/ckeditor5-core/dist/index.js';import{DomEmitterMixin as _0xfc40d0,CKEditorError as _0x18dc38,Collection as _0x330773,global as _0x3ee391,version as nt,uid as _0xb2b188,KeystrokeHandler as _0x26df46}from'@ckeditor/ckeditor5-utils/dist/index.js';import{Notification as _0xedf1a5,View as _0x3d8c1a,ListView as _0xd3dc2c,ListItemView as rt,LabelView as ot,BalloonPanelView as _0x4f7ecf,clickOutsideHandler as _0x39189a,BodyCollection as _0x361caf}from'@ckeditor/ckeditor5-ui/dist/index.js';import{LiveRange as ht,History as _0x57fa0d,NoOperation as _0x30677b,InsertOperation as _0x48cd8e,MarkerOperation as _0x1944c9,RootAttributeOperation as _0x5e1d8f,transformSets as _0x21a970,OperationFactory as _0x20d8ce}from'@ckeditor/ckeditor5-engine/dist/index.js';import{WebSocketGateway as lt,WEB_SOCKET_GATEWAY_STATES as _0x36fb79,CollaborativeEditingService as _0x23bfeb,User as dt,CommentsService as _0x1abf4b,TrackChangesService as et,RevisionHistoryService as it,EditorService as tt}from'@ckeditor/ckeditor-cloud-services-collaboration/dist/index.js';import{Users as _0x4e2011,UserView as ct}from'ckeditor5-collaboration/dist/index.js';import{Compressor as _0x5986db}from'@ckeditor/ckeditor5-operations-compressor/dist/index.js';import{isElement as _0x19da4d}from'lodash-es';class c extends _0x33a461{static ['WebSocketGateway']=/* #__PURE__ -- @preserve */
24
+ ((()=>lt)());static ['initialReconnectionInterval']=0x3e8;['connection'];['_reconnectionStack'];['_shouldPluginsReconnect'];['_domEmitter'];static get['requires'](){return['CloudServices',_0xedf1a5];}static get['pluginName'](){return'WebSocketGateway';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x3e453a){super(_0x3e453a),this['set']('state',_0x36fb79['CONNECTED']),this['set']('_isBrowserOffline',!0x1),this['_reconnectionStack']=new Set(),this['_shouldPluginsReconnect']=!0x1,this['_domEmitter']=Object['create'](_0xfc40d0);}['init'](){const _0x29b8c2=this['context'],_0x27726e=_0x29b8c2['plugins']['get']('CloudServices'),_0x110955=_0x29b8c2['plugins']['get'](_0xedf1a5);if(!_0x27726e['token'])throw new _0x18dc38('websocketgateway-missing-token',this);if(!_0x27726e['webSocketUrl'])throw new _0x18dc38('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'](_0x27726e['token'],_0x27726e['webSocketUrl'],{'timeout':0x3e8*this['context']['config']['get']('cloudServices.connectionTimeout'),'requestTimeout':0x3e8*this['context']['config']['get']('cloudServices.requestTimeout')})['then'](_0xda812d=>{if(this['connection']=_0xda812d,this['bind']('state')['to'](_0xda812d,'state',this,'_isBrowserOffline',(_0x51e944,_0x5ec3b9)=>('connected'!==_0x51e944&&(this['_shouldPluginsReconnect']=!0x0),_0x5ec3b9||_0x51e944!==_0x36fb79['CONNECTED']?_0x36fb79['DISCONNECTED']:this['state']==_0x36fb79['DISCONNECTED']&&this['_shouldPluginsReconnect']?(this['_shouldPluginsReconnect']=!0x1,this['_reconnect'](),_0x36fb79['CONNECTING']):_0x36fb79['CONNECTED'])),this['connection']['on']('error',(_0x268710,_0x264238)=>{if('limitExceeded'!==_0x264238['code'])throw console['error'](_0x264238),new _0x18dc38('cloudservices-init',null,{'originalError':_0x264238});_0x110955['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'});}),!_0xda812d['me'])return new Promise(_0x1ec67e=>_0xda812d['on']('change:me',_0x1ec67e));})['catch'](_0x10447b=>{throw console['error'](_0x10447b),new _0x18dc38('cloudservices-init',null,{'originalError':_0x10447b});});}['addToReconnectionStack'](_0x33e40e){if('function'!=typeof _0x33e40e['reconnect'])throw new _0x18dc38('websocketgateway-invalid-plugin-interface',this);if(this['isInReconnectionStack'](_0x33e40e))throw new _0x18dc38('websocketgateway-plugin-already-registered',this,{'name':_0x33e40e['constructor']['pluginName']});this['_reconnectionStack']['add'](_0x33e40e);}['removeFromReconnectionStack'](_0x4edd63){this['_reconnectionStack']['delete'](_0x4edd63);}['isInReconnectionStack'](_0x592879){return this['_reconnectionStack']['has'](_0x592879);}['_reconnect'](){return this['connection']['reconnect']()['then'](()=>Promise['all'](Array['from'](this['_reconnectionStack'],_0x5b93be=>_0x5b93be['reconnect']())))['then'](()=>this['state']=_0x36fb79['CONNECTED'])['catch'](_0x4eec8f=>{throw console['error'](_0x4eec8f),new _0x18dc38('cloudservices-reconnection-error',this['context']);});}['destroy'](){this['connection']&&this['connection']['disconnect'](),this['state']=_0x36fb79['DISCONNECTED'],this['_domEmitter']['stopListening'](),super['destroy']();}}class i extends _0x33a461{['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,_0x4e2011];}constructor(_0x133044){super(_0x133044),this['channelSessions']=new Map(),this['channelConnectedUsers']=new Map(),this['allConnectedUsers']=new _0x330773(),this['_registeredSessions']=new Map(),this['_uniqueUsersCount']=0x0,this['_users']=this['context']['plugins']['get'](_0x4e2011);}['init'](){const _0x3ecbd4=this['context']['plugins']['get'](c);this['listenTo'](_0x3ecbd4,'change:state',(_0x2dd79d,_0x79b58b,_0x4b31ed)=>{if('connected'!==_0x4b31ed)this['channelSessions']['forEach'](_0x168571=>_0x168571['clear']()),this['channelConnectedUsers']['forEach'](_0x541759=>_0x541759['clear']()),this['allConnectedUsers']['clear']();else{for(const [_0x2008d1,_0x240073]of this['_registeredSessions'])for(const _0x2a2cdb of _0x240073)this['_handleSessionAdd'](_0x2008d1,_0x2a2cdb);}}),this['_createUser'](_0x3ecbd4['connection']['me'],!0x0);}['register'](_0x2c968b,_0x82bc1){if(this['_registeredSessions']['has'](_0x2c968b))throw new _0x18dc38('sessions-register-already-registered',null,{'channelId':_0x2c968b});this['_registeredSessions']['set'](_0x2c968b,_0x82bc1),this['channelSessions']['set'](_0x2c968b,new _0x330773()),this['channelConnectedUsers']['set'](_0x2c968b,new _0x330773()),this['listenTo'](_0x82bc1,'add',(_0x4c6244,_0x37d24d)=>this['_handleSessionAdd'](_0x2c968b,_0x37d24d)),this['listenTo'](_0x82bc1,'remove',(_0x39c1af,_0x3a7ef1)=>this['_handleSessionRemove'](_0x2c968b,_0x3a7ef1));for(const _0x59e344 of _0x82bc1)this['_handleSessionAdd'](_0x2c968b,_0x59e344);}['unregister'](_0x1a3cf6){if(!this['_registeredSessions']['has'](_0x1a3cf6))throw new _0x18dc38('sessions-unregister-not-exist',null,{'channelId':_0x1a3cf6});const _0x32f280=this['_registeredSessions']['get'](_0x1a3cf6);this['stopListening'](_0x32f280);for(const _0x1e3375 of _0x32f280)'connected'===this['context']['plugins']['get'](c)['state']&&this['_handleSessionRemove'](_0x1a3cf6,_0x1e3375);this['_registeredSessions']['delete'](_0x1a3cf6),this['channelSessions']['delete'](_0x1a3cf6),this['channelConnectedUsers']['delete'](_0x1a3cf6);}get['mySessionId'](){return this['context']['plugins']['get'](c)['connection']['sessionId'];}['getUserBySessionId'](_0x27a175){for(const _0x33229c of this['channelSessions']['values']())for(const _0x1a2677 of _0x33229c)if(_0x1a2677['id']===_0x27a175)return _0x1a2677['user'];}['getUserSessions'](_0x1fb158,_0x3f5ba2){const _0x46390f=_0x3f5ba2?[this['channelSessions']['get'](_0x3f5ba2)]:this['channelSessions']['values'](),_0x546a66=new Set();for(const _0x30416f of _0x46390f)for(const _0x53b33b of _0x30416f)_0x53b33b['user']['id']===_0x1fb158['id']&&_0x546a66['add'](_0x53b33b['id']);return _0x546a66;}['getUserRole'](_0x50a0c8){for(const _0x1fd289 of this['channelSessions']['values']())for(const _0x366adf of _0x1fd289)if(_0x366adf['user']===_0x50a0c8)return _0x366adf['role'];}['_handleSessionAdd'](_0x5025f2,_0x41bd90){if('connected'!==this['context']['plugins']['get'](c)['state'])return;const _0x5f4dc4=_0x41bd90['user'],_0x25fb28=this['_users']['getUser'](_0x5f4dc4['id'])||this['_createUser'](_0x5f4dc4),_0x1ed0bd=Object['assign']({},_0x41bd90,{'user':_0x25fb28});this['channelSessions']['get'](_0x5025f2)['add'](_0x1ed0bd);const _0x25401e=this['channelConnectedUsers']['get'](_0x5025f2);_0x25401e['has'](_0x25fb28['id'])||_0x25401e['add'](_0x25fb28),this['allConnectedUsers']['has'](_0x25fb28['id'])||this['allConnectedUsers']['add'](_0x25fb28,_0x25fb28['isMe']?0x0:void 0x0),this['fire']('sessionAdd:'+_0x5025f2,{'channelId':_0x5025f2,'session':_0x1ed0bd});}['_handleSessionRemove'](_0x2cfce8,_0x42eae4){if('connected'!==this['context']['plugins']['get'](c)['state'])return;const _0x16da30=this['channelConnectedUsers']['get'](_0x2cfce8),_0x392c0e=_0x42eae4['user'];_0x392c0e['id']&&(this['channelSessions']['get'](_0x2cfce8)['remove'](_0x42eae4['id']),_0x16da30['has'](_0x392c0e['id'])&&!this['getUserSessions'](_0x392c0e,_0x2cfce8)['size']&&_0x16da30['remove'](_0x392c0e['id']),this['allConnectedUsers']['get'](_0x392c0e['id'])&&!this['getUserSessions'](_0x392c0e)['size']&&this['allConnectedUsers']['remove'](_0x392c0e['id']));}['_createUser'](_0x13c863,_0x17ff08){const _0xee5510=this['_users']['addUser'](_0x13c863);return _0x17ff08&&this['_users']['defineMe'](_0x13c863['id']),_0xee5510['orderNumber']=this['_uniqueUsersCount']++,_0xee5510;}}class H extends _0xc45049{['_domEmitter']=new(_0xfc40d0())();static get['requires'](){return[i];}static get['pluginName'](){return'UserMarkers';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['init'](){const _0x5f4421=this['editor'],_0x5059c1=_0x5f4421['plugins']['get'](i);_0x5f4421['conversion']['for']('editingDowncast')['markerToElement']({'model':'user:position','view':(_0x84b627,{writer:_0x1f270d})=>function(_0x19ab77,_0x4e37d4,_0x21dfee,_0x4f0d57){const _0x246ec2=_0x19ab77['markerName']['split'](':')[0x2],_0x4daeb1=_0x21dfee['getUserBySessionId'](_0x246ec2);if(!_0x4daeb1||_0x246ec2===_0x21dfee['mySessionId'])return;if(!_0x4f0d57['model']['schema']['checkChild'](_0x19ab77['markerRange']['start'],'$text'))return;const _0x400dd9={'class':'ck-user__marker\x20'+_0x4daeb1['color']['getMarkerClass'](),'data-name':_0x4daeb1['name'],'data-session-id':_0x246ec2},_0x5d563b=_0x4f0d57['model']['markers']['get'](_0x19ab77['markerName']),_0x1aac7f=_0x5d563b['getStart'](),_0x17db4c=_0x1aac7f['nodeAfter'],_0x461618=_0x4f0d57['model']['schema'];if(_0x17db4c&&_0x461618['isObject'](_0x17db4c)&&_0x461618['isInline'](_0x17db4c)&&!_0x4f0d57['model']['markers']['get']('user:range:'+_0x246ec2)['getRange']()['isCollapsed'])return;const _0x57d537=_0x1aac7f['parent'];return _0x4f0d57['model']['schema']['isLimit'](_0x57d537)&&!_0x4f0d57['model']['hasContent'](_0x57d537)&&(_0x400dd9['contenteditable']=!0x1),function(_0x36518f,_0x25d57f,_0x2b5408){const _0x1f65ec=_0x36518f['createUIElement']('span',_0x25d57f);return _0x36518f['setCustomProperty']('userPositionMarker',!0x0,_0x1f65ec),_0x1f65ec['render']=function(_0x56a3f9){const _0x273cc9=this['toDomElement'](_0x56a3f9);return _0x273cc9['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>'+_0x2b5408['name']+'</span>⁠',_0x273cc9['addEventListener']('mouseenter',()=>{_0x273cc9['classList']['add']('ck-user__marker_hovered');}),_0x273cc9['addEventListener']('mouseleave',()=>{_0x273cc9['classList']['remove']('ck-user__marker_hovered');}),_0x273cc9;},_0x1f65ec['isSimilar']=function(_0x187862){return!(!this['getCustomProperty']('userPositionMarker')||!_0x187862['getCustomProperty']('userPositionMarker')||this['getAttribute']('data-session-id')!=_0x187862['getAttribute']('data-session-id'));},_0x1f65ec;}(_0x4e37d4,_0x400dd9,_0x4daeb1);}(_0x84b627,_0x1f270d,_0x5059c1,_0x5f4421)}),_0x5f4421['conversion']['for']('editingDowncast')['markerToHighlight']({'model':'user:range','view':_0x2b5ab0=>function(_0x23d7fd,_0x4fdc24){const _0x494f3e=_0x23d7fd['markerName']['split'](':')[0x2];if(_0x494f3e===_0x4fdc24['mySessionId'])return null;const _0x507699=_0x4fdc24['getUserBySessionId'](_0x494f3e);if(!_0x507699)return{'id':_0x494f3e,'classes':[]};return{'id':_0x494f3e,'classes':['ck-user__selection',_0x507699['color']['getSelectionClass']()],'attributes':{'data-session-id':_0x494f3e},'priority':0x7d0+_0x507699['orderNumber']};}(_0x2b5ab0,_0x5059c1)}),function(_0x13317f){const _0x56959f=_0x13317f['model'],_0x4f4889=new Map(),_0x44cc98=_0x13317f['plugins']['get'](i);_0x56959f['markers']['on']('update:user:range',(_0x3ca40a,_0x36f268,_0x3c7b1f,_0x2c717d)=>{if(!_0x2c717d&&_0x4f4889['get'](_0x36f268['name']))return _0x4f4889['get'](_0x36f268['name'])['detach'](),void _0x4f4889['delete'](_0x36f268['name']);const _0x2f4f9e=_0x36f268['name']['split'](':')[0x2];if(_0x2f4f9e===_0x44cc98['mySessionId'])return;const _0x1892b9='user:position:'+_0x2f4f9e;_0x56959f['markers']['has'](_0x1892b9)&&_0x13317f['editing']['reconvertMarker'](_0x1892b9),_0x36f268['on']('change:range',(_0x421f50,_0x3980d4,_0x492eec)=>{if('$graveyard'!=_0x3980d4['root']['rootName']&&'$graveyard'==_0x36f268['getRange']()['root']['rootName']&&!_0x4f4889['has'](_0x36f268['name'])){const _0x1c8423=_0x56959f['schema']['getNearestSelectionRange'](_0x492eec['deletionPosition']);if(_0x1c8423){const _0x28d61e=ht['fromRange'](_0x1c8423);_0x4f4889['set'](_0x36f268['name'],_0x28d61e),_0x28d61e['on']('change:range',(_0xbbae6c,_0x23d4b2,_0x373da7)=>{if('$graveyard'==_0x28d61e['root']['rootName']){const _0x2500b0=_0x56959f['schema']['getNearestSelectionRange'](_0x373da7['deletionPosition']);_0x2500b0?(_0x28d61e['start']=_0x2500b0['start'],_0x28d61e['end']=_0x2500b0['end']):(_0x4f4889['delete'](_0x36f268['name']),_0x28d61e['detach']());}});}}});}),_0x56959f['document']['on']('change',()=>{_0x4f4889['size']>0x0&&_0x56959f['enqueueChange']({'isUndoable':!0x1},_0x223495=>{for(const [_0x3e0a3c,_0x30099b]of _0x4f4889)'$graveyard'==_0x56959f['markers']['get'](_0x3e0a3c)['getRange']()['root']['rootName']&&(re(_0x3e0a3c['split'](':')[0x2],_0x30099b['toRange'](),_0x56959f,_0x223495),_0x30099b['detach']());_0x4f4889['clear']();});});}(_0x5f4421),this['_domEmitter']['listenTo'](_0x3ee391['document'],'keydown',(_0x574a2f,{key:_0x30f4c7})=>{'Escape'===_0x30f4c7&&function(_0x4b836d){_0x4b836d['editing']['view']['change'](_0x34eeef=>{for(const _0x4ab896 of _0x4b836d['model']['markers']){if(!_0x4ab896['name']['startsWith']('user:position'))continue;const _0x29a135=_0x4b836d['editing']['mapper']['markerNameToElements'](_0x4ab896['name']);if(_0x29a135){for(const _0x316ee8 of _0x29a135)_0x34eeef['removeClass']('ck-user__marker_hovered',_0x316ee8);}}});}(_0x5f4421);},{'useCapture':!0x0});}['afterInit'](){const _0x7bf6d7=this['editor'],_0x4c59c7=_0x7bf6d7['commands']['get']('undo');_0x4c59c7&&_0x7bf6d7['model']['on']('applyOperation',(_0x12a84c,_0x3a94f2)=>{const _0x3e03f3=_0x3a94f2[0x0];if('marker'!=_0x3e03f3['type']||!_0x3e03f3['name']['startsWith']('user:'))return;const _0x29c2ba=_0x3e03f3['batch'];_0x4c59c7['_createdBatches']['has'](_0x29c2ba)&&(_0x3e03f3['newRange']=_0x3e03f3['oldRange']?_0x7bf6d7['model']['createRange'](_0x3e03f3['oldRange']['start'],_0x3e03f3['oldRange']['end']):null);},{'priority':'highest'});}['destroy'](){return this['_domEmitter']['stopListening'](),super['destroy']();}['createUserMarkerOperations'](){const _0x48cdbd=this['editor'],_0x5d010c=_0x48cdbd['model']['document'],_0x9ced84=_0x48cdbd['plugins']['get'](i);_0x48cdbd['model']['enqueueChange']({'isUndoable':!0x1},_0x1556c2=>{const _0x1f333a='user:range:'+_0x9ced84['mySessionId'],_0x2eacbd='user:position:'+_0x9ced84['mySessionId'],_0x4f41b7=_0x48cdbd['model']['markers']['has'](_0x1f333a);_0x48cdbd['editing']['view']['hasDomSelection']?re(_0x9ced84['mySessionId'],_0x5d010c['selection']['getFirstRange'](),_0x48cdbd['model'],_0x1556c2):_0x4f41b7&&(_0x1556c2['removeMarker'](_0x1f333a),_0x1556c2['removeMarker'](_0x2eacbd));});}}function re(_0x54283a,_0xd412f5,_0x570300,_0x48aa6b){const _0x3f5d8c='user:range:'+_0x54283a,_0x175085='user:position:'+_0x54283a,_0x553285=_0xd412f5['getContainedElement']();let _0x2c6960=_0xd412f5['start'];_0x553285&&_0x553285['is']('element','tableCell')&&(_0x2c6960=function(_0xf248cd,_0x3a9f3b){for(const _0x176860 of _0xf248cd['getPositions']())if(_0x3a9f3b['schema']['checkChild'](_0x176860,'$text'))return _0x176860;}(_0xd412f5,_0x570300),_0xd412f5=_0x48aa6b['createRange'](_0x2c6960));const _0x1b968f=_0x48aa6b['createRange'](_0x2c6960);_0x570300['markers']['has'](_0x3f5d8c)?(_0x48aa6b['updateMarker'](_0x3f5d8c,{'range':_0xd412f5}),_0x48aa6b['updateMarker'](_0x175085,{'range':_0x1b968f})):(_0x48aa6b['addMarker'](_0x3f5d8c,{'range':_0xd412f5,'usingOperation':!0x0}),_0x48aa6b['addMarker'](_0x175085,{'range':_0x1b968f,'usingOperation':!0x0}));}function q(_0x3ad5db,_0x12b05f,_0x5a8e73){const _0x11b5c2=_0x3ad5db['t'],t=_0x3ad5db['t'];switch(_0x12b05f){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 _0x11b5c2({'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'},_0x5a8e73);default:return'';}}let K=0x1;class l extends _0xc45049{static ['CollaborativeEditingService']=/* #__PURE__ -- @preserve */
25
+ ((()=>_0x23bfeb)());['_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,_0x54a0be,_0x4e2011,_0xedf1a5];}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 _0x4d5bed=this['serverHistory']['getOperations']();for(let _0x218ed4=_0x4d5bed['length']-0x1;_0x218ed4>=0x0;_0x218ed4--){const _0x53825b=_0x4d5bed[_0x218ed4];if(!this['_disconnectionOperations']['has'](_0x53825b))return _0x53825b['baseVersion']+0x1-this['_offset'];}return 0x0;}constructor(_0x3ed08d){if(super(_0x3ed08d),this['_offset']=0x0,this['sessionId']=null,this['serverHistory']=new _0x57fa0d(),this['editor']['config']['define']('collaboration',{}),this['_channelId']=this['editor']['config']['get']('collaboration.channelId'),!this['_channelId'])throw new _0x18dc38('collaboration-missing-channelid',this);const _0x267445=_0x3ed08d['config']['get']('cloudServices.bundleVersion')||nt;this['_service']=new l['CollaborativeEditingService'](_0x267445,this['_channelId']),this['_document']=this['editor']['model']['document'],this['_compressor']=new _0x5986db(),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 _0x1b0285=this['editor'],_0x3acaa8=_0x1b0285['plugins']['get'](_0x4e2011),_0x2758c1=_0x1b0285['plugins']['get'](c);this['listenTo'](_0x3acaa8,'getOperationAuthor',(_0xdcd464,_0x48509b)=>{const _0x225419=_0x48509b[0x0];_0x225419['_authorId']&&(_0xdcd464['return']=_0x3acaa8['getUser'](_0x225419['_authorId']),_0xdcd464['stop']()),null===_0x225419['_authorId']&&(_0xdcd464['return']=null,_0xdcd464['stop']());},{'priority':'high'}),this['listenTo'](_0x1b0285['model']['document']['selection'],'change:range',(_0x15c5b6,_0x5b1cce)=>{_0x5b1cce['directChange']&&this['_refreshUserSelectionMarkers']();}),this['listenTo'](_0x1b0285['editing']['view'],'change:hasDomSelection',()=>{this['_refreshUserSelectionMarkers']();}),this['_initThrowingOnDataSet'](),_0x1b0285['model']['on']('applyOperation',(_0x7fd6da,_0x499925)=>{const _0x359a60=_0x499925[0x0];_0x359a60['isDocumentOperation']&&(this['_saveOperationInBuffer'](_0x359a60),this['_shouldSendUpdate']()&&this['_sendBufferedOperationsDelayed']());}),this['_setUpDataInit'](),this['bind']('_isEditingAllowed')['to'](_0x2758c1,'state',this,'_hasSynchronizationProblem',(_0xfdf427,_0x35d566)=>'connected'===_0xfdf427&&!_0x35d566),this['on']('change:_isEditingAllowed',()=>{this['_isEditingAllowed']?_0x1b0285['disableReadOnlyMode']('rtc-offline'):_0x1b0285['enableReadOnlyMode']('rtc-offline');}),this['_isEditingAllowed']?_0x1b0285['disableReadOnlyMode']('rtc-offline'):_0x1b0285['enableReadOnlyMode']('rtc-offline'),this['set']('_isConnected',!0x1);}async['reconnect'](){const _0x2527e7=this['editor']['plugins']['get'](i),_0x5abc66=this['editor']['plugins']['get'](c);try{this['_isPendingUpdate']=!0x0,_0x2527e7['unregister'](this['_channelId']);const _0x5b8ffd=await this['_service']['reconnect'](_0x5abc66['connection'],this['lastSyncVersion']);await this['_handleReconnectionResponse'](_0x5b8ffd)&&(this['_isPendingUpdate']=!0x1,this['_clearPendingAction']());const _0x2e5b7a=await this['_service']['getConnectedSessions']();_0x2527e7['register'](this['_channelId'],_0x2e5b7a),this['_handleSendingSelectionMarkers'](),this['_isConnected']=!0x0;}catch(_0x154477){if(function(_0xf22baf){return'404'===_0xf22baf['code'];}(_0x154477)&&this['sessionId'])await this['_connectAfterSessionHasBeenFlushed']();else{if(function(_0x571716){return'409'===_0x571716['code'];}(_0x154477)){const _0x55d989=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'](_0x55d989);}else{if(!(_0x154477 instanceof J))throw _0x154477;this['_handleReconnectionError']();}}}}['destroy'](){const _0x478407=this['editor']['plugins']['get'](c),_0x605223=this['editor']['plugins']['get'](i);this['editor']['enableReadOnlyMode']('rtc-destroyed'),_0x605223['channelSessions']['has'](this['_channelId'])&&_0x605223['unregister'](this['_channelId']),_0x478407['removeFromReconnectionStack'](this),this['_disconnectService'](),super['destroy']();}async['_handleReconnectionResponse'](_0x2ee9f6){if(this['sessionId']!==_0x2ee9f6['sessionId']&&this['_lastSyncedOperationId']!==_0x2ee9f6['lastOperationId'])throw new J();return this['sessionId']=_0x2ee9f6['sessionId'],this['_handleServerResponse']([],{..._0x2ee9f6,'wereChangesApplied':!0x1,'data':_0x2ee9f6['data']},'reconnect');}async['_connectService'](_0x2b449c,_0x29ea1f=!0x1){const {connection:_0xdcd12b}=this['editor']['plugins']['get'](c);l['CollaborativeEditingService']['getConnectedSessions'](_0xdcd12b,this['_channelId'])['then'](_0x394187=>this['_initSessionsHandling'](_0x394187))['catch'](_0x14800d=>{this['_crash']('realtimecollaborationclient-init-session-connection-error',_0x14800d);}),this['listenTo'](this['_service'],'operationsReceived',this['_handleReceivedOperations']['bind'](this)),this['listenTo'](this['_service'],'error',(_0xfe0bfb,_0x3f176f)=>{this['_crash']('realtimecollaborationclient-initservice-internal-error',_0x3f176f);}),this['listenTo'](this['_service'],'disconnected',()=>{this['_isConnected']=!0x1;});const _0x5a071e=this['_operationIdentifier']['getIdOfTheLastOperation'](_0x2b449c);this['_isPendingUpdate']=!0x0;const _0x2dca34=await this['_service']['connect'](_0xdcd12b,this['_compressOperations'](_0x2b449c),_0x5a071e);if(this['sessionId']=_0x2dca34['sessionId'],_0x29ea1f){if(!_0x2dca34['wereChangesApplied'])return void this['_handleReconnectionError']();this['_isPendingUpdate']=!0x1,this['_clearPendingAction'](),this['serverHistory']['reset'](),this['_offset']=_0x2dca34['offset'],this['serverHistory']['version']=this['_offset'],await this['_handleServerResponse'](_0x2b449c,_0x2dca34,'reconnection:\x20flushed\x20session');}else await this['_handleInitialConnectionData'](_0x2dca34,_0x2b449c);this['_handleSendingSelectionMarkers'](),this['_isConnected']=!0x0;}['_handleSendingSelectionMarkers'](){const _0x33f127=this['editor']['plugins']['get'](i),_0x16b4f8=this['editor']['plugins']['get'](H),_0x7af235=_0x33f127['channelSessions']['get'](this['_channelId']);_0x7af235&&_0x7af235['length']>0x1?_0x16b4f8['createUserMarkerOperations']():this['listenTo'](_0x33f127,'sessionAdd:'+this['_channelId'],()=>{0x2===_0x33f127['channelSessions']['get'](this['_channelId'])['length']&&_0x16b4f8['createUserMarkerOperations']();});}async['_handleReceivedOperations'](_0x1ae850,_0x5a5864,_0x5d2cf2,_0x1f3ab5){if(!this['_isPendingUpdate']&&this['_document']['version']==_0x5a5864){const _0x4523ba=this['_decompressOperations'](_0x5d2cf2,_0x1f3ab5);await this['_fetchMissingUsers'](_0x4523ba),this['_handleExternalOperations'](_0x4523ba,_0x5a5864,_0x5d2cf2['lastOperationId'])||this['_crash']('realtimecollaborationclient-initservice-incorrect-server-operation');}}async['_connectAfterSessionHasBeenFlushed'](){this['_disconnectService']();const {locale:_0x140da0}=this['editor'];let _0x5d5692;try{_0x5d5692=await this['_service']['getDocumentDetails']();}catch(_0x41f3a7){const _0x2c654b=q(_0x140da0,'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'](_0x2c654b);}const _0x4dbbb2=_0x5d5692['currentDocumentSession']||_0x5d5692['lastDocumentSession'];if(this['_lastSyncedOperationId']===_0x4dbbb2['lastOperationId'])await this['_connectService'](this['editor']['model']['document']['history']['getOperations'](),!0x0);else{const _0x22c08f=q(_0x140da0,'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'](_0x22c08f);}}['_disconnectService'](){this['_service']['disconnect'](),this['_bufferedOperations']=[],clearTimeout(this['_sendBufferedOperationsDelayId']),this['stopListening'](this['_service']);}['_initSessionsHandling'](_0x53a2aa){const _0x58acc2=this['editor']['plugins']['get'](i);this['listenTo'](_0x58acc2,'sessionAdd:'+this['_channelId'],(_0x3ab013,{session:_0x5c4ebe})=>{if(_0x5c4ebe['id']===_0x58acc2['mySessionId']){_0x3ab013['off']();const _0x534558=this['editor']['plugins']['has']('CommentsOnly')&&this['editor']['plugins']['get']('CommentsOnly');let _0xee0c55=_0x5c4ebe['permissions'];_0x534558&&_0x534558['isEnabled']&&(_0xee0c55=_0xee0c55['filter'](_0x305f71=>'document:write'!==_0x305f71)),this['editor']['plugins']['get']('Permissions')['setPermissions'](_0xee0c55,this['_channelId']);}}),_0x58acc2['register'](this['_channelId'],_0x53a2aa);}['_initThrowingOnDataSet'](){const _0x385182=this['editor']['data']['set'];this['editor']['data']['set']=(..._0x169d4d)=>{if(!_0x169d4d[_0x169d4d['length']-0x1]['suppressErrorInCollaboration'])throw new _0x18dc38('realtimecollaborationclient-editor-setdata-and-editor-data-set-are-forbidden-in-real-time-collaboration',this);_0x385182['apply'](this['editor']['data'],_0x169d4d);};}['_setUpDataInit'](){this['editor']['data']['on']('init',(_0x85df0a,[_0x8faeed])=>{if(this['_document']['version'])throw new _0x18dc38('realtimecollaborationclient-init-document-already-initialized',this);_0x85df0a['stop'](),this['_setPendingAction']();const _0x272a10=this['editor']['config']['get']('rootsAttributes'),_0x584216=this['_getOperationsFromInitData'](_0x8faeed,_0x272a10);0x0==_0x584216['length']&&_0x584216['push'](new _0x30677b(0x0)),_0x85df0a['return']=this['_connectService'](_0x584216)['then'](()=>{this['editor']['plugins']['get'](c)['addToReconnectionStack'](this),this['editor']['data']['fire']('ready');})['catch'](_0x1ee37=>this['_crash']('realtimecollaborationclient-init-connection-failed',_0x1ee37))['finally'](()=>this['_clearPendingAction']());},{'priority':'high'}),this['editor']['on']('loadRoot',async(_0x590a63,[_0x49de83,_0x354416])=>{_0x590a63['stop']();const _0x5d030e=this['editor']['model']['document']['getRoot'](_0x49de83);if(!this['_knownRootNames']['has'](_0x49de83)){const _0x49b023=_0x354416&&_0x354416['data']?_0x354416['data']:'',_0x281b01=_0x354416&&_0x354416['attributes']?_0x354416['attributes']:{};await this['_loadRoot'](_0x49de83,_0x49b023,_0x281b01);}this['editor']['model']['enqueueChange']({'isUndoable':!0x1},()=>{_0x5d030e['_isLoaded']=!0x0,this['editor']['model']['document']['differ']['_bufferRootLoad'](_0x5d030e);});},{'priority':'high'});}async['_fetchMissingUsers'](_0xcb935c){const _0x1d2b0f=this['editor']['plugins']['get'](_0x4e2011),{connection:_0x3ff18e}=this['editor']['plugins']['get'](c),_0x194276=new Set();for(const _0x2fa796 of _0xcb935c){const _0x984863=_0x2fa796['_authorId'];_0x984863&&!_0x1d2b0f['getUser'](_0x984863)&&_0x194276['add'](_0x984863);}if(0x0===_0x194276['size'])return;const _0x25cfc8=await dt['getMany'](_0x3ff18e,Array['from'](_0x194276));for(const _0x4b60f7 of _0x25cfc8)_0x1d2b0f['getUser'](_0x4b60f7['id'])||_0x1d2b0f['addUser'](_0x4b60f7);}['_getOperationsFromInitData'](_0x528c28,_0x5ded76={}){const _0x56cb41=this['editor']['model'],_0x3eccf5=[];let _0x1f4e0b=0x0;const _0x3891cf='string'==typeof _0x528c28?{'main':_0x528c28}:_0x528c28;for(const _0x352d53 of Object['keys'](_0x3891cf)){if(!this['_document']['roots']['has'](_0x352d53))throw new _0x18dc38('realtimecollaborationclient-init-non-existent-root',this);const _0x2d0ea8=this['editor']['data']['parse'](_0x3891cf[_0x352d53]),_0x4c0f0d=this['_document']['getRoot'](_0x352d53),_0x45b829=new _0x48cd8e(_0x56cb41['createPositionAt'](_0x4c0f0d,0x0),_0x2d0ea8,_0x1f4e0b++);_0x3eccf5['push'](_0x45b829);for(const [_0x293ab9,_0x19c60c]of _0x2d0ea8['markers']){const _0x585351=_0x56cb41['createRange'](_0x56cb41['createPositionFromPath'](_0x4c0f0d,_0x19c60c['start']['path']['slice']()),_0x56cb41['createPositionFromPath'](_0x4c0f0d,_0x19c60c['end']['path']['slice']())),_0x744f90=new _0x1944c9(_0x293ab9,null,_0x585351,_0x56cb41['markers'],!0x0,_0x1f4e0b++);_0x3eccf5['push'](_0x744f90);}}if(_0x5ded76)for(const [_0x3d2193,_0x13ef01]of Object['entries'](_0x5ded76)){const _0x38af56=_0x56cb41['document']['getRoot'](_0x3d2193);if(!_0x38af56)throw new _0x18dc38('multi-root-editor-root-attributes-no-root',null);for(const [_0x5c8871,_0x4a55da]of Object['entries'](_0x13ef01))if(null!==_0x4a55da){const _0x439057=new _0x5e1d8f(_0x38af56,_0x5c8871,null,_0x4a55da,_0x1f4e0b++);_0x3eccf5['push'](_0x439057);}}return _0x3eccf5;}async['_loadRoot'](_0x22edf0,_0x312798,_0x9b20b3){this['_getOperationsFromInitData']({[_0x22edf0]:_0x312798},{[_0x22edf0]:_0x9b20b3})['forEach']((_0x361082,_0x55e720)=>{_0x361082['baseVersion']=this['_document']['version']+_0x55e720,_0x361082['_isInit']=!0x0,this['_saveOperationInBuffer'](_0x361082);}),this['_sendBufferedOperationsDelayed'](),await this['_waitUntilSynced']();}async['_handleInitialConnectionData'](_0x4c68d0,_0x54234b){let _0x1141d7;this['_offset']=_0x4c68d0['offset'];const _0x1b10f5=_0x4c68d0['wereChangesApplied']&&!_0x4c68d0['initData'],_0x4edba5=_0x1b10f5?0x0:_0x4c68d0['data']['baseVersion'];if(_0x54234b['forEach'](_0x466ee1=>{_0x466ee1['_isInit']=!0x0,_0x466ee1['createdAt']=_0x4c68d0['sessionCreatedAt'],_0x466ee1['_authorId']=null;}),_0x1b10f5)_0x1141d7=_0x54234b,this['_applyOperationsSet'](_0x1141d7,_0x1b10f5);else{if(_0x4c68d0['initData']){const _0x11f4c8=this['_getOperationsFromInitData'](_0x4c68d0['initData']);this['_document']['history']['version']=-_0x11f4c8['length'],_0x11f4c8['forEach'](_0x393f04=>{_0x393f04['baseVersion']-=_0x11f4c8['length'],_0x393f04['createdAt']=_0x4c68d0['sessionCreatedAt'],_0x393f04['_isInit']=!0x0,_0x393f04['_authorId']=null;}),this['_applyOperationsSet'](_0x11f4c8,!0x0),this['serverHistory']['version']=-_0x11f4c8['length']+this['_offset'],this['_updateServerHistory'](_0x11f4c8);}this['_document']['history']['version']=_0x4edba5,_0x1141d7=this['_decompressOperations'](_0x4c68d0['data'],_0x4c68d0['metadata']),await this['_fetchMissingUsers'](_0x1141d7),this['_applyOperationsSet'](_0x1141d7,_0x1b10f5);}_0x4c68d0['lastOperationId']&&(this['_operationIdentifier']['setIdForTheLastOperation'](_0x1141d7,_0x4c68d0['lastOperationId']),this['_lastSyncedOperationId']=_0x4c68d0['lastOperationId']),this['serverHistory']['version']=_0x4edba5+this['_offset'],this['_updateServerHistory'](_0x1141d7),_0x54234b['filter'](_0x2bb17d=>{const _0x1ab67f=this['_getAffectedRoot'](_0x2bb17d);return _0x1ab67f&&!this['_knownRootNames']['has'](_0x1ab67f);})['forEach']((_0x1b7e6e,_0x263a63)=>{_0x1b7e6e['baseVersion']=this['_document']['version']+_0x263a63,this['_saveOperationInBuffer'](_0x1b7e6e);}),this['_shouldSendUpdate']()?(this['_currentBufferDelay']=0x0,this['_sendBufferedOperationsDelayed'](!0x0),await this['_waitUntilSynced']()):(this['_isPendingUpdate']=!0x1,this['_clearPendingAction']());}['_crash'](_0x2c95be,_0x31a5ea){throw this['_isPendingUpdate']=!0x0,_0x31a5ea&&console['error'](_0x31a5ea),new _0x18dc38(_0x2c95be,this['editor']);}['_saveOperationInBuffer'](_0x1f7868){this['_knownOperations']['has'](_0x1f7868)||(this['_knownOperations']['add'](_0x1f7868),this['_bufferedOperations']['push'](_0x1f7868),this['_pendingAction']||'marker'==_0x1f7868['type']&&!_0x1f7868['affectsData']||this['_setPendingAction']());}['_sendBufferedOperationsDelayed'](_0xa5a062=!0x1){!_0xa5a062&&this['_isPendingUpdate']||(this['_isPendingUpdate']=!0x0,clearTimeout(this['_sendBufferedOperationsDelayId']),this['_sendBufferedOperationsDelayId']=setTimeout(()=>{this['_sendBufferedOperations']()['then'](_0x3d892e=>{_0x3d892e&&(this['_clearPendingAction'](),this['_isPendingUpdate']=!0x1);})['catch'](_0xa675bc=>{if(this['_clearPendingAction'](),this['_isPendingUpdate']=!0x1,!function(_0x195e98){return _0x195e98['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x195e98['message']['startsWith']('cloud-services-internal-error:\x20Collaborative\x20Editing\x20Service\x20is\x20not\x20connected.')||_0x195e98['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}(_0xa675bc))throw _0xa675bc;});},this['_currentBufferDelay']));}['_waitUntilSynced'](){return new Promise(_0x49ad3d=>{this['on']('change:_isPendingUpdate',()=>{_0x49ad3d();});});}async['_sendBufferedOperations'](){const _0x20e41f=this['editor']['plugins']['get'](H);if(this['_shouldSendSelectionUpdate']()&&(_0x20e41f['createUserMarkerOperations'](),this['_hasSelectionChanged']=!0x1),!this['_shouldSendUpdate']())return!0x0;const _0x53ac06=[...this['_bufferedOperations']];for(const _0x181fcf of _0x53ac06)_0x181fcf['wasUndone']=this['_document']['history']['isUndoneOperation'](_0x181fcf);const _0x40c073=this['_operationIdentifier']['getIdOfTheLastOperation'](_0x53ac06),_0x190a0a=K++,_0x1f8497=this['_compressOperations'](_0x53ac06),_0x457879=await this['_service']['sendOperations'](_0x1f8497,_0x1f8497['baseVersion'],_0x40c073);try{return await this['_handleServerResponse'](_0x53ac06,_0x457879,_0x190a0a);}catch(_0x755f65){return this['_crash']('realtimecollaborationclient-sendbufferedoperations',_0x755f65);}}async['_handleServerResponse'](_0x4f5005,_0x2793ab,_0x5455e7){if('error'in _0x2793ab)throw _0x2793ab['error'];let _0x40d95f=!0x1;if(_0x2793ab['wereChangesApplied']){_0x2793ab['lastOperationId']&&(this['_lastSyncedOperationId']=_0x2793ab['lastOperationId']),this['_bufferedOperations']=this['_bufferedOperations']['filter'](_0x305623=>!_0x4f5005['includes'](_0x305623));for(const _0xb9402a of _0x4f5005)_0xb9402a['createdAt']='lastOperationAcceptedAt'in _0x2793ab&&_0x2793ab['lastOperationAcceptedAt']||void 0x0;Q(_0x4f5005,_0x2793ab['version']-_0x4f5005['length']),this['_updateServerHistory'](_0x4f5005);const _0xbd5213=_0x4f5005['filter'](_0x5b1c93=>{if(!_0x5b1c93['_isInit'])return!0x1;const _0x4db620=this['_getAffectedRoot'](_0x5b1c93);return _0x4db620&&!this['_knownRootNames']['has'](_0x4db620);});Q(_0xbd5213,this['_document']['version']),this['_applyOperationsSet'](_0xbd5213),_0x40d95f=!0x0,this['_currentBufferDelay']=this['_baseBufferDelay'];}else{const _0x4045eb=this['_decompressOperations'](_0x2793ab['data'],_0x2793ab['metadata'])['filter'](_0x398c78=>_0x398c78['baseVersion']>=this['_lastServerVersion']);_0x4045eb['forEach'](_0x5bac63=>this['_addKnownRoot'](_0x5bac63)),this['_bufferedOperations']=this['_bufferedOperations']['filter'](_0x533b49=>!_0x533b49['_isInit']||!this['_knownRootNames']['has'](this['_getAffectedRoot'](_0x533b49))),this['_bufferedOperations']['length']&&Q(this['_bufferedOperations'],this['_bufferedOperations'][0x0]['baseVersion']),await this['_fetchMissingUsers'](_0x4045eb),_0x40d95f=this['_handleExternalOperations'](_0x4045eb,_0x2793ab['version'],_0x2793ab['lastOperationId']),this['_currentBufferDelay']=Math['round'](this['_currentBufferDelay']/0x2);}return _0x40d95f?!this['_shouldSendUpdate']()||(this['_sendBufferedOperationsDelayed'](!0x0),!0x1):this['_crash']('realtimecollaborationclient-handleserverresponse');}['_handleExternalOperations'](_0xf8b4d0,_0x4165e5,_0x14745f){try{const _0x7d67d3={'document':this['_document'],'useRelations':!0x1,'padWithNoOps':!0x0},{operationsA:_0x5b1ee0,operationsB:_0x467950,originalOperations:_0x30b42d}=_0x21a970(_0xf8b4d0,this['_bufferedOperations'],_0x7d67d3);Q(_0x5b1ee0,this['_document']['version']),Q(_0x467950,_0x4165e5);for(const _0x10d8e1 of _0x5b1ee0){const _0x583587=_0x30b42d['get'](_0x10d8e1);_0x10d8e1['_authorId']=_0x583587?_0x583587['_authorId']:null;}_0x14745f&&(this['_operationIdentifier']['setIdForTheLastOperation'](_0xf8b4d0,_0x14745f),this['_lastSyncedOperationId']=_0x14745f),this['_bufferedOperations']=[..._0x467950],this['_applyOperationsSet'](_0x5b1ee0),this['_updateServerHistory'](_0xf8b4d0);}catch(_0x1797d1){return console['error'](_0x1797d1),!0x1;}return!0x0;}['_applyOperationsSet'](_0x4987eb,_0xc46b58=!0x1){this['editor']['model']['enqueueChange']({'isUndoable':!0x1,'isLocal':!0x1},_0x5c3918=>{for(const _0x22cb5c of _0x4987eb)this['_knownOperations']['add'](_0x22cb5c),this['_addKnownRoot'](_0x22cb5c),_0x5c3918['batch']['addOperation'](_0x22cb5c),this['editor']['model']['applyOperation'](_0x22cb5c);});}['_addKnownRoot'](_0x12e8d4){const _0x5dc05b=this['_getAffectedRoot'](_0x12e8d4);_0x5dc05b&&this['_knownRootNames']['add'](_0x5dc05b);}['_getAffectedRoot'](_0xec7dfa){let _0x32bf9a,_0x509081;switch(_0xec7dfa['type']){case'insert':_0x32bf9a=_0xec7dfa['position']['root'];break;case'marker':if(_0x509081=_0xec7dfa['newRange'],!_0x509081)return null;_0x32bf9a=_0x509081['root'];break;case'addRootAttribute':_0x32bf9a=_0xec7dfa['root'];break;case'addRoot':_0x32bf9a=_0xec7dfa['affectedSelectable'];break;case'move':_0x32bf9a=_0xec7dfa['targetPosition']['root'];break;default:return null;}return _0x32bf9a['rootName'];}['_updateServerHistory'](_0x977311){_0x977311['forEach'](_0x32a812=>{const _0xc76034=_0x32a812['clone']();_0xc76034['_authorId']=_0x32a812['_authorId'],_0xc76034['_isInit']=!!_0x32a812['_isInit'],_0xc76034['createdAt']=_0x32a812['createdAt'],_0xc76034['baseVersion']+=this['_offset'],_0x32a812['_isDisconnection']&&this['_disconnectionOperations']['add'](_0xc76034),this['serverHistory']['addOperation'](_0xc76034);});}['_handleReconnectionError'](_0x3ead13){const _0x42ae9d=this['editor']['plugins']['get']('Notification'),_0x1b8e41=this['editor']['locale'];_0x3ead13||(_0x3ead13=q(_0x1b8e41,'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.')),_0x42ae9d['showWarning'](_0x3ead13,{'title':q(_0x1b8e41,'Synchronization\x20issue'),'namespace':'real-time-collaboration'}),this['_hasSynchronizationProblem']=!0x0,clearTimeout(this['_sendBufferedOperationsDelayId']),this['_bufferedOperations']=[],this['editor']['plugins']['get'](c)['destroy']();}['_setPendingAction'](){this['_pendingAction']||(this['_pendingAction']=this['editor']['plugins']['get'](_0x54a0be)['add'](q(this['editor']['locale'],'PENDING_ACTION_SENDING_DATA')));}['_clearPendingAction'](){this['_pendingAction']&&(this['editor']['plugins']['get'](_0x54a0be)['remove'](this['_pendingAction']),this['_pendingAction']=null);}['_compressOperations'](_0x24f6ff){const _0x8295d8=_0x24f6ff['map'](_0x5cc63e=>_0x5cc63e['toJSON']());return this['_compressor']['compress'](_0x8295d8);}['_decompressOperations'](_0x3ac9fc,_0x218a11){return this['_compressor']['decompress'](_0x3ac9fc)['map']((_0x4d5c68,_0x517bef)=>{const _0x9e43ca='init'==_0x218a11[_0x517bef]['type'];if('InsertOperation'==_0x4d5c68['__className']){const _0x29985e=_0x4d5c68['position']['root'];!this['_document']['getRoot'](_0x29985e)&&(this['_document']['createRoot']('$root',_0x29985e)['_isAttached']=!0x1);}const _0x181071=_0x20d8ce['fromJSON'](_0x4d5c68,this['_document']);return _0x181071['wasUndone']=_0x4d5c68['wasUndone'],_0x181071['_isInit']=_0x9e43ca,_0x181071['_authorId']=_0x9e43ca?null:_0x218a11[_0x517bef]['userId'],_0x181071['_isDisconnection']='cs:removeUser'===_0x218a11[_0x517bef]['type'],_0x181071['createdAt']=_0x218a11[_0x517bef]['createdAt'],_0x181071;});}['_refreshUserSelectionMarkers'](){this['_hasSelectionChanged']=!0x0,this['_shouldSendSelectionUpdate']()?this['_sendBufferedOperationsDelayed']():this['_hasSelectionChanged']=!0x1;}['_shouldSendSelectionUpdate'](){const _0x199db6=this['editor']['plugins']['get'](i)['channelSessions']['get'](this['_channelId']);return!this['editor']['isReadOnly']&&!!_0x199db6&&_0x199db6['length']>0x1&&this['_hasSelectionChanged'];}['_shouldSendUpdate'](){return this['_bufferedOperations']['length']>0x0||this['_shouldSendSelectionUpdate']();}}class J extends Error{}function Q(_0x1ca687,_0x2d7d86){for(const _0x58c24b of _0x1ca687)_0x58c24b['baseVersion']=_0x2d7d86++;}class X{['_ignoredOperations'];['_operationToId'];constructor(_0x5e1575){this['_ignoredOperations']=_0x5e1575,this['_operationToId']=new WeakMap();}['getIdOfTheLastOperation'](_0x54348f){let _0x91b5d9=_0x54348f['length'];for(;_0x91b5d9--;){const _0x139aae=_0x54348f[_0x91b5d9];if(!this['_ignoredOperations']['has'](_0x139aae)){if(!this['_operationToId']['has'](_0x139aae)){const _0x4a5e69=_0xb2b188()['slice'](0x1,0x12);this['_operationToId']['set'](_0x139aae,_0x4a5e69);}return this['_operationToId']['get'](_0x139aae);}}}['setIdForTheLastOperation'](_0x2906d3,_0x40c188){if(!_0x40c188)return;let _0x5966c2=_0x2906d3['length'];for(;_0x5966c2--;){const _0xa243c3=_0x2906d3[_0x5966c2];this['_ignoredOperations']['has'](_0xa243c3)||this['_operationToId']['set'](_0xa243c3,_0x40c188);}}}class n extends _0xc45049{static get['requires'](){return[l];}static get['pluginName'](){return'RealTimeCollaborativeEditing';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}class a extends _0x33a461{static ['CommentsService']=/* #__PURE__ -- @preserve */
26
+ ((()=>_0x1abf4b)());['_services'];static get['requires'](){return[c,'CommentsRepository',i,_0x4e2011];}static get['pluginName'](){return'CloudServicesCommentsAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x181adb){super(_0x181adb),this['_services']=new Map();}async['init'](){const _0x5abc3f=this['context'],_0x256ace=_0x5abc3f['plugins']['get']('CommentsRepository');if(_0x5abc3f['plugins']['get'](c)['addToReconnectionStack'](this),_0x256ace['adapter']={'addCommentThread':async({channelId:_0x4839eb,threadId:_0x4ea0ae,comments:_0x43c9ce,resolvedAt:_0xc7510a,resolvedBy:_0x3482c7,context:_0x52f025,attributes:_0x58bc4d})=>{const _0x1a4843=await this['_getService'](_0x4839eb)['addCommentThread']({'commentThreadId':_0x4ea0ae,'comments':_0x43c9ce['map'](_0x1804ef=>function(_0x2f60fa,_0xff2986,_0x31778f){return{'commentThreadId':_0x31778f,'commentId':_0x2f60fa['commentId'],'userId':_0x2f60fa['authorId'],'content':_0x2f60fa['content'],'documentId':_0xff2986,'createdAt':_0x2f60fa['createdAt'],'attributes':_0x2f60fa['attributes']||{}};}(_0x1804ef,_0x4839eb,_0x4ea0ae)),'resolvedAt':_0xc7510a,'resolvedBy':_0x3482c7,'context':_0x52f025,'attributes':_0x58bc4d})['catch'](ut);return{'threadId':_0x1a4843['commentThreadId'],'comments':_0x1a4843['comments']};},'getCommentThread':async({channelId:_0x10bb44,threadId:_0x5ae95f})=>{const _0x484a31=await this['_getService'](_0x10bb44)['getCommentThread'](_0x5ae95f)['catch'](ut);return _0x484a31['deletedAt']?null:(await this['_fetchMissingUsersForThreads']([_0x484a31]),{'threadId':_0x484a31['commentThreadId'],'comments':_0x484a31['comments']['map'](S),'context':_0x484a31['context'],'resolvedAt':_0x484a31['resolvedAt'],'resolvedBy':_0x484a31['resolvedBy'],'attributes':_0x484a31['attributes']||{}});},'updateCommentThread':async({channelId:_0xae948c,threadId:_0x3c78c6,context:_0x424b39,unlinkedAt:_0x479537,attributes:_0x4ec705})=>this['_getService'](_0xae948c)['updateCommentThread']({'commentThreadId':_0x3c78c6,'context':_0x424b39,'attributes':_0x4ec705,'unlinkedAt':_0x479537})['catch'](B)['catch'](ut),'resolveCommentThread':async({channelId:_0xc43c78,threadId:_0x74d9f})=>{const _0x2e464d=await this['_getService'](_0xc43c78)['resolveCommentThread'](_0x74d9f)['catch'](B)['catch'](ut);return{'threadId':_0x2e464d['commentThreadId'],'resolvedAt':_0x2e464d['resolvedAt'],'resolvedBy':_0x2e464d['resolvedBy']};},'reopenCommentThread':async({channelId:_0x28b825,threadId:_0x4e7997})=>this['_getService'](_0x28b825)['reopenCommentThread'](_0x4e7997)['catch'](B)['catch'](ut),'removeCommentThread':({channelId:_0x5e3708,threadId:_0x16f794})=>this['_getService'](_0x5e3708)['removeCommentThread'](_0x16f794)['catch'](B)['catch'](ut),'addComment':({channelId:_0x3372c6,threadId:_0x1b2b0c,commentId:_0x4e2ff8,content:_0x4861a6,attributes:_0x317245})=>this['_getService'](_0x3372c6)['addComment'](_0x1b2b0c,_0x4e2ff8,_0x4861a6,_0x317245)['catch'](ut),'updateComment':({channelId:_0x1a42b4,threadId:_0x42ff2d,commentId:_0x3772b9,content:_0x5ce863,attributes:_0x50888b})=>this['_getService'](_0x1a42b4)['updateComment'](_0x42ff2d,_0x3772b9,_0x5ce863,_0x50888b)['catch'](B)['catch'](ut),'removeComment':({channelId:_0x5222cb,threadId:_0x5d0bb1,commentId:_0x52c08d})=>this['_getService'](_0x5222cb)['removeComment'](_0x5d0bb1,_0x52c08d)['catch'](B)['catch'](ut)},_0x5abc3f instanceof _0x35bf49){const _0x1e3524=_0x5abc3f['config']['get']('collaboration.channelId'),_0x355661=_0x5abc3f['plugins']['get'](i);await this['_setUpService'](_0x1e3524);const _0x568f35=await this['_services']['get'](_0x1e3524)['getConnectedSessions']();this['listenTo'](_0x355661,'sessionAdd:'+_0x1e3524,(_0x1323c2,{session:_0x262664})=>{_0x262664['id']===_0x355661['mySessionId']&&(_0x1323c2['off'](),this['context']['plugins']['get']('Permissions')['setPermissions'](_0x262664['permissions'],_0x1e3524));}),_0x355661['register'](_0x1e3524,_0x568f35);}}async['_setUpService'](_0x18603c){if(this['_services']['has'](_0x18603c))throw new _0x18dc38('cloudservicescommentsadapter-connect-already-connected',null,{'channelId':_0x18603c});const _0x4f2d28=this['context']['plugins']['get']('CommentsRepository'),_0x1f1e09=new a['CommentsService'](_0x18603c);this['_services']['set'](_0x18603c,_0x1f1e09),this['listenTo'](_0x1f1e09,'commentThreadAdded',(_0xcfa20c,_0x1ed792)=>{const {commentThreadId:_0x251b61,documentId:_0x73b69b,context:_0x3b8d66,attributes:_0x12eab1,resolvedAt:_0x5dce68,resolvedBy:_0x508cf6,comments:_0x3d6cde}=_0x1ed792;_0x4f2d28['getCommentThread'](_0x251b61)||_0x4f2d28['addCommentThread']({'threadId':_0x251b61,'channelId':_0x73b69b,'comments':_0x3d6cde?_0x3d6cde['map'](S):[],'context':_0x3b8d66,'attributes':_0x12eab1,'resolvedAt':_0x5dce68,'resolvedBy':_0x508cf6,'isFromAdapter':!0x0});}),this['listenTo'](_0x1f1e09,'commentThreadUpdated',(_0x34e4c0,{commentThreadId:_0x3ea2ff,documentId:_0x2d2dbc,context:_0x3e5701,unlinkedAt:_0x5d0a97,attributes:_0x37a009})=>{_0x4f2d28['getCommentThread'](_0x3ea2ff)&&_0x4f2d28['updateCommentThread']({'threadId':_0x3ea2ff,'channelId':_0x2d2dbc,'context':_0x3e5701,'unlinkedAt':_0x5d0a97,'attributes':_0x37a009,'isFromAdapter':!0x0});}),this['listenTo'](_0x1f1e09,'commentThreadResolved',(_0x175c56,{commentThreadId:_0x1cc4f2,resolvedBy:_0x515312,resolvedAt:_0x47ac2b})=>{const _0x52378f=_0x4f2d28['getCommentThread'](_0x1cc4f2);_0x52378f&&_0x52378f['resolve']({'resolvedBy':_0x515312,'resolvedAt':_0x47ac2b,'isFromAdapter':!0x0});}),this['listenTo'](_0x1f1e09,'commentThreadReopened',(_0x1cab2b,{commentThreadId:_0x21323b})=>{const _0x5a6d59=_0x4f2d28['getCommentThread'](_0x21323b);_0x5a6d59&&_0x5a6d59['reopen']({'isFromAdapter':!0x0});}),this['listenTo'](_0x1f1e09,'commentThreadRemoved',(_0x465c5d,{commentThreadId:_0x3e28a7})=>{const _0x4bfe61=_0x4f2d28['getCommentThread'](_0x3e28a7);_0x4bfe61&&_0x4bfe61['remove']({'isFromAdapter':!0x0});}),this['listenTo'](_0x1f1e09,'commentAdded',(_0x18b88a,_0x23abf4)=>{const _0x291d4d=_0x23abf4['commentThreadId'],_0x3bd3b5=_0x4f2d28['getCommentThread'](_0x291d4d);_0x3bd3b5&&_0x3bd3b5['addComment']({...S(_0x23abf4),'isFromAdapter':!0x0});}),this['listenTo'](_0x1f1e09,'commentUpdated',(_0x3ce047,{commentThreadId:_0xb5d5f3,commentId:_0x1461f0,content:_0x149a88,attributes:_0x345688})=>{const _0x162256=_0x4f2d28['getCommentThread'](_0xb5d5f3);if(_0x162256){const _0x123ba8=_0x162256['getComment'](_0x1461f0);_0x123ba8&&_0x123ba8['update']({'content':_0x149a88,'attributes':_0x345688,'isFromAdapter':!0x0});}}),this['listenTo'](_0x1f1e09,'commentRemoved',(_0x2e9a04,{commentThreadId:_0x54afa8,commentId:_0x4e8abf})=>{const _0x42e019=_0x4f2d28['getCommentThread'](_0x54afa8);if(_0x42e019){const _0x360dbe=_0x42e019['getComment'](_0x4e8abf);_0x360dbe&&_0x360dbe['remove']({'isFromAdapter':!0x0});}}),await this['_connectService'](_0x18603c);}['destroy'](){if(this['context']instanceof _0x35bf49){const _0x484504=this['context']['config']['get']('collaboration.channelId');this['_terminateService'](_0x484504);}}['_terminateService'](_0x507bf3){if(!this['_services']['has'](_0x507bf3))throw new _0x18dc38('cloudservicescommentsadapter-disconnect-not-exist',null,{'channelId':_0x507bf3});this['_getService'](_0x507bf3)['disconnect'](),this['_services']['delete'](_0x507bf3);}async['reconnect'](){for(const _0x46d20e of this['_services']['keys']())await this['_connectService'](_0x46d20e);if(this['context']instanceof _0x35bf49){const _0x422d1b=this['context']['config']['get']('collaboration.channelId'),_0x86be32=this['context']['plugins']['get'](i);_0x86be32['unregister'](_0x422d1b);const _0x257c6f=await this['_services']['get'](_0x422d1b)['getConnectedSessions']();_0x86be32['register'](_0x422d1b,_0x257c6f);}}async['_connectService'](_0x25a849){const {connection:_0x55a1c4}=this['context']['plugins']['get'](c),_0x5a3b3d=this['context']['plugins']['get']('CommentsRepository'),_0x1d3c62=this['_services']['get'](_0x25a849),_0xe6fbba=await _0x1d3c62['connect'](_0x55a1c4);await this['_fetchMissingUsersForThreads'](_0xe6fbba);const _0x90d79d=new Set(Array['from'](_0x5a3b3d['getCommentThreads']({'channelId':_0x25a849}),_0x241153=>_0x241153['id']));for(const _0x4361bb of _0xe6fbba)_0x4361bb['deletedAt']||_0x90d79d['delete'](_0x4361bb['commentThreadId']);for(const _0xb03200 of _0x90d79d)_0x5a3b3d['getCommentThread'](_0xb03200)['remove']({'isFromAdapter':!0x0});for(const _0xb844cc of _0xe6fbba){let _0x18283e=_0x5a3b3d['getCommentThread'](_0xb844cc['commentThreadId']);const {commentThreadId:_0x3bb0fd,context:_0x1b004d,attributes:_0x43f964,resolvedBy:_0x1eb91d,resolvedAt:_0x5dae2b,unlinkedAt:_0x3197d0,deletedAt:_0x5e1a03}=_0xb844cc;if(_0x5e1a03)continue;_0x18283e||(_0x18283e=_0x5a3b3d['addCommentThread']({'channelId':_0x25a849,'threadId':_0x3bb0fd,'context':_0x1b004d,'attributes':_0x43f964||{},'resolvedBy':_0x1eb91d,'resolvedAt':_0x5dae2b,'unlinkedAt':_0x3197d0,'isFromAdapter':!0x0}));const _0xc34807=new Set(Array['from'](_0x18283e['comments'],_0x4ec709=>_0x4ec709['id']));for(const _0x36cf21 of _0xb844cc['comments'])_0xc34807['delete'](_0x36cf21['commentId']);for(const _0xf838b6 of _0xc34807)_0x18283e['getComment'](_0xf838b6)['remove']({'isFromAdapter':!0x0});for(const _0x495a57 of _0xb844cc['comments']){const _0x1206ed=_0x18283e['getComment'](_0x495a57['commentId']);_0x1206ed?_0x1206ed['content']!==_0x495a57['content']&&_0x1206ed['update']({'content':_0x495a57['content'],'isFromAdapter':!0x0}):_0x18283e['addComment'](Object['assign'](S(_0x495a57),{'isFromAdapter':!0x0}));}}}['_getService'](_0x50374d){if(!this['_services']['has'](_0x50374d))throw new _0x18dc38('cloudservicescommentsadapter-service-not-exist',null,{'channelId':_0x50374d});return this['_services']['get'](_0x50374d);}async['_fetchMissingUsersForThreads'](_0x2f6515){const _0x565910=this['context']['plugins']['get'](_0x4e2011),{connection:_0x3735ad}=this['context']['plugins']['get'](c),_0x452a3d=new Set();for(const {resolvedBy:_0x476643,comments:_0x73150d}of _0x2f6515){_0x476643&&!_0x565910['getUser'](_0x476643)&&_0x452a3d['add'](_0x476643);for(const {userId:_0x49caca}of _0x73150d)_0x565910['getUser'](_0x49caca)||_0x452a3d['add'](_0x49caca);}if(0x0===_0x452a3d['size'])return;const _0x50efd7=await dt['getMany'](_0x3735ad,Array['from'](_0x452a3d));for(const _0xa46f86 of _0x50efd7)_0x565910['getUser'](_0xa46f86['id'])||_0x565910['addUser'](_0xa46f86);}}async function B(_0x46dcb8){if('404'!==_0x46dcb8['code'])throw _0x46dcb8;}function ut(_0x1036a3){if((_0x2d6c9c=_0x1036a3)['message']['startsWith']('cloud-services-internal-error:\x20Comments\x20Service\x20is\x20not\x20connected.')||_0x2d6c9c['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x2d6c9c['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.'))return new Promise(()=>{});var _0x2d6c9c;throw _0x1036a3;}function S(_0xcd898e){return{'threadId':_0xcd898e['commentThreadId'],'commentId':_0xcd898e['commentId'],'content':_0xcd898e['content'],'createdAt':_0xcd898e['createdAt'],'authorId':_0xcd898e['userId'],'attributes':_0xcd898e['attributes']||{}};}class f extends _0xc45049{static ['TrackChangesService']=/* #__PURE__ -- @preserve */
27
+ ((()=>et)());['_bufferedRequests'];['_trackChangesService'];static get['requires'](){return[a,'TrackChangesEditing',c];}constructor(_0x1693ad){super(_0x1693ad);const _0x3df98e=this['editor']['config']['get']('collaboration.channelId');this['_bufferedRequests']=new Map(),this['_trackChangesService']=new f['TrackChangesService'](_0x3df98e);}['init'](){const _0x4da196=this['editor']['plugins']['get'](c),_0x1fc2e8=this['editor']['plugins']['get']('TrackChangesEditing');return _0x1fc2e8['adapter']={'getSuggestion':async _0x65e92f=>{await this['_waitForServiceReady']();const _0x439e92=await this['_trackChangesService']['get'](_0x65e92f)['catch'](R);return await this['_fetchMissingUsersForThreads']([_0x439e92]),_0x439e92;},'addSuggestion':async({id:_0x385858,type:_0x144a8c,data:_0x26cf67,originalSuggestionId:_0x4255f4,attributes:_0x3334bd})=>{await this['_waitForServiceReady']();const _0x3d2134={'id':_0x385858,'type':_0x144a8c,'data':_0x26cf67,'originalSuggestionId':_0x4255f4,'attributes':_0x3334bd},_0x15770d=await this['_trackChangesService']['add'](_0x385858,_0x144a8c,_0x26cf67,_0x4255f4,_0x3334bd)['catch'](_0x40b29e=>{if(ft(_0x40b29e))return new Promise(_0x209c02=>{this['_bufferedRequests']['set'](_0x385858,{'resolve':_0x209c02,'suggestionData':_0x3d2134});});throw _0x40b29e;});return this['_bufferedRequests']['delete'](_0x385858),_0x15770d;},'updateSuggestion':async(_0x3f6ba0,_0x4869cf)=>{if(await this['_waitForServiceReady'](),'open'!==_0x4869cf['state'])return this['_trackChangesService']['update'](_0x3f6ba0,_0x4869cf)['catch'](R);}},this['listenTo'](this['_trackChangesService'],'suggestionUpdated',(_0x5ade9a,_0x4f6ef4)=>{_0x1fc2e8['hasSuggestion'](_0x4f6ef4['id'])&&(_0x1fc2e8['getSuggestion'](_0x4f6ef4['id'])['attributes']=_0x4f6ef4['attributes']);}),this['_trackChangesService']['connect'](_0x4da196['connection'])['then'](_0x1b45f4=>(_0x4da196['addToReconnectionStack'](this),this['_fetchMissingUsersForThreads'](_0x1b45f4)['then'](()=>{for(const _0x67cfe5 of _0x1b45f4){_0x1fc2e8['addSuggestionData'](_0x67cfe5)['_saved']=!0x0;}})));}async['reconnect'](){const _0x1badb0=this['editor']['plugins']['get']('TrackChangesEditing'),{connection:_0x4a9852}=this['editor']['plugins']['get'](c),_0x20be69=await this['_trackChangesService']['connect'](_0x4a9852);await this['_fetchMissingUsersForThreads'](_0x20be69);for(const {suggestionData:_0x18e597,resolve:_0x33e61c}of this['_bufferedRequests']['values']()){let _0x2668be=_0x20be69['find'](_0x4fc79a=>_0x4fc79a['id']===_0x18e597['id']);_0x2668be||(_0x2668be=await this['_trackChangesService']['add'](_0x18e597['id'],_0x18e597['type'],_0x18e597['data'],_0x18e597['originalSuggestionId'])),_0x33e61c(_0x2668be);}for(const _0x2d4476 of _0x20be69)_0x1badb0['hasSuggestion'](_0x2d4476['id'])||_0x1badb0['addSuggestionData'](_0x2d4476);}async['_waitForServiceReady'](){this['_trackChangesService']['isConnected']||await new Promise(_0x4fa6ff=>{this['listenTo'](this['_trackChangesService'],'connected',_0x465707=>{_0x465707['off'](),_0x4fa6ff();});});}async['_fetchMissingUsersForThreads'](_0x3c9f6d){const _0x49dce5=this['editor']['plugins']['get'](_0x4e2011),{connection:_0x51f598}=this['editor']['plugins']['get'](c),_0x1c60af=new Set();for(const {authorId:_0x181f93}of _0x3c9f6d)_0x49dce5['getUser'](_0x181f93)||_0x1c60af['add'](_0x181f93);if(0x0===_0x1c60af['size'])return;const _0x57a534=await dt['getMany'](_0x51f598,Array['from'](_0x1c60af));for(const _0x1cd359 of _0x57a534)_0x49dce5['getUser'](_0x1cd359['id'])||_0x49dce5['addUser'](_0x1cd359);}}function R(_0x2973bf){if(ft(_0x2973bf))return new Promise(()=>{});throw _0x2973bf;}function ft(_0x572811){return _0x572811['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x572811['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}class m extends _0xc45049{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 _0x4ab455=this['editor']['plugins']['get'](c),_0x24ea85=this['editor']['plugins']['get']('CommentsEditing'),_0xf41d9b=this['editor']['plugins']['get'](a);return this['editor']['data']['once']('ready',()=>{this['listenTo'](_0x4ab455,'change:state',(_0x36dca6,_0x18256a,_0xf73f15)=>{_0x24ea85['isThreadsLoadingPaused']='connected'!==_0xf73f15;});}),this['listenTo'](_0x4ab455,'change:state',(_0x23576f,_0x374224,_0x191351)=>{this['editor']['plugins']['get']('CommentsRepository')['switchReadOnly']('connected'!==_0x191351);}),_0xf41d9b['_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 _0xc45049{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 _0xc45049{static ['RevisionHistoryService']=/* #__PURE__ -- @preserve */
28
+ ((()=>it)());['_lastRequestId'];['_revisionTracker'];['_revisionHistoryService'];['_oldOffset'];static get['requires'](){return[c,l,'RevisionTracker',i,_0x4e2011];}constructor(_0x57f971){super(_0x57f971);const _0x38744d=this['editor']['config']['get']('collaboration.channelId');this['_lastRequestId']=null,this['_revisionTracker']=this['editor']['plugins']['get']('RevisionTracker'),this['_revisionHistoryService']=new u['RevisionHistoryService'](_0x38744d);}async['init'](){const _0x4607d6=this['editor']['plugins']['get'](l),_0x17727c=_0x4607d6['serverHistory'],_0x12dd2c=this['editor']['plugins']['get'](c);this['_revisionTracker']['setSource']({'history':_0x17727c,'getLatestVersion':()=>this['_getLatestVersion'](),'getCurrentRevisionId':()=>_0x4607d6['sessionId']});const _0x3b9211=this['editor']['config']['get']('cloudServices.bundleVersion')||nt,_0x22e01d=await tt['isBundleUploaded'](_0x12dd2c['connection'],_0x3b9211);this['_revisionTracker']['adapter']={'getRevision':async({revisionId:_0x2ce5b9})=>(await this['_waitForServiceReady'](),await this['_revisionHistoryService']['getRevision'](_0x2ce5b9)),'updateRevisions':async _0x33a36a=>{await this['_waitForServiceReady']();const _0x1fe72b=this['_revisionTracker']['currentRevision'];if(_0x22e01d&&0x1===_0x33a36a['length']&&_0x33a36a[0x0]['id']===_0x1fe72b['id'])return _0x33a36a;for(const _0x8584c4 of _0x33a36a)_0x8584c4['id']===_0x1fe72b['id']&&(_0x8584c4['isEmptyCurrent']=_0x8584c4['fromVersion']===_0x8584c4['toVersion']);return this['_revisionHistoryService']['updateRevisions'](_0x33a36a,this['_lastRequestId'])['then'](_0x5cc2b1=>(this['_lastRequestId']=_0x5cc2b1,_0x33a36a))['catch'](_0x525db3=>{if(st(_0x525db3)||'400'===_0x525db3['code']&&void 0x0!==_0x525db3['data']['wrongRequestId']){for(const _0x5cb028 of _0x33a36a){!this['_revisionTracker']['repository']['getRevision'](_0x5cb028['id'])||this['_revisionTracker']['_bufferUpdate'](_0x5cb028['id'],_0x5cb028,!0x1);}if(st(_0x525db3))throw _0x525db3;return _0x33a36a;}throw _0x525db3;});}},this['listenTo'](this['_revisionHistoryService'],'revisionsUpdated',(_0x2a970d,{revisionsData:_0xcc9801,requestId:_0x562f71})=>{Math['max'](..._0xcc9801['map'](_0x3e7e86=>_0x3e7e86['toVersion']))>this['_getLatestVersionFromServerOperations']()-0x1?this['_getLatestVersion']()['then'](()=>{this['_handleRevisionsUpdate'](_0xcc9801,_0x562f71);}):this['_handleRevisionsUpdate'](_0xcc9801,_0x562f71);});const {revisions:_0x255bac,requestId:_0x39e790}=await this['_revisionHistoryService']['connect'](_0x12dd2c['connection']);_0x12dd2c['addToReconnectionStack'](this),this['_lastRequestId']=_0x39e790,await this['_fetchMissingUsers'](_0x255bac);for(const _0x4dd985 of _0x255bac)this['_revisionTracker']['addRevisionData'](_0x4dd985);this['listenTo'](_0x4607d6,'change:_isConnected',(_0x361159,_0x5f2c02,_0x73eb2f)=>{_0x73eb2f&&(this['_oldOffset']=_0x4607d6['_offset'],_0x361159['off']());}),this['_revisionTracker']['bind']('isEnabled')['to'](_0x12dd2c,'state',_0x84d216=>_0x84d216===_0x36fb79['CONNECTED']);}async['reconnect'](){const _0x599034=this['editor']['plugins']['get'](c),_0x558215=this['editor']['plugins']['get'](l),_0x5445b0=async()=>{const _0xc72af4=this['_revisionTracker']['currentRevision'],_0x1a6620=_0xc72af4['id'],_0x2ac24f=_0x1a6620!==_0x558215['sessionId'];if(_0x2ac24f){const _0x23e810=_0x558215['_offset']-this['_oldOffset'],_0x552927=this['_getLatestVersionFromServerOperations']();this['_revisionTracker']['_revisionDataBuilder']['reInit']();if(_0xc72af4['toVersion']+_0x23e810!==_0x552927){const _0x3632ac=_0xc72af4['fromVersion']+_0x23e810,_0x33c2fa=this['editor']['plugins']['get'](_0x4e2011),_0x2a4675=this['_revisionTracker']['buildRevisionData']({'revision':_0xc72af4,'from':_0x3632ac,'to':_0x552927});_0x2a4675['id']=_0xc72af4['id'];const _0x54ef26=_0x2a4675['authorsIds']['map'](_0xdd07f2=>_0x33c2fa['getUser'](_0xdd07f2));_0xc72af4['_update']({..._0x2a4675,'authors':_0x54ef26},!0x0),this['_revisionTracker']['_bufferUpdate'](_0xc72af4['id'],_0x2a4675,!0x0);}this['_revisionTracker']['_startingVersion']=_0x552927,(_0xc72af4['toVersion']===_0xc72af4['fromVersion']&&!this['_revisionTracker']['_bufferedUpdates']['has'](_0x1a6620)&&this['_revisionTracker']['repository']['_revisions']['remove'](_0x1a6620),this['_revisionTracker']['_createCurrentRevision'](_0x552927));}const {revisions:_0x108bfa,requestId:_0x5cb4bc}=await this['_revisionHistoryService']['reconnect'](_0x599034['connection'],this['_lastRequestId']);_0x2ac24f&&_0x108bfa['length']>0x0?_0x558215['_handleReconnectionError']():(await this['_fetchMissingUsers'](_0x108bfa),this['_handleRevisionsUpdate'](_0x108bfa,_0x5cb4bc),this['_revisionTracker']['sendBufferedUpdates']());};return _0x558215['_isConnected']?_0x5445b0():new Promise((_0x2cba9b,_0x3b48a8)=>{_0x558215['once']('change:_isConnected',()=>{_0x5445b0()['then'](_0x2cba9b)['catch'](_0x3b48a8);});});}['destroy'](){super['destroy']();}async['_waitForServiceReady'](){this['_revisionHistoryService']['isConnected']||await new Promise(_0x3fbf4d=>{this['listenTo'](this['_revisionHistoryService'],'connected',_0x1c01d6=>{_0x1c01d6['off'](),_0x3fbf4d();});});}['_getLatestVersionFromServerOperations'](){const _0x1c89fd=this['editor']['plugins']['get'](l)['serverHistory']['getOperations']()['reverse']();for(const _0x347da8 of _0x1c89fd)if('marker'!==_0x347da8['type']||_0x347da8['affectsData'])return _0x347da8['baseVersion']+0x1;}['_getLatestVersion'](){const _0x6caf30=this['editor']['plugins']['get'](l);return new Promise(_0x41d835=>{_0x6caf30['_isPendingUpdate']?_0x6caf30['once']('change:_isPendingUpdate',()=>{_0x41d835(this['_getLatestVersionFromServerOperations']());}):_0x41d835(this['_getLatestVersionFromServerOperations']());});}['_handleRevisionsUpdate'](_0x4ae216,_0x58eebc){const _0x1c2ab4=this['_revisionTracker']['repository'];this['_lastRequestId']=_0x58eebc;for(const _0x108c0a of _0x4ae216){const _0xaa015a=_0x1c2ab4['getRevision'](_0x108c0a['id']);if(_0xaa015a){if((_0x108c0a['fromVersion']||_0x108c0a['toVersion'])&&(_0x108c0a['diffData']=null),_0xaa015a===this['_revisionTracker']['currentRevision']){const _0x55e48e=Math['max'](_0xaa015a['toVersion'],_0x108c0a['toVersion']),_0x1b1dff=Math['max'](_0xaa015a['fromVersion'],_0x108c0a['fromVersion']);let _0x57c519;_0xaa015a['toVersion']===_0x108c0a['toVersion']&&_0xaa015a['fromVersion']===_0x108c0a['fromVersion']?(_0x57c519=!0x0,this['_preventResendingRevisionData'](_0x108c0a)):_0x108c0a['toVersion']===_0x55e48e&&_0x108c0a['fromVersion']===_0x1b1dff?_0x57c519=!0x1:(_0xaa015a['toVersion']===_0x55e48e&&_0xaa015a['fromVersion']===_0x1b1dff||this['_fixRevision']({'revision':_0xaa015a,'from':_0x1b1dff,'to':_0x55e48e}),_0x57c519=!0x0),_0x57c519&&(delete _0x108c0a['fromVersion'],delete _0x108c0a['toVersion'],delete _0x108c0a['diffData'],delete _0x108c0a['createdAt'],delete _0x108c0a['authorsIds']);}this['_revisionTracker']['setRevisionData'](_0x108c0a),this['_preventResendingRevisionData'](_0x108c0a);}else this['_revisionTracker']['addRevisionData'](_0x108c0a);}const _0x556d8e=_0x1c2ab4['getRevisions']();_0x556d8e['reverse']();for(let _0x234b97=0x0;_0x234b97<_0x556d8e['length']-0x1;_0x234b97++){const _0x1b713b=_0x556d8e[_0x234b97],_0x8a4cdf=_0x556d8e[_0x234b97+0x1];if(_0x1b713b['fromVersion']<_0x8a4cdf['toVersion']){const _0x3c450e=_0x8a4cdf['toVersion'],_0x1b50b5=Math['max'](_0x3c450e,_0x1b713b['toVersion']);this['_fixRevision']({'revision':_0x1b713b,'from':_0x3c450e,'to':_0x1b50b5});}}}['_fixRevision']({revision:_0x457a77,from:_0x40714d,to:_0x55baa7}={}){const _0x54525f=this['editor']['plugins']['get'](_0x4e2011),_0x1ff5b9=this['_revisionTracker']['buildRevisionData']({'revision':_0x457a77,'from':_0x40714d,'to':_0x55baa7});_0x1ff5b9['authors']=_0x1ff5b9['authorsIds']['map'](_0x4a6623=>_0x54525f['getUser'](_0x4a6623)),_0x457a77['_update'](_0x1ff5b9);}['_preventResendingRevisionData'](_0x417152){const _0x92b03e={};_0x92b03e['id']=_0x417152['id'];for(const _0x320932 of Object['keys'](_0x417152))'id'!==_0x320932&&(_0x92b03e[_0x320932]=void 0x0);this['_revisionTracker']['_bufferUpdate'](_0x92b03e['id'],_0x92b03e,!0x0);}async['_fetchMissingUsers'](_0x7d7f0){const _0x57dbf8=this['editor']['plugins']['get'](_0x4e2011),{connection:_0x2958dd}=this['editor']['plugins']['get'](c),_0x131e01=new Set();for(const _0x11cc15 of _0x7d7f0){for(const _0x35ac84 of _0x11cc15['authorsIds'])_0x5a2a28(_0x35ac84);_0x11cc15['creatorId']&&_0x5a2a28(_0x11cc15['creatorId']);}if(0x0===_0x131e01['size'])return;const _0x5cde19=await dt['getMany'](_0x2958dd,Array['from'](_0x131e01));for(const _0x24b70f of _0x5cde19)_0x57dbf8['getUser'](_0x24b70f['id'])||_0x57dbf8['addUser'](_0x24b70f);function _0x5a2a28(_0x49749c){_0x57dbf8['getUser'](_0x49749c)||_0x131e01['add'](_0x49749c);}}}function st(_0x1bd15f){return _0x1bd15f['message']['startsWith']('cloud-services-internal-error:\x20Revision\x20History\x20Service\x20is\x20not\x20connected.')||_0x1bd15f['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x1bd15f['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}class g extends _0xc45049{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 _0x3d8c1a{constructor(_0x5e30c5){super(_0x5e30c5);const _0x3e3269=this['bindTemplate'];this['set']('usersCount',0x0),this['set']('isHidden',!0x0),this['setTemplate']({'tag':'div','attributes':{'class':['ck','ck-presence-list__counter',_0x3e3269['if']('isHidden','ck-presence-list__counter--hidden')]},'children':[{'text':_0x3e3269['to']('usersCount',_0x43115d=>q(_0x5e30c5,'CONNECTED_USERS',_0x43115d))}]});}}class es extends _0x3d8c1a{['items'];['keystrokes'];constructor(_0x4b06cc){super(_0x4b06cc);const _0x2c4cf6=this['bindTemplate'];this['items']=this['createCollection'](),this['keystrokes']=new _0x26df46(),this['set']({'hasPopup':!0x1,'isExpanded':!0x1}),this['setTemplate']({'tag':'div','attributes':{'aria-haspopup':_0x2c4cf6['if']('hasPopup'),'aria-expanded':_0x2c4cf6['to']('isExpanded',_0x553252=>this['hasPopup']&&String(_0x553252)),'aria-label':_0x2c4cf6['to']('hasPopup',_0x6b38a5=>q(_0x4b06cc,_0x6b38a5?'Collapsed\x20connected\x20users\x20list\x20(press\x20ENTER\x20to\x20open\x20it)':'Connected\x20users\x20list')),'role':'list','tabindex':_0x2c4cf6['to']('hasPopup',_0x52ea7a=>!!_0x52ea7a&&0x0),'class':['ck','ck-presence-list__list']},'children':this['items'],'on':{'click':_0x2c4cf6['to'](()=>this['fire']('execute'))}}),this['on']('change:hasPopup',(_0x5c16db,_0x55d020,_0x36e3d7)=>{this['element']&&(_0x36e3d7?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 _0x3d8c1a{['counterView'];['inlineListView'];constructor(_0x5d28eb){super(_0x5d28eb);const _0x4940b6=this['bindTemplate'];this['set']('isCollapsed',!0x0),this['counterView']=new ts(this['locale']),this['inlineListView']=new es(_0x5d28eb),this['inlineListView']['bind']('hasPopup')['to'](this,'isCollapsed'),this['listenTo'](this['inlineListView']['items'],'change',()=>{for(const _0x58e3e0 of this['inlineListView']['items'])_0x58e3e0['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',_0x4940b6['if']('isCollapsed','ck-presence-list--collapsed')]},'children':[this['counterView'],this['inlineListView']]});}}class j extends _0x3d8c1a{['listWrapperView'];constructor(_0x4a72b3,_0x1d4fa5){super(_0x4a72b3),this['listWrapperView']=new mt(_0x4a72b3,_0x1d4fa5),this['setTemplate']({'tag':'div','attributes':{'tabindex':-0x1,'role':'application','class':['ck','ck-presence-list__dropdown-list'],'aria-label':q(_0x4a72b3,'Connected\x20users\x20list\x20dropdown\x20menu')},'children':[this['listWrapperView']]});}}class mt extends _0xd3dc2c{constructor(_0x2010eb,_0x163492){super(_0x2010eb);const _0x10de41=this['bindTemplate'];this['set']('_isScrollable',!0x1),this['setTemplate']({'tag':_0x163492?'div':'ul','attributes':{'class':['ck','ck-reset','ck-list','ck-presence-list__dropdown-list-wrapper',_0x10de41['if']('_isScrollable','ck-presence-list__dropdown-list-wrapper_scrollable')],'role':_0x10de41['to']('role'),'aria-label':_0x10de41['to']('ariaLabel'),'aria-labelledby':_0x10de41['to']('ariaLabelledBy')},'children':this['items']}),this['listenTo'](_0x3ee391['window'],'resize',()=>this['checkIfScrollable']()),this['items']['on']('change',()=>this['checkIfScrollable']());}['render'](){super['render'](),this['checkIfScrollable']();}['checkIfScrollable'](){const _0x175daa=this['element'];_0x175daa&&(this['_isScrollable']=Math['max'](_0x175daa['scrollHeight'],_0x175daa['clientHeight'])>0.8*window['innerHeight']);}}class k extends rt{['userView'];constructor(_0xcbd4ec,_0x5fbbba,_0x1bb3d4){super(_0xcbd4ec);const _0x75c18b=this['bindTemplate'];this['userView']=new ct(_0xcbd4ec,_0x5fbbba);const _0x3d70c0={'tag':'li','attributes':{'class':['ck','ck-presence-list__dropdown-list-item'],'tabindex':-0x1,'role':'presentation','aria-label':_0x5fbbba['name']},'children':[this['userView'],{'tag':'span','attributes':{'class':['ck','ck-user__full-name']},'children':[{'text':_0x5fbbba['name']}]},{'tag':'span','attributes':{'class':['ck','ck-presence-list__marker',_0x5fbbba['color']['getBackgroundColorClass']()],'aria-hidden':'true'}}]};_0x1bb3d4&&(_0x3d70c0['tag']='button',_0x3d70c0['on']={'click':_0x75c18b['to'](()=>this['fire']('execute'))}),this['setTemplate'](_0x3d70c0);}['focus'](){this['element']['focus']();}}class y extends _0x3d8c1a{['userView'];['markerView'];constructor(_0x4ea6f0,_0x43351e,_0x273ebb){super(_0x4ea6f0);const _0x16e903=this['bindTemplate'];this['set']('isFocusable',!0x1),this['set']('hasTooltip',!0x0),this['set']('tooltipPosition',''),this['userView']=new ct(_0x4ea6f0,_0x43351e),this['markerView']=new at(_0x4ea6f0,_0x43351e);const _0x155617=new ot(_0x4ea6f0);_0x155617['template']['tag']='span',_0x155617['text']=_0x43351e['name'];const _0x470005={'tag':'div','attributes':{'class':['ck','ck-presence-list__list-item'],'role':'listitem','tabindex':_0x16e903['to']('isFocusable',_0x43e6a9=>!!_0x43e6a9&&0x0),'aria-labelledby':_0x155617['id'],'data-cke-tooltip-text':this['userView']['name'],'data-cke-tooltip-position':_0x16e903['to']('tooltipPosition'),'data-cke-tooltip-disabled':_0x16e903['to']('hasTooltip',_0x1394a2=>!_0x1394a2),'data-cke-tooltip-class':'ck-presence-list__list-item__tooltip'},'children':[this['userView'],this['markerView'],_0x155617]};_0x273ebb&&(_0x470005['tag']='button',_0x470005['on']={'click':_0x16e903['to'](()=>this['fire']('execute'))}),this['setTemplate'](_0x470005);}}class at extends _0x3d8c1a{constructor(_0x38f6e6,_0x1e6440){super(_0x38f6e6),this['setTemplate']({'tag':'span','attributes':{'class':['ck','ck-presence-list__marker',_0x1e6440['color']['getBackgroundColorClass']()],'aria-hidden':'true'}});}}const A={'collapseAt':0x6,'displayMe':!0x0};class r extends _0x33a461{['currentDisplayedUsers'];['balloonPanelView'];['view'];['presenceDropdownView'];['_bodyCollection']=null;constructor(_0xbfdd8b){super(_0xbfdd8b),this['context']['config']['define']('presenceList',A);const _0x73a872=_0xbfdd8b['config']['get']('presenceList.collapseAt');if('number'!=typeof _0x73a872)throw new _0x18dc38('presencelist-collapseat-invalid-format',this);if(_0x73a872<0x1)throw new _0x18dc38('presencelist-collapseat-invalid-format',this);this['_allConnectedUsers']=this['context']['plugins']['get'](i)['allConnectedUsers'],this['set']('usersCount',0x0),this['currentDisplayedUsers']=new _0x330773(),this['balloonPanelView']=new _0x4f7ecf(),this['balloonPanelView']['class']='ck\x20ck-presence-list__balloon',this['view']=this['_createView'](),this['presenceDropdownView']=void 0x0;}static get['requires'](){return[i];}['init'](){for(const _0x1a852b of this['_allConnectedUsers'])this['_handleUserAdd'](_0x1a852b);this['listenTo'](this['_allConnectedUsers'],'add',(_0x37680d,_0x2021b3)=>{this['_handleUserAdd'](_0x2021b3);}),this['listenTo'](this['_allConnectedUsers'],'remove',(_0x5ec23f,_0x3548b9)=>{this['_handleUserRemove'](_0x3548b9);});}['_createView'](){const _0x16b072=this['context'],_0x1b4781=new L(this['context']['locale']),_0x6cdd1b=this['balloonPanelView'];if(!_0x19da4d(_0x16b072['config']['get']('presenceList.container')))throw new _0x18dc38('presencelist-missing-container',this);return _0x1b4781['counterView']['bind']('usersCount')['to'](this),_0x1b4781['bind']('isCollapsed')['to'](this,'usersCount',_0x1ebdf4=>{const {collapseAt:_0x99f421,displayMe:_0x4a46ca}=_0x16b072['config']['get']('presenceList'),_0x30af4c=_0x1ebdf4>=_0x99f421;return _0x1b4781['counterView']['isHidden']=!(0x1==_0x1ebdf4&&_0x4a46ca||_0x30af4c),_0x30af4c||this['hideDropdown'](),_0x30af4c;}),_0x1b4781['inlineListView']['items']['bindTo'](this['currentDisplayedUsers'])['using'](_0x4be3a5=>{const _0x506b6b=_0x16b072['config']['get']('presenceList'),_0x386af7=new y(_0x16b072['locale'],_0x4be3a5,!!_0x506b6b['onClick']);return _0x386af7['bind']('hasTooltip')['to'](_0x1b4781,'isCollapsed',_0x317995=>!_0x317995),_0x386af7['bind']('isFocusable')['to'](_0x1b4781,'isCollapsed',_0xd6b696=>!_0xd6b696),_0x506b6b['onClick']&&this['listenTo'](_0x386af7,'execute',()=>{this['view']['isCollapsed']||_0x506b6b['onClick'](_0x4be3a5,_0x386af7['element']);}),_0x386af7;}),this['listenTo'](_0x1b4781['inlineListView'],'execute',()=>{this['presenceDropdownView']?this['hideDropdown']():this['view']['isCollapsed']&&this['showDropdown']();}),_0x1b4781['inlineListView']['keystrokes']['set']('Enter',(_0x326e11,_0x487f6c)=>{this['view']['isCollapsed']&&(this['showDropdown'](),_0x487f6c());}),_0x1b4781['render'](),_0x6cdd1b['render'](),_0x39189a({'emitter':_0x1b4781,'activator':()=>_0x6cdd1b['isVisible'],'contextElements':[_0x6cdd1b['element'],_0x1b4781['inlineListView']['element']],'callback':()=>this['hideDropdown']()}),_0x16b072['config']['get']('presenceList.container')['appendChild'](_0x1b4781['element']),this['_bodyCollection']=new _0x361caf(this['context']['locale']),this['_bodyCollection']['attachToDom'](),this['_bodyCollection']['add'](this['balloonPanelView']),_0x1b4781;}['_handleUserAdd'](_0x504a90){if(!this['context']['config']['get']('presenceList.displayMe')&&_0x504a90['isMe'])return;const _0x156f05=this['context']['config']['get']('presenceList.collapseAt')-0x1;this['usersCount']++,this['currentDisplayedUsers']['length']==_0x156f05&&this['currentDisplayedUsers']['length']>0x1&&this['currentDisplayedUsers']['remove'](0x1);const _0x189ee7=_0x504a90['isMe']?0x0:this['currentDisplayedUsers']['length'];this['currentDisplayedUsers']['add'](_0x504a90,_0x189ee7);}['_handleUserRemove'](_0x3cbe67){if(this['usersCount']--,this['currentDisplayedUsers']['get'](_0x3cbe67['id'])&&(this['currentDisplayedUsers']['remove'](_0x3cbe67['id']),this['currentDisplayedUsers']['length']<this['usersCount'])){for(const _0x30c522 of Array['from'](this['_allConnectedUsers'])['reverse']())if(!this['currentDisplayedUsers']['get'](_0x30c522['id']))return void this['currentDisplayedUsers']['add'](_0x30c522,Math['min'](this['currentDisplayedUsers']['length'],0x1));}}['showDropdown'](){if(this['presenceDropdownView'])return;const _0x1212fb=this['context']['config']['get']('presenceList');this['presenceDropdownView']=new j(this['context']['locale'],!!_0x1212fb['onClick']),this['view']['inlineListView']['isExpanded']=!0x0;const {listWrapperView:_0x19db89}=this['presenceDropdownView'];_0x19db89['items']['bindTo'](this['_allConnectedUsers'])['using'](_0x543759=>{if(!_0x1212fb['displayMe']&&_0x543759['isMe'])return null;const _0x103d69=new k(this['context']['locale'],_0x543759,!!_0x1212fb['onClick']);return _0x1212fb['onClick']&&this['listenTo'](_0x103d69,'execute',()=>{_0x1212fb['onClick'](_0x543759,_0x103d69['element']);}),_0x103d69;}),this['balloonPanelView']['content']['add'](this['presenceDropdownView']),this['balloonPanelView']['pin']({'target':this['view']['inlineListView']['element']}),_0x19db89['focus'](),_0x19db89['checkIfScrollable']();const _0xf4f362=(_0x543593,_0x153275)=>{this['hideDropdown'](),this['view']['inlineListView']['focus'](),_0x153275();};_0x19db89['keystrokes']['set']('Esc',_0xf4f362),_0x19db89['keystrokes']['set']('Shift+Tab',_0xf4f362),_0x19db89['keystrokes']['set']('Tab',(_0x41ebd1,_0x3cc5e0)=>{!function(_0x3e7c6a){const _0xfe4a89=['a','button','input','select','textarea','[tabindex]','[contenteditable]']['map'](_0x313329=>_0x313329+':not([disabled]):not([tabindex=\x22-1\x22])')['join'](','),_0x58cd76=[...document['body']['querySelectorAll'](_0xfe4a89)]['filter'](_0x1966a9=>_0x1966a9===document['activeElement']||_0x1966a9['offsetWidth']+_0x1966a9['offsetHeight']>0x0)['sort']((_0x370eff,_0x2d84ea)=>(_0x370eff['tabIndex']||0x0)-(_0x2d84ea['tabIndex']||0x0)),_0x2774fe=_0x58cd76['indexOf'](_0x3e7c6a),_0x8d401=_0x58cd76[(_0x2774fe+0x1)%_0x58cd76['length']];_0x8d401&&_0x8d401['focus']();}(this['view']['element']),this['hideDropdown'](),_0x3cc5e0();}),_0x19db89['focusTracker']['add'](this['view']['element']),_0x19db89['focusTracker']['on']('change:isFocused',(_0x111174,_0x5aa665,_0xc7f646)=>{_0xc7f646||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 _0x33a461{static get['requires'](){return[i,r];}static get['pluginName'](){return'PresenceList';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}export{a as CloudServicesCommentsAdapter,u as CloudServicesRevisionHistoryAdapter,f as CloudServicesTrackChangesAdapter,s as PresenceList,l as RealTimeCollaborationClient,m as RealTimeCollaborativeComments,n as RealTimeCollaborativeEditing,g as RealTimeCollaborativeRevisionHistory,p as RealTimeCollaborativeTrackChanges};
@@ -20,4 +20,4 @@
20
20
  *
21
21
  *
22
22
  */
23
- export default{'af':{'dictionary':{'CONNECTED_USERS':['',''],'PENDING_ACTION_SENDING_DATA':'','Synchronization\x20issue':'','Connected\x20users\x20list\x20dropdown\x20menu':'','Connected\x20users\x20list':'','Collapsed\x20connected\x20users\x20list\x20(press\x20ENTER\x20to\x20open\x20it)':'','The\x20document\x20cannot\x20be\x20connected\x20back\x20to\x20the\x20server.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':'','The\x20document\x20details\x20could\x20not\x20be\x20taken\x20during\x20the\x20reconnection.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':'','The\x20last\x20saved\x20version\x20of\x20the\x20document\x20does\x20not\x20match\x20the\x20local\x20version.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':'','The\x20local\x20document\x20and\x20server\x20document\x20differ\x20and\x20merging\x20them\x20can\x20cause\x20unexpected\x20behavior.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':''},'getPluralForm':_0x50d073=>0x1!=_0x50d073}};
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':_0x189113=>0x1!=_0x189113}};
@@ -20,4 +20,4 @@
20
20
  *
21
21
  *
22
22
  */
23
- (_0x47b8a9=>{const {af:{dictionary:_0x48dd61,getPluralForm:_0x1093d7}}={'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':_0x24b897=>0x1!=_0x24b897}};_0x47b8a9['af']||={'dictionary':{},'getPluralForm':null},_0x47b8a9['af']['dictionary']=Object['assign'](_0x47b8a9['af']['dictionary'],_0x48dd61),_0x47b8a9['af']['getPluralForm']=_0x1093d7;})(window['CKEDITOR_TRANSLATIONS']||={});
23
+ (_0x37ed30=>{const {af:{dictionary:_0x2dd1d7,getPluralForm:_0x54be8a}}={'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':_0x22e449=>0x1!=_0x22e449}};_0x37ed30['af']||={'dictionary':{},'getPluralForm':null},_0x37ed30['af']['dictionary']=Object['assign'](_0x37ed30['af']['dictionary'],_0x2dd1d7),_0x37ed30['af']['getPluralForm']=_0x54be8a;})(window['CKEDITOR_TRANSLATIONS']||={});