@ckeditor/ckeditor5-real-time-collaboration 48.0.0-alpha.8 → 48.0.0
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
|
-
((()=>_0x496e3e)());static ['initialReconnectionInterval']=0x3e8;['connection'];['_reconnectionStack'];['_shouldPluginsReconnect'];['_domEmitter'];static get['requires'](){return[_0xa5e6d9,_0x4edca5];}static get['pluginName'](){return'WebSocketGateway';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x47f6b8){super(_0x47f6b8),this['set']('state',_0x4f3cbc['CONNECTED']),this['set']('_isBrowserOffline',!0x1),this['_reconnectionStack']=new Set(),this['_shouldPluginsReconnect']=!0x1,this['_domEmitter']=new(_0x238e54())();}['init'](){const _0x5ef00a=this['context'],_0x58bcf4=_0x5ef00a['plugins']['get'](_0xa5e6d9),_0x5e6a84=_0x5ef00a['plugins']['get'](_0x4edca5);if(!_0x58bcf4['token'])throw new _0x5d88de('websocketgateway-missing-token',this);if(!_0x58bcf4['webSocketUrl'])throw new _0x5d88de('websocketgateway-missing-websocket-url',this);return this['_domEmitter']['listenTo'](window,'offline',()=>this['_isBrowserOffline']=!0x0),this['_domEmitter']['listenTo'](window,'online',()=>this['_isBrowserOffline']=!0x1),this['context']['config']['define']('cloudServices.connectionTimeout',0xa),this['context']['config']['define']('cloudServices.requestTimeout',0x14),z['WebSocketGateway']['connect'](_0x58bcf4['token'],_0x58bcf4['webSocketUrl'],{'timeout':0x3e8*this['context']['config']['get']('cloudServices.connectionTimeout'),'requestTimeout':0x3e8*this['context']['config']['get']('cloudServices.requestTimeout')})['then'](_0x5d2811=>{if(this['connection']=_0x5d2811,this['bind']('state')['to'](_0x5d2811,'state',this,'_isBrowserOffline',(_0x40a7bc,_0x25a955)=>('connected'!==_0x40a7bc&&(this['_shouldPluginsReconnect']=!0x0),_0x25a955||_0x40a7bc!==_0x4f3cbc['CONNECTED']?_0x4f3cbc['DISCONNECTED']:this['state']==_0x4f3cbc['DISCONNECTED']&&this['_shouldPluginsReconnect']?(this['_shouldPluginsReconnect']=!0x1,this['_reconnect'](),_0x4f3cbc['CONNECTING']):_0x4f3cbc['CONNECTED'])),this['connection']['on']('error',(_0x9a8462,_0x421463)=>{if('limitExceeded'!==_0x421463['code'])throw console['error'](_0x421463),new _0x5d88de('cloudservices-init',null,{'originalError':_0x421463});_0x5e6a84['showWarning']('The\x20limit\x20of\x20maximum\x20concurrent\x20connections\x20that\x20the\x20collaboration\x20server\x20can\x20handle\x20has\x20been\x20reached.\x20Try\x20opening\x20the\x20document\x20again\x20in\x20a\x20few\x20minutes.\x20Please\x20contact\x20your\x20system\x20administrator\x20if\x20the\x20problem\x20persists.',{'title':'Connected\x20users\x20limit\x20exceeded','namespace':'real-time-collaboration'});}),!_0x5d2811['me'])return new Promise(_0x18daed=>_0x5d2811['on']('change:me',_0x18daed));})['catch'](_0xfaf447=>{throw console['error'](_0xfaf447),new _0x5d88de('cloudservices-init',null,{'originalError':_0xfaf447});});}['addToReconnectionStack'](_0x275613){if('function'!=typeof _0x275613['reconnect'])throw new _0x5d88de('websocketgateway-invalid-plugin-interface',this);if(this['isInReconnectionStack'](_0x275613))throw new _0x5d88de('websocketgateway-plugin-already-registered',this,{'name':_0x275613['constructor']['pluginName']});this['_reconnectionStack']['add'](_0x275613);}['removeFromReconnectionStack'](_0x295a30){this['_reconnectionStack']['delete'](_0x295a30);}['isInReconnectionStack'](_0x4a9192){return this['_reconnectionStack']['has'](_0x4a9192);}['_reconnect'](){return this['connection']['reconnect']()['then'](()=>Promise['all'](Array['from'](this['_reconnectionStack'],_0x570114=>_0x570114['reconnect']())))['then'](()=>this['state']=_0x4f3cbc['CONNECTED'])['catch'](_0x4bb355=>{throw console['error'](_0x4bb355),new _0x5d88de('cloudservices-reconnection-error',this['context']);});}['disconnect'](){this['connection']&&this['connection']['disconnect'](),this['state']=_0x4f3cbc['DISCONNECTED'],this['_domEmitter']['stopListening']();}['destroy'](){this['disconnect'](),super['destroy']();}}class Y extends _0x6b13bf{['channelSessions'];['channelConnectedUsers'];['allConnectedUsers'];['_registeredSessions'];['_uniqueUsersCount'];['_users'];static get['pluginName'](){return'Sessions';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}static get['requires'](){return[z,_0x3847b0];}constructor(_0x412c73){super(_0x412c73),this['channelSessions']=new Map(),this['channelConnectedUsers']=new Map(),this['allConnectedUsers']=new _0x37a42c(),this['_registeredSessions']=new Map(),this['_uniqueUsersCount']=0x0,this['_users']=this['context']['plugins']['get'](_0x3847b0);}['init'](){const _0x4b577e=this['context']['plugins']['get'](z);this['listenTo'](_0x4b577e,'change:state',(_0x39da6b,_0x219aba,_0x72d3c2)=>{if('connected'!==_0x72d3c2)this['channelSessions']['forEach'](_0x3d014e=>_0x3d014e['clear']()),this['channelConnectedUsers']['forEach'](_0x500274=>_0x500274['clear']()),this['allConnectedUsers']['clear']();else{for(const [_0x21c212,_0xa11da]of this['_registeredSessions'])for(const _0x3012be of _0xa11da)this['_handleSessionAdd'](_0x21c212,_0x3012be);}}),this['_createUser'](_0x4b577e['connection']['me'],!0x0);}['register'](_0x305b77,_0x5aeca4){if(this['_registeredSessions']['has'](_0x305b77))throw new _0x5d88de('sessions-register-already-registered',null,{'channelId':_0x305b77});this['_registeredSessions']['set'](_0x305b77,_0x5aeca4),this['channelSessions']['set'](_0x305b77,new _0x37a42c()),this['channelConnectedUsers']['set'](_0x305b77,new _0x37a42c()),this['listenTo'](_0x5aeca4,'add',(_0x26e4e6,_0x46e7e1)=>this['_handleSessionAdd'](_0x305b77,_0x46e7e1)),this['listenTo'](_0x5aeca4,'remove',(_0xfe60b6,_0x1e7899)=>this['_handleSessionRemove'](_0x305b77,_0x1e7899));for(const _0x4e85fe of _0x5aeca4)this['_handleSessionAdd'](_0x305b77,_0x4e85fe);}['unregister'](_0x4a7d8b){if(!this['_registeredSessions']['has'](_0x4a7d8b))throw new _0x5d88de('sessions-unregister-not-exist',null,{'channelId':_0x4a7d8b});const _0x5b64ce=this['_registeredSessions']['get'](_0x4a7d8b);this['stopListening'](_0x5b64ce);for(const _0x1bf3e2 of _0x5b64ce)'connected'===this['context']['plugins']['get'](z)['state']&&this['_handleSessionRemove'](_0x4a7d8b,_0x1bf3e2);this['_registeredSessions']['delete'](_0x4a7d8b),this['channelSessions']['delete'](_0x4a7d8b),this['channelConnectedUsers']['delete'](_0x4a7d8b);}get['mySessionId'](){return this['context']['plugins']['get'](z)['connection']['sessionId'];}['getUserBySessionId'](_0xee0ed5){for(const _0x3f3e72 of this['channelSessions']['values']())for(const _0x54fb11 of _0x3f3e72)if(_0x54fb11['id']===_0xee0ed5)return _0x54fb11['user'];}['getUserSessions'](_0x333461,_0xe5b06f){const _0x23448d=_0xe5b06f?[this['channelSessions']['get'](_0xe5b06f)]:this['channelSessions']['values'](),_0x18b566=new Set();for(const _0x5f3a19 of _0x23448d)for(const _0x2068a2 of _0x5f3a19)_0x2068a2['user']['id']===_0x333461['id']&&_0x18b566['add'](_0x2068a2['id']);return _0x18b566;}['getUserRole'](_0x4d0666){for(const _0x39734c of this['channelSessions']['values']())for(const _0x46065c of _0x39734c)if(_0x46065c['user']===_0x4d0666)return _0x46065c['role'];}['_handleSessionAdd'](_0x456917,_0x49b871){if('connected'!==this['context']['plugins']['get'](z)['state'])return;const _0x2f45a0=_0x49b871['user'],_0x8ef50d=this['_users']['getUser'](_0x2f45a0['id'])||this['_createUser'](_0x2f45a0),_0x213094=Object['assign']({},_0x49b871,{'user':_0x8ef50d});if(this['channelSessions']['get'](_0x456917)['add'](_0x213094),!_0x2f45a0['hiddenInPresenceList']){const _0x1cc8ba=this['channelConnectedUsers']['get'](_0x456917);_0x1cc8ba['has'](_0x8ef50d['id'])||_0x1cc8ba['add'](_0x8ef50d),this['allConnectedUsers']['has'](_0x8ef50d['id'])||_0x2f45a0['hiddenInPresenceList']||this['allConnectedUsers']['add'](_0x8ef50d,_0x8ef50d['isMe']?0x0:void 0x0);}this['fire']('sessionAdd:'+_0x456917,{'channelId':_0x456917,'session':_0x213094});}['_handleSessionRemove'](_0x4b48c2,_0x3817ab){if('connected'!==this['context']['plugins']['get'](z)['state'])return;const _0x3d6f2c=this['channelConnectedUsers']['get'](_0x4b48c2),_0x4afc03=_0x3817ab['user'];_0x4afc03['id']&&(this['channelSessions']['get'](_0x4b48c2)['remove'](_0x3817ab['id']),_0x3d6f2c['has'](_0x4afc03['id'])&&!this['getUserSessions'](_0x4afc03,_0x4b48c2)['size']&&_0x3d6f2c['remove'](_0x4afc03['id']),this['allConnectedUsers']['get'](_0x4afc03['id'])&&!this['getUserSessions'](_0x4afc03)['size']&&this['allConnectedUsers']['remove'](_0x4afc03['id']));}['_createUser'](_0xd47108,_0x4b8e18){const _0x84e6fa=this['_users']['addUser'](_0xd47108);return _0x4b8e18&&this['_users']['defineMe'](_0xd47108['id']),_0x84e6fa['orderNumber']=this['_uniqueUsersCount']++,_0x84e6fa;}}class K extends _0x512c3b{['_domEmitter']=new(_0x238e54())();static get['requires'](){return[Y];}static get['pluginName'](){return'UserMarkers';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['init'](){const _0x588541=this['editor'],_0x3c631c=_0x588541['plugins']['get'](Y);_0x588541['conversion']['for']('editingDowncast')['markerToElement']({'model':'user:position','view':(_0x223850,{writer:_0x3d57a6})=>function(_0x2e7404,_0x393906,_0x55e21f,_0x4bcad6){const _0x2ed344=_0x2e7404['markerName']['split'](':')[0x2],_0x590f79=_0x55e21f['getUserBySessionId'](_0x2ed344);if(!_0x590f79||_0x2ed344===_0x55e21f['mySessionId'])return;if(!_0x4bcad6['model']['schema']['checkChild'](_0x2e7404['markerRange']['start'],'$text'))return;const _0x227dbd={'class':'ck-user__marker\x20'+_0x590f79['color']['getMarkerClass'](),'style':Q(_0x590f79),'data-name':_0x590f79['name'],'data-session-id':_0x2ed344},_0x367db0=_0x4bcad6['model']['markers']['get'](_0x2e7404['markerName']),_0x27c29a=_0x367db0['getStart'](),_0x1f15a8=_0x27c29a['nodeAfter'],_0x225bae=_0x4bcad6['model']['schema'];if(_0x1f15a8&&_0x225bae['isObject'](_0x1f15a8)&&_0x225bae['isInline'](_0x1f15a8)&&!_0x4bcad6['model']['markers']['get']('user:range:'+_0x2ed344)['getRange']()['isCollapsed'])return;const _0x77e3d8=_0x27c29a['parent'];return _0x4bcad6['model']['schema']['isLimit'](_0x77e3d8)&&!_0x4bcad6['model']['hasContent'](_0x77e3d8)&&(_0x227dbd['contenteditable']=!0x1),function(_0x118b4d,_0x941fa1,_0x33687b){const _0x2203e0=_0x118b4d['createUIElement']('span',_0x941fa1);return _0x118b4d['setCustomProperty']('userPositionMarker',!0x0,_0x2203e0),_0x2203e0['render']=function(_0x31d9ed){const _0x415d8b=this['toDomElement'](_0x31d9ed),_0x303c3d=document['createElement']('span');return _0x303c3d['classList']['add']('ck-user__marker-tooltip'),_0x303c3d['setAttribute']('contenteditable','false'),_0x303c3d['setAttribute']('spellcheck','false'),_0x303c3d['textContent']=_0x33687b['name'],_0x415d8b['innerHTML']='<span\x20class=\x22ck-user__marker-line\x22\x20contenteditable=\x22false\x22><span\x20class=\x22ck-user__marker-dot\x22></span></span>'+_0x303c3d['outerHTML']+'',_0x415d8b['addEventListener']('mouseenter',()=>{_0x415d8b['classList']['add']('ck-user__marker_hovered');}),_0x415d8b['addEventListener']('mouseleave',()=>{_0x415d8b['classList']['remove']('ck-user__marker_hovered');}),_0x415d8b;},_0x2203e0['isSimilar']=function(_0x259e4c){return!(!this['getCustomProperty']('userPositionMarker')||!_0x259e4c['getCustomProperty']('userPositionMarker')||this['getAttribute']('data-session-id')!=_0x259e4c['getAttribute']('data-session-id'));},_0x2203e0;}(_0x393906,_0x227dbd,_0x590f79);}(_0x223850,_0x3d57a6,_0x3c631c,_0x588541)}),_0x588541['conversion']['for']('editingDowncast')['markerToHighlight']({'model':'user:range','view':_0x3bbe2d=>function(_0x32c954,_0x383051){const _0x54a32b=_0x32c954['markerName']['split'](':')[0x2];if(_0x54a32b===_0x383051['mySessionId'])return null;const _0x3c3af3=_0x383051['getUserBySessionId'](_0x54a32b);if(!_0x3c3af3)return{'id':_0x54a32b,'classes':[]};return{'id':_0x54a32b,'classes':['ck-user__selection',_0x3c3af3['color']['getSelectionClass']()],'attributes':{'style':Q(_0x3c3af3),'data-session-id':_0x54a32b},'priority':0x7d0+_0x3c3af3['orderNumber']};}(_0x3bbe2d,_0x3c631c)}),function(_0x467165){const _0x1d7c6b=_0x467165['model'],_0x28749b=new Map(),_0x523e95=_0x467165['plugins']['get'](Y);_0x1d7c6b['markers']['on']('update:user:range',(_0x44045b,_0x171836,_0x21bbcf,_0x74db3)=>{if(!_0x74db3&&_0x28749b['get'](_0x171836['name']))return _0x28749b['get'](_0x171836['name'])['detach'](),void _0x28749b['delete'](_0x171836['name']);const _0x28122a=_0x171836['name']['split'](':')[0x2];if(_0x28122a===_0x523e95['mySessionId'])return;const _0x387f39='user:position:'+_0x28122a;_0x1d7c6b['markers']['has'](_0x387f39)&&_0x467165['editing']['reconvertMarker'](_0x387f39),_0x171836['on']('change:range',(_0x8f379b,_0x5af8af,_0xdb2075)=>{if('$graveyard'!=_0x5af8af['root']['rootName']&&'$graveyard'==_0x171836['getRange']()['root']['rootName']&&!_0x28749b['has'](_0x171836['name'])){const _0x45de3d=_0x1d7c6b['schema']['getNearestSelectionRange'](_0xdb2075['deletionPosition']);if(_0x45de3d){const _0x6c95a2=_0x39b5f6['fromRange'](_0x45de3d);_0x28749b['set'](_0x171836['name'],_0x6c95a2),_0x6c95a2['on']('change:range',(_0x349592,_0x4fb0c5,_0x3a891a)=>{if('$graveyard'==_0x6c95a2['root']['rootName']){const _0x49d357=_0x1d7c6b['schema']['getNearestSelectionRange'](_0x3a891a['deletionPosition']);_0x49d357?(_0x6c95a2['start']=_0x49d357['start'],_0x6c95a2['end']=_0x49d357['end']):(_0x28749b['delete'](_0x171836['name']),_0x6c95a2['detach']());}});}}});}),_0x1d7c6b['document']['on']('change',()=>{_0x28749b['size']>0x0&&_0x1d7c6b['enqueueChange']({'isUndoable':!0x1},_0x17154b=>{for(const [_0x1a0cb1,_0x3bfacc]of _0x28749b)'$graveyard'==_0x1d7c6b['markers']['get'](_0x1a0cb1)['getRange']()['root']['rootName']&&(J(_0x1a0cb1['split'](':')[0x2],_0x3bfacc['toRange'](),_0x1d7c6b,_0x17154b),_0x3bfacc['detach']());_0x28749b['clear']();});});}(_0x588541),this['_domEmitter']['listenTo'](_0x57454e['document'],'keydown',(_0x52474d,{key:_0xebb1a2})=>{'Escape'===_0xebb1a2&&function(_0xee4a24){_0xee4a24['editing']['view']['change'](_0x5e489e=>{for(const _0x309360 of _0xee4a24['model']['markers']){if(!_0x309360['name']['startsWith']('user:position'))continue;const _0x1f9e41=_0xee4a24['editing']['mapper']['markerNameToElements'](_0x309360['name']);if(_0x1f9e41){for(const _0x5521b1 of _0x1f9e41)_0x5e489e['removeClass']('ck-user__marker_hovered',_0x5521b1);}}});}(_0x588541);},{'useCapture':!0x0});}['afterInit'](){const _0xea15ec=this['editor'],_0x5b00e1=_0xea15ec['commands']['get']('undo');_0x5b00e1&&_0xea15ec['model']['on']('applyOperation',(_0x213937,_0x13fe45)=>{const _0x1a20ac=_0x13fe45[0x0];if(!_0x1a20ac['isDocumentOperation'])return;if('marker'!=_0x1a20ac['type']||!_0x1a20ac['name']['startsWith']('user:'))return;const _0x5f3a72=_0x1a20ac['batch'];_0x5b00e1['_createdBatches']['has'](_0x5f3a72)&&(_0x1a20ac['newRange']=_0x1a20ac['oldRange']?_0xea15ec['model']['createRange'](_0x1a20ac['oldRange']['start'],_0x1a20ac['oldRange']['end']):null);},{'priority':'highest'});}['destroy'](){return this['_domEmitter']['stopListening'](),super['destroy']();}['createUserMarkerOperations'](){const _0x1c8d6e=this['editor'],_0x1a5c51=_0x1c8d6e['model']['document'],_0x418847=_0x1c8d6e['plugins']['get'](Y);_0x1c8d6e['model']['enqueueChange']({'isUndoable':!0x1},_0x273d46=>{const _0x3992b2='user:range:'+_0x418847['mySessionId'],_0x226a9a='user:position:'+_0x418847['mySessionId'],_0x209f34=_0x1c8d6e['model']['markers']['has'](_0x3992b2);_0x1c8d6e['editing']['view']['hasDomSelection']?J(_0x418847['mySessionId'],_0x1a5c51['selection']['getFirstRange'](),_0x1c8d6e['model'],_0x273d46):_0x209f34&&(_0x273d46['removeMarker'](_0x3992b2),_0x273d46['removeMarker'](_0x226a9a));});}}function J(_0x5978b7,_0x509277,_0x518d9b,_0xeb864c){const _0x5902a9='user:range:'+_0x5978b7,_0x4c147e='user:position:'+_0x5978b7,_0x540999=_0x509277['getContainedElement']();let _0x4478c8=_0x509277['start'];if(_0x540999&&_0x540999['is']('element','tableCell')){const _0x31b48c=function(_0x4f2ae8,_0x22d2f3){for(const _0x496971 of _0x4f2ae8['getPositions']())if(_0x22d2f3['schema']['checkChild'](_0x496971,'$text'))return _0x496971;}(_0x509277,_0x518d9b);_0x31b48c&&(_0x4478c8=_0x31b48c,_0x509277=_0xeb864c['createRange'](_0x4478c8));}const _0x2579f0=_0xeb864c['createRange'](_0x4478c8);_0x518d9b['markers']['has'](_0x5902a9)?(_0xeb864c['updateMarker'](_0x5902a9,{'range':_0x509277}),_0xeb864c['updateMarker'](_0x4c147e,{'range':_0x2579f0})):(_0xeb864c['addMarker'](_0x5902a9,{'range':_0x509277,'usingOperation':!0x0}),_0xeb864c['addMarker'](_0x4c147e,{'range':_0x2579f0,'usingOperation':!0x0}));}function Q(_0x14a8d7){return'--ck-user-color:'+_0x14a8d7['color']['getColorVariable']()+';--ck-user-color-alpha:'+_0x14a8d7['color']['getColorAlphaVariable']()+';';}function X(_0x4bba21,_0x4b7b61,_0x1b57b5){const _0x117707=_0x4bba21['t'],t=_0x4bba21['t'];switch(_0x4b7b61){case'PENDING_ACTION_SENDING_DATA':return t({'string':'Sending\x20data\x20to\x20the\x20server.','id':'PENDING_ACTION_SENDING_DATA'});case'The\x20local\x20document\x20and\x20server\x20document\x20differ\x20and\x20merging\x20them\x20can\x20cause\x20unexpected\x20behavior.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':return t('The\x20local\x20document\x20and\x20server\x20document\x20differ\x20and\x20merging\x20them\x20can\x20cause\x20unexpected\x20behavior.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.');case'The\x20document\x20cannot\x20be\x20connected\x20back\x20to\x20the\x20server.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':return t('The\x20document\x20cannot\x20be\x20connected\x20back\x20to\x20the\x20server.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.');case'The\x20document\x20details\x20could\x20not\x20be\x20taken\x20during\x20the\x20reconnection.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':return t('The\x20document\x20details\x20could\x20not\x20be\x20taken\x20during\x20the\x20reconnection.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.');case'The\x20last\x20saved\x20version\x20of\x20the\x20document\x20does\x20not\x20match\x20the\x20local\x20version.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':return t('The\x20last\x20saved\x20version\x20of\x20the\x20document\x20does\x20not\x20match\x20the\x20local\x20version.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.');case'Synchronization\x20issue':return t('Synchronization\x20issue');case'Connected\x20users\x20list\x20dropdown\x20menu':return t('Connected\x20users\x20list\x20dropdown\x20menu');case'Collapsed\x20connected\x20users\x20list\x20(press\x20ENTER\x20to\x20open\x20it)':return t('Collapsed\x20connected\x20users\x20list\x20(press\x20ENTER\x20to\x20open\x20it)');case'Connected\x20users\x20list':return t('Connected\x20users\x20list');case'PENDING_ACTION_REVISION_HISTORY':return _0x117707({'string':'Unsaved\x20change\x20in\x20revision\x20history.','id':'PENDING_ACTION_REVISION_HISTORY'});case'CONNECTED_USERS':return t({'string':'1\x20connected\x20user\x20(me)','plural':'%0\x20connected\x20users','id':'CONNECTED_USERS'},_0x1b57b5);default:return'';}}let Z=0x1;class tt extends _0x512c3b{static ['CollaborativeEditingService']=/* #__PURE__ -- @preserve */
|
|
25
|
-
((()=>_0x456026)());['_offset'];['sessionId'];['serverHistory'];['_channelId'];['_service'];['_document'];['_compressor'];['_bufferedOperations'];['_knownOperations'];['_knownRootNames'];['_pendingAction'];['_hasSelectionChanged'];['_sendBufferedOperationsDelayId'];['_baseBufferDelay'];['_currentBufferDelay'];['_lastSyncedOperationId'];['_disconnectionOperations'];['_operationIdentifier'];static get['requires'](){return[z,Y,K,_0x4c8145,_0x3847b0,_0x4edca5];}static get['pluginName'](){return'RealTimeCollaborationClient';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}get['cloudDocumentVersion'](){return this['_lastServerVersion']+this['_offset'];}get['_lastServerVersion'](){return this['serverHistory']['version']-this['_offset'];}get['lastSyncVersion'](){const _0x73018=this['serverHistory']['getOperations']();for(let _0x446831=_0x73018['length']-0x1;_0x446831>=0x0;_0x446831--){const _0x1b9cc5=_0x73018[_0x446831];if(!this['_disconnectionOperations']['has'](_0x1b9cc5))return _0x1b9cc5['baseVersion']+0x1-this['_offset'];}return 0x0;}constructor(_0x5d4ca8){if(super(_0x5d4ca8),this['_offset']=0x0,this['sessionId']=null,this['serverHistory']=new _0x3e3e59(),this['editor']['config']['define']('collaboration',{}),this['_channelId']=this['editor']['config']['get']('collaboration.channelId'),!this['_channelId'])throw new _0x5d88de('collaboration-missing-channelid',this);const _0x27e123=_0x5d4ca8['config']['get']('cloudServices.bundleVersion')||_0x3e5cdd;this['_service']=new tt['CollaborativeEditingService'](_0x27e123,this['_channelId']),this['_document']=this['editor']['model']['document'],this['_compressor']=new _0x77fc10(),this['_bufferedOperations']=[],this['_knownOperations']=new WeakSet(),this['_knownRootNames']=new Set(),this['set']('_isPendingUpdate',!0x1),this['set']('_hasSynchronizationProblem',!0x1),this['_pendingAction']=null,this['_hasSelectionChanged']=!0x1,this['_sendBufferedOperationsDelayId']=null,this['_baseBufferDelay']=0x12c,this['_currentBufferDelay']=this['_baseBufferDelay'],this['_lastSyncedOperationId']=null,this['_disconnectionOperations']=new WeakSet(),this['_operationIdentifier']=new it(this['_disconnectionOperations']);}['init'](){const _0x1ef5e9=this['editor'],_0x45b71b=_0x1ef5e9['plugins']['get'](_0x3847b0),_0xaca3e0=_0x1ef5e9['plugins']['get'](z);this['listenTo'](_0x45b71b,'getOperationAuthor',(_0x3cbf66,_0x5df583)=>{const _0x5773f0=_0x5df583[0x0];_0x5773f0['_authorId']&&(_0x3cbf66['return']=_0x45b71b['getUser'](_0x5773f0['_authorId']),_0x3cbf66['stop']()),null===_0x5773f0['_authorId']&&(_0x3cbf66['return']=null,_0x3cbf66['stop']());},{'priority':'high'}),this['listenTo'](_0x1ef5e9['model']['document']['selection'],'change:range',(_0x51fece,_0x8e5c03)=>{_0x8e5c03['directChange']&&this['_refreshUserSelectionMarkers']();}),this['listenTo'](_0x1ef5e9['editing']['view'],'change:hasDomSelection',()=>{this['_refreshUserSelectionMarkers']();}),this['_initThrowingOnDataSet'](),_0x1ef5e9['model']['on']('applyOperation',(_0x3573d7,_0x3e158a)=>{const _0x5892a1=_0x3e158a[0x0];_0x5892a1['isDocumentOperation']&&(this['_saveOperationInBuffer'](_0x5892a1),this['_shouldSendUpdate']()&&this['_sendBufferedOperationsDelayed']());}),this['_setUpDataInit'](),this['bind']('_isEditingAllowed')['to'](_0xaca3e0,'state',this,'_hasSynchronizationProblem',(_0x32f65d,_0x41232c)=>'connected'===_0x32f65d&&!_0x41232c),this['on']('change:_isEditingAllowed',()=>{this['_isEditingAllowed']?_0x1ef5e9['disableReadOnlyMode']('rtc-offline'):_0x1ef5e9['enableReadOnlyMode']('rtc-offline');}),this['_isEditingAllowed']?_0x1ef5e9['disableReadOnlyMode']('rtc-offline'):_0x1ef5e9['enableReadOnlyMode']('rtc-offline'),this['set']('_isConnected',!0x1);}async['reconnect'](){const _0x533105=this['editor']['plugins']['get'](Y),_0x541554=this['editor']['plugins']['get'](z);try{this['_isPendingUpdate']=!0x0,_0x533105['unregister'](this['_channelId']);const _0x35c840=await this['_service']['reconnect'](_0x541554['connection'],this['lastSyncVersion']);await this['_handleReconnectionResponse'](_0x35c840)&&(this['_isPendingUpdate']=!0x1,this['_clearPendingAction']());const _0x4cbf4b=await this['_service']['getConnectedSessions']();_0x533105['register'](this['_channelId'],_0x4cbf4b),this['_handleSendingSelectionMarkers'](),this['_isConnected']=!0x0;}catch(_0x2014f3){if(function(_0x4926bd){return'404'===_0x4926bd['code'];}(_0x2014f3)&&this['sessionId'])await this['_connectAfterSessionHasBeenFlushed']();else{if(function(_0x976e43){return'409'===_0x976e43['code'];}(_0x2014f3)){const _0x423a4a=X(this['editor']['locale'],'The\x20document\x20cannot\x20be\x20connected\x20back\x20to\x20the\x20server.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.');this['_handleReconnectionError'](_0x423a4a);}else{if(!(_0x2014f3 instanceof et))throw _0x2014f3;this['_handleReconnectionError']();}}}}['destroy'](){const _0x4b6c1d=this['editor']['plugins']['get'](z),_0x305050=this['editor']['plugins']['get'](Y);this['editor']['enableReadOnlyMode']('rtc-destroyed'),_0x305050['channelSessions']['has'](this['_channelId'])&&_0x305050['unregister'](this['_channelId']),_0x4b6c1d['removeFromReconnectionStack'](this),this['_disconnectService'](),super['destroy']();}async['_handleReconnectionResponse'](_0x5bc90f){if(this['sessionId']!==_0x5bc90f['sessionId']&&this['_lastSyncedOperationId']!==_0x5bc90f['lastOperationId'])throw new et();return this['sessionId']=_0x5bc90f['sessionId'],this['_handleServerResponse']([],{..._0x5bc90f,'wereChangesApplied':!0x1,'data':_0x5bc90f['data']},'reconnect');}async['_connectService'](_0x456b42,_0x5cac2f=!0x1){const {connection:_0x473f39}=this['editor']['plugins']['get'](z);tt['CollaborativeEditingService']['getConnectedSessions'](_0x473f39,this['_channelId'])['then'](_0x4ce972=>this['_initSessionsHandling'](_0x4ce972))['catch'](_0x335014=>{this['_crash']('realtimecollaborationclient-init-session-connection-error',_0x335014);}),this['listenTo'](this['_service'],'operationsReceived',this['_handleReceivedOperations']['bind'](this)),this['listenTo'](this['_service'],'error',(_0x1e4041,_0x4ab03a)=>{this['_crash']('realtimecollaborationclient-init-service-internal-error',_0x4ab03a);}),this['listenTo'](this['_service'],'disconnected',()=>{this['_isConnected']=!0x1;});const _0x1c2366=this['_operationIdentifier']['getIdOfTheLastOperation'](_0x456b42);this['_isPendingUpdate']=!0x0;const _0x268863=await this['_service']['connect'](_0x473f39,this['_compressOperations'](_0x456b42),_0x1c2366);if(this['sessionId']=_0x268863['sessionId'],_0x5cac2f){if(!_0x268863['wereChangesApplied'])return void this['_handleReconnectionError']();this['_isPendingUpdate']=!0x1,this['_clearPendingAction'](),this['serverHistory']['reset'](),this['_offset']=_0x268863['offset'],this['serverHistory']['version']=this['_offset'],await this['_handleServerResponse'](_0x456b42,_0x268863,'reconnection:\x20flushed\x20session');}else await this['_handleInitialConnectionData'](_0x268863,_0x456b42);this['_handleSendingSelectionMarkers'](),this['_isConnected']=!0x0;}['_handleSendingSelectionMarkers'](){const _0xeaae7a=this['editor']['plugins']['get'](Y),_0x49f5d3=this['editor']['plugins']['get'](K),_0x3cfb76=_0xeaae7a['channelSessions']['get'](this['_channelId']);_0x3cfb76&&_0x3cfb76['length']>0x1?_0x49f5d3['createUserMarkerOperations']():this['listenTo'](_0xeaae7a,'sessionAdd:'+this['_channelId'],()=>{0x2===_0xeaae7a['channelSessions']['get'](this['_channelId'])['length']&&_0x49f5d3['createUserMarkerOperations']();});}async['_handleReceivedOperations'](_0x4d5d3b,_0x551d9c,_0x2445d9,_0x4748a2){if(!this['_isPendingUpdate']&&this['_document']['version']==_0x551d9c){const _0x50dbe3=this['_decompressOperations'](_0x2445d9,_0x4748a2);await this['_fetchMissingUsers'](_0x50dbe3),this['_handleExternalOperations'](_0x50dbe3,_0x551d9c,_0x2445d9['lastOperationId'])||this['_crash']('realtimecollaborationclient-init-service-incorrect-server-operation');}}async['_connectAfterSessionHasBeenFlushed'](){this['_disconnectService']();const {locale:_0x3a6454}=this['editor'];let _0x5a3455;try{_0x5a3455=await this['_service']['getDocumentDetails']();}catch{const _0x3cbd58=X(_0x3a6454,'The\x20document\x20details\x20could\x20not\x20be\x20taken\x20during\x20the\x20reconnection.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.');return void this['_handleReconnectionError'](_0x3cbd58);}const _0x4f0364=_0x5a3455['currentDocumentSession']||_0x5a3455['lastDocumentSession'];if(this['_lastSyncedOperationId']!==_0x4f0364['lastOperationId']){const _0x4c095c=X(_0x3a6454,'The\x20last\x20saved\x20version\x20of\x20the\x20document\x20does\x20not\x20match\x20the\x20local\x20version.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.');return void this['_handleReconnectionError'](_0x4c095c);}await this['_connectService'](this['editor']['model']['document']['history']['getOperations'](),!0x0);}['_disconnectService'](){this['_service']['disconnect'](),this['_bufferedOperations']=[],clearTimeout(this['_sendBufferedOperationsDelayId']),this['stopListening'](this['_service']);}['_initSessionsHandling'](_0x10d02f){const _0x188df8=this['editor']['plugins']['get'](Y);this['listenTo'](_0x188df8,'sessionAdd:'+this['_channelId'],(_0x566e3b,{session:_0x116faa})=>{if(_0x116faa['id']===_0x188df8['mySessionId']){_0x566e3b['off']();const _0x4b59b1=this['editor']['plugins']['has']('CommentsOnly')&&this['editor']['plugins']['get']('CommentsOnly');let _0x21a657=_0x116faa['permissions'];_0x4b59b1&&_0x4b59b1['isEnabled']&&(_0x21a657=_0x21a657['filter'](_0x5b3303=>'document:write'!==_0x5b3303)),this['editor']['plugins']['get']('Permissions')['setPermissions'](_0x21a657,this['_channelId']);}}),_0x188df8['register'](this['_channelId'],_0x10d02f);}['_initThrowingOnDataSet'](){const _0x3697df=this['editor']['data']['set'];this['editor']['data']['set']=(..._0x17f72d)=>{if(!_0x17f72d[_0x17f72d['length']-0x1]['suppressErrorInCollaboration'])throw new _0x5d88de('realtimecollaborationclient-editor-setdata-and-editor-data-set-are-forbidden-in-real-time-collaboration',this);_0x3697df['apply'](this['editor']['data'],_0x17f72d);};}['_setUpDataInit'](){this['editor']['data']['on']('init',(_0x18d9da,[_0xd4916c])=>{if(this['_document']['version'])throw new _0x5d88de('realtimecollaborationclient-init-document-already-initialized',this);_0x18d9da['stop'](),this['_setPendingAction']();const _0x4115b8=Object['fromEntries'](Object['entries'](this['editor']['config']['get']('roots')||{})['filter'](([,_0xcaa813])=>!_0xcaa813['lazyLoad'])['map'](([_0x586d7f,_0x4f5948])=>[_0x586d7f,_0x4f5948['modelAttributes']||{}])),_0x16332e=this['_getOperationsFromInitData'](_0xd4916c,_0x4115b8);0x0==_0x16332e['length']&&_0x16332e['push'](new _0xb173b1(0x0)),_0x18d9da['return']=this['_connectService'](_0x16332e)['then'](()=>{this['editor']['plugins']['get'](z)['addToReconnectionStack'](this),this['editor']['data']['fire']('ready');})['catch'](_0x1a445b=>this['_crash']('realtimecollaborationclient-init-connection-failed',_0x1a445b))['finally'](()=>this['_clearPendingAction']());},{'priority':'high'}),this['editor']['on']('loadRoot',async(_0xad156b,[_0x4656bf,_0xd64a06])=>{_0xad156b['stop']();const _0xfcb1da=this['editor']['model']['document']['getRoot'](_0x4656bf);if(!this['_knownRootNames']['has'](_0x4656bf)){const _0x5b2ebf=_0xd64a06&&_0xd64a06['data']?_0xd64a06['data']:'',_0x3d4477=_0xd64a06&&_0xd64a06['attributes']?_0xd64a06['attributes']:{};await this['_loadRoot'](_0x4656bf,_0x5b2ebf,_0x3d4477);}this['editor']['model']['enqueueChange']({'isUndoable':!0x1},()=>{_0xfcb1da['_isLoaded']=!0x0,this['editor']['model']['document']['differ']['_bufferRootLoad'](_0xfcb1da);});},{'priority':'high'});}async['_fetchMissingUsers'](_0x5ba2c7){const _0x1cf4dd=this['editor']['plugins']['get'](_0x3847b0),{connection:_0x1e0ed3}=this['editor']['plugins']['get'](z),_0x7f8e9a=new Set();for(const _0x4ea63f of _0x5ba2c7){const _0x286b37=_0x4ea63f['_authorId'];_0x286b37&&!_0x1cf4dd['getUser'](_0x286b37)&&_0x7f8e9a['add'](_0x286b37);}if(0x0===_0x7f8e9a['size'])return;const _0x2a1d5b=await _0x2c2031['getMany'](_0x1e0ed3,Array['from'](_0x7f8e9a));for(const _0x2b3a03 of _0x2a1d5b)_0x1cf4dd['getUser'](_0x2b3a03['id'])||_0x1cf4dd['addUser'](_0x2b3a03);}['_getOperationsFromInitData'](_0x5ae987,_0x580be0={}){const _0x32bdc7=this['editor']['model'],_0x4d6441=[];let _0x23b433=0x0;const _0x2cb80a='string'==typeof _0x5ae987?{'main':_0x5ae987}:_0x5ae987;for(const _0x2d5709 of Object['keys'](_0x2cb80a)){if(!this['_document']['roots']['has'](_0x2d5709))throw new _0x5d88de('realtimecollaborationclient-init-non-existent-root',this);const _0x7ee42=this['editor']['data']['parse'](_0x2cb80a[_0x2d5709]),_0x347fc2=this['_document']['getRoot'](_0x2d5709),_0x3f2066=new _0x5f5a5c(_0x32bdc7['createPositionAt'](_0x347fc2,0x0),_0x7ee42,_0x23b433++);_0x4d6441['push'](_0x3f2066);for(const [_0x2a0b20,_0x5b60a4]of _0x7ee42['markers']){const _0x2c0bbf=_0x32bdc7['createRange'](_0x32bdc7['createPositionFromPath'](_0x347fc2,_0x5b60a4['start']['path']['slice']()),_0x32bdc7['createPositionFromPath'](_0x347fc2,_0x5b60a4['end']['path']['slice']())),_0x4b01b9=new _0x561ae5(_0x2a0b20,null,_0x2c0bbf,_0x32bdc7['markers'],!0x0,_0x23b433++);_0x4d6441['push'](_0x4b01b9);}}if(_0x580be0)for(const [_0x817d7a,_0x14485e]of Object['entries'](_0x580be0)){const _0x16e0c2=_0x32bdc7['document']['getRoot'](_0x817d7a);if(!_0x16e0c2)throw new _0x5d88de('multi-root-editor-root-attributes-no-root',null);for(const [_0x31eb4f,_0x59fcf0]of Object['entries'](_0x14485e))if(null!==_0x59fcf0){const _0x4bb0d5=new _0x694689(_0x16e0c2,_0x31eb4f,null,_0x59fcf0,_0x23b433++);_0x4d6441['push'](_0x4bb0d5);}}return _0x4d6441;}async['_loadRoot'](_0x552810,_0x14189c,_0x13f9b9){this['_getOperationsFromInitData']({[_0x552810]:_0x14189c},{[_0x552810]:_0x13f9b9})['forEach']((_0x2a0f43,_0x5405be)=>{_0x2a0f43['baseVersion']=this['_document']['version']+_0x5405be,_0x2a0f43['_isInit']=!0x0,this['_saveOperationInBuffer'](_0x2a0f43);}),this['_sendBufferedOperationsDelayed'](),await this['_waitUntilSynced']();}async['_handleInitialConnectionData'](_0x22e3ad,_0x1c1812){let _0x41bd0a;this['_offset']=_0x22e3ad['offset'];const _0x2e8e66=_0x22e3ad['wereChangesApplied']&&!_0x22e3ad['initData'],_0x5dc819=_0x2e8e66?0x0:_0x22e3ad['data']['baseVersion'];if(_0x1c1812['forEach'](_0x38839d=>{_0x38839d['_isInit']=!0x0,_0x38839d['createdAt']=_0x22e3ad['sessionCreatedAt'],_0x38839d['_authorId']=null;}),_0x2e8e66)_0x41bd0a=_0x1c1812,this['_applyOperationsSet'](_0x41bd0a,_0x2e8e66);else{if(_0x22e3ad['initData']){const _0x50a2bc=this['_getOperationsFromInitData'](_0x22e3ad['initData']);this['_document']['history']['version']=-_0x50a2bc['length'],_0x50a2bc['forEach'](_0x343d9e=>{_0x343d9e['baseVersion']-=_0x50a2bc['length'],_0x343d9e['createdAt']=_0x22e3ad['sessionCreatedAt'],_0x343d9e['_isInit']=!0x0,_0x343d9e['_authorId']=null;}),this['_applyOperationsSet'](_0x50a2bc,!0x0),this['serverHistory']['version']=-_0x50a2bc['length']+this['_offset'],this['_updateServerHistory'](_0x50a2bc);}this['_document']['history']['version']=_0x5dc819,_0x41bd0a=this['_decompressOperations'](_0x22e3ad['data'],_0x22e3ad['metadata']),await this['_fetchMissingUsers'](_0x41bd0a),this['_applyOperationsSet'](_0x41bd0a,_0x2e8e66);}_0x22e3ad['lastOperationId']&&(this['_operationIdentifier']['setIdForTheLastOperation'](_0x41bd0a,_0x22e3ad['lastOperationId']),this['_lastSyncedOperationId']=_0x22e3ad['lastOperationId']),this['serverHistory']['version']=_0x5dc819+this['_offset'],this['_updateServerHistory'](_0x41bd0a),_0x1c1812['filter'](_0x1b2c1f=>{const _0x264622=this['_getAffectedRoot'](_0x1b2c1f);return _0x264622&&!this['_knownRootNames']['has'](_0x264622);})['forEach']((_0x210d99,_0x3320b4)=>{_0x210d99['baseVersion']=this['_document']['version']+_0x3320b4,this['_saveOperationInBuffer'](_0x210d99);}),this['_shouldSendUpdate']()?(this['_currentBufferDelay']=0x0,this['_sendBufferedOperationsDelayed'](!0x0),await this['_waitUntilSynced']()):(this['_isPendingUpdate']=!0x1,this['_clearPendingAction']());}['_crash'](_0x29f190,_0x5b3fef){const _0x156c1d=_0x5b3fef&&_0x5b3fef['message'];if(_0x156c1d&&_0x156c1d['startsWith']('realtimecollaborationclient'))throw _0x5b3fef;const _0x3d7a98=this['editor']['plugins']['get'](z);throw this['_isPendingUpdate']=!0x0,_0x3d7a98['disconnect'](),this['editor']['enableReadOnlyMode']('realtimecollaborationclient-error'),new _0x5d88de(_0x29f190,this['editor'],_0x156c1d?{'originalError':_0x156c1d}:void 0x0);}['_saveOperationInBuffer'](_0x78d4c3){this['_knownOperations']['has'](_0x78d4c3)||(this['_knownOperations']['add'](_0x78d4c3),this['_bufferedOperations']['push'](_0x78d4c3),this['_pendingAction']||'marker'==_0x78d4c3['type']&&!_0x78d4c3['affectsData']||this['_setPendingAction']());}['_sendBufferedOperationsDelayed'](_0x5c7df6=!0x1){!_0x5c7df6&&this['_isPendingUpdate']||(this['_isPendingUpdate']=!0x0,clearTimeout(this['_sendBufferedOperationsDelayId']),this['_sendBufferedOperationsDelayId']=setTimeout(()=>{this['_sendBufferedOperations']()['then'](_0x3c653d=>{_0x3c653d&&(this['_clearPendingAction'](),this['_isPendingUpdate']=!0x1);})['catch'](_0xc3dbb0=>{this['_clearPendingAction'](),this['_isPendingUpdate']=!0x1,function(_0x4ce7f8){return _0x4ce7f8['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x4ce7f8['message']['startsWith']('cloud-services-internal-error:\x20Collaborative\x20Editing\x20Service\x20is\x20not\x20connected.')||_0x4ce7f8['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}(_0xc3dbb0)||this['_crash'](_0xc3dbb0['message'],_0xc3dbb0);});},this['_currentBufferDelay']));}['_waitUntilSynced'](){return new Promise(_0x2062ac=>{this['on']('change:_isPendingUpdate',()=>{_0x2062ac();});});}async['_sendBufferedOperations'](){const _0x170516=this['editor']['plugins']['get'](K);if(this['_shouldSendSelectionUpdate']()&&(_0x170516['createUserMarkerOperations'](),this['_hasSelectionChanged']=!0x1),!this['_shouldSendUpdate']())return!0x0;const _0x16c0e5=[...this['_bufferedOperations']];for(const _0x2bc2e3 of _0x16c0e5)_0x2bc2e3['wasUndone']=this['_document']['history']['isUndoneOperation'](_0x2bc2e3);const _0x3bb2d5=this['_operationIdentifier']['getIdOfTheLastOperation'](_0x16c0e5),_0xa37ffe=Z++,_0x3e3396=this['_compressOperations'](_0x16c0e5),_0x3daae7=await this['_service']['sendOperations'](_0x3e3396,_0x3e3396['baseVersion'],_0x3bb2d5);try{return await this['_handleServerResponse'](_0x16c0e5,_0x3daae7,_0xa37ffe);}catch(_0x533f3a){return this['_crash']('realtimecollaborationclient-sendbufferedoperations',_0x533f3a);}}async['_handleServerResponse'](_0x6ff03e,_0x3e2d50,_0x3b7f58){if('error'in _0x3e2d50)throw _0x3e2d50['error'];let _0x1b05c3=!0x1;if(_0x3e2d50['wereChangesApplied']){_0x3e2d50['lastOperationId']&&(this['_lastSyncedOperationId']=_0x3e2d50['lastOperationId']),this['_bufferedOperations']=this['_bufferedOperations']['filter'](_0x2c4c88=>!_0x6ff03e['includes'](_0x2c4c88));for(const _0x439f98 of _0x6ff03e)_0x439f98['createdAt']='lastOperationAcceptedAt'in _0x3e2d50&&_0x3e2d50['lastOperationAcceptedAt']||void 0x0;st(_0x6ff03e,_0x3e2d50['version']-_0x6ff03e['length']),this['_updateServerHistory'](_0x6ff03e);const _0x49d520=_0x6ff03e['filter'](_0x1ee65d=>{if(!_0x1ee65d['_isInit'])return!0x1;const _0x4b7191=this['_getAffectedRoot'](_0x1ee65d);return _0x4b7191&&!this['_knownRootNames']['has'](_0x4b7191);});st(_0x49d520,this['_document']['version']),this['_applyOperationsSet'](_0x49d520),_0x1b05c3=!0x0,this['_currentBufferDelay']=this['_baseBufferDelay'];}else{const _0x2a29f1=this['_decompressOperations'](_0x3e2d50['data'],_0x3e2d50['metadata'])['filter'](_0x55a924=>_0x55a924['baseVersion']>=this['_lastServerVersion']);_0x2a29f1['forEach'](_0x941bb8=>this['_addKnownRoot'](_0x941bb8)),this['_bufferedOperations']=this['_bufferedOperations']['filter'](_0x14be8f=>!_0x14be8f['_isInit']||!this['_knownRootNames']['has'](this['_getAffectedRoot'](_0x14be8f))),this['_bufferedOperations']['length']&&st(this['_bufferedOperations'],this['_bufferedOperations'][0x0]['baseVersion']),await this['_fetchMissingUsers'](_0x2a29f1),_0x1b05c3=this['_handleExternalOperations'](_0x2a29f1,_0x3e2d50['version'],_0x3e2d50['lastOperationId']),this['_currentBufferDelay']=Math['round'](this['_currentBufferDelay']/0x2);}return _0x1b05c3?!this['_shouldSendUpdate']()||(this['_sendBufferedOperationsDelayed'](!0x0),!0x1):this['_crash']('realtimecollaborationclient-handleserverresponse');}['_handleExternalOperations'](_0x3f9efa,_0x433541,_0x500628){try{const _0x588af8={'document':this['_document'],'useRelations':!0x1,'padWithNoOps':!0x0},{operationsA:_0x4ab1f1,operationsB:_0x32339e,originalOperations:_0x2c305b}=_0x4a9acb(_0x3f9efa,this['_bufferedOperations'],_0x588af8);st(_0x4ab1f1,this['_document']['version']),st(_0x32339e,_0x433541);for(const _0x5cd31d of _0x4ab1f1){const _0x138f6b=_0x2c305b['get'](_0x5cd31d);_0x5cd31d['_authorId']=_0x138f6b?_0x138f6b['_authorId']:null;}_0x500628&&(this['_operationIdentifier']['setIdForTheLastOperation'](_0x3f9efa,_0x500628),this['_lastSyncedOperationId']=_0x500628),this['_bufferedOperations']=[..._0x32339e],this['_applyOperationsSet'](_0x4ab1f1),this['_updateServerHistory'](_0x3f9efa);}catch(_0x191e71){return console['error'](_0x191e71),!0x1;}return!0x0;}['_applyOperationsSet'](_0x3fafe5,_0x5b2647=!0x1){this['editor']['model']['enqueueChange']({'isUndoable':!0x1,'isLocal':!0x1},_0x5d42ef=>{for(const _0x378bbc of _0x3fafe5)this['_knownOperations']['add'](_0x378bbc),this['_addKnownRoot'](_0x378bbc),_0x5d42ef['batch']['addOperation'](_0x378bbc),this['editor']['model']['applyOperation'](_0x378bbc);});}['_addKnownRoot'](_0x2bc3f5){const _0x1aa2df=this['_getAffectedRoot'](_0x2bc3f5);_0x1aa2df&&this['_knownRootNames']['add'](_0x1aa2df);}['_getAffectedRoot'](_0xc6b1a1){let _0x4a57b8,_0x15327b;switch(_0xc6b1a1['type']){case'insert':_0x4a57b8=_0xc6b1a1['position']['root'];break;case'marker':if(_0x15327b=_0xc6b1a1['newRange'],!_0x15327b)return null;_0x4a57b8=_0x15327b['root'];break;case'addRootAttribute':_0x4a57b8=_0xc6b1a1['root'];break;case'addRoot':_0x4a57b8=_0xc6b1a1['affectedSelectable'];break;case'move':_0x4a57b8=_0xc6b1a1['targetPosition']['root'];break;default:return null;}return _0x4a57b8['rootName'];}['_updateServerHistory'](_0x1e11d5){_0x1e11d5['forEach'](_0xa4766b=>{const _0x4c08a5=_0xa4766b['clone']();_0x4c08a5['_authorId']=_0xa4766b['_authorId'],_0x4c08a5['_isInit']=!!_0xa4766b['_isInit'],_0x4c08a5['createdAt']=_0xa4766b['createdAt'],_0x4c08a5['baseVersion']+=this['_offset'],_0xa4766b['_isDisconnection']&&this['_disconnectionOperations']['add'](_0x4c08a5),this['serverHistory']['addOperation'](_0x4c08a5);});}['_handleReconnectionError'](_0x2ef540){const _0x479687=this['editor']['plugins']['get']('Notification'),_0x27540e=this['editor']['locale'];_0x2ef540||(_0x2ef540=X(_0x27540e,'The\x20local\x20document\x20and\x20server\x20document\x20differ\x20and\x20merging\x20them\x20can\x20cause\x20unexpected\x20behavior.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.')),_0x479687['showWarning'](_0x2ef540,{'title':X(_0x27540e,'Synchronization\x20issue'),'namespace':'real-time-collaboration'}),this['_hasSynchronizationProblem']=!0x0,clearTimeout(this['_sendBufferedOperationsDelayId']),this['_bufferedOperations']=[],this['editor']['plugins']['get'](z)['disconnect']();}['_setPendingAction'](){this['_pendingAction']||(this['_pendingAction']=this['editor']['plugins']['get'](_0x4c8145)['add'](X(this['editor']['locale'],'PENDING_ACTION_SENDING_DATA')));}['_clearPendingAction'](){this['_pendingAction']&&(this['editor']['plugins']['get'](_0x4c8145)['remove'](this['_pendingAction']),this['_pendingAction']=null);}['_compressOperations'](_0x15c4a5){const _0x2b77d3=_0x15c4a5['map'](_0x354553=>_0x354553['toJSON']());return this['_compressor']['compress'](_0x2b77d3);}['_decompressOperations'](_0x8fb2d6,_0x5c06a6){return this['_compressor']['decompress'](_0x8fb2d6)['map']((_0x900be3,_0x339d0d)=>{const _0xf5348a='init'==_0x5c06a6[_0x339d0d]['type'];if('InsertOperation'==_0x900be3['__className']){const _0x27953e=_0x900be3['position']['root'];!this['_document']['getRoot'](_0x27953e)&&(this['_document']['createRoot']('$root',_0x27953e)['_isAttached']=!0x1);}const _0x134835=_0x350a65['fromJSON'](_0x900be3,this['_document']);return _0x134835['wasUndone']=_0x900be3['wasUndone'],_0x134835['_isInit']=_0xf5348a,_0x134835['_authorId']=_0xf5348a?null:_0x5c06a6[_0x339d0d]['userId'],_0x134835['_isDisconnection']='cs:removeUser'===_0x5c06a6[_0x339d0d]['type'],_0x134835['createdAt']=_0x5c06a6[_0x339d0d]['createdAt'],_0x134835;});}['_refreshUserSelectionMarkers'](){this['_hasSelectionChanged']=!0x0,this['_shouldSendSelectionUpdate']()?this['_sendBufferedOperationsDelayed']():this['_hasSelectionChanged']=!0x1;}['_shouldSendSelectionUpdate'](){const _0x48d5db=this['editor']['plugins']['get'](Y)['channelSessions']['get'](this['_channelId']);return!this['editor']['isReadOnly']&&!!_0x48d5db&&_0x48d5db['length']>0x1&&this['_hasSelectionChanged'];}['_shouldSendUpdate'](){return this['_bufferedOperations']['length']>0x0||this['_shouldSendSelectionUpdate']();}}class et extends Error{}function st(_0x2724bd,_0x4db783){for(const _0x291139 of _0x2724bd)_0x291139['baseVersion']=_0x4db783++;}class it{['_ignoredOperations'];['_operationToId'];constructor(_0x2369b8){this['_ignoredOperations']=_0x2369b8,this['_operationToId']=new WeakMap();}['getIdOfTheLastOperation'](_0x3d0348){let _0xbb6fce=_0x3d0348['length'];for(;_0xbb6fce--;){const _0x54a885=_0x3d0348[_0xbb6fce];if(!this['_ignoredOperations']['has'](_0x54a885)){if(!this['_operationToId']['has'](_0x54a885)){const _0x3055a2=_0x487873()['slice'](0x1,0x12);this['_operationToId']['set'](_0x54a885,_0x3055a2);}return this['_operationToId']['get'](_0x54a885);}}}['setIdForTheLastOperation'](_0x31d9d5,_0x949e3f){if(!_0x949e3f)return;let _0x116531=_0x31d9d5['length'];for(;_0x116531--;){const _0x263d7f=_0x31d9d5[_0x116531];this['_ignoredOperations']['has'](_0x263d7f)||this['_operationToId']['set'](_0x263d7f,_0x949e3f);}}}class nt extends _0x512c3b{static get['requires'](){return[tt];}static get['pluginName'](){return'RealTimeCollaborativeEditing';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}class ot extends _0x6b13bf{static ['CommentsService']=/* #__PURE__ -- @preserve */
|
|
26
|
-
((()=>_0xad8fa8)());['_services'];static get['requires'](){return[z,_0x3cd3b6,Y,_0x3847b0];}static get['pluginName'](){return'CloudServicesCommentsAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x5c4ddf){super(_0x5c4ddf),this['_services']=new Map();}async['init'](){const _0x3dcc62=this['context'],_0x1c386e=_0x3dcc62['plugins']['get'](_0x3cd3b6);if(_0x3dcc62['plugins']['get'](z)['addToReconnectionStack'](this),_0x1c386e['adapter']={'addCommentThread':async({channelId:_0x5dfe84,threadId:_0x598c0e,comments:_0x298e4c,resolvedAt:_0x371f6a,resolvedBy:_0x3c8d8a,context:_0x2d8a06,attributes:_0x4c8f8c})=>{const _0x552b6e=await this['_getService'](_0x5dfe84)['addCommentThread']({'commentThreadId':_0x598c0e,'comments':_0x298e4c['map'](_0x5e12eb=>function(_0x4e662f,_0xc583fd,_0x627792){return{'commentThreadId':_0x627792,'commentId':_0x4e662f['commentId'],'userId':_0x4e662f['authorId'],'content':_0x4e662f['content'],'documentId':_0xc583fd,'createdAt':_0x4e662f['createdAt'],'attributes':_0x4e662f['attributes']||{}};}(_0x5e12eb,_0x5dfe84,_0x598c0e)),'resolvedAt':_0x371f6a,'resolvedBy':_0x3c8d8a,'context':_0x2d8a06,'attributes':_0x4c8f8c})['catch'](ct);return{'threadId':_0x552b6e['commentThreadId'],'comments':_0x552b6e['comments']};},'getCommentThread':async({channelId:_0x10e99e,threadId:_0x17c838})=>{const _0x59fd01=await this['_getService'](_0x10e99e)['getCommentThread'](_0x17c838)['catch'](rt)['catch'](ct);return _0x59fd01?_0x59fd01['deletedAt']?null:(await this['_fetchMissingUsersForThreads']([_0x59fd01]),{'threadId':_0x59fd01['commentThreadId'],'comments':_0x59fd01['comments']['map'](at),'context':_0x59fd01['context'],'resolvedAt':_0x59fd01['resolvedAt'],'resolvedBy':_0x59fd01['resolvedBy'],'attributes':_0x59fd01['attributes']||{}}):null;},'updateCommentThread':async({channelId:_0x13afd8,threadId:_0x1e6747,context:_0x256521,unlinkedAt:_0x5f2050,attributes:_0x25e72d})=>this['_getService'](_0x13afd8)['updateCommentThread']({'commentThreadId':_0x1e6747,'context':_0x256521,'attributes':_0x25e72d,'unlinkedAt':_0x5f2050})['catch'](rt)['catch'](ct),'resolveCommentThread':async({channelId:_0x13137f,threadId:_0x3993dd})=>{const _0x4fde2b=await this['_getService'](_0x13137f)['resolveCommentThread'](_0x3993dd)['catch'](rt)['catch'](ct);return{'threadId':_0x4fde2b['commentThreadId'],'resolvedAt':_0x4fde2b['resolvedAt'],'resolvedBy':_0x4fde2b['resolvedBy']};},'reopenCommentThread':async({channelId:_0x367bb6,threadId:_0x2dc71f})=>this['_getService'](_0x367bb6)['reopenCommentThread'](_0x2dc71f)['catch'](rt)['catch'](ct),'removeCommentThread':({channelId:_0x2df65a,threadId:_0x825ed})=>this['_getService'](_0x2df65a)['removeCommentThread'](_0x825ed)['catch'](rt)['catch'](ct),'addComment':({channelId:_0x27e629,threadId:_0x1765ec,commentId:_0x470a84,content:_0x44a51b,attributes:_0x3f902b})=>this['_getService'](_0x27e629)['addComment'](_0x1765ec,_0x470a84,_0x44a51b,_0x3f902b)['catch'](ct),'updateComment':({channelId:_0x3da9f5,threadId:_0x3d2443,commentId:_0x98f0aa,content:_0x3b19c5,attributes:_0x2c71bb})=>this['_getService'](_0x3da9f5)['updateComment'](_0x3d2443,_0x98f0aa,_0x3b19c5,_0x2c71bb)['catch'](rt)['catch'](ct),'removeComment':({channelId:_0x1b2cd1,threadId:_0xfaa39b,commentId:_0x2b470b})=>this['_getService'](_0x1b2cd1)['removeComment'](_0xfaa39b,_0x2b470b)['catch'](rt)['catch'](ct)},_0x3dcc62 instanceof _0x59ae87){const _0x70c9d4=_0x3dcc62['config']['get']('collaboration.channelId'),_0x3f2603=_0x3dcc62['plugins']['get'](Y);await this['_setUpService'](_0x70c9d4);const _0x704bb0=await this['_services']['get'](_0x70c9d4)['getConnectedSessions']();this['listenTo'](_0x3f2603,'sessionAdd:'+_0x70c9d4,(_0x47f32f,{session:_0x3321f3})=>{_0x3321f3['id']===_0x3f2603['mySessionId']&&(_0x47f32f['off'](),this['context']['plugins']['get']('Permissions')['setPermissions'](_0x3321f3['permissions'],_0x70c9d4));}),_0x3f2603['register'](_0x70c9d4,_0x704bb0);}}async['_setUpService'](_0x325166){if(this['_services']['has'](_0x325166))throw new _0x5d88de('cloudservicescommentsadapter-connect-already-connected',null,{'channelId':_0x325166});const _0xe1cde2=this['context']['plugins']['get'](_0x3cd3b6),_0x504a94=new ot['CommentsService'](_0x325166);this['_services']['set'](_0x325166,_0x504a94),this['listenTo'](_0x504a94,'commentThreadAdded',(_0x802746,_0x15a65d)=>{const {commentThreadId:_0x3327d7,documentId:_0x393337,context:_0x5b0325,attributes:_0x23ca1a,resolvedAt:_0x62c378,resolvedBy:_0x44fa82,comments:_0x3acd26}=_0x15a65d;_0xe1cde2['getCommentThread'](_0x3327d7)||_0xe1cde2['addCommentThread']({'threadId':_0x3327d7,'channelId':_0x393337,'comments':_0x3acd26?_0x3acd26['map'](at):[],'context':_0x5b0325,'attributes':_0x23ca1a,'resolvedAt':_0x62c378,'resolvedBy':_0x44fa82,'isFromAdapter':!0x0});}),this['listenTo'](_0x504a94,'commentThreadUpdated',(_0x203457,{commentThreadId:_0x44bb69,documentId:_0x1685bd,context:_0x2da75a,unlinkedAt:_0x5549dc,attributes:_0x4ef39f})=>{_0xe1cde2['getCommentThread'](_0x44bb69)&&_0xe1cde2['updateCommentThread']({'threadId':_0x44bb69,'channelId':_0x1685bd,'context':_0x2da75a,'unlinkedAt':_0x5549dc,'attributes':_0x4ef39f,'isFromAdapter':!0x0});}),this['listenTo'](_0x504a94,'commentThreadResolved',(_0x4d0205,{commentThreadId:_0x1788b3,resolvedBy:_0xc10236,resolvedAt:_0x50a9ff})=>{const _0xfac38e=_0xe1cde2['getCommentThread'](_0x1788b3);_0xfac38e&&_0xfac38e['resolve']({'resolvedBy':_0xc10236,'resolvedAt':_0x50a9ff,'isFromAdapter':!0x0});}),this['listenTo'](_0x504a94,'commentThreadReopened',(_0x344d37,{commentThreadId:_0x9f8e5e})=>{const _0x298619=_0xe1cde2['getCommentThread'](_0x9f8e5e);_0x298619&&_0x298619['reopen']({'isFromAdapter':!0x0});}),this['listenTo'](_0x504a94,'commentThreadRemoved',(_0xe842a2,{commentThreadId:_0x3bd7eb})=>{const _0x495456=_0xe1cde2['getCommentThread'](_0x3bd7eb);_0x495456&&_0x495456['remove']({'isFromAdapter':!0x0});}),this['listenTo'](_0x504a94,'commentAdded',(_0x509e84,_0x19966d)=>{const _0x19a450=_0x19966d['commentThreadId'],_0x2057a0=_0xe1cde2['getCommentThread'](_0x19a450);_0x2057a0&&_0x2057a0['addComment']({...at(_0x19966d),'isFromAdapter':!0x0});}),this['listenTo'](_0x504a94,'commentUpdated',(_0x5576ed,{commentThreadId:_0x3b9b7e,commentId:_0x3de5f2,content:_0x28f45c,attributes:_0x509ad2})=>{const _0x361186=_0xe1cde2['getCommentThread'](_0x3b9b7e);if(_0x361186){const _0x2ff72a=_0x361186['getComment'](_0x3de5f2);_0x2ff72a&&_0x2ff72a['update']({'content':_0x28f45c,'attributes':_0x509ad2,'isFromAdapter':!0x0});}}),this['listenTo'](_0x504a94,'commentRemoved',(_0x554c23,{commentThreadId:_0x333b19,commentId:_0x1c1491})=>{const _0x17c34f=_0xe1cde2['getCommentThread'](_0x333b19);if(_0x17c34f){const _0x299ac9=_0x17c34f['getComment'](_0x1c1491);_0x299ac9&&_0x299ac9['remove']({'isFromAdapter':!0x0});}}),await this['_connectService'](_0x325166);}['destroy'](){if(this['context']instanceof _0x59ae87){const _0x16b577=this['context']['config']['get']('collaboration.channelId');this['_terminateService'](_0x16b577);}}['_terminateService'](_0x2dd875){if(!this['_services']['has'](_0x2dd875))throw new _0x5d88de('cloudservicescommentsadapter-disconnect-not-exist',null,{'channelId':_0x2dd875});this['_getService'](_0x2dd875)['disconnect'](),this['_services']['delete'](_0x2dd875);}async['reconnect'](){for(const _0x37a94b of this['_services']['keys']())await this['_connectService'](_0x37a94b);if(this['context']instanceof _0x59ae87){const _0x2c71c7=this['context']['config']['get']('collaboration.channelId'),_0x25aaaa=this['context']['plugins']['get'](Y);_0x25aaaa['unregister'](_0x2c71c7);const _0xdaaaf4=await this['_services']['get'](_0x2c71c7)['getConnectedSessions']();_0x25aaaa['register'](_0x2c71c7,_0xdaaaf4);}}async['_connectService'](_0x37a534){const {connection:_0x399061}=this['context']['plugins']['get'](z),_0x36a3a4=this['context']['plugins']['get'](_0x3cd3b6),_0x22ff90=this['_services']['get'](_0x37a534),_0x163e2a=await _0x22ff90['connect'](_0x399061);await this['_fetchMissingUsersForThreads'](_0x163e2a);const _0x20e8fe=new Set(Array['from'](_0x36a3a4['getCommentThreads']({'channelId':_0x37a534}),_0x5876fc=>_0x5876fc['id']));for(const _0x3db496 of _0x163e2a)_0x3db496['deletedAt']||_0x20e8fe['delete'](_0x3db496['commentThreadId']);for(const _0x4e4fd5 of _0x20e8fe)_0x36a3a4['getCommentThread'](_0x4e4fd5)['remove']({'isFromAdapter':!0x0});for(const _0x1bef98 of _0x163e2a){let _0x19a04b=_0x36a3a4['getCommentThread'](_0x1bef98['commentThreadId']);const {commentThreadId:_0x3b3b0e,context:_0x518d92,attributes:_0x29c4cd,resolvedBy:_0x3897b4,resolvedAt:_0x4cb4cd,unlinkedAt:_0x30df95,deletedAt:_0x691c7}=_0x1bef98;if(_0x691c7)continue;_0x19a04b||(_0x19a04b=_0x36a3a4['addCommentThread']({'channelId':_0x37a534,'threadId':_0x3b3b0e,'context':_0x518d92,'attributes':_0x29c4cd||{},'resolvedBy':_0x3897b4,'resolvedAt':_0x4cb4cd,'unlinkedAt':_0x30df95,'isFromAdapter':!0x0}));const _0xf02a46=new Set(Array['from'](_0x19a04b['comments'],_0x1bad64=>_0x1bad64['id']));for(const _0x13cb1b of _0x1bef98['comments'])_0xf02a46['delete'](_0x13cb1b['commentId']);for(const _0x308ced of _0xf02a46)_0x19a04b['getComment'](_0x308ced)['remove']({'isFromAdapter':!0x0});for(const _0x1581f3 of _0x1bef98['comments']){const _0x121a0e=_0x19a04b['getComment'](_0x1581f3['commentId']);_0x121a0e?_0x121a0e['content']!==_0x1581f3['content']&&_0x121a0e['update']({'content':_0x1581f3['content'],'isFromAdapter':!0x0}):_0x19a04b['addComment'](Object['assign'](at(_0x1581f3),{'isFromAdapter':!0x0}));}}}['_getService'](_0x46827d){if(!this['_services']['has'](_0x46827d))throw new _0x5d88de('cloudservicescommentsadapter-service-not-exist',null,{'channelId':_0x46827d});return this['_services']['get'](_0x46827d);}async['_fetchMissingUsersForThreads'](_0x5c8960){const _0x4e61f6=this['context']['plugins']['get'](_0x3847b0),{connection:_0x4cdd15}=this['context']['plugins']['get'](z),_0x75e353=new Set();for(const {resolvedBy:_0x526ff7,comments:_0x28b593}of _0x5c8960){_0x526ff7&&!_0x4e61f6['getUser'](_0x526ff7)&&_0x75e353['add'](_0x526ff7);for(const {userId:_0x592b9d}of _0x28b593)_0x4e61f6['getUser'](_0x592b9d)||_0x75e353['add'](_0x592b9d);}if(0x0===_0x75e353['size'])return;const _0x4e8d6e=await _0x2c2031['getMany'](_0x4cdd15,Array['from'](_0x75e353));for(const _0x57b0fa of _0x4e8d6e)_0x4e61f6['getUser'](_0x57b0fa['id'])||_0x4e61f6['addUser'](_0x57b0fa);}}async function rt(_0x20f27a){if('404'!==_0x20f27a['code'])throw _0x20f27a;}function ct(_0x7a925){if((_0x4ffc42=_0x7a925)['message']['startsWith']('cloud-services-internal-error:\x20Comments\x20Service\x20is\x20not\x20connected.')||_0x4ffc42['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x4ffc42['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.'))return new Promise(()=>{});var _0x4ffc42;throw _0x7a925;}function at(_0x532e4d){return{'threadId':_0x532e4d['commentThreadId'],'commentId':_0x532e4d['commentId'],'content':_0x532e4d['content'],'createdAt':_0x532e4d['createdAt'],'authorId':_0x532e4d['userId'],'attributes':_0x532e4d['attributes']||{}};}class ht extends _0x512c3b{static ['TrackChangesService']=/* #__PURE__ -- @preserve */
|
|
27
|
-
((()=>
|
|
28
|
-
((()=>_0x1e91e1)());['_lastRequestId'];['_revisionTracker'];['_revisionHistoryService'];['_oldOffset'];static get['requires'](){return[z,tt,_0x523413,Y,_0x3847b0];}static get['pluginName'](){return'CloudServicesRevisionHistoryAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x38e81d){super(_0x38e81d);const _0x28d6c0=this['editor']['config']['get']('collaboration.channelId');this['_lastRequestId']=null,this['_revisionTracker']=this['editor']['plugins']['get']('RevisionTracker'),this['_revisionHistoryService']=new mt['RevisionHistoryService'](_0x28d6c0);}async['init'](){const _0x413542=this['editor']['plugins']['get'](tt),_0x2876d8=_0x413542['serverHistory'],_0x581099=this['editor']['plugins']['get'](z);this['_revisionTracker']['setSource']({'history':_0x2876d8,'getLatestVersion':()=>this['_getLatestVersion'](),'getCurrentRevisionId':()=>_0x413542['sessionId']});const _0x3b5397=this['editor']['config']['get']('cloudServices.bundleVersion')||_0x3e5cdd,_0xd8a4b6=await _0x19bfcd['isBundleUploaded'](_0x581099['connection'],_0x3b5397);this['editor']['plugins']['get'](_0x523413)['adapter']={'getRevision':async({revisionId:_0x4fac8a})=>(await this['_waitForServiceReady'](),await this['_revisionHistoryService']['getRevision'](_0x4fac8a)),'updateRevisions':async _0x10fcc2=>{await this['_waitForServiceReady']();const _0x32dcb6=this['_revisionTracker']['currentRevision'];if(_0xd8a4b6&&0x1===_0x10fcc2['length']&&_0x10fcc2[0x0]['id']===_0x32dcb6['id'])return _0x10fcc2;for(const _0x143e38 of _0x10fcc2)_0x143e38['id']===_0x32dcb6['id']&&(_0x143e38['isEmptyCurrent']=_0x143e38['fromVersion']===_0x143e38['toVersion']);return this['_revisionHistoryService']['updateRevisions'](_0x10fcc2,this['_lastRequestId'])['then'](_0x790a56=>(this['_lastRequestId']=_0x790a56,_0x10fcc2))['catch'](_0x53910b=>{if(pt(_0x53910b)||'400'===_0x53910b['code']&&void 0x0!==_0x53910b['data']['wrongRequestId']){for(const _0xdbf56 of _0x10fcc2){!this['_revisionTracker']['repository']['getRevision'](_0xdbf56['id'])||this['_revisionTracker']['_bufferUpdate'](_0xdbf56['id'],_0xdbf56,!0x1);}if(pt(_0x53910b))throw _0x53910b;return _0x10fcc2;}throw _0x53910b;});}},this['listenTo'](this['_revisionHistoryService'],'revisionsUpdated',(_0x3d3a2b,{revisionsData:_0xf43b11,requestId:_0x4b6fe4})=>{Math['max'](..._0xf43b11['map'](_0x15d511=>_0x15d511['toVersion']))>this['_getLatestVersionFromServerOperations']()-0x1?this['_getLatestVersion']()['then'](()=>{this['_handleRevisionsUpdate'](_0xf43b11,_0x4b6fe4);}):this['_handleRevisionsUpdate'](_0xf43b11,_0x4b6fe4);});const {revisions:_0x48246f,requestId:_0x35b5ab}=await this['_revisionHistoryService']['connect'](_0x581099['connection']);_0x581099['addToReconnectionStack'](this),this['_lastRequestId']=_0x35b5ab,await this['_fetchMissingUsers'](_0x48246f);for(const _0x2ac4b6 of _0x48246f)this['_revisionTracker']['addRevisionData'](_0x2ac4b6);this['listenTo'](_0x413542,'change:_isConnected',(_0x3c203b,_0x2dfff7,_0x5687d6)=>{_0x5687d6&&(this['_oldOffset']=_0x413542['_offset'],_0x3c203b['off']());}),this['_revisionTracker']['bind']('isEnabled')['to'](_0x581099,'state',_0x149818=>_0x149818===_0x4f3cbc['CONNECTED']);}async['reconnect'](){const _0x5c9962=this['editor']['plugins']['get'](z),_0x40b9f6=this['editor']['plugins']['get'](tt),_0x1cafed=async()=>{const _0x3487ec=this['_revisionTracker']['currentRevision'],_0x17d05c=_0x3487ec['id'],_0x44de4b=_0x17d05c!==_0x40b9f6['sessionId'];if(_0x44de4b){const _0x57d783=_0x40b9f6['_offset']-this['_oldOffset'],_0x4cf3e6=this['_getLatestVersionFromServerOperations']();this['_revisionTracker']['_revisionDataBuilder']['reInit']();if(_0x3487ec['toVersion']+_0x57d783!==_0x4cf3e6){const _0x51e63d=_0x3487ec['fromVersion']+_0x57d783,_0x21c971=this['editor']['plugins']['get'](_0x3847b0),_0x18eb19=this['_revisionTracker']['buildRevisionData']({'revision':_0x3487ec,'from':_0x51e63d,'to':_0x4cf3e6});_0x18eb19['id']=_0x3487ec['id'];const _0x4c3a00=_0x18eb19['authorsIds']['map'](_0x272c96=>_0x21c971['getUser'](_0x272c96));_0x3487ec['_update']({..._0x18eb19,'authors':_0x4c3a00},!0x0),this['_revisionTracker']['_bufferUpdate'](_0x3487ec['id'],_0x18eb19,!0x0);}this['_revisionTracker']['_startingVersion']=_0x4cf3e6,(_0x3487ec['toVersion']===_0x3487ec['fromVersion']&&!this['_revisionTracker']['_bufferedUpdates']['has'](_0x17d05c)&&this['_revisionTracker']['repository']['_revisions']['remove'](_0x17d05c),this['_revisionTracker']['_createCurrentRevision'](_0x4cf3e6));}const {revisions:_0x54c761,requestId:_0x14a636}=await this['_revisionHistoryService']['reconnect'](_0x5c9962['connection'],this['_lastRequestId']);_0x44de4b&&_0x54c761['length']>0x0?_0x40b9f6['_handleReconnectionError']():(await this['_fetchMissingUsers'](_0x54c761),this['_handleRevisionsUpdate'](_0x54c761,_0x14a636),this['_revisionTracker']['sendBufferedUpdates']());};return _0x40b9f6['_isConnected']?_0x1cafed():new Promise((_0x9cbcb9,_0x183548)=>{_0x40b9f6['once']('change:_isConnected',()=>{_0x1cafed()['then'](_0x9cbcb9)['catch'](_0x183548);});});}['destroy'](){super['destroy']();}async['_waitForServiceReady'](){this['_revisionHistoryService']['isConnected']||await new Promise(_0x12ce66=>{this['listenTo'](this['_revisionHistoryService'],'connected',_0x39fed6=>{_0x39fed6['off'](),_0x12ce66();});});}['_getLatestVersionFromServerOperations'](){const _0x44cab0=this['editor']['plugins']['get'](tt)['serverHistory']['getOperations']()['reverse']();for(const _0x4e3e8c of _0x44cab0)if('marker'!==_0x4e3e8c['type']||_0x4e3e8c['affectsData'])return _0x4e3e8c['baseVersion']+0x1;}['_getLatestVersion'](){const _0x148913=this['editor']['plugins']['get'](tt);return new Promise(_0xa7dd87=>{_0x148913['_isPendingUpdate']?_0x148913['once']('change:_isPendingUpdate',()=>{_0xa7dd87(this['_getLatestVersionFromServerOperations']());}):_0xa7dd87(this['_getLatestVersionFromServerOperations']());});}['_handleRevisionsUpdate'](_0x5bb390,_0x7c4af1){const _0x528773=this['_revisionTracker']['repository'];this['_lastRequestId']=_0x7c4af1;for(const _0x41aa37 of _0x5bb390){const _0x1d8ad4=_0x528773['getRevision'](_0x41aa37['id']);if(_0x1d8ad4){if((_0x41aa37['fromVersion']||_0x41aa37['toVersion'])&&(_0x41aa37['diffData']=null),_0x1d8ad4===this['_revisionTracker']['currentRevision']){const _0x112868=Math['max'](_0x1d8ad4['toVersion'],_0x41aa37['toVersion']),_0x26153f=Math['max'](_0x1d8ad4['fromVersion'],_0x41aa37['fromVersion']);let _0x53d69c;_0x1d8ad4['toVersion']===_0x41aa37['toVersion']&&_0x1d8ad4['fromVersion']===_0x41aa37['fromVersion']?(_0x53d69c=!0x0,this['_preventResendingRevisionData'](_0x41aa37)):_0x41aa37['toVersion']===_0x112868&&_0x41aa37['fromVersion']===_0x26153f?_0x53d69c=!0x1:(_0x1d8ad4['toVersion']===_0x112868&&_0x1d8ad4['fromVersion']===_0x26153f||this['_fixRevision']({'revision':_0x1d8ad4,'from':_0x26153f,'to':_0x112868}),_0x53d69c=!0x0),_0x53d69c&&(delete _0x41aa37['fromVersion'],delete _0x41aa37['toVersion'],delete _0x41aa37['diffData'],delete _0x41aa37['createdAt'],delete _0x41aa37['authorsIds']);}this['_revisionTracker']['setRevisionData'](_0x41aa37),this['_preventResendingRevisionData'](_0x41aa37);}else this['_revisionTracker']['addRevisionData'](_0x41aa37);}const _0x5cc87b=_0x528773['getRevisions']();_0x5cc87b['reverse']();for(let _0x638914=0x0;_0x638914<_0x5cc87b['length']-0x1;_0x638914++){const _0x2677d4=_0x5cc87b[_0x638914],_0x46443c=_0x5cc87b[_0x638914+0x1];if(_0x2677d4['fromVersion']<_0x46443c['toVersion']){const _0x437099=_0x46443c['toVersion'],_0x4b5176=Math['max'](_0x437099,_0x2677d4['toVersion']);this['_fixRevision']({'revision':_0x2677d4,'from':_0x437099,'to':_0x4b5176});}}}['_fixRevision']({revision:_0x388b1e,from:_0x535a97,to:_0x23a9f9}={}){const _0x1283f0=this['editor']['plugins']['get'](_0x3847b0),_0x1cd26e=this['_revisionTracker']['buildRevisionData']({'revision':_0x388b1e,'from':_0x535a97,'to':_0x23a9f9});_0x1cd26e['authors']=_0x1cd26e['authorsIds']['map'](_0x18c34a=>_0x1283f0['getUser'](_0x18c34a)),_0x388b1e['_update'](_0x1cd26e);}['_preventResendingRevisionData'](_0xd002c4){const _0x17530f={};_0x17530f['id']=_0xd002c4['id'];for(const _0x2baf76 of Object['keys'](_0xd002c4))'id'!==_0x2baf76&&(_0x17530f[_0x2baf76]=void 0x0);this['_revisionTracker']['_bufferUpdate'](_0x17530f['id'],_0x17530f,!0x0);}async['_fetchMissingUsers'](_0x4c97c0){const _0x35b2b4=this['editor']['plugins']['get'](_0x3847b0),{connection:_0x4f8f1d}=this['editor']['plugins']['get'](z),_0x17285e=new Set();for(const _0x11eb8d of _0x4c97c0){for(const _0x2c905b of _0x11eb8d['authorsIds'])_0x3375e7(_0x2c905b);_0x11eb8d['creatorId']&&_0x3375e7(_0x11eb8d['creatorId']);}if(0x0===_0x17285e['size'])return;const _0x123db5=await _0x2c2031['getMany'](_0x4f8f1d,Array['from'](_0x17285e));for(const _0x5d1ed0 of _0x123db5)_0x35b2b4['getUser'](_0x5d1ed0['id'])||_0x35b2b4['addUser'](_0x5d1ed0);function _0x3375e7(_0x1a7bd7){_0x35b2b4['getUser'](_0x1a7bd7)||_0x17285e['add'](_0x1a7bd7);}}}function pt(_0x1edc5c){return _0x1edc5c['message']['startsWith']('cloud-services-internal-error:\x20Revision\x20History\x20Service\x20is\x20not\x20connected.')||_0x1edc5c['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x1edc5c['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}class gt extends _0x512c3b{static get['requires'](){return[_0x523413,mt,nt];}static get['pluginName'](){return'RealTimeCollaborativeRevisionHistory';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}class wt extends _0x45d855{['_collapseAt'];constructor(_0xd56965,_0x3ef29c=0x6){super(_0xd56965);const _0x168758=this['bindTemplate'];this['set']('isHidden',!0x0),this['set']('usersCount',0x0),this['_collapseAt']=_0x3ef29c,this['bind']('isHidden')['to'](this,'usersCount',_0x20cc79=>_0x20cc79<_0x3ef29c),this['setTemplate']({'tag':'div','attributes':{'class':['ck','ck-presence-list__list-item',_0x168758['if']('isHidden','ck-presence-list__counter--hidden')],'role':'listitem'},'children':[{'tag':'div','attributes':{'class':['ck','ck-presence-list__users-counter']},'children':[{'tag':'div','attributes':{'class':['ck','ck-presence-list__users-counter__text']},'children':[{'text':_0x168758['to']('usersCount',_0x331015=>'+'+(_0x331015-this['_collapseAt']+0x2)['toString']())}]}]}]});}}class vt extends _0x45d855{['items'];['keystrokes'];constructor(_0x37e997){super(_0x37e997);const _0x4352d3=this['bindTemplate'];this['items']=this['createCollection'](),this['keystrokes']=new _0x2864f3(),this['set']({'hasPopup':!0x1,'isExpanded':!0x1}),this['setTemplate']({'tag':'div','attributes':{'aria-haspopup':_0x4352d3['if']('hasPopup'),'aria-expanded':_0x4352d3['to']('isExpanded',_0x15ec66=>this['hasPopup']&&String(_0x15ec66)),'aria-label':_0x4352d3['to']('hasPopup',_0x3cf0c3=>X(_0x37e997,_0x3cf0c3?'Collapsed\x20connected\x20users\x20list\x20(press\x20ENTER\x20to\x20open\x20it)':'Connected\x20users\x20list')),'role':'list','tabindex':_0x4352d3['to']('hasPopup',_0x215da6=>!!_0x215da6&&0x0),'class':['ck','ck-presence-list__list']},'children':this['items'],'on':{'mouseenter':_0x4352d3['to'](()=>this['fire']('presencelist:show')),'mouseleave':_0x4352d3['to'](_0x136ac4=>{const _0xe12994=_0x136ac4,_0x39ae0d=document['querySelector']('.ck-presence-list__dropdown-list'),_0x107ac6=document['querySelector']('.ck-balloon-panel_with-arrow');_0x39ae0d?.['contains'](_0xe12994['relatedTarget'])||_0x107ac6?.['contains'](_0xe12994['relatedTarget'])||this['fire']('presencelist:hide');})}}),this['on']('change:hasPopup',(_0x50e52d,_0x42e258,_0x566caf)=>{this['element']&&(_0x566caf?this['element']['setAttribute']('aria-expanded',String(this['isExpanded'])):this['element']['removeAttribute']('aria-expanded'));});}['focus'](){this['element']['focus']();}['render'](){super['render'](),this['keystrokes']['listenTo'](this['element']);}}class _t extends _0x45d855{['counterView'];['inlineListView'];constructor(_0x1a66ce,_0x278cec=0x6){super(_0x1a66ce);const _0x229e3f=this['bindTemplate'];this['set']('isCollapsed',!0x0),this['counterView']=new wt(this['locale'],_0x278cec),this['inlineListView']=new vt(_0x1a66ce),this['inlineListView']['bind']('hasPopup')['to'](this,'isCollapsed'),this['listenTo'](this['inlineListView']['items'],'change',()=>{for(const _0x115077 of this['inlineListView']['items'])_0x115077['tooltipPosition']='s';this['inlineListView']['items']['first']&&(this['inlineListView']['items']['first']['tooltipPosition']='se');}),this['setTemplate']({'tag':'div','attributes':{'class':['ck','ck-presence-list','ck-reset','ck-rounded-corners',_0x229e3f['if']('isCollapsed','ck-presence-list--collapsed')]},'children':[this['inlineListView']]});}}class yt extends _0x45d855{['listWrapperView'];constructor(_0x526067,_0x3fa2d0){super(_0x526067);const _0x581c3e=this['bindTemplate'];this['listWrapperView']=new bt(_0x526067,_0x3fa2d0),this['setTemplate']({'tag':'div','attributes':{'tabindex':-0x1,'role':'application','class':['ck','ck-presence-list__dropdown-list'],'aria-label':X(_0x526067,'Connected\x20users\x20list\x20dropdown\x20menu')},'children':[this['listWrapperView']],'on':{'mouseleave':_0x581c3e['to'](_0x12034b=>{const _0x3d4736=_0x12034b,_0x26f854=document['querySelector']('.ck-presence-list__list'),_0x803e2f=document['querySelector']('.ck-balloon-panel_with-arrow');_0x26f854?.['contains'](_0x3d4736['relatedTarget'])||_0x803e2f?.['contains'](_0x3d4736['relatedTarget'])||this['fire']('presencelist:hide');})}});}}class bt extends _0x28fa98{constructor(_0x37b7c6,_0x105d26){super(_0x37b7c6);const _0x1a9165=this['bindTemplate'];this['set']('_isScrollable',!0x1),this['setTemplate']({'tag':_0x105d26?'div':'ul','attributes':{'class':['ck','ck-reset','ck-list','ck-presence-list__dropdown-list-wrapper',_0x1a9165['if']('_isScrollable','ck-presence-list__dropdown-list-wrapper_scrollable')],'role':_0x1a9165['to']('role'),'aria-label':_0x1a9165['to']('ariaLabel'),'aria-labelledby':_0x1a9165['to']('ariaLabelledBy')},'children':this['items']}),this['listenTo'](_0x57454e['window'],'resize',()=>this['checkIfScrollable']()),this['items']['on']('change',()=>this['checkIfScrollable']());}['render'](){super['render'](),this['checkIfScrollable']();}['checkIfScrollable'](){const _0x414d20=this['element'];_0x414d20&&(this['_isScrollable']=Math['max'](_0x414d20['scrollHeight'],_0x414d20['clientHeight'])>0.8*window['innerHeight']);}}class kt extends _0xbb6ce2{['userView'];constructor(_0x269aec,_0x229d9f,_0x23f61e){super(_0x269aec);const _0x5e237e=this['bindTemplate'];this['userView']=new _0x35e11e(_0x269aec,_0x229d9f);const _0x3e7d2a={'tag':'li','attributes':{'class':['ck','ck-presence-list__dropdown-list-item'],'tabindex':-0x1,'role':'presentation','aria-label':_0x229d9f['name']},'children':[this['userView'],{'tag':'span','attributes':{'class':['ck','ck-user__full-name']},'children':[{'text':_0x229d9f['name']}]},{'tag':'span','attributes':{'class':['ck','ck-presence-list__marker',_0x229d9f['color']['getBackgroundColorClass']()],'style':{'--ck-user-color':_0x229d9f['color']['getColorVariable'](),'--ck-user-color-alpha':_0x229d9f['color']['getColorAlphaVariable']()},'aria-hidden':'true'}}]};_0x23f61e&&(_0x3e7d2a['tag']='button',_0x3e7d2a['on']={'click':_0x5e237e['to'](()=>this['fire']('execute'))}),this['setTemplate'](_0x3e7d2a);}['focus'](){this['element']['focus']();}}class It extends _0x45d855{['userView'];['markerView'];constructor(_0x5cd014,_0x6762c1,_0x1a7569){super(_0x5cd014);const _0x367fd8=this['bindTemplate'];this['set']('isFocusable',!0x1),this['set']('hasTooltip',!0x0),this['set']('tooltipPosition',''),this['userView']=new _0x35e11e(_0x5cd014,_0x6762c1),this['markerView']=new St(_0x5cd014,_0x6762c1);const _0x130387=new _0x2db3b4(_0x5cd014);_0x130387['template']['tag']='span',_0x130387['text']=_0x6762c1['name'];const _0x475f54={'tag':'div','attributes':{'class':['ck','ck-presence-list__list-item'],'role':'listitem','tabindex':_0x367fd8['to']('isFocusable',_0xbd07f1=>!!_0xbd07f1&&0x0),'aria-labelledby':_0x130387['id'],'data-cke-tooltip-text':this['userView']['name'],'data-cke-tooltip-position':_0x367fd8['to']('tooltipPosition'),'data-cke-tooltip-disabled':_0x367fd8['to']('hasTooltip',_0x16046b=>!_0x16046b),'data-cke-tooltip-class':'ck-presence-list__list-item__tooltip'},'children':[this['userView'],this['markerView'],_0x130387]};_0x1a7569&&(_0x475f54['tag']='button',_0x475f54['on']={'click':_0x367fd8['to'](()=>this['fire']('execute'))}),this['setTemplate'](_0x475f54);}}class St extends _0x45d855{constructor(_0x44d41d,_0x33d467){super(_0x44d41d),this['setTemplate']({'tag':'span','attributes':{'class':['ck','ck-presence-list__marker',_0x33d467['color']['getBackgroundColorClass']()],'style':{'--ck-user-color':_0x33d467['color']['getColorVariable'](),'--ck-user-color-alpha':_0x33d467['color']['getColorAlphaVariable']()},'aria-hidden':'true'}});}}const Tt={'collapseAt':0x6,'displayMe':!0x0};class At extends _0x6b13bf{['currentDisplayedUsers'];['balloonPanelView'];['view'];['presenceDropdownView'];['_bodyCollection']=null;static get['pluginName'](){return'PresenceListUI';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x5dbf44){super(_0x5dbf44),this['context']['config']['define']('presenceList',Tt);const _0x2d1dd9=_0x5dbf44['config']['get']('presenceList.collapseAt');if('number'!=typeof _0x2d1dd9)throw new _0x5d88de('presencelist-collapseat-invalid-format',this);if(_0x2d1dd9<0x1)throw new _0x5d88de('presencelist-collapseat-invalid-format',this);this['_allConnectedUsers']=this['context']['plugins']['get'](Y)['allConnectedUsers'],this['set']('usersCount',0x0),this['currentDisplayedUsers']=new _0x37a42c(),this['balloonPanelView']=new _0x246412(),this['balloonPanelView']['class']='ck\x20ck-presence-list__balloon',this['view']=this['_createView'](),this['presenceDropdownView']=void 0x0;}static get['requires'](){return[Y];}['init'](){for(const _0x1783ac of this['_allConnectedUsers'])this['_handleUserAdd'](_0x1783ac);this['listenTo'](this['_allConnectedUsers'],'add',(_0x4ada7a,_0x4d884f)=>{this['_handleUserAdd'](_0x4d884f);}),this['listenTo'](this['_allConnectedUsers'],'remove',(_0x16b241,_0x582664)=>{this['_handleUserRemove'](_0x582664);});}['_createView'](){const _0x3741a6=this['context'],_0x144dfd=new _t(this['context']['locale'],this['context']['config']['get']('presenceList.collapseAt')),_0x56659a=this['balloonPanelView'];if(!_0xf133dc(_0x3741a6['config']['get']('presenceList.container')))throw new _0x5d88de('presencelist-missing-container',this);return _0x144dfd['counterView']['bind']('usersCount')['to'](this),_0x144dfd['bind']('isCollapsed')['to'](this,'usersCount',_0x5cb8b4=>{const {collapseAt:_0x24b28a}=_0x3741a6['config']['get']('presenceList'),_0x32103c=_0x5cb8b4>=_0x24b28a;if(_0x32103c&&!_0x144dfd['inlineListView']['items']['find'](_0x170cda=>_0x170cda instanceof wt)){const _0x25a168=this['context']['config']['get']('presenceList.collapseAt')-0x1;this['currentDisplayedUsers']['length']==_0x25a168&&this['currentDisplayedUsers']['length']>0x1&&this['currentDisplayedUsers']['remove'](this['currentDisplayedUsers']['length']-0x1),_0x144dfd['inlineListView']['items']['add'](_0x144dfd['counterView']);}return _0x32103c||this['hideDropdown'](),_0x32103c;}),_0x144dfd['inlineListView']['items']['bindTo'](this['currentDisplayedUsers'])['using'](_0x246cf7=>{const _0x37017=_0x3741a6['config']['get']('presenceList'),_0x1b8b6e=new It(_0x3741a6['locale'],_0x246cf7,!!_0x37017['onClick']);return _0x1b8b6e['bind']('hasTooltip')['to'](_0x144dfd,'isCollapsed',_0x225615=>!_0x225615),_0x1b8b6e['bind']('isFocusable')['to'](_0x144dfd,'isCollapsed',_0x5771a9=>!_0x5771a9),_0x37017['onClick']&&this['listenTo'](_0x1b8b6e,'execute',()=>{this['view']['isCollapsed']||_0x37017['onClick'](_0x246cf7,_0x1b8b6e['element']);}),_0x1b8b6e;}),this['listenTo'](_0x144dfd['inlineListView'],'presencelist:show',()=>{this['view']['isCollapsed']&&this['showDropdown']();}),this['listenTo'](_0x144dfd['inlineListView'],'presencelist:hide',()=>{this['presenceDropdownView']&&this['hideDropdown']();}),_0x144dfd['inlineListView']['keystrokes']['set']('Enter',(_0xe625cf,_0x27acda)=>{this['view']['isCollapsed']&&(this['showDropdown'](),_0x27acda());}),_0x144dfd['render'](),_0x56659a['render'](),_0x429dd3({'emitter':_0x144dfd,'activator':()=>_0x56659a['isVisible'],'contextElements':[_0x56659a['element'],_0x144dfd['inlineListView']['element']],'callback':()=>this['hideDropdown']()}),_0x3741a6['config']['get']('presenceList.container')['appendChild'](_0x144dfd['element']),this['_bodyCollection']=new _0x3c32f1(this['context']['locale']),this['_bodyCollection']['attachToDom'](),this['_bodyCollection']['add'](this['balloonPanelView']),_0x144dfd;}['_handleUserAdd'](_0x2620c0){if(!this['context']['config']['get']('presenceList.displayMe')&&_0x2620c0['isMe'])return;const _0x35bb20=this['context']['config']['get']('presenceList.collapseAt')-0x1;for(this['usersCount']++;this['currentDisplayedUsers']['length']>=_0x35bb20-(this['view']['isCollapsed']?0x1:0x0)&&this['currentDisplayedUsers']['length']>0x1;)this['currentDisplayedUsers']['remove'](0x1);const _0x519a7b=_0x2620c0['isMe']?0x0:this['currentDisplayedUsers']['length'];this['currentDisplayedUsers']['add'](_0x2620c0,_0x519a7b);}['_handleUserRemove'](_0x3a211b){this['usersCount']--;const {collapseAt:_0x5e77f4}=this['context']['config']['get']('presenceList'),_0x445265=this['usersCount']>=_0x5e77f4;if(this['currentDisplayedUsers']['get'](_0x3a211b['id']))this['currentDisplayedUsers']['remove'](_0x3a211b['id']);else{if(_0x445265&&this['currentDisplayedUsers']['length']+0x1===_0x5e77f4-0x1)return;}if(this['currentDisplayedUsers']['length']+(_0x445265?0x1:0x0)<this['usersCount']){for(const _0x7fb32a of Array['from'](this['_allConnectedUsers'])['reverse']())if(!this['currentDisplayedUsers']['get'](_0x7fb32a['id'])&&(this['currentDisplayedUsers']['add'](_0x7fb32a,Math['min'](this['currentDisplayedUsers']['length']-(_0x445265?0x1:0x0),0x1)),this['currentDisplayedUsers']['length']+(_0x445265?0x1:0x0)===_0x5e77f4-0x1))return;}}['showDropdown'](){if(this['presenceDropdownView'])return;const _0x4ca0a1=this['context']['config']['get']('presenceList');this['presenceDropdownView']=new yt(this['context']['locale'],!!_0x4ca0a1['onClick']),this['view']['inlineListView']['isExpanded']=!0x0,this['listenTo'](this['presenceDropdownView'],'presencelist:hide',()=>{this['presenceDropdownView']&&this['hideDropdown']();});const {listWrapperView:_0x3155a3}=this['presenceDropdownView'];_0x3155a3['items']['bindTo'](this['_allConnectedUsers'])['using'](_0x2a7613=>{if(!_0x4ca0a1['displayMe']&&_0x2a7613['isMe'])return null;const _0x1bf6fc=new kt(this['context']['locale'],_0x2a7613,!!_0x4ca0a1['onClick']);return _0x4ca0a1['onClick']&&this['listenTo'](_0x1bf6fc,'execute',()=>{_0x4ca0a1['onClick'](_0x2a7613,_0x1bf6fc['element']);}),_0x1bf6fc;}),this['balloonPanelView']['content']['add'](this['presenceDropdownView']),this['balloonPanelView']['pin']({'target':this['view']['inlineListView']['element']}),_0x3155a3['focus'](),_0x3155a3['checkIfScrollable']();const _0x4602be=(_0x1b1ccb,_0x479604)=>{this['hideDropdown'](),this['view']['inlineListView']['focus'](),_0x479604();};_0x3155a3['keystrokes']['set']('Esc',_0x4602be),_0x3155a3['keystrokes']['set']('Shift+Tab',_0x4602be),_0x3155a3['keystrokes']['set']('Tab',(_0x4b88e1,_0x119558)=>{!function(_0x5579d0){const _0x45015b=['a','button','input','select','textarea','[tabindex]','[contenteditable]']['map'](_0x54adce=>_0x54adce+':not([disabled]):not([tabindex=\x22-1\x22])')['join'](','),_0x466cd9=[...document['body']['querySelectorAll'](_0x45015b)]['filter'](_0x5464ee=>_0x5464ee===document['activeElement']||_0x5464ee['offsetWidth']+_0x5464ee['offsetHeight']>0x0)['sort']((_0x441e38,_0x170445)=>(_0x441e38['tabIndex']||0x0)-(_0x170445['tabIndex']||0x0)),_0x5d50ac=_0x466cd9['indexOf'](_0x5579d0),_0x4509b4=_0x466cd9[(_0x5d50ac+0x1)%_0x466cd9['length']];_0x4509b4&&_0x4509b4['focus']();}(this['view']['element']),this['hideDropdown'](),_0x119558();}),_0x3155a3['focusTracker']['add'](this['view']['element']),_0x3155a3['focusTracker']['on']('change:isFocused',(_0xb86f65,_0x1e3a96,_0x33101b)=>{_0x33101b||this['hideDropdown']();});}['hideDropdown'](){this['presenceDropdownView']&&(this['view']['inlineListView']['isExpanded']=!0x1,this['balloonPanelView']['unpin'](),this['balloonPanelView']['content']['remove'](this['presenceDropdownView']),this['presenceDropdownView']['destroy'](),this['presenceDropdownView']=void 0x0);}['destroy'](){super['destroy'](),this['view']&&this['view']['isRendered']&&this['view']['destroy'](),this['_bodyCollection']&&(this['_bodyCollection']['detachFromDom'](),this['_bodyCollection']['destroy'](),this['_bodyCollection']=null);}}class Pt extends _0x6b13bf{static get['requires'](){return[Y,At];}static get['pluginName'](){return'PresenceList';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}export{ot as CloudServicesCommentsAdapter,mt as CloudServicesRevisionHistoryAdapter,ht as CloudServicesTrackChangesAdapter,Pt as PresenceList,At as PresenceListUI,tt as RealTimeCollaborationClient,ut as RealTimeCollaborativeComments,nt as RealTimeCollaborativeEditing,gt as RealTimeCollaborativeRevisionHistory,ft as RealTimeCollaborativeTrackChanges,Y as Sessions,z as WebSocketGateway};
|
|
23
|
+
import{ContextPlugin as _0xef80a1,Plugin as _0x281793,PendingActions as _0x5e8c5f,Context as _0x5407be}from'@ckeditor/ckeditor5-core/dist/index.js';import{DomEmitterMixin as _0x28dffe,CKEditorError as _0xe32300,Collection as _0x2c5641,global as _0x28e582,version as _0x5909bb,uid as _0x494522,KeystrokeHandler as _0x42e44d}from'@ckeditor/ckeditor5-utils/dist/index.js';import{Notification as _0x516d46,View as _0x1a3fd9,ListView as _0x37da38,ListItemView as _0x2c00f3,LabelView as _0x35c56a,BalloonPanelView as _0x553bc5,clickOutsideHandler as _0x360bc9,BodyCollection as _0x447c29}from'@ckeditor/ckeditor5-ui/dist/index.js';import{ModelLiveRange as _0x2c3be1,History as _0x28c39a,NoOperation as _0x270f4f,InsertOperation as _0x570df8,MarkerOperation as _0x191477,RootAttributeOperation as _0x37805c,transformOperationSets as _0x704f48,OperationFactory as _0xf2f158}from'@ckeditor/ckeditor5-engine/dist/index.js';import{CloudServices as _0x4774f2}from'@ckeditor/ckeditor5-cloud-services/dist/index.js';import{WebSocketGateway as _0x2419ba,WEB_SOCKET_GATEWAY_STATES as _0x353716,CollaborativeEditingService as _0x296a21,User as _0x381d6e,CommentsService as _0x79be79,TrackChangesService as _0x46718a,RevisionHistoryService as _0x1279c1,EditorService as _0x33edb5}from'@ckeditor/ckeditor-cloud-services-collaboration';import{Users as _0x4c102a,UserView as _0x2d3ca6}from'@ckeditor/ckeditor5-collaboration-core/dist/index.js';import{Compressor as _0x3150b1}from'@ckeditor/ckeditor5-operations-compressor';import{TrackChangesEditing as _0x539b66,TrackChanges as _0xadf793}from'@ckeditor/ckeditor5-track-changes/dist/index.js';import{CommentsRepository as _0x5be5e5,Comments as _0x186826,CommentsEditing as _0x59426b}from'@ckeditor/ckeditor5-comments/dist/index.js';import{RevisionHistory as _0x4a2d92}from'@ckeditor/ckeditor5-revision-history/dist/index.js';import{isElement as _0x1ed9b4}from'es-toolkit/compat';class z extends _0xef80a1{static ['WebSocketGateway']=/* #__PURE__ -- @preserve */
|
|
24
|
+
((()=>_0x2419ba)());static ['initialReconnectionInterval']=0x3e8;['connection'];['_reconnectionStack'];['_shouldPluginsReconnect'];['_domEmitter'];static get['requires'](){return[_0x4774f2,_0x516d46];}static get['pluginName'](){return'WebSocketGateway';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x5eb208){super(_0x5eb208),this['set']('state',_0x353716['CONNECTED']),this['set']('_isBrowserOffline',!0x1),this['_reconnectionStack']=new Set(),this['_shouldPluginsReconnect']=!0x1,this['_domEmitter']=new(_0x28dffe())();}['init'](){const _0x403ce1=this['context'],_0x346d0b=_0x403ce1['plugins']['get'](_0x4774f2),_0x515cb4=_0x403ce1['plugins']['get'](_0x516d46);if(!_0x346d0b['token'])throw new _0xe32300('websocketgateway-missing-token',this);if(!_0x346d0b['webSocketUrl'])throw new _0xe32300('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'](_0x346d0b['token'],_0x346d0b['webSocketUrl'],{'timeout':0x3e8*this['context']['config']['get']('cloudServices.connectionTimeout'),'requestTimeout':0x3e8*this['context']['config']['get']('cloudServices.requestTimeout')})['then'](_0x1efd6e=>{if(this['connection']=_0x1efd6e,this['bind']('state')['to'](_0x1efd6e,'state',this,'_isBrowserOffline',(_0x1bb660,_0x5e3c9f)=>('connected'!==_0x1bb660&&(this['_shouldPluginsReconnect']=!0x0),_0x5e3c9f||_0x1bb660!==_0x353716['CONNECTED']?_0x353716['DISCONNECTED']:this['state']==_0x353716['DISCONNECTED']&&this['_shouldPluginsReconnect']?(this['_shouldPluginsReconnect']=!0x1,this['_reconnect'](),_0x353716['CONNECTING']):_0x353716['CONNECTED'])),this['connection']['on']('error',(_0x25023a,_0x4f3265)=>{if('limitExceeded'!==_0x4f3265['code'])throw console['error'](_0x4f3265),new _0xe32300('cloudservices-init',null,{'originalError':_0x4f3265});_0x515cb4['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'});}),!_0x1efd6e['me'])return new Promise(_0x2b3055=>_0x1efd6e['on']('change:me',_0x2b3055));})['catch'](_0x42b5d4=>{throw console['error'](_0x42b5d4),new _0xe32300('cloudservices-init',null,{'originalError':_0x42b5d4});});}['addToReconnectionStack'](_0x83ed33){if('function'!=typeof _0x83ed33['reconnect'])throw new _0xe32300('websocketgateway-invalid-plugin-interface',this);if(this['isInReconnectionStack'](_0x83ed33))throw new _0xe32300('websocketgateway-plugin-already-registered',this,{'name':_0x83ed33['constructor']['pluginName']});this['_reconnectionStack']['add'](_0x83ed33);}['removeFromReconnectionStack'](_0xbc0eee){this['_reconnectionStack']['delete'](_0xbc0eee);}['isInReconnectionStack'](_0x134406){return this['_reconnectionStack']['has'](_0x134406);}['_reconnect'](){return this['connection']['reconnect']()['then'](()=>Promise['all'](Array['from'](this['_reconnectionStack'],_0x526361=>_0x526361['reconnect']())))['then'](()=>this['state']=_0x353716['CONNECTED'])['catch'](_0x2bc9de=>{throw console['error'](_0x2bc9de),new _0xe32300('cloudservices-reconnection-error',this['context']);});}['disconnect'](){this['connection']&&this['connection']['disconnect'](),this['state']=_0x353716['DISCONNECTED'],this['_domEmitter']['stopListening']();}['destroy'](){this['disconnect'](),super['destroy']();}}class Y extends _0xef80a1{['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,_0x4c102a];}constructor(_0x246c74){super(_0x246c74),this['channelSessions']=new Map(),this['channelConnectedUsers']=new Map(),this['allConnectedUsers']=new _0x2c5641(),this['_registeredSessions']=new Map(),this['_uniqueUsersCount']=0x0,this['_users']=this['context']['plugins']['get'](_0x4c102a);}['init'](){const _0x121bbf=this['context']['plugins']['get'](z);this['listenTo'](_0x121bbf,'change:state',(_0x44ea40,_0x3be196,_0x3e5ab1)=>{if('connected'!==_0x3e5ab1)this['channelSessions']['forEach'](_0x33ace3=>_0x33ace3['clear']()),this['channelConnectedUsers']['forEach'](_0x5e294d=>_0x5e294d['clear']()),this['allConnectedUsers']['clear']();else{for(const [_0x1764b0,_0x344637]of this['_registeredSessions'])for(const _0x29164f of _0x344637)this['_handleSessionAdd'](_0x1764b0,_0x29164f);}}),this['_createUser'](_0x121bbf['connection']['me'],!0x0);}['register'](_0xb79e7e,_0x5bb8a5){if(this['_registeredSessions']['has'](_0xb79e7e))throw new _0xe32300('sessions-register-already-registered',null,{'channelId':_0xb79e7e});this['_registeredSessions']['set'](_0xb79e7e,_0x5bb8a5),this['channelSessions']['set'](_0xb79e7e,new _0x2c5641()),this['channelConnectedUsers']['set'](_0xb79e7e,new _0x2c5641()),this['listenTo'](_0x5bb8a5,'add',(_0x4ade1f,_0x1aabc1)=>this['_handleSessionAdd'](_0xb79e7e,_0x1aabc1)),this['listenTo'](_0x5bb8a5,'remove',(_0x419a2a,_0x54c9a2)=>this['_handleSessionRemove'](_0xb79e7e,_0x54c9a2));for(const _0x3105b7 of _0x5bb8a5)this['_handleSessionAdd'](_0xb79e7e,_0x3105b7);}['unregister'](_0x221098){if(!this['_registeredSessions']['has'](_0x221098))throw new _0xe32300('sessions-unregister-not-exist',null,{'channelId':_0x221098});const _0x207db3=this['_registeredSessions']['get'](_0x221098);this['stopListening'](_0x207db3);for(const _0x5ecb21 of _0x207db3)'connected'===this['context']['plugins']['get'](z)['state']&&this['_handleSessionRemove'](_0x221098,_0x5ecb21);this['_registeredSessions']['delete'](_0x221098),this['channelSessions']['delete'](_0x221098),this['channelConnectedUsers']['delete'](_0x221098);}get['mySessionId'](){return this['context']['plugins']['get'](z)['connection']['sessionId'];}['getUserBySessionId'](_0x35bd1e){for(const _0x1325ad of this['channelSessions']['values']())for(const _0x170577 of _0x1325ad)if(_0x170577['id']===_0x35bd1e)return _0x170577['user'];}['getUserSessions'](_0x1fae80,_0x52875e){const _0x1b7f07=_0x52875e?[this['channelSessions']['get'](_0x52875e)]:this['channelSessions']['values'](),_0x422ee7=new Set();for(const _0x30f771 of _0x1b7f07)for(const _0x462ac0 of _0x30f771)_0x462ac0['user']['id']===_0x1fae80['id']&&_0x422ee7['add'](_0x462ac0['id']);return _0x422ee7;}['getUserRole'](_0x31aaf3){for(const _0x59c1f4 of this['channelSessions']['values']())for(const _0x26ce58 of _0x59c1f4)if(_0x26ce58['user']===_0x31aaf3)return _0x26ce58['role'];}['_handleSessionAdd'](_0xb8b81c,_0x5cff72){if('connected'!==this['context']['plugins']['get'](z)['state'])return;const _0x240fd0=_0x5cff72['user'],_0x467409=this['_users']['getUser'](_0x240fd0['id'])||this['_createUser'](_0x240fd0),_0x4b68d9=Object['assign']({},_0x5cff72,{'user':_0x467409});if(this['channelSessions']['get'](_0xb8b81c)['add'](_0x4b68d9),!_0x240fd0['hiddenInPresenceList']){const _0x5ba577=this['channelConnectedUsers']['get'](_0xb8b81c);_0x5ba577['has'](_0x467409['id'])||_0x5ba577['add'](_0x467409),this['allConnectedUsers']['has'](_0x467409['id'])||_0x240fd0['hiddenInPresenceList']||this['allConnectedUsers']['add'](_0x467409,_0x467409['isMe']?0x0:void 0x0);}this['fire']('sessionAdd:'+_0xb8b81c,{'channelId':_0xb8b81c,'session':_0x4b68d9});}['_handleSessionRemove'](_0x34e19f,_0x1c4f74){if('connected'!==this['context']['plugins']['get'](z)['state'])return;const _0x3a7b59=this['channelConnectedUsers']['get'](_0x34e19f),_0x3329a3=_0x1c4f74['user'];_0x3329a3['id']&&(this['channelSessions']['get'](_0x34e19f)['remove'](_0x1c4f74['id']),_0x3a7b59['has'](_0x3329a3['id'])&&!this['getUserSessions'](_0x3329a3,_0x34e19f)['size']&&_0x3a7b59['remove'](_0x3329a3['id']),this['allConnectedUsers']['get'](_0x3329a3['id'])&&!this['getUserSessions'](_0x3329a3)['size']&&this['allConnectedUsers']['remove'](_0x3329a3['id']));}['_createUser'](_0x29deff,_0x43dcf3){const _0x406188=this['_users']['addUser'](_0x29deff);return _0x43dcf3&&this['_users']['defineMe'](_0x29deff['id']),_0x406188['orderNumber']=this['_uniqueUsersCount']++,_0x406188;}}class K extends _0x281793{['_domEmitter']=new(_0x28dffe())();static get['requires'](){return[Y];}static get['pluginName'](){return'UserMarkers';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['init'](){const _0x1f88ab=this['editor'],_0x49fdc1=_0x1f88ab['plugins']['get'](Y);_0x1f88ab['conversion']['for']('editingDowncast')['markerToElement']({'model':'user:position','view':(_0x400c98,{writer:_0xa30bbb})=>function(_0x135134,_0x5d0d28,_0x2f0178,_0x635826){const _0x2a3738=_0x135134['markerName']['split'](':')[0x2],_0x431733=_0x2f0178['getUserBySessionId'](_0x2a3738);if(!_0x431733||_0x2a3738===_0x2f0178['mySessionId'])return;if(!_0x635826['model']['schema']['checkChild'](_0x135134['markerRange']['start'],'$text'))return;const _0x23785c={'class':'ck-user__marker\x20'+_0x431733['color']['getMarkerClass'](),'style':Q(_0x431733),'data-name':_0x431733['name'],'data-session-id':_0x2a3738},_0x146be4=_0x635826['model']['markers']['get'](_0x135134['markerName']),_0x3069e2=_0x146be4['getStart'](),_0x132e37=_0x3069e2['nodeAfter'],_0x329f6f=_0x635826['model']['schema'];if(_0x132e37&&_0x329f6f['isObject'](_0x132e37)&&_0x329f6f['isInline'](_0x132e37)&&!_0x635826['model']['markers']['get']('user:range:'+_0x2a3738)['getRange']()['isCollapsed'])return;const _0x16a870=_0x3069e2['parent'];return _0x635826['model']['schema']['isLimit'](_0x16a870)&&!_0x635826['model']['hasContent'](_0x16a870)&&(_0x23785c['contenteditable']=!0x1),function(_0x887a11,_0x108de1,_0x5b88b7){const _0x45df7a=_0x887a11['createUIElement']('span',_0x108de1);return _0x887a11['setCustomProperty']('userPositionMarker',!0x0,_0x45df7a),_0x45df7a['render']=function(_0x110c7a){const _0x47e37c=this['toDomElement'](_0x110c7a),_0x262b4c=document['createElement']('span');return _0x262b4c['classList']['add']('ck-user__marker-tooltip'),_0x262b4c['setAttribute']('contenteditable','false'),_0x262b4c['setAttribute']('spellcheck','false'),_0x262b4c['textContent']=_0x5b88b7['name'],_0x47e37c['innerHTML']='<span\x20class=\x22ck-user__marker-line\x22\x20contenteditable=\x22false\x22><span\x20class=\x22ck-user__marker-dot\x22></span></span>'+_0x262b4c['outerHTML']+'',_0x47e37c['addEventListener']('mouseenter',()=>{_0x47e37c['classList']['add']('ck-user__marker_hovered');}),_0x47e37c['addEventListener']('mouseleave',()=>{_0x47e37c['classList']['remove']('ck-user__marker_hovered');}),_0x47e37c;},_0x45df7a['isSimilar']=function(_0x5add46){return!(!this['getCustomProperty']('userPositionMarker')||!_0x5add46['getCustomProperty']('userPositionMarker')||this['getAttribute']('data-session-id')!=_0x5add46['getAttribute']('data-session-id'));},_0x45df7a;}(_0x5d0d28,_0x23785c,_0x431733);}(_0x400c98,_0xa30bbb,_0x49fdc1,_0x1f88ab)}),_0x1f88ab['conversion']['for']('editingDowncast')['markerToHighlight']({'model':'user:range','view':_0x546475=>function(_0x2241ca,_0x4f827b){const _0x438d2f=_0x2241ca['markerName']['split'](':')[0x2];if(_0x438d2f===_0x4f827b['mySessionId'])return null;const _0x21c718=_0x4f827b['getUserBySessionId'](_0x438d2f);if(!_0x21c718)return{'id':_0x438d2f,'classes':[]};return{'id':_0x438d2f,'classes':['ck-user__selection',_0x21c718['color']['getSelectionClass']()],'attributes':{'style':Q(_0x21c718),'data-session-id':_0x438d2f},'priority':0x7d0+_0x21c718['orderNumber']};}(_0x546475,_0x49fdc1)}),function(_0x3ed81d){const _0x27362e=_0x3ed81d['model'],_0x18fa98=new Map(),_0x35e73a=_0x3ed81d['plugins']['get'](Y);_0x27362e['markers']['on']('update:user:range',(_0x2a976f,_0x4615b7,_0x5d2f9f,_0x546039)=>{if(!_0x546039&&_0x18fa98['get'](_0x4615b7['name']))return _0x18fa98['get'](_0x4615b7['name'])['detach'](),void _0x18fa98['delete'](_0x4615b7['name']);const _0x384521=_0x4615b7['name']['split'](':')[0x2];if(_0x384521===_0x35e73a['mySessionId'])return;const _0x5f26ab='user:position:'+_0x384521;_0x27362e['markers']['has'](_0x5f26ab)&&_0x3ed81d['editing']['reconvertMarker'](_0x5f26ab),_0x4615b7['on']('change:range',(_0x592b91,_0x409254,_0x344281)=>{if('$graveyard'!=_0x409254['root']['rootName']&&'$graveyard'==_0x4615b7['getRange']()['root']['rootName']&&!_0x18fa98['has'](_0x4615b7['name'])){const _0x4b0f3e=_0x27362e['schema']['getNearestSelectionRange'](_0x344281['deletionPosition']);if(_0x4b0f3e){const _0x214220=_0x2c3be1['fromRange'](_0x4b0f3e);_0x18fa98['set'](_0x4615b7['name'],_0x214220),_0x214220['on']('change:range',(_0x44708b,_0xdbb591,_0x213c0c)=>{if('$graveyard'==_0x214220['root']['rootName']){const _0x4ae024=_0x27362e['schema']['getNearestSelectionRange'](_0x213c0c['deletionPosition']);_0x4ae024?(_0x214220['start']=_0x4ae024['start'],_0x214220['end']=_0x4ae024['end']):(_0x18fa98['delete'](_0x4615b7['name']),_0x214220['detach']());}});}}});}),_0x27362e['document']['on']('change',()=>{_0x18fa98['size']>0x0&&_0x27362e['enqueueChange']({'isUndoable':!0x1},_0x9246c1=>{for(const [_0xf623c6,_0x5bc823]of _0x18fa98)'$graveyard'==_0x27362e['markers']['get'](_0xf623c6)['getRange']()['root']['rootName']&&(J(_0xf623c6['split'](':')[0x2],_0x5bc823['toRange'](),_0x27362e,_0x9246c1),_0x5bc823['detach']());_0x18fa98['clear']();});});}(_0x1f88ab),this['_domEmitter']['listenTo'](_0x28e582['document'],'keydown',(_0x3a0278,{key:_0x33678c})=>{'Escape'===_0x33678c&&function(_0x115d4b){_0x115d4b['editing']['view']['change'](_0xe4007d=>{for(const _0x365374 of _0x115d4b['model']['markers']){if(!_0x365374['name']['startsWith']('user:position'))continue;const _0x3d0267=_0x115d4b['editing']['mapper']['markerNameToElements'](_0x365374['name']);if(_0x3d0267){for(const _0x3fa9c1 of _0x3d0267)_0xe4007d['removeClass']('ck-user__marker_hovered',_0x3fa9c1);}}});}(_0x1f88ab);},{'useCapture':!0x0});}['afterInit'](){const _0x2d6ae6=this['editor'],_0x395196=_0x2d6ae6['commands']['get']('undo');_0x395196&&_0x2d6ae6['model']['on']('applyOperation',(_0x1e998c,_0x24044e)=>{const _0x1a1895=_0x24044e[0x0];if(!_0x1a1895['isDocumentOperation'])return;if('marker'!=_0x1a1895['type']||!_0x1a1895['name']['startsWith']('user:'))return;const _0x37ae92=_0x1a1895['batch'];_0x395196['_createdBatches']['has'](_0x37ae92)&&(_0x1a1895['newRange']=_0x1a1895['oldRange']?_0x2d6ae6['model']['createRange'](_0x1a1895['oldRange']['start'],_0x1a1895['oldRange']['end']):null);},{'priority':'highest'});}['destroy'](){return this['_domEmitter']['stopListening'](),super['destroy']();}['createUserMarkerOperations'](){const _0x6e288=this['editor'],_0x2115c9=_0x6e288['model']['document'],_0xd5a2f1=_0x6e288['plugins']['get'](Y);_0x6e288['model']['enqueueChange']({'isUndoable':!0x1},_0x2eb053=>{const _0x203be3='user:range:'+_0xd5a2f1['mySessionId'],_0x564ad4='user:position:'+_0xd5a2f1['mySessionId'],_0x512cfd=_0x6e288['model']['markers']['has'](_0x203be3);_0x6e288['editing']['view']['hasDomSelection']?J(_0xd5a2f1['mySessionId'],_0x2115c9['selection']['getFirstRange'](),_0x6e288['model'],_0x2eb053):_0x512cfd&&(_0x2eb053['removeMarker'](_0x203be3),_0x2eb053['removeMarker'](_0x564ad4));});}}function J(_0x2fe993,_0x14e0a4,_0x41d9cb,_0x347495){const _0x1e314d='user:range:'+_0x2fe993,_0xef5825='user:position:'+_0x2fe993,_0x23c8de=_0x14e0a4['getContainedElement']();let _0x2a848e=_0x14e0a4['start'];if(_0x23c8de&&_0x23c8de['is']('element','tableCell')){const _0x44b64f=function(_0x89feb9,_0x212f81){for(const _0x287f3f of _0x89feb9['getPositions']())if(_0x212f81['schema']['checkChild'](_0x287f3f,'$text'))return _0x287f3f;}(_0x14e0a4,_0x41d9cb);_0x44b64f&&(_0x2a848e=_0x44b64f,_0x14e0a4=_0x347495['createRange'](_0x2a848e));}const _0x5cb381=_0x347495['createRange'](_0x2a848e);_0x41d9cb['markers']['has'](_0x1e314d)?(_0x347495['updateMarker'](_0x1e314d,{'range':_0x14e0a4}),_0x347495['updateMarker'](_0xef5825,{'range':_0x5cb381})):(_0x347495['addMarker'](_0x1e314d,{'range':_0x14e0a4,'usingOperation':!0x0}),_0x347495['addMarker'](_0xef5825,{'range':_0x5cb381,'usingOperation':!0x0}));}function Q(_0x28cac3){return'--ck-user-color:'+_0x28cac3['color']['getColorVariable']()+';--ck-user-color-alpha:'+_0x28cac3['color']['getColorAlphaVariable']()+';';}function X(_0x232819,_0x1dd0c1,_0x2ae089){const _0x586495=_0x232819['t'],t=_0x232819['t'];switch(_0x1dd0c1){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 _0x586495({'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'},_0x2ae089);default:return'';}}let Z=0x1;class tt extends _0x281793{static ['CollaborativeEditingService']=/* #__PURE__ -- @preserve */
|
|
25
|
+
((()=>_0x296a21)());['_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,_0x5e8c5f,_0x4c102a,_0x516d46];}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 _0x24358b=this['serverHistory']['getOperations']();for(let _0x223bd1=_0x24358b['length']-0x1;_0x223bd1>=0x0;_0x223bd1--){const _0x2d6e4a=_0x24358b[_0x223bd1];if(!this['_disconnectionOperations']['has'](_0x2d6e4a))return _0x2d6e4a['baseVersion']+0x1-this['_offset'];}return 0x0;}constructor(_0xa70e3f){if(super(_0xa70e3f),this['_offset']=0x0,this['sessionId']=null,this['serverHistory']=new _0x28c39a(),this['editor']['config']['define']('collaboration',{}),this['_channelId']=this['editor']['config']['get']('collaboration.channelId'),!this['_channelId'])throw new _0xe32300('collaboration-missing-channelid',this);const _0x4d3805=_0xa70e3f['config']['get']('cloudServices.bundleVersion')||_0x5909bb;this['_service']=new tt['CollaborativeEditingService'](_0x4d3805,this['_channelId']),this['_document']=this['editor']['model']['document'],this['_compressor']=new _0x3150b1(),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 _0x593cf1=this['editor'],_0x510c1c=_0x593cf1['plugins']['get'](_0x4c102a),_0x19dca9=_0x593cf1['plugins']['get'](z);this['listenTo'](_0x510c1c,'getOperationAuthor',(_0x619091,_0x5ed097)=>{const _0xe1e939=_0x5ed097[0x0];_0xe1e939['_authorId']&&(_0x619091['return']=_0x510c1c['getUser'](_0xe1e939['_authorId']),_0x619091['stop']()),null===_0xe1e939['_authorId']&&(_0x619091['return']=null,_0x619091['stop']());},{'priority':'high'}),this['listenTo'](_0x593cf1['model']['document']['selection'],'change:range',(_0x3119d6,_0x8439d8)=>{_0x8439d8['directChange']&&this['_refreshUserSelectionMarkers']();}),this['listenTo'](_0x593cf1['editing']['view'],'change:hasDomSelection',()=>{this['_refreshUserSelectionMarkers']();}),this['_initThrowingOnDataSet'](),_0x593cf1['model']['on']('applyOperation',(_0x4288f9,_0x9887fb)=>{const _0xdcc168=_0x9887fb[0x0];_0xdcc168['isDocumentOperation']&&(this['_saveOperationInBuffer'](_0xdcc168),this['_shouldSendUpdate']()&&this['_sendBufferedOperationsDelayed']());}),this['_setUpDataInit'](),this['bind']('_isEditingAllowed')['to'](_0x19dca9,'state',this,'_hasSynchronizationProblem',(_0x530923,_0x41c86e)=>'connected'===_0x530923&&!_0x41c86e),this['on']('change:_isEditingAllowed',()=>{this['_isEditingAllowed']?_0x593cf1['disableReadOnlyMode']('rtc-offline'):_0x593cf1['enableReadOnlyMode']('rtc-offline');}),this['_isEditingAllowed']?_0x593cf1['disableReadOnlyMode']('rtc-offline'):_0x593cf1['enableReadOnlyMode']('rtc-offline'),this['set']('_isConnected',!0x1);}async['reconnect'](){const _0x16ff7c=this['editor']['plugins']['get'](Y),_0x5d94ed=this['editor']['plugins']['get'](z);try{this['_isPendingUpdate']=!0x0,_0x16ff7c['unregister'](this['_channelId']);const _0x4d2027=await this['_service']['reconnect'](_0x5d94ed['connection'],this['lastSyncVersion']);await this['_handleReconnectionResponse'](_0x4d2027)&&(this['_isPendingUpdate']=!0x1,this['_clearPendingAction']());const _0x50ad0d=await this['_service']['getConnectedSessions']();_0x16ff7c['register'](this['_channelId'],_0x50ad0d),this['_handleSendingSelectionMarkers'](),this['_isConnected']=!0x0;}catch(_0x59ca7b){if(function(_0x274690){return'404'===_0x274690['code'];}(_0x59ca7b)&&this['sessionId'])await this['_connectAfterSessionHasBeenFlushed']();else{if(function(_0x36113c){return'409'===_0x36113c['code'];}(_0x59ca7b)){const _0x48484d=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'](_0x48484d);}else{if(!(_0x59ca7b instanceof et))throw _0x59ca7b;this['_handleReconnectionError']();}}}}['destroy'](){const _0x298ecc=this['editor']['plugins']['get'](z),_0x4af420=this['editor']['plugins']['get'](Y);this['editor']['enableReadOnlyMode']('rtc-destroyed'),_0x4af420['channelSessions']['has'](this['_channelId'])&&_0x4af420['unregister'](this['_channelId']),_0x298ecc['removeFromReconnectionStack'](this),this['_disconnectService'](),super['destroy']();}async['_handleReconnectionResponse'](_0x59e0db){if(this['sessionId']!==_0x59e0db['sessionId']&&this['_lastSyncedOperationId']!==_0x59e0db['lastOperationId'])throw new et();return this['sessionId']=_0x59e0db['sessionId'],this['_handleServerResponse']([],{..._0x59e0db,'wereChangesApplied':!0x1,'data':_0x59e0db['data']},'reconnect');}async['_connectService'](_0x48e3bb,_0x2bafa7=!0x1){const {connection:_0x586cd5}=this['editor']['plugins']['get'](z);tt['CollaborativeEditingService']['getConnectedSessions'](_0x586cd5,this['_channelId'])['then'](_0xd518ab=>this['_initSessionsHandling'](_0xd518ab))['catch'](_0xb5d3ea=>{this['_crash']('realtimecollaborationclient-init-session-connection-error',_0xb5d3ea);}),this['listenTo'](this['_service'],'operationsReceived',this['_handleReceivedOperations']['bind'](this)),this['listenTo'](this['_service'],'error',(_0x230ec7,_0x50c7e4)=>{this['_crash']('realtimecollaborationclient-init-service-internal-error',_0x50c7e4);}),this['listenTo'](this['_service'],'disconnected',()=>{this['_isConnected']=!0x1;});const _0x13b551=this['_operationIdentifier']['getIdOfTheLastOperation'](_0x48e3bb);this['_isPendingUpdate']=!0x0;const _0x59c85d=await this['_service']['connect'](_0x586cd5,this['_compressOperations'](_0x48e3bb),_0x13b551);if(this['sessionId']=_0x59c85d['sessionId'],_0x2bafa7){if(!_0x59c85d['wereChangesApplied'])return void this['_handleReconnectionError']();this['_isPendingUpdate']=!0x1,this['_clearPendingAction'](),this['serverHistory']['reset'](),this['_offset']=_0x59c85d['offset'],this['serverHistory']['version']=this['_offset'],await this['_handleServerResponse'](_0x48e3bb,_0x59c85d,'reconnection:\x20flushed\x20session');}else await this['_handleInitialConnectionData'](_0x59c85d,_0x48e3bb);this['_handleSendingSelectionMarkers'](),this['_isConnected']=!0x0;}['_handleSendingSelectionMarkers'](){const _0xc48654=this['editor']['plugins']['get'](Y),_0x45b07d=this['editor']['plugins']['get'](K),_0x4c1f56=_0xc48654['channelSessions']['get'](this['_channelId']);_0x4c1f56&&_0x4c1f56['length']>0x1?_0x45b07d['createUserMarkerOperations']():this['listenTo'](_0xc48654,'sessionAdd:'+this['_channelId'],()=>{0x2===_0xc48654['channelSessions']['get'](this['_channelId'])['length']&&_0x45b07d['createUserMarkerOperations']();});}async['_handleReceivedOperations'](_0x539aa3,_0x29bb7e,_0x1d0d0b,_0x5d5fc7){if(!this['_isPendingUpdate']&&this['_document']['version']==_0x29bb7e){const _0x28fbc8=this['_decompressOperations'](_0x1d0d0b,_0x5d5fc7);await this['_fetchMissingUsers'](_0x28fbc8),this['_handleExternalOperations'](_0x28fbc8,_0x29bb7e,_0x1d0d0b['lastOperationId'])||this['_crash']('realtimecollaborationclient-init-service-incorrect-server-operation');}}async['_connectAfterSessionHasBeenFlushed'](){this['_disconnectService']();const {locale:_0x282e26}=this['editor'];let _0x3a5b2d;try{_0x3a5b2d=await this['_service']['getDocumentDetails']();}catch{const _0x2d1987=X(_0x282e26,'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'](_0x2d1987);}const _0x2c88d2=_0x3a5b2d['currentDocumentSession']||_0x3a5b2d['lastDocumentSession'];if(this['_lastSyncedOperationId']!==_0x2c88d2['lastOperationId']){const _0x410b96=X(_0x282e26,'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'](_0x410b96);}await this['_connectService'](this['editor']['model']['document']['history']['getOperations'](),!0x0);}['_disconnectService'](){this['_service']['disconnect'](),this['_bufferedOperations']=[],clearTimeout(this['_sendBufferedOperationsDelayId']),this['stopListening'](this['_service']);}['_initSessionsHandling'](_0x307c59){const _0x12bba9=this['editor']['plugins']['get'](Y);this['listenTo'](_0x12bba9,'sessionAdd:'+this['_channelId'],(_0x43a05a,{session:_0x51a003})=>{if(_0x51a003['id']===_0x12bba9['mySessionId']){_0x43a05a['off']();const _0x28d616=this['editor']['plugins']['has']('CommentsOnly')&&this['editor']['plugins']['get']('CommentsOnly');let _0x1291a0=_0x51a003['permissions'];_0x28d616&&_0x28d616['isEnabled']&&(_0x1291a0=_0x1291a0['filter'](_0x410ac9=>'document:write'!==_0x410ac9)),this['editor']['plugins']['get']('Permissions')['setPermissions'](_0x1291a0,this['_channelId']);}}),_0x12bba9['register'](this['_channelId'],_0x307c59);}['_initThrowingOnDataSet'](){const _0x4ccd21=this['editor']['data']['set'];this['editor']['data']['set']=(..._0x5a61ae)=>{if(!_0x5a61ae[_0x5a61ae['length']-0x1]['suppressErrorInCollaboration'])throw new _0xe32300('realtimecollaborationclient-editor-setdata-and-editor-data-set-are-forbidden-in-real-time-collaboration',this);_0x4ccd21['apply'](this['editor']['data'],_0x5a61ae);};}['_setUpDataInit'](){this['editor']['data']['on']('init',(_0x410cd2,[_0x320471])=>{if(this['_document']['version'])throw new _0xe32300('realtimecollaborationclient-init-document-already-initialized',this);_0x410cd2['stop'](),this['_setPendingAction']();const _0x4f9f15=Object['fromEntries'](Object['entries'](this['editor']['config']['get']('roots')||{})['filter'](([,_0x456312])=>!_0x456312['lazyLoad'])['map'](([_0x3237f3,_0x2ec41c])=>[_0x3237f3,_0x2ec41c['modelAttributes']||{}])),_0x2556f2=this['_getOperationsFromInitData'](_0x320471,_0x4f9f15);0x0==_0x2556f2['length']&&_0x2556f2['push'](new _0x270f4f(0x0)),_0x410cd2['return']=this['_connectService'](_0x2556f2)['then'](()=>{this['editor']['plugins']['get'](z)['addToReconnectionStack'](this),this['editor']['data']['fire']('ready');})['catch'](_0xef8ebe=>this['_crash']('realtimecollaborationclient-init-connection-failed',_0xef8ebe))['finally'](()=>this['_clearPendingAction']());},{'priority':'high'}),this['editor']['on']('loadRoot',async(_0x527f90,[_0x53d849,_0x5a6af9])=>{_0x527f90['stop']();const _0x4871ae=this['editor']['model']['document']['getRoot'](_0x53d849);if(!this['_knownRootNames']['has'](_0x53d849)){const _0xfd0f76=_0x5a6af9&&_0x5a6af9['data']?_0x5a6af9['data']:'',_0x2f653c=_0x5a6af9&&_0x5a6af9['attributes']?_0x5a6af9['attributes']:{};await this['_loadRoot'](_0x53d849,_0xfd0f76,_0x2f653c);}this['editor']['model']['enqueueChange']({'isUndoable':!0x1},()=>{_0x4871ae['_isLoaded']=!0x0,this['editor']['model']['document']['differ']['_bufferRootLoad'](_0x4871ae);});},{'priority':'high'});}async['_fetchMissingUsers'](_0x31b212){const _0x344f1a=this['editor']['plugins']['get'](_0x4c102a),{connection:_0x21400a}=this['editor']['plugins']['get'](z),_0x51aa15=new Set();for(const _0x476f67 of _0x31b212){const _0x144cd9=_0x476f67['_authorId'];_0x144cd9&&!_0x344f1a['getUser'](_0x144cd9)&&_0x51aa15['add'](_0x144cd9);}if(0x0===_0x51aa15['size'])return;const _0x362fe1=await _0x381d6e['getMany'](_0x21400a,Array['from'](_0x51aa15));for(const _0x469ec0 of _0x362fe1)_0x344f1a['getUser'](_0x469ec0['id'])||_0x344f1a['addUser'](_0x469ec0);}['_getOperationsFromInitData'](_0xc1777a,_0x22c2a6={}){const _0x3a9dd5=this['editor']['model'],_0x1acfc0=[];let _0x28285c=0x0;const _0x58c28a='string'==typeof _0xc1777a?{'main':_0xc1777a}:_0xc1777a;for(const _0x2985c7 of Object['keys'](_0x58c28a)){if(!this['_document']['roots']['has'](_0x2985c7))throw new _0xe32300('realtimecollaborationclient-init-non-existent-root',this);const _0x1da57d=this['editor']['data']['parse'](_0x58c28a[_0x2985c7]),_0x41a2a2=this['_document']['getRoot'](_0x2985c7),_0x3ce651=new _0x570df8(_0x3a9dd5['createPositionAt'](_0x41a2a2,0x0),_0x1da57d,_0x28285c++);_0x1acfc0['push'](_0x3ce651);for(const [_0xc4f590,_0x4d3994]of _0x1da57d['markers']){const _0x32c222=_0x3a9dd5['createRange'](_0x3a9dd5['createPositionFromPath'](_0x41a2a2,_0x4d3994['start']['path']['slice']()),_0x3a9dd5['createPositionFromPath'](_0x41a2a2,_0x4d3994['end']['path']['slice']())),_0x21f08f=new _0x191477(_0xc4f590,null,_0x32c222,_0x3a9dd5['markers'],!0x0,_0x28285c++);_0x1acfc0['push'](_0x21f08f);}}if(_0x22c2a6)for(const [_0x4db17d,_0x364ad9]of Object['entries'](_0x22c2a6)){const _0xf02fd2=_0x3a9dd5['document']['getRoot'](_0x4db17d);if(!_0xf02fd2)throw new _0xe32300('multi-root-editor-root-attributes-no-root',null);for(const [_0x2d164,_0x133933]of Object['entries'](_0x364ad9))if(null!==_0x133933){const _0x525a08=new _0x37805c(_0xf02fd2,_0x2d164,null,_0x133933,_0x28285c++);_0x1acfc0['push'](_0x525a08);}}return _0x1acfc0;}async['_loadRoot'](_0x168bfe,_0x2813fd,_0x3be367){this['_getOperationsFromInitData']({[_0x168bfe]:_0x2813fd},{[_0x168bfe]:_0x3be367})['forEach']((_0x5bb41f,_0x1fa2ed)=>{_0x5bb41f['baseVersion']=this['_document']['version']+_0x1fa2ed,_0x5bb41f['_isInit']=!0x0,this['_saveOperationInBuffer'](_0x5bb41f);}),this['_sendBufferedOperationsDelayed'](),await this['_waitUntilSynced']();}async['_handleInitialConnectionData'](_0x559f84,_0x187697){let _0x152c86;this['_offset']=_0x559f84['offset'];const _0x4a6b19=_0x559f84['wereChangesApplied']&&!_0x559f84['initData'],_0x41d0bf=_0x4a6b19?0x0:_0x559f84['data']['baseVersion'];if(_0x187697['forEach'](_0x2d4576=>{_0x2d4576['_isInit']=!0x0,_0x2d4576['createdAt']=_0x559f84['sessionCreatedAt'],_0x2d4576['_authorId']=null;}),_0x4a6b19)_0x152c86=_0x187697,this['_applyOperationsSet'](_0x152c86,_0x4a6b19);else{if(_0x559f84['initData']){const _0x4c4a7e=this['_getOperationsFromInitData'](_0x559f84['initData']);this['_document']['history']['version']=-_0x4c4a7e['length'],_0x4c4a7e['forEach'](_0x341ed4=>{_0x341ed4['baseVersion']-=_0x4c4a7e['length'],_0x341ed4['createdAt']=_0x559f84['sessionCreatedAt'],_0x341ed4['_isInit']=!0x0,_0x341ed4['_authorId']=null;}),this['_applyOperationsSet'](_0x4c4a7e,!0x0),this['serverHistory']['version']=-_0x4c4a7e['length']+this['_offset'],this['_updateServerHistory'](_0x4c4a7e);}this['_document']['history']['version']=_0x41d0bf,_0x152c86=this['_decompressOperations'](_0x559f84['data'],_0x559f84['metadata']),await this['_fetchMissingUsers'](_0x152c86),this['_applyOperationsSet'](_0x152c86,_0x4a6b19);}_0x559f84['lastOperationId']&&(this['_operationIdentifier']['setIdForTheLastOperation'](_0x152c86,_0x559f84['lastOperationId']),this['_lastSyncedOperationId']=_0x559f84['lastOperationId']),this['serverHistory']['version']=_0x41d0bf+this['_offset'],this['_updateServerHistory'](_0x152c86),_0x187697['filter'](_0x2744a6=>{const _0x20e5d7=this['_getAffectedRoot'](_0x2744a6);return _0x20e5d7&&!this['_knownRootNames']['has'](_0x20e5d7);})['forEach']((_0x1d00d0,_0x470a89)=>{_0x1d00d0['baseVersion']=this['_document']['version']+_0x470a89,this['_saveOperationInBuffer'](_0x1d00d0);}),this['_shouldSendUpdate']()?(this['_currentBufferDelay']=0x0,this['_sendBufferedOperationsDelayed'](!0x0),await this['_waitUntilSynced']()):(this['_isPendingUpdate']=!0x1,this['_clearPendingAction']());}['_crash'](_0x226ccc,_0x5e6157){const _0x23ee6b=_0x5e6157&&_0x5e6157['message'];if(_0x23ee6b&&_0x23ee6b['startsWith']('realtimecollaborationclient'))throw _0x5e6157;const _0x257abc=this['editor']['plugins']['get'](z);throw this['_isPendingUpdate']=!0x0,_0x257abc['disconnect'](),this['editor']['enableReadOnlyMode']('realtimecollaborationclient-error'),new _0xe32300(_0x226ccc,this['editor'],_0x23ee6b?{'originalError':_0x23ee6b}:void 0x0);}['_saveOperationInBuffer'](_0x57ec03){this['_knownOperations']['has'](_0x57ec03)||(this['_knownOperations']['add'](_0x57ec03),this['_bufferedOperations']['push'](_0x57ec03),this['_pendingAction']||'marker'==_0x57ec03['type']&&!_0x57ec03['affectsData']||this['_setPendingAction']());}['_sendBufferedOperationsDelayed'](_0x5b49c0=!0x1){!_0x5b49c0&&this['_isPendingUpdate']||(this['_isPendingUpdate']=!0x0,clearTimeout(this['_sendBufferedOperationsDelayId']),this['_sendBufferedOperationsDelayId']=setTimeout(()=>{this['_sendBufferedOperations']()['then'](_0xbf1abf=>{_0xbf1abf&&(this['_clearPendingAction'](),this['_isPendingUpdate']=!0x1);})['catch'](_0x5f0a28=>{this['_clearPendingAction'](),this['_isPendingUpdate']=!0x1,function(_0x2558af){return _0x2558af['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x2558af['message']['startsWith']('cloud-services-internal-error:\x20Collaborative\x20Editing\x20Service\x20is\x20not\x20connected.')||_0x2558af['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}(_0x5f0a28)||this['_crash'](_0x5f0a28['message'],_0x5f0a28);});},this['_currentBufferDelay']));}['_waitUntilSynced'](){return new Promise(_0x26d595=>{this['on']('change:_isPendingUpdate',()=>{_0x26d595();});});}async['_sendBufferedOperations'](){const _0x2750a5=this['editor']['plugins']['get'](K);if(this['_shouldSendSelectionUpdate']()&&(_0x2750a5['createUserMarkerOperations'](),this['_hasSelectionChanged']=!0x1),!this['_shouldSendUpdate']())return!0x0;const _0x265e6f=[...this['_bufferedOperations']];for(const _0x2b8bf5 of _0x265e6f)_0x2b8bf5['wasUndone']=this['_document']['history']['isUndoneOperation'](_0x2b8bf5);const _0x3aae54=this['_operationIdentifier']['getIdOfTheLastOperation'](_0x265e6f),_0x490ff4=Z++,_0x4130a8=this['_compressOperations'](_0x265e6f),_0x4b65bb=await this['_service']['sendOperations'](_0x4130a8,_0x4130a8['baseVersion'],_0x3aae54);try{return await this['_handleServerResponse'](_0x265e6f,_0x4b65bb,_0x490ff4);}catch(_0xd3a286){return this['_crash']('realtimecollaborationclient-sendbufferedoperations',_0xd3a286);}}async['_handleServerResponse'](_0x40f905,_0x2d7609,_0x105607){if('error'in _0x2d7609)throw _0x2d7609['error'];let _0x283576=!0x1;if(_0x2d7609['wereChangesApplied']){_0x2d7609['lastOperationId']&&(this['_lastSyncedOperationId']=_0x2d7609['lastOperationId']),this['_bufferedOperations']=this['_bufferedOperations']['filter'](_0x583128=>!_0x40f905['includes'](_0x583128));for(const _0x4ca1e4 of _0x40f905)_0x4ca1e4['createdAt']='lastOperationAcceptedAt'in _0x2d7609&&_0x2d7609['lastOperationAcceptedAt']||void 0x0;st(_0x40f905,_0x2d7609['version']-_0x40f905['length']),this['_updateServerHistory'](_0x40f905);const _0x58ea54=_0x40f905['filter'](_0x101873=>{if(!_0x101873['_isInit'])return!0x1;const _0x59da68=this['_getAffectedRoot'](_0x101873);return _0x59da68&&!this['_knownRootNames']['has'](_0x59da68);});st(_0x58ea54,this['_document']['version']),this['_applyOperationsSet'](_0x58ea54),_0x283576=!0x0,this['_currentBufferDelay']=this['_baseBufferDelay'];}else{const _0x171707=this['_decompressOperations'](_0x2d7609['data'],_0x2d7609['metadata'])['filter'](_0x36302a=>_0x36302a['baseVersion']>=this['_lastServerVersion']);_0x171707['forEach'](_0xe5dfd1=>this['_addKnownRoot'](_0xe5dfd1)),this['_bufferedOperations']=this['_bufferedOperations']['filter'](_0x546edc=>!_0x546edc['_isInit']||!this['_knownRootNames']['has'](this['_getAffectedRoot'](_0x546edc))),this['_bufferedOperations']['length']&&st(this['_bufferedOperations'],this['_bufferedOperations'][0x0]['baseVersion']),await this['_fetchMissingUsers'](_0x171707),_0x283576=this['_handleExternalOperations'](_0x171707,_0x2d7609['version'],_0x2d7609['lastOperationId']),this['_currentBufferDelay']=Math['round'](this['_currentBufferDelay']/0x2);}return _0x283576?!this['_shouldSendUpdate']()||(this['_sendBufferedOperationsDelayed'](!0x0),!0x1):this['_crash']('realtimecollaborationclient-handleserverresponse');}['_handleExternalOperations'](_0x41eb8c,_0x5cb972,_0xe7236a){try{const _0x5c0e29={'document':this['_document'],'useRelations':!0x1,'padWithNoOps':!0x0},{operationsA:_0x2a8cb0,operationsB:_0x449961,originalOperations:_0x26f3c6}=_0x704f48(_0x41eb8c,this['_bufferedOperations'],_0x5c0e29);st(_0x2a8cb0,this['_document']['version']),st(_0x449961,_0x5cb972);for(const _0x2ce8a9 of _0x2a8cb0){const _0x4d7c19=_0x26f3c6['get'](_0x2ce8a9);_0x2ce8a9['_authorId']=_0x4d7c19?_0x4d7c19['_authorId']:null;}_0xe7236a&&(this['_operationIdentifier']['setIdForTheLastOperation'](_0x41eb8c,_0xe7236a),this['_lastSyncedOperationId']=_0xe7236a),this['_bufferedOperations']=[..._0x449961],this['_applyOperationsSet'](_0x2a8cb0),this['_updateServerHistory'](_0x41eb8c);}catch(_0x530fad){return console['error'](_0x530fad),!0x1;}return!0x0;}['_applyOperationsSet'](_0x235348,_0x976b55=!0x1){this['editor']['model']['enqueueChange']({'isUndoable':!0x1,'isLocal':!0x1},_0x50bfd7=>{for(const _0x3989cb of _0x235348)this['_knownOperations']['add'](_0x3989cb),this['_addKnownRoot'](_0x3989cb),_0x50bfd7['batch']['addOperation'](_0x3989cb),this['editor']['model']['applyOperation'](_0x3989cb);});}['_addKnownRoot'](_0x545069){const _0x211d16=this['_getAffectedRoot'](_0x545069);_0x211d16&&this['_knownRootNames']['add'](_0x211d16);}['_getAffectedRoot'](_0x2f69bc){let _0x31ae32,_0x4ce046;switch(_0x2f69bc['type']){case'insert':_0x31ae32=_0x2f69bc['position']['root'];break;case'marker':if(_0x4ce046=_0x2f69bc['newRange'],!_0x4ce046)return null;_0x31ae32=_0x4ce046['root'];break;case'addRootAttribute':_0x31ae32=_0x2f69bc['root'];break;case'addRoot':_0x31ae32=_0x2f69bc['affectedSelectable'];break;case'move':_0x31ae32=_0x2f69bc['targetPosition']['root'];break;default:return null;}return _0x31ae32['rootName'];}['_updateServerHistory'](_0x4e3399){_0x4e3399['forEach'](_0x3b3bea=>{const _0x40e770=_0x3b3bea['clone']();_0x40e770['_authorId']=_0x3b3bea['_authorId'],_0x40e770['_isInit']=!!_0x3b3bea['_isInit'],_0x40e770['createdAt']=_0x3b3bea['createdAt'],_0x40e770['baseVersion']+=this['_offset'],_0x3b3bea['_isDisconnection']&&this['_disconnectionOperations']['add'](_0x40e770),this['serverHistory']['addOperation'](_0x40e770);});}['_handleReconnectionError'](_0x114631){const _0x4f4c21=this['editor']['plugins']['get']('Notification'),_0x395985=this['editor']['locale'];_0x114631||(_0x114631=X(_0x395985,'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.')),_0x4f4c21['showWarning'](_0x114631,{'title':X(_0x395985,'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'](_0x5e8c5f)['add'](X(this['editor']['locale'],'PENDING_ACTION_SENDING_DATA')));}['_clearPendingAction'](){this['_pendingAction']&&(this['editor']['plugins']['get'](_0x5e8c5f)['remove'](this['_pendingAction']),this['_pendingAction']=null);}['_compressOperations'](_0x49914b){const _0x5a8498=_0x49914b['map'](_0x563aec=>_0x563aec['toJSON']());return this['_compressor']['compress'](_0x5a8498);}['_decompressOperations'](_0x25e0ca,_0x37b01f){return this['_compressor']['decompress'](_0x25e0ca)['map']((_0x1a80a3,_0x4aa49b)=>{const _0xcb57a2='init'==_0x37b01f[_0x4aa49b]['type'];if('InsertOperation'==_0x1a80a3['__className']){const _0x15b7d4=_0x1a80a3['position']['root'];!this['_document']['getRoot'](_0x15b7d4)&&(this['_document']['createRoot']('$root',_0x15b7d4)['_isAttached']=!0x1);}const _0x589a83=_0xf2f158['fromJSON'](_0x1a80a3,this['_document']);return _0x589a83['wasUndone']=_0x1a80a3['wasUndone'],_0x589a83['_isInit']=_0xcb57a2,_0x589a83['_authorId']=_0xcb57a2?null:_0x37b01f[_0x4aa49b]['userId'],_0x589a83['_isDisconnection']='cs:removeUser'===_0x37b01f[_0x4aa49b]['type'],_0x589a83['createdAt']=_0x37b01f[_0x4aa49b]['createdAt'],_0x589a83;});}['_refreshUserSelectionMarkers'](){this['_hasSelectionChanged']=!0x0,this['_shouldSendSelectionUpdate']()?this['_sendBufferedOperationsDelayed']():this['_hasSelectionChanged']=!0x1;}['_shouldSendSelectionUpdate'](){const _0x946976=this['editor']['plugins']['get'](Y)['channelSessions']['get'](this['_channelId']);return!this['editor']['isReadOnly']&&!!_0x946976&&_0x946976['length']>0x1&&this['_hasSelectionChanged'];}['_shouldSendUpdate'](){return this['_bufferedOperations']['length']>0x0||this['_shouldSendSelectionUpdate']();}}class et extends Error{}function st(_0x402d66,_0x337bfc){for(const _0x53579b of _0x402d66)_0x53579b['baseVersion']=_0x337bfc++;}class it{['_ignoredOperations'];['_operationToId'];constructor(_0x19d132){this['_ignoredOperations']=_0x19d132,this['_operationToId']=new WeakMap();}['getIdOfTheLastOperation'](_0x4478a0){let _0x45bf7b=_0x4478a0['length'];for(;_0x45bf7b--;){const _0x4220e1=_0x4478a0[_0x45bf7b];if(!this['_ignoredOperations']['has'](_0x4220e1)){if(!this['_operationToId']['has'](_0x4220e1)){const _0x984ee9=_0x494522()['slice'](0x1,0x12);this['_operationToId']['set'](_0x4220e1,_0x984ee9);}return this['_operationToId']['get'](_0x4220e1);}}}['setIdForTheLastOperation'](_0x377fb2,_0x4481a8){if(!_0x4481a8)return;let _0x18255c=_0x377fb2['length'];for(;_0x18255c--;){const _0x4c23f2=_0x377fb2[_0x18255c];this['_ignoredOperations']['has'](_0x4c23f2)||this['_operationToId']['set'](_0x4c23f2,_0x4481a8);}}}class nt extends _0x281793{static get['requires'](){return[tt];}static get['pluginName'](){return'RealTimeCollaborativeEditing';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}class ot extends _0xef80a1{static ['CommentsService']=/* #__PURE__ -- @preserve */
|
|
26
|
+
((()=>_0x79be79)());['_services'];static get['requires'](){return[z,_0x5be5e5,Y,_0x4c102a];}static get['pluginName'](){return'CloudServicesCommentsAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x315847){super(_0x315847),this['_services']=new Map();}async['init'](){const _0x114fc6=this['context'],_0x4cf224=_0x114fc6['plugins']['get'](_0x5be5e5);if(_0x114fc6['plugins']['get'](z)['addToReconnectionStack'](this),_0x4cf224['adapter']={'addCommentThread':async({channelId:_0x2d1d60,threadId:_0x34e003,comments:_0x11c99a,resolvedAt:_0x283ac7,resolvedBy:_0x5c02a,context:_0x15c445,attributes:_0x1b5809})=>{const _0x2d0cc0=await this['_getService'](_0x2d1d60)['addCommentThread']({'commentThreadId':_0x34e003,'comments':_0x11c99a['map'](_0x21f76c=>function(_0x252588,_0x5ec92d,_0x37f98e){return{'commentThreadId':_0x37f98e,'commentId':_0x252588['commentId'],'userId':_0x252588['authorId'],'content':_0x252588['content'],'documentId':_0x5ec92d,'createdAt':_0x252588['createdAt'],'attributes':_0x252588['attributes']||{}};}(_0x21f76c,_0x2d1d60,_0x34e003)),'resolvedAt':_0x283ac7,'resolvedBy':_0x5c02a,'context':_0x15c445,'attributes':_0x1b5809})['catch'](ct);return{'threadId':_0x2d0cc0['commentThreadId'],'comments':_0x2d0cc0['comments']};},'getCommentThread':async({channelId:_0x4c85c8,threadId:_0x25e721})=>{const _0x16142c=await this['_getService'](_0x4c85c8)['getCommentThread'](_0x25e721)['catch'](rt)['catch'](ct);return _0x16142c?_0x16142c['deletedAt']?null:(await this['_fetchMissingUsersForThreads']([_0x16142c]),{'threadId':_0x16142c['commentThreadId'],'comments':_0x16142c['comments']['map'](at),'context':_0x16142c['context'],'resolvedAt':_0x16142c['resolvedAt'],'resolvedBy':_0x16142c['resolvedBy'],'attributes':_0x16142c['attributes']||{}}):null;},'updateCommentThread':async({channelId:_0x5aee4,threadId:_0x2a9109,context:_0x52faba,unlinkedAt:_0x16133d,attributes:_0x3ca8f9})=>this['_getService'](_0x5aee4)['updateCommentThread']({'commentThreadId':_0x2a9109,'context':_0x52faba,'attributes':_0x3ca8f9,'unlinkedAt':_0x16133d})['catch'](rt)['catch'](ct),'resolveCommentThread':async({channelId:_0x1ba3fb,threadId:_0x53cd89})=>{const _0x2b44b2=await this['_getService'](_0x1ba3fb)['resolveCommentThread'](_0x53cd89)['catch'](rt)['catch'](ct);return{'threadId':_0x2b44b2['commentThreadId'],'resolvedAt':_0x2b44b2['resolvedAt'],'resolvedBy':_0x2b44b2['resolvedBy']};},'reopenCommentThread':async({channelId:_0x864210,threadId:_0x1014af})=>this['_getService'](_0x864210)['reopenCommentThread'](_0x1014af)['catch'](rt)['catch'](ct),'removeCommentThread':({channelId:_0x3363e6,threadId:_0x570995})=>this['_getService'](_0x3363e6)['removeCommentThread'](_0x570995)['catch'](rt)['catch'](ct),'addComment':({channelId:_0x394f71,threadId:_0x2eb9d6,commentId:_0x52d4c2,content:_0x3e670c,attributes:_0x138212})=>this['_getService'](_0x394f71)['addComment'](_0x2eb9d6,_0x52d4c2,_0x3e670c,_0x138212)['catch'](ct),'updateComment':({channelId:_0x264878,threadId:_0x8a28c3,commentId:_0x1644fc,content:_0x4a4b1c,attributes:_0x406907})=>this['_getService'](_0x264878)['updateComment'](_0x8a28c3,_0x1644fc,_0x4a4b1c,_0x406907)['catch'](rt)['catch'](ct),'removeComment':({channelId:_0x2c0a10,threadId:_0x5d761b,commentId:_0x1d94fe})=>this['_getService'](_0x2c0a10)['removeComment'](_0x5d761b,_0x1d94fe)['catch'](rt)['catch'](ct)},_0x114fc6 instanceof _0x5407be){const _0x1053d3=_0x114fc6['config']['get']('collaboration.channelId'),_0x5d5f5b=_0x114fc6['plugins']['get'](Y);await this['_setUpService'](_0x1053d3);const _0x5d999f=await this['_services']['get'](_0x1053d3)['getConnectedSessions']();this['listenTo'](_0x5d5f5b,'sessionAdd:'+_0x1053d3,(_0xfb2ddf,{session:_0x517302})=>{_0x517302['id']===_0x5d5f5b['mySessionId']&&(_0xfb2ddf['off'](),this['context']['plugins']['get']('Permissions')['setPermissions'](_0x517302['permissions'],_0x1053d3));}),_0x5d5f5b['register'](_0x1053d3,_0x5d999f);}}async['_setUpService'](_0x576fe3){if(this['_services']['has'](_0x576fe3))throw new _0xe32300('cloudservicescommentsadapter-connect-already-connected',null,{'channelId':_0x576fe3});const _0x3697f8=this['context']['plugins']['get'](_0x5be5e5),_0x13e1ef=new ot['CommentsService'](_0x576fe3);this['_services']['set'](_0x576fe3,_0x13e1ef),this['listenTo'](_0x13e1ef,'commentThreadAdded',(_0xca40,_0x79c679)=>{const {commentThreadId:_0x23828d,documentId:_0x1d7849,context:_0x2f8618,attributes:_0x1dd513,resolvedAt:_0x32db7e,resolvedBy:_0x52934f,comments:_0x1c319a}=_0x79c679;_0x3697f8['getCommentThread'](_0x23828d)||_0x3697f8['addCommentThread']({'threadId':_0x23828d,'channelId':_0x1d7849,'comments':_0x1c319a?_0x1c319a['map'](at):[],'context':_0x2f8618,'attributes':_0x1dd513,'resolvedAt':_0x32db7e,'resolvedBy':_0x52934f,'isFromAdapter':!0x0});}),this['listenTo'](_0x13e1ef,'commentThreadUpdated',(_0x585ed8,{commentThreadId:_0x584e77,documentId:_0x5a9e07,context:_0x595ba4,unlinkedAt:_0xa56c15,attributes:_0x15bf31})=>{_0x3697f8['getCommentThread'](_0x584e77)&&_0x3697f8['updateCommentThread']({'threadId':_0x584e77,'channelId':_0x5a9e07,'context':_0x595ba4,'unlinkedAt':_0xa56c15,'attributes':_0x15bf31,'isFromAdapter':!0x0});}),this['listenTo'](_0x13e1ef,'commentThreadResolved',(_0x370493,{commentThreadId:_0x184db6,resolvedBy:_0x3c0fc4,resolvedAt:_0x343b0f})=>{const _0x14b2a6=_0x3697f8['getCommentThread'](_0x184db6);_0x14b2a6&&_0x14b2a6['resolve']({'resolvedBy':_0x3c0fc4,'resolvedAt':_0x343b0f,'isFromAdapter':!0x0});}),this['listenTo'](_0x13e1ef,'commentThreadReopened',(_0x2add94,{commentThreadId:_0x5165aa})=>{const _0x11b002=_0x3697f8['getCommentThread'](_0x5165aa);_0x11b002&&_0x11b002['reopen']({'isFromAdapter':!0x0});}),this['listenTo'](_0x13e1ef,'commentThreadRemoved',(_0x14ac90,{commentThreadId:_0x19f224})=>{const _0x134af1=_0x3697f8['getCommentThread'](_0x19f224);_0x134af1&&_0x134af1['remove']({'isFromAdapter':!0x0});}),this['listenTo'](_0x13e1ef,'commentAdded',(_0x5aee0f,_0x3f35fa)=>{const _0x155b1b=_0x3f35fa['commentThreadId'],_0x70837b=_0x3697f8['getCommentThread'](_0x155b1b);_0x70837b&&_0x70837b['addComment']({...at(_0x3f35fa),'isFromAdapter':!0x0});}),this['listenTo'](_0x13e1ef,'commentUpdated',(_0x3f40a7,{commentThreadId:_0x30651c,commentId:_0x2b4cca,content:_0x3fbbf0,attributes:_0x344bd})=>{const _0x34bbc4=_0x3697f8['getCommentThread'](_0x30651c);if(_0x34bbc4){const _0x31714e=_0x34bbc4['getComment'](_0x2b4cca);_0x31714e&&_0x31714e['update']({'content':_0x3fbbf0,'attributes':_0x344bd,'isFromAdapter':!0x0});}}),this['listenTo'](_0x13e1ef,'commentRemoved',(_0x2eecc1,{commentThreadId:_0xa67bd4,commentId:_0x544ec2})=>{const _0x35fec6=_0x3697f8['getCommentThread'](_0xa67bd4);if(_0x35fec6){const _0x30bd80=_0x35fec6['getComment'](_0x544ec2);_0x30bd80&&_0x30bd80['remove']({'isFromAdapter':!0x0});}}),await this['_connectService'](_0x576fe3);}['destroy'](){if(this['context']instanceof _0x5407be){const _0x17e50b=this['context']['config']['get']('collaboration.channelId');this['_terminateService'](_0x17e50b);}}['_terminateService'](_0xf5151){if(!this['_services']['has'](_0xf5151))throw new _0xe32300('cloudservicescommentsadapter-disconnect-not-exist',null,{'channelId':_0xf5151});this['_getService'](_0xf5151)['disconnect'](),this['_services']['delete'](_0xf5151);}async['reconnect'](){for(const _0x4cae68 of this['_services']['keys']())await this['_connectService'](_0x4cae68);if(this['context']instanceof _0x5407be){const _0x1289a2=this['context']['config']['get']('collaboration.channelId'),_0x21da19=this['context']['plugins']['get'](Y);_0x21da19['unregister'](_0x1289a2);const _0x330d35=await this['_services']['get'](_0x1289a2)['getConnectedSessions']();_0x21da19['register'](_0x1289a2,_0x330d35);}}async['_connectService'](_0x5aeb53){const {connection:_0x28ba69}=this['context']['plugins']['get'](z),_0x5a5681=this['context']['plugins']['get'](_0x5be5e5),_0x336038=this['_services']['get'](_0x5aeb53),_0x250de1=await _0x336038['connect'](_0x28ba69);await this['_fetchMissingUsersForThreads'](_0x250de1);const _0x483632=new Set(Array['from'](_0x5a5681['getCommentThreads']({'channelId':_0x5aeb53}),_0x5bb9b1=>_0x5bb9b1['id']));for(const _0x48a61c of _0x250de1)_0x48a61c['deletedAt']||_0x483632['delete'](_0x48a61c['commentThreadId']);for(const _0x43007c of _0x483632)_0x5a5681['getCommentThread'](_0x43007c)['remove']({'isFromAdapter':!0x0});for(const _0x632af9 of _0x250de1){let _0x38c566=_0x5a5681['getCommentThread'](_0x632af9['commentThreadId']);const {commentThreadId:_0x4490a6,context:_0x1c092e,attributes:_0x5ab3cf,resolvedBy:_0x46546a,resolvedAt:_0x3df113,unlinkedAt:_0x125eac,deletedAt:_0x39caa7}=_0x632af9;if(_0x39caa7)continue;_0x38c566||(_0x38c566=_0x5a5681['addCommentThread']({'channelId':_0x5aeb53,'threadId':_0x4490a6,'context':_0x1c092e,'attributes':_0x5ab3cf||{},'resolvedBy':_0x46546a,'resolvedAt':_0x3df113,'unlinkedAt':_0x125eac,'isFromAdapter':!0x0}));const _0x6f9c11=new Set(Array['from'](_0x38c566['comments'],_0x2fd450=>_0x2fd450['id']));for(const _0x1c1304 of _0x632af9['comments'])_0x6f9c11['delete'](_0x1c1304['commentId']);for(const _0x31f8cc of _0x6f9c11)_0x38c566['getComment'](_0x31f8cc)['remove']({'isFromAdapter':!0x0});for(const _0x2293b2 of _0x632af9['comments']){const _0x1e41d9=_0x38c566['getComment'](_0x2293b2['commentId']);_0x1e41d9?_0x1e41d9['content']!==_0x2293b2['content']&&_0x1e41d9['update']({'content':_0x2293b2['content'],'isFromAdapter':!0x0}):_0x38c566['addComment'](Object['assign'](at(_0x2293b2),{'isFromAdapter':!0x0}));}}}['_getService'](_0x4176ac){if(!this['_services']['has'](_0x4176ac))throw new _0xe32300('cloudservicescommentsadapter-service-not-exist',null,{'channelId':_0x4176ac});return this['_services']['get'](_0x4176ac);}async['_fetchMissingUsersForThreads'](_0x2ab6d5){const _0x6949bc=this['context']['plugins']['get'](_0x4c102a),{connection:_0x1c0f42}=this['context']['plugins']['get'](z),_0x3bf999=new Set();for(const {resolvedBy:_0x514cb8,comments:_0x57b70a}of _0x2ab6d5){_0x514cb8&&!_0x6949bc['getUser'](_0x514cb8)&&_0x3bf999['add'](_0x514cb8);for(const {userId:_0x16329e}of _0x57b70a)_0x6949bc['getUser'](_0x16329e)||_0x3bf999['add'](_0x16329e);}if(0x0===_0x3bf999['size'])return;const _0xdea67a=await _0x381d6e['getMany'](_0x1c0f42,Array['from'](_0x3bf999));for(const _0x3f6de9 of _0xdea67a)_0x6949bc['getUser'](_0x3f6de9['id'])||_0x6949bc['addUser'](_0x3f6de9);}}async function rt(_0x5969bd){if('404'!==_0x5969bd['code'])throw _0x5969bd;}function ct(_0x4885e0){if((_0x1ead34=_0x4885e0)['message']['startsWith']('cloud-services-internal-error:\x20Comments\x20Service\x20is\x20not\x20connected.')||_0x1ead34['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x1ead34['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.'))return new Promise(()=>{});var _0x1ead34;throw _0x4885e0;}function at(_0x35d293){return{'threadId':_0x35d293['commentThreadId'],'commentId':_0x35d293['commentId'],'content':_0x35d293['content'],'createdAt':_0x35d293['createdAt'],'authorId':_0x35d293['userId'],'attributes':_0x35d293['attributes']||{}};}class ht extends _0x281793{static ['TrackChangesService']=/* #__PURE__ -- @preserve */
|
|
27
|
+
((()=>_0x46718a)());['_bufferedRequests'];['_trackChangesService'];static get['requires'](){return[ot,_0x539b66,z];}static get['pluginName'](){return'CloudServicesTrackChangesAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x287059){super(_0x287059);const _0xd34248=this['editor']['config']['get']('collaboration.channelId');this['_bufferedRequests']=new Map(),this['_trackChangesService']=new ht['TrackChangesService'](_0xd34248);}['init'](){const _0x151b68=this['editor']['plugins']['get'](z),_0x146423=this['editor']['plugins']['get'](_0x539b66);return _0x146423['adapter']={'getSuggestion':async _0x31e13f=>{await this['_waitForServiceReady']();const _0x27a790=await this['_trackChangesService']['get'](_0x31e13f)['catch'](lt);return await this['_fetchMissingUsersForThreads']([_0x27a790]),_0x27a790;},'addSuggestion':async({id:_0x40cb19,type:_0x8ae60d,data:_0x434081,originalSuggestionId:_0x34a135,attributes:_0x3ef200})=>{await this['_waitForServiceReady']();const _0x2edbdf={'id':_0x40cb19,'type':_0x8ae60d,'data':_0x434081,'originalSuggestionId':_0x34a135,'attributes':_0x3ef200},_0x2b0c94=await this['_trackChangesService']['add'](_0x40cb19,_0x8ae60d,_0x434081,_0x34a135,_0x3ef200)['catch'](_0x5c64af=>{if(dt(_0x5c64af))return new Promise(_0x10bf5c=>{this['_bufferedRequests']['set'](_0x40cb19,{'resolve':_0x10bf5c,'suggestionData':_0x2edbdf});});throw _0x5c64af;});return this['_bufferedRequests']['delete'](_0x40cb19),_0x2b0c94;},'updateSuggestion':async(_0x429215,_0x287c8a)=>{if(await this['_waitForServiceReady'](),'open'!==_0x287c8a['state'])return this['_trackChangesService']['update'](_0x429215,_0x287c8a)['catch'](lt);}},this['listenTo'](this['_trackChangesService'],'suggestionUpdated',(_0x20d642,_0x4fcdce)=>{_0x146423['hasSuggestion'](_0x4fcdce['id'])&&(_0x146423['getSuggestion'](_0x4fcdce['id'])['attributes']=_0x4fcdce['attributes']);}),this['_trackChangesService']['connect'](_0x151b68['connection'])['then'](_0x20139e=>(_0x151b68['addToReconnectionStack'](this),this['_fetchMissingUsersForThreads'](_0x20139e)['then'](()=>{for(const _0x48a7f0 of _0x20139e){_0x146423['addSuggestionData'](_0x48a7f0)['_saved']=!0x0;}})));}async['reconnect'](){const _0xfa26b8=this['editor']['plugins']['get']('TrackChangesEditing'),{connection:_0x4b1282}=this['editor']['plugins']['get'](z),_0x59fffd=await this['_trackChangesService']['connect'](_0x4b1282);await this['_fetchMissingUsersForThreads'](_0x59fffd);for(const {suggestionData:_0x2a2d33,resolve:_0x3e1082}of this['_bufferedRequests']['values']()){let _0x5ecbef=_0x59fffd['find'](_0x37cc6e=>_0x37cc6e['id']===_0x2a2d33['id']);_0x5ecbef||(_0x5ecbef=await this['_trackChangesService']['add'](_0x2a2d33['id'],_0x2a2d33['type'],_0x2a2d33['data'],_0x2a2d33['originalSuggestionId'])),_0x3e1082(_0x5ecbef);}for(const _0x25cb15 of _0x59fffd)_0xfa26b8['hasSuggestion'](_0x25cb15['id'])||_0xfa26b8['addSuggestionData'](_0x25cb15);}async['_waitForServiceReady'](){this['_trackChangesService']['isConnected']||await new Promise(_0x158f6c=>{this['listenTo'](this['_trackChangesService'],'connected',_0x19a360=>{_0x19a360['off'](),_0x158f6c();});});}async['_fetchMissingUsersForThreads'](_0x2f47a4){const _0x288996=this['editor']['plugins']['get'](_0x4c102a),{connection:_0xb6fc8c}=this['editor']['plugins']['get'](z),_0x4a8882=new Set();for(const {authorId:_0x3d1822}of _0x2f47a4)_0x288996['getUser'](_0x3d1822)||_0x4a8882['add'](_0x3d1822);if(0x0===_0x4a8882['size'])return;const _0x2b3585=await _0x381d6e['getMany'](_0xb6fc8c,Array['from'](_0x4a8882));for(const _0x2c3196 of _0x2b3585)_0x288996['getUser'](_0x2c3196['id'])||_0x288996['addUser'](_0x2c3196);}}function lt(_0x4c2b5c){if(dt(_0x4c2b5c))return new Promise(()=>{});throw _0x4c2b5c;}function dt(_0x4295f0){return _0x4295f0['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x4295f0['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}class ut extends _0x281793{static get['requires'](){return[_0x186826,ot,nt,z];}static get['pluginName'](){return'RealTimeCollaborativeComments';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['init'](){const _0x2a4f3a=this['editor']['plugins']['get'](z),_0xc7a8bb=this['editor']['plugins']['get'](_0x59426b),_0x51a8c7=this['editor']['plugins']['get'](ot);return this['editor']['data']['once']('ready',()=>{this['listenTo'](_0x2a4f3a,'change:state',(_0x2c16d8,_0x1fde6a,_0x1eca1d)=>{_0xc7a8bb['isThreadsLoadingPaused']='connected'!==_0x1eca1d;});}),this['listenTo'](_0x2a4f3a,'change:state',(_0x1e86ea,_0x5e1c65,_0x5c03a0)=>{this['editor']['plugins']['get'](_0x5be5e5)['switchReadOnly']('connected'!==_0x5c03a0);}),_0x51a8c7['_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 _0x281793{static get['requires'](){return[ut,ht,_0xadf793];}static get['pluginName'](){return'RealTimeCollaborativeTrackChanges';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}class mt extends _0x281793{static ['RevisionHistoryService']=/* #__PURE__ -- @preserve */
|
|
28
|
+
((()=>_0x1279c1)());['_lastRequestId'];['_revisionTracker'];['_revisionHistoryService'];['_oldOffset'];static get['requires'](){return[z,tt,_0x4a2d92,Y,_0x4c102a];}static get['pluginName'](){return'CloudServicesRevisionHistoryAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x45d2d4){super(_0x45d2d4);const _0x2c68fa=this['editor']['config']['get']('collaboration.channelId');this['_lastRequestId']=null,this['_revisionTracker']=this['editor']['plugins']['get']('RevisionTracker'),this['_revisionHistoryService']=new mt['RevisionHistoryService'](_0x2c68fa);}async['init'](){const _0x1f2c60=this['editor']['plugins']['get'](tt),_0x3f5c18=_0x1f2c60['serverHistory'],_0x270837=this['editor']['plugins']['get'](z);this['_revisionTracker']['setSource']({'history':_0x3f5c18,'getLatestVersion':()=>this['_getLatestVersion'](),'getCurrentRevisionId':()=>_0x1f2c60['sessionId']});const _0x199c0b=this['editor']['config']['get']('cloudServices.bundleVersion')||_0x5909bb,_0x9cd8e2=await _0x33edb5['isBundleUploaded'](_0x270837['connection'],_0x199c0b);this['editor']['plugins']['get'](_0x4a2d92)['adapter']={'getRevision':async({revisionId:_0xb7c13b})=>(await this['_waitForServiceReady'](),await this['_revisionHistoryService']['getRevision'](_0xb7c13b)),'updateRevisions':async _0x12f76c=>{await this['_waitForServiceReady']();const _0x63ac8d=this['_revisionTracker']['currentRevision'];if(_0x9cd8e2&&0x1===_0x12f76c['length']&&_0x12f76c[0x0]['id']===_0x63ac8d['id'])return _0x12f76c;for(const _0x10ec33 of _0x12f76c)_0x10ec33['id']===_0x63ac8d['id']&&(_0x10ec33['isEmptyCurrent']=_0x10ec33['fromVersion']===_0x10ec33['toVersion']);return this['_revisionHistoryService']['updateRevisions'](_0x12f76c,this['_lastRequestId'])['then'](_0x2f6725=>(this['_lastRequestId']=_0x2f6725,_0x12f76c))['catch'](_0x45ff86=>{if(pt(_0x45ff86)||'400'===_0x45ff86['code']&&void 0x0!==_0x45ff86['data']['wrongRequestId']){for(const _0x30642a of _0x12f76c){!this['_revisionTracker']['repository']['getRevision'](_0x30642a['id'])||this['_revisionTracker']['_bufferUpdate'](_0x30642a['id'],_0x30642a,!0x1);}if(pt(_0x45ff86))throw _0x45ff86;return _0x12f76c;}throw _0x45ff86;});}},this['listenTo'](this['_revisionHistoryService'],'revisionsUpdated',(_0xae9868,{revisionsData:_0x30c160,requestId:_0x4b245b})=>{Math['max'](..._0x30c160['map'](_0x188d0f=>_0x188d0f['toVersion']))>this['_getLatestVersionFromServerOperations']()-0x1?this['_getLatestVersion']()['then'](()=>{this['_handleRevisionsUpdate'](_0x30c160,_0x4b245b);}):this['_handleRevisionsUpdate'](_0x30c160,_0x4b245b);});const {revisions:_0x334f68,requestId:_0x3b187e}=await this['_revisionHistoryService']['connect'](_0x270837['connection']);_0x270837['addToReconnectionStack'](this),this['_lastRequestId']=_0x3b187e,await this['_fetchMissingUsers'](_0x334f68);for(const _0x229eb8 of _0x334f68)this['_revisionTracker']['addRevisionData'](_0x229eb8);this['listenTo'](_0x1f2c60,'change:_isConnected',(_0x5b3e39,_0x4fce2e,_0x3f518b)=>{_0x3f518b&&(this['_oldOffset']=_0x1f2c60['_offset'],_0x5b3e39['off']());}),this['_revisionTracker']['bind']('isEnabled')['to'](_0x270837,'state',_0x3300eb=>_0x3300eb===_0x353716['CONNECTED']);}async['reconnect'](){const _0x2c1d2a=this['editor']['plugins']['get'](z),_0x35e547=this['editor']['plugins']['get'](tt),_0x42c32e=async()=>{const _0xfa4f20=this['_revisionTracker']['currentRevision'],_0x2dedc2=_0xfa4f20['id'],_0x3d20e1=_0x2dedc2!==_0x35e547['sessionId'];if(_0x3d20e1){const _0x116c8a=_0x35e547['_offset']-this['_oldOffset'],_0x4a14ca=this['_getLatestVersionFromServerOperations']();this['_revisionTracker']['_revisionDataBuilder']['reInit']();if(_0xfa4f20['toVersion']+_0x116c8a!==_0x4a14ca){const _0x44cdc4=_0xfa4f20['fromVersion']+_0x116c8a,_0x377c44=this['editor']['plugins']['get'](_0x4c102a),_0x195b01=this['_revisionTracker']['buildRevisionData']({'revision':_0xfa4f20,'from':_0x44cdc4,'to':_0x4a14ca});_0x195b01['id']=_0xfa4f20['id'];const _0xca04ce=_0x195b01['authorsIds']['map'](_0x1203cd=>_0x377c44['getUser'](_0x1203cd));_0xfa4f20['_update']({..._0x195b01,'authors':_0xca04ce},!0x0),this['_revisionTracker']['_bufferUpdate'](_0xfa4f20['id'],_0x195b01,!0x0);}this['_revisionTracker']['_startingVersion']=_0x4a14ca,(_0xfa4f20['toVersion']===_0xfa4f20['fromVersion']&&!this['_revisionTracker']['_bufferedUpdates']['has'](_0x2dedc2)&&this['_revisionTracker']['repository']['_revisions']['remove'](_0x2dedc2),this['_revisionTracker']['_createCurrentRevision'](_0x4a14ca));}const {revisions:_0x163434,requestId:_0x58eee0}=await this['_revisionHistoryService']['reconnect'](_0x2c1d2a['connection'],this['_lastRequestId']);_0x3d20e1&&_0x163434['length']>0x0?_0x35e547['_handleReconnectionError']():(await this['_fetchMissingUsers'](_0x163434),this['_handleRevisionsUpdate'](_0x163434,_0x58eee0),this['_revisionTracker']['sendBufferedUpdates']());};return _0x35e547['_isConnected']?_0x42c32e():new Promise((_0x8b30c3,_0xc32b27)=>{_0x35e547['once']('change:_isConnected',()=>{_0x42c32e()['then'](_0x8b30c3)['catch'](_0xc32b27);});});}['destroy'](){super['destroy']();}async['_waitForServiceReady'](){this['_revisionHistoryService']['isConnected']||await new Promise(_0x16a3cb=>{this['listenTo'](this['_revisionHistoryService'],'connected',_0x310cf6=>{_0x310cf6['off'](),_0x16a3cb();});});}['_getLatestVersionFromServerOperations'](){const _0xa91e2a=this['editor']['plugins']['get'](tt)['serverHistory']['getOperations']()['reverse']();for(const _0x557281 of _0xa91e2a)if('marker'!==_0x557281['type']||_0x557281['affectsData'])return _0x557281['baseVersion']+0x1;}['_getLatestVersion'](){const _0x30b834=this['editor']['plugins']['get'](tt);return new Promise(_0x5bf8e1=>{_0x30b834['_isPendingUpdate']?_0x30b834['once']('change:_isPendingUpdate',()=>{_0x5bf8e1(this['_getLatestVersionFromServerOperations']());}):_0x5bf8e1(this['_getLatestVersionFromServerOperations']());});}['_handleRevisionsUpdate'](_0x241055,_0x57d473){const _0x1a4a08=this['_revisionTracker']['repository'];this['_lastRequestId']=_0x57d473;for(const _0x4b0cc9 of _0x241055){const _0x1d22c9=_0x1a4a08['getRevision'](_0x4b0cc9['id']);if(_0x1d22c9){if((_0x4b0cc9['fromVersion']||_0x4b0cc9['toVersion'])&&(_0x4b0cc9['diffData']=null),_0x1d22c9===this['_revisionTracker']['currentRevision']){const _0x4f58d7=Math['max'](_0x1d22c9['toVersion'],_0x4b0cc9['toVersion']),_0x35afc4=Math['max'](_0x1d22c9['fromVersion'],_0x4b0cc9['fromVersion']);let _0x2344b7;_0x1d22c9['toVersion']===_0x4b0cc9['toVersion']&&_0x1d22c9['fromVersion']===_0x4b0cc9['fromVersion']?(_0x2344b7=!0x0,this['_preventResendingRevisionData'](_0x4b0cc9)):_0x4b0cc9['toVersion']===_0x4f58d7&&_0x4b0cc9['fromVersion']===_0x35afc4?_0x2344b7=!0x1:(_0x1d22c9['toVersion']===_0x4f58d7&&_0x1d22c9['fromVersion']===_0x35afc4||this['_fixRevision']({'revision':_0x1d22c9,'from':_0x35afc4,'to':_0x4f58d7}),_0x2344b7=!0x0),_0x2344b7&&(delete _0x4b0cc9['fromVersion'],delete _0x4b0cc9['toVersion'],delete _0x4b0cc9['diffData'],delete _0x4b0cc9['createdAt'],delete _0x4b0cc9['authorsIds']);}this['_revisionTracker']['setRevisionData'](_0x4b0cc9),this['_preventResendingRevisionData'](_0x4b0cc9);}else this['_revisionTracker']['addRevisionData'](_0x4b0cc9);}const _0x1b3a49=_0x1a4a08['getRevisions']();_0x1b3a49['reverse']();for(let _0x7bbf3d=0x0;_0x7bbf3d<_0x1b3a49['length']-0x1;_0x7bbf3d++){const _0xd39329=_0x1b3a49[_0x7bbf3d],_0x409c0b=_0x1b3a49[_0x7bbf3d+0x1];if(_0xd39329['fromVersion']<_0x409c0b['toVersion']){const _0xdc2963=_0x409c0b['toVersion'],_0x1db7ea=Math['max'](_0xdc2963,_0xd39329['toVersion']);this['_fixRevision']({'revision':_0xd39329,'from':_0xdc2963,'to':_0x1db7ea});}}}['_fixRevision']({revision:_0x4292bd,from:_0x5ce29c,to:_0x4d0549}={}){const _0x435611=this['editor']['plugins']['get'](_0x4c102a),_0x1ac3c2=this['_revisionTracker']['buildRevisionData']({'revision':_0x4292bd,'from':_0x5ce29c,'to':_0x4d0549});_0x1ac3c2['authors']=_0x1ac3c2['authorsIds']['map'](_0x216f27=>_0x435611['getUser'](_0x216f27)),_0x4292bd['_update'](_0x1ac3c2);}['_preventResendingRevisionData'](_0x25fbe2){const _0x3fa6ee={};_0x3fa6ee['id']=_0x25fbe2['id'];for(const _0x5d39b0 of Object['keys'](_0x25fbe2))'id'!==_0x5d39b0&&(_0x3fa6ee[_0x5d39b0]=void 0x0);this['_revisionTracker']['_bufferUpdate'](_0x3fa6ee['id'],_0x3fa6ee,!0x0);}async['_fetchMissingUsers'](_0x5813e3){const _0x25ac5c=this['editor']['plugins']['get'](_0x4c102a),{connection:_0x525774}=this['editor']['plugins']['get'](z),_0x6a5e47=new Set();for(const _0x20e311 of _0x5813e3){for(const _0x451af0 of _0x20e311['authorsIds'])_0x308b0a(_0x451af0);_0x20e311['creatorId']&&_0x308b0a(_0x20e311['creatorId']);}if(0x0===_0x6a5e47['size'])return;const _0x3dced9=await _0x381d6e['getMany'](_0x525774,Array['from'](_0x6a5e47));for(const _0x30fd18 of _0x3dced9)_0x25ac5c['getUser'](_0x30fd18['id'])||_0x25ac5c['addUser'](_0x30fd18);function _0x308b0a(_0x4a1533){_0x25ac5c['getUser'](_0x4a1533)||_0x6a5e47['add'](_0x4a1533);}}}function pt(_0x13ce86){return _0x13ce86['message']['startsWith']('cloud-services-internal-error:\x20Revision\x20History\x20Service\x20is\x20not\x20connected.')||_0x13ce86['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x13ce86['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}class gt extends _0x281793{static get['requires'](){return[_0x4a2d92,mt,nt];}static get['pluginName'](){return'RealTimeCollaborativeRevisionHistory';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}class wt extends _0x1a3fd9{['_collapseAt'];constructor(_0x35b08f,_0x36ca70=0x6){super(_0x35b08f);const _0x2cf073=this['bindTemplate'];this['set']('isHidden',!0x0),this['set']('usersCount',0x0),this['_collapseAt']=_0x36ca70,this['bind']('isHidden')['to'](this,'usersCount',_0x1a7a5e=>_0x1a7a5e<_0x36ca70),this['setTemplate']({'tag':'div','attributes':{'class':['ck','ck-presence-list__list-item',_0x2cf073['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':_0x2cf073['to']('usersCount',_0xc90901=>'+'+(_0xc90901-this['_collapseAt']+0x2)['toString']())}]}]}]});}}class vt extends _0x1a3fd9{['items'];['keystrokes'];constructor(_0x2d89ac){super(_0x2d89ac);const _0xad72b6=this['bindTemplate'];this['items']=this['createCollection'](),this['keystrokes']=new _0x42e44d(),this['set']({'hasPopup':!0x1,'isExpanded':!0x1}),this['setTemplate']({'tag':'div','attributes':{'aria-haspopup':_0xad72b6['if']('hasPopup'),'aria-expanded':_0xad72b6['to']('isExpanded',_0x4f53f9=>this['hasPopup']&&String(_0x4f53f9)),'aria-label':_0xad72b6['to']('hasPopup',_0xc7ff6a=>X(_0x2d89ac,_0xc7ff6a?'Collapsed\x20connected\x20users\x20list\x20(press\x20ENTER\x20to\x20open\x20it)':'Connected\x20users\x20list')),'role':'list','tabindex':_0xad72b6['to']('hasPopup',_0x26bbed=>!!_0x26bbed&&0x0),'class':['ck','ck-presence-list__list']},'children':this['items'],'on':{'mouseenter':_0xad72b6['to'](()=>this['fire']('presencelist:show')),'mouseleave':_0xad72b6['to'](_0x38eab4=>{const _0x223d05=_0x38eab4,_0x390e29=document['querySelector']('.ck-presence-list__dropdown-list'),_0x5476b7=document['querySelector']('.ck-balloon-panel_with-arrow');_0x390e29?.['contains'](_0x223d05['relatedTarget'])||_0x5476b7?.['contains'](_0x223d05['relatedTarget'])||this['fire']('presencelist:hide');})}}),this['on']('change:hasPopup',(_0x4703b7,_0x1f2a49,_0x17336d)=>{this['element']&&(_0x17336d?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 _0x1a3fd9{['counterView'];['inlineListView'];constructor(_0x1407a1,_0x261bcd=0x6){super(_0x1407a1);const _0x1c5a79=this['bindTemplate'];this['set']('isCollapsed',!0x0),this['counterView']=new wt(this['locale'],_0x261bcd),this['inlineListView']=new vt(_0x1407a1),this['inlineListView']['bind']('hasPopup')['to'](this,'isCollapsed'),this['listenTo'](this['inlineListView']['items'],'change',()=>{for(const _0x545649 of this['inlineListView']['items'])_0x545649['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',_0x1c5a79['if']('isCollapsed','ck-presence-list--collapsed')]},'children':[this['inlineListView']]});}}class yt extends _0x1a3fd9{['listWrapperView'];constructor(_0xd5ff0b,_0x3a2419){super(_0xd5ff0b);const _0x5ab109=this['bindTemplate'];this['listWrapperView']=new bt(_0xd5ff0b,_0x3a2419),this['setTemplate']({'tag':'div','attributes':{'tabindex':-0x1,'role':'application','class':['ck','ck-presence-list__dropdown-list'],'aria-label':X(_0xd5ff0b,'Connected\x20users\x20list\x20dropdown\x20menu')},'children':[this['listWrapperView']],'on':{'mouseleave':_0x5ab109['to'](_0x210488=>{const _0x511fc1=_0x210488,_0x24c26c=document['querySelector']('.ck-presence-list__list'),_0xcbcaa3=document['querySelector']('.ck-balloon-panel_with-arrow');_0x24c26c?.['contains'](_0x511fc1['relatedTarget'])||_0xcbcaa3?.['contains'](_0x511fc1['relatedTarget'])||this['fire']('presencelist:hide');})}});}}class bt extends _0x37da38{constructor(_0x19a2d9,_0x4ff1d0){super(_0x19a2d9);const _0x403eb3=this['bindTemplate'];this['set']('_isScrollable',!0x1),this['setTemplate']({'tag':_0x4ff1d0?'div':'ul','attributes':{'class':['ck','ck-reset','ck-list','ck-presence-list__dropdown-list-wrapper',_0x403eb3['if']('_isScrollable','ck-presence-list__dropdown-list-wrapper_scrollable')],'role':_0x403eb3['to']('role'),'aria-label':_0x403eb3['to']('ariaLabel'),'aria-labelledby':_0x403eb3['to']('ariaLabelledBy')},'children':this['items']}),this['listenTo'](_0x28e582['window'],'resize',()=>this['checkIfScrollable']()),this['items']['on']('change',()=>this['checkIfScrollable']());}['render'](){super['render'](),this['checkIfScrollable']();}['checkIfScrollable'](){const _0x28d823=this['element'];_0x28d823&&(this['_isScrollable']=Math['max'](_0x28d823['scrollHeight'],_0x28d823['clientHeight'])>0.8*window['innerHeight']);}}class kt extends _0x2c00f3{['userView'];constructor(_0xcd8f4c,_0x37dcaf,_0x316a62){super(_0xcd8f4c);const _0x571214=this['bindTemplate'];this['userView']=new _0x2d3ca6(_0xcd8f4c,_0x37dcaf);const _0x42bf6c={'tag':'li','attributes':{'class':['ck','ck-presence-list__dropdown-list-item'],'tabindex':-0x1,'role':'presentation','aria-label':_0x37dcaf['name']},'children':[this['userView'],{'tag':'span','attributes':{'class':['ck','ck-user__full-name']},'children':[{'text':_0x37dcaf['name']}]},{'tag':'span','attributes':{'class':['ck','ck-presence-list__marker',_0x37dcaf['color']['getBackgroundColorClass']()],'style':{'--ck-user-color':_0x37dcaf['color']['getColorVariable'](),'--ck-user-color-alpha':_0x37dcaf['color']['getColorAlphaVariable']()},'aria-hidden':'true'}}]};_0x316a62&&(_0x42bf6c['tag']='button',_0x42bf6c['on']={'click':_0x571214['to'](()=>this['fire']('execute'))}),this['setTemplate'](_0x42bf6c);}['focus'](){this['element']['focus']();}}class It extends _0x1a3fd9{['userView'];['markerView'];constructor(_0x1a621b,_0x5d9a3d,_0x30ef91){super(_0x1a621b);const _0x2c245c=this['bindTemplate'];this['set']('isFocusable',!0x1),this['set']('hasTooltip',!0x0),this['set']('tooltipPosition',''),this['userView']=new _0x2d3ca6(_0x1a621b,_0x5d9a3d),this['markerView']=new St(_0x1a621b,_0x5d9a3d);const _0x2fc1b0=new _0x35c56a(_0x1a621b);_0x2fc1b0['template']['tag']='span',_0x2fc1b0['text']=_0x5d9a3d['name'];const _0x5097a3={'tag':'div','attributes':{'class':['ck','ck-presence-list__list-item'],'role':'listitem','tabindex':_0x2c245c['to']('isFocusable',_0x258d5a=>!!_0x258d5a&&0x0),'aria-labelledby':_0x2fc1b0['id'],'data-cke-tooltip-text':this['userView']['name'],'data-cke-tooltip-position':_0x2c245c['to']('tooltipPosition'),'data-cke-tooltip-disabled':_0x2c245c['to']('hasTooltip',_0x1fbb69=>!_0x1fbb69),'data-cke-tooltip-class':'ck-presence-list__list-item__tooltip'},'children':[this['userView'],this['markerView'],_0x2fc1b0]};_0x30ef91&&(_0x5097a3['tag']='button',_0x5097a3['on']={'click':_0x2c245c['to'](()=>this['fire']('execute'))}),this['setTemplate'](_0x5097a3);}}class St extends _0x1a3fd9{constructor(_0x433b5a,_0x484420){super(_0x433b5a),this['setTemplate']({'tag':'span','attributes':{'class':['ck','ck-presence-list__marker',_0x484420['color']['getBackgroundColorClass']()],'style':{'--ck-user-color':_0x484420['color']['getColorVariable'](),'--ck-user-color-alpha':_0x484420['color']['getColorAlphaVariable']()},'aria-hidden':'true'}});}}const Tt={'collapseAt':0x6,'displayMe':!0x0};class At extends _0xef80a1{['currentDisplayedUsers'];['balloonPanelView'];['view'];['presenceDropdownView'];['_bodyCollection']=null;static get['pluginName'](){return'PresenceListUI';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x5d78a7){super(_0x5d78a7),this['context']['config']['define']('presenceList',Tt);const _0x1cd169=_0x5d78a7['config']['get']('presenceList.collapseAt');if('number'!=typeof _0x1cd169)throw new _0xe32300('presencelist-collapseat-invalid-format',this);if(_0x1cd169<0x1)throw new _0xe32300('presencelist-collapseat-invalid-format',this);this['_allConnectedUsers']=this['context']['plugins']['get'](Y)['allConnectedUsers'],this['set']('usersCount',0x0),this['currentDisplayedUsers']=new _0x2c5641(),this['balloonPanelView']=new _0x553bc5(),this['balloonPanelView']['class']='ck\x20ck-presence-list__balloon',this['view']=this['_createView'](),this['presenceDropdownView']=void 0x0;}static get['requires'](){return[Y];}['init'](){for(const _0x359c9c of this['_allConnectedUsers'])this['_handleUserAdd'](_0x359c9c);this['listenTo'](this['_allConnectedUsers'],'add',(_0x3657cc,_0x1155a2)=>{this['_handleUserAdd'](_0x1155a2);}),this['listenTo'](this['_allConnectedUsers'],'remove',(_0x28fd30,_0x157ead)=>{this['_handleUserRemove'](_0x157ead);});}['_createView'](){const _0x1f3cc9=this['context'],_0x3dcd4f=new _t(this['context']['locale'],this['context']['config']['get']('presenceList.collapseAt')),_0x4188e2=this['balloonPanelView'];if(!_0x1ed9b4(_0x1f3cc9['config']['get']('presenceList.container')))throw new _0xe32300('presencelist-missing-container',this);return _0x3dcd4f['counterView']['bind']('usersCount')['to'](this),_0x3dcd4f['bind']('isCollapsed')['to'](this,'usersCount',_0x1d197d=>{const {collapseAt:_0x26442f}=_0x1f3cc9['config']['get']('presenceList'),_0x1959ca=_0x1d197d>=_0x26442f;if(_0x1959ca&&!_0x3dcd4f['inlineListView']['items']['find'](_0x244959=>_0x244959 instanceof wt)){const _0x319aee=this['context']['config']['get']('presenceList.collapseAt')-0x1;this['currentDisplayedUsers']['length']==_0x319aee&&this['currentDisplayedUsers']['length']>0x1&&this['currentDisplayedUsers']['remove'](this['currentDisplayedUsers']['length']-0x1),_0x3dcd4f['inlineListView']['items']['add'](_0x3dcd4f['counterView']);}return _0x1959ca||this['hideDropdown'](),_0x1959ca;}),_0x3dcd4f['inlineListView']['items']['bindTo'](this['currentDisplayedUsers'])['using'](_0x28cb65=>{const _0x1e88a8=_0x1f3cc9['config']['get']('presenceList'),_0x759fd1=new It(_0x1f3cc9['locale'],_0x28cb65,!!_0x1e88a8['onClick']);return _0x759fd1['bind']('hasTooltip')['to'](_0x3dcd4f,'isCollapsed',_0x5448fe=>!_0x5448fe),_0x759fd1['bind']('isFocusable')['to'](_0x3dcd4f,'isCollapsed',_0x518fab=>!_0x518fab),_0x1e88a8['onClick']&&this['listenTo'](_0x759fd1,'execute',()=>{this['view']['isCollapsed']||_0x1e88a8['onClick'](_0x28cb65,_0x759fd1['element']);}),_0x759fd1;}),this['listenTo'](_0x3dcd4f['inlineListView'],'presencelist:show',()=>{this['view']['isCollapsed']&&this['showDropdown']();}),this['listenTo'](_0x3dcd4f['inlineListView'],'presencelist:hide',()=>{this['presenceDropdownView']&&this['hideDropdown']();}),_0x3dcd4f['inlineListView']['keystrokes']['set']('Enter',(_0x3affd5,_0x4410b8)=>{this['view']['isCollapsed']&&(this['showDropdown'](),_0x4410b8());}),_0x3dcd4f['render'](),_0x4188e2['render'](),_0x360bc9({'emitter':_0x3dcd4f,'activator':()=>_0x4188e2['isVisible'],'contextElements':[_0x4188e2['element'],_0x3dcd4f['inlineListView']['element']],'callback':()=>this['hideDropdown']()}),_0x1f3cc9['config']['get']('presenceList.container')['appendChild'](_0x3dcd4f['element']),this['_bodyCollection']=new _0x447c29(this['context']['locale']),this['_bodyCollection']['attachToDom'](),this['_bodyCollection']['add'](this['balloonPanelView']),_0x3dcd4f;}['_handleUserAdd'](_0x4fad99){if(!this['context']['config']['get']('presenceList.displayMe')&&_0x4fad99['isMe'])return;const _0x4c52ee=this['context']['config']['get']('presenceList.collapseAt')-0x1;for(this['usersCount']++;this['currentDisplayedUsers']['length']>=_0x4c52ee-(this['view']['isCollapsed']?0x1:0x0)&&this['currentDisplayedUsers']['length']>0x1;)this['currentDisplayedUsers']['remove'](0x1);const _0x1c81a6=_0x4fad99['isMe']?0x0:this['currentDisplayedUsers']['length'];this['currentDisplayedUsers']['add'](_0x4fad99,_0x1c81a6);}['_handleUserRemove'](_0x33e018){this['usersCount']--;const {collapseAt:_0xb3a644}=this['context']['config']['get']('presenceList'),_0x4e2259=this['usersCount']>=_0xb3a644;if(this['currentDisplayedUsers']['get'](_0x33e018['id']))this['currentDisplayedUsers']['remove'](_0x33e018['id']);else{if(_0x4e2259&&this['currentDisplayedUsers']['length']+0x1===_0xb3a644-0x1)return;}if(this['currentDisplayedUsers']['length']+(_0x4e2259?0x1:0x0)<this['usersCount']){for(const _0xa03de2 of Array['from'](this['_allConnectedUsers'])['reverse']())if(!this['currentDisplayedUsers']['get'](_0xa03de2['id'])&&(this['currentDisplayedUsers']['add'](_0xa03de2,Math['min'](this['currentDisplayedUsers']['length']-(_0x4e2259?0x1:0x0),0x1)),this['currentDisplayedUsers']['length']+(_0x4e2259?0x1:0x0)===_0xb3a644-0x1))return;}}['showDropdown'](){if(this['presenceDropdownView'])return;const _0x760448=this['context']['config']['get']('presenceList');this['presenceDropdownView']=new yt(this['context']['locale'],!!_0x760448['onClick']),this['view']['inlineListView']['isExpanded']=!0x0,this['listenTo'](this['presenceDropdownView'],'presencelist:hide',()=>{this['presenceDropdownView']&&this['hideDropdown']();});const {listWrapperView:_0x59ef9d}=this['presenceDropdownView'];_0x59ef9d['items']['bindTo'](this['_allConnectedUsers'])['using'](_0x417cd3=>{if(!_0x760448['displayMe']&&_0x417cd3['isMe'])return null;const _0x37833c=new kt(this['context']['locale'],_0x417cd3,!!_0x760448['onClick']);return _0x760448['onClick']&&this['listenTo'](_0x37833c,'execute',()=>{_0x760448['onClick'](_0x417cd3,_0x37833c['element']);}),_0x37833c;}),this['balloonPanelView']['content']['add'](this['presenceDropdownView']),this['balloonPanelView']['pin']({'target':this['view']['inlineListView']['element']}),_0x59ef9d['focus'](),_0x59ef9d['checkIfScrollable']();const _0x516eb4=(_0x2a42c2,_0x59928a)=>{this['hideDropdown'](),this['view']['inlineListView']['focus'](),_0x59928a();};_0x59ef9d['keystrokes']['set']('Esc',_0x516eb4),_0x59ef9d['keystrokes']['set']('Shift+Tab',_0x516eb4),_0x59ef9d['keystrokes']['set']('Tab',(_0x5f1f47,_0x4f9882)=>{!function(_0x5be3be){const _0x47f71f=['a','button','input','select','textarea','[tabindex]','[contenteditable]']['map'](_0x40cab5=>_0x40cab5+':not([disabled]):not([tabindex=\x22-1\x22])')['join'](','),_0x502756=[...document['body']['querySelectorAll'](_0x47f71f)]['filter'](_0x1cf7a8=>_0x1cf7a8===document['activeElement']||_0x1cf7a8['offsetWidth']+_0x1cf7a8['offsetHeight']>0x0)['sort']((_0x43ab33,_0x5b9a5a)=>(_0x43ab33['tabIndex']||0x0)-(_0x5b9a5a['tabIndex']||0x0)),_0x427d16=_0x502756['indexOf'](_0x5be3be),_0x3c1bc3=_0x502756[(_0x427d16+0x1)%_0x502756['length']];_0x3c1bc3&&_0x3c1bc3['focus']();}(this['view']['element']),this['hideDropdown'](),_0x4f9882();}),_0x59ef9d['focusTracker']['add'](this['view']['element']),_0x59ef9d['focusTracker']['on']('change:isFocused',(_0x5985c9,_0x2d35fe,_0x53120b)=>{_0x53120b||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 _0xef80a1{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':_0x1efd53=>0x1!=_0x1efd53}};
|