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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (170) hide show
  1. package/build/real-time-collaboration.js +1 -1
  2. package/dist/index.js +6 -6
  3. package/dist/translations/af.js +1 -1
  4. package/dist/translations/af.umd.js +1 -1
  5. package/dist/translations/ar.js +1 -1
  6. package/dist/translations/ar.umd.js +1 -1
  7. package/dist/translations/ast.js +1 -1
  8. package/dist/translations/ast.umd.js +1 -1
  9. package/dist/translations/az.js +1 -1
  10. package/dist/translations/az.umd.js +1 -1
  11. package/dist/translations/be.js +1 -1
  12. package/dist/translations/be.umd.js +1 -1
  13. package/dist/translations/bg.js +1 -1
  14. package/dist/translations/bg.umd.js +1 -1
  15. package/dist/translations/bn.js +1 -1
  16. package/dist/translations/bn.umd.js +1 -1
  17. package/dist/translations/bs.js +1 -1
  18. package/dist/translations/bs.umd.js +1 -1
  19. package/dist/translations/ca.js +1 -1
  20. package/dist/translations/ca.umd.js +1 -1
  21. package/dist/translations/cs.js +1 -1
  22. package/dist/translations/cs.umd.js +1 -1
  23. package/dist/translations/da.js +1 -1
  24. package/dist/translations/da.umd.js +1 -1
  25. package/dist/translations/de-ch.js +1 -1
  26. package/dist/translations/de-ch.umd.js +1 -1
  27. package/dist/translations/de.js +1 -1
  28. package/dist/translations/de.umd.js +1 -1
  29. package/dist/translations/el.js +1 -1
  30. package/dist/translations/el.umd.js +1 -1
  31. package/dist/translations/en-au.js +1 -1
  32. package/dist/translations/en-au.umd.js +1 -1
  33. package/dist/translations/en-gb.js +1 -1
  34. package/dist/translations/en-gb.umd.js +1 -1
  35. package/dist/translations/en.js +1 -1
  36. package/dist/translations/en.umd.js +1 -1
  37. package/dist/translations/eo.js +1 -1
  38. package/dist/translations/eo.umd.js +1 -1
  39. package/dist/translations/es-co.js +1 -1
  40. package/dist/translations/es-co.umd.js +1 -1
  41. package/dist/translations/es.js +1 -1
  42. package/dist/translations/es.umd.js +1 -1
  43. package/dist/translations/et.js +1 -1
  44. package/dist/translations/et.umd.js +1 -1
  45. package/dist/translations/eu.js +1 -1
  46. package/dist/translations/eu.umd.js +1 -1
  47. package/dist/translations/fa.js +1 -1
  48. package/dist/translations/fa.umd.js +1 -1
  49. package/dist/translations/fi.js +1 -1
  50. package/dist/translations/fi.umd.js +1 -1
  51. package/dist/translations/fr.js +1 -1
  52. package/dist/translations/fr.umd.js +1 -1
  53. package/dist/translations/gl.js +1 -1
  54. package/dist/translations/gl.umd.js +1 -1
  55. package/dist/translations/gu.js +1 -1
  56. package/dist/translations/gu.umd.js +1 -1
  57. package/dist/translations/he.js +1 -1
  58. package/dist/translations/he.umd.js +1 -1
  59. package/dist/translations/hi.js +1 -1
  60. package/dist/translations/hi.umd.js +1 -1
  61. package/dist/translations/hr.js +1 -1
  62. package/dist/translations/hr.umd.js +1 -1
  63. package/dist/translations/hu.js +1 -1
  64. package/dist/translations/hu.umd.js +1 -1
  65. package/dist/translations/hy.js +1 -1
  66. package/dist/translations/hy.umd.js +1 -1
  67. package/dist/translations/id.js +1 -1
  68. package/dist/translations/id.umd.js +1 -1
  69. package/dist/translations/it.js +1 -1
  70. package/dist/translations/it.umd.js +1 -1
  71. package/dist/translations/ja.js +1 -1
  72. package/dist/translations/ja.umd.js +1 -1
  73. package/dist/translations/jv.js +1 -1
  74. package/dist/translations/jv.umd.js +1 -1
  75. package/dist/translations/kk.js +1 -1
  76. package/dist/translations/kk.umd.js +1 -1
  77. package/dist/translations/km.js +1 -1
  78. package/dist/translations/km.umd.js +1 -1
  79. package/dist/translations/kn.js +1 -1
  80. package/dist/translations/kn.umd.js +1 -1
  81. package/dist/translations/ko.js +1 -1
  82. package/dist/translations/ko.umd.js +1 -1
  83. package/dist/translations/ku.js +1 -1
  84. package/dist/translations/ku.umd.js +1 -1
  85. package/dist/translations/lt.js +1 -1
  86. package/dist/translations/lt.umd.js +1 -1
  87. package/dist/translations/lv.js +1 -1
  88. package/dist/translations/lv.umd.js +1 -1
  89. package/dist/translations/ms.js +1 -1
  90. package/dist/translations/ms.umd.js +1 -1
  91. package/dist/translations/nb.js +1 -1
  92. package/dist/translations/nb.umd.js +1 -1
  93. package/dist/translations/ne.js +1 -1
  94. package/dist/translations/ne.umd.js +1 -1
  95. package/dist/translations/nl.js +1 -1
  96. package/dist/translations/nl.umd.js +1 -1
  97. package/dist/translations/no.js +1 -1
  98. package/dist/translations/no.umd.js +1 -1
  99. package/dist/translations/oc.js +1 -1
  100. package/dist/translations/oc.umd.js +1 -1
  101. package/dist/translations/pl.js +1 -1
  102. package/dist/translations/pl.umd.js +1 -1
  103. package/dist/translations/pt-br.js +1 -1
  104. package/dist/translations/pt-br.umd.js +1 -1
  105. package/dist/translations/pt.js +1 -1
  106. package/dist/translations/pt.umd.js +1 -1
  107. package/dist/translations/ro.js +1 -1
  108. package/dist/translations/ro.umd.js +1 -1
  109. package/dist/translations/ru.js +1 -1
  110. package/dist/translations/ru.umd.js +1 -1
  111. package/dist/translations/si.js +1 -1
  112. package/dist/translations/si.umd.js +1 -1
  113. package/dist/translations/sk.js +1 -1
  114. package/dist/translations/sk.umd.js +1 -1
  115. package/dist/translations/sl.js +1 -1
  116. package/dist/translations/sl.umd.js +1 -1
  117. package/dist/translations/sq.js +1 -1
  118. package/dist/translations/sq.umd.js +1 -1
  119. package/dist/translations/sr-latn.js +1 -1
  120. package/dist/translations/sr-latn.umd.js +1 -1
  121. package/dist/translations/sr.js +1 -1
  122. package/dist/translations/sr.umd.js +1 -1
  123. package/dist/translations/sv.js +1 -1
  124. package/dist/translations/sv.umd.js +1 -1
  125. package/dist/translations/th.js +1 -1
  126. package/dist/translations/th.umd.js +1 -1
  127. package/dist/translations/ti.js +1 -1
  128. package/dist/translations/ti.umd.js +1 -1
  129. package/dist/translations/tk.js +1 -1
  130. package/dist/translations/tk.umd.js +1 -1
  131. package/dist/translations/tr.js +1 -1
  132. package/dist/translations/tr.umd.js +1 -1
  133. package/dist/translations/tt.js +1 -1
  134. package/dist/translations/tt.umd.js +1 -1
  135. package/dist/translations/ug.js +1 -1
  136. package/dist/translations/ug.umd.js +1 -1
  137. package/dist/translations/uk.js +1 -1
  138. package/dist/translations/uk.umd.js +1 -1
  139. package/dist/translations/ur.js +1 -1
  140. package/dist/translations/ur.umd.js +1 -1
  141. package/dist/translations/uz.js +1 -1
  142. package/dist/translations/uz.umd.js +1 -1
  143. package/dist/translations/vi.js +1 -1
  144. package/dist/translations/vi.umd.js +1 -1
  145. package/dist/translations/zh-cn.js +1 -1
  146. package/dist/translations/zh-cn.umd.js +1 -1
  147. package/dist/translations/zh.js +1 -1
  148. package/dist/translations/zh.umd.js +1 -1
  149. package/package.json +14 -14
  150. package/src/common-translations.js +1 -1
  151. package/src/index.js +1 -1
  152. package/src/presencelist/presencelistui.js +1 -1
  153. package/src/presencelist/view/presencecounterview.js +1 -1
  154. package/src/presencelist/view/presencedropdownlistitemview.js +1 -1
  155. package/src/presencelist/view/presencedropdownlistview.js +1 -1
  156. package/src/presencelist/view/presenceinlinelistitemview.js +1 -1
  157. package/src/presencelist/view/presenceinlinelistview.js +1 -1
  158. package/src/presencelist/view/presencelistview.js +1 -1
  159. package/src/presencelist.js +1 -1
  160. package/src/realtimecollaborativecomments/cloudservicescommentsadapter.js +2 -2
  161. package/src/realtimecollaborativecomments.js +1 -1
  162. package/src/realtimecollaborativeediting/realtimecollaborationclient.js +2 -2
  163. package/src/realtimecollaborativeediting/sessions.js +1 -1
  164. package/src/realtimecollaborativeediting/usermarkers.js +1 -1
  165. package/src/realtimecollaborativeediting/websocketgateway.js +2 -2
  166. package/src/realtimecollaborativeediting.js +1 -1
  167. package/src/realtimecollaborativerevisionhistory/cloudservicesrevisionhistoryadapter.js +2 -2
  168. package/src/realtimecollaborativerevisionhistory.js +1 -1
  169. package/src/realtimecollaborativetrackchanges/cloudservicestrackchangesadapter.js +2 -2
  170. package/src/realtimecollaborativetrackchanges.js +1 -1
package/dist/index.js CHANGED
@@ -20,9 +20,9 @@
20
20
  *
21
21
  *
22
22
  */
