@visulima/string 1.5.2 → 2.0.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.
Files changed (218) hide show
  1. package/CHANGELOG.md +21 -0
  2. package/dist/{align-text.mjs → align-text.js} +1 -1
  3. package/dist/case/camel-case.d.ts +1 -1
  4. package/dist/case/camel-case.js +1 -0
  5. package/dist/case/capital-case.d.ts +1 -1
  6. package/dist/case/capital-case.js +1 -0
  7. package/dist/case/constant-case.d.ts +1 -1
  8. package/dist/case/constant-case.js +1 -0
  9. package/dist/case/dot-case.d.ts +1 -1
  10. package/dist/case/dot-case.js +1 -0
  11. package/dist/case/flat-case.d.ts +1 -1
  12. package/dist/case/flat-case.js +1 -0
  13. package/dist/case/flip-case.js +1 -0
  14. package/dist/case/identify-case.d.ts +1 -1
  15. package/dist/case/index.js +1 -0
  16. package/dist/case/kebab-case.js +1 -0
  17. package/dist/case/lower-first.d.ts +1 -1
  18. package/dist/case/no-case.d.ts +1 -1
  19. package/dist/case/no-case.js +1 -0
  20. package/dist/case/pascal-case.d.ts +1 -1
  21. package/dist/case/pascal-case.js +1 -0
  22. package/dist/case/pascal-snake-case.d.ts +1 -1
  23. package/dist/case/pascal-snake-case.js +1 -0
  24. package/dist/case/path-case.d.ts +1 -1
  25. package/dist/case/path-case.js +1 -0
  26. package/dist/case/sentence-case.d.ts +1 -1
  27. package/dist/case/sentence-case.js +1 -0
  28. package/dist/case/snake-case.d.ts +1 -1
  29. package/dist/case/snake-case.js +1 -0
  30. package/dist/case/split-by-case.js +1 -0
  31. package/dist/case/title-case.d.ts +1 -1
  32. package/dist/case/title-case.js +1 -0
  33. package/dist/case/train-case.d.ts +1 -1
  34. package/dist/case/train-case.js +1 -0
  35. package/dist/case/upper-first.d.ts +1 -1
  36. package/dist/closest-string.js +1 -0
  37. package/dist/compare-similarity.js +1 -0
  38. package/dist/get-string-truncated-width.js +1 -0
  39. package/dist/get-string-width.js +1 -0
  40. package/dist/index.js +1 -0
  41. package/dist/outdent.js +1 -0
  42. package/dist/packem_shared/closestN-DjNxwK0t.js +1 -0
  43. package/dist/packem_shared/joinSegments-DTGeJBZG.js +1 -0
  44. package/dist/packem_shared/{transliterate-DNh-jM0e.mjs → transliterate-CxVHmZUa.js} +1 -1
  45. package/dist/slice.js +1 -0
  46. package/dist/slugify.d.ts +1 -1
  47. package/dist/slugify.js +1 -0
  48. package/dist/test/utils.js +16 -0
  49. package/dist/test/vitest.js +1 -0
  50. package/dist/truncate.js +1 -0
  51. package/dist/utilities.js +1 -0
  52. package/dist/word-similarity-sort.js +1 -0
  53. package/dist/word-wrap.js +8 -0
  54. package/package.json +73 -404
  55. package/dist/align-text.cjs +0 -2
  56. package/dist/align-text.d.cts +0 -13
  57. package/dist/align-text.d.mts +0 -13
  58. package/dist/case/camel-case.cjs +0 -1
  59. package/dist/case/camel-case.d.cts +0 -7
  60. package/dist/case/camel-case.d.mts +0 -7
  61. package/dist/case/camel-case.mjs +0 -1
  62. package/dist/case/capital-case.cjs +0 -1
  63. package/dist/case/capital-case.d.cts +0 -7
  64. package/dist/case/capital-case.d.mts +0 -7
  65. package/dist/case/capital-case.mjs +0 -1
  66. package/dist/case/constant-case.cjs +0 -1
  67. package/dist/case/constant-case.d.cts +0 -7
  68. package/dist/case/constant-case.d.mts +0 -7
  69. package/dist/case/constant-case.mjs +0 -1
  70. package/dist/case/dot-case.cjs +0 -1
  71. package/dist/case/dot-case.d.cts +0 -7
  72. package/dist/case/dot-case.d.mts +0 -7
  73. package/dist/case/dot-case.mjs +0 -1
  74. package/dist/case/flat-case.cjs +0 -1
  75. package/dist/case/flat-case.d.cts +0 -7
  76. package/dist/case/flat-case.d.mts +0 -7
  77. package/dist/case/flat-case.mjs +0 -1
  78. package/dist/case/flip-case.cjs +0 -1
  79. package/dist/case/flip-case.d.cts +0 -9
  80. package/dist/case/flip-case.d.mts +0 -9
  81. package/dist/case/flip-case.mjs +0 -1
  82. package/dist/case/identify-case.cjs +0 -1
  83. package/dist/case/identify-case.d.cts +0 -7
  84. package/dist/case/identify-case.d.mts +0 -7
  85. package/dist/case/index.cjs +0 -1
  86. package/dist/case/index.d.cts +0 -26
  87. package/dist/case/index.d.mts +0 -26
  88. package/dist/case/index.mjs +0 -1
  89. package/dist/case/kebab-case.cjs +0 -1
  90. package/dist/case/kebab-case.d.cts +0 -12
  91. package/dist/case/kebab-case.d.mts +0 -12
  92. package/dist/case/kebab-case.mjs +0 -1
  93. package/dist/case/lower-first.cjs +0 -1
  94. package/dist/case/lower-first.d.cts +0 -7
  95. package/dist/case/lower-first.d.mts +0 -7
  96. package/dist/case/no-case.cjs +0 -1
  97. package/dist/case/no-case.d.cts +0 -7
  98. package/dist/case/no-case.d.mts +0 -7
  99. package/dist/case/no-case.mjs +0 -1
  100. package/dist/case/pascal-case.cjs +0 -1
  101. package/dist/case/pascal-case.d.cts +0 -7
  102. package/dist/case/pascal-case.d.mts +0 -7
  103. package/dist/case/pascal-case.mjs +0 -1
  104. package/dist/case/pascal-snake-case.cjs +0 -1
  105. package/dist/case/pascal-snake-case.d.cts +0 -7
  106. package/dist/case/pascal-snake-case.d.mts +0 -7
  107. package/dist/case/pascal-snake-case.mjs +0 -1
  108. package/dist/case/path-case.cjs +0 -1
  109. package/dist/case/path-case.d.cts +0 -7
  110. package/dist/case/path-case.d.mts +0 -7
  111. package/dist/case/path-case.mjs +0 -1
  112. package/dist/case/sentence-case.cjs +0 -1
  113. package/dist/case/sentence-case.d.cts +0 -7
  114. package/dist/case/sentence-case.d.mts +0 -7
  115. package/dist/case/sentence-case.mjs +0 -1
  116. package/dist/case/snake-case.cjs +0 -1
  117. package/dist/case/snake-case.d.cts +0 -7
  118. package/dist/case/snake-case.d.mts +0 -7
  119. package/dist/case/snake-case.mjs +0 -1
  120. package/dist/case/split-by-case.cjs +0 -1
  121. package/dist/case/split-by-case.d.cts +0 -17
  122. package/dist/case/split-by-case.d.mts +0 -17
  123. package/dist/case/split-by-case.mjs +0 -1
  124. package/dist/case/title-case.cjs +0 -1
  125. package/dist/case/title-case.d.cts +0 -7
  126. package/dist/case/title-case.d.mts +0 -7
  127. package/dist/case/title-case.mjs +0 -1
  128. package/dist/case/train-case.cjs +0 -1
  129. package/dist/case/train-case.d.cts +0 -7
  130. package/dist/case/train-case.d.mts +0 -7
  131. package/dist/case/train-case.mjs +0 -1
  132. package/dist/case/upper-first.cjs +0 -1
  133. package/dist/case/upper-first.d.cts +0 -7
  134. package/dist/case/upper-first.d.mts +0 -7
  135. package/dist/closest-string.cjs +0 -1
  136. package/dist/closest-string.d.cts +0 -8
  137. package/dist/closest-string.d.mts +0 -8
  138. package/dist/closest-string.mjs +0 -1
  139. package/dist/compare-similarity.cjs +0 -1
  140. package/dist/compare-similarity.d.cts +0 -8
  141. package/dist/compare-similarity.d.mts +0 -8
  142. package/dist/compare-similarity.mjs +0 -1
  143. package/dist/get-string-truncated-width.cjs +0 -1
  144. package/dist/get-string-truncated-width.d.cts +0 -25
  145. package/dist/get-string-truncated-width.d.mts +0 -25
  146. package/dist/get-string-truncated-width.mjs +0 -1
  147. package/dist/get-string-width.cjs +0 -1
  148. package/dist/get-string-width.d.cts +0 -7
  149. package/dist/get-string-width.d.mts +0 -7
  150. package/dist/get-string-width.mjs +0 -1
  151. package/dist/index.cjs +0 -1
  152. package/dist/index.d.cts +0 -47
  153. package/dist/index.d.mts +0 -47
  154. package/dist/index.mjs +0 -1
  155. package/dist/native-string-types.d.cts +0 -128
  156. package/dist/native-string-types.d.mts +0 -128
  157. package/dist/outdent.cjs +0 -1
  158. package/dist/outdent.d.cts +0 -16
  159. package/dist/outdent.d.mts +0 -16
  160. package/dist/outdent.mjs +0 -1
  161. package/dist/packem_shared/LRUCache-TYqfUYE5.cjs +0 -1
  162. package/dist/packem_shared/closest-DGumBGH9.cjs +0 -1
  163. package/dist/packem_shared/closestN-D4wF4I-I.mjs +0 -1
  164. package/dist/packem_shared/closestN-DqYIV5u3.cjs +0 -1
  165. package/dist/packem_shared/constants-DEcMFLn8.cjs +0 -1
  166. package/dist/packem_shared/generate-cache-key-BZf0GiMs.cjs +0 -1
  167. package/dist/packem_shared/joinSegments-BNRq9dVI.mjs +0 -1
  168. package/dist/packem_shared/joinSegments-Cs5mfgdt.cjs +0 -1
  169. package/dist/packem_shared/lru-cache-B_t27XwI.d.cts +0 -14
  170. package/dist/packem_shared/lru-cache-B_t27XwI.d.mts +0 -14
  171. package/dist/packem_shared/normalize-german-eszett-Bop4wOp9.cjs +0 -1
  172. package/dist/packem_shared/replaceString-9jUkfJB5.cjs +0 -1
  173. package/dist/packem_shared/transliterate-wQMEsr3l.cjs +0 -5
  174. package/dist/packem_shared/types-CNJfNczL.d.mts +0 -59
  175. package/dist/packem_shared/types-Cnu8OB9S.d.cts +0 -59
  176. package/dist/packem_shared/types-Daae0hGf.d.cts +0 -64
  177. package/dist/packem_shared/types-Daae0hGf.d.mts +0 -64
  178. package/dist/slice.cjs +0 -1
  179. package/dist/slice.d.cts +0 -11
  180. package/dist/slice.d.mts +0 -11
  181. package/dist/slice.mjs +0 -1
  182. package/dist/slugify.cjs +0 -1
  183. package/dist/slugify.d.cts +0 -5
  184. package/dist/slugify.d.mts +0 -5
  185. package/dist/slugify.mjs +0 -1
  186. package/dist/test/utils.cjs +0 -16
  187. package/dist/test/utils.d.cts +0 -31
  188. package/dist/test/utils.d.mts +0 -31
  189. package/dist/test/utils.mjs +0 -16
  190. package/dist/test/vitest.cjs +0 -1
  191. package/dist/test/vitest.d.cts +0 -9
  192. package/dist/test/vitest.d.mts +0 -9
  193. package/dist/test/vitest.mjs +0 -1
  194. package/dist/truncate.cjs +0 -1
  195. package/dist/truncate.d.cts +0 -13
  196. package/dist/truncate.d.mts +0 -13
  197. package/dist/truncate.mjs +0 -1
  198. package/dist/utilities.cjs +0 -1
  199. package/dist/utilities.d.cts +0 -10
  200. package/dist/utilities.d.mts +0 -10
  201. package/dist/utilities.mjs +0 -1
  202. package/dist/word-similarity-sort.cjs +0 -1
  203. package/dist/word-similarity-sort.d.cts +0 -8
  204. package/dist/word-similarity-sort.d.mts +0 -8
  205. package/dist/word-similarity-sort.mjs +0 -1
  206. package/dist/word-wrap.cjs +0 -8
  207. package/dist/word-wrap.d.cts +0 -16
  208. package/dist/word-wrap.d.mts +0 -16
  209. package/dist/word-wrap.mjs +0 -8
  210. /package/dist/case/{identify-case.mjs → identify-case.js} +0 -0
  211. /package/dist/case/{lower-first.mjs → lower-first.js} +0 -0
  212. /package/dist/case/{upper-first.mjs → upper-first.js} +0 -0
  213. /package/dist/packem_shared/{LRUCache-Bjo6gsbC.mjs → LRUCache-Bjo6gsbC.js} +0 -0
  214. /package/dist/packem_shared/{closest-uarbVSbs.mjs → closest-uarbVSbs.js} +0 -0
  215. /package/dist/packem_shared/{constants-CDcaCZKC.mjs → constants-CDcaCZKC.js} +0 -0
  216. /package/dist/packem_shared/{generate-cache-key-DPByFaMH.mjs → generate-cache-key-DPByFaMH.js} +0 -0
  217. /package/dist/packem_shared/{normalize-german-eszett-4k1qRtEP.mjs → normalize-german-eszett-4k1qRtEP.js} +0 -0
  218. /package/dist/packem_shared/{replaceString-DwIZyvoL.mjs → replaceString-DwIZyvoL.js} +0 -0
