@ckeditor/ckeditor5-real-time-collaboration 46.0.1 → 46.0.2-alpha.1
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/build/real-time-collaboration.js +2 -2
- 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 +14 -14
- package/src/common-translations.js +1 -1
- package/src/index.js +1 -1
- package/src/presencelist/presencelistui.js +1 -1
- package/src/presencelist/view/presencecounterview.js +1 -1
- package/src/presencelist/view/presencedropdownlistitemview.js +1 -1
- package/src/presencelist/view/presencedropdownlistview.js +1 -1
- package/src/presencelist/view/presenceinlinelistitemview.js +1 -1
- package/src/presencelist/view/presenceinlinelistview.js +1 -1
- package/src/presencelist/view/presencelistview.js +1 -1
- package/src/presencelist.js +1 -1
- package/src/realtimecollaborativecomments/cloudservicescommentsadapter.js +2 -2
- package/src/realtimecollaborativecomments.js +1 -1
- package/src/realtimecollaborativeediting/realtimecollaborationclient.js +2 -2
- package/src/realtimecollaborativeediting/sessions.js +1 -1
- package/src/realtimecollaborativeediting/usermarkers.js +1 -1
- package/src/realtimecollaborativeediting/websocketgateway.js +2 -2
- package/src/realtimecollaborativeediting.js +1 -1
- package/src/realtimecollaborativerevisionhistory/cloudservicesrevisionhistoryadapter.js +2 -2
- package/src/realtimecollaborativerevisionhistory.js +1 -1
- package/src/realtimecollaborativetrackchanges/cloudservicestrackchangesadapter.js +2 -2
- package/src/realtimecollaborativetrackchanges.js +1 -1
package/dist/index.js
CHANGED
|
@@ -20,9 +20,9 @@
|
|
|
20
20
|
*
|
|
21
21
|
*
|
|
22
22
|
*/
|
|
23
|
-
import{ContextPlugin as
|
|
24
|
-
((()=>rt)());static ['initialReconnectionInterval']=0x3e8;['connection'];['_reconnectionStack'];['_shouldPluginsReconnect'];['_domEmitter'];static get['requires'](){return['CloudServices',_0x141545];}static get['pluginName'](){return'WebSocketGateway';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x140208){super(_0x140208),this['set']('state',_0x384c6b['CONNECTED']),this['set']('_isBrowserOffline',!0x1),this['_reconnectionStack']=new Set(),this['_shouldPluginsReconnect']=!0x1,this['_domEmitter']=new(_0xe335e0())();}['init'](){const _0x2d4469=this['context'],_0x1d18ce=_0x2d4469['plugins']['get']('CloudServices'),_0x41b9e5=_0x2d4469['plugins']['get'](_0x141545);if(!_0x1d18ce['token'])throw new _0x4d1849('websocketgateway-missing-token',this);if(!_0x1d18ce['webSocketUrl'])throw new _0x4d1849('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),n['WebSocketGateway']['connect'](_0x1d18ce['token'],_0x1d18ce['webSocketUrl'],{'timeout':0x3e8*this['context']['config']['get']('cloudServices.connectionTimeout'),'requestTimeout':0x3e8*this['context']['config']['get']('cloudServices.requestTimeout')})['then'](_0x45f3b2=>{if(this['connection']=_0x45f3b2,this['bind']('state')['to'](_0x45f3b2,'state',this,'_isBrowserOffline',(_0x5daeb1,_0x1696c6)=>('connected'!==_0x5daeb1&&(this['_shouldPluginsReconnect']=!0x0),_0x1696c6||_0x5daeb1!==_0x384c6b['CONNECTED']?_0x384c6b['DISCONNECTED']:this['state']==_0x384c6b['DISCONNECTED']&&this['_shouldPluginsReconnect']?(this['_shouldPluginsReconnect']=!0x1,this['_reconnect'](),_0x384c6b['CONNECTING']):_0x384c6b['CONNECTED'])),this['connection']['on']('error',(_0x2310c0,_0x5575e0)=>{if('limitExceeded'!==_0x5575e0['code'])throw console['error'](_0x5575e0),new _0x4d1849('cloudservices-init',null,{'originalError':_0x5575e0});_0x41b9e5['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'});}),!_0x45f3b2['me'])return new Promise(_0x1cefda=>_0x45f3b2['on']('change:me',_0x1cefda));})['catch'](_0x2fd6d1=>{throw console['error'](_0x2fd6d1),new _0x4d1849('cloudservices-init',null,{'originalError':_0x2fd6d1});});}['addToReconnectionStack'](_0x200a60){if('function'!=typeof _0x200a60['reconnect'])throw new _0x4d1849('websocketgateway-invalid-plugin-interface',this);if(this['isInReconnectionStack'](_0x200a60))throw new _0x4d1849('websocketgateway-plugin-already-registered',this,{'name':_0x200a60['constructor']['pluginName']});this['_reconnectionStack']['add'](_0x200a60);}['removeFromReconnectionStack'](_0x141b63){this['_reconnectionStack']['delete'](_0x141b63);}['isInReconnectionStack'](_0x4e9e89){return this['_reconnectionStack']['has'](_0x4e9e89);}['_reconnect'](){return this['connection']['reconnect']()['then'](()=>Promise['all'](Array['from'](this['_reconnectionStack'],_0x4560ef=>_0x4560ef['reconnect']())))['then'](()=>this['state']=_0x384c6b['CONNECTED'])['catch'](_0x431413=>{throw console['error'](_0x431413),new _0x4d1849('cloudservices-reconnection-error',this['context']);});}['disconnect'](){this['connection']&&this['connection']['disconnect'](),this['state']=_0x384c6b['DISCONNECTED'],this['_domEmitter']['stopListening']();}['destroy'](){this['disconnect'](),super['destroy']();}}class i extends _0x381c27{['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[n,_0x595866];}constructor(_0x49d81b){super(_0x49d81b),this['channelSessions']=new Map(),this['channelConnectedUsers']=new Map(),this['allConnectedUsers']=new _0x53968d(),this['_registeredSessions']=new Map(),this['_uniqueUsersCount']=0x0,this['_users']=this['context']['plugins']['get'](_0x595866);}['init'](){const _0x51648d=this['context']['plugins']['get'](n);this['listenTo'](_0x51648d,'change:state',(_0x257e63,_0x33573b,_0x13227e)=>{if('connected'!==_0x13227e)this['channelSessions']['forEach'](_0x240ab2=>_0x240ab2['clear']()),this['channelConnectedUsers']['forEach'](_0x319c69=>_0x319c69['clear']()),this['allConnectedUsers']['clear']();else{for(const [_0x36424f,_0x120da6]of this['_registeredSessions'])for(const _0x5ef0c9 of _0x120da6)this['_handleSessionAdd'](_0x36424f,_0x5ef0c9);}}),this['_createUser'](_0x51648d['connection']['me'],!0x0);}['register'](_0x51983b,_0x572738){if(this['_registeredSessions']['has'](_0x51983b))throw new _0x4d1849('sessions-register-already-registered',null,{'channelId':_0x51983b});this['_registeredSessions']['set'](_0x51983b,_0x572738),this['channelSessions']['set'](_0x51983b,new _0x53968d()),this['channelConnectedUsers']['set'](_0x51983b,new _0x53968d()),this['listenTo'](_0x572738,'add',(_0x1cf0f7,_0x24c24f)=>this['_handleSessionAdd'](_0x51983b,_0x24c24f)),this['listenTo'](_0x572738,'remove',(_0x234af3,_0x3eb9c6)=>this['_handleSessionRemove'](_0x51983b,_0x3eb9c6));for(const _0x1a77e1 of _0x572738)this['_handleSessionAdd'](_0x51983b,_0x1a77e1);}['unregister'](_0x2d8546){if(!this['_registeredSessions']['has'](_0x2d8546))throw new _0x4d1849('sessions-unregister-not-exist',null,{'channelId':_0x2d8546});const _0x3d25ef=this['_registeredSessions']['get'](_0x2d8546);this['stopListening'](_0x3d25ef);for(const _0x369f32 of _0x3d25ef)'connected'===this['context']['plugins']['get'](n)['state']&&this['_handleSessionRemove'](_0x2d8546,_0x369f32);this['_registeredSessions']['delete'](_0x2d8546),this['channelSessions']['delete'](_0x2d8546),this['channelConnectedUsers']['delete'](_0x2d8546);}get['mySessionId'](){return this['context']['plugins']['get'](n)['connection']['sessionId'];}['getUserBySessionId'](_0x4b939e){for(const _0x572424 of this['channelSessions']['values']())for(const _0x8d75b8 of _0x572424)if(_0x8d75b8['id']===_0x4b939e)return _0x8d75b8['user'];}['getUserSessions'](_0x20d455,_0x42ef8b){const _0x561085=_0x42ef8b?[this['channelSessions']['get'](_0x42ef8b)]:this['channelSessions']['values'](),_0x746198=new Set();for(const _0x1794a4 of _0x561085)for(const _0x544405 of _0x1794a4)_0x544405['user']['id']===_0x20d455['id']&&_0x746198['add'](_0x544405['id']);return _0x746198;}['getUserRole'](_0x1f23a5){for(const _0x14aca3 of this['channelSessions']['values']())for(const _0x522e31 of _0x14aca3)if(_0x522e31['user']===_0x1f23a5)return _0x522e31['role'];}['_handleSessionAdd'](_0xb8a083,_0x4c4dfc){if('connected'!==this['context']['plugins']['get'](n)['state'])return;const _0x369df0=_0x4c4dfc['user'],_0x45b8cd=this['_users']['getUser'](_0x369df0['id'])||this['_createUser'](_0x369df0),_0x5279fe=Object['assign']({},_0x4c4dfc,{'user':_0x45b8cd});this['channelSessions']['get'](_0xb8a083)['add'](_0x5279fe);const _0x3eb8d7=this['channelConnectedUsers']['get'](_0xb8a083);_0x3eb8d7['has'](_0x45b8cd['id'])||_0x3eb8d7['add'](_0x45b8cd),this['allConnectedUsers']['has'](_0x45b8cd['id'])||this['allConnectedUsers']['add'](_0x45b8cd,_0x45b8cd['isMe']?0x0:void 0x0),this['fire']('sessionAdd:'+_0xb8a083,{'channelId':_0xb8a083,'session':_0x5279fe});}['_handleSessionRemove'](_0x236dc4,_0x8a5057){if('connected'!==this['context']['plugins']['get'](n)['state'])return;const _0x34872c=this['channelConnectedUsers']['get'](_0x236dc4),_0x3c44dd=_0x8a5057['user'];_0x3c44dd['id']&&(this['channelSessions']['get'](_0x236dc4)['remove'](_0x8a5057['id']),_0x34872c['has'](_0x3c44dd['id'])&&!this['getUserSessions'](_0x3c44dd,_0x236dc4)['size']&&_0x34872c['remove'](_0x3c44dd['id']),this['allConnectedUsers']['get'](_0x3c44dd['id'])&&!this['getUserSessions'](_0x3c44dd)['size']&&this['allConnectedUsers']['remove'](_0x3c44dd['id']));}['_createUser'](_0x2fa2c4,_0x233e29){const _0x29c5e9=this['_users']['addUser'](_0x2fa2c4);return _0x233e29&&this['_users']['defineMe'](_0x2fa2c4['id']),_0x29c5e9['orderNumber']=this['_uniqueUsersCount']++,_0x29c5e9;}}class $ extends _0x5d6859{['_domEmitter']=new(_0xe335e0())();static get['requires'](){return[i];}static get['pluginName'](){return'UserMarkers';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['init'](){const _0x5d42cb=this['editor'],_0x3d0bb0=_0x5d42cb['plugins']['get'](i);_0x5d42cb['conversion']['for']('editingDowncast')['markerToElement']({'model':'user:position','view':(_0x42a634,{writer:_0x4f5640})=>function(_0xbf3676,_0x4776ee,_0x378e5b,_0x51d79f){const _0x30504c=_0xbf3676['markerName']['split'](':')[0x2],_0x4675fe=_0x378e5b['getUserBySessionId'](_0x30504c);if(!_0x4675fe||_0x30504c===_0x378e5b['mySessionId'])return;if(!_0x51d79f['model']['schema']['checkChild'](_0xbf3676['markerRange']['start'],'$text'))return;const _0xfde9a4={'class':'ck-user__marker\x20'+_0x4675fe['color']['getMarkerClass'](),'data-name':_0x4675fe['name'],'data-session-id':_0x30504c},_0x47349e=_0x51d79f['model']['markers']['get'](_0xbf3676['markerName']),_0x590b69=_0x47349e['getStart'](),_0x4e3be0=_0x590b69['nodeAfter'],_0x17cab1=_0x51d79f['model']['schema'];if(_0x4e3be0&&_0x17cab1['isObject'](_0x4e3be0)&&_0x17cab1['isInline'](_0x4e3be0)&&!_0x51d79f['model']['markers']['get']('user:range:'+_0x30504c)['getRange']()['isCollapsed'])return;const _0x34fe09=_0x590b69['parent'];return _0x51d79f['model']['schema']['isLimit'](_0x34fe09)&&!_0x51d79f['model']['hasContent'](_0x34fe09)&&(_0xfde9a4['contenteditable']=!0x1),function(_0x23f60b,_0x1485e2,_0x2ea188){const _0x64f60a=_0x23f60b['createUIElement']('span',_0x1485e2);return _0x23f60b['setCustomProperty']('userPositionMarker',!0x0,_0x64f60a),_0x64f60a['render']=function(_0x2e5579){const _0x8027ec=this['toDomElement'](_0x2e5579),_0x3a4924=document['createElement']('span');return _0x3a4924['classList']['add']('ck-user__marker-tooltip'),_0x3a4924['setAttribute']('contenteditable','false'),_0x3a4924['setAttribute']('spellcheck','false'),_0x3a4924['textContent']=_0x2ea188['name'],_0x8027ec['innerHTML']='<span\x20class=\x22ck-user__marker-line\x22\x20contenteditable=\x22false\x22><span\x20class=\x22ck-user__marker-dot\x22></span></span>'+_0x3a4924['outerHTML']+'',_0x8027ec['addEventListener']('mouseenter',()=>{_0x8027ec['classList']['add']('ck-user__marker_hovered');}),_0x8027ec['addEventListener']('mouseleave',()=>{_0x8027ec['classList']['remove']('ck-user__marker_hovered');}),_0x8027ec;},_0x64f60a['isSimilar']=function(_0x481827){return!(!this['getCustomProperty']('userPositionMarker')||!_0x481827['getCustomProperty']('userPositionMarker')||this['getAttribute']('data-session-id')!=_0x481827['getAttribute']('data-session-id'));},_0x64f60a;}(_0x4776ee,_0xfde9a4,_0x4675fe);}(_0x42a634,_0x4f5640,_0x3d0bb0,_0x5d42cb)}),_0x5d42cb['conversion']['for']('editingDowncast')['markerToHighlight']({'model':'user:range','view':_0x5b7880=>function(_0x53440c,_0x42368e){const _0x10c342=_0x53440c['markerName']['split'](':')[0x2];if(_0x10c342===_0x42368e['mySessionId'])return null;const _0x44ddf6=_0x42368e['getUserBySessionId'](_0x10c342);if(!_0x44ddf6)return{'id':_0x10c342,'classes':[]};return{'id':_0x10c342,'classes':['ck-user__selection',_0x44ddf6['color']['getSelectionClass']()],'attributes':{'data-session-id':_0x10c342},'priority':0x7d0+_0x44ddf6['orderNumber']};}(_0x5b7880,_0x3d0bb0)}),function(_0x242124){const _0xefe81a=_0x242124['model'],_0x511519=new Map(),_0x1da65e=_0x242124['plugins']['get'](i);_0xefe81a['markers']['on']('update:user:range',(_0xc7cbe2,_0x578c59,_0x22f28d,_0x59cbb0)=>{if(!_0x59cbb0&&_0x511519['get'](_0x578c59['name']))return _0x511519['get'](_0x578c59['name'])['detach'](),void _0x511519['delete'](_0x578c59['name']);const _0x16bf12=_0x578c59['name']['split'](':')[0x2];if(_0x16bf12===_0x1da65e['mySessionId'])return;const _0x3a9f47='user:position:'+_0x16bf12;_0xefe81a['markers']['has'](_0x3a9f47)&&_0x242124['editing']['reconvertMarker'](_0x3a9f47),_0x578c59['on']('change:range',(_0x2cbde9,_0x49673b,_0x13705c)=>{if('$graveyard'!=_0x49673b['root']['rootName']&&'$graveyard'==_0x578c59['getRange']()['root']['rootName']&&!_0x511519['has'](_0x578c59['name'])){const _0x4381a7=_0xefe81a['schema']['getNearestSelectionRange'](_0x13705c['deletionPosition']);if(_0x4381a7){const _0x3d1a17=_0x2668bc['fromRange'](_0x4381a7);_0x511519['set'](_0x578c59['name'],_0x3d1a17),_0x3d1a17['on']('change:range',(_0x4b2b7c,_0x208c0b,_0x2de0cd)=>{if('$graveyard'==_0x3d1a17['root']['rootName']){const _0x2475d6=_0xefe81a['schema']['getNearestSelectionRange'](_0x2de0cd['deletionPosition']);_0x2475d6?(_0x3d1a17['start']=_0x2475d6['start'],_0x3d1a17['end']=_0x2475d6['end']):(_0x511519['delete'](_0x578c59['name']),_0x3d1a17['detach']());}});}}});}),_0xefe81a['document']['on']('change',()=>{_0x511519['size']>0x0&&_0xefe81a['enqueueChange']({'isUndoable':!0x1},_0x5a7b77=>{for(const [_0x2a53d6,_0x34d1ee]of _0x511519)'$graveyard'==_0xefe81a['markers']['get'](_0x2a53d6)['getRange']()['root']['rootName']&&(te(_0x2a53d6['split'](':')[0x2],_0x34d1ee['toRange'](),_0xefe81a,_0x5a7b77),_0x34d1ee['detach']());_0x511519['clear']();});});}(_0x5d42cb),this['_domEmitter']['listenTo'](_0x38b4cc['document'],'keydown',(_0x175968,{key:_0x2746d0})=>{'Escape'===_0x2746d0&&function(_0x548771){_0x548771['editing']['view']['change'](_0x400cb1=>{for(const _0x2f506f of _0x548771['model']['markers']){if(!_0x2f506f['name']['startsWith']('user:position'))continue;const _0xd1f1e4=_0x548771['editing']['mapper']['markerNameToElements'](_0x2f506f['name']);if(_0xd1f1e4){for(const _0x314a27 of _0xd1f1e4)_0x400cb1['removeClass']('ck-user__marker_hovered',_0x314a27);}}});}(_0x5d42cb);},{'useCapture':!0x0});}['afterInit'](){const _0x55a2ab=this['editor'],_0x58bfca=_0x55a2ab['commands']['get']('undo');_0x58bfca&&_0x55a2ab['model']['on']('applyOperation',(_0x10a2bb,_0x54d756)=>{const _0x5a254e=_0x54d756[0x0];if(!_0x5a254e['isDocumentOperation'])return;if('marker'!=_0x5a254e['type']||!_0x5a254e['name']['startsWith']('user:'))return;const _0x328d33=_0x5a254e['batch'];_0x58bfca['_createdBatches']['has'](_0x328d33)&&(_0x5a254e['newRange']=_0x5a254e['oldRange']?_0x55a2ab['model']['createRange'](_0x5a254e['oldRange']['start'],_0x5a254e['oldRange']['end']):null);},{'priority':'highest'});}['destroy'](){return this['_domEmitter']['stopListening'](),super['destroy']();}['createUserMarkerOperations'](){const _0x5df017=this['editor'],_0x2ef986=_0x5df017['model']['document'],_0x609f1c=_0x5df017['plugins']['get'](i);_0x5df017['model']['enqueueChange']({'isUndoable':!0x1},_0x5ce4a6=>{const _0x2fda9c='user:range:'+_0x609f1c['mySessionId'],_0x1628ba='user:position:'+_0x609f1c['mySessionId'],_0x332625=_0x5df017['model']['markers']['has'](_0x2fda9c);_0x5df017['editing']['view']['hasDomSelection']?te(_0x609f1c['mySessionId'],_0x2ef986['selection']['getFirstRange'](),_0x5df017['model'],_0x5ce4a6):_0x332625&&(_0x5ce4a6['removeMarker'](_0x2fda9c),_0x5ce4a6['removeMarker'](_0x1628ba));});}}function te(_0x51a41e,_0x127050,_0x5884f5,_0x1e8911){const _0x23eb3d='user:range:'+_0x51a41e,_0x30f3d7='user:position:'+_0x51a41e,_0x26bebf=_0x127050['getContainedElement']();let _0x41d9df=_0x127050['start'];if(_0x26bebf&&_0x26bebf['is']('element','tableCell')){const _0x1e4fb7=function(_0x367259,_0x2ce789){for(const _0x47b2b9 of _0x367259['getPositions']())if(_0x2ce789['schema']['checkChild'](_0x47b2b9,'$text'))return _0x47b2b9;}(_0x127050,_0x5884f5);_0x1e4fb7&&(_0x41d9df=_0x1e4fb7,_0x127050=_0x1e8911['createRange'](_0x41d9df));}const _0x318359=_0x1e8911['createRange'](_0x41d9df);_0x5884f5['markers']['has'](_0x23eb3d)?(_0x1e8911['updateMarker'](_0x23eb3d,{'range':_0x127050}),_0x1e8911['updateMarker'](_0x30f3d7,{'range':_0x318359})):(_0x1e8911['addMarker'](_0x23eb3d,{'range':_0x127050,'usingOperation':!0x0}),_0x1e8911['addMarker'](_0x30f3d7,{'range':_0x318359,'usingOperation':!0x0}));}function K(_0x55fe67,_0x34de51,_0x185d6e){const _0xa81c90=_0x55fe67['t'],t=_0x55fe67['t'];switch(_0x34de51){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 _0xa81c90({'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'},_0x185d6e);default:return'';}}let X=0x1;class l extends _0x5d6859{static ['CollaborativeEditingService']=/* #__PURE__ -- @preserve */
|
|
25
|
-
((()=>_0x5a5013)());['_offset'];['sessionId'];['serverHistory'];['_channelId'];['_service'];['_document'];['_compressor'];['_bufferedOperations'];['_knownOperations'];['_knownRootNames'];['_pendingAction'];['_hasSelectionChanged'];['_sendBufferedOperationsDelayId'];['_baseBufferDelay'];['_currentBufferDelay'];['_lastSyncedOperationId'];['_disconnectionOperations'];['_operationIdentifier'];static get['requires'](){return[n,i,$,_0x1b6042,_0x595866,_0x141545];}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 _0x2e1773=this['serverHistory']['getOperations']();for(let _0x59cbe8=_0x2e1773['length']-0x1;_0x59cbe8>=0x0;_0x59cbe8--){const _0x52d6fd=_0x2e1773[_0x59cbe8];if(!this['_disconnectionOperations']['has'](_0x52d6fd))return _0x52d6fd['baseVersion']+0x1-this['_offset'];}return 0x0;}constructor(_0x981529){if(super(_0x981529),this['_offset']=0x0,this['sessionId']=null,this['serverHistory']=new _0xb8e3ac(),this['editor']['config']['define']('collaboration',{}),this['_channelId']=this['editor']['config']['get']('collaboration.channelId'),!this['_channelId'])throw new _0x4d1849('collaboration-missing-channelid',this);const _0x3833f8=_0x981529['config']['get']('cloudServices.bundleVersion')||nt;this['_service']=new l['CollaborativeEditingService'](_0x3833f8,this['_channelId']),this['_document']=this['editor']['model']['document'],this['_compressor']=new _0x29c866(),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 tt(this['_disconnectionOperations']);}['init'](){const _0x2444c7=this['editor'],_0x4f7182=_0x2444c7['plugins']['get'](_0x595866),_0x73da9c=_0x2444c7['plugins']['get'](n);this['listenTo'](_0x4f7182,'getOperationAuthor',(_0x164c40,_0x3221ce)=>{const _0x812b13=_0x3221ce[0x0];_0x812b13['_authorId']&&(_0x164c40['return']=_0x4f7182['getUser'](_0x812b13['_authorId']),_0x164c40['stop']()),null===_0x812b13['_authorId']&&(_0x164c40['return']=null,_0x164c40['stop']());},{'priority':'high'}),this['listenTo'](_0x2444c7['model']['document']['selection'],'change:range',(_0x395bbb,_0x2d3ad2)=>{_0x2d3ad2['directChange']&&this['_refreshUserSelectionMarkers']();}),this['listenTo'](_0x2444c7['editing']['view'],'change:hasDomSelection',()=>{this['_refreshUserSelectionMarkers']();}),this['_initThrowingOnDataSet'](),_0x2444c7['model']['on']('applyOperation',(_0x3577e3,_0x45b962)=>{const _0x54f52a=_0x45b962[0x0];_0x54f52a['isDocumentOperation']&&(this['_saveOperationInBuffer'](_0x54f52a),this['_shouldSendUpdate']()&&this['_sendBufferedOperationsDelayed']());}),this['_setUpDataInit'](),this['bind']('_isEditingAllowed')['to'](_0x73da9c,'state',this,'_hasSynchronizationProblem',(_0x7326bb,_0x208e84)=>'connected'===_0x7326bb&&!_0x208e84),this['on']('change:_isEditingAllowed',()=>{this['_isEditingAllowed']?_0x2444c7['disableReadOnlyMode']('rtc-offline'):_0x2444c7['enableReadOnlyMode']('rtc-offline');}),this['_isEditingAllowed']?_0x2444c7['disableReadOnlyMode']('rtc-offline'):_0x2444c7['enableReadOnlyMode']('rtc-offline'),this['set']('_isConnected',!0x1);}async['reconnect'](){const _0x364d78=this['editor']['plugins']['get'](i),_0x3a6c97=this['editor']['plugins']['get'](n);try{this['_isPendingUpdate']=!0x0,_0x364d78['unregister'](this['_channelId']);const _0x492b87=await this['_service']['reconnect'](_0x3a6c97['connection'],this['lastSyncVersion']);await this['_handleReconnectionResponse'](_0x492b87)&&(this['_isPendingUpdate']=!0x1,this['_clearPendingAction']());const _0x37a28f=await this['_service']['getConnectedSessions']();_0x364d78['register'](this['_channelId'],_0x37a28f),this['_handleSendingSelectionMarkers'](),this['_isConnected']=!0x0;}catch(_0x4a6e99){if(function(_0x17dfe5){return'404'===_0x17dfe5['code'];}(_0x4a6e99)&&this['sessionId'])await this['_connectAfterSessionHasBeenFlushed']();else{if(function(_0x35c576){return'409'===_0x35c576['code'];}(_0x4a6e99)){const _0x4fcdf2=K(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'](_0x4fcdf2);}else{if(!(_0x4a6e99 instanceof Y))throw _0x4a6e99;this['_handleReconnectionError']();}}}}['destroy'](){const _0x30ea57=this['editor']['plugins']['get'](n),_0x1996b8=this['editor']['plugins']['get'](i);this['editor']['enableReadOnlyMode']('rtc-destroyed'),_0x1996b8['channelSessions']['has'](this['_channelId'])&&_0x1996b8['unregister'](this['_channelId']),_0x30ea57['removeFromReconnectionStack'](this),this['_disconnectService'](),super['destroy']();}async['_handleReconnectionResponse'](_0xec3f22){if(this['sessionId']!==_0xec3f22['sessionId']&&this['_lastSyncedOperationId']!==_0xec3f22['lastOperationId'])throw new Y();return this['sessionId']=_0xec3f22['sessionId'],this['_handleServerResponse']([],{..._0xec3f22,'wereChangesApplied':!0x1,'data':_0xec3f22['data']},'reconnect');}async['_connectService'](_0x52fb9c,_0x33d140=!0x1){const {connection:_0x329dce}=this['editor']['plugins']['get'](n);l['CollaborativeEditingService']['getConnectedSessions'](_0x329dce,this['_channelId'])['then'](_0x56e866=>this['_initSessionsHandling'](_0x56e866))['catch'](_0x1ca1f6=>{this['_crash']('realtimecollaborationclient-init-session-connection-error',_0x1ca1f6);}),this['listenTo'](this['_service'],'operationsReceived',this['_handleReceivedOperations']['bind'](this)),this['listenTo'](this['_service'],'error',(_0x492a1e,_0x230e7b)=>{this['_crash']('realtimecollaborationclient-init-service-internal-error',_0x230e7b);}),this['listenTo'](this['_service'],'disconnected',()=>{this['_isConnected']=!0x1;});const _0x1a177b=this['_operationIdentifier']['getIdOfTheLastOperation'](_0x52fb9c);this['_isPendingUpdate']=!0x0;const _0x5f0097=await this['_service']['connect'](_0x329dce,this['_compressOperations'](_0x52fb9c),_0x1a177b);if(this['sessionId']=_0x5f0097['sessionId'],_0x33d140){if(!_0x5f0097['wereChangesApplied'])return void this['_handleReconnectionError']();this['_isPendingUpdate']=!0x1,this['_clearPendingAction'](),this['serverHistory']['reset'](),this['_offset']=_0x5f0097['offset'],this['serverHistory']['version']=this['_offset'],await this['_handleServerResponse'](_0x52fb9c,_0x5f0097,'reconnection:\x20flushed\x20session');}else await this['_handleInitialConnectionData'](_0x5f0097,_0x52fb9c);this['_handleSendingSelectionMarkers'](),this['_isConnected']=!0x0;}['_handleSendingSelectionMarkers'](){const _0x12c890=this['editor']['plugins']['get'](i),_0x555e04=this['editor']['plugins']['get']($),_0x395a6e=_0x12c890['channelSessions']['get'](this['_channelId']);_0x395a6e&&_0x395a6e['length']>0x1?_0x555e04['createUserMarkerOperations']():this['listenTo'](_0x12c890,'sessionAdd:'+this['_channelId'],()=>{0x2===_0x12c890['channelSessions']['get'](this['_channelId'])['length']&&_0x555e04['createUserMarkerOperations']();});}async['_handleReceivedOperations'](_0x183890,_0x34fe4b,_0xd3912d,_0x21b4dd){if(!this['_isPendingUpdate']&&this['_document']['version']==_0x34fe4b){const _0x4eb9c9=this['_decompressOperations'](_0xd3912d,_0x21b4dd);await this['_fetchMissingUsers'](_0x4eb9c9),this['_handleExternalOperations'](_0x4eb9c9,_0x34fe4b,_0xd3912d['lastOperationId'])||this['_crash']('realtimecollaborationclient-init-service-incorrect-server-operation');}}async['_connectAfterSessionHasBeenFlushed'](){this['_disconnectService']();const {locale:_0x31e2c3}=this['editor'];let _0x422b21;try{_0x422b21=await this['_service']['getDocumentDetails']();}catch{const _0xc35da0=K(_0x31e2c3,'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'](_0xc35da0);}const _0x21ef29=_0x422b21['currentDocumentSession']||_0x422b21['lastDocumentSession'];if(this['_lastSyncedOperationId']!==_0x21ef29['lastOperationId']){const _0x53827b=K(_0x31e2c3,'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'](_0x53827b);}await this['_connectService'](this['editor']['model']['document']['history']['getOperations'](),!0x0);}['_disconnectService'](){this['_service']['disconnect'](),this['_bufferedOperations']=[],clearTimeout(this['_sendBufferedOperationsDelayId']),this['stopListening'](this['_service']);}['_initSessionsHandling'](_0x59f5c){const _0x43b208=this['editor']['plugins']['get'](i);this['listenTo'](_0x43b208,'sessionAdd:'+this['_channelId'],(_0x37a431,{session:_0x482723})=>{if(_0x482723['id']===_0x43b208['mySessionId']){_0x37a431['off']();const _0x5e3437=this['editor']['plugins']['has']('CommentsOnly')&&this['editor']['plugins']['get']('CommentsOnly');let _0x1b5f1b=_0x482723['permissions'];_0x5e3437&&_0x5e3437['isEnabled']&&(_0x1b5f1b=_0x1b5f1b['filter'](_0x4b7241=>'document:write'!==_0x4b7241)),this['editor']['plugins']['get']('Permissions')['setPermissions'](_0x1b5f1b,this['_channelId']);}}),_0x43b208['register'](this['_channelId'],_0x59f5c);}['_initThrowingOnDataSet'](){const _0x2c0903=this['editor']['data']['set'];this['editor']['data']['set']=(..._0x33d086)=>{if(!_0x33d086[_0x33d086['length']-0x1]['suppressErrorInCollaboration'])throw new _0x4d1849('realtimecollaborationclient-editor-setdata-and-editor-data-set-are-forbidden-in-real-time-collaboration',this);_0x2c0903['apply'](this['editor']['data'],_0x33d086);};}['_setUpDataInit'](){this['editor']['data']['on']('init',(_0x46c49c,[_0x4197f2])=>{if(this['_document']['version'])throw new _0x4d1849('realtimecollaborationclient-init-document-already-initialized',this);_0x46c49c['stop'](),this['_setPendingAction']();const _0xa6194e=this['editor']['config']['get']('rootsAttributes'),_0x364e26=this['_getOperationsFromInitData'](_0x4197f2,_0xa6194e);0x0==_0x364e26['length']&&_0x364e26['push'](new _0x5bebc6(0x0)),_0x46c49c['return']=this['_connectService'](_0x364e26)['then'](()=>{this['editor']['plugins']['get'](n)['addToReconnectionStack'](this),this['editor']['data']['fire']('ready');})['catch'](_0x60e185=>this['_crash']('realtimecollaborationclient-init-connection-failed',_0x60e185))['finally'](()=>this['_clearPendingAction']());},{'priority':'high'}),this['editor']['on']('loadRoot',async(_0x580866,[_0x42d630,_0x4681e4])=>{_0x580866['stop']();const _0x1834a9=this['editor']['model']['document']['getRoot'](_0x42d630);if(!this['_knownRootNames']['has'](_0x42d630)){const _0x3b9d1b=_0x4681e4&&_0x4681e4['data']?_0x4681e4['data']:'',_0x1cca70=_0x4681e4&&_0x4681e4['attributes']?_0x4681e4['attributes']:{};await this['_loadRoot'](_0x42d630,_0x3b9d1b,_0x1cca70);}this['editor']['model']['enqueueChange']({'isUndoable':!0x1},()=>{_0x1834a9['_isLoaded']=!0x0,this['editor']['model']['document']['differ']['_bufferRootLoad'](_0x1834a9);});},{'priority':'high'});}async['_fetchMissingUsers'](_0x121e61){const _0x5bf046=this['editor']['plugins']['get'](_0x595866),{connection:_0x29f6d6}=this['editor']['plugins']['get'](n),_0x362471=new Set();for(const _0x281fa1 of _0x121e61){const _0x36a16d=_0x281fa1['_authorId'];_0x36a16d&&!_0x5bf046['getUser'](_0x36a16d)&&_0x362471['add'](_0x36a16d);}if(0x0===_0x362471['size'])return;const _0x3662c6=await ct['getMany'](_0x29f6d6,Array['from'](_0x362471));for(const _0x13c25c of _0x3662c6)_0x5bf046['getUser'](_0x13c25c['id'])||_0x5bf046['addUser'](_0x13c25c);}['_getOperationsFromInitData'](_0x1fea1d,_0x3b6927={}){const _0x329544=this['editor']['model'],_0xae9371=[];let _0x289003=0x0;const _0x1abbf0='string'==typeof _0x1fea1d?{'main':_0x1fea1d}:_0x1fea1d;for(const _0x40f54d of Object['keys'](_0x1abbf0)){if(!this['_document']['roots']['has'](_0x40f54d))throw new _0x4d1849('realtimecollaborationclient-init-non-existent-root',this);const _0x2c4278=this['editor']['data']['parse'](_0x1abbf0[_0x40f54d]),_0x40a918=this['_document']['getRoot'](_0x40f54d),_0x390352=new _0x298a31(_0x329544['createPositionAt'](_0x40a918,0x0),_0x2c4278,_0x289003++);_0xae9371['push'](_0x390352);for(const [_0x5044f0,_0x424f87]of _0x2c4278['markers']){const _0x13fe6b=_0x329544['createRange'](_0x329544['createPositionFromPath'](_0x40a918,_0x424f87['start']['path']['slice']()),_0x329544['createPositionFromPath'](_0x40a918,_0x424f87['end']['path']['slice']())),_0x3b3103=new _0x1d3670(_0x5044f0,null,_0x13fe6b,_0x329544['markers'],!0x0,_0x289003++);_0xae9371['push'](_0x3b3103);}}if(_0x3b6927)for(const [_0x33c5df,_0x52effe]of Object['entries'](_0x3b6927)){const _0x18bd7f=_0x329544['document']['getRoot'](_0x33c5df);if(!_0x18bd7f)throw new _0x4d1849('multi-root-editor-root-attributes-no-root',null);for(const [_0x41ee0e,_0x4bb06f]of Object['entries'](_0x52effe))if(null!==_0x4bb06f){const _0x9cd956=new _0xd1c1c(_0x18bd7f,_0x41ee0e,null,_0x4bb06f,_0x289003++);_0xae9371['push'](_0x9cd956);}}return _0xae9371;}async['_loadRoot'](_0x25027c,_0x376c05,_0x3003d5){this['_getOperationsFromInitData']({[_0x25027c]:_0x376c05},{[_0x25027c]:_0x3003d5})['forEach']((_0x11722f,_0x4d32b2)=>{_0x11722f['baseVersion']=this['_document']['version']+_0x4d32b2,_0x11722f['_isInit']=!0x0,this['_saveOperationInBuffer'](_0x11722f);}),this['_sendBufferedOperationsDelayed'](),await this['_waitUntilSynced']();}async['_handleInitialConnectionData'](_0x2d613e,_0x214195){let _0x1beb6c;this['_offset']=_0x2d613e['offset'];const _0x200c43=_0x2d613e['wereChangesApplied']&&!_0x2d613e['initData'],_0x205002=_0x200c43?0x0:_0x2d613e['data']['baseVersion'];if(_0x214195['forEach'](_0x516199=>{_0x516199['_isInit']=!0x0,_0x516199['createdAt']=_0x2d613e['sessionCreatedAt'],_0x516199['_authorId']=null;}),_0x200c43)_0x1beb6c=_0x214195,this['_applyOperationsSet'](_0x1beb6c,_0x200c43);else{if(_0x2d613e['initData']){const _0x26fbd4=this['_getOperationsFromInitData'](_0x2d613e['initData']);this['_document']['history']['version']=-_0x26fbd4['length'],_0x26fbd4['forEach'](_0x33ab38=>{_0x33ab38['baseVersion']-=_0x26fbd4['length'],_0x33ab38['createdAt']=_0x2d613e['sessionCreatedAt'],_0x33ab38['_isInit']=!0x0,_0x33ab38['_authorId']=null;}),this['_applyOperationsSet'](_0x26fbd4,!0x0),this['serverHistory']['version']=-_0x26fbd4['length']+this['_offset'],this['_updateServerHistory'](_0x26fbd4);}this['_document']['history']['version']=_0x205002,_0x1beb6c=this['_decompressOperations'](_0x2d613e['data'],_0x2d613e['metadata']),await this['_fetchMissingUsers'](_0x1beb6c),this['_applyOperationsSet'](_0x1beb6c,_0x200c43);}_0x2d613e['lastOperationId']&&(this['_operationIdentifier']['setIdForTheLastOperation'](_0x1beb6c,_0x2d613e['lastOperationId']),this['_lastSyncedOperationId']=_0x2d613e['lastOperationId']),this['serverHistory']['version']=_0x205002+this['_offset'],this['_updateServerHistory'](_0x1beb6c),_0x214195['filter'](_0x234fa9=>{const _0x1c2730=this['_getAffectedRoot'](_0x234fa9);return _0x1c2730&&!this['_knownRootNames']['has'](_0x1c2730);})['forEach']((_0x313696,_0x299d76)=>{_0x313696['baseVersion']=this['_document']['version']+_0x299d76,this['_saveOperationInBuffer'](_0x313696);}),this['_shouldSendUpdate']()?(this['_currentBufferDelay']=0x0,this['_sendBufferedOperationsDelayed'](!0x0),await this['_waitUntilSynced']()):(this['_isPendingUpdate']=!0x1,this['_clearPendingAction']());}['_crash'](_0x2a85cc,_0x258855){const _0x1665a5=_0x258855&&_0x258855['message'];if(_0x1665a5&&_0x1665a5['startsWith']('realtimecollaborationclient'))throw _0x258855;const _0x33ff8e=this['editor']['plugins']['get'](n);throw this['_isPendingUpdate']=!0x0,_0x33ff8e['disconnect'](),this['editor']['enableReadOnlyMode']('realtimecollaborationclient-error'),new _0x4d1849(_0x2a85cc,this['editor'],_0x1665a5?{'originalError':_0x1665a5}:void 0x0);}['_saveOperationInBuffer'](_0x37f58a){this['_knownOperations']['has'](_0x37f58a)||(this['_knownOperations']['add'](_0x37f58a),this['_bufferedOperations']['push'](_0x37f58a),this['_pendingAction']||'marker'==_0x37f58a['type']&&!_0x37f58a['affectsData']||this['_setPendingAction']());}['_sendBufferedOperationsDelayed'](_0x5c4b3e=!0x1){!_0x5c4b3e&&this['_isPendingUpdate']||(this['_isPendingUpdate']=!0x0,clearTimeout(this['_sendBufferedOperationsDelayId']),this['_sendBufferedOperationsDelayId']=setTimeout(()=>{this['_sendBufferedOperations']()['then'](_0xf34805=>{_0xf34805&&(this['_clearPendingAction'](),this['_isPendingUpdate']=!0x1);})['catch'](_0x3e401b=>{this['_clearPendingAction'](),this['_isPendingUpdate']=!0x1,function(_0xf36ad7){return _0xf36ad7['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0xf36ad7['message']['startsWith']('cloud-services-internal-error:\x20Collaborative\x20Editing\x20Service\x20is\x20not\x20connected.')||_0xf36ad7['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}(_0x3e401b)||this['_crash'](_0x3e401b['message'],_0x3e401b);});},this['_currentBufferDelay']));}['_waitUntilSynced'](){return new Promise(_0x23c8ef=>{this['on']('change:_isPendingUpdate',()=>{_0x23c8ef();});});}async['_sendBufferedOperations'](){const _0x215631=this['editor']['plugins']['get']($);if(this['_shouldSendSelectionUpdate']()&&(_0x215631['createUserMarkerOperations'](),this['_hasSelectionChanged']=!0x1),!this['_shouldSendUpdate']())return!0x0;const _0x5f4540=[...this['_bufferedOperations']];for(const _0x48ede1 of _0x5f4540)_0x48ede1['wasUndone']=this['_document']['history']['isUndoneOperation'](_0x48ede1);const _0x12fbad=this['_operationIdentifier']['getIdOfTheLastOperation'](_0x5f4540),_0x411c05=X++,_0x4905ae=this['_compressOperations'](_0x5f4540),_0x2bd6bf=await this['_service']['sendOperations'](_0x4905ae,_0x4905ae['baseVersion'],_0x12fbad);try{return await this['_handleServerResponse'](_0x5f4540,_0x2bd6bf,_0x411c05);}catch(_0x3cf0ee){return this['_crash']('realtimecollaborationclient-sendbufferedoperations',_0x3cf0ee);}}async['_handleServerResponse'](_0x1b0ffc,_0x4ad69f,_0x449fb8){if('error'in _0x4ad69f)throw _0x4ad69f['error'];let _0x210e60=!0x1;if(_0x4ad69f['wereChangesApplied']){_0x4ad69f['lastOperationId']&&(this['_lastSyncedOperationId']=_0x4ad69f['lastOperationId']),this['_bufferedOperations']=this['_bufferedOperations']['filter'](_0xf5e0b8=>!_0x1b0ffc['includes'](_0xf5e0b8));for(const _0x12ef52 of _0x1b0ffc)_0x12ef52['createdAt']='lastOperationAcceptedAt'in _0x4ad69f&&_0x4ad69f['lastOperationAcceptedAt']||void 0x0;Z(_0x1b0ffc,_0x4ad69f['version']-_0x1b0ffc['length']),this['_updateServerHistory'](_0x1b0ffc);const _0x12c45a=_0x1b0ffc['filter'](_0x3c1cc1=>{if(!_0x3c1cc1['_isInit'])return!0x1;const _0x277dc2=this['_getAffectedRoot'](_0x3c1cc1);return _0x277dc2&&!this['_knownRootNames']['has'](_0x277dc2);});Z(_0x12c45a,this['_document']['version']),this['_applyOperationsSet'](_0x12c45a),_0x210e60=!0x0,this['_currentBufferDelay']=this['_baseBufferDelay'];}else{const _0x11cf99=this['_decompressOperations'](_0x4ad69f['data'],_0x4ad69f['metadata'])['filter'](_0x21f0d0=>_0x21f0d0['baseVersion']>=this['_lastServerVersion']);_0x11cf99['forEach'](_0xc2314a=>this['_addKnownRoot'](_0xc2314a)),this['_bufferedOperations']=this['_bufferedOperations']['filter'](_0x5e912e=>!_0x5e912e['_isInit']||!this['_knownRootNames']['has'](this['_getAffectedRoot'](_0x5e912e))),this['_bufferedOperations']['length']&&Z(this['_bufferedOperations'],this['_bufferedOperations'][0x0]['baseVersion']),await this['_fetchMissingUsers'](_0x11cf99),_0x210e60=this['_handleExternalOperations'](_0x11cf99,_0x4ad69f['version'],_0x4ad69f['lastOperationId']),this['_currentBufferDelay']=Math['round'](this['_currentBufferDelay']/0x2);}return _0x210e60?!this['_shouldSendUpdate']()||(this['_sendBufferedOperationsDelayed'](!0x0),!0x1):this['_crash']('realtimecollaborationclient-handleserverresponse');}['_handleExternalOperations'](_0x3d9f8d,_0x2faf36,_0x42931c){try{const _0x4fca16={'document':this['_document'],'useRelations':!0x1,'padWithNoOps':!0x0},{operationsA:_0x48920,operationsB:_0x1c8342,originalOperations:_0x4b124e}=_0x2eba0d(_0x3d9f8d,this['_bufferedOperations'],_0x4fca16);Z(_0x48920,this['_document']['version']),Z(_0x1c8342,_0x2faf36);for(const _0x2fe5f1 of _0x48920){const _0x3af1b5=_0x4b124e['get'](_0x2fe5f1);_0x2fe5f1['_authorId']=_0x3af1b5?_0x3af1b5['_authorId']:null;}_0x42931c&&(this['_operationIdentifier']['setIdForTheLastOperation'](_0x3d9f8d,_0x42931c),this['_lastSyncedOperationId']=_0x42931c),this['_bufferedOperations']=[..._0x1c8342],this['_applyOperationsSet'](_0x48920),this['_updateServerHistory'](_0x3d9f8d);}catch(_0x5ebab3){return console['error'](_0x5ebab3),!0x1;}return!0x0;}['_applyOperationsSet'](_0x16621c,_0x5d3073=!0x1){this['editor']['model']['enqueueChange']({'isUndoable':!0x1,'isLocal':!0x1},_0x45afae=>{for(const _0xa78db of _0x16621c)this['_knownOperations']['add'](_0xa78db),this['_addKnownRoot'](_0xa78db),_0x45afae['batch']['addOperation'](_0xa78db),this['editor']['model']['applyOperation'](_0xa78db);});}['_addKnownRoot'](_0x5d431e){const _0x39f80b=this['_getAffectedRoot'](_0x5d431e);_0x39f80b&&this['_knownRootNames']['add'](_0x39f80b);}['_getAffectedRoot'](_0x1fe391){let _0x1d0a23,_0x5914d9;switch(_0x1fe391['type']){case'insert':_0x1d0a23=_0x1fe391['position']['root'];break;case'marker':if(_0x5914d9=_0x1fe391['newRange'],!_0x5914d9)return null;_0x1d0a23=_0x5914d9['root'];break;case'addRootAttribute':_0x1d0a23=_0x1fe391['root'];break;case'addRoot':_0x1d0a23=_0x1fe391['affectedSelectable'];break;case'move':_0x1d0a23=_0x1fe391['targetPosition']['root'];break;default:return null;}return _0x1d0a23['rootName'];}['_updateServerHistory'](_0x1f2306){_0x1f2306['forEach'](_0x254912=>{const _0x29bb65=_0x254912['clone']();_0x29bb65['_authorId']=_0x254912['_authorId'],_0x29bb65['_isInit']=!!_0x254912['_isInit'],_0x29bb65['createdAt']=_0x254912['createdAt'],_0x29bb65['baseVersion']+=this['_offset'],_0x254912['_isDisconnection']&&this['_disconnectionOperations']['add'](_0x29bb65),this['serverHistory']['addOperation'](_0x29bb65);});}['_handleReconnectionError'](_0x4615bf){const _0x525432=this['editor']['plugins']['get']('Notification'),_0x43a83a=this['editor']['locale'];_0x4615bf||(_0x4615bf=K(_0x43a83a,'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.')),_0x525432['showWarning'](_0x4615bf,{'title':K(_0x43a83a,'Synchronization\x20issue'),'namespace':'real-time-collaboration'}),this['_hasSynchronizationProblem']=!0x0,clearTimeout(this['_sendBufferedOperationsDelayId']),this['_bufferedOperations']=[],this['editor']['plugins']['get'](n)['disconnect']();}['_setPendingAction'](){this['_pendingAction']||(this['_pendingAction']=this['editor']['plugins']['get'](_0x1b6042)['add'](K(this['editor']['locale'],'PENDING_ACTION_SENDING_DATA')));}['_clearPendingAction'](){this['_pendingAction']&&(this['editor']['plugins']['get'](_0x1b6042)['remove'](this['_pendingAction']),this['_pendingAction']=null);}['_compressOperations'](_0x2a1a33){const _0x247bd0=_0x2a1a33['map'](_0x3a2f46=>_0x3a2f46['toJSON']());return this['_compressor']['compress'](_0x247bd0);}['_decompressOperations'](_0x1ef857,_0x2fa0c7){return this['_compressor']['decompress'](_0x1ef857)['map']((_0x3ff82c,_0x94cb74)=>{const _0x373ca8='init'==_0x2fa0c7[_0x94cb74]['type'];if('InsertOperation'==_0x3ff82c['__className']){const _0x25bee1=_0x3ff82c['position']['root'];!this['_document']['getRoot'](_0x25bee1)&&(this['_document']['createRoot']('$root',_0x25bee1)['_isAttached']=!0x1);}const _0xf1f314=_0x3c0389['fromJSON'](_0x3ff82c,this['_document']);return _0xf1f314['wasUndone']=_0x3ff82c['wasUndone'],_0xf1f314['_isInit']=_0x373ca8,_0xf1f314['_authorId']=_0x373ca8?null:_0x2fa0c7[_0x94cb74]['userId'],_0xf1f314['_isDisconnection']='cs:removeUser'===_0x2fa0c7[_0x94cb74]['type'],_0xf1f314['createdAt']=_0x2fa0c7[_0x94cb74]['createdAt'],_0xf1f314;});}['_refreshUserSelectionMarkers'](){this['_hasSelectionChanged']=!0x0,this['_shouldSendSelectionUpdate']()?this['_sendBufferedOperationsDelayed']():this['_hasSelectionChanged']=!0x1;}['_shouldSendSelectionUpdate'](){const _0x41ceaa=this['editor']['plugins']['get'](i)['channelSessions']['get'](this['_channelId']);return!this['editor']['isReadOnly']&&!!_0x41ceaa&&_0x41ceaa['length']>0x1&&this['_hasSelectionChanged'];}['_shouldSendUpdate'](){return this['_bufferedOperations']['length']>0x0||this['_shouldSendSelectionUpdate']();}}class Y extends Error{}function Z(_0x1c42c5,_0x1c5c8f){for(const _0x3770d7 of _0x1c42c5)_0x3770d7['baseVersion']=_0x1c5c8f++;}class tt{['_ignoredOperations'];['_operationToId'];constructor(_0x17c9b7){this['_ignoredOperations']=_0x17c9b7,this['_operationToId']=new WeakMap();}['getIdOfTheLastOperation'](_0x1999b6){let _0x25f52c=_0x1999b6['length'];for(;_0x25f52c--;){const _0x78265=_0x1999b6[_0x25f52c];if(!this['_ignoredOperations']['has'](_0x78265)){if(!this['_operationToId']['has'](_0x78265)){const _0x585ab7=_0xa36db5()['slice'](0x1,0x12);this['_operationToId']['set'](_0x78265,_0x585ab7);}return this['_operationToId']['get'](_0x78265);}}}['setIdForTheLastOperation'](_0x118f35,_0x13689e){if(!_0x13689e)return;let _0x3c87bb=_0x118f35['length'];for(;_0x3c87bb--;){const _0x246077=_0x118f35[_0x3c87bb];this['_ignoredOperations']['has'](_0x246077)||this['_operationToId']['set'](_0x246077,_0x13689e);}}}class a extends _0x5d6859{static get['requires'](){return[l];}static get['pluginName'](){return'RealTimeCollaborativeEditing';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}class s extends _0x381c27{static ['CommentsService']=/* #__PURE__ -- @preserve */
|
|
26
|
-
((()=>_0x3afce2)());['_services'];static get['requires'](){return[n,'CommentsRepository',i,_0x595866];}static get['pluginName'](){return'CloudServicesCommentsAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x59c858){super(_0x59c858),this['_services']=new Map();}async['init'](){const _0x1ff06f=this['context'],_0x3ed5ba=_0x1ff06f['plugins']['get']('CommentsRepository');if(_0x1ff06f['plugins']['get'](n)['addToReconnectionStack'](this),_0x3ed5ba['adapter']={'addCommentThread':async({channelId:_0x4c19e1,threadId:_0x44f2fb,comments:_0x191f23,resolvedAt:_0x41dab9,resolvedBy:_0x5a571e,context:_0x1f4bc3,attributes:_0x1f8333})=>{const _0x4e21ff=await this['_getService'](_0x4c19e1)['addCommentThread']({'commentThreadId':_0x44f2fb,'comments':_0x191f23['map'](_0x3bc005=>function(_0x390c9e,_0x1e1c58,_0x455f30){return{'commentThreadId':_0x455f30,'commentId':_0x390c9e['commentId'],'userId':_0x390c9e['authorId'],'content':_0x390c9e['content'],'documentId':_0x1e1c58,'createdAt':_0x390c9e['createdAt'],'attributes':_0x390c9e['attributes']||{}};}(_0x3bc005,_0x4c19e1,_0x44f2fb)),'resolvedAt':_0x41dab9,'resolvedBy':_0x5a571e,'context':_0x1f4bc3,'attributes':_0x1f8333})['catch'](at);return{'threadId':_0x4e21ff['commentThreadId'],'comments':_0x4e21ff['comments']};},'getCommentThread':async({channelId:_0x41e4ad,threadId:_0x5cc846})=>{const _0x2133a8=await this['_getService'](_0x41e4ad)['getCommentThread'](_0x5cc846)['catch'](at);return _0x2133a8['deletedAt']?null:(await this['_fetchMissingUsersForThreads']([_0x2133a8]),{'threadId':_0x2133a8['commentThreadId'],'comments':_0x2133a8['comments']['map'](B),'context':_0x2133a8['context'],'resolvedAt':_0x2133a8['resolvedAt'],'resolvedBy':_0x2133a8['resolvedBy'],'attributes':_0x2133a8['attributes']||{}});},'updateCommentThread':async({channelId:_0x5220bf,threadId:_0x2eaef5,context:_0x30f592,unlinkedAt:_0x49845d,attributes:_0x3899b6})=>this['_getService'](_0x5220bf)['updateCommentThread']({'commentThreadId':_0x2eaef5,'context':_0x30f592,'attributes':_0x3899b6,'unlinkedAt':_0x49845d})['catch'](F)['catch'](at),'resolveCommentThread':async({channelId:_0x444406,threadId:_0x243058})=>{const _0xec748c=await this['_getService'](_0x444406)['resolveCommentThread'](_0x243058)['catch'](F)['catch'](at);return{'threadId':_0xec748c['commentThreadId'],'resolvedAt':_0xec748c['resolvedAt'],'resolvedBy':_0xec748c['resolvedBy']};},'reopenCommentThread':async({channelId:_0x299489,threadId:_0x5cef1a})=>this['_getService'](_0x299489)['reopenCommentThread'](_0x5cef1a)['catch'](F)['catch'](at),'removeCommentThread':({channelId:_0x29cf7e,threadId:_0x3caace})=>this['_getService'](_0x29cf7e)['removeCommentThread'](_0x3caace)['catch'](F)['catch'](at),'addComment':({channelId:_0x4fcd82,threadId:_0x4ab0a7,commentId:_0x2637d1,content:_0x4dbfd1,attributes:_0x411455})=>this['_getService'](_0x4fcd82)['addComment'](_0x4ab0a7,_0x2637d1,_0x4dbfd1,_0x411455)['catch'](at),'updateComment':({channelId:_0x224c17,threadId:_0x5ba398,commentId:_0x122672,content:_0x96370d,attributes:_0x1e8a1e})=>this['_getService'](_0x224c17)['updateComment'](_0x5ba398,_0x122672,_0x96370d,_0x1e8a1e)['catch'](F)['catch'](at),'removeComment':({channelId:_0x341603,threadId:_0x5ad533,commentId:_0x13b1ae})=>this['_getService'](_0x341603)['removeComment'](_0x5ad533,_0x13b1ae)['catch'](F)['catch'](at)},_0x1ff06f instanceof _0x51e0d6){const _0x542717=_0x1ff06f['config']['get']('collaboration.channelId'),_0x5df6cf=_0x1ff06f['plugins']['get'](i);await this['_setUpService'](_0x542717);const _0x5bff2b=await this['_services']['get'](_0x542717)['getConnectedSessions']();this['listenTo'](_0x5df6cf,'sessionAdd:'+_0x542717,(_0x114584,{session:_0x595a32})=>{_0x595a32['id']===_0x5df6cf['mySessionId']&&(_0x114584['off'](),this['context']['plugins']['get']('Permissions')['setPermissions'](_0x595a32['permissions'],_0x542717));}),_0x5df6cf['register'](_0x542717,_0x5bff2b);}}async['_setUpService'](_0x169a84){if(this['_services']['has'](_0x169a84))throw new _0x4d1849('cloudservicescommentsadapter-connect-already-connected',null,{'channelId':_0x169a84});const _0x1d2661=this['context']['plugins']['get']('CommentsRepository'),_0x5d041e=new s['CommentsService'](_0x169a84);this['_services']['set'](_0x169a84,_0x5d041e),this['listenTo'](_0x5d041e,'commentThreadAdded',(_0x5009fc,_0x1b9ffa)=>{const {commentThreadId:_0x5b0940,documentId:_0x599383,context:_0x334d10,attributes:_0x503bb6,resolvedAt:_0x5ea723,resolvedBy:_0x1b7ef8,comments:_0x3ebf2e}=_0x1b9ffa;_0x1d2661['getCommentThread'](_0x5b0940)||_0x1d2661['addCommentThread']({'threadId':_0x5b0940,'channelId':_0x599383,'comments':_0x3ebf2e?_0x3ebf2e['map'](B):[],'context':_0x334d10,'attributes':_0x503bb6,'resolvedAt':_0x5ea723,'resolvedBy':_0x1b7ef8,'isFromAdapter':!0x0});}),this['listenTo'](_0x5d041e,'commentThreadUpdated',(_0x205e6b,{commentThreadId:_0x5808ec,documentId:_0xbe16c8,context:_0x2add93,unlinkedAt:_0x2e9d63,attributes:_0x42cea5})=>{_0x1d2661['getCommentThread'](_0x5808ec)&&_0x1d2661['updateCommentThread']({'threadId':_0x5808ec,'channelId':_0xbe16c8,'context':_0x2add93,'unlinkedAt':_0x2e9d63,'attributes':_0x42cea5,'isFromAdapter':!0x0});}),this['listenTo'](_0x5d041e,'commentThreadResolved',(_0xec8062,{commentThreadId:_0x4f1511,resolvedBy:_0xabfb53,resolvedAt:_0x294178})=>{const _0x2add06=_0x1d2661['getCommentThread'](_0x4f1511);_0x2add06&&_0x2add06['resolve']({'resolvedBy':_0xabfb53,'resolvedAt':_0x294178,'isFromAdapter':!0x0});}),this['listenTo'](_0x5d041e,'commentThreadReopened',(_0x5023e6,{commentThreadId:_0x23ec7e})=>{const _0x429f43=_0x1d2661['getCommentThread'](_0x23ec7e);_0x429f43&&_0x429f43['reopen']({'isFromAdapter':!0x0});}),this['listenTo'](_0x5d041e,'commentThreadRemoved',(_0x46815f,{commentThreadId:_0x49460f})=>{const _0xec9ff0=_0x1d2661['getCommentThread'](_0x49460f);_0xec9ff0&&_0xec9ff0['remove']({'isFromAdapter':!0x0});}),this['listenTo'](_0x5d041e,'commentAdded',(_0x9ef825,_0x1bb772)=>{const _0x4d7850=_0x1bb772['commentThreadId'],_0x199d48=_0x1d2661['getCommentThread'](_0x4d7850);_0x199d48&&_0x199d48['addComment']({...B(_0x1bb772),'isFromAdapter':!0x0});}),this['listenTo'](_0x5d041e,'commentUpdated',(_0x3f91ed,{commentThreadId:_0x5a935b,commentId:_0x1898cd,content:_0x3eb5f4,attributes:_0x323550})=>{const _0x21b8f8=_0x1d2661['getCommentThread'](_0x5a935b);if(_0x21b8f8){const _0x1dd95c=_0x21b8f8['getComment'](_0x1898cd);_0x1dd95c&&_0x1dd95c['update']({'content':_0x3eb5f4,'attributes':_0x323550,'isFromAdapter':!0x0});}}),this['listenTo'](_0x5d041e,'commentRemoved',(_0x258c32,{commentThreadId:_0x4140a9,commentId:_0x50ecef})=>{const _0x356cef=_0x1d2661['getCommentThread'](_0x4140a9);if(_0x356cef){const _0x267ef2=_0x356cef['getComment'](_0x50ecef);_0x267ef2&&_0x267ef2['remove']({'isFromAdapter':!0x0});}}),await this['_connectService'](_0x169a84);}['destroy'](){if(this['context']instanceof _0x51e0d6){const _0x499b26=this['context']['config']['get']('collaboration.channelId');this['_terminateService'](_0x499b26);}}['_terminateService'](_0x5b3a2d){if(!this['_services']['has'](_0x5b3a2d))throw new _0x4d1849('cloudservicescommentsadapter-disconnect-not-exist',null,{'channelId':_0x5b3a2d});this['_getService'](_0x5b3a2d)['disconnect'](),this['_services']['delete'](_0x5b3a2d);}async['reconnect'](){for(const _0x348a46 of this['_services']['keys']())await this['_connectService'](_0x348a46);if(this['context']instanceof _0x51e0d6){const _0x1e288e=this['context']['config']['get']('collaboration.channelId'),_0x1b714c=this['context']['plugins']['get'](i);_0x1b714c['unregister'](_0x1e288e);const _0x442f53=await this['_services']['get'](_0x1e288e)['getConnectedSessions']();_0x1b714c['register'](_0x1e288e,_0x442f53);}}async['_connectService'](_0x21e87b){const {connection:_0x578e28}=this['context']['plugins']['get'](n),_0x3d7294=this['context']['plugins']['get']('CommentsRepository'),_0x4db778=this['_services']['get'](_0x21e87b),_0x2ce227=await _0x4db778['connect'](_0x578e28);await this['_fetchMissingUsersForThreads'](_0x2ce227);const _0x4e973e=new Set(Array['from'](_0x3d7294['getCommentThreads']({'channelId':_0x21e87b}),_0x5447a3=>_0x5447a3['id']));for(const _0x221359 of _0x2ce227)_0x221359['deletedAt']||_0x4e973e['delete'](_0x221359['commentThreadId']);for(const _0x1a8a68 of _0x4e973e)_0x3d7294['getCommentThread'](_0x1a8a68)['remove']({'isFromAdapter':!0x0});for(const _0x49405a of _0x2ce227){let _0x214313=_0x3d7294['getCommentThread'](_0x49405a['commentThreadId']);const {commentThreadId:_0x233823,context:_0x10848e,attributes:_0x48191d,resolvedBy:_0x190f5d,resolvedAt:_0x1fbf84,unlinkedAt:_0x23a20e,deletedAt:_0x593569}=_0x49405a;if(_0x593569)continue;_0x214313||(_0x214313=_0x3d7294['addCommentThread']({'channelId':_0x21e87b,'threadId':_0x233823,'context':_0x10848e,'attributes':_0x48191d||{},'resolvedBy':_0x190f5d,'resolvedAt':_0x1fbf84,'unlinkedAt':_0x23a20e,'isFromAdapter':!0x0}));const _0x1bfbd7=new Set(Array['from'](_0x214313['comments'],_0xec2c2e=>_0xec2c2e['id']));for(const _0x259a4b of _0x49405a['comments'])_0x1bfbd7['delete'](_0x259a4b['commentId']);for(const _0x1cfab6 of _0x1bfbd7)_0x214313['getComment'](_0x1cfab6)['remove']({'isFromAdapter':!0x0});for(const _0x313b04 of _0x49405a['comments']){const _0x5ecd50=_0x214313['getComment'](_0x313b04['commentId']);_0x5ecd50?_0x5ecd50['content']!==_0x313b04['content']&&_0x5ecd50['update']({'content':_0x313b04['content'],'isFromAdapter':!0x0}):_0x214313['addComment'](Object['assign'](B(_0x313b04),{'isFromAdapter':!0x0}));}}}['_getService'](_0x1c2e23){if(!this['_services']['has'](_0x1c2e23))throw new _0x4d1849('cloudservicescommentsadapter-service-not-exist',null,{'channelId':_0x1c2e23});return this['_services']['get'](_0x1c2e23);}async['_fetchMissingUsersForThreads'](_0x205747){const _0x391b92=this['context']['plugins']['get'](_0x595866),{connection:_0x290817}=this['context']['plugins']['get'](n),_0x359c03=new Set();for(const {resolvedBy:_0x59e503,comments:_0x344cab}of _0x205747){_0x59e503&&!_0x391b92['getUser'](_0x59e503)&&_0x359c03['add'](_0x59e503);for(const {userId:_0x3d296f}of _0x344cab)_0x391b92['getUser'](_0x3d296f)||_0x359c03['add'](_0x3d296f);}if(0x0===_0x359c03['size'])return;const _0x31d800=await ct['getMany'](_0x290817,Array['from'](_0x359c03));for(const _0x589188 of _0x31d800)_0x391b92['getUser'](_0x589188['id'])||_0x391b92['addUser'](_0x589188);}}async function F(_0x33feb7){if('404'!==_0x33feb7['code'])throw _0x33feb7;}function at(_0xf790f2){if((_0x1041d0=_0xf790f2)['message']['startsWith']('cloud-services-internal-error:\x20Comments\x20Service\x20is\x20not\x20connected.')||_0x1041d0['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x1041d0['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.'))return new Promise(()=>{});var _0x1041d0;throw _0xf790f2;}function B(_0x2d330c){return{'threadId':_0x2d330c['commentThreadId'],'commentId':_0x2d330c['commentId'],'content':_0x2d330c['content'],'createdAt':_0x2d330c['createdAt'],'authorId':_0x2d330c['userId'],'attributes':_0x2d330c['attributes']||{}};}class m extends _0x5d6859{static ['TrackChangesService']=/* #__PURE__ -- @preserve */
|
|
27
|
-
((()=>
|
|
28
|
-
((()=>_0x574851)());['_lastRequestId'];['_revisionTracker'];['_revisionHistoryService'];['_oldOffset'];static get['requires'](){return[n,l,'RevisionHistory',i,_0x595866];}static get['pluginName'](){return'CloudServicesRevisionHistoryAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x2075c4){super(_0x2075c4);const _0x17014a=this['editor']['config']['get']('collaboration.channelId');this['_lastRequestId']=null,this['_revisionTracker']=this['editor']['plugins']['get']('RevisionTracker'),this['_revisionHistoryService']=new c['RevisionHistoryService'](_0x17014a);}async['init'](){const _0x137a12=this['editor']['plugins']['get'](l),_0x4155dc=_0x137a12['serverHistory'],_0x24fa8e=this['editor']['plugins']['get'](n);this['_revisionTracker']['setSource']({'history':_0x4155dc,'getLatestVersion':()=>this['_getLatestVersion'](),'getCurrentRevisionId':()=>_0x137a12['sessionId']});const _0x4bbd77=this['editor']['config']['get']('cloudServices.bundleVersion')||nt,_0x20c2f4=await _0x56ccf5['isBundleUploaded'](_0x24fa8e['connection'],_0x4bbd77);this['editor']['plugins']['get']('RevisionHistory')['adapter']={'getRevision':async({revisionId:_0x10c028})=>(await this['_waitForServiceReady'](),await this['_revisionHistoryService']['getRevision'](_0x10c028)),'updateRevisions':async _0x53f647=>{await this['_waitForServiceReady']();const _0x3a81e1=this['_revisionTracker']['currentRevision'];if(_0x20c2f4&&0x1===_0x53f647['length']&&_0x53f647[0x0]['id']===_0x3a81e1['id'])return _0x53f647;for(const _0x4ca251 of _0x53f647)_0x4ca251['id']===_0x3a81e1['id']&&(_0x4ca251['isEmptyCurrent']=_0x4ca251['fromVersion']===_0x4ca251['toVersion']);return this['_revisionHistoryService']['updateRevisions'](_0x53f647,this['_lastRequestId'])['then'](_0x288b57=>(this['_lastRequestId']=_0x288b57,_0x53f647))['catch'](_0x1337d2=>{if(q(_0x1337d2)||'400'===_0x1337d2['code']&&void 0x0!==_0x1337d2['data']['wrongRequestId']){for(const _0x18a4cb of _0x53f647){!this['_revisionTracker']['repository']['getRevision'](_0x18a4cb['id'])||this['_revisionTracker']['_bufferUpdate'](_0x18a4cb['id'],_0x18a4cb,!0x1);}if(q(_0x1337d2))throw _0x1337d2;return _0x53f647;}throw _0x1337d2;});}},this['listenTo'](this['_revisionHistoryService'],'revisionsUpdated',(_0x199292,{revisionsData:_0x12449f,requestId:_0x1a3021})=>{Math['max'](..._0x12449f['map'](_0x11a4ce=>_0x11a4ce['toVersion']))>this['_getLatestVersionFromServerOperations']()-0x1?this['_getLatestVersion']()['then'](()=>{this['_handleRevisionsUpdate'](_0x12449f,_0x1a3021);}):this['_handleRevisionsUpdate'](_0x12449f,_0x1a3021);});const {revisions:_0x116eb3,requestId:_0x2aa57b}=await this['_revisionHistoryService']['connect'](_0x24fa8e['connection']);_0x24fa8e['addToReconnectionStack'](this),this['_lastRequestId']=_0x2aa57b,await this['_fetchMissingUsers'](_0x116eb3);for(const _0x68903e of _0x116eb3)this['_revisionTracker']['addRevisionData'](_0x68903e);this['listenTo'](_0x137a12,'change:_isConnected',(_0x150def,_0x49c829,_0x592d98)=>{_0x592d98&&(this['_oldOffset']=_0x137a12['_offset'],_0x150def['off']());}),this['_revisionTracker']['bind']('isEnabled')['to'](_0x24fa8e,'state',_0x31d73d=>_0x31d73d===_0x384c6b['CONNECTED']);}async['reconnect'](){const _0x82635c=this['editor']['plugins']['get'](n),_0x55470a=this['editor']['plugins']['get'](l),_0x1ab8e4=async()=>{const _0x9453de=this['_revisionTracker']['currentRevision'],_0x2f9e47=_0x9453de['id'],_0x2c458b=_0x2f9e47!==_0x55470a['sessionId'];if(_0x2c458b){const _0x1280a1=_0x55470a['_offset']-this['_oldOffset'],_0x51e4ef=this['_getLatestVersionFromServerOperations']();this['_revisionTracker']['_revisionDataBuilder']['reInit']();if(_0x9453de['toVersion']+_0x1280a1!==_0x51e4ef){const _0x4e97c3=_0x9453de['fromVersion']+_0x1280a1,_0x32e68c=this['editor']['plugins']['get'](_0x595866),_0x2088f9=this['_revisionTracker']['buildRevisionData']({'revision':_0x9453de,'from':_0x4e97c3,'to':_0x51e4ef});_0x2088f9['id']=_0x9453de['id'];const _0x250b62=_0x2088f9['authorsIds']['map'](_0xdfd750=>_0x32e68c['getUser'](_0xdfd750));_0x9453de['_update']({..._0x2088f9,'authors':_0x250b62},!0x0),this['_revisionTracker']['_bufferUpdate'](_0x9453de['id'],_0x2088f9,!0x0);}this['_revisionTracker']['_startingVersion']=_0x51e4ef,(_0x9453de['toVersion']===_0x9453de['fromVersion']&&!this['_revisionTracker']['_bufferedUpdates']['has'](_0x2f9e47)&&this['_revisionTracker']['repository']['_revisions']['remove'](_0x2f9e47),this['_revisionTracker']['_createCurrentRevision'](_0x51e4ef));}const {revisions:_0x49a7db,requestId:_0x553cf7}=await this['_revisionHistoryService']['reconnect'](_0x82635c['connection'],this['_lastRequestId']);_0x2c458b&&_0x49a7db['length']>0x0?_0x55470a['_handleReconnectionError']():(await this['_fetchMissingUsers'](_0x49a7db),this['_handleRevisionsUpdate'](_0x49a7db,_0x553cf7),this['_revisionTracker']['sendBufferedUpdates']());};return _0x55470a['_isConnected']?_0x1ab8e4():new Promise((_0x325cf9,_0x1f4d0d)=>{_0x55470a['once']('change:_isConnected',()=>{_0x1ab8e4()['then'](_0x325cf9)['catch'](_0x1f4d0d);});});}['destroy'](){super['destroy']();}async['_waitForServiceReady'](){this['_revisionHistoryService']['isConnected']||await new Promise(_0x4e1f98=>{this['listenTo'](this['_revisionHistoryService'],'connected',_0x3bfa60=>{_0x3bfa60['off'](),_0x4e1f98();});});}['_getLatestVersionFromServerOperations'](){const _0x193de9=this['editor']['plugins']['get'](l)['serverHistory']['getOperations']()['reverse']();for(const _0x10c6be of _0x193de9)if('marker'!==_0x10c6be['type']||_0x10c6be['affectsData'])return _0x10c6be['baseVersion']+0x1;}['_getLatestVersion'](){const _0x28f92f=this['editor']['plugins']['get'](l);return new Promise(_0x23712a=>{_0x28f92f['_isPendingUpdate']?_0x28f92f['once']('change:_isPendingUpdate',()=>{_0x23712a(this['_getLatestVersionFromServerOperations']());}):_0x23712a(this['_getLatestVersionFromServerOperations']());});}['_handleRevisionsUpdate'](_0x1181af,_0x2772b7){const _0x36c268=this['_revisionTracker']['repository'];this['_lastRequestId']=_0x2772b7;for(const _0x49ece5 of _0x1181af){const _0x52949c=_0x36c268['getRevision'](_0x49ece5['id']);if(_0x52949c){if((_0x49ece5['fromVersion']||_0x49ece5['toVersion'])&&(_0x49ece5['diffData']=null),_0x52949c===this['_revisionTracker']['currentRevision']){const _0x590802=Math['max'](_0x52949c['toVersion'],_0x49ece5['toVersion']),_0x3556df=Math['max'](_0x52949c['fromVersion'],_0x49ece5['fromVersion']);let _0x375e88;_0x52949c['toVersion']===_0x49ece5['toVersion']&&_0x52949c['fromVersion']===_0x49ece5['fromVersion']?(_0x375e88=!0x0,this['_preventResendingRevisionData'](_0x49ece5)):_0x49ece5['toVersion']===_0x590802&&_0x49ece5['fromVersion']===_0x3556df?_0x375e88=!0x1:(_0x52949c['toVersion']===_0x590802&&_0x52949c['fromVersion']===_0x3556df||this['_fixRevision']({'revision':_0x52949c,'from':_0x3556df,'to':_0x590802}),_0x375e88=!0x0),_0x375e88&&(delete _0x49ece5['fromVersion'],delete _0x49ece5['toVersion'],delete _0x49ece5['diffData'],delete _0x49ece5['createdAt'],delete _0x49ece5['authorsIds']);}this['_revisionTracker']['setRevisionData'](_0x49ece5),this['_preventResendingRevisionData'](_0x49ece5);}else this['_revisionTracker']['addRevisionData'](_0x49ece5);}const _0x393477=_0x36c268['getRevisions']();_0x393477['reverse']();for(let _0x112c3c=0x0;_0x112c3c<_0x393477['length']-0x1;_0x112c3c++){const _0x324bf4=_0x393477[_0x112c3c],_0xd712b8=_0x393477[_0x112c3c+0x1];if(_0x324bf4['fromVersion']<_0xd712b8['toVersion']){const _0x45b5b1=_0xd712b8['toVersion'],_0x469c9e=Math['max'](_0x45b5b1,_0x324bf4['toVersion']);this['_fixRevision']({'revision':_0x324bf4,'from':_0x45b5b1,'to':_0x469c9e});}}}['_fixRevision']({revision:_0xe678b1,from:_0x54d9ae,to:_0x47e9e4}={}){const _0x3b7f02=this['editor']['plugins']['get'](_0x595866),_0x1e455e=this['_revisionTracker']['buildRevisionData']({'revision':_0xe678b1,'from':_0x54d9ae,'to':_0x47e9e4});_0x1e455e['authors']=_0x1e455e['authorsIds']['map'](_0x41e0a0=>_0x3b7f02['getUser'](_0x41e0a0)),_0xe678b1['_update'](_0x1e455e);}['_preventResendingRevisionData'](_0x3ad0de){const _0x4e52f5={};_0x4e52f5['id']=_0x3ad0de['id'];for(const _0x27ff36 of Object['keys'](_0x3ad0de))'id'!==_0x27ff36&&(_0x4e52f5[_0x27ff36]=void 0x0);this['_revisionTracker']['_bufferUpdate'](_0x4e52f5['id'],_0x4e52f5,!0x0);}async['_fetchMissingUsers'](_0x29a7ef){const _0x1eba5d=this['editor']['plugins']['get'](_0x595866),{connection:_0x27b364}=this['editor']['plugins']['get'](n),_0x599878=new Set();for(const _0x32a04e of _0x29a7ef){for(const _0x5f26c7 of _0x32a04e['authorsIds'])_0x595bc6(_0x5f26c7);_0x32a04e['creatorId']&&_0x595bc6(_0x32a04e['creatorId']);}if(0x0===_0x599878['size'])return;const _0x27a667=await ct['getMany'](_0x27b364,Array['from'](_0x599878));for(const _0x137bda of _0x27a667)_0x1eba5d['getUser'](_0x137bda['id'])||_0x1eba5d['addUser'](_0x137bda);function _0x595bc6(_0x4a79cb){_0x1eba5d['getUser'](_0x4a79cb)||_0x599878['add'](_0x4a79cb);}}}function q(_0x114ccb){return _0x114ccb['message']['startsWith']('cloud-services-internal-error:\x20Revision\x20History\x20Service\x20is\x20not\x20connected.')||_0x114ccb['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x114ccb['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}class dt extends _0x5d6859{static get['requires'](){return['RevisionHistory',c,a];}static get['pluginName'](){return'RealTimeCollaborativeRevisionHistory';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}class b extends _0x3ba684{['_collapseAt'];constructor(_0x39a548,_0xcdbc12=0x6){super(_0x39a548);const _0x40c9ad=this['bindTemplate'];this['set']('isHidden',!0x0),this['set']('usersCount',0x0),this['_collapseAt']=_0xcdbc12,this['bind']('isHidden')['to'](this,'usersCount',_0x117c66=>_0x117c66<_0xcdbc12),this['setTemplate']({'tag':'div','attributes':{'class':['ck','ck-presence-list__list-item',_0x40c9ad['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':_0x40c9ad['to']('usersCount',_0x3a4c00=>'+'+(_0x3a4c00-this['_collapseAt']+0x2)['toString']())}]}]}]});}}class is extends _0x3ba684{['items'];['keystrokes'];constructor(_0x281ad1){super(_0x281ad1);const _0x143245=this['bindTemplate'];this['items']=this['createCollection'](),this['keystrokes']=new _0x39617f(),this['set']({'hasPopup':!0x1,'isExpanded':!0x1}),this['setTemplate']({'tag':'div','attributes':{'aria-haspopup':_0x143245['if']('hasPopup'),'aria-expanded':_0x143245['to']('isExpanded',_0x841e6=>this['hasPopup']&&String(_0x841e6)),'aria-label':_0x143245['to']('hasPopup',_0x72124e=>K(_0x281ad1,_0x72124e?'Collapsed\x20connected\x20users\x20list\x20(press\x20ENTER\x20to\x20open\x20it)':'Connected\x20users\x20list')),'role':'list','tabindex':_0x143245['to']('hasPopup',_0x1bdaf9=>!!_0x1bdaf9&&0x0),'class':['ck','ck-presence-list__list']},'children':this['items'],'on':{'mouseenter':_0x143245['to'](()=>this['fire']('presencelist:show')),'mouseleave':_0x143245['to'](_0x1c898f=>{const _0x935bad=_0x1c898f,_0x94214b=document['querySelector']('.ck-presence-list__dropdown-list'),_0x3d93da=document['querySelector']('.ck-balloon-panel_with-arrow');_0x94214b?.['contains'](_0x935bad['relatedTarget'])||_0x3d93da?.['contains'](_0x935bad['relatedTarget'])||this['fire']('presencelist:hide');})}}),this['on']('change:hasPopup',(_0x342d79,_0x57c1de,_0x498904)=>{this['element']&&(_0x498904?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 v extends _0x3ba684{['counterView'];['inlineListView'];constructor(_0x24d615,_0x332687=0x6){super(_0x24d615);const _0x110177=this['bindTemplate'];this['set']('isCollapsed',!0x0),this['counterView']=new b(this['locale'],_0x332687),this['inlineListView']=new is(_0x24d615),this['inlineListView']['bind']('hasPopup')['to'](this,'isCollapsed'),this['listenTo'](this['inlineListView']['items'],'change',()=>{for(const _0xb8d9 of this['inlineListView']['items'])_0xb8d9['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',_0x110177['if']('isCollapsed','ck-presence-list--collapsed')]},'children':[this['inlineListView']]});}}class L extends _0x3ba684{['listWrapperView'];constructor(_0x471d46,_0x13cc23){super(_0x471d46);const _0x5d4291=this['bindTemplate'];this['listWrapperView']=new ut(_0x471d46,_0x13cc23),this['setTemplate']({'tag':'div','attributes':{'tabindex':-0x1,'role':'application','class':['ck','ck-presence-list__dropdown-list'],'aria-label':K(_0x471d46,'Connected\x20users\x20list\x20dropdown\x20menu')},'children':[this['listWrapperView']],'on':{'mouseleave':_0x5d4291['to'](_0x28213f=>{const _0xd02f23=_0x28213f,_0x3af3c3=document['querySelector']('.ck-presence-list__list'),_0xc73087=document['querySelector']('.ck-balloon-panel_with-arrow');_0x3af3c3?.['contains'](_0xd02f23['relatedTarget'])||_0xc73087?.['contains'](_0xd02f23['relatedTarget'])||this['fire']('presencelist:hide');})}});}}class ut extends _0x47010b{constructor(_0x26c2de,_0x2062ff){super(_0x26c2de);const _0x5b0244=this['bindTemplate'];this['set']('_isScrollable',!0x1),this['setTemplate']({'tag':_0x2062ff?'div':'ul','attributes':{'class':['ck','ck-reset','ck-list','ck-presence-list__dropdown-list-wrapper',_0x5b0244['if']('_isScrollable','ck-presence-list__dropdown-list-wrapper_scrollable')],'role':_0x5b0244['to']('role'),'aria-label':_0x5b0244['to']('ariaLabel'),'aria-labelledby':_0x5b0244['to']('ariaLabelledBy')},'children':this['items']}),this['listenTo'](_0x38b4cc['window'],'resize',()=>this['checkIfScrollable']()),this['items']['on']('change',()=>this['checkIfScrollable']());}['render'](){super['render'](),this['checkIfScrollable']();}['checkIfScrollable'](){const _0x46f785=this['element'];_0x46f785&&(this['_isScrollable']=Math['max'](_0x46f785['scrollHeight'],_0x46f785['clientHeight'])>0.8*window['innerHeight']);}}class j extends et{['userView'];constructor(_0xd961f9,_0x272c14,_0x3c3608){super(_0xd961f9);const _0x4b516f=this['bindTemplate'];this['userView']=new st(_0xd961f9,_0x272c14);const _0x57e5a={'tag':'li','attributes':{'class':['ck','ck-presence-list__dropdown-list-item'],'tabindex':-0x1,'role':'presentation','aria-label':_0x272c14['name']},'children':[this['userView'],{'tag':'span','attributes':{'class':['ck','ck-user__full-name']},'children':[{'text':_0x272c14['name']}]},{'tag':'span','attributes':{'class':['ck','ck-presence-list__marker',_0x272c14['color']['getBackgroundColorClass']()],'aria-hidden':'true'}}]};_0x3c3608&&(_0x57e5a['tag']='button',_0x57e5a['on']={'click':_0x4b516f['to'](()=>this['fire']('execute'))}),this['setTemplate'](_0x57e5a);}['focus'](){this['element']['focus']();}}class A extends _0x3ba684{['userView'];['markerView'];constructor(_0x12d247,_0x4094aa,_0x53860a){super(_0x12d247);const _0x43b676=this['bindTemplate'];this['set']('isFocusable',!0x1),this['set']('hasTooltip',!0x0),this['set']('tooltipPosition',''),this['userView']=new st(_0x12d247,_0x4094aa),this['markerView']=new ot(_0x12d247,_0x4094aa);const _0x1a1b4f=new it(_0x12d247);_0x1a1b4f['template']['tag']='span',_0x1a1b4f['text']=_0x4094aa['name'];const _0x352f61={'tag':'div','attributes':{'class':['ck','ck-presence-list__list-item'],'role':'listitem','tabindex':_0x43b676['to']('isFocusable',_0xe56366=>!!_0xe56366&&0x0),'aria-labelledby':_0x1a1b4f['id'],'data-cke-tooltip-text':this['userView']['name'],'data-cke-tooltip-position':_0x43b676['to']('tooltipPosition'),'data-cke-tooltip-disabled':_0x43b676['to']('hasTooltip',_0x1948a2=>!_0x1948a2),'data-cke-tooltip-class':'ck-presence-list__list-item__tooltip'},'children':[this['userView'],this['markerView'],_0x1a1b4f]};_0x53860a&&(_0x352f61['tag']='button',_0x352f61['on']={'click':_0x43b676['to'](()=>this['fire']('execute'))}),this['setTemplate'](_0x352f61);}}class ot extends _0x3ba684{constructor(_0x258f1d,_0x17e78f){super(_0x258f1d),this['setTemplate']({'tag':'span','attributes':{'class':['ck','ck-presence-list__marker',_0x17e78f['color']['getBackgroundColorClass']()],'aria-hidden':'true'}});}}const x={'collapseAt':0x6,'displayMe':!0x0};class r extends _0x381c27{['currentDisplayedUsers'];['balloonPanelView'];['view'];['presenceDropdownView'];['_bodyCollection']=null;static get['pluginName'](){return'PresenceListUI';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x290e4b){super(_0x290e4b),this['context']['config']['define']('presenceList',x);const _0x2bd74e=_0x290e4b['config']['get']('presenceList.collapseAt');if('number'!=typeof _0x2bd74e)throw new _0x4d1849('presencelist-collapseat-invalid-format',this);if(_0x2bd74e<0x1)throw new _0x4d1849('presencelist-collapseat-invalid-format',this);this['_allConnectedUsers']=this['context']['plugins']['get'](i)['allConnectedUsers'],this['set']('usersCount',0x0),this['currentDisplayedUsers']=new _0x53968d(),this['balloonPanelView']=new _0x5c13c2(),this['balloonPanelView']['class']='ck\x20ck-presence-list__balloon',this['view']=this['_createView'](),this['presenceDropdownView']=void 0x0;}static get['requires'](){return[i];}['init'](){for(const _0x473518 of this['_allConnectedUsers'])this['_handleUserAdd'](_0x473518);this['listenTo'](this['_allConnectedUsers'],'add',(_0x19cc6d,_0x57220d)=>{this['_handleUserAdd'](_0x57220d);}),this['listenTo'](this['_allConnectedUsers'],'remove',(_0x2bf594,_0x581e66)=>{this['_handleUserRemove'](_0x581e66);});}['_createView'](){const _0x4facbe=this['context'],_0x190f05=new v(this['context']['locale'],this['context']['config']['get']('presenceList.collapseAt')),_0x4269e8=this['balloonPanelView'];if(!_0x504e67(_0x4facbe['config']['get']('presenceList.container')))throw new _0x4d1849('presencelist-missing-container',this);return _0x190f05['counterView']['bind']('usersCount')['to'](this),_0x190f05['bind']('isCollapsed')['to'](this,'usersCount',_0x484be1=>{const {collapseAt:_0x54a5c1}=_0x4facbe['config']['get']('presenceList'),_0x2b50b3=_0x484be1>=_0x54a5c1;if(_0x2b50b3&&!_0x190f05['inlineListView']['items']['find'](_0x2d143c=>_0x2d143c instanceof b)){const _0x512e81=this['context']['config']['get']('presenceList.collapseAt')-0x1;this['currentDisplayedUsers']['length']==_0x512e81&&this['currentDisplayedUsers']['length']>0x1&&this['currentDisplayedUsers']['remove'](this['currentDisplayedUsers']['length']-0x1),_0x190f05['inlineListView']['items']['add'](_0x190f05['counterView']);}return _0x2b50b3||this['hideDropdown'](),_0x2b50b3;}),_0x190f05['inlineListView']['items']['bindTo'](this['currentDisplayedUsers'])['using'](_0x453384=>{const _0x89ca27=_0x4facbe['config']['get']('presenceList'),_0x51249c=new A(_0x4facbe['locale'],_0x453384,!!_0x89ca27['onClick']);return _0x51249c['bind']('hasTooltip')['to'](_0x190f05,'isCollapsed',_0x497ac0=>!_0x497ac0),_0x51249c['bind']('isFocusable')['to'](_0x190f05,'isCollapsed',_0x58c40d=>!_0x58c40d),_0x89ca27['onClick']&&this['listenTo'](_0x51249c,'execute',()=>{this['view']['isCollapsed']||_0x89ca27['onClick'](_0x453384,_0x51249c['element']);}),_0x51249c;}),this['listenTo'](_0x190f05['inlineListView'],'presencelist:show',()=>{this['view']['isCollapsed']&&this['showDropdown']();}),this['listenTo'](_0x190f05['inlineListView'],'presencelist:hide',()=>{this['presenceDropdownView']&&this['hideDropdown']();}),_0x190f05['inlineListView']['keystrokes']['set']('Enter',(_0x33dfb8,_0x2c7d4d)=>{this['view']['isCollapsed']&&(this['showDropdown'](),_0x2c7d4d());}),_0x190f05['render'](),_0x4269e8['render'](),_0x56aafe({'emitter':_0x190f05,'activator':()=>_0x4269e8['isVisible'],'contextElements':[_0x4269e8['element'],_0x190f05['inlineListView']['element']],'callback':()=>this['hideDropdown']()}),_0x4facbe['config']['get']('presenceList.container')['appendChild'](_0x190f05['element']),this['_bodyCollection']=new _0x4a71b4(this['context']['locale']),this['_bodyCollection']['attachToDom'](),this['_bodyCollection']['add'](this['balloonPanelView']),_0x190f05;}['_handleUserAdd'](_0x5adf41){if(!this['context']['config']['get']('presenceList.displayMe')&&_0x5adf41['isMe'])return;const _0x193360=this['context']['config']['get']('presenceList.collapseAt')-0x1;for(this['usersCount']++;this['currentDisplayedUsers']['length']>=_0x193360-(this['view']['isCollapsed']?0x1:0x0)&&this['currentDisplayedUsers']['length']>0x1;)this['currentDisplayedUsers']['remove'](0x1);const _0x32a6c8=_0x5adf41['isMe']?0x0:this['currentDisplayedUsers']['length'];this['currentDisplayedUsers']['add'](_0x5adf41,_0x32a6c8);}['_handleUserRemove'](_0x2e1dd9){this['usersCount']--;const {collapseAt:_0x1a8311}=this['context']['config']['get']('presenceList'),_0x137d76=this['usersCount']>=_0x1a8311;if(this['currentDisplayedUsers']['get'](_0x2e1dd9['id']))this['currentDisplayedUsers']['remove'](_0x2e1dd9['id']);else{if(_0x137d76&&this['currentDisplayedUsers']['length']+0x1===_0x1a8311-0x1)return;}if(this['currentDisplayedUsers']['length']+(_0x137d76?0x1:0x0)<this['usersCount']){for(const _0x3f11d2 of Array['from'](this['_allConnectedUsers'])['reverse']())if(!this['currentDisplayedUsers']['get'](_0x3f11d2['id'])&&(this['currentDisplayedUsers']['add'](_0x3f11d2,Math['min'](this['currentDisplayedUsers']['length']-(_0x137d76?0x1:0x0),0x1)),this['currentDisplayedUsers']['length']+(_0x137d76?0x1:0x0)===_0x1a8311-0x1))return;}}['showDropdown'](){if(this['presenceDropdownView'])return;const _0x376d82=this['context']['config']['get']('presenceList');this['presenceDropdownView']=new L(this['context']['locale'],!!_0x376d82['onClick']),this['view']['inlineListView']['isExpanded']=!0x0,this['listenTo'](this['presenceDropdownView'],'presencelist:hide',()=>{this['presenceDropdownView']&&this['hideDropdown']();});const {listWrapperView:_0x20fac9}=this['presenceDropdownView'];_0x20fac9['items']['bindTo'](this['_allConnectedUsers'])['using'](_0x5334b6=>{if(!_0x376d82['displayMe']&&_0x5334b6['isMe'])return null;const _0x20a9ed=new j(this['context']['locale'],_0x5334b6,!!_0x376d82['onClick']);return _0x376d82['onClick']&&this['listenTo'](_0x20a9ed,'execute',()=>{_0x376d82['onClick'](_0x5334b6,_0x20a9ed['element']);}),_0x20a9ed;}),this['balloonPanelView']['content']['add'](this['presenceDropdownView']),this['balloonPanelView']['pin']({'target':this['view']['inlineListView']['element']}),_0x20fac9['focus'](),_0x20fac9['checkIfScrollable']();const _0x209997=(_0xa3a8de,_0x55639f)=>{this['hideDropdown'](),this['view']['inlineListView']['focus'](),_0x55639f();};_0x20fac9['keystrokes']['set']('Esc',_0x209997),_0x20fac9['keystrokes']['set']('Shift+Tab',_0x209997),_0x20fac9['keystrokes']['set']('Tab',(_0x2f25cd,_0x2a6df6)=>{!function(_0xe8571f){const _0x309932=['a','button','input','select','textarea','[tabindex]','[contenteditable]']['map'](_0x47d0b3=>_0x47d0b3+':not([disabled]):not([tabindex=\x22-1\x22])')['join'](','),_0x1548c9=[...document['body']['querySelectorAll'](_0x309932)]['filter'](_0x311c02=>_0x311c02===document['activeElement']||_0x311c02['offsetWidth']+_0x311c02['offsetHeight']>0x0)['sort']((_0x9c8021,_0xe4b19a)=>(_0x9c8021['tabIndex']||0x0)-(_0xe4b19a['tabIndex']||0x0)),_0x1c94b5=_0x1548c9['indexOf'](_0xe8571f),_0x58548d=_0x1548c9[(_0x1c94b5+0x1)%_0x1548c9['length']];_0x58548d&&_0x58548d['focus']();}(this['view']['element']),this['hideDropdown'](),_0x2a6df6();}),_0x20fac9['focusTracker']['add'](this['view']['element']),_0x20fac9['focusTracker']['on']('change:isFocused',(_0x3137f8,_0x5f5796,_0x50b533)=>{_0x50b533||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 ft extends _0x381c27{static get['requires'](){return[i,r];}static get['pluginName'](){return'PresenceList';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}export{s as CloudServicesCommentsAdapter,c as CloudServicesRevisionHistoryAdapter,m as CloudServicesTrackChangesAdapter,ft as PresenceList,r as PresenceListUI,l as RealTimeCollaborationClient,g as RealTimeCollaborativeComments,a as RealTimeCollaborativeEditing,dt as RealTimeCollaborativeRevisionHistory,lt as RealTimeCollaborativeTrackChanges,i as Sessions,n as WebSocketGateway};
|
|
23
|
+
import{ContextPlugin as _0x2d60c1,Plugin as _0xa3957f,PendingActions as _0x46f226,Context as et}from'@ckeditor/ckeditor5-core/dist/index.js';import{DomEmitterMixin as _0x398b9e,CKEditorError as _0x361cf4,Collection as _0x5c1f9a,global as _0x34f2de,version as ht,uid as _0x43d7be,KeystrokeHandler as _0x403085}from'@ckeditor/ckeditor5-utils/dist/index.js';import{Notification as _0x1f910b,View as _0x40928d,ListView as _0xa396c4,ListItemView as rt,LabelView as at,BalloonPanelView as _0x584c05,clickOutsideHandler as _0x4ad730,BodyCollection as _0x2d8c37}from'@ckeditor/ckeditor5-ui/dist/index.js';import{ModelLiveRange as _0x3788b9,History as _0x33b8ee,NoOperation as _0x22981c,InsertOperation as _0x4cd219,MarkerOperation as _0x38d7d0,RootAttributeOperation as _0xb7bde,transformOperationSets as _0x1b5db5,OperationFactory as _0x53e641}from'@ckeditor/ckeditor5-engine/dist/index.js';import{WebSocketGateway as dt,WEB_SOCKET_GATEWAY_STATES as _0x414fdf,CollaborativeEditingService as _0x10e105,User as ut,CommentsService as ot,TrackChangesService as _0x48f71b,RevisionHistoryService as it,EditorService as tt}from'@ckeditor/ckeditor-cloud-services-collaboration/dist/index.js';import{Users as _0x2cdae6,UserView as ct}from'ckeditor5-collaboration/dist/index.js';import{Compressor as _0x2c6b24}from'@ckeditor/ckeditor5-operations-compressor/dist/index.js';import{isElement as _0x873502}from'es-toolkit/compat';class n extends _0x2d60c1{static ['WebSocketGateway']=/* #__PURE__ -- @preserve */
|
|
24
|
+
((()=>dt)());static ['initialReconnectionInterval']=0x3e8;['connection'];['_reconnectionStack'];['_shouldPluginsReconnect'];['_domEmitter'];static get['requires'](){return['CloudServices',_0x1f910b];}static get['pluginName'](){return'WebSocketGateway';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x13c132){super(_0x13c132),this['set']('state',_0x414fdf['CONNECTED']),this['set']('_isBrowserOffline',!0x1),this['_reconnectionStack']=new Set(),this['_shouldPluginsReconnect']=!0x1,this['_domEmitter']=new(_0x398b9e())();}['init'](){const _0x3ebda3=this['context'],_0xd1ce00=_0x3ebda3['plugins']['get']('CloudServices'),_0x9980d2=_0x3ebda3['plugins']['get'](_0x1f910b);if(!_0xd1ce00['token'])throw new _0x361cf4('websocketgateway-missing-token',this);if(!_0xd1ce00['webSocketUrl'])throw new _0x361cf4('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),n['WebSocketGateway']['connect'](_0xd1ce00['token'],_0xd1ce00['webSocketUrl'],{'timeout':0x3e8*this['context']['config']['get']('cloudServices.connectionTimeout'),'requestTimeout':0x3e8*this['context']['config']['get']('cloudServices.requestTimeout')})['then'](_0xb08a68=>{if(this['connection']=_0xb08a68,this['bind']('state')['to'](_0xb08a68,'state',this,'_isBrowserOffline',(_0x4f4698,_0x34ba9c)=>('connected'!==_0x4f4698&&(this['_shouldPluginsReconnect']=!0x0),_0x34ba9c||_0x4f4698!==_0x414fdf['CONNECTED']?_0x414fdf['DISCONNECTED']:this['state']==_0x414fdf['DISCONNECTED']&&this['_shouldPluginsReconnect']?(this['_shouldPluginsReconnect']=!0x1,this['_reconnect'](),_0x414fdf['CONNECTING']):_0x414fdf['CONNECTED'])),this['connection']['on']('error',(_0x2d30ad,_0x4ed858)=>{if('limitExceeded'!==_0x4ed858['code'])throw console['error'](_0x4ed858),new _0x361cf4('cloudservices-init',null,{'originalError':_0x4ed858});_0x9980d2['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'});}),!_0xb08a68['me'])return new Promise(_0x12d13c=>_0xb08a68['on']('change:me',_0x12d13c));})['catch'](_0x7dd56f=>{throw console['error'](_0x7dd56f),new _0x361cf4('cloudservices-init',null,{'originalError':_0x7dd56f});});}['addToReconnectionStack'](_0x24c418){if('function'!=typeof _0x24c418['reconnect'])throw new _0x361cf4('websocketgateway-invalid-plugin-interface',this);if(this['isInReconnectionStack'](_0x24c418))throw new _0x361cf4('websocketgateway-plugin-already-registered',this,{'name':_0x24c418['constructor']['pluginName']});this['_reconnectionStack']['add'](_0x24c418);}['removeFromReconnectionStack'](_0x429d20){this['_reconnectionStack']['delete'](_0x429d20);}['isInReconnectionStack'](_0x56fbeb){return this['_reconnectionStack']['has'](_0x56fbeb);}['_reconnect'](){return this['connection']['reconnect']()['then'](()=>Promise['all'](Array['from'](this['_reconnectionStack'],_0x13a05c=>_0x13a05c['reconnect']())))['then'](()=>this['state']=_0x414fdf['CONNECTED'])['catch'](_0x3a5a1e=>{throw console['error'](_0x3a5a1e),new _0x361cf4('cloudservices-reconnection-error',this['context']);});}['disconnect'](){this['connection']&&this['connection']['disconnect'](),this['state']=_0x414fdf['DISCONNECTED'],this['_domEmitter']['stopListening']();}['destroy'](){this['disconnect'](),super['destroy']();}}class i extends _0x2d60c1{['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[n,_0x2cdae6];}constructor(_0xb634b8){super(_0xb634b8),this['channelSessions']=new Map(),this['channelConnectedUsers']=new Map(),this['allConnectedUsers']=new _0x5c1f9a(),this['_registeredSessions']=new Map(),this['_uniqueUsersCount']=0x0,this['_users']=this['context']['plugins']['get'](_0x2cdae6);}['init'](){const _0x22c809=this['context']['plugins']['get'](n);this['listenTo'](_0x22c809,'change:state',(_0x38f292,_0xeafcdf,_0x4c761b)=>{if('connected'!==_0x4c761b)this['channelSessions']['forEach'](_0x25c0c9=>_0x25c0c9['clear']()),this['channelConnectedUsers']['forEach'](_0x2cdb83=>_0x2cdb83['clear']()),this['allConnectedUsers']['clear']();else{for(const [_0x2d01dc,_0x290033]of this['_registeredSessions'])for(const _0x261c60 of _0x290033)this['_handleSessionAdd'](_0x2d01dc,_0x261c60);}}),this['_createUser'](_0x22c809['connection']['me'],!0x0);}['register'](_0xef9ce0,_0x2485b4){if(this['_registeredSessions']['has'](_0xef9ce0))throw new _0x361cf4('sessions-register-already-registered',null,{'channelId':_0xef9ce0});this['_registeredSessions']['set'](_0xef9ce0,_0x2485b4),this['channelSessions']['set'](_0xef9ce0,new _0x5c1f9a()),this['channelConnectedUsers']['set'](_0xef9ce0,new _0x5c1f9a()),this['listenTo'](_0x2485b4,'add',(_0x597d4b,_0x2e960b)=>this['_handleSessionAdd'](_0xef9ce0,_0x2e960b)),this['listenTo'](_0x2485b4,'remove',(_0x4eb5ff,_0x213d3a)=>this['_handleSessionRemove'](_0xef9ce0,_0x213d3a));for(const _0x374e09 of _0x2485b4)this['_handleSessionAdd'](_0xef9ce0,_0x374e09);}['unregister'](_0x412f06){if(!this['_registeredSessions']['has'](_0x412f06))throw new _0x361cf4('sessions-unregister-not-exist',null,{'channelId':_0x412f06});const _0x34a26f=this['_registeredSessions']['get'](_0x412f06);this['stopListening'](_0x34a26f);for(const _0x13d7e9 of _0x34a26f)'connected'===this['context']['plugins']['get'](n)['state']&&this['_handleSessionRemove'](_0x412f06,_0x13d7e9);this['_registeredSessions']['delete'](_0x412f06),this['channelSessions']['delete'](_0x412f06),this['channelConnectedUsers']['delete'](_0x412f06);}get['mySessionId'](){return this['context']['plugins']['get'](n)['connection']['sessionId'];}['getUserBySessionId'](_0x32c159){for(const _0xae79e2 of this['channelSessions']['values']())for(const _0xaa5ed0 of _0xae79e2)if(_0xaa5ed0['id']===_0x32c159)return _0xaa5ed0['user'];}['getUserSessions'](_0x3b4fb5,_0x55a747){const _0x34ca42=_0x55a747?[this['channelSessions']['get'](_0x55a747)]:this['channelSessions']['values'](),_0x1e0bac=new Set();for(const _0x416efc of _0x34ca42)for(const _0x1558b1 of _0x416efc)_0x1558b1['user']['id']===_0x3b4fb5['id']&&_0x1e0bac['add'](_0x1558b1['id']);return _0x1e0bac;}['getUserRole'](_0xa709d3){for(const _0x79ada7 of this['channelSessions']['values']())for(const _0x4f78c6 of _0x79ada7)if(_0x4f78c6['user']===_0xa709d3)return _0x4f78c6['role'];}['_handleSessionAdd'](_0x280372,_0x31b9d6){if('connected'!==this['context']['plugins']['get'](n)['state'])return;const _0x283178=_0x31b9d6['user'],_0x9533e2=this['_users']['getUser'](_0x283178['id'])||this['_createUser'](_0x283178),_0x4a7d99=Object['assign']({},_0x31b9d6,{'user':_0x9533e2});this['channelSessions']['get'](_0x280372)['add'](_0x4a7d99);const _0x356405=this['channelConnectedUsers']['get'](_0x280372);_0x356405['has'](_0x9533e2['id'])||_0x356405['add'](_0x9533e2),this['allConnectedUsers']['has'](_0x9533e2['id'])||this['allConnectedUsers']['add'](_0x9533e2,_0x9533e2['isMe']?0x0:void 0x0),this['fire']('sessionAdd:'+_0x280372,{'channelId':_0x280372,'session':_0x4a7d99});}['_handleSessionRemove'](_0x5067cf,_0x21df8a){if('connected'!==this['context']['plugins']['get'](n)['state'])return;const _0x56287e=this['channelConnectedUsers']['get'](_0x5067cf),_0x5e8faf=_0x21df8a['user'];_0x5e8faf['id']&&(this['channelSessions']['get'](_0x5067cf)['remove'](_0x21df8a['id']),_0x56287e['has'](_0x5e8faf['id'])&&!this['getUserSessions'](_0x5e8faf,_0x5067cf)['size']&&_0x56287e['remove'](_0x5e8faf['id']),this['allConnectedUsers']['get'](_0x5e8faf['id'])&&!this['getUserSessions'](_0x5e8faf)['size']&&this['allConnectedUsers']['remove'](_0x5e8faf['id']));}['_createUser'](_0x5f461b,_0x140f84){const _0x3c5da6=this['_users']['addUser'](_0x5f461b);return _0x140f84&&this['_users']['defineMe'](_0x5f461b['id']),_0x3c5da6['orderNumber']=this['_uniqueUsersCount']++,_0x3c5da6;}}class C extends _0xa3957f{['_domEmitter']=new(_0x398b9e())();static get['requires'](){return[i];}static get['pluginName'](){return'UserMarkers';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['init'](){const _0x4345d9=this['editor'],_0x1b4299=_0x4345d9['plugins']['get'](i);_0x4345d9['conversion']['for']('editingDowncast')['markerToElement']({'model':'user:position','view':(_0x167965,{writer:_0x133b97})=>function(_0x83dd95,_0x48568a,_0x3f1b6d,_0x5ca304){const _0x7a29ed=_0x83dd95['markerName']['split'](':')[0x2],_0x1a9b10=_0x3f1b6d['getUserBySessionId'](_0x7a29ed);if(!_0x1a9b10||_0x7a29ed===_0x3f1b6d['mySessionId'])return;if(!_0x5ca304['model']['schema']['checkChild'](_0x83dd95['markerRange']['start'],'$text'))return;const _0x5a6d78={'class':'ck-user__marker\x20'+_0x1a9b10['color']['getMarkerClass'](),'data-name':_0x1a9b10['name'],'data-session-id':_0x7a29ed},_0x57dcc6=_0x5ca304['model']['markers']['get'](_0x83dd95['markerName']),_0x1e6fe3=_0x57dcc6['getStart'](),_0x5bb7c1=_0x1e6fe3['nodeAfter'],_0x3a7707=_0x5ca304['model']['schema'];if(_0x5bb7c1&&_0x3a7707['isObject'](_0x5bb7c1)&&_0x3a7707['isInline'](_0x5bb7c1)&&!_0x5ca304['model']['markers']['get']('user:range:'+_0x7a29ed)['getRange']()['isCollapsed'])return;const _0x3bfc57=_0x1e6fe3['parent'];return _0x5ca304['model']['schema']['isLimit'](_0x3bfc57)&&!_0x5ca304['model']['hasContent'](_0x3bfc57)&&(_0x5a6d78['contenteditable']=!0x1),function(_0x2cb7d3,_0x481319,_0x4e0711){const _0x363c74=_0x2cb7d3['createUIElement']('span',_0x481319);return _0x2cb7d3['setCustomProperty']('userPositionMarker',!0x0,_0x363c74),_0x363c74['render']=function(_0x2cfc95){const _0x53c935=this['toDomElement'](_0x2cfc95),_0x2bc4c7=document['createElement']('span');return _0x2bc4c7['classList']['add']('ck-user__marker-tooltip'),_0x2bc4c7['setAttribute']('contenteditable','false'),_0x2bc4c7['setAttribute']('spellcheck','false'),_0x2bc4c7['textContent']=_0x4e0711['name'],_0x53c935['innerHTML']='<span\x20class=\x22ck-user__marker-line\x22\x20contenteditable=\x22false\x22><span\x20class=\x22ck-user__marker-dot\x22></span></span>'+_0x2bc4c7['outerHTML']+'',_0x53c935['addEventListener']('mouseenter',()=>{_0x53c935['classList']['add']('ck-user__marker_hovered');}),_0x53c935['addEventListener']('mouseleave',()=>{_0x53c935['classList']['remove']('ck-user__marker_hovered');}),_0x53c935;},_0x363c74['isSimilar']=function(_0x133b3b){return!(!this['getCustomProperty']('userPositionMarker')||!_0x133b3b['getCustomProperty']('userPositionMarker')||this['getAttribute']('data-session-id')!=_0x133b3b['getAttribute']('data-session-id'));},_0x363c74;}(_0x48568a,_0x5a6d78,_0x1a9b10);}(_0x167965,_0x133b97,_0x1b4299,_0x4345d9)}),_0x4345d9['conversion']['for']('editingDowncast')['markerToHighlight']({'model':'user:range','view':_0x24f841=>function(_0x5180a5,_0x1647ce){const _0x63372f=_0x5180a5['markerName']['split'](':')[0x2];if(_0x63372f===_0x1647ce['mySessionId'])return null;const _0x282ead=_0x1647ce['getUserBySessionId'](_0x63372f);if(!_0x282ead)return{'id':_0x63372f,'classes':[]};return{'id':_0x63372f,'classes':['ck-user__selection',_0x282ead['color']['getSelectionClass']()],'attributes':{'data-session-id':_0x63372f},'priority':0x7d0+_0x282ead['orderNumber']};}(_0x24f841,_0x1b4299)}),function(_0x33c511){const _0x171894=_0x33c511['model'],_0x170fbb=new Map(),_0x210770=_0x33c511['plugins']['get'](i);_0x171894['markers']['on']('update:user:range',(_0x12b9e0,_0xc01936,_0x1756c7,_0x438d98)=>{if(!_0x438d98&&_0x170fbb['get'](_0xc01936['name']))return _0x170fbb['get'](_0xc01936['name'])['detach'](),void _0x170fbb['delete'](_0xc01936['name']);const _0x2799ae=_0xc01936['name']['split'](':')[0x2];if(_0x2799ae===_0x210770['mySessionId'])return;const _0x5f40b8='user:position:'+_0x2799ae;_0x171894['markers']['has'](_0x5f40b8)&&_0x33c511['editing']['reconvertMarker'](_0x5f40b8),_0xc01936['on']('change:range',(_0x5e1e80,_0x310743,_0x1517b7)=>{if('$graveyard'!=_0x310743['root']['rootName']&&'$graveyard'==_0xc01936['getRange']()['root']['rootName']&&!_0x170fbb['has'](_0xc01936['name'])){const _0x5860b6=_0x171894['schema']['getNearestSelectionRange'](_0x1517b7['deletionPosition']);if(_0x5860b6){const _0x569349=_0x3788b9['fromRange'](_0x5860b6);_0x170fbb['set'](_0xc01936['name'],_0x569349),_0x569349['on']('change:range',(_0x271db8,_0x20ff83,_0x249d91)=>{if('$graveyard'==_0x569349['root']['rootName']){const _0x27412f=_0x171894['schema']['getNearestSelectionRange'](_0x249d91['deletionPosition']);_0x27412f?(_0x569349['start']=_0x27412f['start'],_0x569349['end']=_0x27412f['end']):(_0x170fbb['delete'](_0xc01936['name']),_0x569349['detach']());}});}}});}),_0x171894['document']['on']('change',()=>{_0x170fbb['size']>0x0&&_0x171894['enqueueChange']({'isUndoable':!0x1},_0xf0df95=>{for(const [_0x240bbf,_0x57b390]of _0x170fbb)'$graveyard'==_0x171894['markers']['get'](_0x240bbf)['getRange']()['root']['rootName']&&(J(_0x240bbf['split'](':')[0x2],_0x57b390['toRange'](),_0x171894,_0xf0df95),_0x57b390['detach']());_0x170fbb['clear']();});});}(_0x4345d9),this['_domEmitter']['listenTo'](_0x34f2de['document'],'keydown',(_0x4632be,{key:_0x56d826})=>{'Escape'===_0x56d826&&function(_0x5c8c39){_0x5c8c39['editing']['view']['change'](_0x239d2c=>{for(const _0x3adfa7 of _0x5c8c39['model']['markers']){if(!_0x3adfa7['name']['startsWith']('user:position'))continue;const _0x170dd5=_0x5c8c39['editing']['mapper']['markerNameToElements'](_0x3adfa7['name']);if(_0x170dd5){for(const _0x16eb77 of _0x170dd5)_0x239d2c['removeClass']('ck-user__marker_hovered',_0x16eb77);}}});}(_0x4345d9);},{'useCapture':!0x0});}['afterInit'](){const _0xb5da03=this['editor'],_0x38a8ea=_0xb5da03['commands']['get']('undo');_0x38a8ea&&_0xb5da03['model']['on']('applyOperation',(_0x562604,_0x3e32e2)=>{const _0x4bb73f=_0x3e32e2[0x0];if(!_0x4bb73f['isDocumentOperation'])return;if('marker'!=_0x4bb73f['type']||!_0x4bb73f['name']['startsWith']('user:'))return;const _0x220602=_0x4bb73f['batch'];_0x38a8ea['_createdBatches']['has'](_0x220602)&&(_0x4bb73f['newRange']=_0x4bb73f['oldRange']?_0xb5da03['model']['createRange'](_0x4bb73f['oldRange']['start'],_0x4bb73f['oldRange']['end']):null);},{'priority':'highest'});}['destroy'](){return this['_domEmitter']['stopListening'](),super['destroy']();}['createUserMarkerOperations'](){const _0x17554e=this['editor'],_0x2ff88=_0x17554e['model']['document'],_0x22cb98=_0x17554e['plugins']['get'](i);_0x17554e['model']['enqueueChange']({'isUndoable':!0x1},_0x522af3=>{const _0x2f6fbc='user:range:'+_0x22cb98['mySessionId'],_0x2ade6b='user:position:'+_0x22cb98['mySessionId'],_0x1eb894=_0x17554e['model']['markers']['has'](_0x2f6fbc);_0x17554e['editing']['view']['hasDomSelection']?J(_0x22cb98['mySessionId'],_0x2ff88['selection']['getFirstRange'](),_0x17554e['model'],_0x522af3):_0x1eb894&&(_0x522af3['removeMarker'](_0x2f6fbc),_0x522af3['removeMarker'](_0x2ade6b));});}}function J(_0x260248,_0x5b1ecb,_0x4a006e,_0x277f55){const _0x506a01='user:range:'+_0x260248,_0xb86dc4='user:position:'+_0x260248,_0x25c0da=_0x5b1ecb['getContainedElement']();let _0x553ef0=_0x5b1ecb['start'];if(_0x25c0da&&_0x25c0da['is']('element','tableCell')){const _0x316545=function(_0x28dfef,_0x27d18a){for(const _0x289e5a of _0x28dfef['getPositions']())if(_0x27d18a['schema']['checkChild'](_0x289e5a,'$text'))return _0x289e5a;}(_0x5b1ecb,_0x4a006e);_0x316545&&(_0x553ef0=_0x316545,_0x5b1ecb=_0x277f55['createRange'](_0x553ef0));}const _0x4fd253=_0x277f55['createRange'](_0x553ef0);_0x4a006e['markers']['has'](_0x506a01)?(_0x277f55['updateMarker'](_0x506a01,{'range':_0x5b1ecb}),_0x277f55['updateMarker'](_0xb86dc4,{'range':_0x4fd253})):(_0x277f55['addMarker'](_0x506a01,{'range':_0x5b1ecb,'usingOperation':!0x0}),_0x277f55['addMarker'](_0xb86dc4,{'range':_0x4fd253,'usingOperation':!0x0}));}function E(_0x21abfa,_0x329d0a,_0x4eede7){const _0x286b37=_0x21abfa['t'],t=_0x21abfa['t'];switch(_0x329d0a){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 _0x286b37({'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'},_0x4eede7);default:return'';}}let H=0x1;class l extends _0xa3957f{static ['CollaborativeEditingService']=/* #__PURE__ -- @preserve */
|
|
25
|
+
((()=>_0x10e105)());['_offset'];['sessionId'];['serverHistory'];['_channelId'];['_service'];['_document'];['_compressor'];['_bufferedOperations'];['_knownOperations'];['_knownRootNames'];['_pendingAction'];['_hasSelectionChanged'];['_sendBufferedOperationsDelayId'];['_baseBufferDelay'];['_currentBufferDelay'];['_lastSyncedOperationId'];['_disconnectionOperations'];['_operationIdentifier'];static get['requires'](){return[n,i,C,_0x46f226,_0x2cdae6,_0x1f910b];}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 _0x51a8fa=this['serverHistory']['getOperations']();for(let _0x359fea=_0x51a8fa['length']-0x1;_0x359fea>=0x0;_0x359fea--){const _0x2515fc=_0x51a8fa[_0x359fea];if(!this['_disconnectionOperations']['has'](_0x2515fc))return _0x2515fc['baseVersion']+0x1-this['_offset'];}return 0x0;}constructor(_0x53ff9e){if(super(_0x53ff9e),this['_offset']=0x0,this['sessionId']=null,this['serverHistory']=new _0x33b8ee(),this['editor']['config']['define']('collaboration',{}),this['_channelId']=this['editor']['config']['get']('collaboration.channelId'),!this['_channelId'])throw new _0x361cf4('collaboration-missing-channelid',this);const _0x2a248c=_0x53ff9e['config']['get']('cloudServices.bundleVersion')||ht;this['_service']=new l['CollaborativeEditingService'](_0x2a248c,this['_channelId']),this['_document']=this['editor']['model']['document'],this['_compressor']=new _0x2c6b24(),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 F(this['_disconnectionOperations']);}['init'](){const _0x209f2e=this['editor'],_0x4b3495=_0x209f2e['plugins']['get'](_0x2cdae6),_0x4915d6=_0x209f2e['plugins']['get'](n);this['listenTo'](_0x4b3495,'getOperationAuthor',(_0xa87025,_0x40bde5)=>{const _0x19fef0=_0x40bde5[0x0];_0x19fef0['_authorId']&&(_0xa87025['return']=_0x4b3495['getUser'](_0x19fef0['_authorId']),_0xa87025['stop']()),null===_0x19fef0['_authorId']&&(_0xa87025['return']=null,_0xa87025['stop']());},{'priority':'high'}),this['listenTo'](_0x209f2e['model']['document']['selection'],'change:range',(_0x12da26,_0x234f39)=>{_0x234f39['directChange']&&this['_refreshUserSelectionMarkers']();}),this['listenTo'](_0x209f2e['editing']['view'],'change:hasDomSelection',()=>{this['_refreshUserSelectionMarkers']();}),this['_initThrowingOnDataSet'](),_0x209f2e['model']['on']('applyOperation',(_0x5cec36,_0x2480fd)=>{const _0x5a77c7=_0x2480fd[0x0];_0x5a77c7['isDocumentOperation']&&(this['_saveOperationInBuffer'](_0x5a77c7),this['_shouldSendUpdate']()&&this['_sendBufferedOperationsDelayed']());}),this['_setUpDataInit'](),this['bind']('_isEditingAllowed')['to'](_0x4915d6,'state',this,'_hasSynchronizationProblem',(_0x1b735c,_0x2fa938)=>'connected'===_0x1b735c&&!_0x2fa938),this['on']('change:_isEditingAllowed',()=>{this['_isEditingAllowed']?_0x209f2e['disableReadOnlyMode']('rtc-offline'):_0x209f2e['enableReadOnlyMode']('rtc-offline');}),this['_isEditingAllowed']?_0x209f2e['disableReadOnlyMode']('rtc-offline'):_0x209f2e['enableReadOnlyMode']('rtc-offline'),this['set']('_isConnected',!0x1);}async['reconnect'](){const _0xcbcfb7=this['editor']['plugins']['get'](i),_0x23a816=this['editor']['plugins']['get'](n);try{this['_isPendingUpdate']=!0x0,_0xcbcfb7['unregister'](this['_channelId']);const _0x29315c=await this['_service']['reconnect'](_0x23a816['connection'],this['lastSyncVersion']);await this['_handleReconnectionResponse'](_0x29315c)&&(this['_isPendingUpdate']=!0x1,this['_clearPendingAction']());const _0x4cbec8=await this['_service']['getConnectedSessions']();_0xcbcfb7['register'](this['_channelId'],_0x4cbec8),this['_handleSendingSelectionMarkers'](),this['_isConnected']=!0x0;}catch(_0xf0b3bc){if(function(_0x227e16){return'404'===_0x227e16['code'];}(_0xf0b3bc)&&this['sessionId'])await this['_connectAfterSessionHasBeenFlushed']();else{if(function(_0x5b5f59){return'409'===_0x5b5f59['code'];}(_0xf0b3bc)){const _0x190681=E(this['editor']['locale'],'The\x20document\x20cannot\x20be\x20connected\x20back\x20to\x20the\x20server.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.');this['_handleReconnectionError'](_0x190681);}else{if(!(_0xf0b3bc instanceof V))throw _0xf0b3bc;this['_handleReconnectionError']();}}}}['destroy'](){const _0x2e1bfb=this['editor']['plugins']['get'](n),_0x3e7986=this['editor']['plugins']['get'](i);this['editor']['enableReadOnlyMode']('rtc-destroyed'),_0x3e7986['channelSessions']['has'](this['_channelId'])&&_0x3e7986['unregister'](this['_channelId']),_0x2e1bfb['removeFromReconnectionStack'](this),this['_disconnectService'](),super['destroy']();}async['_handleReconnectionResponse'](_0x47d26c){if(this['sessionId']!==_0x47d26c['sessionId']&&this['_lastSyncedOperationId']!==_0x47d26c['lastOperationId'])throw new V();return this['sessionId']=_0x47d26c['sessionId'],this['_handleServerResponse']([],{..._0x47d26c,'wereChangesApplied':!0x1,'data':_0x47d26c['data']},'reconnect');}async['_connectService'](_0xf1d612,_0x9febb5=!0x1){const {connection:_0x430fec}=this['editor']['plugins']['get'](n);l['CollaborativeEditingService']['getConnectedSessions'](_0x430fec,this['_channelId'])['then'](_0x21413d=>this['_initSessionsHandling'](_0x21413d))['catch'](_0x5850e0=>{this['_crash']('realtimecollaborationclient-init-session-connection-error',_0x5850e0);}),this['listenTo'](this['_service'],'operationsReceived',this['_handleReceivedOperations']['bind'](this)),this['listenTo'](this['_service'],'error',(_0x4ac5c3,_0x3371aa)=>{this['_crash']('realtimecollaborationclient-init-service-internal-error',_0x3371aa);}),this['listenTo'](this['_service'],'disconnected',()=>{this['_isConnected']=!0x1;});const _0x12121a=this['_operationIdentifier']['getIdOfTheLastOperation'](_0xf1d612);this['_isPendingUpdate']=!0x0;const _0x35f009=await this['_service']['connect'](_0x430fec,this['_compressOperations'](_0xf1d612),_0x12121a);if(this['sessionId']=_0x35f009['sessionId'],_0x9febb5){if(!_0x35f009['wereChangesApplied'])return void this['_handleReconnectionError']();this['_isPendingUpdate']=!0x1,this['_clearPendingAction'](),this['serverHistory']['reset'](),this['_offset']=_0x35f009['offset'],this['serverHistory']['version']=this['_offset'],await this['_handleServerResponse'](_0xf1d612,_0x35f009,'reconnection:\x20flushed\x20session');}else await this['_handleInitialConnectionData'](_0x35f009,_0xf1d612);this['_handleSendingSelectionMarkers'](),this['_isConnected']=!0x0;}['_handleSendingSelectionMarkers'](){const _0x16bc07=this['editor']['plugins']['get'](i),_0x46dfb8=this['editor']['plugins']['get'](C),_0x59eb75=_0x16bc07['channelSessions']['get'](this['_channelId']);_0x59eb75&&_0x59eb75['length']>0x1?_0x46dfb8['createUserMarkerOperations']():this['listenTo'](_0x16bc07,'sessionAdd:'+this['_channelId'],()=>{0x2===_0x16bc07['channelSessions']['get'](this['_channelId'])['length']&&_0x46dfb8['createUserMarkerOperations']();});}async['_handleReceivedOperations'](_0x517d8e,_0x1ef4ff,_0x2779b7,_0x572f91){if(!this['_isPendingUpdate']&&this['_document']['version']==_0x1ef4ff){const _0x443182=this['_decompressOperations'](_0x2779b7,_0x572f91);await this['_fetchMissingUsers'](_0x443182),this['_handleExternalOperations'](_0x443182,_0x1ef4ff,_0x2779b7['lastOperationId'])||this['_crash']('realtimecollaborationclient-init-service-incorrect-server-operation');}}async['_connectAfterSessionHasBeenFlushed'](){this['_disconnectService']();const {locale:_0x3c3835}=this['editor'];let _0x1cf732;try{_0x1cf732=await this['_service']['getDocumentDetails']();}catch{const _0x3d0019=E(_0x3c3835,'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'](_0x3d0019);}const _0x900037=_0x1cf732['currentDocumentSession']||_0x1cf732['lastDocumentSession'];if(this['_lastSyncedOperationId']!==_0x900037['lastOperationId']){const _0x5186e5=E(_0x3c3835,'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'](_0x5186e5);}await this['_connectService'](this['editor']['model']['document']['history']['getOperations'](),!0x0);}['_disconnectService'](){this['_service']['disconnect'](),this['_bufferedOperations']=[],clearTimeout(this['_sendBufferedOperationsDelayId']),this['stopListening'](this['_service']);}['_initSessionsHandling'](_0x5ac640){const _0x50886f=this['editor']['plugins']['get'](i);this['listenTo'](_0x50886f,'sessionAdd:'+this['_channelId'],(_0x247932,{session:_0x38f601})=>{if(_0x38f601['id']===_0x50886f['mySessionId']){_0x247932['off']();const _0x165d2b=this['editor']['plugins']['has']('CommentsOnly')&&this['editor']['plugins']['get']('CommentsOnly');let _0x409b5e=_0x38f601['permissions'];_0x165d2b&&_0x165d2b['isEnabled']&&(_0x409b5e=_0x409b5e['filter'](_0x508392=>'document:write'!==_0x508392)),this['editor']['plugins']['get']('Permissions')['setPermissions'](_0x409b5e,this['_channelId']);}}),_0x50886f['register'](this['_channelId'],_0x5ac640);}['_initThrowingOnDataSet'](){const _0x2b66a0=this['editor']['data']['set'];this['editor']['data']['set']=(..._0x1c55f8)=>{if(!_0x1c55f8[_0x1c55f8['length']-0x1]['suppressErrorInCollaboration'])throw new _0x361cf4('realtimecollaborationclient-editor-setdata-and-editor-data-set-are-forbidden-in-real-time-collaboration',this);_0x2b66a0['apply'](this['editor']['data'],_0x1c55f8);};}['_setUpDataInit'](){this['editor']['data']['on']('init',(_0x403fd3,[_0x58c2c6])=>{if(this['_document']['version'])throw new _0x361cf4('realtimecollaborationclient-init-document-already-initialized',this);_0x403fd3['stop'](),this['_setPendingAction']();const _0x2a2fe1=this['editor']['config']['get']('rootsAttributes'),_0x2842eb=this['_getOperationsFromInitData'](_0x58c2c6,_0x2a2fe1);0x0==_0x2842eb['length']&&_0x2842eb['push'](new _0x22981c(0x0)),_0x403fd3['return']=this['_connectService'](_0x2842eb)['then'](()=>{this['editor']['plugins']['get'](n)['addToReconnectionStack'](this),this['editor']['data']['fire']('ready');})['catch'](_0x174fb1=>this['_crash']('realtimecollaborationclient-init-connection-failed',_0x174fb1))['finally'](()=>this['_clearPendingAction']());},{'priority':'high'}),this['editor']['on']('loadRoot',async(_0x2b5664,[_0x500808,_0x56b517])=>{_0x2b5664['stop']();const _0x1e1f83=this['editor']['model']['document']['getRoot'](_0x500808);if(!this['_knownRootNames']['has'](_0x500808)){const _0x2c8d3c=_0x56b517&&_0x56b517['data']?_0x56b517['data']:'',_0x474f1a=_0x56b517&&_0x56b517['attributes']?_0x56b517['attributes']:{};await this['_loadRoot'](_0x500808,_0x2c8d3c,_0x474f1a);}this['editor']['model']['enqueueChange']({'isUndoable':!0x1},()=>{_0x1e1f83['_isLoaded']=!0x0,this['editor']['model']['document']['differ']['_bufferRootLoad'](_0x1e1f83);});},{'priority':'high'});}async['_fetchMissingUsers'](_0x46822e){const _0x9cc2df=this['editor']['plugins']['get'](_0x2cdae6),{connection:_0x31358e}=this['editor']['plugins']['get'](n),_0x298201=new Set();for(const _0x212cb1 of _0x46822e){const _0x2471c5=_0x212cb1['_authorId'];_0x2471c5&&!_0x9cc2df['getUser'](_0x2471c5)&&_0x298201['add'](_0x2471c5);}if(0x0===_0x298201['size'])return;const _0x398733=await ut['getMany'](_0x31358e,Array['from'](_0x298201));for(const _0x1be052 of _0x398733)_0x9cc2df['getUser'](_0x1be052['id'])||_0x9cc2df['addUser'](_0x1be052);}['_getOperationsFromInitData'](_0x9a1c77,_0x32bd86={}){const _0x2cd9d5=this['editor']['model'],_0x115018=[];let _0xf7c91b=0x0;const _0xed551='string'==typeof _0x9a1c77?{'main':_0x9a1c77}:_0x9a1c77;for(const _0x2b65f4 of Object['keys'](_0xed551)){if(!this['_document']['roots']['has'](_0x2b65f4))throw new _0x361cf4('realtimecollaborationclient-init-non-existent-root',this);const _0x3538e6=this['editor']['data']['parse'](_0xed551[_0x2b65f4]),_0x3c87e7=this['_document']['getRoot'](_0x2b65f4),_0x129f8a=new _0x4cd219(_0x2cd9d5['createPositionAt'](_0x3c87e7,0x0),_0x3538e6,_0xf7c91b++);_0x115018['push'](_0x129f8a);for(const [_0x5e8a94,_0x264242]of _0x3538e6['markers']){const _0xaad514=_0x2cd9d5['createRange'](_0x2cd9d5['createPositionFromPath'](_0x3c87e7,_0x264242['start']['path']['slice']()),_0x2cd9d5['createPositionFromPath'](_0x3c87e7,_0x264242['end']['path']['slice']())),_0x41823b=new _0x38d7d0(_0x5e8a94,null,_0xaad514,_0x2cd9d5['markers'],!0x0,_0xf7c91b++);_0x115018['push'](_0x41823b);}}if(_0x32bd86)for(const [_0x48f060,_0x53ed0d]of Object['entries'](_0x32bd86)){const _0x5f4bba=_0x2cd9d5['document']['getRoot'](_0x48f060);if(!_0x5f4bba)throw new _0x361cf4('multi-root-editor-root-attributes-no-root',null);for(const [_0x5aa509,_0x31d14d]of Object['entries'](_0x53ed0d))if(null!==_0x31d14d){const _0x3a5a06=new _0xb7bde(_0x5f4bba,_0x5aa509,null,_0x31d14d,_0xf7c91b++);_0x115018['push'](_0x3a5a06);}}return _0x115018;}async['_loadRoot'](_0x544e75,_0x213379,_0x4a78ec){this['_getOperationsFromInitData']({[_0x544e75]:_0x213379},{[_0x544e75]:_0x4a78ec})['forEach']((_0x47efe0,_0x316cc4)=>{_0x47efe0['baseVersion']=this['_document']['version']+_0x316cc4,_0x47efe0['_isInit']=!0x0,this['_saveOperationInBuffer'](_0x47efe0);}),this['_sendBufferedOperationsDelayed'](),await this['_waitUntilSynced']();}async['_handleInitialConnectionData'](_0xc2aeb1,_0x2f0fca){let _0xb8c50c;this['_offset']=_0xc2aeb1['offset'];const _0x30618d=_0xc2aeb1['wereChangesApplied']&&!_0xc2aeb1['initData'],_0x5b22fe=_0x30618d?0x0:_0xc2aeb1['data']['baseVersion'];if(_0x2f0fca['forEach'](_0xe28a75=>{_0xe28a75['_isInit']=!0x0,_0xe28a75['createdAt']=_0xc2aeb1['sessionCreatedAt'],_0xe28a75['_authorId']=null;}),_0x30618d)_0xb8c50c=_0x2f0fca,this['_applyOperationsSet'](_0xb8c50c,_0x30618d);else{if(_0xc2aeb1['initData']){const _0x2b5f1c=this['_getOperationsFromInitData'](_0xc2aeb1['initData']);this['_document']['history']['version']=-_0x2b5f1c['length'],_0x2b5f1c['forEach'](_0x4abd29=>{_0x4abd29['baseVersion']-=_0x2b5f1c['length'],_0x4abd29['createdAt']=_0xc2aeb1['sessionCreatedAt'],_0x4abd29['_isInit']=!0x0,_0x4abd29['_authorId']=null;}),this['_applyOperationsSet'](_0x2b5f1c,!0x0),this['serverHistory']['version']=-_0x2b5f1c['length']+this['_offset'],this['_updateServerHistory'](_0x2b5f1c);}this['_document']['history']['version']=_0x5b22fe,_0xb8c50c=this['_decompressOperations'](_0xc2aeb1['data'],_0xc2aeb1['metadata']),await this['_fetchMissingUsers'](_0xb8c50c),this['_applyOperationsSet'](_0xb8c50c,_0x30618d);}_0xc2aeb1['lastOperationId']&&(this['_operationIdentifier']['setIdForTheLastOperation'](_0xb8c50c,_0xc2aeb1['lastOperationId']),this['_lastSyncedOperationId']=_0xc2aeb1['lastOperationId']),this['serverHistory']['version']=_0x5b22fe+this['_offset'],this['_updateServerHistory'](_0xb8c50c),_0x2f0fca['filter'](_0x9cdd64=>{const _0x4c4c43=this['_getAffectedRoot'](_0x9cdd64);return _0x4c4c43&&!this['_knownRootNames']['has'](_0x4c4c43);})['forEach']((_0x2590be,_0x4e4747)=>{_0x2590be['baseVersion']=this['_document']['version']+_0x4e4747,this['_saveOperationInBuffer'](_0x2590be);}),this['_shouldSendUpdate']()?(this['_currentBufferDelay']=0x0,this['_sendBufferedOperationsDelayed'](!0x0),await this['_waitUntilSynced']()):(this['_isPendingUpdate']=!0x1,this['_clearPendingAction']());}['_crash'](_0x53d557,_0x475ead){const _0x8a9ea7=_0x475ead&&_0x475ead['message'];if(_0x8a9ea7&&_0x8a9ea7['startsWith']('realtimecollaborationclient'))throw _0x475ead;const _0x20275d=this['editor']['plugins']['get'](n);throw this['_isPendingUpdate']=!0x0,_0x20275d['disconnect'](),this['editor']['enableReadOnlyMode']('realtimecollaborationclient-error'),new _0x361cf4(_0x53d557,this['editor'],_0x8a9ea7?{'originalError':_0x8a9ea7}:void 0x0);}['_saveOperationInBuffer'](_0x1edfeb){this['_knownOperations']['has'](_0x1edfeb)||(this['_knownOperations']['add'](_0x1edfeb),this['_bufferedOperations']['push'](_0x1edfeb),this['_pendingAction']||'marker'==_0x1edfeb['type']&&!_0x1edfeb['affectsData']||this['_setPendingAction']());}['_sendBufferedOperationsDelayed'](_0x4574c0=!0x1){!_0x4574c0&&this['_isPendingUpdate']||(this['_isPendingUpdate']=!0x0,clearTimeout(this['_sendBufferedOperationsDelayId']),this['_sendBufferedOperationsDelayId']=setTimeout(()=>{this['_sendBufferedOperations']()['then'](_0x375400=>{_0x375400&&(this['_clearPendingAction'](),this['_isPendingUpdate']=!0x1);})['catch'](_0x39da3f=>{this['_clearPendingAction'](),this['_isPendingUpdate']=!0x1,function(_0x429444){return _0x429444['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x429444['message']['startsWith']('cloud-services-internal-error:\x20Collaborative\x20Editing\x20Service\x20is\x20not\x20connected.')||_0x429444['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}(_0x39da3f)||this['_crash'](_0x39da3f['message'],_0x39da3f);});},this['_currentBufferDelay']));}['_waitUntilSynced'](){return new Promise(_0x1269e3=>{this['on']('change:_isPendingUpdate',()=>{_0x1269e3();});});}async['_sendBufferedOperations'](){const _0x285874=this['editor']['plugins']['get'](C);if(this['_shouldSendSelectionUpdate']()&&(_0x285874['createUserMarkerOperations'](),this['_hasSelectionChanged']=!0x1),!this['_shouldSendUpdate']())return!0x0;const _0x5e9bb6=[...this['_bufferedOperations']];for(const _0x172456 of _0x5e9bb6)_0x172456['wasUndone']=this['_document']['history']['isUndoneOperation'](_0x172456);const _0x57a5c3=this['_operationIdentifier']['getIdOfTheLastOperation'](_0x5e9bb6),_0x118d8e=H++,_0x10e4a5=this['_compressOperations'](_0x5e9bb6),_0x4c0804=await this['_service']['sendOperations'](_0x10e4a5,_0x10e4a5['baseVersion'],_0x57a5c3);try{return await this['_handleServerResponse'](_0x5e9bb6,_0x4c0804,_0x118d8e);}catch(_0x43ccbd){return this['_crash']('realtimecollaborationclient-sendbufferedoperations',_0x43ccbd);}}async['_handleServerResponse'](_0x215eac,_0x3761fb,_0x22c6eb){if('error'in _0x3761fb)throw _0x3761fb['error'];let _0x1d6324=!0x1;if(_0x3761fb['wereChangesApplied']){_0x3761fb['lastOperationId']&&(this['_lastSyncedOperationId']=_0x3761fb['lastOperationId']),this['_bufferedOperations']=this['_bufferedOperations']['filter'](_0x1344c0=>!_0x215eac['includes'](_0x1344c0));for(const _0x4dd0ba of _0x215eac)_0x4dd0ba['createdAt']='lastOperationAcceptedAt'in _0x3761fb&&_0x3761fb['lastOperationAcceptedAt']||void 0x0;W(_0x215eac,_0x3761fb['version']-_0x215eac['length']),this['_updateServerHistory'](_0x215eac);const _0x1cf48c=_0x215eac['filter'](_0x52e6a5=>{if(!_0x52e6a5['_isInit'])return!0x1;const _0x20bb3a=this['_getAffectedRoot'](_0x52e6a5);return _0x20bb3a&&!this['_knownRootNames']['has'](_0x20bb3a);});W(_0x1cf48c,this['_document']['version']),this['_applyOperationsSet'](_0x1cf48c),_0x1d6324=!0x0,this['_currentBufferDelay']=this['_baseBufferDelay'];}else{const _0xe19873=this['_decompressOperations'](_0x3761fb['data'],_0x3761fb['metadata'])['filter'](_0x314f31=>_0x314f31['baseVersion']>=this['_lastServerVersion']);_0xe19873['forEach'](_0x3aa58a=>this['_addKnownRoot'](_0x3aa58a)),this['_bufferedOperations']=this['_bufferedOperations']['filter'](_0xd8ba66=>!_0xd8ba66['_isInit']||!this['_knownRootNames']['has'](this['_getAffectedRoot'](_0xd8ba66))),this['_bufferedOperations']['length']&&W(this['_bufferedOperations'],this['_bufferedOperations'][0x0]['baseVersion']),await this['_fetchMissingUsers'](_0xe19873),_0x1d6324=this['_handleExternalOperations'](_0xe19873,_0x3761fb['version'],_0x3761fb['lastOperationId']),this['_currentBufferDelay']=Math['round'](this['_currentBufferDelay']/0x2);}return _0x1d6324?!this['_shouldSendUpdate']()||(this['_sendBufferedOperationsDelayed'](!0x0),!0x1):this['_crash']('realtimecollaborationclient-handleserverresponse');}['_handleExternalOperations'](_0x2ab6a0,_0x502fbf,_0x10a2c3){try{const _0x3c6dbe={'document':this['_document'],'useRelations':!0x1,'padWithNoOps':!0x0},{operationsA:_0x1e4856,operationsB:_0x17d792,originalOperations:_0x833fee}=_0x1b5db5(_0x2ab6a0,this['_bufferedOperations'],_0x3c6dbe);W(_0x1e4856,this['_document']['version']),W(_0x17d792,_0x502fbf);for(const _0x1f833c of _0x1e4856){const _0x54e6b5=_0x833fee['get'](_0x1f833c);_0x1f833c['_authorId']=_0x54e6b5?_0x54e6b5['_authorId']:null;}_0x10a2c3&&(this['_operationIdentifier']['setIdForTheLastOperation'](_0x2ab6a0,_0x10a2c3),this['_lastSyncedOperationId']=_0x10a2c3),this['_bufferedOperations']=[..._0x17d792],this['_applyOperationsSet'](_0x1e4856),this['_updateServerHistory'](_0x2ab6a0);}catch(_0x200352){return console['error'](_0x200352),!0x1;}return!0x0;}['_applyOperationsSet'](_0x28fe89,_0x5c2233=!0x1){this['editor']['model']['enqueueChange']({'isUndoable':!0x1,'isLocal':!0x1},_0x49e0e2=>{for(const _0x54c5ca of _0x28fe89)this['_knownOperations']['add'](_0x54c5ca),this['_addKnownRoot'](_0x54c5ca),_0x49e0e2['batch']['addOperation'](_0x54c5ca),this['editor']['model']['applyOperation'](_0x54c5ca);});}['_addKnownRoot'](_0x9bd9ba){const _0x5f5a3b=this['_getAffectedRoot'](_0x9bd9ba);_0x5f5a3b&&this['_knownRootNames']['add'](_0x5f5a3b);}['_getAffectedRoot'](_0x2aba31){let _0x4d8fde,_0x2eb2fb;switch(_0x2aba31['type']){case'insert':_0x4d8fde=_0x2aba31['position']['root'];break;case'marker':if(_0x2eb2fb=_0x2aba31['newRange'],!_0x2eb2fb)return null;_0x4d8fde=_0x2eb2fb['root'];break;case'addRootAttribute':_0x4d8fde=_0x2aba31['root'];break;case'addRoot':_0x4d8fde=_0x2aba31['affectedSelectable'];break;case'move':_0x4d8fde=_0x2aba31['targetPosition']['root'];break;default:return null;}return _0x4d8fde['rootName'];}['_updateServerHistory'](_0x1a1ebb){_0x1a1ebb['forEach'](_0x48197d=>{const _0x493282=_0x48197d['clone']();_0x493282['_authorId']=_0x48197d['_authorId'],_0x493282['_isInit']=!!_0x48197d['_isInit'],_0x493282['createdAt']=_0x48197d['createdAt'],_0x493282['baseVersion']+=this['_offset'],_0x48197d['_isDisconnection']&&this['_disconnectionOperations']['add'](_0x493282),this['serverHistory']['addOperation'](_0x493282);});}['_handleReconnectionError'](_0x5a1499){const _0x3d6891=this['editor']['plugins']['get']('Notification'),_0x66b60a=this['editor']['locale'];_0x5a1499||(_0x5a1499=E(_0x66b60a,'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.')),_0x3d6891['showWarning'](_0x5a1499,{'title':E(_0x66b60a,'Synchronization\x20issue'),'namespace':'real-time-collaboration'}),this['_hasSynchronizationProblem']=!0x0,clearTimeout(this['_sendBufferedOperationsDelayId']),this['_bufferedOperations']=[],this['editor']['plugins']['get'](n)['disconnect']();}['_setPendingAction'](){this['_pendingAction']||(this['_pendingAction']=this['editor']['plugins']['get'](_0x46f226)['add'](E(this['editor']['locale'],'PENDING_ACTION_SENDING_DATA')));}['_clearPendingAction'](){this['_pendingAction']&&(this['editor']['plugins']['get'](_0x46f226)['remove'](this['_pendingAction']),this['_pendingAction']=null);}['_compressOperations'](_0x5dc3a4){const _0x2ea999=_0x5dc3a4['map'](_0x4c3408=>_0x4c3408['toJSON']());return this['_compressor']['compress'](_0x2ea999);}['_decompressOperations'](_0x2b4218,_0x59e963){return this['_compressor']['decompress'](_0x2b4218)['map']((_0xbf1350,_0xc1df51)=>{const _0xd82a03='init'==_0x59e963[_0xc1df51]['type'];if('InsertOperation'==_0xbf1350['__className']){const _0x496dd1=_0xbf1350['position']['root'];!this['_document']['getRoot'](_0x496dd1)&&(this['_document']['createRoot']('$root',_0x496dd1)['_isAttached']=!0x1);}const _0x4a539d=_0x53e641['fromJSON'](_0xbf1350,this['_document']);return _0x4a539d['wasUndone']=_0xbf1350['wasUndone'],_0x4a539d['_isInit']=_0xd82a03,_0x4a539d['_authorId']=_0xd82a03?null:_0x59e963[_0xc1df51]['userId'],_0x4a539d['_isDisconnection']='cs:removeUser'===_0x59e963[_0xc1df51]['type'],_0x4a539d['createdAt']=_0x59e963[_0xc1df51]['createdAt'],_0x4a539d;});}['_refreshUserSelectionMarkers'](){this['_hasSelectionChanged']=!0x0,this['_shouldSendSelectionUpdate']()?this['_sendBufferedOperationsDelayed']():this['_hasSelectionChanged']=!0x1;}['_shouldSendSelectionUpdate'](){const _0x2faa09=this['editor']['plugins']['get'](i)['channelSessions']['get'](this['_channelId']);return!this['editor']['isReadOnly']&&!!_0x2faa09&&_0x2faa09['length']>0x1&&this['_hasSelectionChanged'];}['_shouldSendUpdate'](){return this['_bufferedOperations']['length']>0x0||this['_shouldSendSelectionUpdate']();}}class V extends Error{}function W(_0x151a21,_0x4235ce){for(const _0x11e36d of _0x151a21)_0x11e36d['baseVersion']=_0x4235ce++;}class F{['_ignoredOperations'];['_operationToId'];constructor(_0x278fd7){this['_ignoredOperations']=_0x278fd7,this['_operationToId']=new WeakMap();}['getIdOfTheLastOperation'](_0x390b36){let _0x2a5753=_0x390b36['length'];for(;_0x2a5753--;){const _0x47f8e9=_0x390b36[_0x2a5753];if(!this['_ignoredOperations']['has'](_0x47f8e9)){if(!this['_operationToId']['has'](_0x47f8e9)){const _0x22d724=_0x43d7be()['slice'](0x1,0x12);this['_operationToId']['set'](_0x47f8e9,_0x22d724);}return this['_operationToId']['get'](_0x47f8e9);}}}['setIdForTheLastOperation'](_0x36943b,_0x2c265b){if(!_0x2c265b)return;let _0x1c20fa=_0x36943b['length'];for(;_0x1c20fa--;){const _0x302cca=_0x36943b[_0x1c20fa];this['_ignoredOperations']['has'](_0x302cca)||this['_operationToId']['set'](_0x302cca,_0x2c265b);}}}class a extends _0xa3957f{static get['requires'](){return[l];}static get['pluginName'](){return'RealTimeCollaborativeEditing';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}class s extends _0x2d60c1{static ['CommentsService']=/* #__PURE__ -- @preserve */
|
|
26
|
+
((()=>ot)());['_services'];static get['requires'](){return[n,'CommentsRepository',i,_0x2cdae6];}static get['pluginName'](){return'CloudServicesCommentsAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x35b45c){super(_0x35b45c),this['_services']=new Map();}async['init'](){const _0x1dea4a=this['context'],_0x2787f5=_0x1dea4a['plugins']['get']('CommentsRepository');if(_0x1dea4a['plugins']['get'](n)['addToReconnectionStack'](this),_0x2787f5['adapter']={'addCommentThread':async({channelId:_0x2a77c0,threadId:_0x1424d5,comments:_0x1d2460,resolvedAt:_0x24eb18,resolvedBy:_0x168015,context:_0x7771f7,attributes:_0x511af9})=>{const _0x8c9ca8=await this['_getService'](_0x2a77c0)['addCommentThread']({'commentThreadId':_0x1424d5,'comments':_0x1d2460['map'](_0x32cb02=>function(_0x7cbe7f,_0x3d27a7,_0x237cb2){return{'commentThreadId':_0x237cb2,'commentId':_0x7cbe7f['commentId'],'userId':_0x7cbe7f['authorId'],'content':_0x7cbe7f['content'],'documentId':_0x3d27a7,'createdAt':_0x7cbe7f['createdAt'],'attributes':_0x7cbe7f['attributes']||{}};}(_0x32cb02,_0x2a77c0,_0x1424d5)),'resolvedAt':_0x24eb18,'resolvedBy':_0x168015,'context':_0x7771f7,'attributes':_0x511af9})['catch'](ft);return{'threadId':_0x8c9ca8['commentThreadId'],'comments':_0x8c9ca8['comments']};},'getCommentThread':async({channelId:_0xf5d17,threadId:_0x837a1f})=>{const _0x4ec471=await this['_getService'](_0xf5d17)['getCommentThread'](_0x837a1f)['catch'](ft);return _0x4ec471['deletedAt']?null:(await this['_fetchMissingUsersForThreads']([_0x4ec471]),{'threadId':_0x4ec471['commentThreadId'],'comments':_0x4ec471['comments']['map'](st),'context':_0x4ec471['context'],'resolvedAt':_0x4ec471['resolvedAt'],'resolvedBy':_0x4ec471['resolvedBy'],'attributes':_0x4ec471['attributes']||{}});},'updateCommentThread':async({channelId:_0x4f595e,threadId:_0x54d2a1,context:_0x43592a,unlinkedAt:_0xd2c5e,attributes:_0x3c0651})=>this['_getService'](_0x4f595e)['updateCommentThread']({'commentThreadId':_0x54d2a1,'context':_0x43592a,'attributes':_0x3c0651,'unlinkedAt':_0xd2c5e})['catch'](nt)['catch'](ft),'resolveCommentThread':async({channelId:_0x4544c2,threadId:_0x5d3469})=>{const _0x3b3439=await this['_getService'](_0x4544c2)['resolveCommentThread'](_0x5d3469)['catch'](nt)['catch'](ft);return{'threadId':_0x3b3439['commentThreadId'],'resolvedAt':_0x3b3439['resolvedAt'],'resolvedBy':_0x3b3439['resolvedBy']};},'reopenCommentThread':async({channelId:_0x4f3a1a,threadId:_0x1efada})=>this['_getService'](_0x4f3a1a)['reopenCommentThread'](_0x1efada)['catch'](nt)['catch'](ft),'removeCommentThread':({channelId:_0x2e6750,threadId:_0x4cd4f2})=>this['_getService'](_0x2e6750)['removeCommentThread'](_0x4cd4f2)['catch'](nt)['catch'](ft),'addComment':({channelId:_0x18d1e6,threadId:_0x17f216,commentId:_0x29491f,content:_0x78b852,attributes:_0x2f780e})=>this['_getService'](_0x18d1e6)['addComment'](_0x17f216,_0x29491f,_0x78b852,_0x2f780e)['catch'](ft),'updateComment':({channelId:_0x2e0f22,threadId:_0x1c8eff,commentId:_0xd13879,content:_0x15f483,attributes:_0x53bc53})=>this['_getService'](_0x2e0f22)['updateComment'](_0x1c8eff,_0xd13879,_0x15f483,_0x53bc53)['catch'](nt)['catch'](ft),'removeComment':({channelId:_0x5b0a69,threadId:_0xbdf3c9,commentId:_0x495630})=>this['_getService'](_0x5b0a69)['removeComment'](_0xbdf3c9,_0x495630)['catch'](nt)['catch'](ft)},_0x1dea4a instanceof et){const _0x5f5923=_0x1dea4a['config']['get']('collaboration.channelId'),_0x5d9075=_0x1dea4a['plugins']['get'](i);await this['_setUpService'](_0x5f5923);const _0x496dee=await this['_services']['get'](_0x5f5923)['getConnectedSessions']();this['listenTo'](_0x5d9075,'sessionAdd:'+_0x5f5923,(_0x1aa98e,{session:_0xf6683})=>{_0xf6683['id']===_0x5d9075['mySessionId']&&(_0x1aa98e['off'](),this['context']['plugins']['get']('Permissions')['setPermissions'](_0xf6683['permissions'],_0x5f5923));}),_0x5d9075['register'](_0x5f5923,_0x496dee);}}async['_setUpService'](_0x3410a6){if(this['_services']['has'](_0x3410a6))throw new _0x361cf4('cloudservicescommentsadapter-connect-already-connected',null,{'channelId':_0x3410a6});const _0x3db231=this['context']['plugins']['get']('CommentsRepository'),_0x306e01=new s['CommentsService'](_0x3410a6);this['_services']['set'](_0x3410a6,_0x306e01),this['listenTo'](_0x306e01,'commentThreadAdded',(_0x3a59d4,_0x391a0c)=>{const {commentThreadId:_0x20ca40,documentId:_0xcc1285,context:_0x437b47,attributes:_0xd79125,resolvedAt:_0x4dd233,resolvedBy:_0x589bca,comments:_0x2699c7}=_0x391a0c;_0x3db231['getCommentThread'](_0x20ca40)||_0x3db231['addCommentThread']({'threadId':_0x20ca40,'channelId':_0xcc1285,'comments':_0x2699c7?_0x2699c7['map'](st):[],'context':_0x437b47,'attributes':_0xd79125,'resolvedAt':_0x4dd233,'resolvedBy':_0x589bca,'isFromAdapter':!0x0});}),this['listenTo'](_0x306e01,'commentThreadUpdated',(_0x4de8ac,{commentThreadId:_0x817081,documentId:_0x4724b8,context:_0x760da3,unlinkedAt:_0x41946a,attributes:_0x39db27})=>{_0x3db231['getCommentThread'](_0x817081)&&_0x3db231['updateCommentThread']({'threadId':_0x817081,'channelId':_0x4724b8,'context':_0x760da3,'unlinkedAt':_0x41946a,'attributes':_0x39db27,'isFromAdapter':!0x0});}),this['listenTo'](_0x306e01,'commentThreadResolved',(_0x1d20de,{commentThreadId:_0x349b3b,resolvedBy:_0x2840f3,resolvedAt:_0x513743})=>{const _0x4479d6=_0x3db231['getCommentThread'](_0x349b3b);_0x4479d6&&_0x4479d6['resolve']({'resolvedBy':_0x2840f3,'resolvedAt':_0x513743,'isFromAdapter':!0x0});}),this['listenTo'](_0x306e01,'commentThreadReopened',(_0x2172c3,{commentThreadId:_0xb6dca})=>{const _0x2591b3=_0x3db231['getCommentThread'](_0xb6dca);_0x2591b3&&_0x2591b3['reopen']({'isFromAdapter':!0x0});}),this['listenTo'](_0x306e01,'commentThreadRemoved',(_0xc59774,{commentThreadId:_0x27bdfa})=>{const _0x5534cd=_0x3db231['getCommentThread'](_0x27bdfa);_0x5534cd&&_0x5534cd['remove']({'isFromAdapter':!0x0});}),this['listenTo'](_0x306e01,'commentAdded',(_0x12d3b9,_0x19cdba)=>{const _0x2569ce=_0x19cdba['commentThreadId'],_0x75fdfd=_0x3db231['getCommentThread'](_0x2569ce);_0x75fdfd&&_0x75fdfd['addComment']({...st(_0x19cdba),'isFromAdapter':!0x0});}),this['listenTo'](_0x306e01,'commentUpdated',(_0x121832,{commentThreadId:_0x1c26df,commentId:_0x399ce1,content:_0x4a272f,attributes:_0x41b05c})=>{const _0x51a013=_0x3db231['getCommentThread'](_0x1c26df);if(_0x51a013){const _0x515d96=_0x51a013['getComment'](_0x399ce1);_0x515d96&&_0x515d96['update']({'content':_0x4a272f,'attributes':_0x41b05c,'isFromAdapter':!0x0});}}),this['listenTo'](_0x306e01,'commentRemoved',(_0x5a0dd0,{commentThreadId:_0x27be98,commentId:_0x2bfdcc})=>{const _0x4ca397=_0x3db231['getCommentThread'](_0x27be98);if(_0x4ca397){const _0x3afc64=_0x4ca397['getComment'](_0x2bfdcc);_0x3afc64&&_0x3afc64['remove']({'isFromAdapter':!0x0});}}),await this['_connectService'](_0x3410a6);}['destroy'](){if(this['context']instanceof et){const _0x500d67=this['context']['config']['get']('collaboration.channelId');this['_terminateService'](_0x500d67);}}['_terminateService'](_0x537b4f){if(!this['_services']['has'](_0x537b4f))throw new _0x361cf4('cloudservicescommentsadapter-disconnect-not-exist',null,{'channelId':_0x537b4f});this['_getService'](_0x537b4f)['disconnect'](),this['_services']['delete'](_0x537b4f);}async['reconnect'](){for(const _0x4e6b7b of this['_services']['keys']())await this['_connectService'](_0x4e6b7b);if(this['context']instanceof et){const _0x12f656=this['context']['config']['get']('collaboration.channelId'),_0x4f4b10=this['context']['plugins']['get'](i);_0x4f4b10['unregister'](_0x12f656);const _0x13f6b=await this['_services']['get'](_0x12f656)['getConnectedSessions']();_0x4f4b10['register'](_0x12f656,_0x13f6b);}}async['_connectService'](_0x20b9be){const {connection:_0x5a2fbf}=this['context']['plugins']['get'](n),_0x5eab52=this['context']['plugins']['get']('CommentsRepository'),_0x4b482e=this['_services']['get'](_0x20b9be),_0x3a2025=await _0x4b482e['connect'](_0x5a2fbf);await this['_fetchMissingUsersForThreads'](_0x3a2025);const _0x415c16=new Set(Array['from'](_0x5eab52['getCommentThreads']({'channelId':_0x20b9be}),_0x14c84b=>_0x14c84b['id']));for(const _0x5d3d22 of _0x3a2025)_0x5d3d22['deletedAt']||_0x415c16['delete'](_0x5d3d22['commentThreadId']);for(const _0x305d5d of _0x415c16)_0x5eab52['getCommentThread'](_0x305d5d)['remove']({'isFromAdapter':!0x0});for(const _0x2b6b3b of _0x3a2025){let _0xae0b30=_0x5eab52['getCommentThread'](_0x2b6b3b['commentThreadId']);const {commentThreadId:_0x41a317,context:_0x985087,attributes:_0x5bc264,resolvedBy:_0x5ea9d0,resolvedAt:_0x1e0810,unlinkedAt:_0x4e8737,deletedAt:_0x11a8b6}=_0x2b6b3b;if(_0x11a8b6)continue;_0xae0b30||(_0xae0b30=_0x5eab52['addCommentThread']({'channelId':_0x20b9be,'threadId':_0x41a317,'context':_0x985087,'attributes':_0x5bc264||{},'resolvedBy':_0x5ea9d0,'resolvedAt':_0x1e0810,'unlinkedAt':_0x4e8737,'isFromAdapter':!0x0}));const _0x4bb7c7=new Set(Array['from'](_0xae0b30['comments'],_0x16a87a=>_0x16a87a['id']));for(const _0x75caea of _0x2b6b3b['comments'])_0x4bb7c7['delete'](_0x75caea['commentId']);for(const _0x5ac610 of _0x4bb7c7)_0xae0b30['getComment'](_0x5ac610)['remove']({'isFromAdapter':!0x0});for(const _0xcd1d15 of _0x2b6b3b['comments']){const _0x5da01b=_0xae0b30['getComment'](_0xcd1d15['commentId']);_0x5da01b?_0x5da01b['content']!==_0xcd1d15['content']&&_0x5da01b['update']({'content':_0xcd1d15['content'],'isFromAdapter':!0x0}):_0xae0b30['addComment'](Object['assign'](st(_0xcd1d15),{'isFromAdapter':!0x0}));}}}['_getService'](_0x1472ab){if(!this['_services']['has'](_0x1472ab))throw new _0x361cf4('cloudservicescommentsadapter-service-not-exist',null,{'channelId':_0x1472ab});return this['_services']['get'](_0x1472ab);}async['_fetchMissingUsersForThreads'](_0x25c560){const _0x5a8cf3=this['context']['plugins']['get'](_0x2cdae6),{connection:_0x3cad60}=this['context']['plugins']['get'](n),_0x3abd9a=new Set();for(const {resolvedBy:_0x521d35,comments:_0x2e6453}of _0x25c560){_0x521d35&&!_0x5a8cf3['getUser'](_0x521d35)&&_0x3abd9a['add'](_0x521d35);for(const {userId:_0x4e2086}of _0x2e6453)_0x5a8cf3['getUser'](_0x4e2086)||_0x3abd9a['add'](_0x4e2086);}if(0x0===_0x3abd9a['size'])return;const _0x2df927=await ut['getMany'](_0x3cad60,Array['from'](_0x3abd9a));for(const _0x35dc16 of _0x2df927)_0x5a8cf3['getUser'](_0x35dc16['id'])||_0x5a8cf3['addUser'](_0x35dc16);}}async function nt(_0x22ab89){if('404'!==_0x22ab89['code'])throw _0x22ab89;}function ft(_0x2486a0){if((_0x41b730=_0x2486a0)['message']['startsWith']('cloud-services-internal-error:\x20Comments\x20Service\x20is\x20not\x20connected.')||_0x41b730['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x41b730['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.'))return new Promise(()=>{});var _0x41b730;throw _0x2486a0;}function st(_0x2a0dc9){return{'threadId':_0x2a0dc9['commentThreadId'],'commentId':_0x2a0dc9['commentId'],'content':_0x2a0dc9['content'],'createdAt':_0x2a0dc9['createdAt'],'authorId':_0x2a0dc9['userId'],'attributes':_0x2a0dc9['attributes']||{}};}class m extends _0xa3957f{static ['TrackChangesService']=/* #__PURE__ -- @preserve */
|
|
27
|
+
((()=>_0x48f71b)());['_bufferedRequests'];['_trackChangesService'];static get['requires'](){return[s,'TrackChangesEditing',n];}static get['pluginName'](){return'CloudServicesTrackChangesAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x3e4e76){super(_0x3e4e76);const _0x5d4da8=this['editor']['config']['get']('collaboration.channelId');this['_bufferedRequests']=new Map(),this['_trackChangesService']=new m['TrackChangesService'](_0x5d4da8);}['init'](){const _0x1c4d32=this['editor']['plugins']['get'](n),_0x5c4246=this['editor']['plugins']['get']('TrackChangesEditing');return _0x5c4246['adapter']={'getSuggestion':async _0xfa9991=>{await this['_waitForServiceReady']();const _0x1b577f=await this['_trackChangesService']['get'](_0xfa9991)['catch'](Y);return await this['_fetchMissingUsersForThreads']([_0x1b577f]),_0x1b577f;},'addSuggestion':async({id:_0x3366a2,type:_0x3b5000,data:_0x2afa11,originalSuggestionId:_0x573d7f,attributes:_0x30e4e5})=>{await this['_waitForServiceReady']();const _0x4b3b0a={'id':_0x3366a2,'type':_0x3b5000,'data':_0x2afa11,'originalSuggestionId':_0x573d7f,'attributes':_0x30e4e5},_0x3ac61d=await this['_trackChangesService']['add'](_0x3366a2,_0x3b5000,_0x2afa11,_0x573d7f,_0x30e4e5)['catch'](_0x206193=>{if(mt(_0x206193))return new Promise(_0x2fd5bb=>{this['_bufferedRequests']['set'](_0x3366a2,{'resolve':_0x2fd5bb,'suggestionData':_0x4b3b0a});});throw _0x206193;});return this['_bufferedRequests']['delete'](_0x3366a2),_0x3ac61d;},'updateSuggestion':async(_0x18d215,_0x50b952)=>{if(await this['_waitForServiceReady'](),'open'!==_0x50b952['state'])return this['_trackChangesService']['update'](_0x18d215,_0x50b952)['catch'](Y);}},this['listenTo'](this['_trackChangesService'],'suggestionUpdated',(_0x53bc9c,_0x58fb19)=>{_0x5c4246['hasSuggestion'](_0x58fb19['id'])&&(_0x5c4246['getSuggestion'](_0x58fb19['id'])['attributes']=_0x58fb19['attributes']);}),this['_trackChangesService']['connect'](_0x1c4d32['connection'])['then'](_0x2bcd9d=>(_0x1c4d32['addToReconnectionStack'](this),this['_fetchMissingUsersForThreads'](_0x2bcd9d)['then'](()=>{for(const _0x23f1de of _0x2bcd9d){_0x5c4246['addSuggestionData'](_0x23f1de)['_saved']=!0x0;}})));}async['reconnect'](){const _0x5646a3=this['editor']['plugins']['get']('TrackChangesEditing'),{connection:_0x292aba}=this['editor']['plugins']['get'](n),_0x1274fb=await this['_trackChangesService']['connect'](_0x292aba);await this['_fetchMissingUsersForThreads'](_0x1274fb);for(const {suggestionData:_0x17b6c0,resolve:_0x2b941f}of this['_bufferedRequests']['values']()){let _0x3e687c=_0x1274fb['find'](_0x2fe511=>_0x2fe511['id']===_0x17b6c0['id']);_0x3e687c||(_0x3e687c=await this['_trackChangesService']['add'](_0x17b6c0['id'],_0x17b6c0['type'],_0x17b6c0['data'],_0x17b6c0['originalSuggestionId'])),_0x2b941f(_0x3e687c);}for(const _0x7c2b29 of _0x1274fb)_0x5646a3['hasSuggestion'](_0x7c2b29['id'])||_0x5646a3['addSuggestionData'](_0x7c2b29);}async['_waitForServiceReady'](){this['_trackChangesService']['isConnected']||await new Promise(_0x55a08d=>{this['listenTo'](this['_trackChangesService'],'connected',_0x2629d1=>{_0x2629d1['off'](),_0x55a08d();});});}async['_fetchMissingUsersForThreads'](_0x37a296){const _0x47f3ff=this['editor']['plugins']['get'](_0x2cdae6),{connection:_0x991653}=this['editor']['plugins']['get'](n),_0x41cd82=new Set();for(const {authorId:_0x26763b}of _0x37a296)_0x47f3ff['getUser'](_0x26763b)||_0x41cd82['add'](_0x26763b);if(0x0===_0x41cd82['size'])return;const _0x33ae1e=await ut['getMany'](_0x991653,Array['from'](_0x41cd82));for(const _0x38d20f of _0x33ae1e)_0x47f3ff['getUser'](_0x38d20f['id'])||_0x47f3ff['addUser'](_0x38d20f);}}function Y(_0x1a372e){if(mt(_0x1a372e))return new Promise(()=>{});throw _0x1a372e;}function mt(_0x5bfe39){return _0x5bfe39['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x5bfe39['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}class g extends _0xa3957f{static get['requires'](){return['Comments',s,a,n];}static get['pluginName'](){return'RealTimeCollaborativeComments';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['init'](){const _0x96b059=this['editor']['plugins']['get'](n),_0x2d6afd=this['editor']['plugins']['get']('CommentsEditing'),_0x2a091b=this['editor']['plugins']['get'](s);return this['editor']['data']['once']('ready',()=>{this['listenTo'](_0x96b059,'change:state',(_0x5df31c,_0x4f3d59,_0x19939d)=>{_0x2d6afd['isThreadsLoadingPaused']='connected'!==_0x19939d;});}),this['listenTo'](_0x96b059,'change:state',(_0x4afe6a,_0x304f47,_0xff2637)=>{this['editor']['plugins']['get']('CommentsRepository')['switchReadOnly']('connected'!==_0xff2637);}),_0x2a091b['_setUpService'](this['editor']['config']['get']('collaboration.channelId'));}['destroy'](){this['editor']['plugins']['get'](s)['_terminateService'](this['editor']['config']['get']('collaboration.channelId')),super['destroy']();}}class pt extends _0xa3957f{static get['requires'](){return[g,m,'TrackChanges'];}static get['pluginName'](){return'RealTimeCollaborativeTrackChanges';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}class c extends _0xa3957f{static ['RevisionHistoryService']=/* #__PURE__ -- @preserve */
|
|
28
|
+
((()=>it)());['_lastRequestId'];['_revisionTracker'];['_revisionHistoryService'];['_oldOffset'];static get['requires'](){return[n,l,'RevisionHistory',i,_0x2cdae6];}static get['pluginName'](){return'CloudServicesRevisionHistoryAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x437b79){super(_0x437b79);const _0x48050d=this['editor']['config']['get']('collaboration.channelId');this['_lastRequestId']=null,this['_revisionTracker']=this['editor']['plugins']['get']('RevisionTracker'),this['_revisionHistoryService']=new c['RevisionHistoryService'](_0x48050d);}async['init'](){const _0x333887=this['editor']['plugins']['get'](l),_0x2536ec=_0x333887['serverHistory'],_0x6f63f7=this['editor']['plugins']['get'](n);this['_revisionTracker']['setSource']({'history':_0x2536ec,'getLatestVersion':()=>this['_getLatestVersion'](),'getCurrentRevisionId':()=>_0x333887['sessionId']});const _0x514a8c=this['editor']['config']['get']('cloudServices.bundleVersion')||ht,_0x3cd72b=await tt['isBundleUploaded'](_0x6f63f7['connection'],_0x514a8c);this['editor']['plugins']['get']('RevisionHistory')['adapter']={'getRevision':async({revisionId:_0x3c0ea8})=>(await this['_waitForServiceReady'](),await this['_revisionHistoryService']['getRevision'](_0x3c0ea8)),'updateRevisions':async _0x30251f=>{await this['_waitForServiceReady']();const _0xdda884=this['_revisionTracker']['currentRevision'];if(_0x3cd72b&&0x1===_0x30251f['length']&&_0x30251f[0x0]['id']===_0xdda884['id'])return _0x30251f;for(const _0x5803a5 of _0x30251f)_0x5803a5['id']===_0xdda884['id']&&(_0x5803a5['isEmptyCurrent']=_0x5803a5['fromVersion']===_0x5803a5['toVersion']);return this['_revisionHistoryService']['updateRevisions'](_0x30251f,this['_lastRequestId'])['then'](_0x54341c=>(this['_lastRequestId']=_0x54341c,_0x30251f))['catch'](_0x38bd9a=>{if(Z(_0x38bd9a)||'400'===_0x38bd9a['code']&&void 0x0!==_0x38bd9a['data']['wrongRequestId']){for(const _0x40b9fe of _0x30251f){!this['_revisionTracker']['repository']['getRevision'](_0x40b9fe['id'])||this['_revisionTracker']['_bufferUpdate'](_0x40b9fe['id'],_0x40b9fe,!0x1);}if(Z(_0x38bd9a))throw _0x38bd9a;return _0x30251f;}throw _0x38bd9a;});}},this['listenTo'](this['_revisionHistoryService'],'revisionsUpdated',(_0x916204,{revisionsData:_0x125ac2,requestId:_0x42480d})=>{Math['max'](..._0x125ac2['map'](_0x2b1d07=>_0x2b1d07['toVersion']))>this['_getLatestVersionFromServerOperations']()-0x1?this['_getLatestVersion']()['then'](()=>{this['_handleRevisionsUpdate'](_0x125ac2,_0x42480d);}):this['_handleRevisionsUpdate'](_0x125ac2,_0x42480d);});const {revisions:_0x1fb90a,requestId:_0x3794d9}=await this['_revisionHistoryService']['connect'](_0x6f63f7['connection']);_0x6f63f7['addToReconnectionStack'](this),this['_lastRequestId']=_0x3794d9,await this['_fetchMissingUsers'](_0x1fb90a);for(const _0x5f10fb of _0x1fb90a)this['_revisionTracker']['addRevisionData'](_0x5f10fb);this['listenTo'](_0x333887,'change:_isConnected',(_0x4d2212,_0x3bf9e5,_0x3cf81e)=>{_0x3cf81e&&(this['_oldOffset']=_0x333887['_offset'],_0x4d2212['off']());}),this['_revisionTracker']['bind']('isEnabled')['to'](_0x6f63f7,'state',_0x25f906=>_0x25f906===_0x414fdf['CONNECTED']);}async['reconnect'](){const _0x2e2b14=this['editor']['plugins']['get'](n),_0xe23747=this['editor']['plugins']['get'](l),_0x5051d4=async()=>{const _0xe163e8=this['_revisionTracker']['currentRevision'],_0x462b73=_0xe163e8['id'],_0x511ccc=_0x462b73!==_0xe23747['sessionId'];if(_0x511ccc){const _0x1fe659=_0xe23747['_offset']-this['_oldOffset'],_0x327b40=this['_getLatestVersionFromServerOperations']();this['_revisionTracker']['_revisionDataBuilder']['reInit']();if(_0xe163e8['toVersion']+_0x1fe659!==_0x327b40){const _0x3e2e4f=_0xe163e8['fromVersion']+_0x1fe659,_0x501c54=this['editor']['plugins']['get'](_0x2cdae6),_0x5eaca7=this['_revisionTracker']['buildRevisionData']({'revision':_0xe163e8,'from':_0x3e2e4f,'to':_0x327b40});_0x5eaca7['id']=_0xe163e8['id'];const _0x4c75bb=_0x5eaca7['authorsIds']['map'](_0x1aa08f=>_0x501c54['getUser'](_0x1aa08f));_0xe163e8['_update']({..._0x5eaca7,'authors':_0x4c75bb},!0x0),this['_revisionTracker']['_bufferUpdate'](_0xe163e8['id'],_0x5eaca7,!0x0);}this['_revisionTracker']['_startingVersion']=_0x327b40,(_0xe163e8['toVersion']===_0xe163e8['fromVersion']&&!this['_revisionTracker']['_bufferedUpdates']['has'](_0x462b73)&&this['_revisionTracker']['repository']['_revisions']['remove'](_0x462b73),this['_revisionTracker']['_createCurrentRevision'](_0x327b40));}const {revisions:_0x3afe79,requestId:_0x5b78c2}=await this['_revisionHistoryService']['reconnect'](_0x2e2b14['connection'],this['_lastRequestId']);_0x511ccc&&_0x3afe79['length']>0x0?_0xe23747['_handleReconnectionError']():(await this['_fetchMissingUsers'](_0x3afe79),this['_handleRevisionsUpdate'](_0x3afe79,_0x5b78c2),this['_revisionTracker']['sendBufferedUpdates']());};return _0xe23747['_isConnected']?_0x5051d4():new Promise((_0x415282,_0x2099c4)=>{_0xe23747['once']('change:_isConnected',()=>{_0x5051d4()['then'](_0x415282)['catch'](_0x2099c4);});});}['destroy'](){super['destroy']();}async['_waitForServiceReady'](){this['_revisionHistoryService']['isConnected']||await new Promise(_0x4dcc1d=>{this['listenTo'](this['_revisionHistoryService'],'connected',_0x40082f=>{_0x40082f['off'](),_0x4dcc1d();});});}['_getLatestVersionFromServerOperations'](){const _0x25155b=this['editor']['plugins']['get'](l)['serverHistory']['getOperations']()['reverse']();for(const _0x2149e9 of _0x25155b)if('marker'!==_0x2149e9['type']||_0x2149e9['affectsData'])return _0x2149e9['baseVersion']+0x1;}['_getLatestVersion'](){const _0x42a81a=this['editor']['plugins']['get'](l);return new Promise(_0x253f14=>{_0x42a81a['_isPendingUpdate']?_0x42a81a['once']('change:_isPendingUpdate',()=>{_0x253f14(this['_getLatestVersionFromServerOperations']());}):_0x253f14(this['_getLatestVersionFromServerOperations']());});}['_handleRevisionsUpdate'](_0x2546bc,_0x179ec8){const _0x250e57=this['_revisionTracker']['repository'];this['_lastRequestId']=_0x179ec8;for(const _0x568774 of _0x2546bc){const _0xc9220d=_0x250e57['getRevision'](_0x568774['id']);if(_0xc9220d){if((_0x568774['fromVersion']||_0x568774['toVersion'])&&(_0x568774['diffData']=null),_0xc9220d===this['_revisionTracker']['currentRevision']){const _0x119e07=Math['max'](_0xc9220d['toVersion'],_0x568774['toVersion']),_0x11b41c=Math['max'](_0xc9220d['fromVersion'],_0x568774['fromVersion']);let _0x19e3dd;_0xc9220d['toVersion']===_0x568774['toVersion']&&_0xc9220d['fromVersion']===_0x568774['fromVersion']?(_0x19e3dd=!0x0,this['_preventResendingRevisionData'](_0x568774)):_0x568774['toVersion']===_0x119e07&&_0x568774['fromVersion']===_0x11b41c?_0x19e3dd=!0x1:(_0xc9220d['toVersion']===_0x119e07&&_0xc9220d['fromVersion']===_0x11b41c||this['_fixRevision']({'revision':_0xc9220d,'from':_0x11b41c,'to':_0x119e07}),_0x19e3dd=!0x0),_0x19e3dd&&(delete _0x568774['fromVersion'],delete _0x568774['toVersion'],delete _0x568774['diffData'],delete _0x568774['createdAt'],delete _0x568774['authorsIds']);}this['_revisionTracker']['setRevisionData'](_0x568774),this['_preventResendingRevisionData'](_0x568774);}else this['_revisionTracker']['addRevisionData'](_0x568774);}const _0x201f08=_0x250e57['getRevisions']();_0x201f08['reverse']();for(let _0xb203e9=0x0;_0xb203e9<_0x201f08['length']-0x1;_0xb203e9++){const _0x29e20b=_0x201f08[_0xb203e9],_0x241cd8=_0x201f08[_0xb203e9+0x1];if(_0x29e20b['fromVersion']<_0x241cd8['toVersion']){const _0x2fddf0=_0x241cd8['toVersion'],_0x9c8fc4=Math['max'](_0x2fddf0,_0x29e20b['toVersion']);this['_fixRevision']({'revision':_0x29e20b,'from':_0x2fddf0,'to':_0x9c8fc4});}}}['_fixRevision']({revision:_0x4c6d3c,from:_0x3dd6dc,to:_0x138086}={}){const _0x3d0b32=this['editor']['plugins']['get'](_0x2cdae6),_0x3a05c8=this['_revisionTracker']['buildRevisionData']({'revision':_0x4c6d3c,'from':_0x3dd6dc,'to':_0x138086});_0x3a05c8['authors']=_0x3a05c8['authorsIds']['map'](_0x4d7f7f=>_0x3d0b32['getUser'](_0x4d7f7f)),_0x4c6d3c['_update'](_0x3a05c8);}['_preventResendingRevisionData'](_0x3b9d2e){const _0x2c1c68={};_0x2c1c68['id']=_0x3b9d2e['id'];for(const _0x1c8ddc of Object['keys'](_0x3b9d2e))'id'!==_0x1c8ddc&&(_0x2c1c68[_0x1c8ddc]=void 0x0);this['_revisionTracker']['_bufferUpdate'](_0x2c1c68['id'],_0x2c1c68,!0x0);}async['_fetchMissingUsers'](_0xee1b2d){const _0x362eb8=this['editor']['plugins']['get'](_0x2cdae6),{connection:_0x268ea3}=this['editor']['plugins']['get'](n),_0x44bdcb=new Set();for(const _0x57af6e of _0xee1b2d){for(const _0x53d6e9 of _0x57af6e['authorsIds'])_0x307871(_0x53d6e9);_0x57af6e['creatorId']&&_0x307871(_0x57af6e['creatorId']);}if(0x0===_0x44bdcb['size'])return;const _0x234c49=await ut['getMany'](_0x268ea3,Array['from'](_0x44bdcb));for(const _0x48cdff of _0x234c49)_0x362eb8['getUser'](_0x48cdff['id'])||_0x362eb8['addUser'](_0x48cdff);function _0x307871(_0x3a706d){_0x362eb8['getUser'](_0x3a706d)||_0x44bdcb['add'](_0x3a706d);}}}function Z(_0x2d85c8){return _0x2d85c8['message']['startsWith']('cloud-services-internal-error:\x20Revision\x20History\x20Service\x20is\x20not\x20connected.')||_0x2d85c8['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x2d85c8['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}class gt extends _0xa3957f{static get['requires'](){return['RevisionHistory',c,a];}static get['pluginName'](){return'RealTimeCollaborativeRevisionHistory';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}class b extends _0x40928d{['_collapseAt'];constructor(_0x313e59,_0xc1d179=0x6){super(_0x313e59);const _0x4d5a2b=this['bindTemplate'];this['set']('isHidden',!0x0),this['set']('usersCount',0x0),this['_collapseAt']=_0xc1d179,this['bind']('isHidden')['to'](this,'usersCount',_0x4fb043=>_0x4fb043<_0xc1d179),this['setTemplate']({'tag':'div','attributes':{'class':['ck','ck-presence-list__list-item',_0x4d5a2b['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':_0x4d5a2b['to']('usersCount',_0x5f46c7=>'+'+(_0x5f46c7-this['_collapseAt']+0x2)['toString']())}]}]}]});}}class is extends _0x40928d{['items'];['keystrokes'];constructor(_0x28d0c9){super(_0x28d0c9);const _0x4a599a=this['bindTemplate'];this['items']=this['createCollection'](),this['keystrokes']=new _0x403085(),this['set']({'hasPopup':!0x1,'isExpanded':!0x1}),this['setTemplate']({'tag':'div','attributes':{'aria-haspopup':_0x4a599a['if']('hasPopup'),'aria-expanded':_0x4a599a['to']('isExpanded',_0x1be7f6=>this['hasPopup']&&String(_0x1be7f6)),'aria-label':_0x4a599a['to']('hasPopup',_0x4ceed9=>E(_0x28d0c9,_0x4ceed9?'Collapsed\x20connected\x20users\x20list\x20(press\x20ENTER\x20to\x20open\x20it)':'Connected\x20users\x20list')),'role':'list','tabindex':_0x4a599a['to']('hasPopup',_0x3b3d82=>!!_0x3b3d82&&0x0),'class':['ck','ck-presence-list__list']},'children':this['items'],'on':{'mouseenter':_0x4a599a['to'](()=>this['fire']('presencelist:show')),'mouseleave':_0x4a599a['to'](_0x56065f=>{const _0x4dec34=_0x56065f,_0x59dc2b=document['querySelector']('.ck-presence-list__dropdown-list'),_0x1d5007=document['querySelector']('.ck-balloon-panel_with-arrow');_0x59dc2b?.['contains'](_0x4dec34['relatedTarget'])||_0x1d5007?.['contains'](_0x4dec34['relatedTarget'])||this['fire']('presencelist:hide');})}}),this['on']('change:hasPopup',(_0x237a7f,_0x56fcbb,_0x4dd65e)=>{this['element']&&(_0x4dd65e?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 v extends _0x40928d{['counterView'];['inlineListView'];constructor(_0x178aaa,_0x3269bf=0x6){super(_0x178aaa);const _0x3dedbc=this['bindTemplate'];this['set']('isCollapsed',!0x0),this['counterView']=new b(this['locale'],_0x3269bf),this['inlineListView']=new is(_0x178aaa),this['inlineListView']['bind']('hasPopup')['to'](this,'isCollapsed'),this['listenTo'](this['inlineListView']['items'],'change',()=>{for(const _0xe2a881 of this['inlineListView']['items'])_0xe2a881['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',_0x3dedbc['if']('isCollapsed','ck-presence-list--collapsed')]},'children':[this['inlineListView']]});}}class L extends _0x40928d{['listWrapperView'];constructor(_0x30546b,_0x15c113){super(_0x30546b);const _0x3c192a=this['bindTemplate'];this['listWrapperView']=new wt(_0x30546b,_0x15c113),this['setTemplate']({'tag':'div','attributes':{'tabindex':-0x1,'role':'application','class':['ck','ck-presence-list__dropdown-list'],'aria-label':E(_0x30546b,'Connected\x20users\x20list\x20dropdown\x20menu')},'children':[this['listWrapperView']],'on':{'mouseleave':_0x3c192a['to'](_0x3fdf0c=>{const _0x10cc90=_0x3fdf0c,_0x421f99=document['querySelector']('.ck-presence-list__list'),_0x40854d=document['querySelector']('.ck-balloon-panel_with-arrow');_0x421f99?.['contains'](_0x10cc90['relatedTarget'])||_0x40854d?.['contains'](_0x10cc90['relatedTarget'])||this['fire']('presencelist:hide');})}});}}class wt extends _0xa396c4{constructor(_0x4caf92,_0x5be498){super(_0x4caf92);const _0x1b5bde=this['bindTemplate'];this['set']('_isScrollable',!0x1),this['setTemplate']({'tag':_0x5be498?'div':'ul','attributes':{'class':['ck','ck-reset','ck-list','ck-presence-list__dropdown-list-wrapper',_0x1b5bde['if']('_isScrollable','ck-presence-list__dropdown-list-wrapper_scrollable')],'role':_0x1b5bde['to']('role'),'aria-label':_0x1b5bde['to']('ariaLabel'),'aria-labelledby':_0x1b5bde['to']('ariaLabelledBy')},'children':this['items']}),this['listenTo'](_0x34f2de['window'],'resize',()=>this['checkIfScrollable']()),this['items']['on']('change',()=>this['checkIfScrollable']());}['render'](){super['render'](),this['checkIfScrollable']();}['checkIfScrollable'](){const _0x2947e0=this['element'];_0x2947e0&&(this['_isScrollable']=Math['max'](_0x2947e0['scrollHeight'],_0x2947e0['clientHeight'])>0.8*window['innerHeight']);}}class j extends rt{['userView'];constructor(_0x1baca3,_0x24e2b4,_0x3ff23a){super(_0x1baca3);const _0x4afcba=this['bindTemplate'];this['userView']=new ct(_0x1baca3,_0x24e2b4);const _0x5c8ba5={'tag':'li','attributes':{'class':['ck','ck-presence-list__dropdown-list-item'],'tabindex':-0x1,'role':'presentation','aria-label':_0x24e2b4['name']},'children':[this['userView'],{'tag':'span','attributes':{'class':['ck','ck-user__full-name']},'children':[{'text':_0x24e2b4['name']}]},{'tag':'span','attributes':{'class':['ck','ck-presence-list__marker',_0x24e2b4['color']['getBackgroundColorClass']()],'aria-hidden':'true'}}]};_0x3ff23a&&(_0x5c8ba5['tag']='button',_0x5c8ba5['on']={'click':_0x4afcba['to'](()=>this['fire']('execute'))}),this['setTemplate'](_0x5c8ba5);}['focus'](){this['element']['focus']();}}class A extends _0x40928d{['userView'];['markerView'];constructor(_0x47a063,_0x18a7ad,_0x4a8c9d){super(_0x47a063);const _0x44f9c8=this['bindTemplate'];this['set']('isFocusable',!0x1),this['set']('hasTooltip',!0x0),this['set']('tooltipPosition',''),this['userView']=new ct(_0x47a063,_0x18a7ad),this['markerView']=new lt(_0x47a063,_0x18a7ad);const _0x2b7437=new at(_0x47a063);_0x2b7437['template']['tag']='span',_0x2b7437['text']=_0x18a7ad['name'];const _0x37f1d8={'tag':'div','attributes':{'class':['ck','ck-presence-list__list-item'],'role':'listitem','tabindex':_0x44f9c8['to']('isFocusable',_0x5d571=>!!_0x5d571&&0x0),'aria-labelledby':_0x2b7437['id'],'data-cke-tooltip-text':this['userView']['name'],'data-cke-tooltip-position':_0x44f9c8['to']('tooltipPosition'),'data-cke-tooltip-disabled':_0x44f9c8['to']('hasTooltip',_0x1f0e60=>!_0x1f0e60),'data-cke-tooltip-class':'ck-presence-list__list-item__tooltip'},'children':[this['userView'],this['markerView'],_0x2b7437]};_0x4a8c9d&&(_0x37f1d8['tag']='button',_0x37f1d8['on']={'click':_0x44f9c8['to'](()=>this['fire']('execute'))}),this['setTemplate'](_0x37f1d8);}}class lt extends _0x40928d{constructor(_0x5359e5,_0x2a783a){super(_0x5359e5),this['setTemplate']({'tag':'span','attributes':{'class':['ck','ck-presence-list__marker',_0x2a783a['color']['getBackgroundColorClass']()],'aria-hidden':'true'}});}}const x={'collapseAt':0x6,'displayMe':!0x0};class r extends _0x2d60c1{['currentDisplayedUsers'];['balloonPanelView'];['view'];['presenceDropdownView'];['_bodyCollection']=null;static get['pluginName'](){return'PresenceListUI';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x39d2be){super(_0x39d2be),this['context']['config']['define']('presenceList',x);const _0x5b12e2=_0x39d2be['config']['get']('presenceList.collapseAt');if('number'!=typeof _0x5b12e2)throw new _0x361cf4('presencelist-collapseat-invalid-format',this);if(_0x5b12e2<0x1)throw new _0x361cf4('presencelist-collapseat-invalid-format',this);this['_allConnectedUsers']=this['context']['plugins']['get'](i)['allConnectedUsers'],this['set']('usersCount',0x0),this['currentDisplayedUsers']=new _0x5c1f9a(),this['balloonPanelView']=new _0x584c05(),this['balloonPanelView']['class']='ck\x20ck-presence-list__balloon',this['view']=this['_createView'](),this['presenceDropdownView']=void 0x0;}static get['requires'](){return[i];}['init'](){for(const _0xf82f7a of this['_allConnectedUsers'])this['_handleUserAdd'](_0xf82f7a);this['listenTo'](this['_allConnectedUsers'],'add',(_0x53af01,_0x30741e)=>{this['_handleUserAdd'](_0x30741e);}),this['listenTo'](this['_allConnectedUsers'],'remove',(_0x2cf989,_0x279b5d)=>{this['_handleUserRemove'](_0x279b5d);});}['_createView'](){const _0x1248b4=this['context'],_0x480cd9=new v(this['context']['locale'],this['context']['config']['get']('presenceList.collapseAt')),_0xe62264=this['balloonPanelView'];if(!_0x873502(_0x1248b4['config']['get']('presenceList.container')))throw new _0x361cf4('presencelist-missing-container',this);return _0x480cd9['counterView']['bind']('usersCount')['to'](this),_0x480cd9['bind']('isCollapsed')['to'](this,'usersCount',_0x10b1b8=>{const {collapseAt:_0x50b4d8}=_0x1248b4['config']['get']('presenceList'),_0x21e3d2=_0x10b1b8>=_0x50b4d8;if(_0x21e3d2&&!_0x480cd9['inlineListView']['items']['find'](_0x3eb555=>_0x3eb555 instanceof b)){const _0x2e684e=this['context']['config']['get']('presenceList.collapseAt')-0x1;this['currentDisplayedUsers']['length']==_0x2e684e&&this['currentDisplayedUsers']['length']>0x1&&this['currentDisplayedUsers']['remove'](this['currentDisplayedUsers']['length']-0x1),_0x480cd9['inlineListView']['items']['add'](_0x480cd9['counterView']);}return _0x21e3d2||this['hideDropdown'](),_0x21e3d2;}),_0x480cd9['inlineListView']['items']['bindTo'](this['currentDisplayedUsers'])['using'](_0x2721c9=>{const _0x2f8a7a=_0x1248b4['config']['get']('presenceList'),_0x567a90=new A(_0x1248b4['locale'],_0x2721c9,!!_0x2f8a7a['onClick']);return _0x567a90['bind']('hasTooltip')['to'](_0x480cd9,'isCollapsed',_0xc87040=>!_0xc87040),_0x567a90['bind']('isFocusable')['to'](_0x480cd9,'isCollapsed',_0x116560=>!_0x116560),_0x2f8a7a['onClick']&&this['listenTo'](_0x567a90,'execute',()=>{this['view']['isCollapsed']||_0x2f8a7a['onClick'](_0x2721c9,_0x567a90['element']);}),_0x567a90;}),this['listenTo'](_0x480cd9['inlineListView'],'presencelist:show',()=>{this['view']['isCollapsed']&&this['showDropdown']();}),this['listenTo'](_0x480cd9['inlineListView'],'presencelist:hide',()=>{this['presenceDropdownView']&&this['hideDropdown']();}),_0x480cd9['inlineListView']['keystrokes']['set']('Enter',(_0x497dfe,_0x4c6a29)=>{this['view']['isCollapsed']&&(this['showDropdown'](),_0x4c6a29());}),_0x480cd9['render'](),_0xe62264['render'](),_0x4ad730({'emitter':_0x480cd9,'activator':()=>_0xe62264['isVisible'],'contextElements':[_0xe62264['element'],_0x480cd9['inlineListView']['element']],'callback':()=>this['hideDropdown']()}),_0x1248b4['config']['get']('presenceList.container')['appendChild'](_0x480cd9['element']),this['_bodyCollection']=new _0x2d8c37(this['context']['locale']),this['_bodyCollection']['attachToDom'](),this['_bodyCollection']['add'](this['balloonPanelView']),_0x480cd9;}['_handleUserAdd'](_0x15ce7a){if(!this['context']['config']['get']('presenceList.displayMe')&&_0x15ce7a['isMe'])return;const _0x2ef01f=this['context']['config']['get']('presenceList.collapseAt')-0x1;for(this['usersCount']++;this['currentDisplayedUsers']['length']>=_0x2ef01f-(this['view']['isCollapsed']?0x1:0x0)&&this['currentDisplayedUsers']['length']>0x1;)this['currentDisplayedUsers']['remove'](0x1);const _0x5423c7=_0x15ce7a['isMe']?0x0:this['currentDisplayedUsers']['length'];this['currentDisplayedUsers']['add'](_0x15ce7a,_0x5423c7);}['_handleUserRemove'](_0x521fb5){this['usersCount']--;const {collapseAt:_0x10e181}=this['context']['config']['get']('presenceList'),_0x5b0f6d=this['usersCount']>=_0x10e181;if(this['currentDisplayedUsers']['get'](_0x521fb5['id']))this['currentDisplayedUsers']['remove'](_0x521fb5['id']);else{if(_0x5b0f6d&&this['currentDisplayedUsers']['length']+0x1===_0x10e181-0x1)return;}if(this['currentDisplayedUsers']['length']+(_0x5b0f6d?0x1:0x0)<this['usersCount']){for(const _0x5a8fd4 of Array['from'](this['_allConnectedUsers'])['reverse']())if(!this['currentDisplayedUsers']['get'](_0x5a8fd4['id'])&&(this['currentDisplayedUsers']['add'](_0x5a8fd4,Math['min'](this['currentDisplayedUsers']['length']-(_0x5b0f6d?0x1:0x0),0x1)),this['currentDisplayedUsers']['length']+(_0x5b0f6d?0x1:0x0)===_0x10e181-0x1))return;}}['showDropdown'](){if(this['presenceDropdownView'])return;const _0x2ea115=this['context']['config']['get']('presenceList');this['presenceDropdownView']=new L(this['context']['locale'],!!_0x2ea115['onClick']),this['view']['inlineListView']['isExpanded']=!0x0,this['listenTo'](this['presenceDropdownView'],'presencelist:hide',()=>{this['presenceDropdownView']&&this['hideDropdown']();});const {listWrapperView:_0x598573}=this['presenceDropdownView'];_0x598573['items']['bindTo'](this['_allConnectedUsers'])['using'](_0x127b75=>{if(!_0x2ea115['displayMe']&&_0x127b75['isMe'])return null;const _0x39fb5b=new j(this['context']['locale'],_0x127b75,!!_0x2ea115['onClick']);return _0x2ea115['onClick']&&this['listenTo'](_0x39fb5b,'execute',()=>{_0x2ea115['onClick'](_0x127b75,_0x39fb5b['element']);}),_0x39fb5b;}),this['balloonPanelView']['content']['add'](this['presenceDropdownView']),this['balloonPanelView']['pin']({'target':this['view']['inlineListView']['element']}),_0x598573['focus'](),_0x598573['checkIfScrollable']();const _0xa84b8f=(_0x3b75bf,_0x70f2e9)=>{this['hideDropdown'](),this['view']['inlineListView']['focus'](),_0x70f2e9();};_0x598573['keystrokes']['set']('Esc',_0xa84b8f),_0x598573['keystrokes']['set']('Shift+Tab',_0xa84b8f),_0x598573['keystrokes']['set']('Tab',(_0x3442b1,_0x38339d)=>{!function(_0x27bc17){const _0x310111=['a','button','input','select','textarea','[tabindex]','[contenteditable]']['map'](_0x136864=>_0x136864+':not([disabled]):not([tabindex=\x22-1\x22])')['join'](','),_0x5171ca=[...document['body']['querySelectorAll'](_0x310111)]['filter'](_0x7c76fe=>_0x7c76fe===document['activeElement']||_0x7c76fe['offsetWidth']+_0x7c76fe['offsetHeight']>0x0)['sort']((_0x58966c,_0x303c65)=>(_0x58966c['tabIndex']||0x0)-(_0x303c65['tabIndex']||0x0)),_0x135703=_0x5171ca['indexOf'](_0x27bc17),_0x2adbee=_0x5171ca[(_0x135703+0x1)%_0x5171ca['length']];_0x2adbee&&_0x2adbee['focus']();}(this['view']['element']),this['hideDropdown'](),_0x38339d();}),_0x598573['focusTracker']['add'](this['view']['element']),_0x598573['focusTracker']['on']('change:isFocused',(_0x4b13f6,_0x51c390,_0x1494b5)=>{_0x1494b5||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 vt extends _0x2d60c1{static get['requires'](){return[i,r];}static get['pluginName'](){return'PresenceList';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}export{s as CloudServicesCommentsAdapter,c as CloudServicesRevisionHistoryAdapter,m as CloudServicesTrackChangesAdapter,vt as PresenceList,r as PresenceListUI,l as RealTimeCollaborationClient,g as RealTimeCollaborativeComments,a as RealTimeCollaborativeEditing,gt as RealTimeCollaborativeRevisionHistory,pt as RealTimeCollaborativeTrackChanges,i as Sessions,n 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':_0xc5ca31=>0x1!=_0xc5ca31}};
|