@replit/crosis
Advanced tools
| export default class CrosisError extends Error { | ||
| readonly extras: Record<string, unknown> | null; | ||
| readonly tags: Record<string, string> | null; | ||
| constructor(message: string, extras?: Record<string, unknown> | null, tags?: Record<string, string> | null); | ||
| static fromError(error: Error): CrosisError; | ||
| } |
| "use strict"; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| class CrosisError extends Error { | ||
| constructor(message, extras = null, tags = null) { | ||
| super(message); | ||
| this.name = 'CrosisError'; | ||
| this.extras = extras; | ||
| this.tags = tags; | ||
| } | ||
| static fromError(error) { | ||
| const crosisError = new CrosisError(error.message); | ||
| crosisError.stack = error.stack; | ||
| return crosisError; | ||
| } | ||
| } | ||
| exports.default = CrosisError; | ||
| //# sourceMappingURL=CrosisError.js.map |
| {"version":3,"file":"CrosisError.js","sourceRoot":"","sources":["../../src/util/CrosisError.ts"],"names":[],"mappings":";;AAAA,MAAqB,WAAY,SAAQ,KAAK;IAM5C,YACE,OAAe,EAEf,SAAyC,IAAI,EAC7C,OAAsC,IAAI;QAE1C,KAAK,CAAC,OAAO,CAAC,CAAC;QAEf,IAAI,CAAC,IAAI,GAAG,aAAa,CAAC;QAC1B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAED,MAAM,CAAC,SAAS,CAAC,KAAY;QAC3B,MAAM,WAAW,GAAG,IAAI,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACnD,WAAW,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;QAEhC,OAAO,WAAW,CAAC;IACrB,CAAC;CACF;AAzBD,8BAyBC"} |
@@ -121,3 +121,3 @@ "use strict"; | ||
| client.onDebugLog((log) => { | ||
| if (log.type === 'breadcrumb' && log.message === 'client closed') { | ||
| if (log.type === 'breadcrumb' && log.message === 'status:closed') { | ||
| expect(fetchConnectionMetadata).toHaveBeenCalledTimes(1); | ||
@@ -128,3 +128,3 @@ expect(onConnect).not.toHaveBeenCalled(); | ||
| } | ||
| if (log.type !== 'breadcrumb' || log.message !== 'retrying') { | ||
| if (log.type !== 'breadcrumb' || log.message !== 'status:retrying') { | ||
| return; | ||
@@ -161,3 +161,3 @@ } | ||
| client.onDebugLog((log) => { | ||
| if (log.type === 'breadcrumb' && log.message === 'client closed') { | ||
| if (log.type === 'breadcrumb' && log.message === 'status:closed') { | ||
| expect(fetchConnectionMetadata.mock.calls.length).toBeGreaterThan(1); | ||
@@ -168,3 +168,3 @@ expect(onConnect).not.toHaveBeenCalled(); | ||
| } | ||
| if (log.type !== 'breadcrumb' || log.message !== 'retrying') { | ||
| if (log.type !== 'breadcrumb' || log.message !== 'status:retrying') { | ||
| return; | ||
@@ -706,3 +706,3 @@ } | ||
| client.onDebugLog((log) => { | ||
| if (log.type === 'breadcrumb' && log.message === 'reconnecting') { | ||
| if (log.type === 'breadcrumb' && log.message === 'status:reconnecting') { | ||
| setTimeout(() => { | ||
@@ -736,3 +736,3 @@ client.close(); | ||
| client.onDebugLog((log) => { | ||
| if (log.type === 'breadcrumb' && log.message === 'polling fallback') { | ||
| if (log.type === 'breadcrumb' && log.message === 'websocket:polling fallback') { | ||
| didLogFallback = true; | ||
@@ -758,3 +758,3 @@ } | ||
| })); | ||
| }, 50000); | ||
| }, 70000); | ||
| (0, concurrent_1.concurrent)('does not fallback to polling if host is unset', (done) => { | ||
@@ -765,3 +765,3 @@ const client = getClient(done); | ||
| client.onDebugLog((log) => { | ||
| if (log.type === 'breadcrumb' && log.message === 'client closed') { | ||
| if (log.type === 'breadcrumb' && log.message === 'status:closed') { | ||
| expect(didLogFallback).toBe(false); | ||
@@ -777,3 +777,3 @@ expect(onConnect).not.toHaveBeenCalled(); | ||
| if (log.type === 'breadcrumb' && | ||
| log.message === 'connecting' && | ||
| log.message === 'status:connecting' && | ||
| ((_a = log.data) === null || _a === void 0 ? void 0 : _a.connectTries) === 4) { | ||
@@ -784,3 +784,3 @@ setTimeout(() => { | ||
| } | ||
| if (log.type === 'breadcrumb' && log.message === 'polling fallback') { | ||
| if (log.type === 'breadcrumb' && log.message === 'websocket:polling fallback') { | ||
| didLogFallback = true; | ||
@@ -801,3 +801,3 @@ } | ||
| client.onDebugLog((log) => { | ||
| if (log.type === 'breadcrumb' && log.message === 'connecting') { | ||
| if (log.type === 'breadcrumb' && log.message === 'status:connecting') { | ||
| setTimeout(() => { | ||
@@ -842,3 +842,3 @@ client.close(); | ||
| client.onDebugLog((log) => { | ||
| if (log.type === 'breadcrumb' && log.message === 'client closed') { | ||
| if (log.type === 'breadcrumb' && log.message === 'status:closed') { | ||
| expect(onAbort).toHaveBeenCalledTimes(1); | ||
@@ -845,0 +845,0 @@ expect(onConnect).not.toHaveBeenCalled(); |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"index.test.js","sourceRoot":"","sources":["../../src/__tests__/index.test.ts"],"names":[],"mappings":"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"} | ||
| {"version":3,"file":"index.test.js","sourceRoot":"","sources":["../../src/__tests__/index.test.ts"],"names":[],"mappings":"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"} |
@@ -52,3 +52,3 @@ "use strict"; | ||
| client.onDebugLog((log) => { | ||
| if (log.type === 'breadcrumb' && log.message === 'unrecoverable error') { | ||
| if (log.type === 'breadcrumb' && log.message === 'onUnrecoverableError') { | ||
| expect(tryCount).toBe(1); | ||
@@ -55,0 +55,0 @@ done(); |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"retry.test.js","sourceRoot":"","sources":["../../src/__tests__/retry.test.ts"],"names":[],"mappings":"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"} | ||
| {"version":3,"file":"retry.test.js","sourceRoot":"","sources":["../../src/__tests__/retry.test.ts"],"names":[],"mappings":"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"} |
| import { api } from '@replit/protocol'; | ||
| import type { ChannelCloseReason, RequestResult } from './types'; | ||
| import CrosisError from './util/CrosisError'; | ||
| export declare class Channel { | ||
@@ -17,3 +18,3 @@ id: number; | ||
| send: (cmd: api.Command) => void; | ||
| onUnrecoverableError: (e: Error) => void; | ||
| onUnrecoverableError: (e: CrosisError) => void; | ||
| }); | ||
@@ -25,2 +26,3 @@ onCommand: (listener: (cmd: api.Command) => void) => (() => void); | ||
| handleClose: (reason: ChannelCloseReason) => void; | ||
| private getExtras; | ||
| } |
+21
-6
| "use strict"; | ||
| var __importDefault = (this && this.__importDefault) || function (mod) { | ||
| return (mod && mod.__esModule) ? mod : { "default": mod }; | ||
| }; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| exports.Channel = void 0; | ||
| const protocol_1 = require("@replit/protocol"); | ||
| const CrosisError_1 = __importDefault(require("./util/CrosisError")); | ||
| class Channel { | ||
@@ -9,6 +13,3 @@ constructor({ id, name, service, send, onUnrecoverableError, }) { | ||
| if (this.status === 'closed') { | ||
| const e = new Error('Trying to listen to commands on a closed channel ' + | ||
| (this.name ? `(${this.name})` : '') + | ||
| ' for ' + | ||
| this.service); | ||
| const e = new CrosisError_1.default('Trying to listen to commands on a closed channel for ' + this.service, this.getExtras(), { service: this.service }); | ||
| this.onUnrecoverableError(e); | ||
@@ -24,3 +25,3 @@ throw e; | ||
| if (this.status === 'closed') { | ||
| const e = new Error('Calling send on closed channel for ' + this.service); | ||
| const e = new CrosisError_1.default('Calling send on closed channel for ' + this.service, this.getExtras(cmdJson), { service: this.service }); | ||
| this.onUnrecoverableError(e); | ||
@@ -30,3 +31,3 @@ throw e; | ||
| if (this.status === 'closing') { | ||
| const e = new Error('Cannot send any more commands after a close request on channel for ' + this.service); | ||
| const e = new CrosisError_1.default('Cannot send any more commands after a close request on channel for ' + this.service, this.getExtras(cmdJson), { service: this.service }); | ||
| this.onUnrecoverableError(e); | ||
@@ -69,2 +70,16 @@ throw e; | ||
| }; | ||
| this.getExtras = (cmd = null) => { | ||
| const commandExtras = cmd | ||
| ? { | ||
| command: cmd, | ||
| commandRef: cmd.ref, | ||
| commandKeys: Object.keys(cmd), | ||
| } | ||
| : {}; | ||
| return { | ||
| ...commandExtras, | ||
| channelName: this.name, | ||
| channelId: this.id, | ||
| }; | ||
| }; | ||
| this.id = id; | ||
@@ -71,0 +86,0 @@ this.name = name; |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"channel.js","sourceRoot":"","sources":["../src/channel.ts"],"names":[],"mappings":"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"} | ||
| {"version":3,"file":"channel.js","sourceRoot":"","sources":["../src/channel.ts"],"names":[],"mappings":"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"} |
+2
-1
@@ -5,2 +5,3 @@ import { api } from '@replit/protocol'; | ||
| import type { GovalMetadata, OpenChannelCb, ChannelOptions, DebugLog, OpenOptions } from './types'; | ||
| import CrosisError from './util/CrosisError'; | ||
| export declare class Client<Ctx = null> { | ||
@@ -41,3 +42,3 @@ private connectionState; | ||
| onFirewallDenied: () => void; | ||
| setUnrecoverableErrorHandler: (onUnrecoverableError: (e: Error) => void) => void; | ||
| setUnrecoverableErrorHandler: (onUnrecoverableError: (e: CrosisError) => void) => void; | ||
| getConnectionMetadata: () => GovalMetadata | null; | ||
@@ -44,0 +45,0 @@ private connect; |
+119
-119
| "use strict"; | ||
| var __importDefault = (this && this.__importDefault) || function (mod) { | ||
| return (mod && mod.__esModule) ? mod : { "default": mod }; | ||
| }; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
@@ -9,2 +12,3 @@ exports.Client = void 0; | ||
| const types_1 = require("./types"); | ||
| const CrosisError_1 = __importDefault(require("./util/CrosisError")); | ||
| const MAX_RETRY_COUNT = 10; | ||
@@ -15,3 +19,3 @@ class Client { | ||
| if (this.chan0Cb) { | ||
| const error = new Error('You must call `close` before opening the client again'); | ||
| const error = new CrosisError_1.default('You must call `close` before opening the client again'); | ||
| this.onUnrecoverableError(error); | ||
@@ -21,3 +25,3 @@ throw error; | ||
| if (this.destroyed) { | ||
| const error = new Error('Client has been destroyed and cannot be re-used'); | ||
| const error = new CrosisError_1.default('Client has been destroyed and cannot be re-used'); | ||
| this.onUnrecoverableError(error); | ||
@@ -34,4 +38,3 @@ throw error; | ||
| type: 'breadcrumb', | ||
| message: 'open', | ||
| data: { polling: false }, | ||
| message: 'status:open', | ||
| }); | ||
@@ -46,3 +49,3 @@ this.chan0Cb = cb; | ||
| if (sameNameChanRequests.some((cr) => !cr.closeRequested)) { | ||
| const error = new Error(`Channel with name ${options.name} already opened`); | ||
| const error = new CrosisError_1.default(`Channel with name ${options.name} already opened`); | ||
| this.onUnrecoverableError(error); | ||
@@ -52,3 +55,3 @@ throw error; | ||
| if (this.destroyed) { | ||
| const error = new Error('Client has been destroyed and is unusable'); | ||
| const error = new CrosisError_1.default('Client has been destroyed and is unusable'); | ||
| this.onUnrecoverableError(error); | ||
@@ -66,3 +69,2 @@ throw error; | ||
| this.channelRequests.push(channelRequest); | ||
| const serviceName = typeof options.service === 'string' ? options.service : 'from thunk'; | ||
| if (this.getConnectionState() === types_1.ConnectionState.CONNECTED && !sameNameChanRequests.length) { | ||
@@ -74,6 +76,7 @@ this.requestOpenChannel(channelRequest); | ||
| type: 'breadcrumb', | ||
| message: 'open channel delayed', | ||
| message: 'client:openChannel:delayed', | ||
| data: { | ||
| connectionState: this.getConnectionState(), | ||
| service: serviceName, | ||
| service: channelRequest.options.service, | ||
| name: channelRequest.options.name, | ||
| }, | ||
@@ -86,6 +89,7 @@ }); | ||
| type: 'breadcrumb', | ||
| message: 'abandoning close request', | ||
| message: 'client:closeChannel:already requested', | ||
| data: { | ||
| channelId: channelRequest.channelId, | ||
| service: serviceName, | ||
| service: channelRequest.options.service, | ||
| name: channelRequest.options.name, | ||
| }, | ||
@@ -99,9 +103,8 @@ }); | ||
| type: 'breadcrumb', | ||
| message: 'close channel deemed unnecessary', | ||
| message: 'client:closeChannel:channel not open', | ||
| data: { | ||
| channelsCount: Object.keys(this.channels).length, | ||
| requestsCount: this.channelRequests.length, | ||
| connectionState: this.getConnectionState(), | ||
| channelId: channelRequest.channelId, | ||
| service: serviceName, | ||
| service: channelRequest.options.service, | ||
| name: channelRequest.options.name, | ||
| }, | ||
@@ -121,3 +124,3 @@ }); | ||
| if (!this.connectOptions) { | ||
| this.onUnrecoverableError(new Error('Expected connectionOptions')); | ||
| this.onUnrecoverableError(new CrosisError_1.default('Expected connectionOptions')); | ||
| return; | ||
@@ -127,8 +130,7 @@ } | ||
| if (skip && skip(this.connectOptions.context)) { | ||
| const serviceName = typeof options.service === 'string' ? options.service : 'from thunk'; | ||
| this.debug({ | ||
| type: 'breadcrumb', | ||
| message: 'open channel skipped', | ||
| message: 'requestOpenChannel:explicit skip', | ||
| data: { | ||
| service: serviceName, | ||
| service: options.service, | ||
| name: options.name, | ||
@@ -147,3 +149,3 @@ }, | ||
| if (channelRequest.channelId) { | ||
| this.onUnrecoverableError(new Error('Unexpected channelId')); | ||
| this.onUnrecoverableError(new CrosisError_1.default('Unexpected channelId')); | ||
| return; | ||
@@ -180,3 +182,3 @@ } | ||
| if (cmd.openChanRes == null) { | ||
| this.onUnrecoverableError(new Error('Expected openChanRes on command')); | ||
| this.onUnrecoverableError(new CrosisError_1.default('Expected openChanRes on command')); | ||
| return; | ||
@@ -187,3 +189,3 @@ } | ||
| type: 'breadcrumb', | ||
| message: 'openChanres', | ||
| message: 'requestOpenChannel:openChanRes', | ||
| data: { | ||
@@ -197,15 +199,15 @@ id, | ||
| if (!this.connectOptions) { | ||
| this.onUnrecoverableError(new Error('Expected connectionOptions')); | ||
| this.onUnrecoverableError(new CrosisError_1.default('Expected connectionOptions')); | ||
| return; | ||
| } | ||
| if (state === protocol_1.api.OpenChannelRes.State.ERROR) { | ||
| this.onUnrecoverableError(new Error(`Channel open resulted with an error: ${error || 'with no message'}`)); | ||
| this.onUnrecoverableError(new CrosisError_1.default(`Channel open resulted with an error: ${error || 'with no message'}`)); | ||
| return; | ||
| } | ||
| if (typeof id !== 'number' || typeof state !== 'number') { | ||
| this.onUnrecoverableError(new Error('Expected state and channel id')); | ||
| this.onUnrecoverableError(new CrosisError_1.default('Expected state and channel id')); | ||
| return; | ||
| } | ||
| if (this.channels[id] != null) { | ||
| this.onUnrecoverableError(new Error(`Channel with id ${id} already exists`)); | ||
| this.onUnrecoverableError(new CrosisError_1.default(`Channel with id ${id} already exists`)); | ||
| return; | ||
@@ -235,3 +237,3 @@ } | ||
| if (!channelRequest.isOpen) { | ||
| this.onUnrecoverableError(new Error('Tried to request a channel close before opening')); | ||
| this.onUnrecoverableError(new CrosisError_1.default('Tried to request a channel close before opening')); | ||
| return; | ||
@@ -244,3 +246,3 @@ } | ||
| if (!chan0) { | ||
| this.onUnrecoverableError(new Error('Tried to request a channel close but there was no chan0')); | ||
| this.onUnrecoverableError(new CrosisError_1.default('Tried to request a channel close but there was no chan0')); | ||
| return; | ||
@@ -250,3 +252,3 @@ } | ||
| type: 'breadcrumb', | ||
| message: 'requestChannelClose', | ||
| message: 'requestCloseChannel', | ||
| data: { | ||
@@ -267,3 +269,3 @@ id: channelId, | ||
| type: 'breadcrumb', | ||
| message: 'requestChannelClose:chan0Closed', | ||
| message: 'requestCloseChannel:chan0Closed', | ||
| data: { | ||
@@ -278,3 +280,3 @@ id: channelId, | ||
| if (res.closeChanRes == null) { | ||
| this.onUnrecoverableError(new Error('Expected closeChanRes')); | ||
| this.onUnrecoverableError(new CrosisError_1.default('Expected closeChanRes')); | ||
| return; | ||
@@ -284,7 +286,7 @@ } | ||
| if (id == null) { | ||
| this.onUnrecoverableError(new Error(`Expected id, got ${id}`)); | ||
| this.onUnrecoverableError(new CrosisError_1.default(`Expected id, got ${id}`)); | ||
| return; | ||
| } | ||
| if (id !== channelId) { | ||
| this.onUnrecoverableError(new Error(`Expected id from closeChanRes to be ${channelId} got ${id}`)); | ||
| this.onUnrecoverableError(new CrosisError_1.default(`Expected id from closeChanRes to be ${channelId} got ${id}`)); | ||
| return; | ||
@@ -294,3 +296,3 @@ } | ||
| type: 'breadcrumb', | ||
| message: 'requestChannelClose:closeChanRes', | ||
| message: 'requestCloseChannel:closeChanRes', | ||
| data: { | ||
@@ -322,6 +324,6 @@ id: channelId, | ||
| type: 'breadcrumb', | ||
| message: expectReconnect ? 'user temporary close' : 'user close', | ||
| message: expectReconnect ? 'close:temporary' : 'close:intentional', | ||
| }); | ||
| if (!this.chan0Cb || !this.connectOptions) { | ||
| const error = new Error('Must call client.open before closing'); | ||
| const error = new CrosisError_1.default('Must call client.open before closing'); | ||
| this.onUnrecoverableError(error); | ||
@@ -342,3 +344,3 @@ throw error; | ||
| this.destroyed = true; | ||
| this.debug({ type: 'breadcrumb', message: 'destroy' }); | ||
| this.debug({ type: 'breadcrumb', message: 'status:destroy' }); | ||
| if (this.getConnectionState() !== types_1.ConnectionState.DISCONNECTED) { | ||
@@ -358,3 +360,3 @@ this.close({ | ||
| if (!chan) { | ||
| const error = new Error(`No channel with number ${id}`); | ||
| const error = new CrosisError_1.default(`No channel with number ${id}`); | ||
| this.onUnrecoverableError(error); | ||
@@ -403,3 +405,3 @@ throw error; | ||
| this.onFirewallDenied = () => { | ||
| this.onUnrecoverableError(new Error("Can't connect to unfirewalled repl from firewall mode")); | ||
| this.onUnrecoverableError(new CrosisError_1.default("Can't connect to unfirewalled repl from firewall mode")); | ||
| }; | ||
@@ -413,3 +415,3 @@ this.setUnrecoverableErrorHandler = (onUnrecoverableError) => { | ||
| type: 'breadcrumb', | ||
| message: 'connecting', | ||
| message: 'status:connecting', | ||
| data: { | ||
@@ -424,3 +426,3 @@ connectionState: this.connectionState, | ||
| if (this.getConnectionState() !== types_1.ConnectionState.DISCONNECTED) { | ||
| const error = new Error('Client must be disconnected to connect'); | ||
| const error = new CrosisError_1.default('Client must be disconnected to connect'); | ||
| this.onUnrecoverableError(error); | ||
@@ -430,3 +432,3 @@ throw error; | ||
| if (this.ws) { | ||
| const error = new Error('Unexpected existing websocket instance'); | ||
| const error = new CrosisError_1.default('Unexpected existing websocket instance'); | ||
| this.onUnrecoverableError(error); | ||
@@ -436,3 +438,3 @@ throw error; | ||
| if (!this.connectOptions) { | ||
| const error = new Error('Expected connectionOptions'); | ||
| const error = new CrosisError_1.default('Expected connectionOptions'); | ||
| this.onUnrecoverableError(error); | ||
@@ -442,19 +444,19 @@ throw error; | ||
| if (!this.chan0Cb) { | ||
| this.onUnrecoverableError(new Error('Expected chan0Cb')); | ||
| this.onUnrecoverableError(new CrosisError_1.default('Expected chan0Cb')); | ||
| return; | ||
| } | ||
| if (this.chan0CleanupCb) { | ||
| this.onUnrecoverableError(new Error('Unexpected chan0CleanupCb, are you sure you closed')); | ||
| this.onUnrecoverableError(new CrosisError_1.default('Unexpected chan0CleanupCb, are you sure you closed')); | ||
| return; | ||
| } | ||
| if (this.channelRequests.some((cr) => cr.isOpen)) { | ||
| this.onUnrecoverableError(new Error('All channels should be closed when we connect')); | ||
| this.onUnrecoverableError(new CrosisError_1.default('All channels should be closed when we connect')); | ||
| return; | ||
| } | ||
| if (Object.keys(this.channels).length) { | ||
| this.onUnrecoverableError(new Error('Found an an unexpected existing channels')); | ||
| this.onUnrecoverableError(new CrosisError_1.default('Found an an unexpected existing channels')); | ||
| return; | ||
| } | ||
| if (this.connectTimeoutId) { | ||
| this.onUnrecoverableError(new Error('Unexpected connectTimeoutId')); | ||
| this.onUnrecoverableError(new CrosisError_1.default('Unexpected connectTimeoutId')); | ||
| return; | ||
@@ -485,3 +487,3 @@ } | ||
| if (this.fetchTokenAbortController) { | ||
| this.onUnrecoverableError(new Error('Expected fetchTokenAbortController to be null')); | ||
| this.onUnrecoverableError(new CrosisError_1.default('Expected fetchTokenAbortController to be null')); | ||
| return; | ||
@@ -497,5 +499,8 @@ } | ||
| let err; | ||
| if (e instanceof Error) { | ||
| if (e instanceof CrosisError_1.default) { | ||
| err = e; | ||
| } | ||
| else if (e instanceof Error) { | ||
| err = new CrosisError_1.default(e.message); | ||
| } | ||
| else if (e && | ||
@@ -505,10 +510,11 @@ typeof e === 'object' && | ||
| typeof e.message === 'string') { | ||
| err = new Error(e.message); | ||
| err = new CrosisError_1.default(e.message); | ||
| } | ||
| else if (typeof e === 'string') { | ||
| err = new Error(e); | ||
| err = new CrosisError_1.default(e); | ||
| } | ||
| else { | ||
| err = new Error('Unknown error when fetching connection metadata'); | ||
| err = new CrosisError_1.default('Unknown error when fetching connection metadata'); | ||
| } | ||
| err = new CrosisError_1.default(err.message, { ...err.extras, from: 'fetchConnectionMetadata' }, err.tags); | ||
| this.onUnrecoverableError(err); | ||
@@ -522,6 +528,6 @@ return; | ||
| if (abortController.signal.aborted) { | ||
| this.onUnrecoverableError(new Error('Expected abort returned from fetchConnectionMetadata to be truthy when the controller aborts')); | ||
| this.onUnrecoverableError(new CrosisError_1.default('Expected abort returned from fetchConnectionMetadata to be truthy when the controller aborts')); | ||
| return; | ||
| } | ||
| this.onUnrecoverableError(new Error('Abort should only be truthy returned when the abort signal is triggered')); | ||
| this.onUnrecoverableError(new CrosisError_1.default('Abort should only be truthy returned when the abort signal is triggered')); | ||
| return; | ||
@@ -537,3 +543,3 @@ } | ||
| chan0, | ||
| error: new Error('Retriable error'), | ||
| error: new CrosisError_1.default('Retriable error'), | ||
| }); | ||
@@ -543,3 +549,3 @@ return; | ||
| if (this.getConnectionState() !== types_1.ConnectionState.CONNECTING) { | ||
| this.onUnrecoverableError(new Error('Client entered wrong state during connect(); connected=' + | ||
| this.onUnrecoverableError(new CrosisError_1.default('Client entered wrong state during connect(); connected=' + | ||
| (this.getConnectionState() === types_1.ConnectionState.CONNECTED ? 'true' : 'false'))); | ||
@@ -549,3 +555,3 @@ return; | ||
| if (connectionMetadata.error) { | ||
| this.onUnrecoverableError(connectionMetadata.error); | ||
| this.onUnrecoverableError(CrosisError_1.default.fromError(connectionMetadata.error)); | ||
| return; | ||
@@ -558,3 +564,3 @@ } | ||
| type: 'breadcrumb', | ||
| message: 'polling fallback', | ||
| message: 'websocket:polling fallback', | ||
| }); | ||
@@ -576,10 +582,10 @@ } | ||
| if (!onFailed) { | ||
| this.onUnrecoverableError(new Error('Got websocket error but no `onFailed` cb')); | ||
| this.onUnrecoverableError(new CrosisError_1.default('Got websocket error but no `onFailed` cb')); | ||
| return; | ||
| } | ||
| onFailed(new Error('WebSocket errored')); | ||
| onFailed(new CrosisError_1.default('WebSocket errored')); | ||
| }; | ||
| ws.onclose = (event) => { | ||
| if (!onFailed) { | ||
| this.onUnrecoverableError(new Error('Got websocket closure but no `onFailed` cb')); | ||
| this.onUnrecoverableError(new CrosisError_1.default('Got websocket closure but no `onFailed` cb')); | ||
| return; | ||
@@ -613,3 +619,3 @@ } | ||
| } | ||
| onFailed(new Error(errorMessage), retriable); | ||
| onFailed(new CrosisError_1.default(errorMessage), retriable); | ||
| }; | ||
@@ -627,3 +633,3 @@ ws.onopen = () => { | ||
| cancelTimeout = () => { | ||
| this.debug({ type: 'breadcrumb', message: 'cancel timeout' }); | ||
| this.debug({ type: 'breadcrumb', message: 'timeout:cancel' }); | ||
| if (this.connectTimeoutId) { | ||
@@ -635,3 +641,3 @@ clearTimeout(this.connectTimeoutId); | ||
| resetTimeout = () => { | ||
| this.debug({ type: 'breadcrumb', message: 'reset timeout' }); | ||
| this.debug({ type: 'breadcrumb', message: 'timeout:reset' }); | ||
| if (this.connectTimeoutId) { | ||
@@ -641,8 +647,8 @@ clearTimeout(this.connectTimeoutId); | ||
| this.connectTimeoutId = setTimeout(() => { | ||
| this.debug({ type: 'breadcrumb', message: 'connect timeout' }); | ||
| this.debug({ type: 'breadcrumb', message: 'timeout:hit' }); | ||
| if (!onFailed) { | ||
| this.onUnrecoverableError(new Error('Connecting timed out but there was no `onFailed` cb')); | ||
| this.onUnrecoverableError(new CrosisError_1.default('Connecting timed out but there was no `onFailed` cb')); | ||
| return; | ||
| } | ||
| onFailed(new Error('timeout')); | ||
| onFailed(new CrosisError_1.default('timeout')); | ||
| }, timeout); | ||
@@ -663,3 +669,3 @@ }; | ||
| if (cmd.containerState.state == null) { | ||
| this.onUnrecoverableError(new Error('Got containerState but state was not defined')); | ||
| this.onUnrecoverableError(new CrosisError_1.default('Got containerState but state was not defined')); | ||
| return; | ||
@@ -670,3 +676,3 @@ } | ||
| type: 'breadcrumb', | ||
| message: 'containerState', | ||
| message: 'container:state', | ||
| data: state, | ||
@@ -684,6 +690,6 @@ }); | ||
| if (!onFailed) { | ||
| this.onUnrecoverableError(new Error('Got SLEEP but there was no `onFailed` cb')); | ||
| this.onUnrecoverableError(new CrosisError_1.default('Got SLEEP but there was no `onFailed` cb')); | ||
| return; | ||
| } | ||
| onFailed(new Error('Got SLEEP as container state')); | ||
| onFailed(new CrosisError_1.default('Got SLEEP as container state')); | ||
| break; | ||
@@ -701,3 +707,3 @@ default: | ||
| if (this.connectOptions !== currentConnectOptions || this.getChannel(0) !== currentChan0) { | ||
| this.onUnrecoverableError(new Error('onFailed got called but client is in a different connecting context')); | ||
| this.onUnrecoverableError(new CrosisError_1.default('onFailed got called but client is in a different connecting context')); | ||
| return; | ||
@@ -719,11 +725,11 @@ } | ||
| if (this.retryTimeoutId) { | ||
| this.onUnrecoverableError(new Error('Unexpected existing retryTimeoutId')); | ||
| this.onUnrecoverableError(new CrosisError_1.default('Unexpected existing retryTimeoutId')); | ||
| return; | ||
| } | ||
| if (!this.chan0Cb) { | ||
| this.onUnrecoverableError(new Error('Expected chan0Cb when scheduling a retry')); | ||
| this.onUnrecoverableError(new CrosisError_1.default('Expected chan0Cb when scheduling a retry')); | ||
| return; | ||
| } | ||
| if (!this.connectOptions) { | ||
| this.onUnrecoverableError(new Error('Expected connectOptions when scheduling a retry')); | ||
| this.onUnrecoverableError(new CrosisError_1.default('Expected connectOptions when scheduling a retry')); | ||
| return; | ||
@@ -734,3 +740,3 @@ } | ||
| type: 'breadcrumb', | ||
| message: 'redirectInitiatorFallback', | ||
| message: 'client:redirectInitiatorFallback', | ||
| data: { | ||
@@ -748,3 +754,3 @@ connectionState: this.connectionState, | ||
| if (!this.chan0Cb) { | ||
| this.onUnrecoverableError(new Error('Scheduled retry is called after we closed?')); | ||
| this.onUnrecoverableError(new CrosisError_1.default('Scheduled retry is called after we closed?')); | ||
| return; | ||
@@ -755,3 +761,3 @@ } | ||
| type: 'breadcrumb', | ||
| message: 'retrying', | ||
| message: 'status:retrying', | ||
| data: { | ||
@@ -788,10 +794,3 @@ connectionState: this.connectionState, | ||
| if (this.ws == null) { | ||
| this.debug({ | ||
| type: 'breadcrumb', | ||
| message: 'calling send on a closed client', | ||
| data: { | ||
| channelId: cmd.channel, | ||
| }, | ||
| }); | ||
| this.onUnrecoverableError(new Error('Calling send on a closed client')); | ||
| this.onUnrecoverableError(new CrosisError_1.default('Calling send on a closed client')); | ||
| return; | ||
@@ -821,15 +820,15 @@ } | ||
| if (!this.ws) { | ||
| this.onUnrecoverableError(new Error('Expected Websocket instance')); | ||
| this.onUnrecoverableError(new CrosisError_1.default('Expected Websocket instance')); | ||
| return; | ||
| } | ||
| if (!this.connectOptions) { | ||
| this.onUnrecoverableError(new Error('Expected connectionOptions')); | ||
| this.onUnrecoverableError(new CrosisError_1.default('Expected connectionOptions')); | ||
| return; | ||
| } | ||
| if (!chan0) { | ||
| this.onUnrecoverableError(new Error('Expected chan0 to be truthy')); | ||
| this.onUnrecoverableError(new CrosisError_1.default('Expected chan0 to be truthy')); | ||
| return; | ||
| } | ||
| if (!this.chan0Cb) { | ||
| this.onUnrecoverableError(new Error('Expected chan0Cb to be truthy')); | ||
| this.onUnrecoverableError(new CrosisError_1.default('Expected chan0Cb to be truthy')); | ||
| return; | ||
@@ -839,3 +838,3 @@ } | ||
| if (this.getConnectionState() === types_1.ConnectionState.DISCONNECTED) { | ||
| this.onUnrecoverableError(new Error('Got a close event on socket but client is in disconnected state')); | ||
| this.onUnrecoverableError(new CrosisError_1.default('Got a close event on socket but client is in disconnected state')); | ||
| return; | ||
@@ -845,3 +844,3 @@ } | ||
| type: 'breadcrumb', | ||
| message: 'wsclose', | ||
| message: 'websocket:close', | ||
| data: { | ||
@@ -863,3 +862,3 @@ event, | ||
| this.setConnectionState(types_1.ConnectionState.CONNECTED); | ||
| this.debug({ type: 'breadcrumb', message: 'connected!' }); | ||
| this.debug({ type: 'breadcrumb', message: 'status:connected' }); | ||
| this.channelRequests.forEach((channelRequest) => { | ||
@@ -877,7 +876,7 @@ this.requestOpenChannel(channelRequest); | ||
| if (this.getConnectionState() === types_1.ConnectionState.DISCONNECTED) { | ||
| this.onUnrecoverableError(new Error('handleClose is called but client already disconnected')); | ||
| this.onUnrecoverableError(new CrosisError_1.default('handleClose is called but client already disconnected')); | ||
| return; | ||
| } | ||
| if (this.ws && this.fetchTokenAbortController) { | ||
| this.onUnrecoverableError(new Error('fetchTokenAbortController and websocket exist simultaneously')); | ||
| this.onUnrecoverableError(new CrosisError_1.default('fetchTokenAbortController and websocket exist simultaneously')); | ||
| return; | ||
@@ -888,3 +887,3 @@ } | ||
| type: 'breadcrumb', | ||
| message: 'handle close', | ||
| message: 'client:handleClose', | ||
| data: { | ||
@@ -912,11 +911,9 @@ closeReason: closeResult.closeReason, | ||
| const willChannelReconnect = willClientReconnect && !channelRequest.closeRequested; | ||
| const serviceName = typeof channelRequest.options.service === 'string' | ||
| ? channelRequest.options.service | ||
| : 'from thunk'; | ||
| this.debug({ | ||
| type: 'breadcrumb', | ||
| message: 'handle channel close', | ||
| message: 'client:handleClose:closing channel', | ||
| data: { | ||
| channelId: channelRequest.channelId, | ||
| serviceName, | ||
| service: channelRequest.options.service, | ||
| name: channelRequest.options.name, | ||
| closeRequested: channelRequest.closeRequested, | ||
@@ -962,5 +959,5 @@ channelRequestIsOpen: channelRequest.isOpen, | ||
| type: 'breadcrumb', | ||
| message: 'out of sync channel', | ||
| message: 'client:handleClose:out of sync', | ||
| data: { | ||
| id: channel.id, | ||
| channelId: channel.id, | ||
| status: channel.status, | ||
@@ -973,3 +970,3 @@ service: channel.service, | ||
| this.channels = {}; | ||
| this.onUnrecoverableError(new Error('channels out of sync, should have been cleaned up by channelRequests')); | ||
| this.onUnrecoverableError(new CrosisError_1.default('channels out of sync, should have been cleaned up by channelRequests')); | ||
| return; | ||
@@ -985,5 +982,8 @@ } | ||
| else if (!this.chan0Cb && closeResult.closeReason !== types_1.ClientCloseReason.Error) { | ||
| this.onUnrecoverableError(new Error('`open` should have been called before `handleClose` (no cleanup or callback function, ' + | ||
| this.onUnrecoverableError(new CrosisError_1.default('`open` should have been called before `handleClose` (no cleanup or callback function, ' + | ||
| (willClientReconnect ? 'would reconnect' : 'would not reconnect') + | ||
| ')')); | ||
| ')', { | ||
| closeReason: closeResult.closeReason, | ||
| connectionState: this.getConnectionState(), | ||
| })); | ||
| return; | ||
@@ -997,3 +997,3 @@ } | ||
| type: 'breadcrumb', | ||
| message: 'client closed', | ||
| message: 'status:closed', | ||
| }); | ||
@@ -1004,3 +1004,3 @@ return; | ||
| type: 'breadcrumb', | ||
| message: 'reconnecting', | ||
| message: 'status:reconnecting', | ||
| }); | ||
@@ -1013,3 +1013,3 @@ this.connect({ tryCount: 0, websocketFailureCount: 0 }); | ||
| type: 'breadcrumb', | ||
| message: 'cleanupSocket', | ||
| message: 'websocket:cleanup', | ||
| data: { | ||
@@ -1032,3 +1032,3 @@ hasWs: Boolean(ws), | ||
| type: 'breadcrumb', | ||
| message: 'wsclose', | ||
| message: 'websocket:close', | ||
| }); | ||
@@ -1041,3 +1041,3 @@ ws.close(); | ||
| type: 'breadcrumb', | ||
| message: 'unrecoverable error', | ||
| message: 'onUnrecoverableError', | ||
| data: { | ||
@@ -1069,9 +1069,9 @@ message: e.message, | ||
| if (!this.connectionMetadata) { | ||
| return this.onUnrecoverableError(new Error("client's connectionMetadata is null when redirecting to initiator")); | ||
| return this.onUnrecoverableError(new CrosisError_1.default("client's connectionMetadata is null when redirecting to initiator")); | ||
| } | ||
| if (!this.connectOptions) { | ||
| return this.onUnrecoverableError(new Error("client's connectOptions is null when redirecting to initiator")); | ||
| return this.onUnrecoverableError(new CrosisError_1.default("client's connectOptions is null when redirecting to initiator")); | ||
| } | ||
| if (!this.chan0Cb) { | ||
| return this.onUnrecoverableError(new Error("client's chan0Cb is null when redirecting to initiator")); | ||
| return this.onUnrecoverableError(new CrosisError_1.default("client's chan0Cb is null when redirecting to initiator")); | ||
| } | ||
@@ -1100,3 +1100,3 @@ const context = this.connectOptions.context; | ||
| type: 'breadcrumb', | ||
| message: 'handling redirect', | ||
| message: 'client:handleRedirect', | ||
| data: { | ||
@@ -1107,9 +1107,9 @@ connectionMetadata: this.connectionMetadata, | ||
| if (!this.connectionMetadata) { | ||
| return this.onUnrecoverableError(new Error("client's connectionMetadata is null when redirecting")); | ||
| return this.onUnrecoverableError(new CrosisError_1.default("client's connectionMetadata is null when redirecting")); | ||
| } | ||
| if (!this.connectOptions) { | ||
| return this.onUnrecoverableError(new Error("client's connectOptions is null when redirecting")); | ||
| return this.onUnrecoverableError(new CrosisError_1.default("client's connectOptions is null when redirecting")); | ||
| } | ||
| if (!this.chan0Cb) { | ||
| return this.onUnrecoverableError(new Error("client's chan0Cb is null when redirecting")); | ||
| return this.onUnrecoverableError(new CrosisError_1.default("client's chan0Cb is null when redirecting")); | ||
| } | ||
@@ -1116,0 +1116,0 @@ const context = this.connectOptions.context; |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"} | ||
| {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"} |
+64
-90
| import type { api } from '@replit/protocol'; | ||
| import type { Channel } from './channel'; | ||
| import CrosisError from './util/CrosisError'; | ||
| export declare enum ConnectionState { | ||
@@ -50,12 +51,16 @@ CONNECTING = 0, | ||
| type: 'breadcrumb'; | ||
| message: 'constructor' | 'connected!' | 'user close' | 'user temporary close' | 'client closed' | 'cancel timeout' | 'reset timeout' | 'connect timeout' | 'polling fallback' | 'reconnecting' | 'destroy'; | ||
| message: 'constructor' | 'status:open' | 'status:connected' | 'status:closed' | 'status:reconnecting' | 'status:destroy' | 'close:intentional' | 'close:temporary' | 'timeout:cancel' | 'timeout:reset' | 'timeout:hit' | 'websocket:polling fallback'; | ||
| } | { | ||
| type: 'breadcrumb'; | ||
| message: 'open'; | ||
| message: 'status:connecting'; | ||
| data: { | ||
| polling: false; | ||
| connectionState: ConnectionState; | ||
| connectTries: number; | ||
| websocketFailureCount: number; | ||
| readyState: WebSocket['readyState'] | undefined; | ||
| chan0CbExists: boolean; | ||
| }; | ||
| } | { | ||
| type: 'breadcrumb'; | ||
| message: 'connecting'; | ||
| message: 'status:retrying'; | ||
| data: { | ||
@@ -65,13 +70,22 @@ connectionState: ConnectionState; | ||
| websocketFailureCount: number; | ||
| readyState: WebSocket['readyState'] | undefined; | ||
| chan0CbExists: boolean; | ||
| error: CrosisError; | ||
| wsReadyState?: WebSocket['readyState']; | ||
| }; | ||
| } | { | ||
| type: 'breadcrumb'; | ||
| message: 'openChanres'; | ||
| message: 'container:state'; | ||
| data: api.ContainerState.State; | ||
| } | { | ||
| type: 'breadcrumb'; | ||
| message: 'websocket:close'; | ||
| data?: { | ||
| event: CloseEvent | Event; | ||
| }; | ||
| } | { | ||
| type: 'breadcrumb'; | ||
| message: 'websocket:cleanup'; | ||
| data: { | ||
| id: number; | ||
| state: api.OpenChannelRes['state']; | ||
| error: string; | ||
| ref: string; | ||
| hasWs: boolean; | ||
| readyState: WebSocket['readyState'] | null; | ||
| connectionState: ConnectionState; | ||
| }; | ||
@@ -89,11 +103,19 @@ } | { | ||
| type: 'breadcrumb'; | ||
| message: 'requestChannelClose'; | ||
| message: 'requestOpenChannel:openChanRes'; | ||
| data: { | ||
| id: number; | ||
| state: api.OpenChannelRes['state']; | ||
| error: string; | ||
| ref: string; | ||
| }; | ||
| } | { | ||
| type: 'breadcrumb'; | ||
| message: 'requestOpenChannel:explicit skip'; | ||
| data: { | ||
| service: ChannelOptions<Ctx>['service']; | ||
| name: ChannelOptions<Ctx>['name']; | ||
| service: ChannelOptions<Ctx>['service']; | ||
| }; | ||
| } | { | ||
| type: 'breadcrumb'; | ||
| message: 'requestChannelClose:chan0Closed'; | ||
| message: 'requestCloseChannel'; | ||
| data: { | ||
@@ -106,3 +128,3 @@ id: number; | ||
| type: 'breadcrumb'; | ||
| message: 'requestChannelClose:closeChanRes'; | ||
| message: 'requestCloseChannel:chan0Closed'; | ||
| data: { | ||
@@ -112,17 +134,15 @@ id: number; | ||
| service: ChannelOptions<Ctx>['service']; | ||
| closeStatus: api.CloseChannelRes.Status; | ||
| }; | ||
| } | { | ||
| type: 'breadcrumb'; | ||
| message: 'retrying'; | ||
| message: 'requestCloseChannel:closeChanRes'; | ||
| data: { | ||
| connectionState: ConnectionState; | ||
| connectTries: number; | ||
| websocketFailureCount: number; | ||
| error: Error; | ||
| wsReadyState?: WebSocket['readyState']; | ||
| id: number; | ||
| name: ChannelOptions<Ctx>['name']; | ||
| service: ChannelOptions<Ctx>['service']; | ||
| closeStatus: api.CloseChannelRes.Status; | ||
| }; | ||
| } | { | ||
| type: 'breadcrumb'; | ||
| message: 'redirectInitiatorFallback'; | ||
| message: 'client:redirectInitiatorFallback'; | ||
| data: { | ||
@@ -132,3 +152,3 @@ connectionState: ConnectionState; | ||
| websocketFailureCount: number; | ||
| error: Error; | ||
| error: CrosisError; | ||
| wsReadyState?: WebSocket['readyState']; | ||
@@ -138,16 +158,11 @@ }; | ||
| type: 'breadcrumb'; | ||
| message: 'containerState'; | ||
| data: api.ContainerState.State; | ||
| } | { | ||
| type: 'breadcrumb'; | ||
| message: 'wsclose'; | ||
| data?: { | ||
| event: CloseEvent | Event; | ||
| message: 'client:handleRedirect'; | ||
| data: { | ||
| connectionMetadata: GovalMetadata | null; | ||
| }; | ||
| } | { | ||
| type: 'breadcrumb'; | ||
| message: 'cleanupSocket'; | ||
| message: 'client:handleClose'; | ||
| data: { | ||
| hasWs: boolean; | ||
| readyState: WebSocket['readyState'] | null; | ||
| closeReason: ClientCloseReason; | ||
| connectionState: ConnectionState; | ||
@@ -157,18 +172,7 @@ }; | ||
| type: 'breadcrumb'; | ||
| message: 'unrecoverable error'; | ||
| message: 'client:handleClose:closing channel'; | ||
| data: { | ||
| message: string; | ||
| }; | ||
| } | { | ||
| type: 'breadcrumb'; | ||
| message: 'handling redirect'; | ||
| data: { | ||
| connectionMetadata: GovalMetadata | null; | ||
| }; | ||
| } | { | ||
| type: 'breadcrumb'; | ||
| message: 'handle channel close'; | ||
| data: { | ||
| channelId: number | null; | ||
| serviceName: string | undefined; | ||
| service: ChannelOptions<Ctx>['service']; | ||
| name: ChannelOptions<Ctx>['name']; | ||
| closeRequested: boolean; | ||
@@ -181,11 +185,5 @@ channelRequestIsOpen: boolean; | ||
| type: 'breadcrumb'; | ||
| message: 'calling send on a closed client'; | ||
| message: 'client:handleClose:out of sync'; | ||
| data: { | ||
| channelId: number; | ||
| }; | ||
| } | { | ||
| type: 'breadcrumb'; | ||
| message: 'out of sync channel'; | ||
| data: { | ||
| id: number | null; | ||
| channelId: number | null; | ||
| status: string; | ||
@@ -197,14 +195,6 @@ service: string | undefined; | ||
| type: 'breadcrumb'; | ||
| message: 'channels on close'; | ||
| message: 'client:openChannel:delayed'; | ||
| data: { | ||
| id: number | null; | ||
| status: string; | ||
| service: string | undefined; | ||
| service: ChannelOptions<Ctx>['service']; | ||
| name: ChannelOptions<Ctx>['name']; | ||
| }; | ||
| } | { | ||
| type: 'breadcrumb'; | ||
| message: 'handle close'; | ||
| data: { | ||
| closeReason: ClientCloseReason; | ||
| connectionState: ConnectionState; | ||
@@ -214,22 +204,15 @@ }; | ||
| type: 'breadcrumb'; | ||
| message: 'open channel delayed'; | ||
| message: 'client:closeChannel:channel not open'; | ||
| data: { | ||
| channelId: number | null; | ||
| service: ChannelOptions<Ctx>['service']; | ||
| name: ChannelOptions<Ctx>['name']; | ||
| connectionState: ConnectionState; | ||
| service: string | undefined; | ||
| }; | ||
| } | { | ||
| type: 'breadcrumb'; | ||
| message: 'close channel deemed unnecessary'; | ||
| message: 'client:closeChannel:already requested'; | ||
| data: { | ||
| connectionState: ConnectionState; | ||
| channelId: number | null; | ||
| service: string; | ||
| channelsCount: number; | ||
| requestsCount: number; | ||
| }; | ||
| } | { | ||
| type: 'breadcrumb'; | ||
| message: 'open channel skipped'; | ||
| data: { | ||
| service: string | undefined; | ||
| service: ChannelOptions<Ctx>['service']; | ||
| name: ChannelOptions<Ctx>['name']; | ||
@@ -239,15 +222,6 @@ }; | ||
| type: 'breadcrumb'; | ||
| message: 'abandoning close request'; | ||
| message: 'onUnrecoverableError'; | ||
| data: { | ||
| service: string; | ||
| channelId: number | null; | ||
| message: string; | ||
| }; | ||
| } | { | ||
| type: 'breadcrumb'; | ||
| message: 'requestOpenChannel: channel already exists'; | ||
| data: { | ||
| id: number; | ||
| name: ChannelOptions<Ctx>['name']; | ||
| service: string; | ||
| }; | ||
| }; | ||
@@ -254,0 +228,0 @@ export declare type DebugLog<Ctx> = DebugLogBreadcrumb<Ctx> | { |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";;;AAGA,IAAY,eAIX;AAJD,WAAY,eAAe;IACzB,iEAAc,CAAA;IACd,+DAAa,CAAA;IACb,qEAAgB,CAAA;AAClB,CAAC,EAJW,eAAe,GAAf,uBAAe,KAAf,uBAAe,QAI1B;AAED,IAAY,4BAWX;AAXD,WAAY,4BAA4B;IAItC,mDAAmB,CAAA;IAMnB,uDAAuB,CAAA;AACzB,CAAC,EAXW,4BAA4B,GAA5B,oCAA4B,KAA5B,oCAA4B,QAWvC;AA+CD,IAAY,iBAiBX;AAjBD,WAAY,iBAAiB;IAI3B,gDAA2B,CAAA;IAI3B,4CAAuB,CAAA;IAIvB,kDAA6B,CAAA;IAI7B,oCAAe,CAAA;AACjB,CAAC,EAjBW,iBAAiB,GAAjB,yBAAiB,KAAjB,yBAAiB,QAiB5B;AAoTY,QAAA,SAAS,GAAG;IACvB,yBAAyB,EAAE,IAAI;IAC/B,gBAAgB,EAAE,IAAI;IACtB,eAAe,EAAE,IAAI;IACrB,mBAAmB,EAAE,IAAI;IACzB,UAAU,EAAE,IAAI;IAChB,qBAAqB,EAAE,IAAI;CAC5B,CAAC"} | ||
| {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";;;AAIA,IAAY,eAIX;AAJD,WAAY,eAAe;IACzB,iEAAc,CAAA;IACd,+DAAa,CAAA;IACb,qEAAgB,CAAA;AAClB,CAAC,EAJW,eAAe,GAAf,uBAAe,KAAf,uBAAe,QAI1B;AAED,IAAY,4BAWX;AAXD,WAAY,4BAA4B;IAItC,mDAAmB,CAAA;IAMnB,uDAAuB,CAAA;AACzB,CAAC,EAXW,4BAA4B,GAA5B,oCAA4B,KAA5B,oCAA4B,QAWvC;AA+CD,IAAY,iBAiBX;AAjBD,WAAY,iBAAiB;IAI3B,gDAA2B,CAAA;IAI3B,4CAAuB,CAAA;IAIvB,kDAA6B,CAAA;IAI7B,oCAAe,CAAA;AACjB,CAAC,EAjBW,iBAAiB,GAAjB,yBAAiB,KAAjB,yBAAiB,QAiB5B;AAuRY,QAAA,SAAS,GAAG;IACvB,yBAAyB,EAAE,IAAI;IAC/B,gBAAgB,EAAE,IAAI;IACtB,eAAe,EAAE,IAAI;IACrB,mBAAmB,EAAE,IAAI;IACzB,UAAU,EAAE,IAAI;IAChB,qBAAqB,EAAE,IAAI;CAC5B,CAAC"} |
@@ -25,5 +25,9 @@ "use strict"; | ||
| }; | ||
| var __importDefault = (this && this.__importDefault) || function (mod) { | ||
| return (mod && mod.__esModule) ? mod : { "default": mod }; | ||
| }; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| exports.getConnectionStr = exports.getWebSocketClass = exports.defaultGetNextRetryDelay = void 0; | ||
| const urllib = __importStar(require("url")); | ||
| const CrosisError_1 = __importDefault(require("./CrosisError")); | ||
| const BACKOFF_FACTOR = 1.7; | ||
@@ -49,3 +53,3 @@ const MAX_BACKOFF = 15000; | ||
| if (!isWebSocket(WebSocketClass)) { | ||
| throw new Error('Passed in WebSocket does not look like a standard WebSocket'); | ||
| throw new CrosisError_1.default('Passed in WebSocket does not look like a standard WebSocket'); | ||
| } | ||
@@ -56,7 +60,7 @@ return WebSocketClass; | ||
| if (!isWebSocket(WebSocket)) { | ||
| throw new Error('Global WebSocket does not look like a standard WebSocket'); | ||
| throw new CrosisError_1.default('Global WebSocket does not look like a standard WebSocket'); | ||
| } | ||
| return WebSocket; | ||
| } | ||
| throw new Error('Please pass in a WebSocket class or add it to global'); | ||
| throw new CrosisError_1.default('Please pass in a WebSocket class or add it to global'); | ||
| } | ||
@@ -63,0 +67,0 @@ exports.getWebSocketClass = getWebSocketClass; |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/util/helpers.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,4CAA8B;AAG9B,MAAM,cAAc,GAAG,GAAG,CAAC;AAC3B,MAAM,WAAW,GAAG,KAAK,CAAC;AAK1B,SAAgB,wBAAwB,CAAC,WAAmB;IAC1D,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,GAAG,CAAC,CAAC;IACjD,MAAM,OAAO,GAAG,cAAc,IAAI,WAAW,GAAG,IAAI,CAAC;IAErD,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAC;AACnD,CAAC;AALD,4DAKC;AAED,SAAS,WAAW,CAAC,CAAU;IAC7B,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,OAAO,CAAC,KAAK,UAAU,EAAE;QACpD,OAAO,KAAK,CAAC;KACd;IAED,IAAI,CAAC,CAAC,EAAE;QACN,OAAO,KAAK,CAAC;KACd;IAED,OAAO,MAAM,IAAI,CAAC,IAAK,CAAe,CAAC,IAAI,KAAK,CAAC,CAAC;AACpD,CAAC;AAKD,SAAgB,iBAAiB,CAC/B,cAAyD;IAEzD,IAAI,cAAc,EAAE;QAClB,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,EAAE;YAChC,MAAM,IAAI,KAAK,CAAC,6DAA6D,CAAC,CAAC;SAChF;QAED,OAAO,cAAc,CAAC;KACvB;IAED,IAAI,OAAO,SAAS,KAAK,WAAW,EAAE;QACpC,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,EAAE;YAC3B,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAC;SAC7E;QAED,OAAO,SAAS,CAAC;KAClB;IAED,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;AAC1E,CAAC;AApBD,8CAoBC;AAMD,SAAgB,gBAAgB,CAAC,kBAAiC,EAAE,WAAoB;IACtF,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;IACnD,IAAI,WAAW,EAAE;QACf,IAAI,CAAC,QAAQ,GAAG,WAAW,CAAC;QAC5B,IAAI,CAAC,IAAI,GAAG,WAAW,CAAC;QACxB,IAAI,CAAC,QAAQ,GAAG,SAAS,kBAAkB,CAAC,KAAK,IAAI,kBAAkB,CACrE,kBAAkB,CAAC,IAAI,CACxB,EAAE,CAAC;KACL;SAAM;QACL,IAAI,CAAC,QAAQ,GAAG,SAAS,kBAAkB,CAAC,KAAK,EAAE,CAAC;KACrD;IAED,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;AAC7B,CAAC;AAbD,4CAaC"} | ||
| {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/util/helpers.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,4CAA8B;AAE9B,gEAAwC;AAExC,MAAM,cAAc,GAAG,GAAG,CAAC;AAC3B,MAAM,WAAW,GAAG,KAAK,CAAC;AAK1B,SAAgB,wBAAwB,CAAC,WAAmB;IAC1D,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,GAAG,CAAC,CAAC;IACjD,MAAM,OAAO,GAAG,cAAc,IAAI,WAAW,GAAG,IAAI,CAAC;IAErD,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAC;AACnD,CAAC;AALD,4DAKC;AAED,SAAS,WAAW,CAAC,CAAU;IAC7B,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,OAAO,CAAC,KAAK,UAAU,EAAE;QACpD,OAAO,KAAK,CAAC;KACd;IAED,IAAI,CAAC,CAAC,EAAE;QACN,OAAO,KAAK,CAAC;KACd;IAED,OAAO,MAAM,IAAI,CAAC,IAAK,CAAe,CAAC,IAAI,KAAK,CAAC,CAAC;AACpD,CAAC;AAKD,SAAgB,iBAAiB,CAC/B,cAAyD;IAEzD,IAAI,cAAc,EAAE;QAClB,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,EAAE;YAChC,MAAM,IAAI,qBAAW,CAAC,6DAA6D,CAAC,CAAC;SACtF;QAED,OAAO,cAAc,CAAC;KACvB;IAED,IAAI,OAAO,SAAS,KAAK,WAAW,EAAE;QACpC,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,EAAE;YAC3B,MAAM,IAAI,qBAAW,CAAC,0DAA0D,CAAC,CAAC;SACnF;QAED,OAAO,SAAS,CAAC;KAClB;IAED,MAAM,IAAI,qBAAW,CAAC,sDAAsD,CAAC,CAAC;AAChF,CAAC;AApBD,8CAoBC;AAMD,SAAgB,gBAAgB,CAAC,kBAAiC,EAAE,WAAoB;IACtF,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;IACnD,IAAI,WAAW,EAAE;QACf,IAAI,CAAC,QAAQ,GAAG,WAAW,CAAC;QAC5B,IAAI,CAAC,IAAI,GAAG,WAAW,CAAC;QACxB,IAAI,CAAC,QAAQ,GAAG,SAAS,kBAAkB,CAAC,KAAK,IAAI,kBAAkB,CACrE,kBAAkB,CAAC,IAAI,CACxB,EAAE,CAAC;KACL;SAAM;QACL,IAAI,CAAC,QAAQ,GAAG,SAAS,kBAAkB,CAAC,KAAK,EAAE,CAAC;KACrD;IAED,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;AAC7B,CAAC;AAbD,4CAaC"} |
+1
-1
| { | ||
| "name": "@replit/crosis", | ||
| "version": "11.0.0", | ||
| "version": "12.0.0", | ||
| "description": "Goval connection and channel manager", | ||
@@ -5,0 +5,0 @@ "files": [ |
| export {}; |
| "use strict"; | ||
| var __importDefault = (this && this.__importDefault) || function (mod) { | ||
| return (mod && mod.__esModule) ? mod : { "default": mod }; | ||
| }; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| const __1 = require(".."); | ||
| const types_1 = require("../types"); | ||
| const concurrent_1 = require("../__testutils__/concurrent"); | ||
| const done_1 = require("../__testutils__/done"); | ||
| const genConnectionMetadata_1 = __importDefault(require("../../debug/genConnectionMetadata")); | ||
| const WebSocket = require('ws'); | ||
| jest.setTimeout(30 * 1000); | ||
| const testingClients = []; | ||
| function getClient(done) { | ||
| const c = new __1.Client(); | ||
| c.setUnrecoverableErrorHandler(done); | ||
| testingClients.push(c); | ||
| return c; | ||
| } | ||
| const getConnectionMetadata = async () => ({ | ||
| ...(0, genConnectionMetadata_1.default)(), | ||
| error: null, | ||
| }); | ||
| (0, concurrent_1.concurrent)('client connect', (done) => { | ||
| const client = getClient(done); | ||
| const ctx = { username: 'zyzz' }; | ||
| const calls = []; | ||
| function setOffEndingStuff() { | ||
| client.close(); | ||
| if (calls.length === 3) { | ||
| expect(calls).toEqual(['outer', 'inner-1', 'inner-2']); | ||
| done(); | ||
| } | ||
| else { | ||
| setTimeout(() => { | ||
| try { | ||
| expect(calls).toEqual(['outer', 'inner-1', 'inner-2']); | ||
| } | ||
| catch (e) { | ||
| done(e); | ||
| } | ||
| done(); | ||
| }, 5000); | ||
| } | ||
| } | ||
| client.onDebugLog((log) => { | ||
| if (log.type !== 'breadcrumb') | ||
| return; | ||
| if (log.message == 'reset timeout') | ||
| return; | ||
| if (log.message == 'cancel timeout') | ||
| return; | ||
| console.log(log); | ||
| }); | ||
| const cbOuter = () => { | ||
| console.log('> outer open'); | ||
| calls.push('outer'); | ||
| }; | ||
| const cbOneInner = () => { | ||
| console.log('>> connected open 1'); | ||
| calls.push('inner-1'); | ||
| }; | ||
| const cbTwoInner = () => { | ||
| console.log('>> connected open 2'); | ||
| calls.push('inner-2'); | ||
| setOffEndingStuff(); | ||
| }; | ||
| console.log('request outer open'); | ||
| const od = client.openChannel({ service: 'exec' }, cbOuter); | ||
| client.onConnectionStateChange((state) => { | ||
| if (state === types_1.ConnectionState.CONNECTED) { | ||
| console.log('> request open 1'); | ||
| client.openChannel({ service: 'exec' }, cbOneInner); | ||
| console.log('> request dispose outer'); | ||
| od(); | ||
| console.log('> request open 2'); | ||
| client.openChannel({ service: 'exec' }, cbTwoInner); | ||
| } | ||
| }); | ||
| console.log('request client open'); | ||
| client.open({ | ||
| fetchConnectionMetadata: getConnectionMetadata, | ||
| WebSocketClass: WebSocket, | ||
| context: ctx, | ||
| }, (0, done_1.wrapWithDone)(done, () => { | ||
| console.log('> got chan0'); | ||
| })); | ||
| }); | ||
| //# sourceMappingURL=regression.test.js.map |
| {"version":3,"file":"regression.test.js","sourceRoot":"","sources":["../../src/__tests__/regression.test.ts"],"names":[],"mappings":"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"} |
222669
-0.6%3140
-2.21%