@visulima/colorize 1.4.23 → 1.4.25

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 (39) hide show
  1. package/CHANGELOG.md +44 -0
  2. package/LICENSE.md +1 -1
  3. package/dist/gradient.cjs +3 -62
  4. package/dist/gradient.d.cts +2 -2
  5. package/dist/gradient.d.mts +2 -2
  6. package/dist/gradient.d.ts +2 -2
  7. package/dist/gradient.mjs +3 -56
  8. package/dist/index.browser.mjs +1 -63
  9. package/dist/index.server.cjs +2 -266
  10. package/dist/index.server.d.cts +72 -71
  11. package/dist/index.server.mjs +1 -63
  12. package/dist/packem_shared/Colorize-Bn8gI3ME.mjs +1 -0
  13. package/dist/packem_shared/Colorize-CfIXnDUD.mjs +2 -0
  14. package/dist/packem_shared/GradientBuilder-C2IS34v_.cjs +1 -0
  15. package/dist/packem_shared/GradientBuilder-I_j6wpvU.mjs +1 -0
  16. package/dist/packem_shared/ansi256To16--f09kvlF.cjs +1 -0
  17. package/dist/packem_shared/ansi256To16-YETEPW8R.mjs +1 -0
  18. package/dist/packem_shared/colorize.server-9hV-s1hY.mjs +2 -0
  19. package/dist/packem_shared/colorize.server-B0BWdm8_.cjs +2 -0
  20. package/dist/packem_shared/convertHexToRgb-BEnfEytq.cjs +1 -0
  21. package/dist/packem_shared/convertHexToRgb-DGcGUKnj.mjs +1 -0
  22. package/dist/template.cjs +2 -158
  23. package/dist/template.d.cts +10 -8
  24. package/dist/template.d.mts +1 -1
  25. package/dist/template.d.ts +10 -8
  26. package/dist/template.mjs +2 -152
  27. package/dist/utils.cjs +1 -13
  28. package/dist/utils.mjs +1 -2
  29. package/package.json +19 -19
  30. package/dist/packem_shared/Colorize-B2nGcFjg.mjs +0 -417
  31. package/dist/packem_shared/Colorize-BihiZiAf.mjs +0 -258
  32. package/dist/packem_shared/GradientBuilder-Cn2sQ1aK.cjs +0 -505
  33. package/dist/packem_shared/GradientBuilder-Dy53F9zB.mjs +0 -501
  34. package/dist/packem_shared/colorize.server-0LnwnixR.cjs +0 -205
  35. package/dist/packem_shared/colorize.server-DSyvWqmN.mjs +0 -203
  36. package/dist/packem_shared/convertHexToRgb-DDy3Eccg.cjs +0 -19
  37. package/dist/packem_shared/convertHexToRgb-DOIRmKxM.mjs +0 -15
  38. package/dist/packem_shared/rgbToAnsi256-Cakhu-n9.cjs +0 -50
  39. package/dist/packem_shared/rgbToAnsi256-DcQVMIqi.mjs +0 -44