@@ -0,0 +1,16 @@
1
+ var d=Object.defineProperty;var a=(e,t)=>d(e,"name",{value:t,configurable:!0});import{createRequire as g}from"node:module";import{getStringWidth as l}from"../get-string-width.js";const u=g(import.meta.url),n=typeof globalThis<"u"&&typeof globalThis.process<"u"?globalThis.process:process,f=a(e=>{if(typeof n<"u"&&n.versions&&n.versions.node){const[t,s]=n.versions.node.split(".").map(Number);if(t>22||t===22&&s>=3||t===20&&s>=16)return n.getBuiltinModule(e)}return u(e)},"__cjs_getBuiltinModule"),{stripVTControlCharacters:h,format:m}=f("node:util");var S=Object.defineProperty,o=a((e,t)=>S(e,"name",{value:t,configurable:!0}),"r");const p=o(e=>{const t=h(e);return{ansi:e,json:JSON.stringify(e),lengthDifference:e.length-t.length,stripped:t,visible:e.replaceAll("\x1B",String.raw`\u001B`)}},"formatAnsiString"),j=o((e,t)=>{const s=p(e),i=p(t);return{message:o(()=>{if(e===t)return"ANSI strings are identical";const r=s.stripped===i.stripped;return m(`ANSI string comparison failed:
2
+
3
+ Actual:
4
+ - Visible content: %s
5
+ - With escape codes: %s
6
+ - JSON: %s
7
+ - Length: %d
8
+
9
+ Expected:
10
+ - Visible content: %s
11
+ - With escape codes: %s
12
+ - JSON: %s
13
+ - Length: %d
14
+
15
+ %s
16
+ `,s.stripped,s.visible,s.json,l(s.ansi),i.stripped,i.visible,i.json,l(i.ansi),r?"✓ Visible content is identical, but escape codes differ":"✗ Visible content differs")},"message"),pass:e===t}},"expectAnsiStrings"),v=o((e,t)=>{const s=p(e),i=p(t),r=s.stripped===i.stripped,c=e===t;return{actual:s,ansiEqual:c,expected:i,strippedEqual:r,summary:{actualLength:e.length,actualStrippedLength:s.stripped.length,ansiEqual:c,expectedLength:t.length,expectedStrippedLength:i.stripped.length,strippedEqual:r}}},"compareAnsiStrings");export{v as compareAnsiStrings,j as expectAnsiStrings,p as formatAnsiString};
@@ -0,0 +1 @@
1
+ var i=Object.defineProperty;var t=(e,r)=>i(e,"name",{value:r,configurable:!0});import{expectAnsiStrings as n}from"./utils.js";var o=Object.defineProperty,a=t((e,r)=>o(e,"name",{value:r,configurable:!0}),"i");const c=a((e,r)=>n(e,r),"toEqualAnsi");export{c as toEqualAnsi};
@@ -0,0 +1 @@
1
+ var g=Object.defineProperty;var h=(t,i)=>g(t,"name",{value:i,configurable:!0});import{getStringTruncatedWidth as l}from"./get-string-truncated-width.js";import{slice as d}from"./slice.js";var b=Object.defineProperty,p=h((t,i)=>b(t,"name",{value:i,configurable:!0}),"h");const u="…",y=3,f=p((t,i,e=!1)=>{if(t.charAt(i)===" ")return i;const r=e?1:-1,a=Math.min(y,e?t.length-i:i);for(let c=1;c<=a;c++){const n=i+c*r;if(t.charAt(n)===" ")return n}return i},"findNearestSpace"),T=p((t,i,e={})=>{if(typeof t!="string")throw new TypeError(`Expected \`input\` to be a string, got ${typeof t}`);if(typeof i!="number")throw new TypeError(`Expected \`limit\` to be a number, got ${typeof i}`);if(t===""||i<=0)return"";t=t.normalize("NFC");const{ellipsis:r=u,position:a="end",preferTruncationOnSpace:c=!1}=e;let n=e.ellipsisWidth??r===u?1:void 0;if(n===void 0&&(n=l(r,{...e.width,ellipsis:"",ellipsisWidth:0,limit:Number.POSITIVE_INFINITY}).width),i===1&&n===1)return r;if(i===1)return"";const{width:o}=l(t,{...e.width,ellipsis:r,ellipsisWidth:n});if(o<=i)return t;switch(a){case"end":{if(c){const s=f(t,i-1);return d(t,0,s,{width:e.width})+r}return d(t,0,i-n,{width:e.width})+r}case"middle":{const s=Math.floor(i/2);if(c){const w=f(t,s),m=f(t,o-(i-s)+1,!0);return d(t,0,w)+r+d(t,m,o).trim()}return d(t,0,s,{width:e.width})+r+d(t,o-(i-s)+n,o,{width:e.width})}case"start":{if(c){const s=f(t,o-i+1,!0);return r+d(t,s,o).trim()}return r+d(t,o-i+n,o,{width:e.width})}default:throw new Error(`Invalid position: expected 'start', 'middle' or 'end', got '${a}'`)}},"truncate");export{T as truncate};
@@ -0,0 +1 @@
1
+ var o=Object.defineProperty;var c=(u,t)=>o(u,"name",{value:t,configurable:!0});import{default as x}from"./packem_shared/LRUCache-Bjo6gsbC.js";var p=Object.defineProperty,n=c((u,t)=>p(u,"name",{value:t,configurable:!0}),"n");const h=n(u=>u.replaceAll(/[.*+?^${}()|[\]\\]/g,String.raw`\$&`),"escapeRegExp"),C=n((u,t)=>t.some(F=>u>=F[0]&&u<=F[1]),"inRange"),E=n(u=>/[\u2E80-\u2E99\u2E9B-\u2EF3\u2F00-\u2FD5\u3005\u3007\u3021-\u3029\u3038-\u303B\u3400-\u4DBF\u4E00-\u9FFC\uF900-\uFA6D\uFA70-\uFAD9]|\uD81B[\uDFF0\uDFF1]|[\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879\uD880-\uD883][\uDC00-\uDFFF]|\uD869[\uDC00-\uDEDD\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]|\uD884[\uDC00-\uDF4A]/.test(u),"hasChinese"),g=n(u=>/[\p{P}\p{Z}]/u.test(u),"hasPunctuationOrSpace"),l=n((u,t)=>{const F=[];if(!Array.isArray(t))return F;if(t.forEach(D=>{if(typeof D!="string"||D.length===0)return;let r=0,a;for(;(a=u.indexOf(D,r))>-1;){const i=a+D.length-1;F.push([a,i]),r=a+1}}),F.length===0)return[];F.sort((D,r)=>D[0]-r[0]);const s=[];let e;for(const D of F)e===void 0?e=[...D]:D[0]<=e[1]+1?e[1]=Math.max(e[1],D[1]):(s.push(e),e=[...D]);return e!==void 0&&s.push(e),s},"findStringOccurrences");export{x as LRUCache,h as escapeRegExp,l as findStringOccurrences,E as hasChinese,g as hasPunctuationOrSpace,C as inRange};
@@ -0,0 +1 @@
1
+ var l=Object.defineProperty;var n=(e,r)=>l(e,"name",{value:r,configurable:!0});import{distance as m}from"./packem_shared/closest-uarbVSbs.js";var p=Object.defineProperty,u=n((e,r)=>p(e,"name",{value:r,configurable:!0}),"s");const f=u((e,r,s)=>{const{caseSensitive:i=!1,compareFunction:c=m}=s??{},d=i?e:e.toLowerCase(),t=r.map(o=>{const a=i?o:o.toLowerCase();return{distance:c(d,a),originalWord:o}});return t.sort((o,a)=>o.distance!==a.distance?o.distance-a.distance:o.originalWord.localeCompare(a.originalWord)),t.map(o=>o.originalWord)},"wordSimilaritySort");export{f as wordSimilaritySort};
@@ -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 k,Q as b,S as R,T as O,U as H,V as $,W as P,X as j}from"./packem_shared/constants-CDcaCZKC.js";import{getStringWidth as d}from"./get-string-width.js";var D=Object.defineProperty,N=m((t,e)=>D(t,"name",{value:e,configurable:!0}),"n");let w=class{static{m(this,"u")}static{N(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}),"u");const C=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=C(h,c).isInsideLinkEscape,a){let p=c+1;for(s="";p<h.length;){const _=h[p];if(_===b)break;s+=_,p+=1}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+=1,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}),"p");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 Q=Object.defineProperty,E=m((t,e)=>Q(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"),I=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=C([...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+=1,!(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+=1;c<t.length&&t[c]===" ";)c+=1;c--}}return a&&r.push(a+l.getEndEscapesForAllActiveAttributes()),n?r.map(c=>A(c)):r},"wrapWithBreakAtWidth"),X=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"),J=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+=1;continue}if(n&&c&&s===0){u+=1;continue}if(s+o>e&&s>0){n?a.push(A(i)):a.push(i),i="",s=0;continue}i+=h,s+=o,u+=1}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+=1;continue}if(n&&c&&s===0){u+=1;continue}if(o>e){i&&a.push(x(n?A(i):i));const f=I(h,e,n);if(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+=1;continue}if(s+o>e&&s>0&&(a.push(x(n?A(i):i)),i="",s=0,n&&c)){u+=1;continue}i+=h,s+=o,u+=1}return i&&a.push(x(n?A(i):i)),a},"wrapAndBreakWords"),B={BREAK_AT_CHARACTERS:"BREAK_AT_CHARACTERS",BREAK_WORDS:"BREAK_WORDS",PRESERVE_WORDS:"PRESERVE_WORDS",STRICT_WIDTH:"STRICT_WIDTH"},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(j,"")),i.split(`
7
+ `).map(s=>{if(r&&s.trim()==="")return"";let u;switch(a){case B.BREAK_AT_CHARACTERS:{u=X(s,l,r);break}case B.BREAK_WORDS:{u=Y(s,l,r);break}case B.STRICT_WIDTH:{u=I(s,l,r);break}default:u=J(s,l,r)}return z(u)}).join(`
8
+ `)},"wordWrap");export{B as WrapMode,ie as wordWrap};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@visulima/string",
3
- "version": "1.5.2",
3
+ "version": "2.0.0",
4
4
  "description": "Functions for manipulating strings.",
