@ckeditor/ckeditor5-real-time-collaboration 44.0.0 → 44.1.0-alpha.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/build/real-time-collaboration.js +1 -1
- package/dist/augmentation.d.ts +1 -1
- package/dist/common-translations.d.ts +1 -1
- package/dist/config.d.ts +1 -1
- package/dist/index.css +7 -7
- package/dist/index.d.ts +1 -1
- package/dist/index.js +6 -6
- package/dist/presencelist/presencelistui.d.ts +1 -1
- package/dist/presencelist/view/presencecounterview.d.ts +1 -1
- package/dist/presencelist/view/presencedropdownlistitemview.d.ts +1 -1
- package/dist/presencelist/view/presencedropdownlistview.d.ts +1 -1
- package/dist/presencelist/view/presenceinlinelistitemview.d.ts +1 -1
- package/dist/presencelist/view/presenceinlinelistview.d.ts +1 -1
- package/dist/presencelist/view/presencelistview.d.ts +1 -1
- package/dist/presencelist.d.ts +1 -1
- package/dist/realtimecollaborativecomments/cloudservicescommentsadapter.d.ts +1 -1
- package/dist/realtimecollaborativecomments.d.ts +1 -1
- package/dist/realtimecollaborativeediting/realtimecollaborationclient.d.ts +1 -1
- package/dist/realtimecollaborativeediting/sessions.d.ts +1 -1
- package/dist/realtimecollaborativeediting/usermarkers.d.ts +1 -1
- package/dist/realtimecollaborativeediting/websocketgateway.d.ts +1 -1
- package/dist/realtimecollaborativeediting.d.ts +1 -1
- package/dist/realtimecollaborativerevisionhistory/cloudservicesrevisionhistoryadapter.d.ts +1 -1
- package/dist/realtimecollaborativerevisionhistory.d.ts +1 -1
- package/dist/realtimecollaborativetrackchanges/cloudservicestrackchangesadapter.d.ts +1 -1
- package/dist/realtimecollaborativetrackchanges.d.ts +1 -1
- 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/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 +9 -9
- package/src/augmentation.d.ts +1 -1
- package/src/common-translations.d.ts +1 -1
- package/src/common-translations.js +1 -1
- package/src/config.d.ts +1 -1
- package/src/index.d.ts +1 -1
- package/src/index.js +1 -1
- package/src/presencelist/presencelistui.d.ts +1 -1
- package/src/presencelist/presencelistui.js +1 -1
- package/src/presencelist/view/presencecounterview.d.ts +1 -1
- package/src/presencelist/view/presencecounterview.js +1 -1
- package/src/presencelist/view/presencedropdownlistitemview.d.ts +1 -1
- package/src/presencelist/view/presencedropdownlistitemview.js +1 -1
- package/src/presencelist/view/presencedropdownlistview.d.ts +1 -1
- package/src/presencelist/view/presencedropdownlistview.js +1 -1
- package/src/presencelist/view/presenceinlinelistitemview.d.ts +1 -1
- package/src/presencelist/view/presenceinlinelistitemview.js +1 -1
- package/src/presencelist/view/presenceinlinelistview.d.ts +1 -1
- package/src/presencelist/view/presenceinlinelistview.js +1 -1
- package/src/presencelist/view/presencelistview.d.ts +1 -1
- package/src/presencelist/view/presencelistview.js +1 -1
- package/src/presencelist.d.ts +1 -1
- package/src/presencelist.js +1 -1
- package/src/realtimecollaborativecomments/cloudservicescommentsadapter.d.ts +1 -1
- package/src/realtimecollaborativecomments/cloudservicescommentsadapter.js +1 -1
- package/src/realtimecollaborativecomments.d.ts +1 -1
- package/src/realtimecollaborativecomments.js +1 -1
- package/src/realtimecollaborativeediting/realtimecollaborationclient.d.ts +1 -1
- package/src/realtimecollaborativeediting/realtimecollaborationclient.js +1 -1
- package/src/realtimecollaborativeediting/sessions.d.ts +1 -1
- package/src/realtimecollaborativeediting/sessions.js +1 -1
- package/src/realtimecollaborativeediting/usermarkers.d.ts +1 -1
- package/src/realtimecollaborativeediting/usermarkers.js +1 -1
- package/src/realtimecollaborativeediting/websocketgateway.d.ts +1 -1
- package/src/realtimecollaborativeediting/websocketgateway.js +1 -1
- package/src/realtimecollaborativeediting.d.ts +1 -1
- package/src/realtimecollaborativeediting.js +1 -1
- package/src/realtimecollaborativerevisionhistory/cloudservicesrevisionhistoryadapter.d.ts +1 -1
- package/src/realtimecollaborativerevisionhistory/cloudservicesrevisionhistoryadapter.js +1 -1
- package/src/realtimecollaborativerevisionhistory.d.ts +1 -1
- package/src/realtimecollaborativerevisionhistory.js +1 -1
- package/src/realtimecollaborativetrackchanges/cloudservicestrackchangesadapter.d.ts +1 -1
- package/src/realtimecollaborativetrackchanges/cloudservicestrackchangesadapter.js +1 -1
- package/src/realtimecollaborativetrackchanges.d.ts +1 -1
- package/src/realtimecollaborativetrackchanges.js +1 -1
- package/theme/presencelist.css +1 -1
- package/theme/usermarkers.css +1 -1
package/dist/index.js
CHANGED
|
@@ -20,9 +20,9 @@
|
|
|
20
20
|
*
|
|
21
21
|
*
|
|
22
22
|
*/
|
|
23
|
-
import{ContextPlugin as
|
|
24
|
-
((()=>lt)());static ['initialReconnectionInterval']=0x3e8;['connection'];['_reconnectionStack'];['_shouldPluginsReconnect'];['_domEmitter'];static get['requires'](){return['CloudServices',_0x4df19c];}static get['pluginName'](){return'WebSocketGateway';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0xc2747d){super(_0xc2747d),this['set']('state',_0x5957c6['CONNECTED']),this['set']('_isBrowserOffline',!0x1),this['_reconnectionStack']=new Set(),this['_shouldPluginsReconnect']=!0x1,this['_domEmitter']=Object['create'](_0x12f48c);}['init'](){const _0x124deb=this['context'],_0x2836a0=_0x124deb['plugins']['get']('CloudServices'),_0x3fdba5=_0x124deb['plugins']['get'](_0x4df19c);if(!_0x2836a0['token'])throw new _0x5d8b9a('websocketgateway-missing-token',this);if(!_0x2836a0['webSocketUrl'])throw new _0x5d8b9a('websocketgateway-missing-websocket-url',this);return this['_domEmitter']['listenTo'](window,'offline',()=>this['_isBrowserOffline']=!0x0),this['_domEmitter']['listenTo'](window,'online',()=>this['_isBrowserOffline']=!0x1),this['context']['config']['define']('cloudServices.connectionTimeout',0xa),this['context']['config']['define']('cloudServices.requestTimeout',0x14),c['WebSocketGateway']['connect'](_0x2836a0['token'],_0x2836a0['webSocketUrl'],{'timeout':0x3e8*this['context']['config']['get']('cloudServices.connectionTimeout'),'requestTimeout':0x3e8*this['context']['config']['get']('cloudServices.requestTimeout')})['then'](_0x3b7043=>{if(this['connection']=_0x3b7043,this['bind']('state')['to'](_0x3b7043,'state',this,'_isBrowserOffline',(_0x207418,_0x1ef8f4)=>('connected'!==_0x207418&&(this['_shouldPluginsReconnect']=!0x0),_0x1ef8f4||_0x207418!==_0x5957c6['CONNECTED']?_0x5957c6['DISCONNECTED']:this['state']==_0x5957c6['DISCONNECTED']&&this['_shouldPluginsReconnect']?(this['_shouldPluginsReconnect']=!0x1,this['_reconnect'](),_0x5957c6['CONNECTING']):_0x5957c6['CONNECTED'])),this['connection']['on']('error',(_0x54ffe5,_0x3a4249)=>{if('limitExceeded'!==_0x3a4249['code'])throw console['error'](_0x3a4249),new _0x5d8b9a('cloudservices-init',null,{'originalError':_0x3a4249});_0x3fdba5['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'});}),!_0x3b7043['me'])return new Promise(_0x35c1f1=>_0x3b7043['on']('change:me',_0x35c1f1));})['catch'](_0x3c03cb=>{throw console['error'](_0x3c03cb),new _0x5d8b9a('cloudservices-init',null,{'originalError':_0x3c03cb});});}['addToReconnectionStack'](_0x5d75d3){if('function'!=typeof _0x5d75d3['reconnect'])throw new _0x5d8b9a('websocketgateway-invalid-plugin-interface',this);if(this['isInReconnectionStack'](_0x5d75d3))throw new _0x5d8b9a('websocketgateway-plugin-already-registered',this,{'name':_0x5d75d3['constructor']['pluginName']});this['_reconnectionStack']['add'](_0x5d75d3);}['removeFromReconnectionStack'](_0x4dbf04){this['_reconnectionStack']['delete'](_0x4dbf04);}['isInReconnectionStack'](_0x2e6a6){return this['_reconnectionStack']['has'](_0x2e6a6);}['_reconnect'](){return this['connection']['reconnect']()['then'](()=>Promise['all'](Array['from'](this['_reconnectionStack'],_0x5b7c43=>_0x5b7c43['reconnect']())))['then'](()=>this['state']=_0x5957c6['CONNECTED'])['catch'](_0x1c16e6=>{throw console['error'](_0x1c16e6),new _0x5d8b9a('cloudservices-reconnection-error',this['context']);});}['destroy'](){this['connection']&&this['connection']['disconnect'](),this['state']=_0x5957c6['DISCONNECTED'],this['_domEmitter']['stopListening'](),super['destroy']();}}class i extends _0x177b39{['channelSessions'];['channelConnectedUsers'];['allConnectedUsers'];['_registeredSessions'];['_uniqueUsersCount'];['_users'];static get['pluginName'](){return'Sessions';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}static get['requires'](){return[c,_0x1ab8ea];}constructor(_0x9ab835){super(_0x9ab835),this['channelSessions']=new Map(),this['channelConnectedUsers']=new Map(),this['allConnectedUsers']=new _0x3ff178(),this['_registeredSessions']=new Map(),this['_uniqueUsersCount']=0x0,this['_users']=this['context']['plugins']['get'](_0x1ab8ea);}['init'](){const _0x31d2e7=this['context']['plugins']['get'](c);this['listenTo'](_0x31d2e7,'change:state',(_0x1f92ff,_0x55d162,_0x20b941)=>{if('connected'!==_0x20b941)this['channelSessions']['forEach'](_0xd36c9b=>_0xd36c9b['clear']()),this['channelConnectedUsers']['forEach'](_0x3a28d8=>_0x3a28d8['clear']()),this['allConnectedUsers']['clear']();else{for(const [_0x287ecc,_0x5f1068]of this['_registeredSessions'])for(const _0x52993b of _0x5f1068)this['_handleSessionAdd'](_0x287ecc,_0x52993b);}}),this['_createUser'](_0x31d2e7['connection']['me'],!0x0);}['register'](_0x5eb4a8,_0x5bde78){if(this['_registeredSessions']['has'](_0x5eb4a8))throw new _0x5d8b9a('sessions-register-already-registered',null,{'channelId':_0x5eb4a8});this['_registeredSessions']['set'](_0x5eb4a8,_0x5bde78),this['channelSessions']['set'](_0x5eb4a8,new _0x3ff178()),this['channelConnectedUsers']['set'](_0x5eb4a8,new _0x3ff178()),this['listenTo'](_0x5bde78,'add',(_0x1f489a,_0x47a119)=>this['_handleSessionAdd'](_0x5eb4a8,_0x47a119)),this['listenTo'](_0x5bde78,'remove',(_0x3398ad,_0xd443ce)=>this['_handleSessionRemove'](_0x5eb4a8,_0xd443ce));for(const _0x1ee82f of _0x5bde78)this['_handleSessionAdd'](_0x5eb4a8,_0x1ee82f);}['unregister'](_0x21d353){if(!this['_registeredSessions']['has'](_0x21d353))throw new _0x5d8b9a('sessions-unregister-not-exist',null,{'channelId':_0x21d353});const _0x4f2095=this['_registeredSessions']['get'](_0x21d353);this['stopListening'](_0x4f2095);for(const _0x17fc17 of _0x4f2095)'connected'===this['context']['plugins']['get'](c)['state']&&this['_handleSessionRemove'](_0x21d353,_0x17fc17);this['_registeredSessions']['delete'](_0x21d353),this['channelSessions']['delete'](_0x21d353),this['channelConnectedUsers']['delete'](_0x21d353);}get['mySessionId'](){return this['context']['plugins']['get'](c)['connection']['sessionId'];}['getUserBySessionId'](_0x3bf925){for(const _0x4f7812 of this['channelSessions']['values']())for(const _0x2af19f of _0x4f7812)if(_0x2af19f['id']===_0x3bf925)return _0x2af19f['user'];}['getUserSessions'](_0x25a7a2,_0x197819){const _0x40bb97=_0x197819?[this['channelSessions']['get'](_0x197819)]:this['channelSessions']['values'](),_0x32721d=new Set();for(const _0x5a39b4 of _0x40bb97)for(const _0x5557e9 of _0x5a39b4)_0x5557e9['user']['id']===_0x25a7a2['id']&&_0x32721d['add'](_0x5557e9['id']);return _0x32721d;}['getUserRole'](_0x10d0ef){for(const _0x28c955 of this['channelSessions']['values']())for(const _0x2eae72 of _0x28c955)if(_0x2eae72['user']===_0x10d0ef)return _0x2eae72['role'];}['_handleSessionAdd'](_0x47d65b,_0x48fa49){if('connected'!==this['context']['plugins']['get'](c)['state'])return;const _0x2f1d3c=_0x48fa49['user'],_0x1bf9cb=this['_users']['getUser'](_0x2f1d3c['id'])||this['_createUser'](_0x2f1d3c),_0x1680a0=Object['assign']({},_0x48fa49,{'user':_0x1bf9cb});this['channelSessions']['get'](_0x47d65b)['add'](_0x1680a0);const _0x3e867f=this['channelConnectedUsers']['get'](_0x47d65b);_0x3e867f['has'](_0x1bf9cb['id'])||_0x3e867f['add'](_0x1bf9cb),this['allConnectedUsers']['has'](_0x1bf9cb['id'])||this['allConnectedUsers']['add'](_0x1bf9cb,_0x1bf9cb['isMe']?0x0:void 0x0),this['fire']('sessionAdd:'+_0x47d65b,{'channelId':_0x47d65b,'session':_0x1680a0});}['_handleSessionRemove'](_0x8b36b3,_0x13b2a6){if('connected'!==this['context']['plugins']['get'](c)['state'])return;const _0x11ae36=this['channelConnectedUsers']['get'](_0x8b36b3),_0x222b2c=_0x13b2a6['user'];_0x222b2c['id']&&(this['channelSessions']['get'](_0x8b36b3)['remove'](_0x13b2a6['id']),_0x11ae36['has'](_0x222b2c['id'])&&!this['getUserSessions'](_0x222b2c,_0x8b36b3)['size']&&_0x11ae36['remove'](_0x222b2c['id']),this['allConnectedUsers']['get'](_0x222b2c['id'])&&!this['getUserSessions'](_0x222b2c)['size']&&this['allConnectedUsers']['remove'](_0x222b2c['id']));}['_createUser'](_0x3d62d5,_0x3f21c9){const _0xbc16e0=this['_users']['addUser'](_0x3d62d5);return _0x3f21c9&&this['_users']['defineMe'](_0x3d62d5['id']),_0xbc16e0['orderNumber']=this['_uniqueUsersCount']++,_0xbc16e0;}}class H extends _0x43c3db{['_domEmitter']=new(_0x12f48c())();static get['requires'](){return[i];}static get['pluginName'](){return'UserMarkers';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['init'](){const _0x220c06=this['editor'],_0x345407=_0x220c06['plugins']['get'](i);_0x220c06['conversion']['for']('editingDowncast')['markerToElement']({'model':'user:position','view':(_0x1b5430,{writer:_0x40ffc1})=>function(_0x1d5e72,_0x2c0b10,_0x3f8af7,_0x203aa3){const _0x375e42=_0x1d5e72['markerName']['split'](':')[0x2],_0x45107b=_0x3f8af7['getUserBySessionId'](_0x375e42);if(!_0x45107b||_0x375e42===_0x3f8af7['mySessionId'])return;if(!_0x203aa3['model']['schema']['checkChild'](_0x1d5e72['markerRange']['start'],'$text'))return;const _0x540f6a={'class':'ck-user__marker\x20'+_0x45107b['color']['getMarkerClass'](),'data-name':_0x45107b['name'],'data-session-id':_0x375e42},_0x24826d=_0x203aa3['model']['markers']['get'](_0x1d5e72['markerName']),_0x1f7e6e=_0x24826d['getStart'](),_0x43e2b3=_0x1f7e6e['nodeAfter'],_0x3c993c=_0x203aa3['model']['schema'];if(_0x43e2b3&&_0x3c993c['isObject'](_0x43e2b3)&&_0x3c993c['isInline'](_0x43e2b3)&&!_0x203aa3['model']['markers']['get']('user:range:'+_0x375e42)['getRange']()['isCollapsed'])return;const _0x2bd6df=_0x1f7e6e['parent'];return _0x203aa3['model']['schema']['isLimit'](_0x2bd6df)&&!_0x203aa3['model']['hasContent'](_0x2bd6df)&&(_0x540f6a['contenteditable']=!0x1),function(_0x33023e,_0x308284,_0x58590b){const _0x2a6fc7=_0x33023e['createUIElement']('span',_0x308284);return _0x33023e['setCustomProperty']('userPositionMarker',!0x0,_0x2a6fc7),_0x2a6fc7['render']=function(_0x4355e0){const _0x43be2c=this['toDomElement'](_0x4355e0);return _0x43be2c['innerHTML']='<span\x20class=\x22ck-user__marker-line\x22\x20contenteditable=\x22false\x22><span\x20class=\x22ck-user__marker-dot\x22></span></span><span\x20class=\x22ck-user__marker-tooltip\x22\x20contenteditable=\x22false\x22\x20spellcheck=\x22false\x22>'+_0x58590b['name']+'</span>',_0x43be2c['addEventListener']('mouseenter',()=>{_0x43be2c['classList']['add']('ck-user__marker_hovered');}),_0x43be2c['addEventListener']('mouseleave',()=>{_0x43be2c['classList']['remove']('ck-user__marker_hovered');}),_0x43be2c;},_0x2a6fc7['isSimilar']=function(_0x1fc5bd){return!(!this['getCustomProperty']('userPositionMarker')||!_0x1fc5bd['getCustomProperty']('userPositionMarker')||this['getAttribute']('data-session-id')!=_0x1fc5bd['getAttribute']('data-session-id'));},_0x2a6fc7;}(_0x2c0b10,_0x540f6a,_0x45107b);}(_0x1b5430,_0x40ffc1,_0x345407,_0x220c06)}),_0x220c06['conversion']['for']('editingDowncast')['markerToHighlight']({'model':'user:range','view':_0x28a342=>function(_0x42fef0,_0x15e396){const _0x55c078=_0x42fef0['markerName']['split'](':')[0x2];if(_0x55c078===_0x15e396['mySessionId'])return null;const _0x3e5988=_0x15e396['getUserBySessionId'](_0x55c078);if(!_0x3e5988)return{'id':_0x55c078,'classes':[]};return{'id':_0x55c078,'classes':['ck-user__selection',_0x3e5988['color']['getSelectionClass']()],'attributes':{'data-session-id':_0x55c078},'priority':0x7d0+_0x3e5988['orderNumber']};}(_0x28a342,_0x345407)}),function(_0x104b92){const _0x2ca654=_0x104b92['model'],_0x406c83=new Map(),_0x1b3889=_0x104b92['plugins']['get'](i);_0x2ca654['markers']['on']('update:user:range',(_0x4eb096,_0x436447,_0x1bf976,_0x564a13)=>{if(!_0x564a13&&_0x406c83['get'](_0x436447['name']))return _0x406c83['get'](_0x436447['name'])['detach'](),void _0x406c83['delete'](_0x436447['name']);const _0x18dddc=_0x436447['name']['split'](':')[0x2];if(_0x18dddc===_0x1b3889['mySessionId'])return;const _0x5486eb='user:position:'+_0x18dddc;_0x2ca654['markers']['has'](_0x5486eb)&&_0x104b92['editing']['reconvertMarker'](_0x5486eb),_0x436447['on']('change:range',(_0x5e55d3,_0x2a475b,_0x1b8cf7)=>{if('$graveyard'!=_0x2a475b['root']['rootName']&&'$graveyard'==_0x436447['getRange']()['root']['rootName']&&!_0x406c83['has'](_0x436447['name'])){const _0x469739=_0x2ca654['schema']['getNearestSelectionRange'](_0x1b8cf7['deletionPosition']);if(_0x469739){const _0x170aa3=ht['fromRange'](_0x469739);_0x406c83['set'](_0x436447['name'],_0x170aa3),_0x170aa3['on']('change:range',(_0x4ac983,_0x3c8d7c,_0x20c18b)=>{if('$graveyard'==_0x170aa3['root']['rootName']){const _0x156e76=_0x2ca654['schema']['getNearestSelectionRange'](_0x20c18b['deletionPosition']);_0x156e76?(_0x170aa3['start']=_0x156e76['start'],_0x170aa3['end']=_0x156e76['end']):(_0x406c83['delete'](_0x436447['name']),_0x170aa3['detach']());}});}}});}),_0x2ca654['document']['on']('change',()=>{_0x406c83['size']>0x0&&_0x2ca654['enqueueChange']({'isUndoable':!0x1},_0xc342bf=>{for(const [_0x2efb41,_0x1dc1d5]of _0x406c83)'$graveyard'==_0x2ca654['markers']['get'](_0x2efb41)['getRange']()['root']['rootName']&&(re(_0x2efb41['split'](':')[0x2],_0x1dc1d5['toRange'](),_0x2ca654,_0xc342bf),_0x1dc1d5['detach']());_0x406c83['clear']();});});}(_0x220c06),this['_domEmitter']['listenTo'](_0x504372['document'],'keydown',(_0x1ac72c,{key:_0x58af81})=>{'Escape'===_0x58af81&&function(_0xfc8d08){_0xfc8d08['editing']['view']['change'](_0x10addf=>{for(const _0x2d2de0 of _0xfc8d08['model']['markers']){if(!_0x2d2de0['name']['startsWith']('user:position'))continue;const _0x4bff27=_0xfc8d08['editing']['mapper']['markerNameToElements'](_0x2d2de0['name']);if(_0x4bff27){for(const _0x129a2c of _0x4bff27)_0x10addf['removeClass']('ck-user__marker_hovered',_0x129a2c);}}});}(_0x220c06);},{'useCapture':!0x0});}['afterInit'](){const _0x2944d9=this['editor'],_0x6d7460=_0x2944d9['commands']['get']('undo');_0x6d7460&&_0x2944d9['model']['on']('applyOperation',(_0x161f3d,_0x58fa15)=>{const _0x188c0f=_0x58fa15[0x0];if('marker'!=_0x188c0f['type']||!_0x188c0f['name']['startsWith']('user:'))return;const _0x4d9200=_0x188c0f['batch'];_0x6d7460['_createdBatches']['has'](_0x4d9200)&&(_0x188c0f['newRange']=_0x188c0f['oldRange']?_0x2944d9['model']['createRange'](_0x188c0f['oldRange']['start'],_0x188c0f['oldRange']['end']):null);},{'priority':'highest'});}['destroy'](){return this['_domEmitter']['stopListening'](),super['destroy']();}['createUserMarkerOperations'](){const _0x37607c=this['editor'],_0x27339b=_0x37607c['model']['document'],_0x4f577a=_0x37607c['plugins']['get'](i);_0x37607c['model']['enqueueChange']({'isUndoable':!0x1},_0x451b7d=>{const _0x2da580='user:range:'+_0x4f577a['mySessionId'],_0x4e398b='user:position:'+_0x4f577a['mySessionId'],_0x484d78=_0x37607c['model']['markers']['has'](_0x2da580);_0x37607c['editing']['view']['hasDomSelection']?re(_0x4f577a['mySessionId'],_0x27339b['selection']['getFirstRange'](),_0x37607c['model'],_0x451b7d):_0x484d78&&(_0x451b7d['removeMarker'](_0x2da580),_0x451b7d['removeMarker'](_0x4e398b));});}}function re(_0x23d0c4,_0x5e4528,_0x2743d8,_0x148087){const _0x4c3e4d='user:range:'+_0x23d0c4,_0x2bb800='user:position:'+_0x23d0c4,_0x2b0c5a=_0x5e4528['getContainedElement']();let _0x59a4d2=_0x5e4528['start'];_0x2b0c5a&&_0x2b0c5a['is']('element','tableCell')&&(_0x59a4d2=function(_0x5e5eb1,_0x193edb){for(const _0x46d7cb of _0x5e5eb1['getPositions']())if(_0x193edb['schema']['checkChild'](_0x46d7cb,'$text'))return _0x46d7cb;}(_0x5e4528,_0x2743d8),_0x5e4528=_0x148087['createRange'](_0x59a4d2));const _0x9e890b=_0x148087['createRange'](_0x59a4d2);_0x2743d8['markers']['has'](_0x4c3e4d)?(_0x148087['updateMarker'](_0x4c3e4d,{'range':_0x5e4528}),_0x148087['updateMarker'](_0x2bb800,{'range':_0x9e890b})):(_0x148087['addMarker'](_0x4c3e4d,{'range':_0x5e4528,'usingOperation':!0x0}),_0x148087['addMarker'](_0x2bb800,{'range':_0x9e890b,'usingOperation':!0x0}));}function q(_0x337d9c,_0x20fb52,_0xdb3976){const _0x14fdf4=_0x337d9c['t'],t=_0x337d9c['t'];switch(_0x20fb52){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 _0x14fdf4({'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'},_0xdb3976);default:return'';}}let K=0x1;class l extends _0x43c3db{static ['CollaborativeEditingService']=/* #__PURE__ -- @preserve */
|
|
25
|
-
((()=>_0x5b024c)());['_offset'];['sessionId'];['serverHistory'];['_channelId'];['_service'];['_document'];['_compressor'];['_bufferedOperations'];['_knownOperations'];['_knownRootNames'];['_pendingAction'];['_hasSelectionChanged'];['_sendBufferedOperationsDelayId'];['_baseBufferDelay'];['_currentBufferDelay'];['_lastSyncedOperationId'];['_disconnectionOperations'];['_operationIdentifier'];static get['requires'](){return[c,i,H,_0x3d4151,_0x1ab8ea,_0x4df19c];}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 _0x57410c=this['serverHistory']['getOperations']();for(let _0x434f13=_0x57410c['length']-0x1;_0x434f13>=0x0;_0x434f13--){const _0x267230=_0x57410c[_0x434f13];if(!this['_disconnectionOperations']['has'](_0x267230))return _0x267230['baseVersion']+0x1-this['_offset'];}return 0x0;}constructor(_0x3bc1c3){if(super(_0x3bc1c3),this['_offset']=0x0,this['sessionId']=null,this['serverHistory']=new _0x1ee3da(),this['editor']['config']['define']('collaboration',{}),this['_channelId']=this['editor']['config']['get']('collaboration.channelId'),!this['_channelId'])throw new _0x5d8b9a('collaboration-missing-channelid',this);const _0x13809f=_0x3bc1c3['config']['get']('cloudServices.bundleVersion')||nt;this['_service']=new l['CollaborativeEditingService'](_0x13809f,this['_channelId']),this['_document']=this['editor']['model']['document'],this['_compressor']=new _0xfccb76(),this['_bufferedOperations']=[],this['_knownOperations']=new WeakSet(),this['_knownRootNames']=new Set(),this['set']('_isPendingUpdate',!0x1),this['set']('_hasSynchronizationProblem',!0x1),this['_pendingAction']=null,this['_hasSelectionChanged']=!0x1,this['_sendBufferedOperationsDelayId']=null,this['_baseBufferDelay']=0x12c,this['_currentBufferDelay']=this['_baseBufferDelay'],this['_lastSyncedOperationId']=null,this['_disconnectionOperations']=new WeakSet(),this['_operationIdentifier']=new X(this['_disconnectionOperations']);}['init'](){const _0x41b9fc=this['editor'],_0x3e6037=_0x41b9fc['plugins']['get'](_0x1ab8ea),_0x4254d0=_0x41b9fc['plugins']['get'](c);this['listenTo'](_0x3e6037,'getOperationAuthor',(_0x10f799,_0x24eb6e)=>{const _0x1e5a88=_0x24eb6e[0x0];_0x1e5a88['_authorId']&&(_0x10f799['return']=_0x3e6037['getUser'](_0x1e5a88['_authorId']),_0x10f799['stop']()),null===_0x1e5a88['_authorId']&&(_0x10f799['return']=null,_0x10f799['stop']());},{'priority':'high'}),this['listenTo'](_0x41b9fc['model']['document']['selection'],'change:range',(_0x32fd50,_0x157562)=>{_0x157562['directChange']&&this['_refreshUserSelectionMarkers']();}),this['listenTo'](_0x41b9fc['editing']['view'],'change:hasDomSelection',()=>{this['_refreshUserSelectionMarkers']();}),this['_initThrowingOnDataSet'](),_0x41b9fc['model']['on']('applyOperation',(_0x2c90a0,_0x3eb94d)=>{const _0x2072b4=_0x3eb94d[0x0];_0x2072b4['isDocumentOperation']&&(this['_saveOperationInBuffer'](_0x2072b4),this['_shouldSendUpdate']()&&this['_sendBufferedOperationsDelayed']());}),this['_setUpDataInit'](),this['bind']('_isEditingAllowed')['to'](_0x4254d0,'state',this,'_hasSynchronizationProblem',(_0x483ff7,_0x193a82)=>'connected'===_0x483ff7&&!_0x193a82),this['on']('change:_isEditingAllowed',()=>{this['_isEditingAllowed']?_0x41b9fc['disableReadOnlyMode']('rtc-offline'):_0x41b9fc['enableReadOnlyMode']('rtc-offline');}),this['_isEditingAllowed']?_0x41b9fc['disableReadOnlyMode']('rtc-offline'):_0x41b9fc['enableReadOnlyMode']('rtc-offline'),this['set']('_isConnected',!0x1);}async['reconnect'](){const _0x1b5414=this['editor']['plugins']['get'](i),_0x330f8b=this['editor']['plugins']['get'](c);try{this['_isPendingUpdate']=!0x0,_0x1b5414['unregister'](this['_channelId']);const _0x299ab8=await this['_service']['reconnect'](_0x330f8b['connection'],this['lastSyncVersion']);await this['_handleReconnectionResponse'](_0x299ab8)&&(this['_isPendingUpdate']=!0x1,this['_clearPendingAction']());const _0x1b1c2f=await this['_service']['getConnectedSessions']();_0x1b5414['register'](this['_channelId'],_0x1b1c2f),this['_handleSendingSelectionMarkers'](),this['_isConnected']=!0x0;}catch(_0x1caeb8){if(function(_0x5eecc5){return'404'===_0x5eecc5['code'];}(_0x1caeb8)&&this['sessionId'])await this['_connectAfterSessionHasBeenFlushed']();else{if(function(_0x174227){return'409'===_0x174227['code'];}(_0x1caeb8)){const _0x52b003=q(this['editor']['locale'],'The\x20document\x20cannot\x20be\x20connected\x20back\x20to\x20the\x20server.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.');this['_handleReconnectionError'](_0x52b003);}else{if(!(_0x1caeb8 instanceof J))throw _0x1caeb8;this['_handleReconnectionError']();}}}}['destroy'](){const _0x3c9753=this['editor']['plugins']['get'](c),_0x585075=this['editor']['plugins']['get'](i);this['editor']['enableReadOnlyMode']('rtc-destroyed'),_0x585075['channelSessions']['has'](this['_channelId'])&&_0x585075['unregister'](this['_channelId']),_0x3c9753['removeFromReconnectionStack'](this),this['_disconnectService'](),super['destroy']();}async['_handleReconnectionResponse'](_0x4cbafa){if(this['sessionId']!==_0x4cbafa['sessionId']&&this['_lastSyncedOperationId']!==_0x4cbafa['lastOperationId'])throw new J();return this['sessionId']=_0x4cbafa['sessionId'],this['_handleServerResponse']([],{..._0x4cbafa,'wereChangesApplied':!0x1,'data':_0x4cbafa['data']},'reconnect');}async['_connectService'](_0x2a9395,_0x336380=!0x1){const {connection:_0xa0c8a0}=this['editor']['plugins']['get'](c);l['CollaborativeEditingService']['getConnectedSessions'](_0xa0c8a0,this['_channelId'])['then'](_0x37b1d9=>this['_initSessionsHandling'](_0x37b1d9))['catch'](_0x33ddaf=>{this['_crash']('realtimecollaborationclient-init-session-connection-error',_0x33ddaf);}),this['listenTo'](this['_service'],'operationsReceived',this['_handleReceivedOperations']['bind'](this)),this['listenTo'](this['_service'],'error',(_0x26a608,_0x3333fb)=>{this['_crash']('realtimecollaborationclient-initservice-internal-error',_0x3333fb);}),this['listenTo'](this['_service'],'disconnected',()=>{this['_isConnected']=!0x1;});const _0x42d500=this['_operationIdentifier']['getIdOfTheLastOperation'](_0x2a9395);this['_isPendingUpdate']=!0x0;const _0x26d533=await this['_service']['connect'](_0xa0c8a0,this['_compressOperations'](_0x2a9395),_0x42d500);if(this['sessionId']=_0x26d533['sessionId'],_0x336380){if(!_0x26d533['wereChangesApplied'])return void this['_handleReconnectionError']();this['_isPendingUpdate']=!0x1,this['_clearPendingAction'](),this['serverHistory']['reset'](),this['_offset']=_0x26d533['offset'],this['serverHistory']['version']=this['_offset'],await this['_handleServerResponse'](_0x2a9395,_0x26d533,'reconnection:\x20flushed\x20session');}else await this['_handleInitialConnectionData'](_0x26d533,_0x2a9395);this['_handleSendingSelectionMarkers'](),this['_isConnected']=!0x0;}['_handleSendingSelectionMarkers'](){const _0x2b88e0=this['editor']['plugins']['get'](i),_0x529ff1=this['editor']['plugins']['get'](H),_0x5cd532=_0x2b88e0['channelSessions']['get'](this['_channelId']);_0x5cd532&&_0x5cd532['length']>0x1?_0x529ff1['createUserMarkerOperations']():this['listenTo'](_0x2b88e0,'sessionAdd:'+this['_channelId'],()=>{0x2===_0x2b88e0['channelSessions']['get'](this['_channelId'])['length']&&_0x529ff1['createUserMarkerOperations']();});}async['_handleReceivedOperations'](_0x4f09d4,_0x5044a9,_0x41b517,_0x47476c){if(!this['_isPendingUpdate']&&this['_document']['version']==_0x5044a9){const _0x2d7737=this['_decompressOperations'](_0x41b517,_0x47476c);await this['_fetchMissingUsers'](_0x2d7737),this['_handleExternalOperations'](_0x2d7737,_0x5044a9,_0x41b517['lastOperationId'])||this['_crash']('realtimecollaborationclient-initservice-incorrect-server-operation');}}async['_connectAfterSessionHasBeenFlushed'](){this['_disconnectService']();const {locale:_0x2cb2ab}=this['editor'];let _0x32e6c6;try{_0x32e6c6=await this['_service']['getDocumentDetails']();}catch(_0x4aade6){const _0x360a13=q(_0x2cb2ab,'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'](_0x360a13);}const _0x2af652=_0x32e6c6['currentDocumentSession']||_0x32e6c6['lastDocumentSession'];if(this['_lastSyncedOperationId']===_0x2af652['lastOperationId'])await this['_connectService'](this['editor']['model']['document']['history']['getOperations'](),!0x0);else{const _0x319a99=q(_0x2cb2ab,'The\x20last\x20saved\x20version\x20of\x20the\x20document\x20does\x20not\x20match\x20the\x20local\x20version.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.');this['_handleReconnectionError'](_0x319a99);}}['_disconnectService'](){this['_service']['disconnect'](),this['_bufferedOperations']=[],clearTimeout(this['_sendBufferedOperationsDelayId']),this['stopListening'](this['_service']);}['_initSessionsHandling'](_0x4e494d){const _0x4ea790=this['editor']['plugins']['get'](i);this['listenTo'](_0x4ea790,'sessionAdd:'+this['_channelId'],(_0x335b61,{session:_0x2e52f6})=>{if(_0x2e52f6['id']===_0x4ea790['mySessionId']){_0x335b61['off']();const _0x182dbb=this['editor']['plugins']['has']('CommentsOnly')&&this['editor']['plugins']['get']('CommentsOnly');let _0x47015e=_0x2e52f6['permissions'];_0x182dbb&&_0x182dbb['isEnabled']&&(_0x47015e=_0x47015e['filter'](_0x2bf05a=>'document:write'!==_0x2bf05a)),this['editor']['plugins']['get']('Permissions')['setPermissions'](_0x47015e,this['_channelId']);}}),_0x4ea790['register'](this['_channelId'],_0x4e494d);}['_initThrowingOnDataSet'](){const _0x2507e4=this['editor']['data']['set'];this['editor']['data']['set']=(..._0x28249a)=>{if(!_0x28249a[_0x28249a['length']-0x1]['suppressErrorInCollaboration'])throw new _0x5d8b9a('realtimecollaborationclient-editor-setdata-and-editor-data-set-are-forbidden-in-real-time-collaboration',this);_0x2507e4['apply'](this['editor']['data'],_0x28249a);};}['_setUpDataInit'](){this['editor']['data']['on']('init',(_0x59d96c,[_0x56198e])=>{if(this['_document']['version'])throw new _0x5d8b9a('realtimecollaborationclient-init-document-already-initialized',this);_0x59d96c['stop'](),this['_setPendingAction']();const _0x465e88=this['editor']['config']['get']('rootsAttributes'),_0x103d26=this['_getOperationsFromInitData'](_0x56198e,_0x465e88);0x0==_0x103d26['length']&&_0x103d26['push'](new _0x3bf8d7(0x0)),_0x59d96c['return']=this['_connectService'](_0x103d26)['then'](()=>{this['editor']['plugins']['get'](c)['addToReconnectionStack'](this),this['editor']['data']['fire']('ready');})['catch'](_0x5b5b18=>this['_crash']('realtimecollaborationclient-init-connection-failed',_0x5b5b18))['finally'](()=>this['_clearPendingAction']());},{'priority':'high'}),this['editor']['on']('loadRoot',async(_0x508b15,[_0x417044,_0x1cc7a3])=>{_0x508b15['stop']();const _0x378cbc=this['editor']['model']['document']['getRoot'](_0x417044);if(!this['_knownRootNames']['has'](_0x417044)){const _0x2fc970=_0x1cc7a3&&_0x1cc7a3['data']?_0x1cc7a3['data']:'',_0x4acce9=_0x1cc7a3&&_0x1cc7a3['attributes']?_0x1cc7a3['attributes']:{};await this['_loadRoot'](_0x417044,_0x2fc970,_0x4acce9);}this['editor']['model']['enqueueChange']({'isUndoable':!0x1},()=>{_0x378cbc['_isLoaded']=!0x0,this['editor']['model']['document']['differ']['_bufferRootLoad'](_0x378cbc);});},{'priority':'high'});}async['_fetchMissingUsers'](_0x50ea6){const _0x387b14=this['editor']['plugins']['get'](_0x1ab8ea),{connection:_0x1bdabc}=this['editor']['plugins']['get'](c),_0x38d5d3=new Set();for(const _0x55c187 of _0x50ea6){const _0x463a98=_0x55c187['_authorId'];_0x463a98&&!_0x387b14['getUser'](_0x463a98)&&_0x38d5d3['add'](_0x463a98);}if(0x0===_0x38d5d3['size'])return;const _0x4f256a=await dt['getMany'](_0x1bdabc,Array['from'](_0x38d5d3));for(const _0x15d146 of _0x4f256a)_0x387b14['getUser'](_0x15d146['id'])||_0x387b14['addUser'](_0x15d146);}['_getOperationsFromInitData'](_0x23fca1,_0x13c2fa={}){const _0x17daeb=this['editor']['model'],_0x42379e=[];let _0x3f2c0b=0x0;const _0x56648f='string'==typeof _0x23fca1?{'main':_0x23fca1}:_0x23fca1;for(const _0x3f4311 of Object['keys'](_0x56648f)){if(!this['_document']['roots']['has'](_0x3f4311))throw new _0x5d8b9a('realtimecollaborationclient-init-non-existent-root',this);const _0x37e2a7=this['editor']['data']['parse'](_0x56648f[_0x3f4311]),_0x5012d9=this['_document']['getRoot'](_0x3f4311),_0x32f9af=new _0x5ab76f(_0x17daeb['createPositionAt'](_0x5012d9,0x0),_0x37e2a7,_0x3f2c0b++);_0x42379e['push'](_0x32f9af);for(const [_0xe4ca4f,_0x13bc11]of _0x37e2a7['markers']){const _0x1a7ae7=_0x17daeb['createRange'](_0x17daeb['createPositionFromPath'](_0x5012d9,_0x13bc11['start']['path']['slice']()),_0x17daeb['createPositionFromPath'](_0x5012d9,_0x13bc11['end']['path']['slice']())),_0x46de8c=new _0x4c2122(_0xe4ca4f,null,_0x1a7ae7,_0x17daeb['markers'],!0x0,_0x3f2c0b++);_0x42379e['push'](_0x46de8c);}}if(_0x13c2fa)for(const [_0x2ca7b0,_0x25ee9e]of Object['entries'](_0x13c2fa)){const _0x18c9ab=_0x17daeb['document']['getRoot'](_0x2ca7b0);if(!_0x18c9ab)throw new _0x5d8b9a('multi-root-editor-root-attributes-no-root',null);for(const [_0x4e00fa,_0x463ad3]of Object['entries'](_0x25ee9e))if(null!==_0x463ad3){const _0x4ca155=new _0x10a96a(_0x18c9ab,_0x4e00fa,null,_0x463ad3,_0x3f2c0b++);_0x42379e['push'](_0x4ca155);}}return _0x42379e;}async['_loadRoot'](_0x50f4ed,_0x4be402,_0x3ab08d){this['_getOperationsFromInitData']({[_0x50f4ed]:_0x4be402},{[_0x50f4ed]:_0x3ab08d})['forEach']((_0x1a5679,_0x68daa6)=>{_0x1a5679['baseVersion']=this['_document']['version']+_0x68daa6,_0x1a5679['_isInit']=!0x0,this['_saveOperationInBuffer'](_0x1a5679);}),this['_sendBufferedOperationsDelayed'](),await this['_waitUntilSynced']();}async['_handleInitialConnectionData'](_0x5a3f10,_0x1019fe){let _0x2de16b;this['_offset']=_0x5a3f10['offset'];const _0x45d062=_0x5a3f10['wereChangesApplied']&&!_0x5a3f10['initData'],_0x262084=_0x45d062?0x0:_0x5a3f10['data']['baseVersion'];if(_0x1019fe['forEach'](_0x164584=>{_0x164584['_isInit']=!0x0,_0x164584['createdAt']=_0x5a3f10['sessionCreatedAt'],_0x164584['_authorId']=null;}),_0x45d062)_0x2de16b=_0x1019fe,this['_applyOperationsSet'](_0x2de16b,_0x45d062);else{if(_0x5a3f10['initData']){const _0x4835ce=this['_getOperationsFromInitData'](_0x5a3f10['initData']);this['_document']['history']['version']=-_0x4835ce['length'],_0x4835ce['forEach'](_0x40f1cb=>{_0x40f1cb['baseVersion']-=_0x4835ce['length'],_0x40f1cb['createdAt']=_0x5a3f10['sessionCreatedAt'],_0x40f1cb['_isInit']=!0x0,_0x40f1cb['_authorId']=null;}),this['_applyOperationsSet'](_0x4835ce,!0x0),this['serverHistory']['version']=-_0x4835ce['length']+this['_offset'],this['_updateServerHistory'](_0x4835ce);}this['_document']['history']['version']=_0x262084,_0x2de16b=this['_decompressOperations'](_0x5a3f10['data'],_0x5a3f10['metadata']),await this['_fetchMissingUsers'](_0x2de16b),this['_applyOperationsSet'](_0x2de16b,_0x45d062);}_0x5a3f10['lastOperationId']&&(this['_operationIdentifier']['setIdForTheLastOperation'](_0x2de16b,_0x5a3f10['lastOperationId']),this['_lastSyncedOperationId']=_0x5a3f10['lastOperationId']),this['serverHistory']['version']=_0x262084+this['_offset'],this['_updateServerHistory'](_0x2de16b),_0x1019fe['filter'](_0x5e0478=>{const _0xd1b23a=this['_getAffectedRoot'](_0x5e0478);return _0xd1b23a&&!this['_knownRootNames']['has'](_0xd1b23a);})['forEach']((_0x50dd45,_0xdb4432)=>{_0x50dd45['baseVersion']=this['_document']['version']+_0xdb4432,this['_saveOperationInBuffer'](_0x50dd45);}),this['_shouldSendUpdate']()?(this['_currentBufferDelay']=0x0,this['_sendBufferedOperationsDelayed'](!0x0),await this['_waitUntilSynced']()):(this['_isPendingUpdate']=!0x1,this['_clearPendingAction']());}['_crash'](_0x220844,_0x460129,_0x4d55d1){throw this['_isPendingUpdate']=!0x0,_0x460129&&console['error'](_0x460129),_0x4d55d1&&this['editor']['enableReadOnlyMode']('realtimecollaborationclient-error'),new _0x5d8b9a(_0x220844,this['editor']);}['_saveOperationInBuffer'](_0x11e53a){this['_knownOperations']['has'](_0x11e53a)||(this['_knownOperations']['add'](_0x11e53a),this['_bufferedOperations']['push'](_0x11e53a),this['_pendingAction']||'marker'==_0x11e53a['type']&&!_0x11e53a['affectsData']||this['_setPendingAction']());}['_sendBufferedOperationsDelayed'](_0x3a5133=!0x1){!_0x3a5133&&this['_isPendingUpdate']||(this['_isPendingUpdate']=!0x0,clearTimeout(this['_sendBufferedOperationsDelayId']),this['_sendBufferedOperationsDelayId']=setTimeout(()=>{this['_sendBufferedOperations']()['then'](_0x4680f7=>{_0x4680f7&&(this['_clearPendingAction'](),this['_isPendingUpdate']=!0x1);})['catch'](_0x149cf3=>{this['_clearPendingAction'](),this['_isPendingUpdate']=!0x1,function(_0x1acf91){return _0x1acf91['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x1acf91['message']['startsWith']('cloud-services-internal-error:\x20Collaborative\x20Editing\x20Service\x20is\x20not\x20connected.')||_0x1acf91['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}(_0x149cf3)||this['_crash'](_0x149cf3['message'],_0x149cf3,!0x0);});},this['_currentBufferDelay']));}['_waitUntilSynced'](){return new Promise(_0x2c8fa3=>{this['on']('change:_isPendingUpdate',()=>{_0x2c8fa3();});});}async['_sendBufferedOperations'](){const _0x5e8b89=this['editor']['plugins']['get'](H);if(this['_shouldSendSelectionUpdate']()&&(_0x5e8b89['createUserMarkerOperations'](),this['_hasSelectionChanged']=!0x1),!this['_shouldSendUpdate']())return!0x0;const _0x2004c0=[...this['_bufferedOperations']];for(const _0x385c98 of _0x2004c0)_0x385c98['wasUndone']=this['_document']['history']['isUndoneOperation'](_0x385c98);const _0x320e2f=this['_operationIdentifier']['getIdOfTheLastOperation'](_0x2004c0),_0x528388=K++,_0x5a876c=this['_compressOperations'](_0x2004c0),_0xd653b6=await this['_service']['sendOperations'](_0x5a876c,_0x5a876c['baseVersion'],_0x320e2f);try{return await this['_handleServerResponse'](_0x2004c0,_0xd653b6,_0x528388);}catch(_0x367c5a){return this['_crash']('realtimecollaborationclient-sendbufferedoperations',_0x367c5a);}}async['_handleServerResponse'](_0x1f14b6,_0x277796,_0x1a95bb){if('error'in _0x277796)throw _0x277796['error'];let _0x58ef9d=!0x1;if(_0x277796['wereChangesApplied']){_0x277796['lastOperationId']&&(this['_lastSyncedOperationId']=_0x277796['lastOperationId']),this['_bufferedOperations']=this['_bufferedOperations']['filter'](_0xfc46c9=>!_0x1f14b6['includes'](_0xfc46c9));for(const _0x46e9e7 of _0x1f14b6)_0x46e9e7['createdAt']='lastOperationAcceptedAt'in _0x277796&&_0x277796['lastOperationAcceptedAt']||void 0x0;Q(_0x1f14b6,_0x277796['version']-_0x1f14b6['length']),this['_updateServerHistory'](_0x1f14b6);const _0x14c4e2=_0x1f14b6['filter'](_0x3b2421=>{if(!_0x3b2421['_isInit'])return!0x1;const _0x4ad3c5=this['_getAffectedRoot'](_0x3b2421);return _0x4ad3c5&&!this['_knownRootNames']['has'](_0x4ad3c5);});Q(_0x14c4e2,this['_document']['version']),this['_applyOperationsSet'](_0x14c4e2),_0x58ef9d=!0x0,this['_currentBufferDelay']=this['_baseBufferDelay'];}else{const _0x91cbcb=this['_decompressOperations'](_0x277796['data'],_0x277796['metadata'])['filter'](_0x57d85f=>_0x57d85f['baseVersion']>=this['_lastServerVersion']);_0x91cbcb['forEach'](_0x3d22b8=>this['_addKnownRoot'](_0x3d22b8)),this['_bufferedOperations']=this['_bufferedOperations']['filter'](_0x2512eb=>!_0x2512eb['_isInit']||!this['_knownRootNames']['has'](this['_getAffectedRoot'](_0x2512eb))),this['_bufferedOperations']['length']&&Q(this['_bufferedOperations'],this['_bufferedOperations'][0x0]['baseVersion']),await this['_fetchMissingUsers'](_0x91cbcb),_0x58ef9d=this['_handleExternalOperations'](_0x91cbcb,_0x277796['version'],_0x277796['lastOperationId']),this['_currentBufferDelay']=Math['round'](this['_currentBufferDelay']/0x2);}return _0x58ef9d?!this['_shouldSendUpdate']()||(this['_sendBufferedOperationsDelayed'](!0x0),!0x1):this['_crash']('realtimecollaborationclient-handleserverresponse');}['_handleExternalOperations'](_0x410ad9,_0x5349c9,_0x588246){try{const _0x364cfb={'document':this['_document'],'useRelations':!0x1,'padWithNoOps':!0x0},{operationsA:_0x296f6c,operationsB:_0x24d8d7,originalOperations:_0xf4981d}=_0x12ee36(_0x410ad9,this['_bufferedOperations'],_0x364cfb);Q(_0x296f6c,this['_document']['version']),Q(_0x24d8d7,_0x5349c9);for(const _0x3af0c4 of _0x296f6c){const _0x157349=_0xf4981d['get'](_0x3af0c4);_0x3af0c4['_authorId']=_0x157349?_0x157349['_authorId']:null;}_0x588246&&(this['_operationIdentifier']['setIdForTheLastOperation'](_0x410ad9,_0x588246),this['_lastSyncedOperationId']=_0x588246),this['_bufferedOperations']=[..._0x24d8d7],this['_applyOperationsSet'](_0x296f6c),this['_updateServerHistory'](_0x410ad9);}catch(_0x22ae56){return console['error'](_0x22ae56),!0x1;}return!0x0;}['_applyOperationsSet'](_0x214681,_0x23a8f5=!0x1){this['editor']['model']['enqueueChange']({'isUndoable':!0x1,'isLocal':!0x1},_0x4c9e26=>{for(const _0xb3a221 of _0x214681)this['_knownOperations']['add'](_0xb3a221),this['_addKnownRoot'](_0xb3a221),_0x4c9e26['batch']['addOperation'](_0xb3a221),this['editor']['model']['applyOperation'](_0xb3a221);});}['_addKnownRoot'](_0x2ad508){const _0x588dff=this['_getAffectedRoot'](_0x2ad508);_0x588dff&&this['_knownRootNames']['add'](_0x588dff);}['_getAffectedRoot'](_0x42f27e){let _0x3c869a,_0x217297;switch(_0x42f27e['type']){case'insert':_0x3c869a=_0x42f27e['position']['root'];break;case'marker':if(_0x217297=_0x42f27e['newRange'],!_0x217297)return null;_0x3c869a=_0x217297['root'];break;case'addRootAttribute':_0x3c869a=_0x42f27e['root'];break;case'addRoot':_0x3c869a=_0x42f27e['affectedSelectable'];break;case'move':_0x3c869a=_0x42f27e['targetPosition']['root'];break;default:return null;}return _0x3c869a['rootName'];}['_updateServerHistory'](_0x3363f7){_0x3363f7['forEach'](_0x59b6fb=>{const _0x28aed8=_0x59b6fb['clone']();_0x28aed8['_authorId']=_0x59b6fb['_authorId'],_0x28aed8['_isInit']=!!_0x59b6fb['_isInit'],_0x28aed8['createdAt']=_0x59b6fb['createdAt'],_0x28aed8['baseVersion']+=this['_offset'],_0x59b6fb['_isDisconnection']&&this['_disconnectionOperations']['add'](_0x28aed8),this['serverHistory']['addOperation'](_0x28aed8);});}['_handleReconnectionError'](_0x26229e){const _0x3549f3=this['editor']['plugins']['get']('Notification'),_0x43238e=this['editor']['locale'];_0x26229e||(_0x26229e=q(_0x43238e,'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.')),_0x3549f3['showWarning'](_0x26229e,{'title':q(_0x43238e,'Synchronization\x20issue'),'namespace':'real-time-collaboration'}),this['_hasSynchronizationProblem']=!0x0,clearTimeout(this['_sendBufferedOperationsDelayId']),this['_bufferedOperations']=[],this['editor']['plugins']['get'](c)['destroy']();}['_setPendingAction'](){this['_pendingAction']||(this['_pendingAction']=this['editor']['plugins']['get'](_0x3d4151)['add'](q(this['editor']['locale'],'PENDING_ACTION_SENDING_DATA')));}['_clearPendingAction'](){this['_pendingAction']&&(this['editor']['plugins']['get'](_0x3d4151)['remove'](this['_pendingAction']),this['_pendingAction']=null);}['_compressOperations'](_0x3c7c64){const _0x4747fa=_0x3c7c64['map'](_0x4134f5=>_0x4134f5['toJSON']());return this['_compressor']['compress'](_0x4747fa);}['_decompressOperations'](_0x120020,_0x446062){return this['_compressor']['decompress'](_0x120020)['map']((_0x50e66b,_0x6a0698)=>{const _0x5b1ab9='init'==_0x446062[_0x6a0698]['type'];if('InsertOperation'==_0x50e66b['__className']){const _0x2f71ea=_0x50e66b['position']['root'];!this['_document']['getRoot'](_0x2f71ea)&&(this['_document']['createRoot']('$root',_0x2f71ea)['_isAttached']=!0x1);}const _0x22f0b9=_0x33c4af['fromJSON'](_0x50e66b,this['_document']);return _0x22f0b9['wasUndone']=_0x50e66b['wasUndone'],_0x22f0b9['_isInit']=_0x5b1ab9,_0x22f0b9['_authorId']=_0x5b1ab9?null:_0x446062[_0x6a0698]['userId'],_0x22f0b9['_isDisconnection']='cs:removeUser'===_0x446062[_0x6a0698]['type'],_0x22f0b9['createdAt']=_0x446062[_0x6a0698]['createdAt'],_0x22f0b9;});}['_refreshUserSelectionMarkers'](){this['_hasSelectionChanged']=!0x0,this['_shouldSendSelectionUpdate']()?this['_sendBufferedOperationsDelayed']():this['_hasSelectionChanged']=!0x1;}['_shouldSendSelectionUpdate'](){const _0x568b11=this['editor']['plugins']['get'](i)['channelSessions']['get'](this['_channelId']);return!this['editor']['isReadOnly']&&!!_0x568b11&&_0x568b11['length']>0x1&&this['_hasSelectionChanged'];}['_shouldSendUpdate'](){return this['_bufferedOperations']['length']>0x0||this['_shouldSendSelectionUpdate']();}}class J extends Error{}function Q(_0x1ee079,_0x137c94){for(const _0x4858aa of _0x1ee079)_0x4858aa['baseVersion']=_0x137c94++;}class X{['_ignoredOperations'];['_operationToId'];constructor(_0x33b5ce){this['_ignoredOperations']=_0x33b5ce,this['_operationToId']=new WeakMap();}['getIdOfTheLastOperation'](_0x8ffdeb){let _0x488d28=_0x8ffdeb['length'];for(;_0x488d28--;){const _0x4dc454=_0x8ffdeb[_0x488d28];if(!this['_ignoredOperations']['has'](_0x4dc454)){if(!this['_operationToId']['has'](_0x4dc454)){const _0x343840=_0x32829f()['slice'](0x1,0x12);this['_operationToId']['set'](_0x4dc454,_0x343840);}return this['_operationToId']['get'](_0x4dc454);}}}['setIdForTheLastOperation'](_0x24d77d,_0x18550e){if(!_0x18550e)return;let _0x27bb9c=_0x24d77d['length'];for(;_0x27bb9c--;){const _0x69843c=_0x24d77d[_0x27bb9c];this['_ignoredOperations']['has'](_0x69843c)||this['_operationToId']['set'](_0x69843c,_0x18550e);}}}class n extends _0x43c3db{static get['requires'](){return[l];}static get['pluginName'](){return'RealTimeCollaborativeEditing';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}class a extends _0x177b39{static ['CommentsService']=/* #__PURE__ -- @preserve */
|
|
26
|
-
((()=>_0x2c8285)());['_services'];static get['requires'](){return[c,'CommentsRepository',i,_0x1ab8ea];}static get['pluginName'](){return'CloudServicesCommentsAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x5e73fa){super(_0x5e73fa),this['_services']=new Map();}async['init'](){const _0x513de0=this['context'],_0x4d6030=_0x513de0['plugins']['get']('CommentsRepository');if(_0x513de0['plugins']['get'](c)['addToReconnectionStack'](this),_0x4d6030['adapter']={'addCommentThread':async({channelId:_0x4f8b9b,threadId:_0x1e7f72,comments:_0x3af991,resolvedAt:_0x499fe4,resolvedBy:_0x2f7aad,context:_0x4137d6,attributes:_0x5054a3})=>{const _0x4c0cbb=await this['_getService'](_0x4f8b9b)['addCommentThread']({'commentThreadId':_0x1e7f72,'comments':_0x3af991['map'](_0x1f1b82=>function(_0x1581b9,_0xd7c837,_0x48f144){return{'commentThreadId':_0x48f144,'commentId':_0x1581b9['commentId'],'userId':_0x1581b9['authorId'],'content':_0x1581b9['content'],'documentId':_0xd7c837,'createdAt':_0x1581b9['createdAt'],'attributes':_0x1581b9['attributes']||{}};}(_0x1f1b82,_0x4f8b9b,_0x1e7f72)),'resolvedAt':_0x499fe4,'resolvedBy':_0x2f7aad,'context':_0x4137d6,'attributes':_0x5054a3})['catch'](ut);return{'threadId':_0x4c0cbb['commentThreadId'],'comments':_0x4c0cbb['comments']};},'getCommentThread':async({channelId:_0x162fd7,threadId:_0x3eb324})=>{const _0xcb72d8=await this['_getService'](_0x162fd7)['getCommentThread'](_0x3eb324)['catch'](ut);return _0xcb72d8['deletedAt']?null:(await this['_fetchMissingUsersForThreads']([_0xcb72d8]),{'threadId':_0xcb72d8['commentThreadId'],'comments':_0xcb72d8['comments']['map'](S),'context':_0xcb72d8['context'],'resolvedAt':_0xcb72d8['resolvedAt'],'resolvedBy':_0xcb72d8['resolvedBy'],'attributes':_0xcb72d8['attributes']||{}});},'updateCommentThread':async({channelId:_0x475a25,threadId:_0x2898a8,context:_0x1c7e32,unlinkedAt:_0x5a55f0,attributes:_0x214132})=>this['_getService'](_0x475a25)['updateCommentThread']({'commentThreadId':_0x2898a8,'context':_0x1c7e32,'attributes':_0x214132,'unlinkedAt':_0x5a55f0})['catch'](B)['catch'](ut),'resolveCommentThread':async({channelId:_0x1203e6,threadId:_0x570ac6})=>{const _0x12d89c=await this['_getService'](_0x1203e6)['resolveCommentThread'](_0x570ac6)['catch'](B)['catch'](ut);return{'threadId':_0x12d89c['commentThreadId'],'resolvedAt':_0x12d89c['resolvedAt'],'resolvedBy':_0x12d89c['resolvedBy']};},'reopenCommentThread':async({channelId:_0x30a662,threadId:_0x4f664e})=>this['_getService'](_0x30a662)['reopenCommentThread'](_0x4f664e)['catch'](B)['catch'](ut),'removeCommentThread':({channelId:_0x1f9aee,threadId:_0x140452})=>this['_getService'](_0x1f9aee)['removeCommentThread'](_0x140452)['catch'](B)['catch'](ut),'addComment':({channelId:_0x1ea914,threadId:_0xca7f95,commentId:_0x39389d,content:_0x5c4817,attributes:_0x3e3d60})=>this['_getService'](_0x1ea914)['addComment'](_0xca7f95,_0x39389d,_0x5c4817,_0x3e3d60)['catch'](ut),'updateComment':({channelId:_0x3699a9,threadId:_0x27daff,commentId:_0x4ceb0c,content:_0x315b95,attributes:_0xc733ec})=>this['_getService'](_0x3699a9)['updateComment'](_0x27daff,_0x4ceb0c,_0x315b95,_0xc733ec)['catch'](B)['catch'](ut),'removeComment':({channelId:_0x38b640,threadId:_0x389086,commentId:_0x7e91e2})=>this['_getService'](_0x38b640)['removeComment'](_0x389086,_0x7e91e2)['catch'](B)['catch'](ut)},_0x513de0 instanceof _0x9c56a2){const _0x17a4a2=_0x513de0['config']['get']('collaboration.channelId'),_0x553ca9=_0x513de0['plugins']['get'](i);await this['_setUpService'](_0x17a4a2);const _0x31ec78=await this['_services']['get'](_0x17a4a2)['getConnectedSessions']();this['listenTo'](_0x553ca9,'sessionAdd:'+_0x17a4a2,(_0x1b7ed3,{session:_0x353ef3})=>{_0x353ef3['id']===_0x553ca9['mySessionId']&&(_0x1b7ed3['off'](),this['context']['plugins']['get']('Permissions')['setPermissions'](_0x353ef3['permissions'],_0x17a4a2));}),_0x553ca9['register'](_0x17a4a2,_0x31ec78);}}async['_setUpService'](_0x492fb9){if(this['_services']['has'](_0x492fb9))throw new _0x5d8b9a('cloudservicescommentsadapter-connect-already-connected',null,{'channelId':_0x492fb9});const _0x2fd74f=this['context']['plugins']['get']('CommentsRepository'),_0x327a1e=new a['CommentsService'](_0x492fb9);this['_services']['set'](_0x492fb9,_0x327a1e),this['listenTo'](_0x327a1e,'commentThreadAdded',(_0x8b7264,_0x386777)=>{const {commentThreadId:_0x18165f,documentId:_0x29734f,context:_0x59f185,attributes:_0x17c47a,resolvedAt:_0x1e8b08,resolvedBy:_0x4debc5,comments:_0x2e1f5a}=_0x386777;_0x2fd74f['getCommentThread'](_0x18165f)||_0x2fd74f['addCommentThread']({'threadId':_0x18165f,'channelId':_0x29734f,'comments':_0x2e1f5a?_0x2e1f5a['map'](S):[],'context':_0x59f185,'attributes':_0x17c47a,'resolvedAt':_0x1e8b08,'resolvedBy':_0x4debc5,'isFromAdapter':!0x0});}),this['listenTo'](_0x327a1e,'commentThreadUpdated',(_0x5c3dd0,{commentThreadId:_0x2b5f9d,documentId:_0x2725d1,context:_0x4a8ebe,unlinkedAt:_0x56d252,attributes:_0x2c308a})=>{_0x2fd74f['getCommentThread'](_0x2b5f9d)&&_0x2fd74f['updateCommentThread']({'threadId':_0x2b5f9d,'channelId':_0x2725d1,'context':_0x4a8ebe,'unlinkedAt':_0x56d252,'attributes':_0x2c308a,'isFromAdapter':!0x0});}),this['listenTo'](_0x327a1e,'commentThreadResolved',(_0x2ab54d,{commentThreadId:_0x285a31,resolvedBy:_0x462b18,resolvedAt:_0x1b69f5})=>{const _0x195388=_0x2fd74f['getCommentThread'](_0x285a31);_0x195388&&_0x195388['resolve']({'resolvedBy':_0x462b18,'resolvedAt':_0x1b69f5,'isFromAdapter':!0x0});}),this['listenTo'](_0x327a1e,'commentThreadReopened',(_0x250282,{commentThreadId:_0x3a9a87})=>{const _0x4bce44=_0x2fd74f['getCommentThread'](_0x3a9a87);_0x4bce44&&_0x4bce44['reopen']({'isFromAdapter':!0x0});}),this['listenTo'](_0x327a1e,'commentThreadRemoved',(_0x2e2436,{commentThreadId:_0x4c0551})=>{const _0x59dc16=_0x2fd74f['getCommentThread'](_0x4c0551);_0x59dc16&&_0x59dc16['remove']({'isFromAdapter':!0x0});}),this['listenTo'](_0x327a1e,'commentAdded',(_0x1fb0e,_0x67c11c)=>{const _0x9733a0=_0x67c11c['commentThreadId'],_0x1d3d46=_0x2fd74f['getCommentThread'](_0x9733a0);_0x1d3d46&&_0x1d3d46['addComment']({...S(_0x67c11c),'isFromAdapter':!0x0});}),this['listenTo'](_0x327a1e,'commentUpdated',(_0x4cb034,{commentThreadId:_0x230ff,commentId:_0x42c329,content:_0x386b6b,attributes:_0x70f918})=>{const _0x3a50fb=_0x2fd74f['getCommentThread'](_0x230ff);if(_0x3a50fb){const _0x34c810=_0x3a50fb['getComment'](_0x42c329);_0x34c810&&_0x34c810['update']({'content':_0x386b6b,'attributes':_0x70f918,'isFromAdapter':!0x0});}}),this['listenTo'](_0x327a1e,'commentRemoved',(_0x14b0eb,{commentThreadId:_0x1b59fb,commentId:_0x7d6209})=>{const _0x42b3ec=_0x2fd74f['getCommentThread'](_0x1b59fb);if(_0x42b3ec){const _0x488c5e=_0x42b3ec['getComment'](_0x7d6209);_0x488c5e&&_0x488c5e['remove']({'isFromAdapter':!0x0});}}),await this['_connectService'](_0x492fb9);}['destroy'](){if(this['context']instanceof _0x9c56a2){const _0x57f4e4=this['context']['config']['get']('collaboration.channelId');this['_terminateService'](_0x57f4e4);}}['_terminateService'](_0x5a137b){if(!this['_services']['has'](_0x5a137b))throw new _0x5d8b9a('cloudservicescommentsadapter-disconnect-not-exist',null,{'channelId':_0x5a137b});this['_getService'](_0x5a137b)['disconnect'](),this['_services']['delete'](_0x5a137b);}async['reconnect'](){for(const _0x2c6da1 of this['_services']['keys']())await this['_connectService'](_0x2c6da1);if(this['context']instanceof _0x9c56a2){const _0x2a80b5=this['context']['config']['get']('collaboration.channelId'),_0x1c5d47=this['context']['plugins']['get'](i);_0x1c5d47['unregister'](_0x2a80b5);const _0x541499=await this['_services']['get'](_0x2a80b5)['getConnectedSessions']();_0x1c5d47['register'](_0x2a80b5,_0x541499);}}async['_connectService'](_0x1e2aa0){const {connection:_0x41e18b}=this['context']['plugins']['get'](c),_0x8dc63=this['context']['plugins']['get']('CommentsRepository'),_0x5b9ed1=this['_services']['get'](_0x1e2aa0),_0x5de4d9=await _0x5b9ed1['connect'](_0x41e18b);await this['_fetchMissingUsersForThreads'](_0x5de4d9);const _0x5176e8=new Set(Array['from'](_0x8dc63['getCommentThreads']({'channelId':_0x1e2aa0}),_0x2794c6=>_0x2794c6['id']));for(const _0x186f0c of _0x5de4d9)_0x186f0c['deletedAt']||_0x5176e8['delete'](_0x186f0c['commentThreadId']);for(const _0x4ff7b0 of _0x5176e8)_0x8dc63['getCommentThread'](_0x4ff7b0)['remove']({'isFromAdapter':!0x0});for(const _0x443605 of _0x5de4d9){let _0x4fcbbc=_0x8dc63['getCommentThread'](_0x443605['commentThreadId']);const {commentThreadId:_0x6fcdc6,context:_0xe50cd1,attributes:_0x28f58e,resolvedBy:_0x21536f,resolvedAt:_0x3054be,unlinkedAt:_0xb0993a,deletedAt:_0xc5fa14}=_0x443605;if(_0xc5fa14)continue;_0x4fcbbc||(_0x4fcbbc=_0x8dc63['addCommentThread']({'channelId':_0x1e2aa0,'threadId':_0x6fcdc6,'context':_0xe50cd1,'attributes':_0x28f58e||{},'resolvedBy':_0x21536f,'resolvedAt':_0x3054be,'unlinkedAt':_0xb0993a,'isFromAdapter':!0x0}));const _0x15ac63=new Set(Array['from'](_0x4fcbbc['comments'],_0x11f068=>_0x11f068['id']));for(const _0x4a1f65 of _0x443605['comments'])_0x15ac63['delete'](_0x4a1f65['commentId']);for(const _0x273519 of _0x15ac63)_0x4fcbbc['getComment'](_0x273519)['remove']({'isFromAdapter':!0x0});for(const _0x2da070 of _0x443605['comments']){const _0x4b3ade=_0x4fcbbc['getComment'](_0x2da070['commentId']);_0x4b3ade?_0x4b3ade['content']!==_0x2da070['content']&&_0x4b3ade['update']({'content':_0x2da070['content'],'isFromAdapter':!0x0}):_0x4fcbbc['addComment'](Object['assign'](S(_0x2da070),{'isFromAdapter':!0x0}));}}}['_getService'](_0x51b2fb){if(!this['_services']['has'](_0x51b2fb))throw new _0x5d8b9a('cloudservicescommentsadapter-service-not-exist',null,{'channelId':_0x51b2fb});return this['_services']['get'](_0x51b2fb);}async['_fetchMissingUsersForThreads'](_0x39243e){const _0x30068c=this['context']['plugins']['get'](_0x1ab8ea),{connection:_0x3ea921}=this['context']['plugins']['get'](c),_0x45e072=new Set();for(const {resolvedBy:_0x37f5dc,comments:_0x20a102}of _0x39243e){_0x37f5dc&&!_0x30068c['getUser'](_0x37f5dc)&&_0x45e072['add'](_0x37f5dc);for(const {userId:_0xa4d2cc}of _0x20a102)_0x30068c['getUser'](_0xa4d2cc)||_0x45e072['add'](_0xa4d2cc);}if(0x0===_0x45e072['size'])return;const _0xd09dd4=await dt['getMany'](_0x3ea921,Array['from'](_0x45e072));for(const _0x18add1 of _0xd09dd4)_0x30068c['getUser'](_0x18add1['id'])||_0x30068c['addUser'](_0x18add1);}}async function B(_0x145941){if('404'!==_0x145941['code'])throw _0x145941;}function ut(_0x242074){if((_0x59a997=_0x242074)['message']['startsWith']('cloud-services-internal-error:\x20Comments\x20Service\x20is\x20not\x20connected.')||_0x59a997['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x59a997['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.'))return new Promise(()=>{});var _0x59a997;throw _0x242074;}function S(_0x460649){return{'threadId':_0x460649['commentThreadId'],'commentId':_0x460649['commentId'],'content':_0x460649['content'],'createdAt':_0x460649['createdAt'],'authorId':_0x460649['userId'],'attributes':_0x460649['attributes']||{}};}class f extends _0x43c3db{static ['TrackChangesService']=/* #__PURE__ -- @preserve */
|
|
27
|
-
((()=>
|
|
28
|
-
((()=>it)());['_lastRequestId'];['_revisionTracker'];['_revisionHistoryService'];['_oldOffset'];static get['requires'](){return[c,l,'RevisionTracker',i,_0x1ab8ea];}static get['pluginName'](){return'CloudServicesRevisionHistoryAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0xac177f){super(_0xac177f);const _0x3e6748=this['editor']['config']['get']('collaboration.channelId');this['_lastRequestId']=null,this['_revisionTracker']=this['editor']['plugins']['get']('RevisionTracker'),this['_revisionHistoryService']=new u['RevisionHistoryService'](_0x3e6748);}async['init'](){const _0x1efeeb=this['editor']['plugins']['get'](l),_0x474c81=_0x1efeeb['serverHistory'],_0x5185ae=this['editor']['plugins']['get'](c);this['_revisionTracker']['setSource']({'history':_0x474c81,'getLatestVersion':()=>this['_getLatestVersion'](),'getCurrentRevisionId':()=>_0x1efeeb['sessionId']});const _0x3c97eb=this['editor']['config']['get']('cloudServices.bundleVersion')||nt,_0x7ba7e2=await tt['isBundleUploaded'](_0x5185ae['connection'],_0x3c97eb);this['_revisionTracker']['adapter']={'getRevision':async({revisionId:_0x489219})=>(await this['_waitForServiceReady'](),await this['_revisionHistoryService']['getRevision'](_0x489219)),'updateRevisions':async _0x198238=>{await this['_waitForServiceReady']();const _0x3de3ef=this['_revisionTracker']['currentRevision'];if(_0x7ba7e2&&0x1===_0x198238['length']&&_0x198238[0x0]['id']===_0x3de3ef['id'])return _0x198238;for(const _0x3425d4 of _0x198238)_0x3425d4['id']===_0x3de3ef['id']&&(_0x3425d4['isEmptyCurrent']=_0x3425d4['fromVersion']===_0x3425d4['toVersion']);return this['_revisionHistoryService']['updateRevisions'](_0x198238,this['_lastRequestId'])['then'](_0x142054=>(this['_lastRequestId']=_0x142054,_0x198238))['catch'](_0x4bf5c7=>{if(st(_0x4bf5c7)||'400'===_0x4bf5c7['code']&&void 0x0!==_0x4bf5c7['data']['wrongRequestId']){for(const _0x50d260 of _0x198238){!this['_revisionTracker']['repository']['getRevision'](_0x50d260['id'])||this['_revisionTracker']['_bufferUpdate'](_0x50d260['id'],_0x50d260,!0x1);}if(st(_0x4bf5c7))throw _0x4bf5c7;return _0x198238;}throw _0x4bf5c7;});}},this['listenTo'](this['_revisionHistoryService'],'revisionsUpdated',(_0xc40968,{revisionsData:_0x39eb86,requestId:_0x219e2f})=>{Math['max'](..._0x39eb86['map'](_0x520110=>_0x520110['toVersion']))>this['_getLatestVersionFromServerOperations']()-0x1?this['_getLatestVersion']()['then'](()=>{this['_handleRevisionsUpdate'](_0x39eb86,_0x219e2f);}):this['_handleRevisionsUpdate'](_0x39eb86,_0x219e2f);});const {revisions:_0x4dc0d9,requestId:_0x3a740a}=await this['_revisionHistoryService']['connect'](_0x5185ae['connection']);_0x5185ae['addToReconnectionStack'](this),this['_lastRequestId']=_0x3a740a,await this['_fetchMissingUsers'](_0x4dc0d9);for(const _0x58a138 of _0x4dc0d9)this['_revisionTracker']['addRevisionData'](_0x58a138);this['listenTo'](_0x1efeeb,'change:_isConnected',(_0x26140a,_0x234ec0,_0x500a37)=>{_0x500a37&&(this['_oldOffset']=_0x1efeeb['_offset'],_0x26140a['off']());}),this['_revisionTracker']['bind']('isEnabled')['to'](_0x5185ae,'state',_0x465ed4=>_0x465ed4===_0x5957c6['CONNECTED']);}async['reconnect'](){const _0xbb42ee=this['editor']['plugins']['get'](c),_0x158685=this['editor']['plugins']['get'](l),_0x4d73ee=async()=>{const _0x3a4c24=this['_revisionTracker']['currentRevision'],_0x3920f1=_0x3a4c24['id'],_0x162e19=_0x3920f1!==_0x158685['sessionId'];if(_0x162e19){const _0x35aa7=_0x158685['_offset']-this['_oldOffset'],_0x1401f5=this['_getLatestVersionFromServerOperations']();this['_revisionTracker']['_revisionDataBuilder']['reInit']();if(_0x3a4c24['toVersion']+_0x35aa7!==_0x1401f5){const _0x319e07=_0x3a4c24['fromVersion']+_0x35aa7,_0x21face=this['editor']['plugins']['get'](_0x1ab8ea),_0x555e7c=this['_revisionTracker']['buildRevisionData']({'revision':_0x3a4c24,'from':_0x319e07,'to':_0x1401f5});_0x555e7c['id']=_0x3a4c24['id'];const _0x11d660=_0x555e7c['authorsIds']['map'](_0x367815=>_0x21face['getUser'](_0x367815));_0x3a4c24['_update']({..._0x555e7c,'authors':_0x11d660},!0x0),this['_revisionTracker']['_bufferUpdate'](_0x3a4c24['id'],_0x555e7c,!0x0);}this['_revisionTracker']['_startingVersion']=_0x1401f5,(_0x3a4c24['toVersion']===_0x3a4c24['fromVersion']&&!this['_revisionTracker']['_bufferedUpdates']['has'](_0x3920f1)&&this['_revisionTracker']['repository']['_revisions']['remove'](_0x3920f1),this['_revisionTracker']['_createCurrentRevision'](_0x1401f5));}const {revisions:_0x20842a,requestId:_0xced13b}=await this['_revisionHistoryService']['reconnect'](_0xbb42ee['connection'],this['_lastRequestId']);_0x162e19&&_0x20842a['length']>0x0?_0x158685['_handleReconnectionError']():(await this['_fetchMissingUsers'](_0x20842a),this['_handleRevisionsUpdate'](_0x20842a,_0xced13b),this['_revisionTracker']['sendBufferedUpdates']());};return _0x158685['_isConnected']?_0x4d73ee():new Promise((_0x56ec0a,_0x328a9e)=>{_0x158685['once']('change:_isConnected',()=>{_0x4d73ee()['then'](_0x56ec0a)['catch'](_0x328a9e);});});}['destroy'](){super['destroy']();}async['_waitForServiceReady'](){this['_revisionHistoryService']['isConnected']||await new Promise(_0x50e9e1=>{this['listenTo'](this['_revisionHistoryService'],'connected',_0x1bdf83=>{_0x1bdf83['off'](),_0x50e9e1();});});}['_getLatestVersionFromServerOperations'](){const _0x1cbb31=this['editor']['plugins']['get'](l)['serverHistory']['getOperations']()['reverse']();for(const _0x3f7fd9 of _0x1cbb31)if('marker'!==_0x3f7fd9['type']||_0x3f7fd9['affectsData'])return _0x3f7fd9['baseVersion']+0x1;}['_getLatestVersion'](){const _0x152828=this['editor']['plugins']['get'](l);return new Promise(_0x13eb6b=>{_0x152828['_isPendingUpdate']?_0x152828['once']('change:_isPendingUpdate',()=>{_0x13eb6b(this['_getLatestVersionFromServerOperations']());}):_0x13eb6b(this['_getLatestVersionFromServerOperations']());});}['_handleRevisionsUpdate'](_0x1f111c,_0x1c01ce){const _0xeab0f2=this['_revisionTracker']['repository'];this['_lastRequestId']=_0x1c01ce;for(const _0x382310 of _0x1f111c){const _0x238ad0=_0xeab0f2['getRevision'](_0x382310['id']);if(_0x238ad0){if((_0x382310['fromVersion']||_0x382310['toVersion'])&&(_0x382310['diffData']=null),_0x238ad0===this['_revisionTracker']['currentRevision']){const _0x1d0cf7=Math['max'](_0x238ad0['toVersion'],_0x382310['toVersion']),_0x482e94=Math['max'](_0x238ad0['fromVersion'],_0x382310['fromVersion']);let _0x3aca91;_0x238ad0['toVersion']===_0x382310['toVersion']&&_0x238ad0['fromVersion']===_0x382310['fromVersion']?(_0x3aca91=!0x0,this['_preventResendingRevisionData'](_0x382310)):_0x382310['toVersion']===_0x1d0cf7&&_0x382310['fromVersion']===_0x482e94?_0x3aca91=!0x1:(_0x238ad0['toVersion']===_0x1d0cf7&&_0x238ad0['fromVersion']===_0x482e94||this['_fixRevision']({'revision':_0x238ad0,'from':_0x482e94,'to':_0x1d0cf7}),_0x3aca91=!0x0),_0x3aca91&&(delete _0x382310['fromVersion'],delete _0x382310['toVersion'],delete _0x382310['diffData'],delete _0x382310['createdAt'],delete _0x382310['authorsIds']);}this['_revisionTracker']['setRevisionData'](_0x382310),this['_preventResendingRevisionData'](_0x382310);}else this['_revisionTracker']['addRevisionData'](_0x382310);}const _0x19607d=_0xeab0f2['getRevisions']();_0x19607d['reverse']();for(let _0x29121d=0x0;_0x29121d<_0x19607d['length']-0x1;_0x29121d++){const _0x5622de=_0x19607d[_0x29121d],_0x3d83bd=_0x19607d[_0x29121d+0x1];if(_0x5622de['fromVersion']<_0x3d83bd['toVersion']){const _0x41c75d=_0x3d83bd['toVersion'],_0x15223f=Math['max'](_0x41c75d,_0x5622de['toVersion']);this['_fixRevision']({'revision':_0x5622de,'from':_0x41c75d,'to':_0x15223f});}}}['_fixRevision']({revision:_0x2c569d,from:_0x5126c0,to:_0x36ddc6}={}){const _0x4437c0=this['editor']['plugins']['get'](_0x1ab8ea),_0x3f5b85=this['_revisionTracker']['buildRevisionData']({'revision':_0x2c569d,'from':_0x5126c0,'to':_0x36ddc6});_0x3f5b85['authors']=_0x3f5b85['authorsIds']['map'](_0x77285c=>_0x4437c0['getUser'](_0x77285c)),_0x2c569d['_update'](_0x3f5b85);}['_preventResendingRevisionData'](_0x4ba531){const _0x15e610={};_0x15e610['id']=_0x4ba531['id'];for(const _0x1599df of Object['keys'](_0x4ba531))'id'!==_0x1599df&&(_0x15e610[_0x1599df]=void 0x0);this['_revisionTracker']['_bufferUpdate'](_0x15e610['id'],_0x15e610,!0x0);}async['_fetchMissingUsers'](_0x58dd6b){const _0x17b54d=this['editor']['plugins']['get'](_0x1ab8ea),{connection:_0x3d5139}=this['editor']['plugins']['get'](c),_0x564ff2=new Set();for(const _0x57203c of _0x58dd6b){for(const _0x3ce329 of _0x57203c['authorsIds'])_0x401a3a(_0x3ce329);_0x57203c['creatorId']&&_0x401a3a(_0x57203c['creatorId']);}if(0x0===_0x564ff2['size'])return;const _0x48ae69=await dt['getMany'](_0x3d5139,Array['from'](_0x564ff2));for(const _0x4fffdc of _0x48ae69)_0x17b54d['getUser'](_0x4fffdc['id'])||_0x17b54d['addUser'](_0x4fffdc);function _0x401a3a(_0x24229b){_0x17b54d['getUser'](_0x24229b)||_0x564ff2['add'](_0x24229b);}}}function st(_0x4c61f4){return _0x4c61f4['message']['startsWith']('cloud-services-internal-error:\x20Revision\x20History\x20Service\x20is\x20not\x20connected.')||_0x4c61f4['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x4c61f4['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}class g extends _0x43c3db{static get['requires'](){return['RevisionHistory',u,n];}static get['pluginName'](){return'RealTimeCollaborativeRevisionHistory';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}class ts extends _0x55b472{constructor(_0xebb5fd){super(_0xebb5fd);const _0x59348c=this['bindTemplate'];this['set']('usersCount',0x0),this['set']('isHidden',!0x0),this['setTemplate']({'tag':'div','attributes':{'class':['ck','ck-presence-list__counter',_0x59348c['if']('isHidden','ck-presence-list__counter--hidden')]},'children':[{'text':_0x59348c['to']('usersCount',_0x49bee4=>q(_0xebb5fd,'CONNECTED_USERS',_0x49bee4))}]});}}class es extends _0x55b472{['items'];['keystrokes'];constructor(_0x371f02){super(_0x371f02);const _0x606c73=this['bindTemplate'];this['items']=this['createCollection'](),this['keystrokes']=new _0x92184c(),this['set']({'hasPopup':!0x1,'isExpanded':!0x1}),this['setTemplate']({'tag':'div','attributes':{'aria-haspopup':_0x606c73['if']('hasPopup'),'aria-expanded':_0x606c73['to']('isExpanded',_0x113e6d=>this['hasPopup']&&String(_0x113e6d)),'aria-label':_0x606c73['to']('hasPopup',_0xf31821=>q(_0x371f02,_0xf31821?'Collapsed\x20connected\x20users\x20list\x20(press\x20ENTER\x20to\x20open\x20it)':'Connected\x20users\x20list')),'role':'list','tabindex':_0x606c73['to']('hasPopup',_0x7324f2=>!!_0x7324f2&&0x0),'class':['ck','ck-presence-list__list']},'children':this['items'],'on':{'click':_0x606c73['to'](()=>this['fire']('execute'))}}),this['on']('change:hasPopup',(_0x3efed2,_0x328231,_0x29cb85)=>{this['element']&&(_0x29cb85?this['element']['setAttribute']('aria-expanded',String(this['isExpanded'])):this['element']['removeAttribute']('aria-expanded'));});}['focus'](){this['element']['focus']();}['render'](){super['render'](),this['keystrokes']['listenTo'](this['element']);}}class L extends _0x55b472{['counterView'];['inlineListView'];constructor(_0x508d95){super(_0x508d95);const _0x42be50=this['bindTemplate'];this['set']('isCollapsed',!0x0),this['counterView']=new ts(this['locale']),this['inlineListView']=new es(_0x508d95),this['inlineListView']['bind']('hasPopup')['to'](this,'isCollapsed'),this['listenTo'](this['inlineListView']['items'],'change',()=>{for(const _0x2aa13d of this['inlineListView']['items'])_0x2aa13d['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',_0x42be50['if']('isCollapsed','ck-presence-list--collapsed')]},'children':[this['counterView'],this['inlineListView']]});}}class j extends _0x55b472{['listWrapperView'];constructor(_0x22fcf8,_0x3171ae){super(_0x22fcf8),this['listWrapperView']=new mt(_0x22fcf8,_0x3171ae),this['setTemplate']({'tag':'div','attributes':{'tabindex':-0x1,'role':'application','class':['ck','ck-presence-list__dropdown-list'],'aria-label':q(_0x22fcf8,'Connected\x20users\x20list\x20dropdown\x20menu')},'children':[this['listWrapperView']]});}}class mt extends _0x579ca9{constructor(_0x52fbe2,_0x54ce58){super(_0x52fbe2);const _0x1e424d=this['bindTemplate'];this['set']('_isScrollable',!0x1),this['setTemplate']({'tag':_0x54ce58?'div':'ul','attributes':{'class':['ck','ck-reset','ck-list','ck-presence-list__dropdown-list-wrapper',_0x1e424d['if']('_isScrollable','ck-presence-list__dropdown-list-wrapper_scrollable')],'role':_0x1e424d['to']('role'),'aria-label':_0x1e424d['to']('ariaLabel'),'aria-labelledby':_0x1e424d['to']('ariaLabelledBy')},'children':this['items']}),this['listenTo'](_0x504372['window'],'resize',()=>this['checkIfScrollable']()),this['items']['on']('change',()=>this['checkIfScrollable']());}['render'](){super['render'](),this['checkIfScrollable']();}['checkIfScrollable'](){const _0x397479=this['element'];_0x397479&&(this['_isScrollable']=Math['max'](_0x397479['scrollHeight'],_0x397479['clientHeight'])>0.8*window['innerHeight']);}}class k extends rt{['userView'];constructor(_0x11aeaa,_0x163939,_0x2f0684){super(_0x11aeaa);const _0x445186=this['bindTemplate'];this['userView']=new ct(_0x11aeaa,_0x163939);const _0x3a560d={'tag':'li','attributes':{'class':['ck','ck-presence-list__dropdown-list-item'],'tabindex':-0x1,'role':'presentation','aria-label':_0x163939['name']},'children':[this['userView'],{'tag':'span','attributes':{'class':['ck','ck-user__full-name']},'children':[{'text':_0x163939['name']}]},{'tag':'span','attributes':{'class':['ck','ck-presence-list__marker',_0x163939['color']['getBackgroundColorClass']()],'aria-hidden':'true'}}]};_0x2f0684&&(_0x3a560d['tag']='button',_0x3a560d['on']={'click':_0x445186['to'](()=>this['fire']('execute'))}),this['setTemplate'](_0x3a560d);}['focus'](){this['element']['focus']();}}class y extends _0x55b472{['userView'];['markerView'];constructor(_0x2f2d0b,_0x167a52,_0x2df0b3){super(_0x2f2d0b);const _0x907770=this['bindTemplate'];this['set']('isFocusable',!0x1),this['set']('hasTooltip',!0x0),this['set']('tooltipPosition',''),this['userView']=new ct(_0x2f2d0b,_0x167a52),this['markerView']=new at(_0x2f2d0b,_0x167a52);const _0x47b0a0=new ot(_0x2f2d0b);_0x47b0a0['template']['tag']='span',_0x47b0a0['text']=_0x167a52['name'];const _0xda31a2={'tag':'div','attributes':{'class':['ck','ck-presence-list__list-item'],'role':'listitem','tabindex':_0x907770['to']('isFocusable',_0x3210b7=>!!_0x3210b7&&0x0),'aria-labelledby':_0x47b0a0['id'],'data-cke-tooltip-text':this['userView']['name'],'data-cke-tooltip-position':_0x907770['to']('tooltipPosition'),'data-cke-tooltip-disabled':_0x907770['to']('hasTooltip',_0x388b09=>!_0x388b09),'data-cke-tooltip-class':'ck-presence-list__list-item__tooltip'},'children':[this['userView'],this['markerView'],_0x47b0a0]};_0x2df0b3&&(_0xda31a2['tag']='button',_0xda31a2['on']={'click':_0x907770['to'](()=>this['fire']('execute'))}),this['setTemplate'](_0xda31a2);}}class at extends _0x55b472{constructor(_0x22d24c,_0x657bb1){super(_0x22d24c),this['setTemplate']({'tag':'span','attributes':{'class':['ck','ck-presence-list__marker',_0x657bb1['color']['getBackgroundColorClass']()],'aria-hidden':'true'}});}}const A={'collapseAt':0x6,'displayMe':!0x0};class r extends _0x177b39{['currentDisplayedUsers'];['balloonPanelView'];['view'];['presenceDropdownView'];['_bodyCollection']=null;constructor(_0x2dee93){super(_0x2dee93),this['context']['config']['define']('presenceList',A);const _0x3ba3c3=_0x2dee93['config']['get']('presenceList.collapseAt');if('number'!=typeof _0x3ba3c3)throw new _0x5d8b9a('presencelist-collapseat-invalid-format',this);if(_0x3ba3c3<0x1)throw new _0x5d8b9a('presencelist-collapseat-invalid-format',this);this['_allConnectedUsers']=this['context']['plugins']['get'](i)['allConnectedUsers'],this['set']('usersCount',0x0),this['currentDisplayedUsers']=new _0x3ff178(),this['balloonPanelView']=new _0x49e7cd(),this['balloonPanelView']['class']='ck\x20ck-presence-list__balloon',this['view']=this['_createView'](),this['presenceDropdownView']=void 0x0;}static get['requires'](){return[i];}['init'](){for(const _0x3b9cc0 of this['_allConnectedUsers'])this['_handleUserAdd'](_0x3b9cc0);this['listenTo'](this['_allConnectedUsers'],'add',(_0x52d08a,_0x121ccf)=>{this['_handleUserAdd'](_0x121ccf);}),this['listenTo'](this['_allConnectedUsers'],'remove',(_0x40377f,_0x58532b)=>{this['_handleUserRemove'](_0x58532b);});}['_createView'](){const _0x200d7f=this['context'],_0x2090bb=new L(this['context']['locale']),_0x4e8a06=this['balloonPanelView'];if(!_0x1a2d9d(_0x200d7f['config']['get']('presenceList.container')))throw new _0x5d8b9a('presencelist-missing-container',this);return _0x2090bb['counterView']['bind']('usersCount')['to'](this),_0x2090bb['bind']('isCollapsed')['to'](this,'usersCount',_0x4fef45=>{const {collapseAt:_0x1ca4e3,displayMe:_0x547886}=_0x200d7f['config']['get']('presenceList'),_0x9e96e6=_0x4fef45>=_0x1ca4e3;return _0x2090bb['counterView']['isHidden']=!(0x1==_0x4fef45&&_0x547886||_0x9e96e6),_0x9e96e6||this['hideDropdown'](),_0x9e96e6;}),_0x2090bb['inlineListView']['items']['bindTo'](this['currentDisplayedUsers'])['using'](_0x46ba1f=>{const _0xbfadc6=_0x200d7f['config']['get']('presenceList'),_0x4023c8=new y(_0x200d7f['locale'],_0x46ba1f,!!_0xbfadc6['onClick']);return _0x4023c8['bind']('hasTooltip')['to'](_0x2090bb,'isCollapsed',_0x49c2dc=>!_0x49c2dc),_0x4023c8['bind']('isFocusable')['to'](_0x2090bb,'isCollapsed',_0xe14ff8=>!_0xe14ff8),_0xbfadc6['onClick']&&this['listenTo'](_0x4023c8,'execute',()=>{this['view']['isCollapsed']||_0xbfadc6['onClick'](_0x46ba1f,_0x4023c8['element']);}),_0x4023c8;}),this['listenTo'](_0x2090bb['inlineListView'],'execute',()=>{this['presenceDropdownView']?this['hideDropdown']():this['view']['isCollapsed']&&this['showDropdown']();}),_0x2090bb['inlineListView']['keystrokes']['set']('Enter',(_0x1897a0,_0x5762f0)=>{this['view']['isCollapsed']&&(this['showDropdown'](),_0x5762f0());}),_0x2090bb['render'](),_0x4e8a06['render'](),_0x4e240f({'emitter':_0x2090bb,'activator':()=>_0x4e8a06['isVisible'],'contextElements':[_0x4e8a06['element'],_0x2090bb['inlineListView']['element']],'callback':()=>this['hideDropdown']()}),_0x200d7f['config']['get']('presenceList.container')['appendChild'](_0x2090bb['element']),this['_bodyCollection']=new _0x46ebeb(this['context']['locale']),this['_bodyCollection']['attachToDom'](),this['_bodyCollection']['add'](this['balloonPanelView']),_0x2090bb;}['_handleUserAdd'](_0x300c56){if(!this['context']['config']['get']('presenceList.displayMe')&&_0x300c56['isMe'])return;const _0x46c956=this['context']['config']['get']('presenceList.collapseAt')-0x1;this['usersCount']++,this['currentDisplayedUsers']['length']==_0x46c956&&this['currentDisplayedUsers']['length']>0x1&&this['currentDisplayedUsers']['remove'](0x1);const _0x489211=_0x300c56['isMe']?0x0:this['currentDisplayedUsers']['length'];this['currentDisplayedUsers']['add'](_0x300c56,_0x489211);}['_handleUserRemove'](_0x524bde){if(this['usersCount']--,this['currentDisplayedUsers']['get'](_0x524bde['id'])&&(this['currentDisplayedUsers']['remove'](_0x524bde['id']),this['currentDisplayedUsers']['length']<this['usersCount'])){for(const _0x46b9c2 of Array['from'](this['_allConnectedUsers'])['reverse']())if(!this['currentDisplayedUsers']['get'](_0x46b9c2['id']))return void this['currentDisplayedUsers']['add'](_0x46b9c2,Math['min'](this['currentDisplayedUsers']['length'],0x1));}}['showDropdown'](){if(this['presenceDropdownView'])return;const _0x18906f=this['context']['config']['get']('presenceList');this['presenceDropdownView']=new j(this['context']['locale'],!!_0x18906f['onClick']),this['view']['inlineListView']['isExpanded']=!0x0;const {listWrapperView:_0x2268f8}=this['presenceDropdownView'];_0x2268f8['items']['bindTo'](this['_allConnectedUsers'])['using'](_0x449dc4=>{if(!_0x18906f['displayMe']&&_0x449dc4['isMe'])return null;const _0x23e435=new k(this['context']['locale'],_0x449dc4,!!_0x18906f['onClick']);return _0x18906f['onClick']&&this['listenTo'](_0x23e435,'execute',()=>{_0x18906f['onClick'](_0x449dc4,_0x23e435['element']);}),_0x23e435;}),this['balloonPanelView']['content']['add'](this['presenceDropdownView']),this['balloonPanelView']['pin']({'target':this['view']['inlineListView']['element']}),_0x2268f8['focus'](),_0x2268f8['checkIfScrollable']();const _0x4588b5=(_0x47aa0f,_0x376eef)=>{this['hideDropdown'](),this['view']['inlineListView']['focus'](),_0x376eef();};_0x2268f8['keystrokes']['set']('Esc',_0x4588b5),_0x2268f8['keystrokes']['set']('Shift+Tab',_0x4588b5),_0x2268f8['keystrokes']['set']('Tab',(_0x41876c,_0x27fe7f)=>{!function(_0x12a422){const _0x234252=['a','button','input','select','textarea','[tabindex]','[contenteditable]']['map'](_0x306714=>_0x306714+':not([disabled]):not([tabindex=\x22-1\x22])')['join'](','),_0x32169a=[...document['body']['querySelectorAll'](_0x234252)]['filter'](_0x187009=>_0x187009===document['activeElement']||_0x187009['offsetWidth']+_0x187009['offsetHeight']>0x0)['sort']((_0x15fa2f,_0xad4b4a)=>(_0x15fa2f['tabIndex']||0x0)-(_0xad4b4a['tabIndex']||0x0)),_0x35b883=_0x32169a['indexOf'](_0x12a422),_0x407ef4=_0x32169a[(_0x35b883+0x1)%_0x32169a['length']];_0x407ef4&&_0x407ef4['focus']();}(this['view']['element']),this['hideDropdown'](),_0x27fe7f();}),_0x2268f8['focusTracker']['add'](this['view']['element']),_0x2268f8['focusTracker']['on']('change:isFocused',(_0x5720d2,_0x326302,_0x35502a)=>{_0x35502a||this['hideDropdown']();});}['hideDropdown'](){this['presenceDropdownView']&&(this['view']['inlineListView']['isExpanded']=!0x1,this['balloonPanelView']['unpin'](),this['balloonPanelView']['content']['remove'](this['presenceDropdownView']),this['presenceDropdownView']['destroy'](),this['presenceDropdownView']=void 0x0);}['destroy'](){super['destroy'](),this['view']&&this['view']['isRendered']&&this['view']['destroy'](),this['_bodyCollection']&&(this['_bodyCollection']['detachFromDom'](),this['_bodyCollection']['destroy'](),this['_bodyCollection']=null);}}class s extends _0x177b39{static get['requires'](){return[i,r];}static get['pluginName'](){return'PresenceList';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}export{a as CloudServicesCommentsAdapter,u as CloudServicesRevisionHistoryAdapter,f as CloudServicesTrackChangesAdapter,s as PresenceList,l as RealTimeCollaborationClient,m as RealTimeCollaborativeComments,n as RealTimeCollaborativeEditing,g as RealTimeCollaborativeRevisionHistory,p as RealTimeCollaborativeTrackChanges};
|
|
23
|
+
import{ContextPlugin as _0x37a9d3,Plugin as _0x50372a,PendingActions as _0x368f32,Context as _0x112e10}from'@ckeditor/ckeditor5-core/dist/index.js';import{DomEmitterMixin as _0x4c6426,CKEditorError as _0x408616,Collection as _0x5da562,global as _0x38475b,version as nt,uid as _0x301035,KeystrokeHandler as _0x60e8df}from'@ckeditor/ckeditor5-utils/dist/index.js';import{Notification as _0x1d35e3,View as _0x32c1aa,ListView as _0x5e215a,ListItemView as et,LabelView as ot,BalloonPanelView as _0x4bb92d,clickOutsideHandler as _0x452c2f,BodyCollection as _0x400f02}from'@ckeditor/ckeditor5-ui/dist/index.js';import{LiveRange as at,History as _0x2d8e8d,NoOperation as _0x54ca34,InsertOperation as _0x4e5089,MarkerOperation as _0x184ddc,RootAttributeOperation as _0x3baf28,transformSets as _0x453bb3,OperationFactory as _0x1e5de9}from'@ckeditor/ckeditor5-engine/dist/index.js';import{WebSocketGateway as ht,WEB_SOCKET_GATEWAY_STATES as _0x39f1be,CollaborativeEditingService as _0x35ce65,User as lt,CommentsService as _0x2fcac4,TrackChangesService as _0x3715b6,RevisionHistoryService as _0x20d94b,EditorService as _0x2f88e7}from'@ckeditor/ckeditor-cloud-services-collaboration/dist/index.js';import{Users as _0x4c3346,UserView as rt}from'ckeditor5-collaboration/dist/index.js';import{Compressor as _0x439fc2}from'@ckeditor/ckeditor5-operations-compressor/dist/index.js';import{isElement as _0x1667f2}from'lodash-es';class c extends _0x37a9d3{static ['WebSocketGateway']=/* #__PURE__ -- @preserve */
|
|
24
|
+
((()=>ht)());static ['initialReconnectionInterval']=0x3e8;['connection'];['_reconnectionStack'];['_shouldPluginsReconnect'];['_domEmitter'];static get['requires'](){return['CloudServices',_0x1d35e3];}static get['pluginName'](){return'WebSocketGateway';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x19c74c){super(_0x19c74c),this['set']('state',_0x39f1be['CONNECTED']),this['set']('_isBrowserOffline',!0x1),this['_reconnectionStack']=new Set(),this['_shouldPluginsReconnect']=!0x1,this['_domEmitter']=Object['create'](_0x4c6426);}['init'](){const _0x2340db=this['context'],_0x2358d2=_0x2340db['plugins']['get']('CloudServices'),_0x204d81=_0x2340db['plugins']['get'](_0x1d35e3);if(!_0x2358d2['token'])throw new _0x408616('websocketgateway-missing-token',this);if(!_0x2358d2['webSocketUrl'])throw new _0x408616('websocketgateway-missing-websocket-url',this);return this['_domEmitter']['listenTo'](window,'offline',()=>this['_isBrowserOffline']=!0x0),this['_domEmitter']['listenTo'](window,'online',()=>this['_isBrowserOffline']=!0x1),this['context']['config']['define']('cloudServices.connectionTimeout',0xa),this['context']['config']['define']('cloudServices.requestTimeout',0x14),c['WebSocketGateway']['connect'](_0x2358d2['token'],_0x2358d2['webSocketUrl'],{'timeout':0x3e8*this['context']['config']['get']('cloudServices.connectionTimeout'),'requestTimeout':0x3e8*this['context']['config']['get']('cloudServices.requestTimeout')})['then'](_0x2b8af7=>{if(this['connection']=_0x2b8af7,this['bind']('state')['to'](_0x2b8af7,'state',this,'_isBrowserOffline',(_0x57a9c6,_0x3088cc)=>('connected'!==_0x57a9c6&&(this['_shouldPluginsReconnect']=!0x0),_0x3088cc||_0x57a9c6!==_0x39f1be['CONNECTED']?_0x39f1be['DISCONNECTED']:this['state']==_0x39f1be['DISCONNECTED']&&this['_shouldPluginsReconnect']?(this['_shouldPluginsReconnect']=!0x1,this['_reconnect'](),_0x39f1be['CONNECTING']):_0x39f1be['CONNECTED'])),this['connection']['on']('error',(_0x45feea,_0x29ac25)=>{if('limitExceeded'!==_0x29ac25['code'])throw console['error'](_0x29ac25),new _0x408616('cloudservices-init',null,{'originalError':_0x29ac25});_0x204d81['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'});}),!_0x2b8af7['me'])return new Promise(_0xd8e606=>_0x2b8af7['on']('change:me',_0xd8e606));})['catch'](_0x1a4be3=>{throw console['error'](_0x1a4be3),new _0x408616('cloudservices-init',null,{'originalError':_0x1a4be3});});}['addToReconnectionStack'](_0x19f3f4){if('function'!=typeof _0x19f3f4['reconnect'])throw new _0x408616('websocketgateway-invalid-plugin-interface',this);if(this['isInReconnectionStack'](_0x19f3f4))throw new _0x408616('websocketgateway-plugin-already-registered',this,{'name':_0x19f3f4['constructor']['pluginName']});this['_reconnectionStack']['add'](_0x19f3f4);}['removeFromReconnectionStack'](_0x4bce05){this['_reconnectionStack']['delete'](_0x4bce05);}['isInReconnectionStack'](_0x7fd775){return this['_reconnectionStack']['has'](_0x7fd775);}['_reconnect'](){return this['connection']['reconnect']()['then'](()=>Promise['all'](Array['from'](this['_reconnectionStack'],_0x4864d0=>_0x4864d0['reconnect']())))['then'](()=>this['state']=_0x39f1be['CONNECTED'])['catch'](_0x3fdb4d=>{throw console['error'](_0x3fdb4d),new _0x408616('cloudservices-reconnection-error',this['context']);});}['destroy'](){this['connection']&&this['connection']['disconnect'](),this['state']=_0x39f1be['DISCONNECTED'],this['_domEmitter']['stopListening'](),super['destroy']();}}class i extends _0x37a9d3{['channelSessions'];['channelConnectedUsers'];['allConnectedUsers'];['_registeredSessions'];['_uniqueUsersCount'];['_users'];static get['pluginName'](){return'Sessions';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}static get['requires'](){return[c,_0x4c3346];}constructor(_0x26a76d){super(_0x26a76d),this['channelSessions']=new Map(),this['channelConnectedUsers']=new Map(),this['allConnectedUsers']=new _0x5da562(),this['_registeredSessions']=new Map(),this['_uniqueUsersCount']=0x0,this['_users']=this['context']['plugins']['get'](_0x4c3346);}['init'](){const _0x30a0fa=this['context']['plugins']['get'](c);this['listenTo'](_0x30a0fa,'change:state',(_0x5171da,_0x19b10a,_0x117b54)=>{if('connected'!==_0x117b54)this['channelSessions']['forEach'](_0x433229=>_0x433229['clear']()),this['channelConnectedUsers']['forEach'](_0x1b8c59=>_0x1b8c59['clear']()),this['allConnectedUsers']['clear']();else{for(const [_0x1b1c0e,_0x102eca]of this['_registeredSessions'])for(const _0x5b9dbd of _0x102eca)this['_handleSessionAdd'](_0x1b1c0e,_0x5b9dbd);}}),this['_createUser'](_0x30a0fa['connection']['me'],!0x0);}['register'](_0xaa7016,_0x556212){if(this['_registeredSessions']['has'](_0xaa7016))throw new _0x408616('sessions-register-already-registered',null,{'channelId':_0xaa7016});this['_registeredSessions']['set'](_0xaa7016,_0x556212),this['channelSessions']['set'](_0xaa7016,new _0x5da562()),this['channelConnectedUsers']['set'](_0xaa7016,new _0x5da562()),this['listenTo'](_0x556212,'add',(_0x409ab3,_0x1c4542)=>this['_handleSessionAdd'](_0xaa7016,_0x1c4542)),this['listenTo'](_0x556212,'remove',(_0x3d42bc,_0x45f841)=>this['_handleSessionRemove'](_0xaa7016,_0x45f841));for(const _0x1d12d4 of _0x556212)this['_handleSessionAdd'](_0xaa7016,_0x1d12d4);}['unregister'](_0x2e3809){if(!this['_registeredSessions']['has'](_0x2e3809))throw new _0x408616('sessions-unregister-not-exist',null,{'channelId':_0x2e3809});const _0x162ccb=this['_registeredSessions']['get'](_0x2e3809);this['stopListening'](_0x162ccb);for(const _0x502de8 of _0x162ccb)'connected'===this['context']['plugins']['get'](c)['state']&&this['_handleSessionRemove'](_0x2e3809,_0x502de8);this['_registeredSessions']['delete'](_0x2e3809),this['channelSessions']['delete'](_0x2e3809),this['channelConnectedUsers']['delete'](_0x2e3809);}get['mySessionId'](){return this['context']['plugins']['get'](c)['connection']['sessionId'];}['getUserBySessionId'](_0x14f0de){for(const _0x357871 of this['channelSessions']['values']())for(const _0x58349a of _0x357871)if(_0x58349a['id']===_0x14f0de)return _0x58349a['user'];}['getUserSessions'](_0x385825,_0x9c6073){const _0x430299=_0x9c6073?[this['channelSessions']['get'](_0x9c6073)]:this['channelSessions']['values'](),_0x296469=new Set();for(const _0x391ba9 of _0x430299)for(const _0x206f37 of _0x391ba9)_0x206f37['user']['id']===_0x385825['id']&&_0x296469['add'](_0x206f37['id']);return _0x296469;}['getUserRole'](_0x4f83d5){for(const _0x406933 of this['channelSessions']['values']())for(const _0x252324 of _0x406933)if(_0x252324['user']===_0x4f83d5)return _0x252324['role'];}['_handleSessionAdd'](_0x571b78,_0x31874a){if('connected'!==this['context']['plugins']['get'](c)['state'])return;const _0x25f633=_0x31874a['user'],_0x1bc4f2=this['_users']['getUser'](_0x25f633['id'])||this['_createUser'](_0x25f633),_0x4eba01=Object['assign']({},_0x31874a,{'user':_0x1bc4f2});this['channelSessions']['get'](_0x571b78)['add'](_0x4eba01);const _0x350488=this['channelConnectedUsers']['get'](_0x571b78);_0x350488['has'](_0x1bc4f2['id'])||_0x350488['add'](_0x1bc4f2),this['allConnectedUsers']['has'](_0x1bc4f2['id'])||this['allConnectedUsers']['add'](_0x1bc4f2,_0x1bc4f2['isMe']?0x0:void 0x0),this['fire']('sessionAdd:'+_0x571b78,{'channelId':_0x571b78,'session':_0x4eba01});}['_handleSessionRemove'](_0x1aadfe,_0x46d888){if('connected'!==this['context']['plugins']['get'](c)['state'])return;const _0xdedd13=this['channelConnectedUsers']['get'](_0x1aadfe),_0x16107c=_0x46d888['user'];_0x16107c['id']&&(this['channelSessions']['get'](_0x1aadfe)['remove'](_0x46d888['id']),_0xdedd13['has'](_0x16107c['id'])&&!this['getUserSessions'](_0x16107c,_0x1aadfe)['size']&&_0xdedd13['remove'](_0x16107c['id']),this['allConnectedUsers']['get'](_0x16107c['id'])&&!this['getUserSessions'](_0x16107c)['size']&&this['allConnectedUsers']['remove'](_0x16107c['id']));}['_createUser'](_0x4f6c61,_0x11cd30){const _0x35e889=this['_users']['addUser'](_0x4f6c61);return _0x11cd30&&this['_users']['defineMe'](_0x4f6c61['id']),_0x35e889['orderNumber']=this['_uniqueUsersCount']++,_0x35e889;}}class J extends _0x50372a{['_domEmitter']=new(_0x4c6426())();static get['requires'](){return[i];}static get['pluginName'](){return'UserMarkers';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['init'](){const _0x4f2322=this['editor'],_0x286365=_0x4f2322['plugins']['get'](i);_0x4f2322['conversion']['for']('editingDowncast')['markerToElement']({'model':'user:position','view':(_0x3bb0e0,{writer:_0x5e55d2})=>function(_0xbbf936,_0x8c4244,_0x2bcfb9,_0x2e2625){const _0x121ed8=_0xbbf936['markerName']['split'](':')[0x2],_0xf207f4=_0x2bcfb9['getUserBySessionId'](_0x121ed8);if(!_0xf207f4||_0x121ed8===_0x2bcfb9['mySessionId'])return;if(!_0x2e2625['model']['schema']['checkChild'](_0xbbf936['markerRange']['start'],'$text'))return;const _0x3c7846={'class':'ck-user__marker\x20'+_0xf207f4['color']['getMarkerClass'](),'data-name':_0xf207f4['name'],'data-session-id':_0x121ed8},_0x51574d=_0x2e2625['model']['markers']['get'](_0xbbf936['markerName']),_0x15c528=_0x51574d['getStart'](),_0x2ee8bf=_0x15c528['nodeAfter'],_0x1b5b45=_0x2e2625['model']['schema'];if(_0x2ee8bf&&_0x1b5b45['isObject'](_0x2ee8bf)&&_0x1b5b45['isInline'](_0x2ee8bf)&&!_0x2e2625['model']['markers']['get']('user:range:'+_0x121ed8)['getRange']()['isCollapsed'])return;const _0x38a309=_0x15c528['parent'];return _0x2e2625['model']['schema']['isLimit'](_0x38a309)&&!_0x2e2625['model']['hasContent'](_0x38a309)&&(_0x3c7846['contenteditable']=!0x1),function(_0x45b51c,_0x3251b4,_0x5368ff){const _0x389d2c=_0x45b51c['createUIElement']('span',_0x3251b4);return _0x45b51c['setCustomProperty']('userPositionMarker',!0x0,_0x389d2c),_0x389d2c['render']=function(_0x53bac7){const _0x45c86b=this['toDomElement'](_0x53bac7);return _0x45c86b['innerHTML']='<span\x20class=\x22ck-user__marker-line\x22\x20contenteditable=\x22false\x22><span\x20class=\x22ck-user__marker-dot\x22></span></span><span\x20class=\x22ck-user__marker-tooltip\x22\x20contenteditable=\x22false\x22\x20spellcheck=\x22false\x22>'+_0x5368ff['name']+'</span>',_0x45c86b['addEventListener']('mouseenter',()=>{_0x45c86b['classList']['add']('ck-user__marker_hovered');}),_0x45c86b['addEventListener']('mouseleave',()=>{_0x45c86b['classList']['remove']('ck-user__marker_hovered');}),_0x45c86b;},_0x389d2c['isSimilar']=function(_0xbbc359){return!(!this['getCustomProperty']('userPositionMarker')||!_0xbbc359['getCustomProperty']('userPositionMarker')||this['getAttribute']('data-session-id')!=_0xbbc359['getAttribute']('data-session-id'));},_0x389d2c;}(_0x8c4244,_0x3c7846,_0xf207f4);}(_0x3bb0e0,_0x5e55d2,_0x286365,_0x4f2322)}),_0x4f2322['conversion']['for']('editingDowncast')['markerToHighlight']({'model':'user:range','view':_0x4c9c60=>function(_0x1ebf50,_0x5b0d91){const _0x50e9e7=_0x1ebf50['markerName']['split'](':')[0x2];if(_0x50e9e7===_0x5b0d91['mySessionId'])return null;const _0x1d1614=_0x5b0d91['getUserBySessionId'](_0x50e9e7);if(!_0x1d1614)return{'id':_0x50e9e7,'classes':[]};return{'id':_0x50e9e7,'classes':['ck-user__selection',_0x1d1614['color']['getSelectionClass']()],'attributes':{'data-session-id':_0x50e9e7},'priority':0x7d0+_0x1d1614['orderNumber']};}(_0x4c9c60,_0x286365)}),function(_0x125fbb){const _0x3ec903=_0x125fbb['model'],_0x146284=new Map(),_0x3c5005=_0x125fbb['plugins']['get'](i);_0x3ec903['markers']['on']('update:user:range',(_0xe64318,_0x14e49c,_0x5233fb,_0x8b33db)=>{if(!_0x8b33db&&_0x146284['get'](_0x14e49c['name']))return _0x146284['get'](_0x14e49c['name'])['detach'](),void _0x146284['delete'](_0x14e49c['name']);const _0x11db1f=_0x14e49c['name']['split'](':')[0x2];if(_0x11db1f===_0x3c5005['mySessionId'])return;const _0x580649='user:position:'+_0x11db1f;_0x3ec903['markers']['has'](_0x580649)&&_0x125fbb['editing']['reconvertMarker'](_0x580649),_0x14e49c['on']('change:range',(_0x32c1ad,_0x2c6ef1,_0x4cb00c)=>{if('$graveyard'!=_0x2c6ef1['root']['rootName']&&'$graveyard'==_0x14e49c['getRange']()['root']['rootName']&&!_0x146284['has'](_0x14e49c['name'])){const _0x43e2c9=_0x3ec903['schema']['getNearestSelectionRange'](_0x4cb00c['deletionPosition']);if(_0x43e2c9){const _0x591a1c=at['fromRange'](_0x43e2c9);_0x146284['set'](_0x14e49c['name'],_0x591a1c),_0x591a1c['on']('change:range',(_0x5a404a,_0x467bff,_0x5c2121)=>{if('$graveyard'==_0x591a1c['root']['rootName']){const _0x3aad36=_0x3ec903['schema']['getNearestSelectionRange'](_0x5c2121['deletionPosition']);_0x3aad36?(_0x591a1c['start']=_0x3aad36['start'],_0x591a1c['end']=_0x3aad36['end']):(_0x146284['delete'](_0x14e49c['name']),_0x591a1c['detach']());}});}}});}),_0x3ec903['document']['on']('change',()=>{_0x146284['size']>0x0&&_0x3ec903['enqueueChange']({'isUndoable':!0x1},_0x45187f=>{for(const [_0x5c2daf,_0x23d428]of _0x146284)'$graveyard'==_0x3ec903['markers']['get'](_0x5c2daf)['getRange']()['root']['rootName']&&(te(_0x5c2daf['split'](':')[0x2],_0x23d428['toRange'](),_0x3ec903,_0x45187f),_0x23d428['detach']());_0x146284['clear']();});});}(_0x4f2322),this['_domEmitter']['listenTo'](_0x38475b['document'],'keydown',(_0x480ae3,{key:_0x4da8cf})=>{'Escape'===_0x4da8cf&&function(_0x428dce){_0x428dce['editing']['view']['change'](_0x5ca89b=>{for(const _0x3c3f7f of _0x428dce['model']['markers']){if(!_0x3c3f7f['name']['startsWith']('user:position'))continue;const _0x279173=_0x428dce['editing']['mapper']['markerNameToElements'](_0x3c3f7f['name']);if(_0x279173){for(const _0x2dc69a of _0x279173)_0x5ca89b['removeClass']('ck-user__marker_hovered',_0x2dc69a);}}});}(_0x4f2322);},{'useCapture':!0x0});}['afterInit'](){const _0x574118=this['editor'],_0x24cf2a=_0x574118['commands']['get']('undo');_0x24cf2a&&_0x574118['model']['on']('applyOperation',(_0x283b83,_0x4b8769)=>{const _0x4a4a44=_0x4b8769[0x0];if('marker'!=_0x4a4a44['type']||!_0x4a4a44['name']['startsWith']('user:'))return;const _0x51a2b9=_0x4a4a44['batch'];_0x24cf2a['_createdBatches']['has'](_0x51a2b9)&&(_0x4a4a44['newRange']=_0x4a4a44['oldRange']?_0x574118['model']['createRange'](_0x4a4a44['oldRange']['start'],_0x4a4a44['oldRange']['end']):null);},{'priority':'highest'});}['destroy'](){return this['_domEmitter']['stopListening'](),super['destroy']();}['createUserMarkerOperations'](){const _0x2798fe=this['editor'],_0x376591=_0x2798fe['model']['document'],_0x2f8e81=_0x2798fe['plugins']['get'](i);_0x2798fe['model']['enqueueChange']({'isUndoable':!0x1},_0x1450e4=>{const _0x5c2550='user:range:'+_0x2f8e81['mySessionId'],_0xfd3398='user:position:'+_0x2f8e81['mySessionId'],_0x3f1292=_0x2798fe['model']['markers']['has'](_0x5c2550);_0x2798fe['editing']['view']['hasDomSelection']?te(_0x2f8e81['mySessionId'],_0x376591['selection']['getFirstRange'](),_0x2798fe['model'],_0x1450e4):_0x3f1292&&(_0x1450e4['removeMarker'](_0x5c2550),_0x1450e4['removeMarker'](_0xfd3398));});}}function te(_0x4a6f09,_0x23628c,_0x2f0698,_0x2cb0a3){const _0xcd8c68='user:range:'+_0x4a6f09,_0x41d0a9='user:position:'+_0x4a6f09,_0xc252b1=_0x23628c['getContainedElement']();let _0x56adf9=_0x23628c['start'];_0xc252b1&&_0xc252b1['is']('element','tableCell')&&(_0x56adf9=function(_0x23967d,_0x1575b9){for(const _0x51d807 of _0x23967d['getPositions']())if(_0x1575b9['schema']['checkChild'](_0x51d807,'$text'))return _0x51d807;}(_0x23628c,_0x2f0698),_0x23628c=_0x2cb0a3['createRange'](_0x56adf9));const _0x568d31=_0x2cb0a3['createRange'](_0x56adf9);_0x2f0698['markers']['has'](_0xcd8c68)?(_0x2cb0a3['updateMarker'](_0xcd8c68,{'range':_0x23628c}),_0x2cb0a3['updateMarker'](_0x41d0a9,{'range':_0x568d31})):(_0x2cb0a3['addMarker'](_0xcd8c68,{'range':_0x23628c,'usingOperation':!0x0}),_0x2cb0a3['addMarker'](_0x41d0a9,{'range':_0x568d31,'usingOperation':!0x0}));}function Q(_0x32da98,_0x1340f4,_0x3ade47){const _0x4adff1=_0x32da98['t'],t=_0x32da98['t'];switch(_0x1340f4){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 _0x4adff1({'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'},_0x3ade47);default:return'';}}let Z=0x1;class l extends _0x50372a{static ['CollaborativeEditingService']=/* #__PURE__ -- @preserve */
|
|
25
|
+
((()=>_0x35ce65)());['_offset'];['sessionId'];['serverHistory'];['_channelId'];['_service'];['_document'];['_compressor'];['_bufferedOperations'];['_knownOperations'];['_knownRootNames'];['_pendingAction'];['_hasSelectionChanged'];['_sendBufferedOperationsDelayId'];['_baseBufferDelay'];['_currentBufferDelay'];['_lastSyncedOperationId'];['_disconnectionOperations'];['_operationIdentifier'];static get['requires'](){return[c,i,J,_0x368f32,_0x4c3346,_0x1d35e3];}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 _0x475d26=this['serverHistory']['getOperations']();for(let _0x271ff8=_0x475d26['length']-0x1;_0x271ff8>=0x0;_0x271ff8--){const _0x40956f=_0x475d26[_0x271ff8];if(!this['_disconnectionOperations']['has'](_0x40956f))return _0x40956f['baseVersion']+0x1-this['_offset'];}return 0x0;}constructor(_0x31378f){if(super(_0x31378f),this['_offset']=0x0,this['sessionId']=null,this['serverHistory']=new _0x2d8e8d(),this['editor']['config']['define']('collaboration',{}),this['_channelId']=this['editor']['config']['get']('collaboration.channelId'),!this['_channelId'])throw new _0x408616('collaboration-missing-channelid',this);const _0x5236a6=_0x31378f['config']['get']('cloudServices.bundleVersion')||nt;this['_service']=new l['CollaborativeEditingService'](_0x5236a6,this['_channelId']),this['_document']=this['editor']['model']['document'],this['_compressor']=new _0x439fc2(),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 st(this['_disconnectionOperations']);}['init'](){const _0x840f44=this['editor'],_0x42bad7=_0x840f44['plugins']['get'](_0x4c3346),_0x36795f=_0x840f44['plugins']['get'](c);this['listenTo'](_0x42bad7,'getOperationAuthor',(_0x547f57,_0x2b760c)=>{const _0x340d1a=_0x2b760c[0x0];_0x340d1a['_authorId']&&(_0x547f57['return']=_0x42bad7['getUser'](_0x340d1a['_authorId']),_0x547f57['stop']()),null===_0x340d1a['_authorId']&&(_0x547f57['return']=null,_0x547f57['stop']());},{'priority':'high'}),this['listenTo'](_0x840f44['model']['document']['selection'],'change:range',(_0x48e793,_0x51833e)=>{_0x51833e['directChange']&&this['_refreshUserSelectionMarkers']();}),this['listenTo'](_0x840f44['editing']['view'],'change:hasDomSelection',()=>{this['_refreshUserSelectionMarkers']();}),this['_initThrowingOnDataSet'](),_0x840f44['model']['on']('applyOperation',(_0x51cbab,_0x51a853)=>{const _0x543c66=_0x51a853[0x0];_0x543c66['isDocumentOperation']&&(this['_saveOperationInBuffer'](_0x543c66),this['_shouldSendUpdate']()&&this['_sendBufferedOperationsDelayed']());}),this['_setUpDataInit'](),this['bind']('_isEditingAllowed')['to'](_0x36795f,'state',this,'_hasSynchronizationProblem',(_0x2f2285,_0x1dec65)=>'connected'===_0x2f2285&&!_0x1dec65),this['on']('change:_isEditingAllowed',()=>{this['_isEditingAllowed']?_0x840f44['disableReadOnlyMode']('rtc-offline'):_0x840f44['enableReadOnlyMode']('rtc-offline');}),this['_isEditingAllowed']?_0x840f44['disableReadOnlyMode']('rtc-offline'):_0x840f44['enableReadOnlyMode']('rtc-offline'),this['set']('_isConnected',!0x1);}async['reconnect'](){const _0x223d0c=this['editor']['plugins']['get'](i),_0x24455e=this['editor']['plugins']['get'](c);try{this['_isPendingUpdate']=!0x0,_0x223d0c['unregister'](this['_channelId']);const _0x579c27=await this['_service']['reconnect'](_0x24455e['connection'],this['lastSyncVersion']);await this['_handleReconnectionResponse'](_0x579c27)&&(this['_isPendingUpdate']=!0x1,this['_clearPendingAction']());const _0x25f60b=await this['_service']['getConnectedSessions']();_0x223d0c['register'](this['_channelId'],_0x25f60b),this['_handleSendingSelectionMarkers'](),this['_isConnected']=!0x0;}catch(_0x3b16cf){if(function(_0x3106cb){return'404'===_0x3106cb['code'];}(_0x3b16cf)&&this['sessionId'])await this['_connectAfterSessionHasBeenFlushed']();else{if(function(_0x2c39be){return'409'===_0x2c39be['code'];}(_0x3b16cf)){const _0x2845e7=Q(this['editor']['locale'],'The\x20document\x20cannot\x20be\x20connected\x20back\x20to\x20the\x20server.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.');this['_handleReconnectionError'](_0x2845e7);}else{if(!(_0x3b16cf instanceof tt))throw _0x3b16cf;this['_handleReconnectionError']();}}}}['destroy'](){const _0x35cd10=this['editor']['plugins']['get'](c),_0x176b83=this['editor']['plugins']['get'](i);this['editor']['enableReadOnlyMode']('rtc-destroyed'),_0x176b83['channelSessions']['has'](this['_channelId'])&&_0x176b83['unregister'](this['_channelId']),_0x35cd10['removeFromReconnectionStack'](this),this['_disconnectService'](),super['destroy']();}async['_handleReconnectionResponse'](_0x4c1dd0){if(this['sessionId']!==_0x4c1dd0['sessionId']&&this['_lastSyncedOperationId']!==_0x4c1dd0['lastOperationId'])throw new tt();return this['sessionId']=_0x4c1dd0['sessionId'],this['_handleServerResponse']([],{..._0x4c1dd0,'wereChangesApplied':!0x1,'data':_0x4c1dd0['data']},'reconnect');}async['_connectService'](_0x3a92f9,_0x3cc43d=!0x1){const {connection:_0x2f0c00}=this['editor']['plugins']['get'](c);l['CollaborativeEditingService']['getConnectedSessions'](_0x2f0c00,this['_channelId'])['then'](_0x2665e0=>this['_initSessionsHandling'](_0x2665e0))['catch'](_0x325a0e=>{this['_crash']('realtimecollaborationclient-init-session-connection-error',_0x325a0e);}),this['listenTo'](this['_service'],'operationsReceived',this['_handleReceivedOperations']['bind'](this)),this['listenTo'](this['_service'],'error',(_0x548d90,_0x3e0b8a)=>{this['_crash']('realtimecollaborationclient-initservice-internal-error',_0x3e0b8a);}),this['listenTo'](this['_service'],'disconnected',()=>{this['_isConnected']=!0x1;});const _0xb4c97d=this['_operationIdentifier']['getIdOfTheLastOperation'](_0x3a92f9);this['_isPendingUpdate']=!0x0;const _0x4681c3=await this['_service']['connect'](_0x2f0c00,this['_compressOperations'](_0x3a92f9),_0xb4c97d);if(this['sessionId']=_0x4681c3['sessionId'],_0x3cc43d){if(!_0x4681c3['wereChangesApplied'])return void this['_handleReconnectionError']();this['_isPendingUpdate']=!0x1,this['_clearPendingAction'](),this['serverHistory']['reset'](),this['_offset']=_0x4681c3['offset'],this['serverHistory']['version']=this['_offset'],await this['_handleServerResponse'](_0x3a92f9,_0x4681c3,'reconnection:\x20flushed\x20session');}else await this['_handleInitialConnectionData'](_0x4681c3,_0x3a92f9);this['_handleSendingSelectionMarkers'](),this['_isConnected']=!0x0;}['_handleSendingSelectionMarkers'](){const _0x2c85d6=this['editor']['plugins']['get'](i),_0x76f47d=this['editor']['plugins']['get'](J),_0x1aae00=_0x2c85d6['channelSessions']['get'](this['_channelId']);_0x1aae00&&_0x1aae00['length']>0x1?_0x76f47d['createUserMarkerOperations']():this['listenTo'](_0x2c85d6,'sessionAdd:'+this['_channelId'],()=>{0x2===_0x2c85d6['channelSessions']['get'](this['_channelId'])['length']&&_0x76f47d['createUserMarkerOperations']();});}async['_handleReceivedOperations'](_0x3d30e0,_0x152453,_0x53e5d5,_0x9da1fa){if(!this['_isPendingUpdate']&&this['_document']['version']==_0x152453){const _0x2ae469=this['_decompressOperations'](_0x53e5d5,_0x9da1fa);await this['_fetchMissingUsers'](_0x2ae469),this['_handleExternalOperations'](_0x2ae469,_0x152453,_0x53e5d5['lastOperationId'])||this['_crash']('realtimecollaborationclient-initservice-incorrect-server-operation');}}async['_connectAfterSessionHasBeenFlushed'](){this['_disconnectService']();const {locale:_0x23a2f1}=this['editor'];let _0x3de310;try{_0x3de310=await this['_service']['getDocumentDetails']();}catch(_0x4863e7){const _0x254151=Q(_0x23a2f1,'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'](_0x254151);}const _0x41cd13=_0x3de310['currentDocumentSession']||_0x3de310['lastDocumentSession'];if(this['_lastSyncedOperationId']===_0x41cd13['lastOperationId'])await this['_connectService'](this['editor']['model']['document']['history']['getOperations'](),!0x0);else{const _0x4b1751=Q(_0x23a2f1,'The\x20last\x20saved\x20version\x20of\x20the\x20document\x20does\x20not\x20match\x20the\x20local\x20version.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.');this['_handleReconnectionError'](_0x4b1751);}}['_disconnectService'](){this['_service']['disconnect'](),this['_bufferedOperations']=[],clearTimeout(this['_sendBufferedOperationsDelayId']),this['stopListening'](this['_service']);}['_initSessionsHandling'](_0x218460){const _0x3f5628=this['editor']['plugins']['get'](i);this['listenTo'](_0x3f5628,'sessionAdd:'+this['_channelId'],(_0x136297,{session:_0x3a0a02})=>{if(_0x3a0a02['id']===_0x3f5628['mySessionId']){_0x136297['off']();const _0xc1f66c=this['editor']['plugins']['has']('CommentsOnly')&&this['editor']['plugins']['get']('CommentsOnly');let _0x4f3416=_0x3a0a02['permissions'];_0xc1f66c&&_0xc1f66c['isEnabled']&&(_0x4f3416=_0x4f3416['filter'](_0x21a30d=>'document:write'!==_0x21a30d)),this['editor']['plugins']['get']('Permissions')['setPermissions'](_0x4f3416,this['_channelId']);}}),_0x3f5628['register'](this['_channelId'],_0x218460);}['_initThrowingOnDataSet'](){const _0x5261ad=this['editor']['data']['set'];this['editor']['data']['set']=(..._0x31b1e1)=>{if(!_0x31b1e1[_0x31b1e1['length']-0x1]['suppressErrorInCollaboration'])throw new _0x408616('realtimecollaborationclient-editor-setdata-and-editor-data-set-are-forbidden-in-real-time-collaboration',this);_0x5261ad['apply'](this['editor']['data'],_0x31b1e1);};}['_setUpDataInit'](){this['editor']['data']['on']('init',(_0x1dac26,[_0x1bfd6c])=>{if(this['_document']['version'])throw new _0x408616('realtimecollaborationclient-init-document-already-initialized',this);_0x1dac26['stop'](),this['_setPendingAction']();const _0x2fbbc8=this['editor']['config']['get']('rootsAttributes'),_0x5bfa8a=this['_getOperationsFromInitData'](_0x1bfd6c,_0x2fbbc8);0x0==_0x5bfa8a['length']&&_0x5bfa8a['push'](new _0x54ca34(0x0)),_0x1dac26['return']=this['_connectService'](_0x5bfa8a)['then'](()=>{this['editor']['plugins']['get'](c)['addToReconnectionStack'](this),this['editor']['data']['fire']('ready');})['catch'](_0x1f1033=>this['_crash']('realtimecollaborationclient-init-connection-failed',_0x1f1033))['finally'](()=>this['_clearPendingAction']());},{'priority':'high'}),this['editor']['on']('loadRoot',async(_0x2df160,[_0x44dd76,_0x4057b1])=>{_0x2df160['stop']();const _0x5de0ec=this['editor']['model']['document']['getRoot'](_0x44dd76);if(!this['_knownRootNames']['has'](_0x44dd76)){const _0x2a72dc=_0x4057b1&&_0x4057b1['data']?_0x4057b1['data']:'',_0x37556e=_0x4057b1&&_0x4057b1['attributes']?_0x4057b1['attributes']:{};await this['_loadRoot'](_0x44dd76,_0x2a72dc,_0x37556e);}this['editor']['model']['enqueueChange']({'isUndoable':!0x1},()=>{_0x5de0ec['_isLoaded']=!0x0,this['editor']['model']['document']['differ']['_bufferRootLoad'](_0x5de0ec);});},{'priority':'high'});}async['_fetchMissingUsers'](_0xe9fdbd){const _0x234686=this['editor']['plugins']['get'](_0x4c3346),{connection:_0x4762e7}=this['editor']['plugins']['get'](c),_0x4a030a=new Set();for(const _0x6c73f6 of _0xe9fdbd){const _0x509edd=_0x6c73f6['_authorId'];_0x509edd&&!_0x234686['getUser'](_0x509edd)&&_0x4a030a['add'](_0x509edd);}if(0x0===_0x4a030a['size'])return;const _0x5c09fc=await lt['getMany'](_0x4762e7,Array['from'](_0x4a030a));for(const _0x3af950 of _0x5c09fc)_0x234686['getUser'](_0x3af950['id'])||_0x234686['addUser'](_0x3af950);}['_getOperationsFromInitData'](_0x3e767f,_0x2586c4={}){const _0x527e68=this['editor']['model'],_0x5b7a6a=[];let _0x1e1251=0x0;const _0x4ecd9c='string'==typeof _0x3e767f?{'main':_0x3e767f}:_0x3e767f;for(const _0x458968 of Object['keys'](_0x4ecd9c)){if(!this['_document']['roots']['has'](_0x458968))throw new _0x408616('realtimecollaborationclient-init-non-existent-root',this);const _0x43f878=this['editor']['data']['parse'](_0x4ecd9c[_0x458968]),_0x4acb00=this['_document']['getRoot'](_0x458968),_0xb7edb1=new _0x4e5089(_0x527e68['createPositionAt'](_0x4acb00,0x0),_0x43f878,_0x1e1251++);_0x5b7a6a['push'](_0xb7edb1);for(const [_0x2fa92,_0x2faaaf]of _0x43f878['markers']){const _0x2a4b2f=_0x527e68['createRange'](_0x527e68['createPositionFromPath'](_0x4acb00,_0x2faaaf['start']['path']['slice']()),_0x527e68['createPositionFromPath'](_0x4acb00,_0x2faaaf['end']['path']['slice']())),_0x503faa=new _0x184ddc(_0x2fa92,null,_0x2a4b2f,_0x527e68['markers'],!0x0,_0x1e1251++);_0x5b7a6a['push'](_0x503faa);}}if(_0x2586c4)for(const [_0x128b7f,_0x3a1688]of Object['entries'](_0x2586c4)){const _0x5c34aa=_0x527e68['document']['getRoot'](_0x128b7f);if(!_0x5c34aa)throw new _0x408616('multi-root-editor-root-attributes-no-root',null);for(const [_0x270014,_0x35601d]of Object['entries'](_0x3a1688))if(null!==_0x35601d){const _0x5733f9=new _0x3baf28(_0x5c34aa,_0x270014,null,_0x35601d,_0x1e1251++);_0x5b7a6a['push'](_0x5733f9);}}return _0x5b7a6a;}async['_loadRoot'](_0x106715,_0x39839a,_0x4ca3d1){this['_getOperationsFromInitData']({[_0x106715]:_0x39839a},{[_0x106715]:_0x4ca3d1})['forEach']((_0x2d9bcc,_0x4c387c)=>{_0x2d9bcc['baseVersion']=this['_document']['version']+_0x4c387c,_0x2d9bcc['_isInit']=!0x0,this['_saveOperationInBuffer'](_0x2d9bcc);}),this['_sendBufferedOperationsDelayed'](),await this['_waitUntilSynced']();}async['_handleInitialConnectionData'](_0x363cf7,_0x767697){let _0x15d3dd;this['_offset']=_0x363cf7['offset'];const _0x4917e5=_0x363cf7['wereChangesApplied']&&!_0x363cf7['initData'],_0x40ca2d=_0x4917e5?0x0:_0x363cf7['data']['baseVersion'];if(_0x767697['forEach'](_0x3f1592=>{_0x3f1592['_isInit']=!0x0,_0x3f1592['createdAt']=_0x363cf7['sessionCreatedAt'],_0x3f1592['_authorId']=null;}),_0x4917e5)_0x15d3dd=_0x767697,this['_applyOperationsSet'](_0x15d3dd,_0x4917e5);else{if(_0x363cf7['initData']){const _0x2ce947=this['_getOperationsFromInitData'](_0x363cf7['initData']);this['_document']['history']['version']=-_0x2ce947['length'],_0x2ce947['forEach'](_0x3f420e=>{_0x3f420e['baseVersion']-=_0x2ce947['length'],_0x3f420e['createdAt']=_0x363cf7['sessionCreatedAt'],_0x3f420e['_isInit']=!0x0,_0x3f420e['_authorId']=null;}),this['_applyOperationsSet'](_0x2ce947,!0x0),this['serverHistory']['version']=-_0x2ce947['length']+this['_offset'],this['_updateServerHistory'](_0x2ce947);}this['_document']['history']['version']=_0x40ca2d,_0x15d3dd=this['_decompressOperations'](_0x363cf7['data'],_0x363cf7['metadata']),await this['_fetchMissingUsers'](_0x15d3dd),this['_applyOperationsSet'](_0x15d3dd,_0x4917e5);}_0x363cf7['lastOperationId']&&(this['_operationIdentifier']['setIdForTheLastOperation'](_0x15d3dd,_0x363cf7['lastOperationId']),this['_lastSyncedOperationId']=_0x363cf7['lastOperationId']),this['serverHistory']['version']=_0x40ca2d+this['_offset'],this['_updateServerHistory'](_0x15d3dd),_0x767697['filter'](_0x23321e=>{const _0x57f483=this['_getAffectedRoot'](_0x23321e);return _0x57f483&&!this['_knownRootNames']['has'](_0x57f483);})['forEach']((_0x3240fc,_0x5397c8)=>{_0x3240fc['baseVersion']=this['_document']['version']+_0x5397c8,this['_saveOperationInBuffer'](_0x3240fc);}),this['_shouldSendUpdate']()?(this['_currentBufferDelay']=0x0,this['_sendBufferedOperationsDelayed'](!0x0),await this['_waitUntilSynced']()):(this['_isPendingUpdate']=!0x1,this['_clearPendingAction']());}['_crash'](_0x171afb,_0x350373,_0x19a521){throw this['_isPendingUpdate']=!0x0,_0x350373&&console['error'](_0x350373),_0x19a521&&this['editor']['enableReadOnlyMode']('realtimecollaborationclient-error'),new _0x408616(_0x171afb,this['editor']);}['_saveOperationInBuffer'](_0x1fc260){this['_knownOperations']['has'](_0x1fc260)||(this['_knownOperations']['add'](_0x1fc260),this['_bufferedOperations']['push'](_0x1fc260),this['_pendingAction']||'marker'==_0x1fc260['type']&&!_0x1fc260['affectsData']||this['_setPendingAction']());}['_sendBufferedOperationsDelayed'](_0x467c70=!0x1){!_0x467c70&&this['_isPendingUpdate']||(this['_isPendingUpdate']=!0x0,clearTimeout(this['_sendBufferedOperationsDelayId']),this['_sendBufferedOperationsDelayId']=setTimeout(()=>{this['_sendBufferedOperations']()['then'](_0x2042b6=>{_0x2042b6&&(this['_clearPendingAction'](),this['_isPendingUpdate']=!0x1);})['catch'](_0x476d46=>{this['_clearPendingAction'](),this['_isPendingUpdate']=!0x1,function(_0x36aa87){return _0x36aa87['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x36aa87['message']['startsWith']('cloud-services-internal-error:\x20Collaborative\x20Editing\x20Service\x20is\x20not\x20connected.')||_0x36aa87['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}(_0x476d46)||this['_crash'](_0x476d46['message'],_0x476d46,!0x0);});},this['_currentBufferDelay']));}['_waitUntilSynced'](){return new Promise(_0x21df35=>{this['on']('change:_isPendingUpdate',()=>{_0x21df35();});});}async['_sendBufferedOperations'](){const _0x270e9a=this['editor']['plugins']['get'](J);if(this['_shouldSendSelectionUpdate']()&&(_0x270e9a['createUserMarkerOperations'](),this['_hasSelectionChanged']=!0x1),!this['_shouldSendUpdate']())return!0x0;const _0x2603e2=[...this['_bufferedOperations']];for(const _0x443e61 of _0x2603e2)_0x443e61['wasUndone']=this['_document']['history']['isUndoneOperation'](_0x443e61);const _0x185669=this['_operationIdentifier']['getIdOfTheLastOperation'](_0x2603e2),_0x14bb03=Z++,_0x27eca6=this['_compressOperations'](_0x2603e2),_0x5a40fd=await this['_service']['sendOperations'](_0x27eca6,_0x27eca6['baseVersion'],_0x185669);try{return await this['_handleServerResponse'](_0x2603e2,_0x5a40fd,_0x14bb03);}catch(_0x2ff1e3){return this['_crash']('realtimecollaborationclient-sendbufferedoperations',_0x2ff1e3);}}async['_handleServerResponse'](_0x1286ba,_0x479a8b,_0x5503cb){if('error'in _0x479a8b)throw _0x479a8b['error'];let _0x5df959=!0x1;if(_0x479a8b['wereChangesApplied']){_0x479a8b['lastOperationId']&&(this['_lastSyncedOperationId']=_0x479a8b['lastOperationId']),this['_bufferedOperations']=this['_bufferedOperations']['filter'](_0x44b596=>!_0x1286ba['includes'](_0x44b596));for(const _0xa80072 of _0x1286ba)_0xa80072['createdAt']='lastOperationAcceptedAt'in _0x479a8b&&_0x479a8b['lastOperationAcceptedAt']||void 0x0;it(_0x1286ba,_0x479a8b['version']-_0x1286ba['length']),this['_updateServerHistory'](_0x1286ba);const _0x2ac032=_0x1286ba['filter'](_0x2d981a=>{if(!_0x2d981a['_isInit'])return!0x1;const _0x55b651=this['_getAffectedRoot'](_0x2d981a);return _0x55b651&&!this['_knownRootNames']['has'](_0x55b651);});it(_0x2ac032,this['_document']['version']),this['_applyOperationsSet'](_0x2ac032),_0x5df959=!0x0,this['_currentBufferDelay']=this['_baseBufferDelay'];}else{const _0x45bd1b=this['_decompressOperations'](_0x479a8b['data'],_0x479a8b['metadata'])['filter'](_0x4357b6=>_0x4357b6['baseVersion']>=this['_lastServerVersion']);_0x45bd1b['forEach'](_0x13c73b=>this['_addKnownRoot'](_0x13c73b)),this['_bufferedOperations']=this['_bufferedOperations']['filter'](_0x47be01=>!_0x47be01['_isInit']||!this['_knownRootNames']['has'](this['_getAffectedRoot'](_0x47be01))),this['_bufferedOperations']['length']&&it(this['_bufferedOperations'],this['_bufferedOperations'][0x0]['baseVersion']),await this['_fetchMissingUsers'](_0x45bd1b),_0x5df959=this['_handleExternalOperations'](_0x45bd1b,_0x479a8b['version'],_0x479a8b['lastOperationId']),this['_currentBufferDelay']=Math['round'](this['_currentBufferDelay']/0x2);}return _0x5df959?!this['_shouldSendUpdate']()||(this['_sendBufferedOperationsDelayed'](!0x0),!0x1):this['_crash']('realtimecollaborationclient-handleserverresponse');}['_handleExternalOperations'](_0x494e61,_0x2538dc,_0x2bf8c7){try{const _0x38a26c={'document':this['_document'],'useRelations':!0x1,'padWithNoOps':!0x0},{operationsA:_0x57d387,operationsB:_0x12b01d,originalOperations:_0x13de61}=_0x453bb3(_0x494e61,this['_bufferedOperations'],_0x38a26c);it(_0x57d387,this['_document']['version']),it(_0x12b01d,_0x2538dc);for(const _0x16cc18 of _0x57d387){const _0xe63d2a=_0x13de61['get'](_0x16cc18);_0x16cc18['_authorId']=_0xe63d2a?_0xe63d2a['_authorId']:null;}_0x2bf8c7&&(this['_operationIdentifier']['setIdForTheLastOperation'](_0x494e61,_0x2bf8c7),this['_lastSyncedOperationId']=_0x2bf8c7),this['_bufferedOperations']=[..._0x12b01d],this['_applyOperationsSet'](_0x57d387),this['_updateServerHistory'](_0x494e61);}catch(_0x58bc4c){return console['error'](_0x58bc4c),!0x1;}return!0x0;}['_applyOperationsSet'](_0x5d14e2,_0x31871e=!0x1){this['editor']['model']['enqueueChange']({'isUndoable':!0x1,'isLocal':!0x1},_0x3a193f=>{for(const _0x410c0c of _0x5d14e2)this['_knownOperations']['add'](_0x410c0c),this['_addKnownRoot'](_0x410c0c),_0x3a193f['batch']['addOperation'](_0x410c0c),this['editor']['model']['applyOperation'](_0x410c0c);});}['_addKnownRoot'](_0x973b8c){const _0x18de1a=this['_getAffectedRoot'](_0x973b8c);_0x18de1a&&this['_knownRootNames']['add'](_0x18de1a);}['_getAffectedRoot'](_0x49a7c6){let _0x281594,_0x52da4c;switch(_0x49a7c6['type']){case'insert':_0x281594=_0x49a7c6['position']['root'];break;case'marker':if(_0x52da4c=_0x49a7c6['newRange'],!_0x52da4c)return null;_0x281594=_0x52da4c['root'];break;case'addRootAttribute':_0x281594=_0x49a7c6['root'];break;case'addRoot':_0x281594=_0x49a7c6['affectedSelectable'];break;case'move':_0x281594=_0x49a7c6['targetPosition']['root'];break;default:return null;}return _0x281594['rootName'];}['_updateServerHistory'](_0x317e53){_0x317e53['forEach'](_0x244aba=>{const _0x105f1c=_0x244aba['clone']();_0x105f1c['_authorId']=_0x244aba['_authorId'],_0x105f1c['_isInit']=!!_0x244aba['_isInit'],_0x105f1c['createdAt']=_0x244aba['createdAt'],_0x105f1c['baseVersion']+=this['_offset'],_0x244aba['_isDisconnection']&&this['_disconnectionOperations']['add'](_0x105f1c),this['serverHistory']['addOperation'](_0x105f1c);});}['_handleReconnectionError'](_0x3d69fc){const _0x1e1f3f=this['editor']['plugins']['get']('Notification'),_0xf2aac=this['editor']['locale'];_0x3d69fc||(_0x3d69fc=Q(_0xf2aac,'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.')),_0x1e1f3f['showWarning'](_0x3d69fc,{'title':Q(_0xf2aac,'Synchronization\x20issue'),'namespace':'real-time-collaboration'}),this['_hasSynchronizationProblem']=!0x0,clearTimeout(this['_sendBufferedOperationsDelayId']),this['_bufferedOperations']=[],this['editor']['plugins']['get'](c)['destroy']();}['_setPendingAction'](){this['_pendingAction']||(this['_pendingAction']=this['editor']['plugins']['get'](_0x368f32)['add'](Q(this['editor']['locale'],'PENDING_ACTION_SENDING_DATA')));}['_clearPendingAction'](){this['_pendingAction']&&(this['editor']['plugins']['get'](_0x368f32)['remove'](this['_pendingAction']),this['_pendingAction']=null);}['_compressOperations'](_0x4cb562){const _0x76cb36=_0x4cb562['map'](_0x370842=>_0x370842['toJSON']());return this['_compressor']['compress'](_0x76cb36);}['_decompressOperations'](_0x5c3db2,_0x2c4d5f){return this['_compressor']['decompress'](_0x5c3db2)['map']((_0x2779c5,_0x4ff71a)=>{const _0x26cbf8='init'==_0x2c4d5f[_0x4ff71a]['type'];if('InsertOperation'==_0x2779c5['__className']){const _0x490b7d=_0x2779c5['position']['root'];!this['_document']['getRoot'](_0x490b7d)&&(this['_document']['createRoot']('$root',_0x490b7d)['_isAttached']=!0x1);}const _0x39670a=_0x1e5de9['fromJSON'](_0x2779c5,this['_document']);return _0x39670a['wasUndone']=_0x2779c5['wasUndone'],_0x39670a['_isInit']=_0x26cbf8,_0x39670a['_authorId']=_0x26cbf8?null:_0x2c4d5f[_0x4ff71a]['userId'],_0x39670a['_isDisconnection']='cs:removeUser'===_0x2c4d5f[_0x4ff71a]['type'],_0x39670a['createdAt']=_0x2c4d5f[_0x4ff71a]['createdAt'],_0x39670a;});}['_refreshUserSelectionMarkers'](){this['_hasSelectionChanged']=!0x0,this['_shouldSendSelectionUpdate']()?this['_sendBufferedOperationsDelayed']():this['_hasSelectionChanged']=!0x1;}['_shouldSendSelectionUpdate'](){const _0x3e26ac=this['editor']['plugins']['get'](i)['channelSessions']['get'](this['_channelId']);return!this['editor']['isReadOnly']&&!!_0x3e26ac&&_0x3e26ac['length']>0x1&&this['_hasSelectionChanged'];}['_shouldSendUpdate'](){return this['_bufferedOperations']['length']>0x0||this['_shouldSendSelectionUpdate']();}}class tt extends Error{}function it(_0x42937e,_0x241cbd){for(const _0x4c1c0b of _0x42937e)_0x4c1c0b['baseVersion']=_0x241cbd++;}class st{['_ignoredOperations'];['_operationToId'];constructor(_0x58a2b0){this['_ignoredOperations']=_0x58a2b0,this['_operationToId']=new WeakMap();}['getIdOfTheLastOperation'](_0xc78e90){let _0x55a0a7=_0xc78e90['length'];for(;_0x55a0a7--;){const _0x3ce8f6=_0xc78e90[_0x55a0a7];if(!this['_ignoredOperations']['has'](_0x3ce8f6)){if(!this['_operationToId']['has'](_0x3ce8f6)){const _0x42a061=_0x301035()['slice'](0x1,0x12);this['_operationToId']['set'](_0x3ce8f6,_0x42a061);}return this['_operationToId']['get'](_0x3ce8f6);}}}['setIdForTheLastOperation'](_0x4f4f96,_0x2b93bd){if(!_0x2b93bd)return;let _0x45f7ba=_0x4f4f96['length'];for(;_0x45f7ba--;){const _0x9ae605=_0x4f4f96[_0x45f7ba];this['_ignoredOperations']['has'](_0x9ae605)||this['_operationToId']['set'](_0x9ae605,_0x2b93bd);}}}class n extends _0x50372a{static get['requires'](){return[l];}static get['pluginName'](){return'RealTimeCollaborativeEditing';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}class a extends _0x37a9d3{static ['CommentsService']=/* #__PURE__ -- @preserve */
|
|
26
|
+
((()=>_0x2fcac4)());['_services'];static get['requires'](){return[c,'CommentsRepository',i,_0x4c3346];}static get['pluginName'](){return'CloudServicesCommentsAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x203d3f){super(_0x203d3f),this['_services']=new Map();}async['init'](){const _0x4fb797=this['context'],_0xe59c4e=_0x4fb797['plugins']['get']('CommentsRepository');if(_0x4fb797['plugins']['get'](c)['addToReconnectionStack'](this),_0xe59c4e['adapter']={'addCommentThread':async({channelId:_0x4cd9a1,threadId:_0x3420bf,comments:_0x18d822,resolvedAt:_0x30d2d6,resolvedBy:_0x4a8414,context:_0x2d6c94,attributes:_0x3d1620})=>{const _0x4b1608=await this['_getService'](_0x4cd9a1)['addCommentThread']({'commentThreadId':_0x3420bf,'comments':_0x18d822['map'](_0x2d70df=>function(_0x249ff1,_0x2982c2,_0x20dafa){return{'commentThreadId':_0x20dafa,'commentId':_0x249ff1['commentId'],'userId':_0x249ff1['authorId'],'content':_0x249ff1['content'],'documentId':_0x2982c2,'createdAt':_0x249ff1['createdAt'],'attributes':_0x249ff1['attributes']||{}};}(_0x2d70df,_0x4cd9a1,_0x3420bf)),'resolvedAt':_0x30d2d6,'resolvedBy':_0x4a8414,'context':_0x2d6c94,'attributes':_0x3d1620})['catch'](dt);return{'threadId':_0x4b1608['commentThreadId'],'comments':_0x4b1608['comments']};},'getCommentThread':async({channelId:_0x20fc95,threadId:_0x5be569})=>{const _0x28bbb7=await this['_getService'](_0x20fc95)['getCommentThread'](_0x5be569)['catch'](dt);return _0x28bbb7['deletedAt']?null:(await this['_fetchMissingUsersForThreads']([_0x28bbb7]),{'threadId':_0x28bbb7['commentThreadId'],'comments':_0x28bbb7['comments']['map'](S),'context':_0x28bbb7['context'],'resolvedAt':_0x28bbb7['resolvedAt'],'resolvedBy':_0x28bbb7['resolvedBy'],'attributes':_0x28bbb7['attributes']||{}});},'updateCommentThread':async({channelId:_0x581bdb,threadId:_0x1edd08,context:_0x47c239,unlinkedAt:_0x276e82,attributes:_0x282691})=>this['_getService'](_0x581bdb)['updateCommentThread']({'commentThreadId':_0x1edd08,'context':_0x47c239,'attributes':_0x282691,'unlinkedAt':_0x276e82})['catch'](B)['catch'](dt),'resolveCommentThread':async({channelId:_0x32055b,threadId:_0x3c8224})=>{const _0x514117=await this['_getService'](_0x32055b)['resolveCommentThread'](_0x3c8224)['catch'](B)['catch'](dt);return{'threadId':_0x514117['commentThreadId'],'resolvedAt':_0x514117['resolvedAt'],'resolvedBy':_0x514117['resolvedBy']};},'reopenCommentThread':async({channelId:_0x49a056,threadId:_0x398f17})=>this['_getService'](_0x49a056)['reopenCommentThread'](_0x398f17)['catch'](B)['catch'](dt),'removeCommentThread':({channelId:_0x22a6fe,threadId:_0x441628})=>this['_getService'](_0x22a6fe)['removeCommentThread'](_0x441628)['catch'](B)['catch'](dt),'addComment':({channelId:_0x48bef4,threadId:_0x5da0a0,commentId:_0x485c5c,content:_0x5de220,attributes:_0x55129a})=>this['_getService'](_0x48bef4)['addComment'](_0x5da0a0,_0x485c5c,_0x5de220,_0x55129a)['catch'](dt),'updateComment':({channelId:_0x19031b,threadId:_0x3ed5e7,commentId:_0x2a3ad5,content:_0x3eef45,attributes:_0x121149})=>this['_getService'](_0x19031b)['updateComment'](_0x3ed5e7,_0x2a3ad5,_0x3eef45,_0x121149)['catch'](B)['catch'](dt),'removeComment':({channelId:_0x35b92d,threadId:_0x225d0d,commentId:_0x14092e})=>this['_getService'](_0x35b92d)['removeComment'](_0x225d0d,_0x14092e)['catch'](B)['catch'](dt)},_0x4fb797 instanceof _0x112e10){const _0x4d38ea=_0x4fb797['config']['get']('collaboration.channelId'),_0x13ce2d=_0x4fb797['plugins']['get'](i);await this['_setUpService'](_0x4d38ea);const _0xcc3ebd=await this['_services']['get'](_0x4d38ea)['getConnectedSessions']();this['listenTo'](_0x13ce2d,'sessionAdd:'+_0x4d38ea,(_0x529fcc,{session:_0x2d8c8b})=>{_0x2d8c8b['id']===_0x13ce2d['mySessionId']&&(_0x529fcc['off'](),this['context']['plugins']['get']('Permissions')['setPermissions'](_0x2d8c8b['permissions'],_0x4d38ea));}),_0x13ce2d['register'](_0x4d38ea,_0xcc3ebd);}}async['_setUpService'](_0x2859d0){if(this['_services']['has'](_0x2859d0))throw new _0x408616('cloudservicescommentsadapter-connect-already-connected',null,{'channelId':_0x2859d0});const _0x81796e=this['context']['plugins']['get']('CommentsRepository'),_0x51fa2d=new a['CommentsService'](_0x2859d0);this['_services']['set'](_0x2859d0,_0x51fa2d),this['listenTo'](_0x51fa2d,'commentThreadAdded',(_0x261e84,_0x2d4f8e)=>{const {commentThreadId:_0x54602b,documentId:_0x4e0db4,context:_0x461943,attributes:_0x142026,resolvedAt:_0x45caa6,resolvedBy:_0x2e3ea2,comments:_0x2d5949}=_0x2d4f8e;_0x81796e['getCommentThread'](_0x54602b)||_0x81796e['addCommentThread']({'threadId':_0x54602b,'channelId':_0x4e0db4,'comments':_0x2d5949?_0x2d5949['map'](S):[],'context':_0x461943,'attributes':_0x142026,'resolvedAt':_0x45caa6,'resolvedBy':_0x2e3ea2,'isFromAdapter':!0x0});}),this['listenTo'](_0x51fa2d,'commentThreadUpdated',(_0x19c496,{commentThreadId:_0x3a28ae,documentId:_0x2920b8,context:_0x2d73ea,unlinkedAt:_0xe84df,attributes:_0x5bfc73})=>{_0x81796e['getCommentThread'](_0x3a28ae)&&_0x81796e['updateCommentThread']({'threadId':_0x3a28ae,'channelId':_0x2920b8,'context':_0x2d73ea,'unlinkedAt':_0xe84df,'attributes':_0x5bfc73,'isFromAdapter':!0x0});}),this['listenTo'](_0x51fa2d,'commentThreadResolved',(_0x59fa5b,{commentThreadId:_0x5ed39e,resolvedBy:_0x4c50f6,resolvedAt:_0xf74b91})=>{const _0x158d73=_0x81796e['getCommentThread'](_0x5ed39e);_0x158d73&&_0x158d73['resolve']({'resolvedBy':_0x4c50f6,'resolvedAt':_0xf74b91,'isFromAdapter':!0x0});}),this['listenTo'](_0x51fa2d,'commentThreadReopened',(_0x1fc94b,{commentThreadId:_0x59a2cc})=>{const _0x29cca7=_0x81796e['getCommentThread'](_0x59a2cc);_0x29cca7&&_0x29cca7['reopen']({'isFromAdapter':!0x0});}),this['listenTo'](_0x51fa2d,'commentThreadRemoved',(_0x58f5a4,{commentThreadId:_0x55ce8d})=>{const _0x265fe0=_0x81796e['getCommentThread'](_0x55ce8d);_0x265fe0&&_0x265fe0['remove']({'isFromAdapter':!0x0});}),this['listenTo'](_0x51fa2d,'commentAdded',(_0x2f32bc,_0x1c1ea8)=>{const _0x2a9bd4=_0x1c1ea8['commentThreadId'],_0x4bb639=_0x81796e['getCommentThread'](_0x2a9bd4);_0x4bb639&&_0x4bb639['addComment']({...S(_0x1c1ea8),'isFromAdapter':!0x0});}),this['listenTo'](_0x51fa2d,'commentUpdated',(_0x126684,{commentThreadId:_0x598c3d,commentId:_0x33c08f,content:_0x3ade66,attributes:_0x4ca2f5})=>{const _0x28aa11=_0x81796e['getCommentThread'](_0x598c3d);if(_0x28aa11){const _0x29688e=_0x28aa11['getComment'](_0x33c08f);_0x29688e&&_0x29688e['update']({'content':_0x3ade66,'attributes':_0x4ca2f5,'isFromAdapter':!0x0});}}),this['listenTo'](_0x51fa2d,'commentRemoved',(_0x3d71a6,{commentThreadId:_0x2aeec5,commentId:_0x218c11})=>{const _0x2bf15d=_0x81796e['getCommentThread'](_0x2aeec5);if(_0x2bf15d){const _0xeb125e=_0x2bf15d['getComment'](_0x218c11);_0xeb125e&&_0xeb125e['remove']({'isFromAdapter':!0x0});}}),await this['_connectService'](_0x2859d0);}['destroy'](){if(this['context']instanceof _0x112e10){const _0x563767=this['context']['config']['get']('collaboration.channelId');this['_terminateService'](_0x563767);}}['_terminateService'](_0x57cb46){if(!this['_services']['has'](_0x57cb46))throw new _0x408616('cloudservicescommentsadapter-disconnect-not-exist',null,{'channelId':_0x57cb46});this['_getService'](_0x57cb46)['disconnect'](),this['_services']['delete'](_0x57cb46);}async['reconnect'](){for(const _0x88d658 of this['_services']['keys']())await this['_connectService'](_0x88d658);if(this['context']instanceof _0x112e10){const _0x12d8b4=this['context']['config']['get']('collaboration.channelId'),_0x287e1a=this['context']['plugins']['get'](i);_0x287e1a['unregister'](_0x12d8b4);const _0x331684=await this['_services']['get'](_0x12d8b4)['getConnectedSessions']();_0x287e1a['register'](_0x12d8b4,_0x331684);}}async['_connectService'](_0x4ad732){const {connection:_0x2508a6}=this['context']['plugins']['get'](c),_0x3347c2=this['context']['plugins']['get']('CommentsRepository'),_0x4fc6e0=this['_services']['get'](_0x4ad732),_0x2139e0=await _0x4fc6e0['connect'](_0x2508a6);await this['_fetchMissingUsersForThreads'](_0x2139e0);const _0x162206=new Set(Array['from'](_0x3347c2['getCommentThreads']({'channelId':_0x4ad732}),_0x21960e=>_0x21960e['id']));for(const _0x96374b of _0x2139e0)_0x96374b['deletedAt']||_0x162206['delete'](_0x96374b['commentThreadId']);for(const _0x1fe4f4 of _0x162206)_0x3347c2['getCommentThread'](_0x1fe4f4)['remove']({'isFromAdapter':!0x0});for(const _0x5cfb57 of _0x2139e0){let _0x1fa430=_0x3347c2['getCommentThread'](_0x5cfb57['commentThreadId']);const {commentThreadId:_0x1de89f,context:_0x132a21,attributes:_0x199415,resolvedBy:_0xd8f423,resolvedAt:_0x11b49f,unlinkedAt:_0x83d5d2,deletedAt:_0x58eb9c}=_0x5cfb57;if(_0x58eb9c)continue;_0x1fa430||(_0x1fa430=_0x3347c2['addCommentThread']({'channelId':_0x4ad732,'threadId':_0x1de89f,'context':_0x132a21,'attributes':_0x199415||{},'resolvedBy':_0xd8f423,'resolvedAt':_0x11b49f,'unlinkedAt':_0x83d5d2,'isFromAdapter':!0x0}));const _0x1b84a2=new Set(Array['from'](_0x1fa430['comments'],_0xfdf117=>_0xfdf117['id']));for(const _0x4ca0af of _0x5cfb57['comments'])_0x1b84a2['delete'](_0x4ca0af['commentId']);for(const _0x310fae of _0x1b84a2)_0x1fa430['getComment'](_0x310fae)['remove']({'isFromAdapter':!0x0});for(const _0x34f5f3 of _0x5cfb57['comments']){const _0x1d3256=_0x1fa430['getComment'](_0x34f5f3['commentId']);_0x1d3256?_0x1d3256['content']!==_0x34f5f3['content']&&_0x1d3256['update']({'content':_0x34f5f3['content'],'isFromAdapter':!0x0}):_0x1fa430['addComment'](Object['assign'](S(_0x34f5f3),{'isFromAdapter':!0x0}));}}}['_getService'](_0x2e61a4){if(!this['_services']['has'](_0x2e61a4))throw new _0x408616('cloudservicescommentsadapter-service-not-exist',null,{'channelId':_0x2e61a4});return this['_services']['get'](_0x2e61a4);}async['_fetchMissingUsersForThreads'](_0x1fd44a){const _0x5e0b3e=this['context']['plugins']['get'](_0x4c3346),{connection:_0x1ebf38}=this['context']['plugins']['get'](c),_0x185cc1=new Set();for(const {resolvedBy:_0x4589a1,comments:_0x23f30d}of _0x1fd44a){_0x4589a1&&!_0x5e0b3e['getUser'](_0x4589a1)&&_0x185cc1['add'](_0x4589a1);for(const {userId:_0x35156b}of _0x23f30d)_0x5e0b3e['getUser'](_0x35156b)||_0x185cc1['add'](_0x35156b);}if(0x0===_0x185cc1['size'])return;const _0x5d1a00=await lt['getMany'](_0x1ebf38,Array['from'](_0x185cc1));for(const _0x4cf02d of _0x5d1a00)_0x5e0b3e['getUser'](_0x4cf02d['id'])||_0x5e0b3e['addUser'](_0x4cf02d);}}async function B(_0x3286db){if('404'!==_0x3286db['code'])throw _0x3286db;}function dt(_0x184926){if((_0x5b9c4b=_0x184926)['message']['startsWith']('cloud-services-internal-error:\x20Comments\x20Service\x20is\x20not\x20connected.')||_0x5b9c4b['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x5b9c4b['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.'))return new Promise(()=>{});var _0x5b9c4b;throw _0x184926;}function S(_0x277c97){return{'threadId':_0x277c97['commentThreadId'],'commentId':_0x277c97['commentId'],'content':_0x277c97['content'],'createdAt':_0x277c97['createdAt'],'authorId':_0x277c97['userId'],'attributes':_0x277c97['attributes']||{}};}class f extends _0x50372a{static ['TrackChangesService']=/* #__PURE__ -- @preserve */
|
|
27
|
+
((()=>_0x3715b6)());['_bufferedRequests'];['_trackChangesService'];static get['requires'](){return[a,'TrackChangesEditing',c];}static get['pluginName'](){return'CloudServicesTrackChangesAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x3cb4ca){super(_0x3cb4ca);const _0x2b33ec=this['editor']['config']['get']('collaboration.channelId');this['_bufferedRequests']=new Map(),this['_trackChangesService']=new f['TrackChangesService'](_0x2b33ec);}['init'](){const _0x57ead0=this['editor']['plugins']['get'](c),_0x4196c3=this['editor']['plugins']['get']('TrackChangesEditing');return _0x4196c3['adapter']={'getSuggestion':async _0x1a684f=>{await this['_waitForServiceReady']();const _0x43a307=await this['_trackChangesService']['get'](_0x1a684f)['catch'](R);return await this['_fetchMissingUsersForThreads']([_0x43a307]),_0x43a307;},'addSuggestion':async({id:_0x58c437,type:_0x4f5819,data:_0x54ca2a,originalSuggestionId:_0xc494f0,attributes:_0x8ee014})=>{await this['_waitForServiceReady']();const _0x47af8b={'id':_0x58c437,'type':_0x4f5819,'data':_0x54ca2a,'originalSuggestionId':_0xc494f0,'attributes':_0x8ee014},_0x4c4db2=await this['_trackChangesService']['add'](_0x58c437,_0x4f5819,_0x54ca2a,_0xc494f0,_0x8ee014)['catch'](_0x1839f5=>{if(ut(_0x1839f5))return new Promise(_0x56f2b7=>{this['_bufferedRequests']['set'](_0x58c437,{'resolve':_0x56f2b7,'suggestionData':_0x47af8b});});throw _0x1839f5;});return this['_bufferedRequests']['delete'](_0x58c437),_0x4c4db2;},'updateSuggestion':async(_0x144b0f,_0x1576a6)=>{if(await this['_waitForServiceReady'](),'open'!==_0x1576a6['state'])return this['_trackChangesService']['update'](_0x144b0f,_0x1576a6)['catch'](R);}},this['listenTo'](this['_trackChangesService'],'suggestionUpdated',(_0x28feed,_0x227ee3)=>{_0x4196c3['hasSuggestion'](_0x227ee3['id'])&&(_0x4196c3['getSuggestion'](_0x227ee3['id'])['attributes']=_0x227ee3['attributes']);}),this['_trackChangesService']['connect'](_0x57ead0['connection'])['then'](_0x12b2d9=>(_0x57ead0['addToReconnectionStack'](this),this['_fetchMissingUsersForThreads'](_0x12b2d9)['then'](()=>{for(const _0x257c05 of _0x12b2d9){_0x4196c3['addSuggestionData'](_0x257c05)['_saved']=!0x0;}})));}async['reconnect'](){const _0x5c5dc6=this['editor']['plugins']['get']('TrackChangesEditing'),{connection:_0x5b5713}=this['editor']['plugins']['get'](c),_0x40f528=await this['_trackChangesService']['connect'](_0x5b5713);await this['_fetchMissingUsersForThreads'](_0x40f528);for(const {suggestionData:_0x378b65,resolve:_0x1e70cf}of this['_bufferedRequests']['values']()){let _0x2e17d0=_0x40f528['find'](_0x304bb4=>_0x304bb4['id']===_0x378b65['id']);_0x2e17d0||(_0x2e17d0=await this['_trackChangesService']['add'](_0x378b65['id'],_0x378b65['type'],_0x378b65['data'],_0x378b65['originalSuggestionId'])),_0x1e70cf(_0x2e17d0);}for(const _0x324c91 of _0x40f528)_0x5c5dc6['hasSuggestion'](_0x324c91['id'])||_0x5c5dc6['addSuggestionData'](_0x324c91);}async['_waitForServiceReady'](){this['_trackChangesService']['isConnected']||await new Promise(_0x2d028d=>{this['listenTo'](this['_trackChangesService'],'connected',_0x204485=>{_0x204485['off'](),_0x2d028d();});});}async['_fetchMissingUsersForThreads'](_0x5b188e){const _0x2674f1=this['editor']['plugins']['get'](_0x4c3346),{connection:_0x61cae6}=this['editor']['plugins']['get'](c),_0x2b272d=new Set();for(const {authorId:_0x48da32}of _0x5b188e)_0x2674f1['getUser'](_0x48da32)||_0x2b272d['add'](_0x48da32);if(0x0===_0x2b272d['size'])return;const _0x4a246b=await lt['getMany'](_0x61cae6,Array['from'](_0x2b272d));for(const _0x4f7c56 of _0x4a246b)_0x2674f1['getUser'](_0x4f7c56['id'])||_0x2674f1['addUser'](_0x4f7c56);}}function R(_0x4f5f03){if(ut(_0x4f5f03))return new Promise(()=>{});throw _0x4f5f03;}function ut(_0x58c6f3){return _0x58c6f3['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x58c6f3['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}class m extends _0x50372a{static get['requires'](){return['Comments',a,n,c];}static get['pluginName'](){return'RealTimeCollaborativeComments';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['init'](){const _0x20557a=this['editor']['plugins']['get'](c),_0x2e9ba1=this['editor']['plugins']['get']('CommentsEditing'),_0x77c8b2=this['editor']['plugins']['get'](a);return this['editor']['data']['once']('ready',()=>{this['listenTo'](_0x20557a,'change:state',(_0x1619fd,_0x32e1c4,_0x494523)=>{_0x2e9ba1['isThreadsLoadingPaused']='connected'!==_0x494523;});}),this['listenTo'](_0x20557a,'change:state',(_0x2ce699,_0x4e938d,_0x1409c4)=>{this['editor']['plugins']['get']('CommentsRepository')['switchReadOnly']('connected'!==_0x1409c4);}),_0x77c8b2['_setUpService'](this['editor']['config']['get']('collaboration.channelId'));}['destroy'](){this['editor']['plugins']['get'](a)['_terminateService'](this['editor']['config']['get']('collaboration.channelId')),super['destroy']();}}class p extends _0x50372a{static get['requires'](){return[m,f,'TrackChanges'];}static get['pluginName'](){return'RealTimeCollaborativeTrackChanges';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}class u extends _0x50372a{static ['RevisionHistoryService']=/* #__PURE__ -- @preserve */
|
|
28
|
+
((()=>_0x20d94b)());['_lastRequestId'];['_revisionTracker'];['_revisionHistoryService'];['_oldOffset'];static get['requires'](){return[c,l,'RevisionTracker',i,_0x4c3346];}static get['pluginName'](){return'CloudServicesRevisionHistoryAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x3335c3){super(_0x3335c3);const _0x17d594=this['editor']['config']['get']('collaboration.channelId');this['_lastRequestId']=null,this['_revisionTracker']=this['editor']['plugins']['get']('RevisionTracker'),this['_revisionHistoryService']=new u['RevisionHistoryService'](_0x17d594);}async['init'](){const _0x43e13b=this['editor']['plugins']['get'](l),_0x5945e0=_0x43e13b['serverHistory'],_0x265929=this['editor']['plugins']['get'](c);this['_revisionTracker']['setSource']({'history':_0x5945e0,'getLatestVersion':()=>this['_getLatestVersion'](),'getCurrentRevisionId':()=>_0x43e13b['sessionId']});const _0x3f9524=this['editor']['config']['get']('cloudServices.bundleVersion')||nt,_0x362857=await _0x2f88e7['isBundleUploaded'](_0x265929['connection'],_0x3f9524);this['_revisionTracker']['adapter']={'getRevision':async({revisionId:_0x5681e9})=>(await this['_waitForServiceReady'](),await this['_revisionHistoryService']['getRevision'](_0x5681e9)),'updateRevisions':async _0x5d4c73=>{await this['_waitForServiceReady']();const _0x1dd2b0=this['_revisionTracker']['currentRevision'];if(_0x362857&&0x1===_0x5d4c73['length']&&_0x5d4c73[0x0]['id']===_0x1dd2b0['id'])return _0x5d4c73;for(const _0x232fc6 of _0x5d4c73)_0x232fc6['id']===_0x1dd2b0['id']&&(_0x232fc6['isEmptyCurrent']=_0x232fc6['fromVersion']===_0x232fc6['toVersion']);return this['_revisionHistoryService']['updateRevisions'](_0x5d4c73,this['_lastRequestId'])['then'](_0x2912b4=>(this['_lastRequestId']=_0x2912b4,_0x5d4c73))['catch'](_0xe13d99=>{if(U(_0xe13d99)||'400'===_0xe13d99['code']&&void 0x0!==_0xe13d99['data']['wrongRequestId']){for(const _0x52c7cc of _0x5d4c73){!this['_revisionTracker']['repository']['getRevision'](_0x52c7cc['id'])||this['_revisionTracker']['_bufferUpdate'](_0x52c7cc['id'],_0x52c7cc,!0x1);}if(U(_0xe13d99))throw _0xe13d99;return _0x5d4c73;}throw _0xe13d99;});}},this['listenTo'](this['_revisionHistoryService'],'revisionsUpdated',(_0x2c345a,{revisionsData:_0x2d8dca,requestId:_0x517b4f})=>{Math['max'](..._0x2d8dca['map'](_0x56cff7=>_0x56cff7['toVersion']))>this['_getLatestVersionFromServerOperations']()-0x1?this['_getLatestVersion']()['then'](()=>{this['_handleRevisionsUpdate'](_0x2d8dca,_0x517b4f);}):this['_handleRevisionsUpdate'](_0x2d8dca,_0x517b4f);});const {revisions:_0x4223b6,requestId:_0x3468ef}=await this['_revisionHistoryService']['connect'](_0x265929['connection']);_0x265929['addToReconnectionStack'](this),this['_lastRequestId']=_0x3468ef,await this['_fetchMissingUsers'](_0x4223b6);for(const _0x298f37 of _0x4223b6)this['_revisionTracker']['addRevisionData'](_0x298f37);this['listenTo'](_0x43e13b,'change:_isConnected',(_0x269e9b,_0x4297b7,_0x4fe7a2)=>{_0x4fe7a2&&(this['_oldOffset']=_0x43e13b['_offset'],_0x269e9b['off']());}),this['_revisionTracker']['bind']('isEnabled')['to'](_0x265929,'state',_0x21d9c9=>_0x21d9c9===_0x39f1be['CONNECTED']);}async['reconnect'](){const _0x5d9f18=this['editor']['plugins']['get'](c),_0x58d57d=this['editor']['plugins']['get'](l),_0x18ef1a=async()=>{const _0x43ebe9=this['_revisionTracker']['currentRevision'],_0x1db6b1=_0x43ebe9['id'],_0x1090ec=_0x1db6b1!==_0x58d57d['sessionId'];if(_0x1090ec){const _0x4e5f4c=_0x58d57d['_offset']-this['_oldOffset'],_0x9c289f=this['_getLatestVersionFromServerOperations']();this['_revisionTracker']['_revisionDataBuilder']['reInit']();if(_0x43ebe9['toVersion']+_0x4e5f4c!==_0x9c289f){const _0x1039df=_0x43ebe9['fromVersion']+_0x4e5f4c,_0x25fc3d=this['editor']['plugins']['get'](_0x4c3346),_0x4fdab9=this['_revisionTracker']['buildRevisionData']({'revision':_0x43ebe9,'from':_0x1039df,'to':_0x9c289f});_0x4fdab9['id']=_0x43ebe9['id'];const _0x74d991=_0x4fdab9['authorsIds']['map'](_0x43f931=>_0x25fc3d['getUser'](_0x43f931));_0x43ebe9['_update']({..._0x4fdab9,'authors':_0x74d991},!0x0),this['_revisionTracker']['_bufferUpdate'](_0x43ebe9['id'],_0x4fdab9,!0x0);}this['_revisionTracker']['_startingVersion']=_0x9c289f,(_0x43ebe9['toVersion']===_0x43ebe9['fromVersion']&&!this['_revisionTracker']['_bufferedUpdates']['has'](_0x1db6b1)&&this['_revisionTracker']['repository']['_revisions']['remove'](_0x1db6b1),this['_revisionTracker']['_createCurrentRevision'](_0x9c289f));}const {revisions:_0x3ad5e8,requestId:_0xa9019d}=await this['_revisionHistoryService']['reconnect'](_0x5d9f18['connection'],this['_lastRequestId']);_0x1090ec&&_0x3ad5e8['length']>0x0?_0x58d57d['_handleReconnectionError']():(await this['_fetchMissingUsers'](_0x3ad5e8),this['_handleRevisionsUpdate'](_0x3ad5e8,_0xa9019d),this['_revisionTracker']['sendBufferedUpdates']());};return _0x58d57d['_isConnected']?_0x18ef1a():new Promise((_0x3f164b,_0x1cb8e6)=>{_0x58d57d['once']('change:_isConnected',()=>{_0x18ef1a()['then'](_0x3f164b)['catch'](_0x1cb8e6);});});}['destroy'](){super['destroy']();}async['_waitForServiceReady'](){this['_revisionHistoryService']['isConnected']||await new Promise(_0x25b7d7=>{this['listenTo'](this['_revisionHistoryService'],'connected',_0x589228=>{_0x589228['off'](),_0x25b7d7();});});}['_getLatestVersionFromServerOperations'](){const _0x346069=this['editor']['plugins']['get'](l)['serverHistory']['getOperations']()['reverse']();for(const _0x3d4f5d of _0x346069)if('marker'!==_0x3d4f5d['type']||_0x3d4f5d['affectsData'])return _0x3d4f5d['baseVersion']+0x1;}['_getLatestVersion'](){const _0x61d21a=this['editor']['plugins']['get'](l);return new Promise(_0x1a2d16=>{_0x61d21a['_isPendingUpdate']?_0x61d21a['once']('change:_isPendingUpdate',()=>{_0x1a2d16(this['_getLatestVersionFromServerOperations']());}):_0x1a2d16(this['_getLatestVersionFromServerOperations']());});}['_handleRevisionsUpdate'](_0xd9feed,_0x5b0bea){const _0x2ad339=this['_revisionTracker']['repository'];this['_lastRequestId']=_0x5b0bea;for(const _0x1b89d5 of _0xd9feed){const _0x1bc378=_0x2ad339['getRevision'](_0x1b89d5['id']);if(_0x1bc378){if((_0x1b89d5['fromVersion']||_0x1b89d5['toVersion'])&&(_0x1b89d5['diffData']=null),_0x1bc378===this['_revisionTracker']['currentRevision']){const _0x2701f2=Math['max'](_0x1bc378['toVersion'],_0x1b89d5['toVersion']),_0x2f2c1b=Math['max'](_0x1bc378['fromVersion'],_0x1b89d5['fromVersion']);let _0xe21026;_0x1bc378['toVersion']===_0x1b89d5['toVersion']&&_0x1bc378['fromVersion']===_0x1b89d5['fromVersion']?(_0xe21026=!0x0,this['_preventResendingRevisionData'](_0x1b89d5)):_0x1b89d5['toVersion']===_0x2701f2&&_0x1b89d5['fromVersion']===_0x2f2c1b?_0xe21026=!0x1:(_0x1bc378['toVersion']===_0x2701f2&&_0x1bc378['fromVersion']===_0x2f2c1b||this['_fixRevision']({'revision':_0x1bc378,'from':_0x2f2c1b,'to':_0x2701f2}),_0xe21026=!0x0),_0xe21026&&(delete _0x1b89d5['fromVersion'],delete _0x1b89d5['toVersion'],delete _0x1b89d5['diffData'],delete _0x1b89d5['createdAt'],delete _0x1b89d5['authorsIds']);}this['_revisionTracker']['setRevisionData'](_0x1b89d5),this['_preventResendingRevisionData'](_0x1b89d5);}else this['_revisionTracker']['addRevisionData'](_0x1b89d5);}const _0x50ba41=_0x2ad339['getRevisions']();_0x50ba41['reverse']();for(let _0xa0c3ea=0x0;_0xa0c3ea<_0x50ba41['length']-0x1;_0xa0c3ea++){const _0x25a682=_0x50ba41[_0xa0c3ea],_0x53cd71=_0x50ba41[_0xa0c3ea+0x1];if(_0x25a682['fromVersion']<_0x53cd71['toVersion']){const _0x4c7f16=_0x53cd71['toVersion'],_0x2c4f94=Math['max'](_0x4c7f16,_0x25a682['toVersion']);this['_fixRevision']({'revision':_0x25a682,'from':_0x4c7f16,'to':_0x2c4f94});}}}['_fixRevision']({revision:_0x32e5d4,from:_0x45527e,to:_0x139e71}={}){const _0x4a7de3=this['editor']['plugins']['get'](_0x4c3346),_0x13b666=this['_revisionTracker']['buildRevisionData']({'revision':_0x32e5d4,'from':_0x45527e,'to':_0x139e71});_0x13b666['authors']=_0x13b666['authorsIds']['map'](_0xc619b4=>_0x4a7de3['getUser'](_0xc619b4)),_0x32e5d4['_update'](_0x13b666);}['_preventResendingRevisionData'](_0x5c159b){const _0x563f45={};_0x563f45['id']=_0x5c159b['id'];for(const _0x295536 of Object['keys'](_0x5c159b))'id'!==_0x295536&&(_0x563f45[_0x295536]=void 0x0);this['_revisionTracker']['_bufferUpdate'](_0x563f45['id'],_0x563f45,!0x0);}async['_fetchMissingUsers'](_0x59feaf){const _0x19839e=this['editor']['plugins']['get'](_0x4c3346),{connection:_0x58bb33}=this['editor']['plugins']['get'](c),_0xabc583=new Set();for(const _0x24c934 of _0x59feaf){for(const _0x24e53d of _0x24c934['authorsIds'])_0x2733ce(_0x24e53d);_0x24c934['creatorId']&&_0x2733ce(_0x24c934['creatorId']);}if(0x0===_0xabc583['size'])return;const _0x812fff=await lt['getMany'](_0x58bb33,Array['from'](_0xabc583));for(const _0xa279e of _0x812fff)_0x19839e['getUser'](_0xa279e['id'])||_0x19839e['addUser'](_0xa279e);function _0x2733ce(_0x9d6c8){_0x19839e['getUser'](_0x9d6c8)||_0xabc583['add'](_0x9d6c8);}}}function U(_0x2f01d3){return _0x2f01d3['message']['startsWith']('cloud-services-internal-error:\x20Revision\x20History\x20Service\x20is\x20not\x20connected.')||_0x2f01d3['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x2f01d3['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}class g extends _0x50372a{static get['requires'](){return['RevisionHistory',u,n];}static get['pluginName'](){return'RealTimeCollaborativeRevisionHistory';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}class ts extends _0x32c1aa{constructor(_0x99282d){super(_0x99282d);const _0x2fe8f0=this['bindTemplate'];this['set']('usersCount',0x0),this['set']('isHidden',!0x0),this['setTemplate']({'tag':'div','attributes':{'class':['ck','ck-presence-list__counter',_0x2fe8f0['if']('isHidden','ck-presence-list__counter--hidden')]},'children':[{'text':_0x2fe8f0['to']('usersCount',_0x4a947f=>Q(_0x99282d,'CONNECTED_USERS',_0x4a947f))}]});}}class es extends _0x32c1aa{['items'];['keystrokes'];constructor(_0x1c64a1){super(_0x1c64a1);const _0x5d62ec=this['bindTemplate'];this['items']=this['createCollection'](),this['keystrokes']=new _0x60e8df(),this['set']({'hasPopup':!0x1,'isExpanded':!0x1}),this['setTemplate']({'tag':'div','attributes':{'aria-haspopup':_0x5d62ec['if']('hasPopup'),'aria-expanded':_0x5d62ec['to']('isExpanded',_0x1052d2=>this['hasPopup']&&String(_0x1052d2)),'aria-label':_0x5d62ec['to']('hasPopup',_0x41c488=>Q(_0x1c64a1,_0x41c488?'Collapsed\x20connected\x20users\x20list\x20(press\x20ENTER\x20to\x20open\x20it)':'Connected\x20users\x20list')),'role':'list','tabindex':_0x5d62ec['to']('hasPopup',_0x1c1000=>!!_0x1c1000&&0x0),'class':['ck','ck-presence-list__list']},'children':this['items'],'on':{'click':_0x5d62ec['to'](()=>this['fire']('execute'))}}),this['on']('change:hasPopup',(_0x1b6c96,_0x41ee2a,_0x43d221)=>{this['element']&&(_0x43d221?this['element']['setAttribute']('aria-expanded',String(this['isExpanded'])):this['element']['removeAttribute']('aria-expanded'));});}['focus'](){this['element']['focus']();}['render'](){super['render'](),this['keystrokes']['listenTo'](this['element']);}}class L extends _0x32c1aa{['counterView'];['inlineListView'];constructor(_0xbb82cc){super(_0xbb82cc);const _0x4d6c23=this['bindTemplate'];this['set']('isCollapsed',!0x0),this['counterView']=new ts(this['locale']),this['inlineListView']=new es(_0xbb82cc),this['inlineListView']['bind']('hasPopup')['to'](this,'isCollapsed'),this['listenTo'](this['inlineListView']['items'],'change',()=>{for(const _0x5abe92 of this['inlineListView']['items'])_0x5abe92['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',_0x4d6c23['if']('isCollapsed','ck-presence-list--collapsed')]},'children':[this['counterView'],this['inlineListView']]});}}class j extends _0x32c1aa{['listWrapperView'];constructor(_0x14c926,_0x3dbaeb){super(_0x14c926),this['listWrapperView']=new ft(_0x14c926,_0x3dbaeb),this['setTemplate']({'tag':'div','attributes':{'tabindex':-0x1,'role':'application','class':['ck','ck-presence-list__dropdown-list'],'aria-label':Q(_0x14c926,'Connected\x20users\x20list\x20dropdown\x20menu')},'children':[this['listWrapperView']]});}}class ft extends _0x5e215a{constructor(_0x53fe56,_0xeb3e12){super(_0x53fe56);const _0x523b94=this['bindTemplate'];this['set']('_isScrollable',!0x1),this['setTemplate']({'tag':_0xeb3e12?'div':'ul','attributes':{'class':['ck','ck-reset','ck-list','ck-presence-list__dropdown-list-wrapper',_0x523b94['if']('_isScrollable','ck-presence-list__dropdown-list-wrapper_scrollable')],'role':_0x523b94['to']('role'),'aria-label':_0x523b94['to']('ariaLabel'),'aria-labelledby':_0x523b94['to']('ariaLabelledBy')},'children':this['items']}),this['listenTo'](_0x38475b['window'],'resize',()=>this['checkIfScrollable']()),this['items']['on']('change',()=>this['checkIfScrollable']());}['render'](){super['render'](),this['checkIfScrollable']();}['checkIfScrollable'](){const _0x4d3c33=this['element'];_0x4d3c33&&(this['_isScrollable']=Math['max'](_0x4d3c33['scrollHeight'],_0x4d3c33['clientHeight'])>0.8*window['innerHeight']);}}class k extends et{['userView'];constructor(_0x45bab6,_0x46441e,_0x18ca97){super(_0x45bab6);const _0x2295c5=this['bindTemplate'];this['userView']=new rt(_0x45bab6,_0x46441e);const _0xda6f3b={'tag':'li','attributes':{'class':['ck','ck-presence-list__dropdown-list-item'],'tabindex':-0x1,'role':'presentation','aria-label':_0x46441e['name']},'children':[this['userView'],{'tag':'span','attributes':{'class':['ck','ck-user__full-name']},'children':[{'text':_0x46441e['name']}]},{'tag':'span','attributes':{'class':['ck','ck-presence-list__marker',_0x46441e['color']['getBackgroundColorClass']()],'aria-hidden':'true'}}]};_0x18ca97&&(_0xda6f3b['tag']='button',_0xda6f3b['on']={'click':_0x2295c5['to'](()=>this['fire']('execute'))}),this['setTemplate'](_0xda6f3b);}['focus'](){this['element']['focus']();}}class y extends _0x32c1aa{['userView'];['markerView'];constructor(_0x155632,_0x11163b,_0x168381){super(_0x155632);const _0x22b73f=this['bindTemplate'];this['set']('isFocusable',!0x1),this['set']('hasTooltip',!0x0),this['set']('tooltipPosition',''),this['userView']=new rt(_0x155632,_0x11163b),this['markerView']=new ct(_0x155632,_0x11163b);const _0x3ad4bb=new ot(_0x155632);_0x3ad4bb['template']['tag']='span',_0x3ad4bb['text']=_0x11163b['name'];const _0x18c731={'tag':'div','attributes':{'class':['ck','ck-presence-list__list-item'],'role':'listitem','tabindex':_0x22b73f['to']('isFocusable',_0x595e2d=>!!_0x595e2d&&0x0),'aria-labelledby':_0x3ad4bb['id'],'data-cke-tooltip-text':this['userView']['name'],'data-cke-tooltip-position':_0x22b73f['to']('tooltipPosition'),'data-cke-tooltip-disabled':_0x22b73f['to']('hasTooltip',_0x1625a1=>!_0x1625a1),'data-cke-tooltip-class':'ck-presence-list__list-item__tooltip'},'children':[this['userView'],this['markerView'],_0x3ad4bb]};_0x168381&&(_0x18c731['tag']='button',_0x18c731['on']={'click':_0x22b73f['to'](()=>this['fire']('execute'))}),this['setTemplate'](_0x18c731);}}class ct extends _0x32c1aa{constructor(_0x2acadf,_0x24c0fa){super(_0x2acadf),this['setTemplate']({'tag':'span','attributes':{'class':['ck','ck-presence-list__marker',_0x24c0fa['color']['getBackgroundColorClass']()],'aria-hidden':'true'}});}}const A={'collapseAt':0x6,'displayMe':!0x0};class r extends _0x37a9d3{['currentDisplayedUsers'];['balloonPanelView'];['view'];['presenceDropdownView'];['_bodyCollection']=null;constructor(_0x4cadb1){super(_0x4cadb1),this['context']['config']['define']('presenceList',A);const _0x31d572=_0x4cadb1['config']['get']('presenceList.collapseAt');if('number'!=typeof _0x31d572)throw new _0x408616('presencelist-collapseat-invalid-format',this);if(_0x31d572<0x1)throw new _0x408616('presencelist-collapseat-invalid-format',this);this['_allConnectedUsers']=this['context']['plugins']['get'](i)['allConnectedUsers'],this['set']('usersCount',0x0),this['currentDisplayedUsers']=new _0x5da562(),this['balloonPanelView']=new _0x4bb92d(),this['balloonPanelView']['class']='ck\x20ck-presence-list__balloon',this['view']=this['_createView'](),this['presenceDropdownView']=void 0x0;}static get['requires'](){return[i];}['init'](){for(const _0x448557 of this['_allConnectedUsers'])this['_handleUserAdd'](_0x448557);this['listenTo'](this['_allConnectedUsers'],'add',(_0x2ae293,_0x1e748f)=>{this['_handleUserAdd'](_0x1e748f);}),this['listenTo'](this['_allConnectedUsers'],'remove',(_0x277e3d,_0x77f534)=>{this['_handleUserRemove'](_0x77f534);});}['_createView'](){const _0x371173=this['context'],_0x2cc2c8=new L(this['context']['locale']),_0x48a799=this['balloonPanelView'];if(!_0x1667f2(_0x371173['config']['get']('presenceList.container')))throw new _0x408616('presencelist-missing-container',this);return _0x2cc2c8['counterView']['bind']('usersCount')['to'](this),_0x2cc2c8['bind']('isCollapsed')['to'](this,'usersCount',_0x405e63=>{const {collapseAt:_0x5e9170,displayMe:_0x262b17}=_0x371173['config']['get']('presenceList'),_0x49224c=_0x405e63>=_0x5e9170;return _0x2cc2c8['counterView']['isHidden']=!(0x1==_0x405e63&&_0x262b17||_0x49224c),_0x49224c||this['hideDropdown'](),_0x49224c;}),_0x2cc2c8['inlineListView']['items']['bindTo'](this['currentDisplayedUsers'])['using'](_0x15db90=>{const _0x406c99=_0x371173['config']['get']('presenceList'),_0xbb6ed5=new y(_0x371173['locale'],_0x15db90,!!_0x406c99['onClick']);return _0xbb6ed5['bind']('hasTooltip')['to'](_0x2cc2c8,'isCollapsed',_0x175d65=>!_0x175d65),_0xbb6ed5['bind']('isFocusable')['to'](_0x2cc2c8,'isCollapsed',_0x5cd35f=>!_0x5cd35f),_0x406c99['onClick']&&this['listenTo'](_0xbb6ed5,'execute',()=>{this['view']['isCollapsed']||_0x406c99['onClick'](_0x15db90,_0xbb6ed5['element']);}),_0xbb6ed5;}),this['listenTo'](_0x2cc2c8['inlineListView'],'execute',()=>{this['presenceDropdownView']?this['hideDropdown']():this['view']['isCollapsed']&&this['showDropdown']();}),_0x2cc2c8['inlineListView']['keystrokes']['set']('Enter',(_0x24c4ab,_0x68243a)=>{this['view']['isCollapsed']&&(this['showDropdown'](),_0x68243a());}),_0x2cc2c8['render'](),_0x48a799['render'](),_0x452c2f({'emitter':_0x2cc2c8,'activator':()=>_0x48a799['isVisible'],'contextElements':[_0x48a799['element'],_0x2cc2c8['inlineListView']['element']],'callback':()=>this['hideDropdown']()}),_0x371173['config']['get']('presenceList.container')['appendChild'](_0x2cc2c8['element']),this['_bodyCollection']=new _0x400f02(this['context']['locale']),this['_bodyCollection']['attachToDom'](),this['_bodyCollection']['add'](this['balloonPanelView']),_0x2cc2c8;}['_handleUserAdd'](_0x5923f6){if(!this['context']['config']['get']('presenceList.displayMe')&&_0x5923f6['isMe'])return;const _0x234ce4=this['context']['config']['get']('presenceList.collapseAt')-0x1;this['usersCount']++,this['currentDisplayedUsers']['length']==_0x234ce4&&this['currentDisplayedUsers']['length']>0x1&&this['currentDisplayedUsers']['remove'](0x1);const _0x353801=_0x5923f6['isMe']?0x0:this['currentDisplayedUsers']['length'];this['currentDisplayedUsers']['add'](_0x5923f6,_0x353801);}['_handleUserRemove'](_0x468634){if(this['usersCount']--,this['currentDisplayedUsers']['get'](_0x468634['id'])&&(this['currentDisplayedUsers']['remove'](_0x468634['id']),this['currentDisplayedUsers']['length']<this['usersCount'])){for(const _0x8b8a0c of Array['from'](this['_allConnectedUsers'])['reverse']())if(!this['currentDisplayedUsers']['get'](_0x8b8a0c['id']))return void this['currentDisplayedUsers']['add'](_0x8b8a0c,Math['min'](this['currentDisplayedUsers']['length'],0x1));}}['showDropdown'](){if(this['presenceDropdownView'])return;const _0x4ef9bb=this['context']['config']['get']('presenceList');this['presenceDropdownView']=new j(this['context']['locale'],!!_0x4ef9bb['onClick']),this['view']['inlineListView']['isExpanded']=!0x0;const {listWrapperView:_0x177eba}=this['presenceDropdownView'];_0x177eba['items']['bindTo'](this['_allConnectedUsers'])['using'](_0xcae3b8=>{if(!_0x4ef9bb['displayMe']&&_0xcae3b8['isMe'])return null;const _0x55639f=new k(this['context']['locale'],_0xcae3b8,!!_0x4ef9bb['onClick']);return _0x4ef9bb['onClick']&&this['listenTo'](_0x55639f,'execute',()=>{_0x4ef9bb['onClick'](_0xcae3b8,_0x55639f['element']);}),_0x55639f;}),this['balloonPanelView']['content']['add'](this['presenceDropdownView']),this['balloonPanelView']['pin']({'target':this['view']['inlineListView']['element']}),_0x177eba['focus'](),_0x177eba['checkIfScrollable']();const _0x559eae=(_0x4ecf5c,_0x1330db)=>{this['hideDropdown'](),this['view']['inlineListView']['focus'](),_0x1330db();};_0x177eba['keystrokes']['set']('Esc',_0x559eae),_0x177eba['keystrokes']['set']('Shift+Tab',_0x559eae),_0x177eba['keystrokes']['set']('Tab',(_0x23ba25,_0x41491c)=>{!function(_0x551708){const _0x29e028=['a','button','input','select','textarea','[tabindex]','[contenteditable]']['map'](_0x5378fd=>_0x5378fd+':not([disabled]):not([tabindex=\x22-1\x22])')['join'](','),_0x39489a=[...document['body']['querySelectorAll'](_0x29e028)]['filter'](_0x2a626c=>_0x2a626c===document['activeElement']||_0x2a626c['offsetWidth']+_0x2a626c['offsetHeight']>0x0)['sort']((_0x32d156,_0x3f229b)=>(_0x32d156['tabIndex']||0x0)-(_0x3f229b['tabIndex']||0x0)),_0x10d74b=_0x39489a['indexOf'](_0x551708),_0xe0dc73=_0x39489a[(_0x10d74b+0x1)%_0x39489a['length']];_0xe0dc73&&_0xe0dc73['focus']();}(this['view']['element']),this['hideDropdown'](),_0x41491c();}),_0x177eba['focusTracker']['add'](this['view']['element']),_0x177eba['focusTracker']['on']('change:isFocused',(_0x1f614c,_0x5252ba,_0x16f62f)=>{_0x16f62f||this['hideDropdown']();});}['hideDropdown'](){this['presenceDropdownView']&&(this['view']['inlineListView']['isExpanded']=!0x1,this['balloonPanelView']['unpin'](),this['balloonPanelView']['content']['remove'](this['presenceDropdownView']),this['presenceDropdownView']['destroy'](),this['presenceDropdownView']=void 0x0);}['destroy'](){super['destroy'](),this['view']&&this['view']['isRendered']&&this['view']['destroy'](),this['_bodyCollection']&&(this['_bodyCollection']['detachFromDom'](),this['_bodyCollection']['destroy'](),this['_bodyCollection']=null);}}class s extends _0x37a9d3{static get['requires'](){return[i,r];}static get['pluginName'](){return'PresenceList';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}export{a as CloudServicesCommentsAdapter,u as CloudServicesRevisionHistoryAdapter,f as CloudServicesTrackChangesAdapter,s as PresenceList,l as RealTimeCollaborationClient,m as RealTimeCollaborativeComments,n as RealTimeCollaborativeEditing,g as RealTimeCollaborativeRevisionHistory,p as RealTimeCollaborativeTrackChanges};
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
*/
|
|
5
5
|
/**
|
|
6
6
|
* @license Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.
|
|
7
|
-
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-
|
|
7
|
+
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
|
|
8
8
|
*/
|
|
9
9
|
/**
|
|
10
10
|
* @module real-time-collaboration/presencelist/presencelistui
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
*/
|
|
5
5
|
/**
|
|
6
6
|
* @license Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.
|
|
7
|
-
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-
|
|
7
|
+
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
|
|
8
8
|
*/
|
|
9
9
|
import { View } from 'ckeditor5/src/ui.js';
|
|
10
10
|
import type { Locale } from 'ckeditor5/src/utils.js';
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
*/
|
|
5
5
|
/**
|
|
6
6
|
* @license Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.
|
|
7
|
-
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-
|
|
7
|
+
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
|
|
8
8
|
*/
|
|
9
9
|
import { ListItemView } from 'ckeditor5/src/ui.js';
|
|
10
10
|
import type { Locale } from 'ckeditor5/src/utils.js';
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
*/
|
|
5
5
|
/**
|
|
6
6
|
* @license Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.
|
|
7
|
-
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-
|
|
7
|
+
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
|
|
8
8
|
*/
|
|
9
9
|
/**
|
|
10
10
|
* @module real-time-collaboration/presencelist/view/presencedropdownlistview
|