23
- import{ContextPlugin as _0x3214d6,Plugin as _0x1bf704,PendingActions as _0x4a177a,Context as tt}from'@ckeditor/ckeditor5-core/dist/index.js';import{DomEmitterMixin as _0x22bbd9,CKEditorError as _0x593b20,Collection as _0x1216b9,global as _0xfff1fd,version as ht,uid as _0x102894,KeystrokeHandler as _0x215678}from'@ckeditor/ckeditor5-utils/dist/index.js';import{Notification as _0x52c10d,View as _0x16db83,ListView as _0x61da62,ListItemView as rt,LabelView as at,BalloonPanelView as _0x3afab7,clickOutsideHandler as _0x13d43c,BodyCollection as _0x168d9c}from'@ckeditor/ckeditor5-ui/dist/index.js';import{ModelLiveRange as _0x14d445,History as _0x2339bd,NoOperation as _0x152ccf,InsertOperation as _0x3ab41f,MarkerOperation as _0x3b1e2c,RootAttributeOperation as _0x2a4541,transformOperationSets as _0x465da8,OperationFactory as _0x208794}from'@ckeditor/ckeditor5-engine/dist/index.js';import{WebSocketGateway as dt,WEB_SOCKET_GATEWAY_STATES as _0x176d8f,CollaborativeEditingService as _0x4eb68d,User as ut,CommentsService as et,TrackChangesService as it,RevisionHistoryService as _0xdca4cc,EditorService as _0x519c59}from'@ckeditor/ckeditor-cloud-services-collaboration/dist/index.js';import{Users as _0x501a96,UserView as ct}from'ckeditor5-collaboration/dist/index.js';import{Compressor as _0x217b10}from'@ckeditor/ckeditor5-operations-compressor/dist/index.js';import{isElement as _0xff7fb5}from'es-toolkit/compat';class n extends _0x3214d6{static ['WebSocketGateway']=/* #__PURE__ -- @preserve */
24
- ((()=>dt)());static ['initialReconnectionInterval']=0x3e8;['connection'];['_reconnectionStack'];['_shouldPluginsReconnect'];['_domEmitter'];static get['requires'](){return['CloudServices',_0x52c10d];}static get['pluginName'](){return'WebSocketGateway';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x3255b5){super(_0x3255b5),this['set']('state',_0x176d8f['CONNECTED']),this['set']('_isBrowserOffline',!0x1),this['_reconnectionStack']=new Set(),this['_shouldPluginsReconnect']=!0x1,this['_domEmitter']=new(_0x22bbd9())();}['init'](){const _0x549a10=this['context'],_0xc09891=_0x549a10['plugins']['get']('CloudServices'),_0x26c11f=_0x549a10['plugins']['get'](_0x52c10d);if(!_0xc09891['token'])throw new _0x593b20('websocketgateway-missing-token',this);if(!_0xc09891['webSocketUrl'])throw new _0x593b20('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'](_0xc09891['token'],_0xc09891['webSocketUrl'],{'timeout':0x3e8*this['context']['config']['get']('cloudServices.connectionTimeout'),'requestTimeout':0x3e8*this['context']['config']['get']('cloudServices.requestTimeout')})['then'](_0x459f6e=>{if(this['connection']=_0x459f6e,this['bind']('state')['to'](_0x459f6e,'state',this,'_isBrowserOffline',(_0x431c95,_0x2c13ec)=>('connected'!==_0x431c95&&(this['_shouldPluginsReconnect']=!0x0),_0x2c13ec||_0x431c95!==_0x176d8f['CONNECTED']?_0x176d8f['DISCONNECTED']:this['state']==_0x176d8f['DISCONNECTED']&&this['_shouldPluginsReconnect']?(this['_shouldPluginsReconnect']=!0x1,this['_reconnect'](),_0x176d8f['CONNECTING']):_0x176d8f['CONNECTED'])),this['connection']['on']('error',(_0x5797e2,_0x37d29a)=>{if('limitExceeded'!==_0x37d29a['code'])throw console['error'](_0x37d29a),new _0x593b20('cloudservices-init',null,{'originalError':_0x37d29a});_0x26c11f['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'});}),!_0x459f6e['me'])return new Promise(_0x4c7b34=>_0x459f6e['on']('change:me',_0x4c7b34));})['catch'](_0x2ce3f4=>{throw console['error'](_0x2ce3f4),new _0x593b20('cloudservices-init',null,{'originalError':_0x2ce3f4});});}['addToReconnectionStack'](_0x3589a0){if('function'!=typeof _0x3589a0['reconnect'])throw new _0x593b20('websocketgateway-invalid-plugin-interface',this);if(this['isInReconnectionStack'](_0x3589a0))throw new _0x593b20('websocketgateway-plugin-already-registered',this,{'name':_0x3589a0['constructor']['pluginName']});this['_reconnectionStack']['add'](_0x3589a0);}['removeFromReconnectionStack'](_0xd3eaab){this['_reconnectionStack']['delete'](_0xd3eaab);}['isInReconnectionStack'](_0x393728){return this['_reconnectionStack']['has'](_0x393728);}['_reconnect'](){return this['connection']['reconnect']()['then'](()=>Promise['all'](Array['from'](this['_reconnectionStack'],_0x1dac8f=>_0x1dac8f['reconnect']())))['then'](()=>this['state']=_0x176d8f['CONNECTED'])['catch'](_0xeaaf39=>{throw console['error'](_0xeaaf39),new _0x593b20('cloudservices-reconnection-error',this['context']);});}['disconnect'](){this['connection']&&this['connection']['disconnect'](),this['state']=_0x176d8f['DISCONNECTED'],this['_domEmitter']['stopListening']();}['destroy'](){this['disconnect'](),super['destroy']();}}class i extends _0x3214d6{['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,_0x501a96];}constructor(_0x54a4da){super(_0x54a4da),this['channelSessions']=new Map(),this['channelConnectedUsers']=new Map(),this['allConnectedUsers']=new _0x1216b9(),this['_registeredSessions']=new Map(),this['_uniqueUsersCount']=0x0,this['_users']=this['context']['plugins']['get'](_0x501a96);}['init'](){const _0x532808=this['context']['plugins']['get'](n);this['listenTo'](_0x532808,'change:state',(_0x1fa83d,_0x518dff,_0x1f8801)=>{if('connected'!==_0x1f8801)this['channelSessions']['forEach'](_0x2acdbc=>_0x2acdbc['clear']()),this['channelConnectedUsers']['forEach'](_0x5d0205=>_0x5d0205['clear']()),this['allConnectedUsers']['clear']();else{for(const [_0xa51b2e,_0x4bc88e]of this['_registeredSessions'])for(const _0x179e47 of _0x4bc88e)this['_handleSessionAdd'](_0xa51b2e,_0x179e47);}}),this['_createUser'](_0x532808['connection']['me'],!0x0);}['register'](_0x3ed1ae,_0x354d8b){if(this['_registeredSessions']['has'](_0x3ed1ae))throw new _0x593b20('sessions-register-already-registered',null,{'channelId':_0x3ed1ae});this['_registeredSessions']['set'](_0x3ed1ae,_0x354d8b),this['channelSessions']['set'](_0x3ed1ae,new _0x1216b9()),this['channelConnectedUsers']['set'](_0x3ed1ae,new _0x1216b9()),this['listenTo'](_0x354d8b,'add',(_0x12cb16,_0x25acf8)=>this['_handleSessionAdd'](_0x3ed1ae,_0x25acf8)),this['listenTo'](_0x354d8b,'remove',(_0x3bb62f,_0x3add5b)=>this['_handleSessionRemove'](_0x3ed1ae,_0x3add5b));for(const _0x3f6d18 of _0x354d8b)this['_handleSessionAdd'](_0x3ed1ae,_0x3f6d18);}['unregister'](_0x32bd7c){if(!this['_registeredSessions']['has'](_0x32bd7c))throw new _0x593b20('sessions-unregister-not-exist',null,{'channelId':_0x32bd7c});const _0x9f8e5e=this['_registeredSessions']['get'](_0x32bd7c);this['stopListening'](_0x9f8e5e);for(const _0x34f8f3 of _0x9f8e5e)'connected'===this['context']['plugins']['get'](n)['state']&&this['_handleSessionRemove'](_0x32bd7c,_0x34f8f3);this['_registeredSessions']['delete'](_0x32bd7c),this['channelSessions']['delete'](_0x32bd7c),this['channelConnectedUsers']['delete'](_0x32bd7c);}get['mySessionId'](){return this['context']['plugins']['get'](n)['connection']['sessionId'];}['getUserBySessionId'](_0x375c98){for(const _0x8122b0 of this['channelSessions']['values']())for(const _0x3d42e9 of _0x8122b0)if(_0x3d42e9['id']===_0x375c98)return _0x3d42e9['user'];}['getUserSessions'](_0x357a83,_0x39606c){const _0xde745d=_0x39606c?[this['channelSessions']['get'](_0x39606c)]:this['channelSessions']['values'](),_0x4bf293=new Set();for(const _0x163d74 of _0xde745d)for(const _0x500ddc of _0x163d74)_0x500ddc['user']['id']===_0x357a83['id']&&_0x4bf293['add'](_0x500ddc['id']);return _0x4bf293;}['getUserRole'](_0x404379){for(const _0x2e830e of this['channelSessions']['values']())for(const _0xd5096e of _0x2e830e)if(_0xd5096e['user']===_0x404379)return _0xd5096e['role'];}['_handleSessionAdd'](_0x1ac0b7,_0x325034){if('connected'!==this['context']['plugins']['get'](n)['state'])return;const _0x2dd61c=_0x325034['user'],_0x273890=this['_users']['getUser'](_0x2dd61c['id'])||this['_createUser'](_0x2dd61c),_0x5ace37=Object['assign']({},_0x325034,{'user':_0x273890});if(this['channelSessions']['get'](_0x1ac0b7)['add'](_0x5ace37),!_0x2dd61c['hiddenInPresenceList']){const _0x133868=this['channelConnectedUsers']['get'](_0x1ac0b7);_0x133868['has'](_0x273890['id'])||_0x133868['add'](_0x273890),this['allConnectedUsers']['has'](_0x273890['id'])||_0x2dd61c['hiddenInPresenceList']||this['allConnectedUsers']['add'](_0x273890,_0x273890['isMe']?0x0:void 0x0);}this['fire']('sessionAdd:'+_0x1ac0b7,{'channelId':_0x1ac0b7,'session':_0x5ace37});}['_handleSessionRemove'](_0x38cc0b,_0xfb59c){if('connected'!==this['context']['plugins']['get'](n)['state'])return;const _0x522d5a=this['channelConnectedUsers']['get'](_0x38cc0b),_0x1ec2e1=_0xfb59c['user'];_0x1ec2e1['id']&&(this['channelSessions']['get'](_0x38cc0b)['remove'](_0xfb59c['id']),_0x522d5a['has'](_0x1ec2e1['id'])&&!this['getUserSessions'](_0x1ec2e1,_0x38cc0b)['size']&&_0x522d5a['remove'](_0x1ec2e1['id']),this['allConnectedUsers']['get'](_0x1ec2e1['id'])&&!this['getUserSessions'](_0x1ec2e1)['size']&&this['allConnectedUsers']['remove'](_0x1ec2e1['id']));}['_createUser'](_0x59a3f7,_0x5cef01){const _0x10e3ac=this['_users']['addUser'](_0x59a3f7);return _0x5cef01&&this['_users']['defineMe'](_0x59a3f7['id']),_0x10e3ac['orderNumber']=this['_uniqueUsersCount']++,_0x10e3ac;}}class H extends _0x1bf704{['_domEmitter']=new(_0x22bbd9())();static get['requires'](){return[i];}static get['pluginName'](){return'UserMarkers';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['init'](){const _0x3128fa=this['editor'],_0x4cf648=_0x3128fa['plugins']['get'](i);_0x3128fa['conversion']['for']('editingDowncast')['markerToElement']({'model':'user:position','view':(_0x28d12c,{writer:_0x35213b})=>function(_0x4c190c,_0x56c4e0,_0x3b7f96,_0x4ef110){const _0x314599=_0x4c190c['markerName']['split'](':')[0x2],_0x392a7e=_0x3b7f96['getUserBySessionId'](_0x314599);if(!_0x392a7e||_0x314599===_0x3b7f96['mySessionId'])return;if(!_0x4ef110['model']['schema']['checkChild'](_0x4c190c['markerRange']['start'],'$text'))return;const _0x1dc4a2={'class':'ck-user__marker\x20'+_0x392a7e['color']['getMarkerClass'](),'data-name':_0x392a7e['name'],'data-session-id':_0x314599},_0x448d13=_0x4ef110['model']['markers']['get'](_0x4c190c['markerName']),_0x4eabcb=_0x448d13['getStart'](),_0x4bc9dd=_0x4eabcb['nodeAfter'],_0x327891=_0x4ef110['model']['schema'];if(_0x4bc9dd&&_0x327891['isObject'](_0x4bc9dd)&&_0x327891['isInline'](_0x4bc9dd)&&!_0x4ef110['model']['markers']['get']('user:range:'+_0x314599)['getRange']()['isCollapsed'])return;const _0x326257=_0x4eabcb['parent'];return _0x4ef110['model']['schema']['isLimit'](_0x326257)&&!_0x4ef110['model']['hasContent'](_0x326257)&&(_0x1dc4a2['contenteditable']=!0x1),function(_0x5325a4,_0x586cc1,_0x459b34){const _0x233b66=_0x5325a4['createUIElement']('span',_0x586cc1);return _0x5325a4['setCustomProperty']('userPositionMarker',!0x0,_0x233b66),_0x233b66['render']=function(_0x3a871){const _0x226f42=this['toDomElement'](_0x3a871),_0x203f7f=document['createElement']('span');return _0x203f7f['classList']['add']('ck-user__marker-tooltip'),_0x203f7f['setAttribute']('contenteditable','false'),_0x203f7f['setAttribute']('spellcheck','false'),_0x203f7f['textContent']=_0x459b34['name'],_0x226f42['innerHTML']='⁠<span\x20class=\x22ck-user__marker-line\x22\x20contenteditable=\x22false\x22><span\x20class=\x22ck-user__marker-dot\x22></span></span>'+_0x203f7f['outerHTML']+'⁠',_0x226f42['addEventListener']('mouseenter',()=>{_0x226f42['classList']['add']('ck-user__marker_hovered');}),_0x226f42['addEventListener']('mouseleave',()=>{_0x226f42['classList']['remove']('ck-user__marker_hovered');}),_0x226f42;},_0x233b66['isSimilar']=function(_0x338f40){return!(!this['getCustomProperty']('userPositionMarker')||!_0x338f40['getCustomProperty']('userPositionMarker')||this['getAttribute']('data-session-id')!=_0x338f40['getAttribute']('data-session-id'));},_0x233b66;}(_0x56c4e0,_0x1dc4a2,_0x392a7e);}(_0x28d12c,_0x35213b,_0x4cf648,_0x3128fa)}),_0x3128fa['conversion']['for']('editingDowncast')['markerToHighlight']({'model':'user:range','view':_0x262eb3=>function(_0x1d5059,_0x20cd92){const _0x273bc0=_0x1d5059['markerName']['split'](':')[0x2];if(_0x273bc0===_0x20cd92['mySessionId'])return null;const _0x4d5df4=_0x20cd92['getUserBySessionId'](_0x273bc0);if(!_0x4d5df4)return{'id':_0x273bc0,'classes':[]};return{'id':_0x273bc0,'classes':['ck-user__selection',_0x4d5df4['color']['getSelectionClass']()],'attributes':{'data-session-id':_0x273bc0},'priority':0x7d0+_0x4d5df4['orderNumber']};}(_0x262eb3,_0x4cf648)}),function(_0x26cf45){const _0x5a4b4c=_0x26cf45['model'],_0x2f9abe=new Map(),_0x1dc6e2=_0x26cf45['plugins']['get'](i);_0x5a4b4c['markers']['on']('update:user:range',(_0xa87f42,_0x13cac5,_0x22420c,_0x1a2b82)=>{if(!_0x1a2b82&&_0x2f9abe['get'](_0x13cac5['name']))return _0x2f9abe['get'](_0x13cac5['name'])['detach'](),void _0x2f9abe['delete'](_0x13cac5['name']);const _0x19151e=_0x13cac5['name']['split'](':')[0x2];if(_0x19151e===_0x1dc6e2['mySessionId'])return;const _0x1611f0='user:position:'+_0x19151e;_0x5a4b4c['markers']['has'](_0x1611f0)&&_0x26cf45['editing']['reconvertMarker'](_0x1611f0),_0x13cac5['on']('change:range',(_0x1ac616,_0x169671,_0x1f2e09)=>{if('$graveyard'!=_0x169671['root']['rootName']&&'$graveyard'==_0x13cac5['getRange']()['root']['rootName']&&!_0x2f9abe['has'](_0x13cac5['name'])){const _0xbba6f9=_0x5a4b4c['schema']['getNearestSelectionRange'](_0x1f2e09['deletionPosition']);if(_0xbba6f9){const _0x1cb3a7=_0x14d445['fromRange'](_0xbba6f9);_0x2f9abe['set'](_0x13cac5['name'],_0x1cb3a7),_0x1cb3a7['on']('change:range',(_0x10d845,_0x49b25d,_0x1ff78c)=>{if('$graveyard'==_0x1cb3a7['root']['rootName']){const _0x4cad70=_0x5a4b4c['schema']['getNearestSelectionRange'](_0x1ff78c['deletionPosition']);_0x4cad70?(_0x1cb3a7['start']=_0x4cad70['start'],_0x1cb3a7['end']=_0x4cad70['end']):(_0x2f9abe['delete'](_0x13cac5['name']),_0x1cb3a7['detach']());}});}}});}),_0x5a4b4c['document']['on']('change',()=>{_0x2f9abe['size']>0x0&&_0x5a4b4c['enqueueChange']({'isUndoable':!0x1},_0x1df919=>{for(const [_0x56776e,_0x46a50b]of _0x2f9abe)'$graveyard'==_0x5a4b4c['markers']['get'](_0x56776e)['getRange']()['root']['rootName']&&(Y(_0x56776e['split'](':')[0x2],_0x46a50b['toRange'](),_0x5a4b4c,_0x1df919),_0x46a50b['detach']());_0x2f9abe['clear']();});});}(_0x3128fa),this['_domEmitter']['listenTo'](_0xfff1fd['document'],'keydown',(_0x1e3df2,{key:_0x38e8bc})=>{'Escape'===_0x38e8bc&&function(_0x5612bb){_0x5612bb['editing']['view']['change'](_0x2c333a=>{for(const _0x56e5ba of _0x5612bb['model']['markers']){if(!_0x56e5ba['name']['startsWith']('user:position'))continue;const _0x586cff=_0x5612bb['editing']['mapper']['markerNameToElements'](_0x56e5ba['name']);if(_0x586cff){for(const _0x28dab3 of _0x586cff)_0x2c333a['removeClass']('ck-user__marker_hovered',_0x28dab3);}}});}(_0x3128fa);},{'useCapture':!0x0});}['afterInit'](){const _0x19cb04=this['editor'],_0x3da693=_0x19cb04['commands']['get']('undo');_0x3da693&&_0x19cb04['model']['on']('applyOperation',(_0x5130d1,_0x1cbcc7)=>{const _0x33a099=_0x1cbcc7[0x0];if(!_0x33a099['isDocumentOperation'])return;if('marker'!=_0x33a099['type']||!_0x33a099['name']['startsWith']('user:'))return;const _0x198e01=_0x33a099['batch'];_0x3da693['_createdBatches']['has'](_0x198e01)&&(_0x33a099['newRange']=_0x33a099['oldRange']?_0x19cb04['model']['createRange'](_0x33a099['oldRange']['start'],_0x33a099['oldRange']['end']):null);},{'priority':'highest'});}['destroy'](){return this['_domEmitter']['stopListening'](),super['destroy']();}['createUserMarkerOperations'](){const _0x40b6d5=this['editor'],_0xc72212=_0x40b6d5['model']['document'],_0x274680=_0x40b6d5['plugins']['get'](i);_0x40b6d5['model']['enqueueChange']({'isUndoable':!0x1},_0x3571ec=>{const _0x55198b='user:range:'+_0x274680['mySessionId'],_0x499380='user:position:'+_0x274680['mySessionId'],_0x1b8ddf=_0x40b6d5['model']['markers']['has'](_0x55198b);_0x40b6d5['editing']['view']['hasDomSelection']?Y(_0x274680['mySessionId'],_0xc72212['selection']['getFirstRange'](),_0x40b6d5['model'],_0x3571ec):_0x1b8ddf&&(_0x3571ec['removeMarker'](_0x55198b),_0x3571ec['removeMarker'](_0x499380));});}}function Y(_0x59befc,_0x2c6733,_0x3d5d9a,_0x597073){const _0x4a2007='user:range:'+_0x59befc,_0x335def='user:position:'+_0x59befc,_0x15a3b2=_0x2c6733['getContainedElement']();let _0x552a96=_0x2c6733['start'];if(_0x15a3b2&&_0x15a3b2['is']('element','tableCell')){const _0x2613d9=function(_0x5213ab,_0x6319a){for(const _0x375211 of _0x5213ab['getPositions']())if(_0x6319a['schema']['checkChild'](_0x375211,'$text'))return _0x375211;}(_0x2c6733,_0x3d5d9a);_0x2613d9&&(_0x552a96=_0x2613d9,_0x2c6733=_0x597073['createRange'](_0x552a96));}const _0x8b8068=_0x597073['createRange'](_0x552a96);_0x3d5d9a['markers']['has'](_0x4a2007)?(_0x597073['updateMarker'](_0x4a2007,{'range':_0x2c6733}),_0x597073['updateMarker'](_0x335def,{'range':_0x8b8068})):(_0x597073['addMarker'](_0x4a2007,{'range':_0x2c6733,'usingOperation':!0x0}),_0x597073['addMarker'](_0x335def,{'range':_0x8b8068,'usingOperation':!0x0}));}function V(_0x499ab5,_0x3832a4,_0x3a0a6d){const _0x63360c=_0x499ab5['t'],t=_0x499ab5['t'];switch(_0x3832a4){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 _0x63360c({'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'},_0x3a0a6d);default:return'';}}let q=0x1;class l extends _0x1bf704{static ['CollaborativeEditingService']=/* #__PURE__ -- @preserve */
25
- ((()=>_0x4eb68d)());['_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,_0x4a177a,_0x501a96,_0x52c10d];}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 _0xc9d26c=this['serverHistory']['getOperations']();for(let _0x47d351=_0xc9d26c['length']-0x1;_0x47d351>=0x0;_0x47d351--){const _0x44fec7=_0xc9d26c[_0x47d351];if(!this['_disconnectionOperations']['has'](_0x44fec7))return _0x44fec7['baseVersion']+0x1-this['_offset'];}return 0x0;}constructor(_0x531fc4){if(super(_0x531fc4),this['_offset']=0x0,this['sessionId']=null,this['serverHistory']=new _0x2339bd(),this['editor']['config']['define']('collaboration',{}),this['_channelId']=this['editor']['config']['get']('collaboration.channelId'),!this['_channelId'])throw new _0x593b20('collaboration-missing-channelid',this);const _0x574fa7=_0x531fc4['config']['get']('cloudServices.bundleVersion')||ht;this['_service']=new l['CollaborativeEditingService'](_0x574fa7,this['_channelId']),this['_document']=this['editor']['model']['document'],this['_compressor']=new _0x217b10(),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 K(this['_disconnectionOperations']);}['init'](){const _0x187df0=this['editor'],_0x2b1413=_0x187df0['plugins']['get'](_0x501a96),_0x4b6e80=_0x187df0['plugins']['get'](n);this['listenTo'](_0x2b1413,'getOperationAuthor',(_0x10b608,_0x39b0ac)=>{const _0x54595e=_0x39b0ac[0x0];_0x54595e['_authorId']&&(_0x10b608['return']=_0x2b1413['getUser'](_0x54595e['_authorId']),_0x10b608['stop']()),null===_0x54595e['_authorId']&&(_0x10b608['return']=null,_0x10b608['stop']());},{'priority':'high'}),this['listenTo'](_0x187df0['model']['document']['selection'],'change:range',(_0x519b69,_0xa9a260)=>{_0xa9a260['directChange']&&this['_refreshUserSelectionMarkers']();}),this['listenTo'](_0x187df0['editing']['view'],'change:hasDomSelection',()=>{this['_refreshUserSelectionMarkers']();}),this['_initThrowingOnDataSet'](),_0x187df0['model']['on']('applyOperation',(_0x366165,_0x184e15)=>{const _0x321369=_0x184e15[0x0];_0x321369['isDocumentOperation']&&(this['_saveOperationInBuffer'](_0x321369),this['_shouldSendUpdate']()&&this['_sendBufferedOperationsDelayed']());}),this['_setUpDataInit'](),this['bind']('_isEditingAllowed')['to'](_0x4b6e80,'state',this,'_hasSynchronizationProblem',(_0x175eae,_0x929ea2)=>'connected'===_0x175eae&&!_0x929ea2),this['on']('change:_isEditingAllowed',()=>{this['_isEditingAllowed']?_0x187df0['disableReadOnlyMode']('rtc-offline'):_0x187df0['enableReadOnlyMode']('rtc-offline');}),this['_isEditingAllowed']?_0x187df0['disableReadOnlyMode']('rtc-offline'):_0x187df0['enableReadOnlyMode']('rtc-offline'),this['set']('_isConnected',!0x1);}async['reconnect'](){const _0x28d772=this['editor']['plugins']['get'](i),_0x3484f5=this['editor']['plugins']['get'](n);try{this['_isPendingUpdate']=!0x0,_0x28d772['unregister'](this['_channelId']);const _0x3d09d9=await this['_service']['reconnect'](_0x3484f5['connection'],this['lastSyncVersion']);await this['_handleReconnectionResponse'](_0x3d09d9)&&(this['_isPendingUpdate']=!0x1,this['_clearPendingAction']());const _0x36428a=await this['_service']['getConnectedSessions']();_0x28d772['register'](this['_channelId'],_0x36428a),this['_handleSendingSelectionMarkers'](),this['_isConnected']=!0x0;}catch(_0x4a897c){if(function(_0x127537){return'404'===_0x127537['code'];}(_0x4a897c)&&this['sessionId'])await this['_connectAfterSessionHasBeenFlushed']();else{if(function(_0x102014){return'409'===_0x102014['code'];}(_0x4a897c)){const _0x3702c8=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'](_0x3702c8);}else{if(!(_0x4a897c instanceof G))throw _0x4a897c;this['_handleReconnectionError']();}}}}['destroy'](){const _0x252cb5=this['editor']['plugins']['get'](n),_0x4a17d5=this['editor']['plugins']['get'](i);this['editor']['enableReadOnlyMode']('rtc-destroyed'),_0x4a17d5['channelSessions']['has'](this['_channelId'])&&_0x4a17d5['unregister'](this['_channelId']),_0x252cb5['removeFromReconnectionStack'](this),this['_disconnectService'](),super['destroy']();}async['_handleReconnectionResponse'](_0xb23d6a){if(this['sessionId']!==_0xb23d6a['sessionId']&&this['_lastSyncedOperationId']!==_0xb23d6a['lastOperationId'])throw new G();return this['sessionId']=_0xb23d6a['sessionId'],this['_handleServerResponse']([],{..._0xb23d6a,'wereChangesApplied':!0x1,'data':_0xb23d6a['data']},'reconnect');}async['_connectService'](_0x41ca19,_0x82f954=!0x1){const {connection:_0x5e4dd2}=this['editor']['plugins']['get'](n);l['CollaborativeEditingService']['getConnectedSessions'](_0x5e4dd2,this['_channelId'])['then'](_0x4d5482=>this['_initSessionsHandling'](_0x4d5482))['catch'](_0x1806c4=>{this['_crash']('realtimecollaborationclient-init-session-connection-error',_0x1806c4);}),this['listenTo'](this['_service'],'operationsReceived',this['_handleReceivedOperations']['bind'](this)),this['listenTo'](this['_service'],'error',(_0x147648,_0x169211)=>{this['_crash']('realtimecollaborationclient-init-service-internal-error',_0x169211);}),this['listenTo'](this['_service'],'disconnected',()=>{this['_isConnected']=!0x1;});const _0x16bbe8=this['_operationIdentifier']['getIdOfTheLastOperation'](_0x41ca19);this['_isPendingUpdate']=!0x0;const _0x1aac0d=await this['_service']['connect'](_0x5e4dd2,this['_compressOperations'](_0x41ca19),_0x16bbe8);if(this['sessionId']=_0x1aac0d['sessionId'],_0x82f954){if(!_0x1aac0d['wereChangesApplied'])return void this['_handleReconnectionError']();this['_isPendingUpdate']=!0x1,this['_clearPendingAction'](),this['serverHistory']['reset'](),this['_offset']=_0x1aac0d['offset'],this['serverHistory']['version']=this['_offset'],await this['_handleServerResponse'](_0x41ca19,_0x1aac0d,'reconnection:\x20flushed\x20session');}else await this['_handleInitialConnectionData'](_0x1aac0d,_0x41ca19);this['_handleSendingSelectionMarkers'](),this['_isConnected']=!0x0;}['_handleSendingSelectionMarkers'](){const _0x7dcb85=this['editor']['plugins']['get'](i),_0x460b87=this['editor']['plugins']['get'](H),_0x2c3dd3=_0x7dcb85['channelSessions']['get'](this['_channelId']);_0x2c3dd3&&_0x2c3dd3['length']>0x1?_0x460b87['createUserMarkerOperations']():this['listenTo'](_0x7dcb85,'sessionAdd:'+this['_channelId'],()=>{0x2===_0x7dcb85['channelSessions']['get'](this['_channelId'])['length']&&_0x460b87['createUserMarkerOperations']();});}async['_handleReceivedOperations'](_0x568d4b,_0x27d8b3,_0x1dd4ef,_0x28a02f){if(!this['_isPendingUpdate']&&this['_document']['version']==_0x27d8b3){const _0x2eac38=this['_decompressOperations'](_0x1dd4ef,_0x28a02f);await this['_fetchMissingUsers'](_0x2eac38),this['_handleExternalOperations'](_0x2eac38,_0x27d8b3,_0x1dd4ef['lastOperationId'])||this['_crash']('realtimecollaborationclient-init-service-incorrect-server-operation');}}async['_connectAfterSessionHasBeenFlushed'](){this['_disconnectService']();const {locale:_0x564034}=this['editor'];let _0x313815;try{_0x313815=await this['_service']['getDocumentDetails']();}catch{const _0x24c265=V(_0x564034,'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'](_0x24c265);}const _0x2ff4a4=_0x313815['currentDocumentSession']||_0x313815['lastDocumentSession'];if(this['_lastSyncedOperationId']!==_0x2ff4a4['lastOperationId']){const _0x1e3a06=V(_0x564034,'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'](_0x1e3a06);}await this['_connectService'](this['editor']['model']['document']['history']['getOperations'](),!0x0);}['_disconnectService'](){this['_service']['disconnect'](),this['_bufferedOperations']=[],clearTimeout(this['_sendBufferedOperationsDelayId']),this['stopListening'](this['_service']);}['_initSessionsHandling'](_0x22e3b2){const _0x57a1c6=this['editor']['plugins']['get'](i);this['listenTo'](_0x57a1c6,'sessionAdd:'+this['_channelId'],(_0x4fe3cd,{session:_0x149502})=>{if(_0x149502['id']===_0x57a1c6['mySessionId']){_0x4fe3cd['off']();const _0x342620=this['editor']['plugins']['has']('CommentsOnly')&&this['editor']['plugins']['get']('CommentsOnly');let _0x2c987d=_0x149502['permissions'];_0x342620&&_0x342620['isEnabled']&&(_0x2c987d=_0x2c987d['filter'](_0x3bb20f=>'document:write'!==_0x3bb20f)),this['editor']['plugins']['get']('Permissions')['setPermissions'](_0x2c987d,this['_channelId']);}}),_0x57a1c6['register'](this['_channelId'],_0x22e3b2);}['_initThrowingOnDataSet'](){const _0x331ba2=this['editor']['data']['set'];this['editor']['data']['set']=(..._0x5abdbd)=>{if(!_0x5abdbd[_0x5abdbd['length']-0x1]['suppressErrorInCollaboration'])throw new _0x593b20('realtimecollaborationclient-editor-setdata-and-editor-data-set-are-forbidden-in-real-time-collaboration',this);_0x331ba2['apply'](this['editor']['data'],_0x5abdbd);};}['_setUpDataInit'](){this['editor']['data']['on']('init',(_0x26816c,[_0x19bf93])=>{if(this['_document']['version'])throw new _0x593b20('realtimecollaborationclient-init-document-already-initialized',this);_0x26816c['stop'](),this['_setPendingAction']();const _0x2b13ad=this['editor']['config']['get']('rootsAttributes'),_0x2a6f73=this['_getOperationsFromInitData'](_0x19bf93,_0x2b13ad);0x0==_0x2a6f73['length']&&_0x2a6f73['push'](new _0x152ccf(0x0)),_0x26816c['return']=this['_connectService'](_0x2a6f73)['then'](()=>{this['editor']['plugins']['get'](n)['addToReconnectionStack'](this),this['editor']['data']['fire']('ready');})['catch'](_0x4b95a9=>this['_crash']('realtimecollaborationclient-init-connection-failed',_0x4b95a9))['finally'](()=>this['_clearPendingAction']());},{'priority':'high'}),this['editor']['on']('loadRoot',async(_0x1c1a5c,[_0x344827,_0x125115])=>{_0x1c1a5c['stop']();const _0x3d65c5=this['editor']['model']['document']['getRoot'](_0x344827);if(!this['_knownRootNames']['has'](_0x344827)){const _0x24c7f6=_0x125115&&_0x125115['data']?_0x125115['data']:'',_0x21acf=_0x125115&&_0x125115['attributes']?_0x125115['attributes']:{};await this['_loadRoot'](_0x344827,_0x24c7f6,_0x21acf);}this['editor']['model']['enqueueChange']({'isUndoable':!0x1},()=>{_0x3d65c5['_isLoaded']=!0x0,this['editor']['model']['document']['differ']['_bufferRootLoad'](_0x3d65c5);});},{'priority':'high'});}async['_fetchMissingUsers'](_0x574b61){const _0x2608ec=this['editor']['plugins']['get'](_0x501a96),{connection:_0x45bb3b}=this['editor']['plugins']['get'](n),_0x59491d=new Set();for(const _0x3ee34e of _0x574b61){const _0x4a859d=_0x3ee34e['_authorId'];_0x4a859d&&!_0x2608ec['getUser'](_0x4a859d)&&_0x59491d['add'](_0x4a859d);}if(0x0===_0x59491d['size'])return;const _0x53c06a=await ut['getMany'](_0x45bb3b,Array['from'](_0x59491d));for(const _0x1e8912 of _0x53c06a)_0x2608ec['getUser'](_0x1e8912['id'])||_0x2608ec['addUser'](_0x1e8912);}['_getOperationsFromInitData'](_0xe04b7e,_0x2b3507={}){const _0x3cf733=this['editor']['model'],_0x1f973c=[];let _0x22c218=0x0;const _0x1c8547='string'==typeof _0xe04b7e?{'main':_0xe04b7e}:_0xe04b7e;for(const _0x3b26a8 of Object['keys'](_0x1c8547)){if(!this['_document']['roots']['has'](_0x3b26a8))throw new _0x593b20('realtimecollaborationclient-init-non-existent-root',this);const _0x3407ef=this['editor']['data']['parse'](_0x1c8547[_0x3b26a8]),_0x339819=this['_document']['getRoot'](_0x3b26a8),_0x52ca31=new _0x3ab41f(_0x3cf733['createPositionAt'](_0x339819,0x0),_0x3407ef,_0x22c218++);_0x1f973c['push'](_0x52ca31);for(const [_0x5180ba,_0x3966db]of _0x3407ef['markers']){const _0x18fad2=_0x3cf733['createRange'](_0x3cf733['createPositionFromPath'](_0x339819,_0x3966db['start']['path']['slice']()),_0x3cf733['createPositionFromPath'](_0x339819,_0x3966db['end']['path']['slice']())),_0x2694f9=new _0x3b1e2c(_0x5180ba,null,_0x18fad2,_0x3cf733['markers'],!0x0,_0x22c218++);_0x1f973c['push'](_0x2694f9);}}if(_0x2b3507)for(const [_0x5045f3,_0x8b5b63]of Object['entries'](_0x2b3507)){const _0x764cb9=_0x3cf733['document']['getRoot'](_0x5045f3);if(!_0x764cb9)throw new _0x593b20('multi-root-editor-root-attributes-no-root',null);for(const [_0x14910a,_0x3e93e1]of Object['entries'](_0x8b5b63))if(null!==_0x3e93e1){const _0x4b8362=new _0x2a4541(_0x764cb9,_0x14910a,null,_0x3e93e1,_0x22c218++);_0x1f973c['push'](_0x4b8362);}}return _0x1f973c;}async['_loadRoot'](_0x54e4e1,_0x1dfa1d,_0x3597ef){this['_getOperationsFromInitData']({[_0x54e4e1]:_0x1dfa1d},{[_0x54e4e1]:_0x3597ef})['forEach']((_0x2d621f,_0x1457b4)=>{_0x2d621f['baseVersion']=this['_document']['version']+_0x1457b4,_0x2d621f['_isInit']=!0x0,this['_saveOperationInBuffer'](_0x2d621f);}),this['_sendBufferedOperationsDelayed'](),await this['_waitUntilSynced']();}async['_handleInitialConnectionData'](_0x2db719,_0x4638d7){let _0x3d592e;this['_offset']=_0x2db719['offset'];const _0x34a228=_0x2db719['wereChangesApplied']&&!_0x2db719['initData'],_0x32d059=_0x34a228?0x0:_0x2db719['data']['baseVersion'];if(_0x4638d7['forEach'](_0x2c22bd=>{_0x2c22bd['_isInit']=!0x0,_0x2c22bd['createdAt']=_0x2db719['sessionCreatedAt'],_0x2c22bd['_authorId']=null;}),_0x34a228)_0x3d592e=_0x4638d7,this['_applyOperationsSet'](_0x3d592e,_0x34a228);else{if(_0x2db719['initData']){const _0xf7eedb=this['_getOperationsFromInitData'](_0x2db719['initData']);this['_document']['history']['version']=-_0xf7eedb['length'],_0xf7eedb['forEach'](_0x364f3e=>{_0x364f3e['baseVersion']-=_0xf7eedb['length'],_0x364f3e['createdAt']=_0x2db719['sessionCreatedAt'],_0x364f3e['_isInit']=!0x0,_0x364f3e['_authorId']=null;}),this['_applyOperationsSet'](_0xf7eedb,!0x0),this['serverHistory']['version']=-_0xf7eedb['length']+this['_offset'],this['_updateServerHistory'](_0xf7eedb);}this['_document']['history']['version']=_0x32d059,_0x3d592e=this['_decompressOperations'](_0x2db719['data'],_0x2db719['metadata']),await this['_fetchMissingUsers'](_0x3d592e),this['_applyOperationsSet'](_0x3d592e,_0x34a228);}_0x2db719['lastOperationId']&&(this['_operationIdentifier']['setIdForTheLastOperation'](_0x3d592e,_0x2db719['lastOperationId']),this['_lastSyncedOperationId']=_0x2db719['lastOperationId']),this['serverHistory']['version']=_0x32d059+this['_offset'],this['_updateServerHistory'](_0x3d592e),_0x4638d7['filter'](_0x145438=>{const _0x57df07=this['_getAffectedRoot'](_0x145438);return _0x57df07&&!this['_knownRootNames']['has'](_0x57df07);})['forEach']((_0x564812,_0x282935)=>{_0x564812['baseVersion']=this['_document']['version']+_0x282935,this['_saveOperationInBuffer'](_0x564812);}),this['_shouldSendUpdate']()?(this['_currentBufferDelay']=0x0,this['_sendBufferedOperationsDelayed'](!0x0),await this['_waitUntilSynced']()):(this['_isPendingUpdate']=!0x1,this['_clearPendingAction']());}['_crash'](_0x298e2f,_0x59cbfc){const _0x5aa5ef=_0x59cbfc&&_0x59cbfc['message'];if(_0x5aa5ef&&_0x5aa5ef['startsWith']('realtimecollaborationclient'))throw _0x59cbfc;const _0x11591e=this['editor']['plugins']['get'](n);throw this['_isPendingUpdate']=!0x0,_0x11591e['disconnect'](),this['editor']['enableReadOnlyMode']('realtimecollaborationclient-error'),new _0x593b20(_0x298e2f,this['editor'],_0x5aa5ef?{'originalError':_0x5aa5ef}:void 0x0);}['_saveOperationInBuffer'](_0x35e89e){this['_knownOperations']['has'](_0x35e89e)||(this['_knownOperations']['add'](_0x35e89e),this['_bufferedOperations']['push'](_0x35e89e),this['_pendingAction']||'marker'==_0x35e89e['type']&&!_0x35e89e['affectsData']||this['_setPendingAction']());}['_sendBufferedOperationsDelayed'](_0x3febc6=!0x1){!_0x3febc6&&this['_isPendingUpdate']||(this['_isPendingUpdate']=!0x0,clearTimeout(this['_sendBufferedOperationsDelayId']),this['_sendBufferedOperationsDelayId']=setTimeout(()=>{this['_sendBufferedOperations']()['then'](_0x2a5226=>{_0x2a5226&&(this['_clearPendingAction'](),this['_isPendingUpdate']=!0x1);})['catch'](_0x412e0a=>{this['_clearPendingAction'](),this['_isPendingUpdate']=!0x1,function(_0x37567a){return _0x37567a['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x37567a['message']['startsWith']('cloud-services-internal-error:\x20Collaborative\x20Editing\x20Service\x20is\x20not\x20connected.')||_0x37567a['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}(_0x412e0a)||this['_crash'](_0x412e0a['message'],_0x412e0a);});},this['_currentBufferDelay']));}['_waitUntilSynced'](){return new Promise(_0x36e866=>{this['on']('change:_isPendingUpdate',()=>{_0x36e866();});});}async['_sendBufferedOperations'](){const _0x77b4ed=this['editor']['plugins']['get'](H);if(this['_shouldSendSelectionUpdate']()&&(_0x77b4ed['createUserMarkerOperations'](),this['_hasSelectionChanged']=!0x1),!this['_shouldSendUpdate']())return!0x0;const _0x2eca7e=[...this['_bufferedOperations']];for(const _0x111fa3 of _0x2eca7e)_0x111fa3['wasUndone']=this['_document']['history']['isUndoneOperation'](_0x111fa3);const _0x30e29c=this['_operationIdentifier']['getIdOfTheLastOperation'](_0x2eca7e),_0x2b1d85=q++,_0x3c49dd=this['_compressOperations'](_0x2eca7e),_0x5ce584=await this['_service']['sendOperations'](_0x3c49dd,_0x3c49dd['baseVersion'],_0x30e29c);try{return await this['_handleServerResponse'](_0x2eca7e,_0x5ce584,_0x2b1d85);}catch(_0xd09776){return this['_crash']('realtimecollaborationclient-sendbufferedoperations',_0xd09776);}}async['_handleServerResponse'](_0x11c8b9,_0x4a23b7,_0x41b582){if('error'in _0x4a23b7)throw _0x4a23b7['error'];let _0x520403=!0x1;if(_0x4a23b7['wereChangesApplied']){_0x4a23b7['lastOperationId']&&(this['_lastSyncedOperationId']=_0x4a23b7['lastOperationId']),this['_bufferedOperations']=this['_bufferedOperations']['filter'](_0x3659b7=>!_0x11c8b9['includes'](_0x3659b7));for(const _0x47d86c of _0x11c8b9)_0x47d86c['createdAt']='lastOperationAcceptedAt'in _0x4a23b7&&_0x4a23b7['lastOperationAcceptedAt']||void 0x0;$(_0x11c8b9,_0x4a23b7['version']-_0x11c8b9['length']),this['_updateServerHistory'](_0x11c8b9);const _0xb71f0c=_0x11c8b9['filter'](_0x359a2c=>{if(!_0x359a2c['_isInit'])return!0x1;const _0x3fe7f1=this['_getAffectedRoot'](_0x359a2c);return _0x3fe7f1&&!this['_knownRootNames']['has'](_0x3fe7f1);});$(_0xb71f0c,this['_document']['version']),this['_applyOperationsSet'](_0xb71f0c),_0x520403=!0x0,this['_currentBufferDelay']=this['_baseBufferDelay'];}else{const _0xc89a8f=this['_decompressOperations'](_0x4a23b7['data'],_0x4a23b7['metadata'])['filter'](_0xc13fc3=>_0xc13fc3['baseVersion']>=this['_lastServerVersion']);_0xc89a8f['forEach'](_0x2278ac=>this['_addKnownRoot'](_0x2278ac)),this['_bufferedOperations']=this['_bufferedOperations']['filter'](_0x4c0a91=>!_0x4c0a91['_isInit']||!this['_knownRootNames']['has'](this['_getAffectedRoot'](_0x4c0a91))),this['_bufferedOperations']['length']&&$(this['_bufferedOperations'],this['_bufferedOperations'][0x0]['baseVersion']),await this['_fetchMissingUsers'](_0xc89a8f),_0x520403=this['_handleExternalOperations'](_0xc89a8f,_0x4a23b7['version'],_0x4a23b7['lastOperationId']),this['_currentBufferDelay']=Math['round'](this['_currentBufferDelay']/0x2);}return _0x520403?!this['_shouldSendUpdate']()||(this['_sendBufferedOperationsDelayed'](!0x0),!0x1):this['_crash']('realtimecollaborationclient-handleserverresponse');}['_handleExternalOperations'](_0x31987b,_0x263b2a,_0x53da7d){try{const _0x31bfe8={'document':this['_document'],'useRelations':!0x1,'padWithNoOps':!0x0},{operationsA:_0x3e996f,operationsB:_0x31c985,originalOperations:_0x192b0b}=_0x465da8(_0x31987b,this['_bufferedOperations'],_0x31bfe8);$(_0x3e996f,this['_document']['version']),$(_0x31c985,_0x263b2a);for(const _0x4c4315 of _0x3e996f){const _0x316cf4=_0x192b0b['get'](_0x4c4315);_0x4c4315['_authorId']=_0x316cf4?_0x316cf4['_authorId']:null;}_0x53da7d&&(this['_operationIdentifier']['setIdForTheLastOperation'](_0x31987b,_0x53da7d),this['_lastSyncedOperationId']=_0x53da7d),this['_bufferedOperations']=[..._0x31c985],this['_applyOperationsSet'](_0x3e996f),this['_updateServerHistory'](_0x31987b);}catch(_0x50924d){return console['error'](_0x50924d),!0x1;}return!0x0;}['_applyOperationsSet'](_0x4e59cb,_0x28f37d=!0x1){this['editor']['model']['enqueueChange']({'isUndoable':!0x1,'isLocal':!0x1},_0x1e4279=>{for(const _0x3d5af8 of _0x4e59cb)this['_knownOperations']['add'](_0x3d5af8),this['_addKnownRoot'](_0x3d5af8),_0x1e4279['batch']['addOperation'](_0x3d5af8),this['editor']['model']['applyOperation'](_0x3d5af8);});}['_addKnownRoot'](_0xc3a70e){const _0x31b172=this['_getAffectedRoot'](_0xc3a70e);_0x31b172&&this['_knownRootNames']['add'](_0x31b172);}['_getAffectedRoot'](_0x21213d){let _0x1a51e3,_0x2e6b08;switch(_0x21213d['type']){case'insert':_0x1a51e3=_0x21213d['position']['root'];break;case'marker':if(_0x2e6b08=_0x21213d['newRange'],!_0x2e6b08)return null;_0x1a51e3=_0x2e6b08['root'];break;case'addRootAttribute':_0x1a51e3=_0x21213d['root'];break;case'addRoot':_0x1a51e3=_0x21213d['affectedSelectable'];break;case'move':_0x1a51e3=_0x21213d['targetPosition']['root'];break;default:return null;}return _0x1a51e3['rootName'];}['_updateServerHistory'](_0x505c12){_0x505c12['forEach'](_0x39200e=>{const _0x12fc2c=_0x39200e['clone']();_0x12fc2c['_authorId']=_0x39200e['_authorId'],_0x12fc2c['_isInit']=!!_0x39200e['_isInit'],_0x12fc2c['createdAt']=_0x39200e['createdAt'],_0x12fc2c['baseVersion']+=this['_offset'],_0x39200e['_isDisconnection']&&this['_disconnectionOperations']['add'](_0x12fc2c),this['serverHistory']['addOperation'](_0x12fc2c);});}['_handleReconnectionError'](_0x25f040){const _0x4613fb=this['editor']['plugins']['get']('Notification'),_0x58b072=this['editor']['locale'];_0x25f040||(_0x25f040=V(_0x58b072,'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.')),_0x4613fb['showWarning'](_0x25f040,{'title':V(_0x58b072,'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'](_0x4a177a)['add'](V(this['editor']['locale'],'PENDING_ACTION_SENDING_DATA')));}['_clearPendingAction'](){this['_pendingAction']&&(this['editor']['plugins']['get'](_0x4a177a)['remove'](this['_pendingAction']),this['_pendingAction']=null);}['_compressOperations'](_0x5d7d54){const _0x59b0c8=_0x5d7d54['map'](_0x381fd1=>_0x381fd1['toJSON']());return this['_compressor']['compress'](_0x59b0c8);}['_decompressOperations'](_0x94cbe5,_0x4258e4){return this['_compressor']['decompress'](_0x94cbe5)['map']((_0x31320d,_0x58adbc)=>{const _0x3a7f89='init'==_0x4258e4[_0x58adbc]['type'];if('InsertOperation'==_0x31320d['__className']){const _0x391a0f=_0x31320d['position']['root'];!this['_document']['getRoot'](_0x391a0f)&&(this['_document']['createRoot']('$root',_0x391a0f)['_isAttached']=!0x1);}const _0x42e965=_0x208794['fromJSON'](_0x31320d,this['_document']);return _0x42e965['wasUndone']=_0x31320d['wasUndone'],_0x42e965['_isInit']=_0x3a7f89,_0x42e965['_authorId']=_0x3a7f89?null:_0x4258e4[_0x58adbc]['userId'],_0x42e965['_isDisconnection']='cs:removeUser'===_0x4258e4[_0x58adbc]['type'],_0x42e965['createdAt']=_0x4258e4[_0x58adbc]['createdAt'],_0x42e965;});}['_refreshUserSelectionMarkers'](){this['_hasSelectionChanged']=!0x0,this['_shouldSendSelectionUpdate']()?this['_sendBufferedOperationsDelayed']():this['_hasSelectionChanged']=!0x1;}['_shouldSendSelectionUpdate'](){const _0x3b8d74=this['editor']['plugins']['get'](i)['channelSessions']['get'](this['_channelId']);return!this['editor']['isReadOnly']&&!!_0x3b8d74&&_0x3b8d74['length']>0x1&&this['_hasSelectionChanged'];}['_shouldSendUpdate'](){return this['_bufferedOperations']['length']>0x0||this['_shouldSendSelectionUpdate']();}}class G extends Error{}function $(_0x2e04f6,_0x3c2715){for(const _0xc8238a of _0x2e04f6)_0xc8238a['baseVersion']=_0x3c2715++;}class K{['_ignoredOperations'];['_operationToId'];constructor(_0xe66ba2){this['_ignoredOperations']=_0xe66ba2,this['_operationToId']=new WeakMap();}['getIdOfTheLastOperation'](_0x2274f2){let _0xbe3704=_0x2274f2['length'];for(;_0xbe3704--;){const _0x4510f3=_0x2274f2[_0xbe3704];if(!this['_ignoredOperations']['has'](_0x4510f3)){if(!this['_operationToId']['has'](_0x4510f3)){const _0x6513a3=_0x102894()['slice'](0x1,0x12);this['_operationToId']['set'](_0x4510f3,_0x6513a3);}return this['_operationToId']['get'](_0x4510f3);}}}['setIdForTheLastOperation'](_0x3f00f0,_0x59eb33){if(!_0x59eb33)return;let _0x148669=_0x3f00f0['length'];for(;_0x148669--;){const _0x1eaf37=_0x3f00f0[_0x148669];this['_ignoredOperations']['has'](_0x1eaf37)||this['_operationToId']['set'](_0x1eaf37,_0x59eb33);}}}class a extends _0x1bf704{static get['requires'](){return[l];}static get['pluginName'](){return'RealTimeCollaborativeEditing';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}class s extends _0x3214d6{static ['CommentsService']=/* #__PURE__ -- @preserve */
26
- ((()=>et)());['_services'];static get['requires'](){return[n,'CommentsRepository',i,_0x501a96];}static get['pluginName'](){return'CloudServicesCommentsAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x4411eb){super(_0x4411eb),this['_services']=new Map();}async['init'](){const _0x1345bb=this['context'],_0x4bb303=_0x1345bb['plugins']['get']('CommentsRepository');if(_0x1345bb['plugins']['get'](n)['addToReconnectionStack'](this),_0x4bb303['adapter']={'addCommentThread':async({channelId:_0x5ddc28,threadId:_0x28e9b6,comments:_0x3312cb,resolvedAt:_0x3da713,resolvedBy:_0x305cc9,context:_0x4dba53,attributes:_0x52b406})=>{const _0x57f824=await this['_getService'](_0x5ddc28)['addCommentThread']({'commentThreadId':_0x28e9b6,'comments':_0x3312cb['map'](_0x429ae4=>function(_0x4259cb,_0x393f48,_0x141505){return{'commentThreadId':_0x141505,'commentId':_0x4259cb['commentId'],'userId':_0x4259cb['authorId'],'content':_0x4259cb['content'],'documentId':_0x393f48,'createdAt':_0x4259cb['createdAt'],'attributes':_0x4259cb['attributes']||{}};}(_0x429ae4,_0x5ddc28,_0x28e9b6)),'resolvedAt':_0x3da713,'resolvedBy':_0x305cc9,'context':_0x4dba53,'attributes':_0x52b406})['catch'](ft);return{'threadId':_0x57f824['commentThreadId'],'comments':_0x57f824['comments']};},'getCommentThread':async({channelId:_0x419852,threadId:_0x343b0f})=>{const _0x5d3c6d=await this['_getService'](_0x419852)['getCommentThread'](_0x343b0f)['catch'](ot)['catch'](ft);return _0x5d3c6d?_0x5d3c6d['deletedAt']?null:(await this['_fetchMissingUsersForThreads']([_0x5d3c6d]),{'threadId':_0x5d3c6d['commentThreadId'],'comments':_0x5d3c6d['comments']['map'](st),'context':_0x5d3c6d['context'],'resolvedAt':_0x5d3c6d['resolvedAt'],'resolvedBy':_0x5d3c6d['resolvedBy'],'attributes':_0x5d3c6d['attributes']||{}}):null;},'updateCommentThread':async({channelId:_0x3317f2,threadId:_0x10f685,context:_0x363694,unlinkedAt:_0x52023e,attributes:_0xbb6325})=>this['_getService'](_0x3317f2)['updateCommentThread']({'commentThreadId':_0x10f685,'context':_0x363694,'attributes':_0xbb6325,'unlinkedAt':_0x52023e})['catch'](ot)['catch'](ft),'resolveCommentThread':async({channelId:_0x2329e5,threadId:_0x5f1a5b})=>{const _0x4fe79a=await this['_getService'](_0x2329e5)['resolveCommentThread'](_0x5f1a5b)['catch'](ot)['catch'](ft);return{'threadId':_0x4fe79a['commentThreadId'],'resolvedAt':_0x4fe79a['resolvedAt'],'resolvedBy':_0x4fe79a['resolvedBy']};},'reopenCommentThread':async({channelId:_0x43651c,threadId:_0x12d8fb})=>this['_getService'](_0x43651c)['reopenCommentThread'](_0x12d8fb)['catch'](ot)['catch'](ft),'removeCommentThread':({channelId:_0x556f58,threadId:_0xa0c803})=>this['_getService'](_0x556f58)['removeCommentThread'](_0xa0c803)['catch'](ot)['catch'](ft),'addComment':({channelId:_0x3d5972,threadId:_0x386e57,commentId:_0x28a7a9,content:_0x21640d,attributes:_0x1d36aa})=>this['_getService'](_0x3d5972)['addComment'](_0x386e57,_0x28a7a9,_0x21640d,_0x1d36aa)['catch'](ft),'updateComment':({channelId:_0x4d31f3,threadId:_0x30a711,commentId:_0x556721,content:_0x1d6f6f,attributes:_0x5be196})=>this['_getService'](_0x4d31f3)['updateComment'](_0x30a711,_0x556721,_0x1d6f6f,_0x5be196)['catch'](ot)['catch'](ft),'removeComment':({channelId:_0x557491,threadId:_0x39ba7f,commentId:_0x2bf84f})=>this['_getService'](_0x557491)['removeComment'](_0x39ba7f,_0x2bf84f)['catch'](ot)['catch'](ft)},_0x1345bb instanceof tt){const _0x21af38=_0x1345bb['config']['get']('collaboration.channelId'),_0x55877a=_0x1345bb['plugins']['get'](i);await this['_setUpService'](_0x21af38);const _0x3125d0=await this['_services']['get'](_0x21af38)['getConnectedSessions']();this['listenTo'](_0x55877a,'sessionAdd:'+_0x21af38,(_0x5046a3,{session:_0x591eb8})=>{_0x591eb8['id']===_0x55877a['mySessionId']&&(_0x5046a3['off'](),this['context']['plugins']['get']('Permissions')['setPermissions'](_0x591eb8['permissions'],_0x21af38));}),_0x55877a['register'](_0x21af38,_0x3125d0);}}async['_setUpService'](_0x462d54){if(this['_services']['has'](_0x462d54))throw new _0x593b20('cloudservicescommentsadapter-connect-already-connected',null,{'channelId':_0x462d54});const _0x2b7902=this['context']['plugins']['get']('CommentsRepository'),_0x198c4c=new s['CommentsService'](_0x462d54);this['_services']['set'](_0x462d54,_0x198c4c),this['listenTo'](_0x198c4c,'commentThreadAdded',(_0x359984,_0x27ad32)=>{const {commentThreadId:_0x54de31,documentId:_0x36d5d1,context:_0x175c3e,attributes:_0xf37402,resolvedAt:_0xd7c38a,resolvedBy:_0x298296,comments:_0x590909}=_0x27ad32;_0x2b7902['getCommentThread'](_0x54de31)||_0x2b7902['addCommentThread']({'threadId':_0x54de31,'channelId':_0x36d5d1,'comments':_0x590909?_0x590909['map'](st):[],'context':_0x175c3e,'attributes':_0xf37402,'resolvedAt':_0xd7c38a,'resolvedBy':_0x298296,'isFromAdapter':!0x0});}),this['listenTo'](_0x198c4c,'commentThreadUpdated',(_0x2f63f9,{commentThreadId:_0x23b35d,documentId:_0x3b9e0f,context:_0x4ec94e,unlinkedAt:_0x152606,attributes:_0x31afbc})=>{_0x2b7902['getCommentThread'](_0x23b35d)&&_0x2b7902['updateCommentThread']({'threadId':_0x23b35d,'channelId':_0x3b9e0f,'context':_0x4ec94e,'unlinkedAt':_0x152606,'attributes':_0x31afbc,'isFromAdapter':!0x0});}),this['listenTo'](_0x198c4c,'commentThreadResolved',(_0x92859e,{commentThreadId:_0x40d4f5,resolvedBy:_0x23c3d9,resolvedAt:_0x2a9fc3})=>{const _0x3b43a9=_0x2b7902['getCommentThread'](_0x40d4f5);_0x3b43a9&&_0x3b43a9['resolve']({'resolvedBy':_0x23c3d9,'resolvedAt':_0x2a9fc3,'isFromAdapter':!0x0});}),this['listenTo'](_0x198c4c,'commentThreadReopened',(_0x4f4d30,{commentThreadId:_0x550896})=>{const _0x40d356=_0x2b7902['getCommentThread'](_0x550896);_0x40d356&&_0x40d356['reopen']({'isFromAdapter':!0x0});}),this['listenTo'](_0x198c4c,'commentThreadRemoved',(_0x2e59b0,{commentThreadId:_0x2f74cc})=>{const _0x261565=_0x2b7902['getCommentThread'](_0x2f74cc);_0x261565&&_0x261565['remove']({'isFromAdapter':!0x0});}),this['listenTo'](_0x198c4c,'commentAdded',(_0x2570d9,_0x45e658)=>{const _0x448eae=_0x45e658['commentThreadId'],_0x15cf8f=_0x2b7902['getCommentThread'](_0x448eae);_0x15cf8f&&_0x15cf8f['addComment']({...st(_0x45e658),'isFromAdapter':!0x0});}),this['listenTo'](_0x198c4c,'commentUpdated',(_0x1090e8,{commentThreadId:_0x53b136,commentId:_0x51faa4,content:_0x45f6e7,attributes:_0x486e12})=>{const _0xfcc382=_0x2b7902['getCommentThread'](_0x53b136);if(_0xfcc382){const _0x5e43ed=_0xfcc382['getComment'](_0x51faa4);_0x5e43ed&&_0x5e43ed['update']({'content':_0x45f6e7,'attributes':_0x486e12,'isFromAdapter':!0x0});}}),this['listenTo'](_0x198c4c,'commentRemoved',(_0x3a7184,{commentThreadId:_0x56994b,commentId:_0x2f0ef5})=>{const _0x17ff0b=_0x2b7902['getCommentThread'](_0x56994b);if(_0x17ff0b){const _0x58587b=_0x17ff0b['getComment'](_0x2f0ef5);_0x58587b&&_0x58587b['remove']({'isFromAdapter':!0x0});}}),await this['_connectService'](_0x462d54);}['destroy'](){if(this['context']instanceof tt){const _0x2292e7=this['context']['config']['get']('collaboration.channelId');this['_terminateService'](_0x2292e7);}}['_terminateService'](_0x4663e2){if(!this['_services']['has'](_0x4663e2))throw new _0x593b20('cloudservicescommentsadapter-disconnect-not-exist',null,{'channelId':_0x4663e2});this['_getService'](_0x4663e2)['disconnect'](),this['_services']['delete'](_0x4663e2);}async['reconnect'](){for(const _0x5ef6d1 of this['_services']['keys']())await this['_connectService'](_0x5ef6d1);if(this['context']instanceof tt){const _0x467a54=this['context']['config']['get']('collaboration.channelId'),_0x5239f1=this['context']['plugins']['get'](i);_0x5239f1['unregister'](_0x467a54);const _0x135db4=await this['_services']['get'](_0x467a54)['getConnectedSessions']();_0x5239f1['register'](_0x467a54,_0x135db4);}}async['_connectService'](_0x4c0e0b){const {connection:_0x3d286e}=this['context']['plugins']['get'](n),_0x4d3cb8=this['context']['plugins']['get']('CommentsRepository'),_0x55928d=this['_services']['get'](_0x4c0e0b),_0x427925=await _0x55928d['connect'](_0x3d286e);await this['_fetchMissingUsersForThreads'](_0x427925);const _0x237b70=new Set(Array['from'](_0x4d3cb8['getCommentThreads']({'channelId':_0x4c0e0b}),_0x4380f8=>_0x4380f8['id']));for(const _0x220b61 of _0x427925)_0x220b61['deletedAt']||_0x237b70['delete'](_0x220b61['commentThreadId']);for(const _0x381100 of _0x237b70)_0x4d3cb8['getCommentThread'](_0x381100)['remove']({'isFromAdapter':!0x0});for(const _0x3cf6d2 of _0x427925){let _0x158616=_0x4d3cb8['getCommentThread'](_0x3cf6d2['commentThreadId']);const {commentThreadId:_0x4cd255,context:_0x3780eb,attributes:_0x58495c,resolvedBy:_0xe1a979,resolvedAt:_0x43af6e,unlinkedAt:_0x3b3a7f,deletedAt:_0x42461d}=_0x3cf6d2;if(_0x42461d)continue;_0x158616||(_0x158616=_0x4d3cb8['addCommentThread']({'channelId':_0x4c0e0b,'threadId':_0x4cd255,'context':_0x3780eb,'attributes':_0x58495c||{},'resolvedBy':_0xe1a979,'resolvedAt':_0x43af6e,'unlinkedAt':_0x3b3a7f,'isFromAdapter':!0x0}));const _0x1d0ee3=new Set(Array['from'](_0x158616['comments'],_0x54a937=>_0x54a937['id']));for(const _0x41349f of _0x3cf6d2['comments'])_0x1d0ee3['delete'](_0x41349f['commentId']);for(const _0x4d69d3 of _0x1d0ee3)_0x158616['getComment'](_0x4d69d3)['remove']({'isFromAdapter':!0x0});for(const _0x3259b0 of _0x3cf6d2['comments']){const _0x1f74e7=_0x158616['getComment'](_0x3259b0['commentId']);_0x1f74e7?_0x1f74e7['content']!==_0x3259b0['content']&&_0x1f74e7['update']({'content':_0x3259b0['content'],'isFromAdapter':!0x0}):_0x158616['addComment'](Object['assign'](st(_0x3259b0),{'isFromAdapter':!0x0}));}}}['_getService'](_0x380e2d){if(!this['_services']['has'](_0x380e2d))throw new _0x593b20('cloudservicescommentsadapter-service-not-exist',null,{'channelId':_0x380e2d});return this['_services']['get'](_0x380e2d);}async['_fetchMissingUsersForThreads'](_0x303bd5){const _0x3deadc=this['context']['plugins']['get'](_0x501a96),{connection:_0x398aac}=this['context']['plugins']['get'](n),_0xf1e08e=new Set();for(const {resolvedBy:_0x2d9187,comments:_0x7292b2}of _0x303bd5){_0x2d9187&&!_0x3deadc['getUser'](_0x2d9187)&&_0xf1e08e['add'](_0x2d9187);for(const {userId:_0x37bec1}of _0x7292b2)_0x3deadc['getUser'](_0x37bec1)||_0xf1e08e['add'](_0x37bec1);}if(0x0===_0xf1e08e['size'])return;const _0x2f8699=await ut['getMany'](_0x398aac,Array['from'](_0xf1e08e));for(const _0x14a09f of _0x2f8699)_0x3deadc['getUser'](_0x14a09f['id'])||_0x3deadc['addUser'](_0x14a09f);}}async function ot(_0x26019b){if('404'!==_0x26019b['code'])throw _0x26019b;}function ft(_0x567290){if((_0x56899b=_0x567290)['message']['startsWith']('cloud-services-internal-error:\x20Comments\x20Service\x20is\x20not\x20connected.')||_0x56899b['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x56899b['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.'))return new Promise(()=>{});var _0x56899b;throw _0x567290;}function st(_0x55c7a5){return{'threadId':_0x55c7a5['commentThreadId'],'commentId':_0x55c7a5['commentId'],'content':_0x55c7a5['content'],'createdAt':_0x55c7a5['createdAt'],'authorId':_0x55c7a5['userId'],'attributes':_0x55c7a5['attributes']||{}};}class m extends _0x1bf704{static ['TrackChangesService']=/* #__PURE__ -- @preserve */
27
- ((()=>it)());['_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(_0xa98cac){super(_0xa98cac);const _0x16f045=this['editor']['config']['get']('collaboration.channelId');this['_bufferedRequests']=new Map(),this['_trackChangesService']=new m['TrackChangesService'](_0x16f045);}['init'](){const _0x2b4e6b=this['editor']['plugins']['get'](n),_0x9c6372=this['editor']['plugins']['get']('TrackChangesEditing');return _0x9c6372['adapter']={'getSuggestion':async _0x3f38b0=>{await this['_waitForServiceReady']();const _0x3e6cf2=await this['_trackChangesService']['get'](_0x3f38b0)['catch'](nt);return await this['_fetchMissingUsersForThreads']([_0x3e6cf2]),_0x3e6cf2;},'addSuggestion':async({id:_0x4e1797,type:_0xf561d9,data:_0xba54eb,originalSuggestionId:_0x39b416,attributes:_0x2e660b})=>{await this['_waitForServiceReady']();const _0x193bc1={'id':_0x4e1797,'type':_0xf561d9,'data':_0xba54eb,'originalSuggestionId':_0x39b416,'attributes':_0x2e660b},_0x4543b2=await this['_trackChangesService']['add'](_0x4e1797,_0xf561d9,_0xba54eb,_0x39b416,_0x2e660b)['catch'](_0x1ffb56=>{if(mt(_0x1ffb56))return new Promise(_0x22d3a5=>{this['_bufferedRequests']['set'](_0x4e1797,{'resolve':_0x22d3a5,'suggestionData':_0x193bc1});});throw _0x1ffb56;});return this['_bufferedRequests']['delete'](_0x4e1797),_0x4543b2;},'updateSuggestion':async(_0x156212,_0x56c5b7)=>{if(await this['_waitForServiceReady'](),'open'!==_0x56c5b7['state'])return this['_trackChangesService']['update'](_0x156212,_0x56c5b7)['catch'](nt);}},this['listenTo'](this['_trackChangesService'],'suggestionUpdated',(_0x37d7a5,_0x246850)=>{_0x9c6372['hasSuggestion'](_0x246850['id'])&&(_0x9c6372['getSuggestion'](_0x246850['id'])['attributes']=_0x246850['attributes']);}),this['_trackChangesService']['connect'](_0x2b4e6b['connection'])['then'](_0x456a4d=>(_0x2b4e6b['addToReconnectionStack'](this),this['_fetchMissingUsersForThreads'](_0x456a4d)['then'](()=>{for(const _0x32339e of _0x456a4d){_0x9c6372['addSuggestionData'](_0x32339e)['_saved']=!0x0;}})));}async['reconnect'](){const _0xaa5574=this['editor']['plugins']['get']('TrackChangesEditing'),{connection:_0x365736}=this['editor']['plugins']['get'](n),_0x683a70=await this['_trackChangesService']['connect'](_0x365736);await this['_fetchMissingUsersForThreads'](_0x683a70);for(const {suggestionData:_0x263494,resolve:_0x28cede}of this['_bufferedRequests']['values']()){let _0x45e734=_0x683a70['find'](_0x589eb9=>_0x589eb9['id']===_0x263494['id']);_0x45e734||(_0x45e734=await this['_trackChangesService']['add'](_0x263494['id'],_0x263494['type'],_0x263494['data'],_0x263494['originalSuggestionId'])),_0x28cede(_0x45e734);}for(const _0x5396d7 of _0x683a70)_0xaa5574['hasSuggestion'](_0x5396d7['id'])||_0xaa5574['addSuggestionData'](_0x5396d7);}async['_waitForServiceReady'](){this['_trackChangesService']['isConnected']||await new Promise(_0x45c45c=>{this['listenTo'](this['_trackChangesService'],'connected',_0x515a46=>{_0x515a46['off'](),_0x45c45c();});});}async['_fetchMissingUsersForThreads'](_0x2c1301){const _0x135119=this['editor']['plugins']['get'](_0x501a96),{connection:_0xef7fa3}=this['editor']['plugins']['get'](n),_0x486258=new Set();for(const {authorId:_0x2e35f4}of _0x2c1301)_0x135119['getUser'](_0x2e35f4)||_0x486258['add'](_0x2e35f4);if(0x0===_0x486258['size'])return;const _0x4a24cb=await ut['getMany'](_0xef7fa3,Array['from'](_0x486258));for(const _0x1dcae1 of _0x4a24cb)_0x135119['getUser'](_0x1dcae1['id'])||_0x135119['addUser'](_0x1dcae1);}}function nt(_0x5356f9){if(mt(_0x5356f9))return new Promise(()=>{});throw _0x5356f9;}function mt(_0x4fd649){return _0x4fd649['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x4fd649['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}class g extends _0x1bf704{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 _0x2846a6=this['editor']['plugins']['get'](n),_0x2f689c=this['editor']['plugins']['get']('CommentsEditing'),_0x49f45c=this['editor']['plugins']['get'](s);return this['editor']['data']['once']('ready',()=>{this['listenTo'](_0x2846a6,'change:state',(_0x1a31b9,_0x21a359,_0x33dad9)=>{_0x2f689c['isThreadsLoadingPaused']='connected'!==_0x33dad9;});}),this['listenTo'](_0x2846a6,'change:state',(_0x48b6cc,_0x695554,_0x24f566)=>{this['editor']['plugins']['get']('CommentsRepository')['switchReadOnly']('connected'!==_0x24f566);}),_0x49f45c['_setUpService'](this['editor']['config']['get']('collaboration.channelId'));}['destroy'](){this['editor']['plugins']['get'](s)['_terminateService'](this['editor']['config']['get']('collaboration.channelId')),super['destroy']();}}class pt extends _0x1bf704{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 _0x1bf704{static ['RevisionHistoryService']=/* #__PURE__ -- @preserve */
28
- ((()=>_0xdca4cc)());['_lastRequestId'];['_revisionTracker'];['_revisionHistoryService'];['_oldOffset'];static get['requires'](){return[n,l,'RevisionHistory',i,_0x501a96];}static get['pluginName'](){return'CloudServicesRevisionHistoryAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x270e88){super(_0x270e88);const _0x478582=this['editor']['config']['get']('collaboration.channelId');this['_lastRequestId']=null,this['_revisionTracker']=this['editor']['plugins']['get']('RevisionTracker'),this['_revisionHistoryService']=new c['RevisionHistoryService'](_0x478582);}async['init'](){const _0x3ea15b=this['editor']['plugins']['get'](l),_0x13d392=_0x3ea15b['serverHistory'],_0x18b64d=this['editor']['plugins']['get'](n);this['_revisionTracker']['setSource']({'history':_0x13d392,'getLatestVersion':()=>this['_getLatestVersion'](),'getCurrentRevisionId':()=>_0x3ea15b['sessionId']});const _0x3e1350=this['editor']['config']['get']('cloudServices.bundleVersion')||ht,_0x817af7=await _0x519c59['isBundleUploaded'](_0x18b64d['connection'],_0x3e1350);this['editor']['plugins']['get']('RevisionHistory')['adapter']={'getRevision':async({revisionId:_0x205c76})=>(await this['_waitForServiceReady'](),await this['_revisionHistoryService']['getRevision'](_0x205c76)),'updateRevisions':async _0x46c6da=>{await this['_waitForServiceReady']();const _0x1ea440=this['_revisionTracker']['currentRevision'];if(_0x817af7&&0x1===_0x46c6da['length']&&_0x46c6da[0x0]['id']===_0x1ea440['id'])return _0x46c6da;for(const _0x172b8f of _0x46c6da)_0x172b8f['id']===_0x1ea440['id']&&(_0x172b8f['isEmptyCurrent']=_0x172b8f['fromVersion']===_0x172b8f['toVersion']);return this['_revisionHistoryService']['updateRevisions'](_0x46c6da,this['_lastRequestId'])['then'](_0x502645=>(this['_lastRequestId']=_0x502645,_0x46c6da))['catch'](_0x4cfc4b=>{if(P(_0x4cfc4b)||'400'===_0x4cfc4b['code']&&void 0x0!==_0x4cfc4b['data']['wrongRequestId']){for(const _0x1f639d of _0x46c6da){!this['_revisionTracker']['repository']['getRevision'](_0x1f639d['id'])||this['_revisionTracker']['_bufferUpdate'](_0x1f639d['id'],_0x1f639d,!0x1);}if(P(_0x4cfc4b))throw _0x4cfc4b;return _0x46c6da;}throw _0x4cfc4b;});}},this['listenTo'](this['_revisionHistoryService'],'revisionsUpdated',(_0x11cb14,{revisionsData:_0x4bee97,requestId:_0x55049c})=>{Math['max'](..._0x4bee97['map'](_0x22242e=>_0x22242e['toVersion']))>this['_getLatestVersionFromServerOperations']()-0x1?this['_getLatestVersion']()['then'](()=>{this['_handleRevisionsUpdate'](_0x4bee97,_0x55049c);}):this['_handleRevisionsUpdate'](_0x4bee97,_0x55049c);});const {revisions:_0x57a2bd,requestId:_0x2dafe8}=await this['_revisionHistoryService']['connect'](_0x18b64d['connection']);_0x18b64d['addToReconnectionStack'](this),this['_lastRequestId']=_0x2dafe8,await this['_fetchMissingUsers'](_0x57a2bd);for(const _0x9c7f52 of _0x57a2bd)this['_revisionTracker']['addRevisionData'](_0x9c7f52);this['listenTo'](_0x3ea15b,'change:_isConnected',(_0x3ec3b8,_0x359744,_0x51a591)=>{_0x51a591&&(this['_oldOffset']=_0x3ea15b['_offset'],_0x3ec3b8['off']());}),this['_revisionTracker']['bind']('isEnabled')['to'](_0x18b64d,'state',_0x3658fa=>_0x3658fa===_0x176d8f['CONNECTED']);}async['reconnect'](){const _0x22a737=this['editor']['plugins']['get'](n),_0xafd203=this['editor']['plugins']['get'](l),_0x5987ec=async()=>{const _0x4f93f9=this['_revisionTracker']['currentRevision'],_0x19742a=_0x4f93f9['id'],_0x2356d1=_0x19742a!==_0xafd203['sessionId'];if(_0x2356d1){const _0x1f6868=_0xafd203['_offset']-this['_oldOffset'],_0x1e820e=this['_getLatestVersionFromServerOperations']();this['_revisionTracker']['_revisionDataBuilder']['reInit']();if(_0x4f93f9['toVersion']+_0x1f6868!==_0x1e820e){const _0x1dc651=_0x4f93f9['fromVersion']+_0x1f6868,_0x5f4e65=this['editor']['plugins']['get'](_0x501a96),_0x4346cf=this['_revisionTracker']['buildRevisionData']({'revision':_0x4f93f9,'from':_0x1dc651,'to':_0x1e820e});_0x4346cf['id']=_0x4f93f9['id'];const _0x2e1b21=_0x4346cf['authorsIds']['map'](_0x481799=>_0x5f4e65['getUser'](_0x481799));_0x4f93f9['_update']({..._0x4346cf,'authors':_0x2e1b21},!0x0),this['_revisionTracker']['_bufferUpdate'](_0x4f93f9['id'],_0x4346cf,!0x0);}this['_revisionTracker']['_startingVersion']=_0x1e820e,(_0x4f93f9['toVersion']===_0x4f93f9['fromVersion']&&!this['_revisionTracker']['_bufferedUpdates']['has'](_0x19742a)&&this['_revisionTracker']['repository']['_revisions']['remove'](_0x19742a),this['_revisionTracker']['_createCurrentRevision'](_0x1e820e));}const {revisions:_0x7a1d35,requestId:_0x479d39}=await this['_revisionHistoryService']['reconnect'](_0x22a737['connection'],this['_lastRequestId']);_0x2356d1&&_0x7a1d35['length']>0x0?_0xafd203['_handleReconnectionError']():(await this['_fetchMissingUsers'](_0x7a1d35),this['_handleRevisionsUpdate'](_0x7a1d35,_0x479d39),this['_revisionTracker']['sendBufferedUpdates']());};return _0xafd203['_isConnected']?_0x5987ec():new Promise((_0x159236,_0x3c7847)=>{_0xafd203['once']('change:_isConnected',()=>{_0x5987ec()['then'](_0x159236)['catch'](_0x3c7847);});});}['destroy'](){super['destroy']();}async['_waitForServiceReady'](){this['_revisionHistoryService']['isConnected']||await new Promise(_0x8e862e=>{this['listenTo'](this['_revisionHistoryService'],'connected',_0x510b66=>{_0x510b66['off'](),_0x8e862e();});});}['_getLatestVersionFromServerOperations'](){const _0x5bb2f3=this['editor']['plugins']['get'](l)['serverHistory']['getOperations']()['reverse']();for(const _0x58e172 of _0x5bb2f3)if('marker'!==_0x58e172['type']||_0x58e172['affectsData'])return _0x58e172['baseVersion']+0x1;}['_getLatestVersion'](){const _0x4cc358=this['editor']['plugins']['get'](l);return new Promise(_0x2ead9e=>{_0x4cc358['_isPendingUpdate']?_0x4cc358['once']('change:_isPendingUpdate',()=>{_0x2ead9e(this['_getLatestVersionFromServerOperations']());}):_0x2ead9e(this['_getLatestVersionFromServerOperations']());});}['_handleRevisionsUpdate'](_0x17460a,_0x4e1e8c){const _0x32841c=this['_revisionTracker']['repository'];this['_lastRequestId']=_0x4e1e8c;for(const _0x16e41f of _0x17460a){const _0x301f14=_0x32841c['getRevision'](_0x16e41f['id']);if(_0x301f14){if((_0x16e41f['fromVersion']||_0x16e41f['toVersion'])&&(_0x16e41f['diffData']=null),_0x301f14===this['_revisionTracker']['currentRevision']){const _0x33b0f6=Math['max'](_0x301f14['toVersion'],_0x16e41f['toVersion']),_0x2dcdc2=Math['max'](_0x301f14['fromVersion'],_0x16e41f['fromVersion']);let _0x57f962;_0x301f14['toVersion']===_0x16e41f['toVersion']&&_0x301f14['fromVersion']===_0x16e41f['fromVersion']?(_0x57f962=!0x0,this['_preventResendingRevisionData'](_0x16e41f)):_0x16e41f['toVersion']===_0x33b0f6&&_0x16e41f['fromVersion']===_0x2dcdc2?_0x57f962=!0x1:(_0x301f14['toVersion']===_0x33b0f6&&_0x301f14['fromVersion']===_0x2dcdc2||this['_fixRevision']({'revision':_0x301f14,'from':_0x2dcdc2,'to':_0x33b0f6}),_0x57f962=!0x0),_0x57f962&&(delete _0x16e41f['fromVersion'],delete _0x16e41f['toVersion'],delete _0x16e41f['diffData'],delete _0x16e41f['createdAt'],delete _0x16e41f['authorsIds']);}this['_revisionTracker']['setRevisionData'](_0x16e41f),this['_preventResendingRevisionData'](_0x16e41f);}else this['_revisionTracker']['addRevisionData'](_0x16e41f);}const _0x44c0db=_0x32841c['getRevisions']();_0x44c0db['reverse']();for(let _0x1c708d=0x0;_0x1c708d<_0x44c0db['length']-0x1;_0x1c708d++){const _0x201a5f=_0x44c0db[_0x1c708d],_0x3253b0=_0x44c0db[_0x1c708d+0x1];if(_0x201a5f['fromVersion']<_0x3253b0['toVersion']){const _0x4030df=_0x3253b0['toVersion'],_0x359f8e=Math['max'](_0x4030df,_0x201a5f['toVersion']);this['_fixRevision']({'revision':_0x201a5f,'from':_0x4030df,'to':_0x359f8e});}}}['_fixRevision']({revision:_0x240f94,from:_0x1be048,to:_0x19b65d}={}){const _0x252b25=this['editor']['plugins']['get'](_0x501a96),_0x4fe127=this['_revisionTracker']['buildRevisionData']({'revision':_0x240f94,'from':_0x1be048,'to':_0x19b65d});_0x4fe127['authors']=_0x4fe127['authorsIds']['map'](_0x4ee02f=>_0x252b25['getUser'](_0x4ee02f)),_0x240f94['_update'](_0x4fe127);}['_preventResendingRevisionData'](_0x477e4b){const _0x4f4e22={};_0x4f4e22['id']=_0x477e4b['id'];for(const _0x57d5f0 of Object['keys'](_0x477e4b))'id'!==_0x57d5f0&&(_0x4f4e22[_0x57d5f0]=void 0x0);this['_revisionTracker']['_bufferUpdate'](_0x4f4e22['id'],_0x4f4e22,!0x0);}async['_fetchMissingUsers'](_0x3b8779){const _0x3425c1=this['editor']['plugins']['get'](_0x501a96),{connection:_0x4f2174}=this['editor']['plugins']['get'](n),_0x1ba18e=new Set();for(const _0x45411e of _0x3b8779){for(const _0x443d73 of _0x45411e['authorsIds'])_0x4c0fce(_0x443d73);_0x45411e['creatorId']&&_0x4c0fce(_0x45411e['creatorId']);}if(0x0===_0x1ba18e['size'])return;const _0x323330=await ut['getMany'](_0x4f2174,Array['from'](_0x1ba18e));for(const _0x50fb4a of _0x323330)_0x3425c1['getUser'](_0x50fb4a['id'])||_0x3425c1['addUser'](_0x50fb4a);function _0x4c0fce(_0x316c3b){_0x3425c1['getUser'](_0x316c3b)||_0x1ba18e['add'](_0x316c3b);}}}function P(_0x41fff8){return _0x41fff8['message']['startsWith']('cloud-services-internal-error:\x20Revision\x20History\x20Service\x20is\x20not\x20connected.')||_0x41fff8['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x41fff8['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}class gt extends _0x1bf704{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 _0x16db83{['_collapseAt'];constructor(_0x599dd3,_0x550bd1=0x6){super(_0x599dd3);const _0x4f2af9=this['bindTemplate'];this['set']('isHidden',!0x0),this['set']('usersCount',0x0),this['_collapseAt']=_0x550bd1,this['bind']('isHidden')['to'](this,'usersCount',_0x470aa0=>_0x470aa0<_0x550bd1),this['setTemplate']({'tag':'div','attributes':{'class':['ck','ck-presence-list__list-item',_0x4f2af9['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':_0x4f2af9['to']('usersCount',_0x1bbb06=>'+'+(_0x1bbb06-this['_collapseAt']+0x2)['toString']())}]}]}]});}}class is extends _0x16db83{['items'];['keystrokes'];constructor(_0x5cb08f){super(_0x5cb08f);const _0xd3408d=this['bindTemplate'];this['items']=this['createCollection'](),this['keystrokes']=new _0x215678(),this['set']({'hasPopup':!0x1,'isExpanded':!0x1}),this['setTemplate']({'tag':'div','attributes':{'aria-haspopup':_0xd3408d['if']('hasPopup'),'aria-expanded':_0xd3408d['to']('isExpanded',_0x148a29=>this['hasPopup']&&String(_0x148a29)),'aria-label':_0xd3408d['to']('hasPopup',_0x338c47=>V(_0x5cb08f,_0x338c47?'Collapsed\x20connected\x20users\x20list\x20(press\x20ENTER\x20to\x20open\x20it)':'Connected\x20users\x20list')),'role':'list','tabindex':_0xd3408d['to']('hasPopup',_0x92e4c9=>!!_0x92e4c9&&0x0),'class':['ck','ck-presence-list__list']},'children':this['items'],'on':{'mouseenter':_0xd3408d['to'](()=>this['fire']('presencelist:show')),'mouseleave':_0xd3408d['to'](_0x199895=>{const _0x58c7ba=_0x199895,_0x222daf=document['querySelector']('.ck-presence-list__dropdown-list'),_0x2ea261=document['querySelector']('.ck-balloon-panel_with-arrow');_0x222daf?.['contains'](_0x58c7ba['relatedTarget'])||_0x2ea261?.['contains'](_0x58c7ba['relatedTarget'])||this['fire']('presencelist:hide');})}}),this['on']('change:hasPopup',(_0x11e6d4,_0x1e3c17,_0x58b41d)=>{this['element']&&(_0x58b41d?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 _0x16db83{['counterView'];['inlineListView'];constructor(_0x4f427b,_0x4d12ea=0x6){super(_0x4f427b);const _0x4197c6=this['bindTemplate'];this['set']('isCollapsed',!0x0),this['counterView']=new b(this['locale'],_0x4d12ea),this['inlineListView']=new is(_0x4f427b),this['inlineListView']['bind']('hasPopup')['to'](this,'isCollapsed'),this['listenTo'](this['inlineListView']['items'],'change',()=>{for(const _0x142aa8 of this['inlineListView']['items'])_0x142aa8['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',_0x4197c6['if']('isCollapsed','ck-presence-list--collapsed')]},'children':[this['inlineListView']]});}}class L extends _0x16db83{['listWrapperView'];constructor(_0x3dae92,_0x5269fa){super(_0x3dae92);const _0x5d0f7d=this['bindTemplate'];this['listWrapperView']=new wt(_0x3dae92,_0x5269fa),this['setTemplate']({'tag':'div','attributes':{'tabindex':-0x1,'role':'application','class':['ck','ck-presence-list__dropdown-list'],'aria-label':V(_0x3dae92,'Connected\x20users\x20list\x20dropdown\x20menu')},'children':[this['listWrapperView']],'on':{'mouseleave':_0x5d0f7d['to'](_0xb4cf24=>{const _0x1e31ec=_0xb4cf24,_0x3176ab=document['querySelector']('.ck-presence-list__list'),_0x51e4dd=document['querySelector']('.ck-balloon-panel_with-arrow');_0x3176ab?.['contains'](_0x1e31ec['relatedTarget'])||_0x51e4dd?.['contains'](_0x1e31ec['relatedTarget'])||this['fire']('presencelist:hide');})}});}}class wt extends _0x61da62{constructor(_0x3faf5a,_0x4163e3){super(_0x3faf5a);const _0x3623a2=this['bindTemplate'];this['set']('_isScrollable',!0x1),this['setTemplate']({'tag':_0x4163e3?'div':'ul','attributes':{'class':['ck','ck-reset','ck-list','ck-presence-list__dropdown-list-wrapper',_0x3623a2['if']('_isScrollable','ck-presence-list__dropdown-list-wrapper_scrollable')],'role':_0x3623a2['to']('role'),'aria-label':_0x3623a2['to']('ariaLabel'),'aria-labelledby':_0x3623a2['to']('ariaLabelledBy')},'children':this['items']}),this['listenTo'](_0xfff1fd['window'],'resize',()=>this['checkIfScrollable']()),this['items']['on']('change',()=>this['checkIfScrollable']());}['render'](){super['render'](),this['checkIfScrollable']();}['checkIfScrollable'](){const _0x3a6f21=this['element'];_0x3a6f21&&(this['_isScrollable']=Math['max'](_0x3a6f21['scrollHeight'],_0x3a6f21['clientHeight'])>0.8*window['innerHeight']);}}class j extends rt{['userView'];constructor(_0x38ae6a,_0x48e6c7,_0x55cf52){super(_0x38ae6a);const _0x5e9d68=this['bindTemplate'];this['userView']=new ct(_0x38ae6a,_0x48e6c7);const _0x31e2a2={'tag':'li','attributes':{'class':['ck','ck-presence-list__dropdown-list-item'],'tabindex':-0x1,'role':'presentation','aria-label':_0x48e6c7['name']},'children':[this['userView'],{'tag':'span','attributes':{'class':['ck','ck-user__full-name']},'children':[{'text':_0x48e6c7['name']}]},{'tag':'span','attributes':{'class':['ck','ck-presence-list__marker',_0x48e6c7['color']['getBackgroundColorClass']()],'aria-hidden':'true'}}]};_0x55cf52&&(_0x31e2a2['tag']='button',_0x31e2a2['on']={'click':_0x5e9d68['to'](()=>this['fire']('execute'))}),this['setTemplate'](_0x31e2a2);}['focus'](){this['element']['focus']();}}class A extends _0x16db83{['userView'];['markerView'];constructor(_0xfc8ba0,_0x39cb42,_0x320b1d){super(_0xfc8ba0);const _0x1a3fea=this['bindTemplate'];this['set']('isFocusable',!0x1),this['set']('hasTooltip',!0x0),this['set']('tooltipPosition',''),this['userView']=new ct(_0xfc8ba0,_0x39cb42),this['markerView']=new lt(_0xfc8ba0,_0x39cb42);const _0x67e9b2=new at(_0xfc8ba0);_0x67e9b2['template']['tag']='span',_0x67e9b2['text']=_0x39cb42['name'];const _0x46cd84={'tag':'div','attributes':{'class':['ck','ck-presence-list__list-item'],'role':'listitem','tabindex':_0x1a3fea['to']('isFocusable',_0x43f426=>!!_0x43f426&&0x0),'aria-labelledby':_0x67e9b2['id'],'data-cke-tooltip-text':this['userView']['name'],'data-cke-tooltip-position':_0x1a3fea['to']('tooltipPosition'),'data-cke-tooltip-disabled':_0x1a3fea['to']('hasTooltip',_0x422416=>!_0x422416),'data-cke-tooltip-class':'ck-presence-list__list-item__tooltip'},'children':[this['userView'],this['markerView'],_0x67e9b2]};_0x320b1d&&(_0x46cd84['tag']='button',_0x46cd84['on']={'click':_0x1a3fea['to'](()=>this['fire']('execute'))}),this['setTemplate'](_0x46cd84);}}class lt extends _0x16db83{constructor(_0x2f045a,_0x25b707){super(_0x2f045a),this['setTemplate']({'tag':'span','attributes':{'class':['ck','ck-presence-list__marker',_0x25b707['color']['getBackgroundColorClass']()],'aria-hidden':'true'}});}}const x={'collapseAt':0x6,'displayMe':!0x0};class r extends _0x3214d6{['currentDisplayedUsers'];['balloonPanelView'];['view'];['presenceDropdownView'];['_bodyCollection']=null;static get['pluginName'](){return'PresenceListUI';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x39215e){super(_0x39215e),this['context']['config']['define']('presenceList',x);const _0x1aa6a1=_0x39215e['config']['get']('presenceList.collapseAt');if('number'!=typeof _0x1aa6a1)throw new _0x593b20('presencelist-collapseat-invalid-format',this);if(_0x1aa6a1<0x1)throw new _0x593b20('presencelist-collapseat-invalid-format',this);this['_allConnectedUsers']=this['context']['plugins']['get'](i)['allConnectedUsers'],this['set']('usersCount',0x0),this['currentDisplayedUsers']=new _0x1216b9(),this['balloonPanelView']=new _0x3afab7(),this['balloonPanelView']['class']='ck\x20ck-presence-list__balloon',this['view']=this['_createView'](),this['presenceDropdownView']=void 0x0;}static get['requires'](){return[i];}['init'](){for(const _0x3cfa57 of this['_allConnectedUsers'])this['_handleUserAdd'](_0x3cfa57);this['listenTo'](this['_allConnectedUsers'],'add',(_0x41c440,_0x470e1d)=>{this['_handleUserAdd'](_0x470e1d);}),this['listenTo'](this['_allConnectedUsers'],'remove',(_0xfcad97,_0x3d2926)=>{this['_handleUserRemove'](_0x3d2926);});}['_createView'](){const _0x1a1e15=this['context'],_0x3834a2=new v(this['context']['locale'],this['context']['config']['get']('presenceList.collapseAt')),_0xecf69a=this['balloonPanelView'];if(!_0xff7fb5(_0x1a1e15['config']['get']('presenceList.container')))throw new _0x593b20('presencelist-missing-container',this);return _0x3834a2['counterView']['bind']('usersCount')['to'](this),_0x3834a2['bind']('isCollapsed')['to'](this,'usersCount',_0x64677c=>{const {collapseAt:_0xad7eb3}=_0x1a1e15['config']['get']('presenceList'),_0x3651e0=_0x64677c>=_0xad7eb3;if(_0x3651e0&&!_0x3834a2['inlineListView']['items']['find'](_0x5d498a=>_0x5d498a instanceof b)){const _0x1ef51b=this['context']['config']['get']('presenceList.collapseAt')-0x1;this['currentDisplayedUsers']['length']==_0x1ef51b&&this['currentDisplayedUsers']['length']>0x1&&this['currentDisplayedUsers']['remove'](this['currentDisplayedUsers']['length']-0x1),_0x3834a2['inlineListView']['items']['add'](_0x3834a2['counterView']);}return _0x3651e0||this['hideDropdown'](),_0x3651e0;}),_0x3834a2['inlineListView']['items']['bindTo'](this['currentDisplayedUsers'])['using'](_0x190400=>{const _0x104b77=_0x1a1e15['config']['get']('presenceList'),_0xadacba=new A(_0x1a1e15['locale'],_0x190400,!!_0x104b77['onClick']);return _0xadacba['bind']('hasTooltip')['to'](_0x3834a2,'isCollapsed',_0x44b8ec=>!_0x44b8ec),_0xadacba['bind']('isFocusable')['to'](_0x3834a2,'isCollapsed',_0x1450a3=>!_0x1450a3),_0x104b77['onClick']&&this['listenTo'](_0xadacba,'execute',()=>{this['view']['isCollapsed']||_0x104b77['onClick'](_0x190400,_0xadacba['element']);}),_0xadacba;}),this['listenTo'](_0x3834a2['inlineListView'],'presencelist:show',()=>{this['view']['isCollapsed']&&this['showDropdown']();}),this['listenTo'](_0x3834a2['inlineListView'],'presencelist:hide',()=>{this['presenceDropdownView']&&this['hideDropdown']();}),_0x3834a2['inlineListView']['keystrokes']['set']('Enter',(_0x6eb1d,_0x26483d)=>{this['view']['isCollapsed']&&(this['showDropdown'](),_0x26483d());}),_0x3834a2['render'](),_0xecf69a['render'](),_0x13d43c({'emitter':_0x3834a2,'activator':()=>_0xecf69a['isVisible'],'contextElements':[_0xecf69a['element'],_0x3834a2['inlineListView']['element']],'callback':()=>this['hideDropdown']()}),_0x1a1e15['config']['get']('presenceList.container')['appendChild'](_0x3834a2['element']),this['_bodyCollection']=new _0x168d9c(this['context']['locale']),this['_bodyCollection']['attachToDom'](),this['_bodyCollection']['add'](this['balloonPanelView']),_0x3834a2;}['_handleUserAdd'](_0x3679b0){if(!this['context']['config']['get']('presenceList.displayMe')&&_0x3679b0['isMe'])return;const _0x12297e=this['context']['config']['get']('presenceList.collapseAt')-0x1;for(this['usersCount']++;this['currentDisplayedUsers']['length']>=_0x12297e-(this['view']['isCollapsed']?0x1:0x0)&&this['currentDisplayedUsers']['length']>0x1;)this['currentDisplayedUsers']['remove'](0x1);const _0x54e614=_0x3679b0['isMe']?0x0:this['currentDisplayedUsers']['length'];this['currentDisplayedUsers']['add'](_0x3679b0,_0x54e614);}['_handleUserRemove'](_0x516c95){this['usersCount']--;const {collapseAt:_0x2c4b10}=this['context']['config']['get']('presenceList'),_0x118222=this['usersCount']>=_0x2c4b10;if(this['currentDisplayedUsers']['get'](_0x516c95['id']))this['currentDisplayedUsers']['remove'](_0x516c95['id']);else{if(_0x118222&&this['currentDisplayedUsers']['length']+0x1===_0x2c4b10-0x1)return;}if(this['currentDisplayedUsers']['length']+(_0x118222?0x1:0x0)<this['usersCount']){for(const _0x5d9c68 of Array['from'](this['_allConnectedUsers'])['reverse']())if(!this['currentDisplayedUsers']['get'](_0x5d9c68['id'])&&(this['currentDisplayedUsers']['add'](_0x5d9c68,Math['min'](this['currentDisplayedUsers']['length']-(_0x118222?0x1:0x0),0x1)),this['currentDisplayedUsers']['length']+(_0x118222?0x1:0x0)===_0x2c4b10-0x1))return;}}['showDropdown'](){if(this['presenceDropdownView'])return;const _0x494ce4=this['context']['config']['get']('presenceList');this['presenceDropdownView']=new L(this['context']['locale'],!!_0x494ce4['onClick']),this['view']['inlineListView']['isExpanded']=!0x0,this['listenTo'](this['presenceDropdownView'],'presencelist:hide',()=>{this['presenceDropdownView']&&this['hideDropdown']();});const {listWrapperView:_0x1a27c7}=this['presenceDropdownView'];_0x1a27c7['items']['bindTo'](this['_allConnectedUsers'])['using'](_0x456ce2=>{if(!_0x494ce4['displayMe']&&_0x456ce2['isMe'])return null;const _0x470b64=new j(this['context']['locale'],_0x456ce2,!!_0x494ce4['onClick']);return _0x494ce4['onClick']&&this['listenTo'](_0x470b64,'execute',()=>{_0x494ce4['onClick'](_0x456ce2,_0x470b64['element']);}),_0x470b64;}),this['balloonPanelView']['content']['add'](this['presenceDropdownView']),this['balloonPanelView']['pin']({'target':this['view']['inlineListView']['element']}),_0x1a27c7['focus'](),_0x1a27c7['checkIfScrollable']();const _0x3a4a61=(_0x2e0c11,_0x477969)=>{this['hideDropdown'](),this['view']['inlineListView']['focus'](),_0x477969();};_0x1a27c7['keystrokes']['set']('Esc',_0x3a4a61),_0x1a27c7['keystrokes']['set']('Shift+Tab',_0x3a4a61),_0x1a27c7['keystrokes']['set']('Tab',(_0x2ec611,_0x1af031)=>{!function(_0x296f13){const _0x225fc2=['a','button','input','select','textarea','[tabindex]','[contenteditable]']['map'](_0x7e3bdd=>_0x7e3bdd+':not([disabled]):not([tabindex=\x22-1\x22])')['join'](','),_0x5da8da=[...document['body']['querySelectorAll'](_0x225fc2)]['filter'](_0x35a3db=>_0x35a3db===document['activeElement']||_0x35a3db['offsetWidth']+_0x35a3db['offsetHeight']>0x0)['sort']((_0xb9df72,_0x250d4a)=>(_0xb9df72['tabIndex']||0x0)-(_0x250d4a['tabIndex']||0x0)),_0x19dd3e=_0x5da8da['indexOf'](_0x296f13),_0x4f95f6=_0x5da8da[(_0x19dd3e+0x1)%_0x5da8da['length']];_0x4f95f6&&_0x4f95f6['focus']();}(this['view']['element']),this['hideDropdown'](),_0x1af031();}),_0x1a27c7['focusTracker']['add'](this['view']['element']),_0x1a27c7['focusTracker']['on']('change:isFocused',(_0x1c39d7,_0x5d2b24,_0x21b941)=>{_0x21b941||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 vt extends _0x3214d6{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,vt as PresenceList,r as PresenceListUI,l as RealTimeCollaborationClient,g as RealTimeCollaborativeComments,a as RealTimeCollaborativeEditing,gt as RealTimeCollaborativeRevisionHistory,pt as RealTimeCollaborativeTrackChanges,i as Sessions,n as WebSocketGateway};
23
+ import{ContextPlugin as _0x349f1b,Plugin as _0x30d08e,PendingActions as _0x3384fb,Context as _0x1c1d08}from'@ckeditor/ckeditor5-core/dist/index.js';import{DomEmitterMixin as _0x410647,CKEditorError as _0x3b6d0e,Collection as _0x1a1ea0,global as _0x32a304,version as nt,uid as _0x4dffa8,KeystrokeHandler as _0x33e4ad}from'@ckeditor/ckeditor5-utils/dist/index.js';import{Notification as _0x1b2652,View as _0x5f1438,ListView as _0x4e7453,ListItemView as rt,LabelView as ot,BalloonPanelView as _0x1249c9,clickOutsideHandler as _0x43bdc4,BodyCollection as _0x1aaf86}from'@ckeditor/ckeditor5-ui/dist/index.js';import{ModelLiveRange as _0x5dadd8,History as _0x2342e3,NoOperation as _0x5ec678,InsertOperation as _0x358535,MarkerOperation as _0x2358aa,RootAttributeOperation as _0x12d83a,transformOperationSets as _0xa78923,OperationFactory as _0x56aaae}from'@ckeditor/ckeditor5-engine/dist/index.js';import{WebSocketGateway as ht,WEB_SOCKET_GATEWAY_STATES as te,CollaborativeEditingService as _0x107e8d,User as lt,CommentsService as _0x36cb8b,TrackChangesService as et,RevisionHistoryService as it,EditorService as tt}from'@ckeditor/ckeditor-cloud-services-collaboration/dist/index.js';import{Users as _0x4b2f7d,UserView as ct}from'ckeditor5-collaboration/dist/index.js';import{Compressor as _0x356da0}from'@ckeditor/ckeditor5-operations-compressor/dist/index.js';import{isElement as _0x45183b}from'es-toolkit/compat';class n extends _0x349f1b{static ['WebSocketGateway']=/* #__PURE__ -- @preserve */
24
+ ((()=>ht)());static ['initialReconnectionInterval']=0x3e8;['connection'];['_reconnectionStack'];['_shouldPluginsReconnect'];['_domEmitter'];static get['requires'](){return['CloudServices',_0x1b2652];}static get['pluginName'](){return'WebSocketGateway';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x444117){super(_0x444117),this['set']('state',te['CONNECTED']),this['set']('_isBrowserOffline',!0x1),this['_reconnectionStack']=new Set(),this['_shouldPluginsReconnect']=!0x1,this['_domEmitter']=new(_0x410647())();}['init'](){const _0x4d9d8c=this['context'],_0x4f0169=_0x4d9d8c['plugins']['get']('CloudServices'),_0x3ff798=_0x4d9d8c['plugins']['get'](_0x1b2652);if(!_0x4f0169['token'])throw new _0x3b6d0e('websocketgateway-missing-token',this);if(!_0x4f0169['webSocketUrl'])throw new _0x3b6d0e('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'](_0x4f0169['token'],_0x4f0169['webSocketUrl'],{'timeout':0x3e8*this['context']['config']['get']('cloudServices.connectionTimeout'),'requestTimeout':0x3e8*this['context']['config']['get']('cloudServices.requestTimeout')})['then'](_0x49b8a5=>{if(this['connection']=_0x49b8a5,this['bind']('state')['to'](_0x49b8a5,'state',this,'_isBrowserOffline',(_0x450538,_0x49fb93)=>('connected'!==_0x450538&&(this['_shouldPluginsReconnect']=!0x0),_0x49fb93||_0x450538!==te['CONNECTED']?te['DISCONNECTED']:this['state']==te['DISCONNECTED']&&this['_shouldPluginsReconnect']?(this['_shouldPluginsReconnect']=!0x1,this['_reconnect'](),te['CONNECTING']):te['CONNECTED'])),this['connection']['on']('error',(_0x59e8f0,_0x432e3f)=>{if('limitExceeded'!==_0x432e3f['code'])throw console['error'](_0x432e3f),new _0x3b6d0e('cloudservices-init',null,{'originalError':_0x432e3f});_0x3ff798['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'});}),!_0x49b8a5['me'])return new Promise(_0x3a63ea=>_0x49b8a5['on']('change:me',_0x3a63ea));})['catch'](_0x24b836=>{throw console['error'](_0x24b836),new _0x3b6d0e('cloudservices-init',null,{'originalError':_0x24b836});});}['addToReconnectionStack'](_0x32033d){if('function'!=typeof _0x32033d['reconnect'])throw new _0x3b6d0e('websocketgateway-invalid-plugin-interface',this);if(this['isInReconnectionStack'](_0x32033d))throw new _0x3b6d0e('websocketgateway-plugin-already-registered',this,{'name':_0x32033d['constructor']['pluginName']});this['_reconnectionStack']['add'](_0x32033d);}['removeFromReconnectionStack'](_0x567486){this['_reconnectionStack']['delete'](_0x567486);}['isInReconnectionStack'](_0x6e3277){return this['_reconnectionStack']['has'](_0x6e3277);}['_reconnect'](){return this['connection']['reconnect']()['then'](()=>Promise['all'](Array['from'](this['_reconnectionStack'],_0x472cd9=>_0x472cd9['reconnect']())))['then'](()=>this['state']=te['CONNECTED'])['catch'](_0x316b21=>{throw console['error'](_0x316b21),new _0x3b6d0e('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 _0x349f1b{['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,_0x4b2f7d];}constructor(_0x67f310){super(_0x67f310),this['channelSessions']=new Map(),this['channelConnectedUsers']=new Map(),this['allConnectedUsers']=new _0x1a1ea0(),this['_registeredSessions']=new Map(),this['_uniqueUsersCount']=0x0,this['_users']=this['context']['plugins']['get'](_0x4b2f7d);}['init'](){const _0x784dd1=this['context']['plugins']['get'](n);this['listenTo'](_0x784dd1,'change:state',(_0x2e3d5d,_0x3d3d80,_0x4a59c3)=>{if('connected'!==_0x4a59c3)this['channelSessions']['forEach'](_0xb6d129=>_0xb6d129['clear']()),this['channelConnectedUsers']['forEach'](_0x4caf69=>_0x4caf69['clear']()),this['allConnectedUsers']['clear']();else{for(const [_0x2822ca,_0x2c871e]of this['_registeredSessions'])for(const _0x19b2cc of _0x2c871e)this['_handleSessionAdd'](_0x2822ca,_0x19b2cc);}}),this['_createUser'](_0x784dd1['connection']['me'],!0x0);}['register'](_0x233cde,_0x2a2787){if(this['_registeredSessions']['has'](_0x233cde))throw new _0x3b6d0e('sessions-register-already-registered',null,{'channelId':_0x233cde});this['_registeredSessions']['set'](_0x233cde,_0x2a2787),this['channelSessions']['set'](_0x233cde,new _0x1a1ea0()),this['channelConnectedUsers']['set'](_0x233cde,new _0x1a1ea0()),this['listenTo'](_0x2a2787,'add',(_0x297300,_0x3d6582)=>this['_handleSessionAdd'](_0x233cde,_0x3d6582)),this['listenTo'](_0x2a2787,'remove',(_0x403403,_0x3cc1d7)=>this['_handleSessionRemove'](_0x233cde,_0x3cc1d7));for(const _0x1916da of _0x2a2787)this['_handleSessionAdd'](_0x233cde,_0x1916da);}['unregister'](_0x37d47a){if(!this['_registeredSessions']['has'](_0x37d47a))throw new _0x3b6d0e('sessions-unregister-not-exist',null,{'channelId':_0x37d47a});const _0x3d34c3=this['_registeredSessions']['get'](_0x37d47a);this['stopListening'](_0x3d34c3);for(const _0x4df438 of _0x3d34c3)'connected'===this['context']['plugins']['get'](n)['state']&&this['_handleSessionRemove'](_0x37d47a,_0x4df438);this['_registeredSessions']['delete'](_0x37d47a),this['channelSessions']['delete'](_0x37d47a),this['channelConnectedUsers']['delete'](_0x37d47a);}get['mySessionId'](){return this['context']['plugins']['get'](n)['connection']['sessionId'];}['getUserBySessionId'](_0x1aa280){for(const _0x324cae of this['channelSessions']['values']())for(const _0x2ecacc of _0x324cae)if(_0x2ecacc['id']===_0x1aa280)return _0x2ecacc['user'];}['getUserSessions'](_0x5cd00d,_0xf757e3){const _0x12bc7a=_0xf757e3?[this['channelSessions']['get'](_0xf757e3)]:this['channelSessions']['values'](),_0x770a76=new Set();for(const _0x3ae0c4 of _0x12bc7a)for(const _0x5dc351 of _0x3ae0c4)_0x5dc351['user']['id']===_0x5cd00d['id']&&_0x770a76['add'](_0x5dc351['id']);return _0x770a76;}['getUserRole'](_0x408643){for(const _0x265473 of this['channelSessions']['values']())for(const _0x353fbe of _0x265473)if(_0x353fbe['user']===_0x408643)return _0x353fbe['role'];}['_handleSessionAdd'](_0x186085,_0x2384d5){if('connected'!==this['context']['plugins']['get'](n)['state'])return;const _0x3e567b=_0x2384d5['user'],_0x17de5d=this['_users']['getUser'](_0x3e567b['id'])||this['_createUser'](_0x3e567b),_0x57eb8d=Object['assign']({},_0x2384d5,{'user':_0x17de5d});if(this['channelSessions']['get'](_0x186085)['add'](_0x57eb8d),!_0x3e567b['hiddenInPresenceList']){const _0x3d82e7=this['channelConnectedUsers']['get'](_0x186085);_0x3d82e7['has'](_0x17de5d['id'])||_0x3d82e7['add'](_0x17de5d),this['allConnectedUsers']['has'](_0x17de5d['id'])||_0x3e567b['hiddenInPresenceList']||this['allConnectedUsers']['add'](_0x17de5d,_0x17de5d['isMe']?0x0:void 0x0);}this['fire']('sessionAdd:'+_0x186085,{'channelId':_0x186085,'session':_0x57eb8d});}['_handleSessionRemove'](_0x44bdb4,_0x5a0517){if('connected'!==this['context']['plugins']['get'](n)['state'])return;const _0x4fddf6=this['channelConnectedUsers']['get'](_0x44bdb4),_0x2531a9=_0x5a0517['user'];_0x2531a9['id']&&(this['channelSessions']['get'](_0x44bdb4)['remove'](_0x5a0517['id']),_0x4fddf6['has'](_0x2531a9['id'])&&!this['getUserSessions'](_0x2531a9,_0x44bdb4)['size']&&_0x4fddf6['remove'](_0x2531a9['id']),this['allConnectedUsers']['get'](_0x2531a9['id'])&&!this['getUserSessions'](_0x2531a9)['size']&&this['allConnectedUsers']['remove'](_0x2531a9['id']));}['_createUser'](_0x2c6e62,_0x5c9b5d){const _0x3e10b3=this['_users']['addUser'](_0x2c6e62);return _0x5c9b5d&&this['_users']['defineMe'](_0x2c6e62['id']),_0x3e10b3['orderNumber']=this['_uniqueUsersCount']++,_0x3e10b3;}}class H extends _0x30d08e{['_domEmitter']=new(_0x410647())();static get['requires'](){return[i];}static get['pluginName'](){return'UserMarkers';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['init'](){const _0x35b364=this['editor'],_0x43780f=_0x35b364['plugins']['get'](i);_0x35b364['conversion']['for']('editingDowncast')['markerToElement']({'model':'user:position','view':(_0x422ed6,{writer:_0x3c7716})=>function(_0x56e7b3,_0x2340c3,_0x2b8945,_0x1332d2){const _0x220792=_0x56e7b3['markerName']['split'](':')[0x2],_0x4d02f9=_0x2b8945['getUserBySessionId'](_0x220792);if(!_0x4d02f9||_0x220792===_0x2b8945['mySessionId'])return;if(!_0x1332d2['model']['schema']['checkChild'](_0x56e7b3['markerRange']['start'],'$text'))return;const _0x440c50={'class':'ck-user__marker\x20'+_0x4d02f9['color']['getMarkerClass'](),'data-name':_0x4d02f9['name'],'data-session-id':_0x220792},_0x2fcc2d=_0x1332d2['model']['markers']['get'](_0x56e7b3['markerName']),_0x3e6a50=_0x2fcc2d['getStart'](),_0x17f33e=_0x3e6a50['nodeAfter'],_0x292206=_0x1332d2['model']['schema'];if(_0x17f33e&&_0x292206['isObject'](_0x17f33e)&&_0x292206['isInline'](_0x17f33e)&&!_0x1332d2['model']['markers']['get']('user:range:'+_0x220792)['getRange']()['isCollapsed'])return;const _0x3ad210=_0x3e6a50['parent'];return _0x1332d2['model']['schema']['isLimit'](_0x3ad210)&&!_0x1332d2['model']['hasContent'](_0x3ad210)&&(_0x440c50['contenteditable']=!0x1),function(_0x36ba68,_0x1b39f0,_0x518965){const _0x1f7b50=_0x36ba68['createUIElement']('span',_0x1b39f0);return _0x36ba68['setCustomProperty']('userPositionMarker',!0x0,_0x1f7b50),_0x1f7b50['render']=function(_0x182325){const _0x109d36=this['toDomElement'](_0x182325),_0x279141=document['createElement']('span');return _0x279141['classList']['add']('ck-user__marker-tooltip'),_0x279141['setAttribute']('contenteditable','false'),_0x279141['setAttribute']('spellcheck','false'),_0x279141['textContent']=_0x518965['name'],_0x109d36['innerHTML']='⁠<span\x20class=\x22ck-user__marker-line\x22\x20contenteditable=\x22false\x22><span\x20class=\x22ck-user__marker-dot\x22></span></span>'+_0x279141['outerHTML']+'⁠',_0x109d36['addEventListener']('mouseenter',()=>{_0x109d36['classList']['add']('ck-user__marker_hovered');}),_0x109d36['addEventListener']('mouseleave',()=>{_0x109d36['classList']['remove']('ck-user__marker_hovered');}),_0x109d36;},_0x1f7b50['isSimilar']=function(_0x46531f){return!(!this['getCustomProperty']('userPositionMarker')||!_0x46531f['getCustomProperty']('userPositionMarker')||this['getAttribute']('data-session-id')!=_0x46531f['getAttribute']('data-session-id'));},_0x1f7b50;}(_0x2340c3,_0x440c50,_0x4d02f9);}(_0x422ed6,_0x3c7716,_0x43780f,_0x35b364)}),_0x35b364['conversion']['for']('editingDowncast')['markerToHighlight']({'model':'user:range','view':_0x570410=>function(_0x3dc3cb,_0x2dd4d8){const _0x22ab9b=_0x3dc3cb['markerName']['split'](':')[0x2];if(_0x22ab9b===_0x2dd4d8['mySessionId'])return null;const _0x1e37a=_0x2dd4d8['getUserBySessionId'](_0x22ab9b);if(!_0x1e37a)return{'id':_0x22ab9b,'classes':[]};return{'id':_0x22ab9b,'classes':['ck-user__selection',_0x1e37a['color']['getSelectionClass']()],'attributes':{'data-session-id':_0x22ab9b},'priority':0x7d0+_0x1e37a['orderNumber']};}(_0x570410,_0x43780f)}),function(_0x4a00a4){const _0x3a7351=_0x4a00a4['model'],_0x17587b=new Map(),_0x16bc24=_0x4a00a4['plugins']['get'](i);_0x3a7351['markers']['on']('update:user:range',(_0x145774,_0x434197,_0x291541,_0x58777f)=>{if(!_0x58777f&&_0x17587b['get'](_0x434197['name']))return _0x17587b['get'](_0x434197['name'])['detach'](),void _0x17587b['delete'](_0x434197['name']);const _0x438bf7=_0x434197['name']['split'](':')[0x2];if(_0x438bf7===_0x16bc24['mySessionId'])return;const _0x392164='user:position:'+_0x438bf7;_0x3a7351['markers']['has'](_0x392164)&&_0x4a00a4['editing']['reconvertMarker'](_0x392164),_0x434197['on']('change:range',(_0x1ba3b9,_0x24ab08,_0x14f275)=>{if('$graveyard'!=_0x24ab08['root']['rootName']&&'$graveyard'==_0x434197['getRange']()['root']['rootName']&&!_0x17587b['has'](_0x434197['name'])){const _0x2db4d5=_0x3a7351['schema']['getNearestSelectionRange'](_0x14f275['deletionPosition']);if(_0x2db4d5){const _0x959a02=_0x5dadd8['fromRange'](_0x2db4d5);_0x17587b['set'](_0x434197['name'],_0x959a02),_0x959a02['on']('change:range',(_0x47c364,_0x22bbe1,_0x2e2ada)=>{if('$graveyard'==_0x959a02['root']['rootName']){const _0x5ac994=_0x3a7351['schema']['getNearestSelectionRange'](_0x2e2ada['deletionPosition']);_0x5ac994?(_0x959a02['start']=_0x5ac994['start'],_0x959a02['end']=_0x5ac994['end']):(_0x17587b['delete'](_0x434197['name']),_0x959a02['detach']());}});}}});}),_0x3a7351['document']['on']('change',()=>{_0x17587b['size']>0x0&&_0x3a7351['enqueueChange']({'isUndoable':!0x1},_0x592b0b=>{for(const [_0x1876ed,_0x11a309]of _0x17587b)'$graveyard'==_0x3a7351['markers']['get'](_0x1876ed)['getRange']()['root']['rootName']&&(Z(_0x1876ed['split'](':')[0x2],_0x11a309['toRange'](),_0x3a7351,_0x592b0b),_0x11a309['detach']());_0x17587b['clear']();});});}(_0x35b364),this['_domEmitter']['listenTo'](_0x32a304['document'],'keydown',(_0x374778,{key:_0x447612})=>{'Escape'===_0x447612&&function(_0x1abcd3){_0x1abcd3['editing']['view']['change'](_0x54ea9f=>{for(const _0x3d29f0 of _0x1abcd3['model']['markers']){if(!_0x3d29f0['name']['startsWith']('user:position'))continue;const _0x4e75f4=_0x1abcd3['editing']['mapper']['markerNameToElements'](_0x3d29f0['name']);if(_0x4e75f4){for(const _0x295157 of _0x4e75f4)_0x54ea9f['removeClass']('ck-user__marker_hovered',_0x295157);}}});}(_0x35b364);},{'useCapture':!0x0});}['afterInit'](){const _0x489a58=this['editor'],_0x329abc=_0x489a58['commands']['get']('undo');_0x329abc&&_0x489a58['model']['on']('applyOperation',(_0x2e18aa,_0x34ec98)=>{const _0x44d6d8=_0x34ec98[0x0];if(!_0x44d6d8['isDocumentOperation'])return;if('marker'!=_0x44d6d8['type']||!_0x44d6d8['name']['startsWith']('user:'))return;const _0x27956a=_0x44d6d8['batch'];_0x329abc['_createdBatches']['has'](_0x27956a)&&(_0x44d6d8['newRange']=_0x44d6d8['oldRange']?_0x489a58['model']['createRange'](_0x44d6d8['oldRange']['start'],_0x44d6d8['oldRange']['end']):null);},{'priority':'highest'});}['destroy'](){return this['_domEmitter']['stopListening'](),super['destroy']();}['createUserMarkerOperations'](){const _0xc0746=this['editor'],_0x4989a5=_0xc0746['model']['document'],_0x5725bb=_0xc0746['plugins']['get'](i);_0xc0746['model']['enqueueChange']({'isUndoable':!0x1},_0x52a04c=>{const _0x382ab6='user:range:'+_0x5725bb['mySessionId'],_0x195c01='user:position:'+_0x5725bb['mySessionId'],_0x18457c=_0xc0746['model']['markers']['has'](_0x382ab6);_0xc0746['editing']['view']['hasDomSelection']?Z(_0x5725bb['mySessionId'],_0x4989a5['selection']['getFirstRange'](),_0xc0746['model'],_0x52a04c):_0x18457c&&(_0x52a04c['removeMarker'](_0x382ab6),_0x52a04c['removeMarker'](_0x195c01));});}}function Z(_0x9fd44f,_0x25dc57,_0x40658e,_0x145989){const _0x15fd90='user:range:'+_0x9fd44f,_0x353052='user:position:'+_0x9fd44f,_0xa896da=_0x25dc57['getContainedElement']();let _0x4c8252=_0x25dc57['start'];if(_0xa896da&&_0xa896da['is']('element','tableCell')){const _0xb5e8c=function(_0x30c1b5,_0x53a277){for(const _0xc42ecb of _0x30c1b5['getPositions']())if(_0x53a277['schema']['checkChild'](_0xc42ecb,'$text'))return _0xc42ecb;}(_0x25dc57,_0x40658e);_0xb5e8c&&(_0x4c8252=_0xb5e8c,_0x25dc57=_0x145989['createRange'](_0x4c8252));}const _0x5bdc78=_0x145989['createRange'](_0x4c8252);_0x40658e['markers']['has'](_0x15fd90)?(_0x145989['updateMarker'](_0x15fd90,{'range':_0x25dc57}),_0x145989['updateMarker'](_0x353052,{'range':_0x5bdc78})):(_0x145989['addMarker'](_0x15fd90,{'range':_0x25dc57,'usingOperation':!0x0}),_0x145989['addMarker'](_0x353052,{'range':_0x5bdc78,'usingOperation':!0x0}));}function V(_0xd6caa8,_0x34cf03,_0x2ab737){const _0x29ce91=_0xd6caa8['t'],t=_0xd6caa8['t'];switch(_0x34cf03){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 _0x29ce91({'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'},_0x2ab737);default:return'';}}let G=0x1;class l extends _0x30d08e{static ['CollaborativeEditingService']=/* #__PURE__ -- @preserve */
25
+ ((()=>_0x107e8d)());['_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,_0x3384fb,_0x4b2f7d,_0x1b2652];}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 _0x53a306=this['serverHistory']['getOperations']();for(let _0x43bab4=_0x53a306['length']-0x1;_0x43bab4>=0x0;_0x43bab4--){const _0x3ffe77=_0x53a306[_0x43bab4];if(!this['_disconnectionOperations']['has'](_0x3ffe77))return _0x3ffe77['baseVersion']+0x1-this['_offset'];}return 0x0;}constructor(_0x780285){if(super(_0x780285),this['_offset']=0x0,this['sessionId']=null,this['serverHistory']=new _0x2342e3(),this['editor']['config']['define']('collaboration',{}),this['_channelId']=this['editor']['config']['get']('collaboration.channelId'),!this['_channelId'])throw new _0x3b6d0e('collaboration-missing-channelid',this);const _0x19ad5e=_0x780285['config']['get']('cloudServices.bundleVersion')||nt;this['_service']=new l['CollaborativeEditingService'](_0x19ad5e,this['_channelId']),this['_document']=this['editor']['model']['document'],this['_compressor']=new _0x356da0(),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 _0x75b8a1=this['editor'],_0x39137c=_0x75b8a1['plugins']['get'](_0x4b2f7d),_0x57977e=_0x75b8a1['plugins']['get'](n);this['listenTo'](_0x39137c,'getOperationAuthor',(_0x508ac8,_0x46d50b)=>{const _0x4114d0=_0x46d50b[0x0];_0x4114d0['_authorId']&&(_0x508ac8['return']=_0x39137c['getUser'](_0x4114d0['_authorId']),_0x508ac8['stop']()),null===_0x4114d0['_authorId']&&(_0x508ac8['return']=null,_0x508ac8['stop']());},{'priority':'high'}),this['listenTo'](_0x75b8a1['model']['document']['selection'],'change:range',(_0x42f229,_0x1bcb5b)=>{_0x1bcb5b['directChange']&&this['_refreshUserSelectionMarkers']();}),this['listenTo'](_0x75b8a1['editing']['view'],'change:hasDomSelection',()=>{this['_refreshUserSelectionMarkers']();}),this['_initThrowingOnDataSet'](),_0x75b8a1['model']['on']('applyOperation',(_0x4249a8,_0x598c15)=>{const _0xd2d200=_0x598c15[0x0];_0xd2d200['isDocumentOperation']&&(this['_saveOperationInBuffer'](_0xd2d200),this['_shouldSendUpdate']()&&this['_sendBufferedOperationsDelayed']());}),this['_setUpDataInit'](),this['bind']('_isEditingAllowed')['to'](_0x57977e,'state',this,'_hasSynchronizationProblem',(_0x47817d,_0x252230)=>'connected'===_0x47817d&&!_0x252230),this['on']('change:_isEditingAllowed',()=>{this['_isEditingAllowed']?_0x75b8a1['disableReadOnlyMode']('rtc-offline'):_0x75b8a1['enableReadOnlyMode']('rtc-offline');}),this['_isEditingAllowed']?_0x75b8a1['disableReadOnlyMode']('rtc-offline'):_0x75b8a1['enableReadOnlyMode']('rtc-offline'),this['set']('_isConnected',!0x1);}async['reconnect'](){const _0x536f53=this['editor']['plugins']['get'](i),_0x3e48d3=this['editor']['plugins']['get'](n);try{this['_isPendingUpdate']=!0x0,_0x536f53['unregister'](this['_channelId']);const _0x51c496=await this['_service']['reconnect'](_0x3e48d3['connection'],this['lastSyncVersion']);await this['_handleReconnectionResponse'](_0x51c496)&&(this['_isPendingUpdate']=!0x1,this['_clearPendingAction']());const _0x533949=await this['_service']['getConnectedSessions']();_0x536f53['register'](this['_channelId'],_0x533949),this['_handleSendingSelectionMarkers'](),this['_isConnected']=!0x0;}catch(_0x2a323e){if(function(_0x45a087){return'404'===_0x45a087['code'];}(_0x2a323e)&&this['sessionId'])await this['_connectAfterSessionHasBeenFlushed']();else{if(function(_0x2b0515){return'409'===_0x2b0515['code'];}(_0x2a323e)){const _0x3dfaa5=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'](_0x3dfaa5);}else{if(!(_0x2a323e instanceof $))throw _0x2a323e;this['_handleReconnectionError']();}}}}['destroy'](){const _0x5f5cb0=this['editor']['plugins']['get'](n),_0x56b904=this['editor']['plugins']['get'](i);this['editor']['enableReadOnlyMode']('rtc-destroyed'),_0x56b904['channelSessions']['has'](this['_channelId'])&&_0x56b904['unregister'](this['_channelId']),_0x5f5cb0['removeFromReconnectionStack'](this),this['_disconnectService'](),super['destroy']();}async['_handleReconnectionResponse'](_0x4479d8){if(this['sessionId']!==_0x4479d8['sessionId']&&this['_lastSyncedOperationId']!==_0x4479d8['lastOperationId'])throw new $();return this['sessionId']=_0x4479d8['sessionId'],this['_handleServerResponse']([],{..._0x4479d8,'wereChangesApplied':!0x1,'data':_0x4479d8['data']},'reconnect');}async['_connectService'](_0x439cc5,_0x3bff7f=!0x1){const {connection:_0x463db5}=this['editor']['plugins']['get'](n);l['CollaborativeEditingService']['getConnectedSessions'](_0x463db5,this['_channelId'])['then'](_0x10d356=>this['_initSessionsHandling'](_0x10d356))['catch'](_0x42262c=>{this['_crash']('realtimecollaborationclient-init-session-connection-error',_0x42262c);}),this['listenTo'](this['_service'],'operationsReceived',this['_handleReceivedOperations']['bind'](this)),this['listenTo'](this['_service'],'error',(_0x43eb2f,_0x3a60c2)=>{this['_crash']('realtimecollaborationclient-init-service-internal-error',_0x3a60c2);}),this['listenTo'](this['_service'],'disconnected',()=>{this['_isConnected']=!0x1;});const _0x4b91b3=this['_operationIdentifier']['getIdOfTheLastOperation'](_0x439cc5);this['_isPendingUpdate']=!0x0;const _0x3fe6fd=await this['_service']['connect'](_0x463db5,this['_compressOperations'](_0x439cc5),_0x4b91b3);if(this['sessionId']=_0x3fe6fd['sessionId'],_0x3bff7f){if(!_0x3fe6fd['wereChangesApplied'])return void this['_handleReconnectionError']();this['_isPendingUpdate']=!0x1,this['_clearPendingAction'](),this['serverHistory']['reset'](),this['_offset']=_0x3fe6fd['offset'],this['serverHistory']['version']=this['_offset'],await this['_handleServerResponse'](_0x439cc5,_0x3fe6fd,'reconnection:\x20flushed\x20session');}else await this['_handleInitialConnectionData'](_0x3fe6fd,_0x439cc5);this['_handleSendingSelectionMarkers'](),this['_isConnected']=!0x0;}['_handleSendingSelectionMarkers'](){const _0x4132a2=this['editor']['plugins']['get'](i),_0x5a445f=this['editor']['plugins']['get'](H),_0x113d68=_0x4132a2['channelSessions']['get'](this['_channelId']);_0x113d68&&_0x113d68['length']>0x1?_0x5a445f['createUserMarkerOperations']():this['listenTo'](_0x4132a2,'sessionAdd:'+this['_channelId'],()=>{0x2===_0x4132a2['channelSessions']['get'](this['_channelId'])['length']&&_0x5a445f['createUserMarkerOperations']();});}async['_handleReceivedOperations'](_0x450a99,_0x5da1a8,_0x1ca77c,_0x30611b){if(!this['_isPendingUpdate']&&this['_document']['version']==_0x5da1a8){const _0x3ddfa7=this['_decompressOperations'](_0x1ca77c,_0x30611b);await this['_fetchMissingUsers'](_0x3ddfa7),this['_handleExternalOperations'](_0x3ddfa7,_0x5da1a8,_0x1ca77c['lastOperationId'])||this['_crash']('realtimecollaborationclient-init-service-incorrect-server-operation');}}async['_connectAfterSessionHasBeenFlushed'](){this['_disconnectService']();const {locale:_0x4be71b}=this['editor'];let _0x31bdc3;try{_0x31bdc3=await this['_service']['getDocumentDetails']();}catch{const _0x57b8ca=V(_0x4be71b,'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'](_0x57b8ca);}const _0x236ebb=_0x31bdc3['currentDocumentSession']||_0x31bdc3['lastDocumentSession'];if(this['_lastSyncedOperationId']!==_0x236ebb['lastOperationId']){const _0x173cb5=V(_0x4be71b,'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'](_0x173cb5);}await this['_connectService'](this['editor']['model']['document']['history']['getOperations'](),!0x0);}['_disconnectService'](){this['_service']['disconnect'](),this['_bufferedOperations']=[],clearTimeout(this['_sendBufferedOperationsDelayId']),this['stopListening'](this['_service']);}['_initSessionsHandling'](_0x501776){const _0x3c428d=this['editor']['plugins']['get'](i);this['listenTo'](_0x3c428d,'sessionAdd:'+this['_channelId'],(_0x29c099,{session:_0x269ee3})=>{if(_0x269ee3['id']===_0x3c428d['mySessionId']){_0x29c099['off']();const _0x351236=this['editor']['plugins']['has']('CommentsOnly')&&this['editor']['plugins']['get']('CommentsOnly');let _0x87c98e=_0x269ee3['permissions'];_0x351236&&_0x351236['isEnabled']&&(_0x87c98e=_0x87c98e['filter'](_0x5b5b30=>'document:write'!==_0x5b5b30)),this['editor']['plugins']['get']('Permissions')['setPermissions'](_0x87c98e,this['_channelId']);}}),_0x3c428d['register'](this['_channelId'],_0x501776);}['_initThrowingOnDataSet'](){const _0x58c853=this['editor']['data']['set'];this['editor']['data']['set']=(..._0x245ef4)=>{if(!_0x245ef4[_0x245ef4['length']-0x1]['suppressErrorInCollaboration'])throw new _0x3b6d0e('realtimecollaborationclient-editor-setdata-and-editor-data-set-are-forbidden-in-real-time-collaboration',this);_0x58c853['apply'](this['editor']['data'],_0x245ef4);};}['_setUpDataInit'](){this['editor']['data']['on']('init',(_0xab6f3a,[_0x162787])=>{if(this['_document']['version'])throw new _0x3b6d0e('realtimecollaborationclient-init-document-already-initialized',this);_0xab6f3a['stop'](),this['_setPendingAction']();const _0x31dcec=this['editor']['config']['get']('rootsAttributes'),_0x4e175f=this['_getOperationsFromInitData'](_0x162787,_0x31dcec);0x0==_0x4e175f['length']&&_0x4e175f['push'](new _0x5ec678(0x0)),_0xab6f3a['return']=this['_connectService'](_0x4e175f)['then'](()=>{this['editor']['plugins']['get'](n)['addToReconnectionStack'](this),this['editor']['data']['fire']('ready');})['catch'](_0x16192b=>this['_crash']('realtimecollaborationclient-init-connection-failed',_0x16192b))['finally'](()=>this['_clearPendingAction']());},{'priority':'high'}),this['editor']['on']('loadRoot',async(_0x413f80,[_0x25f955,_0x4e135e])=>{_0x413f80['stop']();const _0x4d7800=this['editor']['model']['document']['getRoot'](_0x25f955);if(!this['_knownRootNames']['has'](_0x25f955)){const _0x5888cf=_0x4e135e&&_0x4e135e['data']?_0x4e135e['data']:'',_0x42350f=_0x4e135e&&_0x4e135e['attributes']?_0x4e135e['attributes']:{};await this['_loadRoot'](_0x25f955,_0x5888cf,_0x42350f);}this['editor']['model']['enqueueChange']({'isUndoable':!0x1},()=>{_0x4d7800['_isLoaded']=!0x0,this['editor']['model']['document']['differ']['_bufferRootLoad'](_0x4d7800);});},{'priority':'high'});}async['_fetchMissingUsers'](_0x3d3fc5){const _0x3d19fa=this['editor']['plugins']['get'](_0x4b2f7d),{connection:_0xc66a73}=this['editor']['plugins']['get'](n),_0x5c4ebe=new Set();for(const _0x4ba3cf of _0x3d3fc5){const _0x3fe1de=_0x4ba3cf['_authorId'];_0x3fe1de&&!_0x3d19fa['getUser'](_0x3fe1de)&&_0x5c4ebe['add'](_0x3fe1de);}if(0x0===_0x5c4ebe['size'])return;const _0xceb8a0=await lt['getMany'](_0xc66a73,Array['from'](_0x5c4ebe));for(const _0x71adce of _0xceb8a0)_0x3d19fa['getUser'](_0x71adce['id'])||_0x3d19fa['addUser'](_0x71adce);}['_getOperationsFromInitData'](_0x36754b,_0xf5546={}){const _0x531e62=this['editor']['model'],_0x1e01c7=[];let _0x53036a=0x0;const _0x26e93f='string'==typeof _0x36754b?{'main':_0x36754b}:_0x36754b;for(const _0x400dd3 of Object['keys'](_0x26e93f)){if(!this['_document']['roots']['has'](_0x400dd3))throw new _0x3b6d0e('realtimecollaborationclient-init-non-existent-root',this);const _0x5128c7=this['editor']['data']['parse'](_0x26e93f[_0x400dd3]),_0x23c302=this['_document']['getRoot'](_0x400dd3),_0x49f99d=new _0x358535(_0x531e62['createPositionAt'](_0x23c302,0x0),_0x5128c7,_0x53036a++);_0x1e01c7['push'](_0x49f99d);for(const [_0x1e403b,_0x57b64f]of _0x5128c7['markers']){const _0x362f5e=_0x531e62['createRange'](_0x531e62['createPositionFromPath'](_0x23c302,_0x57b64f['start']['path']['slice']()),_0x531e62['createPositionFromPath'](_0x23c302,_0x57b64f['end']['path']['slice']())),_0x54ca7b=new _0x2358aa(_0x1e403b,null,_0x362f5e,_0x531e62['markers'],!0x0,_0x53036a++);_0x1e01c7['push'](_0x54ca7b);}}if(_0xf5546)for(const [_0x1eaddf,_0x29a2be]of Object['entries'](_0xf5546)){const _0x3ffd57=_0x531e62['document']['getRoot'](_0x1eaddf);if(!_0x3ffd57)throw new _0x3b6d0e('multi-root-editor-root-attributes-no-root',null);for(const [_0x233a4a,_0x1a1ec1]of Object['entries'](_0x29a2be))if(null!==_0x1a1ec1){const _0x584488=new _0x12d83a(_0x3ffd57,_0x233a4a,null,_0x1a1ec1,_0x53036a++);_0x1e01c7['push'](_0x584488);}}return _0x1e01c7;}async['_loadRoot'](_0x53ab9b,_0x59c27f,_0x3f5539){this['_getOperationsFromInitData']({[_0x53ab9b]:_0x59c27f},{[_0x53ab9b]:_0x3f5539})['forEach']((_0x224265,_0x2de0b3)=>{_0x224265['baseVersion']=this['_document']['version']+_0x2de0b3,_0x224265['_isInit']=!0x0,this['_saveOperationInBuffer'](_0x224265);}),this['_sendBufferedOperationsDelayed'](),await this['_waitUntilSynced']();}async['_handleInitialConnectionData'](_0x515f23,_0x5cd9b7){let _0x1cccb7;this['_offset']=_0x515f23['offset'];const _0x375bce=_0x515f23['wereChangesApplied']&&!_0x515f23['initData'],_0x3df053=_0x375bce?0x0:_0x515f23['data']['baseVersion'];if(_0x5cd9b7['forEach'](_0x11f481=>{_0x11f481['_isInit']=!0x0,_0x11f481['createdAt']=_0x515f23['sessionCreatedAt'],_0x11f481['_authorId']=null;}),_0x375bce)_0x1cccb7=_0x5cd9b7,this['_applyOperationsSet'](_0x1cccb7,_0x375bce);else{if(_0x515f23['initData']){const _0x2e215c=this['_getOperationsFromInitData'](_0x515f23['initData']);this['_document']['history']['version']=-_0x2e215c['length'],_0x2e215c['forEach'](_0x421308=>{_0x421308['baseVersion']-=_0x2e215c['length'],_0x421308['createdAt']=_0x515f23['sessionCreatedAt'],_0x421308['_isInit']=!0x0,_0x421308['_authorId']=null;}),this['_applyOperationsSet'](_0x2e215c,!0x0),this['serverHistory']['version']=-_0x2e215c['length']+this['_offset'],this['_updateServerHistory'](_0x2e215c);}this['_document']['history']['version']=_0x3df053,_0x1cccb7=this['_decompressOperations'](_0x515f23['data'],_0x515f23['metadata']),await this['_fetchMissingUsers'](_0x1cccb7),this['_applyOperationsSet'](_0x1cccb7,_0x375bce);}_0x515f23['lastOperationId']&&(this['_operationIdentifier']['setIdForTheLastOperation'](_0x1cccb7,_0x515f23['lastOperationId']),this['_lastSyncedOperationId']=_0x515f23['lastOperationId']),this['serverHistory']['version']=_0x3df053+this['_offset'],this['_updateServerHistory'](_0x1cccb7),_0x5cd9b7['filter'](_0x1bed40=>{const _0x20aee4=this['_getAffectedRoot'](_0x1bed40);return _0x20aee4&&!this['_knownRootNames']['has'](_0x20aee4);})['forEach']((_0x24a0f2,_0x140f6b)=>{_0x24a0f2['baseVersion']=this['_document']['version']+_0x140f6b,this['_saveOperationInBuffer'](_0x24a0f2);}),this['_shouldSendUpdate']()?(this['_currentBufferDelay']=0x0,this['_sendBufferedOperationsDelayed'](!0x0),await this['_waitUntilSynced']()):(this['_isPendingUpdate']=!0x1,this['_clearPendingAction']());}['_crash'](_0x1c9b88,_0x5628d5){const _0x2878cd=_0x5628d5&&_0x5628d5['message'];if(_0x2878cd&&_0x2878cd['startsWith']('realtimecollaborationclient'))throw _0x5628d5;const _0x2d5084=this['editor']['plugins']['get'](n);throw this['_isPendingUpdate']=!0x0,_0x2d5084['disconnect'](),this['editor']['enableReadOnlyMode']('realtimecollaborationclient-error'),new _0x3b6d0e(_0x1c9b88,this['editor'],_0x2878cd?{'originalError':_0x2878cd}:void 0x0);}['_saveOperationInBuffer'](_0x2d8d77){this['_knownOperations']['has'](_0x2d8d77)||(this['_knownOperations']['add'](_0x2d8d77),this['_bufferedOperations']['push'](_0x2d8d77),this['_pendingAction']||'marker'==_0x2d8d77['type']&&!_0x2d8d77['affectsData']||this['_setPendingAction']());}['_sendBufferedOperationsDelayed'](_0x29d2b8=!0x1){!_0x29d2b8&&this['_isPendingUpdate']||(this['_isPendingUpdate']=!0x0,clearTimeout(this['_sendBufferedOperationsDelayId']),this['_sendBufferedOperationsDelayId']=setTimeout(()=>{this['_sendBufferedOperations']()['then'](_0x1a6917=>{_0x1a6917&&(this['_clearPendingAction'](),this['_isPendingUpdate']=!0x1);})['catch'](_0x3ebd4e=>{this['_clearPendingAction'](),this['_isPendingUpdate']=!0x1,function(_0x5dfd46){return _0x5dfd46['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x5dfd46['message']['startsWith']('cloud-services-internal-error:\x20Collaborative\x20Editing\x20Service\x20is\x20not\x20connected.')||_0x5dfd46['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}(_0x3ebd4e)||this['_crash'](_0x3ebd4e['message'],_0x3ebd4e);});},this['_currentBufferDelay']));}['_waitUntilSynced'](){return new Promise(_0x239da3=>{this['on']('change:_isPendingUpdate',()=>{_0x239da3();});});}async['_sendBufferedOperations'](){const _0x27e0a4=this['editor']['plugins']['get'](H);if(this['_shouldSendSelectionUpdate']()&&(_0x27e0a4['createUserMarkerOperations'](),this['_hasSelectionChanged']=!0x1),!this['_shouldSendUpdate']())return!0x0;const _0x583d31=[...this['_bufferedOperations']];for(const _0x3f761e of _0x583d31)_0x3f761e['wasUndone']=this['_document']['history']['isUndoneOperation'](_0x3f761e);const _0x1fffa7=this['_operationIdentifier']['getIdOfTheLastOperation'](_0x583d31),_0x550ad6=G++,_0x2d0360=this['_compressOperations'](_0x583d31),_0x4cf26b=await this['_service']['sendOperations'](_0x2d0360,_0x2d0360['baseVersion'],_0x1fffa7);try{return await this['_handleServerResponse'](_0x583d31,_0x4cf26b,_0x550ad6);}catch(_0x2b5413){return this['_crash']('realtimecollaborationclient-sendbufferedoperations',_0x2b5413);}}async['_handleServerResponse'](_0x3875cf,_0x442198,_0x65c581){if('error'in _0x442198)throw _0x442198['error'];let _0x21e74f=!0x1;if(_0x442198['wereChangesApplied']){_0x442198['lastOperationId']&&(this['_lastSyncedOperationId']=_0x442198['lastOperationId']),this['_bufferedOperations']=this['_bufferedOperations']['filter'](_0xa550ef=>!_0x3875cf['includes'](_0xa550ef));for(const _0x5ad40e of _0x3875cf)_0x5ad40e['createdAt']='lastOperationAcceptedAt'in _0x442198&&_0x442198['lastOperationAcceptedAt']||void 0x0;K(_0x3875cf,_0x442198['version']-_0x3875cf['length']),this['_updateServerHistory'](_0x3875cf);const _0x192741=_0x3875cf['filter'](_0x11ba5e=>{if(!_0x11ba5e['_isInit'])return!0x1;const _0x45a56b=this['_getAffectedRoot'](_0x11ba5e);return _0x45a56b&&!this['_knownRootNames']['has'](_0x45a56b);});K(_0x192741,this['_document']['version']),this['_applyOperationsSet'](_0x192741),_0x21e74f=!0x0,this['_currentBufferDelay']=this['_baseBufferDelay'];}else{const _0x987111=this['_decompressOperations'](_0x442198['data'],_0x442198['metadata'])['filter'](_0xc910d6=>_0xc910d6['baseVersion']>=this['_lastServerVersion']);_0x987111['forEach'](_0x19a2d1=>this['_addKnownRoot'](_0x19a2d1)),this['_bufferedOperations']=this['_bufferedOperations']['filter'](_0x48d5d8=>!_0x48d5d8['_isInit']||!this['_knownRootNames']['has'](this['_getAffectedRoot'](_0x48d5d8))),this['_bufferedOperations']['length']&&K(this['_bufferedOperations'],this['_bufferedOperations'][0x0]['baseVersion']),await this['_fetchMissingUsers'](_0x987111),_0x21e74f=this['_handleExternalOperations'](_0x987111,_0x442198['version'],_0x442198['lastOperationId']),this['_currentBufferDelay']=Math['round'](this['_currentBufferDelay']/0x2);}return _0x21e74f?!this['_shouldSendUpdate']()||(this['_sendBufferedOperationsDelayed'](!0x0),!0x1):this['_crash']('realtimecollaborationclient-handleserverresponse');}['_handleExternalOperations'](_0x5b25aa,_0x1618ff,_0x5ea7a8){try{const _0x28a54e={'document':this['_document'],'useRelations':!0x1,'padWithNoOps':!0x0},{operationsA:_0x36ff00,operationsB:_0x29de28,originalOperations:_0x587dfc}=_0xa78923(_0x5b25aa,this['_bufferedOperations'],_0x28a54e);K(_0x36ff00,this['_document']['version']),K(_0x29de28,_0x1618ff);for(const _0x3a0657 of _0x36ff00){const _0x317cc8=_0x587dfc['get'](_0x3a0657);_0x3a0657['_authorId']=_0x317cc8?_0x317cc8['_authorId']:null;}_0x5ea7a8&&(this['_operationIdentifier']['setIdForTheLastOperation'](_0x5b25aa,_0x5ea7a8),this['_lastSyncedOperationId']=_0x5ea7a8),this['_bufferedOperations']=[..._0x29de28],this['_applyOperationsSet'](_0x36ff00),this['_updateServerHistory'](_0x5b25aa);}catch(_0x6945c5){return console['error'](_0x6945c5),!0x1;}return!0x0;}['_applyOperationsSet'](_0xe8f077,_0x33c9ed=!0x1){this['editor']['model']['enqueueChange']({'isUndoable':!0x1,'isLocal':!0x1},_0x590dbb=>{for(const _0x33bf17 of _0xe8f077)this['_knownOperations']['add'](_0x33bf17),this['_addKnownRoot'](_0x33bf17),_0x590dbb['batch']['addOperation'](_0x33bf17),this['editor']['model']['applyOperation'](_0x33bf17);});}['_addKnownRoot'](_0x2ce008){const _0x45e939=this['_getAffectedRoot'](_0x2ce008);_0x45e939&&this['_knownRootNames']['add'](_0x45e939);}['_getAffectedRoot'](_0x5bcb2f){let _0x467cc2,_0x13e18d;switch(_0x5bcb2f['type']){case'insert':_0x467cc2=_0x5bcb2f['position']['root'];break;case'marker':if(_0x13e18d=_0x5bcb2f['newRange'],!_0x13e18d)return null;_0x467cc2=_0x13e18d['root'];break;case'addRootAttribute':_0x467cc2=_0x5bcb2f['root'];break;case'addRoot':_0x467cc2=_0x5bcb2f['affectedSelectable'];break;case'move':_0x467cc2=_0x5bcb2f['targetPosition']['root'];break;default:return null;}return _0x467cc2['rootName'];}['_updateServerHistory'](_0x30fba0){_0x30fba0['forEach'](_0x4002c1=>{const _0x19cf6d=_0x4002c1['clone']();_0x19cf6d['_authorId']=_0x4002c1['_authorId'],_0x19cf6d['_isInit']=!!_0x4002c1['_isInit'],_0x19cf6d['createdAt']=_0x4002c1['createdAt'],_0x19cf6d['baseVersion']+=this['_offset'],_0x4002c1['_isDisconnection']&&this['_disconnectionOperations']['add'](_0x19cf6d),this['serverHistory']['addOperation'](_0x19cf6d);});}['_handleReconnectionError'](_0x492db5){const _0x2cb4c5=this['editor']['plugins']['get']('Notification'),_0xf6aa79=this['editor']['locale'];_0x492db5||(_0x492db5=V(_0xf6aa79,'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.')),_0x2cb4c5['showWarning'](_0x492db5,{'title':V(_0xf6aa79,'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'](_0x3384fb)['add'](V(this['editor']['locale'],'PENDING_ACTION_SENDING_DATA')));}['_clearPendingAction'](){this['_pendingAction']&&(this['editor']['plugins']['get'](_0x3384fb)['remove'](this['_pendingAction']),this['_pendingAction']=null);}['_compressOperations'](_0x3c80b8){const _0xc621ac=_0x3c80b8['map'](_0x105243=>_0x105243['toJSON']());return this['_compressor']['compress'](_0xc621ac);}['_decompressOperations'](_0x518e2e,_0x491088){return this['_compressor']['decompress'](_0x518e2e)['map']((_0x3d5cfb,_0x4eacfb)=>{const _0x3805f6='init'==_0x491088[_0x4eacfb]['type'];if('InsertOperation'==_0x3d5cfb['__className']){const _0x3703a2=_0x3d5cfb['position']['root'];!this['_document']['getRoot'](_0x3703a2)&&(this['_document']['createRoot']('$root',_0x3703a2)['_isAttached']=!0x1);}const _0x318ccd=_0x56aaae['fromJSON'](_0x3d5cfb,this['_document']);return _0x318ccd['wasUndone']=_0x3d5cfb['wasUndone'],_0x318ccd['_isInit']=_0x3805f6,_0x318ccd['_authorId']=_0x3805f6?null:_0x491088[_0x4eacfb]['userId'],_0x318ccd['_isDisconnection']='cs:removeUser'===_0x491088[_0x4eacfb]['type'],_0x318ccd['createdAt']=_0x491088[_0x4eacfb]['createdAt'],_0x318ccd;});}['_refreshUserSelectionMarkers'](){this['_hasSelectionChanged']=!0x0,this['_shouldSendSelectionUpdate']()?this['_sendBufferedOperationsDelayed']():this['_hasSelectionChanged']=!0x1;}['_shouldSendSelectionUpdate'](){const _0x1ad753=this['editor']['plugins']['get'](i)['channelSessions']['get'](this['_channelId']);return!this['editor']['isReadOnly']&&!!_0x1ad753&&_0x1ad753['length']>0x1&&this['_hasSelectionChanged'];}['_shouldSendUpdate'](){return this['_bufferedOperations']['length']>0x0||this['_shouldSendSelectionUpdate']();}}class $ extends Error{}function K(_0x51a4dc,_0x43a234){for(const _0x25dcc9 of _0x51a4dc)_0x25dcc9['baseVersion']=_0x43a234++;}class J{['_ignoredOperations'];['_operationToId'];constructor(_0x438325){this['_ignoredOperations']=_0x438325,this['_operationToId']=new WeakMap();}['getIdOfTheLastOperation'](_0xe5daff){let _0x10571c=_0xe5daff['length'];for(;_0x10571c--;){const _0x69aba4=_0xe5daff[_0x10571c];if(!this['_ignoredOperations']['has'](_0x69aba4)){if(!this['_operationToId']['has'](_0x69aba4)){const _0x27fe3c=_0x4dffa8()['slice'](0x1,0x12);this['_operationToId']['set'](_0x69aba4,_0x27fe3c);}return this['_operationToId']['get'](_0x69aba4);}}}['setIdForTheLastOperation'](_0x51443e,_0xd6e878){if(!_0xd6e878)return;let _0x192ba9=_0x51443e['length'];for(;_0x192ba9--;){const _0x433569=_0x51443e[_0x192ba9];this['_ignoredOperations']['has'](_0x433569)||this['_operationToId']['set'](_0x433569,_0xd6e878);}}}class a extends _0x30d08e{static get['requires'](){return[l];}static get['pluginName'](){return'RealTimeCollaborativeEditing';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}}class s extends _0x349f1b{static ['CommentsService']=/* #__PURE__ -- @preserve */
26
+ ((()=>_0x36cb8b)());['_services'];static get['requires'](){return[n,'CommentsRepository',i,_0x4b2f7d];}static get['pluginName'](){return'CloudServicesCommentsAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x34044e){super(_0x34044e),this['_services']=new Map();}async['init'](){const _0x51be36=this['context'],_0x61f3e6=_0x51be36['plugins']['get']('CommentsRepository');if(_0x51be36['plugins']['get'](n)['addToReconnectionStack'](this),_0x61f3e6['adapter']={'addCommentThread':async({channelId:_0xff386a,threadId:_0x24873b,comments:_0x1f5892,resolvedAt:_0x4bbd92,resolvedBy:_0x5c9825,context:_0x33e47b,attributes:_0x37fae9})=>{const _0x341642=await this['_getService'](_0xff386a)['addCommentThread']({'commentThreadId':_0x24873b,'comments':_0x1f5892['map'](_0x2b9886=>function(_0x34f227,_0xb8a12d,_0xb109bd){return{'commentThreadId':_0xb109bd,'commentId':_0x34f227['commentId'],'userId':_0x34f227['authorId'],'content':_0x34f227['content'],'documentId':_0xb8a12d,'createdAt':_0x34f227['createdAt'],'attributes':_0x34f227['attributes']||{}};}(_0x2b9886,_0xff386a,_0x24873b)),'resolvedAt':_0x4bbd92,'resolvedBy':_0x5c9825,'context':_0x33e47b,'attributes':_0x37fae9})['catch'](dt);return{'threadId':_0x341642['commentThreadId'],'comments':_0x341642['comments']};},'getCommentThread':async({channelId:_0x37b30a,threadId:_0x51d8bb})=>{const _0x5714e7=await this['_getService'](_0x37b30a)['getCommentThread'](_0x51d8bb)['catch'](F)['catch'](dt);return _0x5714e7?_0x5714e7['deletedAt']?null:(await this['_fetchMissingUsersForThreads']([_0x5714e7]),{'threadId':_0x5714e7['commentThreadId'],'comments':_0x5714e7['comments']['map'](B),'context':_0x5714e7['context'],'resolvedAt':_0x5714e7['resolvedAt'],'resolvedBy':_0x5714e7['resolvedBy'],'attributes':_0x5714e7['attributes']||{}}):null;},'updateCommentThread':async({channelId:_0x4a323c,threadId:_0x2098ed,context:_0x5a0ae7,unlinkedAt:_0x577b74,attributes:_0x2c2637})=>this['_getService'](_0x4a323c)['updateCommentThread']({'commentThreadId':_0x2098ed,'context':_0x5a0ae7,'attributes':_0x2c2637,'unlinkedAt':_0x577b74})['catch'](F)['catch'](dt),'resolveCommentThread':async({channelId:_0x4927a0,threadId:_0x2466e8})=>{const _0x10895b=await this['_getService'](_0x4927a0)['resolveCommentThread'](_0x2466e8)['catch'](F)['catch'](dt);return{'threadId':_0x10895b['commentThreadId'],'resolvedAt':_0x10895b['resolvedAt'],'resolvedBy':_0x10895b['resolvedBy']};},'reopenCommentThread':async({channelId:_0x261ad1,threadId:_0x29657a})=>this['_getService'](_0x261ad1)['reopenCommentThread'](_0x29657a)['catch'](F)['catch'](dt),'removeCommentThread':({channelId:_0x531463,threadId:_0x3c3021})=>this['_getService'](_0x531463)['removeCommentThread'](_0x3c3021)['catch'](F)['catch'](dt),'addComment':({channelId:_0x5c0c93,threadId:_0x4a0946,commentId:_0x1f8877,content:_0x2fe8ea,attributes:_0xed9e23})=>this['_getService'](_0x5c0c93)['addComment'](_0x4a0946,_0x1f8877,_0x2fe8ea,_0xed9e23)['catch'](dt),'updateComment':({channelId:_0x5e4c49,threadId:_0x401537,commentId:_0x4103c6,content:_0x2f266a,attributes:_0x2282de})=>this['_getService'](_0x5e4c49)['updateComment'](_0x401537,_0x4103c6,_0x2f266a,_0x2282de)['catch'](F)['catch'](dt),'removeComment':({channelId:_0x565115,threadId:_0x147b84,commentId:_0x5b8dfb})=>this['_getService'](_0x565115)['removeComment'](_0x147b84,_0x5b8dfb)['catch'](F)['catch'](dt)},_0x51be36 instanceof _0x1c1d08){const _0x507e40=_0x51be36['config']['get']('collaboration.channelId'),_0x593452=_0x51be36['plugins']['get'](i);await this['_setUpService'](_0x507e40);const _0x2a8f3a=await this['_services']['get'](_0x507e40)['getConnectedSessions']();this['listenTo'](_0x593452,'sessionAdd:'+_0x507e40,(_0x4887b2,{session:_0x4c6ace})=>{_0x4c6ace['id']===_0x593452['mySessionId']&&(_0x4887b2['off'](),this['context']['plugins']['get']('Permissions')['setPermissions'](_0x4c6ace['permissions'],_0x507e40));}),_0x593452['register'](_0x507e40,_0x2a8f3a);}}async['_setUpService'](_0x39deb7){if(this['_services']['has'](_0x39deb7))throw new _0x3b6d0e('cloudservicescommentsadapter-connect-already-connected',null,{'channelId':_0x39deb7});const _0x283198=this['context']['plugins']['get']('CommentsRepository'),_0x56f4f3=new s['CommentsService'](_0x39deb7);this['_services']['set'](_0x39deb7,_0x56f4f3),this['listenTo'](_0x56f4f3,'commentThreadAdded',(_0x107a0c,_0x166779)=>{const {commentThreadId:_0x147437,documentId:_0x3f9b7a,context:_0x103773,attributes:_0xad7487,resolvedAt:_0x47ddcb,resolvedBy:_0x535afc,comments:_0x21ccc3}=_0x166779;_0x283198['getCommentThread'](_0x147437)||_0x283198['addCommentThread']({'threadId':_0x147437,'channelId':_0x3f9b7a,'comments':_0x21ccc3?_0x21ccc3['map'](B):[],'context':_0x103773,'attributes':_0xad7487,'resolvedAt':_0x47ddcb,'resolvedBy':_0x535afc,'isFromAdapter':!0x0});}),this['listenTo'](_0x56f4f3,'commentThreadUpdated',(_0x47f977,{commentThreadId:_0x76c9b6,documentId:_0x40cf23,context:_0x42fc47,unlinkedAt:_0x4a10bb,attributes:_0x3ca246})=>{_0x283198['getCommentThread'](_0x76c9b6)&&_0x283198['updateCommentThread']({'threadId':_0x76c9b6,'channelId':_0x40cf23,'context':_0x42fc47,'unlinkedAt':_0x4a10bb,'attributes':_0x3ca246,'isFromAdapter':!0x0});}),this['listenTo'](_0x56f4f3,'commentThreadResolved',(_0x236608,{commentThreadId:_0x475346,resolvedBy:_0x389d73,resolvedAt:_0x3c6e08})=>{const _0x6dc81c=_0x283198['getCommentThread'](_0x475346);_0x6dc81c&&_0x6dc81c['resolve']({'resolvedBy':_0x389d73,'resolvedAt':_0x3c6e08,'isFromAdapter':!0x0});}),this['listenTo'](_0x56f4f3,'commentThreadReopened',(_0x3ea08c,{commentThreadId:_0x4de41e})=>{const _0x5115bc=_0x283198['getCommentThread'](_0x4de41e);_0x5115bc&&_0x5115bc['reopen']({'isFromAdapter':!0x0});}),this['listenTo'](_0x56f4f3,'commentThreadRemoved',(_0x243fe6,{commentThreadId:_0x3673a5})=>{const _0x3ee14b=_0x283198['getCommentThread'](_0x3673a5);_0x3ee14b&&_0x3ee14b['remove']({'isFromAdapter':!0x0});}),this['listenTo'](_0x56f4f3,'commentAdded',(_0x54602a,_0x5e41eb)=>{const _0x383e6d=_0x5e41eb['commentThreadId'],_0x3e6d15=_0x283198['getCommentThread'](_0x383e6d);_0x3e6d15&&_0x3e6d15['addComment']({...B(_0x5e41eb),'isFromAdapter':!0x0});}),this['listenTo'](_0x56f4f3,'commentUpdated',(_0x31ebe5,{commentThreadId:_0x520f69,commentId:_0x196e82,content:_0x2e6291,attributes:_0xb93521})=>{const _0x1a1301=_0x283198['getCommentThread'](_0x520f69);if(_0x1a1301){const _0x37e3ce=_0x1a1301['getComment'](_0x196e82);_0x37e3ce&&_0x37e3ce['update']({'content':_0x2e6291,'attributes':_0xb93521,'isFromAdapter':!0x0});}}),this['listenTo'](_0x56f4f3,'commentRemoved',(_0x378ebb,{commentThreadId:_0x43c994,commentId:_0x2aa74d})=>{const _0xced82=_0x283198['getCommentThread'](_0x43c994);if(_0xced82){const _0x21558c=_0xced82['getComment'](_0x2aa74d);_0x21558c&&_0x21558c['remove']({'isFromAdapter':!0x0});}}),await this['_connectService'](_0x39deb7);}['destroy'](){if(this['context']instanceof _0x1c1d08){const _0x519da3=this['context']['config']['get']('collaboration.channelId');this['_terminateService'](_0x519da3);}}['_terminateService'](_0x3c91fc){if(!this['_services']['has'](_0x3c91fc))throw new _0x3b6d0e('cloudservicescommentsadapter-disconnect-not-exist',null,{'channelId':_0x3c91fc});this['_getService'](_0x3c91fc)['disconnect'](),this['_services']['delete'](_0x3c91fc);}async['reconnect'](){for(const _0x46767f of this['_services']['keys']())await this['_connectService'](_0x46767f);if(this['context']instanceof _0x1c1d08){const _0x5a3bd3=this['context']['config']['get']('collaboration.channelId'),_0x54a134=this['context']['plugins']['get'](i);_0x54a134['unregister'](_0x5a3bd3);const _0x20b2c8=await this['_services']['get'](_0x5a3bd3)['getConnectedSessions']();_0x54a134['register'](_0x5a3bd3,_0x20b2c8);}}async['_connectService'](_0xd35877){const {connection:_0x2d8d1f}=this['context']['plugins']['get'](n),_0x486df5=this['context']['plugins']['get']('CommentsRepository'),_0x161226=this['_services']['get'](_0xd35877),_0x5828ca=await _0x161226['connect'](_0x2d8d1f);await this['_fetchMissingUsersForThreads'](_0x5828ca);const _0x422b3f=new Set(Array['from'](_0x486df5['getCommentThreads']({'channelId':_0xd35877}),_0x143c32=>_0x143c32['id']));for(const _0x4d879e of _0x5828ca)_0x4d879e['deletedAt']||_0x422b3f['delete'](_0x4d879e['commentThreadId']);for(const _0x2aa0a1 of _0x422b3f)_0x486df5['getCommentThread'](_0x2aa0a1)['remove']({'isFromAdapter':!0x0});for(const _0x16807b of _0x5828ca){let _0x319c9b=_0x486df5['getCommentThread'](_0x16807b['commentThreadId']);const {commentThreadId:_0x24ac83,context:_0x158af1,attributes:_0x12a5e5,resolvedBy:_0xfceb5,resolvedAt:_0x489ae8,unlinkedAt:_0x3eeeb0,deletedAt:_0x5d78ad}=_0x16807b;if(_0x5d78ad)continue;_0x319c9b||(_0x319c9b=_0x486df5['addCommentThread']({'channelId':_0xd35877,'threadId':_0x24ac83,'context':_0x158af1,'attributes':_0x12a5e5||{},'resolvedBy':_0xfceb5,'resolvedAt':_0x489ae8,'unlinkedAt':_0x3eeeb0,'isFromAdapter':!0x0}));const _0x7dcee2=new Set(Array['from'](_0x319c9b['comments'],_0x3c8d9e=>_0x3c8d9e['id']));for(const _0x8ebcd3 of _0x16807b['comments'])_0x7dcee2['delete'](_0x8ebcd3['commentId']);for(const _0x576e34 of _0x7dcee2)_0x319c9b['getComment'](_0x576e34)['remove']({'isFromAdapter':!0x0});for(const _0xa1e0aa of _0x16807b['comments']){const _0x5c078c=_0x319c9b['getComment'](_0xa1e0aa['commentId']);_0x5c078c?_0x5c078c['content']!==_0xa1e0aa['content']&&_0x5c078c['update']({'content':_0xa1e0aa['content'],'isFromAdapter':!0x0}):_0x319c9b['addComment'](Object['assign'](B(_0xa1e0aa),{'isFromAdapter':!0x0}));}}}['_getService'](_0x317a33){if(!this['_services']['has'](_0x317a33))throw new _0x3b6d0e('cloudservicescommentsadapter-service-not-exist',null,{'channelId':_0x317a33});return this['_services']['get'](_0x317a33);}async['_fetchMissingUsersForThreads'](_0x492c47){const _0x4682c5=this['context']['plugins']['get'](_0x4b2f7d),{connection:_0x26b1a8}=this['context']['plugins']['get'](n),_0x1ecbbb=new Set();for(const {resolvedBy:_0x485702,comments:_0x472b3f}of _0x492c47){_0x485702&&!_0x4682c5['getUser'](_0x485702)&&_0x1ecbbb['add'](_0x485702);for(const {userId:_0x45fe62}of _0x472b3f)_0x4682c5['getUser'](_0x45fe62)||_0x1ecbbb['add'](_0x45fe62);}if(0x0===_0x1ecbbb['size'])return;const _0x545f61=await lt['getMany'](_0x26b1a8,Array['from'](_0x1ecbbb));for(const _0x133e11 of _0x545f61)_0x4682c5['getUser'](_0x133e11['id'])||_0x4682c5['addUser'](_0x133e11);}}async function F(_0x3103a0){if('404'!==_0x3103a0['code'])throw _0x3103a0;}function dt(_0x198944){if((_0x51d568=_0x198944)['message']['startsWith']('cloud-services-internal-error:\x20Comments\x20Service\x20is\x20not\x20connected.')||_0x51d568['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x51d568['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.'))return new Promise(()=>{});var _0x51d568;throw _0x198944;}function B(_0x224763){return{'threadId':_0x224763['commentThreadId'],'commentId':_0x224763['commentId'],'content':_0x224763['content'],'createdAt':_0x224763['createdAt'],'authorId':_0x224763['userId'],'attributes':_0x224763['attributes']||{}};}class m extends _0x30d08e{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(_0x4d9aca){super(_0x4d9aca);const _0x4de1ed=this['editor']['config']['get']('collaboration.channelId');this['_bufferedRequests']=new Map(),this['_trackChangesService']=new m['TrackChangesService'](_0x4de1ed);}['init'](){const _0x1291cc=this['editor']['plugins']['get'](n),_0x493d55=this['editor']['plugins']['get']('TrackChangesEditing');return _0x493d55['adapter']={'getSuggestion':async _0x14cc84=>{await this['_waitForServiceReady']();const _0x49fe18=await this['_trackChangesService']['get'](_0x14cc84)['catch'](k);return await this['_fetchMissingUsersForThreads']([_0x49fe18]),_0x49fe18;},'addSuggestion':async({id:_0x30ad03,type:_0x195a62,data:_0x22d3a6,originalSuggestionId:_0x21e989,attributes:_0x640114})=>{await this['_waitForServiceReady']();const _0x3e7672={'id':_0x30ad03,'type':_0x195a62,'data':_0x22d3a6,'originalSuggestionId':_0x21e989,'attributes':_0x640114},_0x3463ea=await this['_trackChangesService']['add'](_0x30ad03,_0x195a62,_0x22d3a6,_0x21e989,_0x640114)['catch'](_0x2628e1=>{if(ut(_0x2628e1))return new Promise(_0x18be0d=>{this['_bufferedRequests']['set'](_0x30ad03,{'resolve':_0x18be0d,'suggestionData':_0x3e7672});});throw _0x2628e1;});return this['_bufferedRequests']['delete'](_0x30ad03),_0x3463ea;},'updateSuggestion':async(_0x578386,_0x35e9ce)=>{if(await this['_waitForServiceReady'](),'open'!==_0x35e9ce['state'])return this['_trackChangesService']['update'](_0x578386,_0x35e9ce)['catch'](k);}},this['listenTo'](this['_trackChangesService'],'suggestionUpdated',(_0x2ee1f5,_0x12d8c7)=>{_0x493d55['hasSuggestion'](_0x12d8c7['id'])&&(_0x493d55['getSuggestion'](_0x12d8c7['id'])['attributes']=_0x12d8c7['attributes']);}),this['_trackChangesService']['connect'](_0x1291cc['connection'])['then'](_0x48c34a=>(_0x1291cc['addToReconnectionStack'](this),this['_fetchMissingUsersForThreads'](_0x48c34a)['then'](()=>{for(const _0x26ab8f of _0x48c34a){_0x493d55['addSuggestionData'](_0x26ab8f)['_saved']=!0x0;}})));}async['reconnect'](){const _0x180472=this['editor']['plugins']['get']('TrackChangesEditing'),{connection:_0x17876c}=this['editor']['plugins']['get'](n),_0x585cf9=await this['_trackChangesService']['connect'](_0x17876c);await this['_fetchMissingUsersForThreads'](_0x585cf9);for(const {suggestionData:_0x352b59,resolve:_0x135565}of this['_bufferedRequests']['values']()){let _0x2d4beb=_0x585cf9['find'](_0x11ecc2=>_0x11ecc2['id']===_0x352b59['id']);_0x2d4beb||(_0x2d4beb=await this['_trackChangesService']['add'](_0x352b59['id'],_0x352b59['type'],_0x352b59['data'],_0x352b59['originalSuggestionId'])),_0x135565(_0x2d4beb);}for(const _0xb1cd3d of _0x585cf9)_0x180472['hasSuggestion'](_0xb1cd3d['id'])||_0x180472['addSuggestionData'](_0xb1cd3d);}async['_waitForServiceReady'](){this['_trackChangesService']['isConnected']||await new Promise(_0x45795a=>{this['listenTo'](this['_trackChangesService'],'connected',_0x348e68=>{_0x348e68['off'](),_0x45795a();});});}async['_fetchMissingUsersForThreads'](_0x1011e9){const _0x5e9fc3=this['editor']['plugins']['get'](_0x4b2f7d),{connection:_0x53615f}=this['editor']['plugins']['get'](n),_0x2a9168=new Set();for(const {authorId:_0x37207a}of _0x1011e9)_0x5e9fc3['getUser'](_0x37207a)||_0x2a9168['add'](_0x37207a);if(0x0===_0x2a9168['size'])return;const _0x5b2977=await lt['getMany'](_0x53615f,Array['from'](_0x2a9168));for(const _0x3ab3a4 of _0x5b2977)_0x5e9fc3['getUser'](_0x3ab3a4['id'])||_0x5e9fc3['addUser'](_0x3ab3a4);}}function k(_0x5409d6){if(ut(_0x5409d6))return new Promise(()=>{});throw _0x5409d6;}function ut(_0x54e41f){return _0x54e41f['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x54e41f['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}class g extends _0x30d08e{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 _0x3d2317=this['editor']['plugins']['get'](n),_0x34ec2f=this['editor']['plugins']['get']('CommentsEditing'),_0x50c3c3=this['editor']['plugins']['get'](s);return this['editor']['data']['once']('ready',()=>{this['listenTo'](_0x3d2317,'change:state',(_0x2bab61,_0x3b9174,_0x1bbb4b)=>{_0x34ec2f['isThreadsLoadingPaused']='connected'!==_0x1bbb4b;});}),this['listenTo'](_0x3d2317,'change:state',(_0xef6a0,_0x2e6fb0,_0x3a3500)=>{this['editor']['plugins']['get']('CommentsRepository')['switchReadOnly']('connected'!==_0x3a3500);}),_0x50c3c3['_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 _0x30d08e{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 _0x30d08e{static ['RevisionHistoryService']=/* #__PURE__ -- @preserve */
28
+ ((()=>it)());['_lastRequestId'];['_revisionTracker'];['_revisionHistoryService'];['_oldOffset'];static get['requires'](){return[n,l,'RevisionHistory',i,_0x4b2f7d];}static get['pluginName'](){return'CloudServicesRevisionHistoryAdapter';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x13af85){super(_0x13af85);const _0x5271d4=this['editor']['config']['get']('collaboration.channelId');this['_lastRequestId']=null,this['_revisionTracker']=this['editor']['plugins']['get']('RevisionTracker'),this['_revisionHistoryService']=new c['RevisionHistoryService'](_0x5271d4);}async['init'](){const _0x5d89a2=this['editor']['plugins']['get'](l),_0x1e9455=_0x5d89a2['serverHistory'],_0x333531=this['editor']['plugins']['get'](n);this['_revisionTracker']['setSource']({'history':_0x1e9455,'getLatestVersion':()=>this['_getLatestVersion'](),'getCurrentRevisionId':()=>_0x5d89a2['sessionId']});const _0x543179=this['editor']['config']['get']('cloudServices.bundleVersion')||nt,_0x5161d7=await tt['isBundleUploaded'](_0x333531['connection'],_0x543179);this['editor']['plugins']['get']('RevisionHistory')['adapter']={'getRevision':async({revisionId:_0x36fffc})=>(await this['_waitForServiceReady'](),await this['_revisionHistoryService']['getRevision'](_0x36fffc)),'updateRevisions':async _0x5b989b=>{await this['_waitForServiceReady']();const _0x44f220=this['_revisionTracker']['currentRevision'];if(_0x5161d7&&0x1===_0x5b989b['length']&&_0x5b989b[0x0]['id']===_0x44f220['id'])return _0x5b989b;for(const _0x4ba5d2 of _0x5b989b)_0x4ba5d2['id']===_0x44f220['id']&&(_0x4ba5d2['isEmptyCurrent']=_0x4ba5d2['fromVersion']===_0x4ba5d2['toVersion']);return this['_revisionHistoryService']['updateRevisions'](_0x5b989b,this['_lastRequestId'])['then'](_0x1ee776=>(this['_lastRequestId']=_0x1ee776,_0x5b989b))['catch'](_0x3dc14=>{if(st(_0x3dc14)||'400'===_0x3dc14['code']&&void 0x0!==_0x3dc14['data']['wrongRequestId']){for(const _0x293705 of _0x5b989b){!this['_revisionTracker']['repository']['getRevision'](_0x293705['id'])||this['_revisionTracker']['_bufferUpdate'](_0x293705['id'],_0x293705,!0x1);}if(st(_0x3dc14))throw _0x3dc14;return _0x5b989b;}throw _0x3dc14;});}},this['listenTo'](this['_revisionHistoryService'],'revisionsUpdated',(_0x1a5a12,{revisionsData:_0xcedb82,requestId:_0x3dc2cc})=>{Math['max'](..._0xcedb82['map'](_0x82b5f9=>_0x82b5f9['toVersion']))>this['_getLatestVersionFromServerOperations']()-0x1?this['_getLatestVersion']()['then'](()=>{this['_handleRevisionsUpdate'](_0xcedb82,_0x3dc2cc);}):this['_handleRevisionsUpdate'](_0xcedb82,_0x3dc2cc);});const {revisions:_0x2ddc65,requestId:_0x482147}=await this['_revisionHistoryService']['connect'](_0x333531['connection']);_0x333531['addToReconnectionStack'](this),this['_lastRequestId']=_0x482147,await this['_fetchMissingUsers'](_0x2ddc65);for(const _0x5b2bf0 of _0x2ddc65)this['_revisionTracker']['addRevisionData'](_0x5b2bf0);this['listenTo'](_0x5d89a2,'change:_isConnected',(_0x38298b,_0x258d9d,_0x1b54dd)=>{_0x1b54dd&&(this['_oldOffset']=_0x5d89a2['_offset'],_0x38298b['off']());}),this['_revisionTracker']['bind']('isEnabled')['to'](_0x333531,'state',_0x5c5826=>_0x5c5826===te['CONNECTED']);}async['reconnect'](){const _0xf9e1ec=this['editor']['plugins']['get'](n),_0x4bcb72=this['editor']['plugins']['get'](l),_0x523096=async()=>{const _0x174346=this['_revisionTracker']['currentRevision'],_0x51a476=_0x174346['id'],_0x10774e=_0x51a476!==_0x4bcb72['sessionId'];if(_0x10774e){const _0x8a9f83=_0x4bcb72['_offset']-this['_oldOffset'],_0x4f4ea3=this['_getLatestVersionFromServerOperations']();this['_revisionTracker']['_revisionDataBuilder']['reInit']();if(_0x174346['toVersion']+_0x8a9f83!==_0x4f4ea3){const _0xbc980b=_0x174346['fromVersion']+_0x8a9f83,_0x6a3f56=this['editor']['plugins']['get'](_0x4b2f7d),_0x571b5c=this['_revisionTracker']['buildRevisionData']({'revision':_0x174346,'from':_0xbc980b,'to':_0x4f4ea3});_0x571b5c['id']=_0x174346['id'];const _0x3fddab=_0x571b5c['authorsIds']['map'](_0x1296c9=>_0x6a3f56['getUser'](_0x1296c9));_0x174346['_update']({..._0x571b5c,'authors':_0x3fddab},!0x0),this['_revisionTracker']['_bufferUpdate'](_0x174346['id'],_0x571b5c,!0x0);}this['_revisionTracker']['_startingVersion']=_0x4f4ea3,(_0x174346['toVersion']===_0x174346['fromVersion']&&!this['_revisionTracker']['_bufferedUpdates']['has'](_0x51a476)&&this['_revisionTracker']['repository']['_revisions']['remove'](_0x51a476),this['_revisionTracker']['_createCurrentRevision'](_0x4f4ea3));}const {revisions:_0x4ccf95,requestId:_0x1ac397}=await this['_revisionHistoryService']['reconnect'](_0xf9e1ec['connection'],this['_lastRequestId']);_0x10774e&&_0x4ccf95['length']>0x0?_0x4bcb72['_handleReconnectionError']():(await this['_fetchMissingUsers'](_0x4ccf95),this['_handleRevisionsUpdate'](_0x4ccf95,_0x1ac397),this['_revisionTracker']['sendBufferedUpdates']());};return _0x4bcb72['_isConnected']?_0x523096():new Promise((_0x4b7392,_0x31ad5f)=>{_0x4bcb72['once']('change:_isConnected',()=>{_0x523096()['then'](_0x4b7392)['catch'](_0x31ad5f);});});}['destroy'](){super['destroy']();}async['_waitForServiceReady'](){this['_revisionHistoryService']['isConnected']||await new Promise(_0x391d24=>{this['listenTo'](this['_revisionHistoryService'],'connected',_0x191637=>{_0x191637['off'](),_0x391d24();});});}['_getLatestVersionFromServerOperations'](){const _0x4f700d=this['editor']['plugins']['get'](l)['serverHistory']['getOperations']()['reverse']();for(const _0x3f0316 of _0x4f700d)if('marker'!==_0x3f0316['type']||_0x3f0316['affectsData'])return _0x3f0316['baseVersion']+0x1;}['_getLatestVersion'](){const _0x123afb=this['editor']['plugins']['get'](l);return new Promise(_0x47ba7b=>{_0x123afb['_isPendingUpdate']?_0x123afb['once']('change:_isPendingUpdate',()=>{_0x47ba7b(this['_getLatestVersionFromServerOperations']());}):_0x47ba7b(this['_getLatestVersionFromServerOperations']());});}['_handleRevisionsUpdate'](_0x1c8035,_0xadde24){const _0x1fbed7=this['_revisionTracker']['repository'];this['_lastRequestId']=_0xadde24;for(const _0x100fe1 of _0x1c8035){const _0x47e7f1=_0x1fbed7['getRevision'](_0x100fe1['id']);if(_0x47e7f1){if((_0x100fe1['fromVersion']||_0x100fe1['toVersion'])&&(_0x100fe1['diffData']=null),_0x47e7f1===this['_revisionTracker']['currentRevision']){const _0xde4e6c=Math['max'](_0x47e7f1['toVersion'],_0x100fe1['toVersion']),_0x2675fe=Math['max'](_0x47e7f1['fromVersion'],_0x100fe1['fromVersion']);let _0x1f789b;_0x47e7f1['toVersion']===_0x100fe1['toVersion']&&_0x47e7f1['fromVersion']===_0x100fe1['fromVersion']?(_0x1f789b=!0x0,this['_preventResendingRevisionData'](_0x100fe1)):_0x100fe1['toVersion']===_0xde4e6c&&_0x100fe1['fromVersion']===_0x2675fe?_0x1f789b=!0x1:(_0x47e7f1['toVersion']===_0xde4e6c&&_0x47e7f1['fromVersion']===_0x2675fe||this['_fixRevision']({'revision':_0x47e7f1,'from':_0x2675fe,'to':_0xde4e6c}),_0x1f789b=!0x0),_0x1f789b&&(delete _0x100fe1['fromVersion'],delete _0x100fe1['toVersion'],delete _0x100fe1['diffData'],delete _0x100fe1['createdAt'],delete _0x100fe1['authorsIds']);}this['_revisionTracker']['setRevisionData'](_0x100fe1),this['_preventResendingRevisionData'](_0x100fe1);}else this['_revisionTracker']['addRevisionData'](_0x100fe1);}const _0x19b23d=_0x1fbed7['getRevisions']();_0x19b23d['reverse']();for(let _0x196ce2=0x0;_0x196ce2<_0x19b23d['length']-0x1;_0x196ce2++){const _0x1cfdd0=_0x19b23d[_0x196ce2],_0x23a345=_0x19b23d[_0x196ce2+0x1];if(_0x1cfdd0['fromVersion']<_0x23a345['toVersion']){const _0x2a13ff=_0x23a345['toVersion'],_0x49889b=Math['max'](_0x2a13ff,_0x1cfdd0['toVersion']);this['_fixRevision']({'revision':_0x1cfdd0,'from':_0x2a13ff,'to':_0x49889b});}}}['_fixRevision']({revision:_0x149dcb,from:_0x311599,to:_0x1e48f7}={}){const _0x164199=this['editor']['plugins']['get'](_0x4b2f7d),_0x13d618=this['_revisionTracker']['buildRevisionData']({'revision':_0x149dcb,'from':_0x311599,'to':_0x1e48f7});_0x13d618['authors']=_0x13d618['authorsIds']['map'](_0x4bd443=>_0x164199['getUser'](_0x4bd443)),_0x149dcb['_update'](_0x13d618);}['_preventResendingRevisionData'](_0x651f8e){const _0x23d94c={};_0x23d94c['id']=_0x651f8e['id'];for(const _0x1d4e39 of Object['keys'](_0x651f8e))'id'!==_0x1d4e39&&(_0x23d94c[_0x1d4e39]=void 0x0);this['_revisionTracker']['_bufferUpdate'](_0x23d94c['id'],_0x23d94c,!0x0);}async['_fetchMissingUsers'](_0x4d759f){const _0x3fcf62=this['editor']['plugins']['get'](_0x4b2f7d),{connection:_0xa4014f}=this['editor']['plugins']['get'](n),_0xb62051=new Set();for(const _0x178616 of _0x4d759f){for(const _0x2bd528 of _0x178616['authorsIds'])_0x35c36d(_0x2bd528);_0x178616['creatorId']&&_0x35c36d(_0x178616['creatorId']);}if(0x0===_0xb62051['size'])return;const _0x2448df=await lt['getMany'](_0xa4014f,Array['from'](_0xb62051));for(const _0x2315d1 of _0x2448df)_0x3fcf62['getUser'](_0x2315d1['id'])||_0x3fcf62['addUser'](_0x2315d1);function _0x35c36d(_0x252dd2){_0x3fcf62['getUser'](_0x252dd2)||_0xb62051['add'](_0x252dd2);}}}function st(_0x282e12){return _0x282e12['message']['startsWith']('cloud-services-internal-error:\x20Revision\x20History\x20Service\x20is\x20not\x20connected.')||_0x282e12['message']['startsWith']('cloud-services-internal-error:\x20Not\x20connected.')||_0x282e12['message']['startsWith']('cloud-services-internal-error:\x20Request\x20timeout.');}class mt extends _0x30d08e{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 _0x5f1438{['_collapseAt'];constructor(_0x267954,_0x470bee=0x6){super(_0x267954);const _0x20f39e=this['bindTemplate'];this['set']('isHidden',!0x0),this['set']('usersCount',0x0),this['_collapseAt']=_0x470bee,this['bind']('isHidden')['to'](this,'usersCount',_0x575648=>_0x575648<_0x470bee),this['setTemplate']({'tag':'div','attributes':{'class':['ck','ck-presence-list__list-item',_0x20f39e['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':_0x20f39e['to']('usersCount',_0x7f957d=>'+'+(_0x7f957d-this['_collapseAt']+0x2)['toString']())}]}]}]});}}class is extends _0x5f1438{['items'];['keystrokes'];constructor(_0xd27f70){super(_0xd27f70);const _0x473fda=this['bindTemplate'];this['items']=this['createCollection'](),this['keystrokes']=new _0x33e4ad(),this['set']({'hasPopup':!0x1,'isExpanded':!0x1}),this['setTemplate']({'tag':'div','attributes':{'aria-haspopup':_0x473fda['if']('hasPopup'),'aria-expanded':_0x473fda['to']('isExpanded',_0x505a83=>this['hasPopup']&&String(_0x505a83)),'aria-label':_0x473fda['to']('hasPopup',_0x504451=>V(_0xd27f70,_0x504451?'Collapsed\x20connected\x20users\x20list\x20(press\x20ENTER\x20to\x20open\x20it)':'Connected\x20users\x20list')),'role':'list','tabindex':_0x473fda['to']('hasPopup',_0x30932e=>!!_0x30932e&&0x0),'class':['ck','ck-presence-list__list']},'children':this['items'],'on':{'mouseenter':_0x473fda['to'](()=>this['fire']('presencelist:show')),'mouseleave':_0x473fda['to'](_0x570407=>{const _0x461a8f=_0x570407,_0x5d443e=document['querySelector']('.ck-presence-list__dropdown-list'),_0x1c76de=document['querySelector']('.ck-balloon-panel_with-arrow');_0x5d443e?.['contains'](_0x461a8f['relatedTarget'])||_0x1c76de?.['contains'](_0x461a8f['relatedTarget'])||this['fire']('presencelist:hide');})}}),this['on']('change:hasPopup',(_0x38fb6c,_0x8c5c45,_0x339f3e)=>{this['element']&&(_0x339f3e?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 _0x5f1438{['counterView'];['inlineListView'];constructor(_0xc73518,_0xa16673=0x6){super(_0xc73518);const _0x272d6b=this['bindTemplate'];this['set']('isCollapsed',!0x0),this['counterView']=new b(this['locale'],_0xa16673),this['inlineListView']=new is(_0xc73518),this['inlineListView']['bind']('hasPopup')['to'](this,'isCollapsed'),this['listenTo'](this['inlineListView']['items'],'change',()=>{for(const _0x66949b of this['inlineListView']['items'])_0x66949b['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',_0x272d6b['if']('isCollapsed','ck-presence-list--collapsed')]},'children':[this['inlineListView']]});}}class L extends _0x5f1438{['listWrapperView'];constructor(_0x4fec5b,_0x44ecc7){super(_0x4fec5b);const _0x21cdb5=this['bindTemplate'];this['listWrapperView']=new pt(_0x4fec5b,_0x44ecc7),this['setTemplate']({'tag':'div','attributes':{'tabindex':-0x1,'role':'application','class':['ck','ck-presence-list__dropdown-list'],'aria-label':V(_0x4fec5b,'Connected\x20users\x20list\x20dropdown\x20menu')},'children':[this['listWrapperView']],'on':{'mouseleave':_0x21cdb5['to'](_0x5c3451=>{const _0x27d292=_0x5c3451,_0x41a635=document['querySelector']('.ck-presence-list__list'),_0x318764=document['querySelector']('.ck-balloon-panel_with-arrow');_0x41a635?.['contains'](_0x27d292['relatedTarget'])||_0x318764?.['contains'](_0x27d292['relatedTarget'])||this['fire']('presencelist:hide');})}});}}class pt extends _0x4e7453{constructor(_0x18a964,_0x54b0b8){super(_0x18a964);const _0x56e92e=this['bindTemplate'];this['set']('_isScrollable',!0x1),this['setTemplate']({'tag':_0x54b0b8?'div':'ul','attributes':{'class':['ck','ck-reset','ck-list','ck-presence-list__dropdown-list-wrapper',_0x56e92e['if']('_isScrollable','ck-presence-list__dropdown-list-wrapper_scrollable')],'role':_0x56e92e['to']('role'),'aria-label':_0x56e92e['to']('ariaLabel'),'aria-labelledby':_0x56e92e['to']('ariaLabelledBy')},'children':this['items']}),this['listenTo'](_0x32a304['window'],'resize',()=>this['checkIfScrollable']()),this['items']['on']('change',()=>this['checkIfScrollable']());}['render'](){super['render'](),this['checkIfScrollable']();}['checkIfScrollable'](){const _0x19c3b=this['element'];_0x19c3b&&(this['_isScrollable']=Math['max'](_0x19c3b['scrollHeight'],_0x19c3b['clientHeight'])>0.8*window['innerHeight']);}}class j extends rt{['userView'];constructor(_0x106023,_0x5900b3,_0x13bce4){super(_0x106023);const _0x4ca500=this['bindTemplate'];this['userView']=new ct(_0x106023,_0x5900b3);const _0x29ca86={'tag':'li','attributes':{'class':['ck','ck-presence-list__dropdown-list-item'],'tabindex':-0x1,'role':'presentation','aria-label':_0x5900b3['name']},'children':[this['userView'],{'tag':'span','attributes':{'class':['ck','ck-user__full-name']},'children':[{'text':_0x5900b3['name']}]},{'tag':'span','attributes':{'class':['ck','ck-presence-list__marker',_0x5900b3['color']['getBackgroundColorClass']()],'aria-hidden':'true'}}]};_0x13bce4&&(_0x29ca86['tag']='button',_0x29ca86['on']={'click':_0x4ca500['to'](()=>this['fire']('execute'))}),this['setTemplate'](_0x29ca86);}['focus'](){this['element']['focus']();}}class A extends _0x5f1438{['userView'];['markerView'];constructor(_0x180778,_0x9dcdeb,_0x2c1702){super(_0x180778);const _0x928d8b=this['bindTemplate'];this['set']('isFocusable',!0x1),this['set']('hasTooltip',!0x0),this['set']('tooltipPosition',''),this['userView']=new ct(_0x180778,_0x9dcdeb),this['markerView']=new at(_0x180778,_0x9dcdeb);const _0x5afa32=new ot(_0x180778);_0x5afa32['template']['tag']='span',_0x5afa32['text']=_0x9dcdeb['name'];const _0x19ceb8={'tag':'div','attributes':{'class':['ck','ck-presence-list__list-item'],'role':'listitem','tabindex':_0x928d8b['to']('isFocusable',_0x3229ba=>!!_0x3229ba&&0x0),'aria-labelledby':_0x5afa32['id'],'data-cke-tooltip-text':this['userView']['name'],'data-cke-tooltip-position':_0x928d8b['to']('tooltipPosition'),'data-cke-tooltip-disabled':_0x928d8b['to']('hasTooltip',_0x39380a=>!_0x39380a),'data-cke-tooltip-class':'ck-presence-list__list-item__tooltip'},'children':[this['userView'],this['markerView'],_0x5afa32]};_0x2c1702&&(_0x19ceb8['tag']='button',_0x19ceb8['on']={'click':_0x928d8b['to'](()=>this['fire']('execute'))}),this['setTemplate'](_0x19ceb8);}}class at extends _0x5f1438{constructor(_0x1f9870,_0x4821b6){super(_0x1f9870),this['setTemplate']({'tag':'span','attributes':{'class':['ck','ck-presence-list__marker',_0x4821b6['color']['getBackgroundColorClass']()],'aria-hidden':'true'}});}}const x={'collapseAt':0x6,'displayMe':!0x0};class r extends _0x349f1b{['currentDisplayedUsers'];['balloonPanelView'];['view'];['presenceDropdownView'];['_bodyCollection']=null;static get['pluginName'](){return'PresenceListUI';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x3c4be2){super(_0x3c4be2),this['context']['config']['define']('presenceList',x);const _0x9c8b1d=_0x3c4be2['config']['get']('presenceList.collapseAt');if('number'!=typeof _0x9c8b1d)throw new _0x3b6d0e('presencelist-collapseat-invalid-format',this);if(_0x9c8b1d<0x1)throw new _0x3b6d0e('presencelist-collapseat-invalid-format',this);this['_allConnectedUsers']=this['context']['plugins']['get'](i)['allConnectedUsers'],this['set']('usersCount',0x0),this['currentDisplayedUsers']=new _0x1a1ea0(),this['balloonPanelView']=new _0x1249c9(),this['balloonPanelView']['class']='ck\x20ck-presence-list__balloon',this['view']=this['_createView'](),this['presenceDropdownView']=void 0x0;}static get['requires'](){return[i];}['init'](){for(const _0x47b8ee of this['_allConnectedUsers'])this['_handleUserAdd'](_0x47b8ee);this['listenTo'](this['_allConnectedUsers'],'add',(_0x591f62,_0x1e6423)=>{this['_handleUserAdd'](_0x1e6423);}),this['listenTo'](this['_allConnectedUsers'],'remove',(_0x5f54f1,_0x3b1537)=>{this['_handleUserRemove'](_0x3b1537);});}['_createView'](){const _0x366aa0=this['context'],_0x24960a=new v(this['context']['locale'],this['context']['config']['get']('presenceList.collapseAt')),_0x4bc339=this['balloonPanelView'];if(!_0x45183b(_0x366aa0['config']['get']('presenceList.container')))throw new _0x3b6d0e('presencelist-missing-container',this);return _0x24960a['counterView']['bind']('usersCount')['to'](this),_0x24960a['bind']('isCollapsed')['to'](this,'usersCount',_0xcbcbdc=>{const {collapseAt:_0x74c26d}=_0x366aa0['config']['get']('presenceList'),_0xf895d=_0xcbcbdc>=_0x74c26d;if(_0xf895d&&!_0x24960a['inlineListView']['items']['find'](_0x440ddd=>_0x440ddd instanceof b)){const _0x12f7e1=this['context']['config']['get']('presenceList.collapseAt')-0x1;this['currentDisplayedUsers']['length']==_0x12f7e1&&this['currentDisplayedUsers']['length']>0x1&&this['currentDisplayedUsers']['remove'](this['currentDisplayedUsers']['length']-0x1),_0x24960a['inlineListView']['items']['add'](_0x24960a['counterView']);}return _0xf895d||this['hideDropdown'](),_0xf895d;}),_0x24960a['inlineListView']['items']['bindTo'](this['currentDisplayedUsers'])['using'](_0x19c402=>{const _0x8e5a94=_0x366aa0['config']['get']('presenceList'),_0x3e3a18=new A(_0x366aa0['locale'],_0x19c402,!!_0x8e5a94['onClick']);return _0x3e3a18['bind']('hasTooltip')['to'](_0x24960a,'isCollapsed',_0x3cc611=>!_0x3cc611),_0x3e3a18['bind']('isFocusable')['to'](_0x24960a,'isCollapsed',_0x156d2a=>!_0x156d2a),_0x8e5a94['onClick']&&this['listenTo'](_0x3e3a18,'execute',()=>{this['view']['isCollapsed']||_0x8e5a94['onClick'](_0x19c402,_0x3e3a18['element']);}),_0x3e3a18;}),this['listenTo'](_0x24960a['inlineListView'],'presencelist:show',()=>{this['view']['isCollapsed']&&this['showDropdown']();}),this['listenTo'](_0x24960a['inlineListView'],'presencelist:hide',()=>{this['presenceDropdownView']&&this['hideDropdown']();}),_0x24960a['inlineListView']['keystrokes']['set']('Enter',(_0x1de75e,_0x2633d3)=>{this['view']['isCollapsed']&&(this['showDropdown'](),_0x2633d3());}),_0x24960a['render'](),_0x4bc339['render'](),_0x43bdc4({'emitter':_0x24960a,'activator':()=>_0x4bc339['isVisible'],'contextElements':[_0x4bc339['element'],_0x24960a['inlineListView']['element']],'callback':()=>this['hideDropdown']()}),_0x366aa0['config']['get']('presenceList.container')['appendChild'](_0x24960a['element']),this['_bodyCollection']=new _0x1aaf86(this['context']['locale']),this['_bodyCollection']['attachToDom'](),this['_bodyCollection']['add'](this['balloonPanelView']),_0x24960a;}['_handleUserAdd'](_0x3df9ea){if(!this['context']['config']['get']('presenceList.displayMe')&&_0x3df9ea['isMe'])return;const _0x1e78f3=this['context']['config']['get']('presenceList.collapseAt')-0x1;for(this['usersCount']++;this['currentDisplayedUsers']['length']>=_0x1e78f3-(this['view']['isCollapsed']?0x1:0x0)&&this['currentDisplayedUsers']['length']>0x1;)this['currentDisplayedUsers']['remove'](0x1);const _0x44b73d=_0x3df9ea['isMe']?0x0:this['currentDisplayedUsers']['length'];this['currentDisplayedUsers']['add'](_0x3df9ea,_0x44b73d);}['_handleUserRemove'](_0x542c23){this['usersCount']--;const {collapseAt:_0x139038}=this['context']['config']['get']('presenceList'),_0x476fa6=this['usersCount']>=_0x139038;if(this['currentDisplayedUsers']['get'](_0x542c23['id']))this['currentDisplayedUsers']['remove'](_0x542c23['id']);else{if(_0x476fa6&&this['currentDisplayedUsers']['length']+0x1===_0x139038-0x1)return;}if(this['currentDisplayedUsers']['length']+(_0x476fa6?0x1:0x0)<this['usersCount']){for(const _0x1055e9 of Array['from'](this['_allConnectedUsers'])['reverse']())if(!this['currentDisplayedUsers']['get'](_0x1055e9['id'])&&(this['currentDisplayedUsers']['add'](_0x1055e9,Math['min'](this['currentDisplayedUsers']['length']-(_0x476fa6?0x1:0x0),0x1)),this['currentDisplayedUsers']['length']+(_0x476fa6?0x1:0x0)===_0x139038-0x1))return;}}['showDropdown'](){if(this['presenceDropdownView'])return;const _0xc6149b=this['context']['config']['get']('presenceList');this['presenceDropdownView']=new L(this['context']['locale'],!!_0xc6149b['onClick']),this['view']['inlineListView']['isExpanded']=!0x0,this['listenTo'](this['presenceDropdownView'],'presencelist:hide',()=>{this['presenceDropdownView']&&this['hideDropdown']();});const {listWrapperView:_0x57662c}=this['presenceDropdownView'];_0x57662c['items']['bindTo'](this['_allConnectedUsers'])['using'](_0x503931=>{if(!_0xc6149b['displayMe']&&_0x503931['isMe'])return null;const _0x43b847=new j(this['context']['locale'],_0x503931,!!_0xc6149b['onClick']);return _0xc6149b['onClick']&&this['listenTo'](_0x43b847,'execute',()=>{_0xc6149b['onClick'](_0x503931,_0x43b847['element']);}),_0x43b847;}),this['balloonPanelView']['content']['add'](this['presenceDropdownView']),this['balloonPanelView']['pin']({'target':this['view']['inlineListView']['element']}),_0x57662c['focus'](),_0x57662c['checkIfScrollable']();const _0x195b8f=(_0x289731,_0x4a253)=>{this['hideDropdown'](),this['view']['inlineListView']['focus'](),_0x4a253();};_0x57662c['keystrokes']['set']('Esc',_0x195b8f),_0x57662c['keystrokes']['set']('Shift+Tab',_0x195b8f),_0x57662c['keystrokes']['set']('Tab',(_0x1ccbf2,_0x3d58b)=>{!function(_0x1b37bf){const _0x371237=['a','button','input','select','textarea','[tabindex]','[contenteditable]']['map'](_0x147c94=>_0x147c94+':not([disabled]):not([tabindex=\x22-1\x22])')['join'](','),_0x5f232c=[...document['body']['querySelectorAll'](_0x371237)]['filter'](_0xabf611=>_0xabf611===document['activeElement']||_0xabf611['offsetWidth']+_0xabf611['offsetHeight']>0x0)['sort']((_0x4b419e,_0x489b19)=>(_0x4b419e['tabIndex']||0x0)-(_0x489b19['tabIndex']||0x0)),_0x2ed299=_0x5f232c['indexOf'](_0x1b37bf),_0x58ef88=_0x5f232c[(_0x2ed299+0x1)%_0x5f232c['length']];_0x58ef88&&_0x58ef88['focus']();}(this['view']['element']),this['hideDropdown'](),_0x3d58b();}),_0x57662c['focusTracker']['add'](this['view']['element']),_0x57662c['focusTracker']['on']('change:isFocused',(_0x310fe8,_0x1060b1,_0xb5cd08)=>{_0xb5cd08||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 _0x349f1b{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};
@@ -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':_0x6f10d7=>0x1!=_0x6f10d7}};
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':_0x5d248c=>0x1!=_0x5d248c}};