ilastlog
Version:
alternative lastlog because of Ubuntu 24.04.1. The distros have had the libpam excluding lastlog.so. therefore, I personally needed.
56 lines • 2.18 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const node_os_1 = __importDefault(require("node:os"));
const readline_1 = __importDefault(require("readline"));
const index_1 = require("../lib/index");
const constant_js_1 = __importDefault(require("../configs/constant.js"));
const package_json_1 = require("../../package.json");
const commander_1 = require("commander");
const DEFAULT_DEL = constant_js_1.default.DEFAULT_DEL;
const DEFAULT_HINT = constant_js_1.default.DEFAULT_HINT;
commander_1.program
.name(package_json_1.name)
.description(package_json_1.description)
.version(package_json_1.version, "-v, --version", "Current version")
.option("--hint <hint>", "To find out per line", DEFAULT_HINT)
.option("-d, --delimiter <delimiter>", "Sentences added delimiter before stdout", DEFAULT_DEL)
.option("--no-save", "Don't save the results log")
.argument("[argText]", "Input data", "")
.action(function (argText, options, command) {
if (argText.length == 0) {
startUsingStdin(options);
}
else {
startUsingArg(argText, options);
}
});
commander_1.program.parse();
function startUsingStdin(options) {
const rl = readline_1.default.createInterface({
input: process.stdin,
output: process.stdout,
terminal: false,
});
const inputTexts = [];
rl.on("line", (line) => {
inputTexts.push(line);
}).on("close", () => {
const resultArr = index_1.Util.calculate(inputTexts, options);
index_1.Util.Print(resultArr, options);
index_1.Util.WriteToFile(resultArr, options.save);
});
}
function startUsingArg(argText, options) {
const inputTexts = [];
for (const text of argText.split(node_os_1.default.EOL)) {
inputTexts.push(text);
}
const resultArr = index_1.Util.calculate(inputTexts, options);
index_1.Util.Print(resultArr, options);
index_1.Util.WriteToFile(resultArr, options.save);
}
//# sourceMappingURL=ilastlogCLI.js.map