@ckeditor/ckeditor5-real-time-collaboration 47.4.0-alpha.3 → 47.4.0-alpha.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (170) hide show
  1. package/build/real-time-collaboration.js +2 -2
  2. package/dist/index.js +6 -6
  3. package/dist/translations/af.js +1 -1
  4. package/dist/translations/af.umd.js +1 -1
  5. package/dist/translations/ar.js +1 -1
  6. package/dist/translations/ar.umd.js +1 -1
  7. package/dist/translations/ast.js +1 -1
  8. package/dist/translations/ast.umd.js +1 -1
  9. package/dist/translations/az.js +1 -1
  10. package/dist/translations/az.umd.js +1 -1
  11. package/dist/translations/be.js +1 -1
  12. package/dist/translations/be.umd.js +1 -1
  13. package/dist/translations/bg.js +1 -1
  14. package/dist/translations/bg.umd.js +1 -1
  15. package/dist/translations/bn.js +1 -1
  16. package/dist/translations/bn.umd.js +1 -1
  17. package/dist/translations/bs.js +1 -1
  18. package/dist/translations/bs.umd.js +1 -1
  19. package/dist/translations/ca.js +1 -1
  20. package/dist/translations/ca.umd.js +1 -1
  21. package/dist/translations/cs.js +1 -1
  22. package/dist/translations/cs.umd.js +1 -1
  23. package/dist/translations/da.js +1 -1
  24. package/dist/translations/da.umd.js +1 -1
  25. package/dist/translations/de-ch.js +1 -1
  26. package/dist/translations/de-ch.umd.js +1 -1
  27. package/dist/translations/de.js +1 -1
  28. package/dist/translations/de.umd.js +1 -1
  29. package/dist/translations/el.js +1 -1
  30. package/dist/translations/el.umd.js +1 -1
  31. package/dist/translations/en-au.js +1 -1
  32. package/dist/translations/en-au.umd.js +1 -1
  33. package/dist/translations/en-gb.js +1 -1
  34. package/dist/translations/en-gb.umd.js +1 -1
  35. package/dist/translations/en.js +1 -1
  36. package/dist/translations/en.umd.js +1 -1
  37. package/dist/translations/eo.js +1 -1
  38. package/dist/translations/eo.umd.js +1 -1
  39. package/dist/translations/es-co.js +1 -1
  40. package/dist/translations/es-co.umd.js +1 -1
  41. package/dist/translations/es.js +1 -1
  42. package/dist/translations/es.umd.js +1 -1
  43. package/dist/translations/et.js +1 -1
  44. package/dist/translations/et.umd.js +1 -1
  45. package/dist/translations/eu.js +1 -1
  46. package/dist/translations/eu.umd.js +1 -1
  47. package/dist/translations/fa.js +1 -1
  48. package/dist/translations/fa.umd.js +1 -1
  49. package/dist/translations/fi.js +1 -1
  50. package/dist/translations/fi.umd.js +1 -1
  51. package/dist/translations/fr.js +1 -1
  52. package/dist/translations/fr.umd.js +1 -1
  53. package/dist/translations/gl.js +1 -1
  54. package/dist/translations/gl.umd.js +1 -1
  55. package/dist/translations/gu.js +1 -1
  56. package/dist/translations/gu.umd.js +1 -1
  57. package/dist/translations/he.js +1 -1
  58. package/dist/translations/he.umd.js +1 -1
  59. package/dist/translations/hi.js +1 -1
  60. package/dist/translations/hi.umd.js +1 -1
  61. package/dist/translations/hr.js +1 -1
  62. package/dist/translations/hr.umd.js +1 -1
  63. package/dist/translations/hu.js +1 -1
  64. package/dist/translations/hu.umd.js +1 -1
  65. package/dist/translations/hy.js +1 -1
  66. package/dist/translations/hy.umd.js +1 -1
  67. package/dist/translations/id.js +1 -1
  68. package/dist/translations/id.umd.js +1 -1
  69. package/dist/translations/it.js +1 -1
  70. package/dist/translations/it.umd.js +1 -1
  71. package/dist/translations/ja.js +1 -1
  72. package/dist/translations/ja.umd.js +1 -1
  73. package/dist/translations/jv.js +1 -1
  74. package/dist/translations/jv.umd.js +1 -1
  75. package/dist/translations/kk.js +1 -1
  76. package/dist/translations/kk.umd.js +1 -1
  77. package/dist/translations/km.js +1 -1
  78. package/dist/translations/km.umd.js +1 -1
  79. package/dist/translations/kn.js +1 -1
  80. package/dist/translations/kn.umd.js +1 -1
  81. package/dist/translations/ko.js +1 -1
  82. package/dist/translations/ko.umd.js +1 -1
  83. package/dist/translations/ku.js +1 -1
  84. package/dist/translations/ku.umd.js +1 -1
  85. package/dist/translations/lt.js +1 -1
  86. package/dist/translations/lt.umd.js +1 -1
  87. package/dist/translations/lv.js +1 -1
  88. package/dist/translations/lv.umd.js +1 -1
  89. package/dist/translations/ms.js +1 -1
  90. package/dist/translations/ms.umd.js +1 -1
  91. package/dist/translations/nb.js +1 -1
  92. package/dist/translations/nb.umd.js +1 -1
  93. package/dist/translations/ne.js +1 -1
  94. package/dist/translations/ne.umd.js +1 -1
  95. package/dist/translations/nl.js +1 -1
  96. package/dist/translations/nl.umd.js +1 -1
  97. package/dist/translations/no.js +1 -1
  98. package/dist/translations/no.umd.js +1 -1
  99. package/dist/translations/oc.js +1 -1
  100. package/dist/translations/oc.umd.js +1 -1
  101. package/dist/translations/pl.js +1 -1
  102. package/dist/translations/pl.umd.js +1 -1
  103. package/dist/translations/pt-br.js +1 -1
  104. package/dist/translations/pt-br.umd.js +1 -1
  105. package/dist/translations/pt.js +1 -1
  106. package/dist/translations/pt.umd.js +1 -1
  107. package/dist/translations/ro.js +1 -1
  108. package/dist/translations/ro.umd.js +1 -1
  109. package/dist/translations/ru.js +1 -1
  110. package/dist/translations/ru.umd.js +1 -1
  111. package/dist/translations/si.js +1 -1
  112. package/dist/translations/si.umd.js +1 -1
  113. package/dist/translations/sk.js +1 -1
  114. package/dist/translations/sk.umd.js +1 -1
  115. package/dist/translations/sl.js +1 -1
  116. package/dist/translations/sl.umd.js +1 -1
  117. package/dist/translations/sq.js +1 -1
  118. package/dist/translations/sq.umd.js +1 -1
  119. package/dist/translations/sr-latn.js +1 -1
  120. package/dist/translations/sr-latn.umd.js +1 -1
  121. package/dist/translations/sr.js +1 -1
  122. package/dist/translations/sr.umd.js +1 -1
  123. package/dist/translations/sv.js +1 -1
  124. package/dist/translations/sv.umd.js +1 -1
  125. package/dist/translations/th.js +1 -1
  126. package/dist/translations/th.umd.js +1 -1
  127. package/dist/translations/ti.js +1 -1
  128. package/dist/translations/ti.umd.js +1 -1
  129. package/dist/translations/tk.js +1 -1
  130. package/dist/translations/tk.umd.js +1 -1
  131. package/dist/translations/tr.js +1 -1
  132. package/dist/translations/tr.umd.js +1 -1
  133. package/dist/translations/tt.js +1 -1
  134. package/dist/translations/tt.umd.js +1 -1
  135. package/dist/translations/ug.js +1 -1
  136. package/dist/translations/ug.umd.js +1 -1
  137. package/dist/translations/uk.js +1 -1
  138. package/dist/translations/uk.umd.js +1 -1
  139. package/dist/translations/ur.js +1 -1
  140. package/dist/translations/ur.umd.js +1 -1
  141. package/dist/translations/uz.js +1 -1
  142. package/dist/translations/uz.umd.js +1 -1
  143. package/dist/translations/vi.js +1 -1
  144. package/dist/translations/vi.umd.js +1 -1
  145. package/dist/translations/zh-cn.js +1 -1
  146. package/dist/translations/zh-cn.umd.js +1 -1
  147. package/dist/translations/zh.js +1 -1
  148. package/dist/translations/zh.umd.js +1 -1
  149. package/package.json +14 -14
  150. package/src/common-translations.js +1 -1
  151. package/src/index.js +1 -1
  152. package/src/presencelist/presencelistui.js +1 -1
  153. package/src/presencelist/view/presencecounterview.js +1 -1
  154. package/src/presencelist/view/presencedropdownlistitemview.js +1 -1
  155. package/src/presencelist/view/presencedropdownlistview.js +1 -1
  156. package/src/presencelist/view/presenceinlinelistitemview.js +1 -1
  157. package/src/presencelist/view/presenceinlinelistview.js +1 -1
  158. package/src/presencelist/view/presencelistview.js +1 -1
  159. package/src/presencelist.js +1 -1
  160. package/src/realtimecollaborativecomments/cloudservicescommentsadapter.js +2 -2
  161. package/src/realtimecollaborativecomments.js +1 -1
  162. package/src/realtimecollaborativeediting/realtimecollaborationclient.js +2 -2
  163. package/src/realtimecollaborativeediting/sessions.js +1 -1
  164. package/src/realtimecollaborativeediting/usermarkers.js +1 -1
  165. package/src/realtimecollaborativeediting/websocketgateway.js +2 -2
  166. package/src/realtimecollaborativeediting.js +1 -1
  167. package/src/realtimecollaborativerevisionhistory/cloudservicesrevisionhistoryadapter.js +2 -2
  168. package/src/realtimecollaborativerevisionhistory.js +1 -1
  169. package/src/realtimecollaborativetrackchanges/cloudservicestrackchangesadapter.js +2 -2
  170. package/src/realtimecollaborativetrackchanges.js +1 -1
package/dist/index.js CHANGED
@@ -20,9 +20,9 @@
20
20
  *
21
21
  *
22
22
  */
