export function parseTimeoutMs(raw: unknown): number | undefined { if (raw === undefined || raw === null) { return undefined;
}
let value = Number.NaN; if (typeof raw === "number") {
value = raw;
} elseif (typeof raw === "bigint") {
value = Number(raw);
} elseif (typeof raw === "string") { const trimmed = raw.trim(); if (!trimmed) { return undefined;
}
value = Number.parseInt(trimmed, 10);
} return Number.isFinite(value) ? value : undefined;
}
export function parseTimeoutMsWithFallback(
raw: unknown,
fallbackMs: number,
options: {
invalidType?: "fallback" | "error";
} = {},
): number { if (raw === undefined || raw === null) { return fallbackMs;
}
const value = typeof raw === "string"
? raw.trim()
: typeof raw === "number" || typeof raw === "bigint"
? String(raw)
: null;
if (value === null) { if (options.invalidType === "error") { thrownew Error("invalid --timeout");
} return fallbackMs;
}
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.