UNPKG

jamsocket

Version:

A CLI for the Jamsocket platform

54 lines (53 loc) 1.4 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.createColorGetter = createColorGetter; exports.readRequestBody = readRequestBody; exports.termwidth = termwidth; exports.capitalize = capitalize; exports.sleep = sleep; const BACKEND_LOG_COLORS = ['cyan', 'magenta', 'yellow', 'blue']; function createColorGetter() { let curColor = 0; // eslint-disable-next-line func-names return function getColor() { const color = BACKEND_LOG_COLORS[curColor]; curColor = (curColor + 1) % BACKEND_LOG_COLORS.length; return color; }; } async function readRequestBody(req) { return new Promise((resolve, reject) => { let body = ''; req.on('data', (chunk) => { body += chunk; }); req.on('end', () => { resolve(body); }); req.on('error', (err) => { reject(err); }); }); } // lifted from https://github.com/oclif/core function termwidth() { if (!process.stdout.isTTY) { return 80; } const width = process.stdout.getWindowSize()[0]; if (width < 1) { return 80; } if (width < 40) { return 40; } return width; } function capitalize(s) { return s.charAt(0).toUpperCase() + s.slice(1); } function sleep(ms) { return new Promise((resolve) => { setTimeout(resolve, ms); }); }