23
- import{ContextPlugin as _0x1a80af,Plugin as _0x232b47,PendingActions as _0x442e85,Context as _0x385ab6}from'@ckeditor/ckeditor5-core/dist/index.js';import{DomEmitterMixin as _0x15cddd,CKEditorError as _0x529824,Collection as _0x462cb9,global as _0x201d53,version as nt,uid as _0x4bb96a,KeystrokeHandler as _0x2494c}from'@ckeditor/ckeditor5-utils/dist/index.js';import{Notification as _0x3a6344,View as _0x210562,ListView as _0x4fbea9,ListItemView as rt,LabelView as ot,BalloonPanelView as _0x581a51,clickOutsideHandler as _0x4762a9,BodyCollection as _0x2f368f}from'@ckeditor/ckeditor5-ui/dist/index.js';import{ModelLiveRange as _0x1ce98f,History as _0x2afaa7,NoOperation as _0x54fab5,InsertOperation as _0x52a187,MarkerOperation as _0x2cd4a0,RootAttributeOperation as _0x5ed840,transformOperationSets as _0x498326,OperationFactory as _0x406a32}from'@ckeditor/ckeditor5-engine/dist/index.js';import{WebSocketGateway as ht,WEB_SOCKET_GATEWAY_STATES as te,CollaborativeEditingService as _0x2c56b6,User as lt,CommentsService as _0x229c97,TrackChangesService as et,RevisionHistoryService as it,EditorService as tt}from'@ckeditor/ckeditor-cloud-services-collaboration/dist/index.js';import{Users as _0x1ff91e,UserView as ct}from'ckeditor5-collaboration/dist/index.js';import{Compressor as _0x26a909}from'@ckeditor/ckeditor5-operations-compressor/dist/index.js';import{isElement as _0x3d9807}from'es-toolkit/compat';class n extends _0x1a80af{static ['WebSocketGateway']=/* #__PURE__ -- @preserve */
24
- ((()=>ht)());static ['initialReconnectionInterval']=0x3e8;['connection'];['_reconnectionStack'];['_shouldPluginsReconnect'];['_domEmitter'];static get['requires'](){return['CloudServices',_0x3a6344];}static get['pluginName'](){return'WebSocketGateway';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x5873c7){super(_0x5873c7),this['set']('state',te['CONNECTED']),this['set']('_isBrowserOffline',!0x1),this['_reconnectionStack']=new Set(),this['_shouldPluginsReconnect']=!0x1,this['_domEmitter']=new(_0x15cddd())();}['init'](){const _0x5beb12=this['context'],_0x137873=_0x5beb12['plugins']['get']('CloudServices'),_0x486337=_0x5beb12['plugins']['get'](_0x3a6344);if(!_0x137873['token'])throw new _0x529824('websocketgateway-missing-token',this);if(!_0x137873['webSocketUrl'])throw new _0x529824('websocketgateway-missing-websocket-url',this);return this['_domEmitter']['listenTo'](window,'offline',()=>this['_isBrowserOffline']=!0x0),this['_domEmitter']['listenTo'](window,'online',()=>this['_isBrowserOffline']=!0x1),this['context']['config']['define']('cloudServices.connectionTimeout',0xa),this['context']['config']['define']('cloudServices.requestTimeout',0x14),n['WebSocketGateway']['connect'](_0x137873['token'],_0x137873['webSocketUrl'],{'timeout':0x3e8*this['context']['config']['get']('cloudServices.connectionTimeout'),'requestTimeout':0x3e8*this['context']['config']['get']('cloudServices.requestTimeout')})['then'](_0x8dc9f7=>{if(this['connection']=_0x8dc9f7,this['bind']('state')['to'](_0x8dc9f7,'state',this,'_isBrowserOffline',(_0x43510f,_0x5c95c9)=>('connected'!==_0x43510f&&(this['_shouldPluginsReconnect']=!0x0),_0x5c95c9||_0x43510f!==te['CONNECTED']?te['DISCONNECTED']:this['state']==te['DISCONNECTED']&&this['_shouldPluginsReconnect']?(this['_shouldPluginsReconnect']=!0x1,this['_reconnect'](),te['CONNECTING']):te['CONNECTED'])),this['connection']['on']('error',(_0xe76ffb,_0x3d754c)=>{if('limitExceeded'!==_0x3d754c['code'])throw console['error'](_0x3d754c),new _0x529824('cloudservices-init',null,{'originalError':_0x3d754c});_0x486337['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'});}),!_0x8dc9f7['me'])return new Promise(_0x33d9f3=>_0x8dc9f7['on']('change:me',_0x33d9f3));})['catch'](_0x376926=>{throw console['error'](_0x376926),new _0x529824('cloudservices-init',null,{'originalError':_0x376926});});}['addToReconnectionStack'](_0x56d45a){if('function'!=typeof _0x56d45a['reconnect'])throw new _0x529824('websocketgateway-invalid-plugin-interface',this);if(this['isInReconnectionStack'](_0x56d45a))throw new _0x529824('websocketgateway-plugin-already-registered',this,{'name':_0x56d45a['constructor']['pluginName']});this['_reconnectionStack']['add'](_0x56d45a);}['removeFromReconnectionStack'](_0x1eb6e5){this['_reconnectionStack']['delete'](_0x1eb6e5);}['isInReconnectionStack'](_0xce74aa){return this['_reconnectionStack']['has'](_0xce74aa);}['_reconnect'](){return this['connection']['reconnect']()['then'](()=>Promise['all'](Array['from'](this['_reconnectionStack'],_0x296369=>_0x296369['reconnect']())))['then'](()=>this['state']=te['CONNECTED'])['catch'](_0x2b8199=>{throw console['error'](_0x2b8199),new _0x529824('cloudservices-reconnection-error',this['context']);});}['disconnect'](){this['connection']&&this['connection']['disconnect'](),this['state']=te['DISCONNECTED'],this['_domEmitter']['stopListening']();}['destroy'](){this['disconnect'](),super['destroy']();}}class i extends _0x1a80af{['channelSessions'];['channelConnectedUsers'];['allConnectedUsers'];['_registeredSessions'];['_uniqueUsersCount'];['_users'];static get['pluginName'](){return'Sessions';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}static get['requires'](){return[n,_0x1ff91e];}constructor(_0x46d716){super(_0x46d716),this['channelSessions']=new Map(),this['channelConnectedUsers']=new Map(),this['allConnectedUsers']=new _0x462cb9(),this['_registeredSessions']=new Map(),this['_uniqueUsersCount']=0x0,this['_users']=this['context']['plugins']['get'](_0x1ff91e);}['init'](){const _0x5e9679=this['context']['plugins']['get'](n);this['listenTo'](_0x5e9679,'change:state',(_0x2afe8c,_0x2dfc84,_0xa4fdab)=>{if('connected'!==_0xa4fdab)this['channelSessions']['forEach'](_0x506a7c=>_0x506a7c['clear']()),this['channelConnectedUsers']['forEach'](_0x206185=>_0x206185['clear']()),this['allConnectedUsers']['clear']();else{for(const [_0x17250d,_0xcc91a0]of this['_registeredSessions'])for(const _0x55b402 of _0xcc91a0)this['_handleSessionAdd'](_0x17250d,_0x55b402);}}),this['_createUser'](_0x5e9679['connection']['me'],!0x0);}['register'](_0x4d873e,_0x560e07){if(this['_registeredSessions']['has'](_0x4d873e))throw new _0x529824('sessions-register-already-registered',null,{'channelId':_0x4d873e});this['_registeredSessions']['set'](_0x4d873e,_0x560e07),this['channelSessions']['set'](_0x4d873e,new _0x462cb9()),this['channelConnectedUsers']['set'](_0x4d873e,new _0x462cb9()),this['listenTo'](_0x560e07,'add',(_0x3387f0,_0x3b58ec)=>this['_handleSessionAdd'](_0x4d873e,_0x3b58ec)),this['listenTo'](_0x560e07,'remove',(_0x217fa7,_0x8a9531)=>this['_handleSessionRemove'](_0x4d873e,_0x8a9531));for(const _0x2397ff of _0x560e07)this['_handleSessionAdd'](_0x4d873e,_0x2397ff);}['unregister'](_0x1b48aa){if(!this['_registeredSessions']['has'](_0x1b48aa))throw new _0x529824('sessions-unregister-not-exist',null,{'channelId':_0x1b48aa});const _0x28ce2b=this['_registeredSessions']['get'](_0x1b48aa);this['stopListening'](_0x28ce2b);for(const _0x4b45d7 of _0x28ce2b)'connected'===this['context']['plugins']['get'](n)['state']&&this['_handleSessionRemove'](_0x1b48aa,_0x4b45d7);this['_registeredSessions']['delete'](_0x1b48aa),this['channelSessions']['delete'](_0x1b48aa),this['channelConnectedUsers']['delete'](_0x1b48aa);}get['mySessionId'](){return this['context']['plugins']['get'](n)['connection']['sessionId'];}['getUserBySessionId'](_0x55029e){for(const _0x115ca9 of this['channelSessions']['values']())for(const _0x2bac61 of _0x115ca9)if(_0x2bac61['id']===_0x55029e)return _0x2bac61['user'];}['getUserSessions'](_0x5f3767,_0xc711c5){const _0x1a3f46=_0xc711c5?[this['channelSessions']['get'](_0xc711c5)]:this['channelSessions']['values'](),_0x24862b=new Set();for(const _0x2ab880 of _0x1a3f46)for(const _0x344a93 of _0x2ab880)_0x344a93['user']['id']===_0x5f3767['id']&&_0x24862b['add'](_0x344a93['id']);return _0x24862b;}['getUserRole'](_0x2329c0){for(const _0x6f947e of this['channelSessions']['values']())for(const _0x439a31 of _0x6f947e)if(_0x439a31['user']===_0x2329c0)return _0x439a31['role'];}['_handleSessionAdd'](_0x1b1a59,_0x53a955){if('connected'!==this['context']['plugins']['get'](n)['state'])return;const _0x1c72e8=_0x53a955['user'],_0x305ce7=this['_users']['getUser'](_0x1c72e8['id'])||this['_createUser'](_0x1c72e8),_0x10e502=Object['assign']({},_0x53a955,{'user':_0x305ce7});if(this['channelSessions']['get'](_0x1b1a59)['add'](_0x10e502),!_0x1c72e8['hiddenInPresenceList']){const _0x179990=this['channelConnectedUsers']['get'](_0x1b1a59);_0x179990['has'](_0x305ce7['id'])||_0x179990['add'](_0x305ce7),this['allConnectedUsers']['has'](_0x305ce7['id'])||_0x1c72e8['hiddenInPresenceList']||this['allConnectedUsers']['add'](_0x305ce7,_0x305ce7['isMe']?0x0:void 0x0);}this['fire']('sessionAdd:'+_0x1b1a59,{'channelId':_0x1b1a59,'session':_0x10e502});}['_handleSessionRemove'](_0x4f9979,_0x2d97e4){if('connected'!==this['context']['plugins']['get'](n)['state'])return;const _0x4d497c=this['channelConnectedUsers']['get'](_0x4f9979),_0x3bea35=_0x2d97e4['user'];_0x3bea35['id']&&(this['channelSessions']['get'](_0x4f9979)['remove'](_0x2d97e4['id']),_0x4d497c['has'](_0x3bea35['id'])&&!this['getUserSessions'](_0x3bea35,_0x4f9979)['size']&&_0x4d497c['remove'](_0x3bea35['id']),this['allConnectedUsers']['get'](_0x3bea35['id'])&&!this['getUserSessions'](_0x3bea35)['size']&&this['allConnectedUsers']['remove'](_0x3bea35['id']));}['_createUser'](_0x4c6e17,_0x3d9703){const _0x4df4f7=this['_users']['addUser'](_0x4c6e17);return _0x3d9703&&this['_users']['defineMe'](_0x4c6e17['id']),_0x4df4f7['orderNumber']=this['_uniqueUsersCount']++,_0x4df4f7;}}class H extends _0x232b47{['_domEmitter']=new(_0x15cddd())();static get['requires'](){return[i];}static get['pluginName'](){return'UserMarkers';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['init'](){const _0x4df3d0=this['editor'],_0x529e3d=_0x4df3d0['plugins']['get'](i);_0x4df3d0['conversion']['for']('editingDowncast')['markerToElement']({'model':'user:position','view':(_0x40224e,{writer:_0x5caaed})=>function(_0x2058db,_0x5be00d,_0xe14b1d,_0x50ef97){const _0x574907=_0x2058db['markerName']['split'](':')[0x2],_0x4a9e41=_0xe14b1d['getUserBySessionId'](_0x574907);if(!_0x4a9e41||_0x574907===_0xe14b1d['mySessionId'])return;if(!_0x50ef97['model']['schema']['checkChild'](_0x2058db['markerRange']['start'],'$text'))return;const _0xc68de2={'class':'ck-user__marker\x20'+_0x4a9e41['color']['getMarkerClass'](),'data-name':_0x4a9e41['name'],'data-session-id':_0x574907},_0x1ed0fc=_0x50ef97['model']['markers']['get'](_0x2058db['markerName']),_0x2ed067=_0x1ed0fc['getStart'](),_0x17ba23=_0x2ed067['nodeAfter'],_0x220277=_0x50ef97['model']['schema'];if(_0x17ba23&&_0x220277['isObject'](_0x17ba23)&&_0x220277['isInline'](_0x17ba23)&&!_0x50ef97['model']['markers']['get']('user:range:'+_0x574907)['getRange']()['isCollapsed'])return;const _0x17f087=_0x2ed067['parent'];return _0x50ef97['model']['schema']['isLimit'](_0x17f087)&&!_0x50ef97['model']['hasContent'](_0x17f087)&&(_0xc68de2['contenteditable']=!0x1),function(_0x36bc32,_0x8e7b1c,_0x3422ab){const _0x10fbbc=_0x36bc32['createUIElement']('span',_0x8e7b1c);return _0x36bc32['setCustomProperty']('userPositionMarker',!0x0,_0x10fbbc),_0x10fbbc['render']=function(_0x2374e6){const _0x680e19=this['toDomElement'](_0x2374e6),_0x3d2361=document['createElement']('span');return _0x3d2361['classList']['add']('ck-user__marker-tooltip'),_0x3d2361['setAttribute']('contenteditable','false'),_0x3d2361['setAttribute']('spellcheck','false'),_0x3d2361['textContent']=_0x3422ab['name'],_0x680e19['innerHTML']='⁠<span\x20class=\x22ck-user__marker-line\x22\x20contenteditable=\x22false\x22><span\x20class=\x22ck-user__marker-dot\x22></span></span>'+_0x3d2361['outerHTML']+'⁠',_0x680e19['addEventListener']('mouseenter',()=>{_0x680e19['classList']['add']('ck-user__marker_hovered');}),_0x680e19['addEventListener']('mouseleave',()=>{_0x680e19['classList']['remove']('ck-user__marker_hovered');}),_0x680e19;},_0x10fbbc['isSimilar']=function(_0x59947b){return!(!this['getCustomProperty']('userPositionMarker')||!_0x59947b['getCustomProperty']('userPositionMarker')||this['getAttribute']('data-session-id')!=_0x59947b['getAttribute']('data-session-id'));},_0x10fbbc;}(_0x5be00d,_0xc68de2,_0x4a9e41);}(_0x40224e,_0x5caaed,_0x529e3d,_0x4df3d0)}),_0x4df3d0['conversion']['for']('editingDowncast')['markerToHighlight']({'model':'user:range','view':_0x64e31c=>function(_0x1ba58f,_0x5b4162){const _0x410d8d=_0x1ba58f['markerName']['split'](':')[0x2];if(_0x410d8d===_0x5b4162['mySessionId'])return null;const _0x3f332b=_0x5b4162['getUserBySessionId'](_0x410d8d);if(!_0x3f332b)return{'id':_0x410d8d,'classes':[]};return{'id':_0x410d8d,'classes':['ck-user__selection',_0x3f332b['color']['getSelectionClass']()],'attributes':{'data-session-id':_0x410d8d},'priority':0x7d0+_0x3f332b['orderNumber']};}(_0x64e31c,_0x529e3d)}),function(_0xb4f225){const _0x25f9a0=_0xb4f225['model'],_0x200fc9=new Map(),_0x4371f9=_0xb4f225['plugins']['get'](i);_0x25f9a0['markers']['on']('update:user:range',(_0x39e7d1,_0x6b6818,_0x592763,_0x5317fe)=>{if(!_0x5317fe&&_0x200fc9['get'](_0x6b6818['name']))return _0x200fc9['get'](_0x6b6818['name'])['detach'](),void _0x200fc9['delete'](_0x6b6818['name']);const _0xd86dac=_0x6b6818['name']['split'](':')[0x2];if(_0xd86dac===_0x4371f9['mySessionId'])return;const _0x22c775='user:position:'+_0xd86dac;_0x25f9a0['markers']['has'](_0x22c775)&&_0xb4f225['editing']['reconvertMarker'](_0x22c775),_0x6b6818['on']('change:range',(_0xb3067a,_0x5eea26,_0x41d5b2)=>{if('$graveyard'!=_0x5eea26['root']['rootName']&&'$graveyard'==_0x6b6818['getRange']()['root']['rootName']&&!_0x200fc9['has'](_0x6b6818['name'])){const _0x1e1415=_0x25f9a0['schema']['getNearestSelectionRange'](_0x41d5b2['deletionPosition']);if(_0x1e1415){const _0x284255=_0x1ce98f['fromRange'](_0x1e1415);_0x200fc9['set'](_0x6b6818['name'],_0x284255),_0x284255['on']('change:range',(_0x4df1a3,_0x5e18d7,_0x440192)=>{if('$graveyard'==_0x284255['root']['rootName']){const _0x1426b4=_0x25f9a0['schema']['getNearestSelectionRange'](_0x440192['deletionPosition']);_0x1426b4?(_0x284255['start']=_0x1426b4['start'],_0x284255['end']=_0x1426b4['end']):(_0x200fc9['delete'](_0x6b6818['name']),_0x284255['detach']());}});}}});}),_0x25f9a0['document']['on']('change',()=>{_0x200fc9['size']>0x0&&_0x25f9a0['enqueueChange']({'isUndoable':!0x1},_0x10a646=>{for(const [_0x2272d6,_0x1c0db1]of _0x200fc9)'$graveyard'==_0x25f9a0['markers']['get'](_0x2272d6)['getRange']()['root']['rootName']&&(Z(_0x2272d6['split'](':')[0x2],_0x1c0db1['toRange'](),_0x25f9a0,_0x10a646),_0x1c0db1['detach']());_0x200fc9['clear']();});});}(_0x4df3d0),this['_domEmitter']['listenTo'](_0x201d53['document'],'keydown',(_0x83b34d,{key:_0x40d032})=>{'Escape'===_0x40d032&&function(_0x304d6c){_0x304d6c['editing']['view']['change'](_0x441e55=>{for(const _0x56d06c of _0x304d6c['model']['markers']){if(!_0x56d06c['name']['startsWith']('user:position'))continue;const _0xb3b7bb=_0x304d6c['editing']['mapper']['markerNameToElements'](_0x56d06c['name']);if(_0xb3b7bb){for(const _0x2098f2 of _0xb3b7bb)_0x441e55['removeClass']('ck-user__marker_hovered',_0x2098f2);}}});}(_0x4df3d0);},{'useCapture':!0x0});}['afterInit'](){const _0x194bda=this['editor'],_0x2b00eb=_0x194bda['commands']['get']('undo');_0x2b00eb&&_0x194bda['model']['on']('applyOperation',(_0x5da204,_0x20ff8f)=>{const _0x51034a=_0x20ff8f[0x0];if(!_0x51034a['isDocumentOperation'])return;if('marker'!=_0x51034a['type']||!_0x51034a['name']['startsWith']('user:'))return;const _0x3fe4cd=_0x51034a['batch'];_0x2b00eb['_createdBatches']['has'](_0x3fe4cd)&&(_0x51034a['newRange']=_0x51034a['oldRange']?_0x194bda['model']['createRange'](_0x51034a['oldRange']['start'],_0x51034a['oldRange']['end']):null);},{'priority':'highest'});}['destroy'](){return this['_domEmitter']['stopListening'](),super['destroy']();}['createUserMarkerOperations'](){const _0x3dbff4=this['editor'],_0x297b9e=_0x3dbff4['model']['document'],_0xc59916=_0x3dbff4['plugins']['get'](i);_0x3dbff4['model']['enqueueChange']({'isUndoable':!0x1},_0x31cb0e=>{const _0x397914='user:range:'+_0xc59916['mySessionId'],_0xa962f9='user:position:'+_0xc59916['mySessionId'],_0x2b2cb5=_0x3dbff4['model']['markers']['has'](_0x397914);_0x3dbff4['editing']['view']['hasDomSelection']?Z(_0xc59916['mySessionId'],_0x297b9e['selection']['getFirstRange'](),_0x3dbff4['model'],_0x31cb0e):_0x2b2cb5&&(_0x31cb0e['removeMarker'](_0x397914),_0x31cb0e['removeMarker'](_0xa962f9));});}}function Z(_0x586be5,_0x34c006,_0x537c6b,_0x1e7654){const _0x17a0ef='user:range:'+_0x586be5,_0x2a13a3='user:position:'+_0x586be5,_0x1576d5=_0x34c006['getContainedElement']();let _0x101d9f=_0x34c006['start'];if(_0x1576d5&&_0x1576d5['is']('element','tableCell')){const _0x24238c=function(_0x3c6aa5,_0x489611){for(const _0x393b55 of _0x3c6aa5['getPositions']())if(_0x489611['schema']['checkChild'](_0x393b55,'$text'))return _0x393b55;}(_0x34c006,_0x537c6b);_0x24238c&&(_0x101d9f=_0x24238c,_0x34c006=_0x1e7654['createRange'](_0x101d9f));}const _0x4ea3d9=_0x1e7654['createRange'](_0x101d9f);_0x537c6b['markers']['has'](_0x17a0ef)?(_0x1e7654['updateMarker'](_0x17a0ef,{'range':_0x34c006}),_0x1e7654['updateMarker'](_0x2a13a3,{'range':_0x4ea3d9})):(_0x1e7654['addMarker'](_0x17a0ef,{'range':_0x34c006,'usingOperation':!0x0}),_0x1e7654['addMarker'](_0x2a13a3,{'range':_0x4ea3d9,'usingOperation':!0x0}));}function V(_0x3473c5,_0x26877b,_0x40797e){const _0x48e2eb=_0x3473c5['t'],t=_0x3473c5['t'];switch(_0x26877b){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 _0x48e2eb({'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'},_0x40797e);default:return'';}}let G=0x1;class l extends _0x232b47{static ['CollaborativeEditingService']=/* #__PURE__ -- @preserve */
25
- ((()=>_0x2c56b6)());['_offset'];['sessionId'];['serverHistory'];['_channelId'];['_service'];['_document'];['_compressor'];['_bufferedOperations'];['_knownOperations'];['_knownRootNames'];['_pendingAction'];['_hasSelectionChanged'];['_sendBufferedOperationsDelayId'];['_baseBufferDelay'];['_currentBufferDelay'];['_lastSyncedOperationId'];['_disconnectionOperations'];['_operationIdentifier'];static get['requires'](){return[n,i,H,_0x442e85,_0x1ff91e,_0x3a6344];}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 _0x49f4c3=this['serverHistory']['getOperations']();for(let _0x5d3afb=_0x49f4c3['length']-0x1;_0x5d3afb>=0x0;_0x5d3afb--){const _0x3b01ba=_0x49f4c3[_0x5d3afb];if(!this['_disconnectionOperations']['has'](_0x3b01ba))return _0x3b01ba['baseVersion']+0x1-this['_offset'];}return 0x0;}constructor(_0x255403){if(super(_0x255403),this['_offset']=0x0,this['sessionId']=null,this['serverHistory']=new _0x2afaa7(),this['editor']['config']['define']('collaboration',{}),this['_channelId']=this['editor']['config']['get']('collaboration.channelId'),!this['_channelId'])throw new _0x529824('collaboration-missing-channelid',this);const _0x39aa00=_0x255403['config']['get']('cloudServices.bundleVersion')||nt;this['_service']=new l['CollaborativeEditingService'](_0x39aa00,this['_channelId']),this['_document']=this['editor']['model']['document'],this['_compressor']=new _0x26a909(),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 J(this['_disconnectionOperations']);}['init'](){const _0x59453f=this['editor'],_0x5e60d3=_0x59453f['plugins']['get'](_0x1ff91e),_0x44e24a=_0x59453f['plugins']['get'](n);this['listenTo'](_0x5e60d3,'getOperationAuthor',(_0x2ef997,_0x517b55)=>{const _0x5e7cc7=_0x517b55[0x0];_0x5e7cc7['_authorId']&&(_0x2ef997['return']=_0x5e60d3['getUser'](_0x5e7cc7['_authorId']),_0x2ef997['stop']()),null===_0x5e7cc7['_authorId']&&(_0x2ef997['return']=null,_0x2ef997['stop']());},{'priority':'high'}),this['listenTo'](_0x59453f['model']['document']['selection'],'change:range',(_0x7cfa06,_0x3cb7ee)=>{_0x3cb7ee['directChange']&&this['_refreshUserSelectionMarkers']();}),this['listenTo'](_0x59453f['editing']['view'],'change:hasDomSelection',()=>{this['_refreshUserSelectionMarkers']();}),this['_initThrowingOnDataSet'](),_0x59453f['model']['on']('applyOperation',(_0x365d9f,_0x1f2f9e)=>{const _0x482cf8=_0x1f2f9e[0x0];_0x482cf8['isDocumentOperation']&&(this['_saveOperationInBuffer'](_0x482cf8),this['_shouldSendUpdate']()&&this['_sendBufferedOperationsDelayed']());}),this['_setUpDataInit'](),this['bind']('_isEditingAllowed')['to'](_0x44e24a,'state',this,'_hasSynchronizationProblem',(_0x3f6857,_0x149c5b)=>'connected'===_0x3f6857&&!_0x149c5b),this['on']('change:_isEditingAllowed',()=>{this['_isEditingAllowed']?_0x59453f['disableReadOnlyMode']('rtc-offline'):_0x59453f['enableReadOnlyMode']('rtc-offline');}),this['_isEditingAllowed']?_0x59453f['disableReadOnlyMode']('rtc-offline'):_0x59453f['enableReadOnlyMode']('rtc-offline'),this['set']('_isConnected',!0x1);}async['reconnect'](){const _0x53848c=this['editor']['plugins']['get'](i),_0x2198fe=this['editor']['plugins']['get'](n);try{this['_isPendingUpdate']=!0x0,_0x53848c['unregister'](this['_channelId']);const _0x30c3e2=await this['_service']['reconnect'](_0x2198fe['connection'],this['lastSyncVersion']);await this['_handleReconnectionResponse'](_0x30c3e2)&&(this['_isPendingUpdate']=!0x1,this['_clearPendingAction']());const _0x4684df=await this['_service']['getConnectedSessions']();_0x53848c['register'](this['_channelId'],_0x4684df),this['_handleSendingSelectionMarkers'](),this['_isConnected']=!0x0;}catch(_0x2e8e8a){if(function(_0x1f280a){return'404'===_0x1f280a['code'];}(_0x2e8e8a)&&this['sessionId'])await this['_connectAfterSessionHasBeenFlushed']();else{if(function(_0x4ce34b){return'409'===_0x4ce34b['code'];}(_0x2e8e8a)){const _0x53190d=V(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'](_0x53190d);}else{if(!(_0x2e8e8a instanceof $))throw _0x2e8e8a;this['_handleReconnectionError']();}}}}['destroy'](){const _0x4ee0b1=this['editor']['plugins']['get'](n),_0x380811=this['editor']['plugins']['get'](i);this['editor']['enableReadOnlyMode']('rtc-destroyed'),_0x380811['channelSessions']['has'](this['_channelId'])&&_0x380811['unregister'](this['_channelId']),_0x4ee0b1['removeFromReconnectionStack'](this),this['_disconnectService'](),super['destroy']();}async['_handleReconnectionResponse'](_0x8ac3a){if(this['sessionId']!==_0x8ac3a['sessionId']&&this['_lastSyncedOperationId']!==_0x8ac3a['lastOperationId'])throw new $();return this['sessionId']=_0x8ac3a['sessionId'],this['_handleServerResponse']([],{..._0x8ac3a,'wereChangesApplied':!0x1,'data':_0x8ac3a['data']},'reconnect');}async['_connectService'](_0x20773b,_0xa6f675=!0x1){const {connection:_0x5e74a4}=this['editor']['plugins']['get'](n);l['CollaborativeEditingService']['getConnectedSessions'](_0x5e74a4,this['_channelId'])['then'](_0x429fb6=>this['_initSessionsHandling'](_0x429fb6))['catch'](_0x383674=>{this['_crash']('realtimecollaborationclient-init-session-connection-error',_0x383674);}),this['listenTo'](this['_service'],'operationsReceived',this['_handleReceivedOperations']['bind'](this)),this['listenTo'](this['_service'],'error',(_0x23e743,_0x42e0f6)=>{this['_crash']('realtimecollaborationclient-init-service-internal-error',_0x42e0f6);}),this['listenTo'](this['_service'],'disconnected',()=>{this['_isConnected']=!0x1;});const _0x2af59d=this['_operationIdentifier']['getIdOfTheLastOperation'](_0x20773b);this['_isPendingUpdate']=!0x0;const _0x2e7a93=await this['_service']['connect'](_0x5e74a4,this['_compressOperations'](_0x20773b),_0x2af59d);if(this['sessionId']=_0x2e7a93['sessionId'],_0xa6f675){if(!_0x2e7a93['wereChangesApplied'])return void this['_handleReconnectionError']();this['_isPendingUpdate']=!0x1,this['_clearPendingAction'](),this['serverHistory']['reset'](),this['_offset']=_0x2e7a93['offset'],this['serverHistory']['version']=this['_offset'],await this['_handleServerResponse'](_0x20773b,_0x2e7a93,'reconnection:\x20flushed\x20session');}else await this['_handleInitialConnectionData'](_0x2e7a93,_0x20773b);this['_handleSendingSelectionMarkers'](),this['_isConnected']=!0x0;}['_handleSendingSelectionMarkers'](){const _0x2dbdfc=this['editor']['plugins']['get'](i),_0x4298b7=this['editor']['plugins']['get'](H),_0x2a7d47=_0x2dbdfc['channelSessions']['get'](this['_channelId']);_0x2a7d47&&_0x2a7d47['length']>0x1?_0x4298b7['createUserMarkerOperations']():this['listenTo'](_0x2dbdfc,'sessionAdd:'+this['_channelId'],()=>{0x2===_0x2dbdfc['channelSessions']['get'](this['_channelId'])['length']&&_0x4298b7['createUserMarkerOperations']();});}async['_handleReceivedOperations'](_0x2919d0,_0x7e9f8c,_0x50895e,_0x284276){if(!this['_isPendingUpdate']&&this['_document']['version']==_0x7e9f8c){const _0x3f3f03=this['_decompressOperations'](_0x50895e,_0x284276);await this['_fetchMissingUsers'](_0x3f3f03),this['_handleExternalOperations'](_0x3f3f03,_0x7e9f8c,_0x50895e['lastOperationId'])||this['_crash']('realtimecollaborationclient-init-service-incorrect-server-operation');}}async['_connectAfterSessionHasBeenFlushed'](){this['_disconnectService']();const {locale:_0x102d9e}=this['editor'];let _0x140abc;try{_0x140abc=await this['_service']['getDocumentDetails']();}catch{const _0x287872=V(_0x102d9e,'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'](_0x287872);}const _0x307207=_0x140abc['currentDocumentSession']||_0x140abc['lastDocumentSession'];if(this['_lastSyncedOperationId']!==_0x307207['lastOperationId']){const _0x454ce9=V(_0x102d9e,'The\x20last\x20saved\x20version\x20of\x20the\x20document\x20does\x20not\x20match\x20the\x20local\x20version.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.');return void this['_handleReconnectionError'](_0x454ce9);}await this['_connectService'](this['editor']['model']['document']['history']['getOperations'](),!0x0);}['_disconnectService'](){this['_service']['disconnect'](),this['_bufferedOperations']=[],clearTimeout(this['_sendBufferedOperationsDelayId']),this['stopListening'](this['_service']);}['_initSessionsHandling'](_0x386986){const _0x4c102e=this['editor']['plugins']['get'](i);this['listenTo'](_0x4c102e,'sessionAdd:'+this['_channelId'],(_0x72b883,{session:_0x1e29cf})=>{if(_0x1e29cf['id']===_0x4c102e['mySessionId']){_0x72b883['off']();const _0x32cd4d=this['editor']['plugins']['has']('CommentsOnly')&&this['editor']['plugins']['get']('CommentsOnly');let _0x2a9231=_0x1e29cf['permissions'];_0x32cd4d&&_0x32cd4d['isEnabled']&&(_0x2a9231=_0x2a9231['filter'](_0x268629=>'document:write'!==_0x268629)),this['editor']['plugins']['get']('Permissions')['setPermissions'](_0x2a9231,this['_channelId']);}}),_0x4c102e['register'](this['_channelId'],_0x386986);}['_initThrowingOnDataSet'](){const _0xed6ecb=this['editor']['data']['set'];this['editor']['data']['set']=(..._0x58fd7f)=>{if(!_0x58fd7f[_0x58fd7f['length']-0x1]['suppressErrorInCollaboration'])throw new _0x529824('realtimecollaborationclient-editor-setdata-and-editor-data-set-are-forbidden-in-real-time-collaboration',this);_0xed6ecb['apply'](this['editor']['data'],_0x58fd7f);};}['_setUpDataInit'](){this['editor']['data']['on']('init',(_0x365f39,[_0x11b56d])=>{if(this['_document']['version'])throw new _0x529824('realtimecollaborationclient-init-document-already-initialized',this);_0x365f39['stop'](),this['_setPendingAction']();const _0x118122=this['editor']['config']['get']('rootsAttributes'),_0x40ae16=this['_getOperationsFromInitData'](_0x11b56d,_0x118122);0x0==_0x40ae16['length']&&_0x40ae16['push'](new _0x54fab5(0x0)),_0x365f39['return']=this['_connectService'](_0x40ae16)['then'](()=>{this['editor']['plugins']['get'](n)['addToReconnectionStack'](this),this['editor']['data']['fire']('ready');})['catch'](_0x28d9b6=>this['_crash']('realtimecollaborationclient-init-connection-failed',_0x28d9b6))['finally'](()=>this['_clearPendingAction']());},{'priority':'high'}),this['editor']['on']('loadRoot',async(_0x428cf7,[_0x434d41,_0x5832bf])=>{_0x428cf7['stop']();const _0x5337dc=this['editor']['model']['document']['getRoot'](_0x434d41);if(!this['_knownRootNames']['has'](_0x434d41)){const _0x48c4b8=_0x5832bf&&_0x5832bf['data']?_0x5832bf['data']:'',_0x2150e3=_0x5832bf&&_0x5832bf['attributes']?_0x5832bf['attributes']:{};await this['_loadRoot'](_0x434d41,_0x48c4b8,_0x2150e3);}this['editor']['model']['enqueueChange']({'isUndoable':!0x1},()=>{_0x5337dc['_isLoaded']=!0x0,this['editor']['model']['document']['differ']['_bufferRootLoad'](_0x5337dc);});},{'priority':'high'});}async['_fetchMissingUsers'](_0x110b37){const _0x407142=this['editor']['plugins']['get'](_0x1ff91e),{connection:_0x3536a4}=this['editor']['plugins']['get'](n),_0x4c7daf=new Set();for(const _0x3f2eb4 of _0x110b37){const _0x274c44=_0x3f2eb4['_authorId'];_0x274c44&&!_0x407142['getUser'](_0x274c44)&&_0x4c7daf['add'](_0x274c44);}if(0x0===_0x4c7daf['size'])return;const _0x423ff0=await lt['getMany'](_0x3536a4,Array['from'](_0x4c7daf));for(const _0x41e486 of _0x423ff0)_0x407142['getUser'](_0x41e486['id'])||_0x407142['addUser'](_0x41e486);}['_getOperationsFromInitData'](_0x4ad04a,_0x3f7b09={}){const _0x22c936=this['editor']['model'],_0x2baeae=[];let _0x114102=0x0;const _0x318172='string'==typeof _0x4ad04a?{'main':_0x4ad04a}:_0x4ad04a;for(const _0xc24be5 of Object['keys'](_0x318172)){if(!this['_document']['roots']['has'](_0xc24be5))throw new _0x529824('realtimecollaborationclient-init-non-existent-root',this);const _0x3e90fe=this['editor']['data']['parse'](_0x318172[_0xc24be5]),_0x343112=this['_document']['getRoot'](_0xc24be5),_0xbcc5a0=new _0x52a187(_0x22c936['createPositionAt'](_0x343112,0x0),_0x3e90fe,_0x114102++);_0x2baeae['push'](_0xbcc5a0);for(const [_0x351733,_0x28a94b]of _0x3e90fe['markers']){const _0xf0aef2=_0x22c936['createRange'](_0x22c936['createPositionFromPath'](_0x343112,_0x28a94b['start']['path']['slice']()),_0x22c936['createPositionFromPath'](_0x343112,_0x28a94b['end']['path']['slice']())),_0x227756=new _0x2cd4a0(_0x351733,null,_0xf0aef2,_0x22c936['markers'],!0x0,_0x114102++);_0x2baeae['push'](_0x227756);}}if(_0x3f7b09)for(const [_0x3b0a82,_0x5674da]of Object['entries'](_0x3f7b09)){const _0xde224b=_0x22c936['document']['getRoot'](_0x3b0a82);if(!_0xde224b)throw new _0x529824('multi-root-editor-root-attributes-no-root',null);for(const [_0x2ea23c,_0x42174e]of Object['entries'](_0x5674da))if(null!==_0x42174e){const _0x541e94=new _0x5ed840(_0xde224b,_0x2ea23c,null,_0x42174e,_0x114102++);_0x2baeae['push'](_0x541e94);}}return _0x2baeae;}async['_loadRoot'](_0x9f8c79,_0x1c800f,_0x316cbc){this['_getOperationsFromInitData']({[_0x9f8c79]:_0x1c800f},{[_0x9f8c79]:_0x316cbc})['forEach']((_0x317199,_0x3d330d)=>{_0x317199['baseVersion']=this['_document']['version']+_0x3d330d,_0x317199['_isInit']=!0x0,this['_saveOperationInBuffer'](_0x317199);}),this['_sendBufferedOperationsDelayed'](),await this['_waitUntilSynced']();}async['_handleInitialConnectionData'](_0xd1af44,_0x16acce){let _0xeca17d;this['_offset']=_0xd1af44['offset'];const _0x228d83=_0xd1af44['wereChangesApplied']&&!_0xd1af44['initData'],_0x3f25b5=_0x228d83?0x0:_0xd1af44['data']['baseVersion'];if(_0x16acce['forEach'](_0x48e857=>{_0x48e857['_isInit']=!0x0,_0x48e857['createdAt']=_0xd1af44['sessionCreatedAt'],_0x48e857['_authorId']=null;}),_0x228d83)_0xeca17d=_0x16acce,this['_applyOperationsSet'](_0xeca17d,_0x228d83);else{if(_0xd1af44['initData']){const _0x5d9e9e=this['_getOperationsFromInitData'](_0xd1af44['initData']);this['_document']['history']['version']=-_0x5d9e9e['length'],_0x5d9e9e['forEach'](_0x570e3a=>{_0x570e3a['baseVersion']-=_0x5d9e9e['length'],_0x570e3a['createdAt']=_0xd1af44['sessionCreatedAt'],_0x570e3a['_isInit']=!0x0,_0x570e3a['_authorId']=null;}),this['_applyOperationsSet'](_0x5d9e9e,!0x0),this['serverHistory']['version']=-_0x5d9e9e['length']+this['_offset'],this['_updateServerHistory'](_0x5d9e9e);}this['_document']['history']['version']=_0x3f25b5,_0xeca17d=this['_decompressOperations'](_0xd1af44['data'],_0xd1af44['metadata']),await this['_fetchMissingUsers'](_0xeca17d),this['_applyOperationsSet'](_0xeca17d,_0x228d83);}_0xd1af44['lastOperationId']&&(this['_operationIdentifier']['setIdForTheLastOperation'](_0xeca17d,_0xd1af44['lastOperationId']),this['_lastSyncedOperationId']=_0xd1af44['lastOperationId']),this['serverHistory']['version']=_0x3f25b5+this['_offset'],this['_updateServerHistory'](_0xeca17d),_0x16acce['filter'](_0x2104a0=>{const _0x456ee4=this['_getAffectedRoot'](_0x2104a0);return _0x456ee4&&!this['_knownRootNames']['has'](_0x456ee4);})['forEach']((_0x895dc8,_0x1a2bfc)=>{_0x895dc8['baseVersion']=this['_document']['version']+_0x1a2bfc,this['_saveOperationInBuffer'](_0x895dc8);}),this['_shouldSendUpdate']()?(this['_currentBufferDelay']=0x0,this['_sendBufferedOperationsDelayed'](!0x0),await this['_waitUntilSynced']()):(this['_isPendingUpdate']=!0x1,this['_clearPendingAction']());}['_crash'](_0x14c524,_0x58781c){const _0x9d31aa=_0x58781c&&_0x58781c['message'];if(_0x9d31aa&&_0x9d31aa['startsWith']('realtimecollaborationclient'))throw _0x58781c;const _0x5693ad=this['editor']['plugins']['get'](n);throw this['_isPendingUpdate']=!0x0,_0x5693ad['disconnect'](),this['editor']['enableReadOnlyMode']('realtimecollaborationclient-error'),new _0x529824(_0x14c524,this['editor'],_0x9d31aa?{'originalError':_0x9d31aa}:void 0x0);}['_saveOperationInBuffer'](_0x45bee2){this['_knownOperations']['has'](_0x45bee2)||(this['_knownOperations']['add'](_0x45bee2),this['_bufferedOperations']['push'](_0x45bee2),this['_pendingAction']||'marker'==_0x45bee2['type']&&!_0x45bee2['affectsData']||this['_setPendingAction']());}['_sendBufferedOperationsDelayed'](_0x95cfe8=!0x1){!_0x95cfe8&&this['_isPendingUpdate']||(this['_isPendingUpdate']=!0x0,clearTimeout(this['_sendBufferedOperationsDelayId']),this['_sendBufferedOperationsDelayId']=setTimeout(()=>{this['_sendBufferedOperations']()['then'](_0x586032=>{_0x586032&&(this['_clearPendingAction'](),this['_isPendingUpdate']=!0x1);})['catch'](_0x351c63=>{this['_clearPendingAction'](),this['_isPendingUpdate']=!0x1,function(_0x5d4f5f){return _0x5d4f5f['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x5d4f5f['message']['startsWith']('cloud-services-internal-error:\x20Collaborative\x20Editing\x20Service\x20is\x20not\x20connected.')||_0x5d4f5f['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}(_0x351c63)||this['_crash'](_0x351c63['message'],_0x351c63);});},this['_currentBufferDelay']));}['_waitUntilSynced'](){return new Promise(_0x32af9f=>{this['on']('change:_isPendingUpdate',()=>{_0x32af9f();});});}async['_sendBufferedOperations'](){const _0x48cc35=this['editor']['plugins']['get'](H);if(this['_shouldSendSelectionUpdate']()&&(_0x48cc35['createUserMarkerOperations'](),this['_hasSelectionChanged']=!0x1),!this['_shouldSendUpdate']())return!0x0;const _0x1f5185=[...this['_bufferedOperations']];for(const _0x2912a1 of _0x1f5185)_0x2912a1['wasUndone']=this['_document']['history']['isUndoneOperation'](_0x2912a1);const _0x5adb26=this['_operationIdentifier']['getIdOfTheLastOperation'](_0x1f5185),_0x75f16b=G++,_0x1c892b=this['_compressOperations'](_0x1f5185),_0x52afa9=await this['_service']['sendOperations'](_0x1c892b,_0x1c892b['baseVersion'],_0x5adb26);try{return await this['_handleServerResponse'](_0x1f5185,_0x52afa9,_0x75f16b);}catch(_0x1b622b){return this['_crash']('realtimecollaborationclient-sendbufferedoperations',_0x1b622b);}}async['_handleServerResponse'](_0x587052,_0x4af676,_0x31003d){if('error'in _0x4af676)throw _0x4af676['error'];let _0x2535d6=!0x1;if(_0x4af676['wereChangesApplied']){_0x4af676['lastOperationId']&&(this['_lastSyncedOperationId']=_0x4af676['lastOperationId']),this['_bufferedOperations']=this['_bufferedOperations']['filter'](_0x35875c=>!_0x587052['includes'](_0x35875c));for(const _0x44b932 of _0x587052)_0x44b932['createdAt']='lastOperationAcceptedAt'in _0x4af676&&_0x4af676['lastOperationAcceptedAt']||void 0x0;K(_0x587052,_0x4af676['version']-_0x587052['length']),this['_updateServerHistory'](_0x587052);const _0x33e46e=_0x587052['filter'](_0x329b40=>{if(!_0x329b40['_isInit'])return!0x1;const _0x345846=this['_getAffectedRoot'](_0x329b40);return _0x345846&&!this['_knownRootNames']['has'](_0x345846);});K(_0x33e46e,this['_document']['version']),this['_applyOperationsSet'](_0x33e46e),_0x2535d6=!0x0,this['_currentBufferDelay']=this['_baseBufferDelay'];}else{const _0x5f1fcb=this['_decompressOperations'](_0x4af676['data'],_0x4af676['metadata'])['filter'](_0x277488=>_0x277488['baseVersion']>=this['_lastServerVersion']);_0x5f1fcb['forEach'](_0x3b596d=>this['_addKnownRoot'](_0x3b596d)),this['_bufferedOperations']=this['_bufferedOperations']['filter'](_0xac9fff=>!_0xac9fff['_isInit']||!this['_knownRootNames']['has'](this['_getAffectedRoot'](_0xac9fff))),this['_bufferedOperations']['length']&&K(this['_bufferedOperations'],this['_bufferedOperations'][0x0]['baseVersion']),await this['_fetchMissingUsers'](_0x5f1fcb),_0x2535d6=this['_handleExternalOperations'](_0x5f1fcb,_0x4af676['version'],_0x4af676['lastOperationId']),this['_currentBufferDelay']=Math['round'](this['_currentBufferDelay']/0x2);}return _0x2535d6?!this['_shouldSendUpdate']()||(this['_sendBufferedOperationsDelayed'](!0x0),!0x1):this['_crash']('realtimecollaborationclient-handleserverresponse');}['_handleExternalOperations'](_0x1cd7c6,_0xd31acd,_0x581f60){try{const _0x4f06e0={'document':this['_document'],'useRelations':!0x1,'padWithNoOps':!0x0},{operationsA:_0x34b545,operationsB:_0x145efb,originalOperations:_0x3330ac}=_0x498326(_0x1cd7c6,this['_bufferedOperations'],_0x4f06e0);K(_0x34b545,this['_document']['version']),K(_0x145efb,_0xd31acd);for(const _0x26df58 of _0x34b545){const _0x28361f=_0x3330ac['get'](_0x26df58);_0x26df58['_authorId']=_0x28361f?_0x28361f['_authorId']:null;}_0x581f60&&(this['_operationIdentifier']['setIdForTheLastOperation'](_0x1cd7c6,_0x581f60),this['_lastSyncedOperationId']=_0x581f60),this['_bufferedOperations']=[..._0x145efb],this['_applyOperationsSet'](_0x34b545),this['_updateServerHistory'](_0x1cd7c6);}catch(_0x44558b){return console['error'](_0x44558b),!0x1;}return!0x0;}['_applyOperationsSet'](_0x250d3f,_0x537680=!0x1){this['editor']['model']['enqueueChange']({'isUndoable':!0x1,'isLocal':!0x1},_0x4bfbc5=>{for(const _0x30d84d of _0x250d3f)this['_knownOperations']['add'](_0x30d84d),this['_addKnownRoot'](_0x30d84d),_0x4bfbc5['batch']['addOperation'](_0x30d84d),this['editor']['model']['applyOperation'](_0x30d84d);});}['_addKnownRoot'](_0x496656){const _0x33547c=this['_getAffectedRoot'](_0x496656);_0x33547c&&this['_knownRootNames']['add'](_0x33547c);}['_getAffectedRoot'](_0x16bc00){let _0x4b2d50,_0x2d5a85;switch(_0x16bc00['type']){case'insert':_0x4b2d50=_0x16bc00['position']['root'];break;case'marker':if(_0x2d5a85=_0x16bc00['newRange'],!_0x2d5a85)return null;_0x4b2d50=_0x2d5a85['root'];break;case'addRootAttribute':_0x4b2d50=_0x16bc00['root'];break;case'addRoot':_0x4b2d50=_0x16bc00['affectedSelectable'];break;case'move':_0x4b2d50=_0x16bc00['targetPosition']['root'];break;default:return null;}return _0x4b2d50['rootName'];}['_updateServerHistory'](_0x2c43ed){_0x2c43ed['forEach'](_0x42ae4e=>{const _0x55cbf3=_0x42ae4e['clone']();_0x55cbf3['_authorId']=_0x42ae4e['_authorId'],_0x55cbf3['_isInit']=!!_0x42ae4e['_isInit'],_0x55cbf3['createdAt']=_0x42ae4e['createdAt'],_0x55cbf3['baseVersion']+=this['_offset'],_0x42ae4e['_isDisconnection']&&this['_disconnectionOperations']['add'](_0x55cbf3),this['serverHistory']['addOperation'](_0x55cbf3);});}['_handleReconnectionError'](_0x158aff){const _0x2495d1=this['editor']['plugins']['get']('Notification'),_0x2ec934=this['editor']['locale'];_0x158aff||(_0x158aff=V(_0x2ec934,'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.')),_0x2495d1['showWarning'](_0x158aff,{'title':V(_0x2ec934,'Synchronization\x20issue'),'namespace':'real-time-collaboration'}),this['_hasSynchronizationProblem']=!0x0,clearTimeout(this['_sendBufferedOperationsDelayId']),this['_bufferedOperations']=[],this['editor']['plugins']['get'](n)['disconnect']();}['_setPendingAction'](){this['_pendingAction']||(this['_pendingAction']=this['editor']['plugins']['get'](_0x442e85)['add'](V(this['editor']['locale'],'PENDING_ACTION_SENDING_DATA')));}['_clearPendingAction'](){this['_pendingAction']&&(this['editor']['plugins']['get'](_0x442e85)['remove'](this['_pendingAction']),this['_pendingAction']=null);}['_compressOperations'](_0x3a5d9a){const _0x873e2e=_0x3a5d9a['map'](_0x2a004c=>_0x2a004c['toJSON']());return this['_compressor']['compress'](_0x873e2e);}['_decompressOperations'](_0x3ca4f0,_0x59d16a){return this['_compressor']['decompress'](_0x3ca4f0)['map']((_0x4cfec7,_0x430f78)=>{const _0x4cea65='init'==_0x59d16a[_0x430f78]['type'];if('InsertOperation'==_0x4cfec7['__className']){const _0x3ce2f0=_0x4cfec7['position']['root'];!this['_document']['getRoot'](_0x3ce2f0)&&(this['_document']['createRoot']('$root',_0x3ce2f0)['_isAttached']=!0x1);}const _0x4f6c33=_0x406a32['fromJSON'](_0x4cfec7,this['_document']);return _0x4f6c33['wasUndone']=_0x4cfec7['wasUndone'],_0x4f6c33['_isInit']=_0x4cea65,_0x4f6c33['_authorId']=_0x4cea65?null:_0x59d16a[_0x430f78]['userId'],_0x4f6c33['_isDisconnection']='cs:removeUser'===_0x59d16a[_0x430f78]['type'],_0x4f6c33['createdAt']=_0x59d16a[_0x430f78]['createdAt'],_0x4f6c33;});}['_refreshUserSelectionMarkers'](){this['_hasSelectionChanged']=!0x0,this['_shouldSendSelectionUpdate']()?this['_sendBufferedOperationsDelayed']():this['_hasSelectionChanged']=!0x1;}['_shouldSendSelectionUpdate'](){const _0x578ec3=this['editor']['plugins']['get'](i)['channelSessions']['get'](this['_channelId']);return!this['editor']['isReadOnly']&&!!_0x578ec3&&_0x578ec3['length']>0x1&&this['_hasSelectionChanged'];}['_shouldSendUpdate'](){return this['_bufferedOperations']['length']>0x0||this['_shouldSendSelectionUpdate']();}}class $ extends Error{}function K(_0x29f4e4,_0x16478d){for(const _0x12bdd2 of _0x29f4e4)_0x12bdd2['baseVersion']=_0x16478d++;}class J{['_ignoredOperations'];['_operationToId'];constructor(_0x27c256){this['_ignoredOperations']=_0x27c256,this['_operationToId']=new WeakMap();}['getIdOfTheLastOperation'](_0x41f887){let _0x16cbb8=_0x41f887['length'];for(;_0x16cbb8--;){const _0x46ca6d=_0x41f887[_0x16cbb8];if(!this['_ignoredOperations']['has'](_0x46ca6d)){if(!this['_operationToId']['has'](_0x46ca6d)){const _0x362e01=_0x4bb96a()['slice'](0x1,0x12);this['_operationToId']['set'](_0x46ca6d,_0x362e01);}return this['_operationToId']['get'](_0x46ca6d);}}}['setIdForTheLastOperation'](_0x333c22,_0x49dd8e){if(!_0x49dd8e)return;let _0x1f9cb4=_0x333c22['length'];for(;_0x1f9cb4--;){const _0x3a4dd1=_0x333c22[_0x1f9cb4];this['_ignoredOperations']['has'](_0x3a4dd1)||this['_operationToId']['set'](_0x3a4dd1,_0x49dd8e);}}}class a extends _0x232b47{static get['requires'](){return[l];}static get['pluginName'](){return'RealTimeCollaborativeEditing';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}class s extends _0x1a80af{static ['CommentsService']=/* #__PURE__ -- @preserve */
26
- ((()=>_0x229c97)());['_services'];static get['requires'](){return[n,'CommentsRepository',i,_0x1ff91e];}static get['pluginName'](){return'CloudServicesCommentsAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x2a118f){super(_0x2a118f),this['_services']=new Map();}async['init'](){const _0x3ca20e=this['context'],_0x26cc98=_0x3ca20e['plugins']['get']('CommentsRepository');if(_0x3ca20e['plugins']['get'](n)['addToReconnectionStack'](this),_0x26cc98['adapter']={'addCommentThread':async({channelId:_0x25eea5,threadId:_0x55de0e,comments:_0x254728,resolvedAt:_0x512fda,resolvedBy:_0x39db07,context:_0x1fba5f,attributes:_0x3fc76d})=>{const _0x3440e3=await this['_getService'](_0x25eea5)['addCommentThread']({'commentThreadId':_0x55de0e,'comments':_0x254728['map'](_0x15203b=>function(_0x2114f3,_0x3594e1,_0x428fb0){return{'commentThreadId':_0x428fb0,'commentId':_0x2114f3['commentId'],'userId':_0x2114f3['authorId'],'content':_0x2114f3['content'],'documentId':_0x3594e1,'createdAt':_0x2114f3['createdAt'],'attributes':_0x2114f3['attributes']||{}};}(_0x15203b,_0x25eea5,_0x55de0e)),'resolvedAt':_0x512fda,'resolvedBy':_0x39db07,'context':_0x1fba5f,'attributes':_0x3fc76d})['catch'](dt);return{'threadId':_0x3440e3['commentThreadId'],'comments':_0x3440e3['comments']};},'getCommentThread':async({channelId:_0x54e456,threadId:_0x15fd51})=>{const _0x4c6841=await this['_getService'](_0x54e456)['getCommentThread'](_0x15fd51)['catch'](F)['catch'](dt);return _0x4c6841?_0x4c6841['deletedAt']?null:(await this['_fetchMissingUsersForThreads']([_0x4c6841]),{'threadId':_0x4c6841['commentThreadId'],'comments':_0x4c6841['comments']['map'](S),'context':_0x4c6841['context'],'resolvedAt':_0x4c6841['resolvedAt'],'resolvedBy':_0x4c6841['resolvedBy'],'attributes':_0x4c6841['attributes']||{}}):null;},'updateCommentThread':async({channelId:_0x49aa79,threadId:_0xd6aa7c,context:_0x26d2e7,unlinkedAt:_0x1e2b81,attributes:_0x5b9199})=>this['_getService'](_0x49aa79)['updateCommentThread']({'commentThreadId':_0xd6aa7c,'context':_0x26d2e7,'attributes':_0x5b9199,'unlinkedAt':_0x1e2b81})['catch'](F)['catch'](dt),'resolveCommentThread':async({channelId:_0x5598aa,threadId:_0x37f401})=>{const _0x3f997b=await this['_getService'](_0x5598aa)['resolveCommentThread'](_0x37f401)['catch'](F)['catch'](dt);return{'threadId':_0x3f997b['commentThreadId'],'resolvedAt':_0x3f997b['resolvedAt'],'resolvedBy':_0x3f997b['resolvedBy']};},'reopenCommentThread':async({channelId:_0x4ef15d,threadId:_0x4f8de6})=>this['_getService'](_0x4ef15d)['reopenCommentThread'](_0x4f8de6)['catch'](F)['catch'](dt),'removeCommentThread':({channelId:_0x47f909,threadId:_0x3216e8})=>this['_getService'](_0x47f909)['removeCommentThread'](_0x3216e8)['catch'](F)['catch'](dt),'addComment':({channelId:_0x41eee6,threadId:_0x35cd76,commentId:_0x1c46dc,content:_0x197012,attributes:_0x2cf239})=>this['_getService'](_0x41eee6)['addComment'](_0x35cd76,_0x1c46dc,_0x197012,_0x2cf239)['catch'](dt),'updateComment':({channelId:_0x25dcbc,threadId:_0x1535ec,commentId:_0x1d0bb1,content:_0x5f5aab,attributes:_0x45f507})=>this['_getService'](_0x25dcbc)['updateComment'](_0x1535ec,_0x1d0bb1,_0x5f5aab,_0x45f507)['catch'](F)['catch'](dt),'removeComment':({channelId:_0x2f44a3,threadId:_0x4dfb0c,commentId:_0x6ccc6b})=>this['_getService'](_0x2f44a3)['removeComment'](_0x4dfb0c,_0x6ccc6b)['catch'](F)['catch'](dt)},_0x3ca20e instanceof _0x385ab6){const _0x167629=_0x3ca20e['config']['get']('collaboration.channelId'),_0x35f38a=_0x3ca20e['plugins']['get'](i);await this['_setUpService'](_0x167629);const _0x43075c=await this['_services']['get'](_0x167629)['getConnectedSessions']();this['listenTo'](_0x35f38a,'sessionAdd:'+_0x167629,(_0x3f06d8,{session:_0x5cd357})=>{_0x5cd357['id']===_0x35f38a['mySessionId']&&(_0x3f06d8['off'](),this['context']['plugins']['get']('Permissions')['setPermissions'](_0x5cd357['permissions'],_0x167629));}),_0x35f38a['register'](_0x167629,_0x43075c);}}async['_setUpService'](_0x2ab0ea){if(this['_services']['has'](_0x2ab0ea))throw new _0x529824('cloudservicescommentsadapter-connect-already-connected',null,{'channelId':_0x2ab0ea});const _0x366852=this['context']['plugins']['get']('CommentsRepository'),_0x5e72d2=new s['CommentsService'](_0x2ab0ea);this['_services']['set'](_0x2ab0ea,_0x5e72d2),this['listenTo'](_0x5e72d2,'commentThreadAdded',(_0x57eb9d,_0x509af9)=>{const {commentThreadId:_0x3720cf,documentId:_0x3dc5b7,context:_0x14c84a,attributes:_0xb6dc56,resolvedAt:_0x1460c1,resolvedBy:_0x43254d,comments:_0x1d96fc}=_0x509af9;_0x366852['getCommentThread'](_0x3720cf)||_0x366852['addCommentThread']({'threadId':_0x3720cf,'channelId':_0x3dc5b7,'comments':_0x1d96fc?_0x1d96fc['map'](S):[],'context':_0x14c84a,'attributes':_0xb6dc56,'resolvedAt':_0x1460c1,'resolvedBy':_0x43254d,'isFromAdapter':!0x0});}),this['listenTo'](_0x5e72d2,'commentThreadUpdated',(_0x3586a2,{commentThreadId:_0x4340ba,documentId:_0x2a6fce,context:_0x33ca2e,unlinkedAt:_0x3fcdb7,attributes:_0x403bdf})=>{_0x366852['getCommentThread'](_0x4340ba)&&_0x366852['updateCommentThread']({'threadId':_0x4340ba,'channelId':_0x2a6fce,'context':_0x33ca2e,'unlinkedAt':_0x3fcdb7,'attributes':_0x403bdf,'isFromAdapter':!0x0});}),this['listenTo'](_0x5e72d2,'commentThreadResolved',(_0x340027,{commentThreadId:_0x9c3c75,resolvedBy:_0x63d7a7,resolvedAt:_0x4b3b4e})=>{const _0x5d06fc=_0x366852['getCommentThread'](_0x9c3c75);_0x5d06fc&&_0x5d06fc['resolve']({'resolvedBy':_0x63d7a7,'resolvedAt':_0x4b3b4e,'isFromAdapter':!0x0});}),this['listenTo'](_0x5e72d2,'commentThreadReopened',(_0xbbe17c,{commentThreadId:_0x4ddb27})=>{const _0x293cf7=_0x366852['getCommentThread'](_0x4ddb27);_0x293cf7&&_0x293cf7['reopen']({'isFromAdapter':!0x0});}),this['listenTo'](_0x5e72d2,'commentThreadRemoved',(_0x1987c9,{commentThreadId:_0x54394b})=>{const _0x59b13f=_0x366852['getCommentThread'](_0x54394b);_0x59b13f&&_0x59b13f['remove']({'isFromAdapter':!0x0});}),this['listenTo'](_0x5e72d2,'commentAdded',(_0x11bfe0,_0x513e46)=>{const _0x3b7f5b=_0x513e46['commentThreadId'],_0x5684c5=_0x366852['getCommentThread'](_0x3b7f5b);_0x5684c5&&_0x5684c5['addComment']({...S(_0x513e46),'isFromAdapter':!0x0});}),this['listenTo'](_0x5e72d2,'commentUpdated',(_0x5c1d06,{commentThreadId:_0x59a598,commentId:_0x4a4e26,content:_0x49b4c2,attributes:_0x2d6609})=>{const _0x44c854=_0x366852['getCommentThread'](_0x59a598);if(_0x44c854){const _0x56b4bd=_0x44c854['getComment'](_0x4a4e26);_0x56b4bd&&_0x56b4bd['update']({'content':_0x49b4c2,'attributes':_0x2d6609,'isFromAdapter':!0x0});}}),this['listenTo'](_0x5e72d2,'commentRemoved',(_0x290444,{commentThreadId:_0x5dd26f,commentId:_0x3540fe})=>{const _0x110a4a=_0x366852['getCommentThread'](_0x5dd26f);if(_0x110a4a){const _0xc42216=_0x110a4a['getComment'](_0x3540fe);_0xc42216&&_0xc42216['remove']({'isFromAdapter':!0x0});}}),await this['_connectService'](_0x2ab0ea);}['destroy'](){if(this['context']instanceof _0x385ab6){const _0x16b298=this['context']['config']['get']('collaboration.channelId');this['_terminateService'](_0x16b298);}}['_terminateService'](_0x2d3765){if(!this['_services']['has'](_0x2d3765))throw new _0x529824('cloudservicescommentsadapter-disconnect-not-exist',null,{'channelId':_0x2d3765});this['_getService'](_0x2d3765)['disconnect'](),this['_services']['delete'](_0x2d3765);}async['reconnect'](){for(const _0x10105d of this['_services']['keys']())await this['_connectService'](_0x10105d);if(this['context']instanceof _0x385ab6){const _0x1f46e5=this['context']['config']['get']('collaboration.channelId'),_0x36e88b=this['context']['plugins']['get'](i);_0x36e88b['unregister'](_0x1f46e5);const _0x3a38e0=await this['_services']['get'](_0x1f46e5)['getConnectedSessions']();_0x36e88b['register'](_0x1f46e5,_0x3a38e0);}}async['_connectService'](_0x593266){const {connection:_0x2cb0be}=this['context']['plugins']['get'](n),_0x23d3cb=this['context']['plugins']['get']('CommentsRepository'),_0x59b8c9=this['_services']['get'](_0x593266),_0x1f445b=await _0x59b8c9['connect'](_0x2cb0be);await this['_fetchMissingUsersForThreads'](_0x1f445b);const _0x2fad8a=new Set(Array['from'](_0x23d3cb['getCommentThreads']({'channelId':_0x593266}),_0x7a77e3=>_0x7a77e3['id']));for(const _0x9ff5c2 of _0x1f445b)_0x9ff5c2['deletedAt']||_0x2fad8a['delete'](_0x9ff5c2['commentThreadId']);for(const _0x9752ac of _0x2fad8a)_0x23d3cb['getCommentThread'](_0x9752ac)['remove']({'isFromAdapter':!0x0});for(const _0x487115 of _0x1f445b){let _0x42f866=_0x23d3cb['getCommentThread'](_0x487115['commentThreadId']);const {commentThreadId:_0x22f998,context:_0x56ddc6,attributes:_0x28ca1a,resolvedBy:_0x1d8589,resolvedAt:_0x2531ea,unlinkedAt:_0x359379,deletedAt:_0x150974}=_0x487115;if(_0x150974)continue;_0x42f866||(_0x42f866=_0x23d3cb['addCommentThread']({'channelId':_0x593266,'threadId':_0x22f998,'context':_0x56ddc6,'attributes':_0x28ca1a||{},'resolvedBy':_0x1d8589,'resolvedAt':_0x2531ea,'unlinkedAt':_0x359379,'isFromAdapter':!0x0}));const _0x3e465f=new Set(Array['from'](_0x42f866['comments'],_0x5a866e=>_0x5a866e['id']));for(const _0xfb3265 of _0x487115['comments'])_0x3e465f['delete'](_0xfb3265['commentId']);for(const _0x1aaa75 of _0x3e465f)_0x42f866['getComment'](_0x1aaa75)['remove']({'isFromAdapter':!0x0});for(const _0x1460a3 of _0x487115['comments']){const _0x3108fc=_0x42f866['getComment'](_0x1460a3['commentId']);_0x3108fc?_0x3108fc['content']!==_0x1460a3['content']&&_0x3108fc['update']({'content':_0x1460a3['content'],'isFromAdapter':!0x0}):_0x42f866['addComment'](Object['assign'](S(_0x1460a3),{'isFromAdapter':!0x0}));}}}['_getService'](_0x2f3fc6){if(!this['_services']['has'](_0x2f3fc6))throw new _0x529824('cloudservicescommentsadapter-service-not-exist',null,{'channelId':_0x2f3fc6});return this['_services']['get'](_0x2f3fc6);}async['_fetchMissingUsersForThreads'](_0x3d79b1){const _0x5eded6=this['context']['plugins']['get'](_0x1ff91e),{connection:_0x4a8382}=this['context']['plugins']['get'](n),_0x293238=new Set();for(const {resolvedBy:_0x590f31,comments:_0x5f2469}of _0x3d79b1){_0x590f31&&!_0x5eded6['getUser'](_0x590f31)&&_0x293238['add'](_0x590f31);for(const {userId:_0x4bd5c9}of _0x5f2469)_0x5eded6['getUser'](_0x4bd5c9)||_0x293238['add'](_0x4bd5c9);}if(0x0===_0x293238['size'])return;const _0x4581f5=await lt['getMany'](_0x4a8382,Array['from'](_0x293238));for(const _0x21be3f of _0x4581f5)_0x5eded6['getUser'](_0x21be3f['id'])||_0x5eded6['addUser'](_0x21be3f);}}async function F(_0x3bea14){if('404'!==_0x3bea14['code'])throw _0x3bea14;}function dt(_0x3fa3ca){if((_0x42c160=_0x3fa3ca)['message']['startsWith']('cloud-services-internal-error:\x20Comments\x20Service\x20is\x20not\x20connected.')||_0x42c160['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x42c160['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.'))return new Promise(()=>{});var _0x42c160;throw _0x3fa3ca;}function S(_0x41c4f8){return{'threadId':_0x41c4f8['commentThreadId'],'commentId':_0x41c4f8['commentId'],'content':_0x41c4f8['content'],'createdAt':_0x41c4f8['createdAt'],'authorId':_0x41c4f8['userId'],'attributes':_0x41c4f8['attributes']||{}};}class m extends _0x232b47{static ['TrackChangesService']=/* #__PURE__ -- @preserve */
27
- ((()=>et)());['_bufferedRequests'];['_trackChangesService'];static get['requires'](){return[s,'TrackChangesEditing',n];}static get['pluginName'](){return'CloudServicesTrackChangesAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x219091){super(_0x219091);const _0x13dc72=this['editor']['config']['get']('collaboration.channelId');this['_bufferedRequests']=new Map(),this['_trackChangesService']=new m['TrackChangesService'](_0x13dc72);}['init'](){const _0xdd3193=this['editor']['plugins']['get'](n),_0x2af7ed=this['editor']['plugins']['get']('TrackChangesEditing');return _0x2af7ed['adapter']={'getSuggestion':async _0x5a00b2=>{await this['_waitForServiceReady']();const _0xb4f008=await this['_trackChangesService']['get'](_0x5a00b2)['catch'](k);return await this['_fetchMissingUsersForThreads']([_0xb4f008]),_0xb4f008;},'addSuggestion':async({id:_0x289532,type:_0x39b37f,data:_0x408273,originalSuggestionId:_0x143a5c,attributes:_0x5d4f9f})=>{await this['_waitForServiceReady']();const _0x384496={'id':_0x289532,'type':_0x39b37f,'data':_0x408273,'originalSuggestionId':_0x143a5c,'attributes':_0x5d4f9f},_0x34cb48=await this['_trackChangesService']['add'](_0x289532,_0x39b37f,_0x408273,_0x143a5c,_0x5d4f9f)['catch'](_0x577e7e=>{if(ut(_0x577e7e))return new Promise(_0x2df156=>{this['_bufferedRequests']['set'](_0x289532,{'resolve':_0x2df156,'suggestionData':_0x384496});});throw _0x577e7e;});return this['_bufferedRequests']['delete'](_0x289532),_0x34cb48;},'updateSuggestion':async(_0x4cc0cd,_0x40765b)=>{if(await this['_waitForServiceReady'](),'open'!==_0x40765b['state'])return this['_trackChangesService']['update'](_0x4cc0cd,_0x40765b)['catch'](k);}},this['listenTo'](this['_trackChangesService'],'suggestionUpdated',(_0x3b320e,_0x26cb96)=>{_0x2af7ed['hasSuggestion'](_0x26cb96['id'])&&(_0x2af7ed['getSuggestion'](_0x26cb96['id'])['attributes']=_0x26cb96['attributes']);}),this['_trackChangesService']['connect'](_0xdd3193['connection'])['then'](_0x1e94e8=>(_0xdd3193['addToReconnectionStack'](this),this['_fetchMissingUsersForThreads'](_0x1e94e8)['then'](()=>{for(const _0x5896c3 of _0x1e94e8){_0x2af7ed['addSuggestionData'](_0x5896c3)['_saved']=!0x0;}})));}async['reconnect'](){const _0x583a2d=this['editor']['plugins']['get']('TrackChangesEditing'),{connection:_0x210769}=this['editor']['plugins']['get'](n),_0x5ad899=await this['_trackChangesService']['connect'](_0x210769);await this['_fetchMissingUsersForThreads'](_0x5ad899);for(const {suggestionData:_0x7aefc6,resolve:_0x2994c7}of this['_bufferedRequests']['values']()){let _0x314987=_0x5ad899['find'](_0x858f79=>_0x858f79['id']===_0x7aefc6['id']);_0x314987||(_0x314987=await this['_trackChangesService']['add'](_0x7aefc6['id'],_0x7aefc6['type'],_0x7aefc6['data'],_0x7aefc6['originalSuggestionId'])),_0x2994c7(_0x314987);}for(const _0x396825 of _0x5ad899)_0x583a2d['hasSuggestion'](_0x396825['id'])||_0x583a2d['addSuggestionData'](_0x396825);}async['_waitForServiceReady'](){this['_trackChangesService']['isConnected']||await new Promise(_0x323eaf=>{this['listenTo'](this['_trackChangesService'],'connected',_0x1c1d11=>{_0x1c1d11['off'](),_0x323eaf();});});}async['_fetchMissingUsersForThreads'](_0x2a28f5){const _0x2fce76=this['editor']['plugins']['get'](_0x1ff91e),{connection:_0x489073}=this['editor']['plugins']['get'](n),_0x48148c=new Set();for(const {authorId:_0x544439}of _0x2a28f5)_0x2fce76['getUser'](_0x544439)||_0x48148c['add'](_0x544439);if(0x0===_0x48148c['size'])return;const _0x37fa2a=await lt['getMany'](_0x489073,Array['from'](_0x48148c));for(const _0xc5a64e of _0x37fa2a)_0x2fce76['getUser'](_0xc5a64e['id'])||_0x2fce76['addUser'](_0xc5a64e);}}function k(_0xc0a2fe){if(ut(_0xc0a2fe))return new Promise(()=>{});throw _0xc0a2fe;}function ut(_0x144bc5){return _0x144bc5['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x144bc5['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}class g extends _0x232b47{static get['requires'](){return['Comments',s,a,n];}static get['pluginName'](){return'RealTimeCollaborativeComments';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['init'](){const _0x454f30=this['editor']['plugins']['get'](n),_0x339d78=this['editor']['plugins']['get']('CommentsEditing'),_0x142b90=this['editor']['plugins']['get'](s);return this['editor']['data']['once']('ready',()=>{this['listenTo'](_0x454f30,'change:state',(_0x2f29ec,_0x4a1056,_0x5f52ce)=>{_0x339d78['isThreadsLoadingPaused']='connected'!==_0x5f52ce;});}),this['listenTo'](_0x454f30,'change:state',(_0x1959af,_0x268ba7,_0x360d03)=>{this['editor']['plugins']['get']('CommentsRepository')['switchReadOnly']('connected'!==_0x360d03);}),_0x142b90['_setUpService'](this['editor']['config']['get']('collaboration.channelId'));}['destroy'](){this['editor']['plugins']['get'](s)['_terminateService'](this['editor']['config']['get']('collaboration.channelId')),super['destroy']();}}class ft extends _0x232b47{static get['requires'](){return[g,m,'TrackChanges'];}static get['pluginName'](){return'RealTimeCollaborativeTrackChanges';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}class c extends _0x232b47{static ['RevisionHistoryService']=/* #__PURE__ -- @preserve */
28
- ((()=>it)());['_lastRequestId'];['_revisionTracker'];['_revisionHistoryService'];['_oldOffset'];static get['requires'](){return[n,l,'RevisionHistory',i,_0x1ff91e];}static get['pluginName'](){return'CloudServicesRevisionHistoryAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x46026d){super(_0x46026d);const _0x5c7efa=this['editor']['config']['get']('collaboration.channelId');this['_lastRequestId']=null,this['_revisionTracker']=this['editor']['plugins']['get']('RevisionTracker'),this['_revisionHistoryService']=new c['RevisionHistoryService'](_0x5c7efa);}async['init'](){const _0x4fc6d3=this['editor']['plugins']['get'](l),_0x59b769=_0x4fc6d3['serverHistory'],_0x3ba0ac=this['editor']['plugins']['get'](n);this['_revisionTracker']['setSource']({'history':_0x59b769,'getLatestVersion':()=>this['_getLatestVersion'](),'getCurrentRevisionId':()=>_0x4fc6d3['sessionId']});const _0x816755=this['editor']['config']['get']('cloudServices.bundleVersion')||nt,_0xb04808=await tt['isBundleUploaded'](_0x3ba0ac['connection'],_0x816755);this['editor']['plugins']['get']('RevisionHistory')['adapter']={'getRevision':async({revisionId:_0x2f609f})=>(await this['_waitForServiceReady'](),await this['_revisionHistoryService']['getRevision'](_0x2f609f)),'updateRevisions':async _0x27c872=>{await this['_waitForServiceReady']();const _0x182a9d=this['_revisionTracker']['currentRevision'];if(_0xb04808&&0x1===_0x27c872['length']&&_0x27c872[0x0]['id']===_0x182a9d['id'])return _0x27c872;for(const _0xf1852c of _0x27c872)_0xf1852c['id']===_0x182a9d['id']&&(_0xf1852c['isEmptyCurrent']=_0xf1852c['fromVersion']===_0xf1852c['toVersion']);return this['_revisionHistoryService']['updateRevisions'](_0x27c872,this['_lastRequestId'])['then'](_0x48d744=>(this['_lastRequestId']=_0x48d744,_0x27c872))['catch'](_0x10f970=>{if(st(_0x10f970)||'400'===_0x10f970['code']&&void 0x0!==_0x10f970['data']['wrongRequestId']){for(const _0x52e2c2 of _0x27c872){!this['_revisionTracker']['repository']['getRevision'](_0x52e2c2['id'])||this['_revisionTracker']['_bufferUpdate'](_0x52e2c2['id'],_0x52e2c2,!0x1);}if(st(_0x10f970))throw _0x10f970;return _0x27c872;}throw _0x10f970;});}},this['listenTo'](this['_revisionHistoryService'],'revisionsUpdated',(_0x5cff73,{revisionsData:_0x24d3da,requestId:_0x4151da})=>{Math['max'](..._0x24d3da['map'](_0x4d7333=>_0x4d7333['toVersion']))>this['_getLatestVersionFromServerOperations']()-0x1?this['_getLatestVersion']()['then'](()=>{this['_handleRevisionsUpdate'](_0x24d3da,_0x4151da);}):this['_handleRevisionsUpdate'](_0x24d3da,_0x4151da);});const {revisions:_0x5c6d35,requestId:_0x5290ff}=await this['_revisionHistoryService']['connect'](_0x3ba0ac['connection']);_0x3ba0ac['addToReconnectionStack'](this),this['_lastRequestId']=_0x5290ff,await this['_fetchMissingUsers'](_0x5c6d35);for(const _0xb8cae6 of _0x5c6d35)this['_revisionTracker']['addRevisionData'](_0xb8cae6);this['listenTo'](_0x4fc6d3,'change:_isConnected',(_0xc597b3,_0x38513e,_0x173d1c)=>{_0x173d1c&&(this['_oldOffset']=_0x4fc6d3['_offset'],_0xc597b3['off']());}),this['_revisionTracker']['bind']('isEnabled')['to'](_0x3ba0ac,'state',_0x7843b8=>_0x7843b8===te['CONNECTED']);}async['reconnect'](){const _0x802541=this['editor']['plugins']['get'](n),_0x277fde=this['editor']['plugins']['get'](l),_0x30bf5c=async()=>{const _0x465aac=this['_revisionTracker']['currentRevision'],_0x4db0a0=_0x465aac['id'],_0x423930=_0x4db0a0!==_0x277fde['sessionId'];if(_0x423930){const _0x3b6a97=_0x277fde['_offset']-this['_oldOffset'],_0x49180b=this['_getLatestVersionFromServerOperations']();this['_revisionTracker']['_revisionDataBuilder']['reInit']();if(_0x465aac['toVersion']+_0x3b6a97!==_0x49180b){const _0x4efc6b=_0x465aac['fromVersion']+_0x3b6a97,_0x52c78a=this['editor']['plugins']['get'](_0x1ff91e),_0x1d0026=this['_revisionTracker']['buildRevisionData']({'revision':_0x465aac,'from':_0x4efc6b,'to':_0x49180b});_0x1d0026['id']=_0x465aac['id'];const _0x5cf189=_0x1d0026['authorsIds']['map'](_0xf8cdbc=>_0x52c78a['getUser'](_0xf8cdbc));_0x465aac['_update']({..._0x1d0026,'authors':_0x5cf189},!0x0),this['_revisionTracker']['_bufferUpdate'](_0x465aac['id'],_0x1d0026,!0x0);}this['_revisionTracker']['_startingVersion']=_0x49180b,(_0x465aac['toVersion']===_0x465aac['fromVersion']&&!this['_revisionTracker']['_bufferedUpdates']['has'](_0x4db0a0)&&this['_revisionTracker']['repository']['_revisions']['remove'](_0x4db0a0),this['_revisionTracker']['_createCurrentRevision'](_0x49180b));}const {revisions:_0x5d80a9,requestId:_0xddbdb9}=await this['_revisionHistoryService']['reconnect'](_0x802541['connection'],this['_lastRequestId']);_0x423930&&_0x5d80a9['length']>0x0?_0x277fde['_handleReconnectionError']():(await this['_fetchMissingUsers'](_0x5d80a9),this['_handleRevisionsUpdate'](_0x5d80a9,_0xddbdb9),this['_revisionTracker']['sendBufferedUpdates']());};return _0x277fde['_isConnected']?_0x30bf5c():new Promise((_0x5d9840,_0x57ca63)=>{_0x277fde['once']('change:_isConnected',()=>{_0x30bf5c()['then'](_0x5d9840)['catch'](_0x57ca63);});});}['destroy'](){super['destroy']();}async['_waitForServiceReady'](){this['_revisionHistoryService']['isConnected']||await new Promise(_0x2ea106=>{this['listenTo'](this['_revisionHistoryService'],'connected',_0x2c0603=>{_0x2c0603['off'](),_0x2ea106();});});}['_getLatestVersionFromServerOperations'](){const _0x4d6532=this['editor']['plugins']['get'](l)['serverHistory']['getOperations']()['reverse']();for(const _0x885149 of _0x4d6532)if('marker'!==_0x885149['type']||_0x885149['affectsData'])return _0x885149['baseVersion']+0x1;}['_getLatestVersion'](){const _0x45584f=this['editor']['plugins']['get'](l);return new Promise(_0x619e1d=>{_0x45584f['_isPendingUpdate']?_0x45584f['once']('change:_isPendingUpdate',()=>{_0x619e1d(this['_getLatestVersionFromServerOperations']());}):_0x619e1d(this['_getLatestVersionFromServerOperations']());});}['_handleRevisionsUpdate'](_0xa8e8d4,_0x5e1efd){const _0x148b4c=this['_revisionTracker']['repository'];this['_lastRequestId']=_0x5e1efd;for(const _0x2194e6 of _0xa8e8d4){const _0x5553f8=_0x148b4c['getRevision'](_0x2194e6['id']);if(_0x5553f8){if((_0x2194e6['fromVersion']||_0x2194e6['toVersion'])&&(_0x2194e6['diffData']=null),_0x5553f8===this['_revisionTracker']['currentRevision']){const _0x23f039=Math['max'](_0x5553f8['toVersion'],_0x2194e6['toVersion']),_0xf561af=Math['max'](_0x5553f8['fromVersion'],_0x2194e6['fromVersion']);let _0x394c2a;_0x5553f8['toVersion']===_0x2194e6['toVersion']&&_0x5553f8['fromVersion']===_0x2194e6['fromVersion']?(_0x394c2a=!0x0,this['_preventResendingRevisionData'](_0x2194e6)):_0x2194e6['toVersion']===_0x23f039&&_0x2194e6['fromVersion']===_0xf561af?_0x394c2a=!0x1:(_0x5553f8['toVersion']===_0x23f039&&_0x5553f8['fromVersion']===_0xf561af||this['_fixRevision']({'revision':_0x5553f8,'from':_0xf561af,'to':_0x23f039}),_0x394c2a=!0x0),_0x394c2a&&(delete _0x2194e6['fromVersion'],delete _0x2194e6['toVersion'],delete _0x2194e6['diffData'],delete _0x2194e6['createdAt'],delete _0x2194e6['authorsIds']);}this['_revisionTracker']['setRevisionData'](_0x2194e6),this['_preventResendingRevisionData'](_0x2194e6);}else this['_revisionTracker']['addRevisionData'](_0x2194e6);}const _0x23ba04=_0x148b4c['getRevisions']();_0x23ba04['reverse']();for(let _0x55265d=0x0;_0x55265d<_0x23ba04['length']-0x1;_0x55265d++){const _0x26a263=_0x23ba04[_0x55265d],_0x5b77fe=_0x23ba04[_0x55265d+0x1];if(_0x26a263['fromVersion']<_0x5b77fe['toVersion']){const _0x140c9a=_0x5b77fe['toVersion'],_0x1798a8=Math['max'](_0x140c9a,_0x26a263['toVersion']);this['_fixRevision']({'revision':_0x26a263,'from':_0x140c9a,'to':_0x1798a8});}}}['_fixRevision']({revision:_0x434cc9,from:_0x13d9dc,to:_0x9f438d}={}){const _0x1c5e96=this['editor']['plugins']['get'](_0x1ff91e),_0x456ce8=this['_revisionTracker']['buildRevisionData']({'revision':_0x434cc9,'from':_0x13d9dc,'to':_0x9f438d});_0x456ce8['authors']=_0x456ce8['authorsIds']['map'](_0x52dbf9=>_0x1c5e96['getUser'](_0x52dbf9)),_0x434cc9['_update'](_0x456ce8);}['_preventResendingRevisionData'](_0x222cdc){const _0x3a743d={};_0x3a743d['id']=_0x222cdc['id'];for(const _0x4ea964 of Object['keys'](_0x222cdc))'id'!==_0x4ea964&&(_0x3a743d[_0x4ea964]=void 0x0);this['_revisionTracker']['_bufferUpdate'](_0x3a743d['id'],_0x3a743d,!0x0);}async['_fetchMissingUsers'](_0x40de07){const _0x48674b=this['editor']['plugins']['get'](_0x1ff91e),{connection:_0x427b2d}=this['editor']['plugins']['get'](n),_0x467577=new Set();for(const _0x3414ed of _0x40de07){for(const _0x5ae7d7 of _0x3414ed['authorsIds'])_0x35da79(_0x5ae7d7);_0x3414ed['creatorId']&&_0x35da79(_0x3414ed['creatorId']);}if(0x0===_0x467577['size'])return;const _0x3cace2=await lt['getMany'](_0x427b2d,Array['from'](_0x467577));for(const _0x42ea46 of _0x3cace2)_0x48674b['getUser'](_0x42ea46['id'])||_0x48674b['addUser'](_0x42ea46);function _0x35da79(_0x32c3b6){_0x48674b['getUser'](_0x32c3b6)||_0x467577['add'](_0x32c3b6);}}}function st(_0x465d26){return _0x465d26['message']['startsWith']('cloud-services-internal-error:\x20Revision\x20History\x20Service\x20is\x20not\x20connected.')||_0x465d26['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x465d26['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}class mt extends _0x232b47{static get['requires'](){return['RevisionHistory',c,a];}static get['pluginName'](){return'RealTimeCollaborativeRevisionHistory';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}class b extends _0x210562{['_collapseAt'];constructor(_0x21e95e,_0x53f5ee=0x6){super(_0x21e95e);const _0x1c9d26=this['bindTemplate'];this['set']('isHidden',!0x0),this['set']('usersCount',0x0),this['_collapseAt']=_0x53f5ee,this['bind']('isHidden')['to'](this,'usersCount',_0x2e6f9e=>_0x2e6f9e<_0x53f5ee),this['setTemplate']({'tag':'div','attributes':{'class':['ck','ck-presence-list__list-item',_0x1c9d26['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':_0x1c9d26['to']('usersCount',_0x87a4c=>'+'+(_0x87a4c-this['_collapseAt']+0x2)['toString']())}]}]}]});}}class is extends _0x210562{['items'];['keystrokes'];constructor(_0x2d41a0){super(_0x2d41a0);const _0x4d5d2a=this['bindTemplate'];this['items']=this['createCollection'](),this['keystrokes']=new _0x2494c(),this['set']({'hasPopup':!0x1,'isExpanded':!0x1}),this['setTemplate']({'tag':'div','attributes':{'aria-haspopup':_0x4d5d2a['if']('hasPopup'),'aria-expanded':_0x4d5d2a['to']('isExpanded',_0xbc5ab3=>this['hasPopup']&&String(_0xbc5ab3)),'aria-label':_0x4d5d2a['to']('hasPopup',_0x5ba1ff=>V(_0x2d41a0,_0x5ba1ff?'Collapsed\x20connected\x20users\x20list\x20(press\x20ENTER\x20to\x20open\x20it)':'Connected\x20users\x20list')),'role':'list','tabindex':_0x4d5d2a['to']('hasPopup',_0x5a9d32=>!!_0x5a9d32&&0x0),'class':['ck','ck-presence-list__list']},'children':this['items'],'on':{'mouseenter':_0x4d5d2a['to'](()=>this['fire']('presencelist:show')),'mouseleave':_0x4d5d2a['to'](_0x25d83f=>{const _0x16a22d=_0x25d83f,_0x2988c6=document['querySelector']('.ck-presence-list__dropdown-list'),_0x5816de=document['querySelector']('.ck-balloon-panel_with-arrow');_0x2988c6?.['contains'](_0x16a22d['relatedTarget'])||_0x5816de?.['contains'](_0x16a22d['relatedTarget'])||this['fire']('presencelist:hide');})}}),this['on']('change:hasPopup',(_0x17e795,_0x415b12,_0x192be1)=>{this['element']&&(_0x192be1?this['element']['setAttribute']('aria-expanded',String(this['isExpanded'])):this['element']['removeAttribute']('aria-expanded'));});}['focus'](){this['element']['focus']();}['render'](){super['render'](),this['keystrokes']['listenTo'](this['element']);}}class v extends _0x210562{['counterView'];['inlineListView'];constructor(_0x2d84df,_0x5e2f5f=0x6){super(_0x2d84df);const _0x24b509=this['bindTemplate'];this['set']('isCollapsed',!0x0),this['counterView']=new b(this['locale'],_0x5e2f5f),this['inlineListView']=new is(_0x2d84df),this['inlineListView']['bind']('hasPopup')['to'](this,'isCollapsed'),this['listenTo'](this['inlineListView']['items'],'change',()=>{for(const _0x2bf175 of this['inlineListView']['items'])_0x2bf175['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',_0x24b509['if']('isCollapsed','ck-presence-list--collapsed')]},'children':[this['inlineListView']]});}}class L extends _0x210562{['listWrapperView'];constructor(_0xc4da35,_0x29b771){super(_0xc4da35);const _0x3c9bb2=this['bindTemplate'];this['listWrapperView']=new pt(_0xc4da35,_0x29b771),this['setTemplate']({'tag':'div','attributes':{'tabindex':-0x1,'role':'application','class':['ck','ck-presence-list__dropdown-list'],'aria-label':V(_0xc4da35,'Connected\x20users\x20list\x20dropdown\x20menu')},'children':[this['listWrapperView']],'on':{'mouseleave':_0x3c9bb2['to'](_0x56b5e9=>{const _0x223274=_0x56b5e9,_0x2be711=document['querySelector']('.ck-presence-list__list'),_0x4e48e6=document['querySelector']('.ck-balloon-panel_with-arrow');_0x2be711?.['contains'](_0x223274['relatedTarget'])||_0x4e48e6?.['contains'](_0x223274['relatedTarget'])||this['fire']('presencelist:hide');})}});}}class pt extends _0x4fbea9{constructor(_0x49e2f7,_0x4731e3){super(_0x49e2f7);const _0x4e95dd=this['bindTemplate'];this['set']('_isScrollable',!0x1),this['setTemplate']({'tag':_0x4731e3?'div':'ul','attributes':{'class':['ck','ck-reset','ck-list','ck-presence-list__dropdown-list-wrapper',_0x4e95dd['if']('_isScrollable','ck-presence-list__dropdown-list-wrapper_scrollable')],'role':_0x4e95dd['to']('role'),'aria-label':_0x4e95dd['to']('ariaLabel'),'aria-labelledby':_0x4e95dd['to']('ariaLabelledBy')},'children':this['items']}),this['listenTo'](_0x201d53['window'],'resize',()=>this['checkIfScrollable']()),this['items']['on']('change',()=>this['checkIfScrollable']());}['render'](){super['render'](),this['checkIfScrollable']();}['checkIfScrollable'](){const _0x371fea=this['element'];_0x371fea&&(this['_isScrollable']=Math['max'](_0x371fea['scrollHeight'],_0x371fea['clientHeight'])>0.8*window['innerHeight']);}}class j extends rt{['userView'];constructor(_0x12f744,_0x2085d3,_0x247958){super(_0x12f744);const _0x8c81cb=this['bindTemplate'];this['userView']=new ct(_0x12f744,_0x2085d3);const _0xced699={'tag':'li','attributes':{'class':['ck','ck-presence-list__dropdown-list-item'],'tabindex':-0x1,'role':'presentation','aria-label':_0x2085d3['name']},'children':[this['userView'],{'tag':'span','attributes':{'class':['ck','ck-user__full-name']},'children':[{'text':_0x2085d3['name']}]},{'tag':'span','attributes':{'class':['ck','ck-presence-list__marker',_0x2085d3['color']['getBackgroundColorClass']()],'aria-hidden':'true'}}]};_0x247958&&(_0xced699['tag']='button',_0xced699['on']={'click':_0x8c81cb['to'](()=>this['fire']('execute'))}),this['setTemplate'](_0xced699);}['focus'](){this['element']['focus']();}}class A extends _0x210562{['userView'];['markerView'];constructor(_0x16c825,_0x47d6d7,_0x142ba6){super(_0x16c825);const _0x136041=this['bindTemplate'];this['set']('isFocusable',!0x1),this['set']('hasTooltip',!0x0),this['set']('tooltipPosition',''),this['userView']=new ct(_0x16c825,_0x47d6d7),this['markerView']=new at(_0x16c825,_0x47d6d7);const _0x1242ea=new ot(_0x16c825);_0x1242ea['template']['tag']='span',_0x1242ea['text']=_0x47d6d7['name'];const _0x31bdb6={'tag':'div','attributes':{'class':['ck','ck-presence-list__list-item'],'role':'listitem','tabindex':_0x136041['to']('isFocusable',_0xb3c809=>!!_0xb3c809&&0x0),'aria-labelledby':_0x1242ea['id'],'data-cke-tooltip-text':this['userView']['name'],'data-cke-tooltip-position':_0x136041['to']('tooltipPosition'),'data-cke-tooltip-disabled':_0x136041['to']('hasTooltip',_0x17a1e5=>!_0x17a1e5),'data-cke-tooltip-class':'ck-presence-list__list-item__tooltip'},'children':[this['userView'],this['markerView'],_0x1242ea]};_0x142ba6&&(_0x31bdb6['tag']='button',_0x31bdb6['on']={'click':_0x136041['to'](()=>this['fire']('execute'))}),this['setTemplate'](_0x31bdb6);}}class at extends _0x210562{constructor(_0x420711,_0x2cce7e){super(_0x420711),this['setTemplate']({'tag':'span','attributes':{'class':['ck','ck-presence-list__marker',_0x2cce7e['color']['getBackgroundColorClass']()],'aria-hidden':'true'}});}}const x={'collapseAt':0x6,'displayMe':!0x0};class r extends _0x1a80af{['currentDisplayedUsers'];['balloonPanelView'];['view'];['presenceDropdownView'];['_bodyCollection']=null;static get['pluginName'](){return'PresenceListUI';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x5ae922){super(_0x5ae922),this['context']['config']['define']('presenceList',x);const _0x4b80e8=_0x5ae922['config']['get']('presenceList.collapseAt');if('number'!=typeof _0x4b80e8)throw new _0x529824('presencelist-collapseat-invalid-format',this);if(_0x4b80e8<0x1)throw new _0x529824('presencelist-collapseat-invalid-format',this);this['_allConnectedUsers']=this['context']['plugins']['get'](i)['allConnectedUsers'],this['set']('usersCount',0x0),this['currentDisplayedUsers']=new _0x462cb9(),this['balloonPanelView']=new _0x581a51(),this['balloonPanelView']['class']='ck\x20ck-presence-list__balloon',this['view']=this['_createView'](),this['presenceDropdownView']=void 0x0;}static get['requires'](){return[i];}['init'](){for(const _0xd9daa2 of this['_allConnectedUsers'])this['_handleUserAdd'](_0xd9daa2);this['listenTo'](this['_allConnectedUsers'],'add',(_0x51880c,_0x2a7ca3)=>{this['_handleUserAdd'](_0x2a7ca3);}),this['listenTo'](this['_allConnectedUsers'],'remove',(_0x33bb42,_0x1c63f2)=>{this['_handleUserRemove'](_0x1c63f2);});}['_createView'](){const _0x2dcc44=this['context'],_0x567a94=new v(this['context']['locale'],this['context']['config']['get']('presenceList.collapseAt')),_0x4a9311=this['balloonPanelView'];if(!_0x3d9807(_0x2dcc44['config']['get']('presenceList.container')))throw new _0x529824('presencelist-missing-container',this);return _0x567a94['counterView']['bind']('usersCount')['to'](this),_0x567a94['bind']('isCollapsed')['to'](this,'usersCount',_0x153e11=>{const {collapseAt:_0x1572f2}=_0x2dcc44['config']['get']('presenceList'),_0x598dd7=_0x153e11>=_0x1572f2;if(_0x598dd7&&!_0x567a94['inlineListView']['items']['find'](_0x55c68e=>_0x55c68e instanceof b)){const _0x2b3c48=this['context']['config']['get']('presenceList.collapseAt')-0x1;this['currentDisplayedUsers']['length']==_0x2b3c48&&this['currentDisplayedUsers']['length']>0x1&&this['currentDisplayedUsers']['remove'](this['currentDisplayedUsers']['length']-0x1),_0x567a94['inlineListView']['items']['add'](_0x567a94['counterView']);}return _0x598dd7||this['hideDropdown'](),_0x598dd7;}),_0x567a94['inlineListView']['items']['bindTo'](this['currentDisplayedUsers'])['using'](_0x5afbd4=>{const _0x4dc6bf=_0x2dcc44['config']['get']('presenceList'),_0x243cb0=new A(_0x2dcc44['locale'],_0x5afbd4,!!_0x4dc6bf['onClick']);return _0x243cb0['bind']('hasTooltip')['to'](_0x567a94,'isCollapsed',_0x734cfe=>!_0x734cfe),_0x243cb0['bind']('isFocusable')['to'](_0x567a94,'isCollapsed',_0x32ff1c=>!_0x32ff1c),_0x4dc6bf['onClick']&&this['listenTo'](_0x243cb0,'execute',()=>{this['view']['isCollapsed']||_0x4dc6bf['onClick'](_0x5afbd4,_0x243cb0['element']);}),_0x243cb0;}),this['listenTo'](_0x567a94['inlineListView'],'presencelist:show',()=>{this['view']['isCollapsed']&&this['showDropdown']();}),this['listenTo'](_0x567a94['inlineListView'],'presencelist:hide',()=>{this['presenceDropdownView']&&this['hideDropdown']();}),_0x567a94['inlineListView']['keystrokes']['set']('Enter',(_0x4b0f00,_0x1795c4)=>{this['view']['isCollapsed']&&(this['showDropdown'](),_0x1795c4());}),_0x567a94['render'](),_0x4a9311['render'](),_0x4762a9({'emitter':_0x567a94,'activator':()=>_0x4a9311['isVisible'],'contextElements':[_0x4a9311['element'],_0x567a94['inlineListView']['element']],'callback':()=>this['hideDropdown']()}),_0x2dcc44['config']['get']('presenceList.container')['appendChild'](_0x567a94['element']),this['_bodyCollection']=new _0x2f368f(this['context']['locale']),this['_bodyCollection']['attachToDom'](),this['_bodyCollection']['add'](this['balloonPanelView']),_0x567a94;}['_handleUserAdd'](_0x3b5dbd){if(!this['context']['config']['get']('presenceList.displayMe')&&_0x3b5dbd['isMe'])return;const _0x2bee4f=this['context']['config']['get']('presenceList.collapseAt')-0x1;for(this['usersCount']++;this['currentDisplayedUsers']['length']>=_0x2bee4f-(this['view']['isCollapsed']?0x1:0x0)&&this['currentDisplayedUsers']['length']>0x1;)this['currentDisplayedUsers']['remove'](0x1);const _0xaa9804=_0x3b5dbd['isMe']?0x0:this['currentDisplayedUsers']['length'];this['currentDisplayedUsers']['add'](_0x3b5dbd,_0xaa9804);}['_handleUserRemove'](_0x2da467){this['usersCount']--;const {collapseAt:_0x37b6a9}=this['context']['config']['get']('presenceList'),_0x4da0d4=this['usersCount']>=_0x37b6a9;if(this['currentDisplayedUsers']['get'](_0x2da467['id']))this['currentDisplayedUsers']['remove'](_0x2da467['id']);else{if(_0x4da0d4&&this['currentDisplayedUsers']['length']+0x1===_0x37b6a9-0x1)return;}if(this['currentDisplayedUsers']['length']+(_0x4da0d4?0x1:0x0)<this['usersCount']){for(const _0x41c029 of Array['from'](this['_allConnectedUsers'])['reverse']())if(!this['currentDisplayedUsers']['get'](_0x41c029['id'])&&(this['currentDisplayedUsers']['add'](_0x41c029,Math['min'](this['currentDisplayedUsers']['length']-(_0x4da0d4?0x1:0x0),0x1)),this['currentDisplayedUsers']['length']+(_0x4da0d4?0x1:0x0)===_0x37b6a9-0x1))return;}}['showDropdown'](){if(this['presenceDropdownView'])return;const _0x187a4d=this['context']['config']['get']('presenceList');this['presenceDropdownView']=new L(this['context']['locale'],!!_0x187a4d['onClick']),this['view']['inlineListView']['isExpanded']=!0x0,this['listenTo'](this['presenceDropdownView'],'presencelist:hide',()=>{this['presenceDropdownView']&&this['hideDropdown']();});const {listWrapperView:_0x4493c7}=this['presenceDropdownView'];_0x4493c7['items']['bindTo'](this['_allConnectedUsers'])['using'](_0x3dc280=>{if(!_0x187a4d['displayMe']&&_0x3dc280['isMe'])return null;const _0xd18bc7=new j(this['context']['locale'],_0x3dc280,!!_0x187a4d['onClick']);return _0x187a4d['onClick']&&this['listenTo'](_0xd18bc7,'execute',()=>{_0x187a4d['onClick'](_0x3dc280,_0xd18bc7['element']);}),_0xd18bc7;}),this['balloonPanelView']['content']['add'](this['presenceDropdownView']),this['balloonPanelView']['pin']({'target':this['view']['inlineListView']['element']}),_0x4493c7['focus'](),_0x4493c7['checkIfScrollable']();const _0x524768=(_0x307300,_0x3f6b7d)=>{this['hideDropdown'](),this['view']['inlineListView']['focus'](),_0x3f6b7d();};_0x4493c7['keystrokes']['set']('Esc',_0x524768),_0x4493c7['keystrokes']['set']('Shift+Tab',_0x524768),_0x4493c7['keystrokes']['set']('Tab',(_0x25ea89,_0x3e1e1d)=>{!function(_0x24091c){const _0x28ce54=['a','button','input','select','textarea','[tabindex]','[contenteditable]']['map'](_0x2e9aa0=>_0x2e9aa0+':not([disabled]):not([tabindex=\x22-1\x22])')['join'](','),_0x52a12b=[...document['body']['querySelectorAll'](_0x28ce54)]['filter'](_0x14a283=>_0x14a283===document['activeElement']||_0x14a283['offsetWidth']+_0x14a283['offsetHeight']>0x0)['sort']((_0x524b0d,_0x470bac)=>(_0x524b0d['tabIndex']||0x0)-(_0x470bac['tabIndex']||0x0)),_0x4db4f9=_0x52a12b['indexOf'](_0x24091c),_0x5eb0ff=_0x52a12b[(_0x4db4f9+0x1)%_0x52a12b['length']];_0x5eb0ff&&_0x5eb0ff['focus']();}(this['view']['element']),this['hideDropdown'](),_0x3e1e1d();}),_0x4493c7['focusTracker']['add'](this['view']['element']),_0x4493c7['focusTracker']['on']('change:isFocused',(_0x180597,_0x3334f8,_0x15e707)=>{_0x15e707||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 gt extends _0x1a80af{static get['requires'](){return[i,r];}static get['pluginName'](){return'PresenceList';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}export{s as CloudServicesCommentsAdapter,c as CloudServicesRevisionHistoryAdapter,m as CloudServicesTrackChangesAdapter,gt as PresenceList,r as PresenceListUI,l as RealTimeCollaborationClient,g as RealTimeCollaborativeComments,a as RealTimeCollaborativeEditing,mt as RealTimeCollaborativeRevisionHistory,ft as RealTimeCollaborativeTrackChanges,i as Sessions,n as WebSocketGateway};
23
+ import{ContextPlugin as _0x4cb85d,Plugin as _0x532c83,PendingActions as _0x37736b,Context as _0x31709a}from'@ckeditor/ckeditor5-core/dist/index.js';import{DomEmitterMixin as _0x4ee733,CKEditorError as _0xa9b19,Collection as _0x3c6690,global as _0x553c6f,version as nt,uid as _0x2974f1,KeystrokeHandler as _0x4896af}from'@ckeditor/ckeditor5-utils/dist/index.js';import{Notification as _0x2ad1d6,View as _0x2153f8,ListView as _0x3466f8,ListItemView as et,LabelView as ot,BalloonPanelView as _0x15a511,clickOutsideHandler as _0x34db55,BodyCollection as _0x51fd37}from'@ckeditor/ckeditor5-ui/dist/index.js';import{ModelLiveRange as _0x4bf6b4,History as _0x38e4be,NoOperation as _0x28f9e4,InsertOperation as _0x5aa108,MarkerOperation as _0x295f41,RootAttributeOperation as _0x210995,transformOperationSets as _0x399e35,OperationFactory as _0x1ba137}from'@ckeditor/ckeditor5-engine/dist/index.js';import{WebSocketGateway as rt,WEB_SOCKET_GATEWAY_STATES as _0x5b0dbe,CollaborativeEditingService as _0x51f844,User as at,CommentsService as _0x59ea95,TrackChangesService as _0x3ff928,RevisionHistoryService as it,EditorService as tt}from'@ckeditor/ckeditor-cloud-services-collaboration/dist/index.js';import{Users as _0x1a7c05,UserView as st}from'ckeditor5-collaboration/dist/index.js';import{Compressor as _0x3bde43}from'@ckeditor/ckeditor5-operations-compressor/dist/index.js';import{isElement as _0x76099f}from'es-toolkit/compat';class n extends _0x4cb85d{static ['WebSocketGateway']=/* #__PURE__ -- @preserve */
24
+ ((()=>rt)());static ['initialReconnectionInterval']=0x3e8;['connection'];['_reconnectionStack'];['_shouldPluginsReconnect'];['_domEmitter'];static get['requires'](){return['CloudServices',_0x2ad1d6];}static get['pluginName'](){return'WebSocketGateway';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x390de1){super(_0x390de1),this['set']('state',_0x5b0dbe['CONNECTED']),this['set']('_isBrowserOffline',!0x1),this['_reconnectionStack']=new Set(),this['_shouldPluginsReconnect']=!0x1,this['_domEmitter']=new(_0x4ee733())();}['init'](){const _0x2337a9=this['context'],_0x21fe0d=_0x2337a9['plugins']['get']('CloudServices'),_0x32727c=_0x2337a9['plugins']['get'](_0x2ad1d6);if(!_0x21fe0d['token'])throw new _0xa9b19('websocketgateway-missing-token',this);if(!_0x21fe0d['webSocketUrl'])throw new _0xa9b19('websocketgateway-missing-websocket-url',this);return this['_domEmitter']['listenTo'](window,'offline',()=>this['_isBrowserOffline']=!0x0),this['_domEmitter']['listenTo'](window,'online',()=>this['_isBrowserOffline']=!0x1),this['context']['config']['define']('cloudServices.connectionTimeout',0xa),this['context']['config']['define']('cloudServices.requestTimeout',0x14),n['WebSocketGateway']['connect'](_0x21fe0d['token'],_0x21fe0d['webSocketUrl'],{'timeout':0x3e8*this['context']['config']['get']('cloudServices.connectionTimeout'),'requestTimeout':0x3e8*this['context']['config']['get']('cloudServices.requestTimeout')})['then'](_0x1b1dbb=>{if(this['connection']=_0x1b1dbb,this['bind']('state')['to'](_0x1b1dbb,'state',this,'_isBrowserOffline',(_0x5b8311,_0x431e60)=>('connected'!==_0x5b8311&&(this['_shouldPluginsReconnect']=!0x0),_0x431e60||_0x5b8311!==_0x5b0dbe['CONNECTED']?_0x5b0dbe['DISCONNECTED']:this['state']==_0x5b0dbe['DISCONNECTED']&&this['_shouldPluginsReconnect']?(this['_shouldPluginsReconnect']=!0x1,this['_reconnect'](),_0x5b0dbe['CONNECTING']):_0x5b0dbe['CONNECTED'])),this['connection']['on']('error',(_0x279cf3,_0x5bfcee)=>{if('limitExceeded'!==_0x5bfcee['code'])throw console['error'](_0x5bfcee),new _0xa9b19('cloudservices-init',null,{'originalError':_0x5bfcee});_0x32727c['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'});}),!_0x1b1dbb['me'])return new Promise(_0x3f8c6f=>_0x1b1dbb['on']('change:me',_0x3f8c6f));})['catch'](_0x5cbdf9=>{throw console['error'](_0x5cbdf9),new _0xa9b19('cloudservices-init',null,{'originalError':_0x5cbdf9});});}['addToReconnectionStack'](_0x177fdb){if('function'!=typeof _0x177fdb['reconnect'])throw new _0xa9b19('websocketgateway-invalid-plugin-interface',this);if(this['isInReconnectionStack'](_0x177fdb))throw new _0xa9b19('websocketgateway-plugin-already-registered',this,{'name':_0x177fdb['constructor']['pluginName']});this['_reconnectionStack']['add'](_0x177fdb);}['removeFromReconnectionStack'](_0x5dbe60){this['_reconnectionStack']['delete'](_0x5dbe60);}['isInReconnectionStack'](_0x19a989){return this['_reconnectionStack']['has'](_0x19a989);}['_reconnect'](){return this['connection']['reconnect']()['then'](()=>Promise['all'](Array['from'](this['_reconnectionStack'],_0x121092=>_0x121092['reconnect']())))['then'](()=>this['state']=_0x5b0dbe['CONNECTED'])['catch'](_0x445d01=>{throw console['error'](_0x445d01),new _0xa9b19('cloudservices-reconnection-error',this['context']);});}['disconnect'](){this['connection']&&this['connection']['disconnect'](),this['state']=_0x5b0dbe['DISCONNECTED'],this['_domEmitter']['stopListening']();}['destroy'](){this['disconnect'](),super['destroy']();}}class i extends _0x4cb85d{['channelSessions'];['channelConnectedUsers'];['allConnectedUsers'];['_registeredSessions'];['_uniqueUsersCount'];['_users'];static get['pluginName'](){return'Sessions';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}static get['requires'](){return[n,_0x1a7c05];}constructor(_0x4edefa){super(_0x4edefa),this['channelSessions']=new Map(),this['channelConnectedUsers']=new Map(),this['allConnectedUsers']=new _0x3c6690(),this['_registeredSessions']=new Map(),this['_uniqueUsersCount']=0x0,this['_users']=this['context']['plugins']['get'](_0x1a7c05);}['init'](){const _0x37530e=this['context']['plugins']['get'](n);this['listenTo'](_0x37530e,'change:state',(_0x1968ba,_0x2a3125,_0x4d57e7)=>{if('connected'!==_0x4d57e7)this['channelSessions']['forEach'](_0x2e62c6=>_0x2e62c6['clear']()),this['channelConnectedUsers']['forEach'](_0x19da2a=>_0x19da2a['clear']()),this['allConnectedUsers']['clear']();else{for(const [_0x5577ed,_0x5eccf8]of this['_registeredSessions'])for(const _0x90510a of _0x5eccf8)this['_handleSessionAdd'](_0x5577ed,_0x90510a);}}),this['_createUser'](_0x37530e['connection']['me'],!0x0);}['register'](_0x52210c,_0x30c3ad){if(this['_registeredSessions']['has'](_0x52210c))throw new _0xa9b19('sessions-register-already-registered',null,{'channelId':_0x52210c});this['_registeredSessions']['set'](_0x52210c,_0x30c3ad),this['channelSessions']['set'](_0x52210c,new _0x3c6690()),this['channelConnectedUsers']['set'](_0x52210c,new _0x3c6690()),this['listenTo'](_0x30c3ad,'add',(_0x57da7d,_0x397954)=>this['_handleSessionAdd'](_0x52210c,_0x397954)),this['listenTo'](_0x30c3ad,'remove',(_0x2545da,_0x48e630)=>this['_handleSessionRemove'](_0x52210c,_0x48e630));for(const _0x4bd2dd of _0x30c3ad)this['_handleSessionAdd'](_0x52210c,_0x4bd2dd);}['unregister'](_0x1d897f){if(!this['_registeredSessions']['has'](_0x1d897f))throw new _0xa9b19('sessions-unregister-not-exist',null,{'channelId':_0x1d897f});const _0xfe04bd=this['_registeredSessions']['get'](_0x1d897f);this['stopListening'](_0xfe04bd);for(const _0x515005 of _0xfe04bd)'connected'===this['context']['plugins']['get'](n)['state']&&this['_handleSessionRemove'](_0x1d897f,_0x515005);this['_registeredSessions']['delete'](_0x1d897f),this['channelSessions']['delete'](_0x1d897f),this['channelConnectedUsers']['delete'](_0x1d897f);}get['mySessionId'](){return this['context']['plugins']['get'](n)['connection']['sessionId'];}['getUserBySessionId'](_0x2bae80){for(const _0x3a4a9e of this['channelSessions']['values']())for(const _0x3da473 of _0x3a4a9e)if(_0x3da473['id']===_0x2bae80)return _0x3da473['user'];}['getUserSessions'](_0x39189c,_0x606004){const _0xe58e73=_0x606004?[this['channelSessions']['get'](_0x606004)]:this['channelSessions']['values'](),_0x140fc5=new Set();for(const _0x566d96 of _0xe58e73)for(const _0x4e03e1 of _0x566d96)_0x4e03e1['user']['id']===_0x39189c['id']&&_0x140fc5['add'](_0x4e03e1['id']);return _0x140fc5;}['getUserRole'](_0x46041d){for(const _0x14370b of this['channelSessions']['values']())for(const _0x52acfe of _0x14370b)if(_0x52acfe['user']===_0x46041d)return _0x52acfe['role'];}['_handleSessionAdd'](_0x717e26,_0x4a21b0){if('connected'!==this['context']['plugins']['get'](n)['state'])return;const _0x9dd620=_0x4a21b0['user'],_0x159fb7=this['_users']['getUser'](_0x9dd620['id'])||this['_createUser'](_0x9dd620),_0x58ca61=Object['assign']({},_0x4a21b0,{'user':_0x159fb7});if(this['channelSessions']['get'](_0x717e26)['add'](_0x58ca61),!_0x9dd620['hiddenInPresenceList']){const _0x18c40a=this['channelConnectedUsers']['get'](_0x717e26);_0x18c40a['has'](_0x159fb7['id'])||_0x18c40a['add'](_0x159fb7),this['allConnectedUsers']['has'](_0x159fb7['id'])||_0x9dd620['hiddenInPresenceList']||this['allConnectedUsers']['add'](_0x159fb7,_0x159fb7['isMe']?0x0:void 0x0);}this['fire']('sessionAdd:'+_0x717e26,{'channelId':_0x717e26,'session':_0x58ca61});}['_handleSessionRemove'](_0x30e533,_0x146c4f){if('connected'!==this['context']['plugins']['get'](n)['state'])return;const _0x8ed00=this['channelConnectedUsers']['get'](_0x30e533),_0x3dbd29=_0x146c4f['user'];_0x3dbd29['id']&&(this['channelSessions']['get'](_0x30e533)['remove'](_0x146c4f['id']),_0x8ed00['has'](_0x3dbd29['id'])&&!this['getUserSessions'](_0x3dbd29,_0x30e533)['size']&&_0x8ed00['remove'](_0x3dbd29['id']),this['allConnectedUsers']['get'](_0x3dbd29['id'])&&!this['getUserSessions'](_0x3dbd29)['size']&&this['allConnectedUsers']['remove'](_0x3dbd29['id']));}['_createUser'](_0x1e7591,_0x2663cb){const _0x4325f4=this['_users']['addUser'](_0x1e7591);return _0x2663cb&&this['_users']['defineMe'](_0x1e7591['id']),_0x4325f4['orderNumber']=this['_uniqueUsersCount']++,_0x4325f4;}}class W extends _0x532c83{['_domEmitter']=new(_0x4ee733())();static get['requires'](){return[i];}static get['pluginName'](){return'UserMarkers';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['init'](){const _0x36893e=this['editor'],_0x27a538=_0x36893e['plugins']['get'](i);_0x36893e['conversion']['for']('editingDowncast')['markerToElement']({'model':'user:position','view':(_0x5d4b18,{writer:_0x219002})=>function(_0x4c2192,_0x145721,_0x318a83,_0x37a74f){const _0x254bde=_0x4c2192['markerName']['split'](':')[0x2],_0x2b7206=_0x318a83['getUserBySessionId'](_0x254bde);if(!_0x2b7206||_0x254bde===_0x318a83['mySessionId'])return;if(!_0x37a74f['model']['schema']['checkChild'](_0x4c2192['markerRange']['start'],'$text'))return;const _0x1c6789={'class':'ck-user__marker\x20'+_0x2b7206['color']['getMarkerClass'](),'data-name':_0x2b7206['name'],'data-session-id':_0x254bde},_0x5844fa=_0x37a74f['model']['markers']['get'](_0x4c2192['markerName']),_0x1ba2d3=_0x5844fa['getStart'](),_0x35f84b=_0x1ba2d3['nodeAfter'],_0x1d5ce2=_0x37a74f['model']['schema'];if(_0x35f84b&&_0x1d5ce2['isObject'](_0x35f84b)&&_0x1d5ce2['isInline'](_0x35f84b)&&!_0x37a74f['model']['markers']['get']('user:range:'+_0x254bde)['getRange']()['isCollapsed'])return;const _0x25ae13=_0x1ba2d3['parent'];return _0x37a74f['model']['schema']['isLimit'](_0x25ae13)&&!_0x37a74f['model']['hasContent'](_0x25ae13)&&(_0x1c6789['contenteditable']=!0x1),function(_0x5a22e9,_0x3a06a1,_0x23c463){const _0x5a4c40=_0x5a22e9['createUIElement']('span',_0x3a06a1);return _0x5a22e9['setCustomProperty']('userPositionMarker',!0x0,_0x5a4c40),_0x5a4c40['render']=function(_0x3ea42a){const _0x2d0855=this['toDomElement'](_0x3ea42a),_0x392832=document['createElement']('span');return _0x392832['classList']['add']('ck-user__marker-tooltip'),_0x392832['setAttribute']('contenteditable','false'),_0x392832['setAttribute']('spellcheck','false'),_0x392832['textContent']=_0x23c463['name'],_0x2d0855['innerHTML']='⁠<span\x20class=\x22ck-user__marker-line\x22\x20contenteditable=\x22false\x22><span\x20class=\x22ck-user__marker-dot\x22></span></span>'+_0x392832['outerHTML']+'⁠',_0x2d0855['addEventListener']('mouseenter',()=>{_0x2d0855['classList']['add']('ck-user__marker_hovered');}),_0x2d0855['addEventListener']('mouseleave',()=>{_0x2d0855['classList']['remove']('ck-user__marker_hovered');}),_0x2d0855;},_0x5a4c40['isSimilar']=function(_0x3f2153){return!(!this['getCustomProperty']('userPositionMarker')||!_0x3f2153['getCustomProperty']('userPositionMarker')||this['getAttribute']('data-session-id')!=_0x3f2153['getAttribute']('data-session-id'));},_0x5a4c40;}(_0x145721,_0x1c6789,_0x2b7206);}(_0x5d4b18,_0x219002,_0x27a538,_0x36893e)}),_0x36893e['conversion']['for']('editingDowncast')['markerToHighlight']({'model':'user:range','view':_0x33980e=>function(_0x281de2,_0x4a68c5){const _0x1d7635=_0x281de2['markerName']['split'](':')[0x2];if(_0x1d7635===_0x4a68c5['mySessionId'])return null;const _0x3beb7a=_0x4a68c5['getUserBySessionId'](_0x1d7635);if(!_0x3beb7a)return{'id':_0x1d7635,'classes':[]};return{'id':_0x1d7635,'classes':['ck-user__selection',_0x3beb7a['color']['getSelectionClass']()],'attributes':{'data-session-id':_0x1d7635},'priority':0x7d0+_0x3beb7a['orderNumber']};}(_0x33980e,_0x27a538)}),function(_0x474d8a){const _0x3be3dd=_0x474d8a['model'],_0x1f3e22=new Map(),_0x24c4ca=_0x474d8a['plugins']['get'](i);_0x3be3dd['markers']['on']('update:user:range',(_0x17f008,_0x3bb61c,_0x35b0b0,_0x52a0de)=>{if(!_0x52a0de&&_0x1f3e22['get'](_0x3bb61c['name']))return _0x1f3e22['get'](_0x3bb61c['name'])['detach'](),void _0x1f3e22['delete'](_0x3bb61c['name']);const _0x286dbb=_0x3bb61c['name']['split'](':')[0x2];if(_0x286dbb===_0x24c4ca['mySessionId'])return;const _0x3aac00='user:position:'+_0x286dbb;_0x3be3dd['markers']['has'](_0x3aac00)&&_0x474d8a['editing']['reconvertMarker'](_0x3aac00),_0x3bb61c['on']('change:range',(_0x11c811,_0x3bb547,_0x412467)=>{if('$graveyard'!=_0x3bb547['root']['rootName']&&'$graveyard'==_0x3bb61c['getRange']()['root']['rootName']&&!_0x1f3e22['has'](_0x3bb61c['name'])){const _0x32e970=_0x3be3dd['schema']['getNearestSelectionRange'](_0x412467['deletionPosition']);if(_0x32e970){const _0xa0d045=_0x4bf6b4['fromRange'](_0x32e970);_0x1f3e22['set'](_0x3bb61c['name'],_0xa0d045),_0xa0d045['on']('change:range',(_0x2926f4,_0x22156f,_0x124087)=>{if('$graveyard'==_0xa0d045['root']['rootName']){const _0x127e2d=_0x3be3dd['schema']['getNearestSelectionRange'](_0x124087['deletionPosition']);_0x127e2d?(_0xa0d045['start']=_0x127e2d['start'],_0xa0d045['end']=_0x127e2d['end']):(_0x1f3e22['delete'](_0x3bb61c['name']),_0xa0d045['detach']());}});}}});}),_0x3be3dd['document']['on']('change',()=>{_0x1f3e22['size']>0x0&&_0x3be3dd['enqueueChange']({'isUndoable':!0x1},_0x1acdb8=>{for(const [_0x232126,_0x111827]of _0x1f3e22)'$graveyard'==_0x3be3dd['markers']['get'](_0x232126)['getRange']()['root']['rootName']&&(re(_0x232126['split'](':')[0x2],_0x111827['toRange'](),_0x3be3dd,_0x1acdb8),_0x111827['detach']());_0x1f3e22['clear']();});});}(_0x36893e),this['_domEmitter']['listenTo'](_0x553c6f['document'],'keydown',(_0x47ed33,{key:_0x3e75bb})=>{'Escape'===_0x3e75bb&&function(_0x1bd36d){_0x1bd36d['editing']['view']['change'](_0x5fcc35=>{for(const _0x4cbfc0 of _0x1bd36d['model']['markers']){if(!_0x4cbfc0['name']['startsWith']('user:position'))continue;const _0x3fb689=_0x1bd36d['editing']['mapper']['markerNameToElements'](_0x4cbfc0['name']);if(_0x3fb689){for(const _0x3d4295 of _0x3fb689)_0x5fcc35['removeClass']('ck-user__marker_hovered',_0x3d4295);}}});}(_0x36893e);},{'useCapture':!0x0});}['afterInit'](){const _0x5b6539=this['editor'],_0x201a24=_0x5b6539['commands']['get']('undo');_0x201a24&&_0x5b6539['model']['on']('applyOperation',(_0x40d6db,_0x4d4726)=>{const _0x1a9055=_0x4d4726[0x0];if(!_0x1a9055['isDocumentOperation'])return;if('marker'!=_0x1a9055['type']||!_0x1a9055['name']['startsWith']('user:'))return;const _0x39e1ea=_0x1a9055['batch'];_0x201a24['_createdBatches']['has'](_0x39e1ea)&&(_0x1a9055['newRange']=_0x1a9055['oldRange']?_0x5b6539['model']['createRange'](_0x1a9055['oldRange']['start'],_0x1a9055['oldRange']['end']):null);},{'priority':'highest'});}['destroy'](){return this['_domEmitter']['stopListening'](),super['destroy']();}['createUserMarkerOperations'](){const _0x559dc1=this['editor'],_0x3c2445=_0x559dc1['model']['document'],_0x26fd89=_0x559dc1['plugins']['get'](i);_0x559dc1['model']['enqueueChange']({'isUndoable':!0x1},_0x4ba919=>{const _0xe3201='user:range:'+_0x26fd89['mySessionId'],_0x42e8a4='user:position:'+_0x26fd89['mySessionId'],_0x59c3d4=_0x559dc1['model']['markers']['has'](_0xe3201);_0x559dc1['editing']['view']['hasDomSelection']?re(_0x26fd89['mySessionId'],_0x3c2445['selection']['getFirstRange'](),_0x559dc1['model'],_0x4ba919):_0x59c3d4&&(_0x4ba919['removeMarker'](_0xe3201),_0x4ba919['removeMarker'](_0x42e8a4));});}}function re(_0x2bfe10,_0x2147e1,_0x563483,_0x3eced7){const _0x2a7f11='user:range:'+_0x2bfe10,_0x48a052='user:position:'+_0x2bfe10,_0x843f02=_0x2147e1['getContainedElement']();let _0x1367e2=_0x2147e1['start'];if(_0x843f02&&_0x843f02['is']('element','tableCell')){const _0x394e68=function(_0x18b77f,_0x775fee){for(const _0xeda196 of _0x18b77f['getPositions']())if(_0x775fee['schema']['checkChild'](_0xeda196,'$text'))return _0xeda196;}(_0x2147e1,_0x563483);_0x394e68&&(_0x1367e2=_0x394e68,_0x2147e1=_0x3eced7['createRange'](_0x1367e2));}const _0x517fdd=_0x3eced7['createRange'](_0x1367e2);_0x563483['markers']['has'](_0x2a7f11)?(_0x3eced7['updateMarker'](_0x2a7f11,{'range':_0x2147e1}),_0x3eced7['updateMarker'](_0x48a052,{'range':_0x517fdd})):(_0x3eced7['addMarker'](_0x2a7f11,{'range':_0x2147e1,'usingOperation':!0x0}),_0x3eced7['addMarker'](_0x48a052,{'range':_0x517fdd,'usingOperation':!0x0}));}function q(_0x1fdb68,_0x19ac56,_0x5916e3){const _0x4158b4=_0x1fdb68['t'],t=_0x1fdb68['t'];switch(_0x19ac56){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 _0x4158b4({'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'},_0x5916e3);default:return'';}}let K=0x1;class l extends _0x532c83{static ['CollaborativeEditingService']=/* #__PURE__ -- @preserve */
25
+ ((()=>_0x51f844)());['_offset'];['sessionId'];['serverHistory'];['_channelId'];['_service'];['_document'];['_compressor'];['_bufferedOperations'];['_knownOperations'];['_knownRootNames'];['_pendingAction'];['_hasSelectionChanged'];['_sendBufferedOperationsDelayId'];['_baseBufferDelay'];['_currentBufferDelay'];['_lastSyncedOperationId'];['_disconnectionOperations'];['_operationIdentifier'];static get['requires'](){return[n,i,W,_0x37736b,_0x1a7c05,_0x2ad1d6];}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 _0x46edba=this['serverHistory']['getOperations']();for(let _0x268de6=_0x46edba['length']-0x1;_0x268de6>=0x0;_0x268de6--){const _0x5a9cb6=_0x46edba[_0x268de6];if(!this['_disconnectionOperations']['has'](_0x5a9cb6))return _0x5a9cb6['baseVersion']+0x1-this['_offset'];}return 0x0;}constructor(_0x48ca18){if(super(_0x48ca18),this['_offset']=0x0,this['sessionId']=null,this['serverHistory']=new _0x38e4be(),this['editor']['config']['define']('collaboration',{}),this['_channelId']=this['editor']['config']['get']('collaboration.channelId'),!this['_channelId'])throw new _0xa9b19('collaboration-missing-channelid',this);const _0x43b315=_0x48ca18['config']['get']('cloudServices.bundleVersion')||nt;this['_service']=new l['CollaborativeEditingService'](_0x43b315,this['_channelId']),this['_document']=this['editor']['model']['document'],this['_compressor']=new _0x3bde43(),this['_bufferedOperations']=[],this['_knownOperations']=new WeakSet(),this['_knownRootNames']=new Set(),this['set']('_isPendingUpdate',!0x1),this['set']('_hasSynchronizationProblem',!0x1),this['_pendingAction']=null,this['_hasSelectionChanged']=!0x1,this['_sendBufferedOperationsDelayId']=null,this['_baseBufferDelay']=0x12c,this['_currentBufferDelay']=this['_baseBufferDelay'],this['_lastSyncedOperationId']=null,this['_disconnectionOperations']=new WeakSet(),this['_operationIdentifier']=new X(this['_disconnectionOperations']);}['init'](){const _0x568a8b=this['editor'],_0x3168d6=_0x568a8b['plugins']['get'](_0x1a7c05),_0x54fc9f=_0x568a8b['plugins']['get'](n);this['listenTo'](_0x3168d6,'getOperationAuthor',(_0x25a7a4,_0x123056)=>{const _0x350c1d=_0x123056[0x0];_0x350c1d['_authorId']&&(_0x25a7a4['return']=_0x3168d6['getUser'](_0x350c1d['_authorId']),_0x25a7a4['stop']()),null===_0x350c1d['_authorId']&&(_0x25a7a4['return']=null,_0x25a7a4['stop']());},{'priority':'high'}),this['listenTo'](_0x568a8b['model']['document']['selection'],'change:range',(_0x2bc5f3,_0x336c20)=>{_0x336c20['directChange']&&this['_refreshUserSelectionMarkers']();}),this['listenTo'](_0x568a8b['editing']['view'],'change:hasDomSelection',()=>{this['_refreshUserSelectionMarkers']();}),this['_initThrowingOnDataSet'](),_0x568a8b['model']['on']('applyOperation',(_0x3ebe22,_0x2ec07d)=>{const _0x10272c=_0x2ec07d[0x0];_0x10272c['isDocumentOperation']&&(this['_saveOperationInBuffer'](_0x10272c),this['_shouldSendUpdate']()&&this['_sendBufferedOperationsDelayed']());}),this['_setUpDataInit'](),this['bind']('_isEditingAllowed')['to'](_0x54fc9f,'state',this,'_hasSynchronizationProblem',(_0x34b511,_0x3b4ea9)=>'connected'===_0x34b511&&!_0x3b4ea9),this['on']('change:_isEditingAllowed',()=>{this['_isEditingAllowed']?_0x568a8b['disableReadOnlyMode']('rtc-offline'):_0x568a8b['enableReadOnlyMode']('rtc-offline');}),this['_isEditingAllowed']?_0x568a8b['disableReadOnlyMode']('rtc-offline'):_0x568a8b['enableReadOnlyMode']('rtc-offline'),this['set']('_isConnected',!0x1);}async['reconnect'](){const _0x1675e4=this['editor']['plugins']['get'](i),_0x5eb20b=this['editor']['plugins']['get'](n);try{this['_isPendingUpdate']=!0x0,_0x1675e4['unregister'](this['_channelId']);const _0x1c79cc=await this['_service']['reconnect'](_0x5eb20b['connection'],this['lastSyncVersion']);await this['_handleReconnectionResponse'](_0x1c79cc)&&(this['_isPendingUpdate']=!0x1,this['_clearPendingAction']());const _0xdbf584=await this['_service']['getConnectedSessions']();_0x1675e4['register'](this['_channelId'],_0xdbf584),this['_handleSendingSelectionMarkers'](),this['_isConnected']=!0x0;}catch(_0x18f189){if(function(_0x47b17b){return'404'===_0x47b17b['code'];}(_0x18f189)&&this['sessionId'])await this['_connectAfterSessionHasBeenFlushed']();else{if(function(_0x5312ff){return'409'===_0x5312ff['code'];}(_0x18f189)){const _0x41bcb6=q(this['editor']['locale'],'The\x20document\x20cannot\x20be\x20connected\x20back\x20to\x20the\x20server.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.');this['_handleReconnectionError'](_0x41bcb6);}else{if(!(_0x18f189 instanceof J))throw _0x18f189;this['_handleReconnectionError']();}}}}['destroy'](){const _0x23862c=this['editor']['plugins']['get'](n),_0x5bcca7=this['editor']['plugins']['get'](i);this['editor']['enableReadOnlyMode']('rtc-destroyed'),_0x5bcca7['channelSessions']['has'](this['_channelId'])&&_0x5bcca7['unregister'](this['_channelId']),_0x23862c['removeFromReconnectionStack'](this),this['_disconnectService'](),super['destroy']();}async['_handleReconnectionResponse'](_0x58c4fd){if(this['sessionId']!==_0x58c4fd['sessionId']&&this['_lastSyncedOperationId']!==_0x58c4fd['lastOperationId'])throw new J();return this['sessionId']=_0x58c4fd['sessionId'],this['_handleServerResponse']([],{..._0x58c4fd,'wereChangesApplied':!0x1,'data':_0x58c4fd['data']},'reconnect');}async['_connectService'](_0x56e0d6,_0x2f9b58=!0x1){const {connection:_0x4afd45}=this['editor']['plugins']['get'](n);l['CollaborativeEditingService']['getConnectedSessions'](_0x4afd45,this['_channelId'])['then'](_0xd904da=>this['_initSessionsHandling'](_0xd904da))['catch'](_0x29ce30=>{this['_crash']('realtimecollaborationclient-init-session-connection-error',_0x29ce30);}),this['listenTo'](this['_service'],'operationsReceived',this['_handleReceivedOperations']['bind'](this)),this['listenTo'](this['_service'],'error',(_0x408c77,_0x58ddc1)=>{this['_crash']('realtimecollaborationclient-init-service-internal-error',_0x58ddc1);}),this['listenTo'](this['_service'],'disconnected',()=>{this['_isConnected']=!0x1;});const _0x17cc6f=this['_operationIdentifier']['getIdOfTheLastOperation'](_0x56e0d6);this['_isPendingUpdate']=!0x0;const _0x34ce11=await this['_service']['connect'](_0x4afd45,this['_compressOperations'](_0x56e0d6),_0x17cc6f);if(this['sessionId']=_0x34ce11['sessionId'],_0x2f9b58){if(!_0x34ce11['wereChangesApplied'])return void this['_handleReconnectionError']();this['_isPendingUpdate']=!0x1,this['_clearPendingAction'](),this['serverHistory']['reset'](),this['_offset']=_0x34ce11['offset'],this['serverHistory']['version']=this['_offset'],await this['_handleServerResponse'](_0x56e0d6,_0x34ce11,'reconnection:\x20flushed\x20session');}else await this['_handleInitialConnectionData'](_0x34ce11,_0x56e0d6);this['_handleSendingSelectionMarkers'](),this['_isConnected']=!0x0;}['_handleSendingSelectionMarkers'](){const _0x1f64a1=this['editor']['plugins']['get'](i),_0x177992=this['editor']['plugins']['get'](W),_0x3607b6=_0x1f64a1['channelSessions']['get'](this['_channelId']);_0x3607b6&&_0x3607b6['length']>0x1?_0x177992['createUserMarkerOperations']():this['listenTo'](_0x1f64a1,'sessionAdd:'+this['_channelId'],()=>{0x2===_0x1f64a1['channelSessions']['get'](this['_channelId'])['length']&&_0x177992['createUserMarkerOperations']();});}async['_handleReceivedOperations'](_0x6aa47d,_0x4aa88c,_0x35f6c8,_0x45e189){if(!this['_isPendingUpdate']&&this['_document']['version']==_0x4aa88c){const _0x279857=this['_decompressOperations'](_0x35f6c8,_0x45e189);await this['_fetchMissingUsers'](_0x279857),this['_handleExternalOperations'](_0x279857,_0x4aa88c,_0x35f6c8['lastOperationId'])||this['_crash']('realtimecollaborationclient-init-service-incorrect-server-operation');}}async['_connectAfterSessionHasBeenFlushed'](){this['_disconnectService']();const {locale:_0x103886}=this['editor'];let _0x24178b;try{_0x24178b=await this['_service']['getDocumentDetails']();}catch{const _0x3e9164=q(_0x103886,'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'](_0x3e9164);}const _0x52fe44=_0x24178b['currentDocumentSession']||_0x24178b['lastDocumentSession'];if(this['_lastSyncedOperationId']!==_0x52fe44['lastOperationId']){const _0x3b91ef=q(_0x103886,'The\x20last\x20saved\x20version\x20of\x20the\x20document\x20does\x20not\x20match\x20the\x20local\x20version.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.');return void this['_handleReconnectionError'](_0x3b91ef);}await this['_connectService'](this['editor']['model']['document']['history']['getOperations'](),!0x0);}['_disconnectService'](){this['_service']['disconnect'](),this['_bufferedOperations']=[],clearTimeout(this['_sendBufferedOperationsDelayId']),this['stopListening'](this['_service']);}['_initSessionsHandling'](_0x1c6bd5){const _0x37e58b=this['editor']['plugins']['get'](i);this['listenTo'](_0x37e58b,'sessionAdd:'+this['_channelId'],(_0x37cc5b,{session:_0x281cd5})=>{if(_0x281cd5['id']===_0x37e58b['mySessionId']){_0x37cc5b['off']();const _0x13e7a6=this['editor']['plugins']['has']('CommentsOnly')&&this['editor']['plugins']['get']('CommentsOnly');let _0x3e9f11=_0x281cd5['permissions'];_0x13e7a6&&_0x13e7a6['isEnabled']&&(_0x3e9f11=_0x3e9f11['filter'](_0x2c51b9=>'document:write'!==_0x2c51b9)),this['editor']['plugins']['get']('Permissions')['setPermissions'](_0x3e9f11,this['_channelId']);}}),_0x37e58b['register'](this['_channelId'],_0x1c6bd5);}['_initThrowingOnDataSet'](){const _0x43b700=this['editor']['data']['set'];this['editor']['data']['set']=(..._0x5d84a1)=>{if(!_0x5d84a1[_0x5d84a1['length']-0x1]['suppressErrorInCollaboration'])throw new _0xa9b19('realtimecollaborationclient-editor-setdata-and-editor-data-set-are-forbidden-in-real-time-collaboration',this);_0x43b700['apply'](this['editor']['data'],_0x5d84a1);};}['_setUpDataInit'](){this['editor']['data']['on']('init',(_0x3d8812,[_0x586919])=>{if(this['_document']['version'])throw new _0xa9b19('realtimecollaborationclient-init-document-already-initialized',this);_0x3d8812['stop'](),this['_setPendingAction']();const _0x197395=this['editor']['config']['get']('rootsAttributes'),_0x2f4979=this['_getOperationsFromInitData'](_0x586919,_0x197395);0x0==_0x2f4979['length']&&_0x2f4979['push'](new _0x28f9e4(0x0)),_0x3d8812['return']=this['_connectService'](_0x2f4979)['then'](()=>{this['editor']['plugins']['get'](n)['addToReconnectionStack'](this),this['editor']['data']['fire']('ready');})['catch'](_0x3fd632=>this['_crash']('realtimecollaborationclient-init-connection-failed',_0x3fd632))['finally'](()=>this['_clearPendingAction']());},{'priority':'high'}),this['editor']['on']('loadRoot',async(_0x29f4f8,[_0x33d5a2,_0x103a88])=>{_0x29f4f8['stop']();const _0x40f768=this['editor']['model']['document']['getRoot'](_0x33d5a2);if(!this['_knownRootNames']['has'](_0x33d5a2)){const _0xa03b41=_0x103a88&&_0x103a88['data']?_0x103a88['data']:'',_0x399efb=_0x103a88&&_0x103a88['attributes']?_0x103a88['attributes']:{};await this['_loadRoot'](_0x33d5a2,_0xa03b41,_0x399efb);}this['editor']['model']['enqueueChange']({'isUndoable':!0x1},()=>{_0x40f768['_isLoaded']=!0x0,this['editor']['model']['document']['differ']['_bufferRootLoad'](_0x40f768);});},{'priority':'high'});}async['_fetchMissingUsers'](_0x33fe31){const _0x448bd5=this['editor']['plugins']['get'](_0x1a7c05),{connection:_0xf075ef}=this['editor']['plugins']['get'](n),_0x124b61=new Set();for(const _0x49a80f of _0x33fe31){const _0x3e53e8=_0x49a80f['_authorId'];_0x3e53e8&&!_0x448bd5['getUser'](_0x3e53e8)&&_0x124b61['add'](_0x3e53e8);}if(0x0===_0x124b61['size'])return;const _0x10643a=await at['getMany'](_0xf075ef,Array['from'](_0x124b61));for(const _0x44307f of _0x10643a)_0x448bd5['getUser'](_0x44307f['id'])||_0x448bd5['addUser'](_0x44307f);}['_getOperationsFromInitData'](_0x5bcab5,_0x5d4f52={}){const _0x4ae089=this['editor']['model'],_0x2dfb30=[];let _0x4f154b=0x0;const _0x2b952d='string'==typeof _0x5bcab5?{'main':_0x5bcab5}:_0x5bcab5;for(const _0x42dc48 of Object['keys'](_0x2b952d)){if(!this['_document']['roots']['has'](_0x42dc48))throw new _0xa9b19('realtimecollaborationclient-init-non-existent-root',this);const _0x21fa36=this['editor']['data']['parse'](_0x2b952d[_0x42dc48]),_0x201ba0=this['_document']['getRoot'](_0x42dc48),_0xadb362=new _0x5aa108(_0x4ae089['createPositionAt'](_0x201ba0,0x0),_0x21fa36,_0x4f154b++);_0x2dfb30['push'](_0xadb362);for(const [_0x6c4f0f,_0x50ab67]of _0x21fa36['markers']){const _0x32fd42=_0x4ae089['createRange'](_0x4ae089['createPositionFromPath'](_0x201ba0,_0x50ab67['start']['path']['slice']()),_0x4ae089['createPositionFromPath'](_0x201ba0,_0x50ab67['end']['path']['slice']())),_0x59fb10=new _0x295f41(_0x6c4f0f,null,_0x32fd42,_0x4ae089['markers'],!0x0,_0x4f154b++);_0x2dfb30['push'](_0x59fb10);}}if(_0x5d4f52)for(const [_0xc76d24,_0x26b2ce]of Object['entries'](_0x5d4f52)){const _0x9494ae=_0x4ae089['document']['getRoot'](_0xc76d24);if(!_0x9494ae)throw new _0xa9b19('multi-root-editor-root-attributes-no-root',null);for(const [_0x1b1818,_0x539a03]of Object['entries'](_0x26b2ce))if(null!==_0x539a03){const _0x416491=new _0x210995(_0x9494ae,_0x1b1818,null,_0x539a03,_0x4f154b++);_0x2dfb30['push'](_0x416491);}}return _0x2dfb30;}async['_loadRoot'](_0x2f646a,_0x5e3692,_0x47e6e7){this['_getOperationsFromInitData']({[_0x2f646a]:_0x5e3692},{[_0x2f646a]:_0x47e6e7})['forEach']((_0x2dd9e1,_0x378ac8)=>{_0x2dd9e1['baseVersion']=this['_document']['version']+_0x378ac8,_0x2dd9e1['_isInit']=!0x0,this['_saveOperationInBuffer'](_0x2dd9e1);}),this['_sendBufferedOperationsDelayed'](),await this['_waitUntilSynced']();}async['_handleInitialConnectionData'](_0x373a0c,_0xdc861a){let _0x320d32;this['_offset']=_0x373a0c['offset'];const _0x1c1c79=_0x373a0c['wereChangesApplied']&&!_0x373a0c['initData'],_0x59518f=_0x1c1c79?0x0:_0x373a0c['data']['baseVersion'];if(_0xdc861a['forEach'](_0x417191=>{_0x417191['_isInit']=!0x0,_0x417191['createdAt']=_0x373a0c['sessionCreatedAt'],_0x417191['_authorId']=null;}),_0x1c1c79)_0x320d32=_0xdc861a,this['_applyOperationsSet'](_0x320d32,_0x1c1c79);else{if(_0x373a0c['initData']){const _0x1810b7=this['_getOperationsFromInitData'](_0x373a0c['initData']);this['_document']['history']['version']=-_0x1810b7['length'],_0x1810b7['forEach'](_0xcb4110=>{_0xcb4110['baseVersion']-=_0x1810b7['length'],_0xcb4110['createdAt']=_0x373a0c['sessionCreatedAt'],_0xcb4110['_isInit']=!0x0,_0xcb4110['_authorId']=null;}),this['_applyOperationsSet'](_0x1810b7,!0x0),this['serverHistory']['version']=-_0x1810b7['length']+this['_offset'],this['_updateServerHistory'](_0x1810b7);}this['_document']['history']['version']=_0x59518f,_0x320d32=this['_decompressOperations'](_0x373a0c['data'],_0x373a0c['metadata']),await this['_fetchMissingUsers'](_0x320d32),this['_applyOperationsSet'](_0x320d32,_0x1c1c79);}_0x373a0c['lastOperationId']&&(this['_operationIdentifier']['setIdForTheLastOperation'](_0x320d32,_0x373a0c['lastOperationId']),this['_lastSyncedOperationId']=_0x373a0c['lastOperationId']),this['serverHistory']['version']=_0x59518f+this['_offset'],this['_updateServerHistory'](_0x320d32),_0xdc861a['filter'](_0x562446=>{const _0x754463=this['_getAffectedRoot'](_0x562446);return _0x754463&&!this['_knownRootNames']['has'](_0x754463);})['forEach']((_0x6a6b7a,_0x458c00)=>{_0x6a6b7a['baseVersion']=this['_document']['version']+_0x458c00,this['_saveOperationInBuffer'](_0x6a6b7a);}),this['_shouldSendUpdate']()?(this['_currentBufferDelay']=0x0,this['_sendBufferedOperationsDelayed'](!0x0),await this['_waitUntilSynced']()):(this['_isPendingUpdate']=!0x1,this['_clearPendingAction']());}['_crash'](_0x3d7b42,_0x58bd71){const _0x40d979=_0x58bd71&&_0x58bd71['message'];if(_0x40d979&&_0x40d979['startsWith']('realtimecollaborationclient'))throw _0x58bd71;const _0x349f35=this['editor']['plugins']['get'](n);throw this['_isPendingUpdate']=!0x0,_0x349f35['disconnect'](),this['editor']['enableReadOnlyMode']('realtimecollaborationclient-error'),new _0xa9b19(_0x3d7b42,this['editor'],_0x40d979?{'originalError':_0x40d979}:void 0x0);}['_saveOperationInBuffer'](_0x3f9542){this['_knownOperations']['has'](_0x3f9542)||(this['_knownOperations']['add'](_0x3f9542),this['_bufferedOperations']['push'](_0x3f9542),this['_pendingAction']||'marker'==_0x3f9542['type']&&!_0x3f9542['affectsData']||this['_setPendingAction']());}['_sendBufferedOperationsDelayed'](_0x2986ea=!0x1){!_0x2986ea&&this['_isPendingUpdate']||(this['_isPendingUpdate']=!0x0,clearTimeout(this['_sendBufferedOperationsDelayId']),this['_sendBufferedOperationsDelayId']=setTimeout(()=>{this['_sendBufferedOperations']()['then'](_0xeddd31=>{_0xeddd31&&(this['_clearPendingAction'](),this['_isPendingUpdate']=!0x1);})['catch'](_0x2582dc=>{this['_clearPendingAction'](),this['_isPendingUpdate']=!0x1,function(_0x537c1a){return _0x537c1a['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x537c1a['message']['startsWith']('cloud-services-internal-error:\x20Collaborative\x20Editing\x20Service\x20is\x20not\x20connected.')||_0x537c1a['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}(_0x2582dc)||this['_crash'](_0x2582dc['message'],_0x2582dc);});},this['_currentBufferDelay']));}['_waitUntilSynced'](){return new Promise(_0x45cdb3=>{this['on']('change:_isPendingUpdate',()=>{_0x45cdb3();});});}async['_sendBufferedOperations'](){const _0x2d309b=this['editor']['plugins']['get'](W);if(this['_shouldSendSelectionUpdate']()&&(_0x2d309b['createUserMarkerOperations'](),this['_hasSelectionChanged']=!0x1),!this['_shouldSendUpdate']())return!0x0;const _0x480e45=[...this['_bufferedOperations']];for(const _0x4ae24e of _0x480e45)_0x4ae24e['wasUndone']=this['_document']['history']['isUndoneOperation'](_0x4ae24e);const _0x340fa7=this['_operationIdentifier']['getIdOfTheLastOperation'](_0x480e45),_0x29e112=K++,_0x3e74e9=this['_compressOperations'](_0x480e45),_0x2fa4d5=await this['_service']['sendOperations'](_0x3e74e9,_0x3e74e9['baseVersion'],_0x340fa7);try{return await this['_handleServerResponse'](_0x480e45,_0x2fa4d5,_0x29e112);}catch(_0x1b2116){return this['_crash']('realtimecollaborationclient-sendbufferedoperations',_0x1b2116);}}async['_handleServerResponse'](_0x5a649d,_0x12dbe3,_0x34182c){if('error'in _0x12dbe3)throw _0x12dbe3['error'];let _0x583c3a=!0x1;if(_0x12dbe3['wereChangesApplied']){_0x12dbe3['lastOperationId']&&(this['_lastSyncedOperationId']=_0x12dbe3['lastOperationId']),this['_bufferedOperations']=this['_bufferedOperations']['filter'](_0x4aa520=>!_0x5a649d['includes'](_0x4aa520));for(const _0x1678ad of _0x5a649d)_0x1678ad['createdAt']='lastOperationAcceptedAt'in _0x12dbe3&&_0x12dbe3['lastOperationAcceptedAt']||void 0x0;Q(_0x5a649d,_0x12dbe3['version']-_0x5a649d['length']),this['_updateServerHistory'](_0x5a649d);const _0x562672=_0x5a649d['filter'](_0x1cca95=>{if(!_0x1cca95['_isInit'])return!0x1;const _0x8a65e1=this['_getAffectedRoot'](_0x1cca95);return _0x8a65e1&&!this['_knownRootNames']['has'](_0x8a65e1);});Q(_0x562672,this['_document']['version']),this['_applyOperationsSet'](_0x562672),_0x583c3a=!0x0,this['_currentBufferDelay']=this['_baseBufferDelay'];}else{const _0x351645=this['_decompressOperations'](_0x12dbe3['data'],_0x12dbe3['metadata'])['filter'](_0x3b3144=>_0x3b3144['baseVersion']>=this['_lastServerVersion']);_0x351645['forEach'](_0x4bbf46=>this['_addKnownRoot'](_0x4bbf46)),this['_bufferedOperations']=this['_bufferedOperations']['filter'](_0x5742b4=>!_0x5742b4['_isInit']||!this['_knownRootNames']['has'](this['_getAffectedRoot'](_0x5742b4))),this['_bufferedOperations']['length']&&Q(this['_bufferedOperations'],this['_bufferedOperations'][0x0]['baseVersion']),await this['_fetchMissingUsers'](_0x351645),_0x583c3a=this['_handleExternalOperations'](_0x351645,_0x12dbe3['version'],_0x12dbe3['lastOperationId']),this['_currentBufferDelay']=Math['round'](this['_currentBufferDelay']/0x2);}return _0x583c3a?!this['_shouldSendUpdate']()||(this['_sendBufferedOperationsDelayed'](!0x0),!0x1):this['_crash']('realtimecollaborationclient-handleserverresponse');}['_handleExternalOperations'](_0x19d56c,_0x5eb343,_0x40f79b){try{const _0x48284c={'document':this['_document'],'useRelations':!0x1,'padWithNoOps':!0x0},{operationsA:_0x2fb7c6,operationsB:_0xd0210a,originalOperations:_0x9498ca}=_0x399e35(_0x19d56c,this['_bufferedOperations'],_0x48284c);Q(_0x2fb7c6,this['_document']['version']),Q(_0xd0210a,_0x5eb343);for(const _0x5c8c5d of _0x2fb7c6){const _0x474e1d=_0x9498ca['get'](_0x5c8c5d);_0x5c8c5d['_authorId']=_0x474e1d?_0x474e1d['_authorId']:null;}_0x40f79b&&(this['_operationIdentifier']['setIdForTheLastOperation'](_0x19d56c,_0x40f79b),this['_lastSyncedOperationId']=_0x40f79b),this['_bufferedOperations']=[..._0xd0210a],this['_applyOperationsSet'](_0x2fb7c6),this['_updateServerHistory'](_0x19d56c);}catch(_0x41e527){return console['error'](_0x41e527),!0x1;}return!0x0;}['_applyOperationsSet'](_0x56a3d1,_0x434f9a=!0x1){this['editor']['model']['enqueueChange']({'isUndoable':!0x1,'isLocal':!0x1},_0x529e00=>{for(const _0x3f5ef4 of _0x56a3d1)this['_knownOperations']['add'](_0x3f5ef4),this['_addKnownRoot'](_0x3f5ef4),_0x529e00['batch']['addOperation'](_0x3f5ef4),this['editor']['model']['applyOperation'](_0x3f5ef4);});}['_addKnownRoot'](_0x2e433a){const _0x406be7=this['_getAffectedRoot'](_0x2e433a);_0x406be7&&this['_knownRootNames']['add'](_0x406be7);}['_getAffectedRoot'](_0x25d167){let _0x347d20,_0xcd2021;switch(_0x25d167['type']){case'insert':_0x347d20=_0x25d167['position']['root'];break;case'marker':if(_0xcd2021=_0x25d167['newRange'],!_0xcd2021)return null;_0x347d20=_0xcd2021['root'];break;case'addRootAttribute':_0x347d20=_0x25d167['root'];break;case'addRoot':_0x347d20=_0x25d167['affectedSelectable'];break;case'move':_0x347d20=_0x25d167['targetPosition']['root'];break;default:return null;}return _0x347d20['rootName'];}['_updateServerHistory'](_0x9e85e4){_0x9e85e4['forEach'](_0x55da5f=>{const _0x337bfe=_0x55da5f['clone']();_0x337bfe['_authorId']=_0x55da5f['_authorId'],_0x337bfe['_isInit']=!!_0x55da5f['_isInit'],_0x337bfe['createdAt']=_0x55da5f['createdAt'],_0x337bfe['baseVersion']+=this['_offset'],_0x55da5f['_isDisconnection']&&this['_disconnectionOperations']['add'](_0x337bfe),this['serverHistory']['addOperation'](_0x337bfe);});}['_handleReconnectionError'](_0x30475c){const _0x2e380a=this['editor']['plugins']['get']('Notification'),_0x335e1a=this['editor']['locale'];_0x30475c||(_0x30475c=q(_0x335e1a,'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.')),_0x2e380a['showWarning'](_0x30475c,{'title':q(_0x335e1a,'Synchronization\x20issue'),'namespace':'real-time-collaboration'}),this['_hasSynchronizationProblem']=!0x0,clearTimeout(this['_sendBufferedOperationsDelayId']),this['_bufferedOperations']=[],this['editor']['plugins']['get'](n)['disconnect']();}['_setPendingAction'](){this['_pendingAction']||(this['_pendingAction']=this['editor']['plugins']['get'](_0x37736b)['add'](q(this['editor']['locale'],'PENDING_ACTION_SENDING_DATA')));}['_clearPendingAction'](){this['_pendingAction']&&(this['editor']['plugins']['get'](_0x37736b)['remove'](this['_pendingAction']),this['_pendingAction']=null);}['_compressOperations'](_0x916854){const _0xeb9dd=_0x916854['map'](_0x385238=>_0x385238['toJSON']());return this['_compressor']['compress'](_0xeb9dd);}['_decompressOperations'](_0x1b209d,_0x466034){return this['_compressor']['decompress'](_0x1b209d)['map']((_0x55cfac,_0x14ca0e)=>{const _0x35f982='init'==_0x466034[_0x14ca0e]['type'];if('InsertOperation'==_0x55cfac['__className']){const _0x4aaf12=_0x55cfac['position']['root'];!this['_document']['getRoot'](_0x4aaf12)&&(this['_document']['createRoot']('$root',_0x4aaf12)['_isAttached']=!0x1);}const _0x26593c=_0x1ba137['fromJSON'](_0x55cfac,this['_document']);return _0x26593c['wasUndone']=_0x55cfac['wasUndone'],_0x26593c['_isInit']=_0x35f982,_0x26593c['_authorId']=_0x35f982?null:_0x466034[_0x14ca0e]['userId'],_0x26593c['_isDisconnection']='cs:removeUser'===_0x466034[_0x14ca0e]['type'],_0x26593c['createdAt']=_0x466034[_0x14ca0e]['createdAt'],_0x26593c;});}['_refreshUserSelectionMarkers'](){this['_hasSelectionChanged']=!0x0,this['_shouldSendSelectionUpdate']()?this['_sendBufferedOperationsDelayed']():this['_hasSelectionChanged']=!0x1;}['_shouldSendSelectionUpdate'](){const _0x1aad31=this['editor']['plugins']['get'](i)['channelSessions']['get'](this['_channelId']);return!this['editor']['isReadOnly']&&!!_0x1aad31&&_0x1aad31['length']>0x1&&this['_hasSelectionChanged'];}['_shouldSendUpdate'](){return this['_bufferedOperations']['length']>0x0||this['_shouldSendSelectionUpdate']();}}class J extends Error{}function Q(_0x509d60,_0x5f3a10){for(const _0x25b49f of _0x509d60)_0x25b49f['baseVersion']=_0x5f3a10++;}class X{['_ignoredOperations'];['_operationToId'];constructor(_0x2233ae){this['_ignoredOperations']=_0x2233ae,this['_operationToId']=new WeakMap();}['getIdOfTheLastOperation'](_0x18dbc6){let _0x3af197=_0x18dbc6['length'];for(;_0x3af197--;){const _0x520359=_0x18dbc6[_0x3af197];if(!this['_ignoredOperations']['has'](_0x520359)){if(!this['_operationToId']['has'](_0x520359)){const _0x2962b1=_0x2974f1()['slice'](0x1,0x12);this['_operationToId']['set'](_0x520359,_0x2962b1);}return this['_operationToId']['get'](_0x520359);}}}['setIdForTheLastOperation'](_0x55930b,_0x14695a){if(!_0x14695a)return;let _0x3486f9=_0x55930b['length'];for(;_0x3486f9--;){const _0x53273f=_0x55930b[_0x3486f9];this['_ignoredOperations']['has'](_0x53273f)||this['_operationToId']['set'](_0x53273f,_0x14695a);}}}class a extends _0x532c83{static get['requires'](){return[l];}static get['pluginName'](){return'RealTimeCollaborativeEditing';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}class s extends _0x4cb85d{static ['CommentsService']=/* #__PURE__ -- @preserve */
26
+ ((()=>_0x59ea95)());['_services'];static get['requires'](){return[n,'CommentsRepository',i,_0x1a7c05];}static get['pluginName'](){return'CloudServicesCommentsAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x4f0437){super(_0x4f0437),this['_services']=new Map();}async['init'](){const _0x24c8a9=this['context'],_0x161879=_0x24c8a9['plugins']['get']('CommentsRepository');if(_0x24c8a9['plugins']['get'](n)['addToReconnectionStack'](this),_0x161879['adapter']={'addCommentThread':async({channelId:_0x289fb5,threadId:_0x5a8e6c,comments:_0x59a29e,resolvedAt:_0x18d133,resolvedBy:_0x129869,context:_0x12c6fc,attributes:_0x3d436b})=>{const _0x4273d0=await this['_getService'](_0x289fb5)['addCommentThread']({'commentThreadId':_0x5a8e6c,'comments':_0x59a29e['map'](_0x1809ae=>function(_0x3d7262,_0x157b46,_0x4c6583){return{'commentThreadId':_0x4c6583,'commentId':_0x3d7262['commentId'],'userId':_0x3d7262['authorId'],'content':_0x3d7262['content'],'documentId':_0x157b46,'createdAt':_0x3d7262['createdAt'],'attributes':_0x3d7262['attributes']||{}};}(_0x1809ae,_0x289fb5,_0x5a8e6c)),'resolvedAt':_0x18d133,'resolvedBy':_0x129869,'context':_0x12c6fc,'attributes':_0x3d436b})['catch'](ht);return{'threadId':_0x4273d0['commentThreadId'],'comments':_0x4273d0['comments']};},'getCommentThread':async({channelId:_0xae2fe,threadId:_0x2e7c47})=>{const _0x406391=await this['_getService'](_0xae2fe)['getCommentThread'](_0x2e7c47)['catch'](F)['catch'](ht);return _0x406391?_0x406391['deletedAt']?null:(await this['_fetchMissingUsersForThreads']([_0x406391]),{'threadId':_0x406391['commentThreadId'],'comments':_0x406391['comments']['map'](S),'context':_0x406391['context'],'resolvedAt':_0x406391['resolvedAt'],'resolvedBy':_0x406391['resolvedBy'],'attributes':_0x406391['attributes']||{}}):null;},'updateCommentThread':async({channelId:_0x47e28a,threadId:_0x1c9608,context:_0x3ae22e,unlinkedAt:_0x2f7096,attributes:_0xca50a7})=>this['_getService'](_0x47e28a)['updateCommentThread']({'commentThreadId':_0x1c9608,'context':_0x3ae22e,'attributes':_0xca50a7,'unlinkedAt':_0x2f7096})['catch'](F)['catch'](ht),'resolveCommentThread':async({channelId:_0x58b1ab,threadId:_0x595b0f})=>{const _0x1b0043=await this['_getService'](_0x58b1ab)['resolveCommentThread'](_0x595b0f)['catch'](F)['catch'](ht);return{'threadId':_0x1b0043['commentThreadId'],'resolvedAt':_0x1b0043['resolvedAt'],'resolvedBy':_0x1b0043['resolvedBy']};},'reopenCommentThread':async({channelId:_0x20b8e6,threadId:_0x218901})=>this['_getService'](_0x20b8e6)['reopenCommentThread'](_0x218901)['catch'](F)['catch'](ht),'removeCommentThread':({channelId:_0x46f10c,threadId:_0x411a5f})=>this['_getService'](_0x46f10c)['removeCommentThread'](_0x411a5f)['catch'](F)['catch'](ht),'addComment':({channelId:_0x2d65e2,threadId:_0x1448b2,commentId:_0x3f047b,content:_0x2e4f3c,attributes:_0x1682cf})=>this['_getService'](_0x2d65e2)['addComment'](_0x1448b2,_0x3f047b,_0x2e4f3c,_0x1682cf)['catch'](ht),'updateComment':({channelId:_0x1c086d,threadId:_0x571166,commentId:_0x32a7fb,content:_0x424c11,attributes:_0x5a6fc3})=>this['_getService'](_0x1c086d)['updateComment'](_0x571166,_0x32a7fb,_0x424c11,_0x5a6fc3)['catch'](F)['catch'](ht),'removeComment':({channelId:_0xa8d3bb,threadId:_0x3a6003,commentId:_0x34aa8e})=>this['_getService'](_0xa8d3bb)['removeComment'](_0x3a6003,_0x34aa8e)['catch'](F)['catch'](ht)},_0x24c8a9 instanceof _0x31709a){const _0x8a7ec4=_0x24c8a9['config']['get']('collaboration.channelId'),_0x436ac3=_0x24c8a9['plugins']['get'](i);await this['_setUpService'](_0x8a7ec4);const _0x449b16=await this['_services']['get'](_0x8a7ec4)['getConnectedSessions']();this['listenTo'](_0x436ac3,'sessionAdd:'+_0x8a7ec4,(_0x4038d1,{session:_0x490db0})=>{_0x490db0['id']===_0x436ac3['mySessionId']&&(_0x4038d1['off'](),this['context']['plugins']['get']('Permissions')['setPermissions'](_0x490db0['permissions'],_0x8a7ec4));}),_0x436ac3['register'](_0x8a7ec4,_0x449b16);}}async['_setUpService'](_0x268895){if(this['_services']['has'](_0x268895))throw new _0xa9b19('cloudservicescommentsadapter-connect-already-connected',null,{'channelId':_0x268895});const _0x1d9d52=this['context']['plugins']['get']('CommentsRepository'),_0x30b431=new s['CommentsService'](_0x268895);this['_services']['set'](_0x268895,_0x30b431),this['listenTo'](_0x30b431,'commentThreadAdded',(_0x745a77,_0x252cb2)=>{const {commentThreadId:_0x186929,documentId:_0x232358,context:_0x1d6227,attributes:_0x2351ed,resolvedAt:_0x1bd59c,resolvedBy:_0x56160a,comments:_0x220622}=_0x252cb2;_0x1d9d52['getCommentThread'](_0x186929)||_0x1d9d52['addCommentThread']({'threadId':_0x186929,'channelId':_0x232358,'comments':_0x220622?_0x220622['map'](S):[],'context':_0x1d6227,'attributes':_0x2351ed,'resolvedAt':_0x1bd59c,'resolvedBy':_0x56160a,'isFromAdapter':!0x0});}),this['listenTo'](_0x30b431,'commentThreadUpdated',(_0x2f83fb,{commentThreadId:_0x3db8a9,documentId:_0x32ce0c,context:_0x53f970,unlinkedAt:_0x456d11,attributes:_0x1c5983})=>{_0x1d9d52['getCommentThread'](_0x3db8a9)&&_0x1d9d52['updateCommentThread']({'threadId':_0x3db8a9,'channelId':_0x32ce0c,'context':_0x53f970,'unlinkedAt':_0x456d11,'attributes':_0x1c5983,'isFromAdapter':!0x0});}),this['listenTo'](_0x30b431,'commentThreadResolved',(_0x21b565,{commentThreadId:_0x3bbac8,resolvedBy:_0x351a35,resolvedAt:_0x1a639d})=>{const _0x42d01d=_0x1d9d52['getCommentThread'](_0x3bbac8);_0x42d01d&&_0x42d01d['resolve']({'resolvedBy':_0x351a35,'resolvedAt':_0x1a639d,'isFromAdapter':!0x0});}),this['listenTo'](_0x30b431,'commentThreadReopened',(_0x29dfb0,{commentThreadId:_0x40c73e})=>{const _0x5c4e7d=_0x1d9d52['getCommentThread'](_0x40c73e);_0x5c4e7d&&_0x5c4e7d['reopen']({'isFromAdapter':!0x0});}),this['listenTo'](_0x30b431,'commentThreadRemoved',(_0xe1f4cd,{commentThreadId:_0xb8e2a6})=>{const _0x6e3f30=_0x1d9d52['getCommentThread'](_0xb8e2a6);_0x6e3f30&&_0x6e3f30['remove']({'isFromAdapter':!0x0});}),this['listenTo'](_0x30b431,'commentAdded',(_0x491132,_0x5efd91)=>{const _0x49f187=_0x5efd91['commentThreadId'],_0x572046=_0x1d9d52['getCommentThread'](_0x49f187);_0x572046&&_0x572046['addComment']({...S(_0x5efd91),'isFromAdapter':!0x0});}),this['listenTo'](_0x30b431,'commentUpdated',(_0x4449f6,{commentThreadId:_0x21e7cb,commentId:_0x27912e,content:_0x2f4db9,attributes:_0x5ba3fa})=>{const _0x569543=_0x1d9d52['getCommentThread'](_0x21e7cb);if(_0x569543){const _0x38dab4=_0x569543['getComment'](_0x27912e);_0x38dab4&&_0x38dab4['update']({'content':_0x2f4db9,'attributes':_0x5ba3fa,'isFromAdapter':!0x0});}}),this['listenTo'](_0x30b431,'commentRemoved',(_0x2501eb,{commentThreadId:_0x1e9396,commentId:_0x3c8ba7})=>{const _0xa5fb88=_0x1d9d52['getCommentThread'](_0x1e9396);if(_0xa5fb88){const _0x4a4616=_0xa5fb88['getComment'](_0x3c8ba7);_0x4a4616&&_0x4a4616['remove']({'isFromAdapter':!0x0});}}),await this['_connectService'](_0x268895);}['destroy'](){if(this['context']instanceof _0x31709a){const _0x207313=this['context']['config']['get']('collaboration.channelId');this['_terminateService'](_0x207313);}}['_terminateService'](_0x255fa6){if(!this['_services']['has'](_0x255fa6))throw new _0xa9b19('cloudservicescommentsadapter-disconnect-not-exist',null,{'channelId':_0x255fa6});this['_getService'](_0x255fa6)['disconnect'](),this['_services']['delete'](_0x255fa6);}async['reconnect'](){for(const _0x19f707 of this['_services']['keys']())await this['_connectService'](_0x19f707);if(this['context']instanceof _0x31709a){const _0x42f24c=this['context']['config']['get']('collaboration.channelId'),_0x110fb3=this['context']['plugins']['get'](i);_0x110fb3['unregister'](_0x42f24c);const _0x1c3434=await this['_services']['get'](_0x42f24c)['getConnectedSessions']();_0x110fb3['register'](_0x42f24c,_0x1c3434);}}async['_connectService'](_0xc4ee2){const {connection:_0xc075aa}=this['context']['plugins']['get'](n),_0x2c77e4=this['context']['plugins']['get']('CommentsRepository'),_0x282873=this['_services']['get'](_0xc4ee2),_0x9efa43=await _0x282873['connect'](_0xc075aa);await this['_fetchMissingUsersForThreads'](_0x9efa43);const _0x1b26c2=new Set(Array['from'](_0x2c77e4['getCommentThreads']({'channelId':_0xc4ee2}),_0x2cf2b0=>_0x2cf2b0['id']));for(const _0x3a73c5 of _0x9efa43)_0x3a73c5['deletedAt']||_0x1b26c2['delete'](_0x3a73c5['commentThreadId']);for(const _0x49a47e of _0x1b26c2)_0x2c77e4['getCommentThread'](_0x49a47e)['remove']({'isFromAdapter':!0x0});for(const _0x1ebfc2 of _0x9efa43){let _0x3a7894=_0x2c77e4['getCommentThread'](_0x1ebfc2['commentThreadId']);const {commentThreadId:_0x4eded3,context:_0x3c2c00,attributes:_0xd91cc0,resolvedBy:_0x44a1e2,resolvedAt:_0x2fd592,unlinkedAt:_0x511c4c,deletedAt:_0x17941b}=_0x1ebfc2;if(_0x17941b)continue;_0x3a7894||(_0x3a7894=_0x2c77e4['addCommentThread']({'channelId':_0xc4ee2,'threadId':_0x4eded3,'context':_0x3c2c00,'attributes':_0xd91cc0||{},'resolvedBy':_0x44a1e2,'resolvedAt':_0x2fd592,'unlinkedAt':_0x511c4c,'isFromAdapter':!0x0}));const _0x52ee2f=new Set(Array['from'](_0x3a7894['comments'],_0x3af128=>_0x3af128['id']));for(const _0x377371 of _0x1ebfc2['comments'])_0x52ee2f['delete'](_0x377371['commentId']);for(const _0x2236de of _0x52ee2f)_0x3a7894['getComment'](_0x2236de)['remove']({'isFromAdapter':!0x0});for(const _0x20e470 of _0x1ebfc2['comments']){const _0x72a09c=_0x3a7894['getComment'](_0x20e470['commentId']);_0x72a09c?_0x72a09c['content']!==_0x20e470['content']&&_0x72a09c['update']({'content':_0x20e470['content'],'isFromAdapter':!0x0}):_0x3a7894['addComment'](Object['assign'](S(_0x20e470),{'isFromAdapter':!0x0}));}}}['_getService'](_0x10075c){if(!this['_services']['has'](_0x10075c))throw new _0xa9b19('cloudservicescommentsadapter-service-not-exist',null,{'channelId':_0x10075c});return this['_services']['get'](_0x10075c);}async['_fetchMissingUsersForThreads'](_0x2d623f){const _0x5efc4d=this['context']['plugins']['get'](_0x1a7c05),{connection:_0xee9b}=this['context']['plugins']['get'](n),_0x36985a=new Set();for(const {resolvedBy:_0x4e2fa6,comments:_0x57cfa3}of _0x2d623f){_0x4e2fa6&&!_0x5efc4d['getUser'](_0x4e2fa6)&&_0x36985a['add'](_0x4e2fa6);for(const {userId:_0x2a9bba}of _0x57cfa3)_0x5efc4d['getUser'](_0x2a9bba)||_0x36985a['add'](_0x2a9bba);}if(0x0===_0x36985a['size'])return;const _0x23f80e=await at['getMany'](_0xee9b,Array['from'](_0x36985a));for(const _0x1648de of _0x23f80e)_0x5efc4d['getUser'](_0x1648de['id'])||_0x5efc4d['addUser'](_0x1648de);}}async function F(_0x329dfa){if('404'!==_0x329dfa['code'])throw _0x329dfa;}function ht(_0x14939b){if((_0xfd2da8=_0x14939b)['message']['startsWith']('cloud-services-internal-error:\x20Comments\x20Service\x20is\x20not\x20connected.')||_0xfd2da8['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0xfd2da8['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.'))return new Promise(()=>{});var _0xfd2da8;throw _0x14939b;}function S(_0x6061e){return{'threadId':_0x6061e['commentThreadId'],'commentId':_0x6061e['commentId'],'content':_0x6061e['content'],'createdAt':_0x6061e['createdAt'],'authorId':_0x6061e['userId'],'attributes':_0x6061e['attributes']||{}};}class m extends _0x532c83{static ['TrackChangesService']=/* #__PURE__ -- @preserve */
27
+ ((()=>_0x3ff928)());['_bufferedRequests'];['_trackChangesService'];static get['requires'](){return[s,'TrackChangesEditing',n];}static get['pluginName'](){return'CloudServicesTrackChangesAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x39c43e){super(_0x39c43e);const _0x5d5688=this['editor']['config']['get']('collaboration.channelId');this['_bufferedRequests']=new Map(),this['_trackChangesService']=new m['TrackChangesService'](_0x5d5688);}['init'](){const _0x2bb769=this['editor']['plugins']['get'](n),_0x1e7261=this['editor']['plugins']['get']('TrackChangesEditing');return _0x1e7261['adapter']={'getSuggestion':async _0x1c540e=>{await this['_waitForServiceReady']();const _0x3bffaf=await this['_trackChangesService']['get'](_0x1c540e)['catch'](k);return await this['_fetchMissingUsersForThreads']([_0x3bffaf]),_0x3bffaf;},'addSuggestion':async({id:_0x42972d,type:_0xda61f2,data:_0x3737d5,originalSuggestionId:_0x109e81,attributes:_0x6fefbe})=>{await this['_waitForServiceReady']();const _0x1ced4d={'id':_0x42972d,'type':_0xda61f2,'data':_0x3737d5,'originalSuggestionId':_0x109e81,'attributes':_0x6fefbe},_0x39ca2e=await this['_trackChangesService']['add'](_0x42972d,_0xda61f2,_0x3737d5,_0x109e81,_0x6fefbe)['catch'](_0x5276e1=>{if(lt(_0x5276e1))return new Promise(_0x86e23b=>{this['_bufferedRequests']['set'](_0x42972d,{'resolve':_0x86e23b,'suggestionData':_0x1ced4d});});throw _0x5276e1;});return this['_bufferedRequests']['delete'](_0x42972d),_0x39ca2e;},'updateSuggestion':async(_0x27e12a,_0x1e5fb1)=>{if(await this['_waitForServiceReady'](),'open'!==_0x1e5fb1['state'])return this['_trackChangesService']['update'](_0x27e12a,_0x1e5fb1)['catch'](k);}},this['listenTo'](this['_trackChangesService'],'suggestionUpdated',(_0x444948,_0x3362a5)=>{_0x1e7261['hasSuggestion'](_0x3362a5['id'])&&(_0x1e7261['getSuggestion'](_0x3362a5['id'])['attributes']=_0x3362a5['attributes']);}),this['_trackChangesService']['connect'](_0x2bb769['connection'])['then'](_0x5bc861=>(_0x2bb769['addToReconnectionStack'](this),this['_fetchMissingUsersForThreads'](_0x5bc861)['then'](()=>{for(const _0x13c012 of _0x5bc861){_0x1e7261['addSuggestionData'](_0x13c012)['_saved']=!0x0;}})));}async['reconnect'](){const _0x69c04a=this['editor']['plugins']['get']('TrackChangesEditing'),{connection:_0x345d6a}=this['editor']['plugins']['get'](n),_0x2799a0=await this['_trackChangesService']['connect'](_0x345d6a);await this['_fetchMissingUsersForThreads'](_0x2799a0);for(const {suggestionData:_0x21578a,resolve:_0x1150ca}of this['_bufferedRequests']['values']()){let _0x46f6f5=_0x2799a0['find'](_0x50c009=>_0x50c009['id']===_0x21578a['id']);_0x46f6f5||(_0x46f6f5=await this['_trackChangesService']['add'](_0x21578a['id'],_0x21578a['type'],_0x21578a['data'],_0x21578a['originalSuggestionId'])),_0x1150ca(_0x46f6f5);}for(const _0x436287 of _0x2799a0)_0x69c04a['hasSuggestion'](_0x436287['id'])||_0x69c04a['addSuggestionData'](_0x436287);}async['_waitForServiceReady'](){this['_trackChangesService']['isConnected']||await new Promise(_0x89eb99=>{this['listenTo'](this['_trackChangesService'],'connected',_0x413a29=>{_0x413a29['off'](),_0x89eb99();});});}async['_fetchMissingUsersForThreads'](_0x3b2964){const _0x388be9=this['editor']['plugins']['get'](_0x1a7c05),{connection:_0x461fe7}=this['editor']['plugins']['get'](n),_0x513fe3=new Set();for(const {authorId:_0x4cae9c}of _0x3b2964)_0x388be9['getUser'](_0x4cae9c)||_0x513fe3['add'](_0x4cae9c);if(0x0===_0x513fe3['size'])return;const _0x16f723=await at['getMany'](_0x461fe7,Array['from'](_0x513fe3));for(const _0x4e32e1 of _0x16f723)_0x388be9['getUser'](_0x4e32e1['id'])||_0x388be9['addUser'](_0x4e32e1);}}function k(_0x52f8f3){if(lt(_0x52f8f3))return new Promise(()=>{});throw _0x52f8f3;}function lt(_0x5c99c0){return _0x5c99c0['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x5c99c0['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}class g extends _0x532c83{static get['requires'](){return['Comments',s,a,n];}static get['pluginName'](){return'RealTimeCollaborativeComments';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['init'](){const _0x220fba=this['editor']['plugins']['get'](n),_0x7a82b1=this['editor']['plugins']['get']('CommentsEditing'),_0x4b87b7=this['editor']['plugins']['get'](s);return this['editor']['data']['once']('ready',()=>{this['listenTo'](_0x220fba,'change:state',(_0x182ca6,_0x248bbe,_0xd02e7b)=>{_0x7a82b1['isThreadsLoadingPaused']='connected'!==_0xd02e7b;});}),this['listenTo'](_0x220fba,'change:state',(_0x566696,_0xc1ee66,_0x23ddc5)=>{this['editor']['plugins']['get']('CommentsRepository')['switchReadOnly']('connected'!==_0x23ddc5);}),_0x4b87b7['_setUpService'](this['editor']['config']['get']('collaboration.channelId'));}['destroy'](){this['editor']['plugins']['get'](s)['_terminateService'](this['editor']['config']['get']('collaboration.channelId')),super['destroy']();}}class dt extends _0x532c83{static get['requires'](){return[g,m,'TrackChanges'];}static get['pluginName'](){return'RealTimeCollaborativeTrackChanges';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}class c extends _0x532c83{static ['RevisionHistoryService']=/* #__PURE__ -- @preserve */
28
+ ((()=>it)());['_lastRequestId'];['_revisionTracker'];['_revisionHistoryService'];['_oldOffset'];static get['requires'](){return[n,l,'RevisionHistory',i,_0x1a7c05];}static get['pluginName'](){return'CloudServicesRevisionHistoryAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x47df6d){super(_0x47df6d);const _0x53bdd3=this['editor']['config']['get']('collaboration.channelId');this['_lastRequestId']=null,this['_revisionTracker']=this['editor']['plugins']['get']('RevisionTracker'),this['_revisionHistoryService']=new c['RevisionHistoryService'](_0x53bdd3);}async['init'](){const _0x1ad3a7=this['editor']['plugins']['get'](l),_0x578990=_0x1ad3a7['serverHistory'],_0x405740=this['editor']['plugins']['get'](n);this['_revisionTracker']['setSource']({'history':_0x578990,'getLatestVersion':()=>this['_getLatestVersion'](),'getCurrentRevisionId':()=>_0x1ad3a7['sessionId']});const _0xd762c5=this['editor']['config']['get']('cloudServices.bundleVersion')||nt,_0x4387e3=await tt['isBundleUploaded'](_0x405740['connection'],_0xd762c5);this['editor']['plugins']['get']('RevisionHistory')['adapter']={'getRevision':async({revisionId:_0x35981f})=>(await this['_waitForServiceReady'](),await this['_revisionHistoryService']['getRevision'](_0x35981f)),'updateRevisions':async _0x581f2c=>{await this['_waitForServiceReady']();const _0xe6f650=this['_revisionTracker']['currentRevision'];if(_0x4387e3&&0x1===_0x581f2c['length']&&_0x581f2c[0x0]['id']===_0xe6f650['id'])return _0x581f2c;for(const _0xbbb695 of _0x581f2c)_0xbbb695['id']===_0xe6f650['id']&&(_0xbbb695['isEmptyCurrent']=_0xbbb695['fromVersion']===_0xbbb695['toVersion']);return this['_revisionHistoryService']['updateRevisions'](_0x581f2c,this['_lastRequestId'])['then'](_0x5dbc3a=>(this['_lastRequestId']=_0x5dbc3a,_0x581f2c))['catch'](_0x321070=>{if(_(_0x321070)||'400'===_0x321070['code']&&void 0x0!==_0x321070['data']['wrongRequestId']){for(const _0x46561f of _0x581f2c){!this['_revisionTracker']['repository']['getRevision'](_0x46561f['id'])||this['_revisionTracker']['_bufferUpdate'](_0x46561f['id'],_0x46561f,!0x1);}if(_(_0x321070))throw _0x321070;return _0x581f2c;}throw _0x321070;});}},this['listenTo'](this['_revisionHistoryService'],'revisionsUpdated',(_0x462973,{revisionsData:_0x16a4fd,requestId:_0x4af970})=>{Math['max'](..._0x16a4fd['map'](_0x1659c5=>_0x1659c5['toVersion']))>this['_getLatestVersionFromServerOperations']()-0x1?this['_getLatestVersion']()['then'](()=>{this['_handleRevisionsUpdate'](_0x16a4fd,_0x4af970);}):this['_handleRevisionsUpdate'](_0x16a4fd,_0x4af970);});const {revisions:_0x40569a,requestId:_0x5a217e}=await this['_revisionHistoryService']['connect'](_0x405740['connection']);_0x405740['addToReconnectionStack'](this),this['_lastRequestId']=_0x5a217e,await this['_fetchMissingUsers'](_0x40569a);for(const _0x58a74f of _0x40569a)this['_revisionTracker']['addRevisionData'](_0x58a74f);this['listenTo'](_0x1ad3a7,'change:_isConnected',(_0x1c6a1f,_0x461e51,_0x99cf4b)=>{_0x99cf4b&&(this['_oldOffset']=_0x1ad3a7['_offset'],_0x1c6a1f['off']());}),this['_revisionTracker']['bind']('isEnabled')['to'](_0x405740,'state',_0x2b522f=>_0x2b522f===_0x5b0dbe['CONNECTED']);}async['reconnect'](){const _0x2d336d=this['editor']['plugins']['get'](n),_0x154fc3=this['editor']['plugins']['get'](l),_0x4c001c=async()=>{const _0x100a6a=this['_revisionTracker']['currentRevision'],_0x47af9f=_0x100a6a['id'],_0x566a78=_0x47af9f!==_0x154fc3['sessionId'];if(_0x566a78){const _0x513078=_0x154fc3['_offset']-this['_oldOffset'],_0x49fb7d=this['_getLatestVersionFromServerOperations']();this['_revisionTracker']['_revisionDataBuilder']['reInit']();if(_0x100a6a['toVersion']+_0x513078!==_0x49fb7d){const _0x6eadcb=_0x100a6a['fromVersion']+_0x513078,_0x137ec6=this['editor']['plugins']['get'](_0x1a7c05),_0x44fc63=this['_revisionTracker']['buildRevisionData']({'revision':_0x100a6a,'from':_0x6eadcb,'to':_0x49fb7d});_0x44fc63['id']=_0x100a6a['id'];const _0x228ea1=_0x44fc63['authorsIds']['map'](_0x589fce=>_0x137ec6['getUser'](_0x589fce));_0x100a6a['_update']({..._0x44fc63,'authors':_0x228ea1},!0x0),this['_revisionTracker']['_bufferUpdate'](_0x100a6a['id'],_0x44fc63,!0x0);}this['_revisionTracker']['_startingVersion']=_0x49fb7d,(_0x100a6a['toVersion']===_0x100a6a['fromVersion']&&!this['_revisionTracker']['_bufferedUpdates']['has'](_0x47af9f)&&this['_revisionTracker']['repository']['_revisions']['remove'](_0x47af9f),this['_revisionTracker']['_createCurrentRevision'](_0x49fb7d));}const {revisions:_0x46f4c2,requestId:_0x2b1245}=await this['_revisionHistoryService']['reconnect'](_0x2d336d['connection'],this['_lastRequestId']);_0x566a78&&_0x46f4c2['length']>0x0?_0x154fc3['_handleReconnectionError']():(await this['_fetchMissingUsers'](_0x46f4c2),this['_handleRevisionsUpdate'](_0x46f4c2,_0x2b1245),this['_revisionTracker']['sendBufferedUpdates']());};return _0x154fc3['_isConnected']?_0x4c001c():new Promise((_0xa28a20,_0x3d8bf5)=>{_0x154fc3['once']('change:_isConnected',()=>{_0x4c001c()['then'](_0xa28a20)['catch'](_0x3d8bf5);});});}['destroy'](){super['destroy']();}async['_waitForServiceReady'](){this['_revisionHistoryService']['isConnected']||await new Promise(_0x39b03d=>{this['listenTo'](this['_revisionHistoryService'],'connected',_0x4ac070=>{_0x4ac070['off'](),_0x39b03d();});});}['_getLatestVersionFromServerOperations'](){const _0x4dddc2=this['editor']['plugins']['get'](l)['serverHistory']['getOperations']()['reverse']();for(const _0x44d479 of _0x4dddc2)if('marker'!==_0x44d479['type']||_0x44d479['affectsData'])return _0x44d479['baseVersion']+0x1;}['_getLatestVersion'](){const _0x34c6a8=this['editor']['plugins']['get'](l);return new Promise(_0x3bb1eb=>{_0x34c6a8['_isPendingUpdate']?_0x34c6a8['once']('change:_isPendingUpdate',()=>{_0x3bb1eb(this['_getLatestVersionFromServerOperations']());}):_0x3bb1eb(this['_getLatestVersionFromServerOperations']());});}['_handleRevisionsUpdate'](_0x51ed10,_0x2c7bd7){const _0x4ce177=this['_revisionTracker']['repository'];this['_lastRequestId']=_0x2c7bd7;for(const _0x4204eb of _0x51ed10){const _0x31f87b=_0x4ce177['getRevision'](_0x4204eb['id']);if(_0x31f87b){if((_0x4204eb['fromVersion']||_0x4204eb['toVersion'])&&(_0x4204eb['diffData']=null),_0x31f87b===this['_revisionTracker']['currentRevision']){const _0x51cc05=Math['max'](_0x31f87b['toVersion'],_0x4204eb['toVersion']),_0x3a709a=Math['max'](_0x31f87b['fromVersion'],_0x4204eb['fromVersion']);let _0x3a462e;_0x31f87b['toVersion']===_0x4204eb['toVersion']&&_0x31f87b['fromVersion']===_0x4204eb['fromVersion']?(_0x3a462e=!0x0,this['_preventResendingRevisionData'](_0x4204eb)):_0x4204eb['toVersion']===_0x51cc05&&_0x4204eb['fromVersion']===_0x3a709a?_0x3a462e=!0x1:(_0x31f87b['toVersion']===_0x51cc05&&_0x31f87b['fromVersion']===_0x3a709a||this['_fixRevision']({'revision':_0x31f87b,'from':_0x3a709a,'to':_0x51cc05}),_0x3a462e=!0x0),_0x3a462e&&(delete _0x4204eb['fromVersion'],delete _0x4204eb['toVersion'],delete _0x4204eb['diffData'],delete _0x4204eb['createdAt'],delete _0x4204eb['authorsIds']);}this['_revisionTracker']['setRevisionData'](_0x4204eb),this['_preventResendingRevisionData'](_0x4204eb);}else this['_revisionTracker']['addRevisionData'](_0x4204eb);}const _0x2d92cd=_0x4ce177['getRevisions']();_0x2d92cd['reverse']();for(let _0x497556=0x0;_0x497556<_0x2d92cd['length']-0x1;_0x497556++){const _0x14de45=_0x2d92cd[_0x497556],_0x10b9e7=_0x2d92cd[_0x497556+0x1];if(_0x14de45['fromVersion']<_0x10b9e7['toVersion']){const _0x37f42d=_0x10b9e7['toVersion'],_0x408f86=Math['max'](_0x37f42d,_0x14de45['toVersion']);this['_fixRevision']({'revision':_0x14de45,'from':_0x37f42d,'to':_0x408f86});}}}['_fixRevision']({revision:_0x32c216,from:_0x3073cc,to:_0x3b900c}={}){const _0x48d300=this['editor']['plugins']['get'](_0x1a7c05),_0x34528e=this['_revisionTracker']['buildRevisionData']({'revision':_0x32c216,'from':_0x3073cc,'to':_0x3b900c});_0x34528e['authors']=_0x34528e['authorsIds']['map'](_0xe8fd9=>_0x48d300['getUser'](_0xe8fd9)),_0x32c216['_update'](_0x34528e);}['_preventResendingRevisionData'](_0x2a199f){const _0xd0b47={};_0xd0b47['id']=_0x2a199f['id'];for(const _0x4eb37d of Object['keys'](_0x2a199f))'id'!==_0x4eb37d&&(_0xd0b47[_0x4eb37d]=void 0x0);this['_revisionTracker']['_bufferUpdate'](_0xd0b47['id'],_0xd0b47,!0x0);}async['_fetchMissingUsers'](_0x3e7df6){const _0x213075=this['editor']['plugins']['get'](_0x1a7c05),{connection:_0x6a43f7}=this['editor']['plugins']['get'](n),_0x182b3a=new Set();for(const _0x5afa74 of _0x3e7df6){for(const _0x54b2e9 of _0x5afa74['authorsIds'])_0x5f17a6(_0x54b2e9);_0x5afa74['creatorId']&&_0x5f17a6(_0x5afa74['creatorId']);}if(0x0===_0x182b3a['size'])return;const _0x11b8eb=await at['getMany'](_0x6a43f7,Array['from'](_0x182b3a));for(const _0x308a1e of _0x11b8eb)_0x213075['getUser'](_0x308a1e['id'])||_0x213075['addUser'](_0x308a1e);function _0x5f17a6(_0x249a1f){_0x213075['getUser'](_0x249a1f)||_0x182b3a['add'](_0x249a1f);}}}function _(_0x4ace2f){return _0x4ace2f['message']['startsWith']('cloud-services-internal-error:\x20Revision\x20History\x20Service\x20is\x20not\x20connected.')||_0x4ace2f['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x4ace2f['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}class ut extends _0x532c83{static get['requires'](){return['RevisionHistory',c,a];}static get['pluginName'](){return'RealTimeCollaborativeRevisionHistory';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}class b extends _0x2153f8{['_collapseAt'];constructor(_0x150630,_0x36e0fb=0x6){super(_0x150630);const _0x4c53cf=this['bindTemplate'];this['set']('isHidden',!0x0),this['set']('usersCount',0x0),this['_collapseAt']=_0x36e0fb,this['bind']('isHidden')['to'](this,'usersCount',_0x1d964e=>_0x1d964e<_0x36e0fb),this['setTemplate']({'tag':'div','attributes':{'class':['ck','ck-presence-list__list-item',_0x4c53cf['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':_0x4c53cf['to']('usersCount',_0x1de83b=>'+'+(_0x1de83b-this['_collapseAt']+0x2)['toString']())}]}]}]});}}class is extends _0x2153f8{['items'];['keystrokes'];constructor(_0x1bea99){super(_0x1bea99);const _0x5500e5=this['bindTemplate'];this['items']=this['createCollection'](),this['keystrokes']=new _0x4896af(),this['set']({'hasPopup':!0x1,'isExpanded':!0x1}),this['setTemplate']({'tag':'div','attributes':{'aria-haspopup':_0x5500e5['if']('hasPopup'),'aria-expanded':_0x5500e5['to']('isExpanded',_0x41c7fd=>this['hasPopup']&&String(_0x41c7fd)),'aria-label':_0x5500e5['to']('hasPopup',_0x1851e3=>q(_0x1bea99,_0x1851e3?'Collapsed\x20connected\x20users\x20list\x20(press\x20ENTER\x20to\x20open\x20it)':'Connected\x20users\x20list')),'role':'list','tabindex':_0x5500e5['to']('hasPopup',_0x4910b3=>!!_0x4910b3&&0x0),'class':['ck','ck-presence-list__list']},'children':this['items'],'on':{'mouseenter':_0x5500e5['to'](()=>this['fire']('presencelist:show')),'mouseleave':_0x5500e5['to'](_0x2f2fdc=>{const _0x5ac6c2=_0x2f2fdc,_0x350554=document['querySelector']('.ck-presence-list__dropdown-list'),_0x53e25e=document['querySelector']('.ck-balloon-panel_with-arrow');_0x350554?.['contains'](_0x5ac6c2['relatedTarget'])||_0x53e25e?.['contains'](_0x5ac6c2['relatedTarget'])||this['fire']('presencelist:hide');})}}),this['on']('change:hasPopup',(_0x2680d1,_0x47ac53,_0x1abb65)=>{this['element']&&(_0x1abb65?this['element']['setAttribute']('aria-expanded',String(this['isExpanded'])):this['element']['removeAttribute']('aria-expanded'));});}['focus'](){this['element']['focus']();}['render'](){super['render'](),this['keystrokes']['listenTo'](this['element']);}}class v extends _0x2153f8{['counterView'];['inlineListView'];constructor(_0x12b6a6,_0x3205f6=0x6){super(_0x12b6a6);const _0x241449=this['bindTemplate'];this['set']('isCollapsed',!0x0),this['counterView']=new b(this['locale'],_0x3205f6),this['inlineListView']=new is(_0x12b6a6),this['inlineListView']['bind']('hasPopup')['to'](this,'isCollapsed'),this['listenTo'](this['inlineListView']['items'],'change',()=>{for(const _0x395509 of this['inlineListView']['items'])_0x395509['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',_0x241449['if']('isCollapsed','ck-presence-list--collapsed')]},'children':[this['inlineListView']]});}}class L extends _0x2153f8{['listWrapperView'];constructor(_0x20481e,_0x5f21a6){super(_0x20481e);const _0x332a02=this['bindTemplate'];this['listWrapperView']=new ft(_0x20481e,_0x5f21a6),this['setTemplate']({'tag':'div','attributes':{'tabindex':-0x1,'role':'application','class':['ck','ck-presence-list__dropdown-list'],'aria-label':q(_0x20481e,'Connected\x20users\x20list\x20dropdown\x20menu')},'children':[this['listWrapperView']],'on':{'mouseleave':_0x332a02['to'](_0x951147=>{const _0x238f48=_0x951147,_0x2c69f3=document['querySelector']('.ck-presence-list__list'),_0xb8827=document['querySelector']('.ck-balloon-panel_with-arrow');_0x2c69f3?.['contains'](_0x238f48['relatedTarget'])||_0xb8827?.['contains'](_0x238f48['relatedTarget'])||this['fire']('presencelist:hide');})}});}}class ft extends _0x3466f8{constructor(_0x45604e,_0x5059d9){super(_0x45604e);const _0x53d94e=this['bindTemplate'];this['set']('_isScrollable',!0x1),this['setTemplate']({'tag':_0x5059d9?'div':'ul','attributes':{'class':['ck','ck-reset','ck-list','ck-presence-list__dropdown-list-wrapper',_0x53d94e['if']('_isScrollable','ck-presence-list__dropdown-list-wrapper_scrollable')],'role':_0x53d94e['to']('role'),'aria-label':_0x53d94e['to']('ariaLabel'),'aria-labelledby':_0x53d94e['to']('ariaLabelledBy')},'children':this['items']}),this['listenTo'](_0x553c6f['window'],'resize',()=>this['checkIfScrollable']()),this['items']['on']('change',()=>this['checkIfScrollable']());}['render'](){super['render'](),this['checkIfScrollable']();}['checkIfScrollable'](){const _0x5243ba=this['element'];_0x5243ba&&(this['_isScrollable']=Math['max'](_0x5243ba['scrollHeight'],_0x5243ba['clientHeight'])>0.8*window['innerHeight']);}}class j extends et{['userView'];constructor(_0x3b83f1,_0x190266,_0x6b0717){super(_0x3b83f1);const _0x3896fe=this['bindTemplate'];this['userView']=new st(_0x3b83f1,_0x190266);const _0x5222f0={'tag':'li','attributes':{'class':['ck','ck-presence-list__dropdown-list-item'],'tabindex':-0x1,'role':'presentation','aria-label':_0x190266['name']},'children':[this['userView'],{'tag':'span','attributes':{'class':['ck','ck-user__full-name']},'children':[{'text':_0x190266['name']}]},{'tag':'span','attributes':{'class':['ck','ck-presence-list__marker',_0x190266['color']['getBackgroundColorClass']()],'aria-hidden':'true'}}]};_0x6b0717&&(_0x5222f0['tag']='button',_0x5222f0['on']={'click':_0x3896fe['to'](()=>this['fire']('execute'))}),this['setTemplate'](_0x5222f0);}['focus'](){this['element']['focus']();}}class A extends _0x2153f8{['userView'];['markerView'];constructor(_0x31549c,_0x4b34af,_0x593bd8){super(_0x31549c);const _0x1ff219=this['bindTemplate'];this['set']('isFocusable',!0x1),this['set']('hasTooltip',!0x0),this['set']('tooltipPosition',''),this['userView']=new st(_0x31549c,_0x4b34af),this['markerView']=new ct(_0x31549c,_0x4b34af);const _0x42131c=new ot(_0x31549c);_0x42131c['template']['tag']='span',_0x42131c['text']=_0x4b34af['name'];const _0x18fefa={'tag':'div','attributes':{'class':['ck','ck-presence-list__list-item'],'role':'listitem','tabindex':_0x1ff219['to']('isFocusable',_0x5c074e=>!!_0x5c074e&&0x0),'aria-labelledby':_0x42131c['id'],'data-cke-tooltip-text':this['userView']['name'],'data-cke-tooltip-position':_0x1ff219['to']('tooltipPosition'),'data-cke-tooltip-disabled':_0x1ff219['to']('hasTooltip',_0x50fdd4=>!_0x50fdd4),'data-cke-tooltip-class':'ck-presence-list__list-item__tooltip'},'children':[this['userView'],this['markerView'],_0x42131c]};_0x593bd8&&(_0x18fefa['tag']='button',_0x18fefa['on']={'click':_0x1ff219['to'](()=>this['fire']('execute'))}),this['setTemplate'](_0x18fefa);}}class ct extends _0x2153f8{constructor(_0x538273,_0x3338fe){super(_0x538273),this['setTemplate']({'tag':'span','attributes':{'class':['ck','ck-presence-list__marker',_0x3338fe['color']['getBackgroundColorClass']()],'aria-hidden':'true'}});}}const x={'collapseAt':0x6,'displayMe':!0x0};class r extends _0x4cb85d{['currentDisplayedUsers'];['balloonPanelView'];['view'];['presenceDropdownView'];['_bodyCollection']=null;static get['pluginName'](){return'PresenceListUI';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x1cd6c0){super(_0x1cd6c0),this['context']['config']['define']('presenceList',x);const _0x4405a0=_0x1cd6c0['config']['get']('presenceList.collapseAt');if('number'!=typeof _0x4405a0)throw new _0xa9b19('presencelist-collapseat-invalid-format',this);if(_0x4405a0<0x1)throw new _0xa9b19('presencelist-collapseat-invalid-format',this);this['_allConnectedUsers']=this['context']['plugins']['get'](i)['allConnectedUsers'],this['set']('usersCount',0x0),this['currentDisplayedUsers']=new _0x3c6690(),this['balloonPanelView']=new _0x15a511(),this['balloonPanelView']['class']='ck\x20ck-presence-list__balloon',this['view']=this['_createView'](),this['presenceDropdownView']=void 0x0;}static get['requires'](){return[i];}['init'](){for(const _0x1bfbf8 of this['_allConnectedUsers'])this['_handleUserAdd'](_0x1bfbf8);this['listenTo'](this['_allConnectedUsers'],'add',(_0xfeb59d,_0x55082b)=>{this['_handleUserAdd'](_0x55082b);}),this['listenTo'](this['_allConnectedUsers'],'remove',(_0x30c537,_0x52e369)=>{this['_handleUserRemove'](_0x52e369);});}['_createView'](){const _0x11cb70=this['context'],_0x526771=new v(this['context']['locale'],this['context']['config']['get']('presenceList.collapseAt')),_0x3d417e=this['balloonPanelView'];if(!_0x76099f(_0x11cb70['config']['get']('presenceList.container')))throw new _0xa9b19('presencelist-missing-container',this);return _0x526771['counterView']['bind']('usersCount')['to'](this),_0x526771['bind']('isCollapsed')['to'](this,'usersCount',_0x58619b=>{const {collapseAt:_0x152bc7}=_0x11cb70['config']['get']('presenceList'),_0x41b993=_0x58619b>=_0x152bc7;if(_0x41b993&&!_0x526771['inlineListView']['items']['find'](_0x458026=>_0x458026 instanceof b)){const _0x244cfa=this['context']['config']['get']('presenceList.collapseAt')-0x1;this['currentDisplayedUsers']['length']==_0x244cfa&&this['currentDisplayedUsers']['length']>0x1&&this['currentDisplayedUsers']['remove'](this['currentDisplayedUsers']['length']-0x1),_0x526771['inlineListView']['items']['add'](_0x526771['counterView']);}return _0x41b993||this['hideDropdown'](),_0x41b993;}),_0x526771['inlineListView']['items']['bindTo'](this['currentDisplayedUsers'])['using'](_0x55f6ed=>{const _0x192989=_0x11cb70['config']['get']('presenceList'),_0xd4c8b0=new A(_0x11cb70['locale'],_0x55f6ed,!!_0x192989['onClick']);return _0xd4c8b0['bind']('hasTooltip')['to'](_0x526771,'isCollapsed',_0xe611ec=>!_0xe611ec),_0xd4c8b0['bind']('isFocusable')['to'](_0x526771,'isCollapsed',_0x182e43=>!_0x182e43),_0x192989['onClick']&&this['listenTo'](_0xd4c8b0,'execute',()=>{this['view']['isCollapsed']||_0x192989['onClick'](_0x55f6ed,_0xd4c8b0['element']);}),_0xd4c8b0;}),this['listenTo'](_0x526771['inlineListView'],'presencelist:show',()=>{this['view']['isCollapsed']&&this['showDropdown']();}),this['listenTo'](_0x526771['inlineListView'],'presencelist:hide',()=>{this['presenceDropdownView']&&this['hideDropdown']();}),_0x526771['inlineListView']['keystrokes']['set']('Enter',(_0x3add83,_0x3de00e)=>{this['view']['isCollapsed']&&(this['showDropdown'](),_0x3de00e());}),_0x526771['render'](),_0x3d417e['render'](),_0x34db55({'emitter':_0x526771,'activator':()=>_0x3d417e['isVisible'],'contextElements':[_0x3d417e['element'],_0x526771['inlineListView']['element']],'callback':()=>this['hideDropdown']()}),_0x11cb70['config']['get']('presenceList.container')['appendChild'](_0x526771['element']),this['_bodyCollection']=new _0x51fd37(this['context']['locale']),this['_bodyCollection']['attachToDom'](),this['_bodyCollection']['add'](this['balloonPanelView']),_0x526771;}['_handleUserAdd'](_0x12bf04){if(!this['context']['config']['get']('presenceList.displayMe')&&_0x12bf04['isMe'])return;const _0x543047=this['context']['config']['get']('presenceList.collapseAt')-0x1;for(this['usersCount']++;this['currentDisplayedUsers']['length']>=_0x543047-(this['view']['isCollapsed']?0x1:0x0)&&this['currentDisplayedUsers']['length']>0x1;)this['currentDisplayedUsers']['remove'](0x1);const _0x14b46c=_0x12bf04['isMe']?0x0:this['currentDisplayedUsers']['length'];this['currentDisplayedUsers']['add'](_0x12bf04,_0x14b46c);}['_handleUserRemove'](_0x22676d){this['usersCount']--;const {collapseAt:_0x321c70}=this['context']['config']['get']('presenceList'),_0x415556=this['usersCount']>=_0x321c70;if(this['currentDisplayedUsers']['get'](_0x22676d['id']))this['currentDisplayedUsers']['remove'](_0x22676d['id']);else{if(_0x415556&&this['currentDisplayedUsers']['length']+0x1===_0x321c70-0x1)return;}if(this['currentDisplayedUsers']['length']+(_0x415556?0x1:0x0)<this['usersCount']){for(const _0x5c1cb3 of Array['from'](this['_allConnectedUsers'])['reverse']())if(!this['currentDisplayedUsers']['get'](_0x5c1cb3['id'])&&(this['currentDisplayedUsers']['add'](_0x5c1cb3,Math['min'](this['currentDisplayedUsers']['length']-(_0x415556?0x1:0x0),0x1)),this['currentDisplayedUsers']['length']+(_0x415556?0x1:0x0)===_0x321c70-0x1))return;}}['showDropdown'](){if(this['presenceDropdownView'])return;const _0x285db6=this['context']['config']['get']('presenceList');this['presenceDropdownView']=new L(this['context']['locale'],!!_0x285db6['onClick']),this['view']['inlineListView']['isExpanded']=!0x0,this['listenTo'](this['presenceDropdownView'],'presencelist:hide',()=>{this['presenceDropdownView']&&this['hideDropdown']();});const {listWrapperView:_0x1dc550}=this['presenceDropdownView'];_0x1dc550['items']['bindTo'](this['_allConnectedUsers'])['using'](_0x26db54=>{if(!_0x285db6['displayMe']&&_0x26db54['isMe'])return null;const _0x133590=new j(this['context']['locale'],_0x26db54,!!_0x285db6['onClick']);return _0x285db6['onClick']&&this['listenTo'](_0x133590,'execute',()=>{_0x285db6['onClick'](_0x26db54,_0x133590['element']);}),_0x133590;}),this['balloonPanelView']['content']['add'](this['presenceDropdownView']),this['balloonPanelView']['pin']({'target':this['view']['inlineListView']['element']}),_0x1dc550['focus'](),_0x1dc550['checkIfScrollable']();const _0x2f88cc=(_0x4e73ad,_0x38dfd9)=>{this['hideDropdown'](),this['view']['inlineListView']['focus'](),_0x38dfd9();};_0x1dc550['keystrokes']['set']('Esc',_0x2f88cc),_0x1dc550['keystrokes']['set']('Shift+Tab',_0x2f88cc),_0x1dc550['keystrokes']['set']('Tab',(_0x278cf5,_0x3e0ccb)=>{!function(_0x57578b){const _0xba7786=['a','button','input','select','textarea','[tabindex]','[contenteditable]']['map'](_0x424279=>_0x424279+':not([disabled]):not([tabindex=\x22-1\x22])')['join'](','),_0x5ab836=[...document['body']['querySelectorAll'](_0xba7786)]['filter'](_0x1f289c=>_0x1f289c===document['activeElement']||_0x1f289c['offsetWidth']+_0x1f289c['offsetHeight']>0x0)['sort']((_0x31c5fa,_0x165fd3)=>(_0x31c5fa['tabIndex']||0x0)-(_0x165fd3['tabIndex']||0x0)),_0x2c8f0b=_0x5ab836['indexOf'](_0x57578b),_0x42fbe7=_0x5ab836[(_0x2c8f0b+0x1)%_0x5ab836['length']];_0x42fbe7&&_0x42fbe7['focus']();}(this['view']['element']),this['hideDropdown'](),_0x3e0ccb();}),_0x1dc550['focusTracker']['add'](this['view']['element']),_0x1dc550['focusTracker']['on']('change:isFocused',(_0x1a7872,_0x3b1a09,_0x425743)=>{_0x425743||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 mt extends _0x4cb85d{static get['requires'](){return[i,r];}static get['pluginName'](){return'PresenceList';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}export{s as CloudServicesCommentsAdapter,c as CloudServicesRevisionHistoryAdapter,m as CloudServicesTrackChangesAdapter,mt as PresenceList,r as PresenceListUI,l as RealTimeCollaborationClient,g as RealTimeCollaborativeComments,a as RealTimeCollaborativeEditing,ut as RealTimeCollaborativeRevisionHistory,dt as RealTimeCollaborativeTrackChanges,i as Sessions,n as WebSocketGateway};
@@ -20,4 +20,4 @@
20
20
  *
21
21
  *
22
22
  */
23
- export default{'af':{'dictionary':{'CONNECTED_USERS':['',''],'PENDING_ACTION_SENDING_DATA':'','Synchronization\x20issue':'','Connected\x20users\x20list\x20dropdown\x20menu':'','Connected\x20users\x20list':'','Collapsed\x20connected\x20users\x20list\x20(press\x20ENTER\x20to\x20open\x20it)':'','The\x20document\x20cannot\x20be\x20connected\x20back\x20to\x20the\x20server.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':'','The\x20document\x20details\x20could\x20not\x20be\x20taken\x20during\x20the\x20reconnection.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':'','The\x20last\x20saved\x20version\x20of\x20the\x20document\x20does\x20not\x20match\x20the\x20local\x20version.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':'','The\x20local\x20document\x20and\x20server\x20document\x20differ\x20and\x20merging\x20them\x20can\x20cause\x20unexpected\x20behavior.\x20To\x20not\x20lose\x20your\x20content\x20save\x20it\x20locally\x20and\x20refresh\x20the\x20editor.':''},'getPluralForm':_0x271e9e=>0x1!=_0x271e9e}};
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':_0x17666a=>0x1!=_0x17666a}};