@visulima/colorize 1.4.23 → 1.4.24

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 (38) hide show
  1. package/CHANGELOG.md +27 -0
  2. package/dist/gradient.cjs +3 -62
  3. package/dist/gradient.d.cts +2 -2
  4. package/dist/gradient.d.mts +2 -2
  5. package/dist/gradient.d.ts +2 -2
  6. package/dist/gradient.mjs +3 -56
  7. package/dist/index.browser.mjs +1 -63
  8. package/dist/index.server.cjs +2 -266
  9. package/dist/index.server.d.cts +72 -71
  10. package/dist/index.server.mjs +1 -63
  11. package/dist/packem_shared/Colorize-Bn8gI3ME.mjs +1 -0
  12. package/dist/packem_shared/Colorize-CfIXnDUD.mjs +2 -0
  13. package/dist/packem_shared/GradientBuilder-C2IS34v_.cjs +1 -0
  14. package/dist/packem_shared/GradientBuilder-I_j6wpvU.mjs +1 -0
  15. package/dist/packem_shared/ansi256To16--f09kvlF.cjs +1 -0
  16. package/dist/packem_shared/ansi256To16-YETEPW8R.mjs +1 -0
  17. package/dist/packem_shared/colorize.server-9hV-s1hY.mjs +2 -0
  18. package/dist/packem_shared/colorize.server-B0BWdm8_.cjs +2 -0
  19. package/dist/packem_shared/convertHexToRgb-BEnfEytq.cjs +1 -0
  20. package/dist/packem_shared/convertHexToRgb-DGcGUKnj.mjs +1 -0
  21. package/dist/template.cjs +2 -158
  22. package/dist/template.d.cts +10 -8
  23. package/dist/template.d.mts +1 -1
  24. package/dist/template.d.ts +10 -8
  25. package/dist/template.mjs +2 -152
  26. package/dist/utils.cjs +1 -13
  27. package/dist/utils.mjs +1 -2
  28. package/package.json +19 -19
  29. package/dist/packem_shared/Colorize-B2nGcFjg.mjs +0 -417
  30. package/dist/packem_shared/Colorize-BihiZiAf.mjs +0 -258
  31. package/dist/packem_shared/GradientBuilder-Cn2sQ1aK.cjs +0 -505
  32. package/dist/packem_shared/GradientBuilder-Dy53F9zB.mjs +0 -501
  33. package/dist/packem_shared/colorize.server-0LnwnixR.cjs +0 -205
  34. package/dist/packem_shared/colorize.server-DSyvWqmN.mjs +0 -203
  35. package/dist/packem_shared/convertHexToRgb-DDy3Eccg.cjs +0 -19
  36. package/dist/packem_shared/convertHexToRgb-DOIRmKxM.mjs +0 -15
  37. package/dist/packem_shared/rgbToAnsi256-Cakhu-n9.cjs +0 -50
  38. package/dist/packem_shared/rgbToAnsi256-DcQVMIqi.mjs +0 -44
