neoss
Version:
<div align="center"> <h1>neoss</h1> <i>Socket statistics, with a UI.</i> </div> <p align="center"> <a href="https://img.shields.io/github/v/release/pablolec/neoss" target="_blank"> <img src="https://img.shields.io/github/v/release/pablolec/neo
60 lines (59 loc) • 1.6 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.initialize = initialize;
exports.setData = setData;
exports.refreshScreen = refreshScreen;
const neo_blessed_1 = require("neo-blessed");
const table_1 = __importDefault(require("../ui/table"));
const popups_1 = require("./popups");
let mainScreen;
let table;
function initialize() {
mainScreen = (0, neo_blessed_1.Screen)({
smartCSR: true,
});
mainScreen.title = "neoss";
mainScreen.key(["escape", "q", "C-c"], function () {
return process.exit(0);
});
(0, popups_1.setDefaultScreen)(mainScreen);
table = (0, table_1.default)({
keys: true,
interactive: true,
tags: true,
top: "0",
left: "center",
width: "100%",
height: "shrink",
border: {
type: "line",
},
style: {
fg: "white",
border: {
fg: "white",
},
focus: {
bg: "blue",
},
header: {
fg: "black",
bg: "white",
},
},
});
}
function setData(data) {
mainScreen.append(table);
table.setData({
headers: ["Protocol", "State", "Rx", "Tx", "Local Address", "Local Port", "Peer Address", "Peer Port", "Users"],
data: data,
});
}
function refreshScreen() {
table.setData(table.table);
}