package/CHANGELOG.md CHANGED
@@ -1,3 +1,47 @@
1
+ ## @visulima/colorize [1.4.25](https://github.com/visulima/visulima/compare/@visulima/colorize@1.4.24...@visulima/colorize@1.4.25) (2025-10-21)
2
+
3
+ ### Bug Fixes
4
+
5
+ * allow node v25 and updated dev deps ([8158cc5](https://github.com/visulima/visulima/commit/8158cc53ec92bd0331e8c6bd0fcbc8ab61b9320f))
6
+
7
+ ### Miscellaneous Chores
8
+
9
+ * **deps:** update package versions and dependencies ([88d8d32](https://github.com/visulima/visulima/commit/88d8d32c4629a7a06c8770369191da2cc81087cc))
10
+ * update license years and add validation rules ([b97811e](https://github.com/visulima/visulima/commit/b97811ed2d253d908c0d86b4579a0a6bc33673a8))
11
+ * update package dependencies across multiple packages ([17e3f23](https://github.com/visulima/visulima/commit/17e3f2377c8a3f98e2eed2192c5adaf6e32558b5))
12
+
13
+
14
+ ### Dependencies
15
+
16
+ * **@visulima/is-ansi-color-supported:** upgraded to 2.3.1
17
+
18
+ ## @visulima/colorize [1.4.24](https://github.com/visulima/visulima/compare/@visulima/colorize@1.4.23...@visulima/colorize@1.4.24) (2025-10-15)
19
+
20
+ ### Bug Fixes
21
+
22
+ * enhance ESLint configuration and improve code readability ([adc640b](https://github.com/visulima/visulima/commit/adc640b2abddd73a4a961914b1eb44b1c2f07183))
23
+ * update @visulima/packem to 2.0.0-alpha.30 across multiple packages for improved compatibility ([27b346e](https://github.com/visulima/visulima/commit/27b346eaa1c0fb0e420d9a9824482028307f4249))
24
+ * upgrade @visulima/packem to 2.0.0-alpha.29 and refine packem.config.ts settings ([bef233d](https://github.com/visulima/visulima/commit/bef233d98baeee325ccd84ceb9cf6e5bcbd10110))
25
+
26
+ ### Miscellaneous Chores
27
+
28
+ * correct formatting in packem.config.ts for requireCJS settings ([6413894](https://github.com/visulima/visulima/commit/6413894c15554a3415a81b7dfd285ed04b410e3d))
29
+ * **deps:** update build scripts and remove cross-env dependency ([7510e82](https://github.com/visulima/visulima/commit/7510e826b9235a0013fe61c82a7eb333bc4cbb78))
30
+ * refactor ESLint configuration and update dependencies in colorize package ([3e5a30c](https://github.com/visulima/visulima/commit/3e5a30c487cee5bc3f96af9679c285fcab3c1db9))
31
+ * update dependencies and fix linting issues ([0e802fe](https://github.com/visulima/visulima/commit/0e802fe02bb9ed791659cb5f3c77605ae5b42ec8))
32
+ * update dependencies and improve linting commands ([478843d](https://github.com/visulima/visulima/commit/478843d9652962813c4b3fdd1c9ea7e1735376f6))
33
+ * update package dependencies across multiple packages for improved compatibility and performance ([9567591](https://github.com/visulima/visulima/commit/9567591c415da3002f3a4fe08f8caf7ce01ca5f7))
34
+ * update package.json and pnpm-lock.yaml to include publint@0.3.12 and adjust build/test commands to exclude shared-utils ([1f7b3c0](https://github.com/visulima/visulima/commit/1f7b3c0381d77edfeec80ea1bf57b3469e929414))
35
+
36
+ ### Tests
37
+
38
+ * enhance color output in integration tests for colorize package ([e7975f8](https://github.com/visulima/visulima/commit/e7975f8da48e3f006330fb46e095e0c0bcce4476))
39
+
40
+
41
+ ### Dependencies
42
+
43
+ * **@visulima/is-ansi-color-supported:** upgraded to 2.3.0
44
+
1
45
  ## @visulima/colorize [1.4.23](https://github.com/visulima/visulima/compare/@visulima/colorize@1.4.22...@visulima/colorize@1.4.23) (2025-06-04)
2
46
 
3
47
 
package/LICENSE.md CHANGED
@@ -1,6 +1,6 @@
1
1
  MIT License
2
2
 
3
- Copyright (c) 2024 visulima
3
+ Copyright (c) 2025 visulima
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal
package/dist/gradient.cjs CHANGED
@@ -1,62 +1,3 @@
1
- 'use strict';
2
-
3
- Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: 'Module' } });
4
-
5
- const colorize_server = require('./packem_shared/colorize.server-0LnwnixR.cjs');
6
- const GradientBuilder = require('./packem_shared/GradientBuilder-Cn2sQ1aK.cjs');
7
-
8
- var __defProp = Object.defineProperty;
9
- var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
10
- const colorize = new colorize_server.Colorize();
11
- const forbiddenChars = /\s/g;
12
- const gradient = /* @__PURE__ */ __name((stops, options) => {
13
- const { hsvSpin = "short", interpolation = "rgb" } = options ?? {};
14
- let builder = new GradientBuilder.GradientBuilder(colorize, stops);
15
- if (options?.loop) {
16
- builder = builder.loop();
17
- } else if (options?.reverse) {
18
- builder = builder.reverse();
19
- }
20
- return (string_) => {
21
- const colorsCount = Math.max(string_.replaceAll(forbiddenChars, "").length, builder.stops.length);
22
- const colors = interpolation === "rgb" ? builder.rgb(colorsCount) : builder.hsv(colorsCount, hsvSpin);
23
- let result = "";
24
- for (const s of string_) {
25
- if (forbiddenChars.test(s)) {
26
- result += s;
27
- } else {
28
- const color = colors.shift();
29
- result += color(s);
30
- }
31
- }
32
- return result;
33
- };
34
- }, "gradient");
35
- const multilineGradient = /* @__PURE__ */ __name((stops, options) => {
36
- const { hsvSpin = "short", interpolation = "rgb" } = options ?? {};
37
- let builder = new GradientBuilder.GradientBuilder(colorize, stops);
38
- if (options?.loop) {
39
- builder = builder.loop();
40
- } else if (options?.reverse) {
41
- builder = builder.reverse();
42
- }
43
- return (string_) => {
44
- const lines = string_.split("\n");
45
- const colorsCount = Reflect.apply(Math.max, null, [...lines.map((l) => l.length), builder.stops.length]);
46
- const colors = interpolation === "rgb" ? builder.rgb(colorsCount) : builder.hsv(colorsCount, hsvSpin);
47
- const results = [];
48
- for (const line of lines) {
49
- const lineColors = [...colors];
50
- let lineResult = "";
51
- for (const l of line) {
52
- lineResult += forbiddenChars.test(l) ? l : lineColors.shift()(l);
53
- }
54
- results.push(lineResult);
55
- }
56
- return results.join("\n");
57
- };
58
- }, "multilineGradient");
59
-
60
- exports.GradientBuilder = GradientBuilder.GradientBuilder;
61
- exports.gradient = gradient;
62
- exports.multilineGradient = multilineGradient;
1
+ "use strict";var G=Object.defineProperty;var v=(t,r)=>G(t,"name",{value:r,configurable:!0});Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const B=require("./packem_shared/colorize.server-B0BWdm8_.cjs"),g=require("./packem_shared/GradientBuilder-C2IS34v_.cjs");var S=Object.defineProperty,f=v((t,r)=>S(t,"name",{value:r,configurable:!0}),"c");const b=new B.S,p=/\s/g,M=f((t,r)=>{const{hsvSpin:u="short",interpolation:c="rgb"}=r??{};let e=new g.GradientBuilder(b,t);return r?.loop?e=e.loop():r?.reverse&&(e=e.reverse()),s=>{const o=Math.max(s.replaceAll(p,"").length,e.stops.length),a=c==="rgb"?e.rgb(o):e.hsv(o,u);let l="";for(const n of s)if(p.test(n))l+=n;else{const i=a.shift();l+=i(n)}return l}},"gradient"),j=f((t,r)=>{const{hsvSpin:u="short",interpolation:c="rgb"}=r??{};let e=new g.GradientBuilder(b,t);return r?.loop?e=e.loop():r?.reverse&&(e=e.reverse()),s=>{const o=s.split(`
2
+ `),a=Reflect.apply(Math.max,null,[...o.map(i=>i.length),e.stops.length]),l=c==="rgb"?e.rgb(a):e.hsv(a,u),n=[];for(const i of o){const m=[...l];let h="";for(const d of i)h+=p.test(d)?d:m.shift()(d);n.push(h)}return n.join(`
3
+ `)}},"multilineGradient");exports.GradientBuilder=g.GradientBuilder;exports.gradient=M;exports.multilineGradient=j;
@@ -15,12 +15,12 @@ declare const gradient: (stops: (ColorValueHex | CssColorName | RGB | StopInput
15
15
  interpolation?: "hsv" | "rgb";
16
16
  loop?: boolean;
17
17
  reverse?: boolean;
18
- }) => ((string_: string) => string);
18
+ }) => (string_: string) => string;
19
19
  declare const multilineGradient: (stops: (ColorValueHex | CssColorName | RGB | StopInput | [number, number, number])[], options?: {
20
20
  hsvSpin?: "long" | "short";
21
21
  interpolation?: "hsv" | "rgb";
22
22
  loop?: boolean;
23
23
  reverse?: boolean;
24
- }) => ((string_: string) => string);
24
+ }) => (string_: string) => string;
25
25
 
26
26
  export { GradientBuilder, gradient, multilineGradient };
@@ -15,12 +15,12 @@ declare const gradient: (stops: (ColorValueHex | CssColorName | RGB | StopInput
15
15
  interpolation?: "hsv" | "rgb";
16
16
  loop?: boolean;
17
17
  reverse?: boolean;
18
- }) => ((string_: string) => string);
18
+ }) => (string_: string) => string;
19
19
  declare const multilineGradient: (stops: (ColorValueHex | CssColorName | RGB | StopInput | [number, number, number])[], options?: {
20
20
  hsvSpin?: "long" | "short";
21
21
  interpolation?: "hsv" | "rgb";
22
22
  loop?: boolean;
23
23
  reverse?: boolean;
24
- }) => ((string_: string) => string);
24
+ }) => (string_: string) => string;
25
25
 
26
26
  export { GradientBuilder, gradient, multilineGradient };
@@ -15,12 +15,12 @@ declare const gradient: (stops: (ColorValueHex | CssColorName | RGB | StopInput
15
15
  interpolation?: "hsv" | "rgb";
16
16
  loop?: boolean;
17
17
  reverse?: boolean;
18
- }) => ((string_: string) => string);
18
+ }) => (string_: string) => string;
19
19
  declare const multilineGradient: (stops: (ColorValueHex | CssColorName | RGB | StopInput | [number, number, number])[], options?: {
20
20
  hsvSpin?: "long" | "short";
21
21
  interpolation?: "hsv" | "rgb";
22
22
  loop?: boolean;
23
23
  reverse?: boolean;
24
- }) => ((string_: string) => string);
24
+ }) => (string_: string) => string;
25
25
 
26
26
  export { GradientBuilder, gradient, multilineGradient };
package/dist/gradient.mjs CHANGED
@@ -1,56 +1,3 @@
1
- import { C as Colorize } from './packem_shared/colorize.server-DSyvWqmN.mjs';
2
- import { GradientBuilder } from './packem_shared/GradientBuilder-Dy53F9zB.mjs';
3
-
4
- var __defProp = Object.defineProperty;
5
- var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
6
- const colorize = new Colorize();
7
- const forbiddenChars = /\s/g;
8
- const gradient = /* @__PURE__ */ __name((stops, options) => {
9
- const { hsvSpin = "short", interpolation = "rgb" } = options ?? {};
10
- let builder = new GradientBuilder(colorize, stops);
11
- if (options?.loop) {
12
- builder = builder.loop();
13
- } else if (options?.reverse) {
14
- builder = builder.reverse();
15
- }
16
- return (string_) => {
17
- const colorsCount = Math.max(string_.replaceAll(forbiddenChars, "").length, builder.stops.length);
18
- const colors = interpolation === "rgb" ? builder.rgb(colorsCount) : builder.hsv(colorsCount, hsvSpin);
19
- let result = "";
20
- for (const s of string_) {
21
- if (forbiddenChars.test(s)) {
22
- result += s;
23
- } else {
24
- const color = colors.shift();
25
- result += color(s);
26
- }
27
- }
28
- return result;
29
- };
30
- }, "gradient");
31
- const multilineGradient = /* @__PURE__ */ __name((stops, options) => {
32
- const { hsvSpin = "short", interpolation = "rgb" } = options ?? {};
33
- let builder = new GradientBuilder(colorize, stops);
34
- if (options?.loop) {
35
- builder = builder.loop();
36
- } else if (options?.reverse) {
37
- builder = builder.reverse();
38
- }
39
- return (string_) => {
40
- const lines = string_.split("\n");
41
- const colorsCount = Reflect.apply(Math.max, null, [...lines.map((l) => l.length), builder.stops.length]);
42
- const colors = interpolation === "rgb" ? builder.rgb(colorsCount) : builder.hsv(colorsCount, hsvSpin);
43
- const results = [];
44
- for (const line of lines) {
45
- const lineColors = [...colors];
46
- let lineResult = "";
47
- for (const l of line) {
48
- lineResult += forbiddenChars.test(l) ? l : lineColors.shift()(l);
49
- }
50
- results.push(lineResult);
51
- }
52
- return results.join("\n");
53
- };
54
- }, "multilineGradient");
55
-
56
- export { GradientBuilder, gradient, multilineGradient };
1
+ var w=Object.defineProperty;var u=(r,e)=>w(r,"name",{value:e,configurable:!0});import{S as x}from"./packem_shared/colorize.server-9hV-s1hY.mjs";import{GradientBuilder as v}from"./packem_shared/GradientBuilder-I_j6wpvU.mjs";var G=Object.defineProperty,m=u((r,e)=>G(r,"name",{value:e,configurable:!0}),"c");const b=new x,f=/\s/g,M=m((r,e)=>{const{hsvSpin:a="short",interpolation:c="rgb"}=e??{};let t=new v(b,r);return e?.loop?t=t.loop():e?.reverse&&(t=t.reverse()),i=>{const n=Math.max(i.replaceAll(f,"").length,t.stops.length),p=c==="rgb"?t.rgb(n):t.hsv(n,a);let s="";for(const o of i)if(f.test(o))s+=o;else{const l=p.shift();s+=l(o)}return s}},"gradient"),A=m((r,e)=>{const{hsvSpin:a="short",interpolation:c="rgb"}=e??{};let t=new v(b,r);return e?.loop?t=t.loop():e?.reverse&&(t=t.reverse()),i=>{const n=i.split(`
2
+ `),p=Reflect.apply(Math.max,null,[...n.map(l=>l.length),t.stops.length]),s=c==="rgb"?t.rgb(p):t.hsv(p,a),o=[];for(const l of n){const d=[...s];let g="";for(const h of l)g+=f.test(h)?h:d.shift()(h);o.push(g)}return o.join(`
3
+ `)}},"multilineGradient");export{v as GradientBuilder,M as gradient,A as multilineGradient};
@@ -1,63 +1 @@
1
- import WebColorize from './packem_shared/Colorize-B2nGcFjg.mjs';
2
-
3
- const colorize = new WebColorize();
4
- const {
5
- ansi256,
6
- bg,
7
- bgAnsi256,
8
- bgBlack,
9
- bgBlackBright,
10
- bgBlue,
11
- bgBlueBright,
12
- bgCyan,
13
- bgCyanBright,
14
- bgGray,
15
- bgGreen,
16
- bgGreenBright,
17
- bgGrey,
18
- bgHex,
19
- bgMagenta,
20
- bgMagentaBright,
21
- bgRed,
22
- bgRedBright,
23
- bgRgb,
24
- bgWhite,
25
- bgWhiteBright,
26
- bgYellow,
27
- bgYellowBright,
28
- black,
29
- blackBright,
30
- blue,
31
- blueBright,
32
- bold,
33
- cyan,
34
- cyanBright,
35
- dim,
36
- fg,
37
- gray,
38
- green,
39
- greenBright,
40
- grey,
41
- hex,
42
- hidden,
43
- inverse,
44
- italic,
45
- magenta,
46
- magentaBright,
47
- overline,
48
- red,
49
- redBright,
50
- reset,
51
- rgb,
52
- strike,
53
- strikethrough,
54
- strip,
55
- underline,
56
- visible,
57
- white,
58
- whiteBright,
59
- yellow,
60
- yellowBright
61
- } = colorize;
62
-
63
- export { WebColorize as Colorize, ansi256, bg, bgAnsi256, bgBlack, bgBlackBright, bgBlue, bgBlueBright, bgCyan, bgCyanBright, bgGray, bgGreen, bgGreenBright, bgGrey, bgHex, bgMagenta, bgMagentaBright, bgRed, bgRedBright, bgRgb, bgWhite, bgWhiteBright, bgYellow, bgYellowBright, black, blackBright, blue, blueBright, bold, cyan, cyanBright, colorize as default, dim, fg, gray, green, greenBright, grey, hex, hidden, inverse, italic, magenta, magentaBright, overline, red, redBright, reset, rgb, strike, strikethrough, strip, underline, visible, white, whiteBright, yellow, yellowBright };
1
+ import g from"./packem_shared/Colorize-Bn8gI3ME.mjs";const e=new g,{ansi256:i,bg:t,bgAnsi256:b,bgBlack:h,bgBlackBright:a,bgBlue:l,bgBlueBright:n,bgCyan:B,bgCyanBright:o,bgGray:s,bgGreen:d,bgGreenBright:y,bgGrey:c,bgHex:u,bgMagenta:w,bgMagentaBright:k,bgRed:m,bgRedBright:G,bgRgb:f,bgWhite:p,bgWhiteBright:v,bgYellow:x,bgYellowBright:C,black:R,blackBright:M,blue:W,blueBright:Y,bold:z,cyan:A,cyanBright:H,dim:j,fg:q,gray:D,green:E,greenBright:F,grey:I,hex:J,hidden:K,inverse:L,italic:N,magenta:O,magentaBright:P,overline:Q,red:S,redBright:T,reset:U,rgb:V,strike:X,strikethrough:Z,strip:_,underline:$,visible:gg,white:eg,whiteBright:rg,yellow:ig,yellowBright:tg}=e;export{g as Colorize,i as ansi256,t as bg,b as bgAnsi256,h as bgBlack,a as bgBlackBright,l as bgBlue,n as bgBlueBright,B as bgCyan,o as bgCyanBright,s as bgGray,d as bgGreen,y as bgGreenBright,c as bgGrey,u as bgHex,w as bgMagenta,k as bgMagentaBright,m as bgRed,G as bgRedBright,f as bgRgb,p as bgWhite,v as bgWhiteBright,x as bgYellow,C as bgYellowBright,R as black,M as blackBright,W as blue,Y as blueBright,z as bold,A as cyan,H as cyanBright,e as default,j as dim,q as fg,D as gray,E as green,F as greenBright,I as grey,J as hex,K as hidden,L as inverse,N as italic,O as magenta,P as magentaBright,Q as overline,S as red,T as redBright,U as reset,V as rgb,X as strike,Z as strikethrough,_ as strip,$ as underline,gg as visible,eg as white,rg as whiteBright,ig as yellow,tg as yellowBright};
@@ -1,266 +1,2 @@
1
- 'use strict';
2
-
3
- Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: 'Module' } });
4
-
5
- const isAnsiColorSupported = require('@visulima/is-ansi-color-supported');
6
-
7
- var __defProp$6 = Object.defineProperty;
8
- var __name$6 = (target, value) => __defProp$6(target, "name", { value, configurable: true });
9
- function ansiRegex({ onlyFirst = false } = {}) {
10
- const ST = "(?:\\u0007|\\u001B\\u005C|\\u009C)";
11
- const pattern = [
12
- `[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?${ST})`,
13
- "(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"
14
- ].join("|");
15
- return new RegExp(pattern, onlyFirst ? void 0 : "g");
16
- }
17
- __name$6(ansiRegex, "ansiRegex");
18
-
19
- var __defProp$5 = Object.defineProperty;
20
- var __name$5 = (target, value) => __defProp$5(target, "name", { value, configurable: true });
21
- const clamp = /* @__PURE__ */ __name$5((number_, min, max) => min > number_ ? min : number_ > max ? max : number_, "clamp");
22
-
23
- var __defProp$4 = Object.defineProperty;
24
- var __name$4 = (target, value) => __defProp$4(target, "name", { value, configurable: true });
25
- const convertHexToRgb = /* @__PURE__ */ __name$4((hex) => {
26
- let [, color] = /([a-f\d]{3,6})/i.exec(hex) ?? [];
27
- const length_ = color ? color.length : 0;
28
- if (length_ === 3) {
29
- color = color[0] + color[0] + color[1] + color[1] + color[2] + color[2];
30
- } else if (length_ !== 6) {
31
- return [0, 0, 0];
32
- }
33
- const number_ = Number.parseInt(color, 16);
34
- return [number_ >> 16 & 255, number_ >> 8 & 255, number_ & 255];
35
- }, "convertHexToRgb");
36
-
37
- var __defProp$3 = Object.defineProperty;
38
- var __name$3 = (target, value) => __defProp$3(target, "name", { value, configurable: true });
39
- const rgbToAnsi256 = /* @__PURE__ */ __name$3((r, g, b) => {
40
- if (r === g && g === b) {
41
- if (r < 8) {
42
- return 16;
43
- }
44
- if (r > 248) {
45
- return 231;
46
- }
47
- return Math.round((r - 8) / 247 * 24) + 232;
48
- }
49
- return 16 + // r / 255 * 5 => r / 51
50
- 36 * Math.round(r / 51) + 6 * Math.round(g / 51) + Math.round(b / 51);
51
- }, "rgbToAnsi256");
52
- const ansi256To16 = /* @__PURE__ */ __name$3((code) => {
53
- let r;
54
- let g;
55
- let b;
56
- if (code < 8) {
57
- return 30 + code;
58
- }
59
- if (code < 16) {
60
- return 90 + (code - 8);
61
- }
62
- if (code >= 232) {
63
- r = g = b = ((code - 232) * 10 + 8) / 255;
64
- } else {
65
- code -= 16;
66
- const remainder = code % 36;
67
- r = Math.floor(code / 36) / 5;
68
- g = Math.floor(remainder / 6) / 5;
69
- b = remainder % 6 / 5;
70
- }
71
- const value = Math.max(r, g, b) * 2;
72
- if (value === 0) {
73
- return 30;
74
- }
75
- const code16 = 30 + (Math.round(b) << 2 | Math.round(g) << 1 | Math.round(r));
76
- return value === 2 ? code16 + 60 : code16;
77
- }, "ansi256To16");
78
- const rgbToAnsi16 = /* @__PURE__ */ __name$3((r, g, b) => ansi256To16(rgbToAnsi256(r, g, b)), "rgbToAnsi16");
79
-
80
- var __defProp$2 = Object.defineProperty;
81
- var __name$2 = (target, value) => __defProp$2(target, "name", { value, configurable: true });
82
- const closeCode = 39;
83
- const bgCloseCode = 49;
84
- const bgOffset = 10;
85
- const supportedColor = isAnsiColorSupported.isStdoutColorSupported();
86
- const mono = { close: "", open: "" };
87
- const esc = supportedColor > 0 ? (open, close) => {
88
- return { close: "\x1B[" + close + "m", open: "\x1B[" + open + "m" };
89
- } : () => mono;
90
- const createRgbFunction = /* @__PURE__ */ __name$2((function_) => (r, g, b) => function_(rgbToAnsi256(Number(r), Number(g), Number(b))), "createRgbFunction");
91
- const createHexFunction = /* @__PURE__ */ __name$2((function_) => (hex) => {
92
- const [r, g, b] = convertHexToRgb(hex);
93
- return function_(r, g, b);
94
- }, "createHexFunction");
95
- let createAnsi256 = /* @__PURE__ */ __name$2((code) => esc("38;5;" + code, closeCode), "createAnsi256");
96
- let createBgAnsi256 = /* @__PURE__ */ __name$2((code) => esc("48;5;" + code, bgCloseCode), "createBgAnsi256");
97
- let createRgb = /* @__PURE__ */ __name$2((r, g, b) => esc("38;2;" + r + ";" + g + ";" + b, closeCode), "createRgb");
98
- let createBgRgb = /* @__PURE__ */ __name$2((r, g, b) => esc("48;2;" + r + ";" + g + ";" + b, bgCloseCode), "createBgRgb");
99
- if (supportedColor === 1) {
100
- createAnsi256 = /* @__PURE__ */ __name$2((code) => esc(ansi256To16(Number(code)), closeCode), "createAnsi256");
101
- createBgAnsi256 = /* @__PURE__ */ __name$2((code) => esc(ansi256To16(Number(code)) + bgOffset, bgCloseCode), "createBgAnsi256");
102
- createRgb = /* @__PURE__ */ __name$2((r, g, b) => esc(rgbToAnsi16(Number(r), Number(g), Number(b)), closeCode), "createRgb");
103
- createBgRgb = /* @__PURE__ */ __name$2((r, g, b) => esc(rgbToAnsi16(Number(r), Number(g), Number(b)) + bgOffset, bgCloseCode), "createBgRgb");
104
- } else if (supportedColor === 2) {
105
- createRgb = createRgbFunction(createAnsi256);
106
- createBgRgb = createRgbFunction(createBgAnsi256);
107
- }
108
- const baseStyles = {
109
- // 21 isn't widely supported and 22 does the same thing
110
- bold: esc(1, 22),
111
- dim: esc(2, 22),
112
- hidden: esc(8, 28),
113
- inverse: esc(7, 27),
114
- italic: esc(3, 23),
115
- overline: esc(53, 55),
116
- reset: esc(0, 0),
117
- strike: esc(9, 29),
118
- // alias for strikethrough
119
- strikethrough: esc(9, 29),
120
- underline: esc(4, 24),
121
- visible: mono
122
- };
123
- const baseColors = {
124
- bgBlack: esc(40, bgCloseCode),
125
- bgBlackBright: esc(100, bgCloseCode),
126
- bgBlue: esc(44, bgCloseCode),
127
- bgBlueBright: esc(104, bgCloseCode),
128
- bgCyan: esc(46, bgCloseCode),
129
- bgCyanBright: esc(106, bgCloseCode),
130
- bgGray: esc(100, bgCloseCode),
131
- // US spelling alias for bgBlackBright
132
- bgGreen: esc(42, bgCloseCode),
133
- bgGreenBright: esc(102, bgCloseCode),
134
- bgGrey: esc(100, bgCloseCode),
135
- // UK spelling alias for bgBlackBright
136
- bgMagenta: esc(45, bgCloseCode),
137
- bgMagentaBright: esc(105, bgCloseCode),
138
- bgRed: esc(41, bgCloseCode),
139
- bgRedBright: esc(101, bgCloseCode),
140
- bgWhite: esc(47, bgCloseCode),
141
- bgWhiteBright: esc(107, bgCloseCode),
142
- bgYellow: esc(43, bgCloseCode),
143
- bgYellowBright: esc(103, bgCloseCode),
144
- black: esc(30, closeCode),
145
- blackBright: esc(90, closeCode),
146
- blue: esc(34, closeCode),
147
- blueBright: esc(94, closeCode),
148
- cyan: esc(36, closeCode),
149
- cyanBright: esc(96, closeCode),
150
- gray: esc(90, closeCode),
151
- // US spelling alias for blackBright
152
- green: esc(32, closeCode),
153
- greenBright: esc(92, closeCode),
154
- grey: esc(90, closeCode),
155
- // UK spelling alias for blackBright
156
- magenta: esc(35, closeCode),
157
- magentaBright: esc(95, closeCode),
158
- red: esc(31, closeCode),
159
- redBright: esc(91, closeCode),
160
- white: esc(37, closeCode),
161
- whiteBright: esc(97, closeCode),
162
- yellow: esc(33, closeCode),
163
- yellowBright: esc(93, closeCode)
164
- };
165
- const styleMethods = {
166
- bg: /* @__PURE__ */ __name$2((code) => createBgAnsi256(clamp(code, 0, 255)), "bg"),
167
- bgHex: createHexFunction(createBgRgb),
168
- bgRgb: /* @__PURE__ */ __name$2((r, g, b) => createBgRgb(clamp(r, 0, 255), clamp(g, 0, 255), clamp(b, 0, 255)), "bgRgb"),
169
- fg: /* @__PURE__ */ __name$2((code) => createAnsi256(clamp(code, 0, 255)), "fg"),
170
- hex: createHexFunction(createRgb),
171
- rgb: /* @__PURE__ */ __name$2((r, g, b) => createRgb(clamp(r, 0, 255), clamp(g, 0, 255), clamp(b, 0, 255)), "rgb")
172
- };
173
-
174
- var __defProp$1 = Object.defineProperty;
175
- var __name$1 = (target, value) => __defProp$1(target, "name", { value, configurable: true });
176
- const stringReplaceAll = /* @__PURE__ */ __name$1((string_, searchValue, replaceValue) => {
177
- if (searchValue === "") {
178
- return string_;
179
- }
180
- let pos = string_.indexOf(searchValue);
181
- if (pos < 0) {
182
- return string_;
183
- }
184
- const substringLength = searchValue.length;
185
- let lastPos = 0;
186
- let result = "";
187
- while (~pos) {
188
- result += string_.slice(lastPos, pos) + replaceValue;
189
- lastPos = pos + substringLength;
190
- pos = string_.indexOf(searchValue, lastPos);
191
- }
192
- return result + string_.slice(lastPos);
193
- }, "stringReplaceAll");
194
-
195
- var __defProp = Object.defineProperty;
196
- var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
197
- const styles = {};
198
- let stylePrototype = null;
199
- const wrapText = /* @__PURE__ */ __name((strings, values, properties) => {
200
- if (!strings) {
201
- return "";
202
- }
203
- let string = strings.raw == null ? strings + "" : String.raw(strings, ...values);
204
- if (string.includes("\x1B")) {
205
- for (let currentProperties = properties; currentProperties; currentProperties = currentProperties.props) {
206
- string = stringReplaceAll(string, currentProperties.close, currentProperties.open);
207
- }
208
- }
209
- if (string.includes("\n")) {
210
- string = string.replace(/(\r*\n)/g, properties.closeStack + "$1" + properties.openStack);
211
- }
212
- return properties.openStack + string + properties.closeStack;
213
- }, "wrapText");
214
- const createStyle = /* @__PURE__ */ __name(({ props }, { close, open }) => {
215
- const openStack = (props?.openStack ?? "") + open;
216
- const closeStack = close + (props?.closeStack ?? "");
217
- const style = /* @__PURE__ */ __name((strings, ...values) => wrapText(strings, values, style.props), "style");
218
- Object.setPrototypeOf(style, stylePrototype);
219
- style.props = { close, closeStack, open, openStack, props };
220
- style.open = openStack;
221
- style.close = closeStack;
222
- return style;
223
- }, "createStyle");
224
- const Colorize$1 = /* @__PURE__ */ __name(function() {
225
- const self = /* @__PURE__ */ __name((string_) => string_ + "", "self");
226
- self.strip = (value) => value.replaceAll(ansiRegex(), "");
227
- for (const name in baseColors) {
228
- styles[name] = {
229
- get() {
230
- const style = createStyle(this, baseColors[name]);
231
- Object.defineProperty(this, name, { value: style });
232
- return style;
233
- }
234
- };
235
- }
236
- for (const name in baseStyles) {
237
- styles[name] = {
238
- get() {
239
- const style = createStyle(this, baseStyles[name]);
240
- Object.defineProperty(this, name, { value: style });
241
- return style;
242
- }
243
- };
244
- }
245
- stylePrototype = Object.defineProperties({}, styles);
246
- Object.setPrototypeOf(self, stylePrototype);
247
- return self;
248
- }, "Colorize");
249
- for (const name in styleMethods) {
250
- styles[name] = {
251
- get() {
252
- return (...arguments_) => (
253
- // @ts-expect-error: TODO: fix typing of `arguments_`
254
- createStyle(this, styleMethods[name](...arguments_))
255
- );
256
- }
257
- };
258
- }
259
- styles.ansi256 = styles.fg;
260
- styles.bgAnsi256 = styles.bg;
261
-
262
- const colorize = new Colorize$1();
263
- const Colorize = Colorize$1;
264
-
265
- module.exports = colorize;
266
- module.exports.Colorize = Colorize;
1
+ "use strict";var H=Object.defineProperty;var u=(e,r)=>H(e,"name",{value:r,configurable:!0});Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const z=require("@visulima/is-ansi-color-supported");var F=Object.defineProperty,q=u((e,r)=>F(e,"name",{value:r,configurable:!0}),"e$3");function N({onlyFirst:e=!1}={}){const r="(?:\\u001B\\][\\s\\S]*?(?:\\u0007|\\u001B\\u005C|\\u009C))|[\\u001B\\u009B][[\\]()#;?]*(?:\\d{1,4}(?:[;:]\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]";return new RegExp(r,e?void 0:"g")}u(N,"t$1");q(N,"ansiRegex");var W=Object.defineProperty,Y=u((e,r)=>W(e,"name",{value:r,configurable:!0}),"n$1");const g=Y((e,r,n)=>r>e?r:Math.min(e,n),"clamp");var _=Object.defineProperty,D=u((e,r)=>_(e,"name",{value:r,configurable:!0}),"e$2");const E=D(e=>{let[,r]=/([a-f\d]{3,6})/i.exec(e)??[];const n=r?r.length:0;if(n===3)r=r[0]+r[0]+r[1]+r[1]+r[2]+r[2];else if(n!==6)return[0,0,0];const o=Number.parseInt(r,16);return[o>>16&255,o>>8&255,o&255]},"convertHexToRgb");var I=Object.defineProperty,O=u((e,r)=>I(e,"name",{value:r,configurable:!0}),"e$1");const w=O((e,r,n)=>e===r&&r===n?e<8?16:e>248?231:Math.round((e-8)/247*24)+232:16+36*Math.round(e/51)+6*Math.round(r/51)+Math.round(n/51),"rgbToAnsi256"),B=O(e=>{let r,n,o;if(e<8)return 30+e;if(e<16)return 90+(e-8);if(e>=232)r=n=o=((e-232)*10+8)/255;else{e-=16;const f=e%36;r=Math.floor(e/36)/5,n=Math.floor(f/6)/5,o=f%6/5}const c=Math.max(r,n,o)*2;if(c===0)return 30;const l=30+(Math.round(o)<<2|Math.round(n)<<1|Math.round(r));return c===2?l+60:l},"ansi256To16"),x=O((e,r,n)=>B(w(e,r,n)),"rgbToAnsi16");var Z=Object.defineProperty,s=u((e,r)=>Z(e,"name",{value:r,configurable:!0}),"b");const a=39,i=49,M=10,v=z.isStdoutColorSupported(),T={close:"",open:""},t=v>0?(e,r)=>({close:`\x1B[${r}m`,open:`\x1B[${e}m`}):()=>T,R=s(e=>(r,n,o)=>e(w(Number(r),Number(n),Number(o))),"createRgbFunction"),k=s(e=>r=>{const[n,o,c]=E(r);return e(n,o,c)},"createHexFunction");let m=s(e=>t(`38;5;${e}`,a),"createAnsi256"),y=s(e=>t(`48;5;${e}`,i),"createBgAnsi256"),d=s((e,r,n)=>t(`38;2;${e};${r};${n}`,a),"createRgb"),h=s((e,r,n)=>t(`48;2;${e};${r};${n}`,i),"createBgRgb");v===1?(m=s(e=>t(B(Number(e)),a),"createAnsi256"),y=s(e=>t(B(Number(e))+M,i),"createBgAnsi256"),d=s((e,r,n)=>t(x(Number(e),Number(r),Number(n)),a),"createRgb"),h=s((e,r,n)=>t(x(Number(e),Number(r),Number(n))+M,i),"createBgRgb")):v===2&&(d=R(m),h=R(y));const A={bold:t(1,22),dim:t(2,22),hidden:t(8,28),inverse:t(7,27),italic:t(3,23),overline:t(53,55),reset:t(0,0),strike:t(9,29),strikethrough:t(9,29),underline:t(4,24),visible:T},P={bgBlack:t(40,i),bgBlackBright:t(100,i),bgBlue:t(44,i),bgBlueBright:t(104,i),bgCyan:t(46,i),bgCyanBright:t(106,i),bgGray:t(100,i),bgGreen:t(42,i),bgGreenBright:t(102,i),bgGrey:t(100,i),bgMagenta:t(45,i),bgMagentaBright:t(105,i),bgRed:t(41,i),bgRedBright:t(101,i),bgWhite:t(47,i),bgWhiteBright:t(107,i),bgYellow:t(43,i),bgYellowBright:t(103,i),black:t(30,a),blackBright:t(90,a),blue:t(34,a),blueBright:t(94,a),cyan:t(36,a),cyanBright:t(96,a),gray:t(90,a),green:t(32,a),greenBright:t(92,a),grey:t(90,a),magenta:t(35,a),magentaBright:t(95,a),red:t(31,a),redBright:t(91,a),white:t(37,a),whiteBright:t(97,a),yellow:t(33,a),yellowBright:t(93,a)},j={bg:s(e=>y(g(e,0,255)),"bg"),bgHex:k(h),bgRgb:s((e,r,n)=>h(g(e,0,255),g(r,0,255),g(n,0,255)),"bgRgb"),fg:s(e=>m(g(e,0,255)),"fg"),hex:k(d),rgb:s((e,r,n)=>d(g(e,0,255),g(r,0,255),g(n,0,255)),"rgb")};var J=Object.defineProperty,K=u((e,r)=>J(e,"name",{value:r,configurable:!0}),"s");const L=K((e,r,n)=>{if(r==="")return e;let o=e.indexOf(r);if(o<0)return e;const c=r.length;let l=0,f="";for(;~o;)f+=e.slice(l,o)+n,l=o+c,o=e.indexOf(r,l);return f+e.slice(l)},"stringReplaceAll");var Q=Object.defineProperty,p=u((e,r)=>Q(e,"name",{value:r,configurable:!0}),"a");const b={};let $=null;const U=p((e,r,n)=>{if(!e)return"";let o=e.raw==null?`${e}`:String.raw(e,...r);if(o.includes("\x1B"))for(let c=n;c;c=c.props)o=L(o,c.close,c.open);return o.includes(`
2
+ `)&&(o=o.replace(/(\r*\n)/g,`${n.closeStack}$1${n.openStack}`)),n.openStack+o+n.closeStack},"wrapText"),S=p(({props:e},{close:r,open:n})=>{const o=(e?.openStack??"")+n,c=r+(e?.closeStack??""),l=p((f,...G)=>U(f,G,l.props),"style");return Object.setPrototypeOf(l,$),l.props={close:r,closeStack:c,open:n,openStack:o,props:e},l.open=o,l.close=c,l},"createStyle"),C=p(function(){const e=p(r=>`${r}`,"self");e.strip=r=>r.replaceAll(N(),"");for(const r in P)b[r]={get(){const n=S(this,P[r]);return Object.defineProperty(this,r,{value:n}),n}};for(const r in A)b[r]={get(){const n=S(this,A[r]);return Object.defineProperty(this,r,{value:n}),n}};return $=Object.defineProperties({},b),Object.setPrototypeOf(e,$),e},"Colorize");for(const e in j)b[e]={get(){return(...r)=>S(this,j[e](...r))}};b.ansi256=b.fg;b.bgAnsi256=b.bg;const V=new C,X=C;module.exports=V;module.exports.Colorize=X;