@ckeditor/ckeditor5-real-time-collaboration 44.3.0-alpha.3 → 44.3.0-alpha.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -20,9 +20,9 @@
20
20
  *
21
21
  *
22
22
  */
23
- import{ContextPlugin as _0x1bf31c,Plugin as _0x569f97,PendingActions as _0x383f8f,Context as _0x45674b}from'@ckeditor/ckeditor5-core/dist/index.js';import{DomEmitterMixin as _0x48b8ff,CKEditorError as _0x3cc9a2,Collection as _0xb9b57e,global as _0x501dc7,version as nt,uid as _0x4e5327,KeystrokeHandler as _0x1030f8}from'@ckeditor/ckeditor5-utils/dist/index.js';import{Notification as _0x2492ec,View as _0x4abdf7,ListView as _0x2b30ba,ListItemView as rt,LabelView as ot,BalloonPanelView as _0x50768e,clickOutsideHandler as _0x19cfcf,BodyCollection as _0x37b47d}from'@ckeditor/ckeditor5-ui/dist/index.js';import{LiveRange as ht,History as _0x4437c4,NoOperation as _0x389070,InsertOperation as _0x5b8a73,MarkerOperation as _0x1d65ad,RootAttributeOperation as _0x480810,transformSets as _0x23d7e3,OperationFactory as _0x4e1925}from'@ckeditor/ckeditor5-engine/dist/index.js';import{WebSocketGateway as lt,WEB_SOCKET_GATEWAY_STATES as _0x256970,CollaborativeEditingService as _0x46d982,User as dt,CommentsService as _0x4de34e,TrackChangesService as et,RevisionHistoryService as it,EditorService as tt}from'@ckeditor/ckeditor-cloud-services-collaboration/dist/index.js';import{Users as _0x256f41,UserView as ct}from'ckeditor5-collaboration/dist/index.js';import{Compressor as _0x238bb9}from'@ckeditor/ckeditor5-operations-compressor/dist/index.js';import{isElement as _0x363bb3}from'lodash-es';class c extends _0x1bf31c{static ['WebSocketGateway']=/* #__PURE__ -- @preserve */
24
- ((()=>lt)());static ['initialReconnectionInterval']=0x3e8;['connection'];['_reconnectionStack'];['_shouldPluginsReconnect'];['_domEmitter'];static get['requires'](){return['CloudServices',_0x2492ec];}static get['pluginName'](){return'WebSocketGateway';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x27809b){super(_0x27809b),this['set']('state',_0x256970['CONNECTED']),this['set']('_isBrowserOffline',!0x1),this['_reconnectionStack']=new Set(),this['_shouldPluginsReconnect']=!0x1,this['_domEmitter']=Object['create'](_0x48b8ff);}['init'](){const _0x5aa535=this['context'],_0x1cd5bd=_0x5aa535['plugins']['get']('CloudServices'),_0x37d15f=_0x5aa535['plugins']['get'](_0x2492ec);if(!_0x1cd5bd['token'])throw new _0x3cc9a2('websocketgateway-missing-token',this);if(!_0x1cd5bd['webSocketUrl'])throw new _0x3cc9a2('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'](_0x1cd5bd['token'],_0x1cd5bd['webSocketUrl'],{'timeout':0x3e8*this['context']['config']['get']('cloudServices.connectionTimeout'),'requestTimeout':0x3e8*this['context']['config']['get']('cloudServices.requestTimeout')})['then'](_0x185baf=>{if(this['connection']=_0x185baf,this['bind']('state')['to'](_0x185baf,'state',this,'_isBrowserOffline',(_0x11f2cf,_0x485507)=>('connected'!==_0x11f2cf&&(this['_shouldPluginsReconnect']=!0x0),_0x485507||_0x11f2cf!==_0x256970['CONNECTED']?_0x256970['DISCONNECTED']:this['state']==_0x256970['DISCONNECTED']&&this['_shouldPluginsReconnect']?(this['_shouldPluginsReconnect']=!0x1,this['_reconnect'](),_0x256970['CONNECTING']):_0x256970['CONNECTED'])),this['connection']['on']('error',(_0x4a40aa,_0x589f0f)=>{if('limitExceeded'!==_0x589f0f['code'])throw console['error'](_0x589f0f),new _0x3cc9a2('cloudservices-init',null,{'originalError':_0x589f0f});_0x37d15f['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'});}),!_0x185baf['me'])return new Promise(_0x5c9896=>_0x185baf['on']('change:me',_0x5c9896));})['catch'](_0x78577e=>{throw console['error'](_0x78577e),new _0x3cc9a2('cloudservices-init',null,{'originalError':_0x78577e});});}['addToReconnectionStack'](_0x3cb82b){if('function'!=typeof _0x3cb82b['reconnect'])throw new _0x3cc9a2('websocketgateway-invalid-plugin-interface',this);if(this['isInReconnectionStack'](_0x3cb82b))throw new _0x3cc9a2('websocketgateway-plugin-already-registered',this,{'name':_0x3cb82b['constructor']['pluginName']});this['_reconnectionStack']['add'](_0x3cb82b);}['removeFromReconnectionStack'](_0x189f11){this['_reconnectionStack']['delete'](_0x189f11);}['isInReconnectionStack'](_0xc99f57){return this['_reconnectionStack']['has'](_0xc99f57);}['_reconnect'](){return this['connection']['reconnect']()['then'](()=>Promise['all'](Array['from'](this['_reconnectionStack'],_0x26c28f=>_0x26c28f['reconnect']())))['then'](()=>this['state']=_0x256970['CONNECTED'])['catch'](_0x507179=>{throw console['error'](_0x507179),new _0x3cc9a2('cloudservices-reconnection-error',this['context']);});}['disconnect'](){this['connection']&&this['connection']['disconnect'](),this['state']=_0x256970['DISCONNECTED'],this['_domEmitter']['stopListening']();}['destroy'](){this['disconnect'](),super['destroy']();}}class i extends _0x1bf31c{['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,_0x256f41];}constructor(_0xc47f0c){super(_0xc47f0c),this['channelSessions']=new Map(),this['channelConnectedUsers']=new Map(),this['allConnectedUsers']=new _0xb9b57e(),this['_registeredSessions']=new Map(),this['_uniqueUsersCount']=0x0,this['_users']=this['context']['plugins']['get'](_0x256f41);}['init'](){const _0x24d44b=this['context']['plugins']['get'](c);this['listenTo'](_0x24d44b,'change:state',(_0x4f3a85,_0xe4f113,_0x91259c)=>{if('connected'!==_0x91259c)this['channelSessions']['forEach'](_0x51a4f6=>_0x51a4f6['clear']()),this['channelConnectedUsers']['forEach'](_0x14d425=>_0x14d425['clear']()),this['allConnectedUsers']['clear']();else{for(const [_0x5bc461,_0x2626de]of this['_registeredSessions'])for(const _0x567265 of _0x2626de)this['_handleSessionAdd'](_0x5bc461,_0x567265);}}),this['_createUser'](_0x24d44b['connection']['me'],!0x0);}['register'](_0xba7c4f,_0x324502){if(this['_registeredSessions']['has'](_0xba7c4f))throw new _0x3cc9a2('sessions-register-already-registered',null,{'channelId':_0xba7c4f});this['_registeredSessions']['set'](_0xba7c4f,_0x324502),this['channelSessions']['set'](_0xba7c4f,new _0xb9b57e()),this['channelConnectedUsers']['set'](_0xba7c4f,new _0xb9b57e()),this['listenTo'](_0x324502,'add',(_0x4b567d,_0x3b7b43)=>this['_handleSessionAdd'](_0xba7c4f,_0x3b7b43)),this['listenTo'](_0x324502,'remove',(_0x598cf9,_0x14bd36)=>this['_handleSessionRemove'](_0xba7c4f,_0x14bd36));for(const _0x25d7cc of _0x324502)this['_handleSessionAdd'](_0xba7c4f,_0x25d7cc);}['unregister'](_0x431ec8){if(!this['_registeredSessions']['has'](_0x431ec8))throw new _0x3cc9a2('sessions-unregister-not-exist',null,{'channelId':_0x431ec8});const _0xb2a9f0=this['_registeredSessions']['get'](_0x431ec8);this['stopListening'](_0xb2a9f0);for(const _0x13b4e6 of _0xb2a9f0)'connected'===this['context']['plugins']['get'](c)['state']&&this['_handleSessionRemove'](_0x431ec8,_0x13b4e6);this['_registeredSessions']['delete'](_0x431ec8),this['channelSessions']['delete'](_0x431ec8),this['channelConnectedUsers']['delete'](_0x431ec8);}get['mySessionId'](){return this['context']['plugins']['get'](c)['connection']['sessionId'];}['getUserBySessionId'](_0x5087b0){for(const _0x4d0e53 of this['channelSessions']['values']())for(const _0x2bb8c3 of _0x4d0e53)if(_0x2bb8c3['id']===_0x5087b0)return _0x2bb8c3['user'];}['getUserSessions'](_0x29464d,_0x50b0aa){const _0x17f9cd=_0x50b0aa?[this['channelSessions']['get'](_0x50b0aa)]:this['channelSessions']['values'](),_0x2611df=new Set();for(const _0x53fd08 of _0x17f9cd)for(const _0x50e22d of _0x53fd08)_0x50e22d['user']['id']===_0x29464d['id']&&_0x2611df['add'](_0x50e22d['id']);return _0x2611df;}['getUserRole'](_0x6c8b2e){for(const _0x14bf57 of this['channelSessions']['values']())for(const _0x1b0b94 of _0x14bf57)if(_0x1b0b94['user']===_0x6c8b2e)return _0x1b0b94['role'];}['_handleSessionAdd'](_0x552bf1,_0xff17d8){if('connected'!==this['context']['plugins']['get'](c)['state'])return;const _0x4b66d4=_0xff17d8['user'],_0x285af7=this['_users']['getUser'](_0x4b66d4['id'])||this['_createUser'](_0x4b66d4),_0x3c60e1=Object['assign']({},_0xff17d8,{'user':_0x285af7});this['channelSessions']['get'](_0x552bf1)['add'](_0x3c60e1);const _0xe9b456=this['channelConnectedUsers']['get'](_0x552bf1);_0xe9b456['has'](_0x285af7['id'])||_0xe9b456['add'](_0x285af7),this['allConnectedUsers']['has'](_0x285af7['id'])||this['allConnectedUsers']['add'](_0x285af7,_0x285af7['isMe']?0x0:void 0x0),this['fire']('sessionAdd:'+_0x552bf1,{'channelId':_0x552bf1,'session':_0x3c60e1});}['_handleSessionRemove'](_0x570ead,_0x50f49d){if('connected'!==this['context']['plugins']['get'](c)['state'])return;const _0xaacfed=this['channelConnectedUsers']['get'](_0x570ead),_0x500b6f=_0x50f49d['user'];_0x500b6f['id']&&(this['channelSessions']['get'](_0x570ead)['remove'](_0x50f49d['id']),_0xaacfed['has'](_0x500b6f['id'])&&!this['getUserSessions'](_0x500b6f,_0x570ead)['size']&&_0xaacfed['remove'](_0x500b6f['id']),this['allConnectedUsers']['get'](_0x500b6f['id'])&&!this['getUserSessions'](_0x500b6f)['size']&&this['allConnectedUsers']['remove'](_0x500b6f['id']));}['_createUser'](_0x29fa85,_0x2dbc99){const _0x4326c1=this['_users']['addUser'](_0x29fa85);return _0x2dbc99&&this['_users']['defineMe'](_0x29fa85['id']),_0x4326c1['orderNumber']=this['_uniqueUsersCount']++,_0x4326c1;}}class H extends _0x569f97{['_domEmitter']=new(_0x48b8ff())();static get['requires'](){return[i];}static get['pluginName'](){return'UserMarkers';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['init'](){const _0x562ecf=this['editor'],_0x293581=_0x562ecf['plugins']['get'](i);_0x562ecf['conversion']['for']('editingDowncast')['markerToElement']({'model':'user:position','view':(_0x341a5a,{writer:_0x593c89})=>function(_0x24a0af,_0x283a4f,_0xdb578c,_0x267d1b){const _0x12efab=_0x24a0af['markerName']['split'](':')[0x2],_0x2eda1b=_0xdb578c['getUserBySessionId'](_0x12efab);if(!_0x2eda1b||_0x12efab===_0xdb578c['mySessionId'])return;if(!_0x267d1b['model']['schema']['checkChild'](_0x24a0af['markerRange']['start'],'$text'))return;const _0x49df2f={'class':'ck-user__marker\x20'+_0x2eda1b['color']['getMarkerClass'](),'data-name':_0x2eda1b['name'],'data-session-id':_0x12efab},_0x58d8ee=_0x267d1b['model']['markers']['get'](_0x24a0af['markerName']),_0x4939d4=_0x58d8ee['getStart'](),_0x401c10=_0x4939d4['nodeAfter'],_0xf96e97=_0x267d1b['model']['schema'];if(_0x401c10&&_0xf96e97['isObject'](_0x401c10)&&_0xf96e97['isInline'](_0x401c10)&&!_0x267d1b['model']['markers']['get']('user:range:'+_0x12efab)['getRange']()['isCollapsed'])return;const _0xdf3d63=_0x4939d4['parent'];return _0x267d1b['model']['schema']['isLimit'](_0xdf3d63)&&!_0x267d1b['model']['hasContent'](_0xdf3d63)&&(_0x49df2f['contenteditable']=!0x1),function(_0x4d3a7f,_0x38b1ad,_0x16403e){const _0x589525=_0x4d3a7f['createUIElement']('span',_0x38b1ad);return _0x4d3a7f['setCustomProperty']('userPositionMarker',!0x0,_0x589525),_0x589525['render']=function(_0x1d4802){const _0x1cf310=this['toDomElement'](_0x1d4802),_0x46775c=document['createElement']('span');return _0x46775c['classList']['add']('ck-user__marker-tooltip'),_0x46775c['setAttribute']('contenteditable','false'),_0x46775c['setAttribute']('spellcheck','false'),_0x46775c['textContent']=_0x16403e['name'],_0x1cf310['innerHTML']='⁠<span\x20class=\x22ck-user__marker-line\x22\x20contenteditable=\x22false\x22><span\x20class=\x22ck-user__marker-dot\x22></span></span>'+_0x46775c['outerHTML']+'⁠',_0x1cf310['addEventListener']('mouseenter',()=>{_0x1cf310['classList']['add']('ck-user__marker_hovered');}),_0x1cf310['addEventListener']('mouseleave',()=>{_0x1cf310['classList']['remove']('ck-user__marker_hovered');}),_0x1cf310;},_0x589525['isSimilar']=function(_0x425a33){return!(!this['getCustomProperty']('userPositionMarker')||!_0x425a33['getCustomProperty']('userPositionMarker')||this['getAttribute']('data-session-id')!=_0x425a33['getAttribute']('data-session-id'));},_0x589525;}(_0x283a4f,_0x49df2f,_0x2eda1b);}(_0x341a5a,_0x593c89,_0x293581,_0x562ecf)}),_0x562ecf['conversion']['for']('editingDowncast')['markerToHighlight']({'model':'user:range','view':_0x47df1c=>function(_0x4f13f2,_0x3f128a){const _0x8e3ff8=_0x4f13f2['markerName']['split'](':')[0x2];if(_0x8e3ff8===_0x3f128a['mySessionId'])return null;const _0x533a6b=_0x3f128a['getUserBySessionId'](_0x8e3ff8);if(!_0x533a6b)return{'id':_0x8e3ff8,'classes':[]};return{'id':_0x8e3ff8,'classes':['ck-user__selection',_0x533a6b['color']['getSelectionClass']()],'attributes':{'data-session-id':_0x8e3ff8},'priority':0x7d0+_0x533a6b['orderNumber']};}(_0x47df1c,_0x293581)}),function(_0x1448eb){const _0x38d3b4=_0x1448eb['model'],_0x147e9c=new Map(),_0x45b966=_0x1448eb['plugins']['get'](i);_0x38d3b4['markers']['on']('update:user:range',(_0x1d9b71,_0xc7e6e5,_0x25588c,_0x3ebe53)=>{if(!_0x3ebe53&&_0x147e9c['get'](_0xc7e6e5['name']))return _0x147e9c['get'](_0xc7e6e5['name'])['detach'](),void _0x147e9c['delete'](_0xc7e6e5['name']);const _0xb9732c=_0xc7e6e5['name']['split'](':')[0x2];if(_0xb9732c===_0x45b966['mySessionId'])return;const _0x502367='user:position:'+_0xb9732c;_0x38d3b4['markers']['has'](_0x502367)&&_0x1448eb['editing']['reconvertMarker'](_0x502367),_0xc7e6e5['on']('change:range',(_0x3e3c0b,_0x3ec97f,_0x3fa4f0)=>{if('$graveyard'!=_0x3ec97f['root']['rootName']&&'$graveyard'==_0xc7e6e5['getRange']()['root']['rootName']&&!_0x147e9c['has'](_0xc7e6e5['name'])){const _0x31af0b=_0x38d3b4['schema']['getNearestSelectionRange'](_0x3fa4f0['deletionPosition']);if(_0x31af0b){const _0x10bc21=ht['fromRange'](_0x31af0b);_0x147e9c['set'](_0xc7e6e5['name'],_0x10bc21),_0x10bc21['on']('change:range',(_0x4b2883,_0x5646ea,_0x141398)=>{if('$graveyard'==_0x10bc21['root']['rootName']){const _0x5ea51a=_0x38d3b4['schema']['getNearestSelectionRange'](_0x141398['deletionPosition']);_0x5ea51a?(_0x10bc21['start']=_0x5ea51a['start'],_0x10bc21['end']=_0x5ea51a['end']):(_0x147e9c['delete'](_0xc7e6e5['name']),_0x10bc21['detach']());}});}}});}),_0x38d3b4['document']['on']('change',()=>{_0x147e9c['size']>0x0&&_0x38d3b4['enqueueChange']({'isUndoable':!0x1},_0x3aad6f=>{for(const [_0x5e8224,_0x63b81b]of _0x147e9c)'$graveyard'==_0x38d3b4['markers']['get'](_0x5e8224)['getRange']()['root']['rootName']&&(re(_0x5e8224['split'](':')[0x2],_0x63b81b['toRange'](),_0x38d3b4,_0x3aad6f),_0x63b81b['detach']());_0x147e9c['clear']();});});}(_0x562ecf),this['_domEmitter']['listenTo'](_0x501dc7['document'],'keydown',(_0x559bc5,{key:_0x3aebc5})=>{'Escape'===_0x3aebc5&&function(_0x5960ba){_0x5960ba['editing']['view']['change'](_0x1942d4=>{for(const _0x271083 of _0x5960ba['model']['markers']){if(!_0x271083['name']['startsWith']('user:position'))continue;const _0x932555=_0x5960ba['editing']['mapper']['markerNameToElements'](_0x271083['name']);if(_0x932555){for(const _0x17325a of _0x932555)_0x1942d4['removeClass']('ck-user__marker_hovered',_0x17325a);}}});}(_0x562ecf);},{'useCapture':!0x0});}['afterInit'](){const _0x38c5cf=this['editor'],_0x36a0c9=_0x38c5cf['commands']['get']('undo');_0x36a0c9&&_0x38c5cf['model']['on']('applyOperation',(_0x2c9147,_0x7a6dfe)=>{const _0x5e06d5=_0x7a6dfe[0x0];if(!_0x5e06d5['isDocumentOperation'])return;if('marker'!=_0x5e06d5['type']||!_0x5e06d5['name']['startsWith']('user:'))return;const _0x294f14=_0x5e06d5['batch'];_0x36a0c9['_createdBatches']['has'](_0x294f14)&&(_0x5e06d5['newRange']=_0x5e06d5['oldRange']?_0x38c5cf['model']['createRange'](_0x5e06d5['oldRange']['start'],_0x5e06d5['oldRange']['end']):null);},{'priority':'highest'});}['destroy'](){return this['_domEmitter']['stopListening'](),super['destroy']();}['createUserMarkerOperations'](){const _0x55e044=this['editor'],_0xa0c4a7=_0x55e044['model']['document'],_0x479d59=_0x55e044['plugins']['get'](i);_0x55e044['model']['enqueueChange']({'isUndoable':!0x1},_0x487026=>{const _0x452a8d='user:range:'+_0x479d59['mySessionId'],_0x5e34f3='user:position:'+_0x479d59['mySessionId'],_0x770056=_0x55e044['model']['markers']['has'](_0x452a8d);_0x55e044['editing']['view']['hasDomSelection']?re(_0x479d59['mySessionId'],_0xa0c4a7['selection']['getFirstRange'](),_0x55e044['model'],_0x487026):_0x770056&&(_0x487026['removeMarker'](_0x452a8d),_0x487026['removeMarker'](_0x5e34f3));});}}function re(_0x3c699f,_0x3e783b,_0x464441,_0xbce0f8){const _0x24e66d='user:range:'+_0x3c699f,_0x47513a='user:position:'+_0x3c699f,_0x7db3f0=_0x3e783b['getContainedElement']();let _0x147a74=_0x3e783b['start'];_0x7db3f0&&_0x7db3f0['is']('element','tableCell')&&(_0x147a74=function(_0x47a307,_0x57b4ec){for(const _0x164b5f of _0x47a307['getPositions']())if(_0x57b4ec['schema']['checkChild'](_0x164b5f,'$text'))return _0x164b5f;}(_0x3e783b,_0x464441),_0x3e783b=_0xbce0f8['createRange'](_0x147a74));const _0x555140=_0xbce0f8['createRange'](_0x147a74);_0x464441['markers']['has'](_0x24e66d)?(_0xbce0f8['updateMarker'](_0x24e66d,{'range':_0x3e783b}),_0xbce0f8['updateMarker'](_0x47513a,{'range':_0x555140})):(_0xbce0f8['addMarker'](_0x24e66d,{'range':_0x3e783b,'usingOperation':!0x0}),_0xbce0f8['addMarker'](_0x47513a,{'range':_0x555140,'usingOperation':!0x0}));}function q(_0x51e997,_0x3e3220,_0x2c8cba){const _0x3b151a=_0x51e997['t'],t=_0x51e997['t'];switch(_0x3e3220){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 _0x3b151a({'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'},_0x2c8cba);default:return'';}}let K=0x1;class l extends _0x569f97{static ['CollaborativeEditingService']=/* #__PURE__ -- @preserve */
25
- ((()=>_0x46d982)());['_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,_0x383f8f,_0x256f41,_0x2492ec];}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 _0x3934c3=this['serverHistory']['getOperations']();for(let _0x356fa1=_0x3934c3['length']-0x1;_0x356fa1>=0x0;_0x356fa1--){const _0x2af1d6=_0x3934c3[_0x356fa1];if(!this['_disconnectionOperations']['has'](_0x2af1d6))return _0x2af1d6['baseVersion']+0x1-this['_offset'];}return 0x0;}constructor(_0x5f07b3){if(super(_0x5f07b3),this['_offset']=0x0,this['sessionId']=null,this['serverHistory']=new _0x4437c4(),this['editor']['config']['define']('collaboration',{}),this['_channelId']=this['editor']['config']['get']('collaboration.channelId'),!this['_channelId'])throw new _0x3cc9a2('collaboration-missing-channelid',this);const _0x329e29=_0x5f07b3['config']['get']('cloudServices.bundleVersion')||nt;this['_service']=new l['CollaborativeEditingService'](_0x329e29,this['_channelId']),this['_document']=this['editor']['model']['document'],this['_compressor']=new _0x238bb9(),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 _0x3472ff=this['editor'],_0xaaccc0=_0x3472ff['plugins']['get'](_0x256f41),_0x2794e2=_0x3472ff['plugins']['get'](c);this['listenTo'](_0xaaccc0,'getOperationAuthor',(_0x40406e,_0x5b2910)=>{const _0x42f683=_0x5b2910[0x0];_0x42f683['_authorId']&&(_0x40406e['return']=_0xaaccc0['getUser'](_0x42f683['_authorId']),_0x40406e['stop']()),null===_0x42f683['_authorId']&&(_0x40406e['return']=null,_0x40406e['stop']());},{'priority':'high'}),this['listenTo'](_0x3472ff['model']['document']['selection'],'change:range',(_0x464a2d,_0x1026c8)=>{_0x1026c8['directChange']&&this['_refreshUserSelectionMarkers']();}),this['listenTo'](_0x3472ff['editing']['view'],'change:hasDomSelection',()=>{this['_refreshUserSelectionMarkers']();}),this['_initThrowingOnDataSet'](),_0x3472ff['model']['on']('applyOperation',(_0x285ff5,_0x452bdc)=>{const _0x444e4f=_0x452bdc[0x0];_0x444e4f['isDocumentOperation']&&(this['_saveOperationInBuffer'](_0x444e4f),this['_shouldSendUpdate']()&&this['_sendBufferedOperationsDelayed']());}),this['_setUpDataInit'](),this['bind']('_isEditingAllowed')['to'](_0x2794e2,'state',this,'_hasSynchronizationProblem',(_0x3cd9cf,_0x2e62d3)=>'connected'===_0x3cd9cf&&!_0x2e62d3),this['on']('change:_isEditingAllowed',()=>{this['_isEditingAllowed']?_0x3472ff['disableReadOnlyMode']('rtc-offline'):_0x3472ff['enableReadOnlyMode']('rtc-offline');}),this['_isEditingAllowed']?_0x3472ff['disableReadOnlyMode']('rtc-offline'):_0x3472ff['enableReadOnlyMode']('rtc-offline'),this['set']('_isConnected',!0x1);}async['reconnect'](){const _0x197801=this['editor']['plugins']['get'](i),_0x4629f3=this['editor']['plugins']['get'](c);try{this['_isPendingUpdate']=!0x0,_0x197801['unregister'](this['_channelId']);const _0xb2fad4=await this['_service']['reconnect'](_0x4629f3['connection'],this['lastSyncVersion']);await this['_handleReconnectionResponse'](_0xb2fad4)&&(this['_isPendingUpdate']=!0x1,this['_clearPendingAction']());const _0xd20f80=await this['_service']['getConnectedSessions']();_0x197801['register'](this['_channelId'],_0xd20f80),this['_handleSendingSelectionMarkers'](),this['_isConnected']=!0x0;}catch(_0x2700db){if(function(_0x206f36){return'404'===_0x206f36['code'];}(_0x2700db)&&this['sessionId'])await this['_connectAfterSessionHasBeenFlushed']();else{if(function(_0x14fe8e){return'409'===_0x14fe8e['code'];}(_0x2700db)){const _0x50c1d6=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'](_0x50c1d6);}else{if(!(_0x2700db instanceof J))throw _0x2700db;this['_handleReconnectionError']();}}}}['destroy'](){const _0x536106=this['editor']['plugins']['get'](c),_0x57594e=this['editor']['plugins']['get'](i);this['editor']['enableReadOnlyMode']('rtc-destroyed'),_0x57594e['channelSessions']['has'](this['_channelId'])&&_0x57594e['unregister'](this['_channelId']),_0x536106['removeFromReconnectionStack'](this),this['_disconnectService'](),super['destroy']();}async['_handleReconnectionResponse'](_0x331827){if(this['sessionId']!==_0x331827['sessionId']&&this['_lastSyncedOperationId']!==_0x331827['lastOperationId'])throw new J();return this['sessionId']=_0x331827['sessionId'],this['_handleServerResponse']([],{..._0x331827,'wereChangesApplied':!0x1,'data':_0x331827['data']},'reconnect');}async['_connectService'](_0x166e1c,_0x2166a0=!0x1){const {connection:_0x5194b5}=this['editor']['plugins']['get'](c);l['CollaborativeEditingService']['getConnectedSessions'](_0x5194b5,this['_channelId'])['then'](_0x28fb7f=>this['_initSessionsHandling'](_0x28fb7f))['catch'](_0x5a5d31=>{this['_crash']('realtimecollaborationclient-init-session-connection-error',_0x5a5d31);}),this['listenTo'](this['_service'],'operationsReceived',this['_handleReceivedOperations']['bind'](this)),this['listenTo'](this['_service'],'error',(_0x38a7ed,_0x276358)=>{this['_crash']('realtimecollaborationclient-init-service-internal-error',_0x276358);}),this['listenTo'](this['_service'],'disconnected',()=>{this['_isConnected']=!0x1;});const _0x12eaf0=this['_operationIdentifier']['getIdOfTheLastOperation'](_0x166e1c);this['_isPendingUpdate']=!0x0;const _0x321b8d=await this['_service']['connect'](_0x5194b5,this['_compressOperations'](_0x166e1c),_0x12eaf0);if(this['sessionId']=_0x321b8d['sessionId'],_0x2166a0){if(!_0x321b8d['wereChangesApplied'])return void this['_handleReconnectionError']();this['_isPendingUpdate']=!0x1,this['_clearPendingAction'](),this['serverHistory']['reset'](),this['_offset']=_0x321b8d['offset'],this['serverHistory']['version']=this['_offset'],await this['_handleServerResponse'](_0x166e1c,_0x321b8d,'reconnection:\x20flushed\x20session');}else await this['_handleInitialConnectionData'](_0x321b8d,_0x166e1c);this['_handleSendingSelectionMarkers'](),this['_isConnected']=!0x0;}['_handleSendingSelectionMarkers'](){const _0x316ef8=this['editor']['plugins']['get'](i),_0x11a940=this['editor']['plugins']['get'](H),_0x38cad9=_0x316ef8['channelSessions']['get'](this['_channelId']);_0x38cad9&&_0x38cad9['length']>0x1?_0x11a940['createUserMarkerOperations']():this['listenTo'](_0x316ef8,'sessionAdd:'+this['_channelId'],()=>{0x2===_0x316ef8['channelSessions']['get'](this['_channelId'])['length']&&_0x11a940['createUserMarkerOperations']();});}async['_handleReceivedOperations'](_0xdc9efe,_0x4d909e,_0x99c69e,_0x456700){if(!this['_isPendingUpdate']&&this['_document']['version']==_0x4d909e){const _0xe8e017=this['_decompressOperations'](_0x99c69e,_0x456700);await this['_fetchMissingUsers'](_0xe8e017),this['_handleExternalOperations'](_0xe8e017,_0x4d909e,_0x99c69e['lastOperationId'])||this['_crash']('realtimecollaborationclient-init-service-incorrect-server-operation');}}async['_connectAfterSessionHasBeenFlushed'](){this['_disconnectService']();const {locale:_0x3a84f5}=this['editor'];let _0x342db5;try{_0x342db5=await this['_service']['getDocumentDetails']();}catch(_0x41ccb6){const _0x449551=q(_0x3a84f5,'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'](_0x449551);}const _0x4043d7=_0x342db5['currentDocumentSession']||_0x342db5['lastDocumentSession'];if(this['_lastSyncedOperationId']===_0x4043d7['lastOperationId'])await this['_connectService'](this['editor']['model']['document']['history']['getOperations'](),!0x0);else{const _0x49f2df=q(_0x3a84f5,'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'](_0x49f2df);}}['_disconnectService'](){this['_service']['disconnect'](),this['_bufferedOperations']=[],clearTimeout(this['_sendBufferedOperationsDelayId']),this['stopListening'](this['_service']);}['_initSessionsHandling'](_0x433c3b){const _0xe044be=this['editor']['plugins']['get'](i);this['listenTo'](_0xe044be,'sessionAdd:'+this['_channelId'],(_0x58de54,{session:_0x310ba5})=>{if(_0x310ba5['id']===_0xe044be['mySessionId']){_0x58de54['off']();const _0x13df0c=this['editor']['plugins']['has']('CommentsOnly')&&this['editor']['plugins']['get']('CommentsOnly');let _0x3e83a3=_0x310ba5['permissions'];_0x13df0c&&_0x13df0c['isEnabled']&&(_0x3e83a3=_0x3e83a3['filter'](_0x12c2b3=>'document:write'!==_0x12c2b3)),this['editor']['plugins']['get']('Permissions')['setPermissions'](_0x3e83a3,this['_channelId']);}}),_0xe044be['register'](this['_channelId'],_0x433c3b);}['_initThrowingOnDataSet'](){const _0x4c20fa=this['editor']['data']['set'];this['editor']['data']['set']=(..._0x36162a)=>{if(!_0x36162a[_0x36162a['length']-0x1]['suppressErrorInCollaboration'])throw new _0x3cc9a2('realtimecollaborationclient-editor-setdata-and-editor-data-set-are-forbidden-in-real-time-collaboration',this);_0x4c20fa['apply'](this['editor']['data'],_0x36162a);};}['_setUpDataInit'](){this['editor']['data']['on']('init',(_0x287dba,[_0x4a3c67])=>{if(this['_document']['version'])throw new _0x3cc9a2('realtimecollaborationclient-init-document-already-initialized',this);_0x287dba['stop'](),this['_setPendingAction']();const _0x2a9b27=this['editor']['config']['get']('rootsAttributes'),_0x479992=this['_getOperationsFromInitData'](_0x4a3c67,_0x2a9b27);0x0==_0x479992['length']&&_0x479992['push'](new _0x389070(0x0)),_0x287dba['return']=this['_connectService'](_0x479992)['then'](()=>{this['editor']['plugins']['get'](c)['addToReconnectionStack'](this),this['editor']['data']['fire']('ready');})['catch'](_0x554022=>this['_crash']('realtimecollaborationclient-init-connection-failed',_0x554022))['finally'](()=>this['_clearPendingAction']());},{'priority':'high'}),this['editor']['on']('loadRoot',async(_0x40b246,[_0x1b35ba,_0x3a96af])=>{_0x40b246['stop']();const _0x2f5e3e=this['editor']['model']['document']['getRoot'](_0x1b35ba);if(!this['_knownRootNames']['has'](_0x1b35ba)){const _0x56c871=_0x3a96af&&_0x3a96af['data']?_0x3a96af['data']:'',_0x704fcb=_0x3a96af&&_0x3a96af['attributes']?_0x3a96af['attributes']:{};await this['_loadRoot'](_0x1b35ba,_0x56c871,_0x704fcb);}this['editor']['model']['enqueueChange']({'isUndoable':!0x1},()=>{_0x2f5e3e['_isLoaded']=!0x0,this['editor']['model']['document']['differ']['_bufferRootLoad'](_0x2f5e3e);});},{'priority':'high'});}async['_fetchMissingUsers'](_0x47531a){const _0x449146=this['editor']['plugins']['get'](_0x256f41),{connection:_0x4cdcf3}=this['editor']['plugins']['get'](c),_0x6ffef3=new Set();for(const _0x57fba8 of _0x47531a){const _0x235dd7=_0x57fba8['_authorId'];_0x235dd7&&!_0x449146['getUser'](_0x235dd7)&&_0x6ffef3['add'](_0x235dd7);}if(0x0===_0x6ffef3['size'])return;const _0x43339f=await dt['getMany'](_0x4cdcf3,Array['from'](_0x6ffef3));for(const _0x3d07ce of _0x43339f)_0x449146['getUser'](_0x3d07ce['id'])||_0x449146['addUser'](_0x3d07ce);}['_getOperationsFromInitData'](_0x36a0ab,_0x38ede0={}){const _0x23a29a=this['editor']['model'],_0x54c0c0=[];let _0x543609=0x0;const _0xb2baec='string'==typeof _0x36a0ab?{'main':_0x36a0ab}:_0x36a0ab;for(const _0x41c50f of Object['keys'](_0xb2baec)){if(!this['_document']['roots']['has'](_0x41c50f))throw new _0x3cc9a2('realtimecollaborationclient-init-non-existent-root',this);const _0x593932=this['editor']['data']['parse'](_0xb2baec[_0x41c50f]),_0x4afaec=this['_document']['getRoot'](_0x41c50f),_0x151cf9=new _0x5b8a73(_0x23a29a['createPositionAt'](_0x4afaec,0x0),_0x593932,_0x543609++);_0x54c0c0['push'](_0x151cf9);for(const [_0x43ea50,_0x43b19c]of _0x593932['markers']){const _0x1b0e95=_0x23a29a['createRange'](_0x23a29a['createPositionFromPath'](_0x4afaec,_0x43b19c['start']['path']['slice']()),_0x23a29a['createPositionFromPath'](_0x4afaec,_0x43b19c['end']['path']['slice']())),_0x536c28=new _0x1d65ad(_0x43ea50,null,_0x1b0e95,_0x23a29a['markers'],!0x0,_0x543609++);_0x54c0c0['push'](_0x536c28);}}if(_0x38ede0)for(const [_0x578f5b,_0x424389]of Object['entries'](_0x38ede0)){const _0x4465c7=_0x23a29a['document']['getRoot'](_0x578f5b);if(!_0x4465c7)throw new _0x3cc9a2('multi-root-editor-root-attributes-no-root',null);for(const [_0x4a78fb,_0x101e04]of Object['entries'](_0x424389))if(null!==_0x101e04){const _0x510bbd=new _0x480810(_0x4465c7,_0x4a78fb,null,_0x101e04,_0x543609++);_0x54c0c0['push'](_0x510bbd);}}return _0x54c0c0;}async['_loadRoot'](_0x55af28,_0x22bc22,_0x891c5d){this['_getOperationsFromInitData']({[_0x55af28]:_0x22bc22},{[_0x55af28]:_0x891c5d})['forEach']((_0x3060fb,_0xa98124)=>{_0x3060fb['baseVersion']=this['_document']['version']+_0xa98124,_0x3060fb['_isInit']=!0x0,this['_saveOperationInBuffer'](_0x3060fb);}),this['_sendBufferedOperationsDelayed'](),await this['_waitUntilSynced']();}async['_handleInitialConnectionData'](_0x4a8670,_0x49e82c){let _0x34a36f;this['_offset']=_0x4a8670['offset'];const _0x4b62b1=_0x4a8670['wereChangesApplied']&&!_0x4a8670['initData'],_0x1d6ec9=_0x4b62b1?0x0:_0x4a8670['data']['baseVersion'];if(_0x49e82c['forEach'](_0x2792c4=>{_0x2792c4['_isInit']=!0x0,_0x2792c4['createdAt']=_0x4a8670['sessionCreatedAt'],_0x2792c4['_authorId']=null;}),_0x4b62b1)_0x34a36f=_0x49e82c,this['_applyOperationsSet'](_0x34a36f,_0x4b62b1);else{if(_0x4a8670['initData']){const _0x1cf537=this['_getOperationsFromInitData'](_0x4a8670['initData']);this['_document']['history']['version']=-_0x1cf537['length'],_0x1cf537['forEach'](_0xec45b6=>{_0xec45b6['baseVersion']-=_0x1cf537['length'],_0xec45b6['createdAt']=_0x4a8670['sessionCreatedAt'],_0xec45b6['_isInit']=!0x0,_0xec45b6['_authorId']=null;}),this['_applyOperationsSet'](_0x1cf537,!0x0),this['serverHistory']['version']=-_0x1cf537['length']+this['_offset'],this['_updateServerHistory'](_0x1cf537);}this['_document']['history']['version']=_0x1d6ec9,_0x34a36f=this['_decompressOperations'](_0x4a8670['data'],_0x4a8670['metadata']),await this['_fetchMissingUsers'](_0x34a36f),this['_applyOperationsSet'](_0x34a36f,_0x4b62b1);}_0x4a8670['lastOperationId']&&(this['_operationIdentifier']['setIdForTheLastOperation'](_0x34a36f,_0x4a8670['lastOperationId']),this['_lastSyncedOperationId']=_0x4a8670['lastOperationId']),this['serverHistory']['version']=_0x1d6ec9+this['_offset'],this['_updateServerHistory'](_0x34a36f),_0x49e82c['filter'](_0x24c6e3=>{const _0x34949a=this['_getAffectedRoot'](_0x24c6e3);return _0x34949a&&!this['_knownRootNames']['has'](_0x34949a);})['forEach']((_0x4e7966,_0x45b163)=>{_0x4e7966['baseVersion']=this['_document']['version']+_0x45b163,this['_saveOperationInBuffer'](_0x4e7966);}),this['_shouldSendUpdate']()?(this['_currentBufferDelay']=0x0,this['_sendBufferedOperationsDelayed'](!0x0),await this['_waitUntilSynced']()):(this['_isPendingUpdate']=!0x1,this['_clearPendingAction']());}['_crash'](_0x1c9940,_0x2680a5){const _0x13ce22=_0x2680a5&&_0x2680a5['message'];if(_0x13ce22&&_0x13ce22['startsWith']('realtimecollaborationclient'))throw _0x2680a5;const _0x15ca6b=this['editor']['plugins']['get'](c);throw this['_isPendingUpdate']=!0x0,_0x15ca6b['disconnect'](),this['editor']['enableReadOnlyMode']('realtimecollaborationclient-error'),new _0x3cc9a2(_0x1c9940,this['editor'],_0x13ce22?{'originalError':_0x13ce22}:void 0x0);}['_saveOperationInBuffer'](_0x5648bf){this['_knownOperations']['has'](_0x5648bf)||(this['_knownOperations']['add'](_0x5648bf),this['_bufferedOperations']['push'](_0x5648bf),this['_pendingAction']||'marker'==_0x5648bf['type']&&!_0x5648bf['affectsData']||this['_setPendingAction']());}['_sendBufferedOperationsDelayed'](_0x3751ef=!0x1){!_0x3751ef&&this['_isPendingUpdate']||(this['_isPendingUpdate']=!0x0,clearTimeout(this['_sendBufferedOperationsDelayId']),this['_sendBufferedOperationsDelayId']=setTimeout(()=>{this['_sendBufferedOperations']()['then'](_0x2aace2=>{_0x2aace2&&(this['_clearPendingAction'](),this['_isPendingUpdate']=!0x1);})['catch'](_0x411395=>{this['_clearPendingAction'](),this['_isPendingUpdate']=!0x1,function(_0x596916){return _0x596916['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x596916['message']['startsWith']('cloud-services-internal-error:\x20Collaborative\x20Editing\x20Service\x20is\x20not\x20connected.')||_0x596916['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}(_0x411395)||this['_crash'](_0x411395['message'],_0x411395);});},this['_currentBufferDelay']));}['_waitUntilSynced'](){return new Promise(_0x68e8b1=>{this['on']('change:_isPendingUpdate',()=>{_0x68e8b1();});});}async['_sendBufferedOperations'](){const _0x55eb06=this['editor']['plugins']['get'](H);if(this['_shouldSendSelectionUpdate']()&&(_0x55eb06['createUserMarkerOperations'](),this['_hasSelectionChanged']=!0x1),!this['_shouldSendUpdate']())return!0x0;const _0x324fef=[...this['_bufferedOperations']];for(const _0x25dde6 of _0x324fef)_0x25dde6['wasUndone']=this['_document']['history']['isUndoneOperation'](_0x25dde6);const _0x37633d=this['_operationIdentifier']['getIdOfTheLastOperation'](_0x324fef),_0x238106=K++,_0x21b69b=this['_compressOperations'](_0x324fef),_0x5da86c=await this['_service']['sendOperations'](_0x21b69b,_0x21b69b['baseVersion'],_0x37633d);try{return await this['_handleServerResponse'](_0x324fef,_0x5da86c,_0x238106);}catch(_0x4c117d){return this['_crash']('realtimecollaborationclient-sendbufferedoperations',_0x4c117d);}}async['_handleServerResponse'](_0x243358,_0x1bd097,_0x3d47b1){if('error'in _0x1bd097)throw _0x1bd097['error'];let _0x23e2d5=!0x1;if(_0x1bd097['wereChangesApplied']){_0x1bd097['lastOperationId']&&(this['_lastSyncedOperationId']=_0x1bd097['lastOperationId']),this['_bufferedOperations']=this['_bufferedOperations']['filter'](_0x275768=>!_0x243358['includes'](_0x275768));for(const _0x4caea0 of _0x243358)_0x4caea0['createdAt']='lastOperationAcceptedAt'in _0x1bd097&&_0x1bd097['lastOperationAcceptedAt']||void 0x0;Q(_0x243358,_0x1bd097['version']-_0x243358['length']),this['_updateServerHistory'](_0x243358);const _0xb24b70=_0x243358['filter'](_0x4b504c=>{if(!_0x4b504c['_isInit'])return!0x1;const _0x324ee7=this['_getAffectedRoot'](_0x4b504c);return _0x324ee7&&!this['_knownRootNames']['has'](_0x324ee7);});Q(_0xb24b70,this['_document']['version']),this['_applyOperationsSet'](_0xb24b70),_0x23e2d5=!0x0,this['_currentBufferDelay']=this['_baseBufferDelay'];}else{const _0x18050f=this['_decompressOperations'](_0x1bd097['data'],_0x1bd097['metadata'])['filter'](_0x5692ae=>_0x5692ae['baseVersion']>=this['_lastServerVersion']);_0x18050f['forEach'](_0x46c7f7=>this['_addKnownRoot'](_0x46c7f7)),this['_bufferedOperations']=this['_bufferedOperations']['filter'](_0x5a93b3=>!_0x5a93b3['_isInit']||!this['_knownRootNames']['has'](this['_getAffectedRoot'](_0x5a93b3))),this['_bufferedOperations']['length']&&Q(this['_bufferedOperations'],this['_bufferedOperations'][0x0]['baseVersion']),await this['_fetchMissingUsers'](_0x18050f),_0x23e2d5=this['_handleExternalOperations'](_0x18050f,_0x1bd097['version'],_0x1bd097['lastOperationId']),this['_currentBufferDelay']=Math['round'](this['_currentBufferDelay']/0x2);}return _0x23e2d5?!this['_shouldSendUpdate']()||(this['_sendBufferedOperationsDelayed'](!0x0),!0x1):this['_crash']('realtimecollaborationclient-handleserverresponse');}['_handleExternalOperations'](_0x5754b2,_0x42aadf,_0x154cb2){try{const _0x5a4790={'document':this['_document'],'useRelations':!0x1,'padWithNoOps':!0x0},{operationsA:_0x3ceb2c,operationsB:_0x58a740,originalOperations:_0x5b7e81}=_0x23d7e3(_0x5754b2,this['_bufferedOperations'],_0x5a4790);Q(_0x3ceb2c,this['_document']['version']),Q(_0x58a740,_0x42aadf);for(const _0x470616 of _0x3ceb2c){const _0x1fa2d3=_0x5b7e81['get'](_0x470616);_0x470616['_authorId']=_0x1fa2d3?_0x1fa2d3['_authorId']:null;}_0x154cb2&&(this['_operationIdentifier']['setIdForTheLastOperation'](_0x5754b2,_0x154cb2),this['_lastSyncedOperationId']=_0x154cb2),this['_bufferedOperations']=[..._0x58a740],this['_applyOperationsSet'](_0x3ceb2c),this['_updateServerHistory'](_0x5754b2);}catch(_0x2c174e){return console['error'](_0x2c174e),!0x1;}return!0x0;}['_applyOperationsSet'](_0x19ddcf,_0x318642=!0x1){this['editor']['model']['enqueueChange']({'isUndoable':!0x1,'isLocal':!0x1},_0x347423=>{for(const _0x5808ca of _0x19ddcf)this['_knownOperations']['add'](_0x5808ca),this['_addKnownRoot'](_0x5808ca),_0x347423['batch']['addOperation'](_0x5808ca),this['editor']['model']['applyOperation'](_0x5808ca);});}['_addKnownRoot'](_0x393001){const _0x50ec97=this['_getAffectedRoot'](_0x393001);_0x50ec97&&this['_knownRootNames']['add'](_0x50ec97);}['_getAffectedRoot'](_0x29735d){let _0x5cc432,_0x139959;switch(_0x29735d['type']){case'insert':_0x5cc432=_0x29735d['position']['root'];break;case'marker':if(_0x139959=_0x29735d['newRange'],!_0x139959)return null;_0x5cc432=_0x139959['root'];break;case'addRootAttribute':_0x5cc432=_0x29735d['root'];break;case'addRoot':_0x5cc432=_0x29735d['affectedSelectable'];break;case'move':_0x5cc432=_0x29735d['targetPosition']['root'];break;default:return null;}return _0x5cc432['rootName'];}['_updateServerHistory'](_0x387fcf){_0x387fcf['forEach'](_0x23bcdb=>{const _0xbc8650=_0x23bcdb['clone']();_0xbc8650['_authorId']=_0x23bcdb['_authorId'],_0xbc8650['_isInit']=!!_0x23bcdb['_isInit'],_0xbc8650['createdAt']=_0x23bcdb['createdAt'],_0xbc8650['baseVersion']+=this['_offset'],_0x23bcdb['_isDisconnection']&&this['_disconnectionOperations']['add'](_0xbc8650),this['serverHistory']['addOperation'](_0xbc8650);});}['_handleReconnectionError'](_0x1df9c3){const _0x944f63=this['editor']['plugins']['get']('Notification'),_0x257870=this['editor']['locale'];_0x1df9c3||(_0x1df9c3=q(_0x257870,'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.')),_0x944f63['showWarning'](_0x1df9c3,{'title':q(_0x257870,'Synchronization\x20issue'),'namespace':'real-time-collaboration'}),this['_hasSynchronizationProblem']=!0x0,clearTimeout(this['_sendBufferedOperationsDelayId']),this['_bufferedOperations']=[],this['editor']['plugins']['get'](c)['disconnect']();}['_setPendingAction'](){this['_pendingAction']||(this['_pendingAction']=this['editor']['plugins']['get'](_0x383f8f)['add'](q(this['editor']['locale'],'PENDING_ACTION_SENDING_DATA')));}['_clearPendingAction'](){this['_pendingAction']&&(this['editor']['plugins']['get'](_0x383f8f)['remove'](this['_pendingAction']),this['_pendingAction']=null);}['_compressOperations'](_0x47761a){const _0x255067=_0x47761a['map'](_0x117519=>_0x117519['toJSON']());return this['_compressor']['compress'](_0x255067);}['_decompressOperations'](_0x3ec298,_0x44ab03){return this['_compressor']['decompress'](_0x3ec298)['map']((_0x501c32,_0x205e4c)=>{const _0x1a5496='init'==_0x44ab03[_0x205e4c]['type'];if('InsertOperation'==_0x501c32['__className']){const _0x1583e0=_0x501c32['position']['root'];!this['_document']['getRoot'](_0x1583e0)&&(this['_document']['createRoot']('$root',_0x1583e0)['_isAttached']=!0x1);}const _0x59d6b9=_0x4e1925['fromJSON'](_0x501c32,this['_document']);return _0x59d6b9['wasUndone']=_0x501c32['wasUndone'],_0x59d6b9['_isInit']=_0x1a5496,_0x59d6b9['_authorId']=_0x1a5496?null:_0x44ab03[_0x205e4c]['userId'],_0x59d6b9['_isDisconnection']='cs:removeUser'===_0x44ab03[_0x205e4c]['type'],_0x59d6b9['createdAt']=_0x44ab03[_0x205e4c]['createdAt'],_0x59d6b9;});}['_refreshUserSelectionMarkers'](){this['_hasSelectionChanged']=!0x0,this['_shouldSendSelectionUpdate']()?this['_sendBufferedOperationsDelayed']():this['_hasSelectionChanged']=!0x1;}['_shouldSendSelectionUpdate'](){const _0x5a59de=this['editor']['plugins']['get'](i)['channelSessions']['get'](this['_channelId']);return!this['editor']['isReadOnly']&&!!_0x5a59de&&_0x5a59de['length']>0x1&&this['_hasSelectionChanged'];}['_shouldSendUpdate'](){return this['_bufferedOperations']['length']>0x0||this['_shouldSendSelectionUpdate']();}}class J extends Error{}function Q(_0x5b3d86,_0xa20020){for(const _0x48e4dc of _0x5b3d86)_0x48e4dc['baseVersion']=_0xa20020++;}class X{['_ignoredOperations'];['_operationToId'];constructor(_0x593811){this['_ignoredOperations']=_0x593811,this['_operationToId']=new WeakMap();}['getIdOfTheLastOperation'](_0x4b96de){let _0x5625cf=_0x4b96de['length'];for(;_0x5625cf--;){const _0xc186aa=_0x4b96de[_0x5625cf];if(!this['_ignoredOperations']['has'](_0xc186aa)){if(!this['_operationToId']['has'](_0xc186aa)){const _0x51ecee=_0x4e5327()['slice'](0x1,0x12);this['_operationToId']['set'](_0xc186aa,_0x51ecee);}return this['_operationToId']['get'](_0xc186aa);}}}['setIdForTheLastOperation'](_0x1d084c,_0x57dab0){if(!_0x57dab0)return;let _0x5e5ede=_0x1d084c['length'];for(;_0x5e5ede--;){const _0x40e39c=_0x1d084c[_0x5e5ede];this['_ignoredOperations']['has'](_0x40e39c)||this['_operationToId']['set'](_0x40e39c,_0x57dab0);}}}class n extends _0x569f97{static get['requires'](){return[l];}static get['pluginName'](){return'RealTimeCollaborativeEditing';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}class a extends _0x1bf31c{static ['CommentsService']=/* #__PURE__ -- @preserve */
26
- ((()=>_0x4de34e)());['_services'];static get['requires'](){return[c,'CommentsRepository',i,_0x256f41];}static get['pluginName'](){return'CloudServicesCommentsAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x2dad7b){super(_0x2dad7b),this['_services']=new Map();}async['init'](){const _0x1599d1=this['context'],_0x27bae5=_0x1599d1['plugins']['get']('CommentsRepository');if(_0x1599d1['plugins']['get'](c)['addToReconnectionStack'](this),_0x27bae5['adapter']={'addCommentThread':async({channelId:_0x38e941,threadId:_0x16cce0,comments:_0x2d9445,resolvedAt:_0x2641a0,resolvedBy:_0x2258d5,context:_0x57906b,attributes:_0x383f1f})=>{const _0x1197d4=await this['_getService'](_0x38e941)['addCommentThread']({'commentThreadId':_0x16cce0,'comments':_0x2d9445['map'](_0x14a430=>function(_0xbdc0bd,_0x398540,_0x972014){return{'commentThreadId':_0x972014,'commentId':_0xbdc0bd['commentId'],'userId':_0xbdc0bd['authorId'],'content':_0xbdc0bd['content'],'documentId':_0x398540,'createdAt':_0xbdc0bd['createdAt'],'attributes':_0xbdc0bd['attributes']||{}};}(_0x14a430,_0x38e941,_0x16cce0)),'resolvedAt':_0x2641a0,'resolvedBy':_0x2258d5,'context':_0x57906b,'attributes':_0x383f1f})['catch'](ut);return{'threadId':_0x1197d4['commentThreadId'],'comments':_0x1197d4['comments']};},'getCommentThread':async({channelId:_0x2c43e2,threadId:_0x17fa95})=>{const _0x1327dc=await this['_getService'](_0x2c43e2)['getCommentThread'](_0x17fa95)['catch'](ut);return _0x1327dc['deletedAt']?null:(await this['_fetchMissingUsersForThreads']([_0x1327dc]),{'threadId':_0x1327dc['commentThreadId'],'comments':_0x1327dc['comments']['map'](S),'context':_0x1327dc['context'],'resolvedAt':_0x1327dc['resolvedAt'],'resolvedBy':_0x1327dc['resolvedBy'],'attributes':_0x1327dc['attributes']||{}});},'updateCommentThread':async({channelId:_0x40b014,threadId:_0x8b1f36,context:_0x3323f0,unlinkedAt:_0xd96314,attributes:_0x12ed09})=>this['_getService'](_0x40b014)['updateCommentThread']({'commentThreadId':_0x8b1f36,'context':_0x3323f0,'attributes':_0x12ed09,'unlinkedAt':_0xd96314})['catch'](B)['catch'](ut),'resolveCommentThread':async({channelId:_0x4ed26c,threadId:_0x3c3b16})=>{const _0x5ebc5a=await this['_getService'](_0x4ed26c)['resolveCommentThread'](_0x3c3b16)['catch'](B)['catch'](ut);return{'threadId':_0x5ebc5a['commentThreadId'],'resolvedAt':_0x5ebc5a['resolvedAt'],'resolvedBy':_0x5ebc5a['resolvedBy']};},'reopenCommentThread':async({channelId:_0x3b4f42,threadId:_0x2a8c1f})=>this['_getService'](_0x3b4f42)['reopenCommentThread'](_0x2a8c1f)['catch'](B)['catch'](ut),'removeCommentThread':({channelId:_0x195694,threadId:_0xe6a681})=>this['_getService'](_0x195694)['removeCommentThread'](_0xe6a681)['catch'](B)['catch'](ut),'addComment':({channelId:_0x5ba34a,threadId:_0x424f1f,commentId:_0x263aec,content:_0x100ddf,attributes:_0x38d4a7})=>this['_getService'](_0x5ba34a)['addComment'](_0x424f1f,_0x263aec,_0x100ddf,_0x38d4a7)['catch'](ut),'updateComment':({channelId:_0x153108,threadId:_0x3f9215,commentId:_0x1765a5,content:_0x57fe5a,attributes:_0x4a7cb9})=>this['_getService'](_0x153108)['updateComment'](_0x3f9215,_0x1765a5,_0x57fe5a,_0x4a7cb9)['catch'](B)['catch'](ut),'removeComment':({channelId:_0x5f57f3,threadId:_0x3e31b9,commentId:_0x451c05})=>this['_getService'](_0x5f57f3)['removeComment'](_0x3e31b9,_0x451c05)['catch'](B)['catch'](ut)},_0x1599d1 instanceof _0x45674b){const _0x2ba7b4=_0x1599d1['config']['get']('collaboration.channelId'),_0xcba385=_0x1599d1['plugins']['get'](i);await this['_setUpService'](_0x2ba7b4);const _0x2916ec=await this['_services']['get'](_0x2ba7b4)['getConnectedSessions']();this['listenTo'](_0xcba385,'sessionAdd:'+_0x2ba7b4,(_0x524963,{session:_0x14c0d2})=>{_0x14c0d2['id']===_0xcba385['mySessionId']&&(_0x524963['off'](),this['context']['plugins']['get']('Permissions')['setPermissions'](_0x14c0d2['permissions'],_0x2ba7b4));}),_0xcba385['register'](_0x2ba7b4,_0x2916ec);}}async['_setUpService'](_0x11c196){if(this['_services']['has'](_0x11c196))throw new _0x3cc9a2('cloudservicescommentsadapter-connect-already-connected',null,{'channelId':_0x11c196});const _0x4d4df4=this['context']['plugins']['get']('CommentsRepository'),_0x2faae5=new a['CommentsService'](_0x11c196);this['_services']['set'](_0x11c196,_0x2faae5),this['listenTo'](_0x2faae5,'commentThreadAdded',(_0x2fc39c,_0x17befd)=>{const {commentThreadId:_0x29d715,documentId:_0x2e5e0a,context:_0x2ee1a1,attributes:_0x114fcd,resolvedAt:_0x1628b6,resolvedBy:_0x4f63cf,comments:_0x328e3c}=_0x17befd;_0x4d4df4['getCommentThread'](_0x29d715)||_0x4d4df4['addCommentThread']({'threadId':_0x29d715,'channelId':_0x2e5e0a,'comments':_0x328e3c?_0x328e3c['map'](S):[],'context':_0x2ee1a1,'attributes':_0x114fcd,'resolvedAt':_0x1628b6,'resolvedBy':_0x4f63cf,'isFromAdapter':!0x0});}),this['listenTo'](_0x2faae5,'commentThreadUpdated',(_0x2bce0a,{commentThreadId:_0x50c6d1,documentId:_0x313d55,context:_0x1fa02e,unlinkedAt:_0x5462c3,attributes:_0x113e21})=>{_0x4d4df4['getCommentThread'](_0x50c6d1)&&_0x4d4df4['updateCommentThread']({'threadId':_0x50c6d1,'channelId':_0x313d55,'context':_0x1fa02e,'unlinkedAt':_0x5462c3,'attributes':_0x113e21,'isFromAdapter':!0x0});}),this['listenTo'](_0x2faae5,'commentThreadResolved',(_0x135aa9,{commentThreadId:_0x113eed,resolvedBy:_0x336702,resolvedAt:_0x542fc0})=>{const _0x207092=_0x4d4df4['getCommentThread'](_0x113eed);_0x207092&&_0x207092['resolve']({'resolvedBy':_0x336702,'resolvedAt':_0x542fc0,'isFromAdapter':!0x0});}),this['listenTo'](_0x2faae5,'commentThreadReopened',(_0x5a293c,{commentThreadId:_0x3fa878})=>{const _0x32e064=_0x4d4df4['getCommentThread'](_0x3fa878);_0x32e064&&_0x32e064['reopen']({'isFromAdapter':!0x0});}),this['listenTo'](_0x2faae5,'commentThreadRemoved',(_0x2145e0,{commentThreadId:_0x29dbf2})=>{const _0xd0b3b6=_0x4d4df4['getCommentThread'](_0x29dbf2);_0xd0b3b6&&_0xd0b3b6['remove']({'isFromAdapter':!0x0});}),this['listenTo'](_0x2faae5,'commentAdded',(_0x42ca63,_0x3ebfca)=>{const _0x5ee1eb=_0x3ebfca['commentThreadId'],_0x4665d2=_0x4d4df4['getCommentThread'](_0x5ee1eb);_0x4665d2&&_0x4665d2['addComment']({...S(_0x3ebfca),'isFromAdapter':!0x0});}),this['listenTo'](_0x2faae5,'commentUpdated',(_0x1a395c,{commentThreadId:_0x23e37c,commentId:_0x59b4ee,content:_0x5ebb6c,attributes:_0x51d879})=>{const _0x6e0df3=_0x4d4df4['getCommentThread'](_0x23e37c);if(_0x6e0df3){const _0x5ba8c3=_0x6e0df3['getComment'](_0x59b4ee);_0x5ba8c3&&_0x5ba8c3['update']({'content':_0x5ebb6c,'attributes':_0x51d879,'isFromAdapter':!0x0});}}),this['listenTo'](_0x2faae5,'commentRemoved',(_0x28eb02,{commentThreadId:_0x4a14fe,commentId:_0x1353f9})=>{const _0x19f02d=_0x4d4df4['getCommentThread'](_0x4a14fe);if(_0x19f02d){const _0x45c281=_0x19f02d['getComment'](_0x1353f9);_0x45c281&&_0x45c281['remove']({'isFromAdapter':!0x0});}}),await this['_connectService'](_0x11c196);}['destroy'](){if(this['context']instanceof _0x45674b){const _0x29b6a=this['context']['config']['get']('collaboration.channelId');this['_terminateService'](_0x29b6a);}}['_terminateService'](_0x4ffb1b){if(!this['_services']['has'](_0x4ffb1b))throw new _0x3cc9a2('cloudservicescommentsadapter-disconnect-not-exist',null,{'channelId':_0x4ffb1b});this['_getService'](_0x4ffb1b)['disconnect'](),this['_services']['delete'](_0x4ffb1b);}async['reconnect'](){for(const _0x55a82d of this['_services']['keys']())await this['_connectService'](_0x55a82d);if(this['context']instanceof _0x45674b){const _0x4b7ad8=this['context']['config']['get']('collaboration.channelId'),_0x28cd4f=this['context']['plugins']['get'](i);_0x28cd4f['unregister'](_0x4b7ad8);const _0x40aa00=await this['_services']['get'](_0x4b7ad8)['getConnectedSessions']();_0x28cd4f['register'](_0x4b7ad8,_0x40aa00);}}async['_connectService'](_0x59d19d){const {connection:_0x468d60}=this['context']['plugins']['get'](c),_0x3b9cb5=this['context']['plugins']['get']('CommentsRepository'),_0x5bd737=this['_services']['get'](_0x59d19d),_0x321d79=await _0x5bd737['connect'](_0x468d60);await this['_fetchMissingUsersForThreads'](_0x321d79);const _0x16efea=new Set(Array['from'](_0x3b9cb5['getCommentThreads']({'channelId':_0x59d19d}),_0x4bbf3a=>_0x4bbf3a['id']));for(const _0x1c6acb of _0x321d79)_0x1c6acb['deletedAt']||_0x16efea['delete'](_0x1c6acb['commentThreadId']);for(const _0x4cc7c6 of _0x16efea)_0x3b9cb5['getCommentThread'](_0x4cc7c6)['remove']({'isFromAdapter':!0x0});for(const _0x332545 of _0x321d79){let _0x12a46b=_0x3b9cb5['getCommentThread'](_0x332545['commentThreadId']);const {commentThreadId:_0x18c6d3,context:_0x28f942,attributes:_0x22b150,resolvedBy:_0x25e920,resolvedAt:_0x435b77,unlinkedAt:_0x37dba2,deletedAt:_0x3db219}=_0x332545;if(_0x3db219)continue;_0x12a46b||(_0x12a46b=_0x3b9cb5['addCommentThread']({'channelId':_0x59d19d,'threadId':_0x18c6d3,'context':_0x28f942,'attributes':_0x22b150||{},'resolvedBy':_0x25e920,'resolvedAt':_0x435b77,'unlinkedAt':_0x37dba2,'isFromAdapter':!0x0}));const _0x5ef710=new Set(Array['from'](_0x12a46b['comments'],_0x8bda8b=>_0x8bda8b['id']));for(const _0x3272da of _0x332545['comments'])_0x5ef710['delete'](_0x3272da['commentId']);for(const _0xb39d8a of _0x5ef710)_0x12a46b['getComment'](_0xb39d8a)['remove']({'isFromAdapter':!0x0});for(const _0xdf82c7 of _0x332545['comments']){const _0x4c35bf=_0x12a46b['getComment'](_0xdf82c7['commentId']);_0x4c35bf?_0x4c35bf['content']!==_0xdf82c7['content']&&_0x4c35bf['update']({'content':_0xdf82c7['content'],'isFromAdapter':!0x0}):_0x12a46b['addComment'](Object['assign'](S(_0xdf82c7),{'isFromAdapter':!0x0}));}}}['_getService'](_0x1fd893){if(!this['_services']['has'](_0x1fd893))throw new _0x3cc9a2('cloudservicescommentsadapter-service-not-exist',null,{'channelId':_0x1fd893});return this['_services']['get'](_0x1fd893);}async['_fetchMissingUsersForThreads'](_0x1525bd){const _0x470608=this['context']['plugins']['get'](_0x256f41),{connection:_0x4a5340}=this['context']['plugins']['get'](c),_0x42391c=new Set();for(const {resolvedBy:_0x39e4ae,comments:_0x3f4d54}of _0x1525bd){_0x39e4ae&&!_0x470608['getUser'](_0x39e4ae)&&_0x42391c['add'](_0x39e4ae);for(const {userId:_0xa5309b}of _0x3f4d54)_0x470608['getUser'](_0xa5309b)||_0x42391c['add'](_0xa5309b);}if(0x0===_0x42391c['size'])return;const _0x5b1954=await dt['getMany'](_0x4a5340,Array['from'](_0x42391c));for(const _0x2b8c20 of _0x5b1954)_0x470608['getUser'](_0x2b8c20['id'])||_0x470608['addUser'](_0x2b8c20);}}async function B(_0x73389){if('404'!==_0x73389['code'])throw _0x73389;}function ut(_0x560e43){if((_0x2ce58f=_0x560e43)['message']['startsWith']('cloud-services-internal-error:\x20Comments\x20Service\x20is\x20not\x20connected.')||_0x2ce58f['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x2ce58f['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.'))return new Promise(()=>{});var _0x2ce58f;throw _0x560e43;}function S(_0x58c731){return{'threadId':_0x58c731['commentThreadId'],'commentId':_0x58c731['commentId'],'content':_0x58c731['content'],'createdAt':_0x58c731['createdAt'],'authorId':_0x58c731['userId'],'attributes':_0x58c731['attributes']||{}};}class f extends _0x569f97{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(_0x30b076){super(_0x30b076);const _0x4ee45f=this['editor']['config']['get']('collaboration.channelId');this['_bufferedRequests']=new Map(),this['_trackChangesService']=new f['TrackChangesService'](_0x4ee45f);}['init'](){const _0x5ae653=this['editor']['plugins']['get'](c),_0x2f4214=this['editor']['plugins']['get']('TrackChangesEditing');return _0x2f4214['adapter']={'getSuggestion':async _0xd99217=>{await this['_waitForServiceReady']();const _0xe1ea27=await this['_trackChangesService']['get'](_0xd99217)['catch'](R);return await this['_fetchMissingUsersForThreads']([_0xe1ea27]),_0xe1ea27;},'addSuggestion':async({id:_0x3f9b42,type:_0x423154,data:_0x12cc1d,originalSuggestionId:_0x456b68,attributes:_0x44fcfd})=>{await this['_waitForServiceReady']();const _0xbd20bc={'id':_0x3f9b42,'type':_0x423154,'data':_0x12cc1d,'originalSuggestionId':_0x456b68,'attributes':_0x44fcfd},_0x82acb0=await this['_trackChangesService']['add'](_0x3f9b42,_0x423154,_0x12cc1d,_0x456b68,_0x44fcfd)['catch'](_0x4c74fe=>{if(ft(_0x4c74fe))return new Promise(_0x1d3240=>{this['_bufferedRequests']['set'](_0x3f9b42,{'resolve':_0x1d3240,'suggestionData':_0xbd20bc});});throw _0x4c74fe;});return this['_bufferedRequests']['delete'](_0x3f9b42),_0x82acb0;},'updateSuggestion':async(_0x45b672,_0x41f9dd)=>{if(await this['_waitForServiceReady'](),'open'!==_0x41f9dd['state'])return this['_trackChangesService']['update'](_0x45b672,_0x41f9dd)['catch'](R);}},this['listenTo'](this['_trackChangesService'],'suggestionUpdated',(_0x5be1d6,_0x41f3d9)=>{_0x2f4214['hasSuggestion'](_0x41f3d9['id'])&&(_0x2f4214['getSuggestion'](_0x41f3d9['id'])['attributes']=_0x41f3d9['attributes']);}),this['_trackChangesService']['connect'](_0x5ae653['connection'])['then'](_0x5db05a=>(_0x5ae653['addToReconnectionStack'](this),this['_fetchMissingUsersForThreads'](_0x5db05a)['then'](()=>{for(const _0x3bac43 of _0x5db05a){_0x2f4214['addSuggestionData'](_0x3bac43)['_saved']=!0x0;}})));}async['reconnect'](){const _0x56df4f=this['editor']['plugins']['get']('TrackChangesEditing'),{connection:_0x3ba792}=this['editor']['plugins']['get'](c),_0x578828=await this['_trackChangesService']['connect'](_0x3ba792);await this['_fetchMissingUsersForThreads'](_0x578828);for(const {suggestionData:_0x4a6bb4,resolve:_0x50e070}of this['_bufferedRequests']['values']()){let _0xf9e518=_0x578828['find'](_0x5e0396=>_0x5e0396['id']===_0x4a6bb4['id']);_0xf9e518||(_0xf9e518=await this['_trackChangesService']['add'](_0x4a6bb4['id'],_0x4a6bb4['type'],_0x4a6bb4['data'],_0x4a6bb4['originalSuggestionId'])),_0x50e070(_0xf9e518);}for(const _0x139446 of _0x578828)_0x56df4f['hasSuggestion'](_0x139446['id'])||_0x56df4f['addSuggestionData'](_0x139446);}async['_waitForServiceReady'](){this['_trackChangesService']['isConnected']||await new Promise(_0x14a128=>{this['listenTo'](this['_trackChangesService'],'connected',_0x109156=>{_0x109156['off'](),_0x14a128();});});}async['_fetchMissingUsersForThreads'](_0x319d2c){const _0x2d2b80=this['editor']['plugins']['get'](_0x256f41),{connection:_0x547d53}=this['editor']['plugins']['get'](c),_0x1c35ba=new Set();for(const {authorId:_0x5c8eb6}of _0x319d2c)_0x2d2b80['getUser'](_0x5c8eb6)||_0x1c35ba['add'](_0x5c8eb6);if(0x0===_0x1c35ba['size'])return;const _0x2e989b=await dt['getMany'](_0x547d53,Array['from'](_0x1c35ba));for(const _0x13b25a of _0x2e989b)_0x2d2b80['getUser'](_0x13b25a['id'])||_0x2d2b80['addUser'](_0x13b25a);}}function R(_0x3dd291){if(ft(_0x3dd291))return new Promise(()=>{});throw _0x3dd291;}function ft(_0x7b6296){return _0x7b6296['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x7b6296['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}class m extends _0x569f97{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 _0x1e928a=this['editor']['plugins']['get'](c),_0x2e6b04=this['editor']['plugins']['get']('CommentsEditing'),_0x51b2e7=this['editor']['plugins']['get'](a);return this['editor']['data']['once']('ready',()=>{this['listenTo'](_0x1e928a,'change:state',(_0x52f809,_0x56e2de,_0x3afaa5)=>{_0x2e6b04['isThreadsLoadingPaused']='connected'!==_0x3afaa5;});}),this['listenTo'](_0x1e928a,'change:state',(_0x55125c,_0xab4cfa,_0x3791b8)=>{this['editor']['plugins']['get']('CommentsRepository')['switchReadOnly']('connected'!==_0x3791b8);}),_0x51b2e7['_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 _0x569f97{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 _0x569f97{static ['RevisionHistoryService']=/* #__PURE__ -- @preserve */
28
- ((()=>it)());['_lastRequestId'];['_revisionTracker'];['_revisionHistoryService'];['_oldOffset'];static get['requires'](){return[c,l,'RevisionTracker',i,_0x256f41];}static get['pluginName'](){return'CloudServicesRevisionHistoryAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x24431a){super(_0x24431a);const _0x123f4e=this['editor']['config']['get']('collaboration.channelId');this['_lastRequestId']=null,this['_revisionTracker']=this['editor']['plugins']['get']('RevisionTracker'),this['_revisionHistoryService']=new u['RevisionHistoryService'](_0x123f4e);}async['init'](){const _0x18a4c8=this['editor']['plugins']['get'](l),_0x4ccbd4=_0x18a4c8['serverHistory'],_0x5c8aba=this['editor']['plugins']['get'](c);this['_revisionTracker']['setSource']({'history':_0x4ccbd4,'getLatestVersion':()=>this['_getLatestVersion'](),'getCurrentRevisionId':()=>_0x18a4c8['sessionId']});const _0x23f907=this['editor']['config']['get']('cloudServices.bundleVersion')||nt,_0x208ad9=await tt['isBundleUploaded'](_0x5c8aba['connection'],_0x23f907);this['_revisionTracker']['adapter']={'getRevision':async({revisionId:_0x110f65})=>(await this['_waitForServiceReady'](),await this['_revisionHistoryService']['getRevision'](_0x110f65)),'updateRevisions':async _0x329c64=>{await this['_waitForServiceReady']();const _0x4d6438=this['_revisionTracker']['currentRevision'];if(_0x208ad9&&0x1===_0x329c64['length']&&_0x329c64[0x0]['id']===_0x4d6438['id'])return _0x329c64;for(const _0x44df28 of _0x329c64)_0x44df28['id']===_0x4d6438['id']&&(_0x44df28['isEmptyCurrent']=_0x44df28['fromVersion']===_0x44df28['toVersion']);return this['_revisionHistoryService']['updateRevisions'](_0x329c64,this['_lastRequestId'])['then'](_0x395964=>(this['_lastRequestId']=_0x395964,_0x329c64))['catch'](_0x4f2352=>{if(st(_0x4f2352)||'400'===_0x4f2352['code']&&void 0x0!==_0x4f2352['data']['wrongRequestId']){for(const _0x24c443 of _0x329c64){!this['_revisionTracker']['repository']['getRevision'](_0x24c443['id'])||this['_revisionTracker']['_bufferUpdate'](_0x24c443['id'],_0x24c443,!0x1);}if(st(_0x4f2352))throw _0x4f2352;return _0x329c64;}throw _0x4f2352;});}},this['listenTo'](this['_revisionHistoryService'],'revisionsUpdated',(_0x54d65b,{revisionsData:_0x2c321e,requestId:_0x31ad85})=>{Math['max'](..._0x2c321e['map'](_0x56bc8b=>_0x56bc8b['toVersion']))>this['_getLatestVersionFromServerOperations']()-0x1?this['_getLatestVersion']()['then'](()=>{this['_handleRevisionsUpdate'](_0x2c321e,_0x31ad85);}):this['_handleRevisionsUpdate'](_0x2c321e,_0x31ad85);});const {revisions:_0x2a5b7c,requestId:_0x4e672b}=await this['_revisionHistoryService']['connect'](_0x5c8aba['connection']);_0x5c8aba['addToReconnectionStack'](this),this['_lastRequestId']=_0x4e672b,await this['_fetchMissingUsers'](_0x2a5b7c);for(const _0x11aacb of _0x2a5b7c)this['_revisionTracker']['addRevisionData'](_0x11aacb);this['listenTo'](_0x18a4c8,'change:_isConnected',(_0x94b818,_0x4c1ae9,_0x5c9165)=>{_0x5c9165&&(this['_oldOffset']=_0x18a4c8['_offset'],_0x94b818['off']());}),this['_revisionTracker']['bind']('isEnabled')['to'](_0x5c8aba,'state',_0x25161b=>_0x25161b===_0x256970['CONNECTED']);}async['reconnect'](){const _0x2b5790=this['editor']['plugins']['get'](c),_0x37eae2=this['editor']['plugins']['get'](l),_0x54aa51=async()=>{const _0x396084=this['_revisionTracker']['currentRevision'],_0x5be8d6=_0x396084['id'],_0x426d6c=_0x5be8d6!==_0x37eae2['sessionId'];if(_0x426d6c){const _0xb45fb=_0x37eae2['_offset']-this['_oldOffset'],_0x4278c0=this['_getLatestVersionFromServerOperations']();this['_revisionTracker']['_revisionDataBuilder']['reInit']();if(_0x396084['toVersion']+_0xb45fb!==_0x4278c0){const _0x4cb365=_0x396084['fromVersion']+_0xb45fb,_0x912193=this['editor']['plugins']['get'](_0x256f41),_0x309f24=this['_revisionTracker']['buildRevisionData']({'revision':_0x396084,'from':_0x4cb365,'to':_0x4278c0});_0x309f24['id']=_0x396084['id'];const _0x13b823=_0x309f24['authorsIds']['map'](_0x3f7741=>_0x912193['getUser'](_0x3f7741));_0x396084['_update']({..._0x309f24,'authors':_0x13b823},!0x0),this['_revisionTracker']['_bufferUpdate'](_0x396084['id'],_0x309f24,!0x0);}this['_revisionTracker']['_startingVersion']=_0x4278c0,(_0x396084['toVersion']===_0x396084['fromVersion']&&!this['_revisionTracker']['_bufferedUpdates']['has'](_0x5be8d6)&&this['_revisionTracker']['repository']['_revisions']['remove'](_0x5be8d6),this['_revisionTracker']['_createCurrentRevision'](_0x4278c0));}const {revisions:_0x242d83,requestId:_0x3905d5}=await this['_revisionHistoryService']['reconnect'](_0x2b5790['connection'],this['_lastRequestId']);_0x426d6c&&_0x242d83['length']>0x0?_0x37eae2['_handleReconnectionError']():(await this['_fetchMissingUsers'](_0x242d83),this['_handleRevisionsUpdate'](_0x242d83,_0x3905d5),this['_revisionTracker']['sendBufferedUpdates']());};return _0x37eae2['_isConnected']?_0x54aa51():new Promise((_0x55da71,_0x1952ef)=>{_0x37eae2['once']('change:_isConnected',()=>{_0x54aa51()['then'](_0x55da71)['catch'](_0x1952ef);});});}['destroy'](){super['destroy']();}async['_waitForServiceReady'](){this['_revisionHistoryService']['isConnected']||await new Promise(_0x24fefe=>{this['listenTo'](this['_revisionHistoryService'],'connected',_0x53fcea=>{_0x53fcea['off'](),_0x24fefe();});});}['_getLatestVersionFromServerOperations'](){const _0x425f50=this['editor']['plugins']['get'](l)['serverHistory']['getOperations']()['reverse']();for(const _0x12f262 of _0x425f50)if('marker'!==_0x12f262['type']||_0x12f262['affectsData'])return _0x12f262['baseVersion']+0x1;}['_getLatestVersion'](){const _0x8e9622=this['editor']['plugins']['get'](l);return new Promise(_0x5f13f8=>{_0x8e9622['_isPendingUpdate']?_0x8e9622['once']('change:_isPendingUpdate',()=>{_0x5f13f8(this['_getLatestVersionFromServerOperations']());}):_0x5f13f8(this['_getLatestVersionFromServerOperations']());});}['_handleRevisionsUpdate'](_0x5029ca,_0x334329){const _0x11e2f7=this['_revisionTracker']['repository'];this['_lastRequestId']=_0x334329;for(const _0x53654f of _0x5029ca){const _0x1044b7=_0x11e2f7['getRevision'](_0x53654f['id']);if(_0x1044b7){if((_0x53654f['fromVersion']||_0x53654f['toVersion'])&&(_0x53654f['diffData']=null),_0x1044b7===this['_revisionTracker']['currentRevision']){const _0x39084f=Math['max'](_0x1044b7['toVersion'],_0x53654f['toVersion']),_0x5e8953=Math['max'](_0x1044b7['fromVersion'],_0x53654f['fromVersion']);let _0x13c911;_0x1044b7['toVersion']===_0x53654f['toVersion']&&_0x1044b7['fromVersion']===_0x53654f['fromVersion']?(_0x13c911=!0x0,this['_preventResendingRevisionData'](_0x53654f)):_0x53654f['toVersion']===_0x39084f&&_0x53654f['fromVersion']===_0x5e8953?_0x13c911=!0x1:(_0x1044b7['toVersion']===_0x39084f&&_0x1044b7['fromVersion']===_0x5e8953||this['_fixRevision']({'revision':_0x1044b7,'from':_0x5e8953,'to':_0x39084f}),_0x13c911=!0x0),_0x13c911&&(delete _0x53654f['fromVersion'],delete _0x53654f['toVersion'],delete _0x53654f['diffData'],delete _0x53654f['createdAt'],delete _0x53654f['authorsIds']);}this['_revisionTracker']['setRevisionData'](_0x53654f),this['_preventResendingRevisionData'](_0x53654f);}else this['_revisionTracker']['addRevisionData'](_0x53654f);}const _0x12d20b=_0x11e2f7['getRevisions']();_0x12d20b['reverse']();for(let _0x34431b=0x0;_0x34431b<_0x12d20b['length']-0x1;_0x34431b++){const _0x14a701=_0x12d20b[_0x34431b],_0x4cf9fe=_0x12d20b[_0x34431b+0x1];if(_0x14a701['fromVersion']<_0x4cf9fe['toVersion']){const _0x29b963=_0x4cf9fe['toVersion'],_0x5a40c9=Math['max'](_0x29b963,_0x14a701['toVersion']);this['_fixRevision']({'revision':_0x14a701,'from':_0x29b963,'to':_0x5a40c9});}}}['_fixRevision']({revision:_0x26d033,from:_0x283f58,to:_0x400c7a}={}){const _0x5eb788=this['editor']['plugins']['get'](_0x256f41),_0x29d090=this['_revisionTracker']['buildRevisionData']({'revision':_0x26d033,'from':_0x283f58,'to':_0x400c7a});_0x29d090['authors']=_0x29d090['authorsIds']['map'](_0x369b73=>_0x5eb788['getUser'](_0x369b73)),_0x26d033['_update'](_0x29d090);}['_preventResendingRevisionData'](_0x92a853){const _0x205bb9={};_0x205bb9['id']=_0x92a853['id'];for(const _0x12a630 of Object['keys'](_0x92a853))'id'!==_0x12a630&&(_0x205bb9[_0x12a630]=void 0x0);this['_revisionTracker']['_bufferUpdate'](_0x205bb9['id'],_0x205bb9,!0x0);}async['_fetchMissingUsers'](_0x1e64cc){const _0x482d5c=this['editor']['plugins']['get'](_0x256f41),{connection:_0x512f00}=this['editor']['plugins']['get'](c),_0x195d94=new Set();for(const _0x48b201 of _0x1e64cc){for(const _0x16add4 of _0x48b201['authorsIds'])_0xf13d3e(_0x16add4);_0x48b201['creatorId']&&_0xf13d3e(_0x48b201['creatorId']);}if(0x0===_0x195d94['size'])return;const _0x231dc0=await dt['getMany'](_0x512f00,Array['from'](_0x195d94));for(const _0x83d0ac of _0x231dc0)_0x482d5c['getUser'](_0x83d0ac['id'])||_0x482d5c['addUser'](_0x83d0ac);function _0xf13d3e(_0x433fdb){_0x482d5c['getUser'](_0x433fdb)||_0x195d94['add'](_0x433fdb);}}}function st(_0x2c842d){return _0x2c842d['message']['startsWith']('cloud-services-internal-error:\x20Revision\x20History\x20Service\x20is\x20not\x20connected.')||_0x2c842d['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x2c842d['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}class g extends _0x569f97{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 _0x4abdf7{constructor(_0x544196){super(_0x544196);const _0x104cef=this['bindTemplate'];this['set']('usersCount',0x0),this['set']('isHidden',!0x0),this['setTemplate']({'tag':'div','attributes':{'class':['ck','ck-presence-list__counter',_0x104cef['if']('isHidden','ck-presence-list__counter--hidden')]},'children':[{'text':_0x104cef['to']('usersCount',_0xe6ca77=>q(_0x544196,'CONNECTED_USERS',_0xe6ca77))}]});}}class es extends _0x4abdf7{['items'];['keystrokes'];constructor(_0x430c06){super(_0x430c06);const _0x593fad=this['bindTemplate'];this['items']=this['createCollection'](),this['keystrokes']=new _0x1030f8(),this['set']({'hasPopup':!0x1,'isExpanded':!0x1}),this['setTemplate']({'tag':'div','attributes':{'aria-haspopup':_0x593fad['if']('hasPopup'),'aria-expanded':_0x593fad['to']('isExpanded',_0x1b40c9=>this['hasPopup']&&String(_0x1b40c9)),'aria-label':_0x593fad['to']('hasPopup',_0x5b8ec3=>q(_0x430c06,_0x5b8ec3?'Collapsed\x20connected\x20users\x20list\x20(press\x20ENTER\x20to\x20open\x20it)':'Connected\x20users\x20list')),'role':'list','tabindex':_0x593fad['to']('hasPopup',_0x7a0381=>!!_0x7a0381&&0x0),'class':['ck','ck-presence-list__list']},'children':this['items'],'on':{'click':_0x593fad['to'](()=>this['fire']('execute'))}}),this['on']('change:hasPopup',(_0x543112,_0x46e52d,_0x5e04b9)=>{this['element']&&(_0x5e04b9?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 _0x4abdf7{['counterView'];['inlineListView'];constructor(_0x2c28cc){super(_0x2c28cc);const _0x775618=this['bindTemplate'];this['set']('isCollapsed',!0x0),this['counterView']=new ts(this['locale']),this['inlineListView']=new es(_0x2c28cc),this['inlineListView']['bind']('hasPopup')['to'](this,'isCollapsed'),this['listenTo'](this['inlineListView']['items'],'change',()=>{for(const _0x5016e0 of this['inlineListView']['items'])_0x5016e0['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',_0x775618['if']('isCollapsed','ck-presence-list--collapsed')]},'children':[this['counterView'],this['inlineListView']]});}}class j extends _0x4abdf7{['listWrapperView'];constructor(_0x566356,_0x1e9bb9){super(_0x566356),this['listWrapperView']=new mt(_0x566356,_0x1e9bb9),this['setTemplate']({'tag':'div','attributes':{'tabindex':-0x1,'role':'application','class':['ck','ck-presence-list__dropdown-list'],'aria-label':q(_0x566356,'Connected\x20users\x20list\x20dropdown\x20menu')},'children':[this['listWrapperView']]});}}class mt extends _0x2b30ba{constructor(_0x4f7520,_0x56ea07){super(_0x4f7520);const _0x2ee108=this['bindTemplate'];this['set']('_isScrollable',!0x1),this['setTemplate']({'tag':_0x56ea07?'div':'ul','attributes':{'class':['ck','ck-reset','ck-list','ck-presence-list__dropdown-list-wrapper',_0x2ee108['if']('_isScrollable','ck-presence-list__dropdown-list-wrapper_scrollable')],'role':_0x2ee108['to']('role'),'aria-label':_0x2ee108['to']('ariaLabel'),'aria-labelledby':_0x2ee108['to']('ariaLabelledBy')},'children':this['items']}),this['listenTo'](_0x501dc7['window'],'resize',()=>this['checkIfScrollable']()),this['items']['on']('change',()=>this['checkIfScrollable']());}['render'](){super['render'](),this['checkIfScrollable']();}['checkIfScrollable'](){const _0x31e317=this['element'];_0x31e317&&(this['_isScrollable']=Math['max'](_0x31e317['scrollHeight'],_0x31e317['clientHeight'])>0.8*window['innerHeight']);}}class k extends rt{['userView'];constructor(_0x5cc25d,_0x206ea2,_0x44fc77){super(_0x5cc25d);const _0x40b374=this['bindTemplate'];this['userView']=new ct(_0x5cc25d,_0x206ea2);const _0x48e5b5={'tag':'li','attributes':{'class':['ck','ck-presence-list__dropdown-list-item'],'tabindex':-0x1,'role':'presentation','aria-label':_0x206ea2['name']},'children':[this['userView'],{'tag':'span','attributes':{'class':['ck','ck-user__full-name']},'children':[{'text':_0x206ea2['name']}]},{'tag':'span','attributes':{'class':['ck','ck-presence-list__marker',_0x206ea2['color']['getBackgroundColorClass']()],'aria-hidden':'true'}}]};_0x44fc77&&(_0x48e5b5['tag']='button',_0x48e5b5['on']={'click':_0x40b374['to'](()=>this['fire']('execute'))}),this['setTemplate'](_0x48e5b5);}['focus'](){this['element']['focus']();}}class y extends _0x4abdf7{['userView'];['markerView'];constructor(_0x3220c7,_0x3e1ed7,_0x435e86){super(_0x3220c7);const _0x499c62=this['bindTemplate'];this['set']('isFocusable',!0x1),this['set']('hasTooltip',!0x0),this['set']('tooltipPosition',''),this['userView']=new ct(_0x3220c7,_0x3e1ed7),this['markerView']=new at(_0x3220c7,_0x3e1ed7);const _0x57a6cf=new ot(_0x3220c7);_0x57a6cf['template']['tag']='span',_0x57a6cf['text']=_0x3e1ed7['name'];const _0x2c7d23={'tag':'div','attributes':{'class':['ck','ck-presence-list__list-item'],'role':'listitem','tabindex':_0x499c62['to']('isFocusable',_0x1dd30d=>!!_0x1dd30d&&0x0),'aria-labelledby':_0x57a6cf['id'],'data-cke-tooltip-text':this['userView']['name'],'data-cke-tooltip-position':_0x499c62['to']('tooltipPosition'),'data-cke-tooltip-disabled':_0x499c62['to']('hasTooltip',_0x49dac2=>!_0x49dac2),'data-cke-tooltip-class':'ck-presence-list__list-item__tooltip'},'children':[this['userView'],this['markerView'],_0x57a6cf]};_0x435e86&&(_0x2c7d23['tag']='button',_0x2c7d23['on']={'click':_0x499c62['to'](()=>this['fire']('execute'))}),this['setTemplate'](_0x2c7d23);}}class at extends _0x4abdf7{constructor(_0x53b1eb,_0x34555a){super(_0x53b1eb),this['setTemplate']({'tag':'span','attributes':{'class':['ck','ck-presence-list__marker',_0x34555a['color']['getBackgroundColorClass']()],'aria-hidden':'true'}});}}const A={'collapseAt':0x6,'displayMe':!0x0};class r extends _0x1bf31c{['currentDisplayedUsers'];['balloonPanelView'];['view'];['presenceDropdownView'];['_bodyCollection']=null;constructor(_0x3355b2){super(_0x3355b2),this['context']['config']['define']('presenceList',A);const _0x40ffba=_0x3355b2['config']['get']('presenceList.collapseAt');if('number'!=typeof _0x40ffba)throw new _0x3cc9a2('presencelist-collapseat-invalid-format',this);if(_0x40ffba<0x1)throw new _0x3cc9a2('presencelist-collapseat-invalid-format',this);this['_allConnectedUsers']=this['context']['plugins']['get'](i)['allConnectedUsers'],this['set']('usersCount',0x0),this['currentDisplayedUsers']=new _0xb9b57e(),this['balloonPanelView']=new _0x50768e(),this['balloonPanelView']['class']='ck\x20ck-presence-list__balloon',this['view']=this['_createView'](),this['presenceDropdownView']=void 0x0;}static get['requires'](){return[i];}['init'](){for(const _0x16e0a4 of this['_allConnectedUsers'])this['_handleUserAdd'](_0x16e0a4);this['listenTo'](this['_allConnectedUsers'],'add',(_0x2fd557,_0x818313)=>{this['_handleUserAdd'](_0x818313);}),this['listenTo'](this['_allConnectedUsers'],'remove',(_0x43e31c,_0x4797e7)=>{this['_handleUserRemove'](_0x4797e7);});}['_createView'](){const _0x4c64c9=this['context'],_0x4db26a=new L(this['context']['locale']),_0xeba5f1=this['balloonPanelView'];if(!_0x363bb3(_0x4c64c9['config']['get']('presenceList.container')))throw new _0x3cc9a2('presencelist-missing-container',this);return _0x4db26a['counterView']['bind']('usersCount')['to'](this),_0x4db26a['bind']('isCollapsed')['to'](this,'usersCount',_0x4275c6=>{const {collapseAt:_0x26fbc3,displayMe:_0x1f8167}=_0x4c64c9['config']['get']('presenceList'),_0x5323ea=_0x4275c6>=_0x26fbc3;return _0x4db26a['counterView']['isHidden']=!(0x1==_0x4275c6&&_0x1f8167||_0x5323ea),_0x5323ea||this['hideDropdown'](),_0x5323ea;}),_0x4db26a['inlineListView']['items']['bindTo'](this['currentDisplayedUsers'])['using'](_0x7c8840=>{const _0x3b83d0=_0x4c64c9['config']['get']('presenceList'),_0x1c2551=new y(_0x4c64c9['locale'],_0x7c8840,!!_0x3b83d0['onClick']);return _0x1c2551['bind']('hasTooltip')['to'](_0x4db26a,'isCollapsed',_0xfa2f06=>!_0xfa2f06),_0x1c2551['bind']('isFocusable')['to'](_0x4db26a,'isCollapsed',_0x1ef2ca=>!_0x1ef2ca),_0x3b83d0['onClick']&&this['listenTo'](_0x1c2551,'execute',()=>{this['view']['isCollapsed']||_0x3b83d0['onClick'](_0x7c8840,_0x1c2551['element']);}),_0x1c2551;}),this['listenTo'](_0x4db26a['inlineListView'],'execute',()=>{this['presenceDropdownView']?this['hideDropdown']():this['view']['isCollapsed']&&this['showDropdown']();}),_0x4db26a['inlineListView']['keystrokes']['set']('Enter',(_0x3770c2,_0x1b8062)=>{this['view']['isCollapsed']&&(this['showDropdown'](),_0x1b8062());}),_0x4db26a['render'](),_0xeba5f1['render'](),_0x19cfcf({'emitter':_0x4db26a,'activator':()=>_0xeba5f1['isVisible'],'contextElements':[_0xeba5f1['element'],_0x4db26a['inlineListView']['element']],'callback':()=>this['hideDropdown']()}),_0x4c64c9['config']['get']('presenceList.container')['appendChild'](_0x4db26a['element']),this['_bodyCollection']=new _0x37b47d(this['context']['locale']),this['_bodyCollection']['attachToDom'](),this['_bodyCollection']['add'](this['balloonPanelView']),_0x4db26a;}['_handleUserAdd'](_0x533747){if(!this['context']['config']['get']('presenceList.displayMe')&&_0x533747['isMe'])return;const _0x5206c1=this['context']['config']['get']('presenceList.collapseAt')-0x1;this['usersCount']++,this['currentDisplayedUsers']['length']==_0x5206c1&&this['currentDisplayedUsers']['length']>0x1&&this['currentDisplayedUsers']['remove'](0x1);const _0x4ca499=_0x533747['isMe']?0x0:this['currentDisplayedUsers']['length'];this['currentDisplayedUsers']['add'](_0x533747,_0x4ca499);}['_handleUserRemove'](_0x5388bb){if(this['usersCount']--,this['currentDisplayedUsers']['get'](_0x5388bb['id'])&&(this['currentDisplayedUsers']['remove'](_0x5388bb['id']),this['currentDisplayedUsers']['length']<this['usersCount'])){for(const _0x4080df of Array['from'](this['_allConnectedUsers'])['reverse']())if(!this['currentDisplayedUsers']['get'](_0x4080df['id']))return void this['currentDisplayedUsers']['add'](_0x4080df,Math['min'](this['currentDisplayedUsers']['length'],0x1));}}['showDropdown'](){if(this['presenceDropdownView'])return;const _0x27e7e5=this['context']['config']['get']('presenceList');this['presenceDropdownView']=new j(this['context']['locale'],!!_0x27e7e5['onClick']),this['view']['inlineListView']['isExpanded']=!0x0;const {listWrapperView:_0x2ec52d}=this['presenceDropdownView'];_0x2ec52d['items']['bindTo'](this['_allConnectedUsers'])['using'](_0x35eb92=>{if(!_0x27e7e5['displayMe']&&_0x35eb92['isMe'])return null;const _0x30cd73=new k(this['context']['locale'],_0x35eb92,!!_0x27e7e5['onClick']);return _0x27e7e5['onClick']&&this['listenTo'](_0x30cd73,'execute',()=>{_0x27e7e5['onClick'](_0x35eb92,_0x30cd73['element']);}),_0x30cd73;}),this['balloonPanelView']['content']['add'](this['presenceDropdownView']),this['balloonPanelView']['pin']({'target':this['view']['inlineListView']['element']}),_0x2ec52d['focus'](),_0x2ec52d['checkIfScrollable']();const _0x1c94ef=(_0x51896b,_0x3d18c1)=>{this['hideDropdown'](),this['view']['inlineListView']['focus'](),_0x3d18c1();};_0x2ec52d['keystrokes']['set']('Esc',_0x1c94ef),_0x2ec52d['keystrokes']['set']('Shift+Tab',_0x1c94ef),_0x2ec52d['keystrokes']['set']('Tab',(_0x210865,_0x262f15)=>{!function(_0x30b967){const _0xc58848=['a','button','input','select','textarea','[tabindex]','[contenteditable]']['map'](_0x185c7d=>_0x185c7d+':not([disabled]):not([tabindex=\x22-1\x22])')['join'](','),_0x5cb2c3=[...document['body']['querySelectorAll'](_0xc58848)]['filter'](_0x19ef77=>_0x19ef77===document['activeElement']||_0x19ef77['offsetWidth']+_0x19ef77['offsetHeight']>0x0)['sort']((_0xf1b049,_0xab5e2f)=>(_0xf1b049['tabIndex']||0x0)-(_0xab5e2f['tabIndex']||0x0)),_0x4d8e61=_0x5cb2c3['indexOf'](_0x30b967),_0x4c8cd7=_0x5cb2c3[(_0x4d8e61+0x1)%_0x5cb2c3['length']];_0x4c8cd7&&_0x4c8cd7['focus']();}(this['view']['element']),this['hideDropdown'](),_0x262f15();}),_0x2ec52d['focusTracker']['add'](this['view']['element']),_0x2ec52d['focusTracker']['on']('change:isFocused',(_0x924ab7,_0x4dc67d,_0x295b46)=>{_0x295b46||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 _0x1bf31c{static get['requires'](){return[i,r];}static get['pluginName'](){return'PresenceList';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}export{a as CloudServicesCommentsAdapter,u as CloudServicesRevisionHistoryAdapter,f as CloudServicesTrackChangesAdapter,s as PresenceList,l as RealTimeCollaborationClient,m as RealTimeCollaborativeComments,n as RealTimeCollaborativeEditing,g as RealTimeCollaborativeRevisionHistory,p as RealTimeCollaborativeTrackChanges,i as Sessions};
23
+ import{ContextPlugin as _0x32de9b,Plugin as _0x3111a4,PendingActions as _0x58eebd,Context as _0x160987}from'@ckeditor/ckeditor5-core/dist/index.js';import{DomEmitterMixin as _0x540faa,CKEditorError as _0x5f7cec,Collection as _0x1e8fd0,global as _0x3d711e,version as ht,uid as _0x37ac80,KeystrokeHandler as _0x5ef21e}from'@ckeditor/ckeditor5-utils/dist/index.js';import{Notification as _0x4d6a84,View as _0x105e30,ListView as _0x1ba598,ListItemView as at,LabelView as pt,BalloonPanelView as _0x198394,clickOutsideHandler as _0x4d04fe,BodyCollection as _0x1921bb}from'@ckeditor/ckeditor5-ui/dist/index.js';import{LiveRange as ut,History as _0x2314a1,NoOperation as _0x54f299,InsertOperation as _0x1ea601,MarkerOperation as _0x239708,RootAttributeOperation as _0x2aa2a4,transformSets as _0x147829,OperationFactory as _0x2893d2}from'@ckeditor/ckeditor5-engine/dist/index.js';import{WebSocketGateway as ft,WEB_SOCKET_GATEWAY_STATES as _0x35cc25,CollaborativeEditingService as _0x489ee1,User as mt,CommentsService as tt,TrackChangesService as it,RevisionHistoryService as ct,EditorService as rt}from'@ckeditor/ckeditor-cloud-services-collaboration/dist/index.js';import{Users as _0x3f765e,UserView as lt}from'ckeditor5-collaboration/dist/index.js';import{Compressor as _0x1d79bb}from'@ckeditor/ckeditor5-operations-compressor/dist/index.js';import{isElement as _0x2a93db}from'lodash-es';class c extends _0x32de9b{static ['WebSocketGateway']=/* #__PURE__ -- @preserve */
24
+ ((()=>ft)());static ['initialReconnectionInterval']=0x3e8;['connection'];['_reconnectionStack'];['_shouldPluginsReconnect'];['_domEmitter'];static get['requires'](){return['CloudServices',_0x4d6a84];}static get['pluginName'](){return'WebSocketGateway';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x515601){super(_0x515601),this['set']('state',_0x35cc25['CONNECTED']),this['set']('_isBrowserOffline',!0x1),this['_reconnectionStack']=new Set(),this['_shouldPluginsReconnect']=!0x1,this['_domEmitter']=Object['create'](_0x540faa);}['init'](){const _0x1eb40f=this['context'],_0x5e5f54=_0x1eb40f['plugins']['get']('CloudServices'),_0x28b2e5=_0x1eb40f['plugins']['get'](_0x4d6a84);if(!_0x5e5f54['token'])throw new _0x5f7cec('websocketgateway-missing-token',this);if(!_0x5e5f54['webSocketUrl'])throw new _0x5f7cec('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'](_0x5e5f54['token'],_0x5e5f54['webSocketUrl'],{'timeout':0x3e8*this['context']['config']['get']('cloudServices.connectionTimeout'),'requestTimeout':0x3e8*this['context']['config']['get']('cloudServices.requestTimeout')})['then'](_0x373826=>{if(this['connection']=_0x373826,this['bind']('state')['to'](_0x373826,'state',this,'_isBrowserOffline',(_0x1b0714,_0x1752fc)=>('connected'!==_0x1b0714&&(this['_shouldPluginsReconnect']=!0x0),_0x1752fc||_0x1b0714!==_0x35cc25['CONNECTED']?_0x35cc25['DISCONNECTED']:this['state']==_0x35cc25['DISCONNECTED']&&this['_shouldPluginsReconnect']?(this['_shouldPluginsReconnect']=!0x1,this['_reconnect'](),_0x35cc25['CONNECTING']):_0x35cc25['CONNECTED'])),this['connection']['on']('error',(_0x13466d,_0x3f7b6e)=>{if('limitExceeded'!==_0x3f7b6e['code'])throw console['error'](_0x3f7b6e),new _0x5f7cec('cloudservices-init',null,{'originalError':_0x3f7b6e});_0x28b2e5['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'});}),!_0x373826['me'])return new Promise(_0x31227d=>_0x373826['on']('change:me',_0x31227d));})['catch'](_0x844f9=>{throw console['error'](_0x844f9),new _0x5f7cec('cloudservices-init',null,{'originalError':_0x844f9});});}['addToReconnectionStack'](_0x5f983e){if('function'!=typeof _0x5f983e['reconnect'])throw new _0x5f7cec('websocketgateway-invalid-plugin-interface',this);if(this['isInReconnectionStack'](_0x5f983e))throw new _0x5f7cec('websocketgateway-plugin-already-registered',this,{'name':_0x5f983e['constructor']['pluginName']});this['_reconnectionStack']['add'](_0x5f983e);}['removeFromReconnectionStack'](_0x2e3dd0){this['_reconnectionStack']['delete'](_0x2e3dd0);}['isInReconnectionStack'](_0x5964f2){return this['_reconnectionStack']['has'](_0x5964f2);}['_reconnect'](){return this['connection']['reconnect']()['then'](()=>Promise['all'](Array['from'](this['_reconnectionStack'],_0x250d91=>_0x250d91['reconnect']())))['then'](()=>this['state']=_0x35cc25['CONNECTED'])['catch'](_0x5a544a=>{throw console['error'](_0x5a544a),new _0x5f7cec('cloudservices-reconnection-error',this['context']);});}['disconnect'](){this['connection']&&this['connection']['disconnect'](),this['state']=_0x35cc25['DISCONNECTED'],this['_domEmitter']['stopListening']();}['destroy'](){this['disconnect'](),super['destroy']();}}class i extends _0x32de9b{['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,_0x3f765e];}constructor(_0x358ee2){super(_0x358ee2),this['channelSessions']=new Map(),this['channelConnectedUsers']=new Map(),this['allConnectedUsers']=new _0x1e8fd0(),this['_registeredSessions']=new Map(),this['_uniqueUsersCount']=0x0,this['_users']=this['context']['plugins']['get'](_0x3f765e);}['init'](){const _0x3a9367=this['context']['plugins']['get'](c);this['listenTo'](_0x3a9367,'change:state',(_0x5ce908,_0x4978f0,_0x3e74b3)=>{if('connected'!==_0x3e74b3)this['channelSessions']['forEach'](_0x6f9be6=>_0x6f9be6['clear']()),this['channelConnectedUsers']['forEach'](_0x2366a7=>_0x2366a7['clear']()),this['allConnectedUsers']['clear']();else{for(const [_0x3828e9,_0x5e52a3]of this['_registeredSessions'])for(const _0x3e2651 of _0x5e52a3)this['_handleSessionAdd'](_0x3828e9,_0x3e2651);}}),this['_createUser'](_0x3a9367['connection']['me'],!0x0);}['register'](_0x69824c,_0x1aad40){if(this['_registeredSessions']['has'](_0x69824c))throw new _0x5f7cec('sessions-register-already-registered',null,{'channelId':_0x69824c});this['_registeredSessions']['set'](_0x69824c,_0x1aad40),this['channelSessions']['set'](_0x69824c,new _0x1e8fd0()),this['channelConnectedUsers']['set'](_0x69824c,new _0x1e8fd0()),this['listenTo'](_0x1aad40,'add',(_0x2c5358,_0x5b7949)=>this['_handleSessionAdd'](_0x69824c,_0x5b7949)),this['listenTo'](_0x1aad40,'remove',(_0x110345,_0x2b3b86)=>this['_handleSessionRemove'](_0x69824c,_0x2b3b86));for(const _0x569591 of _0x1aad40)this['_handleSessionAdd'](_0x69824c,_0x569591);}['unregister'](_0xab2690){if(!this['_registeredSessions']['has'](_0xab2690))throw new _0x5f7cec('sessions-unregister-not-exist',null,{'channelId':_0xab2690});const _0x43b49f=this['_registeredSessions']['get'](_0xab2690);this['stopListening'](_0x43b49f);for(const _0x2cc67c of _0x43b49f)'connected'===this['context']['plugins']['get'](c)['state']&&this['_handleSessionRemove'](_0xab2690,_0x2cc67c);this['_registeredSessions']['delete'](_0xab2690),this['channelSessions']['delete'](_0xab2690),this['channelConnectedUsers']['delete'](_0xab2690);}get['mySessionId'](){return this['context']['plugins']['get'](c)['connection']['sessionId'];}['getUserBySessionId'](_0x5c95b4){for(const _0x282cc4 of this['channelSessions']['values']())for(const _0x3f5c37 of _0x282cc4)if(_0x3f5c37['id']===_0x5c95b4)return _0x3f5c37['user'];}['getUserSessions'](_0x12497a,_0x3fe78b){const _0x2f6714=_0x3fe78b?[this['channelSessions']['get'](_0x3fe78b)]:this['channelSessions']['values'](),_0x3d1885=new Set();for(const _0x3e9a3b of _0x2f6714)for(const _0x210aa4 of _0x3e9a3b)_0x210aa4['user']['id']===_0x12497a['id']&&_0x3d1885['add'](_0x210aa4['id']);return _0x3d1885;}['getUserRole'](_0x228985){for(const _0x494ff3 of this['channelSessions']['values']())for(const _0x3c01ac of _0x494ff3)if(_0x3c01ac['user']===_0x228985)return _0x3c01ac['role'];}['_handleSessionAdd'](_0x21a42f,_0x5cf1aa){if('connected'!==this['context']['plugins']['get'](c)['state'])return;const _0x12ceae=_0x5cf1aa['user'],_0x362e12=this['_users']['getUser'](_0x12ceae['id'])||this['_createUser'](_0x12ceae),_0x4fca5e=Object['assign']({},_0x5cf1aa,{'user':_0x362e12});this['channelSessions']['get'](_0x21a42f)['add'](_0x4fca5e);const _0xc24b93=this['channelConnectedUsers']['get'](_0x21a42f);_0xc24b93['has'](_0x362e12['id'])||_0xc24b93['add'](_0x362e12),this['allConnectedUsers']['has'](_0x362e12['id'])||this['allConnectedUsers']['add'](_0x362e12,_0x362e12['isMe']?0x0:void 0x0),this['fire']('sessionAdd:'+_0x21a42f,{'channelId':_0x21a42f,'session':_0x4fca5e});}['_handleSessionRemove'](_0x3aad9f,_0x10aa5c){if('connected'!==this['context']['plugins']['get'](c)['state'])return;const _0x255d1b=this['channelConnectedUsers']['get'](_0x3aad9f),_0x1ae697=_0x10aa5c['user'];_0x1ae697['id']&&(this['channelSessions']['get'](_0x3aad9f)['remove'](_0x10aa5c['id']),_0x255d1b['has'](_0x1ae697['id'])&&!this['getUserSessions'](_0x1ae697,_0x3aad9f)['size']&&_0x255d1b['remove'](_0x1ae697['id']),this['allConnectedUsers']['get'](_0x1ae697['id'])&&!this['getUserSessions'](_0x1ae697)['size']&&this['allConnectedUsers']['remove'](_0x1ae697['id']));}['_createUser'](_0x37fccf,_0x52cd06){const _0x5d9961=this['_users']['addUser'](_0x37fccf);return _0x52cd06&&this['_users']['defineMe'](_0x37fccf['id']),_0x5d9961['orderNumber']=this['_uniqueUsersCount']++,_0x5d9961;}}class N extends _0x3111a4{['_domEmitter']=new(_0x540faa())();static get['requires'](){return[i];}static get['pluginName'](){return'UserMarkers';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['init'](){const _0x83a3c2=this['editor'],_0x533bca=_0x83a3c2['plugins']['get'](i);_0x83a3c2['conversion']['for']('editingDowncast')['markerToElement']({'model':'user:position','view':(_0x48e45a,{writer:_0x577025})=>function(_0x41caf3,_0x2a38b1,_0x7bc768,_0x1c8aeb){const _0x5c37c3=_0x41caf3['markerName']['split'](':')[0x2],_0x75792f=_0x7bc768['getUserBySessionId'](_0x5c37c3);if(!_0x75792f||_0x5c37c3===_0x7bc768['mySessionId'])return;if(!_0x1c8aeb['model']['schema']['checkChild'](_0x41caf3['markerRange']['start'],'$text'))return;const _0x586b43={'class':'ck-user__marker\x20'+_0x75792f['color']['getMarkerClass'](),'data-name':_0x75792f['name'],'data-session-id':_0x5c37c3},_0x42cecc=_0x1c8aeb['model']['markers']['get'](_0x41caf3['markerName']),_0x5c0cdd=_0x42cecc['getStart'](),_0x4a6592=_0x5c0cdd['nodeAfter'],_0x4e2973=_0x1c8aeb['model']['schema'];if(_0x4a6592&&_0x4e2973['isObject'](_0x4a6592)&&_0x4e2973['isInline'](_0x4a6592)&&!_0x1c8aeb['model']['markers']['get']('user:range:'+_0x5c37c3)['getRange']()['isCollapsed'])return;const _0x4f3571=_0x5c0cdd['parent'];return _0x1c8aeb['model']['schema']['isLimit'](_0x4f3571)&&!_0x1c8aeb['model']['hasContent'](_0x4f3571)&&(_0x586b43['contenteditable']=!0x1),function(_0x255f23,_0x2ba3ed,_0x3f05d7){const _0x4d2a64=_0x255f23['createUIElement']('span',_0x2ba3ed);return _0x255f23['setCustomProperty']('userPositionMarker',!0x0,_0x4d2a64),_0x4d2a64['render']=function(_0x588a19){const _0x46a964=this['toDomElement'](_0x588a19),_0x235de8=document['createElement']('span');return _0x235de8['classList']['add']('ck-user__marker-tooltip'),_0x235de8['setAttribute']('contenteditable','false'),_0x235de8['setAttribute']('spellcheck','false'),_0x235de8['textContent']=_0x3f05d7['name'],_0x46a964['innerHTML']='⁠<span\x20class=\x22ck-user__marker-line\x22\x20contenteditable=\x22false\x22><span\x20class=\x22ck-user__marker-dot\x22></span></span>'+_0x235de8['outerHTML']+'⁠',_0x46a964['addEventListener']('mouseenter',()=>{_0x46a964['classList']['add']('ck-user__marker_hovered');}),_0x46a964['addEventListener']('mouseleave',()=>{_0x46a964['classList']['remove']('ck-user__marker_hovered');}),_0x46a964;},_0x4d2a64['isSimilar']=function(_0x2d6af2){return!(!this['getCustomProperty']('userPositionMarker')||!_0x2d6af2['getCustomProperty']('userPositionMarker')||this['getAttribute']('data-session-id')!=_0x2d6af2['getAttribute']('data-session-id'));},_0x4d2a64;}(_0x2a38b1,_0x586b43,_0x75792f);}(_0x48e45a,_0x577025,_0x533bca,_0x83a3c2)}),_0x83a3c2['conversion']['for']('editingDowncast')['markerToHighlight']({'model':'user:range','view':_0x307fa5=>function(_0x26f32e,_0xb70da4){const _0x1afbc0=_0x26f32e['markerName']['split'](':')[0x2];if(_0x1afbc0===_0xb70da4['mySessionId'])return null;const _0x59fcd2=_0xb70da4['getUserBySessionId'](_0x1afbc0);if(!_0x59fcd2)return{'id':_0x1afbc0,'classes':[]};return{'id':_0x1afbc0,'classes':['ck-user__selection',_0x59fcd2['color']['getSelectionClass']()],'attributes':{'data-session-id':_0x1afbc0},'priority':0x7d0+_0x59fcd2['orderNumber']};}(_0x307fa5,_0x533bca)}),function(_0x2f7ade){const _0x38adc5=_0x2f7ade['model'],_0x11e843=new Map(),_0x5f06ae=_0x2f7ade['plugins']['get'](i);_0x38adc5['markers']['on']('update:user:range',(_0x56ffd7,_0x2157bf,_0x1621ed,_0x5a6728)=>{if(!_0x5a6728&&_0x11e843['get'](_0x2157bf['name']))return _0x11e843['get'](_0x2157bf['name'])['detach'](),void _0x11e843['delete'](_0x2157bf['name']);const _0x3a2054=_0x2157bf['name']['split'](':')[0x2];if(_0x3a2054===_0x5f06ae['mySessionId'])return;const _0x3223d7='user:position:'+_0x3a2054;_0x38adc5['markers']['has'](_0x3223d7)&&_0x2f7ade['editing']['reconvertMarker'](_0x3223d7),_0x2157bf['on']('change:range',(_0x488397,_0x28093a,_0x27bbd9)=>{if('$graveyard'!=_0x28093a['root']['rootName']&&'$graveyard'==_0x2157bf['getRange']()['root']['rootName']&&!_0x11e843['has'](_0x2157bf['name'])){const _0x49e2bd=_0x38adc5['schema']['getNearestSelectionRange'](_0x27bbd9['deletionPosition']);if(_0x49e2bd){const _0xe2f68c=ut['fromRange'](_0x49e2bd);_0x11e843['set'](_0x2157bf['name'],_0xe2f68c),_0xe2f68c['on']('change:range',(_0x239bf2,_0x6e5fca,_0x1df9d4)=>{if('$graveyard'==_0xe2f68c['root']['rootName']){const _0x54ff64=_0x38adc5['schema']['getNearestSelectionRange'](_0x1df9d4['deletionPosition']);_0x54ff64?(_0xe2f68c['start']=_0x54ff64['start'],_0xe2f68c['end']=_0x54ff64['end']):(_0x11e843['delete'](_0x2157bf['name']),_0xe2f68c['detach']());}});}}});}),_0x38adc5['document']['on']('change',()=>{_0x11e843['size']>0x0&&_0x38adc5['enqueueChange']({'isUndoable':!0x1},_0x331b7a=>{for(const [_0x3c43f6,_0x4b5c89]of _0x11e843)'$graveyard'==_0x38adc5['markers']['get'](_0x3c43f6)['getRange']()['root']['rootName']&&(Q(_0x3c43f6['split'](':')[0x2],_0x4b5c89['toRange'](),_0x38adc5,_0x331b7a),_0x4b5c89['detach']());_0x11e843['clear']();});});}(_0x83a3c2),this['_domEmitter']['listenTo'](_0x3d711e['document'],'keydown',(_0x2c62bf,{key:_0x4446e8})=>{'Escape'===_0x4446e8&&function(_0xd3c345){_0xd3c345['editing']['view']['change'](_0x9cda3a=>{for(const _0x143126 of _0xd3c345['model']['markers']){if(!_0x143126['name']['startsWith']('user:position'))continue;const _0x4752f1=_0xd3c345['editing']['mapper']['markerNameToElements'](_0x143126['name']);if(_0x4752f1){for(const _0x129801 of _0x4752f1)_0x9cda3a['removeClass']('ck-user__marker_hovered',_0x129801);}}});}(_0x83a3c2);},{'useCapture':!0x0});}['afterInit'](){const _0x12bebd=this['editor'],_0x49b66d=_0x12bebd['commands']['get']('undo');_0x49b66d&&_0x12bebd['model']['on']('applyOperation',(_0x18341f,_0x40c72f)=>{const _0x56e6c2=_0x40c72f[0x0];if(!_0x56e6c2['isDocumentOperation'])return;if('marker'!=_0x56e6c2['type']||!_0x56e6c2['name']['startsWith']('user:'))return;const _0x45c198=_0x56e6c2['batch'];_0x49b66d['_createdBatches']['has'](_0x45c198)&&(_0x56e6c2['newRange']=_0x56e6c2['oldRange']?_0x12bebd['model']['createRange'](_0x56e6c2['oldRange']['start'],_0x56e6c2['oldRange']['end']):null);},{'priority':'highest'});}['destroy'](){return this['_domEmitter']['stopListening'](),super['destroy']();}['createUserMarkerOperations'](){const _0x438e76=this['editor'],_0x2dac61=_0x438e76['model']['document'],_0x5d1e3b=_0x438e76['plugins']['get'](i);_0x438e76['model']['enqueueChange']({'isUndoable':!0x1},_0x9833b3=>{const _0x19b982='user:range:'+_0x5d1e3b['mySessionId'],_0x2ae31d='user:position:'+_0x5d1e3b['mySessionId'],_0x3a2e6e=_0x438e76['model']['markers']['has'](_0x19b982);_0x438e76['editing']['view']['hasDomSelection']?Q(_0x5d1e3b['mySessionId'],_0x2dac61['selection']['getFirstRange'](),_0x438e76['model'],_0x9833b3):_0x3a2e6e&&(_0x9833b3['removeMarker'](_0x19b982),_0x9833b3['removeMarker'](_0x2ae31d));});}}function Q(_0x156424,_0x3fdb55,_0x17e119,_0x1f3937){const _0x198381='user:range:'+_0x156424,_0x599041='user:position:'+_0x156424,_0x5693f0=_0x3fdb55['getContainedElement']();let _0x3daa25=_0x3fdb55['start'];_0x5693f0&&_0x5693f0['is']('element','tableCell')&&(_0x3daa25=function(_0x5c9321,_0x25fc88){for(const _0x228523 of _0x5c9321['getPositions']())if(_0x25fc88['schema']['checkChild'](_0x228523,'$text'))return _0x228523;}(_0x3fdb55,_0x17e119),_0x3fdb55=_0x1f3937['createRange'](_0x3daa25));const _0x1cd329=_0x1f3937['createRange'](_0x3daa25);_0x17e119['markers']['has'](_0x198381)?(_0x1f3937['updateMarker'](_0x198381,{'range':_0x3fdb55}),_0x1f3937['updateMarker'](_0x599041,{'range':_0x1cd329})):(_0x1f3937['addMarker'](_0x198381,{'range':_0x3fdb55,'usingOperation':!0x0}),_0x1f3937['addMarker'](_0x599041,{'range':_0x1cd329,'usingOperation':!0x0}));}function B(_0x113ebe,_0x4a2e42,_0x49e57c){const _0x3beb77=_0x113ebe['t'],t=_0x113ebe['t'];switch(_0x4a2e42){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 _0x3beb77({'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'},_0x49e57c);default:return'';}}let F=0x1;class l extends _0x3111a4{static ['CollaborativeEditingService']=/* #__PURE__ -- @preserve */
25
+ ((()=>_0x489ee1)());['_offset'];['sessionId'];['serverHistory'];['_channelId'];['_service'];['_document'];['_compressor'];['_bufferedOperations'];['_knownOperations'];['_knownRootNames'];['_pendingAction'];['_hasSelectionChanged'];['_sendBufferedOperationsDelayId'];['_baseBufferDelay'];['_currentBufferDelay'];['_lastSyncedOperationId'];['_disconnectionOperations'];['_operationIdentifier'];static get['requires'](){return[c,i,N,_0x58eebd,_0x3f765e,_0x4d6a84];}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 _0x12af6e=this['serverHistory']['getOperations']();for(let _0x5b9f31=_0x12af6e['length']-0x1;_0x5b9f31>=0x0;_0x5b9f31--){const _0x3fe496=_0x12af6e[_0x5b9f31];if(!this['_disconnectionOperations']['has'](_0x3fe496))return _0x3fe496['baseVersion']+0x1-this['_offset'];}return 0x0;}constructor(_0x4aeeb6){if(super(_0x4aeeb6),this['_offset']=0x0,this['sessionId']=null,this['serverHistory']=new _0x2314a1(),this['editor']['config']['define']('collaboration',{}),this['_channelId']=this['editor']['config']['get']('collaboration.channelId'),!this['_channelId'])throw new _0x5f7cec('collaboration-missing-channelid',this);const _0x20c7cb=_0x4aeeb6['config']['get']('cloudServices.bundleVersion')||ht;this['_service']=new l['CollaborativeEditingService'](_0x20c7cb,this['_channelId']),this['_document']=this['editor']['model']['document'],this['_compressor']=new _0x1d79bb(),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 G(this['_disconnectionOperations']);}['init'](){const _0x3d3e8d=this['editor'],_0x3aba81=_0x3d3e8d['plugins']['get'](_0x3f765e),_0x38da68=_0x3d3e8d['plugins']['get'](c);this['listenTo'](_0x3aba81,'getOperationAuthor',(_0xfafef8,_0x461aef)=>{const _0x36ae25=_0x461aef[0x0];_0x36ae25['_authorId']&&(_0xfafef8['return']=_0x3aba81['getUser'](_0x36ae25['_authorId']),_0xfafef8['stop']()),null===_0x36ae25['_authorId']&&(_0xfafef8['return']=null,_0xfafef8['stop']());},{'priority':'high'}),this['listenTo'](_0x3d3e8d['model']['document']['selection'],'change:range',(_0x42175d,_0x57fc95)=>{_0x57fc95['directChange']&&this['_refreshUserSelectionMarkers']();}),this['listenTo'](_0x3d3e8d['editing']['view'],'change:hasDomSelection',()=>{this['_refreshUserSelectionMarkers']();}),this['_initThrowingOnDataSet'](),_0x3d3e8d['model']['on']('applyOperation',(_0x176d20,_0x12f361)=>{const _0x1f41aa=_0x12f361[0x0];_0x1f41aa['isDocumentOperation']&&(this['_saveOperationInBuffer'](_0x1f41aa),this['_shouldSendUpdate']()&&this['_sendBufferedOperationsDelayed']());}),this['_setUpDataInit'](),this['bind']('_isEditingAllowed')['to'](_0x38da68,'state',this,'_hasSynchronizationProblem',(_0x560dd2,_0x5835de)=>'connected'===_0x560dd2&&!_0x5835de),this['on']('change:_isEditingAllowed',()=>{this['_isEditingAllowed']?_0x3d3e8d['disableReadOnlyMode']('rtc-offline'):_0x3d3e8d['enableReadOnlyMode']('rtc-offline');}),this['_isEditingAllowed']?_0x3d3e8d['disableReadOnlyMode']('rtc-offline'):_0x3d3e8d['enableReadOnlyMode']('rtc-offline'),this['set']('_isConnected',!0x1);}async['reconnect'](){const _0x20698d=this['editor']['plugins']['get'](i),_0x1a54c7=this['editor']['plugins']['get'](c);try{this['_isPendingUpdate']=!0x0,_0x20698d['unregister'](this['_channelId']);const _0x61bce=await this['_service']['reconnect'](_0x1a54c7['connection'],this['lastSyncVersion']);await this['_handleReconnectionResponse'](_0x61bce)&&(this['_isPendingUpdate']=!0x1,this['_clearPendingAction']());const _0x2cc920=await this['_service']['getConnectedSessions']();_0x20698d['register'](this['_channelId'],_0x2cc920),this['_handleSendingSelectionMarkers'](),this['_isConnected']=!0x0;}catch(_0x487486){if(function(_0x46d54d){return'404'===_0x46d54d['code'];}(_0x487486)&&this['sessionId'])await this['_connectAfterSessionHasBeenFlushed']();else{if(function(_0x3b9b03){return'409'===_0x3b9b03['code'];}(_0x487486)){const _0x1ed682=B(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'](_0x1ed682);}else{if(!(_0x487486 instanceof H))throw _0x487486;this['_handleReconnectionError']();}}}}['destroy'](){const _0x190f7e=this['editor']['plugins']['get'](c),_0x2e1723=this['editor']['plugins']['get'](i);this['editor']['enableReadOnlyMode']('rtc-destroyed'),_0x2e1723['channelSessions']['has'](this['_channelId'])&&_0x2e1723['unregister'](this['_channelId']),_0x190f7e['removeFromReconnectionStack'](this),this['_disconnectService'](),super['destroy']();}async['_handleReconnectionResponse'](_0x3a928c){if(this['sessionId']!==_0x3a928c['sessionId']&&this['_lastSyncedOperationId']!==_0x3a928c['lastOperationId'])throw new H();return this['sessionId']=_0x3a928c['sessionId'],this['_handleServerResponse']([],{..._0x3a928c,'wereChangesApplied':!0x1,'data':_0x3a928c['data']},'reconnect');}async['_connectService'](_0x29636d,_0x1d6a09=!0x1){const {connection:_0xd9cc63}=this['editor']['plugins']['get'](c);l['CollaborativeEditingService']['getConnectedSessions'](_0xd9cc63,this['_channelId'])['then'](_0x3b63a2=>this['_initSessionsHandling'](_0x3b63a2))['catch'](_0x573ade=>{this['_crash']('realtimecollaborationclient-init-session-connection-error',_0x573ade);}),this['listenTo'](this['_service'],'operationsReceived',this['_handleReceivedOperations']['bind'](this)),this['listenTo'](this['_service'],'error',(_0x3542bf,_0x19455e)=>{this['_crash']('realtimecollaborationclient-init-service-internal-error',_0x19455e);}),this['listenTo'](this['_service'],'disconnected',()=>{this['_isConnected']=!0x1;});const _0x857552=this['_operationIdentifier']['getIdOfTheLastOperation'](_0x29636d);this['_isPendingUpdate']=!0x0;const _0x3dbf86=await this['_service']['connect'](_0xd9cc63,this['_compressOperations'](_0x29636d),_0x857552);if(this['sessionId']=_0x3dbf86['sessionId'],_0x1d6a09){if(!_0x3dbf86['wereChangesApplied'])return void this['_handleReconnectionError']();this['_isPendingUpdate']=!0x1,this['_clearPendingAction'](),this['serverHistory']['reset'](),this['_offset']=_0x3dbf86['offset'],this['serverHistory']['version']=this['_offset'],await this['_handleServerResponse'](_0x29636d,_0x3dbf86,'reconnection:\x20flushed\x20session');}else await this['_handleInitialConnectionData'](_0x3dbf86,_0x29636d);this['_handleSendingSelectionMarkers'](),this['_isConnected']=!0x0;}['_handleSendingSelectionMarkers'](){const _0x37597b=this['editor']['plugins']['get'](i),_0xe1dd7c=this['editor']['plugins']['get'](N),_0x4ebebe=_0x37597b['channelSessions']['get'](this['_channelId']);_0x4ebebe&&_0x4ebebe['length']>0x1?_0xe1dd7c['createUserMarkerOperations']():this['listenTo'](_0x37597b,'sessionAdd:'+this['_channelId'],()=>{0x2===_0x37597b['channelSessions']['get'](this['_channelId'])['length']&&_0xe1dd7c['createUserMarkerOperations']();});}async['_handleReceivedOperations'](_0x1eeaf9,_0x150b3a,_0x287e51,_0x1961a0){if(!this['_isPendingUpdate']&&this['_document']['version']==_0x150b3a){const _0xa954a2=this['_decompressOperations'](_0x287e51,_0x1961a0);await this['_fetchMissingUsers'](_0xa954a2),this['_handleExternalOperations'](_0xa954a2,_0x150b3a,_0x287e51['lastOperationId'])||this['_crash']('realtimecollaborationclient-init-service-incorrect-server-operation');}}async['_connectAfterSessionHasBeenFlushed'](){this['_disconnectService']();const {locale:_0x18e654}=this['editor'];let _0x517313;try{_0x517313=await this['_service']['getDocumentDetails']();}catch(_0xa61824){const _0x3e0b29=B(_0x18e654,'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'](_0x3e0b29);}const _0x40272d=_0x517313['currentDocumentSession']||_0x517313['lastDocumentSession'];if(this['_lastSyncedOperationId']===_0x40272d['lastOperationId'])await this['_connectService'](this['editor']['model']['document']['history']['getOperations'](),!0x0);else{const _0x385b62=B(_0x18e654,'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'](_0x385b62);}}['_disconnectService'](){this['_service']['disconnect'](),this['_bufferedOperations']=[],clearTimeout(this['_sendBufferedOperationsDelayId']),this['stopListening'](this['_service']);}['_initSessionsHandling'](_0x1bf5d7){const _0x21c082=this['editor']['plugins']['get'](i);this['listenTo'](_0x21c082,'sessionAdd:'+this['_channelId'],(_0x51ca70,{session:_0x2f4b09})=>{if(_0x2f4b09['id']===_0x21c082['mySessionId']){_0x51ca70['off']();const _0x4508cb=this['editor']['plugins']['has']('CommentsOnly')&&this['editor']['plugins']['get']('CommentsOnly');let _0x55ef64=_0x2f4b09['permissions'];_0x4508cb&&_0x4508cb['isEnabled']&&(_0x55ef64=_0x55ef64['filter'](_0x317d2d=>'document:write'!==_0x317d2d)),this['editor']['plugins']['get']('Permissions')['setPermissions'](_0x55ef64,this['_channelId']);}}),_0x21c082['register'](this['_channelId'],_0x1bf5d7);}['_initThrowingOnDataSet'](){const _0xf93e00=this['editor']['data']['set'];this['editor']['data']['set']=(..._0x3072fa)=>{if(!_0x3072fa[_0x3072fa['length']-0x1]['suppressErrorInCollaboration'])throw new _0x5f7cec('realtimecollaborationclient-editor-setdata-and-editor-data-set-are-forbidden-in-real-time-collaboration',this);_0xf93e00['apply'](this['editor']['data'],_0x3072fa);};}['_setUpDataInit'](){this['editor']['data']['on']('init',(_0x5c3573,[_0x65c852])=>{if(this['_document']['version'])throw new _0x5f7cec('realtimecollaborationclient-init-document-already-initialized',this);_0x5c3573['stop'](),this['_setPendingAction']();const _0x23ea0b=this['editor']['config']['get']('rootsAttributes'),_0x5d3fd9=this['_getOperationsFromInitData'](_0x65c852,_0x23ea0b);0x0==_0x5d3fd9['length']&&_0x5d3fd9['push'](new _0x54f299(0x0)),_0x5c3573['return']=this['_connectService'](_0x5d3fd9)['then'](()=>{this['editor']['plugins']['get'](c)['addToReconnectionStack'](this),this['editor']['data']['fire']('ready');})['catch'](_0x29f127=>this['_crash']('realtimecollaborationclient-init-connection-failed',_0x29f127))['finally'](()=>this['_clearPendingAction']());},{'priority':'high'}),this['editor']['on']('loadRoot',async(_0x36c748,[_0x59a344,_0x19735c])=>{_0x36c748['stop']();const _0x5b48b2=this['editor']['model']['document']['getRoot'](_0x59a344);if(!this['_knownRootNames']['has'](_0x59a344)){const _0xee75e6=_0x19735c&&_0x19735c['data']?_0x19735c['data']:'',_0x5a5b15=_0x19735c&&_0x19735c['attributes']?_0x19735c['attributes']:{};await this['_loadRoot'](_0x59a344,_0xee75e6,_0x5a5b15);}this['editor']['model']['enqueueChange']({'isUndoable':!0x1},()=>{_0x5b48b2['_isLoaded']=!0x0,this['editor']['model']['document']['differ']['_bufferRootLoad'](_0x5b48b2);});},{'priority':'high'});}async['_fetchMissingUsers'](_0x445e5b){const _0x2e8124=this['editor']['plugins']['get'](_0x3f765e),{connection:_0x35c5fb}=this['editor']['plugins']['get'](c),_0xea1ad9=new Set();for(const _0x1e3785 of _0x445e5b){const _0x2b5311=_0x1e3785['_authorId'];_0x2b5311&&!_0x2e8124['getUser'](_0x2b5311)&&_0xea1ad9['add'](_0x2b5311);}if(0x0===_0xea1ad9['size'])return;const _0x19a578=await mt['getMany'](_0x35c5fb,Array['from'](_0xea1ad9));for(const _0x1831a0 of _0x19a578)_0x2e8124['getUser'](_0x1831a0['id'])||_0x2e8124['addUser'](_0x1831a0);}['_getOperationsFromInitData'](_0x4bf496,_0x3affa0={}){const _0x2107c1=this['editor']['model'],_0x1b43f1=[];let _0x153b74=0x0;const _0x5a78d8='string'==typeof _0x4bf496?{'main':_0x4bf496}:_0x4bf496;for(const _0x2ce2af of Object['keys'](_0x5a78d8)){if(!this['_document']['roots']['has'](_0x2ce2af))throw new _0x5f7cec('realtimecollaborationclient-init-non-existent-root',this);const _0x45c5c3=this['editor']['data']['parse'](_0x5a78d8[_0x2ce2af]),_0x45985d=this['_document']['getRoot'](_0x2ce2af),_0x1c7937=new _0x1ea601(_0x2107c1['createPositionAt'](_0x45985d,0x0),_0x45c5c3,_0x153b74++);_0x1b43f1['push'](_0x1c7937);for(const [_0x53c855,_0x242aa7]of _0x45c5c3['markers']){const _0x58dcf4=_0x2107c1['createRange'](_0x2107c1['createPositionFromPath'](_0x45985d,_0x242aa7['start']['path']['slice']()),_0x2107c1['createPositionFromPath'](_0x45985d,_0x242aa7['end']['path']['slice']())),_0x3d7f13=new _0x239708(_0x53c855,null,_0x58dcf4,_0x2107c1['markers'],!0x0,_0x153b74++);_0x1b43f1['push'](_0x3d7f13);}}if(_0x3affa0)for(const [_0x235578,_0x464b10]of Object['entries'](_0x3affa0)){const _0x49418f=_0x2107c1['document']['getRoot'](_0x235578);if(!_0x49418f)throw new _0x5f7cec('multi-root-editor-root-attributes-no-root',null);for(const [_0x2b6433,_0x165c27]of Object['entries'](_0x464b10))if(null!==_0x165c27){const _0x197376=new _0x2aa2a4(_0x49418f,_0x2b6433,null,_0x165c27,_0x153b74++);_0x1b43f1['push'](_0x197376);}}return _0x1b43f1;}async['_loadRoot'](_0x42c45f,_0x326687,_0x5b8e29){this['_getOperationsFromInitData']({[_0x42c45f]:_0x326687},{[_0x42c45f]:_0x5b8e29})['forEach']((_0x5ddabe,_0x1133ae)=>{_0x5ddabe['baseVersion']=this['_document']['version']+_0x1133ae,_0x5ddabe['_isInit']=!0x0,this['_saveOperationInBuffer'](_0x5ddabe);}),this['_sendBufferedOperationsDelayed'](),await this['_waitUntilSynced']();}async['_handleInitialConnectionData'](_0xd3d994,_0x26b53e){let _0x24afaf;this['_offset']=_0xd3d994['offset'];const _0x28816a=_0xd3d994['wereChangesApplied']&&!_0xd3d994['initData'],_0x22f3fb=_0x28816a?0x0:_0xd3d994['data']['baseVersion'];if(_0x26b53e['forEach'](_0x55623d=>{_0x55623d['_isInit']=!0x0,_0x55623d['createdAt']=_0xd3d994['sessionCreatedAt'],_0x55623d['_authorId']=null;}),_0x28816a)_0x24afaf=_0x26b53e,this['_applyOperationsSet'](_0x24afaf,_0x28816a);else{if(_0xd3d994['initData']){const _0x26825b=this['_getOperationsFromInitData'](_0xd3d994['initData']);this['_document']['history']['version']=-_0x26825b['length'],_0x26825b['forEach'](_0x4284a3=>{_0x4284a3['baseVersion']-=_0x26825b['length'],_0x4284a3['createdAt']=_0xd3d994['sessionCreatedAt'],_0x4284a3['_isInit']=!0x0,_0x4284a3['_authorId']=null;}),this['_applyOperationsSet'](_0x26825b,!0x0),this['serverHistory']['version']=-_0x26825b['length']+this['_offset'],this['_updateServerHistory'](_0x26825b);}this['_document']['history']['version']=_0x22f3fb,_0x24afaf=this['_decompressOperations'](_0xd3d994['data'],_0xd3d994['metadata']),await this['_fetchMissingUsers'](_0x24afaf),this['_applyOperationsSet'](_0x24afaf,_0x28816a);}_0xd3d994['lastOperationId']&&(this['_operationIdentifier']['setIdForTheLastOperation'](_0x24afaf,_0xd3d994['lastOperationId']),this['_lastSyncedOperationId']=_0xd3d994['lastOperationId']),this['serverHistory']['version']=_0x22f3fb+this['_offset'],this['_updateServerHistory'](_0x24afaf),_0x26b53e['filter'](_0x37d334=>{const _0x8a80ff=this['_getAffectedRoot'](_0x37d334);return _0x8a80ff&&!this['_knownRootNames']['has'](_0x8a80ff);})['forEach']((_0x6dae36,_0x1e2961)=>{_0x6dae36['baseVersion']=this['_document']['version']+_0x1e2961,this['_saveOperationInBuffer'](_0x6dae36);}),this['_shouldSendUpdate']()?(this['_currentBufferDelay']=0x0,this['_sendBufferedOperationsDelayed'](!0x0),await this['_waitUntilSynced']()):(this['_isPendingUpdate']=!0x1,this['_clearPendingAction']());}['_crash'](_0x67a524,_0x45153e){const _0x5ec1e=_0x45153e&&_0x45153e['message'];if(_0x5ec1e&&_0x5ec1e['startsWith']('realtimecollaborationclient'))throw _0x45153e;const _0x460325=this['editor']['plugins']['get'](c);throw this['_isPendingUpdate']=!0x0,_0x460325['disconnect'](),this['editor']['enableReadOnlyMode']('realtimecollaborationclient-error'),new _0x5f7cec(_0x67a524,this['editor'],_0x5ec1e?{'originalError':_0x5ec1e}:void 0x0);}['_saveOperationInBuffer'](_0xbc77b){this['_knownOperations']['has'](_0xbc77b)||(this['_knownOperations']['add'](_0xbc77b),this['_bufferedOperations']['push'](_0xbc77b),this['_pendingAction']||'marker'==_0xbc77b['type']&&!_0xbc77b['affectsData']||this['_setPendingAction']());}['_sendBufferedOperationsDelayed'](_0x570161=!0x1){!_0x570161&&this['_isPendingUpdate']||(this['_isPendingUpdate']=!0x0,clearTimeout(this['_sendBufferedOperationsDelayId']),this['_sendBufferedOperationsDelayId']=setTimeout(()=>{this['_sendBufferedOperations']()['then'](_0x13dfbc=>{_0x13dfbc&&(this['_clearPendingAction'](),this['_isPendingUpdate']=!0x1);})['catch'](_0x3cb170=>{this['_clearPendingAction'](),this['_isPendingUpdate']=!0x1,function(_0x4422be){return _0x4422be['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x4422be['message']['startsWith']('cloud-services-internal-error:\x20Collaborative\x20Editing\x20Service\x20is\x20not\x20connected.')||_0x4422be['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}(_0x3cb170)||this['_crash'](_0x3cb170['message'],_0x3cb170);});},this['_currentBufferDelay']));}['_waitUntilSynced'](){return new Promise(_0x285c8c=>{this['on']('change:_isPendingUpdate',()=>{_0x285c8c();});});}async['_sendBufferedOperations'](){const _0x2465d1=this['editor']['plugins']['get'](N);if(this['_shouldSendSelectionUpdate']()&&(_0x2465d1['createUserMarkerOperations'](),this['_hasSelectionChanged']=!0x1),!this['_shouldSendUpdate']())return!0x0;const _0x132a2f=[...this['_bufferedOperations']];for(const _0x5176fd of _0x132a2f)_0x5176fd['wasUndone']=this['_document']['history']['isUndoneOperation'](_0x5176fd);const _0x5901ff=this['_operationIdentifier']['getIdOfTheLastOperation'](_0x132a2f),_0x24d6b8=F++,_0x1bcff9=this['_compressOperations'](_0x132a2f),_0x242241=await this['_service']['sendOperations'](_0x1bcff9,_0x1bcff9['baseVersion'],_0x5901ff);try{return await this['_handleServerResponse'](_0x132a2f,_0x242241,_0x24d6b8);}catch(_0x45c3ea){return this['_crash']('realtimecollaborationclient-sendbufferedoperations',_0x45c3ea);}}async['_handleServerResponse'](_0x5d667a,_0x3a16e5,_0x4bd36a){if('error'in _0x3a16e5)throw _0x3a16e5['error'];let _0x5238d4=!0x1;if(_0x3a16e5['wereChangesApplied']){_0x3a16e5['lastOperationId']&&(this['_lastSyncedOperationId']=_0x3a16e5['lastOperationId']),this['_bufferedOperations']=this['_bufferedOperations']['filter'](_0x455a57=>!_0x5d667a['includes'](_0x455a57));for(const _0x1067e4 of _0x5d667a)_0x1067e4['createdAt']='lastOperationAcceptedAt'in _0x3a16e5&&_0x3a16e5['lastOperationAcceptedAt']||void 0x0;q(_0x5d667a,_0x3a16e5['version']-_0x5d667a['length']),this['_updateServerHistory'](_0x5d667a);const _0x626bc5=_0x5d667a['filter'](_0xd0d6fb=>{if(!_0xd0d6fb['_isInit'])return!0x1;const _0xb6cc75=this['_getAffectedRoot'](_0xd0d6fb);return _0xb6cc75&&!this['_knownRootNames']['has'](_0xb6cc75);});q(_0x626bc5,this['_document']['version']),this['_applyOperationsSet'](_0x626bc5),_0x5238d4=!0x0,this['_currentBufferDelay']=this['_baseBufferDelay'];}else{const _0x534af1=this['_decompressOperations'](_0x3a16e5['data'],_0x3a16e5['metadata'])['filter'](_0x36c6e7=>_0x36c6e7['baseVersion']>=this['_lastServerVersion']);_0x534af1['forEach'](_0x3eb204=>this['_addKnownRoot'](_0x3eb204)),this['_bufferedOperations']=this['_bufferedOperations']['filter'](_0x3f4aa4=>!_0x3f4aa4['_isInit']||!this['_knownRootNames']['has'](this['_getAffectedRoot'](_0x3f4aa4))),this['_bufferedOperations']['length']&&q(this['_bufferedOperations'],this['_bufferedOperations'][0x0]['baseVersion']),await this['_fetchMissingUsers'](_0x534af1),_0x5238d4=this['_handleExternalOperations'](_0x534af1,_0x3a16e5['version'],_0x3a16e5['lastOperationId']),this['_currentBufferDelay']=Math['round'](this['_currentBufferDelay']/0x2);}return _0x5238d4?!this['_shouldSendUpdate']()||(this['_sendBufferedOperationsDelayed'](!0x0),!0x1):this['_crash']('realtimecollaborationclient-handleserverresponse');}['_handleExternalOperations'](_0x562ea3,_0xa2de8,_0x51a638){try{const _0x507e9f={'document':this['_document'],'useRelations':!0x1,'padWithNoOps':!0x0},{operationsA:_0x5344bd,operationsB:_0x5a7d4c,originalOperations:_0x3b6286}=_0x147829(_0x562ea3,this['_bufferedOperations'],_0x507e9f);q(_0x5344bd,this['_document']['version']),q(_0x5a7d4c,_0xa2de8);for(const _0x40640f of _0x5344bd){const _0x225b4f=_0x3b6286['get'](_0x40640f);_0x40640f['_authorId']=_0x225b4f?_0x225b4f['_authorId']:null;}_0x51a638&&(this['_operationIdentifier']['setIdForTheLastOperation'](_0x562ea3,_0x51a638),this['_lastSyncedOperationId']=_0x51a638),this['_bufferedOperations']=[..._0x5a7d4c],this['_applyOperationsSet'](_0x5344bd),this['_updateServerHistory'](_0x562ea3);}catch(_0x19672f){return console['error'](_0x19672f),!0x1;}return!0x0;}['_applyOperationsSet'](_0x49bbc1,_0x41b63b=!0x1){this['editor']['model']['enqueueChange']({'isUndoable':!0x1,'isLocal':!0x1},_0x4ebece=>{for(const _0xe1dbd8 of _0x49bbc1)this['_knownOperations']['add'](_0xe1dbd8),this['_addKnownRoot'](_0xe1dbd8),_0x4ebece['batch']['addOperation'](_0xe1dbd8),this['editor']['model']['applyOperation'](_0xe1dbd8);});}['_addKnownRoot'](_0x445895){const _0xfeea1b=this['_getAffectedRoot'](_0x445895);_0xfeea1b&&this['_knownRootNames']['add'](_0xfeea1b);}['_getAffectedRoot'](_0x52ba96){let _0xaff11a,_0x3c5222;switch(_0x52ba96['type']){case'insert':_0xaff11a=_0x52ba96['position']['root'];break;case'marker':if(_0x3c5222=_0x52ba96['newRange'],!_0x3c5222)return null;_0xaff11a=_0x3c5222['root'];break;case'addRootAttribute':_0xaff11a=_0x52ba96['root'];break;case'addRoot':_0xaff11a=_0x52ba96['affectedSelectable'];break;case'move':_0xaff11a=_0x52ba96['targetPosition']['root'];break;default:return null;}return _0xaff11a['rootName'];}['_updateServerHistory'](_0x3f1de7){_0x3f1de7['forEach'](_0x5c07cc=>{const _0x468480=_0x5c07cc['clone']();_0x468480['_authorId']=_0x5c07cc['_authorId'],_0x468480['_isInit']=!!_0x5c07cc['_isInit'],_0x468480['createdAt']=_0x5c07cc['createdAt'],_0x468480['baseVersion']+=this['_offset'],_0x5c07cc['_isDisconnection']&&this['_disconnectionOperations']['add'](_0x468480),this['serverHistory']['addOperation'](_0x468480);});}['_handleReconnectionError'](_0x10eb77){const _0x2037a2=this['editor']['plugins']['get']('Notification'),_0x2c1c8a=this['editor']['locale'];_0x10eb77||(_0x10eb77=B(_0x2c1c8a,'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.')),_0x2037a2['showWarning'](_0x10eb77,{'title':B(_0x2c1c8a,'Synchronization\x20issue'),'namespace':'real-time-collaboration'}),this['_hasSynchronizationProblem']=!0x0,clearTimeout(this['_sendBufferedOperationsDelayId']),this['_bufferedOperations']=[],this['editor']['plugins']['get'](c)['disconnect']();}['_setPendingAction'](){this['_pendingAction']||(this['_pendingAction']=this['editor']['plugins']['get'](_0x58eebd)['add'](B(this['editor']['locale'],'PENDING_ACTION_SENDING_DATA')));}['_clearPendingAction'](){this['_pendingAction']&&(this['editor']['plugins']['get'](_0x58eebd)['remove'](this['_pendingAction']),this['_pendingAction']=null);}['_compressOperations'](_0x40e2d0){const _0x390cc7=_0x40e2d0['map'](_0x4b6310=>_0x4b6310['toJSON']());return this['_compressor']['compress'](_0x390cc7);}['_decompressOperations'](_0x172f42,_0x16d113){return this['_compressor']['decompress'](_0x172f42)['map']((_0x55c8a7,_0x3016ad)=>{const _0x260318='init'==_0x16d113[_0x3016ad]['type'];if('InsertOperation'==_0x55c8a7['__className']){const _0x1f0f35=_0x55c8a7['position']['root'];!this['_document']['getRoot'](_0x1f0f35)&&(this['_document']['createRoot']('$root',_0x1f0f35)['_isAttached']=!0x1);}const _0x4d19f2=_0x2893d2['fromJSON'](_0x55c8a7,this['_document']);return _0x4d19f2['wasUndone']=_0x55c8a7['wasUndone'],_0x4d19f2['_isInit']=_0x260318,_0x4d19f2['_authorId']=_0x260318?null:_0x16d113[_0x3016ad]['userId'],_0x4d19f2['_isDisconnection']='cs:removeUser'===_0x16d113[_0x3016ad]['type'],_0x4d19f2['createdAt']=_0x16d113[_0x3016ad]['createdAt'],_0x4d19f2;});}['_refreshUserSelectionMarkers'](){this['_hasSelectionChanged']=!0x0,this['_shouldSendSelectionUpdate']()?this['_sendBufferedOperationsDelayed']():this['_hasSelectionChanged']=!0x1;}['_shouldSendSelectionUpdate'](){const _0x3f92d6=this['editor']['plugins']['get'](i)['channelSessions']['get'](this['_channelId']);return!this['editor']['isReadOnly']&&!!_0x3f92d6&&_0x3f92d6['length']>0x1&&this['_hasSelectionChanged'];}['_shouldSendUpdate'](){return this['_bufferedOperations']['length']>0x0||this['_shouldSendSelectionUpdate']();}}class H extends Error{}function q(_0x2b746e,_0x1f2830){for(const _0x465850 of _0x2b746e)_0x465850['baseVersion']=_0x1f2830++;}class G{['_ignoredOperations'];['_operationToId'];constructor(_0x8f52d){this['_ignoredOperations']=_0x8f52d,this['_operationToId']=new WeakMap();}['getIdOfTheLastOperation'](_0xd944dc){let _0x33810b=_0xd944dc['length'];for(;_0x33810b--;){const _0x3cfdf1=_0xd944dc[_0x33810b];if(!this['_ignoredOperations']['has'](_0x3cfdf1)){if(!this['_operationToId']['has'](_0x3cfdf1)){const _0x34c6d9=_0x37ac80()['slice'](0x1,0x12);this['_operationToId']['set'](_0x3cfdf1,_0x34c6d9);}return this['_operationToId']['get'](_0x3cfdf1);}}}['setIdForTheLastOperation'](_0x73565e,_0x53b065){if(!_0x53b065)return;let _0x46f34e=_0x73565e['length'];for(;_0x46f34e--;){const _0x49af1c=_0x73565e[_0x46f34e];this['_ignoredOperations']['has'](_0x49af1c)||this['_operationToId']['set'](_0x49af1c,_0x53b065);}}}class n extends _0x3111a4{static get['requires'](){return[l];}static get['pluginName'](){return'RealTimeCollaborativeEditing';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}class a extends _0x32de9b{static ['CommentsService']=/* #__PURE__ -- @preserve */
26
+ ((()=>tt)());['_services'];static get['requires'](){return[c,'CommentsRepository',i,_0x3f765e];}static get['pluginName'](){return'CloudServicesCommentsAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x1c45a4){super(_0x1c45a4),this['_services']=new Map();}async['init'](){const _0x19c109=this['context'],_0x542bec=_0x19c109['plugins']['get']('CommentsRepository');if(_0x19c109['plugins']['get'](c)['addToReconnectionStack'](this),_0x542bec['adapter']={'addCommentThread':async({channelId:_0x3f4ebe,threadId:_0x8d5079,comments:_0x587217,resolvedAt:_0x3c0abd,resolvedBy:_0x2c0177,context:_0x1c1ed8,attributes:_0xc5fa51})=>{const _0x55e764=await this['_getService'](_0x3f4ebe)['addCommentThread']({'commentThreadId':_0x8d5079,'comments':_0x587217['map'](_0x3d861d=>function(_0x439c16,_0x458fbf,_0x12c31c){return{'commentThreadId':_0x12c31c,'commentId':_0x439c16['commentId'],'userId':_0x439c16['authorId'],'content':_0x439c16['content'],'documentId':_0x458fbf,'createdAt':_0x439c16['createdAt'],'attributes':_0x439c16['attributes']||{}};}(_0x3d861d,_0x3f4ebe,_0x8d5079)),'resolvedAt':_0x3c0abd,'resolvedBy':_0x2c0177,'context':_0x1c1ed8,'attributes':_0xc5fa51})['catch'](gt);return{'threadId':_0x55e764['commentThreadId'],'comments':_0x55e764['comments']};},'getCommentThread':async({channelId:_0x87ef6,threadId:_0x44f31f})=>{const _0x30d029=await this['_getService'](_0x87ef6)['getCommentThread'](_0x44f31f)['catch'](gt);return _0x30d029['deletedAt']?null:(await this['_fetchMissingUsersForThreads']([_0x30d029]),{'threadId':_0x30d029['commentThreadId'],'comments':_0x30d029['comments']['map'](nt),'context':_0x30d029['context'],'resolvedAt':_0x30d029['resolvedAt'],'resolvedBy':_0x30d029['resolvedBy'],'attributes':_0x30d029['attributes']||{}});},'updateCommentThread':async({channelId:_0x131139,threadId:_0x249e28,context:_0x6ad309,unlinkedAt:_0x56bedb,attributes:_0x1fc1f3})=>this['_getService'](_0x131139)['updateCommentThread']({'commentThreadId':_0x249e28,'context':_0x6ad309,'attributes':_0x1fc1f3,'unlinkedAt':_0x56bedb})['catch'](et)['catch'](gt),'resolveCommentThread':async({channelId:_0x48c985,threadId:_0x48c921})=>{const _0x144f29=await this['_getService'](_0x48c985)['resolveCommentThread'](_0x48c921)['catch'](et)['catch'](gt);return{'threadId':_0x144f29['commentThreadId'],'resolvedAt':_0x144f29['resolvedAt'],'resolvedBy':_0x144f29['resolvedBy']};},'reopenCommentThread':async({channelId:_0x380974,threadId:_0x292ae5})=>this['_getService'](_0x380974)['reopenCommentThread'](_0x292ae5)['catch'](et)['catch'](gt),'removeCommentThread':({channelId:_0x1bb9ec,threadId:_0x163496})=>this['_getService'](_0x1bb9ec)['removeCommentThread'](_0x163496)['catch'](et)['catch'](gt),'addComment':({channelId:_0x33d650,threadId:_0x51f88f,commentId:_0x51d75e,content:_0x2f45e8,attributes:_0x42bbd4})=>this['_getService'](_0x33d650)['addComment'](_0x51f88f,_0x51d75e,_0x2f45e8,_0x42bbd4)['catch'](gt),'updateComment':({channelId:_0x5edcf4,threadId:_0x3b7392,commentId:_0x1c4bb1,content:_0x28d32f,attributes:_0x129d7c})=>this['_getService'](_0x5edcf4)['updateComment'](_0x3b7392,_0x1c4bb1,_0x28d32f,_0x129d7c)['catch'](et)['catch'](gt),'removeComment':({channelId:_0x1a67a3,threadId:_0x35a580,commentId:_0x358778})=>this['_getService'](_0x1a67a3)['removeComment'](_0x35a580,_0x358778)['catch'](et)['catch'](gt)},_0x19c109 instanceof _0x160987){const _0x22ea84=_0x19c109['config']['get']('collaboration.channelId'),_0x10b7a8=_0x19c109['plugins']['get'](i);await this['_setUpService'](_0x22ea84);const _0x280d06=await this['_services']['get'](_0x22ea84)['getConnectedSessions']();this['listenTo'](_0x10b7a8,'sessionAdd:'+_0x22ea84,(_0x28ed01,{session:_0x4084f2})=>{_0x4084f2['id']===_0x10b7a8['mySessionId']&&(_0x28ed01['off'](),this['context']['plugins']['get']('Permissions')['setPermissions'](_0x4084f2['permissions'],_0x22ea84));}),_0x10b7a8['register'](_0x22ea84,_0x280d06);}}async['_setUpService'](_0x38bfe5){if(this['_services']['has'](_0x38bfe5))throw new _0x5f7cec('cloudservicescommentsadapter-connect-already-connected',null,{'channelId':_0x38bfe5});const _0x240a10=this['context']['plugins']['get']('CommentsRepository'),_0x2b3040=new a['CommentsService'](_0x38bfe5);this['_services']['set'](_0x38bfe5,_0x2b3040),this['listenTo'](_0x2b3040,'commentThreadAdded',(_0x3cd02c,_0xe69ca6)=>{const {commentThreadId:_0x12807b,documentId:_0x51a7f9,context:_0x1235fc,attributes:_0x2c2640,resolvedAt:_0x275739,resolvedBy:_0x5961c9,comments:_0x336b7c}=_0xe69ca6;_0x240a10['getCommentThread'](_0x12807b)||_0x240a10['addCommentThread']({'threadId':_0x12807b,'channelId':_0x51a7f9,'comments':_0x336b7c?_0x336b7c['map'](nt):[],'context':_0x1235fc,'attributes':_0x2c2640,'resolvedAt':_0x275739,'resolvedBy':_0x5961c9,'isFromAdapter':!0x0});}),this['listenTo'](_0x2b3040,'commentThreadUpdated',(_0x3c80db,{commentThreadId:_0x378aed,documentId:_0x52838d,context:_0x1250db,unlinkedAt:_0x12317e,attributes:_0xf7735e})=>{_0x240a10['getCommentThread'](_0x378aed)&&_0x240a10['updateCommentThread']({'threadId':_0x378aed,'channelId':_0x52838d,'context':_0x1250db,'unlinkedAt':_0x12317e,'attributes':_0xf7735e,'isFromAdapter':!0x0});}),this['listenTo'](_0x2b3040,'commentThreadResolved',(_0x5d80ba,{commentThreadId:_0x16872f,resolvedBy:_0x167658,resolvedAt:_0x4d7e2f})=>{const _0x461a24=_0x240a10['getCommentThread'](_0x16872f);_0x461a24&&_0x461a24['resolve']({'resolvedBy':_0x167658,'resolvedAt':_0x4d7e2f,'isFromAdapter':!0x0});}),this['listenTo'](_0x2b3040,'commentThreadReopened',(_0x1f1113,{commentThreadId:_0x50498b})=>{const _0x22b4cc=_0x240a10['getCommentThread'](_0x50498b);_0x22b4cc&&_0x22b4cc['reopen']({'isFromAdapter':!0x0});}),this['listenTo'](_0x2b3040,'commentThreadRemoved',(_0x4c5405,{commentThreadId:_0x364d70})=>{const _0x113b8d=_0x240a10['getCommentThread'](_0x364d70);_0x113b8d&&_0x113b8d['remove']({'isFromAdapter':!0x0});}),this['listenTo'](_0x2b3040,'commentAdded',(_0x2b4cf3,_0x12a69b)=>{const _0x7ae3b2=_0x12a69b['commentThreadId'],_0xbd6c7b=_0x240a10['getCommentThread'](_0x7ae3b2);_0xbd6c7b&&_0xbd6c7b['addComment']({...nt(_0x12a69b),'isFromAdapter':!0x0});}),this['listenTo'](_0x2b3040,'commentUpdated',(_0x34a32d,{commentThreadId:_0x12c269,commentId:_0x4ae092,content:_0x2b0f0b,attributes:_0xede060})=>{const _0x1f59d5=_0x240a10['getCommentThread'](_0x12c269);if(_0x1f59d5){const _0x17c63c=_0x1f59d5['getComment'](_0x4ae092);_0x17c63c&&_0x17c63c['update']({'content':_0x2b0f0b,'attributes':_0xede060,'isFromAdapter':!0x0});}}),this['listenTo'](_0x2b3040,'commentRemoved',(_0x2cfc46,{commentThreadId:_0x4590b5,commentId:_0x3de4ce})=>{const _0x10a257=_0x240a10['getCommentThread'](_0x4590b5);if(_0x10a257){const _0x240e6c=_0x10a257['getComment'](_0x3de4ce);_0x240e6c&&_0x240e6c['remove']({'isFromAdapter':!0x0});}}),await this['_connectService'](_0x38bfe5);}['destroy'](){if(this['context']instanceof _0x160987){const _0x198493=this['context']['config']['get']('collaboration.channelId');this['_terminateService'](_0x198493);}}['_terminateService'](_0x1aad05){if(!this['_services']['has'](_0x1aad05))throw new _0x5f7cec('cloudservicescommentsadapter-disconnect-not-exist',null,{'channelId':_0x1aad05});this['_getService'](_0x1aad05)['disconnect'](),this['_services']['delete'](_0x1aad05);}async['reconnect'](){for(const _0x454f28 of this['_services']['keys']())await this['_connectService'](_0x454f28);if(this['context']instanceof _0x160987){const _0x25b9c1=this['context']['config']['get']('collaboration.channelId'),_0x25380d=this['context']['plugins']['get'](i);_0x25380d['unregister'](_0x25b9c1);const _0x13a352=await this['_services']['get'](_0x25b9c1)['getConnectedSessions']();_0x25380d['register'](_0x25b9c1,_0x13a352);}}async['_connectService'](_0x2b2c47){const {connection:_0x1277c3}=this['context']['plugins']['get'](c),_0x80f4ed=this['context']['plugins']['get']('CommentsRepository'),_0xcba29e=this['_services']['get'](_0x2b2c47),_0x34f6c1=await _0xcba29e['connect'](_0x1277c3);await this['_fetchMissingUsersForThreads'](_0x34f6c1);const _0x397327=new Set(Array['from'](_0x80f4ed['getCommentThreads']({'channelId':_0x2b2c47}),_0x2b1080=>_0x2b1080['id']));for(const _0x474d20 of _0x34f6c1)_0x474d20['deletedAt']||_0x397327['delete'](_0x474d20['commentThreadId']);for(const _0x50bbf8 of _0x397327)_0x80f4ed['getCommentThread'](_0x50bbf8)['remove']({'isFromAdapter':!0x0});for(const _0x257ac7 of _0x34f6c1){let _0x237c5b=_0x80f4ed['getCommentThread'](_0x257ac7['commentThreadId']);const {commentThreadId:_0xafb7f7,context:_0x24781c,attributes:_0x937103,resolvedBy:_0x19afbd,resolvedAt:_0x5382f5,unlinkedAt:_0x4f9f6f,deletedAt:_0x1000ea}=_0x257ac7;if(_0x1000ea)continue;_0x237c5b||(_0x237c5b=_0x80f4ed['addCommentThread']({'channelId':_0x2b2c47,'threadId':_0xafb7f7,'context':_0x24781c,'attributes':_0x937103||{},'resolvedBy':_0x19afbd,'resolvedAt':_0x5382f5,'unlinkedAt':_0x4f9f6f,'isFromAdapter':!0x0}));const _0x5ed662=new Set(Array['from'](_0x237c5b['comments'],_0x3efec2=>_0x3efec2['id']));for(const _0x4cddb4 of _0x257ac7['comments'])_0x5ed662['delete'](_0x4cddb4['commentId']);for(const _0x308197 of _0x5ed662)_0x237c5b['getComment'](_0x308197)['remove']({'isFromAdapter':!0x0});for(const _0xb7a106 of _0x257ac7['comments']){const _0x4fb608=_0x237c5b['getComment'](_0xb7a106['commentId']);_0x4fb608?_0x4fb608['content']!==_0xb7a106['content']&&_0x4fb608['update']({'content':_0xb7a106['content'],'isFromAdapter':!0x0}):_0x237c5b['addComment'](Object['assign'](nt(_0xb7a106),{'isFromAdapter':!0x0}));}}}['_getService'](_0x2609ed){if(!this['_services']['has'](_0x2609ed))throw new _0x5f7cec('cloudservicescommentsadapter-service-not-exist',null,{'channelId':_0x2609ed});return this['_services']['get'](_0x2609ed);}async['_fetchMissingUsersForThreads'](_0xae48e9){const _0x356adf=this['context']['plugins']['get'](_0x3f765e),{connection:_0xe6f044}=this['context']['plugins']['get'](c),_0x4091b6=new Set();for(const {resolvedBy:_0x494f69,comments:_0x3ba26f}of _0xae48e9){_0x494f69&&!_0x356adf['getUser'](_0x494f69)&&_0x4091b6['add'](_0x494f69);for(const {userId:_0xfd733d}of _0x3ba26f)_0x356adf['getUser'](_0xfd733d)||_0x4091b6['add'](_0xfd733d);}if(0x0===_0x4091b6['size'])return;const _0x2b5603=await mt['getMany'](_0xe6f044,Array['from'](_0x4091b6));for(const _0x12a518 of _0x2b5603)_0x356adf['getUser'](_0x12a518['id'])||_0x356adf['addUser'](_0x12a518);}}async function et(_0x2e3bc8){if('404'!==_0x2e3bc8['code'])throw _0x2e3bc8;}function gt(_0xaee1ee){if((_0x3d3113=_0xaee1ee)['message']['startsWith']('cloud-services-internal-error:\x20Comments\x20Service\x20is\x20not\x20connected.')||_0x3d3113['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x3d3113['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.'))return new Promise(()=>{});var _0x3d3113;throw _0xaee1ee;}function nt(_0x4dcbe6){return{'threadId':_0x4dcbe6['commentThreadId'],'commentId':_0x4dcbe6['commentId'],'content':_0x4dcbe6['content'],'createdAt':_0x4dcbe6['createdAt'],'authorId':_0x4dcbe6['userId'],'attributes':_0x4dcbe6['attributes']||{}};}class f extends _0x3111a4{static ['TrackChangesService']=/* #__PURE__ -- @preserve */
27
+ ((()=>it)());['_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(_0xec9200){super(_0xec9200);const _0x56ccce=this['editor']['config']['get']('collaboration.channelId');this['_bufferedRequests']=new Map(),this['_trackChangesService']=new f['TrackChangesService'](_0x56ccce);}['init'](){const _0x66b411=this['editor']['plugins']['get'](c),_0xdac301=this['editor']['plugins']['get']('TrackChangesEditing');return _0xdac301['adapter']={'getSuggestion':async _0x2dce70=>{await this['_waitForServiceReady']();const _0x9a3904=await this['_trackChangesService']['get'](_0x2dce70)['catch'](ot);return await this['_fetchMissingUsersForThreads']([_0x9a3904]),_0x9a3904;},'addSuggestion':async({id:_0x5d5752,type:_0x261613,data:_0x3afc86,originalSuggestionId:_0x281c5c,attributes:_0x6601a1})=>{await this['_waitForServiceReady']();const _0x23b34c={'id':_0x5d5752,'type':_0x261613,'data':_0x3afc86,'originalSuggestionId':_0x281c5c,'attributes':_0x6601a1},_0xaf0958=await this['_trackChangesService']['add'](_0x5d5752,_0x261613,_0x3afc86,_0x281c5c,_0x6601a1)['catch'](_0x3c6155=>{if(wt(_0x3c6155))return new Promise(_0x56d5a8=>{this['_bufferedRequests']['set'](_0x5d5752,{'resolve':_0x56d5a8,'suggestionData':_0x23b34c});});throw _0x3c6155;});return this['_bufferedRequests']['delete'](_0x5d5752),_0xaf0958;},'updateSuggestion':async(_0x37b813,_0x240890)=>{if(await this['_waitForServiceReady'](),'open'!==_0x240890['state'])return this['_trackChangesService']['update'](_0x37b813,_0x240890)['catch'](ot);}},this['listenTo'](this['_trackChangesService'],'suggestionUpdated',(_0x2ab07a,_0xe32c56)=>{_0xdac301['hasSuggestion'](_0xe32c56['id'])&&(_0xdac301['getSuggestion'](_0xe32c56['id'])['attributes']=_0xe32c56['attributes']);}),this['_trackChangesService']['connect'](_0x66b411['connection'])['then'](_0x10140d=>(_0x66b411['addToReconnectionStack'](this),this['_fetchMissingUsersForThreads'](_0x10140d)['then'](()=>{for(const _0x8146f7 of _0x10140d){_0xdac301['addSuggestionData'](_0x8146f7)['_saved']=!0x0;}})));}async['reconnect'](){const _0x1a8b82=this['editor']['plugins']['get']('TrackChangesEditing'),{connection:_0x5b1391}=this['editor']['plugins']['get'](c),_0x28149d=await this['_trackChangesService']['connect'](_0x5b1391);await this['_fetchMissingUsersForThreads'](_0x28149d);for(const {suggestionData:_0x3e0b48,resolve:_0x3afa40}of this['_bufferedRequests']['values']()){let _0x53c1ba=_0x28149d['find'](_0x11e2fc=>_0x11e2fc['id']===_0x3e0b48['id']);_0x53c1ba||(_0x53c1ba=await this['_trackChangesService']['add'](_0x3e0b48['id'],_0x3e0b48['type'],_0x3e0b48['data'],_0x3e0b48['originalSuggestionId'])),_0x3afa40(_0x53c1ba);}for(const _0x2a8ff1 of _0x28149d)_0x1a8b82['hasSuggestion'](_0x2a8ff1['id'])||_0x1a8b82['addSuggestionData'](_0x2a8ff1);}async['_waitForServiceReady'](){this['_trackChangesService']['isConnected']||await new Promise(_0x16f346=>{this['listenTo'](this['_trackChangesService'],'connected',_0x5b32ab=>{_0x5b32ab['off'](),_0x16f346();});});}async['_fetchMissingUsersForThreads'](_0xd33f86){const _0x5adabf=this['editor']['plugins']['get'](_0x3f765e),{connection:_0x38d338}=this['editor']['plugins']['get'](c),_0x22b807=new Set();for(const {authorId:_0x15b5ff}of _0xd33f86)_0x5adabf['getUser'](_0x15b5ff)||_0x22b807['add'](_0x15b5ff);if(0x0===_0x22b807['size'])return;const _0x28e238=await mt['getMany'](_0x38d338,Array['from'](_0x22b807));for(const _0x22c517 of _0x28e238)_0x5adabf['getUser'](_0x22c517['id'])||_0x5adabf['addUser'](_0x22c517);}}function ot(_0x1cb24f){if(wt(_0x1cb24f))return new Promise(()=>{});throw _0x1cb24f;}function wt(_0x5ceabf){return _0x5ceabf['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x5ceabf['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}class m extends _0x3111a4{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 _0x5a515d=this['editor']['plugins']['get'](c),_0xba9f2b=this['editor']['plugins']['get']('CommentsEditing'),_0x4656aa=this['editor']['plugins']['get'](a);return this['editor']['data']['once']('ready',()=>{this['listenTo'](_0x5a515d,'change:state',(_0x44e078,_0x28a4b7,_0x1edd12)=>{_0xba9f2b['isThreadsLoadingPaused']='connected'!==_0x1edd12;});}),this['listenTo'](_0x5a515d,'change:state',(_0x33edb7,_0x14c63d,_0x4aef06)=>{this['editor']['plugins']['get']('CommentsRepository')['switchReadOnly']('connected'!==_0x4aef06);}),_0x4656aa['_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 _0x3111a4{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 _0x3111a4{static ['RevisionHistoryService']=/* #__PURE__ -- @preserve */
28
+ ((()=>ct)());['_lastRequestId'];['_revisionTracker'];['_revisionHistoryService'];['_oldOffset'];static get['requires'](){return[c,l,'RevisionTracker',i,_0x3f765e];}static get['pluginName'](){return'CloudServicesRevisionHistoryAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x4a03de){super(_0x4a03de);const _0x40fc5a=this['editor']['config']['get']('collaboration.channelId');this['_lastRequestId']=null,this['_revisionTracker']=this['editor']['plugins']['get']('RevisionTracker'),this['_revisionHistoryService']=new u['RevisionHistoryService'](_0x40fc5a);}async['init'](){const _0x58e569=this['editor']['plugins']['get'](l),_0x450c96=_0x58e569['serverHistory'],_0x108c77=this['editor']['plugins']['get'](c);this['_revisionTracker']['setSource']({'history':_0x450c96,'getLatestVersion':()=>this['_getLatestVersion'](),'getCurrentRevisionId':()=>_0x58e569['sessionId']});const _0x4b23bc=this['editor']['config']['get']('cloudServices.bundleVersion')||ht,_0x2a1736=await rt['isBundleUploaded'](_0x108c77['connection'],_0x4b23bc);this['_revisionTracker']['adapter']={'getRevision':async({revisionId:_0x87aebc})=>(await this['_waitForServiceReady'](),await this['_revisionHistoryService']['getRevision'](_0x87aebc)),'updateRevisions':async _0x569a39=>{await this['_waitForServiceReady']();const _0x2973d1=this['_revisionTracker']['currentRevision'];if(_0x2a1736&&0x1===_0x569a39['length']&&_0x569a39[0x0]['id']===_0x2973d1['id'])return _0x569a39;for(const _0x342ea6 of _0x569a39)_0x342ea6['id']===_0x2973d1['id']&&(_0x342ea6['isEmptyCurrent']=_0x342ea6['fromVersion']===_0x342ea6['toVersion']);return this['_revisionHistoryService']['updateRevisions'](_0x569a39,this['_lastRequestId'])['then'](_0x3964db=>(this['_lastRequestId']=_0x3964db,_0x569a39))['catch'](_0x1b308a=>{if(st(_0x1b308a)||'400'===_0x1b308a['code']&&void 0x0!==_0x1b308a['data']['wrongRequestId']){for(const _0x3b7205 of _0x569a39){!this['_revisionTracker']['repository']['getRevision'](_0x3b7205['id'])||this['_revisionTracker']['_bufferUpdate'](_0x3b7205['id'],_0x3b7205,!0x1);}if(st(_0x1b308a))throw _0x1b308a;return _0x569a39;}throw _0x1b308a;});}},this['listenTo'](this['_revisionHistoryService'],'revisionsUpdated',(_0x3757d5,{revisionsData:_0x5bb735,requestId:_0xe6f227})=>{Math['max'](..._0x5bb735['map'](_0x4c9bc5=>_0x4c9bc5['toVersion']))>this['_getLatestVersionFromServerOperations']()-0x1?this['_getLatestVersion']()['then'](()=>{this['_handleRevisionsUpdate'](_0x5bb735,_0xe6f227);}):this['_handleRevisionsUpdate'](_0x5bb735,_0xe6f227);});const {revisions:_0x25d825,requestId:_0x82590d}=await this['_revisionHistoryService']['connect'](_0x108c77['connection']);_0x108c77['addToReconnectionStack'](this),this['_lastRequestId']=_0x82590d,await this['_fetchMissingUsers'](_0x25d825);for(const _0x3b5a3c of _0x25d825)this['_revisionTracker']['addRevisionData'](_0x3b5a3c);this['listenTo'](_0x58e569,'change:_isConnected',(_0x9192b,_0x3abdb7,_0x4ac84f)=>{_0x4ac84f&&(this['_oldOffset']=_0x58e569['_offset'],_0x9192b['off']());}),this['_revisionTracker']['bind']('isEnabled')['to'](_0x108c77,'state',_0x5eabdd=>_0x5eabdd===_0x35cc25['CONNECTED']);}async['reconnect'](){const _0x4c05aa=this['editor']['plugins']['get'](c),_0x13ff94=this['editor']['plugins']['get'](l),_0xb66b4e=async()=>{const _0x22256f=this['_revisionTracker']['currentRevision'],_0x7ca1bc=_0x22256f['id'],_0xa14ab=_0x7ca1bc!==_0x13ff94['sessionId'];if(_0xa14ab){const _0x10ac6c=_0x13ff94['_offset']-this['_oldOffset'],_0x5b3e1c=this['_getLatestVersionFromServerOperations']();this['_revisionTracker']['_revisionDataBuilder']['reInit']();if(_0x22256f['toVersion']+_0x10ac6c!==_0x5b3e1c){const _0x6c5ecb=_0x22256f['fromVersion']+_0x10ac6c,_0x365bf6=this['editor']['plugins']['get'](_0x3f765e),_0x17df0d=this['_revisionTracker']['buildRevisionData']({'revision':_0x22256f,'from':_0x6c5ecb,'to':_0x5b3e1c});_0x17df0d['id']=_0x22256f['id'];const _0x5c42ee=_0x17df0d['authorsIds']['map'](_0x514272=>_0x365bf6['getUser'](_0x514272));_0x22256f['_update']({..._0x17df0d,'authors':_0x5c42ee},!0x0),this['_revisionTracker']['_bufferUpdate'](_0x22256f['id'],_0x17df0d,!0x0);}this['_revisionTracker']['_startingVersion']=_0x5b3e1c,(_0x22256f['toVersion']===_0x22256f['fromVersion']&&!this['_revisionTracker']['_bufferedUpdates']['has'](_0x7ca1bc)&&this['_revisionTracker']['repository']['_revisions']['remove'](_0x7ca1bc),this['_revisionTracker']['_createCurrentRevision'](_0x5b3e1c));}const {revisions:_0x15e47f,requestId:_0x22eed3}=await this['_revisionHistoryService']['reconnect'](_0x4c05aa['connection'],this['_lastRequestId']);_0xa14ab&&_0x15e47f['length']>0x0?_0x13ff94['_handleReconnectionError']():(await this['_fetchMissingUsers'](_0x15e47f),this['_handleRevisionsUpdate'](_0x15e47f,_0x22eed3),this['_revisionTracker']['sendBufferedUpdates']());};return _0x13ff94['_isConnected']?_0xb66b4e():new Promise((_0x39e224,_0xb30e8f)=>{_0x13ff94['once']('change:_isConnected',()=>{_0xb66b4e()['then'](_0x39e224)['catch'](_0xb30e8f);});});}['destroy'](){super['destroy']();}async['_waitForServiceReady'](){this['_revisionHistoryService']['isConnected']||await new Promise(_0x32f179=>{this['listenTo'](this['_revisionHistoryService'],'connected',_0x51f315=>{_0x51f315['off'](),_0x32f179();});});}['_getLatestVersionFromServerOperations'](){const _0x122ed9=this['editor']['plugins']['get'](l)['serverHistory']['getOperations']()['reverse']();for(const _0x5d7067 of _0x122ed9)if('marker'!==_0x5d7067['type']||_0x5d7067['affectsData'])return _0x5d7067['baseVersion']+0x1;}['_getLatestVersion'](){const _0x311522=this['editor']['plugins']['get'](l);return new Promise(_0xf8e9d5=>{_0x311522['_isPendingUpdate']?_0x311522['once']('change:_isPendingUpdate',()=>{_0xf8e9d5(this['_getLatestVersionFromServerOperations']());}):_0xf8e9d5(this['_getLatestVersionFromServerOperations']());});}['_handleRevisionsUpdate'](_0x2efe4b,_0x1e73fc){const _0x45c77d=this['_revisionTracker']['repository'];this['_lastRequestId']=_0x1e73fc;for(const _0x2833ad of _0x2efe4b){const _0x4bd626=_0x45c77d['getRevision'](_0x2833ad['id']);if(_0x4bd626){if((_0x2833ad['fromVersion']||_0x2833ad['toVersion'])&&(_0x2833ad['diffData']=null),_0x4bd626===this['_revisionTracker']['currentRevision']){const _0x55d1f0=Math['max'](_0x4bd626['toVersion'],_0x2833ad['toVersion']),_0x55ebc7=Math['max'](_0x4bd626['fromVersion'],_0x2833ad['fromVersion']);let _0x11c590;_0x4bd626['toVersion']===_0x2833ad['toVersion']&&_0x4bd626['fromVersion']===_0x2833ad['fromVersion']?(_0x11c590=!0x0,this['_preventResendingRevisionData'](_0x2833ad)):_0x2833ad['toVersion']===_0x55d1f0&&_0x2833ad['fromVersion']===_0x55ebc7?_0x11c590=!0x1:(_0x4bd626['toVersion']===_0x55d1f0&&_0x4bd626['fromVersion']===_0x55ebc7||this['_fixRevision']({'revision':_0x4bd626,'from':_0x55ebc7,'to':_0x55d1f0}),_0x11c590=!0x0),_0x11c590&&(delete _0x2833ad['fromVersion'],delete _0x2833ad['toVersion'],delete _0x2833ad['diffData'],delete _0x2833ad['createdAt'],delete _0x2833ad['authorsIds']);}this['_revisionTracker']['setRevisionData'](_0x2833ad),this['_preventResendingRevisionData'](_0x2833ad);}else this['_revisionTracker']['addRevisionData'](_0x2833ad);}const _0x24eeaf=_0x45c77d['getRevisions']();_0x24eeaf['reverse']();for(let _0x4f3e24=0x0;_0x4f3e24<_0x24eeaf['length']-0x1;_0x4f3e24++){const _0x35cfa4=_0x24eeaf[_0x4f3e24],_0x1b0615=_0x24eeaf[_0x4f3e24+0x1];if(_0x35cfa4['fromVersion']<_0x1b0615['toVersion']){const _0x425aeb=_0x1b0615['toVersion'],_0x4e6bab=Math['max'](_0x425aeb,_0x35cfa4['toVersion']);this['_fixRevision']({'revision':_0x35cfa4,'from':_0x425aeb,'to':_0x4e6bab});}}}['_fixRevision']({revision:_0x4a0978,from:_0x5e8aa7,to:_0x3e6a1f}={}){const _0x5de3cd=this['editor']['plugins']['get'](_0x3f765e),_0x4868b5=this['_revisionTracker']['buildRevisionData']({'revision':_0x4a0978,'from':_0x5e8aa7,'to':_0x3e6a1f});_0x4868b5['authors']=_0x4868b5['authorsIds']['map'](_0x6bb438=>_0x5de3cd['getUser'](_0x6bb438)),_0x4a0978['_update'](_0x4868b5);}['_preventResendingRevisionData'](_0xf9b795){const _0x570bf4={};_0x570bf4['id']=_0xf9b795['id'];for(const _0x31e5e9 of Object['keys'](_0xf9b795))'id'!==_0x31e5e9&&(_0x570bf4[_0x31e5e9]=void 0x0);this['_revisionTracker']['_bufferUpdate'](_0x570bf4['id'],_0x570bf4,!0x0);}async['_fetchMissingUsers'](_0x1be9e4){const _0x12cf96=this['editor']['plugins']['get'](_0x3f765e),{connection:_0xe4ce23}=this['editor']['plugins']['get'](c),_0x9cae41=new Set();for(const _0x251c33 of _0x1be9e4){for(const _0x19a1c5 of _0x251c33['authorsIds'])_0x4dbfbe(_0x19a1c5);_0x251c33['creatorId']&&_0x4dbfbe(_0x251c33['creatorId']);}if(0x0===_0x9cae41['size'])return;const _0x48344b=await mt['getMany'](_0xe4ce23,Array['from'](_0x9cae41));for(const _0x2da6ce of _0x48344b)_0x12cf96['getUser'](_0x2da6ce['id'])||_0x12cf96['addUser'](_0x2da6ce);function _0x4dbfbe(_0x5b2af8){_0x12cf96['getUser'](_0x5b2af8)||_0x9cae41['add'](_0x5b2af8);}}}function st(_0x1d792c){return _0x1d792c['message']['startsWith']('cloud-services-internal-error:\x20Revision\x20History\x20Service\x20is\x20not\x20connected.')||_0x1d792c['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x1d792c['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}class g extends _0x3111a4{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 _0x105e30{constructor(_0x5685fc){super(_0x5685fc);const _0x276b61=this['bindTemplate'];this['set']('usersCount',0x0),this['set']('isHidden',!0x0),this['setTemplate']({'tag':'div','attributes':{'class':['ck','ck-presence-list__counter',_0x276b61['if']('isHidden','ck-presence-list__counter--hidden')]},'children':[{'text':_0x276b61['to']('usersCount',_0x225be8=>B(_0x5685fc,'CONNECTED_USERS',_0x225be8))}]});}}class es extends _0x105e30{['items'];['keystrokes'];constructor(_0x5de47a){super(_0x5de47a);const _0x874379=this['bindTemplate'];this['items']=this['createCollection'](),this['keystrokes']=new _0x5ef21e(),this['set']({'hasPopup':!0x1,'isExpanded':!0x1}),this['setTemplate']({'tag':'div','attributes':{'aria-haspopup':_0x874379['if']('hasPopup'),'aria-expanded':_0x874379['to']('isExpanded',_0x364034=>this['hasPopup']&&String(_0x364034)),'aria-label':_0x874379['to']('hasPopup',_0x542512=>B(_0x5de47a,_0x542512?'Collapsed\x20connected\x20users\x20list\x20(press\x20ENTER\x20to\x20open\x20it)':'Connected\x20users\x20list')),'role':'list','tabindex':_0x874379['to']('hasPopup',_0x59b041=>!!_0x59b041&&0x0),'class':['ck','ck-presence-list__list']},'children':this['items'],'on':{'click':_0x874379['to'](()=>this['fire']('execute'))}}),this['on']('change:hasPopup',(_0x752ddc,_0x19f111,_0xa1e265)=>{this['element']&&(_0xa1e265?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 _0x105e30{['counterView'];['inlineListView'];constructor(_0x5ba697){super(_0x5ba697);const _0x2e8d34=this['bindTemplate'];this['set']('isCollapsed',!0x0),this['counterView']=new ts(this['locale']),this['inlineListView']=new es(_0x5ba697),this['inlineListView']['bind']('hasPopup')['to'](this,'isCollapsed'),this['listenTo'](this['inlineListView']['items'],'change',()=>{for(const _0x5b11c2 of this['inlineListView']['items'])_0x5b11c2['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',_0x2e8d34['if']('isCollapsed','ck-presence-list--collapsed')]},'children':[this['counterView'],this['inlineListView']]});}}class j extends _0x105e30{['listWrapperView'];constructor(_0x1a4802,_0x586adc){super(_0x1a4802),this['listWrapperView']=new vt(_0x1a4802,_0x586adc),this['setTemplate']({'tag':'div','attributes':{'tabindex':-0x1,'role':'application','class':['ck','ck-presence-list__dropdown-list'],'aria-label':B(_0x1a4802,'Connected\x20users\x20list\x20dropdown\x20menu')},'children':[this['listWrapperView']]});}}class vt extends _0x1ba598{constructor(_0x2ac5ed,_0x94d8f3){super(_0x2ac5ed);const _0x58afa1=this['bindTemplate'];this['set']('_isScrollable',!0x1),this['setTemplate']({'tag':_0x94d8f3?'div':'ul','attributes':{'class':['ck','ck-reset','ck-list','ck-presence-list__dropdown-list-wrapper',_0x58afa1['if']('_isScrollable','ck-presence-list__dropdown-list-wrapper_scrollable')],'role':_0x58afa1['to']('role'),'aria-label':_0x58afa1['to']('ariaLabel'),'aria-labelledby':_0x58afa1['to']('ariaLabelledBy')},'children':this['items']}),this['listenTo'](_0x3d711e['window'],'resize',()=>this['checkIfScrollable']()),this['items']['on']('change',()=>this['checkIfScrollable']());}['render'](){super['render'](),this['checkIfScrollable']();}['checkIfScrollable'](){const _0x50af0c=this['element'];_0x50af0c&&(this['_isScrollable']=Math['max'](_0x50af0c['scrollHeight'],_0x50af0c['clientHeight'])>0.8*window['innerHeight']);}}class k extends at{['userView'];constructor(_0x5a4eda,_0x22db0f,_0x2bf3c9){super(_0x5a4eda);const _0x41c62c=this['bindTemplate'];this['userView']=new lt(_0x5a4eda,_0x22db0f);const _0x520b39={'tag':'li','attributes':{'class':['ck','ck-presence-list__dropdown-list-item'],'tabindex':-0x1,'role':'presentation','aria-label':_0x22db0f['name']},'children':[this['userView'],{'tag':'span','attributes':{'class':['ck','ck-user__full-name']},'children':[{'text':_0x22db0f['name']}]},{'tag':'span','attributes':{'class':['ck','ck-presence-list__marker',_0x22db0f['color']['getBackgroundColorClass']()],'aria-hidden':'true'}}]};_0x2bf3c9&&(_0x520b39['tag']='button',_0x520b39['on']={'click':_0x41c62c['to'](()=>this['fire']('execute'))}),this['setTemplate'](_0x520b39);}['focus'](){this['element']['focus']();}}class y extends _0x105e30{['userView'];['markerView'];constructor(_0x14f38e,_0x5f511e,_0x1456e6){super(_0x14f38e);const _0x4a91d6=this['bindTemplate'];this['set']('isFocusable',!0x1),this['set']('hasTooltip',!0x0),this['set']('tooltipPosition',''),this['userView']=new lt(_0x14f38e,_0x5f511e),this['markerView']=new dt(_0x14f38e,_0x5f511e);const _0x43a87e=new pt(_0x14f38e);_0x43a87e['template']['tag']='span',_0x43a87e['text']=_0x5f511e['name'];const _0x6ef2e9={'tag':'div','attributes':{'class':['ck','ck-presence-list__list-item'],'role':'listitem','tabindex':_0x4a91d6['to']('isFocusable',_0x196f88=>!!_0x196f88&&0x0),'aria-labelledby':_0x43a87e['id'],'data-cke-tooltip-text':this['userView']['name'],'data-cke-tooltip-position':_0x4a91d6['to']('tooltipPosition'),'data-cke-tooltip-disabled':_0x4a91d6['to']('hasTooltip',_0x5b7266=>!_0x5b7266),'data-cke-tooltip-class':'ck-presence-list__list-item__tooltip'},'children':[this['userView'],this['markerView'],_0x43a87e]};_0x1456e6&&(_0x6ef2e9['tag']='button',_0x6ef2e9['on']={'click':_0x4a91d6['to'](()=>this['fire']('execute'))}),this['setTemplate'](_0x6ef2e9);}}class dt extends _0x105e30{constructor(_0x28d60a,_0x35a994){super(_0x28d60a),this['setTemplate']({'tag':'span','attributes':{'class':['ck','ck-presence-list__marker',_0x35a994['color']['getBackgroundColorClass']()],'aria-hidden':'true'}});}}const A={'collapseAt':0x6,'displayMe':!0x0};class r extends _0x32de9b{['currentDisplayedUsers'];['balloonPanelView'];['view'];['presenceDropdownView'];['_bodyCollection']=null;constructor(_0x369a79){super(_0x369a79),this['context']['config']['define']('presenceList',A);const _0x2f1ee7=_0x369a79['config']['get']('presenceList.collapseAt');if('number'!=typeof _0x2f1ee7)throw new _0x5f7cec('presencelist-collapseat-invalid-format',this);if(_0x2f1ee7<0x1)throw new _0x5f7cec('presencelist-collapseat-invalid-format',this);this['_allConnectedUsers']=this['context']['plugins']['get'](i)['allConnectedUsers'],this['set']('usersCount',0x0),this['currentDisplayedUsers']=new _0x1e8fd0(),this['balloonPanelView']=new _0x198394(),this['balloonPanelView']['class']='ck\x20ck-presence-list__balloon',this['view']=this['_createView'](),this['presenceDropdownView']=void 0x0;}static get['requires'](){return[i];}['init'](){for(const _0x3a04cd of this['_allConnectedUsers'])this['_handleUserAdd'](_0x3a04cd);this['listenTo'](this['_allConnectedUsers'],'add',(_0x228c91,_0x4918dd)=>{this['_handleUserAdd'](_0x4918dd);}),this['listenTo'](this['_allConnectedUsers'],'remove',(_0x321026,_0x15b404)=>{this['_handleUserRemove'](_0x15b404);});}['_createView'](){const _0x35b027=this['context'],_0x45af68=new L(this['context']['locale']),_0x4966aa=this['balloonPanelView'];if(!_0x2a93db(_0x35b027['config']['get']('presenceList.container')))throw new _0x5f7cec('presencelist-missing-container',this);return _0x45af68['counterView']['bind']('usersCount')['to'](this),_0x45af68['bind']('isCollapsed')['to'](this,'usersCount',_0x5d4648=>{const {collapseAt:_0x247330,displayMe:_0x17a34b}=_0x35b027['config']['get']('presenceList'),_0x26d089=_0x5d4648>=_0x247330;return _0x45af68['counterView']['isHidden']=!(0x1==_0x5d4648&&_0x17a34b||_0x26d089),_0x26d089||this['hideDropdown'](),_0x26d089;}),_0x45af68['inlineListView']['items']['bindTo'](this['currentDisplayedUsers'])['using'](_0x402bee=>{const _0x4ff7ad=_0x35b027['config']['get']('presenceList'),_0xf8d2bf=new y(_0x35b027['locale'],_0x402bee,!!_0x4ff7ad['onClick']);return _0xf8d2bf['bind']('hasTooltip')['to'](_0x45af68,'isCollapsed',_0x4c1658=>!_0x4c1658),_0xf8d2bf['bind']('isFocusable')['to'](_0x45af68,'isCollapsed',_0x579f45=>!_0x579f45),_0x4ff7ad['onClick']&&this['listenTo'](_0xf8d2bf,'execute',()=>{this['view']['isCollapsed']||_0x4ff7ad['onClick'](_0x402bee,_0xf8d2bf['element']);}),_0xf8d2bf;}),this['listenTo'](_0x45af68['inlineListView'],'execute',()=>{this['presenceDropdownView']?this['hideDropdown']():this['view']['isCollapsed']&&this['showDropdown']();}),_0x45af68['inlineListView']['keystrokes']['set']('Enter',(_0x24c1e0,_0xbd04df)=>{this['view']['isCollapsed']&&(this['showDropdown'](),_0xbd04df());}),_0x45af68['render'](),_0x4966aa['render'](),_0x4d04fe({'emitter':_0x45af68,'activator':()=>_0x4966aa['isVisible'],'contextElements':[_0x4966aa['element'],_0x45af68['inlineListView']['element']],'callback':()=>this['hideDropdown']()}),_0x35b027['config']['get']('presenceList.container')['appendChild'](_0x45af68['element']),this['_bodyCollection']=new _0x1921bb(this['context']['locale']),this['_bodyCollection']['attachToDom'](),this['_bodyCollection']['add'](this['balloonPanelView']),_0x45af68;}['_handleUserAdd'](_0x990b84){if(!this['context']['config']['get']('presenceList.displayMe')&&_0x990b84['isMe'])return;const _0x39bb5e=this['context']['config']['get']('presenceList.collapseAt')-0x1;this['usersCount']++,this['currentDisplayedUsers']['length']==_0x39bb5e&&this['currentDisplayedUsers']['length']>0x1&&this['currentDisplayedUsers']['remove'](0x1);const _0x5ee7f7=_0x990b84['isMe']?0x0:this['currentDisplayedUsers']['length'];this['currentDisplayedUsers']['add'](_0x990b84,_0x5ee7f7);}['_handleUserRemove'](_0x4b61d0){if(this['usersCount']--,this['currentDisplayedUsers']['get'](_0x4b61d0['id'])&&(this['currentDisplayedUsers']['remove'](_0x4b61d0['id']),this['currentDisplayedUsers']['length']<this['usersCount'])){for(const _0x41896f of Array['from'](this['_allConnectedUsers'])['reverse']())if(!this['currentDisplayedUsers']['get'](_0x41896f['id']))return void this['currentDisplayedUsers']['add'](_0x41896f,Math['min'](this['currentDisplayedUsers']['length'],0x1));}}['showDropdown'](){if(this['presenceDropdownView'])return;const _0x4efbd1=this['context']['config']['get']('presenceList');this['presenceDropdownView']=new j(this['context']['locale'],!!_0x4efbd1['onClick']),this['view']['inlineListView']['isExpanded']=!0x0;const {listWrapperView:_0x3cc8a1}=this['presenceDropdownView'];_0x3cc8a1['items']['bindTo'](this['_allConnectedUsers'])['using'](_0x51e01a=>{if(!_0x4efbd1['displayMe']&&_0x51e01a['isMe'])return null;const _0x15fb9a=new k(this['context']['locale'],_0x51e01a,!!_0x4efbd1['onClick']);return _0x4efbd1['onClick']&&this['listenTo'](_0x15fb9a,'execute',()=>{_0x4efbd1['onClick'](_0x51e01a,_0x15fb9a['element']);}),_0x15fb9a;}),this['balloonPanelView']['content']['add'](this['presenceDropdownView']),this['balloonPanelView']['pin']({'target':this['view']['inlineListView']['element']}),_0x3cc8a1['focus'](),_0x3cc8a1['checkIfScrollable']();const _0x300d42=(_0x2f946c,_0x116829)=>{this['hideDropdown'](),this['view']['inlineListView']['focus'](),_0x116829();};_0x3cc8a1['keystrokes']['set']('Esc',_0x300d42),_0x3cc8a1['keystrokes']['set']('Shift+Tab',_0x300d42),_0x3cc8a1['keystrokes']['set']('Tab',(_0xa13d52,_0x9762ec)=>{!function(_0x36e9f4){const _0x44f90a=['a','button','input','select','textarea','[tabindex]','[contenteditable]']['map'](_0x34736c=>_0x34736c+':not([disabled]):not([tabindex=\x22-1\x22])')['join'](','),_0x4b78df=[...document['body']['querySelectorAll'](_0x44f90a)]['filter'](_0x178f0a=>_0x178f0a===document['activeElement']||_0x178f0a['offsetWidth']+_0x178f0a['offsetHeight']>0x0)['sort']((_0x88fd68,_0x343a52)=>(_0x88fd68['tabIndex']||0x0)-(_0x343a52['tabIndex']||0x0)),_0x551e30=_0x4b78df['indexOf'](_0x36e9f4),_0x9364c8=_0x4b78df[(_0x551e30+0x1)%_0x4b78df['length']];_0x9364c8&&_0x9364c8['focus']();}(this['view']['element']),this['hideDropdown'](),_0x9762ec();}),_0x3cc8a1['focusTracker']['add'](this['view']['element']),_0x3cc8a1['focusTracker']['on']('change:isFocused',(_0x14c972,_0xa6e51,_0x10db0d)=>{_0x10db0d||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 _0x32de9b{static get['requires'](){return[i,r];}static get['pluginName'](){return'PresenceList';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}export{a as CloudServicesCommentsAdapter,u as CloudServicesRevisionHistoryAdapter,f as CloudServicesTrackChangesAdapter,s as PresenceList,l as RealTimeCollaborationClient,m as RealTimeCollaborativeComments,n as RealTimeCollaborativeEditing,g as RealTimeCollaborativeRevisionHistory,p as RealTimeCollaborativeTrackChanges,i as Sessions};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ckeditor/ckeditor5-real-time-collaboration",
3
- "version": "44.3.0-alpha.3",
3
+ "version": "44.3.0-alpha.4",
4
4
  "description": "A set of CKEditor 5 features enabling real-time collaboration within the editor using CKEditor Cloud Services.",
5
5
  "license": "SEE LICENSE IN LICENSE.md",
6
6
  "author": "CKSource (http://cksource.com/)",
@@ -42,19 +42,19 @@
42
42
  ],
43
43
  "dependencies": {
44
44
  "@ckeditor/ckeditor-cloud-services-collaboration": "52.6.11",
45
- "@ckeditor/ckeditor5-cloud-services": "44.3.0-alpha.3",
46
- "@ckeditor/ckeditor5-comments": "44.3.0-alpha.3",
47
- "@ckeditor/ckeditor5-core": "44.3.0-alpha.3",
48
- "@ckeditor/ckeditor5-editor-multi-root": "44.3.0-alpha.3",
49
- "@ckeditor/ckeditor5-engine": "44.3.0-alpha.3",
50
- "@ckeditor/ckeditor5-operations-compressor": "44.3.0-alpha.3",
51
- "@ckeditor/ckeditor5-revision-history": "44.3.0-alpha.3",
52
- "@ckeditor/ckeditor5-theme-lark": "44.3.0-alpha.3",
53
- "@ckeditor/ckeditor5-track-changes": "44.3.0-alpha.3",
54
- "@ckeditor/ckeditor5-ui": "44.3.0-alpha.3",
55
- "@ckeditor/ckeditor5-utils": "44.3.0-alpha.3",
56
- "ckeditor5": "44.3.0-alpha.3",
57
- "ckeditor5-collaboration": "44.3.0-alpha.3",
45
+ "@ckeditor/ckeditor5-cloud-services": "44.3.0-alpha.4",
46
+ "@ckeditor/ckeditor5-comments": "44.3.0-alpha.4",
47
+ "@ckeditor/ckeditor5-core": "44.3.0-alpha.4",
48
+ "@ckeditor/ckeditor5-editor-multi-root": "44.3.0-alpha.4",
49
+ "@ckeditor/ckeditor5-engine": "44.3.0-alpha.4",
50
+ "@ckeditor/ckeditor5-operations-compressor": "44.3.0-alpha.4",
51
+ "@ckeditor/ckeditor5-revision-history": "44.3.0-alpha.4",
52
+ "@ckeditor/ckeditor5-theme-lark": "44.3.0-alpha.4",
53
+ "@ckeditor/ckeditor5-track-changes": "44.3.0-alpha.4",
54
+ "@ckeditor/ckeditor5-ui": "44.3.0-alpha.4",
55
+ "@ckeditor/ckeditor5-utils": "44.3.0-alpha.4",
56
+ "ckeditor5": "44.3.0-alpha.4",
57
+ "ckeditor5-collaboration": "44.3.0-alpha.4",
58
58
  "lodash-es": "4.17.21"
59
59
  },
60
60
  "types": "src/index.d.ts",