UNPKG

@visulima/string

Version:

Functions for manipulating strings.

3 lines (2 loc) 676 B
var p=Object.defineProperty;var s=(t,r)=>p(t,"name",{value:r,configurable:!0});import{getStringWidth as c}from"./get-string-width.js";var d=Object.defineProperty,i=s((t,r)=>d(t,"name",{value:r,configurable:!0}),"n");const m=i((t,r)=>Math.floor((t-r)/2),"halfDiff"),u=i((t,r)=>t-r,"fullDiff"),j=i((t,r={})=>{const l=r.align??"center";if(l==="left")return t;const o=r.split??` `,g=r.pad??" ",h=l==="right"?u:m;let f=!1;Array.isArray(t)||(f=!0,t=String(t).split(o));let n,a=0;return t=t.map(e=>(e=String(e),n=c(e,r.stringWidthOptions),a=Math.max(n,a),{str:e,width:n})).map(e=>Array.from({length:h(a,e.width)+1}).join(g)+e.str),f?t.join(o):t},"alignText");export{j as alignText};