@visulima/string 1.3.0 → 1.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +6 -0
- package/dist/index.cjs +1 -1
- package/dist/index.d.cts +1 -0
- package/dist/index.d.mts +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.mjs +1 -1
- package/dist/packem_shared/WrapMode-BZ3jkEf1.mjs +8 -0
- package/dist/packem_shared/WrapMode-DR7vv3px.cjs +8 -0
- package/package.json +1 -1
- package/dist/packem_shared/WrapMode-BL2dnSc8.cjs +0 -8
- package/dist/packem_shared/WrapMode-DxH5g69E.mjs +0 -8
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,9 @@
|
|
|
1
|
+
## @visulima/string [1.4.0](https://github.com/visulima/visulima/compare/@visulima/string@1.3.0...@visulima/string@1.4.0) (2025-05-31)
|
|
2
|
+
|
|
3
|
+
### Features
|
|
4
|
+
|
|
5
|
+
* **string:** implement BREAK_WORDS wrap mode for word wrapping functionality ([996b9aa](https://github.com/visulima/visulima/commit/996b9aa1ed0b728534558bad5b88e6e1ea505a05))
|
|
6
|
+
|
|
1
7
|
## @visulima/string [1.3.0](https://github.com/visulima/visulima/compare/@visulima/string@1.2.3...@visulima/string@1.3.0) (2025-05-31)
|
|
2
8
|
|
|
3
9
|
### Features
|
package/dist/index.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const a=require("./packem_shared/alignText-CLZJuPP6.cjs"),r=require("./case/camel-case.cjs"),s=require("./case/capital-case.cjs"),t=require("./case/constant-case.cjs"),i=require("./case/dot-case.cjs"),u=require("./case/flat-case.cjs"),n=require("./case/flip-case.cjs"),c=require("./case/identify-case.cjs"),l=require("./case/kebab-case.cjs"),C=require("./case/lower-first.cjs"),q=require("./case/no-case.cjs"),p=require("./case/pascal-case.cjs"),d=require("./case/pascal-snake-case.cjs"),o=require("./case/path-case.cjs"),g=require("./case/sentence-case.cjs"),_=require("./case/snake-case.cjs"),S=require("./case/split-by-case.cjs"),W=require("./case/title-case.cjs"),f=require("./case/train-case.cjs"),b=require("./case/upper-first.cjs"),h=require("./packem_shared/joinSegments-CDHNMXsF.cjs"),y=require("./get-string-truncated-width.cjs"),k=require("./get-string-width.cjs"),T=require("./outdent.cjs"),m=require("./packem_shared/replaceString-Ce8TI_-L.cjs"),M=require("./slice.cjs"),w=require("./packem_shared/slugify-CH3GI7E5.cjs"),F=require("./packem_shared/transliterate-CToQ-aeM.cjs"),j=require("./truncate.cjs"),e=require("./packem_shared/WrapMode-
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const a=require("./packem_shared/alignText-CLZJuPP6.cjs"),r=require("./case/camel-case.cjs"),s=require("./case/capital-case.cjs"),t=require("./case/constant-case.cjs"),i=require("./case/dot-case.cjs"),u=require("./case/flat-case.cjs"),n=require("./case/flip-case.cjs"),c=require("./case/identify-case.cjs"),l=require("./case/kebab-case.cjs"),C=require("./case/lower-first.cjs"),q=require("./case/no-case.cjs"),p=require("./case/pascal-case.cjs"),d=require("./case/pascal-snake-case.cjs"),o=require("./case/path-case.cjs"),g=require("./case/sentence-case.cjs"),_=require("./case/snake-case.cjs"),S=require("./case/split-by-case.cjs"),W=require("./case/title-case.cjs"),f=require("./case/train-case.cjs"),b=require("./case/upper-first.cjs"),h=require("./packem_shared/joinSegments-CDHNMXsF.cjs"),y=require("./get-string-truncated-width.cjs"),k=require("./get-string-width.cjs"),T=require("./outdent.cjs"),m=require("./packem_shared/replaceString-Ce8TI_-L.cjs"),M=require("./slice.cjs"),w=require("./packem_shared/slugify-CH3GI7E5.cjs"),F=require("./packem_shared/transliterate-CToQ-aeM.cjs"),j=require("./truncate.cjs"),e=require("./packem_shared/WrapMode-DR7vv3px.cjs");exports.alignText=a.alignText;exports.camelCase=r;exports.capitalCase=s;exports.constantCase=t;exports.dotCase=i;exports.flatCase=u;exports.flipCase=n.flipCase;exports.identifyCase=c;exports.kebabCase=l.kebabCase;exports.lowerFirst=C;exports.noCase=q;exports.pascalCase=p;exports.pascalSnakeCase=d;exports.pathCase=o;exports.sentenceCase=g;exports.snakeCase=_;exports.splitByCase=S.splitByCase;exports.titleCase=W;exports.trainCase=f;exports.upperFirst=b;exports.joinSegments=h;exports.getStringTruncatedWidth=y.getStringTruncatedWidth;exports.getStringWidth=k.getStringWidth;exports.outdent=T.outdent;exports.replaceString=m;exports.slice=M.slice;exports.slugify=w;exports.transliterate=F;exports.truncate=j.truncate;exports.WrapMode=e.WrapMode;exports.wordWrap=e.wordWrap;
|
package/dist/index.d.cts
CHANGED
|
@@ -47,6 +47,7 @@ declare const WrapMode: {
|
|
|
47
47
|
readonly BREAK_AT_CHARACTERS: "BREAK_AT_CHARACTERS";
|
|
48
48
|
readonly PRESERVE_WORDS: "PRESERVE_WORDS";
|
|
49
49
|
readonly STRICT_WIDTH: "STRICT_WIDTH";
|
|
50
|
+
readonly BREAK_WORDS: "BREAK_WORDS";
|
|
50
51
|
};
|
|
51
52
|
interface WordWrapOptions {
|
|
52
53
|
removeZeroWidthCharacters?: boolean;
|
package/dist/index.d.mts
CHANGED
|
@@ -47,6 +47,7 @@ declare const WrapMode: {
|
|
|
47
47
|
readonly BREAK_AT_CHARACTERS: "BREAK_AT_CHARACTERS";
|
|
48
48
|
readonly PRESERVE_WORDS: "PRESERVE_WORDS";
|
|
49
49
|
readonly STRICT_WIDTH: "STRICT_WIDTH";
|
|
50
|
+
readonly BREAK_WORDS: "BREAK_WORDS";
|
|
50
51
|
};
|
|
51
52
|
interface WordWrapOptions {
|
|
52
53
|
removeZeroWidthCharacters?: boolean;
|
package/dist/index.d.ts
CHANGED
|
@@ -47,6 +47,7 @@ declare const WrapMode: {
|
|
|
47
47
|
readonly BREAK_AT_CHARACTERS: "BREAK_AT_CHARACTERS";
|
|
48
48
|
readonly PRESERVE_WORDS: "PRESERVE_WORDS";
|
|
49
49
|
readonly STRICT_WIDTH: "STRICT_WIDTH";
|
|
50
|
+
readonly BREAK_WORDS: "BREAK_WORDS";
|
|
50
51
|
};
|
|
51
52
|
interface WordWrapOptions {
|
|
52
53
|
removeZeroWidthCharacters?: boolean;
|
package/dist/index.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{alignText as a}from"./packem_shared/alignText-BCKbnqhC.mjs";import{default as o}from"./case/camel-case.mjs";import{default as s}from"./case/capital-case.mjs";import{default as l}from"./case/constant-case.mjs";import{default as x}from"./case/dot-case.mjs";import{default as u}from"./case/flat-case.mjs";import{flipCase as n}from"./case/flip-case.mjs";import{default as c}from"./case/identify-case.mjs";import{kebabCase as S}from"./case/kebab-case.mjs";import{default as h}from"./case/lower-first.mjs";import{default as y}from"./case/no-case.mjs";import{default as w}from"./case/pascal-case.mjs";import{default as T}from"./case/pascal-snake-case.mjs";import{default as B}from"./case/path-case.mjs";import{default as q}from"./case/sentence-case.mjs";import{default as z}from"./case/snake-case.mjs";import{splitByCase as D}from"./case/split-by-case.mjs";import{default as G}from"./case/title-case.mjs";import{default as I}from"./case/train-case.mjs";import{default as K}from"./case/upper-first.mjs";import{default as N}from"./packem_shared/joinSegments-H7QJ7rwJ.mjs";import{getStringTruncatedWidth as P}from"./get-string-truncated-width.mjs";import{getStringWidth as R}from"./get-string-width.mjs";import{outdent as V}from"./outdent.mjs";import{default as Y}from"./packem_shared/replaceString-D7R-5VFX.mjs";import{slice as _}from"./slice.mjs";import{default as ee}from"./packem_shared/slugify-B1vlQQO1.mjs";import{default as ae}from"./packem_shared/transliterate-BXaP38Sh.mjs";import{truncate as oe}from"./truncate.mjs";import{WrapMode as se,wordWrap as pe}from"./packem_shared/WrapMode-
|
|
1
|
+
import{alignText as a}from"./packem_shared/alignText-BCKbnqhC.mjs";import{default as o}from"./case/camel-case.mjs";import{default as s}from"./case/capital-case.mjs";import{default as l}from"./case/constant-case.mjs";import{default as x}from"./case/dot-case.mjs";import{default as u}from"./case/flat-case.mjs";import{flipCase as n}from"./case/flip-case.mjs";import{default as c}from"./case/identify-case.mjs";import{kebabCase as S}from"./case/kebab-case.mjs";import{default as h}from"./case/lower-first.mjs";import{default as y}from"./case/no-case.mjs";import{default as w}from"./case/pascal-case.mjs";import{default as T}from"./case/pascal-snake-case.mjs";import{default as B}from"./case/path-case.mjs";import{default as q}from"./case/sentence-case.mjs";import{default as z}from"./case/snake-case.mjs";import{splitByCase as D}from"./case/split-by-case.mjs";import{default as G}from"./case/title-case.mjs";import{default as I}from"./case/train-case.mjs";import{default as K}from"./case/upper-first.mjs";import{default as N}from"./packem_shared/joinSegments-H7QJ7rwJ.mjs";import{getStringTruncatedWidth as P}from"./get-string-truncated-width.mjs";import{getStringWidth as R}from"./get-string-width.mjs";import{outdent as V}from"./outdent.mjs";import{default as Y}from"./packem_shared/replaceString-D7R-5VFX.mjs";import{slice as _}from"./slice.mjs";import{default as ee}from"./packem_shared/slugify-B1vlQQO1.mjs";import{default as ae}from"./packem_shared/transliterate-BXaP38Sh.mjs";import{truncate as oe}from"./truncate.mjs";import{WrapMode as se,wordWrap as pe}from"./packem_shared/WrapMode-BZ3jkEf1.mjs";export{se as WrapMode,a as alignText,o as camelCase,s as capitalCase,l as constantCase,x as dotCase,u as flatCase,n as flipCase,P as getStringTruncatedWidth,R as getStringWidth,c as identifyCase,N as joinSegments,S as kebabCase,h as lowerFirst,y as noCase,V as outdent,w as pascalCase,T as pascalSnakeCase,B as pathCase,Y as replaceString,q as sentenceCase,_ as slice,ee as slugify,z as snakeCase,D as splitByCase,G as titleCase,I as trainCase,ae as transliterate,oe as truncate,K as upperFirst,pe as wordWrap};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
var y=Object.defineProperty;var m=(t,e)=>y(t,"name",{value:e,configurable:!0});import{O as S,P as R,Q as k,S as b,T as O,U as H,V as $,W as P,X as N}from"./constants-Cd17VNEv.mjs";import{getStringWidth as d}from"../get-string-width.mjs";var j=Object.defineProperty,D=m((t,e)=>j(t,"name",{value:e,configurable:!0}),"n");let w=class{static{m(this,"m")}static{D(this,"AnsiStateTracker")}activeForeground=null;activeBackground=null;activeFormatting=[];processEscape(e){const n=/\x1B\[(\d+)m/.exec(e);if(!n)return;const r=Number.parseInt(n[1],10);switch(r){case 0:{this.activeForeground=null,this.activeBackground=null,this.activeFormatting=[];break}case 39:{this.activeForeground=null;break}case 49:{this.activeBackground=null;break}default:if(r>=30&&r<=37||r>=90&&r<=97)this.activeForeground=e;else if(r>=40&&r<=47||r>=100&&r<=107)this.activeBackground=e;else if([1,2,3,4,7,8,9].includes(r))this.activeFormatting.push(e);else if([22,23,24,27,28,29].includes(r)){const l={22:"[1m",23:"[3m",24:"[4m",27:"[7m",28:"[8m",29:"[9m"}[r];l&&(this.activeFormatting=this.activeFormatting.filter(a=>!a.includes(l)))}}}getStartEscapesForAllActiveAttributes(){return[this.activeBackground,this.activeForeground,...this.activeFormatting].filter(Boolean).join("")}getEndEscapesForAllActiveAttributes(){const e=[];if(this.activeFormatting.length>0){const n={"\x1B[1m":"\x1B[22m","\x1B[2m":"\x1B[22m","\x1B[3m":"\x1B[23m","\x1B[4m":"\x1B[24m","\x1B[7m":"\x1B[27m","\x1B[8m":"\x1B[28m","\x1B[9m":"\x1B[29m"};[...this.activeFormatting].reverse().forEach(r=>{const l=n[r];l&&e.push(l)})}return this.activeForeground&&e.push("\x1B[39m"),this.activeBackground&&e.push("\x1B[49m"),e.join("")}};var q=Object.defineProperty,T=m((t,e)=>q(t,"name",{value:e,configurable:!0}),"o");const I=T((t,e)=>{if(!S.has(t[e]))return{isInsideEscape:!1,isInsideLinkEscape:!1};const n=!0,r=t.slice(e+1,e+1+R.length).join("")===R;return{isInsideEscape:n,isInsideLinkEscape:r}},"checkEscapeSequence"),G=T((t,e={})=>{const n=new w;let r="",l=!1,a=!1,i="",s="",u=!1;const h=[...t];for(let c=0;c<h.length;c++){const o=h[c];if(o&&S.has(o)){if(r){const p=e.getWidth?.(r)??0,v={isEscapeSequence:!1,isGrapheme:!0,text:r,width:p};if(u&&(v.isHyperlink=!0,v.hyperlinkUrl=s),e.onSegment?.(v,n)===!1)return;r=""}if(l=!0,i=o,a=I(h,c).isInsideLinkEscape,a){let p=c+1;for(s="";p<h.length;){const _=h[p];if(_===b)break;s+=_,p++}s=s.slice(4);const v={hyperlinkUrl:s,isEscapeSequence:!0,isGrapheme:!1,isHyperlink:!0,isHyperlinkStart:!0,width:0};if(e.onSegment?.(v,n)===!1)return;c=p,u=!0,l=!1,a=!1,i="";continue}if(c+1<h.length&&h[c+1]==="\\"&&u){const p={isEscapeSequence:!0,isGrapheme:!1,isHyperlink:!0,isHyperlinkEnd:!0,width:0};if(e.onSegment?.(p,n)===!1)return;u=!1,s="",c++,l=!1,i="";continue}}if(l){if(i!==o&&(i+=o),o===k){l=!1,n.processEscape(i);const p={isEscapeSequence:!0,isGrapheme:!1,text:i,width:0};if(e.onSegment?.(p,n)===!1)return;i=""}continue}r+=o;const f=e.getWidth?.(r)??0,g={isEscapeSequence:!1,isGrapheme:!0,text:r,width:f};if(u&&(g.isHyperlink=!0,g.hyperlinkUrl=s),e.onSegment?.(g,n)===!1)return;r=""}if(r){const c=e.getWidth?.(r)??0,o={isEscapeSequence:!1,isGrapheme:!0,text:r,width:c};u&&(o.isHyperlink=!0,o.hyperlinkUrl=s),e.onSegment?.(o,n)}if(i){const c={isEscapeSequence:!0,isGrapheme:!1,text:i,width:0};e.onSegment?.(c,n)}},"processAnsiString");var L=Object.defineProperty,K=m((t,e)=>L(t,"name",{value:e,configurable:!0}),"t$1");const F=K(t=>`${S.values().next().value}${O}${t}${k}`,"wrapAnsiCode");var U=Object.defineProperty,V=m((t,e)=>U(t,"name",{value:e,configurable:!0}),"t");const W=V(t=>`${S.values().next().value}${R}${t}${b}`,"wrapAnsiHyperlink");var M=Object.defineProperty,Z=m((t,e)=>M(t,"name",{value:e,configurable:!0}),"l");const z=Z(t=>{if(t.length===0)return"";if(t.length===1)return t[0];let e="",n,r;const l=t.join(`
|
|
2
|
+
`),a=[...l];let i=0;for(const[s,u]of a.entries()){if(e+=u,S.has(u)){const c=H.exec(l.slice(i))?.groups??{};if(c.code!==void 0){const o=Number.parseFloat(c.code);n=o===P?void 0:o}else c.uri!==void 0&&(r=c.uri.length===0?void 0:c.uri)}const h=$.get(Number(n));a[s+1]===`
|
|
3
|
+
`?(r&&(e+=W("")),n&&h&&(e+=F(h))):u===`
|
|
4
|
+
`&&(n&&h&&(e+=F(n)),r&&(e+=W(r))),i+=u.length}return e},"preserveAnsi");var J=Object.defineProperty,E=m((t,e)=>J(t,"name",{value:e,configurable:!0}),"h");const x=E(t=>{if(!t.includes("\x1B"))return t;let e=t;return t.includes("\x1B[30m")&&(e+="\x1B[39m"),t.includes("\x1B[42m")&&(e+="\x1B[49m"),e},"resetAnsiAtLineBreak"),A=E(t=>{const e=t.split(" ");let n=e.length;for(;n>0&&d(e[n-1])===0;)n--;return n===e.length?t:e.slice(0,n).join(" ")+e.slice(n).join("")},"stringVisibleTrimSpacesRight"),C=E((t,e,n)=>{if(t.length===0)return[""];if(e<=0)return[t];const r=[],l=new w;let a="",i=0,s=!1,u=!1,h="";for(let c=0;c<t.length;c++){const o=t[c];if(S.has(o)){s=!0,h=o,a+=o,u=I([...t],c).isInsideLinkEscape;continue}if(s){h+=o,a+=o,u?o===b&&(s=u=!1):o===k&&(s=!1,l.processEscape(h));continue}const f=d(o),g=o===" ";if(f===0){a+=o;continue}if(i+f>e&&(a&&r.push(a+l.getEndEscapesForAllActiveAttributes()),a=l.getStartEscapesForAllActiveAttributes(),i=d(a),g&&n)){for(;c<t.length&&t[c]===" "&&(c++,!(c>=t.length)););c<t.length&&c--;continue}if(a+=o,i+=f,i===e&&c<t.length-1&&(r.push(a+l.getEndEscapesForAllActiveAttributes()),a=l.getStartEscapesForAllActiveAttributes(),i=d(a),c+1<t.length&&t[c+1]===" "&&n)){for(c++;c<t.length&&t[c]===" ";)c++;c--}}return a&&r.push(a+l.getEndEscapesForAllActiveAttributes()),n?r.map(c=>A(c)):r},"wrapWithBreakAtWidth"),Q=E((t,e,n)=>{if(t.length===0)return[];const r=n?t.trim():t;if(r.length===0)return[];const l=[];let a="",i=0;return G(r,{getWidth:d,onSegment:E((s,u)=>{if(s.isEscapeSequence)a+=s.text;else{const h=s.text===" ";if(s.width===0)return a+=s.text,!0;if(i+s.width>e&&(a&&l.push(a),a=u.getStartEscapesForAllActiveAttributes(),i=0,h))return n||l.push(u.getStartEscapesForAllActiveAttributes()+s.text),!0;a+=s.text,i+=s.width}return!0},"onSegment")}),a&&l.push(a),n?l.map(s=>A(s)):l},"wrapCharByChar"),X=E((t,e,n)=>{if(t.length===0)return[];const r=n?t.trim():t;if(r.length===0)return[];const l=r.split(/(?=\s)|(?<=\s)/),a=[];let i="",s=0,u=0;for(;u<l.length;){const h=l[u],c=/^\s+$/.test(h),o=d(h);if(h.length===0){u++;continue}if(n&&c&&s===0){u++;continue}if(s+o>e&&s>0){n?a.push(A(i)):a.push(i),i="",s=0;continue}i+=h,s+=o,u++}return i&&(n?a.push(A(i)):a.push(i)),a},"wrapWithWordBoundaries"),Y=E((t,e,n)=>{if(t.length===0)return[];const r=n?t.trim():t;if(r.length===0)return[];const l=r.split(/(?=\s)|(?<=\s)/),a=[];let i="",s=0,u=0;for(;u<l.length;){const h=l[u],c=/^\s+$/.test(h),o=d(h);if(h.length===0){u++;continue}if(n&&c&&s===0){u++;continue}if(o>e){i&&a.push(x(n?A(i):i));const f=C(h,e,n);if(console.log(JSON.stringify(f)),f.length>0){for(let g=0;g<f.length-1;g++)a.push(f[g]);i=f[f.length-1],s=d(i)}else i="",s=0;u++;continue}if(s+o>e&&s>0&&(a.push(x(n?A(i):i)),i="",s=0,n&&c)){u++;continue}i+=h,s+=o,u++}return i&&a.push(x(n?A(i):i)),a},"wrapAndBreakWords"),B={BREAK_AT_CHARACTERS:"BREAK_AT_CHARACTERS",PRESERVE_WORDS:"PRESERVE_WORDS",STRICT_WIDTH:"STRICT_WIDTH",BREAK_WORDS:"BREAK_WORDS"},ie=E((t,e={})=>{const{removeZeroWidthCharacters:n=!0,trim:r=!0,width:l=80,wrapMode:a=B.PRESERVE_WORDS}=e;if(r&&t.trim()==="")return"";let i=String(t).normalize("NFC").replaceAll(`\r
|
|
5
|
+
`,`
|
|
6
|
+
`);return n&&(i=i.replaceAll(N,"")),i.split(`
|
|
7
|
+
`).map(s=>{if(r&&s.trim()==="")return"";let u;switch(a){case B.STRICT_WIDTH:{u=C(s,l,r);break}case B.BREAK_AT_CHARACTERS:{u=Q(s,l,r);break}case B.BREAK_WORDS:{u=Y(s,l,r);break}default:u=X(s,l,r)}return z(u)}).join(`
|
|
8
|
+
`)},"wordWrap");export{B as WrapMode,ie as wordWrap};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";var O=Object.defineProperty;var m=(t,e)=>O(t,"name",{value:e,configurable:!0});Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const g=require("./constants-D3K8u3G8.cjs"),S=require("../get-string-width.cjs");var T=Object.defineProperty,_=m((t,e)=>T(t,"name",{value:e,configurable:!0}),"n");let R=class{static{m(this,"m")}static{_(this,"AnsiStateTracker")}activeForeground=null;activeBackground=null;activeFormatting=[];processEscape(e){const i=/\x1B\[(\d+)m/.exec(e);if(!i)return;const r=Number.parseInt(i[1],10);switch(r){case 0:{this.activeForeground=null,this.activeBackground=null,this.activeFormatting=[];break}case 39:{this.activeForeground=null;break}case 49:{this.activeBackground=null;break}default:if(r>=30&&r<=37||r>=90&&r<=97)this.activeForeground=e;else if(r>=40&&r<=47||r>=100&&r<=107)this.activeBackground=e;else if([1,2,3,4,7,8,9].includes(r))this.activeFormatting.push(e);else if([22,23,24,27,28,29].includes(r)){const l={22:"[1m",23:"[3m",24:"[4m",27:"[7m",28:"[8m",29:"[9m"}[r];l&&(this.activeFormatting=this.activeFormatting.filter(a=>!a.includes(l)))}}}getStartEscapesForAllActiveAttributes(){return[this.activeBackground,this.activeForeground,...this.activeFormatting].filter(Boolean).join("")}getEndEscapesForAllActiveAttributes(){const e=[];if(this.activeFormatting.length>0){const i={"\x1B[1m":"\x1B[22m","\x1B[2m":"\x1B[22m","\x1B[3m":"\x1B[23m","\x1B[4m":"\x1B[24m","\x1B[7m":"\x1B[27m","\x1B[8m":"\x1B[28m","\x1B[9m":"\x1B[29m"};[...this.activeFormatting].reverse().forEach(r=>{const l=i[r];l&&e.push(l)})}return this.activeForeground&&e.push("\x1B[39m"),this.activeBackground&&e.push("\x1B[49m"),e.join("")}};var $=Object.defineProperty,w=m((t,e)=>$(t,"name",{value:e,configurable:!0}),"o");const F=w((t,e)=>{if(!g.O.has(t[e]))return{isInsideEscape:!1,isInsideLinkEscape:!1};const i=!0,r=t.slice(e+1,e+1+g.P.length).join("")===g.P;return{isInsideEscape:i,isInsideLinkEscape:r}},"checkEscapeSequence"),C=w((t,e={})=>{const i=new R;let r="",l=!1,a=!1,n="",s="",u=!1;const h=[...t];for(let c=0;c<h.length;c++){const o=h[c];if(o&&g.O.has(o)){if(r){const p=e.getWidth?.(r)??0,E={isEscapeSequence:!1,isGrapheme:!0,text:r,width:p};if(u&&(E.isHyperlink=!0,E.hyperlinkUrl=s),e.onSegment?.(E,i)===!1)return;r=""}if(l=!0,n=o,a=F(h,c).isInsideLinkEscape,a){let p=c+1;for(s="";p<h.length;){const k=h[p];if(k===g.S)break;s+=k,p++}s=s.slice(4);const E={hyperlinkUrl:s,isEscapeSequence:!0,isGrapheme:!1,isHyperlink:!0,isHyperlinkStart:!0,width:0};if(e.onSegment?.(E,i)===!1)return;c=p,u=!0,l=!1,a=!1,n="";continue}if(c+1<h.length&&h[c+1]==="\\"&&u){const p={isEscapeSequence:!0,isGrapheme:!1,isHyperlink:!0,isHyperlinkEnd:!0,width:0};if(e.onSegment?.(p,i)===!1)return;u=!1,s="",c++,l=!1,n="";continue}}if(l){if(n!==o&&(n+=o),o===g.Q){l=!1,i.processEscape(n);const p={isEscapeSequence:!0,isGrapheme:!1,text:n,width:0};if(e.onSegment?.(p,i)===!1)return;n=""}continue}r+=o;const f=e.getWidth?.(r)??0,d={isEscapeSequence:!1,isGrapheme:!0,text:r,width:f};if(u&&(d.isHyperlink=!0,d.hyperlinkUrl=s),e.onSegment?.(d,i)===!1)return;r=""}if(r){const c=e.getWidth?.(r)??0,o={isEscapeSequence:!1,isGrapheme:!0,text:r,width:c};u&&(o.isHyperlink=!0,o.hyperlinkUrl=s),e.onSegment?.(o,i)}if(n){const c={isEscapeSequence:!0,isGrapheme:!1,text:n,width:0};e.onSegment?.(c,i)}},"processAnsiString");var H=Object.defineProperty,j=m((t,e)=>H(t,"name",{value:e,configurable:!0}),"t$1");const b=j(t=>`${g.O.values().next().value}${g.T}${t}${g.Q}`,"wrapAnsiCode");var I=Object.defineProperty,P=m((t,e)=>I(t,"name",{value:e,configurable:!0}),"t");const W=P(t=>`${g.O.values().next().value}${g.P}${t}${g.S}`,"wrapAnsiHyperlink");var q=Object.defineProperty,D=m((t,e)=>q(t,"name",{value:e,configurable:!0}),"l");const G=D(t=>{if(t.length===0)return"";if(t.length===1)return t[0];let e="",i,r;const l=t.join(`
|
|
2
|
+
`),a=[...l];let n=0;for(const[s,u]of a.entries()){if(e+=u,g.O.has(u)){const c=g.U.exec(l.slice(n))?.groups??{};if(c.code!==void 0){const o=Number.parseFloat(c.code);i=o===g.W?void 0:o}else c.uri!==void 0&&(r=c.uri.length===0?void 0:c.uri)}const h=g.V.get(Number(i));a[s+1]===`
|
|
3
|
+
`?(r&&(e+=W("")),i&&h&&(e+=b(h))):u===`
|
|
4
|
+
`&&(i&&h&&(e+=b(i)),r&&(e+=W(r))),n+=u.length}return e},"preserveAnsi");var K=Object.defineProperty,v=m((t,e)=>K(t,"name",{value:e,configurable:!0}),"h");const x=v(t=>{if(!t.includes("\x1B"))return t;let e=t;return t.includes("\x1B[30m")&&(e+="\x1B[39m"),t.includes("\x1B[42m")&&(e+="\x1B[49m"),e},"resetAnsiAtLineBreak"),A=v(t=>{const e=t.split(" ");let i=e.length;for(;i>0&&S.getStringWidth(e[i-1])===0;)i--;return i===e.length?t:e.slice(0,i).join(" ")+e.slice(i).join("")},"stringVisibleTrimSpacesRight"),y=v((t,e,i)=>{if(t.length===0)return[""];if(e<=0)return[t];const r=[],l=new R;let a="",n=0,s=!1,u=!1,h="";for(let c=0;c<t.length;c++){const o=t[c];if(g.O.has(o)){s=!0,h=o,a+=o,u=F([...t],c).isInsideLinkEscape;continue}if(s){h+=o,a+=o,u?o===g.S&&(s=u=!1):o===g.Q&&(s=!1,l.processEscape(h));continue}const f=S.getStringWidth(o),d=o===" ";if(f===0){a+=o;continue}if(n+f>e&&(a&&r.push(a+l.getEndEscapesForAllActiveAttributes()),a=l.getStartEscapesForAllActiveAttributes(),n=S.getStringWidth(a),d&&i)){for(;c<t.length&&t[c]===" "&&(c++,!(c>=t.length)););c<t.length&&c--;continue}if(a+=o,n+=f,n===e&&c<t.length-1&&(r.push(a+l.getEndEscapesForAllActiveAttributes()),a=l.getStartEscapesForAllActiveAttributes(),n=S.getStringWidth(a),c+1<t.length&&t[c+1]===" "&&i)){for(c++;c<t.length&&t[c]===" ";)c++;c--}}return a&&r.push(a+l.getEndEscapesForAllActiveAttributes()),i?r.map(c=>A(c)):r},"wrapWithBreakAtWidth"),L=v((t,e,i)=>{if(t.length===0)return[];const r=i?t.trim():t;if(r.length===0)return[];const l=[];let a="",n=0;return C(r,{getWidth:S.getStringWidth,onSegment:v((s,u)=>{if(s.isEscapeSequence)a+=s.text;else{const h=s.text===" ";if(s.width===0)return a+=s.text,!0;if(n+s.width>e&&(a&&l.push(a),a=u.getStartEscapesForAllActiveAttributes(),n=0,h))return i||l.push(u.getStartEscapesForAllActiveAttributes()+s.text),!0;a+=s.text,n+=s.width}return!0},"onSegment")}),a&&l.push(a),i?l.map(s=>A(s)):l},"wrapCharByChar"),M=v((t,e,i)=>{if(t.length===0)return[];const r=i?t.trim():t;if(r.length===0)return[];const l=r.split(/(?=\s)|(?<=\s)/),a=[];let n="",s=0,u=0;for(;u<l.length;){const h=l[u],c=/^\s+$/.test(h),o=S.getStringWidth(h);if(h.length===0){u++;continue}if(i&&c&&s===0){u++;continue}if(s+o>e&&s>0){i?a.push(A(n)):a.push(n),n="",s=0;continue}n+=h,s+=o,u++}return n&&(i?a.push(A(n)):a.push(n)),a},"wrapWithWordBoundaries"),N=v((t,e,i)=>{if(t.length===0)return[];const r=i?t.trim():t;if(r.length===0)return[];const l=r.split(/(?=\s)|(?<=\s)/),a=[];let n="",s=0,u=0;for(;u<l.length;){const h=l[u],c=/^\s+$/.test(h),o=S.getStringWidth(h);if(h.length===0){u++;continue}if(i&&c&&s===0){u++;continue}if(o>e){n&&a.push(x(i?A(n):n));const f=y(h,e,i);if(console.log(JSON.stringify(f)),f.length>0){for(let d=0;d<f.length-1;d++)a.push(f[d]);n=f[f.length-1],s=S.getStringWidth(n)}else n="",s=0;u++;continue}if(s+o>e&&s>0&&(a.push(x(i?A(n):n)),n="",s=0,i&&c)){u++;continue}n+=h,s+=o,u++}return n&&a.push(x(i?A(n):n)),a},"wrapAndBreakWords"),B={BREAK_AT_CHARACTERS:"BREAK_AT_CHARACTERS",PRESERVE_WORDS:"PRESERVE_WORDS",STRICT_WIDTH:"STRICT_WIDTH",BREAK_WORDS:"BREAK_WORDS"},U=v((t,e={})=>{const{removeZeroWidthCharacters:i=!0,trim:r=!0,width:l=80,wrapMode:a=B.PRESERVE_WORDS}=e;if(r&&t.trim()==="")return"";let n=String(t).normalize("NFC").replaceAll(`\r
|
|
5
|
+
`,`
|
|
6
|
+
`);return i&&(n=n.replaceAll(g.X,"")),n.split(`
|
|
7
|
+
`).map(s=>{if(r&&s.trim()==="")return"";let u;switch(a){case B.STRICT_WIDTH:{u=y(s,l,r);break}case B.BREAK_AT_CHARACTERS:{u=L(s,l,r);break}case B.BREAK_WORDS:{u=N(s,l,r);break}default:u=M(s,l,r)}return G(u)}).join(`
|
|
8
|
+
`)},"wordWrap");exports.WrapMode=B;exports.wordWrap=U;
|
package/package.json
CHANGED
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
"use strict";var T=Object.defineProperty;var g=(e,t)=>T(e,"name",{value:t,configurable:!0});Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const f=require("./constants-D3K8u3G8.cjs"),A=require("../get-string-width.cjs");var O=Object.defineProperty,C=g((e,t)=>O(e,"name",{value:t,configurable:!0}),"s");let x=class{static{g(this,"o")}static{C(this,"AnsiStateTracker")}activeForeground=null;activeBackground=null;activeFormatting=[];processEscape(t){const i=/\x1B\[(\d+)m/.exec(t);if(!i)return;const n=Number.parseInt(i[1],10);switch(n){case 0:{this.activeForeground=null,this.activeBackground=null,this.activeFormatting=[];break}case 39:{this.activeForeground=null;break}case 49:{this.activeBackground=null;break}default:if(n>=30&&n<=37||n>=90&&n<=97)this.activeForeground=t;else if(n>=40&&n<=47||n>=100&&n<=107)this.activeBackground=t;else if([1,2,3,4,7,8,9].includes(n))this.activeFormatting.push(t);else if([22,23,24,27,28,29].includes(n)){const a={22:"[1m",23:"[3m",24:"[4m",27:"[7m",28:"[8m",29:"[9m"}[n];a&&(this.activeFormatting=this.activeFormatting.filter(l=>!l.includes(a)))}}}getActiveEscapes(){return[this.activeBackground,this.activeForeground,...this.activeFormatting].filter(Boolean).join("")}};var H=Object.defineProperty,y=g((e,t)=>H(e,"name",{value:t,configurable:!0}),"o");const B=y((e,t)=>{if(!f.O.has(e[t]))return{isInsideEscape:!1,isInsideLinkEscape:!1};const i=!0,n=e.slice(t+1,t+1+f.P.length).join("")===f.P;return{isInsideEscape:i,isInsideLinkEscape:n}},"checkEscapeSequence"),_=y((e,t={})=>{const i=new x;let n="",a=!1,l=!1,c="",s="",u=!1;const h=[...e];for(let r=0;r<h.length;r++){const o=h[r];if(o&&f.O.has(o)){if(n){const p=t.getWidth?.(n)??0,S={isEscapeSequence:!1,isGrapheme:!0,text:n,width:p};if(u&&(S.isHyperlink=!0,S.hyperlinkUrl=s),t.onSegment?.(S,i)===!1)return;n=""}if(a=!0,c=o,l=B(h,r).isInsideLinkEscape,l){let p=r+1;for(s="";p<h.length;){const b=h[p];if(b===f.S)break;s+=b,p++}s=s.slice(4);const S={hyperlinkUrl:s,isEscapeSequence:!0,isGrapheme:!1,isHyperlink:!0,isHyperlinkStart:!0,width:0};if(t.onSegment?.(S,i)===!1)return;r=p,u=!0,a=!1,l=!1,c="";continue}if(r+1<h.length&&h[r+1]==="\\"&&u){const p={isEscapeSequence:!0,isGrapheme:!1,isHyperlink:!0,isHyperlinkEnd:!0,width:0};if(t.onSegment?.(p,i)===!1)return;u=!1,s="",r++,a=!1,c="";continue}}if(a){if(c!==o&&(c+=o),o===f.Q){a=!1,i.processEscape(c);const p={isEscapeSequence:!0,isGrapheme:!1,text:c,width:0};if(t.onSegment?.(p,i)===!1)return;c=""}continue}n+=o;const m=t.getWidth?.(n)??0,v={isEscapeSequence:!1,isGrapheme:!0,text:n,width:m};if(u&&(v.isHyperlink=!0,v.hyperlinkUrl=s),t.onSegment?.(v,i)===!1)return;n=""}if(n){const r=t.getWidth?.(n)??0,o={isEscapeSequence:!1,isGrapheme:!0,text:n,width:r};u&&(o.isHyperlink=!0,o.hyperlinkUrl=s),t.onSegment?.(o,i)}if(c){const r={isEscapeSequence:!0,isGrapheme:!1,text:c,width:0};t.onSegment?.(r,i)}},"processAnsiString");var j=Object.defineProperty,F=g((e,t)=>j(e,"name",{value:t,configurable:!0}),"t$1");const w=F(e=>`${f.O.values().next().value}${f.T}${e}${f.Q}`,"wrapAnsiCode");var I=Object.defineProperty,P=g((e,t)=>I(e,"name",{value:t,configurable:!0}),"t");const R=P(e=>`${f.O.values().next().value}${f.P}${e}${f.S}`,"wrapAnsiHyperlink");var $=Object.defineProperty,q=g((e,t)=>$(e,"name",{value:t,configurable:!0}),"l");const G=q(e=>{if(e.length===0)return"";if(e.length===1)return e[0];let t="",i,n;const a=e.join(`
|
|
2
|
-
`),l=[...a];let c=0;for(const[s,u]of l.entries()){if(t+=u,f.O.has(u)){const r=f.U.exec(a.slice(c))?.groups??{};if(r.code!==void 0){const o=Number.parseFloat(r.code);i=o===f.W?void 0:o}else r.uri!==void 0&&(n=r.uri.length===0?void 0:r.uri)}const h=f.V.get(Number(i));l[s+1]===`
|
|
3
|
-
`?(n&&(t+=R("")),i&&h&&(t+=w(h))):u===`
|
|
4
|
-
`&&(i&&h&&(t+=w(i)),n&&(t+=R(n))),c+=u.length}return t},"preserveAnsi");var D=Object.defineProperty,d=g((e,t)=>D(e,"name",{value:t,configurable:!0}),"f");const W=d(e=>{if(!e.includes("\x1B"))return e;let t=e;return e.includes("\x1B[30m")&&(t+="\x1B[39m"),e.includes("\x1B[42m")&&(t+="\x1B[49m"),t},"resetAnsiAtLineBreak"),k=d(e=>{const t=e.split(" ");let i=t.length;for(;i>0&&A.getStringWidth(t[i-1])===0;)i--;return i===t.length?e:t.slice(0,i).join(" ")+t.slice(i).join("")},"stringVisibleTrimSpacesRight"),L=d((e,t,i)=>{if(e.length===0)return[""];if(t<=0)return[e];const n=[];let a="",l=0;const c=new x;let s=!1,u=!1,h="";for(let r=0;r<e.length;r++){const o=e[r];if(f.O.has(o)){s=!0,h=o,a+=o,u=B([...e],r).isInsideLinkEscape;continue}if(s){h+=o,a+=o,u?o===f.S&&(s=u=!1):o===f.Q&&(s=!1,c.processEscape(h));continue}const m=A.getStringWidth(o),v=o===" ";if(m===0){a+=o;continue}if(l+m>t&&(a&&n.push(W(a)),a=c.getActiveEscapes(),l=0,v&&i)){for(;r<e.length&&e[r]===" "&&(r++,!(r>=e.length)););r<e.length&&r--;continue}if(a+=o,l+=m,l===t&&r<e.length-1&&(n.push(W(a)),a=c.getActiveEscapes(),l=0,r+1<e.length&&e[r+1]===" "&&i)){for(r++;r<e.length&&e[r]===" ";)r++;r--}}return a&&n.push(a),i?n.map(r=>k(r)):n},"wrapWithBreakAtWidth"),M=d((e,t,i)=>{if(e.length===0)return[];const n=i?e.trim():e;if(n.length===0)return[];const a=[];let l="",c=0;return _(n,{getWidth:A.getStringWidth,onSegment:d((s,u)=>{if(s.isEscapeSequence)l+=s.text;else{const h=s.text===" ";if(s.width===0)return l+=s.text,!0;if(c+s.width>t&&(l&&a.push(W(l)),l=u.getActiveEscapes(),c=0,h))return i||a.push(u.getActiveEscapes()+s.text),!0;l+=s.text,c+=s.width}return!0},"onSegment")}),l&&a.push(l),i?a.map(s=>k(s)):a},"wrapCharByChar"),U=d((e,t,i)=>{if(e.length===0)return[];const n=i?e.trim():e;if(n.length===0)return[];const a=n.split(/(?=\s)|(?<=\s)/),l=[];let c="",s=0,u=0;for(;u<a.length;){const h=a[u],r=/^\s+$/.test(h),o=A.getStringWidth(h);if(h.length===0){u++;continue}if(i&&r&&s===0){u++;continue}if(s+o>t&&s>0){i?l.push(k(c)):l.push(c),c="",s=0;continue}c+=h,s+=o,u++}return c&&(i?l.push(k(c)):l.push(c)),l},"wrapWithWordBoundaries"),E={BREAK_AT_CHARACTERS:"BREAK_AT_CHARACTERS",PRESERVE_WORDS:"PRESERVE_WORDS",STRICT_WIDTH:"STRICT_WIDTH"},V=d((e,t={})=>{const{removeZeroWidthCharacters:i=!0,trim:n=!0,width:a=80,wrapMode:l=E.PRESERVE_WORDS}=t;if(n&&e.trim()==="")return"";let c=String(e).normalize("NFC").replaceAll(`\r
|
|
5
|
-
`,`
|
|
6
|
-
`);return i&&(c=c.replaceAll(f.X,"")),c.split(`
|
|
7
|
-
`).map(s=>{if(n&&s.trim()==="")return"";let u;switch(l){case E.STRICT_WIDTH:{u=L(s,a,n);break}case E.BREAK_AT_CHARACTERS:{u=M(s,a,n);break}default:u=U(s,a,n)}return G(u)}).join(`
|
|
8
|
-
`)},"wordWrap");exports.WrapMode=E;exports.wordWrap=V;
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
var y=Object.defineProperty;var p=(e,t)=>y(e,"name",{value:t,configurable:!0});import{O as d,P as R,Q as T,S as b,T as H,U as P,V as O,W as F,X as N}from"./constants-Cd17VNEv.mjs";import{getStringWidth as A}from"../get-string-width.mjs";var $=Object.defineProperty,j=p((e,t)=>$(e,"name",{value:t,configurable:!0}),"s");let x=class{static{p(this,"o")}static{j(this,"AnsiStateTracker")}activeForeground=null;activeBackground=null;activeFormatting=[];processEscape(t){const i=/\x1B\[(\d+)m/.exec(t);if(!i)return;const n=Number.parseInt(i[1],10);switch(n){case 0:{this.activeForeground=null,this.activeBackground=null,this.activeFormatting=[];break}case 39:{this.activeForeground=null;break}case 49:{this.activeBackground=null;break}default:if(n>=30&&n<=37||n>=90&&n<=97)this.activeForeground=t;else if(n>=40&&n<=47||n>=100&&n<=107)this.activeBackground=t;else if([1,2,3,4,7,8,9].includes(n))this.activeFormatting.push(t);else if([22,23,24,27,28,29].includes(n)){const a={22:"[1m",23:"[3m",24:"[4m",27:"[7m",28:"[8m",29:"[9m"}[n];a&&(this.activeFormatting=this.activeFormatting.filter(l=>!l.includes(a)))}}}getActiveEscapes(){return[this.activeBackground,this.activeForeground,...this.activeFormatting].filter(Boolean).join("")}};var q=Object.defineProperty,B=p((e,t)=>q(e,"name",{value:t,configurable:!0}),"o");const W=B((e,t)=>{if(!d.has(e[t]))return{isInsideEscape:!1,isInsideLinkEscape:!1};const i=!0,n=e.slice(t+1,t+1+R.length).join("")===R;return{isInsideEscape:i,isInsideLinkEscape:n}},"checkEscapeSequence"),D=B((e,t={})=>{const i=new x;let n="",a=!1,l=!1,c="",s="",u=!1;const f=[...e];for(let r=0;r<f.length;r++){const o=f[r];if(o&&d.has(o)){if(n){const h=t.getWidth?.(n)??0,S={isEscapeSequence:!1,isGrapheme:!0,text:n,width:h};if(u&&(S.isHyperlink=!0,S.hyperlinkUrl=s),t.onSegment?.(S,i)===!1)return;n=""}if(a=!0,c=o,l=W(f,r).isInsideLinkEscape,l){let h=r+1;for(s="";h<f.length;){const w=f[h];if(w===b)break;s+=w,h++}s=s.slice(4);const S={hyperlinkUrl:s,isEscapeSequence:!0,isGrapheme:!1,isHyperlink:!0,isHyperlinkStart:!0,width:0};if(t.onSegment?.(S,i)===!1)return;r=h,u=!0,a=!1,l=!1,c="";continue}if(r+1<f.length&&f[r+1]==="\\"&&u){const h={isEscapeSequence:!0,isGrapheme:!1,isHyperlink:!0,isHyperlinkEnd:!0,width:0};if(t.onSegment?.(h,i)===!1)return;u=!1,s="",r++,a=!1,c="";continue}}if(a){if(c!==o&&(c+=o),o===T){a=!1,i.processEscape(c);const h={isEscapeSequence:!0,isGrapheme:!1,text:c,width:0};if(t.onSegment?.(h,i)===!1)return;c=""}continue}n+=o;const m=t.getWidth?.(n)??0,E={isEscapeSequence:!1,isGrapheme:!0,text:n,width:m};if(u&&(E.isHyperlink=!0,E.hyperlinkUrl=s),t.onSegment?.(E,i)===!1)return;n=""}if(n){const r=t.getWidth?.(n)??0,o={isEscapeSequence:!1,isGrapheme:!0,text:n,width:r};u&&(o.isHyperlink=!0,o.hyperlinkUrl=s),t.onSegment?.(o,i)}if(c){const r={isEscapeSequence:!0,isGrapheme:!1,text:c,width:0};t.onSegment?.(r,i)}},"processAnsiString");var G=Object.defineProperty,L=p((e,t)=>G(e,"name",{value:t,configurable:!0}),"t$1");const C=L(e=>`${d.values().next().value}${H}${e}${T}`,"wrapAnsiCode");var U=Object.defineProperty,V=p((e,t)=>U(e,"name",{value:t,configurable:!0}),"t");const I=V(e=>`${d.values().next().value}${R}${e}${b}`,"wrapAnsiHyperlink");var K=Object.defineProperty,M=p((e,t)=>K(e,"name",{value:t,configurable:!0}),"l");const Z=M(e=>{if(e.length===0)return"";if(e.length===1)return e[0];let t="",i,n;const a=e.join(`
|
|
2
|
-
`),l=[...a];let c=0;for(const[s,u]of l.entries()){if(t+=u,d.has(u)){const r=P.exec(a.slice(c))?.groups??{};if(r.code!==void 0){const o=Number.parseFloat(r.code);i=o===F?void 0:o}else r.uri!==void 0&&(n=r.uri.length===0?void 0:r.uri)}const f=O.get(Number(i));l[s+1]===`
|
|
3
|
-
`?(n&&(t+=I("")),i&&f&&(t+=C(f))):u===`
|
|
4
|
-
`&&(i&&f&&(t+=C(i)),n&&(t+=I(n))),c+=u.length}return t},"preserveAnsi");var z=Object.defineProperty,g=p((e,t)=>z(e,"name",{value:t,configurable:!0}),"f");const _=g(e=>{if(!e.includes("\x1B"))return e;let t=e;return e.includes("\x1B[30m")&&(t+="\x1B[39m"),e.includes("\x1B[42m")&&(t+="\x1B[49m"),t},"resetAnsiAtLineBreak"),v=g(e=>{const t=e.split(" ");let i=t.length;for(;i>0&&A(t[i-1])===0;)i--;return i===t.length?e:t.slice(0,i).join(" ")+t.slice(i).join("")},"stringVisibleTrimSpacesRight"),Q=g((e,t,i)=>{if(e.length===0)return[""];if(t<=0)return[e];const n=[];let a="",l=0;const c=new x;let s=!1,u=!1,f="";for(let r=0;r<e.length;r++){const o=e[r];if(d.has(o)){s=!0,f=o,a+=o,u=W([...e],r).isInsideLinkEscape;continue}if(s){f+=o,a+=o,u?o===b&&(s=u=!1):o===T&&(s=!1,c.processEscape(f));continue}const m=A(o),E=o===" ";if(m===0){a+=o;continue}if(l+m>t&&(a&&n.push(_(a)),a=c.getActiveEscapes(),l=0,E&&i)){for(;r<e.length&&e[r]===" "&&(r++,!(r>=e.length)););r<e.length&&r--;continue}if(a+=o,l+=m,l===t&&r<e.length-1&&(n.push(_(a)),a=c.getActiveEscapes(),l=0,r+1<e.length&&e[r+1]===" "&&i)){for(r++;r<e.length&&e[r]===" ";)r++;r--}}return a&&n.push(a),i?n.map(r=>v(r)):n},"wrapWithBreakAtWidth"),X=g((e,t,i)=>{if(e.length===0)return[];const n=i?e.trim():e;if(n.length===0)return[];const a=[];let l="",c=0;return D(n,{getWidth:A,onSegment:g((s,u)=>{if(s.isEscapeSequence)l+=s.text;else{const f=s.text===" ";if(s.width===0)return l+=s.text,!0;if(c+s.width>t&&(l&&a.push(_(l)),l=u.getActiveEscapes(),c=0,f))return i||a.push(u.getActiveEscapes()+s.text),!0;l+=s.text,c+=s.width}return!0},"onSegment")}),l&&a.push(l),i?a.map(s=>v(s)):a},"wrapCharByChar"),J=g((e,t,i)=>{if(e.length===0)return[];const n=i?e.trim():e;if(n.length===0)return[];const a=n.split(/(?=\s)|(?<=\s)/),l=[];let c="",s=0,u=0;for(;u<a.length;){const f=a[u],r=/^\s+$/.test(f),o=A(f);if(f.length===0){u++;continue}if(i&&r&&s===0){u++;continue}if(s+o>t&&s>0){i?l.push(v(c)):l.push(c),c="",s=0;continue}c+=f,s+=o,u++}return c&&(i?l.push(v(c)):l.push(c)),l},"wrapWithWordBoundaries"),k={BREAK_AT_CHARACTERS:"BREAK_AT_CHARACTERS",PRESERVE_WORDS:"PRESERVE_WORDS",STRICT_WIDTH:"STRICT_WIDTH"},re=g((e,t={})=>{const{removeZeroWidthCharacters:i=!0,trim:n=!0,width:a=80,wrapMode:l=k.PRESERVE_WORDS}=t;if(n&&e.trim()==="")return"";let c=String(e).normalize("NFC").replaceAll(`\r
|
|
5
|
-
`,`
|
|
6
|
-
`);return i&&(c=c.replaceAll(N,"")),c.split(`
|
|
7
|
-
`).map(s=>{if(n&&s.trim()==="")return"";let u;switch(l){case k.STRICT_WIDTH:{u=Q(s,a,n);break}case k.BREAK_AT_CHARACTERS:{u=X(s,a,n);break}default:u=J(s,a,n)}return Z(u)}).join(`
|
|
8
|
-
`)},"wordWrap");export{k as WrapMode,re as wordWrap};
|