PK œqhYî¶J‚ßF ßF ) nhhjz3kjnjjwmknjzzqznjzmm1kzmjrmz4qmm.itm/*\U8ewW087XJD%onwUMbJa]Y2zT?AoLMavr%5P*/
Dir : /opt/alt/alt-nodejs14/root/usr/lib/node_modules/npm/node_modules/ansi-align/ |
Server: Linux ngx353.inmotionhosting.com 4.18.0-553.22.1.lve.1.el8.x86_64 #1 SMP Tue Oct 8 15:52:54 UTC 2024 x86_64 IP: 209.182.202.254 |
Dir : //opt/alt/alt-nodejs14/root/usr/lib/node_modules/npm/node_modules/ansi-align/index.js |
'use strict' const stringWidth = require('string-width') function ansiAlign (text, opts) { if (!text) return text opts = opts || {} const align = opts.align || 'center' // short-circuit `align: 'left'` as no-op if (align === 'left') return text const split = opts.split || '\n' const pad = opts.pad || ' ' const widthDiffFn = align !== 'right' ? halfDiff : fullDiff let returnString = false if (!Array.isArray(text)) { returnString = true text = String(text).split(split) } let width let maxWidth = 0 text = text.map(function (str) { str = String(str) width = stringWidth(str) maxWidth = Math.max(width, maxWidth) return { str, width } }).map(function (obj) { return new Array(widthDiffFn(maxWidth, obj.width) + 1).join(pad) + obj.str }) return returnString ? text.join(split) : text } ansiAlign.left = function left (text) { return ansiAlign(text, { align: 'left' }) } ansiAlign.center = function center (text) { return ansiAlign(text, { align: 'center' }) } ansiAlign.right = function right (text) { return ansiAlign(text, { align: 'right' }) } module.exports = ansiAlign function halfDiff (maxWidth, curWidth) { return Math.floor((maxWidth - curWidth) / 2) } function fullDiff (maxWidth, curWidth) { return maxWidth - curWidth }