@ckeditor/ckeditor-cloud-services-collaboration 52.0.0 → 52.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/LICENSE.md +6 -7
- package/package.json +3 -3
- 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.d.ts +2 -1
- package/src/sessions/sessioncollection.js +2 -2
- package/src/sessions/sessions.d.ts +0 -1
- 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.d.ts +1 -1
- 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.d.ts +1 -1
- package/src/websocketgateway/websocketgateway.js +2 -2
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* Copyright (c) 2003-
|
|
2
|
+
* Copyright (c) 2003-2024, 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(_0xf59dcc){return _0xf59dcc&&_0xf59dcc['__esModule']?_0xf59dcc:{'default':_0xf59dcc};};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(_0x361c3b){_0x361c3b['DISCONNECTED']='disconnected',_0x361c3b['CONNECTING']='connecting',_0x361c3b['CONNECTED']='connected';}(WEB_SOCKET_GATEWAY_STATES=exports['WEB_SOCKET_GATEWAY_STATES']||(exports['WEB_SOCKET_GATEWAY_STATES']={}));class WebSocketGateway extends(0x0,utils_1['ObservableMixin'])(){constructor(_0x6f58c8,_0x4dd132,_0xede82a={},_0x207eea=socket_io_client_1['io'],_0x403880=user_1['default']['get']){if(super(),this['_token']=_0x4dd132,this['_options']=_0xede82a,this['_connectionProvider']=_0x207eea,this['_userFactory']=_0x403880,this['_requestsManager']=new requestsmanager_1['default'](this),this['_channels']=new Map(),this['_connectionAttempt']=0x0,!_0x6f58c8)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'])(_0x6f58c8['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(_0x59969c,_0xce66ed,_0x226926)=>{var _0x469400;if(this['_debugEvent']('ws-gw:change:state',_0x226926),_0x226926!==WebSocketGateway['STATE_CONNECTED']){if(_0x226926===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===(_0x469400=this['_socketAuth'])||void 0x0===_0x469400?void 0x0:_0x469400['userId']);}catch(_0x44392f){}},{'priority':WebSocketGateway['_CHANGE_STATE_EVENT_PRIORITY']}),this['on']('error',(_0x1a4c66,_0x4a4996)=>{this['_options']['onError']?this['_options']['onError'](_0x4a4996):console['error'](_0x4a4996);});}get['sessionId'](){return this['socketId'];}['waitForAllRequests'](_0x5924d7){return this['_requestsManager']['waitForAllRequests'](_0x5924d7);}['disconnect'](){var _0x1c260f;this['state']!==WEB_SOCKET_GATEWAY_STATES['DISCONNECTED']&&(null===(_0x1c260f=this['_socket'])||void 0x0===_0x1c260f||_0x1c260f['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'](_0x22ab8a,_0x3b0c75='local.cs.dev:443/ws-v2',_0x455d06={},_0x450824=socket_io_client_1['io'],_0x104121=user_1['default']['get']){const _0x5c80c9=new WebSocketGateway(_0x3b0c75,_0x22ab8a,_0x455d06,_0x450824,_0x104121);return await _0x5c80c9['_connect'](),_0x5c80c9;}['_sendRequest'](_0x5082a7,_0x522743,_0x483081){if(!_0x5082a7)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 _0x54da0c=new ArrayBuffer(_0x483081['length']+0x2),_0x111e7c=new Uint8Array(_0x54da0c);return _0x111e7c[0x0]=_0x5082a7,_0x111e7c[0x1]=parseInt(_0x522743),_0x111e7c['set'](_0x483081,0x2),this['_emit'](0x1,_0x111e7c);}['_getChannel'](_0x3bdd5b,_0x451576){const _0x37edc7=''+_0x3bdd5b+_0x451576;return!this['_channels']['has'](_0x37edc7)&&this['_socket']&&this['_channels']['set'](_0x37edc7,new channel_1['default'](_0x37edc7,this,this['_socket'])),this['_channels']['get'](_0x37edc7);}['_connect'](){return new Promise((_0x5a55c0,_0x35db8b)=>{const _0x2dd8dc=this['_setupSocket']();!this['socketId']&&_0x2dd8dc['io']['on']('reconnect_error',()=>{this['_debugEvent']('reconnect_error'),this['_reconnectionAttemptError'](_0x35db8b);}),_0x2dd8dc['once']('connect',async()=>{this['_debugEvent']('once-connect');try{await this['_onConnect'](),_0x5a55c0();}catch(_0x4f14a6){_0x35db8b(_0x4f14a6);}}),_0x2dd8dc['connect']();});}['_getPortByProtocol'](_0x593025){return['http:','ws:']['includes'](_0x593025)?0x50:0x1bb;}['_setupSocket'](){var _0x3015cb;if(this['_socket'])return this['_socket'];const _0x2d73b2=this['_url']['port']||this['_getPortByProtocol'](this['_url']['protocol']),_0x40b193=(this['_url']['protocol']||'https:')+'//'+this['_url']['hostname']+':'+_0x2d73b2,_0x3c8188=this['_url']['pathname']['match'](/^\/.*\/ws/)?this['_url']['pathname']['split']('/ws')[0x0]:'',_0x326efe=this['_connectionProvider'](_0x40b193,{'parser':{'Encoder':parser_1['Encoder'],'Decoder':parser_1['Decoder']},'path':_0x3c8188+'/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!==(_0x3015cb=this['_options']['agent'])&&void 0x0!==_0x3015cb&&_0x3015cb,'closeOnBeforeunload':!0x1});return this['state']=WEB_SOCKET_GATEWAY_STATES['CONNECTING'],_0x326efe['on']('connect',()=>{this['_debugEvent']('connect'),this['socketId']=_0x326efe['id'];}),_0x326efe['on']('connect_error',_0x336244=>{this['_debugEvent']('connect_error',_0x336244);}),_0x326efe['on']('disconnect',()=>{this['_debugEvent']('disconnect'),this['_onDisconnect']();}),_0x326efe['io']['on']('reconnect',async()=>{this['_debugEvent']('reconnect'),await this['_onReconnect']();}),_0x326efe['io']['on']('reconnect_attempt',_0x24d992=>{this['_debugEvent']('reconnect_attempt',_0x24d992),this['state']=WEB_SOCKET_GATEWAY_STATES['CONNECTING'],this['_connectionAttempt']=_0x24d992;}),_0x326efe['on']('unauthorized',_0x27e11d=>{this['_debugEvent']('unauthorized'),this['_onUnauthorized'](_0x27e11d);}),_0x326efe['on']('authenticationRequest',async _0x2d5ea5=>{this['_debugEvent']('authenticationRequest',_0x2d5ea5['attempt']),await this['_onReconnect']();}),this['_socket']=_0x326efe,_0x326efe;}['_emit'](_0x16a933,_0x52caf1){const _0x29a479=this['_socket'];return this['_requestsManager']['send'](_0x4cd6a2=>{_0x29a479['emit'](_0x16a933,_0x52caf1,(_0x570f03,_0x2634e0)=>{if(_0x570f03)return _0x4cd6a2['error'](ckeditorcloudservicesservererror_1['default']['fromPublicError'](_0x570f03));_0x4cd6a2['response'](_0x2634e0);});},this['_options']['requestTimeout']);}['_addAuthData'](_0x794125,_0xe405d5){this['_socketAuth']={'environmentId':_0x794125,'userId':_0xe405d5,'isAuthenticated':!0x0};}['_removeAuthData'](){this['_socketAuth']=void 0x0;}async['_onConnect'](){await this['_authenticate'](this['_token']['value']),this['state']=WEB_SOCKET_GATEWAY_STATES['CONNECTED'];const _0x38e14f=async(_0x3aa5fc,_0x2ec986,_0x3c7e94)=>{this['_debugEvent']('token:value:change');try{await this['_authenticate'](_0x3c7e94);}catch(_0x36dbab){}};this['_token']['on']('change:value',_0x38e14f),this['_socket']['io']['off']('reconnect_error'),this['on']('disconnect',()=>{this['_token']['off']('change:value',_0x38e14f);});}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 _0x422697 of this['_channels']['values']())_0x422697['remove']();this['_channels']['clear'](),void 0x0===this['_options']['autoReconnect']||this['_options']['autoReconnect']||(this['_socket']=void 0x0);}['_debugEvent'](_0x38f312,_0x7444c0){if(!this['_isDebugModeEnabled']())return;const _0x15a471=void 0x0!==_0x7444c0?',\x20data:\x20'+_0x7444c0:'';console['info'](new Date()['toLocaleString']()+'\x20'+_0x38f312+_0x15a471);}['_reconnectionAttemptError'](_0x2b17f1){this['_connectionAttempt']>=0x2&&(this['disconnect'](),_0x2b17f1(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'](_0x4183e0){try{this['_debugEvent']('authenticate:start');const _0x3c59f8=await this['_emit'](0x2,{'token':_0x4183e0});this['_debugEvent']('authenticate:success','envId:\x20'+_0x3c59f8['environmentId']+',\x20userId:\x20'+_0x3c59f8['userId']),this['_addAuthData'](_0x3c59f8['environmentId'],_0x3c59f8['userId']);}catch(_0xc2c32e){throw this['_debugEvent']('authenticate:error',_0xc2c32e['message']),this['_removeAuthData'](),_0xc2c32e;}}['_isDebugModeEnabled'](){var _0x3959f3;if(!utils_1['global']['window']['localStorage'])return!0x1;return'true'===(null!==(_0x3959f3=utils_1['global']['window']['localStorage']['getItem']('csClientDebugMode'))&&void 0x0!==_0x3959f3?_0x3959f3:'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(_0x5cb77a){return _0x5cb77a&&_0x5cb77a['__esModule']?_0x5cb77a:{'default':_0x5cb77a};};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_js_1=require('ckeditor5/src/utils.js'),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(_0x83e059){_0x83e059['DISCONNECTED']='disconnected',_0x83e059['CONNECTING']='connecting',_0x83e059['CONNECTED']='connected';}(WEB_SOCKET_GATEWAY_STATES=exports['WEB_SOCKET_GATEWAY_STATES']||(exports['WEB_SOCKET_GATEWAY_STATES']={}));class WebSocketGateway extends(0x0,utils_js_1['ObservableMixin'])(){constructor(_0x526ee6,_0x37cf04,_0x4f6689={},_0x397677=socket_io_client_1['io'],_0x3857a5=user_1['default']['get']){if(super(),this['_token']=_0x37cf04,this['_options']=_0x4f6689,this['_connectionProvider']=_0x397677,this['_userFactory']=_0x3857a5,this['_requestsManager']=new requestsmanager_1['default'](this),this['_channels']=new Map(),this['_connectionAttempt']=0x0,!_0x526ee6)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'])(_0x526ee6['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(_0x27e252,_0x3503b7,_0x3a60ff)=>{var _0x3b1c1d;if(this['_debugEvent']('ws-gw:change:state',_0x3a60ff),_0x3a60ff!==WebSocketGateway['STATE_CONNECTED']){if(_0x3a60ff===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===(_0x3b1c1d=this['_socketAuth'])||void 0x0===_0x3b1c1d?void 0x0:_0x3b1c1d['userId']);}catch(_0xb8901c){}},{'priority':WebSocketGateway['_CHANGE_STATE_EVENT_PRIORITY']}),this['on']('error',(_0x1c6ea4,_0x1e1f29)=>{this['_options']['onError']?this['_options']['onError'](_0x1e1f29):console['error'](_0x1e1f29);});}get['sessionId'](){return this['socketId'];}['waitForAllRequests'](_0xd20bf7){return this['_requestsManager']['waitForAllRequests'](_0xd20bf7);}['disconnect'](){var _0xc4081;this['state']!==WEB_SOCKET_GATEWAY_STATES['DISCONNECTED']&&(null===(_0xc4081=this['_socket'])||void 0x0===_0xc4081||_0xc4081['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'](_0x53b88f,_0xad93e5='local.cs.dev:443/ws-v2',_0x53fb34={},_0x2a54c5=socket_io_client_1['io'],_0x3511d6=user_1['default']['get']){const _0x4bd66d=new WebSocketGateway(_0xad93e5,_0x53b88f,_0x53fb34,_0x2a54c5,_0x3511d6);return await _0x4bd66d['_connect'](),_0x4bd66d;}['_sendRequest'](_0x314222,_0x234613,_0x106693){if(!_0x314222)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 _0x3792b2=new ArrayBuffer(_0x106693['length']+0x2),_0x4e500c=new Uint8Array(_0x3792b2);return _0x4e500c[0x0]=_0x314222,_0x4e500c[0x1]=parseInt(_0x234613),_0x4e500c['set'](_0x106693,0x2),this['_emit'](0x1,_0x4e500c);}['_getChannel'](_0xeab9db,_0x1feefd){const _0x1bad5f=''+_0xeab9db+_0x1feefd;return!this['_channels']['has'](_0x1bad5f)&&this['_socket']&&this['_channels']['set'](_0x1bad5f,new channel_1['default'](_0x1bad5f,this,this['_socket'])),this['_channels']['get'](_0x1bad5f);}['_connect'](){return new Promise((_0x1299d5,_0x56d29d)=>{const _0x3a66d5=this['_setupSocket']();!this['socketId']&&_0x3a66d5['io']['on']('reconnect_error',()=>{this['_debugEvent']('reconnect_error'),this['_reconnectionAttemptError'](_0x56d29d);}),_0x3a66d5['once']('connect',async()=>{this['_debugEvent']('once-connect');try{await this['_onConnect'](),_0x1299d5();}catch(_0x3c7587){_0x56d29d(_0x3c7587);}}),_0x3a66d5['connect']();});}['_getPortByProtocol'](_0x1b583c){return['http:','ws:']['includes'](_0x1b583c)?0x50:0x1bb;}['_setupSocket'](){var _0x7fb2d1;if(this['_socket'])return this['_socket'];const _0x2d859e=this['_url']['port']||this['_getPortByProtocol'](this['_url']['protocol']),_0x44c0fb=(this['_url']['protocol']||'https:')+'//'+this['_url']['hostname']+':'+_0x2d859e,_0x10b966=this['_url']['pathname']['match'](/^\/.*\/ws/)?this['_url']['pathname']['split']('/ws')[0x0]:'',_0x633c8e=this['_connectionProvider'](_0x44c0fb,{'parser':{'Encoder':parser_1['Encoder'],'Decoder':parser_1['Decoder']},'path':_0x10b966+'/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!==(_0x7fb2d1=this['_options']['agent'])&&void 0x0!==_0x7fb2d1&&_0x7fb2d1,'closeOnBeforeunload':!0x1});return this['state']=WEB_SOCKET_GATEWAY_STATES['CONNECTING'],_0x633c8e['on']('connect',()=>{this['_debugEvent']('connect'),this['socketId']=_0x633c8e['id'];}),_0x633c8e['on']('connect_error',_0x179401=>{this['_debugEvent']('connect_error',_0x179401);}),_0x633c8e['on']('disconnect',()=>{this['_debugEvent']('disconnect'),this['_onDisconnect']();}),_0x633c8e['io']['on']('reconnect',async()=>{this['_debugEvent']('reconnect'),await this['_onReconnect']();}),_0x633c8e['io']['on']('reconnect_attempt',_0x1c9b59=>{this['_debugEvent']('reconnect_attempt',_0x1c9b59),this['state']=WEB_SOCKET_GATEWAY_STATES['CONNECTING'],this['_connectionAttempt']=_0x1c9b59;}),_0x633c8e['on']('unauthorized',_0x2ca4c8=>{this['_debugEvent']('unauthorized'),this['_onUnauthorized'](_0x2ca4c8);}),_0x633c8e['on']('authenticationRequest',async _0x4e81d5=>{this['_debugEvent']('authenticationRequest',_0x4e81d5['attempt']),await this['_onReconnect']();}),this['_socket']=_0x633c8e,_0x633c8e;}['_emit'](_0x20da12,_0x4f7bb3){const _0x2ef574=this['_socket'];return this['_requestsManager']['send'](_0x34721c=>{_0x2ef574['emit'](_0x20da12,_0x4f7bb3,(_0x5f3590,_0x54f83f)=>{if(_0x5f3590)return _0x34721c['error'](ckeditorcloudservicesservererror_1['default']['fromPublicError'](_0x5f3590));_0x34721c['response'](_0x54f83f);});},this['_options']['requestTimeout']);}['_addAuthData'](_0x139ca6,_0x5c32df){this['_socketAuth']={'environmentId':_0x139ca6,'userId':_0x5c32df,'isAuthenticated':!0x0};}['_removeAuthData'](){this['_socketAuth']=void 0x0;}async['_onConnect'](){await this['_authenticate'](this['_token']['value']),this['state']=WEB_SOCKET_GATEWAY_STATES['CONNECTED'];const _0x16342c=async(_0x17caa3,_0x486bf8,_0x349f21)=>{this['_debugEvent']('token:value:change');try{await this['_authenticate'](_0x349f21);}catch(_0x2cb832){}};this['_token']['on']('change:value',_0x16342c),this['_socket']['io']['off']('reconnect_error'),this['on']('disconnect',()=>{this['_token']['off']('change:value',_0x16342c);});}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 _0x5a9796 of this['_channels']['values']())_0x5a9796['remove']();this['_channels']['clear'](),void 0x0===this['_options']['autoReconnect']||this['_options']['autoReconnect']||(this['_socket']=void 0x0);}['_debugEvent'](_0x143b9b,_0x37d921){if(!this['_isDebugModeEnabled']())return;const _0x40fe8e=void 0x0!==_0x37d921?',\x20data:\x20'+_0x37d921:'';console['info'](new Date()['toLocaleString']()+'\x20'+_0x143b9b+_0x40fe8e);}['_reconnectionAttemptError'](_0x2bc841){this['_connectionAttempt']>=0x2&&(this['disconnect'](),_0x2bc841(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:_0x5cabf9}){this['_removeAuthData'](),this['fire']('error',ckeditorcloudservicesservererror_1['default']['fromPublicError'](_0x5cabf9));}async['_authenticate'](_0x44b590){try{this['_debugEvent']('authenticate:start');const _0x9e5b0c=await this['_emit'](0x2,{'token':_0x44b590});this['_debugEvent']('authenticate:success','envId:\x20'+_0x9e5b0c['environmentId']+',\x20userId:\x20'+_0x9e5b0c['userId']),this['_addAuthData'](_0x9e5b0c['environmentId'],_0x9e5b0c['userId']);}catch(_0x35935f){throw this['_debugEvent']('authenticate:error',_0x35935f['message']),this['_removeAuthData'](),_0x35935f;}}['_isDebugModeEnabled'](){var _0x52d24d;if(!utils_js_1['global']['window']['localStorage'])return!0x1;return'true'===(null!==(_0x52d24d=utils_js_1['global']['window']['localStorage']['getItem']('csClientDebugMode'))&&void 0x0!==_0x52d24d?_0x52d24d:'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_js_1['priorities']['get']('highest')+0xf423f,exports['default']=WebSocketGateway;
|