5
5
  "keywords": [
6
6
  "visulima",
@@ -78,488 +78,157 @@
78
78
  "type": "module",
79
79
  "exports": {
80
80
  "./native-string-types": {
81
- "require": {
82
- "types": "./dist/native-string-types.d.cts"
83
- },
84
- "import": {
85
- "types": "./dist/native-string-types.d.mts"
86
- }
81
+ "types": "./dist/native-string-types.d.ts"
87
82
  },
88
83
  ".": {
89
- "require": {
90
- "types": "./dist/index.d.cts",
91
- "default": "./dist/index.cjs"
92
- },
93
- "import": {
94
- "types": "./dist/index.d.mts",
95
- "default": "./dist/index.mjs"
96
- }
84
+ "types": "./dist/index.d.ts",
85
+ "default": "./dist/index.js"
97
86
  },
98
87
  "./case": {
99
- "require": {
100
- "types": "./dist/case/index.d.cts",
101
- "default": "./dist/case/index.cjs"
102
- },
103
- "import": {
104
- "types": "./dist/case/index.d.mts",
105
- "default": "./dist/case/index.mjs"
106
- }
88
+ "types": "./dist/case/index.d.ts",
89
+ "default": "./dist/case/index.js"
107
90
  },
108
91
  "./case/camel-case": {
109
- "require": {
110
- "types": "./dist/case/camel-case.d.cts",
111
- "default": "./dist/case/camel-case.cjs"
112
- },
113
- "import": {
114
- "types": "./dist/case/camel-case.d.mts",
115
- "default": "./dist/case/camel-case.mjs"
116
- }
92
+ "types": "./dist/case/camel-case.d.ts",
93
+ "default": "./dist/case/camel-case.js"
117
94
  },
118
95
  "./case/capital-case": {
119
- "require": {
120
- "types": "./dist/case/capital-case.d.cts",
121
- "default": "./dist/case/capital-case.cjs"
122
- },
123
- "import": {
124
- "types": "./dist/case/capital-case.d.mts",
125
- "default": "./dist/case/capital-case.mjs"
126
- }
96
+ "types": "./dist/case/capital-case.d.ts",
97
+ "default": "./dist/case/capital-case.js"
127
98
  },
128
99
  "./case/constant-case": {
129
- "require": {
130
- "types": "./dist/case/constant-case.d.cts",
131
- "default": "./dist/case/constant-case.cjs"
132
- },
133
- "import": {
134
- "types": "./dist/case/constant-case.d.mts",
135
- "default": "./dist/case/constant-case.mjs"
136
- }
100
+ "types": "./dist/case/constant-case.d.ts",
101
+ "default": "./dist/case/constant-case.js"
137
102
  },
138
103
  "./case/dot-case": {
139
- "require": {
140
- "types": "./dist/case/dot-case.d.cts",
141
- "default": "./dist/case/dot-case.cjs"
142
- },
143
- "import": {
144
- "types": "./dist/case/dot-case.d.mts",
145
- "default": "./dist/case/dot-case.mjs"
146
- }
104
+ "types": "./dist/case/dot-case.d.ts",
105
+ "default": "./dist/case/dot-case.js"
147
106
  },
148
107
  "./case/flat-case": {
149
- "require": {
150
- "types": "./dist/case/flat-case.d.cts",
151
- "default": "./dist/case/flat-case.cjs"
152
- },
153
- "import": {
154
- "types": "./dist/case/flat-case.d.mts",
155
- "default": "./dist/case/flat-case.mjs"
156
- }
108
+ "types": "./dist/case/flat-case.d.ts",
109
+ "default": "./dist/case/flat-case.js"
157
110
  },
158
111
  "./case/flip-case": {
159
- "require": {
160
- "types": "./dist/case/flip-case.d.cts",
161
- "default": "./dist/case/flip-case.cjs"
162
- },
163
- "import": {
164
- "types": "./dist/case/flip-case.d.mts",
165
- "default": "./dist/case/flip-case.mjs"
166
- }
112
+ "types": "./dist/case/flip-case.d.ts",
113
+ "default": "./dist/case/flip-case.js"
167
114
  },
168
115
  "./case/identify-case": {
169
- "require": {
170
- "types": "./dist/case/identify-case.d.cts",
171
- "default": "./dist/case/identify-case.cjs"
172
- },
173
- "import": {
174
- "types": "./dist/case/identify-case.d.mts",
175
- "default": "./dist/case/identify-case.mjs"
176
- }
116
+ "types": "./dist/case/identify-case.d.ts",
117
+ "default": "./dist/case/identify-case.js"
177
118
  },
178
119
  "./case/kebab-case": {
179
- "require": {
180
- "types": "./dist/case/kebab-case.d.cts",
181
- "default": "./dist/case/kebab-case.cjs"
182
- },
183
- "import": {
184
- "types": "./dist/case/kebab-case.d.mts",
185
- "default": "./dist/case/kebab-case.mjs"
186
- }
120
+ "types": "./dist/case/kebab-case.d.ts",
121
+ "default": "./dist/case/kebab-case.js"
187
122
  },
188
123
  "./case/lower-first": {
189
- "require": {
190
- "types": "./dist/case/lower-first.d.cts",
191
- "default": "./dist/case/lower-first.cjs"
192
- },
193
- "import": {
194
- "types": "./dist/case/lower-first.d.mts",
195
- "default": "./dist/case/lower-first.mjs"
196
- }
124
+ "types": "./dist/case/lower-first.d.ts",
125
+ "default": "./dist/case/lower-first.js"
197
126
  },
198
127
  "./case/no-case": {
199
- "require": {
200
- "types": "./dist/case/no-case.d.cts",
201
- "default": "./dist/case/no-case.cjs"
202
- },
203
- "import": {
204
- "types": "./dist/case/no-case.d.mts",
205
- "default": "./dist/case/no-case.mjs"
206
- }
128
+ "types": "./dist/case/no-case.d.ts",
129
+ "default": "./dist/case/no-case.js"
207
130
  },
208
131
  "./case/pascal-case": {
209
- "require": {
210
- "types": "./dist/case/pascal-case.d.cts",
211
- "default": "./dist/case/pascal-case.cjs"
212
- },
213
- "import": {
214
- "types": "./dist/case/pascal-case.d.mts",
215
- "default": "./dist/case/pascal-case.mjs"
216
- }
132
+ "types": "./dist/case/pascal-case.d.ts",
133
+ "default": "./dist/case/pascal-case.js"
217
134
  },
218
135
  "./align-text": {
219
- "require": {
220
- "types": "./dist/align-text.d.cts",
221
- "default": "./dist/align-text.cjs"
222
- },
223
- "import": {
224
- "types": "./dist/align-text.d.mts",
225
- "default": "./dist/align-text.mjs"
226
- }
136
+ "types": "./dist/align-text.d.ts",
137
+ "default": "./dist/align-text.js"
227
138
  },
228
139
  "./word-wrap": {
229
- "require": {
230
- "types": "./dist/word-wrap.d.cts",
231
- "default": "./dist/word-wrap.cjs"
232
- },
233
- "import": {
234
- "types": "./dist/word-wrap.d.mts",
235
- "default": "./dist/word-wrap.mjs"
236
- }
140
+ "types": "./dist/word-wrap.d.ts",
141
+ "default": "./dist/word-wrap.js"
237
142
  },
238
143
  "./slice": {
239
- "require": {
240
- "types": "./dist/slice.d.cts",
241
- "default": "./dist/slice.cjs"
242
- },
243
- "import": {
244
- "types": "./dist/slice.d.mts",
245
- "default": "./dist/slice.mjs"
246
- }
144
+ "types": "./dist/slice.d.ts",
145
+ "default": "./dist/slice.js"
247
146
  },
248
147
  "./slugify": {
249
- "require": {
250
- "types": "./dist/slugify.d.cts",
251
- "default": "./dist/slugify.cjs"
252
- },
253
- "import": {
254
- "types": "./dist/slugify.d.mts",
255
- "default": "./dist/slugify.mjs"
256
- }
148
+ "types": "./dist/slugify.d.ts",
149
+ "default": "./dist/slugify.js"
257
150
  },
258
151
  "./truncate": {
259
- "require": {
260
- "types": "./dist/truncate.d.cts",
261
- "default": "./dist/truncate.cjs"
262
- },
263
- "import": {
264
- "types": "./dist/truncate.d.mts",
265
- "default": "./dist/truncate.mjs"
266
- }
152
+ "types": "./dist/truncate.d.ts",
153
+ "default": "./dist/truncate.js"
267
154
  },
268
155
  "./get-string-width": {
269
- "require": {
270
- "types": "./dist/get-string-width.d.cts",
271
- "default": "./dist/get-string-width.cjs"
272
- },
273
- "import": {
274
- "types": "./dist/get-string-width.d.mts",
275
- "default": "./dist/get-string-width.mjs"
276
- }
156
+ "types": "./dist/get-string-width.d.ts",
157
+ "default": "./dist/get-string-width.js"
277
158
  },
278
159
  "./get-string-truncated-width": {
279
- "require": {
280
- "types": "./dist/get-string-truncated-width.d.cts",
281
- "default": "./dist/get-string-truncated-width.cjs"
282
- },
283
- "import": {
284
- "types": "./dist/get-string-truncated-width.d.mts",
285
- "default": "./dist/get-string-truncated-width.mjs"
286
- }
160
+ "types": "./dist/get-string-truncated-width.d.ts",
161
+ "default": "./dist/get-string-truncated-width.js"
287
162
  },
288
163
  "./outdent": {
289
- "require": {
290
- "types": "./dist/outdent.d.cts",
291
- "default": "./dist/outdent.cjs"
292
- },
293
- "import": {
294
- "types": "./dist/outdent.d.mts",
295
- "default": "./dist/outdent.mjs"
296
- }
164
+ "types": "./dist/outdent.d.ts",
165
+ "default": "./dist/outdent.js"
297
166
  },
298
167
  "./case/pascal-snake-case": {
299
- "require": {
300
- "types": "./dist/case/pascal-snake-case.d.cts",
301
- "default": "./dist/case/pascal-snake-case.cjs"
302
- },
303
- "import": {
304
- "types": "./dist/case/pascal-snake-case.d.mts",
305
- "default": "./dist/case/pascal-snake-case.mjs"
306
- }
168
+ "types": "./dist/case/pascal-snake-case.d.ts",
169
+ "default": "./dist/case/pascal-snake-case.js"
307
170
  },
308
171
  "./case/path-case": {
309
- "require": {
310
- "types": "./dist/case/path-case.d.cts",
311
- "default": "./dist/case/path-case.cjs"
312
- },
313
- "import": {
314
- "types": "./dist/case/path-case.d.mts",
315
- "default": "./dist/case/path-case.mjs"
316
- }
172
+ "types": "./dist/case/path-case.d.ts",
173
+ "default": "./dist/case/path-case.js"
317
174
  },
318
175
  "./case/sentence-case": {
319
- "require": {
320
- "types": "./dist/case/sentence-case.d.cts",
321
- "default": "./dist/case/sentence-case.cjs"
322
- },
323
- "import": {
324
- "types": "./dist/case/sentence-case.d.mts",
325
- "default": "./dist/case/sentence-case.mjs"
326
- }
176
+ "types": "./dist/case/sentence-case.d.ts",
177
+ "default": "./dist/case/sentence-case.js"
327
178
  },
328
179
  "./case/snake-case": {
329
- "require": {
330
- "types": "./dist/case/snake-case.d.cts",
331
- "default": "./dist/case/snake-case.cjs"
332
- },
333
- "import": {
334
- "types": "./dist/case/snake-case.d.mts",
335
- "default": "./dist/case/snake-case.mjs"
336
- }
180
+ "types": "./dist/case/snake-case.d.ts",
181
+ "default": "./dist/case/snake-case.js"
337
182
  },
338
183
  "./case/split-by-case": {
339
- "require": {
340
- "types": "./dist/case/split-by-case.d.cts",
341
- "default": "./dist/case/split-by-case.cjs"
342
- },
343
- "import": {
344
- "types": "./dist/case/split-by-case.d.mts",
345
- "default": "./dist/case/split-by-case.mjs"
346
- }
184
+ "types": "./dist/case/split-by-case.d.ts",
185
+ "default": "./dist/case/split-by-case.js"
347
186
  },
348
187
  "./case/title-case": {
349
- "require": {
350
- "types": "./dist/case/title-case.d.cts",
351
- "default": "./dist/case/title-case.cjs"
352
- },
353
- "import": {
354
- "types": "./dist/case/title-case.d.mts",
355
- "default": "./dist/case/title-case.mjs"
356
- }
188
+ "types": "./dist/case/title-case.d.ts",
189
+ "default": "./dist/case/title-case.js"
357
190
  },
358
191
  "./case/train-case": {
359
- "require": {
360
- "types": "./dist/case/train-case.d.cts",
361
- "default": "./dist/case/train-case.cjs"
362
- },
363
- "import": {
364
- "types": "./dist/case/train-case.d.mts",
365
- "default": "./dist/case/train-case.mjs"
366
- }
192
+ "types": "./dist/case/train-case.d.ts",
193
+ "default": "./dist/case/train-case.js"
367
194
  },
368
195
  "./case/upper-first": {
369
- "require": {
370
- "types": "./dist/case/upper-first.d.cts",
371
- "default": "./dist/case/upper-first.cjs"
372
- },
373
- "import": {
374
- "types": "./dist/case/upper-first.d.mts",
375
- "default": "./dist/case/upper-first.mjs"
376
- }
196
+ "types": "./dist/case/upper-first.d.ts",
197
+ "default": "./dist/case/upper-first.js"
377
198
  },
378
199
  "./test/utils": {
379
- "require": {
380
- "types": "./dist/test/utils.d.cts",
381
- "default": "./dist/test/utils.cjs"
382
- },
383
- "import": {
384
- "types": "./dist/test/utils.d.mts",
385
- "default": "./dist/test/utils.mjs"
386
- }
200
+ "types": "./dist/test/utils.d.ts",
201
+ "default": "./dist/test/utils.js"
387
202
  },
388
203
  "./test/vitest": {
389
- "require": {
390
- "types": "./dist/test/vitest.d.cts",
391
- "default": "./dist/test/vitest.cjs"
392
- },
393
- "import": {
394
- "types": "./dist/test/vitest.d.mts",
395
- "default": "./dist/test/vitest.mjs"
396
- }
204
+ "types": "./dist/test/vitest.d.ts",
205
+ "default": "./dist/test/vitest.js"
397
206
  },
398
207
  "./utils": {
399
- "require": {
400
- "types": "./dist/utilities.d.cts",
401
- "default": "./dist/utilities.cjs"
402
- },
403
- "import": {
404
- "types": "./dist/utilities.d.mts",
405
- "default": "./dist/utilities.mjs"
406
- }
208
+ "types": "./dist/utilities.d.ts",
209
+ "default": "./dist/utilities.js"
407
210
  },
408
211
  "./closest-string": {
409
- "require": {
410
- "types": "./dist/closest-string.d.cts",
411
- "default": "./dist/closest-string.cjs"
412
- },
413
- "import": {
414
- "types": "./dist/closest-string.d.mts",
415
- "default": "./dist/closest-string.mjs"
416
- }
212
+ "types": "./dist/closest-string.d.ts",
213
+ "default": "./dist/closest-string.js"
417
214
  },
418
215
  "./compare-similarity": {
419
- "require": {
420
- "types": "./dist/compare-similarity.d.cts",
421
- "default": "./dist/compare-similarity.cjs"
422
- },
423
- "import": {
424
- "types": "./dist/compare-similarity.d.mts",
425
- "default": "./dist/compare-similarity.mjs"
426
- }
216
+ "types": "./dist/compare-similarity.d.ts",
217
+ "default": "./dist/compare-similarity.js"
427
218
  },
428
219
  "./word-similarity-sort": {
429
- "require": {
430
- "types": "./dist/word-similarity-sort.d.cts",
431
- "default": "./dist/word-similarity-sort.cjs"
432
- },
433
- "import": {
434
- "types": "./dist/word-similarity-sort.d.mts",
435
- "default": "./dist/word-similarity-sort.mjs"
436
- }
220
+ "types": "./dist/word-similarity-sort.d.ts",
221
+ "default": "./dist/word-similarity-sort.js"
437
222
  },
438
223
  "./package.json": "./package.json"
439
224
  },
440
- "main": "dist/index.cjs",
441
- "module": "dist/index.mjs",
442
- "browser": "./dist/index.mjs",
443
- "types": "dist/index.d.ts",
444
- "typesVersions": {
445
- ">=5.0": {
446
- "native-string-types": [
447
- "./dist/native-string-types.d.ts"
448
- ],
449
- ".": [
450
- "./dist/index.d.ts"
451
- ],
452
- "case": [
453
- "./dist/case/index.d.ts"
454
- ],
455
- "case/camel-case": [
456
- "./dist/case/camel-case.d.ts"
457
- ],
458
- "case/capital-case": [
459
- "./dist/case/capital-case.d.ts"
460
- ],
461
- "case/constant-case": [
462
- "./dist/case/constant-case.d.ts"
463
- ],
464
- "case/dot-case": [
465
- "./dist/case/dot-case.d.ts"
466
- ],
467
- "case/flat-case": [
468
- "./dist/case/flat-case.d.ts"
469
- ],
470
- "case/flip-case": [
471
- "./dist/case/flip-case.d.ts"
472
- ],
473
- "case/identify-case": [
474
- "./dist/case/identify-case.d.ts"
475
- ],
476
- "case/kebab-case": [
477
- "./dist/case/kebab-case.d.ts"
478
- ],
479
- "case/lower-first": [
480
- "./dist/case/lower-first.d.ts"
481
- ],
482
- "case/no-case": [
483
- "./dist/case/no-case.d.ts"
484
- ],
485
- "case/pascal-case": [
486
- "./dist/case/pascal-case.d.ts"
487
- ],
488
- "align-text": [
489
- "./dist/align-text.d.ts"
490
- ],
491
- "word-wrap": [
492
- "./dist/word-wrap.d.ts"
493
- ],
494
- "slice": [
495
- "./dist/slice.d.ts"
496
- ],
497
- "slugify": [
498
- "./dist/slugify.d.ts"
499
- ],
500
- "truncate": [
501
- "./dist/truncate.d.ts"
502
- ],
503
- "get-string-width": [
504
- "./dist/get-string-width.d.ts"
505
- ],
506
- "get-string-truncated-width": [
507
- "./dist/get-string-truncated-width.d.ts"
508
- ],
509
- "outdent": [
510
- "./dist/outdent.d.ts"
511
- ],
512
- "case/pascal-snake-case": [
513
- "./dist/case/pascal-snake-case.d.ts"
514
- ],
515
- "case/path-case": [
516
- "./dist/case/path-case.d.ts"
517
- ],
518
- "case/sentence-case": [
519
- "./dist/case/sentence-case.d.ts"
520
- ],
521
- "case/snake-case": [
522
- "./dist/case/snake-case.d.ts"
523
- ],
524
- "case/split-by-case": [
525
- "./dist/case/split-by-case.d.ts"
526
- ],
527
- "case/title-case": [
528
- "./dist/case/title-case.d.ts"
529
- ],
530
- "case/train-case": [
531
- "./dist/case/train-case.d.ts"
532
- ],
533
- "case/upper-first": [
534
- "./dist/case/upper-first.d.ts"
535
- ],
536
- "test/utils": [
537
- "./dist/test/utils.d.ts"
538
- ],
539
- "test/vitest": [
540
- "./dist/test/vitest.d.ts"
541
- ],
542
- "utils": [
543
- "./dist/utilities.d.ts"
544
- ],
545
- "closest-string": [
546
- "./dist/closest-string.d.ts"
547
- ],
548
- "compare-similarity": [
549
- "./dist/compare-similarity.d.ts"
550
- ],
551
- "word-similarity-sort": [
552
- "./dist/word-similarity-sort.d.ts"
553
- ]
554
- }
555
- },
556
225
  "files": [
557
226
  "dist",
558
227
  "README.md",
559
228
  "CHANGELOG.md"
560
229
  ],
561
230
  "engines": {
562
- "node": ">=18.0.0 <=23.x"
231
+ "node": ">=20.19 <=24.x"
563
232
  },
564
233
  "publishConfig": {
565
234
  "access": "public",
@@ -1,2 +0,0 @@
1
- "use strict";var d=Object.defineProperty;var g=(t,e)=>d(t,"name",{value:e,configurable:!0});Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const h=require("./get-string-width.cjs");var c=Object.defineProperty,a=g((t,e)=>c(t,"name",{value:e,configurable:!0}),"n");const p=a((t,e)=>Math.floor((t-e)/2),"halfDiff"),m=a((t,e)=>t-e,"fullDiff"),S=a((t,e={})=>{const l=e.align??"center";if(l==="left")return t;const o=e.split??`
2
- `,f=e.pad??" ",u=l==="right"?m:p;let s=!1;Array.isArray(t)||(s=!0,t=String(t).split(o));let i,n=0;return t=t.map(r=>(r=String(r),i=h.getStringWidth(r,e.stringWidthOptions),n=Math.max(i,n),{str:r,width:i})).map(r=>Array.from({length:u(n,r.width)+1}).join(f)+r.str),s?t.join(o):t},"alignText");exports.alignText=S;
@@ -1,13 +0,0 @@
1
- import { StringWidthOptions } from './get-string-width.cjs';
2
- import './get-string-truncated-width.cjs';
3
-
4
- type AlignTextOptions = {
5
- align?: "center" | "left" | "right";
6
- pad?: string;
7
- split?: string;
8
- stringWidthOptions?: StringWidthOptions;
9
- };
10
- declare const alignText: (text: string[] | string, options?: AlignTextOptions) => string[] | string;
11
-
12
- export { alignText };
13
- export type { AlignTextOptions };