@ckeditor/ckeditor5-real-time-collaboration 44.0.0-alpha.8 → 44.0.0-alpha.9

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 (169) hide show
  1. package/README.md +2 -2
  2. package/build/real-time-collaboration.js +1 -1
  3. package/dist/index.js +6 -6
  4. package/dist/translations/af.js +1 -1
  5. package/dist/translations/af.umd.js +1 -1
  6. package/dist/translations/ar.js +1 -1
  7. package/dist/translations/ar.umd.js +1 -1
  8. package/dist/translations/ast.js +1 -1
  9. package/dist/translations/ast.umd.js +1 -1
  10. package/dist/translations/az.js +1 -1
  11. package/dist/translations/az.umd.js +1 -1
  12. package/dist/translations/bg.js +1 -1
  13. package/dist/translations/bg.umd.js +1 -1
  14. package/dist/translations/bn.js +1 -1
  15. package/dist/translations/bn.umd.js +1 -1
  16. package/dist/translations/bs.js +1 -1
  17. package/dist/translations/bs.umd.js +1 -1
  18. package/dist/translations/ca.js +1 -1
  19. package/dist/translations/ca.umd.js +1 -1
  20. package/dist/translations/cs.js +1 -1
  21. package/dist/translations/cs.umd.js +1 -1
  22. package/dist/translations/da.js +1 -1
  23. package/dist/translations/da.umd.js +1 -1
  24. package/dist/translations/de-ch.js +1 -1
  25. package/dist/translations/de-ch.umd.js +1 -1
  26. package/dist/translations/de.js +1 -1
  27. package/dist/translations/de.umd.js +1 -1
  28. package/dist/translations/el.js +1 -1
  29. package/dist/translations/el.umd.js +1 -1
  30. package/dist/translations/en-au.js +1 -1
  31. package/dist/translations/en-au.umd.js +1 -1
  32. package/dist/translations/en-gb.js +1 -1
  33. package/dist/translations/en-gb.umd.js +1 -1
  34. package/dist/translations/en.js +1 -1
  35. package/dist/translations/en.umd.js +1 -1
  36. package/dist/translations/eo.js +1 -1
  37. package/dist/translations/eo.umd.js +1 -1
  38. package/dist/translations/es-co.js +1 -1
  39. package/dist/translations/es-co.umd.js +1 -1
  40. package/dist/translations/es.js +1 -1
  41. package/dist/translations/es.umd.js +1 -1
  42. package/dist/translations/et.js +1 -1
  43. package/dist/translations/et.umd.js +1 -1
  44. package/dist/translations/eu.js +1 -1
  45. package/dist/translations/eu.umd.js +1 -1
  46. package/dist/translations/fa.js +1 -1
  47. package/dist/translations/fa.umd.js +1 -1
  48. package/dist/translations/fi.js +1 -1
  49. package/dist/translations/fi.umd.js +1 -1
  50. package/dist/translations/fr.js +1 -1
  51. package/dist/translations/fr.umd.js +1 -1
  52. package/dist/translations/gl.js +1 -1
  53. package/dist/translations/gl.umd.js +1 -1
  54. package/dist/translations/gu.js +1 -1
  55. package/dist/translations/gu.umd.js +1 -1
  56. package/dist/translations/he.js +1 -1
  57. package/dist/translations/he.umd.js +1 -1
  58. package/dist/translations/hi.js +1 -1
  59. package/dist/translations/hi.umd.js +1 -1
  60. package/dist/translations/hr.js +1 -1
  61. package/dist/translations/hr.umd.js +1 -1
  62. package/dist/translations/hu.js +1 -1
  63. package/dist/translations/hu.umd.js +1 -1
  64. package/dist/translations/hy.js +1 -1
  65. package/dist/translations/hy.umd.js +1 -1
  66. package/dist/translations/id.js +1 -1
  67. package/dist/translations/id.umd.js +1 -1
  68. package/dist/translations/it.js +1 -1
  69. package/dist/translations/it.umd.js +1 -1
  70. package/dist/translations/ja.js +1 -1
  71. package/dist/translations/ja.umd.js +1 -1
  72. package/dist/translations/jv.js +1 -1
  73. package/dist/translations/jv.umd.js +1 -1
  74. package/dist/translations/kk.js +1 -1
  75. package/dist/translations/kk.umd.js +1 -1
  76. package/dist/translations/km.js +1 -1
  77. package/dist/translations/km.umd.js +1 -1
  78. package/dist/translations/kn.js +1 -1
  79. package/dist/translations/kn.umd.js +1 -1
  80. package/dist/translations/ko.js +1 -1
  81. package/dist/translations/ko.umd.js +1 -1
  82. package/dist/translations/ku.js +1 -1
  83. package/dist/translations/ku.umd.js +1 -1
  84. package/dist/translations/lt.js +1 -1
  85. package/dist/translations/lt.umd.js +1 -1
  86. package/dist/translations/lv.js +1 -1
  87. package/dist/translations/lv.umd.js +1 -1
  88. package/dist/translations/ms.js +1 -1
  89. package/dist/translations/ms.umd.js +1 -1
  90. package/dist/translations/nb.js +1 -1
  91. package/dist/translations/nb.umd.js +1 -1
  92. package/dist/translations/ne.js +1 -1
  93. package/dist/translations/ne.umd.js +1 -1
  94. package/dist/translations/nl.js +1 -1
  95. package/dist/translations/nl.umd.js +1 -1
  96. package/dist/translations/no.js +1 -1
  97. package/dist/translations/no.umd.js +1 -1
  98. package/dist/translations/oc.js +1 -1
  99. package/dist/translations/oc.umd.js +1 -1
  100. package/dist/translations/pl.js +1 -1
  101. package/dist/translations/pl.umd.js +1 -1
  102. package/dist/translations/pt-br.js +1 -1
  103. package/dist/translations/pt-br.umd.js +1 -1
  104. package/dist/translations/pt.js +1 -1
  105. package/dist/translations/pt.umd.js +1 -1
  106. package/dist/translations/ro.js +1 -1
  107. package/dist/translations/ro.umd.js +1 -1
  108. package/dist/translations/ru.js +1 -1
  109. package/dist/translations/ru.umd.js +1 -1
  110. package/dist/translations/si.js +1 -1
  111. package/dist/translations/si.umd.js +1 -1
  112. package/dist/translations/sk.js +1 -1
  113. package/dist/translations/sk.umd.js +1 -1
  114. package/dist/translations/sl.js +1 -1
  115. package/dist/translations/sl.umd.js +1 -1
  116. package/dist/translations/sq.js +1 -1
  117. package/dist/translations/sq.umd.js +1 -1
  118. package/dist/translations/sr-latn.js +1 -1
  119. package/dist/translations/sr-latn.umd.js +1 -1
  120. package/dist/translations/sr.js +1 -1
  121. package/dist/translations/sr.umd.js +1 -1
  122. package/dist/translations/sv.js +1 -1
  123. package/dist/translations/sv.umd.js +1 -1
  124. package/dist/translations/th.js +1 -1
  125. package/dist/translations/th.umd.js +1 -1
  126. package/dist/translations/ti.js +1 -1
  127. package/dist/translations/ti.umd.js +1 -1
  128. package/dist/translations/tk.js +1 -1
  129. package/dist/translations/tk.umd.js +1 -1
  130. package/dist/translations/tr.js +1 -1
  131. package/dist/translations/tr.umd.js +1 -1
  132. package/dist/translations/tt.js +1 -1
  133. package/dist/translations/tt.umd.js +1 -1
  134. package/dist/translations/ug.js +1 -1
  135. package/dist/translations/ug.umd.js +1 -1
  136. package/dist/translations/uk.js +1 -1
  137. package/dist/translations/uk.umd.js +1 -1
  138. package/dist/translations/ur.js +1 -1
  139. package/dist/translations/ur.umd.js +1 -1
  140. package/dist/translations/uz.js +1 -1
  141. package/dist/translations/uz.umd.js +1 -1
  142. package/dist/translations/vi.js +1 -1
  143. package/dist/translations/vi.umd.js +1 -1
  144. package/dist/translations/zh-cn.js +1 -1
  145. package/dist/translations/zh-cn.umd.js +1 -1
  146. package/dist/translations/zh.js +1 -1
  147. package/dist/translations/zh.umd.js +1 -1
  148. package/package.json +9 -9
  149. package/src/common-translations.js +1 -1
  150. package/src/index.js +1 -1
  151. package/src/presencelist/presencelistui.js +1 -1
  152. package/src/presencelist/view/presencecounterview.js +1 -1
  153. package/src/presencelist/view/presencedropdownlistitemview.js +1 -1
  154. package/src/presencelist/view/presencedropdownlistview.js +1 -1
  155. package/src/presencelist/view/presenceinlinelistitemview.js +1 -1
  156. package/src/presencelist/view/presenceinlinelistview.js +1 -1
  157. package/src/presencelist/view/presencelistview.js +1 -1
  158. package/src/presencelist.js +1 -1
  159. package/src/realtimecollaborativecomments/cloudservicescommentsadapter.js +1 -1
  160. package/src/realtimecollaborativecomments.js +1 -1
  161. package/src/realtimecollaborativeediting/realtimecollaborationclient.js +1 -1
  162. package/src/realtimecollaborativeediting/sessions.js +1 -1
  163. package/src/realtimecollaborativeediting/usermarkers.js +1 -1
  164. package/src/realtimecollaborativeediting/websocketgateway.js +1 -1
  165. package/src/realtimecollaborativeediting.js +1 -1
  166. package/src/realtimecollaborativerevisionhistory/cloudservicesrevisionhistoryadapter.js +1 -1
  167. package/src/realtimecollaborativerevisionhistory.js +1 -1
  168. package/src/realtimecollaborativetrackchanges/cloudservicestrackchangesadapter.js +1 -1
  169. 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 _0x44cad5,Plugin as _0x3aa519,PendingActions as _0x4bc24d,Context as _0x36edd1}from'@ckeditor/ckeditor5-core/dist/index.js';import{DomEmitterMixin as _0x2416f5,CKEditorError as _0x33cd62,Collection as _0x35e6fd,global as _0x3d2acd,version as nt,uid as _0x243928,KeystrokeHandler as _0x47fa68}from'@ckeditor/ckeditor5-utils/dist/index.js';import{Notification as _0x2a5600,View as _0x11e2dc,ListView as _0x40737a,ListItemView as rt,LabelView as ot,BalloonPanelView as _0xb1cf9a,clickOutsideHandler as _0x24e8ff,BodyCollection as _0x2a110c}from'@ckeditor/ckeditor5-ui/dist/index.js';import{LiveRange as ht,History as _0xfe3099,NoOperation as _0x15be44,InsertOperation as _0x107b34,MarkerOperation as _0x1cded2,RootAttributeOperation as _0x1215aa,transformSets as _0x357384,OperationFactory as _0x1b15ef}from'@ckeditor/ckeditor5-engine/dist/index.js';import{WebSocketGateway as lt,WEB_SOCKET_GATEWAY_STATES as _0x198497,CollaborativeEditingService as _0x305cc7,User as dt,CommentsService as _0x2f050d,TrackChangesService as et,RevisionHistoryService as it,EditorService as tt}from'@ckeditor/ckeditor-cloud-services-collaboration/dist/index.js';import{Users as _0x1f4be7,UserView as ct}from'ckeditor5-collaboration/dist/index.js';import{Compressor as _0x264e7c}from'@ckeditor/ckeditor5-operations-compressor/dist/index.js';import{isElement as _0xc0e31b}from'lodash-es';class c extends _0x44cad5{static ['WebSocketGateway']=/* #__PURE__ -- @preserve */
24
- ((()=>lt)());static ['initialReconnectionInterval']=0x3e8;['connection'];['_reconnectionStack'];['_shouldPluginsReconnect'];['_domEmitter'];static get['requires'](){return['CloudServices',_0x2a5600];}static get['pluginName'](){return'WebSocketGateway';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x4d2d1c){super(_0x4d2d1c),this['set']('state',_0x198497['CONNECTED']),this['set']('_isBrowserOffline',!0x1),this['_reconnectionStack']=new Set(),this['_shouldPluginsReconnect']=!0x1,this['_domEmitter']=Object['create'](_0x2416f5);}['init'](){const _0x57fa66=this['context'],_0x4337f6=_0x57fa66['plugins']['get']('CloudServices'),_0x315e32=_0x57fa66['plugins']['get'](_0x2a5600);if(!_0x4337f6['token'])throw new _0x33cd62('websocketgateway-missing-token',this);if(!_0x4337f6['webSocketUrl'])throw new _0x33cd62('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'](_0x4337f6['token'],_0x4337f6['webSocketUrl'],{'timeout':0x3e8*this['context']['config']['get']('cloudServices.connectionTimeout'),'requestTimeout':0x3e8*this['context']['config']['get']('cloudServices.requestTimeout')})['then'](_0x40870a=>{if(this['connection']=_0x40870a,this['bind']('state')['to'](_0x40870a,'state',this,'_isBrowserOffline',(_0x386be5,_0x2beb08)=>('connected'!==_0x386be5&&(this['_shouldPluginsReconnect']=!0x0),_0x2beb08||_0x386be5!==_0x198497['CONNECTED']?_0x198497['DISCONNECTED']:this['state']==_0x198497['DISCONNECTED']&&this['_shouldPluginsReconnect']?(this['_shouldPluginsReconnect']=!0x1,this['_reconnect'](),_0x198497['CONNECTING']):_0x198497['CONNECTED'])),this['connection']['on']('error',(_0x122e64,_0x85ad97)=>{if('limitExceeded'!==_0x85ad97['code'])throw console['error'](_0x85ad97),new _0x33cd62('cloudservices-init',null,{'originalError':_0x85ad97});_0x315e32['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'});}),!_0x40870a['me'])return new Promise(_0x13445b=>_0x40870a['on']('change:me',_0x13445b));})['catch'](_0x2a6c84=>{throw console['error'](_0x2a6c84),new _0x33cd62('cloudservices-init',null,{'originalError':_0x2a6c84});});}['addToReconnectionStack'](_0x4459cd){if('function'!=typeof _0x4459cd['reconnect'])throw new _0x33cd62('websocketgateway-invalid-plugin-interface',this);if(this['isInReconnectionStack'](_0x4459cd))throw new _0x33cd62('websocketgateway-plugin-already-registered',this,{'name':_0x4459cd['constructor']['pluginName']});this['_reconnectionStack']['add'](_0x4459cd);}['removeFromReconnectionStack'](_0x1f05c8){this['_reconnectionStack']['delete'](_0x1f05c8);}['isInReconnectionStack'](_0x571c97){return this['_reconnectionStack']['has'](_0x571c97);}['_reconnect'](){return this['connection']['reconnect']()['then'](()=>Promise['all'](Array['from'](this['_reconnectionStack'],_0x4752ab=>_0x4752ab['reconnect']())))['then'](()=>this['state']=_0x198497['CONNECTED'])['catch'](_0x316696=>{throw console['error'](_0x316696),new _0x33cd62('cloudservices-reconnection-error',this['context']);});}['destroy'](){this['connection']&&this['connection']['disconnect'](),this['state']=_0x198497['DISCONNECTED'],this['_domEmitter']['stopListening'](),super['destroy']();}}class i extends _0x44cad5{['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,_0x1f4be7];}constructor(_0xa873fd){super(_0xa873fd),this['channelSessions']=new Map(),this['channelConnectedUsers']=new Map(),this['allConnectedUsers']=new _0x35e6fd(),this['_registeredSessions']=new Map(),this['_uniqueUsersCount']=0x0,this['_users']=this['context']['plugins']['get'](_0x1f4be7);}['init'](){const _0x9a0a35=this['context']['plugins']['get'](c);this['listenTo'](_0x9a0a35,'change:state',(_0x4512ad,_0x8d4b82,_0x3ff0e0)=>{if('connected'!==_0x3ff0e0)this['channelSessions']['forEach'](_0x538886=>_0x538886['clear']()),this['channelConnectedUsers']['forEach'](_0x3ab997=>_0x3ab997['clear']()),this['allConnectedUsers']['clear']();else{for(const [_0x55133f,_0x5e78e8]of this['_registeredSessions'])for(const _0x207bb5 of _0x5e78e8)this['_handleSessionAdd'](_0x55133f,_0x207bb5);}}),this['_createUser'](_0x9a0a35['connection']['me'],!0x0);}['register'](_0x4d9d48,_0x342e36){if(this['_registeredSessions']['has'](_0x4d9d48))throw new _0x33cd62('sessions-register-already-registered',null,{'channelId':_0x4d9d48});this['_registeredSessions']['set'](_0x4d9d48,_0x342e36),this['channelSessions']['set'](_0x4d9d48,new _0x35e6fd()),this['channelConnectedUsers']['set'](_0x4d9d48,new _0x35e6fd()),this['listenTo'](_0x342e36,'add',(_0x5db8ad,_0xef208a)=>this['_handleSessionAdd'](_0x4d9d48,_0xef208a)),this['listenTo'](_0x342e36,'remove',(_0x3d7857,_0x2d8113)=>this['_handleSessionRemove'](_0x4d9d48,_0x2d8113));for(const _0x36a357 of _0x342e36)this['_handleSessionAdd'](_0x4d9d48,_0x36a357);}['unregister'](_0x23bf12){if(!this['_registeredSessions']['has'](_0x23bf12))throw new _0x33cd62('sessions-unregister-not-exist',null,{'channelId':_0x23bf12});const _0x22cf9c=this['_registeredSessions']['get'](_0x23bf12);this['stopListening'](_0x22cf9c);for(const _0x87ff39 of _0x22cf9c)'connected'===this['context']['plugins']['get'](c)['state']&&this['_handleSessionRemove'](_0x23bf12,_0x87ff39);this['_registeredSessions']['delete'](_0x23bf12),this['channelSessions']['delete'](_0x23bf12),this['channelConnectedUsers']['delete'](_0x23bf12);}get['mySessionId'](){return this['context']['plugins']['get'](c)['connection']['sessionId'];}['getUserBySessionId'](_0x23f4b1){for(const _0x26b12d of this['channelSessions']['values']())for(const _0x3f4a29 of _0x26b12d)if(_0x3f4a29['id']===_0x23f4b1)return _0x3f4a29['user'];}['getUserSessions'](_0x53a561,_0x3becf2){const _0x386177=_0x3becf2?[this['channelSessions']['get'](_0x3becf2)]:this['channelSessions']['values'](),_0xb78153=new Set();for(const _0x4e7a85 of _0x386177)for(const _0x33535c of _0x4e7a85)_0x33535c['user']['id']===_0x53a561['id']&&_0xb78153['add'](_0x33535c['id']);return _0xb78153;}['getUserRole'](_0x3eaa56){for(const _0x43d1d9 of this['channelSessions']['values']())for(const _0x3006c4 of _0x43d1d9)if(_0x3006c4['user']===_0x3eaa56)return _0x3006c4['role'];}['_handleSessionAdd'](_0x37a35e,_0x9a48db){if('connected'!==this['context']['plugins']['get'](c)['state'])return;const _0x2c8d9f=_0x9a48db['user'],_0x3969f0=this['_users']['getUser'](_0x2c8d9f['id'])||this['_createUser'](_0x2c8d9f),_0x4f1e8f=Object['assign']({},_0x9a48db,{'user':_0x3969f0});this['channelSessions']['get'](_0x37a35e)['add'](_0x4f1e8f);const _0x5de800=this['channelConnectedUsers']['get'](_0x37a35e);_0x5de800['has'](_0x3969f0['id'])||_0x5de800['add'](_0x3969f0),this['allConnectedUsers']['has'](_0x3969f0['id'])||this['allConnectedUsers']['add'](_0x3969f0,_0x3969f0['isMe']?0x0:void 0x0),this['fire']('sessionAdd:'+_0x37a35e,{'channelId':_0x37a35e,'session':_0x4f1e8f});}['_handleSessionRemove'](_0x187e41,_0x4c2f8f){if('connected'!==this['context']['plugins']['get'](c)['state'])return;const _0x4412c2=this['channelConnectedUsers']['get'](_0x187e41),_0x47471b=_0x4c2f8f['user'];_0x47471b['id']&&(this['channelSessions']['get'](_0x187e41)['remove'](_0x4c2f8f['id']),_0x4412c2['has'](_0x47471b['id'])&&!this['getUserSessions'](_0x47471b,_0x187e41)['size']&&_0x4412c2['remove'](_0x47471b['id']),this['allConnectedUsers']['get'](_0x47471b['id'])&&!this['getUserSessions'](_0x47471b)['size']&&this['allConnectedUsers']['remove'](_0x47471b['id']));}['_createUser'](_0x394892,_0x3be342){const _0x581a22=this['_users']['addUser'](_0x394892);return _0x3be342&&this['_users']['defineMe'](_0x394892['id']),_0x581a22['orderNumber']=this['_uniqueUsersCount']++,_0x581a22;}}class H extends _0x3aa519{['_domEmitter']=new(_0x2416f5())();static get['requires'](){return[i];}static get['pluginName'](){return'UserMarkers';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['init'](){const _0x269861=this['editor'],_0x5eebd6=_0x269861['plugins']['get'](i);_0x269861['conversion']['for']('editingDowncast')['markerToElement']({'model':'user:position','view':(_0x1ddbad,{writer:_0x256eee})=>function(_0x5d8189,_0x3096a7,_0x32ab33,_0x2b4775){const _0x3fd93e=_0x5d8189['markerName']['split'](':')[0x2],_0x2bba4e=_0x32ab33['getUserBySessionId'](_0x3fd93e);if(!_0x2bba4e||_0x3fd93e===_0x32ab33['mySessionId'])return;if(!_0x2b4775['model']['schema']['checkChild'](_0x5d8189['markerRange']['start'],'$text'))return;const _0x49d85f={'class':'ck-user__marker\x20'+_0x2bba4e['color']['getMarkerClass'](),'data-name':_0x2bba4e['name'],'data-session-id':_0x3fd93e},_0x1a2ad0=_0x2b4775['model']['markers']['get'](_0x5d8189['markerName']),_0x1e8712=_0x1a2ad0['getStart'](),_0x4cc7e6=_0x1e8712['nodeAfter'],_0xe37dfc=_0x2b4775['model']['schema'];if(_0x4cc7e6&&_0xe37dfc['isObject'](_0x4cc7e6)&&_0xe37dfc['isInline'](_0x4cc7e6)&&!_0x2b4775['model']['markers']['get']('user:range:'+_0x3fd93e)['getRange']()['isCollapsed'])return;const _0x23fe4d=_0x1e8712['parent'];return _0x2b4775['model']['schema']['isLimit'](_0x23fe4d)&&!_0x2b4775['model']['hasContent'](_0x23fe4d)&&(_0x49d85f['contenteditable']=!0x1),function(_0x524464,_0x45491d,_0x5270ac){const _0x1ba26a=_0x524464['createUIElement']('span',_0x45491d);return _0x524464['setCustomProperty']('userPositionMarker',!0x0,_0x1ba26a),_0x1ba26a['render']=function(_0x5e38df){const _0x3881d1=this['toDomElement'](_0x5e38df);return _0x3881d1['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>'+_0x5270ac['name']+'</span>⁠',_0x3881d1['addEventListener']('mouseenter',()=>{_0x3881d1['classList']['add']('ck-user__marker_hovered');}),_0x3881d1['addEventListener']('mouseleave',()=>{_0x3881d1['classList']['remove']('ck-user__marker_hovered');}),_0x3881d1;},_0x1ba26a['isSimilar']=function(_0x5ea6d9){return!(!this['getCustomProperty']('userPositionMarker')||!_0x5ea6d9['getCustomProperty']('userPositionMarker')||this['getAttribute']('data-session-id')!=_0x5ea6d9['getAttribute']('data-session-id'));},_0x1ba26a;}(_0x3096a7,_0x49d85f,_0x2bba4e);}(_0x1ddbad,_0x256eee,_0x5eebd6,_0x269861)}),_0x269861['conversion']['for']('editingDowncast')['markerToHighlight']({'model':'user:range','view':_0x55c877=>function(_0x3c3d98,_0x2afd16){const _0x1b9ddc=_0x3c3d98['markerName']['split'](':')[0x2];if(_0x1b9ddc===_0x2afd16['mySessionId'])return null;const _0x4ba639=_0x2afd16['getUserBySessionId'](_0x1b9ddc);if(!_0x4ba639)return{'id':_0x1b9ddc,'classes':[]};return{'id':_0x1b9ddc,'classes':['ck-user__selection',_0x4ba639['color']['getSelectionClass']()],'attributes':{'data-session-id':_0x1b9ddc},'priority':0x7d0+_0x4ba639['orderNumber']};}(_0x55c877,_0x5eebd6)}),function(_0x50614f){const _0x5d2fb5=_0x50614f['model'],_0x3703b6=new Map(),_0x2ee0e7=_0x50614f['plugins']['get'](i);_0x5d2fb5['markers']['on']('update:user:range',(_0x3e50ca,_0x16ee10,_0x3c3dde,_0xad1cfe)=>{if(!_0xad1cfe&&_0x3703b6['get'](_0x16ee10['name']))return _0x3703b6['get'](_0x16ee10['name'])['detach'](),void _0x3703b6['delete'](_0x16ee10['name']);const _0x532b64=_0x16ee10['name']['split'](':')[0x2];if(_0x532b64===_0x2ee0e7['mySessionId'])return;const _0x1e9ee7='user:position:'+_0x532b64;_0x5d2fb5['markers']['has'](_0x1e9ee7)&&_0x50614f['editing']['reconvertMarker'](_0x1e9ee7),_0x16ee10['on']('change:range',(_0x1d4b4c,_0xdd310e,_0x2faf61)=>{if('$graveyard'!=_0xdd310e['root']['rootName']&&'$graveyard'==_0x16ee10['getRange']()['root']['rootName']&&!_0x3703b6['has'](_0x16ee10['name'])){const _0x5722fd=_0x5d2fb5['schema']['getNearestSelectionRange'](_0x2faf61['deletionPosition']);if(_0x5722fd){const _0xf9e41c=ht['fromRange'](_0x5722fd);_0x3703b6['set'](_0x16ee10['name'],_0xf9e41c),_0xf9e41c['on']('change:range',(_0x40cae,_0x2028c8,_0x4ad682)=>{if('$graveyard'==_0xf9e41c['root']['rootName']){const _0x2acbbb=_0x5d2fb5['schema']['getNearestSelectionRange'](_0x4ad682['deletionPosition']);_0x2acbbb?(_0xf9e41c['start']=_0x2acbbb['start'],_0xf9e41c['end']=_0x2acbbb['end']):(_0x3703b6['delete'](_0x16ee10['name']),_0xf9e41c['detach']());}});}}});}),_0x5d2fb5['document']['on']('change',()=>{_0x3703b6['size']>0x0&&_0x5d2fb5['enqueueChange']({'isUndoable':!0x1},_0x2d2d41=>{for(const [_0x40a5c0,_0x287b56]of _0x3703b6)'$graveyard'==_0x5d2fb5['markers']['get'](_0x40a5c0)['getRange']()['root']['rootName']&&(re(_0x40a5c0['split'](':')[0x2],_0x287b56['toRange'](),_0x5d2fb5,_0x2d2d41),_0x287b56['detach']());_0x3703b6['clear']();});});}(_0x269861),this['_domEmitter']['listenTo'](_0x3d2acd['document'],'keydown',(_0x173eed,{key:_0x512104})=>{'Escape'===_0x512104&&function(_0x229fd2){_0x229fd2['editing']['view']['change'](_0x49d0cb=>{for(const _0x53946c of _0x229fd2['model']['markers']){if(!_0x53946c['name']['startsWith']('user:position'))continue;const _0x59bff7=_0x229fd2['editing']['mapper']['markerNameToElements'](_0x53946c['name']);if(_0x59bff7){for(const _0x1d34ed of _0x59bff7)_0x49d0cb['removeClass']('ck-user__marker_hovered',_0x1d34ed);}}});}(_0x269861);},{'useCapture':!0x0});}['afterInit'](){const _0xb42cf2=this['editor'],_0x238297=_0xb42cf2['commands']['get']('undo');_0x238297&&_0xb42cf2['model']['on']('applyOperation',(_0x220c5f,_0x4130e7)=>{const _0x22c54f=_0x4130e7[0x0];if('marker'!=_0x22c54f['type']||!_0x22c54f['name']['startsWith']('user:'))return;const _0xb80d63=_0x22c54f['batch'];_0x238297['_createdBatches']['has'](_0xb80d63)&&(_0x22c54f['newRange']=_0x22c54f['oldRange']?_0xb42cf2['model']['createRange'](_0x22c54f['oldRange']['start'],_0x22c54f['oldRange']['end']):null);},{'priority':'highest'});}['destroy'](){return this['_domEmitter']['stopListening'](),super['destroy']();}['createUserMarkerOperations'](){const _0x1e4300=this['editor'],_0x2df37d=_0x1e4300['model']['document'],_0x598fe8=_0x1e4300['plugins']['get'](i);_0x1e4300['model']['enqueueChange']({'isUndoable':!0x1},_0x38072e=>{const _0x484918='user:range:'+_0x598fe8['mySessionId'],_0x5bd05d='user:position:'+_0x598fe8['mySessionId'],_0x35572f=_0x1e4300['model']['markers']['has'](_0x484918);_0x1e4300['editing']['view']['hasDomSelection']?re(_0x598fe8['mySessionId'],_0x2df37d['selection']['getFirstRange'](),_0x1e4300['model'],_0x38072e):_0x35572f&&(_0x38072e['removeMarker'](_0x484918),_0x38072e['removeMarker'](_0x5bd05d));});}}function re(_0x457547,_0x1721c8,_0x494b99,_0x16e20c){const _0x7dd99f='user:range:'+_0x457547,_0x1de65f='user:position:'+_0x457547,_0x9323d1=_0x1721c8['getContainedElement']();let _0x4e390b=_0x1721c8['start'];_0x9323d1&&_0x9323d1['is']('element','tableCell')&&(_0x4e390b=function(_0x53ba4e,_0x2554c3){for(const _0x11f90b of _0x53ba4e['getPositions']())if(_0x2554c3['schema']['checkChild'](_0x11f90b,'$text'))return _0x11f90b;}(_0x1721c8,_0x494b99),_0x1721c8=_0x16e20c['createRange'](_0x4e390b));const _0x1a9e0e=_0x16e20c['createRange'](_0x4e390b);_0x494b99['markers']['has'](_0x7dd99f)?(_0x16e20c['updateMarker'](_0x7dd99f,{'range':_0x1721c8}),_0x16e20c['updateMarker'](_0x1de65f,{'range':_0x1a9e0e})):(_0x16e20c['addMarker'](_0x7dd99f,{'range':_0x1721c8,'usingOperation':!0x0}),_0x16e20c['addMarker'](_0x1de65f,{'range':_0x1a9e0e,'usingOperation':!0x0}));}function q(_0x5ed1ef,_0x15a52b,_0x224baa){const _0x1e250a=_0x5ed1ef['t'],t=_0x5ed1ef['t'];switch(_0x15a52b){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 _0x1e250a({'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'},_0x224baa);default:return'';}}let K=0x1;class l extends _0x3aa519{static ['CollaborativeEditingService']=/* #__PURE__ -- @preserve */
25
- ((()=>_0x305cc7)());['_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,_0x4bc24d,_0x1f4be7,_0x2a5600];}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 _0x452d9f=this['serverHistory']['getOperations']();for(let _0x2e736d=_0x452d9f['length']-0x1;_0x2e736d>=0x0;_0x2e736d--){const _0x43d948=_0x452d9f[_0x2e736d];if(!this['_disconnectionOperations']['has'](_0x43d948))return _0x43d948['baseVersion']+0x1-this['_offset'];}return 0x0;}constructor(_0x5763a5){if(super(_0x5763a5),this['_offset']=0x0,this['sessionId']=null,this['serverHistory']=new _0xfe3099(),this['editor']['config']['define']('collaboration',{}),this['_channelId']=this['editor']['config']['get']('collaboration.channelId'),!this['_channelId'])throw new _0x33cd62('collaboration-missing-channelid',this);const _0x42e3c6=_0x5763a5['config']['get']('cloudServices.bundleVersion')||nt;this['_service']=new l['CollaborativeEditingService'](_0x42e3c6,this['_channelId']),this['_document']=this['editor']['model']['document'],this['_compressor']=new _0x264e7c(),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 _0x236890=this['editor'],_0xceb757=_0x236890['plugins']['get'](_0x1f4be7),_0x20db29=_0x236890['plugins']['get'](c);this['listenTo'](_0xceb757,'getOperationAuthor',(_0x42f417,_0x1c3fbc)=>{const _0x46c020=_0x1c3fbc[0x0];_0x46c020['_authorId']&&(_0x42f417['return']=_0xceb757['getUser'](_0x46c020['_authorId']),_0x42f417['stop']()),null===_0x46c020['_authorId']&&(_0x42f417['return']=null,_0x42f417['stop']());},{'priority':'high'}),this['listenTo'](_0x236890['model']['document']['selection'],'change:range',(_0x769396,_0x50c5ac)=>{_0x50c5ac['directChange']&&this['_refreshUserSelectionMarkers']();}),this['listenTo'](_0x236890['editing']['view'],'change:hasDomSelection',()=>{this['_refreshUserSelectionMarkers']();}),this['_initThrowingOnDataSet'](),_0x236890['model']['on']('applyOperation',(_0xdbf728,_0x19e0f1)=>{const _0x155b0d=_0x19e0f1[0x0];_0x155b0d['isDocumentOperation']&&(this['_saveOperationInBuffer'](_0x155b0d),this['_shouldSendUpdate']()&&this['_sendBufferedOperationsDelayed']());}),this['_setUpDataInit'](),this['bind']('_isEditingAllowed')['to'](_0x20db29,'state',this,'_hasSynchronizationProblem',(_0x119fb7,_0x14b751)=>'connected'===_0x119fb7&&!_0x14b751),this['on']('change:_isEditingAllowed',()=>{this['_isEditingAllowed']?_0x236890['disableReadOnlyMode']('rtc-offline'):_0x236890['enableReadOnlyMode']('rtc-offline');}),this['_isEditingAllowed']?_0x236890['disableReadOnlyMode']('rtc-offline'):_0x236890['enableReadOnlyMode']('rtc-offline'),this['set']('_isConnected',!0x1);}async['reconnect'](){const _0xf48c6=this['editor']['plugins']['get'](i),_0x539bc2=this['editor']['plugins']['get'](c);try{this['_isPendingUpdate']=!0x0,_0xf48c6['unregister'](this['_channelId']);const _0x575839=await this['_service']['reconnect'](_0x539bc2['connection'],this['lastSyncVersion']);await this['_handleReconnectionResponse'](_0x575839)&&(this['_isPendingUpdate']=!0x1,this['_clearPendingAction']());const _0x3330ba=await this['_service']['getConnectedSessions']();_0xf48c6['register'](this['_channelId'],_0x3330ba),this['_handleSendingSelectionMarkers'](),this['_isConnected']=!0x0;}catch(_0x2081d5){if(function(_0x58625c){return'404'===_0x58625c['code'];}(_0x2081d5)&&this['sessionId'])await this['_connectAfterSessionHasBeenFlushed']();else{if(function(_0x1a12e1){return'409'===_0x1a12e1['code'];}(_0x2081d5)){const _0x25de33=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'](_0x25de33);}else{if(!(_0x2081d5 instanceof J))throw _0x2081d5;this['_handleReconnectionError']();}}}}['destroy'](){const _0x24dd84=this['editor']['plugins']['get'](c),_0x1354ff=this['editor']['plugins']['get'](i);this['editor']['enableReadOnlyMode']('rtc-destroyed'),_0x1354ff['channelSessions']['has'](this['_channelId'])&&_0x1354ff['unregister'](this['_channelId']),_0x24dd84['removeFromReconnectionStack'](this),this['_disconnectService'](),super['destroy']();}async['_handleReconnectionResponse'](_0x9ff105){if(this['sessionId']!==_0x9ff105['sessionId']&&this['_lastSyncedOperationId']!==_0x9ff105['lastOperationId'])throw new J();return this['sessionId']=_0x9ff105['sessionId'],this['_handleServerResponse']([],{..._0x9ff105,'wereChangesApplied':!0x1,'data':_0x9ff105['data']},'reconnect');}async['_connectService'](_0x5a991e,_0x3fc40c=!0x1){const {connection:_0x4e0143}=this['editor']['plugins']['get'](c);l['CollaborativeEditingService']['getConnectedSessions'](_0x4e0143,this['_channelId'])['then'](_0x524b2e=>this['_initSessionsHandling'](_0x524b2e))['catch'](_0x379f2e=>{this['_crash']('realtimecollaborationclient-init-session-connection-error',_0x379f2e);}),this['listenTo'](this['_service'],'operationsReceived',this['_handleReceivedOperations']['bind'](this)),this['listenTo'](this['_service'],'error',(_0xb6f127,_0x12a8bd)=>{this['_crash']('realtimecollaborationclient-initservice-internal-error',_0x12a8bd);}),this['listenTo'](this['_service'],'disconnected',()=>{this['_isConnected']=!0x1;});const _0x144c93=this['_operationIdentifier']['getIdOfTheLastOperation'](_0x5a991e);this['_isPendingUpdate']=!0x0;const _0x236f8c=await this['_service']['connect'](_0x4e0143,this['_compressOperations'](_0x5a991e),_0x144c93);if(this['sessionId']=_0x236f8c['sessionId'],_0x3fc40c){if(!_0x236f8c['wereChangesApplied'])return void this['_handleReconnectionError']();this['_isPendingUpdate']=!0x1,this['_clearPendingAction'](),this['serverHistory']['reset'](),this['_offset']=_0x236f8c['offset'],this['serverHistory']['version']=this['_offset'],await this['_handleServerResponse'](_0x5a991e,_0x236f8c,'reconnection:\x20flushed\x20session');}else await this['_handleInitialConnectionData'](_0x236f8c,_0x5a991e);this['_handleSendingSelectionMarkers'](),this['_isConnected']=!0x0;}['_handleSendingSelectionMarkers'](){const _0x15f3e3=this['editor']['plugins']['get'](i),_0x2f5a0e=this['editor']['plugins']['get'](H),_0x20434e=_0x15f3e3['channelSessions']['get'](this['_channelId']);_0x20434e&&_0x20434e['length']>0x1?_0x2f5a0e['createUserMarkerOperations']():this['listenTo'](_0x15f3e3,'sessionAdd:'+this['_channelId'],()=>{0x2===_0x15f3e3['channelSessions']['get'](this['_channelId'])['length']&&_0x2f5a0e['createUserMarkerOperations']();});}async['_handleReceivedOperations'](_0x443c3a,_0x2245ab,_0x2200a4,_0x87fc30){if(!this['_isPendingUpdate']&&this['_document']['version']==_0x2245ab){const _0x353c3e=this['_decompressOperations'](_0x2200a4,_0x87fc30);await this['_fetchMissingUsers'](_0x353c3e),this['_handleExternalOperations'](_0x353c3e,_0x2245ab,_0x2200a4['lastOperationId'])||this['_crash']('realtimecollaborationclient-initservice-incorrect-server-operation');}}async['_connectAfterSessionHasBeenFlushed'](){this['_disconnectService']();const {locale:_0x5161a5}=this['editor'];let _0x237588;try{_0x237588=await this['_service']['getDocumentDetails']();}catch(_0x481791){const _0x4e71ae=q(_0x5161a5,'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'](_0x4e71ae);}const _0x1d0047=_0x237588['currentDocumentSession']||_0x237588['lastDocumentSession'];if(this['_lastSyncedOperationId']===_0x1d0047['lastOperationId'])await this['_connectService'](this['editor']['model']['document']['history']['getOperations'](),!0x0);else{const _0x3afee9=q(_0x5161a5,'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'](_0x3afee9);}}['_disconnectService'](){this['_service']['disconnect'](),this['_bufferedOperations']=[],clearTimeout(this['_sendBufferedOperationsDelayId']),this['stopListening'](this['_service']);}['_initSessionsHandling'](_0x5d56a2){const _0x222a6b=this['editor']['plugins']['get'](i);this['listenTo'](_0x222a6b,'sessionAdd:'+this['_channelId'],(_0x5c7305,{session:_0x334e32})=>{if(_0x334e32['id']===_0x222a6b['mySessionId']){_0x5c7305['off']();const _0x241612=this['editor']['plugins']['has']('CommentsOnly')&&this['editor']['plugins']['get']('CommentsOnly');let _0x5e6e14=_0x334e32['permissions'];_0x241612&&_0x241612['isEnabled']&&(_0x5e6e14=_0x5e6e14['filter'](_0x47f82a=>'document:write'!==_0x47f82a)),this['editor']['plugins']['get']('Permissions')['setPermissions'](_0x5e6e14,this['_channelId']);}}),_0x222a6b['register'](this['_channelId'],_0x5d56a2);}['_initThrowingOnDataSet'](){const _0x4e6b46=this['editor']['data']['set'];this['editor']['data']['set']=(..._0x2fd1e3)=>{if(!_0x2fd1e3[_0x2fd1e3['length']-0x1]['suppressErrorInCollaboration'])throw new _0x33cd62('realtimecollaborationclient-editor-setdata-and-editor-data-set-are-forbidden-in-real-time-collaboration',this);_0x4e6b46['apply'](this['editor']['data'],_0x2fd1e3);};}['_setUpDataInit'](){this['editor']['data']['on']('init',(_0x3f9d37,[_0x2d9d9e])=>{if(this['_document']['version'])throw new _0x33cd62('realtimecollaborationclient-init-document-already-initialized',this);_0x3f9d37['stop'](),this['_setPendingAction']();const _0x397a93=this['editor']['config']['get']('rootsAttributes'),_0x19243e=this['_getOperationsFromInitData'](_0x2d9d9e,_0x397a93);0x0==_0x19243e['length']&&_0x19243e['push'](new _0x15be44(0x0)),_0x3f9d37['return']=this['_connectService'](_0x19243e)['then'](()=>{this['editor']['plugins']['get'](c)['addToReconnectionStack'](this),this['editor']['data']['fire']('ready');})['catch'](_0x359359=>this['_crash']('realtimecollaborationclient-init-connection-failed',_0x359359))['finally'](()=>this['_clearPendingAction']());},{'priority':'high'}),this['editor']['on']('loadRoot',async(_0x34b488,[_0x2eeef0,_0x323bc4])=>{_0x34b488['stop']();const _0x21ff1c=this['editor']['model']['document']['getRoot'](_0x2eeef0);if(!this['_knownRootNames']['has'](_0x2eeef0)){const _0x300cef=_0x323bc4&&_0x323bc4['data']?_0x323bc4['data']:'',_0x8250f5=_0x323bc4&&_0x323bc4['attributes']?_0x323bc4['attributes']:{};await this['_loadRoot'](_0x2eeef0,_0x300cef,_0x8250f5);}this['editor']['model']['enqueueChange']({'isUndoable':!0x1},()=>{_0x21ff1c['_isLoaded']=!0x0,this['editor']['model']['document']['differ']['_bufferRootLoad'](_0x21ff1c);});},{'priority':'high'});}async['_fetchMissingUsers'](_0x31f628){const _0x54987a=this['editor']['plugins']['get'](_0x1f4be7),{connection:_0x359a80}=this['editor']['plugins']['get'](c),_0x5c9f52=new Set();for(const _0xb39d09 of _0x31f628){const _0x475f51=_0xb39d09['_authorId'];_0x475f51&&!_0x54987a['getUser'](_0x475f51)&&_0x5c9f52['add'](_0x475f51);}if(0x0===_0x5c9f52['size'])return;const _0x368074=await dt['getMany'](_0x359a80,Array['from'](_0x5c9f52));for(const _0x31f881 of _0x368074)_0x54987a['getUser'](_0x31f881['id'])||_0x54987a['addUser'](_0x31f881);}['_getOperationsFromInitData'](_0x1e93be,_0x40166e={}){const _0x36b975=this['editor']['model'],_0x5e608f=[];let _0x1ff647=0x0;const _0x88ff9='string'==typeof _0x1e93be?{'main':_0x1e93be}:_0x1e93be;for(const _0x26a8c9 of Object['keys'](_0x88ff9)){if(!this['_document']['roots']['has'](_0x26a8c9))throw new _0x33cd62('realtimecollaborationclient-init-non-existent-root',this);const _0x1b003e=this['editor']['data']['parse'](_0x88ff9[_0x26a8c9]),_0x6b3cd4=this['_document']['getRoot'](_0x26a8c9),_0x183082=new _0x107b34(_0x36b975['createPositionAt'](_0x6b3cd4,0x0),_0x1b003e,_0x1ff647++);_0x5e608f['push'](_0x183082);for(const [_0x17ca04,_0x1cddc8]of _0x1b003e['markers']){const _0x167f68=_0x36b975['createRange'](_0x36b975['createPositionFromPath'](_0x6b3cd4,_0x1cddc8['start']['path']['slice']()),_0x36b975['createPositionFromPath'](_0x6b3cd4,_0x1cddc8['end']['path']['slice']())),_0x5cdb58=new _0x1cded2(_0x17ca04,null,_0x167f68,_0x36b975['markers'],!0x0,_0x1ff647++);_0x5e608f['push'](_0x5cdb58);}}if(_0x40166e)for(const [_0x1de0ec,_0x497082]of Object['entries'](_0x40166e)){const _0x4128fb=_0x36b975['document']['getRoot'](_0x1de0ec);if(!_0x4128fb)throw new _0x33cd62('multi-root-editor-root-attributes-no-root',null);for(const [_0x3d7716,_0x3f61ce]of Object['entries'](_0x497082))if(null!==_0x3f61ce){const _0x56ce3d=new _0x1215aa(_0x4128fb,_0x3d7716,null,_0x3f61ce,_0x1ff647++);_0x5e608f['push'](_0x56ce3d);}}return _0x5e608f;}async['_loadRoot'](_0x1d1e1b,_0x44ff40,_0x24a89b){this['_getOperationsFromInitData']({[_0x1d1e1b]:_0x44ff40},{[_0x1d1e1b]:_0x24a89b})['forEach']((_0x1872d2,_0xa3e0cb)=>{_0x1872d2['baseVersion']=this['_document']['version']+_0xa3e0cb,_0x1872d2['_isInit']=!0x0,this['_saveOperationInBuffer'](_0x1872d2);}),this['_sendBufferedOperationsDelayed'](),await this['_waitUntilSynced']();}async['_handleInitialConnectionData'](_0x42b738,_0x3ff059){let _0x535534;this['_offset']=_0x42b738['offset'];const _0x3cf721=_0x42b738['wereChangesApplied']&&!_0x42b738['initData'],_0x427f16=_0x3cf721?0x0:_0x42b738['data']['baseVersion'];if(_0x3ff059['forEach'](_0x4c316b=>{_0x4c316b['_isInit']=!0x0,_0x4c316b['createdAt']=_0x42b738['sessionCreatedAt'],_0x4c316b['_authorId']=null;}),_0x3cf721)_0x535534=_0x3ff059,this['_applyOperationsSet'](_0x535534,_0x3cf721);else{if(_0x42b738['initData']){const _0x5ca62b=this['_getOperationsFromInitData'](_0x42b738['initData']);this['_document']['history']['version']=-_0x5ca62b['length'],_0x5ca62b['forEach'](_0x47dd3c=>{_0x47dd3c['baseVersion']-=_0x5ca62b['length'],_0x47dd3c['createdAt']=_0x42b738['sessionCreatedAt'],_0x47dd3c['_isInit']=!0x0,_0x47dd3c['_authorId']=null;}),this['_applyOperationsSet'](_0x5ca62b,!0x0),this['serverHistory']['version']=-_0x5ca62b['length']+this['_offset'],this['_updateServerHistory'](_0x5ca62b);}this['_document']['history']['version']=_0x427f16,_0x535534=this['_decompressOperations'](_0x42b738['data'],_0x42b738['metadata']),await this['_fetchMissingUsers'](_0x535534),this['_applyOperationsSet'](_0x535534,_0x3cf721);}_0x42b738['lastOperationId']&&(this['_operationIdentifier']['setIdForTheLastOperation'](_0x535534,_0x42b738['lastOperationId']),this['_lastSyncedOperationId']=_0x42b738['lastOperationId']),this['serverHistory']['version']=_0x427f16+this['_offset'],this['_updateServerHistory'](_0x535534),_0x3ff059['filter'](_0x5a25f2=>{const _0xf212ad=this['_getAffectedRoot'](_0x5a25f2);return _0xf212ad&&!this['_knownRootNames']['has'](_0xf212ad);})['forEach']((_0x4c9b72,_0x47d518)=>{_0x4c9b72['baseVersion']=this['_document']['version']+_0x47d518,this['_saveOperationInBuffer'](_0x4c9b72);}),this['_shouldSendUpdate']()?(this['_currentBufferDelay']=0x0,this['_sendBufferedOperationsDelayed'](!0x0),await this['_waitUntilSynced']()):(this['_isPendingUpdate']=!0x1,this['_clearPendingAction']());}['_crash'](_0x2ee220,_0x2115b8,_0x4c0f0f){throw this['_isPendingUpdate']=!0x0,_0x2115b8&&console['error'](_0x2115b8),_0x4c0f0f&&this['editor']['enableReadOnlyMode']('realtimecollaborationclient-error'),new _0x33cd62(_0x2ee220,this['editor']);}['_saveOperationInBuffer'](_0x1912f1){this['_knownOperations']['has'](_0x1912f1)||(this['_knownOperations']['add'](_0x1912f1),this['_bufferedOperations']['push'](_0x1912f1),this['_pendingAction']||'marker'==_0x1912f1['type']&&!_0x1912f1['affectsData']||this['_setPendingAction']());}['_sendBufferedOperationsDelayed'](_0x2e0a9e=!0x1){!_0x2e0a9e&&this['_isPendingUpdate']||(this['_isPendingUpdate']=!0x0,clearTimeout(this['_sendBufferedOperationsDelayId']),this['_sendBufferedOperationsDelayId']=setTimeout(()=>{this['_sendBufferedOperations']()['then'](_0x545872=>{_0x545872&&(this['_clearPendingAction'](),this['_isPendingUpdate']=!0x1);})['catch'](_0x259569=>{this['_clearPendingAction'](),this['_isPendingUpdate']=!0x1,function(_0x3e619f){return _0x3e619f['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x3e619f['message']['startsWith']('cloud-services-internal-error:\x20Collaborative\x20Editing\x20Service\x20is\x20not\x20connected.')||_0x3e619f['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}(_0x259569)||this['_crash'](_0x259569['message'],_0x259569,!0x0);});},this['_currentBufferDelay']));}['_waitUntilSynced'](){return new Promise(_0x290145=>{this['on']('change:_isPendingUpdate',()=>{_0x290145();});});}async['_sendBufferedOperations'](){const _0x2340a5=this['editor']['plugins']['get'](H);if(this['_shouldSendSelectionUpdate']()&&(_0x2340a5['createUserMarkerOperations'](),this['_hasSelectionChanged']=!0x1),!this['_shouldSendUpdate']())return!0x0;const _0x502e01=[...this['_bufferedOperations']];for(const _0x46d1d1 of _0x502e01)_0x46d1d1['wasUndone']=this['_document']['history']['isUndoneOperation'](_0x46d1d1);const _0x5e97f9=this['_operationIdentifier']['getIdOfTheLastOperation'](_0x502e01),_0x2aa967=K++,_0x18aeb8=this['_compressOperations'](_0x502e01),_0xb1c49c=await this['_service']['sendOperations'](_0x18aeb8,_0x18aeb8['baseVersion'],_0x5e97f9);try{return await this['_handleServerResponse'](_0x502e01,_0xb1c49c,_0x2aa967);}catch(_0x46b2a8){return this['_crash']('realtimecollaborationclient-sendbufferedoperations',_0x46b2a8);}}async['_handleServerResponse'](_0x34643b,_0x541c64,_0xde7253){if('error'in _0x541c64)throw _0x541c64['error'];let _0x5a56fa=!0x1;if(_0x541c64['wereChangesApplied']){_0x541c64['lastOperationId']&&(this['_lastSyncedOperationId']=_0x541c64['lastOperationId']),this['_bufferedOperations']=this['_bufferedOperations']['filter'](_0x247284=>!_0x34643b['includes'](_0x247284));for(const _0x28589b of _0x34643b)_0x28589b['createdAt']='lastOperationAcceptedAt'in _0x541c64&&_0x541c64['lastOperationAcceptedAt']||void 0x0;Q(_0x34643b,_0x541c64['version']-_0x34643b['length']),this['_updateServerHistory'](_0x34643b);const _0x4832fd=_0x34643b['filter'](_0x5c82e0=>{if(!_0x5c82e0['_isInit'])return!0x1;const _0x530283=this['_getAffectedRoot'](_0x5c82e0);return _0x530283&&!this['_knownRootNames']['has'](_0x530283);});Q(_0x4832fd,this['_document']['version']),this['_applyOperationsSet'](_0x4832fd),_0x5a56fa=!0x0,this['_currentBufferDelay']=this['_baseBufferDelay'];}else{const _0x58dfda=this['_decompressOperations'](_0x541c64['data'],_0x541c64['metadata'])['filter'](_0x465fe9=>_0x465fe9['baseVersion']>=this['_lastServerVersion']);_0x58dfda['forEach'](_0x3d180e=>this['_addKnownRoot'](_0x3d180e)),this['_bufferedOperations']=this['_bufferedOperations']['filter'](_0x32042b=>!_0x32042b['_isInit']||!this['_knownRootNames']['has'](this['_getAffectedRoot'](_0x32042b))),this['_bufferedOperations']['length']&&Q(this['_bufferedOperations'],this['_bufferedOperations'][0x0]['baseVersion']),await this['_fetchMissingUsers'](_0x58dfda),_0x5a56fa=this['_handleExternalOperations'](_0x58dfda,_0x541c64['version'],_0x541c64['lastOperationId']),this['_currentBufferDelay']=Math['round'](this['_currentBufferDelay']/0x2);}return _0x5a56fa?!this['_shouldSendUpdate']()||(this['_sendBufferedOperationsDelayed'](!0x0),!0x1):this['_crash']('realtimecollaborationclient-handleserverresponse');}['_handleExternalOperations'](_0x4f6009,_0x3800f2,_0x57f5d2){try{const _0x140ec={'document':this['_document'],'useRelations':!0x1,'padWithNoOps':!0x0},{operationsA:_0x58a13,operationsB:_0x1f7d99,originalOperations:_0x6cf248}=_0x357384(_0x4f6009,this['_bufferedOperations'],_0x140ec);Q(_0x58a13,this['_document']['version']),Q(_0x1f7d99,_0x3800f2);for(const _0x1f83d4 of _0x58a13){const _0xc19d1=_0x6cf248['get'](_0x1f83d4);_0x1f83d4['_authorId']=_0xc19d1?_0xc19d1['_authorId']:null;}_0x57f5d2&&(this['_operationIdentifier']['setIdForTheLastOperation'](_0x4f6009,_0x57f5d2),this['_lastSyncedOperationId']=_0x57f5d2),this['_bufferedOperations']=[..._0x1f7d99],this['_applyOperationsSet'](_0x58a13),this['_updateServerHistory'](_0x4f6009);}catch(_0x2b35ec){return console['error'](_0x2b35ec),!0x1;}return!0x0;}['_applyOperationsSet'](_0x4c9272,_0x2be4d4=!0x1){this['editor']['model']['enqueueChange']({'isUndoable':!0x1,'isLocal':!0x1},_0x42ea55=>{for(const _0x1b5aac of _0x4c9272)this['_knownOperations']['add'](_0x1b5aac),this['_addKnownRoot'](_0x1b5aac),_0x42ea55['batch']['addOperation'](_0x1b5aac),this['editor']['model']['applyOperation'](_0x1b5aac);});}['_addKnownRoot'](_0xafeeac){const _0x364bf9=this['_getAffectedRoot'](_0xafeeac);_0x364bf9&&this['_knownRootNames']['add'](_0x364bf9);}['_getAffectedRoot'](_0x27b824){let _0xcbe210,_0x5d61c;switch(_0x27b824['type']){case'insert':_0xcbe210=_0x27b824['position']['root'];break;case'marker':if(_0x5d61c=_0x27b824['newRange'],!_0x5d61c)return null;_0xcbe210=_0x5d61c['root'];break;case'addRootAttribute':_0xcbe210=_0x27b824['root'];break;case'addRoot':_0xcbe210=_0x27b824['affectedSelectable'];break;case'move':_0xcbe210=_0x27b824['targetPosition']['root'];break;default:return null;}return _0xcbe210['rootName'];}['_updateServerHistory'](_0x15ea2a){_0x15ea2a['forEach'](_0x2d8c9b=>{const _0x4fa1e9=_0x2d8c9b['clone']();_0x4fa1e9['_authorId']=_0x2d8c9b['_authorId'],_0x4fa1e9['_isInit']=!!_0x2d8c9b['_isInit'],_0x4fa1e9['createdAt']=_0x2d8c9b['createdAt'],_0x4fa1e9['baseVersion']+=this['_offset'],_0x2d8c9b['_isDisconnection']&&this['_disconnectionOperations']['add'](_0x4fa1e9),this['serverHistory']['addOperation'](_0x4fa1e9);});}['_handleReconnectionError'](_0x4fe734){const _0x1a7826=this['editor']['plugins']['get']('Notification'),_0x5750c1=this['editor']['locale'];_0x4fe734||(_0x4fe734=q(_0x5750c1,'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.')),_0x1a7826['showWarning'](_0x4fe734,{'title':q(_0x5750c1,'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'](_0x4bc24d)['add'](q(this['editor']['locale'],'PENDING_ACTION_SENDING_DATA')));}['_clearPendingAction'](){this['_pendingAction']&&(this['editor']['plugins']['get'](_0x4bc24d)['remove'](this['_pendingAction']),this['_pendingAction']=null);}['_compressOperations'](_0x15236b){const _0x5e7a5b=_0x15236b['map'](_0x416d49=>_0x416d49['toJSON']());return this['_compressor']['compress'](_0x5e7a5b);}['_decompressOperations'](_0x2f02cf,_0xf631e){return this['_compressor']['decompress'](_0x2f02cf)['map']((_0x10f3e4,_0x50c1aa)=>{const _0x294143='init'==_0xf631e[_0x50c1aa]['type'];if('InsertOperation'==_0x10f3e4['__className']){const _0x17a511=_0x10f3e4['position']['root'];!this['_document']['getRoot'](_0x17a511)&&(this['_document']['createRoot']('$root',_0x17a511)['_isAttached']=!0x1);}const _0x5c9ebb=_0x1b15ef['fromJSON'](_0x10f3e4,this['_document']);return _0x5c9ebb['wasUndone']=_0x10f3e4['wasUndone'],_0x5c9ebb['_isInit']=_0x294143,_0x5c9ebb['_authorId']=_0x294143?null:_0xf631e[_0x50c1aa]['userId'],_0x5c9ebb['_isDisconnection']='cs:removeUser'===_0xf631e[_0x50c1aa]['type'],_0x5c9ebb['createdAt']=_0xf631e[_0x50c1aa]['createdAt'],_0x5c9ebb;});}['_refreshUserSelectionMarkers'](){this['_hasSelectionChanged']=!0x0,this['_shouldSendSelectionUpdate']()?this['_sendBufferedOperationsDelayed']():this['_hasSelectionChanged']=!0x1;}['_shouldSendSelectionUpdate'](){const _0x22d006=this['editor']['plugins']['get'](i)['channelSessions']['get'](this['_channelId']);return!this['editor']['isReadOnly']&&!!_0x22d006&&_0x22d006['length']>0x1&&this['_hasSelectionChanged'];}['_shouldSendUpdate'](){return this['_bufferedOperations']['length']>0x0||this['_shouldSendSelectionUpdate']();}}class J extends Error{}function Q(_0xd57a00,_0x1cfcfb){for(const _0x11af4d of _0xd57a00)_0x11af4d['baseVersion']=_0x1cfcfb++;}class X{['_ignoredOperations'];['_operationToId'];constructor(_0x5a3c47){this['_ignoredOperations']=_0x5a3c47,this['_operationToId']=new WeakMap();}['getIdOfTheLastOperation'](_0xba9098){let _0x263a0e=_0xba9098['length'];for(;_0x263a0e--;){const _0x4ccebf=_0xba9098[_0x263a0e];if(!this['_ignoredOperations']['has'](_0x4ccebf)){if(!this['_operationToId']['has'](_0x4ccebf)){const _0x6e094b=_0x243928()['slice'](0x1,0x12);this['_operationToId']['set'](_0x4ccebf,_0x6e094b);}return this['_operationToId']['get'](_0x4ccebf);}}}['setIdForTheLastOperation'](_0x1e4ef5,_0x3a3e98){if(!_0x3a3e98)return;let _0x45b083=_0x1e4ef5['length'];for(;_0x45b083--;){const _0x3d5fbe=_0x1e4ef5[_0x45b083];this['_ignoredOperations']['has'](_0x3d5fbe)||this['_operationToId']['set'](_0x3d5fbe,_0x3a3e98);}}}class n extends _0x3aa519{static get['requires'](){return[l];}static get['pluginName'](){return'RealTimeCollaborativeEditing';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}class a extends _0x44cad5{static ['CommentsService']=/* #__PURE__ -- @preserve */
26
- ((()=>_0x2f050d)());['_services'];static get['requires'](){return[c,'CommentsRepository',i,_0x1f4be7];}static get['pluginName'](){return'CloudServicesCommentsAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x3433c1){super(_0x3433c1),this['_services']=new Map();}async['init'](){const _0x4d2af8=this['context'],_0x3b9e0e=_0x4d2af8['plugins']['get']('CommentsRepository');if(_0x4d2af8['plugins']['get'](c)['addToReconnectionStack'](this),_0x3b9e0e['adapter']={'addCommentThread':async({channelId:_0x23abf0,threadId:_0xbe9453,comments:_0x495579,resolvedAt:_0x4a01f1,resolvedBy:_0x188b65,context:_0x1c44fe,attributes:_0x9f4569})=>{const _0x3da180=await this['_getService'](_0x23abf0)['addCommentThread']({'commentThreadId':_0xbe9453,'comments':_0x495579['map'](_0x5d96f5=>function(_0x17de97,_0x4680df,_0x2ff6fa){return{'commentThreadId':_0x2ff6fa,'commentId':_0x17de97['commentId'],'userId':_0x17de97['authorId'],'content':_0x17de97['content'],'documentId':_0x4680df,'createdAt':_0x17de97['createdAt'],'attributes':_0x17de97['attributes']||{}};}(_0x5d96f5,_0x23abf0,_0xbe9453)),'resolvedAt':_0x4a01f1,'resolvedBy':_0x188b65,'context':_0x1c44fe,'attributes':_0x9f4569})['catch'](ut);return{'threadId':_0x3da180['commentThreadId'],'comments':_0x3da180['comments']};},'getCommentThread':async({channelId:_0x28ea0c,threadId:_0x3d636d})=>{const _0x257545=await this['_getService'](_0x28ea0c)['getCommentThread'](_0x3d636d)['catch'](ut);return _0x257545['deletedAt']?null:(await this['_fetchMissingUsersForThreads']([_0x257545]),{'threadId':_0x257545['commentThreadId'],'comments':_0x257545['comments']['map'](S),'context':_0x257545['context'],'resolvedAt':_0x257545['resolvedAt'],'resolvedBy':_0x257545['resolvedBy'],'attributes':_0x257545['attributes']||{}});},'updateCommentThread':async({channelId:_0x2f57ba,threadId:_0x2e8540,context:_0x1352b5,unlinkedAt:_0x520e8b,attributes:_0x5a28d1})=>this['_getService'](_0x2f57ba)['updateCommentThread']({'commentThreadId':_0x2e8540,'context':_0x1352b5,'attributes':_0x5a28d1,'unlinkedAt':_0x520e8b})['catch'](B)['catch'](ut),'resolveCommentThread':async({channelId:_0x5e5af2,threadId:_0x251fc8})=>{const _0x5be326=await this['_getService'](_0x5e5af2)['resolveCommentThread'](_0x251fc8)['catch'](B)['catch'](ut);return{'threadId':_0x5be326['commentThreadId'],'resolvedAt':_0x5be326['resolvedAt'],'resolvedBy':_0x5be326['resolvedBy']};},'reopenCommentThread':async({channelId:_0xf57daa,threadId:_0x5b11d6})=>this['_getService'](_0xf57daa)['reopenCommentThread'](_0x5b11d6)['catch'](B)['catch'](ut),'removeCommentThread':({channelId:_0x55377a,threadId:_0x3cb021})=>this['_getService'](_0x55377a)['removeCommentThread'](_0x3cb021)['catch'](B)['catch'](ut),'addComment':({channelId:_0x42a15d,threadId:_0x593405,commentId:_0x139229,content:_0x1117bf,attributes:_0x29a96d})=>this['_getService'](_0x42a15d)['addComment'](_0x593405,_0x139229,_0x1117bf,_0x29a96d)['catch'](ut),'updateComment':({channelId:_0x4e2d90,threadId:_0x141cb7,commentId:_0x56e5c8,content:_0x16b21b,attributes:_0x18b7e7})=>this['_getService'](_0x4e2d90)['updateComment'](_0x141cb7,_0x56e5c8,_0x16b21b,_0x18b7e7)['catch'](B)['catch'](ut),'removeComment':({channelId:_0x59fe00,threadId:_0x2b6bd5,commentId:_0x2e0d87})=>this['_getService'](_0x59fe00)['removeComment'](_0x2b6bd5,_0x2e0d87)['catch'](B)['catch'](ut)},_0x4d2af8 instanceof _0x36edd1){const _0x8b48e=_0x4d2af8['config']['get']('collaboration.channelId'),_0x541806=_0x4d2af8['plugins']['get'](i);await this['_setUpService'](_0x8b48e);const _0x38801b=await this['_services']['get'](_0x8b48e)['getConnectedSessions']();this['listenTo'](_0x541806,'sessionAdd:'+_0x8b48e,(_0x2e40b4,{session:_0x525753})=>{_0x525753['id']===_0x541806['mySessionId']&&(_0x2e40b4['off'](),this['context']['plugins']['get']('Permissions')['setPermissions'](_0x525753['permissions'],_0x8b48e));}),_0x541806['register'](_0x8b48e,_0x38801b);}}async['_setUpService'](_0x437841){if(this['_services']['has'](_0x437841))throw new _0x33cd62('cloudservicescommentsadapter-connect-already-connected',null,{'channelId':_0x437841});const _0x3ffb2b=this['context']['plugins']['get']('CommentsRepository'),_0x11c5d0=new a['CommentsService'](_0x437841);this['_services']['set'](_0x437841,_0x11c5d0),this['listenTo'](_0x11c5d0,'commentThreadAdded',(_0x382505,_0x3da07a)=>{const {commentThreadId:_0xbf7ed9,documentId:_0x422ee3,context:_0x370f4d,attributes:_0x31239d,resolvedAt:_0x277f37,resolvedBy:_0x92974d,comments:_0x1f7bd7}=_0x3da07a;_0x3ffb2b['getCommentThread'](_0xbf7ed9)||_0x3ffb2b['addCommentThread']({'threadId':_0xbf7ed9,'channelId':_0x422ee3,'comments':_0x1f7bd7?_0x1f7bd7['map'](S):[],'context':_0x370f4d,'attributes':_0x31239d,'resolvedAt':_0x277f37,'resolvedBy':_0x92974d,'isFromAdapter':!0x0});}),this['listenTo'](_0x11c5d0,'commentThreadUpdated',(_0x41c6b7,{commentThreadId:_0x2a6914,documentId:_0x8c8ccf,context:_0x198dd4,unlinkedAt:_0x19a37c,attributes:_0x314f4e})=>{_0x3ffb2b['getCommentThread'](_0x2a6914)&&_0x3ffb2b['updateCommentThread']({'threadId':_0x2a6914,'channelId':_0x8c8ccf,'context':_0x198dd4,'unlinkedAt':_0x19a37c,'attributes':_0x314f4e,'isFromAdapter':!0x0});}),this['listenTo'](_0x11c5d0,'commentThreadResolved',(_0x314326,{commentThreadId:_0x2df02f,resolvedBy:_0x124112,resolvedAt:_0x2fa4bc})=>{const _0xdfb077=_0x3ffb2b['getCommentThread'](_0x2df02f);_0xdfb077&&_0xdfb077['resolve']({'resolvedBy':_0x124112,'resolvedAt':_0x2fa4bc,'isFromAdapter':!0x0});}),this['listenTo'](_0x11c5d0,'commentThreadReopened',(_0x362c4e,{commentThreadId:_0x346829})=>{const _0x53f862=_0x3ffb2b['getCommentThread'](_0x346829);_0x53f862&&_0x53f862['reopen']({'isFromAdapter':!0x0});}),this['listenTo'](_0x11c5d0,'commentThreadRemoved',(_0x3e7040,{commentThreadId:_0x44eb60})=>{const _0x1396c3=_0x3ffb2b['getCommentThread'](_0x44eb60);_0x1396c3&&_0x1396c3['remove']({'isFromAdapter':!0x0});}),this['listenTo'](_0x11c5d0,'commentAdded',(_0x17e232,_0x53c34f)=>{const _0x10d572=_0x53c34f['commentThreadId'],_0x5154ca=_0x3ffb2b['getCommentThread'](_0x10d572);_0x5154ca&&_0x5154ca['addComment']({...S(_0x53c34f),'isFromAdapter':!0x0});}),this['listenTo'](_0x11c5d0,'commentUpdated',(_0x1133fe,{commentThreadId:_0xe8c026,commentId:_0x219b8d,content:_0x10ad7c,attributes:_0x539d6b})=>{const _0x20d1cd=_0x3ffb2b['getCommentThread'](_0xe8c026);if(_0x20d1cd){const _0x25e8ba=_0x20d1cd['getComment'](_0x219b8d);_0x25e8ba&&_0x25e8ba['update']({'content':_0x10ad7c,'attributes':_0x539d6b,'isFromAdapter':!0x0});}}),this['listenTo'](_0x11c5d0,'commentRemoved',(_0x10fc01,{commentThreadId:_0x1aa4a5,commentId:_0x192cec})=>{const _0x100f5a=_0x3ffb2b['getCommentThread'](_0x1aa4a5);if(_0x100f5a){const _0x5d4b5b=_0x100f5a['getComment'](_0x192cec);_0x5d4b5b&&_0x5d4b5b['remove']({'isFromAdapter':!0x0});}}),await this['_connectService'](_0x437841);}['destroy'](){if(this['context']instanceof _0x36edd1){const _0x5c10e9=this['context']['config']['get']('collaboration.channelId');this['_terminateService'](_0x5c10e9);}}['_terminateService'](_0x3cafa9){if(!this['_services']['has'](_0x3cafa9))throw new _0x33cd62('cloudservicescommentsadapter-disconnect-not-exist',null,{'channelId':_0x3cafa9});this['_getService'](_0x3cafa9)['disconnect'](),this['_services']['delete'](_0x3cafa9);}async['reconnect'](){for(const _0x3fd3c5 of this['_services']['keys']())await this['_connectService'](_0x3fd3c5);if(this['context']instanceof _0x36edd1){const _0x3be5ca=this['context']['config']['get']('collaboration.channelId'),_0x358314=this['context']['plugins']['get'](i);_0x358314['unregister'](_0x3be5ca);const _0x16f946=await this['_services']['get'](_0x3be5ca)['getConnectedSessions']();_0x358314['register'](_0x3be5ca,_0x16f946);}}async['_connectService'](_0x13129e){const {connection:_0x1d99d6}=this['context']['plugins']['get'](c),_0x1432e7=this['context']['plugins']['get']('CommentsRepository'),_0xde9470=this['_services']['get'](_0x13129e),_0x49192d=await _0xde9470['connect'](_0x1d99d6);await this['_fetchMissingUsersForThreads'](_0x49192d);const _0x5a0ed1=new Set(Array['from'](_0x1432e7['getCommentThreads']({'channelId':_0x13129e}),_0x1e5962=>_0x1e5962['id']));for(const _0x55d3ba of _0x49192d)_0x55d3ba['deletedAt']||_0x5a0ed1['delete'](_0x55d3ba['commentThreadId']);for(const _0x30fdc7 of _0x5a0ed1)_0x1432e7['getCommentThread'](_0x30fdc7)['remove']({'isFromAdapter':!0x0});for(const _0x1c35e9 of _0x49192d){let _0x494108=_0x1432e7['getCommentThread'](_0x1c35e9['commentThreadId']);const {commentThreadId:_0x508a84,context:_0x294d29,attributes:_0x5309c2,resolvedBy:_0x13a2b6,resolvedAt:_0x53b0c2,unlinkedAt:_0x124e9d,deletedAt:_0x1b85fd}=_0x1c35e9;if(_0x1b85fd)continue;_0x494108||(_0x494108=_0x1432e7['addCommentThread']({'channelId':_0x13129e,'threadId':_0x508a84,'context':_0x294d29,'attributes':_0x5309c2||{},'resolvedBy':_0x13a2b6,'resolvedAt':_0x53b0c2,'unlinkedAt':_0x124e9d,'isFromAdapter':!0x0}));const _0x4d491f=new Set(Array['from'](_0x494108['comments'],_0x200014=>_0x200014['id']));for(const _0x487e40 of _0x1c35e9['comments'])_0x4d491f['delete'](_0x487e40['commentId']);for(const _0x48aaa8 of _0x4d491f)_0x494108['getComment'](_0x48aaa8)['remove']({'isFromAdapter':!0x0});for(const _0x5aaecd of _0x1c35e9['comments']){const _0x558a99=_0x494108['getComment'](_0x5aaecd['commentId']);_0x558a99?_0x558a99['content']!==_0x5aaecd['content']&&_0x558a99['update']({'content':_0x5aaecd['content'],'isFromAdapter':!0x0}):_0x494108['addComment'](Object['assign'](S(_0x5aaecd),{'isFromAdapter':!0x0}));}}}['_getService'](_0xd294dc){if(!this['_services']['has'](_0xd294dc))throw new _0x33cd62('cloudservicescommentsadapter-service-not-exist',null,{'channelId':_0xd294dc});return this['_services']['get'](_0xd294dc);}async['_fetchMissingUsersForThreads'](_0x31f178){const _0x4428aa=this['context']['plugins']['get'](_0x1f4be7),{connection:_0x44af09}=this['context']['plugins']['get'](c),_0x3cbff6=new Set();for(const {resolvedBy:_0x1dd6a5,comments:_0x405bf2}of _0x31f178){_0x1dd6a5&&!_0x4428aa['getUser'](_0x1dd6a5)&&_0x3cbff6['add'](_0x1dd6a5);for(const {userId:_0xb083c2}of _0x405bf2)_0x4428aa['getUser'](_0xb083c2)||_0x3cbff6['add'](_0xb083c2);}if(0x0===_0x3cbff6['size'])return;const _0x146a2f=await dt['getMany'](_0x44af09,Array['from'](_0x3cbff6));for(const _0x52edfc of _0x146a2f)_0x4428aa['getUser'](_0x52edfc['id'])||_0x4428aa['addUser'](_0x52edfc);}}async function B(_0x608616){if('404'!==_0x608616['code'])throw _0x608616;}function ut(_0x582153){if((_0x3bca23=_0x582153)['message']['startsWith']('cloud-services-internal-error:\x20Comments\x20Service\x20is\x20not\x20connected.')||_0x3bca23['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x3bca23['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.'))return new Promise(()=>{});var _0x3bca23;throw _0x582153;}function S(_0x24fdb6){return{'threadId':_0x24fdb6['commentThreadId'],'commentId':_0x24fdb6['commentId'],'content':_0x24fdb6['content'],'createdAt':_0x24fdb6['createdAt'],'authorId':_0x24fdb6['userId'],'attributes':_0x24fdb6['attributes']||{}};}class f extends _0x3aa519{static ['TrackChangesService']=/* #__PURE__ -- @preserve */
27
- ((()=>et)());['_bufferedRequests'];['_trackChangesService'];static get['requires'](){return[a,'TrackChangesEditing',c];}static get['pluginName'](){return'CloudServicesTrackChangesAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0xacca7c){super(_0xacca7c);const _0x1ae86b=this['editor']['config']['get']('collaboration.channelId');this['_bufferedRequests']=new Map(),this['_trackChangesService']=new f['TrackChangesService'](_0x1ae86b);}['init'](){const _0x2734bd=this['editor']['plugins']['get'](c),_0x29f6a3=this['editor']['plugins']['get']('TrackChangesEditing');return _0x29f6a3['adapter']={'getSuggestion':async _0x1fd2e9=>{await this['_waitForServiceReady']();const _0x1c1113=await this['_trackChangesService']['get'](_0x1fd2e9)['catch'](R);return await this['_fetchMissingUsersForThreads']([_0x1c1113]),_0x1c1113;},'addSuggestion':async({id:_0x50b712,type:_0x384576,data:_0x187bb5,originalSuggestionId:_0x567320,attributes:_0x4ad568})=>{await this['_waitForServiceReady']();const _0x2f9af9={'id':_0x50b712,'type':_0x384576,'data':_0x187bb5,'originalSuggestionId':_0x567320,'attributes':_0x4ad568},_0x7a08da=await this['_trackChangesService']['add'](_0x50b712,_0x384576,_0x187bb5,_0x567320,_0x4ad568)['catch'](_0x4801be=>{if(ft(_0x4801be))return new Promise(_0x159a19=>{this['_bufferedRequests']['set'](_0x50b712,{'resolve':_0x159a19,'suggestionData':_0x2f9af9});});throw _0x4801be;});return this['_bufferedRequests']['delete'](_0x50b712),_0x7a08da;},'updateSuggestion':async(_0x5864c7,_0xa33c2a)=>{if(await this['_waitForServiceReady'](),'open'!==_0xa33c2a['state'])return this['_trackChangesService']['update'](_0x5864c7,_0xa33c2a)['catch'](R);}},this['listenTo'](this['_trackChangesService'],'suggestionUpdated',(_0x462683,_0x3fd7e4)=>{_0x29f6a3['hasSuggestion'](_0x3fd7e4['id'])&&(_0x29f6a3['getSuggestion'](_0x3fd7e4['id'])['attributes']=_0x3fd7e4['attributes']);}),this['_trackChangesService']['connect'](_0x2734bd['connection'])['then'](_0x3d93b3=>(_0x2734bd['addToReconnectionStack'](this),this['_fetchMissingUsersForThreads'](_0x3d93b3)['then'](()=>{for(const _0x23bf10 of _0x3d93b3){_0x29f6a3['addSuggestionData'](_0x23bf10)['_saved']=!0x0;}})));}async['reconnect'](){const _0x216069=this['editor']['plugins']['get']('TrackChangesEditing'),{connection:_0x474ec4}=this['editor']['plugins']['get'](c),_0x41b62c=await this['_trackChangesService']['connect'](_0x474ec4);await this['_fetchMissingUsersForThreads'](_0x41b62c);for(const {suggestionData:_0x512cd2,resolve:_0x5ff173}of this['_bufferedRequests']['values']()){let _0x3b498b=_0x41b62c['find'](_0x1bc2a5=>_0x1bc2a5['id']===_0x512cd2['id']);_0x3b498b||(_0x3b498b=await this['_trackChangesService']['add'](_0x512cd2['id'],_0x512cd2['type'],_0x512cd2['data'],_0x512cd2['originalSuggestionId'])),_0x5ff173(_0x3b498b);}for(const _0x3929dd of _0x41b62c)_0x216069['hasSuggestion'](_0x3929dd['id'])||_0x216069['addSuggestionData'](_0x3929dd);}async['_waitForServiceReady'](){this['_trackChangesService']['isConnected']||await new Promise(_0x3659a4=>{this['listenTo'](this['_trackChangesService'],'connected',_0x213be1=>{_0x213be1['off'](),_0x3659a4();});});}async['_fetchMissingUsersForThreads'](_0x2baeae){const _0x507cfe=this['editor']['plugins']['get'](_0x1f4be7),{connection:_0xa456e9}=this['editor']['plugins']['get'](c),_0x3fc290=new Set();for(const {authorId:_0x16d01f}of _0x2baeae)_0x507cfe['getUser'](_0x16d01f)||_0x3fc290['add'](_0x16d01f);if(0x0===_0x3fc290['size'])return;const _0x12ae8b=await dt['getMany'](_0xa456e9,Array['from'](_0x3fc290));for(const _0x1b8164 of _0x12ae8b)_0x507cfe['getUser'](_0x1b8164['id'])||_0x507cfe['addUser'](_0x1b8164);}}function R(_0x2fb935){if(ft(_0x2fb935))return new Promise(()=>{});throw _0x2fb935;}function ft(_0x585bba){return _0x585bba['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x585bba['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}class m extends _0x3aa519{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 _0x2deff8=this['editor']['plugins']['get'](c),_0x14abaa=this['editor']['plugins']['get']('CommentsEditing'),_0x176a34=this['editor']['plugins']['get'](a);return this['editor']['data']['once']('ready',()=>{this['listenTo'](_0x2deff8,'change:state',(_0x59a0bc,_0x26b75d,_0x34ec57)=>{_0x14abaa['isThreadsLoadingPaused']='connected'!==_0x34ec57;});}),this['listenTo'](_0x2deff8,'change:state',(_0x2bce5,_0xd0b3d0,_0xd2f85b)=>{this['editor']['plugins']['get']('CommentsRepository')['switchReadOnly']('connected'!==_0xd2f85b);}),_0x176a34['_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 _0x3aa519{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 _0x3aa519{static ['RevisionHistoryService']=/* #__PURE__ -- @preserve */
28
- ((()=>it)());['_lastRequestId'];['_revisionTracker'];['_revisionHistoryService'];['_oldOffset'];static get['requires'](){return[c,l,'RevisionTracker',i,_0x1f4be7];}static get['pluginName'](){return'CloudServicesRevisionHistoryAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x2eed43){super(_0x2eed43);const _0x2d9feb=this['editor']['config']['get']('collaboration.channelId');this['_lastRequestId']=null,this['_revisionTracker']=this['editor']['plugins']['get']('RevisionTracker'),this['_revisionHistoryService']=new u['RevisionHistoryService'](_0x2d9feb);}async['init'](){const _0x53c50a=this['editor']['plugins']['get'](l),_0x2b31fd=_0x53c50a['serverHistory'],_0x322413=this['editor']['plugins']['get'](c);this['_revisionTracker']['setSource']({'history':_0x2b31fd,'getLatestVersion':()=>this['_getLatestVersion'](),'getCurrentRevisionId':()=>_0x53c50a['sessionId']});const _0x356733=this['editor']['config']['get']('cloudServices.bundleVersion')||nt,_0x4d73af=await tt['isBundleUploaded'](_0x322413['connection'],_0x356733);this['_revisionTracker']['adapter']={'getRevision':async({revisionId:_0x395b5f})=>(await this['_waitForServiceReady'](),await this['_revisionHistoryService']['getRevision'](_0x395b5f)),'updateRevisions':async _0x5443bd=>{await this['_waitForServiceReady']();const _0x5b790f=this['_revisionTracker']['currentRevision'];if(_0x4d73af&&0x1===_0x5443bd['length']&&_0x5443bd[0x0]['id']===_0x5b790f['id'])return _0x5443bd;for(const _0x207faa of _0x5443bd)_0x207faa['id']===_0x5b790f['id']&&(_0x207faa['isEmptyCurrent']=_0x207faa['fromVersion']===_0x207faa['toVersion']);return this['_revisionHistoryService']['updateRevisions'](_0x5443bd,this['_lastRequestId'])['then'](_0x195e07=>(this['_lastRequestId']=_0x195e07,_0x5443bd))['catch'](_0x57961c=>{if(st(_0x57961c)||'400'===_0x57961c['code']&&void 0x0!==_0x57961c['data']['wrongRequestId']){for(const _0x2e9dea of _0x5443bd){!this['_revisionTracker']['repository']['getRevision'](_0x2e9dea['id'])||this['_revisionTracker']['_bufferUpdate'](_0x2e9dea['id'],_0x2e9dea,!0x1);}if(st(_0x57961c))throw _0x57961c;return _0x5443bd;}throw _0x57961c;});}},this['listenTo'](this['_revisionHistoryService'],'revisionsUpdated',(_0x1e30fa,{revisionsData:_0x517812,requestId:_0x57f5b6})=>{Math['max'](..._0x517812['map'](_0x1107e0=>_0x1107e0['toVersion']))>this['_getLatestVersionFromServerOperations']()-0x1?this['_getLatestVersion']()['then'](()=>{this['_handleRevisionsUpdate'](_0x517812,_0x57f5b6);}):this['_handleRevisionsUpdate'](_0x517812,_0x57f5b6);});const {revisions:_0x5d01c6,requestId:_0x5e6c53}=await this['_revisionHistoryService']['connect'](_0x322413['connection']);_0x322413['addToReconnectionStack'](this),this['_lastRequestId']=_0x5e6c53,await this['_fetchMissingUsers'](_0x5d01c6);for(const _0x3606dd of _0x5d01c6)this['_revisionTracker']['addRevisionData'](_0x3606dd);this['listenTo'](_0x53c50a,'change:_isConnected',(_0x278ed2,_0x26cce8,_0x1c3263)=>{_0x1c3263&&(this['_oldOffset']=_0x53c50a['_offset'],_0x278ed2['off']());}),this['_revisionTracker']['bind']('isEnabled')['to'](_0x322413,'state',_0x36fe05=>_0x36fe05===_0x198497['CONNECTED']);}async['reconnect'](){const _0x5531e4=this['editor']['plugins']['get'](c),_0x4cb8ba=this['editor']['plugins']['get'](l),_0x54273a=async()=>{const _0x3e733a=this['_revisionTracker']['currentRevision'],_0x1ab770=_0x3e733a['id'],_0x4243f9=_0x1ab770!==_0x4cb8ba['sessionId'];if(_0x4243f9){const _0x4ca455=_0x4cb8ba['_offset']-this['_oldOffset'],_0x3802c8=this['_getLatestVersionFromServerOperations']();this['_revisionTracker']['_revisionDataBuilder']['reInit']();if(_0x3e733a['toVersion']+_0x4ca455!==_0x3802c8){const _0x5ad180=_0x3e733a['fromVersion']+_0x4ca455,_0x3059a8=this['editor']['plugins']['get'](_0x1f4be7),_0x34db39=this['_revisionTracker']['buildRevisionData']({'revision':_0x3e733a,'from':_0x5ad180,'to':_0x3802c8});_0x34db39['id']=_0x3e733a['id'];const _0x9f1acf=_0x34db39['authorsIds']['map'](_0x28921a=>_0x3059a8['getUser'](_0x28921a));_0x3e733a['_update']({..._0x34db39,'authors':_0x9f1acf},!0x0),this['_revisionTracker']['_bufferUpdate'](_0x3e733a['id'],_0x34db39,!0x0);}this['_revisionTracker']['_startingVersion']=_0x3802c8,(_0x3e733a['toVersion']===_0x3e733a['fromVersion']&&!this['_revisionTracker']['_bufferedUpdates']['has'](_0x1ab770)&&this['_revisionTracker']['repository']['_revisions']['remove'](_0x1ab770),this['_revisionTracker']['_createCurrentRevision'](_0x3802c8));}const {revisions:_0x5f5798,requestId:_0x1095b6}=await this['_revisionHistoryService']['reconnect'](_0x5531e4['connection'],this['_lastRequestId']);_0x4243f9&&_0x5f5798['length']>0x0?_0x4cb8ba['_handleReconnectionError']():(await this['_fetchMissingUsers'](_0x5f5798),this['_handleRevisionsUpdate'](_0x5f5798,_0x1095b6),this['_revisionTracker']['sendBufferedUpdates']());};return _0x4cb8ba['_isConnected']?_0x54273a():new Promise((_0x2f13c3,_0x5d7e5f)=>{_0x4cb8ba['once']('change:_isConnected',()=>{_0x54273a()['then'](_0x2f13c3)['catch'](_0x5d7e5f);});});}['destroy'](){super['destroy']();}async['_waitForServiceReady'](){this['_revisionHistoryService']['isConnected']||await new Promise(_0x15ea79=>{this['listenTo'](this['_revisionHistoryService'],'connected',_0x2c929e=>{_0x2c929e['off'](),_0x15ea79();});});}['_getLatestVersionFromServerOperations'](){const _0x3841ee=this['editor']['plugins']['get'](l)['serverHistory']['getOperations']()['reverse']();for(const _0x1d1bfb of _0x3841ee)if('marker'!==_0x1d1bfb['type']||_0x1d1bfb['affectsData'])return _0x1d1bfb['baseVersion']+0x1;}['_getLatestVersion'](){const _0x1edb8f=this['editor']['plugins']['get'](l);return new Promise(_0x18acb5=>{_0x1edb8f['_isPendingUpdate']?_0x1edb8f['once']('change:_isPendingUpdate',()=>{_0x18acb5(this['_getLatestVersionFromServerOperations']());}):_0x18acb5(this['_getLatestVersionFromServerOperations']());});}['_handleRevisionsUpdate'](_0x28e5ac,_0x1b3e75){const _0x53e26d=this['_revisionTracker']['repository'];this['_lastRequestId']=_0x1b3e75;for(const _0x400b2a of _0x28e5ac){const _0x1fb475=_0x53e26d['getRevision'](_0x400b2a['id']);if(_0x1fb475){if((_0x400b2a['fromVersion']||_0x400b2a['toVersion'])&&(_0x400b2a['diffData']=null),_0x1fb475===this['_revisionTracker']['currentRevision']){const _0x1ea9ba=Math['max'](_0x1fb475['toVersion'],_0x400b2a['toVersion']),_0x2f2c8b=Math['max'](_0x1fb475['fromVersion'],_0x400b2a['fromVersion']);let _0x3866fe;_0x1fb475['toVersion']===_0x400b2a['toVersion']&&_0x1fb475['fromVersion']===_0x400b2a['fromVersion']?(_0x3866fe=!0x0,this['_preventResendingRevisionData'](_0x400b2a)):_0x400b2a['toVersion']===_0x1ea9ba&&_0x400b2a['fromVersion']===_0x2f2c8b?_0x3866fe=!0x1:(_0x1fb475['toVersion']===_0x1ea9ba&&_0x1fb475['fromVersion']===_0x2f2c8b||this['_fixRevision']({'revision':_0x1fb475,'from':_0x2f2c8b,'to':_0x1ea9ba}),_0x3866fe=!0x0),_0x3866fe&&(delete _0x400b2a['fromVersion'],delete _0x400b2a['toVersion'],delete _0x400b2a['diffData'],delete _0x400b2a['createdAt'],delete _0x400b2a['authorsIds']);}this['_revisionTracker']['setRevisionData'](_0x400b2a),this['_preventResendingRevisionData'](_0x400b2a);}else this['_revisionTracker']['addRevisionData'](_0x400b2a);}const _0x3d03dc=_0x53e26d['getRevisions']();_0x3d03dc['reverse']();for(let _0x13aee5=0x0;_0x13aee5<_0x3d03dc['length']-0x1;_0x13aee5++){const _0x10d5a8=_0x3d03dc[_0x13aee5],_0x3bbca5=_0x3d03dc[_0x13aee5+0x1];if(_0x10d5a8['fromVersion']<_0x3bbca5['toVersion']){const _0xb87b3b=_0x3bbca5['toVersion'],_0x4e2834=Math['max'](_0xb87b3b,_0x10d5a8['toVersion']);this['_fixRevision']({'revision':_0x10d5a8,'from':_0xb87b3b,'to':_0x4e2834});}}}['_fixRevision']({revision:_0x23ff4b,from:_0x45f343,to:_0x2c0124}={}){const _0x24dc57=this['editor']['plugins']['get'](_0x1f4be7),_0x442955=this['_revisionTracker']['buildRevisionData']({'revision':_0x23ff4b,'from':_0x45f343,'to':_0x2c0124});_0x442955['authors']=_0x442955['authorsIds']['map'](_0x187b51=>_0x24dc57['getUser'](_0x187b51)),_0x23ff4b['_update'](_0x442955);}['_preventResendingRevisionData'](_0x9a043e){const _0x4268cf={};_0x4268cf['id']=_0x9a043e['id'];for(const _0x33be21 of Object['keys'](_0x9a043e))'id'!==_0x33be21&&(_0x4268cf[_0x33be21]=void 0x0);this['_revisionTracker']['_bufferUpdate'](_0x4268cf['id'],_0x4268cf,!0x0);}async['_fetchMissingUsers'](_0x47f40d){const _0x21efec=this['editor']['plugins']['get'](_0x1f4be7),{connection:_0x14bec0}=this['editor']['plugins']['get'](c),_0x5e66ac=new Set();for(const _0x38a92c of _0x47f40d){for(const _0x2781d9 of _0x38a92c['authorsIds'])_0x34d294(_0x2781d9);_0x38a92c['creatorId']&&_0x34d294(_0x38a92c['creatorId']);}if(0x0===_0x5e66ac['size'])return;const _0x205709=await dt['getMany'](_0x14bec0,Array['from'](_0x5e66ac));for(const _0x5b280e of _0x205709)_0x21efec['getUser'](_0x5b280e['id'])||_0x21efec['addUser'](_0x5b280e);function _0x34d294(_0x4992c6){_0x21efec['getUser'](_0x4992c6)||_0x5e66ac['add'](_0x4992c6);}}}function st(_0x188f64){return _0x188f64['message']['startsWith']('cloud-services-internal-error:\x20Revision\x20History\x20Service\x20is\x20not\x20connected.')||_0x188f64['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x188f64['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}class g extends _0x3aa519{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 _0x11e2dc{constructor(_0x5cd687){super(_0x5cd687);const _0x2ac43b=this['bindTemplate'];this['set']('usersCount',0x0),this['set']('isHidden',!0x0),this['setTemplate']({'tag':'div','attributes':{'class':['ck','ck-presence-list__counter',_0x2ac43b['if']('isHidden','ck-presence-list__counter--hidden')]},'children':[{'text':_0x2ac43b['to']('usersCount',_0x65d494=>q(_0x5cd687,'CONNECTED_USERS',_0x65d494))}]});}}class es extends _0x11e2dc{['items'];['keystrokes'];constructor(_0x4bf805){super(_0x4bf805);const _0x5afa5e=this['bindTemplate'];this['items']=this['createCollection'](),this['keystrokes']=new _0x47fa68(),this['set']({'hasPopup':!0x1,'isExpanded':!0x1}),this['setTemplate']({'tag':'div','attributes':{'aria-haspopup':_0x5afa5e['if']('hasPopup'),'aria-expanded':_0x5afa5e['to']('isExpanded',_0x4440df=>this['hasPopup']&&String(_0x4440df)),'aria-label':_0x5afa5e['to']('hasPopup',_0x11c49f=>q(_0x4bf805,_0x11c49f?'Collapsed\x20connected\x20users\x20list\x20(press\x20ENTER\x20to\x20open\x20it)':'Connected\x20users\x20list')),'role':'list','tabindex':_0x5afa5e['to']('hasPopup',_0x4f945c=>!!_0x4f945c&&0x0),'class':['ck','ck-presence-list__list']},'children':this['items'],'on':{'click':_0x5afa5e['to'](()=>this['fire']('execute'))}}),this['on']('change:hasPopup',(_0x43ca1b,_0x348fe0,_0x370c38)=>{this['element']&&(_0x370c38?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 _0x11e2dc{['counterView'];['inlineListView'];constructor(_0x386c20){super(_0x386c20);const _0x315796=this['bindTemplate'];this['set']('isCollapsed',!0x0),this['counterView']=new ts(this['locale']),this['inlineListView']=new es(_0x386c20),this['inlineListView']['bind']('hasPopup')['to'](this,'isCollapsed'),this['listenTo'](this['inlineListView']['items'],'change',()=>{for(const _0x5da74a of this['inlineListView']['items'])_0x5da74a['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',_0x315796['if']('isCollapsed','ck-presence-list--collapsed')]},'children':[this['counterView'],this['inlineListView']]});}}class j extends _0x11e2dc{['listWrapperView'];constructor(_0x2a8e97,_0x2fa574){super(_0x2a8e97),this['listWrapperView']=new mt(_0x2a8e97,_0x2fa574),this['setTemplate']({'tag':'div','attributes':{'tabindex':-0x1,'role':'application','class':['ck','ck-presence-list__dropdown-list'],'aria-label':q(_0x2a8e97,'Connected\x20users\x20list\x20dropdown\x20menu')},'children':[this['listWrapperView']]});}}class mt extends _0x40737a{constructor(_0x5f1542,_0x5c904a){super(_0x5f1542);const _0x42f1a6=this['bindTemplate'];this['set']('_isScrollable',!0x1),this['setTemplate']({'tag':_0x5c904a?'div':'ul','attributes':{'class':['ck','ck-reset','ck-list','ck-presence-list__dropdown-list-wrapper',_0x42f1a6['if']('_isScrollable','ck-presence-list__dropdown-list-wrapper_scrollable')],'role':_0x42f1a6['to']('role'),'aria-label':_0x42f1a6['to']('ariaLabel'),'aria-labelledby':_0x42f1a6['to']('ariaLabelledBy')},'children':this['items']}),this['listenTo'](_0x3d2acd['window'],'resize',()=>this['checkIfScrollable']()),this['items']['on']('change',()=>this['checkIfScrollable']());}['render'](){super['render'](),this['checkIfScrollable']();}['checkIfScrollable'](){const _0x3ca287=this['element'];_0x3ca287&&(this['_isScrollable']=Math['max'](_0x3ca287['scrollHeight'],_0x3ca287['clientHeight'])>0.8*window['innerHeight']);}}class k extends rt{['userView'];constructor(_0x273c94,_0x354e76,_0x2199da){super(_0x273c94);const _0x3bc09a=this['bindTemplate'];this['userView']=new ct(_0x273c94,_0x354e76);const _0xe6192c={'tag':'li','attributes':{'class':['ck','ck-presence-list__dropdown-list-item'],'tabindex':-0x1,'role':'presentation','aria-label':_0x354e76['name']},'children':[this['userView'],{'tag':'span','attributes':{'class':['ck','ck-user__full-name']},'children':[{'text':_0x354e76['name']}]},{'tag':'span','attributes':{'class':['ck','ck-presence-list__marker',_0x354e76['color']['getBackgroundColorClass']()],'aria-hidden':'true'}}]};_0x2199da&&(_0xe6192c['tag']='button',_0xe6192c['on']={'click':_0x3bc09a['to'](()=>this['fire']('execute'))}),this['setTemplate'](_0xe6192c);}['focus'](){this['element']['focus']();}}class y extends _0x11e2dc{['userView'];['markerView'];constructor(_0x23bb3b,_0x549253,_0xe2cf97){super(_0x23bb3b);const _0x4f2c80=this['bindTemplate'];this['set']('isFocusable',!0x1),this['set']('hasTooltip',!0x0),this['set']('tooltipPosition',''),this['userView']=new ct(_0x23bb3b,_0x549253),this['markerView']=new at(_0x23bb3b,_0x549253);const _0x389673=new ot(_0x23bb3b);_0x389673['template']['tag']='span',_0x389673['text']=_0x549253['name'];const _0x5cd520={'tag':'div','attributes':{'class':['ck','ck-presence-list__list-item'],'role':'listitem','tabindex':_0x4f2c80['to']('isFocusable',_0x3ff11d=>!!_0x3ff11d&&0x0),'aria-labelledby':_0x389673['id'],'data-cke-tooltip-text':this['userView']['name'],'data-cke-tooltip-position':_0x4f2c80['to']('tooltipPosition'),'data-cke-tooltip-disabled':_0x4f2c80['to']('hasTooltip',_0x3a4ce8=>!_0x3a4ce8),'data-cke-tooltip-class':'ck-presence-list__list-item__tooltip'},'children':[this['userView'],this['markerView'],_0x389673]};_0xe2cf97&&(_0x5cd520['tag']='button',_0x5cd520['on']={'click':_0x4f2c80['to'](()=>this['fire']('execute'))}),this['setTemplate'](_0x5cd520);}}class at extends _0x11e2dc{constructor(_0x10e476,_0x50141a){super(_0x10e476),this['setTemplate']({'tag':'span','attributes':{'class':['ck','ck-presence-list__marker',_0x50141a['color']['getBackgroundColorClass']()],'aria-hidden':'true'}});}}const A={'collapseAt':0x6,'displayMe':!0x0};class r extends _0x44cad5{['currentDisplayedUsers'];['balloonPanelView'];['view'];['presenceDropdownView'];['_bodyCollection']=null;constructor(_0x3a2208){super(_0x3a2208),this['context']['config']['define']('presenceList',A);const _0x335ae6=_0x3a2208['config']['get']('presenceList.collapseAt');if('number'!=typeof _0x335ae6)throw new _0x33cd62('presencelist-collapseat-invalid-format',this);if(_0x335ae6<0x1)throw new _0x33cd62('presencelist-collapseat-invalid-format',this);this['_allConnectedUsers']=this['context']['plugins']['get'](i)['allConnectedUsers'],this['set']('usersCount',0x0),this['currentDisplayedUsers']=new _0x35e6fd(),this['balloonPanelView']=new _0xb1cf9a(),this['balloonPanelView']['class']='ck\x20ck-presence-list__balloon',this['view']=this['_createView'](),this['presenceDropdownView']=void 0x0;}static get['requires'](){return[i];}['init'](){for(const _0x3cba85 of this['_allConnectedUsers'])this['_handleUserAdd'](_0x3cba85);this['listenTo'](this['_allConnectedUsers'],'add',(_0x4e65aa,_0x203061)=>{this['_handleUserAdd'](_0x203061);}),this['listenTo'](this['_allConnectedUsers'],'remove',(_0x52653c,_0x20bf9e)=>{this['_handleUserRemove'](_0x20bf9e);});}['_createView'](){const _0x310959=this['context'],_0x3573a7=new L(this['context']['locale']),_0x1ea9d1=this['balloonPanelView'];if(!_0xc0e31b(_0x310959['config']['get']('presenceList.container')))throw new _0x33cd62('presencelist-missing-container',this);return _0x3573a7['counterView']['bind']('usersCount')['to'](this),_0x3573a7['bind']('isCollapsed')['to'](this,'usersCount',_0x1bc1e8=>{const {collapseAt:_0xc4c83,displayMe:_0x3a6b8a}=_0x310959['config']['get']('presenceList'),_0x57497a=_0x1bc1e8>=_0xc4c83;return _0x3573a7['counterView']['isHidden']=!(0x1==_0x1bc1e8&&_0x3a6b8a||_0x57497a),_0x57497a||this['hideDropdown'](),_0x57497a;}),_0x3573a7['inlineListView']['items']['bindTo'](this['currentDisplayedUsers'])['using'](_0x4ee199=>{const _0x5dccf7=_0x310959['config']['get']('presenceList'),_0x9b01b1=new y(_0x310959['locale'],_0x4ee199,!!_0x5dccf7['onClick']);return _0x9b01b1['bind']('hasTooltip')['to'](_0x3573a7,'isCollapsed',_0x5a54a8=>!_0x5a54a8),_0x9b01b1['bind']('isFocusable')['to'](_0x3573a7,'isCollapsed',_0xae6be4=>!_0xae6be4),_0x5dccf7['onClick']&&this['listenTo'](_0x9b01b1,'execute',()=>{this['view']['isCollapsed']||_0x5dccf7['onClick'](_0x4ee199,_0x9b01b1['element']);}),_0x9b01b1;}),this['listenTo'](_0x3573a7['inlineListView'],'execute',()=>{this['presenceDropdownView']?this['hideDropdown']():this['view']['isCollapsed']&&this['showDropdown']();}),_0x3573a7['inlineListView']['keystrokes']['set']('Enter',(_0xc97822,_0x286fa6)=>{this['view']['isCollapsed']&&(this['showDropdown'](),_0x286fa6());}),_0x3573a7['render'](),_0x1ea9d1['render'](),_0x24e8ff({'emitter':_0x3573a7,'activator':()=>_0x1ea9d1['isVisible'],'contextElements':[_0x1ea9d1['element'],_0x3573a7['inlineListView']['element']],'callback':()=>this['hideDropdown']()}),_0x310959['config']['get']('presenceList.container')['appendChild'](_0x3573a7['element']),this['_bodyCollection']=new _0x2a110c(this['context']['locale']),this['_bodyCollection']['attachToDom'](),this['_bodyCollection']['add'](this['balloonPanelView']),_0x3573a7;}['_handleUserAdd'](_0x80f9a1){if(!this['context']['config']['get']('presenceList.displayMe')&&_0x80f9a1['isMe'])return;const _0x5d3021=this['context']['config']['get']('presenceList.collapseAt')-0x1;this['usersCount']++,this['currentDisplayedUsers']['length']==_0x5d3021&&this['currentDisplayedUsers']['length']>0x1&&this['currentDisplayedUsers']['remove'](0x1);const _0x6db0e9=_0x80f9a1['isMe']?0x0:this['currentDisplayedUsers']['length'];this['currentDisplayedUsers']['add'](_0x80f9a1,_0x6db0e9);}['_handleUserRemove'](_0x54aefb){if(this['usersCount']--,this['currentDisplayedUsers']['get'](_0x54aefb['id'])&&(this['currentDisplayedUsers']['remove'](_0x54aefb['id']),this['currentDisplayedUsers']['length']<this['usersCount'])){for(const _0x5be4d7 of Array['from'](this['_allConnectedUsers'])['reverse']())if(!this['currentDisplayedUsers']['get'](_0x5be4d7['id']))return void this['currentDisplayedUsers']['add'](_0x5be4d7,Math['min'](this['currentDisplayedUsers']['length'],0x1));}}['showDropdown'](){if(this['presenceDropdownView'])return;const _0x1a3974=this['context']['config']['get']('presenceList');this['presenceDropdownView']=new j(this['context']['locale'],!!_0x1a3974['onClick']),this['view']['inlineListView']['isExpanded']=!0x0;const {listWrapperView:_0x4c4bdd}=this['presenceDropdownView'];_0x4c4bdd['items']['bindTo'](this['_allConnectedUsers'])['using'](_0x19e687=>{if(!_0x1a3974['displayMe']&&_0x19e687['isMe'])return null;const _0x372219=new k(this['context']['locale'],_0x19e687,!!_0x1a3974['onClick']);return _0x1a3974['onClick']&&this['listenTo'](_0x372219,'execute',()=>{_0x1a3974['onClick'](_0x19e687,_0x372219['element']);}),_0x372219;}),this['balloonPanelView']['content']['add'](this['presenceDropdownView']),this['balloonPanelView']['pin']({'target':this['view']['inlineListView']['element']}),_0x4c4bdd['focus'](),_0x4c4bdd['checkIfScrollable']();const _0x23b3ae=(_0x1e0c23,_0x555c8f)=>{this['hideDropdown'](),this['view']['inlineListView']['focus'](),_0x555c8f();};_0x4c4bdd['keystrokes']['set']('Esc',_0x23b3ae),_0x4c4bdd['keystrokes']['set']('Shift+Tab',_0x23b3ae),_0x4c4bdd['keystrokes']['set']('Tab',(_0x4a1cf0,_0x1df721)=>{!function(_0x6f9bd){const _0x3d9a27=['a','button','input','select','textarea','[tabindex]','[contenteditable]']['map'](_0x25b579=>_0x25b579+':not([disabled]):not([tabindex=\x22-1\x22])')['join'](','),_0x6e69d9=[...document['body']['querySelectorAll'](_0x3d9a27)]['filter'](_0x216bae=>_0x216bae===document['activeElement']||_0x216bae['offsetWidth']+_0x216bae['offsetHeight']>0x0)['sort']((_0x457a8c,_0x4db2ed)=>(_0x457a8c['tabIndex']||0x0)-(_0x4db2ed['tabIndex']||0x0)),_0x4033f8=_0x6e69d9['indexOf'](_0x6f9bd),_0x544810=_0x6e69d9[(_0x4033f8+0x1)%_0x6e69d9['length']];_0x544810&&_0x544810['focus']();}(this['view']['element']),this['hideDropdown'](),_0x1df721();}),_0x4c4bdd['focusTracker']['add'](this['view']['element']),_0x4c4bdd['focusTracker']['on']('change:isFocused',(_0x42e8af,_0x5da921,_0x4cf31b)=>{_0x4cf31b||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 _0x44cad5{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 _0x28c33e,Plugin as _0x266e72,PendingActions as _0x4e9cba,Context as _0x5c34e8}from'@ckeditor/ckeditor5-core/dist/index.js';import{DomEmitterMixin as _0x53e42e,CKEditorError as _0x37bed6,Collection as _0x12570d,global as _0x1b9bae,version as nt,uid as _0x5ea109,KeystrokeHandler as _0x12f1de}from'@ckeditor/ckeditor5-utils/dist/index.js';import{Notification as _0x1032c2,View as _0x4d54c6,ListView as _0x25c79c,ListItemView as rt,LabelView as ot,BalloonPanelView as _0x52aab4,clickOutsideHandler as _0x77def9,BodyCollection as _0x2ee6b3}from'@ckeditor/ckeditor5-ui/dist/index.js';import{LiveRange as ht,History as _0x393855,NoOperation as _0x3892b7,InsertOperation as _0x17a03e,MarkerOperation as _0x23dfd1,RootAttributeOperation as _0x3a7055,transformSets as _0x11eeae,OperationFactory as _0x4d3b91}from'@ckeditor/ckeditor5-engine/dist/index.js';import{WebSocketGateway as lt,WEB_SOCKET_GATEWAY_STATES as _0x1cb2dd,CollaborativeEditingService as _0x15a394,User as dt,CommentsService as _0x5c5406,TrackChangesService as et,RevisionHistoryService as it,EditorService as tt}from'@ckeditor/ckeditor-cloud-services-collaboration/dist/index.js';import{Users as _0x4b7120,UserView as ct}from'ckeditor5-collaboration/dist/index.js';import{Compressor as _0x2699d4}from'@ckeditor/ckeditor5-operations-compressor/dist/index.js';import{isElement as _0x5c575a}from'lodash-es';class c extends _0x28c33e{static ['WebSocketGateway']=/* #__PURE__ -- @preserve */
24
+ ((()=>lt)());static ['initialReconnectionInterval']=0x3e8;['connection'];['_reconnectionStack'];['_shouldPluginsReconnect'];['_domEmitter'];static get['requires'](){return['CloudServices',_0x1032c2];}static get['pluginName'](){return'WebSocketGateway';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x297aba){super(_0x297aba),this['set']('state',_0x1cb2dd['CONNECTED']),this['set']('_isBrowserOffline',!0x1),this['_reconnectionStack']=new Set(),this['_shouldPluginsReconnect']=!0x1,this['_domEmitter']=Object['create'](_0x53e42e);}['init'](){const _0x1ff944=this['context'],_0x273d59=_0x1ff944['plugins']['get']('CloudServices'),_0x1a7df4=_0x1ff944['plugins']['get'](_0x1032c2);if(!_0x273d59['token'])throw new _0x37bed6('websocketgateway-missing-token',this);if(!_0x273d59['webSocketUrl'])throw new _0x37bed6('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'](_0x273d59['token'],_0x273d59['webSocketUrl'],{'timeout':0x3e8*this['context']['config']['get']('cloudServices.connectionTimeout'),'requestTimeout':0x3e8*this['context']['config']['get']('cloudServices.requestTimeout')})['then'](_0x1f53b9=>{if(this['connection']=_0x1f53b9,this['bind']('state')['to'](_0x1f53b9,'state',this,'_isBrowserOffline',(_0x28f108,_0x2d23b3)=>('connected'!==_0x28f108&&(this['_shouldPluginsReconnect']=!0x0),_0x2d23b3||_0x28f108!==_0x1cb2dd['CONNECTED']?_0x1cb2dd['DISCONNECTED']:this['state']==_0x1cb2dd['DISCONNECTED']&&this['_shouldPluginsReconnect']?(this['_shouldPluginsReconnect']=!0x1,this['_reconnect'](),_0x1cb2dd['CONNECTING']):_0x1cb2dd['CONNECTED'])),this['connection']['on']('error',(_0x495dfc,_0x58b7d7)=>{if('limitExceeded'!==_0x58b7d7['code'])throw console['error'](_0x58b7d7),new _0x37bed6('cloudservices-init',null,{'originalError':_0x58b7d7});_0x1a7df4['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'});}),!_0x1f53b9['me'])return new Promise(_0x4f8b9f=>_0x1f53b9['on']('change:me',_0x4f8b9f));})['catch'](_0x5a6111=>{throw console['error'](_0x5a6111),new _0x37bed6('cloudservices-init',null,{'originalError':_0x5a6111});});}['addToReconnectionStack'](_0x557a1d){if('function'!=typeof _0x557a1d['reconnect'])throw new _0x37bed6('websocketgateway-invalid-plugin-interface',this);if(this['isInReconnectionStack'](_0x557a1d))throw new _0x37bed6('websocketgateway-plugin-already-registered',this,{'name':_0x557a1d['constructor']['pluginName']});this['_reconnectionStack']['add'](_0x557a1d);}['removeFromReconnectionStack'](_0x58f795){this['_reconnectionStack']['delete'](_0x58f795);}['isInReconnectionStack'](_0x38e147){return this['_reconnectionStack']['has'](_0x38e147);}['_reconnect'](){return this['connection']['reconnect']()['then'](()=>Promise['all'](Array['from'](this['_reconnectionStack'],_0x22f580=>_0x22f580['reconnect']())))['then'](()=>this['state']=_0x1cb2dd['CONNECTED'])['catch'](_0x23fd2a=>{throw console['error'](_0x23fd2a),new _0x37bed6('cloudservices-reconnection-error',this['context']);});}['destroy'](){this['connection']&&this['connection']['disconnect'](),this['state']=_0x1cb2dd['DISCONNECTED'],this['_domEmitter']['stopListening'](),super['destroy']();}}class i extends _0x28c33e{['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,_0x4b7120];}constructor(_0x5a3a29){super(_0x5a3a29),this['channelSessions']=new Map(),this['channelConnectedUsers']=new Map(),this['allConnectedUsers']=new _0x12570d(),this['_registeredSessions']=new Map(),this['_uniqueUsersCount']=0x0,this['_users']=this['context']['plugins']['get'](_0x4b7120);}['init'](){const _0x5eecdd=this['context']['plugins']['get'](c);this['listenTo'](_0x5eecdd,'change:state',(_0x270067,_0x4abfb8,_0x3dc1ec)=>{if('connected'!==_0x3dc1ec)this['channelSessions']['forEach'](_0x430617=>_0x430617['clear']()),this['channelConnectedUsers']['forEach'](_0x19380f=>_0x19380f['clear']()),this['allConnectedUsers']['clear']();else{for(const [_0x39f846,_0x529c06]of this['_registeredSessions'])for(const _0x40c3fb of _0x529c06)this['_handleSessionAdd'](_0x39f846,_0x40c3fb);}}),this['_createUser'](_0x5eecdd['connection']['me'],!0x0);}['register'](_0x367ea8,_0x32adcb){if(this['_registeredSessions']['has'](_0x367ea8))throw new _0x37bed6('sessions-register-already-registered',null,{'channelId':_0x367ea8});this['_registeredSessions']['set'](_0x367ea8,_0x32adcb),this['channelSessions']['set'](_0x367ea8,new _0x12570d()),this['channelConnectedUsers']['set'](_0x367ea8,new _0x12570d()),this['listenTo'](_0x32adcb,'add',(_0x16e90a,_0x40de66)=>this['_handleSessionAdd'](_0x367ea8,_0x40de66)),this['listenTo'](_0x32adcb,'remove',(_0x416eef,_0x568700)=>this['_handleSessionRemove'](_0x367ea8,_0x568700));for(const _0x4fa0da of _0x32adcb)this['_handleSessionAdd'](_0x367ea8,_0x4fa0da);}['unregister'](_0x2c82e7){if(!this['_registeredSessions']['has'](_0x2c82e7))throw new _0x37bed6('sessions-unregister-not-exist',null,{'channelId':_0x2c82e7});const _0x5c4528=this['_registeredSessions']['get'](_0x2c82e7);this['stopListening'](_0x5c4528);for(const _0x69b1dd of _0x5c4528)'connected'===this['context']['plugins']['get'](c)['state']&&this['_handleSessionRemove'](_0x2c82e7,_0x69b1dd);this['_registeredSessions']['delete'](_0x2c82e7),this['channelSessions']['delete'](_0x2c82e7),this['channelConnectedUsers']['delete'](_0x2c82e7);}get['mySessionId'](){return this['context']['plugins']['get'](c)['connection']['sessionId'];}['getUserBySessionId'](_0xb540a6){for(const _0x3af3f4 of this['channelSessions']['values']())for(const _0x2accde of _0x3af3f4)if(_0x2accde['id']===_0xb540a6)return _0x2accde['user'];}['getUserSessions'](_0x1c5cfa,_0x5abf1f){const _0x554776=_0x5abf1f?[this['channelSessions']['get'](_0x5abf1f)]:this['channelSessions']['values'](),_0x3d0f3f=new Set();for(const _0x1d7429 of _0x554776)for(const _0x11d9f7 of _0x1d7429)_0x11d9f7['user']['id']===_0x1c5cfa['id']&&_0x3d0f3f['add'](_0x11d9f7['id']);return _0x3d0f3f;}['getUserRole'](_0x5d53d0){for(const _0x165223 of this['channelSessions']['values']())for(const _0x48b13e of _0x165223)if(_0x48b13e['user']===_0x5d53d0)return _0x48b13e['role'];}['_handleSessionAdd'](_0x3b8117,_0x22f276){if('connected'!==this['context']['plugins']['get'](c)['state'])return;const _0x1588a7=_0x22f276['user'],_0x43d1d8=this['_users']['getUser'](_0x1588a7['id'])||this['_createUser'](_0x1588a7),_0x4de937=Object['assign']({},_0x22f276,{'user':_0x43d1d8});this['channelSessions']['get'](_0x3b8117)['add'](_0x4de937);const _0x58138f=this['channelConnectedUsers']['get'](_0x3b8117);_0x58138f['has'](_0x43d1d8['id'])||_0x58138f['add'](_0x43d1d8),this['allConnectedUsers']['has'](_0x43d1d8['id'])||this['allConnectedUsers']['add'](_0x43d1d8,_0x43d1d8['isMe']?0x0:void 0x0),this['fire']('sessionAdd:'+_0x3b8117,{'channelId':_0x3b8117,'session':_0x4de937});}['_handleSessionRemove'](_0x5763ed,_0xc5173){if('connected'!==this['context']['plugins']['get'](c)['state'])return;const _0x18d19b=this['channelConnectedUsers']['get'](_0x5763ed),_0x17f562=_0xc5173['user'];_0x17f562['id']&&(this['channelSessions']['get'](_0x5763ed)['remove'](_0xc5173['id']),_0x18d19b['has'](_0x17f562['id'])&&!this['getUserSessions'](_0x17f562,_0x5763ed)['size']&&_0x18d19b['remove'](_0x17f562['id']),this['allConnectedUsers']['get'](_0x17f562['id'])&&!this['getUserSessions'](_0x17f562)['size']&&this['allConnectedUsers']['remove'](_0x17f562['id']));}['_createUser'](_0x5bbfce,_0xbead31){const _0x5e57de=this['_users']['addUser'](_0x5bbfce);return _0xbead31&&this['_users']['defineMe'](_0x5bbfce['id']),_0x5e57de['orderNumber']=this['_uniqueUsersCount']++,_0x5e57de;}}class H extends _0x266e72{['_domEmitter']=new(_0x53e42e())();static get['requires'](){return[i];}static get['pluginName'](){return'UserMarkers';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['init'](){const _0x2c7013=this['editor'],_0x2cf2aa=_0x2c7013['plugins']['get'](i);_0x2c7013['conversion']['for']('editingDowncast')['markerToElement']({'model':'user:position','view':(_0x10dce5,{writer:_0x34ce64})=>function(_0x2c2bc4,_0x462c58,_0x431f58,_0x3dfa1d){const _0xa08f2f=_0x2c2bc4['markerName']['split'](':')[0x2],_0x43f527=_0x431f58['getUserBySessionId'](_0xa08f2f);if(!_0x43f527||_0xa08f2f===_0x431f58['mySessionId'])return;if(!_0x3dfa1d['model']['schema']['checkChild'](_0x2c2bc4['markerRange']['start'],'$text'))return;const _0x530d3a={'class':'ck-user__marker\x20'+_0x43f527['color']['getMarkerClass'](),'data-name':_0x43f527['name'],'data-session-id':_0xa08f2f},_0x173ee0=_0x3dfa1d['model']['markers']['get'](_0x2c2bc4['markerName']),_0x268434=_0x173ee0['getStart'](),_0x5bf25c=_0x268434['nodeAfter'],_0x313a13=_0x3dfa1d['model']['schema'];if(_0x5bf25c&&_0x313a13['isObject'](_0x5bf25c)&&_0x313a13['isInline'](_0x5bf25c)&&!_0x3dfa1d['model']['markers']['get']('user:range:'+_0xa08f2f)['getRange']()['isCollapsed'])return;const _0xd45b84=_0x268434['parent'];return _0x3dfa1d['model']['schema']['isLimit'](_0xd45b84)&&!_0x3dfa1d['model']['hasContent'](_0xd45b84)&&(_0x530d3a['contenteditable']=!0x1),function(_0x2a6203,_0x402be8,_0x2bfea3){const _0x5d4d8f=_0x2a6203['createUIElement']('span',_0x402be8);return _0x2a6203['setCustomProperty']('userPositionMarker',!0x0,_0x5d4d8f),_0x5d4d8f['render']=function(_0x87b3e1){const _0x2a3059=this['toDomElement'](_0x87b3e1);return _0x2a3059['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>'+_0x2bfea3['name']+'</span>⁠',_0x2a3059['addEventListener']('mouseenter',()=>{_0x2a3059['classList']['add']('ck-user__marker_hovered');}),_0x2a3059['addEventListener']('mouseleave',()=>{_0x2a3059['classList']['remove']('ck-user__marker_hovered');}),_0x2a3059;},_0x5d4d8f['isSimilar']=function(_0xfbb685){return!(!this['getCustomProperty']('userPositionMarker')||!_0xfbb685['getCustomProperty']('userPositionMarker')||this['getAttribute']('data-session-id')!=_0xfbb685['getAttribute']('data-session-id'));},_0x5d4d8f;}(_0x462c58,_0x530d3a,_0x43f527);}(_0x10dce5,_0x34ce64,_0x2cf2aa,_0x2c7013)}),_0x2c7013['conversion']['for']('editingDowncast')['markerToHighlight']({'model':'user:range','view':_0x5e905f=>function(_0x598dee,_0x1898a2){const _0x2eb78e=_0x598dee['markerName']['split'](':')[0x2];if(_0x2eb78e===_0x1898a2['mySessionId'])return null;const _0x3b746e=_0x1898a2['getUserBySessionId'](_0x2eb78e);if(!_0x3b746e)return{'id':_0x2eb78e,'classes':[]};return{'id':_0x2eb78e,'classes':['ck-user__selection',_0x3b746e['color']['getSelectionClass']()],'attributes':{'data-session-id':_0x2eb78e},'priority':0x7d0+_0x3b746e['orderNumber']};}(_0x5e905f,_0x2cf2aa)}),function(_0x5bf08a){const _0x6bee63=_0x5bf08a['model'],_0x1506c9=new Map(),_0x1f5c90=_0x5bf08a['plugins']['get'](i);_0x6bee63['markers']['on']('update:user:range',(_0x2c87c3,_0x2b07ce,_0x4cad69,_0x4a6c72)=>{if(!_0x4a6c72&&_0x1506c9['get'](_0x2b07ce['name']))return _0x1506c9['get'](_0x2b07ce['name'])['detach'](),void _0x1506c9['delete'](_0x2b07ce['name']);const _0x38f922=_0x2b07ce['name']['split'](':')[0x2];if(_0x38f922===_0x1f5c90['mySessionId'])return;const _0x816c39='user:position:'+_0x38f922;_0x6bee63['markers']['has'](_0x816c39)&&_0x5bf08a['editing']['reconvertMarker'](_0x816c39),_0x2b07ce['on']('change:range',(_0x4b1815,_0xc7e59e,_0x451456)=>{if('$graveyard'!=_0xc7e59e['root']['rootName']&&'$graveyard'==_0x2b07ce['getRange']()['root']['rootName']&&!_0x1506c9['has'](_0x2b07ce['name'])){const _0x445769=_0x6bee63['schema']['getNearestSelectionRange'](_0x451456['deletionPosition']);if(_0x445769){const _0x438cca=ht['fromRange'](_0x445769);_0x1506c9['set'](_0x2b07ce['name'],_0x438cca),_0x438cca['on']('change:range',(_0x1e1d24,_0x1ebae6,_0x5ef384)=>{if('$graveyard'==_0x438cca['root']['rootName']){const _0x1b64d9=_0x6bee63['schema']['getNearestSelectionRange'](_0x5ef384['deletionPosition']);_0x1b64d9?(_0x438cca['start']=_0x1b64d9['start'],_0x438cca['end']=_0x1b64d9['end']):(_0x1506c9['delete'](_0x2b07ce['name']),_0x438cca['detach']());}});}}});}),_0x6bee63['document']['on']('change',()=>{_0x1506c9['size']>0x0&&_0x6bee63['enqueueChange']({'isUndoable':!0x1},_0x3bd57d=>{for(const [_0x4c5fb5,_0x52040b]of _0x1506c9)'$graveyard'==_0x6bee63['markers']['get'](_0x4c5fb5)['getRange']()['root']['rootName']&&(re(_0x4c5fb5['split'](':')[0x2],_0x52040b['toRange'](),_0x6bee63,_0x3bd57d),_0x52040b['detach']());_0x1506c9['clear']();});});}(_0x2c7013),this['_domEmitter']['listenTo'](_0x1b9bae['document'],'keydown',(_0x11ce20,{key:_0x25bd1a})=>{'Escape'===_0x25bd1a&&function(_0x3dba1e){_0x3dba1e['editing']['view']['change'](_0x38f114=>{for(const _0x416995 of _0x3dba1e['model']['markers']){if(!_0x416995['name']['startsWith']('user:position'))continue;const _0x42d724=_0x3dba1e['editing']['mapper']['markerNameToElements'](_0x416995['name']);if(_0x42d724){for(const _0x505c08 of _0x42d724)_0x38f114['removeClass']('ck-user__marker_hovered',_0x505c08);}}});}(_0x2c7013);},{'useCapture':!0x0});}['afterInit'](){const _0x50db60=this['editor'],_0x52ecbb=_0x50db60['commands']['get']('undo');_0x52ecbb&&_0x50db60['model']['on']('applyOperation',(_0x3f99b4,_0x1ecde1)=>{const _0xfb81e2=_0x1ecde1[0x0];if('marker'!=_0xfb81e2['type']||!_0xfb81e2['name']['startsWith']('user:'))return;const _0x378d5b=_0xfb81e2['batch'];_0x52ecbb['_createdBatches']['has'](_0x378d5b)&&(_0xfb81e2['newRange']=_0xfb81e2['oldRange']?_0x50db60['model']['createRange'](_0xfb81e2['oldRange']['start'],_0xfb81e2['oldRange']['end']):null);},{'priority':'highest'});}['destroy'](){return this['_domEmitter']['stopListening'](),super['destroy']();}['createUserMarkerOperations'](){const _0x227ca4=this['editor'],_0x47a1eb=_0x227ca4['model']['document'],_0xa6379a=_0x227ca4['plugins']['get'](i);_0x227ca4['model']['enqueueChange']({'isUndoable':!0x1},_0x2585fb=>{const _0x1bc0f9='user:range:'+_0xa6379a['mySessionId'],_0x49dd5d='user:position:'+_0xa6379a['mySessionId'],_0x21c24b=_0x227ca4['model']['markers']['has'](_0x1bc0f9);_0x227ca4['editing']['view']['hasDomSelection']?re(_0xa6379a['mySessionId'],_0x47a1eb['selection']['getFirstRange'](),_0x227ca4['model'],_0x2585fb):_0x21c24b&&(_0x2585fb['removeMarker'](_0x1bc0f9),_0x2585fb['removeMarker'](_0x49dd5d));});}}function re(_0xc93b1,_0x1eb891,_0x49b1b3,_0x5c1876){const _0x4c8f33='user:range:'+_0xc93b1,_0x3e354c='user:position:'+_0xc93b1,_0x13ad87=_0x1eb891['getContainedElement']();let _0x296847=_0x1eb891['start'];_0x13ad87&&_0x13ad87['is']('element','tableCell')&&(_0x296847=function(_0x45f827,_0xca40e8){for(const _0xd89f34 of _0x45f827['getPositions']())if(_0xca40e8['schema']['checkChild'](_0xd89f34,'$text'))return _0xd89f34;}(_0x1eb891,_0x49b1b3),_0x1eb891=_0x5c1876['createRange'](_0x296847));const _0x208b4f=_0x5c1876['createRange'](_0x296847);_0x49b1b3['markers']['has'](_0x4c8f33)?(_0x5c1876['updateMarker'](_0x4c8f33,{'range':_0x1eb891}),_0x5c1876['updateMarker'](_0x3e354c,{'range':_0x208b4f})):(_0x5c1876['addMarker'](_0x4c8f33,{'range':_0x1eb891,'usingOperation':!0x0}),_0x5c1876['addMarker'](_0x3e354c,{'range':_0x208b4f,'usingOperation':!0x0}));}function q(_0x48748c,_0x3fe676,_0x431876){const _0x18c3ee=_0x48748c['t'],t=_0x48748c['t'];switch(_0x3fe676){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 _0x18c3ee({'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'},_0x431876);default:return'';}}let K=0x1;class l extends _0x266e72{static ['CollaborativeEditingService']=/* #__PURE__ -- @preserve */
25
+ ((()=>_0x15a394)());['_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,_0x4e9cba,_0x4b7120,_0x1032c2];}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 _0x1444ef=this['serverHistory']['getOperations']();for(let _0x306e2b=_0x1444ef['length']-0x1;_0x306e2b>=0x0;_0x306e2b--){const _0x25d3dc=_0x1444ef[_0x306e2b];if(!this['_disconnectionOperations']['has'](_0x25d3dc))return _0x25d3dc['baseVersion']+0x1-this['_offset'];}return 0x0;}constructor(_0x2a7414){if(super(_0x2a7414),this['_offset']=0x0,this['sessionId']=null,this['serverHistory']=new _0x393855(),this['editor']['config']['define']('collaboration',{}),this['_channelId']=this['editor']['config']['get']('collaboration.channelId'),!this['_channelId'])throw new _0x37bed6('collaboration-missing-channelid',this);const _0xcc9ea8=_0x2a7414['config']['get']('cloudServices.bundleVersion')||nt;this['_service']=new l['CollaborativeEditingService'](_0xcc9ea8,this['_channelId']),this['_document']=this['editor']['model']['document'],this['_compressor']=new _0x2699d4(),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 _0x3857f8=this['editor'],_0x2188b5=_0x3857f8['plugins']['get'](_0x4b7120),_0x45e236=_0x3857f8['plugins']['get'](c);this['listenTo'](_0x2188b5,'getOperationAuthor',(_0x710acc,_0x596687)=>{const _0x213a13=_0x596687[0x0];_0x213a13['_authorId']&&(_0x710acc['return']=_0x2188b5['getUser'](_0x213a13['_authorId']),_0x710acc['stop']()),null===_0x213a13['_authorId']&&(_0x710acc['return']=null,_0x710acc['stop']());},{'priority':'high'}),this['listenTo'](_0x3857f8['model']['document']['selection'],'change:range',(_0x4f415f,_0x14a073)=>{_0x14a073['directChange']&&this['_refreshUserSelectionMarkers']();}),this['listenTo'](_0x3857f8['editing']['view'],'change:hasDomSelection',()=>{this['_refreshUserSelectionMarkers']();}),this['_initThrowingOnDataSet'](),_0x3857f8['model']['on']('applyOperation',(_0x37a622,_0x4d9c15)=>{const _0xa73d29=_0x4d9c15[0x0];_0xa73d29['isDocumentOperation']&&(this['_saveOperationInBuffer'](_0xa73d29),this['_shouldSendUpdate']()&&this['_sendBufferedOperationsDelayed']());}),this['_setUpDataInit'](),this['bind']('_isEditingAllowed')['to'](_0x45e236,'state',this,'_hasSynchronizationProblem',(_0x573552,_0x4f5032)=>'connected'===_0x573552&&!_0x4f5032),this['on']('change:_isEditingAllowed',()=>{this['_isEditingAllowed']?_0x3857f8['disableReadOnlyMode']('rtc-offline'):_0x3857f8['enableReadOnlyMode']('rtc-offline');}),this['_isEditingAllowed']?_0x3857f8['disableReadOnlyMode']('rtc-offline'):_0x3857f8['enableReadOnlyMode']('rtc-offline'),this['set']('_isConnected',!0x1);}async['reconnect'](){const _0x109cb3=this['editor']['plugins']['get'](i),_0x192baf=this['editor']['plugins']['get'](c);try{this['_isPendingUpdate']=!0x0,_0x109cb3['unregister'](this['_channelId']);const _0x69a9ac=await this['_service']['reconnect'](_0x192baf['connection'],this['lastSyncVersion']);await this['_handleReconnectionResponse'](_0x69a9ac)&&(this['_isPendingUpdate']=!0x1,this['_clearPendingAction']());const _0x5b631b=await this['_service']['getConnectedSessions']();_0x109cb3['register'](this['_channelId'],_0x5b631b),this['_handleSendingSelectionMarkers'](),this['_isConnected']=!0x0;}catch(_0xd6b46e){if(function(_0x59ee60){return'404'===_0x59ee60['code'];}(_0xd6b46e)&&this['sessionId'])await this['_connectAfterSessionHasBeenFlushed']();else{if(function(_0x195dcf){return'409'===_0x195dcf['code'];}(_0xd6b46e)){const _0x2a9a76=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'](_0x2a9a76);}else{if(!(_0xd6b46e instanceof J))throw _0xd6b46e;this['_handleReconnectionError']();}}}}['destroy'](){const _0x2f866b=this['editor']['plugins']['get'](c),_0x29379d=this['editor']['plugins']['get'](i);this['editor']['enableReadOnlyMode']('rtc-destroyed'),_0x29379d['channelSessions']['has'](this['_channelId'])&&_0x29379d['unregister'](this['_channelId']),_0x2f866b['removeFromReconnectionStack'](this),this['_disconnectService'](),super['destroy']();}async['_handleReconnectionResponse'](_0x10c172){if(this['sessionId']!==_0x10c172['sessionId']&&this['_lastSyncedOperationId']!==_0x10c172['lastOperationId'])throw new J();return this['sessionId']=_0x10c172['sessionId'],this['_handleServerResponse']([],{..._0x10c172,'wereChangesApplied':!0x1,'data':_0x10c172['data']},'reconnect');}async['_connectService'](_0x2eb9eb,_0x1aa5b9=!0x1){const {connection:_0x3cd206}=this['editor']['plugins']['get'](c);l['CollaborativeEditingService']['getConnectedSessions'](_0x3cd206,this['_channelId'])['then'](_0x3234dc=>this['_initSessionsHandling'](_0x3234dc))['catch'](_0x4f930e=>{this['_crash']('realtimecollaborationclient-init-session-connection-error',_0x4f930e);}),this['listenTo'](this['_service'],'operationsReceived',this['_handleReceivedOperations']['bind'](this)),this['listenTo'](this['_service'],'error',(_0x1256c4,_0x5e7b76)=>{this['_crash']('realtimecollaborationclient-initservice-internal-error',_0x5e7b76);}),this['listenTo'](this['_service'],'disconnected',()=>{this['_isConnected']=!0x1;});const _0x52c298=this['_operationIdentifier']['getIdOfTheLastOperation'](_0x2eb9eb);this['_isPendingUpdate']=!0x0;const _0x543170=await this['_service']['connect'](_0x3cd206,this['_compressOperations'](_0x2eb9eb),_0x52c298);if(this['sessionId']=_0x543170['sessionId'],_0x1aa5b9){if(!_0x543170['wereChangesApplied'])return void this['_handleReconnectionError']();this['_isPendingUpdate']=!0x1,this['_clearPendingAction'](),this['serverHistory']['reset'](),this['_offset']=_0x543170['offset'],this['serverHistory']['version']=this['_offset'],await this['_handleServerResponse'](_0x2eb9eb,_0x543170,'reconnection:\x20flushed\x20session');}else await this['_handleInitialConnectionData'](_0x543170,_0x2eb9eb);this['_handleSendingSelectionMarkers'](),this['_isConnected']=!0x0;}['_handleSendingSelectionMarkers'](){const _0x1889b4=this['editor']['plugins']['get'](i),_0x51dbd4=this['editor']['plugins']['get'](H),_0x5e81e0=_0x1889b4['channelSessions']['get'](this['_channelId']);_0x5e81e0&&_0x5e81e0['length']>0x1?_0x51dbd4['createUserMarkerOperations']():this['listenTo'](_0x1889b4,'sessionAdd:'+this['_channelId'],()=>{0x2===_0x1889b4['channelSessions']['get'](this['_channelId'])['length']&&_0x51dbd4['createUserMarkerOperations']();});}async['_handleReceivedOperations'](_0x342ff7,_0x105e95,_0x113109,_0x52da5b){if(!this['_isPendingUpdate']&&this['_document']['version']==_0x105e95){const _0x4ce755=this['_decompressOperations'](_0x113109,_0x52da5b);await this['_fetchMissingUsers'](_0x4ce755),this['_handleExternalOperations'](_0x4ce755,_0x105e95,_0x113109['lastOperationId'])||this['_crash']('realtimecollaborationclient-initservice-incorrect-server-operation');}}async['_connectAfterSessionHasBeenFlushed'](){this['_disconnectService']();const {locale:_0x504472}=this['editor'];let _0x30c3eb;try{_0x30c3eb=await this['_service']['getDocumentDetails']();}catch(_0x77090e){const _0x317dfd=q(_0x504472,'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'](_0x317dfd);}const _0x4e9333=_0x30c3eb['currentDocumentSession']||_0x30c3eb['lastDocumentSession'];if(this['_lastSyncedOperationId']===_0x4e9333['lastOperationId'])await this['_connectService'](this['editor']['model']['document']['history']['getOperations'](),!0x0);else{const _0x46053d=q(_0x504472,'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'](_0x46053d);}}['_disconnectService'](){this['_service']['disconnect'](),this['_bufferedOperations']=[],clearTimeout(this['_sendBufferedOperationsDelayId']),this['stopListening'](this['_service']);}['_initSessionsHandling'](_0xe24146){const _0x2c25e1=this['editor']['plugins']['get'](i);this['listenTo'](_0x2c25e1,'sessionAdd:'+this['_channelId'],(_0x683113,{session:_0x59b858})=>{if(_0x59b858['id']===_0x2c25e1['mySessionId']){_0x683113['off']();const _0x102f84=this['editor']['plugins']['has']('CommentsOnly')&&this['editor']['plugins']['get']('CommentsOnly');let _0x4fc742=_0x59b858['permissions'];_0x102f84&&_0x102f84['isEnabled']&&(_0x4fc742=_0x4fc742['filter'](_0x48995a=>'document:write'!==_0x48995a)),this['editor']['plugins']['get']('Permissions')['setPermissions'](_0x4fc742,this['_channelId']);}}),_0x2c25e1['register'](this['_channelId'],_0xe24146);}['_initThrowingOnDataSet'](){const _0x2a5a1c=this['editor']['data']['set'];this['editor']['data']['set']=(..._0x596ef8)=>{if(!_0x596ef8[_0x596ef8['length']-0x1]['suppressErrorInCollaboration'])throw new _0x37bed6('realtimecollaborationclient-editor-setdata-and-editor-data-set-are-forbidden-in-real-time-collaboration',this);_0x2a5a1c['apply'](this['editor']['data'],_0x596ef8);};}['_setUpDataInit'](){this['editor']['data']['on']('init',(_0x224f25,[_0xd05500])=>{if(this['_document']['version'])throw new _0x37bed6('realtimecollaborationclient-init-document-already-initialized',this);_0x224f25['stop'](),this['_setPendingAction']();const _0x38e349=this['editor']['config']['get']('rootsAttributes'),_0x402108=this['_getOperationsFromInitData'](_0xd05500,_0x38e349);0x0==_0x402108['length']&&_0x402108['push'](new _0x3892b7(0x0)),_0x224f25['return']=this['_connectService'](_0x402108)['then'](()=>{this['editor']['plugins']['get'](c)['addToReconnectionStack'](this),this['editor']['data']['fire']('ready');})['catch'](_0xd4288c=>this['_crash']('realtimecollaborationclient-init-connection-failed',_0xd4288c))['finally'](()=>this['_clearPendingAction']());},{'priority':'high'}),this['editor']['on']('loadRoot',async(_0x3bbcd8,[_0x5f1445,_0x1d8ff5])=>{_0x3bbcd8['stop']();const _0xc09717=this['editor']['model']['document']['getRoot'](_0x5f1445);if(!this['_knownRootNames']['has'](_0x5f1445)){const _0x35e7ae=_0x1d8ff5&&_0x1d8ff5['data']?_0x1d8ff5['data']:'',_0x31c53e=_0x1d8ff5&&_0x1d8ff5['attributes']?_0x1d8ff5['attributes']:{};await this['_loadRoot'](_0x5f1445,_0x35e7ae,_0x31c53e);}this['editor']['model']['enqueueChange']({'isUndoable':!0x1},()=>{_0xc09717['_isLoaded']=!0x0,this['editor']['model']['document']['differ']['_bufferRootLoad'](_0xc09717);});},{'priority':'high'});}async['_fetchMissingUsers'](_0x320c7a){const _0x13b6d5=this['editor']['plugins']['get'](_0x4b7120),{connection:_0x1cd8ad}=this['editor']['plugins']['get'](c),_0x39ffb6=new Set();for(const _0x232d5a of _0x320c7a){const _0x562a63=_0x232d5a['_authorId'];_0x562a63&&!_0x13b6d5['getUser'](_0x562a63)&&_0x39ffb6['add'](_0x562a63);}if(0x0===_0x39ffb6['size'])return;const _0x5d4fcb=await dt['getMany'](_0x1cd8ad,Array['from'](_0x39ffb6));for(const _0x32a3db of _0x5d4fcb)_0x13b6d5['getUser'](_0x32a3db['id'])||_0x13b6d5['addUser'](_0x32a3db);}['_getOperationsFromInitData'](_0x55ba3,_0x2c9063={}){const _0x52f669=this['editor']['model'],_0x563549=[];let _0x4604eb=0x0;const _0x5b0125='string'==typeof _0x55ba3?{'main':_0x55ba3}:_0x55ba3;for(const _0x22fb15 of Object['keys'](_0x5b0125)){if(!this['_document']['roots']['has'](_0x22fb15))throw new _0x37bed6('realtimecollaborationclient-init-non-existent-root',this);const _0x571088=this['editor']['data']['parse'](_0x5b0125[_0x22fb15]),_0x52b57f=this['_document']['getRoot'](_0x22fb15),_0x3342b8=new _0x17a03e(_0x52f669['createPositionAt'](_0x52b57f,0x0),_0x571088,_0x4604eb++);_0x563549['push'](_0x3342b8);for(const [_0x12646d,_0x568249]of _0x571088['markers']){const _0x3106df=_0x52f669['createRange'](_0x52f669['createPositionFromPath'](_0x52b57f,_0x568249['start']['path']['slice']()),_0x52f669['createPositionFromPath'](_0x52b57f,_0x568249['end']['path']['slice']())),_0xb6c83e=new _0x23dfd1(_0x12646d,null,_0x3106df,_0x52f669['markers'],!0x0,_0x4604eb++);_0x563549['push'](_0xb6c83e);}}if(_0x2c9063)for(const [_0x47de1e,_0x48adca]of Object['entries'](_0x2c9063)){const _0x2742bb=_0x52f669['document']['getRoot'](_0x47de1e);if(!_0x2742bb)throw new _0x37bed6('multi-root-editor-root-attributes-no-root',null);for(const [_0x1de691,_0xa96bd3]of Object['entries'](_0x48adca))if(null!==_0xa96bd3){const _0x46d422=new _0x3a7055(_0x2742bb,_0x1de691,null,_0xa96bd3,_0x4604eb++);_0x563549['push'](_0x46d422);}}return _0x563549;}async['_loadRoot'](_0x29b2cf,_0x5cd44f,_0x67f12f){this['_getOperationsFromInitData']({[_0x29b2cf]:_0x5cd44f},{[_0x29b2cf]:_0x67f12f})['forEach']((_0xf37d1d,_0x9a5891)=>{_0xf37d1d['baseVersion']=this['_document']['version']+_0x9a5891,_0xf37d1d['_isInit']=!0x0,this['_saveOperationInBuffer'](_0xf37d1d);}),this['_sendBufferedOperationsDelayed'](),await this['_waitUntilSynced']();}async['_handleInitialConnectionData'](_0xe7d19e,_0x5d379c){let _0x594d3f;this['_offset']=_0xe7d19e['offset'];const _0x44f24a=_0xe7d19e['wereChangesApplied']&&!_0xe7d19e['initData'],_0x11fd0f=_0x44f24a?0x0:_0xe7d19e['data']['baseVersion'];if(_0x5d379c['forEach'](_0x215746=>{_0x215746['_isInit']=!0x0,_0x215746['createdAt']=_0xe7d19e['sessionCreatedAt'],_0x215746['_authorId']=null;}),_0x44f24a)_0x594d3f=_0x5d379c,this['_applyOperationsSet'](_0x594d3f,_0x44f24a);else{if(_0xe7d19e['initData']){const _0x42b515=this['_getOperationsFromInitData'](_0xe7d19e['initData']);this['_document']['history']['version']=-_0x42b515['length'],_0x42b515['forEach'](_0x5c9fbd=>{_0x5c9fbd['baseVersion']-=_0x42b515['length'],_0x5c9fbd['createdAt']=_0xe7d19e['sessionCreatedAt'],_0x5c9fbd['_isInit']=!0x0,_0x5c9fbd['_authorId']=null;}),this['_applyOperationsSet'](_0x42b515,!0x0),this['serverHistory']['version']=-_0x42b515['length']+this['_offset'],this['_updateServerHistory'](_0x42b515);}this['_document']['history']['version']=_0x11fd0f,_0x594d3f=this['_decompressOperations'](_0xe7d19e['data'],_0xe7d19e['metadata']),await this['_fetchMissingUsers'](_0x594d3f),this['_applyOperationsSet'](_0x594d3f,_0x44f24a);}_0xe7d19e['lastOperationId']&&(this['_operationIdentifier']['setIdForTheLastOperation'](_0x594d3f,_0xe7d19e['lastOperationId']),this['_lastSyncedOperationId']=_0xe7d19e['lastOperationId']),this['serverHistory']['version']=_0x11fd0f+this['_offset'],this['_updateServerHistory'](_0x594d3f),_0x5d379c['filter'](_0x2fc930=>{const _0x44e0f2=this['_getAffectedRoot'](_0x2fc930);return _0x44e0f2&&!this['_knownRootNames']['has'](_0x44e0f2);})['forEach']((_0x27aa61,_0x2d0444)=>{_0x27aa61['baseVersion']=this['_document']['version']+_0x2d0444,this['_saveOperationInBuffer'](_0x27aa61);}),this['_shouldSendUpdate']()?(this['_currentBufferDelay']=0x0,this['_sendBufferedOperationsDelayed'](!0x0),await this['_waitUntilSynced']()):(this['_isPendingUpdate']=!0x1,this['_clearPendingAction']());}['_crash'](_0x212d20,_0x6720a5,_0x22b859){throw this['_isPendingUpdate']=!0x0,_0x6720a5&&console['error'](_0x6720a5),_0x22b859&&this['editor']['enableReadOnlyMode']('realtimecollaborationclient-error'),new _0x37bed6(_0x212d20,this['editor']);}['_saveOperationInBuffer'](_0x2e8d87){this['_knownOperations']['has'](_0x2e8d87)||(this['_knownOperations']['add'](_0x2e8d87),this['_bufferedOperations']['push'](_0x2e8d87),this['_pendingAction']||'marker'==_0x2e8d87['type']&&!_0x2e8d87['affectsData']||this['_setPendingAction']());}['_sendBufferedOperationsDelayed'](_0x15d940=!0x1){!_0x15d940&&this['_isPendingUpdate']||(this['_isPendingUpdate']=!0x0,clearTimeout(this['_sendBufferedOperationsDelayId']),this['_sendBufferedOperationsDelayId']=setTimeout(()=>{this['_sendBufferedOperations']()['then'](_0x3c2d57=>{_0x3c2d57&&(this['_clearPendingAction'](),this['_isPendingUpdate']=!0x1);})['catch'](_0x2ea1ff=>{this['_clearPendingAction'](),this['_isPendingUpdate']=!0x1,function(_0x11bd57){return _0x11bd57['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x11bd57['message']['startsWith']('cloud-services-internal-error:\x20Collaborative\x20Editing\x20Service\x20is\x20not\x20connected.')||_0x11bd57['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}(_0x2ea1ff)||this['_crash'](_0x2ea1ff['message'],_0x2ea1ff,!0x0);});},this['_currentBufferDelay']));}['_waitUntilSynced'](){return new Promise(_0x170fed=>{this['on']('change:_isPendingUpdate',()=>{_0x170fed();});});}async['_sendBufferedOperations'](){const _0x1503b0=this['editor']['plugins']['get'](H);if(this['_shouldSendSelectionUpdate']()&&(_0x1503b0['createUserMarkerOperations'](),this['_hasSelectionChanged']=!0x1),!this['_shouldSendUpdate']())return!0x0;const _0x33440f=[...this['_bufferedOperations']];for(const _0x174077 of _0x33440f)_0x174077['wasUndone']=this['_document']['history']['isUndoneOperation'](_0x174077);const _0x325671=this['_operationIdentifier']['getIdOfTheLastOperation'](_0x33440f),_0x1f8a63=K++,_0xc0a83d=this['_compressOperations'](_0x33440f),_0x5720c0=await this['_service']['sendOperations'](_0xc0a83d,_0xc0a83d['baseVersion'],_0x325671);try{return await this['_handleServerResponse'](_0x33440f,_0x5720c0,_0x1f8a63);}catch(_0x113c5a){return this['_crash']('realtimecollaborationclient-sendbufferedoperations',_0x113c5a);}}async['_handleServerResponse'](_0x5cadc2,_0x2110ab,_0x5cb233){if('error'in _0x2110ab)throw _0x2110ab['error'];let _0xbc4aee=!0x1;if(_0x2110ab['wereChangesApplied']){_0x2110ab['lastOperationId']&&(this['_lastSyncedOperationId']=_0x2110ab['lastOperationId']),this['_bufferedOperations']=this['_bufferedOperations']['filter'](_0x2ba82e=>!_0x5cadc2['includes'](_0x2ba82e));for(const _0x131c9c of _0x5cadc2)_0x131c9c['createdAt']='lastOperationAcceptedAt'in _0x2110ab&&_0x2110ab['lastOperationAcceptedAt']||void 0x0;Q(_0x5cadc2,_0x2110ab['version']-_0x5cadc2['length']),this['_updateServerHistory'](_0x5cadc2);const _0x476952=_0x5cadc2['filter'](_0x3e9ac4=>{if(!_0x3e9ac4['_isInit'])return!0x1;const _0x1a7b41=this['_getAffectedRoot'](_0x3e9ac4);return _0x1a7b41&&!this['_knownRootNames']['has'](_0x1a7b41);});Q(_0x476952,this['_document']['version']),this['_applyOperationsSet'](_0x476952),_0xbc4aee=!0x0,this['_currentBufferDelay']=this['_baseBufferDelay'];}else{const _0x131cf9=this['_decompressOperations'](_0x2110ab['data'],_0x2110ab['metadata'])['filter'](_0x50f49e=>_0x50f49e['baseVersion']>=this['_lastServerVersion']);_0x131cf9['forEach'](_0x4446bb=>this['_addKnownRoot'](_0x4446bb)),this['_bufferedOperations']=this['_bufferedOperations']['filter'](_0x3595c2=>!_0x3595c2['_isInit']||!this['_knownRootNames']['has'](this['_getAffectedRoot'](_0x3595c2))),this['_bufferedOperations']['length']&&Q(this['_bufferedOperations'],this['_bufferedOperations'][0x0]['baseVersion']),await this['_fetchMissingUsers'](_0x131cf9),_0xbc4aee=this['_handleExternalOperations'](_0x131cf9,_0x2110ab['version'],_0x2110ab['lastOperationId']),this['_currentBufferDelay']=Math['round'](this['_currentBufferDelay']/0x2);}return _0xbc4aee?!this['_shouldSendUpdate']()||(this['_sendBufferedOperationsDelayed'](!0x0),!0x1):this['_crash']('realtimecollaborationclient-handleserverresponse');}['_handleExternalOperations'](_0x1d7482,_0x6403aa,_0x3769a5){try{const _0x1104f0={'document':this['_document'],'useRelations':!0x1,'padWithNoOps':!0x0},{operationsA:_0x45ee60,operationsB:_0x2b4ac6,originalOperations:_0x3e58c1}=_0x11eeae(_0x1d7482,this['_bufferedOperations'],_0x1104f0);Q(_0x45ee60,this['_document']['version']),Q(_0x2b4ac6,_0x6403aa);for(const _0x1a57e5 of _0x45ee60){const _0x1e8fa8=_0x3e58c1['get'](_0x1a57e5);_0x1a57e5['_authorId']=_0x1e8fa8?_0x1e8fa8['_authorId']:null;}_0x3769a5&&(this['_operationIdentifier']['setIdForTheLastOperation'](_0x1d7482,_0x3769a5),this['_lastSyncedOperationId']=_0x3769a5),this['_bufferedOperations']=[..._0x2b4ac6],this['_applyOperationsSet'](_0x45ee60),this['_updateServerHistory'](_0x1d7482);}catch(_0x4d4f67){return console['error'](_0x4d4f67),!0x1;}return!0x0;}['_applyOperationsSet'](_0x3dad1f,_0xacc0b8=!0x1){this['editor']['model']['enqueueChange']({'isUndoable':!0x1,'isLocal':!0x1},_0x39ff61=>{for(const _0x2ad4d3 of _0x3dad1f)this['_knownOperations']['add'](_0x2ad4d3),this['_addKnownRoot'](_0x2ad4d3),_0x39ff61['batch']['addOperation'](_0x2ad4d3),this['editor']['model']['applyOperation'](_0x2ad4d3);});}['_addKnownRoot'](_0x20034d){const _0xa31834=this['_getAffectedRoot'](_0x20034d);_0xa31834&&this['_knownRootNames']['add'](_0xa31834);}['_getAffectedRoot'](_0x10a9fe){let _0x3d0e0a,_0x42d0a6;switch(_0x10a9fe['type']){case'insert':_0x3d0e0a=_0x10a9fe['position']['root'];break;case'marker':if(_0x42d0a6=_0x10a9fe['newRange'],!_0x42d0a6)return null;_0x3d0e0a=_0x42d0a6['root'];break;case'addRootAttribute':_0x3d0e0a=_0x10a9fe['root'];break;case'addRoot':_0x3d0e0a=_0x10a9fe['affectedSelectable'];break;case'move':_0x3d0e0a=_0x10a9fe['targetPosition']['root'];break;default:return null;}return _0x3d0e0a['rootName'];}['_updateServerHistory'](_0x5d1dba){_0x5d1dba['forEach'](_0x5e3aca=>{const _0x3a7766=_0x5e3aca['clone']();_0x3a7766['_authorId']=_0x5e3aca['_authorId'],_0x3a7766['_isInit']=!!_0x5e3aca['_isInit'],_0x3a7766['createdAt']=_0x5e3aca['createdAt'],_0x3a7766['baseVersion']+=this['_offset'],_0x5e3aca['_isDisconnection']&&this['_disconnectionOperations']['add'](_0x3a7766),this['serverHistory']['addOperation'](_0x3a7766);});}['_handleReconnectionError'](_0x4428bf){const _0xa4b865=this['editor']['plugins']['get']('Notification'),_0x8bd54=this['editor']['locale'];_0x4428bf||(_0x4428bf=q(_0x8bd54,'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.')),_0xa4b865['showWarning'](_0x4428bf,{'title':q(_0x8bd54,'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'](_0x4e9cba)['add'](q(this['editor']['locale'],'PENDING_ACTION_SENDING_DATA')));}['_clearPendingAction'](){this['_pendingAction']&&(this['editor']['plugins']['get'](_0x4e9cba)['remove'](this['_pendingAction']),this['_pendingAction']=null);}['_compressOperations'](_0x22cc30){const _0x3e37bf=_0x22cc30['map'](_0x496725=>_0x496725['toJSON']());return this['_compressor']['compress'](_0x3e37bf);}['_decompressOperations'](_0x4b7cff,_0xf6b206){return this['_compressor']['decompress'](_0x4b7cff)['map']((_0x132b3e,_0x1a6747)=>{const _0x22ea2b='init'==_0xf6b206[_0x1a6747]['type'];if('InsertOperation'==_0x132b3e['__className']){const _0x5904f6=_0x132b3e['position']['root'];!this['_document']['getRoot'](_0x5904f6)&&(this['_document']['createRoot']('$root',_0x5904f6)['_isAttached']=!0x1);}const _0x4ea541=_0x4d3b91['fromJSON'](_0x132b3e,this['_document']);return _0x4ea541['wasUndone']=_0x132b3e['wasUndone'],_0x4ea541['_isInit']=_0x22ea2b,_0x4ea541['_authorId']=_0x22ea2b?null:_0xf6b206[_0x1a6747]['userId'],_0x4ea541['_isDisconnection']='cs:removeUser'===_0xf6b206[_0x1a6747]['type'],_0x4ea541['createdAt']=_0xf6b206[_0x1a6747]['createdAt'],_0x4ea541;});}['_refreshUserSelectionMarkers'](){this['_hasSelectionChanged']=!0x0,this['_shouldSendSelectionUpdate']()?this['_sendBufferedOperationsDelayed']():this['_hasSelectionChanged']=!0x1;}['_shouldSendSelectionUpdate'](){const _0x178be8=this['editor']['plugins']['get'](i)['channelSessions']['get'](this['_channelId']);return!this['editor']['isReadOnly']&&!!_0x178be8&&_0x178be8['length']>0x1&&this['_hasSelectionChanged'];}['_shouldSendUpdate'](){return this['_bufferedOperations']['length']>0x0||this['_shouldSendSelectionUpdate']();}}class J extends Error{}function Q(_0x101e4e,_0x349d9b){for(const _0x35a153 of _0x101e4e)_0x35a153['baseVersion']=_0x349d9b++;}class X{['_ignoredOperations'];['_operationToId'];constructor(_0x1624c4){this['_ignoredOperations']=_0x1624c4,this['_operationToId']=new WeakMap();}['getIdOfTheLastOperation'](_0x5ef0c7){let _0x413368=_0x5ef0c7['length'];for(;_0x413368--;){const _0x28e9b2=_0x5ef0c7[_0x413368];if(!this['_ignoredOperations']['has'](_0x28e9b2)){if(!this['_operationToId']['has'](_0x28e9b2)){const _0x4e8144=_0x5ea109()['slice'](0x1,0x12);this['_operationToId']['set'](_0x28e9b2,_0x4e8144);}return this['_operationToId']['get'](_0x28e9b2);}}}['setIdForTheLastOperation'](_0x5dce6d,_0x46feea){if(!_0x46feea)return;let _0x5d71f2=_0x5dce6d['length'];for(;_0x5d71f2--;){const _0x4c14d6=_0x5dce6d[_0x5d71f2];this['_ignoredOperations']['has'](_0x4c14d6)||this['_operationToId']['set'](_0x4c14d6,_0x46feea);}}}class n extends _0x266e72{static get['requires'](){return[l];}static get['pluginName'](){return'RealTimeCollaborativeEditing';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}class a extends _0x28c33e{static ['CommentsService']=/* #__PURE__ -- @preserve */
26
+ ((()=>_0x5c5406)());['_services'];static get['requires'](){return[c,'CommentsRepository',i,_0x4b7120];}static get['pluginName'](){return'CloudServicesCommentsAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x5a023a){super(_0x5a023a),this['_services']=new Map();}async['init'](){const _0x2644c2=this['context'],_0x25d3ee=_0x2644c2['plugins']['get']('CommentsRepository');if(_0x2644c2['plugins']['get'](c)['addToReconnectionStack'](this),_0x25d3ee['adapter']={'addCommentThread':async({channelId:_0x14c7f4,threadId:_0x4cc220,comments:_0x1b1747,resolvedAt:_0x3294b7,resolvedBy:_0x378165,context:_0x5d569b,attributes:_0x2b6271})=>{const _0x5e5394=await this['_getService'](_0x14c7f4)['addCommentThread']({'commentThreadId':_0x4cc220,'comments':_0x1b1747['map'](_0x314f9e=>function(_0x3926e7,_0x37474d,_0x1fccd5){return{'commentThreadId':_0x1fccd5,'commentId':_0x3926e7['commentId'],'userId':_0x3926e7['authorId'],'content':_0x3926e7['content'],'documentId':_0x37474d,'createdAt':_0x3926e7['createdAt'],'attributes':_0x3926e7['attributes']||{}};}(_0x314f9e,_0x14c7f4,_0x4cc220)),'resolvedAt':_0x3294b7,'resolvedBy':_0x378165,'context':_0x5d569b,'attributes':_0x2b6271})['catch'](ut);return{'threadId':_0x5e5394['commentThreadId'],'comments':_0x5e5394['comments']};},'getCommentThread':async({channelId:_0x52661e,threadId:_0x46a7c9})=>{const _0x37267e=await this['_getService'](_0x52661e)['getCommentThread'](_0x46a7c9)['catch'](ut);return _0x37267e['deletedAt']?null:(await this['_fetchMissingUsersForThreads']([_0x37267e]),{'threadId':_0x37267e['commentThreadId'],'comments':_0x37267e['comments']['map'](S),'context':_0x37267e['context'],'resolvedAt':_0x37267e['resolvedAt'],'resolvedBy':_0x37267e['resolvedBy'],'attributes':_0x37267e['attributes']||{}});},'updateCommentThread':async({channelId:_0x44e029,threadId:_0x4309d2,context:_0x3abe49,unlinkedAt:_0x1185de,attributes:_0x4d001a})=>this['_getService'](_0x44e029)['updateCommentThread']({'commentThreadId':_0x4309d2,'context':_0x3abe49,'attributes':_0x4d001a,'unlinkedAt':_0x1185de})['catch'](B)['catch'](ut),'resolveCommentThread':async({channelId:_0x3d2d4b,threadId:_0x2111ac})=>{const _0x815cfb=await this['_getService'](_0x3d2d4b)['resolveCommentThread'](_0x2111ac)['catch'](B)['catch'](ut);return{'threadId':_0x815cfb['commentThreadId'],'resolvedAt':_0x815cfb['resolvedAt'],'resolvedBy':_0x815cfb['resolvedBy']};},'reopenCommentThread':async({channelId:_0x19f44c,threadId:_0x54de01})=>this['_getService'](_0x19f44c)['reopenCommentThread'](_0x54de01)['catch'](B)['catch'](ut),'removeCommentThread':({channelId:_0x47e0a1,threadId:_0x20418d})=>this['_getService'](_0x47e0a1)['removeCommentThread'](_0x20418d)['catch'](B)['catch'](ut),'addComment':({channelId:_0x3cabfc,threadId:_0xb5950c,commentId:_0x40d2f1,content:_0x2eb523,attributes:_0x55550a})=>this['_getService'](_0x3cabfc)['addComment'](_0xb5950c,_0x40d2f1,_0x2eb523,_0x55550a)['catch'](ut),'updateComment':({channelId:_0x5782dc,threadId:_0xf1c7dc,commentId:_0x61091,content:_0x3c1706,attributes:_0x344d9d})=>this['_getService'](_0x5782dc)['updateComment'](_0xf1c7dc,_0x61091,_0x3c1706,_0x344d9d)['catch'](B)['catch'](ut),'removeComment':({channelId:_0x5c9360,threadId:_0x156b47,commentId:_0x221400})=>this['_getService'](_0x5c9360)['removeComment'](_0x156b47,_0x221400)['catch'](B)['catch'](ut)},_0x2644c2 instanceof _0x5c34e8){const _0x2d65b1=_0x2644c2['config']['get']('collaboration.channelId'),_0x290a5d=_0x2644c2['plugins']['get'](i);await this['_setUpService'](_0x2d65b1);const _0x3b5fa6=await this['_services']['get'](_0x2d65b1)['getConnectedSessions']();this['listenTo'](_0x290a5d,'sessionAdd:'+_0x2d65b1,(_0x40a132,{session:_0x5af38e})=>{_0x5af38e['id']===_0x290a5d['mySessionId']&&(_0x40a132['off'](),this['context']['plugins']['get']('Permissions')['setPermissions'](_0x5af38e['permissions'],_0x2d65b1));}),_0x290a5d['register'](_0x2d65b1,_0x3b5fa6);}}async['_setUpService'](_0x5775e3){if(this['_services']['has'](_0x5775e3))throw new _0x37bed6('cloudservicescommentsadapter-connect-already-connected',null,{'channelId':_0x5775e3});const _0x2d7b1f=this['context']['plugins']['get']('CommentsRepository'),_0x386b5a=new a['CommentsService'](_0x5775e3);this['_services']['set'](_0x5775e3,_0x386b5a),this['listenTo'](_0x386b5a,'commentThreadAdded',(_0x5a6e12,_0x2fffbf)=>{const {commentThreadId:_0x4b83f0,documentId:_0x4fc91f,context:_0x2a5812,attributes:_0x412ed3,resolvedAt:_0x26db41,resolvedBy:_0x15e116,comments:_0x5b6c7c}=_0x2fffbf;_0x2d7b1f['getCommentThread'](_0x4b83f0)||_0x2d7b1f['addCommentThread']({'threadId':_0x4b83f0,'channelId':_0x4fc91f,'comments':_0x5b6c7c?_0x5b6c7c['map'](S):[],'context':_0x2a5812,'attributes':_0x412ed3,'resolvedAt':_0x26db41,'resolvedBy':_0x15e116,'isFromAdapter':!0x0});}),this['listenTo'](_0x386b5a,'commentThreadUpdated',(_0x2e487f,{commentThreadId:_0x3a99fb,documentId:_0x944c2f,context:_0x22e03b,unlinkedAt:_0x2b5064,attributes:_0x1efead})=>{_0x2d7b1f['getCommentThread'](_0x3a99fb)&&_0x2d7b1f['updateCommentThread']({'threadId':_0x3a99fb,'channelId':_0x944c2f,'context':_0x22e03b,'unlinkedAt':_0x2b5064,'attributes':_0x1efead,'isFromAdapter':!0x0});}),this['listenTo'](_0x386b5a,'commentThreadResolved',(_0x177af0,{commentThreadId:_0x5c2758,resolvedBy:_0x2b47ec,resolvedAt:_0x4a4757})=>{const _0x201192=_0x2d7b1f['getCommentThread'](_0x5c2758);_0x201192&&_0x201192['resolve']({'resolvedBy':_0x2b47ec,'resolvedAt':_0x4a4757,'isFromAdapter':!0x0});}),this['listenTo'](_0x386b5a,'commentThreadReopened',(_0x41b103,{commentThreadId:_0xccd637})=>{const _0x531535=_0x2d7b1f['getCommentThread'](_0xccd637);_0x531535&&_0x531535['reopen']({'isFromAdapter':!0x0});}),this['listenTo'](_0x386b5a,'commentThreadRemoved',(_0x1254df,{commentThreadId:_0x3277cf})=>{const _0x2167a7=_0x2d7b1f['getCommentThread'](_0x3277cf);_0x2167a7&&_0x2167a7['remove']({'isFromAdapter':!0x0});}),this['listenTo'](_0x386b5a,'commentAdded',(_0x4923c0,_0x95a7c0)=>{const _0x311a2b=_0x95a7c0['commentThreadId'],_0x3795da=_0x2d7b1f['getCommentThread'](_0x311a2b);_0x3795da&&_0x3795da['addComment']({...S(_0x95a7c0),'isFromAdapter':!0x0});}),this['listenTo'](_0x386b5a,'commentUpdated',(_0x36c730,{commentThreadId:_0x42cafe,commentId:_0x2f456f,content:_0x265db5,attributes:_0x3907ae})=>{const _0xbbdf4e=_0x2d7b1f['getCommentThread'](_0x42cafe);if(_0xbbdf4e){const _0x318f81=_0xbbdf4e['getComment'](_0x2f456f);_0x318f81&&_0x318f81['update']({'content':_0x265db5,'attributes':_0x3907ae,'isFromAdapter':!0x0});}}),this['listenTo'](_0x386b5a,'commentRemoved',(_0x48dfec,{commentThreadId:_0x28ffd7,commentId:_0x18397f})=>{const _0xfb54bc=_0x2d7b1f['getCommentThread'](_0x28ffd7);if(_0xfb54bc){const _0xbda1e6=_0xfb54bc['getComment'](_0x18397f);_0xbda1e6&&_0xbda1e6['remove']({'isFromAdapter':!0x0});}}),await this['_connectService'](_0x5775e3);}['destroy'](){if(this['context']instanceof _0x5c34e8){const _0x52141b=this['context']['config']['get']('collaboration.channelId');this['_terminateService'](_0x52141b);}}['_terminateService'](_0xea722a){if(!this['_services']['has'](_0xea722a))throw new _0x37bed6('cloudservicescommentsadapter-disconnect-not-exist',null,{'channelId':_0xea722a});this['_getService'](_0xea722a)['disconnect'](),this['_services']['delete'](_0xea722a);}async['reconnect'](){for(const _0x278660 of this['_services']['keys']())await this['_connectService'](_0x278660);if(this['context']instanceof _0x5c34e8){const _0x5deb66=this['context']['config']['get']('collaboration.channelId'),_0x4d7c11=this['context']['plugins']['get'](i);_0x4d7c11['unregister'](_0x5deb66);const _0x30ec74=await this['_services']['get'](_0x5deb66)['getConnectedSessions']();_0x4d7c11['register'](_0x5deb66,_0x30ec74);}}async['_connectService'](_0x13c6dc){const {connection:_0x4bc3d2}=this['context']['plugins']['get'](c),_0x5ca1aa=this['context']['plugins']['get']('CommentsRepository'),_0x38a1ea=this['_services']['get'](_0x13c6dc),_0x3a2635=await _0x38a1ea['connect'](_0x4bc3d2);await this['_fetchMissingUsersForThreads'](_0x3a2635);const _0x388b20=new Set(Array['from'](_0x5ca1aa['getCommentThreads']({'channelId':_0x13c6dc}),_0xcf24b1=>_0xcf24b1['id']));for(const _0x18ab49 of _0x3a2635)_0x18ab49['deletedAt']||_0x388b20['delete'](_0x18ab49['commentThreadId']);for(const _0x230fc0 of _0x388b20)_0x5ca1aa['getCommentThread'](_0x230fc0)['remove']({'isFromAdapter':!0x0});for(const _0x232757 of _0x3a2635){let _0x547409=_0x5ca1aa['getCommentThread'](_0x232757['commentThreadId']);const {commentThreadId:_0x2c2363,context:_0x594eb1,attributes:_0x10adf0,resolvedBy:_0xc56772,resolvedAt:_0x435dfb,unlinkedAt:_0x4cf4d4,deletedAt:_0x220a43}=_0x232757;if(_0x220a43)continue;_0x547409||(_0x547409=_0x5ca1aa['addCommentThread']({'channelId':_0x13c6dc,'threadId':_0x2c2363,'context':_0x594eb1,'attributes':_0x10adf0||{},'resolvedBy':_0xc56772,'resolvedAt':_0x435dfb,'unlinkedAt':_0x4cf4d4,'isFromAdapter':!0x0}));const _0x128fc7=new Set(Array['from'](_0x547409['comments'],_0x22de6e=>_0x22de6e['id']));for(const _0x5f5940 of _0x232757['comments'])_0x128fc7['delete'](_0x5f5940['commentId']);for(const _0x191896 of _0x128fc7)_0x547409['getComment'](_0x191896)['remove']({'isFromAdapter':!0x0});for(const _0x5179a6 of _0x232757['comments']){const _0x4f048e=_0x547409['getComment'](_0x5179a6['commentId']);_0x4f048e?_0x4f048e['content']!==_0x5179a6['content']&&_0x4f048e['update']({'content':_0x5179a6['content'],'isFromAdapter':!0x0}):_0x547409['addComment'](Object['assign'](S(_0x5179a6),{'isFromAdapter':!0x0}));}}}['_getService'](_0x328b16){if(!this['_services']['has'](_0x328b16))throw new _0x37bed6('cloudservicescommentsadapter-service-not-exist',null,{'channelId':_0x328b16});return this['_services']['get'](_0x328b16);}async['_fetchMissingUsersForThreads'](_0x53e244){const _0x257059=this['context']['plugins']['get'](_0x4b7120),{connection:_0x2f91ce}=this['context']['plugins']['get'](c),_0x23f2a6=new Set();for(const {resolvedBy:_0x293228,comments:_0x2ae0dc}of _0x53e244){_0x293228&&!_0x257059['getUser'](_0x293228)&&_0x23f2a6['add'](_0x293228);for(const {userId:_0x5169d4}of _0x2ae0dc)_0x257059['getUser'](_0x5169d4)||_0x23f2a6['add'](_0x5169d4);}if(0x0===_0x23f2a6['size'])return;const _0x5ca0f5=await dt['getMany'](_0x2f91ce,Array['from'](_0x23f2a6));for(const _0x54a138 of _0x5ca0f5)_0x257059['getUser'](_0x54a138['id'])||_0x257059['addUser'](_0x54a138);}}async function B(_0x5bc103){if('404'!==_0x5bc103['code'])throw _0x5bc103;}function ut(_0x53440d){if((_0x1cec38=_0x53440d)['message']['startsWith']('cloud-services-internal-error:\x20Comments\x20Service\x20is\x20not\x20connected.')||_0x1cec38['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x1cec38['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.'))return new Promise(()=>{});var _0x1cec38;throw _0x53440d;}function S(_0x152b5b){return{'threadId':_0x152b5b['commentThreadId'],'commentId':_0x152b5b['commentId'],'content':_0x152b5b['content'],'createdAt':_0x152b5b['createdAt'],'authorId':_0x152b5b['userId'],'attributes':_0x152b5b['attributes']||{}};}class f extends _0x266e72{static ['TrackChangesService']=/* #__PURE__ -- @preserve */
27
+ ((()=>et)());['_bufferedRequests'];['_trackChangesService'];static get['requires'](){return[a,'TrackChangesEditing',c];}static get['pluginName'](){return'CloudServicesTrackChangesAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x2ec6a2){super(_0x2ec6a2);const _0x96a24c=this['editor']['config']['get']('collaboration.channelId');this['_bufferedRequests']=new Map(),this['_trackChangesService']=new f['TrackChangesService'](_0x96a24c);}['init'](){const _0x875e11=this['editor']['plugins']['get'](c),_0x5c49a3=this['editor']['plugins']['get']('TrackChangesEditing');return _0x5c49a3['adapter']={'getSuggestion':async _0x2da8f3=>{await this['_waitForServiceReady']();const _0x5abcf1=await this['_trackChangesService']['get'](_0x2da8f3)['catch'](R);return await this['_fetchMissingUsersForThreads']([_0x5abcf1]),_0x5abcf1;},'addSuggestion':async({id:_0x37ef70,type:_0x3c1ccb,data:_0x24c000,originalSuggestionId:_0x3a7990,attributes:_0x19f6fd})=>{await this['_waitForServiceReady']();const _0x372118={'id':_0x37ef70,'type':_0x3c1ccb,'data':_0x24c000,'originalSuggestionId':_0x3a7990,'attributes':_0x19f6fd},_0x566306=await this['_trackChangesService']['add'](_0x37ef70,_0x3c1ccb,_0x24c000,_0x3a7990,_0x19f6fd)['catch'](_0x518a01=>{if(ft(_0x518a01))return new Promise(_0x92fb34=>{this['_bufferedRequests']['set'](_0x37ef70,{'resolve':_0x92fb34,'suggestionData':_0x372118});});throw _0x518a01;});return this['_bufferedRequests']['delete'](_0x37ef70),_0x566306;},'updateSuggestion':async(_0x13c883,_0x6742d8)=>{if(await this['_waitForServiceReady'](),'open'!==_0x6742d8['state'])return this['_trackChangesService']['update'](_0x13c883,_0x6742d8)['catch'](R);}},this['listenTo'](this['_trackChangesService'],'suggestionUpdated',(_0xa649ac,_0x1e22bf)=>{_0x5c49a3['hasSuggestion'](_0x1e22bf['id'])&&(_0x5c49a3['getSuggestion'](_0x1e22bf['id'])['attributes']=_0x1e22bf['attributes']);}),this['_trackChangesService']['connect'](_0x875e11['connection'])['then'](_0x2fd973=>(_0x875e11['addToReconnectionStack'](this),this['_fetchMissingUsersForThreads'](_0x2fd973)['then'](()=>{for(const _0x33c5e8 of _0x2fd973){_0x5c49a3['addSuggestionData'](_0x33c5e8)['_saved']=!0x0;}})));}async['reconnect'](){const _0x136a59=this['editor']['plugins']['get']('TrackChangesEditing'),{connection:_0x573a9a}=this['editor']['plugins']['get'](c),_0xca6e79=await this['_trackChangesService']['connect'](_0x573a9a);await this['_fetchMissingUsersForThreads'](_0xca6e79);for(const {suggestionData:_0x458240,resolve:_0x117b00}of this['_bufferedRequests']['values']()){let _0x3f30a9=_0xca6e79['find'](_0x2dc1f8=>_0x2dc1f8['id']===_0x458240['id']);_0x3f30a9||(_0x3f30a9=await this['_trackChangesService']['add'](_0x458240['id'],_0x458240['type'],_0x458240['data'],_0x458240['originalSuggestionId'])),_0x117b00(_0x3f30a9);}for(const _0x4abf94 of _0xca6e79)_0x136a59['hasSuggestion'](_0x4abf94['id'])||_0x136a59['addSuggestionData'](_0x4abf94);}async['_waitForServiceReady'](){this['_trackChangesService']['isConnected']||await new Promise(_0x17a35b=>{this['listenTo'](this['_trackChangesService'],'connected',_0xc55b62=>{_0xc55b62['off'](),_0x17a35b();});});}async['_fetchMissingUsersForThreads'](_0x2c5576){const _0x4106af=this['editor']['plugins']['get'](_0x4b7120),{connection:_0xa40c71}=this['editor']['plugins']['get'](c),_0x517c33=new Set();for(const {authorId:_0x471f16}of _0x2c5576)_0x4106af['getUser'](_0x471f16)||_0x517c33['add'](_0x471f16);if(0x0===_0x517c33['size'])return;const _0xd24eb4=await dt['getMany'](_0xa40c71,Array['from'](_0x517c33));for(const _0x2a8d6a of _0xd24eb4)_0x4106af['getUser'](_0x2a8d6a['id'])||_0x4106af['addUser'](_0x2a8d6a);}}function R(_0x2f700c){if(ft(_0x2f700c))return new Promise(()=>{});throw _0x2f700c;}function ft(_0x2e4ef9){return _0x2e4ef9['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x2e4ef9['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}class m extends _0x266e72{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 _0xa27bd3=this['editor']['plugins']['get'](c),_0x432292=this['editor']['plugins']['get']('CommentsEditing'),_0x42719f=this['editor']['plugins']['get'](a);return this['editor']['data']['once']('ready',()=>{this['listenTo'](_0xa27bd3,'change:state',(_0x1a2ebd,_0x297056,_0x1fee89)=>{_0x432292['isThreadsLoadingPaused']='connected'!==_0x1fee89;});}),this['listenTo'](_0xa27bd3,'change:state',(_0x46557b,_0x4506b5,_0x23a588)=>{this['editor']['plugins']['get']('CommentsRepository')['switchReadOnly']('connected'!==_0x23a588);}),_0x42719f['_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 _0x266e72{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 _0x266e72{static ['RevisionHistoryService']=/* #__PURE__ -- @preserve */
28
+ ((()=>it)());['_lastRequestId'];['_revisionTracker'];['_revisionHistoryService'];['_oldOffset'];static get['requires'](){return[c,l,'RevisionTracker',i,_0x4b7120];}static get['pluginName'](){return'CloudServicesRevisionHistoryAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x9e8594){super(_0x9e8594);const _0x43bc8e=this['editor']['config']['get']('collaboration.channelId');this['_lastRequestId']=null,this['_revisionTracker']=this['editor']['plugins']['get']('RevisionTracker'),this['_revisionHistoryService']=new u['RevisionHistoryService'](_0x43bc8e);}async['init'](){const _0x38a53c=this['editor']['plugins']['get'](l),_0x222449=_0x38a53c['serverHistory'],_0x6ea0b2=this['editor']['plugins']['get'](c);this['_revisionTracker']['setSource']({'history':_0x222449,'getLatestVersion':()=>this['_getLatestVersion'](),'getCurrentRevisionId':()=>_0x38a53c['sessionId']});const _0x9c9ba4=this['editor']['config']['get']('cloudServices.bundleVersion')||nt,_0x3fd93c=await tt['isBundleUploaded'](_0x6ea0b2['connection'],_0x9c9ba4);this['_revisionTracker']['adapter']={'getRevision':async({revisionId:_0x5b28ed})=>(await this['_waitForServiceReady'](),await this['_revisionHistoryService']['getRevision'](_0x5b28ed)),'updateRevisions':async _0x1946dc=>{await this['_waitForServiceReady']();const _0x3eb514=this['_revisionTracker']['currentRevision'];if(_0x3fd93c&&0x1===_0x1946dc['length']&&_0x1946dc[0x0]['id']===_0x3eb514['id'])return _0x1946dc;for(const _0x3f63ca of _0x1946dc)_0x3f63ca['id']===_0x3eb514['id']&&(_0x3f63ca['isEmptyCurrent']=_0x3f63ca['fromVersion']===_0x3f63ca['toVersion']);return this['_revisionHistoryService']['updateRevisions'](_0x1946dc,this['_lastRequestId'])['then'](_0x20d8a7=>(this['_lastRequestId']=_0x20d8a7,_0x1946dc))['catch'](_0x18d6e6=>{if(st(_0x18d6e6)||'400'===_0x18d6e6['code']&&void 0x0!==_0x18d6e6['data']['wrongRequestId']){for(const _0x17a761 of _0x1946dc){!this['_revisionTracker']['repository']['getRevision'](_0x17a761['id'])||this['_revisionTracker']['_bufferUpdate'](_0x17a761['id'],_0x17a761,!0x1);}if(st(_0x18d6e6))throw _0x18d6e6;return _0x1946dc;}throw _0x18d6e6;});}},this['listenTo'](this['_revisionHistoryService'],'revisionsUpdated',(_0x9bf179,{revisionsData:_0x502c1b,requestId:_0x2687d0})=>{Math['max'](..._0x502c1b['map'](_0x1306d2=>_0x1306d2['toVersion']))>this['_getLatestVersionFromServerOperations']()-0x1?this['_getLatestVersion']()['then'](()=>{this['_handleRevisionsUpdate'](_0x502c1b,_0x2687d0);}):this['_handleRevisionsUpdate'](_0x502c1b,_0x2687d0);});const {revisions:_0x36464f,requestId:_0x1c38e7}=await this['_revisionHistoryService']['connect'](_0x6ea0b2['connection']);_0x6ea0b2['addToReconnectionStack'](this),this['_lastRequestId']=_0x1c38e7,await this['_fetchMissingUsers'](_0x36464f);for(const _0x852aa2 of _0x36464f)this['_revisionTracker']['addRevisionData'](_0x852aa2);this['listenTo'](_0x38a53c,'change:_isConnected',(_0x4629e4,_0x3acebb,_0x1fb6d8)=>{_0x1fb6d8&&(this['_oldOffset']=_0x38a53c['_offset'],_0x4629e4['off']());}),this['_revisionTracker']['bind']('isEnabled')['to'](_0x6ea0b2,'state',_0x4e953f=>_0x4e953f===_0x1cb2dd['CONNECTED']);}async['reconnect'](){const _0x383c2c=this['editor']['plugins']['get'](c),_0x3b003f=this['editor']['plugins']['get'](l),_0x542b66=async()=>{const _0x5109ca=this['_revisionTracker']['currentRevision'],_0x534d26=_0x5109ca['id'],_0x56ae02=_0x534d26!==_0x3b003f['sessionId'];if(_0x56ae02){const _0x453061=_0x3b003f['_offset']-this['_oldOffset'],_0x9900de=this['_getLatestVersionFromServerOperations']();this['_revisionTracker']['_revisionDataBuilder']['reInit']();if(_0x5109ca['toVersion']+_0x453061!==_0x9900de){const _0x210dd3=_0x5109ca['fromVersion']+_0x453061,_0x4bf328=this['editor']['plugins']['get'](_0x4b7120),_0x16de79=this['_revisionTracker']['buildRevisionData']({'revision':_0x5109ca,'from':_0x210dd3,'to':_0x9900de});_0x16de79['id']=_0x5109ca['id'];const _0x2bd82c=_0x16de79['authorsIds']['map'](_0x16e7c2=>_0x4bf328['getUser'](_0x16e7c2));_0x5109ca['_update']({..._0x16de79,'authors':_0x2bd82c},!0x0),this['_revisionTracker']['_bufferUpdate'](_0x5109ca['id'],_0x16de79,!0x0);}this['_revisionTracker']['_startingVersion']=_0x9900de,(_0x5109ca['toVersion']===_0x5109ca['fromVersion']&&!this['_revisionTracker']['_bufferedUpdates']['has'](_0x534d26)&&this['_revisionTracker']['repository']['_revisions']['remove'](_0x534d26),this['_revisionTracker']['_createCurrentRevision'](_0x9900de));}const {revisions:_0x18c373,requestId:_0x1f97fd}=await this['_revisionHistoryService']['reconnect'](_0x383c2c['connection'],this['_lastRequestId']);_0x56ae02&&_0x18c373['length']>0x0?_0x3b003f['_handleReconnectionError']():(await this['_fetchMissingUsers'](_0x18c373),this['_handleRevisionsUpdate'](_0x18c373,_0x1f97fd),this['_revisionTracker']['sendBufferedUpdates']());};return _0x3b003f['_isConnected']?_0x542b66():new Promise((_0x22b62e,_0x128139)=>{_0x3b003f['once']('change:_isConnected',()=>{_0x542b66()['then'](_0x22b62e)['catch'](_0x128139);});});}['destroy'](){super['destroy']();}async['_waitForServiceReady'](){this['_revisionHistoryService']['isConnected']||await new Promise(_0x52c322=>{this['listenTo'](this['_revisionHistoryService'],'connected',_0x53e598=>{_0x53e598['off'](),_0x52c322();});});}['_getLatestVersionFromServerOperations'](){const _0x1ed8d3=this['editor']['plugins']['get'](l)['serverHistory']['getOperations']()['reverse']();for(const _0x30f8b8 of _0x1ed8d3)if('marker'!==_0x30f8b8['type']||_0x30f8b8['affectsData'])return _0x30f8b8['baseVersion']+0x1;}['_getLatestVersion'](){const _0x221f21=this['editor']['plugins']['get'](l);return new Promise(_0x3326ab=>{_0x221f21['_isPendingUpdate']?_0x221f21['once']('change:_isPendingUpdate',()=>{_0x3326ab(this['_getLatestVersionFromServerOperations']());}):_0x3326ab(this['_getLatestVersionFromServerOperations']());});}['_handleRevisionsUpdate'](_0x50d8da,_0x435e0a){const _0x481dce=this['_revisionTracker']['repository'];this['_lastRequestId']=_0x435e0a;for(const _0x48daa8 of _0x50d8da){const _0x672c27=_0x481dce['getRevision'](_0x48daa8['id']);if(_0x672c27){if((_0x48daa8['fromVersion']||_0x48daa8['toVersion'])&&(_0x48daa8['diffData']=null),_0x672c27===this['_revisionTracker']['currentRevision']){const _0xa1cee0=Math['max'](_0x672c27['toVersion'],_0x48daa8['toVersion']),_0xed695e=Math['max'](_0x672c27['fromVersion'],_0x48daa8['fromVersion']);let _0x306172;_0x672c27['toVersion']===_0x48daa8['toVersion']&&_0x672c27['fromVersion']===_0x48daa8['fromVersion']?(_0x306172=!0x0,this['_preventResendingRevisionData'](_0x48daa8)):_0x48daa8['toVersion']===_0xa1cee0&&_0x48daa8['fromVersion']===_0xed695e?_0x306172=!0x1:(_0x672c27['toVersion']===_0xa1cee0&&_0x672c27['fromVersion']===_0xed695e||this['_fixRevision']({'revision':_0x672c27,'from':_0xed695e,'to':_0xa1cee0}),_0x306172=!0x0),_0x306172&&(delete _0x48daa8['fromVersion'],delete _0x48daa8['toVersion'],delete _0x48daa8['diffData'],delete _0x48daa8['createdAt'],delete _0x48daa8['authorsIds']);}this['_revisionTracker']['setRevisionData'](_0x48daa8),this['_preventResendingRevisionData'](_0x48daa8);}else this['_revisionTracker']['addRevisionData'](_0x48daa8);}const _0x5a8e60=_0x481dce['getRevisions']();_0x5a8e60['reverse']();for(let _0x14cc0f=0x0;_0x14cc0f<_0x5a8e60['length']-0x1;_0x14cc0f++){const _0x5d8ace=_0x5a8e60[_0x14cc0f],_0x11dd55=_0x5a8e60[_0x14cc0f+0x1];if(_0x5d8ace['fromVersion']<_0x11dd55['toVersion']){const _0x47aba5=_0x11dd55['toVersion'],_0x9f32a8=Math['max'](_0x47aba5,_0x5d8ace['toVersion']);this['_fixRevision']({'revision':_0x5d8ace,'from':_0x47aba5,'to':_0x9f32a8});}}}['_fixRevision']({revision:_0x4fab2f,from:_0xb21346,to:_0x57ee3b}={}){const _0xe7f1cb=this['editor']['plugins']['get'](_0x4b7120),_0x5da3fc=this['_revisionTracker']['buildRevisionData']({'revision':_0x4fab2f,'from':_0xb21346,'to':_0x57ee3b});_0x5da3fc['authors']=_0x5da3fc['authorsIds']['map'](_0x3d8296=>_0xe7f1cb['getUser'](_0x3d8296)),_0x4fab2f['_update'](_0x5da3fc);}['_preventResendingRevisionData'](_0x21b728){const _0xba194b={};_0xba194b['id']=_0x21b728['id'];for(const _0xc52ee of Object['keys'](_0x21b728))'id'!==_0xc52ee&&(_0xba194b[_0xc52ee]=void 0x0);this['_revisionTracker']['_bufferUpdate'](_0xba194b['id'],_0xba194b,!0x0);}async['_fetchMissingUsers'](_0x5983e4){const _0x23df4b=this['editor']['plugins']['get'](_0x4b7120),{connection:_0x491ea4}=this['editor']['plugins']['get'](c),_0x4e5edf=new Set();for(const _0x311fa8 of _0x5983e4){for(const _0x4f3a96 of _0x311fa8['authorsIds'])_0x4fa8dc(_0x4f3a96);_0x311fa8['creatorId']&&_0x4fa8dc(_0x311fa8['creatorId']);}if(0x0===_0x4e5edf['size'])return;const _0x578f9b=await dt['getMany'](_0x491ea4,Array['from'](_0x4e5edf));for(const _0x5aaf67 of _0x578f9b)_0x23df4b['getUser'](_0x5aaf67['id'])||_0x23df4b['addUser'](_0x5aaf67);function _0x4fa8dc(_0x3fcbdb){_0x23df4b['getUser'](_0x3fcbdb)||_0x4e5edf['add'](_0x3fcbdb);}}}function st(_0x739d15){return _0x739d15['message']['startsWith']('cloud-services-internal-error:\x20Revision\x20History\x20Service\x20is\x20not\x20connected.')||_0x739d15['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x739d15['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}class g extends _0x266e72{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 _0x4d54c6{constructor(_0x1ce6c2){super(_0x1ce6c2);const _0x508469=this['bindTemplate'];this['set']('usersCount',0x0),this['set']('isHidden',!0x0),this['setTemplate']({'tag':'div','attributes':{'class':['ck','ck-presence-list__counter',_0x508469['if']('isHidden','ck-presence-list__counter--hidden')]},'children':[{'text':_0x508469['to']('usersCount',_0x535cc6=>q(_0x1ce6c2,'CONNECTED_USERS',_0x535cc6))}]});}}class es extends _0x4d54c6{['items'];['keystrokes'];constructor(_0x2cbc89){super(_0x2cbc89);const _0x3f7120=this['bindTemplate'];this['items']=this['createCollection'](),this['keystrokes']=new _0x12f1de(),this['set']({'hasPopup':!0x1,'isExpanded':!0x1}),this['setTemplate']({'tag':'div','attributes':{'aria-haspopup':_0x3f7120['if']('hasPopup'),'aria-expanded':_0x3f7120['to']('isExpanded',_0x411a5b=>this['hasPopup']&&String(_0x411a5b)),'aria-label':_0x3f7120['to']('hasPopup',_0xcf1315=>q(_0x2cbc89,_0xcf1315?'Collapsed\x20connected\x20users\x20list\x20(press\x20ENTER\x20to\x20open\x20it)':'Connected\x20users\x20list')),'role':'list','tabindex':_0x3f7120['to']('hasPopup',_0x62ca07=>!!_0x62ca07&&0x0),'class':['ck','ck-presence-list__list']},'children':this['items'],'on':{'click':_0x3f7120['to'](()=>this['fire']('execute'))}}),this['on']('change:hasPopup',(_0x2bcc86,_0x35b698,_0x47253d)=>{this['element']&&(_0x47253d?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 _0x4d54c6{['counterView'];['inlineListView'];constructor(_0x82ce99){super(_0x82ce99);const _0x433800=this['bindTemplate'];this['set']('isCollapsed',!0x0),this['counterView']=new ts(this['locale']),this['inlineListView']=new es(_0x82ce99),this['inlineListView']['bind']('hasPopup')['to'](this,'isCollapsed'),this['listenTo'](this['inlineListView']['items'],'change',()=>{for(const _0x45cac4 of this['inlineListView']['items'])_0x45cac4['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',_0x433800['if']('isCollapsed','ck-presence-list--collapsed')]},'children':[this['counterView'],this['inlineListView']]});}}class j extends _0x4d54c6{['listWrapperView'];constructor(_0x33f4f9,_0x11511a){super(_0x33f4f9),this['listWrapperView']=new mt(_0x33f4f9,_0x11511a),this['setTemplate']({'tag':'div','attributes':{'tabindex':-0x1,'role':'application','class':['ck','ck-presence-list__dropdown-list'],'aria-label':q(_0x33f4f9,'Connected\x20users\x20list\x20dropdown\x20menu')},'children':[this['listWrapperView']]});}}class mt extends _0x25c79c{constructor(_0x5f23e3,_0x33f90b){super(_0x5f23e3);const _0x1ee76b=this['bindTemplate'];this['set']('_isScrollable',!0x1),this['setTemplate']({'tag':_0x33f90b?'div':'ul','attributes':{'class':['ck','ck-reset','ck-list','ck-presence-list__dropdown-list-wrapper',_0x1ee76b['if']('_isScrollable','ck-presence-list__dropdown-list-wrapper_scrollable')],'role':_0x1ee76b['to']('role'),'aria-label':_0x1ee76b['to']('ariaLabel'),'aria-labelledby':_0x1ee76b['to']('ariaLabelledBy')},'children':this['items']}),this['listenTo'](_0x1b9bae['window'],'resize',()=>this['checkIfScrollable']()),this['items']['on']('change',()=>this['checkIfScrollable']());}['render'](){super['render'](),this['checkIfScrollable']();}['checkIfScrollable'](){const _0x5f3bca=this['element'];_0x5f3bca&&(this['_isScrollable']=Math['max'](_0x5f3bca['scrollHeight'],_0x5f3bca['clientHeight'])>0.8*window['innerHeight']);}}class k extends rt{['userView'];constructor(_0x18469b,_0xdaef2,_0x3e7dba){super(_0x18469b);const _0x3ffff0=this['bindTemplate'];this['userView']=new ct(_0x18469b,_0xdaef2);const _0x2d5f87={'tag':'li','attributes':{'class':['ck','ck-presence-list__dropdown-list-item'],'tabindex':-0x1,'role':'presentation','aria-label':_0xdaef2['name']},'children':[this['userView'],{'tag':'span','attributes':{'class':['ck','ck-user__full-name']},'children':[{'text':_0xdaef2['name']}]},{'tag':'span','attributes':{'class':['ck','ck-presence-list__marker',_0xdaef2['color']['getBackgroundColorClass']()],'aria-hidden':'true'}}]};_0x3e7dba&&(_0x2d5f87['tag']='button',_0x2d5f87['on']={'click':_0x3ffff0['to'](()=>this['fire']('execute'))}),this['setTemplate'](_0x2d5f87);}['focus'](){this['element']['focus']();}}class y extends _0x4d54c6{['userView'];['markerView'];constructor(_0x305c33,_0x26324f,_0x2d1318){super(_0x305c33);const _0x54aa24=this['bindTemplate'];this['set']('isFocusable',!0x1),this['set']('hasTooltip',!0x0),this['set']('tooltipPosition',''),this['userView']=new ct(_0x305c33,_0x26324f),this['markerView']=new at(_0x305c33,_0x26324f);const _0x57e581=new ot(_0x305c33);_0x57e581['template']['tag']='span',_0x57e581['text']=_0x26324f['name'];const _0x469c81={'tag':'div','attributes':{'class':['ck','ck-presence-list__list-item'],'role':'listitem','tabindex':_0x54aa24['to']('isFocusable',_0x27357d=>!!_0x27357d&&0x0),'aria-labelledby':_0x57e581['id'],'data-cke-tooltip-text':this['userView']['name'],'data-cke-tooltip-position':_0x54aa24['to']('tooltipPosition'),'data-cke-tooltip-disabled':_0x54aa24['to']('hasTooltip',_0x279d88=>!_0x279d88),'data-cke-tooltip-class':'ck-presence-list__list-item__tooltip'},'children':[this['userView'],this['markerView'],_0x57e581]};_0x2d1318&&(_0x469c81['tag']='button',_0x469c81['on']={'click':_0x54aa24['to'](()=>this['fire']('execute'))}),this['setTemplate'](_0x469c81);}}class at extends _0x4d54c6{constructor(_0x49847a,_0x6e214d){super(_0x49847a),this['setTemplate']({'tag':'span','attributes':{'class':['ck','ck-presence-list__marker',_0x6e214d['color']['getBackgroundColorClass']()],'aria-hidden':'true'}});}}const A={'collapseAt':0x6,'displayMe':!0x0};class r extends _0x28c33e{['currentDisplayedUsers'];['balloonPanelView'];['view'];['presenceDropdownView'];['_bodyCollection']=null;constructor(_0x3edffb){super(_0x3edffb),this['context']['config']['define']('presenceList',A);const _0x222b8a=_0x3edffb['config']['get']('presenceList.collapseAt');if('number'!=typeof _0x222b8a)throw new _0x37bed6('presencelist-collapseat-invalid-format',this);if(_0x222b8a<0x1)throw new _0x37bed6('presencelist-collapseat-invalid-format',this);this['_allConnectedUsers']=this['context']['plugins']['get'](i)['allConnectedUsers'],this['set']('usersCount',0x0),this['currentDisplayedUsers']=new _0x12570d(),this['balloonPanelView']=new _0x52aab4(),this['balloonPanelView']['class']='ck\x20ck-presence-list__balloon',this['view']=this['_createView'](),this['presenceDropdownView']=void 0x0;}static get['requires'](){return[i];}['init'](){for(const _0x509178 of this['_allConnectedUsers'])this['_handleUserAdd'](_0x509178);this['listenTo'](this['_allConnectedUsers'],'add',(_0xdcbcb,_0x44a4b8)=>{this['_handleUserAdd'](_0x44a4b8);}),this['listenTo'](this['_allConnectedUsers'],'remove',(_0x30ad22,_0x565965)=>{this['_handleUserRemove'](_0x565965);});}['_createView'](){const _0x4d4f66=this['context'],_0x451dd0=new L(this['context']['locale']),_0x12e4f0=this['balloonPanelView'];if(!_0x5c575a(_0x4d4f66['config']['get']('presenceList.container')))throw new _0x37bed6('presencelist-missing-container',this);return _0x451dd0['counterView']['bind']('usersCount')['to'](this),_0x451dd0['bind']('isCollapsed')['to'](this,'usersCount',_0x15274e=>{const {collapseAt:_0x46450e,displayMe:_0x279796}=_0x4d4f66['config']['get']('presenceList'),_0x1ddd73=_0x15274e>=_0x46450e;return _0x451dd0['counterView']['isHidden']=!(0x1==_0x15274e&&_0x279796||_0x1ddd73),_0x1ddd73||this['hideDropdown'](),_0x1ddd73;}),_0x451dd0['inlineListView']['items']['bindTo'](this['currentDisplayedUsers'])['using'](_0x1c1ca8=>{const _0x48a9e7=_0x4d4f66['config']['get']('presenceList'),_0x3bb49a=new y(_0x4d4f66['locale'],_0x1c1ca8,!!_0x48a9e7['onClick']);return _0x3bb49a['bind']('hasTooltip')['to'](_0x451dd0,'isCollapsed',_0x3deb76=>!_0x3deb76),_0x3bb49a['bind']('isFocusable')['to'](_0x451dd0,'isCollapsed',_0x262a5f=>!_0x262a5f),_0x48a9e7['onClick']&&this['listenTo'](_0x3bb49a,'execute',()=>{this['view']['isCollapsed']||_0x48a9e7['onClick'](_0x1c1ca8,_0x3bb49a['element']);}),_0x3bb49a;}),this['listenTo'](_0x451dd0['inlineListView'],'execute',()=>{this['presenceDropdownView']?this['hideDropdown']():this['view']['isCollapsed']&&this['showDropdown']();}),_0x451dd0['inlineListView']['keystrokes']['set']('Enter',(_0x366670,_0x110aa1)=>{this['view']['isCollapsed']&&(this['showDropdown'](),_0x110aa1());}),_0x451dd0['render'](),_0x12e4f0['render'](),_0x77def9({'emitter':_0x451dd0,'activator':()=>_0x12e4f0['isVisible'],'contextElements':[_0x12e4f0['element'],_0x451dd0['inlineListView']['element']],'callback':()=>this['hideDropdown']()}),_0x4d4f66['config']['get']('presenceList.container')['appendChild'](_0x451dd0['element']),this['_bodyCollection']=new _0x2ee6b3(this['context']['locale']),this['_bodyCollection']['attachToDom'](),this['_bodyCollection']['add'](this['balloonPanelView']),_0x451dd0;}['_handleUserAdd'](_0x1d2fee){if(!this['context']['config']['get']('presenceList.displayMe')&&_0x1d2fee['isMe'])return;const _0xc5892=this['context']['config']['get']('presenceList.collapseAt')-0x1;this['usersCount']++,this['currentDisplayedUsers']['length']==_0xc5892&&this['currentDisplayedUsers']['length']>0x1&&this['currentDisplayedUsers']['remove'](0x1);const _0x7ea05e=_0x1d2fee['isMe']?0x0:this['currentDisplayedUsers']['length'];this['currentDisplayedUsers']['add'](_0x1d2fee,_0x7ea05e);}['_handleUserRemove'](_0x18b60d){if(this['usersCount']--,this['currentDisplayedUsers']['get'](_0x18b60d['id'])&&(this['currentDisplayedUsers']['remove'](_0x18b60d['id']),this['currentDisplayedUsers']['length']<this['usersCount'])){for(const _0x1a61dc of Array['from'](this['_allConnectedUsers'])['reverse']())if(!this['currentDisplayedUsers']['get'](_0x1a61dc['id']))return void this['currentDisplayedUsers']['add'](_0x1a61dc,Math['min'](this['currentDisplayedUsers']['length'],0x1));}}['showDropdown'](){if(this['presenceDropdownView'])return;const _0x4507c1=this['context']['config']['get']('presenceList');this['presenceDropdownView']=new j(this['context']['locale'],!!_0x4507c1['onClick']),this['view']['inlineListView']['isExpanded']=!0x0;const {listWrapperView:_0x169745}=this['presenceDropdownView'];_0x169745['items']['bindTo'](this['_allConnectedUsers'])['using'](_0x5ba426=>{if(!_0x4507c1['displayMe']&&_0x5ba426['isMe'])return null;const _0x2c3bb0=new k(this['context']['locale'],_0x5ba426,!!_0x4507c1['onClick']);return _0x4507c1['onClick']&&this['listenTo'](_0x2c3bb0,'execute',()=>{_0x4507c1['onClick'](_0x5ba426,_0x2c3bb0['element']);}),_0x2c3bb0;}),this['balloonPanelView']['content']['add'](this['presenceDropdownView']),this['balloonPanelView']['pin']({'target':this['view']['inlineListView']['element']}),_0x169745['focus'](),_0x169745['checkIfScrollable']();const _0x48463d=(_0x550b57,_0x486d4c)=>{this['hideDropdown'](),this['view']['inlineListView']['focus'](),_0x486d4c();};_0x169745['keystrokes']['set']('Esc',_0x48463d),_0x169745['keystrokes']['set']('Shift+Tab',_0x48463d),_0x169745['keystrokes']['set']('Tab',(_0x3db6fa,_0x554a53)=>{!function(_0x5c8e01){const _0x431345=['a','button','input','select','textarea','[tabindex]','[contenteditable]']['map'](_0x22e870=>_0x22e870+':not([disabled]):not([tabindex=\x22-1\x22])')['join'](','),_0x22ccc6=[...document['body']['querySelectorAll'](_0x431345)]['filter'](_0x110aa2=>_0x110aa2===document['activeElement']||_0x110aa2['offsetWidth']+_0x110aa2['offsetHeight']>0x0)['sort']((_0x40a02d,_0x5a1ef5)=>(_0x40a02d['tabIndex']||0x0)-(_0x5a1ef5['tabIndex']||0x0)),_0x3edee9=_0x22ccc6['indexOf'](_0x5c8e01),_0x39c4f2=_0x22ccc6[(_0x3edee9+0x1)%_0x22ccc6['length']];_0x39c4f2&&_0x39c4f2['focus']();}(this['view']['element']),this['hideDropdown'](),_0x554a53();}),_0x169745['focusTracker']['add'](this['view']['element']),_0x169745['focusTracker']['on']('change:isFocused',(_0x4b7659,_0x25591f,_0x56fb1d)=>{_0x56fb1d||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 _0x28c33e{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':_0x1e5366=>0x1!=_0x1e5366}};
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':_0x25a07f=>0x1!=_0x25a07f}};
@@ -20,4 +20,4 @@
20
20
  *
21
21
  *
22
22
  */
23
- (_0x34bc60=>{const {af:{dictionary:_0x168902,getPluralForm:_0x204486}}={'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':_0x154b3b=>0x1!=_0x154b3b}};_0x34bc60['af']||={'dictionary':{},'getPluralForm':null},_0x34bc60['af']['dictionary']=Object['assign'](_0x34bc60['af']['dictionary'],_0x168902),_0x34bc60['af']['getPluralForm']=_0x204486;})(window['CKEDITOR_TRANSLATIONS']||={});
23
+ (_0x48216f=>{const {af:{dictionary:_0x351264,getPluralForm:_0x3333da}}={'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':_0x545e37=>0x1!=_0x545e37}};_0x48216f['af']||={'dictionary':{},'getPluralForm':null},_0x48216f['af']['dictionary']=Object['assign'](_0x48216f['af']['dictionary'],_0x351264),_0x48216f['af']['getPluralForm']=_0x3333da;})(window['CKEDITOR_TRANSLATIONS']||={});