@ckeditor/ckeditor5-real-time-collaboration 48.1.0-alpha.0 → 48.1.0-alpha.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +6 -6
- package/dist/translations/af.js +1 -1
- package/dist/translations/af.umd.js +1 -1
- package/dist/translations/ar.js +1 -1
- package/dist/translations/ar.umd.js +1 -1
- package/dist/translations/ast.js +1 -1
- package/dist/translations/ast.umd.js +1 -1
- package/dist/translations/az.js +1 -1
- package/dist/translations/az.umd.js +1 -1
- package/dist/translations/be.js +1 -1
- package/dist/translations/be.umd.js +1 -1
- package/dist/translations/bg.js +1 -1
- package/dist/translations/bg.umd.js +1 -1
- package/dist/translations/bn.js +1 -1
- package/dist/translations/bn.umd.js +1 -1
- package/dist/translations/bs.js +1 -1
- package/dist/translations/bs.umd.js +1 -1
- package/dist/translations/ca.js +1 -1
- package/dist/translations/ca.umd.js +1 -1
- package/dist/translations/cs.js +1 -1
- package/dist/translations/cs.umd.js +1 -1
- package/dist/translations/da.js +1 -1
- package/dist/translations/da.umd.js +1 -1
- package/dist/translations/de-ch.js +1 -1
- package/dist/translations/de-ch.umd.js +1 -1
- package/dist/translations/de.js +1 -1
- package/dist/translations/de.umd.js +1 -1
- package/dist/translations/el.js +1 -1
- package/dist/translations/el.umd.js +1 -1
- package/dist/translations/en-au.js +1 -1
- package/dist/translations/en-au.umd.js +1 -1
- package/dist/translations/en-gb.js +1 -1
- package/dist/translations/en-gb.umd.js +1 -1
- package/dist/translations/en.js +1 -1
- package/dist/translations/en.umd.js +1 -1
- package/dist/translations/eo.js +1 -1
- package/dist/translations/eo.umd.js +1 -1
- package/dist/translations/es-co.js +1 -1
- package/dist/translations/es-co.umd.js +1 -1
- package/dist/translations/es.js +1 -1
- package/dist/translations/es.umd.js +1 -1
- package/dist/translations/et.js +1 -1
- package/dist/translations/et.umd.js +1 -1
- package/dist/translations/eu.js +1 -1
- package/dist/translations/eu.umd.js +1 -1
- package/dist/translations/fa.js +1 -1
- package/dist/translations/fa.umd.js +1 -1
- package/dist/translations/fi.js +1 -1
- package/dist/translations/fi.umd.js +1 -1
- package/dist/translations/fr.js +1 -1
- package/dist/translations/fr.umd.js +1 -1
- package/dist/translations/gl.js +1 -1
- package/dist/translations/gl.umd.js +1 -1
- package/dist/translations/gu.js +1 -1
- package/dist/translations/gu.umd.js +1 -1
- package/dist/translations/he.js +1 -1
- package/dist/translations/he.umd.js +1 -1
- package/dist/translations/hi.js +1 -1
- package/dist/translations/hi.umd.js +1 -1
- package/dist/translations/hr.js +1 -1
- package/dist/translations/hr.umd.js +1 -1
- package/dist/translations/hu.js +1 -1
- package/dist/translations/hu.umd.js +1 -1
- package/dist/translations/hy.js +1 -1
- package/dist/translations/hy.umd.js +1 -1
- package/dist/translations/id.js +1 -1
- package/dist/translations/id.umd.js +1 -1
- package/dist/translations/it.js +1 -1
- package/dist/translations/it.umd.js +1 -1
- package/dist/translations/ja.js +1 -1
- package/dist/translations/ja.umd.js +1 -1
- package/dist/translations/jv.js +1 -1
- package/dist/translations/jv.umd.js +1 -1
- package/dist/translations/kk.js +1 -1
- package/dist/translations/kk.umd.js +1 -1
- package/dist/translations/km.js +1 -1
- package/dist/translations/km.umd.js +1 -1
- package/dist/translations/kn.js +1 -1
- package/dist/translations/kn.umd.js +1 -1
- package/dist/translations/ko.js +1 -1
- package/dist/translations/ko.umd.js +1 -1
- package/dist/translations/ku.js +1 -1
- package/dist/translations/ku.umd.js +1 -1
- package/dist/translations/lt.js +1 -1
- package/dist/translations/lt.umd.js +1 -1
- package/dist/translations/lv.js +1 -1
- package/dist/translations/lv.umd.js +1 -1
- package/dist/translations/ms.js +1 -1
- package/dist/translations/ms.umd.js +1 -1
- package/dist/translations/nb.js +1 -1
- package/dist/translations/nb.umd.js +1 -1
- package/dist/translations/ne.js +1 -1
- package/dist/translations/ne.umd.js +1 -1
- package/dist/translations/nl.js +1 -1
- package/dist/translations/nl.umd.js +1 -1
- package/dist/translations/no.js +1 -1
- package/dist/translations/no.umd.js +1 -1
- package/dist/translations/oc.js +1 -1
- package/dist/translations/oc.umd.js +1 -1
- package/dist/translations/pl.js +1 -1
- package/dist/translations/pl.umd.js +1 -1
- package/dist/translations/pt-br.js +1 -1
- package/dist/translations/pt-br.umd.js +1 -1
- package/dist/translations/pt.js +1 -1
- package/dist/translations/pt.umd.js +1 -1
- package/dist/translations/ro.js +1 -1
- package/dist/translations/ro.umd.js +1 -1
- package/dist/translations/ru.js +1 -1
- package/dist/translations/ru.umd.js +1 -1
- package/dist/translations/si.js +1 -1
- package/dist/translations/si.umd.js +1 -1
- package/dist/translations/sk.js +1 -1
- package/dist/translations/sk.umd.js +1 -1
- package/dist/translations/sl.js +1 -1
- package/dist/translations/sl.umd.js +1 -1
- package/dist/translations/sq.js +1 -1
- package/dist/translations/sq.umd.js +1 -1
- package/dist/translations/sr-latn.js +1 -1
- package/dist/translations/sr-latn.umd.js +1 -1
- package/dist/translations/sr.js +1 -1
- package/dist/translations/sr.umd.js +1 -1
- package/dist/translations/sv.js +1 -1
- package/dist/translations/sv.umd.js +1 -1
- package/dist/translations/th.js +1 -1
- package/dist/translations/th.umd.js +1 -1
- package/dist/translations/ti.js +1 -1
- package/dist/translations/ti.umd.js +1 -1
- package/dist/translations/tk.js +1 -1
- package/dist/translations/tk.umd.js +1 -1
- package/dist/translations/tr.js +1 -1
- package/dist/translations/tr.umd.js +1 -1
- package/dist/translations/tt.js +1 -1
- package/dist/translations/tt.umd.js +1 -1
- package/dist/translations/ug.js +1 -1
- package/dist/translations/ug.umd.js +1 -1
- package/dist/translations/uk.js +1 -1
- package/dist/translations/uk.umd.js +1 -1
- package/dist/translations/ur.js +1 -1
- package/dist/translations/ur.umd.js +1 -1
- package/dist/translations/uz.js +1 -1
- package/dist/translations/uz.umd.js +1 -1
- package/dist/translations/vi.js +1 -1
- package/dist/translations/vi.umd.js +1 -1
- package/dist/translations/zh-cn.js +1 -1
- package/dist/translations/zh-cn.umd.js +1 -1
- package/dist/translations/zh.js +1 -1
- package/dist/translations/zh.umd.js +1 -1
- package/package.json +12 -12
package/dist/index.js
CHANGED
|
@@ -20,9 +20,9 @@
|
|
|
20
20
|
*
|
|
21
21
|
*
|
|
22
22
|
*/
|
|
23
|
-
import{ContextPlugin as
|
|
24
|
-
((()=>_0xb1432c)());static ['initialReconnectionInterval']=0x3e8;['connection'];['_reconnectionStack'];['_shouldPluginsReconnect'];['_domEmitter'];static get['requires'](){return[_0x2bc8e8,_0x378566];}static get['pluginName'](){return'WebSocketGateway';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x3b7455){super(_0x3b7455),this['set']('state',_0x5366a4['CONNECTED']),this['set']('_isBrowserOffline',!0x1),this['_reconnectionStack']=new Set(),this['_shouldPluginsReconnect']=!0x1,this['_domEmitter']=new(_0x4658db())();}['init'](){const _0x15c8bc=this['context'],_0x597d7a=_0x15c8bc['plugins']['get'](_0x2bc8e8),_0x403922=_0x15c8bc['plugins']['get'](_0x378566);if(!_0x597d7a['token'])throw new _0x32c009('websocketgateway-missing-token',this);if(!_0x597d7a['webSocketUrl'])throw new _0x32c009('websocketgateway-missing-websocket-url',this);return this['_domEmitter']['listenTo'](window,'offline',()=>this['_isBrowserOffline']=!0x0),this['_domEmitter']['listenTo'](window,'online',()=>this['_isBrowserOffline']=!0x1),this['context']['config']['define']('cloudServices.connectionTimeout',0xa),this['context']['config']['define']('cloudServices.requestTimeout',0x14),z['WebSocketGateway']['connect'](_0x597d7a['token'],_0x597d7a['webSocketUrl'],{'timeout':0x3e8*this['context']['config']['get']('cloudServices.connectionTimeout'),'requestTimeout':0x3e8*this['context']['config']['get']('cloudServices.requestTimeout')})['then'](_0x14b88a=>{if(this['connection']=_0x14b88a,this['bind']('state')['to'](_0x14b88a,'state',this,'_isBrowserOffline',(_0x4fa614,_0x45f9fc)=>('connected'!==_0x4fa614&&(this['_shouldPluginsReconnect']=!0x0),_0x45f9fc||_0x4fa614!==_0x5366a4['CONNECTED']?_0x5366a4['DISCONNECTED']:this['state']==_0x5366a4['DISCONNECTED']&&this['_shouldPluginsReconnect']?(this['_shouldPluginsReconnect']=!0x1,this['_reconnect'](),_0x5366a4['CONNECTING']):_0x5366a4['CONNECTED'])),this['connection']['on']('error',(_0x3d483a,_0x2c25c5)=>{if('limitExceeded'!==_0x2c25c5['code'])throw console['error'](_0x2c25c5),new _0x32c009('cloudservices-init',null,{'originalError':_0x2c25c5});_0x403922['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'});}),!_0x14b88a['me'])return new Promise(_0x2a6c20=>_0x14b88a['on']('change:me',_0x2a6c20));})['catch'](_0x13654f=>{throw console['error'](_0x13654f),new _0x32c009('cloudservices-init',null,{'originalError':_0x13654f});});}['addToReconnectionStack'](_0x2d2bdb){if('function'!=typeof _0x2d2bdb['reconnect'])throw new _0x32c009('websocketgateway-invalid-plugin-interface',this);if(this['isInReconnectionStack'](_0x2d2bdb))throw new _0x32c009('websocketgateway-plugin-already-registered',this,{'name':_0x2d2bdb['constructor']['pluginName']});this['_reconnectionStack']['add'](_0x2d2bdb);}['removeFromReconnectionStack'](_0x218b41){this['_reconnectionStack']['delete'](_0x218b41);}['isInReconnectionStack'](_0x44f845){return this['_reconnectionStack']['has'](_0x44f845);}['_reconnect'](){return this['connection']['reconnect']()['then'](()=>Promise['all'](Array['from'](this['_reconnectionStack'],_0x3112d8=>_0x3112d8['reconnect']())))['then'](()=>this['state']=_0x5366a4['CONNECTED'])['catch'](_0x380b08=>{throw console['error'](_0x380b08),new _0x32c009('cloudservices-reconnection-error',this['context']);});}['disconnect'](){this['connection']&&this['connection']['disconnect'](),this['state']=_0x5366a4['DISCONNECTED'],this['_domEmitter']['stopListening']();}['destroy'](){this['disconnect'](),super['destroy']();}}class Y extends _0x53a76{['channelSessions'];['channelConnectedUsers'];['allConnectedUsers'];['_registeredSessions'];['_uniqueUsersCount'];['_users'];static get['pluginName'](){return'Sessions';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}static get['requires'](){return[z,_0x3a80aa];}constructor(_0x112298){super(_0x112298),this['channelSessions']=new Map(),this['channelConnectedUsers']=new Map(),this['allConnectedUsers']=new _0x5e7903(),this['_registeredSessions']=new Map(),this['_uniqueUsersCount']=0x0,this['_users']=this['context']['plugins']['get'](_0x3a80aa);}['init'](){const _0x56df95=this['context']['plugins']['get'](z);this['listenTo'](_0x56df95,'change:state',(_0xedaa47,_0x4c9f73,_0xfa672b)=>{if('connected'!==_0xfa672b)this['channelSessions']['forEach'](_0x9510d0=>_0x9510d0['clear']()),this['channelConnectedUsers']['forEach'](_0x2d1457=>_0x2d1457['clear']()),this['allConnectedUsers']['clear']();else{for(const [_0x2d80cd,_0x18f232]of this['_registeredSessions'])for(const _0x1c5234 of _0x18f232)this['_handleSessionAdd'](_0x2d80cd,_0x1c5234);}}),this['_createUser'](_0x56df95['connection']['me'],!0x0);}['register'](_0x386329,_0x1e3e35){if(this['_registeredSessions']['has'](_0x386329))throw new _0x32c009('sessions-register-already-registered',null,{'channelId':_0x386329});this['_registeredSessions']['set'](_0x386329,_0x1e3e35),this['channelSessions']['set'](_0x386329,new _0x5e7903()),this['channelConnectedUsers']['set'](_0x386329,new _0x5e7903()),this['listenTo'](_0x1e3e35,'add',(_0x58bcd4,_0x3c728b)=>this['_handleSessionAdd'](_0x386329,_0x3c728b)),this['listenTo'](_0x1e3e35,'remove',(_0x1d75e3,_0x5b0528)=>this['_handleSessionRemove'](_0x386329,_0x5b0528));for(const _0x5978c7 of _0x1e3e35)this['_handleSessionAdd'](_0x386329,_0x5978c7);}['unregister'](_0x4fde7e){if(!this['_registeredSessions']['has'](_0x4fde7e))throw new _0x32c009('sessions-unregister-not-exist',null,{'channelId':_0x4fde7e});const _0x46ee87=this['_registeredSessions']['get'](_0x4fde7e);this['stopListening'](_0x46ee87);for(const _0x3382f9 of _0x46ee87)'connected'===this['context']['plugins']['get'](z)['state']&&this['_handleSessionRemove'](_0x4fde7e,_0x3382f9);this['_registeredSessions']['delete'](_0x4fde7e),this['channelSessions']['delete'](_0x4fde7e),this['channelConnectedUsers']['delete'](_0x4fde7e);}get['mySessionId'](){return this['context']['plugins']['get'](z)['connection']['sessionId'];}['getUserBySessionId'](_0x376f01){for(const _0x1e337e of this['channelSessions']['values']())for(const _0x28f919 of _0x1e337e)if(_0x28f919['id']===_0x376f01)return _0x28f919['user'];}['getUserSessions'](_0x15e8dd,_0x5c5b56){const _0xc8f4be=_0x5c5b56?[this['channelSessions']['get'](_0x5c5b56)]:this['channelSessions']['values'](),_0x59e725=new Set();for(const _0x4b1b29 of _0xc8f4be)for(const _0x1513e4 of _0x4b1b29)_0x1513e4['user']['id']===_0x15e8dd['id']&&_0x59e725['add'](_0x1513e4['id']);return _0x59e725;}['getUserRole'](_0x4bd3ae){for(const _0x3a54ff of this['channelSessions']['values']())for(const _0x205747 of _0x3a54ff)if(_0x205747['user']===_0x4bd3ae)return _0x205747['role'];}['_handleSessionAdd'](_0x4ad808,_0x249b92){if('connected'!==this['context']['plugins']['get'](z)['state'])return;const _0x30c645=_0x249b92['user'],_0x40d5db=this['_users']['getUser'](_0x30c645['id'])||this['_createUser'](_0x30c645),_0x1af3bb=Object['assign']({},_0x249b92,{'user':_0x40d5db});if(this['channelSessions']['get'](_0x4ad808)['add'](_0x1af3bb),!_0x30c645['hiddenInPresenceList']){const _0x4c2e4a=this['channelConnectedUsers']['get'](_0x4ad808);_0x4c2e4a['has'](_0x40d5db['id'])||_0x4c2e4a['add'](_0x40d5db),this['allConnectedUsers']['has'](_0x40d5db['id'])||_0x30c645['hiddenInPresenceList']||this['allConnectedUsers']['add'](_0x40d5db,_0x40d5db['isMe']?0x0:void 0x0);}this['fire']('sessionAdd:'+_0x4ad808,{'channelId':_0x4ad808,'session':_0x1af3bb});}['_handleSessionRemove'](_0x2ee5b1,_0x5e354d){if('connected'!==this['context']['plugins']['get'](z)['state'])return;const _0x423758=this['channelConnectedUsers']['get'](_0x2ee5b1),_0x44e267=_0x5e354d['user'];_0x44e267['id']&&(this['channelSessions']['get'](_0x2ee5b1)['remove'](_0x5e354d['id']),_0x423758['has'](_0x44e267['id'])&&!this['getUserSessions'](_0x44e267,_0x2ee5b1)['size']&&_0x423758['remove'](_0x44e267['id']),this['allConnectedUsers']['get'](_0x44e267['id'])&&!this['getUserSessions'](_0x44e267)['size']&&this['allConnectedUsers']['remove'](_0x44e267['id']));}['_createUser'](_0x311ab4,_0x287062){const _0x552d95=this['_users']['addUser'](_0x311ab4);return _0x287062&&this['_users']['defineMe'](_0x311ab4['id']),_0x552d95['orderNumber']=this['_uniqueUsersCount']++,_0x552d95;}}class K extends _0x5dd355{['_domEmitter']=new(_0x4658db())();static get['requires'](){return[Y];}static get['pluginName'](){return'UserMarkers';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['init'](){const _0x25d0bb=this['editor'],_0x54e1a2=_0x25d0bb['plugins']['get'](Y);_0x25d0bb['conversion']['for']('editingDowncast')['markerToElement']({'model':'user:position','view':(_0x47b3c4,{writer:_0x2a8f07})=>function(_0x544868,_0x12205d,_0x2c9b39,_0x1c27a9){const _0x246742=_0x544868['markerName']['split'](':')[0x2],_0x480a54=_0x2c9b39['getUserBySessionId'](_0x246742);if(!_0x480a54||_0x246742===_0x2c9b39['mySessionId'])return;if(!_0x1c27a9['model']['schema']['checkChild'](_0x544868['markerRange']['start'],'$text'))return;const _0x5e930d={'class':'ck-user__marker\x20'+_0x480a54['color']['getMarkerClass'](),'style':Q(_0x480a54),'data-name':_0x480a54['name'],'data-session-id':_0x246742},_0x948872=_0x1c27a9['model']['markers']['get'](_0x544868['markerName']),_0x9bc72e=_0x948872['getStart'](),_0x8d1f13=_0x9bc72e['nodeAfter'],_0x56a544=_0x1c27a9['model']['schema'];if(_0x8d1f13&&_0x56a544['isObject'](_0x8d1f13)&&_0x56a544['isInline'](_0x8d1f13)&&!_0x1c27a9['model']['markers']['get']('user:range:'+_0x246742)['getRange']()['isCollapsed'])return;const _0x39a716=_0x9bc72e['parent'];return _0x1c27a9['model']['schema']['isLimit'](_0x39a716)&&!_0x1c27a9['model']['hasContent'](_0x39a716)&&(_0x5e930d['contenteditable']=!0x1),function(_0x484833,_0x1b0436,_0x4e8fcf){const _0x45861a=_0x484833['createUIElement']('span',_0x1b0436);return _0x484833['setCustomProperty']('userPositionMarker',!0x0,_0x45861a),_0x45861a['render']=function(_0x5f0a37){const _0x2643b7=this['toDomElement'](_0x5f0a37),_0x1cafe4=document['createElement']('span');return _0x1cafe4['classList']['add']('ck-user__marker-tooltip'),_0x1cafe4['setAttribute']('contenteditable','false'),_0x1cafe4['setAttribute']('spellcheck','false'),_0x1cafe4['textContent']=_0x4e8fcf['name'],_0x2643b7['innerHTML']='<span\x20class=\x22ck-user__marker-line\x22\x20contenteditable=\x22false\x22><span\x20class=\x22ck-user__marker-dot\x22></span></span>'+_0x1cafe4['outerHTML']+'',_0x2643b7['addEventListener']('mouseenter',()=>{_0x2643b7['classList']['add']('ck-user__marker_hovered');}),_0x2643b7['addEventListener']('mouseleave',()=>{_0x2643b7['classList']['remove']('ck-user__marker_hovered');}),_0x2643b7;},_0x45861a['isSimilar']=function(_0x37b925){return!(!this['getCustomProperty']('userPositionMarker')||!_0x37b925['getCustomProperty']('userPositionMarker')||this['getAttribute']('data-session-id')!=_0x37b925['getAttribute']('data-session-id'));},_0x45861a;}(_0x12205d,_0x5e930d,_0x480a54);}(_0x47b3c4,_0x2a8f07,_0x54e1a2,_0x25d0bb)}),_0x25d0bb['conversion']['for']('editingDowncast')['markerToHighlight']({'model':'user:range','view':_0x3bf16e=>function(_0x152085,_0x1fa209){const _0x41f59d=_0x152085['markerName']['split'](':')[0x2];if(_0x41f59d===_0x1fa209['mySessionId'])return null;const _0x72bf40=_0x1fa209['getUserBySessionId'](_0x41f59d);if(!_0x72bf40)return{'id':_0x41f59d,'classes':[]};return{'id':_0x41f59d,'classes':['ck-user__selection',_0x72bf40['color']['getSelectionClass']()],'attributes':{'style':Q(_0x72bf40),'data-session-id':_0x41f59d},'priority':0x7d0+_0x72bf40['orderNumber']};}(_0x3bf16e,_0x54e1a2)}),function(_0x14df8f){const _0x1927dd=_0x14df8f['model'],_0x1e18db=new Map(),_0x4cf1db=_0x14df8f['plugins']['get'](Y);_0x1927dd['markers']['on']('update:user:range',(_0x160a7b,_0x2f2cd6,_0x13a17f,_0xe81948)=>{if(!_0xe81948&&_0x1e18db['get'](_0x2f2cd6['name']))return _0x1e18db['get'](_0x2f2cd6['name'])['detach'](),void _0x1e18db['delete'](_0x2f2cd6['name']);const _0x9c54f4=_0x2f2cd6['name']['split'](':')[0x2];if(_0x9c54f4===_0x4cf1db['mySessionId'])return;const _0x27d448='user:position:'+_0x9c54f4;_0x1927dd['markers']['has'](_0x27d448)&&_0x14df8f['editing']['reconvertMarker'](_0x27d448),_0x2f2cd6['on']('change:range',(_0x42e92e,_0x53d5e4,_0x10c02f)=>{if('$graveyard'!=_0x53d5e4['root']['rootName']&&'$graveyard'==_0x2f2cd6['getRange']()['root']['rootName']&&!_0x1e18db['has'](_0x2f2cd6['name'])){const _0x4d35bf=_0x1927dd['schema']['getNearestSelectionRange'](_0x10c02f['deletionPosition']);if(_0x4d35bf){const _0x2f0cde=_0x4aea66['fromRange'](_0x4d35bf);_0x1e18db['set'](_0x2f2cd6['name'],_0x2f0cde),_0x2f0cde['on']('change:range',(_0x449213,_0x23e0a8,_0x139671)=>{if('$graveyard'==_0x2f0cde['root']['rootName']){const _0x1cb855=_0x1927dd['schema']['getNearestSelectionRange'](_0x139671['deletionPosition']);_0x1cb855?(_0x2f0cde['start']=_0x1cb855['start'],_0x2f0cde['end']=_0x1cb855['end']):(_0x1e18db['delete'](_0x2f2cd6['name']),_0x2f0cde['detach']());}});}}});}),_0x1927dd['document']['on']('change',()=>{_0x1e18db['size']>0x0&&_0x1927dd['enqueueChange']({'isUndoable':!0x1},_0x51427c=>{for(const [_0x4cbd3a,_0x19044d]of _0x1e18db)'$graveyard'==_0x1927dd['markers']['get'](_0x4cbd3a)['getRange']()['root']['rootName']&&(J(_0x4cbd3a['split'](':')[0x2],_0x19044d['toRange'](),_0x1927dd,_0x51427c),_0x19044d['detach']());_0x1e18db['clear']();});});}(_0x25d0bb),this['_domEmitter']['listenTo'](_0x2bc8a6['document'],'keydown',(_0x41497c,{key:_0x4f4a51})=>{'Escape'===_0x4f4a51&&function(_0x314d2e){_0x314d2e['editing']['view']['change'](_0x6490a3=>{for(const _0x518dd1 of _0x314d2e['model']['markers']){if(!_0x518dd1['name']['startsWith']('user:position'))continue;const _0x3b66ea=_0x314d2e['editing']['mapper']['markerNameToElements'](_0x518dd1['name']);if(_0x3b66ea){for(const _0x17f515 of _0x3b66ea)_0x6490a3['removeClass']('ck-user__marker_hovered',_0x17f515);}}});}(_0x25d0bb);},{'useCapture':!0x0});}['afterInit'](){const _0x1dd0cf=this['editor'],_0x48ad4f=_0x1dd0cf['commands']['get']('undo');_0x48ad4f&&_0x1dd0cf['model']['on']('applyOperation',(_0x49c77b,_0x44c20e)=>{const _0x27583f=_0x44c20e[0x0];if(!_0x27583f['isDocumentOperation'])return;if('marker'!=_0x27583f['type']||!_0x27583f['name']['startsWith']('user:'))return;const _0x138617=_0x27583f['batch'];_0x48ad4f['_createdBatches']['has'](_0x138617)&&(_0x27583f['newRange']=_0x27583f['oldRange']?_0x1dd0cf['model']['createRange'](_0x27583f['oldRange']['start'],_0x27583f['oldRange']['end']):null);},{'priority':'highest'});}['destroy'](){return this['_domEmitter']['stopListening'](),super['destroy']();}['createUserMarkerOperations'](){const _0x597054=this['editor'],_0x56ec42=_0x597054['model']['document'],_0xe844ba=_0x597054['plugins']['get'](Y);_0x597054['model']['enqueueChange']({'isUndoable':!0x1},_0x4f30fe=>{const _0x51f983='user:range:'+_0xe844ba['mySessionId'],_0x30efa9='user:position:'+_0xe844ba['mySessionId'],_0x4d0ff1=_0x597054['model']['markers']['has'](_0x51f983);_0x597054['editing']['view']['hasDomSelection']?J(_0xe844ba['mySessionId'],_0x56ec42['selection']['getFirstRange'](),_0x597054['model'],_0x4f30fe):_0x4d0ff1&&(_0x4f30fe['removeMarker'](_0x51f983),_0x4f30fe['removeMarker'](_0x30efa9));});}}function J(_0x2fede9,_0x26a09d,_0x408e56,_0x5445e5){const _0x47c5d5='user:range:'+_0x2fede9,_0x26ea61='user:position:'+_0x2fede9,_0x4d1d98=_0x26a09d['getContainedElement']();let _0x5301c9=_0x26a09d['start'];if(_0x4d1d98&&_0x4d1d98['is']('element','tableCell')){const _0x55d4a2=function(_0x1a381a,_0x3ff4b8){for(const _0xf8f7e1 of _0x1a381a['getPositions']())if(_0x3ff4b8['schema']['checkChild'](_0xf8f7e1,'$text'))return _0xf8f7e1;}(_0x26a09d,_0x408e56);_0x55d4a2&&(_0x5301c9=_0x55d4a2,_0x26a09d=_0x5445e5['createRange'](_0x5301c9));}const _0xb0b884=_0x5445e5['createRange'](_0x5301c9);_0x408e56['markers']['has'](_0x47c5d5)?(_0x5445e5['updateMarker'](_0x47c5d5,{'range':_0x26a09d}),_0x5445e5['updateMarker'](_0x26ea61,{'range':_0xb0b884})):(_0x5445e5['addMarker'](_0x47c5d5,{'range':_0x26a09d,'usingOperation':!0x0}),_0x5445e5['addMarker'](_0x26ea61,{'range':_0xb0b884,'usingOperation':!0x0}));}function Q(_0x588079){return'--ck-user-color:'+_0x588079['color']['getColorVariable']()+';--ck-user-color-alpha:'+_0x588079['color']['getColorAlphaVariable']()+';';}function X(_0x51a5d2,_0x5950f6,_0x3dc1c7){const _0xeafdd5=_0x51a5d2['t'],t=_0x51a5d2['t'];switch(_0x5950f6){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 _0xeafdd5({'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'},_0x3dc1c7);default:return'';}}let Z=0x1;class tt extends _0x5dd355{static ['CollaborativeEditingService']=/* #__PURE__ -- @preserve */
|
|
25
|
-
((()=>_0x4ed9df)());['_offset'];['sessionId'];['serverHistory'];['_channelId'];['_service'];['_document'];['_compressor'];['_bufferedOperations'];['_knownOperations'];['_knownRootNames'];['_pendingAction'];['_hasSelectionChanged'];['_sendBufferedOperationsDelayId'];['_baseBufferDelay'];['_currentBufferDelay'];['_lastSyncedOperationId'];['_disconnectionOperations'];['_operationIdentifier'];static get['requires'](){return[z,Y,K,_0x971f0,_0x3a80aa,_0x378566];}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 _0x3abf2e=this['serverHistory']['getOperations']();for(let _0x499685=_0x3abf2e['length']-0x1;_0x499685>=0x0;_0x499685--){const _0x425727=_0x3abf2e[_0x499685];if(!this['_disconnectionOperations']['has'](_0x425727))return _0x425727['baseVersion']+0x1-this['_offset'];}return 0x0;}constructor(_0x37c107){if(super(_0x37c107),this['_offset']=0x0,this['sessionId']=null,this['serverHistory']=new _0xa70243(),this['editor']['config']['define']('collaboration',{}),this['_channelId']=this['editor']['config']['get']('collaboration.channelId'),!this['_channelId'])throw new _0x32c009('collaboration-missing-channelid',this);const _0x58f62a=_0x37c107['config']['get']('cloudServices.bundleVersion')||_0x12935f;this['_service']=new tt['CollaborativeEditingService'](_0x58f62a,this['_channelId']),this['_document']=this['editor']['model']['document'],this['_compressor']=new _0x38c9a0(),this['_bufferedOperations']=[],this['_knownOperations']=new WeakSet(),this['_knownRootNames']=new Set(),this['set']('_isPendingUpdate',!0x1),this['set']('_hasSynchronizationProblem',!0x1),this['_pendingAction']=null,this['_hasSelectionChanged']=!0x1,this['_sendBufferedOperationsDelayId']=null,this['_baseBufferDelay']=0x12c,this['_currentBufferDelay']=this['_baseBufferDelay'],this['_lastSyncedOperationId']=null,this['_disconnectionOperations']=new WeakSet(),this['_operationIdentifier']=new it(this['_disconnectionOperations']);}['init'](){const _0x4fe0f0=this['editor'],_0x13b380=_0x4fe0f0['plugins']['get'](_0x3a80aa),_0x5637df=_0x4fe0f0['plugins']['get'](z);this['listenTo'](_0x13b380,'getOperationAuthor',(_0x2695c4,_0x16cf40)=>{const _0x5f1388=_0x16cf40[0x0];_0x5f1388['_authorId']&&(_0x2695c4['return']=_0x13b380['getUser'](_0x5f1388['_authorId']),_0x2695c4['stop']()),null===_0x5f1388['_authorId']&&(_0x2695c4['return']=null,_0x2695c4['stop']());},{'priority':'high'}),this['listenTo'](_0x4fe0f0['model']['document']['selection'],'change:range',(_0x5a7592,_0xe37029)=>{_0xe37029['directChange']&&this['_refreshUserSelectionMarkers']();}),this['listenTo'](_0x4fe0f0['editing']['view'],'change:hasDomSelection',()=>{this['_refreshUserSelectionMarkers']();}),this['_initThrowingOnDataSet'](),_0x4fe0f0['model']['on']('applyOperation',(_0x401d0f,_0x4718ee)=>{const _0x202ec8=_0x4718ee[0x0];_0x202ec8['isDocumentOperation']&&(this['_saveOperationInBuffer'](_0x202ec8),this['_shouldSendUpdate']()&&this['_sendBufferedOperationsDelayed']());}),this['_setUpDataInit'](),this['bind']('_isEditingAllowed')['to'](_0x5637df,'state',this,'_hasSynchronizationProblem',(_0x1e8343,_0xa6b3b4)=>'connected'===_0x1e8343&&!_0xa6b3b4),this['on']('change:_isEditingAllowed',()=>{this['_isEditingAllowed']?_0x4fe0f0['disableReadOnlyMode']('rtc-offline'):_0x4fe0f0['enableReadOnlyMode']('rtc-offline');}),this['_isEditingAllowed']?_0x4fe0f0['disableReadOnlyMode']('rtc-offline'):_0x4fe0f0['enableReadOnlyMode']('rtc-offline'),this['set']('_isConnected',!0x1);}async['reconnect'](){const _0x30ab9e=this['editor']['plugins']['get'](Y),_0x3e8815=this['editor']['plugins']['get'](z);try{this['_isPendingUpdate']=!0x0,_0x30ab9e['unregister'](this['_channelId']);const _0x3ab16a=await this['_service']['reconnect'](_0x3e8815['connection'],this['lastSyncVersion']);await this['_handleReconnectionResponse'](_0x3ab16a)&&(this['_isPendingUpdate']=!0x1,this['_clearPendingAction']());const _0x256e33=await this['_service']['getConnectedSessions']();_0x30ab9e['register'](this['_channelId'],_0x256e33),this['_handleSendingSelectionMarkers'](),this['_isConnected']=!0x0;}catch(_0x4d03a7){if(function(_0x3dc9d6){return'404'===_0x3dc9d6['code'];}(_0x4d03a7)&&this['sessionId'])await this['_connectAfterSessionHasBeenFlushed']();else{if(function(_0x11a320){return'409'===_0x11a320['code'];}(_0x4d03a7)){const _0x3b76af=X(this['editor']['locale'],'The\x20document\x20cannot\x20be\x20connected\x20back\x20to\x20the\x20server.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.');this['_handleReconnectionError'](_0x3b76af);}else{if(!(_0x4d03a7 instanceof et))throw _0x4d03a7;this['_handleReconnectionError']();}}}}['destroy'](){const _0x40cb01=this['editor']['plugins']['get'](z),_0x4d231e=this['editor']['plugins']['get'](Y);this['editor']['enableReadOnlyMode']('rtc-destroyed'),_0x4d231e['channelSessions']['has'](this['_channelId'])&&_0x4d231e['unregister'](this['_channelId']),_0x40cb01['removeFromReconnectionStack'](this),this['_disconnectService'](),super['destroy']();}async['_handleReconnectionResponse'](_0x33a545){if(this['sessionId']!==_0x33a545['sessionId']&&this['_lastSyncedOperationId']!==_0x33a545['lastOperationId'])throw new et();return this['sessionId']=_0x33a545['sessionId'],this['_handleServerResponse']([],{..._0x33a545,'wereChangesApplied':!0x1,'data':_0x33a545['data']},'reconnect');}async['_connectService'](_0xd8bd87,_0x1189bd=!0x1){const {connection:_0xf66f8c}=this['editor']['plugins']['get'](z);tt['CollaborativeEditingService']['getConnectedSessions'](_0xf66f8c,this['_channelId'])['then'](_0x36f868=>this['_initSessionsHandling'](_0x36f868))['catch'](_0x23bd8f=>{this['_crash']('realtimecollaborationclient-init-session-connection-error',_0x23bd8f);}),this['listenTo'](this['_service'],'operationsReceived',this['_handleReceivedOperations']['bind'](this)),this['listenTo'](this['_service'],'error',(_0x3cedbe,_0x4a6abd)=>{this['_crash']('realtimecollaborationclient-init-service-internal-error',_0x4a6abd);}),this['listenTo'](this['_service'],'disconnected',()=>{this['_isConnected']=!0x1;});const _0x538d94=this['_operationIdentifier']['getIdOfTheLastOperation'](_0xd8bd87);this['_isPendingUpdate']=!0x0;const _0x49d113=await this['_service']['connect'](_0xf66f8c,this['_compressOperations'](_0xd8bd87),_0x538d94);if(this['sessionId']=_0x49d113['sessionId'],_0x1189bd){if(!_0x49d113['wereChangesApplied'])return void this['_handleReconnectionError']();this['_isPendingUpdate']=!0x1,this['_clearPendingAction'](),this['serverHistory']['reset'](),this['_offset']=_0x49d113['offset'],this['serverHistory']['version']=this['_offset'],await this['_handleServerResponse'](_0xd8bd87,_0x49d113,'reconnection:\x20flushed\x20session');}else await this['_handleInitialConnectionData'](_0x49d113,_0xd8bd87);this['_handleSendingSelectionMarkers'](),this['_isConnected']=!0x0;}['_handleSendingSelectionMarkers'](){const _0x53c9d6=this['editor']['plugins']['get'](Y),_0x36ddb4=this['editor']['plugins']['get'](K),_0x428c81=_0x53c9d6['channelSessions']['get'](this['_channelId']);_0x428c81&&_0x428c81['length']>0x1?_0x36ddb4['createUserMarkerOperations']():this['listenTo'](_0x53c9d6,'sessionAdd:'+this['_channelId'],()=>{0x2===_0x53c9d6['channelSessions']['get'](this['_channelId'])['length']&&_0x36ddb4['createUserMarkerOperations']();});}async['_handleReceivedOperations'](_0x9badb7,_0x18f5ad,_0x20c8ce,_0x11897f){if(!this['_isPendingUpdate']&&this['_document']['version']==_0x18f5ad){const _0x4ccac0=this['_decompressOperations'](_0x20c8ce,_0x11897f);await this['_fetchMissingUsers'](_0x4ccac0),this['_handleExternalOperations'](_0x4ccac0,_0x18f5ad,_0x20c8ce['lastOperationId'])||this['_crash']('realtimecollaborationclient-init-service-incorrect-server-operation');}}async['_connectAfterSessionHasBeenFlushed'](){this['_disconnectService']();const {locale:_0x26266a}=this['editor'];let _0x2f23d4;try{_0x2f23d4=await this['_service']['getDocumentDetails']();}catch{const _0x1e6049=X(_0x26266a,'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'](_0x1e6049);}const _0x4afa8a=_0x2f23d4['currentDocumentSession']||_0x2f23d4['lastDocumentSession'];if(this['_lastSyncedOperationId']!==_0x4afa8a['lastOperationId']){const _0x211220=X(_0x26266a,'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'](_0x211220);}await this['_connectService'](this['editor']['model']['document']['history']['getOperations'](),!0x0);}['_disconnectService'](){this['_service']['disconnect'](),this['_bufferedOperations']=[],clearTimeout(this['_sendBufferedOperationsDelayId']),this['stopListening'](this['_service']);}['_initSessionsHandling'](_0x4b7f71){const _0x9aab1f=this['editor']['plugins']['get'](Y);this['listenTo'](_0x9aab1f,'sessionAdd:'+this['_channelId'],(_0x55569c,{session:_0x2db4fb})=>{if(_0x2db4fb['id']===_0x9aab1f['mySessionId']){_0x55569c['off']();const _0x306f0d=this['editor']['plugins']['has']('CommentsOnly')&&this['editor']['plugins']['get']('CommentsOnly');let _0x61c91b=_0x2db4fb['permissions'];_0x306f0d&&_0x306f0d['isEnabled']&&(_0x61c91b=_0x61c91b['filter'](_0x4d6c5b=>'document:write'!==_0x4d6c5b)),this['editor']['plugins']['get']('Permissions')['setPermissions'](_0x61c91b,this['_channelId']);}}),_0x9aab1f['register'](this['_channelId'],_0x4b7f71);}['_initThrowingOnDataSet'](){const _0x1c93fe=this['editor']['data']['set'];this['editor']['data']['set']=(..._0x36fab7)=>{if(!_0x36fab7[_0x36fab7['length']-0x1]['suppressErrorInCollaboration'])throw new _0x32c009('realtimecollaborationclient-editor-setdata-and-editor-data-set-are-forbidden-in-real-time-collaboration',this);_0x1c93fe['apply'](this['editor']['data'],_0x36fab7);};}['_setUpDataInit'](){this['editor']['data']['on']('init',(_0x384948,[_0x209aa5])=>{if(this['_document']['version'])throw new _0x32c009('realtimecollaborationclient-init-document-already-initialized',this);_0x384948['stop'](),this['_setPendingAction']();const _0x47e3cb=Object['fromEntries'](Object['entries'](this['editor']['config']['get']('roots')||{})['filter'](([,_0x656c83])=>!_0x656c83['lazyLoad'])['map'](([_0x52a7e2,_0x5eafe4])=>[_0x52a7e2,_0x5eafe4['modelAttributes']||{}])),_0x118a36=this['_getOperationsFromInitData'](_0x209aa5,_0x47e3cb);0x0==_0x118a36['length']&&_0x118a36['push'](new _0x2a0345(0x0)),_0x384948['return']=this['_connectService'](_0x118a36)['then'](()=>{this['editor']['plugins']['get'](z)['addToReconnectionStack'](this),this['editor']['data']['fire']('ready');})['catch'](_0x423e32=>this['_crash']('realtimecollaborationclient-init-connection-failed',_0x423e32))['finally'](()=>this['_clearPendingAction']());},{'priority':'high'}),this['editor']['on']('loadRoot',async(_0x36b65f,[_0x17adcc,_0x3c6155])=>{_0x36b65f['stop']();const _0x376a6c=this['editor']['model']['document']['getRoot'](_0x17adcc);if(!this['_knownRootNames']['has'](_0x17adcc)){const _0x3eb886=_0x3c6155&&_0x3c6155['data']?_0x3c6155['data']:'',_0x504d2b=_0x3c6155&&_0x3c6155['attributes']?_0x3c6155['attributes']:{};await this['_loadRoot'](_0x17adcc,_0x3eb886,_0x504d2b);}this['editor']['model']['enqueueChange']({'isUndoable':!0x1},()=>{_0x376a6c['_isLoaded']=!0x0,this['editor']['model']['document']['differ']['_bufferRootLoad'](_0x376a6c);});},{'priority':'high'});}async['_fetchMissingUsers'](_0x4299f7){const _0x31ba08=this['editor']['plugins']['get'](_0x3a80aa),{connection:_0x4ac204}=this['editor']['plugins']['get'](z),_0x1dff32=new Set();for(const _0x5ce34e of _0x4299f7){const _0x1c48f1=_0x5ce34e['_authorId'];_0x1c48f1&&!_0x31ba08['getUser'](_0x1c48f1)&&_0x1dff32['add'](_0x1c48f1);}if(0x0===_0x1dff32['size'])return;const _0x242e9a=await _0xd9f1f6['getMany'](_0x4ac204,Array['from'](_0x1dff32));for(const _0x297475 of _0x242e9a)_0x31ba08['getUser'](_0x297475['id'])||_0x31ba08['addUser'](_0x297475);}['_getOperationsFromInitData'](_0x31f65c,_0x2f2130={}){const _0x386f96=this['editor']['model'],_0xa2281b=[];let _0x16ffac=0x0;const _0x3cf053='string'==typeof _0x31f65c?{'main':_0x31f65c}:_0x31f65c;for(const _0x4473fa of Object['keys'](_0x3cf053)){if(!this['_document']['roots']['has'](_0x4473fa))throw new _0x32c009('realtimecollaborationclient-init-non-existent-root',this);const _0x29ef13=this['editor']['data']['parse'](_0x3cf053[_0x4473fa]),_0x396517=this['_document']['getRoot'](_0x4473fa),_0x112ee9=new _0x540882(_0x386f96['createPositionAt'](_0x396517,0x0),_0x29ef13,_0x16ffac++);_0xa2281b['push'](_0x112ee9);for(const [_0x8fcf68,_0x43a8d6]of _0x29ef13['markers']){const _0x41ff0f=_0x386f96['createRange'](_0x386f96['createPositionFromPath'](_0x396517,_0x43a8d6['start']['path']['slice']()),_0x386f96['createPositionFromPath'](_0x396517,_0x43a8d6['end']['path']['slice']())),_0x24e00b=new _0x444ac6(_0x8fcf68,null,_0x41ff0f,_0x386f96['markers'],!0x0,_0x16ffac++);_0xa2281b['push'](_0x24e00b);}}if(_0x2f2130)for(const [_0x3d979d,_0x2e1944]of Object['entries'](_0x2f2130)){const _0x3c9cdf=_0x386f96['document']['getRoot'](_0x3d979d);if(!_0x3c9cdf)throw new _0x32c009('multi-root-editor-root-attributes-no-root',null);for(const [_0x17e889,_0x55a97f]of Object['entries'](_0x2e1944))if(null!==_0x55a97f){const _0x372427=new _0x2de69a(_0x3c9cdf,_0x17e889,null,_0x55a97f,_0x16ffac++);_0xa2281b['push'](_0x372427);}}return _0xa2281b;}async['_loadRoot'](_0x5b0617,_0x34519b,_0x398ac0){this['_getOperationsFromInitData']({[_0x5b0617]:_0x34519b},{[_0x5b0617]:_0x398ac0})['forEach']((_0x1b2d53,_0x2f876a)=>{_0x1b2d53['baseVersion']=this['_document']['version']+_0x2f876a,_0x1b2d53['_isInit']=!0x0,this['_saveOperationInBuffer'](_0x1b2d53);}),this['_sendBufferedOperationsDelayed'](),await this['_waitUntilSynced']();}async['_handleInitialConnectionData'](_0x267018,_0x39236e){let _0x54a7dd;this['_offset']=_0x267018['offset'];const _0x2a0432=_0x267018['wereChangesApplied']&&!_0x267018['initData'],_0x2124ee=_0x2a0432?0x0:_0x267018['data']['baseVersion'];if(_0x39236e['forEach'](_0xc7a957=>{_0xc7a957['_isInit']=!0x0,_0xc7a957['createdAt']=_0x267018['sessionCreatedAt'],_0xc7a957['_authorId']=null;}),_0x2a0432)_0x54a7dd=_0x39236e,this['_applyOperationsSet'](_0x54a7dd,_0x2a0432);else{if(_0x267018['initData']){const _0x44ff25=this['_getOperationsFromInitData'](_0x267018['initData']);this['_document']['history']['version']=-_0x44ff25['length'],_0x44ff25['forEach'](_0x1ff180=>{_0x1ff180['baseVersion']-=_0x44ff25['length'],_0x1ff180['createdAt']=_0x267018['sessionCreatedAt'],_0x1ff180['_isInit']=!0x0,_0x1ff180['_authorId']=null;}),this['_applyOperationsSet'](_0x44ff25,!0x0),this['serverHistory']['version']=-_0x44ff25['length']+this['_offset'],this['_updateServerHistory'](_0x44ff25);}this['_document']['history']['version']=_0x2124ee,_0x54a7dd=this['_decompressOperations'](_0x267018['data'],_0x267018['metadata']),await this['_fetchMissingUsers'](_0x54a7dd),this['_applyOperationsSet'](_0x54a7dd,_0x2a0432);}_0x267018['lastOperationId']&&(this['_operationIdentifier']['setIdForTheLastOperation'](_0x54a7dd,_0x267018['lastOperationId']),this['_lastSyncedOperationId']=_0x267018['lastOperationId']),this['serverHistory']['version']=_0x2124ee+this['_offset'],this['_updateServerHistory'](_0x54a7dd),_0x39236e['filter'](_0x32a288=>{const _0x3fb5b4=this['_getAffectedRoot'](_0x32a288);return _0x3fb5b4&&!this['_knownRootNames']['has'](_0x3fb5b4);})['forEach']((_0x4b2b83,_0x24c670)=>{_0x4b2b83['baseVersion']=this['_document']['version']+_0x24c670,this['_saveOperationInBuffer'](_0x4b2b83);}),this['_shouldSendUpdate']()?(this['_currentBufferDelay']=0x0,this['_sendBufferedOperationsDelayed'](!0x0),await this['_waitUntilSynced']()):(this['_isPendingUpdate']=!0x1,this['_clearPendingAction']());}['_crash'](_0x5a8b9f,_0x46e004){const _0x182a1d=_0x46e004&&_0x46e004['message'];if(_0x182a1d&&_0x182a1d['startsWith']('realtimecollaborationclient'))throw _0x46e004;const _0x1628af=this['editor']['plugins']['get'](z);throw this['_isPendingUpdate']=!0x0,_0x1628af['disconnect'](),this['editor']['enableReadOnlyMode']('realtimecollaborationclient-error'),new _0x32c009(_0x5a8b9f,this['editor'],_0x182a1d?{'originalError':_0x182a1d}:void 0x0);}['_saveOperationInBuffer'](_0x5e9d8e){this['_knownOperations']['has'](_0x5e9d8e)||(this['_knownOperations']['add'](_0x5e9d8e),this['_bufferedOperations']['push'](_0x5e9d8e),this['_pendingAction']||'marker'==_0x5e9d8e['type']&&!_0x5e9d8e['affectsData']||this['_setPendingAction']());}['_sendBufferedOperationsDelayed'](_0x3efc1a=!0x1){!_0x3efc1a&&this['_isPendingUpdate']||(this['_isPendingUpdate']=!0x0,clearTimeout(this['_sendBufferedOperationsDelayId']),this['_sendBufferedOperationsDelayId']=setTimeout(()=>{this['_sendBufferedOperations']()['then'](_0x37f802=>{_0x37f802&&(this['_clearPendingAction'](),this['_isPendingUpdate']=!0x1);})['catch'](_0x7af4ff=>{this['_clearPendingAction'](),this['_isPendingUpdate']=!0x1,function(_0x28ff90){return _0x28ff90['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x28ff90['message']['startsWith']('cloud-services-internal-error:\x20Collaborative\x20Editing\x20Service\x20is\x20not\x20connected.')||_0x28ff90['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}(_0x7af4ff)||this['_crash'](_0x7af4ff['message'],_0x7af4ff);});},this['_currentBufferDelay']));}['_waitUntilSynced'](){return new Promise(_0x367155=>{this['on']('change:_isPendingUpdate',()=>{_0x367155();});});}async['_sendBufferedOperations'](){const _0x183f16=this['editor']['plugins']['get'](K);if(this['_shouldSendSelectionUpdate']()&&(_0x183f16['createUserMarkerOperations'](),this['_hasSelectionChanged']=!0x1),!this['_shouldSendUpdate']())return!0x0;const _0x20a89e=[...this['_bufferedOperations']];for(const _0x3b283c of _0x20a89e)_0x3b283c['wasUndone']=this['_document']['history']['isUndoneOperation'](_0x3b283c);const _0x53ea9c=this['_operationIdentifier']['getIdOfTheLastOperation'](_0x20a89e),_0x1e8b41=Z++,_0x4bba72=this['_compressOperations'](_0x20a89e),_0x4ebb11=await this['_service']['sendOperations'](_0x4bba72,_0x4bba72['baseVersion'],_0x53ea9c);try{return await this['_handleServerResponse'](_0x20a89e,_0x4ebb11,_0x1e8b41);}catch(_0x2c509b){return this['_crash']('realtimecollaborationclient-sendbufferedoperations',_0x2c509b);}}async['_handleServerResponse'](_0xa64ab9,_0x16912d,_0x3f4aa1){if('error'in _0x16912d)throw _0x16912d['error'];let _0x18a318=!0x1;if(_0x16912d['wereChangesApplied']){_0x16912d['lastOperationId']&&(this['_lastSyncedOperationId']=_0x16912d['lastOperationId']),this['_bufferedOperations']=this['_bufferedOperations']['filter'](_0x126eca=>!_0xa64ab9['includes'](_0x126eca));for(const _0x343ab4 of _0xa64ab9)_0x343ab4['createdAt']='lastOperationAcceptedAt'in _0x16912d&&_0x16912d['lastOperationAcceptedAt']||void 0x0;st(_0xa64ab9,_0x16912d['version']-_0xa64ab9['length']),this['_updateServerHistory'](_0xa64ab9);const _0x45111d=_0xa64ab9['filter'](_0x1a2e24=>{if(!_0x1a2e24['_isInit'])return!0x1;const _0x21ad60=this['_getAffectedRoot'](_0x1a2e24);return _0x21ad60&&!this['_knownRootNames']['has'](_0x21ad60);});st(_0x45111d,this['_document']['version']),this['_applyOperationsSet'](_0x45111d),_0x18a318=!0x0,this['_currentBufferDelay']=this['_baseBufferDelay'];}else{const _0x11bad3=this['_decompressOperations'](_0x16912d['data'],_0x16912d['metadata'])['filter'](_0x3251a6=>_0x3251a6['baseVersion']>=this['_lastServerVersion']);_0x11bad3['forEach'](_0x347575=>this['_addKnownRoot'](_0x347575)),this['_bufferedOperations']=this['_bufferedOperations']['filter'](_0x6c0543=>!_0x6c0543['_isInit']||!this['_knownRootNames']['has'](this['_getAffectedRoot'](_0x6c0543))),this['_bufferedOperations']['length']&&st(this['_bufferedOperations'],this['_bufferedOperations'][0x0]['baseVersion']),await this['_fetchMissingUsers'](_0x11bad3),_0x18a318=this['_handleExternalOperations'](_0x11bad3,_0x16912d['version'],_0x16912d['lastOperationId']),this['_currentBufferDelay']=Math['round'](this['_currentBufferDelay']/0x2);}return _0x18a318?!this['_shouldSendUpdate']()||(this['_sendBufferedOperationsDelayed'](!0x0),!0x1):this['_crash']('realtimecollaborationclient-handleserverresponse');}['_handleExternalOperations'](_0x323398,_0x54436f,_0x44f80b){try{const _0x166bc9={'document':this['_document'],'useRelations':!0x1,'padWithNoOps':!0x0},{operationsA:_0x496da3,operationsB:_0x4db414,originalOperations:_0x2f7e97}=_0x4fbbd0(_0x323398,this['_bufferedOperations'],_0x166bc9);st(_0x496da3,this['_document']['version']),st(_0x4db414,_0x54436f);for(const _0x10ef11 of _0x496da3){const _0xad2b06=_0x2f7e97['get'](_0x10ef11);_0x10ef11['_authorId']=_0xad2b06?_0xad2b06['_authorId']:null;}_0x44f80b&&(this['_operationIdentifier']['setIdForTheLastOperation'](_0x323398,_0x44f80b),this['_lastSyncedOperationId']=_0x44f80b),this['_bufferedOperations']=[..._0x4db414],this['_applyOperationsSet'](_0x496da3),this['_updateServerHistory'](_0x323398);}catch(_0x1c61c9){return console['error'](_0x1c61c9),!0x1;}return!0x0;}['_applyOperationsSet'](_0x4c5640,_0x271e5f=!0x1){this['editor']['model']['enqueueChange']({'isUndoable':!0x1,'isLocal':!0x1},_0x2731fe=>{for(const _0x126b4d of _0x4c5640)this['_knownOperations']['add'](_0x126b4d),this['_addKnownRoot'](_0x126b4d),_0x2731fe['batch']['addOperation'](_0x126b4d),this['editor']['model']['applyOperation'](_0x126b4d);});}['_addKnownRoot'](_0x4826c9){const _0x462dc2=this['_getAffectedRoot'](_0x4826c9);_0x462dc2&&this['_knownRootNames']['add'](_0x462dc2);}['_getAffectedRoot'](_0x4ad13d){let _0x4c9f23,_0x1e244a;switch(_0x4ad13d['type']){case'insert':_0x4c9f23=_0x4ad13d['position']['root'];break;case'marker':if(_0x1e244a=_0x4ad13d['newRange'],!_0x1e244a)return null;_0x4c9f23=_0x1e244a['root'];break;case'addRootAttribute':_0x4c9f23=_0x4ad13d['root'];break;case'addRoot':_0x4c9f23=_0x4ad13d['affectedSelectable'];break;case'move':_0x4c9f23=_0x4ad13d['targetPosition']['root'];break;default:return null;}return _0x4c9f23['rootName'];}['_updateServerHistory'](_0x52a317){_0x52a317['forEach'](_0x4aceb2=>{const _0x2ad0b2=_0x4aceb2['clone']();_0x2ad0b2['_authorId']=_0x4aceb2['_authorId'],_0x2ad0b2['_isInit']=!!_0x4aceb2['_isInit'],_0x2ad0b2['createdAt']=_0x4aceb2['createdAt'],_0x2ad0b2['baseVersion']+=this['_offset'],_0x4aceb2['_isDisconnection']&&this['_disconnectionOperations']['add'](_0x2ad0b2),this['serverHistory']['addOperation'](_0x2ad0b2);});}['_handleReconnectionError'](_0x3ff3a6){const _0x36d3c8=this['editor']['plugins']['get']('Notification'),_0x244400=this['editor']['locale'];_0x3ff3a6||(_0x3ff3a6=X(_0x244400,'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.')),_0x36d3c8['showWarning'](_0x3ff3a6,{'title':X(_0x244400,'Synchronization\x20issue'),'namespace':'real-time-collaboration'}),this['_hasSynchronizationProblem']=!0x0,clearTimeout(this['_sendBufferedOperationsDelayId']),this['_bufferedOperations']=[],this['editor']['plugins']['get'](z)['disconnect']();}['_setPendingAction'](){this['_pendingAction']||(this['_pendingAction']=this['editor']['plugins']['get'](_0x971f0)['add'](X(this['editor']['locale'],'PENDING_ACTION_SENDING_DATA')));}['_clearPendingAction'](){this['_pendingAction']&&(this['editor']['plugins']['get'](_0x971f0)['remove'](this['_pendingAction']),this['_pendingAction']=null);}['_compressOperations'](_0x3aa3ad){const _0x3d0de3=_0x3aa3ad['map'](_0x47ffdc=>_0x47ffdc['toJSON']());return this['_compressor']['compress'](_0x3d0de3);}['_decompressOperations'](_0x6ac45f,_0x147512){return this['_compressor']['decompress'](_0x6ac45f)['map']((_0x3e5719,_0x5ede52)=>{const _0x476b83='init'==_0x147512[_0x5ede52]['type'];if('InsertOperation'==_0x3e5719['__className']){const _0x2d1511=_0x3e5719['position']['root'];!this['_document']['getRoot'](_0x2d1511)&&(this['_document']['createRoot']('$root',_0x2d1511)['_isAttached']=!0x1);}const _0x5f504c=_0x43324d['fromJSON'](_0x3e5719,this['_document']);return _0x5f504c['wasUndone']=_0x3e5719['wasUndone'],_0x5f504c['_isInit']=_0x476b83,_0x5f504c['_authorId']=_0x476b83?null:_0x147512[_0x5ede52]['userId'],_0x5f504c['_isDisconnection']='cs:removeUser'===_0x147512[_0x5ede52]['type'],_0x5f504c['createdAt']=_0x147512[_0x5ede52]['createdAt'],_0x5f504c;});}['_refreshUserSelectionMarkers'](){this['_hasSelectionChanged']=!0x0,this['_shouldSendSelectionUpdate']()?this['_sendBufferedOperationsDelayed']():this['_hasSelectionChanged']=!0x1;}['_shouldSendSelectionUpdate'](){const _0x2db2e8=this['editor']['plugins']['get'](Y)['channelSessions']['get'](this['_channelId']);return!this['editor']['isReadOnly']&&!!_0x2db2e8&&_0x2db2e8['length']>0x1&&this['_hasSelectionChanged'];}['_shouldSendUpdate'](){return this['_bufferedOperations']['length']>0x0||this['_shouldSendSelectionUpdate']();}}class et extends Error{}function st(_0x13c12d,_0x212eaa){for(const _0x577680 of _0x13c12d)_0x577680['baseVersion']=_0x212eaa++;}class it{['_ignoredOperations'];['_operationToId'];constructor(_0x397be3){this['_ignoredOperations']=_0x397be3,this['_operationToId']=new WeakMap();}['getIdOfTheLastOperation'](_0x28e092){let _0x1de6d0=_0x28e092['length'];for(;_0x1de6d0--;){const _0x795ce5=_0x28e092[_0x1de6d0];if(!this['_ignoredOperations']['has'](_0x795ce5)){if(!this['_operationToId']['has'](_0x795ce5)){const _0x489ae3=_0x249687()['slice'](0x1,0x12);this['_operationToId']['set'](_0x795ce5,_0x489ae3);}return this['_operationToId']['get'](_0x795ce5);}}}['setIdForTheLastOperation'](_0x833185,_0x2cee8b){if(!_0x2cee8b)return;let _0x33a22b=_0x833185['length'];for(;_0x33a22b--;){const _0x18b861=_0x833185[_0x33a22b];this['_ignoredOperations']['has'](_0x18b861)||this['_operationToId']['set'](_0x18b861,_0x2cee8b);}}}class nt extends _0x5dd355{static get['requires'](){return[tt];}static get['pluginName'](){return'RealTimeCollaborativeEditing';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}class ot extends _0x53a76{static ['CommentsService']=/* #__PURE__ -- @preserve */
|
|
26
|
-
((()=>_0x1af6f7)());['_services'];static get['requires'](){return[z,_0xa1c674,Y,_0x3a80aa];}static get['pluginName'](){return'CloudServicesCommentsAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x360c5b){super(_0x360c5b),this['_services']=new Map();}async['init'](){const _0x1860d4=this['context'],_0x1cbb01=_0x1860d4['plugins']['get'](_0xa1c674);if(_0x1860d4['plugins']['get'](z)['addToReconnectionStack'](this),_0x1cbb01['adapter']={'addCommentThread':async({channelId:_0x512859,threadId:_0x4e3f91,comments:_0x4cd1fd,resolvedAt:_0x33eb25,resolvedBy:_0x4149bd,context:_0x2ad12d,attributes:_0x5ebd15})=>{const _0x4e3412=await this['_getService'](_0x512859)['addCommentThread']({'commentThreadId':_0x4e3f91,'comments':_0x4cd1fd['map'](_0x45443a=>function(_0x4dd625,_0x5106b3,_0x131afd){return{'commentThreadId':_0x131afd,'commentId':_0x4dd625['commentId'],'userId':_0x4dd625['authorId'],'content':_0x4dd625['content'],'documentId':_0x5106b3,'createdAt':_0x4dd625['createdAt'],'attributes':_0x4dd625['attributes']||{}};}(_0x45443a,_0x512859,_0x4e3f91)),'resolvedAt':_0x33eb25,'resolvedBy':_0x4149bd,'context':_0x2ad12d,'attributes':_0x5ebd15})['catch'](ct);return{'threadId':_0x4e3412['commentThreadId'],'comments':_0x4e3412['comments']};},'getCommentThread':async({channelId:_0xcaaaa9,threadId:_0x1b30d2})=>{const _0x4454d7=await this['_getService'](_0xcaaaa9)['getCommentThread'](_0x1b30d2)['catch'](rt)['catch'](ct);return _0x4454d7?_0x4454d7['deletedAt']?null:(await this['_fetchMissingUsersForThreads']([_0x4454d7]),{'threadId':_0x4454d7['commentThreadId'],'comments':_0x4454d7['comments']['map'](at),'context':_0x4454d7['context'],'resolvedAt':_0x4454d7['resolvedAt'],'resolvedBy':_0x4454d7['resolvedBy'],'attributes':_0x4454d7['attributes']||{}}):null;},'updateCommentThread':async({channelId:_0x3893f1,threadId:_0x1a042f,context:_0x3815ae,unlinkedAt:_0x5e12b4,attributes:_0x4e188a})=>this['_getService'](_0x3893f1)['updateCommentThread']({'commentThreadId':_0x1a042f,'context':_0x3815ae,'attributes':_0x4e188a,'unlinkedAt':_0x5e12b4})['catch'](rt)['catch'](ct),'resolveCommentThread':async({channelId:_0x5046fc,threadId:_0x34d087})=>{const _0x5dfb00=await this['_getService'](_0x5046fc)['resolveCommentThread'](_0x34d087)['catch'](rt)['catch'](ct);return{'threadId':_0x5dfb00['commentThreadId'],'resolvedAt':_0x5dfb00['resolvedAt'],'resolvedBy':_0x5dfb00['resolvedBy']};},'reopenCommentThread':async({channelId:_0x343a0a,threadId:_0x360b48})=>this['_getService'](_0x343a0a)['reopenCommentThread'](_0x360b48)['catch'](rt)['catch'](ct),'removeCommentThread':({channelId:_0x23f756,threadId:_0x133115})=>this['_getService'](_0x23f756)['removeCommentThread'](_0x133115)['catch'](rt)['catch'](ct),'addComment':({channelId:_0x112221,threadId:_0xffab70,commentId:_0x4f523a,content:_0x1d2ec8,attributes:_0x4433e9})=>this['_getService'](_0x112221)['addComment'](_0xffab70,_0x4f523a,_0x1d2ec8,_0x4433e9)['catch'](ct),'updateComment':({channelId:_0x4c25b5,threadId:_0x4242e4,commentId:_0x18d75a,content:_0xd9c364,attributes:_0x92e7f2})=>this['_getService'](_0x4c25b5)['updateComment'](_0x4242e4,_0x18d75a,_0xd9c364,_0x92e7f2)['catch'](rt)['catch'](ct),'removeComment':({channelId:_0x5418b5,threadId:_0x1551ad,commentId:_0x1d4327})=>this['_getService'](_0x5418b5)['removeComment'](_0x1551ad,_0x1d4327)['catch'](rt)['catch'](ct)},_0x1860d4 instanceof _0x590382){const _0x2ecb75=_0x1860d4['config']['get']('collaboration.channelId'),_0x228aac=_0x1860d4['plugins']['get'](Y);await this['_setUpService'](_0x2ecb75);const _0x1078ee=await this['_services']['get'](_0x2ecb75)['getConnectedSessions']();this['listenTo'](_0x228aac,'sessionAdd:'+_0x2ecb75,(_0x376ba2,{session:_0x15db05})=>{_0x15db05['id']===_0x228aac['mySessionId']&&(_0x376ba2['off'](),this['context']['plugins']['get']('Permissions')['setPermissions'](_0x15db05['permissions'],_0x2ecb75));}),_0x228aac['register'](_0x2ecb75,_0x1078ee);}}async['_setUpService'](_0x4c6d74){if(this['_services']['has'](_0x4c6d74))throw new _0x32c009('cloudservicescommentsadapter-connect-already-connected',null,{'channelId':_0x4c6d74});const _0x1d7768=this['context']['plugins']['get'](_0xa1c674),_0x5e1ad1=new ot['CommentsService'](_0x4c6d74);this['_services']['set'](_0x4c6d74,_0x5e1ad1),this['listenTo'](_0x5e1ad1,'commentThreadAdded',(_0x1ed506,_0x49df93)=>{const {commentThreadId:_0x2ebdb4,documentId:_0x292cc7,context:_0x597788,attributes:_0x483533,resolvedAt:_0x4469cf,resolvedBy:_0x5f183b,comments:_0x28503c}=_0x49df93;_0x1d7768['getCommentThread'](_0x2ebdb4)||_0x1d7768['addCommentThread']({'threadId':_0x2ebdb4,'channelId':_0x292cc7,'comments':_0x28503c?_0x28503c['map'](at):[],'context':_0x597788,'attributes':_0x483533,'resolvedAt':_0x4469cf,'resolvedBy':_0x5f183b,'isFromAdapter':!0x0});}),this['listenTo'](_0x5e1ad1,'commentThreadUpdated',(_0x5d316c,{commentThreadId:_0x21bc69,documentId:_0x56ffa0,context:_0xd8cc2,unlinkedAt:_0x19252e,attributes:_0xdf3624})=>{_0x1d7768['getCommentThread'](_0x21bc69)&&_0x1d7768['updateCommentThread']({'threadId':_0x21bc69,'channelId':_0x56ffa0,'context':_0xd8cc2,'unlinkedAt':_0x19252e,'attributes':_0xdf3624,'isFromAdapter':!0x0});}),this['listenTo'](_0x5e1ad1,'commentThreadResolved',(_0x578019,{commentThreadId:_0x57965c,resolvedBy:_0x477081,resolvedAt:_0x214178})=>{const _0x2ff147=_0x1d7768['getCommentThread'](_0x57965c);_0x2ff147&&_0x2ff147['resolve']({'resolvedBy':_0x477081,'resolvedAt':_0x214178,'isFromAdapter':!0x0});}),this['listenTo'](_0x5e1ad1,'commentThreadReopened',(_0x3791c0,{commentThreadId:_0x3f7ada})=>{const _0x57a728=_0x1d7768['getCommentThread'](_0x3f7ada);_0x57a728&&_0x57a728['reopen']({'isFromAdapter':!0x0});}),this['listenTo'](_0x5e1ad1,'commentThreadRemoved',(_0x1b0c7f,{commentThreadId:_0x510e48})=>{const _0x104611=_0x1d7768['getCommentThread'](_0x510e48);_0x104611&&_0x104611['remove']({'isFromAdapter':!0x0});}),this['listenTo'](_0x5e1ad1,'commentAdded',(_0x41f01c,_0x5bf212)=>{const _0x3dba80=_0x5bf212['commentThreadId'],_0x39ae54=_0x1d7768['getCommentThread'](_0x3dba80);_0x39ae54&&_0x39ae54['addComment']({...at(_0x5bf212),'isFromAdapter':!0x0});}),this['listenTo'](_0x5e1ad1,'commentUpdated',(_0xe97c0e,{commentThreadId:_0x387550,commentId:_0xad3e8f,content:_0x2bbc72,attributes:_0x5015b9})=>{const _0x165813=_0x1d7768['getCommentThread'](_0x387550);if(_0x165813){const _0x11d847=_0x165813['getComment'](_0xad3e8f);_0x11d847&&_0x11d847['update']({'content':_0x2bbc72,'attributes':_0x5015b9,'isFromAdapter':!0x0});}}),this['listenTo'](_0x5e1ad1,'commentRemoved',(_0x343787,{commentThreadId:_0x27153c,commentId:_0x480934})=>{const _0x416320=_0x1d7768['getCommentThread'](_0x27153c);if(_0x416320){const _0x55d57f=_0x416320['getComment'](_0x480934);_0x55d57f&&_0x55d57f['remove']({'isFromAdapter':!0x0});}}),await this['_connectService'](_0x4c6d74);}['destroy'](){if(this['context']instanceof _0x590382){const _0x26b0f4=this['context']['config']['get']('collaboration.channelId');this['_terminateService'](_0x26b0f4);}}['_terminateService'](_0x20a5fa){if(!this['_services']['has'](_0x20a5fa))throw new _0x32c009('cloudservicescommentsadapter-disconnect-not-exist',null,{'channelId':_0x20a5fa});this['_getService'](_0x20a5fa)['disconnect'](),this['_services']['delete'](_0x20a5fa);}async['reconnect'](){for(const _0x51e38d of this['_services']['keys']())await this['_connectService'](_0x51e38d);if(this['context']instanceof _0x590382){const _0x1edf8e=this['context']['config']['get']('collaboration.channelId'),_0x40b373=this['context']['plugins']['get'](Y);_0x40b373['unregister'](_0x1edf8e);const _0x378240=await this['_services']['get'](_0x1edf8e)['getConnectedSessions']();_0x40b373['register'](_0x1edf8e,_0x378240);}}async['_connectService'](_0x1aa465){const {connection:_0x1d8324}=this['context']['plugins']['get'](z),_0x3ef63a=this['context']['plugins']['get'](_0xa1c674),_0x317821=this['_services']['get'](_0x1aa465),_0x2d2372=await _0x317821['connect'](_0x1d8324);await this['_fetchMissingUsersForThreads'](_0x2d2372);const _0x166701=new Set(Array['from'](_0x3ef63a['getCommentThreads']({'channelId':_0x1aa465}),_0x3467d9=>_0x3467d9['id']));for(const _0x57ac87 of _0x2d2372)_0x57ac87['deletedAt']||_0x166701['delete'](_0x57ac87['commentThreadId']);for(const _0x54aba6 of _0x166701)_0x3ef63a['getCommentThread'](_0x54aba6)['remove']({'isFromAdapter':!0x0});for(const _0x14d217 of _0x2d2372){let _0x57e89a=_0x3ef63a['getCommentThread'](_0x14d217['commentThreadId']);const {commentThreadId:_0x47e8d2,context:_0xdc9305,attributes:_0x15319e,resolvedBy:_0x100d5f,resolvedAt:_0x398359,unlinkedAt:_0x4962f7,deletedAt:_0x52b834}=_0x14d217;if(_0x52b834)continue;_0x57e89a||(_0x57e89a=_0x3ef63a['addCommentThread']({'channelId':_0x1aa465,'threadId':_0x47e8d2,'context':_0xdc9305,'attributes':_0x15319e||{},'resolvedBy':_0x100d5f,'resolvedAt':_0x398359,'unlinkedAt':_0x4962f7,'isFromAdapter':!0x0}));const _0x98eca7=new Set(Array['from'](_0x57e89a['comments'],_0x2fc23b=>_0x2fc23b['id']));for(const _0xdd8dc2 of _0x14d217['comments'])_0x98eca7['delete'](_0xdd8dc2['commentId']);for(const _0x3428de of _0x98eca7)_0x57e89a['getComment'](_0x3428de)['remove']({'isFromAdapter':!0x0});for(const _0x5f0a1c of _0x14d217['comments']){const _0x43c6b7=_0x57e89a['getComment'](_0x5f0a1c['commentId']);_0x43c6b7?_0x43c6b7['content']!==_0x5f0a1c['content']&&_0x43c6b7['update']({'content':_0x5f0a1c['content'],'isFromAdapter':!0x0}):_0x57e89a['addComment'](Object['assign'](at(_0x5f0a1c),{'isFromAdapter':!0x0}));}}}['_getService'](_0x5db962){if(!this['_services']['has'](_0x5db962))throw new _0x32c009('cloudservicescommentsadapter-service-not-exist',null,{'channelId':_0x5db962});return this['_services']['get'](_0x5db962);}async['_fetchMissingUsersForThreads'](_0x3e856a){const _0x14467c=this['context']['plugins']['get'](_0x3a80aa),{connection:_0x585ba6}=this['context']['plugins']['get'](z),_0x5333dd=new Set();for(const {resolvedBy:_0x333f08,comments:_0x3df525}of _0x3e856a){_0x333f08&&!_0x14467c['getUser'](_0x333f08)&&_0x5333dd['add'](_0x333f08);for(const {userId:_0x3bfe2a}of _0x3df525)_0x14467c['getUser'](_0x3bfe2a)||_0x5333dd['add'](_0x3bfe2a);}if(0x0===_0x5333dd['size'])return;const _0x441369=await _0xd9f1f6['getMany'](_0x585ba6,Array['from'](_0x5333dd));for(const _0x27e84f of _0x441369)_0x14467c['getUser'](_0x27e84f['id'])||_0x14467c['addUser'](_0x27e84f);}}async function rt(_0x458b69){if('404'!==_0x458b69['code'])throw _0x458b69;}function ct(_0x255726){if((_0x2e1f40=_0x255726)['message']['startsWith']('cloud-services-internal-error:\x20Comments\x20Service\x20is\x20not\x20connected.')||_0x2e1f40['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x2e1f40['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.'))return new Promise(()=>{});var _0x2e1f40;throw _0x255726;}function at(_0x2e49a0){return{'threadId':_0x2e49a0['commentThreadId'],'commentId':_0x2e49a0['commentId'],'content':_0x2e49a0['content'],'createdAt':_0x2e49a0['createdAt'],'authorId':_0x2e49a0['userId'],'attributes':_0x2e49a0['attributes']||{}};}class ht extends _0x5dd355{static ['TrackChangesService']=/* #__PURE__ -- @preserve */
|
|
27
|
-
((()=>
|
|
28
|
-
((()=>_0x5ab0db)());['_lastRequestId'];['_revisionTracker'];['_revisionHistoryService'];['_oldOffset'];static get['requires'](){return[z,tt,_0x4f781c,Y,_0x3a80aa];}static get['pluginName'](){return'CloudServicesRevisionHistoryAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x15d952){super(_0x15d952);const _0xc86fee=this['editor']['config']['get']('collaboration.channelId');this['_lastRequestId']=null,this['_revisionTracker']=this['editor']['plugins']['get']('RevisionTracker'),this['_revisionHistoryService']=new mt['RevisionHistoryService'](_0xc86fee);}async['init'](){const _0x240b39=this['editor']['plugins']['get'](tt),_0x5dd54d=_0x240b39['serverHistory'],_0x58acb7=this['editor']['plugins']['get'](z);this['_revisionTracker']['setSource']({'history':_0x5dd54d,'getLatestVersion':()=>this['_getLatestVersion'](),'getCurrentRevisionId':()=>_0x240b39['sessionId']});const _0x36dc07=this['editor']['config']['get']('cloudServices.bundleVersion')||_0x12935f,_0x19dc92=await _0x3d0f6f['isBundleUploaded'](_0x58acb7['connection'],_0x36dc07);this['editor']['plugins']['get'](_0x4f781c)['adapter']={'getRevision':async({revisionId:_0x204000})=>(await this['_waitForServiceReady'](),await this['_revisionHistoryService']['getRevision'](_0x204000)),'updateRevisions':async _0x396a3d=>{await this['_waitForServiceReady']();const _0x2544e4=this['_revisionTracker']['currentRevision'];if(_0x19dc92&&0x1===_0x396a3d['length']&&_0x396a3d[0x0]['id']===_0x2544e4['id'])return _0x396a3d;for(const _0x1e4337 of _0x396a3d)_0x1e4337['id']===_0x2544e4['id']&&(_0x1e4337['isEmptyCurrent']=_0x1e4337['fromVersion']===_0x1e4337['toVersion']);return this['_revisionHistoryService']['updateRevisions'](_0x396a3d,this['_lastRequestId'])['then'](_0x3bf0e2=>(this['_lastRequestId']=_0x3bf0e2,_0x396a3d))['catch'](_0x48dc8a=>{if(pt(_0x48dc8a)||'400'===_0x48dc8a['code']&&void 0x0!==_0x48dc8a['data']['wrongRequestId']){for(const _0x1e2a38 of _0x396a3d){!this['_revisionTracker']['repository']['getRevision'](_0x1e2a38['id'])||this['_revisionTracker']['_bufferUpdate'](_0x1e2a38['id'],_0x1e2a38,!0x1);}if(pt(_0x48dc8a)&&'destroyed'!==this['editor']['state'])throw _0x48dc8a;return _0x396a3d;}throw _0x48dc8a;});}},this['listenTo'](this['_revisionHistoryService'],'revisionsUpdated',(_0x78cd20,{revisionsData:_0x44cdd7,requestId:_0x35ee97})=>{Math['max'](..._0x44cdd7['map'](_0x486a47=>_0x486a47['toVersion']))>this['_getLatestVersionFromServerOperations']()-0x1?this['_getLatestVersion']()['then'](()=>{this['_handleRevisionsUpdate'](_0x44cdd7,_0x35ee97);}):this['_handleRevisionsUpdate'](_0x44cdd7,_0x35ee97);});const {revisions:_0x38dfc7,requestId:_0x18739a}=await this['_revisionHistoryService']['connect'](_0x58acb7['connection']);_0x58acb7['addToReconnectionStack'](this),this['_lastRequestId']=_0x18739a,await this['_fetchMissingUsers'](_0x38dfc7);for(const _0x91d6a2 of _0x38dfc7)this['_revisionTracker']['addRevisionData'](_0x91d6a2);this['listenTo'](_0x240b39,'change:_isConnected',(_0x23e4cd,_0x288a81,_0x183201)=>{_0x183201&&(this['_oldOffset']=_0x240b39['_offset'],_0x23e4cd['off']());}),this['_revisionTracker']['bind']('isEnabled')['to'](_0x58acb7,'state',_0x251f26=>_0x251f26===_0x5366a4['CONNECTED']);}async['reconnect'](){const _0x31e89a=this['editor']['plugins']['get'](z),_0x3ce0ca=this['editor']['plugins']['get'](tt),_0x1afb4d=async()=>{const _0xfa7ad=this['_revisionTracker']['currentRevision'],_0xca8728=_0xfa7ad['id'],_0x26f5a8=_0xca8728!==_0x3ce0ca['sessionId'];if(_0x26f5a8){const _0x1c6c1b=_0x3ce0ca['_offset']-this['_oldOffset'],_0x3d49bc=this['_getLatestVersionFromServerOperations']();this['_revisionTracker']['_revisionDataBuilder']['reInit']();if(_0xfa7ad['toVersion']+_0x1c6c1b!==_0x3d49bc){const _0x22d1c0=_0xfa7ad['fromVersion']+_0x1c6c1b,_0x2b79bf=this['editor']['plugins']['get'](_0x3a80aa),_0x255d71=this['_revisionTracker']['buildRevisionData']({'revision':_0xfa7ad,'from':_0x22d1c0,'to':_0x3d49bc});_0x255d71['id']=_0xfa7ad['id'];const _0x5e2c0a=_0x255d71['authorsIds']['map'](_0x470a76=>_0x2b79bf['getUser'](_0x470a76));_0xfa7ad['_update']({..._0x255d71,'authors':_0x5e2c0a},!0x0),this['_revisionTracker']['_bufferUpdate'](_0xfa7ad['id'],_0x255d71,!0x0);}this['_revisionTracker']['_startingVersion']=_0x3d49bc,(_0xfa7ad['toVersion']===_0xfa7ad['fromVersion']&&!this['_revisionTracker']['_bufferedUpdates']['has'](_0xca8728)&&this['_revisionTracker']['repository']['_revisions']['remove'](_0xca8728),this['_revisionTracker']['_createCurrentRevision'](_0x3d49bc));}const {revisions:_0x21753f,requestId:_0x515c7d}=await this['_revisionHistoryService']['reconnect'](_0x31e89a['connection'],this['_lastRequestId']);_0x26f5a8&&_0x21753f['length']>0x0?_0x3ce0ca['_handleReconnectionError']():(await this['_fetchMissingUsers'](_0x21753f),this['_handleRevisionsUpdate'](_0x21753f,_0x515c7d),this['_revisionTracker']['sendBufferedUpdates']());};return _0x3ce0ca['_isConnected']?_0x1afb4d():new Promise((_0x524656,_0x10f47d)=>{_0x3ce0ca['once']('change:_isConnected',()=>{_0x1afb4d()['then'](_0x524656)['catch'](_0x10f47d);});});}['destroy'](){super['destroy']();}async['_waitForServiceReady'](){this['_revisionHistoryService']['isConnected']||await new Promise(_0x360673=>{this['listenTo'](this['_revisionHistoryService'],'connected',_0x3f62bf=>{_0x3f62bf['off'](),_0x360673();});});}['_getLatestVersionFromServerOperations'](){const _0x54a76e=this['editor']['plugins']['get'](tt)['serverHistory']['getOperations']()['reverse']();for(const _0x288734 of _0x54a76e)if('marker'!==_0x288734['type']||_0x288734['affectsData'])return _0x288734['baseVersion']+0x1;}['_getLatestVersion'](){const _0x2c5075=this['editor']['plugins']['get'](tt);return new Promise(_0x3ddd2a=>{_0x2c5075['_isPendingUpdate']?_0x2c5075['once']('change:_isPendingUpdate',()=>{_0x3ddd2a(this['_getLatestVersionFromServerOperations']());}):_0x3ddd2a(this['_getLatestVersionFromServerOperations']());});}['_handleRevisionsUpdate'](_0x539cf4,_0x2eb58a){const _0x49093d=this['_revisionTracker']['repository'];this['_lastRequestId']=_0x2eb58a;for(const _0x4e4503 of _0x539cf4){const _0x4062d0=_0x49093d['getRevision'](_0x4e4503['id']);if(_0x4062d0){if((_0x4e4503['fromVersion']||_0x4e4503['toVersion'])&&(_0x4e4503['diffData']=null),_0x4062d0===this['_revisionTracker']['currentRevision']){const _0x5e0949=Math['max'](_0x4062d0['toVersion'],_0x4e4503['toVersion']),_0x538e7c=Math['max'](_0x4062d0['fromVersion'],_0x4e4503['fromVersion']);let _0x55214a;_0x4062d0['toVersion']===_0x4e4503['toVersion']&&_0x4062d0['fromVersion']===_0x4e4503['fromVersion']?(_0x55214a=!0x0,this['_preventResendingRevisionData'](_0x4e4503)):_0x4e4503['toVersion']===_0x5e0949&&_0x4e4503['fromVersion']===_0x538e7c?_0x55214a=!0x1:(_0x4062d0['toVersion']===_0x5e0949&&_0x4062d0['fromVersion']===_0x538e7c||this['_fixRevision']({'revision':_0x4062d0,'from':_0x538e7c,'to':_0x5e0949}),_0x55214a=!0x0),_0x55214a&&(delete _0x4e4503['fromVersion'],delete _0x4e4503['toVersion'],delete _0x4e4503['diffData'],delete _0x4e4503['createdAt'],delete _0x4e4503['authorsIds']);}this['_revisionTracker']['setRevisionData'](_0x4e4503),this['_preventResendingRevisionData'](_0x4e4503);}else this['_revisionTracker']['addRevisionData'](_0x4e4503);}const _0x2b0429=_0x49093d['getRevisions']();_0x2b0429['reverse']();for(let _0x3212ca=0x0;_0x3212ca<_0x2b0429['length']-0x1;_0x3212ca++){const _0x51b315=_0x2b0429[_0x3212ca],_0x24767a=_0x2b0429[_0x3212ca+0x1];if(_0x51b315['fromVersion']<_0x24767a['toVersion']){const _0x33a584=_0x24767a['toVersion'],_0x1ecead=Math['max'](_0x33a584,_0x51b315['toVersion']);this['_fixRevision']({'revision':_0x51b315,'from':_0x33a584,'to':_0x1ecead});}}}['_fixRevision']({revision:_0x5cc885,from:_0x5ac7a2,to:_0x4c153b}={}){const _0x29d872=this['editor']['plugins']['get'](_0x3a80aa),_0x63f29c=this['_revisionTracker']['buildRevisionData']({'revision':_0x5cc885,'from':_0x5ac7a2,'to':_0x4c153b});_0x63f29c['authors']=_0x63f29c['authorsIds']['map'](_0x3fa547=>_0x29d872['getUser'](_0x3fa547)),_0x5cc885['_update'](_0x63f29c);}['_preventResendingRevisionData'](_0x539b87){const _0x593077={};_0x593077['id']=_0x539b87['id'];for(const _0x3f4a77 of Object['keys'](_0x539b87))'id'!==_0x3f4a77&&(_0x593077[_0x3f4a77]=void 0x0);this['_revisionTracker']['_bufferUpdate'](_0x593077['id'],_0x593077,!0x0);}async['_fetchMissingUsers'](_0x16fb17){const _0x5a1e16=this['editor']['plugins']['get'](_0x3a80aa),{connection:_0x2101a0}=this['editor']['plugins']['get'](z),_0x158e78=new Set();for(const _0x522c60 of _0x16fb17){for(const _0x273a59 of _0x522c60['authorsIds'])_0x5306a7(_0x273a59);_0x522c60['creatorId']&&_0x5306a7(_0x522c60['creatorId']);}if(0x0===_0x158e78['size'])return;const _0xa3a258=await _0xd9f1f6['getMany'](_0x2101a0,Array['from'](_0x158e78));for(const _0xd499f2 of _0xa3a258)_0x5a1e16['getUser'](_0xd499f2['id'])||_0x5a1e16['addUser'](_0xd499f2);function _0x5306a7(_0x43f27e){_0x5a1e16['getUser'](_0x43f27e)||_0x158e78['add'](_0x43f27e);}}}function pt(_0x24f5d2){return _0x24f5d2['message']['startsWith']('cloud-services-internal-error:\x20Revision\x20History\x20Service\x20is\x20not\x20connected.')||_0x24f5d2['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x24f5d2['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}class gt extends _0x5dd355{static get['requires'](){return[_0x4f781c,mt,nt];}static get['pluginName'](){return'RealTimeCollaborativeRevisionHistory';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}class wt extends _0x1ba7c4{['_collapseAt'];constructor(_0xb82de,_0x5d30e7=0x6){super(_0xb82de);const _0x11904c=this['bindTemplate'];this['set']('isHidden',!0x0),this['set']('usersCount',0x0),this['_collapseAt']=_0x5d30e7,this['bind']('isHidden')['to'](this,'usersCount',_0x1c0899=>_0x1c0899<_0x5d30e7),this['setTemplate']({'tag':'div','attributes':{'class':['ck','ck-presence-list__list-item',_0x11904c['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':_0x11904c['to']('usersCount',_0x1b7f4c=>'+'+(_0x1b7f4c-this['_collapseAt']+0x2)['toString']())}]}]}]});}}class vt extends _0x1ba7c4{['items'];['keystrokes'];constructor(_0x2e0b8c){super(_0x2e0b8c);const _0x594e5f=this['bindTemplate'];this['items']=this['createCollection'](),this['keystrokes']=new _0x519e0d(),this['set']({'hasPopup':!0x1,'isExpanded':!0x1}),this['setTemplate']({'tag':'div','attributes':{'aria-haspopup':_0x594e5f['if']('hasPopup'),'aria-expanded':_0x594e5f['to']('isExpanded',_0x5865d6=>this['hasPopup']&&String(_0x5865d6)),'aria-label':_0x594e5f['to']('hasPopup',_0x7dcbae=>X(_0x2e0b8c,_0x7dcbae?'Collapsed\x20connected\x20users\x20list\x20(press\x20ENTER\x20to\x20open\x20it)':'Connected\x20users\x20list')),'role':'list','tabindex':_0x594e5f['to']('hasPopup',_0x5b45b8=>!!_0x5b45b8&&0x0),'class':['ck','ck-presence-list__list']},'children':this['items'],'on':{'mouseenter':_0x594e5f['to'](()=>this['fire']('presencelist:show')),'mouseleave':_0x594e5f['to'](_0x61ca2f=>{const _0x20675a=_0x61ca2f,_0x274b37=document['querySelector']('.ck-presence-list__dropdown-list'),_0x498279=document['querySelector']('.ck-balloon-panel_with-arrow');_0x274b37?.['contains'](_0x20675a['relatedTarget'])||_0x498279?.['contains'](_0x20675a['relatedTarget'])||this['fire']('presencelist:hide');})}}),this['on']('change:hasPopup',(_0x6be5ea,_0x44c28d,_0x14def3)=>{this['element']&&(_0x14def3?this['element']['setAttribute']('aria-expanded',String(this['isExpanded'])):this['element']['removeAttribute']('aria-expanded'));});}['focus'](){this['element']['focus']();}['render'](){super['render'](),this['keystrokes']['listenTo'](this['element']);}}class _t extends _0x1ba7c4{['counterView'];['inlineListView'];constructor(_0x2e852b,_0x1a6cf2=0x6){super(_0x2e852b);const _0xb0f0fa=this['bindTemplate'];this['set']('isCollapsed',!0x0),this['counterView']=new wt(this['locale'],_0x1a6cf2),this['inlineListView']=new vt(_0x2e852b),this['inlineListView']['bind']('hasPopup')['to'](this,'isCollapsed'),this['listenTo'](this['inlineListView']['items'],'change',()=>{for(const _0x40dbca of this['inlineListView']['items'])_0x40dbca['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',_0xb0f0fa['if']('isCollapsed','ck-presence-list--collapsed')]},'children':[this['inlineListView']]});}}class yt extends _0x1ba7c4{['listWrapperView'];constructor(_0x20cef6,_0x494cf0){super(_0x20cef6);const _0x155609=this['bindTemplate'];this['listWrapperView']=new bt(_0x20cef6,_0x494cf0),this['setTemplate']({'tag':'div','attributes':{'tabindex':-0x1,'role':'application','class':['ck','ck-presence-list__dropdown-list'],'aria-label':X(_0x20cef6,'Connected\x20users\x20list\x20dropdown\x20menu')},'children':[this['listWrapperView']],'on':{'mouseleave':_0x155609['to'](_0x377c68=>{const _0x48b811=_0x377c68,_0x17f3cd=document['querySelector']('.ck-presence-list__list'),_0x12176a=document['querySelector']('.ck-balloon-panel_with-arrow');_0x17f3cd?.['contains'](_0x48b811['relatedTarget'])||_0x12176a?.['contains'](_0x48b811['relatedTarget'])||this['fire']('presencelist:hide');})}});}}class bt extends _0x41531e{constructor(_0x5ab9d2,_0x2f8a5f){super(_0x5ab9d2);const _0x514611=this['bindTemplate'];this['set']('_isScrollable',!0x1),this['setTemplate']({'tag':_0x2f8a5f?'div':'ul','attributes':{'class':['ck','ck-reset','ck-list','ck-presence-list__dropdown-list-wrapper',_0x514611['if']('_isScrollable','ck-presence-list__dropdown-list-wrapper_scrollable')],'role':_0x514611['to']('role'),'aria-label':_0x514611['to']('ariaLabel'),'aria-labelledby':_0x514611['to']('ariaLabelledBy')},'children':this['items']}),this['listenTo'](_0x2bc8a6['window'],'resize',()=>this['checkIfScrollable']()),this['items']['on']('change',()=>this['checkIfScrollable']());}['render'](){super['render'](),this['checkIfScrollable']();}['checkIfScrollable'](){const _0x769edc=this['element'];_0x769edc&&(this['_isScrollable']=Math['max'](_0x769edc['scrollHeight'],_0x769edc['clientHeight'])>0.8*window['innerHeight']);}}class kt extends _0x2dced5{['userView'];constructor(_0x721c5,_0x112656,_0x33b29c){super(_0x721c5);const _0xfcf1c8=this['bindTemplate'];this['userView']=new _0x1c1683(_0x721c5,_0x112656);const _0x577fbc={'tag':'li','attributes':{'class':['ck','ck-presence-list__dropdown-list-item'],'tabindex':-0x1,'role':'presentation','aria-label':_0x112656['name']},'children':[this['userView'],{'tag':'span','attributes':{'class':['ck','ck-user__full-name']},'children':[{'text':_0x112656['name']}]},{'tag':'span','attributes':{'class':['ck','ck-presence-list__marker',_0x112656['color']['getBackgroundColorClass']()],'style':{'--ck-user-color':_0x112656['color']['getColorVariable'](),'--ck-user-color-alpha':_0x112656['color']['getColorAlphaVariable']()},'aria-hidden':'true'}}]};_0x33b29c&&(_0x577fbc['tag']='button',_0x577fbc['on']={'click':_0xfcf1c8['to'](()=>this['fire']('execute'))}),this['setTemplate'](_0x577fbc);}['focus'](){this['element']['focus']();}}class It extends _0x1ba7c4{['userView'];['markerView'];constructor(_0x1f8496,_0x4f804f,_0x28b31b){super(_0x1f8496);const _0x3f4a88=this['bindTemplate'];this['set']('isFocusable',!0x1),this['set']('hasTooltip',!0x0),this['set']('tooltipPosition',''),this['userView']=new _0x1c1683(_0x1f8496,_0x4f804f),this['markerView']=new St(_0x1f8496,_0x4f804f);const _0x1677a2=new _0x1a4d5e(_0x1f8496);_0x1677a2['template']['tag']='span',_0x1677a2['text']=_0x4f804f['name'];const _0x34ae={'tag':'div','attributes':{'class':['ck','ck-presence-list__list-item'],'role':'listitem','tabindex':_0x3f4a88['to']('isFocusable',_0x5980b5=>!!_0x5980b5&&0x0),'aria-labelledby':_0x1677a2['id'],'data-cke-tooltip-text':this['userView']['name'],'data-cke-tooltip-position':_0x3f4a88['to']('tooltipPosition'),'data-cke-tooltip-disabled':_0x3f4a88['to']('hasTooltip',_0x2eaa0e=>!_0x2eaa0e),'data-cke-tooltip-class':'ck-presence-list__list-item__tooltip'},'children':[this['userView'],this['markerView'],_0x1677a2]};_0x28b31b&&(_0x34ae['tag']='button',_0x34ae['on']={'click':_0x3f4a88['to'](()=>this['fire']('execute'))}),this['setTemplate'](_0x34ae);}}class St extends _0x1ba7c4{constructor(_0x1687b6,_0x42e3d8){super(_0x1687b6),this['setTemplate']({'tag':'span','attributes':{'class':['ck','ck-presence-list__marker',_0x42e3d8['color']['getBackgroundColorClass']()],'style':{'--ck-user-color':_0x42e3d8['color']['getColorVariable'](),'--ck-user-color-alpha':_0x42e3d8['color']['getColorAlphaVariable']()},'aria-hidden':'true'}});}}const Tt={'collapseAt':0x6,'displayMe':!0x0};class At extends _0x53a76{['currentDisplayedUsers'];['balloonPanelView'];['view'];['presenceDropdownView'];['_bodyCollection']=null;static get['pluginName'](){return'PresenceListUI';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x2bcbbf){super(_0x2bcbbf),this['context']['config']['define']('presenceList',Tt);const _0x518fce=_0x2bcbbf['config']['get']('presenceList.collapseAt');if('number'!=typeof _0x518fce)throw new _0x32c009('presencelist-collapseat-invalid-format',this);if(_0x518fce<0x1)throw new _0x32c009('presencelist-collapseat-invalid-format',this);this['_allConnectedUsers']=this['context']['plugins']['get'](Y)['allConnectedUsers'],this['set']('usersCount',0x0),this['currentDisplayedUsers']=new _0x5e7903(),this['balloonPanelView']=new _0x19fd24(),this['balloonPanelView']['class']='ck\x20ck-presence-list__balloon',this['view']=this['_createView'](),this['presenceDropdownView']=void 0x0;}static get['requires'](){return[Y];}['init'](){for(const _0x10d5c6 of this['_allConnectedUsers'])this['_handleUserAdd'](_0x10d5c6);this['listenTo'](this['_allConnectedUsers'],'add',(_0xb8660d,_0x42d76a)=>{this['_handleUserAdd'](_0x42d76a);}),this['listenTo'](this['_allConnectedUsers'],'remove',(_0x35d314,_0x30bf54)=>{this['_handleUserRemove'](_0x30bf54);});}['_createView'](){const _0x37adbd=this['context'],_0x45caaf=new _t(this['context']['locale'],this['context']['config']['get']('presenceList.collapseAt')),_0x4c014a=this['balloonPanelView'];if(!_0x4fae5c(_0x37adbd['config']['get']('presenceList.container')))throw new _0x32c009('presencelist-missing-container',this);return _0x45caaf['counterView']['bind']('usersCount')['to'](this),_0x45caaf['bind']('isCollapsed')['to'](this,'usersCount',_0x210721=>{const {collapseAt:_0x31bcc1}=_0x37adbd['config']['get']('presenceList'),_0x6db644=_0x210721>=_0x31bcc1;if(_0x6db644&&!_0x45caaf['inlineListView']['items']['find'](_0x3aa047=>_0x3aa047 instanceof wt)){const _0x5e76f6=this['context']['config']['get']('presenceList.collapseAt')-0x1;this['currentDisplayedUsers']['length']==_0x5e76f6&&this['currentDisplayedUsers']['length']>0x1&&this['currentDisplayedUsers']['remove'](this['currentDisplayedUsers']['length']-0x1),_0x45caaf['inlineListView']['items']['add'](_0x45caaf['counterView']);}return _0x6db644||this['hideDropdown'](),_0x6db644;}),_0x45caaf['inlineListView']['items']['bindTo'](this['currentDisplayedUsers'])['using'](_0xb8d072=>{const _0x52af37=_0x37adbd['config']['get']('presenceList'),_0x4acb28=new It(_0x37adbd['locale'],_0xb8d072,!!_0x52af37['onClick']);return _0x4acb28['bind']('hasTooltip')['to'](_0x45caaf,'isCollapsed',_0x57d90b=>!_0x57d90b),_0x4acb28['bind']('isFocusable')['to'](_0x45caaf,'isCollapsed',_0x2b35c8=>!_0x2b35c8),_0x52af37['onClick']&&this['listenTo'](_0x4acb28,'execute',()=>{this['view']['isCollapsed']||_0x52af37['onClick'](_0xb8d072,_0x4acb28['element']);}),_0x4acb28;}),this['listenTo'](_0x45caaf['inlineListView'],'presencelist:show',()=>{this['view']['isCollapsed']&&this['showDropdown']();}),this['listenTo'](_0x45caaf['inlineListView'],'presencelist:hide',()=>{this['presenceDropdownView']&&this['hideDropdown']();}),_0x45caaf['inlineListView']['keystrokes']['set']('Enter',(_0x346c3a,_0x30d5cf)=>{this['view']['isCollapsed']&&(this['showDropdown'](),_0x30d5cf());}),_0x45caaf['render'](),_0x4c014a['render'](),_0x209f0e({'emitter':_0x45caaf,'activator':()=>_0x4c014a['isVisible'],'contextElements':[_0x4c014a['element'],_0x45caaf['inlineListView']['element']],'callback':()=>this['hideDropdown']()}),_0x37adbd['config']['get']('presenceList.container')['appendChild'](_0x45caaf['element']),this['_bodyCollection']=new _0x401395(this['context']['locale']),this['_bodyCollection']['attachToDom'](),this['_bodyCollection']['add'](this['balloonPanelView']),_0x45caaf;}['_handleUserAdd'](_0x243b49){if(!this['context']['config']['get']('presenceList.displayMe')&&_0x243b49['isMe'])return;const _0x2ed0b2=this['context']['config']['get']('presenceList.collapseAt')-0x1;for(this['usersCount']++;this['currentDisplayedUsers']['length']>=_0x2ed0b2-(this['view']['isCollapsed']?0x1:0x0)&&this['currentDisplayedUsers']['length']>0x1;)this['currentDisplayedUsers']['remove'](0x1);const _0x5c0184=_0x243b49['isMe']?0x0:this['currentDisplayedUsers']['length'];this['currentDisplayedUsers']['add'](_0x243b49,_0x5c0184);}['_handleUserRemove'](_0x816810){this['usersCount']--;const {collapseAt:_0x13d15a}=this['context']['config']['get']('presenceList'),_0x353cb8=this['usersCount']>=_0x13d15a;if(this['currentDisplayedUsers']['get'](_0x816810['id']))this['currentDisplayedUsers']['remove'](_0x816810['id']);else{if(_0x353cb8&&this['currentDisplayedUsers']['length']+0x1===_0x13d15a-0x1)return;}if(this['currentDisplayedUsers']['length']+(_0x353cb8?0x1:0x0)<this['usersCount']){for(const _0x591a7a of Array['from'](this['_allConnectedUsers'])['reverse']())if(!this['currentDisplayedUsers']['get'](_0x591a7a['id'])&&(this['currentDisplayedUsers']['add'](_0x591a7a,Math['min'](this['currentDisplayedUsers']['length']-(_0x353cb8?0x1:0x0),0x1)),this['currentDisplayedUsers']['length']+(_0x353cb8?0x1:0x0)===_0x13d15a-0x1))return;}}['showDropdown'](){if(this['presenceDropdownView'])return;const _0x57fc21=this['context']['config']['get']('presenceList');this['presenceDropdownView']=new yt(this['context']['locale'],!!_0x57fc21['onClick']),this['view']['inlineListView']['isExpanded']=!0x0,this['listenTo'](this['presenceDropdownView'],'presencelist:hide',()=>{this['presenceDropdownView']&&this['hideDropdown']();});const {listWrapperView:_0x1d8e82}=this['presenceDropdownView'];_0x1d8e82['items']['bindTo'](this['_allConnectedUsers'])['using'](_0x5a2aee=>{if(!_0x57fc21['displayMe']&&_0x5a2aee['isMe'])return null;const _0x2cfeea=new kt(this['context']['locale'],_0x5a2aee,!!_0x57fc21['onClick']);return _0x57fc21['onClick']&&this['listenTo'](_0x2cfeea,'execute',()=>{_0x57fc21['onClick'](_0x5a2aee,_0x2cfeea['element']);}),_0x2cfeea;}),this['balloonPanelView']['content']['add'](this['presenceDropdownView']),this['balloonPanelView']['pin']({'target':this['view']['inlineListView']['element']}),_0x1d8e82['focus'](),_0x1d8e82['checkIfScrollable']();const _0xa80f6f=(_0x263225,_0x2a7a96)=>{this['hideDropdown'](),this['view']['inlineListView']['focus'](),_0x2a7a96();};_0x1d8e82['keystrokes']['set']('Esc',_0xa80f6f),_0x1d8e82['keystrokes']['set']('Shift+Tab',_0xa80f6f),_0x1d8e82['keystrokes']['set']('Tab',(_0x339cb8,_0x4bb398)=>{!function(_0x1dd3db){const _0xa86f60=['a','button','input','select','textarea','[tabindex]','[contenteditable]']['map'](_0x3b2971=>_0x3b2971+':not([disabled]):not([tabindex=\x22-1\x22])')['join'](','),_0x1ab59c=[...document['body']['querySelectorAll'](_0xa86f60)]['filter'](_0x5077a9=>_0x5077a9===document['activeElement']||_0x5077a9['offsetWidth']+_0x5077a9['offsetHeight']>0x0)['sort']((_0x4383c4,_0x2af9f8)=>(_0x4383c4['tabIndex']||0x0)-(_0x2af9f8['tabIndex']||0x0)),_0x5cf97b=_0x1ab59c['indexOf'](_0x1dd3db),_0x3ecfbe=_0x1ab59c[(_0x5cf97b+0x1)%_0x1ab59c['length']];_0x3ecfbe&&_0x3ecfbe['focus']();}(this['view']['element']),this['hideDropdown'](),_0x4bb398();}),_0x1d8e82['focusTracker']['add'](this['view']['element']),_0x1d8e82['focusTracker']['on']('change:isFocused',(_0x4f7a89,_0x49480b,_0x5f3f3b)=>{_0x5f3f3b||this['hideDropdown']();});}['hideDropdown'](){this['presenceDropdownView']&&(this['view']['inlineListView']['isExpanded']=!0x1,this['balloonPanelView']['unpin'](),this['balloonPanelView']['content']['remove'](this['presenceDropdownView']),this['presenceDropdownView']['destroy'](),this['presenceDropdownView']=void 0x0);}['destroy'](){super['destroy'](),this['view']&&this['view']['isRendered']&&this['view']['destroy'](),this['_bodyCollection']&&(this['_bodyCollection']['detachFromDom'](),this['_bodyCollection']['destroy'](),this['_bodyCollection']=null);}}class Pt extends _0x53a76{static get['requires'](){return[Y,At];}static get['pluginName'](){return'PresenceList';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}export{ot as CloudServicesCommentsAdapter,mt as CloudServicesRevisionHistoryAdapter,ht as CloudServicesTrackChangesAdapter,Pt as PresenceList,At as PresenceListUI,tt as RealTimeCollaborationClient,ut as RealTimeCollaborativeComments,nt as RealTimeCollaborativeEditing,gt as RealTimeCollaborativeRevisionHistory,ft as RealTimeCollaborativeTrackChanges,Y as Sessions,z as WebSocketGateway};
|
|
23
|
+
import{ContextPlugin as _0x299a1f,Plugin as _0x39e050,PendingActions as _0x5d4659,Context as _0x431f86}from'@ckeditor/ckeditor5-core/dist/index.js';import{DomEmitterMixin as _0xf3f05,CKEditorError as _0x3d60ed,Collection as _0x3fe7eb,global as _0x390801,version as _0x3fc9a9,uid as _0x1cea96,KeystrokeHandler as _0x5441f9}from'@ckeditor/ckeditor5-utils/dist/index.js';import{Notification as _0x4eacfa,View as _0x517c2e,ListView as _0x2d51b1,ListItemView as _0x3c1ad7,LabelView as _0xfbd9bd,BalloonPanelView as _0x56d969,clickOutsideHandler as _0x157e4b,BodyCollection as _0x2cddbd}from'@ckeditor/ckeditor5-ui/dist/index.js';import{ModelLiveRange as _0x5e0b5f,History as _0x247f61,NoOperation as _0x4b944c,InsertOperation as _0x8ff524,MarkerOperation as _0x2fe41c,RootAttributeOperation as _0x46664c,transformOperationSets as _0x3341f1,OperationFactory as _0xd9a0c}from'@ckeditor/ckeditor5-engine/dist/index.js';import{CloudServices as _0x5b023b}from'@ckeditor/ckeditor5-cloud-services/dist/index.js';import{WebSocketGateway as _0x4c872a,WEB_SOCKET_GATEWAY_STATES as _0x41dc21,CollaborativeEditingService as _0x59838d,User as _0x460a04,CommentsService as _0x3d6374,TrackChangesService as _0x547bd0,RevisionHistoryService as _0x108128,EditorService as _0xf6489d}from'@ckeditor/ckeditor-cloud-services-collaboration';import{Users as _0x1a6e2b,UserView as _0x2a5839}from'@ckeditor/ckeditor5-collaboration-core/dist/index.js';import{Compressor as _0xbe09fb}from'@ckeditor/ckeditor5-operations-compressor';import{TrackChangesEditing as _0x10b620,TrackChanges as _0x11010e}from'@ckeditor/ckeditor5-track-changes/dist/index.js';import{CommentsRepository as _0x5c14d5,Comments as _0x135486,CommentsEditing as _0x20d61a}from'@ckeditor/ckeditor5-comments/dist/index.js';import{RevisionHistory as _0x1a2046}from'@ckeditor/ckeditor5-revision-history/dist/index.js';import{isElement as _0x3c49ac}from'es-toolkit/compat';class z extends _0x299a1f{static ['WebSocketGateway']=/* #__PURE__ -- @preserve */
|
|
24
|
+
((()=>_0x4c872a)());static ['initialReconnectionInterval']=0x3e8;['connection'];['_reconnectionStack'];['_shouldPluginsReconnect'];['_domEmitter'];static get['requires'](){return[_0x5b023b,_0x4eacfa];}static get['pluginName'](){return'WebSocketGateway';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x5e7c0b){super(_0x5e7c0b),this['set']('state',_0x41dc21['CONNECTED']),this['set']('_isBrowserOffline',!0x1),this['_reconnectionStack']=new Set(),this['_shouldPluginsReconnect']=!0x1,this['_domEmitter']=new(_0xf3f05())();}['init'](){const _0x49f48e=this['context'],_0x6e500c=_0x49f48e['plugins']['get'](_0x5b023b),_0x1113e4=_0x49f48e['plugins']['get'](_0x4eacfa);if(!_0x6e500c['token'])throw new _0x3d60ed('websocketgateway-missing-token',this);if(!_0x6e500c['webSocketUrl'])throw new _0x3d60ed('websocketgateway-missing-websocket-url',this);return this['_domEmitter']['listenTo'](window,'offline',()=>this['_isBrowserOffline']=!0x0),this['_domEmitter']['listenTo'](window,'online',()=>this['_isBrowserOffline']=!0x1),this['context']['config']['define']('cloudServices.connectionTimeout',0xa),this['context']['config']['define']('cloudServices.requestTimeout',0x14),z['WebSocketGateway']['connect'](_0x6e500c['token'],_0x6e500c['webSocketUrl'],{'timeout':0x3e8*this['context']['config']['get']('cloudServices.connectionTimeout'),'requestTimeout':0x3e8*this['context']['config']['get']('cloudServices.requestTimeout')})['then'](_0x12c43d=>{if(this['connection']=_0x12c43d,this['bind']('state')['to'](_0x12c43d,'state',this,'_isBrowserOffline',(_0x11b080,_0x499d7b)=>('connected'!==_0x11b080&&(this['_shouldPluginsReconnect']=!0x0),_0x499d7b||_0x11b080!==_0x41dc21['CONNECTED']?_0x41dc21['DISCONNECTED']:this['state']==_0x41dc21['DISCONNECTED']&&this['_shouldPluginsReconnect']?(this['_shouldPluginsReconnect']=!0x1,this['_reconnect'](),_0x41dc21['CONNECTING']):_0x41dc21['CONNECTED'])),this['connection']['on']('error',(_0x55ca1d,_0x4c2ed1)=>{if('limitExceeded'!==_0x4c2ed1['code'])throw console['error'](_0x4c2ed1),new _0x3d60ed('cloudservices-init',null,{'originalError':_0x4c2ed1});_0x1113e4['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'});}),!_0x12c43d['me'])return new Promise(_0x49a7fe=>_0x12c43d['on']('change:me',_0x49a7fe));})['catch'](_0x3de8e7=>{throw console['error'](_0x3de8e7),new _0x3d60ed('cloudservices-init',null,{'originalError':_0x3de8e7});});}['addToReconnectionStack'](_0x14e173){if('function'!=typeof _0x14e173['reconnect'])throw new _0x3d60ed('websocketgateway-invalid-plugin-interface',this);if(this['isInReconnectionStack'](_0x14e173))throw new _0x3d60ed('websocketgateway-plugin-already-registered',this,{'name':_0x14e173['constructor']['pluginName']});this['_reconnectionStack']['add'](_0x14e173);}['removeFromReconnectionStack'](_0x1ba565){this['_reconnectionStack']['delete'](_0x1ba565);}['isInReconnectionStack'](_0x3c9bfd){return this['_reconnectionStack']['has'](_0x3c9bfd);}['_reconnect'](){return this['connection']['reconnect']()['then'](()=>Promise['all'](Array['from'](this['_reconnectionStack'],_0x25a14c=>_0x25a14c['reconnect']())))['then'](()=>this['state']=_0x41dc21['CONNECTED'])['catch'](_0x5de462=>{throw console['error'](_0x5de462),new _0x3d60ed('cloudservices-reconnection-error',this['context']);});}['disconnect'](){this['connection']&&this['connection']['disconnect'](),this['state']=_0x41dc21['DISCONNECTED'],this['_domEmitter']['stopListening']();}['destroy'](){this['disconnect'](),super['destroy']();}}class Y extends _0x299a1f{['channelSessions'];['channelConnectedUsers'];['allConnectedUsers'];['_registeredSessions'];['_uniqueUsersCount'];['_users'];static get['pluginName'](){return'Sessions';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}static get['requires'](){return[z,_0x1a6e2b];}constructor(_0x19c438){super(_0x19c438),this['channelSessions']=new Map(),this['channelConnectedUsers']=new Map(),this['allConnectedUsers']=new _0x3fe7eb(),this['_registeredSessions']=new Map(),this['_uniqueUsersCount']=0x0,this['_users']=this['context']['plugins']['get'](_0x1a6e2b);}['init'](){const _0xac94e8=this['context']['plugins']['get'](z);this['listenTo'](_0xac94e8,'change:state',(_0x421c92,_0x1027b7,_0x516b11)=>{if('connected'!==_0x516b11)this['channelSessions']['forEach'](_0x583e93=>_0x583e93['clear']()),this['channelConnectedUsers']['forEach'](_0x56c7be=>_0x56c7be['clear']()),this['allConnectedUsers']['clear']();else{for(const [_0x3829a6,_0xa1cf7a]of this['_registeredSessions'])for(const _0x1b93a6 of _0xa1cf7a)this['_handleSessionAdd'](_0x3829a6,_0x1b93a6);}}),this['_createUser'](_0xac94e8['connection']['me'],!0x0);}['register'](_0x4c4e9d,_0x1864f4){if(this['_registeredSessions']['has'](_0x4c4e9d))throw new _0x3d60ed('sessions-register-already-registered',null,{'channelId':_0x4c4e9d});this['_registeredSessions']['set'](_0x4c4e9d,_0x1864f4),this['channelSessions']['set'](_0x4c4e9d,new _0x3fe7eb()),this['channelConnectedUsers']['set'](_0x4c4e9d,new _0x3fe7eb()),this['listenTo'](_0x1864f4,'add',(_0xa9c21e,_0x2ebb3f)=>this['_handleSessionAdd'](_0x4c4e9d,_0x2ebb3f)),this['listenTo'](_0x1864f4,'remove',(_0x31abe4,_0x467d81)=>this['_handleSessionRemove'](_0x4c4e9d,_0x467d81));for(const _0x445c7d of _0x1864f4)this['_handleSessionAdd'](_0x4c4e9d,_0x445c7d);}['unregister'](_0xe62170){if(!this['_registeredSessions']['has'](_0xe62170))throw new _0x3d60ed('sessions-unregister-not-exist',null,{'channelId':_0xe62170});const _0x1bf313=this['_registeredSessions']['get'](_0xe62170);this['stopListening'](_0x1bf313);for(const _0x120286 of _0x1bf313)'connected'===this['context']['plugins']['get'](z)['state']&&this['_handleSessionRemove'](_0xe62170,_0x120286);this['_registeredSessions']['delete'](_0xe62170),this['channelSessions']['delete'](_0xe62170),this['channelConnectedUsers']['delete'](_0xe62170);}get['mySessionId'](){return this['context']['plugins']['get'](z)['connection']['sessionId'];}['getUserBySessionId'](_0x3ba040){for(const _0x1b5b6e of this['channelSessions']['values']())for(const _0x2eb193 of _0x1b5b6e)if(_0x2eb193['id']===_0x3ba040)return _0x2eb193['user'];}['getUserSessions'](_0xb4b414,_0x31d621){const _0xe0a42d=_0x31d621?[this['channelSessions']['get'](_0x31d621)]:this['channelSessions']['values'](),_0x543054=new Set();for(const _0x407e74 of _0xe0a42d)for(const _0xcfc353 of _0x407e74)_0xcfc353['user']['id']===_0xb4b414['id']&&_0x543054['add'](_0xcfc353['id']);return _0x543054;}['getUserRole'](_0x505dc3){for(const _0x1f6d2a of this['channelSessions']['values']())for(const _0x4b0a31 of _0x1f6d2a)if(_0x4b0a31['user']===_0x505dc3)return _0x4b0a31['role'];}['_handleSessionAdd'](_0x14dce8,_0x3e256c){if('connected'!==this['context']['plugins']['get'](z)['state'])return;const _0x2236ac=_0x3e256c['user'],_0x452bcb=this['_users']['getUser'](_0x2236ac['id'])||this['_createUser'](_0x2236ac),_0x295350=Object['assign']({},_0x3e256c,{'user':_0x452bcb});if(this['channelSessions']['get'](_0x14dce8)['add'](_0x295350),!_0x2236ac['hiddenInPresenceList']){const _0x49759a=this['channelConnectedUsers']['get'](_0x14dce8);_0x49759a['has'](_0x452bcb['id'])||_0x49759a['add'](_0x452bcb),this['allConnectedUsers']['has'](_0x452bcb['id'])||_0x2236ac['hiddenInPresenceList']||this['allConnectedUsers']['add'](_0x452bcb,_0x452bcb['isMe']?0x0:void 0x0);}this['fire']('sessionAdd:'+_0x14dce8,{'channelId':_0x14dce8,'session':_0x295350});}['_handleSessionRemove'](_0x590ce0,_0x3f687f){if('connected'!==this['context']['plugins']['get'](z)['state'])return;const _0x4501ae=this['channelConnectedUsers']['get'](_0x590ce0),_0x3d1179=_0x3f687f['user'];_0x3d1179['id']&&(this['channelSessions']['get'](_0x590ce0)['remove'](_0x3f687f['id']),_0x4501ae['has'](_0x3d1179['id'])&&!this['getUserSessions'](_0x3d1179,_0x590ce0)['size']&&_0x4501ae['remove'](_0x3d1179['id']),this['allConnectedUsers']['get'](_0x3d1179['id'])&&!this['getUserSessions'](_0x3d1179)['size']&&this['allConnectedUsers']['remove'](_0x3d1179['id']));}['_createUser'](_0x53dfe3,_0x110a32){const _0x34733c=this['_users']['addUser'](_0x53dfe3);return _0x110a32&&this['_users']['defineMe'](_0x53dfe3['id']),_0x34733c['orderNumber']=this['_uniqueUsersCount']++,_0x34733c;}}class K extends _0x39e050{['_domEmitter']=new(_0xf3f05())();static get['requires'](){return[Y];}static get['pluginName'](){return'UserMarkers';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['init'](){const _0x72468c=this['editor'],_0x493378=_0x72468c['plugins']['get'](Y);_0x72468c['conversion']['for']('editingDowncast')['markerToElement']({'model':'user:position','view':(_0x57e9bc,{writer:_0x13b218})=>function(_0x5de5a1,_0xbef5b7,_0x21abb5,_0x4dec44){const _0x4a2bd3=_0x5de5a1['markerName']['split'](':')[0x2],_0x4ebffd=_0x21abb5['getUserBySessionId'](_0x4a2bd3);if(!_0x4ebffd||_0x4a2bd3===_0x21abb5['mySessionId'])return;if(!_0x4dec44['model']['schema']['checkChild'](_0x5de5a1['markerRange']['start'],'$text'))return;const _0x32e711={'class':'ck-user__marker\x20'+_0x4ebffd['color']['getMarkerClass'](),'style':Q(_0x4ebffd),'data-name':_0x4ebffd['name'],'data-session-id':_0x4a2bd3},_0x56aa08=_0x4dec44['model']['markers']['get'](_0x5de5a1['markerName']),_0x414a74=_0x56aa08['getStart'](),_0x67ee36=_0x414a74['nodeAfter'],_0x4d16e3=_0x4dec44['model']['schema'];if(_0x67ee36&&_0x4d16e3['isObject'](_0x67ee36)&&_0x4d16e3['isInline'](_0x67ee36)&&!_0x4dec44['model']['markers']['get']('user:range:'+_0x4a2bd3)['getRange']()['isCollapsed'])return;const _0x42bd5c=_0x414a74['parent'];return _0x4dec44['model']['schema']['isLimit'](_0x42bd5c)&&!_0x4dec44['model']['hasContent'](_0x42bd5c)&&(_0x32e711['contenteditable']=!0x1),function(_0x1f31e8,_0x2c9e31,_0x319d2a){const _0x956d14=_0x1f31e8['createUIElement']('span',_0x2c9e31);return _0x1f31e8['setCustomProperty']('userPositionMarker',!0x0,_0x956d14),_0x956d14['render']=function(_0x144647){const _0x23bce7=this['toDomElement'](_0x144647),_0x2e1165=document['createElement']('span');return _0x2e1165['classList']['add']('ck-user__marker-tooltip'),_0x2e1165['setAttribute']('contenteditable','false'),_0x2e1165['setAttribute']('spellcheck','false'),_0x2e1165['textContent']=_0x319d2a['name'],_0x23bce7['innerHTML']='<span\x20class=\x22ck-user__marker-line\x22\x20contenteditable=\x22false\x22><span\x20class=\x22ck-user__marker-dot\x22></span></span>'+_0x2e1165['outerHTML']+'',_0x23bce7['addEventListener']('mouseenter',()=>{_0x23bce7['classList']['add']('ck-user__marker_hovered');}),_0x23bce7['addEventListener']('mouseleave',()=>{_0x23bce7['classList']['remove']('ck-user__marker_hovered');}),_0x23bce7;},_0x956d14['isSimilar']=function(_0x2844f9){return!(!this['getCustomProperty']('userPositionMarker')||!_0x2844f9['getCustomProperty']('userPositionMarker')||this['getAttribute']('data-session-id')!=_0x2844f9['getAttribute']('data-session-id'));},_0x956d14;}(_0xbef5b7,_0x32e711,_0x4ebffd);}(_0x57e9bc,_0x13b218,_0x493378,_0x72468c)}),_0x72468c['conversion']['for']('editingDowncast')['markerToHighlight']({'model':'user:range','view':_0x3c0b1d=>function(_0x3b9874,_0x3df7b7){const _0x27e848=_0x3b9874['markerName']['split'](':')[0x2];if(_0x27e848===_0x3df7b7['mySessionId'])return null;const _0x47ac0b=_0x3df7b7['getUserBySessionId'](_0x27e848);if(!_0x47ac0b)return{'id':_0x27e848,'classes':[]};return{'id':_0x27e848,'classes':['ck-user__selection',_0x47ac0b['color']['getSelectionClass']()],'attributes':{'style':Q(_0x47ac0b),'data-session-id':_0x27e848},'priority':0x7d0+_0x47ac0b['orderNumber']};}(_0x3c0b1d,_0x493378)}),function(_0x5d7c86){const _0x206f4c=_0x5d7c86['model'],_0x3c2a72=new Map(),_0x5700e0=_0x5d7c86['plugins']['get'](Y);_0x206f4c['markers']['on']('update:user:range',(_0x12e32e,_0xfdc15d,_0x3d23d4,_0xb8931f)=>{if(!_0xb8931f&&_0x3c2a72['get'](_0xfdc15d['name']))return _0x3c2a72['get'](_0xfdc15d['name'])['detach'](),void _0x3c2a72['delete'](_0xfdc15d['name']);const _0x3b20c8=_0xfdc15d['name']['split'](':')[0x2];if(_0x3b20c8===_0x5700e0['mySessionId'])return;const _0x5ce454='user:position:'+_0x3b20c8;_0x206f4c['markers']['has'](_0x5ce454)&&_0x5d7c86['editing']['reconvertMarker'](_0x5ce454),_0xfdc15d['on']('change:range',(_0x334072,_0x47fa20,_0xac23b7)=>{if('$graveyard'!=_0x47fa20['root']['rootName']&&'$graveyard'==_0xfdc15d['getRange']()['root']['rootName']&&!_0x3c2a72['has'](_0xfdc15d['name'])){const _0x57f87e=_0x206f4c['schema']['getNearestSelectionRange'](_0xac23b7['deletionPosition']);if(_0x57f87e){const _0x543e49=_0x5e0b5f['fromRange'](_0x57f87e);_0x3c2a72['set'](_0xfdc15d['name'],_0x543e49),_0x543e49['on']('change:range',(_0x5f0e81,_0x16c048,_0x53f9dc)=>{if('$graveyard'==_0x543e49['root']['rootName']){const _0x36e049=_0x206f4c['schema']['getNearestSelectionRange'](_0x53f9dc['deletionPosition']);_0x36e049?(_0x543e49['start']=_0x36e049['start'],_0x543e49['end']=_0x36e049['end']):(_0x3c2a72['delete'](_0xfdc15d['name']),_0x543e49['detach']());}});}}});}),_0x206f4c['document']['on']('change',()=>{_0x3c2a72['size']>0x0&&_0x206f4c['enqueueChange']({'isUndoable':!0x1},_0x3823ea=>{for(const [_0x20a2de,_0x32c6eb]of _0x3c2a72)'$graveyard'==_0x206f4c['markers']['get'](_0x20a2de)['getRange']()['root']['rootName']&&(J(_0x20a2de['split'](':')[0x2],_0x32c6eb['toRange'](),_0x206f4c,_0x3823ea),_0x32c6eb['detach']());_0x3c2a72['clear']();});});}(_0x72468c),this['_domEmitter']['listenTo'](_0x390801['document'],'keydown',(_0x15fe46,{key:_0x8057f7})=>{'Escape'===_0x8057f7&&function(_0x378df5){_0x378df5['editing']['view']['change'](_0x1fe79c=>{for(const _0x56c64f of _0x378df5['model']['markers']){if(!_0x56c64f['name']['startsWith']('user:position'))continue;const _0x149912=_0x378df5['editing']['mapper']['markerNameToElements'](_0x56c64f['name']);if(_0x149912){for(const _0x4ae2b1 of _0x149912)_0x1fe79c['removeClass']('ck-user__marker_hovered',_0x4ae2b1);}}});}(_0x72468c);},{'useCapture':!0x0});}['afterInit'](){const _0x4f2c16=this['editor'],_0x4278c7=_0x4f2c16['commands']['get']('undo');_0x4278c7&&_0x4f2c16['model']['on']('applyOperation',(_0x309e84,_0x5bfd77)=>{const _0x2db48e=_0x5bfd77[0x0];if(!_0x2db48e['isDocumentOperation'])return;if('marker'!=_0x2db48e['type']||!_0x2db48e['name']['startsWith']('user:'))return;const _0x392b50=_0x2db48e['batch'];_0x4278c7['_createdBatches']['has'](_0x392b50)&&(_0x2db48e['newRange']=_0x2db48e['oldRange']?_0x4f2c16['model']['createRange'](_0x2db48e['oldRange']['start'],_0x2db48e['oldRange']['end']):null);},{'priority':'highest'});}['destroy'](){return this['_domEmitter']['stopListening'](),super['destroy']();}['createUserMarkerOperations'](){const _0x5d4cec=this['editor'],_0x562180=_0x5d4cec['model']['document'],_0x44c43f=_0x5d4cec['plugins']['get'](Y);_0x5d4cec['model']['enqueueChange']({'isUndoable':!0x1},_0xf768dd=>{const _0x2106b4='user:range:'+_0x44c43f['mySessionId'],_0x46f586='user:position:'+_0x44c43f['mySessionId'],_0x3dcf0e=_0x5d4cec['model']['markers']['has'](_0x2106b4);_0x5d4cec['editing']['view']['hasDomSelection']?J(_0x44c43f['mySessionId'],_0x562180['selection']['getFirstRange'](),_0x5d4cec['model'],_0xf768dd):_0x3dcf0e&&(_0xf768dd['removeMarker'](_0x2106b4),_0xf768dd['removeMarker'](_0x46f586));});}}function J(_0x22d084,_0x3771d3,_0x3b955f,_0x159c7e){const _0x46986c='user:range:'+_0x22d084,_0x58cb17='user:position:'+_0x22d084,_0x15355c=_0x3771d3['getContainedElement']();let _0x4b72ac=_0x3771d3['start'];if(_0x15355c&&_0x15355c['is']('element','tableCell')){const _0x409812=function(_0x1e8b31,_0x5e3fa7){for(const _0x2c776c of _0x1e8b31['getPositions']())if(_0x5e3fa7['schema']['checkChild'](_0x2c776c,'$text'))return _0x2c776c;}(_0x3771d3,_0x3b955f);_0x409812&&(_0x4b72ac=_0x409812,_0x3771d3=_0x159c7e['createRange'](_0x4b72ac));}const _0xd63f63=_0x159c7e['createRange'](_0x4b72ac);_0x3b955f['markers']['has'](_0x46986c)?(_0x159c7e['updateMarker'](_0x46986c,{'range':_0x3771d3}),_0x159c7e['updateMarker'](_0x58cb17,{'range':_0xd63f63})):(_0x159c7e['addMarker'](_0x46986c,{'range':_0x3771d3,'usingOperation':!0x0}),_0x159c7e['addMarker'](_0x58cb17,{'range':_0xd63f63,'usingOperation':!0x0}));}function Q(_0x482e8f){return'--ck-user-color:'+_0x482e8f['color']['getColorVariable']()+';--ck-user-color-alpha:'+_0x482e8f['color']['getColorAlphaVariable']()+';';}function X(_0x377922,_0x4a255b,_0x4b7b67){const _0x2d216c=_0x377922['t'],t=_0x377922['t'];switch(_0x4a255b){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 _0x2d216c({'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'},_0x4b7b67);default:return'';}}let Z=0x1;class tt extends _0x39e050{static ['CollaborativeEditingService']=/* #__PURE__ -- @preserve */
|
|
25
|
+
((()=>_0x59838d)());['_offset'];['sessionId'];['serverHistory'];['_channelId'];['_service'];['_document'];['_compressor'];['_bufferedOperations'];['_knownOperations'];['_knownRootNames'];['_pendingAction'];['_hasSelectionChanged'];['_sendBufferedOperationsDelayId'];['_baseBufferDelay'];['_currentBufferDelay'];['_lastSyncedOperationId'];['_disconnectionOperations'];['_operationIdentifier'];static get['requires'](){return[z,Y,K,_0x5d4659,_0x1a6e2b,_0x4eacfa];}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 _0x336415=this['serverHistory']['getOperations']();for(let _0x1ee1b0=_0x336415['length']-0x1;_0x1ee1b0>=0x0;_0x1ee1b0--){const _0x30e84b=_0x336415[_0x1ee1b0];if(!this['_disconnectionOperations']['has'](_0x30e84b))return _0x30e84b['baseVersion']+0x1-this['_offset'];}return 0x0;}constructor(_0x2d0dea){if(super(_0x2d0dea),this['_offset']=0x0,this['sessionId']=null,this['serverHistory']=new _0x247f61(),this['editor']['config']['define']('collaboration',{}),this['_channelId']=this['editor']['config']['get']('collaboration.channelId'),!this['_channelId'])throw new _0x3d60ed('collaboration-missing-channelid',this);const _0x490247=_0x2d0dea['config']['get']('cloudServices.bundleVersion')||_0x3fc9a9;this['_service']=new tt['CollaborativeEditingService'](_0x490247,this['_channelId']),this['_document']=this['editor']['model']['document'],this['_compressor']=new _0xbe09fb(),this['_bufferedOperations']=[],this['_knownOperations']=new WeakSet(),this['_knownRootNames']=new Set(),this['set']('_isPendingUpdate',!0x1),this['set']('_hasSynchronizationProblem',!0x1),this['_pendingAction']=null,this['_hasSelectionChanged']=!0x1,this['_sendBufferedOperationsDelayId']=null,this['_baseBufferDelay']=0x12c,this['_currentBufferDelay']=this['_baseBufferDelay'],this['_lastSyncedOperationId']=null,this['_disconnectionOperations']=new WeakSet(),this['_operationIdentifier']=new it(this['_disconnectionOperations']);}['init'](){const _0x4c3ae6=this['editor'],_0x4876a4=_0x4c3ae6['plugins']['get'](_0x1a6e2b),_0xa6bbb9=_0x4c3ae6['plugins']['get'](z);this['listenTo'](_0x4876a4,'getOperationAuthor',(_0x503ee7,_0x4717a7)=>{const _0x791bac=_0x4717a7[0x0];_0x791bac['_authorId']&&(_0x503ee7['return']=_0x4876a4['getUser'](_0x791bac['_authorId']),_0x503ee7['stop']()),null===_0x791bac['_authorId']&&(_0x503ee7['return']=null,_0x503ee7['stop']());},{'priority':'high'}),this['listenTo'](_0x4c3ae6['model']['document']['selection'],'change:range',(_0x408736,_0x4f39fe)=>{_0x4f39fe['directChange']&&this['_refreshUserSelectionMarkers']();}),this['listenTo'](_0x4c3ae6['editing']['view'],'change:hasDomSelection',()=>{this['_refreshUserSelectionMarkers']();}),this['_initThrowingOnDataSet'](),_0x4c3ae6['model']['on']('applyOperation',(_0x10c762,_0x191f53)=>{const _0x3a1b7c=_0x191f53[0x0];_0x3a1b7c['isDocumentOperation']&&(this['_saveOperationInBuffer'](_0x3a1b7c),this['_shouldSendUpdate']()&&this['_sendBufferedOperationsDelayed']());}),this['_setUpDataInit'](),this['bind']('_isEditingAllowed')['to'](_0xa6bbb9,'state',this,'_hasSynchronizationProblem',(_0x218a04,_0x54be05)=>'connected'===_0x218a04&&!_0x54be05),this['on']('change:_isEditingAllowed',()=>{this['_isEditingAllowed']?_0x4c3ae6['disableReadOnlyMode']('rtc-offline'):_0x4c3ae6['enableReadOnlyMode']('rtc-offline');}),this['_isEditingAllowed']?_0x4c3ae6['disableReadOnlyMode']('rtc-offline'):_0x4c3ae6['enableReadOnlyMode']('rtc-offline'),this['set']('_isConnected',!0x1);}async['reconnect'](){const _0x1f0aeb=this['editor']['plugins']['get'](Y),_0x53311b=this['editor']['plugins']['get'](z);try{this['_isPendingUpdate']=!0x0,_0x1f0aeb['unregister'](this['_channelId']);const _0x380eae=await this['_service']['reconnect'](_0x53311b['connection'],this['lastSyncVersion']);await this['_handleReconnectionResponse'](_0x380eae)&&(this['_isPendingUpdate']=!0x1,this['_clearPendingAction']());const _0x4ae5cb=await this['_service']['getConnectedSessions']();_0x1f0aeb['register'](this['_channelId'],_0x4ae5cb),this['_handleSendingSelectionMarkers'](),this['_isConnected']=!0x0;}catch(_0x2c074f){if(function(_0x2206e9){return'404'===_0x2206e9['code'];}(_0x2c074f)&&this['sessionId'])await this['_connectAfterSessionHasBeenFlushed']();else{if(function(_0x2bd4e8){return'409'===_0x2bd4e8['code'];}(_0x2c074f)){const _0x563899=X(this['editor']['locale'],'The\x20document\x20cannot\x20be\x20connected\x20back\x20to\x20the\x20server.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.');this['_handleReconnectionError'](_0x563899);}else{if(!(_0x2c074f instanceof et))throw _0x2c074f;this['_handleReconnectionError']();}}}}['destroy'](){const _0xeaf590=this['editor']['plugins']['get'](z),_0x114dc8=this['editor']['plugins']['get'](Y);this['editor']['enableReadOnlyMode']('rtc-destroyed'),_0x114dc8['channelSessions']['has'](this['_channelId'])&&_0x114dc8['unregister'](this['_channelId']),_0xeaf590['removeFromReconnectionStack'](this),this['_disconnectService'](),super['destroy']();}async['_handleReconnectionResponse'](_0x1159d6){if(this['sessionId']!==_0x1159d6['sessionId']&&this['_lastSyncedOperationId']!==_0x1159d6['lastOperationId'])throw new et();return this['sessionId']=_0x1159d6['sessionId'],this['_handleServerResponse']([],{..._0x1159d6,'wereChangesApplied':!0x1,'data':_0x1159d6['data']},'reconnect');}async['_connectService'](_0x2841be,_0x4713d2=!0x1){const {connection:_0x3aea5d}=this['editor']['plugins']['get'](z);tt['CollaborativeEditingService']['getConnectedSessions'](_0x3aea5d,this['_channelId'])['then'](_0x528c0c=>this['_initSessionsHandling'](_0x528c0c))['catch'](_0x9c2fe6=>{this['_crash']('realtimecollaborationclient-init-session-connection-error',_0x9c2fe6);}),this['listenTo'](this['_service'],'operationsReceived',this['_handleReceivedOperations']['bind'](this)),this['listenTo'](this['_service'],'error',(_0xacd4b4,_0x30ca53)=>{this['_crash']('realtimecollaborationclient-init-service-internal-error',_0x30ca53);}),this['listenTo'](this['_service'],'disconnected',()=>{this['_isConnected']=!0x1;});const _0x487065=this['_operationIdentifier']['getIdOfTheLastOperation'](_0x2841be);this['_isPendingUpdate']=!0x0;const _0xed71c0=await this['_service']['connect'](_0x3aea5d,this['_compressOperations'](_0x2841be),_0x487065);if(this['sessionId']=_0xed71c0['sessionId'],_0x4713d2){if(!_0xed71c0['wereChangesApplied'])return void this['_handleReconnectionError']();this['_isPendingUpdate']=!0x1,this['_clearPendingAction'](),this['serverHistory']['reset'](),this['_offset']=_0xed71c0['offset'],this['serverHistory']['version']=this['_offset'],await this['_handleServerResponse'](_0x2841be,_0xed71c0,'reconnection:\x20flushed\x20session');}else await this['_handleInitialConnectionData'](_0xed71c0,_0x2841be);this['_handleSendingSelectionMarkers'](),this['_isConnected']=!0x0;}['_handleSendingSelectionMarkers'](){const _0x52b322=this['editor']['plugins']['get'](Y),_0x3014a7=this['editor']['plugins']['get'](K),_0x1d5cac=_0x52b322['channelSessions']['get'](this['_channelId']);_0x1d5cac&&_0x1d5cac['length']>0x1?_0x3014a7['createUserMarkerOperations']():this['listenTo'](_0x52b322,'sessionAdd:'+this['_channelId'],()=>{0x2===_0x52b322['channelSessions']['get'](this['_channelId'])['length']&&_0x3014a7['createUserMarkerOperations']();});}async['_handleReceivedOperations'](_0x1942fe,_0x4f4a6d,_0x1ce4e5,_0x966901){if(!this['_isPendingUpdate']&&this['_document']['version']==_0x4f4a6d){const _0xeeff4a=this['_decompressOperations'](_0x1ce4e5,_0x966901);await this['_fetchMissingUsers'](_0xeeff4a),this['_handleExternalOperations'](_0xeeff4a,_0x4f4a6d,_0x1ce4e5['lastOperationId'])||this['_crash']('realtimecollaborationclient-init-service-incorrect-server-operation');}}async['_connectAfterSessionHasBeenFlushed'](){this['_disconnectService']();const {locale:_0x9c5dfc}=this['editor'];let _0x2756ab;try{_0x2756ab=await this['_service']['getDocumentDetails']();}catch{const _0x3d51de=X(_0x9c5dfc,'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'](_0x3d51de);}const _0x5bca9d=_0x2756ab['currentDocumentSession']||_0x2756ab['lastDocumentSession'];if(this['_lastSyncedOperationId']!==_0x5bca9d['lastOperationId']){const _0x32632f=X(_0x9c5dfc,'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'](_0x32632f);}await this['_connectService'](this['editor']['model']['document']['history']['getOperations'](),!0x0);}['_disconnectService'](){this['_service']['disconnect'](),this['_bufferedOperations']=[],clearTimeout(this['_sendBufferedOperationsDelayId']),this['stopListening'](this['_service']);}['_initSessionsHandling'](_0x2cf30f){const _0x387eef=this['editor']['plugins']['get'](Y);this['listenTo'](_0x387eef,'sessionAdd:'+this['_channelId'],(_0x5b12aa,{session:_0x2fe717})=>{if(_0x2fe717['id']===_0x387eef['mySessionId']){_0x5b12aa['off']();const _0x1147c7=this['editor']['plugins']['has']('CommentsOnly')&&this['editor']['plugins']['get']('CommentsOnly');let _0x4b00fc=_0x2fe717['permissions'];_0x1147c7&&_0x1147c7['isEnabled']&&(_0x4b00fc=_0x4b00fc['filter'](_0x493705=>'document:write'!==_0x493705)),this['editor']['plugins']['get']('Permissions')['setPermissions'](_0x4b00fc,this['_channelId']);}}),_0x387eef['register'](this['_channelId'],_0x2cf30f);}['_initThrowingOnDataSet'](){const _0x23e557=this['editor']['data']['set'];this['editor']['data']['set']=(..._0xb485ea)=>{if(!_0xb485ea[_0xb485ea['length']-0x1]['suppressErrorInCollaboration'])throw new _0x3d60ed('realtimecollaborationclient-editor-setdata-and-editor-data-set-are-forbidden-in-real-time-collaboration',this);_0x23e557['apply'](this['editor']['data'],_0xb485ea);};}['_setUpDataInit'](){this['editor']['data']['on']('init',(_0x4dd3ca,[_0x33116d])=>{if(this['_document']['version'])throw new _0x3d60ed('realtimecollaborationclient-init-document-already-initialized',this);_0x4dd3ca['stop'](),this['_setPendingAction']();const _0x33acbc=Object['fromEntries'](Object['entries'](this['editor']['config']['get']('roots')||{})['filter'](([,_0x138cda])=>!_0x138cda['lazyLoad'])['map'](([_0x9db26f,_0xfd7ba])=>[_0x9db26f,_0xfd7ba['modelAttributes']||{}])),_0x2c4371=this['_getOperationsFromInitData'](_0x33116d,_0x33acbc);0x0==_0x2c4371['length']&&_0x2c4371['push'](new _0x4b944c(0x0)),_0x4dd3ca['return']=this['_connectService'](_0x2c4371)['then'](()=>{this['editor']['plugins']['get'](z)['addToReconnectionStack'](this),this['editor']['data']['fire']('ready');})['catch'](_0x48d08b=>this['_crash']('realtimecollaborationclient-init-connection-failed',_0x48d08b))['finally'](()=>this['_clearPendingAction']());},{'priority':'high'}),this['editor']['on']('loadRoot',async(_0x58921d,[_0x107e4a,_0x50e81c])=>{_0x58921d['stop']();const _0x580c93=this['editor']['model']['document']['getRoot'](_0x107e4a);if(!this['_knownRootNames']['has'](_0x107e4a)){const _0x539993=_0x50e81c&&_0x50e81c['data']?_0x50e81c['data']:'',_0x7adac5=_0x50e81c&&_0x50e81c['attributes']?_0x50e81c['attributes']:{};await this['_loadRoot'](_0x107e4a,_0x539993,_0x7adac5);}this['editor']['model']['enqueueChange']({'isUndoable':!0x1},()=>{_0x580c93['_isLoaded']=!0x0,this['editor']['model']['document']['differ']['_bufferRootLoad'](_0x580c93);});},{'priority':'high'});}async['_fetchMissingUsers'](_0x10712d){const _0x47626a=this['editor']['plugins']['get'](_0x1a6e2b),{connection:_0x11c838}=this['editor']['plugins']['get'](z),_0x2bac5b=new Set();for(const _0x39082d of _0x10712d){const _0x3f0b2b=_0x39082d['_authorId'];_0x3f0b2b&&!_0x47626a['getUser'](_0x3f0b2b)&&_0x2bac5b['add'](_0x3f0b2b);}if(0x0===_0x2bac5b['size'])return;const _0x2dd14b=await _0x460a04['getMany'](_0x11c838,Array['from'](_0x2bac5b));for(const _0x324428 of _0x2dd14b)_0x47626a['getUser'](_0x324428['id'])||_0x47626a['addUser'](_0x324428);}['_getOperationsFromInitData'](_0x4893a4,_0x1bec68={}){const _0x1e1717=this['editor']['model'],_0x46d85b=[];let _0x365aef=0x0;const _0x2db68c='string'==typeof _0x4893a4?{'main':_0x4893a4}:_0x4893a4;for(const _0x2e2b5c of Object['keys'](_0x2db68c)){if(!this['_document']['roots']['has'](_0x2e2b5c))throw new _0x3d60ed('realtimecollaborationclient-init-non-existent-root',this);const _0x16ed2c=this['editor']['data']['parse'](_0x2db68c[_0x2e2b5c]),_0x4d21d9=this['_document']['getRoot'](_0x2e2b5c),_0x217d59=new _0x8ff524(_0x1e1717['createPositionAt'](_0x4d21d9,0x0),_0x16ed2c,_0x365aef++);_0x46d85b['push'](_0x217d59);for(const [_0x4fe093,_0xf120e1]of _0x16ed2c['markers']){const _0x43dc60=_0x1e1717['createRange'](_0x1e1717['createPositionFromPath'](_0x4d21d9,_0xf120e1['start']['path']['slice']()),_0x1e1717['createPositionFromPath'](_0x4d21d9,_0xf120e1['end']['path']['slice']())),_0x55cf57=new _0x2fe41c(_0x4fe093,null,_0x43dc60,_0x1e1717['markers'],!0x0,_0x365aef++);_0x46d85b['push'](_0x55cf57);}}if(_0x1bec68)for(const [_0x588a9f,_0x2f63ac]of Object['entries'](_0x1bec68)){const _0x2b10e2=_0x1e1717['document']['getRoot'](_0x588a9f);if(!_0x2b10e2)throw new _0x3d60ed('multi-root-editor-root-attributes-no-root',null);for(const [_0x1ea733,_0xe12c92]of Object['entries'](_0x2f63ac))if(null!==_0xe12c92){const _0x2964b4=new _0x46664c(_0x2b10e2,_0x1ea733,null,_0xe12c92,_0x365aef++);_0x46d85b['push'](_0x2964b4);}}return _0x46d85b;}async['_loadRoot'](_0x1dde64,_0x5a119d,_0x144ed6){this['_getOperationsFromInitData']({[_0x1dde64]:_0x5a119d},{[_0x1dde64]:_0x144ed6})['forEach']((_0xf4950c,_0x38723d)=>{_0xf4950c['baseVersion']=this['_document']['version']+_0x38723d,_0xf4950c['_isInit']=!0x0,this['_saveOperationInBuffer'](_0xf4950c);}),this['_sendBufferedOperationsDelayed'](),await this['_waitUntilSynced']();}async['_handleInitialConnectionData'](_0x347209,_0x5e641e){let _0x63e4f8;this['_offset']=_0x347209['offset'];const _0x491bb6=_0x347209['wereChangesApplied']&&!_0x347209['initData'],_0xa5f232=_0x491bb6?0x0:_0x347209['data']['baseVersion'];if(_0x5e641e['forEach'](_0x39d225=>{_0x39d225['_isInit']=!0x0,_0x39d225['createdAt']=_0x347209['sessionCreatedAt'],_0x39d225['_authorId']=null;}),_0x491bb6)_0x63e4f8=_0x5e641e,this['_applyOperationsSet'](_0x63e4f8,_0x491bb6);else{if(_0x347209['initData']){const _0x1a890d=this['_getOperationsFromInitData'](_0x347209['initData']);this['_document']['history']['version']=-_0x1a890d['length'],_0x1a890d['forEach'](_0x1bf5d1=>{_0x1bf5d1['baseVersion']-=_0x1a890d['length'],_0x1bf5d1['createdAt']=_0x347209['sessionCreatedAt'],_0x1bf5d1['_isInit']=!0x0,_0x1bf5d1['_authorId']=null;}),this['_applyOperationsSet'](_0x1a890d,!0x0),this['serverHistory']['version']=-_0x1a890d['length']+this['_offset'],this['_updateServerHistory'](_0x1a890d);}this['_document']['history']['version']=_0xa5f232,_0x63e4f8=this['_decompressOperations'](_0x347209['data'],_0x347209['metadata']),await this['_fetchMissingUsers'](_0x63e4f8),this['_applyOperationsSet'](_0x63e4f8,_0x491bb6);}_0x347209['lastOperationId']&&(this['_operationIdentifier']['setIdForTheLastOperation'](_0x63e4f8,_0x347209['lastOperationId']),this['_lastSyncedOperationId']=_0x347209['lastOperationId']),this['serverHistory']['version']=_0xa5f232+this['_offset'],this['_updateServerHistory'](_0x63e4f8),_0x5e641e['filter'](_0x2917a7=>{const _0x183f38=this['_getAffectedRoot'](_0x2917a7);return _0x183f38&&!this['_knownRootNames']['has'](_0x183f38);})['forEach']((_0xb6c0a3,_0x4e21fa)=>{_0xb6c0a3['baseVersion']=this['_document']['version']+_0x4e21fa,this['_saveOperationInBuffer'](_0xb6c0a3);}),this['_shouldSendUpdate']()?(this['_currentBufferDelay']=0x0,this['_sendBufferedOperationsDelayed'](!0x0),await this['_waitUntilSynced']()):(this['_isPendingUpdate']=!0x1,this['_clearPendingAction']());}['_crash'](_0x2fdaf6,_0x55f09f){const _0x326b44=_0x55f09f&&_0x55f09f['message'];if(_0x326b44&&_0x326b44['startsWith']('realtimecollaborationclient'))throw _0x55f09f;const _0x94e554=this['editor']['plugins']['get'](z);throw this['_isPendingUpdate']=!0x0,_0x94e554['disconnect'](),this['editor']['enableReadOnlyMode']('realtimecollaborationclient-error'),new _0x3d60ed(_0x2fdaf6,this['editor'],_0x326b44?{'originalError':_0x326b44}:void 0x0);}['_saveOperationInBuffer'](_0x51c3f3){this['_knownOperations']['has'](_0x51c3f3)||(this['_knownOperations']['add'](_0x51c3f3),this['_bufferedOperations']['push'](_0x51c3f3),this['_pendingAction']||'marker'==_0x51c3f3['type']&&!_0x51c3f3['affectsData']||this['_setPendingAction']());}['_sendBufferedOperationsDelayed'](_0xda53f5=!0x1){!_0xda53f5&&this['_isPendingUpdate']||(this['_isPendingUpdate']=!0x0,clearTimeout(this['_sendBufferedOperationsDelayId']),this['_sendBufferedOperationsDelayId']=setTimeout(()=>{this['_sendBufferedOperations']()['then'](_0xc1c435=>{_0xc1c435&&(this['_clearPendingAction'](),this['_isPendingUpdate']=!0x1);})['catch'](_0x16e61b=>{this['_clearPendingAction'](),this['_isPendingUpdate']=!0x1,function(_0x4d950a){return _0x4d950a['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x4d950a['message']['startsWith']('cloud-services-internal-error:\x20Collaborative\x20Editing\x20Service\x20is\x20not\x20connected.')||_0x4d950a['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}(_0x16e61b)||this['_crash'](_0x16e61b['message'],_0x16e61b);});},this['_currentBufferDelay']));}['_waitUntilSynced'](){return new Promise(_0x1a4467=>{this['on']('change:_isPendingUpdate',()=>{_0x1a4467();});});}async['_sendBufferedOperations'](){const _0x2a7f9c=this['editor']['plugins']['get'](K);if(this['_shouldSendSelectionUpdate']()&&(_0x2a7f9c['createUserMarkerOperations'](),this['_hasSelectionChanged']=!0x1),!this['_shouldSendUpdate']())return!0x0;const _0x181d91=[...this['_bufferedOperations']];for(const _0x5ed8aa of _0x181d91)_0x5ed8aa['wasUndone']=this['_document']['history']['isUndoneOperation'](_0x5ed8aa);const _0x2a870c=this['_operationIdentifier']['getIdOfTheLastOperation'](_0x181d91),_0x4e1a63=Z++,_0x13e13b=this['_compressOperations'](_0x181d91),_0x2bb368=await this['_service']['sendOperations'](_0x13e13b,_0x13e13b['baseVersion'],_0x2a870c);try{return await this['_handleServerResponse'](_0x181d91,_0x2bb368,_0x4e1a63);}catch(_0x2efb1b){return this['_crash']('realtimecollaborationclient-sendbufferedoperations',_0x2efb1b);}}async['_handleServerResponse'](_0x4312d8,_0x10e248,_0x2ffb1a){if('error'in _0x10e248)throw _0x10e248['error'];let _0x1fb8c3=!0x1;if(_0x10e248['wereChangesApplied']){_0x10e248['lastOperationId']&&(this['_lastSyncedOperationId']=_0x10e248['lastOperationId']),this['_bufferedOperations']=this['_bufferedOperations']['filter'](_0x84723=>!_0x4312d8['includes'](_0x84723));for(const _0x78b38f of _0x4312d8)_0x78b38f['createdAt']='lastOperationAcceptedAt'in _0x10e248&&_0x10e248['lastOperationAcceptedAt']||void 0x0;st(_0x4312d8,_0x10e248['version']-_0x4312d8['length']),this['_updateServerHistory'](_0x4312d8);const _0x5562b2=_0x4312d8['filter'](_0x4f52bc=>{if(!_0x4f52bc['_isInit'])return!0x1;const _0x27bcef=this['_getAffectedRoot'](_0x4f52bc);return _0x27bcef&&!this['_knownRootNames']['has'](_0x27bcef);});st(_0x5562b2,this['_document']['version']),this['_applyOperationsSet'](_0x5562b2),_0x1fb8c3=!0x0,this['_currentBufferDelay']=this['_baseBufferDelay'];}else{const _0x5ed4dc=this['_decompressOperations'](_0x10e248['data'],_0x10e248['metadata'])['filter'](_0x28ff1e=>_0x28ff1e['baseVersion']>=this['_lastServerVersion']);_0x5ed4dc['forEach'](_0xead027=>this['_addKnownRoot'](_0xead027)),this['_bufferedOperations']=this['_bufferedOperations']['filter'](_0x4c9734=>!_0x4c9734['_isInit']||!this['_knownRootNames']['has'](this['_getAffectedRoot'](_0x4c9734))),this['_bufferedOperations']['length']&&st(this['_bufferedOperations'],this['_bufferedOperations'][0x0]['baseVersion']),await this['_fetchMissingUsers'](_0x5ed4dc),_0x1fb8c3=this['_handleExternalOperations'](_0x5ed4dc,_0x10e248['version'],_0x10e248['lastOperationId']),this['_currentBufferDelay']=Math['round'](this['_currentBufferDelay']/0x2);}return _0x1fb8c3?!this['_shouldSendUpdate']()||(this['_sendBufferedOperationsDelayed'](!0x0),!0x1):this['_crash']('realtimecollaborationclient-handleserverresponse');}['_handleExternalOperations'](_0x4fca23,_0x4f865f,_0x3c1f74){try{const _0x4085cc={'document':this['_document'],'useRelations':!0x1,'padWithNoOps':!0x0},{operationsA:_0x5539e9,operationsB:_0xc45e45,originalOperations:_0x17673e}=_0x3341f1(_0x4fca23,this['_bufferedOperations'],_0x4085cc);st(_0x5539e9,this['_document']['version']),st(_0xc45e45,_0x4f865f);for(const _0x44a605 of _0x5539e9){const _0x38d644=_0x17673e['get'](_0x44a605);_0x44a605['_authorId']=_0x38d644?_0x38d644['_authorId']:null;}_0x3c1f74&&(this['_operationIdentifier']['setIdForTheLastOperation'](_0x4fca23,_0x3c1f74),this['_lastSyncedOperationId']=_0x3c1f74),this['_bufferedOperations']=[..._0xc45e45],this['_applyOperationsSet'](_0x5539e9),this['_updateServerHistory'](_0x4fca23);}catch(_0x254de9){return console['error'](_0x254de9),!0x1;}return!0x0;}['_applyOperationsSet'](_0x26ffe5,_0x3dfb3c=!0x1){this['editor']['model']['enqueueChange']({'isUndoable':!0x1,'isLocal':!0x1},_0x24c30e=>{for(const _0xcd1a0f of _0x26ffe5)this['_knownOperations']['add'](_0xcd1a0f),this['_addKnownRoot'](_0xcd1a0f),_0x24c30e['batch']['addOperation'](_0xcd1a0f),this['editor']['model']['applyOperation'](_0xcd1a0f);});}['_addKnownRoot'](_0x5d9f7c){const _0x34713f=this['_getAffectedRoot'](_0x5d9f7c);_0x34713f&&this['_knownRootNames']['add'](_0x34713f);}['_getAffectedRoot'](_0x14c6b4){let _0x93e76f,_0x35ce6c;switch(_0x14c6b4['type']){case'insert':_0x93e76f=_0x14c6b4['position']['root'];break;case'marker':if(_0x35ce6c=_0x14c6b4['newRange'],!_0x35ce6c)return null;_0x93e76f=_0x35ce6c['root'];break;case'addRootAttribute':_0x93e76f=_0x14c6b4['root'];break;case'addRoot':_0x93e76f=_0x14c6b4['affectedSelectable'];break;case'move':_0x93e76f=_0x14c6b4['targetPosition']['root'];break;default:return null;}return _0x93e76f['rootName'];}['_updateServerHistory'](_0x350dc5){_0x350dc5['forEach'](_0x5ea7a8=>{const _0x17f2ba=_0x5ea7a8['clone']();_0x17f2ba['_authorId']=_0x5ea7a8['_authorId'],_0x17f2ba['_isInit']=!!_0x5ea7a8['_isInit'],_0x17f2ba['createdAt']=_0x5ea7a8['createdAt'],_0x17f2ba['baseVersion']+=this['_offset'],_0x5ea7a8['_isDisconnection']&&this['_disconnectionOperations']['add'](_0x17f2ba),this['serverHistory']['addOperation'](_0x17f2ba);});}['_handleReconnectionError'](_0x2e9cb6){const _0x500602=this['editor']['plugins']['get']('Notification'),_0x188a04=this['editor']['locale'];_0x2e9cb6||(_0x2e9cb6=X(_0x188a04,'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.')),_0x500602['showWarning'](_0x2e9cb6,{'title':X(_0x188a04,'Synchronization\x20issue'),'namespace':'real-time-collaboration'}),this['_hasSynchronizationProblem']=!0x0,clearTimeout(this['_sendBufferedOperationsDelayId']),this['_bufferedOperations']=[],this['editor']['plugins']['get'](z)['disconnect']();}['_setPendingAction'](){this['_pendingAction']||(this['_pendingAction']=this['editor']['plugins']['get'](_0x5d4659)['add'](X(this['editor']['locale'],'PENDING_ACTION_SENDING_DATA')));}['_clearPendingAction'](){this['_pendingAction']&&(this['editor']['plugins']['get'](_0x5d4659)['remove'](this['_pendingAction']),this['_pendingAction']=null);}['_compressOperations'](_0x384a6b){const _0x54ff58=_0x384a6b['map'](_0x1a3b9c=>_0x1a3b9c['toJSON']());return this['_compressor']['compress'](_0x54ff58);}['_decompressOperations'](_0x2c8a61,_0x315e6c){return this['_compressor']['decompress'](_0x2c8a61)['map']((_0x2f7d35,_0x14dc54)=>{const _0x11d2a6='init'==_0x315e6c[_0x14dc54]['type'];if('InsertOperation'==_0x2f7d35['__className']){const _0x161770=_0x2f7d35['position']['root'];!this['_document']['getRoot'](_0x161770)&&(this['_document']['createRoot']('$root',_0x161770)['_isAttached']=!0x1);}const _0x45607c=_0xd9a0c['fromJSON'](_0x2f7d35,this['_document']);return _0x45607c['wasUndone']=_0x2f7d35['wasUndone'],_0x45607c['_isInit']=_0x11d2a6,_0x45607c['_authorId']=_0x11d2a6?null:_0x315e6c[_0x14dc54]['userId'],_0x45607c['_isDisconnection']='cs:removeUser'===_0x315e6c[_0x14dc54]['type'],_0x45607c['createdAt']=_0x315e6c[_0x14dc54]['createdAt'],_0x45607c;});}['_refreshUserSelectionMarkers'](){this['_hasSelectionChanged']=!0x0,this['_shouldSendSelectionUpdate']()?this['_sendBufferedOperationsDelayed']():this['_hasSelectionChanged']=!0x1;}['_shouldSendSelectionUpdate'](){const _0x52af3a=this['editor']['plugins']['get'](Y)['channelSessions']['get'](this['_channelId']);return!this['editor']['isReadOnly']&&!!_0x52af3a&&_0x52af3a['length']>0x1&&this['_hasSelectionChanged'];}['_shouldSendUpdate'](){return this['_bufferedOperations']['length']>0x0||this['_shouldSendSelectionUpdate']();}}class et extends Error{}function st(_0xcf8bae,_0xee0683){for(const _0x2ba5b5 of _0xcf8bae)_0x2ba5b5['baseVersion']=_0xee0683++;}class it{['_ignoredOperations'];['_operationToId'];constructor(_0x1c54fb){this['_ignoredOperations']=_0x1c54fb,this['_operationToId']=new WeakMap();}['getIdOfTheLastOperation'](_0x47ba2d){let _0x2f7d4a=_0x47ba2d['length'];for(;_0x2f7d4a--;){const _0x552c70=_0x47ba2d[_0x2f7d4a];if(!this['_ignoredOperations']['has'](_0x552c70)){if(!this['_operationToId']['has'](_0x552c70)){const _0x14c766=_0x1cea96()['slice'](0x1,0x12);this['_operationToId']['set'](_0x552c70,_0x14c766);}return this['_operationToId']['get'](_0x552c70);}}}['setIdForTheLastOperation'](_0x209840,_0x3e19b3){if(!_0x3e19b3)return;let _0x1ad05c=_0x209840['length'];for(;_0x1ad05c--;){const _0x18d07e=_0x209840[_0x1ad05c];this['_ignoredOperations']['has'](_0x18d07e)||this['_operationToId']['set'](_0x18d07e,_0x3e19b3);}}}class nt extends _0x39e050{static get['requires'](){return[tt];}static get['pluginName'](){return'RealTimeCollaborativeEditing';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}class ot extends _0x299a1f{static ['CommentsService']=/* #__PURE__ -- @preserve */
|
|
26
|
+
((()=>_0x3d6374)());['_services'];static get['requires'](){return[z,_0x5c14d5,Y,_0x1a6e2b];}static get['pluginName'](){return'CloudServicesCommentsAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x5e4a54){super(_0x5e4a54),this['_services']=new Map();}async['init'](){const _0x5a100d=this['context'],_0x28c41e=_0x5a100d['plugins']['get'](_0x5c14d5);if(_0x5a100d['plugins']['get'](z)['addToReconnectionStack'](this),_0x28c41e['adapter']={'addCommentThread':async({channelId:_0x362726,threadId:_0x45e2ba,comments:_0x9aeb93,resolvedAt:_0x4664dd,resolvedBy:_0x49d5d1,context:_0x5c8394,attributes:_0x46b8d1})=>{const _0x54acf3=await this['_getService'](_0x362726)['addCommentThread']({'commentThreadId':_0x45e2ba,'comments':_0x9aeb93['map'](_0x5f04a9=>function(_0x2ac602,_0x10717f,_0x494147){return{'commentThreadId':_0x494147,'commentId':_0x2ac602['commentId'],'userId':_0x2ac602['authorId'],'content':_0x2ac602['content'],'documentId':_0x10717f,'createdAt':_0x2ac602['createdAt'],'attributes':_0x2ac602['attributes']||{}};}(_0x5f04a9,_0x362726,_0x45e2ba)),'resolvedAt':_0x4664dd,'resolvedBy':_0x49d5d1,'context':_0x5c8394,'attributes':_0x46b8d1})['catch'](ct);return{'threadId':_0x54acf3['commentThreadId'],'comments':_0x54acf3['comments']};},'getCommentThread':async({channelId:_0x43d9fe,threadId:_0x132bab})=>{const _0x48480a=await this['_getService'](_0x43d9fe)['getCommentThread'](_0x132bab)['catch'](rt)['catch'](ct);return _0x48480a?_0x48480a['deletedAt']?null:(await this['_fetchMissingUsersForThreads']([_0x48480a]),{'threadId':_0x48480a['commentThreadId'],'comments':_0x48480a['comments']['map'](at),'context':_0x48480a['context'],'resolvedAt':_0x48480a['resolvedAt'],'resolvedBy':_0x48480a['resolvedBy'],'attributes':_0x48480a['attributes']||{}}):null;},'updateCommentThread':async({channelId:_0x37aef6,threadId:_0x38463d,context:_0x519485,unlinkedAt:_0x455885,attributes:_0x3615a7})=>this['_getService'](_0x37aef6)['updateCommentThread']({'commentThreadId':_0x38463d,'context':_0x519485,'attributes':_0x3615a7,'unlinkedAt':_0x455885})['catch'](rt)['catch'](ct),'resolveCommentThread':async({channelId:_0x1e992d,threadId:_0x4bab2e})=>{const _0x41ee77=await this['_getService'](_0x1e992d)['resolveCommentThread'](_0x4bab2e)['catch'](rt)['catch'](ct);return{'threadId':_0x41ee77['commentThreadId'],'resolvedAt':_0x41ee77['resolvedAt'],'resolvedBy':_0x41ee77['resolvedBy']};},'reopenCommentThread':async({channelId:_0x1dea15,threadId:_0x1da623})=>this['_getService'](_0x1dea15)['reopenCommentThread'](_0x1da623)['catch'](rt)['catch'](ct),'removeCommentThread':({channelId:_0x1fca3b,threadId:_0x1c1e9b})=>this['_getService'](_0x1fca3b)['removeCommentThread'](_0x1c1e9b)['catch'](rt)['catch'](ct),'addComment':({channelId:_0x46bce7,threadId:_0x17c4ef,commentId:_0x151151,content:_0x35ec20,attributes:_0x56005a})=>this['_getService'](_0x46bce7)['addComment'](_0x17c4ef,_0x151151,_0x35ec20,_0x56005a)['catch'](ct),'updateComment':({channelId:_0x52a894,threadId:_0x2d9eaf,commentId:_0x3b23d3,content:_0x2465f0,attributes:_0x5688fe})=>this['_getService'](_0x52a894)['updateComment'](_0x2d9eaf,_0x3b23d3,_0x2465f0,_0x5688fe)['catch'](rt)['catch'](ct),'removeComment':({channelId:_0x1de124,threadId:_0x350f65,commentId:_0x272762})=>this['_getService'](_0x1de124)['removeComment'](_0x350f65,_0x272762)['catch'](rt)['catch'](ct)},_0x5a100d instanceof _0x431f86){const _0x50782f=_0x5a100d['config']['get']('collaboration.channelId'),_0x1b9ff1=_0x5a100d['plugins']['get'](Y);await this['_setUpService'](_0x50782f);const _0x3c1514=await this['_services']['get'](_0x50782f)['getConnectedSessions']();this['listenTo'](_0x1b9ff1,'sessionAdd:'+_0x50782f,(_0x3c0547,{session:_0x43f603})=>{_0x43f603['id']===_0x1b9ff1['mySessionId']&&(_0x3c0547['off'](),this['context']['plugins']['get']('Permissions')['setPermissions'](_0x43f603['permissions'],_0x50782f));}),_0x1b9ff1['register'](_0x50782f,_0x3c1514);}}async['_setUpService'](_0x77f85f){if(this['_services']['has'](_0x77f85f))throw new _0x3d60ed('cloudservicescommentsadapter-connect-already-connected',null,{'channelId':_0x77f85f});const _0x371caf=this['context']['plugins']['get'](_0x5c14d5),_0x8b0fee=new ot['CommentsService'](_0x77f85f);this['_services']['set'](_0x77f85f,_0x8b0fee),this['listenTo'](_0x8b0fee,'commentThreadAdded',(_0xe2f35d,_0x55809e)=>{const {commentThreadId:_0x142a4c,documentId:_0x3fc356,context:_0x4d2c81,attributes:_0x4e93a6,resolvedAt:_0x209c15,resolvedBy:_0x3d6361,comments:_0x39701e}=_0x55809e;_0x371caf['getCommentThread'](_0x142a4c)||_0x371caf['addCommentThread']({'threadId':_0x142a4c,'channelId':_0x3fc356,'comments':_0x39701e?_0x39701e['map'](at):[],'context':_0x4d2c81,'attributes':_0x4e93a6,'resolvedAt':_0x209c15,'resolvedBy':_0x3d6361,'isFromAdapter':!0x0});}),this['listenTo'](_0x8b0fee,'commentThreadUpdated',(_0x508738,{commentThreadId:_0x2acd04,documentId:_0x555dc1,context:_0x325a10,unlinkedAt:_0x3ed907,attributes:_0x5d1a76})=>{_0x371caf['getCommentThread'](_0x2acd04)&&_0x371caf['updateCommentThread']({'threadId':_0x2acd04,'channelId':_0x555dc1,'context':_0x325a10,'unlinkedAt':_0x3ed907,'attributes':_0x5d1a76,'isFromAdapter':!0x0});}),this['listenTo'](_0x8b0fee,'commentThreadResolved',(_0x16969e,{commentThreadId:_0x3b2eea,resolvedBy:_0x4b7ebd,resolvedAt:_0x11b596})=>{const _0x2f6e87=_0x371caf['getCommentThread'](_0x3b2eea);_0x2f6e87&&_0x2f6e87['resolve']({'resolvedBy':_0x4b7ebd,'resolvedAt':_0x11b596,'isFromAdapter':!0x0});}),this['listenTo'](_0x8b0fee,'commentThreadReopened',(_0x44eb98,{commentThreadId:_0x5f54ca})=>{const _0x230ff8=_0x371caf['getCommentThread'](_0x5f54ca);_0x230ff8&&_0x230ff8['reopen']({'isFromAdapter':!0x0});}),this['listenTo'](_0x8b0fee,'commentThreadRemoved',(_0x56ed17,{commentThreadId:_0x58653d})=>{const _0x5a5242=_0x371caf['getCommentThread'](_0x58653d);_0x5a5242&&_0x5a5242['remove']({'isFromAdapter':!0x0});}),this['listenTo'](_0x8b0fee,'commentAdded',(_0x580fa5,_0x3d2a1b)=>{const _0x5238b6=_0x3d2a1b['commentThreadId'],_0x4e6886=_0x371caf['getCommentThread'](_0x5238b6);_0x4e6886&&_0x4e6886['addComment']({...at(_0x3d2a1b),'isFromAdapter':!0x0});}),this['listenTo'](_0x8b0fee,'commentUpdated',(_0x2c0d60,{commentThreadId:_0x599b92,commentId:_0x4d41e6,content:_0xc11aa5,attributes:_0x14ba8f})=>{const _0x42c7d0=_0x371caf['getCommentThread'](_0x599b92);if(_0x42c7d0){const _0xfe0459=_0x42c7d0['getComment'](_0x4d41e6);_0xfe0459&&_0xfe0459['update']({'content':_0xc11aa5,'attributes':_0x14ba8f,'isFromAdapter':!0x0});}}),this['listenTo'](_0x8b0fee,'commentRemoved',(_0x26cba6,{commentThreadId:_0x37c005,commentId:_0xa363e6})=>{const _0x2ef879=_0x371caf['getCommentThread'](_0x37c005);if(_0x2ef879){const _0x55a588=_0x2ef879['getComment'](_0xa363e6);_0x55a588&&_0x55a588['remove']({'isFromAdapter':!0x0});}}),await this['_connectService'](_0x77f85f);}['destroy'](){if(this['context']instanceof _0x431f86){const _0x557111=this['context']['config']['get']('collaboration.channelId');this['_terminateService'](_0x557111);}}['_terminateService'](_0x11b028){if(!this['_services']['has'](_0x11b028))throw new _0x3d60ed('cloudservicescommentsadapter-disconnect-not-exist',null,{'channelId':_0x11b028});this['_getService'](_0x11b028)['disconnect'](),this['_services']['delete'](_0x11b028);}async['reconnect'](){for(const _0x4b0994 of this['_services']['keys']())await this['_connectService'](_0x4b0994);if(this['context']instanceof _0x431f86){const _0x3b3109=this['context']['config']['get']('collaboration.channelId'),_0x1d2ac0=this['context']['plugins']['get'](Y);_0x1d2ac0['unregister'](_0x3b3109);const _0xfb11d2=await this['_services']['get'](_0x3b3109)['getConnectedSessions']();_0x1d2ac0['register'](_0x3b3109,_0xfb11d2);}}async['_connectService'](_0x4b7ead){const {connection:_0x3c0f58}=this['context']['plugins']['get'](z),_0x4fc607=this['context']['plugins']['get'](_0x5c14d5),_0x5bf4ec=this['_services']['get'](_0x4b7ead),_0x8963a2=await _0x5bf4ec['connect'](_0x3c0f58);await this['_fetchMissingUsersForThreads'](_0x8963a2);const _0x96338d=new Set(Array['from'](_0x4fc607['getCommentThreads']({'channelId':_0x4b7ead}),_0x459014=>_0x459014['id']));for(const _0xb6553f of _0x8963a2)_0xb6553f['deletedAt']||_0x96338d['delete'](_0xb6553f['commentThreadId']);for(const _0x52a6fb of _0x96338d)_0x4fc607['getCommentThread'](_0x52a6fb)['remove']({'isFromAdapter':!0x0});for(const _0x45e4ce of _0x8963a2){let _0x538cf=_0x4fc607['getCommentThread'](_0x45e4ce['commentThreadId']);const {commentThreadId:_0x5698e3,context:_0x25d123,attributes:_0x3aa3d0,resolvedBy:_0x18ed4c,resolvedAt:_0x22a6eb,unlinkedAt:_0x4d69ee,deletedAt:_0x219cad}=_0x45e4ce;if(_0x219cad)continue;_0x538cf||(_0x538cf=_0x4fc607['addCommentThread']({'channelId':_0x4b7ead,'threadId':_0x5698e3,'context':_0x25d123,'attributes':_0x3aa3d0||{},'resolvedBy':_0x18ed4c,'resolvedAt':_0x22a6eb,'unlinkedAt':_0x4d69ee,'isFromAdapter':!0x0}));const _0x20285e=new Set(Array['from'](_0x538cf['comments'],_0x421169=>_0x421169['id']));for(const _0x1bffc6 of _0x45e4ce['comments'])_0x20285e['delete'](_0x1bffc6['commentId']);for(const _0x2779cf of _0x20285e)_0x538cf['getComment'](_0x2779cf)['remove']({'isFromAdapter':!0x0});for(const _0x414ca5 of _0x45e4ce['comments']){const _0x3edbf6=_0x538cf['getComment'](_0x414ca5['commentId']);_0x3edbf6?_0x3edbf6['content']!==_0x414ca5['content']&&_0x3edbf6['update']({'content':_0x414ca5['content'],'isFromAdapter':!0x0}):_0x538cf['addComment'](Object['assign'](at(_0x414ca5),{'isFromAdapter':!0x0}));}}}['_getService'](_0x53b497){if(!this['_services']['has'](_0x53b497))throw new _0x3d60ed('cloudservicescommentsadapter-service-not-exist',null,{'channelId':_0x53b497});return this['_services']['get'](_0x53b497);}async['_fetchMissingUsersForThreads'](_0x3e45b7){const _0x995aa=this['context']['plugins']['get'](_0x1a6e2b),{connection:_0x5a1f87}=this['context']['plugins']['get'](z),_0xd86da=new Set();for(const {resolvedBy:_0x4b80c0,comments:_0x49f22a}of _0x3e45b7){_0x4b80c0&&!_0x995aa['getUser'](_0x4b80c0)&&_0xd86da['add'](_0x4b80c0);for(const {userId:_0x206f37}of _0x49f22a)_0x995aa['getUser'](_0x206f37)||_0xd86da['add'](_0x206f37);}if(0x0===_0xd86da['size'])return;const _0x16314a=await _0x460a04['getMany'](_0x5a1f87,Array['from'](_0xd86da));for(const _0x1138a4 of _0x16314a)_0x995aa['getUser'](_0x1138a4['id'])||_0x995aa['addUser'](_0x1138a4);}}async function rt(_0x451cf7){if('404'!==_0x451cf7['code'])throw _0x451cf7;}function ct(_0x39ebdd){if((_0x21ebda=_0x39ebdd)['message']['startsWith']('cloud-services-internal-error:\x20Comments\x20Service\x20is\x20not\x20connected.')||_0x21ebda['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x21ebda['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.'))return new Promise(()=>{});var _0x21ebda;throw _0x39ebdd;}function at(_0x179417){return{'threadId':_0x179417['commentThreadId'],'commentId':_0x179417['commentId'],'content':_0x179417['content'],'createdAt':_0x179417['createdAt'],'authorId':_0x179417['userId'],'attributes':_0x179417['attributes']||{}};}class ht extends _0x39e050{static ['TrackChangesService']=/* #__PURE__ -- @preserve */
|
|
27
|
+
((()=>_0x547bd0)());['_bufferedRequests'];['_trackChangesService'];static get['requires'](){return[ot,_0x10b620,z];}static get['pluginName'](){return'CloudServicesTrackChangesAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0xe7e874){super(_0xe7e874);const _0x27dcc3=this['editor']['config']['get']('collaboration.channelId');this['_bufferedRequests']=new Map(),this['_trackChangesService']=new ht['TrackChangesService'](_0x27dcc3);}['init'](){const _0x1902ab=this['editor']['plugins']['get'](z),_0x3b1b2c=this['editor']['plugins']['get'](_0x10b620);return _0x3b1b2c['adapter']={'getSuggestion':async _0x4b7cd1=>{await this['_waitForServiceReady']();const _0x1a0823=await this['_trackChangesService']['get'](_0x4b7cd1)['catch'](lt);return await this['_fetchMissingUsersForThreads']([_0x1a0823]),_0x1a0823;},'addSuggestion':async({id:_0x5ec8a4,type:_0x248519,data:_0x187e26,originalSuggestionId:_0xba47c7,attributes:_0x1f3bab})=>{await this['_waitForServiceReady']();const _0x560880={'id':_0x5ec8a4,'type':_0x248519,'data':_0x187e26,'originalSuggestionId':_0xba47c7,'attributes':_0x1f3bab},_0x452ec6=await this['_trackChangesService']['add'](_0x5ec8a4,_0x248519,_0x187e26,_0xba47c7,_0x1f3bab)['catch'](_0x6480d7=>{if(dt(_0x6480d7))return new Promise(_0x39837c=>{this['_bufferedRequests']['set'](_0x5ec8a4,{'resolve':_0x39837c,'suggestionData':_0x560880});});throw _0x6480d7;});return this['_bufferedRequests']['delete'](_0x5ec8a4),_0x452ec6;},'updateSuggestion':async(_0x1dcf14,_0x57e7ee)=>{if(await this['_waitForServiceReady'](),'open'!==_0x57e7ee['state'])return this['_trackChangesService']['update'](_0x1dcf14,_0x57e7ee)['catch'](lt);}},this['listenTo'](this['_trackChangesService'],'suggestionUpdated',(_0x3e2724,_0x5bc736)=>{_0x3b1b2c['hasSuggestion'](_0x5bc736['id'])&&(_0x3b1b2c['getSuggestion'](_0x5bc736['id'])['attributes']=_0x5bc736['attributes']);}),this['_trackChangesService']['connect'](_0x1902ab['connection'])['then'](_0x160418=>(_0x1902ab['addToReconnectionStack'](this),this['_fetchMissingUsersForThreads'](_0x160418)['then'](()=>{for(const _0x519321 of _0x160418){_0x3b1b2c['addSuggestionData'](_0x519321)['_saved']=!0x0;}})));}async['reconnect'](){const _0x12942a=this['editor']['plugins']['get']('TrackChangesEditing'),{connection:_0x24b326}=this['editor']['plugins']['get'](z),_0x292b85=await this['_trackChangesService']['connect'](_0x24b326);await this['_fetchMissingUsersForThreads'](_0x292b85);for(const {suggestionData:_0xb5c11d,resolve:_0x56dcc1}of this['_bufferedRequests']['values']()){let _0x52f5e5=_0x292b85['find'](_0x32b266=>_0x32b266['id']===_0xb5c11d['id']);_0x52f5e5||(_0x52f5e5=await this['_trackChangesService']['add'](_0xb5c11d['id'],_0xb5c11d['type'],_0xb5c11d['data'],_0xb5c11d['originalSuggestionId'])),_0x56dcc1(_0x52f5e5);}for(const _0x303f8e of _0x292b85)_0x12942a['hasSuggestion'](_0x303f8e['id'])||_0x12942a['addSuggestionData'](_0x303f8e);}async['_waitForServiceReady'](){this['_trackChangesService']['isConnected']||await new Promise(_0x4ba33b=>{this['listenTo'](this['_trackChangesService'],'connected',_0x4ce30a=>{_0x4ce30a['off'](),_0x4ba33b();});});}async['_fetchMissingUsersForThreads'](_0x10c050){const _0x2d1ee7=this['editor']['plugins']['get'](_0x1a6e2b),{connection:_0x34c09d}=this['editor']['plugins']['get'](z),_0x5a1d73=new Set();for(const {authorId:_0x4bc9ff}of _0x10c050)_0x2d1ee7['getUser'](_0x4bc9ff)||_0x5a1d73['add'](_0x4bc9ff);if(0x0===_0x5a1d73['size'])return;const _0x26bc01=await _0x460a04['getMany'](_0x34c09d,Array['from'](_0x5a1d73));for(const _0x2e5133 of _0x26bc01)_0x2d1ee7['getUser'](_0x2e5133['id'])||_0x2d1ee7['addUser'](_0x2e5133);}}function lt(_0x66a525){if(dt(_0x66a525))return new Promise(()=>{});throw _0x66a525;}function dt(_0x2f3391){return _0x2f3391['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x2f3391['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}class ut extends _0x39e050{static get['requires'](){return[_0x135486,ot,nt,z];}static get['pluginName'](){return'RealTimeCollaborativeComments';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['init'](){const _0x89faf9=this['editor']['plugins']['get'](z),_0x2ebd96=this['editor']['plugins']['get'](_0x20d61a),_0x1aeb25=this['editor']['plugins']['get'](ot);return this['editor']['data']['once']('ready',()=>{this['listenTo'](_0x89faf9,'change:state',(_0x3ddf53,_0x8382cf,_0x1bd4aa)=>{_0x2ebd96['isThreadsLoadingPaused']='connected'!==_0x1bd4aa;});}),this['listenTo'](_0x89faf9,'change:state',(_0x456948,_0x5a444f,_0x27b5d1)=>{this['editor']['plugins']['get'](_0x5c14d5)['switchReadOnly']('connected'!==_0x27b5d1);}),_0x1aeb25['_setUpService'](this['editor']['config']['get']('collaboration.channelId'));}['destroy'](){this['editor']['plugins']['get'](ot)['_terminateService'](this['editor']['config']['get']('collaboration.channelId')),super['destroy']();}}class ft extends _0x39e050{static get['requires'](){return[ut,ht,_0x11010e];}static get['pluginName'](){return'RealTimeCollaborativeTrackChanges';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}class mt extends _0x39e050{static ['RevisionHistoryService']=/* #__PURE__ -- @preserve */
|
|
28
|
+
((()=>_0x108128)());['_lastRequestId'];['_revisionTracker'];['_revisionHistoryService'];['_oldOffset'];static get['requires'](){return[z,tt,_0x1a2046,Y,_0x1a6e2b];}static get['pluginName'](){return'CloudServicesRevisionHistoryAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x34fe5a){super(_0x34fe5a);const _0x5192a3=this['editor']['config']['get']('collaboration.channelId');this['_lastRequestId']=null,this['_revisionTracker']=this['editor']['plugins']['get']('RevisionTracker'),this['_revisionHistoryService']=new mt['RevisionHistoryService'](_0x5192a3);}async['init'](){const _0x2c4da1=this['editor']['plugins']['get'](tt),_0x3242aa=_0x2c4da1['serverHistory'],_0x5de2ee=this['editor']['plugins']['get'](z);this['_revisionTracker']['setSource']({'history':_0x3242aa,'getLatestVersion':()=>this['_getLatestVersion'](),'getCurrentRevisionId':()=>_0x2c4da1['sessionId']});const _0x29b2a7=this['editor']['config']['get']('cloudServices.bundleVersion')||_0x3fc9a9,_0x4b6e37=await _0xf6489d['isBundleUploaded'](_0x5de2ee['connection'],_0x29b2a7);this['editor']['plugins']['get'](_0x1a2046)['adapter']={'getRevision':async({revisionId:_0x2fe221})=>(await this['_waitForServiceReady'](),await this['_revisionHistoryService']['getRevision'](_0x2fe221)),'updateRevisions':async _0x5cca61=>{await this['_waitForServiceReady']();const _0x2b62bf=this['_revisionTracker']['currentRevision'];if(_0x4b6e37&&0x1===_0x5cca61['length']&&_0x5cca61[0x0]['id']===_0x2b62bf['id'])return _0x5cca61;for(const _0x5e49b9 of _0x5cca61)_0x5e49b9['id']===_0x2b62bf['id']&&(_0x5e49b9['isEmptyCurrent']=_0x5e49b9['fromVersion']===_0x5e49b9['toVersion']);return this['_revisionHistoryService']['updateRevisions'](_0x5cca61,this['_lastRequestId'])['then'](_0xe5e516=>(this['_lastRequestId']=_0xe5e516,_0x5cca61))['catch'](_0x1becaa=>{if(pt(_0x1becaa)||'400'===_0x1becaa['code']&&void 0x0!==_0x1becaa['data']['wrongRequestId']){for(const _0xe6baa7 of _0x5cca61){!this['_revisionTracker']['repository']['getRevision'](_0xe6baa7['id'])||this['_revisionTracker']['_bufferUpdate'](_0xe6baa7['id'],_0xe6baa7,!0x1);}if(pt(_0x1becaa)&&'destroyed'!==this['editor']['state'])throw _0x1becaa;return _0x5cca61;}throw _0x1becaa;});}},this['listenTo'](this['_revisionHistoryService'],'revisionsUpdated',(_0x2d8373,{revisionsData:_0x1c232e,requestId:_0x41fb9e})=>{Math['max'](..._0x1c232e['map'](_0x23f986=>_0x23f986['toVersion']))>this['_getLatestVersionFromServerOperations']()-0x1?this['_getLatestVersion']()['then'](()=>{this['_handleRevisionsUpdate'](_0x1c232e,_0x41fb9e);}):this['_handleRevisionsUpdate'](_0x1c232e,_0x41fb9e);});const {revisions:_0x1b6e51,requestId:_0x54ce10}=await this['_revisionHistoryService']['connect'](_0x5de2ee['connection']);_0x5de2ee['addToReconnectionStack'](this),this['_lastRequestId']=_0x54ce10,await this['_fetchMissingUsers'](_0x1b6e51);for(const _0x4517d0 of _0x1b6e51)this['_revisionTracker']['addRevisionData'](_0x4517d0);this['listenTo'](_0x2c4da1,'change:_isConnected',(_0x503cbc,_0x45a745,_0x2d6ca9)=>{_0x2d6ca9&&(this['_oldOffset']=_0x2c4da1['_offset'],_0x503cbc['off']());}),this['_revisionTracker']['bind']('isEnabled')['to'](_0x5de2ee,'state',_0xdeaffc=>_0xdeaffc===_0x41dc21['CONNECTED']);}async['reconnect'](){const _0x221b36=this['editor']['plugins']['get'](z),_0x481e44=this['editor']['plugins']['get'](tt),_0x489447=async()=>{const _0x41dd00=this['_revisionTracker']['currentRevision'],_0x238b2c=_0x41dd00['id'],_0x5682d2=_0x238b2c!==_0x481e44['sessionId'];if(_0x5682d2){const _0x48e6e8=_0x481e44['_offset']-this['_oldOffset'],_0x56e3ca=this['_getLatestVersionFromServerOperations']();this['_revisionTracker']['_revisionDataBuilder']['reInit']();if(_0x41dd00['toVersion']+_0x48e6e8!==_0x56e3ca){const _0x1f5437=_0x41dd00['fromVersion']+_0x48e6e8,_0x3266fc=this['editor']['plugins']['get'](_0x1a6e2b),_0x4b9d96=this['_revisionTracker']['buildRevisionData']({'revision':_0x41dd00,'from':_0x1f5437,'to':_0x56e3ca});_0x4b9d96['id']=_0x41dd00['id'];const _0x29aa31=_0x4b9d96['authorsIds']['map'](_0x25887c=>_0x3266fc['getUser'](_0x25887c));_0x41dd00['_update']({..._0x4b9d96,'authors':_0x29aa31},!0x0),this['_revisionTracker']['_bufferUpdate'](_0x41dd00['id'],_0x4b9d96,!0x0);}this['_revisionTracker']['_startingVersion']=_0x56e3ca,(_0x41dd00['toVersion']===_0x41dd00['fromVersion']&&!this['_revisionTracker']['_bufferedUpdates']['has'](_0x238b2c)&&this['_revisionTracker']['repository']['_revisions']['remove'](_0x238b2c),this['_revisionTracker']['_createCurrentRevision'](_0x56e3ca));}const {revisions:_0x518b01,requestId:_0xb0ac5d}=await this['_revisionHistoryService']['reconnect'](_0x221b36['connection'],this['_lastRequestId']);_0x5682d2&&_0x518b01['length']>0x0?_0x481e44['_handleReconnectionError']():(await this['_fetchMissingUsers'](_0x518b01),this['_handleRevisionsUpdate'](_0x518b01,_0xb0ac5d),this['_revisionTracker']['sendBufferedUpdates']());};return _0x481e44['_isConnected']?_0x489447():new Promise((_0x5c1a9c,_0x195d02)=>{_0x481e44['once']('change:_isConnected',()=>{_0x489447()['then'](_0x5c1a9c)['catch'](_0x195d02);});});}['destroy'](){super['destroy']();}async['_waitForServiceReady'](){this['_revisionHistoryService']['isConnected']||await new Promise(_0x34ec01=>{this['listenTo'](this['_revisionHistoryService'],'connected',_0x110c94=>{_0x110c94['off'](),_0x34ec01();});});}['_getLatestVersionFromServerOperations'](){const _0x2c9b16=this['editor']['plugins']['get'](tt)['serverHistory']['getOperations']()['reverse']();for(const _0x1f67b8 of _0x2c9b16)if('marker'!==_0x1f67b8['type']||_0x1f67b8['affectsData'])return _0x1f67b8['baseVersion']+0x1;}['_getLatestVersion'](){const _0x3cc876=this['editor']['plugins']['get'](tt);return new Promise(_0x2ac162=>{_0x3cc876['_isPendingUpdate']?_0x3cc876['once']('change:_isPendingUpdate',()=>{_0x2ac162(this['_getLatestVersionFromServerOperations']());}):_0x2ac162(this['_getLatestVersionFromServerOperations']());});}['_handleRevisionsUpdate'](_0x460d4d,_0x1eb7de){const _0x4c9cf3=this['_revisionTracker']['repository'];this['_lastRequestId']=_0x1eb7de;for(const _0x1a3683 of _0x460d4d){const _0x110259=_0x4c9cf3['getRevision'](_0x1a3683['id']);if(_0x110259){if((_0x1a3683['fromVersion']||_0x1a3683['toVersion'])&&(_0x1a3683['diffData']=null),_0x110259===this['_revisionTracker']['currentRevision']){const _0x51018f=Math['max'](_0x110259['toVersion'],_0x1a3683['toVersion']),_0x241887=Math['max'](_0x110259['fromVersion'],_0x1a3683['fromVersion']);let _0x297acd;_0x110259['toVersion']===_0x1a3683['toVersion']&&_0x110259['fromVersion']===_0x1a3683['fromVersion']?(_0x297acd=!0x0,this['_preventResendingRevisionData'](_0x1a3683)):_0x1a3683['toVersion']===_0x51018f&&_0x1a3683['fromVersion']===_0x241887?_0x297acd=!0x1:(_0x110259['toVersion']===_0x51018f&&_0x110259['fromVersion']===_0x241887||this['_fixRevision']({'revision':_0x110259,'from':_0x241887,'to':_0x51018f}),_0x297acd=!0x0),_0x297acd&&(delete _0x1a3683['fromVersion'],delete _0x1a3683['toVersion'],delete _0x1a3683['diffData'],delete _0x1a3683['createdAt'],delete _0x1a3683['authorsIds']);}this['_revisionTracker']['setRevisionData'](_0x1a3683),this['_preventResendingRevisionData'](_0x1a3683);}else this['_revisionTracker']['addRevisionData'](_0x1a3683);}const _0x1a44d8=_0x4c9cf3['getRevisions']();_0x1a44d8['reverse']();for(let _0x11fdf3=0x0;_0x11fdf3<_0x1a44d8['length']-0x1;_0x11fdf3++){const _0x157c77=_0x1a44d8[_0x11fdf3],_0xb78396=_0x1a44d8[_0x11fdf3+0x1];if(_0x157c77['fromVersion']<_0xb78396['toVersion']){const _0x119ad0=_0xb78396['toVersion'],_0x1cb53d=Math['max'](_0x119ad0,_0x157c77['toVersion']);this['_fixRevision']({'revision':_0x157c77,'from':_0x119ad0,'to':_0x1cb53d});}}}['_fixRevision']({revision:_0x157cec,from:_0x279b1c,to:_0x538d51}={}){const _0x490765=this['editor']['plugins']['get'](_0x1a6e2b),_0x30073d=this['_revisionTracker']['buildRevisionData']({'revision':_0x157cec,'from':_0x279b1c,'to':_0x538d51});_0x30073d['authors']=_0x30073d['authorsIds']['map'](_0x159752=>_0x490765['getUser'](_0x159752)),_0x157cec['_update'](_0x30073d);}['_preventResendingRevisionData'](_0x47cade){const _0x211284={};_0x211284['id']=_0x47cade['id'];for(const _0xe9bfbc of Object['keys'](_0x47cade))'id'!==_0xe9bfbc&&(_0x211284[_0xe9bfbc]=void 0x0);this['_revisionTracker']['_bufferUpdate'](_0x211284['id'],_0x211284,!0x0);}async['_fetchMissingUsers'](_0x40e87a){const _0x862099=this['editor']['plugins']['get'](_0x1a6e2b),{connection:_0x5b23cb}=this['editor']['plugins']['get'](z),_0x2db0bb=new Set();for(const _0x52c453 of _0x40e87a){for(const _0x59febc of _0x52c453['authorsIds'])_0x3d4c18(_0x59febc);_0x52c453['creatorId']&&_0x3d4c18(_0x52c453['creatorId']);}if(0x0===_0x2db0bb['size'])return;const _0x3d3c76=await _0x460a04['getMany'](_0x5b23cb,Array['from'](_0x2db0bb));for(const _0x3c10f4 of _0x3d3c76)_0x862099['getUser'](_0x3c10f4['id'])||_0x862099['addUser'](_0x3c10f4);function _0x3d4c18(_0x3d95f6){_0x862099['getUser'](_0x3d95f6)||_0x2db0bb['add'](_0x3d95f6);}}}function pt(_0xe4495a){return _0xe4495a['message']['startsWith']('cloud-services-internal-error:\x20Revision\x20History\x20Service\x20is\x20not\x20connected.')||_0xe4495a['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0xe4495a['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}class gt extends _0x39e050{static get['requires'](){return[_0x1a2046,mt,nt];}static get['pluginName'](){return'RealTimeCollaborativeRevisionHistory';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}class wt extends _0x517c2e{['_collapseAt'];constructor(_0xe35375,_0x2f93fa=0x6){super(_0xe35375);const _0x265bc0=this['bindTemplate'];this['set']('isHidden',!0x0),this['set']('usersCount',0x0),this['_collapseAt']=_0x2f93fa,this['bind']('isHidden')['to'](this,'usersCount',_0x305809=>_0x305809<_0x2f93fa),this['setTemplate']({'tag':'div','attributes':{'class':['ck','ck-presence-list__list-item',_0x265bc0['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':_0x265bc0['to']('usersCount',_0x53143d=>'+'+(_0x53143d-this['_collapseAt']+0x2)['toString']())}]}]}]});}}class vt extends _0x517c2e{['items'];['keystrokes'];constructor(_0x5f3274){super(_0x5f3274);const _0x5972d7=this['bindTemplate'];this['items']=this['createCollection'](),this['keystrokes']=new _0x5441f9(),this['set']({'hasPopup':!0x1,'isExpanded':!0x1}),this['setTemplate']({'tag':'div','attributes':{'aria-haspopup':_0x5972d7['if']('hasPopup'),'aria-expanded':_0x5972d7['to']('isExpanded',_0x57bd7d=>this['hasPopup']&&String(_0x57bd7d)),'aria-label':_0x5972d7['to']('hasPopup',_0x12042a=>X(_0x5f3274,_0x12042a?'Collapsed\x20connected\x20users\x20list\x20(press\x20ENTER\x20to\x20open\x20it)':'Connected\x20users\x20list')),'role':'list','tabindex':_0x5972d7['to']('hasPopup',_0x4960b6=>!!_0x4960b6&&0x0),'class':['ck','ck-presence-list__list']},'children':this['items'],'on':{'mouseenter':_0x5972d7['to'](()=>this['fire']('presencelist:show')),'mouseleave':_0x5972d7['to'](_0x3cc251=>{const _0x517406=_0x3cc251,_0x36b63d=document['querySelector']('.ck-presence-list__dropdown-list'),_0x7cf6fd=document['querySelector']('.ck-balloon-panel_with-arrow');_0x36b63d?.['contains'](_0x517406['relatedTarget'])||_0x7cf6fd?.['contains'](_0x517406['relatedTarget'])||this['fire']('presencelist:hide');})}}),this['on']('change:hasPopup',(_0x48f310,_0x3e1ec0,_0x1d4533)=>{this['element']&&(_0x1d4533?this['element']['setAttribute']('aria-expanded',String(this['isExpanded'])):this['element']['removeAttribute']('aria-expanded'));});}['focus'](){this['element']['focus']();}['render'](){super['render'](),this['keystrokes']['listenTo'](this['element']);}}class _t extends _0x517c2e{['counterView'];['inlineListView'];constructor(_0x1a5c9c,_0x1e650d=0x6){super(_0x1a5c9c);const _0x449a65=this['bindTemplate'];this['set']('isCollapsed',!0x0),this['counterView']=new wt(this['locale'],_0x1e650d),this['inlineListView']=new vt(_0x1a5c9c),this['inlineListView']['bind']('hasPopup')['to'](this,'isCollapsed'),this['listenTo'](this['inlineListView']['items'],'change',()=>{for(const _0x8df22f of this['inlineListView']['items'])_0x8df22f['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',_0x449a65['if']('isCollapsed','ck-presence-list--collapsed')]},'children':[this['inlineListView']]});}}class yt extends _0x517c2e{['listWrapperView'];constructor(_0xa0bf37,_0x29c481){super(_0xa0bf37);const _0x33455f=this['bindTemplate'];this['listWrapperView']=new bt(_0xa0bf37,_0x29c481),this['setTemplate']({'tag':'div','attributes':{'tabindex':-0x1,'role':'application','class':['ck','ck-presence-list__dropdown-list'],'aria-label':X(_0xa0bf37,'Connected\x20users\x20list\x20dropdown\x20menu')},'children':[this['listWrapperView']],'on':{'mouseleave':_0x33455f['to'](_0xfb40ad=>{const _0x42abc1=_0xfb40ad,_0x4812d3=document['querySelector']('.ck-presence-list__list'),_0x3c6207=document['querySelector']('.ck-balloon-panel_with-arrow');_0x4812d3?.['contains'](_0x42abc1['relatedTarget'])||_0x3c6207?.['contains'](_0x42abc1['relatedTarget'])||this['fire']('presencelist:hide');})}});}}class bt extends _0x2d51b1{constructor(_0x3a88ab,_0x494da3){super(_0x3a88ab);const _0x3eac39=this['bindTemplate'];this['set']('_isScrollable',!0x1),this['setTemplate']({'tag':_0x494da3?'div':'ul','attributes':{'class':['ck','ck-reset','ck-list','ck-presence-list__dropdown-list-wrapper',_0x3eac39['if']('_isScrollable','ck-presence-list__dropdown-list-wrapper_scrollable')],'role':_0x3eac39['to']('role'),'aria-label':_0x3eac39['to']('ariaLabel'),'aria-labelledby':_0x3eac39['to']('ariaLabelledBy')},'children':this['items']}),this['listenTo'](_0x390801['window'],'resize',()=>this['checkIfScrollable']()),this['items']['on']('change',()=>this['checkIfScrollable']());}['render'](){super['render'](),this['checkIfScrollable']();}['checkIfScrollable'](){const _0x21ffdd=this['element'];_0x21ffdd&&(this['_isScrollable']=Math['max'](_0x21ffdd['scrollHeight'],_0x21ffdd['clientHeight'])>0.8*window['innerHeight']);}}class kt extends _0x3c1ad7{['userView'];constructor(_0xf1d95d,_0xed4b91,_0x354b1f){super(_0xf1d95d);const _0x293889=this['bindTemplate'];this['userView']=new _0x2a5839(_0xf1d95d,_0xed4b91);const _0x250ab0={'tag':'li','attributes':{'class':['ck','ck-presence-list__dropdown-list-item'],'tabindex':-0x1,'role':'presentation','aria-label':_0xed4b91['name']},'children':[this['userView'],{'tag':'span','attributes':{'class':['ck','ck-user__full-name']},'children':[{'text':_0xed4b91['name']}]},{'tag':'span','attributes':{'class':['ck','ck-presence-list__marker',_0xed4b91['color']['getBackgroundColorClass']()],'style':{'--ck-user-color':_0xed4b91['color']['getColorVariable'](),'--ck-user-color-alpha':_0xed4b91['color']['getColorAlphaVariable']()},'aria-hidden':'true'}}]};_0x354b1f&&(_0x250ab0['tag']='button',_0x250ab0['on']={'click':_0x293889['to'](()=>this['fire']('execute'))}),this['setTemplate'](_0x250ab0);}['focus'](){this['element']['focus']();}}class It extends _0x517c2e{['userView'];['markerView'];constructor(_0x34743b,_0x110625,_0x3da9c6){super(_0x34743b);const _0x44f62e=this['bindTemplate'];this['set']('isFocusable',!0x1),this['set']('hasTooltip',!0x0),this['set']('tooltipPosition',''),this['userView']=new _0x2a5839(_0x34743b,_0x110625),this['markerView']=new St(_0x34743b,_0x110625);const _0x2e9f5a=new _0xfbd9bd(_0x34743b);_0x2e9f5a['template']['tag']='span',_0x2e9f5a['text']=_0x110625['name'];const _0x191df1={'tag':'div','attributes':{'class':['ck','ck-presence-list__list-item'],'role':'listitem','tabindex':_0x44f62e['to']('isFocusable',_0x2dea3e=>!!_0x2dea3e&&0x0),'aria-labelledby':_0x2e9f5a['id'],'data-cke-tooltip-text':this['userView']['name'],'data-cke-tooltip-position':_0x44f62e['to']('tooltipPosition'),'data-cke-tooltip-disabled':_0x44f62e['to']('hasTooltip',_0x440f81=>!_0x440f81),'data-cke-tooltip-class':'ck-presence-list__list-item__tooltip'},'children':[this['userView'],this['markerView'],_0x2e9f5a]};_0x3da9c6&&(_0x191df1['tag']='button',_0x191df1['on']={'click':_0x44f62e['to'](()=>this['fire']('execute'))}),this['setTemplate'](_0x191df1);}}class St extends _0x517c2e{constructor(_0x33c298,_0x5334a0){super(_0x33c298),this['setTemplate']({'tag':'span','attributes':{'class':['ck','ck-presence-list__marker',_0x5334a0['color']['getBackgroundColorClass']()],'style':{'--ck-user-color':_0x5334a0['color']['getColorVariable'](),'--ck-user-color-alpha':_0x5334a0['color']['getColorAlphaVariable']()},'aria-hidden':'true'}});}}const Tt={'collapseAt':0x6,'displayMe':!0x0};class At extends _0x299a1f{['currentDisplayedUsers'];['balloonPanelView'];['view'];['presenceDropdownView'];['_bodyCollection']=null;static get['pluginName'](){return'PresenceListUI';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x195d7b){super(_0x195d7b),this['context']['config']['define']('presenceList',Tt);const _0x595b79=_0x195d7b['config']['get']('presenceList.collapseAt');if('number'!=typeof _0x595b79)throw new _0x3d60ed('presencelist-collapseat-invalid-format',this);if(_0x595b79<0x1)throw new _0x3d60ed('presencelist-collapseat-invalid-format',this);this['_allConnectedUsers']=this['context']['plugins']['get'](Y)['allConnectedUsers'],this['set']('usersCount',0x0),this['currentDisplayedUsers']=new _0x3fe7eb(),this['balloonPanelView']=new _0x56d969(),this['balloonPanelView']['class']='ck\x20ck-presence-list__balloon',this['view']=this['_createView'](),this['presenceDropdownView']=void 0x0;}static get['requires'](){return[Y];}['init'](){for(const _0x305983 of this['_allConnectedUsers'])this['_handleUserAdd'](_0x305983);this['listenTo'](this['_allConnectedUsers'],'add',(_0x1fa1d4,_0x3aa2e9)=>{this['_handleUserAdd'](_0x3aa2e9);}),this['listenTo'](this['_allConnectedUsers'],'remove',(_0x49479e,_0x654f13)=>{this['_handleUserRemove'](_0x654f13);});}['_createView'](){const _0x5a4344=this['context'],_0x7bfe21=new _t(this['context']['locale'],this['context']['config']['get']('presenceList.collapseAt')),_0xfeea41=this['balloonPanelView'];if(!_0x3c49ac(_0x5a4344['config']['get']('presenceList.container')))throw new _0x3d60ed('presencelist-missing-container',this);return _0x7bfe21['counterView']['bind']('usersCount')['to'](this),_0x7bfe21['bind']('isCollapsed')['to'](this,'usersCount',_0xf535c7=>{const {collapseAt:_0x2b205d}=_0x5a4344['config']['get']('presenceList'),_0x3a9787=_0xf535c7>=_0x2b205d;if(_0x3a9787&&!_0x7bfe21['inlineListView']['items']['find'](_0x460d2f=>_0x460d2f instanceof wt)){const _0xe0c731=this['context']['config']['get']('presenceList.collapseAt')-0x1;this['currentDisplayedUsers']['length']==_0xe0c731&&this['currentDisplayedUsers']['length']>0x1&&this['currentDisplayedUsers']['remove'](this['currentDisplayedUsers']['length']-0x1),_0x7bfe21['inlineListView']['items']['add'](_0x7bfe21['counterView']);}return _0x3a9787||this['hideDropdown'](),_0x3a9787;}),_0x7bfe21['inlineListView']['items']['bindTo'](this['currentDisplayedUsers'])['using'](_0x4188fa=>{const _0x8ab4aa=_0x5a4344['config']['get']('presenceList'),_0x379bc2=new It(_0x5a4344['locale'],_0x4188fa,!!_0x8ab4aa['onClick']);return _0x379bc2['bind']('hasTooltip')['to'](_0x7bfe21,'isCollapsed',_0x2006ca=>!_0x2006ca),_0x379bc2['bind']('isFocusable')['to'](_0x7bfe21,'isCollapsed',_0x93904e=>!_0x93904e),_0x8ab4aa['onClick']&&this['listenTo'](_0x379bc2,'execute',()=>{this['view']['isCollapsed']||_0x8ab4aa['onClick'](_0x4188fa,_0x379bc2['element']);}),_0x379bc2;}),this['listenTo'](_0x7bfe21['inlineListView'],'presencelist:show',()=>{this['view']['isCollapsed']&&this['showDropdown']();}),this['listenTo'](_0x7bfe21['inlineListView'],'presencelist:hide',()=>{this['presenceDropdownView']&&this['hideDropdown']();}),_0x7bfe21['inlineListView']['keystrokes']['set']('Enter',(_0x2753cc,_0x442a4c)=>{this['view']['isCollapsed']&&(this['showDropdown'](),_0x442a4c());}),_0x7bfe21['render'](),_0xfeea41['render'](),_0x157e4b({'emitter':_0x7bfe21,'activator':()=>_0xfeea41['isVisible'],'contextElements':[_0xfeea41['element'],_0x7bfe21['inlineListView']['element']],'callback':()=>this['hideDropdown']()}),_0x5a4344['config']['get']('presenceList.container')['appendChild'](_0x7bfe21['element']),this['_bodyCollection']=new _0x2cddbd(this['context']['locale']),this['_bodyCollection']['attachToDom'](),this['_bodyCollection']['add'](this['balloonPanelView']),_0x7bfe21;}['_handleUserAdd'](_0x35b08f){if(!this['context']['config']['get']('presenceList.displayMe')&&_0x35b08f['isMe'])return;const _0x1b1c69=this['context']['config']['get']('presenceList.collapseAt')-0x1;for(this['usersCount']++;this['currentDisplayedUsers']['length']>=_0x1b1c69-(this['view']['isCollapsed']?0x1:0x0)&&this['currentDisplayedUsers']['length']>0x1;)this['currentDisplayedUsers']['remove'](0x1);const _0x1223a1=_0x35b08f['isMe']?0x0:this['currentDisplayedUsers']['length'];this['currentDisplayedUsers']['add'](_0x35b08f,_0x1223a1);}['_handleUserRemove'](_0x19be26){this['usersCount']--;const {collapseAt:_0x521888}=this['context']['config']['get']('presenceList'),_0x405516=this['usersCount']>=_0x521888;if(this['currentDisplayedUsers']['get'](_0x19be26['id']))this['currentDisplayedUsers']['remove'](_0x19be26['id']);else{if(_0x405516&&this['currentDisplayedUsers']['length']+0x1===_0x521888-0x1)return;}if(this['currentDisplayedUsers']['length']+(_0x405516?0x1:0x0)<this['usersCount']){for(const _0x50a010 of Array['from'](this['_allConnectedUsers'])['reverse']())if(!this['currentDisplayedUsers']['get'](_0x50a010['id'])&&(this['currentDisplayedUsers']['add'](_0x50a010,Math['min'](this['currentDisplayedUsers']['length']-(_0x405516?0x1:0x0),0x1)),this['currentDisplayedUsers']['length']+(_0x405516?0x1:0x0)===_0x521888-0x1))return;}}['showDropdown'](){if(this['presenceDropdownView'])return;const _0x366057=this['context']['config']['get']('presenceList');this['presenceDropdownView']=new yt(this['context']['locale'],!!_0x366057['onClick']),this['view']['inlineListView']['isExpanded']=!0x0,this['listenTo'](this['presenceDropdownView'],'presencelist:hide',()=>{this['presenceDropdownView']&&this['hideDropdown']();});const {listWrapperView:_0x4302dd}=this['presenceDropdownView'];_0x4302dd['items']['bindTo'](this['_allConnectedUsers'])['using'](_0x87a27b=>{if(!_0x366057['displayMe']&&_0x87a27b['isMe'])return null;const _0x303d6f=new kt(this['context']['locale'],_0x87a27b,!!_0x366057['onClick']);return _0x366057['onClick']&&this['listenTo'](_0x303d6f,'execute',()=>{_0x366057['onClick'](_0x87a27b,_0x303d6f['element']);}),_0x303d6f;}),this['balloonPanelView']['content']['add'](this['presenceDropdownView']),this['balloonPanelView']['pin']({'target':this['view']['inlineListView']['element']}),_0x4302dd['focus'](),_0x4302dd['checkIfScrollable']();const _0x186c74=(_0xcc6900,_0x5f9b1b)=>{this['hideDropdown'](),this['view']['inlineListView']['focus'](),_0x5f9b1b();};_0x4302dd['keystrokes']['set']('Esc',_0x186c74),_0x4302dd['keystrokes']['set']('Shift+Tab',_0x186c74),_0x4302dd['keystrokes']['set']('Tab',(_0x1c0340,_0x39bdd2)=>{!function(_0x52e048){const _0x5180c2=['a','button','input','select','textarea','[tabindex]','[contenteditable]']['map'](_0x3ecec4=>_0x3ecec4+':not([disabled]):not([tabindex=\x22-1\x22])')['join'](','),_0x580bad=[...document['body']['querySelectorAll'](_0x5180c2)]['filter'](_0x588b47=>_0x588b47===document['activeElement']||_0x588b47['offsetWidth']+_0x588b47['offsetHeight']>0x0)['sort']((_0x487bc3,_0x292ed0)=>(_0x487bc3['tabIndex']||0x0)-(_0x292ed0['tabIndex']||0x0)),_0x5de4c7=_0x580bad['indexOf'](_0x52e048),_0x37df3f=_0x580bad[(_0x5de4c7+0x1)%_0x580bad['length']];_0x37df3f&&_0x37df3f['focus']();}(this['view']['element']),this['hideDropdown'](),_0x39bdd2();}),_0x4302dd['focusTracker']['add'](this['view']['element']),_0x4302dd['focusTracker']['on']('change:isFocused',(_0x46ad06,_0x430072,_0x497237)=>{_0x497237||this['hideDropdown']();});}['hideDropdown'](){this['presenceDropdownView']&&(this['view']['inlineListView']['isExpanded']=!0x1,this['balloonPanelView']['unpin'](),this['balloonPanelView']['content']['remove'](this['presenceDropdownView']),this['presenceDropdownView']['destroy'](),this['presenceDropdownView']=void 0x0);}['destroy'](){super['destroy'](),this['view']&&this['view']['isRendered']&&this['view']['destroy'](),this['_bodyCollection']&&(this['_bodyCollection']['detachFromDom'](),this['_bodyCollection']['destroy'](),this['_bodyCollection']=null);}}class Pt extends _0x299a1f{static get['requires'](){return[Y,At];}static get['pluginName'](){return'PresenceList';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}export{ot as CloudServicesCommentsAdapter,mt as CloudServicesRevisionHistoryAdapter,ht as CloudServicesTrackChangesAdapter,Pt as PresenceList,At as PresenceListUI,tt as RealTimeCollaborationClient,ut as RealTimeCollaborativeComments,nt as RealTimeCollaborativeEditing,gt as RealTimeCollaborativeRevisionHistory,ft as RealTimeCollaborativeTrackChanges,Y as Sessions,z as WebSocketGateway};
|
package/dist/translations/af.js
CHANGED
|
@@ -20,4 +20,4 @@
|
|
|
20
20
|
*
|
|
21
21
|
*
|
|
22
22
|
*/
|
|
23
|
-
export default{'af':{'dictionary':{'CONNECTED_USERS':['',''],'PENDING_ACTION_SENDING_DATA':'','Synchronization\x20issue':'','Connected\x20users\x20list\x20dropdown\x20menu':'','Connected\x20users\x20list':'','Collapsed\x20connected\x20users\x20list\x20(press\x20ENTER\x20to\x20open\x20it)':'','The\x20document\x20cannot\x20be\x20connected\x20back\x20to\x20the\x20server.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':'','The\x20document\x20details\x20could\x20not\x20be\x20taken\x20during\x20the\x20reconnection.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':'','The\x20last\x20saved\x20version\x20of\x20the\x20document\x20does\x20not\x20match\x20the\x20local\x20version.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':'','The\x20local\x20document\x20and\x20server\x20document\x20differ\x20and\x20merging\x20them\x20can\x20cause\x20unexpected\x20behavior.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':''},'getPluralForm':
|
|
23
|
+
export default{'af':{'dictionary':{'CONNECTED_USERS':['',''],'PENDING_ACTION_SENDING_DATA':'','Synchronization\x20issue':'','Connected\x20users\x20list\x20dropdown\x20menu':'','Connected\x20users\x20list':'','Collapsed\x20connected\x20users\x20list\x20(press\x20ENTER\x20to\x20open\x20it)':'','The\x20document\x20cannot\x20be\x20connected\x20back\x20to\x20the\x20server.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':'','The\x20document\x20details\x20could\x20not\x20be\x20taken\x20during\x20the\x20reconnection.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':'','The\x20last\x20saved\x20version\x20of\x20the\x20document\x20does\x20not\x20match\x20the\x20local\x20version.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':'','The\x20local\x20document\x20and\x20server\x20document\x20differ\x20and\x20merging\x20them\x20can\x20cause\x20unexpected\x20behavior.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':''},'getPluralForm':_0x399177=>0x1!=_0x399177}};
|