mirror of
https://github.com/clusterio/clusterio.git
synced 2026-11-11 23:04:52 +09:00
Use return type deduction for timers
Fix updates to Node.js timers types breaking the TypeScript build by deducing the correct type from the return type of the setTimeout/setInterval functions.
This commit is contained in:
1 parent
e51a644788
commit
9c9adf7c8e
6 files changed
+8
-8
No files matched your search
@@ -87,7 +87,7 @@ export default class Controller {
|
||||
|
||||
logDirectory: string = "";
|
||||
clusterLogIndex: lib.LogIndex | null = null;
|
||||
clusterLogBuildInterval: NodeJS.Timer | null = null;
|
||||
clusterLogBuildInterval: ReturnType<typeof setInterval> | null = null;
|
||||
|
||||
constructor(
|
||||
clusterLogger: winston.Logger,
|
||||
|
||||
@@ -17,7 +17,7 @@ export interface WebSocketClusterio extends WebSocket {
|
||||
* @alias module:controller/src/WsServerConnector
|
||||
*/
|
||||
export default class WsServerConnector extends lib.WebSocketBaseConnector {
|
||||
_timeoutId: NodeJS.Timeout | null = null;
|
||||
_timeoutId: ReturnType<typeof setTimeout> | null = null;
|
||||
declare _socket: WebSocketClusterio | null;
|
||||
|
||||
constructor(
|
||||
|
||||
@@ -255,7 +255,7 @@ interface ProxyStream {
|
||||
mime: string | null;
|
||||
filename: string | null;
|
||||
events: events.EventEmitter;
|
||||
timeout: NodeJS.Timeout;
|
||||
timeout: ReturnType<typeof setTimeout>;
|
||||
}
|
||||
|
||||
export async function createProxyStream(app: Application): Promise<ProxyStream> {
|
||||
|
||||
@@ -30,7 +30,7 @@ export default class RateLimiter {
|
||||
action?: Function;
|
||||
|
||||
private _lastRun = 0;
|
||||
private _runTimeout?: NodeJS.Timeout;
|
||||
private _runTimeout?: ReturnType<typeof setTimeout>;
|
||||
|
||||
/**
|
||||
* Construct RateLimiter helper
|
||||
|
||||
@@ -37,7 +37,7 @@ export async function wait(duration: number) {
|
||||
* @param {*=} timeoutResult - Value to return if the operation timed out.
|
||||
*/
|
||||
export async function timeout<T>(promise: Promise<T>, time: number, timeoutResult: T) {
|
||||
let timer: NodeJS.Timer | undefined;
|
||||
let timer: ReturnType<typeof setTimeout> | undefined;
|
||||
try {
|
||||
return await Promise.race([
|
||||
promise,
|
||||
|
||||
@@ -99,7 +99,7 @@ export abstract class WebSocketBaseConnector extends BaseConnector {
|
||||
_closing = false;
|
||||
_socket: WebSocket | null = null;
|
||||
_lastHeartbeat: number | null = null;
|
||||
_heartbeatId: NodeJS.Timer | null = null;
|
||||
_heartbeatId: ReturnType<typeof setInterval> | null = null;
|
||||
_heartbeatInterval: number | null = null;
|
||||
_lastReceivedSeq = undefined;
|
||||
_sendBuffer: (ReliableMessages)[] = [];
|
||||
@@ -287,7 +287,7 @@ export abstract class WebSocketBaseConnector extends BaseConnector {
|
||||
this.setClosing();
|
||||
this._sendInternal(new libData.MessageDisconnect("prepare"));
|
||||
|
||||
let timeout: NodeJS.Timeout | undefined;
|
||||
let timeout: ReturnType<typeof setTimeout> | undefined;
|
||||
let waitTimeout = new Promise(resolve => { timeout = setTimeout(resolve, 10000); }); // Make Configurable?
|
||||
try {
|
||||
await Promise.race([
|
||||
@@ -331,7 +331,7 @@ export abstract class WebSocketBaseConnector extends BaseConnector {
|
||||
* @extends module:lib.WebSocketBaseConnector
|
||||
*/
|
||||
export abstract class WebSocketClientConnector extends WebSocketBaseConnector {
|
||||
_reconnectId?: NodeJS.Timeout;
|
||||
_reconnectId?: ReturnType<typeof setTimeout>;
|
||||
_sessionToken: string | null = null;
|
||||
_sessionTimeout: number | null = null;
|
||||
_startedResuming: number | null = null;
|
||||
|
||||
Reference in new issue
Block a user