@ckeditor/ckeditor-cloud-services-collaboration 28.0.0 → 32.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (91) hide show
  1. package/package.json +6 -5
  2. package/src/ckeditorcloudserviceserror.js +1 -1
  3. package/src/collaborativeeditingservice/collaborativeeditingservice.js +1 -1
  4. package/src/collaborativeeditingservice/descriptors/operationmetadatadescriptor.js +1 -1
  5. package/src/collaborativeeditingservice/helpers/operationmetadatahelpers.js +1 -1
  6. package/src/collaborativeeditingservice/messages/collaborativeeditingconnectmessage.js +1 -1
  7. package/src/collaborativeeditingservice/messages/collaborativeeditingreconnectmessage.js +1 -1
  8. package/src/collaborativeeditingservice/messages/collaborativeeditingupdatemessage.js +1 -1
  9. package/src/collaborativeeditingservice/messages/getdocumentdetailsmessage.js +1 -1
  10. package/src/collaborativeeditingservice/responses/collaborativeeditingconnectresponse.js +1 -1
  11. package/src/collaborativeeditingservice/responses/collaborativeeditingresponse.js +1 -1
  12. package/src/collaborativeeditingservice/responses/getdocumentdetailsresponse.js +1 -1
  13. package/src/comments-v2/commentsservice.js +1 -1
  14. package/src/comments-v2/descriptors/commentdescriptor.js +1 -1
  15. package/src/comments-v2/descriptors/commentsthreaddescriptor.js +1 -1
  16. package/src/comments-v2/messages/addcommentmessage.js +1 -1
  17. package/src/comments-v2/messages/connectmessage.js +1 -1
  18. package/src/comments-v2/messages/getcommentthreadmessage.js +1 -1
  19. package/src/comments-v2/messages/getdocumentthreadsmessage.js +1 -1
  20. package/src/comments-v2/messages/removecommentmessage.js +1 -1
  21. package/src/comments-v2/messages/removecommentthreadmessage.js +1 -1
  22. package/src/comments-v2/messages/updatecommentmessage.js +1 -1
  23. package/src/comments-v2/responses/addcommentresponse.js +1 -1
  24. package/src/comments-v2/responses/connectresponse.js +1 -1
  25. package/src/comments-v2/responses/getcommentthreadresponse.js +1 -1
  26. package/src/comments-v2/responses/getdocumentthreadsresponse.js +1 -1
  27. package/src/descriptor.js +1 -1
  28. package/src/descriptors/keyvaluedescriptor.js +1 -1
  29. package/src/editor/editorservice.js +1 -1
  30. package/src/editor/messages/iseditorbundleuploadedmessage.js +1 -1
  31. package/src/editor/responses/iseditorbundleuploadedresponse.js +1 -1
  32. package/src/errors/ServiceNotConnectedError.js +1 -1
  33. package/src/index.js +1 -1
  34. package/src/message.js +1 -1
  35. package/src/messagescompressor.js +1 -1
  36. package/src/messagesmapper.js +1 -1
  37. package/src/revision-history/descriptors/revisiondescriptor.js +1 -1
  38. package/src/revision-history/messages/revisionhistoryconnectmessage.js +1 -1
  39. package/src/revision-history/messages/revisionhistorygetrevisionmessage.js +1 -1
  40. package/src/revision-history/messages/revisionhistoryreconnectmessage.js +1 -1
  41. package/src/revision-history/messages/revisionhistoryupdaterevisionsmessage.js +1 -1
  42. package/src/revision-history/responses/revisionhistoryconnectresponse.js +1 -1
  43. package/src/revision-history/responses/revisionhistorygetrevisionresponse.js +1 -1
  44. package/src/revision-history/responses/revisionhistoryupdaterevisionsresponse.js +1 -1
  45. package/src/revision-history/revisionhistoryservice.js +1 -1
  46. package/src/sessions/descriptors/sessiondescriptor.js +1 -1
  47. package/src/sessions/messages/sessionsconnectmessage.js +1 -1
  48. package/src/sessions/messages/socketconnectmessage.js +1 -1
  49. package/src/sessions/messages/socketdisconnectmessage.js +1 -1
  50. package/src/sessions/responses/sessionsconnectresponse.js +1 -1
  51. package/src/sessions/sessioncollection.js +1 -1
  52. package/src/sessions/sessions.js +1 -1
  53. package/src/track-changes/descriptors/suggestiondescriptor.js +1 -1
  54. package/src/track-changes/messages/addsuggestionmessage.js +1 -1
  55. package/src/track-changes/messages/connectmessage.js +1 -1
  56. package/src/track-changes/messages/getallsuggestionsmessage.js +1 -1
  57. package/src/track-changes/messages/getsuggestionmessage.js +1 -1
  58. package/src/track-changes/messages/updatesuggestionmessage.js +1 -1
  59. package/src/track-changes/responses/addsuggestionresponse.js +1 -1
  60. package/src/track-changes/responses/connectresponse.js +1 -1
  61. package/src/track-changes/responses/getallsuggestionsresponse.js +1 -1
  62. package/src/track-changes/responses/getsuggestionresponse.js +1 -1
  63. package/src/track-changes/trackchangesservice.js +1 -1
  64. package/src/users/descriptors/userdescriptor.js +1 -1
  65. package/src/users/messages/getmanyusersmessage.js +1 -1
  66. package/src/users/messages/getusermessage.js +1 -1
  67. package/src/users/responses/getmanyusersresponse.js +1 -1
  68. package/src/users/responses/getuserresponse.js +1 -1
  69. package/src/users/user.js +1 -1
  70. package/src/version.js +1 -1
  71. package/src/websocketgateway/channel.js +1 -1
  72. package/src/websocketgateway/messages/channelmessage.js +1 -1
  73. package/src/websocketgateway/parser/packetparser.js +1 -1
  74. package/src/websocketgateway/parser/packets/bytesbytespacketdatamessage.js +1 -1
  75. package/src/websocketgateway/parser/packets/numberbytespacketdatamessage.js +1 -1
  76. package/src/websocketgateway/parser/packets/numbernumberpacketdatamessag.js +1 -1
  77. package/src/websocketgateway/parser/packets/numberobjectpacketdatamessage.js +1 -1
  78. package/src/websocketgateway/parser/packets/numberstringpacketdatamessag.js +1 -1
  79. package/src/websocketgateway/parser/packets/objectbufferpacketdatamessage.js +1 -1
  80. package/src/websocketgateway/parser/packets/objectobjectpacketdatamessage.js +1 -1
  81. package/src/websocketgateway/parser/packets/packagedatamessage.js +1 -1
  82. package/src/websocketgateway/parser/packets/packetmessage.js +1 -1
  83. package/src/websocketgateway/parser/packets/packetoptionsmessage.js +1 -1
  84. package/src/websocketgateway/parser/packets/stringbytespacketdatamessage.js +1 -1
  85. package/src/websocketgateway/parser/packets/stringnumberpacketdatamessage.js +1 -1
  86. package/src/websocketgateway/parser/packets/stringobjectpacketdatamessage.js +1 -1
  87. package/src/websocketgateway/parser/packets/stringstringpacketdatamessage.js +1 -1
  88. package/src/websocketgateway/parser/parser.js +1 -1
  89. package/src/websocketgateway/parser/parserutils.js +1 -1
  90. package/src/websocketgateway/requestsmanager.js +23 -0
  91. package/src/websocketgateway/websocketgateway.js +1 -1
