diff --git a/packages/core/src/network/client.ts b/packages/core/src/network/client.ts index 5163a02f..6e793e7d 100644 --- a/packages/core/src/network/client.ts +++ b/packages/core/src/network/client.ts @@ -238,7 +238,7 @@ export class MtClient extends EventEmitter { readonly _config = new ConfigManager(() => this.call({ _: 'help.getConfig' })) - emitError: (err: unknown, connection?: SessionConnection) => void = console.error.bind(console) + private _emitError?: (err: unknown, connection?: SessionConnection) => void readonly log: Logger readonly network: NetworkManager @@ -310,6 +310,14 @@ export class MtClient extends EventEmitter { ) } + emitError(err: unknown, connection?: SessionConnection): void { + if (this._emitError) { + this._emitError(err, connection) + } else { + this.log.error('unhandled error:', err) + } + } + private _prepare = asyncResettable(async () => { await this.crypto.initialize?.() await this.storage.load()