@ckeditor/ckeditor5-real-time-collaboration 48.0.0-alpha.6 → 48.0.0-alpha.8
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 +6 -6
- package/dist/translations/af.js +1 -1
- package/dist/translations/af.umd.js +1 -1
- package/dist/translations/ar.js +1 -1
- package/dist/translations/ar.umd.js +1 -1
- package/dist/translations/ast.js +1 -1
- package/dist/translations/ast.umd.js +1 -1
- package/dist/translations/az.js +1 -1
- package/dist/translations/az.umd.js +1 -1
- package/dist/translations/be.js +1 -1
- package/dist/translations/be.umd.js +1 -1
- package/dist/translations/bg.js +1 -1
- package/dist/translations/bg.umd.js +1 -1
- package/dist/translations/bn.js +1 -1
- package/dist/translations/bn.umd.js +1 -1
- package/dist/translations/bs.js +1 -1
- package/dist/translations/bs.umd.js +1 -1
- package/dist/translations/ca.js +1 -1
- package/dist/translations/ca.umd.js +1 -1
- package/dist/translations/cs.js +1 -1
- package/dist/translations/cs.umd.js +1 -1
- package/dist/translations/da.js +1 -1
- package/dist/translations/da.umd.js +1 -1
- package/dist/translations/de-ch.js +1 -1
- package/dist/translations/de-ch.umd.js +1 -1
- package/dist/translations/de.js +1 -1
- package/dist/translations/de.umd.js +1 -1
- package/dist/translations/el.js +1 -1
- package/dist/translations/el.umd.js +1 -1
- package/dist/translations/en-au.js +1 -1
- package/dist/translations/en-au.umd.js +1 -1
- package/dist/translations/en-gb.js +1 -1
- package/dist/translations/en-gb.umd.js +1 -1
- package/dist/translations/en.js +1 -1
- package/dist/translations/en.umd.js +1 -1
- package/dist/translations/eo.js +1 -1
- package/dist/translations/eo.umd.js +1 -1
- package/dist/translations/es-co.js +1 -1
- package/dist/translations/es-co.umd.js +1 -1
- package/dist/translations/es.js +1 -1
- package/dist/translations/es.umd.js +1 -1
- package/dist/translations/et.js +1 -1
- package/dist/translations/et.umd.js +1 -1
- package/dist/translations/eu.js +1 -1
- package/dist/translations/eu.umd.js +1 -1
- package/dist/translations/fa.js +1 -1
- package/dist/translations/fa.umd.js +1 -1
- package/dist/translations/fi.js +1 -1
- package/dist/translations/fi.umd.js +1 -1
- package/dist/translations/fr.js +1 -1
- package/dist/translations/fr.umd.js +1 -1
- package/dist/translations/gl.js +1 -1
- package/dist/translations/gl.umd.js +1 -1
- package/dist/translations/gu.js +1 -1
- package/dist/translations/gu.umd.js +1 -1
- package/dist/translations/he.js +1 -1
- package/dist/translations/he.umd.js +1 -1
- package/dist/translations/hi.js +1 -1
- package/dist/translations/hi.umd.js +1 -1
- package/dist/translations/hr.js +1 -1
- package/dist/translations/hr.umd.js +1 -1
- package/dist/translations/hu.js +1 -1
- package/dist/translations/hu.umd.js +1 -1
- package/dist/translations/hy.js +1 -1
- package/dist/translations/hy.umd.js +1 -1
- package/dist/translations/id.js +1 -1
- package/dist/translations/id.umd.js +1 -1
- package/dist/translations/it.js +1 -1
- package/dist/translations/it.umd.js +1 -1
- package/dist/translations/ja.js +1 -1
- package/dist/translations/ja.umd.js +1 -1
- package/dist/translations/jv.js +1 -1
- package/dist/translations/jv.umd.js +1 -1
- package/dist/translations/kk.js +1 -1
- package/dist/translations/kk.umd.js +1 -1
- package/dist/translations/km.js +1 -1
- package/dist/translations/km.umd.js +1 -1
- package/dist/translations/kn.js +1 -1
- package/dist/translations/kn.umd.js +1 -1
- package/dist/translations/ko.js +1 -1
- package/dist/translations/ko.umd.js +1 -1
- package/dist/translations/ku.js +1 -1
- package/dist/translations/ku.umd.js +1 -1
- package/dist/translations/lt.js +1 -1
- package/dist/translations/lt.umd.js +1 -1
- package/dist/translations/lv.js +1 -1
- package/dist/translations/lv.umd.js +1 -1
- package/dist/translations/ms.js +1 -1
- package/dist/translations/ms.umd.js +1 -1
- package/dist/translations/nb.js +1 -1
- package/dist/translations/nb.umd.js +1 -1
- package/dist/translations/ne.js +1 -1
- package/dist/translations/ne.umd.js +1 -1
- package/dist/translations/nl.js +1 -1
- package/dist/translations/nl.umd.js +1 -1
- package/dist/translations/no.js +1 -1
- package/dist/translations/no.umd.js +1 -1
- package/dist/translations/oc.js +1 -1
- package/dist/translations/oc.umd.js +1 -1
- package/dist/translations/pl.js +1 -1
- package/dist/translations/pl.umd.js +1 -1
- package/dist/translations/pt-br.js +1 -1
- package/dist/translations/pt-br.umd.js +1 -1
- package/dist/translations/pt.js +1 -1
- package/dist/translations/pt.umd.js +1 -1
- package/dist/translations/ro.js +1 -1
- package/dist/translations/ro.umd.js +1 -1
- package/dist/translations/ru.js +1 -1
- package/dist/translations/ru.umd.js +1 -1
- package/dist/translations/si.js +1 -1
- package/dist/translations/si.umd.js +1 -1
- package/dist/translations/sk.js +1 -1
- package/dist/translations/sk.umd.js +1 -1
- package/dist/translations/sl.js +1 -1
- package/dist/translations/sl.umd.js +1 -1
- package/dist/translations/sq.js +1 -1
- package/dist/translations/sq.umd.js +1 -1
- package/dist/translations/sr-latn.js +1 -1
- package/dist/translations/sr-latn.umd.js +1 -1
- package/dist/translations/sr.js +1 -1
- package/dist/translations/sr.umd.js +1 -1
- package/dist/translations/sv.js +1 -1
- package/dist/translations/sv.umd.js +1 -1
- package/dist/translations/th.js +1 -1
- package/dist/translations/th.umd.js +1 -1
- package/dist/translations/ti.js +1 -1
- package/dist/translations/ti.umd.js +1 -1
- package/dist/translations/tk.js +1 -1
- package/dist/translations/tk.umd.js +1 -1
- package/dist/translations/tr.js +1 -1
- package/dist/translations/tr.umd.js +1 -1
- package/dist/translations/tt.js +1 -1
- package/dist/translations/tt.umd.js +1 -1
- package/dist/translations/ug.js +1 -1
- package/dist/translations/ug.umd.js +1 -1
- package/dist/translations/uk.js +1 -1
- package/dist/translations/uk.umd.js +1 -1
- package/dist/translations/ur.js +1 -1
- package/dist/translations/ur.umd.js +1 -1
- package/dist/translations/uz.js +1 -1
- package/dist/translations/uz.umd.js +1 -1
- package/dist/translations/vi.js +1 -1
- package/dist/translations/vi.umd.js +1 -1
- package/dist/translations/zh-cn.js +1 -1
- package/dist/translations/zh-cn.umd.js +1 -1
- package/dist/translations/zh.js +1 -1
- package/dist/translations/zh.umd.js +1 -1
- package/package.json +12 -12
package/dist/index.js
CHANGED
|
@@ -20,9 +20,9 @@
|
|
|
20
20
|
*
|
|
21
21
|
*
|
|
22
22
|
*/
|
|
23
|
-
import{ContextPlugin as
|
|
24
|
-
((()=>_0x3f1a19)());static ['initialReconnectionInterval']=0x3e8;['connection'];['_reconnectionStack'];['_shouldPluginsReconnect'];['_domEmitter'];static get['requires'](){return[_0x182132,_0x14b5f4];}static get['pluginName'](){return'WebSocketGateway';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x4e8679){super(_0x4e8679),this['set']('state',_0x169e89['CONNECTED']),this['set']('_isBrowserOffline',!0x1),this['_reconnectionStack']=new Set(),this['_shouldPluginsReconnect']=!0x1,this['_domEmitter']=new(_0x5b8e4e())();}['init'](){const _0x222d68=this['context'],_0x3f4e5d=_0x222d68['plugins']['get'](_0x182132),_0x44af5f=_0x222d68['plugins']['get'](_0x14b5f4);if(!_0x3f4e5d['token'])throw new _0x849088('websocketgateway-missing-token',this);if(!_0x3f4e5d['webSocketUrl'])throw new _0x849088('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),z['WebSocketGateway']['connect'](_0x3f4e5d['token'],_0x3f4e5d['webSocketUrl'],{'timeout':0x3e8*this['context']['config']['get']('cloudServices.connectionTimeout'),'requestTimeout':0x3e8*this['context']['config']['get']('cloudServices.requestTimeout')})['then'](_0x7975de=>{if(this['connection']=_0x7975de,this['bind']('state')['to'](_0x7975de,'state',this,'_isBrowserOffline',(_0x2a6539,_0x1dd6ba)=>('connected'!==_0x2a6539&&(this['_shouldPluginsReconnect']=!0x0),_0x1dd6ba||_0x2a6539!==_0x169e89['CONNECTED']?_0x169e89['DISCONNECTED']:this['state']==_0x169e89['DISCONNECTED']&&this['_shouldPluginsReconnect']?(this['_shouldPluginsReconnect']=!0x1,this['_reconnect'](),_0x169e89['CONNECTING']):_0x169e89['CONNECTED'])),this['connection']['on']('error',(_0x56aada,_0x3c8798)=>{if('limitExceeded'!==_0x3c8798['code'])throw console['error'](_0x3c8798),new _0x849088('cloudservices-init',null,{'originalError':_0x3c8798});_0x44af5f['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'});}),!_0x7975de['me'])return new Promise(_0xb97afe=>_0x7975de['on']('change:me',_0xb97afe));})['catch'](_0xbc4d6c=>{throw console['error'](_0xbc4d6c),new _0x849088('cloudservices-init',null,{'originalError':_0xbc4d6c});});}['addToReconnectionStack'](_0x458889){if('function'!=typeof _0x458889['reconnect'])throw new _0x849088('websocketgateway-invalid-plugin-interface',this);if(this['isInReconnectionStack'](_0x458889))throw new _0x849088('websocketgateway-plugin-already-registered',this,{'name':_0x458889['constructor']['pluginName']});this['_reconnectionStack']['add'](_0x458889);}['removeFromReconnectionStack'](_0xcbab5e){this['_reconnectionStack']['delete'](_0xcbab5e);}['isInReconnectionStack'](_0x353241){return this['_reconnectionStack']['has'](_0x353241);}['_reconnect'](){return this['connection']['reconnect']()['then'](()=>Promise['all'](Array['from'](this['_reconnectionStack'],_0x298c26=>_0x298c26['reconnect']())))['then'](()=>this['state']=_0x169e89['CONNECTED'])['catch'](_0x327b1e=>{throw console['error'](_0x327b1e),new _0x849088('cloudservices-reconnection-error',this['context']);});}['disconnect'](){this['connection']&&this['connection']['disconnect'](),this['state']=_0x169e89['DISCONNECTED'],this['_domEmitter']['stopListening']();}['destroy'](){this['disconnect'](),super['destroy']();}}class Y extends _0x39cb58{['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[z,_0x48e39d];}constructor(_0x131a36){super(_0x131a36),this['channelSessions']=new Map(),this['channelConnectedUsers']=new Map(),this['allConnectedUsers']=new _0x432b74(),this['_registeredSessions']=new Map(),this['_uniqueUsersCount']=0x0,this['_users']=this['context']['plugins']['get'](_0x48e39d);}['init'](){const _0x110a06=this['context']['plugins']['get'](z);this['listenTo'](_0x110a06,'change:state',(_0x2977b0,_0x28e100,_0x4e6c31)=>{if('connected'!==_0x4e6c31)this['channelSessions']['forEach'](_0xb0bb3b=>_0xb0bb3b['clear']()),this['channelConnectedUsers']['forEach'](_0x102c61=>_0x102c61['clear']()),this['allConnectedUsers']['clear']();else{for(const [_0x2a7e22,_0x26fc2e]of this['_registeredSessions'])for(const _0x4b9141 of _0x26fc2e)this['_handleSessionAdd'](_0x2a7e22,_0x4b9141);}}),this['_createUser'](_0x110a06['connection']['me'],!0x0);}['register'](_0x75c3df,_0x40c73b){if(this['_registeredSessions']['has'](_0x75c3df))throw new _0x849088('sessions-register-already-registered',null,{'channelId':_0x75c3df});this['_registeredSessions']['set'](_0x75c3df,_0x40c73b),this['channelSessions']['set'](_0x75c3df,new _0x432b74()),this['channelConnectedUsers']['set'](_0x75c3df,new _0x432b74()),this['listenTo'](_0x40c73b,'add',(_0x3091ce,_0x2f528e)=>this['_handleSessionAdd'](_0x75c3df,_0x2f528e)),this['listenTo'](_0x40c73b,'remove',(_0x590868,_0x297bfe)=>this['_handleSessionRemove'](_0x75c3df,_0x297bfe));for(const _0x10bb3d of _0x40c73b)this['_handleSessionAdd'](_0x75c3df,_0x10bb3d);}['unregister'](_0x1a8dc7){if(!this['_registeredSessions']['has'](_0x1a8dc7))throw new _0x849088('sessions-unregister-not-exist',null,{'channelId':_0x1a8dc7});const _0x268192=this['_registeredSessions']['get'](_0x1a8dc7);this['stopListening'](_0x268192);for(const _0x3f5fe7 of _0x268192)'connected'===this['context']['plugins']['get'](z)['state']&&this['_handleSessionRemove'](_0x1a8dc7,_0x3f5fe7);this['_registeredSessions']['delete'](_0x1a8dc7),this['channelSessions']['delete'](_0x1a8dc7),this['channelConnectedUsers']['delete'](_0x1a8dc7);}get['mySessionId'](){return this['context']['plugins']['get'](z)['connection']['sessionId'];}['getUserBySessionId'](_0x28b5c5){for(const _0x2ad0f5 of this['channelSessions']['values']())for(const _0xb60976 of _0x2ad0f5)if(_0xb60976['id']===_0x28b5c5)return _0xb60976['user'];}['getUserSessions'](_0x5ca506,_0x5e40da){const _0x17a79b=_0x5e40da?[this['channelSessions']['get'](_0x5e40da)]:this['channelSessions']['values'](),_0x41480d=new Set();for(const _0x15a88d of _0x17a79b)for(const _0x20b490 of _0x15a88d)_0x20b490['user']['id']===_0x5ca506['id']&&_0x41480d['add'](_0x20b490['id']);return _0x41480d;}['getUserRole'](_0x533aae){for(const _0x1326b0 of this['channelSessions']['values']())for(const _0x1f50a4 of _0x1326b0)if(_0x1f50a4['user']===_0x533aae)return _0x1f50a4['role'];}['_handleSessionAdd'](_0x1f6e3a,_0x3ddd9d){if('connected'!==this['context']['plugins']['get'](z)['state'])return;const _0x120416=_0x3ddd9d['user'],_0xa02880=this['_users']['getUser'](_0x120416['id'])||this['_createUser'](_0x120416),_0x4fc5ba=Object['assign']({},_0x3ddd9d,{'user':_0xa02880});if(this['channelSessions']['get'](_0x1f6e3a)['add'](_0x4fc5ba),!_0x120416['hiddenInPresenceList']){const _0x2d6d2c=this['channelConnectedUsers']['get'](_0x1f6e3a);_0x2d6d2c['has'](_0xa02880['id'])||_0x2d6d2c['add'](_0xa02880),this['allConnectedUsers']['has'](_0xa02880['id'])||_0x120416['hiddenInPresenceList']||this['allConnectedUsers']['add'](_0xa02880,_0xa02880['isMe']?0x0:void 0x0);}this['fire']('sessionAdd:'+_0x1f6e3a,{'channelId':_0x1f6e3a,'session':_0x4fc5ba});}['_handleSessionRemove'](_0xc60043,_0x1990bc){if('connected'!==this['context']['plugins']['get'](z)['state'])return;const _0x10a5d4=this['channelConnectedUsers']['get'](_0xc60043),_0x4f658e=_0x1990bc['user'];_0x4f658e['id']&&(this['channelSessions']['get'](_0xc60043)['remove'](_0x1990bc['id']),_0x10a5d4['has'](_0x4f658e['id'])&&!this['getUserSessions'](_0x4f658e,_0xc60043)['size']&&_0x10a5d4['remove'](_0x4f658e['id']),this['allConnectedUsers']['get'](_0x4f658e['id'])&&!this['getUserSessions'](_0x4f658e)['size']&&this['allConnectedUsers']['remove'](_0x4f658e['id']));}['_createUser'](_0x37ac43,_0x30c26e){const _0x4b6257=this['_users']['addUser'](_0x37ac43);return _0x30c26e&&this['_users']['defineMe'](_0x37ac43['id']),_0x4b6257['orderNumber']=this['_uniqueUsersCount']++,_0x4b6257;}}class K extends _0x1d5197{['_domEmitter']=new(_0x5b8e4e())();static get['requires'](){return[Y];}static get['pluginName'](){return'UserMarkers';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['init'](){const _0xe05e18=this['editor'],_0x397da3=_0xe05e18['plugins']['get'](Y);_0xe05e18['conversion']['for']('editingDowncast')['markerToElement']({'model':'user:position','view':(_0x3d127b,{writer:_0x540475})=>function(_0xc5db87,_0xb73e20,_0x2b7295,_0x18b10d){const _0x56ccbb=_0xc5db87['markerName']['split'](':')[0x2],_0x3f79c6=_0x2b7295['getUserBySessionId'](_0x56ccbb);if(!_0x3f79c6||_0x56ccbb===_0x2b7295['mySessionId'])return;if(!_0x18b10d['model']['schema']['checkChild'](_0xc5db87['markerRange']['start'],'$text'))return;const _0x4aec55={'class':'ck-user__marker\x20'+_0x3f79c6['color']['getMarkerClass'](),'style':Q(_0x3f79c6),'data-name':_0x3f79c6['name'],'data-session-id':_0x56ccbb},_0x648242=_0x18b10d['model']['markers']['get'](_0xc5db87['markerName']),_0x14e0a5=_0x648242['getStart'](),_0x53c9e9=_0x14e0a5['nodeAfter'],_0xff2017=_0x18b10d['model']['schema'];if(_0x53c9e9&&_0xff2017['isObject'](_0x53c9e9)&&_0xff2017['isInline'](_0x53c9e9)&&!_0x18b10d['model']['markers']['get']('user:range:'+_0x56ccbb)['getRange']()['isCollapsed'])return;const _0x5620cf=_0x14e0a5['parent'];return _0x18b10d['model']['schema']['isLimit'](_0x5620cf)&&!_0x18b10d['model']['hasContent'](_0x5620cf)&&(_0x4aec55['contenteditable']=!0x1),function(_0x448131,_0x42079e,_0x404240){const _0x4ed0dd=_0x448131['createUIElement']('span',_0x42079e);return _0x448131['setCustomProperty']('userPositionMarker',!0x0,_0x4ed0dd),_0x4ed0dd['render']=function(_0x2489f1){const _0xc82db3=this['toDomElement'](_0x2489f1),_0x52471a=document['createElement']('span');return _0x52471a['classList']['add']('ck-user__marker-tooltip'),_0x52471a['setAttribute']('contenteditable','false'),_0x52471a['setAttribute']('spellcheck','false'),_0x52471a['textContent']=_0x404240['name'],_0xc82db3['innerHTML']='<span\x20class=\x22ck-user__marker-line\x22\x20contenteditable=\x22false\x22><span\x20class=\x22ck-user__marker-dot\x22></span></span>'+_0x52471a['outerHTML']+'',_0xc82db3['addEventListener']('mouseenter',()=>{_0xc82db3['classList']['add']('ck-user__marker_hovered');}),_0xc82db3['addEventListener']('mouseleave',()=>{_0xc82db3['classList']['remove']('ck-user__marker_hovered');}),_0xc82db3;},_0x4ed0dd['isSimilar']=function(_0x19db32){return!(!this['getCustomProperty']('userPositionMarker')||!_0x19db32['getCustomProperty']('userPositionMarker')||this['getAttribute']('data-session-id')!=_0x19db32['getAttribute']('data-session-id'));},_0x4ed0dd;}(_0xb73e20,_0x4aec55,_0x3f79c6);}(_0x3d127b,_0x540475,_0x397da3,_0xe05e18)}),_0xe05e18['conversion']['for']('editingDowncast')['markerToHighlight']({'model':'user:range','view':_0x3be15b=>function(_0x4b45dc,_0x12662f){const _0x50e9c1=_0x4b45dc['markerName']['split'](':')[0x2];if(_0x50e9c1===_0x12662f['mySessionId'])return null;const _0x2f844e=_0x12662f['getUserBySessionId'](_0x50e9c1);if(!_0x2f844e)return{'id':_0x50e9c1,'classes':[]};return{'id':_0x50e9c1,'classes':['ck-user__selection',_0x2f844e['color']['getSelectionClass']()],'attributes':{'style':Q(_0x2f844e),'data-session-id':_0x50e9c1},'priority':0x7d0+_0x2f844e['orderNumber']};}(_0x3be15b,_0x397da3)}),function(_0x150f94){const _0x5bbe57=_0x150f94['model'],_0x253e9e=new Map(),_0x2165fc=_0x150f94['plugins']['get'](Y);_0x5bbe57['markers']['on']('update:user:range',(_0x4d3216,_0x3cd39c,_0x1ae7a7,_0x5d9895)=>{if(!_0x5d9895&&_0x253e9e['get'](_0x3cd39c['name']))return _0x253e9e['get'](_0x3cd39c['name'])['detach'](),void _0x253e9e['delete'](_0x3cd39c['name']);const _0x52548c=_0x3cd39c['name']['split'](':')[0x2];if(_0x52548c===_0x2165fc['mySessionId'])return;const _0x1d7ad4='user:position:'+_0x52548c;_0x5bbe57['markers']['has'](_0x1d7ad4)&&_0x150f94['editing']['reconvertMarker'](_0x1d7ad4),_0x3cd39c['on']('change:range',(_0x3557c3,_0x2083ff,_0x3e4922)=>{if('$graveyard'!=_0x2083ff['root']['rootName']&&'$graveyard'==_0x3cd39c['getRange']()['root']['rootName']&&!_0x253e9e['has'](_0x3cd39c['name'])){const _0x23b56b=_0x5bbe57['schema']['getNearestSelectionRange'](_0x3e4922['deletionPosition']);if(_0x23b56b){const _0x328457=_0x9e79df['fromRange'](_0x23b56b);_0x253e9e['set'](_0x3cd39c['name'],_0x328457),_0x328457['on']('change:range',(_0xf53096,_0x33194e,_0x1b25b1)=>{if('$graveyard'==_0x328457['root']['rootName']){const _0xd44d3c=_0x5bbe57['schema']['getNearestSelectionRange'](_0x1b25b1['deletionPosition']);_0xd44d3c?(_0x328457['start']=_0xd44d3c['start'],_0x328457['end']=_0xd44d3c['end']):(_0x253e9e['delete'](_0x3cd39c['name']),_0x328457['detach']());}});}}});}),_0x5bbe57['document']['on']('change',()=>{_0x253e9e['size']>0x0&&_0x5bbe57['enqueueChange']({'isUndoable':!0x1},_0x4a9349=>{for(const [_0x130dc8,_0x53c161]of _0x253e9e)'$graveyard'==_0x5bbe57['markers']['get'](_0x130dc8)['getRange']()['root']['rootName']&&(J(_0x130dc8['split'](':')[0x2],_0x53c161['toRange'](),_0x5bbe57,_0x4a9349),_0x53c161['detach']());_0x253e9e['clear']();});});}(_0xe05e18),this['_domEmitter']['listenTo'](_0x29912a['document'],'keydown',(_0x494293,{key:_0x25327c})=>{'Escape'===_0x25327c&&function(_0x3abcfd){_0x3abcfd['editing']['view']['change'](_0x548613=>{for(const _0x5d50b1 of _0x3abcfd['model']['markers']){if(!_0x5d50b1['name']['startsWith']('user:position'))continue;const _0x5d0413=_0x3abcfd['editing']['mapper']['markerNameToElements'](_0x5d50b1['name']);if(_0x5d0413){for(const _0x3c6969 of _0x5d0413)_0x548613['removeClass']('ck-user__marker_hovered',_0x3c6969);}}});}(_0xe05e18);},{'useCapture':!0x0});}['afterInit'](){const _0x46e030=this['editor'],_0x1b73a6=_0x46e030['commands']['get']('undo');_0x1b73a6&&_0x46e030['model']['on']('applyOperation',(_0x13c552,_0x298fe9)=>{const _0x21d77e=_0x298fe9[0x0];if(!_0x21d77e['isDocumentOperation'])return;if('marker'!=_0x21d77e['type']||!_0x21d77e['name']['startsWith']('user:'))return;const _0x4465bc=_0x21d77e['batch'];_0x1b73a6['_createdBatches']['has'](_0x4465bc)&&(_0x21d77e['newRange']=_0x21d77e['oldRange']?_0x46e030['model']['createRange'](_0x21d77e['oldRange']['start'],_0x21d77e['oldRange']['end']):null);},{'priority':'highest'});}['destroy'](){return this['_domEmitter']['stopListening'](),super['destroy']();}['createUserMarkerOperations'](){const _0x5ce292=this['editor'],_0x3f0d86=_0x5ce292['model']['document'],_0x57824c=_0x5ce292['plugins']['get'](Y);_0x5ce292['model']['enqueueChange']({'isUndoable':!0x1},_0x3b58ed=>{const _0x202fc1='user:range:'+_0x57824c['mySessionId'],_0x3d259a='user:position:'+_0x57824c['mySessionId'],_0x3bbea7=_0x5ce292['model']['markers']['has'](_0x202fc1);_0x5ce292['editing']['view']['hasDomSelection']?J(_0x57824c['mySessionId'],_0x3f0d86['selection']['getFirstRange'](),_0x5ce292['model'],_0x3b58ed):_0x3bbea7&&(_0x3b58ed['removeMarker'](_0x202fc1),_0x3b58ed['removeMarker'](_0x3d259a));});}}function J(_0x3c3dc0,_0x3f8d06,_0x24563c,_0x24cf42){const _0x47a8f4='user:range:'+_0x3c3dc0,_0x519d0e='user:position:'+_0x3c3dc0,_0x1c56fe=_0x3f8d06['getContainedElement']();let _0x27434d=_0x3f8d06['start'];if(_0x1c56fe&&_0x1c56fe['is']('element','tableCell')){const _0x1f4ab3=function(_0x299aa2,_0x57c598){for(const _0x28fa2b of _0x299aa2['getPositions']())if(_0x57c598['schema']['checkChild'](_0x28fa2b,'$text'))return _0x28fa2b;}(_0x3f8d06,_0x24563c);_0x1f4ab3&&(_0x27434d=_0x1f4ab3,_0x3f8d06=_0x24cf42['createRange'](_0x27434d));}const _0x102ab7=_0x24cf42['createRange'](_0x27434d);_0x24563c['markers']['has'](_0x47a8f4)?(_0x24cf42['updateMarker'](_0x47a8f4,{'range':_0x3f8d06}),_0x24cf42['updateMarker'](_0x519d0e,{'range':_0x102ab7})):(_0x24cf42['addMarker'](_0x47a8f4,{'range':_0x3f8d06,'usingOperation':!0x0}),_0x24cf42['addMarker'](_0x519d0e,{'range':_0x102ab7,'usingOperation':!0x0}));}function Q(_0x1595ad){return'--ck-user-color:'+_0x1595ad['color']['getColorVariable']()+';--ck-user-color-alpha:'+_0x1595ad['color']['getColorAlphaVariable']()+';';}function X(_0x5c1740,_0x1a922b,_0x2fc176){const _0x4e993b=_0x5c1740['t'],t=_0x5c1740['t'];switch(_0x1a922b){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 _0x4e993b({'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'},_0x2fc176);default:return'';}}let Z=0x1;class tt extends _0x1d5197{static ['CollaborativeEditingService']=/* #__PURE__ -- @preserve */
|
|
25
|
-
((()=>_0x51c0e8)());['_offset'];['sessionId'];['serverHistory'];['_channelId'];['_service'];['_document'];['_compressor'];['_bufferedOperations'];['_knownOperations'];['_knownRootNames'];['_pendingAction'];['_hasSelectionChanged'];['_sendBufferedOperationsDelayId'];['_baseBufferDelay'];['_currentBufferDelay'];['_lastSyncedOperationId'];['_disconnectionOperations'];['_operationIdentifier'];static get['requires'](){return[z,Y,K,_0x2190b9,_0x48e39d,_0x14b5f4];}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 _0x41d83b=this['serverHistory']['getOperations']();for(let _0x2432ed=_0x41d83b['length']-0x1;_0x2432ed>=0x0;_0x2432ed--){const _0x17c884=_0x41d83b[_0x2432ed];if(!this['_disconnectionOperations']['has'](_0x17c884))return _0x17c884['baseVersion']+0x1-this['_offset'];}return 0x0;}constructor(_0x1b5794){if(super(_0x1b5794),this['_offset']=0x0,this['sessionId']=null,this['serverHistory']=new _0x345ffc(),this['editor']['config']['define']('collaboration',{}),this['_channelId']=this['editor']['config']['get']('collaboration.channelId'),!this['_channelId'])throw new _0x849088('collaboration-missing-channelid',this);const _0x5a2215=_0x1b5794['config']['get']('cloudServices.bundleVersion')||_0x46501e;this['_service']=new tt['CollaborativeEditingService'](_0x5a2215,this['_channelId']),this['_document']=this['editor']['model']['document'],this['_compressor']=new _0x10c7fe(),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 it(this['_disconnectionOperations']);}['init'](){const _0x133099=this['editor'],_0xc008d8=_0x133099['plugins']['get'](_0x48e39d),_0x284402=_0x133099['plugins']['get'](z);this['listenTo'](_0xc008d8,'getOperationAuthor',(_0x20cda4,_0x1ae839)=>{const _0x2ab220=_0x1ae839[0x0];_0x2ab220['_authorId']&&(_0x20cda4['return']=_0xc008d8['getUser'](_0x2ab220['_authorId']),_0x20cda4['stop']()),null===_0x2ab220['_authorId']&&(_0x20cda4['return']=null,_0x20cda4['stop']());},{'priority':'high'}),this['listenTo'](_0x133099['model']['document']['selection'],'change:range',(_0x3bac17,_0x426c33)=>{_0x426c33['directChange']&&this['_refreshUserSelectionMarkers']();}),this['listenTo'](_0x133099['editing']['view'],'change:hasDomSelection',()=>{this['_refreshUserSelectionMarkers']();}),this['_initThrowingOnDataSet'](),_0x133099['model']['on']('applyOperation',(_0x5b7cd5,_0x3e02f7)=>{const _0x290184=_0x3e02f7[0x0];_0x290184['isDocumentOperation']&&(this['_saveOperationInBuffer'](_0x290184),this['_shouldSendUpdate']()&&this['_sendBufferedOperationsDelayed']());}),this['_setUpDataInit'](),this['bind']('_isEditingAllowed')['to'](_0x284402,'state',this,'_hasSynchronizationProblem',(_0x2330ab,_0x3b02c8)=>'connected'===_0x2330ab&&!_0x3b02c8),this['on']('change:_isEditingAllowed',()=>{this['_isEditingAllowed']?_0x133099['disableReadOnlyMode']('rtc-offline'):_0x133099['enableReadOnlyMode']('rtc-offline');}),this['_isEditingAllowed']?_0x133099['disableReadOnlyMode']('rtc-offline'):_0x133099['enableReadOnlyMode']('rtc-offline'),this['set']('_isConnected',!0x1);}async['reconnect'](){const _0x36802b=this['editor']['plugins']['get'](Y),_0x385b80=this['editor']['plugins']['get'](z);try{this['_isPendingUpdate']=!0x0,_0x36802b['unregister'](this['_channelId']);const _0x5356d7=await this['_service']['reconnect'](_0x385b80['connection'],this['lastSyncVersion']);await this['_handleReconnectionResponse'](_0x5356d7)&&(this['_isPendingUpdate']=!0x1,this['_clearPendingAction']());const _0x1613ad=await this['_service']['getConnectedSessions']();_0x36802b['register'](this['_channelId'],_0x1613ad),this['_handleSendingSelectionMarkers'](),this['_isConnected']=!0x0;}catch(_0x4970de){if(function(_0xfdc42e){return'404'===_0xfdc42e['code'];}(_0x4970de)&&this['sessionId'])await this['_connectAfterSessionHasBeenFlushed']();else{if(function(_0x53c573){return'409'===_0x53c573['code'];}(_0x4970de)){const _0x2e2c0e=X(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'](_0x2e2c0e);}else{if(!(_0x4970de instanceof et))throw _0x4970de;this['_handleReconnectionError']();}}}}['destroy'](){const _0xac068c=this['editor']['plugins']['get'](z),_0x68278f=this['editor']['plugins']['get'](Y);this['editor']['enableReadOnlyMode']('rtc-destroyed'),_0x68278f['channelSessions']['has'](this['_channelId'])&&_0x68278f['unregister'](this['_channelId']),_0xac068c['removeFromReconnectionStack'](this),this['_disconnectService'](),super['destroy']();}async['_handleReconnectionResponse'](_0x2c1ae2){if(this['sessionId']!==_0x2c1ae2['sessionId']&&this['_lastSyncedOperationId']!==_0x2c1ae2['lastOperationId'])throw new et();return this['sessionId']=_0x2c1ae2['sessionId'],this['_handleServerResponse']([],{..._0x2c1ae2,'wereChangesApplied':!0x1,'data':_0x2c1ae2['data']},'reconnect');}async['_connectService'](_0x742b60,_0x2ada6f=!0x1){const {connection:_0x2bba4e}=this['editor']['plugins']['get'](z);tt['CollaborativeEditingService']['getConnectedSessions'](_0x2bba4e,this['_channelId'])['then'](_0x536be9=>this['_initSessionsHandling'](_0x536be9))['catch'](_0x2396b4=>{this['_crash']('realtimecollaborationclient-init-session-connection-error',_0x2396b4);}),this['listenTo'](this['_service'],'operationsReceived',this['_handleReceivedOperations']['bind'](this)),this['listenTo'](this['_service'],'error',(_0x51f36d,_0x2853bb)=>{this['_crash']('realtimecollaborationclient-init-service-internal-error',_0x2853bb);}),this['listenTo'](this['_service'],'disconnected',()=>{this['_isConnected']=!0x1;});const _0x578403=this['_operationIdentifier']['getIdOfTheLastOperation'](_0x742b60);this['_isPendingUpdate']=!0x0;const _0x5b3951=await this['_service']['connect'](_0x2bba4e,this['_compressOperations'](_0x742b60),_0x578403);if(this['sessionId']=_0x5b3951['sessionId'],_0x2ada6f){if(!_0x5b3951['wereChangesApplied'])return void this['_handleReconnectionError']();this['_isPendingUpdate']=!0x1,this['_clearPendingAction'](),this['serverHistory']['reset'](),this['_offset']=_0x5b3951['offset'],this['serverHistory']['version']=this['_offset'],await this['_handleServerResponse'](_0x742b60,_0x5b3951,'reconnection:\x20flushed\x20session');}else await this['_handleInitialConnectionData'](_0x5b3951,_0x742b60);this['_handleSendingSelectionMarkers'](),this['_isConnected']=!0x0;}['_handleSendingSelectionMarkers'](){const _0x1afba2=this['editor']['plugins']['get'](Y),_0x2728e0=this['editor']['plugins']['get'](K),_0x5f51a6=_0x1afba2['channelSessions']['get'](this['_channelId']);_0x5f51a6&&_0x5f51a6['length']>0x1?_0x2728e0['createUserMarkerOperations']():this['listenTo'](_0x1afba2,'sessionAdd:'+this['_channelId'],()=>{0x2===_0x1afba2['channelSessions']['get'](this['_channelId'])['length']&&_0x2728e0['createUserMarkerOperations']();});}async['_handleReceivedOperations'](_0x27fd1b,_0x280244,_0x5cd3f4,_0x425989){if(!this['_isPendingUpdate']&&this['_document']['version']==_0x280244){const _0x161ee7=this['_decompressOperations'](_0x5cd3f4,_0x425989);await this['_fetchMissingUsers'](_0x161ee7),this['_handleExternalOperations'](_0x161ee7,_0x280244,_0x5cd3f4['lastOperationId'])||this['_crash']('realtimecollaborationclient-init-service-incorrect-server-operation');}}async['_connectAfterSessionHasBeenFlushed'](){this['_disconnectService']();const {locale:_0x3b490b}=this['editor'];let _0x98cd22;try{_0x98cd22=await this['_service']['getDocumentDetails']();}catch{const _0x3522f3=X(_0x3b490b,'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'](_0x3522f3);}const _0x10575f=_0x98cd22['currentDocumentSession']||_0x98cd22['lastDocumentSession'];if(this['_lastSyncedOperationId']!==_0x10575f['lastOperationId']){const _0x2ba3dd=X(_0x3b490b,'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 void this['_handleReconnectionError'](_0x2ba3dd);}await this['_connectService'](this['editor']['model']['document']['history']['getOperations'](),!0x0);}['_disconnectService'](){this['_service']['disconnect'](),this['_bufferedOperations']=[],clearTimeout(this['_sendBufferedOperationsDelayId']),this['stopListening'](this['_service']);}['_initSessionsHandling'](_0xf8318b){const _0x247102=this['editor']['plugins']['get'](Y);this['listenTo'](_0x247102,'sessionAdd:'+this['_channelId'],(_0x26f373,{session:_0x4fd0f6})=>{if(_0x4fd0f6['id']===_0x247102['mySessionId']){_0x26f373['off']();const _0x14f2ab=this['editor']['plugins']['has']('CommentsOnly')&&this['editor']['plugins']['get']('CommentsOnly');let _0x2788fa=_0x4fd0f6['permissions'];_0x14f2ab&&_0x14f2ab['isEnabled']&&(_0x2788fa=_0x2788fa['filter'](_0x35c24b=>'document:write'!==_0x35c24b)),this['editor']['plugins']['get']('Permissions')['setPermissions'](_0x2788fa,this['_channelId']);}}),_0x247102['register'](this['_channelId'],_0xf8318b);}['_initThrowingOnDataSet'](){const _0xda39b2=this['editor']['data']['set'];this['editor']['data']['set']=(..._0x3c1170)=>{if(!_0x3c1170[_0x3c1170['length']-0x1]['suppressErrorInCollaboration'])throw new _0x849088('realtimecollaborationclient-editor-setdata-and-editor-data-set-are-forbidden-in-real-time-collaboration',this);_0xda39b2['apply'](this['editor']['data'],_0x3c1170);};}['_setUpDataInit'](){this['editor']['data']['on']('init',(_0x4a96fa,[_0x300ba0])=>{if(this['_document']['version'])throw new _0x849088('realtimecollaborationclient-init-document-already-initialized',this);_0x4a96fa['stop'](),this['_setPendingAction']();const _0x4211e1=Object['fromEntries'](Object['entries'](this['editor']['config']['get']('roots')||{})['filter'](([,_0xf5628])=>!_0xf5628['lazyLoad'])['map'](([_0x93fb36,_0x5c2cc4])=>[_0x93fb36,_0x5c2cc4['modelAttributes']||{}])),_0xd696ba=this['_getOperationsFromInitData'](_0x300ba0,_0x4211e1);0x0==_0xd696ba['length']&&_0xd696ba['push'](new _0x1882bb(0x0)),_0x4a96fa['return']=this['_connectService'](_0xd696ba)['then'](()=>{this['editor']['plugins']['get'](z)['addToReconnectionStack'](this),this['editor']['data']['fire']('ready');})['catch'](_0x528c5d=>this['_crash']('realtimecollaborationclient-init-connection-failed',_0x528c5d))['finally'](()=>this['_clearPendingAction']());},{'priority':'high'}),this['editor']['on']('loadRoot',async(_0x3ced38,[_0x312467,_0x1d7327])=>{_0x3ced38['stop']();const _0x161f25=this['editor']['model']['document']['getRoot'](_0x312467);if(!this['_knownRootNames']['has'](_0x312467)){const _0x2c70da=_0x1d7327&&_0x1d7327['data']?_0x1d7327['data']:'',_0x4ea112=_0x1d7327&&_0x1d7327['attributes']?_0x1d7327['attributes']:{};await this['_loadRoot'](_0x312467,_0x2c70da,_0x4ea112);}this['editor']['model']['enqueueChange']({'isUndoable':!0x1},()=>{_0x161f25['_isLoaded']=!0x0,this['editor']['model']['document']['differ']['_bufferRootLoad'](_0x161f25);});},{'priority':'high'});}async['_fetchMissingUsers'](_0x329354){const _0x5491b8=this['editor']['plugins']['get'](_0x48e39d),{connection:_0x2a4957}=this['editor']['plugins']['get'](z),_0x263872=new Set();for(const _0xe0b10f of _0x329354){const _0x410aaf=_0xe0b10f['_authorId'];_0x410aaf&&!_0x5491b8['getUser'](_0x410aaf)&&_0x263872['add'](_0x410aaf);}if(0x0===_0x263872['size'])return;const _0xee256a=await _0xbe5ea0['getMany'](_0x2a4957,Array['from'](_0x263872));for(const _0x57a160 of _0xee256a)_0x5491b8['getUser'](_0x57a160['id'])||_0x5491b8['addUser'](_0x57a160);}['_getOperationsFromInitData'](_0x57b324,_0x52aa48={}){const _0x4e35b2=this['editor']['model'],_0x582d5a=[];let _0x4b692a=0x0;const _0x42e2e0='string'==typeof _0x57b324?{'main':_0x57b324}:_0x57b324;for(const _0x2f7b2f of Object['keys'](_0x42e2e0)){if(!this['_document']['roots']['has'](_0x2f7b2f))throw new _0x849088('realtimecollaborationclient-init-non-existent-root',this);const _0x5edca1=this['editor']['data']['parse'](_0x42e2e0[_0x2f7b2f]),_0x21a440=this['_document']['getRoot'](_0x2f7b2f),_0x3a2f46=new _0x2749a9(_0x4e35b2['createPositionAt'](_0x21a440,0x0),_0x5edca1,_0x4b692a++);_0x582d5a['push'](_0x3a2f46);for(const [_0x332f4b,_0x3422e0]of _0x5edca1['markers']){const _0x451515=_0x4e35b2['createRange'](_0x4e35b2['createPositionFromPath'](_0x21a440,_0x3422e0['start']['path']['slice']()),_0x4e35b2['createPositionFromPath'](_0x21a440,_0x3422e0['end']['path']['slice']())),_0xdd6506=new _0x27cc4a(_0x332f4b,null,_0x451515,_0x4e35b2['markers'],!0x0,_0x4b692a++);_0x582d5a['push'](_0xdd6506);}}if(_0x52aa48)for(const [_0x32bd23,_0x474a67]of Object['entries'](_0x52aa48)){const _0x4cd6da=_0x4e35b2['document']['getRoot'](_0x32bd23);if(!_0x4cd6da)throw new _0x849088('multi-root-editor-root-attributes-no-root',null);for(const [_0x573590,_0x25f39a]of Object['entries'](_0x474a67))if(null!==_0x25f39a){const _0x2da7a2=new _0x57eb66(_0x4cd6da,_0x573590,null,_0x25f39a,_0x4b692a++);_0x582d5a['push'](_0x2da7a2);}}return _0x582d5a;}async['_loadRoot'](_0x5107cc,_0x5bdf57,_0x4728f3){this['_getOperationsFromInitData']({[_0x5107cc]:_0x5bdf57},{[_0x5107cc]:_0x4728f3})['forEach']((_0x1d4647,_0x2c21ff)=>{_0x1d4647['baseVersion']=this['_document']['version']+_0x2c21ff,_0x1d4647['_isInit']=!0x0,this['_saveOperationInBuffer'](_0x1d4647);}),this['_sendBufferedOperationsDelayed'](),await this['_waitUntilSynced']();}async['_handleInitialConnectionData'](_0x16e4b7,_0x7989cf){let _0x4ca621;this['_offset']=_0x16e4b7['offset'];const _0x823593=_0x16e4b7['wereChangesApplied']&&!_0x16e4b7['initData'],_0x7fe90b=_0x823593?0x0:_0x16e4b7['data']['baseVersion'];if(_0x7989cf['forEach'](_0x3341ae=>{_0x3341ae['_isInit']=!0x0,_0x3341ae['createdAt']=_0x16e4b7['sessionCreatedAt'],_0x3341ae['_authorId']=null;}),_0x823593)_0x4ca621=_0x7989cf,this['_applyOperationsSet'](_0x4ca621,_0x823593);else{if(_0x16e4b7['initData']){const _0x15b69c=this['_getOperationsFromInitData'](_0x16e4b7['initData']);this['_document']['history']['version']=-_0x15b69c['length'],_0x15b69c['forEach'](_0x1f77da=>{_0x1f77da['baseVersion']-=_0x15b69c['length'],_0x1f77da['createdAt']=_0x16e4b7['sessionCreatedAt'],_0x1f77da['_isInit']=!0x0,_0x1f77da['_authorId']=null;}),this['_applyOperationsSet'](_0x15b69c,!0x0),this['serverHistory']['version']=-_0x15b69c['length']+this['_offset'],this['_updateServerHistory'](_0x15b69c);}this['_document']['history']['version']=_0x7fe90b,_0x4ca621=this['_decompressOperations'](_0x16e4b7['data'],_0x16e4b7['metadata']),await this['_fetchMissingUsers'](_0x4ca621),this['_applyOperationsSet'](_0x4ca621,_0x823593);}_0x16e4b7['lastOperationId']&&(this['_operationIdentifier']['setIdForTheLastOperation'](_0x4ca621,_0x16e4b7['lastOperationId']),this['_lastSyncedOperationId']=_0x16e4b7['lastOperationId']),this['serverHistory']['version']=_0x7fe90b+this['_offset'],this['_updateServerHistory'](_0x4ca621),_0x7989cf['filter'](_0x64daf0=>{const _0x5d648c=this['_getAffectedRoot'](_0x64daf0);return _0x5d648c&&!this['_knownRootNames']['has'](_0x5d648c);})['forEach']((_0x3e28cb,_0xd1b7c5)=>{_0x3e28cb['baseVersion']=this['_document']['version']+_0xd1b7c5,this['_saveOperationInBuffer'](_0x3e28cb);}),this['_shouldSendUpdate']()?(this['_currentBufferDelay']=0x0,this['_sendBufferedOperationsDelayed'](!0x0),await this['_waitUntilSynced']()):(this['_isPendingUpdate']=!0x1,this['_clearPendingAction']());}['_crash'](_0x2f423d,_0x239868){const _0x3a63eb=_0x239868&&_0x239868['message'];if(_0x3a63eb&&_0x3a63eb['startsWith']('realtimecollaborationclient'))throw _0x239868;const _0x236311=this['editor']['plugins']['get'](z);throw this['_isPendingUpdate']=!0x0,_0x236311['disconnect'](),this['editor']['enableReadOnlyMode']('realtimecollaborationclient-error'),new _0x849088(_0x2f423d,this['editor'],_0x3a63eb?{'originalError':_0x3a63eb}:void 0x0);}['_saveOperationInBuffer'](_0x347d2b){this['_knownOperations']['has'](_0x347d2b)||(this['_knownOperations']['add'](_0x347d2b),this['_bufferedOperations']['push'](_0x347d2b),this['_pendingAction']||'marker'==_0x347d2b['type']&&!_0x347d2b['affectsData']||this['_setPendingAction']());}['_sendBufferedOperationsDelayed'](_0x6f3b08=!0x1){!_0x6f3b08&&this['_isPendingUpdate']||(this['_isPendingUpdate']=!0x0,clearTimeout(this['_sendBufferedOperationsDelayId']),this['_sendBufferedOperationsDelayId']=setTimeout(()=>{this['_sendBufferedOperations']()['then'](_0x20387f=>{_0x20387f&&(this['_clearPendingAction'](),this['_isPendingUpdate']=!0x1);})['catch'](_0x39fab8=>{this['_clearPendingAction'](),this['_isPendingUpdate']=!0x1,function(_0x152058){return _0x152058['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x152058['message']['startsWith']('cloud-services-internal-error:\x20Collaborative\x20Editing\x20Service\x20is\x20not\x20connected.')||_0x152058['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}(_0x39fab8)||this['_crash'](_0x39fab8['message'],_0x39fab8);});},this['_currentBufferDelay']));}['_waitUntilSynced'](){return new Promise(_0x5e547f=>{this['on']('change:_isPendingUpdate',()=>{_0x5e547f();});});}async['_sendBufferedOperations'](){const _0x170ac7=this['editor']['plugins']['get'](K);if(this['_shouldSendSelectionUpdate']()&&(_0x170ac7['createUserMarkerOperations'](),this['_hasSelectionChanged']=!0x1),!this['_shouldSendUpdate']())return!0x0;const _0x112160=[...this['_bufferedOperations']];for(const _0x3bb04b of _0x112160)_0x3bb04b['wasUndone']=this['_document']['history']['isUndoneOperation'](_0x3bb04b);const _0x296694=this['_operationIdentifier']['getIdOfTheLastOperation'](_0x112160),_0x22a2ba=Z++,_0x6c3ccc=this['_compressOperations'](_0x112160),_0x39b795=await this['_service']['sendOperations'](_0x6c3ccc,_0x6c3ccc['baseVersion'],_0x296694);try{return await this['_handleServerResponse'](_0x112160,_0x39b795,_0x22a2ba);}catch(_0x389682){return this['_crash']('realtimecollaborationclient-sendbufferedoperations',_0x389682);}}async['_handleServerResponse'](_0x161caf,_0x3dd35e,_0x2194bc){if('error'in _0x3dd35e)throw _0x3dd35e['error'];let _0x1f6983=!0x1;if(_0x3dd35e['wereChangesApplied']){_0x3dd35e['lastOperationId']&&(this['_lastSyncedOperationId']=_0x3dd35e['lastOperationId']),this['_bufferedOperations']=this['_bufferedOperations']['filter'](_0x501776=>!_0x161caf['includes'](_0x501776));for(const _0x2bc2a2 of _0x161caf)_0x2bc2a2['createdAt']='lastOperationAcceptedAt'in _0x3dd35e&&_0x3dd35e['lastOperationAcceptedAt']||void 0x0;st(_0x161caf,_0x3dd35e['version']-_0x161caf['length']),this['_updateServerHistory'](_0x161caf);const _0x2c97c8=_0x161caf['filter'](_0x2d182c=>{if(!_0x2d182c['_isInit'])return!0x1;const _0x57bdc9=this['_getAffectedRoot'](_0x2d182c);return _0x57bdc9&&!this['_knownRootNames']['has'](_0x57bdc9);});st(_0x2c97c8,this['_document']['version']),this['_applyOperationsSet'](_0x2c97c8),_0x1f6983=!0x0,this['_currentBufferDelay']=this['_baseBufferDelay'];}else{const _0x4931a8=this['_decompressOperations'](_0x3dd35e['data'],_0x3dd35e['metadata'])['filter'](_0x50404c=>_0x50404c['baseVersion']>=this['_lastServerVersion']);_0x4931a8['forEach'](_0x4867fa=>this['_addKnownRoot'](_0x4867fa)),this['_bufferedOperations']=this['_bufferedOperations']['filter'](_0x1ed8de=>!_0x1ed8de['_isInit']||!this['_knownRootNames']['has'](this['_getAffectedRoot'](_0x1ed8de))),this['_bufferedOperations']['length']&&st(this['_bufferedOperations'],this['_bufferedOperations'][0x0]['baseVersion']),await this['_fetchMissingUsers'](_0x4931a8),_0x1f6983=this['_handleExternalOperations'](_0x4931a8,_0x3dd35e['version'],_0x3dd35e['lastOperationId']),this['_currentBufferDelay']=Math['round'](this['_currentBufferDelay']/0x2);}return _0x1f6983?!this['_shouldSendUpdate']()||(this['_sendBufferedOperationsDelayed'](!0x0),!0x1):this['_crash']('realtimecollaborationclient-handleserverresponse');}['_handleExternalOperations'](_0x8aa5fd,_0x3bc143,_0x5a003c){try{const _0x2b05c4={'document':this['_document'],'useRelations':!0x1,'padWithNoOps':!0x0},{operationsA:_0x521fa4,operationsB:_0x4c1a8d,originalOperations:_0x466478}=_0x375ab1(_0x8aa5fd,this['_bufferedOperations'],_0x2b05c4);st(_0x521fa4,this['_document']['version']),st(_0x4c1a8d,_0x3bc143);for(const _0x240190 of _0x521fa4){const _0x23acfb=_0x466478['get'](_0x240190);_0x240190['_authorId']=_0x23acfb?_0x23acfb['_authorId']:null;}_0x5a003c&&(this['_operationIdentifier']['setIdForTheLastOperation'](_0x8aa5fd,_0x5a003c),this['_lastSyncedOperationId']=_0x5a003c),this['_bufferedOperations']=[..._0x4c1a8d],this['_applyOperationsSet'](_0x521fa4),this['_updateServerHistory'](_0x8aa5fd);}catch(_0x216862){return console['error'](_0x216862),!0x1;}return!0x0;}['_applyOperationsSet'](_0xe305d5,_0x235ca0=!0x1){this['editor']['model']['enqueueChange']({'isUndoable':!0x1,'isLocal':!0x1},_0x2d9a8d=>{for(const _0x3509c5 of _0xe305d5)this['_knownOperations']['add'](_0x3509c5),this['_addKnownRoot'](_0x3509c5),_0x2d9a8d['batch']['addOperation'](_0x3509c5),this['editor']['model']['applyOperation'](_0x3509c5);});}['_addKnownRoot'](_0x3d5d61){const _0x2ce7f1=this['_getAffectedRoot'](_0x3d5d61);_0x2ce7f1&&this['_knownRootNames']['add'](_0x2ce7f1);}['_getAffectedRoot'](_0x559d6b){let _0x2b483c,_0x10e173;switch(_0x559d6b['type']){case'insert':_0x2b483c=_0x559d6b['position']['root'];break;case'marker':if(_0x10e173=_0x559d6b['newRange'],!_0x10e173)return null;_0x2b483c=_0x10e173['root'];break;case'addRootAttribute':_0x2b483c=_0x559d6b['root'];break;case'addRoot':_0x2b483c=_0x559d6b['affectedSelectable'];break;case'move':_0x2b483c=_0x559d6b['targetPosition']['root'];break;default:return null;}return _0x2b483c['rootName'];}['_updateServerHistory'](_0x4b86f1){_0x4b86f1['forEach'](_0x4a7b41=>{const _0x5490ae=_0x4a7b41['clone']();_0x5490ae['_authorId']=_0x4a7b41['_authorId'],_0x5490ae['_isInit']=!!_0x4a7b41['_isInit'],_0x5490ae['createdAt']=_0x4a7b41['createdAt'],_0x5490ae['baseVersion']+=this['_offset'],_0x4a7b41['_isDisconnection']&&this['_disconnectionOperations']['add'](_0x5490ae),this['serverHistory']['addOperation'](_0x5490ae);});}['_handleReconnectionError'](_0x10055d){const _0x3c13ed=this['editor']['plugins']['get']('Notification'),_0x4034ac=this['editor']['locale'];_0x10055d||(_0x10055d=X(_0x4034ac,'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.')),_0x3c13ed['showWarning'](_0x10055d,{'title':X(_0x4034ac,'Synchronization\x20issue'),'namespace':'real-time-collaboration'}),this['_hasSynchronizationProblem']=!0x0,clearTimeout(this['_sendBufferedOperationsDelayId']),this['_bufferedOperations']=[],this['editor']['plugins']['get'](z)['disconnect']();}['_setPendingAction'](){this['_pendingAction']||(this['_pendingAction']=this['editor']['plugins']['get'](_0x2190b9)['add'](X(this['editor']['locale'],'PENDING_ACTION_SENDING_DATA')));}['_clearPendingAction'](){this['_pendingAction']&&(this['editor']['plugins']['get'](_0x2190b9)['remove'](this['_pendingAction']),this['_pendingAction']=null);}['_compressOperations'](_0x28144c){const _0x44c711=_0x28144c['map'](_0xe054ee=>_0xe054ee['toJSON']());return this['_compressor']['compress'](_0x44c711);}['_decompressOperations'](_0x5cf400,_0x3688c4){return this['_compressor']['decompress'](_0x5cf400)['map']((_0x3dec33,_0x4c1a3c)=>{const _0x126885='init'==_0x3688c4[_0x4c1a3c]['type'];if('InsertOperation'==_0x3dec33['__className']){const _0x1d69eb=_0x3dec33['position']['root'];!this['_document']['getRoot'](_0x1d69eb)&&(this['_document']['createRoot']('$root',_0x1d69eb)['_isAttached']=!0x1);}const _0x2eb907=_0x5316e8['fromJSON'](_0x3dec33,this['_document']);return _0x2eb907['wasUndone']=_0x3dec33['wasUndone'],_0x2eb907['_isInit']=_0x126885,_0x2eb907['_authorId']=_0x126885?null:_0x3688c4[_0x4c1a3c]['userId'],_0x2eb907['_isDisconnection']='cs:removeUser'===_0x3688c4[_0x4c1a3c]['type'],_0x2eb907['createdAt']=_0x3688c4[_0x4c1a3c]['createdAt'],_0x2eb907;});}['_refreshUserSelectionMarkers'](){this['_hasSelectionChanged']=!0x0,this['_shouldSendSelectionUpdate']()?this['_sendBufferedOperationsDelayed']():this['_hasSelectionChanged']=!0x1;}['_shouldSendSelectionUpdate'](){const _0x58f1ea=this['editor']['plugins']['get'](Y)['channelSessions']['get'](this['_channelId']);return!this['editor']['isReadOnly']&&!!_0x58f1ea&&_0x58f1ea['length']>0x1&&this['_hasSelectionChanged'];}['_shouldSendUpdate'](){return this['_bufferedOperations']['length']>0x0||this['_shouldSendSelectionUpdate']();}}class et extends Error{}function st(_0x15fd10,_0x529fd3){for(const _0x45c853 of _0x15fd10)_0x45c853['baseVersion']=_0x529fd3++;}class it{['_ignoredOperations'];['_operationToId'];constructor(_0x479c86){this['_ignoredOperations']=_0x479c86,this['_operationToId']=new WeakMap();}['getIdOfTheLastOperation'](_0x4f6eed){let _0x94cb0a=_0x4f6eed['length'];for(;_0x94cb0a--;){const _0x48c9d0=_0x4f6eed[_0x94cb0a];if(!this['_ignoredOperations']['has'](_0x48c9d0)){if(!this['_operationToId']['has'](_0x48c9d0)){const _0x10216e=_0x2fc7a9()['slice'](0x1,0x12);this['_operationToId']['set'](_0x48c9d0,_0x10216e);}return this['_operationToId']['get'](_0x48c9d0);}}}['setIdForTheLastOperation'](_0x52ebe6,_0x241c06){if(!_0x241c06)return;let _0x1dd015=_0x52ebe6['length'];for(;_0x1dd015--;){const _0xb88fef=_0x52ebe6[_0x1dd015];this['_ignoredOperations']['has'](_0xb88fef)||this['_operationToId']['set'](_0xb88fef,_0x241c06);}}}class nt extends _0x1d5197{static get['requires'](){return[tt];}static get['pluginName'](){return'RealTimeCollaborativeEditing';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}class ot extends _0x39cb58{static ['CommentsService']=/* #__PURE__ -- @preserve */
|
|
26
|
-
((()=>_0x5b684f)());['_services'];static get['requires'](){return[z,_0x41e2b,Y,_0x48e39d];}static get['pluginName'](){return'CloudServicesCommentsAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x396af9){super(_0x396af9),this['_services']=new Map();}async['init'](){const _0x430933=this['context'],_0x2bbf6c=_0x430933['plugins']['get'](_0x41e2b);if(_0x430933['plugins']['get'](z)['addToReconnectionStack'](this),_0x2bbf6c['adapter']={'addCommentThread':async({channelId:_0x4dba4d,threadId:_0x13ca22,comments:_0x1f6456,resolvedAt:_0x1f20e5,resolvedBy:_0x164c97,context:_0x50a12b,attributes:_0x4e3795})=>{const _0x628cd9=await this['_getService'](_0x4dba4d)['addCommentThread']({'commentThreadId':_0x13ca22,'comments':_0x1f6456['map'](_0x569df5=>function(_0x2db08b,_0x57c6f4,_0x15b96b){return{'commentThreadId':_0x15b96b,'commentId':_0x2db08b['commentId'],'userId':_0x2db08b['authorId'],'content':_0x2db08b['content'],'documentId':_0x57c6f4,'createdAt':_0x2db08b['createdAt'],'attributes':_0x2db08b['attributes']||{}};}(_0x569df5,_0x4dba4d,_0x13ca22)),'resolvedAt':_0x1f20e5,'resolvedBy':_0x164c97,'context':_0x50a12b,'attributes':_0x4e3795})['catch'](ct);return{'threadId':_0x628cd9['commentThreadId'],'comments':_0x628cd9['comments']};},'getCommentThread':async({channelId:_0x2302f5,threadId:_0x5bb374})=>{const _0x19002d=await this['_getService'](_0x2302f5)['getCommentThread'](_0x5bb374)['catch'](rt)['catch'](ct);return _0x19002d?_0x19002d['deletedAt']?null:(await this['_fetchMissingUsersForThreads']([_0x19002d]),{'threadId':_0x19002d['commentThreadId'],'comments':_0x19002d['comments']['map'](at),'context':_0x19002d['context'],'resolvedAt':_0x19002d['resolvedAt'],'resolvedBy':_0x19002d['resolvedBy'],'attributes':_0x19002d['attributes']||{}}):null;},'updateCommentThread':async({channelId:_0x277874,threadId:_0x27c223,context:_0x5158e,unlinkedAt:_0xce7fee,attributes:_0xe564c9})=>this['_getService'](_0x277874)['updateCommentThread']({'commentThreadId':_0x27c223,'context':_0x5158e,'attributes':_0xe564c9,'unlinkedAt':_0xce7fee})['catch'](rt)['catch'](ct),'resolveCommentThread':async({channelId:_0x2b4228,threadId:_0x28ac9e})=>{const _0x5c5373=await this['_getService'](_0x2b4228)['resolveCommentThread'](_0x28ac9e)['catch'](rt)['catch'](ct);return{'threadId':_0x5c5373['commentThreadId'],'resolvedAt':_0x5c5373['resolvedAt'],'resolvedBy':_0x5c5373['resolvedBy']};},'reopenCommentThread':async({channelId:_0x22f91f,threadId:_0x551a8f})=>this['_getService'](_0x22f91f)['reopenCommentThread'](_0x551a8f)['catch'](rt)['catch'](ct),'removeCommentThread':({channelId:_0x29e970,threadId:_0x531a50})=>this['_getService'](_0x29e970)['removeCommentThread'](_0x531a50)['catch'](rt)['catch'](ct),'addComment':({channelId:_0x3d9b26,threadId:_0x4a2a78,commentId:_0x299171,content:_0x4f841f,attributes:_0x1f9256})=>this['_getService'](_0x3d9b26)['addComment'](_0x4a2a78,_0x299171,_0x4f841f,_0x1f9256)['catch'](ct),'updateComment':({channelId:_0x56b8ba,threadId:_0x3d6f4c,commentId:_0x2b9358,content:_0x206d42,attributes:_0x4d8567})=>this['_getService'](_0x56b8ba)['updateComment'](_0x3d6f4c,_0x2b9358,_0x206d42,_0x4d8567)['catch'](rt)['catch'](ct),'removeComment':({channelId:_0x1aae5c,threadId:_0x284df4,commentId:_0x16b9da})=>this['_getService'](_0x1aae5c)['removeComment'](_0x284df4,_0x16b9da)['catch'](rt)['catch'](ct)},_0x430933 instanceof _0x4dfce7){const _0x431af3=_0x430933['config']['get']('collaboration.channelId'),_0x3dbb5c=_0x430933['plugins']['get'](Y);await this['_setUpService'](_0x431af3);const _0x5390a3=await this['_services']['get'](_0x431af3)['getConnectedSessions']();this['listenTo'](_0x3dbb5c,'sessionAdd:'+_0x431af3,(_0x1200fc,{session:_0x52ee7b})=>{_0x52ee7b['id']===_0x3dbb5c['mySessionId']&&(_0x1200fc['off'](),this['context']['plugins']['get']('Permissions')['setPermissions'](_0x52ee7b['permissions'],_0x431af3));}),_0x3dbb5c['register'](_0x431af3,_0x5390a3);}}async['_setUpService'](_0x3586dc){if(this['_services']['has'](_0x3586dc))throw new _0x849088('cloudservicescommentsadapter-connect-already-connected',null,{'channelId':_0x3586dc});const _0x2db107=this['context']['plugins']['get'](_0x41e2b),_0x23bcd4=new ot['CommentsService'](_0x3586dc);this['_services']['set'](_0x3586dc,_0x23bcd4),this['listenTo'](_0x23bcd4,'commentThreadAdded',(_0x2ecb45,_0x31866c)=>{const {commentThreadId:_0xd8f74c,documentId:_0x288012,context:_0x3905fb,attributes:_0x1e79ef,resolvedAt:_0x267dd9,resolvedBy:_0x10543c,comments:_0x4899f8}=_0x31866c;_0x2db107['getCommentThread'](_0xd8f74c)||_0x2db107['addCommentThread']({'threadId':_0xd8f74c,'channelId':_0x288012,'comments':_0x4899f8?_0x4899f8['map'](at):[],'context':_0x3905fb,'attributes':_0x1e79ef,'resolvedAt':_0x267dd9,'resolvedBy':_0x10543c,'isFromAdapter':!0x0});}),this['listenTo'](_0x23bcd4,'commentThreadUpdated',(_0x38f679,{commentThreadId:_0x11434d,documentId:_0x16d802,context:_0x27e3cf,unlinkedAt:_0x3b8036,attributes:_0x35999a})=>{_0x2db107['getCommentThread'](_0x11434d)&&_0x2db107['updateCommentThread']({'threadId':_0x11434d,'channelId':_0x16d802,'context':_0x27e3cf,'unlinkedAt':_0x3b8036,'attributes':_0x35999a,'isFromAdapter':!0x0});}),this['listenTo'](_0x23bcd4,'commentThreadResolved',(_0x28f264,{commentThreadId:_0x56358c,resolvedBy:_0x38d737,resolvedAt:_0x47d6c0})=>{const _0x57f936=_0x2db107['getCommentThread'](_0x56358c);_0x57f936&&_0x57f936['resolve']({'resolvedBy':_0x38d737,'resolvedAt':_0x47d6c0,'isFromAdapter':!0x0});}),this['listenTo'](_0x23bcd4,'commentThreadReopened',(_0x636d88,{commentThreadId:_0x251c76})=>{const _0x2fb44a=_0x2db107['getCommentThread'](_0x251c76);_0x2fb44a&&_0x2fb44a['reopen']({'isFromAdapter':!0x0});}),this['listenTo'](_0x23bcd4,'commentThreadRemoved',(_0x2b1171,{commentThreadId:_0x25e9d9})=>{const _0x5e06cb=_0x2db107['getCommentThread'](_0x25e9d9);_0x5e06cb&&_0x5e06cb['remove']({'isFromAdapter':!0x0});}),this['listenTo'](_0x23bcd4,'commentAdded',(_0x57eae8,_0x4a1840)=>{const _0x1d7a44=_0x4a1840['commentThreadId'],_0x52a37f=_0x2db107['getCommentThread'](_0x1d7a44);_0x52a37f&&_0x52a37f['addComment']({...at(_0x4a1840),'isFromAdapter':!0x0});}),this['listenTo'](_0x23bcd4,'commentUpdated',(_0x29ce74,{commentThreadId:_0x16e1c8,commentId:_0x158d8c,content:_0xa22073,attributes:_0x7fcdab})=>{const _0x44d370=_0x2db107['getCommentThread'](_0x16e1c8);if(_0x44d370){const _0x471fae=_0x44d370['getComment'](_0x158d8c);_0x471fae&&_0x471fae['update']({'content':_0xa22073,'attributes':_0x7fcdab,'isFromAdapter':!0x0});}}),this['listenTo'](_0x23bcd4,'commentRemoved',(_0x2c8141,{commentThreadId:_0x447eda,commentId:_0x1e49f2})=>{const _0x21ef8f=_0x2db107['getCommentThread'](_0x447eda);if(_0x21ef8f){const _0x5bffed=_0x21ef8f['getComment'](_0x1e49f2);_0x5bffed&&_0x5bffed['remove']({'isFromAdapter':!0x0});}}),await this['_connectService'](_0x3586dc);}['destroy'](){if(this['context']instanceof _0x4dfce7){const _0x2f4a8e=this['context']['config']['get']('collaboration.channelId');this['_terminateService'](_0x2f4a8e);}}['_terminateService'](_0x9d2266){if(!this['_services']['has'](_0x9d2266))throw new _0x849088('cloudservicescommentsadapter-disconnect-not-exist',null,{'channelId':_0x9d2266});this['_getService'](_0x9d2266)['disconnect'](),this['_services']['delete'](_0x9d2266);}async['reconnect'](){for(const _0x23b509 of this['_services']['keys']())await this['_connectService'](_0x23b509);if(this['context']instanceof _0x4dfce7){const _0xfe34d3=this['context']['config']['get']('collaboration.channelId'),_0x2f8055=this['context']['plugins']['get'](Y);_0x2f8055['unregister'](_0xfe34d3);const _0x452f97=await this['_services']['get'](_0xfe34d3)['getConnectedSessions']();_0x2f8055['register'](_0xfe34d3,_0x452f97);}}async['_connectService'](_0x36b9c6){const {connection:_0x245cf8}=this['context']['plugins']['get'](z),_0xf21f6c=this['context']['plugins']['get'](_0x41e2b),_0x2168fb=this['_services']['get'](_0x36b9c6),_0x29ebac=await _0x2168fb['connect'](_0x245cf8);await this['_fetchMissingUsersForThreads'](_0x29ebac);const _0x109d56=new Set(Array['from'](_0xf21f6c['getCommentThreads']({'channelId':_0x36b9c6}),_0xfed2c0=>_0xfed2c0['id']));for(const _0x28a7ae of _0x29ebac)_0x28a7ae['deletedAt']||_0x109d56['delete'](_0x28a7ae['commentThreadId']);for(const _0xbd6f67 of _0x109d56)_0xf21f6c['getCommentThread'](_0xbd6f67)['remove']({'isFromAdapter':!0x0});for(const _0x49582c of _0x29ebac){let _0xbbf2ae=_0xf21f6c['getCommentThread'](_0x49582c['commentThreadId']);const {commentThreadId:_0x497347,context:_0x5a6d5a,attributes:_0x1cbfae,resolvedBy:_0x3b6891,resolvedAt:_0x3757e9,unlinkedAt:_0x4af8bf,deletedAt:_0x23f3a0}=_0x49582c;if(_0x23f3a0)continue;_0xbbf2ae||(_0xbbf2ae=_0xf21f6c['addCommentThread']({'channelId':_0x36b9c6,'threadId':_0x497347,'context':_0x5a6d5a,'attributes':_0x1cbfae||{},'resolvedBy':_0x3b6891,'resolvedAt':_0x3757e9,'unlinkedAt':_0x4af8bf,'isFromAdapter':!0x0}));const _0x573e18=new Set(Array['from'](_0xbbf2ae['comments'],_0x13f620=>_0x13f620['id']));for(const _0x405fbb of _0x49582c['comments'])_0x573e18['delete'](_0x405fbb['commentId']);for(const _0x571ec4 of _0x573e18)_0xbbf2ae['getComment'](_0x571ec4)['remove']({'isFromAdapter':!0x0});for(const _0x48f6ec of _0x49582c['comments']){const _0x238621=_0xbbf2ae['getComment'](_0x48f6ec['commentId']);_0x238621?_0x238621['content']!==_0x48f6ec['content']&&_0x238621['update']({'content':_0x48f6ec['content'],'isFromAdapter':!0x0}):_0xbbf2ae['addComment'](Object['assign'](at(_0x48f6ec),{'isFromAdapter':!0x0}));}}}['_getService'](_0x3b44fa){if(!this['_services']['has'](_0x3b44fa))throw new _0x849088('cloudservicescommentsadapter-service-not-exist',null,{'channelId':_0x3b44fa});return this['_services']['get'](_0x3b44fa);}async['_fetchMissingUsersForThreads'](_0x3f40cc){const _0x55ed4c=this['context']['plugins']['get'](_0x48e39d),{connection:_0x272fd1}=this['context']['plugins']['get'](z),_0x396439=new Set();for(const {resolvedBy:_0x166cbc,comments:_0x22fac2}of _0x3f40cc){_0x166cbc&&!_0x55ed4c['getUser'](_0x166cbc)&&_0x396439['add'](_0x166cbc);for(const {userId:_0x14dd98}of _0x22fac2)_0x55ed4c['getUser'](_0x14dd98)||_0x396439['add'](_0x14dd98);}if(0x0===_0x396439['size'])return;const _0x11ccc7=await _0xbe5ea0['getMany'](_0x272fd1,Array['from'](_0x396439));for(const _0x35eae0 of _0x11ccc7)_0x55ed4c['getUser'](_0x35eae0['id'])||_0x55ed4c['addUser'](_0x35eae0);}}async function rt(_0x5c599e){if('404'!==_0x5c599e['code'])throw _0x5c599e;}function ct(_0x4d5953){if((_0x44a9b6=_0x4d5953)['message']['startsWith']('cloud-services-internal-error:\x20Comments\x20Service\x20is\x20not\x20connected.')||_0x44a9b6['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x44a9b6['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.'))return new Promise(()=>{});var _0x44a9b6;throw _0x4d5953;}function at(_0x17c2b7){return{'threadId':_0x17c2b7['commentThreadId'],'commentId':_0x17c2b7['commentId'],'content':_0x17c2b7['content'],'createdAt':_0x17c2b7['createdAt'],'authorId':_0x17c2b7['userId'],'attributes':_0x17c2b7['attributes']||{}};}class ht extends _0x1d5197{static ['TrackChangesService']=/* #__PURE__ -- @preserve */
|
|
27
|
-
((()=>
|
|
28
|
-
((()=>_0x5ddde9)());['_lastRequestId'];['_revisionTracker'];['_revisionHistoryService'];['_oldOffset'];static get['requires'](){return[z,tt,_0x640475,Y,_0x48e39d];}static get['pluginName'](){return'CloudServicesRevisionHistoryAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x516aa2){super(_0x516aa2);const _0x36c0fb=this['editor']['config']['get']('collaboration.channelId');this['_lastRequestId']=null,this['_revisionTracker']=this['editor']['plugins']['get']('RevisionTracker'),this['_revisionHistoryService']=new mt['RevisionHistoryService'](_0x36c0fb);}async['init'](){const _0x4d3022=this['editor']['plugins']['get'](tt),_0x573d08=_0x4d3022['serverHistory'],_0x27767c=this['editor']['plugins']['get'](z);this['_revisionTracker']['setSource']({'history':_0x573d08,'getLatestVersion':()=>this['_getLatestVersion'](),'getCurrentRevisionId':()=>_0x4d3022['sessionId']});const _0x4a6c2d=this['editor']['config']['get']('cloudServices.bundleVersion')||_0x46501e,_0x4a991f=await _0x5a7399['isBundleUploaded'](_0x27767c['connection'],_0x4a6c2d);this['editor']['plugins']['get'](_0x640475)['adapter']={'getRevision':async({revisionId:_0x9742bc})=>(await this['_waitForServiceReady'](),await this['_revisionHistoryService']['getRevision'](_0x9742bc)),'updateRevisions':async _0x37fd01=>{await this['_waitForServiceReady']();const _0x3dfc7c=this['_revisionTracker']['currentRevision'];if(_0x4a991f&&0x1===_0x37fd01['length']&&_0x37fd01[0x0]['id']===_0x3dfc7c['id'])return _0x37fd01;for(const _0x9a2919 of _0x37fd01)_0x9a2919['id']===_0x3dfc7c['id']&&(_0x9a2919['isEmptyCurrent']=_0x9a2919['fromVersion']===_0x9a2919['toVersion']);return this['_revisionHistoryService']['updateRevisions'](_0x37fd01,this['_lastRequestId'])['then'](_0x42a081=>(this['_lastRequestId']=_0x42a081,_0x37fd01))['catch'](_0x3ebe5e=>{if(pt(_0x3ebe5e)||'400'===_0x3ebe5e['code']&&void 0x0!==_0x3ebe5e['data']['wrongRequestId']){for(const _0x42a978 of _0x37fd01){!this['_revisionTracker']['repository']['getRevision'](_0x42a978['id'])||this['_revisionTracker']['_bufferUpdate'](_0x42a978['id'],_0x42a978,!0x1);}if(pt(_0x3ebe5e))throw _0x3ebe5e;return _0x37fd01;}throw _0x3ebe5e;});}},this['listenTo'](this['_revisionHistoryService'],'revisionsUpdated',(_0x20a969,{revisionsData:_0xf58d85,requestId:_0x33ce08})=>{Math['max'](..._0xf58d85['map'](_0xf9d04e=>_0xf9d04e['toVersion']))>this['_getLatestVersionFromServerOperations']()-0x1?this['_getLatestVersion']()['then'](()=>{this['_handleRevisionsUpdate'](_0xf58d85,_0x33ce08);}):this['_handleRevisionsUpdate'](_0xf58d85,_0x33ce08);});const {revisions:_0x443fe9,requestId:_0x3cbe4c}=await this['_revisionHistoryService']['connect'](_0x27767c['connection']);_0x27767c['addToReconnectionStack'](this),this['_lastRequestId']=_0x3cbe4c,await this['_fetchMissingUsers'](_0x443fe9);for(const _0x33d451 of _0x443fe9)this['_revisionTracker']['addRevisionData'](_0x33d451);this['listenTo'](_0x4d3022,'change:_isConnected',(_0x54d50f,_0x471565,_0x164840)=>{_0x164840&&(this['_oldOffset']=_0x4d3022['_offset'],_0x54d50f['off']());}),this['_revisionTracker']['bind']('isEnabled')['to'](_0x27767c,'state',_0x59e00a=>_0x59e00a===_0x169e89['CONNECTED']);}async['reconnect'](){const _0x461535=this['editor']['plugins']['get'](z),_0x4a2b30=this['editor']['plugins']['get'](tt),_0x886694=async()=>{const _0x4bfc80=this['_revisionTracker']['currentRevision'],_0x440b25=_0x4bfc80['id'],_0x5a9f91=_0x440b25!==_0x4a2b30['sessionId'];if(_0x5a9f91){const _0x3530df=_0x4a2b30['_offset']-this['_oldOffset'],_0x3b0e8b=this['_getLatestVersionFromServerOperations']();this['_revisionTracker']['_revisionDataBuilder']['reInit']();if(_0x4bfc80['toVersion']+_0x3530df!==_0x3b0e8b){const _0x4bab6b=_0x4bfc80['fromVersion']+_0x3530df,_0x4379b7=this['editor']['plugins']['get'](_0x48e39d),_0x79c857=this['_revisionTracker']['buildRevisionData']({'revision':_0x4bfc80,'from':_0x4bab6b,'to':_0x3b0e8b});_0x79c857['id']=_0x4bfc80['id'];const _0x32a9bb=_0x79c857['authorsIds']['map'](_0x2d3573=>_0x4379b7['getUser'](_0x2d3573));_0x4bfc80['_update']({..._0x79c857,'authors':_0x32a9bb},!0x0),this['_revisionTracker']['_bufferUpdate'](_0x4bfc80['id'],_0x79c857,!0x0);}this['_revisionTracker']['_startingVersion']=_0x3b0e8b,(_0x4bfc80['toVersion']===_0x4bfc80['fromVersion']&&!this['_revisionTracker']['_bufferedUpdates']['has'](_0x440b25)&&this['_revisionTracker']['repository']['_revisions']['remove'](_0x440b25),this['_revisionTracker']['_createCurrentRevision'](_0x3b0e8b));}const {revisions:_0x1adec9,requestId:_0x423dc7}=await this['_revisionHistoryService']['reconnect'](_0x461535['connection'],this['_lastRequestId']);_0x5a9f91&&_0x1adec9['length']>0x0?_0x4a2b30['_handleReconnectionError']():(await this['_fetchMissingUsers'](_0x1adec9),this['_handleRevisionsUpdate'](_0x1adec9,_0x423dc7),this['_revisionTracker']['sendBufferedUpdates']());};return _0x4a2b30['_isConnected']?_0x886694():new Promise((_0x169afb,_0x987710)=>{_0x4a2b30['once']('change:_isConnected',()=>{_0x886694()['then'](_0x169afb)['catch'](_0x987710);});});}['destroy'](){super['destroy']();}async['_waitForServiceReady'](){this['_revisionHistoryService']['isConnected']||await new Promise(_0x5c2b9d=>{this['listenTo'](this['_revisionHistoryService'],'connected',_0x5ceda4=>{_0x5ceda4['off'](),_0x5c2b9d();});});}['_getLatestVersionFromServerOperations'](){const _0x26028d=this['editor']['plugins']['get'](tt)['serverHistory']['getOperations']()['reverse']();for(const _0x38ea08 of _0x26028d)if('marker'!==_0x38ea08['type']||_0x38ea08['affectsData'])return _0x38ea08['baseVersion']+0x1;}['_getLatestVersion'](){const _0x1b618d=this['editor']['plugins']['get'](tt);return new Promise(_0x4e5fe2=>{_0x1b618d['_isPendingUpdate']?_0x1b618d['once']('change:_isPendingUpdate',()=>{_0x4e5fe2(this['_getLatestVersionFromServerOperations']());}):_0x4e5fe2(this['_getLatestVersionFromServerOperations']());});}['_handleRevisionsUpdate'](_0xd511b6,_0x3e866c){const _0x3ab700=this['_revisionTracker']['repository'];this['_lastRequestId']=_0x3e866c;for(const _0x3ef048 of _0xd511b6){const _0x3bfce0=_0x3ab700['getRevision'](_0x3ef048['id']);if(_0x3bfce0){if((_0x3ef048['fromVersion']||_0x3ef048['toVersion'])&&(_0x3ef048['diffData']=null),_0x3bfce0===this['_revisionTracker']['currentRevision']){const _0x128c54=Math['max'](_0x3bfce0['toVersion'],_0x3ef048['toVersion']),_0x73cac9=Math['max'](_0x3bfce0['fromVersion'],_0x3ef048['fromVersion']);let _0x189f3d;_0x3bfce0['toVersion']===_0x3ef048['toVersion']&&_0x3bfce0['fromVersion']===_0x3ef048['fromVersion']?(_0x189f3d=!0x0,this['_preventResendingRevisionData'](_0x3ef048)):_0x3ef048['toVersion']===_0x128c54&&_0x3ef048['fromVersion']===_0x73cac9?_0x189f3d=!0x1:(_0x3bfce0['toVersion']===_0x128c54&&_0x3bfce0['fromVersion']===_0x73cac9||this['_fixRevision']({'revision':_0x3bfce0,'from':_0x73cac9,'to':_0x128c54}),_0x189f3d=!0x0),_0x189f3d&&(delete _0x3ef048['fromVersion'],delete _0x3ef048['toVersion'],delete _0x3ef048['diffData'],delete _0x3ef048['createdAt'],delete _0x3ef048['authorsIds']);}this['_revisionTracker']['setRevisionData'](_0x3ef048),this['_preventResendingRevisionData'](_0x3ef048);}else this['_revisionTracker']['addRevisionData'](_0x3ef048);}const _0x569501=_0x3ab700['getRevisions']();_0x569501['reverse']();for(let _0x4823ba=0x0;_0x4823ba<_0x569501['length']-0x1;_0x4823ba++){const _0x523234=_0x569501[_0x4823ba],_0x2f94b8=_0x569501[_0x4823ba+0x1];if(_0x523234['fromVersion']<_0x2f94b8['toVersion']){const _0x216a6a=_0x2f94b8['toVersion'],_0x5ce45c=Math['max'](_0x216a6a,_0x523234['toVersion']);this['_fixRevision']({'revision':_0x523234,'from':_0x216a6a,'to':_0x5ce45c});}}}['_fixRevision']({revision:_0x3e3a0a,from:_0x4a3356,to:_0x402156}={}){const _0x1e372b=this['editor']['plugins']['get'](_0x48e39d),_0x3e29b3=this['_revisionTracker']['buildRevisionData']({'revision':_0x3e3a0a,'from':_0x4a3356,'to':_0x402156});_0x3e29b3['authors']=_0x3e29b3['authorsIds']['map'](_0x4d1901=>_0x1e372b['getUser'](_0x4d1901)),_0x3e3a0a['_update'](_0x3e29b3);}['_preventResendingRevisionData'](_0x173044){const _0x4a596b={};_0x4a596b['id']=_0x173044['id'];for(const _0xf13c7e of Object['keys'](_0x173044))'id'!==_0xf13c7e&&(_0x4a596b[_0xf13c7e]=void 0x0);this['_revisionTracker']['_bufferUpdate'](_0x4a596b['id'],_0x4a596b,!0x0);}async['_fetchMissingUsers'](_0xa28c14){const _0x3e075c=this['editor']['plugins']['get'](_0x48e39d),{connection:_0x4ae1b5}=this['editor']['plugins']['get'](z),_0x2b490e=new Set();for(const _0x548047 of _0xa28c14){for(const _0x594003 of _0x548047['authorsIds'])_0x58ae17(_0x594003);_0x548047['creatorId']&&_0x58ae17(_0x548047['creatorId']);}if(0x0===_0x2b490e['size'])return;const _0x281027=await _0xbe5ea0['getMany'](_0x4ae1b5,Array['from'](_0x2b490e));for(const _0x26213f of _0x281027)_0x3e075c['getUser'](_0x26213f['id'])||_0x3e075c['addUser'](_0x26213f);function _0x58ae17(_0x173794){_0x3e075c['getUser'](_0x173794)||_0x2b490e['add'](_0x173794);}}}function pt(_0x5c93ff){return _0x5c93ff['message']['startsWith']('cloud-services-internal-error:\x20Revision\x20History\x20Service\x20is\x20not\x20connected.')||_0x5c93ff['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x5c93ff['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}class gt extends _0x1d5197{static get['requires'](){return[_0x640475,mt,nt];}static get['pluginName'](){return'RealTimeCollaborativeRevisionHistory';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}class wt extends _0x4465b8{['_collapseAt'];constructor(_0x1bc7da,_0x23c5d8=0x6){super(_0x1bc7da);const _0x5d6b0c=this['bindTemplate'];this['set']('isHidden',!0x0),this['set']('usersCount',0x0),this['_collapseAt']=_0x23c5d8,this['bind']('isHidden')['to'](this,'usersCount',_0xe0b3c6=>_0xe0b3c6<_0x23c5d8),this['setTemplate']({'tag':'div','attributes':{'class':['ck','ck-presence-list__list-item',_0x5d6b0c['if']('isHidden','ck-presence-list__counter--hidden')],'role':'listitem'},'children':[{'tag':'div','attributes':{'class':['ck','ck-presence-list__users-counter']},'children':[{'tag':'div','attributes':{'class':['ck','ck-presence-list__users-counter__text']},'children':[{'text':_0x5d6b0c['to']('usersCount',_0x3d096b=>'+'+(_0x3d096b-this['_collapseAt']+0x2)['toString']())}]}]}]});}}class vt extends _0x4465b8{['items'];['keystrokes'];constructor(_0x3314a8){super(_0x3314a8);const _0x2f8664=this['bindTemplate'];this['items']=this['createCollection'](),this['keystrokes']=new _0x4efd8d(),this['set']({'hasPopup':!0x1,'isExpanded':!0x1}),this['setTemplate']({'tag':'div','attributes':{'aria-haspopup':_0x2f8664['if']('hasPopup'),'aria-expanded':_0x2f8664['to']('isExpanded',_0x3c5527=>this['hasPopup']&&String(_0x3c5527)),'aria-label':_0x2f8664['to']('hasPopup',_0x34262c=>X(_0x3314a8,_0x34262c?'Collapsed\x20connected\x20users\x20list\x20(press\x20ENTER\x20to\x20open\x20it)':'Connected\x20users\x20list')),'role':'list','tabindex':_0x2f8664['to']('hasPopup',_0x44c473=>!!_0x44c473&&0x0),'class':['ck','ck-presence-list__list']},'children':this['items'],'on':{'mouseenter':_0x2f8664['to'](()=>this['fire']('presencelist:show')),'mouseleave':_0x2f8664['to'](_0x35339e=>{const _0x6279e7=_0x35339e,_0x10ddb7=document['querySelector']('.ck-presence-list__dropdown-list'),_0x1107a8=document['querySelector']('.ck-balloon-panel_with-arrow');_0x10ddb7?.['contains'](_0x6279e7['relatedTarget'])||_0x1107a8?.['contains'](_0x6279e7['relatedTarget'])||this['fire']('presencelist:hide');})}}),this['on']('change:hasPopup',(_0x232b8f,_0xd26640,_0x5bd970)=>{this['element']&&(_0x5bd970?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 _t extends _0x4465b8{['counterView'];['inlineListView'];constructor(_0x5ed174,_0x4cf4a6=0x6){super(_0x5ed174);const _0x58acf7=this['bindTemplate'];this['set']('isCollapsed',!0x0),this['counterView']=new wt(this['locale'],_0x4cf4a6),this['inlineListView']=new vt(_0x5ed174),this['inlineListView']['bind']('hasPopup')['to'](this,'isCollapsed'),this['listenTo'](this['inlineListView']['items'],'change',()=>{for(const _0x310503 of this['inlineListView']['items'])_0x310503['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',_0x58acf7['if']('isCollapsed','ck-presence-list--collapsed')]},'children':[this['inlineListView']]});}}class yt extends _0x4465b8{['listWrapperView'];constructor(_0xa19980,_0x49e06e){super(_0xa19980);const _0x48b46e=this['bindTemplate'];this['listWrapperView']=new bt(_0xa19980,_0x49e06e),this['setTemplate']({'tag':'div','attributes':{'tabindex':-0x1,'role':'application','class':['ck','ck-presence-list__dropdown-list'],'aria-label':X(_0xa19980,'Connected\x20users\x20list\x20dropdown\x20menu')},'children':[this['listWrapperView']],'on':{'mouseleave':_0x48b46e['to'](_0x36b955=>{const _0x24aa1f=_0x36b955,_0x5520be=document['querySelector']('.ck-presence-list__list'),_0x582be5=document['querySelector']('.ck-balloon-panel_with-arrow');_0x5520be?.['contains'](_0x24aa1f['relatedTarget'])||_0x582be5?.['contains'](_0x24aa1f['relatedTarget'])||this['fire']('presencelist:hide');})}});}}class bt extends _0x493848{constructor(_0x456191,_0x113ca1){super(_0x456191);const _0x5619d3=this['bindTemplate'];this['set']('_isScrollable',!0x1),this['setTemplate']({'tag':_0x113ca1?'div':'ul','attributes':{'class':['ck','ck-reset','ck-list','ck-presence-list__dropdown-list-wrapper',_0x5619d3['if']('_isScrollable','ck-presence-list__dropdown-list-wrapper_scrollable')],'role':_0x5619d3['to']('role'),'aria-label':_0x5619d3['to']('ariaLabel'),'aria-labelledby':_0x5619d3['to']('ariaLabelledBy')},'children':this['items']}),this['listenTo'](_0x29912a['window'],'resize',()=>this['checkIfScrollable']()),this['items']['on']('change',()=>this['checkIfScrollable']());}['render'](){super['render'](),this['checkIfScrollable']();}['checkIfScrollable'](){const _0x1b9cd8=this['element'];_0x1b9cd8&&(this['_isScrollable']=Math['max'](_0x1b9cd8['scrollHeight'],_0x1b9cd8['clientHeight'])>0.8*window['innerHeight']);}}class kt extends _0x1aed03{['userView'];constructor(_0x4fdd5a,_0x84c695,_0x44e128){super(_0x4fdd5a);const _0x2ebbb4=this['bindTemplate'];this['userView']=new _0x4530a1(_0x4fdd5a,_0x84c695);const _0x3152d3={'tag':'li','attributes':{'class':['ck','ck-presence-list__dropdown-list-item'],'tabindex':-0x1,'role':'presentation','aria-label':_0x84c695['name']},'children':[this['userView'],{'tag':'span','attributes':{'class':['ck','ck-user__full-name']},'children':[{'text':_0x84c695['name']}]},{'tag':'span','attributes':{'class':['ck','ck-presence-list__marker',_0x84c695['color']['getBackgroundColorClass']()],'style':{'--ck-user-color':_0x84c695['color']['getColorVariable'](),'--ck-user-color-alpha':_0x84c695['color']['getColorAlphaVariable']()},'aria-hidden':'true'}}]};_0x44e128&&(_0x3152d3['tag']='button',_0x3152d3['on']={'click':_0x2ebbb4['to'](()=>this['fire']('execute'))}),this['setTemplate'](_0x3152d3);}['focus'](){this['element']['focus']();}}class It extends _0x4465b8{['userView'];['markerView'];constructor(_0x4ef511,_0x5c94de,_0xfc546a){super(_0x4ef511);const _0x337697=this['bindTemplate'];this['set']('isFocusable',!0x1),this['set']('hasTooltip',!0x0),this['set']('tooltipPosition',''),this['userView']=new _0x4530a1(_0x4ef511,_0x5c94de),this['markerView']=new St(_0x4ef511,_0x5c94de);const _0x259167=new _0x1be434(_0x4ef511);_0x259167['template']['tag']='span',_0x259167['text']=_0x5c94de['name'];const _0x2598de={'tag':'div','attributes':{'class':['ck','ck-presence-list__list-item'],'role':'listitem','tabindex':_0x337697['to']('isFocusable',_0xc20348=>!!_0xc20348&&0x0),'aria-labelledby':_0x259167['id'],'data-cke-tooltip-text':this['userView']['name'],'data-cke-tooltip-position':_0x337697['to']('tooltipPosition'),'data-cke-tooltip-disabled':_0x337697['to']('hasTooltip',_0x4d5796=>!_0x4d5796),'data-cke-tooltip-class':'ck-presence-list__list-item__tooltip'},'children':[this['userView'],this['markerView'],_0x259167]};_0xfc546a&&(_0x2598de['tag']='button',_0x2598de['on']={'click':_0x337697['to'](()=>this['fire']('execute'))}),this['setTemplate'](_0x2598de);}}class St extends _0x4465b8{constructor(_0x2ab3e3,_0x1e922f){super(_0x2ab3e3),this['setTemplate']({'tag':'span','attributes':{'class':['ck','ck-presence-list__marker',_0x1e922f['color']['getBackgroundColorClass']()],'style':{'--ck-user-color':_0x1e922f['color']['getColorVariable'](),'--ck-user-color-alpha':_0x1e922f['color']['getColorAlphaVariable']()},'aria-hidden':'true'}});}}const Tt={'collapseAt':0x6,'displayMe':!0x0};class At extends _0x39cb58{['currentDisplayedUsers'];['balloonPanelView'];['view'];['presenceDropdownView'];['_bodyCollection']=null;static get['pluginName'](){return'PresenceListUI';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x72abf0){super(_0x72abf0),this['context']['config']['define']('presenceList',Tt);const _0x45e346=_0x72abf0['config']['get']('presenceList.collapseAt');if('number'!=typeof _0x45e346)throw new _0x849088('presencelist-collapseat-invalid-format',this);if(_0x45e346<0x1)throw new _0x849088('presencelist-collapseat-invalid-format',this);this['_allConnectedUsers']=this['context']['plugins']['get'](Y)['allConnectedUsers'],this['set']('usersCount',0x0),this['currentDisplayedUsers']=new _0x432b74(),this['balloonPanelView']=new _0x49fda1(),this['balloonPanelView']['class']='ck\x20ck-presence-list__balloon',this['view']=this['_createView'](),this['presenceDropdownView']=void 0x0;}static get['requires'](){return[Y];}['init'](){for(const _0xf0467a of this['_allConnectedUsers'])this['_handleUserAdd'](_0xf0467a);this['listenTo'](this['_allConnectedUsers'],'add',(_0x4e8753,_0x9fb91a)=>{this['_handleUserAdd'](_0x9fb91a);}),this['listenTo'](this['_allConnectedUsers'],'remove',(_0x2a935d,_0x2f585f)=>{this['_handleUserRemove'](_0x2f585f);});}['_createView'](){const _0x13c48b=this['context'],_0x11196c=new _t(this['context']['locale'],this['context']['config']['get']('presenceList.collapseAt')),_0x29843a=this['balloonPanelView'];if(!_0x2b54d6(_0x13c48b['config']['get']('presenceList.container')))throw new _0x849088('presencelist-missing-container',this);return _0x11196c['counterView']['bind']('usersCount')['to'](this),_0x11196c['bind']('isCollapsed')['to'](this,'usersCount',_0x569e6c=>{const {collapseAt:_0x438a17}=_0x13c48b['config']['get']('presenceList'),_0x406b4d=_0x569e6c>=_0x438a17;if(_0x406b4d&&!_0x11196c['inlineListView']['items']['find'](_0x516d1a=>_0x516d1a instanceof wt)){const _0x160133=this['context']['config']['get']('presenceList.collapseAt')-0x1;this['currentDisplayedUsers']['length']==_0x160133&&this['currentDisplayedUsers']['length']>0x1&&this['currentDisplayedUsers']['remove'](this['currentDisplayedUsers']['length']-0x1),_0x11196c['inlineListView']['items']['add'](_0x11196c['counterView']);}return _0x406b4d||this['hideDropdown'](),_0x406b4d;}),_0x11196c['inlineListView']['items']['bindTo'](this['currentDisplayedUsers'])['using'](_0x307313=>{const _0x178312=_0x13c48b['config']['get']('presenceList'),_0x4f0a08=new It(_0x13c48b['locale'],_0x307313,!!_0x178312['onClick']);return _0x4f0a08['bind']('hasTooltip')['to'](_0x11196c,'isCollapsed',_0x3ee0c0=>!_0x3ee0c0),_0x4f0a08['bind']('isFocusable')['to'](_0x11196c,'isCollapsed',_0x469b15=>!_0x469b15),_0x178312['onClick']&&this['listenTo'](_0x4f0a08,'execute',()=>{this['view']['isCollapsed']||_0x178312['onClick'](_0x307313,_0x4f0a08['element']);}),_0x4f0a08;}),this['listenTo'](_0x11196c['inlineListView'],'presencelist:show',()=>{this['view']['isCollapsed']&&this['showDropdown']();}),this['listenTo'](_0x11196c['inlineListView'],'presencelist:hide',()=>{this['presenceDropdownView']&&this['hideDropdown']();}),_0x11196c['inlineListView']['keystrokes']['set']('Enter',(_0x77c032,_0x453060)=>{this['view']['isCollapsed']&&(this['showDropdown'](),_0x453060());}),_0x11196c['render'](),_0x29843a['render'](),_0x5ef9f9({'emitter':_0x11196c,'activator':()=>_0x29843a['isVisible'],'contextElements':[_0x29843a['element'],_0x11196c['inlineListView']['element']],'callback':()=>this['hideDropdown']()}),_0x13c48b['config']['get']('presenceList.container')['appendChild'](_0x11196c['element']),this['_bodyCollection']=new _0x208c83(this['context']['locale']),this['_bodyCollection']['attachToDom'](),this['_bodyCollection']['add'](this['balloonPanelView']),_0x11196c;}['_handleUserAdd'](_0x3c66c6){if(!this['context']['config']['get']('presenceList.displayMe')&&_0x3c66c6['isMe'])return;const _0x4db044=this['context']['config']['get']('presenceList.collapseAt')-0x1;for(this['usersCount']++;this['currentDisplayedUsers']['length']>=_0x4db044-(this['view']['isCollapsed']?0x1:0x0)&&this['currentDisplayedUsers']['length']>0x1;)this['currentDisplayedUsers']['remove'](0x1);const _0x2b022=_0x3c66c6['isMe']?0x0:this['currentDisplayedUsers']['length'];this['currentDisplayedUsers']['add'](_0x3c66c6,_0x2b022);}['_handleUserRemove'](_0x2ff49c){this['usersCount']--;const {collapseAt:_0x24d364}=this['context']['config']['get']('presenceList'),_0x210d50=this['usersCount']>=_0x24d364;if(this['currentDisplayedUsers']['get'](_0x2ff49c['id']))this['currentDisplayedUsers']['remove'](_0x2ff49c['id']);else{if(_0x210d50&&this['currentDisplayedUsers']['length']+0x1===_0x24d364-0x1)return;}if(this['currentDisplayedUsers']['length']+(_0x210d50?0x1:0x0)<this['usersCount']){for(const _0x45d4cf of Array['from'](this['_allConnectedUsers'])['reverse']())if(!this['currentDisplayedUsers']['get'](_0x45d4cf['id'])&&(this['currentDisplayedUsers']['add'](_0x45d4cf,Math['min'](this['currentDisplayedUsers']['length']-(_0x210d50?0x1:0x0),0x1)),this['currentDisplayedUsers']['length']+(_0x210d50?0x1:0x0)===_0x24d364-0x1))return;}}['showDropdown'](){if(this['presenceDropdownView'])return;const _0x459df4=this['context']['config']['get']('presenceList');this['presenceDropdownView']=new yt(this['context']['locale'],!!_0x459df4['onClick']),this['view']['inlineListView']['isExpanded']=!0x0,this['listenTo'](this['presenceDropdownView'],'presencelist:hide',()=>{this['presenceDropdownView']&&this['hideDropdown']();});const {listWrapperView:_0x7d3234}=this['presenceDropdownView'];_0x7d3234['items']['bindTo'](this['_allConnectedUsers'])['using'](_0x3c1f05=>{if(!_0x459df4['displayMe']&&_0x3c1f05['isMe'])return null;const _0x33a60a=new kt(this['context']['locale'],_0x3c1f05,!!_0x459df4['onClick']);return _0x459df4['onClick']&&this['listenTo'](_0x33a60a,'execute',()=>{_0x459df4['onClick'](_0x3c1f05,_0x33a60a['element']);}),_0x33a60a;}),this['balloonPanelView']['content']['add'](this['presenceDropdownView']),this['balloonPanelView']['pin']({'target':this['view']['inlineListView']['element']}),_0x7d3234['focus'](),_0x7d3234['checkIfScrollable']();const _0x367df0=(_0x5c7294,_0x300afe)=>{this['hideDropdown'](),this['view']['inlineListView']['focus'](),_0x300afe();};_0x7d3234['keystrokes']['set']('Esc',_0x367df0),_0x7d3234['keystrokes']['set']('Shift+Tab',_0x367df0),_0x7d3234['keystrokes']['set']('Tab',(_0x114e39,_0x142b19)=>{!function(_0x319207){const _0x515c0a=['a','button','input','select','textarea','[tabindex]','[contenteditable]']['map'](_0x269df9=>_0x269df9+':not([disabled]):not([tabindex=\x22-1\x22])')['join'](','),_0x656ebd=[...document['body']['querySelectorAll'](_0x515c0a)]['filter'](_0x418fa9=>_0x418fa9===document['activeElement']||_0x418fa9['offsetWidth']+_0x418fa9['offsetHeight']>0x0)['sort']((_0x237fa5,_0x31f2ef)=>(_0x237fa5['tabIndex']||0x0)-(_0x31f2ef['tabIndex']||0x0)),_0x39e3ff=_0x656ebd['indexOf'](_0x319207),_0x4e7510=_0x656ebd[(_0x39e3ff+0x1)%_0x656ebd['length']];_0x4e7510&&_0x4e7510['focus']();}(this['view']['element']),this['hideDropdown'](),_0x142b19();}),_0x7d3234['focusTracker']['add'](this['view']['element']),_0x7d3234['focusTracker']['on']('change:isFocused',(_0x4b112f,_0x429eca,_0x30f9a8)=>{_0x30f9a8||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 Pt extends _0x39cb58{static get['requires'](){return[Y,At];}static get['pluginName'](){return'PresenceList';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}export{ot as CloudServicesCommentsAdapter,mt as CloudServicesRevisionHistoryAdapter,ht as CloudServicesTrackChangesAdapter,Pt as PresenceList,At as PresenceListUI,tt as RealTimeCollaborationClient,ut as RealTimeCollaborativeComments,nt as RealTimeCollaborativeEditing,gt as RealTimeCollaborativeRevisionHistory,ft as RealTimeCollaborativeTrackChanges,Y as Sessions,z as WebSocketGateway};
|
|
23
|
+
import{ContextPlugin as _0x6b13bf,Plugin as _0x512c3b,PendingActions as _0x4c8145,Context as _0x59ae87}from'@ckeditor/ckeditor5-core/dist/index.js';import{DomEmitterMixin as _0x238e54,CKEditorError as _0x5d88de,Collection as _0x37a42c,global as _0x57454e,version as _0x3e5cdd,uid as _0x487873,KeystrokeHandler as _0x2864f3}from'@ckeditor/ckeditor5-utils/dist/index.js';import{Notification as _0x4edca5,View as _0x45d855,ListView as _0x28fa98,ListItemView as _0xbb6ce2,LabelView as _0x2db3b4,BalloonPanelView as _0x246412,clickOutsideHandler as _0x429dd3,BodyCollection as _0x3c32f1}from'@ckeditor/ckeditor5-ui/dist/index.js';import{ModelLiveRange as _0x39b5f6,History as _0x3e3e59,NoOperation as _0xb173b1,InsertOperation as _0x5f5a5c,MarkerOperation as _0x561ae5,RootAttributeOperation as _0x694689,transformOperationSets as _0x4a9acb,OperationFactory as _0x350a65}from'@ckeditor/ckeditor5-engine/dist/index.js';import{CloudServices as _0xa5e6d9}from'@ckeditor/ckeditor5-cloud-services/dist/index.js';import{WebSocketGateway as _0x496e3e,WEB_SOCKET_GATEWAY_STATES as _0x4f3cbc,CollaborativeEditingService as _0x456026,User as _0x2c2031,CommentsService as _0xad8fa8,TrackChangesService as _0x5ba1eb,RevisionHistoryService as _0x1e91e1,EditorService as _0x19bfcd}from'@ckeditor/ckeditor-cloud-services-collaboration';import{Users as _0x3847b0,UserView as _0x35e11e}from'@ckeditor/ckeditor5-collaboration-core/dist/index.js';import{Compressor as _0x77fc10}from'@ckeditor/ckeditor5-operations-compressor';import{TrackChangesEditing as _0x107d71,TrackChanges as _0x26b3cc}from'@ckeditor/ckeditor5-track-changes/dist/index.js';import{CommentsRepository as _0x3cd3b6,Comments as _0x380a1c,CommentsEditing as _0x204e01}from'@ckeditor/ckeditor5-comments/dist/index.js';import{RevisionHistory as _0x523413}from'@ckeditor/ckeditor5-revision-history/dist/index.js';import{isElement as _0xf133dc}from'es-toolkit/compat';class z extends _0x6b13bf{static ['WebSocketGateway']=/* #__PURE__ -- @preserve */
|
|
24
|
+
((()=>_0x496e3e)());static ['initialReconnectionInterval']=0x3e8;['connection'];['_reconnectionStack'];['_shouldPluginsReconnect'];['_domEmitter'];static get['requires'](){return[_0xa5e6d9,_0x4edca5];}static get['pluginName'](){return'WebSocketGateway';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x47f6b8){super(_0x47f6b8),this['set']('state',_0x4f3cbc['CONNECTED']),this['set']('_isBrowserOffline',!0x1),this['_reconnectionStack']=new Set(),this['_shouldPluginsReconnect']=!0x1,this['_domEmitter']=new(_0x238e54())();}['init'](){const _0x5ef00a=this['context'],_0x58bcf4=_0x5ef00a['plugins']['get'](_0xa5e6d9),_0x5e6a84=_0x5ef00a['plugins']['get'](_0x4edca5);if(!_0x58bcf4['token'])throw new _0x5d88de('websocketgateway-missing-token',this);if(!_0x58bcf4['webSocketUrl'])throw new _0x5d88de('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),z['WebSocketGateway']['connect'](_0x58bcf4['token'],_0x58bcf4['webSocketUrl'],{'timeout':0x3e8*this['context']['config']['get']('cloudServices.connectionTimeout'),'requestTimeout':0x3e8*this['context']['config']['get']('cloudServices.requestTimeout')})['then'](_0x5d2811=>{if(this['connection']=_0x5d2811,this['bind']('state')['to'](_0x5d2811,'state',this,'_isBrowserOffline',(_0x40a7bc,_0x25a955)=>('connected'!==_0x40a7bc&&(this['_shouldPluginsReconnect']=!0x0),_0x25a955||_0x40a7bc!==_0x4f3cbc['CONNECTED']?_0x4f3cbc['DISCONNECTED']:this['state']==_0x4f3cbc['DISCONNECTED']&&this['_shouldPluginsReconnect']?(this['_shouldPluginsReconnect']=!0x1,this['_reconnect'](),_0x4f3cbc['CONNECTING']):_0x4f3cbc['CONNECTED'])),this['connection']['on']('error',(_0x9a8462,_0x421463)=>{if('limitExceeded'!==_0x421463['code'])throw console['error'](_0x421463),new _0x5d88de('cloudservices-init',null,{'originalError':_0x421463});_0x5e6a84['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'});}),!_0x5d2811['me'])return new Promise(_0x18daed=>_0x5d2811['on']('change:me',_0x18daed));})['catch'](_0xfaf447=>{throw console['error'](_0xfaf447),new _0x5d88de('cloudservices-init',null,{'originalError':_0xfaf447});});}['addToReconnectionStack'](_0x275613){if('function'!=typeof _0x275613['reconnect'])throw new _0x5d88de('websocketgateway-invalid-plugin-interface',this);if(this['isInReconnectionStack'](_0x275613))throw new _0x5d88de('websocketgateway-plugin-already-registered',this,{'name':_0x275613['constructor']['pluginName']});this['_reconnectionStack']['add'](_0x275613);}['removeFromReconnectionStack'](_0x295a30){this['_reconnectionStack']['delete'](_0x295a30);}['isInReconnectionStack'](_0x4a9192){return this['_reconnectionStack']['has'](_0x4a9192);}['_reconnect'](){return this['connection']['reconnect']()['then'](()=>Promise['all'](Array['from'](this['_reconnectionStack'],_0x570114=>_0x570114['reconnect']())))['then'](()=>this['state']=_0x4f3cbc['CONNECTED'])['catch'](_0x4bb355=>{throw console['error'](_0x4bb355),new _0x5d88de('cloudservices-reconnection-error',this['context']);});}['disconnect'](){this['connection']&&this['connection']['disconnect'](),this['state']=_0x4f3cbc['DISCONNECTED'],this['_domEmitter']['stopListening']();}['destroy'](){this['disconnect'](),super['destroy']();}}class Y extends _0x6b13bf{['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[z,_0x3847b0];}constructor(_0x412c73){super(_0x412c73),this['channelSessions']=new Map(),this['channelConnectedUsers']=new Map(),this['allConnectedUsers']=new _0x37a42c(),this['_registeredSessions']=new Map(),this['_uniqueUsersCount']=0x0,this['_users']=this['context']['plugins']['get'](_0x3847b0);}['init'](){const _0x4b577e=this['context']['plugins']['get'](z);this['listenTo'](_0x4b577e,'change:state',(_0x39da6b,_0x219aba,_0x72d3c2)=>{if('connected'!==_0x72d3c2)this['channelSessions']['forEach'](_0x3d014e=>_0x3d014e['clear']()),this['channelConnectedUsers']['forEach'](_0x500274=>_0x500274['clear']()),this['allConnectedUsers']['clear']();else{for(const [_0x21c212,_0xa11da]of this['_registeredSessions'])for(const _0x3012be of _0xa11da)this['_handleSessionAdd'](_0x21c212,_0x3012be);}}),this['_createUser'](_0x4b577e['connection']['me'],!0x0);}['register'](_0x305b77,_0x5aeca4){if(this['_registeredSessions']['has'](_0x305b77))throw new _0x5d88de('sessions-register-already-registered',null,{'channelId':_0x305b77});this['_registeredSessions']['set'](_0x305b77,_0x5aeca4),this['channelSessions']['set'](_0x305b77,new _0x37a42c()),this['channelConnectedUsers']['set'](_0x305b77,new _0x37a42c()),this['listenTo'](_0x5aeca4,'add',(_0x26e4e6,_0x46e7e1)=>this['_handleSessionAdd'](_0x305b77,_0x46e7e1)),this['listenTo'](_0x5aeca4,'remove',(_0xfe60b6,_0x1e7899)=>this['_handleSessionRemove'](_0x305b77,_0x1e7899));for(const _0x4e85fe of _0x5aeca4)this['_handleSessionAdd'](_0x305b77,_0x4e85fe);}['unregister'](_0x4a7d8b){if(!this['_registeredSessions']['has'](_0x4a7d8b))throw new _0x5d88de('sessions-unregister-not-exist',null,{'channelId':_0x4a7d8b});const _0x5b64ce=this['_registeredSessions']['get'](_0x4a7d8b);this['stopListening'](_0x5b64ce);for(const _0x1bf3e2 of _0x5b64ce)'connected'===this['context']['plugins']['get'](z)['state']&&this['_handleSessionRemove'](_0x4a7d8b,_0x1bf3e2);this['_registeredSessions']['delete'](_0x4a7d8b),this['channelSessions']['delete'](_0x4a7d8b),this['channelConnectedUsers']['delete'](_0x4a7d8b);}get['mySessionId'](){return this['context']['plugins']['get'](z)['connection']['sessionId'];}['getUserBySessionId'](_0xee0ed5){for(const _0x3f3e72 of this['channelSessions']['values']())for(const _0x54fb11 of _0x3f3e72)if(_0x54fb11['id']===_0xee0ed5)return _0x54fb11['user'];}['getUserSessions'](_0x333461,_0xe5b06f){const _0x23448d=_0xe5b06f?[this['channelSessions']['get'](_0xe5b06f)]:this['channelSessions']['values'](),_0x18b566=new Set();for(const _0x5f3a19 of _0x23448d)for(const _0x2068a2 of _0x5f3a19)_0x2068a2['user']['id']===_0x333461['id']&&_0x18b566['add'](_0x2068a2['id']);return _0x18b566;}['getUserRole'](_0x4d0666){for(const _0x39734c of this['channelSessions']['values']())for(const _0x46065c of _0x39734c)if(_0x46065c['user']===_0x4d0666)return _0x46065c['role'];}['_handleSessionAdd'](_0x456917,_0x49b871){if('connected'!==this['context']['plugins']['get'](z)['state'])return;const _0x2f45a0=_0x49b871['user'],_0x8ef50d=this['_users']['getUser'](_0x2f45a0['id'])||this['_createUser'](_0x2f45a0),_0x213094=Object['assign']({},_0x49b871,{'user':_0x8ef50d});if(this['channelSessions']['get'](_0x456917)['add'](_0x213094),!_0x2f45a0['hiddenInPresenceList']){const _0x1cc8ba=this['channelConnectedUsers']['get'](_0x456917);_0x1cc8ba['has'](_0x8ef50d['id'])||_0x1cc8ba['add'](_0x8ef50d),this['allConnectedUsers']['has'](_0x8ef50d['id'])||_0x2f45a0['hiddenInPresenceList']||this['allConnectedUsers']['add'](_0x8ef50d,_0x8ef50d['isMe']?0x0:void 0x0);}this['fire']('sessionAdd:'+_0x456917,{'channelId':_0x456917,'session':_0x213094});}['_handleSessionRemove'](_0x4b48c2,_0x3817ab){if('connected'!==this['context']['plugins']['get'](z)['state'])return;const _0x3d6f2c=this['channelConnectedUsers']['get'](_0x4b48c2),_0x4afc03=_0x3817ab['user'];_0x4afc03['id']&&(this['channelSessions']['get'](_0x4b48c2)['remove'](_0x3817ab['id']),_0x3d6f2c['has'](_0x4afc03['id'])&&!this['getUserSessions'](_0x4afc03,_0x4b48c2)['size']&&_0x3d6f2c['remove'](_0x4afc03['id']),this['allConnectedUsers']['get'](_0x4afc03['id'])&&!this['getUserSessions'](_0x4afc03)['size']&&this['allConnectedUsers']['remove'](_0x4afc03['id']));}['_createUser'](_0xd47108,_0x4b8e18){const _0x84e6fa=this['_users']['addUser'](_0xd47108);return _0x4b8e18&&this['_users']['defineMe'](_0xd47108['id']),_0x84e6fa['orderNumber']=this['_uniqueUsersCount']++,_0x84e6fa;}}class K extends _0x512c3b{['_domEmitter']=new(_0x238e54())();static get['requires'](){return[Y];}static get['pluginName'](){return'UserMarkers';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['init'](){const _0x588541=this['editor'],_0x3c631c=_0x588541['plugins']['get'](Y);_0x588541['conversion']['for']('editingDowncast')['markerToElement']({'model':'user:position','view':(_0x223850,{writer:_0x3d57a6})=>function(_0x2e7404,_0x393906,_0x55e21f,_0x4bcad6){const _0x2ed344=_0x2e7404['markerName']['split'](':')[0x2],_0x590f79=_0x55e21f['getUserBySessionId'](_0x2ed344);if(!_0x590f79||_0x2ed344===_0x55e21f['mySessionId'])return;if(!_0x4bcad6['model']['schema']['checkChild'](_0x2e7404['markerRange']['start'],'$text'))return;const _0x227dbd={'class':'ck-user__marker\x20'+_0x590f79['color']['getMarkerClass'](),'style':Q(_0x590f79),'data-name':_0x590f79['name'],'data-session-id':_0x2ed344},_0x367db0=_0x4bcad6['model']['markers']['get'](_0x2e7404['markerName']),_0x27c29a=_0x367db0['getStart'](),_0x1f15a8=_0x27c29a['nodeAfter'],_0x225bae=_0x4bcad6['model']['schema'];if(_0x1f15a8&&_0x225bae['isObject'](_0x1f15a8)&&_0x225bae['isInline'](_0x1f15a8)&&!_0x4bcad6['model']['markers']['get']('user:range:'+_0x2ed344)['getRange']()['isCollapsed'])return;const _0x77e3d8=_0x27c29a['parent'];return _0x4bcad6['model']['schema']['isLimit'](_0x77e3d8)&&!_0x4bcad6['model']['hasContent'](_0x77e3d8)&&(_0x227dbd['contenteditable']=!0x1),function(_0x118b4d,_0x941fa1,_0x33687b){const _0x2203e0=_0x118b4d['createUIElement']('span',_0x941fa1);return _0x118b4d['setCustomProperty']('userPositionMarker',!0x0,_0x2203e0),_0x2203e0['render']=function(_0x31d9ed){const _0x415d8b=this['toDomElement'](_0x31d9ed),_0x303c3d=document['createElement']('span');return _0x303c3d['classList']['add']('ck-user__marker-tooltip'),_0x303c3d['setAttribute']('contenteditable','false'),_0x303c3d['setAttribute']('spellcheck','false'),_0x303c3d['textContent']=_0x33687b['name'],_0x415d8b['innerHTML']='<span\x20class=\x22ck-user__marker-line\x22\x20contenteditable=\x22false\x22><span\x20class=\x22ck-user__marker-dot\x22></span></span>'+_0x303c3d['outerHTML']+'',_0x415d8b['addEventListener']('mouseenter',()=>{_0x415d8b['classList']['add']('ck-user__marker_hovered');}),_0x415d8b['addEventListener']('mouseleave',()=>{_0x415d8b['classList']['remove']('ck-user__marker_hovered');}),_0x415d8b;},_0x2203e0['isSimilar']=function(_0x259e4c){return!(!this['getCustomProperty']('userPositionMarker')||!_0x259e4c['getCustomProperty']('userPositionMarker')||this['getAttribute']('data-session-id')!=_0x259e4c['getAttribute']('data-session-id'));},_0x2203e0;}(_0x393906,_0x227dbd,_0x590f79);}(_0x223850,_0x3d57a6,_0x3c631c,_0x588541)}),_0x588541['conversion']['for']('editingDowncast')['markerToHighlight']({'model':'user:range','view':_0x3bbe2d=>function(_0x32c954,_0x383051){const _0x54a32b=_0x32c954['markerName']['split'](':')[0x2];if(_0x54a32b===_0x383051['mySessionId'])return null;const _0x3c3af3=_0x383051['getUserBySessionId'](_0x54a32b);if(!_0x3c3af3)return{'id':_0x54a32b,'classes':[]};return{'id':_0x54a32b,'classes':['ck-user__selection',_0x3c3af3['color']['getSelectionClass']()],'attributes':{'style':Q(_0x3c3af3),'data-session-id':_0x54a32b},'priority':0x7d0+_0x3c3af3['orderNumber']};}(_0x3bbe2d,_0x3c631c)}),function(_0x467165){const _0x1d7c6b=_0x467165['model'],_0x28749b=new Map(),_0x523e95=_0x467165['plugins']['get'](Y);_0x1d7c6b['markers']['on']('update:user:range',(_0x44045b,_0x171836,_0x21bbcf,_0x74db3)=>{if(!_0x74db3&&_0x28749b['get'](_0x171836['name']))return _0x28749b['get'](_0x171836['name'])['detach'](),void _0x28749b['delete'](_0x171836['name']);const _0x28122a=_0x171836['name']['split'](':')[0x2];if(_0x28122a===_0x523e95['mySessionId'])return;const _0x387f39='user:position:'+_0x28122a;_0x1d7c6b['markers']['has'](_0x387f39)&&_0x467165['editing']['reconvertMarker'](_0x387f39),_0x171836['on']('change:range',(_0x8f379b,_0x5af8af,_0xdb2075)=>{if('$graveyard'!=_0x5af8af['root']['rootName']&&'$graveyard'==_0x171836['getRange']()['root']['rootName']&&!_0x28749b['has'](_0x171836['name'])){const _0x45de3d=_0x1d7c6b['schema']['getNearestSelectionRange'](_0xdb2075['deletionPosition']);if(_0x45de3d){const _0x6c95a2=_0x39b5f6['fromRange'](_0x45de3d);_0x28749b['set'](_0x171836['name'],_0x6c95a2),_0x6c95a2['on']('change:range',(_0x349592,_0x4fb0c5,_0x3a891a)=>{if('$graveyard'==_0x6c95a2['root']['rootName']){const _0x49d357=_0x1d7c6b['schema']['getNearestSelectionRange'](_0x3a891a['deletionPosition']);_0x49d357?(_0x6c95a2['start']=_0x49d357['start'],_0x6c95a2['end']=_0x49d357['end']):(_0x28749b['delete'](_0x171836['name']),_0x6c95a2['detach']());}});}}});}),_0x1d7c6b['document']['on']('change',()=>{_0x28749b['size']>0x0&&_0x1d7c6b['enqueueChange']({'isUndoable':!0x1},_0x17154b=>{for(const [_0x1a0cb1,_0x3bfacc]of _0x28749b)'$graveyard'==_0x1d7c6b['markers']['get'](_0x1a0cb1)['getRange']()['root']['rootName']&&(J(_0x1a0cb1['split'](':')[0x2],_0x3bfacc['toRange'](),_0x1d7c6b,_0x17154b),_0x3bfacc['detach']());_0x28749b['clear']();});});}(_0x588541),this['_domEmitter']['listenTo'](_0x57454e['document'],'keydown',(_0x52474d,{key:_0xebb1a2})=>{'Escape'===_0xebb1a2&&function(_0xee4a24){_0xee4a24['editing']['view']['change'](_0x5e489e=>{for(const _0x309360 of _0xee4a24['model']['markers']){if(!_0x309360['name']['startsWith']('user:position'))continue;const _0x1f9e41=_0xee4a24['editing']['mapper']['markerNameToElements'](_0x309360['name']);if(_0x1f9e41){for(const _0x5521b1 of _0x1f9e41)_0x5e489e['removeClass']('ck-user__marker_hovered',_0x5521b1);}}});}(_0x588541);},{'useCapture':!0x0});}['afterInit'](){const _0xea15ec=this['editor'],_0x5b00e1=_0xea15ec['commands']['get']('undo');_0x5b00e1&&_0xea15ec['model']['on']('applyOperation',(_0x213937,_0x13fe45)=>{const _0x1a20ac=_0x13fe45[0x0];if(!_0x1a20ac['isDocumentOperation'])return;if('marker'!=_0x1a20ac['type']||!_0x1a20ac['name']['startsWith']('user:'))return;const _0x5f3a72=_0x1a20ac['batch'];_0x5b00e1['_createdBatches']['has'](_0x5f3a72)&&(_0x1a20ac['newRange']=_0x1a20ac['oldRange']?_0xea15ec['model']['createRange'](_0x1a20ac['oldRange']['start'],_0x1a20ac['oldRange']['end']):null);},{'priority':'highest'});}['destroy'](){return this['_domEmitter']['stopListening'](),super['destroy']();}['createUserMarkerOperations'](){const _0x1c8d6e=this['editor'],_0x1a5c51=_0x1c8d6e['model']['document'],_0x418847=_0x1c8d6e['plugins']['get'](Y);_0x1c8d6e['model']['enqueueChange']({'isUndoable':!0x1},_0x273d46=>{const _0x3992b2='user:range:'+_0x418847['mySessionId'],_0x226a9a='user:position:'+_0x418847['mySessionId'],_0x209f34=_0x1c8d6e['model']['markers']['has'](_0x3992b2);_0x1c8d6e['editing']['view']['hasDomSelection']?J(_0x418847['mySessionId'],_0x1a5c51['selection']['getFirstRange'](),_0x1c8d6e['model'],_0x273d46):_0x209f34&&(_0x273d46['removeMarker'](_0x3992b2),_0x273d46['removeMarker'](_0x226a9a));});}}function J(_0x5978b7,_0x509277,_0x518d9b,_0xeb864c){const _0x5902a9='user:range:'+_0x5978b7,_0x4c147e='user:position:'+_0x5978b7,_0x540999=_0x509277['getContainedElement']();let _0x4478c8=_0x509277['start'];if(_0x540999&&_0x540999['is']('element','tableCell')){const _0x31b48c=function(_0x4f2ae8,_0x22d2f3){for(const _0x496971 of _0x4f2ae8['getPositions']())if(_0x22d2f3['schema']['checkChild'](_0x496971,'$text'))return _0x496971;}(_0x509277,_0x518d9b);_0x31b48c&&(_0x4478c8=_0x31b48c,_0x509277=_0xeb864c['createRange'](_0x4478c8));}const _0x2579f0=_0xeb864c['createRange'](_0x4478c8);_0x518d9b['markers']['has'](_0x5902a9)?(_0xeb864c['updateMarker'](_0x5902a9,{'range':_0x509277}),_0xeb864c['updateMarker'](_0x4c147e,{'range':_0x2579f0})):(_0xeb864c['addMarker'](_0x5902a9,{'range':_0x509277,'usingOperation':!0x0}),_0xeb864c['addMarker'](_0x4c147e,{'range':_0x2579f0,'usingOperation':!0x0}));}function Q(_0x14a8d7){return'--ck-user-color:'+_0x14a8d7['color']['getColorVariable']()+';--ck-user-color-alpha:'+_0x14a8d7['color']['getColorAlphaVariable']()+';';}function X(_0x4bba21,_0x4b7b61,_0x1b57b5){const _0x117707=_0x4bba21['t'],t=_0x4bba21['t'];switch(_0x4b7b61){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 _0x117707({'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'},_0x1b57b5);default:return'';}}let Z=0x1;class tt extends _0x512c3b{static ['CollaborativeEditingService']=/* #__PURE__ -- @preserve */
|
|
25
|
+
((()=>_0x456026)());['_offset'];['sessionId'];['serverHistory'];['_channelId'];['_service'];['_document'];['_compressor'];['_bufferedOperations'];['_knownOperations'];['_knownRootNames'];['_pendingAction'];['_hasSelectionChanged'];['_sendBufferedOperationsDelayId'];['_baseBufferDelay'];['_currentBufferDelay'];['_lastSyncedOperationId'];['_disconnectionOperations'];['_operationIdentifier'];static get['requires'](){return[z,Y,K,_0x4c8145,_0x3847b0,_0x4edca5];}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 _0x73018=this['serverHistory']['getOperations']();for(let _0x446831=_0x73018['length']-0x1;_0x446831>=0x0;_0x446831--){const _0x1b9cc5=_0x73018[_0x446831];if(!this['_disconnectionOperations']['has'](_0x1b9cc5))return _0x1b9cc5['baseVersion']+0x1-this['_offset'];}return 0x0;}constructor(_0x5d4ca8){if(super(_0x5d4ca8),this['_offset']=0x0,this['sessionId']=null,this['serverHistory']=new _0x3e3e59(),this['editor']['config']['define']('collaboration',{}),this['_channelId']=this['editor']['config']['get']('collaboration.channelId'),!this['_channelId'])throw new _0x5d88de('collaboration-missing-channelid',this);const _0x27e123=_0x5d4ca8['config']['get']('cloudServices.bundleVersion')||_0x3e5cdd;this['_service']=new tt['CollaborativeEditingService'](_0x27e123,this['_channelId']),this['_document']=this['editor']['model']['document'],this['_compressor']=new _0x77fc10(),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 it(this['_disconnectionOperations']);}['init'](){const _0x1ef5e9=this['editor'],_0x45b71b=_0x1ef5e9['plugins']['get'](_0x3847b0),_0xaca3e0=_0x1ef5e9['plugins']['get'](z);this['listenTo'](_0x45b71b,'getOperationAuthor',(_0x3cbf66,_0x5df583)=>{const _0x5773f0=_0x5df583[0x0];_0x5773f0['_authorId']&&(_0x3cbf66['return']=_0x45b71b['getUser'](_0x5773f0['_authorId']),_0x3cbf66['stop']()),null===_0x5773f0['_authorId']&&(_0x3cbf66['return']=null,_0x3cbf66['stop']());},{'priority':'high'}),this['listenTo'](_0x1ef5e9['model']['document']['selection'],'change:range',(_0x51fece,_0x8e5c03)=>{_0x8e5c03['directChange']&&this['_refreshUserSelectionMarkers']();}),this['listenTo'](_0x1ef5e9['editing']['view'],'change:hasDomSelection',()=>{this['_refreshUserSelectionMarkers']();}),this['_initThrowingOnDataSet'](),_0x1ef5e9['model']['on']('applyOperation',(_0x3573d7,_0x3e158a)=>{const _0x5892a1=_0x3e158a[0x0];_0x5892a1['isDocumentOperation']&&(this['_saveOperationInBuffer'](_0x5892a1),this['_shouldSendUpdate']()&&this['_sendBufferedOperationsDelayed']());}),this['_setUpDataInit'](),this['bind']('_isEditingAllowed')['to'](_0xaca3e0,'state',this,'_hasSynchronizationProblem',(_0x32f65d,_0x41232c)=>'connected'===_0x32f65d&&!_0x41232c),this['on']('change:_isEditingAllowed',()=>{this['_isEditingAllowed']?_0x1ef5e9['disableReadOnlyMode']('rtc-offline'):_0x1ef5e9['enableReadOnlyMode']('rtc-offline');}),this['_isEditingAllowed']?_0x1ef5e9['disableReadOnlyMode']('rtc-offline'):_0x1ef5e9['enableReadOnlyMode']('rtc-offline'),this['set']('_isConnected',!0x1);}async['reconnect'](){const _0x533105=this['editor']['plugins']['get'](Y),_0x541554=this['editor']['plugins']['get'](z);try{this['_isPendingUpdate']=!0x0,_0x533105['unregister'](this['_channelId']);const _0x35c840=await this['_service']['reconnect'](_0x541554['connection'],this['lastSyncVersion']);await this['_handleReconnectionResponse'](_0x35c840)&&(this['_isPendingUpdate']=!0x1,this['_clearPendingAction']());const _0x4cbf4b=await this['_service']['getConnectedSessions']();_0x533105['register'](this['_channelId'],_0x4cbf4b),this['_handleSendingSelectionMarkers'](),this['_isConnected']=!0x0;}catch(_0x2014f3){if(function(_0x4926bd){return'404'===_0x4926bd['code'];}(_0x2014f3)&&this['sessionId'])await this['_connectAfterSessionHasBeenFlushed']();else{if(function(_0x976e43){return'409'===_0x976e43['code'];}(_0x2014f3)){const _0x423a4a=X(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'](_0x423a4a);}else{if(!(_0x2014f3 instanceof et))throw _0x2014f3;this['_handleReconnectionError']();}}}}['destroy'](){const _0x4b6c1d=this['editor']['plugins']['get'](z),_0x305050=this['editor']['plugins']['get'](Y);this['editor']['enableReadOnlyMode']('rtc-destroyed'),_0x305050['channelSessions']['has'](this['_channelId'])&&_0x305050['unregister'](this['_channelId']),_0x4b6c1d['removeFromReconnectionStack'](this),this['_disconnectService'](),super['destroy']();}async['_handleReconnectionResponse'](_0x5bc90f){if(this['sessionId']!==_0x5bc90f['sessionId']&&this['_lastSyncedOperationId']!==_0x5bc90f['lastOperationId'])throw new et();return this['sessionId']=_0x5bc90f['sessionId'],this['_handleServerResponse']([],{..._0x5bc90f,'wereChangesApplied':!0x1,'data':_0x5bc90f['data']},'reconnect');}async['_connectService'](_0x456b42,_0x5cac2f=!0x1){const {connection:_0x473f39}=this['editor']['plugins']['get'](z);tt['CollaborativeEditingService']['getConnectedSessions'](_0x473f39,this['_channelId'])['then'](_0x4ce972=>this['_initSessionsHandling'](_0x4ce972))['catch'](_0x335014=>{this['_crash']('realtimecollaborationclient-init-session-connection-error',_0x335014);}),this['listenTo'](this['_service'],'operationsReceived',this['_handleReceivedOperations']['bind'](this)),this['listenTo'](this['_service'],'error',(_0x1e4041,_0x4ab03a)=>{this['_crash']('realtimecollaborationclient-init-service-internal-error',_0x4ab03a);}),this['listenTo'](this['_service'],'disconnected',()=>{this['_isConnected']=!0x1;});const _0x1c2366=this['_operationIdentifier']['getIdOfTheLastOperation'](_0x456b42);this['_isPendingUpdate']=!0x0;const _0x268863=await this['_service']['connect'](_0x473f39,this['_compressOperations'](_0x456b42),_0x1c2366);if(this['sessionId']=_0x268863['sessionId'],_0x5cac2f){if(!_0x268863['wereChangesApplied'])return void this['_handleReconnectionError']();this['_isPendingUpdate']=!0x1,this['_clearPendingAction'](),this['serverHistory']['reset'](),this['_offset']=_0x268863['offset'],this['serverHistory']['version']=this['_offset'],await this['_handleServerResponse'](_0x456b42,_0x268863,'reconnection:\x20flushed\x20session');}else await this['_handleInitialConnectionData'](_0x268863,_0x456b42);this['_handleSendingSelectionMarkers'](),this['_isConnected']=!0x0;}['_handleSendingSelectionMarkers'](){const _0xeaae7a=this['editor']['plugins']['get'](Y),_0x49f5d3=this['editor']['plugins']['get'](K),_0x3cfb76=_0xeaae7a['channelSessions']['get'](this['_channelId']);_0x3cfb76&&_0x3cfb76['length']>0x1?_0x49f5d3['createUserMarkerOperations']():this['listenTo'](_0xeaae7a,'sessionAdd:'+this['_channelId'],()=>{0x2===_0xeaae7a['channelSessions']['get'](this['_channelId'])['length']&&_0x49f5d3['createUserMarkerOperations']();});}async['_handleReceivedOperations'](_0x4d5d3b,_0x551d9c,_0x2445d9,_0x4748a2){if(!this['_isPendingUpdate']&&this['_document']['version']==_0x551d9c){const _0x50dbe3=this['_decompressOperations'](_0x2445d9,_0x4748a2);await this['_fetchMissingUsers'](_0x50dbe3),this['_handleExternalOperations'](_0x50dbe3,_0x551d9c,_0x2445d9['lastOperationId'])||this['_crash']('realtimecollaborationclient-init-service-incorrect-server-operation');}}async['_connectAfterSessionHasBeenFlushed'](){this['_disconnectService']();const {locale:_0x3a6454}=this['editor'];let _0x5a3455;try{_0x5a3455=await this['_service']['getDocumentDetails']();}catch{const _0x3cbd58=X(_0x3a6454,'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'](_0x3cbd58);}const _0x4f0364=_0x5a3455['currentDocumentSession']||_0x5a3455['lastDocumentSession'];if(this['_lastSyncedOperationId']!==_0x4f0364['lastOperationId']){const _0x4c095c=X(_0x3a6454,'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 void this['_handleReconnectionError'](_0x4c095c);}await this['_connectService'](this['editor']['model']['document']['history']['getOperations'](),!0x0);}['_disconnectService'](){this['_service']['disconnect'](),this['_bufferedOperations']=[],clearTimeout(this['_sendBufferedOperationsDelayId']),this['stopListening'](this['_service']);}['_initSessionsHandling'](_0x10d02f){const _0x188df8=this['editor']['plugins']['get'](Y);this['listenTo'](_0x188df8,'sessionAdd:'+this['_channelId'],(_0x566e3b,{session:_0x116faa})=>{if(_0x116faa['id']===_0x188df8['mySessionId']){_0x566e3b['off']();const _0x4b59b1=this['editor']['plugins']['has']('CommentsOnly')&&this['editor']['plugins']['get']('CommentsOnly');let _0x21a657=_0x116faa['permissions'];_0x4b59b1&&_0x4b59b1['isEnabled']&&(_0x21a657=_0x21a657['filter'](_0x5b3303=>'document:write'!==_0x5b3303)),this['editor']['plugins']['get']('Permissions')['setPermissions'](_0x21a657,this['_channelId']);}}),_0x188df8['register'](this['_channelId'],_0x10d02f);}['_initThrowingOnDataSet'](){const _0x3697df=this['editor']['data']['set'];this['editor']['data']['set']=(..._0x17f72d)=>{if(!_0x17f72d[_0x17f72d['length']-0x1]['suppressErrorInCollaboration'])throw new _0x5d88de('realtimecollaborationclient-editor-setdata-and-editor-data-set-are-forbidden-in-real-time-collaboration',this);_0x3697df['apply'](this['editor']['data'],_0x17f72d);};}['_setUpDataInit'](){this['editor']['data']['on']('init',(_0x18d9da,[_0xd4916c])=>{if(this['_document']['version'])throw new _0x5d88de('realtimecollaborationclient-init-document-already-initialized',this);_0x18d9da['stop'](),this['_setPendingAction']();const _0x4115b8=Object['fromEntries'](Object['entries'](this['editor']['config']['get']('roots')||{})['filter'](([,_0xcaa813])=>!_0xcaa813['lazyLoad'])['map'](([_0x586d7f,_0x4f5948])=>[_0x586d7f,_0x4f5948['modelAttributes']||{}])),_0x16332e=this['_getOperationsFromInitData'](_0xd4916c,_0x4115b8);0x0==_0x16332e['length']&&_0x16332e['push'](new _0xb173b1(0x0)),_0x18d9da['return']=this['_connectService'](_0x16332e)['then'](()=>{this['editor']['plugins']['get'](z)['addToReconnectionStack'](this),this['editor']['data']['fire']('ready');})['catch'](_0x1a445b=>this['_crash']('realtimecollaborationclient-init-connection-failed',_0x1a445b))['finally'](()=>this['_clearPendingAction']());},{'priority':'high'}),this['editor']['on']('loadRoot',async(_0xad156b,[_0x4656bf,_0xd64a06])=>{_0xad156b['stop']();const _0xfcb1da=this['editor']['model']['document']['getRoot'](_0x4656bf);if(!this['_knownRootNames']['has'](_0x4656bf)){const _0x5b2ebf=_0xd64a06&&_0xd64a06['data']?_0xd64a06['data']:'',_0x3d4477=_0xd64a06&&_0xd64a06['attributes']?_0xd64a06['attributes']:{};await this['_loadRoot'](_0x4656bf,_0x5b2ebf,_0x3d4477);}this['editor']['model']['enqueueChange']({'isUndoable':!0x1},()=>{_0xfcb1da['_isLoaded']=!0x0,this['editor']['model']['document']['differ']['_bufferRootLoad'](_0xfcb1da);});},{'priority':'high'});}async['_fetchMissingUsers'](_0x5ba2c7){const _0x1cf4dd=this['editor']['plugins']['get'](_0x3847b0),{connection:_0x1e0ed3}=this['editor']['plugins']['get'](z),_0x7f8e9a=new Set();for(const _0x4ea63f of _0x5ba2c7){const _0x286b37=_0x4ea63f['_authorId'];_0x286b37&&!_0x1cf4dd['getUser'](_0x286b37)&&_0x7f8e9a['add'](_0x286b37);}if(0x0===_0x7f8e9a['size'])return;const _0x2a1d5b=await _0x2c2031['getMany'](_0x1e0ed3,Array['from'](_0x7f8e9a));for(const _0x2b3a03 of _0x2a1d5b)_0x1cf4dd['getUser'](_0x2b3a03['id'])||_0x1cf4dd['addUser'](_0x2b3a03);}['_getOperationsFromInitData'](_0x5ae987,_0x580be0={}){const _0x32bdc7=this['editor']['model'],_0x4d6441=[];let _0x23b433=0x0;const _0x2cb80a='string'==typeof _0x5ae987?{'main':_0x5ae987}:_0x5ae987;for(const _0x2d5709 of Object['keys'](_0x2cb80a)){if(!this['_document']['roots']['has'](_0x2d5709))throw new _0x5d88de('realtimecollaborationclient-init-non-existent-root',this);const _0x7ee42=this['editor']['data']['parse'](_0x2cb80a[_0x2d5709]),_0x347fc2=this['_document']['getRoot'](_0x2d5709),_0x3f2066=new _0x5f5a5c(_0x32bdc7['createPositionAt'](_0x347fc2,0x0),_0x7ee42,_0x23b433++);_0x4d6441['push'](_0x3f2066);for(const [_0x2a0b20,_0x5b60a4]of _0x7ee42['markers']){const _0x2c0bbf=_0x32bdc7['createRange'](_0x32bdc7['createPositionFromPath'](_0x347fc2,_0x5b60a4['start']['path']['slice']()),_0x32bdc7['createPositionFromPath'](_0x347fc2,_0x5b60a4['end']['path']['slice']())),_0x4b01b9=new _0x561ae5(_0x2a0b20,null,_0x2c0bbf,_0x32bdc7['markers'],!0x0,_0x23b433++);_0x4d6441['push'](_0x4b01b9);}}if(_0x580be0)for(const [_0x817d7a,_0x14485e]of Object['entries'](_0x580be0)){const _0x16e0c2=_0x32bdc7['document']['getRoot'](_0x817d7a);if(!_0x16e0c2)throw new _0x5d88de('multi-root-editor-root-attributes-no-root',null);for(const [_0x31eb4f,_0x59fcf0]of Object['entries'](_0x14485e))if(null!==_0x59fcf0){const _0x4bb0d5=new _0x694689(_0x16e0c2,_0x31eb4f,null,_0x59fcf0,_0x23b433++);_0x4d6441['push'](_0x4bb0d5);}}return _0x4d6441;}async['_loadRoot'](_0x552810,_0x14189c,_0x13f9b9){this['_getOperationsFromInitData']({[_0x552810]:_0x14189c},{[_0x552810]:_0x13f9b9})['forEach']((_0x2a0f43,_0x5405be)=>{_0x2a0f43['baseVersion']=this['_document']['version']+_0x5405be,_0x2a0f43['_isInit']=!0x0,this['_saveOperationInBuffer'](_0x2a0f43);}),this['_sendBufferedOperationsDelayed'](),await this['_waitUntilSynced']();}async['_handleInitialConnectionData'](_0x22e3ad,_0x1c1812){let _0x41bd0a;this['_offset']=_0x22e3ad['offset'];const _0x2e8e66=_0x22e3ad['wereChangesApplied']&&!_0x22e3ad['initData'],_0x5dc819=_0x2e8e66?0x0:_0x22e3ad['data']['baseVersion'];if(_0x1c1812['forEach'](_0x38839d=>{_0x38839d['_isInit']=!0x0,_0x38839d['createdAt']=_0x22e3ad['sessionCreatedAt'],_0x38839d['_authorId']=null;}),_0x2e8e66)_0x41bd0a=_0x1c1812,this['_applyOperationsSet'](_0x41bd0a,_0x2e8e66);else{if(_0x22e3ad['initData']){const _0x50a2bc=this['_getOperationsFromInitData'](_0x22e3ad['initData']);this['_document']['history']['version']=-_0x50a2bc['length'],_0x50a2bc['forEach'](_0x343d9e=>{_0x343d9e['baseVersion']-=_0x50a2bc['length'],_0x343d9e['createdAt']=_0x22e3ad['sessionCreatedAt'],_0x343d9e['_isInit']=!0x0,_0x343d9e['_authorId']=null;}),this['_applyOperationsSet'](_0x50a2bc,!0x0),this['serverHistory']['version']=-_0x50a2bc['length']+this['_offset'],this['_updateServerHistory'](_0x50a2bc);}this['_document']['history']['version']=_0x5dc819,_0x41bd0a=this['_decompressOperations'](_0x22e3ad['data'],_0x22e3ad['metadata']),await this['_fetchMissingUsers'](_0x41bd0a),this['_applyOperationsSet'](_0x41bd0a,_0x2e8e66);}_0x22e3ad['lastOperationId']&&(this['_operationIdentifier']['setIdForTheLastOperation'](_0x41bd0a,_0x22e3ad['lastOperationId']),this['_lastSyncedOperationId']=_0x22e3ad['lastOperationId']),this['serverHistory']['version']=_0x5dc819+this['_offset'],this['_updateServerHistory'](_0x41bd0a),_0x1c1812['filter'](_0x1b2c1f=>{const _0x264622=this['_getAffectedRoot'](_0x1b2c1f);return _0x264622&&!this['_knownRootNames']['has'](_0x264622);})['forEach']((_0x210d99,_0x3320b4)=>{_0x210d99['baseVersion']=this['_document']['version']+_0x3320b4,this['_saveOperationInBuffer'](_0x210d99);}),this['_shouldSendUpdate']()?(this['_currentBufferDelay']=0x0,this['_sendBufferedOperationsDelayed'](!0x0),await this['_waitUntilSynced']()):(this['_isPendingUpdate']=!0x1,this['_clearPendingAction']());}['_crash'](_0x29f190,_0x5b3fef){const _0x156c1d=_0x5b3fef&&_0x5b3fef['message'];if(_0x156c1d&&_0x156c1d['startsWith']('realtimecollaborationclient'))throw _0x5b3fef;const _0x3d7a98=this['editor']['plugins']['get'](z);throw this['_isPendingUpdate']=!0x0,_0x3d7a98['disconnect'](),this['editor']['enableReadOnlyMode']('realtimecollaborationclient-error'),new _0x5d88de(_0x29f190,this['editor'],_0x156c1d?{'originalError':_0x156c1d}:void 0x0);}['_saveOperationInBuffer'](_0x78d4c3){this['_knownOperations']['has'](_0x78d4c3)||(this['_knownOperations']['add'](_0x78d4c3),this['_bufferedOperations']['push'](_0x78d4c3),this['_pendingAction']||'marker'==_0x78d4c3['type']&&!_0x78d4c3['affectsData']||this['_setPendingAction']());}['_sendBufferedOperationsDelayed'](_0x5c7df6=!0x1){!_0x5c7df6&&this['_isPendingUpdate']||(this['_isPendingUpdate']=!0x0,clearTimeout(this['_sendBufferedOperationsDelayId']),this['_sendBufferedOperationsDelayId']=setTimeout(()=>{this['_sendBufferedOperations']()['then'](_0x3c653d=>{_0x3c653d&&(this['_clearPendingAction'](),this['_isPendingUpdate']=!0x1);})['catch'](_0xc3dbb0=>{this['_clearPendingAction'](),this['_isPendingUpdate']=!0x1,function(_0x4ce7f8){return _0x4ce7f8['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x4ce7f8['message']['startsWith']('cloud-services-internal-error:\x20Collaborative\x20Editing\x20Service\x20is\x20not\x20connected.')||_0x4ce7f8['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}(_0xc3dbb0)||this['_crash'](_0xc3dbb0['message'],_0xc3dbb0);});},this['_currentBufferDelay']));}['_waitUntilSynced'](){return new Promise(_0x2062ac=>{this['on']('change:_isPendingUpdate',()=>{_0x2062ac();});});}async['_sendBufferedOperations'](){const _0x170516=this['editor']['plugins']['get'](K);if(this['_shouldSendSelectionUpdate']()&&(_0x170516['createUserMarkerOperations'](),this['_hasSelectionChanged']=!0x1),!this['_shouldSendUpdate']())return!0x0;const _0x16c0e5=[...this['_bufferedOperations']];for(const _0x2bc2e3 of _0x16c0e5)_0x2bc2e3['wasUndone']=this['_document']['history']['isUndoneOperation'](_0x2bc2e3);const _0x3bb2d5=this['_operationIdentifier']['getIdOfTheLastOperation'](_0x16c0e5),_0xa37ffe=Z++,_0x3e3396=this['_compressOperations'](_0x16c0e5),_0x3daae7=await this['_service']['sendOperations'](_0x3e3396,_0x3e3396['baseVersion'],_0x3bb2d5);try{return await this['_handleServerResponse'](_0x16c0e5,_0x3daae7,_0xa37ffe);}catch(_0x533f3a){return this['_crash']('realtimecollaborationclient-sendbufferedoperations',_0x533f3a);}}async['_handleServerResponse'](_0x6ff03e,_0x3e2d50,_0x3b7f58){if('error'in _0x3e2d50)throw _0x3e2d50['error'];let _0x1b05c3=!0x1;if(_0x3e2d50['wereChangesApplied']){_0x3e2d50['lastOperationId']&&(this['_lastSyncedOperationId']=_0x3e2d50['lastOperationId']),this['_bufferedOperations']=this['_bufferedOperations']['filter'](_0x2c4c88=>!_0x6ff03e['includes'](_0x2c4c88));for(const _0x439f98 of _0x6ff03e)_0x439f98['createdAt']='lastOperationAcceptedAt'in _0x3e2d50&&_0x3e2d50['lastOperationAcceptedAt']||void 0x0;st(_0x6ff03e,_0x3e2d50['version']-_0x6ff03e['length']),this['_updateServerHistory'](_0x6ff03e);const _0x49d520=_0x6ff03e['filter'](_0x1ee65d=>{if(!_0x1ee65d['_isInit'])return!0x1;const _0x4b7191=this['_getAffectedRoot'](_0x1ee65d);return _0x4b7191&&!this['_knownRootNames']['has'](_0x4b7191);});st(_0x49d520,this['_document']['version']),this['_applyOperationsSet'](_0x49d520),_0x1b05c3=!0x0,this['_currentBufferDelay']=this['_baseBufferDelay'];}else{const _0x2a29f1=this['_decompressOperations'](_0x3e2d50['data'],_0x3e2d50['metadata'])['filter'](_0x55a924=>_0x55a924['baseVersion']>=this['_lastServerVersion']);_0x2a29f1['forEach'](_0x941bb8=>this['_addKnownRoot'](_0x941bb8)),this['_bufferedOperations']=this['_bufferedOperations']['filter'](_0x14be8f=>!_0x14be8f['_isInit']||!this['_knownRootNames']['has'](this['_getAffectedRoot'](_0x14be8f))),this['_bufferedOperations']['length']&&st(this['_bufferedOperations'],this['_bufferedOperations'][0x0]['baseVersion']),await this['_fetchMissingUsers'](_0x2a29f1),_0x1b05c3=this['_handleExternalOperations'](_0x2a29f1,_0x3e2d50['version'],_0x3e2d50['lastOperationId']),this['_currentBufferDelay']=Math['round'](this['_currentBufferDelay']/0x2);}return _0x1b05c3?!this['_shouldSendUpdate']()||(this['_sendBufferedOperationsDelayed'](!0x0),!0x1):this['_crash']('realtimecollaborationclient-handleserverresponse');}['_handleExternalOperations'](_0x3f9efa,_0x433541,_0x500628){try{const _0x588af8={'document':this['_document'],'useRelations':!0x1,'padWithNoOps':!0x0},{operationsA:_0x4ab1f1,operationsB:_0x32339e,originalOperations:_0x2c305b}=_0x4a9acb(_0x3f9efa,this['_bufferedOperations'],_0x588af8);st(_0x4ab1f1,this['_document']['version']),st(_0x32339e,_0x433541);for(const _0x5cd31d of _0x4ab1f1){const _0x138f6b=_0x2c305b['get'](_0x5cd31d);_0x5cd31d['_authorId']=_0x138f6b?_0x138f6b['_authorId']:null;}_0x500628&&(this['_operationIdentifier']['setIdForTheLastOperation'](_0x3f9efa,_0x500628),this['_lastSyncedOperationId']=_0x500628),this['_bufferedOperations']=[..._0x32339e],this['_applyOperationsSet'](_0x4ab1f1),this['_updateServerHistory'](_0x3f9efa);}catch(_0x191e71){return console['error'](_0x191e71),!0x1;}return!0x0;}['_applyOperationsSet'](_0x3fafe5,_0x5b2647=!0x1){this['editor']['model']['enqueueChange']({'isUndoable':!0x1,'isLocal':!0x1},_0x5d42ef=>{for(const _0x378bbc of _0x3fafe5)this['_knownOperations']['add'](_0x378bbc),this['_addKnownRoot'](_0x378bbc),_0x5d42ef['batch']['addOperation'](_0x378bbc),this['editor']['model']['applyOperation'](_0x378bbc);});}['_addKnownRoot'](_0x2bc3f5){const _0x1aa2df=this['_getAffectedRoot'](_0x2bc3f5);_0x1aa2df&&this['_knownRootNames']['add'](_0x1aa2df);}['_getAffectedRoot'](_0xc6b1a1){let _0x4a57b8,_0x15327b;switch(_0xc6b1a1['type']){case'insert':_0x4a57b8=_0xc6b1a1['position']['root'];break;case'marker':if(_0x15327b=_0xc6b1a1['newRange'],!_0x15327b)return null;_0x4a57b8=_0x15327b['root'];break;case'addRootAttribute':_0x4a57b8=_0xc6b1a1['root'];break;case'addRoot':_0x4a57b8=_0xc6b1a1['affectedSelectable'];break;case'move':_0x4a57b8=_0xc6b1a1['targetPosition']['root'];break;default:return null;}return _0x4a57b8['rootName'];}['_updateServerHistory'](_0x1e11d5){_0x1e11d5['forEach'](_0xa4766b=>{const _0x4c08a5=_0xa4766b['clone']();_0x4c08a5['_authorId']=_0xa4766b['_authorId'],_0x4c08a5['_isInit']=!!_0xa4766b['_isInit'],_0x4c08a5['createdAt']=_0xa4766b['createdAt'],_0x4c08a5['baseVersion']+=this['_offset'],_0xa4766b['_isDisconnection']&&this['_disconnectionOperations']['add'](_0x4c08a5),this['serverHistory']['addOperation'](_0x4c08a5);});}['_handleReconnectionError'](_0x2ef540){const _0x479687=this['editor']['plugins']['get']('Notification'),_0x27540e=this['editor']['locale'];_0x2ef540||(_0x2ef540=X(_0x27540e,'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.')),_0x479687['showWarning'](_0x2ef540,{'title':X(_0x27540e,'Synchronization\x20issue'),'namespace':'real-time-collaboration'}),this['_hasSynchronizationProblem']=!0x0,clearTimeout(this['_sendBufferedOperationsDelayId']),this['_bufferedOperations']=[],this['editor']['plugins']['get'](z)['disconnect']();}['_setPendingAction'](){this['_pendingAction']||(this['_pendingAction']=this['editor']['plugins']['get'](_0x4c8145)['add'](X(this['editor']['locale'],'PENDING_ACTION_SENDING_DATA')));}['_clearPendingAction'](){this['_pendingAction']&&(this['editor']['plugins']['get'](_0x4c8145)['remove'](this['_pendingAction']),this['_pendingAction']=null);}['_compressOperations'](_0x15c4a5){const _0x2b77d3=_0x15c4a5['map'](_0x354553=>_0x354553['toJSON']());return this['_compressor']['compress'](_0x2b77d3);}['_decompressOperations'](_0x8fb2d6,_0x5c06a6){return this['_compressor']['decompress'](_0x8fb2d6)['map']((_0x900be3,_0x339d0d)=>{const _0xf5348a='init'==_0x5c06a6[_0x339d0d]['type'];if('InsertOperation'==_0x900be3['__className']){const _0x27953e=_0x900be3['position']['root'];!this['_document']['getRoot'](_0x27953e)&&(this['_document']['createRoot']('$root',_0x27953e)['_isAttached']=!0x1);}const _0x134835=_0x350a65['fromJSON'](_0x900be3,this['_document']);return _0x134835['wasUndone']=_0x900be3['wasUndone'],_0x134835['_isInit']=_0xf5348a,_0x134835['_authorId']=_0xf5348a?null:_0x5c06a6[_0x339d0d]['userId'],_0x134835['_isDisconnection']='cs:removeUser'===_0x5c06a6[_0x339d0d]['type'],_0x134835['createdAt']=_0x5c06a6[_0x339d0d]['createdAt'],_0x134835;});}['_refreshUserSelectionMarkers'](){this['_hasSelectionChanged']=!0x0,this['_shouldSendSelectionUpdate']()?this['_sendBufferedOperationsDelayed']():this['_hasSelectionChanged']=!0x1;}['_shouldSendSelectionUpdate'](){const _0x48d5db=this['editor']['plugins']['get'](Y)['channelSessions']['get'](this['_channelId']);return!this['editor']['isReadOnly']&&!!_0x48d5db&&_0x48d5db['length']>0x1&&this['_hasSelectionChanged'];}['_shouldSendUpdate'](){return this['_bufferedOperations']['length']>0x0||this['_shouldSendSelectionUpdate']();}}class et extends Error{}function st(_0x2724bd,_0x4db783){for(const _0x291139 of _0x2724bd)_0x291139['baseVersion']=_0x4db783++;}class it{['_ignoredOperations'];['_operationToId'];constructor(_0x2369b8){this['_ignoredOperations']=_0x2369b8,this['_operationToId']=new WeakMap();}['getIdOfTheLastOperation'](_0x3d0348){let _0xbb6fce=_0x3d0348['length'];for(;_0xbb6fce--;){const _0x54a885=_0x3d0348[_0xbb6fce];if(!this['_ignoredOperations']['has'](_0x54a885)){if(!this['_operationToId']['has'](_0x54a885)){const _0x3055a2=_0x487873()['slice'](0x1,0x12);this['_operationToId']['set'](_0x54a885,_0x3055a2);}return this['_operationToId']['get'](_0x54a885);}}}['setIdForTheLastOperation'](_0x31d9d5,_0x949e3f){if(!_0x949e3f)return;let _0x116531=_0x31d9d5['length'];for(;_0x116531--;){const _0x263d7f=_0x31d9d5[_0x116531];this['_ignoredOperations']['has'](_0x263d7f)||this['_operationToId']['set'](_0x263d7f,_0x949e3f);}}}class nt extends _0x512c3b{static get['requires'](){return[tt];}static get['pluginName'](){return'RealTimeCollaborativeEditing';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}class ot extends _0x6b13bf{static ['CommentsService']=/* #__PURE__ -- @preserve */
|
|
26
|
+
((()=>_0xad8fa8)());['_services'];static get['requires'](){return[z,_0x3cd3b6,Y,_0x3847b0];}static get['pluginName'](){return'CloudServicesCommentsAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x5c4ddf){super(_0x5c4ddf),this['_services']=new Map();}async['init'](){const _0x3dcc62=this['context'],_0x1c386e=_0x3dcc62['plugins']['get'](_0x3cd3b6);if(_0x3dcc62['plugins']['get'](z)['addToReconnectionStack'](this),_0x1c386e['adapter']={'addCommentThread':async({channelId:_0x5dfe84,threadId:_0x598c0e,comments:_0x298e4c,resolvedAt:_0x371f6a,resolvedBy:_0x3c8d8a,context:_0x2d8a06,attributes:_0x4c8f8c})=>{const _0x552b6e=await this['_getService'](_0x5dfe84)['addCommentThread']({'commentThreadId':_0x598c0e,'comments':_0x298e4c['map'](_0x5e12eb=>function(_0x4e662f,_0xc583fd,_0x627792){return{'commentThreadId':_0x627792,'commentId':_0x4e662f['commentId'],'userId':_0x4e662f['authorId'],'content':_0x4e662f['content'],'documentId':_0xc583fd,'createdAt':_0x4e662f['createdAt'],'attributes':_0x4e662f['attributes']||{}};}(_0x5e12eb,_0x5dfe84,_0x598c0e)),'resolvedAt':_0x371f6a,'resolvedBy':_0x3c8d8a,'context':_0x2d8a06,'attributes':_0x4c8f8c})['catch'](ct);return{'threadId':_0x552b6e['commentThreadId'],'comments':_0x552b6e['comments']};},'getCommentThread':async({channelId:_0x10e99e,threadId:_0x17c838})=>{const _0x59fd01=await this['_getService'](_0x10e99e)['getCommentThread'](_0x17c838)['catch'](rt)['catch'](ct);return _0x59fd01?_0x59fd01['deletedAt']?null:(await this['_fetchMissingUsersForThreads']([_0x59fd01]),{'threadId':_0x59fd01['commentThreadId'],'comments':_0x59fd01['comments']['map'](at),'context':_0x59fd01['context'],'resolvedAt':_0x59fd01['resolvedAt'],'resolvedBy':_0x59fd01['resolvedBy'],'attributes':_0x59fd01['attributes']||{}}):null;},'updateCommentThread':async({channelId:_0x13afd8,threadId:_0x1e6747,context:_0x256521,unlinkedAt:_0x5f2050,attributes:_0x25e72d})=>this['_getService'](_0x13afd8)['updateCommentThread']({'commentThreadId':_0x1e6747,'context':_0x256521,'attributes':_0x25e72d,'unlinkedAt':_0x5f2050})['catch'](rt)['catch'](ct),'resolveCommentThread':async({channelId:_0x13137f,threadId:_0x3993dd})=>{const _0x4fde2b=await this['_getService'](_0x13137f)['resolveCommentThread'](_0x3993dd)['catch'](rt)['catch'](ct);return{'threadId':_0x4fde2b['commentThreadId'],'resolvedAt':_0x4fde2b['resolvedAt'],'resolvedBy':_0x4fde2b['resolvedBy']};},'reopenCommentThread':async({channelId:_0x367bb6,threadId:_0x2dc71f})=>this['_getService'](_0x367bb6)['reopenCommentThread'](_0x2dc71f)['catch'](rt)['catch'](ct),'removeCommentThread':({channelId:_0x2df65a,threadId:_0x825ed})=>this['_getService'](_0x2df65a)['removeCommentThread'](_0x825ed)['catch'](rt)['catch'](ct),'addComment':({channelId:_0x27e629,threadId:_0x1765ec,commentId:_0x470a84,content:_0x44a51b,attributes:_0x3f902b})=>this['_getService'](_0x27e629)['addComment'](_0x1765ec,_0x470a84,_0x44a51b,_0x3f902b)['catch'](ct),'updateComment':({channelId:_0x3da9f5,threadId:_0x3d2443,commentId:_0x98f0aa,content:_0x3b19c5,attributes:_0x2c71bb})=>this['_getService'](_0x3da9f5)['updateComment'](_0x3d2443,_0x98f0aa,_0x3b19c5,_0x2c71bb)['catch'](rt)['catch'](ct),'removeComment':({channelId:_0x1b2cd1,threadId:_0xfaa39b,commentId:_0x2b470b})=>this['_getService'](_0x1b2cd1)['removeComment'](_0xfaa39b,_0x2b470b)['catch'](rt)['catch'](ct)},_0x3dcc62 instanceof _0x59ae87){const _0x70c9d4=_0x3dcc62['config']['get']('collaboration.channelId'),_0x3f2603=_0x3dcc62['plugins']['get'](Y);await this['_setUpService'](_0x70c9d4);const _0x704bb0=await this['_services']['get'](_0x70c9d4)['getConnectedSessions']();this['listenTo'](_0x3f2603,'sessionAdd:'+_0x70c9d4,(_0x47f32f,{session:_0x3321f3})=>{_0x3321f3['id']===_0x3f2603['mySessionId']&&(_0x47f32f['off'](),this['context']['plugins']['get']('Permissions')['setPermissions'](_0x3321f3['permissions'],_0x70c9d4));}),_0x3f2603['register'](_0x70c9d4,_0x704bb0);}}async['_setUpService'](_0x325166){if(this['_services']['has'](_0x325166))throw new _0x5d88de('cloudservicescommentsadapter-connect-already-connected',null,{'channelId':_0x325166});const _0xe1cde2=this['context']['plugins']['get'](_0x3cd3b6),_0x504a94=new ot['CommentsService'](_0x325166);this['_services']['set'](_0x325166,_0x504a94),this['listenTo'](_0x504a94,'commentThreadAdded',(_0x802746,_0x15a65d)=>{const {commentThreadId:_0x3327d7,documentId:_0x393337,context:_0x5b0325,attributes:_0x23ca1a,resolvedAt:_0x62c378,resolvedBy:_0x44fa82,comments:_0x3acd26}=_0x15a65d;_0xe1cde2['getCommentThread'](_0x3327d7)||_0xe1cde2['addCommentThread']({'threadId':_0x3327d7,'channelId':_0x393337,'comments':_0x3acd26?_0x3acd26['map'](at):[],'context':_0x5b0325,'attributes':_0x23ca1a,'resolvedAt':_0x62c378,'resolvedBy':_0x44fa82,'isFromAdapter':!0x0});}),this['listenTo'](_0x504a94,'commentThreadUpdated',(_0x203457,{commentThreadId:_0x44bb69,documentId:_0x1685bd,context:_0x2da75a,unlinkedAt:_0x5549dc,attributes:_0x4ef39f})=>{_0xe1cde2['getCommentThread'](_0x44bb69)&&_0xe1cde2['updateCommentThread']({'threadId':_0x44bb69,'channelId':_0x1685bd,'context':_0x2da75a,'unlinkedAt':_0x5549dc,'attributes':_0x4ef39f,'isFromAdapter':!0x0});}),this['listenTo'](_0x504a94,'commentThreadResolved',(_0x4d0205,{commentThreadId:_0x1788b3,resolvedBy:_0xc10236,resolvedAt:_0x50a9ff})=>{const _0xfac38e=_0xe1cde2['getCommentThread'](_0x1788b3);_0xfac38e&&_0xfac38e['resolve']({'resolvedBy':_0xc10236,'resolvedAt':_0x50a9ff,'isFromAdapter':!0x0});}),this['listenTo'](_0x504a94,'commentThreadReopened',(_0x344d37,{commentThreadId:_0x9f8e5e})=>{const _0x298619=_0xe1cde2['getCommentThread'](_0x9f8e5e);_0x298619&&_0x298619['reopen']({'isFromAdapter':!0x0});}),this['listenTo'](_0x504a94,'commentThreadRemoved',(_0xe842a2,{commentThreadId:_0x3bd7eb})=>{const _0x495456=_0xe1cde2['getCommentThread'](_0x3bd7eb);_0x495456&&_0x495456['remove']({'isFromAdapter':!0x0});}),this['listenTo'](_0x504a94,'commentAdded',(_0x509e84,_0x19966d)=>{const _0x19a450=_0x19966d['commentThreadId'],_0x2057a0=_0xe1cde2['getCommentThread'](_0x19a450);_0x2057a0&&_0x2057a0['addComment']({...at(_0x19966d),'isFromAdapter':!0x0});}),this['listenTo'](_0x504a94,'commentUpdated',(_0x5576ed,{commentThreadId:_0x3b9b7e,commentId:_0x3de5f2,content:_0x28f45c,attributes:_0x509ad2})=>{const _0x361186=_0xe1cde2['getCommentThread'](_0x3b9b7e);if(_0x361186){const _0x2ff72a=_0x361186['getComment'](_0x3de5f2);_0x2ff72a&&_0x2ff72a['update']({'content':_0x28f45c,'attributes':_0x509ad2,'isFromAdapter':!0x0});}}),this['listenTo'](_0x504a94,'commentRemoved',(_0x554c23,{commentThreadId:_0x333b19,commentId:_0x1c1491})=>{const _0x17c34f=_0xe1cde2['getCommentThread'](_0x333b19);if(_0x17c34f){const _0x299ac9=_0x17c34f['getComment'](_0x1c1491);_0x299ac9&&_0x299ac9['remove']({'isFromAdapter':!0x0});}}),await this['_connectService'](_0x325166);}['destroy'](){if(this['context']instanceof _0x59ae87){const _0x16b577=this['context']['config']['get']('collaboration.channelId');this['_terminateService'](_0x16b577);}}['_terminateService'](_0x2dd875){if(!this['_services']['has'](_0x2dd875))throw new _0x5d88de('cloudservicescommentsadapter-disconnect-not-exist',null,{'channelId':_0x2dd875});this['_getService'](_0x2dd875)['disconnect'](),this['_services']['delete'](_0x2dd875);}async['reconnect'](){for(const _0x37a94b of this['_services']['keys']())await this['_connectService'](_0x37a94b);if(this['context']instanceof _0x59ae87){const _0x2c71c7=this['context']['config']['get']('collaboration.channelId'),_0x25aaaa=this['context']['plugins']['get'](Y);_0x25aaaa['unregister'](_0x2c71c7);const _0xdaaaf4=await this['_services']['get'](_0x2c71c7)['getConnectedSessions']();_0x25aaaa['register'](_0x2c71c7,_0xdaaaf4);}}async['_connectService'](_0x37a534){const {connection:_0x399061}=this['context']['plugins']['get'](z),_0x36a3a4=this['context']['plugins']['get'](_0x3cd3b6),_0x22ff90=this['_services']['get'](_0x37a534),_0x163e2a=await _0x22ff90['connect'](_0x399061);await this['_fetchMissingUsersForThreads'](_0x163e2a);const _0x20e8fe=new Set(Array['from'](_0x36a3a4['getCommentThreads']({'channelId':_0x37a534}),_0x5876fc=>_0x5876fc['id']));for(const _0x3db496 of _0x163e2a)_0x3db496['deletedAt']||_0x20e8fe['delete'](_0x3db496['commentThreadId']);for(const _0x4e4fd5 of _0x20e8fe)_0x36a3a4['getCommentThread'](_0x4e4fd5)['remove']({'isFromAdapter':!0x0});for(const _0x1bef98 of _0x163e2a){let _0x19a04b=_0x36a3a4['getCommentThread'](_0x1bef98['commentThreadId']);const {commentThreadId:_0x3b3b0e,context:_0x518d92,attributes:_0x29c4cd,resolvedBy:_0x3897b4,resolvedAt:_0x4cb4cd,unlinkedAt:_0x30df95,deletedAt:_0x691c7}=_0x1bef98;if(_0x691c7)continue;_0x19a04b||(_0x19a04b=_0x36a3a4['addCommentThread']({'channelId':_0x37a534,'threadId':_0x3b3b0e,'context':_0x518d92,'attributes':_0x29c4cd||{},'resolvedBy':_0x3897b4,'resolvedAt':_0x4cb4cd,'unlinkedAt':_0x30df95,'isFromAdapter':!0x0}));const _0xf02a46=new Set(Array['from'](_0x19a04b['comments'],_0x1bad64=>_0x1bad64['id']));for(const _0x13cb1b of _0x1bef98['comments'])_0xf02a46['delete'](_0x13cb1b['commentId']);for(const _0x308ced of _0xf02a46)_0x19a04b['getComment'](_0x308ced)['remove']({'isFromAdapter':!0x0});for(const _0x1581f3 of _0x1bef98['comments']){const _0x121a0e=_0x19a04b['getComment'](_0x1581f3['commentId']);_0x121a0e?_0x121a0e['content']!==_0x1581f3['content']&&_0x121a0e['update']({'content':_0x1581f3['content'],'isFromAdapter':!0x0}):_0x19a04b['addComment'](Object['assign'](at(_0x1581f3),{'isFromAdapter':!0x0}));}}}['_getService'](_0x46827d){if(!this['_services']['has'](_0x46827d))throw new _0x5d88de('cloudservicescommentsadapter-service-not-exist',null,{'channelId':_0x46827d});return this['_services']['get'](_0x46827d);}async['_fetchMissingUsersForThreads'](_0x5c8960){const _0x4e61f6=this['context']['plugins']['get'](_0x3847b0),{connection:_0x4cdd15}=this['context']['plugins']['get'](z),_0x75e353=new Set();for(const {resolvedBy:_0x526ff7,comments:_0x28b593}of _0x5c8960){_0x526ff7&&!_0x4e61f6['getUser'](_0x526ff7)&&_0x75e353['add'](_0x526ff7);for(const {userId:_0x592b9d}of _0x28b593)_0x4e61f6['getUser'](_0x592b9d)||_0x75e353['add'](_0x592b9d);}if(0x0===_0x75e353['size'])return;const _0x4e8d6e=await _0x2c2031['getMany'](_0x4cdd15,Array['from'](_0x75e353));for(const _0x57b0fa of _0x4e8d6e)_0x4e61f6['getUser'](_0x57b0fa['id'])||_0x4e61f6['addUser'](_0x57b0fa);}}async function rt(_0x20f27a){if('404'!==_0x20f27a['code'])throw _0x20f27a;}function ct(_0x7a925){if((_0x4ffc42=_0x7a925)['message']['startsWith']('cloud-services-internal-error:\x20Comments\x20Service\x20is\x20not\x20connected.')||_0x4ffc42['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x4ffc42['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.'))return new Promise(()=>{});var _0x4ffc42;throw _0x7a925;}function at(_0x532e4d){return{'threadId':_0x532e4d['commentThreadId'],'commentId':_0x532e4d['commentId'],'content':_0x532e4d['content'],'createdAt':_0x532e4d['createdAt'],'authorId':_0x532e4d['userId'],'attributes':_0x532e4d['attributes']||{}};}class ht extends _0x512c3b{static ['TrackChangesService']=/* #__PURE__ -- @preserve */
|
|
27
|
+
((()=>_0x5ba1eb)());['_bufferedRequests'];['_trackChangesService'];static get['requires'](){return[ot,_0x107d71,z];}static get['pluginName'](){return'CloudServicesTrackChangesAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x5ce86a){super(_0x5ce86a);const _0x205457=this['editor']['config']['get']('collaboration.channelId');this['_bufferedRequests']=new Map(),this['_trackChangesService']=new ht['TrackChangesService'](_0x205457);}['init'](){const _0x1f9ae1=this['editor']['plugins']['get'](z),_0x151a7e=this['editor']['plugins']['get'](_0x107d71);return _0x151a7e['adapter']={'getSuggestion':async _0x579063=>{await this['_waitForServiceReady']();const _0x551ad7=await this['_trackChangesService']['get'](_0x579063)['catch'](lt);return await this['_fetchMissingUsersForThreads']([_0x551ad7]),_0x551ad7;},'addSuggestion':async({id:_0x520c45,type:_0x559981,data:_0x2679f8,originalSuggestionId:_0x1d785d,attributes:_0x306af6})=>{await this['_waitForServiceReady']();const _0x4504c0={'id':_0x520c45,'type':_0x559981,'data':_0x2679f8,'originalSuggestionId':_0x1d785d,'attributes':_0x306af6},_0x43ef17=await this['_trackChangesService']['add'](_0x520c45,_0x559981,_0x2679f8,_0x1d785d,_0x306af6)['catch'](_0x356f23=>{if(dt(_0x356f23))return new Promise(_0x13f280=>{this['_bufferedRequests']['set'](_0x520c45,{'resolve':_0x13f280,'suggestionData':_0x4504c0});});throw _0x356f23;});return this['_bufferedRequests']['delete'](_0x520c45),_0x43ef17;},'updateSuggestion':async(_0x12e394,_0x292f1b)=>{if(await this['_waitForServiceReady'](),'open'!==_0x292f1b['state'])return this['_trackChangesService']['update'](_0x12e394,_0x292f1b)['catch'](lt);}},this['listenTo'](this['_trackChangesService'],'suggestionUpdated',(_0x4338fc,_0x350515)=>{_0x151a7e['hasSuggestion'](_0x350515['id'])&&(_0x151a7e['getSuggestion'](_0x350515['id'])['attributes']=_0x350515['attributes']);}),this['_trackChangesService']['connect'](_0x1f9ae1['connection'])['then'](_0x514c0c=>(_0x1f9ae1['addToReconnectionStack'](this),this['_fetchMissingUsersForThreads'](_0x514c0c)['then'](()=>{for(const _0x2bd81f of _0x514c0c){_0x151a7e['addSuggestionData'](_0x2bd81f)['_saved']=!0x0;}})));}async['reconnect'](){const _0x4cfeaf=this['editor']['plugins']['get']('TrackChangesEditing'),{connection:_0x5d13aa}=this['editor']['plugins']['get'](z),_0x278c0f=await this['_trackChangesService']['connect'](_0x5d13aa);await this['_fetchMissingUsersForThreads'](_0x278c0f);for(const {suggestionData:_0x4ea93f,resolve:_0x25368c}of this['_bufferedRequests']['values']()){let _0x3a523f=_0x278c0f['find'](_0x440226=>_0x440226['id']===_0x4ea93f['id']);_0x3a523f||(_0x3a523f=await this['_trackChangesService']['add'](_0x4ea93f['id'],_0x4ea93f['type'],_0x4ea93f['data'],_0x4ea93f['originalSuggestionId'])),_0x25368c(_0x3a523f);}for(const _0x24bcea of _0x278c0f)_0x4cfeaf['hasSuggestion'](_0x24bcea['id'])||_0x4cfeaf['addSuggestionData'](_0x24bcea);}async['_waitForServiceReady'](){this['_trackChangesService']['isConnected']||await new Promise(_0x5cb72a=>{this['listenTo'](this['_trackChangesService'],'connected',_0x1b8342=>{_0x1b8342['off'](),_0x5cb72a();});});}async['_fetchMissingUsersForThreads'](_0x42ccbc){const _0x4839f9=this['editor']['plugins']['get'](_0x3847b0),{connection:_0x883927}=this['editor']['plugins']['get'](z),_0x26909f=new Set();for(const {authorId:_0x1ae63b}of _0x42ccbc)_0x4839f9['getUser'](_0x1ae63b)||_0x26909f['add'](_0x1ae63b);if(0x0===_0x26909f['size'])return;const _0x44f6c7=await _0x2c2031['getMany'](_0x883927,Array['from'](_0x26909f));for(const _0x329e77 of _0x44f6c7)_0x4839f9['getUser'](_0x329e77['id'])||_0x4839f9['addUser'](_0x329e77);}}function lt(_0x2fa80b){if(dt(_0x2fa80b))return new Promise(()=>{});throw _0x2fa80b;}function dt(_0x2474d0){return _0x2474d0['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x2474d0['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}class ut extends _0x512c3b{static get['requires'](){return[_0x380a1c,ot,nt,z];}static get['pluginName'](){return'RealTimeCollaborativeComments';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['init'](){const _0x1ed3dd=this['editor']['plugins']['get'](z),_0x44cf69=this['editor']['plugins']['get'](_0x204e01),_0x38ba9b=this['editor']['plugins']['get'](ot);return this['editor']['data']['once']('ready',()=>{this['listenTo'](_0x1ed3dd,'change:state',(_0x1f0d59,_0x4aac29,_0x6883cf)=>{_0x44cf69['isThreadsLoadingPaused']='connected'!==_0x6883cf;});}),this['listenTo'](_0x1ed3dd,'change:state',(_0x1ee79b,_0x40892f,_0x28756a)=>{this['editor']['plugins']['get'](_0x3cd3b6)['switchReadOnly']('connected'!==_0x28756a);}),_0x38ba9b['_setUpService'](this['editor']['config']['get']('collaboration.channelId'));}['destroy'](){this['editor']['plugins']['get'](ot)['_terminateService'](this['editor']['config']['get']('collaboration.channelId')),super['destroy']();}}class ft extends _0x512c3b{static get['requires'](){return[ut,ht,_0x26b3cc];}static get['pluginName'](){return'RealTimeCollaborativeTrackChanges';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}class mt extends _0x512c3b{static ['RevisionHistoryService']=/* #__PURE__ -- @preserve */
|
|
28
|
+
((()=>_0x1e91e1)());['_lastRequestId'];['_revisionTracker'];['_revisionHistoryService'];['_oldOffset'];static get['requires'](){return[z,tt,_0x523413,Y,_0x3847b0];}static get['pluginName'](){return'CloudServicesRevisionHistoryAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x38e81d){super(_0x38e81d);const _0x28d6c0=this['editor']['config']['get']('collaboration.channelId');this['_lastRequestId']=null,this['_revisionTracker']=this['editor']['plugins']['get']('RevisionTracker'),this['_revisionHistoryService']=new mt['RevisionHistoryService'](_0x28d6c0);}async['init'](){const _0x413542=this['editor']['plugins']['get'](tt),_0x2876d8=_0x413542['serverHistory'],_0x581099=this['editor']['plugins']['get'](z);this['_revisionTracker']['setSource']({'history':_0x2876d8,'getLatestVersion':()=>this['_getLatestVersion'](),'getCurrentRevisionId':()=>_0x413542['sessionId']});const _0x3b5397=this['editor']['config']['get']('cloudServices.bundleVersion')||_0x3e5cdd,_0xd8a4b6=await _0x19bfcd['isBundleUploaded'](_0x581099['connection'],_0x3b5397);this['editor']['plugins']['get'](_0x523413)['adapter']={'getRevision':async({revisionId:_0x4fac8a})=>(await this['_waitForServiceReady'](),await this['_revisionHistoryService']['getRevision'](_0x4fac8a)),'updateRevisions':async _0x10fcc2=>{await this['_waitForServiceReady']();const _0x32dcb6=this['_revisionTracker']['currentRevision'];if(_0xd8a4b6&&0x1===_0x10fcc2['length']&&_0x10fcc2[0x0]['id']===_0x32dcb6['id'])return _0x10fcc2;for(const _0x143e38 of _0x10fcc2)_0x143e38['id']===_0x32dcb6['id']&&(_0x143e38['isEmptyCurrent']=_0x143e38['fromVersion']===_0x143e38['toVersion']);return this['_revisionHistoryService']['updateRevisions'](_0x10fcc2,this['_lastRequestId'])['then'](_0x790a56=>(this['_lastRequestId']=_0x790a56,_0x10fcc2))['catch'](_0x53910b=>{if(pt(_0x53910b)||'400'===_0x53910b['code']&&void 0x0!==_0x53910b['data']['wrongRequestId']){for(const _0xdbf56 of _0x10fcc2){!this['_revisionTracker']['repository']['getRevision'](_0xdbf56['id'])||this['_revisionTracker']['_bufferUpdate'](_0xdbf56['id'],_0xdbf56,!0x1);}if(pt(_0x53910b))throw _0x53910b;return _0x10fcc2;}throw _0x53910b;});}},this['listenTo'](this['_revisionHistoryService'],'revisionsUpdated',(_0x3d3a2b,{revisionsData:_0xf43b11,requestId:_0x4b6fe4})=>{Math['max'](..._0xf43b11['map'](_0x15d511=>_0x15d511['toVersion']))>this['_getLatestVersionFromServerOperations']()-0x1?this['_getLatestVersion']()['then'](()=>{this['_handleRevisionsUpdate'](_0xf43b11,_0x4b6fe4);}):this['_handleRevisionsUpdate'](_0xf43b11,_0x4b6fe4);});const {revisions:_0x48246f,requestId:_0x35b5ab}=await this['_revisionHistoryService']['connect'](_0x581099['connection']);_0x581099['addToReconnectionStack'](this),this['_lastRequestId']=_0x35b5ab,await this['_fetchMissingUsers'](_0x48246f);for(const _0x2ac4b6 of _0x48246f)this['_revisionTracker']['addRevisionData'](_0x2ac4b6);this['listenTo'](_0x413542,'change:_isConnected',(_0x3c203b,_0x2dfff7,_0x5687d6)=>{_0x5687d6&&(this['_oldOffset']=_0x413542['_offset'],_0x3c203b['off']());}),this['_revisionTracker']['bind']('isEnabled')['to'](_0x581099,'state',_0x149818=>_0x149818===_0x4f3cbc['CONNECTED']);}async['reconnect'](){const _0x5c9962=this['editor']['plugins']['get'](z),_0x40b9f6=this['editor']['plugins']['get'](tt),_0x1cafed=async()=>{const _0x3487ec=this['_revisionTracker']['currentRevision'],_0x17d05c=_0x3487ec['id'],_0x44de4b=_0x17d05c!==_0x40b9f6['sessionId'];if(_0x44de4b){const _0x57d783=_0x40b9f6['_offset']-this['_oldOffset'],_0x4cf3e6=this['_getLatestVersionFromServerOperations']();this['_revisionTracker']['_revisionDataBuilder']['reInit']();if(_0x3487ec['toVersion']+_0x57d783!==_0x4cf3e6){const _0x51e63d=_0x3487ec['fromVersion']+_0x57d783,_0x21c971=this['editor']['plugins']['get'](_0x3847b0),_0x18eb19=this['_revisionTracker']['buildRevisionData']({'revision':_0x3487ec,'from':_0x51e63d,'to':_0x4cf3e6});_0x18eb19['id']=_0x3487ec['id'];const _0x4c3a00=_0x18eb19['authorsIds']['map'](_0x272c96=>_0x21c971['getUser'](_0x272c96));_0x3487ec['_update']({..._0x18eb19,'authors':_0x4c3a00},!0x0),this['_revisionTracker']['_bufferUpdate'](_0x3487ec['id'],_0x18eb19,!0x0);}this['_revisionTracker']['_startingVersion']=_0x4cf3e6,(_0x3487ec['toVersion']===_0x3487ec['fromVersion']&&!this['_revisionTracker']['_bufferedUpdates']['has'](_0x17d05c)&&this['_revisionTracker']['repository']['_revisions']['remove'](_0x17d05c),this['_revisionTracker']['_createCurrentRevision'](_0x4cf3e6));}const {revisions:_0x54c761,requestId:_0x14a636}=await this['_revisionHistoryService']['reconnect'](_0x5c9962['connection'],this['_lastRequestId']);_0x44de4b&&_0x54c761['length']>0x0?_0x40b9f6['_handleReconnectionError']():(await this['_fetchMissingUsers'](_0x54c761),this['_handleRevisionsUpdate'](_0x54c761,_0x14a636),this['_revisionTracker']['sendBufferedUpdates']());};return _0x40b9f6['_isConnected']?_0x1cafed():new Promise((_0x9cbcb9,_0x183548)=>{_0x40b9f6['once']('change:_isConnected',()=>{_0x1cafed()['then'](_0x9cbcb9)['catch'](_0x183548);});});}['destroy'](){super['destroy']();}async['_waitForServiceReady'](){this['_revisionHistoryService']['isConnected']||await new Promise(_0x12ce66=>{this['listenTo'](this['_revisionHistoryService'],'connected',_0x39fed6=>{_0x39fed6['off'](),_0x12ce66();});});}['_getLatestVersionFromServerOperations'](){const _0x44cab0=this['editor']['plugins']['get'](tt)['serverHistory']['getOperations']()['reverse']();for(const _0x4e3e8c of _0x44cab0)if('marker'!==_0x4e3e8c['type']||_0x4e3e8c['affectsData'])return _0x4e3e8c['baseVersion']+0x1;}['_getLatestVersion'](){const _0x148913=this['editor']['plugins']['get'](tt);return new Promise(_0xa7dd87=>{_0x148913['_isPendingUpdate']?_0x148913['once']('change:_isPendingUpdate',()=>{_0xa7dd87(this['_getLatestVersionFromServerOperations']());}):_0xa7dd87(this['_getLatestVersionFromServerOperations']());});}['_handleRevisionsUpdate'](_0x5bb390,_0x7c4af1){const _0x528773=this['_revisionTracker']['repository'];this['_lastRequestId']=_0x7c4af1;for(const _0x41aa37 of _0x5bb390){const _0x1d8ad4=_0x528773['getRevision'](_0x41aa37['id']);if(_0x1d8ad4){if((_0x41aa37['fromVersion']||_0x41aa37['toVersion'])&&(_0x41aa37['diffData']=null),_0x1d8ad4===this['_revisionTracker']['currentRevision']){const _0x112868=Math['max'](_0x1d8ad4['toVersion'],_0x41aa37['toVersion']),_0x26153f=Math['max'](_0x1d8ad4['fromVersion'],_0x41aa37['fromVersion']);let _0x53d69c;_0x1d8ad4['toVersion']===_0x41aa37['toVersion']&&_0x1d8ad4['fromVersion']===_0x41aa37['fromVersion']?(_0x53d69c=!0x0,this['_preventResendingRevisionData'](_0x41aa37)):_0x41aa37['toVersion']===_0x112868&&_0x41aa37['fromVersion']===_0x26153f?_0x53d69c=!0x1:(_0x1d8ad4['toVersion']===_0x112868&&_0x1d8ad4['fromVersion']===_0x26153f||this['_fixRevision']({'revision':_0x1d8ad4,'from':_0x26153f,'to':_0x112868}),_0x53d69c=!0x0),_0x53d69c&&(delete _0x41aa37['fromVersion'],delete _0x41aa37['toVersion'],delete _0x41aa37['diffData'],delete _0x41aa37['createdAt'],delete _0x41aa37['authorsIds']);}this['_revisionTracker']['setRevisionData'](_0x41aa37),this['_preventResendingRevisionData'](_0x41aa37);}else this['_revisionTracker']['addRevisionData'](_0x41aa37);}const _0x5cc87b=_0x528773['getRevisions']();_0x5cc87b['reverse']();for(let _0x638914=0x0;_0x638914<_0x5cc87b['length']-0x1;_0x638914++){const _0x2677d4=_0x5cc87b[_0x638914],_0x46443c=_0x5cc87b[_0x638914+0x1];if(_0x2677d4['fromVersion']<_0x46443c['toVersion']){const _0x437099=_0x46443c['toVersion'],_0x4b5176=Math['max'](_0x437099,_0x2677d4['toVersion']);this['_fixRevision']({'revision':_0x2677d4,'from':_0x437099,'to':_0x4b5176});}}}['_fixRevision']({revision:_0x388b1e,from:_0x535a97,to:_0x23a9f9}={}){const _0x1283f0=this['editor']['plugins']['get'](_0x3847b0),_0x1cd26e=this['_revisionTracker']['buildRevisionData']({'revision':_0x388b1e,'from':_0x535a97,'to':_0x23a9f9});_0x1cd26e['authors']=_0x1cd26e['authorsIds']['map'](_0x18c34a=>_0x1283f0['getUser'](_0x18c34a)),_0x388b1e['_update'](_0x1cd26e);}['_preventResendingRevisionData'](_0xd002c4){const _0x17530f={};_0x17530f['id']=_0xd002c4['id'];for(const _0x2baf76 of Object['keys'](_0xd002c4))'id'!==_0x2baf76&&(_0x17530f[_0x2baf76]=void 0x0);this['_revisionTracker']['_bufferUpdate'](_0x17530f['id'],_0x17530f,!0x0);}async['_fetchMissingUsers'](_0x4c97c0){const _0x35b2b4=this['editor']['plugins']['get'](_0x3847b0),{connection:_0x4f8f1d}=this['editor']['plugins']['get'](z),_0x17285e=new Set();for(const _0x11eb8d of _0x4c97c0){for(const _0x2c905b of _0x11eb8d['authorsIds'])_0x3375e7(_0x2c905b);_0x11eb8d['creatorId']&&_0x3375e7(_0x11eb8d['creatorId']);}if(0x0===_0x17285e['size'])return;const _0x123db5=await _0x2c2031['getMany'](_0x4f8f1d,Array['from'](_0x17285e));for(const _0x5d1ed0 of _0x123db5)_0x35b2b4['getUser'](_0x5d1ed0['id'])||_0x35b2b4['addUser'](_0x5d1ed0);function _0x3375e7(_0x1a7bd7){_0x35b2b4['getUser'](_0x1a7bd7)||_0x17285e['add'](_0x1a7bd7);}}}function pt(_0x1edc5c){return _0x1edc5c['message']['startsWith']('cloud-services-internal-error:\x20Revision\x20History\x20Service\x20is\x20not\x20connected.')||_0x1edc5c['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x1edc5c['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}class gt extends _0x512c3b{static get['requires'](){return[_0x523413,mt,nt];}static get['pluginName'](){return'RealTimeCollaborativeRevisionHistory';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}class wt extends _0x45d855{['_collapseAt'];constructor(_0xd56965,_0x3ef29c=0x6){super(_0xd56965);const _0x168758=this['bindTemplate'];this['set']('isHidden',!0x0),this['set']('usersCount',0x0),this['_collapseAt']=_0x3ef29c,this['bind']('isHidden')['to'](this,'usersCount',_0x20cc79=>_0x20cc79<_0x3ef29c),this['setTemplate']({'tag':'div','attributes':{'class':['ck','ck-presence-list__list-item',_0x168758['if']('isHidden','ck-presence-list__counter--hidden')],'role':'listitem'},'children':[{'tag':'div','attributes':{'class':['ck','ck-presence-list__users-counter']},'children':[{'tag':'div','attributes':{'class':['ck','ck-presence-list__users-counter__text']},'children':[{'text':_0x168758['to']('usersCount',_0x331015=>'+'+(_0x331015-this['_collapseAt']+0x2)['toString']())}]}]}]});}}class vt extends _0x45d855{['items'];['keystrokes'];constructor(_0x37e997){super(_0x37e997);const _0x4352d3=this['bindTemplate'];this['items']=this['createCollection'](),this['keystrokes']=new _0x2864f3(),this['set']({'hasPopup':!0x1,'isExpanded':!0x1}),this['setTemplate']({'tag':'div','attributes':{'aria-haspopup':_0x4352d3['if']('hasPopup'),'aria-expanded':_0x4352d3['to']('isExpanded',_0x15ec66=>this['hasPopup']&&String(_0x15ec66)),'aria-label':_0x4352d3['to']('hasPopup',_0x3cf0c3=>X(_0x37e997,_0x3cf0c3?'Collapsed\x20connected\x20users\x20list\x20(press\x20ENTER\x20to\x20open\x20it)':'Connected\x20users\x20list')),'role':'list','tabindex':_0x4352d3['to']('hasPopup',_0x215da6=>!!_0x215da6&&0x0),'class':['ck','ck-presence-list__list']},'children':this['items'],'on':{'mouseenter':_0x4352d3['to'](()=>this['fire']('presencelist:show')),'mouseleave':_0x4352d3['to'](_0x136ac4=>{const _0xe12994=_0x136ac4,_0x39ae0d=document['querySelector']('.ck-presence-list__dropdown-list'),_0x107ac6=document['querySelector']('.ck-balloon-panel_with-arrow');_0x39ae0d?.['contains'](_0xe12994['relatedTarget'])||_0x107ac6?.['contains'](_0xe12994['relatedTarget'])||this['fire']('presencelist:hide');})}}),this['on']('change:hasPopup',(_0x50e52d,_0x42e258,_0x566caf)=>{this['element']&&(_0x566caf?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 _t extends _0x45d855{['counterView'];['inlineListView'];constructor(_0x1a66ce,_0x278cec=0x6){super(_0x1a66ce);const _0x229e3f=this['bindTemplate'];this['set']('isCollapsed',!0x0),this['counterView']=new wt(this['locale'],_0x278cec),this['inlineListView']=new vt(_0x1a66ce),this['inlineListView']['bind']('hasPopup')['to'](this,'isCollapsed'),this['listenTo'](this['inlineListView']['items'],'change',()=>{for(const _0x115077 of this['inlineListView']['items'])_0x115077['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',_0x229e3f['if']('isCollapsed','ck-presence-list--collapsed')]},'children':[this['inlineListView']]});}}class yt extends _0x45d855{['listWrapperView'];constructor(_0x526067,_0x3fa2d0){super(_0x526067);const _0x581c3e=this['bindTemplate'];this['listWrapperView']=new bt(_0x526067,_0x3fa2d0),this['setTemplate']({'tag':'div','attributes':{'tabindex':-0x1,'role':'application','class':['ck','ck-presence-list__dropdown-list'],'aria-label':X(_0x526067,'Connected\x20users\x20list\x20dropdown\x20menu')},'children':[this['listWrapperView']],'on':{'mouseleave':_0x581c3e['to'](_0x12034b=>{const _0x3d4736=_0x12034b,_0x26f854=document['querySelector']('.ck-presence-list__list'),_0x803e2f=document['querySelector']('.ck-balloon-panel_with-arrow');_0x26f854?.['contains'](_0x3d4736['relatedTarget'])||_0x803e2f?.['contains'](_0x3d4736['relatedTarget'])||this['fire']('presencelist:hide');})}});}}class bt extends _0x28fa98{constructor(_0x37b7c6,_0x105d26){super(_0x37b7c6);const _0x1a9165=this['bindTemplate'];this['set']('_isScrollable',!0x1),this['setTemplate']({'tag':_0x105d26?'div':'ul','attributes':{'class':['ck','ck-reset','ck-list','ck-presence-list__dropdown-list-wrapper',_0x1a9165['if']('_isScrollable','ck-presence-list__dropdown-list-wrapper_scrollable')],'role':_0x1a9165['to']('role'),'aria-label':_0x1a9165['to']('ariaLabel'),'aria-labelledby':_0x1a9165['to']('ariaLabelledBy')},'children':this['items']}),this['listenTo'](_0x57454e['window'],'resize',()=>this['checkIfScrollable']()),this['items']['on']('change',()=>this['checkIfScrollable']());}['render'](){super['render'](),this['checkIfScrollable']();}['checkIfScrollable'](){const _0x414d20=this['element'];_0x414d20&&(this['_isScrollable']=Math['max'](_0x414d20['scrollHeight'],_0x414d20['clientHeight'])>0.8*window['innerHeight']);}}class kt extends _0xbb6ce2{['userView'];constructor(_0x269aec,_0x229d9f,_0x23f61e){super(_0x269aec);const _0x5e237e=this['bindTemplate'];this['userView']=new _0x35e11e(_0x269aec,_0x229d9f);const _0x3e7d2a={'tag':'li','attributes':{'class':['ck','ck-presence-list__dropdown-list-item'],'tabindex':-0x1,'role':'presentation','aria-label':_0x229d9f['name']},'children':[this['userView'],{'tag':'span','attributes':{'class':['ck','ck-user__full-name']},'children':[{'text':_0x229d9f['name']}]},{'tag':'span','attributes':{'class':['ck','ck-presence-list__marker',_0x229d9f['color']['getBackgroundColorClass']()],'style':{'--ck-user-color':_0x229d9f['color']['getColorVariable'](),'--ck-user-color-alpha':_0x229d9f['color']['getColorAlphaVariable']()},'aria-hidden':'true'}}]};_0x23f61e&&(_0x3e7d2a['tag']='button',_0x3e7d2a['on']={'click':_0x5e237e['to'](()=>this['fire']('execute'))}),this['setTemplate'](_0x3e7d2a);}['focus'](){this['element']['focus']();}}class It extends _0x45d855{['userView'];['markerView'];constructor(_0x5cd014,_0x6762c1,_0x1a7569){super(_0x5cd014);const _0x367fd8=this['bindTemplate'];this['set']('isFocusable',!0x1),this['set']('hasTooltip',!0x0),this['set']('tooltipPosition',''),this['userView']=new _0x35e11e(_0x5cd014,_0x6762c1),this['markerView']=new St(_0x5cd014,_0x6762c1);const _0x130387=new _0x2db3b4(_0x5cd014);_0x130387['template']['tag']='span',_0x130387['text']=_0x6762c1['name'];const _0x475f54={'tag':'div','attributes':{'class':['ck','ck-presence-list__list-item'],'role':'listitem','tabindex':_0x367fd8['to']('isFocusable',_0xbd07f1=>!!_0xbd07f1&&0x0),'aria-labelledby':_0x130387['id'],'data-cke-tooltip-text':this['userView']['name'],'data-cke-tooltip-position':_0x367fd8['to']('tooltipPosition'),'data-cke-tooltip-disabled':_0x367fd8['to']('hasTooltip',_0x16046b=>!_0x16046b),'data-cke-tooltip-class':'ck-presence-list__list-item__tooltip'},'children':[this['userView'],this['markerView'],_0x130387]};_0x1a7569&&(_0x475f54['tag']='button',_0x475f54['on']={'click':_0x367fd8['to'](()=>this['fire']('execute'))}),this['setTemplate'](_0x475f54);}}class St extends _0x45d855{constructor(_0x44d41d,_0x33d467){super(_0x44d41d),this['setTemplate']({'tag':'span','attributes':{'class':['ck','ck-presence-list__marker',_0x33d467['color']['getBackgroundColorClass']()],'style':{'--ck-user-color':_0x33d467['color']['getColorVariable'](),'--ck-user-color-alpha':_0x33d467['color']['getColorAlphaVariable']()},'aria-hidden':'true'}});}}const Tt={'collapseAt':0x6,'displayMe':!0x0};class At extends _0x6b13bf{['currentDisplayedUsers'];['balloonPanelView'];['view'];['presenceDropdownView'];['_bodyCollection']=null;static get['pluginName'](){return'PresenceListUI';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x5dbf44){super(_0x5dbf44),this['context']['config']['define']('presenceList',Tt);const _0x2d1dd9=_0x5dbf44['config']['get']('presenceList.collapseAt');if('number'!=typeof _0x2d1dd9)throw new _0x5d88de('presencelist-collapseat-invalid-format',this);if(_0x2d1dd9<0x1)throw new _0x5d88de('presencelist-collapseat-invalid-format',this);this['_allConnectedUsers']=this['context']['plugins']['get'](Y)['allConnectedUsers'],this['set']('usersCount',0x0),this['currentDisplayedUsers']=new _0x37a42c(),this['balloonPanelView']=new _0x246412(),this['balloonPanelView']['class']='ck\x20ck-presence-list__balloon',this['view']=this['_createView'](),this['presenceDropdownView']=void 0x0;}static get['requires'](){return[Y];}['init'](){for(const _0x1783ac of this['_allConnectedUsers'])this['_handleUserAdd'](_0x1783ac);this['listenTo'](this['_allConnectedUsers'],'add',(_0x4ada7a,_0x4d884f)=>{this['_handleUserAdd'](_0x4d884f);}),this['listenTo'](this['_allConnectedUsers'],'remove',(_0x16b241,_0x582664)=>{this['_handleUserRemove'](_0x582664);});}['_createView'](){const _0x3741a6=this['context'],_0x144dfd=new _t(this['context']['locale'],this['context']['config']['get']('presenceList.collapseAt')),_0x56659a=this['balloonPanelView'];if(!_0xf133dc(_0x3741a6['config']['get']('presenceList.container')))throw new _0x5d88de('presencelist-missing-container',this);return _0x144dfd['counterView']['bind']('usersCount')['to'](this),_0x144dfd['bind']('isCollapsed')['to'](this,'usersCount',_0x5cb8b4=>{const {collapseAt:_0x24b28a}=_0x3741a6['config']['get']('presenceList'),_0x32103c=_0x5cb8b4>=_0x24b28a;if(_0x32103c&&!_0x144dfd['inlineListView']['items']['find'](_0x170cda=>_0x170cda instanceof wt)){const _0x25a168=this['context']['config']['get']('presenceList.collapseAt')-0x1;this['currentDisplayedUsers']['length']==_0x25a168&&this['currentDisplayedUsers']['length']>0x1&&this['currentDisplayedUsers']['remove'](this['currentDisplayedUsers']['length']-0x1),_0x144dfd['inlineListView']['items']['add'](_0x144dfd['counterView']);}return _0x32103c||this['hideDropdown'](),_0x32103c;}),_0x144dfd['inlineListView']['items']['bindTo'](this['currentDisplayedUsers'])['using'](_0x246cf7=>{const _0x37017=_0x3741a6['config']['get']('presenceList'),_0x1b8b6e=new It(_0x3741a6['locale'],_0x246cf7,!!_0x37017['onClick']);return _0x1b8b6e['bind']('hasTooltip')['to'](_0x144dfd,'isCollapsed',_0x225615=>!_0x225615),_0x1b8b6e['bind']('isFocusable')['to'](_0x144dfd,'isCollapsed',_0x5771a9=>!_0x5771a9),_0x37017['onClick']&&this['listenTo'](_0x1b8b6e,'execute',()=>{this['view']['isCollapsed']||_0x37017['onClick'](_0x246cf7,_0x1b8b6e['element']);}),_0x1b8b6e;}),this['listenTo'](_0x144dfd['inlineListView'],'presencelist:show',()=>{this['view']['isCollapsed']&&this['showDropdown']();}),this['listenTo'](_0x144dfd['inlineListView'],'presencelist:hide',()=>{this['presenceDropdownView']&&this['hideDropdown']();}),_0x144dfd['inlineListView']['keystrokes']['set']('Enter',(_0xe625cf,_0x27acda)=>{this['view']['isCollapsed']&&(this['showDropdown'](),_0x27acda());}),_0x144dfd['render'](),_0x56659a['render'](),_0x429dd3({'emitter':_0x144dfd,'activator':()=>_0x56659a['isVisible'],'contextElements':[_0x56659a['element'],_0x144dfd['inlineListView']['element']],'callback':()=>this['hideDropdown']()}),_0x3741a6['config']['get']('presenceList.container')['appendChild'](_0x144dfd['element']),this['_bodyCollection']=new _0x3c32f1(this['context']['locale']),this['_bodyCollection']['attachToDom'](),this['_bodyCollection']['add'](this['balloonPanelView']),_0x144dfd;}['_handleUserAdd'](_0x2620c0){if(!this['context']['config']['get']('presenceList.displayMe')&&_0x2620c0['isMe'])return;const _0x35bb20=this['context']['config']['get']('presenceList.collapseAt')-0x1;for(this['usersCount']++;this['currentDisplayedUsers']['length']>=_0x35bb20-(this['view']['isCollapsed']?0x1:0x0)&&this['currentDisplayedUsers']['length']>0x1;)this['currentDisplayedUsers']['remove'](0x1);const _0x519a7b=_0x2620c0['isMe']?0x0:this['currentDisplayedUsers']['length'];this['currentDisplayedUsers']['add'](_0x2620c0,_0x519a7b);}['_handleUserRemove'](_0x3a211b){this['usersCount']--;const {collapseAt:_0x5e77f4}=this['context']['config']['get']('presenceList'),_0x445265=this['usersCount']>=_0x5e77f4;if(this['currentDisplayedUsers']['get'](_0x3a211b['id']))this['currentDisplayedUsers']['remove'](_0x3a211b['id']);else{if(_0x445265&&this['currentDisplayedUsers']['length']+0x1===_0x5e77f4-0x1)return;}if(this['currentDisplayedUsers']['length']+(_0x445265?0x1:0x0)<this['usersCount']){for(const _0x7fb32a of Array['from'](this['_allConnectedUsers'])['reverse']())if(!this['currentDisplayedUsers']['get'](_0x7fb32a['id'])&&(this['currentDisplayedUsers']['add'](_0x7fb32a,Math['min'](this['currentDisplayedUsers']['length']-(_0x445265?0x1:0x0),0x1)),this['currentDisplayedUsers']['length']+(_0x445265?0x1:0x0)===_0x5e77f4-0x1))return;}}['showDropdown'](){if(this['presenceDropdownView'])return;const _0x4ca0a1=this['context']['config']['get']('presenceList');this['presenceDropdownView']=new yt(this['context']['locale'],!!_0x4ca0a1['onClick']),this['view']['inlineListView']['isExpanded']=!0x0,this['listenTo'](this['presenceDropdownView'],'presencelist:hide',()=>{this['presenceDropdownView']&&this['hideDropdown']();});const {listWrapperView:_0x3155a3}=this['presenceDropdownView'];_0x3155a3['items']['bindTo'](this['_allConnectedUsers'])['using'](_0x2a7613=>{if(!_0x4ca0a1['displayMe']&&_0x2a7613['isMe'])return null;const _0x1bf6fc=new kt(this['context']['locale'],_0x2a7613,!!_0x4ca0a1['onClick']);return _0x4ca0a1['onClick']&&this['listenTo'](_0x1bf6fc,'execute',()=>{_0x4ca0a1['onClick'](_0x2a7613,_0x1bf6fc['element']);}),_0x1bf6fc;}),this['balloonPanelView']['content']['add'](this['presenceDropdownView']),this['balloonPanelView']['pin']({'target':this['view']['inlineListView']['element']}),_0x3155a3['focus'](),_0x3155a3['checkIfScrollable']();const _0x4602be=(_0x1b1ccb,_0x479604)=>{this['hideDropdown'](),this['view']['inlineListView']['focus'](),_0x479604();};_0x3155a3['keystrokes']['set']('Esc',_0x4602be),_0x3155a3['keystrokes']['set']('Shift+Tab',_0x4602be),_0x3155a3['keystrokes']['set']('Tab',(_0x4b88e1,_0x119558)=>{!function(_0x5579d0){const _0x45015b=['a','button','input','select','textarea','[tabindex]','[contenteditable]']['map'](_0x54adce=>_0x54adce+':not([disabled]):not([tabindex=\x22-1\x22])')['join'](','),_0x466cd9=[...document['body']['querySelectorAll'](_0x45015b)]['filter'](_0x5464ee=>_0x5464ee===document['activeElement']||_0x5464ee['offsetWidth']+_0x5464ee['offsetHeight']>0x0)['sort']((_0x441e38,_0x170445)=>(_0x441e38['tabIndex']||0x0)-(_0x170445['tabIndex']||0x0)),_0x5d50ac=_0x466cd9['indexOf'](_0x5579d0),_0x4509b4=_0x466cd9[(_0x5d50ac+0x1)%_0x466cd9['length']];_0x4509b4&&_0x4509b4['focus']();}(this['view']['element']),this['hideDropdown'](),_0x119558();}),_0x3155a3['focusTracker']['add'](this['view']['element']),_0x3155a3['focusTracker']['on']('change:isFocused',(_0xb86f65,_0x1e3a96,_0x33101b)=>{_0x33101b||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 Pt extends _0x6b13bf{static get['requires'](){return[Y,At];}static get['pluginName'](){return'PresenceList';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}export{ot as CloudServicesCommentsAdapter,mt as CloudServicesRevisionHistoryAdapter,ht as CloudServicesTrackChangesAdapter,Pt as PresenceList,At as PresenceListUI,tt as RealTimeCollaborationClient,ut as RealTimeCollaborativeComments,nt as RealTimeCollaborativeEditing,gt as RealTimeCollaborativeRevisionHistory,ft as RealTimeCollaborativeTrackChanges,Y as Sessions,z as WebSocketGateway};
|
package/dist/translations/af.js
CHANGED
|
@@ -20,4 +20,4 @@
|
|
|
20
20
|
*
|
|
21
21
|
*
|
|
22
22
|
*/
|
|
23
|
-
export default{'af':{'dictionary':{'CONNECTED_USERS':['',''],'PENDING_ACTION_SENDING_DATA':'','Synchronization\x20issue':'','Connected\x20users\x20list\x20dropdown\x20menu':'','Connected\x20users\x20list':'','Collapsed\x20connected\x20users\x20list\x20(press\x20ENTER\x20to\x20open\x20it)':'','The\x20document\x20cannot\x20be\x20connected\x20back\x20to\x20the\x20server.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':'','The\x20document\x20details\x20could\x20not\x20be\x20taken\x20during\x20the\x20reconnection.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':'','The\x20last\x20saved\x20version\x20of\x20the\x20document\x20does\x20not\x20match\x20the\x20local\x20version.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':'','The\x20local\x20document\x20and\x20server\x20document\x20differ\x20and\x20merging\x20them\x20can\x20cause\x20unexpected\x20behavior.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':''},'getPluralForm':
|
|
23
|
+
export default{'af':{'dictionary':{'CONNECTED_USERS':['',''],'PENDING_ACTION_SENDING_DATA':'','Synchronization\x20issue':'','Connected\x20users\x20list\x20dropdown\x20menu':'','Connected\x20users\x20list':'','Collapsed\x20connected\x20users\x20list\x20(press\x20ENTER\x20to\x20open\x20it)':'','The\x20document\x20cannot\x20be\x20connected\x20back\x20to\x20the\x20server.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':'','The\x20document\x20details\x20could\x20not\x20be\x20taken\x20during\x20the\x20reconnection.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':'','The\x20last\x20saved\x20version\x20of\x20the\x20document\x20does\x20not\x20match\x20the\x20local\x20version.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':'','The\x20local\x20document\x20and\x20server\x20document\x20differ\x20and\x20merging\x20them\x20can\x20cause\x20unexpected\x20behavior.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':''},'getPluralForm':_0x1b5eb6=>0x1!=_0x1b5eb6}};
|