@@ -0,0 +1,23 @@
1
+ /*
2
+ * Copyright (c) 2016 - 2022, CKSource Holding sp. z o.o. All rights reserved.
3
+ *
4
+ *
5
+ *
6
+ *
7
+ * +---------------------------------------------------------------------------------+
8
+ * | |
9
+ * | Hello stranger! |
10
+ * | |
11
+ * | |
12
+ * | What you're currently looking at is the source code of a legally protected, |
13
+ * | proprietary software. Any attempts to deobfuscate / disassemble this code |
14
+ * | are forbidden and will result in legal consequences. |
15
+ * | |
16
+ * | |
17
+ * +---------------------------------------------------------------------------------+
18
+ *
19
+ *
20
+ *
21
+ *
22
+ */
23
+ 'use strict';var __importDefault=this&&this['__importDefault']||function(_0x6239be){return _0x6239be&&_0x6239be['__esModule']?_0x6239be:{'default':_0x6239be};};Object['defineProperty'](exports,'__esModule',{'value':!0x0});const ckeditorcloudserviceserror_1=__importDefault(require('../ckeditorcloudserviceserror'));class WebSocketRequest{constructor(_0x4011ac,_0xde4340){this['_context']=_0x4011ac,this['_deferredPromise']=function(){let _0x2e7dc0,_0x40a427;const _0x4cf613=new Promise((_0xf1aa68,_0x239bcf)=>{_0x2e7dc0=_0xf1aa68,_0x40a427=_0x239bcf;});return{'resolve':_0x2e7dc0,'reject':_0x40a427,'promise':_0x4cf613};}(),this['timeout']=setTimeout(()=>this['error'](new ckeditorcloudserviceserror_1['default']('Request\x20timeout.',this['_context'])),_0xde4340);}get['promise'](){return this['_deferredPromise']['promise'];}['response'](_0x4cd4ad){this['_deferredPromise']['resolve'](_0x4cd4ad);}['error'](_0x32732c){this['_deferredPromise']['reject'](_0x32732c);}}exports['default']=class{constructor(_0x340f3a){this['_context']=_0x340f3a,this['_requests']=new Set();}async['send'](_0x16e06e,_0x771269=0x2710){const _0x3c9293=this['_createRequest'](_0x771269);try{return _0x16e06e(_0x3c9293),await _0x3c9293['promise'];}finally{this['_finishRequest'](_0x3c9293);}}['errorAll'](_0x433597){for(const _0x2cb8d6 of this['_requests'])_0x2cb8d6['error'](_0x433597);}['_createRequest'](_0x591262){const _0x363bdd=new WebSocketRequest(this['_context'],_0x591262);return this['_requests']['add'](_0x363bdd),_0x363bdd;}['_finishRequest'](_0x3a2985){this['_requests']['delete'](_0x3a2985),clearTimeout(_0x3a2985['timeout']);}};
@@ -20,4 +20,4 @@
20
20
  *
