@ckeditor/ckeditor5-real-time-collaboration 45.1.0-alpha.7 → 45.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (170) hide show
  1. package/build/real-time-collaboration.js +1 -1
  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 _0x39c302,Plugin as _0x36ec84,PendingActions as _0x2c0263,Context as _0xe4df37}from'@ckeditor/ckeditor5-core/dist/index.js';import{DomEmitterMixin as _0x814dac,CKEditorError as _0x450af5,Collection as _0x2886d5,global as _0x40b117,version as nt,uid as _0x1d673a,KeystrokeHandler as _0x223d85}from'@ckeditor/ckeditor5-utils/dist/index.js';import{Notification as _0x385a83,View as _0x2331df,ListView as _0x1df070,ListItemView as rt,LabelView as ot,BalloonPanelView as _0x19634d,clickOutsideHandler as _0x1b96bb,BodyCollection as _0x24c7b0}from'@ckeditor/ckeditor5-ui/dist/index.js';import{LiveRange as ht,History as _0x1c34fa,NoOperation as _0x8511da,InsertOperation as _0x19f267,MarkerOperation as _0x37404d,RootAttributeOperation as _0x6cd20a,transformSets as _0x43930a,OperationFactory as _0x25d184}from'@ckeditor/ckeditor5-engine/dist/index.js';import{WebSocketGateway as lt,WEB_SOCKET_GATEWAY_STATES as _0x307b4a,CollaborativeEditingService as _0x1b6b62,User as dt,CommentsService as _0x30f710,TrackChangesService as et,RevisionHistoryService as it,EditorService as tt}from'@ckeditor/ckeditor-cloud-services-collaboration/dist/index.js';import{Users as _0x1b46b3,UserView as ct}from'ckeditor5-collaboration/dist/index.js';import{Compressor as _0x40c424}from'@ckeditor/ckeditor5-operations-compressor/dist/index.js';import{isElement as _0x4e63ad}from'es-toolkit/compat';class c extends _0x39c302{static ['WebSocketGateway']=/* #__PURE__ -- @preserve */
24
- ((()=>lt)());static ['initialReconnectionInterval']=0x3e8;['connection'];['_reconnectionStack'];['_shouldPluginsReconnect'];['_domEmitter'];static get['requires'](){return['CloudServices',_0x385a83];}static get['pluginName'](){return'WebSocketGateway';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x219370){super(_0x219370),this['set']('state',_0x307b4a['CONNECTED']),this['set']('_isBrowserOffline',!0x1),this['_reconnectionStack']=new Set(),this['_shouldPluginsReconnect']=!0x1,this['_domEmitter']=Object['create'](_0x814dac);}['init'](){const _0x104841=this['context'],_0x5c467a=_0x104841['plugins']['get']('CloudServices'),_0x26d487=_0x104841['plugins']['get'](_0x385a83);if(!_0x5c467a['token'])throw new _0x450af5('websocketgateway-missing-token',this);if(!_0x5c467a['webSocketUrl'])throw new _0x450af5('websocketgateway-missing-websocket-url',this);return this['_domEmitter']['listenTo'](window,'offline',()=>this['_isBrowserOffline']=!0x0),this['_domEmitter']['listenTo'](window,'online',()=>this['_isBrowserOffline']=!0x1),this['context']['config']['define']('cloudServices.connectionTimeout',0xa),this['context']['config']['define']('cloudServices.requestTimeout',0x14),c['WebSocketGateway']['connect'](_0x5c467a['token'],_0x5c467a['webSocketUrl'],{'timeout':0x3e8*this['context']['config']['get']('cloudServices.connectionTimeout'),'requestTimeout':0x3e8*this['context']['config']['get']('cloudServices.requestTimeout')})['then'](_0xc95460=>{if(this['connection']=_0xc95460,this['bind']('state')['to'](_0xc95460,'state',this,'_isBrowserOffline',(_0x515a55,_0x574260)=>('connected'!==_0x515a55&&(this['_shouldPluginsReconnect']=!0x0),_0x574260||_0x515a55!==_0x307b4a['CONNECTED']?_0x307b4a['DISCONNECTED']:this['state']==_0x307b4a['DISCONNECTED']&&this['_shouldPluginsReconnect']?(this['_shouldPluginsReconnect']=!0x1,this['_reconnect'](),_0x307b4a['CONNECTING']):_0x307b4a['CONNECTED'])),this['connection']['on']('error',(_0x4902cf,_0x22f014)=>{if('limitExceeded'!==_0x22f014['code'])throw console['error'](_0x22f014),new _0x450af5('cloudservices-init',null,{'originalError':_0x22f014});_0x26d487['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'});}),!_0xc95460['me'])return new Promise(_0x41a352=>_0xc95460['on']('change:me',_0x41a352));})['catch'](_0x406255=>{throw console['error'](_0x406255),new _0x450af5('cloudservices-init',null,{'originalError':_0x406255});});}['addToReconnectionStack'](_0x45cb76){if('function'!=typeof _0x45cb76['reconnect'])throw new _0x450af5('websocketgateway-invalid-plugin-interface',this);if(this['isInReconnectionStack'](_0x45cb76))throw new _0x450af5('websocketgateway-plugin-already-registered',this,{'name':_0x45cb76['constructor']['pluginName']});this['_reconnectionStack']['add'](_0x45cb76);}['removeFromReconnectionStack'](_0x2c040c){this['_reconnectionStack']['delete'](_0x2c040c);}['isInReconnectionStack'](_0x3feb6d){return this['_reconnectionStack']['has'](_0x3feb6d);}['_reconnect'](){return this['connection']['reconnect']()['then'](()=>Promise['all'](Array['from'](this['_reconnectionStack'],_0x4639bb=>_0x4639bb['reconnect']())))['then'](()=>this['state']=_0x307b4a['CONNECTED'])['catch'](_0xef381f=>{throw console['error'](_0xef381f),new _0x450af5('cloudservices-reconnection-error',this['context']);});}['disconnect'](){this['connection']&&this['connection']['disconnect'](),this['state']=_0x307b4a['DISCONNECTED'],this['_domEmitter']['stopListening']();}['destroy'](){this['disconnect'](),super['destroy']();}}class i extends _0x39c302{['channelSessions'];['channelConnectedUsers'];['allConnectedUsers'];['_registeredSessions'];['_uniqueUsersCount'];['_users'];static get['pluginName'](){return'Sessions';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}static get['requires'](){return[c,_0x1b46b3];}constructor(_0x204e00){super(_0x204e00),this['channelSessions']=new Map(),this['channelConnectedUsers']=new Map(),this['allConnectedUsers']=new _0x2886d5(),this['_registeredSessions']=new Map(),this['_uniqueUsersCount']=0x0,this['_users']=this['context']['plugins']['get'](_0x1b46b3);}['init'](){const _0x3d5bca=this['context']['plugins']['get'](c);this['listenTo'](_0x3d5bca,'change:state',(_0x5a560b,_0x4c627c,_0x5bf5c5)=>{if('connected'!==_0x5bf5c5)this['channelSessions']['forEach'](_0x50212b=>_0x50212b['clear']()),this['channelConnectedUsers']['forEach'](_0x1a367f=>_0x1a367f['clear']()),this['allConnectedUsers']['clear']();else{for(const [_0x5d3f7d,_0x9c1eaf]of this['_registeredSessions'])for(const _0x3d8d3b of _0x9c1eaf)this['_handleSessionAdd'](_0x5d3f7d,_0x3d8d3b);}}),this['_createUser'](_0x3d5bca['connection']['me'],!0x0);}['register'](_0x43b19a,_0x3d969d){if(this['_registeredSessions']['has'](_0x43b19a))throw new _0x450af5('sessions-register-already-registered',null,{'channelId':_0x43b19a});this['_registeredSessions']['set'](_0x43b19a,_0x3d969d),this['channelSessions']['set'](_0x43b19a,new _0x2886d5()),this['channelConnectedUsers']['set'](_0x43b19a,new _0x2886d5()),this['listenTo'](_0x3d969d,'add',(_0x4e536e,_0x1a5612)=>this['_handleSessionAdd'](_0x43b19a,_0x1a5612)),this['listenTo'](_0x3d969d,'remove',(_0x1e2461,_0x10531d)=>this['_handleSessionRemove'](_0x43b19a,_0x10531d));for(const _0x42b68e of _0x3d969d)this['_handleSessionAdd'](_0x43b19a,_0x42b68e);}['unregister'](_0x2d1ba2){if(!this['_registeredSessions']['has'](_0x2d1ba2))throw new _0x450af5('sessions-unregister-not-exist',null,{'channelId':_0x2d1ba2});const _0x20ae80=this['_registeredSessions']['get'](_0x2d1ba2);this['stopListening'](_0x20ae80);for(const _0x3c43d6 of _0x20ae80)'connected'===this['context']['plugins']['get'](c)['state']&&this['_handleSessionRemove'](_0x2d1ba2,_0x3c43d6);this['_registeredSessions']['delete'](_0x2d1ba2),this['channelSessions']['delete'](_0x2d1ba2),this['channelConnectedUsers']['delete'](_0x2d1ba2);}get['mySessionId'](){return this['context']['plugins']['get'](c)['connection']['sessionId'];}['getUserBySessionId'](_0x2680e2){for(const _0x1ba36d of this['channelSessions']['values']())for(const _0x26a919 of _0x1ba36d)if(_0x26a919['id']===_0x2680e2)return _0x26a919['user'];}['getUserSessions'](_0x44cda6,_0x3e262f){const _0x4b7c5c=_0x3e262f?[this['channelSessions']['get'](_0x3e262f)]:this['channelSessions']['values'](),_0x305917=new Set();for(const _0x15113a of _0x4b7c5c)for(const _0x5684ca of _0x15113a)_0x5684ca['user']['id']===_0x44cda6['id']&&_0x305917['add'](_0x5684ca['id']);return _0x305917;}['getUserRole'](_0x26d9ca){for(const _0x3c3185 of this['channelSessions']['values']())for(const _0x17891b of _0x3c3185)if(_0x17891b['user']===_0x26d9ca)return _0x17891b['role'];}['_handleSessionAdd'](_0x4c08dd,_0x2b28f5){if('connected'!==this['context']['plugins']['get'](c)['state'])return;const _0x200be0=_0x2b28f5['user'],_0x469ea8=this['_users']['getUser'](_0x200be0['id'])||this['_createUser'](_0x200be0),_0x1e0e4d=Object['assign']({},_0x2b28f5,{'user':_0x469ea8});this['channelSessions']['get'](_0x4c08dd)['add'](_0x1e0e4d);const _0x3b8751=this['channelConnectedUsers']['get'](_0x4c08dd);_0x3b8751['has'](_0x469ea8['id'])||_0x3b8751['add'](_0x469ea8),this['allConnectedUsers']['has'](_0x469ea8['id'])||this['allConnectedUsers']['add'](_0x469ea8,_0x469ea8['isMe']?0x0:void 0x0),this['fire']('sessionAdd:'+_0x4c08dd,{'channelId':_0x4c08dd,'session':_0x1e0e4d});}['_handleSessionRemove'](_0x359827,_0x519f5a){if('connected'!==this['context']['plugins']['get'](c)['state'])return;const _0x49f6d0=this['channelConnectedUsers']['get'](_0x359827),_0x482e2c=_0x519f5a['user'];_0x482e2c['id']&&(this['channelSessions']['get'](_0x359827)['remove'](_0x519f5a['id']),_0x49f6d0['has'](_0x482e2c['id'])&&!this['getUserSessions'](_0x482e2c,_0x359827)['size']&&_0x49f6d0['remove'](_0x482e2c['id']),this['allConnectedUsers']['get'](_0x482e2c['id'])&&!this['getUserSessions'](_0x482e2c)['size']&&this['allConnectedUsers']['remove'](_0x482e2c['id']));}['_createUser'](_0x7165c7,_0x56c57f){const _0x31dc5a=this['_users']['addUser'](_0x7165c7);return _0x56c57f&&this['_users']['defineMe'](_0x7165c7['id']),_0x31dc5a['orderNumber']=this['_uniqueUsersCount']++,_0x31dc5a;}}class q extends _0x36ec84{['_domEmitter']=new(_0x814dac())();static get['requires'](){return[i];}static get['pluginName'](){return'UserMarkers';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['init'](){const _0x11e557=this['editor'],_0x81b8fa=_0x11e557['plugins']['get'](i);_0x11e557['conversion']['for']('editingDowncast')['markerToElement']({'model':'user:position','view':(_0x4c4f,{writer:_0x1b07f7})=>function(_0x50a94e,_0x24069c,_0xfd8827,_0x13dccf){const _0x41b463=_0x50a94e['markerName']['split'](':')[0x2],_0x31c0fa=_0xfd8827['getUserBySessionId'](_0x41b463);if(!_0x31c0fa||_0x41b463===_0xfd8827['mySessionId'])return;if(!_0x13dccf['model']['schema']['checkChild'](_0x50a94e['markerRange']['start'],'$text'))return;const _0x3ece49={'class':'ck-user__marker\x20'+_0x31c0fa['color']['getMarkerClass'](),'data-name':_0x31c0fa['name'],'data-session-id':_0x41b463},_0x3596f3=_0x13dccf['model']['markers']['get'](_0x50a94e['markerName']),_0x32bd1d=_0x3596f3['getStart'](),_0x17b45a=_0x32bd1d['nodeAfter'],_0x307174=_0x13dccf['model']['schema'];if(_0x17b45a&&_0x307174['isObject'](_0x17b45a)&&_0x307174['isInline'](_0x17b45a)&&!_0x13dccf['model']['markers']['get']('user:range:'+_0x41b463)['getRange']()['isCollapsed'])return;const _0x44acb4=_0x32bd1d['parent'];return _0x13dccf['model']['schema']['isLimit'](_0x44acb4)&&!_0x13dccf['model']['hasContent'](_0x44acb4)&&(_0x3ece49['contenteditable']=!0x1),function(_0x2c7385,_0x485876,_0x6a74a6){const _0x537de1=_0x2c7385['createUIElement']('span',_0x485876);return _0x2c7385['setCustomProperty']('userPositionMarker',!0x0,_0x537de1),_0x537de1['render']=function(_0x487e25){const _0x4fc9d4=this['toDomElement'](_0x487e25),_0x4c31c0=document['createElement']('span');return _0x4c31c0['classList']['add']('ck-user__marker-tooltip'),_0x4c31c0['setAttribute']('contenteditable','false'),_0x4c31c0['setAttribute']('spellcheck','false'),_0x4c31c0['textContent']=_0x6a74a6['name'],_0x4fc9d4['innerHTML']='⁠<span\x20class=\x22ck-user__marker-line\x22\x20contenteditable=\x22false\x22><span\x20class=\x22ck-user__marker-dot\x22></span></span>'+_0x4c31c0['outerHTML']+'⁠',_0x4fc9d4['addEventListener']('mouseenter',()=>{_0x4fc9d4['classList']['add']('ck-user__marker_hovered');}),_0x4fc9d4['addEventListener']('mouseleave',()=>{_0x4fc9d4['classList']['remove']('ck-user__marker_hovered');}),_0x4fc9d4;},_0x537de1['isSimilar']=function(_0x4f8123){return!(!this['getCustomProperty']('userPositionMarker')||!_0x4f8123['getCustomProperty']('userPositionMarker')||this['getAttribute']('data-session-id')!=_0x4f8123['getAttribute']('data-session-id'));},_0x537de1;}(_0x24069c,_0x3ece49,_0x31c0fa);}(_0x4c4f,_0x1b07f7,_0x81b8fa,_0x11e557)}),_0x11e557['conversion']['for']('editingDowncast')['markerToHighlight']({'model':'user:range','view':_0x598127=>function(_0x35a82f,_0x4b8f79){const _0x5186ab=_0x35a82f['markerName']['split'](':')[0x2];if(_0x5186ab===_0x4b8f79['mySessionId'])return null;const _0x282535=_0x4b8f79['getUserBySessionId'](_0x5186ab);if(!_0x282535)return{'id':_0x5186ab,'classes':[]};return{'id':_0x5186ab,'classes':['ck-user__selection',_0x282535['color']['getSelectionClass']()],'attributes':{'data-session-id':_0x5186ab},'priority':0x7d0+_0x282535['orderNumber']};}(_0x598127,_0x81b8fa)}),function(_0x3519fb){const _0x49d8ba=_0x3519fb['model'],_0x2ad37d=new Map(),_0xed2b05=_0x3519fb['plugins']['get'](i);_0x49d8ba['markers']['on']('update:user:range',(_0x59b12f,_0x143f45,_0x17410b,_0x1acae0)=>{if(!_0x1acae0&&_0x2ad37d['get'](_0x143f45['name']))return _0x2ad37d['get'](_0x143f45['name'])['detach'](),void _0x2ad37d['delete'](_0x143f45['name']);const _0x45940f=_0x143f45['name']['split'](':')[0x2];if(_0x45940f===_0xed2b05['mySessionId'])return;const _0x14fc81='user:position:'+_0x45940f;_0x49d8ba['markers']['has'](_0x14fc81)&&_0x3519fb['editing']['reconvertMarker'](_0x14fc81),_0x143f45['on']('change:range',(_0x38c926,_0x16f59b,_0x3ee6ba)=>{if('$graveyard'!=_0x16f59b['root']['rootName']&&'$graveyard'==_0x143f45['getRange']()['root']['rootName']&&!_0x2ad37d['has'](_0x143f45['name'])){const _0x1b0993=_0x49d8ba['schema']['getNearestSelectionRange'](_0x3ee6ba['deletionPosition']);if(_0x1b0993){const _0x194aca=ht['fromRange'](_0x1b0993);_0x2ad37d['set'](_0x143f45['name'],_0x194aca),_0x194aca['on']('change:range',(_0x5e9e17,_0x58b5da,_0x5c28c3)=>{if('$graveyard'==_0x194aca['root']['rootName']){const _0x571ebd=_0x49d8ba['schema']['getNearestSelectionRange'](_0x5c28c3['deletionPosition']);_0x571ebd?(_0x194aca['start']=_0x571ebd['start'],_0x194aca['end']=_0x571ebd['end']):(_0x2ad37d['delete'](_0x143f45['name']),_0x194aca['detach']());}});}}});}),_0x49d8ba['document']['on']('change',()=>{_0x2ad37d['size']>0x0&&_0x49d8ba['enqueueChange']({'isUndoable':!0x1},_0x3f4f2d=>{for(const [_0x31b3fb,_0x3cdc4e]of _0x2ad37d)'$graveyard'==_0x49d8ba['markers']['get'](_0x31b3fb)['getRange']()['root']['rootName']&&(te(_0x31b3fb['split'](':')[0x2],_0x3cdc4e['toRange'](),_0x49d8ba,_0x3f4f2d),_0x3cdc4e['detach']());_0x2ad37d['clear']();});});}(_0x11e557),this['_domEmitter']['listenTo'](_0x40b117['document'],'keydown',(_0x367c96,{key:_0x54ff73})=>{'Escape'===_0x54ff73&&function(_0x635f7b){_0x635f7b['editing']['view']['change'](_0x430e6a=>{for(const _0x39a308 of _0x635f7b['model']['markers']){if(!_0x39a308['name']['startsWith']('user:position'))continue;const _0x3bd43f=_0x635f7b['editing']['mapper']['markerNameToElements'](_0x39a308['name']);if(_0x3bd43f){for(const _0x30be3f of _0x3bd43f)_0x430e6a['removeClass']('ck-user__marker_hovered',_0x30be3f);}}});}(_0x11e557);},{'useCapture':!0x0});}['afterInit'](){const _0x591c7b=this['editor'],_0x215e02=_0x591c7b['commands']['get']('undo');_0x215e02&&_0x591c7b['model']['on']('applyOperation',(_0x52a7aa,_0xaea3fd)=>{const _0x3ba0cf=_0xaea3fd[0x0];if(!_0x3ba0cf['isDocumentOperation'])return;if('marker'!=_0x3ba0cf['type']||!_0x3ba0cf['name']['startsWith']('user:'))return;const _0x2b1568=_0x3ba0cf['batch'];_0x215e02['_createdBatches']['has'](_0x2b1568)&&(_0x3ba0cf['newRange']=_0x3ba0cf['oldRange']?_0x591c7b['model']['createRange'](_0x3ba0cf['oldRange']['start'],_0x3ba0cf['oldRange']['end']):null);},{'priority':'highest'});}['destroy'](){return this['_domEmitter']['stopListening'](),super['destroy']();}['createUserMarkerOperations'](){const _0x226f83=this['editor'],_0x4f9116=_0x226f83['model']['document'],_0x2a1359=_0x226f83['plugins']['get'](i);_0x226f83['model']['enqueueChange']({'isUndoable':!0x1},_0x238fbc=>{const _0x3e43af='user:range:'+_0x2a1359['mySessionId'],_0x4ac38c='user:position:'+_0x2a1359['mySessionId'],_0x2a1d2b=_0x226f83['model']['markers']['has'](_0x3e43af);_0x226f83['editing']['view']['hasDomSelection']?te(_0x2a1359['mySessionId'],_0x4f9116['selection']['getFirstRange'](),_0x226f83['model'],_0x238fbc):_0x2a1d2b&&(_0x238fbc['removeMarker'](_0x3e43af),_0x238fbc['removeMarker'](_0x4ac38c));});}}function te(_0x153e11,_0x3aebea,_0xf2a1a4,_0xbe13ed){const _0x2a2e25='user:range:'+_0x153e11,_0x4628e9='user:position:'+_0x153e11,_0xfb6e51=_0x3aebea['getContainedElement']();let _0x1f559d=_0x3aebea['start'];_0xfb6e51&&_0xfb6e51['is']('element','tableCell')&&(_0x1f559d=function(_0x20c614,_0xd8f075){for(const _0x1f5f34 of _0x20c614['getPositions']())if(_0xd8f075['schema']['checkChild'](_0x1f5f34,'$text'))return _0x1f5f34;}(_0x3aebea,_0xf2a1a4),_0x3aebea=_0xbe13ed['createRange'](_0x1f559d));const _0x5692d3=_0xbe13ed['createRange'](_0x1f559d);_0xf2a1a4['markers']['has'](_0x2a2e25)?(_0xbe13ed['updateMarker'](_0x2a2e25,{'range':_0x3aebea}),_0xbe13ed['updateMarker'](_0x4628e9,{'range':_0x5692d3})):(_0xbe13ed['addMarker'](_0x2a2e25,{'range':_0x3aebea,'usingOperation':!0x0}),_0xbe13ed['addMarker'](_0x4628e9,{'range':_0x5692d3,'usingOperation':!0x0}));}function G(_0xc0953d,_0x4310ef,_0x127ee5){const _0x4a15f1=_0xc0953d['t'],t=_0xc0953d['t'];switch(_0x4310ef){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 _0x4a15f1({'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'},_0x127ee5);default:return'';}}let J=0x1;class l extends _0x36ec84{static ['CollaborativeEditingService']=/* #__PURE__ -- @preserve */
25
- ((()=>_0x1b6b62)());['_offset'];['sessionId'];['serverHistory'];['_channelId'];['_service'];['_document'];['_compressor'];['_bufferedOperations'];['_knownOperations'];['_knownRootNames'];['_pendingAction'];['_hasSelectionChanged'];['_sendBufferedOperationsDelayId'];['_baseBufferDelay'];['_currentBufferDelay'];['_lastSyncedOperationId'];['_disconnectionOperations'];['_operationIdentifier'];static get['requires'](){return[c,i,q,_0x2c0263,_0x1b46b3,_0x385a83];}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 _0x4664aa=this['serverHistory']['getOperations']();for(let _0x2b2eb4=_0x4664aa['length']-0x1;_0x2b2eb4>=0x0;_0x2b2eb4--){const _0x32cbec=_0x4664aa[_0x2b2eb4];if(!this['_disconnectionOperations']['has'](_0x32cbec))return _0x32cbec['baseVersion']+0x1-this['_offset'];}return 0x0;}constructor(_0x2d38c0){if(super(_0x2d38c0),this['_offset']=0x0,this['sessionId']=null,this['serverHistory']=new _0x1c34fa(),this['editor']['config']['define']('collaboration',{}),this['_channelId']=this['editor']['config']['get']('collaboration.channelId'),!this['_channelId'])throw new _0x450af5('collaboration-missing-channelid',this);const _0x493acf=_0x2d38c0['config']['get']('cloudServices.bundleVersion')||nt;this['_service']=new l['CollaborativeEditingService'](_0x493acf,this['_channelId']),this['_document']=this['editor']['model']['document'],this['_compressor']=new _0x40c424(),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 Y(this['_disconnectionOperations']);}['init'](){const _0x422deb=this['editor'],_0x3047bd=_0x422deb['plugins']['get'](_0x1b46b3),_0x49fd67=_0x422deb['plugins']['get'](c);this['listenTo'](_0x3047bd,'getOperationAuthor',(_0x5e9761,_0x1b2fc1)=>{const _0x2ea2b5=_0x1b2fc1[0x0];_0x2ea2b5['_authorId']&&(_0x5e9761['return']=_0x3047bd['getUser'](_0x2ea2b5['_authorId']),_0x5e9761['stop']()),null===_0x2ea2b5['_authorId']&&(_0x5e9761['return']=null,_0x5e9761['stop']());},{'priority':'high'}),this['listenTo'](_0x422deb['model']['document']['selection'],'change:range',(_0x385973,_0x1e2477)=>{_0x1e2477['directChange']&&this['_refreshUserSelectionMarkers']();}),this['listenTo'](_0x422deb['editing']['view'],'change:hasDomSelection',()=>{this['_refreshUserSelectionMarkers']();}),this['_initThrowingOnDataSet'](),_0x422deb['model']['on']('applyOperation',(_0x5440fd,_0x2b4490)=>{const _0x59d251=_0x2b4490[0x0];_0x59d251['isDocumentOperation']&&(this['_saveOperationInBuffer'](_0x59d251),this['_shouldSendUpdate']()&&this['_sendBufferedOperationsDelayed']());}),this['_setUpDataInit'](),this['bind']('_isEditingAllowed')['to'](_0x49fd67,'state',this,'_hasSynchronizationProblem',(_0x26ad84,_0x20b2a4)=>'connected'===_0x26ad84&&!_0x20b2a4),this['on']('change:_isEditingAllowed',()=>{this['_isEditingAllowed']?_0x422deb['disableReadOnlyMode']('rtc-offline'):_0x422deb['enableReadOnlyMode']('rtc-offline');}),this['_isEditingAllowed']?_0x422deb['disableReadOnlyMode']('rtc-offline'):_0x422deb['enableReadOnlyMode']('rtc-offline'),this['set']('_isConnected',!0x1);}async['reconnect'](){const _0x5db7f7=this['editor']['plugins']['get'](i),_0x4a2f9e=this['editor']['plugins']['get'](c);try{this['_isPendingUpdate']=!0x0,_0x5db7f7['unregister'](this['_channelId']);const _0x5eeeca=await this['_service']['reconnect'](_0x4a2f9e['connection'],this['lastSyncVersion']);await this['_handleReconnectionResponse'](_0x5eeeca)&&(this['_isPendingUpdate']=!0x1,this['_clearPendingAction']());const _0x2e8823=await this['_service']['getConnectedSessions']();_0x5db7f7['register'](this['_channelId'],_0x2e8823),this['_handleSendingSelectionMarkers'](),this['_isConnected']=!0x0;}catch(_0x395155){if(function(_0x2ffa2f){return'404'===_0x2ffa2f['code'];}(_0x395155)&&this['sessionId'])await this['_connectAfterSessionHasBeenFlushed']();else{if(function(_0x36bca7){return'409'===_0x36bca7['code'];}(_0x395155)){const _0x2af268=G(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'](_0x2af268);}else{if(!(_0x395155 instanceof Q))throw _0x395155;this['_handleReconnectionError']();}}}}['destroy'](){const _0x4fdf21=this['editor']['plugins']['get'](c),_0x1d1e75=this['editor']['plugins']['get'](i);this['editor']['enableReadOnlyMode']('rtc-destroyed'),_0x1d1e75['channelSessions']['has'](this['_channelId'])&&_0x1d1e75['unregister'](this['_channelId']),_0x4fdf21['removeFromReconnectionStack'](this),this['_disconnectService'](),super['destroy']();}async['_handleReconnectionResponse'](_0x330894){if(this['sessionId']!==_0x330894['sessionId']&&this['_lastSyncedOperationId']!==_0x330894['lastOperationId'])throw new Q();return this['sessionId']=_0x330894['sessionId'],this['_handleServerResponse']([],{..._0x330894,'wereChangesApplied':!0x1,'data':_0x330894['data']},'reconnect');}async['_connectService'](_0x28bf6d,_0x3a594d=!0x1){const {connection:_0x34092f}=this['editor']['plugins']['get'](c);l['CollaborativeEditingService']['getConnectedSessions'](_0x34092f,this['_channelId'])['then'](_0x4587e5=>this['_initSessionsHandling'](_0x4587e5))['catch'](_0x2324fb=>{this['_crash']('realtimecollaborationclient-init-session-connection-error',_0x2324fb);}),this['listenTo'](this['_service'],'operationsReceived',this['_handleReceivedOperations']['bind'](this)),this['listenTo'](this['_service'],'error',(_0xd07038,_0x2a1128)=>{this['_crash']('realtimecollaborationclient-init-service-internal-error',_0x2a1128);}),this['listenTo'](this['_service'],'disconnected',()=>{this['_isConnected']=!0x1;});const _0x13718b=this['_operationIdentifier']['getIdOfTheLastOperation'](_0x28bf6d);this['_isPendingUpdate']=!0x0;const _0x4d4efd=await this['_service']['connect'](_0x34092f,this['_compressOperations'](_0x28bf6d),_0x13718b);if(this['sessionId']=_0x4d4efd['sessionId'],_0x3a594d){if(!_0x4d4efd['wereChangesApplied'])return void this['_handleReconnectionError']();this['_isPendingUpdate']=!0x1,this['_clearPendingAction'](),this['serverHistory']['reset'](),this['_offset']=_0x4d4efd['offset'],this['serverHistory']['version']=this['_offset'],await this['_handleServerResponse'](_0x28bf6d,_0x4d4efd,'reconnection:\x20flushed\x20session');}else await this['_handleInitialConnectionData'](_0x4d4efd,_0x28bf6d);this['_handleSendingSelectionMarkers'](),this['_isConnected']=!0x0;}['_handleSendingSelectionMarkers'](){const _0x122361=this['editor']['plugins']['get'](i),_0x1946c4=this['editor']['plugins']['get'](q),_0x1de934=_0x122361['channelSessions']['get'](this['_channelId']);_0x1de934&&_0x1de934['length']>0x1?_0x1946c4['createUserMarkerOperations']():this['listenTo'](_0x122361,'sessionAdd:'+this['_channelId'],()=>{0x2===_0x122361['channelSessions']['get'](this['_channelId'])['length']&&_0x1946c4['createUserMarkerOperations']();});}async['_handleReceivedOperations'](_0x488c0d,_0x8b3f9b,_0x4ccbff,_0x50227f){if(!this['_isPendingUpdate']&&this['_document']['version']==_0x8b3f9b){const _0x3d0b7a=this['_decompressOperations'](_0x4ccbff,_0x50227f);await this['_fetchMissingUsers'](_0x3d0b7a),this['_handleExternalOperations'](_0x3d0b7a,_0x8b3f9b,_0x4ccbff['lastOperationId'])||this['_crash']('realtimecollaborationclient-init-service-incorrect-server-operation');}}async['_connectAfterSessionHasBeenFlushed'](){this['_disconnectService']();const {locale:_0x4cd9fb}=this['editor'];let _0x26eb7d;try{_0x26eb7d=await this['_service']['getDocumentDetails']();}catch(_0x435fe4){const _0x22b7e6=G(_0x4cd9fb,'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'](_0x22b7e6);}const _0x1f601c=_0x26eb7d['currentDocumentSession']||_0x26eb7d['lastDocumentSession'];if(this['_lastSyncedOperationId']===_0x1f601c['lastOperationId'])await this['_connectService'](this['editor']['model']['document']['history']['getOperations'](),!0x0);else{const _0x3f11a6=G(_0x4cd9fb,'The\x20last\x20saved\x20version\x20of\x20the\x20document\x20does\x20not\x20match\x20the\x20local\x20version.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.');this['_handleReconnectionError'](_0x3f11a6);}}['_disconnectService'](){this['_service']['disconnect'](),this['_bufferedOperations']=[],clearTimeout(this['_sendBufferedOperationsDelayId']),this['stopListening'](this['_service']);}['_initSessionsHandling'](_0x31acc3){const _0x3dcacd=this['editor']['plugins']['get'](i);this['listenTo'](_0x3dcacd,'sessionAdd:'+this['_channelId'],(_0x20decc,{session:_0x12ae59})=>{if(_0x12ae59['id']===_0x3dcacd['mySessionId']){_0x20decc['off']();const _0x10ee43=this['editor']['plugins']['has']('CommentsOnly')&&this['editor']['plugins']['get']('CommentsOnly');let _0x79583f=_0x12ae59['permissions'];_0x10ee43&&_0x10ee43['isEnabled']&&(_0x79583f=_0x79583f['filter'](_0x29a895=>'document:write'!==_0x29a895)),this['editor']['plugins']['get']('Permissions')['setPermissions'](_0x79583f,this['_channelId']);}}),_0x3dcacd['register'](this['_channelId'],_0x31acc3);}['_initThrowingOnDataSet'](){const _0x5c4600=this['editor']['data']['set'];this['editor']['data']['set']=(..._0x5e13cb)=>{if(!_0x5e13cb[_0x5e13cb['length']-0x1]['suppressErrorInCollaboration'])throw new _0x450af5('realtimecollaborationclient-editor-setdata-and-editor-data-set-are-forbidden-in-real-time-collaboration',this);_0x5c4600['apply'](this['editor']['data'],_0x5e13cb);};}['_setUpDataInit'](){this['editor']['data']['on']('init',(_0x58f72e,[_0x1fad60])=>{if(this['_document']['version'])throw new _0x450af5('realtimecollaborationclient-init-document-already-initialized',this);_0x58f72e['stop'](),this['_setPendingAction']();const _0x4411d1=this['editor']['config']['get']('rootsAttributes'),_0x425559=this['_getOperationsFromInitData'](_0x1fad60,_0x4411d1);0x0==_0x425559['length']&&_0x425559['push'](new _0x8511da(0x0)),_0x58f72e['return']=this['_connectService'](_0x425559)['then'](()=>{this['editor']['plugins']['get'](c)['addToReconnectionStack'](this),this['editor']['data']['fire']('ready');})['catch'](_0x3bf062=>this['_crash']('realtimecollaborationclient-init-connection-failed',_0x3bf062))['finally'](()=>this['_clearPendingAction']());},{'priority':'high'}),this['editor']['on']('loadRoot',async(_0x4bdec6,[_0x280fe8,_0x53dc74])=>{_0x4bdec6['stop']();const _0x34d1aa=this['editor']['model']['document']['getRoot'](_0x280fe8);if(!this['_knownRootNames']['has'](_0x280fe8)){const _0xc5b8f1=_0x53dc74&&_0x53dc74['data']?_0x53dc74['data']:'',_0x5cfd7e=_0x53dc74&&_0x53dc74['attributes']?_0x53dc74['attributes']:{};await this['_loadRoot'](_0x280fe8,_0xc5b8f1,_0x5cfd7e);}this['editor']['model']['enqueueChange']({'isUndoable':!0x1},()=>{_0x34d1aa['_isLoaded']=!0x0,this['editor']['model']['document']['differ']['_bufferRootLoad'](_0x34d1aa);});},{'priority':'high'});}async['_fetchMissingUsers'](_0x1b741a){const _0xa8a06c=this['editor']['plugins']['get'](_0x1b46b3),{connection:_0xe83b49}=this['editor']['plugins']['get'](c),_0xd5f904=new Set();for(const _0x5725bd of _0x1b741a){const _0x4fb956=_0x5725bd['_authorId'];_0x4fb956&&!_0xa8a06c['getUser'](_0x4fb956)&&_0xd5f904['add'](_0x4fb956);}if(0x0===_0xd5f904['size'])return;const _0x39f5fa=await dt['getMany'](_0xe83b49,Array['from'](_0xd5f904));for(const _0x38fcc8 of _0x39f5fa)_0xa8a06c['getUser'](_0x38fcc8['id'])||_0xa8a06c['addUser'](_0x38fcc8);}['_getOperationsFromInitData'](_0xee2057,_0xa0b27b={}){const _0x29294a=this['editor']['model'],_0x267d01=[];let _0x4b8100=0x0;const _0x1daa62='string'==typeof _0xee2057?{'main':_0xee2057}:_0xee2057;for(const _0x239570 of Object['keys'](_0x1daa62)){if(!this['_document']['roots']['has'](_0x239570))throw new _0x450af5('realtimecollaborationclient-init-non-existent-root',this);const _0x140043=this['editor']['data']['parse'](_0x1daa62[_0x239570]),_0xdd4a26=this['_document']['getRoot'](_0x239570),_0x11e669=new _0x19f267(_0x29294a['createPositionAt'](_0xdd4a26,0x0),_0x140043,_0x4b8100++);_0x267d01['push'](_0x11e669);for(const [_0x17de61,_0x5452c3]of _0x140043['markers']){const _0xd40a45=_0x29294a['createRange'](_0x29294a['createPositionFromPath'](_0xdd4a26,_0x5452c3['start']['path']['slice']()),_0x29294a['createPositionFromPath'](_0xdd4a26,_0x5452c3['end']['path']['slice']())),_0x347957=new _0x37404d(_0x17de61,null,_0xd40a45,_0x29294a['markers'],!0x0,_0x4b8100++);_0x267d01['push'](_0x347957);}}if(_0xa0b27b)for(const [_0x41790f,_0x356fec]of Object['entries'](_0xa0b27b)){const _0x380f07=_0x29294a['document']['getRoot'](_0x41790f);if(!_0x380f07)throw new _0x450af5('multi-root-editor-root-attributes-no-root',null);for(const [_0x4ddc81,_0x3fb309]of Object['entries'](_0x356fec))if(null!==_0x3fb309){const _0x106498=new _0x6cd20a(_0x380f07,_0x4ddc81,null,_0x3fb309,_0x4b8100++);_0x267d01['push'](_0x106498);}}return _0x267d01;}async['_loadRoot'](_0x2b0180,_0x1bf295,_0x130197){this['_getOperationsFromInitData']({[_0x2b0180]:_0x1bf295},{[_0x2b0180]:_0x130197})['forEach']((_0x29c373,_0x17f6fe)=>{_0x29c373['baseVersion']=this['_document']['version']+_0x17f6fe,_0x29c373['_isInit']=!0x0,this['_saveOperationInBuffer'](_0x29c373);}),this['_sendBufferedOperationsDelayed'](),await this['_waitUntilSynced']();}async['_handleInitialConnectionData'](_0x1c4b52,_0x3cc331){let _0x1b6f3f;this['_offset']=_0x1c4b52['offset'];const _0x1774f2=_0x1c4b52['wereChangesApplied']&&!_0x1c4b52['initData'],_0xf9b636=_0x1774f2?0x0:_0x1c4b52['data']['baseVersion'];if(_0x3cc331['forEach'](_0x1c49bb=>{_0x1c49bb['_isInit']=!0x0,_0x1c49bb['createdAt']=_0x1c4b52['sessionCreatedAt'],_0x1c49bb['_authorId']=null;}),_0x1774f2)_0x1b6f3f=_0x3cc331,this['_applyOperationsSet'](_0x1b6f3f,_0x1774f2);else{if(_0x1c4b52['initData']){const _0x96e6b0=this['_getOperationsFromInitData'](_0x1c4b52['initData']);this['_document']['history']['version']=-_0x96e6b0['length'],_0x96e6b0['forEach'](_0x2fdc0a=>{_0x2fdc0a['baseVersion']-=_0x96e6b0['length'],_0x2fdc0a['createdAt']=_0x1c4b52['sessionCreatedAt'],_0x2fdc0a['_isInit']=!0x0,_0x2fdc0a['_authorId']=null;}),this['_applyOperationsSet'](_0x96e6b0,!0x0),this['serverHistory']['version']=-_0x96e6b0['length']+this['_offset'],this['_updateServerHistory'](_0x96e6b0);}this['_document']['history']['version']=_0xf9b636,_0x1b6f3f=this['_decompressOperations'](_0x1c4b52['data'],_0x1c4b52['metadata']),await this['_fetchMissingUsers'](_0x1b6f3f),this['_applyOperationsSet'](_0x1b6f3f,_0x1774f2);}_0x1c4b52['lastOperationId']&&(this['_operationIdentifier']['setIdForTheLastOperation'](_0x1b6f3f,_0x1c4b52['lastOperationId']),this['_lastSyncedOperationId']=_0x1c4b52['lastOperationId']),this['serverHistory']['version']=_0xf9b636+this['_offset'],this['_updateServerHistory'](_0x1b6f3f),_0x3cc331['filter'](_0x16c18c=>{const _0x1dc434=this['_getAffectedRoot'](_0x16c18c);return _0x1dc434&&!this['_knownRootNames']['has'](_0x1dc434);})['forEach']((_0x2beaa3,_0x785e45)=>{_0x2beaa3['baseVersion']=this['_document']['version']+_0x785e45,this['_saveOperationInBuffer'](_0x2beaa3);}),this['_shouldSendUpdate']()?(this['_currentBufferDelay']=0x0,this['_sendBufferedOperationsDelayed'](!0x0),await this['_waitUntilSynced']()):(this['_isPendingUpdate']=!0x1,this['_clearPendingAction']());}['_crash'](_0x1b36ef,_0x1b8482){const _0xc9eac3=_0x1b8482&&_0x1b8482['message'];if(_0xc9eac3&&_0xc9eac3['startsWith']('realtimecollaborationclient'))throw _0x1b8482;const _0x982999=this['editor']['plugins']['get'](c);throw this['_isPendingUpdate']=!0x0,_0x982999['disconnect'](),this['editor']['enableReadOnlyMode']('realtimecollaborationclient-error'),new _0x450af5(_0x1b36ef,this['editor'],_0xc9eac3?{'originalError':_0xc9eac3}:void 0x0);}['_saveOperationInBuffer'](_0x5af2bb){this['_knownOperations']['has'](_0x5af2bb)||(this['_knownOperations']['add'](_0x5af2bb),this['_bufferedOperations']['push'](_0x5af2bb),this['_pendingAction']||'marker'==_0x5af2bb['type']&&!_0x5af2bb['affectsData']||this['_setPendingAction']());}['_sendBufferedOperationsDelayed'](_0x5f30f6=!0x1){!_0x5f30f6&&this['_isPendingUpdate']||(this['_isPendingUpdate']=!0x0,clearTimeout(this['_sendBufferedOperationsDelayId']),this['_sendBufferedOperationsDelayId']=setTimeout(()=>{this['_sendBufferedOperations']()['then'](_0x2b327f=>{_0x2b327f&&(this['_clearPendingAction'](),this['_isPendingUpdate']=!0x1);})['catch'](_0x572a60=>{this['_clearPendingAction'](),this['_isPendingUpdate']=!0x1,function(_0x57d6e1){return _0x57d6e1['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x57d6e1['message']['startsWith']('cloud-services-internal-error:\x20Collaborative\x20Editing\x20Service\x20is\x20not\x20connected.')||_0x57d6e1['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}(_0x572a60)||this['_crash'](_0x572a60['message'],_0x572a60);});},this['_currentBufferDelay']));}['_waitUntilSynced'](){return new Promise(_0x34d81c=>{this['on']('change:_isPendingUpdate',()=>{_0x34d81c();});});}async['_sendBufferedOperations'](){const _0x5469f9=this['editor']['plugins']['get'](q);if(this['_shouldSendSelectionUpdate']()&&(_0x5469f9['createUserMarkerOperations'](),this['_hasSelectionChanged']=!0x1),!this['_shouldSendUpdate']())return!0x0;const _0x4ee29c=[...this['_bufferedOperations']];for(const _0x14221b of _0x4ee29c)_0x14221b['wasUndone']=this['_document']['history']['isUndoneOperation'](_0x14221b);const _0x16d447=this['_operationIdentifier']['getIdOfTheLastOperation'](_0x4ee29c),_0x29345f=J++,_0xc730de=this['_compressOperations'](_0x4ee29c),_0x399e97=await this['_service']['sendOperations'](_0xc730de,_0xc730de['baseVersion'],_0x16d447);try{return await this['_handleServerResponse'](_0x4ee29c,_0x399e97,_0x29345f);}catch(_0x24d224){return this['_crash']('realtimecollaborationclient-sendbufferedoperations',_0x24d224);}}async['_handleServerResponse'](_0x3f538f,_0x5aa3a9,_0x37cec0){if('error'in _0x5aa3a9)throw _0x5aa3a9['error'];let _0x4dec0e=!0x1;if(_0x5aa3a9['wereChangesApplied']){_0x5aa3a9['lastOperationId']&&(this['_lastSyncedOperationId']=_0x5aa3a9['lastOperationId']),this['_bufferedOperations']=this['_bufferedOperations']['filter'](_0x49086a=>!_0x3f538f['includes'](_0x49086a));for(const _0xb275ac of _0x3f538f)_0xb275ac['createdAt']='lastOperationAcceptedAt'in _0x5aa3a9&&_0x5aa3a9['lastOperationAcceptedAt']||void 0x0;X(_0x3f538f,_0x5aa3a9['version']-_0x3f538f['length']),this['_updateServerHistory'](_0x3f538f);const _0x10a376=_0x3f538f['filter'](_0x2762f5=>{if(!_0x2762f5['_isInit'])return!0x1;const _0x1c0b78=this['_getAffectedRoot'](_0x2762f5);return _0x1c0b78&&!this['_knownRootNames']['has'](_0x1c0b78);});X(_0x10a376,this['_document']['version']),this['_applyOperationsSet'](_0x10a376),_0x4dec0e=!0x0,this['_currentBufferDelay']=this['_baseBufferDelay'];}else{const _0x264750=this['_decompressOperations'](_0x5aa3a9['data'],_0x5aa3a9['metadata'])['filter'](_0x2e3899=>_0x2e3899['baseVersion']>=this['_lastServerVersion']);_0x264750['forEach'](_0x316d0f=>this['_addKnownRoot'](_0x316d0f)),this['_bufferedOperations']=this['_bufferedOperations']['filter'](_0x1742d1=>!_0x1742d1['_isInit']||!this['_knownRootNames']['has'](this['_getAffectedRoot'](_0x1742d1))),this['_bufferedOperations']['length']&&X(this['_bufferedOperations'],this['_bufferedOperations'][0x0]['baseVersion']),await this['_fetchMissingUsers'](_0x264750),_0x4dec0e=this['_handleExternalOperations'](_0x264750,_0x5aa3a9['version'],_0x5aa3a9['lastOperationId']),this['_currentBufferDelay']=Math['round'](this['_currentBufferDelay']/0x2);}return _0x4dec0e?!this['_shouldSendUpdate']()||(this['_sendBufferedOperationsDelayed'](!0x0),!0x1):this['_crash']('realtimecollaborationclient-handleserverresponse');}['_handleExternalOperations'](_0x38369a,_0x5f828e,_0x325e9f){try{const _0x2247d1={'document':this['_document'],'useRelations':!0x1,'padWithNoOps':!0x0},{operationsA:_0x508b51,operationsB:_0x237afd,originalOperations:_0x326f07}=_0x43930a(_0x38369a,this['_bufferedOperations'],_0x2247d1);X(_0x508b51,this['_document']['version']),X(_0x237afd,_0x5f828e);for(const _0x591018 of _0x508b51){const _0x3ef6e0=_0x326f07['get'](_0x591018);_0x591018['_authorId']=_0x3ef6e0?_0x3ef6e0['_authorId']:null;}_0x325e9f&&(this['_operationIdentifier']['setIdForTheLastOperation'](_0x38369a,_0x325e9f),this['_lastSyncedOperationId']=_0x325e9f),this['_bufferedOperations']=[..._0x237afd],this['_applyOperationsSet'](_0x508b51),this['_updateServerHistory'](_0x38369a);}catch(_0x3ee20e){return console['error'](_0x3ee20e),!0x1;}return!0x0;}['_applyOperationsSet'](_0x22370a,_0x26768a=!0x1){this['editor']['model']['enqueueChange']({'isUndoable':!0x1,'isLocal':!0x1},_0x57c9b2=>{for(const _0x4521e0 of _0x22370a)this['_knownOperations']['add'](_0x4521e0),this['_addKnownRoot'](_0x4521e0),_0x57c9b2['batch']['addOperation'](_0x4521e0),this['editor']['model']['applyOperation'](_0x4521e0);});}['_addKnownRoot'](_0x2a4bbc){const _0x106103=this['_getAffectedRoot'](_0x2a4bbc);_0x106103&&this['_knownRootNames']['add'](_0x106103);}['_getAffectedRoot'](_0x144f05){let _0x1f59f9,_0x1bf95f;switch(_0x144f05['type']){case'insert':_0x1f59f9=_0x144f05['position']['root'];break;case'marker':if(_0x1bf95f=_0x144f05['newRange'],!_0x1bf95f)return null;_0x1f59f9=_0x1bf95f['root'];break;case'addRootAttribute':_0x1f59f9=_0x144f05['root'];break;case'addRoot':_0x1f59f9=_0x144f05['affectedSelectable'];break;case'move':_0x1f59f9=_0x144f05['targetPosition']['root'];break;default:return null;}return _0x1f59f9['rootName'];}['_updateServerHistory'](_0x32908e){_0x32908e['forEach'](_0x2a7c79=>{const _0x552022=_0x2a7c79['clone']();_0x552022['_authorId']=_0x2a7c79['_authorId'],_0x552022['_isInit']=!!_0x2a7c79['_isInit'],_0x552022['createdAt']=_0x2a7c79['createdAt'],_0x552022['baseVersion']+=this['_offset'],_0x2a7c79['_isDisconnection']&&this['_disconnectionOperations']['add'](_0x552022),this['serverHistory']['addOperation'](_0x552022);});}['_handleReconnectionError'](_0x1010f4){const _0x2aece3=this['editor']['plugins']['get']('Notification'),_0xafbe76=this['editor']['locale'];_0x1010f4||(_0x1010f4=G(_0xafbe76,'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.')),_0x2aece3['showWarning'](_0x1010f4,{'title':G(_0xafbe76,'Synchronization\x20issue'),'namespace':'real-time-collaboration'}),this['_hasSynchronizationProblem']=!0x0,clearTimeout(this['_sendBufferedOperationsDelayId']),this['_bufferedOperations']=[],this['editor']['plugins']['get'](c)['disconnect']();}['_setPendingAction'](){this['_pendingAction']||(this['_pendingAction']=this['editor']['plugins']['get'](_0x2c0263)['add'](G(this['editor']['locale'],'PENDING_ACTION_SENDING_DATA')));}['_clearPendingAction'](){this['_pendingAction']&&(this['editor']['plugins']['get'](_0x2c0263)['remove'](this['_pendingAction']),this['_pendingAction']=null);}['_compressOperations'](_0xc66763){const _0x4ae49e=_0xc66763['map'](_0x4f0126=>_0x4f0126['toJSON']());return this['_compressor']['compress'](_0x4ae49e);}['_decompressOperations'](_0x3d03ec,_0x7cd7b5){return this['_compressor']['decompress'](_0x3d03ec)['map']((_0x1ec4aa,_0x337cf9)=>{const _0x151f72='init'==_0x7cd7b5[_0x337cf9]['type'];if('InsertOperation'==_0x1ec4aa['__className']){const _0x58cd1e=_0x1ec4aa['position']['root'];!this['_document']['getRoot'](_0x58cd1e)&&(this['_document']['createRoot']('$root',_0x58cd1e)['_isAttached']=!0x1);}const _0x5032e=_0x25d184['fromJSON'](_0x1ec4aa,this['_document']);return _0x5032e['wasUndone']=_0x1ec4aa['wasUndone'],_0x5032e['_isInit']=_0x151f72,_0x5032e['_authorId']=_0x151f72?null:_0x7cd7b5[_0x337cf9]['userId'],_0x5032e['_isDisconnection']='cs:removeUser'===_0x7cd7b5[_0x337cf9]['type'],_0x5032e['createdAt']=_0x7cd7b5[_0x337cf9]['createdAt'],_0x5032e;});}['_refreshUserSelectionMarkers'](){this['_hasSelectionChanged']=!0x0,this['_shouldSendSelectionUpdate']()?this['_sendBufferedOperationsDelayed']():this['_hasSelectionChanged']=!0x1;}['_shouldSendSelectionUpdate'](){const _0x4fe35c=this['editor']['plugins']['get'](i)['channelSessions']['get'](this['_channelId']);return!this['editor']['isReadOnly']&&!!_0x4fe35c&&_0x4fe35c['length']>0x1&&this['_hasSelectionChanged'];}['_shouldSendUpdate'](){return this['_bufferedOperations']['length']>0x0||this['_shouldSendSelectionUpdate']();}}class Q extends Error{}function X(_0x10c616,_0x3d6075){for(const _0x4698c4 of _0x10c616)_0x4698c4['baseVersion']=_0x3d6075++;}class Y{['_ignoredOperations'];['_operationToId'];constructor(_0x532e9e){this['_ignoredOperations']=_0x532e9e,this['_operationToId']=new WeakMap();}['getIdOfTheLastOperation'](_0x3fc2cb){let _0x236ca5=_0x3fc2cb['length'];for(;_0x236ca5--;){const _0x49ba82=_0x3fc2cb[_0x236ca5];if(!this['_ignoredOperations']['has'](_0x49ba82)){if(!this['_operationToId']['has'](_0x49ba82)){const _0x3c45a1=_0x1d673a()['slice'](0x1,0x12);this['_operationToId']['set'](_0x49ba82,_0x3c45a1);}return this['_operationToId']['get'](_0x49ba82);}}}['setIdForTheLastOperation'](_0x5aaafa,_0xdb3e4d){if(!_0xdb3e4d)return;let _0x57b517=_0x5aaafa['length'];for(;_0x57b517--;){const _0x10e09d=_0x5aaafa[_0x57b517];this['_ignoredOperations']['has'](_0x10e09d)||this['_operationToId']['set'](_0x10e09d,_0xdb3e4d);}}}class n extends _0x36ec84{static get['requires'](){return[l];}static get['pluginName'](){return'RealTimeCollaborativeEditing';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}class a extends _0x39c302{static ['CommentsService']=/* #__PURE__ -- @preserve */
26
- ((()=>_0x30f710)());['_services'];static get['requires'](){return[c,'CommentsRepository',i,_0x1b46b3];}static get['pluginName'](){return'CloudServicesCommentsAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x5f1283){super(_0x5f1283),this['_services']=new Map();}async['init'](){const _0x55fb5f=this['context'],_0x4d74aa=_0x55fb5f['plugins']['get']('CommentsRepository');if(_0x55fb5f['plugins']['get'](c)['addToReconnectionStack'](this),_0x4d74aa['adapter']={'addCommentThread':async({channelId:_0x582591,threadId:_0x5aaddc,comments:_0xc9075a,resolvedAt:_0x5a4ed9,resolvedBy:_0x7b4e6d,context:_0x30f41d,attributes:_0x3afca4})=>{const _0x54b140=await this['_getService'](_0x582591)['addCommentThread']({'commentThreadId':_0x5aaddc,'comments':_0xc9075a['map'](_0x2876c4=>function(_0x1aa978,_0x4cc19d,_0x15f624){return{'commentThreadId':_0x15f624,'commentId':_0x1aa978['commentId'],'userId':_0x1aa978['authorId'],'content':_0x1aa978['content'],'documentId':_0x4cc19d,'createdAt':_0x1aa978['createdAt'],'attributes':_0x1aa978['attributes']||{}};}(_0x2876c4,_0x582591,_0x5aaddc)),'resolvedAt':_0x5a4ed9,'resolvedBy':_0x7b4e6d,'context':_0x30f41d,'attributes':_0x3afca4})['catch'](ut);return{'threadId':_0x54b140['commentThreadId'],'comments':_0x54b140['comments']};},'getCommentThread':async({channelId:_0x3b390c,threadId:_0x369b81})=>{const _0x4d8097=await this['_getService'](_0x3b390c)['getCommentThread'](_0x369b81)['catch'](ut);return _0x4d8097['deletedAt']?null:(await this['_fetchMissingUsersForThreads']([_0x4d8097]),{'threadId':_0x4d8097['commentThreadId'],'comments':_0x4d8097['comments']['map'](_),'context':_0x4d8097['context'],'resolvedAt':_0x4d8097['resolvedAt'],'resolvedBy':_0x4d8097['resolvedBy'],'attributes':_0x4d8097['attributes']||{}});},'updateCommentThread':async({channelId:_0x11e085,threadId:_0x4f78ed,context:_0x1a6edd,unlinkedAt:_0x25eabe,attributes:_0x14beae})=>this['_getService'](_0x11e085)['updateCommentThread']({'commentThreadId':_0x4f78ed,'context':_0x1a6edd,'attributes':_0x14beae,'unlinkedAt':_0x25eabe})['catch'](S)['catch'](ut),'resolveCommentThread':async({channelId:_0xb5070c,threadId:_0x29cd77})=>{const _0x1827f4=await this['_getService'](_0xb5070c)['resolveCommentThread'](_0x29cd77)['catch'](S)['catch'](ut);return{'threadId':_0x1827f4['commentThreadId'],'resolvedAt':_0x1827f4['resolvedAt'],'resolvedBy':_0x1827f4['resolvedBy']};},'reopenCommentThread':async({channelId:_0x7edc04,threadId:_0x2cf4ba})=>this['_getService'](_0x7edc04)['reopenCommentThread'](_0x2cf4ba)['catch'](S)['catch'](ut),'removeCommentThread':({channelId:_0x1f619e,threadId:_0x1e26d6})=>this['_getService'](_0x1f619e)['removeCommentThread'](_0x1e26d6)['catch'](S)['catch'](ut),'addComment':({channelId:_0x481b40,threadId:_0x274d5a,commentId:_0x466609,content:_0xc3c998,attributes:_0xb2da5e})=>this['_getService'](_0x481b40)['addComment'](_0x274d5a,_0x466609,_0xc3c998,_0xb2da5e)['catch'](ut),'updateComment':({channelId:_0x2221d6,threadId:_0x257567,commentId:_0x218695,content:_0x404446,attributes:_0x32eee3})=>this['_getService'](_0x2221d6)['updateComment'](_0x257567,_0x218695,_0x404446,_0x32eee3)['catch'](S)['catch'](ut),'removeComment':({channelId:_0x326a85,threadId:_0x4bf7b0,commentId:_0x55f666})=>this['_getService'](_0x326a85)['removeComment'](_0x4bf7b0,_0x55f666)['catch'](S)['catch'](ut)},_0x55fb5f instanceof _0xe4df37){const _0x5c672c=_0x55fb5f['config']['get']('collaboration.channelId'),_0x5528ee=_0x55fb5f['plugins']['get'](i);await this['_setUpService'](_0x5c672c);const _0x5bed4e=await this['_services']['get'](_0x5c672c)['getConnectedSessions']();this['listenTo'](_0x5528ee,'sessionAdd:'+_0x5c672c,(_0x2d9209,{session:_0x3576ec})=>{_0x3576ec['id']===_0x5528ee['mySessionId']&&(_0x2d9209['off'](),this['context']['plugins']['get']('Permissions')['setPermissions'](_0x3576ec['permissions'],_0x5c672c));}),_0x5528ee['register'](_0x5c672c,_0x5bed4e);}}async['_setUpService'](_0x2eb503){if(this['_services']['has'](_0x2eb503))throw new _0x450af5('cloudservicescommentsadapter-connect-already-connected',null,{'channelId':_0x2eb503});const _0x3083bf=this['context']['plugins']['get']('CommentsRepository'),_0x53f64a=new a['CommentsService'](_0x2eb503);this['_services']['set'](_0x2eb503,_0x53f64a),this['listenTo'](_0x53f64a,'commentThreadAdded',(_0x1bd161,_0x321364)=>{const {commentThreadId:_0x14bc66,documentId:_0x59d76a,context:_0x365792,attributes:_0xf6ca1e,resolvedAt:_0x54b23a,resolvedBy:_0x193449,comments:_0x1b519a}=_0x321364;_0x3083bf['getCommentThread'](_0x14bc66)||_0x3083bf['addCommentThread']({'threadId':_0x14bc66,'channelId':_0x59d76a,'comments':_0x1b519a?_0x1b519a['map'](_):[],'context':_0x365792,'attributes':_0xf6ca1e,'resolvedAt':_0x54b23a,'resolvedBy':_0x193449,'isFromAdapter':!0x0});}),this['listenTo'](_0x53f64a,'commentThreadUpdated',(_0x568231,{commentThreadId:_0x26c969,documentId:_0x1e3f22,context:_0x23aee3,unlinkedAt:_0x1d8a5e,attributes:_0x38a06f})=>{_0x3083bf['getCommentThread'](_0x26c969)&&_0x3083bf['updateCommentThread']({'threadId':_0x26c969,'channelId':_0x1e3f22,'context':_0x23aee3,'unlinkedAt':_0x1d8a5e,'attributes':_0x38a06f,'isFromAdapter':!0x0});}),this['listenTo'](_0x53f64a,'commentThreadResolved',(_0x2402c4,{commentThreadId:_0x493bd4,resolvedBy:_0x3a0087,resolvedAt:_0x5a953e})=>{const _0x48aca5=_0x3083bf['getCommentThread'](_0x493bd4);_0x48aca5&&_0x48aca5['resolve']({'resolvedBy':_0x3a0087,'resolvedAt':_0x5a953e,'isFromAdapter':!0x0});}),this['listenTo'](_0x53f64a,'commentThreadReopened',(_0x17f077,{commentThreadId:_0x1f90cb})=>{const _0x15a41f=_0x3083bf['getCommentThread'](_0x1f90cb);_0x15a41f&&_0x15a41f['reopen']({'isFromAdapter':!0x0});}),this['listenTo'](_0x53f64a,'commentThreadRemoved',(_0x89bd91,{commentThreadId:_0x19375e})=>{const _0x40889e=_0x3083bf['getCommentThread'](_0x19375e);_0x40889e&&_0x40889e['remove']({'isFromAdapter':!0x0});}),this['listenTo'](_0x53f64a,'commentAdded',(_0x556784,_0x314e2b)=>{const _0x515aec=_0x314e2b['commentThreadId'],_0x2b4734=_0x3083bf['getCommentThread'](_0x515aec);_0x2b4734&&_0x2b4734['addComment']({..._(_0x314e2b),'isFromAdapter':!0x0});}),this['listenTo'](_0x53f64a,'commentUpdated',(_0xdece46,{commentThreadId:_0x293eb8,commentId:_0x518e3d,content:_0x2e7847,attributes:_0x1805a0})=>{const _0x369644=_0x3083bf['getCommentThread'](_0x293eb8);if(_0x369644){const _0x29e487=_0x369644['getComment'](_0x518e3d);_0x29e487&&_0x29e487['update']({'content':_0x2e7847,'attributes':_0x1805a0,'isFromAdapter':!0x0});}}),this['listenTo'](_0x53f64a,'commentRemoved',(_0x5a9bd0,{commentThreadId:_0x3202f0,commentId:_0x2322c3})=>{const _0x5d34f3=_0x3083bf['getCommentThread'](_0x3202f0);if(_0x5d34f3){const _0x343c3e=_0x5d34f3['getComment'](_0x2322c3);_0x343c3e&&_0x343c3e['remove']({'isFromAdapter':!0x0});}}),await this['_connectService'](_0x2eb503);}['destroy'](){if(this['context']instanceof _0xe4df37){const _0x25cd4d=this['context']['config']['get']('collaboration.channelId');this['_terminateService'](_0x25cd4d);}}['_terminateService'](_0x576425){if(!this['_services']['has'](_0x576425))throw new _0x450af5('cloudservicescommentsadapter-disconnect-not-exist',null,{'channelId':_0x576425});this['_getService'](_0x576425)['disconnect'](),this['_services']['delete'](_0x576425);}async['reconnect'](){for(const _0x3d4025 of this['_services']['keys']())await this['_connectService'](_0x3d4025);if(this['context']instanceof _0xe4df37){const _0x120ebd=this['context']['config']['get']('collaboration.channelId'),_0x2d2256=this['context']['plugins']['get'](i);_0x2d2256['unregister'](_0x120ebd);const _0x1e3473=await this['_services']['get'](_0x120ebd)['getConnectedSessions']();_0x2d2256['register'](_0x120ebd,_0x1e3473);}}async['_connectService'](_0x101b33){const {connection:_0x3be628}=this['context']['plugins']['get'](c),_0xd1dbd1=this['context']['plugins']['get']('CommentsRepository'),_0x2e69f4=this['_services']['get'](_0x101b33),_0x36dca7=await _0x2e69f4['connect'](_0x3be628);await this['_fetchMissingUsersForThreads'](_0x36dca7);const _0x5e5aa7=new Set(Array['from'](_0xd1dbd1['getCommentThreads']({'channelId':_0x101b33}),_0x4d0be6=>_0x4d0be6['id']));for(const _0x324c33 of _0x36dca7)_0x324c33['deletedAt']||_0x5e5aa7['delete'](_0x324c33['commentThreadId']);for(const _0x24df14 of _0x5e5aa7)_0xd1dbd1['getCommentThread'](_0x24df14)['remove']({'isFromAdapter':!0x0});for(const _0x279d10 of _0x36dca7){let _0x33bbb6=_0xd1dbd1['getCommentThread'](_0x279d10['commentThreadId']);const {commentThreadId:_0x5015c9,context:_0x868c65,attributes:_0x5d9482,resolvedBy:_0x50b219,resolvedAt:_0x48ee85,unlinkedAt:_0x25ce9a,deletedAt:_0x201f91}=_0x279d10;if(_0x201f91)continue;_0x33bbb6||(_0x33bbb6=_0xd1dbd1['addCommentThread']({'channelId':_0x101b33,'threadId':_0x5015c9,'context':_0x868c65,'attributes':_0x5d9482||{},'resolvedBy':_0x50b219,'resolvedAt':_0x48ee85,'unlinkedAt':_0x25ce9a,'isFromAdapter':!0x0}));const _0x244089=new Set(Array['from'](_0x33bbb6['comments'],_0x3f1b41=>_0x3f1b41['id']));for(const _0x239cea of _0x279d10['comments'])_0x244089['delete'](_0x239cea['commentId']);for(const _0xb43a2 of _0x244089)_0x33bbb6['getComment'](_0xb43a2)['remove']({'isFromAdapter':!0x0});for(const _0xe5b3b7 of _0x279d10['comments']){const _0x2fb990=_0x33bbb6['getComment'](_0xe5b3b7['commentId']);_0x2fb990?_0x2fb990['content']!==_0xe5b3b7['content']&&_0x2fb990['update']({'content':_0xe5b3b7['content'],'isFromAdapter':!0x0}):_0x33bbb6['addComment'](Object['assign'](_(_0xe5b3b7),{'isFromAdapter':!0x0}));}}}['_getService'](_0xa83a63){if(!this['_services']['has'](_0xa83a63))throw new _0x450af5('cloudservicescommentsadapter-service-not-exist',null,{'channelId':_0xa83a63});return this['_services']['get'](_0xa83a63);}async['_fetchMissingUsersForThreads'](_0x59fb5a){const _0x3d1c53=this['context']['plugins']['get'](_0x1b46b3),{connection:_0x150c1a}=this['context']['plugins']['get'](c),_0x2c7b67=new Set();for(const {resolvedBy:_0x44ca72,comments:_0x44d2c2}of _0x59fb5a){_0x44ca72&&!_0x3d1c53['getUser'](_0x44ca72)&&_0x2c7b67['add'](_0x44ca72);for(const {userId:_0x3867e4}of _0x44d2c2)_0x3d1c53['getUser'](_0x3867e4)||_0x2c7b67['add'](_0x3867e4);}if(0x0===_0x2c7b67['size'])return;const _0x503fd3=await dt['getMany'](_0x150c1a,Array['from'](_0x2c7b67));for(const _0x102039 of _0x503fd3)_0x3d1c53['getUser'](_0x102039['id'])||_0x3d1c53['addUser'](_0x102039);}}async function S(_0x4f6f88){if('404'!==_0x4f6f88['code'])throw _0x4f6f88;}function ut(_0x529cfb){if((_0x3ded76=_0x529cfb)['message']['startsWith']('cloud-services-internal-error:\x20Comments\x20Service\x20is\x20not\x20connected.')||_0x3ded76['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x3ded76['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.'))return new Promise(()=>{});var _0x3ded76;throw _0x529cfb;}function _(_0x347008){return{'threadId':_0x347008['commentThreadId'],'commentId':_0x347008['commentId'],'content':_0x347008['content'],'createdAt':_0x347008['createdAt'],'authorId':_0x347008['userId'],'attributes':_0x347008['attributes']||{}};}class f extends _0x36ec84{static ['TrackChangesService']=/* #__PURE__ -- @preserve */
27
- ((()=>et)());['_bufferedRequests'];['_trackChangesService'];static get['requires'](){return[a,'TrackChangesEditing',c];}static get['pluginName'](){return'CloudServicesTrackChangesAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x480eff){super(_0x480eff);const _0x1a8b07=this['editor']['config']['get']('collaboration.channelId');this['_bufferedRequests']=new Map(),this['_trackChangesService']=new f['TrackChangesService'](_0x1a8b07);}['init'](){const _0x39cb63=this['editor']['plugins']['get'](c),_0x4ab684=this['editor']['plugins']['get']('TrackChangesEditing');return _0x4ab684['adapter']={'getSuggestion':async _0x1c630c=>{await this['_waitForServiceReady']();const _0x4e5fca=await this['_trackChangesService']['get'](_0x1c630c)['catch'](R);return await this['_fetchMissingUsersForThreads']([_0x4e5fca]),_0x4e5fca;},'addSuggestion':async({id:_0x2f30f5,type:_0xfdeb09,data:_0x5af279,originalSuggestionId:_0xbb9455,attributes:_0x3fd1ad})=>{await this['_waitForServiceReady']();const _0x33acef={'id':_0x2f30f5,'type':_0xfdeb09,'data':_0x5af279,'originalSuggestionId':_0xbb9455,'attributes':_0x3fd1ad},_0x18c942=await this['_trackChangesService']['add'](_0x2f30f5,_0xfdeb09,_0x5af279,_0xbb9455,_0x3fd1ad)['catch'](_0xd5568=>{if(ft(_0xd5568))return new Promise(_0x4cd40d=>{this['_bufferedRequests']['set'](_0x2f30f5,{'resolve':_0x4cd40d,'suggestionData':_0x33acef});});throw _0xd5568;});return this['_bufferedRequests']['delete'](_0x2f30f5),_0x18c942;},'updateSuggestion':async(_0x384739,_0x1c93e4)=>{if(await this['_waitForServiceReady'](),'open'!==_0x1c93e4['state'])return this['_trackChangesService']['update'](_0x384739,_0x1c93e4)['catch'](R);}},this['listenTo'](this['_trackChangesService'],'suggestionUpdated',(_0x5b9926,_0x4b2325)=>{_0x4ab684['hasSuggestion'](_0x4b2325['id'])&&(_0x4ab684['getSuggestion'](_0x4b2325['id'])['attributes']=_0x4b2325['attributes']);}),this['_trackChangesService']['connect'](_0x39cb63['connection'])['then'](_0xb4506a=>(_0x39cb63['addToReconnectionStack'](this),this['_fetchMissingUsersForThreads'](_0xb4506a)['then'](()=>{for(const _0x394a4d of _0xb4506a){_0x4ab684['addSuggestionData'](_0x394a4d)['_saved']=!0x0;}})));}async['reconnect'](){const _0x4f3196=this['editor']['plugins']['get']('TrackChangesEditing'),{connection:_0x3abaee}=this['editor']['plugins']['get'](c),_0x22c277=await this['_trackChangesService']['connect'](_0x3abaee);await this['_fetchMissingUsersForThreads'](_0x22c277);for(const {suggestionData:_0xd70265,resolve:_0x504251}of this['_bufferedRequests']['values']()){let _0x300033=_0x22c277['find'](_0x236067=>_0x236067['id']===_0xd70265['id']);_0x300033||(_0x300033=await this['_trackChangesService']['add'](_0xd70265['id'],_0xd70265['type'],_0xd70265['data'],_0xd70265['originalSuggestionId'])),_0x504251(_0x300033);}for(const _0x4142e1 of _0x22c277)_0x4f3196['hasSuggestion'](_0x4142e1['id'])||_0x4f3196['addSuggestionData'](_0x4142e1);}async['_waitForServiceReady'](){this['_trackChangesService']['isConnected']||await new Promise(_0x7ee853=>{this['listenTo'](this['_trackChangesService'],'connected',_0x121756=>{_0x121756['off'](),_0x7ee853();});});}async['_fetchMissingUsersForThreads'](_0x3a93af){const _0x3dc768=this['editor']['plugins']['get'](_0x1b46b3),{connection:_0x11447}=this['editor']['plugins']['get'](c),_0x380bf5=new Set();for(const {authorId:_0x516c0a}of _0x3a93af)_0x3dc768['getUser'](_0x516c0a)||_0x380bf5['add'](_0x516c0a);if(0x0===_0x380bf5['size'])return;const _0x297e0d=await dt['getMany'](_0x11447,Array['from'](_0x380bf5));for(const _0x3e5877 of _0x297e0d)_0x3dc768['getUser'](_0x3e5877['id'])||_0x3dc768['addUser'](_0x3e5877);}}function R(_0x49f3be){if(ft(_0x49f3be))return new Promise(()=>{});throw _0x49f3be;}function ft(_0x86b1ae){return _0x86b1ae['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x86b1ae['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}class m extends _0x36ec84{static get['requires'](){return['Comments',a,n,c];}static get['pluginName'](){return'RealTimeCollaborativeComments';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['init'](){const _0x5baa1c=this['editor']['plugins']['get'](c),_0x26d33f=this['editor']['plugins']['get']('CommentsEditing'),_0x2af817=this['editor']['plugins']['get'](a);return this['editor']['data']['once']('ready',()=>{this['listenTo'](_0x5baa1c,'change:state',(_0x11440b,_0x3c919c,_0x260ad9)=>{_0x26d33f['isThreadsLoadingPaused']='connected'!==_0x260ad9;});}),this['listenTo'](_0x5baa1c,'change:state',(_0xce1db0,_0x430980,_0x4fbba4)=>{this['editor']['plugins']['get']('CommentsRepository')['switchReadOnly']('connected'!==_0x4fbba4);}),_0x2af817['_setUpService'](this['editor']['config']['get']('collaboration.channelId'));}['destroy'](){this['editor']['plugins']['get'](a)['_terminateService'](this['editor']['config']['get']('collaboration.channelId')),super['destroy']();}}class p extends _0x36ec84{static get['requires'](){return[m,f,'TrackChanges'];}static get['pluginName'](){return'RealTimeCollaborativeTrackChanges';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}class u extends _0x36ec84{static ['RevisionHistoryService']=/* #__PURE__ -- @preserve */
28
- ((()=>it)());['_lastRequestId'];['_revisionTracker'];['_revisionHistoryService'];['_oldOffset'];static get['requires'](){return[c,l,'RevisionHistory',i,_0x1b46b3];}static get['pluginName'](){return'CloudServicesRevisionHistoryAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x4e1e9e){super(_0x4e1e9e);const _0x174f41=this['editor']['config']['get']('collaboration.channelId');this['_lastRequestId']=null,this['_revisionTracker']=this['editor']['plugins']['get']('RevisionTracker'),this['_revisionHistoryService']=new u['RevisionHistoryService'](_0x174f41);}async['init'](){const _0x4d4946=this['editor']['plugins']['get'](l),_0x3fbb08=_0x4d4946['serverHistory'],_0x1e37ad=this['editor']['plugins']['get'](c);this['_revisionTracker']['setSource']({'history':_0x3fbb08,'getLatestVersion':()=>this['_getLatestVersion'](),'getCurrentRevisionId':()=>_0x4d4946['sessionId']});const _0x35adee=this['editor']['config']['get']('cloudServices.bundleVersion')||nt,_0x4866f3=await tt['isBundleUploaded'](_0x1e37ad['connection'],_0x35adee);this['editor']['plugins']['get']('RevisionHistory')['adapter']={'getRevision':async({revisionId:_0x38d732})=>(await this['_waitForServiceReady'](),await this['_revisionHistoryService']['getRevision'](_0x38d732)),'updateRevisions':async _0x3685fc=>{await this['_waitForServiceReady']();const _0x1bb3d9=this['_revisionTracker']['currentRevision'];if(_0x4866f3&&0x1===_0x3685fc['length']&&_0x3685fc[0x0]['id']===_0x1bb3d9['id'])return _0x3685fc;for(const _0x32f985 of _0x3685fc)_0x32f985['id']===_0x1bb3d9['id']&&(_0x32f985['isEmptyCurrent']=_0x32f985['fromVersion']===_0x32f985['toVersion']);return this['_revisionHistoryService']['updateRevisions'](_0x3685fc,this['_lastRequestId'])['then'](_0x50f356=>(this['_lastRequestId']=_0x50f356,_0x3685fc))['catch'](_0x1d7c10=>{if(st(_0x1d7c10)||'400'===_0x1d7c10['code']&&void 0x0!==_0x1d7c10['data']['wrongRequestId']){for(const _0x2d2afa of _0x3685fc){!this['_revisionTracker']['repository']['getRevision'](_0x2d2afa['id'])||this['_revisionTracker']['_bufferUpdate'](_0x2d2afa['id'],_0x2d2afa,!0x1);}if(st(_0x1d7c10))throw _0x1d7c10;return _0x3685fc;}throw _0x1d7c10;});}},this['listenTo'](this['_revisionHistoryService'],'revisionsUpdated',(_0x26636f,{revisionsData:_0xf7fae6,requestId:_0x18e30d})=>{Math['max'](..._0xf7fae6['map'](_0x2d51f1=>_0x2d51f1['toVersion']))>this['_getLatestVersionFromServerOperations']()-0x1?this['_getLatestVersion']()['then'](()=>{this['_handleRevisionsUpdate'](_0xf7fae6,_0x18e30d);}):this['_handleRevisionsUpdate'](_0xf7fae6,_0x18e30d);});const {revisions:_0x5ce620,requestId:_0x200f3f}=await this['_revisionHistoryService']['connect'](_0x1e37ad['connection']);_0x1e37ad['addToReconnectionStack'](this),this['_lastRequestId']=_0x200f3f,await this['_fetchMissingUsers'](_0x5ce620);for(const _0xffcaa7 of _0x5ce620)this['_revisionTracker']['addRevisionData'](_0xffcaa7);this['listenTo'](_0x4d4946,'change:_isConnected',(_0x48b1f9,_0x5ef71f,_0x2697a2)=>{_0x2697a2&&(this['_oldOffset']=_0x4d4946['_offset'],_0x48b1f9['off']());}),this['_revisionTracker']['bind']('isEnabled')['to'](_0x1e37ad,'state',_0x5c3aeb=>_0x5c3aeb===_0x307b4a['CONNECTED']);}async['reconnect'](){const _0x43782a=this['editor']['plugins']['get'](c),_0x583e28=this['editor']['plugins']['get'](l),_0x41472d=async()=>{const _0x2757e3=this['_revisionTracker']['currentRevision'],_0x15ccc4=_0x2757e3['id'],_0x2ff2f0=_0x15ccc4!==_0x583e28['sessionId'];if(_0x2ff2f0){const _0x1c98b7=_0x583e28['_offset']-this['_oldOffset'],_0x2dafab=this['_getLatestVersionFromServerOperations']();this['_revisionTracker']['_revisionDataBuilder']['reInit']();if(_0x2757e3['toVersion']+_0x1c98b7!==_0x2dafab){const _0xfd3d80=_0x2757e3['fromVersion']+_0x1c98b7,_0x21f5f3=this['editor']['plugins']['get'](_0x1b46b3),_0x50568f=this['_revisionTracker']['buildRevisionData']({'revision':_0x2757e3,'from':_0xfd3d80,'to':_0x2dafab});_0x50568f['id']=_0x2757e3['id'];const _0x5943ad=_0x50568f['authorsIds']['map'](_0x441471=>_0x21f5f3['getUser'](_0x441471));_0x2757e3['_update']({..._0x50568f,'authors':_0x5943ad},!0x0),this['_revisionTracker']['_bufferUpdate'](_0x2757e3['id'],_0x50568f,!0x0);}this['_revisionTracker']['_startingVersion']=_0x2dafab,(_0x2757e3['toVersion']===_0x2757e3['fromVersion']&&!this['_revisionTracker']['_bufferedUpdates']['has'](_0x15ccc4)&&this['_revisionTracker']['repository']['_revisions']['remove'](_0x15ccc4),this['_revisionTracker']['_createCurrentRevision'](_0x2dafab));}const {revisions:_0x678514,requestId:_0x2c1a22}=await this['_revisionHistoryService']['reconnect'](_0x43782a['connection'],this['_lastRequestId']);_0x2ff2f0&&_0x678514['length']>0x0?_0x583e28['_handleReconnectionError']():(await this['_fetchMissingUsers'](_0x678514),this['_handleRevisionsUpdate'](_0x678514,_0x2c1a22),this['_revisionTracker']['sendBufferedUpdates']());};return _0x583e28['_isConnected']?_0x41472d():new Promise((_0x58b5a7,_0x2cbde2)=>{_0x583e28['once']('change:_isConnected',()=>{_0x41472d()['then'](_0x58b5a7)['catch'](_0x2cbde2);});});}['destroy'](){super['destroy']();}async['_waitForServiceReady'](){this['_revisionHistoryService']['isConnected']||await new Promise(_0x36344a=>{this['listenTo'](this['_revisionHistoryService'],'connected',_0x9da17c=>{_0x9da17c['off'](),_0x36344a();});});}['_getLatestVersionFromServerOperations'](){const _0x380208=this['editor']['plugins']['get'](l)['serverHistory']['getOperations']()['reverse']();for(const _0x12be55 of _0x380208)if('marker'!==_0x12be55['type']||_0x12be55['affectsData'])return _0x12be55['baseVersion']+0x1;}['_getLatestVersion'](){const _0x239b7c=this['editor']['plugins']['get'](l);return new Promise(_0x5ff58a=>{_0x239b7c['_isPendingUpdate']?_0x239b7c['once']('change:_isPendingUpdate',()=>{_0x5ff58a(this['_getLatestVersionFromServerOperations']());}):_0x5ff58a(this['_getLatestVersionFromServerOperations']());});}['_handleRevisionsUpdate'](_0x421186,_0x2a2b8c){const _0x199b48=this['_revisionTracker']['repository'];this['_lastRequestId']=_0x2a2b8c;for(const _0x28da4a of _0x421186){const _0x591ce5=_0x199b48['getRevision'](_0x28da4a['id']);if(_0x591ce5){if((_0x28da4a['fromVersion']||_0x28da4a['toVersion'])&&(_0x28da4a['diffData']=null),_0x591ce5===this['_revisionTracker']['currentRevision']){const _0xacfdb=Math['max'](_0x591ce5['toVersion'],_0x28da4a['toVersion']),_0x36caa6=Math['max'](_0x591ce5['fromVersion'],_0x28da4a['fromVersion']);let _0x3caca6;_0x591ce5['toVersion']===_0x28da4a['toVersion']&&_0x591ce5['fromVersion']===_0x28da4a['fromVersion']?(_0x3caca6=!0x0,this['_preventResendingRevisionData'](_0x28da4a)):_0x28da4a['toVersion']===_0xacfdb&&_0x28da4a['fromVersion']===_0x36caa6?_0x3caca6=!0x1:(_0x591ce5['toVersion']===_0xacfdb&&_0x591ce5['fromVersion']===_0x36caa6||this['_fixRevision']({'revision':_0x591ce5,'from':_0x36caa6,'to':_0xacfdb}),_0x3caca6=!0x0),_0x3caca6&&(delete _0x28da4a['fromVersion'],delete _0x28da4a['toVersion'],delete _0x28da4a['diffData'],delete _0x28da4a['createdAt'],delete _0x28da4a['authorsIds']);}this['_revisionTracker']['setRevisionData'](_0x28da4a),this['_preventResendingRevisionData'](_0x28da4a);}else this['_revisionTracker']['addRevisionData'](_0x28da4a);}const _0x5738b6=_0x199b48['getRevisions']();_0x5738b6['reverse']();for(let _0x58b476=0x0;_0x58b476<_0x5738b6['length']-0x1;_0x58b476++){const _0x4c01e0=_0x5738b6[_0x58b476],_0x1ea52c=_0x5738b6[_0x58b476+0x1];if(_0x4c01e0['fromVersion']<_0x1ea52c['toVersion']){const _0x447ed6=_0x1ea52c['toVersion'],_0x4905eb=Math['max'](_0x447ed6,_0x4c01e0['toVersion']);this['_fixRevision']({'revision':_0x4c01e0,'from':_0x447ed6,'to':_0x4905eb});}}}['_fixRevision']({revision:_0x43d04d,from:_0x15141d,to:_0x172470}={}){const _0xbf79df=this['editor']['plugins']['get'](_0x1b46b3),_0x18a3ec=this['_revisionTracker']['buildRevisionData']({'revision':_0x43d04d,'from':_0x15141d,'to':_0x172470});_0x18a3ec['authors']=_0x18a3ec['authorsIds']['map'](_0x56b645=>_0xbf79df['getUser'](_0x56b645)),_0x43d04d['_update'](_0x18a3ec);}['_preventResendingRevisionData'](_0x1f7e4a){const _0x1a5384={};_0x1a5384['id']=_0x1f7e4a['id'];for(const _0x2ca46b of Object['keys'](_0x1f7e4a))'id'!==_0x2ca46b&&(_0x1a5384[_0x2ca46b]=void 0x0);this['_revisionTracker']['_bufferUpdate'](_0x1a5384['id'],_0x1a5384,!0x0);}async['_fetchMissingUsers'](_0x5bba1c){const _0x44281d=this['editor']['plugins']['get'](_0x1b46b3),{connection:_0x3cc6a7}=this['editor']['plugins']['get'](c),_0xcd795=new Set();for(const _0x3ba0aa of _0x5bba1c){for(const _0x2fc9aa of _0x3ba0aa['authorsIds'])_0x5440b9(_0x2fc9aa);_0x3ba0aa['creatorId']&&_0x5440b9(_0x3ba0aa['creatorId']);}if(0x0===_0xcd795['size'])return;const _0x57e197=await dt['getMany'](_0x3cc6a7,Array['from'](_0xcd795));for(const _0x4742cd of _0x57e197)_0x44281d['getUser'](_0x4742cd['id'])||_0x44281d['addUser'](_0x4742cd);function _0x5440b9(_0x47ac8b){_0x44281d['getUser'](_0x47ac8b)||_0xcd795['add'](_0x47ac8b);}}}function st(_0x4d33e2){return _0x4d33e2['message']['startsWith']('cloud-services-internal-error:\x20Revision\x20History\x20Service\x20is\x20not\x20connected.')||_0x4d33e2['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x4d33e2['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}class g extends _0x36ec84{static get['requires'](){return['RevisionHistory',u,n];}static get['pluginName'](){return'RealTimeCollaborativeRevisionHistory';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}class A extends _0x2331df{['_collapseAt'];constructor(_0x1eadae,_0x38f141=0x6){super(_0x1eadae);const _0x23486e=this['bindTemplate'];this['set']('isHidden',!0x0),this['set']('usersCount',0x0),this['_collapseAt']=_0x38f141,this['bind']('isHidden')['to'](this,'usersCount',_0x4e8835=>_0x4e8835<_0x38f141),this['setTemplate']({'tag':'div','attributes':{'class':['ck','ck-presence-list__list-item',_0x23486e['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':_0x23486e['to']('usersCount',_0x12a830=>'+'+(_0x12a830-this['_collapseAt']+0x2)['toString']())}]}]}]});}}class ts extends _0x2331df{['items'];['keystrokes'];constructor(_0xb0db52){super(_0xb0db52);const _0x477896=this['bindTemplate'];this['items']=this['createCollection'](),this['keystrokes']=new _0x223d85(),this['set']({'hasPopup':!0x1,'isExpanded':!0x1}),this['setTemplate']({'tag':'div','attributes':{'aria-haspopup':_0x477896['if']('hasPopup'),'aria-expanded':_0x477896['to']('isExpanded',_0x598b9d=>this['hasPopup']&&String(_0x598b9d)),'aria-label':_0x477896['to']('hasPopup',_0x3a8b11=>G(_0xb0db52,_0x3a8b11?'Collapsed\x20connected\x20users\x20list\x20(press\x20ENTER\x20to\x20open\x20it)':'Connected\x20users\x20list')),'role':'list','tabindex':_0x477896['to']('hasPopup',_0x1c4531=>!!_0x1c4531&&0x0),'class':['ck','ck-presence-list__list']},'children':this['items'],'on':{'mouseenter':_0x477896['to'](()=>this['fire']('presencelist:show')),'mouseleave':_0x477896['to'](_0x4a69b0=>{const _0x62ff4f=_0x4a69b0,_0x405c02=document['querySelector']('.ck-presence-list__dropdown-list'),_0x436b1c=document['querySelector']('.ck-balloon-panel_with-arrow');_0x405c02?.['contains'](_0x62ff4f['relatedTarget'])||_0x436b1c?.['contains'](_0x62ff4f['relatedTarget'])||this['fire']('presencelist:hide');})}}),this['on']('change:hasPopup',(_0x35379d,_0x1b8990,_0xec4971)=>{this['element']&&(_0xec4971?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 j extends _0x2331df{['counterView'];['inlineListView'];constructor(_0x351b26,_0x45b129=0x6){super(_0x351b26);const _0x1fbaed=this['bindTemplate'];this['set']('isCollapsed',!0x0),this['counterView']=new A(this['locale'],_0x45b129),this['inlineListView']=new ts(_0x351b26),this['inlineListView']['bind']('hasPopup')['to'](this,'isCollapsed'),this['listenTo'](this['inlineListView']['items'],'change',()=>{for(const _0x51d345 of this['inlineListView']['items'])_0x51d345['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',_0x1fbaed['if']('isCollapsed','ck-presence-list--collapsed')]},'children':[this['inlineListView']]});}}class x extends _0x2331df{['listWrapperView'];constructor(_0x2569d6,_0xd045e5){super(_0x2569d6);const _0x2522b6=this['bindTemplate'];this['listWrapperView']=new mt(_0x2569d6,_0xd045e5),this['setTemplate']({'tag':'div','attributes':{'tabindex':-0x1,'role':'application','class':['ck','ck-presence-list__dropdown-list'],'aria-label':G(_0x2569d6,'Connected\x20users\x20list\x20dropdown\x20menu')},'children':[this['listWrapperView']],'on':{'mouseleave':_0x2522b6['to'](_0x3d569c=>{const _0x15a187=_0x3d569c,_0x330138=document['querySelector']('.ck-presence-list__list'),_0x545797=document['querySelector']('.ck-balloon-panel_with-arrow');_0x330138?.['contains'](_0x15a187['relatedTarget'])||_0x545797?.['contains'](_0x15a187['relatedTarget'])||this['fire']('presencelist:hide');})}});}}class mt extends _0x1df070{constructor(_0x533e3d,_0x11a2f0){super(_0x533e3d);const _0x2467e2=this['bindTemplate'];this['set']('_isScrollable',!0x1),this['setTemplate']({'tag':_0x11a2f0?'div':'ul','attributes':{'class':['ck','ck-reset','ck-list','ck-presence-list__dropdown-list-wrapper',_0x2467e2['if']('_isScrollable','ck-presence-list__dropdown-list-wrapper_scrollable')],'role':_0x2467e2['to']('role'),'aria-label':_0x2467e2['to']('ariaLabel'),'aria-labelledby':_0x2467e2['to']('ariaLabelledBy')},'children':this['items']}),this['listenTo'](_0x40b117['window'],'resize',()=>this['checkIfScrollable']()),this['items']['on']('change',()=>this['checkIfScrollable']());}['render'](){super['render'](),this['checkIfScrollable']();}['checkIfScrollable'](){const _0x3cc98b=this['element'];_0x3cc98b&&(this['_isScrollable']=Math['max'](_0x3cc98b['scrollHeight'],_0x3cc98b['clientHeight'])>0.8*window['innerHeight']);}}class k extends rt{['userView'];constructor(_0x28fb57,_0x121154,_0x355e41){super(_0x28fb57);const _0x102a9c=this['bindTemplate'];this['userView']=new ct(_0x28fb57,_0x121154);const _0x39e9d3={'tag':'li','attributes':{'class':['ck','ck-presence-list__dropdown-list-item'],'tabindex':-0x1,'role':'presentation','aria-label':_0x121154['name']},'children':[this['userView'],{'tag':'span','attributes':{'class':['ck','ck-user__full-name']},'children':[{'text':_0x121154['name']}]},{'tag':'span','attributes':{'class':['ck','ck-presence-list__marker',_0x121154['color']['getBackgroundColorClass']()],'aria-hidden':'true'}}]};_0x355e41&&(_0x39e9d3['tag']='button',_0x39e9d3['on']={'click':_0x102a9c['to'](()=>this['fire']('execute'))}),this['setTemplate'](_0x39e9d3);}['focus'](){this['element']['focus']();}}class y extends _0x2331df{['userView'];['markerView'];constructor(_0x4abee2,_0x2c2889,_0x23ef94){super(_0x4abee2);const _0x448095=this['bindTemplate'];this['set']('isFocusable',!0x1),this['set']('hasTooltip',!0x0),this['set']('tooltipPosition',''),this['userView']=new ct(_0x4abee2,_0x2c2889),this['markerView']=new at(_0x4abee2,_0x2c2889);const _0x27c06d=new ot(_0x4abee2);_0x27c06d['template']['tag']='span',_0x27c06d['text']=_0x2c2889['name'];const _0x136619={'tag':'div','attributes':{'class':['ck','ck-presence-list__list-item'],'role':'listitem','tabindex':_0x448095['to']('isFocusable',_0x53ea09=>!!_0x53ea09&&0x0),'aria-labelledby':_0x27c06d['id'],'data-cke-tooltip-text':this['userView']['name'],'data-cke-tooltip-position':_0x448095['to']('tooltipPosition'),'data-cke-tooltip-disabled':_0x448095['to']('hasTooltip',_0x245380=>!_0x245380),'data-cke-tooltip-class':'ck-presence-list__list-item__tooltip'},'children':[this['userView'],this['markerView'],_0x27c06d]};_0x23ef94&&(_0x136619['tag']='button',_0x136619['on']={'click':_0x448095['to'](()=>this['fire']('execute'))}),this['setTemplate'](_0x136619);}}class at extends _0x2331df{constructor(_0x3720e7,_0x599bb4){super(_0x3720e7),this['setTemplate']({'tag':'span','attributes':{'class':['ck','ck-presence-list__marker',_0x599bb4['color']['getBackgroundColorClass']()],'aria-hidden':'true'}});}}const C={'collapseAt':0x6,'displayMe':!0x0};class r extends _0x39c302{['currentDisplayedUsers'];['balloonPanelView'];['view'];['presenceDropdownView'];['_bodyCollection']=null;static get['pluginName'](){return'PresenceListUI';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x26c166){super(_0x26c166),this['context']['config']['define']('presenceList',C);const _0x20fdcf=_0x26c166['config']['get']('presenceList.collapseAt');if('number'!=typeof _0x20fdcf)throw new _0x450af5('presencelist-collapseat-invalid-format',this);if(_0x20fdcf<0x1)throw new _0x450af5('presencelist-collapseat-invalid-format',this);this['_allConnectedUsers']=this['context']['plugins']['get'](i)['allConnectedUsers'],this['set']('usersCount',0x0),this['currentDisplayedUsers']=new _0x2886d5(),this['balloonPanelView']=new _0x19634d(),this['balloonPanelView']['class']='ck\x20ck-presence-list__balloon',this['view']=this['_createView'](),this['presenceDropdownView']=void 0x0;}static get['requires'](){return[i];}['init'](){for(const _0x57d785 of this['_allConnectedUsers'])this['_handleUserAdd'](_0x57d785);this['listenTo'](this['_allConnectedUsers'],'add',(_0x5e94bb,_0x184da1)=>{this['_handleUserAdd'](_0x184da1);}),this['listenTo'](this['_allConnectedUsers'],'remove',(_0x2693fc,_0x503862)=>{this['_handleUserRemove'](_0x503862);});}['_createView'](){const _0x5edd6a=this['context'],_0x153f20=new j(this['context']['locale'],this['context']['config']['get']('presenceList.collapseAt')),_0x388920=this['balloonPanelView'];if(!_0x4e63ad(_0x5edd6a['config']['get']('presenceList.container')))throw new _0x450af5('presencelist-missing-container',this);return _0x153f20['counterView']['bind']('usersCount')['to'](this),_0x153f20['bind']('isCollapsed')['to'](this,'usersCount',_0x28574d=>{const {collapseAt:_0x3bbed6}=_0x5edd6a['config']['get']('presenceList'),_0x57cf58=_0x28574d>=_0x3bbed6;if(_0x57cf58&&!_0x153f20['inlineListView']['items']['find'](_0x5ebdf9=>_0x5ebdf9 instanceof A)){const _0x2c1e2d=this['context']['config']['get']('presenceList.collapseAt')-0x1;this['currentDisplayedUsers']['length']==_0x2c1e2d&&this['currentDisplayedUsers']['length']>0x1&&this['currentDisplayedUsers']['remove'](this['currentDisplayedUsers']['length']-0x1),_0x153f20['inlineListView']['items']['add'](_0x153f20['counterView']);}return _0x57cf58||this['hideDropdown'](),_0x57cf58;}),_0x153f20['inlineListView']['items']['bindTo'](this['currentDisplayedUsers'])['using'](_0x2b9ddc=>{const _0xfe5947=_0x5edd6a['config']['get']('presenceList'),_0x4434ec=new y(_0x5edd6a['locale'],_0x2b9ddc,!!_0xfe5947['onClick']);return _0x4434ec['bind']('hasTooltip')['to'](_0x153f20,'isCollapsed',_0x3b6080=>!_0x3b6080),_0x4434ec['bind']('isFocusable')['to'](_0x153f20,'isCollapsed',_0x35a5d0=>!_0x35a5d0),_0xfe5947['onClick']&&this['listenTo'](_0x4434ec,'execute',()=>{this['view']['isCollapsed']||_0xfe5947['onClick'](_0x2b9ddc,_0x4434ec['element']);}),_0x4434ec;}),this['listenTo'](_0x153f20['inlineListView'],'presencelist:show',()=>{this['view']['isCollapsed']&&this['showDropdown']();}),this['listenTo'](_0x153f20['inlineListView'],'presencelist:hide',()=>{this['presenceDropdownView']&&this['hideDropdown']();}),_0x153f20['inlineListView']['keystrokes']['set']('Enter',(_0x3cbecf,_0x34fd73)=>{this['view']['isCollapsed']&&(this['showDropdown'](),_0x34fd73());}),_0x153f20['render'](),_0x388920['render'](),_0x1b96bb({'emitter':_0x153f20,'activator':()=>_0x388920['isVisible'],'contextElements':[_0x388920['element'],_0x153f20['inlineListView']['element']],'callback':()=>this['hideDropdown']()}),_0x5edd6a['config']['get']('presenceList.container')['appendChild'](_0x153f20['element']),this['_bodyCollection']=new _0x24c7b0(this['context']['locale']),this['_bodyCollection']['attachToDom'](),this['_bodyCollection']['add'](this['balloonPanelView']),_0x153f20;}['_handleUserAdd'](_0x3c2da6){if(!this['context']['config']['get']('presenceList.displayMe')&&_0x3c2da6['isMe'])return;const _0x12ce18=this['context']['config']['get']('presenceList.collapseAt')-0x1;for(this['usersCount']++;this['currentDisplayedUsers']['length']>=_0x12ce18-(this['view']['isCollapsed']?0x1:0x0)&&this['currentDisplayedUsers']['length']>0x1;)this['currentDisplayedUsers']['remove'](0x1);const _0x4e5563=_0x3c2da6['isMe']?0x0:this['currentDisplayedUsers']['length'];this['currentDisplayedUsers']['add'](_0x3c2da6,_0x4e5563);}['_handleUserRemove'](_0x18df80){this['usersCount']--;const {collapseAt:_0x2c95b8}=this['context']['config']['get']('presenceList'),_0x1f36cb=this['usersCount']>=_0x2c95b8;if(this['currentDisplayedUsers']['get'](_0x18df80['id']))this['currentDisplayedUsers']['remove'](_0x18df80['id']);else{if(_0x1f36cb&&this['currentDisplayedUsers']['length']+0x1===_0x2c95b8-0x1)return;}if(this['currentDisplayedUsers']['length']+(_0x1f36cb?0x1:0x0)<this['usersCount']){for(const _0x3d87e9 of Array['from'](this['_allConnectedUsers'])['reverse']())if(!this['currentDisplayedUsers']['get'](_0x3d87e9['id'])&&(this['currentDisplayedUsers']['add'](_0x3d87e9,Math['min'](this['currentDisplayedUsers']['length']-(_0x1f36cb?0x1:0x0),0x1)),this['currentDisplayedUsers']['length']+(_0x1f36cb?0x1:0x0)===_0x2c95b8-0x1))return;}}['showDropdown'](){if(this['presenceDropdownView'])return;const _0x5789cc=this['context']['config']['get']('presenceList');this['presenceDropdownView']=new x(this['context']['locale'],!!_0x5789cc['onClick']),this['view']['inlineListView']['isExpanded']=!0x0,this['listenTo'](this['presenceDropdownView'],'presencelist:hide',()=>{this['presenceDropdownView']&&this['hideDropdown']();});const {listWrapperView:_0x5ea7a2}=this['presenceDropdownView'];_0x5ea7a2['items']['bindTo'](this['_allConnectedUsers'])['using'](_0x474362=>{if(!_0x5789cc['displayMe']&&_0x474362['isMe'])return null;const _0x48c18a=new k(this['context']['locale'],_0x474362,!!_0x5789cc['onClick']);return _0x5789cc['onClick']&&this['listenTo'](_0x48c18a,'execute',()=>{_0x5789cc['onClick'](_0x474362,_0x48c18a['element']);}),_0x48c18a;}),this['balloonPanelView']['content']['add'](this['presenceDropdownView']),this['balloonPanelView']['pin']({'target':this['view']['inlineListView']['element']}),_0x5ea7a2['focus'](),_0x5ea7a2['checkIfScrollable']();const _0x383ae4=(_0x4fc46e,_0x3f369b)=>{this['hideDropdown'](),this['view']['inlineListView']['focus'](),_0x3f369b();};_0x5ea7a2['keystrokes']['set']('Esc',_0x383ae4),_0x5ea7a2['keystrokes']['set']('Shift+Tab',_0x383ae4),_0x5ea7a2['keystrokes']['set']('Tab',(_0x30f71f,_0x3fc251)=>{!function(_0x38a7e4){const _0x90a6eb=['a','button','input','select','textarea','[tabindex]','[contenteditable]']['map'](_0x1626c7=>_0x1626c7+':not([disabled]):not([tabindex=\x22-1\x22])')['join'](','),_0x2111f0=[...document['body']['querySelectorAll'](_0x90a6eb)]['filter'](_0x4f1503=>_0x4f1503===document['activeElement']||_0x4f1503['offsetWidth']+_0x4f1503['offsetHeight']>0x0)['sort']((_0x52d49d,_0x13276b)=>(_0x52d49d['tabIndex']||0x0)-(_0x13276b['tabIndex']||0x0)),_0x138c28=_0x2111f0['indexOf'](_0x38a7e4),_0x10fe68=_0x2111f0[(_0x138c28+0x1)%_0x2111f0['length']];_0x10fe68&&_0x10fe68['focus']();}(this['view']['element']),this['hideDropdown'](),_0x3fc251();}),_0x5ea7a2['focusTracker']['add'](this['view']['element']),_0x5ea7a2['focusTracker']['on']('change:isFocused',(_0x3b9bcc,_0x4000d9,_0x3840ec)=>{_0x3840ec||this['hideDropdown']();});}['hideDropdown'](){this['presenceDropdownView']&&(this['view']['inlineListView']['isExpanded']=!0x1,this['balloonPanelView']['unpin'](),this['balloonPanelView']['content']['remove'](this['presenceDropdownView']),this['presenceDropdownView']['destroy'](),this['presenceDropdownView']=void 0x0);}['destroy'](){super['destroy'](),this['view']&&this['view']['isRendered']&&this['view']['destroy'](),this['_bodyCollection']&&(this['_bodyCollection']['detachFromDom'](),this['_bodyCollection']['destroy'](),this['_bodyCollection']=null);}}class s extends _0x39c302{static get['requires'](){return[i,r];}static get['pluginName'](){return'PresenceList';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}export{a as CloudServicesCommentsAdapter,u as CloudServicesRevisionHistoryAdapter,f as CloudServicesTrackChangesAdapter,s as PresenceList,r as PresenceListUI,l as RealTimeCollaborationClient,m as RealTimeCollaborativeComments,n as RealTimeCollaborativeEditing,g as RealTimeCollaborativeRevisionHistory,p as RealTimeCollaborativeTrackChanges,i as Sessions};
23
+ import{ContextPlugin as _0x5608fb,Plugin as _0x46e1aa,PendingActions as _0x1bc531,Context as tt}from'@ckeditor/ckeditor5-core/dist/index.js';import{DomEmitterMixin as _0x412fe3,CKEditorError as _0x26a8d4,Collection as _0x19740c,global as _0x4aa1a9,version as ht,uid as _0x4fd132,KeystrokeHandler as _0x289bea}from'@ckeditor/ckeditor5-utils/dist/index.js';import{Notification as _0xc35461,View as _0x52ca26,ListView as _0x5c2b3f,ListItemView as lt,LabelView as pt,BalloonPanelView as _0x5b0ca7,clickOutsideHandler as _0x4155b7,BodyCollection as _0x5583ac}from'@ckeditor/ckeditor5-ui/dist/index.js';import{LiveRange as ft,History as _0x6e5002,NoOperation as _0x1727e1,InsertOperation as _0x56a10f,MarkerOperation as _0x22c45c,RootAttributeOperation as _0x8dd679,transformSets as _0x4779c9,OperationFactory as _0x44316c}from'@ckeditor/ckeditor5-engine/dist/index.js';import{WebSocketGateway as mt,WEB_SOCKET_GATEWAY_STATES as _0x3b67d1,CollaborativeEditingService as _0xea07ee,User as gt,CommentsService as et,TrackChangesService as at,RevisionHistoryService as rt,EditorService as it}from'@ckeditor/ckeditor-cloud-services-collaboration/dist/index.js';import{Users as _0x5f01ed,UserView as ut}from'ckeditor5-collaboration/dist/index.js';import{Compressor as _0xe1342b}from'@ckeditor/ckeditor5-operations-compressor/dist/index.js';import{isElement as _0x107f30}from'es-toolkit/compat';class c extends _0x5608fb{static ['WebSocketGateway']=/* #__PURE__ -- @preserve */
24
+ ((()=>mt)());static ['initialReconnectionInterval']=0x3e8;['connection'];['_reconnectionStack'];['_shouldPluginsReconnect'];['_domEmitter'];static get['requires'](){return['CloudServices',_0xc35461];}static get['pluginName'](){return'WebSocketGateway';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x35ed03){super(_0x35ed03),this['set']('state',_0x3b67d1['CONNECTED']),this['set']('_isBrowserOffline',!0x1),this['_reconnectionStack']=new Set(),this['_shouldPluginsReconnect']=!0x1,this['_domEmitter']=Object['create'](_0x412fe3);}['init'](){const _0x108cf6=this['context'],_0x3254aa=_0x108cf6['plugins']['get']('CloudServices'),_0x11ecfd=_0x108cf6['plugins']['get'](_0xc35461);if(!_0x3254aa['token'])throw new _0x26a8d4('websocketgateway-missing-token',this);if(!_0x3254aa['webSocketUrl'])throw new _0x26a8d4('websocketgateway-missing-websocket-url',this);return this['_domEmitter']['listenTo'](window,'offline',()=>this['_isBrowserOffline']=!0x0),this['_domEmitter']['listenTo'](window,'online',()=>this['_isBrowserOffline']=!0x1),this['context']['config']['define']('cloudServices.connectionTimeout',0xa),this['context']['config']['define']('cloudServices.requestTimeout',0x14),c['WebSocketGateway']['connect'](_0x3254aa['token'],_0x3254aa['webSocketUrl'],{'timeout':0x3e8*this['context']['config']['get']('cloudServices.connectionTimeout'),'requestTimeout':0x3e8*this['context']['config']['get']('cloudServices.requestTimeout')})['then'](_0x57acc6=>{if(this['connection']=_0x57acc6,this['bind']('state')['to'](_0x57acc6,'state',this,'_isBrowserOffline',(_0x2c3ee4,_0x18eaf1)=>('connected'!==_0x2c3ee4&&(this['_shouldPluginsReconnect']=!0x0),_0x18eaf1||_0x2c3ee4!==_0x3b67d1['CONNECTED']?_0x3b67d1['DISCONNECTED']:this['state']==_0x3b67d1['DISCONNECTED']&&this['_shouldPluginsReconnect']?(this['_shouldPluginsReconnect']=!0x1,this['_reconnect'](),_0x3b67d1['CONNECTING']):_0x3b67d1['CONNECTED'])),this['connection']['on']('error',(_0x269c85,_0x2f0081)=>{if('limitExceeded'!==_0x2f0081['code'])throw console['error'](_0x2f0081),new _0x26a8d4('cloudservices-init',null,{'originalError':_0x2f0081});_0x11ecfd['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'});}),!_0x57acc6['me'])return new Promise(_0x402ebe=>_0x57acc6['on']('change:me',_0x402ebe));})['catch'](_0x8cb6e4=>{throw console['error'](_0x8cb6e4),new _0x26a8d4('cloudservices-init',null,{'originalError':_0x8cb6e4});});}['addToReconnectionStack'](_0x1d58b7){if('function'!=typeof _0x1d58b7['reconnect'])throw new _0x26a8d4('websocketgateway-invalid-plugin-interface',this);if(this['isInReconnectionStack'](_0x1d58b7))throw new _0x26a8d4('websocketgateway-plugin-already-registered',this,{'name':_0x1d58b7['constructor']['pluginName']});this['_reconnectionStack']['add'](_0x1d58b7);}['removeFromReconnectionStack'](_0x36c873){this['_reconnectionStack']['delete'](_0x36c873);}['isInReconnectionStack'](_0xde5862){return this['_reconnectionStack']['has'](_0xde5862);}['_reconnect'](){return this['connection']['reconnect']()['then'](()=>Promise['all'](Array['from'](this['_reconnectionStack'],_0x4134f4=>_0x4134f4['reconnect']())))['then'](()=>this['state']=_0x3b67d1['CONNECTED'])['catch'](_0x114c38=>{throw console['error'](_0x114c38),new _0x26a8d4('cloudservices-reconnection-error',this['context']);});}['disconnect'](){this['connection']&&this['connection']['disconnect'](),this['state']=_0x3b67d1['DISCONNECTED'],this['_domEmitter']['stopListening']();}['destroy'](){this['disconnect'](),super['destroy']();}}class i extends _0x5608fb{['channelSessions'];['channelConnectedUsers'];['allConnectedUsers'];['_registeredSessions'];['_uniqueUsersCount'];['_users'];static get['pluginName'](){return'Sessions';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}static get['requires'](){return[c,_0x5f01ed];}constructor(_0x436626){super(_0x436626),this['channelSessions']=new Map(),this['channelConnectedUsers']=new Map(),this['allConnectedUsers']=new _0x19740c(),this['_registeredSessions']=new Map(),this['_uniqueUsersCount']=0x0,this['_users']=this['context']['plugins']['get'](_0x5f01ed);}['init'](){const _0x4a8758=this['context']['plugins']['get'](c);this['listenTo'](_0x4a8758,'change:state',(_0x741293,_0x55485d,_0x4c9d35)=>{if('connected'!==_0x4c9d35)this['channelSessions']['forEach'](_0x1d3c6c=>_0x1d3c6c['clear']()),this['channelConnectedUsers']['forEach'](_0xf30dbe=>_0xf30dbe['clear']()),this['allConnectedUsers']['clear']();else{for(const [_0x1ef3fb,_0x44146c]of this['_registeredSessions'])for(const _0x5574fc of _0x44146c)this['_handleSessionAdd'](_0x1ef3fb,_0x5574fc);}}),this['_createUser'](_0x4a8758['connection']['me'],!0x0);}['register'](_0x1402d5,_0x51c409){if(this['_registeredSessions']['has'](_0x1402d5))throw new _0x26a8d4('sessions-register-already-registered',null,{'channelId':_0x1402d5});this['_registeredSessions']['set'](_0x1402d5,_0x51c409),this['channelSessions']['set'](_0x1402d5,new _0x19740c()),this['channelConnectedUsers']['set'](_0x1402d5,new _0x19740c()),this['listenTo'](_0x51c409,'add',(_0x49a9f4,_0x2bc95a)=>this['_handleSessionAdd'](_0x1402d5,_0x2bc95a)),this['listenTo'](_0x51c409,'remove',(_0x535b02,_0xa6e05d)=>this['_handleSessionRemove'](_0x1402d5,_0xa6e05d));for(const _0x4bde16 of _0x51c409)this['_handleSessionAdd'](_0x1402d5,_0x4bde16);}['unregister'](_0x43c7a1){if(!this['_registeredSessions']['has'](_0x43c7a1))throw new _0x26a8d4('sessions-unregister-not-exist',null,{'channelId':_0x43c7a1});const _0x48dade=this['_registeredSessions']['get'](_0x43c7a1);this['stopListening'](_0x48dade);for(const _0x179d97 of _0x48dade)'connected'===this['context']['plugins']['get'](c)['state']&&this['_handleSessionRemove'](_0x43c7a1,_0x179d97);this['_registeredSessions']['delete'](_0x43c7a1),this['channelSessions']['delete'](_0x43c7a1),this['channelConnectedUsers']['delete'](_0x43c7a1);}get['mySessionId'](){return this['context']['plugins']['get'](c)['connection']['sessionId'];}['getUserBySessionId'](_0x3b63b9){for(const _0x507d07 of this['channelSessions']['values']())for(const _0x404b84 of _0x507d07)if(_0x404b84['id']===_0x3b63b9)return _0x404b84['user'];}['getUserSessions'](_0x1658f7,_0x545e2e){const _0x512a6a=_0x545e2e?[this['channelSessions']['get'](_0x545e2e)]:this['channelSessions']['values'](),_0x2348b7=new Set();for(const _0x265001 of _0x512a6a)for(const _0x2de893 of _0x265001)_0x2de893['user']['id']===_0x1658f7['id']&&_0x2348b7['add'](_0x2de893['id']);return _0x2348b7;}['getUserRole'](_0x5c8b10){for(const _0x598368 of this['channelSessions']['values']())for(const _0x1e3715 of _0x598368)if(_0x1e3715['user']===_0x5c8b10)return _0x1e3715['role'];}['_handleSessionAdd'](_0x9005bf,_0x50b442){if('connected'!==this['context']['plugins']['get'](c)['state'])return;const _0x252f9e=_0x50b442['user'],_0x3cffda=this['_users']['getUser'](_0x252f9e['id'])||this['_createUser'](_0x252f9e),_0x4af34a=Object['assign']({},_0x50b442,{'user':_0x3cffda});this['channelSessions']['get'](_0x9005bf)['add'](_0x4af34a);const _0x25602f=this['channelConnectedUsers']['get'](_0x9005bf);_0x25602f['has'](_0x3cffda['id'])||_0x25602f['add'](_0x3cffda),this['allConnectedUsers']['has'](_0x3cffda['id'])||this['allConnectedUsers']['add'](_0x3cffda,_0x3cffda['isMe']?0x0:void 0x0),this['fire']('sessionAdd:'+_0x9005bf,{'channelId':_0x9005bf,'session':_0x4af34a});}['_handleSessionRemove'](_0x4e5602,_0x4b5dd1){if('connected'!==this['context']['plugins']['get'](c)['state'])return;const _0x3d19bd=this['channelConnectedUsers']['get'](_0x4e5602),_0x18e169=_0x4b5dd1['user'];_0x18e169['id']&&(this['channelSessions']['get'](_0x4e5602)['remove'](_0x4b5dd1['id']),_0x3d19bd['has'](_0x18e169['id'])&&!this['getUserSessions'](_0x18e169,_0x4e5602)['size']&&_0x3d19bd['remove'](_0x18e169['id']),this['allConnectedUsers']['get'](_0x18e169['id'])&&!this['getUserSessions'](_0x18e169)['size']&&this['allConnectedUsers']['remove'](_0x18e169['id']));}['_createUser'](_0x1b6070,_0x4f58a6){const _0x2842f4=this['_users']['addUser'](_0x1b6070);return _0x4f58a6&&this['_users']['defineMe'](_0x1b6070['id']),_0x2842f4['orderNumber']=this['_uniqueUsersCount']++,_0x2842f4;}}class B extends _0x46e1aa{['_domEmitter']=new(_0x412fe3())();static get['requires'](){return[i];}static get['pluginName'](){return'UserMarkers';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['init'](){const _0xfe8c51=this['editor'],_0x3316ed=_0xfe8c51['plugins']['get'](i);_0xfe8c51['conversion']['for']('editingDowncast')['markerToElement']({'model':'user:position','view':(_0x26e653,{writer:_0x268ff5})=>function(_0x8ebd2f,_0x415bb9,_0x596145,_0x16512a){const _0x19b932=_0x8ebd2f['markerName']['split'](':')[0x2],_0x26cd3c=_0x596145['getUserBySessionId'](_0x19b932);if(!_0x26cd3c||_0x19b932===_0x596145['mySessionId'])return;if(!_0x16512a['model']['schema']['checkChild'](_0x8ebd2f['markerRange']['start'],'$text'))return;const _0x13b8f3={'class':'ck-user__marker\x20'+_0x26cd3c['color']['getMarkerClass'](),'data-name':_0x26cd3c['name'],'data-session-id':_0x19b932},_0x5c1a49=_0x16512a['model']['markers']['get'](_0x8ebd2f['markerName']),_0x31ff76=_0x5c1a49['getStart'](),_0x21877c=_0x31ff76['nodeAfter'],_0x2348ee=_0x16512a['model']['schema'];if(_0x21877c&&_0x2348ee['isObject'](_0x21877c)&&_0x2348ee['isInline'](_0x21877c)&&!_0x16512a['model']['markers']['get']('user:range:'+_0x19b932)['getRange']()['isCollapsed'])return;const _0x194291=_0x31ff76['parent'];return _0x16512a['model']['schema']['isLimit'](_0x194291)&&!_0x16512a['model']['hasContent'](_0x194291)&&(_0x13b8f3['contenteditable']=!0x1),function(_0x280a46,_0x1e76f5,_0x122057){const _0x1424f4=_0x280a46['createUIElement']('span',_0x1e76f5);return _0x280a46['setCustomProperty']('userPositionMarker',!0x0,_0x1424f4),_0x1424f4['render']=function(_0x3fa57d){const _0x120d17=this['toDomElement'](_0x3fa57d),_0x185bb5=document['createElement']('span');return _0x185bb5['classList']['add']('ck-user__marker-tooltip'),_0x185bb5['setAttribute']('contenteditable','false'),_0x185bb5['setAttribute']('spellcheck','false'),_0x185bb5['textContent']=_0x122057['name'],_0x120d17['innerHTML']='⁠<span\x20class=\x22ck-user__marker-line\x22\x20contenteditable=\x22false\x22><span\x20class=\x22ck-user__marker-dot\x22></span></span>'+_0x185bb5['outerHTML']+'⁠',_0x120d17['addEventListener']('mouseenter',()=>{_0x120d17['classList']['add']('ck-user__marker_hovered');}),_0x120d17['addEventListener']('mouseleave',()=>{_0x120d17['classList']['remove']('ck-user__marker_hovered');}),_0x120d17;},_0x1424f4['isSimilar']=function(_0x4aed76){return!(!this['getCustomProperty']('userPositionMarker')||!_0x4aed76['getCustomProperty']('userPositionMarker')||this['getAttribute']('data-session-id')!=_0x4aed76['getAttribute']('data-session-id'));},_0x1424f4;}(_0x415bb9,_0x13b8f3,_0x26cd3c);}(_0x26e653,_0x268ff5,_0x3316ed,_0xfe8c51)}),_0xfe8c51['conversion']['for']('editingDowncast')['markerToHighlight']({'model':'user:range','view':_0x3776fd=>function(_0x3d36f6,_0x2347ac){const _0x488d2b=_0x3d36f6['markerName']['split'](':')[0x2];if(_0x488d2b===_0x2347ac['mySessionId'])return null;const _0x5466c8=_0x2347ac['getUserBySessionId'](_0x488d2b);if(!_0x5466c8)return{'id':_0x488d2b,'classes':[]};return{'id':_0x488d2b,'classes':['ck-user__selection',_0x5466c8['color']['getSelectionClass']()],'attributes':{'data-session-id':_0x488d2b},'priority':0x7d0+_0x5466c8['orderNumber']};}(_0x3776fd,_0x3316ed)}),function(_0x3854c){const _0x31a470=_0x3854c['model'],_0x27b360=new Map(),_0xae4a19=_0x3854c['plugins']['get'](i);_0x31a470['markers']['on']('update:user:range',(_0x23a543,_0x13b15e,_0x5e6309,_0x1e54c9)=>{if(!_0x1e54c9&&_0x27b360['get'](_0x13b15e['name']))return _0x27b360['get'](_0x13b15e['name'])['detach'](),void _0x27b360['delete'](_0x13b15e['name']);const _0x41a668=_0x13b15e['name']['split'](':')[0x2];if(_0x41a668===_0xae4a19['mySessionId'])return;const _0x390cad='user:position:'+_0x41a668;_0x31a470['markers']['has'](_0x390cad)&&_0x3854c['editing']['reconvertMarker'](_0x390cad),_0x13b15e['on']('change:range',(_0x133083,_0x47bef9,_0x53b824)=>{if('$graveyard'!=_0x47bef9['root']['rootName']&&'$graveyard'==_0x13b15e['getRange']()['root']['rootName']&&!_0x27b360['has'](_0x13b15e['name'])){const _0x5ef387=_0x31a470['schema']['getNearestSelectionRange'](_0x53b824['deletionPosition']);if(_0x5ef387){const _0x5c0eb1=ft['fromRange'](_0x5ef387);_0x27b360['set'](_0x13b15e['name'],_0x5c0eb1),_0x5c0eb1['on']('change:range',(_0x15210a,_0x46ea84,_0x5db874)=>{if('$graveyard'==_0x5c0eb1['root']['rootName']){const _0x2d642a=_0x31a470['schema']['getNearestSelectionRange'](_0x5db874['deletionPosition']);_0x2d642a?(_0x5c0eb1['start']=_0x2d642a['start'],_0x5c0eb1['end']=_0x2d642a['end']):(_0x27b360['delete'](_0x13b15e['name']),_0x5c0eb1['detach']());}});}}});}),_0x31a470['document']['on']('change',()=>{_0x27b360['size']>0x0&&_0x31a470['enqueueChange']({'isUndoable':!0x1},_0xa45e1e=>{for(const [_0x2f22d6,_0x5473ff]of _0x27b360)'$graveyard'==_0x31a470['markers']['get'](_0x2f22d6)['getRange']()['root']['rootName']&&(X(_0x2f22d6['split'](':')[0x2],_0x5473ff['toRange'](),_0x31a470,_0xa45e1e),_0x5473ff['detach']());_0x27b360['clear']();});});}(_0xfe8c51),this['_domEmitter']['listenTo'](_0x4aa1a9['document'],'keydown',(_0x40c5af,{key:_0x248aec})=>{'Escape'===_0x248aec&&function(_0x29214c){_0x29214c['editing']['view']['change'](_0x5b1e57=>{for(const _0x11bd36 of _0x29214c['model']['markers']){if(!_0x11bd36['name']['startsWith']('user:position'))continue;const _0x1f46c2=_0x29214c['editing']['mapper']['markerNameToElements'](_0x11bd36['name']);if(_0x1f46c2){for(const _0x5c9acc of _0x1f46c2)_0x5b1e57['removeClass']('ck-user__marker_hovered',_0x5c9acc);}}});}(_0xfe8c51);},{'useCapture':!0x0});}['afterInit'](){const _0x19a14f=this['editor'],_0x4502f7=_0x19a14f['commands']['get']('undo');_0x4502f7&&_0x19a14f['model']['on']('applyOperation',(_0x351113,_0x3e72e7)=>{const _0x95b7b6=_0x3e72e7[0x0];if(!_0x95b7b6['isDocumentOperation'])return;if('marker'!=_0x95b7b6['type']||!_0x95b7b6['name']['startsWith']('user:'))return;const _0x300e26=_0x95b7b6['batch'];_0x4502f7['_createdBatches']['has'](_0x300e26)&&(_0x95b7b6['newRange']=_0x95b7b6['oldRange']?_0x19a14f['model']['createRange'](_0x95b7b6['oldRange']['start'],_0x95b7b6['oldRange']['end']):null);},{'priority':'highest'});}['destroy'](){return this['_domEmitter']['stopListening'](),super['destroy']();}['createUserMarkerOperations'](){const _0x596de=this['editor'],_0x5a1dd9=_0x596de['model']['document'],_0x5bbb55=_0x596de['plugins']['get'](i);_0x596de['model']['enqueueChange']({'isUndoable':!0x1},_0x911509=>{const _0x427cc0='user:range:'+_0x5bbb55['mySessionId'],_0x215a66='user:position:'+_0x5bbb55['mySessionId'],_0x306f9d=_0x596de['model']['markers']['has'](_0x427cc0);_0x596de['editing']['view']['hasDomSelection']?X(_0x5bbb55['mySessionId'],_0x5a1dd9['selection']['getFirstRange'](),_0x596de['model'],_0x911509):_0x306f9d&&(_0x911509['removeMarker'](_0x427cc0),_0x911509['removeMarker'](_0x215a66));});}}function X(_0x2c1304,_0x3e2e79,_0x595ccb,_0x2914ab){const _0x2b78d3='user:range:'+_0x2c1304,_0x1dd3f7='user:position:'+_0x2c1304,_0x7eefc1=_0x3e2e79['getContainedElement']();let _0x3a0db1=_0x3e2e79['start'];_0x7eefc1&&_0x7eefc1['is']('element','tableCell')&&(_0x3a0db1=function(_0x28f6e2,_0x5062ef){for(const _0x59e103 of _0x28f6e2['getPositions']())if(_0x5062ef['schema']['checkChild'](_0x59e103,'$text'))return _0x59e103;}(_0x3e2e79,_0x595ccb),_0x3e2e79=_0x2914ab['createRange'](_0x3a0db1));const _0x3665b0=_0x2914ab['createRange'](_0x3a0db1);_0x595ccb['markers']['has'](_0x2b78d3)?(_0x2914ab['updateMarker'](_0x2b78d3,{'range':_0x3e2e79}),_0x2914ab['updateMarker'](_0x1dd3f7,{'range':_0x3665b0})):(_0x2914ab['addMarker'](_0x2b78d3,{'range':_0x3e2e79,'usingOperation':!0x0}),_0x2914ab['addMarker'](_0x1dd3f7,{'range':_0x3665b0,'usingOperation':!0x0}));}function M(_0x15246b,_0x267446,_0x3b650e){const _0x149b75=_0x15246b['t'],t=_0x15246b['t'];switch(_0x267446){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 _0x149b75({'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'},_0x3b650e);default:return'';}}let F=0x1;class l extends _0x46e1aa{static ['CollaborativeEditingService']=/* #__PURE__ -- @preserve */
25
+ ((()=>_0xea07ee)());['_offset'];['sessionId'];['serverHistory'];['_channelId'];['_service'];['_document'];['_compressor'];['_bufferedOperations'];['_knownOperations'];['_knownRootNames'];['_pendingAction'];['_hasSelectionChanged'];['_sendBufferedOperationsDelayId'];['_baseBufferDelay'];['_currentBufferDelay'];['_lastSyncedOperationId'];['_disconnectionOperations'];['_operationIdentifier'];static get['requires'](){return[c,i,B,_0x1bc531,_0x5f01ed,_0xc35461];}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 _0x1152a4=this['serverHistory']['getOperations']();for(let _0x1964d6=_0x1152a4['length']-0x1;_0x1964d6>=0x0;_0x1964d6--){const _0x5835a1=_0x1152a4[_0x1964d6];if(!this['_disconnectionOperations']['has'](_0x5835a1))return _0x5835a1['baseVersion']+0x1-this['_offset'];}return 0x0;}constructor(_0x8fc891){if(super(_0x8fc891),this['_offset']=0x0,this['sessionId']=null,this['serverHistory']=new _0x6e5002(),this['editor']['config']['define']('collaboration',{}),this['_channelId']=this['editor']['config']['get']('collaboration.channelId'),!this['_channelId'])throw new _0x26a8d4('collaboration-missing-channelid',this);const _0x3e26e0=_0x8fc891['config']['get']('cloudServices.bundleVersion')||ht;this['_service']=new l['CollaborativeEditingService'](_0x3e26e0,this['_channelId']),this['_document']=this['editor']['model']['document'],this['_compressor']=new _0xe1342b(),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 $(this['_disconnectionOperations']);}['init'](){const _0x316181=this['editor'],_0x43a26e=_0x316181['plugins']['get'](_0x5f01ed),_0x1612ea=_0x316181['plugins']['get'](c);this['listenTo'](_0x43a26e,'getOperationAuthor',(_0x3a1bb0,_0x125ec2)=>{const _0x1b2d4f=_0x125ec2[0x0];_0x1b2d4f['_authorId']&&(_0x3a1bb0['return']=_0x43a26e['getUser'](_0x1b2d4f['_authorId']),_0x3a1bb0['stop']()),null===_0x1b2d4f['_authorId']&&(_0x3a1bb0['return']=null,_0x3a1bb0['stop']());},{'priority':'high'}),this['listenTo'](_0x316181['model']['document']['selection'],'change:range',(_0x5114f4,_0x92e1bf)=>{_0x92e1bf['directChange']&&this['_refreshUserSelectionMarkers']();}),this['listenTo'](_0x316181['editing']['view'],'change:hasDomSelection',()=>{this['_refreshUserSelectionMarkers']();}),this['_initThrowingOnDataSet'](),_0x316181['model']['on']('applyOperation',(_0x5e1f35,_0x3009fb)=>{const _0x4f70f9=_0x3009fb[0x0];_0x4f70f9['isDocumentOperation']&&(this['_saveOperationInBuffer'](_0x4f70f9),this['_shouldSendUpdate']()&&this['_sendBufferedOperationsDelayed']());}),this['_setUpDataInit'](),this['bind']('_isEditingAllowed')['to'](_0x1612ea,'state',this,'_hasSynchronizationProblem',(_0x525aa6,_0x1ac83d)=>'connected'===_0x525aa6&&!_0x1ac83d),this['on']('change:_isEditingAllowed',()=>{this['_isEditingAllowed']?_0x316181['disableReadOnlyMode']('rtc-offline'):_0x316181['enableReadOnlyMode']('rtc-offline');}),this['_isEditingAllowed']?_0x316181['disableReadOnlyMode']('rtc-offline'):_0x316181['enableReadOnlyMode']('rtc-offline'),this['set']('_isConnected',!0x1);}async['reconnect'](){const _0x6ee826=this['editor']['plugins']['get'](i),_0x62dd75=this['editor']['plugins']['get'](c);try{this['_isPendingUpdate']=!0x0,_0x6ee826['unregister'](this['_channelId']);const _0x19a3df=await this['_service']['reconnect'](_0x62dd75['connection'],this['lastSyncVersion']);await this['_handleReconnectionResponse'](_0x19a3df)&&(this['_isPendingUpdate']=!0x1,this['_clearPendingAction']());const _0x2d1303=await this['_service']['getConnectedSessions']();_0x6ee826['register'](this['_channelId'],_0x2d1303),this['_handleSendingSelectionMarkers'](),this['_isConnected']=!0x0;}catch(_0x128986){if(function(_0x5a9b2f){return'404'===_0x5a9b2f['code'];}(_0x128986)&&this['sessionId'])await this['_connectAfterSessionHasBeenFlushed']();else{if(function(_0x3e69e5){return'409'===_0x3e69e5['code'];}(_0x128986)){const _0x26dd9e=M(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'](_0x26dd9e);}else{if(!(_0x128986 instanceof q))throw _0x128986;this['_handleReconnectionError']();}}}}['destroy'](){const _0x1438d9=this['editor']['plugins']['get'](c),_0x58b522=this['editor']['plugins']['get'](i);this['editor']['enableReadOnlyMode']('rtc-destroyed'),_0x58b522['channelSessions']['has'](this['_channelId'])&&_0x58b522['unregister'](this['_channelId']),_0x1438d9['removeFromReconnectionStack'](this),this['_disconnectService'](),super['destroy']();}async['_handleReconnectionResponse'](_0x5514f7){if(this['sessionId']!==_0x5514f7['sessionId']&&this['_lastSyncedOperationId']!==_0x5514f7['lastOperationId'])throw new q();return this['sessionId']=_0x5514f7['sessionId'],this['_handleServerResponse']([],{..._0x5514f7,'wereChangesApplied':!0x1,'data':_0x5514f7['data']},'reconnect');}async['_connectService'](_0x5dfab6,_0x39a19e=!0x1){const {connection:_0x3931f5}=this['editor']['plugins']['get'](c);l['CollaborativeEditingService']['getConnectedSessions'](_0x3931f5,this['_channelId'])['then'](_0x5e0220=>this['_initSessionsHandling'](_0x5e0220))['catch'](_0x44f5df=>{this['_crash']('realtimecollaborationclient-init-session-connection-error',_0x44f5df);}),this['listenTo'](this['_service'],'operationsReceived',this['_handleReceivedOperations']['bind'](this)),this['listenTo'](this['_service'],'error',(_0x1222ce,_0x167a00)=>{this['_crash']('realtimecollaborationclient-init-service-internal-error',_0x167a00);}),this['listenTo'](this['_service'],'disconnected',()=>{this['_isConnected']=!0x1;});const _0x43f9ef=this['_operationIdentifier']['getIdOfTheLastOperation'](_0x5dfab6);this['_isPendingUpdate']=!0x0;const _0x387e4f=await this['_service']['connect'](_0x3931f5,this['_compressOperations'](_0x5dfab6),_0x43f9ef);if(this['sessionId']=_0x387e4f['sessionId'],_0x39a19e){if(!_0x387e4f['wereChangesApplied'])return void this['_handleReconnectionError']();this['_isPendingUpdate']=!0x1,this['_clearPendingAction'](),this['serverHistory']['reset'](),this['_offset']=_0x387e4f['offset'],this['serverHistory']['version']=this['_offset'],await this['_handleServerResponse'](_0x5dfab6,_0x387e4f,'reconnection:\x20flushed\x20session');}else await this['_handleInitialConnectionData'](_0x387e4f,_0x5dfab6);this['_handleSendingSelectionMarkers'](),this['_isConnected']=!0x0;}['_handleSendingSelectionMarkers'](){const _0x1749bf=this['editor']['plugins']['get'](i),_0x107f84=this['editor']['plugins']['get'](B),_0x273f71=_0x1749bf['channelSessions']['get'](this['_channelId']);_0x273f71&&_0x273f71['length']>0x1?_0x107f84['createUserMarkerOperations']():this['listenTo'](_0x1749bf,'sessionAdd:'+this['_channelId'],()=>{0x2===_0x1749bf['channelSessions']['get'](this['_channelId'])['length']&&_0x107f84['createUserMarkerOperations']();});}async['_handleReceivedOperations'](_0x3a0c72,_0x7b65d7,_0x8598d0,_0x115338){if(!this['_isPendingUpdate']&&this['_document']['version']==_0x7b65d7){const _0xd5405a=this['_decompressOperations'](_0x8598d0,_0x115338);await this['_fetchMissingUsers'](_0xd5405a),this['_handleExternalOperations'](_0xd5405a,_0x7b65d7,_0x8598d0['lastOperationId'])||this['_crash']('realtimecollaborationclient-init-service-incorrect-server-operation');}}async['_connectAfterSessionHasBeenFlushed'](){this['_disconnectService']();const {locale:_0x3f82cd}=this['editor'];let _0x4de292;try{_0x4de292=await this['_service']['getDocumentDetails']();}catch(_0x57db8d){const _0x28c5ea=M(_0x3f82cd,'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'](_0x28c5ea);}const _0x1f922b=_0x4de292['currentDocumentSession']||_0x4de292['lastDocumentSession'];if(this['_lastSyncedOperationId']===_0x1f922b['lastOperationId'])await this['_connectService'](this['editor']['model']['document']['history']['getOperations'](),!0x0);else{const _0xc5ee64=M(_0x3f82cd,'The\x20last\x20saved\x20version\x20of\x20the\x20document\x20does\x20not\x20match\x20the\x20local\x20version.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.');this['_handleReconnectionError'](_0xc5ee64);}}['_disconnectService'](){this['_service']['disconnect'](),this['_bufferedOperations']=[],clearTimeout(this['_sendBufferedOperationsDelayId']),this['stopListening'](this['_service']);}['_initSessionsHandling'](_0x2d9e40){const _0x1cf05a=this['editor']['plugins']['get'](i);this['listenTo'](_0x1cf05a,'sessionAdd:'+this['_channelId'],(_0x496cfe,{session:_0x611ac4})=>{if(_0x611ac4['id']===_0x1cf05a['mySessionId']){_0x496cfe['off']();const _0x2ac761=this['editor']['plugins']['has']('CommentsOnly')&&this['editor']['plugins']['get']('CommentsOnly');let _0x13c101=_0x611ac4['permissions'];_0x2ac761&&_0x2ac761['isEnabled']&&(_0x13c101=_0x13c101['filter'](_0x1eb4e0=>'document:write'!==_0x1eb4e0)),this['editor']['plugins']['get']('Permissions')['setPermissions'](_0x13c101,this['_channelId']);}}),_0x1cf05a['register'](this['_channelId'],_0x2d9e40);}['_initThrowingOnDataSet'](){const _0x23d7a5=this['editor']['data']['set'];this['editor']['data']['set']=(..._0x2aa52e)=>{if(!_0x2aa52e[_0x2aa52e['length']-0x1]['suppressErrorInCollaboration'])throw new _0x26a8d4('realtimecollaborationclient-editor-setdata-and-editor-data-set-are-forbidden-in-real-time-collaboration',this);_0x23d7a5['apply'](this['editor']['data'],_0x2aa52e);};}['_setUpDataInit'](){this['editor']['data']['on']('init',(_0x2c1480,[_0x3a9ce8])=>{if(this['_document']['version'])throw new _0x26a8d4('realtimecollaborationclient-init-document-already-initialized',this);_0x2c1480['stop'](),this['_setPendingAction']();const _0x5c053b=this['editor']['config']['get']('rootsAttributes'),_0x2d35bb=this['_getOperationsFromInitData'](_0x3a9ce8,_0x5c053b);0x0==_0x2d35bb['length']&&_0x2d35bb['push'](new _0x1727e1(0x0)),_0x2c1480['return']=this['_connectService'](_0x2d35bb)['then'](()=>{this['editor']['plugins']['get'](c)['addToReconnectionStack'](this),this['editor']['data']['fire']('ready');})['catch'](_0x4fe65b=>this['_crash']('realtimecollaborationclient-init-connection-failed',_0x4fe65b))['finally'](()=>this['_clearPendingAction']());},{'priority':'high'}),this['editor']['on']('loadRoot',async(_0x3a5da7,[_0xc89e0b,_0x7150ec])=>{_0x3a5da7['stop']();const _0x17c420=this['editor']['model']['document']['getRoot'](_0xc89e0b);if(!this['_knownRootNames']['has'](_0xc89e0b)){const _0x1ee50f=_0x7150ec&&_0x7150ec['data']?_0x7150ec['data']:'',_0x5d53ee=_0x7150ec&&_0x7150ec['attributes']?_0x7150ec['attributes']:{};await this['_loadRoot'](_0xc89e0b,_0x1ee50f,_0x5d53ee);}this['editor']['model']['enqueueChange']({'isUndoable':!0x1},()=>{_0x17c420['_isLoaded']=!0x0,this['editor']['model']['document']['differ']['_bufferRootLoad'](_0x17c420);});},{'priority':'high'});}async['_fetchMissingUsers'](_0x2e0def){const _0x35df8c=this['editor']['plugins']['get'](_0x5f01ed),{connection:_0xc65651}=this['editor']['plugins']['get'](c),_0x3e9f84=new Set();for(const _0x1fddfa of _0x2e0def){const _0x4592f5=_0x1fddfa['_authorId'];_0x4592f5&&!_0x35df8c['getUser'](_0x4592f5)&&_0x3e9f84['add'](_0x4592f5);}if(0x0===_0x3e9f84['size'])return;const _0x1cf977=await gt['getMany'](_0xc65651,Array['from'](_0x3e9f84));for(const _0x3858f8 of _0x1cf977)_0x35df8c['getUser'](_0x3858f8['id'])||_0x35df8c['addUser'](_0x3858f8);}['_getOperationsFromInitData'](_0x90bcb2,_0x29de48={}){const _0x513816=this['editor']['model'],_0x1eb680=[];let _0x5029aa=0x0;const _0x3debef='string'==typeof _0x90bcb2?{'main':_0x90bcb2}:_0x90bcb2;for(const _0x2b1f01 of Object['keys'](_0x3debef)){if(!this['_document']['roots']['has'](_0x2b1f01))throw new _0x26a8d4('realtimecollaborationclient-init-non-existent-root',this);const _0x116793=this['editor']['data']['parse'](_0x3debef[_0x2b1f01]),_0xfbcf76=this['_document']['getRoot'](_0x2b1f01),_0x50bc57=new _0x56a10f(_0x513816['createPositionAt'](_0xfbcf76,0x0),_0x116793,_0x5029aa++);_0x1eb680['push'](_0x50bc57);for(const [_0x3d3e92,_0x509563]of _0x116793['markers']){const _0x4894ea=_0x513816['createRange'](_0x513816['createPositionFromPath'](_0xfbcf76,_0x509563['start']['path']['slice']()),_0x513816['createPositionFromPath'](_0xfbcf76,_0x509563['end']['path']['slice']())),_0xf4ac1c=new _0x22c45c(_0x3d3e92,null,_0x4894ea,_0x513816['markers'],!0x0,_0x5029aa++);_0x1eb680['push'](_0xf4ac1c);}}if(_0x29de48)for(const [_0xf3b57,_0x49c364]of Object['entries'](_0x29de48)){const _0x31ff3b=_0x513816['document']['getRoot'](_0xf3b57);if(!_0x31ff3b)throw new _0x26a8d4('multi-root-editor-root-attributes-no-root',null);for(const [_0x53d512,_0x500101]of Object['entries'](_0x49c364))if(null!==_0x500101){const _0x155a43=new _0x8dd679(_0x31ff3b,_0x53d512,null,_0x500101,_0x5029aa++);_0x1eb680['push'](_0x155a43);}}return _0x1eb680;}async['_loadRoot'](_0x537664,_0x14a010,_0xb7f39e){this['_getOperationsFromInitData']({[_0x537664]:_0x14a010},{[_0x537664]:_0xb7f39e})['forEach']((_0x75946a,_0x276755)=>{_0x75946a['baseVersion']=this['_document']['version']+_0x276755,_0x75946a['_isInit']=!0x0,this['_saveOperationInBuffer'](_0x75946a);}),this['_sendBufferedOperationsDelayed'](),await this['_waitUntilSynced']();}async['_handleInitialConnectionData'](_0x244ee1,_0x328c2f){let _0x2249df;this['_offset']=_0x244ee1['offset'];const _0x25cc0c=_0x244ee1['wereChangesApplied']&&!_0x244ee1['initData'],_0x147f2d=_0x25cc0c?0x0:_0x244ee1['data']['baseVersion'];if(_0x328c2f['forEach'](_0x7cd513=>{_0x7cd513['_isInit']=!0x0,_0x7cd513['createdAt']=_0x244ee1['sessionCreatedAt'],_0x7cd513['_authorId']=null;}),_0x25cc0c)_0x2249df=_0x328c2f,this['_applyOperationsSet'](_0x2249df,_0x25cc0c);else{if(_0x244ee1['initData']){const _0x1961e4=this['_getOperationsFromInitData'](_0x244ee1['initData']);this['_document']['history']['version']=-_0x1961e4['length'],_0x1961e4['forEach'](_0x321a1c=>{_0x321a1c['baseVersion']-=_0x1961e4['length'],_0x321a1c['createdAt']=_0x244ee1['sessionCreatedAt'],_0x321a1c['_isInit']=!0x0,_0x321a1c['_authorId']=null;}),this['_applyOperationsSet'](_0x1961e4,!0x0),this['serverHistory']['version']=-_0x1961e4['length']+this['_offset'],this['_updateServerHistory'](_0x1961e4);}this['_document']['history']['version']=_0x147f2d,_0x2249df=this['_decompressOperations'](_0x244ee1['data'],_0x244ee1['metadata']),await this['_fetchMissingUsers'](_0x2249df),this['_applyOperationsSet'](_0x2249df,_0x25cc0c);}_0x244ee1['lastOperationId']&&(this['_operationIdentifier']['setIdForTheLastOperation'](_0x2249df,_0x244ee1['lastOperationId']),this['_lastSyncedOperationId']=_0x244ee1['lastOperationId']),this['serverHistory']['version']=_0x147f2d+this['_offset'],this['_updateServerHistory'](_0x2249df),_0x328c2f['filter'](_0x339fce=>{const _0x5a1bbc=this['_getAffectedRoot'](_0x339fce);return _0x5a1bbc&&!this['_knownRootNames']['has'](_0x5a1bbc);})['forEach']((_0x5414b0,_0x27d7f8)=>{_0x5414b0['baseVersion']=this['_document']['version']+_0x27d7f8,this['_saveOperationInBuffer'](_0x5414b0);}),this['_shouldSendUpdate']()?(this['_currentBufferDelay']=0x0,this['_sendBufferedOperationsDelayed'](!0x0),await this['_waitUntilSynced']()):(this['_isPendingUpdate']=!0x1,this['_clearPendingAction']());}['_crash'](_0x4c075b,_0x3fed94){const _0x554590=_0x3fed94&&_0x3fed94['message'];if(_0x554590&&_0x554590['startsWith']('realtimecollaborationclient'))throw _0x3fed94;const _0x13cf97=this['editor']['plugins']['get'](c);throw this['_isPendingUpdate']=!0x0,_0x13cf97['disconnect'](),this['editor']['enableReadOnlyMode']('realtimecollaborationclient-error'),new _0x26a8d4(_0x4c075b,this['editor'],_0x554590?{'originalError':_0x554590}:void 0x0);}['_saveOperationInBuffer'](_0x5a94ec){this['_knownOperations']['has'](_0x5a94ec)||(this['_knownOperations']['add'](_0x5a94ec),this['_bufferedOperations']['push'](_0x5a94ec),this['_pendingAction']||'marker'==_0x5a94ec['type']&&!_0x5a94ec['affectsData']||this['_setPendingAction']());}['_sendBufferedOperationsDelayed'](_0x164643=!0x1){!_0x164643&&this['_isPendingUpdate']||(this['_isPendingUpdate']=!0x0,clearTimeout(this['_sendBufferedOperationsDelayId']),this['_sendBufferedOperationsDelayId']=setTimeout(()=>{this['_sendBufferedOperations']()['then'](_0x2fe9ba=>{_0x2fe9ba&&(this['_clearPendingAction'](),this['_isPendingUpdate']=!0x1);})['catch'](_0x2712cf=>{this['_clearPendingAction'](),this['_isPendingUpdate']=!0x1,function(_0x387651){return _0x387651['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x387651['message']['startsWith']('cloud-services-internal-error:\x20Collaborative\x20Editing\x20Service\x20is\x20not\x20connected.')||_0x387651['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}(_0x2712cf)||this['_crash'](_0x2712cf['message'],_0x2712cf);});},this['_currentBufferDelay']));}['_waitUntilSynced'](){return new Promise(_0x8a17b8=>{this['on']('change:_isPendingUpdate',()=>{_0x8a17b8();});});}async['_sendBufferedOperations'](){const _0x3461b7=this['editor']['plugins']['get'](B);if(this['_shouldSendSelectionUpdate']()&&(_0x3461b7['createUserMarkerOperations'](),this['_hasSelectionChanged']=!0x1),!this['_shouldSendUpdate']())return!0x0;const _0x59104a=[...this['_bufferedOperations']];for(const _0x709520 of _0x59104a)_0x709520['wasUndone']=this['_document']['history']['isUndoneOperation'](_0x709520);const _0x3f59bf=this['_operationIdentifier']['getIdOfTheLastOperation'](_0x59104a),_0x43cb94=F++,_0x180df7=this['_compressOperations'](_0x59104a),_0x1f331d=await this['_service']['sendOperations'](_0x180df7,_0x180df7['baseVersion'],_0x3f59bf);try{return await this['_handleServerResponse'](_0x59104a,_0x1f331d,_0x43cb94);}catch(_0x1036c7){return this['_crash']('realtimecollaborationclient-sendbufferedoperations',_0x1036c7);}}async['_handleServerResponse'](_0xf79d46,_0x23e2d4,_0x3ff847){if('error'in _0x23e2d4)throw _0x23e2d4['error'];let _0x497c13=!0x1;if(_0x23e2d4['wereChangesApplied']){_0x23e2d4['lastOperationId']&&(this['_lastSyncedOperationId']=_0x23e2d4['lastOperationId']),this['_bufferedOperations']=this['_bufferedOperations']['filter'](_0x1050b6=>!_0xf79d46['includes'](_0x1050b6));for(const _0x44d649 of _0xf79d46)_0x44d649['createdAt']='lastOperationAcceptedAt'in _0x23e2d4&&_0x23e2d4['lastOperationAcceptedAt']||void 0x0;G(_0xf79d46,_0x23e2d4['version']-_0xf79d46['length']),this['_updateServerHistory'](_0xf79d46);const _0x30d68c=_0xf79d46['filter'](_0x5a4ab5=>{if(!_0x5a4ab5['_isInit'])return!0x1;const _0x215fba=this['_getAffectedRoot'](_0x5a4ab5);return _0x215fba&&!this['_knownRootNames']['has'](_0x215fba);});G(_0x30d68c,this['_document']['version']),this['_applyOperationsSet'](_0x30d68c),_0x497c13=!0x0,this['_currentBufferDelay']=this['_baseBufferDelay'];}else{const _0x57b8c2=this['_decompressOperations'](_0x23e2d4['data'],_0x23e2d4['metadata'])['filter'](_0x2bc226=>_0x2bc226['baseVersion']>=this['_lastServerVersion']);_0x57b8c2['forEach'](_0x394bd7=>this['_addKnownRoot'](_0x394bd7)),this['_bufferedOperations']=this['_bufferedOperations']['filter'](_0x245417=>!_0x245417['_isInit']||!this['_knownRootNames']['has'](this['_getAffectedRoot'](_0x245417))),this['_bufferedOperations']['length']&&G(this['_bufferedOperations'],this['_bufferedOperations'][0x0]['baseVersion']),await this['_fetchMissingUsers'](_0x57b8c2),_0x497c13=this['_handleExternalOperations'](_0x57b8c2,_0x23e2d4['version'],_0x23e2d4['lastOperationId']),this['_currentBufferDelay']=Math['round'](this['_currentBufferDelay']/0x2);}return _0x497c13?!this['_shouldSendUpdate']()||(this['_sendBufferedOperationsDelayed'](!0x0),!0x1):this['_crash']('realtimecollaborationclient-handleserverresponse');}['_handleExternalOperations'](_0x1af8fa,_0x1d264c,_0x2a0bb0){try{const _0x390312={'document':this['_document'],'useRelations':!0x1,'padWithNoOps':!0x0},{operationsA:_0x4d3cdd,operationsB:_0x383eea,originalOperations:_0x2b4bf1}=_0x4779c9(_0x1af8fa,this['_bufferedOperations'],_0x390312);G(_0x4d3cdd,this['_document']['version']),G(_0x383eea,_0x1d264c);for(const _0x2e556f of _0x4d3cdd){const _0x49d1e0=_0x2b4bf1['get'](_0x2e556f);_0x2e556f['_authorId']=_0x49d1e0?_0x49d1e0['_authorId']:null;}_0x2a0bb0&&(this['_operationIdentifier']['setIdForTheLastOperation'](_0x1af8fa,_0x2a0bb0),this['_lastSyncedOperationId']=_0x2a0bb0),this['_bufferedOperations']=[..._0x383eea],this['_applyOperationsSet'](_0x4d3cdd),this['_updateServerHistory'](_0x1af8fa);}catch(_0x2043b8){return console['error'](_0x2043b8),!0x1;}return!0x0;}['_applyOperationsSet'](_0x2e2ebf,_0x536fae=!0x1){this['editor']['model']['enqueueChange']({'isUndoable':!0x1,'isLocal':!0x1},_0x12cfd0=>{for(const _0x1f61b1 of _0x2e2ebf)this['_knownOperations']['add'](_0x1f61b1),this['_addKnownRoot'](_0x1f61b1),_0x12cfd0['batch']['addOperation'](_0x1f61b1),this['editor']['model']['applyOperation'](_0x1f61b1);});}['_addKnownRoot'](_0x2f52e4){const _0x311c9f=this['_getAffectedRoot'](_0x2f52e4);_0x311c9f&&this['_knownRootNames']['add'](_0x311c9f);}['_getAffectedRoot'](_0x40b0ca){let _0x295ed8,_0xe428a;switch(_0x40b0ca['type']){case'insert':_0x295ed8=_0x40b0ca['position']['root'];break;case'marker':if(_0xe428a=_0x40b0ca['newRange'],!_0xe428a)return null;_0x295ed8=_0xe428a['root'];break;case'addRootAttribute':_0x295ed8=_0x40b0ca['root'];break;case'addRoot':_0x295ed8=_0x40b0ca['affectedSelectable'];break;case'move':_0x295ed8=_0x40b0ca['targetPosition']['root'];break;default:return null;}return _0x295ed8['rootName'];}['_updateServerHistory'](_0x245af0){_0x245af0['forEach'](_0x1026f9=>{const _0x58ab86=_0x1026f9['clone']();_0x58ab86['_authorId']=_0x1026f9['_authorId'],_0x58ab86['_isInit']=!!_0x1026f9['_isInit'],_0x58ab86['createdAt']=_0x1026f9['createdAt'],_0x58ab86['baseVersion']+=this['_offset'],_0x1026f9['_isDisconnection']&&this['_disconnectionOperations']['add'](_0x58ab86),this['serverHistory']['addOperation'](_0x58ab86);});}['_handleReconnectionError'](_0x3c61bb){const _0x406f26=this['editor']['plugins']['get']('Notification'),_0x42c422=this['editor']['locale'];_0x3c61bb||(_0x3c61bb=M(_0x42c422,'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.')),_0x406f26['showWarning'](_0x3c61bb,{'title':M(_0x42c422,'Synchronization\x20issue'),'namespace':'real-time-collaboration'}),this['_hasSynchronizationProblem']=!0x0,clearTimeout(this['_sendBufferedOperationsDelayId']),this['_bufferedOperations']=[],this['editor']['plugins']['get'](c)['disconnect']();}['_setPendingAction'](){this['_pendingAction']||(this['_pendingAction']=this['editor']['plugins']['get'](_0x1bc531)['add'](M(this['editor']['locale'],'PENDING_ACTION_SENDING_DATA')));}['_clearPendingAction'](){this['_pendingAction']&&(this['editor']['plugins']['get'](_0x1bc531)['remove'](this['_pendingAction']),this['_pendingAction']=null);}['_compressOperations'](_0x423865){const _0x567b93=_0x423865['map'](_0x46bdfc=>_0x46bdfc['toJSON']());return this['_compressor']['compress'](_0x567b93);}['_decompressOperations'](_0x41fd8c,_0x392960){return this['_compressor']['decompress'](_0x41fd8c)['map']((_0x48d06d,_0x1c59ce)=>{const _0x487467='init'==_0x392960[_0x1c59ce]['type'];if('InsertOperation'==_0x48d06d['__className']){const _0x69e601=_0x48d06d['position']['root'];!this['_document']['getRoot'](_0x69e601)&&(this['_document']['createRoot']('$root',_0x69e601)['_isAttached']=!0x1);}const _0x33bbd6=_0x44316c['fromJSON'](_0x48d06d,this['_document']);return _0x33bbd6['wasUndone']=_0x48d06d['wasUndone'],_0x33bbd6['_isInit']=_0x487467,_0x33bbd6['_authorId']=_0x487467?null:_0x392960[_0x1c59ce]['userId'],_0x33bbd6['_isDisconnection']='cs:removeUser'===_0x392960[_0x1c59ce]['type'],_0x33bbd6['createdAt']=_0x392960[_0x1c59ce]['createdAt'],_0x33bbd6;});}['_refreshUserSelectionMarkers'](){this['_hasSelectionChanged']=!0x0,this['_shouldSendSelectionUpdate']()?this['_sendBufferedOperationsDelayed']():this['_hasSelectionChanged']=!0x1;}['_shouldSendSelectionUpdate'](){const _0x5d5876=this['editor']['plugins']['get'](i)['channelSessions']['get'](this['_channelId']);return!this['editor']['isReadOnly']&&!!_0x5d5876&&_0x5d5876['length']>0x1&&this['_hasSelectionChanged'];}['_shouldSendUpdate'](){return this['_bufferedOperations']['length']>0x0||this['_shouldSendSelectionUpdate']();}}class q extends Error{}function G(_0xba6f69,_0x54e23e){for(const _0x45a397 of _0xba6f69)_0x45a397['baseVersion']=_0x54e23e++;}class ${['_ignoredOperations'];['_operationToId'];constructor(_0x5da44c){this['_ignoredOperations']=_0x5da44c,this['_operationToId']=new WeakMap();}['getIdOfTheLastOperation'](_0x46a21d){let _0x22060a=_0x46a21d['length'];for(;_0x22060a--;){const _0x1ff2d4=_0x46a21d[_0x22060a];if(!this['_ignoredOperations']['has'](_0x1ff2d4)){if(!this['_operationToId']['has'](_0x1ff2d4)){const _0x339c9f=_0x4fd132()['slice'](0x1,0x12);this['_operationToId']['set'](_0x1ff2d4,_0x339c9f);}return this['_operationToId']['get'](_0x1ff2d4);}}}['setIdForTheLastOperation'](_0x266192,_0x22d35d){if(!_0x22d35d)return;let _0x3bb098=_0x266192['length'];for(;_0x3bb098--;){const _0x5d1245=_0x266192[_0x3bb098];this['_ignoredOperations']['has'](_0x5d1245)||this['_operationToId']['set'](_0x5d1245,_0x22d35d);}}}class n extends _0x46e1aa{static get['requires'](){return[l];}static get['pluginName'](){return'RealTimeCollaborativeEditing';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}class a extends _0x5608fb{static ['CommentsService']=/* #__PURE__ -- @preserve */
26
+ ((()=>et)());['_services'];static get['requires'](){return[c,'CommentsRepository',i,_0x5f01ed];}static get['pluginName'](){return'CloudServicesCommentsAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x221f57){super(_0x221f57),this['_services']=new Map();}async['init'](){const _0x3a34d8=this['context'],_0x16bbbc=_0x3a34d8['plugins']['get']('CommentsRepository');if(_0x3a34d8['plugins']['get'](c)['addToReconnectionStack'](this),_0x16bbbc['adapter']={'addCommentThread':async({channelId:_0x6cc8f0,threadId:_0x5a11fa,comments:_0x43c7b2,resolvedAt:_0x3dd33e,resolvedBy:_0x4e4053,context:_0x3da9e0,attributes:_0x54208d})=>{const _0x258202=await this['_getService'](_0x6cc8f0)['addCommentThread']({'commentThreadId':_0x5a11fa,'comments':_0x43c7b2['map'](_0x5187a8=>function(_0x11560a,_0x56bd5c,_0x54cb27){return{'commentThreadId':_0x54cb27,'commentId':_0x11560a['commentId'],'userId':_0x11560a['authorId'],'content':_0x11560a['content'],'documentId':_0x56bd5c,'createdAt':_0x11560a['createdAt'],'attributes':_0x11560a['attributes']||{}};}(_0x5187a8,_0x6cc8f0,_0x5a11fa)),'resolvedAt':_0x3dd33e,'resolvedBy':_0x4e4053,'context':_0x3da9e0,'attributes':_0x54208d})['catch'](wt);return{'threadId':_0x258202['commentThreadId'],'comments':_0x258202['comments']};},'getCommentThread':async({channelId:_0x549605,threadId:_0x31db05})=>{const _0x13389a=await this['_getService'](_0x549605)['getCommentThread'](_0x31db05)['catch'](wt);return _0x13389a['deletedAt']?null:(await this['_fetchMissingUsersForThreads']([_0x13389a]),{'threadId':_0x13389a['commentThreadId'],'comments':_0x13389a['comments']['map'](st),'context':_0x13389a['context'],'resolvedAt':_0x13389a['resolvedAt'],'resolvedBy':_0x13389a['resolvedBy'],'attributes':_0x13389a['attributes']||{}});},'updateCommentThread':async({channelId:_0x58c8ed,threadId:_0x105409,context:_0x41776e,unlinkedAt:_0x4d8dcc,attributes:_0x16ab16})=>this['_getService'](_0x58c8ed)['updateCommentThread']({'commentThreadId':_0x105409,'context':_0x41776e,'attributes':_0x16ab16,'unlinkedAt':_0x4d8dcc})['catch'](ot)['catch'](wt),'resolveCommentThread':async({channelId:_0x3b8827,threadId:_0x48c9fe})=>{const _0x4e4195=await this['_getService'](_0x3b8827)['resolveCommentThread'](_0x48c9fe)['catch'](ot)['catch'](wt);return{'threadId':_0x4e4195['commentThreadId'],'resolvedAt':_0x4e4195['resolvedAt'],'resolvedBy':_0x4e4195['resolvedBy']};},'reopenCommentThread':async({channelId:_0x468c47,threadId:_0x9cda5b})=>this['_getService'](_0x468c47)['reopenCommentThread'](_0x9cda5b)['catch'](ot)['catch'](wt),'removeCommentThread':({channelId:_0xa78843,threadId:_0x35eec2})=>this['_getService'](_0xa78843)['removeCommentThread'](_0x35eec2)['catch'](ot)['catch'](wt),'addComment':({channelId:_0x21e816,threadId:_0x4ed3da,commentId:_0x162259,content:_0x4fd643,attributes:_0x5a92d4})=>this['_getService'](_0x21e816)['addComment'](_0x4ed3da,_0x162259,_0x4fd643,_0x5a92d4)['catch'](wt),'updateComment':({channelId:_0x2e05c7,threadId:_0x24bc9e,commentId:_0x2cb33c,content:_0x5889ef,attributes:_0x19d648})=>this['_getService'](_0x2e05c7)['updateComment'](_0x24bc9e,_0x2cb33c,_0x5889ef,_0x19d648)['catch'](ot)['catch'](wt),'removeComment':({channelId:_0x3b5f14,threadId:_0x334294,commentId:_0x36ecae})=>this['_getService'](_0x3b5f14)['removeComment'](_0x334294,_0x36ecae)['catch'](ot)['catch'](wt)},_0x3a34d8 instanceof tt){const _0x1e1467=_0x3a34d8['config']['get']('collaboration.channelId'),_0x6891c6=_0x3a34d8['plugins']['get'](i);await this['_setUpService'](_0x1e1467);const _0x3ae6ce=await this['_services']['get'](_0x1e1467)['getConnectedSessions']();this['listenTo'](_0x6891c6,'sessionAdd:'+_0x1e1467,(_0x563d31,{session:_0x315864})=>{_0x315864['id']===_0x6891c6['mySessionId']&&(_0x563d31['off'](),this['context']['plugins']['get']('Permissions')['setPermissions'](_0x315864['permissions'],_0x1e1467));}),_0x6891c6['register'](_0x1e1467,_0x3ae6ce);}}async['_setUpService'](_0x19d0d2){if(this['_services']['has'](_0x19d0d2))throw new _0x26a8d4('cloudservicescommentsadapter-connect-already-connected',null,{'channelId':_0x19d0d2});const _0x55d099=this['context']['plugins']['get']('CommentsRepository'),_0x29708f=new a['CommentsService'](_0x19d0d2);this['_services']['set'](_0x19d0d2,_0x29708f),this['listenTo'](_0x29708f,'commentThreadAdded',(_0x16fc68,_0x300099)=>{const {commentThreadId:_0x562381,documentId:_0x40d5b5,context:_0x33f7d7,attributes:_0x4750d7,resolvedAt:_0xef792,resolvedBy:_0x130582,comments:_0x10c9d4}=_0x300099;_0x55d099['getCommentThread'](_0x562381)||_0x55d099['addCommentThread']({'threadId':_0x562381,'channelId':_0x40d5b5,'comments':_0x10c9d4?_0x10c9d4['map'](st):[],'context':_0x33f7d7,'attributes':_0x4750d7,'resolvedAt':_0xef792,'resolvedBy':_0x130582,'isFromAdapter':!0x0});}),this['listenTo'](_0x29708f,'commentThreadUpdated',(_0x42d9d1,{commentThreadId:_0x5ecd61,documentId:_0x2ae53d,context:_0xae6dbf,unlinkedAt:_0x1ad787,attributes:_0x66099d})=>{_0x55d099['getCommentThread'](_0x5ecd61)&&_0x55d099['updateCommentThread']({'threadId':_0x5ecd61,'channelId':_0x2ae53d,'context':_0xae6dbf,'unlinkedAt':_0x1ad787,'attributes':_0x66099d,'isFromAdapter':!0x0});}),this['listenTo'](_0x29708f,'commentThreadResolved',(_0x25a62d,{commentThreadId:_0x476e2d,resolvedBy:_0x40c4ba,resolvedAt:_0x322868})=>{const _0x210ad6=_0x55d099['getCommentThread'](_0x476e2d);_0x210ad6&&_0x210ad6['resolve']({'resolvedBy':_0x40c4ba,'resolvedAt':_0x322868,'isFromAdapter':!0x0});}),this['listenTo'](_0x29708f,'commentThreadReopened',(_0x5bc693,{commentThreadId:_0x523926})=>{const _0x12af55=_0x55d099['getCommentThread'](_0x523926);_0x12af55&&_0x12af55['reopen']({'isFromAdapter':!0x0});}),this['listenTo'](_0x29708f,'commentThreadRemoved',(_0x5329b5,{commentThreadId:_0xc53b97})=>{const _0x555a88=_0x55d099['getCommentThread'](_0xc53b97);_0x555a88&&_0x555a88['remove']({'isFromAdapter':!0x0});}),this['listenTo'](_0x29708f,'commentAdded',(_0x32638d,_0x7bb4c1)=>{const _0x5d11bc=_0x7bb4c1['commentThreadId'],_0x5ebb51=_0x55d099['getCommentThread'](_0x5d11bc);_0x5ebb51&&_0x5ebb51['addComment']({...st(_0x7bb4c1),'isFromAdapter':!0x0});}),this['listenTo'](_0x29708f,'commentUpdated',(_0x22fdcc,{commentThreadId:_0x395508,commentId:_0x381c42,content:_0x2b9d5a,attributes:_0x204ff7})=>{const _0x3ee0f8=_0x55d099['getCommentThread'](_0x395508);if(_0x3ee0f8){const _0x218fed=_0x3ee0f8['getComment'](_0x381c42);_0x218fed&&_0x218fed['update']({'content':_0x2b9d5a,'attributes':_0x204ff7,'isFromAdapter':!0x0});}}),this['listenTo'](_0x29708f,'commentRemoved',(_0x5710d4,{commentThreadId:_0x78479,commentId:_0x1287fb})=>{const _0x5aa9aa=_0x55d099['getCommentThread'](_0x78479);if(_0x5aa9aa){const _0x484143=_0x5aa9aa['getComment'](_0x1287fb);_0x484143&&_0x484143['remove']({'isFromAdapter':!0x0});}}),await this['_connectService'](_0x19d0d2);}['destroy'](){if(this['context']instanceof tt){const _0x2378fd=this['context']['config']['get']('collaboration.channelId');this['_terminateService'](_0x2378fd);}}['_terminateService'](_0x40a848){if(!this['_services']['has'](_0x40a848))throw new _0x26a8d4('cloudservicescommentsadapter-disconnect-not-exist',null,{'channelId':_0x40a848});this['_getService'](_0x40a848)['disconnect'](),this['_services']['delete'](_0x40a848);}async['reconnect'](){for(const _0x14132e of this['_services']['keys']())await this['_connectService'](_0x14132e);if(this['context']instanceof tt){const _0x515f35=this['context']['config']['get']('collaboration.channelId'),_0x168d99=this['context']['plugins']['get'](i);_0x168d99['unregister'](_0x515f35);const _0x29f23e=await this['_services']['get'](_0x515f35)['getConnectedSessions']();_0x168d99['register'](_0x515f35,_0x29f23e);}}async['_connectService'](_0x4fada3){const {connection:_0x43bfdd}=this['context']['plugins']['get'](c),_0x1bcda2=this['context']['plugins']['get']('CommentsRepository'),_0x533fa6=this['_services']['get'](_0x4fada3),_0x16ae1d=await _0x533fa6['connect'](_0x43bfdd);await this['_fetchMissingUsersForThreads'](_0x16ae1d);const _0xd9eb1b=new Set(Array['from'](_0x1bcda2['getCommentThreads']({'channelId':_0x4fada3}),_0x2a3fdb=>_0x2a3fdb['id']));for(const _0x3cd07f of _0x16ae1d)_0x3cd07f['deletedAt']||_0xd9eb1b['delete'](_0x3cd07f['commentThreadId']);for(const _0x2d8e74 of _0xd9eb1b)_0x1bcda2['getCommentThread'](_0x2d8e74)['remove']({'isFromAdapter':!0x0});for(const _0x34595f of _0x16ae1d){let _0x3675b7=_0x1bcda2['getCommentThread'](_0x34595f['commentThreadId']);const {commentThreadId:_0x544da3,context:_0x359730,attributes:_0x6376b3,resolvedBy:_0x2370e9,resolvedAt:_0x4f2bc2,unlinkedAt:_0x1c14bf,deletedAt:_0x3fa825}=_0x34595f;if(_0x3fa825)continue;_0x3675b7||(_0x3675b7=_0x1bcda2['addCommentThread']({'channelId':_0x4fada3,'threadId':_0x544da3,'context':_0x359730,'attributes':_0x6376b3||{},'resolvedBy':_0x2370e9,'resolvedAt':_0x4f2bc2,'unlinkedAt':_0x1c14bf,'isFromAdapter':!0x0}));const _0x32fa9f=new Set(Array['from'](_0x3675b7['comments'],_0x2d0d67=>_0x2d0d67['id']));for(const _0x6a3a49 of _0x34595f['comments'])_0x32fa9f['delete'](_0x6a3a49['commentId']);for(const _0x2db130 of _0x32fa9f)_0x3675b7['getComment'](_0x2db130)['remove']({'isFromAdapter':!0x0});for(const _0x4e93e9 of _0x34595f['comments']){const _0x33631a=_0x3675b7['getComment'](_0x4e93e9['commentId']);_0x33631a?_0x33631a['content']!==_0x4e93e9['content']&&_0x33631a['update']({'content':_0x4e93e9['content'],'isFromAdapter':!0x0}):_0x3675b7['addComment'](Object['assign'](st(_0x4e93e9),{'isFromAdapter':!0x0}));}}}['_getService'](_0x1f9e5e){if(!this['_services']['has'](_0x1f9e5e))throw new _0x26a8d4('cloudservicescommentsadapter-service-not-exist',null,{'channelId':_0x1f9e5e});return this['_services']['get'](_0x1f9e5e);}async['_fetchMissingUsersForThreads'](_0x52d884){const _0x57df41=this['context']['plugins']['get'](_0x5f01ed),{connection:_0x3b4110}=this['context']['plugins']['get'](c),_0x27b174=new Set();for(const {resolvedBy:_0x3afe2c,comments:_0x299d1d}of _0x52d884){_0x3afe2c&&!_0x57df41['getUser'](_0x3afe2c)&&_0x27b174['add'](_0x3afe2c);for(const {userId:_0x296a90}of _0x299d1d)_0x57df41['getUser'](_0x296a90)||_0x27b174['add'](_0x296a90);}if(0x0===_0x27b174['size'])return;const _0x5db73f=await gt['getMany'](_0x3b4110,Array['from'](_0x27b174));for(const _0x3867e4 of _0x5db73f)_0x57df41['getUser'](_0x3867e4['id'])||_0x57df41['addUser'](_0x3867e4);}}async function ot(_0x33aed2){if('404'!==_0x33aed2['code'])throw _0x33aed2;}function wt(_0x358efa){if((_0x22265f=_0x358efa)['message']['startsWith']('cloud-services-internal-error:\x20Comments\x20Service\x20is\x20not\x20connected.')||_0x22265f['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x22265f['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.'))return new Promise(()=>{});var _0x22265f;throw _0x358efa;}function st(_0xc34dd3){return{'threadId':_0xc34dd3['commentThreadId'],'commentId':_0xc34dd3['commentId'],'content':_0xc34dd3['content'],'createdAt':_0xc34dd3['createdAt'],'authorId':_0xc34dd3['userId'],'attributes':_0xc34dd3['attributes']||{}};}class f extends _0x46e1aa{static ['TrackChangesService']=/* #__PURE__ -- @preserve */
27
+ ((()=>at)());['_bufferedRequests'];['_trackChangesService'];static get['requires'](){return[a,'TrackChangesEditing',c];}static get['pluginName'](){return'CloudServicesTrackChangesAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x1f3e68){super(_0x1f3e68);const _0x4c4b21=this['editor']['config']['get']('collaboration.channelId');this['_bufferedRequests']=new Map(),this['_trackChangesService']=new f['TrackChangesService'](_0x4c4b21);}['init'](){const _0x28448c=this['editor']['plugins']['get'](c),_0xaf1d00=this['editor']['plugins']['get']('TrackChangesEditing');return _0xaf1d00['adapter']={'getSuggestion':async _0x3c482b=>{await this['_waitForServiceReady']();const _0x1cd547=await this['_trackChangesService']['get'](_0x3c482b)['catch'](nt);return await this['_fetchMissingUsersForThreads']([_0x1cd547]),_0x1cd547;},'addSuggestion':async({id:_0x5b0d54,type:_0x1aa951,data:_0x427f68,originalSuggestionId:_0x35bda9,attributes:_0x2628e2})=>{await this['_waitForServiceReady']();const _0x50f610={'id':_0x5b0d54,'type':_0x1aa951,'data':_0x427f68,'originalSuggestionId':_0x35bda9,'attributes':_0x2628e2},_0x507b09=await this['_trackChangesService']['add'](_0x5b0d54,_0x1aa951,_0x427f68,_0x35bda9,_0x2628e2)['catch'](_0x3c967f=>{if(vt(_0x3c967f))return new Promise(_0x21ce67=>{this['_bufferedRequests']['set'](_0x5b0d54,{'resolve':_0x21ce67,'suggestionData':_0x50f610});});throw _0x3c967f;});return this['_bufferedRequests']['delete'](_0x5b0d54),_0x507b09;},'updateSuggestion':async(_0x1e6991,_0x31110c)=>{if(await this['_waitForServiceReady'](),'open'!==_0x31110c['state'])return this['_trackChangesService']['update'](_0x1e6991,_0x31110c)['catch'](nt);}},this['listenTo'](this['_trackChangesService'],'suggestionUpdated',(_0x1071ba,_0x1e98d1)=>{_0xaf1d00['hasSuggestion'](_0x1e98d1['id'])&&(_0xaf1d00['getSuggestion'](_0x1e98d1['id'])['attributes']=_0x1e98d1['attributes']);}),this['_trackChangesService']['connect'](_0x28448c['connection'])['then'](_0x3c9f54=>(_0x28448c['addToReconnectionStack'](this),this['_fetchMissingUsersForThreads'](_0x3c9f54)['then'](()=>{for(const _0x6ff13c of _0x3c9f54){_0xaf1d00['addSuggestionData'](_0x6ff13c)['_saved']=!0x0;}})));}async['reconnect'](){const _0x128e70=this['editor']['plugins']['get']('TrackChangesEditing'),{connection:_0xa1af17}=this['editor']['plugins']['get'](c),_0x30926f=await this['_trackChangesService']['connect'](_0xa1af17);await this['_fetchMissingUsersForThreads'](_0x30926f);for(const {suggestionData:_0x419c3f,resolve:_0x3066af}of this['_bufferedRequests']['values']()){let _0x34ad22=_0x30926f['find'](_0x10efb8=>_0x10efb8['id']===_0x419c3f['id']);_0x34ad22||(_0x34ad22=await this['_trackChangesService']['add'](_0x419c3f['id'],_0x419c3f['type'],_0x419c3f['data'],_0x419c3f['originalSuggestionId'])),_0x3066af(_0x34ad22);}for(const _0x1d7a44 of _0x30926f)_0x128e70['hasSuggestion'](_0x1d7a44['id'])||_0x128e70['addSuggestionData'](_0x1d7a44);}async['_waitForServiceReady'](){this['_trackChangesService']['isConnected']||await new Promise(_0x4ed32c=>{this['listenTo'](this['_trackChangesService'],'connected',_0x2d5059=>{_0x2d5059['off'](),_0x4ed32c();});});}async['_fetchMissingUsersForThreads'](_0x5d138b){const _0x23cc2e=this['editor']['plugins']['get'](_0x5f01ed),{connection:_0x7ee2f2}=this['editor']['plugins']['get'](c),_0x4ca1e5=new Set();for(const {authorId:_0x3ea46c}of _0x5d138b)_0x23cc2e['getUser'](_0x3ea46c)||_0x4ca1e5['add'](_0x3ea46c);if(0x0===_0x4ca1e5['size'])return;const _0x3cf66f=await gt['getMany'](_0x7ee2f2,Array['from'](_0x4ca1e5));for(const _0x337d7d of _0x3cf66f)_0x23cc2e['getUser'](_0x337d7d['id'])||_0x23cc2e['addUser'](_0x337d7d);}}function nt(_0x2700d3){if(vt(_0x2700d3))return new Promise(()=>{});throw _0x2700d3;}function vt(_0x1b5fbc){return _0x1b5fbc['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x1b5fbc['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}class m extends _0x46e1aa{static get['requires'](){return['Comments',a,n,c];}static get['pluginName'](){return'RealTimeCollaborativeComments';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['init'](){const _0x26f7d0=this['editor']['plugins']['get'](c),_0x1bc3a6=this['editor']['plugins']['get']('CommentsEditing'),_0x3b4ec5=this['editor']['plugins']['get'](a);return this['editor']['data']['once']('ready',()=>{this['listenTo'](_0x26f7d0,'change:state',(_0x57fccf,_0xac6906,_0x1b0ba2)=>{_0x1bc3a6['isThreadsLoadingPaused']='connected'!==_0x1b0ba2;});}),this['listenTo'](_0x26f7d0,'change:state',(_0x457caf,_0x28bd02,_0x586c9b)=>{this['editor']['plugins']['get']('CommentsRepository')['switchReadOnly']('connected'!==_0x586c9b);}),_0x3b4ec5['_setUpService'](this['editor']['config']['get']('collaboration.channelId'));}['destroy'](){this['editor']['plugins']['get'](a)['_terminateService'](this['editor']['config']['get']('collaboration.channelId')),super['destroy']();}}class p extends _0x46e1aa{static get['requires'](){return[m,f,'TrackChanges'];}static get['pluginName'](){return'RealTimeCollaborativeTrackChanges';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}class u extends _0x46e1aa{static ['RevisionHistoryService']=/* #__PURE__ -- @preserve */
28
+ ((()=>rt)());['_lastRequestId'];['_revisionTracker'];['_revisionHistoryService'];['_oldOffset'];static get['requires'](){return[c,l,'RevisionHistory',i,_0x5f01ed];}static get['pluginName'](){return'CloudServicesRevisionHistoryAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x17f49f){super(_0x17f49f);const _0x335698=this['editor']['config']['get']('collaboration.channelId');this['_lastRequestId']=null,this['_revisionTracker']=this['editor']['plugins']['get']('RevisionTracker'),this['_revisionHistoryService']=new u['RevisionHistoryService'](_0x335698);}async['init'](){const _0x307dda=this['editor']['plugins']['get'](l),_0x302daf=_0x307dda['serverHistory'],_0x3ec80e=this['editor']['plugins']['get'](c);this['_revisionTracker']['setSource']({'history':_0x302daf,'getLatestVersion':()=>this['_getLatestVersion'](),'getCurrentRevisionId':()=>_0x307dda['sessionId']});const _0x269cb7=this['editor']['config']['get']('cloudServices.bundleVersion')||ht,_0x30671e=await it['isBundleUploaded'](_0x3ec80e['connection'],_0x269cb7);this['editor']['plugins']['get']('RevisionHistory')['adapter']={'getRevision':async({revisionId:_0x48c4e3})=>(await this['_waitForServiceReady'](),await this['_revisionHistoryService']['getRevision'](_0x48c4e3)),'updateRevisions':async _0x7a7c6=>{await this['_waitForServiceReady']();const _0x5ab65c=this['_revisionTracker']['currentRevision'];if(_0x30671e&&0x1===_0x7a7c6['length']&&_0x7a7c6[0x0]['id']===_0x5ab65c['id'])return _0x7a7c6;for(const _0x46db6e of _0x7a7c6)_0x46db6e['id']===_0x5ab65c['id']&&(_0x46db6e['isEmptyCurrent']=_0x46db6e['fromVersion']===_0x46db6e['toVersion']);return this['_revisionHistoryService']['updateRevisions'](_0x7a7c6,this['_lastRequestId'])['then'](_0x55c42b=>(this['_lastRequestId']=_0x55c42b,_0x7a7c6))['catch'](_0x294261=>{if(ct(_0x294261)||'400'===_0x294261['code']&&void 0x0!==_0x294261['data']['wrongRequestId']){for(const _0x4d4cc6 of _0x7a7c6){!this['_revisionTracker']['repository']['getRevision'](_0x4d4cc6['id'])||this['_revisionTracker']['_bufferUpdate'](_0x4d4cc6['id'],_0x4d4cc6,!0x1);}if(ct(_0x294261))throw _0x294261;return _0x7a7c6;}throw _0x294261;});}},this['listenTo'](this['_revisionHistoryService'],'revisionsUpdated',(_0x17edb2,{revisionsData:_0x1e3201,requestId:_0x38286a})=>{Math['max'](..._0x1e3201['map'](_0x20e882=>_0x20e882['toVersion']))>this['_getLatestVersionFromServerOperations']()-0x1?this['_getLatestVersion']()['then'](()=>{this['_handleRevisionsUpdate'](_0x1e3201,_0x38286a);}):this['_handleRevisionsUpdate'](_0x1e3201,_0x38286a);});const {revisions:_0x1232fe,requestId:_0x15b16e}=await this['_revisionHistoryService']['connect'](_0x3ec80e['connection']);_0x3ec80e['addToReconnectionStack'](this),this['_lastRequestId']=_0x15b16e,await this['_fetchMissingUsers'](_0x1232fe);for(const _0x292ae1 of _0x1232fe)this['_revisionTracker']['addRevisionData'](_0x292ae1);this['listenTo'](_0x307dda,'change:_isConnected',(_0x9c72bc,_0x6d156e,_0x122582)=>{_0x122582&&(this['_oldOffset']=_0x307dda['_offset'],_0x9c72bc['off']());}),this['_revisionTracker']['bind']('isEnabled')['to'](_0x3ec80e,'state',_0x3bf06f=>_0x3bf06f===_0x3b67d1['CONNECTED']);}async['reconnect'](){const _0x20ef5b=this['editor']['plugins']['get'](c),_0x207c3f=this['editor']['plugins']['get'](l),_0x43d0e1=async()=>{const _0x2d3083=this['_revisionTracker']['currentRevision'],_0x1ce002=_0x2d3083['id'],_0xfac4f=_0x1ce002!==_0x207c3f['sessionId'];if(_0xfac4f){const _0x35aa4f=_0x207c3f['_offset']-this['_oldOffset'],_0x24e302=this['_getLatestVersionFromServerOperations']();this['_revisionTracker']['_revisionDataBuilder']['reInit']();if(_0x2d3083['toVersion']+_0x35aa4f!==_0x24e302){const _0x5ab289=_0x2d3083['fromVersion']+_0x35aa4f,_0x1851ce=this['editor']['plugins']['get'](_0x5f01ed),_0x1a9109=this['_revisionTracker']['buildRevisionData']({'revision':_0x2d3083,'from':_0x5ab289,'to':_0x24e302});_0x1a9109['id']=_0x2d3083['id'];const _0x469c5b=_0x1a9109['authorsIds']['map'](_0x5c25b2=>_0x1851ce['getUser'](_0x5c25b2));_0x2d3083['_update']({..._0x1a9109,'authors':_0x469c5b},!0x0),this['_revisionTracker']['_bufferUpdate'](_0x2d3083['id'],_0x1a9109,!0x0);}this['_revisionTracker']['_startingVersion']=_0x24e302,(_0x2d3083['toVersion']===_0x2d3083['fromVersion']&&!this['_revisionTracker']['_bufferedUpdates']['has'](_0x1ce002)&&this['_revisionTracker']['repository']['_revisions']['remove'](_0x1ce002),this['_revisionTracker']['_createCurrentRevision'](_0x24e302));}const {revisions:_0x592087,requestId:_0x3c9d0b}=await this['_revisionHistoryService']['reconnect'](_0x20ef5b['connection'],this['_lastRequestId']);_0xfac4f&&_0x592087['length']>0x0?_0x207c3f['_handleReconnectionError']():(await this['_fetchMissingUsers'](_0x592087),this['_handleRevisionsUpdate'](_0x592087,_0x3c9d0b),this['_revisionTracker']['sendBufferedUpdates']());};return _0x207c3f['_isConnected']?_0x43d0e1():new Promise((_0x3eb775,_0x2031c1)=>{_0x207c3f['once']('change:_isConnected',()=>{_0x43d0e1()['then'](_0x3eb775)['catch'](_0x2031c1);});});}['destroy'](){super['destroy']();}async['_waitForServiceReady'](){this['_revisionHistoryService']['isConnected']||await new Promise(_0x4ef851=>{this['listenTo'](this['_revisionHistoryService'],'connected',_0x8243d4=>{_0x8243d4['off'](),_0x4ef851();});});}['_getLatestVersionFromServerOperations'](){const _0x536381=this['editor']['plugins']['get'](l)['serverHistory']['getOperations']()['reverse']();for(const _0x274cc0 of _0x536381)if('marker'!==_0x274cc0['type']||_0x274cc0['affectsData'])return _0x274cc0['baseVersion']+0x1;}['_getLatestVersion'](){const _0x554145=this['editor']['plugins']['get'](l);return new Promise(_0x2ab6ca=>{_0x554145['_isPendingUpdate']?_0x554145['once']('change:_isPendingUpdate',()=>{_0x2ab6ca(this['_getLatestVersionFromServerOperations']());}):_0x2ab6ca(this['_getLatestVersionFromServerOperations']());});}['_handleRevisionsUpdate'](_0x487133,_0x2d31ab){const _0x33aa32=this['_revisionTracker']['repository'];this['_lastRequestId']=_0x2d31ab;for(const _0x537616 of _0x487133){const _0x2a3a6e=_0x33aa32['getRevision'](_0x537616['id']);if(_0x2a3a6e){if((_0x537616['fromVersion']||_0x537616['toVersion'])&&(_0x537616['diffData']=null),_0x2a3a6e===this['_revisionTracker']['currentRevision']){const _0x4b0e28=Math['max'](_0x2a3a6e['toVersion'],_0x537616['toVersion']),_0x1178c0=Math['max'](_0x2a3a6e['fromVersion'],_0x537616['fromVersion']);let _0x338ced;_0x2a3a6e['toVersion']===_0x537616['toVersion']&&_0x2a3a6e['fromVersion']===_0x537616['fromVersion']?(_0x338ced=!0x0,this['_preventResendingRevisionData'](_0x537616)):_0x537616['toVersion']===_0x4b0e28&&_0x537616['fromVersion']===_0x1178c0?_0x338ced=!0x1:(_0x2a3a6e['toVersion']===_0x4b0e28&&_0x2a3a6e['fromVersion']===_0x1178c0||this['_fixRevision']({'revision':_0x2a3a6e,'from':_0x1178c0,'to':_0x4b0e28}),_0x338ced=!0x0),_0x338ced&&(delete _0x537616['fromVersion'],delete _0x537616['toVersion'],delete _0x537616['diffData'],delete _0x537616['createdAt'],delete _0x537616['authorsIds']);}this['_revisionTracker']['setRevisionData'](_0x537616),this['_preventResendingRevisionData'](_0x537616);}else this['_revisionTracker']['addRevisionData'](_0x537616);}const _0x1bc47f=_0x33aa32['getRevisions']();_0x1bc47f['reverse']();for(let _0x1c30b2=0x0;_0x1c30b2<_0x1bc47f['length']-0x1;_0x1c30b2++){const _0x10a395=_0x1bc47f[_0x1c30b2],_0x56fbbf=_0x1bc47f[_0x1c30b2+0x1];if(_0x10a395['fromVersion']<_0x56fbbf['toVersion']){const _0x5b91be=_0x56fbbf['toVersion'],_0x2782e3=Math['max'](_0x5b91be,_0x10a395['toVersion']);this['_fixRevision']({'revision':_0x10a395,'from':_0x5b91be,'to':_0x2782e3});}}}['_fixRevision']({revision:_0x3278b9,from:_0x5e260e,to:_0x56bc00}={}){const _0x362488=this['editor']['plugins']['get'](_0x5f01ed),_0x3dbdae=this['_revisionTracker']['buildRevisionData']({'revision':_0x3278b9,'from':_0x5e260e,'to':_0x56bc00});_0x3dbdae['authors']=_0x3dbdae['authorsIds']['map'](_0x167371=>_0x362488['getUser'](_0x167371)),_0x3278b9['_update'](_0x3dbdae);}['_preventResendingRevisionData'](_0x140185){const _0xd62c72={};_0xd62c72['id']=_0x140185['id'];for(const _0xe9d80b of Object['keys'](_0x140185))'id'!==_0xe9d80b&&(_0xd62c72[_0xe9d80b]=void 0x0);this['_revisionTracker']['_bufferUpdate'](_0xd62c72['id'],_0xd62c72,!0x0);}async['_fetchMissingUsers'](_0x32193b){const _0x3917b9=this['editor']['plugins']['get'](_0x5f01ed),{connection:_0x451248}=this['editor']['plugins']['get'](c),_0x4a2fd2=new Set();for(const _0x5e2734 of _0x32193b){for(const _0x87cb72 of _0x5e2734['authorsIds'])_0x211ebf(_0x87cb72);_0x5e2734['creatorId']&&_0x211ebf(_0x5e2734['creatorId']);}if(0x0===_0x4a2fd2['size'])return;const _0x125f2b=await gt['getMany'](_0x451248,Array['from'](_0x4a2fd2));for(const _0x338062 of _0x125f2b)_0x3917b9['getUser'](_0x338062['id'])||_0x3917b9['addUser'](_0x338062);function _0x211ebf(_0x1e07a7){_0x3917b9['getUser'](_0x1e07a7)||_0x4a2fd2['add'](_0x1e07a7);}}}function ct(_0x42e620){return _0x42e620['message']['startsWith']('cloud-services-internal-error:\x20Revision\x20History\x20Service\x20is\x20not\x20connected.')||_0x42e620['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x42e620['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}class g extends _0x46e1aa{static get['requires'](){return['RevisionHistory',u,n];}static get['pluginName'](){return'RealTimeCollaborativeRevisionHistory';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}class A extends _0x52ca26{['_collapseAt'];constructor(_0x2c1754,_0x6ac1c=0x6){super(_0x2c1754);const _0x5be003=this['bindTemplate'];this['set']('isHidden',!0x0),this['set']('usersCount',0x0),this['_collapseAt']=_0x6ac1c,this['bind']('isHidden')['to'](this,'usersCount',_0x54b564=>_0x54b564<_0x6ac1c),this['setTemplate']({'tag':'div','attributes':{'class':['ck','ck-presence-list__list-item',_0x5be003['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':_0x5be003['to']('usersCount',_0x3fec53=>'+'+(_0x3fec53-this['_collapseAt']+0x2)['toString']())}]}]}]});}}class ts extends _0x52ca26{['items'];['keystrokes'];constructor(_0x143eb8){super(_0x143eb8);const _0x47946d=this['bindTemplate'];this['items']=this['createCollection'](),this['keystrokes']=new _0x289bea(),this['set']({'hasPopup':!0x1,'isExpanded':!0x1}),this['setTemplate']({'tag':'div','attributes':{'aria-haspopup':_0x47946d['if']('hasPopup'),'aria-expanded':_0x47946d['to']('isExpanded',_0x36a3eb=>this['hasPopup']&&String(_0x36a3eb)),'aria-label':_0x47946d['to']('hasPopup',_0x51e0fd=>M(_0x143eb8,_0x51e0fd?'Collapsed\x20connected\x20users\x20list\x20(press\x20ENTER\x20to\x20open\x20it)':'Connected\x20users\x20list')),'role':'list','tabindex':_0x47946d['to']('hasPopup',_0x5b27b2=>!!_0x5b27b2&&0x0),'class':['ck','ck-presence-list__list']},'children':this['items'],'on':{'mouseenter':_0x47946d['to'](()=>this['fire']('presencelist:show')),'mouseleave':_0x47946d['to'](_0x518dba=>{const _0x1b2d91=_0x518dba,_0x567126=document['querySelector']('.ck-presence-list__dropdown-list'),_0x3441b4=document['querySelector']('.ck-balloon-panel_with-arrow');_0x567126?.['contains'](_0x1b2d91['relatedTarget'])||_0x3441b4?.['contains'](_0x1b2d91['relatedTarget'])||this['fire']('presencelist:hide');})}}),this['on']('change:hasPopup',(_0x51070b,_0x399df7,_0x23f15e)=>{this['element']&&(_0x23f15e?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 j extends _0x52ca26{['counterView'];['inlineListView'];constructor(_0x4edcf3,_0x42100c=0x6){super(_0x4edcf3);const _0x2b2815=this['bindTemplate'];this['set']('isCollapsed',!0x0),this['counterView']=new A(this['locale'],_0x42100c),this['inlineListView']=new ts(_0x4edcf3),this['inlineListView']['bind']('hasPopup')['to'](this,'isCollapsed'),this['listenTo'](this['inlineListView']['items'],'change',()=>{for(const _0x15ab34 of this['inlineListView']['items'])_0x15ab34['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',_0x2b2815['if']('isCollapsed','ck-presence-list--collapsed')]},'children':[this['inlineListView']]});}}class x extends _0x52ca26{['listWrapperView'];constructor(_0xa832d2,_0x2831dc){super(_0xa832d2);const _0x1b5bbc=this['bindTemplate'];this['listWrapperView']=new _t(_0xa832d2,_0x2831dc),this['setTemplate']({'tag':'div','attributes':{'tabindex':-0x1,'role':'application','class':['ck','ck-presence-list__dropdown-list'],'aria-label':M(_0xa832d2,'Connected\x20users\x20list\x20dropdown\x20menu')},'children':[this['listWrapperView']],'on':{'mouseleave':_0x1b5bbc['to'](_0x3df10f=>{const _0x1defcd=_0x3df10f,_0x307998=document['querySelector']('.ck-presence-list__list'),_0x233733=document['querySelector']('.ck-balloon-panel_with-arrow');_0x307998?.['contains'](_0x1defcd['relatedTarget'])||_0x233733?.['contains'](_0x1defcd['relatedTarget'])||this['fire']('presencelist:hide');})}});}}class _t extends _0x5c2b3f{constructor(_0x4c51fa,_0x585065){super(_0x4c51fa);const _0x28f1fb=this['bindTemplate'];this['set']('_isScrollable',!0x1),this['setTemplate']({'tag':_0x585065?'div':'ul','attributes':{'class':['ck','ck-reset','ck-list','ck-presence-list__dropdown-list-wrapper',_0x28f1fb['if']('_isScrollable','ck-presence-list__dropdown-list-wrapper_scrollable')],'role':_0x28f1fb['to']('role'),'aria-label':_0x28f1fb['to']('ariaLabel'),'aria-labelledby':_0x28f1fb['to']('ariaLabelledBy')},'children':this['items']}),this['listenTo'](_0x4aa1a9['window'],'resize',()=>this['checkIfScrollable']()),this['items']['on']('change',()=>this['checkIfScrollable']());}['render'](){super['render'](),this['checkIfScrollable']();}['checkIfScrollable'](){const _0x5a4cb4=this['element'];_0x5a4cb4&&(this['_isScrollable']=Math['max'](_0x5a4cb4['scrollHeight'],_0x5a4cb4['clientHeight'])>0.8*window['innerHeight']);}}class k extends lt{['userView'];constructor(_0x15161f,_0x5efd7a,_0x20bccd){super(_0x15161f);const _0x3f7ea8=this['bindTemplate'];this['userView']=new ut(_0x15161f,_0x5efd7a);const _0x245572={'tag':'li','attributes':{'class':['ck','ck-presence-list__dropdown-list-item'],'tabindex':-0x1,'role':'presentation','aria-label':_0x5efd7a['name']},'children':[this['userView'],{'tag':'span','attributes':{'class':['ck','ck-user__full-name']},'children':[{'text':_0x5efd7a['name']}]},{'tag':'span','attributes':{'class':['ck','ck-presence-list__marker',_0x5efd7a['color']['getBackgroundColorClass']()],'aria-hidden':'true'}}]};_0x20bccd&&(_0x245572['tag']='button',_0x245572['on']={'click':_0x3f7ea8['to'](()=>this['fire']('execute'))}),this['setTemplate'](_0x245572);}['focus'](){this['element']['focus']();}}class y extends _0x52ca26{['userView'];['markerView'];constructor(_0xad89da,_0x1cd5cf,_0x46a504){super(_0xad89da);const _0x1a057f=this['bindTemplate'];this['set']('isFocusable',!0x1),this['set']('hasTooltip',!0x0),this['set']('tooltipPosition',''),this['userView']=new ut(_0xad89da,_0x1cd5cf),this['markerView']=new dt(_0xad89da,_0x1cd5cf);const _0x23c58a=new pt(_0xad89da);_0x23c58a['template']['tag']='span',_0x23c58a['text']=_0x1cd5cf['name'];const _0x178911={'tag':'div','attributes':{'class':['ck','ck-presence-list__list-item'],'role':'listitem','tabindex':_0x1a057f['to']('isFocusable',_0x9f8e62=>!!_0x9f8e62&&0x0),'aria-labelledby':_0x23c58a['id'],'data-cke-tooltip-text':this['userView']['name'],'data-cke-tooltip-position':_0x1a057f['to']('tooltipPosition'),'data-cke-tooltip-disabled':_0x1a057f['to']('hasTooltip',_0x2b90a6=>!_0x2b90a6),'data-cke-tooltip-class':'ck-presence-list__list-item__tooltip'},'children':[this['userView'],this['markerView'],_0x23c58a]};_0x46a504&&(_0x178911['tag']='button',_0x178911['on']={'click':_0x1a057f['to'](()=>this['fire']('execute'))}),this['setTemplate'](_0x178911);}}class dt extends _0x52ca26{constructor(_0xfe0b7e,_0x3c9ca9){super(_0xfe0b7e),this['setTemplate']({'tag':'span','attributes':{'class':['ck','ck-presence-list__marker',_0x3c9ca9['color']['getBackgroundColorClass']()],'aria-hidden':'true'}});}}const C={'collapseAt':0x6,'displayMe':!0x0};class r extends _0x5608fb{['currentDisplayedUsers'];['balloonPanelView'];['view'];['presenceDropdownView'];['_bodyCollection']=null;static get['pluginName'](){return'PresenceListUI';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x4fed95){super(_0x4fed95),this['context']['config']['define']('presenceList',C);const _0x4a409b=_0x4fed95['config']['get']('presenceList.collapseAt');if('number'!=typeof _0x4a409b)throw new _0x26a8d4('presencelist-collapseat-invalid-format',this);if(_0x4a409b<0x1)throw new _0x26a8d4('presencelist-collapseat-invalid-format',this);this['_allConnectedUsers']=this['context']['plugins']['get'](i)['allConnectedUsers'],this['set']('usersCount',0x0),this['currentDisplayedUsers']=new _0x19740c(),this['balloonPanelView']=new _0x5b0ca7(),this['balloonPanelView']['class']='ck\x20ck-presence-list__balloon',this['view']=this['_createView'](),this['presenceDropdownView']=void 0x0;}static get['requires'](){return[i];}['init'](){for(const _0xe5cf0 of this['_allConnectedUsers'])this['_handleUserAdd'](_0xe5cf0);this['listenTo'](this['_allConnectedUsers'],'add',(_0x3266b6,_0x378734)=>{this['_handleUserAdd'](_0x378734);}),this['listenTo'](this['_allConnectedUsers'],'remove',(_0xdd374,_0x2cb7fd)=>{this['_handleUserRemove'](_0x2cb7fd);});}['_createView'](){const _0x3000e1=this['context'],_0x7ab9a3=new j(this['context']['locale'],this['context']['config']['get']('presenceList.collapseAt')),_0x1392d9=this['balloonPanelView'];if(!_0x107f30(_0x3000e1['config']['get']('presenceList.container')))throw new _0x26a8d4('presencelist-missing-container',this);return _0x7ab9a3['counterView']['bind']('usersCount')['to'](this),_0x7ab9a3['bind']('isCollapsed')['to'](this,'usersCount',_0x1cebb8=>{const {collapseAt:_0x70d017}=_0x3000e1['config']['get']('presenceList'),_0x5fe789=_0x1cebb8>=_0x70d017;if(_0x5fe789&&!_0x7ab9a3['inlineListView']['items']['find'](_0x33fe68=>_0x33fe68 instanceof A)){const _0x3dd2ab=this['context']['config']['get']('presenceList.collapseAt')-0x1;this['currentDisplayedUsers']['length']==_0x3dd2ab&&this['currentDisplayedUsers']['length']>0x1&&this['currentDisplayedUsers']['remove'](this['currentDisplayedUsers']['length']-0x1),_0x7ab9a3['inlineListView']['items']['add'](_0x7ab9a3['counterView']);}return _0x5fe789||this['hideDropdown'](),_0x5fe789;}),_0x7ab9a3['inlineListView']['items']['bindTo'](this['currentDisplayedUsers'])['using'](_0x5cb29=>{const _0x29ca10=_0x3000e1['config']['get']('presenceList'),_0x4e6e7a=new y(_0x3000e1['locale'],_0x5cb29,!!_0x29ca10['onClick']);return _0x4e6e7a['bind']('hasTooltip')['to'](_0x7ab9a3,'isCollapsed',_0xb07867=>!_0xb07867),_0x4e6e7a['bind']('isFocusable')['to'](_0x7ab9a3,'isCollapsed',_0x31991e=>!_0x31991e),_0x29ca10['onClick']&&this['listenTo'](_0x4e6e7a,'execute',()=>{this['view']['isCollapsed']||_0x29ca10['onClick'](_0x5cb29,_0x4e6e7a['element']);}),_0x4e6e7a;}),this['listenTo'](_0x7ab9a3['inlineListView'],'presencelist:show',()=>{this['view']['isCollapsed']&&this['showDropdown']();}),this['listenTo'](_0x7ab9a3['inlineListView'],'presencelist:hide',()=>{this['presenceDropdownView']&&this['hideDropdown']();}),_0x7ab9a3['inlineListView']['keystrokes']['set']('Enter',(_0x490abc,_0x1d7823)=>{this['view']['isCollapsed']&&(this['showDropdown'](),_0x1d7823());}),_0x7ab9a3['render'](),_0x1392d9['render'](),_0x4155b7({'emitter':_0x7ab9a3,'activator':()=>_0x1392d9['isVisible'],'contextElements':[_0x1392d9['element'],_0x7ab9a3['inlineListView']['element']],'callback':()=>this['hideDropdown']()}),_0x3000e1['config']['get']('presenceList.container')['appendChild'](_0x7ab9a3['element']),this['_bodyCollection']=new _0x5583ac(this['context']['locale']),this['_bodyCollection']['attachToDom'](),this['_bodyCollection']['add'](this['balloonPanelView']),_0x7ab9a3;}['_handleUserAdd'](_0x5276a8){if(!this['context']['config']['get']('presenceList.displayMe')&&_0x5276a8['isMe'])return;const _0x3c00b2=this['context']['config']['get']('presenceList.collapseAt')-0x1;for(this['usersCount']++;this['currentDisplayedUsers']['length']>=_0x3c00b2-(this['view']['isCollapsed']?0x1:0x0)&&this['currentDisplayedUsers']['length']>0x1;)this['currentDisplayedUsers']['remove'](0x1);const _0x2a8d93=_0x5276a8['isMe']?0x0:this['currentDisplayedUsers']['length'];this['currentDisplayedUsers']['add'](_0x5276a8,_0x2a8d93);}['_handleUserRemove'](_0x17b476){this['usersCount']--;const {collapseAt:_0x260628}=this['context']['config']['get']('presenceList'),_0x12b105=this['usersCount']>=_0x260628;if(this['currentDisplayedUsers']['get'](_0x17b476['id']))this['currentDisplayedUsers']['remove'](_0x17b476['id']);else{if(_0x12b105&&this['currentDisplayedUsers']['length']+0x1===_0x260628-0x1)return;}if(this['currentDisplayedUsers']['length']+(_0x12b105?0x1:0x0)<this['usersCount']){for(const _0x186518 of Array['from'](this['_allConnectedUsers'])['reverse']())if(!this['currentDisplayedUsers']['get'](_0x186518['id'])&&(this['currentDisplayedUsers']['add'](_0x186518,Math['min'](this['currentDisplayedUsers']['length']-(_0x12b105?0x1:0x0),0x1)),this['currentDisplayedUsers']['length']+(_0x12b105?0x1:0x0)===_0x260628-0x1))return;}}['showDropdown'](){if(this['presenceDropdownView'])return;const _0x2c1d14=this['context']['config']['get']('presenceList');this['presenceDropdownView']=new x(this['context']['locale'],!!_0x2c1d14['onClick']),this['view']['inlineListView']['isExpanded']=!0x0,this['listenTo'](this['presenceDropdownView'],'presencelist:hide',()=>{this['presenceDropdownView']&&this['hideDropdown']();});const {listWrapperView:_0x3c9aa7}=this['presenceDropdownView'];_0x3c9aa7['items']['bindTo'](this['_allConnectedUsers'])['using'](_0x419eda=>{if(!_0x2c1d14['displayMe']&&_0x419eda['isMe'])return null;const _0x1e8097=new k(this['context']['locale'],_0x419eda,!!_0x2c1d14['onClick']);return _0x2c1d14['onClick']&&this['listenTo'](_0x1e8097,'execute',()=>{_0x2c1d14['onClick'](_0x419eda,_0x1e8097['element']);}),_0x1e8097;}),this['balloonPanelView']['content']['add'](this['presenceDropdownView']),this['balloonPanelView']['pin']({'target':this['view']['inlineListView']['element']}),_0x3c9aa7['focus'](),_0x3c9aa7['checkIfScrollable']();const _0x4ed57b=(_0x58fdbb,_0x487f48)=>{this['hideDropdown'](),this['view']['inlineListView']['focus'](),_0x487f48();};_0x3c9aa7['keystrokes']['set']('Esc',_0x4ed57b),_0x3c9aa7['keystrokes']['set']('Shift+Tab',_0x4ed57b),_0x3c9aa7['keystrokes']['set']('Tab',(_0x3a15ac,_0x289437)=>{!function(_0x315511){const _0x3b4f0f=['a','button','input','select','textarea','[tabindex]','[contenteditable]']['map'](_0xa7b944=>_0xa7b944+':not([disabled]):not([tabindex=\x22-1\x22])')['join'](','),_0x3d3d2f=[...document['body']['querySelectorAll'](_0x3b4f0f)]['filter'](_0x33d851=>_0x33d851===document['activeElement']||_0x33d851['offsetWidth']+_0x33d851['offsetHeight']>0x0)['sort']((_0x4b34ec,_0x34e5e6)=>(_0x4b34ec['tabIndex']||0x0)-(_0x34e5e6['tabIndex']||0x0)),_0x5c6435=_0x3d3d2f['indexOf'](_0x315511),_0x1698ff=_0x3d3d2f[(_0x5c6435+0x1)%_0x3d3d2f['length']];_0x1698ff&&_0x1698ff['focus']();}(this['view']['element']),this['hideDropdown'](),_0x289437();}),_0x3c9aa7['focusTracker']['add'](this['view']['element']),_0x3c9aa7['focusTracker']['on']('change:isFocused',(_0x3c6644,_0x454e59,_0xfc4e56)=>{_0xfc4e56||this['hideDropdown']();});}['hideDropdown'](){this['presenceDropdownView']&&(this['view']['inlineListView']['isExpanded']=!0x1,this['balloonPanelView']['unpin'](),this['balloonPanelView']['content']['remove'](this['presenceDropdownView']),this['presenceDropdownView']['destroy'](),this['presenceDropdownView']=void 0x0);}['destroy'](){super['destroy'](),this['view']&&this['view']['isRendered']&&this['view']['destroy'](),this['_bodyCollection']&&(this['_bodyCollection']['detachFromDom'](),this['_bodyCollection']['destroy'](),this['_bodyCollection']=null);}}class s extends _0x5608fb{static get['requires'](){return[i,r];}static get['pluginName'](){return'PresenceList';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}export{a as CloudServicesCommentsAdapter,u as CloudServicesRevisionHistoryAdapter,f as CloudServicesTrackChangesAdapter,s as PresenceList,r as PresenceListUI,l as RealTimeCollaborationClient,m as RealTimeCollaborativeComments,n as RealTimeCollaborativeEditing,g as RealTimeCollaborativeRevisionHistory,p as RealTimeCollaborativeTrackChanges,i as Sessions};
@@ -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':_0x4c7733=>0x1!=_0x4c7733}};
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':_0x398a22=>0x1!=_0x398a22}};