@ckeditor/ckeditor-cloud-services-collaboration 50.0.0 → 51.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +4 -2
- package/src/ckeditorcloudserviceserror.js +2 -2
- package/src/ckeditorcloudservicesservererror.js +2 -2
- package/src/collaborativeeditingservice/collaborativeeditingservice.js +2 -2
- package/src/collaborativeeditingservice/descriptors/operationmetadatadescriptor.js +2 -2
- package/src/collaborativeeditingservice/helpers/operationmetadatahelpers.js +2 -2
- package/src/collaborativeeditingservice/messages/collaborativeeditingconnectmessage.js +2 -2
- package/src/collaborativeeditingservice/messages/collaborativeeditingreconnectmessage.js +2 -2
- package/src/collaborativeeditingservice/messages/collaborativeeditingupdatemessage.js +2 -2
- package/src/collaborativeeditingservice/messages/getdocumentdetailsmessage.js +2 -2
- package/src/collaborativeeditingservice/responses/collaborativeeditingconnectresponse.js +2 -2
- package/src/collaborativeeditingservice/responses/collaborativeeditingresponse.js +2 -2
- package/src/collaborativeeditingservice/responses/getdocumentdetailsresponse.js +2 -2
- package/src/comments-v2/commentsservice.js +2 -2
- package/src/comments-v2/descriptors/commentdescriptor.js +2 -2
- package/src/comments-v2/descriptors/commentsthreaddescriptor.js +2 -2
- package/src/comments-v2/descriptors/commentthreadaddedcomment.js +2 -2
- package/src/comments-v2/messages/addcommentmessage.js +2 -2
- package/src/comments-v2/messages/comment-threads/addcommentthreadmessage.js +2 -2
- package/src/comments-v2/messages/comment-threads/reopencommentthreadmessage.js +2 -2
- package/src/comments-v2/messages/comment-threads/resolvecommentthreadmessage.js +2 -2
- package/src/comments-v2/messages/comment-threads/updatecommentthreadmessage.js +2 -2
- package/src/comments-v2/messages/connectmessage.js +2 -2
- package/src/comments-v2/messages/getcommentthreadmessage.js +2 -2
- package/src/comments-v2/messages/getdocumentthreadsmessage.js +2 -2
- package/src/comments-v2/messages/removecommentmessage.js +2 -2
- package/src/comments-v2/messages/removecommentthreadmessage.js +2 -2
- package/src/comments-v2/messages/updatecommentmessage.js +2 -2
- package/src/comments-v2/responses/addcommentresponse.js +2 -2
- package/src/comments-v2/responses/comment-threads/addcommentthreadresponse.js +2 -2
- package/src/comments-v2/responses/comment-threads/resolvecommentthreadresponse.js +2 -2
- package/src/comments-v2/responses/connectresponse.js +2 -2
- package/src/comments-v2/responses/getcommentthreadresponse.js +2 -2
- package/src/comments-v2/responses/getdocumentthreadsresponse.js +2 -2
- package/src/compiledmessages.js +2 -2
- package/src/descriptor.js +2 -2
- package/src/descriptors/keyvaluedescriptor.js +2 -2
- package/src/editor/editorservice.js +2 -2
- package/src/editor/messages/iseditorbundleuploadedmessage.js +2 -2
- package/src/editor/responses/iseditorbundleuploadedresponse.js +2 -2
- package/src/errors/ServiceNotConnectedError.js +2 -2
- package/src/index.js +2 -2
- package/src/message.js +2 -2
- package/src/messagescompressor.js +2 -2
- package/src/messagesmapper.js +2 -2
- package/src/revision-history/descriptors/revisiondescriptor.js +2 -2
- package/src/revision-history/messages/revisionhistoryconnectmessage.js +2 -2
- package/src/revision-history/messages/revisionhistorygetrevisionmessage.js +2 -2
- package/src/revision-history/messages/revisionhistoryreconnectmessage.js +2 -2
- package/src/revision-history/messages/revisionhistoryupdaterevisionsmessage.js +2 -2
- package/src/revision-history/responses/revisionhistoryconnectresponse.js +2 -2
- package/src/revision-history/responses/revisionhistorygetrevisionresponse.js +2 -2
- package/src/revision-history/responses/revisionhistoryupdaterevisionsresponse.js +2 -2
- package/src/revision-history/revision.js +1 -1
- package/src/revision-history/revisionhistoryservice.js +2 -2
- package/src/services.js +2 -2
- package/src/sessions/descriptors/sessiondescriptor.js +2 -2
- package/src/sessions/messages/sessionsconnectmessage.js +2 -2
- package/src/sessions/messages/socketconnectmessage.js +2 -2
- package/src/sessions/messages/socketdisconnectmessage.js +2 -2
- package/src/sessions/responses/sessionsconnectresponse.js +2 -2
- package/src/sessions/sessioncollection.js +2 -2
- package/src/sessions/sessions.js +2 -2
- package/src/track-changes/descriptors/suggestiondescriptor.js +2 -2
- package/src/track-changes/messages/addsuggestionmessage.js +2 -2
- package/src/track-changes/messages/batchUpdateSuggestionsStateMessage.js +2 -2
- package/src/track-changes/messages/connectmessage.js +2 -2
- package/src/track-changes/messages/getallsuggestionsmessage.js +2 -2
- package/src/track-changes/messages/getsuggestionmessage.js +2 -2
- package/src/track-changes/messages/updatesuggestionmessage.js +2 -2
- package/src/track-changes/responses/addsuggestionresponse.js +2 -2
- package/src/track-changes/responses/connectresponse.js +2 -2
- package/src/track-changes/responses/getallsuggestionsresponse.js +2 -2
- package/src/track-changes/responses/getsuggestionresponse.js +2 -2
- package/src/track-changes/trackchangesservice.js +2 -2
- package/src/types.js +1 -1
- package/src/users/descriptors/userdescriptor.js +2 -2
- package/src/users/messages/getmanyusersmessage.js +2 -2
- package/src/users/messages/getusermessage.js +2 -2
- package/src/users/responses/getmanyusersresponse.js +2 -2
- package/src/users/responses/getuserresponse.js +2 -2
- package/src/users/user.js +2 -2
- package/src/version.d.ts +1 -1
- package/src/version.js +2 -2
- package/src/websocketgateway/channel.js +2 -2
- package/src/websocketgateway/messages/channelmessage.js +2 -2
- package/src/websocketgateway/parser/packetparser.js +2 -2
- package/src/websocketgateway/parser/packets/bytesbytespacketdatamessage.js +2 -2
- package/src/websocketgateway/parser/packets/numberbytespacketdatamessage.js +2 -2
- package/src/websocketgateway/parser/packets/numbernumberpacketdatamessag.js +2 -2
- package/src/websocketgateway/parser/packets/numberobjectpacketdatamessage.js +2 -2
- package/src/websocketgateway/parser/packets/numberstringpacketdatamessag.js +2 -2
- package/src/websocketgateway/parser/packets/objectbufferpacketdatamessage.js +2 -2
- package/src/websocketgateway/parser/packets/objectobjectpacketdatamessage.js +2 -2
- package/src/websocketgateway/parser/packets/packagedatamessage.js +2 -2
- package/src/websocketgateway/parser/packets/packetmessage.js +2 -2
- package/src/websocketgateway/parser/packets/packetoptionsmessage.js +2 -2
- package/src/websocketgateway/parser/packets/stringbytespacketdatamessage.js +2 -2
- package/src/websocketgateway/parser/packets/stringnumberpacketdatamessage.js +2 -2
- package/src/websocketgateway/parser/packets/stringobjectpacketdatamessage.js +2 -2
- package/src/websocketgateway/parser/packets/stringstringpacketdatamessage.js +2 -2
- package/src/websocketgateway/parser/parser.js +2 -2
- package/src/websocketgateway/parser/parserutils.js +2 -2
- package/src/websocketgateway/requestsmanager.js +2 -2
- package/src/websocketgateway/websocketgateway.js +2 -2
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* Copyright (c)
|
|
2
|
+
* Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
|
|
3
3
|
*
|
|
4
4
|
*
|
|
5
5
|
*
|
|
@@ -20,4 +20,4 @@
|
|
|
20
20
|
*
|
|
21
21
|
*
|
|
22
22
|
*/
|
|
23
|
-
'use strict';var __importDefault=this&&this['__importDefault']||function(_0xdb0844){return _0xdb0844&&_0xdb0844['__esModule']?_0xdb0844:{'default':_0xdb0844};};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')),ckeditorcloudservicesservererror_1=__importDefault(require('./../ckeditorcloudservicesservererror')),parser_1=require('./parser/parser'),requestsmanager_1=__importDefault(require('./requestsmanager'));var WEB_SOCKET_GATEWAY_STATES;!function(_0x32b710){_0x32b710['DISCONNECTED']='disconnected',_0x32b710['CONNECTING']='connecting',_0x32b710['CONNECTED']='connected';}(WEB_SOCKET_GATEWAY_STATES=exports['WEB_SOCKET_GATEWAY_STATES']||(exports['WEB_SOCKET_GATEWAY_STATES']={}));class WebSocketGateway extends(0x0,utils_1['ObservableMixin'])(){constructor(_0x3b76a9,_0x5d327c,_0x3f4525={},_0x1164db=socket_io_client_1['io'],_0x12b515=user_1['default']['get']){if(super(),this['_token']=_0x5d327c,this['_options']=_0x3f4525,this['_connectionProvider']=_0x1164db,this['_userFactory']=_0x12b515,this['_requestsManager']=new requestsmanager_1['default'](this),this['_channels']=new Map(),this['_connectionAttempt']=0x0,!_0x3b76a9)throw new TypeError('Api\x20address\x20must\x20be\x20provided.');if(!this['_token'])throw new TypeError('Token\x20must\x20be\x20provided.');this['_options']['requestTimeout']||(this['_options']['requestTimeout']=0x4e20),this['_url']=(0x0,url_parse_1['default'])(_0x3b76a9['replace'](/^(?!(?:\w+:)?\/\/)/,'https://')),this['set']('state',WEB_SOCKET_GATEWAY_STATES['DISCONNECTED']),this['set']('socketId',void 0x0),this['set']('me',void 0x0),this['on']('change:state',async(_0x413d0f,_0x5283d2,_0x2170e3)=>{var _0x4ac67f;if(this['_debugEvent']('ws-gw:change:state',_0x2170e3),_0x2170e3!==WebSocketGateway['STATE_CONNECTED']){if(_0x2170e3===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===(_0x4ac67f=this['_socketAuth'])||void 0x0===_0x4ac67f?void 0x0:_0x4ac67f['userId']);}catch(_0x175ac5){}},{'priority':WebSocketGateway['_CHANGE_STATE_EVENT_PRIORITY']}),this['on']('error',(_0x5a1179,_0x261265)=>{this['_options']['onError']?this['_options']['onError'](_0x261265):console['error'](_0x261265);});}get['sessionId'](){return this['socketId'];}['waitForAllRequests'](_0xf540b5){return this['_requestsManager']['waitForAllRequests'](_0xf540b5);}['disconnect'](){var _0xcd56db;this['state']!==WEB_SOCKET_GATEWAY_STATES['DISCONNECTED']&&(null===(_0xcd56db=this['_socket'])||void 0x0===_0xcd56db||_0xcd56db['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'](_0x3a8c7c,_0xab2b5d='local.cs.dev:443/ws-v2',_0x32d43b={},_0x15e639=socket_io_client_1['io'],_0x3cec0d=user_1['default']['get']){const _0x1f80a2=new WebSocketGateway(_0xab2b5d,_0x3a8c7c,_0x32d43b,_0x15e639,_0x3cec0d);return await _0x1f80a2['_connect'](),_0x1f80a2;}['_sendRequest'](_0x3d0d9a,_0x121cbb,_0x561fd6){if(!_0x3d0d9a)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 _0x126720=new ArrayBuffer(_0x561fd6['length']+0x2),_0x369aa1=new Uint8Array(_0x126720);return _0x369aa1[0x0]=_0x3d0d9a,_0x369aa1[0x1]=parseInt(_0x121cbb),_0x369aa1['set'](_0x561fd6,0x2),this['_emit'](0x1,_0x369aa1);}['_getChannel'](_0x10e52c,_0x1e26bc){const _0x134b7f=''+_0x10e52c+_0x1e26bc;return!this['_channels']['has'](_0x134b7f)&&this['_socket']&&this['_channels']['set'](_0x134b7f,new channel_1['default'](_0x134b7f,this,this['_socket'])),this['_channels']['get'](_0x134b7f);}['_connect'](){return new Promise((_0x2e2667,_0x4ad316)=>{const _0x3425a6=this['_setupSocket']();!this['socketId']&&_0x3425a6['io']['on']('reconnect_error',()=>{this['_debugEvent']('reconnect_error'),this['_reconnectionAttemptError'](_0x4ad316);}),_0x3425a6['once']('connect',async()=>{this['_debugEvent']('once-connect');try{await this['_onConnect'](),_0x2e2667();}catch(_0x3e21f3){_0x4ad316(_0x3e21f3);}}),_0x3425a6['connect']();});}['_getPortByProtocol'](_0x545e74){return['http:','ws:']['includes'](_0x545e74)?0x50:0x1bb;}['_setupSocket'](){var _0xc07c2e;if(this['_socket'])return this['_socket'];const _0x3b346d=this['_url']['port']||this['_getPortByProtocol'](this['_url']['protocol']),_0x540c2c=(this['_url']['protocol']||'https:')+'//'+this['_url']['hostname']+':'+_0x3b346d,_0x39ec90=this['_url']['pathname']['match'](/^\/.*\/ws/)?this['_url']['pathname']['split']('/ws')[0x0]:'',_0x1b0b3d=this['_connectionProvider'](_0x540c2c,{'parser':{'Encoder':parser_1['Encoder'],'Decoder':parser_1['Decoder']},'path':_0x39ec90+'/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!==(_0xc07c2e=this['_options']['agent'])&&void 0x0!==_0xc07c2e&&_0xc07c2e,'closeOnBeforeunload':!0x1});return this['state']=WEB_SOCKET_GATEWAY_STATES['CONNECTING'],_0x1b0b3d['on']('connect',()=>{this['_debugEvent']('connect'),this['socketId']=_0x1b0b3d['id'];}),_0x1b0b3d['on']('connect_error',_0x10fa6d=>{this['_debugEvent']('connect_error',_0x10fa6d);}),_0x1b0b3d['on']('disconnect',()=>{this['_debugEvent']('disconnect'),this['_onDisconnect']();}),_0x1b0b3d['io']['on']('reconnect',async()=>{this['_debugEvent']('reconnect'),await this['_onReconnect']();}),_0x1b0b3d['io']['on']('reconnect_attempt',_0xbd1b31=>{this['_debugEvent']('reconnect_attempt',_0xbd1b31),this['state']=WEB_SOCKET_GATEWAY_STATES['CONNECTING'],this['_connectionAttempt']=_0xbd1b31;}),_0x1b0b3d['on']('unauthorized',_0x380af9=>{this['_debugEvent']('unauthorized'),this['_onUnauthorized'](_0x380af9);}),_0x1b0b3d['on']('authenticationRequest',async _0x405acb=>{this['_debugEvent']('authenticationRequest',_0x405acb['attempt']),await this['_onReconnect']();}),this['_socket']=_0x1b0b3d,_0x1b0b3d;}['_emit'](_0x2e5440,_0x18486e){const _0x4c385b=this['_socket'];return this['_requestsManager']['send'](_0x1d77c=>{_0x4c385b['emit'](_0x2e5440,_0x18486e,(_0xf46e6e,_0xb16fc0)=>{if(_0xf46e6e)return _0x1d77c['error'](ckeditorcloudservicesservererror_1['default']['fromPublicError'](_0xf46e6e));_0x1d77c['response'](_0xb16fc0);});},this['_options']['requestTimeout']);}['_addAuthData'](_0xdb252b,_0x3f3412){this['_socketAuth']={'environmentId':_0xdb252b,'userId':_0x3f3412,'isAuthenticated':!0x0};}['_removeAuthData'](){this['_socketAuth']=void 0x0;}async['_onConnect'](){await this['_authenticate'](this['_token']['value']),this['state']=WEB_SOCKET_GATEWAY_STATES['CONNECTED'];const _0xc576b3=async(_0x3dd07d,_0x2c5b2b,_0x119632)=>{this['_debugEvent']('token:value:change');try{await this['_authenticate'](_0x119632);}catch(_0x49af0b){}};this['_token']['on']('change:value',_0xc576b3),this['_socket']['io']['off']('reconnect_error'),this['on']('disconnect',()=>{this['_token']['off']('change:value',_0xc576b3);});}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 _0x4fa84d of this['_channels']['values']())_0x4fa84d['remove']();this['_channels']['clear'](),void 0x0===this['_options']['autoReconnect']||this['_options']['autoReconnect']||(this['_socket']=void 0x0);}['_debugEvent'](_0x5828d0,_0x571592){if(!this['_isDebugModeEnabled']())return;const _0x56f4c4=void 0x0!==_0x571592?',\x20data:\x20'+_0x571592:'';console['info'](new Date()['toLocaleString']()+'\x20'+_0x5828d0+_0x56f4c4);}['_reconnectionAttemptError'](_0x1c4bcf){this['_connectionAttempt']>=0x2&&(this['disconnect'](),_0x1c4bcf(ckeditorcloudserviceserror_1['default']['fromPublicError']({'message':'The\x20number\x20of\x20initial\x20connection\x20attempts\x20exceeded.','explanation':'Three\x20initial\x20connection\x20attempts\x20failed.\x20It\x20can\x20be\x20caused\x20by\x20a\x20missing\x20or\x20blocked\x20Internet\x20connection.','action':'Please\x20verify\x20the\x20stability\x20of\x20your\x20Internet\x20connection\x20and\x20ensure\x20that\x20no\x20antivirus\x20or\x20firewall\x20software\x20blocks\x20the\x20Web\x20Socket\x20protocol\x20connections.'})));}['_onUnauthorized']({error:error}){this['_removeAuthData'](),this['fire']('error',ckeditorcloudservicesservererror_1['default']['fromPublicError'](error));}async['_authenticate'](_0x5792d1){try{this['_debugEvent']('authenticate:start');const _0x330524=await this['_emit'](0x2,{'token':_0x5792d1});this['_debugEvent']('authenticate:success','envId:\x20'+_0x330524['environmentId']+',\x20userId:\x20'+_0x330524['userId']),this['_addAuthData'](_0x330524['environmentId'],_0x330524['userId']);}catch(_0x1790b6){throw this['_debugEvent']('authenticate:error',_0x1790b6['message']),this['_removeAuthData'](),_0x1790b6;}}['_isDebugModeEnabled'](){var _0x44b21e;if(!utils_1['global']['window']['localStorage'])return!0x1;return'true'===(null!==(_0x44b21e=utils_1['global']['window']['localStorage']['getItem']('csClientDebugMode'))&&void 0x0!==_0x44b21e?_0x44b21e:'false')['toLowerCase']();}}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,exports['default']=WebSocketGateway;
|
|
23
|
+
'use strict';var __importDefault=this&&this['__importDefault']||function(_0x29b8ed){return _0x29b8ed&&_0x29b8ed['__esModule']?_0x29b8ed:{'default':_0x29b8ed};};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')),ckeditorcloudservicesservererror_1=__importDefault(require('./../ckeditorcloudservicesservererror')),parser_1=require('./parser/parser'),requestsmanager_1=__importDefault(require('./requestsmanager'));var WEB_SOCKET_GATEWAY_STATES;!function(_0x1ed0fa){_0x1ed0fa['DISCONNECTED']='disconnected',_0x1ed0fa['CONNECTING']='connecting',_0x1ed0fa['CONNECTED']='connected';}(WEB_SOCKET_GATEWAY_STATES=exports['WEB_SOCKET_GATEWAY_STATES']||(exports['WEB_SOCKET_GATEWAY_STATES']={}));class WebSocketGateway extends(0x0,utils_1['ObservableMixin'])(){constructor(_0x9fb8e1,_0x2f748a,_0x407c9a={},_0x39f633=socket_io_client_1['io'],_0x1a5fde=user_1['default']['get']){if(super(),this['_token']=_0x2f748a,this['_options']=_0x407c9a,this['_connectionProvider']=_0x39f633,this['_userFactory']=_0x1a5fde,this['_requestsManager']=new requestsmanager_1['default'](this),this['_channels']=new Map(),this['_connectionAttempt']=0x0,!_0x9fb8e1)throw new TypeError('Api\x20address\x20must\x20be\x20provided.');if(!this['_token'])throw new TypeError('Token\x20must\x20be\x20provided.');this['_options']['requestTimeout']||(this['_options']['requestTimeout']=0x4e20),this['_url']=(0x0,url_parse_1['default'])(_0x9fb8e1['replace'](/^(?!(?:\w+:)?\/\/)/,'https://')),this['set']('state',WEB_SOCKET_GATEWAY_STATES['DISCONNECTED']),this['set']('socketId',void 0x0),this['set']('me',void 0x0),this['on']('change:state',async(_0x591030,_0x48e7b0,_0x2c74cf)=>{var _0x24db1b;if(this['_debugEvent']('ws-gw:change:state',_0x2c74cf),_0x2c74cf!==WebSocketGateway['STATE_CONNECTED']){if(_0x2c74cf===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===(_0x24db1b=this['_socketAuth'])||void 0x0===_0x24db1b?void 0x0:_0x24db1b['userId']);}catch(_0x56cf3d){}},{'priority':WebSocketGateway['_CHANGE_STATE_EVENT_PRIORITY']}),this['on']('error',(_0x4e1264,_0x4939cb)=>{this['_options']['onError']?this['_options']['onError'](_0x4939cb):console['error'](_0x4939cb);});}get['sessionId'](){return this['socketId'];}['waitForAllRequests'](_0x29a4fc){return this['_requestsManager']['waitForAllRequests'](_0x29a4fc);}['disconnect'](){var _0x4f3a76;this['state']!==WEB_SOCKET_GATEWAY_STATES['DISCONNECTED']&&(null===(_0x4f3a76=this['_socket'])||void 0x0===_0x4f3a76||_0x4f3a76['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'](_0x3849b8,_0x470bf3='local.cs.dev:443/ws-v2',_0xcadac1={},_0x97b6f8=socket_io_client_1['io'],_0x8d34cd=user_1['default']['get']){const _0x19d530=new WebSocketGateway(_0x470bf3,_0x3849b8,_0xcadac1,_0x97b6f8,_0x8d34cd);return await _0x19d530['_connect'](),_0x19d530;}['_sendRequest'](_0x5001a0,_0x585b06,_0x24e7cf){if(!_0x5001a0)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 _0x149b0c=new ArrayBuffer(_0x24e7cf['length']+0x2),_0x427d55=new Uint8Array(_0x149b0c);return _0x427d55[0x0]=_0x5001a0,_0x427d55[0x1]=parseInt(_0x585b06),_0x427d55['set'](_0x24e7cf,0x2),this['_emit'](0x1,_0x427d55);}['_getChannel'](_0x295116,_0x4b8803){const _0x1d5ab8=''+_0x295116+_0x4b8803;return!this['_channels']['has'](_0x1d5ab8)&&this['_socket']&&this['_channels']['set'](_0x1d5ab8,new channel_1['default'](_0x1d5ab8,this,this['_socket'])),this['_channels']['get'](_0x1d5ab8);}['_connect'](){return new Promise((_0x5439e6,_0x25e7bf)=>{const _0x3a6f62=this['_setupSocket']();!this['socketId']&&_0x3a6f62['io']['on']('reconnect_error',()=>{this['_debugEvent']('reconnect_error'),this['_reconnectionAttemptError'](_0x25e7bf);}),_0x3a6f62['once']('connect',async()=>{this['_debugEvent']('once-connect');try{await this['_onConnect'](),_0x5439e6();}catch(_0xdc4e){_0x25e7bf(_0xdc4e);}}),_0x3a6f62['connect']();});}['_getPortByProtocol'](_0x3f4d45){return['http:','ws:']['includes'](_0x3f4d45)?0x50:0x1bb;}['_setupSocket'](){var _0x1e8cac;if(this['_socket'])return this['_socket'];const _0x3e4ba9=this['_url']['port']||this['_getPortByProtocol'](this['_url']['protocol']),_0x26774f=(this['_url']['protocol']||'https:')+'//'+this['_url']['hostname']+':'+_0x3e4ba9,_0x1b988f=this['_url']['pathname']['match'](/^\/.*\/ws/)?this['_url']['pathname']['split']('/ws')[0x0]:'',_0x1b200a=this['_connectionProvider'](_0x26774f,{'parser':{'Encoder':parser_1['Encoder'],'Decoder':parser_1['Decoder']},'path':_0x1b988f+'/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!==(_0x1e8cac=this['_options']['agent'])&&void 0x0!==_0x1e8cac&&_0x1e8cac,'closeOnBeforeunload':!0x1});return this['state']=WEB_SOCKET_GATEWAY_STATES['CONNECTING'],_0x1b200a['on']('connect',()=>{this['_debugEvent']('connect'),this['socketId']=_0x1b200a['id'];}),_0x1b200a['on']('connect_error',_0x5486c4=>{this['_debugEvent']('connect_error',_0x5486c4);}),_0x1b200a['on']('disconnect',()=>{this['_debugEvent']('disconnect'),this['_onDisconnect']();}),_0x1b200a['io']['on']('reconnect',async()=>{this['_debugEvent']('reconnect'),await this['_onReconnect']();}),_0x1b200a['io']['on']('reconnect_attempt',_0x1b950a=>{this['_debugEvent']('reconnect_attempt',_0x1b950a),this['state']=WEB_SOCKET_GATEWAY_STATES['CONNECTING'],this['_connectionAttempt']=_0x1b950a;}),_0x1b200a['on']('unauthorized',_0x591b43=>{this['_debugEvent']('unauthorized'),this['_onUnauthorized'](_0x591b43);}),_0x1b200a['on']('authenticationRequest',async _0xe4fed1=>{this['_debugEvent']('authenticationRequest',_0xe4fed1['attempt']),await this['_onReconnect']();}),this['_socket']=_0x1b200a,_0x1b200a;}['_emit'](_0x49df7c,_0x7b7fff){const _0x303121=this['_socket'];return this['_requestsManager']['send'](_0x5bbde5=>{_0x303121['emit'](_0x49df7c,_0x7b7fff,(_0x2bac5d,_0x3098f6)=>{if(_0x2bac5d)return _0x5bbde5['error'](ckeditorcloudservicesservererror_1['default']['fromPublicError'](_0x2bac5d));_0x5bbde5['response'](_0x3098f6);});},this['_options']['requestTimeout']);}['_addAuthData'](_0x32581d,_0x524743){this['_socketAuth']={'environmentId':_0x32581d,'userId':_0x524743,'isAuthenticated':!0x0};}['_removeAuthData'](){this['_socketAuth']=void 0x0;}async['_onConnect'](){await this['_authenticate'](this['_token']['value']),this['state']=WEB_SOCKET_GATEWAY_STATES['CONNECTED'];const _0x129cd7=async(_0x33e7f5,_0x4a6878,_0x445417)=>{this['_debugEvent']('token:value:change');try{await this['_authenticate'](_0x445417);}catch(_0x4989b6){}};this['_token']['on']('change:value',_0x129cd7),this['_socket']['io']['off']('reconnect_error'),this['on']('disconnect',()=>{this['_token']['off']('change:value',_0x129cd7);});}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 _0x1b9c86 of this['_channels']['values']())_0x1b9c86['remove']();this['_channels']['clear'](),void 0x0===this['_options']['autoReconnect']||this['_options']['autoReconnect']||(this['_socket']=void 0x0);}['_debugEvent'](_0x1f6bf5,_0x3d1b8f){if(!this['_isDebugModeEnabled']())return;const _0x432f20=void 0x0!==_0x3d1b8f?',\x20data:\x20'+_0x3d1b8f:'';console['info'](new Date()['toLocaleString']()+'\x20'+_0x1f6bf5+_0x432f20);}['_reconnectionAttemptError'](_0x260a38){this['_connectionAttempt']>=0x2&&(this['disconnect'](),_0x260a38(ckeditorcloudserviceserror_1['default']['fromPublicError']({'message':'The\x20number\x20of\x20initial\x20connection\x20attempts\x20exceeded.','explanation':'Three\x20initial\x20connection\x20attempts\x20failed.\x20It\x20can\x20be\x20caused\x20by\x20a\x20slow,\x20unstable,\x20missing\x20or\x20blocked\x20Internet\x20connection.','action':'Please\x20verify\x20the\x20stability\x20of\x20your\x20Internet\x20connection\x20and\x20ensure\x20that\x20no\x20antivirus\x20or\x20firewall\x20software\x20blocks\x20the\x20Web\x20Socket\x20protocol\x20connections.'})));}['_onUnauthorized']({error:error}){this['_removeAuthData'](),this['fire']('error',ckeditorcloudservicesservererror_1['default']['fromPublicError'](error));}async['_authenticate'](_0x3af1a6){try{this['_debugEvent']('authenticate:start');const _0x4b48b7=await this['_emit'](0x2,{'token':_0x3af1a6});this['_debugEvent']('authenticate:success','envId:\x20'+_0x4b48b7['environmentId']+',\x20userId:\x20'+_0x4b48b7['userId']),this['_addAuthData'](_0x4b48b7['environmentId'],_0x4b48b7['userId']);}catch(_0x26a080){throw this['_debugEvent']('authenticate:error',_0x26a080['message']),this['_removeAuthData'](),_0x26a080;}}['_isDebugModeEnabled'](){var _0x50a1b9;if(!utils_1['global']['window']['localStorage'])return!0x1;return'true'===(null!==(_0x50a1b9=utils_1['global']['window']['localStorage']['getItem']('csClientDebugMode'))&&void 0x0!==_0x50a1b9?_0x50a1b9:'false')['toLowerCase']();}}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,exports['default']=WebSocketGateway;
|