@nsshunt/stsconfig 1.27.39 → 1.27.41

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs ADDED
@@ -0,0 +1,1690 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const node_fs = require("node:fs");
4
+ const dotenv = require("dotenv");
5
+ function getDefaultExportFromCjs(x) {
6
+ return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, "default") ? x["default"] : x;
7
+ }
8
+ var ansiStyles = { exports: {} };
9
+ var colorName;
10
+ var hasRequiredColorName;
11
+ function requireColorName() {
12
+ if (hasRequiredColorName) return colorName;
13
+ hasRequiredColorName = 1;
14
+ colorName = {
15
+ "aliceblue": [240, 248, 255],
16
+ "antiquewhite": [250, 235, 215],
17
+ "aqua": [0, 255, 255],
18
+ "aquamarine": [127, 255, 212],
19
+ "azure": [240, 255, 255],
20
+ "beige": [245, 245, 220],
21
+ "bisque": [255, 228, 196],
22
+ "black": [0, 0, 0],
23
+ "blanchedalmond": [255, 235, 205],
24
+ "blue": [0, 0, 255],
25
+ "blueviolet": [138, 43, 226],
26
+ "brown": [165, 42, 42],
27
+ "burlywood": [222, 184, 135],
28
+ "cadetblue": [95, 158, 160],
29
+ "chartreuse": [127, 255, 0],
30
+ "chocolate": [210, 105, 30],
31
+ "coral": [255, 127, 80],
32
+ "cornflowerblue": [100, 149, 237],
33
+ "cornsilk": [255, 248, 220],
34
+ "crimson": [220, 20, 60],
35
+ "cyan": [0, 255, 255],
36
+ "darkblue": [0, 0, 139],
37
+ "darkcyan": [0, 139, 139],
38
+ "darkgoldenrod": [184, 134, 11],
39
+ "darkgray": [169, 169, 169],
40
+ "darkgreen": [0, 100, 0],
41
+ "darkgrey": [169, 169, 169],
42
+ "darkkhaki": [189, 183, 107],
43
+ "darkmagenta": [139, 0, 139],
44
+ "darkolivegreen": [85, 107, 47],
45
+ "darkorange": [255, 140, 0],
46
+ "darkorchid": [153, 50, 204],
47
+ "darkred": [139, 0, 0],
48
+ "darksalmon": [233, 150, 122],
49
+ "darkseagreen": [143, 188, 143],
50
+ "darkslateblue": [72, 61, 139],
51
+ "darkslategray": [47, 79, 79],
52
+ "darkslategrey": [47, 79, 79],
53
+ "darkturquoise": [0, 206, 209],
54
+ "darkviolet": [148, 0, 211],
55
+ "deeppink": [255, 20, 147],
56
+ "deepskyblue": [0, 191, 255],
57
+ "dimgray": [105, 105, 105],
58
+ "dimgrey": [105, 105, 105],
59
+ "dodgerblue": [30, 144, 255],
60
+ "firebrick": [178, 34, 34],
61
+ "floralwhite": [255, 250, 240],
62
+ "forestgreen": [34, 139, 34],
63
+ "fuchsia": [255, 0, 255],
64
+ "gainsboro": [220, 220, 220],
65
+ "ghostwhite": [248, 248, 255],
66
+ "gold": [255, 215, 0],
67
+ "goldenrod": [218, 165, 32],
68
+ "gray": [128, 128, 128],
69
+ "green": [0, 128, 0],
70
+ "greenyellow": [173, 255, 47],
71
+ "grey": [128, 128, 128],
72
+ "honeydew": [240, 255, 240],
73
+ "hotpink": [255, 105, 180],
74
+ "indianred": [205, 92, 92],
75
+ "indigo": [75, 0, 130],
76
+ "ivory": [255, 255, 240],
77
+ "khaki": [240, 230, 140],
78
+ "lavender": [230, 230, 250],
79
+ "lavenderblush": [255, 240, 245],
80
+ "lawngreen": [124, 252, 0],
81
+ "lemonchiffon": [255, 250, 205],
82
+ "lightblue": [173, 216, 230],
83
+ "lightcoral": [240, 128, 128],
84
+ "lightcyan": [224, 255, 255],
85
+ "lightgoldenrodyellow": [250, 250, 210],
86
+ "lightgray": [211, 211, 211],
87
+ "lightgreen": [144, 238, 144],
88
+ "lightgrey": [211, 211, 211],
89
+ "lightpink": [255, 182, 193],
90
+ "lightsalmon": [255, 160, 122],
91
+ "lightseagreen": [32, 178, 170],
92
+ "lightskyblue": [135, 206, 250],
93
+ "lightslategray": [119, 136, 153],
94
+ "lightslategrey": [119, 136, 153],
95
+ "lightsteelblue": [176, 196, 222],
96
+ "lightyellow": [255, 255, 224],
97
+ "lime": [0, 255, 0],
98
+ "limegreen": [50, 205, 50],
99
+ "linen": [250, 240, 230],
100
+ "magenta": [255, 0, 255],
101
+ "maroon": [128, 0, 0],
102
+ "mediumaquamarine": [102, 205, 170],
103
+ "mediumblue": [0, 0, 205],
104
+ "mediumorchid": [186, 85, 211],
105
+ "mediumpurple": [147, 112, 219],
106
+ "mediumseagreen": [60, 179, 113],
107
+ "mediumslateblue": [123, 104, 238],
108
+ "mediumspringgreen": [0, 250, 154],
109
+ "mediumturquoise": [72, 209, 204],
110
+ "mediumvioletred": [199, 21, 133],
111
+ "midnightblue": [25, 25, 112],
112
+ "mintcream": [245, 255, 250],
113
+ "mistyrose": [255, 228, 225],
114
+ "moccasin": [255, 228, 181],
115
+ "navajowhite": [255, 222, 173],
116
+ "navy": [0, 0, 128],
117
+ "oldlace": [253, 245, 230],
118
+ "olive": [128, 128, 0],
119
+ "olivedrab": [107, 142, 35],
120
+ "orange": [255, 165, 0],
121
+ "orangered": [255, 69, 0],
122
+ "orchid": [218, 112, 214],
123
+ "palegoldenrod": [238, 232, 170],
124
+ "palegreen": [152, 251, 152],
125
+ "paleturquoise": [175, 238, 238],
126
+ "palevioletred": [219, 112, 147],
127
+ "papayawhip": [255, 239, 213],
128
+ "peachpuff": [255, 218, 185],
129
+ "peru": [205, 133, 63],
130
+ "pink": [255, 192, 203],
131
+ "plum": [221, 160, 221],
132
+ "powderblue": [176, 224, 230],
133
+ "purple": [128, 0, 128],
134
+ "rebeccapurple": [102, 51, 153],
135
+ "red": [255, 0, 0],
136
+ "rosybrown": [188, 143, 143],
137
+ "royalblue": [65, 105, 225],
138
+ "saddlebrown": [139, 69, 19],
139
+ "salmon": [250, 128, 114],
140
+ "sandybrown": [244, 164, 96],
141
+ "seagreen": [46, 139, 87],
142
+ "seashell": [255, 245, 238],
143
+ "sienna": [160, 82, 45],
144
+ "silver": [192, 192, 192],
145
+ "skyblue": [135, 206, 235],
146
+ "slateblue": [106, 90, 205],
147
+ "slategray": [112, 128, 144],
148
+ "slategrey": [112, 128, 144],
149
+ "snow": [255, 250, 250],
150
+ "springgreen": [0, 255, 127],
151
+ "steelblue": [70, 130, 180],
152
+ "tan": [210, 180, 140],
153
+ "teal": [0, 128, 128],
154
+ "thistle": [216, 191, 216],
155
+ "tomato": [255, 99, 71],
156
+ "turquoise": [64, 224, 208],
157
+ "violet": [238, 130, 238],
158
+ "wheat": [245, 222, 179],
159
+ "white": [255, 255, 255],
160
+ "whitesmoke": [245, 245, 245],
161
+ "yellow": [255, 255, 0],
162
+ "yellowgreen": [154, 205, 50]
163
+ };
164
+ return colorName;
165
+ }
166
+ var conversions;
167
+ var hasRequiredConversions;
168
+ function requireConversions() {
169
+ if (hasRequiredConversions) return conversions;
170
+ hasRequiredConversions = 1;
171
+ const cssKeywords = requireColorName();
172
+ const reverseKeywords = {};
173
+ for (const key of Object.keys(cssKeywords)) {
174
+ reverseKeywords[cssKeywords[key]] = key;
175
+ }
176
+ const convert = {
177
+ rgb: { channels: 3, labels: "rgb" },
178
+ hsl: { channels: 3, labels: "hsl" },
179
+ hsv: { channels: 3, labels: "hsv" },
180
+ hwb: { channels: 3, labels: "hwb" },
181
+ cmyk: { channels: 4, labels: "cmyk" },
182
+ xyz: { channels: 3, labels: "xyz" },
183
+ lab: { channels: 3, labels: "lab" },
184
+ lch: { channels: 3, labels: "lch" },
185
+ hex: { channels: 1, labels: ["hex"] },
186
+ keyword: { channels: 1, labels: ["keyword"] },
187
+ ansi16: { channels: 1, labels: ["ansi16"] },
188
+ ansi256: { channels: 1, labels: ["ansi256"] },
189
+ hcg: { channels: 3, labels: ["h", "c", "g"] },
190
+ apple: { channels: 3, labels: ["r16", "g16", "b16"] },
191
+ gray: { channels: 1, labels: ["gray"] }
192
+ };
193
+ conversions = convert;
194
+ for (const model of Object.keys(convert)) {
195
+ if (!("channels" in convert[model])) {
196
+ throw new Error("missing channels property: " + model);
197
+ }
198
+ if (!("labels" in convert[model])) {
199
+ throw new Error("missing channel labels property: " + model);
200
+ }
201
+ if (convert[model].labels.length !== convert[model].channels) {
202
+ throw new Error("channel and label counts mismatch: " + model);
203
+ }
204
+ const { channels, labels } = convert[model];
205
+ delete convert[model].channels;
206
+ delete convert[model].labels;
207
+ Object.defineProperty(convert[model], "channels", { value: channels });
208
+ Object.defineProperty(convert[model], "labels", { value: labels });
209
+ }
210
+ convert.rgb.hsl = function(rgb) {
211
+ const r = rgb[0] / 255;
212
+ const g = rgb[1] / 255;
213
+ const b = rgb[2] / 255;
214
+ const min = Math.min(r, g, b);
215
+ const max = Math.max(r, g, b);
216
+ const delta = max - min;
217
+ let h;
218
+ let s;
219
+ if (max === min) {
220
+ h = 0;
221
+ } else if (r === max) {
222
+ h = (g - b) / delta;
223
+ } else if (g === max) {
224
+ h = 2 + (b - r) / delta;
225
+ } else if (b === max) {
226
+ h = 4 + (r - g) / delta;
227
+ }
228
+ h = Math.min(h * 60, 360);
229
+ if (h < 0) {
230
+ h += 360;
231
+ }
232
+ const l = (min + max) / 2;
233
+ if (max === min) {
234
+ s = 0;
235
+ } else if (l <= 0.5) {
236
+ s = delta / (max + min);
237
+ } else {
238
+ s = delta / (2 - max - min);
239
+ }
240
+ return [h, s * 100, l * 100];
241
+ };
242
+ convert.rgb.hsv = function(rgb) {
243
+ let rdif;
244
+ let gdif;
245
+ let bdif;
246
+ let h;
247
+ let s;
248
+ const r = rgb[0] / 255;
249
+ const g = rgb[1] / 255;
250
+ const b = rgb[2] / 255;
251
+ const v = Math.max(r, g, b);
252
+ const diff = v - Math.min(r, g, b);
253
+ const diffc = function(c) {
254
+ return (v - c) / 6 / diff + 1 / 2;
255
+ };
256
+ if (diff === 0) {
257
+ h = 0;
258
+ s = 0;
259
+ } else {
260
+ s = diff / v;
261
+ rdif = diffc(r);
262
+ gdif = diffc(g);
263
+ bdif = diffc(b);
264
+ if (r === v) {
265
+ h = bdif - gdif;
266
+ } else if (g === v) {
267
+ h = 1 / 3 + rdif - bdif;
268
+ } else if (b === v) {
269
+ h = 2 / 3 + gdif - rdif;
270
+ }
271
+ if (h < 0) {
272
+ h += 1;
273
+ } else if (h > 1) {
274
+ h -= 1;
275
+ }
276
+ }
277
+ return [
278
+ h * 360,
279
+ s * 100,
280
+ v * 100
281
+ ];
282
+ };
283
+ convert.rgb.hwb = function(rgb) {
284
+ const r = rgb[0];
285
+ const g = rgb[1];
286
+ let b = rgb[2];
287
+ const h = convert.rgb.hsl(rgb)[0];
288
+ const w = 1 / 255 * Math.min(r, Math.min(g, b));
289
+ b = 1 - 1 / 255 * Math.max(r, Math.max(g, b));
290
+ return [h, w * 100, b * 100];
291
+ };
292
+ convert.rgb.cmyk = function(rgb) {
293
+ const r = rgb[0] / 255;
294
+ const g = rgb[1] / 255;
295
+ const b = rgb[2] / 255;
296
+ const k = Math.min(1 - r, 1 - g, 1 - b);
297
+ const c = (1 - r - k) / (1 - k) || 0;
298
+ const m = (1 - g - k) / (1 - k) || 0;
299
+ const y = (1 - b - k) / (1 - k) || 0;
300
+ return [c * 100, m * 100, y * 100, k * 100];
301
+ };
302
+ function comparativeDistance(x, y) {
303
+ return (x[0] - y[0]) ** 2 + (x[1] - y[1]) ** 2 + (x[2] - y[2]) ** 2;
304
+ }
305
+ convert.rgb.keyword = function(rgb) {
306
+ const reversed = reverseKeywords[rgb];
307
+ if (reversed) {
308
+ return reversed;
309
+ }
310
+ let currentClosestDistance = Infinity;
311
+ let currentClosestKeyword;
312
+ for (const keyword of Object.keys(cssKeywords)) {
313
+ const value = cssKeywords[keyword];
314
+ const distance = comparativeDistance(rgb, value);
315
+ if (distance < currentClosestDistance) {
316
+ currentClosestDistance = distance;
317
+ currentClosestKeyword = keyword;
318
+ }
319
+ }
320
+ return currentClosestKeyword;
321
+ };
322
+ convert.keyword.rgb = function(keyword) {
323
+ return cssKeywords[keyword];
324
+ };
325
+ convert.rgb.xyz = function(rgb) {
326
+ let r = rgb[0] / 255;
327
+ let g = rgb[1] / 255;
328
+ let b = rgb[2] / 255;
329
+ r = r > 0.04045 ? ((r + 0.055) / 1.055) ** 2.4 : r / 12.92;
330
+ g = g > 0.04045 ? ((g + 0.055) / 1.055) ** 2.4 : g / 12.92;
331
+ b = b > 0.04045 ? ((b + 0.055) / 1.055) ** 2.4 : b / 12.92;
332
+ const x = r * 0.4124 + g * 0.3576 + b * 0.1805;
333
+ const y = r * 0.2126 + g * 0.7152 + b * 0.0722;
334
+ const z = r * 0.0193 + g * 0.1192 + b * 0.9505;
335
+ return [x * 100, y * 100, z * 100];
336
+ };
337
+ convert.rgb.lab = function(rgb) {
338
+ const xyz = convert.rgb.xyz(rgb);
339
+ let x = xyz[0];
340
+ let y = xyz[1];
341
+ let z = xyz[2];
342
+ x /= 95.047;
343
+ y /= 100;
344
+ z /= 108.883;
345
+ x = x > 8856e-6 ? x ** (1 / 3) : 7.787 * x + 16 / 116;
346
+ y = y > 8856e-6 ? y ** (1 / 3) : 7.787 * y + 16 / 116;
347
+ z = z > 8856e-6 ? z ** (1 / 3) : 7.787 * z + 16 / 116;
348
+ const l = 116 * y - 16;
349
+ const a = 500 * (x - y);
350
+ const b = 200 * (y - z);
351
+ return [l, a, b];
352
+ };
353
+ convert.hsl.rgb = function(hsl) {
354
+ const h = hsl[0] / 360;
355
+ const s = hsl[1] / 100;
356
+ const l = hsl[2] / 100;
357
+ let t2;
358
+ let t3;
359
+ let val;
360
+ if (s === 0) {
361
+ val = l * 255;
362
+ return [val, val, val];
363
+ }
364
+ if (l < 0.5) {
365
+ t2 = l * (1 + s);
366
+ } else {
367
+ t2 = l + s - l * s;
368
+ }
369
+ const t1 = 2 * l - t2;
370
+ const rgb = [0, 0, 0];
371
+ for (let i = 0; i < 3; i++) {
372
+ t3 = h + 1 / 3 * -(i - 1);
373
+ if (t3 < 0) {
374
+ t3++;
375
+ }
376
+ if (t3 > 1) {
377
+ t3--;
378
+ }
379
+ if (6 * t3 < 1) {
380
+ val = t1 + (t2 - t1) * 6 * t3;
381
+ } else if (2 * t3 < 1) {
382
+ val = t2;
383
+ } else if (3 * t3 < 2) {
384
+ val = t1 + (t2 - t1) * (2 / 3 - t3) * 6;
385
+ } else {
386
+ val = t1;
387
+ }
388
+ rgb[i] = val * 255;
389
+ }
390
+ return rgb;
391
+ };
392
+ convert.hsl.hsv = function(hsl) {
393
+ const h = hsl[0];
394
+ let s = hsl[1] / 100;
395
+ let l = hsl[2] / 100;
396
+ let smin = s;
397
+ const lmin = Math.max(l, 0.01);
398
+ l *= 2;
399
+ s *= l <= 1 ? l : 2 - l;
400
+ smin *= lmin <= 1 ? lmin : 2 - lmin;
401
+ const v = (l + s) / 2;
402
+ const sv = l === 0 ? 2 * smin / (lmin + smin) : 2 * s / (l + s);
403
+ return [h, sv * 100, v * 100];
404
+ };
405
+ convert.hsv.rgb = function(hsv) {
406
+ const h = hsv[0] / 60;
407
+ const s = hsv[1] / 100;
408
+ let v = hsv[2] / 100;
409
+ const hi = Math.floor(h) % 6;
410
+ const f = h - Math.floor(h);
411
+ const p = 255 * v * (1 - s);
412
+ const q = 255 * v * (1 - s * f);
413
+ const t = 255 * v * (1 - s * (1 - f));
414
+ v *= 255;
415
+ switch (hi) {
416
+ case 0:
417
+ return [v, t, p];
418
+ case 1:
419
+ return [q, v, p];
420
+ case 2:
421
+ return [p, v, t];
422
+ case 3:
423
+ return [p, q, v];
424
+ case 4:
425
+ return [t, p, v];
426
+ case 5:
427
+ return [v, p, q];
428
+ }
429
+ };
430
+ convert.hsv.hsl = function(hsv) {
431
+ const h = hsv[0];
432
+ const s = hsv[1] / 100;
433
+ const v = hsv[2] / 100;
434
+ const vmin = Math.max(v, 0.01);
435
+ let sl;
436
+ let l;
437
+ l = (2 - s) * v;
438
+ const lmin = (2 - s) * vmin;
439
+ sl = s * vmin;
440
+ sl /= lmin <= 1 ? lmin : 2 - lmin;
441
+ sl = sl || 0;
442
+ l /= 2;
443
+ return [h, sl * 100, l * 100];
444
+ };
445
+ convert.hwb.rgb = function(hwb) {
446
+ const h = hwb[0] / 360;
447
+ let wh = hwb[1] / 100;
448
+ let bl = hwb[2] / 100;
449
+ const ratio = wh + bl;
450
+ let f;
451
+ if (ratio > 1) {
452
+ wh /= ratio;
453
+ bl /= ratio;
454
+ }
455
+ const i = Math.floor(6 * h);
456
+ const v = 1 - bl;
457
+ f = 6 * h - i;
458
+ if ((i & 1) !== 0) {
459
+ f = 1 - f;
460
+ }
461
+ const n = wh + f * (v - wh);
462
+ let r;
463
+ let g;
464
+ let b;
465
+ switch (i) {
466
+ default:
467
+ case 6:
468
+ case 0:
469
+ r = v;
470
+ g = n;
471
+ b = wh;
472
+ break;
473
+ case 1:
474
+ r = n;
475
+ g = v;
476
+ b = wh;
477
+ break;
478
+ case 2:
479
+ r = wh;
480
+ g = v;
481
+ b = n;
482
+ break;
483
+ case 3:
484
+ r = wh;
485
+ g = n;
486
+ b = v;
487
+ break;
488
+ case 4:
489
+ r = n;
490
+ g = wh;
491
+ b = v;
492
+ break;
493
+ case 5:
494
+ r = v;
495
+ g = wh;
496
+ b = n;
497
+ break;
498
+ }
499
+ return [r * 255, g * 255, b * 255];
500
+ };
501
+ convert.cmyk.rgb = function(cmyk) {
502
+ const c = cmyk[0] / 100;
503
+ const m = cmyk[1] / 100;
504
+ const y = cmyk[2] / 100;
505
+ const k = cmyk[3] / 100;
506
+ const r = 1 - Math.min(1, c * (1 - k) + k);
507
+ const g = 1 - Math.min(1, m * (1 - k) + k);
508
+ const b = 1 - Math.min(1, y * (1 - k) + k);
509
+ return [r * 255, g * 255, b * 255];
510
+ };
511
+ convert.xyz.rgb = function(xyz) {
512
+ const x = xyz[0] / 100;
513
+ const y = xyz[1] / 100;
514
+ const z = xyz[2] / 100;
515
+ let r;
516
+ let g;
517
+ let b;
518
+ r = x * 3.2406 + y * -1.5372 + z * -0.4986;
519
+ g = x * -0.9689 + y * 1.8758 + z * 0.0415;
520
+ b = x * 0.0557 + y * -0.204 + z * 1.057;
521
+ r = r > 31308e-7 ? 1.055 * r ** (1 / 2.4) - 0.055 : r * 12.92;
522
+ g = g > 31308e-7 ? 1.055 * g ** (1 / 2.4) - 0.055 : g * 12.92;
523
+ b = b > 31308e-7 ? 1.055 * b ** (1 / 2.4) - 0.055 : b * 12.92;
524
+ r = Math.min(Math.max(0, r), 1);
525
+ g = Math.min(Math.max(0, g), 1);
526
+ b = Math.min(Math.max(0, b), 1);
527
+ return [r * 255, g * 255, b * 255];
528
+ };
529
+ convert.xyz.lab = function(xyz) {
530
+ let x = xyz[0];
531
+ let y = xyz[1];
532
+ let z = xyz[2];
533
+ x /= 95.047;
534
+ y /= 100;
535
+ z /= 108.883;
536
+ x = x > 8856e-6 ? x ** (1 / 3) : 7.787 * x + 16 / 116;
537
+ y = y > 8856e-6 ? y ** (1 / 3) : 7.787 * y + 16 / 116;
538
+ z = z > 8856e-6 ? z ** (1 / 3) : 7.787 * z + 16 / 116;
539
+ const l = 116 * y - 16;
540
+ const a = 500 * (x - y);
541
+ const b = 200 * (y - z);
542
+ return [l, a, b];
543
+ };
544
+ convert.lab.xyz = function(lab) {
545
+ const l = lab[0];
546
+ const a = lab[1];
547
+ const b = lab[2];
548
+ let x;
549
+ let y;
550
+ let z;
551
+ y = (l + 16) / 116;
552
+ x = a / 500 + y;
553
+ z = y - b / 200;
554
+ const y2 = y ** 3;
555
+ const x2 = x ** 3;
556
+ const z2 = z ** 3;
557
+ y = y2 > 8856e-6 ? y2 : (y - 16 / 116) / 7.787;
558
+ x = x2 > 8856e-6 ? x2 : (x - 16 / 116) / 7.787;
559
+ z = z2 > 8856e-6 ? z2 : (z - 16 / 116) / 7.787;
560
+ x *= 95.047;
561
+ y *= 100;
562
+ z *= 108.883;
563
+ return [x, y, z];
564
+ };
565
+ convert.lab.lch = function(lab) {
566
+ const l = lab[0];
567
+ const a = lab[1];
568
+ const b = lab[2];
569
+ let h;
570
+ const hr = Math.atan2(b, a);
571
+ h = hr * 360 / 2 / Math.PI;
572
+ if (h < 0) {
573
+ h += 360;
574
+ }
575
+ const c = Math.sqrt(a * a + b * b);
576
+ return [l, c, h];
577
+ };
578
+ convert.lch.lab = function(lch) {
579
+ const l = lch[0];
580
+ const c = lch[1];
581
+ const h = lch[2];
582
+ const hr = h / 360 * 2 * Math.PI;
583
+ const a = c * Math.cos(hr);
584
+ const b = c * Math.sin(hr);
585
+ return [l, a, b];
586
+ };
587
+ convert.rgb.ansi16 = function(args, saturation = null) {
588
+ const [r, g, b] = args;
589
+ let value = saturation === null ? convert.rgb.hsv(args)[2] : saturation;
590
+ value = Math.round(value / 50);
591
+ if (value === 0) {
592
+ return 30;
593
+ }
594
+ let ansi = 30 + (Math.round(b / 255) << 2 | Math.round(g / 255) << 1 | Math.round(r / 255));
595
+ if (value === 2) {
596
+ ansi += 60;
597
+ }
598
+ return ansi;
599
+ };
600
+ convert.hsv.ansi16 = function(args) {
601
+ return convert.rgb.ansi16(convert.hsv.rgb(args), args[2]);
602
+ };
603
+ convert.rgb.ansi256 = function(args) {
604
+ const r = args[0];
605
+ const g = args[1];
606
+ const b = args[2];
607
+ if (r === g && g === b) {
608
+ if (r < 8) {
609
+ return 16;
610
+ }
611
+ if (r > 248) {
612
+ return 231;
613
+ }
614
+ return Math.round((r - 8) / 247 * 24) + 232;
615
+ }
616
+ const ansi = 16 + 36 * Math.round(r / 255 * 5) + 6 * Math.round(g / 255 * 5) + Math.round(b / 255 * 5);
617
+ return ansi;
618
+ };
619
+ convert.ansi16.rgb = function(args) {
620
+ let color = args % 10;
621
+ if (color === 0 || color === 7) {
622
+ if (args > 50) {
623
+ color += 3.5;
624
+ }
625
+ color = color / 10.5 * 255;
626
+ return [color, color, color];
627
+ }
628
+ const mult = (~~(args > 50) + 1) * 0.5;
629
+ const r = (color & 1) * mult * 255;
630
+ const g = (color >> 1 & 1) * mult * 255;
631
+ const b = (color >> 2 & 1) * mult * 255;
632
+ return [r, g, b];
633
+ };
634
+ convert.ansi256.rgb = function(args) {
635
+ if (args >= 232) {
636
+ const c = (args - 232) * 10 + 8;
637
+ return [c, c, c];
638
+ }
639
+ args -= 16;
640
+ let rem;
641
+ const r = Math.floor(args / 36) / 5 * 255;
642
+ const g = Math.floor((rem = args % 36) / 6) / 5 * 255;
643
+ const b = rem % 6 / 5 * 255;
644
+ return [r, g, b];
645
+ };
646
+ convert.rgb.hex = function(args) {
647
+ const integer = ((Math.round(args[0]) & 255) << 16) + ((Math.round(args[1]) & 255) << 8) + (Math.round(args[2]) & 255);
648
+ const string = integer.toString(16).toUpperCase();
649
+ return "000000".substring(string.length) + string;
650
+ };
651
+ convert.hex.rgb = function(args) {
652
+ const match = args.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);
653
+ if (!match) {
654
+ return [0, 0, 0];
655
+ }
656
+ let colorString = match[0];
657
+ if (match[0].length === 3) {
658
+ colorString = colorString.split("").map((char) => {
659
+ return char + char;
660
+ }).join("");
661
+ }
662
+ const integer = parseInt(colorString, 16);
663
+ const r = integer >> 16 & 255;
664
+ const g = integer >> 8 & 255;
665
+ const b = integer & 255;
666
+ return [r, g, b];
667
+ };
668
+ convert.rgb.hcg = function(rgb) {
669
+ const r = rgb[0] / 255;
670
+ const g = rgb[1] / 255;
671
+ const b = rgb[2] / 255;
672
+ const max = Math.max(Math.max(r, g), b);
673
+ const min = Math.min(Math.min(r, g), b);
674
+ const chroma = max - min;
675
+ let grayscale;
676
+ let hue;
677
+ if (chroma < 1) {
678
+ grayscale = min / (1 - chroma);
679
+ } else {
680
+ grayscale = 0;
681
+ }
682
+ if (chroma <= 0) {
683
+ hue = 0;
684
+ } else if (max === r) {
685
+ hue = (g - b) / chroma % 6;
686
+ } else if (max === g) {
687
+ hue = 2 + (b - r) / chroma;
688
+ } else {
689
+ hue = 4 + (r - g) / chroma;
690
+ }
691
+ hue /= 6;
692
+ hue %= 1;
693
+ return [hue * 360, chroma * 100, grayscale * 100];
694
+ };
695
+ convert.hsl.hcg = function(hsl) {
696
+ const s = hsl[1] / 100;
697
+ const l = hsl[2] / 100;
698
+ const c = l < 0.5 ? 2 * s * l : 2 * s * (1 - l);
699
+ let f = 0;
700
+ if (c < 1) {
701
+ f = (l - 0.5 * c) / (1 - c);
702
+ }
703
+ return [hsl[0], c * 100, f * 100];
704
+ };
705
+ convert.hsv.hcg = function(hsv) {
706
+ const s = hsv[1] / 100;
707
+ const v = hsv[2] / 100;
708
+ const c = s * v;
709
+ let f = 0;
710
+ if (c < 1) {
711
+ f = (v - c) / (1 - c);
712
+ }
713
+ return [hsv[0], c * 100, f * 100];
714
+ };
715
+ convert.hcg.rgb = function(hcg) {
716
+ const h = hcg[0] / 360;
717
+ const c = hcg[1] / 100;
718
+ const g = hcg[2] / 100;
719
+ if (c === 0) {
720
+ return [g * 255, g * 255, g * 255];
721
+ }
722
+ const pure = [0, 0, 0];
723
+ const hi = h % 1 * 6;
724
+ const v = hi % 1;
725
+ const w = 1 - v;
726
+ let mg = 0;
727
+ switch (Math.floor(hi)) {
728
+ case 0:
729
+ pure[0] = 1;
730
+ pure[1] = v;
731
+ pure[2] = 0;
732
+ break;
733
+ case 1:
734
+ pure[0] = w;
735
+ pure[1] = 1;
736
+ pure[2] = 0;
737
+ break;
738
+ case 2:
739
+ pure[0] = 0;
740
+ pure[1] = 1;
741
+ pure[2] = v;
742
+ break;
743
+ case 3:
744
+ pure[0] = 0;
745
+ pure[1] = w;
746
+ pure[2] = 1;
747
+ break;
748
+ case 4:
749
+ pure[0] = v;
750
+ pure[1] = 0;
751
+ pure[2] = 1;
752
+ break;
753
+ default:
754
+ pure[0] = 1;
755
+ pure[1] = 0;
756
+ pure[2] = w;
757
+ }
758
+ mg = (1 - c) * g;
759
+ return [
760
+ (c * pure[0] + mg) * 255,
761
+ (c * pure[1] + mg) * 255,
762
+ (c * pure[2] + mg) * 255
763
+ ];
764
+ };
765
+ convert.hcg.hsv = function(hcg) {
766
+ const c = hcg[1] / 100;
767
+ const g = hcg[2] / 100;
768
+ const v = c + g * (1 - c);
769
+ let f = 0;
770
+ if (v > 0) {
771
+ f = c / v;
772
+ }
773
+ return [hcg[0], f * 100, v * 100];
774
+ };
775
+ convert.hcg.hsl = function(hcg) {
776
+ const c = hcg[1] / 100;
777
+ const g = hcg[2] / 100;
778
+ const l = g * (1 - c) + 0.5 * c;
779
+ let s = 0;
780
+ if (l > 0 && l < 0.5) {
781
+ s = c / (2 * l);
782
+ } else if (l >= 0.5 && l < 1) {
783
+ s = c / (2 * (1 - l));
784
+ }
785
+ return [hcg[0], s * 100, l * 100];
786
+ };
787
+ convert.hcg.hwb = function(hcg) {
788
+ const c = hcg[1] / 100;
789
+ const g = hcg[2] / 100;
790
+ const v = c + g * (1 - c);
791
+ return [hcg[0], (v - c) * 100, (1 - v) * 100];
792
+ };
793
+ convert.hwb.hcg = function(hwb) {
794
+ const w = hwb[1] / 100;
795
+ const b = hwb[2] / 100;
796
+ const v = 1 - b;
797
+ const c = v - w;
798
+ let g = 0;
799
+ if (c < 1) {
800
+ g = (v - c) / (1 - c);
801
+ }
802
+ return [hwb[0], c * 100, g * 100];
803
+ };
804
+ convert.apple.rgb = function(apple) {
805
+ return [apple[0] / 65535 * 255, apple[1] / 65535 * 255, apple[2] / 65535 * 255];
806
+ };
807
+ convert.rgb.apple = function(rgb) {
808
+ return [rgb[0] / 255 * 65535, rgb[1] / 255 * 65535, rgb[2] / 255 * 65535];
809
+ };
810
+ convert.gray.rgb = function(args) {
811
+ return [args[0] / 100 * 255, args[0] / 100 * 255, args[0] / 100 * 255];
812
+ };
813
+ convert.gray.hsl = function(args) {
814
+ return [0, 0, args[0]];
815
+ };
816
+ convert.gray.hsv = convert.gray.hsl;
817
+ convert.gray.hwb = function(gray) {
818
+ return [0, 100, gray[0]];
819
+ };
820
+ convert.gray.cmyk = function(gray) {
821
+ return [0, 0, 0, gray[0]];
822
+ };
823
+ convert.gray.lab = function(gray) {
824
+ return [gray[0], 0, 0];
825
+ };
826
+ convert.gray.hex = function(gray) {
827
+ const val = Math.round(gray[0] / 100 * 255) & 255;
828
+ const integer = (val << 16) + (val << 8) + val;
829
+ const string = integer.toString(16).toUpperCase();
830
+ return "000000".substring(string.length) + string;
831
+ };
832
+ convert.rgb.gray = function(rgb) {
833
+ const val = (rgb[0] + rgb[1] + rgb[2]) / 3;
834
+ return [val / 255 * 100];
835
+ };
836
+ return conversions;
837
+ }
838
+ var route;
839
+ var hasRequiredRoute;
840
+ function requireRoute() {
841
+ if (hasRequiredRoute) return route;
842
+ hasRequiredRoute = 1;
843
+ const conversions2 = requireConversions();
844
+ function buildGraph() {
845
+ const graph = {};
846
+ const models = Object.keys(conversions2);
847
+ for (let len = models.length, i = 0; i < len; i++) {
848
+ graph[models[i]] = {
849
+ // http://jsperf.com/1-vs-infinity
850
+ // micro-opt, but this is simple.
851
+ distance: -1,
852
+ parent: null
853
+ };
854
+ }
855
+ return graph;
856
+ }
857
+ function deriveBFS(fromModel) {
858
+ const graph = buildGraph();
859
+ const queue = [fromModel];
860
+ graph[fromModel].distance = 0;
861
+ while (queue.length) {
862
+ const current = queue.pop();
863
+ const adjacents = Object.keys(conversions2[current]);
864
+ for (let len = adjacents.length, i = 0; i < len; i++) {
865
+ const adjacent = adjacents[i];
866
+ const node = graph[adjacent];
867
+ if (node.distance === -1) {
868
+ node.distance = graph[current].distance + 1;
869
+ node.parent = current;
870
+ queue.unshift(adjacent);
871
+ }
872
+ }
873
+ }
874
+ return graph;
875
+ }
876
+ function link(from, to) {
877
+ return function(args) {
878
+ return to(from(args));
879
+ };
880
+ }
881
+ function wrapConversion(toModel, graph) {
882
+ const path = [graph[toModel].parent, toModel];
883
+ let fn = conversions2[graph[toModel].parent][toModel];
884
+ let cur = graph[toModel].parent;
885
+ while (graph[cur].parent) {
886
+ path.unshift(graph[cur].parent);
887
+ fn = link(conversions2[graph[cur].parent][cur], fn);
888
+ cur = graph[cur].parent;
889
+ }
890
+ fn.conversion = path;
891
+ return fn;
892
+ }
893
+ route = function(fromModel) {
894
+ const graph = deriveBFS(fromModel);
895
+ const conversion = {};
896
+ const models = Object.keys(graph);
897
+ for (let len = models.length, i = 0; i < len; i++) {
898
+ const toModel = models[i];
899
+ const node = graph[toModel];
900
+ if (node.parent === null) {
901
+ continue;
902
+ }
903
+ conversion[toModel] = wrapConversion(toModel, graph);
904
+ }
905
+ return conversion;
906
+ };
907
+ return route;
908
+ }
909
+ var colorConvert;
910
+ var hasRequiredColorConvert;
911
+ function requireColorConvert() {
912
+ if (hasRequiredColorConvert) return colorConvert;
913
+ hasRequiredColorConvert = 1;
914
+ const conversions2 = requireConversions();
915
+ const route2 = requireRoute();
916
+ const convert = {};
917
+ const models = Object.keys(conversions2);
918
+ function wrapRaw(fn) {
919
+ const wrappedFn = function(...args) {
920
+ const arg0 = args[0];
921
+ if (arg0 === void 0 || arg0 === null) {
922
+ return arg0;
923
+ }
924
+ if (arg0.length > 1) {
925
+ args = arg0;
926
+ }
927
+ return fn(args);
928
+ };
929
+ if ("conversion" in fn) {
930
+ wrappedFn.conversion = fn.conversion;
931
+ }
932
+ return wrappedFn;
933
+ }
934
+ function wrapRounded(fn) {
935
+ const wrappedFn = function(...args) {
936
+ const arg0 = args[0];
937
+ if (arg0 === void 0 || arg0 === null) {
938
+ return arg0;
939
+ }
940
+ if (arg0.length > 1) {
941
+ args = arg0;
942
+ }
943
+ const result = fn(args);
944
+ if (typeof result === "object") {
945
+ for (let len = result.length, i = 0; i < len; i++) {
946
+ result[i] = Math.round(result[i]);
947
+ }
948
+ }
949
+ return result;
950
+ };
951
+ if ("conversion" in fn) {
952
+ wrappedFn.conversion = fn.conversion;
953
+ }
954
+ return wrappedFn;
955
+ }
956
+ models.forEach((fromModel) => {
957
+ convert[fromModel] = {};
958
+ Object.defineProperty(convert[fromModel], "channels", { value: conversions2[fromModel].channels });
959
+ Object.defineProperty(convert[fromModel], "labels", { value: conversions2[fromModel].labels });
960
+ const routes = route2(fromModel);
961
+ const routeModels = Object.keys(routes);
962
+ routeModels.forEach((toModel) => {
963
+ const fn = routes[toModel];
964
+ convert[fromModel][toModel] = wrapRounded(fn);
965
+ convert[fromModel][toModel].raw = wrapRaw(fn);
966
+ });
967
+ });
968
+ colorConvert = convert;
969
+ return colorConvert;
970
+ }
971
+ ansiStyles.exports;
972
+ var hasRequiredAnsiStyles;
973
+ function requireAnsiStyles() {
974
+ if (hasRequiredAnsiStyles) return ansiStyles.exports;
975
+ hasRequiredAnsiStyles = 1;
976
+ (function(module2) {
977
+ const wrapAnsi16 = (fn, offset) => (...args) => {
978
+ const code = fn(...args);
979
+ return `\x1B[${code + offset}m`;
980
+ };
981
+ const wrapAnsi256 = (fn, offset) => (...args) => {
982
+ const code = fn(...args);
983
+ return `\x1B[${38 + offset};5;${code}m`;
984
+ };
985
+ const wrapAnsi16m = (fn, offset) => (...args) => {
986
+ const rgb = fn(...args);
987
+ return `\x1B[${38 + offset};2;${rgb[0]};${rgb[1]};${rgb[2]}m`;
988
+ };
989
+ const ansi2ansi = (n) => n;
990
+ const rgb2rgb = (r, g, b) => [r, g, b];
991
+ const setLazyProperty = (object, property, get) => {
992
+ Object.defineProperty(object, property, {
993
+ get: () => {
994
+ const value = get();
995
+ Object.defineProperty(object, property, {
996
+ value,
997
+ enumerable: true,
998
+ configurable: true
999
+ });
1000
+ return value;
1001
+ },
1002
+ enumerable: true,
1003
+ configurable: true
1004
+ });
1005
+ };
1006
+ let colorConvert2;
1007
+ const makeDynamicStyles = (wrap, targetSpace, identity, isBackground) => {
1008
+ if (colorConvert2 === void 0) {
1009
+ colorConvert2 = requireColorConvert();
1010
+ }
1011
+ const offset = isBackground ? 10 : 0;
1012
+ const styles = {};
1013
+ for (const [sourceSpace, suite] of Object.entries(colorConvert2)) {
1014
+ const name = sourceSpace === "ansi16" ? "ansi" : sourceSpace;
1015
+ if (sourceSpace === targetSpace) {
1016
+ styles[name] = wrap(identity, offset);
1017
+ } else if (typeof suite === "object") {
1018
+ styles[name] = wrap(suite[targetSpace], offset);
1019
+ }
1020
+ }
1021
+ return styles;
1022
+ };
1023
+ function assembleStyles() {
1024
+ const codes = /* @__PURE__ */ new Map();
1025
+ const styles = {
1026
+ modifier: {
1027
+ reset: [0, 0],
1028
+ // 21 isn't widely supported and 22 does the same thing
1029
+ bold: [1, 22],
1030
+ dim: [2, 22],
1031
+ italic: [3, 23],
1032
+ underline: [4, 24],
1033
+ inverse: [7, 27],
1034
+ hidden: [8, 28],
1035
+ strikethrough: [9, 29]
1036
+ },
1037
+ color: {
1038
+ black: [30, 39],
1039
+ red: [31, 39],
1040
+ green: [32, 39],
1041
+ yellow: [33, 39],
1042
+ blue: [34, 39],
1043
+ magenta: [35, 39],
1044
+ cyan: [36, 39],
1045
+ white: [37, 39],
1046
+ // Bright color
1047
+ blackBright: [90, 39],
1048
+ redBright: [91, 39],
1049
+ greenBright: [92, 39],
1050
+ yellowBright: [93, 39],
1051
+ blueBright: [94, 39],
1052
+ magentaBright: [95, 39],
1053
+ cyanBright: [96, 39],
1054
+ whiteBright: [97, 39]
1055
+ },
1056
+ bgColor: {
1057
+ bgBlack: [40, 49],
1058
+ bgRed: [41, 49],
1059
+ bgGreen: [42, 49],
1060
+ bgYellow: [43, 49],
1061
+ bgBlue: [44, 49],
1062
+ bgMagenta: [45, 49],
1063
+ bgCyan: [46, 49],
1064
+ bgWhite: [47, 49],
1065
+ // Bright color
1066
+ bgBlackBright: [100, 49],
1067
+ bgRedBright: [101, 49],
1068
+ bgGreenBright: [102, 49],
1069
+ bgYellowBright: [103, 49],
1070
+ bgBlueBright: [104, 49],
1071
+ bgMagentaBright: [105, 49],
1072
+ bgCyanBright: [106, 49],
1073
+ bgWhiteBright: [107, 49]
1074
+ }
1075
+ };
1076
+ styles.color.gray = styles.color.blackBright;
1077
+ styles.bgColor.bgGray = styles.bgColor.bgBlackBright;
1078
+ styles.color.grey = styles.color.blackBright;
1079
+ styles.bgColor.bgGrey = styles.bgColor.bgBlackBright;
1080
+ for (const [groupName, group] of Object.entries(styles)) {
1081
+ for (const [styleName, style] of Object.entries(group)) {
1082
+ styles[styleName] = {
1083
+ open: `\x1B[${style[0]}m`,
1084
+ close: `\x1B[${style[1]}m`
1085
+ };
1086
+ group[styleName] = styles[styleName];
1087
+ codes.set(style[0], style[1]);
1088
+ }
1089
+ Object.defineProperty(styles, groupName, {
1090
+ value: group,
1091
+ enumerable: false
1092
+ });
1093
+ }
1094
+ Object.defineProperty(styles, "codes", {
1095
+ value: codes,
1096
+ enumerable: false
1097
+ });
1098
+ styles.color.close = "\x1B[39m";
1099
+ styles.bgColor.close = "\x1B[49m";
1100
+ setLazyProperty(styles.color, "ansi", () => makeDynamicStyles(wrapAnsi16, "ansi16", ansi2ansi, false));
1101
+ setLazyProperty(styles.color, "ansi256", () => makeDynamicStyles(wrapAnsi256, "ansi256", ansi2ansi, false));
1102
+ setLazyProperty(styles.color, "ansi16m", () => makeDynamicStyles(wrapAnsi16m, "rgb", rgb2rgb, false));
1103
+ setLazyProperty(styles.bgColor, "ansi", () => makeDynamicStyles(wrapAnsi16, "ansi16", ansi2ansi, true));
1104
+ setLazyProperty(styles.bgColor, "ansi256", () => makeDynamicStyles(wrapAnsi256, "ansi256", ansi2ansi, true));
1105
+ setLazyProperty(styles.bgColor, "ansi16m", () => makeDynamicStyles(wrapAnsi16m, "rgb", rgb2rgb, true));
1106
+ return styles;
1107
+ }
1108
+ Object.defineProperty(module2, "exports", {
1109
+ enumerable: true,
1110
+ get: assembleStyles
1111
+ });
1112
+ })(ansiStyles);
1113
+ return ansiStyles.exports;
1114
+ }
1115
+ var browser;
1116
+ var hasRequiredBrowser;
1117
+ function requireBrowser() {
1118
+ if (hasRequiredBrowser) return browser;
1119
+ hasRequiredBrowser = 1;
1120
+ browser = {
1121
+ stdout: false,
1122
+ stderr: false
1123
+ };
1124
+ return browser;
1125
+ }
1126
+ var util;
1127
+ var hasRequiredUtil;
1128
+ function requireUtil() {
1129
+ if (hasRequiredUtil) return util;
1130
+ hasRequiredUtil = 1;
1131
+ const stringReplaceAll = (string, substring, replacer) => {
1132
+ let index = string.indexOf(substring);
1133
+ if (index === -1) {
1134
+ return string;
1135
+ }
1136
+ const substringLength = substring.length;
1137
+ let endIndex = 0;
1138
+ let returnValue = "";
1139
+ do {
1140
+ returnValue += string.substr(endIndex, index - endIndex) + substring + replacer;
1141
+ endIndex = index + substringLength;
1142
+ index = string.indexOf(substring, endIndex);
1143
+ } while (index !== -1);
1144
+ returnValue += string.substr(endIndex);
1145
+ return returnValue;
1146
+ };
1147
+ const stringEncaseCRLFWithFirstIndex = (string, prefix, postfix, index) => {
1148
+ let endIndex = 0;
1149
+ let returnValue = "";
1150
+ do {
1151
+ const gotCR = string[index - 1] === "\r";
1152
+ returnValue += string.substr(endIndex, (gotCR ? index - 1 : index) - endIndex) + prefix + (gotCR ? "\r\n" : "\n") + postfix;
1153
+ endIndex = index + 1;
1154
+ index = string.indexOf("\n", endIndex);
1155
+ } while (index !== -1);
1156
+ returnValue += string.substr(endIndex);
1157
+ return returnValue;
1158
+ };
1159
+ util = {
1160
+ stringReplaceAll,
1161
+ stringEncaseCRLFWithFirstIndex
1162
+ };
1163
+ return util;
1164
+ }
1165
+ var templates;
1166
+ var hasRequiredTemplates;
1167
+ function requireTemplates() {
1168
+ if (hasRequiredTemplates) return templates;
1169
+ hasRequiredTemplates = 1;
1170
+ const TEMPLATE_REGEX = /(?:\\(u(?:[a-f\d]{4}|\{[a-f\d]{1,6}\})|x[a-f\d]{2}|.))|(?:\{(~)?(\w+(?:\([^)]*\))?(?:\.\w+(?:\([^)]*\))?)*)(?:[ \t]|(?=\r?\n)))|(\})|((?:.|[\r\n\f])+?)/gi;
1171
+ const STYLE_REGEX = /(?:^|\.)(\w+)(?:\(([^)]*)\))?/g;
1172
+ const STRING_REGEX = /^(['"])((?:\\.|(?!\1)[^\\])*)\1$/;
1173
+ const ESCAPE_REGEX = /\\(u(?:[a-f\d]{4}|{[a-f\d]{1,6}})|x[a-f\d]{2}|.)|([^\\])/gi;
1174
+ const ESCAPES = /* @__PURE__ */ new Map([
1175
+ ["n", "\n"],
1176
+ ["r", "\r"],
1177
+ ["t", " "],
1178
+ ["b", "\b"],
1179
+ ["f", "\f"],
1180
+ ["v", "\v"],
1181
+ ["0", "\0"],
1182
+ ["\\", "\\"],
1183
+ ["e", "\x1B"],
1184
+ ["a", "\x07"]
1185
+ ]);
1186
+ function unescape(c) {
1187
+ const u = c[0] === "u";
1188
+ const bracket = c[1] === "{";
1189
+ if (u && !bracket && c.length === 5 || c[0] === "x" && c.length === 3) {
1190
+ return String.fromCharCode(parseInt(c.slice(1), 16));
1191
+ }
1192
+ if (u && bracket) {
1193
+ return String.fromCodePoint(parseInt(c.slice(2, -1), 16));
1194
+ }
1195
+ return ESCAPES.get(c) || c;
1196
+ }
1197
+ function parseArguments(name, arguments_) {
1198
+ const results = [];
1199
+ const chunks = arguments_.trim().split(/\s*,\s*/g);
1200
+ let matches;
1201
+ for (const chunk of chunks) {
1202
+ const number = Number(chunk);
1203
+ if (!Number.isNaN(number)) {
1204
+ results.push(number);
1205
+ } else if (matches = chunk.match(STRING_REGEX)) {
1206
+ results.push(matches[2].replace(ESCAPE_REGEX, (m, escape, character) => escape ? unescape(escape) : character));
1207
+ } else {
1208
+ throw new Error(`Invalid Chalk template style argument: ${chunk} (in style '${name}')`);
1209
+ }
1210
+ }
1211
+ return results;
1212
+ }
1213
+ function parseStyle(style) {
1214
+ STYLE_REGEX.lastIndex = 0;
1215
+ const results = [];
1216
+ let matches;
1217
+ while ((matches = STYLE_REGEX.exec(style)) !== null) {
1218
+ const name = matches[1];
1219
+ if (matches[2]) {
1220
+ const args = parseArguments(name, matches[2]);
1221
+ results.push([name].concat(args));
1222
+ } else {
1223
+ results.push([name]);
1224
+ }
1225
+ }
1226
+ return results;
1227
+ }
1228
+ function buildStyle(chalk2, styles) {
1229
+ const enabled = {};
1230
+ for (const layer of styles) {
1231
+ for (const style of layer.styles) {
1232
+ enabled[style[0]] = layer.inverse ? null : style.slice(1);
1233
+ }
1234
+ }
1235
+ let current = chalk2;
1236
+ for (const [styleName, styles2] of Object.entries(enabled)) {
1237
+ if (!Array.isArray(styles2)) {
1238
+ continue;
1239
+ }
1240
+ if (!(styleName in current)) {
1241
+ throw new Error(`Unknown Chalk style: ${styleName}`);
1242
+ }
1243
+ current = styles2.length > 0 ? current[styleName](...styles2) : current[styleName];
1244
+ }
1245
+ return current;
1246
+ }
1247
+ templates = (chalk2, temporary) => {
1248
+ const styles = [];
1249
+ const chunks = [];
1250
+ let chunk = [];
1251
+ temporary.replace(TEMPLATE_REGEX, (m, escapeCharacter, inverse, style, close, character) => {
1252
+ if (escapeCharacter) {
1253
+ chunk.push(unescape(escapeCharacter));
1254
+ } else if (style) {
1255
+ const string = chunk.join("");
1256
+ chunk = [];
1257
+ chunks.push(styles.length === 0 ? string : buildStyle(chalk2, styles)(string));
1258
+ styles.push({ inverse, styles: parseStyle(style) });
1259
+ } else if (close) {
1260
+ if (styles.length === 0) {
1261
+ throw new Error("Found extraneous } in Chalk template literal");
1262
+ }
1263
+ chunks.push(buildStyle(chalk2, styles)(chunk.join("")));
1264
+ chunk = [];
1265
+ styles.pop();
1266
+ } else {
1267
+ chunk.push(character);
1268
+ }
1269
+ });
1270
+ chunks.push(chunk.join(""));
1271
+ if (styles.length > 0) {
1272
+ const errMessage = `Chalk template literal is missing ${styles.length} closing bracket${styles.length === 1 ? "" : "s"} (\`}\`)`;
1273
+ throw new Error(errMessage);
1274
+ }
1275
+ return chunks.join("");
1276
+ };
1277
+ return templates;
1278
+ }
1279
+ var source;
1280
+ var hasRequiredSource;
1281
+ function requireSource() {
1282
+ if (hasRequiredSource) return source;
1283
+ hasRequiredSource = 1;
1284
+ const ansiStyles2 = requireAnsiStyles();
1285
+ const { stdout: stdoutColor, stderr: stderrColor } = requireBrowser();
1286
+ const {
1287
+ stringReplaceAll,
1288
+ stringEncaseCRLFWithFirstIndex
1289
+ } = requireUtil();
1290
+ const { isArray } = Array;
1291
+ const levelMapping = [
1292
+ "ansi",
1293
+ "ansi",
1294
+ "ansi256",
1295
+ "ansi16m"
1296
+ ];
1297
+ const styles = /* @__PURE__ */ Object.create(null);
1298
+ const applyOptions = (object, options = {}) => {
1299
+ if (options.level && !(Number.isInteger(options.level) && options.level >= 0 && options.level <= 3)) {
1300
+ throw new Error("The `level` option should be an integer from 0 to 3");
1301
+ }
1302
+ const colorLevel = stdoutColor ? stdoutColor.level : 0;
1303
+ object.level = options.level === void 0 ? colorLevel : options.level;
1304
+ };
1305
+ class ChalkClass {
1306
+ constructor(options) {
1307
+ return chalkFactory(options);
1308
+ }
1309
+ }
1310
+ const chalkFactory = (options) => {
1311
+ const chalk3 = {};
1312
+ applyOptions(chalk3, options);
1313
+ chalk3.template = (...arguments_) => chalkTag(chalk3.template, ...arguments_);
1314
+ Object.setPrototypeOf(chalk3, Chalk.prototype);
1315
+ Object.setPrototypeOf(chalk3.template, chalk3);
1316
+ chalk3.template.constructor = () => {
1317
+ throw new Error("`chalk.constructor()` is deprecated. Use `new chalk.Instance()` instead.");
1318
+ };
1319
+ chalk3.template.Instance = ChalkClass;
1320
+ return chalk3.template;
1321
+ };
1322
+ function Chalk(options) {
1323
+ return chalkFactory(options);
1324
+ }
1325
+ for (const [styleName, style] of Object.entries(ansiStyles2)) {
1326
+ styles[styleName] = {
1327
+ get() {
1328
+ const builder = createBuilder(this, createStyler(style.open, style.close, this._styler), this._isEmpty);
1329
+ Object.defineProperty(this, styleName, { value: builder });
1330
+ return builder;
1331
+ }
1332
+ };
1333
+ }
1334
+ styles.visible = {
1335
+ get() {
1336
+ const builder = createBuilder(this, this._styler, true);
1337
+ Object.defineProperty(this, "visible", { value: builder });
1338
+ return builder;
1339
+ }
1340
+ };
1341
+ const usedModels = ["rgb", "hex", "keyword", "hsl", "hsv", "hwb", "ansi", "ansi256"];
1342
+ for (const model of usedModels) {
1343
+ styles[model] = {
1344
+ get() {
1345
+ const { level } = this;
1346
+ return function(...arguments_) {
1347
+ const styler = createStyler(ansiStyles2.color[levelMapping[level]][model](...arguments_), ansiStyles2.color.close, this._styler);
1348
+ return createBuilder(this, styler, this._isEmpty);
1349
+ };
1350
+ }
1351
+ };
1352
+ }
1353
+ for (const model of usedModels) {
1354
+ const bgModel = "bg" + model[0].toUpperCase() + model.slice(1);
1355
+ styles[bgModel] = {
1356
+ get() {
1357
+ const { level } = this;
1358
+ return function(...arguments_) {
1359
+ const styler = createStyler(ansiStyles2.bgColor[levelMapping[level]][model](...arguments_), ansiStyles2.bgColor.close, this._styler);
1360
+ return createBuilder(this, styler, this._isEmpty);
1361
+ };
1362
+ }
1363
+ };
1364
+ }
1365
+ const proto = Object.defineProperties(() => {
1366
+ }, {
1367
+ ...styles,
1368
+ level: {
1369
+ enumerable: true,
1370
+ get() {
1371
+ return this._generator.level;
1372
+ },
1373
+ set(level) {
1374
+ this._generator.level = level;
1375
+ }
1376
+ }
1377
+ });
1378
+ const createStyler = (open, close, parent) => {
1379
+ let openAll;
1380
+ let closeAll;
1381
+ if (parent === void 0) {
1382
+ openAll = open;
1383
+ closeAll = close;
1384
+ } else {
1385
+ openAll = parent.openAll + open;
1386
+ closeAll = close + parent.closeAll;
1387
+ }
1388
+ return {
1389
+ open,
1390
+ close,
1391
+ openAll,
1392
+ closeAll,
1393
+ parent
1394
+ };
1395
+ };
1396
+ const createBuilder = (self, _styler, _isEmpty) => {
1397
+ const builder = (...arguments_) => {
1398
+ if (isArray(arguments_[0]) && isArray(arguments_[0].raw)) {
1399
+ return applyStyle(builder, chalkTag(builder, ...arguments_));
1400
+ }
1401
+ return applyStyle(builder, arguments_.length === 1 ? "" + arguments_[0] : arguments_.join(" "));
1402
+ };
1403
+ Object.setPrototypeOf(builder, proto);
1404
+ builder._generator = self;
1405
+ builder._styler = _styler;
1406
+ builder._isEmpty = _isEmpty;
1407
+ return builder;
1408
+ };
1409
+ const applyStyle = (self, string) => {
1410
+ if (self.level <= 0 || !string) {
1411
+ return self._isEmpty ? "" : string;
1412
+ }
1413
+ let styler = self._styler;
1414
+ if (styler === void 0) {
1415
+ return string;
1416
+ }
1417
+ const { openAll, closeAll } = styler;
1418
+ if (string.indexOf("\x1B") !== -1) {
1419
+ while (styler !== void 0) {
1420
+ string = stringReplaceAll(string, styler.close, styler.open);
1421
+ styler = styler.parent;
1422
+ }
1423
+ }
1424
+ const lfIndex = string.indexOf("\n");
1425
+ if (lfIndex !== -1) {
1426
+ string = stringEncaseCRLFWithFirstIndex(string, closeAll, openAll, lfIndex);
1427
+ }
1428
+ return openAll + string + closeAll;
1429
+ };
1430
+ let template;
1431
+ const chalkTag = (chalk3, ...strings) => {
1432
+ const [firstString] = strings;
1433
+ if (!isArray(firstString) || !isArray(firstString.raw)) {
1434
+ return strings.join(" ");
1435
+ }
1436
+ const arguments_ = strings.slice(1);
1437
+ const parts = [firstString.raw[0]];
1438
+ for (let i = 1; i < firstString.length; i++) {
1439
+ parts.push(
1440
+ String(arguments_[i - 1]).replace(/[{}\\]/g, "\\$&"),
1441
+ String(firstString.raw[i])
1442
+ );
1443
+ }
1444
+ if (template === void 0) {
1445
+ template = requireTemplates();
1446
+ }
1447
+ return template(chalk3, parts.join(""));
1448
+ };
1449
+ Object.defineProperties(Chalk.prototype, styles);
1450
+ const chalk2 = Chalk();
1451
+ chalk2.supportsColor = stdoutColor;
1452
+ chalk2.stderr = Chalk({ level: stderrColor ? stderrColor.level : 0 });
1453
+ chalk2.stderr.supportsColor = stderrColor;
1454
+ source = chalk2;
1455
+ return source;
1456
+ }
1457
+ var sourceExports = requireSource();
1458
+ const chalk = /* @__PURE__ */ getDefaultExportFromCjs(sourceExports);
1459
+ const envOptions = {};
1460
+ function SetupConfig(envOptions2, logger) {
1461
+ const envfile = process.env.STSENVFILE === void 0 ? "/.env" : process.env.STSENVFILE;
1462
+ dotenv.config({ path: envfile });
1463
+ const defconfig = {
1464
+ // Node runtime environment
1465
+ isProduction: process.env.NODE_ENV === void 0 ? false : process.env.NODE_ENV === "production" ? true : false,
1466
+ isTest: process.env.NODE_ENV === void 0 ? false : process.env.NODE_ENV === "test" ? true : false,
1467
+ dbuser: process.env.DB_USER === void 0 ? "postgres" : process.env.DB_USER,
1468
+ dbpassword: process.env.DB_PASSWORD === void 0 ? "postgres" : process.env.DB_PASSWORD,
1469
+ dbpasswordfile: process.env.DB_PASSWORD_FILE,
1470
+ dbhost: process.env.DB_HOST === void 0 ? "localhost:5432" : process.env.DB_HOST,
1471
+ database: process.env.DB_DATABASE === void 0 ? "stsrestmsdb01" : process.env.DB_DATABASE,
1472
+ databaseUrl: process.env.DATABASE_URL,
1473
+ connectionString: "",
1474
+ defaultDatabaseConnectionString: "",
1475
+ STSServerType: process.env.STS_SERVER_TYPE === void 0 ? "EXPRESS_TLS" : process.env.STS_SERVER_TYPE,
1476
+ logToFile: process.env.LOG_TO_FILE === void 0 ? false : process.env.LOG_TO_FILE === "true" ? true : false,
1477
+ logFilePath: process.env.LOG_FILE_PATH === void 0 ? "/var/lib/sts" : process.env.LOG_FILE_PATH,
1478
+ logFileFormat: process.env.LOG_FILE_FORMAT === void 0 ? "csv" : process.env.LOG_FILE_FORMAT,
1479
+ poolSize: process.env.POOL_SIZE === void 0 ? 500 : parseInt(process.env.POOL_SIZE),
1480
+ useCPUs: process.env.MAX_CPU === void 0 ? -1 : parseFloat(process.env.MAX_CPU),
1481
+ respawnOnFail: process.env.RESPAWN === void 0 ? true : process.env.RESPAWN === "true" ? true : false,
1482
+ defaultDatabaseEntries: process.env.DEFAULT_DB_ENTRIES === void 0 ? 1e4 : parseInt(process.env.DEFAULT_DB_ENTRIES),
1483
+ useRedisDatabaseCache: process.env.USE_REDIS_DATABASE_CACHE === void 0 ? false : process.env.USE_REDIS_DATABASE_CACHE === "true" ? true : false,
1484
+ useSocketIoRedisAdaptor: process.env.USE_SOCKET_IO_REDIS_ADAPTOR === void 0 ? false : process.env.USE_SOCKET_IO_REDIS_ADAPTOR === "true" ? true : false,
1485
+ socketIoRedisAdaptorUrl: process.env.SOCKET_IO_REDIS_ADAPTOR_URL === void 0 ? "redis://localhost:6379" : process.env.SOCKET_IO_REDIS_ADAPTOR_URL,
1486
+ useRedisInstrumentationTransport: process.env.USE_REDIS_INSTRUMENTATION_TRANSPORT === void 0 ? false : process.env.USE_REDIS_INSTRUMENTATION_TRANSPORT === "true" ? true : false,
1487
+ redisInstrumentationTransportUrl: process.env.REDIS_INSTRUMENTATION_TRANSPORT_URL === void 0 ? "redis://localhost:6379" : process.env.REDIS_INSTRUMENTATION_TRANSPORT_URL,
1488
+ redisDatabaseCacheEndFlush: process.env.REDIS_DATABASE_CACHE_END_FLUSH === void 0 ? false : process.env.REDIS_DATABASE_CACHE_END_FLUSH === "true" ? true : false,
1489
+ redisDatabaseCacheUrl: process.env.REDIS_DATABASE_CACHE_URL === void 0 ? "redis://localhost:6379" : process.env.REDIS_DATABASE_CACHE_URL,
1490
+ defaultDatabaseMinExtraDataSize: process.env.DEFAULT_DATABASE_MIN_EXTRA_DATA_SIZE === void 0 ? 0 : parseInt(process.env.DEFAULT_DATABASE_MIN_EXTRA_DATA_SIZE),
1491
+ defaultDatabaseMaxExtraDataSize: process.env.DEFAULT_DATABASE_MAX_EXTRA_DATA_SIZE === void 0 ? 2e3 : parseInt(process.env.DEFAULT_DATABASE_MAX_EXTRA_DATA_SIZE),
1492
+ rest01endpoint: process.env.REST01_ENDPOINT === void 0 ? "https://localhost" : process.env.REST01_ENDPOINT,
1493
+ rest01hostport: process.env.REST01_HOST_PORT === void 0 ? "3003" : process.env.REST01_HOST_PORT,
1494
+ rest01port: process.env.REST01_PORT === void 0 ? "3003" : process.env.REST01_PORT,
1495
+ rest01apiroot: process.env.REST01_APIROOT === void 0 ? "/stsrest01/v1" : process.env.REST01_APIROOT,
1496
+ rest01prometheussupport: process.env.REST01_PROM_SUPPORT === void 0 ? true : process.env.REST01_PROM_SUPPORT === "true" ? true : false,
1497
+ rest01prometheusclusterport: process.env.REST01_PROM_CLUSTER_PORT === void 0 ? "3013" : process.env.REST01_PROM_CLUSTER_PORT,
1498
+ rest01servicename: process.env.REST01_SERVICE_NAME === void 0 ? "STSRest01" : process.env.REST01_SERVICE_NAME,
1499
+ rest01serviceversion: process.env.REST01_SERVICE_VERSION === void 0 ? "1.0.0" : process.env.REST01_SERVICE_VERSION,
1500
+ stsfhirendpoint: process.env.STSFHIR_ENDPOINT === void 0 ? "https://localhost" : process.env.STSFHIR_ENDPOINT,
1501
+ stsfhirhostport: process.env.STSFHIR_HOST_PORT === void 0 ? "3005" : process.env.STSFHIR_HOST_PORT,
1502
+ stsfhirport: process.env.STSFHIR_PORT === void 0 ? "3005" : process.env.STSFHIR_PORT,
1503
+ stsfhirapiroot: process.env.STSFHIR_APIROOT === void 0 ? "/stsfhir/r5" : process.env.STSFHIR_APIROOT,
1504
+ stsfhirprometheussupport: process.env.STSFHIR_PROM_SUPPORT === void 0 ? true : process.env.STSFHIR_PROM_SUPPORT === "true" ? true : false,
1505
+ stsfhirprometheusclusterport: process.env.STSFHIR_PROM_CLUSTER_PORT === void 0 ? "3015" : process.env.STSFHIR_PROM_CLUSTER_PORT,
1506
+ stsfhirservicename: process.env.STSFHIR_SERVICE_NAME === void 0 ? "STSFHIR" : process.env.STSFHIR_SERVICE_NAME,
1507
+ stsfhirserviceversion: process.env.STSFHIR_SERVICE_VERSION === void 0 ? "1.0.0" : process.env.STSFHIR_SERVICE_VERSION,
1508
+ ststccendpoint: process.env.STSTCC_ENDPOINT === void 0 ? "https://localhost" : process.env.STSTCC_ENDPOINT,
1509
+ ststcchostport: process.env.STSTCC_HOST_PORT === void 0 ? "3024" : process.env.STSTCC_HOST_PORT,
1510
+ ststccport: process.env.STSTCC_PORT === void 0 ? "3024" : process.env.STSTCC_PORT,
1511
+ ststccapiroot: process.env.STSTCC_APIROOT === void 0 ? "/ststcc/v1" : process.env.STSTCC_APIROOT,
1512
+ ststccprometheussupport: process.env.STSTCC_PROM_SUPPORT === void 0 ? true : process.env.STSTCC_PROM_SUPPORT === "true" ? true : false,
1513
+ ststccprometheusclusterport: process.env.STSTCC_PROM_CLUSTER_PORT === void 0 ? "3025" : process.env.STSTCC_PROM_CLUSTER_PORT,
1514
+ ststccservicename: process.env.STSTCC_SERVICE_NAME === void 0 ? "STSTCC" : process.env.STSTCC_SERVICE_NAME,
1515
+ ststccserviceversion: process.env.STSTCC_SERVICE_VERSION === void 0 ? "1.0.0" : process.env.STSTCC_SERVICE_VERSION,
1516
+ imendpoint: process.env.IM_ENDPOINT === void 0 ? "https://localhost" : process.env.IM_ENDPOINT,
1517
+ imhostport: process.env.IM_HOST_PORT === void 0 ? "3001" : process.env.IM_HOST_PORT,
1518
+ import: process.env.IM_PORT === void 0 ? "3001" : process.env.IM_PORT,
1519
+ imapiroot: process.env.IM_APIROOT === void 0 ? "/stsinstrumentmanager/v1" : process.env.IM_APIROOT,
1520
+ imprometheussupport: process.env.IM_PROM_SUPPORT === void 0 ? true : process.env.IM_PROM_SUPPORT === "true" ? true : false,
1521
+ imprometheusclusterport: process.env.IM_PROM_CLUSTER_PORT === void 0 ? "3011" : process.env.IM_PROM_CLUSTER_PORT,
1522
+ imservicename: process.env.IM_SERVICE_NAME === void 0 ? "STSInstrumentManager" : process.env.IM_SERVICE_NAME,
1523
+ imserviceversion: process.env.IM_SERVICE_VERSION === void 0 ? "1.0.0" : process.env.IM_SERVICE_VERSION,
1524
+ imRedisKeepAliveProcessorUrl: process.env.IM_REDIS_KEEP_ALIVE_PROCESSOR_URL === void 0 ? "redis://localhost:6379" : process.env.IM_REDIS_KEEP_ALIVE_PROCESSOR_URL,
1525
+ imRedisMessageProcessorUrl: process.env.IM_REDIS_MESSAGE_PROCESSOR_URL === void 0 ? "redis://localhost:6379" : process.env.IM_REDIS_MESSAGE_PROCESSOR_URL,
1526
+ asendpoint: process.env.AS_ENDPOINT === void 0 ? "https://localhost" : process.env.AS_ENDPOINT,
1527
+ ashostport: process.env.AS_HOST_PORT === void 0 ? "3002" : process.env.AS_HOST_PORT,
1528
+ asport: process.env.AS_PORT === void 0 ? "3002" : process.env.AS_PORT,
1529
+ asapiroot: process.env.AS_API_ROOT === void 0 ? "/stsauth/v1.0" : process.env.AS_API_ROOT,
1530
+ asoauthapiroot: process.env.AS_OAUTH_API_ROOT === void 0 ? "/oauth2/v2.0" : process.env.AS_OAUTH_API_ROOT,
1531
+ asadminapiroot: process.env.AS_ADMIN_API_ROOT === void 0 ? "/admin/v1.0" : process.env.AS_ADMIN_API_ROOT,
1532
+ asprometheussupport: process.env.AS_PROM_SUPPORT === void 0 ? true : process.env.AS_PROM_SUPPORT === "true" ? true : false,
1533
+ asprometheusclusterport: process.env.AS_PROM_CLUSTER_PORT === void 0 ? "3012" : process.env.AS_PROM_CLUSTER_PORT,
1534
+ asservicename: process.env.AS_SERVICE_NAME === void 0 ? "STSAuth" : process.env.AS_SERVICE_NAME,
1535
+ asserviceversion: process.env.AS_SERVICE_VERSION === void 0 ? "1.0.0" : process.env.AS_SERVICE_VERSION,
1536
+ asjwksjsonpath: process.env.AS_JWKS_JSON_PATH === void 0 ? "/.well-known/jwks.json" : process.env.AS_JWKS_JSON_PATH,
1537
+ asjwkskeyrotationtime: process.env.AS_JWKS_KEY_ROTATION_TIME === void 0 ? 86400 : parseInt(process.env.AS_JWKS_KEY_ROTATION_TIME),
1538
+ asjwkskeypurgetimeoffset: process.env.AS_JWKS_KEY_PURGE_TIME_OFFSET === void 0 ? 300 : parseInt(process.env.AS_JWKS_KEY_PURGE_TIME_OFFSET),
1539
+ asjwkskeycount: process.env.AS_JWKS_KEY_COUNT === void 0 ? 4 : parseInt(process.env.AS_JWKS_KEY_COUNT),
1540
+ asaccesstokenexpire: process.env.AS_ACCESS_TOKEN_EXPIRE === void 0 ? 43200 : parseInt(process.env.AS_ACCESS_TOKEN_EXPIRE),
1541
+ authorizeendpoint: process.env.AUTHORIZE_ENDPOINT === void 0 ? "https://localhost" : process.env.AUTHORIZE_ENDPOINT,
1542
+ authorizeport: process.env.AUTHORIZE_PORT === void 0 ? "3010" : process.env.AUTHORIZE_PORT,
1543
+ authorizeapiroot: process.env.AUTHORIZE_API_ROOT === void 0 ? "/stsa" : process.env.AUTHORIZE_API_ROOT,
1544
+ authorizeapi: process.env.AUTHORIZE_API === void 0 ? "/authorize" : process.env.AUTHORIZE_API,
1545
+ brokerendpoint: process.env.BROKER_ENDPOINT === void 0 ? "https://localhost" : process.env.BROKER_ENDPOINT,
1546
+ brokerhostport: process.env.BROKER_HOST_PORT === void 0 ? "3006" : process.env.BROKER_HOST_PORT,
1547
+ brokerport: process.env.BROKER_PORT === void 0 ? "3006" : process.env.BROKER_PORT,
1548
+ brokerapiroot: process.env.BROKER_APIROOT === void 0 ? "/stsbroker/v1.0" : process.env.BROKER_APIROOT,
1549
+ brokerprometheussupport: process.env.BROKER_PROM_SUPPORT === void 0 ? true : process.env.BROKER_PROM_SUPPORT === "true" ? true : false,
1550
+ brokerprometheusclusterport: process.env.BROKER_PROM_CLUSTER_PORT === void 0 ? "3016" : process.env.BROKER_PROM_CLUSTER_PORT,
1551
+ brokerservicename: process.env.BROKER_SERVICE_NAME === void 0 ? "STSBroker" : process.env.BROKER_SERVICE_NAME,
1552
+ brokerserviceversion: process.env.BROKER_SERVICE_VERSION === void 0 ? "1.0.0" : process.env.BROKER_SERVICE_VERSION,
1553
+ trnendpoint: process.env.TRN_ENDPOINT === void 0 ? "https://localhost" : process.env.TRN_ENDPOINT,
1554
+ trnhostport: process.env.TRN_HOST_PORT === void 0 ? "3007" : process.env.TRN_HOST_PORT,
1555
+ trnport: process.env.TRN_PORT === void 0 ? "3007" : process.env.TRN_PORT,
1556
+ trnapiroot: process.env.TRN_APIROOT === void 0 ? "/ststrn/v1.0" : process.env.TRN_APIROOT,
1557
+ trnprometheussupport: process.env.TRN_PROM_SUPPORT === void 0 ? true : process.env.TRN_PROM_SUPPORT === "true" ? true : false,
1558
+ trnprometheusclusterport: process.env.TRN_PROM_CLUSTER_PORT === void 0 ? "3017" : process.env.TRN_PROM_CLUSTER_PORT,
1559
+ trnservicename: process.env.TRN_SERVICE_NAME === void 0 ? "STSTestRunnerNode" : process.env.TRN_SERVICE_NAME,
1560
+ trnserviceversion: process.env.TRN_SERVICE_VERSION === void 0 ? "1.0.0" : process.env.TRN_SERVICE_VERSION,
1561
+ trnautostartdelay: process.env.TRN_AUTO_START_DELAY === void 0 ? 0 : parseInt(process.env.TRN_AUTO_START_DELAY),
1562
+ trnautostartconfig: process.env.TRN_AUTO_START_CONFIG === void 0 ? "" : process.env.TRN_AUTO_START_CONFIG,
1563
+ trnRedisMessageProcessorUrl: process.env.TRN_REDIS_MESSAGE_PROCESSOR_URL === void 0 ? "redis://localhost:6379" : process.env.TRN_REDIS_MESSAGE_PROCESSOR_URL,
1564
+ lambdaendpoint: process.env.LAMBDA_ENDPOINT === void 0 ? "https://localhost" : process.env.LAMBDA_ENDPOINT,
1565
+ lambdahostport: process.env.LAMBDA_HOST_PORT === void 0 ? "3009" : process.env.LAMBDA_HOST_PORT,
1566
+ lambdaport: process.env.LAMBDA_PORT === void 0 ? "3009" : process.env.LAMBDA_PORT,
1567
+ lambdaapiroot: process.env.LAMBDA_APIROOT === void 0 ? "/stslambda/v1.0" : process.env.LAMBDA_APIROOT,
1568
+ lambdaprometheussupport: process.env.LAMBDA_PROM_SUPPORT === void 0 ? true : process.env.LAMBDA_PROM_SUPPORT === "true" ? true : false,
1569
+ lambdaprometheusclusterport: process.env.LAMBDA_PROM_CLUSTER_PORT === void 0 ? "3019" : process.env.LAMBDA_PROM_CLUSTER_PORT,
1570
+ lambdaservicename: process.env.LAMBDA_SERVICE_NAME === void 0 ? "STSLambda" : process.env.LAMBDA_SERVICE_NAME,
1571
+ lambdaserviceversion: process.env.LAMBDA_SERVICE_VERSION === void 0 ? "1.0.0" : process.env.LAMBDA_SERVICE_VERSION,
1572
+ publishinterval: process.env.PUBLISH_INTERVAL === void 0 ? 1e3 : parseInt(process.env.PUBLISH_INTERVAL),
1573
+ publishtimeout: process.env.PUBLISH_TIMEOUT === void 0 ? 750 : parseInt(process.env.PUBLISH_TIMEOUT),
1574
+ transport: process.env.TRANSPORT === void 0 ? "RESTAPI" : process.env.TRANSPORT,
1575
+ useSecureCookies: process.env.USE_SECURE_COOKIES === void 0 ? false : process.env.USE_SECURE_COOKIES === "true" ? true : false,
1576
+ keepAlive: process.env.KEEP_ALIVE === void 0 ? true : process.env.KEEP_ALIVE === "true" ? true : false,
1577
+ maxSockets: process.env.MAX_SOCKETS === void 0 ? 10 : parseInt(process.env.MAX_SOCKETS),
1578
+ maxTotalSockets: process.env.MAX_TOTAL_SOCKETS === void 0 ? 20 : parseInt(process.env.MAX_TOTAL_SOCKETS),
1579
+ maxFreeSockets: process.env.MAX_FREE_SOCKETS === void 0 ? 256 : parseInt(process.env.MAX_FREE_SOCKETS),
1580
+ timeout: process.env.TIMEOUT === void 0 ? 1e4 : parseInt(process.env.TIMEOUT),
1581
+ maxPayloadSize: process.env.MAX_PAYLOAD_SIZE === void 0 ? "50mb" : process.env.MAX_PAYLOAD_SIZE,
1582
+ instrumentationObservationInterval: process.env.INSTRUMENTATION_OBSERVATION_INTERVAL === void 0 ? 1e3 : parseInt(process.env.INSTRUMENTATION_OBSERVATION_INTERVAL),
1583
+ instrumentationTimeWindow: process.env.INSTRUMENTATION_TIME_WINDOW === void 0 ? 600 : parseInt(process.env.INSTRUMENTATION_TIME_WINDOW),
1584
+ authJWTAccessTokenTimeout: process.env.AUTH_JWT_ACCESS_TOKEN_TIMEOUT === void 0 ? 600 : parseInt(process.env.AUTH_JWT_ACCESS_TOKEN_TIMEOUT),
1585
+ authJWTRefreshTokenTimeout: process.env.AUTH_JWT_REFRESH_TOKEN_TIMEOUT === void 0 ? 3600 * 24 : parseInt(process.env.AUTH_JWT_REFRESH_TOKEN_TIMEOUT),
1586
+ authCookieTimeout: process.env.AUTH_COOKIE_TIMEOUT === void 0 ? 3600 * 24 : parseInt(process.env.AUTH_COOKIE_TIMEOUT),
1587
+ masterProcessExitTime: process.env.MASTER_PROCESS_EXIT_TIME === void 0 ? 500 : parseInt(process.env.MASTER_PROCESS_EXIT_TIME),
1588
+ childProcessExitTime: process.env.CHILD_PROCESS_EXIT_TIME === void 0 ? 500 : parseInt(process.env.CHILD_PROCESS_EXIT_TIME),
1589
+ systemInformationInterval: process.env.SYSTEM_INFORMATION_INTERVAL === void 0 ? 1e3 : parseInt(process.env.SYSTEM_INFORMATION_INTERVAL),
1590
+ ignoresocketio: process.env.IGNORE_SOCKETIO === void 0 ? true : process.env.IGNORE_SOCKETIO === "true" ? true : false,
1591
+ httpsserverkeypath: process.env.HTTPS_SERVER_KEY_PATH === void 0 ? "/var/lib/sts/stsglobalresources/keys/server.key" : process.env.HTTPS_SERVER_KEY_PATH,
1592
+ httpsservercertpath: process.env.HTTPS_SERVER_CERT_PATH === void 0 ? "/var/lib/sts/stsglobalresources/keys/server.cert" : process.env.HTTPS_SERVER_CERT_PATH,
1593
+ tsjwkskeys: process.env.TS_JWKS_KEYS === void 0 ? 3 : parseInt(process.env.TS_JWKS_KEYS),
1594
+ jwksAuthConfigCache: process.env.JWKS_AUTH_CONFIG_CACHE === void 0 ? true : process.env.JWKS_AUTH_CONFIG_CACHE === "true" ? true : false,
1595
+ jwksAuthConfigCacheMaxEntries: process.env.JWKS_AUTH_CONFIG_CACHE_MAX_ENTRIES === void 0 ? 5 : parseInt(process.env.JWKS_AUTH_CONFIG_CACHE_MAX_ENTRIES),
1596
+ jwksAuthConfigCacheMaxAge: process.env.JWKS_AUTH_CONFIG_CACHE_MAX_AGE === void 0 ? 6e5 : parseInt(process.env.JWKS_AUTH_CONFIG_CACHE_MAX_AGE),
1597
+ jwksAuthConfigRateLimit: process.env.JWKS_AUTH_CONFIG_RATE_LIMIT === void 0 ? true : process.env.JWKS_AUTH_CONFIG_RATE_LIMIT === "true" ? true : false,
1598
+ jwksAuthConfigRateLimitRequestsPerMinute: process.env.JWKS_AUTH_CONFIG_RATE_LIMIT_REQUESTS_PER_MINUTE === void 0 ? 10 : parseInt(process.env.JWKS_AUTH_CONFIG_RATE_LIMIT_REQUESTS_PER_MINUTE),
1599
+ jwksAuthConfigTimeout: process.env.JWKS_AUTH_CONFIG_TIMEOUT === void 0 ? 3e4 : parseInt(process.env.JWKS_AUTH_CONFIG_TIMEOUT),
1600
+ influxDB_APIToken: process.env.INFLUXDB_API_TOKEN === void 0 ? "password" : process.env.INFLUXDB_API_TOKEN,
1601
+ influxDB_APITokenFile: process.env.INFLUXDB_API_TOKEN_FILE,
1602
+ influxDB_Url: process.env.INFLUXDB_URL === void 0 ? "http://localhost:8086" : process.env.INFLUXDB_URL,
1603
+ influxDB_Org: process.env.INFLUXDB_ORG === void 0 ? "my-org" : process.env.INFLUXDB_ORG,
1604
+ influxDB_Bucket: process.env.INFLUXDB_BUCKET === void 0 ? "TestBucket01" : process.env.INFLUXDB_BUCKET,
1605
+ influxDB_keepAlive: process.env.INFLUXDB_KEEP_ALIVE === void 0 ? true : process.env.INFLUXDB_KEEP_ALIVE === "true" ? true : false,
1606
+ influxDB_maxSockets: process.env.INFLUXDB_MAX_SOCKETS === void 0 ? 10 : parseInt(process.env.INFLUXDB_MAX_SOCKETS),
1607
+ influxDB_maxTotalSockets: process.env.INFLUXDB_MAX_TOTAL_SOCKETS === void 0 ? 20 : parseInt(process.env.INFLUXDB_MAX_TOTAL_SOCKETS),
1608
+ influxDB_maxFreeSockets: process.env.INFLUXDB_MAX_FREE_SOCKETS === void 0 ? 256 : parseInt(process.env.INFLUXDB_MAX_FREE_SOCKETS),
1609
+ influxDB_timeout: process.env.INFLUXDB_TIMEOUT === void 0 ? 1e4 : parseInt(process.env.INFLUXDB_TIMEOUT),
1610
+ influxDB_rejectUnauthorized: process.env.INFLUXDB_REJECT_UNAUTHORIZED === void 0 ? true : process.env.INFLUXDB_REJECT_UNAUTHORIZED === "true" ? true : false,
1611
+ influxDB_writeDataPointFlushTimeout: process.env.INFLUXDB_WRITE_DATA_POINT_FLUSH_TIMEOUT === void 0 ? 1e3 : parseInt(process.env.INFLUXDB_WRITE_DATA_POINT_FLUSH_TIMEOUT),
1612
+ kafka_clientId: process.env.KAFKA_CLIENT_ID === void 0 ? "myclient" : process.env.KAFKA_CLIENT_ID,
1613
+ kafka_brokers: process.env.KAFKA_BROKERS === void 0 ? "localhost:9092" : process.env.KAFKA_BROKERS,
1614
+ kafka_admin_timeout: process.env.KAFKA_ADMIN_TIMEOUT === void 0 ? 5e3 : parseInt(process.env.KAFKA_ADMIN_TIMEOUT),
1615
+ kafka_connection_timeout: process.env.KAFKA_CONNECTION_TIMEOUT === void 0 ? 5e3 : parseInt(process.env.KAFKA_CONNECTION_TIMEOUT),
1616
+ kafka_request_timeout: process.env.KAFKA_REQUEST_TIMEOUT === void 0 ? 5e3 : parseInt(process.env.KAFKA_REQUEST_TIMEOUT),
1617
+ kafka_log_level: process.env.KAFKA_LOG_LEVEL === void 0 ? "nothing" : process.env.KAFKA_LOG_LEVEL,
1618
+ kafka_keep_alive: process.env.KAFKA_KEEP_ALIVE === void 0 ? 3e4 : parseInt(process.env.KAFKA_KEEP_ALIVE),
1619
+ kafka_use_ssl: process.env.KAFKA_USE_SSL === void 0 ? false : process.env.KAFKA_USE_SSL === "true" ? true : false,
1620
+ kafka_ssl_rejectUnauthorized: process.env.KAFKA_SSL_REJECT_UNAUTHORIZED === void 0 ? true : process.env.KAFKA_SSL_REJECT_UNAUTHORIZED === "true" ? true : false,
1621
+ kafka_ssl_cafile: process.env.KAFKA_SSL_CAFILE === void 0 ? "/my/custom/ca.crt" : process.env.KAFKA_SSL_CAFILE,
1622
+ kafka_ssl_keyfile: process.env.KAFKA_SSL_KEYFILE === void 0 ? "/my/custom/client-key.pem" : process.env.KAFKA_SSL_KEYFILE,
1623
+ kafka_ssl_certfile: process.env.KAFKA_SSL_CERTFILE === void 0 ? "/my/custom/client-cert.pem" : process.env.KAFKA_SSL_CERTFILE,
1624
+ kafka_consume_from_beginning: process.env.KAFKA_CONSUME_FROM_BEGINNING === void 0 ? true : process.env.KAFKA_CONSUME_FROM_BEGINNING === "true" ? true : false,
1625
+ observabilityPublishMode: process.env.OBSERVABILITY_PUBLISH_MODE === void 0 ? "PROXY" : process.env.OBSERVABILITY_PUBLISH_MODE,
1626
+ stsUiTermObservabilityConsumptionMode: process.env.STSUITERM_OBSERVABILITY_CONSUMPTION_MODE === void 0 ? "PROXY" : process.env.STSUITERM_OBSERVABILITY_CONSUMPTION_MODE
1627
+ };
1628
+ const ReadFile = (passwordFile) => {
1629
+ try {
1630
+ node_fs.accessSync(passwordFile, node_fs.constants.R_OK);
1631
+ const data = node_fs.readFileSync(passwordFile, "utf8");
1632
+ if (logger) ;
1633
+ return data;
1634
+ } catch (err) {
1635
+ return "";
1636
+ }
1637
+ };
1638
+ const fileconfig = [
1639
+ { fileprop: "dbpasswordfile", prop: "dbpassword" },
1640
+ // JWKS secret file processing
1641
+ { fileprop: "tsjwksstorepathfile", prop: "tsjwksstorepath" },
1642
+ // InfluxDB file processing
1643
+ { fileprop: "influxDB_APITokenFile", prop: "influxDB_APIToken" }
1644
+ ];
1645
+ fileconfig.forEach((v) => {
1646
+ if (defconfig[v.fileprop] !== void 0) {
1647
+ defconfig[v.prop] = ReadFile(defconfig[v.fileprop]);
1648
+ }
1649
+ });
1650
+ for (const [key, val] of Object.entries(defconfig)) {
1651
+ envOptions2[key] = val;
1652
+ }
1653
+ }
1654
+ function $SetupOptions(envOptions2) {
1655
+ SetupConfig(envOptions2);
1656
+ const options = envOptions2;
1657
+ if (options.dbhost) {
1658
+ const hosts = options.dbhost.split(",");
1659
+ envOptions2.connectionString = hosts.map((host) => {
1660
+ return `postgresql://${options.dbuser}:${options.dbpassword}@${host}/${options.database}`;
1661
+ }).join(",");
1662
+ envOptions2.defaultDatabaseConnectionString = hosts.map((host) => {
1663
+ return `postgresql://${options.dbuser}:${options.dbpassword}@${host}/postgres`;
1664
+ }).join(",");
1665
+ }
1666
+ }
1667
+ function $ResetOptionsEx() {
1668
+ for (const prop of Object.getOwnPropertyNames(envOptions)) {
1669
+ delete envOptions[prop];
1670
+ }
1671
+ return envOptions;
1672
+ }
1673
+ function $ResetOptions() {
1674
+ $ResetOptionsEx();
1675
+ $SetupOptions(envOptions);
1676
+ return envOptions;
1677
+ }
1678
+ const envOptionsHandler = {
1679
+ get(target, prop, receiver) {
1680
+ if (Object.keys(target).length === 0) {
1681
+ $SetupOptions(target);
1682
+ }
1683
+ return Reflect.get(target, prop, receiver);
1684
+ }
1685
+ };
1686
+ const goptions = new Proxy(envOptions, envOptionsHandler);
1687
+ exports.$ResetOptions = $ResetOptions;
1688
+ exports.$ResetOptionsEx = $ResetOptionsEx;
1689
+ exports.goptions = goptions;
1690
+ //# sourceMappingURL=index.cjs.map