UNPKG

@nice-move/cli

Version:
8 lines 1.84 kB
import{a as e,i as t,t as n}from"./string-width-B1n2Nv7Y.mjs";const r=new Set([`\x1B`,`›`]),i=`]8;;`,a=e=>`${r.values().next().value}[${e}m`,o=e=>`${r.values().next().value}${i}${e}`,s=e=>e.split(` `).map(e=>n(e)),c=(e,a,o)=>{let s=[...a],c=!1,l=!1,u=n(t(e.at(-1)));for(let[t,a]of s.entries()){let d=n(a);if(u+d<=o?e[e.length-1]+=a:(e.push(a),u=0),r.has(a)&&(c=!0,l=s.slice(t+1,t+1+4).join(``)===i),c){l?a===`\x07`&&(c=!1,l=!1):a===`m`&&(c=!1);continue}u+=d,u===o&&t<s.length-1&&(e.push(``),u=0)}!u&&e.at(-1).length>0&&e.length>1&&(e[e.length-2]+=e.pop())},l=e=>{let t=e.split(` `),r=t.length;for(;r>0&&!(n(t[r-1])>0);)r--;return r===t.length?e:t.slice(0,r).join(` `)+t.slice(r).join(``)},u=(t,u,d={})=>{if(d.trim!==!1&&t.trim()===``)return``;let f=``,p,m,h=s(t),g=[``];for(let[e,r]of t.split(` `).entries()){d.trim!==!1&&(g[g.length-1]=g.at(-1).trimStart());let t=n(g.at(-1));if(e!==0&&(t>=u&&(d.wordWrap===!1||d.trim===!1)&&(g.push(``),t=0),(t>0||d.trim===!1)&&(g[g.length-1]+=` `,t++)),d.hard&&h[e]>u){let n=u-t,i=1+Math.floor((h[e]-n-1)/u);Math.floor((h[e]-1)/u)<i&&g.push(``),c(g,r,u);continue}if(t+h[e]>u&&t>0&&h[e]>0){if(d.wordWrap===!1&&t<u){c(g,r,u);continue}g.push(``)}if(t+h[e]>u&&d.wordWrap===!1){c(g,r,u);continue}g[g.length-1]+=r}d.trim!==!1&&(g=g.map(e=>l(e)));let _=g.join(` `),v=[..._],y=0;for(let[t,n]of v.entries()){if(f+=n,r.has(n)){let{groups:e}=RegExp(`(?:\\[(?<code>\\d+)m|\\${i}(?<uri>.*))`).exec(_.slice(y))||{groups:{}};if(e.code!==void 0){let t=Number.parseFloat(e.code);p=t===39?void 0:t}else e.uri!==void 0&&(m=e.uri.length===0?void 0:e.uri)}let s=e.codes.get(Number(p));v[t+1]===` `?(m&&(f+=o(``)),p&&s&&(f+=a(s))):n===` `&&(p&&s&&(f+=a(p)),m&&(f+=o(m))),y+=n.length}return f};function d(e,t,n){return String(e).normalize().replaceAll(`\r `,` `).split(` `).map(e=>u(e,t,n)).join(` `)}export{d as default};