@ckeditor/ckeditor5-real-time-collaboration 46.0.2-alpha.0 → 46.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (170) hide show
  1. package/build/real-time-collaboration.js +2 -2
  2. package/dist/index.js +6 -6
  3. package/dist/translations/af.js +1 -1
  4. package/dist/translations/af.umd.js +1 -1
  5. package/dist/translations/ar.js +1 -1
  6. package/dist/translations/ar.umd.js +1 -1
  7. package/dist/translations/ast.js +1 -1
  8. package/dist/translations/ast.umd.js +1 -1
  9. package/dist/translations/az.js +1 -1
  10. package/dist/translations/az.umd.js +1 -1
  11. package/dist/translations/be.js +1 -1
  12. package/dist/translations/be.umd.js +1 -1
  13. package/dist/translations/bg.js +1 -1
  14. package/dist/translations/bg.umd.js +1 -1
  15. package/dist/translations/bn.js +1 -1
  16. package/dist/translations/bn.umd.js +1 -1
  17. package/dist/translations/bs.js +1 -1
  18. package/dist/translations/bs.umd.js +1 -1
  19. package/dist/translations/ca.js +1 -1
  20. package/dist/translations/ca.umd.js +1 -1
  21. package/dist/translations/cs.js +1 -1
  22. package/dist/translations/cs.umd.js +1 -1
  23. package/dist/translations/da.js +1 -1
  24. package/dist/translations/da.umd.js +1 -1
  25. package/dist/translations/de-ch.js +1 -1
  26. package/dist/translations/de-ch.umd.js +1 -1
  27. package/dist/translations/de.js +1 -1
  28. package/dist/translations/de.umd.js +1 -1
  29. package/dist/translations/el.js +1 -1
  30. package/dist/translations/el.umd.js +1 -1
  31. package/dist/translations/en-au.js +1 -1
  32. package/dist/translations/en-au.umd.js +1 -1
  33. package/dist/translations/en-gb.js +1 -1
  34. package/dist/translations/en-gb.umd.js +1 -1
  35. package/dist/translations/en.js +1 -1
  36. package/dist/translations/en.umd.js +1 -1
  37. package/dist/translations/eo.js +1 -1
  38. package/dist/translations/eo.umd.js +1 -1
  39. package/dist/translations/es-co.js +1 -1
  40. package/dist/translations/es-co.umd.js +1 -1
  41. package/dist/translations/es.js +1 -1
  42. package/dist/translations/es.umd.js +1 -1
  43. package/dist/translations/et.js +1 -1
  44. package/dist/translations/et.umd.js +1 -1
  45. package/dist/translations/eu.js +1 -1
  46. package/dist/translations/eu.umd.js +1 -1
  47. package/dist/translations/fa.js +1 -1
  48. package/dist/translations/fa.umd.js +1 -1
  49. package/dist/translations/fi.js +1 -1
  50. package/dist/translations/fi.umd.js +1 -1
  51. package/dist/translations/fr.js +1 -1
  52. package/dist/translations/fr.umd.js +1 -1
  53. package/dist/translations/gl.js +1 -1
  54. package/dist/translations/gl.umd.js +1 -1
  55. package/dist/translations/gu.js +1 -1
  56. package/dist/translations/gu.umd.js +1 -1
  57. package/dist/translations/he.js +1 -1
  58. package/dist/translations/he.umd.js +1 -1
  59. package/dist/translations/hi.js +1 -1
  60. package/dist/translations/hi.umd.js +1 -1
  61. package/dist/translations/hr.js +1 -1
  62. package/dist/translations/hr.umd.js +1 -1
  63. package/dist/translations/hu.js +1 -1
  64. package/dist/translations/hu.umd.js +1 -1
  65. package/dist/translations/hy.js +1 -1
  66. package/dist/translations/hy.umd.js +1 -1
  67. package/dist/translations/id.js +1 -1
  68. package/dist/translations/id.umd.js +1 -1
  69. package/dist/translations/it.js +1 -1
  70. package/dist/translations/it.umd.js +1 -1
  71. package/dist/translations/ja.js +1 -1
  72. package/dist/translations/ja.umd.js +1 -1
  73. package/dist/translations/jv.js +1 -1
  74. package/dist/translations/jv.umd.js +1 -1
  75. package/dist/translations/kk.js +1 -1
  76. package/dist/translations/kk.umd.js +1 -1
  77. package/dist/translations/km.js +1 -1
  78. package/dist/translations/km.umd.js +1 -1
  79. package/dist/translations/kn.js +1 -1
  80. package/dist/translations/kn.umd.js +1 -1
  81. package/dist/translations/ko.js +1 -1
  82. package/dist/translations/ko.umd.js +1 -1
  83. package/dist/translations/ku.js +1 -1
  84. package/dist/translations/ku.umd.js +1 -1
  85. package/dist/translations/lt.js +1 -1
  86. package/dist/translations/lt.umd.js +1 -1
  87. package/dist/translations/lv.js +1 -1
  88. package/dist/translations/lv.umd.js +1 -1
  89. package/dist/translations/ms.js +1 -1
  90. package/dist/translations/ms.umd.js +1 -1
  91. package/dist/translations/nb.js +1 -1
  92. package/dist/translations/nb.umd.js +1 -1
  93. package/dist/translations/ne.js +1 -1
  94. package/dist/translations/ne.umd.js +1 -1
  95. package/dist/translations/nl.js +1 -1
  96. package/dist/translations/nl.umd.js +1 -1
  97. package/dist/translations/no.js +1 -1
  98. package/dist/translations/no.umd.js +1 -1
  99. package/dist/translations/oc.js +1 -1
  100. package/dist/translations/oc.umd.js +1 -1
  101. package/dist/translations/pl.js +1 -1
  102. package/dist/translations/pl.umd.js +1 -1
  103. package/dist/translations/pt-br.js +1 -1
  104. package/dist/translations/pt-br.umd.js +1 -1
  105. package/dist/translations/pt.js +1 -1
  106. package/dist/translations/pt.umd.js +1 -1
  107. package/dist/translations/ro.js +1 -1
  108. package/dist/translations/ro.umd.js +1 -1
  109. package/dist/translations/ru.js +1 -1
  110. package/dist/translations/ru.umd.js +1 -1
  111. package/dist/translations/si.js +1 -1
  112. package/dist/translations/si.umd.js +1 -1
  113. package/dist/translations/sk.js +1 -1
  114. package/dist/translations/sk.umd.js +1 -1
  115. package/dist/translations/sl.js +1 -1
  116. package/dist/translations/sl.umd.js +1 -1
  117. package/dist/translations/sq.js +1 -1
  118. package/dist/translations/sq.umd.js +1 -1
  119. package/dist/translations/sr-latn.js +1 -1
  120. package/dist/translations/sr-latn.umd.js +1 -1
  121. package/dist/translations/sr.js +1 -1
  122. package/dist/translations/sr.umd.js +1 -1
  123. package/dist/translations/sv.js +1 -1
  124. package/dist/translations/sv.umd.js +1 -1
  125. package/dist/translations/th.js +1 -1
  126. package/dist/translations/th.umd.js +1 -1
  127. package/dist/translations/ti.js +1 -1
  128. package/dist/translations/ti.umd.js +1 -1
  129. package/dist/translations/tk.js +1 -1
  130. package/dist/translations/tk.umd.js +1 -1
  131. package/dist/translations/tr.js +1 -1
  132. package/dist/translations/tr.umd.js +1 -1
  133. package/dist/translations/tt.js +1 -1
  134. package/dist/translations/tt.umd.js +1 -1
  135. package/dist/translations/ug.js +1 -1
  136. package/dist/translations/ug.umd.js +1 -1
  137. package/dist/translations/uk.js +1 -1
  138. package/dist/translations/uk.umd.js +1 -1
  139. package/dist/translations/ur.js +1 -1
  140. package/dist/translations/ur.umd.js +1 -1
  141. package/dist/translations/uz.js +1 -1
  142. package/dist/translations/uz.umd.js +1 -1
  143. package/dist/translations/vi.js +1 -1
  144. package/dist/translations/vi.umd.js +1 -1
  145. package/dist/translations/zh-cn.js +1 -1
  146. package/dist/translations/zh-cn.umd.js +1 -1
  147. package/dist/translations/zh.js +1 -1
  148. package/dist/translations/zh.umd.js +1 -1
  149. package/package.json +14 -14
  150. package/src/common-translations.js +1 -1
  151. package/src/index.js +1 -1
  152. package/src/presencelist/presencelistui.js +1 -1
  153. package/src/presencelist/view/presencecounterview.js +1 -1
  154. package/src/presencelist/view/presencedropdownlistitemview.js +1 -1
  155. package/src/presencelist/view/presencedropdownlistview.js +1 -1
  156. package/src/presencelist/view/presenceinlinelistitemview.js +1 -1
  157. package/src/presencelist/view/presenceinlinelistview.js +1 -1
  158. package/src/presencelist/view/presencelistview.js +1 -1
  159. package/src/presencelist.js +1 -1
  160. package/src/realtimecollaborativecomments/cloudservicescommentsadapter.js +2 -2
  161. package/src/realtimecollaborativecomments.js +1 -1
  162. package/src/realtimecollaborativeediting/realtimecollaborationclient.js +2 -2
  163. package/src/realtimecollaborativeediting/sessions.js +1 -1
  164. package/src/realtimecollaborativeediting/usermarkers.js +1 -1
  165. package/src/realtimecollaborativeediting/websocketgateway.js +2 -2
  166. package/src/realtimecollaborativeediting.js +1 -1
  167. package/src/realtimecollaborativerevisionhistory/cloudservicesrevisionhistoryadapter.js +2 -2
  168. package/src/realtimecollaborativerevisionhistory.js +1 -1
  169. package/src/realtimecollaborativetrackchanges/cloudservicestrackchangesadapter.js +2 -2
  170. 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 _0x4d3b80,Plugin as _0x10d243,PendingActions as _0x36e4c0,Context as _0x1146c8}from'@ckeditor/ckeditor5-core/dist/index.js';import{DomEmitterMixin as _0x1dcc6c,CKEditorError as _0x310ec5,Collection as _0x3f433a,global as _0x438e09,version as nt,uid as _0x210547,KeystrokeHandler as _0x5e4192}from'@ckeditor/ckeditor5-utils/dist/index.js';import{Notification as _0x5532a5,View as _0x3fe722,ListView as _0x374e68,ListItemView as et,LabelView as it,BalloonPanelView as _0x29c12b,clickOutsideHandler as _0x22e750,BodyCollection as _0x4a0b8d}from'@ckeditor/ckeditor5-ui/dist/index.js';import{ModelLiveRange as _0x3b6135,History as _0x4c7be5,NoOperation as _0x103a01,InsertOperation as _0x8498be,MarkerOperation as _0x5d25f8,RootAttributeOperation as _0x11397f,transformOperationSets as _0x58190b,OperationFactory as _0x1b43cd}from'@ckeditor/ckeditor5-engine/dist/index.js';import{WebSocketGateway as rt,WEB_SOCKET_GATEWAY_STATES as _0x3d49a0,CollaborativeEditingService as _0x59da2e,User as ct,CommentsService as _0x58ad7c,TrackChangesService as tt,RevisionHistoryService as _0x21c89f,EditorService as _0xe88053}from'@ckeditor/ckeditor-cloud-services-collaboration/dist/index.js';import{Users as _0xaa642b,UserView as st}from'ckeditor5-collaboration/dist/index.js';import{Compressor as _0x564650}from'@ckeditor/ckeditor5-operations-compressor/dist/index.js';import{isElement as _0x36c3c9}from'es-toolkit/compat';class n extends _0x4d3b80{static ['WebSocketGateway']=/* #__PURE__ -- @preserve */
24
- ((()=>rt)());static ['initialReconnectionInterval']=0x3e8;['connection'];['_reconnectionStack'];['_shouldPluginsReconnect'];['_domEmitter'];static get['requires'](){return['CloudServices',_0x5532a5];}static get['pluginName'](){return'WebSocketGateway';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x14d259){super(_0x14d259),this['set']('state',_0x3d49a0['CONNECTED']),this['set']('_isBrowserOffline',!0x1),this['_reconnectionStack']=new Set(),this['_shouldPluginsReconnect']=!0x1,this['_domEmitter']=new(_0x1dcc6c())();}['init'](){const _0x10371e=this['context'],_0x279285=_0x10371e['plugins']['get']('CloudServices'),_0x2d9668=_0x10371e['plugins']['get'](_0x5532a5);if(!_0x279285['token'])throw new _0x310ec5('websocketgateway-missing-token',this);if(!_0x279285['webSocketUrl'])throw new _0x310ec5('websocketgateway-missing-websocket-url',this);return this['_domEmitter']['listenTo'](window,'offline',()=>this['_isBrowserOffline']=!0x0),this['_domEmitter']['listenTo'](window,'online',()=>this['_isBrowserOffline']=!0x1),this['context']['config']['define']('cloudServices.connectionTimeout',0xa),this['context']['config']['define']('cloudServices.requestTimeout',0x14),n['WebSocketGateway']['connect'](_0x279285['token'],_0x279285['webSocketUrl'],{'timeout':0x3e8*this['context']['config']['get']('cloudServices.connectionTimeout'),'requestTimeout':0x3e8*this['context']['config']['get']('cloudServices.requestTimeout')})['then'](_0x1b9184=>{if(this['connection']=_0x1b9184,this['bind']('state')['to'](_0x1b9184,'state',this,'_isBrowserOffline',(_0x2f780d,_0x32eba0)=>('connected'!==_0x2f780d&&(this['_shouldPluginsReconnect']=!0x0),_0x32eba0||_0x2f780d!==_0x3d49a0['CONNECTED']?_0x3d49a0['DISCONNECTED']:this['state']==_0x3d49a0['DISCONNECTED']&&this['_shouldPluginsReconnect']?(this['_shouldPluginsReconnect']=!0x1,this['_reconnect'](),_0x3d49a0['CONNECTING']):_0x3d49a0['CONNECTED'])),this['connection']['on']('error',(_0x3f5adc,_0x45abc2)=>{if('limitExceeded'!==_0x45abc2['code'])throw console['error'](_0x45abc2),new _0x310ec5('cloudservices-init',null,{'originalError':_0x45abc2});_0x2d9668['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'});}),!_0x1b9184['me'])return new Promise(_0x308c19=>_0x1b9184['on']('change:me',_0x308c19));})['catch'](_0x596358=>{throw console['error'](_0x596358),new _0x310ec5('cloudservices-init',null,{'originalError':_0x596358});});}['addToReconnectionStack'](_0x8b2c9b){if('function'!=typeof _0x8b2c9b['reconnect'])throw new _0x310ec5('websocketgateway-invalid-plugin-interface',this);if(this['isInReconnectionStack'](_0x8b2c9b))throw new _0x310ec5('websocketgateway-plugin-already-registered',this,{'name':_0x8b2c9b['constructor']['pluginName']});this['_reconnectionStack']['add'](_0x8b2c9b);}['removeFromReconnectionStack'](_0x219dbe){this['_reconnectionStack']['delete'](_0x219dbe);}['isInReconnectionStack'](_0x3a5d76){return this['_reconnectionStack']['has'](_0x3a5d76);}['_reconnect'](){return this['connection']['reconnect']()['then'](()=>Promise['all'](Array['from'](this['_reconnectionStack'],_0x1d3fc3=>_0x1d3fc3['reconnect']())))['then'](()=>this['state']=_0x3d49a0['CONNECTED'])['catch'](_0x4022b7=>{throw console['error'](_0x4022b7),new _0x310ec5('cloudservices-reconnection-error',this['context']);});}['disconnect'](){this['connection']&&this['connection']['disconnect'](),this['state']=_0x3d49a0['DISCONNECTED'],this['_domEmitter']['stopListening']();}['destroy'](){this['disconnect'](),super['destroy']();}}class i extends _0x4d3b80{['channelSessions'];['channelConnectedUsers'];['allConnectedUsers'];['_registeredSessions'];['_uniqueUsersCount'];['_users'];static get['pluginName'](){return'Sessions';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}static get['requires'](){return[n,_0xaa642b];}constructor(_0x1a5da2){super(_0x1a5da2),this['channelSessions']=new Map(),this['channelConnectedUsers']=new Map(),this['allConnectedUsers']=new _0x3f433a(),this['_registeredSessions']=new Map(),this['_uniqueUsersCount']=0x0,this['_users']=this['context']['plugins']['get'](_0xaa642b);}['init'](){const _0x14335d=this['context']['plugins']['get'](n);this['listenTo'](_0x14335d,'change:state',(_0x64cd4c,_0x17a2f4,_0x3f139c)=>{if('connected'!==_0x3f139c)this['channelSessions']['forEach'](_0x368550=>_0x368550['clear']()),this['channelConnectedUsers']['forEach'](_0x447c20=>_0x447c20['clear']()),this['allConnectedUsers']['clear']();else{for(const [_0x5137b7,_0x42fe7c]of this['_registeredSessions'])for(const _0x3ccf53 of _0x42fe7c)this['_handleSessionAdd'](_0x5137b7,_0x3ccf53);}}),this['_createUser'](_0x14335d['connection']['me'],!0x0);}['register'](_0xa2a91b,_0x51ae6d){if(this['_registeredSessions']['has'](_0xa2a91b))throw new _0x310ec5('sessions-register-already-registered',null,{'channelId':_0xa2a91b});this['_registeredSessions']['set'](_0xa2a91b,_0x51ae6d),this['channelSessions']['set'](_0xa2a91b,new _0x3f433a()),this['channelConnectedUsers']['set'](_0xa2a91b,new _0x3f433a()),this['listenTo'](_0x51ae6d,'add',(_0x6bf4e5,_0x5cf5fb)=>this['_handleSessionAdd'](_0xa2a91b,_0x5cf5fb)),this['listenTo'](_0x51ae6d,'remove',(_0x1b669b,_0x6b1832)=>this['_handleSessionRemove'](_0xa2a91b,_0x6b1832));for(const _0x700ece of _0x51ae6d)this['_handleSessionAdd'](_0xa2a91b,_0x700ece);}['unregister'](_0x4703d8){if(!this['_registeredSessions']['has'](_0x4703d8))throw new _0x310ec5('sessions-unregister-not-exist',null,{'channelId':_0x4703d8});const _0x110f44=this['_registeredSessions']['get'](_0x4703d8);this['stopListening'](_0x110f44);for(const _0x204457 of _0x110f44)'connected'===this['context']['plugins']['get'](n)['state']&&this['_handleSessionRemove'](_0x4703d8,_0x204457);this['_registeredSessions']['delete'](_0x4703d8),this['channelSessions']['delete'](_0x4703d8),this['channelConnectedUsers']['delete'](_0x4703d8);}get['mySessionId'](){return this['context']['plugins']['get'](n)['connection']['sessionId'];}['getUserBySessionId'](_0x30160b){for(const _0xa5e1a0 of this['channelSessions']['values']())for(const _0x572b7f of _0xa5e1a0)if(_0x572b7f['id']===_0x30160b)return _0x572b7f['user'];}['getUserSessions'](_0x2b06e3,_0x26f999){const _0x288e55=_0x26f999?[this['channelSessions']['get'](_0x26f999)]:this['channelSessions']['values'](),_0x25abbc=new Set();for(const _0x540152 of _0x288e55)for(const _0x90e437 of _0x540152)_0x90e437['user']['id']===_0x2b06e3['id']&&_0x25abbc['add'](_0x90e437['id']);return _0x25abbc;}['getUserRole'](_0x1b207e){for(const _0x3d82ba of this['channelSessions']['values']())for(const _0x16d3e2 of _0x3d82ba)if(_0x16d3e2['user']===_0x1b207e)return _0x16d3e2['role'];}['_handleSessionAdd'](_0x11290b,_0x2d1bdb){if('connected'!==this['context']['plugins']['get'](n)['state'])return;const _0x553938=_0x2d1bdb['user'],_0x8c9302=this['_users']['getUser'](_0x553938['id'])||this['_createUser'](_0x553938),_0x354b09=Object['assign']({},_0x2d1bdb,{'user':_0x8c9302});this['channelSessions']['get'](_0x11290b)['add'](_0x354b09);const _0x56ef65=this['channelConnectedUsers']['get'](_0x11290b);_0x56ef65['has'](_0x8c9302['id'])||_0x56ef65['add'](_0x8c9302),this['allConnectedUsers']['has'](_0x8c9302['id'])||this['allConnectedUsers']['add'](_0x8c9302,_0x8c9302['isMe']?0x0:void 0x0),this['fire']('sessionAdd:'+_0x11290b,{'channelId':_0x11290b,'session':_0x354b09});}['_handleSessionRemove'](_0x5c16ae,_0x25e5e2){if('connected'!==this['context']['plugins']['get'](n)['state'])return;const _0x50292a=this['channelConnectedUsers']['get'](_0x5c16ae),_0x3069a1=_0x25e5e2['user'];_0x3069a1['id']&&(this['channelSessions']['get'](_0x5c16ae)['remove'](_0x25e5e2['id']),_0x50292a['has'](_0x3069a1['id'])&&!this['getUserSessions'](_0x3069a1,_0x5c16ae)['size']&&_0x50292a['remove'](_0x3069a1['id']),this['allConnectedUsers']['get'](_0x3069a1['id'])&&!this['getUserSessions'](_0x3069a1)['size']&&this['allConnectedUsers']['remove'](_0x3069a1['id']));}['_createUser'](_0x17cf91,_0x16b50a){const _0x50d580=this['_users']['addUser'](_0x17cf91);return _0x16b50a&&this['_users']['defineMe'](_0x17cf91['id']),_0x50d580['orderNumber']=this['_uniqueUsersCount']++,_0x50d580;}}class G extends _0x10d243{['_domEmitter']=new(_0x1dcc6c())();static get['requires'](){return[i];}static get['pluginName'](){return'UserMarkers';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['init'](){const _0x377e2d=this['editor'],_0x4f3d17=_0x377e2d['plugins']['get'](i);_0x377e2d['conversion']['for']('editingDowncast')['markerToElement']({'model':'user:position','view':(_0x17aefb,{writer:_0x10b77d})=>function(_0x499a84,_0x33c0e7,_0x3af51a,_0x570b62){const _0x2bbb61=_0x499a84['markerName']['split'](':')[0x2],_0x44f36d=_0x3af51a['getUserBySessionId'](_0x2bbb61);if(!_0x44f36d||_0x2bbb61===_0x3af51a['mySessionId'])return;if(!_0x570b62['model']['schema']['checkChild'](_0x499a84['markerRange']['start'],'$text'))return;const _0x11a0ea={'class':'ck-user__marker\x20'+_0x44f36d['color']['getMarkerClass'](),'data-name':_0x44f36d['name'],'data-session-id':_0x2bbb61},_0x2e41e6=_0x570b62['model']['markers']['get'](_0x499a84['markerName']),_0x5a675b=_0x2e41e6['getStart'](),_0x3d4ce5=_0x5a675b['nodeAfter'],_0x3a7fc1=_0x570b62['model']['schema'];if(_0x3d4ce5&&_0x3a7fc1['isObject'](_0x3d4ce5)&&_0x3a7fc1['isInline'](_0x3d4ce5)&&!_0x570b62['model']['markers']['get']('user:range:'+_0x2bbb61)['getRange']()['isCollapsed'])return;const _0x42d193=_0x5a675b['parent'];return _0x570b62['model']['schema']['isLimit'](_0x42d193)&&!_0x570b62['model']['hasContent'](_0x42d193)&&(_0x11a0ea['contenteditable']=!0x1),function(_0x488506,_0x124bda,_0xeee715){const _0x376274=_0x488506['createUIElement']('span',_0x124bda);return _0x488506['setCustomProperty']('userPositionMarker',!0x0,_0x376274),_0x376274['render']=function(_0x173721){const _0x48f0df=this['toDomElement'](_0x173721),_0x452400=document['createElement']('span');return _0x452400['classList']['add']('ck-user__marker-tooltip'),_0x452400['setAttribute']('contenteditable','false'),_0x452400['setAttribute']('spellcheck','false'),_0x452400['textContent']=_0xeee715['name'],_0x48f0df['innerHTML']='⁠<span\x20class=\x22ck-user__marker-line\x22\x20contenteditable=\x22false\x22><span\x20class=\x22ck-user__marker-dot\x22></span></span>'+_0x452400['outerHTML']+'⁠',_0x48f0df['addEventListener']('mouseenter',()=>{_0x48f0df['classList']['add']('ck-user__marker_hovered');}),_0x48f0df['addEventListener']('mouseleave',()=>{_0x48f0df['classList']['remove']('ck-user__marker_hovered');}),_0x48f0df;},_0x376274['isSimilar']=function(_0x422eee){return!(!this['getCustomProperty']('userPositionMarker')||!_0x422eee['getCustomProperty']('userPositionMarker')||this['getAttribute']('data-session-id')!=_0x422eee['getAttribute']('data-session-id'));},_0x376274;}(_0x33c0e7,_0x11a0ea,_0x44f36d);}(_0x17aefb,_0x10b77d,_0x4f3d17,_0x377e2d)}),_0x377e2d['conversion']['for']('editingDowncast')['markerToHighlight']({'model':'user:range','view':_0x5bda9f=>function(_0x55f522,_0x60a256){const _0x29d4c6=_0x55f522['markerName']['split'](':')[0x2];if(_0x29d4c6===_0x60a256['mySessionId'])return null;const _0x5a7c52=_0x60a256['getUserBySessionId'](_0x29d4c6);if(!_0x5a7c52)return{'id':_0x29d4c6,'classes':[]};return{'id':_0x29d4c6,'classes':['ck-user__selection',_0x5a7c52['color']['getSelectionClass']()],'attributes':{'data-session-id':_0x29d4c6},'priority':0x7d0+_0x5a7c52['orderNumber']};}(_0x5bda9f,_0x4f3d17)}),function(_0x12c2b8){const _0x4bb5c6=_0x12c2b8['model'],_0x2fe7e7=new Map(),_0x2167c5=_0x12c2b8['plugins']['get'](i);_0x4bb5c6['markers']['on']('update:user:range',(_0x63f55e,_0x3be018,_0xe7603e,_0x441c62)=>{if(!_0x441c62&&_0x2fe7e7['get'](_0x3be018['name']))return _0x2fe7e7['get'](_0x3be018['name'])['detach'](),void _0x2fe7e7['delete'](_0x3be018['name']);const _0x2521c4=_0x3be018['name']['split'](':')[0x2];if(_0x2521c4===_0x2167c5['mySessionId'])return;const _0xc71a92='user:position:'+_0x2521c4;_0x4bb5c6['markers']['has'](_0xc71a92)&&_0x12c2b8['editing']['reconvertMarker'](_0xc71a92),_0x3be018['on']('change:range',(_0x30fb35,_0x5b6bfd,_0x3390e2)=>{if('$graveyard'!=_0x5b6bfd['root']['rootName']&&'$graveyard'==_0x3be018['getRange']()['root']['rootName']&&!_0x2fe7e7['has'](_0x3be018['name'])){const _0x27cdf6=_0x4bb5c6['schema']['getNearestSelectionRange'](_0x3390e2['deletionPosition']);if(_0x27cdf6){const _0x12c48c=_0x3b6135['fromRange'](_0x27cdf6);_0x2fe7e7['set'](_0x3be018['name'],_0x12c48c),_0x12c48c['on']('change:range',(_0x47d0d9,_0x40808c,_0x493c44)=>{if('$graveyard'==_0x12c48c['root']['rootName']){const _0x5af767=_0x4bb5c6['schema']['getNearestSelectionRange'](_0x493c44['deletionPosition']);_0x5af767?(_0x12c48c['start']=_0x5af767['start'],_0x12c48c['end']=_0x5af767['end']):(_0x2fe7e7['delete'](_0x3be018['name']),_0x12c48c['detach']());}});}}});}),_0x4bb5c6['document']['on']('change',()=>{_0x2fe7e7['size']>0x0&&_0x4bb5c6['enqueueChange']({'isUndoable':!0x1},_0x224464=>{for(const [_0xb2d482,_0x303697]of _0x2fe7e7)'$graveyard'==_0x4bb5c6['markers']['get'](_0xb2d482)['getRange']()['root']['rootName']&&(te(_0xb2d482['split'](':')[0x2],_0x303697['toRange'](),_0x4bb5c6,_0x224464),_0x303697['detach']());_0x2fe7e7['clear']();});});}(_0x377e2d),this['_domEmitter']['listenTo'](_0x438e09['document'],'keydown',(_0xb65d00,{key:_0x35a8fc})=>{'Escape'===_0x35a8fc&&function(_0x2f3f86){_0x2f3f86['editing']['view']['change'](_0x2bfac9=>{for(const _0x4410be of _0x2f3f86['model']['markers']){if(!_0x4410be['name']['startsWith']('user:position'))continue;const _0x5e0e9e=_0x2f3f86['editing']['mapper']['markerNameToElements'](_0x4410be['name']);if(_0x5e0e9e){for(const _0x49d346 of _0x5e0e9e)_0x2bfac9['removeClass']('ck-user__marker_hovered',_0x49d346);}}});}(_0x377e2d);},{'useCapture':!0x0});}['afterInit'](){const _0x2c7e16=this['editor'],_0x488d8c=_0x2c7e16['commands']['get']('undo');_0x488d8c&&_0x2c7e16['model']['on']('applyOperation',(_0x39aeaf,_0x17ab04)=>{const _0x2a4ec5=_0x17ab04[0x0];if(!_0x2a4ec5['isDocumentOperation'])return;if('marker'!=_0x2a4ec5['type']||!_0x2a4ec5['name']['startsWith']('user:'))return;const _0x282157=_0x2a4ec5['batch'];_0x488d8c['_createdBatches']['has'](_0x282157)&&(_0x2a4ec5['newRange']=_0x2a4ec5['oldRange']?_0x2c7e16['model']['createRange'](_0x2a4ec5['oldRange']['start'],_0x2a4ec5['oldRange']['end']):null);},{'priority':'highest'});}['destroy'](){return this['_domEmitter']['stopListening'](),super['destroy']();}['createUserMarkerOperations'](){const _0x4bfb6e=this['editor'],_0xde02ba=_0x4bfb6e['model']['document'],_0x348c20=_0x4bfb6e['plugins']['get'](i);_0x4bfb6e['model']['enqueueChange']({'isUndoable':!0x1},_0x553c3d=>{const _0x3245ee='user:range:'+_0x348c20['mySessionId'],_0x218660='user:position:'+_0x348c20['mySessionId'],_0x426c4e=_0x4bfb6e['model']['markers']['has'](_0x3245ee);_0x4bfb6e['editing']['view']['hasDomSelection']?te(_0x348c20['mySessionId'],_0xde02ba['selection']['getFirstRange'](),_0x4bfb6e['model'],_0x553c3d):_0x426c4e&&(_0x553c3d['removeMarker'](_0x3245ee),_0x553c3d['removeMarker'](_0x218660));});}}function te(_0x2c6bb4,_0x2eda20,_0x2aebb1,_0xe968a1){const _0x3e8654='user:range:'+_0x2c6bb4,_0x22b806='user:position:'+_0x2c6bb4,_0x5dd850=_0x2eda20['getContainedElement']();let _0x23640d=_0x2eda20['start'];if(_0x5dd850&&_0x5dd850['is']('element','tableCell')){const _0x2c9f43=function(_0xbf2afe,_0x4be46e){for(const _0x2b8591 of _0xbf2afe['getPositions']())if(_0x4be46e['schema']['checkChild'](_0x2b8591,'$text'))return _0x2b8591;}(_0x2eda20,_0x2aebb1);_0x2c9f43&&(_0x23640d=_0x2c9f43,_0x2eda20=_0xe968a1['createRange'](_0x23640d));}const _0x20655e=_0xe968a1['createRange'](_0x23640d);_0x2aebb1['markers']['has'](_0x3e8654)?(_0xe968a1['updateMarker'](_0x3e8654,{'range':_0x2eda20}),_0xe968a1['updateMarker'](_0x22b806,{'range':_0x20655e})):(_0xe968a1['addMarker'](_0x3e8654,{'range':_0x2eda20,'usingOperation':!0x0}),_0xe968a1['addMarker'](_0x22b806,{'range':_0x20655e,'usingOperation':!0x0}));}function $(_0x4476c5,_0x140227,_0x372323){const _0x3877ad=_0x4476c5['t'],t=_0x4476c5['t'];switch(_0x140227){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 _0x3877ad({'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'},_0x372323);default:return'';}}let Q=0x1;class l extends _0x10d243{static ['CollaborativeEditingService']=/* #__PURE__ -- @preserve */
25
- ((()=>_0x59da2e)());['_offset'];['sessionId'];['serverHistory'];['_channelId'];['_service'];['_document'];['_compressor'];['_bufferedOperations'];['_knownOperations'];['_knownRootNames'];['_pendingAction'];['_hasSelectionChanged'];['_sendBufferedOperationsDelayId'];['_baseBufferDelay'];['_currentBufferDelay'];['_lastSyncedOperationId'];['_disconnectionOperations'];['_operationIdentifier'];static get['requires'](){return[n,i,G,_0x36e4c0,_0xaa642b,_0x5532a5];}static get['pluginName'](){return'RealTimeCollaborationClient';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}get['cloudDocumentVersion'](){return this['_lastServerVersion']+this['_offset'];}get['_lastServerVersion'](){return this['serverHistory']['version']-this['_offset'];}get['lastSyncVersion'](){const _0x474a71=this['serverHistory']['getOperations']();for(let _0x458ade=_0x474a71['length']-0x1;_0x458ade>=0x0;_0x458ade--){const _0x396c2f=_0x474a71[_0x458ade];if(!this['_disconnectionOperations']['has'](_0x396c2f))return _0x396c2f['baseVersion']+0x1-this['_offset'];}return 0x0;}constructor(_0x1fe1da){if(super(_0x1fe1da),this['_offset']=0x0,this['sessionId']=null,this['serverHistory']=new _0x4c7be5(),this['editor']['config']['define']('collaboration',{}),this['_channelId']=this['editor']['config']['get']('collaboration.channelId'),!this['_channelId'])throw new _0x310ec5('collaboration-missing-channelid',this);const _0x5c2730=_0x1fe1da['config']['get']('cloudServices.bundleVersion')||nt;this['_service']=new l['CollaborativeEditingService'](_0x5c2730,this['_channelId']),this['_document']=this['editor']['model']['document'],this['_compressor']=new _0x564650(),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 Z(this['_disconnectionOperations']);}['init'](){const _0x3cda53=this['editor'],_0x5f0d6c=_0x3cda53['plugins']['get'](_0xaa642b),_0x422296=_0x3cda53['plugins']['get'](n);this['listenTo'](_0x5f0d6c,'getOperationAuthor',(_0x32d915,_0xfbce2e)=>{const _0x494fc2=_0xfbce2e[0x0];_0x494fc2['_authorId']&&(_0x32d915['return']=_0x5f0d6c['getUser'](_0x494fc2['_authorId']),_0x32d915['stop']()),null===_0x494fc2['_authorId']&&(_0x32d915['return']=null,_0x32d915['stop']());},{'priority':'high'}),this['listenTo'](_0x3cda53['model']['document']['selection'],'change:range',(_0x27503f,_0x5c9ef7)=>{_0x5c9ef7['directChange']&&this['_refreshUserSelectionMarkers']();}),this['listenTo'](_0x3cda53['editing']['view'],'change:hasDomSelection',()=>{this['_refreshUserSelectionMarkers']();}),this['_initThrowingOnDataSet'](),_0x3cda53['model']['on']('applyOperation',(_0x506f58,_0x267ec5)=>{const _0x42573a=_0x267ec5[0x0];_0x42573a['isDocumentOperation']&&(this['_saveOperationInBuffer'](_0x42573a),this['_shouldSendUpdate']()&&this['_sendBufferedOperationsDelayed']());}),this['_setUpDataInit'](),this['bind']('_isEditingAllowed')['to'](_0x422296,'state',this,'_hasSynchronizationProblem',(_0x2ef156,_0x3e715a)=>'connected'===_0x2ef156&&!_0x3e715a),this['on']('change:_isEditingAllowed',()=>{this['_isEditingAllowed']?_0x3cda53['disableReadOnlyMode']('rtc-offline'):_0x3cda53['enableReadOnlyMode']('rtc-offline');}),this['_isEditingAllowed']?_0x3cda53['disableReadOnlyMode']('rtc-offline'):_0x3cda53['enableReadOnlyMode']('rtc-offline'),this['set']('_isConnected',!0x1);}async['reconnect'](){const _0x5c60c6=this['editor']['plugins']['get'](i),_0x1031f2=this['editor']['plugins']['get'](n);try{this['_isPendingUpdate']=!0x0,_0x5c60c6['unregister'](this['_channelId']);const _0x24109a=await this['_service']['reconnect'](_0x1031f2['connection'],this['lastSyncVersion']);await this['_handleReconnectionResponse'](_0x24109a)&&(this['_isPendingUpdate']=!0x1,this['_clearPendingAction']());const _0x433a62=await this['_service']['getConnectedSessions']();_0x5c60c6['register'](this['_channelId'],_0x433a62),this['_handleSendingSelectionMarkers'](),this['_isConnected']=!0x0;}catch(_0x1838a8){if(function(_0x524ea2){return'404'===_0x524ea2['code'];}(_0x1838a8)&&this['sessionId'])await this['_connectAfterSessionHasBeenFlushed']();else{if(function(_0x1b4480){return'409'===_0x1b4480['code'];}(_0x1838a8)){const _0x4fec23=$(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'](_0x4fec23);}else{if(!(_0x1838a8 instanceof X))throw _0x1838a8;this['_handleReconnectionError']();}}}}['destroy'](){const _0x2fb725=this['editor']['plugins']['get'](n),_0x4042a0=this['editor']['plugins']['get'](i);this['editor']['enableReadOnlyMode']('rtc-destroyed'),_0x4042a0['channelSessions']['has'](this['_channelId'])&&_0x4042a0['unregister'](this['_channelId']),_0x2fb725['removeFromReconnectionStack'](this),this['_disconnectService'](),super['destroy']();}async['_handleReconnectionResponse'](_0x1cb416){if(this['sessionId']!==_0x1cb416['sessionId']&&this['_lastSyncedOperationId']!==_0x1cb416['lastOperationId'])throw new X();return this['sessionId']=_0x1cb416['sessionId'],this['_handleServerResponse']([],{..._0x1cb416,'wereChangesApplied':!0x1,'data':_0x1cb416['data']},'reconnect');}async['_connectService'](_0x178725,_0x36ad2e=!0x1){const {connection:_0x517d6b}=this['editor']['plugins']['get'](n);l['CollaborativeEditingService']['getConnectedSessions'](_0x517d6b,this['_channelId'])['then'](_0xd06da3=>this['_initSessionsHandling'](_0xd06da3))['catch'](_0x3cbd56=>{this['_crash']('realtimecollaborationclient-init-session-connection-error',_0x3cbd56);}),this['listenTo'](this['_service'],'operationsReceived',this['_handleReceivedOperations']['bind'](this)),this['listenTo'](this['_service'],'error',(_0x27ca59,_0x4e6cff)=>{this['_crash']('realtimecollaborationclient-init-service-internal-error',_0x4e6cff);}),this['listenTo'](this['_service'],'disconnected',()=>{this['_isConnected']=!0x1;});const _0x4e60fb=this['_operationIdentifier']['getIdOfTheLastOperation'](_0x178725);this['_isPendingUpdate']=!0x0;const _0x1172a8=await this['_service']['connect'](_0x517d6b,this['_compressOperations'](_0x178725),_0x4e60fb);if(this['sessionId']=_0x1172a8['sessionId'],_0x36ad2e){if(!_0x1172a8['wereChangesApplied'])return void this['_handleReconnectionError']();this['_isPendingUpdate']=!0x1,this['_clearPendingAction'](),this['serverHistory']['reset'](),this['_offset']=_0x1172a8['offset'],this['serverHistory']['version']=this['_offset'],await this['_handleServerResponse'](_0x178725,_0x1172a8,'reconnection:\x20flushed\x20session');}else await this['_handleInitialConnectionData'](_0x1172a8,_0x178725);this['_handleSendingSelectionMarkers'](),this['_isConnected']=!0x0;}['_handleSendingSelectionMarkers'](){const _0x4c571f=this['editor']['plugins']['get'](i),_0x375905=this['editor']['plugins']['get'](G),_0x5ca50e=_0x4c571f['channelSessions']['get'](this['_channelId']);_0x5ca50e&&_0x5ca50e['length']>0x1?_0x375905['createUserMarkerOperations']():this['listenTo'](_0x4c571f,'sessionAdd:'+this['_channelId'],()=>{0x2===_0x4c571f['channelSessions']['get'](this['_channelId'])['length']&&_0x375905['createUserMarkerOperations']();});}async['_handleReceivedOperations'](_0x24b63f,_0x15471e,_0x2b699b,_0x4d6f34){if(!this['_isPendingUpdate']&&this['_document']['version']==_0x15471e){const _0x18f39e=this['_decompressOperations'](_0x2b699b,_0x4d6f34);await this['_fetchMissingUsers'](_0x18f39e),this['_handleExternalOperations'](_0x18f39e,_0x15471e,_0x2b699b['lastOperationId'])||this['_crash']('realtimecollaborationclient-init-service-incorrect-server-operation');}}async['_connectAfterSessionHasBeenFlushed'](){this['_disconnectService']();const {locale:_0x1d6c5a}=this['editor'];let _0x293074;try{_0x293074=await this['_service']['getDocumentDetails']();}catch{const _0x2f9ca0=$(_0x1d6c5a,'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'](_0x2f9ca0);}const _0x26bb8a=_0x293074['currentDocumentSession']||_0x293074['lastDocumentSession'];if(this['_lastSyncedOperationId']!==_0x26bb8a['lastOperationId']){const _0x233aa5=$(_0x1d6c5a,'The\x20last\x20saved\x20version\x20of\x20the\x20document\x20does\x20not\x20match\x20the\x20local\x20version.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.');return void this['_handleReconnectionError'](_0x233aa5);}await this['_connectService'](this['editor']['model']['document']['history']['getOperations'](),!0x0);}['_disconnectService'](){this['_service']['disconnect'](),this['_bufferedOperations']=[],clearTimeout(this['_sendBufferedOperationsDelayId']),this['stopListening'](this['_service']);}['_initSessionsHandling'](_0x45cf09){const _0x2398bc=this['editor']['plugins']['get'](i);this['listenTo'](_0x2398bc,'sessionAdd:'+this['_channelId'],(_0xe54135,{session:_0x50c3aa})=>{if(_0x50c3aa['id']===_0x2398bc['mySessionId']){_0xe54135['off']();const _0x50185a=this['editor']['plugins']['has']('CommentsOnly')&&this['editor']['plugins']['get']('CommentsOnly');let _0x195639=_0x50c3aa['permissions'];_0x50185a&&_0x50185a['isEnabled']&&(_0x195639=_0x195639['filter'](_0x463d6c=>'document:write'!==_0x463d6c)),this['editor']['plugins']['get']('Permissions')['setPermissions'](_0x195639,this['_channelId']);}}),_0x2398bc['register'](this['_channelId'],_0x45cf09);}['_initThrowingOnDataSet'](){const _0x41bb26=this['editor']['data']['set'];this['editor']['data']['set']=(..._0x3ff1ad)=>{if(!_0x3ff1ad[_0x3ff1ad['length']-0x1]['suppressErrorInCollaboration'])throw new _0x310ec5('realtimecollaborationclient-editor-setdata-and-editor-data-set-are-forbidden-in-real-time-collaboration',this);_0x41bb26['apply'](this['editor']['data'],_0x3ff1ad);};}['_setUpDataInit'](){this['editor']['data']['on']('init',(_0x4977a5,[_0x1b90bd])=>{if(this['_document']['version'])throw new _0x310ec5('realtimecollaborationclient-init-document-already-initialized',this);_0x4977a5['stop'](),this['_setPendingAction']();const _0x48244b=this['editor']['config']['get']('rootsAttributes'),_0xcd0037=this['_getOperationsFromInitData'](_0x1b90bd,_0x48244b);0x0==_0xcd0037['length']&&_0xcd0037['push'](new _0x103a01(0x0)),_0x4977a5['return']=this['_connectService'](_0xcd0037)['then'](()=>{this['editor']['plugins']['get'](n)['addToReconnectionStack'](this),this['editor']['data']['fire']('ready');})['catch'](_0x19912a=>this['_crash']('realtimecollaborationclient-init-connection-failed',_0x19912a))['finally'](()=>this['_clearPendingAction']());},{'priority':'high'}),this['editor']['on']('loadRoot',async(_0x16dcfd,[_0x4210e7,_0x2fda0d])=>{_0x16dcfd['stop']();const _0x50ec0b=this['editor']['model']['document']['getRoot'](_0x4210e7);if(!this['_knownRootNames']['has'](_0x4210e7)){const _0x2c75b2=_0x2fda0d&&_0x2fda0d['data']?_0x2fda0d['data']:'',_0x4c1b32=_0x2fda0d&&_0x2fda0d['attributes']?_0x2fda0d['attributes']:{};await this['_loadRoot'](_0x4210e7,_0x2c75b2,_0x4c1b32);}this['editor']['model']['enqueueChange']({'isUndoable':!0x1},()=>{_0x50ec0b['_isLoaded']=!0x0,this['editor']['model']['document']['differ']['_bufferRootLoad'](_0x50ec0b);});},{'priority':'high'});}async['_fetchMissingUsers'](_0x6b99ec){const _0x1eeb16=this['editor']['plugins']['get'](_0xaa642b),{connection:_0x1f91bb}=this['editor']['plugins']['get'](n),_0x12e115=new Set();for(const _0xf067a4 of _0x6b99ec){const _0x5502fa=_0xf067a4['_authorId'];_0x5502fa&&!_0x1eeb16['getUser'](_0x5502fa)&&_0x12e115['add'](_0x5502fa);}if(0x0===_0x12e115['size'])return;const _0x14c5bc=await ct['getMany'](_0x1f91bb,Array['from'](_0x12e115));for(const _0x29e753 of _0x14c5bc)_0x1eeb16['getUser'](_0x29e753['id'])||_0x1eeb16['addUser'](_0x29e753);}['_getOperationsFromInitData'](_0x46db90,_0x21a634={}){const _0x5913a9=this['editor']['model'],_0x163407=[];let _0x3e4934=0x0;const _0x3ae3d0='string'==typeof _0x46db90?{'main':_0x46db90}:_0x46db90;for(const _0x537a3a of Object['keys'](_0x3ae3d0)){if(!this['_document']['roots']['has'](_0x537a3a))throw new _0x310ec5('realtimecollaborationclient-init-non-existent-root',this);const _0x430630=this['editor']['data']['parse'](_0x3ae3d0[_0x537a3a]),_0x174a27=this['_document']['getRoot'](_0x537a3a),_0x1ed2cc=new _0x8498be(_0x5913a9['createPositionAt'](_0x174a27,0x0),_0x430630,_0x3e4934++);_0x163407['push'](_0x1ed2cc);for(const [_0x4106a9,_0x31eee5]of _0x430630['markers']){const _0x32f5e5=_0x5913a9['createRange'](_0x5913a9['createPositionFromPath'](_0x174a27,_0x31eee5['start']['path']['slice']()),_0x5913a9['createPositionFromPath'](_0x174a27,_0x31eee5['end']['path']['slice']())),_0x3ff8d5=new _0x5d25f8(_0x4106a9,null,_0x32f5e5,_0x5913a9['markers'],!0x0,_0x3e4934++);_0x163407['push'](_0x3ff8d5);}}if(_0x21a634)for(const [_0x290c6f,_0x568817]of Object['entries'](_0x21a634)){const _0x467443=_0x5913a9['document']['getRoot'](_0x290c6f);if(!_0x467443)throw new _0x310ec5('multi-root-editor-root-attributes-no-root',null);for(const [_0x30e7fa,_0x10801b]of Object['entries'](_0x568817))if(null!==_0x10801b){const _0x5df43b=new _0x11397f(_0x467443,_0x30e7fa,null,_0x10801b,_0x3e4934++);_0x163407['push'](_0x5df43b);}}return _0x163407;}async['_loadRoot'](_0x4ce8ac,_0x40cef8,_0x1aeda1){this['_getOperationsFromInitData']({[_0x4ce8ac]:_0x40cef8},{[_0x4ce8ac]:_0x1aeda1})['forEach']((_0x55832a,_0x115766)=>{_0x55832a['baseVersion']=this['_document']['version']+_0x115766,_0x55832a['_isInit']=!0x0,this['_saveOperationInBuffer'](_0x55832a);}),this['_sendBufferedOperationsDelayed'](),await this['_waitUntilSynced']();}async['_handleInitialConnectionData'](_0x28c9a9,_0x4e323d){let _0x3f14dc;this['_offset']=_0x28c9a9['offset'];const _0x329079=_0x28c9a9['wereChangesApplied']&&!_0x28c9a9['initData'],_0x4f60ef=_0x329079?0x0:_0x28c9a9['data']['baseVersion'];if(_0x4e323d['forEach'](_0xc13205=>{_0xc13205['_isInit']=!0x0,_0xc13205['createdAt']=_0x28c9a9['sessionCreatedAt'],_0xc13205['_authorId']=null;}),_0x329079)_0x3f14dc=_0x4e323d,this['_applyOperationsSet'](_0x3f14dc,_0x329079);else{if(_0x28c9a9['initData']){const _0x36a23a=this['_getOperationsFromInitData'](_0x28c9a9['initData']);this['_document']['history']['version']=-_0x36a23a['length'],_0x36a23a['forEach'](_0x42ea25=>{_0x42ea25['baseVersion']-=_0x36a23a['length'],_0x42ea25['createdAt']=_0x28c9a9['sessionCreatedAt'],_0x42ea25['_isInit']=!0x0,_0x42ea25['_authorId']=null;}),this['_applyOperationsSet'](_0x36a23a,!0x0),this['serverHistory']['version']=-_0x36a23a['length']+this['_offset'],this['_updateServerHistory'](_0x36a23a);}this['_document']['history']['version']=_0x4f60ef,_0x3f14dc=this['_decompressOperations'](_0x28c9a9['data'],_0x28c9a9['metadata']),await this['_fetchMissingUsers'](_0x3f14dc),this['_applyOperationsSet'](_0x3f14dc,_0x329079);}_0x28c9a9['lastOperationId']&&(this['_operationIdentifier']['setIdForTheLastOperation'](_0x3f14dc,_0x28c9a9['lastOperationId']),this['_lastSyncedOperationId']=_0x28c9a9['lastOperationId']),this['serverHistory']['version']=_0x4f60ef+this['_offset'],this['_updateServerHistory'](_0x3f14dc),_0x4e323d['filter'](_0x3361c4=>{const _0x44f3ef=this['_getAffectedRoot'](_0x3361c4);return _0x44f3ef&&!this['_knownRootNames']['has'](_0x44f3ef);})['forEach']((_0x236e8a,_0x2b0991)=>{_0x236e8a['baseVersion']=this['_document']['version']+_0x2b0991,this['_saveOperationInBuffer'](_0x236e8a);}),this['_shouldSendUpdate']()?(this['_currentBufferDelay']=0x0,this['_sendBufferedOperationsDelayed'](!0x0),await this['_waitUntilSynced']()):(this['_isPendingUpdate']=!0x1,this['_clearPendingAction']());}['_crash'](_0x1189f0,_0x423001){const _0x5c41cc=_0x423001&&_0x423001['message'];if(_0x5c41cc&&_0x5c41cc['startsWith']('realtimecollaborationclient'))throw _0x423001;const _0x379f12=this['editor']['plugins']['get'](n);throw this['_isPendingUpdate']=!0x0,_0x379f12['disconnect'](),this['editor']['enableReadOnlyMode']('realtimecollaborationclient-error'),new _0x310ec5(_0x1189f0,this['editor'],_0x5c41cc?{'originalError':_0x5c41cc}:void 0x0);}['_saveOperationInBuffer'](_0x473ff9){this['_knownOperations']['has'](_0x473ff9)||(this['_knownOperations']['add'](_0x473ff9),this['_bufferedOperations']['push'](_0x473ff9),this['_pendingAction']||'marker'==_0x473ff9['type']&&!_0x473ff9['affectsData']||this['_setPendingAction']());}['_sendBufferedOperationsDelayed'](_0x53a237=!0x1){!_0x53a237&&this['_isPendingUpdate']||(this['_isPendingUpdate']=!0x0,clearTimeout(this['_sendBufferedOperationsDelayId']),this['_sendBufferedOperationsDelayId']=setTimeout(()=>{this['_sendBufferedOperations']()['then'](_0x31a0bf=>{_0x31a0bf&&(this['_clearPendingAction'](),this['_isPendingUpdate']=!0x1);})['catch'](_0x3586bc=>{this['_clearPendingAction'](),this['_isPendingUpdate']=!0x1,function(_0x5175cd){return _0x5175cd['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x5175cd['message']['startsWith']('cloud-services-internal-error:\x20Collaborative\x20Editing\x20Service\x20is\x20not\x20connected.')||_0x5175cd['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}(_0x3586bc)||this['_crash'](_0x3586bc['message'],_0x3586bc);});},this['_currentBufferDelay']));}['_waitUntilSynced'](){return new Promise(_0x31b526=>{this['on']('change:_isPendingUpdate',()=>{_0x31b526();});});}async['_sendBufferedOperations'](){const _0x5381f9=this['editor']['plugins']['get'](G);if(this['_shouldSendSelectionUpdate']()&&(_0x5381f9['createUserMarkerOperations'](),this['_hasSelectionChanged']=!0x1),!this['_shouldSendUpdate']())return!0x0;const _0x149a5c=[...this['_bufferedOperations']];for(const _0x2bd7c7 of _0x149a5c)_0x2bd7c7['wasUndone']=this['_document']['history']['isUndoneOperation'](_0x2bd7c7);const _0x268332=this['_operationIdentifier']['getIdOfTheLastOperation'](_0x149a5c),_0x28b8d3=Q++,_0x3272d9=this['_compressOperations'](_0x149a5c),_0x4e9761=await this['_service']['sendOperations'](_0x3272d9,_0x3272d9['baseVersion'],_0x268332);try{return await this['_handleServerResponse'](_0x149a5c,_0x4e9761,_0x28b8d3);}catch(_0x22e03b){return this['_crash']('realtimecollaborationclient-sendbufferedoperations',_0x22e03b);}}async['_handleServerResponse'](_0x509e3d,_0x49f269,_0x2d009a){if('error'in _0x49f269)throw _0x49f269['error'];let _0x3d2711=!0x1;if(_0x49f269['wereChangesApplied']){_0x49f269['lastOperationId']&&(this['_lastSyncedOperationId']=_0x49f269['lastOperationId']),this['_bufferedOperations']=this['_bufferedOperations']['filter'](_0x894f9e=>!_0x509e3d['includes'](_0x894f9e));for(const _0x5375e5 of _0x509e3d)_0x5375e5['createdAt']='lastOperationAcceptedAt'in _0x49f269&&_0x49f269['lastOperationAcceptedAt']||void 0x0;Y(_0x509e3d,_0x49f269['version']-_0x509e3d['length']),this['_updateServerHistory'](_0x509e3d);const _0x58f768=_0x509e3d['filter'](_0x26fea4=>{if(!_0x26fea4['_isInit'])return!0x1;const _0x2e8b08=this['_getAffectedRoot'](_0x26fea4);return _0x2e8b08&&!this['_knownRootNames']['has'](_0x2e8b08);});Y(_0x58f768,this['_document']['version']),this['_applyOperationsSet'](_0x58f768),_0x3d2711=!0x0,this['_currentBufferDelay']=this['_baseBufferDelay'];}else{const _0x30a760=this['_decompressOperations'](_0x49f269['data'],_0x49f269['metadata'])['filter'](_0xa96fdc=>_0xa96fdc['baseVersion']>=this['_lastServerVersion']);_0x30a760['forEach'](_0x1e55cd=>this['_addKnownRoot'](_0x1e55cd)),this['_bufferedOperations']=this['_bufferedOperations']['filter'](_0x568717=>!_0x568717['_isInit']||!this['_knownRootNames']['has'](this['_getAffectedRoot'](_0x568717))),this['_bufferedOperations']['length']&&Y(this['_bufferedOperations'],this['_bufferedOperations'][0x0]['baseVersion']),await this['_fetchMissingUsers'](_0x30a760),_0x3d2711=this['_handleExternalOperations'](_0x30a760,_0x49f269['version'],_0x49f269['lastOperationId']),this['_currentBufferDelay']=Math['round'](this['_currentBufferDelay']/0x2);}return _0x3d2711?!this['_shouldSendUpdate']()||(this['_sendBufferedOperationsDelayed'](!0x0),!0x1):this['_crash']('realtimecollaborationclient-handleserverresponse');}['_handleExternalOperations'](_0x7b036b,_0xf007bf,_0xcc2165){try{const _0x4a3836={'document':this['_document'],'useRelations':!0x1,'padWithNoOps':!0x0},{operationsA:_0x189316,operationsB:_0x5aca0c,originalOperations:_0x74229}=_0x58190b(_0x7b036b,this['_bufferedOperations'],_0x4a3836);Y(_0x189316,this['_document']['version']),Y(_0x5aca0c,_0xf007bf);for(const _0x50d283 of _0x189316){const _0x283b4c=_0x74229['get'](_0x50d283);_0x50d283['_authorId']=_0x283b4c?_0x283b4c['_authorId']:null;}_0xcc2165&&(this['_operationIdentifier']['setIdForTheLastOperation'](_0x7b036b,_0xcc2165),this['_lastSyncedOperationId']=_0xcc2165),this['_bufferedOperations']=[..._0x5aca0c],this['_applyOperationsSet'](_0x189316),this['_updateServerHistory'](_0x7b036b);}catch(_0x35032f){return console['error'](_0x35032f),!0x1;}return!0x0;}['_applyOperationsSet'](_0x5c3cb6,_0x167ca0=!0x1){this['editor']['model']['enqueueChange']({'isUndoable':!0x1,'isLocal':!0x1},_0x42f3d8=>{for(const _0x5ca165 of _0x5c3cb6)this['_knownOperations']['add'](_0x5ca165),this['_addKnownRoot'](_0x5ca165),_0x42f3d8['batch']['addOperation'](_0x5ca165),this['editor']['model']['applyOperation'](_0x5ca165);});}['_addKnownRoot'](_0x5c2e9c){const _0x3f55b8=this['_getAffectedRoot'](_0x5c2e9c);_0x3f55b8&&this['_knownRootNames']['add'](_0x3f55b8);}['_getAffectedRoot'](_0x72d56c){let _0x1ef337,_0x437297;switch(_0x72d56c['type']){case'insert':_0x1ef337=_0x72d56c['position']['root'];break;case'marker':if(_0x437297=_0x72d56c['newRange'],!_0x437297)return null;_0x1ef337=_0x437297['root'];break;case'addRootAttribute':_0x1ef337=_0x72d56c['root'];break;case'addRoot':_0x1ef337=_0x72d56c['affectedSelectable'];break;case'move':_0x1ef337=_0x72d56c['targetPosition']['root'];break;default:return null;}return _0x1ef337['rootName'];}['_updateServerHistory'](_0x97ab1e){_0x97ab1e['forEach'](_0x52e576=>{const _0x30ec1d=_0x52e576['clone']();_0x30ec1d['_authorId']=_0x52e576['_authorId'],_0x30ec1d['_isInit']=!!_0x52e576['_isInit'],_0x30ec1d['createdAt']=_0x52e576['createdAt'],_0x30ec1d['baseVersion']+=this['_offset'],_0x52e576['_isDisconnection']&&this['_disconnectionOperations']['add'](_0x30ec1d),this['serverHistory']['addOperation'](_0x30ec1d);});}['_handleReconnectionError'](_0xc88251){const _0x204a0b=this['editor']['plugins']['get']('Notification'),_0x477c60=this['editor']['locale'];_0xc88251||(_0xc88251=$(_0x477c60,'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.')),_0x204a0b['showWarning'](_0xc88251,{'title':$(_0x477c60,'Synchronization\x20issue'),'namespace':'real-time-collaboration'}),this['_hasSynchronizationProblem']=!0x0,clearTimeout(this['_sendBufferedOperationsDelayId']),this['_bufferedOperations']=[],this['editor']['plugins']['get'](n)['disconnect']();}['_setPendingAction'](){this['_pendingAction']||(this['_pendingAction']=this['editor']['plugins']['get'](_0x36e4c0)['add']($(this['editor']['locale'],'PENDING_ACTION_SENDING_DATA')));}['_clearPendingAction'](){this['_pendingAction']&&(this['editor']['plugins']['get'](_0x36e4c0)['remove'](this['_pendingAction']),this['_pendingAction']=null);}['_compressOperations'](_0x219ecd){const _0x168286=_0x219ecd['map'](_0x2aa882=>_0x2aa882['toJSON']());return this['_compressor']['compress'](_0x168286);}['_decompressOperations'](_0x41ba75,_0x5d4b8e){return this['_compressor']['decompress'](_0x41ba75)['map']((_0x3efe5e,_0x4a516f)=>{const _0x5ce286='init'==_0x5d4b8e[_0x4a516f]['type'];if('InsertOperation'==_0x3efe5e['__className']){const _0x4dfde6=_0x3efe5e['position']['root'];!this['_document']['getRoot'](_0x4dfde6)&&(this['_document']['createRoot']('$root',_0x4dfde6)['_isAttached']=!0x1);}const _0x2d1e3b=_0x1b43cd['fromJSON'](_0x3efe5e,this['_document']);return _0x2d1e3b['wasUndone']=_0x3efe5e['wasUndone'],_0x2d1e3b['_isInit']=_0x5ce286,_0x2d1e3b['_authorId']=_0x5ce286?null:_0x5d4b8e[_0x4a516f]['userId'],_0x2d1e3b['_isDisconnection']='cs:removeUser'===_0x5d4b8e[_0x4a516f]['type'],_0x2d1e3b['createdAt']=_0x5d4b8e[_0x4a516f]['createdAt'],_0x2d1e3b;});}['_refreshUserSelectionMarkers'](){this['_hasSelectionChanged']=!0x0,this['_shouldSendSelectionUpdate']()?this['_sendBufferedOperationsDelayed']():this['_hasSelectionChanged']=!0x1;}['_shouldSendSelectionUpdate'](){const _0x41d502=this['editor']['plugins']['get'](i)['channelSessions']['get'](this['_channelId']);return!this['editor']['isReadOnly']&&!!_0x41d502&&_0x41d502['length']>0x1&&this['_hasSelectionChanged'];}['_shouldSendUpdate'](){return this['_bufferedOperations']['length']>0x0||this['_shouldSendSelectionUpdate']();}}class X extends Error{}function Y(_0x39b0a9,_0xf353ef){for(const _0x1c283b of _0x39b0a9)_0x1c283b['baseVersion']=_0xf353ef++;}class Z{['_ignoredOperations'];['_operationToId'];constructor(_0xf99b7c){this['_ignoredOperations']=_0xf99b7c,this['_operationToId']=new WeakMap();}['getIdOfTheLastOperation'](_0x30c175){let _0x91e74a=_0x30c175['length'];for(;_0x91e74a--;){const _0x1f6b0c=_0x30c175[_0x91e74a];if(!this['_ignoredOperations']['has'](_0x1f6b0c)){if(!this['_operationToId']['has'](_0x1f6b0c)){const _0x5cebdd=_0x210547()['slice'](0x1,0x12);this['_operationToId']['set'](_0x1f6b0c,_0x5cebdd);}return this['_operationToId']['get'](_0x1f6b0c);}}}['setIdForTheLastOperation'](_0x3bc270,_0x5d9718){if(!_0x5d9718)return;let _0x4bdbdd=_0x3bc270['length'];for(;_0x4bdbdd--;){const _0x6ded86=_0x3bc270[_0x4bdbdd];this['_ignoredOperations']['has'](_0x6ded86)||this['_operationToId']['set'](_0x6ded86,_0x5d9718);}}}class a extends _0x10d243{static get['requires'](){return[l];}static get['pluginName'](){return'RealTimeCollaborativeEditing';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}class s extends _0x4d3b80{static ['CommentsService']=/* #__PURE__ -- @preserve */
26
- ((()=>_0x58ad7c)());['_services'];static get['requires'](){return[n,'CommentsRepository',i,_0xaa642b];}static get['pluginName'](){return'CloudServicesCommentsAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x2fb533){super(_0x2fb533),this['_services']=new Map();}async['init'](){const _0x99ac4=this['context'],_0x4adaad=_0x99ac4['plugins']['get']('CommentsRepository');if(_0x99ac4['plugins']['get'](n)['addToReconnectionStack'](this),_0x4adaad['adapter']={'addCommentThread':async({channelId:_0x405d8c,threadId:_0x2b96d9,comments:_0x17730a,resolvedAt:_0x1d1bd6,resolvedBy:_0x25dfe7,context:_0x753089,attributes:_0x58cf56})=>{const _0x15fe7a=await this['_getService'](_0x405d8c)['addCommentThread']({'commentThreadId':_0x2b96d9,'comments':_0x17730a['map'](_0x5986f5=>function(_0x5ce39e,_0x67e921,_0x5146e0){return{'commentThreadId':_0x5146e0,'commentId':_0x5ce39e['commentId'],'userId':_0x5ce39e['authorId'],'content':_0x5ce39e['content'],'documentId':_0x67e921,'createdAt':_0x5ce39e['createdAt'],'attributes':_0x5ce39e['attributes']||{}};}(_0x5986f5,_0x405d8c,_0x2b96d9)),'resolvedAt':_0x1d1bd6,'resolvedBy':_0x25dfe7,'context':_0x753089,'attributes':_0x58cf56})['catch'](at);return{'threadId':_0x15fe7a['commentThreadId'],'comments':_0x15fe7a['comments']};},'getCommentThread':async({channelId:_0x50fc95,threadId:_0x18506b})=>{const _0x230d81=await this['_getService'](_0x50fc95)['getCommentThread'](_0x18506b)['catch'](at);return _0x230d81['deletedAt']?null:(await this['_fetchMissingUsersForThreads']([_0x230d81]),{'threadId':_0x230d81['commentThreadId'],'comments':_0x230d81['comments']['map'](B),'context':_0x230d81['context'],'resolvedAt':_0x230d81['resolvedAt'],'resolvedBy':_0x230d81['resolvedBy'],'attributes':_0x230d81['attributes']||{}});},'updateCommentThread':async({channelId:_0x96cf79,threadId:_0x2f8f39,context:_0x4d0a52,unlinkedAt:_0x555a91,attributes:_0x5d5196})=>this['_getService'](_0x96cf79)['updateCommentThread']({'commentThreadId':_0x2f8f39,'context':_0x4d0a52,'attributes':_0x5d5196,'unlinkedAt':_0x555a91})['catch'](F)['catch'](at),'resolveCommentThread':async({channelId:_0x43c2f1,threadId:_0x18592d})=>{const _0x12d24c=await this['_getService'](_0x43c2f1)['resolveCommentThread'](_0x18592d)['catch'](F)['catch'](at);return{'threadId':_0x12d24c['commentThreadId'],'resolvedAt':_0x12d24c['resolvedAt'],'resolvedBy':_0x12d24c['resolvedBy']};},'reopenCommentThread':async({channelId:_0x1974c4,threadId:_0x2a495a})=>this['_getService'](_0x1974c4)['reopenCommentThread'](_0x2a495a)['catch'](F)['catch'](at),'removeCommentThread':({channelId:_0x19f9b4,threadId:_0x180dde})=>this['_getService'](_0x19f9b4)['removeCommentThread'](_0x180dde)['catch'](F)['catch'](at),'addComment':({channelId:_0x16e53d,threadId:_0x2ba195,commentId:_0x120b09,content:_0x9514d9,attributes:_0x2f6d0d})=>this['_getService'](_0x16e53d)['addComment'](_0x2ba195,_0x120b09,_0x9514d9,_0x2f6d0d)['catch'](at),'updateComment':({channelId:_0x407be3,threadId:_0x2e669e,commentId:_0x39c0cd,content:_0xaceab1,attributes:_0xd8fe3c})=>this['_getService'](_0x407be3)['updateComment'](_0x2e669e,_0x39c0cd,_0xaceab1,_0xd8fe3c)['catch'](F)['catch'](at),'removeComment':({channelId:_0x1c1139,threadId:_0x1b5669,commentId:_0x4bb676})=>this['_getService'](_0x1c1139)['removeComment'](_0x1b5669,_0x4bb676)['catch'](F)['catch'](at)},_0x99ac4 instanceof _0x1146c8){const _0x190672=_0x99ac4['config']['get']('collaboration.channelId'),_0x4011a5=_0x99ac4['plugins']['get'](i);await this['_setUpService'](_0x190672);const _0xe89cd7=await this['_services']['get'](_0x190672)['getConnectedSessions']();this['listenTo'](_0x4011a5,'sessionAdd:'+_0x190672,(_0x28baa2,{session:_0x3bc231})=>{_0x3bc231['id']===_0x4011a5['mySessionId']&&(_0x28baa2['off'](),this['context']['plugins']['get']('Permissions')['setPermissions'](_0x3bc231['permissions'],_0x190672));}),_0x4011a5['register'](_0x190672,_0xe89cd7);}}async['_setUpService'](_0x58e9ff){if(this['_services']['has'](_0x58e9ff))throw new _0x310ec5('cloudservicescommentsadapter-connect-already-connected',null,{'channelId':_0x58e9ff});const _0x180a25=this['context']['plugins']['get']('CommentsRepository'),_0x4ee1d4=new s['CommentsService'](_0x58e9ff);this['_services']['set'](_0x58e9ff,_0x4ee1d4),this['listenTo'](_0x4ee1d4,'commentThreadAdded',(_0x4a2071,_0x4113e7)=>{const {commentThreadId:_0x569ef9,documentId:_0x2da9b9,context:_0x361da2,attributes:_0x18edc5,resolvedAt:_0x4b1f53,resolvedBy:_0x1382df,comments:_0x352412}=_0x4113e7;_0x180a25['getCommentThread'](_0x569ef9)||_0x180a25['addCommentThread']({'threadId':_0x569ef9,'channelId':_0x2da9b9,'comments':_0x352412?_0x352412['map'](B):[],'context':_0x361da2,'attributes':_0x18edc5,'resolvedAt':_0x4b1f53,'resolvedBy':_0x1382df,'isFromAdapter':!0x0});}),this['listenTo'](_0x4ee1d4,'commentThreadUpdated',(_0x2085ba,{commentThreadId:_0x24c583,documentId:_0x1ec6a2,context:_0x32739d,unlinkedAt:_0x1b4033,attributes:_0x304c9d})=>{_0x180a25['getCommentThread'](_0x24c583)&&_0x180a25['updateCommentThread']({'threadId':_0x24c583,'channelId':_0x1ec6a2,'context':_0x32739d,'unlinkedAt':_0x1b4033,'attributes':_0x304c9d,'isFromAdapter':!0x0});}),this['listenTo'](_0x4ee1d4,'commentThreadResolved',(_0x20204c,{commentThreadId:_0x23c007,resolvedBy:_0x1cbc77,resolvedAt:_0x3bccf5})=>{const _0x16208f=_0x180a25['getCommentThread'](_0x23c007);_0x16208f&&_0x16208f['resolve']({'resolvedBy':_0x1cbc77,'resolvedAt':_0x3bccf5,'isFromAdapter':!0x0});}),this['listenTo'](_0x4ee1d4,'commentThreadReopened',(_0x2ae3be,{commentThreadId:_0x5d736c})=>{const _0x4ae748=_0x180a25['getCommentThread'](_0x5d736c);_0x4ae748&&_0x4ae748['reopen']({'isFromAdapter':!0x0});}),this['listenTo'](_0x4ee1d4,'commentThreadRemoved',(_0x454e5c,{commentThreadId:_0x478b8d})=>{const _0x43f17f=_0x180a25['getCommentThread'](_0x478b8d);_0x43f17f&&_0x43f17f['remove']({'isFromAdapter':!0x0});}),this['listenTo'](_0x4ee1d4,'commentAdded',(_0x1d90ce,_0x2c34f4)=>{const _0x175db7=_0x2c34f4['commentThreadId'],_0x43b889=_0x180a25['getCommentThread'](_0x175db7);_0x43b889&&_0x43b889['addComment']({...B(_0x2c34f4),'isFromAdapter':!0x0});}),this['listenTo'](_0x4ee1d4,'commentUpdated',(_0x5c3b41,{commentThreadId:_0x336140,commentId:_0x2aeb33,content:_0x266795,attributes:_0x2bd146})=>{const _0x174afa=_0x180a25['getCommentThread'](_0x336140);if(_0x174afa){const _0x222cdb=_0x174afa['getComment'](_0x2aeb33);_0x222cdb&&_0x222cdb['update']({'content':_0x266795,'attributes':_0x2bd146,'isFromAdapter':!0x0});}}),this['listenTo'](_0x4ee1d4,'commentRemoved',(_0x4aea55,{commentThreadId:_0x54003d,commentId:_0x527f0e})=>{const _0xb65451=_0x180a25['getCommentThread'](_0x54003d);if(_0xb65451){const _0x228588=_0xb65451['getComment'](_0x527f0e);_0x228588&&_0x228588['remove']({'isFromAdapter':!0x0});}}),await this['_connectService'](_0x58e9ff);}['destroy'](){if(this['context']instanceof _0x1146c8){const _0x3fc521=this['context']['config']['get']('collaboration.channelId');this['_terminateService'](_0x3fc521);}}['_terminateService'](_0x2d462c){if(!this['_services']['has'](_0x2d462c))throw new _0x310ec5('cloudservicescommentsadapter-disconnect-not-exist',null,{'channelId':_0x2d462c});this['_getService'](_0x2d462c)['disconnect'](),this['_services']['delete'](_0x2d462c);}async['reconnect'](){for(const _0x51875c of this['_services']['keys']())await this['_connectService'](_0x51875c);if(this['context']instanceof _0x1146c8){const _0x1dd591=this['context']['config']['get']('collaboration.channelId'),_0x5642d9=this['context']['plugins']['get'](i);_0x5642d9['unregister'](_0x1dd591);const _0xd40ef7=await this['_services']['get'](_0x1dd591)['getConnectedSessions']();_0x5642d9['register'](_0x1dd591,_0xd40ef7);}}async['_connectService'](_0x26cc64){const {connection:_0x1e87a5}=this['context']['plugins']['get'](n),_0x2d974a=this['context']['plugins']['get']('CommentsRepository'),_0x267f0f=this['_services']['get'](_0x26cc64),_0x197775=await _0x267f0f['connect'](_0x1e87a5);await this['_fetchMissingUsersForThreads'](_0x197775);const _0x1e7f04=new Set(Array['from'](_0x2d974a['getCommentThreads']({'channelId':_0x26cc64}),_0x26dcf7=>_0x26dcf7['id']));for(const _0x1f9119 of _0x197775)_0x1f9119['deletedAt']||_0x1e7f04['delete'](_0x1f9119['commentThreadId']);for(const _0x1607fa of _0x1e7f04)_0x2d974a['getCommentThread'](_0x1607fa)['remove']({'isFromAdapter':!0x0});for(const _0x22747a of _0x197775){let _0x58badc=_0x2d974a['getCommentThread'](_0x22747a['commentThreadId']);const {commentThreadId:_0x56722b,context:_0x429e0e,attributes:_0x50600d,resolvedBy:_0x15a8bf,resolvedAt:_0x4857d7,unlinkedAt:_0x5d10b1,deletedAt:_0x402941}=_0x22747a;if(_0x402941)continue;_0x58badc||(_0x58badc=_0x2d974a['addCommentThread']({'channelId':_0x26cc64,'threadId':_0x56722b,'context':_0x429e0e,'attributes':_0x50600d||{},'resolvedBy':_0x15a8bf,'resolvedAt':_0x4857d7,'unlinkedAt':_0x5d10b1,'isFromAdapter':!0x0}));const _0x594a2a=new Set(Array['from'](_0x58badc['comments'],_0x4d5a51=>_0x4d5a51['id']));for(const _0x1c244f of _0x22747a['comments'])_0x594a2a['delete'](_0x1c244f['commentId']);for(const _0x169dde of _0x594a2a)_0x58badc['getComment'](_0x169dde)['remove']({'isFromAdapter':!0x0});for(const _0x1de1bb of _0x22747a['comments']){const _0x45bcd8=_0x58badc['getComment'](_0x1de1bb['commentId']);_0x45bcd8?_0x45bcd8['content']!==_0x1de1bb['content']&&_0x45bcd8['update']({'content':_0x1de1bb['content'],'isFromAdapter':!0x0}):_0x58badc['addComment'](Object['assign'](B(_0x1de1bb),{'isFromAdapter':!0x0}));}}}['_getService'](_0x527e8b){if(!this['_services']['has'](_0x527e8b))throw new _0x310ec5('cloudservicescommentsadapter-service-not-exist',null,{'channelId':_0x527e8b});return this['_services']['get'](_0x527e8b);}async['_fetchMissingUsersForThreads'](_0x4fff87){const _0x5e1493=this['context']['plugins']['get'](_0xaa642b),{connection:_0x3ef9e8}=this['context']['plugins']['get'](n),_0x5e8d6f=new Set();for(const {resolvedBy:_0x3f6449,comments:_0x3980a5}of _0x4fff87){_0x3f6449&&!_0x5e1493['getUser'](_0x3f6449)&&_0x5e8d6f['add'](_0x3f6449);for(const {userId:_0x52df8c}of _0x3980a5)_0x5e1493['getUser'](_0x52df8c)||_0x5e8d6f['add'](_0x52df8c);}if(0x0===_0x5e8d6f['size'])return;const _0x23cf35=await ct['getMany'](_0x3ef9e8,Array['from'](_0x5e8d6f));for(const _0x15ab04 of _0x23cf35)_0x5e1493['getUser'](_0x15ab04['id'])||_0x5e1493['addUser'](_0x15ab04);}}async function F(_0x394306){if('404'!==_0x394306['code'])throw _0x394306;}function at(_0x395428){if((_0x49969d=_0x395428)['message']['startsWith']('cloud-services-internal-error:\x20Comments\x20Service\x20is\x20not\x20connected.')||_0x49969d['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x49969d['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.'))return new Promise(()=>{});var _0x49969d;throw _0x395428;}function B(_0x14fa2f){return{'threadId':_0x14fa2f['commentThreadId'],'commentId':_0x14fa2f['commentId'],'content':_0x14fa2f['content'],'createdAt':_0x14fa2f['createdAt'],'authorId':_0x14fa2f['userId'],'attributes':_0x14fa2f['attributes']||{}};}class m extends _0x10d243{static ['TrackChangesService']=/* #__PURE__ -- @preserve */
27
- ((()=>tt)());['_bufferedRequests'];['_trackChangesService'];static get['requires'](){return[s,'TrackChangesEditing',n];}static get['pluginName'](){return'CloudServicesTrackChangesAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x2f41d6){super(_0x2f41d6);const _0x6f53e1=this['editor']['config']['get']('collaboration.channelId');this['_bufferedRequests']=new Map(),this['_trackChangesService']=new m['TrackChangesService'](_0x6f53e1);}['init'](){const _0x37d797=this['editor']['plugins']['get'](n),_0x4969f1=this['editor']['plugins']['get']('TrackChangesEditing');return _0x4969f1['adapter']={'getSuggestion':async _0x27064e=>{await this['_waitForServiceReady']();const _0x2433cd=await this['_trackChangesService']['get'](_0x27064e)['catch'](k);return await this['_fetchMissingUsersForThreads']([_0x2433cd]),_0x2433cd;},'addSuggestion':async({id:_0x829229,type:_0xbc3402,data:_0x3356b5,originalSuggestionId:_0x2c59fe,attributes:_0x19cec3})=>{await this['_waitForServiceReady']();const _0x3aa0e2={'id':_0x829229,'type':_0xbc3402,'data':_0x3356b5,'originalSuggestionId':_0x2c59fe,'attributes':_0x19cec3},_0x6313f8=await this['_trackChangesService']['add'](_0x829229,_0xbc3402,_0x3356b5,_0x2c59fe,_0x19cec3)['catch'](_0x4efba3=>{if(ht(_0x4efba3))return new Promise(_0x39573e=>{this['_bufferedRequests']['set'](_0x829229,{'resolve':_0x39573e,'suggestionData':_0x3aa0e2});});throw _0x4efba3;});return this['_bufferedRequests']['delete'](_0x829229),_0x6313f8;},'updateSuggestion':async(_0x59bbc6,_0xf47f3a)=>{if(await this['_waitForServiceReady'](),'open'!==_0xf47f3a['state'])return this['_trackChangesService']['update'](_0x59bbc6,_0xf47f3a)['catch'](k);}},this['listenTo'](this['_trackChangesService'],'suggestionUpdated',(_0x13fc42,_0x159eac)=>{_0x4969f1['hasSuggestion'](_0x159eac['id'])&&(_0x4969f1['getSuggestion'](_0x159eac['id'])['attributes']=_0x159eac['attributes']);}),this['_trackChangesService']['connect'](_0x37d797['connection'])['then'](_0x1c09aa=>(_0x37d797['addToReconnectionStack'](this),this['_fetchMissingUsersForThreads'](_0x1c09aa)['then'](()=>{for(const _0x5ec752 of _0x1c09aa){_0x4969f1['addSuggestionData'](_0x5ec752)['_saved']=!0x0;}})));}async['reconnect'](){const _0x5e4eb6=this['editor']['plugins']['get']('TrackChangesEditing'),{connection:_0xc689d5}=this['editor']['plugins']['get'](n),_0x96a7f=await this['_trackChangesService']['connect'](_0xc689d5);await this['_fetchMissingUsersForThreads'](_0x96a7f);for(const {suggestionData:_0x1867a5,resolve:_0x493ba9}of this['_bufferedRequests']['values']()){let _0x35ab0a=_0x96a7f['find'](_0x4c8195=>_0x4c8195['id']===_0x1867a5['id']);_0x35ab0a||(_0x35ab0a=await this['_trackChangesService']['add'](_0x1867a5['id'],_0x1867a5['type'],_0x1867a5['data'],_0x1867a5['originalSuggestionId'])),_0x493ba9(_0x35ab0a);}for(const _0x5bcefe of _0x96a7f)_0x5e4eb6['hasSuggestion'](_0x5bcefe['id'])||_0x5e4eb6['addSuggestionData'](_0x5bcefe);}async['_waitForServiceReady'](){this['_trackChangesService']['isConnected']||await new Promise(_0x302584=>{this['listenTo'](this['_trackChangesService'],'connected',_0x48bdc9=>{_0x48bdc9['off'](),_0x302584();});});}async['_fetchMissingUsersForThreads'](_0x44ea38){const _0x343dc5=this['editor']['plugins']['get'](_0xaa642b),{connection:_0x1edb4d}=this['editor']['plugins']['get'](n),_0x3702f2=new Set();for(const {authorId:_0x5e8e85}of _0x44ea38)_0x343dc5['getUser'](_0x5e8e85)||_0x3702f2['add'](_0x5e8e85);if(0x0===_0x3702f2['size'])return;const _0x24fcb8=await ct['getMany'](_0x1edb4d,Array['from'](_0x3702f2));for(const _0x315922 of _0x24fcb8)_0x343dc5['getUser'](_0x315922['id'])||_0x343dc5['addUser'](_0x315922);}}function k(_0x4a176a){if(ht(_0x4a176a))return new Promise(()=>{});throw _0x4a176a;}function ht(_0x278811){return _0x278811['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x278811['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}class g extends _0x10d243{static get['requires'](){return['Comments',s,a,n];}static get['pluginName'](){return'RealTimeCollaborativeComments';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['init'](){const _0x1ba123=this['editor']['plugins']['get'](n),_0x2bd5ca=this['editor']['plugins']['get']('CommentsEditing'),_0x2949bc=this['editor']['plugins']['get'](s);return this['editor']['data']['once']('ready',()=>{this['listenTo'](_0x1ba123,'change:state',(_0x40ca1e,_0x2a1c06,_0xd2d40f)=>{_0x2bd5ca['isThreadsLoadingPaused']='connected'!==_0xd2d40f;});}),this['listenTo'](_0x1ba123,'change:state',(_0x2650b0,_0x2cf222,_0x54ce49)=>{this['editor']['plugins']['get']('CommentsRepository')['switchReadOnly']('connected'!==_0x54ce49);}),_0x2949bc['_setUpService'](this['editor']['config']['get']('collaboration.channelId'));}['destroy'](){this['editor']['plugins']['get'](s)['_terminateService'](this['editor']['config']['get']('collaboration.channelId')),super['destroy']();}}class lt extends _0x10d243{static get['requires'](){return[g,m,'TrackChanges'];}static get['pluginName'](){return'RealTimeCollaborativeTrackChanges';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}class c extends _0x10d243{static ['RevisionHistoryService']=/* #__PURE__ -- @preserve */
28
- ((()=>_0x21c89f)());['_lastRequestId'];['_revisionTracker'];['_revisionHistoryService'];['_oldOffset'];static get['requires'](){return[n,l,'RevisionHistory',i,_0xaa642b];}static get['pluginName'](){return'CloudServicesRevisionHistoryAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x1fe999){super(_0x1fe999);const _0x2991e9=this['editor']['config']['get']('collaboration.channelId');this['_lastRequestId']=null,this['_revisionTracker']=this['editor']['plugins']['get']('RevisionTracker'),this['_revisionHistoryService']=new c['RevisionHistoryService'](_0x2991e9);}async['init'](){const _0xfae8f=this['editor']['plugins']['get'](l),_0x37cff0=_0xfae8f['serverHistory'],_0x3e1930=this['editor']['plugins']['get'](n);this['_revisionTracker']['setSource']({'history':_0x37cff0,'getLatestVersion':()=>this['_getLatestVersion'](),'getCurrentRevisionId':()=>_0xfae8f['sessionId']});const _0x202802=this['editor']['config']['get']('cloudServices.bundleVersion')||nt,_0x4a2dd6=await _0xe88053['isBundleUploaded'](_0x3e1930['connection'],_0x202802);this['editor']['plugins']['get']('RevisionHistory')['adapter']={'getRevision':async({revisionId:_0x464b7f})=>(await this['_waitForServiceReady'](),await this['_revisionHistoryService']['getRevision'](_0x464b7f)),'updateRevisions':async _0x2dc911=>{await this['_waitForServiceReady']();const _0xf9c2ef=this['_revisionTracker']['currentRevision'];if(_0x4a2dd6&&0x1===_0x2dc911['length']&&_0x2dc911[0x0]['id']===_0xf9c2ef['id'])return _0x2dc911;for(const _0x3e0413 of _0x2dc911)_0x3e0413['id']===_0xf9c2ef['id']&&(_0x3e0413['isEmptyCurrent']=_0x3e0413['fromVersion']===_0x3e0413['toVersion']);return this['_revisionHistoryService']['updateRevisions'](_0x2dc911,this['_lastRequestId'])['then'](_0x4ddd4d=>(this['_lastRequestId']=_0x4ddd4d,_0x2dc911))['catch'](_0x292b13=>{if(q(_0x292b13)||'400'===_0x292b13['code']&&void 0x0!==_0x292b13['data']['wrongRequestId']){for(const _0x26d34f of _0x2dc911){!this['_revisionTracker']['repository']['getRevision'](_0x26d34f['id'])||this['_revisionTracker']['_bufferUpdate'](_0x26d34f['id'],_0x26d34f,!0x1);}if(q(_0x292b13))throw _0x292b13;return _0x2dc911;}throw _0x292b13;});}},this['listenTo'](this['_revisionHistoryService'],'revisionsUpdated',(_0x7cbd97,{revisionsData:_0x13af9c,requestId:_0x3d4a21})=>{Math['max'](..._0x13af9c['map'](_0x30ee7a=>_0x30ee7a['toVersion']))>this['_getLatestVersionFromServerOperations']()-0x1?this['_getLatestVersion']()['then'](()=>{this['_handleRevisionsUpdate'](_0x13af9c,_0x3d4a21);}):this['_handleRevisionsUpdate'](_0x13af9c,_0x3d4a21);});const {revisions:_0x16b56c,requestId:_0x475db6}=await this['_revisionHistoryService']['connect'](_0x3e1930['connection']);_0x3e1930['addToReconnectionStack'](this),this['_lastRequestId']=_0x475db6,await this['_fetchMissingUsers'](_0x16b56c);for(const _0x4a0e92 of _0x16b56c)this['_revisionTracker']['addRevisionData'](_0x4a0e92);this['listenTo'](_0xfae8f,'change:_isConnected',(_0x1dfdc3,_0x505a3,_0xb8af02)=>{_0xb8af02&&(this['_oldOffset']=_0xfae8f['_offset'],_0x1dfdc3['off']());}),this['_revisionTracker']['bind']('isEnabled')['to'](_0x3e1930,'state',_0x10b540=>_0x10b540===_0x3d49a0['CONNECTED']);}async['reconnect'](){const _0x2f3754=this['editor']['plugins']['get'](n),_0xe43a20=this['editor']['plugins']['get'](l),_0x69d181=async()=>{const _0x1e3324=this['_revisionTracker']['currentRevision'],_0x51c40a=_0x1e3324['id'],_0x5e6338=_0x51c40a!==_0xe43a20['sessionId'];if(_0x5e6338){const _0x55e88a=_0xe43a20['_offset']-this['_oldOffset'],_0x186c9a=this['_getLatestVersionFromServerOperations']();this['_revisionTracker']['_revisionDataBuilder']['reInit']();if(_0x1e3324['toVersion']+_0x55e88a!==_0x186c9a){const _0x1b047b=_0x1e3324['fromVersion']+_0x55e88a,_0x5171fa=this['editor']['plugins']['get'](_0xaa642b),_0x2dfb6f=this['_revisionTracker']['buildRevisionData']({'revision':_0x1e3324,'from':_0x1b047b,'to':_0x186c9a});_0x2dfb6f['id']=_0x1e3324['id'];const _0x37d5a2=_0x2dfb6f['authorsIds']['map'](_0x3afa0d=>_0x5171fa['getUser'](_0x3afa0d));_0x1e3324['_update']({..._0x2dfb6f,'authors':_0x37d5a2},!0x0),this['_revisionTracker']['_bufferUpdate'](_0x1e3324['id'],_0x2dfb6f,!0x0);}this['_revisionTracker']['_startingVersion']=_0x186c9a,(_0x1e3324['toVersion']===_0x1e3324['fromVersion']&&!this['_revisionTracker']['_bufferedUpdates']['has'](_0x51c40a)&&this['_revisionTracker']['repository']['_revisions']['remove'](_0x51c40a),this['_revisionTracker']['_createCurrentRevision'](_0x186c9a));}const {revisions:_0x379baf,requestId:_0x5cd915}=await this['_revisionHistoryService']['reconnect'](_0x2f3754['connection'],this['_lastRequestId']);_0x5e6338&&_0x379baf['length']>0x0?_0xe43a20['_handleReconnectionError']():(await this['_fetchMissingUsers'](_0x379baf),this['_handleRevisionsUpdate'](_0x379baf,_0x5cd915),this['_revisionTracker']['sendBufferedUpdates']());};return _0xe43a20['_isConnected']?_0x69d181():new Promise((_0x588d12,_0x16f5a9)=>{_0xe43a20['once']('change:_isConnected',()=>{_0x69d181()['then'](_0x588d12)['catch'](_0x16f5a9);});});}['destroy'](){super['destroy']();}async['_waitForServiceReady'](){this['_revisionHistoryService']['isConnected']||await new Promise(_0x554a18=>{this['listenTo'](this['_revisionHistoryService'],'connected',_0x380781=>{_0x380781['off'](),_0x554a18();});});}['_getLatestVersionFromServerOperations'](){const _0x514533=this['editor']['plugins']['get'](l)['serverHistory']['getOperations']()['reverse']();for(const _0x5dbafd of _0x514533)if('marker'!==_0x5dbafd['type']||_0x5dbafd['affectsData'])return _0x5dbafd['baseVersion']+0x1;}['_getLatestVersion'](){const _0x2f17a8=this['editor']['plugins']['get'](l);return new Promise(_0x4dfbaa=>{_0x2f17a8['_isPendingUpdate']?_0x2f17a8['once']('change:_isPendingUpdate',()=>{_0x4dfbaa(this['_getLatestVersionFromServerOperations']());}):_0x4dfbaa(this['_getLatestVersionFromServerOperations']());});}['_handleRevisionsUpdate'](_0x5bed80,_0x2fbdf7){const _0x140bf0=this['_revisionTracker']['repository'];this['_lastRequestId']=_0x2fbdf7;for(const _0xdd1dd9 of _0x5bed80){const _0x114684=_0x140bf0['getRevision'](_0xdd1dd9['id']);if(_0x114684){if((_0xdd1dd9['fromVersion']||_0xdd1dd9['toVersion'])&&(_0xdd1dd9['diffData']=null),_0x114684===this['_revisionTracker']['currentRevision']){const _0x376476=Math['max'](_0x114684['toVersion'],_0xdd1dd9['toVersion']),_0x45eb90=Math['max'](_0x114684['fromVersion'],_0xdd1dd9['fromVersion']);let _0x54f71c;_0x114684['toVersion']===_0xdd1dd9['toVersion']&&_0x114684['fromVersion']===_0xdd1dd9['fromVersion']?(_0x54f71c=!0x0,this['_preventResendingRevisionData'](_0xdd1dd9)):_0xdd1dd9['toVersion']===_0x376476&&_0xdd1dd9['fromVersion']===_0x45eb90?_0x54f71c=!0x1:(_0x114684['toVersion']===_0x376476&&_0x114684['fromVersion']===_0x45eb90||this['_fixRevision']({'revision':_0x114684,'from':_0x45eb90,'to':_0x376476}),_0x54f71c=!0x0),_0x54f71c&&(delete _0xdd1dd9['fromVersion'],delete _0xdd1dd9['toVersion'],delete _0xdd1dd9['diffData'],delete _0xdd1dd9['createdAt'],delete _0xdd1dd9['authorsIds']);}this['_revisionTracker']['setRevisionData'](_0xdd1dd9),this['_preventResendingRevisionData'](_0xdd1dd9);}else this['_revisionTracker']['addRevisionData'](_0xdd1dd9);}const _0x4782df=_0x140bf0['getRevisions']();_0x4782df['reverse']();for(let _0x728843=0x0;_0x728843<_0x4782df['length']-0x1;_0x728843++){const _0x2102d1=_0x4782df[_0x728843],_0x137f06=_0x4782df[_0x728843+0x1];if(_0x2102d1['fromVersion']<_0x137f06['toVersion']){const _0x5edc0b=_0x137f06['toVersion'],_0x2a23b6=Math['max'](_0x5edc0b,_0x2102d1['toVersion']);this['_fixRevision']({'revision':_0x2102d1,'from':_0x5edc0b,'to':_0x2a23b6});}}}['_fixRevision']({revision:_0x284b2b,from:_0x5af2d9,to:_0x44ae92}={}){const _0x14c01b=this['editor']['plugins']['get'](_0xaa642b),_0x2a9968=this['_revisionTracker']['buildRevisionData']({'revision':_0x284b2b,'from':_0x5af2d9,'to':_0x44ae92});_0x2a9968['authors']=_0x2a9968['authorsIds']['map'](_0x5a554c=>_0x14c01b['getUser'](_0x5a554c)),_0x284b2b['_update'](_0x2a9968);}['_preventResendingRevisionData'](_0xb50b56){const _0x481579={};_0x481579['id']=_0xb50b56['id'];for(const _0x2ec318 of Object['keys'](_0xb50b56))'id'!==_0x2ec318&&(_0x481579[_0x2ec318]=void 0x0);this['_revisionTracker']['_bufferUpdate'](_0x481579['id'],_0x481579,!0x0);}async['_fetchMissingUsers'](_0x181d0c){const _0xb8ceea=this['editor']['plugins']['get'](_0xaa642b),{connection:_0x199c81}=this['editor']['plugins']['get'](n),_0x3fd408=new Set();for(const _0x363f1f of _0x181d0c){for(const _0x226663 of _0x363f1f['authorsIds'])_0x47c8e8(_0x226663);_0x363f1f['creatorId']&&_0x47c8e8(_0x363f1f['creatorId']);}if(0x0===_0x3fd408['size'])return;const _0x1c027e=await ct['getMany'](_0x199c81,Array['from'](_0x3fd408));for(const _0x165bea of _0x1c027e)_0xb8ceea['getUser'](_0x165bea['id'])||_0xb8ceea['addUser'](_0x165bea);function _0x47c8e8(_0x34c184){_0xb8ceea['getUser'](_0x34c184)||_0x3fd408['add'](_0x34c184);}}}function q(_0x178d5b){return _0x178d5b['message']['startsWith']('cloud-services-internal-error:\x20Revision\x20History\x20Service\x20is\x20not\x20connected.')||_0x178d5b['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x178d5b['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}class dt extends _0x10d243{static get['requires'](){return['RevisionHistory',c,a];}static get['pluginName'](){return'RealTimeCollaborativeRevisionHistory';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}class b extends _0x3fe722{['_collapseAt'];constructor(_0x75d148,_0x4ff834=0x6){super(_0x75d148);const _0x17e2c4=this['bindTemplate'];this['set']('isHidden',!0x0),this['set']('usersCount',0x0),this['_collapseAt']=_0x4ff834,this['bind']('isHidden')['to'](this,'usersCount',_0x10abe9=>_0x10abe9<_0x4ff834),this['setTemplate']({'tag':'div','attributes':{'class':['ck','ck-presence-list__list-item',_0x17e2c4['if']('isHidden','ck-presence-list__counter--hidden')],'role':'listitem'},'children':[{'tag':'div','attributes':{'class':['ck','ck-presence-list__users-counter']},'children':[{'tag':'div','attributes':{'class':['ck','ck-presence-list__users-counter__text']},'children':[{'text':_0x17e2c4['to']('usersCount',_0x1b4116=>'+'+(_0x1b4116-this['_collapseAt']+0x2)['toString']())}]}]}]});}}class is extends _0x3fe722{['items'];['keystrokes'];constructor(_0x505b26){super(_0x505b26);const _0x1d4398=this['bindTemplate'];this['items']=this['createCollection'](),this['keystrokes']=new _0x5e4192(),this['set']({'hasPopup':!0x1,'isExpanded':!0x1}),this['setTemplate']({'tag':'div','attributes':{'aria-haspopup':_0x1d4398['if']('hasPopup'),'aria-expanded':_0x1d4398['to']('isExpanded',_0x457959=>this['hasPopup']&&String(_0x457959)),'aria-label':_0x1d4398['to']('hasPopup',_0x2de54e=>$(_0x505b26,_0x2de54e?'Collapsed\x20connected\x20users\x20list\x20(press\x20ENTER\x20to\x20open\x20it)':'Connected\x20users\x20list')),'role':'list','tabindex':_0x1d4398['to']('hasPopup',_0x1c4932=>!!_0x1c4932&&0x0),'class':['ck','ck-presence-list__list']},'children':this['items'],'on':{'mouseenter':_0x1d4398['to'](()=>this['fire']('presencelist:show')),'mouseleave':_0x1d4398['to'](_0x1dce03=>{const _0x56aac2=_0x1dce03,_0x5bba7d=document['querySelector']('.ck-presence-list__dropdown-list'),_0x41366d=document['querySelector']('.ck-balloon-panel_with-arrow');_0x5bba7d?.['contains'](_0x56aac2['relatedTarget'])||_0x41366d?.['contains'](_0x56aac2['relatedTarget'])||this['fire']('presencelist:hide');})}}),this['on']('change:hasPopup',(_0x235559,_0x595b7d,_0x258683)=>{this['element']&&(_0x258683?this['element']['setAttribute']('aria-expanded',String(this['isExpanded'])):this['element']['removeAttribute']('aria-expanded'));});}['focus'](){this['element']['focus']();}['render'](){super['render'](),this['keystrokes']['listenTo'](this['element']);}}class v extends _0x3fe722{['counterView'];['inlineListView'];constructor(_0x235bff,_0x594d13=0x6){super(_0x235bff);const _0x4a6b90=this['bindTemplate'];this['set']('isCollapsed',!0x0),this['counterView']=new b(this['locale'],_0x594d13),this['inlineListView']=new is(_0x235bff),this['inlineListView']['bind']('hasPopup')['to'](this,'isCollapsed'),this['listenTo'](this['inlineListView']['items'],'change',()=>{for(const _0x19a379 of this['inlineListView']['items'])_0x19a379['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',_0x4a6b90['if']('isCollapsed','ck-presence-list--collapsed')]},'children':[this['inlineListView']]});}}class L extends _0x3fe722{['listWrapperView'];constructor(_0x862238,_0x54a917){super(_0x862238);const _0x2f0885=this['bindTemplate'];this['listWrapperView']=new ut(_0x862238,_0x54a917),this['setTemplate']({'tag':'div','attributes':{'tabindex':-0x1,'role':'application','class':['ck','ck-presence-list__dropdown-list'],'aria-label':$(_0x862238,'Connected\x20users\x20list\x20dropdown\x20menu')},'children':[this['listWrapperView']],'on':{'mouseleave':_0x2f0885['to'](_0x39c3b7=>{const _0x521b1a=_0x39c3b7,_0x348ef0=document['querySelector']('.ck-presence-list__list'),_0x232a0e=document['querySelector']('.ck-balloon-panel_with-arrow');_0x348ef0?.['contains'](_0x521b1a['relatedTarget'])||_0x232a0e?.['contains'](_0x521b1a['relatedTarget'])||this['fire']('presencelist:hide');})}});}}class ut extends _0x374e68{constructor(_0x16b98a,_0x2a4db0){super(_0x16b98a);const _0x547e17=this['bindTemplate'];this['set']('_isScrollable',!0x1),this['setTemplate']({'tag':_0x2a4db0?'div':'ul','attributes':{'class':['ck','ck-reset','ck-list','ck-presence-list__dropdown-list-wrapper',_0x547e17['if']('_isScrollable','ck-presence-list__dropdown-list-wrapper_scrollable')],'role':_0x547e17['to']('role'),'aria-label':_0x547e17['to']('ariaLabel'),'aria-labelledby':_0x547e17['to']('ariaLabelledBy')},'children':this['items']}),this['listenTo'](_0x438e09['window'],'resize',()=>this['checkIfScrollable']()),this['items']['on']('change',()=>this['checkIfScrollable']());}['render'](){super['render'](),this['checkIfScrollable']();}['checkIfScrollable'](){const _0x3c9fbb=this['element'];_0x3c9fbb&&(this['_isScrollable']=Math['max'](_0x3c9fbb['scrollHeight'],_0x3c9fbb['clientHeight'])>0.8*window['innerHeight']);}}class j extends et{['userView'];constructor(_0x4c7f6b,_0x16d1ff,_0x2a64ec){super(_0x4c7f6b);const _0x32ed6f=this['bindTemplate'];this['userView']=new st(_0x4c7f6b,_0x16d1ff);const _0x121e46={'tag':'li','attributes':{'class':['ck','ck-presence-list__dropdown-list-item'],'tabindex':-0x1,'role':'presentation','aria-label':_0x16d1ff['name']},'children':[this['userView'],{'tag':'span','attributes':{'class':['ck','ck-user__full-name']},'children':[{'text':_0x16d1ff['name']}]},{'tag':'span','attributes':{'class':['ck','ck-presence-list__marker',_0x16d1ff['color']['getBackgroundColorClass']()],'aria-hidden':'true'}}]};_0x2a64ec&&(_0x121e46['tag']='button',_0x121e46['on']={'click':_0x32ed6f['to'](()=>this['fire']('execute'))}),this['setTemplate'](_0x121e46);}['focus'](){this['element']['focus']();}}class A extends _0x3fe722{['userView'];['markerView'];constructor(_0x30a845,_0x45b519,_0x5f457){super(_0x30a845);const _0x18074a=this['bindTemplate'];this['set']('isFocusable',!0x1),this['set']('hasTooltip',!0x0),this['set']('tooltipPosition',''),this['userView']=new st(_0x30a845,_0x45b519),this['markerView']=new ot(_0x30a845,_0x45b519);const _0x2b8dfc=new it(_0x30a845);_0x2b8dfc['template']['tag']='span',_0x2b8dfc['text']=_0x45b519['name'];const _0x4b4abe={'tag':'div','attributes':{'class':['ck','ck-presence-list__list-item'],'role':'listitem','tabindex':_0x18074a['to']('isFocusable',_0x3813d2=>!!_0x3813d2&&0x0),'aria-labelledby':_0x2b8dfc['id'],'data-cke-tooltip-text':this['userView']['name'],'data-cke-tooltip-position':_0x18074a['to']('tooltipPosition'),'data-cke-tooltip-disabled':_0x18074a['to']('hasTooltip',_0xb8583d=>!_0xb8583d),'data-cke-tooltip-class':'ck-presence-list__list-item__tooltip'},'children':[this['userView'],this['markerView'],_0x2b8dfc]};_0x5f457&&(_0x4b4abe['tag']='button',_0x4b4abe['on']={'click':_0x18074a['to'](()=>this['fire']('execute'))}),this['setTemplate'](_0x4b4abe);}}class ot extends _0x3fe722{constructor(_0x560263,_0x1df864){super(_0x560263),this['setTemplate']({'tag':'span','attributes':{'class':['ck','ck-presence-list__marker',_0x1df864['color']['getBackgroundColorClass']()],'aria-hidden':'true'}});}}const x={'collapseAt':0x6,'displayMe':!0x0};class r extends _0x4d3b80{['currentDisplayedUsers'];['balloonPanelView'];['view'];['presenceDropdownView'];['_bodyCollection']=null;static get['pluginName'](){return'PresenceListUI';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x31304d){super(_0x31304d),this['context']['config']['define']('presenceList',x);const _0x152ac4=_0x31304d['config']['get']('presenceList.collapseAt');if('number'!=typeof _0x152ac4)throw new _0x310ec5('presencelist-collapseat-invalid-format',this);if(_0x152ac4<0x1)throw new _0x310ec5('presencelist-collapseat-invalid-format',this);this['_allConnectedUsers']=this['context']['plugins']['get'](i)['allConnectedUsers'],this['set']('usersCount',0x0),this['currentDisplayedUsers']=new _0x3f433a(),this['balloonPanelView']=new _0x29c12b(),this['balloonPanelView']['class']='ck\x20ck-presence-list__balloon',this['view']=this['_createView'](),this['presenceDropdownView']=void 0x0;}static get['requires'](){return[i];}['init'](){for(const _0x149c32 of this['_allConnectedUsers'])this['_handleUserAdd'](_0x149c32);this['listenTo'](this['_allConnectedUsers'],'add',(_0x4a5162,_0x37cdfc)=>{this['_handleUserAdd'](_0x37cdfc);}),this['listenTo'](this['_allConnectedUsers'],'remove',(_0x2919d9,_0x3d8583)=>{this['_handleUserRemove'](_0x3d8583);});}['_createView'](){const _0x4d707f=this['context'],_0x2c021a=new v(this['context']['locale'],this['context']['config']['get']('presenceList.collapseAt')),_0x2a1423=this['balloonPanelView'];if(!_0x36c3c9(_0x4d707f['config']['get']('presenceList.container')))throw new _0x310ec5('presencelist-missing-container',this);return _0x2c021a['counterView']['bind']('usersCount')['to'](this),_0x2c021a['bind']('isCollapsed')['to'](this,'usersCount',_0x2cbce8=>{const {collapseAt:_0x2e05f7}=_0x4d707f['config']['get']('presenceList'),_0x224883=_0x2cbce8>=_0x2e05f7;if(_0x224883&&!_0x2c021a['inlineListView']['items']['find'](_0x247ce6=>_0x247ce6 instanceof b)){const _0x5ed3a4=this['context']['config']['get']('presenceList.collapseAt')-0x1;this['currentDisplayedUsers']['length']==_0x5ed3a4&&this['currentDisplayedUsers']['length']>0x1&&this['currentDisplayedUsers']['remove'](this['currentDisplayedUsers']['length']-0x1),_0x2c021a['inlineListView']['items']['add'](_0x2c021a['counterView']);}return _0x224883||this['hideDropdown'](),_0x224883;}),_0x2c021a['inlineListView']['items']['bindTo'](this['currentDisplayedUsers'])['using'](_0x3d40b2=>{const _0x36b7a0=_0x4d707f['config']['get']('presenceList'),_0x10442d=new A(_0x4d707f['locale'],_0x3d40b2,!!_0x36b7a0['onClick']);return _0x10442d['bind']('hasTooltip')['to'](_0x2c021a,'isCollapsed',_0x5b2d19=>!_0x5b2d19),_0x10442d['bind']('isFocusable')['to'](_0x2c021a,'isCollapsed',_0x10585f=>!_0x10585f),_0x36b7a0['onClick']&&this['listenTo'](_0x10442d,'execute',()=>{this['view']['isCollapsed']||_0x36b7a0['onClick'](_0x3d40b2,_0x10442d['element']);}),_0x10442d;}),this['listenTo'](_0x2c021a['inlineListView'],'presencelist:show',()=>{this['view']['isCollapsed']&&this['showDropdown']();}),this['listenTo'](_0x2c021a['inlineListView'],'presencelist:hide',()=>{this['presenceDropdownView']&&this['hideDropdown']();}),_0x2c021a['inlineListView']['keystrokes']['set']('Enter',(_0x54931e,_0xc645a5)=>{this['view']['isCollapsed']&&(this['showDropdown'](),_0xc645a5());}),_0x2c021a['render'](),_0x2a1423['render'](),_0x22e750({'emitter':_0x2c021a,'activator':()=>_0x2a1423['isVisible'],'contextElements':[_0x2a1423['element'],_0x2c021a['inlineListView']['element']],'callback':()=>this['hideDropdown']()}),_0x4d707f['config']['get']('presenceList.container')['appendChild'](_0x2c021a['element']),this['_bodyCollection']=new _0x4a0b8d(this['context']['locale']),this['_bodyCollection']['attachToDom'](),this['_bodyCollection']['add'](this['balloonPanelView']),_0x2c021a;}['_handleUserAdd'](_0x19dea4){if(!this['context']['config']['get']('presenceList.displayMe')&&_0x19dea4['isMe'])return;const _0x42ba2a=this['context']['config']['get']('presenceList.collapseAt')-0x1;for(this['usersCount']++;this['currentDisplayedUsers']['length']>=_0x42ba2a-(this['view']['isCollapsed']?0x1:0x0)&&this['currentDisplayedUsers']['length']>0x1;)this['currentDisplayedUsers']['remove'](0x1);const _0x39e657=_0x19dea4['isMe']?0x0:this['currentDisplayedUsers']['length'];this['currentDisplayedUsers']['add'](_0x19dea4,_0x39e657);}['_handleUserRemove'](_0x4a6bee){this['usersCount']--;const {collapseAt:_0x94ea06}=this['context']['config']['get']('presenceList'),_0x5f0994=this['usersCount']>=_0x94ea06;if(this['currentDisplayedUsers']['get'](_0x4a6bee['id']))this['currentDisplayedUsers']['remove'](_0x4a6bee['id']);else{if(_0x5f0994&&this['currentDisplayedUsers']['length']+0x1===_0x94ea06-0x1)return;}if(this['currentDisplayedUsers']['length']+(_0x5f0994?0x1:0x0)<this['usersCount']){for(const _0x2ce758 of Array['from'](this['_allConnectedUsers'])['reverse']())if(!this['currentDisplayedUsers']['get'](_0x2ce758['id'])&&(this['currentDisplayedUsers']['add'](_0x2ce758,Math['min'](this['currentDisplayedUsers']['length']-(_0x5f0994?0x1:0x0),0x1)),this['currentDisplayedUsers']['length']+(_0x5f0994?0x1:0x0)===_0x94ea06-0x1))return;}}['showDropdown'](){if(this['presenceDropdownView'])return;const _0x2ef5ec=this['context']['config']['get']('presenceList');this['presenceDropdownView']=new L(this['context']['locale'],!!_0x2ef5ec['onClick']),this['view']['inlineListView']['isExpanded']=!0x0,this['listenTo'](this['presenceDropdownView'],'presencelist:hide',()=>{this['presenceDropdownView']&&this['hideDropdown']();});const {listWrapperView:_0x1a1ef3}=this['presenceDropdownView'];_0x1a1ef3['items']['bindTo'](this['_allConnectedUsers'])['using'](_0x398cc9=>{if(!_0x2ef5ec['displayMe']&&_0x398cc9['isMe'])return null;const _0x11b017=new j(this['context']['locale'],_0x398cc9,!!_0x2ef5ec['onClick']);return _0x2ef5ec['onClick']&&this['listenTo'](_0x11b017,'execute',()=>{_0x2ef5ec['onClick'](_0x398cc9,_0x11b017['element']);}),_0x11b017;}),this['balloonPanelView']['content']['add'](this['presenceDropdownView']),this['balloonPanelView']['pin']({'target':this['view']['inlineListView']['element']}),_0x1a1ef3['focus'](),_0x1a1ef3['checkIfScrollable']();const _0x1080f7=(_0x31f7a8,_0x458cba)=>{this['hideDropdown'](),this['view']['inlineListView']['focus'](),_0x458cba();};_0x1a1ef3['keystrokes']['set']('Esc',_0x1080f7),_0x1a1ef3['keystrokes']['set']('Shift+Tab',_0x1080f7),_0x1a1ef3['keystrokes']['set']('Tab',(_0x38e728,_0x4498f2)=>{!function(_0x332791){const _0x18fa82=['a','button','input','select','textarea','[tabindex]','[contenteditable]']['map'](_0x227e90=>_0x227e90+':not([disabled]):not([tabindex=\x22-1\x22])')['join'](','),_0x429f78=[...document['body']['querySelectorAll'](_0x18fa82)]['filter'](_0xaa0a02=>_0xaa0a02===document['activeElement']||_0xaa0a02['offsetWidth']+_0xaa0a02['offsetHeight']>0x0)['sort']((_0x2d8cd3,_0x544713)=>(_0x2d8cd3['tabIndex']||0x0)-(_0x544713['tabIndex']||0x0)),_0x30d2b2=_0x429f78['indexOf'](_0x332791),_0x49839c=_0x429f78[(_0x30d2b2+0x1)%_0x429f78['length']];_0x49839c&&_0x49839c['focus']();}(this['view']['element']),this['hideDropdown'](),_0x4498f2();}),_0x1a1ef3['focusTracker']['add'](this['view']['element']),_0x1a1ef3['focusTracker']['on']('change:isFocused',(_0x437099,_0x5b8f06,_0x1bfdb2)=>{_0x1bfdb2||this['hideDropdown']();});}['hideDropdown'](){this['presenceDropdownView']&&(this['view']['inlineListView']['isExpanded']=!0x1,this['balloonPanelView']['unpin'](),this['balloonPanelView']['content']['remove'](this['presenceDropdownView']),this['presenceDropdownView']['destroy'](),this['presenceDropdownView']=void 0x0);}['destroy'](){super['destroy'](),this['view']&&this['view']['isRendered']&&this['view']['destroy'](),this['_bodyCollection']&&(this['_bodyCollection']['detachFromDom'](),this['_bodyCollection']['destroy'](),this['_bodyCollection']=null);}}class ft extends _0x4d3b80{static get['requires'](){return[i,r];}static get['pluginName'](){return'PresenceList';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}export{s as CloudServicesCommentsAdapter,c as CloudServicesRevisionHistoryAdapter,m as CloudServicesTrackChangesAdapter,ft as PresenceList,r as PresenceListUI,l as RealTimeCollaborationClient,g as RealTimeCollaborativeComments,a as RealTimeCollaborativeEditing,dt as RealTimeCollaborativeRevisionHistory,lt as RealTimeCollaborativeTrackChanges,i as Sessions,n as WebSocketGateway};
23
+ import{ContextPlugin as _0x3037e3,Plugin as _0x5543a5,PendingActions as _0x3e4bfe,Context as _0x446099}from'@ckeditor/ckeditor5-core/dist/index.js';import{DomEmitterMixin as _0x9b49aa,CKEditorError as _0x1c2f2a,Collection as _0x56572f,global as _0x3979c9,version as nt,uid as _0xc06c50,KeystrokeHandler as _0x9966a1}from'@ckeditor/ckeditor5-utils/dist/index.js';import{Notification as _0x3ae107,View as _0x4d2917,ListView as _0x4941b4,ListItemView as et,LabelView as it,BalloonPanelView as _0x1f3152,clickOutsideHandler as _0x3495ca,BodyCollection as _0x212a26}from'@ckeditor/ckeditor5-ui/dist/index.js';import{ModelLiveRange as _0x13075d,History as _0x14c899,NoOperation as _0x570a93,InsertOperation as _0x552824,MarkerOperation as _0x242d8c,RootAttributeOperation as _0x40307c,transformOperationSets as _0x31ad0e,OperationFactory as _0xcfa427}from'@ckeditor/ckeditor5-engine/dist/index.js';import{WebSocketGateway as rt,WEB_SOCKET_GATEWAY_STATES as _0x7ec47c,CollaborativeEditingService as _0xf7aeca,User as ct,CommentsService as _0x42707b,TrackChangesService as tt,RevisionHistoryService as _0x5f0b95,EditorService as _0x167f86}from'@ckeditor/ckeditor-cloud-services-collaboration/dist/index.js';import{Users as _0x222559,UserView as st}from'ckeditor5-collaboration/dist/index.js';import{Compressor as _0x232fab}from'@ckeditor/ckeditor5-operations-compressor/dist/index.js';import{isElement as _0x143b0d}from'es-toolkit/compat';class n extends _0x3037e3{static ['WebSocketGateway']=/* #__PURE__ -- @preserve */
24
+ ((()=>rt)());static ['initialReconnectionInterval']=0x3e8;['connection'];['_reconnectionStack'];['_shouldPluginsReconnect'];['_domEmitter'];static get['requires'](){return['CloudServices',_0x3ae107];}static get['pluginName'](){return'WebSocketGateway';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x15174a){super(_0x15174a),this['set']('state',_0x7ec47c['CONNECTED']),this['set']('_isBrowserOffline',!0x1),this['_reconnectionStack']=new Set(),this['_shouldPluginsReconnect']=!0x1,this['_domEmitter']=new(_0x9b49aa())();}['init'](){const _0x280a23=this['context'],_0x4e90a4=_0x280a23['plugins']['get']('CloudServices'),_0x41bf38=_0x280a23['plugins']['get'](_0x3ae107);if(!_0x4e90a4['token'])throw new _0x1c2f2a('websocketgateway-missing-token',this);if(!_0x4e90a4['webSocketUrl'])throw new _0x1c2f2a('websocketgateway-missing-websocket-url',this);return this['_domEmitter']['listenTo'](window,'offline',()=>this['_isBrowserOffline']=!0x0),this['_domEmitter']['listenTo'](window,'online',()=>this['_isBrowserOffline']=!0x1),this['context']['config']['define']('cloudServices.connectionTimeout',0xa),this['context']['config']['define']('cloudServices.requestTimeout',0x14),n['WebSocketGateway']['connect'](_0x4e90a4['token'],_0x4e90a4['webSocketUrl'],{'timeout':0x3e8*this['context']['config']['get']('cloudServices.connectionTimeout'),'requestTimeout':0x3e8*this['context']['config']['get']('cloudServices.requestTimeout')})['then'](_0x1b9c4a=>{if(this['connection']=_0x1b9c4a,this['bind']('state')['to'](_0x1b9c4a,'state',this,'_isBrowserOffline',(_0xfc886a,_0x18a42f)=>('connected'!==_0xfc886a&&(this['_shouldPluginsReconnect']=!0x0),_0x18a42f||_0xfc886a!==_0x7ec47c['CONNECTED']?_0x7ec47c['DISCONNECTED']:this['state']==_0x7ec47c['DISCONNECTED']&&this['_shouldPluginsReconnect']?(this['_shouldPluginsReconnect']=!0x1,this['_reconnect'](),_0x7ec47c['CONNECTING']):_0x7ec47c['CONNECTED'])),this['connection']['on']('error',(_0xfbec45,_0x535547)=>{if('limitExceeded'!==_0x535547['code'])throw console['error'](_0x535547),new _0x1c2f2a('cloudservices-init',null,{'originalError':_0x535547});_0x41bf38['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'});}),!_0x1b9c4a['me'])return new Promise(_0x441b59=>_0x1b9c4a['on']('change:me',_0x441b59));})['catch'](_0x103ca3=>{throw console['error'](_0x103ca3),new _0x1c2f2a('cloudservices-init',null,{'originalError':_0x103ca3});});}['addToReconnectionStack'](_0x351fcf){if('function'!=typeof _0x351fcf['reconnect'])throw new _0x1c2f2a('websocketgateway-invalid-plugin-interface',this);if(this['isInReconnectionStack'](_0x351fcf))throw new _0x1c2f2a('websocketgateway-plugin-already-registered',this,{'name':_0x351fcf['constructor']['pluginName']});this['_reconnectionStack']['add'](_0x351fcf);}['removeFromReconnectionStack'](_0x432faf){this['_reconnectionStack']['delete'](_0x432faf);}['isInReconnectionStack'](_0x4f6a64){return this['_reconnectionStack']['has'](_0x4f6a64);}['_reconnect'](){return this['connection']['reconnect']()['then'](()=>Promise['all'](Array['from'](this['_reconnectionStack'],_0x1dc86d=>_0x1dc86d['reconnect']())))['then'](()=>this['state']=_0x7ec47c['CONNECTED'])['catch'](_0x1bc761=>{throw console['error'](_0x1bc761),new _0x1c2f2a('cloudservices-reconnection-error',this['context']);});}['disconnect'](){this['connection']&&this['connection']['disconnect'](),this['state']=_0x7ec47c['DISCONNECTED'],this['_domEmitter']['stopListening']();}['destroy'](){this['disconnect'](),super['destroy']();}}class i extends _0x3037e3{['channelSessions'];['channelConnectedUsers'];['allConnectedUsers'];['_registeredSessions'];['_uniqueUsersCount'];['_users'];static get['pluginName'](){return'Sessions';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}static get['requires'](){return[n,_0x222559];}constructor(_0x35af9b){super(_0x35af9b),this['channelSessions']=new Map(),this['channelConnectedUsers']=new Map(),this['allConnectedUsers']=new _0x56572f(),this['_registeredSessions']=new Map(),this['_uniqueUsersCount']=0x0,this['_users']=this['context']['plugins']['get'](_0x222559);}['init'](){const _0x40d43d=this['context']['plugins']['get'](n);this['listenTo'](_0x40d43d,'change:state',(_0x20eb25,_0x47f98f,_0x3be615)=>{if('connected'!==_0x3be615)this['channelSessions']['forEach'](_0x3055c0=>_0x3055c0['clear']()),this['channelConnectedUsers']['forEach'](_0x175f3c=>_0x175f3c['clear']()),this['allConnectedUsers']['clear']();else{for(const [_0xeb2540,_0x5dd7a9]of this['_registeredSessions'])for(const _0x572d30 of _0x5dd7a9)this['_handleSessionAdd'](_0xeb2540,_0x572d30);}}),this['_createUser'](_0x40d43d['connection']['me'],!0x0);}['register'](_0x1c5059,_0x9f58f4){if(this['_registeredSessions']['has'](_0x1c5059))throw new _0x1c2f2a('sessions-register-already-registered',null,{'channelId':_0x1c5059});this['_registeredSessions']['set'](_0x1c5059,_0x9f58f4),this['channelSessions']['set'](_0x1c5059,new _0x56572f()),this['channelConnectedUsers']['set'](_0x1c5059,new _0x56572f()),this['listenTo'](_0x9f58f4,'add',(_0x259f80,_0x28d7de)=>this['_handleSessionAdd'](_0x1c5059,_0x28d7de)),this['listenTo'](_0x9f58f4,'remove',(_0x5c9367,_0x460d11)=>this['_handleSessionRemove'](_0x1c5059,_0x460d11));for(const _0x2f3b27 of _0x9f58f4)this['_handleSessionAdd'](_0x1c5059,_0x2f3b27);}['unregister'](_0x1cab75){if(!this['_registeredSessions']['has'](_0x1cab75))throw new _0x1c2f2a('sessions-unregister-not-exist',null,{'channelId':_0x1cab75});const _0x3726ab=this['_registeredSessions']['get'](_0x1cab75);this['stopListening'](_0x3726ab);for(const _0x316419 of _0x3726ab)'connected'===this['context']['plugins']['get'](n)['state']&&this['_handleSessionRemove'](_0x1cab75,_0x316419);this['_registeredSessions']['delete'](_0x1cab75),this['channelSessions']['delete'](_0x1cab75),this['channelConnectedUsers']['delete'](_0x1cab75);}get['mySessionId'](){return this['context']['plugins']['get'](n)['connection']['sessionId'];}['getUserBySessionId'](_0x21719c){for(const _0xd70251 of this['channelSessions']['values']())for(const _0x1f466d of _0xd70251)if(_0x1f466d['id']===_0x21719c)return _0x1f466d['user'];}['getUserSessions'](_0x65e718,_0x2479fd){const _0x37364a=_0x2479fd?[this['channelSessions']['get'](_0x2479fd)]:this['channelSessions']['values'](),_0x38c5c8=new Set();for(const _0x15348f of _0x37364a)for(const _0x2e4998 of _0x15348f)_0x2e4998['user']['id']===_0x65e718['id']&&_0x38c5c8['add'](_0x2e4998['id']);return _0x38c5c8;}['getUserRole'](_0x1ba11d){for(const _0x4d904d of this['channelSessions']['values']())for(const _0x59b9d4 of _0x4d904d)if(_0x59b9d4['user']===_0x1ba11d)return _0x59b9d4['role'];}['_handleSessionAdd'](_0x27f4a8,_0x8eb78b){if('connected'!==this['context']['plugins']['get'](n)['state'])return;const _0x34a1fc=_0x8eb78b['user'],_0x6550c=this['_users']['getUser'](_0x34a1fc['id'])||this['_createUser'](_0x34a1fc),_0x5e90bf=Object['assign']({},_0x8eb78b,{'user':_0x6550c});this['channelSessions']['get'](_0x27f4a8)['add'](_0x5e90bf);const _0x411c7e=this['channelConnectedUsers']['get'](_0x27f4a8);_0x411c7e['has'](_0x6550c['id'])||_0x411c7e['add'](_0x6550c),this['allConnectedUsers']['has'](_0x6550c['id'])||this['allConnectedUsers']['add'](_0x6550c,_0x6550c['isMe']?0x0:void 0x0),this['fire']('sessionAdd:'+_0x27f4a8,{'channelId':_0x27f4a8,'session':_0x5e90bf});}['_handleSessionRemove'](_0x4ac939,_0x11cdf0){if('connected'!==this['context']['plugins']['get'](n)['state'])return;const _0x41bb0d=this['channelConnectedUsers']['get'](_0x4ac939),_0x59f8fc=_0x11cdf0['user'];_0x59f8fc['id']&&(this['channelSessions']['get'](_0x4ac939)['remove'](_0x11cdf0['id']),_0x41bb0d['has'](_0x59f8fc['id'])&&!this['getUserSessions'](_0x59f8fc,_0x4ac939)['size']&&_0x41bb0d['remove'](_0x59f8fc['id']),this['allConnectedUsers']['get'](_0x59f8fc['id'])&&!this['getUserSessions'](_0x59f8fc)['size']&&this['allConnectedUsers']['remove'](_0x59f8fc['id']));}['_createUser'](_0x2933b3,_0x5c347d){const _0x24972c=this['_users']['addUser'](_0x2933b3);return _0x5c347d&&this['_users']['defineMe'](_0x2933b3['id']),_0x24972c['orderNumber']=this['_uniqueUsersCount']++,_0x24972c;}}class G extends _0x5543a5{['_domEmitter']=new(_0x9b49aa())();static get['requires'](){return[i];}static get['pluginName'](){return'UserMarkers';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['init'](){const _0x3efaa5=this['editor'],_0xa8eb58=_0x3efaa5['plugins']['get'](i);_0x3efaa5['conversion']['for']('editingDowncast')['markerToElement']({'model':'user:position','view':(_0x1a3b81,{writer:_0x565a16})=>function(_0x4909b7,_0x49f498,_0x573df7,_0x17eff9){const _0x1be190=_0x4909b7['markerName']['split'](':')[0x2],_0x4254c2=_0x573df7['getUserBySessionId'](_0x1be190);if(!_0x4254c2||_0x1be190===_0x573df7['mySessionId'])return;if(!_0x17eff9['model']['schema']['checkChild'](_0x4909b7['markerRange']['start'],'$text'))return;const _0x886191={'class':'ck-user__marker\x20'+_0x4254c2['color']['getMarkerClass'](),'data-name':_0x4254c2['name'],'data-session-id':_0x1be190},_0x5bbe2b=_0x17eff9['model']['markers']['get'](_0x4909b7['markerName']),_0x43964d=_0x5bbe2b['getStart'](),_0x1856af=_0x43964d['nodeAfter'],_0x3c6e83=_0x17eff9['model']['schema'];if(_0x1856af&&_0x3c6e83['isObject'](_0x1856af)&&_0x3c6e83['isInline'](_0x1856af)&&!_0x17eff9['model']['markers']['get']('user:range:'+_0x1be190)['getRange']()['isCollapsed'])return;const _0xeb5fe1=_0x43964d['parent'];return _0x17eff9['model']['schema']['isLimit'](_0xeb5fe1)&&!_0x17eff9['model']['hasContent'](_0xeb5fe1)&&(_0x886191['contenteditable']=!0x1),function(_0x3166e9,_0x3a30e0,_0xa08d5d){const _0x166053=_0x3166e9['createUIElement']('span',_0x3a30e0);return _0x3166e9['setCustomProperty']('userPositionMarker',!0x0,_0x166053),_0x166053['render']=function(_0x65f1b){const _0x429fc3=this['toDomElement'](_0x65f1b),_0x2caa75=document['createElement']('span');return _0x2caa75['classList']['add']('ck-user__marker-tooltip'),_0x2caa75['setAttribute']('contenteditable','false'),_0x2caa75['setAttribute']('spellcheck','false'),_0x2caa75['textContent']=_0xa08d5d['name'],_0x429fc3['innerHTML']='⁠<span\x20class=\x22ck-user__marker-line\x22\x20contenteditable=\x22false\x22><span\x20class=\x22ck-user__marker-dot\x22></span></span>'+_0x2caa75['outerHTML']+'⁠',_0x429fc3['addEventListener']('mouseenter',()=>{_0x429fc3['classList']['add']('ck-user__marker_hovered');}),_0x429fc3['addEventListener']('mouseleave',()=>{_0x429fc3['classList']['remove']('ck-user__marker_hovered');}),_0x429fc3;},_0x166053['isSimilar']=function(_0x300e16){return!(!this['getCustomProperty']('userPositionMarker')||!_0x300e16['getCustomProperty']('userPositionMarker')||this['getAttribute']('data-session-id')!=_0x300e16['getAttribute']('data-session-id'));},_0x166053;}(_0x49f498,_0x886191,_0x4254c2);}(_0x1a3b81,_0x565a16,_0xa8eb58,_0x3efaa5)}),_0x3efaa5['conversion']['for']('editingDowncast')['markerToHighlight']({'model':'user:range','view':_0x3b9716=>function(_0x40bb4c,_0x4932ad){const _0x205075=_0x40bb4c['markerName']['split'](':')[0x2];if(_0x205075===_0x4932ad['mySessionId'])return null;const _0x41183e=_0x4932ad['getUserBySessionId'](_0x205075);if(!_0x41183e)return{'id':_0x205075,'classes':[]};return{'id':_0x205075,'classes':['ck-user__selection',_0x41183e['color']['getSelectionClass']()],'attributes':{'data-session-id':_0x205075},'priority':0x7d0+_0x41183e['orderNumber']};}(_0x3b9716,_0xa8eb58)}),function(_0x269476){const _0x1a0aca=_0x269476['model'],_0x51675d=new Map(),_0x1dd114=_0x269476['plugins']['get'](i);_0x1a0aca['markers']['on']('update:user:range',(_0x221ae8,_0x253b39,_0xf2f89a,_0x22e9c3)=>{if(!_0x22e9c3&&_0x51675d['get'](_0x253b39['name']))return _0x51675d['get'](_0x253b39['name'])['detach'](),void _0x51675d['delete'](_0x253b39['name']);const _0x1f3eff=_0x253b39['name']['split'](':')[0x2];if(_0x1f3eff===_0x1dd114['mySessionId'])return;const _0x59ab54='user:position:'+_0x1f3eff;_0x1a0aca['markers']['has'](_0x59ab54)&&_0x269476['editing']['reconvertMarker'](_0x59ab54),_0x253b39['on']('change:range',(_0x124570,_0x1a7747,_0x47aae5)=>{if('$graveyard'!=_0x1a7747['root']['rootName']&&'$graveyard'==_0x253b39['getRange']()['root']['rootName']&&!_0x51675d['has'](_0x253b39['name'])){const _0x236567=_0x1a0aca['schema']['getNearestSelectionRange'](_0x47aae5['deletionPosition']);if(_0x236567){const _0x5a6f6a=_0x13075d['fromRange'](_0x236567);_0x51675d['set'](_0x253b39['name'],_0x5a6f6a),_0x5a6f6a['on']('change:range',(_0x293e23,_0x58c91b,_0x54cefb)=>{if('$graveyard'==_0x5a6f6a['root']['rootName']){const _0x420e53=_0x1a0aca['schema']['getNearestSelectionRange'](_0x54cefb['deletionPosition']);_0x420e53?(_0x5a6f6a['start']=_0x420e53['start'],_0x5a6f6a['end']=_0x420e53['end']):(_0x51675d['delete'](_0x253b39['name']),_0x5a6f6a['detach']());}});}}});}),_0x1a0aca['document']['on']('change',()=>{_0x51675d['size']>0x0&&_0x1a0aca['enqueueChange']({'isUndoable':!0x1},_0x14383a=>{for(const [_0x557136,_0x38d5f8]of _0x51675d)'$graveyard'==_0x1a0aca['markers']['get'](_0x557136)['getRange']()['root']['rootName']&&(te(_0x557136['split'](':')[0x2],_0x38d5f8['toRange'](),_0x1a0aca,_0x14383a),_0x38d5f8['detach']());_0x51675d['clear']();});});}(_0x3efaa5),this['_domEmitter']['listenTo'](_0x3979c9['document'],'keydown',(_0x57ea1d,{key:_0x5e5712})=>{'Escape'===_0x5e5712&&function(_0x55e692){_0x55e692['editing']['view']['change'](_0x25c8b8=>{for(const _0x2a8b8f of _0x55e692['model']['markers']){if(!_0x2a8b8f['name']['startsWith']('user:position'))continue;const _0x159ac8=_0x55e692['editing']['mapper']['markerNameToElements'](_0x2a8b8f['name']);if(_0x159ac8){for(const _0xf69b14 of _0x159ac8)_0x25c8b8['removeClass']('ck-user__marker_hovered',_0xf69b14);}}});}(_0x3efaa5);},{'useCapture':!0x0});}['afterInit'](){const _0x1e1247=this['editor'],_0x6e2855=_0x1e1247['commands']['get']('undo');_0x6e2855&&_0x1e1247['model']['on']('applyOperation',(_0x11a0de,_0x4d1469)=>{const _0x32828b=_0x4d1469[0x0];if(!_0x32828b['isDocumentOperation'])return;if('marker'!=_0x32828b['type']||!_0x32828b['name']['startsWith']('user:'))return;const _0x521a4b=_0x32828b['batch'];_0x6e2855['_createdBatches']['has'](_0x521a4b)&&(_0x32828b['newRange']=_0x32828b['oldRange']?_0x1e1247['model']['createRange'](_0x32828b['oldRange']['start'],_0x32828b['oldRange']['end']):null);},{'priority':'highest'});}['destroy'](){return this['_domEmitter']['stopListening'](),super['destroy']();}['createUserMarkerOperations'](){const _0x5e6553=this['editor'],_0x3d7540=_0x5e6553['model']['document'],_0x35c67b=_0x5e6553['plugins']['get'](i);_0x5e6553['model']['enqueueChange']({'isUndoable':!0x1},_0xe23f8d=>{const _0x38f683='user:range:'+_0x35c67b['mySessionId'],_0x3a4ad1='user:position:'+_0x35c67b['mySessionId'],_0xb88c42=_0x5e6553['model']['markers']['has'](_0x38f683);_0x5e6553['editing']['view']['hasDomSelection']?te(_0x35c67b['mySessionId'],_0x3d7540['selection']['getFirstRange'](),_0x5e6553['model'],_0xe23f8d):_0xb88c42&&(_0xe23f8d['removeMarker'](_0x38f683),_0xe23f8d['removeMarker'](_0x3a4ad1));});}}function te(_0x308156,_0x20f78a,_0x16a094,_0x5dbd5d){const _0x4a0ca4='user:range:'+_0x308156,_0x3baa0e='user:position:'+_0x308156,_0xd4709c=_0x20f78a['getContainedElement']();let _0xabb32d=_0x20f78a['start'];if(_0xd4709c&&_0xd4709c['is']('element','tableCell')){const _0x3aaf02=function(_0x3da217,_0x23e79a){for(const _0x3f88b1 of _0x3da217['getPositions']())if(_0x23e79a['schema']['checkChild'](_0x3f88b1,'$text'))return _0x3f88b1;}(_0x20f78a,_0x16a094);_0x3aaf02&&(_0xabb32d=_0x3aaf02,_0x20f78a=_0x5dbd5d['createRange'](_0xabb32d));}const _0x54e5f5=_0x5dbd5d['createRange'](_0xabb32d);_0x16a094['markers']['has'](_0x4a0ca4)?(_0x5dbd5d['updateMarker'](_0x4a0ca4,{'range':_0x20f78a}),_0x5dbd5d['updateMarker'](_0x3baa0e,{'range':_0x54e5f5})):(_0x5dbd5d['addMarker'](_0x4a0ca4,{'range':_0x20f78a,'usingOperation':!0x0}),_0x5dbd5d['addMarker'](_0x3baa0e,{'range':_0x54e5f5,'usingOperation':!0x0}));}function $(_0xc768ff,_0x220542,_0x2847c3){const _0xbc10aa=_0xc768ff['t'],t=_0xc768ff['t'];switch(_0x220542){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 _0xbc10aa({'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'},_0x2847c3);default:return'';}}let Q=0x1;class l extends _0x5543a5{static ['CollaborativeEditingService']=/* #__PURE__ -- @preserve */
25
+ ((()=>_0xf7aeca)());['_offset'];['sessionId'];['serverHistory'];['_channelId'];['_service'];['_document'];['_compressor'];['_bufferedOperations'];['_knownOperations'];['_knownRootNames'];['_pendingAction'];['_hasSelectionChanged'];['_sendBufferedOperationsDelayId'];['_baseBufferDelay'];['_currentBufferDelay'];['_lastSyncedOperationId'];['_disconnectionOperations'];['_operationIdentifier'];static get['requires'](){return[n,i,G,_0x3e4bfe,_0x222559,_0x3ae107];}static get['pluginName'](){return'RealTimeCollaborationClient';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}get['cloudDocumentVersion'](){return this['_lastServerVersion']+this['_offset'];}get['_lastServerVersion'](){return this['serverHistory']['version']-this['_offset'];}get['lastSyncVersion'](){const _0x57ec61=this['serverHistory']['getOperations']();for(let _0x3a4fcb=_0x57ec61['length']-0x1;_0x3a4fcb>=0x0;_0x3a4fcb--){const _0x3df23b=_0x57ec61[_0x3a4fcb];if(!this['_disconnectionOperations']['has'](_0x3df23b))return _0x3df23b['baseVersion']+0x1-this['_offset'];}return 0x0;}constructor(_0xf51147){if(super(_0xf51147),this['_offset']=0x0,this['sessionId']=null,this['serverHistory']=new _0x14c899(),this['editor']['config']['define']('collaboration',{}),this['_channelId']=this['editor']['config']['get']('collaboration.channelId'),!this['_channelId'])throw new _0x1c2f2a('collaboration-missing-channelid',this);const _0x573f7f=_0xf51147['config']['get']('cloudServices.bundleVersion')||nt;this['_service']=new l['CollaborativeEditingService'](_0x573f7f,this['_channelId']),this['_document']=this['editor']['model']['document'],this['_compressor']=new _0x232fab(),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 Z(this['_disconnectionOperations']);}['init'](){const _0x46b394=this['editor'],_0x3acc56=_0x46b394['plugins']['get'](_0x222559),_0x296c46=_0x46b394['plugins']['get'](n);this['listenTo'](_0x3acc56,'getOperationAuthor',(_0x3019ed,_0x319d93)=>{const _0x5f5912=_0x319d93[0x0];_0x5f5912['_authorId']&&(_0x3019ed['return']=_0x3acc56['getUser'](_0x5f5912['_authorId']),_0x3019ed['stop']()),null===_0x5f5912['_authorId']&&(_0x3019ed['return']=null,_0x3019ed['stop']());},{'priority':'high'}),this['listenTo'](_0x46b394['model']['document']['selection'],'change:range',(_0x3b06e3,_0x2073fd)=>{_0x2073fd['directChange']&&this['_refreshUserSelectionMarkers']();}),this['listenTo'](_0x46b394['editing']['view'],'change:hasDomSelection',()=>{this['_refreshUserSelectionMarkers']();}),this['_initThrowingOnDataSet'](),_0x46b394['model']['on']('applyOperation',(_0x1d04dd,_0x3f3acd)=>{const _0x392084=_0x3f3acd[0x0];_0x392084['isDocumentOperation']&&(this['_saveOperationInBuffer'](_0x392084),this['_shouldSendUpdate']()&&this['_sendBufferedOperationsDelayed']());}),this['_setUpDataInit'](),this['bind']('_isEditingAllowed')['to'](_0x296c46,'state',this,'_hasSynchronizationProblem',(_0x14962f,_0x49e493)=>'connected'===_0x14962f&&!_0x49e493),this['on']('change:_isEditingAllowed',()=>{this['_isEditingAllowed']?_0x46b394['disableReadOnlyMode']('rtc-offline'):_0x46b394['enableReadOnlyMode']('rtc-offline');}),this['_isEditingAllowed']?_0x46b394['disableReadOnlyMode']('rtc-offline'):_0x46b394['enableReadOnlyMode']('rtc-offline'),this['set']('_isConnected',!0x1);}async['reconnect'](){const _0x5acb31=this['editor']['plugins']['get'](i),_0x4e87a0=this['editor']['plugins']['get'](n);try{this['_isPendingUpdate']=!0x0,_0x5acb31['unregister'](this['_channelId']);const _0x1b5fd8=await this['_service']['reconnect'](_0x4e87a0['connection'],this['lastSyncVersion']);await this['_handleReconnectionResponse'](_0x1b5fd8)&&(this['_isPendingUpdate']=!0x1,this['_clearPendingAction']());const _0x2f5866=await this['_service']['getConnectedSessions']();_0x5acb31['register'](this['_channelId'],_0x2f5866),this['_handleSendingSelectionMarkers'](),this['_isConnected']=!0x0;}catch(_0x3fb6b3){if(function(_0x1d56e9){return'404'===_0x1d56e9['code'];}(_0x3fb6b3)&&this['sessionId'])await this['_connectAfterSessionHasBeenFlushed']();else{if(function(_0x2bbe1d){return'409'===_0x2bbe1d['code'];}(_0x3fb6b3)){const _0x492120=$(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'](_0x492120);}else{if(!(_0x3fb6b3 instanceof X))throw _0x3fb6b3;this['_handleReconnectionError']();}}}}['destroy'](){const _0xd2cb4d=this['editor']['plugins']['get'](n),_0x232257=this['editor']['plugins']['get'](i);this['editor']['enableReadOnlyMode']('rtc-destroyed'),_0x232257['channelSessions']['has'](this['_channelId'])&&_0x232257['unregister'](this['_channelId']),_0xd2cb4d['removeFromReconnectionStack'](this),this['_disconnectService'](),super['destroy']();}async['_handleReconnectionResponse'](_0x3991c4){if(this['sessionId']!==_0x3991c4['sessionId']&&this['_lastSyncedOperationId']!==_0x3991c4['lastOperationId'])throw new X();return this['sessionId']=_0x3991c4['sessionId'],this['_handleServerResponse']([],{..._0x3991c4,'wereChangesApplied':!0x1,'data':_0x3991c4['data']},'reconnect');}async['_connectService'](_0x54633a,_0x56dad2=!0x1){const {connection:_0x2b4a19}=this['editor']['plugins']['get'](n);l['CollaborativeEditingService']['getConnectedSessions'](_0x2b4a19,this['_channelId'])['then'](_0x2d565e=>this['_initSessionsHandling'](_0x2d565e))['catch'](_0x137b1f=>{this['_crash']('realtimecollaborationclient-init-session-connection-error',_0x137b1f);}),this['listenTo'](this['_service'],'operationsReceived',this['_handleReceivedOperations']['bind'](this)),this['listenTo'](this['_service'],'error',(_0x6aeadd,_0x225fdc)=>{this['_crash']('realtimecollaborationclient-init-service-internal-error',_0x225fdc);}),this['listenTo'](this['_service'],'disconnected',()=>{this['_isConnected']=!0x1;});const _0x7db345=this['_operationIdentifier']['getIdOfTheLastOperation'](_0x54633a);this['_isPendingUpdate']=!0x0;const _0x36db2a=await this['_service']['connect'](_0x2b4a19,this['_compressOperations'](_0x54633a),_0x7db345);if(this['sessionId']=_0x36db2a['sessionId'],_0x56dad2){if(!_0x36db2a['wereChangesApplied'])return void this['_handleReconnectionError']();this['_isPendingUpdate']=!0x1,this['_clearPendingAction'](),this['serverHistory']['reset'](),this['_offset']=_0x36db2a['offset'],this['serverHistory']['version']=this['_offset'],await this['_handleServerResponse'](_0x54633a,_0x36db2a,'reconnection:\x20flushed\x20session');}else await this['_handleInitialConnectionData'](_0x36db2a,_0x54633a);this['_handleSendingSelectionMarkers'](),this['_isConnected']=!0x0;}['_handleSendingSelectionMarkers'](){const _0x25b5f0=this['editor']['plugins']['get'](i),_0x253e32=this['editor']['plugins']['get'](G),_0x4a5355=_0x25b5f0['channelSessions']['get'](this['_channelId']);_0x4a5355&&_0x4a5355['length']>0x1?_0x253e32['createUserMarkerOperations']():this['listenTo'](_0x25b5f0,'sessionAdd:'+this['_channelId'],()=>{0x2===_0x25b5f0['channelSessions']['get'](this['_channelId'])['length']&&_0x253e32['createUserMarkerOperations']();});}async['_handleReceivedOperations'](_0x35aa56,_0x7b2009,_0x8f7d03,_0x1807ef){if(!this['_isPendingUpdate']&&this['_document']['version']==_0x7b2009){const _0x4368fe=this['_decompressOperations'](_0x8f7d03,_0x1807ef);await this['_fetchMissingUsers'](_0x4368fe),this['_handleExternalOperations'](_0x4368fe,_0x7b2009,_0x8f7d03['lastOperationId'])||this['_crash']('realtimecollaborationclient-init-service-incorrect-server-operation');}}async['_connectAfterSessionHasBeenFlushed'](){this['_disconnectService']();const {locale:_0x1962cc}=this['editor'];let _0x20747a;try{_0x20747a=await this['_service']['getDocumentDetails']();}catch{const _0x14558c=$(_0x1962cc,'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'](_0x14558c);}const _0x2fcd2f=_0x20747a['currentDocumentSession']||_0x20747a['lastDocumentSession'];if(this['_lastSyncedOperationId']!==_0x2fcd2f['lastOperationId']){const _0x1af39e=$(_0x1962cc,'The\x20last\x20saved\x20version\x20of\x20the\x20document\x20does\x20not\x20match\x20the\x20local\x20version.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.');return void this['_handleReconnectionError'](_0x1af39e);}await this['_connectService'](this['editor']['model']['document']['history']['getOperations'](),!0x0);}['_disconnectService'](){this['_service']['disconnect'](),this['_bufferedOperations']=[],clearTimeout(this['_sendBufferedOperationsDelayId']),this['stopListening'](this['_service']);}['_initSessionsHandling'](_0x15ac54){const _0x5489b2=this['editor']['plugins']['get'](i);this['listenTo'](_0x5489b2,'sessionAdd:'+this['_channelId'],(_0x4dab13,{session:_0x20f3e2})=>{if(_0x20f3e2['id']===_0x5489b2['mySessionId']){_0x4dab13['off']();const _0x3b3574=this['editor']['plugins']['has']('CommentsOnly')&&this['editor']['plugins']['get']('CommentsOnly');let _0x1ff01d=_0x20f3e2['permissions'];_0x3b3574&&_0x3b3574['isEnabled']&&(_0x1ff01d=_0x1ff01d['filter'](_0x248b9c=>'document:write'!==_0x248b9c)),this['editor']['plugins']['get']('Permissions')['setPermissions'](_0x1ff01d,this['_channelId']);}}),_0x5489b2['register'](this['_channelId'],_0x15ac54);}['_initThrowingOnDataSet'](){const _0x13181b=this['editor']['data']['set'];this['editor']['data']['set']=(..._0xa2b575)=>{if(!_0xa2b575[_0xa2b575['length']-0x1]['suppressErrorInCollaboration'])throw new _0x1c2f2a('realtimecollaborationclient-editor-setdata-and-editor-data-set-are-forbidden-in-real-time-collaboration',this);_0x13181b['apply'](this['editor']['data'],_0xa2b575);};}['_setUpDataInit'](){this['editor']['data']['on']('init',(_0x2fcf80,[_0x4e4835])=>{if(this['_document']['version'])throw new _0x1c2f2a('realtimecollaborationclient-init-document-already-initialized',this);_0x2fcf80['stop'](),this['_setPendingAction']();const _0x3fd939=this['editor']['config']['get']('rootsAttributes'),_0x319d41=this['_getOperationsFromInitData'](_0x4e4835,_0x3fd939);0x0==_0x319d41['length']&&_0x319d41['push'](new _0x570a93(0x0)),_0x2fcf80['return']=this['_connectService'](_0x319d41)['then'](()=>{this['editor']['plugins']['get'](n)['addToReconnectionStack'](this),this['editor']['data']['fire']('ready');})['catch'](_0x3035dc=>this['_crash']('realtimecollaborationclient-init-connection-failed',_0x3035dc))['finally'](()=>this['_clearPendingAction']());},{'priority':'high'}),this['editor']['on']('loadRoot',async(_0x2fc560,[_0x580961,_0x5963b5])=>{_0x2fc560['stop']();const _0x50188b=this['editor']['model']['document']['getRoot'](_0x580961);if(!this['_knownRootNames']['has'](_0x580961)){const _0x298b3e=_0x5963b5&&_0x5963b5['data']?_0x5963b5['data']:'',_0x41b7d1=_0x5963b5&&_0x5963b5['attributes']?_0x5963b5['attributes']:{};await this['_loadRoot'](_0x580961,_0x298b3e,_0x41b7d1);}this['editor']['model']['enqueueChange']({'isUndoable':!0x1},()=>{_0x50188b['_isLoaded']=!0x0,this['editor']['model']['document']['differ']['_bufferRootLoad'](_0x50188b);});},{'priority':'high'});}async['_fetchMissingUsers'](_0x518872){const _0x578596=this['editor']['plugins']['get'](_0x222559),{connection:_0x2f707e}=this['editor']['plugins']['get'](n),_0x4397cd=new Set();for(const _0x361199 of _0x518872){const _0x145187=_0x361199['_authorId'];_0x145187&&!_0x578596['getUser'](_0x145187)&&_0x4397cd['add'](_0x145187);}if(0x0===_0x4397cd['size'])return;const _0x57043f=await ct['getMany'](_0x2f707e,Array['from'](_0x4397cd));for(const _0x41d735 of _0x57043f)_0x578596['getUser'](_0x41d735['id'])||_0x578596['addUser'](_0x41d735);}['_getOperationsFromInitData'](_0x28524e,_0x2d5cba={}){const _0x268489=this['editor']['model'],_0x41734e=[];let _0x48e07c=0x0;const _0x182055='string'==typeof _0x28524e?{'main':_0x28524e}:_0x28524e;for(const _0x2d1294 of Object['keys'](_0x182055)){if(!this['_document']['roots']['has'](_0x2d1294))throw new _0x1c2f2a('realtimecollaborationclient-init-non-existent-root',this);const _0x3bbb03=this['editor']['data']['parse'](_0x182055[_0x2d1294]),_0x4d24f2=this['_document']['getRoot'](_0x2d1294),_0x40b336=new _0x552824(_0x268489['createPositionAt'](_0x4d24f2,0x0),_0x3bbb03,_0x48e07c++);_0x41734e['push'](_0x40b336);for(const [_0x31fb85,_0x19b975]of _0x3bbb03['markers']){const _0xab7705=_0x268489['createRange'](_0x268489['createPositionFromPath'](_0x4d24f2,_0x19b975['start']['path']['slice']()),_0x268489['createPositionFromPath'](_0x4d24f2,_0x19b975['end']['path']['slice']())),_0x52a229=new _0x242d8c(_0x31fb85,null,_0xab7705,_0x268489['markers'],!0x0,_0x48e07c++);_0x41734e['push'](_0x52a229);}}if(_0x2d5cba)for(const [_0x14543f,_0x43e680]of Object['entries'](_0x2d5cba)){const _0x18ad20=_0x268489['document']['getRoot'](_0x14543f);if(!_0x18ad20)throw new _0x1c2f2a('multi-root-editor-root-attributes-no-root',null);for(const [_0x45d7d2,_0x2646ce]of Object['entries'](_0x43e680))if(null!==_0x2646ce){const _0x56a9ff=new _0x40307c(_0x18ad20,_0x45d7d2,null,_0x2646ce,_0x48e07c++);_0x41734e['push'](_0x56a9ff);}}return _0x41734e;}async['_loadRoot'](_0x54b607,_0x5dcbec,_0x5b49bd){this['_getOperationsFromInitData']({[_0x54b607]:_0x5dcbec},{[_0x54b607]:_0x5b49bd})['forEach']((_0x27b2ca,_0x1526fa)=>{_0x27b2ca['baseVersion']=this['_document']['version']+_0x1526fa,_0x27b2ca['_isInit']=!0x0,this['_saveOperationInBuffer'](_0x27b2ca);}),this['_sendBufferedOperationsDelayed'](),await this['_waitUntilSynced']();}async['_handleInitialConnectionData'](_0x59d8db,_0x518592){let _0x3e153d;this['_offset']=_0x59d8db['offset'];const _0x21f230=_0x59d8db['wereChangesApplied']&&!_0x59d8db['initData'],_0x5cf2e3=_0x21f230?0x0:_0x59d8db['data']['baseVersion'];if(_0x518592['forEach'](_0x53b2a4=>{_0x53b2a4['_isInit']=!0x0,_0x53b2a4['createdAt']=_0x59d8db['sessionCreatedAt'],_0x53b2a4['_authorId']=null;}),_0x21f230)_0x3e153d=_0x518592,this['_applyOperationsSet'](_0x3e153d,_0x21f230);else{if(_0x59d8db['initData']){const _0xfae3cf=this['_getOperationsFromInitData'](_0x59d8db['initData']);this['_document']['history']['version']=-_0xfae3cf['length'],_0xfae3cf['forEach'](_0x40d51c=>{_0x40d51c['baseVersion']-=_0xfae3cf['length'],_0x40d51c['createdAt']=_0x59d8db['sessionCreatedAt'],_0x40d51c['_isInit']=!0x0,_0x40d51c['_authorId']=null;}),this['_applyOperationsSet'](_0xfae3cf,!0x0),this['serverHistory']['version']=-_0xfae3cf['length']+this['_offset'],this['_updateServerHistory'](_0xfae3cf);}this['_document']['history']['version']=_0x5cf2e3,_0x3e153d=this['_decompressOperations'](_0x59d8db['data'],_0x59d8db['metadata']),await this['_fetchMissingUsers'](_0x3e153d),this['_applyOperationsSet'](_0x3e153d,_0x21f230);}_0x59d8db['lastOperationId']&&(this['_operationIdentifier']['setIdForTheLastOperation'](_0x3e153d,_0x59d8db['lastOperationId']),this['_lastSyncedOperationId']=_0x59d8db['lastOperationId']),this['serverHistory']['version']=_0x5cf2e3+this['_offset'],this['_updateServerHistory'](_0x3e153d),_0x518592['filter'](_0x1506db=>{const _0x445347=this['_getAffectedRoot'](_0x1506db);return _0x445347&&!this['_knownRootNames']['has'](_0x445347);})['forEach']((_0x137e2f,_0x32ebe5)=>{_0x137e2f['baseVersion']=this['_document']['version']+_0x32ebe5,this['_saveOperationInBuffer'](_0x137e2f);}),this['_shouldSendUpdate']()?(this['_currentBufferDelay']=0x0,this['_sendBufferedOperationsDelayed'](!0x0),await this['_waitUntilSynced']()):(this['_isPendingUpdate']=!0x1,this['_clearPendingAction']());}['_crash'](_0x1af4a9,_0x58a25f){const _0x3828e5=_0x58a25f&&_0x58a25f['message'];if(_0x3828e5&&_0x3828e5['startsWith']('realtimecollaborationclient'))throw _0x58a25f;const _0x209019=this['editor']['plugins']['get'](n);throw this['_isPendingUpdate']=!0x0,_0x209019['disconnect'](),this['editor']['enableReadOnlyMode']('realtimecollaborationclient-error'),new _0x1c2f2a(_0x1af4a9,this['editor'],_0x3828e5?{'originalError':_0x3828e5}:void 0x0);}['_saveOperationInBuffer'](_0x30ea78){this['_knownOperations']['has'](_0x30ea78)||(this['_knownOperations']['add'](_0x30ea78),this['_bufferedOperations']['push'](_0x30ea78),this['_pendingAction']||'marker'==_0x30ea78['type']&&!_0x30ea78['affectsData']||this['_setPendingAction']());}['_sendBufferedOperationsDelayed'](_0xbf8c8a=!0x1){!_0xbf8c8a&&this['_isPendingUpdate']||(this['_isPendingUpdate']=!0x0,clearTimeout(this['_sendBufferedOperationsDelayId']),this['_sendBufferedOperationsDelayId']=setTimeout(()=>{this['_sendBufferedOperations']()['then'](_0x417f18=>{_0x417f18&&(this['_clearPendingAction'](),this['_isPendingUpdate']=!0x1);})['catch'](_0x2b4c42=>{this['_clearPendingAction'](),this['_isPendingUpdate']=!0x1,function(_0x882fe){return _0x882fe['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x882fe['message']['startsWith']('cloud-services-internal-error:\x20Collaborative\x20Editing\x20Service\x20is\x20not\x20connected.')||_0x882fe['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}(_0x2b4c42)||this['_crash'](_0x2b4c42['message'],_0x2b4c42);});},this['_currentBufferDelay']));}['_waitUntilSynced'](){return new Promise(_0x284c1d=>{this['on']('change:_isPendingUpdate',()=>{_0x284c1d();});});}async['_sendBufferedOperations'](){const _0x44e5b5=this['editor']['plugins']['get'](G);if(this['_shouldSendSelectionUpdate']()&&(_0x44e5b5['createUserMarkerOperations'](),this['_hasSelectionChanged']=!0x1),!this['_shouldSendUpdate']())return!0x0;const _0x410c7f=[...this['_bufferedOperations']];for(const _0x93c274 of _0x410c7f)_0x93c274['wasUndone']=this['_document']['history']['isUndoneOperation'](_0x93c274);const _0x23251a=this['_operationIdentifier']['getIdOfTheLastOperation'](_0x410c7f),_0x53086d=Q++,_0x2776c4=this['_compressOperations'](_0x410c7f),_0x3351a8=await this['_service']['sendOperations'](_0x2776c4,_0x2776c4['baseVersion'],_0x23251a);try{return await this['_handleServerResponse'](_0x410c7f,_0x3351a8,_0x53086d);}catch(_0x12282b){return this['_crash']('realtimecollaborationclient-sendbufferedoperations',_0x12282b);}}async['_handleServerResponse'](_0x26ee8f,_0xcbacfb,_0x3d8d94){if('error'in _0xcbacfb)throw _0xcbacfb['error'];let _0x598a46=!0x1;if(_0xcbacfb['wereChangesApplied']){_0xcbacfb['lastOperationId']&&(this['_lastSyncedOperationId']=_0xcbacfb['lastOperationId']),this['_bufferedOperations']=this['_bufferedOperations']['filter'](_0x26617d=>!_0x26ee8f['includes'](_0x26617d));for(const _0x3f8515 of _0x26ee8f)_0x3f8515['createdAt']='lastOperationAcceptedAt'in _0xcbacfb&&_0xcbacfb['lastOperationAcceptedAt']||void 0x0;Y(_0x26ee8f,_0xcbacfb['version']-_0x26ee8f['length']),this['_updateServerHistory'](_0x26ee8f);const _0x3e20c3=_0x26ee8f['filter'](_0x978c67=>{if(!_0x978c67['_isInit'])return!0x1;const _0x36cfde=this['_getAffectedRoot'](_0x978c67);return _0x36cfde&&!this['_knownRootNames']['has'](_0x36cfde);});Y(_0x3e20c3,this['_document']['version']),this['_applyOperationsSet'](_0x3e20c3),_0x598a46=!0x0,this['_currentBufferDelay']=this['_baseBufferDelay'];}else{const _0x376835=this['_decompressOperations'](_0xcbacfb['data'],_0xcbacfb['metadata'])['filter'](_0x22c27a=>_0x22c27a['baseVersion']>=this['_lastServerVersion']);_0x376835['forEach'](_0x1bf655=>this['_addKnownRoot'](_0x1bf655)),this['_bufferedOperations']=this['_bufferedOperations']['filter'](_0x32ce34=>!_0x32ce34['_isInit']||!this['_knownRootNames']['has'](this['_getAffectedRoot'](_0x32ce34))),this['_bufferedOperations']['length']&&Y(this['_bufferedOperations'],this['_bufferedOperations'][0x0]['baseVersion']),await this['_fetchMissingUsers'](_0x376835),_0x598a46=this['_handleExternalOperations'](_0x376835,_0xcbacfb['version'],_0xcbacfb['lastOperationId']),this['_currentBufferDelay']=Math['round'](this['_currentBufferDelay']/0x2);}return _0x598a46?!this['_shouldSendUpdate']()||(this['_sendBufferedOperationsDelayed'](!0x0),!0x1):this['_crash']('realtimecollaborationclient-handleserverresponse');}['_handleExternalOperations'](_0x5761cc,_0x32744e,_0x351913){try{const _0x5c9bdf={'document':this['_document'],'useRelations':!0x1,'padWithNoOps':!0x0},{operationsA:_0x5d8907,operationsB:_0x134d2f,originalOperations:_0x1dd455}=_0x31ad0e(_0x5761cc,this['_bufferedOperations'],_0x5c9bdf);Y(_0x5d8907,this['_document']['version']),Y(_0x134d2f,_0x32744e);for(const _0x1135ff of _0x5d8907){const _0x20d4fb=_0x1dd455['get'](_0x1135ff);_0x1135ff['_authorId']=_0x20d4fb?_0x20d4fb['_authorId']:null;}_0x351913&&(this['_operationIdentifier']['setIdForTheLastOperation'](_0x5761cc,_0x351913),this['_lastSyncedOperationId']=_0x351913),this['_bufferedOperations']=[..._0x134d2f],this['_applyOperationsSet'](_0x5d8907),this['_updateServerHistory'](_0x5761cc);}catch(_0x3be95e){return console['error'](_0x3be95e),!0x1;}return!0x0;}['_applyOperationsSet'](_0x1ad799,_0x6fddd4=!0x1){this['editor']['model']['enqueueChange']({'isUndoable':!0x1,'isLocal':!0x1},_0x39848d=>{for(const _0x3b4611 of _0x1ad799)this['_knownOperations']['add'](_0x3b4611),this['_addKnownRoot'](_0x3b4611),_0x39848d['batch']['addOperation'](_0x3b4611),this['editor']['model']['applyOperation'](_0x3b4611);});}['_addKnownRoot'](_0x4b7a73){const _0x1d5956=this['_getAffectedRoot'](_0x4b7a73);_0x1d5956&&this['_knownRootNames']['add'](_0x1d5956);}['_getAffectedRoot'](_0x1735c9){let _0x5d3d65,_0x390316;switch(_0x1735c9['type']){case'insert':_0x5d3d65=_0x1735c9['position']['root'];break;case'marker':if(_0x390316=_0x1735c9['newRange'],!_0x390316)return null;_0x5d3d65=_0x390316['root'];break;case'addRootAttribute':_0x5d3d65=_0x1735c9['root'];break;case'addRoot':_0x5d3d65=_0x1735c9['affectedSelectable'];break;case'move':_0x5d3d65=_0x1735c9['targetPosition']['root'];break;default:return null;}return _0x5d3d65['rootName'];}['_updateServerHistory'](_0x5c5a16){_0x5c5a16['forEach'](_0xabc812=>{const _0x2106e8=_0xabc812['clone']();_0x2106e8['_authorId']=_0xabc812['_authorId'],_0x2106e8['_isInit']=!!_0xabc812['_isInit'],_0x2106e8['createdAt']=_0xabc812['createdAt'],_0x2106e8['baseVersion']+=this['_offset'],_0xabc812['_isDisconnection']&&this['_disconnectionOperations']['add'](_0x2106e8),this['serverHistory']['addOperation'](_0x2106e8);});}['_handleReconnectionError'](_0x21d587){const _0x5ab6a5=this['editor']['plugins']['get']('Notification'),_0x5c2625=this['editor']['locale'];_0x21d587||(_0x21d587=$(_0x5c2625,'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.')),_0x5ab6a5['showWarning'](_0x21d587,{'title':$(_0x5c2625,'Synchronization\x20issue'),'namespace':'real-time-collaboration'}),this['_hasSynchronizationProblem']=!0x0,clearTimeout(this['_sendBufferedOperationsDelayId']),this['_bufferedOperations']=[],this['editor']['plugins']['get'](n)['disconnect']();}['_setPendingAction'](){this['_pendingAction']||(this['_pendingAction']=this['editor']['plugins']['get'](_0x3e4bfe)['add']($(this['editor']['locale'],'PENDING_ACTION_SENDING_DATA')));}['_clearPendingAction'](){this['_pendingAction']&&(this['editor']['plugins']['get'](_0x3e4bfe)['remove'](this['_pendingAction']),this['_pendingAction']=null);}['_compressOperations'](_0x3dd214){const _0x3e9e52=_0x3dd214['map'](_0x5bc2a3=>_0x5bc2a3['toJSON']());return this['_compressor']['compress'](_0x3e9e52);}['_decompressOperations'](_0x5c8ffe,_0x2439e5){return this['_compressor']['decompress'](_0x5c8ffe)['map']((_0x5d103b,_0x2b3533)=>{const _0x355a18='init'==_0x2439e5[_0x2b3533]['type'];if('InsertOperation'==_0x5d103b['__className']){const _0x50d89d=_0x5d103b['position']['root'];!this['_document']['getRoot'](_0x50d89d)&&(this['_document']['createRoot']('$root',_0x50d89d)['_isAttached']=!0x1);}const _0x45704b=_0xcfa427['fromJSON'](_0x5d103b,this['_document']);return _0x45704b['wasUndone']=_0x5d103b['wasUndone'],_0x45704b['_isInit']=_0x355a18,_0x45704b['_authorId']=_0x355a18?null:_0x2439e5[_0x2b3533]['userId'],_0x45704b['_isDisconnection']='cs:removeUser'===_0x2439e5[_0x2b3533]['type'],_0x45704b['createdAt']=_0x2439e5[_0x2b3533]['createdAt'],_0x45704b;});}['_refreshUserSelectionMarkers'](){this['_hasSelectionChanged']=!0x0,this['_shouldSendSelectionUpdate']()?this['_sendBufferedOperationsDelayed']():this['_hasSelectionChanged']=!0x1;}['_shouldSendSelectionUpdate'](){const _0x2456d1=this['editor']['plugins']['get'](i)['channelSessions']['get'](this['_channelId']);return!this['editor']['isReadOnly']&&!!_0x2456d1&&_0x2456d1['length']>0x1&&this['_hasSelectionChanged'];}['_shouldSendUpdate'](){return this['_bufferedOperations']['length']>0x0||this['_shouldSendSelectionUpdate']();}}class X extends Error{}function Y(_0x6fd525,_0x38cdab){for(const _0x498de4 of _0x6fd525)_0x498de4['baseVersion']=_0x38cdab++;}class Z{['_ignoredOperations'];['_operationToId'];constructor(_0x2770d5){this['_ignoredOperations']=_0x2770d5,this['_operationToId']=new WeakMap();}['getIdOfTheLastOperation'](_0x3ae66f){let _0x480e36=_0x3ae66f['length'];for(;_0x480e36--;){const _0x400b6a=_0x3ae66f[_0x480e36];if(!this['_ignoredOperations']['has'](_0x400b6a)){if(!this['_operationToId']['has'](_0x400b6a)){const _0x481a4d=_0xc06c50()['slice'](0x1,0x12);this['_operationToId']['set'](_0x400b6a,_0x481a4d);}return this['_operationToId']['get'](_0x400b6a);}}}['setIdForTheLastOperation'](_0x480956,_0x40a7f8){if(!_0x40a7f8)return;let _0x45644d=_0x480956['length'];for(;_0x45644d--;){const _0x1279bf=_0x480956[_0x45644d];this['_ignoredOperations']['has'](_0x1279bf)||this['_operationToId']['set'](_0x1279bf,_0x40a7f8);}}}class a extends _0x5543a5{static get['requires'](){return[l];}static get['pluginName'](){return'RealTimeCollaborativeEditing';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}class s extends _0x3037e3{static ['CommentsService']=/* #__PURE__ -- @preserve */
26
+ ((()=>_0x42707b)());['_services'];static get['requires'](){return[n,'CommentsRepository',i,_0x222559];}static get['pluginName'](){return'CloudServicesCommentsAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x1dcf34){super(_0x1dcf34),this['_services']=new Map();}async['init'](){const _0x23eddb=this['context'],_0x363dd3=_0x23eddb['plugins']['get']('CommentsRepository');if(_0x23eddb['plugins']['get'](n)['addToReconnectionStack'](this),_0x363dd3['adapter']={'addCommentThread':async({channelId:_0x289b53,threadId:_0x5c5c8a,comments:_0x1d8331,resolvedAt:_0x228716,resolvedBy:_0x13996a,context:_0x39be1b,attributes:_0x704b99})=>{const _0x1c81ec=await this['_getService'](_0x289b53)['addCommentThread']({'commentThreadId':_0x5c5c8a,'comments':_0x1d8331['map'](_0x54d061=>function(_0x52eed5,_0x4f115a,_0x1431d1){return{'commentThreadId':_0x1431d1,'commentId':_0x52eed5['commentId'],'userId':_0x52eed5['authorId'],'content':_0x52eed5['content'],'documentId':_0x4f115a,'createdAt':_0x52eed5['createdAt'],'attributes':_0x52eed5['attributes']||{}};}(_0x54d061,_0x289b53,_0x5c5c8a)),'resolvedAt':_0x228716,'resolvedBy':_0x13996a,'context':_0x39be1b,'attributes':_0x704b99})['catch'](at);return{'threadId':_0x1c81ec['commentThreadId'],'comments':_0x1c81ec['comments']};},'getCommentThread':async({channelId:_0x5a20b4,threadId:_0x480529})=>{const _0x5ba55=await this['_getService'](_0x5a20b4)['getCommentThread'](_0x480529)['catch'](at);return _0x5ba55['deletedAt']?null:(await this['_fetchMissingUsersForThreads']([_0x5ba55]),{'threadId':_0x5ba55['commentThreadId'],'comments':_0x5ba55['comments']['map'](B),'context':_0x5ba55['context'],'resolvedAt':_0x5ba55['resolvedAt'],'resolvedBy':_0x5ba55['resolvedBy'],'attributes':_0x5ba55['attributes']||{}});},'updateCommentThread':async({channelId:_0x5c3d98,threadId:_0x42a421,context:_0x252608,unlinkedAt:_0x5ddf68,attributes:_0x68a2dd})=>this['_getService'](_0x5c3d98)['updateCommentThread']({'commentThreadId':_0x42a421,'context':_0x252608,'attributes':_0x68a2dd,'unlinkedAt':_0x5ddf68})['catch'](F)['catch'](at),'resolveCommentThread':async({channelId:_0x1e061d,threadId:_0x3d8265})=>{const _0x358299=await this['_getService'](_0x1e061d)['resolveCommentThread'](_0x3d8265)['catch'](F)['catch'](at);return{'threadId':_0x358299['commentThreadId'],'resolvedAt':_0x358299['resolvedAt'],'resolvedBy':_0x358299['resolvedBy']};},'reopenCommentThread':async({channelId:_0x1bd5ef,threadId:_0x18d5f2})=>this['_getService'](_0x1bd5ef)['reopenCommentThread'](_0x18d5f2)['catch'](F)['catch'](at),'removeCommentThread':({channelId:_0x25523a,threadId:_0x4f48c9})=>this['_getService'](_0x25523a)['removeCommentThread'](_0x4f48c9)['catch'](F)['catch'](at),'addComment':({channelId:_0x3f0f6d,threadId:_0x46106e,commentId:_0x37fc61,content:_0x99de4,attributes:_0x543b48})=>this['_getService'](_0x3f0f6d)['addComment'](_0x46106e,_0x37fc61,_0x99de4,_0x543b48)['catch'](at),'updateComment':({channelId:_0x262a9a,threadId:_0x222f26,commentId:_0x34ff99,content:_0x1447e8,attributes:_0x16ba64})=>this['_getService'](_0x262a9a)['updateComment'](_0x222f26,_0x34ff99,_0x1447e8,_0x16ba64)['catch'](F)['catch'](at),'removeComment':({channelId:_0x10e89b,threadId:_0x14e2f9,commentId:_0x36c3db})=>this['_getService'](_0x10e89b)['removeComment'](_0x14e2f9,_0x36c3db)['catch'](F)['catch'](at)},_0x23eddb instanceof _0x446099){const _0x2037a6=_0x23eddb['config']['get']('collaboration.channelId'),_0x3495a5=_0x23eddb['plugins']['get'](i);await this['_setUpService'](_0x2037a6);const _0x44d846=await this['_services']['get'](_0x2037a6)['getConnectedSessions']();this['listenTo'](_0x3495a5,'sessionAdd:'+_0x2037a6,(_0x2536e0,{session:_0x4b91f7})=>{_0x4b91f7['id']===_0x3495a5['mySessionId']&&(_0x2536e0['off'](),this['context']['plugins']['get']('Permissions')['setPermissions'](_0x4b91f7['permissions'],_0x2037a6));}),_0x3495a5['register'](_0x2037a6,_0x44d846);}}async['_setUpService'](_0x28a81d){if(this['_services']['has'](_0x28a81d))throw new _0x1c2f2a('cloudservicescommentsadapter-connect-already-connected',null,{'channelId':_0x28a81d});const _0x346d38=this['context']['plugins']['get']('CommentsRepository'),_0x8c047d=new s['CommentsService'](_0x28a81d);this['_services']['set'](_0x28a81d,_0x8c047d),this['listenTo'](_0x8c047d,'commentThreadAdded',(_0xdea9df,_0x22b57f)=>{const {commentThreadId:_0x46ccb2,documentId:_0x1222ba,context:_0x1447b4,attributes:_0x34613a,resolvedAt:_0x1f82e9,resolvedBy:_0x274224,comments:_0x1b6602}=_0x22b57f;_0x346d38['getCommentThread'](_0x46ccb2)||_0x346d38['addCommentThread']({'threadId':_0x46ccb2,'channelId':_0x1222ba,'comments':_0x1b6602?_0x1b6602['map'](B):[],'context':_0x1447b4,'attributes':_0x34613a,'resolvedAt':_0x1f82e9,'resolvedBy':_0x274224,'isFromAdapter':!0x0});}),this['listenTo'](_0x8c047d,'commentThreadUpdated',(_0x4070f6,{commentThreadId:_0x5c7e49,documentId:_0x1a7174,context:_0x15aa32,unlinkedAt:_0x1bc03e,attributes:_0x2caf0c})=>{_0x346d38['getCommentThread'](_0x5c7e49)&&_0x346d38['updateCommentThread']({'threadId':_0x5c7e49,'channelId':_0x1a7174,'context':_0x15aa32,'unlinkedAt':_0x1bc03e,'attributes':_0x2caf0c,'isFromAdapter':!0x0});}),this['listenTo'](_0x8c047d,'commentThreadResolved',(_0x3e5fa9,{commentThreadId:_0x3cb85e,resolvedBy:_0x18f83a,resolvedAt:_0x4a6eaf})=>{const _0x2df4ec=_0x346d38['getCommentThread'](_0x3cb85e);_0x2df4ec&&_0x2df4ec['resolve']({'resolvedBy':_0x18f83a,'resolvedAt':_0x4a6eaf,'isFromAdapter':!0x0});}),this['listenTo'](_0x8c047d,'commentThreadReopened',(_0x1b2df6,{commentThreadId:_0x42f231})=>{const _0x42cef9=_0x346d38['getCommentThread'](_0x42f231);_0x42cef9&&_0x42cef9['reopen']({'isFromAdapter':!0x0});}),this['listenTo'](_0x8c047d,'commentThreadRemoved',(_0x40fc4b,{commentThreadId:_0x2cad12})=>{const _0x17787a=_0x346d38['getCommentThread'](_0x2cad12);_0x17787a&&_0x17787a['remove']({'isFromAdapter':!0x0});}),this['listenTo'](_0x8c047d,'commentAdded',(_0x3236bc,_0x5d938e)=>{const _0x3c6308=_0x5d938e['commentThreadId'],_0x32c563=_0x346d38['getCommentThread'](_0x3c6308);_0x32c563&&_0x32c563['addComment']({...B(_0x5d938e),'isFromAdapter':!0x0});}),this['listenTo'](_0x8c047d,'commentUpdated',(_0x172bf1,{commentThreadId:_0x238d48,commentId:_0x5253d8,content:_0x4dba28,attributes:_0x23e39c})=>{const _0x56bf1d=_0x346d38['getCommentThread'](_0x238d48);if(_0x56bf1d){const _0x323b4c=_0x56bf1d['getComment'](_0x5253d8);_0x323b4c&&_0x323b4c['update']({'content':_0x4dba28,'attributes':_0x23e39c,'isFromAdapter':!0x0});}}),this['listenTo'](_0x8c047d,'commentRemoved',(_0x4befa9,{commentThreadId:_0x300dd9,commentId:_0x59b24d})=>{const _0x5f2ec4=_0x346d38['getCommentThread'](_0x300dd9);if(_0x5f2ec4){const _0x3df250=_0x5f2ec4['getComment'](_0x59b24d);_0x3df250&&_0x3df250['remove']({'isFromAdapter':!0x0});}}),await this['_connectService'](_0x28a81d);}['destroy'](){if(this['context']instanceof _0x446099){const _0x17da48=this['context']['config']['get']('collaboration.channelId');this['_terminateService'](_0x17da48);}}['_terminateService'](_0x30f4d7){if(!this['_services']['has'](_0x30f4d7))throw new _0x1c2f2a('cloudservicescommentsadapter-disconnect-not-exist',null,{'channelId':_0x30f4d7});this['_getService'](_0x30f4d7)['disconnect'](),this['_services']['delete'](_0x30f4d7);}async['reconnect'](){for(const _0x2c51e9 of this['_services']['keys']())await this['_connectService'](_0x2c51e9);if(this['context']instanceof _0x446099){const _0x5ecbe9=this['context']['config']['get']('collaboration.channelId'),_0x28092e=this['context']['plugins']['get'](i);_0x28092e['unregister'](_0x5ecbe9);const _0x5f4e16=await this['_services']['get'](_0x5ecbe9)['getConnectedSessions']();_0x28092e['register'](_0x5ecbe9,_0x5f4e16);}}async['_connectService'](_0x4e8bd1){const {connection:_0x429a72}=this['context']['plugins']['get'](n),_0xc14dc7=this['context']['plugins']['get']('CommentsRepository'),_0x1b3b8f=this['_services']['get'](_0x4e8bd1),_0x11c931=await _0x1b3b8f['connect'](_0x429a72);await this['_fetchMissingUsersForThreads'](_0x11c931);const _0x490346=new Set(Array['from'](_0xc14dc7['getCommentThreads']({'channelId':_0x4e8bd1}),_0x3ec47c=>_0x3ec47c['id']));for(const _0x28b4c7 of _0x11c931)_0x28b4c7['deletedAt']||_0x490346['delete'](_0x28b4c7['commentThreadId']);for(const _0x5d6af0 of _0x490346)_0xc14dc7['getCommentThread'](_0x5d6af0)['remove']({'isFromAdapter':!0x0});for(const _0x41dd45 of _0x11c931){let _0x3e8477=_0xc14dc7['getCommentThread'](_0x41dd45['commentThreadId']);const {commentThreadId:_0x1e8f2c,context:_0x412f57,attributes:_0x4c66ae,resolvedBy:_0x408b6d,resolvedAt:_0x1c1756,unlinkedAt:_0x149b08,deletedAt:_0x2c55e5}=_0x41dd45;if(_0x2c55e5)continue;_0x3e8477||(_0x3e8477=_0xc14dc7['addCommentThread']({'channelId':_0x4e8bd1,'threadId':_0x1e8f2c,'context':_0x412f57,'attributes':_0x4c66ae||{},'resolvedBy':_0x408b6d,'resolvedAt':_0x1c1756,'unlinkedAt':_0x149b08,'isFromAdapter':!0x0}));const _0x47f177=new Set(Array['from'](_0x3e8477['comments'],_0x5b421a=>_0x5b421a['id']));for(const _0x4fb200 of _0x41dd45['comments'])_0x47f177['delete'](_0x4fb200['commentId']);for(const _0x43f6ba of _0x47f177)_0x3e8477['getComment'](_0x43f6ba)['remove']({'isFromAdapter':!0x0});for(const _0x496901 of _0x41dd45['comments']){const _0x1cae0e=_0x3e8477['getComment'](_0x496901['commentId']);_0x1cae0e?_0x1cae0e['content']!==_0x496901['content']&&_0x1cae0e['update']({'content':_0x496901['content'],'isFromAdapter':!0x0}):_0x3e8477['addComment'](Object['assign'](B(_0x496901),{'isFromAdapter':!0x0}));}}}['_getService'](_0x5a5890){if(!this['_services']['has'](_0x5a5890))throw new _0x1c2f2a('cloudservicescommentsadapter-service-not-exist',null,{'channelId':_0x5a5890});return this['_services']['get'](_0x5a5890);}async['_fetchMissingUsersForThreads'](_0x21fbfe){const _0x403e37=this['context']['plugins']['get'](_0x222559),{connection:_0x1a8ee8}=this['context']['plugins']['get'](n),_0x978967=new Set();for(const {resolvedBy:_0x29cab3,comments:_0x455069}of _0x21fbfe){_0x29cab3&&!_0x403e37['getUser'](_0x29cab3)&&_0x978967['add'](_0x29cab3);for(const {userId:_0x2cfc33}of _0x455069)_0x403e37['getUser'](_0x2cfc33)||_0x978967['add'](_0x2cfc33);}if(0x0===_0x978967['size'])return;const _0x57cbf1=await ct['getMany'](_0x1a8ee8,Array['from'](_0x978967));for(const _0x2ffb34 of _0x57cbf1)_0x403e37['getUser'](_0x2ffb34['id'])||_0x403e37['addUser'](_0x2ffb34);}}async function F(_0x5e099e){if('404'!==_0x5e099e['code'])throw _0x5e099e;}function at(_0x1138b8){if((_0x1f8893=_0x1138b8)['message']['startsWith']('cloud-services-internal-error:\x20Comments\x20Service\x20is\x20not\x20connected.')||_0x1f8893['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x1f8893['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.'))return new Promise(()=>{});var _0x1f8893;throw _0x1138b8;}function B(_0x446b4b){return{'threadId':_0x446b4b['commentThreadId'],'commentId':_0x446b4b['commentId'],'content':_0x446b4b['content'],'createdAt':_0x446b4b['createdAt'],'authorId':_0x446b4b['userId'],'attributes':_0x446b4b['attributes']||{}};}class m extends _0x5543a5{static ['TrackChangesService']=/* #__PURE__ -- @preserve */
27
+ ((()=>tt)());['_bufferedRequests'];['_trackChangesService'];static get['requires'](){return[s,'TrackChangesEditing',n];}static get['pluginName'](){return'CloudServicesTrackChangesAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x5653ac){super(_0x5653ac);const _0x4075c7=this['editor']['config']['get']('collaboration.channelId');this['_bufferedRequests']=new Map(),this['_trackChangesService']=new m['TrackChangesService'](_0x4075c7);}['init'](){const _0x4a1c9b=this['editor']['plugins']['get'](n),_0x466682=this['editor']['plugins']['get']('TrackChangesEditing');return _0x466682['adapter']={'getSuggestion':async _0xc2d765=>{await this['_waitForServiceReady']();const _0x256cde=await this['_trackChangesService']['get'](_0xc2d765)['catch'](k);return await this['_fetchMissingUsersForThreads']([_0x256cde]),_0x256cde;},'addSuggestion':async({id:_0x2331df,type:_0x15ffc8,data:_0x23aae8,originalSuggestionId:_0x5d5ae7,attributes:_0x202aed})=>{await this['_waitForServiceReady']();const _0x247112={'id':_0x2331df,'type':_0x15ffc8,'data':_0x23aae8,'originalSuggestionId':_0x5d5ae7,'attributes':_0x202aed},_0x136316=await this['_trackChangesService']['add'](_0x2331df,_0x15ffc8,_0x23aae8,_0x5d5ae7,_0x202aed)['catch'](_0x3ecd1c=>{if(ht(_0x3ecd1c))return new Promise(_0xd861c9=>{this['_bufferedRequests']['set'](_0x2331df,{'resolve':_0xd861c9,'suggestionData':_0x247112});});throw _0x3ecd1c;});return this['_bufferedRequests']['delete'](_0x2331df),_0x136316;},'updateSuggestion':async(_0x50033e,_0x3cb117)=>{if(await this['_waitForServiceReady'](),'open'!==_0x3cb117['state'])return this['_trackChangesService']['update'](_0x50033e,_0x3cb117)['catch'](k);}},this['listenTo'](this['_trackChangesService'],'suggestionUpdated',(_0x1af952,_0x44e6bb)=>{_0x466682['hasSuggestion'](_0x44e6bb['id'])&&(_0x466682['getSuggestion'](_0x44e6bb['id'])['attributes']=_0x44e6bb['attributes']);}),this['_trackChangesService']['connect'](_0x4a1c9b['connection'])['then'](_0x158202=>(_0x4a1c9b['addToReconnectionStack'](this),this['_fetchMissingUsersForThreads'](_0x158202)['then'](()=>{for(const _0x320540 of _0x158202){_0x466682['addSuggestionData'](_0x320540)['_saved']=!0x0;}})));}async['reconnect'](){const _0x5a20a6=this['editor']['plugins']['get']('TrackChangesEditing'),{connection:_0x407b67}=this['editor']['plugins']['get'](n),_0x4d4f7f=await this['_trackChangesService']['connect'](_0x407b67);await this['_fetchMissingUsersForThreads'](_0x4d4f7f);for(const {suggestionData:_0x1485ac,resolve:_0x3d5376}of this['_bufferedRequests']['values']()){let _0x2f0a11=_0x4d4f7f['find'](_0x87ec54=>_0x87ec54['id']===_0x1485ac['id']);_0x2f0a11||(_0x2f0a11=await this['_trackChangesService']['add'](_0x1485ac['id'],_0x1485ac['type'],_0x1485ac['data'],_0x1485ac['originalSuggestionId'])),_0x3d5376(_0x2f0a11);}for(const _0x20b906 of _0x4d4f7f)_0x5a20a6['hasSuggestion'](_0x20b906['id'])||_0x5a20a6['addSuggestionData'](_0x20b906);}async['_waitForServiceReady'](){this['_trackChangesService']['isConnected']||await new Promise(_0x5bce43=>{this['listenTo'](this['_trackChangesService'],'connected',_0x1335d=>{_0x1335d['off'](),_0x5bce43();});});}async['_fetchMissingUsersForThreads'](_0x2f6ca1){const _0x3bce86=this['editor']['plugins']['get'](_0x222559),{connection:_0x2e27b2}=this['editor']['plugins']['get'](n),_0x4024f3=new Set();for(const {authorId:_0x739bd1}of _0x2f6ca1)_0x3bce86['getUser'](_0x739bd1)||_0x4024f3['add'](_0x739bd1);if(0x0===_0x4024f3['size'])return;const _0xa306c2=await ct['getMany'](_0x2e27b2,Array['from'](_0x4024f3));for(const _0x2b782a of _0xa306c2)_0x3bce86['getUser'](_0x2b782a['id'])||_0x3bce86['addUser'](_0x2b782a);}}function k(_0x9d4476){if(ht(_0x9d4476))return new Promise(()=>{});throw _0x9d4476;}function ht(_0x295d78){return _0x295d78['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x295d78['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}class g extends _0x5543a5{static get['requires'](){return['Comments',s,a,n];}static get['pluginName'](){return'RealTimeCollaborativeComments';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['init'](){const _0x2e5161=this['editor']['plugins']['get'](n),_0x53e36b=this['editor']['plugins']['get']('CommentsEditing'),_0x8f6c7c=this['editor']['plugins']['get'](s);return this['editor']['data']['once']('ready',()=>{this['listenTo'](_0x2e5161,'change:state',(_0x520a80,_0xe58a4a,_0x47987f)=>{_0x53e36b['isThreadsLoadingPaused']='connected'!==_0x47987f;});}),this['listenTo'](_0x2e5161,'change:state',(_0x33e2c2,_0x5a3d16,_0x1a9049)=>{this['editor']['plugins']['get']('CommentsRepository')['switchReadOnly']('connected'!==_0x1a9049);}),_0x8f6c7c['_setUpService'](this['editor']['config']['get']('collaboration.channelId'));}['destroy'](){this['editor']['plugins']['get'](s)['_terminateService'](this['editor']['config']['get']('collaboration.channelId')),super['destroy']();}}class lt extends _0x5543a5{static get['requires'](){return[g,m,'TrackChanges'];}static get['pluginName'](){return'RealTimeCollaborativeTrackChanges';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}class c extends _0x5543a5{static ['RevisionHistoryService']=/* #__PURE__ -- @preserve */
28
+ ((()=>_0x5f0b95)());['_lastRequestId'];['_revisionTracker'];['_revisionHistoryService'];['_oldOffset'];static get['requires'](){return[n,l,'RevisionHistory',i,_0x222559];}static get['pluginName'](){return'CloudServicesRevisionHistoryAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x4b47c1){super(_0x4b47c1);const _0x17c7d3=this['editor']['config']['get']('collaboration.channelId');this['_lastRequestId']=null,this['_revisionTracker']=this['editor']['plugins']['get']('RevisionTracker'),this['_revisionHistoryService']=new c['RevisionHistoryService'](_0x17c7d3);}async['init'](){const _0x30b7f4=this['editor']['plugins']['get'](l),_0x1f9ed8=_0x30b7f4['serverHistory'],_0x4b339f=this['editor']['plugins']['get'](n);this['_revisionTracker']['setSource']({'history':_0x1f9ed8,'getLatestVersion':()=>this['_getLatestVersion'](),'getCurrentRevisionId':()=>_0x30b7f4['sessionId']});const _0xe32ce7=this['editor']['config']['get']('cloudServices.bundleVersion')||nt,_0x1c57e4=await _0x167f86['isBundleUploaded'](_0x4b339f['connection'],_0xe32ce7);this['editor']['plugins']['get']('RevisionHistory')['adapter']={'getRevision':async({revisionId:_0x3863ca})=>(await this['_waitForServiceReady'](),await this['_revisionHistoryService']['getRevision'](_0x3863ca)),'updateRevisions':async _0x296204=>{await this['_waitForServiceReady']();const _0x1171ba=this['_revisionTracker']['currentRevision'];if(_0x1c57e4&&0x1===_0x296204['length']&&_0x296204[0x0]['id']===_0x1171ba['id'])return _0x296204;for(const _0x3123e8 of _0x296204)_0x3123e8['id']===_0x1171ba['id']&&(_0x3123e8['isEmptyCurrent']=_0x3123e8['fromVersion']===_0x3123e8['toVersion']);return this['_revisionHistoryService']['updateRevisions'](_0x296204,this['_lastRequestId'])['then'](_0x4b57d5=>(this['_lastRequestId']=_0x4b57d5,_0x296204))['catch'](_0x4e3956=>{if(q(_0x4e3956)||'400'===_0x4e3956['code']&&void 0x0!==_0x4e3956['data']['wrongRequestId']){for(const _0x4603ab of _0x296204){!this['_revisionTracker']['repository']['getRevision'](_0x4603ab['id'])||this['_revisionTracker']['_bufferUpdate'](_0x4603ab['id'],_0x4603ab,!0x1);}if(q(_0x4e3956))throw _0x4e3956;return _0x296204;}throw _0x4e3956;});}},this['listenTo'](this['_revisionHistoryService'],'revisionsUpdated',(_0x40c2a5,{revisionsData:_0x52ef2b,requestId:_0x24a8f8})=>{Math['max'](..._0x52ef2b['map'](_0x1a86c9=>_0x1a86c9['toVersion']))>this['_getLatestVersionFromServerOperations']()-0x1?this['_getLatestVersion']()['then'](()=>{this['_handleRevisionsUpdate'](_0x52ef2b,_0x24a8f8);}):this['_handleRevisionsUpdate'](_0x52ef2b,_0x24a8f8);});const {revisions:_0xea5979,requestId:_0x1571dd}=await this['_revisionHistoryService']['connect'](_0x4b339f['connection']);_0x4b339f['addToReconnectionStack'](this),this['_lastRequestId']=_0x1571dd,await this['_fetchMissingUsers'](_0xea5979);for(const _0x3dd752 of _0xea5979)this['_revisionTracker']['addRevisionData'](_0x3dd752);this['listenTo'](_0x30b7f4,'change:_isConnected',(_0x9aaf64,_0x1032be,_0x3d9eae)=>{_0x3d9eae&&(this['_oldOffset']=_0x30b7f4['_offset'],_0x9aaf64['off']());}),this['_revisionTracker']['bind']('isEnabled')['to'](_0x4b339f,'state',_0x50a450=>_0x50a450===_0x7ec47c['CONNECTED']);}async['reconnect'](){const _0x486f67=this['editor']['plugins']['get'](n),_0x3039ff=this['editor']['plugins']['get'](l),_0x262e36=async()=>{const _0xa69d54=this['_revisionTracker']['currentRevision'],_0x112865=_0xa69d54['id'],_0x38993e=_0x112865!==_0x3039ff['sessionId'];if(_0x38993e){const _0x27e074=_0x3039ff['_offset']-this['_oldOffset'],_0x2ad574=this['_getLatestVersionFromServerOperations']();this['_revisionTracker']['_revisionDataBuilder']['reInit']();if(_0xa69d54['toVersion']+_0x27e074!==_0x2ad574){const _0x56a0a8=_0xa69d54['fromVersion']+_0x27e074,_0x289554=this['editor']['plugins']['get'](_0x222559),_0x316166=this['_revisionTracker']['buildRevisionData']({'revision':_0xa69d54,'from':_0x56a0a8,'to':_0x2ad574});_0x316166['id']=_0xa69d54['id'];const _0x116e38=_0x316166['authorsIds']['map'](_0x333606=>_0x289554['getUser'](_0x333606));_0xa69d54['_update']({..._0x316166,'authors':_0x116e38},!0x0),this['_revisionTracker']['_bufferUpdate'](_0xa69d54['id'],_0x316166,!0x0);}this['_revisionTracker']['_startingVersion']=_0x2ad574,(_0xa69d54['toVersion']===_0xa69d54['fromVersion']&&!this['_revisionTracker']['_bufferedUpdates']['has'](_0x112865)&&this['_revisionTracker']['repository']['_revisions']['remove'](_0x112865),this['_revisionTracker']['_createCurrentRevision'](_0x2ad574));}const {revisions:_0xafa0ee,requestId:_0x2c49b3}=await this['_revisionHistoryService']['reconnect'](_0x486f67['connection'],this['_lastRequestId']);_0x38993e&&_0xafa0ee['length']>0x0?_0x3039ff['_handleReconnectionError']():(await this['_fetchMissingUsers'](_0xafa0ee),this['_handleRevisionsUpdate'](_0xafa0ee,_0x2c49b3),this['_revisionTracker']['sendBufferedUpdates']());};return _0x3039ff['_isConnected']?_0x262e36():new Promise((_0x1dcbbd,_0xef2b)=>{_0x3039ff['once']('change:_isConnected',()=>{_0x262e36()['then'](_0x1dcbbd)['catch'](_0xef2b);});});}['destroy'](){super['destroy']();}async['_waitForServiceReady'](){this['_revisionHistoryService']['isConnected']||await new Promise(_0x1c66b8=>{this['listenTo'](this['_revisionHistoryService'],'connected',_0x4fc98a=>{_0x4fc98a['off'](),_0x1c66b8();});});}['_getLatestVersionFromServerOperations'](){const _0x14438b=this['editor']['plugins']['get'](l)['serverHistory']['getOperations']()['reverse']();for(const _0x3ec03e of _0x14438b)if('marker'!==_0x3ec03e['type']||_0x3ec03e['affectsData'])return _0x3ec03e['baseVersion']+0x1;}['_getLatestVersion'](){const _0xc179bd=this['editor']['plugins']['get'](l);return new Promise(_0x39b53b=>{_0xc179bd['_isPendingUpdate']?_0xc179bd['once']('change:_isPendingUpdate',()=>{_0x39b53b(this['_getLatestVersionFromServerOperations']());}):_0x39b53b(this['_getLatestVersionFromServerOperations']());});}['_handleRevisionsUpdate'](_0x2d9ad4,_0x564b88){const _0x462f4e=this['_revisionTracker']['repository'];this['_lastRequestId']=_0x564b88;for(const _0x2d08cd of _0x2d9ad4){const _0x67d4f5=_0x462f4e['getRevision'](_0x2d08cd['id']);if(_0x67d4f5){if((_0x2d08cd['fromVersion']||_0x2d08cd['toVersion'])&&(_0x2d08cd['diffData']=null),_0x67d4f5===this['_revisionTracker']['currentRevision']){const _0x2d6acc=Math['max'](_0x67d4f5['toVersion'],_0x2d08cd['toVersion']),_0x334689=Math['max'](_0x67d4f5['fromVersion'],_0x2d08cd['fromVersion']);let _0xe114ac;_0x67d4f5['toVersion']===_0x2d08cd['toVersion']&&_0x67d4f5['fromVersion']===_0x2d08cd['fromVersion']?(_0xe114ac=!0x0,this['_preventResendingRevisionData'](_0x2d08cd)):_0x2d08cd['toVersion']===_0x2d6acc&&_0x2d08cd['fromVersion']===_0x334689?_0xe114ac=!0x1:(_0x67d4f5['toVersion']===_0x2d6acc&&_0x67d4f5['fromVersion']===_0x334689||this['_fixRevision']({'revision':_0x67d4f5,'from':_0x334689,'to':_0x2d6acc}),_0xe114ac=!0x0),_0xe114ac&&(delete _0x2d08cd['fromVersion'],delete _0x2d08cd['toVersion'],delete _0x2d08cd['diffData'],delete _0x2d08cd['createdAt'],delete _0x2d08cd['authorsIds']);}this['_revisionTracker']['setRevisionData'](_0x2d08cd),this['_preventResendingRevisionData'](_0x2d08cd);}else this['_revisionTracker']['addRevisionData'](_0x2d08cd);}const _0x2c1eb5=_0x462f4e['getRevisions']();_0x2c1eb5['reverse']();for(let _0x5a2dad=0x0;_0x5a2dad<_0x2c1eb5['length']-0x1;_0x5a2dad++){const _0xd05660=_0x2c1eb5[_0x5a2dad],_0xf68033=_0x2c1eb5[_0x5a2dad+0x1];if(_0xd05660['fromVersion']<_0xf68033['toVersion']){const _0x40dbf1=_0xf68033['toVersion'],_0x43190c=Math['max'](_0x40dbf1,_0xd05660['toVersion']);this['_fixRevision']({'revision':_0xd05660,'from':_0x40dbf1,'to':_0x43190c});}}}['_fixRevision']({revision:_0x30f820,from:_0x10afac,to:_0x289dac}={}){const _0x59eebf=this['editor']['plugins']['get'](_0x222559),_0x53670a=this['_revisionTracker']['buildRevisionData']({'revision':_0x30f820,'from':_0x10afac,'to':_0x289dac});_0x53670a['authors']=_0x53670a['authorsIds']['map'](_0x2c869f=>_0x59eebf['getUser'](_0x2c869f)),_0x30f820['_update'](_0x53670a);}['_preventResendingRevisionData'](_0x18dcde){const _0x5a1c77={};_0x5a1c77['id']=_0x18dcde['id'];for(const _0x20d35b of Object['keys'](_0x18dcde))'id'!==_0x20d35b&&(_0x5a1c77[_0x20d35b]=void 0x0);this['_revisionTracker']['_bufferUpdate'](_0x5a1c77['id'],_0x5a1c77,!0x0);}async['_fetchMissingUsers'](_0x4cf1bc){const _0x409a7e=this['editor']['plugins']['get'](_0x222559),{connection:_0x56bc63}=this['editor']['plugins']['get'](n),_0x5cdb5b=new Set();for(const _0x1708d4 of _0x4cf1bc){for(const _0x279b1a of _0x1708d4['authorsIds'])_0x388cd8(_0x279b1a);_0x1708d4['creatorId']&&_0x388cd8(_0x1708d4['creatorId']);}if(0x0===_0x5cdb5b['size'])return;const _0x3a075a=await ct['getMany'](_0x56bc63,Array['from'](_0x5cdb5b));for(const _0x1e8189 of _0x3a075a)_0x409a7e['getUser'](_0x1e8189['id'])||_0x409a7e['addUser'](_0x1e8189);function _0x388cd8(_0x2095bf){_0x409a7e['getUser'](_0x2095bf)||_0x5cdb5b['add'](_0x2095bf);}}}function q(_0x2eded9){return _0x2eded9['message']['startsWith']('cloud-services-internal-error:\x20Revision\x20History\x20Service\x20is\x20not\x20connected.')||_0x2eded9['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x2eded9['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}class dt extends _0x5543a5{static get['requires'](){return['RevisionHistory',c,a];}static get['pluginName'](){return'RealTimeCollaborativeRevisionHistory';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}class b extends _0x4d2917{['_collapseAt'];constructor(_0x2515c3,_0x45e5b2=0x6){super(_0x2515c3);const _0x215be6=this['bindTemplate'];this['set']('isHidden',!0x0),this['set']('usersCount',0x0),this['_collapseAt']=_0x45e5b2,this['bind']('isHidden')['to'](this,'usersCount',_0x1cb19d=>_0x1cb19d<_0x45e5b2),this['setTemplate']({'tag':'div','attributes':{'class':['ck','ck-presence-list__list-item',_0x215be6['if']('isHidden','ck-presence-list__counter--hidden')],'role':'listitem'},'children':[{'tag':'div','attributes':{'class':['ck','ck-presence-list__users-counter']},'children':[{'tag':'div','attributes':{'class':['ck','ck-presence-list__users-counter__text']},'children':[{'text':_0x215be6['to']('usersCount',_0x28102c=>'+'+(_0x28102c-this['_collapseAt']+0x2)['toString']())}]}]}]});}}class is extends _0x4d2917{['items'];['keystrokes'];constructor(_0x26c3b0){super(_0x26c3b0);const _0x147b24=this['bindTemplate'];this['items']=this['createCollection'](),this['keystrokes']=new _0x9966a1(),this['set']({'hasPopup':!0x1,'isExpanded':!0x1}),this['setTemplate']({'tag':'div','attributes':{'aria-haspopup':_0x147b24['if']('hasPopup'),'aria-expanded':_0x147b24['to']('isExpanded',_0x19a31f=>this['hasPopup']&&String(_0x19a31f)),'aria-label':_0x147b24['to']('hasPopup',_0x4ff78d=>$(_0x26c3b0,_0x4ff78d?'Collapsed\x20connected\x20users\x20list\x20(press\x20ENTER\x20to\x20open\x20it)':'Connected\x20users\x20list')),'role':'list','tabindex':_0x147b24['to']('hasPopup',_0x3cfb61=>!!_0x3cfb61&&0x0),'class':['ck','ck-presence-list__list']},'children':this['items'],'on':{'mouseenter':_0x147b24['to'](()=>this['fire']('presencelist:show')),'mouseleave':_0x147b24['to'](_0x1e6e47=>{const _0x4ac64e=_0x1e6e47,_0x4a8977=document['querySelector']('.ck-presence-list__dropdown-list'),_0x290caf=document['querySelector']('.ck-balloon-panel_with-arrow');_0x4a8977?.['contains'](_0x4ac64e['relatedTarget'])||_0x290caf?.['contains'](_0x4ac64e['relatedTarget'])||this['fire']('presencelist:hide');})}}),this['on']('change:hasPopup',(_0x2be911,_0x236028,_0x3b27ae)=>{this['element']&&(_0x3b27ae?this['element']['setAttribute']('aria-expanded',String(this['isExpanded'])):this['element']['removeAttribute']('aria-expanded'));});}['focus'](){this['element']['focus']();}['render'](){super['render'](),this['keystrokes']['listenTo'](this['element']);}}class v extends _0x4d2917{['counterView'];['inlineListView'];constructor(_0x5ee1ff,_0x706c93=0x6){super(_0x5ee1ff);const _0x313893=this['bindTemplate'];this['set']('isCollapsed',!0x0),this['counterView']=new b(this['locale'],_0x706c93),this['inlineListView']=new is(_0x5ee1ff),this['inlineListView']['bind']('hasPopup')['to'](this,'isCollapsed'),this['listenTo'](this['inlineListView']['items'],'change',()=>{for(const _0x5d6a49 of this['inlineListView']['items'])_0x5d6a49['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',_0x313893['if']('isCollapsed','ck-presence-list--collapsed')]},'children':[this['inlineListView']]});}}class L extends _0x4d2917{['listWrapperView'];constructor(_0x3a7a0f,_0x154284){super(_0x3a7a0f);const _0x2fccd1=this['bindTemplate'];this['listWrapperView']=new ut(_0x3a7a0f,_0x154284),this['setTemplate']({'tag':'div','attributes':{'tabindex':-0x1,'role':'application','class':['ck','ck-presence-list__dropdown-list'],'aria-label':$(_0x3a7a0f,'Connected\x20users\x20list\x20dropdown\x20menu')},'children':[this['listWrapperView']],'on':{'mouseleave':_0x2fccd1['to'](_0x2f9cb0=>{const _0x5620ab=_0x2f9cb0,_0x1af4b3=document['querySelector']('.ck-presence-list__list'),_0x24e502=document['querySelector']('.ck-balloon-panel_with-arrow');_0x1af4b3?.['contains'](_0x5620ab['relatedTarget'])||_0x24e502?.['contains'](_0x5620ab['relatedTarget'])||this['fire']('presencelist:hide');})}});}}class ut extends _0x4941b4{constructor(_0x21f421,_0x76ffc1){super(_0x21f421);const _0x1a909f=this['bindTemplate'];this['set']('_isScrollable',!0x1),this['setTemplate']({'tag':_0x76ffc1?'div':'ul','attributes':{'class':['ck','ck-reset','ck-list','ck-presence-list__dropdown-list-wrapper',_0x1a909f['if']('_isScrollable','ck-presence-list__dropdown-list-wrapper_scrollable')],'role':_0x1a909f['to']('role'),'aria-label':_0x1a909f['to']('ariaLabel'),'aria-labelledby':_0x1a909f['to']('ariaLabelledBy')},'children':this['items']}),this['listenTo'](_0x3979c9['window'],'resize',()=>this['checkIfScrollable']()),this['items']['on']('change',()=>this['checkIfScrollable']());}['render'](){super['render'](),this['checkIfScrollable']();}['checkIfScrollable'](){const _0x394cf6=this['element'];_0x394cf6&&(this['_isScrollable']=Math['max'](_0x394cf6['scrollHeight'],_0x394cf6['clientHeight'])>0.8*window['innerHeight']);}}class j extends et{['userView'];constructor(_0x438bf3,_0x3fbe95,_0x5a20ff){super(_0x438bf3);const _0x1d8888=this['bindTemplate'];this['userView']=new st(_0x438bf3,_0x3fbe95);const _0x48e2be={'tag':'li','attributes':{'class':['ck','ck-presence-list__dropdown-list-item'],'tabindex':-0x1,'role':'presentation','aria-label':_0x3fbe95['name']},'children':[this['userView'],{'tag':'span','attributes':{'class':['ck','ck-user__full-name']},'children':[{'text':_0x3fbe95['name']}]},{'tag':'span','attributes':{'class':['ck','ck-presence-list__marker',_0x3fbe95['color']['getBackgroundColorClass']()],'aria-hidden':'true'}}]};_0x5a20ff&&(_0x48e2be['tag']='button',_0x48e2be['on']={'click':_0x1d8888['to'](()=>this['fire']('execute'))}),this['setTemplate'](_0x48e2be);}['focus'](){this['element']['focus']();}}class A extends _0x4d2917{['userView'];['markerView'];constructor(_0x12c76f,_0x1138ea,_0x3f53e3){super(_0x12c76f);const _0x50b6cd=this['bindTemplate'];this['set']('isFocusable',!0x1),this['set']('hasTooltip',!0x0),this['set']('tooltipPosition',''),this['userView']=new st(_0x12c76f,_0x1138ea),this['markerView']=new ot(_0x12c76f,_0x1138ea);const _0x56d52f=new it(_0x12c76f);_0x56d52f['template']['tag']='span',_0x56d52f['text']=_0x1138ea['name'];const _0x306cb6={'tag':'div','attributes':{'class':['ck','ck-presence-list__list-item'],'role':'listitem','tabindex':_0x50b6cd['to']('isFocusable',_0x3dc045=>!!_0x3dc045&&0x0),'aria-labelledby':_0x56d52f['id'],'data-cke-tooltip-text':this['userView']['name'],'data-cke-tooltip-position':_0x50b6cd['to']('tooltipPosition'),'data-cke-tooltip-disabled':_0x50b6cd['to']('hasTooltip',_0x4f0d66=>!_0x4f0d66),'data-cke-tooltip-class':'ck-presence-list__list-item__tooltip'},'children':[this['userView'],this['markerView'],_0x56d52f]};_0x3f53e3&&(_0x306cb6['tag']='button',_0x306cb6['on']={'click':_0x50b6cd['to'](()=>this['fire']('execute'))}),this['setTemplate'](_0x306cb6);}}class ot extends _0x4d2917{constructor(_0x109721,_0x490e98){super(_0x109721),this['setTemplate']({'tag':'span','attributes':{'class':['ck','ck-presence-list__marker',_0x490e98['color']['getBackgroundColorClass']()],'aria-hidden':'true'}});}}const x={'collapseAt':0x6,'displayMe':!0x0};class r extends _0x3037e3{['currentDisplayedUsers'];['balloonPanelView'];['view'];['presenceDropdownView'];['_bodyCollection']=null;static get['pluginName'](){return'PresenceListUI';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x559c09){super(_0x559c09),this['context']['config']['define']('presenceList',x);const _0x4dfda9=_0x559c09['config']['get']('presenceList.collapseAt');if('number'!=typeof _0x4dfda9)throw new _0x1c2f2a('presencelist-collapseat-invalid-format',this);if(_0x4dfda9<0x1)throw new _0x1c2f2a('presencelist-collapseat-invalid-format',this);this['_allConnectedUsers']=this['context']['plugins']['get'](i)['allConnectedUsers'],this['set']('usersCount',0x0),this['currentDisplayedUsers']=new _0x56572f(),this['balloonPanelView']=new _0x1f3152(),this['balloonPanelView']['class']='ck\x20ck-presence-list__balloon',this['view']=this['_createView'](),this['presenceDropdownView']=void 0x0;}static get['requires'](){return[i];}['init'](){for(const _0x33d978 of this['_allConnectedUsers'])this['_handleUserAdd'](_0x33d978);this['listenTo'](this['_allConnectedUsers'],'add',(_0x12dff7,_0x72d051)=>{this['_handleUserAdd'](_0x72d051);}),this['listenTo'](this['_allConnectedUsers'],'remove',(_0x5bdc9d,_0x26de4b)=>{this['_handleUserRemove'](_0x26de4b);});}['_createView'](){const _0x5872ff=this['context'],_0x4376e9=new v(this['context']['locale'],this['context']['config']['get']('presenceList.collapseAt')),_0xcb6d18=this['balloonPanelView'];if(!_0x143b0d(_0x5872ff['config']['get']('presenceList.container')))throw new _0x1c2f2a('presencelist-missing-container',this);return _0x4376e9['counterView']['bind']('usersCount')['to'](this),_0x4376e9['bind']('isCollapsed')['to'](this,'usersCount',_0x5a95a9=>{const {collapseAt:_0xadbd91}=_0x5872ff['config']['get']('presenceList'),_0x5c0335=_0x5a95a9>=_0xadbd91;if(_0x5c0335&&!_0x4376e9['inlineListView']['items']['find'](_0x570b03=>_0x570b03 instanceof b)){const _0x1a5469=this['context']['config']['get']('presenceList.collapseAt')-0x1;this['currentDisplayedUsers']['length']==_0x1a5469&&this['currentDisplayedUsers']['length']>0x1&&this['currentDisplayedUsers']['remove'](this['currentDisplayedUsers']['length']-0x1),_0x4376e9['inlineListView']['items']['add'](_0x4376e9['counterView']);}return _0x5c0335||this['hideDropdown'](),_0x5c0335;}),_0x4376e9['inlineListView']['items']['bindTo'](this['currentDisplayedUsers'])['using'](_0x100be9=>{const _0x3b2cfb=_0x5872ff['config']['get']('presenceList'),_0x505e12=new A(_0x5872ff['locale'],_0x100be9,!!_0x3b2cfb['onClick']);return _0x505e12['bind']('hasTooltip')['to'](_0x4376e9,'isCollapsed',_0x328b1b=>!_0x328b1b),_0x505e12['bind']('isFocusable')['to'](_0x4376e9,'isCollapsed',_0xdcd431=>!_0xdcd431),_0x3b2cfb['onClick']&&this['listenTo'](_0x505e12,'execute',()=>{this['view']['isCollapsed']||_0x3b2cfb['onClick'](_0x100be9,_0x505e12['element']);}),_0x505e12;}),this['listenTo'](_0x4376e9['inlineListView'],'presencelist:show',()=>{this['view']['isCollapsed']&&this['showDropdown']();}),this['listenTo'](_0x4376e9['inlineListView'],'presencelist:hide',()=>{this['presenceDropdownView']&&this['hideDropdown']();}),_0x4376e9['inlineListView']['keystrokes']['set']('Enter',(_0x321ee2,_0x10bcdb)=>{this['view']['isCollapsed']&&(this['showDropdown'](),_0x10bcdb());}),_0x4376e9['render'](),_0xcb6d18['render'](),_0x3495ca({'emitter':_0x4376e9,'activator':()=>_0xcb6d18['isVisible'],'contextElements':[_0xcb6d18['element'],_0x4376e9['inlineListView']['element']],'callback':()=>this['hideDropdown']()}),_0x5872ff['config']['get']('presenceList.container')['appendChild'](_0x4376e9['element']),this['_bodyCollection']=new _0x212a26(this['context']['locale']),this['_bodyCollection']['attachToDom'](),this['_bodyCollection']['add'](this['balloonPanelView']),_0x4376e9;}['_handleUserAdd'](_0x2b4f5d){if(!this['context']['config']['get']('presenceList.displayMe')&&_0x2b4f5d['isMe'])return;const _0x28be68=this['context']['config']['get']('presenceList.collapseAt')-0x1;for(this['usersCount']++;this['currentDisplayedUsers']['length']>=_0x28be68-(this['view']['isCollapsed']?0x1:0x0)&&this['currentDisplayedUsers']['length']>0x1;)this['currentDisplayedUsers']['remove'](0x1);const _0x575d46=_0x2b4f5d['isMe']?0x0:this['currentDisplayedUsers']['length'];this['currentDisplayedUsers']['add'](_0x2b4f5d,_0x575d46);}['_handleUserRemove'](_0x1f6460){this['usersCount']--;const {collapseAt:_0x59407c}=this['context']['config']['get']('presenceList'),_0x1e406e=this['usersCount']>=_0x59407c;if(this['currentDisplayedUsers']['get'](_0x1f6460['id']))this['currentDisplayedUsers']['remove'](_0x1f6460['id']);else{if(_0x1e406e&&this['currentDisplayedUsers']['length']+0x1===_0x59407c-0x1)return;}if(this['currentDisplayedUsers']['length']+(_0x1e406e?0x1:0x0)<this['usersCount']){for(const _0x2fcda0 of Array['from'](this['_allConnectedUsers'])['reverse']())if(!this['currentDisplayedUsers']['get'](_0x2fcda0['id'])&&(this['currentDisplayedUsers']['add'](_0x2fcda0,Math['min'](this['currentDisplayedUsers']['length']-(_0x1e406e?0x1:0x0),0x1)),this['currentDisplayedUsers']['length']+(_0x1e406e?0x1:0x0)===_0x59407c-0x1))return;}}['showDropdown'](){if(this['presenceDropdownView'])return;const _0x1f16d3=this['context']['config']['get']('presenceList');this['presenceDropdownView']=new L(this['context']['locale'],!!_0x1f16d3['onClick']),this['view']['inlineListView']['isExpanded']=!0x0,this['listenTo'](this['presenceDropdownView'],'presencelist:hide',()=>{this['presenceDropdownView']&&this['hideDropdown']();});const {listWrapperView:_0x1e6348}=this['presenceDropdownView'];_0x1e6348['items']['bindTo'](this['_allConnectedUsers'])['using'](_0x26d0f9=>{if(!_0x1f16d3['displayMe']&&_0x26d0f9['isMe'])return null;const _0x2e2a59=new j(this['context']['locale'],_0x26d0f9,!!_0x1f16d3['onClick']);return _0x1f16d3['onClick']&&this['listenTo'](_0x2e2a59,'execute',()=>{_0x1f16d3['onClick'](_0x26d0f9,_0x2e2a59['element']);}),_0x2e2a59;}),this['balloonPanelView']['content']['add'](this['presenceDropdownView']),this['balloonPanelView']['pin']({'target':this['view']['inlineListView']['element']}),_0x1e6348['focus'](),_0x1e6348['checkIfScrollable']();const _0x56b0a7=(_0x1399c5,_0x4008ae)=>{this['hideDropdown'](),this['view']['inlineListView']['focus'](),_0x4008ae();};_0x1e6348['keystrokes']['set']('Esc',_0x56b0a7),_0x1e6348['keystrokes']['set']('Shift+Tab',_0x56b0a7),_0x1e6348['keystrokes']['set']('Tab',(_0x4f173b,_0x3e65ad)=>{!function(_0x28bc42){const _0x1977a1=['a','button','input','select','textarea','[tabindex]','[contenteditable]']['map'](_0x3262ea=>_0x3262ea+':not([disabled]):not([tabindex=\x22-1\x22])')['join'](','),_0x49cfc7=[...document['body']['querySelectorAll'](_0x1977a1)]['filter'](_0xc71f4a=>_0xc71f4a===document['activeElement']||_0xc71f4a['offsetWidth']+_0xc71f4a['offsetHeight']>0x0)['sort']((_0x2054bd,_0x4fd535)=>(_0x2054bd['tabIndex']||0x0)-(_0x4fd535['tabIndex']||0x0)),_0x371929=_0x49cfc7['indexOf'](_0x28bc42),_0x572a41=_0x49cfc7[(_0x371929+0x1)%_0x49cfc7['length']];_0x572a41&&_0x572a41['focus']();}(this['view']['element']),this['hideDropdown'](),_0x3e65ad();}),_0x1e6348['focusTracker']['add'](this['view']['element']),_0x1e6348['focusTracker']['on']('change:isFocused',(_0x1db7bf,_0x6c4a46,_0x185f53)=>{_0x185f53||this['hideDropdown']();});}['hideDropdown'](){this['presenceDropdownView']&&(this['view']['inlineListView']['isExpanded']=!0x1,this['balloonPanelView']['unpin'](),this['balloonPanelView']['content']['remove'](this['presenceDropdownView']),this['presenceDropdownView']['destroy'](),this['presenceDropdownView']=void 0x0);}['destroy'](){super['destroy'](),this['view']&&this['view']['isRendered']&&this['view']['destroy'](),this['_bodyCollection']&&(this['_bodyCollection']['detachFromDom'](),this['_bodyCollection']['destroy'](),this['_bodyCollection']=null);}}class ft extends _0x3037e3{static get['requires'](){return[i,r];}static get['pluginName'](){return'PresenceList';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}export{s as CloudServicesCommentsAdapter,c as CloudServicesRevisionHistoryAdapter,m as CloudServicesTrackChangesAdapter,ft as PresenceList,r as PresenceListUI,l as RealTimeCollaborationClient,g as RealTimeCollaborativeComments,a as RealTimeCollaborativeEditing,dt as RealTimeCollaborativeRevisionHistory,lt as RealTimeCollaborativeTrackChanges,i as Sessions,n as WebSocketGateway};
@@ -20,4 +20,4 @@
20
20
  *
21
21
  *
22
22
  */
23
- export default{'af':{'dictionary':{'CONNECTED_USERS':['',''],'PENDING_ACTION_SENDING_DATA':'','Synchronization\x20issue':'','Connected\x20users\x20list\x20dropdown\x20menu':'','Connected\x20users\x20list':'','Collapsed\x20connected\x20users\x20list\x20(press\x20ENTER\x20to\x20open\x20it)':'','The\x20document\x20cannot\x20be\x20connected\x20back\x20to\x20the\x20server.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':'','The\x20document\x20details\x20could\x20not\x20be\x20taken\x20during\x20the\x20reconnection.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':'','The\x20last\x20saved\x20version\x20of\x20the\x20document\x20does\x20not\x20match\x20the\x20local\x20version.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':'','The\x20local\x20document\x20and\x20server\x20document\x20differ\x20and\x20merging\x20them\x20can\x20cause\x20unexpected\x20behavior.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':''},'getPluralForm':_0x497c2e=>0x1!=_0x497c2e}};
23
+ export default{'af':{'dictionary':{'CONNECTED_USERS':['',''],'PENDING_ACTION_SENDING_DATA':'','Synchronization\x20issue':'','Connected\x20users\x20list\x20dropdown\x20menu':'','Connected\x20users\x20list':'','Collapsed\x20connected\x20users\x20list\x20(press\x20ENTER\x20to\x20open\x20it)':'','The\x20document\x20cannot\x20be\x20connected\x20back\x20to\x20the\x20server.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':'','The\x20document\x20details\x20could\x20not\x20be\x20taken\x20during\x20the\x20reconnection.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':'','The\x20last\x20saved\x20version\x20of\x20the\x20document\x20does\x20not\x20match\x20the\x20local\x20version.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':'','The\x20local\x20document\x20and\x20server\x20document\x20differ\x20and\x20merging\x20them\x20can\x20cause\x20unexpected\x20behavior.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':''},'getPluralForm':_0xc5ca31=>0x1!=_0xc5ca31}};