21
21
  *
22
22
  */
23
- 'use strict';var __importDefault=this&&this['__importDefault']||function(_0x1b18f9){return _0x1b18f9&&_0x1b18f9['__esModule']?_0x1b18f9:{'default':_0x1b18f9};};Object['defineProperty'](exports,'__esModule',{'value':!0x0});const socket_io_client_1=__importDefault(require('socket.io-client')),url_parse_1=__importDefault(require('url-parse')),mix_1=__importDefault(require('@ckeditor/ckeditor5-utils/src/mix')),priorities_1=__importDefault(require('@ckeditor/ckeditor5-utils/src/priorities')),observablemixin_1=__importDefault(require('@ckeditor/ckeditor5-utils/src/observablemixin')),channel_1=__importDefault(require('./channel')),user_1=__importDefault(require('./../users/user')),version_1=__importDefault(require('./../version')),ckeditorcloudserviceserror_1=__importDefault(require('./../ckeditorcloudserviceserror')),parser_1=require('./parser/parser');var WEB_SOCKET_GATEWAY_STATES;!function(_0xbf9dbf){_0xbf9dbf['DISCONNECTED']='disconnected',_0xbf9dbf['CONNECTING']='connecting',_0xbf9dbf['CONNECTED']='connected';}(WEB_SOCKET_GATEWAY_STATES=exports['WEB_SOCKET_GATEWAY_STATES']||(exports['WEB_SOCKET_GATEWAY_STATES']={}));class WebSocketGateway{constructor(_0x3edfde,_0x5dfeab,_0x4784a0={},_0x51a8ff=socket_io_client_1['default'],_0x27997f=user_1['default']['get']){if(this['_token']=_0x5dfeab,this['_options']=_0x4784a0,this['_connectionProvider']=_0x51a8ff,this['_userFactory']=_0x27997f,this['_channels']=new Map(),this['_connectionAttempt']=0x0,!_0x3edfde)throw new TypeError('Api\x20address\x20must\x20be\x20provided.');if(!this['_token'])throw new TypeError('Token\x20must\x20be\x20provided.');this['_url']=url_parse_1['default'](_0x3edfde['replace'](/^(?!(?:\w+:)?\/\/)/,'https://')),this['set']('state','disconnected'),this['set']('socketId',void 0x0),this['set']('me',void 0x0),this['on']('change:state',async(_0x17a7e6,_0x2e5129,_0x15610a)=>{var _0x9bff6,_0x202b3a;if(_0x15610a===WebSocketGateway['STATE_CONNECTED'])try{this['me']=await this['_userFactory']['call'](user_1['default'],this,null===(_0x202b3a=null===(_0x9bff6=this['_socket'])||void 0x0===_0x9bff6?void 0x0:_0x9bff6['auth'])||void 0x0===_0x202b3a?void 0x0:_0x202b3a['userId']);}catch(_0x1fbb5c){}},{'priority':WebSocketGateway['_CHANGE_STATE_EVENT_PRIORITY']}),this['on']('error',(_0x2d18e2,_0x24e342)=>{this['_options']['onError']?this['_options']['onError'](_0x24e342):console['log'](_0x24e342);});}get['sessionId'](){return this['socketId'];}['disconnect'](){var _0x3561d7;this['state']!==WEB_SOCKET_GATEWAY_STATES['DISCONNECTED']&&(null===(_0x3561d7=this['_socket'])||void 0x0===_0x3561d7||_0x3561d7['disconnect'](),this['_socket']=void 0x0,this['state']=WEB_SOCKET_GATEWAY_STATES['DISCONNECTED']);}async['reconnect'](){this['_socket']||this['state']!==WEB_SOCKET_GATEWAY_STATES['DISCONNECTED']||(await this['_token']['refreshToken'](),await this['_connect']());}static async['connect'](_0x16122f,_0x368dcf='local.cs.dev:443/ws-v2',_0x4f01c3={},_0x4e897a=socket_io_client_1['default'],_0x31f825=user_1['default']['get']){const _0x1e46d0=new WebSocketGateway(_0x368dcf,_0x16122f,_0x4f01c3,_0x4e897a,_0x31f825);return await _0x1e46d0['_connect'](),_0x1e46d0;}['_sendRequest'](_0x3a4562,_0x43d929,_0x51696a){if(!_0x3a4562)throw new ckeditorcloudserviceserror_1['default']('`serviceName`\x20must\x20be\x20provided.',this);if(this['state']!==WebSocketGateway['STATE_CONNECTED'])throw new ckeditorcloudserviceserror_1['default']('Not\x20connected.',this);if(!this['_socket']||!this['_socket']['isAuthenticated'])throw new ckeditorcloudserviceserror_1['default']('Not\x20authenticated.',this);const _0x4795cc=new ArrayBuffer(_0x51696a['length']+0x2),_0xb27bd3=new Uint8Array(_0x4795cc);return _0xb27bd3[0x0]=_0x3a4562,_0xb27bd3[0x1]=parseInt(_0x43d929),_0xb27bd3['set'](_0x51696a,0x2),this['_emit'](0x1,_0xb27bd3);}['_getChannel'](_0x308597,_0xc2a2a){const _0x5b6ecc=''+_0x308597+_0xc2a2a;return!this['_channels']['has'](_0x5b6ecc)&&this['_socket']&&this['_channels']['set'](_0x5b6ecc,new channel_1['default'](_0x5b6ecc,this,this['_socket'])),this['_channels']['get'](_0x5b6ecc);}['_connect'](){return new Promise((_0x1cf9e6,_0x366e6e)=>{const _0x1fe08c=this['_setupSocket']();!this['socketId']&&_0x1fe08c['on']('reconnect_error',()=>{this['_reconnectionAttemptError'](_0x366e6e);}),_0x1fe08c['once']('connect',async()=>{try{await this['_onConnect'](),_0x1cf9e6();}catch(_0x2bf9e1){_0x366e6e(_0x2bf9e1);}}),_0x1fe08c['connect']();});}['_setupSocket'](){var _0x3ac0dc;if(this['_socket'])return this['_socket'];const _0x184e66=this['_url']['port']||('http:'===this['_url']['protocol']?0x50:0x1bb),_0x1c57bb=(this['_url']['protocol']||'https:')+'//'+this['_url']['hostname']+':'+_0x184e66,_0x5e4cf5=this['_connectionProvider'](_0x1c57bb,{'parser':{'Encoder':parser_1['Encoder'],'Decoder':parser_1['Decoder']},'path':'/ws-v2/ws','transports':['websocket'],'timeout':void 0x0!==this['_options']['timeout']?this['_options']['timeout']:0x1388,'reconnection':void 0x0===this['_options']['autoReconnect']||this['_options']['autoReconnect'],'reconnectionDelay':0x3e8,'reconnectionDelayMax':0x1388,'rejectUnauthorized':void 0x0===this['_options']['rejectUnauthorized']||this['_options']['rejectUnauthorized'],'query':{'version':version_1['default']},'agent':null!==(_0x3ac0dc=this['_options']['agent'])&&void 0x0!==_0x3ac0dc&&_0x3ac0dc});return this['state']=WEB_SOCKET_GATEWAY_STATES['CONNECTING'],_0x5e4cf5['on']('connect',()=>{this['socketId']=_0x5e4cf5['id'];}),_0x5e4cf5['on']('reconnecting',_0x403abe=>{this['state']=WEB_SOCKET_GATEWAY_STATES['CONNECTING'],this['_connectionAttempt']=_0x403abe;}),_0x5e4cf5['on']('reconnect',this['_onReconnect']['bind'](this)),_0x5e4cf5['on']('disconnect',this['_onDisconnect']['bind'](this)),_0x5e4cf5['on']('error',this['_onError']['bind'](this)),_0x5e4cf5['on']('unauthorized',this['_onUnauthorized']['bind'](this)),this['_socket']=_0x5e4cf5,_0x5e4cf5;}['_emit'](_0x3e11a0,_0x1e81f5){const _0x450971=this['_socket'];return new Promise((_0x8c1420,_0x283c3d)=>{_0x450971['binary'](!0x1)['emit'](_0x3e11a0,_0x1e81f5,(_0x51f4cb,_0xb4767d)=>{_0x51f4cb&&_0x283c3d(ckeditorcloudserviceserror_1['default']['fromPublicError'](_0x51f4cb,this)),_0x8c1420(_0xb4767d);});});}['_addAuthData'](_0xe57720,_0x5f4089){this['_socket']['auth']={'environmentId':_0xe57720,'userId':_0x5f4089},this['_socket']['isAuthenticated']=!0x0;}['_removeAuthData'](){this['_socket']['isAuthenticated']=!0x1,delete this['_socket']['auth'];}async['_onConnect'](){await this['_authenticate'](this['_token']['value']),this['state']=WEB_SOCKET_GATEWAY_STATES['CONNECTED'];const _0x192c86=async(_0x3278df,_0x177746,_0x45400d)=>{try{await this['_authenticate'](_0x45400d);}catch(_0x56431e){}};this['_token']['on']('change:value',_0x192c86),this['_socket']['off']('reconnect_error'),this['on']('disconnect',()=>{this['_token']['off']('change:value',_0x192c86);});}async['_onReconnect'](){await this['_token']['refreshToken'](),await this['_onConnect']();}['_onDisconnect'](){this['state']=WEB_SOCKET_GATEWAY_STATES['DISCONNECTED'],this['_connectionAttempt']=0x0,this['fire']('disconnect');for(const _0x46ac97 of this['_channels']['values']())_0x46ac97['remove']();this['_channels']['clear'](),void 0x0===this['_options']['autoReconnect']||this['_options']['autoReconnect']||(this['_socket']=void 0x0);}['_onError'](_0x489612){this['fire']('error',new ckeditorcloudserviceserror_1['default'](_0x489612['message'],this,_0x489612['code']));}['_reconnectionAttemptError'](_0x425496){this['_connectionAttempt']>=0x2&&(this['disconnect'](),_0x425496(new ckeditorcloudserviceserror_1['default']('The\x20number\x20of\x20initial\x20connection\x20attempts\x20exceeded.')));}['_onUnauthorized']({error:error}){this['_removeAuthData'](),this['fire']('error',ckeditorcloudserviceserror_1['default']['fromPublicError'](error,this));}async['_authenticate'](_0x5c64d1){try{const _0x25f9a3=await this['_emit'](0x2,{'token':_0x5c64d1});this['_addAuthData'](_0x25f9a3['environmentId'],_0x25f9a3['userId']);}catch(_0x52f008){throw this['_removeAuthData'](),_0x52f008;}}}WebSocketGateway['STATE_DISCONNECTED']=WEB_SOCKET_GATEWAY_STATES['DISCONNECTED'],WebSocketGateway['STATE_CONNECTING']=WEB_SOCKET_GATEWAY_STATES['CONNECTING'],WebSocketGateway['STATE_CONNECTED']=WEB_SOCKET_GATEWAY_STATES['CONNECTED'],WebSocketGateway['_CHANGE_STATE_EVENT_PRIORITY']=priorities_1['default']['get']('highest')+0xf423f,mix_1['default'](WebSocketGateway,observablemixin_1['default']),exports['default']=WebSocketGateway;
23
+ 'use strict';var __importDefault=this&&this['__importDefault']||function(_0xc93b72){return _0xc93b72&&_0xc93b72['__esModule']?_0xc93b72:{'default':_0xc93b72};};Object['defineProperty'](exports,'__esModule',{'value':!0x0}),exports['WEB_SOCKET_GATEWAY_STATES']=void 0x0;const socket_io_client_1=require('socket.io-client'),url_parse_1=__importDefault(require('url-parse')),utils_1=require('ckeditor5/src/utils'),channel_1=__importDefault(require('./channel')),user_1=__importDefault(require('./../users/user')),version_1=__importDefault(require('./../version')),ckeditorcloudserviceserror_1=__importDefault(require('./../ckeditorcloudserviceserror')),parser_1=require('./parser/parser'),requestsmanager_1=__importDefault(require('./requestsmanager'));var WEB_SOCKET_GATEWAY_STATES;!function(_0x38f60e){_0x38f60e['DISCONNECTED']='disconnected',_0x38f60e['CONNECTING']='connecting',_0x38f60e['CONNECTED']='connected';}(WEB_SOCKET_GATEWAY_STATES=exports['WEB_SOCKET_GATEWAY_STATES']||(exports['WEB_SOCKET_GATEWAY_STATES']={}));class WebSocketGateway{constructor(_0x71a585,_0x260d71,_0x49bdf5={},_0xff3e5e=socket_io_client_1['io'],_0x21cd39=user_1['default']['get']){if(this['_token']=_0x260d71,this['_options']=_0x49bdf5,this['_connectionProvider']=_0xff3e5e,this['_userFactory']=_0x21cd39,this['_requestsManager']=new requestsmanager_1['default'](this),this['_channels']=new Map(),this['_connectionAttempt']=0x0,!_0x71a585)throw new TypeError('Api\x20address\x20must\x20be\x20provided.');if(!this['_token'])throw new TypeError('Token\x20must\x20be\x20provided.');this['_options']['requestTimeout']||(this['_options']['requestTimeout']=0x2710),this['_url']=(0x0,url_parse_1['default'])(_0x71a585['replace'](/^(?!(?:\w+:)?\/\/)/,'https://')),this['set']('state','disconnected'),this['set']('socketId',void 0x0),this['set']('me',void 0x0),this['on']('change:state',async(_0x8b310c,_0x1837fa,_0x4cbb6a)=>{var _0x5c6b8a;if(_0x4cbb6a!==WebSocketGateway['STATE_CONNECTED']){if(_0x4cbb6a===WebSocketGateway['STATE_DISCONNECTED'])return this['_requestsManager']['errorAll'](new ckeditorcloudserviceserror_1['default']('Not\x20connected.',this));}else try{this['me']=await this['_userFactory']['call'](user_1['default'],this,null===(_0x5c6b8a=this['_socketAuth'])||void 0x0===_0x5c6b8a?void 0x0:_0x5c6b8a['userId']);}catch(_0x4b2e89){}},{'priority':WebSocketGateway['_CHANGE_STATE_EVENT_PRIORITY']}),this['on']('error',(_0x31fa97,_0x268954)=>{this['_options']['onError']?this['_options']['onError'](_0x268954):console['log'](_0x268954);});}get['sessionId'](){return this['socketId'];}['disconnect'](){var _0x37bfc2;this['state']!==WEB_SOCKET_GATEWAY_STATES['DISCONNECTED']&&(null===(_0x37bfc2=this['_socket'])||void 0x0===_0x37bfc2||_0x37bfc2['disconnect'](),this['_socket']=void 0x0,this['state']=WEB_SOCKET_GATEWAY_STATES['DISCONNECTED']);}async['reconnect'](){this['_socket']||this['state']!==WEB_SOCKET_GATEWAY_STATES['DISCONNECTED']||(await this['_token']['refreshToken'](),await this['_connect']());}static async['connect'](_0x3cb5b2,_0x2a5667='local.cs.dev:443/ws-v2',_0x5bf17e={},_0x1523b1=socket_io_client_1['io'],_0x2623f5=user_1['default']['get']){const _0x22cc3c=new WebSocketGateway(_0x2a5667,_0x3cb5b2,_0x5bf17e,_0x1523b1,_0x2623f5);return await _0x22cc3c['_connect'](),_0x22cc3c;}['_sendRequest'](_0x203327,_0x73c1a,_0x265439){if(!_0x203327)throw new ckeditorcloudserviceserror_1['default']('`serviceName`\x20must\x20be\x20provided.',this);if(this['state']!==WebSocketGateway['STATE_CONNECTED'])throw new ckeditorcloudserviceserror_1['default']('Not\x20connected.',this);if(!this['_socketAuth']||!this['_socketAuth']['isAuthenticated'])throw new ckeditorcloudserviceserror_1['default']('Not\x20authenticated.',this);const _0x58d45f=new ArrayBuffer(_0x265439['length']+0x2),_0x4ff9f4=new Uint8Array(_0x58d45f);return _0x4ff9f4[0x0]=_0x203327,_0x4ff9f4[0x1]=parseInt(_0x73c1a),_0x4ff9f4['set'](_0x265439,0x2),this['_emit'](0x1,_0x4ff9f4);}['_getChannel'](_0x26d4d2,_0x1236ee){const _0x4bb676=''+_0x26d4d2+_0x1236ee;return!this['_channels']['has'](_0x4bb676)&&this['_socket']&&this['_channels']['set'](_0x4bb676,new channel_1['default'](_0x4bb676,this,this['_socket'])),this['_channels']['get'](_0x4bb676);}['_connect'](){return new Promise((_0x22e32c,_0x189c68)=>{const _0x4235e2=this['_setupSocket']();!this['socketId']&&_0x4235e2['io']['on']('reconnect_error',()=>{this['_reconnectionAttemptError'](_0x189c68);}),_0x4235e2['once']('connect',async()=>{try{await this['_onConnect'](),_0x22e32c();}catch(_0x2748e2){_0x189c68(_0x2748e2);}}),_0x4235e2['connect']();});}['_setupSocket'](){var _0x4ea003;if(this['_socket'])return this['_socket'];const _0x280f18=this['_url']['port']||('http:'===this['_url']['protocol']?0x50:0x1bb),_0x36592d=(this['_url']['protocol']||'https:')+'//'+this['_url']['hostname']+':'+_0x280f18,_0x250f02=this['_connectionProvider'](_0x36592d,{'parser':{'Encoder':parser_1['Encoder'],'Decoder':parser_1['Decoder']},'path':'/ws-v2/ws','transports':['websocket'],'timeout':void 0x0!==this['_options']['timeout']?this['_options']['timeout']:0x1388,'reconnection':void 0x0===this['_options']['autoReconnect']||this['_options']['autoReconnect'],'reconnectionDelay':0x3e8,'reconnectionDelayMax':0x1388,'rejectUnauthorized':void 0x0===this['_options']['rejectUnauthorized']||this['_options']['rejectUnauthorized'],'query':{'version':version_1['default']},'agent':null!==(_0x4ea003=this['_options']['agent'])&&void 0x0!==_0x4ea003&&_0x4ea003});return this['state']=WEB_SOCKET_GATEWAY_STATES['CONNECTING'],_0x250f02['on']('connect',()=>{this['socketId']=_0x250f02['id'];}),_0x250f02['on']('connect_error',this['_onError']['bind'](this)),_0x250f02['on']('disconnect',this['_onDisconnect']['bind'](this)),_0x250f02['io']['on']('reconnect',this['_onReconnect']['bind'](this)),_0x250f02['io']['on']('reconnect_attempt',_0xefef14=>{this['state']=WEB_SOCKET_GATEWAY_STATES['CONNECTING'],this['_connectionAttempt']=_0xefef14;}),_0x250f02['on']('unauthorized',this['_onUnauthorized']['bind'](this)),this['_socket']=_0x250f02,_0x250f02;}['_emit'](_0x4fc860,_0x1862c7){const _0x3757bc=this['_socket'];return this['_requestsManager']['send'](_0x102f88=>{_0x3757bc['emit'](_0x4fc860,_0x1862c7,(_0x47e641,_0x591837)=>{if(_0x47e641)return _0x102f88['error'](ckeditorcloudserviceserror_1['default']['fromPublicError'](_0x47e641,this));_0x102f88['response'](_0x591837);});},this['_options']['requestTimeout']);}['_addAuthData'](_0x269cb3,_0x2d327a){this['_socketAuth']={'environmentId':_0x269cb3,'userId':_0x2d327a,'isAuthenticated':!0x0};}['_removeAuthData'](){this['_socketAuth']=void 0x0;}async['_onConnect'](){await this['_authenticate'](this['_token']['value']),this['state']=WEB_SOCKET_GATEWAY_STATES['CONNECTED'];const _0x22d3df=async(_0x81c2c7,_0x385930,_0x57970a)=>{try{await this['_authenticate'](_0x57970a);}catch(_0x38c068){}};this['_token']['on']('change:value',_0x22d3df),this['_socket']['io']['off']('reconnect_error'),this['on']('disconnect',()=>{this['_token']['off']('change:value',_0x22d3df);});}async['_onReconnect'](){await this['_token']['refreshToken'](),await this['_onConnect']();}['_onDisconnect'](){this['state']=WEB_SOCKET_GATEWAY_STATES['DISCONNECTED'],this['_connectionAttempt']=0x0,this['fire']('disconnect');for(const _0x4f1d7d of this['_channels']['values']())_0x4f1d7d['remove']();this['_channels']['clear'](),void 0x0===this['_options']['autoReconnect']||this['_options']['autoReconnect']||(this['_socket']=void 0x0);}['_onError'](_0x42be0f){console['warn']('Connection\x20to\x20WebSocket\x20server\x20failed.\x20Details:\x20',{'originalError':_0x42be0f});}['_reconnectionAttemptError'](_0x1b9f35){this['_connectionAttempt']>=0x2&&(this['disconnect'](),_0x1b9f35(new ckeditorcloudserviceserror_1['default']('The\x20number\x20of\x20initial\x20connection\x20attempts\x20exceeded.')));}['_onUnauthorized']({error:error}){this['_removeAuthData'](),this['fire']('error',ckeditorcloudserviceserror_1['default']['fromPublicError'](error,this));}async['_authenticate'](_0x11d3a3){try{const _0x23d368=await this['_emit'](0x2,{'token':_0x11d3a3});this['_addAuthData'](_0x23d368['environmentId'],_0x23d368['userId']);}catch(_0x19d598){throw this['_removeAuthData'](),_0x19d598;}}}WebSocketGateway['STATE_DISCONNECTED']=WEB_SOCKET_GATEWAY_STATES['DISCONNECTED'],WebSocketGateway['STATE_CONNECTING']=WEB_SOCKET_GATEWAY_STATES['CONNECTING'],WebSocketGateway['STATE_CONNECTED']=WEB_SOCKET_GATEWAY_STATES['CONNECTED'],WebSocketGateway['_CHANGE_STATE_EVENT_PRIORITY']=utils_1['priorities']['get']('highest')+0xf423f,(0x0,utils_1['mix'])(WebSocketGateway,utils_1['ObservableMixin']),exports['default']=WebSocketGateway;