@@ -1,203 +0,0 @@
1
- import { isStdoutColorSupported } from '@visulima/is-ansi-color-supported';
2
- import { convertHexToRgb } from './convertHexToRgb-DOIRmKxM.mjs';
3
- import { rgbToAnsi16, rgbToAnsi256, ansi256To16 } from './rgbToAnsi256-DcQVMIqi.mjs';
4
-
5
- var __defProp$4 = Object.defineProperty;
6
- var __name$4 = (target, value) => __defProp$4(target, "name", { value, configurable: true });
7
- function ansiRegex({ onlyFirst = false } = {}) {
8
- const ST = "(?:\\u0007|\\u001B\\u005C|\\u009C)";
9
- const pattern = [
10
- `[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?${ST})`,
11
- "(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"
12
- ].join("|");
13
- return new RegExp(pattern, onlyFirst ? void 0 : "g");
14
- }
15
- __name$4(ansiRegex, "ansiRegex");
16
-
17
- var __defProp$3 = Object.defineProperty;
18
- var __name$3 = (target, value) => __defProp$3(target, "name", { value, configurable: true });
19
- const clamp = /* @__PURE__ */ __name$3((number_, min, max) => min > number_ ? min : number_ > max ? max : number_, "clamp");
20
-
21
- var __defProp$2 = Object.defineProperty;
22
- var __name$2 = (target, value) => __defProp$2(target, "name", { value, configurable: true });
23
- const closeCode = 39;
24
- const bgCloseCode = 49;
25
- const bgOffset = 10;
26
- const supportedColor = isStdoutColorSupported();
27
- const mono = { close: "", open: "" };
28
- const esc = supportedColor > 0 ? (open, close) => {
29
- return { close: "\x1B[" + close + "m", open: "\x1B[" + open + "m" };
30
- } : () => mono;
31
- const createRgbFunction = /* @__PURE__ */ __name$2((function_) => (r, g, b) => function_(rgbToAnsi256(Number(r), Number(g), Number(b))), "createRgbFunction");
32
- const createHexFunction = /* @__PURE__ */ __name$2((function_) => (hex) => {
33
- const [r, g, b] = convertHexToRgb(hex);
34
- return function_(r, g, b);
35
- }, "createHexFunction");
36
- let createAnsi256 = /* @__PURE__ */ __name$2((code) => esc("38;5;" + code, closeCode), "createAnsi256");
37
- let createBgAnsi256 = /* @__PURE__ */ __name$2((code) => esc("48;5;" + code, bgCloseCode), "createBgAnsi256");
38
- let createRgb = /* @__PURE__ */ __name$2((r, g, b) => esc("38;2;" + r + ";" + g + ";" + b, closeCode), "createRgb");
39
- let createBgRgb = /* @__PURE__ */ __name$2((r, g, b) => esc("48;2;" + r + ";" + g + ";" + b, bgCloseCode), "createBgRgb");
40
- if (supportedColor === 1) {
41
- createAnsi256 = /* @__PURE__ */ __name$2((code) => esc(ansi256To16(Number(code)), closeCode), "createAnsi256");
42
- createBgAnsi256 = /* @__PURE__ */ __name$2((code) => esc(ansi256To16(Number(code)) + bgOffset, bgCloseCode), "createBgAnsi256");
43
- createRgb = /* @__PURE__ */ __name$2((r, g, b) => esc(rgbToAnsi16(Number(r), Number(g), Number(b)), closeCode), "createRgb");
44
- createBgRgb = /* @__PURE__ */ __name$2((r, g, b) => esc(rgbToAnsi16(Number(r), Number(g), Number(b)) + bgOffset, bgCloseCode), "createBgRgb");
45
- } else if (supportedColor === 2) {
46
- createRgb = createRgbFunction(createAnsi256);
47
- createBgRgb = createRgbFunction(createBgAnsi256);
48
- }
49
- const baseStyles = {
50
- // 21 isn't widely supported and 22 does the same thing
51
- bold: esc(1, 22),
52
- dim: esc(2, 22),
53
- hidden: esc(8, 28),
54
- inverse: esc(7, 27),
55
- italic: esc(3, 23),
56
- overline: esc(53, 55),
57
- reset: esc(0, 0),
58
- strike: esc(9, 29),
59
- // alias for strikethrough
60
- strikethrough: esc(9, 29),
61
- underline: esc(4, 24),
62
- visible: mono
63
- };
64
- const baseColors = {
65
- bgBlack: esc(40, bgCloseCode),
66
- bgBlackBright: esc(100, bgCloseCode),
67
- bgBlue: esc(44, bgCloseCode),
68
- bgBlueBright: esc(104, bgCloseCode),
69
- bgCyan: esc(46, bgCloseCode),
70
- bgCyanBright: esc(106, bgCloseCode),
71
- bgGray: esc(100, bgCloseCode),
72
- // US spelling alias for bgBlackBright
73
- bgGreen: esc(42, bgCloseCode),
74
- bgGreenBright: esc(102, bgCloseCode),
75
- bgGrey: esc(100, bgCloseCode),
76
- // UK spelling alias for bgBlackBright
77
- bgMagenta: esc(45, bgCloseCode),
78
- bgMagentaBright: esc(105, bgCloseCode),
79
- bgRed: esc(41, bgCloseCode),
80
- bgRedBright: esc(101, bgCloseCode),
81
- bgWhite: esc(47, bgCloseCode),
82
- bgWhiteBright: esc(107, bgCloseCode),
83
- bgYellow: esc(43, bgCloseCode),
84
- bgYellowBright: esc(103, bgCloseCode),
85
- black: esc(30, closeCode),
86
- blackBright: esc(90, closeCode),
87
- blue: esc(34, closeCode),
88
- blueBright: esc(94, closeCode),
89
- cyan: esc(36, closeCode),
90
- cyanBright: esc(96, closeCode),
91
- gray: esc(90, closeCode),
92
- // US spelling alias for blackBright
93
- green: esc(32, closeCode),
94
- greenBright: esc(92, closeCode),
95
- grey: esc(90, closeCode),
96
- // UK spelling alias for blackBright
97
- magenta: esc(35, closeCode),
98
- magentaBright: esc(95, closeCode),
99
- red: esc(31, closeCode),
100
- redBright: esc(91, closeCode),
101
- white: esc(37, closeCode),
102
- whiteBright: esc(97, closeCode),
103
- yellow: esc(33, closeCode),
104
- yellowBright: esc(93, closeCode)
105
- };
106
- const styleMethods = {
107
- bg: /* @__PURE__ */ __name$2((code) => createBgAnsi256(clamp(code, 0, 255)), "bg"),
108
- bgHex: createHexFunction(createBgRgb),
109
- bgRgb: /* @__PURE__ */ __name$2((r, g, b) => createBgRgb(clamp(r, 0, 255), clamp(g, 0, 255), clamp(b, 0, 255)), "bgRgb"),
110
- fg: /* @__PURE__ */ __name$2((code) => createAnsi256(clamp(code, 0, 255)), "fg"),
111
- hex: createHexFunction(createRgb),
112
- rgb: /* @__PURE__ */ __name$2((r, g, b) => createRgb(clamp(r, 0, 255), clamp(g, 0, 255), clamp(b, 0, 255)), "rgb")
113
- };
114
-
115
- var __defProp$1 = Object.defineProperty;
116
- var __name$1 = (target, value) => __defProp$1(target, "name", { value, configurable: true });
117
- const stringReplaceAll = /* @__PURE__ */ __name$1((string_, searchValue, replaceValue) => {
118
- if (searchValue === "") {
119
- return string_;
120
- }
121
- let pos = string_.indexOf(searchValue);
122
- if (pos < 0) {
123
- return string_;
124
- }
125
- const substringLength = searchValue.length;
126
- let lastPos = 0;
127
- let result = "";
128
- while (~pos) {
129
- result += string_.slice(lastPos, pos) + replaceValue;
130
- lastPos = pos + substringLength;
131
- pos = string_.indexOf(searchValue, lastPos);
132
- }
133
- return result + string_.slice(lastPos);
134
- }, "stringReplaceAll");
135
-
136
- var __defProp = Object.defineProperty;
137
- var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
138
- const styles = {};
139
- let stylePrototype = null;
140
- const wrapText = /* @__PURE__ */ __name((strings, values, properties) => {
141
- if (!strings) {
142
- return "";
143
- }
144
- let string = strings.raw == null ? strings + "" : String.raw(strings, ...values);
145
- if (string.includes("\x1B")) {
146
- for (let currentProperties = properties; currentProperties; currentProperties = currentProperties.props) {
147
- string = stringReplaceAll(string, currentProperties.close, currentProperties.open);
148
- }
149
- }
150
- if (string.includes("\n")) {
151
- string = string.replace(/(\r*\n)/g, properties.closeStack + "$1" + properties.openStack);
152
- }
153
- return properties.openStack + string + properties.closeStack;
154
- }, "wrapText");
155
- const createStyle = /* @__PURE__ */ __name(({ props }, { close, open }) => {
156
- const openStack = (props?.openStack ?? "") + open;
157
- const closeStack = close + (props?.closeStack ?? "");
158
- const style = /* @__PURE__ */ __name((strings, ...values) => wrapText(strings, values, style.props), "style");
159
- Object.setPrototypeOf(style, stylePrototype);
160
- style.props = { close, closeStack, open, openStack, props };
161
- style.open = openStack;
162
- style.close = closeStack;
163
- return style;
164
- }, "createStyle");
165
- const Colorize = /* @__PURE__ */ __name(function() {
166
- const self = /* @__PURE__ */ __name((string_) => string_ + "", "self");
167
- self.strip = (value) => value.replaceAll(ansiRegex(), "");
168
- for (const name in baseColors) {
169
- styles[name] = {
170
- get() {
171
- const style = createStyle(this, baseColors[name]);
172
- Object.defineProperty(this, name, { value: style });
173
- return style;
174
- }
175
- };
176
- }
177
- for (const name in baseStyles) {
178
- styles[name] = {
179
- get() {
180
- const style = createStyle(this, baseStyles[name]);
181
- Object.defineProperty(this, name, { value: style });
182
- return style;
183
- }
184
- };
185
- }
186
- stylePrototype = Object.defineProperties({}, styles);
187
- Object.setPrototypeOf(self, stylePrototype);
188
- return self;
189
- }, "Colorize");
190
- for (const name in styleMethods) {
191
- styles[name] = {
192
- get() {
193
- return (...arguments_) => (
194
- // @ts-expect-error: TODO: fix typing of `arguments_`
195
- createStyle(this, styleMethods[name](...arguments_))
196
- );
197
- }
198
- };
199
- }
200
- styles.ansi256 = styles.fg;
201
- styles.bgAnsi256 = styles.bg;
202
-
203
- export { Colorize as C };
@@ -1,19 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: 'Module' } });
4
-
5
- var __defProp = Object.defineProperty;
6
- var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
7
- const convertHexToRgb = /* @__PURE__ */ __name((hex) => {
8
- let [, color] = /([a-f\d]{3,6})/i.exec(hex) ?? [];
9
- const length_ = color ? color.length : 0;
10
- if (length_ === 3) {
11
- color = color[0] + color[0] + color[1] + color[1] + color[2] + color[2];
12
- } else if (length_ !== 6) {
13
- return [0, 0, 0];
14
- }
15
- const number_ = Number.parseInt(color, 16);
16
- return [number_ >> 16 & 255, number_ >> 8 & 255, number_ & 255];
17
- }, "convertHexToRgb");
18
-
19
- exports.convertHexToRgb = convertHexToRgb;
@@ -1,15 +0,0 @@
1
- var __defProp = Object.defineProperty;
2
- var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
- const convertHexToRgb = /* @__PURE__ */ __name((hex) => {
4
- let [, color] = /([a-f\d]{3,6})/i.exec(hex) ?? [];
5
- const length_ = color ? color.length : 0;
6
- if (length_ === 3) {
7
- color = color[0] + color[0] + color[1] + color[1] + color[2] + color[2];
8
- } else if (length_ !== 6) {
9
- return [0, 0, 0];
10
- }
11
- const number_ = Number.parseInt(color, 16);
12
- return [number_ >> 16 & 255, number_ >> 8 & 255, number_ & 255];
13
- }, "convertHexToRgb");
14
-
15
- export { convertHexToRgb };
@@ -1,50 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: 'Module' } });
4
-
5
- var __defProp = Object.defineProperty;
6
- var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
7
- const rgbToAnsi256 = /* @__PURE__ */ __name((r, g, b) => {
8
- if (r === g && g === b) {
9
- if (r < 8) {
10
- return 16;
11
- }
12
- if (r > 248) {
13
- return 231;
14
- }
15
- return Math.round((r - 8) / 247 * 24) + 232;
16
- }
17
- return 16 + // r / 255 * 5 => r / 51
18
- 36 * Math.round(r / 51) + 6 * Math.round(g / 51) + Math.round(b / 51);
19
- }, "rgbToAnsi256");
20
- const ansi256To16 = /* @__PURE__ */ __name((code) => {
21
- let r;
22
- let g;
23
- let b;
24
- if (code < 8) {
25
- return 30 + code;
26
- }
27
- if (code < 16) {
28
- return 90 + (code - 8);
29
- }
30
- if (code >= 232) {
31
- r = g = b = ((code - 232) * 10 + 8) / 255;
32
- } else {
33
- code -= 16;
34
- const remainder = code % 36;
35
- r = Math.floor(code / 36) / 5;
36
- g = Math.floor(remainder / 6) / 5;
37
- b = remainder % 6 / 5;
38
- }
39
- const value = Math.max(r, g, b) * 2;
40
- if (value === 0) {
41
- return 30;
42
- }
43
- const code16 = 30 + (Math.round(b) << 2 | Math.round(g) << 1 | Math.round(r));
44
- return value === 2 ? code16 + 60 : code16;
45
- }, "ansi256To16");
46
- const rgbToAnsi16 = /* @__PURE__ */ __name((r, g, b) => ansi256To16(rgbToAnsi256(r, g, b)), "rgbToAnsi16");
47
-
48
- exports.ansi256To16 = ansi256To16;
49
- exports.rgbToAnsi16 = rgbToAnsi16;
50
- exports.rgbToAnsi256 = rgbToAnsi256;
@@ -1,44 +0,0 @@
1
- var __defProp = Object.defineProperty;
2
- var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
- const rgbToAnsi256 = /* @__PURE__ */ __name((r, g, b) => {
4
- if (r === g && g === b) {
5
- if (r < 8) {
6
- return 16;
7
- }
8
- if (r > 248) {
9
- return 231;
10
- }
11
- return Math.round((r - 8) / 247 * 24) + 232;
12
- }
13
- return 16 + // r / 255 * 5 => r / 51
14
- 36 * Math.round(r / 51) + 6 * Math.round(g / 51) + Math.round(b / 51);
15
- }, "rgbToAnsi256");
16
- const ansi256To16 = /* @__PURE__ */ __name((code) => {
17
- let r;
18
- let g;
19
- let b;
20
- if (code < 8) {
21
- return 30 + code;
22
- }
23
- if (code < 16) {
24
- return 90 + (code - 8);
25
- }
26
- if (code >= 232) {
27
- r = g = b = ((code - 232) * 10 + 8) / 255;
28
- } else {
29
- code -= 16;
30
- const remainder = code % 36;
31
- r = Math.floor(code / 36) / 5;
32
- g = Math.floor(remainder / 6) / 5;
33
- b = remainder % 6 / 5;
34
- }
35
- const value = Math.max(r, g, b) * 2;
36
- if (value === 0) {
37
- return 30;
38
- }
39
- const code16 = 30 + (Math.round(b) << 2 | Math.round(g) << 1 | Math.round(r));
40
- return value === 2 ? code16 + 60 : code16;
41
- }, "ansi256To16");
42
- const rgbToAnsi16 = /* @__PURE__ */ __name((r, g, b) => ansi256To16(rgbToAnsi256(r, g, b)), "rgbToAnsi16");
43
-
44
- export { ansi256To16, rgbToAnsi16, rgbToAnsi256 };