@ckeditor/ckeditor5-real-time-collaboration 43.1.0 → 43.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/real-time-collaboration.js +1 -1
- package/dist/index.js +6 -6
- package/dist/translations/ar.js +1 -1
- package/dist/translations/ar.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/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.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/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/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/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/ko.js +1 -1
- package/dist/translations/ko.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/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/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/sk.js +1 -1
- package/dist/translations/sk.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/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/uk.js +1 -1
- package/dist/translations/uk.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/common-translations.js +1 -1
- package/src/index.js +1 -1
- package/src/presencelist/presencelistui.js +1 -1
- package/src/presencelist/view/presencecounterview.js +1 -1
- package/src/presencelist/view/presencedropdownlistitemview.js +1 -1
- package/src/presencelist/view/presencedropdownlistview.js +1 -1
- package/src/presencelist/view/presenceinlinelistitemview.js +1 -1
- package/src/presencelist/view/presenceinlinelistview.js +1 -1
- package/src/presencelist/view/presencelistview.js +1 -1
- package/src/presencelist.js +1 -1
- package/src/realtimecollaborativecomments/cloudservicescommentsadapter.js +1 -1
- package/src/realtimecollaborativecomments.js +1 -1
- package/src/realtimecollaborativeediting/realtimecollaborationclient.js +1 -1
- package/src/realtimecollaborativeediting/sessions.js +1 -1
- package/src/realtimecollaborativeediting/usermarkers.js +1 -1
- package/src/realtimecollaborativeediting/websocketgateway.js +1 -1
- package/src/realtimecollaborativeediting.js +1 -1
- package/src/realtimecollaborativerevisionhistory/cloudservicesrevisionhistoryadapter.js +1 -1
- package/src/realtimecollaborativerevisionhistory.js +1 -1
- package/src/realtimecollaborativetrackchanges/cloudservicestrackchangesadapter.js +1 -1
- package/src/realtimecollaborativetrackchanges.js +1 -1
package/dist/index.js
CHANGED
|
@@ -20,9 +20,9 @@
|
|
|
20
20
|
*
|
|
21
21
|
*
|
|
22
22
|
*/
|
|
23
|
-
import{ContextPlugin as
|
|
24
|
-
((()=>dt)());static ['initialReconnectionInterval']=0x3e8;['connection'];['_reconnectionStack'];['_shouldPluginsReconnect'];['_domEmitter'];static get['requires'](){return['CloudServices',_0x11135c];}static get['pluginName'](){return'WebSocketGateway';}constructor(_0x37bd17){super(_0x37bd17),this['set']('state',_0x597889['CONNECTED']),this['set']('_isBrowserOffline',!0x1),this['_reconnectionStack']=new Set(),this['_shouldPluginsReconnect']=!0x1,this['_domEmitter']=Object['create'](_0x4c7a02);}['init'](){const _0x148cd3=this['context'],_0x222636=_0x148cd3['plugins']['get']('CloudServices'),_0x59a661=_0x148cd3['plugins']['get'](_0x11135c);if(!_0x222636['token'])throw new _0x3eb044('websocketgateway-missing-token',this);if(!_0x222636['webSocketUrl'])throw new _0x3eb044('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'](_0x222636['token'],_0x222636['webSocketUrl'],{'timeout':0x3e8*this['context']['config']['get']('cloudServices.connectionTimeout'),'requestTimeout':0x3e8*this['context']['config']['get']('cloudServices.requestTimeout')})['then'](_0x30ff2f=>{if(this['connection']=_0x30ff2f,this['bind']('state')['to'](_0x30ff2f,'state',this,'_isBrowserOffline',(_0x775ad3,_0x42f73f)=>('connected'!==_0x775ad3&&(this['_shouldPluginsReconnect']=!0x0),_0x42f73f||_0x775ad3!==_0x597889['CONNECTED']?_0x597889['DISCONNECTED']:this['state']==_0x597889['DISCONNECTED']&&this['_shouldPluginsReconnect']?(this['_shouldPluginsReconnect']=!0x1,this['_reconnect'](),_0x597889['CONNECTING']):_0x597889['CONNECTED'])),this['connection']['on']('error',(_0x45a2dd,_0x26ff55)=>{if('limitExceeded'!==_0x26ff55['code'])throw console['error'](_0x26ff55),new _0x3eb044('cloudservices-init',null,{'originalError':_0x26ff55});_0x59a661['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'});}),!_0x30ff2f['me'])return new Promise(_0x42115c=>_0x30ff2f['on']('change:me',_0x42115c));})['catch'](_0x25b137=>{throw console['error'](_0x25b137),new _0x3eb044('cloudservices-init',null,{'originalError':_0x25b137});});}['addToReconnectionStack'](_0x16e050){if('function'!=typeof _0x16e050['reconnect'])throw new _0x3eb044('websocketgateway-invalid-plugin-interface',this);if(this['isInReconnectionStack'](_0x16e050))throw new _0x3eb044('websocketgateway-plugin-already-registered',this,{'name':_0x16e050['constructor']['pluginName']});this['_reconnectionStack']['add'](_0x16e050);}['removeFromReconnectionStack'](_0x3594af){this['_reconnectionStack']['delete'](_0x3594af);}['isInReconnectionStack'](_0x3158e3){return this['_reconnectionStack']['has'](_0x3158e3);}['_reconnect'](){return this['connection']['reconnect']()['then'](()=>Promise['all'](Array['from'](this['_reconnectionStack'],_0x1ae46e=>_0x1ae46e['reconnect']())))['then'](()=>this['state']=_0x597889['CONNECTED'])['catch'](_0x32565e=>{throw console['error'](_0x32565e),new _0x3eb044('cloudservices-reconnection-error',this['context']);});}['destroy'](){this['connection']&&this['connection']['disconnect'](),this['state']=_0x597889['DISCONNECTED'],this['_domEmitter']['stopListening'](),super['destroy']();}}class r extends _0x41fb54{['channelSessions'];['channelConnectedUsers'];['allConnectedUsers'];['_registeredSessions'];['_uniqueUsersCount'];['_users'];static get['pluginName'](){return'Sessions';}static get['requires'](){return[c,_0x5b0702];}constructor(_0x18f429){super(_0x18f429),this['channelSessions']=new Map(),this['channelConnectedUsers']=new Map(),this['allConnectedUsers']=new _0x332aca(),this['_registeredSessions']=new Map(),this['_uniqueUsersCount']=0x0,this['_users']=this['context']['plugins']['get'](_0x5b0702);}['init'](){const _0x49399c=this['context']['plugins']['get'](c);this['listenTo'](_0x49399c,'change:state',(_0x451fa7,_0x496baf,_0x426885)=>{if('connected'!==_0x426885)this['channelSessions']['forEach'](_0x417cc5=>_0x417cc5['clear']()),this['channelConnectedUsers']['forEach'](_0x3b6b3e=>_0x3b6b3e['clear']()),this['allConnectedUsers']['clear']();else{for(const [_0x298a44,_0x27c78c]of this['_registeredSessions'])for(const _0x3c7e07 of _0x27c78c)this['_handleSessionAdd'](_0x298a44,_0x3c7e07);}}),this['_createUser'](_0x49399c['connection']['me'],!0x0);}['register'](_0x461d3c,_0x244aea){if(this['_registeredSessions']['has'](_0x461d3c))throw new _0x3eb044('sessions-register-already-registered',null,{'channelId':_0x461d3c});this['_registeredSessions']['set'](_0x461d3c,_0x244aea),this['channelSessions']['set'](_0x461d3c,new _0x332aca()),this['channelConnectedUsers']['set'](_0x461d3c,new _0x332aca()),this['listenTo'](_0x244aea,'add',(_0x1003a2,_0x332ce2)=>this['_handleSessionAdd'](_0x461d3c,_0x332ce2)),this['listenTo'](_0x244aea,'remove',(_0x5c84e6,_0x379acc)=>this['_handleSessionRemove'](_0x461d3c,_0x379acc));for(const _0x45c542 of _0x244aea)this['_handleSessionAdd'](_0x461d3c,_0x45c542);}['unregister'](_0x42e04b){if(!this['_registeredSessions']['has'](_0x42e04b))throw new _0x3eb044('sessions-unregister-not-exist',null,{'channelId':_0x42e04b});const _0x523eb0=this['_registeredSessions']['get'](_0x42e04b);this['stopListening'](_0x523eb0);for(const _0x1fc963 of _0x523eb0)'connected'===this['context']['plugins']['get'](c)['state']&&this['_handleSessionRemove'](_0x42e04b,_0x1fc963);this['_registeredSessions']['delete'](_0x42e04b),this['channelSessions']['delete'](_0x42e04b),this['channelConnectedUsers']['delete'](_0x42e04b);}get['mySessionId'](){return this['context']['plugins']['get'](c)['connection']['sessionId'];}['getUserBySessionId'](_0x23bd73){for(const _0x20cdad of this['channelSessions']['values']())for(const _0x530b04 of _0x20cdad)if(_0x530b04['id']===_0x23bd73)return _0x530b04['user'];}['getUserSessions'](_0x1f7cdc,_0x351a51){const _0xe77d23=_0x351a51?[this['channelSessions']['get'](_0x351a51)]:this['channelSessions']['values'](),_0x1afa82=new Set();for(const _0x536b50 of _0xe77d23)for(const _0x218819 of _0x536b50)_0x218819['user']['id']===_0x1f7cdc['id']&&_0x1afa82['add'](_0x218819['id']);return _0x1afa82;}['getUserRole'](_0x444312){for(const _0x4f7d54 of this['channelSessions']['values']())for(const _0x5590c2 of _0x4f7d54)if(_0x5590c2['user']===_0x444312)return _0x5590c2['role'];}['_handleSessionAdd'](_0x52449e,_0xf1737b){if('connected'!==this['context']['plugins']['get'](c)['state'])return;const _0x1cfeb3=_0xf1737b['user'],_0x3a052e=this['_users']['getUser'](_0x1cfeb3['id'])||this['_createUser'](_0x1cfeb3),_0x1974fc=Object['assign']({},_0xf1737b,{'user':_0x3a052e});this['channelSessions']['get'](_0x52449e)['add'](_0x1974fc);const _0x19bbdf=this['channelConnectedUsers']['get'](_0x52449e);_0x19bbdf['has'](_0x3a052e['id'])||_0x19bbdf['add'](_0x3a052e),this['allConnectedUsers']['has'](_0x3a052e['id'])||this['allConnectedUsers']['add'](_0x3a052e,_0x3a052e['isMe']?0x0:void 0x0),this['fire']('sessionAdd:'+_0x52449e,{'channelId':_0x52449e,'session':_0x1974fc});}['_handleSessionRemove'](_0x41e4fa,_0x5bef12){if('connected'!==this['context']['plugins']['get'](c)['state'])return;const _0x58e383=this['channelConnectedUsers']['get'](_0x41e4fa),_0x140436=_0x5bef12['user'];_0x140436['id']&&(this['channelSessions']['get'](_0x41e4fa)['remove'](_0x5bef12['id']),_0x58e383['has'](_0x140436['id'])&&!this['getUserSessions'](_0x140436,_0x41e4fa)['size']&&_0x58e383['remove'](_0x140436['id']),this['allConnectedUsers']['get'](_0x140436['id'])&&!this['getUserSessions'](_0x140436)['size']&&this['allConnectedUsers']['remove'](_0x140436['id']));}['_createUser'](_0x1db362,_0x13b13d){const _0x1d5751=this['_users']['addUser'](_0x1db362);return _0x13b13d&&this['_users']['defineMe'](_0x1db362['id']),_0x1d5751['orderNumber']=this['_uniqueUsersCount']++,_0x1d5751;}}class H extends _0x2b8fdd{['_domEmitter']=new(_0x4c7a02())();static get['requires'](){return[r];}static get['pluginName'](){return'UserMarkers';}['init'](){const _0x3bb074=this['editor'],_0x2ed3e3=_0x3bb074['plugins']['get'](r);_0x3bb074['conversion']['for']('editingDowncast')['markerToElement']({'model':'user:position','view':(_0x59472c,{writer:_0x31f7b1})=>function(_0xef3b68,_0x38965a,_0x1871ea,_0x2db7aa){const _0x4a301d=_0xef3b68['markerName']['split'](':')[0x2],_0xb0b40=_0x1871ea['getUserBySessionId'](_0x4a301d);if(!_0xb0b40||_0x4a301d===_0x1871ea['mySessionId'])return;if(!_0x2db7aa['model']['schema']['checkChild'](_0xef3b68['markerRange']['start'],'$text'))return;const _0x1db5e3={'class':'ck-user__marker\x20'+_0xb0b40['color']['getMarkerClass'](),'data-name':_0xb0b40['name'],'data-session-id':_0x4a301d},_0x58dcdb=_0x2db7aa['model']['markers']['get'](_0xef3b68['markerName']),_0x2d7496=_0x58dcdb['getStart'](),_0xf6113a=_0x2d7496['nodeAfter'],_0x1f73a8=_0x2db7aa['model']['schema'];if(_0xf6113a&&_0x1f73a8['isObject'](_0xf6113a)&&_0x1f73a8['isInline'](_0xf6113a)&&!_0x2db7aa['model']['markers']['get']('user:range:'+_0x4a301d)['getRange']()['isCollapsed'])return;const _0x5e66dc=_0x2d7496['parent'];return _0x2db7aa['model']['schema']['isLimit'](_0x5e66dc)&&!_0x2db7aa['model']['hasContent'](_0x5e66dc)&&(_0x1db5e3['contenteditable']=!0x1),function(_0x40f6c2,_0x3ab430,_0x2022e0){const _0x1aa4df=_0x40f6c2['createUIElement']('span',_0x3ab430);return _0x40f6c2['setCustomProperty']('userPositionMarker',!0x0,_0x1aa4df),_0x1aa4df['render']=function(_0x26d691){const _0x26dba3=this['toDomElement'](_0x26d691);return _0x26dba3['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>'+_0x2022e0['name']+'</span>',_0x26dba3['addEventListener']('mouseenter',()=>{_0x26dba3['classList']['add']('ck-user__marker_hovered');}),_0x26dba3['addEventListener']('mouseleave',()=>{_0x26dba3['classList']['remove']('ck-user__marker_hovered');}),_0x26dba3;},_0x1aa4df['isSimilar']=function(_0x515a00){return!(!this['getCustomProperty']('userPositionMarker')||!_0x515a00['getCustomProperty']('userPositionMarker')||this['getAttribute']('data-session-id')!=_0x515a00['getAttribute']('data-session-id'));},_0x1aa4df;}(_0x38965a,_0x1db5e3,_0xb0b40);}(_0x59472c,_0x31f7b1,_0x2ed3e3,_0x3bb074)}),_0x3bb074['conversion']['for']('editingDowncast')['markerToHighlight']({'model':'user:range','view':_0x509456=>function(_0x5a2761,_0x37556e){const _0x115653=_0x5a2761['markerName']['split'](':')[0x2];if(_0x115653===_0x37556e['mySessionId'])return null;const _0xc9d24d=_0x37556e['getUserBySessionId'](_0x115653);if(!_0xc9d24d)return{'id':_0x115653,'classes':[]};return{'id':_0x115653,'classes':['ck-user__selection',_0xc9d24d['color']['getSelectionClass']()],'attributes':{'data-session-id':_0x115653},'priority':0x7d0+_0xc9d24d['orderNumber']};}(_0x509456,_0x2ed3e3)}),function(_0x54ef33){const _0x160ac5=_0x54ef33['model'],_0x3964c9=new Map(),_0x529f01=_0x54ef33['plugins']['get'](r);_0x160ac5['markers']['on']('update:user:range',(_0x8fc38d,_0x4fb0c7,_0x432dd7,_0x59f23b)=>{if(!_0x59f23b&&_0x3964c9['get'](_0x4fb0c7['name']))return _0x3964c9['get'](_0x4fb0c7['name'])['detach'](),void _0x3964c9['delete'](_0x4fb0c7['name']);const _0x1a5657=_0x4fb0c7['name']['split'](':')[0x2];if(_0x1a5657===_0x529f01['mySessionId'])return;const _0x50589a='user:position:'+_0x1a5657;_0x160ac5['markers']['has'](_0x50589a)&&_0x54ef33['editing']['reconvertMarker'](_0x50589a),_0x4fb0c7['on']('change:range',(_0x11b633,_0x4c3f5c,_0x4faff8)=>{if('$graveyard'!=_0x4c3f5c['root']['rootName']&&'$graveyard'==_0x4fb0c7['getRange']()['root']['rootName']&&!_0x3964c9['has'](_0x4fb0c7['name'])){const _0x39ff9f=_0x160ac5['schema']['getNearestSelectionRange'](_0x4faff8['deletionPosition']);if(_0x39ff9f){const _0x1f9c86=ht['fromRange'](_0x39ff9f);_0x3964c9['set'](_0x4fb0c7['name'],_0x1f9c86),_0x1f9c86['on']('change:range',(_0x47137a,_0x17bab0,_0x51da43)=>{if('$graveyard'==_0x1f9c86['root']['rootName']){const _0x2ae16e=_0x160ac5['schema']['getNearestSelectionRange'](_0x51da43['deletionPosition']);_0x2ae16e?(_0x1f9c86['start']=_0x2ae16e['start'],_0x1f9c86['end']=_0x2ae16e['end']):(_0x3964c9['delete'](_0x4fb0c7['name']),_0x1f9c86['detach']());}});}}});}),_0x160ac5['document']['on']('change',()=>{_0x3964c9['size']>0x0&&_0x160ac5['enqueueChange']({'isUndoable':!0x1},_0x3616cc=>{for(const [_0xad9612,_0x16c098]of _0x3964c9)'$graveyard'==_0x160ac5['markers']['get'](_0xad9612)['getRange']()['root']['rootName']&&(re(_0xad9612['split'](':')[0x2],_0x16c098['toRange'](),_0x160ac5,_0x3616cc),_0x16c098['detach']());_0x3964c9['clear']();});});}(_0x3bb074),this['_domEmitter']['listenTo'](_0x126da3['document'],'keydown',(_0x3009e2,{key:_0x2ee29c})=>{'Escape'===_0x2ee29c&&function(_0x5f24b6){_0x5f24b6['editing']['view']['change'](_0x1388a8=>{for(const _0x121fc3 of _0x5f24b6['model']['markers']){if(!_0x121fc3['name']['startsWith']('user:position'))continue;const _0x4aebd6=_0x5f24b6['editing']['mapper']['markerNameToElements'](_0x121fc3['name']);if(_0x4aebd6){for(const _0xb207ca of _0x4aebd6)_0x1388a8['removeClass']('ck-user__marker_hovered',_0xb207ca);}}});}(_0x3bb074);},{'useCapture':!0x0});}['afterInit'](){const _0x366e5b=this['editor'],_0x5ebab3=_0x366e5b['commands']['get']('undo');_0x5ebab3&&_0x366e5b['model']['on']('applyOperation',(_0x31cbde,_0x1b9ce1)=>{const _0x5d195b=_0x1b9ce1[0x0];if('marker'!=_0x5d195b['type']||!_0x5d195b['name']['startsWith']('user:'))return;const _0x5a14dc=_0x5d195b['batch'];_0x5ebab3['_createdBatches']['has'](_0x5a14dc)&&(_0x5d195b['newRange']=_0x5d195b['oldRange']?_0x366e5b['model']['createRange'](_0x5d195b['oldRange']['start'],_0x5d195b['oldRange']['end']):null);},{'priority':'highest'});}['destroy'](){return this['_domEmitter']['stopListening'](),super['destroy']();}['createUserMarkerOperations'](){const _0x196264=this['editor'],_0x11ec42=_0x196264['model']['document'],_0x4cc510=_0x196264['plugins']['get'](r);_0x196264['model']['enqueueChange']({'isUndoable':!0x1},_0x64cf94=>{const _0x576b8f='user:range:'+_0x4cc510['mySessionId'],_0x3d68d9='user:position:'+_0x4cc510['mySessionId'],_0x2c11a9=_0x196264['model']['markers']['has'](_0x576b8f);_0x196264['editing']['view']['hasDomSelection']?re(_0x4cc510['mySessionId'],_0x11ec42['selection']['getFirstRange'](),_0x196264['model'],_0x64cf94):_0x2c11a9&&(_0x64cf94['removeMarker'](_0x576b8f),_0x64cf94['removeMarker'](_0x3d68d9));});}}function re(_0x5d18d0,_0x18581,_0x2df071,_0x1f2c80){const _0x2e082b='user:range:'+_0x5d18d0,_0x392726='user:position:'+_0x5d18d0,_0x396d12=_0x18581['getContainedElement']();let _0x4a927e=_0x18581['start'];_0x396d12&&_0x396d12['is']('element','tableCell')&&(_0x4a927e=function(_0x38fe13,_0x332e74){for(const _0x45547e of _0x38fe13['getPositions']())if(_0x332e74['schema']['checkChild'](_0x45547e,'$text'))return _0x45547e;}(_0x18581,_0x2df071),_0x18581=_0x1f2c80['createRange'](_0x4a927e));const _0x2931e1=_0x1f2c80['createRange'](_0x4a927e);_0x2df071['markers']['has'](_0x2e082b)?(_0x1f2c80['updateMarker'](_0x2e082b,{'range':_0x18581}),_0x1f2c80['updateMarker'](_0x392726,{'range':_0x2931e1})):(_0x1f2c80['addMarker'](_0x2e082b,{'range':_0x18581,'usingOperation':!0x0}),_0x1f2c80['addMarker'](_0x392726,{'range':_0x2931e1,'usingOperation':!0x0}));}function q(_0x21ae0b,_0x4fcec8,_0x1f7712){const t=_0x21ae0b['t'];switch(_0x4fcec8){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 t({'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'},_0x1f7712);default:return'';}}let K=0x1;class l extends _0x2b8fdd{static ['CollaborativeEditingService']=/* #__PURE__ -- @preserve */
|
|
25
|
-
((()=>_0x30e732)());['_offset'];['sessionId'];['serverHistory'];['_channelId'];['_service'];['_document'];['_compressor'];['_bufferedOperations'];['_knownOperations'];['_knownRootNames'];['_pendingAction'];['_hasSelectionChanged'];['_sendBufferedOperationsDelayId'];['_baseBufferDelay'];['_currentBufferDelay'];['_lastSyncedOperationId'];['_disconnectionOperations'];['_operationIdentifier'];static get['requires'](){return[c,r,H,_0x315bd9,_0x5b0702,_0x11135c];}static get['pluginName'](){return'RealTimeCollaborationClient';}get['cloudDocumentVersion'](){return this['_lastServerVersion']+this['_offset'];}get['_lastServerVersion'](){return this['serverHistory']['version']-this['_offset'];}get['lastSyncVersion'](){const _0xd3c437=this['serverHistory']['getOperations']();for(let _0x4977c5=_0xd3c437['length']-0x1;_0x4977c5>=0x0;_0x4977c5--){const _0x32f3f3=_0xd3c437[_0x4977c5];if(!this['_disconnectionOperations']['has'](_0x32f3f3))return _0x32f3f3['baseVersion']+0x1-this['_offset'];}return 0x0;}constructor(_0x2e4212){if(super(_0x2e4212),this['_offset']=0x0,this['sessionId']=null,this['serverHistory']=new _0x3c5016(),this['editor']['config']['define']('collaboration',{}),this['_channelId']=this['editor']['config']['get']('collaboration.channelId'),!this['_channelId'])throw new _0x3eb044('collaboration-missing-channelid',this);const _0x36feeb=_0x2e4212['config']['get']('cloudServices.bundleVersion')||nt;this['_service']=new l['CollaborativeEditingService'](_0x36feeb,this['_channelId']),this['_document']=this['editor']['model']['document'],this['_compressor']=new _0x466aa5(),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 _0x488e78=this['editor'],_0x163930=_0x488e78['plugins']['get'](_0x5b0702),_0x19db3f=_0x488e78['plugins']['get'](c);this['listenTo'](_0x163930,'getOperationAuthor',(_0x39bbc2,_0x1d4e27)=>{const _0x1f8af7=_0x1d4e27[0x0];_0x1f8af7['_authorId']&&(_0x39bbc2['return']=_0x163930['getUser'](_0x1f8af7['_authorId']),_0x39bbc2['stop']()),null===_0x1f8af7['_authorId']&&(_0x39bbc2['return']=null,_0x39bbc2['stop']());},{'priority':'high'}),this['listenTo'](_0x488e78['model']['document']['selection'],'change:range',(_0x1c66eb,_0x7fb2b1)=>{_0x7fb2b1['directChange']&&this['_refreshUserSelectionMarkers']();}),this['listenTo'](_0x488e78['editing']['view'],'change:hasDomSelection',()=>{this['_refreshUserSelectionMarkers']();}),this['_initThrowingOnDataSet'](),_0x488e78['model']['on']('applyOperation',(_0x2d8a5d,_0x4dc832)=>{const _0x5bad0c=_0x4dc832[0x0];_0x5bad0c['isDocumentOperation']&&(this['_saveOperationInBuffer'](_0x5bad0c),this['_shouldSendUpdate']()&&this['_sendBufferedOperationsDelayed']());}),this['_setUpDataInit'](),this['bind']('_isEditingAllowed')['to'](_0x19db3f,'state',this,'_hasSynchronizationProblem',(_0x14881d,_0x473eb8)=>'connected'===_0x14881d&&!_0x473eb8),this['on']('change:_isEditingAllowed',()=>{this['_isEditingAllowed']?_0x488e78['disableReadOnlyMode']('rtc-offline'):_0x488e78['enableReadOnlyMode']('rtc-offline');}),this['_isEditingAllowed']?_0x488e78['disableReadOnlyMode']('rtc-offline'):_0x488e78['enableReadOnlyMode']('rtc-offline'),this['set']('_isConnected',!0x1);}async['reconnect'](){const _0x32ba6f=this['editor']['plugins']['get'](r),_0x28fb42=this['editor']['plugins']['get'](c);try{this['_isPendingUpdate']=!0x0,_0x32ba6f['unregister'](this['_channelId']);const _0x369743=await this['_service']['reconnect'](_0x28fb42['connection'],this['lastSyncVersion']);await this['_handleReconnectionResponse'](_0x369743)&&(this['_isPendingUpdate']=!0x1,this['_clearPendingAction']());const _0x915838=await this['_service']['getConnectedSessions']();_0x32ba6f['register'](this['_channelId'],_0x915838),this['_handleSendingSelectionMarkers'](),this['_isConnected']=!0x0;}catch(_0xa981ec){if(function(_0x2594e6){return'404'===_0x2594e6['code'];}(_0xa981ec)&&this['sessionId'])await this['_connectAfterSessionHasBeenFlushed']();else{if(function(_0x442640){return'409'===_0x442640['code'];}(_0xa981ec)){const _0x3ff961=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'](_0x3ff961);}else{if(!(_0xa981ec instanceof J))throw _0xa981ec;this['_handleReconnectionError']();}}}}['destroy'](){const _0x3c170a=this['editor']['plugins']['get'](c),_0x4b3ad0=this['editor']['plugins']['get'](r);this['editor']['enableReadOnlyMode']('rtc-destroyed'),_0x4b3ad0['channelSessions']['has'](this['_channelId'])&&_0x4b3ad0['unregister'](this['_channelId']),_0x3c170a['removeFromReconnectionStack'](this),this['_disconnectService'](),super['destroy']();}async['_handleReconnectionResponse'](_0x4dc3a8){if(this['sessionId']!==_0x4dc3a8['sessionId']&&this['_lastSyncedOperationId']!==_0x4dc3a8['lastOperationId'])throw new J();return this['sessionId']=_0x4dc3a8['sessionId'],this['_handleServerResponse']([],{..._0x4dc3a8,'wereChangesApplied':!0x1,'data':_0x4dc3a8['data']},'reconnect');}async['_connectService'](_0x4f9dd8,_0x56e74f=!0x1){const {connection:_0x23315a}=this['editor']['plugins']['get'](c);l['CollaborativeEditingService']['getConnectedSessions'](_0x23315a,this['_channelId'])['then'](_0x1d9f56=>this['_initSessionsHandling'](_0x1d9f56))['catch'](_0x74e370=>{this['_crash']('realtimecollaborationclient-init-session-connection-error',_0x74e370);}),this['listenTo'](this['_service'],'operationsReceived',this['_handleReceivedOperations']['bind'](this)),this['listenTo'](this['_service'],'error',(_0x2407b3,_0x5d16d9)=>{this['_crash']('realtimecollaborationclient-initservice-internal-error',_0x5d16d9);}),this['listenTo'](this['_service'],'disconnected',()=>{this['_isConnected']=!0x1;});const _0x5b1ec3=this['_operationIdentifier']['getIdOfTheLastOperation'](_0x4f9dd8);this['_isPendingUpdate']=!0x0;const _0x9c3094=await this['_service']['connect'](_0x23315a,this['_compressOperations'](_0x4f9dd8),_0x5b1ec3);if(this['sessionId']=_0x9c3094['sessionId'],_0x56e74f){if(!_0x9c3094['wereChangesApplied'])return void this['_handleReconnectionError']();this['_isPendingUpdate']=!0x1,this['_clearPendingAction'](),this['serverHistory']['reset'](),this['_offset']=_0x9c3094['offset'],this['serverHistory']['version']=this['_offset'],await this['_handleServerResponse'](_0x4f9dd8,_0x9c3094,'reconnection:\x20flushed\x20session');}else await this['_handleInitialConnectionData'](_0x9c3094,_0x4f9dd8);this['_handleSendingSelectionMarkers'](),this['_isConnected']=!0x0;}['_handleSendingSelectionMarkers'](){const _0x4c341e=this['editor']['plugins']['get'](r),_0x15eb53=this['editor']['plugins']['get'](H),_0x53e8a8=_0x4c341e['channelSessions']['get'](this['_channelId']);_0x53e8a8&&_0x53e8a8['length']>0x1?_0x15eb53['createUserMarkerOperations']():this['listenTo'](_0x4c341e,'sessionAdd:'+this['_channelId'],()=>{0x2===_0x4c341e['channelSessions']['get'](this['_channelId'])['length']&&_0x15eb53['createUserMarkerOperations']();});}async['_handleReceivedOperations'](_0x55d33b,_0x4fdec5,_0x89e649,_0x202818){if(!this['_isPendingUpdate']&&this['_document']['version']==_0x4fdec5){const _0xbbe63f=this['_decompressOperations'](_0x89e649,_0x202818);await this['_fetchMissingUsers'](_0xbbe63f),this['_handleExternalOperations'](_0xbbe63f,_0x4fdec5,_0x89e649['lastOperationId'])||this['_crash']('realtimecollaborationclient-initservice-incorrect-server-operation');}}async['_connectAfterSessionHasBeenFlushed'](){this['_disconnectService']();const {locale:_0x6c2f12}=this['editor'];let _0x4e87be;try{_0x4e87be=await this['_service']['getDocumentDetails']();}catch(_0xdc78df){const _0x52d1e0=q(_0x6c2f12,'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'](_0x52d1e0);}const _0x21bc00=_0x4e87be['currentDocumentSession']||_0x4e87be['lastDocumentSession'];if(this['_lastSyncedOperationId']===_0x21bc00['lastOperationId'])await this['_connectService'](this['editor']['model']['document']['history']['getOperations'](),!0x0);else{const _0x5db41e=q(_0x6c2f12,'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'](_0x5db41e);}}['_disconnectService'](){this['_service']['disconnect'](),this['_bufferedOperations']=[],clearTimeout(this['_sendBufferedOperationsDelayId']),this['stopListening'](this['_service']);}['_initSessionsHandling'](_0x163ba0){const _0x4bb357=this['editor']['plugins']['get'](r);this['listenTo'](_0x4bb357,'sessionAdd:'+this['_channelId'],(_0x5b4696,{session:_0x3e6cdf})=>{if(_0x3e6cdf['id']===_0x4bb357['mySessionId']){_0x5b4696['off']();const _0x58c0a3=this['editor']['plugins']['has']('CommentsOnly')&&this['editor']['plugins']['get']('CommentsOnly');let _0x3d97c9=_0x3e6cdf['permissions'];_0x58c0a3&&_0x58c0a3['isEnabled']&&(_0x3d97c9=_0x3d97c9['filter'](_0x29520b=>'document:write'!==_0x29520b)),this['editor']['plugins']['get']('Permissions')['setPermissions'](_0x3d97c9,this['_channelId']);}}),_0x4bb357['register'](this['_channelId'],_0x163ba0);}['_initThrowingOnDataSet'](){const _0x23fc3f=this['editor']['data']['set'];this['editor']['data']['set']=(..._0x2391bc)=>{if(!_0x2391bc[_0x2391bc['length']-0x1]['suppressErrorInCollaboration'])throw new _0x3eb044('realtimecollaborationclient-editor-setdata-and-editor-data-set-are-forbidden-in-real-time-collaboration',this);_0x23fc3f['apply'](this['editor']['data'],_0x2391bc);};}['_setUpDataInit'](){this['editor']['data']['on']('init',(_0x16d4c9,[_0x53952d])=>{if(this['_document']['version'])throw new _0x3eb044('realtimecollaborationclient-init-document-already-initialized',this);_0x16d4c9['stop'](),this['_setPendingAction']();const _0x13a7b3=this['editor']['config']['get']('rootsAttributes'),_0x3ff82e=this['_getOperationsFromInitData'](_0x53952d,_0x13a7b3);0x0==_0x3ff82e['length']&&_0x3ff82e['push'](new _0x43000b(0x0)),_0x16d4c9['return']=this['_connectService'](_0x3ff82e)['then'](()=>{this['editor']['plugins']['get'](c)['addToReconnectionStack'](this),this['editor']['data']['fire']('ready');})['catch'](_0x35446e=>this['_crash']('realtimecollaborationclient-init-connection-failed',_0x35446e))['finally'](()=>this['_clearPendingAction']());},{'priority':'high'}),this['editor']['on']('loadRoot',async(_0x5df467,[_0x4f316c,_0x3230bb])=>{_0x5df467['stop']();const _0x5e75e7=this['editor']['model']['document']['getRoot'](_0x4f316c);if(!this['_knownRootNames']['has'](_0x4f316c)){const _0x584490=_0x3230bb&&_0x3230bb['data']?_0x3230bb['data']:'',_0x23fe87=_0x3230bb&&_0x3230bb['attributes']?_0x3230bb['attributes']:{};await this['_loadRoot'](_0x4f316c,_0x584490,_0x23fe87);}this['editor']['model']['enqueueChange']({'isUndoable':!0x1},()=>{_0x5e75e7['_isLoaded']=!0x0,this['editor']['model']['document']['differ']['_bufferRootLoad'](_0x5e75e7);});},{'priority':'high'});}async['_fetchMissingUsers'](_0x3c955b){const _0x5669fe=this['editor']['plugins']['get'](_0x5b0702),{connection:_0x5ae5db}=this['editor']['plugins']['get'](c),_0x4009a7=new Set();for(const _0x14cd83 of _0x3c955b){const _0x122849=_0x14cd83['_authorId'];_0x122849&&!_0x5669fe['getUser'](_0x122849)&&_0x4009a7['add'](_0x122849);}if(0x0===_0x4009a7['size'])return;const _0x907fe0=await lt['getMany'](_0x5ae5db,Array['from'](_0x4009a7));for(const _0x1dcab2 of _0x907fe0)_0x5669fe['getUser'](_0x1dcab2['id'])||_0x5669fe['addUser'](_0x1dcab2);}['_getOperationsFromInitData'](_0x39a94a,_0x2ac220={}){const _0x180974=this['editor']['model'],_0x40f216=[];let _0xe80707=0x0;const _0xa8bb28='string'==typeof _0x39a94a?{'main':_0x39a94a}:_0x39a94a;for(const _0x5eb4d7 of Object['keys'](_0xa8bb28)){if(!this['_document']['roots']['has'](_0x5eb4d7))throw new _0x3eb044('realtimecollaborationclient-init-non-existent-root',this);const _0x555a25=this['editor']['data']['parse'](_0xa8bb28[_0x5eb4d7]),_0x1ad82c=this['_document']['getRoot'](_0x5eb4d7),_0x3bffb9=new _0x3f89c9(_0x180974['createPositionAt'](_0x1ad82c,0x0),_0x555a25,_0xe80707++);_0x40f216['push'](_0x3bffb9);for(const [_0x5b052e,_0x47ff09]of _0x555a25['markers']){const _0x302721=_0x180974['createRange'](_0x180974['createPositionFromPath'](_0x1ad82c,_0x47ff09['start']['path']['slice']()),_0x180974['createPositionFromPath'](_0x1ad82c,_0x47ff09['end']['path']['slice']())),_0x572b53=new _0x34774d(_0x5b052e,null,_0x302721,_0x180974['markers'],!0x0,_0xe80707++);_0x40f216['push'](_0x572b53);}}if(_0x2ac220)for(const [_0x56dc4f,_0x37eb82]of Object['entries'](_0x2ac220)){const _0x13bde0=_0x180974['document']['getRoot'](_0x56dc4f);if(!_0x13bde0)throw new _0x3eb044('multi-root-editor-root-attributes-no-root',null);for(const [_0x311fb5,_0x85328b]of Object['entries'](_0x37eb82))if(null!==_0x85328b){const _0x3a8be4=new _0x4f6c57(_0x13bde0,_0x311fb5,null,_0x85328b,_0xe80707++);_0x40f216['push'](_0x3a8be4);}}return _0x40f216;}async['_loadRoot'](_0x1b5fa9,_0x34652b,_0x59bb69){this['_getOperationsFromInitData']({[_0x1b5fa9]:_0x34652b},{[_0x1b5fa9]:_0x59bb69})['forEach']((_0xcf455e,_0x19e2a7)=>{_0xcf455e['baseVersion']=this['_document']['version']+_0x19e2a7,_0xcf455e['_isInit']=!0x0,this['_saveOperationInBuffer'](_0xcf455e);}),this['_sendBufferedOperationsDelayed'](),await this['_waitUntilSynced']();}async['_handleInitialConnectionData'](_0x164c53,_0x45bab8){let _0x2e1113;this['_offset']=_0x164c53['offset'];const _0x545f85=_0x164c53['wereChangesApplied']&&!_0x164c53['initData'],_0x1dfd57=_0x545f85?0x0:_0x164c53['data']['baseVersion'];if(_0x45bab8['forEach'](_0x4e9a7d=>{_0x4e9a7d['_isInit']=!0x0,_0x4e9a7d['createdAt']=_0x164c53['sessionCreatedAt'],_0x4e9a7d['_authorId']=null;}),_0x545f85)_0x2e1113=_0x45bab8,this['_applyOperationsSet'](_0x2e1113,_0x545f85);else{if(_0x164c53['initData']){const _0x4fe978=this['_getOperationsFromInitData'](_0x164c53['initData']);this['_document']['history']['version']=-_0x4fe978['length'],_0x4fe978['forEach'](_0x5ef1f3=>{_0x5ef1f3['baseVersion']-=_0x4fe978['length'],_0x5ef1f3['createdAt']=_0x164c53['sessionCreatedAt'],_0x5ef1f3['_isInit']=!0x0,_0x5ef1f3['_authorId']=null;}),this['_applyOperationsSet'](_0x4fe978,!0x0),this['serverHistory']['version']=-_0x4fe978['length']+this['_offset'],this['_updateServerHistory'](_0x4fe978);}this['_document']['history']['version']=_0x1dfd57,_0x2e1113=this['_decompressOperations'](_0x164c53['data'],_0x164c53['metadata']),await this['_fetchMissingUsers'](_0x2e1113),this['_applyOperationsSet'](_0x2e1113,_0x545f85);}_0x164c53['lastOperationId']&&(this['_operationIdentifier']['setIdForTheLastOperation'](_0x2e1113,_0x164c53['lastOperationId']),this['_lastSyncedOperationId']=_0x164c53['lastOperationId']),this['serverHistory']['version']=_0x1dfd57+this['_offset'],this['_updateServerHistory'](_0x2e1113),_0x45bab8['filter'](_0x1f7703=>{const _0x3f95c5=this['_getAffectedRoot'](_0x1f7703);return _0x3f95c5&&!this['_knownRootNames']['has'](_0x3f95c5);})['forEach']((_0xb3662f,_0x18fc39)=>{_0xb3662f['baseVersion']=this['_document']['version']+_0x18fc39,this['_saveOperationInBuffer'](_0xb3662f);}),this['_shouldSendUpdate']()?(this['_currentBufferDelay']=0x0,this['_sendBufferedOperationsDelayed'](!0x0),await this['_waitUntilSynced']()):(this['_isPendingUpdate']=!0x1,this['_clearPendingAction']());}['_crash'](_0xa40fee,_0x37f946){throw this['_isPendingUpdate']=!0x0,_0x37f946&&console['error'](_0x37f946),new _0x3eb044(_0xa40fee,this['editor']);}['_saveOperationInBuffer'](_0x44cae6){this['_knownOperations']['has'](_0x44cae6)||(this['_knownOperations']['add'](_0x44cae6),this['_bufferedOperations']['push'](_0x44cae6),this['_pendingAction']||'marker'==_0x44cae6['type']&&!_0x44cae6['affectsData']||this['_setPendingAction']());}['_sendBufferedOperationsDelayed'](_0x50e56e=!0x1){!_0x50e56e&&this['_isPendingUpdate']||(this['_isPendingUpdate']=!0x0,clearTimeout(this['_sendBufferedOperationsDelayId']),this['_sendBufferedOperationsDelayId']=setTimeout(()=>{this['_sendBufferedOperations']()['then'](_0x5ccfd4=>{_0x5ccfd4&&(this['_clearPendingAction'](),this['_isPendingUpdate']=!0x1);})['catch'](_0x42b8ef=>{if(this['_clearPendingAction'](),this['_isPendingUpdate']=!0x1,!function(_0x4e9625){return _0x4e9625['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x4e9625['message']['startsWith']('cloud-services-internal-error:\x20Collaborative\x20Editing\x20Service\x20is\x20not\x20connected.')||_0x4e9625['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}(_0x42b8ef))throw _0x42b8ef;});},this['_currentBufferDelay']));}['_waitUntilSynced'](){return new Promise(_0xe6a865=>{this['on']('change:_isPendingUpdate',()=>{_0xe6a865();});});}async['_sendBufferedOperations'](){const _0x36729d=this['editor']['plugins']['get'](H);if(this['_shouldSendSelectionUpdate']()&&(_0x36729d['createUserMarkerOperations'](),this['_hasSelectionChanged']=!0x1),!this['_shouldSendUpdate']())return!0x0;const _0x336416=[...this['_bufferedOperations']];for(const _0x540daa of _0x336416)_0x540daa['wasUndone']=this['_document']['history']['isUndoneOperation'](_0x540daa);const _0x124711=this['_operationIdentifier']['getIdOfTheLastOperation'](_0x336416),_0x2e0cb1=K++,_0x322f61=this['_compressOperations'](_0x336416),_0x56bd84=await this['_service']['sendOperations'](_0x322f61,_0x322f61['baseVersion'],_0x124711);try{return await this['_handleServerResponse'](_0x336416,_0x56bd84,_0x2e0cb1);}catch(_0x1b8c56){return this['_crash']('realtimecollaborationclient-sendbufferedoperations',_0x1b8c56);}}async['_handleServerResponse'](_0x23b4c0,_0x2de59d,_0x12f64e){if('error'in _0x2de59d)throw _0x2de59d['error'];let _0x40b960=!0x1;if(_0x2de59d['wereChangesApplied']){_0x2de59d['lastOperationId']&&(this['_lastSyncedOperationId']=_0x2de59d['lastOperationId']),this['_bufferedOperations']=this['_bufferedOperations']['filter'](_0x435f07=>!_0x23b4c0['includes'](_0x435f07));for(const _0x31d23b of _0x23b4c0)_0x31d23b['createdAt']='lastOperationAcceptedAt'in _0x2de59d&&_0x2de59d['lastOperationAcceptedAt']||void 0x0;Q(_0x23b4c0,_0x2de59d['version']-_0x23b4c0['length']),this['_updateServerHistory'](_0x23b4c0);const _0xabad6d=_0x23b4c0['filter'](_0x48a05d=>{if(!_0x48a05d['_isInit'])return!0x1;const _0x1669ab=this['_getAffectedRoot'](_0x48a05d);return _0x1669ab&&!this['_knownRootNames']['has'](_0x1669ab);});Q(_0xabad6d,this['_document']['version']),this['_applyOperationsSet'](_0xabad6d),_0x40b960=!0x0,this['_currentBufferDelay']=this['_baseBufferDelay'];}else{const _0x3b040a=this['_decompressOperations'](_0x2de59d['data'],_0x2de59d['metadata'])['filter'](_0x4a6c83=>_0x4a6c83['baseVersion']>=this['_lastServerVersion']);_0x3b040a['forEach'](_0x3291c5=>this['_addKnownRoot'](_0x3291c5)),this['_bufferedOperations']=this['_bufferedOperations']['filter'](_0x2fac4b=>!_0x2fac4b['_isInit']||!this['_knownRootNames']['has'](this['_getAffectedRoot'](_0x2fac4b))),this['_bufferedOperations']['length']&&Q(this['_bufferedOperations'],this['_bufferedOperations'][0x0]['baseVersion']),await this['_fetchMissingUsers'](_0x3b040a),_0x40b960=this['_handleExternalOperations'](_0x3b040a,_0x2de59d['version'],_0x2de59d['lastOperationId']),this['_currentBufferDelay']=Math['round'](this['_currentBufferDelay']/0x2);}return _0x40b960?!this['_shouldSendUpdate']()||(this['_sendBufferedOperationsDelayed'](!0x0),!0x1):this['_crash']('realtimecollaborationclient-handleserverresponse');}['_handleExternalOperations'](_0x456615,_0x5a787f,_0x4fcea7){try{const _0x49e7bd={'document':this['_document'],'useRelations':!0x1,'padWithNoOps':!0x0},{operationsA:_0x16604c,operationsB:_0x2ccc73,originalOperations:_0x57b9d0}=_0x5b542c(_0x456615,this['_bufferedOperations'],_0x49e7bd);Q(_0x16604c,this['_document']['version']),Q(_0x2ccc73,_0x5a787f);for(const _0x4f643d of _0x16604c){const _0x9a45f7=_0x57b9d0['get'](_0x4f643d);_0x4f643d['_authorId']=_0x9a45f7?_0x9a45f7['_authorId']:null;}_0x4fcea7&&(this['_operationIdentifier']['setIdForTheLastOperation'](_0x456615,_0x4fcea7),this['_lastSyncedOperationId']=_0x4fcea7),this['_bufferedOperations']=[..._0x2ccc73],this['_applyOperationsSet'](_0x16604c),this['_updateServerHistory'](_0x456615);}catch(_0xbcacd9){return console['error'](_0xbcacd9),!0x1;}return!0x0;}['_applyOperationsSet'](_0x299302,_0x3c6218=!0x1){this['editor']['model']['enqueueChange']({'isUndoable':!0x1,'isLocal':!0x1},_0x3b8410=>{for(const _0x38372f of _0x299302)this['_knownOperations']['add'](_0x38372f),this['_addKnownRoot'](_0x38372f),_0x3b8410['batch']['addOperation'](_0x38372f),this['editor']['model']['applyOperation'](_0x38372f);});}['_addKnownRoot'](_0x3116ad){const _0x1d4c0c=this['_getAffectedRoot'](_0x3116ad);_0x1d4c0c&&this['_knownRootNames']['add'](_0x1d4c0c);}['_getAffectedRoot'](_0x94d3f3){let _0x1fc4ee,_0x43635f;switch(_0x94d3f3['type']){case'insert':_0x1fc4ee=_0x94d3f3['position']['root'];break;case'marker':if(_0x43635f=_0x94d3f3['newRange'],!_0x43635f)return null;_0x1fc4ee=_0x43635f['root'];break;case'addRootAttribute':_0x1fc4ee=_0x94d3f3['root'];break;case'addRoot':_0x1fc4ee=_0x94d3f3['affectedSelectable'];break;case'move':_0x1fc4ee=_0x94d3f3['targetPosition']['root'];break;default:return null;}return _0x1fc4ee['rootName'];}['_updateServerHistory'](_0x348cc7){_0x348cc7['forEach'](_0x17cbf0=>{const _0x51c3b7=_0x17cbf0['clone']();_0x51c3b7['_authorId']=_0x17cbf0['_authorId'],_0x51c3b7['_isInit']=!!_0x17cbf0['_isInit'],_0x51c3b7['createdAt']=_0x17cbf0['createdAt'],_0x51c3b7['baseVersion']+=this['_offset'],_0x17cbf0['_isDisconnection']&&this['_disconnectionOperations']['add'](_0x51c3b7),this['serverHistory']['addOperation'](_0x51c3b7);});}['_handleReconnectionError'](_0x2da0ee){const _0x3d1a92=this['editor']['plugins']['get']('Notification'),_0x1e4da9=this['editor']['locale'];_0x2da0ee||(_0x2da0ee=q(_0x1e4da9,'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.')),_0x3d1a92['showWarning'](_0x2da0ee,{'title':q(_0x1e4da9,'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'](_0x315bd9)['add'](q(this['editor']['locale'],'PENDING_ACTION_SENDING_DATA')));}['_clearPendingAction'](){this['_pendingAction']&&(this['editor']['plugins']['get'](_0x315bd9)['remove'](this['_pendingAction']),this['_pendingAction']=null);}['_compressOperations'](_0x2d52ff){const _0x1e34c0=_0x2d52ff['map'](_0x473086=>_0x473086['toJSON']());return this['_compressor']['compress'](_0x1e34c0);}['_decompressOperations'](_0x28c03f,_0x8d577f){return this['_compressor']['decompress'](_0x28c03f)['map']((_0x367b02,_0x5187e0)=>{const _0x5c317c='init'==_0x8d577f[_0x5187e0]['type'];if('InsertOperation'==_0x367b02['__className']){const _0x5887a1=_0x367b02['position']['root'];!this['_document']['getRoot'](_0x5887a1)&&(this['_document']['createRoot']('$root',_0x5887a1)['_isAttached']=!0x1);}const _0x3775c6=_0x15a230['fromJSON'](_0x367b02,this['_document']);return _0x3775c6['wasUndone']=_0x367b02['wasUndone'],_0x3775c6['_isInit']=_0x5c317c,_0x3775c6['_authorId']=_0x5c317c?null:_0x8d577f[_0x5187e0]['userId'],_0x3775c6['_isDisconnection']='cs:removeUser'===_0x8d577f[_0x5187e0]['type'],_0x3775c6['createdAt']=_0x8d577f[_0x5187e0]['createdAt'],_0x3775c6;});}['_refreshUserSelectionMarkers'](){this['_hasSelectionChanged']=!0x0,this['_shouldSendSelectionUpdate']()?this['_sendBufferedOperationsDelayed']():this['_hasSelectionChanged']=!0x1;}['_shouldSendSelectionUpdate'](){const _0x25e888=this['editor']['plugins']['get'](r)['channelSessions']['get'](this['_channelId']);return!this['editor']['isReadOnly']&&!!_0x25e888&&_0x25e888['length']>0x1&&this['_hasSelectionChanged'];}['_shouldSendUpdate'](){return this['_bufferedOperations']['length']>0x0||this['_shouldSendSelectionUpdate']();}}class J extends Error{}function Q(_0x1eea2e,_0x54945e){for(const _0x27c885 of _0x1eea2e)_0x27c885['baseVersion']=_0x54945e++;}class X{['_ignoredOperations'];['_operationToId'];constructor(_0x5c9c28){this['_ignoredOperations']=_0x5c9c28,this['_operationToId']=new WeakMap();}['getIdOfTheLastOperation'](_0x18d932){let _0x4d7fc8=_0x18d932['length'];for(;_0x4d7fc8--;){const _0x3245ce=_0x18d932[_0x4d7fc8];if(!this['_ignoredOperations']['has'](_0x3245ce)){if(!this['_operationToId']['has'](_0x3245ce)){const _0x9c8c4b=_0x1f4103()['slice'](0x1,0x12);this['_operationToId']['set'](_0x3245ce,_0x9c8c4b);}return this['_operationToId']['get'](_0x3245ce);}}}['setIdForTheLastOperation'](_0x43d582,_0x68f34b){if(!_0x68f34b)return;let _0x453de8=_0x43d582['length'];for(;_0x453de8--;){const _0x131b01=_0x43d582[_0x453de8];this['_ignoredOperations']['has'](_0x131b01)||this['_operationToId']['set'](_0x131b01,_0x68f34b);}}}class n extends _0x2b8fdd{static get['requires'](){return[l];}static get['pluginName'](){return'RealTimeCollaborativeEditing';}}class a extends _0x41fb54{static ['CommentsService']=/* #__PURE__ -- @preserve */
|
|
26
|
-
((()=>_0x4f788f)());['_services'];static get['requires'](){return[c,'CommentsRepository',r,_0x5b0702];}static get['pluginName'](){return'CloudServicesCommentsAdapter';}constructor(_0x468382){super(_0x468382),this['_services']=new Map();}async['init'](){const _0x4cdecd=this['context'],_0x1d6a0f=_0x4cdecd['plugins']['get']('CommentsRepository');if(_0x4cdecd['plugins']['get'](c)['addToReconnectionStack'](this),_0x1d6a0f['adapter']={'addCommentThread':async({channelId:_0x588bc1,threadId:_0x337458,comments:_0x5edc9d,resolvedAt:_0x375f56,resolvedBy:_0x3f8b16,context:_0xee2a01,attributes:_0x37b526})=>{const _0x27c048=await this['_getService'](_0x588bc1)['addCommentThread']({'commentThreadId':_0x337458,'comments':_0x5edc9d['map'](_0x33eb7f=>function(_0x26c88a,_0x4f0c5c,_0x49ff09){return{'commentThreadId':_0x49ff09,'commentId':_0x26c88a['commentId'],'userId':_0x26c88a['authorId'],'content':_0x26c88a['content'],'documentId':_0x4f0c5c,'createdAt':_0x26c88a['createdAt'],'attributes':_0x26c88a['attributes']||{}};}(_0x33eb7f,_0x588bc1,_0x337458)),'resolvedAt':_0x375f56,'resolvedBy':_0x3f8b16,'context':_0xee2a01,'attributes':_0x37b526})['catch'](ut);return{'threadId':_0x27c048['commentThreadId'],'comments':_0x27c048['comments']};},'getCommentThread':async({channelId:_0x578786,threadId:_0xdb8edc})=>{const _0x488963=await this['_getService'](_0x578786)['getCommentThread'](_0xdb8edc)['catch'](ut);return _0x488963['deletedAt']?null:(await this['_fetchMissingUsersForThreads']([_0x488963]),{'threadId':_0x488963['commentThreadId'],'comments':_0x488963['comments']['map'](b),'context':_0x488963['context'],'resolvedAt':_0x488963['resolvedAt'],'resolvedBy':_0x488963['resolvedBy'],'attributes':_0x488963['attributes']||{}});},'updateCommentThread':async({channelId:_0x5d27c2,threadId:_0x434426,context:_0x211e0d,unlinkedAt:_0x3f595c,attributes:_0x2a511e})=>this['_getService'](_0x5d27c2)['updateCommentThread']({'commentThreadId':_0x434426,'context':_0x211e0d,'attributes':_0x2a511e,'unlinkedAt':_0x3f595c})['catch'](y)['catch'](ut),'resolveCommentThread':async({channelId:_0x29031f,threadId:_0x164bb9})=>{const _0x8f649a=await this['_getService'](_0x29031f)['resolveCommentThread'](_0x164bb9)['catch'](y)['catch'](ut);return{'threadId':_0x8f649a['commentThreadId'],'resolvedAt':_0x8f649a['resolvedAt'],'resolvedBy':_0x8f649a['resolvedBy']};},'reopenCommentThread':async({channelId:_0x582e8b,threadId:_0x3b795e})=>this['_getService'](_0x582e8b)['reopenCommentThread'](_0x3b795e)['catch'](y)['catch'](ut),'removeCommentThread':({channelId:_0x3d95fa,threadId:_0xb0274b})=>this['_getService'](_0x3d95fa)['removeCommentThread'](_0xb0274b)['catch'](y)['catch'](ut),'addComment':({channelId:_0xf5411d,threadId:_0x2d16c4,commentId:_0x409c9f,content:_0x5ac85b,attributes:_0x2e02db})=>this['_getService'](_0xf5411d)['addComment'](_0x2d16c4,_0x409c9f,_0x5ac85b,_0x2e02db)['catch'](ut),'updateComment':({channelId:_0x372368,threadId:_0x4a4b11,commentId:_0x591057,content:_0x53b66b,attributes:_0x4eb633})=>this['_getService'](_0x372368)['updateComment'](_0x4a4b11,_0x591057,_0x53b66b,_0x4eb633)['catch'](y)['catch'](ut),'removeComment':({channelId:_0xf6b7a8,threadId:_0x3f860b,commentId:_0x16c6e})=>this['_getService'](_0xf6b7a8)['removeComment'](_0x3f860b,_0x16c6e)['catch'](y)['catch'](ut)},_0x4cdecd instanceof _0x3c31ef){const _0x2c598e=_0x4cdecd['config']['get']('collaboration.channelId'),_0x1f27da=_0x4cdecd['plugins']['get'](r);await this['_setUpService'](_0x2c598e);const _0x2f2dbf=await this['_services']['get'](_0x2c598e)['getConnectedSessions']();this['listenTo'](_0x1f27da,'sessionAdd:'+_0x2c598e,(_0x274e2a,{session:_0x181d4c})=>{_0x181d4c['id']===_0x1f27da['mySessionId']&&(_0x274e2a['off'](),this['context']['plugins']['get']('Permissions')['setPermissions'](_0x181d4c['permissions'],_0x2c598e));}),_0x1f27da['register'](_0x2c598e,_0x2f2dbf);}}async['_setUpService'](_0x180996){if(this['_services']['has'](_0x180996))throw new _0x3eb044('cloudservicescommentsadapter-connect-already-connected',null,{'channelId':_0x180996});const _0x5a691f=this['context']['plugins']['get']('CommentsRepository'),_0x537ec8=new a['CommentsService'](_0x180996);this['_services']['set'](_0x180996,_0x537ec8),this['listenTo'](_0x537ec8,'commentThreadAdded',(_0x1b8c7f,_0x4299cd)=>{const {commentThreadId:_0x172dfa,documentId:_0x522052,context:_0x2861b5,attributes:_0x3d16e7,resolvedAt:_0x11e77b,resolvedBy:_0xa2e27e,comments:_0x5cab11}=_0x4299cd;_0x5a691f['getCommentThread'](_0x172dfa)||_0x5a691f['addCommentThread']({'threadId':_0x172dfa,'channelId':_0x522052,'comments':_0x5cab11?_0x5cab11['map'](b):[],'context':_0x2861b5,'attributes':_0x3d16e7,'resolvedAt':_0x11e77b,'resolvedBy':_0xa2e27e,'isFromAdapter':!0x0});}),this['listenTo'](_0x537ec8,'commentThreadUpdated',(_0x1bdca2,{commentThreadId:_0x475788,documentId:_0x29495f,context:_0x2ba3d2,unlinkedAt:_0x2f3383,attributes:_0x8ea943})=>{_0x5a691f['getCommentThread'](_0x475788)&&_0x5a691f['updateCommentThread']({'threadId':_0x475788,'channelId':_0x29495f,'context':_0x2ba3d2,'unlinkedAt':_0x2f3383,'attributes':_0x8ea943,'isFromAdapter':!0x0});}),this['listenTo'](_0x537ec8,'commentThreadResolved',(_0x4790ae,{commentThreadId:_0xedd382,resolvedBy:_0x31fd27,resolvedAt:_0x5046ec})=>{const _0x476e34=_0x5a691f['getCommentThread'](_0xedd382);_0x476e34&&_0x476e34['resolve']({'resolvedBy':_0x31fd27,'resolvedAt':_0x5046ec,'isFromAdapter':!0x0});}),this['listenTo'](_0x537ec8,'commentThreadReopened',(_0x4778aa,{commentThreadId:_0x13e516})=>{const _0x54bb86=_0x5a691f['getCommentThread'](_0x13e516);_0x54bb86&&_0x54bb86['reopen']({'isFromAdapter':!0x0});}),this['listenTo'](_0x537ec8,'commentThreadRemoved',(_0x25b715,{commentThreadId:_0x3628af})=>{const _0x5e9980=_0x5a691f['getCommentThread'](_0x3628af);_0x5e9980&&_0x5e9980['remove']({'isFromAdapter':!0x0});}),this['listenTo'](_0x537ec8,'commentAdded',(_0x3f21f0,_0x2718c8)=>{const _0xd8a671=_0x2718c8['commentThreadId'],_0x220c2f=_0x5a691f['getCommentThread'](_0xd8a671);_0x220c2f&&_0x220c2f['addComment']({...b(_0x2718c8),'isFromAdapter':!0x0});}),this['listenTo'](_0x537ec8,'commentUpdated',(_0x39188d,{commentThreadId:_0x1ddfb4,commentId:_0x2f9445,content:_0x5b013f,attributes:_0x36be1f})=>{const _0x78019a=_0x5a691f['getCommentThread'](_0x1ddfb4);if(_0x78019a){const _0x2839a9=_0x78019a['getComment'](_0x2f9445);_0x2839a9&&_0x2839a9['update']({'content':_0x5b013f,'attributes':_0x36be1f,'isFromAdapter':!0x0});}}),this['listenTo'](_0x537ec8,'commentRemoved',(_0x246805,{commentThreadId:_0x403c15,commentId:_0x1539b7})=>{const _0x203e76=_0x5a691f['getCommentThread'](_0x403c15);if(_0x203e76){const _0xeffe9c=_0x203e76['getComment'](_0x1539b7);_0xeffe9c&&_0xeffe9c['remove']({'isFromAdapter':!0x0});}}),await this['_connectService'](_0x180996);}['destroy'](){if(this['context']instanceof _0x3c31ef){const _0x3a1784=this['context']['config']['get']('collaboration.channelId');this['_terminateService'](_0x3a1784);}}['_terminateService'](_0x40718d){if(!this['_services']['has'](_0x40718d))throw new _0x3eb044('cloudservicescommentsadapter-disconnect-not-exist',null,{'channelId':_0x40718d});this['_getService'](_0x40718d)['disconnect'](),this['_services']['delete'](_0x40718d);}async['reconnect'](){for(const _0x178ccc of this['_services']['keys']())await this['_connectService'](_0x178ccc);if(this['context']instanceof _0x3c31ef){const _0x399cc3=this['context']['config']['get']('collaboration.channelId'),_0xbb27b6=this['context']['plugins']['get'](r);_0xbb27b6['unregister'](_0x399cc3);const _0x28f984=await this['_services']['get'](_0x399cc3)['getConnectedSessions']();_0xbb27b6['register'](_0x399cc3,_0x28f984);}}async['_connectService'](_0x4c62f8){const {connection:_0x1310bf}=this['context']['plugins']['get'](c),_0x331702=this['context']['plugins']['get']('CommentsRepository'),_0x245373=this['_services']['get'](_0x4c62f8),_0x4e613b=await _0x245373['connect'](_0x1310bf);await this['_fetchMissingUsersForThreads'](_0x4e613b);const _0x38cf6e=new Set(Array['from'](_0x331702['getCommentThreads']({'channelId':_0x4c62f8}),_0x8c23eb=>_0x8c23eb['id']));for(const _0x2cfb7a of _0x4e613b)_0x2cfb7a['deletedAt']||_0x38cf6e['delete'](_0x2cfb7a['commentThreadId']);for(const _0x2b3278 of _0x38cf6e)_0x331702['getCommentThread'](_0x2b3278)['remove']({'isFromAdapter':!0x0});for(const _0x4edbd9 of _0x4e613b){let _0x3420e3=_0x331702['getCommentThread'](_0x4edbd9['commentThreadId']);const {commentThreadId:_0x470bb2,context:_0xcbef39,attributes:_0x5cd50b,resolvedBy:_0x4bb408,resolvedAt:_0x18b5d3,unlinkedAt:_0x123cc2,deletedAt:_0xafee19}=_0x4edbd9;if(_0xafee19)continue;_0x3420e3||(_0x3420e3=_0x331702['addCommentThread']({'channelId':_0x4c62f8,'threadId':_0x470bb2,'context':_0xcbef39,'attributes':_0x5cd50b||{},'resolvedBy':_0x4bb408,'resolvedAt':_0x18b5d3,'unlinkedAt':_0x123cc2,'isFromAdapter':!0x0}));const _0x336c0a=new Set(Array['from'](_0x3420e3['comments'],_0x5d2f0c=>_0x5d2f0c['id']));for(const _0x3ebfd1 of _0x4edbd9['comments'])_0x336c0a['delete'](_0x3ebfd1['commentId']);for(const _0x41f0c5 of _0x336c0a)_0x3420e3['getComment'](_0x41f0c5)['remove']({'isFromAdapter':!0x0});for(const _0x24319b of _0x4edbd9['comments']){const _0x2d377e=_0x3420e3['getComment'](_0x24319b['commentId']);_0x2d377e?_0x2d377e['content']!==_0x24319b['content']&&_0x2d377e['update']({'content':_0x24319b['content'],'isFromAdapter':!0x0}):_0x3420e3['addComment'](Object['assign'](b(_0x24319b),{'isFromAdapter':!0x0}));}}}['_getService'](_0x574e83){if(!this['_services']['has'](_0x574e83))throw new _0x3eb044('cloudservicescommentsadapter-service-not-exist',null,{'channelId':_0x574e83});return this['_services']['get'](_0x574e83);}async['_fetchMissingUsersForThreads'](_0x4d1907){const _0x5767e0=this['context']['plugins']['get'](_0x5b0702),{connection:_0xd94b7b}=this['context']['plugins']['get'](c),_0x1f088a=new Set();for(const {resolvedBy:_0x3915da,comments:_0x4cdffa}of _0x4d1907){_0x3915da&&!_0x5767e0['getUser'](_0x3915da)&&_0x1f088a['add'](_0x3915da);for(const {userId:_0x1b95c9}of _0x4cdffa)_0x5767e0['getUser'](_0x1b95c9)||_0x1f088a['add'](_0x1b95c9);}if(0x0===_0x1f088a['size'])return;const _0x219182=await lt['getMany'](_0xd94b7b,Array['from'](_0x1f088a));for(const _0x2d786e of _0x219182)_0x5767e0['getUser'](_0x2d786e['id'])||_0x5767e0['addUser'](_0x2d786e);}}async function y(_0xf5cac0){if('404'!==_0xf5cac0['code'])throw _0xf5cac0;}function ut(_0x117964){if((_0x2bd99b=_0x117964)['message']['startsWith']('cloud-services-internal-error:\x20Comments\x20Service\x20is\x20not\x20connected.')||_0x2bd99b['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x2bd99b['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.'))return new Promise(()=>{});var _0x2bd99b;throw _0x117964;}function b(_0x1793f6){return{'threadId':_0x1793f6['commentThreadId'],'commentId':_0x1793f6['commentId'],'content':_0x1793f6['content'],'createdAt':_0x1793f6['createdAt'],'authorId':_0x1793f6['userId'],'attributes':_0x1793f6['attributes']||{}};}class g extends _0x2b8fdd{static ['TrackChangesService']=/* #__PURE__ -- @preserve */
|
|
27
|
-
((()=>
|
|
28
|
-
((()=>it)());['_lastRequestId'];['_revisionTracker'];['_revisionHistoryService'];['_oldOffset'];static get['requires'](){return[c,l,'RevisionTracker',r,_0x5b0702];}constructor(_0x17fc55){super(_0x17fc55);const _0x5b3c97=this['editor']['config']['get']('collaboration.channelId');this['_lastRequestId']=null,this['_revisionTracker']=this['editor']['plugins']['get']('RevisionTracker'),this['_revisionHistoryService']=new v['RevisionHistoryService'](_0x5b3c97);}async['init'](){const _0x29e1b8=this['editor']['plugins']['get'](l),_0x4f5884=_0x29e1b8['serverHistory'],_0x516882=this['editor']['plugins']['get'](c);this['_revisionTracker']['setSource']({'history':_0x4f5884,'getLatestVersion':()=>this['_getLatestVersion'](),'getCurrentRevisionId':()=>_0x29e1b8['sessionId']});const _0x2a3638=this['editor']['config']['get']('cloudServices.bundleVersion')||nt,_0x5728c7=await tt['isBundleUploaded'](_0x516882['connection'],_0x2a3638);this['_revisionTracker']['adapter']={'getRevision':async({revisionId:_0x4cf8f9})=>(await this['_waitForServiceReady'](),await this['_revisionHistoryService']['getRevision'](_0x4cf8f9)),'updateRevisions':async _0x1c1f00=>{await this['_waitForServiceReady']();const _0x4c51f2=this['_revisionTracker']['currentRevision'];if(_0x5728c7&&0x1===_0x1c1f00['length']&&_0x1c1f00[0x0]['id']===_0x4c51f2['id'])return _0x1c1f00;for(const _0x1651fb of _0x1c1f00)_0x1651fb['id']===_0x4c51f2['id']&&(_0x1651fb['isEmptyCurrent']=_0x1651fb['fromVersion']===_0x1651fb['toVersion']);return this['_revisionHistoryService']['updateRevisions'](_0x1c1f00,this['_lastRequestId'])['then'](_0x2704a0=>(this['_lastRequestId']=_0x2704a0,_0x1c1f00))['catch'](_0x4ba545=>{if(st(_0x4ba545)||'400'===_0x4ba545['code']&&void 0x0!==_0x4ba545['data']['wrongRequestId']){for(const _0xb8ef4c of _0x1c1f00){!this['_revisionTracker']['repository']['getRevision'](_0xb8ef4c['id'])||this['_revisionTracker']['_bufferUpdate'](_0xb8ef4c['id'],_0xb8ef4c,!0x1);}if(st(_0x4ba545))throw _0x4ba545;return _0x1c1f00;}throw _0x4ba545;});}},this['listenTo'](this['_revisionHistoryService'],'revisionsUpdated',(_0x19d5ac,{revisionsData:_0x2be4de,requestId:_0x5a19cf})=>{Math['max'](..._0x2be4de['map'](_0x4645e1=>_0x4645e1['toVersion']))>this['_getLatestVersionFromServerOperations']()-0x1?this['_getLatestVersion']()['then'](()=>{this['_handleRevisionsUpdate'](_0x2be4de,_0x5a19cf);}):this['_handleRevisionsUpdate'](_0x2be4de,_0x5a19cf);});const {revisions:_0x162bfd,requestId:_0x131077}=await this['_revisionHistoryService']['connect'](_0x516882['connection']);_0x516882['addToReconnectionStack'](this),this['_lastRequestId']=_0x131077,await this['_fetchMissingUsers'](_0x162bfd);for(const _0x100e56 of _0x162bfd)this['_revisionTracker']['addRevisionData'](_0x100e56);this['listenTo'](_0x29e1b8,'change:_isConnected',(_0x4bd868,_0x1ba3ca,_0x2dff0a)=>{_0x2dff0a&&(this['_oldOffset']=_0x29e1b8['_offset'],_0x4bd868['off']());}),this['_revisionTracker']['bind']('isEnabled')['to'](_0x516882,'state',_0x287c17=>_0x287c17===_0x597889['CONNECTED']);}async['reconnect'](){const _0x887b66=this['editor']['plugins']['get'](c),_0x4f301c=this['editor']['plugins']['get'](l),_0x1f9dc5=async()=>{const _0x38e6b5=this['_revisionTracker']['currentRevision'],_0xaa0f71=_0x38e6b5['id'],_0x2ff406=_0xaa0f71!==_0x4f301c['sessionId'];if(_0x2ff406){const _0x59b4df=_0x4f301c['_offset']-this['_oldOffset'],_0x1c9b9b=this['_getLatestVersionFromServerOperations']();this['_revisionTracker']['_revisionDataBuilder']['reInit']();if(_0x38e6b5['toVersion']+_0x59b4df!==_0x1c9b9b){const _0x1e4ae5=_0x38e6b5['fromVersion']+_0x59b4df,_0x617a3=this['editor']['plugins']['get'](_0x5b0702),_0x1fb3d2=this['_revisionTracker']['buildRevisionData']({'revision':_0x38e6b5,'from':_0x1e4ae5,'to':_0x1c9b9b});_0x1fb3d2['id']=_0x38e6b5['id'];const _0x7fcd49=_0x1fb3d2['authorsIds']['map'](_0x5b8de7=>_0x617a3['getUser'](_0x5b8de7));_0x38e6b5['_update']({..._0x1fb3d2,'authors':_0x7fcd49},!0x0),this['_revisionTracker']['_bufferUpdate'](_0x38e6b5['id'],_0x1fb3d2,!0x0);}this['_revisionTracker']['_startingVersion']=_0x1c9b9b,(_0x38e6b5['toVersion']===_0x38e6b5['fromVersion']&&!this['_revisionTracker']['_bufferedUpdates']['has'](_0xaa0f71)&&this['_revisionTracker']['repository']['_revisions']['remove'](_0xaa0f71),this['_revisionTracker']['_createCurrentRevision'](_0x1c9b9b));}const {revisions:_0x3530c4,requestId:_0x2de425}=await this['_revisionHistoryService']['reconnect'](_0x887b66['connection'],this['_lastRequestId']);_0x2ff406&&_0x3530c4['length']>0x0?_0x4f301c['_handleReconnectionError']():(await this['_fetchMissingUsers'](_0x3530c4),this['_handleRevisionsUpdate'](_0x3530c4,_0x2de425),this['_revisionTracker']['sendBufferedUpdates']());};return _0x4f301c['_isConnected']?_0x1f9dc5():new Promise((_0x35082d,_0x350daf)=>{_0x4f301c['once']('change:_isConnected',()=>{_0x1f9dc5()['then'](_0x35082d)['catch'](_0x350daf);});});}['destroy'](){super['destroy']();}async['_waitForServiceReady'](){this['_revisionHistoryService']['isConnected']||await new Promise(_0x4c53d4=>{this['listenTo'](this['_revisionHistoryService'],'connected',_0x32928f=>{_0x32928f['off'](),_0x4c53d4();});});}['_getLatestVersionFromServerOperations'](){const _0x278e6f=this['editor']['plugins']['get'](l)['serverHistory']['getOperations']()['reverse']();for(const _0x4dbc99 of _0x278e6f)if('marker'!==_0x4dbc99['type']||_0x4dbc99['affectsData'])return _0x4dbc99['baseVersion']+0x1;}['_getLatestVersion'](){const _0x2db0b3=this['editor']['plugins']['get'](l);return new Promise(_0x306dec=>{_0x2db0b3['_isPendingUpdate']?_0x2db0b3['once']('change:_isPendingUpdate',()=>{_0x306dec(this['_getLatestVersionFromServerOperations']());}):_0x306dec(this['_getLatestVersionFromServerOperations']());});}['_handleRevisionsUpdate'](_0x1903a4,_0x36a3a2){const _0x78b560=this['_revisionTracker']['repository'];this['_lastRequestId']=_0x36a3a2;for(const _0x334efb of _0x1903a4){const _0x3e882a=_0x78b560['getRevision'](_0x334efb['id']);if(_0x3e882a){if((_0x334efb['fromVersion']||_0x334efb['toVersion'])&&(_0x334efb['diffData']=null),_0x3e882a===this['_revisionTracker']['currentRevision']){const _0x52c1c0=Math['max'](_0x3e882a['toVersion'],_0x334efb['toVersion']),_0x5843c8=Math['max'](_0x3e882a['fromVersion'],_0x334efb['fromVersion']);let _0x4488c3;_0x3e882a['toVersion']===_0x334efb['toVersion']&&_0x3e882a['fromVersion']===_0x334efb['fromVersion']?(_0x4488c3=!0x0,this['_preventResendingRevisionData'](_0x334efb)):_0x334efb['toVersion']===_0x52c1c0&&_0x334efb['fromVersion']===_0x5843c8?_0x4488c3=!0x1:(_0x3e882a['toVersion']===_0x52c1c0&&_0x3e882a['fromVersion']===_0x5843c8||this['_fixRevision']({'revision':_0x3e882a,'from':_0x5843c8,'to':_0x52c1c0}),_0x4488c3=!0x0),_0x4488c3&&(delete _0x334efb['fromVersion'],delete _0x334efb['toVersion'],delete _0x334efb['diffData'],delete _0x334efb['createdAt'],delete _0x334efb['authorsIds']);}this['_revisionTracker']['setRevisionData'](_0x334efb),this['_preventResendingRevisionData'](_0x334efb);}else this['_revisionTracker']['addRevisionData'](_0x334efb);}const _0x456fc0=_0x78b560['getRevisions']();_0x456fc0['reverse']();for(let _0x271881=0x0;_0x271881<_0x456fc0['length']-0x1;_0x271881++){const _0x3cbb56=_0x456fc0[_0x271881],_0x56f255=_0x456fc0[_0x271881+0x1];if(_0x3cbb56['fromVersion']<_0x56f255['toVersion']){const _0x379f96=_0x56f255['toVersion'],_0x61d479=Math['max'](_0x379f96,_0x3cbb56['toVersion']);this['_fixRevision']({'revision':_0x3cbb56,'from':_0x379f96,'to':_0x61d479});}}}['_fixRevision']({revision:_0xf9b87b,from:_0x128921,to:_0x3927a2}={}){const _0x418a73=this['editor']['plugins']['get'](_0x5b0702),_0x31ef42=this['_revisionTracker']['buildRevisionData']({'revision':_0xf9b87b,'from':_0x128921,'to':_0x3927a2});_0x31ef42['authors']=_0x31ef42['authorsIds']['map'](_0x21b32e=>_0x418a73['getUser'](_0x21b32e)),_0xf9b87b['_update'](_0x31ef42);}['_preventResendingRevisionData'](_0x5281f9){const _0x2c466e={};_0x2c466e['id']=_0x5281f9['id'];for(const _0x1ae49f of Object['keys'](_0x5281f9))'id'!==_0x1ae49f&&(_0x2c466e[_0x1ae49f]=void 0x0);this['_revisionTracker']['_bufferUpdate'](_0x2c466e['id'],_0x2c466e,!0x0);}async['_fetchMissingUsers'](_0x4b0b65){const _0x3bf8b3=this['editor']['plugins']['get'](_0x5b0702),{connection:_0xcc4b96}=this['editor']['plugins']['get'](c),_0x48cf31=new Set();for(const _0x49686b of _0x4b0b65){for(const _0x4a3cde of _0x49686b['authorsIds'])_0x21d9ab(_0x4a3cde);_0x49686b['creatorId']&&_0x21d9ab(_0x49686b['creatorId']);}if(0x0===_0x48cf31['size'])return;const _0x20fc6c=await lt['getMany'](_0xcc4b96,Array['from'](_0x48cf31));for(const _0x1250e3 of _0x20fc6c)_0x3bf8b3['getUser'](_0x1250e3['id'])||_0x3bf8b3['addUser'](_0x1250e3);function _0x21d9ab(_0x59c434){_0x3bf8b3['getUser'](_0x59c434)||_0x48cf31['add'](_0x59c434);}}}function st(_0x5a2ec4){return _0x5a2ec4['message']['startsWith']('cloud-services-internal-error:\x20Revision\x20History\x20Service\x20is\x20not\x20connected.')||_0x5a2ec4['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x5a2ec4['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}class d extends _0x2b8fdd{static get['requires'](){return['RevisionHistory',v,n];}static get['pluginName'](){return'RealTimeCollaborativeRevisionHistory';}}class ts extends _0x40503d{constructor(_0x395217){super(_0x395217);const _0x2c7bb2=this['bindTemplate'];this['set']('usersCount',0x0),this['set']('isHidden',!0x0),this['setTemplate']({'tag':'div','attributes':{'class':['ck','ck-presence-list__counter',_0x2c7bb2['if']('isHidden','ck-presence-list__counter--hidden')]},'children':[{'text':_0x2c7bb2['to']('usersCount',_0x1b4fbe=>q(_0x395217,'CONNECTED_USERS',_0x1b4fbe))}]});}}class es extends _0x40503d{['items'];['keystrokes'];constructor(_0x59d6df){super(_0x59d6df);const _0x410e9e=this['bindTemplate'];this['items']=this['createCollection'](),this['keystrokes']=new _0x2d785d(),this['set']({'hasPopup':!0x1,'isExpanded':!0x1}),this['setTemplate']({'tag':'div','attributes':{'aria-haspopup':_0x410e9e['if']('hasPopup'),'aria-expanded':_0x410e9e['to']('isExpanded',_0x4943a3=>this['hasPopup']&&String(_0x4943a3)),'aria-label':_0x410e9e['to']('hasPopup',_0x3b2f66=>q(_0x59d6df,_0x3b2f66?'Collapsed\x20connected\x20users\x20list\x20(press\x20ENTER\x20to\x20open\x20it)':'Connected\x20users\x20list')),'role':'list','tabindex':_0x410e9e['to']('hasPopup',_0x33c359=>!!_0x33c359&&0x0),'class':['ck','ck-presence-list__list']},'children':this['items'],'on':{'click':_0x410e9e['to'](()=>this['fire']('execute'))}}),this['on']('change:hasPopup',(_0x1228e3,_0x278443,_0x2afddd)=>{this['element']&&(_0x2afddd?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 _ extends _0x40503d{['counterView'];['inlineListView'];constructor(_0x3b0bba){super(_0x3b0bba);const _0x219745=this['bindTemplate'];this['set']('isCollapsed',!0x0),this['counterView']=new ts(this['locale']),this['inlineListView']=new es(_0x3b0bba),this['inlineListView']['bind']('hasPopup')['to'](this,'isCollapsed'),this['listenTo'](this['inlineListView']['items'],'change',()=>{for(const _0x55633c of this['inlineListView']['items'])_0x55633c['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',_0x219745['if']('isCollapsed','ck-presence-list--collapsed')]},'children':[this['counterView'],this['inlineListView']]});}}class M extends _0x40503d{['listWrapperView'];constructor(_0x401b40,_0x5a6cd0){super(_0x401b40),this['listWrapperView']=new mt(_0x401b40,_0x5a6cd0),this['setTemplate']({'tag':'div','attributes':{'tabindex':-0x1,'role':'application','class':['ck','ck-presence-list__dropdown-list'],'aria-label':q(_0x401b40,'Connected\x20users\x20list\x20dropdown\x20menu')},'children':[this['listWrapperView']]});}}class mt extends _0x4c2bf3{constructor(_0xdef5fb,_0x577dd9){super(_0xdef5fb);const _0x31b5d6=this['bindTemplate'];this['set']('_isScrollable',!0x1),this['setTemplate']({'tag':_0x577dd9?'div':'ul','attributes':{'class':['ck','ck-reset','ck-list','ck-presence-list__dropdown-list-wrapper',_0x31b5d6['if']('_isScrollable','ck-presence-list__dropdown-list-wrapper_scrollable')],'role':_0x31b5d6['to']('role'),'aria-label':_0x31b5d6['to']('ariaLabel'),'aria-labelledby':_0x31b5d6['to']('ariaLabelledBy')},'children':this['items']}),this['listenTo'](_0x126da3['window'],'resize',()=>this['checkIfScrollable']()),this['items']['on']('change',()=>this['checkIfScrollable']());}['render'](){super['render'](),this['checkIfScrollable']();}['checkIfScrollable'](){const _0x21e461=this['element'];_0x21e461&&(this['_isScrollable']=Math['max'](_0x21e461['scrollHeight'],_0x21e461['clientHeight'])>0.8*window['innerHeight']);}}class E extends rt{['userView'];constructor(_0x5ee867,_0x4cbe96,_0x2b0fd3){super(_0x5ee867);const _0x2b8414=this['bindTemplate'];this['userView']=new ct(_0x5ee867,_0x4cbe96);const _0x4bce18={'tag':'li','attributes':{'class':['ck','ck-presence-list__dropdown-list-item'],'tabindex':-0x1,'role':'presentation','aria-label':_0x4cbe96['name']},'children':[this['userView'],{'tag':'span','attributes':{'class':['ck','ck-user__full-name']},'children':[{'text':_0x4cbe96['name']}]},{'tag':'span','attributes':{'class':['ck','ck-presence-list__marker',_0x4cbe96['color']['getBackgroundColorClass']()],'aria-hidden':'true'}}]};_0x2b0fd3&&(_0x4bce18['tag']='button',_0x4bce18['on']={'click':_0x2b8414['to'](()=>this['fire']('execute'))}),this['setTemplate'](_0x4bce18);}['focus'](){this['element']['focus']();}}class T extends _0x40503d{['userView'];['markerView'];constructor(_0x2d19e1,_0x2f1852,_0x29c186){super(_0x2d19e1);const _0x4547c0=this['bindTemplate'];this['set']('isFocusable',!0x1),this['set']('hasTooltip',!0x0),this['set']('tooltipPosition',''),this['userView']=new ct(_0x2d19e1,_0x2f1852),this['markerView']=new at(_0x2d19e1,_0x2f1852);const _0x4065f7=new ot(_0x2d19e1);_0x4065f7['template']['tag']='span',_0x4065f7['text']=_0x2f1852['name'];const _0x10876d={'tag':'div','attributes':{'class':['ck','ck-presence-list__list-item'],'role':'listitem','tabindex':_0x4547c0['to']('isFocusable',_0x41e21b=>!!_0x41e21b&&0x0),'aria-labelledby':_0x4065f7['id'],'data-cke-tooltip-text':this['userView']['name'],'data-cke-tooltip-position':_0x4547c0['to']('tooltipPosition'),'data-cke-tooltip-disabled':_0x4547c0['to']('hasTooltip',_0x3403c=>!_0x3403c),'data-cke-tooltip-class':'ck-presence-list__list-item__tooltip'},'children':[this['userView'],this['markerView'],_0x4065f7]};_0x29c186&&(_0x10876d['tag']='button',_0x10876d['on']={'click':_0x4547c0['to'](()=>this['fire']('execute'))}),this['setTemplate'](_0x10876d);}}class at extends _0x40503d{constructor(_0x16030d,_0x2ba87b){super(_0x16030d),this['setTemplate']({'tag':'span','attributes':{'class':['ck','ck-presence-list__marker',_0x2ba87b['color']['getBackgroundColorClass']()],'aria-hidden':'true'}});}}const D={'collapseAt':0x6,'displayMe':!0x0};class s extends _0x41fb54{['currentDisplayedUsers'];['balloonPanelView'];['view'];['presenceDropdownView'];['_bodyCollection']=null;constructor(_0x54c660){super(_0x54c660),this['context']['config']['define']('presenceList',D);const _0x1ff729=_0x54c660['config']['get']('presenceList.collapseAt');if('number'!=typeof _0x1ff729)throw new _0x3eb044('presencelist-collapseat-invalid-format',this);if(_0x1ff729<0x1)throw new _0x3eb044('presencelist-collapseat-invalid-format',this);this['_allConnectedUsers']=this['context']['plugins']['get'](r)['allConnectedUsers'],this['set']('usersCount',0x0),this['currentDisplayedUsers']=new _0x332aca(),this['balloonPanelView']=new _0x1aa4ee(),this['balloonPanelView']['class']='ck\x20ck-presence-list__balloon',this['view']=this['_createView'](),this['presenceDropdownView']=void 0x0;}static get['requires'](){return[r];}['init'](){for(const _0x3a1c83 of this['_allConnectedUsers'])this['_handleUserAdd'](_0x3a1c83);this['listenTo'](this['_allConnectedUsers'],'add',(_0xe323d7,_0x434339)=>{this['_handleUserAdd'](_0x434339);}),this['listenTo'](this['_allConnectedUsers'],'remove',(_0x59a200,_0x4e2a8a)=>{this['_handleUserRemove'](_0x4e2a8a);});}['_createView'](){const _0x431690=this['context'],_0x20bc36=new _(this['context']['locale']),_0x159b8f=this['balloonPanelView'];if(!_0x390e35(_0x431690['config']['get']('presenceList.container')))throw new _0x3eb044('presencelist-missing-container',this);return _0x20bc36['counterView']['bind']('usersCount')['to'](this),_0x20bc36['bind']('isCollapsed')['to'](this,'usersCount',_0x582c78=>{const {collapseAt:_0x5e2839,displayMe:_0x2aa30c}=_0x431690['config']['get']('presenceList'),_0x2f3f2e=_0x582c78>=_0x5e2839;return _0x20bc36['counterView']['isHidden']=!(0x1==_0x582c78&&_0x2aa30c||_0x2f3f2e),_0x2f3f2e||this['hideDropdown'](),_0x2f3f2e;}),_0x20bc36['inlineListView']['items']['bindTo'](this['currentDisplayedUsers'])['using'](_0x52da2c=>{const _0x4d8205=_0x431690['config']['get']('presenceList'),_0x1ea9f3=new T(_0x431690['locale'],_0x52da2c,!!_0x4d8205['onClick']);return _0x1ea9f3['bind']('hasTooltip')['to'](_0x20bc36,'isCollapsed',_0x66dbaa=>!_0x66dbaa),_0x1ea9f3['bind']('isFocusable')['to'](_0x20bc36,'isCollapsed',_0x50c353=>!_0x50c353),_0x4d8205['onClick']&&this['listenTo'](_0x1ea9f3,'execute',()=>{this['view']['isCollapsed']||_0x4d8205['onClick'](_0x52da2c,_0x1ea9f3['element']);}),_0x1ea9f3;}),this['listenTo'](_0x20bc36['inlineListView'],'execute',()=>{this['presenceDropdownView']?this['hideDropdown']():this['view']['isCollapsed']&&this['showDropdown']();}),_0x20bc36['inlineListView']['keystrokes']['set']('Enter',(_0x20f086,_0x143b58)=>{this['view']['isCollapsed']&&(this['showDropdown'](),_0x143b58());}),_0x20bc36['render'](),_0x159b8f['render'](),_0x1f60fe({'emitter':_0x20bc36,'activator':()=>_0x159b8f['isVisible'],'contextElements':[_0x159b8f['element'],_0x20bc36['inlineListView']['element']],'callback':()=>this['hideDropdown']()}),_0x431690['config']['get']('presenceList.container')['appendChild'](_0x20bc36['element']),this['_bodyCollection']=new _0x2bca20(this['context']['locale']),this['_bodyCollection']['attachToDom'](),this['_bodyCollection']['add'](this['balloonPanelView']),_0x20bc36;}['_handleUserAdd'](_0x540441){if(!this['context']['config']['get']('presenceList.displayMe')&&_0x540441['isMe'])return;const _0x30c097=this['context']['config']['get']('presenceList.collapseAt')-0x1;this['usersCount']++,this['currentDisplayedUsers']['length']==_0x30c097&&this['currentDisplayedUsers']['length']>0x1&&this['currentDisplayedUsers']['remove'](0x1);const _0xa7e2a8=_0x540441['isMe']?0x0:this['currentDisplayedUsers']['length'];this['currentDisplayedUsers']['add'](_0x540441,_0xa7e2a8);}['_handleUserRemove'](_0x6340bb){if(this['usersCount']--,this['currentDisplayedUsers']['get'](_0x6340bb['id'])&&(this['currentDisplayedUsers']['remove'](_0x6340bb['id']),this['currentDisplayedUsers']['length']<this['usersCount'])){for(const _0x107427 of Array['from'](this['_allConnectedUsers'])['reverse']())if(!this['currentDisplayedUsers']['get'](_0x107427['id']))return void this['currentDisplayedUsers']['add'](_0x107427,Math['min'](this['currentDisplayedUsers']['length'],0x1));}}['showDropdown'](){if(this['presenceDropdownView'])return;const _0x534c23=this['context']['config']['get']('presenceList');this['presenceDropdownView']=new M(this['context']['locale'],!!_0x534c23['onClick']),this['view']['inlineListView']['isExpanded']=!0x0;const {listWrapperView:_0x328c56}=this['presenceDropdownView'];_0x328c56['items']['bindTo'](this['_allConnectedUsers'])['using'](_0x34903b=>{if(!_0x534c23['displayMe']&&_0x34903b['isMe'])return null;const _0x1a4b74=new E(this['context']['locale'],_0x34903b,!!_0x534c23['onClick']);return _0x534c23['onClick']&&this['listenTo'](_0x1a4b74,'execute',()=>{_0x534c23['onClick'](_0x34903b,_0x1a4b74['element']);}),_0x1a4b74;}),this['balloonPanelView']['content']['add'](this['presenceDropdownView']),this['balloonPanelView']['pin']({'target':this['view']['inlineListView']['element']}),_0x328c56['focus'](),_0x328c56['checkIfScrollable']();const _0x37dfb0=(_0x426da3,_0x22e772)=>{this['hideDropdown'](),this['view']['inlineListView']['focus'](),_0x22e772();};_0x328c56['keystrokes']['set']('Esc',_0x37dfb0),_0x328c56['keystrokes']['set']('Shift+Tab',_0x37dfb0),_0x328c56['keystrokes']['set']('Tab',(_0xa9262b,_0x47d3d6)=>{!function(_0xda8027){const _0x10307f=['a','button','input','select','textarea','[tabindex]','[contenteditable]']['map'](_0x23b06d=>_0x23b06d+':not([disabled]):not([tabindex=\x22-1\x22])')['join'](','),_0x54777b=[...document['body']['querySelectorAll'](_0x10307f)]['filter'](_0x1c3d3b=>_0x1c3d3b===document['activeElement']||_0x1c3d3b['offsetWidth']+_0x1c3d3b['offsetHeight']>0x0)['sort']((_0xce7c1,_0x33ccdb)=>(_0xce7c1['tabIndex']||0x0)-(_0x33ccdb['tabIndex']||0x0)),_0x568765=_0x54777b['indexOf'](_0xda8027),_0x510e52=_0x54777b[(_0x568765+0x1)%_0x54777b['length']];_0x510e52&&_0x510e52['focus']();}(this['view']['element']),this['hideDropdown'](),_0x47d3d6();}),_0x328c56['focusTracker']['add'](this['view']['element']),_0x328c56['focusTracker']['on']('change:isFocused',(_0x3f647b,_0x3923e4,_0x54b989)=>{_0x54b989||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 i extends _0x41fb54{static get['requires'](){return[r,s];}static get['pluginName'](){return'PresenceList';}}export{a as CloudServicesCommentsAdapter,v as CloudServicesRevisionHistoryAdapter,g as CloudServicesTrackChangesAdapter,i as PresenceList,l as RealTimeCollaborationClient,m as RealTimeCollaborativeComments,n as RealTimeCollaborativeEditing,d as RealTimeCollaborativeRevisionHistory,p as RealTimeCollaborativeTrackChanges};
|
|
23
|
+
import{ContextPlugin as _0x18fa55,Plugin as _0x376faf,PendingActions as _0x4f978d,Context as _0x23ad8d}from'@ckeditor/ckeditor5-core/dist/index.js';import{DomEmitterMixin as _0x4583ee,CKEditorError as _0x227598,Collection as _0x524897,global as _0x1420b4,version as ht,uid as _0x33d4d9,KeystrokeHandler as _0x2d38fb}from'@ckeditor/ckeditor5-utils/dist/index.js';import{Notification as _0x4bd7ff,View as _0x32bc9a,ListView as _0x27fe99,ListItemView as ct,LabelView as pt,BalloonPanelView as _0x332647,clickOutsideHandler as _0x161e77,BodyCollection as _0x37367f}from'@ckeditor/ckeditor5-ui/dist/index.js';import{LiveRange as ut,History as _0x5ade24,NoOperation as _0x35c27f,InsertOperation as _0xcc2fc4,MarkerOperation as _0x318383,RootAttributeOperation as _0x2fcfce,transformSets as _0x20f488,OperationFactory as _0x1771b0}from'@ckeditor/ckeditor5-engine/dist/index.js';import{WebSocketGateway as ft,WEB_SOCKET_GATEWAY_STATES as _0x34e6a4,CollaborativeEditingService as _0x25d67d,User as mt,CommentsService as tt,TrackChangesService as at,RevisionHistoryService as st,EditorService as it}from'@ckeditor/ckeditor-cloud-services-collaboration/dist/index.js';import{Users as _0x4cfeb8,UserView as lt}from'ckeditor5-collaboration/dist/index.js';import{Compressor as _0x386e3e}from'@ckeditor/ckeditor5-operations-compressor/dist/index.js';import{isElement as _0x348b04}from'lodash-es';class c extends _0x18fa55{static ['WebSocketGateway']=/* #__PURE__ -- @preserve */
|
|
24
|
+
((()=>ft)());static ['initialReconnectionInterval']=0x3e8;['connection'];['_reconnectionStack'];['_shouldPluginsReconnect'];['_domEmitter'];static get['requires'](){return['CloudServices',_0x4bd7ff];}static get['pluginName'](){return'WebSocketGateway';}constructor(_0x5a12c2){super(_0x5a12c2),this['set']('state',_0x34e6a4['CONNECTED']),this['set']('_isBrowserOffline',!0x1),this['_reconnectionStack']=new Set(),this['_shouldPluginsReconnect']=!0x1,this['_domEmitter']=Object['create'](_0x4583ee);}['init'](){const _0x3fc062=this['context'],_0x32c2b4=_0x3fc062['plugins']['get']('CloudServices'),_0x1f47a5=_0x3fc062['plugins']['get'](_0x4bd7ff);if(!_0x32c2b4['token'])throw new _0x227598('websocketgateway-missing-token',this);if(!_0x32c2b4['webSocketUrl'])throw new _0x227598('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'](_0x32c2b4['token'],_0x32c2b4['webSocketUrl'],{'timeout':0x3e8*this['context']['config']['get']('cloudServices.connectionTimeout'),'requestTimeout':0x3e8*this['context']['config']['get']('cloudServices.requestTimeout')})['then'](_0x37b61c=>{if(this['connection']=_0x37b61c,this['bind']('state')['to'](_0x37b61c,'state',this,'_isBrowserOffline',(_0x19197b,_0x374e44)=>('connected'!==_0x19197b&&(this['_shouldPluginsReconnect']=!0x0),_0x374e44||_0x19197b!==_0x34e6a4['CONNECTED']?_0x34e6a4['DISCONNECTED']:this['state']==_0x34e6a4['DISCONNECTED']&&this['_shouldPluginsReconnect']?(this['_shouldPluginsReconnect']=!0x1,this['_reconnect'](),_0x34e6a4['CONNECTING']):_0x34e6a4['CONNECTED'])),this['connection']['on']('error',(_0x13be3e,_0x2eaa62)=>{if('limitExceeded'!==_0x2eaa62['code'])throw console['error'](_0x2eaa62),new _0x227598('cloudservices-init',null,{'originalError':_0x2eaa62});_0x1f47a5['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'});}),!_0x37b61c['me'])return new Promise(_0x3fd360=>_0x37b61c['on']('change:me',_0x3fd360));})['catch'](_0x41b3d3=>{throw console['error'](_0x41b3d3),new _0x227598('cloudservices-init',null,{'originalError':_0x41b3d3});});}['addToReconnectionStack'](_0x53b65b){if('function'!=typeof _0x53b65b['reconnect'])throw new _0x227598('websocketgateway-invalid-plugin-interface',this);if(this['isInReconnectionStack'](_0x53b65b))throw new _0x227598('websocketgateway-plugin-already-registered',this,{'name':_0x53b65b['constructor']['pluginName']});this['_reconnectionStack']['add'](_0x53b65b);}['removeFromReconnectionStack'](_0x5cd342){this['_reconnectionStack']['delete'](_0x5cd342);}['isInReconnectionStack'](_0x1315da){return this['_reconnectionStack']['has'](_0x1315da);}['_reconnect'](){return this['connection']['reconnect']()['then'](()=>Promise['all'](Array['from'](this['_reconnectionStack'],_0xd0b077=>_0xd0b077['reconnect']())))['then'](()=>this['state']=_0x34e6a4['CONNECTED'])['catch'](_0x1eac86=>{throw console['error'](_0x1eac86),new _0x227598('cloudservices-reconnection-error',this['context']);});}['destroy'](){this['connection']&&this['connection']['disconnect'](),this['state']=_0x34e6a4['DISCONNECTED'],this['_domEmitter']['stopListening'](),super['destroy']();}}class r extends _0x18fa55{['channelSessions'];['channelConnectedUsers'];['allConnectedUsers'];['_registeredSessions'];['_uniqueUsersCount'];['_users'];static get['pluginName'](){return'Sessions';}static get['requires'](){return[c,_0x4cfeb8];}constructor(_0x1c72cb){super(_0x1c72cb),this['channelSessions']=new Map(),this['channelConnectedUsers']=new Map(),this['allConnectedUsers']=new _0x524897(),this['_registeredSessions']=new Map(),this['_uniqueUsersCount']=0x0,this['_users']=this['context']['plugins']['get'](_0x4cfeb8);}['init'](){const _0x2b48a4=this['context']['plugins']['get'](c);this['listenTo'](_0x2b48a4,'change:state',(_0x2f6f94,_0x2f52d1,_0x2ea072)=>{if('connected'!==_0x2ea072)this['channelSessions']['forEach'](_0x528371=>_0x528371['clear']()),this['channelConnectedUsers']['forEach'](_0x229b08=>_0x229b08['clear']()),this['allConnectedUsers']['clear']();else{for(const [_0x9740ff,_0x46d958]of this['_registeredSessions'])for(const _0x2c6e24 of _0x46d958)this['_handleSessionAdd'](_0x9740ff,_0x2c6e24);}}),this['_createUser'](_0x2b48a4['connection']['me'],!0x0);}['register'](_0x81ee1c,_0x346416){if(this['_registeredSessions']['has'](_0x81ee1c))throw new _0x227598('sessions-register-already-registered',null,{'channelId':_0x81ee1c});this['_registeredSessions']['set'](_0x81ee1c,_0x346416),this['channelSessions']['set'](_0x81ee1c,new _0x524897()),this['channelConnectedUsers']['set'](_0x81ee1c,new _0x524897()),this['listenTo'](_0x346416,'add',(_0xfbd8ac,_0x905619)=>this['_handleSessionAdd'](_0x81ee1c,_0x905619)),this['listenTo'](_0x346416,'remove',(_0x5a0d31,_0x5a6dee)=>this['_handleSessionRemove'](_0x81ee1c,_0x5a6dee));for(const _0x1ae34a of _0x346416)this['_handleSessionAdd'](_0x81ee1c,_0x1ae34a);}['unregister'](_0x1f7941){if(!this['_registeredSessions']['has'](_0x1f7941))throw new _0x227598('sessions-unregister-not-exist',null,{'channelId':_0x1f7941});const _0x314d90=this['_registeredSessions']['get'](_0x1f7941);this['stopListening'](_0x314d90);for(const _0x23b439 of _0x314d90)'connected'===this['context']['plugins']['get'](c)['state']&&this['_handleSessionRemove'](_0x1f7941,_0x23b439);this['_registeredSessions']['delete'](_0x1f7941),this['channelSessions']['delete'](_0x1f7941),this['channelConnectedUsers']['delete'](_0x1f7941);}get['mySessionId'](){return this['context']['plugins']['get'](c)['connection']['sessionId'];}['getUserBySessionId'](_0x4b639e){for(const _0x9ef5b4 of this['channelSessions']['values']())for(const _0x5cf6ec of _0x9ef5b4)if(_0x5cf6ec['id']===_0x4b639e)return _0x5cf6ec['user'];}['getUserSessions'](_0x284951,_0x384d4b){const _0x3b4bc6=_0x384d4b?[this['channelSessions']['get'](_0x384d4b)]:this['channelSessions']['values'](),_0x7868b=new Set();for(const _0x3151a8 of _0x3b4bc6)for(const _0x134eab of _0x3151a8)_0x134eab['user']['id']===_0x284951['id']&&_0x7868b['add'](_0x134eab['id']);return _0x7868b;}['getUserRole'](_0x535535){for(const _0x9d3d30 of this['channelSessions']['values']())for(const _0x576258 of _0x9d3d30)if(_0x576258['user']===_0x535535)return _0x576258['role'];}['_handleSessionAdd'](_0x317cfa,_0x5d3c52){if('connected'!==this['context']['plugins']['get'](c)['state'])return;const _0x150618=_0x5d3c52['user'],_0x4f3dc7=this['_users']['getUser'](_0x150618['id'])||this['_createUser'](_0x150618),_0x50ff80=Object['assign']({},_0x5d3c52,{'user':_0x4f3dc7});this['channelSessions']['get'](_0x317cfa)['add'](_0x50ff80);const _0x171e58=this['channelConnectedUsers']['get'](_0x317cfa);_0x171e58['has'](_0x4f3dc7['id'])||_0x171e58['add'](_0x4f3dc7),this['allConnectedUsers']['has'](_0x4f3dc7['id'])||this['allConnectedUsers']['add'](_0x4f3dc7,_0x4f3dc7['isMe']?0x0:void 0x0),this['fire']('sessionAdd:'+_0x317cfa,{'channelId':_0x317cfa,'session':_0x50ff80});}['_handleSessionRemove'](_0x554924,_0x3493a4){if('connected'!==this['context']['plugins']['get'](c)['state'])return;const _0x5576d4=this['channelConnectedUsers']['get'](_0x554924),_0x2dfce2=_0x3493a4['user'];_0x2dfce2['id']&&(this['channelSessions']['get'](_0x554924)['remove'](_0x3493a4['id']),_0x5576d4['has'](_0x2dfce2['id'])&&!this['getUserSessions'](_0x2dfce2,_0x554924)['size']&&_0x5576d4['remove'](_0x2dfce2['id']),this['allConnectedUsers']['get'](_0x2dfce2['id'])&&!this['getUserSessions'](_0x2dfce2)['size']&&this['allConnectedUsers']['remove'](_0x2dfce2['id']));}['_createUser'](_0x284475,_0x50a08a){const _0xac9a0f=this['_users']['addUser'](_0x284475);return _0x50a08a&&this['_users']['defineMe'](_0x284475['id']),_0xac9a0f['orderNumber']=this['_uniqueUsersCount']++,_0xac9a0f;}}class E extends _0x376faf{['_domEmitter']=new(_0x4583ee())();static get['requires'](){return[r];}static get['pluginName'](){return'UserMarkers';}['init'](){const _0x2481e2=this['editor'],_0x254c37=_0x2481e2['plugins']['get'](r);_0x2481e2['conversion']['for']('editingDowncast')['markerToElement']({'model':'user:position','view':(_0x12c0fb,{writer:_0x199f76})=>function(_0x55b070,_0x339382,_0x46e127,_0x2f634b){const _0x398056=_0x55b070['markerName']['split'](':')[0x2],_0x287045=_0x46e127['getUserBySessionId'](_0x398056);if(!_0x287045||_0x398056===_0x46e127['mySessionId'])return;if(!_0x2f634b['model']['schema']['checkChild'](_0x55b070['markerRange']['start'],'$text'))return;const _0x1f6978={'class':'ck-user__marker\x20'+_0x287045['color']['getMarkerClass'](),'data-name':_0x287045['name'],'data-session-id':_0x398056},_0x455a2e=_0x2f634b['model']['markers']['get'](_0x55b070['markerName']),_0x3f0af8=_0x455a2e['getStart'](),_0x3dc81d=_0x3f0af8['nodeAfter'],_0x43f956=_0x2f634b['model']['schema'];if(_0x3dc81d&&_0x43f956['isObject'](_0x3dc81d)&&_0x43f956['isInline'](_0x3dc81d)&&!_0x2f634b['model']['markers']['get']('user:range:'+_0x398056)['getRange']()['isCollapsed'])return;const _0x462be0=_0x3f0af8['parent'];return _0x2f634b['model']['schema']['isLimit'](_0x462be0)&&!_0x2f634b['model']['hasContent'](_0x462be0)&&(_0x1f6978['contenteditable']=!0x1),function(_0x2ffe42,_0x176ef7,_0x552b07){const _0x45f354=_0x2ffe42['createUIElement']('span',_0x176ef7);return _0x2ffe42['setCustomProperty']('userPositionMarker',!0x0,_0x45f354),_0x45f354['render']=function(_0x357cb1){const _0x29a7f6=this['toDomElement'](_0x357cb1);return _0x29a7f6['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>'+_0x552b07['name']+'</span>',_0x29a7f6['addEventListener']('mouseenter',()=>{_0x29a7f6['classList']['add']('ck-user__marker_hovered');}),_0x29a7f6['addEventListener']('mouseleave',()=>{_0x29a7f6['classList']['remove']('ck-user__marker_hovered');}),_0x29a7f6;},_0x45f354['isSimilar']=function(_0x2cfa1f){return!(!this['getCustomProperty']('userPositionMarker')||!_0x2cfa1f['getCustomProperty']('userPositionMarker')||this['getAttribute']('data-session-id')!=_0x2cfa1f['getAttribute']('data-session-id'));},_0x45f354;}(_0x339382,_0x1f6978,_0x287045);}(_0x12c0fb,_0x199f76,_0x254c37,_0x2481e2)}),_0x2481e2['conversion']['for']('editingDowncast')['markerToHighlight']({'model':'user:range','view':_0x121980=>function(_0x2f5041,_0x121ed5){const _0x2896fe=_0x2f5041['markerName']['split'](':')[0x2];if(_0x2896fe===_0x121ed5['mySessionId'])return null;const _0x38fa63=_0x121ed5['getUserBySessionId'](_0x2896fe);if(!_0x38fa63)return{'id':_0x2896fe,'classes':[]};return{'id':_0x2896fe,'classes':['ck-user__selection',_0x38fa63['color']['getSelectionClass']()],'attributes':{'data-session-id':_0x2896fe},'priority':0x7d0+_0x38fa63['orderNumber']};}(_0x121980,_0x254c37)}),function(_0x62b6b1){const _0x424a9d=_0x62b6b1['model'],_0x331a38=new Map(),_0x51a6da=_0x62b6b1['plugins']['get'](r);_0x424a9d['markers']['on']('update:user:range',(_0x299b0a,_0x41206b,_0x2fc742,_0x54e355)=>{if(!_0x54e355&&_0x331a38['get'](_0x41206b['name']))return _0x331a38['get'](_0x41206b['name'])['detach'](),void _0x331a38['delete'](_0x41206b['name']);const _0x29da55=_0x41206b['name']['split'](':')[0x2];if(_0x29da55===_0x51a6da['mySessionId'])return;const _0x4249ac='user:position:'+_0x29da55;_0x424a9d['markers']['has'](_0x4249ac)&&_0x62b6b1['editing']['reconvertMarker'](_0x4249ac),_0x41206b['on']('change:range',(_0x3471ff,_0x4dc425,_0x2bcb94)=>{if('$graveyard'!=_0x4dc425['root']['rootName']&&'$graveyard'==_0x41206b['getRange']()['root']['rootName']&&!_0x331a38['has'](_0x41206b['name'])){const _0x5d809c=_0x424a9d['schema']['getNearestSelectionRange'](_0x2bcb94['deletionPosition']);if(_0x5d809c){const _0x511fc9=ut['fromRange'](_0x5d809c);_0x331a38['set'](_0x41206b['name'],_0x511fc9),_0x511fc9['on']('change:range',(_0x11123c,_0x3bdfb8,_0x3c9c38)=>{if('$graveyard'==_0x511fc9['root']['rootName']){const _0x46c7e6=_0x424a9d['schema']['getNearestSelectionRange'](_0x3c9c38['deletionPosition']);_0x46c7e6?(_0x511fc9['start']=_0x46c7e6['start'],_0x511fc9['end']=_0x46c7e6['end']):(_0x331a38['delete'](_0x41206b['name']),_0x511fc9['detach']());}});}}});}),_0x424a9d['document']['on']('change',()=>{_0x331a38['size']>0x0&&_0x424a9d['enqueueChange']({'isUndoable':!0x1},_0x14c3cb=>{for(const [_0x170003,_0x8c57a5]of _0x331a38)'$graveyard'==_0x424a9d['markers']['get'](_0x170003)['getRange']()['root']['rootName']&&(Q(_0x170003['split'](':')[0x2],_0x8c57a5['toRange'](),_0x424a9d,_0x14c3cb),_0x8c57a5['detach']());_0x331a38['clear']();});});}(_0x2481e2),this['_domEmitter']['listenTo'](_0x1420b4['document'],'keydown',(_0x3982c5,{key:_0x4a7903})=>{'Escape'===_0x4a7903&&function(_0x1a90c2){_0x1a90c2['editing']['view']['change'](_0x557e26=>{for(const _0x3d1596 of _0x1a90c2['model']['markers']){if(!_0x3d1596['name']['startsWith']('user:position'))continue;const _0x1f220e=_0x1a90c2['editing']['mapper']['markerNameToElements'](_0x3d1596['name']);if(_0x1f220e){for(const _0xcbd0de of _0x1f220e)_0x557e26['removeClass']('ck-user__marker_hovered',_0xcbd0de);}}});}(_0x2481e2);},{'useCapture':!0x0});}['afterInit'](){const _0x3b00e6=this['editor'],_0x496724=_0x3b00e6['commands']['get']('undo');_0x496724&&_0x3b00e6['model']['on']('applyOperation',(_0x78a030,_0x1c94b7)=>{const _0x5ea3a6=_0x1c94b7[0x0];if('marker'!=_0x5ea3a6['type']||!_0x5ea3a6['name']['startsWith']('user:'))return;const _0x58cd7c=_0x5ea3a6['batch'];_0x496724['_createdBatches']['has'](_0x58cd7c)&&(_0x5ea3a6['newRange']=_0x5ea3a6['oldRange']?_0x3b00e6['model']['createRange'](_0x5ea3a6['oldRange']['start'],_0x5ea3a6['oldRange']['end']):null);},{'priority':'highest'});}['destroy'](){return this['_domEmitter']['stopListening'](),super['destroy']();}['createUserMarkerOperations'](){const _0x419ff0=this['editor'],_0x3fa114=_0x419ff0['model']['document'],_0x492801=_0x419ff0['plugins']['get'](r);_0x419ff0['model']['enqueueChange']({'isUndoable':!0x1},_0x491003=>{const _0x548ad7='user:range:'+_0x492801['mySessionId'],_0x56f3db='user:position:'+_0x492801['mySessionId'],_0x10cb59=_0x419ff0['model']['markers']['has'](_0x548ad7);_0x419ff0['editing']['view']['hasDomSelection']?Q(_0x492801['mySessionId'],_0x3fa114['selection']['getFirstRange'](),_0x419ff0['model'],_0x491003):_0x10cb59&&(_0x491003['removeMarker'](_0x548ad7),_0x491003['removeMarker'](_0x56f3db));});}}function Q(_0x2acd98,_0x5224d4,_0x85cb56,_0x283355){const _0x41fe2c='user:range:'+_0x2acd98,_0x5027d3='user:position:'+_0x2acd98,_0xcbdd32=_0x5224d4['getContainedElement']();let _0xa50726=_0x5224d4['start'];_0xcbdd32&&_0xcbdd32['is']('element','tableCell')&&(_0xa50726=function(_0x17911c,_0xe8ebdc){for(const _0x21933d of _0x17911c['getPositions']())if(_0xe8ebdc['schema']['checkChild'](_0x21933d,'$text'))return _0x21933d;}(_0x5224d4,_0x85cb56),_0x5224d4=_0x283355['createRange'](_0xa50726));const _0x1ad8db=_0x283355['createRange'](_0xa50726);_0x85cb56['markers']['has'](_0x41fe2c)?(_0x283355['updateMarker'](_0x41fe2c,{'range':_0x5224d4}),_0x283355['updateMarker'](_0x5027d3,{'range':_0x1ad8db})):(_0x283355['addMarker'](_0x41fe2c,{'range':_0x5224d4,'usingOperation':!0x0}),_0x283355['addMarker'](_0x5027d3,{'range':_0x1ad8db,'usingOperation':!0x0}));}function B(_0x24e9d3,_0x387088,_0x5640ec){const t=_0x24e9d3['t'];switch(_0x387088){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 t({'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'},_0x5640ec);default:return'';}}let F=0x1;class l extends _0x376faf{static ['CollaborativeEditingService']=/* #__PURE__ -- @preserve */
|
|
25
|
+
((()=>_0x25d67d)());['_offset'];['sessionId'];['serverHistory'];['_channelId'];['_service'];['_document'];['_compressor'];['_bufferedOperations'];['_knownOperations'];['_knownRootNames'];['_pendingAction'];['_hasSelectionChanged'];['_sendBufferedOperationsDelayId'];['_baseBufferDelay'];['_currentBufferDelay'];['_lastSyncedOperationId'];['_disconnectionOperations'];['_operationIdentifier'];static get['requires'](){return[c,r,E,_0x4f978d,_0x4cfeb8,_0x4bd7ff];}static get['pluginName'](){return'RealTimeCollaborationClient';}get['cloudDocumentVersion'](){return this['_lastServerVersion']+this['_offset'];}get['_lastServerVersion'](){return this['serverHistory']['version']-this['_offset'];}get['lastSyncVersion'](){const _0x556eb2=this['serverHistory']['getOperations']();for(let _0x4e240d=_0x556eb2['length']-0x1;_0x4e240d>=0x0;_0x4e240d--){const _0x30a7cf=_0x556eb2[_0x4e240d];if(!this['_disconnectionOperations']['has'](_0x30a7cf))return _0x30a7cf['baseVersion']+0x1-this['_offset'];}return 0x0;}constructor(_0x3ade92){if(super(_0x3ade92),this['_offset']=0x0,this['sessionId']=null,this['serverHistory']=new _0x5ade24(),this['editor']['config']['define']('collaboration',{}),this['_channelId']=this['editor']['config']['get']('collaboration.channelId'),!this['_channelId'])throw new _0x227598('collaboration-missing-channelid',this);const _0x35b70b=_0x3ade92['config']['get']('cloudServices.bundleVersion')||ht;this['_service']=new l['CollaborativeEditingService'](_0x35b70b,this['_channelId']),this['_document']=this['editor']['model']['document'],this['_compressor']=new _0x386e3e(),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 G(this['_disconnectionOperations']);}['init'](){const _0x5b83d3=this['editor'],_0x40bfc3=_0x5b83d3['plugins']['get'](_0x4cfeb8),_0x171b16=_0x5b83d3['plugins']['get'](c);this['listenTo'](_0x40bfc3,'getOperationAuthor',(_0x1428c8,_0x392a5d)=>{const _0x30004d=_0x392a5d[0x0];_0x30004d['_authorId']&&(_0x1428c8['return']=_0x40bfc3['getUser'](_0x30004d['_authorId']),_0x1428c8['stop']()),null===_0x30004d['_authorId']&&(_0x1428c8['return']=null,_0x1428c8['stop']());},{'priority':'high'}),this['listenTo'](_0x5b83d3['model']['document']['selection'],'change:range',(_0x182967,_0x39a8c4)=>{_0x39a8c4['directChange']&&this['_refreshUserSelectionMarkers']();}),this['listenTo'](_0x5b83d3['editing']['view'],'change:hasDomSelection',()=>{this['_refreshUserSelectionMarkers']();}),this['_initThrowingOnDataSet'](),_0x5b83d3['model']['on']('applyOperation',(_0x5b00ed,_0x599eef)=>{const _0x3e6f0a=_0x599eef[0x0];_0x3e6f0a['isDocumentOperation']&&(this['_saveOperationInBuffer'](_0x3e6f0a),this['_shouldSendUpdate']()&&this['_sendBufferedOperationsDelayed']());}),this['_setUpDataInit'](),this['bind']('_isEditingAllowed')['to'](_0x171b16,'state',this,'_hasSynchronizationProblem',(_0x13c77c,_0x22f00)=>'connected'===_0x13c77c&&!_0x22f00),this['on']('change:_isEditingAllowed',()=>{this['_isEditingAllowed']?_0x5b83d3['disableReadOnlyMode']('rtc-offline'):_0x5b83d3['enableReadOnlyMode']('rtc-offline');}),this['_isEditingAllowed']?_0x5b83d3['disableReadOnlyMode']('rtc-offline'):_0x5b83d3['enableReadOnlyMode']('rtc-offline'),this['set']('_isConnected',!0x1);}async['reconnect'](){const _0x177d67=this['editor']['plugins']['get'](r),_0x553393=this['editor']['plugins']['get'](c);try{this['_isPendingUpdate']=!0x0,_0x177d67['unregister'](this['_channelId']);const _0x270721=await this['_service']['reconnect'](_0x553393['connection'],this['lastSyncVersion']);await this['_handleReconnectionResponse'](_0x270721)&&(this['_isPendingUpdate']=!0x1,this['_clearPendingAction']());const _0x323d41=await this['_service']['getConnectedSessions']();_0x177d67['register'](this['_channelId'],_0x323d41),this['_handleSendingSelectionMarkers'](),this['_isConnected']=!0x0;}catch(_0x5ccda3){if(function(_0x1eca52){return'404'===_0x1eca52['code'];}(_0x5ccda3)&&this['sessionId'])await this['_connectAfterSessionHasBeenFlushed']();else{if(function(_0x49ea53){return'409'===_0x49ea53['code'];}(_0x5ccda3)){const _0x27dfc4=B(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'](_0x27dfc4);}else{if(!(_0x5ccda3 instanceof H))throw _0x5ccda3;this['_handleReconnectionError']();}}}}['destroy'](){const _0x33acdf=this['editor']['plugins']['get'](c),_0x2fde9b=this['editor']['plugins']['get'](r);this['editor']['enableReadOnlyMode']('rtc-destroyed'),_0x2fde9b['channelSessions']['has'](this['_channelId'])&&_0x2fde9b['unregister'](this['_channelId']),_0x33acdf['removeFromReconnectionStack'](this),this['_disconnectService'](),super['destroy']();}async['_handleReconnectionResponse'](_0xc01b74){if(this['sessionId']!==_0xc01b74['sessionId']&&this['_lastSyncedOperationId']!==_0xc01b74['lastOperationId'])throw new H();return this['sessionId']=_0xc01b74['sessionId'],this['_handleServerResponse']([],{..._0xc01b74,'wereChangesApplied':!0x1,'data':_0xc01b74['data']},'reconnect');}async['_connectService'](_0x4b9d0b,_0x29b74e=!0x1){const {connection:_0x2b3325}=this['editor']['plugins']['get'](c);l['CollaborativeEditingService']['getConnectedSessions'](_0x2b3325,this['_channelId'])['then'](_0x229c57=>this['_initSessionsHandling'](_0x229c57))['catch'](_0x18e58c=>{this['_crash']('realtimecollaborationclient-init-session-connection-error',_0x18e58c);}),this['listenTo'](this['_service'],'operationsReceived',this['_handleReceivedOperations']['bind'](this)),this['listenTo'](this['_service'],'error',(_0xbdbcf7,_0x3d9982)=>{this['_crash']('realtimecollaborationclient-initservice-internal-error',_0x3d9982);}),this['listenTo'](this['_service'],'disconnected',()=>{this['_isConnected']=!0x1;});const _0x18106d=this['_operationIdentifier']['getIdOfTheLastOperation'](_0x4b9d0b);this['_isPendingUpdate']=!0x0;const _0xac4b9c=await this['_service']['connect'](_0x2b3325,this['_compressOperations'](_0x4b9d0b),_0x18106d);if(this['sessionId']=_0xac4b9c['sessionId'],_0x29b74e){if(!_0xac4b9c['wereChangesApplied'])return void this['_handleReconnectionError']();this['_isPendingUpdate']=!0x1,this['_clearPendingAction'](),this['serverHistory']['reset'](),this['_offset']=_0xac4b9c['offset'],this['serverHistory']['version']=this['_offset'],await this['_handleServerResponse'](_0x4b9d0b,_0xac4b9c,'reconnection:\x20flushed\x20session');}else await this['_handleInitialConnectionData'](_0xac4b9c,_0x4b9d0b);this['_handleSendingSelectionMarkers'](),this['_isConnected']=!0x0;}['_handleSendingSelectionMarkers'](){const _0x251917=this['editor']['plugins']['get'](r),_0x58dd6c=this['editor']['plugins']['get'](E),_0x6d780b=_0x251917['channelSessions']['get'](this['_channelId']);_0x6d780b&&_0x6d780b['length']>0x1?_0x58dd6c['createUserMarkerOperations']():this['listenTo'](_0x251917,'sessionAdd:'+this['_channelId'],()=>{0x2===_0x251917['channelSessions']['get'](this['_channelId'])['length']&&_0x58dd6c['createUserMarkerOperations']();});}async['_handleReceivedOperations'](_0x4d0ee1,_0x50a38f,_0x10c930,_0x172eb8){if(!this['_isPendingUpdate']&&this['_document']['version']==_0x50a38f){const _0x3bd9d2=this['_decompressOperations'](_0x10c930,_0x172eb8);await this['_fetchMissingUsers'](_0x3bd9d2),this['_handleExternalOperations'](_0x3bd9d2,_0x50a38f,_0x10c930['lastOperationId'])||this['_crash']('realtimecollaborationclient-initservice-incorrect-server-operation');}}async['_connectAfterSessionHasBeenFlushed'](){this['_disconnectService']();const {locale:_0x3d1d71}=this['editor'];let _0x3dab01;try{_0x3dab01=await this['_service']['getDocumentDetails']();}catch(_0x371134){const _0x2c3e9d=B(_0x3d1d71,'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'](_0x2c3e9d);}const _0x4868c6=_0x3dab01['currentDocumentSession']||_0x3dab01['lastDocumentSession'];if(this['_lastSyncedOperationId']===_0x4868c6['lastOperationId'])await this['_connectService'](this['editor']['model']['document']['history']['getOperations'](),!0x0);else{const _0x59c7b4=B(_0x3d1d71,'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'](_0x59c7b4);}}['_disconnectService'](){this['_service']['disconnect'](),this['_bufferedOperations']=[],clearTimeout(this['_sendBufferedOperationsDelayId']),this['stopListening'](this['_service']);}['_initSessionsHandling'](_0x7ca94b){const _0x3df927=this['editor']['plugins']['get'](r);this['listenTo'](_0x3df927,'sessionAdd:'+this['_channelId'],(_0x5c3025,{session:_0x11c2fa})=>{if(_0x11c2fa['id']===_0x3df927['mySessionId']){_0x5c3025['off']();const _0x23a0cd=this['editor']['plugins']['has']('CommentsOnly')&&this['editor']['plugins']['get']('CommentsOnly');let _0x53f4ee=_0x11c2fa['permissions'];_0x23a0cd&&_0x23a0cd['isEnabled']&&(_0x53f4ee=_0x53f4ee['filter'](_0x891850=>'document:write'!==_0x891850)),this['editor']['plugins']['get']('Permissions')['setPermissions'](_0x53f4ee,this['_channelId']);}}),_0x3df927['register'](this['_channelId'],_0x7ca94b);}['_initThrowingOnDataSet'](){const _0x3d5569=this['editor']['data']['set'];this['editor']['data']['set']=(..._0x335721)=>{if(!_0x335721[_0x335721['length']-0x1]['suppressErrorInCollaboration'])throw new _0x227598('realtimecollaborationclient-editor-setdata-and-editor-data-set-are-forbidden-in-real-time-collaboration',this);_0x3d5569['apply'](this['editor']['data'],_0x335721);};}['_setUpDataInit'](){this['editor']['data']['on']('init',(_0x38cd95,[_0x1a8a76])=>{if(this['_document']['version'])throw new _0x227598('realtimecollaborationclient-init-document-already-initialized',this);_0x38cd95['stop'](),this['_setPendingAction']();const _0x125477=this['editor']['config']['get']('rootsAttributes'),_0x197cd7=this['_getOperationsFromInitData'](_0x1a8a76,_0x125477);0x0==_0x197cd7['length']&&_0x197cd7['push'](new _0x35c27f(0x0)),_0x38cd95['return']=this['_connectService'](_0x197cd7)['then'](()=>{this['editor']['plugins']['get'](c)['addToReconnectionStack'](this),this['editor']['data']['fire']('ready');})['catch'](_0x116dcb=>this['_crash']('realtimecollaborationclient-init-connection-failed',_0x116dcb))['finally'](()=>this['_clearPendingAction']());},{'priority':'high'}),this['editor']['on']('loadRoot',async(_0x1a26aa,[_0x394670,_0x509821])=>{_0x1a26aa['stop']();const _0x3a7374=this['editor']['model']['document']['getRoot'](_0x394670);if(!this['_knownRootNames']['has'](_0x394670)){const _0x43d42a=_0x509821&&_0x509821['data']?_0x509821['data']:'',_0x22d2be=_0x509821&&_0x509821['attributes']?_0x509821['attributes']:{};await this['_loadRoot'](_0x394670,_0x43d42a,_0x22d2be);}this['editor']['model']['enqueueChange']({'isUndoable':!0x1},()=>{_0x3a7374['_isLoaded']=!0x0,this['editor']['model']['document']['differ']['_bufferRootLoad'](_0x3a7374);});},{'priority':'high'});}async['_fetchMissingUsers'](_0x1424a2){const _0x3fd83f=this['editor']['plugins']['get'](_0x4cfeb8),{connection:_0x460810}=this['editor']['plugins']['get'](c),_0x340c49=new Set();for(const _0x93dd60 of _0x1424a2){const _0x5bfbef=_0x93dd60['_authorId'];_0x5bfbef&&!_0x3fd83f['getUser'](_0x5bfbef)&&_0x340c49['add'](_0x5bfbef);}if(0x0===_0x340c49['size'])return;const _0x4bc3a3=await mt['getMany'](_0x460810,Array['from'](_0x340c49));for(const _0x2d6a84 of _0x4bc3a3)_0x3fd83f['getUser'](_0x2d6a84['id'])||_0x3fd83f['addUser'](_0x2d6a84);}['_getOperationsFromInitData'](_0x2334db,_0x3f8232={}){const _0x4036b4=this['editor']['model'],_0x4f54a0=[];let _0x336a46=0x0;const _0x5abc1a='string'==typeof _0x2334db?{'main':_0x2334db}:_0x2334db;for(const _0x402a52 of Object['keys'](_0x5abc1a)){if(!this['_document']['roots']['has'](_0x402a52))throw new _0x227598('realtimecollaborationclient-init-non-existent-root',this);const _0x5b29c2=this['editor']['data']['parse'](_0x5abc1a[_0x402a52]),_0x1f69ad=this['_document']['getRoot'](_0x402a52),_0x5c2027=new _0xcc2fc4(_0x4036b4['createPositionAt'](_0x1f69ad,0x0),_0x5b29c2,_0x336a46++);_0x4f54a0['push'](_0x5c2027);for(const [_0x2db5c9,_0x2e12f0]of _0x5b29c2['markers']){const _0x3e8bfd=_0x4036b4['createRange'](_0x4036b4['createPositionFromPath'](_0x1f69ad,_0x2e12f0['start']['path']['slice']()),_0x4036b4['createPositionFromPath'](_0x1f69ad,_0x2e12f0['end']['path']['slice']())),_0x1c5d0d=new _0x318383(_0x2db5c9,null,_0x3e8bfd,_0x4036b4['markers'],!0x0,_0x336a46++);_0x4f54a0['push'](_0x1c5d0d);}}if(_0x3f8232)for(const [_0x1fc630,_0x292f91]of Object['entries'](_0x3f8232)){const _0x674ff8=_0x4036b4['document']['getRoot'](_0x1fc630);if(!_0x674ff8)throw new _0x227598('multi-root-editor-root-attributes-no-root',null);for(const [_0x23aa42,_0x4e047d]of Object['entries'](_0x292f91))if(null!==_0x4e047d){const _0x3f3104=new _0x2fcfce(_0x674ff8,_0x23aa42,null,_0x4e047d,_0x336a46++);_0x4f54a0['push'](_0x3f3104);}}return _0x4f54a0;}async['_loadRoot'](_0x407553,_0x510dba,_0x5a856d){this['_getOperationsFromInitData']({[_0x407553]:_0x510dba},{[_0x407553]:_0x5a856d})['forEach']((_0x234979,_0x76b0f2)=>{_0x234979['baseVersion']=this['_document']['version']+_0x76b0f2,_0x234979['_isInit']=!0x0,this['_saveOperationInBuffer'](_0x234979);}),this['_sendBufferedOperationsDelayed'](),await this['_waitUntilSynced']();}async['_handleInitialConnectionData'](_0x150885,_0x3a11ef){let _0x248b55;this['_offset']=_0x150885['offset'];const _0x1c0a96=_0x150885['wereChangesApplied']&&!_0x150885['initData'],_0x2076e4=_0x1c0a96?0x0:_0x150885['data']['baseVersion'];if(_0x3a11ef['forEach'](_0x3725b0=>{_0x3725b0['_isInit']=!0x0,_0x3725b0['createdAt']=_0x150885['sessionCreatedAt'],_0x3725b0['_authorId']=null;}),_0x1c0a96)_0x248b55=_0x3a11ef,this['_applyOperationsSet'](_0x248b55,_0x1c0a96);else{if(_0x150885['initData']){const _0x4755d3=this['_getOperationsFromInitData'](_0x150885['initData']);this['_document']['history']['version']=-_0x4755d3['length'],_0x4755d3['forEach'](_0x24eb47=>{_0x24eb47['baseVersion']-=_0x4755d3['length'],_0x24eb47['createdAt']=_0x150885['sessionCreatedAt'],_0x24eb47['_isInit']=!0x0,_0x24eb47['_authorId']=null;}),this['_applyOperationsSet'](_0x4755d3,!0x0),this['serverHistory']['version']=-_0x4755d3['length']+this['_offset'],this['_updateServerHistory'](_0x4755d3);}this['_document']['history']['version']=_0x2076e4,_0x248b55=this['_decompressOperations'](_0x150885['data'],_0x150885['metadata']),await this['_fetchMissingUsers'](_0x248b55),this['_applyOperationsSet'](_0x248b55,_0x1c0a96);}_0x150885['lastOperationId']&&(this['_operationIdentifier']['setIdForTheLastOperation'](_0x248b55,_0x150885['lastOperationId']),this['_lastSyncedOperationId']=_0x150885['lastOperationId']),this['serverHistory']['version']=_0x2076e4+this['_offset'],this['_updateServerHistory'](_0x248b55),_0x3a11ef['filter'](_0x5bf802=>{const _0x5e33f4=this['_getAffectedRoot'](_0x5bf802);return _0x5e33f4&&!this['_knownRootNames']['has'](_0x5e33f4);})['forEach']((_0x87a0,_0x216f32)=>{_0x87a0['baseVersion']=this['_document']['version']+_0x216f32,this['_saveOperationInBuffer'](_0x87a0);}),this['_shouldSendUpdate']()?(this['_currentBufferDelay']=0x0,this['_sendBufferedOperationsDelayed'](!0x0),await this['_waitUntilSynced']()):(this['_isPendingUpdate']=!0x1,this['_clearPendingAction']());}['_crash'](_0x2fb283,_0xfe5221){throw this['_isPendingUpdate']=!0x0,_0xfe5221&&console['error'](_0xfe5221),new _0x227598(_0x2fb283,this['editor']);}['_saveOperationInBuffer'](_0x3cf4ae){this['_knownOperations']['has'](_0x3cf4ae)||(this['_knownOperations']['add'](_0x3cf4ae),this['_bufferedOperations']['push'](_0x3cf4ae),this['_pendingAction']||'marker'==_0x3cf4ae['type']&&!_0x3cf4ae['affectsData']||this['_setPendingAction']());}['_sendBufferedOperationsDelayed'](_0x203dc4=!0x1){!_0x203dc4&&this['_isPendingUpdate']||(this['_isPendingUpdate']=!0x0,clearTimeout(this['_sendBufferedOperationsDelayId']),this['_sendBufferedOperationsDelayId']=setTimeout(()=>{this['_sendBufferedOperations']()['then'](_0x1b1719=>{_0x1b1719&&(this['_clearPendingAction'](),this['_isPendingUpdate']=!0x1);})['catch'](_0xeb5bc6=>{if(this['_clearPendingAction'](),this['_isPendingUpdate']=!0x1,!function(_0x2c1e2b){return _0x2c1e2b['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x2c1e2b['message']['startsWith']('cloud-services-internal-error:\x20Collaborative\x20Editing\x20Service\x20is\x20not\x20connected.')||_0x2c1e2b['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}(_0xeb5bc6))throw _0xeb5bc6;});},this['_currentBufferDelay']));}['_waitUntilSynced'](){return new Promise(_0x1438e2=>{this['on']('change:_isPendingUpdate',()=>{_0x1438e2();});});}async['_sendBufferedOperations'](){const _0x5d318a=this['editor']['plugins']['get'](E);if(this['_shouldSendSelectionUpdate']()&&(_0x5d318a['createUserMarkerOperations'](),this['_hasSelectionChanged']=!0x1),!this['_shouldSendUpdate']())return!0x0;const _0x4d35ec=[...this['_bufferedOperations']];for(const _0x4d5734 of _0x4d35ec)_0x4d5734['wasUndone']=this['_document']['history']['isUndoneOperation'](_0x4d5734);const _0xe3e39a=this['_operationIdentifier']['getIdOfTheLastOperation'](_0x4d35ec),_0x5b7896=F++,_0x222628=this['_compressOperations'](_0x4d35ec),_0x2e644a=await this['_service']['sendOperations'](_0x222628,_0x222628['baseVersion'],_0xe3e39a);try{return await this['_handleServerResponse'](_0x4d35ec,_0x2e644a,_0x5b7896);}catch(_0x1dbb5b){return this['_crash']('realtimecollaborationclient-sendbufferedoperations',_0x1dbb5b);}}async['_handleServerResponse'](_0x1af790,_0x5d8ee7,_0x4aaf88){if('error'in _0x5d8ee7)throw _0x5d8ee7['error'];let _0x371768=!0x1;if(_0x5d8ee7['wereChangesApplied']){_0x5d8ee7['lastOperationId']&&(this['_lastSyncedOperationId']=_0x5d8ee7['lastOperationId']),this['_bufferedOperations']=this['_bufferedOperations']['filter'](_0x1d291f=>!_0x1af790['includes'](_0x1d291f));for(const _0x5ca39b of _0x1af790)_0x5ca39b['createdAt']='lastOperationAcceptedAt'in _0x5d8ee7&&_0x5d8ee7['lastOperationAcceptedAt']||void 0x0;q(_0x1af790,_0x5d8ee7['version']-_0x1af790['length']),this['_updateServerHistory'](_0x1af790);const _0x41b979=_0x1af790['filter'](_0xd43fd=>{if(!_0xd43fd['_isInit'])return!0x1;const _0x3bd6e5=this['_getAffectedRoot'](_0xd43fd);return _0x3bd6e5&&!this['_knownRootNames']['has'](_0x3bd6e5);});q(_0x41b979,this['_document']['version']),this['_applyOperationsSet'](_0x41b979),_0x371768=!0x0,this['_currentBufferDelay']=this['_baseBufferDelay'];}else{const _0x2ecaa4=this['_decompressOperations'](_0x5d8ee7['data'],_0x5d8ee7['metadata'])['filter'](_0x996ed3=>_0x996ed3['baseVersion']>=this['_lastServerVersion']);_0x2ecaa4['forEach'](_0x2f1fca=>this['_addKnownRoot'](_0x2f1fca)),this['_bufferedOperations']=this['_bufferedOperations']['filter'](_0x5affbb=>!_0x5affbb['_isInit']||!this['_knownRootNames']['has'](this['_getAffectedRoot'](_0x5affbb))),this['_bufferedOperations']['length']&&q(this['_bufferedOperations'],this['_bufferedOperations'][0x0]['baseVersion']),await this['_fetchMissingUsers'](_0x2ecaa4),_0x371768=this['_handleExternalOperations'](_0x2ecaa4,_0x5d8ee7['version'],_0x5d8ee7['lastOperationId']),this['_currentBufferDelay']=Math['round'](this['_currentBufferDelay']/0x2);}return _0x371768?!this['_shouldSendUpdate']()||(this['_sendBufferedOperationsDelayed'](!0x0),!0x1):this['_crash']('realtimecollaborationclient-handleserverresponse');}['_handleExternalOperations'](_0x271259,_0x3dc754,_0xe0c394){try{const _0x2e9966={'document':this['_document'],'useRelations':!0x1,'padWithNoOps':!0x0},{operationsA:_0x112c51,operationsB:_0x4e9993,originalOperations:_0x40ab3b}=_0x20f488(_0x271259,this['_bufferedOperations'],_0x2e9966);q(_0x112c51,this['_document']['version']),q(_0x4e9993,_0x3dc754);for(const _0x1b5488 of _0x112c51){const _0x4ed146=_0x40ab3b['get'](_0x1b5488);_0x1b5488['_authorId']=_0x4ed146?_0x4ed146['_authorId']:null;}_0xe0c394&&(this['_operationIdentifier']['setIdForTheLastOperation'](_0x271259,_0xe0c394),this['_lastSyncedOperationId']=_0xe0c394),this['_bufferedOperations']=[..._0x4e9993],this['_applyOperationsSet'](_0x112c51),this['_updateServerHistory'](_0x271259);}catch(_0x9f7e1e){return console['error'](_0x9f7e1e),!0x1;}return!0x0;}['_applyOperationsSet'](_0x7ef5ca,_0x253f1a=!0x1){this['editor']['model']['enqueueChange']({'isUndoable':!0x1,'isLocal':!0x1},_0x4057ac=>{for(const _0x513892 of _0x7ef5ca)this['_knownOperations']['add'](_0x513892),this['_addKnownRoot'](_0x513892),_0x4057ac['batch']['addOperation'](_0x513892),this['editor']['model']['applyOperation'](_0x513892);});}['_addKnownRoot'](_0x5ebfda){const _0x3a6a99=this['_getAffectedRoot'](_0x5ebfda);_0x3a6a99&&this['_knownRootNames']['add'](_0x3a6a99);}['_getAffectedRoot'](_0x2bd812){let _0x345f29,_0x1cb856;switch(_0x2bd812['type']){case'insert':_0x345f29=_0x2bd812['position']['root'];break;case'marker':if(_0x1cb856=_0x2bd812['newRange'],!_0x1cb856)return null;_0x345f29=_0x1cb856['root'];break;case'addRootAttribute':_0x345f29=_0x2bd812['root'];break;case'addRoot':_0x345f29=_0x2bd812['affectedSelectable'];break;case'move':_0x345f29=_0x2bd812['targetPosition']['root'];break;default:return null;}return _0x345f29['rootName'];}['_updateServerHistory'](_0x574e1c){_0x574e1c['forEach'](_0x5a9820=>{const _0x26dcd5=_0x5a9820['clone']();_0x26dcd5['_authorId']=_0x5a9820['_authorId'],_0x26dcd5['_isInit']=!!_0x5a9820['_isInit'],_0x26dcd5['createdAt']=_0x5a9820['createdAt'],_0x26dcd5['baseVersion']+=this['_offset'],_0x5a9820['_isDisconnection']&&this['_disconnectionOperations']['add'](_0x26dcd5),this['serverHistory']['addOperation'](_0x26dcd5);});}['_handleReconnectionError'](_0x2ddc54){const _0x5bf66c=this['editor']['plugins']['get']('Notification'),_0x1fafe0=this['editor']['locale'];_0x2ddc54||(_0x2ddc54=B(_0x1fafe0,'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.')),_0x5bf66c['showWarning'](_0x2ddc54,{'title':B(_0x1fafe0,'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'](_0x4f978d)['add'](B(this['editor']['locale'],'PENDING_ACTION_SENDING_DATA')));}['_clearPendingAction'](){this['_pendingAction']&&(this['editor']['plugins']['get'](_0x4f978d)['remove'](this['_pendingAction']),this['_pendingAction']=null);}['_compressOperations'](_0x4a6a11){const _0x4bf3a8=_0x4a6a11['map'](_0x46d129=>_0x46d129['toJSON']());return this['_compressor']['compress'](_0x4bf3a8);}['_decompressOperations'](_0x308e1f,_0x445bec){return this['_compressor']['decompress'](_0x308e1f)['map']((_0x84a9c9,_0x505850)=>{const _0x4e131c='init'==_0x445bec[_0x505850]['type'];if('InsertOperation'==_0x84a9c9['__className']){const _0x2504ad=_0x84a9c9['position']['root'];!this['_document']['getRoot'](_0x2504ad)&&(this['_document']['createRoot']('$root',_0x2504ad)['_isAttached']=!0x1);}const _0x520517=_0x1771b0['fromJSON'](_0x84a9c9,this['_document']);return _0x520517['wasUndone']=_0x84a9c9['wasUndone'],_0x520517['_isInit']=_0x4e131c,_0x520517['_authorId']=_0x4e131c?null:_0x445bec[_0x505850]['userId'],_0x520517['_isDisconnection']='cs:removeUser'===_0x445bec[_0x505850]['type'],_0x520517['createdAt']=_0x445bec[_0x505850]['createdAt'],_0x520517;});}['_refreshUserSelectionMarkers'](){this['_hasSelectionChanged']=!0x0,this['_shouldSendSelectionUpdate']()?this['_sendBufferedOperationsDelayed']():this['_hasSelectionChanged']=!0x1;}['_shouldSendSelectionUpdate'](){const _0x2ad943=this['editor']['plugins']['get'](r)['channelSessions']['get'](this['_channelId']);return!this['editor']['isReadOnly']&&!!_0x2ad943&&_0x2ad943['length']>0x1&&this['_hasSelectionChanged'];}['_shouldSendUpdate'](){return this['_bufferedOperations']['length']>0x0||this['_shouldSendSelectionUpdate']();}}class H extends Error{}function q(_0xf8a109,_0x141017){for(const _0x5bbebc of _0xf8a109)_0x5bbebc['baseVersion']=_0x141017++;}class G{['_ignoredOperations'];['_operationToId'];constructor(_0x244b9e){this['_ignoredOperations']=_0x244b9e,this['_operationToId']=new WeakMap();}['getIdOfTheLastOperation'](_0x14c15d){let _0x6c7992=_0x14c15d['length'];for(;_0x6c7992--;){const _0x561e83=_0x14c15d[_0x6c7992];if(!this['_ignoredOperations']['has'](_0x561e83)){if(!this['_operationToId']['has'](_0x561e83)){const _0x3857f9=_0x33d4d9()['slice'](0x1,0x12);this['_operationToId']['set'](_0x561e83,_0x3857f9);}return this['_operationToId']['get'](_0x561e83);}}}['setIdForTheLastOperation'](_0x176295,_0x6cdf54){if(!_0x6cdf54)return;let _0x2145a1=_0x176295['length'];for(;_0x2145a1--;){const _0x4c9ab6=_0x176295[_0x2145a1];this['_ignoredOperations']['has'](_0x4c9ab6)||this['_operationToId']['set'](_0x4c9ab6,_0x6cdf54);}}}class n extends _0x376faf{static get['requires'](){return[l];}static get['pluginName'](){return'RealTimeCollaborativeEditing';}}class a extends _0x18fa55{static ['CommentsService']=/* #__PURE__ -- @preserve */
|
|
26
|
+
((()=>tt)());['_services'];static get['requires'](){return[c,'CommentsRepository',r,_0x4cfeb8];}static get['pluginName'](){return'CloudServicesCommentsAdapter';}constructor(_0x34e7db){super(_0x34e7db),this['_services']=new Map();}async['init'](){const _0x4b6a53=this['context'],_0x51427e=_0x4b6a53['plugins']['get']('CommentsRepository');if(_0x4b6a53['plugins']['get'](c)['addToReconnectionStack'](this),_0x51427e['adapter']={'addCommentThread':async({channelId:_0x4ee5ec,threadId:_0x227a40,comments:_0x297bd8,resolvedAt:_0x447fb0,resolvedBy:_0x4228e9,context:_0x189af0,attributes:_0x50894a})=>{const _0x1bef0c=await this['_getService'](_0x4ee5ec)['addCommentThread']({'commentThreadId':_0x227a40,'comments':_0x297bd8['map'](_0x56ced5=>function(_0x42ddce,_0x18c869,_0x4b32f6){return{'commentThreadId':_0x4b32f6,'commentId':_0x42ddce['commentId'],'userId':_0x42ddce['authorId'],'content':_0x42ddce['content'],'documentId':_0x18c869,'createdAt':_0x42ddce['createdAt'],'attributes':_0x42ddce['attributes']||{}};}(_0x56ced5,_0x4ee5ec,_0x227a40)),'resolvedAt':_0x447fb0,'resolvedBy':_0x4228e9,'context':_0x189af0,'attributes':_0x50894a})['catch'](wt);return{'threadId':_0x1bef0c['commentThreadId'],'comments':_0x1bef0c['comments']};},'getCommentThread':async({channelId:_0x1839e1,threadId:_0x36dba4})=>{const _0x33e785=await this['_getService'](_0x1839e1)['getCommentThread'](_0x36dba4)['catch'](wt);return _0x33e785['deletedAt']?null:(await this['_fetchMissingUsersForThreads']([_0x33e785]),{'threadId':_0x33e785['commentThreadId'],'comments':_0x33e785['comments']['map'](nt),'context':_0x33e785['context'],'resolvedAt':_0x33e785['resolvedAt'],'resolvedBy':_0x33e785['resolvedBy'],'attributes':_0x33e785['attributes']||{}});},'updateCommentThread':async({channelId:_0x567a69,threadId:_0x117f75,context:_0x699c46,unlinkedAt:_0x2aae8d,attributes:_0x5b9bfc})=>this['_getService'](_0x567a69)['updateCommentThread']({'commentThreadId':_0x117f75,'context':_0x699c46,'attributes':_0x5b9bfc,'unlinkedAt':_0x2aae8d})['catch'](et)['catch'](wt),'resolveCommentThread':async({channelId:_0x32d764,threadId:_0x3b008c})=>{const _0x3a5c79=await this['_getService'](_0x32d764)['resolveCommentThread'](_0x3b008c)['catch'](et)['catch'](wt);return{'threadId':_0x3a5c79['commentThreadId'],'resolvedAt':_0x3a5c79['resolvedAt'],'resolvedBy':_0x3a5c79['resolvedBy']};},'reopenCommentThread':async({channelId:_0x406879,threadId:_0x178cb0})=>this['_getService'](_0x406879)['reopenCommentThread'](_0x178cb0)['catch'](et)['catch'](wt),'removeCommentThread':({channelId:_0x5ac1a5,threadId:_0x3c8bb9})=>this['_getService'](_0x5ac1a5)['removeCommentThread'](_0x3c8bb9)['catch'](et)['catch'](wt),'addComment':({channelId:_0x548088,threadId:_0x37347c,commentId:_0x5243f5,content:_0x31c7e7,attributes:_0x3b9fa6})=>this['_getService'](_0x548088)['addComment'](_0x37347c,_0x5243f5,_0x31c7e7,_0x3b9fa6)['catch'](wt),'updateComment':({channelId:_0x5d2b2f,threadId:_0x4a8bd0,commentId:_0x1b26d6,content:_0x42b170,attributes:_0x10eb7d})=>this['_getService'](_0x5d2b2f)['updateComment'](_0x4a8bd0,_0x1b26d6,_0x42b170,_0x10eb7d)['catch'](et)['catch'](wt),'removeComment':({channelId:_0x2e6358,threadId:_0x2f1b0c,commentId:_0x247f57})=>this['_getService'](_0x2e6358)['removeComment'](_0x2f1b0c,_0x247f57)['catch'](et)['catch'](wt)},_0x4b6a53 instanceof _0x23ad8d){const _0x3c92e6=_0x4b6a53['config']['get']('collaboration.channelId'),_0x14996e=_0x4b6a53['plugins']['get'](r);await this['_setUpService'](_0x3c92e6);const _0x44fa84=await this['_services']['get'](_0x3c92e6)['getConnectedSessions']();this['listenTo'](_0x14996e,'sessionAdd:'+_0x3c92e6,(_0x6f19a8,{session:_0x493d02})=>{_0x493d02['id']===_0x14996e['mySessionId']&&(_0x6f19a8['off'](),this['context']['plugins']['get']('Permissions')['setPermissions'](_0x493d02['permissions'],_0x3c92e6));}),_0x14996e['register'](_0x3c92e6,_0x44fa84);}}async['_setUpService'](_0x2c4190){if(this['_services']['has'](_0x2c4190))throw new _0x227598('cloudservicescommentsadapter-connect-already-connected',null,{'channelId':_0x2c4190});const _0x1ae199=this['context']['plugins']['get']('CommentsRepository'),_0x27acbd=new a['CommentsService'](_0x2c4190);this['_services']['set'](_0x2c4190,_0x27acbd),this['listenTo'](_0x27acbd,'commentThreadAdded',(_0x54b9e9,_0xe0763a)=>{const {commentThreadId:_0x38bece,documentId:_0x248a36,context:_0x57bc07,attributes:_0x9eba71,resolvedAt:_0x17debe,resolvedBy:_0x58294c,comments:_0x198f9c}=_0xe0763a;_0x1ae199['getCommentThread'](_0x38bece)||_0x1ae199['addCommentThread']({'threadId':_0x38bece,'channelId':_0x248a36,'comments':_0x198f9c?_0x198f9c['map'](nt):[],'context':_0x57bc07,'attributes':_0x9eba71,'resolvedAt':_0x17debe,'resolvedBy':_0x58294c,'isFromAdapter':!0x0});}),this['listenTo'](_0x27acbd,'commentThreadUpdated',(_0x2b5447,{commentThreadId:_0x35a5d7,documentId:_0x169f54,context:_0x55103d,unlinkedAt:_0x1cce18,attributes:_0x470712})=>{_0x1ae199['getCommentThread'](_0x35a5d7)&&_0x1ae199['updateCommentThread']({'threadId':_0x35a5d7,'channelId':_0x169f54,'context':_0x55103d,'unlinkedAt':_0x1cce18,'attributes':_0x470712,'isFromAdapter':!0x0});}),this['listenTo'](_0x27acbd,'commentThreadResolved',(_0x180e26,{commentThreadId:_0x4996fe,resolvedBy:_0x34a949,resolvedAt:_0x35e8ee})=>{const _0x2e3426=_0x1ae199['getCommentThread'](_0x4996fe);_0x2e3426&&_0x2e3426['resolve']({'resolvedBy':_0x34a949,'resolvedAt':_0x35e8ee,'isFromAdapter':!0x0});}),this['listenTo'](_0x27acbd,'commentThreadReopened',(_0x3ed4d5,{commentThreadId:_0x5ec0cc})=>{const _0x1793f3=_0x1ae199['getCommentThread'](_0x5ec0cc);_0x1793f3&&_0x1793f3['reopen']({'isFromAdapter':!0x0});}),this['listenTo'](_0x27acbd,'commentThreadRemoved',(_0x400687,{commentThreadId:_0x38a584})=>{const _0x2e876c=_0x1ae199['getCommentThread'](_0x38a584);_0x2e876c&&_0x2e876c['remove']({'isFromAdapter':!0x0});}),this['listenTo'](_0x27acbd,'commentAdded',(_0x4227e9,_0x40d1f0)=>{const _0x2c1a47=_0x40d1f0['commentThreadId'],_0x41c95c=_0x1ae199['getCommentThread'](_0x2c1a47);_0x41c95c&&_0x41c95c['addComment']({...nt(_0x40d1f0),'isFromAdapter':!0x0});}),this['listenTo'](_0x27acbd,'commentUpdated',(_0x52b919,{commentThreadId:_0x285427,commentId:_0x581a06,content:_0x1339cf,attributes:_0x5f1596})=>{const _0x2cbb11=_0x1ae199['getCommentThread'](_0x285427);if(_0x2cbb11){const _0x2fa4b4=_0x2cbb11['getComment'](_0x581a06);_0x2fa4b4&&_0x2fa4b4['update']({'content':_0x1339cf,'attributes':_0x5f1596,'isFromAdapter':!0x0});}}),this['listenTo'](_0x27acbd,'commentRemoved',(_0x595cd5,{commentThreadId:_0x513360,commentId:_0x1179c8})=>{const _0x6b249a=_0x1ae199['getCommentThread'](_0x513360);if(_0x6b249a){const _0x211ee2=_0x6b249a['getComment'](_0x1179c8);_0x211ee2&&_0x211ee2['remove']({'isFromAdapter':!0x0});}}),await this['_connectService'](_0x2c4190);}['destroy'](){if(this['context']instanceof _0x23ad8d){const _0x351db5=this['context']['config']['get']('collaboration.channelId');this['_terminateService'](_0x351db5);}}['_terminateService'](_0x506ffa){if(!this['_services']['has'](_0x506ffa))throw new _0x227598('cloudservicescommentsadapter-disconnect-not-exist',null,{'channelId':_0x506ffa});this['_getService'](_0x506ffa)['disconnect'](),this['_services']['delete'](_0x506ffa);}async['reconnect'](){for(const _0x5d47bf of this['_services']['keys']())await this['_connectService'](_0x5d47bf);if(this['context']instanceof _0x23ad8d){const _0x4cd005=this['context']['config']['get']('collaboration.channelId'),_0x333762=this['context']['plugins']['get'](r);_0x333762['unregister'](_0x4cd005);const _0x5a129a=await this['_services']['get'](_0x4cd005)['getConnectedSessions']();_0x333762['register'](_0x4cd005,_0x5a129a);}}async['_connectService'](_0x170d62){const {connection:_0x5261f3}=this['context']['plugins']['get'](c),_0x5bb6b2=this['context']['plugins']['get']('CommentsRepository'),_0x37c6d1=this['_services']['get'](_0x170d62),_0x5d8da9=await _0x37c6d1['connect'](_0x5261f3);await this['_fetchMissingUsersForThreads'](_0x5d8da9);const _0x12592d=new Set(Array['from'](_0x5bb6b2['getCommentThreads']({'channelId':_0x170d62}),_0x13be4b=>_0x13be4b['id']));for(const _0x26828b of _0x5d8da9)_0x26828b['deletedAt']||_0x12592d['delete'](_0x26828b['commentThreadId']);for(const _0x1993e4 of _0x12592d)_0x5bb6b2['getCommentThread'](_0x1993e4)['remove']({'isFromAdapter':!0x0});for(const _0x3c8e6e of _0x5d8da9){let _0x3b9539=_0x5bb6b2['getCommentThread'](_0x3c8e6e['commentThreadId']);const {commentThreadId:_0x489851,context:_0x54b006,attributes:_0x4e8f32,resolvedBy:_0x8b8aa0,resolvedAt:_0x596964,unlinkedAt:_0x51f696,deletedAt:_0x2836e2}=_0x3c8e6e;if(_0x2836e2)continue;_0x3b9539||(_0x3b9539=_0x5bb6b2['addCommentThread']({'channelId':_0x170d62,'threadId':_0x489851,'context':_0x54b006,'attributes':_0x4e8f32||{},'resolvedBy':_0x8b8aa0,'resolvedAt':_0x596964,'unlinkedAt':_0x51f696,'isFromAdapter':!0x0}));const _0x22a33f=new Set(Array['from'](_0x3b9539['comments'],_0xae08a=>_0xae08a['id']));for(const _0x518d54 of _0x3c8e6e['comments'])_0x22a33f['delete'](_0x518d54['commentId']);for(const _0x331992 of _0x22a33f)_0x3b9539['getComment'](_0x331992)['remove']({'isFromAdapter':!0x0});for(const _0x74b47 of _0x3c8e6e['comments']){const _0x29743c=_0x3b9539['getComment'](_0x74b47['commentId']);_0x29743c?_0x29743c['content']!==_0x74b47['content']&&_0x29743c['update']({'content':_0x74b47['content'],'isFromAdapter':!0x0}):_0x3b9539['addComment'](Object['assign'](nt(_0x74b47),{'isFromAdapter':!0x0}));}}}['_getService'](_0x32b6ad){if(!this['_services']['has'](_0x32b6ad))throw new _0x227598('cloudservicescommentsadapter-service-not-exist',null,{'channelId':_0x32b6ad});return this['_services']['get'](_0x32b6ad);}async['_fetchMissingUsersForThreads'](_0x1078cf){const _0x3c4e18=this['context']['plugins']['get'](_0x4cfeb8),{connection:_0x272c53}=this['context']['plugins']['get'](c),_0x3a393c=new Set();for(const {resolvedBy:_0x5f387a,comments:_0x335d3a}of _0x1078cf){_0x5f387a&&!_0x3c4e18['getUser'](_0x5f387a)&&_0x3a393c['add'](_0x5f387a);for(const {userId:_0x575de8}of _0x335d3a)_0x3c4e18['getUser'](_0x575de8)||_0x3a393c['add'](_0x575de8);}if(0x0===_0x3a393c['size'])return;const _0x38c8cb=await mt['getMany'](_0x272c53,Array['from'](_0x3a393c));for(const _0x2f4563 of _0x38c8cb)_0x3c4e18['getUser'](_0x2f4563['id'])||_0x3c4e18['addUser'](_0x2f4563);}}async function et(_0x327dd2){if('404'!==_0x327dd2['code'])throw _0x327dd2;}function wt(_0x1db815){if((_0x457822=_0x1db815)['message']['startsWith']('cloud-services-internal-error:\x20Comments\x20Service\x20is\x20not\x20connected.')||_0x457822['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x457822['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.'))return new Promise(()=>{});var _0x457822;throw _0x1db815;}function nt(_0x2675e9){return{'threadId':_0x2675e9['commentThreadId'],'commentId':_0x2675e9['commentId'],'content':_0x2675e9['content'],'createdAt':_0x2675e9['createdAt'],'authorId':_0x2675e9['userId'],'attributes':_0x2675e9['attributes']||{}};}class g extends _0x376faf{static ['TrackChangesService']=/* #__PURE__ -- @preserve */
|
|
27
|
+
((()=>at)());['_bufferedRequests'];['_trackChangesService'];static get['requires'](){return[a,'TrackChangesEditing',c];}constructor(_0x48c614){super(_0x48c614);const _0x26aa0f=this['editor']['config']['get']('collaboration.channelId');this['_bufferedRequests']=new Map(),this['_trackChangesService']=new g['TrackChangesService'](_0x26aa0f);}['init'](){const _0x1d0828=this['editor']['plugins']['get'](c),_0x15dab7=this['editor']['plugins']['get']('TrackChangesEditing');return _0x15dab7['adapter']={'getSuggestion':async _0x5ab9ea=>{await this['_waitForServiceReady']();const _0x1b8899=await this['_trackChangesService']['get'](_0x5ab9ea)['catch'](ot);return await this['_fetchMissingUsersForThreads']([_0x1b8899]),_0x1b8899;},'addSuggestion':async({id:_0x426bea,type:_0x365cba,data:_0x546ec5,originalSuggestionId:_0x4df1d9,attributes:_0x573ca0})=>{await this['_waitForServiceReady']();const _0x53a8da={'id':_0x426bea,'type':_0x365cba,'data':_0x546ec5,'originalSuggestionId':_0x4df1d9,'attributes':_0x573ca0},_0x4a15bf=await this['_trackChangesService']['add'](_0x426bea,_0x365cba,_0x546ec5,_0x4df1d9,_0x573ca0)['catch'](_0x433498=>{if(gt(_0x433498))return new Promise(_0x43299d=>{this['_bufferedRequests']['set'](_0x426bea,{'resolve':_0x43299d,'suggestionData':_0x53a8da});});throw _0x433498;});return this['_bufferedRequests']['delete'](_0x426bea),_0x4a15bf;},'updateSuggestion':async(_0x5797f5,_0x29b5be)=>{if(await this['_waitForServiceReady'](),'open'!==_0x29b5be['state'])return this['_trackChangesService']['update'](_0x5797f5,_0x29b5be)['catch'](ot);}},this['listenTo'](this['_trackChangesService'],'suggestionUpdated',(_0x3f027d,_0x43dd52)=>{_0x15dab7['hasSuggestion'](_0x43dd52['id'])&&(_0x15dab7['getSuggestion'](_0x43dd52['id'])['attributes']=_0x43dd52['attributes']);}),this['_trackChangesService']['connect'](_0x1d0828['connection'])['then'](_0x3b807e=>(_0x1d0828['addToReconnectionStack'](this),this['_fetchMissingUsersForThreads'](_0x3b807e)['then'](()=>{for(const _0x2b2e6c of _0x3b807e){_0x15dab7['addSuggestionData'](_0x2b2e6c)['_saved']=!0x0;}})));}async['reconnect'](){const _0x49d7c3=this['editor']['plugins']['get']('TrackChangesEditing'),{connection:_0x52232e}=this['editor']['plugins']['get'](c),_0x16dbda=await this['_trackChangesService']['connect'](_0x52232e);await this['_fetchMissingUsersForThreads'](_0x16dbda);for(const {suggestionData:_0xd2ffb6,resolve:_0x34a8d7}of this['_bufferedRequests']['values']()){let _0x439837=_0x16dbda['find'](_0x45c8a9=>_0x45c8a9['id']===_0xd2ffb6['id']);_0x439837||(_0x439837=await this['_trackChangesService']['add'](_0xd2ffb6['id'],_0xd2ffb6['type'],_0xd2ffb6['data'],_0xd2ffb6['originalSuggestionId'])),_0x34a8d7(_0x439837);}for(const _0x49cdcd of _0x16dbda)_0x49d7c3['hasSuggestion'](_0x49cdcd['id'])||_0x49d7c3['addSuggestionData'](_0x49cdcd);}async['_waitForServiceReady'](){this['_trackChangesService']['isConnected']||await new Promise(_0x5a90d9=>{this['listenTo'](this['_trackChangesService'],'connected',_0x2602f3=>{_0x2602f3['off'](),_0x5a90d9();});});}async['_fetchMissingUsersForThreads'](_0x438ff8){const _0x17fe6a=this['editor']['plugins']['get'](_0x4cfeb8),{connection:_0x431932}=this['editor']['plugins']['get'](c),_0x512f73=new Set();for(const {authorId:_0x4dc7ba}of _0x438ff8)_0x17fe6a['getUser'](_0x4dc7ba)||_0x512f73['add'](_0x4dc7ba);if(0x0===_0x512f73['size'])return;const _0x47273a=await mt['getMany'](_0x431932,Array['from'](_0x512f73));for(const _0x2431cd of _0x47273a)_0x17fe6a['getUser'](_0x2431cd['id'])||_0x17fe6a['addUser'](_0x2431cd);}}function ot(_0x48e573){if(gt(_0x48e573))return new Promise(()=>{});throw _0x48e573;}function gt(_0x412ff5){return _0x412ff5['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x412ff5['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}class m extends _0x376faf{static get['requires'](){return['Comments',a,n,c];}static get['pluginName'](){return'RealTimeCollaborativeComments';}['init'](){const _0x533779=this['editor']['plugins']['get'](c),_0x496b9a=this['editor']['plugins']['get']('CommentsEditing'),_0x563f36=this['editor']['plugins']['get'](a);return this['editor']['data']['once']('ready',()=>{this['listenTo'](_0x533779,'change:state',(_0x43b646,_0x5bac7c,_0x3bd38b)=>{_0x496b9a['isThreadsLoadingPaused']='connected'!==_0x3bd38b;});}),this['listenTo'](_0x533779,'change:state',(_0x6ab3f3,_0x5d9092,_0x148ba9)=>{this['editor']['plugins']['get']('CommentsRepository')['switchReadOnly']('connected'!==_0x148ba9);}),_0x563f36['_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 _0x376faf{static get['requires'](){return[m,g,'TrackChanges'];}static get['pluginName'](){return'RealTimeCollaborativeTrackChanges';}}class v extends _0x376faf{static ['RevisionHistoryService']=/* #__PURE__ -- @preserve */
|
|
28
|
+
((()=>st)());['_lastRequestId'];['_revisionTracker'];['_revisionHistoryService'];['_oldOffset'];static get['requires'](){return[c,l,'RevisionTracker',r,_0x4cfeb8];}constructor(_0x4dc208){super(_0x4dc208);const _0x4bb0b4=this['editor']['config']['get']('collaboration.channelId');this['_lastRequestId']=null,this['_revisionTracker']=this['editor']['plugins']['get']('RevisionTracker'),this['_revisionHistoryService']=new v['RevisionHistoryService'](_0x4bb0b4);}async['init'](){const _0x2cd421=this['editor']['plugins']['get'](l),_0x184ce5=_0x2cd421['serverHistory'],_0x4d134e=this['editor']['plugins']['get'](c);this['_revisionTracker']['setSource']({'history':_0x184ce5,'getLatestVersion':()=>this['_getLatestVersion'](),'getCurrentRevisionId':()=>_0x2cd421['sessionId']});const _0x598eae=this['editor']['config']['get']('cloudServices.bundleVersion')||ht,_0xdcee39=await it['isBundleUploaded'](_0x4d134e['connection'],_0x598eae);this['_revisionTracker']['adapter']={'getRevision':async({revisionId:_0x317071})=>(await this['_waitForServiceReady'](),await this['_revisionHistoryService']['getRevision'](_0x317071)),'updateRevisions':async _0x18d01b=>{await this['_waitForServiceReady']();const _0x3d502f=this['_revisionTracker']['currentRevision'];if(_0xdcee39&&0x1===_0x18d01b['length']&&_0x18d01b[0x0]['id']===_0x3d502f['id'])return _0x18d01b;for(const _0x49ef94 of _0x18d01b)_0x49ef94['id']===_0x3d502f['id']&&(_0x49ef94['isEmptyCurrent']=_0x49ef94['fromVersion']===_0x49ef94['toVersion']);return this['_revisionHistoryService']['updateRevisions'](_0x18d01b,this['_lastRequestId'])['then'](_0x4a9ec3=>(this['_lastRequestId']=_0x4a9ec3,_0x18d01b))['catch'](_0x59ef2b=>{if(rt(_0x59ef2b)||'400'===_0x59ef2b['code']&&void 0x0!==_0x59ef2b['data']['wrongRequestId']){for(const _0x48eabb of _0x18d01b){!this['_revisionTracker']['repository']['getRevision'](_0x48eabb['id'])||this['_revisionTracker']['_bufferUpdate'](_0x48eabb['id'],_0x48eabb,!0x1);}if(rt(_0x59ef2b))throw _0x59ef2b;return _0x18d01b;}throw _0x59ef2b;});}},this['listenTo'](this['_revisionHistoryService'],'revisionsUpdated',(_0x3ba5f9,{revisionsData:_0xbcf3dc,requestId:_0x42f7b8})=>{Math['max'](..._0xbcf3dc['map'](_0x5ec05a=>_0x5ec05a['toVersion']))>this['_getLatestVersionFromServerOperations']()-0x1?this['_getLatestVersion']()['then'](()=>{this['_handleRevisionsUpdate'](_0xbcf3dc,_0x42f7b8);}):this['_handleRevisionsUpdate'](_0xbcf3dc,_0x42f7b8);});const {revisions:_0x2db3ef,requestId:_0xfa8de4}=await this['_revisionHistoryService']['connect'](_0x4d134e['connection']);_0x4d134e['addToReconnectionStack'](this),this['_lastRequestId']=_0xfa8de4,await this['_fetchMissingUsers'](_0x2db3ef);for(const _0x54cc6a of _0x2db3ef)this['_revisionTracker']['addRevisionData'](_0x54cc6a);this['listenTo'](_0x2cd421,'change:_isConnected',(_0x46ed67,_0x36ca19,_0x466984)=>{_0x466984&&(this['_oldOffset']=_0x2cd421['_offset'],_0x46ed67['off']());}),this['_revisionTracker']['bind']('isEnabled')['to'](_0x4d134e,'state',_0x28b186=>_0x28b186===_0x34e6a4['CONNECTED']);}async['reconnect'](){const _0x31eb2f=this['editor']['plugins']['get'](c),_0x4cb588=this['editor']['plugins']['get'](l),_0xf8993d=async()=>{const _0x268033=this['_revisionTracker']['currentRevision'],_0x145d7a=_0x268033['id'],_0x17f9b2=_0x145d7a!==_0x4cb588['sessionId'];if(_0x17f9b2){const _0x4d048d=_0x4cb588['_offset']-this['_oldOffset'],_0x16c16c=this['_getLatestVersionFromServerOperations']();this['_revisionTracker']['_revisionDataBuilder']['reInit']();if(_0x268033['toVersion']+_0x4d048d!==_0x16c16c){const _0x2f7006=_0x268033['fromVersion']+_0x4d048d,_0x22fd07=this['editor']['plugins']['get'](_0x4cfeb8),_0x2460b3=this['_revisionTracker']['buildRevisionData']({'revision':_0x268033,'from':_0x2f7006,'to':_0x16c16c});_0x2460b3['id']=_0x268033['id'];const _0x575391=_0x2460b3['authorsIds']['map'](_0x52aa52=>_0x22fd07['getUser'](_0x52aa52));_0x268033['_update']({..._0x2460b3,'authors':_0x575391},!0x0),this['_revisionTracker']['_bufferUpdate'](_0x268033['id'],_0x2460b3,!0x0);}this['_revisionTracker']['_startingVersion']=_0x16c16c,(_0x268033['toVersion']===_0x268033['fromVersion']&&!this['_revisionTracker']['_bufferedUpdates']['has'](_0x145d7a)&&this['_revisionTracker']['repository']['_revisions']['remove'](_0x145d7a),this['_revisionTracker']['_createCurrentRevision'](_0x16c16c));}const {revisions:_0x2e5f3a,requestId:_0x6c6c66}=await this['_revisionHistoryService']['reconnect'](_0x31eb2f['connection'],this['_lastRequestId']);_0x17f9b2&&_0x2e5f3a['length']>0x0?_0x4cb588['_handleReconnectionError']():(await this['_fetchMissingUsers'](_0x2e5f3a),this['_handleRevisionsUpdate'](_0x2e5f3a,_0x6c6c66),this['_revisionTracker']['sendBufferedUpdates']());};return _0x4cb588['_isConnected']?_0xf8993d():new Promise((_0xc3cf29,_0x2647d1)=>{_0x4cb588['once']('change:_isConnected',()=>{_0xf8993d()['then'](_0xc3cf29)['catch'](_0x2647d1);});});}['destroy'](){super['destroy']();}async['_waitForServiceReady'](){this['_revisionHistoryService']['isConnected']||await new Promise(_0x4ba9c4=>{this['listenTo'](this['_revisionHistoryService'],'connected',_0x2db16b=>{_0x2db16b['off'](),_0x4ba9c4();});});}['_getLatestVersionFromServerOperations'](){const _0x2ff770=this['editor']['plugins']['get'](l)['serverHistory']['getOperations']()['reverse']();for(const _0x2acfec of _0x2ff770)if('marker'!==_0x2acfec['type']||_0x2acfec['affectsData'])return _0x2acfec['baseVersion']+0x1;}['_getLatestVersion'](){const _0x1df283=this['editor']['plugins']['get'](l);return new Promise(_0x432332=>{_0x1df283['_isPendingUpdate']?_0x1df283['once']('change:_isPendingUpdate',()=>{_0x432332(this['_getLatestVersionFromServerOperations']());}):_0x432332(this['_getLatestVersionFromServerOperations']());});}['_handleRevisionsUpdate'](_0x4d5940,_0x331a1f){const _0xf68020=this['_revisionTracker']['repository'];this['_lastRequestId']=_0x331a1f;for(const _0x511711 of _0x4d5940){const _0x2113fd=_0xf68020['getRevision'](_0x511711['id']);if(_0x2113fd){if((_0x511711['fromVersion']||_0x511711['toVersion'])&&(_0x511711['diffData']=null),_0x2113fd===this['_revisionTracker']['currentRevision']){const _0x3fb6da=Math['max'](_0x2113fd['toVersion'],_0x511711['toVersion']),_0x16a2bd=Math['max'](_0x2113fd['fromVersion'],_0x511711['fromVersion']);let _0x29b81c;_0x2113fd['toVersion']===_0x511711['toVersion']&&_0x2113fd['fromVersion']===_0x511711['fromVersion']?(_0x29b81c=!0x0,this['_preventResendingRevisionData'](_0x511711)):_0x511711['toVersion']===_0x3fb6da&&_0x511711['fromVersion']===_0x16a2bd?_0x29b81c=!0x1:(_0x2113fd['toVersion']===_0x3fb6da&&_0x2113fd['fromVersion']===_0x16a2bd||this['_fixRevision']({'revision':_0x2113fd,'from':_0x16a2bd,'to':_0x3fb6da}),_0x29b81c=!0x0),_0x29b81c&&(delete _0x511711['fromVersion'],delete _0x511711['toVersion'],delete _0x511711['diffData'],delete _0x511711['createdAt'],delete _0x511711['authorsIds']);}this['_revisionTracker']['setRevisionData'](_0x511711),this['_preventResendingRevisionData'](_0x511711);}else this['_revisionTracker']['addRevisionData'](_0x511711);}const _0x4f4592=_0xf68020['getRevisions']();_0x4f4592['reverse']();for(let _0x36b529=0x0;_0x36b529<_0x4f4592['length']-0x1;_0x36b529++){const _0x105344=_0x4f4592[_0x36b529],_0x23903b=_0x4f4592[_0x36b529+0x1];if(_0x105344['fromVersion']<_0x23903b['toVersion']){const _0x442f2e=_0x23903b['toVersion'],_0x5a2d42=Math['max'](_0x442f2e,_0x105344['toVersion']);this['_fixRevision']({'revision':_0x105344,'from':_0x442f2e,'to':_0x5a2d42});}}}['_fixRevision']({revision:_0x14c44a,from:_0x16ec8b,to:_0x544d67}={}){const _0x48f211=this['editor']['plugins']['get'](_0x4cfeb8),_0x4bb566=this['_revisionTracker']['buildRevisionData']({'revision':_0x14c44a,'from':_0x16ec8b,'to':_0x544d67});_0x4bb566['authors']=_0x4bb566['authorsIds']['map'](_0x2c57d8=>_0x48f211['getUser'](_0x2c57d8)),_0x14c44a['_update'](_0x4bb566);}['_preventResendingRevisionData'](_0x4713f6){const _0x425fd4={};_0x425fd4['id']=_0x4713f6['id'];for(const _0x200214 of Object['keys'](_0x4713f6))'id'!==_0x200214&&(_0x425fd4[_0x200214]=void 0x0);this['_revisionTracker']['_bufferUpdate'](_0x425fd4['id'],_0x425fd4,!0x0);}async['_fetchMissingUsers'](_0x2b9511){const _0x439bdd=this['editor']['plugins']['get'](_0x4cfeb8),{connection:_0x57c1b6}=this['editor']['plugins']['get'](c),_0x11b938=new Set();for(const _0x3adbaa of _0x2b9511){for(const _0x4d9324 of _0x3adbaa['authorsIds'])_0x22b621(_0x4d9324);_0x3adbaa['creatorId']&&_0x22b621(_0x3adbaa['creatorId']);}if(0x0===_0x11b938['size'])return;const _0x117506=await mt['getMany'](_0x57c1b6,Array['from'](_0x11b938));for(const _0x5d3aaf of _0x117506)_0x439bdd['getUser'](_0x5d3aaf['id'])||_0x439bdd['addUser'](_0x5d3aaf);function _0x22b621(_0x54fba3){_0x439bdd['getUser'](_0x54fba3)||_0x11b938['add'](_0x54fba3);}}}function rt(_0x27e7dc){return _0x27e7dc['message']['startsWith']('cloud-services-internal-error:\x20Revision\x20History\x20Service\x20is\x20not\x20connected.')||_0x27e7dc['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x27e7dc['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}class d extends _0x376faf{static get['requires'](){return['RevisionHistory',v,n];}static get['pluginName'](){return'RealTimeCollaborativeRevisionHistory';}}class ts extends _0x32bc9a{constructor(_0x89c00b){super(_0x89c00b);const _0x5da0d8=this['bindTemplate'];this['set']('usersCount',0x0),this['set']('isHidden',!0x0),this['setTemplate']({'tag':'div','attributes':{'class':['ck','ck-presence-list__counter',_0x5da0d8['if']('isHidden','ck-presence-list__counter--hidden')]},'children':[{'text':_0x5da0d8['to']('usersCount',_0x490310=>B(_0x89c00b,'CONNECTED_USERS',_0x490310))}]});}}class es extends _0x32bc9a{['items'];['keystrokes'];constructor(_0x2ca9af){super(_0x2ca9af);const _0x5bce8b=this['bindTemplate'];this['items']=this['createCollection'](),this['keystrokes']=new _0x2d38fb(),this['set']({'hasPopup':!0x1,'isExpanded':!0x1}),this['setTemplate']({'tag':'div','attributes':{'aria-haspopup':_0x5bce8b['if']('hasPopup'),'aria-expanded':_0x5bce8b['to']('isExpanded',_0x382748=>this['hasPopup']&&String(_0x382748)),'aria-label':_0x5bce8b['to']('hasPopup',_0x5b88d1=>B(_0x2ca9af,_0x5b88d1?'Collapsed\x20connected\x20users\x20list\x20(press\x20ENTER\x20to\x20open\x20it)':'Connected\x20users\x20list')),'role':'list','tabindex':_0x5bce8b['to']('hasPopup',_0x1ce2ed=>!!_0x1ce2ed&&0x0),'class':['ck','ck-presence-list__list']},'children':this['items'],'on':{'click':_0x5bce8b['to'](()=>this['fire']('execute'))}}),this['on']('change:hasPopup',(_0x54a253,_0x4970ea,_0x42c382)=>{this['element']&&(_0x42c382?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 _0x32bc9a{['counterView'];['inlineListView'];constructor(_0x30aa31){super(_0x30aa31);const _0xe89b2e=this['bindTemplate'];this['set']('isCollapsed',!0x0),this['counterView']=new ts(this['locale']),this['inlineListView']=new es(_0x30aa31),this['inlineListView']['bind']('hasPopup')['to'](this,'isCollapsed'),this['listenTo'](this['inlineListView']['items'],'change',()=>{for(const _0x523637 of this['inlineListView']['items'])_0x523637['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',_0xe89b2e['if']('isCollapsed','ck-presence-list--collapsed')]},'children':[this['counterView'],this['inlineListView']]});}}class j extends _0x32bc9a{['listWrapperView'];constructor(_0x4e9f97,_0x56f6c2){super(_0x4e9f97),this['listWrapperView']=new vt(_0x4e9f97,_0x56f6c2),this['setTemplate']({'tag':'div','attributes':{'tabindex':-0x1,'role':'application','class':['ck','ck-presence-list__dropdown-list'],'aria-label':B(_0x4e9f97,'Connected\x20users\x20list\x20dropdown\x20menu')},'children':[this['listWrapperView']]});}}class vt extends _0x27fe99{constructor(_0x1abaf4,_0x5e8ce9){super(_0x1abaf4);const _0x486ed9=this['bindTemplate'];this['set']('_isScrollable',!0x1),this['setTemplate']({'tag':_0x5e8ce9?'div':'ul','attributes':{'class':['ck','ck-reset','ck-list','ck-presence-list__dropdown-list-wrapper',_0x486ed9['if']('_isScrollable','ck-presence-list__dropdown-list-wrapper_scrollable')],'role':_0x486ed9['to']('role'),'aria-label':_0x486ed9['to']('ariaLabel'),'aria-labelledby':_0x486ed9['to']('ariaLabelledBy')},'children':this['items']}),this['listenTo'](_0x1420b4['window'],'resize',()=>this['checkIfScrollable']()),this['items']['on']('change',()=>this['checkIfScrollable']());}['render'](){super['render'](),this['checkIfScrollable']();}['checkIfScrollable'](){const _0x1a5bd0=this['element'];_0x1a5bd0&&(this['_isScrollable']=Math['max'](_0x1a5bd0['scrollHeight'],_0x1a5bd0['clientHeight'])>0.8*window['innerHeight']);}}class k extends ct{['userView'];constructor(_0x2dde89,_0x4bf5a7,_0x2d2345){super(_0x2dde89);const _0x1572dd=this['bindTemplate'];this['userView']=new lt(_0x2dde89,_0x4bf5a7);const _0x70e15b={'tag':'li','attributes':{'class':['ck','ck-presence-list__dropdown-list-item'],'tabindex':-0x1,'role':'presentation','aria-label':_0x4bf5a7['name']},'children':[this['userView'],{'tag':'span','attributes':{'class':['ck','ck-user__full-name']},'children':[{'text':_0x4bf5a7['name']}]},{'tag':'span','attributes':{'class':['ck','ck-presence-list__marker',_0x4bf5a7['color']['getBackgroundColorClass']()],'aria-hidden':'true'}}]};_0x2d2345&&(_0x70e15b['tag']='button',_0x70e15b['on']={'click':_0x1572dd['to'](()=>this['fire']('execute'))}),this['setTemplate'](_0x70e15b);}['focus'](){this['element']['focus']();}}class y extends _0x32bc9a{['userView'];['markerView'];constructor(_0x7961bc,_0x3b460b,_0x46b2c4){super(_0x7961bc);const _0x4f6ad5=this['bindTemplate'];this['set']('isFocusable',!0x1),this['set']('hasTooltip',!0x0),this['set']('tooltipPosition',''),this['userView']=new lt(_0x7961bc,_0x3b460b),this['markerView']=new dt(_0x7961bc,_0x3b460b);const _0x4f5994=new pt(_0x7961bc);_0x4f5994['template']['tag']='span',_0x4f5994['text']=_0x3b460b['name'];const _0xac13d4={'tag':'div','attributes':{'class':['ck','ck-presence-list__list-item'],'role':'listitem','tabindex':_0x4f6ad5['to']('isFocusable',_0x228600=>!!_0x228600&&0x0),'aria-labelledby':_0x4f5994['id'],'data-cke-tooltip-text':this['userView']['name'],'data-cke-tooltip-position':_0x4f6ad5['to']('tooltipPosition'),'data-cke-tooltip-disabled':_0x4f6ad5['to']('hasTooltip',_0x122fb0=>!_0x122fb0),'data-cke-tooltip-class':'ck-presence-list__list-item__tooltip'},'children':[this['userView'],this['markerView'],_0x4f5994]};_0x46b2c4&&(_0xac13d4['tag']='button',_0xac13d4['on']={'click':_0x4f6ad5['to'](()=>this['fire']('execute'))}),this['setTemplate'](_0xac13d4);}}class dt extends _0x32bc9a{constructor(_0x4b5afc,_0x19a293){super(_0x4b5afc),this['setTemplate']({'tag':'span','attributes':{'class':['ck','ck-presence-list__marker',_0x19a293['color']['getBackgroundColorClass']()],'aria-hidden':'true'}});}}const A={'collapseAt':0x6,'displayMe':!0x0};class s extends _0x18fa55{['currentDisplayedUsers'];['balloonPanelView'];['view'];['presenceDropdownView'];['_bodyCollection']=null;constructor(_0x3881a1){super(_0x3881a1),this['context']['config']['define']('presenceList',A);const _0x495302=_0x3881a1['config']['get']('presenceList.collapseAt');if('number'!=typeof _0x495302)throw new _0x227598('presencelist-collapseat-invalid-format',this);if(_0x495302<0x1)throw new _0x227598('presencelist-collapseat-invalid-format',this);this['_allConnectedUsers']=this['context']['plugins']['get'](r)['allConnectedUsers'],this['set']('usersCount',0x0),this['currentDisplayedUsers']=new _0x524897(),this['balloonPanelView']=new _0x332647(),this['balloonPanelView']['class']='ck\x20ck-presence-list__balloon',this['view']=this['_createView'](),this['presenceDropdownView']=void 0x0;}static get['requires'](){return[r];}['init'](){for(const _0x26aa60 of this['_allConnectedUsers'])this['_handleUserAdd'](_0x26aa60);this['listenTo'](this['_allConnectedUsers'],'add',(_0x8e62bd,_0x4b3767)=>{this['_handleUserAdd'](_0x4b3767);}),this['listenTo'](this['_allConnectedUsers'],'remove',(_0x2899b8,_0x15c9db)=>{this['_handleUserRemove'](_0x15c9db);});}['_createView'](){const _0x33700d=this['context'],_0x232f36=new L(this['context']['locale']),_0x503ada=this['balloonPanelView'];if(!_0x348b04(_0x33700d['config']['get']('presenceList.container')))throw new _0x227598('presencelist-missing-container',this);return _0x232f36['counterView']['bind']('usersCount')['to'](this),_0x232f36['bind']('isCollapsed')['to'](this,'usersCount',_0x33fe66=>{const {collapseAt:_0x3b88d7,displayMe:_0x26d3b8}=_0x33700d['config']['get']('presenceList'),_0xdde116=_0x33fe66>=_0x3b88d7;return _0x232f36['counterView']['isHidden']=!(0x1==_0x33fe66&&_0x26d3b8||_0xdde116),_0xdde116||this['hideDropdown'](),_0xdde116;}),_0x232f36['inlineListView']['items']['bindTo'](this['currentDisplayedUsers'])['using'](_0x251a15=>{const _0x12acb8=_0x33700d['config']['get']('presenceList'),_0x37d48a=new y(_0x33700d['locale'],_0x251a15,!!_0x12acb8['onClick']);return _0x37d48a['bind']('hasTooltip')['to'](_0x232f36,'isCollapsed',_0x46f4f3=>!_0x46f4f3),_0x37d48a['bind']('isFocusable')['to'](_0x232f36,'isCollapsed',_0x4e4b2b=>!_0x4e4b2b),_0x12acb8['onClick']&&this['listenTo'](_0x37d48a,'execute',()=>{this['view']['isCollapsed']||_0x12acb8['onClick'](_0x251a15,_0x37d48a['element']);}),_0x37d48a;}),this['listenTo'](_0x232f36['inlineListView'],'execute',()=>{this['presenceDropdownView']?this['hideDropdown']():this['view']['isCollapsed']&&this['showDropdown']();}),_0x232f36['inlineListView']['keystrokes']['set']('Enter',(_0x11ef0f,_0x1ca7f5)=>{this['view']['isCollapsed']&&(this['showDropdown'](),_0x1ca7f5());}),_0x232f36['render'](),_0x503ada['render'](),_0x161e77({'emitter':_0x232f36,'activator':()=>_0x503ada['isVisible'],'contextElements':[_0x503ada['element'],_0x232f36['inlineListView']['element']],'callback':()=>this['hideDropdown']()}),_0x33700d['config']['get']('presenceList.container')['appendChild'](_0x232f36['element']),this['_bodyCollection']=new _0x37367f(this['context']['locale']),this['_bodyCollection']['attachToDom'](),this['_bodyCollection']['add'](this['balloonPanelView']),_0x232f36;}['_handleUserAdd'](_0x2c95e3){if(!this['context']['config']['get']('presenceList.displayMe')&&_0x2c95e3['isMe'])return;const _0x377180=this['context']['config']['get']('presenceList.collapseAt')-0x1;this['usersCount']++,this['currentDisplayedUsers']['length']==_0x377180&&this['currentDisplayedUsers']['length']>0x1&&this['currentDisplayedUsers']['remove'](0x1);const _0x3dee08=_0x2c95e3['isMe']?0x0:this['currentDisplayedUsers']['length'];this['currentDisplayedUsers']['add'](_0x2c95e3,_0x3dee08);}['_handleUserRemove'](_0x5b55e6){if(this['usersCount']--,this['currentDisplayedUsers']['get'](_0x5b55e6['id'])&&(this['currentDisplayedUsers']['remove'](_0x5b55e6['id']),this['currentDisplayedUsers']['length']<this['usersCount'])){for(const _0x1a8538 of Array['from'](this['_allConnectedUsers'])['reverse']())if(!this['currentDisplayedUsers']['get'](_0x1a8538['id']))return void this['currentDisplayedUsers']['add'](_0x1a8538,Math['min'](this['currentDisplayedUsers']['length'],0x1));}}['showDropdown'](){if(this['presenceDropdownView'])return;const _0x3259ce=this['context']['config']['get']('presenceList');this['presenceDropdownView']=new j(this['context']['locale'],!!_0x3259ce['onClick']),this['view']['inlineListView']['isExpanded']=!0x0;const {listWrapperView:_0x20fe2b}=this['presenceDropdownView'];_0x20fe2b['items']['bindTo'](this['_allConnectedUsers'])['using'](_0x44cb3a=>{if(!_0x3259ce['displayMe']&&_0x44cb3a['isMe'])return null;const _0x2509be=new k(this['context']['locale'],_0x44cb3a,!!_0x3259ce['onClick']);return _0x3259ce['onClick']&&this['listenTo'](_0x2509be,'execute',()=>{_0x3259ce['onClick'](_0x44cb3a,_0x2509be['element']);}),_0x2509be;}),this['balloonPanelView']['content']['add'](this['presenceDropdownView']),this['balloonPanelView']['pin']({'target':this['view']['inlineListView']['element']}),_0x20fe2b['focus'](),_0x20fe2b['checkIfScrollable']();const _0x40b742=(_0x154efb,_0x245b12)=>{this['hideDropdown'](),this['view']['inlineListView']['focus'](),_0x245b12();};_0x20fe2b['keystrokes']['set']('Esc',_0x40b742),_0x20fe2b['keystrokes']['set']('Shift+Tab',_0x40b742),_0x20fe2b['keystrokes']['set']('Tab',(_0x2aef93,_0x2e6fa3)=>{!function(_0xfc2e1b){const _0x33bb23=['a','button','input','select','textarea','[tabindex]','[contenteditable]']['map'](_0xf8d951=>_0xf8d951+':not([disabled]):not([tabindex=\x22-1\x22])')['join'](','),_0x450f5d=[...document['body']['querySelectorAll'](_0x33bb23)]['filter'](_0x1fafce=>_0x1fafce===document['activeElement']||_0x1fafce['offsetWidth']+_0x1fafce['offsetHeight']>0x0)['sort']((_0x4a4e25,_0x518728)=>(_0x4a4e25['tabIndex']||0x0)-(_0x518728['tabIndex']||0x0)),_0x2d6ccd=_0x450f5d['indexOf'](_0xfc2e1b),_0x9e6fb0=_0x450f5d[(_0x2d6ccd+0x1)%_0x450f5d['length']];_0x9e6fb0&&_0x9e6fb0['focus']();}(this['view']['element']),this['hideDropdown'](),_0x2e6fa3();}),_0x20fe2b['focusTracker']['add'](this['view']['element']),_0x20fe2b['focusTracker']['on']('change:isFocused',(_0x45d980,_0x551523,_0x3abf8c)=>{_0x3abf8c||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 i extends _0x18fa55{static get['requires'](){return[r,s];}static get['pluginName'](){return'PresenceList';}}export{a as CloudServicesCommentsAdapter,v as CloudServicesRevisionHistoryAdapter,g as CloudServicesTrackChangesAdapter,i as PresenceList,l as RealTimeCollaborationClient,m as RealTimeCollaborativeComments,n as RealTimeCollaborativeEditing,d as RealTimeCollaborativeRevisionHistory,p as RealTimeCollaborativeTrackChanges};
|
package/dist/translations/ar.js
CHANGED
|
@@ -20,4 +20,4 @@
|
|
|
20
20
|
*
|
|
21
21
|
*
|
|
22
22
|
*/
|
|
23
|
-
export default{'ar':{'dictionary':{'CONNECTED_USERS':['1\x20مستخدم\x20متصل\x20(أنا)','%0\x20مستخدم\x20متصل','%0\x20مستخدم\x20متصل','%0\x20مستخدمين\x20متصلين','%0\x20مستخدماً\x20متصلاً','%0\x20مستخدمٍ\x20متصلٍ'],'PENDING_ACTION_SENDING_DATA':'إرسال\x20البيانات\x20إلى\x20الخادم','Synchronization\x20issue':'مشكلة\x20في\x20المزامنة','Connected\x20users\x20list\x20dropdown\x20menu':'القائمة\x20المنسدلة\x20لقائمة\x20المستخدمين\x20المتصلين','Connected\x20users\x20list':'قائمة\x20المستخدمين\x20المتصلين','Collapsed\x20connected\x20users\x20list\x20(press\x20ENTER\x20to\x20open\x20it)':'قائمة\x20مطوية\x20للمستخدمين\x20المتصلين\x20(اضغط\x20على\x20ENTER\x20لفتحها)','The\x20document\x20cannot\x20be\x20connected\x20back\x20to\x20the\x20server.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':'لا\x20يمكن\x20إعادة\x20ربط\x20المستند\x20بالخادم\x20مرة\x20أخرى.\x20كي\x20لا\x20تفقد\x20المحتوى،\x20احفظ\x20المستند\x20محلياً\x20وأجر\x20عملية\x20إنعاش\x20للمحرر\x20لديك.','The\x20document\x20details\x20could\x20not\x20be\x20taken\x20during\x20the\x20reconnection.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':'تعذرت\x20عملية\x20قراءة\x20بيانات\x20المستند\x20أثناء\x20عملية\x20إعادة\x20الاتصال.\x20كي\x20لا\x20تفقد\x20المحتوى،\x20احفظ\x20المستند\x20محلياً\x20وأجر\x20عملية\x20إنعاش\x20للمحرر\x20لديك.','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.':'الإصدار\x20الأخير\x20المحفوظ\x20من\x20هذا\x20المستند\x20لا\x20يطابق\x20الإصدار\x20المحلي.\x20كي\x20لا\x20تفقد\x20المحتوى،\x20احفظ\x20المستند\x20محلياً\x20وأجر\x20عملية\x20إنعاش\x20للمحرر\x20لديك.','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.':'يوجد\x20اختلاف\x20بين\x20المستند\x20المحلي\x20والمستند\x20الموجود\x20على\x20الخادم،\x20ودمجهما\x20قد\x20يتسبب\x20في\x20نتائج\x20غير\x20متوقعة.\x20كي\x20لا\x20تفقد\x20المحتوى،\x20احفظ\x20المستند\x20محلياً\x20وأجر\x20عملية\x20إنعاش\x20للمحرر\x20لديك.'},'getPluralForm':
|
|
23
|
+
export default{'ar':{'dictionary':{'CONNECTED_USERS':['1\x20مستخدم\x20متصل\x20(أنا)','%0\x20مستخدم\x20متصل','%0\x20مستخدم\x20متصل','%0\x20مستخدمين\x20متصلين','%0\x20مستخدماً\x20متصلاً','%0\x20مستخدمٍ\x20متصلٍ'],'PENDING_ACTION_SENDING_DATA':'إرسال\x20البيانات\x20إلى\x20الخادم','Synchronization\x20issue':'مشكلة\x20في\x20المزامنة','Connected\x20users\x20list\x20dropdown\x20menu':'القائمة\x20المنسدلة\x20لقائمة\x20المستخدمين\x20المتصلين','Connected\x20users\x20list':'قائمة\x20المستخدمين\x20المتصلين','Collapsed\x20connected\x20users\x20list\x20(press\x20ENTER\x20to\x20open\x20it)':'قائمة\x20مطوية\x20للمستخدمين\x20المتصلين\x20(اضغط\x20على\x20ENTER\x20لفتحها)','The\x20document\x20cannot\x20be\x20connected\x20back\x20to\x20the\x20server.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':'لا\x20يمكن\x20إعادة\x20ربط\x20المستند\x20بالخادم\x20مرة\x20أخرى.\x20كي\x20لا\x20تفقد\x20المحتوى،\x20احفظ\x20المستند\x20محلياً\x20وأجر\x20عملية\x20إنعاش\x20للمحرر\x20لديك.','The\x20document\x20details\x20could\x20not\x20be\x20taken\x20during\x20the\x20reconnection.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':'تعذرت\x20عملية\x20قراءة\x20بيانات\x20المستند\x20أثناء\x20عملية\x20إعادة\x20الاتصال.\x20كي\x20لا\x20تفقد\x20المحتوى،\x20احفظ\x20المستند\x20محلياً\x20وأجر\x20عملية\x20إنعاش\x20للمحرر\x20لديك.','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.':'الإصدار\x20الأخير\x20المحفوظ\x20من\x20هذا\x20المستند\x20لا\x20يطابق\x20الإصدار\x20المحلي.\x20كي\x20لا\x20تفقد\x20المحتوى،\x20احفظ\x20المستند\x20محلياً\x20وأجر\x20عملية\x20إنعاش\x20للمحرر\x20لديك.','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.':'يوجد\x20اختلاف\x20بين\x20المستند\x20المحلي\x20والمستند\x20الموجود\x20على\x20الخادم،\x20ودمجهما\x20قد\x20يتسبب\x20في\x20نتائج\x20غير\x20متوقعة.\x20كي\x20لا\x20تفقد\x20المحتوى،\x20احفظ\x20المستند\x20محلياً\x20وأجر\x20عملية\x20إنعاش\x20للمحرر\x20لديك.'},'getPluralForm':_0x1d7132=>0x0==_0x1d7132?0x0:0x1==_0x1d7132?0x1:0x2==_0x1d7132?0x2:_0x1d7132%0x64>=0x3&&_0x1d7132%0x64<=0xa?0x3:_0x1d7132%0x64>=0xb&&_0x1d7132%0x64<=0x63?0x4:0x5}};
|
|
@@ -20,4 +20,4 @@
|
|
|
20
20
|
*
|
|
21
21
|
*
|
|
22
22
|
*/
|
|
23
|
-
(
|
|
23
|
+
(_0x472dce=>{const {ar:{dictionary:_0x424dbb,getPluralForm:_0x29ddac}}={'ar':{'dictionary':{'CONNECTED_USERS':['1\x20مستخدم\x20متصل\x20(أنا)','%0\x20مستخدم\x20متصل','%0\x20مستخدم\x20متصل','%0\x20مستخدمين\x20متصلين','%0\x20مستخدماً\x20متصلاً','%0\x20مستخدمٍ\x20متصلٍ'],'PENDING_ACTION_SENDING_DATA':'إرسال\x20البيانات\x20إلى\x20الخادم','Synchronization\x20issue':'مشكلة\x20في\x20المزامنة','Connected\x20users\x20list\x20dropdown\x20menu':'القائمة\x20المنسدلة\x20لقائمة\x20المستخدمين\x20المتصلين','Connected\x20users\x20list':'قائمة\x20المستخدمين\x20المتصلين','Collapsed\x20connected\x20users\x20list\x20(press\x20ENTER\x20to\x20open\x20it)':'قائمة\x20مطوية\x20للمستخدمين\x20المتصلين\x20(اضغط\x20على\x20ENTER\x20لفتحها)','The\x20document\x20cannot\x20be\x20connected\x20back\x20to\x20the\x20server.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':'لا\x20يمكن\x20إعادة\x20ربط\x20المستند\x20بالخادم\x20مرة\x20أخرى.\x20كي\x20لا\x20تفقد\x20المحتوى،\x20احفظ\x20المستند\x20محلياً\x20وأجر\x20عملية\x20إنعاش\x20للمحرر\x20لديك.','The\x20document\x20details\x20could\x20not\x20be\x20taken\x20during\x20the\x20reconnection.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':'تعذرت\x20عملية\x20قراءة\x20بيانات\x20المستند\x20أثناء\x20عملية\x20إعادة\x20الاتصال.\x20كي\x20لا\x20تفقد\x20المحتوى،\x20احفظ\x20المستند\x20محلياً\x20وأجر\x20عملية\x20إنعاش\x20للمحرر\x20لديك.','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.':'الإصدار\x20الأخير\x20المحفوظ\x20من\x20هذا\x20المستند\x20لا\x20يطابق\x20الإصدار\x20المحلي.\x20كي\x20لا\x20تفقد\x20المحتوى،\x20احفظ\x20المستند\x20محلياً\x20وأجر\x20عملية\x20إنعاش\x20للمحرر\x20لديك.','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.':'يوجد\x20اختلاف\x20بين\x20المستند\x20المحلي\x20والمستند\x20الموجود\x20على\x20الخادم،\x20ودمجهما\x20قد\x20يتسبب\x20في\x20نتائج\x20غير\x20متوقعة.\x20كي\x20لا\x20تفقد\x20المحتوى،\x20احفظ\x20المستند\x20محلياً\x20وأجر\x20عملية\x20إنعاش\x20للمحرر\x20لديك.'},'getPluralForm':_0x1e2367=>0x0==_0x1e2367?0x0:0x1==_0x1e2367?0x1:0x2==_0x1e2367?0x2:_0x1e2367%0x64>=0x3&&_0x1e2367%0x64<=0xa?0x3:_0x1e2367%0x64>=0xb&&_0x1e2367%0x64<=0x63?0x4:0x5}};_0x472dce['ar']||={'dictionary':{},'getPluralForm':null},_0x472dce['ar']['dictionary']=Object['assign'](_0x472dce['ar']['dictionary'],_0x424dbb),_0x472dce['ar']['getPluralForm']=_0x29ddac;})(window['CKEDITOR_TRANSLATIONS']||={});
|