@ckeditor/ckeditor-cloud-services-collaboration 38.0.0 → 40.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.
- package/.idea/workspace.xml +441 -0
- package/package.json +2 -2
- package/src/ckeditorcloudserviceserror.js +1 -1
- package/src/ckeditorcloudservicesservererror.js +1 -1
- package/src/collaborativeeditingservice/collaborativeeditingservice.js +1 -1
- package/src/collaborativeeditingservice/descriptors/operationmetadatadescriptor.js +1 -1
- package/src/collaborativeeditingservice/helpers/operationmetadatahelpers.js +1 -1
- package/src/collaborativeeditingservice/messages/collaborativeeditingconnectmessage.js +1 -1
- package/src/collaborativeeditingservice/messages/collaborativeeditingreconnectmessage.js +1 -1
- package/src/collaborativeeditingservice/messages/collaborativeeditingupdatemessage.js +1 -1
- package/src/collaborativeeditingservice/messages/getdocumentdetailsmessage.js +1 -1
- package/src/collaborativeeditingservice/responses/collaborativeeditingconnectresponse.js +1 -1
- package/src/collaborativeeditingservice/responses/collaborativeeditingresponse.js +1 -1
- package/src/collaborativeeditingservice/responses/getdocumentdetailsresponse.js +1 -1
- package/src/comments-v2/commentsservice.js +1 -1
- package/src/comments-v2/descriptors/commentdescriptor.js +1 -1
- package/src/comments-v2/descriptors/commentsthreaddescriptor.js +1 -1
- package/src/comments-v2/messages/addcommentmessage.js +1 -1
- package/src/comments-v2/messages/connectmessage.js +1 -1
- package/src/comments-v2/messages/getcommentthreadmessage.js +1 -1
- package/src/comments-v2/messages/getdocumentthreadsmessage.js +1 -1
- package/src/comments-v2/messages/removecommentmessage.js +1 -1
- package/src/comments-v2/messages/removecommentthreadmessage.js +1 -1
- package/src/comments-v2/messages/updatecommentmessage.js +1 -1
- package/src/comments-v2/responses/addcommentresponse.js +1 -1
- package/src/comments-v2/responses/connectresponse.js +1 -1
- package/src/comments-v2/responses/getcommentthreadresponse.js +1 -1
- package/src/comments-v2/responses/getdocumentthreadsresponse.js +1 -1
- package/src/descriptor.js +1 -1
- package/src/descriptors/keyvaluedescriptor.js +1 -1
- package/src/editor/editorservice.js +1 -1
- package/src/editor/messages/iseditorbundleuploadedmessage.js +1 -1
- package/src/editor/responses/iseditorbundleuploadedresponse.js +1 -1
- package/src/errors/ServiceNotConnectedError.js +1 -1
- package/src/index.js +1 -1
- package/src/message.js +1 -1
- package/src/messagescompressor.js +1 -1
- package/src/messagesmapper.js +1 -1
- package/src/revision-history/descriptors/revisiondescriptor.js +1 -1
- package/src/revision-history/messages/revisionhistoryconnectmessage.js +1 -1
- package/src/revision-history/messages/revisionhistorygetrevisionmessage.js +1 -1
- package/src/revision-history/messages/revisionhistoryreconnectmessage.js +1 -1
- package/src/revision-history/messages/revisionhistoryupdaterevisionsmessage.js +1 -1
- package/src/revision-history/responses/revisionhistoryconnectresponse.js +1 -1
- package/src/revision-history/responses/revisionhistorygetrevisionresponse.js +1 -1
- package/src/revision-history/responses/revisionhistoryupdaterevisionsresponse.js +1 -1
- package/src/revision-history/revisionhistoryservice.js +1 -1
- package/src/sessions/descriptors/sessiondescriptor.js +1 -1
- package/src/sessions/messages/sessionsconnectmessage.js +1 -1
- package/src/sessions/messages/socketconnectmessage.js +1 -1
- package/src/sessions/messages/socketdisconnectmessage.js +1 -1
- package/src/sessions/responses/sessionsconnectresponse.js +1 -1
- package/src/sessions/sessioncollection.js +1 -1
- package/src/sessions/sessions.js +1 -1
- package/src/track-changes/descriptors/suggestiondescriptor.js +1 -1
- package/src/track-changes/messages/addsuggestionmessage.js +1 -1
- package/src/track-changes/messages/batchUpdateSuggestionsStateMessage.js +1 -1
- package/src/track-changes/messages/connectmessage.js +1 -1
- package/src/track-changes/messages/getallsuggestionsmessage.js +1 -1
- package/src/track-changes/messages/getsuggestionmessage.js +1 -1
- package/src/track-changes/messages/updatesuggestionmessage.js +1 -1
- package/src/track-changes/responses/addsuggestionresponse.js +1 -1
- package/src/track-changes/responses/connectresponse.js +1 -1
- package/src/track-changes/responses/getallsuggestionsresponse.js +1 -1
- package/src/track-changes/responses/getsuggestionresponse.js +1 -1
- package/src/track-changes/trackchangesservice.js +1 -1
- package/src/users/descriptors/userdescriptor.js +1 -1
- package/src/users/messages/getmanyusersmessage.js +1 -1
- package/src/users/messages/getusermessage.js +1 -1
- package/src/users/responses/getmanyusersresponse.js +1 -1
- package/src/users/responses/getuserresponse.js +1 -1
- package/src/users/user.js +1 -1
- package/src/version.js +1 -1
- package/src/websocketgateway/channel.js +1 -1
- package/src/websocketgateway/messages/channelmessage.js +1 -1
- package/src/websocketgateway/parser/packetparser.js +1 -1
- package/src/websocketgateway/parser/packets/bytesbytespacketdatamessage.js +1 -1
- package/src/websocketgateway/parser/packets/numberbytespacketdatamessage.js +1 -1
- package/src/websocketgateway/parser/packets/numbernumberpacketdatamessag.js +1 -1
- package/src/websocketgateway/parser/packets/numberobjectpacketdatamessage.js +1 -1
- package/src/websocketgateway/parser/packets/numberstringpacketdatamessag.js +1 -1
- package/src/websocketgateway/parser/packets/objectbufferpacketdatamessage.js +1 -1
- package/src/websocketgateway/parser/packets/objectobjectpacketdatamessage.js +1 -1
- package/src/websocketgateway/parser/packets/packagedatamessage.js +1 -1
- package/src/websocketgateway/parser/packets/packetmessage.js +1 -1
- package/src/websocketgateway/parser/packets/packetoptionsmessage.js +1 -1
- package/src/websocketgateway/parser/packets/stringbytespacketdatamessage.js +1 -1
- package/src/websocketgateway/parser/packets/stringnumberpacketdatamessage.js +1 -1
- package/src/websocketgateway/parser/packets/stringobjectpacketdatamessage.js +1 -1
- package/src/websocketgateway/parser/packets/stringstringpacketdatamessage.js +1 -1
- package/src/websocketgateway/parser/parser.js +1 -1
- package/src/websocketgateway/parser/parserutils.js +1 -1
- package/src/websocketgateway/requestsmanager.js +1 -1
- package/src/websocketgateway/websocketgateway.js +1 -1
|
@@ -20,4 +20,4 @@
|
|
|
20
20
|
*
|
|
21
21
|
*
|
|
22
22
|
*/
|
|
23
|
-
'use strict';var __importDefault=this&&this['__importDefault']||function(
|
|
23
|
+
'use strict';var __importDefault=this&&this['__importDefault']||function(_0x4e1bfd){return _0x4e1bfd&&_0x4e1bfd['__esModule']?_0x4e1bfd:{'default':_0x4e1bfd};};Object['defineProperty'](exports,'__esModule',{'value':!0x0}),exports['Decoder']=exports['Encoder']=exports['ENCODED_TYPES']=void 0x0;const socket_io_parser_1=require('socket.io-parser'),packetparser_1=__importDefault(require('./packetparser')),parserutils_1=__importDefault(require('./parserutils'));exports['ENCODED_TYPES']=[socket_io_parser_1['PacketType']['EVENT'],socket_io_parser_1['PacketType']['ACK'],socket_io_parser_1['PacketType']['BINARY_ACK'],socket_io_parser_1['PacketType']['BINARY_EVENT']];class Encoder extends socket_io_parser_1['Encoder']{constructor(_0x4cc306=new packetparser_1['default']()){super(),this['_packetParser']=_0x4cc306;}['encode'](_0x3b77b9){if(exports['ENCODED_TYPES']['includes'](_0x3b77b9['type']))try{return[this['_packetParser']['encode'](_0x3b77b9['type'],_0x3b77b9['data'],_0x3b77b9['id'],_0x3b77b9['nsp'])];}catch(_0x5cb9af){console['error']('Can\x20not\x20properly\x20serialize\x20or\x20deserialize\x20messages.\x20Check\x20the\x20original\x20error.',{'originalError':{'message':_0x5cb9af['message']}});}return super['encode'](_0x3b77b9);}}exports['Encoder']=Encoder;class Decoder extends socket_io_parser_1['Decoder']{constructor(_0x281389=new packetparser_1['default']()){super(),this['_packetParser']=_0x281389;}['add'](_0x9c2c22){if(!parserutils_1['default']['isBuffer'](_0x9c2c22))return super['add'](_0x9c2c22);let _0x5c7849;try{_0x5c7849=this['_packetParser']['decode'](_0x9c2c22)['packet'];}catch(_0x873a1f){return super['add'](_0x9c2c22);}super['emitReserved']('decoded',_0x5c7849);}}exports['Decoder']=Decoder;
|
|
@@ -20,4 +20,4 @@
|
|
|
20
20
|
*
|
|
21
21
|
*
|
|
22
22
|
*/
|
|
23
|
-
'use strict';Object['defineProperty'](exports,'__esModule',{'value':!0x0}),exports['MessageDataTypes']=void 0x0;const IS_NODE=!('undefined'==typeof process||!process['versions']||!process['versions']['node']);var MessageDataTypes;!function(
|
|
23
|
+
'use strict';Object['defineProperty'](exports,'__esModule',{'value':!0x0}),exports['MessageDataTypes']=void 0x0;const IS_NODE=!('undefined'==typeof process||!process['versions']||!process['versions']['node']);var MessageDataTypes;!function(_0x56a2c0){_0x56a2c0[_0x56a2c0['BUFFER']=0x1]='BUFFER',_0x56a2c0[_0x56a2c0['STRING']=0x2]='STRING',_0x56a2c0[_0x56a2c0['NUMBER']=0x3]='NUMBER',_0x56a2c0[_0x56a2c0['OBJECT']=0x4]='OBJECT';}(MessageDataTypes=exports['MessageDataTypes']||(exports['MessageDataTypes']={}));class ParserUtils{static['getPacketType'](..._0x3c9711){let _0x1533ed=0x0;for(let _0x52dec5=0x0;_0x52dec5<_0x3c9711['length'];_0x52dec5++){_0x1533ed+=_0x3c9711[_0x52dec5]*Math['pow'](0xa,_0x3c9711['length']-_0x52dec5-0x1);}return _0x1533ed;}static['getType'](_0x583f83){if(ParserUtils['isBuffer'](_0x583f83))return MessageDataTypes['BUFFER'];const _0x40df6b=typeof _0x583f83;return'string'===_0x40df6b?MessageDataTypes['STRING']:'number'===_0x40df6b?MessageDataTypes['NUMBER']:MessageDataTypes['OBJECT'];}static['isBuffer'](_0x250beb){return IS_NODE&&Buffer['isBuffer'](_0x250beb)||_0x250beb instanceof ArrayBuffer||_0x250beb instanceof Uint8Array||this['_isBufferView'](_0x250beb);}static['_isBufferView'](_0x31564c){return'function'==typeof ArrayBuffer['isView']?ArrayBuffer['isView'](_0x31564c):_0x31564c['buffer']instanceof ArrayBuffer;}}exports['default']=ParserUtils;
|
|
@@ -20,4 +20,4 @@
|
|
|
20
20
|
*
|
|
21
21
|
*
|
|
22
22
|
*/
|
|
23
|
-
'use strict';var __importDefault=this&&this['__importDefault']||function(
|
|
23
|
+
'use strict';var __importDefault=this&&this['__importDefault']||function(_0x374d04){return _0x374d04&&_0x374d04['__esModule']?_0x374d04:{'default':_0x374d04};};Object['defineProperty'](exports,'__esModule',{'value':!0x0});const ckeditorcloudserviceserror_1=__importDefault(require('../ckeditorcloudserviceserror'));class WebSocketRequest{constructor(_0x3cf4ea,_0x38d6ea){this['_context']=_0x3cf4ea,this['_deferredPromise']=function(){let _0x642859,_0x4cd265;const _0x300d3a=new Promise((_0x4167a7,_0x119242)=>{_0x642859=_0x4167a7,_0x4cd265=_0x119242;});return{'resolve':_0x642859,'reject':_0x4cd265,'promise':_0x300d3a};}(),this['timeout']=setTimeout(()=>this['error'](new ckeditorcloudserviceserror_1['default']('Request\x20timeout.',this['_context'])),_0x38d6ea);}get['promise'](){return this['_deferredPromise']['promise'];}['response'](_0x35f86b){this['_deferredPromise']['resolve'](_0x35f86b);}['error'](_0x161a59){this['_deferredPromise']['reject'](_0x161a59);}}exports['default']=class{constructor(_0xe1a495){this['_context']=_0xe1a495,this['_requests']=new Set();}async['send'](_0x3df01f,_0x54e218=0xafc8){const _0x21d0b9=this['_createRequest'](_0x54e218);try{return _0x3df01f(_0x21d0b9),await _0x21d0b9['promise'];}finally{this['_finishRequest'](_0x21d0b9);}}['errorAll'](_0x2c87f3){for(const _0x136449 of this['_requests'])_0x136449['error'](_0x2c87f3);}['waitForAllRequests'](_0x308a33=0xafc8){return this['_waitForRequests'](_0x308a33);}['_createRequest'](_0x5f06c3){const _0x1a6739=new WebSocketRequest(this['_context'],_0x5f06c3);return this['_requests']['add'](_0x1a6739),_0x1a6739;}['_finishRequest'](_0x246412){this['_requests']['delete'](_0x246412),clearTimeout(_0x246412['timeout']);}async['_waitForRequests'](_0x1cb068=0x1388,_0x187488=0x0){return!this['_requests']['size']||_0x187488>=_0x1cb068/0x1f4?Promise['resolve']():(await new Promise(_0x5b6c75=>{setTimeout(_0x5b6c75,0x1f4);}),this['_waitForRequests'](_0x1cb068,_0x187488++));}};
|
|
@@ -20,4 +20,4 @@
|
|
|
20
20
|
*
|
|
21
21
|
*
|
|
22
22
|
*/
|
|
23
|
-
'use strict';var __importDefault=this&&this['__importDefault']||function(_0x433755){return _0x433755&&_0x433755['__esModule']?_0x433755:{'default':_0x433755};};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(_0x364e1f){_0x364e1f['DISCONNECTED']='disconnected',_0x364e1f['CONNECTING']='connecting',_0x364e1f['CONNECTED']='connected';}(WEB_SOCKET_GATEWAY_STATES=exports['WEB_SOCKET_GATEWAY_STATES']||(exports['WEB_SOCKET_GATEWAY_STATES']={}));class WebSocketGateway{constructor(_0x211623,_0x3f15e8,_0x2e7154={},_0x272015=socket_io_client_1['io'],_0x571d06=user_1['default']['get']){if(this['_token']=_0x3f15e8,this['_options']=_0x2e7154,this['_connectionProvider']=_0x272015,this['_userFactory']=_0x571d06,this['_requestsManager']=new requestsmanager_1['default'](this),this['_channels']=new Map(),this['_connectionAttempt']=0x0,!_0x211623)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'])(_0x211623['replace'](/^(?!(?:\w+:)?\/\/)/,'https://')),this['set']('state','disconnected'),this['set']('socketId',void 0x0),this['set']('me',void 0x0),this['on']('change:state',async(_0x18f747,_0x42d281,_0x274ca0)=>{var _0x16276d;if(this['_debugEvent']('ws-gw:change:state',_0x274ca0),_0x274ca0!==WebSocketGateway['STATE_CONNECTED']){if(_0x274ca0===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===(_0x16276d=this['_socketAuth'])||void 0x0===_0x16276d?void 0x0:_0x16276d['userId']);}catch(_0xac3040){}},{'priority':WebSocketGateway['_CHANGE_STATE_EVENT_PRIORITY']}),this['on']('error',(_0x29fab6,_0x489820)=>{this['_options']['onError']?this['_options']['onError'](_0x489820):console['error'](_0x489820);});}get['sessionId'](){return this['socketId'];}['disconnect'](){var _0x31271e;this['state']!==WEB_SOCKET_GATEWAY_STATES['DISCONNECTED']&&(null===(_0x31271e=this['_socket'])||void 0x0===_0x31271e||_0x31271e['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'](_0x3ce6b0,_0x421502='local.cs.dev:443/ws-v2',_0x423116={},_0x11f694=socket_io_client_1['io'],_0x4deac9=user_1['default']['get']){const _0x4f6f17=new WebSocketGateway(_0x421502,_0x3ce6b0,_0x423116,_0x11f694,_0x4deac9);return await _0x4f6f17['_connect'](),_0x4f6f17;}['_sendRequest'](_0x2f735b,_0x47d86c,_0x22b5d3){if(!_0x2f735b)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 _0x51ff22=new ArrayBuffer(_0x22b5d3['length']+0x2),_0x5b832c=new Uint8Array(_0x51ff22);return _0x5b832c[0x0]=_0x2f735b,_0x5b832c[0x1]=parseInt(_0x47d86c),_0x5b832c['set'](_0x22b5d3,0x2),this['_emit'](0x1,_0x5b832c);}['_getChannel'](_0x2d6210,_0x562067){const _0x19b16a=''+_0x2d6210+_0x562067;return!this['_channels']['has'](_0x19b16a)&&this['_socket']&&this['_channels']['set'](_0x19b16a,new channel_1['default'](_0x19b16a,this,this['_socket'])),this['_channels']['get'](_0x19b16a);}['_connect'](){return new Promise((_0x231b1c,_0x1a6df5)=>{const _0x1fe137=this['_setupSocket']();!this['socketId']&&_0x1fe137['io']['on']('reconnect_error',()=>{this['_debugEvent']('reconnect_error'),this['_reconnectionAttemptError'](_0x1a6df5);}),_0x1fe137['once']('connect',async()=>{this['_debugEvent']('once-connect');try{await this['_onConnect'](),_0x231b1c();}catch(_0x41541a){_0x1a6df5(_0x41541a);}}),_0x1fe137['connect']();});}['_getPortByProtocol'](_0x2bc3bf){return['http:','ws:']['includes'](_0x2bc3bf)?0x50:0x1bb;}['_setupSocket'](){var _0x36b42d;if(this['_socket'])return this['_socket'];const _0x32b52e=this['_url']['port']||this['_getPortByProtocol'](this['_url']['protocol']),_0x4cd87a=(this['_url']['protocol']||'https:')+'//'+this['_url']['hostname']+':'+_0x32b52e,_0x7bc9f8=this['_connectionProvider'](_0x4cd87a,{'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!==(_0x36b42d=this['_options']['agent'])&&void 0x0!==_0x36b42d&&_0x36b42d,'closeOnBeforeunload':!0x1});return this['state']=WEB_SOCKET_GATEWAY_STATES['CONNECTING'],_0x7bc9f8['on']('connect',()=>{this['_debugEvent']('connect'),this['socketId']=_0x7bc9f8['id'];}),_0x7bc9f8['on']('connect_error',_0x1e3cf8=>{this['_debugEvent']('connect_error'),this['_onError'](_0x1e3cf8);}),_0x7bc9f8['on']('disconnect',()=>{this['_debugEvent']('disconnect'),this['_onDisconnect']();}),_0x7bc9f8['io']['on']('reconnect',async()=>{this['_debugEvent']('reconnect'),await this['_onReconnect']();}),_0x7bc9f8['io']['on']('reconnect_attempt',_0x54a84d=>{this['_debugEvent']('reconnect_attempt',_0x54a84d),this['state']=WEB_SOCKET_GATEWAY_STATES['CONNECTING'],this['_connectionAttempt']=_0x54a84d;}),_0x7bc9f8['on']('unauthorized',_0xa58904=>{this['_debugEvent']('unauthorized'),this['_onUnauthorized'](_0xa58904);}),_0x7bc9f8['on']('authenticationRequest',async _0x105ee5=>{this['_debugEvent']('authenticationRequest',_0x105ee5['attempt']),await this['_onReconnect']();}),this['_socket']=_0x7bc9f8,_0x7bc9f8;}['_emit'](_0x5a5bd2,_0x1b797c){const _0x3bb424=this['_socket'];return this['_requestsManager']['send'](_0x71c6f4=>{_0x3bb424['emit'](_0x5a5bd2,_0x1b797c,(_0x23da01,_0x3a8750)=>{if(_0x23da01)return _0x71c6f4['error'](ckeditorcloudservicesservererror_1['default']['fromPublicError'](_0x23da01));_0x71c6f4['response'](_0x3a8750);});},this['_options']['requestTimeout']);}['_addAuthData'](_0x2b80f7,_0x16b149){this['_socketAuth']={'environmentId':_0x2b80f7,'userId':_0x16b149,'isAuthenticated':!0x0};}['_removeAuthData'](){this['_socketAuth']=void 0x0;}async['_onConnect'](){await this['_authenticate'](this['_token']['value']),this['state']=WEB_SOCKET_GATEWAY_STATES['CONNECTED'];const _0x2e9764=async(_0x21a43c,_0x46e23d,_0x475ce6)=>{this['_debugEvent']('token:value:change');try{await this['_authenticate'](_0x475ce6);}catch(_0x3ba810){}};this['_token']['on']('change:value',_0x2e9764),this['_socket']['io']['off']('reconnect_error'),this['on']('disconnect',()=>{this['_token']['off']('change:value',_0x2e9764);});}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 _0xb0869d of this['_channels']['values']())_0xb0869d['remove']();this['_channels']['clear'](),void 0x0===this['_options']['autoReconnect']||this['_options']['autoReconnect']||(this['_socket']=void 0x0);}['_onError'](_0x5d283f){console['warn']('Connection\x20to\x20WebSocket\x20server\x20failed.\x20Details:\x20',{'originalError':_0x5d283f});}['_debugEvent'](_0x544bad,_0x120814){if(!this['_isDebugModeEnabled']())return;const _0x11f483=void 0x0!==_0x120814?',\x20data:\x20'+_0x120814:'';console['info'](new Date()['toLocaleString']()+'\x20'+_0x544bad+_0x11f483);}['_reconnectionAttemptError'](_0x10c661){this['_connectionAttempt']>=0x2&&(this['disconnect'](),_0x10c661(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'](_0x39284d){try{this['_debugEvent']('authenticate:start');const _0x4ee300=await this['_emit'](0x2,{'token':_0x39284d});this['_debugEvent']('authenticate:success','envId:\x20'+_0x4ee300['environmentId']+',\x20userId:\x20'+_0x4ee300['userId']),this['_addAuthData'](_0x4ee300['environmentId'],_0x4ee300['userId']);}catch(_0x4a7852){throw this['_debugEvent']('authenticate:error',_0x4a7852['message']),this['_removeAuthData'](),_0x4a7852;}}['_isDebugModeEnabled'](){var _0x6ab691;if(!utils_1['global']['window']['localStorage'])return!0x1;return'true'===(null!==(_0x6ab691=utils_1['global']['window']['localStorage']['getItem']('csClientDebugMode'))&&void 0x0!==_0x6ab691?_0x6ab691:'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,(0x0,utils_1['mix'])(WebSocketGateway,utils_1['ObservableMixin']),exports['default']=WebSocketGateway;
|
|
23
|
+
'use strict';var __importDefault=this&&this['__importDefault']||function(_0x251283){return _0x251283&&_0x251283['__esModule']?_0x251283:{'default':_0x251283};};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(_0x4d4cde){_0x4d4cde['DISCONNECTED']='disconnected',_0x4d4cde['CONNECTING']='connecting',_0x4d4cde['CONNECTED']='connected';}(WEB_SOCKET_GATEWAY_STATES=exports['WEB_SOCKET_GATEWAY_STATES']||(exports['WEB_SOCKET_GATEWAY_STATES']={}));class WebSocketGateway{constructor(_0x2e5d30,_0x236970,_0xec817d={},_0x2eb994=socket_io_client_1['io'],_0x37d3df=user_1['default']['get']){if(this['_token']=_0x236970,this['_options']=_0xec817d,this['_connectionProvider']=_0x2eb994,this['_userFactory']=_0x37d3df,this['_requestsManager']=new requestsmanager_1['default'](this),this['_channels']=new Map(),this['_connectionAttempt']=0x0,!_0x2e5d30)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'])(_0x2e5d30['replace'](/^(?!(?:\w+:)?\/\/)/,'https://')),this['set']('state','disconnected'),this['set']('socketId',void 0x0),this['set']('me',void 0x0),this['on']('change:state',async(_0x4d8e10,_0x1f0bf4,_0xdff2c8)=>{var _0x29c6b8;if(this['_debugEvent']('ws-gw:change:state',_0xdff2c8),_0xdff2c8!==WebSocketGateway['STATE_CONNECTED']){if(_0xdff2c8===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===(_0x29c6b8=this['_socketAuth'])||void 0x0===_0x29c6b8?void 0x0:_0x29c6b8['userId']);}catch(_0x582573){}},{'priority':WebSocketGateway['_CHANGE_STATE_EVENT_PRIORITY']}),this['on']('error',(_0x4dc86e,_0x3a9cf6)=>{this['_options']['onError']?this['_options']['onError'](_0x3a9cf6):console['error'](_0x3a9cf6);});}get['sessionId'](){return this['socketId'];}['waitForAllRequests'](_0x1091db){return this['_requestsManager']['waitForAllRequests'](_0x1091db);}['disconnect'](){var _0x35f5b3;this['state']!==WEB_SOCKET_GATEWAY_STATES['DISCONNECTED']&&(null===(_0x35f5b3=this['_socket'])||void 0x0===_0x35f5b3||_0x35f5b3['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'](_0x22a5b7,_0xb2c4a2='local.cs.dev:443/ws-v2',_0x5729ea={},_0x2892f0=socket_io_client_1['io'],_0x35597c=user_1['default']['get']){const _0x654482=new WebSocketGateway(_0xb2c4a2,_0x22a5b7,_0x5729ea,_0x2892f0,_0x35597c);return await _0x654482['_connect'](),_0x654482;}['_sendRequest'](_0x1fcea3,_0x336d79,_0x8383eb){if(!_0x1fcea3)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 _0x49cb1a=new ArrayBuffer(_0x8383eb['length']+0x2),_0x122c77=new Uint8Array(_0x49cb1a);return _0x122c77[0x0]=_0x1fcea3,_0x122c77[0x1]=parseInt(_0x336d79),_0x122c77['set'](_0x8383eb,0x2),this['_emit'](0x1,_0x122c77);}['_getChannel'](_0x3d07ba,_0x129a69){const _0x49f32b=''+_0x3d07ba+_0x129a69;return!this['_channels']['has'](_0x49f32b)&&this['_socket']&&this['_channels']['set'](_0x49f32b,new channel_1['default'](_0x49f32b,this,this['_socket'])),this['_channels']['get'](_0x49f32b);}['_connect'](){return new Promise((_0x34b747,_0x1aeb26)=>{const _0x5be044=this['_setupSocket']();!this['socketId']&&_0x5be044['io']['on']('reconnect_error',()=>{this['_debugEvent']('reconnect_error'),this['_reconnectionAttemptError'](_0x1aeb26);}),_0x5be044['once']('connect',async()=>{this['_debugEvent']('once-connect');try{await this['_onConnect'](),_0x34b747();}catch(_0x529b51){_0x1aeb26(_0x529b51);}}),_0x5be044['connect']();});}['_getPortByProtocol'](_0x5c70a7){return['http:','ws:']['includes'](_0x5c70a7)?0x50:0x1bb;}['_setupSocket'](){var _0x112145;if(this['_socket'])return this['_socket'];const _0x2682b4=this['_url']['port']||this['_getPortByProtocol'](this['_url']['protocol']),_0x1ca986=(this['_url']['protocol']||'https:')+'//'+this['_url']['hostname']+':'+_0x2682b4,_0x3c6263=this['_connectionProvider'](_0x1ca986,{'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!==(_0x112145=this['_options']['agent'])&&void 0x0!==_0x112145&&_0x112145,'closeOnBeforeunload':!0x1});return this['state']=WEB_SOCKET_GATEWAY_STATES['CONNECTING'],_0x3c6263['on']('connect',()=>{this['_debugEvent']('connect'),this['socketId']=_0x3c6263['id'];}),_0x3c6263['on']('connect_error',_0x4e23d6=>{this['_debugEvent']('connect_error',_0x4e23d6);}),_0x3c6263['on']('disconnect',()=>{this['_debugEvent']('disconnect'),this['_onDisconnect']();}),_0x3c6263['io']['on']('reconnect',async()=>{this['_debugEvent']('reconnect'),await this['_onReconnect']();}),_0x3c6263['io']['on']('reconnect_attempt',_0x42306f=>{this['_debugEvent']('reconnect_attempt',_0x42306f),this['state']=WEB_SOCKET_GATEWAY_STATES['CONNECTING'],this['_connectionAttempt']=_0x42306f;}),_0x3c6263['on']('unauthorized',_0xc54422=>{this['_debugEvent']('unauthorized'),this['_onUnauthorized'](_0xc54422);}),_0x3c6263['on']('authenticationRequest',async _0x52b394=>{this['_debugEvent']('authenticationRequest',_0x52b394['attempt']),await this['_onReconnect']();}),this['_socket']=_0x3c6263,_0x3c6263;}['_emit'](_0x38485c,_0x1d13c4){const _0x16b621=this['_socket'];return this['_requestsManager']['send'](_0x32f9ae=>{_0x16b621['emit'](_0x38485c,_0x1d13c4,(_0x5f1499,_0x2df201)=>{if(_0x5f1499)return _0x32f9ae['error'](ckeditorcloudservicesservererror_1['default']['fromPublicError'](_0x5f1499));_0x32f9ae['response'](_0x2df201);});},this['_options']['requestTimeout']);}['_addAuthData'](_0x26539c,_0x449b19){this['_socketAuth']={'environmentId':_0x26539c,'userId':_0x449b19,'isAuthenticated':!0x0};}['_removeAuthData'](){this['_socketAuth']=void 0x0;}async['_onConnect'](){await this['_authenticate'](this['_token']['value']),this['state']=WEB_SOCKET_GATEWAY_STATES['CONNECTED'];const _0x5b924a=async(_0x5c3ce1,_0x5ed77b,_0x1faa59)=>{this['_debugEvent']('token:value:change');try{await this['_authenticate'](_0x1faa59);}catch(_0x140eff){}};this['_token']['on']('change:value',_0x5b924a),this['_socket']['io']['off']('reconnect_error'),this['on']('disconnect',()=>{this['_token']['off']('change:value',_0x5b924a);});}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 _0x317ceb of this['_channels']['values']())_0x317ceb['remove']();this['_channels']['clear'](),void 0x0===this['_options']['autoReconnect']||this['_options']['autoReconnect']||(this['_socket']=void 0x0);}['_debugEvent'](_0x13f360,_0x5ccfa5){if(!this['_isDebugModeEnabled']())return;const _0x20787c=void 0x0!==_0x5ccfa5?',\x20data:\x20'+_0x5ccfa5:'';console['info'](new Date()['toLocaleString']()+'\x20'+_0x13f360+_0x20787c);}['_reconnectionAttemptError'](_0x300d9e){this['_connectionAttempt']>=0x2&&(this['disconnect'](),_0x300d9e(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'](_0x5e1a75){try{this['_debugEvent']('authenticate:start');const _0x39cf47=await this['_emit'](0x2,{'token':_0x5e1a75});this['_debugEvent']('authenticate:success','envId:\x20'+_0x39cf47['environmentId']+',\x20userId:\x20'+_0x39cf47['userId']),this['_addAuthData'](_0x39cf47['environmentId'],_0x39cf47['userId']);}catch(_0x37e526){throw this['_debugEvent']('authenticate:error',_0x37e526['message']),this['_removeAuthData'](),_0x37e526;}}['_isDebugModeEnabled'](){var _0x375c3e;if(!utils_1['global']['window']['localStorage'])return!0x1;return'true'===(null!==(_0x375c3e=utils_1['global']['window']['localStorage']['getItem']('csClientDebugMode'))&&void 0x0!==_0x375c3e?_0x375c3e:'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,(0x0,utils_1['mix'])(WebSocketGateway,utils_1['ObservableMixin']),exports['default']=WebSocketGateway;
|