@esm2cjs/human-signals
Version:
Human-friendly process signals. This is a fork of ehmicky/human-signals, but with CommonJS support.
34 lines (23 loc) • 601 B
JavaScript
import{constants}from"node:os";
import{SIGNALS}from"./core.js";
import{getRealtimeSignals}from"./realtime.js";
export const getSignals=()=>{
const realtimeSignals=getRealtimeSignals();
const signals=[...SIGNALS,...realtimeSignals].map(normalizeSignal);
return signals
};
const normalizeSignal=({
name,
number:defaultNumber,
description,
action,
forced=false,
standard
})=>{
const{
signals:{[name]:constantSignal}
}=constants;
const supported=constantSignal!==undefined;
const number=supported?constantSignal:defaultNumber;
return{name,number,description,supported,action,forced,standard}
};