storybook 10.1.0-alpha.12 → 10.1.0-alpha.13

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 (87) hide show
  1. package/dist/_browser-chunks/{chunk-74YHFU5B.js → chunk-2XZMBGTA.js} +1 -1
  2. package/dist/_browser-chunks/{chunk-EBHB6RPS.js → chunk-FQ7SLVLR.js} +6 -1
  3. package/dist/_browser-chunks/{chunk-X3DUQ5RA.js → chunk-GFY5R5EY.js} +1 -1
  4. package/dist/_node-chunks/{builder-manager-YUOHSIUB.js → builder-manager-DWDUVXZM.js} +27 -22
  5. package/dist/_node-chunks/{chunk-B6JWY6PC.js → camelcase-EETCRTJX.js} +8 -8
  6. package/dist/_node-chunks/{chunk-CZ5GHJCC.js → chunk-2W4GZCLE.js} +7 -7
  7. package/dist/_node-chunks/{chunk-E5FJS66Z.js → chunk-447655DM.js} +6 -6
  8. package/dist/_node-chunks/{chunk-WFLWJO24.js → chunk-4EJUC2SD.js} +4998 -1685
  9. package/dist/_node-chunks/chunk-4ZJOH2UN.js +61 -0
  10. package/dist/_node-chunks/chunk-654SJIMS.js +23 -0
  11. package/dist/_node-chunks/{chunk-2DMESZFJ.js → chunk-7IAVT2FU.js} +7 -7
  12. package/dist/_node-chunks/{chunk-5KLIDWFN.js → chunk-7KFHRNOT.js} +7 -7
  13. package/dist/_node-chunks/{chunk-XXPJ7XR3.js → chunk-AZIPBEBK.js} +6 -6
  14. package/dist/_node-chunks/{chunk-WUXQMQCB.js → chunk-B76FDKVB.js} +6 -6
  15. package/dist/_node-chunks/chunk-B7PGKETD.js +3781 -0
  16. package/dist/_node-chunks/{chunk-EZWWR7AR.js → chunk-CLUBH2LP.js} +55 -36
  17. package/dist/_node-chunks/{chunk-DUXPWBOK.js → chunk-CMYD2JNN.js} +7 -7
  18. package/dist/_node-chunks/{chunk-QCO2ZM7F.js → chunk-DIPKXLEP.js} +55 -32
  19. package/dist/_node-chunks/{chunk-DWXTZT3D.js → chunk-DPFYWXEA.js} +6 -6
  20. package/dist/_node-chunks/{chunk-FZLRAH4N.js → chunk-FCVNHU2F.js} +7 -7
  21. package/dist/_node-chunks/{chunk-QYQIZBS6.js → chunk-JQ7RQS5Q.js} +6 -6
  22. package/dist/_node-chunks/chunk-LEL5OSY3.js +18 -0
  23. package/dist/_node-chunks/{chunk-WA6KZQZ2.js → chunk-LPKSBF62.js} +6 -6
  24. package/dist/_node-chunks/chunk-LYEZOJ43.js +78 -0
  25. package/dist/_node-chunks/{chunk-JARUEMEP.js → chunk-MIA5324I.js} +7 -7
  26. package/dist/_node-chunks/{chunk-A4APXFQ2.js → chunk-MJM4TEMP.js} +14 -8
  27. package/dist/_node-chunks/{chunk-NAOYEL54.js → chunk-OVVZIUHS.js} +7 -7
  28. package/dist/_node-chunks/{chunk-5HV3B5OP.js → chunk-RUUNVQ6W.js} +1104 -13
  29. package/dist/_node-chunks/{chunk-2D2IODUU.js → chunk-URLNGLC2.js} +51 -71
  30. package/dist/_node-chunks/{chunk-OP3INKUD.js → chunk-WC2YEQHJ.js} +6 -6
  31. package/dist/_node-chunks/{chunk-4FT2DHGE.js → chunk-XKRVQL2G.js} +8 -8
  32. package/dist/_node-chunks/{chunk-SEMIAAWG.js → chunk-Z2OWEMX3.js} +8 -8
  33. package/dist/_node-chunks/{dist-DS2B5A3J.js → dist-22CLJ4BC.js} +9 -9
  34. package/dist/_node-chunks/{globby-6THB7HVX.js → globby-GR24TGSK.js} +9 -9
  35. package/dist/_node-chunks/{lib-5NKX4YGG.js → lib-G2LGVRPC.js} +7 -7
  36. package/dist/_node-chunks/{mdx-N42X6CFJ-ZLT3QOFF.js → mdx-N42X6CFJ-W6P6IDDW.js} +8 -8
  37. package/dist/_node-chunks/{p-limit-PDMWNG7W.js → p-limit-K4FZHG2F.js} +7 -7
  38. package/dist/babel/index.js +10 -11
  39. package/dist/bin/core.js +32 -26
  40. package/dist/bin/dispatcher.js +31 -20
  41. package/dist/bin/loader.js +10 -13
  42. package/dist/cli/index.d.ts +692 -133
  43. package/dist/cli/index.js +1005 -177
  44. package/dist/common/index.d.ts +139 -62
  45. package/dist/common/index.js +63 -49
  46. package/dist/core-server/index.d.ts +3 -2
  47. package/dist/core-server/index.js +96 -1413
  48. package/dist/core-server/presets/common-override-preset.js +9 -9
  49. package/dist/core-server/presets/common-preset.js +25 -65
  50. package/dist/csf-tools/index.js +9 -9
  51. package/dist/manager/globals-runtime.js +32 -3
  52. package/dist/manager/runtime.js +1 -1
  53. package/dist/manager-api/index.d.ts +1 -1
  54. package/dist/manager-api/index.js +4 -4
  55. package/dist/manager-errors.d.ts +6 -0
  56. package/dist/manager-errors.js +2 -2
  57. package/dist/mocking-utils/index.d.ts +1126 -0
  58. package/dist/{_node-chunks/chunk-ZXSD6L3S.js → mocking-utils/index.js} +441 -16
  59. package/dist/node-logger/index.d.ts +192 -24
  60. package/dist/node-logger/index.js +23 -3148
  61. package/dist/preview/runtime.js +31 -2
  62. package/dist/preview-api/index.d.ts +69 -68
  63. package/dist/preview-errors.d.ts +6 -0
  64. package/dist/preview-errors.js +2 -2
  65. package/dist/server-errors.d.ts +31 -1
  66. package/dist/server-errors.js +17 -10
  67. package/dist/telemetry/index.d.ts +23 -2
  68. package/dist/telemetry/index.js +25 -24
  69. package/dist/types/index.d.ts +71 -8
  70. package/dist/types/index.js +25 -1
  71. package/package.json +7 -9
  72. package/dist/_node-chunks/camelcase-JREIL7NV.js +0 -18
  73. package/dist/_node-chunks/chunk-FDXFVHIL.js +0 -1114
  74. package/dist/_node-chunks/chunk-HZG65SU3.js +0 -34
  75. package/dist/_node-chunks/chunk-IXVYNBMD.js +0 -18
  76. package/dist/_node-chunks/chunk-LIH7MTP7.js +0 -3214
  77. package/dist/_node-chunks/chunk-N5GIRUP5.js +0 -1047
  78. package/dist/_node-chunks/chunk-O5DA7YLO.js +0 -3171
  79. package/dist/_node-chunks/chunk-TS2UUH2J.js +0 -301
  80. package/dist/_node-chunks/chunk-Y4E6IGQF.js +0 -61
  81. package/dist/_node-chunks/chunk-ZL3AFKRX.js +0 -1029
  82. package/dist/_node-chunks/plugin-6XMWOGPO.js +0 -123
  83. package/dist/_node-chunks/plugin-LTOXVT6A.js +0 -109
  84. package/dist/_node-chunks/webpack-inject-mocker-runtime-plugin-2SFE5LQS.js +0 -46582
  85. package/dist/_node-chunks/webpack-mock-plugin-CX5J2U56.js +0 -92
  86. package/dist/core-server/presets/webpack/loaders/storybook-mock-transform-loader.js +0 -32
  87. package/dist/core-server/presets/webpack/loaders/webpack-automock-loader.js +0 -28
@@ -1,92 +1,86 @@
1
- import CJS_COMPAT_NODE_URL_57ru1wfqqjv from 'node:url';
2
- import CJS_COMPAT_NODE_PATH_57ru1wfqqjv from 'node:path';
3
- import CJS_COMPAT_NODE_MODULE_57ru1wfqqjv from "node:module";
1
+ import CJS_COMPAT_NODE_URL_h0pwn2pcb57 from 'node:url';
2
+ import CJS_COMPAT_NODE_PATH_h0pwn2pcb57 from 'node:path';
3
+ import CJS_COMPAT_NODE_MODULE_h0pwn2pcb57 from "node:module";
4
4
 
5
- var __filename = CJS_COMPAT_NODE_URL_57ru1wfqqjv.fileURLToPath(import.meta.url);
6
- var __dirname = CJS_COMPAT_NODE_PATH_57ru1wfqqjv.dirname(__filename);
7
- var require = CJS_COMPAT_NODE_MODULE_57ru1wfqqjv.createRequire(import.meta.url);
5
+ var __filename = CJS_COMPAT_NODE_URL_h0pwn2pcb57.fileURLToPath(import.meta.url);
6
+ var __dirname = CJS_COMPAT_NODE_PATH_h0pwn2pcb57.dirname(__filename);
7
+ var require = CJS_COMPAT_NODE_MODULE_h0pwn2pcb57.createRequire(import.meta.url);
8
8
 
9
9
  // ------------------------------------------------------------
10
10
  // end of CJS compatibility banner, injected by Storybook's esbuild configuration
11
11
  // ------------------------------------------------------------
12
12
  import {
13
13
  detectPnp
14
- } from "../_node-chunks/chunk-ZL3AFKRX.js";
14
+ } from "../_node-chunks/chunk-654SJIMS.js";
15
15
  import {
16
- require_pretty_hrtime
17
- } from "../_node-chunks/chunk-HZG65SU3.js";
18
- import {
19
- boxen,
20
- require_string_width
21
- } from "../_node-chunks/chunk-N5GIRUP5.js";
22
- import "../_node-chunks/chunk-B6JWY6PC.js";
23
- import {
24
- StatusTypeIdMismatchError,
25
- StorybookError
26
- } from "../_node-chunks/chunk-2D2IODUU.js";
16
+ StatusTypeIdMismatchError
17
+ } from "../_node-chunks/chunk-URLNGLC2.js";
27
18
  import {
28
19
  getErrorLevel,
20
+ isTelemetryEnabled,
29
21
  mapStaticDir,
30
22
  parseStaticDir,
31
23
  sendTelemetryError,
32
24
  useStatics,
33
25
  withTelemetry
34
- } from "../_node-chunks/chunk-QCO2ZM7F.js";
35
- import "../_node-chunks/chunk-CZ5GHJCC.js";
26
+ } from "../_node-chunks/chunk-DIPKXLEP.js";
27
+ import "../_node-chunks/chunk-2W4GZCLE.js";
28
+ import {
29
+ StorybookError
30
+ } from "../_node-chunks/chunk-LYEZOJ43.js";
36
31
  import {
37
32
  telemetry
38
- } from "../_node-chunks/chunk-EZWWR7AR.js";
39
- import "../_node-chunks/chunk-IXVYNBMD.js";
33
+ } from "../_node-chunks/chunk-CLUBH2LP.js";
34
+ import "../_node-chunks/chunk-LEL5OSY3.js";
40
35
  import {
36
+ optionalEnvToBoolean,
37
+ require_cross_spawn,
41
38
  resolveImport,
42
39
  supportedExtensions,
43
40
  userOrAutoTitleFromSpecifier
44
- } from "../_node-chunks/chunk-WFLWJO24.js";
45
- import "../_node-chunks/chunk-2DMESZFJ.js";
46
- import "../_node-chunks/chunk-Y4E6IGQF.js";
47
- import "../_node-chunks/chunk-4FT2DHGE.js";
48
- import {
49
- optionalEnvToBoolean,
50
- require_cross_spawn
51
- } from "../_node-chunks/chunk-O5DA7YLO.js";
41
+ } from "../_node-chunks/chunk-4EJUC2SD.js";
42
+ import "../_node-chunks/chunk-4ZJOH2UN.js";
43
+ import "../_node-chunks/chunk-XKRVQL2G.js";
52
44
  import {
53
45
  up2 as up
54
- } from "../_node-chunks/chunk-DWXTZT3D.js";
55
- import "../_node-chunks/chunk-WUXQMQCB.js";
46
+ } from "../_node-chunks/chunk-DPFYWXEA.js";
47
+ import "../_node-chunks/chunk-7IAVT2FU.js";
48
+ import {
49
+ require_pretty_hrtime
50
+ } from "../_node-chunks/chunk-B7PGKETD.js";
51
+ import "../_node-chunks/chunk-B76FDKVB.js";
56
52
  import {
57
53
  invariant
58
- } from "../_node-chunks/chunk-QYQIZBS6.js";
54
+ } from "../_node-chunks/chunk-JQ7RQS5Q.js";
59
55
  import {
60
56
  importModule,
61
57
  resolvePackageDir
62
- } from "../_node-chunks/chunk-A4APXFQ2.js";
58
+ } from "../_node-chunks/chunk-MJM4TEMP.js";
63
59
  import {
60
+ dirname,
64
61
  join,
65
62
  relative,
66
63
  resolve
67
- } from "../_node-chunks/chunk-WA6KZQZ2.js";
68
- import {
69
- require_prompts
70
- } from "../_node-chunks/chunk-LIH7MTP7.js";
71
- import "../_node-chunks/chunk-JARUEMEP.js";
64
+ } from "../_node-chunks/chunk-LPKSBF62.js";
65
+ import "../_node-chunks/chunk-MIA5324I.js";
72
66
  import {
73
67
  slash
74
- } from "../_node-chunks/chunk-E5FJS66Z.js";
68
+ } from "../_node-chunks/chunk-447655DM.js";
75
69
  import {
76
70
  require_dist
77
- } from "../_node-chunks/chunk-DUXPWBOK.js";
71
+ } from "../_node-chunks/chunk-CMYD2JNN.js";
78
72
  import {
79
73
  require_lib,
80
74
  require_src
81
- } from "../_node-chunks/chunk-FZLRAH4N.js";
75
+ } from "../_node-chunks/chunk-FCVNHU2F.js";
82
76
  import {
83
77
  require_picocolors
84
- } from "../_node-chunks/chunk-NAOYEL54.js";
78
+ } from "../_node-chunks/chunk-OVVZIUHS.js";
85
79
  import {
86
80
  __commonJS,
87
81
  __require,
88
82
  __toESM
89
- } from "../_node-chunks/chunk-OP3INKUD.js";
83
+ } from "../_node-chunks/chunk-WC2YEQHJ.js";
90
84
 
91
85
  // ../node_modules/tsconfig-paths/lib/filesystem.js
92
86
  var require_filesystem = __commonJS({
@@ -4245,1290 +4239,6 @@ var require_detect_port2 = __commonJS({
4245
4239
  }
4246
4240
  });
4247
4241
 
4248
- // ../node_modules/cli-table3/src/debug.js
4249
- var require_debug = __commonJS({
4250
- "../node_modules/cli-table3/src/debug.js"(exports, module) {
4251
- var messages = [], level = 0, debug = (msg, min) => {
4252
- level >= min && messages.push(msg);
4253
- };
4254
- debug.WARN = 1;
4255
- debug.INFO = 2;
4256
- debug.DEBUG = 3;
4257
- debug.reset = () => {
4258
- messages = [];
4259
- };
4260
- debug.setDebugLevel = (v) => {
4261
- level = v;
4262
- };
4263
- debug.warn = (msg) => debug(msg, debug.WARN);
4264
- debug.info = (msg) => debug(msg, debug.INFO);
4265
- debug.debug = (msg) => debug(msg, debug.DEBUG);
4266
- debug.debugMessages = () => messages;
4267
- module.exports = debug;
4268
- }
4269
- });
4270
-
4271
- // ../node_modules/cli-table3/src/utils.js
4272
- var require_utils2 = __commonJS({
4273
- "../node_modules/cli-table3/src/utils.js"(exports, module) {
4274
- var stringWidth = require_string_width();
4275
- function codeRegex(capture) {
4276
- return capture ? /\u001b\[((?:\d*;){0,5}\d*)m/g : /\u001b\[(?:\d*;){0,5}\d*m/g;
4277
- }
4278
- function strlen(str) {
4279
- let code = codeRegex();
4280
- return ("" + str).replace(code, "").split(`
4281
- `).reduce(function(memo, s) {
4282
- return stringWidth(s) > memo ? stringWidth(s) : memo;
4283
- }, 0);
4284
- }
4285
- function repeat(str, times) {
4286
- return Array(times + 1).join(str);
4287
- }
4288
- function pad(str, len, pad2, dir) {
4289
- let length = strlen(str);
4290
- if (len + 1 >= length) {
4291
- let padlen = len - length;
4292
- switch (dir) {
4293
- case "right": {
4294
- str = repeat(pad2, padlen) + str;
4295
- break;
4296
- }
4297
- case "center": {
4298
- let right = Math.ceil(padlen / 2), left = padlen - right;
4299
- str = repeat(pad2, left) + str + repeat(pad2, right);
4300
- break;
4301
- }
4302
- default: {
4303
- str = str + repeat(pad2, padlen);
4304
- break;
4305
- }
4306
- }
4307
- }
4308
- return str;
4309
- }
4310
- var codeCache = {};
4311
- function addToCodeCache(name, on, off) {
4312
- on = "\x1B[" + on + "m", off = "\x1B[" + off + "m", codeCache[on] = { set: name, to: !0 }, codeCache[off] = { set: name, to: !1 }, codeCache[name] = { on, off };
4313
- }
4314
- addToCodeCache("bold", 1, 22);
4315
- addToCodeCache("italics", 3, 23);
4316
- addToCodeCache("underline", 4, 24);
4317
- addToCodeCache("inverse", 7, 27);
4318
- addToCodeCache("strikethrough", 9, 29);
4319
- function updateState(state, controlChars) {
4320
- let controlCode = controlChars[1] ? parseInt(controlChars[1].split(";")[0]) : 0;
4321
- if (controlCode >= 30 && controlCode <= 39 || controlCode >= 90 && controlCode <= 97) {
4322
- state.lastForegroundAdded = controlChars[0];
4323
- return;
4324
- }
4325
- if (controlCode >= 40 && controlCode <= 49 || controlCode >= 100 && controlCode <= 107) {
4326
- state.lastBackgroundAdded = controlChars[0];
4327
- return;
4328
- }
4329
- if (controlCode === 0) {
4330
- for (let i in state)
4331
- Object.prototype.hasOwnProperty.call(state, i) && delete state[i];
4332
- return;
4333
- }
4334
- let info = codeCache[controlChars[0]];
4335
- info && (state[info.set] = info.to);
4336
- }
4337
- function readState(line) {
4338
- let code = codeRegex(!0), controlChars = code.exec(line), state = {};
4339
- for (; controlChars !== null; )
4340
- updateState(state, controlChars), controlChars = code.exec(line);
4341
- return state;
4342
- }
4343
- function unwindState(state, ret) {
4344
- let lastBackgroundAdded = state.lastBackgroundAdded, lastForegroundAdded = state.lastForegroundAdded;
4345
- return delete state.lastBackgroundAdded, delete state.lastForegroundAdded, Object.keys(state).forEach(function(key) {
4346
- state[key] && (ret += codeCache[key].off);
4347
- }), lastBackgroundAdded && lastBackgroundAdded != "\x1B[49m" && (ret += "\x1B[49m"), lastForegroundAdded && lastForegroundAdded != "\x1B[39m" && (ret += "\x1B[39m"), ret;
4348
- }
4349
- function rewindState(state, ret) {
4350
- let lastBackgroundAdded = state.lastBackgroundAdded, lastForegroundAdded = state.lastForegroundAdded;
4351
- return delete state.lastBackgroundAdded, delete state.lastForegroundAdded, Object.keys(state).forEach(function(key) {
4352
- state[key] && (ret = codeCache[key].on + ret);
4353
- }), lastBackgroundAdded && lastBackgroundAdded != "\x1B[49m" && (ret = lastBackgroundAdded + ret), lastForegroundAdded && lastForegroundAdded != "\x1B[39m" && (ret = lastForegroundAdded + ret), ret;
4354
- }
4355
- function truncateWidth(str, desiredLength) {
4356
- if (str.length === strlen(str))
4357
- return str.substr(0, desiredLength);
4358
- for (; strlen(str) > desiredLength; )
4359
- str = str.slice(0, -1);
4360
- return str;
4361
- }
4362
- function truncateWidthWithAnsi(str, desiredLength) {
4363
- let code = codeRegex(!0), split = str.split(codeRegex()), splitIndex = 0, retLen = 0, ret = "", myArray, state = {};
4364
- for (; retLen < desiredLength; ) {
4365
- myArray = code.exec(str);
4366
- let toAdd = split[splitIndex];
4367
- if (splitIndex++, retLen + strlen(toAdd) > desiredLength && (toAdd = truncateWidth(toAdd, desiredLength - retLen)), ret += toAdd, retLen += strlen(toAdd), retLen < desiredLength) {
4368
- if (!myArray)
4369
- break;
4370
- ret += myArray[0], updateState(state, myArray);
4371
- }
4372
- }
4373
- return unwindState(state, ret);
4374
- }
4375
- function truncate(str, desiredLength, truncateChar) {
4376
- if (truncateChar = truncateChar || "\u2026", strlen(str) <= desiredLength)
4377
- return str;
4378
- desiredLength -= strlen(truncateChar);
4379
- let ret = truncateWidthWithAnsi(str, desiredLength);
4380
- ret += truncateChar;
4381
- let hrefTag = "\x1B]8;;\x07";
4382
- return str.includes(hrefTag) && !ret.includes(hrefTag) && (ret += hrefTag), ret;
4383
- }
4384
- function defaultOptions() {
4385
- return {
4386
- chars: {
4387
- top: "\u2500",
4388
- "top-mid": "\u252C",
4389
- "top-left": "\u250C",
4390
- "top-right": "\u2510",
4391
- bottom: "\u2500",
4392
- "bottom-mid": "\u2534",
4393
- "bottom-left": "\u2514",
4394
- "bottom-right": "\u2518",
4395
- left: "\u2502",
4396
- "left-mid": "\u251C",
4397
- mid: "\u2500",
4398
- "mid-mid": "\u253C",
4399
- right: "\u2502",
4400
- "right-mid": "\u2524",
4401
- middle: "\u2502"
4402
- },
4403
- truncate: "\u2026",
4404
- colWidths: [],
4405
- rowHeights: [],
4406
- colAligns: [],
4407
- rowAligns: [],
4408
- style: {
4409
- "padding-left": 1,
4410
- "padding-right": 1,
4411
- head: ["red"],
4412
- border: ["grey"],
4413
- compact: !1
4414
- },
4415
- head: []
4416
- };
4417
- }
4418
- function mergeOptions(options, defaults) {
4419
- options = options || {}, defaults = defaults || defaultOptions();
4420
- let ret = Object.assign({}, defaults, options);
4421
- return ret.chars = Object.assign({}, defaults.chars, options.chars), ret.style = Object.assign({}, defaults.style, options.style), ret;
4422
- }
4423
- function wordWrap(maxLength, input) {
4424
- let lines = [], split = input.split(/(\s+)/g), line = [], lineLength = 0, whitespace;
4425
- for (let i = 0; i < split.length; i += 2) {
4426
- let word = split[i], newLength = lineLength + strlen(word);
4427
- lineLength > 0 && whitespace && (newLength += whitespace.length), newLength > maxLength ? (lineLength !== 0 && lines.push(line.join("")), line = [word], lineLength = strlen(word)) : (line.push(whitespace || "", word), lineLength = newLength), whitespace = split[i + 1];
4428
- }
4429
- return lineLength && lines.push(line.join("")), lines;
4430
- }
4431
- function textWrap(maxLength, input) {
4432
- let lines = [], line = "";
4433
- function pushLine(str, ws) {
4434
- for (line.length && ws && (line += ws), line += str; line.length > maxLength; )
4435
- lines.push(line.slice(0, maxLength)), line = line.slice(maxLength);
4436
- }
4437
- let split = input.split(/(\s+)/g);
4438
- for (let i = 0; i < split.length; i += 2)
4439
- pushLine(split[i], i && split[i - 1]);
4440
- return line.length && lines.push(line), lines;
4441
- }
4442
- function multiLineWordWrap(maxLength, input, wrapOnWordBoundary = !0) {
4443
- let output = [];
4444
- input = input.split(`
4445
- `);
4446
- let handler = wrapOnWordBoundary ? wordWrap : textWrap;
4447
- for (let i = 0; i < input.length; i++)
4448
- output.push.apply(output, handler(maxLength, input[i]));
4449
- return output;
4450
- }
4451
- function colorizeLines(input) {
4452
- let state = {}, output = [];
4453
- for (let i = 0; i < input.length; i++) {
4454
- let line = rewindState(state, input[i]);
4455
- state = readState(line);
4456
- let temp = Object.assign({}, state);
4457
- output.push(unwindState(temp, line));
4458
- }
4459
- return output;
4460
- }
4461
- function hyperlink(url, text) {
4462
- return ["\x1B]", "8", ";", ";", url || text, "\x07", text, "\x1B]", "8", ";", ";", "\x07"].join("");
4463
- }
4464
- module.exports = {
4465
- strlen,
4466
- repeat,
4467
- pad,
4468
- truncate,
4469
- mergeOptions,
4470
- wordWrap: multiLineWordWrap,
4471
- colorizeLines,
4472
- hyperlink
4473
- };
4474
- }
4475
- });
4476
-
4477
- // ../node_modules/@colors/colors/lib/styles.js
4478
- var require_styles = __commonJS({
4479
- "../node_modules/@colors/colors/lib/styles.js"(exports, module) {
4480
- var styles = {};
4481
- module.exports = styles;
4482
- var codes = {
4483
- reset: [0, 0],
4484
- bold: [1, 22],
4485
- dim: [2, 22],
4486
- italic: [3, 23],
4487
- underline: [4, 24],
4488
- inverse: [7, 27],
4489
- hidden: [8, 28],
4490
- strikethrough: [9, 29],
4491
- black: [30, 39],
4492
- red: [31, 39],
4493
- green: [32, 39],
4494
- yellow: [33, 39],
4495
- blue: [34, 39],
4496
- magenta: [35, 39],
4497
- cyan: [36, 39],
4498
- white: [37, 39],
4499
- gray: [90, 39],
4500
- grey: [90, 39],
4501
- brightRed: [91, 39],
4502
- brightGreen: [92, 39],
4503
- brightYellow: [93, 39],
4504
- brightBlue: [94, 39],
4505
- brightMagenta: [95, 39],
4506
- brightCyan: [96, 39],
4507
- brightWhite: [97, 39],
4508
- bgBlack: [40, 49],
4509
- bgRed: [41, 49],
4510
- bgGreen: [42, 49],
4511
- bgYellow: [43, 49],
4512
- bgBlue: [44, 49],
4513
- bgMagenta: [45, 49],
4514
- bgCyan: [46, 49],
4515
- bgWhite: [47, 49],
4516
- bgGray: [100, 49],
4517
- bgGrey: [100, 49],
4518
- bgBrightRed: [101, 49],
4519
- bgBrightGreen: [102, 49],
4520
- bgBrightYellow: [103, 49],
4521
- bgBrightBlue: [104, 49],
4522
- bgBrightMagenta: [105, 49],
4523
- bgBrightCyan: [106, 49],
4524
- bgBrightWhite: [107, 49],
4525
- // legacy styles for colors pre v1.0.0
4526
- blackBG: [40, 49],
4527
- redBG: [41, 49],
4528
- greenBG: [42, 49],
4529
- yellowBG: [43, 49],
4530
- blueBG: [44, 49],
4531
- magentaBG: [45, 49],
4532
- cyanBG: [46, 49],
4533
- whiteBG: [47, 49]
4534
- };
4535
- Object.keys(codes).forEach(function(key) {
4536
- var val = codes[key], style = styles[key] = [];
4537
- style.open = "\x1B[" + val[0] + "m", style.close = "\x1B[" + val[1] + "m";
4538
- });
4539
- }
4540
- });
4541
-
4542
- // ../node_modules/@colors/colors/lib/system/has-flag.js
4543
- var require_has_flag = __commonJS({
4544
- "../node_modules/@colors/colors/lib/system/has-flag.js"(exports, module) {
4545
- "use strict";
4546
- module.exports = function(flag, argv) {
4547
- argv = argv || process.argv;
4548
- var terminatorPos = argv.indexOf("--"), prefix = /^-{1,2}/.test(flag) ? "" : "--", pos = argv.indexOf(prefix + flag);
4549
- return pos !== -1 && (terminatorPos === -1 ? !0 : pos < terminatorPos);
4550
- };
4551
- }
4552
- });
4553
-
4554
- // ../node_modules/@colors/colors/lib/system/supports-colors.js
4555
- var require_supports_colors = __commonJS({
4556
- "../node_modules/@colors/colors/lib/system/supports-colors.js"(exports, module) {
4557
- "use strict";
4558
- var os3 = __require("os"), hasFlag = require_has_flag(), env = process.env, forceColor = void 0;
4559
- hasFlag("no-color") || hasFlag("no-colors") || hasFlag("color=false") ? forceColor = !1 : (hasFlag("color") || hasFlag("colors") || hasFlag("color=true") || hasFlag("color=always")) && (forceColor = !0);
4560
- "FORCE_COLOR" in env && (forceColor = env.FORCE_COLOR.length === 0 || parseInt(env.FORCE_COLOR, 10) !== 0);
4561
- function translateLevel(level) {
4562
- return level === 0 ? !1 : {
4563
- level,
4564
- hasBasic: !0,
4565
- has256: level >= 2,
4566
- has16m: level >= 3
4567
- };
4568
- }
4569
- function supportsColor(stream) {
4570
- if (forceColor === !1)
4571
- return 0;
4572
- if (hasFlag("color=16m") || hasFlag("color=full") || hasFlag("color=truecolor"))
4573
- return 3;
4574
- if (hasFlag("color=256"))
4575
- return 2;
4576
- if (stream && !stream.isTTY && forceColor !== !0)
4577
- return 0;
4578
- var min = forceColor ? 1 : 0;
4579
- if (process.platform === "win32") {
4580
- var osRelease = os3.release().split(".");
4581
- return Number(process.versions.node.split(".")[0]) >= 8 && Number(osRelease[0]) >= 10 && Number(osRelease[2]) >= 10586 ? Number(osRelease[2]) >= 14931 ? 3 : 2 : 1;
4582
- }
4583
- if ("CI" in env)
4584
- return ["TRAVIS", "CIRCLECI", "APPVEYOR", "GITLAB_CI"].some(function(sign) {
4585
- return sign in env;
4586
- }) || env.CI_NAME === "codeship" ? 1 : min;
4587
- if ("TEAMCITY_VERSION" in env)
4588
- return /^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(env.TEAMCITY_VERSION) ? 1 : 0;
4589
- if ("TERM_PROGRAM" in env) {
4590
- var version = parseInt((env.TERM_PROGRAM_VERSION || "").split(".")[0], 10);
4591
- switch (env.TERM_PROGRAM) {
4592
- case "iTerm.app":
4593
- return version >= 3 ? 3 : 2;
4594
- case "Hyper":
4595
- return 3;
4596
- case "Apple_Terminal":
4597
- return 2;
4598
- }
4599
- }
4600
- return /-256(color)?$/i.test(env.TERM) ? 2 : /^screen|^xterm|^vt100|^rxvt|color|ansi|cygwin|linux/i.test(env.TERM) || "COLORTERM" in env ? 1 : (env.TERM === "dumb", min);
4601
- }
4602
- function getSupportLevel(stream) {
4603
- var level = supportsColor(stream);
4604
- return translateLevel(level);
4605
- }
4606
- module.exports = {
4607
- supportsColor: getSupportLevel,
4608
- stdout: getSupportLevel(process.stdout),
4609
- stderr: getSupportLevel(process.stderr)
4610
- };
4611
- }
4612
- });
4613
-
4614
- // ../node_modules/@colors/colors/lib/custom/trap.js
4615
- var require_trap = __commonJS({
4616
- "../node_modules/@colors/colors/lib/custom/trap.js"(exports, module) {
4617
- module.exports = function(text, options) {
4618
- var result = "";
4619
- text = text || "Run the trap, drop the bass", text = text.split("");
4620
- var trap = {
4621
- a: ["@", "\u0104", "\u023A", "\u0245", "\u0394", "\u039B", "\u0414"],
4622
- b: ["\xDF", "\u0181", "\u0243", "\u026E", "\u03B2", "\u0E3F"],
4623
- c: ["\xA9", "\u023B", "\u03FE"],
4624
- d: ["\xD0", "\u018A", "\u0500", "\u0501", "\u0502", "\u0503"],
4625
- e: [
4626
- "\xCB",
4627
- "\u0115",
4628
- "\u018E",
4629
- "\u0258",
4630
- "\u03A3",
4631
- "\u03BE",
4632
- "\u04BC",
4633
- "\u0A6C"
4634
- ],
4635
- f: ["\u04FA"],
4636
- g: ["\u0262"],
4637
- h: ["\u0126", "\u0195", "\u04A2", "\u04BA", "\u04C7", "\u050A"],
4638
- i: ["\u0F0F"],
4639
- j: ["\u0134"],
4640
- k: ["\u0138", "\u04A0", "\u04C3", "\u051E"],
4641
- l: ["\u0139"],
4642
- m: ["\u028D", "\u04CD", "\u04CE", "\u0520", "\u0521", "\u0D69"],
4643
- n: ["\xD1", "\u014B", "\u019D", "\u0376", "\u03A0", "\u048A"],
4644
- o: [
4645
- "\xD8",
4646
- "\xF5",
4647
- "\xF8",
4648
- "\u01FE",
4649
- "\u0298",
4650
- "\u047A",
4651
- "\u05DD",
4652
- "\u06DD",
4653
- "\u0E4F"
4654
- ],
4655
- p: ["\u01F7", "\u048E"],
4656
- q: ["\u09CD"],
4657
- r: ["\xAE", "\u01A6", "\u0210", "\u024C", "\u0280", "\u042F"],
4658
- s: ["\xA7", "\u03DE", "\u03DF", "\u03E8"],
4659
- t: ["\u0141", "\u0166", "\u0373"],
4660
- u: ["\u01B1", "\u054D"],
4661
- v: ["\u05D8"],
4662
- w: ["\u0428", "\u0460", "\u047C", "\u0D70"],
4663
- x: ["\u04B2", "\u04FE", "\u04FC", "\u04FD"],
4664
- y: ["\xA5", "\u04B0", "\u04CB"],
4665
- z: ["\u01B5", "\u0240"]
4666
- };
4667
- return text.forEach(function(c) {
4668
- c = c.toLowerCase();
4669
- var chars = trap[c] || [" "], rand = Math.floor(Math.random() * chars.length);
4670
- typeof trap[c] < "u" ? result += trap[c][rand] : result += c;
4671
- }), result;
4672
- };
4673
- }
4674
- });
4675
-
4676
- // ../node_modules/@colors/colors/lib/custom/zalgo.js
4677
- var require_zalgo = __commonJS({
4678
- "../node_modules/@colors/colors/lib/custom/zalgo.js"(exports, module) {
4679
- module.exports = function(text, options) {
4680
- text = text || " he is here ";
4681
- var soul = {
4682
- up: [
4683
- "\u030D",
4684
- "\u030E",
4685
- "\u0304",
4686
- "\u0305",
4687
- "\u033F",
4688
- "\u0311",
4689
- "\u0306",
4690
- "\u0310",
4691
- "\u0352",
4692
- "\u0357",
4693
- "\u0351",
4694
- "\u0307",
4695
- "\u0308",
4696
- "\u030A",
4697
- "\u0342",
4698
- "\u0313",
4699
- "\u0308",
4700
- "\u034A",
4701
- "\u034B",
4702
- "\u034C",
4703
- "\u0303",
4704
- "\u0302",
4705
- "\u030C",
4706
- "\u0350",
4707
- "\u0300",
4708
- "\u0301",
4709
- "\u030B",
4710
- "\u030F",
4711
- "\u0312",
4712
- "\u0313",
4713
- "\u0314",
4714
- "\u033D",
4715
- "\u0309",
4716
- "\u0363",
4717
- "\u0364",
4718
- "\u0365",
4719
- "\u0366",
4720
- "\u0367",
4721
- "\u0368",
4722
- "\u0369",
4723
- "\u036A",
4724
- "\u036B",
4725
- "\u036C",
4726
- "\u036D",
4727
- "\u036E",
4728
- "\u036F",
4729
- "\u033E",
4730
- "\u035B",
4731
- "\u0346",
4732
- "\u031A"
4733
- ],
4734
- down: [
4735
- "\u0316",
4736
- "\u0317",
4737
- "\u0318",
4738
- "\u0319",
4739
- "\u031C",
4740
- "\u031D",
4741
- "\u031E",
4742
- "\u031F",
4743
- "\u0320",
4744
- "\u0324",
4745
- "\u0325",
4746
- "\u0326",
4747
- "\u0329",
4748
- "\u032A",
4749
- "\u032B",
4750
- "\u032C",
4751
- "\u032D",
4752
- "\u032E",
4753
- "\u032F",
4754
- "\u0330",
4755
- "\u0331",
4756
- "\u0332",
4757
- "\u0333",
4758
- "\u0339",
4759
- "\u033A",
4760
- "\u033B",
4761
- "\u033C",
4762
- "\u0345",
4763
- "\u0347",
4764
- "\u0348",
4765
- "\u0349",
4766
- "\u034D",
4767
- "\u034E",
4768
- "\u0353",
4769
- "\u0354",
4770
- "\u0355",
4771
- "\u0356",
4772
- "\u0359",
4773
- "\u035A",
4774
- "\u0323"
4775
- ],
4776
- mid: [
4777
- "\u0315",
4778
- "\u031B",
4779
- "\u0300",
4780
- "\u0301",
4781
- "\u0358",
4782
- "\u0321",
4783
- "\u0322",
4784
- "\u0327",
4785
- "\u0328",
4786
- "\u0334",
4787
- "\u0335",
4788
- "\u0336",
4789
- "\u035C",
4790
- "\u035D",
4791
- "\u035E",
4792
- "\u035F",
4793
- "\u0360",
4794
- "\u0362",
4795
- "\u0338",
4796
- "\u0337",
4797
- "\u0361",
4798
- " \u0489"
4799
- ]
4800
- }, all = [].concat(soul.up, soul.down, soul.mid);
4801
- function randomNumber(range) {
4802
- var r = Math.floor(Math.random() * range);
4803
- return r;
4804
- }
4805
- function isChar(character) {
4806
- var bool = !1;
4807
- return all.filter(function(i) {
4808
- bool = i === character;
4809
- }), bool;
4810
- }
4811
- function heComes(text2, options2) {
4812
- var result = "", counts, l;
4813
- options2 = options2 || {}, options2.up = typeof options2.up < "u" ? options2.up : !0, options2.mid = typeof options2.mid < "u" ? options2.mid : !0, options2.down = typeof options2.down < "u" ? options2.down : !0, options2.size = typeof options2.size < "u" ? options2.size : "maxi", text2 = text2.split("");
4814
- for (l in text2)
4815
- if (!isChar(l)) {
4816
- switch (result = result + text2[l], counts = { up: 0, down: 0, mid: 0 }, options2.size) {
4817
- case "mini":
4818
- counts.up = randomNumber(8), counts.mid = randomNumber(2), counts.down = randomNumber(8);
4819
- break;
4820
- case "maxi":
4821
- counts.up = randomNumber(16) + 3, counts.mid = randomNumber(4) + 1, counts.down = randomNumber(64) + 3;
4822
- break;
4823
- default:
4824
- counts.up = randomNumber(8) + 1, counts.mid = randomNumber(6) / 2, counts.down = randomNumber(8) + 1;
4825
- break;
4826
- }
4827
- var arr = ["up", "mid", "down"];
4828
- for (var d in arr)
4829
- for (var index = arr[d], i = 0; i <= counts[index]; i++)
4830
- options2[index] && (result = result + soul[index][randomNumber(soul[index].length)]);
4831
- }
4832
- return result;
4833
- }
4834
- return heComes(text, options);
4835
- };
4836
- }
4837
- });
4838
-
4839
- // ../node_modules/@colors/colors/lib/maps/america.js
4840
- var require_america = __commonJS({
4841
- "../node_modules/@colors/colors/lib/maps/america.js"(exports, module) {
4842
- module.exports = function(colors3) {
4843
- return function(letter, i, exploded) {
4844
- if (letter === " ") return letter;
4845
- switch (i % 3) {
4846
- case 0:
4847
- return colors3.red(letter);
4848
- case 1:
4849
- return colors3.white(letter);
4850
- case 2:
4851
- return colors3.blue(letter);
4852
- }
4853
- };
4854
- };
4855
- }
4856
- });
4857
-
4858
- // ../node_modules/@colors/colors/lib/maps/zebra.js
4859
- var require_zebra = __commonJS({
4860
- "../node_modules/@colors/colors/lib/maps/zebra.js"(exports, module) {
4861
- module.exports = function(colors3) {
4862
- return function(letter, i, exploded) {
4863
- return i % 2 === 0 ? letter : colors3.inverse(letter);
4864
- };
4865
- };
4866
- }
4867
- });
4868
-
4869
- // ../node_modules/@colors/colors/lib/maps/rainbow.js
4870
- var require_rainbow = __commonJS({
4871
- "../node_modules/@colors/colors/lib/maps/rainbow.js"(exports, module) {
4872
- module.exports = function(colors3) {
4873
- var rainbowColors = ["red", "yellow", "green", "blue", "magenta"];
4874
- return function(letter, i, exploded) {
4875
- return letter === " " ? letter : colors3[rainbowColors[i++ % rainbowColors.length]](letter);
4876
- };
4877
- };
4878
- }
4879
- });
4880
-
4881
- // ../node_modules/@colors/colors/lib/maps/random.js
4882
- var require_random = __commonJS({
4883
- "../node_modules/@colors/colors/lib/maps/random.js"(exports, module) {
4884
- module.exports = function(colors3) {
4885
- var available = [
4886
- "underline",
4887
- "inverse",
4888
- "grey",
4889
- "yellow",
4890
- "red",
4891
- "green",
4892
- "blue",
4893
- "white",
4894
- "cyan",
4895
- "magenta",
4896
- "brightYellow",
4897
- "brightRed",
4898
- "brightGreen",
4899
- "brightBlue",
4900
- "brightWhite",
4901
- "brightCyan",
4902
- "brightMagenta"
4903
- ];
4904
- return function(letter, i, exploded) {
4905
- return letter === " " ? letter : colors3[available[Math.round(Math.random() * (available.length - 2))]](letter);
4906
- };
4907
- };
4908
- }
4909
- });
4910
-
4911
- // ../node_modules/@colors/colors/lib/colors.js
4912
- var require_colors = __commonJS({
4913
- "../node_modules/@colors/colors/lib/colors.js"(exports, module) {
4914
- var colors3 = {};
4915
- module.exports = colors3;
4916
- colors3.themes = {};
4917
- var util = __require("util"), ansiStyles = colors3.styles = require_styles(), defineProps = Object.defineProperties, newLineRegex = new RegExp(/[\r\n]+/g);
4918
- colors3.supportsColor = require_supports_colors().supportsColor;
4919
- typeof colors3.enabled > "u" && (colors3.enabled = colors3.supportsColor() !== !1);
4920
- colors3.enable = function() {
4921
- colors3.enabled = !0;
4922
- };
4923
- colors3.disable = function() {
4924
- colors3.enabled = !1;
4925
- };
4926
- colors3.stripColors = colors3.strip = function(str) {
4927
- return ("" + str).replace(/\x1B\[\d+m/g, "");
4928
- };
4929
- var stylize = colors3.stylize = function(str, style) {
4930
- if (!colors3.enabled)
4931
- return str + "";
4932
- var styleMap = ansiStyles[style];
4933
- return !styleMap && style in colors3 ? colors3[style](str) : styleMap.open + str + styleMap.close;
4934
- }, matchOperatorsRe = /[|\\{}()[\]^$+*?.]/g, escapeStringRegexp = function(str) {
4935
- if (typeof str != "string")
4936
- throw new TypeError("Expected a string");
4937
- return str.replace(matchOperatorsRe, "\\$&");
4938
- };
4939
- function build2(_styles) {
4940
- var builder = function builder2() {
4941
- return applyStyle.apply(builder2, arguments);
4942
- };
4943
- return builder._styles = _styles, builder.__proto__ = proto, builder;
4944
- }
4945
- var styles = (function() {
4946
- var ret = {};
4947
- return ansiStyles.grey = ansiStyles.gray, Object.keys(ansiStyles).forEach(function(key) {
4948
- ansiStyles[key].closeRe = new RegExp(escapeStringRegexp(ansiStyles[key].close), "g"), ret[key] = {
4949
- get: function() {
4950
- return build2(this._styles.concat(key));
4951
- }
4952
- };
4953
- }), ret;
4954
- })(), proto = defineProps(function() {
4955
- }, styles);
4956
- function applyStyle() {
4957
- var args = Array.prototype.slice.call(arguments), str = args.map(function(arg) {
4958
- return arg != null && arg.constructor === String ? arg : util.inspect(arg);
4959
- }).join(" ");
4960
- if (!colors3.enabled || !str)
4961
- return str;
4962
- for (var newLinesPresent = str.indexOf(`
4963
- `) != -1, nestedStyles = this._styles, i = nestedStyles.length; i--; ) {
4964
- var code = ansiStyles[nestedStyles[i]];
4965
- str = code.open + str.replace(code.closeRe, code.open) + code.close, newLinesPresent && (str = str.replace(newLineRegex, function(match) {
4966
- return code.close + match + code.open;
4967
- }));
4968
- }
4969
- return str;
4970
- }
4971
- colors3.setTheme = function(theme) {
4972
- if (typeof theme == "string") {
4973
- console.log("colors.setTheme now only accepts an object, not a string. If you are trying to set a theme from a file, it is now your (the caller's) responsibility to require the file. The old syntax looked like colors.setTheme(__dirname + '/../themes/generic-logging.js'); The new syntax looks like colors.setTheme(require(__dirname + '/../themes/generic-logging.js'));");
4974
- return;
4975
- }
4976
- for (var style in theme)
4977
- (function(style2) {
4978
- colors3[style2] = function(str) {
4979
- if (typeof theme[style2] == "object") {
4980
- var out = str;
4981
- for (var i in theme[style2])
4982
- out = colors3[theme[style2][i]](out);
4983
- return out;
4984
- }
4985
- return colors3[theme[style2]](str);
4986
- };
4987
- })(style);
4988
- };
4989
- function init() {
4990
- var ret = {};
4991
- return Object.keys(styles).forEach(function(name) {
4992
- ret[name] = {
4993
- get: function() {
4994
- return build2([name]);
4995
- }
4996
- };
4997
- }), ret;
4998
- }
4999
- var sequencer = function(map2, str) {
5000
- var exploded = str.split("");
5001
- return exploded = exploded.map(map2), exploded.join("");
5002
- };
5003
- colors3.trap = require_trap();
5004
- colors3.zalgo = require_zalgo();
5005
- colors3.maps = {};
5006
- colors3.maps.america = require_america()(colors3);
5007
- colors3.maps.zebra = require_zebra()(colors3);
5008
- colors3.maps.rainbow = require_rainbow()(colors3);
5009
- colors3.maps.random = require_random()(colors3);
5010
- for (map in colors3.maps)
5011
- (function(map2) {
5012
- colors3[map2] = function(str) {
5013
- return sequencer(colors3.maps[map2], str);
5014
- };
5015
- })(map);
5016
- var map;
5017
- defineProps(colors3, init());
5018
- }
5019
- });
5020
-
5021
- // ../node_modules/@colors/colors/safe.js
5022
- var require_safe = __commonJS({
5023
- "../node_modules/@colors/colors/safe.js"(exports, module) {
5024
- var colors3 = require_colors();
5025
- module.exports = colors3;
5026
- }
5027
- });
5028
-
5029
- // ../node_modules/cli-table3/src/cell.js
5030
- var require_cell = __commonJS({
5031
- "../node_modules/cli-table3/src/cell.js"(exports, module) {
5032
- var { info, debug } = require_debug(), utils = require_utils2(), Cell = class _Cell {
5033
- /**
5034
- * A representation of a cell within the table.
5035
- * Implementations must have `init` and `draw` methods,
5036
- * as well as `colSpan`, `rowSpan`, `desiredHeight` and `desiredWidth` properties.
5037
- * @param options
5038
- * @constructor
5039
- */
5040
- constructor(options) {
5041
- this.setOptions(options), this.x = null, this.y = null;
5042
- }
5043
- setOptions(options) {
5044
- ["boolean", "number", "bigint", "string"].indexOf(typeof options) !== -1 && (options = { content: "" + options }), options = options || {}, this.options = options;
5045
- let content = options.content;
5046
- if (["boolean", "number", "bigint", "string"].indexOf(typeof content) !== -1)
5047
- this.content = String(content);
5048
- else if (!content)
5049
- this.content = this.options.href || "";
5050
- else
5051
- throw new Error("Content needs to be a primitive, got: " + typeof content);
5052
- this.colSpan = options.colSpan || 1, this.rowSpan = options.rowSpan || 1, this.options.href && Object.defineProperty(this, "href", {
5053
- get() {
5054
- return this.options.href;
5055
- }
5056
- });
5057
- }
5058
- mergeTableOptions(tableOptions, cells) {
5059
- this.cells = cells;
5060
- let optionsChars = this.options.chars || {}, tableChars = tableOptions.chars, chars = this.chars = {};
5061
- CHAR_NAMES.forEach(function(name) {
5062
- setOption(optionsChars, tableChars, name, chars);
5063
- }), this.truncate = this.options.truncate || tableOptions.truncate;
5064
- let style = this.options.style = this.options.style || {}, tableStyle = tableOptions.style;
5065
- setOption(style, tableStyle, "padding-left", this), setOption(style, tableStyle, "padding-right", this), this.head = style.head || tableStyle.head, this.border = style.border || tableStyle.border, this.fixedWidth = tableOptions.colWidths[this.x], this.lines = this.computeLines(tableOptions), this.desiredWidth = utils.strlen(this.content) + this.paddingLeft + this.paddingRight, this.desiredHeight = this.lines.length;
5066
- }
5067
- computeLines(tableOptions) {
5068
- let tableWordWrap = tableOptions.wordWrap || tableOptions.textWrap, { wordWrap = tableWordWrap } = this.options;
5069
- if (this.fixedWidth && wordWrap) {
5070
- if (this.fixedWidth -= this.paddingLeft + this.paddingRight, this.colSpan) {
5071
- let i = 1;
5072
- for (; i < this.colSpan; )
5073
- this.fixedWidth += tableOptions.colWidths[this.x + i], i++;
5074
- }
5075
- let { wrapOnWordBoundary: tableWrapOnWordBoundary = !0 } = tableOptions, { wrapOnWordBoundary = tableWrapOnWordBoundary } = this.options;
5076
- return this.wrapLines(utils.wordWrap(this.fixedWidth, this.content, wrapOnWordBoundary));
5077
- }
5078
- return this.wrapLines(this.content.split(`
5079
- `));
5080
- }
5081
- wrapLines(computedLines) {
5082
- let lines = utils.colorizeLines(computedLines);
5083
- return this.href ? lines.map((line) => utils.hyperlink(this.href, line)) : lines;
5084
- }
5085
- /**
5086
- * Initializes the Cells data structure.
5087
- *
5088
- * @param tableOptions - A fully populated set of tableOptions.
5089
- * In addition to the standard default values, tableOptions must have fully populated the
5090
- * `colWidths` and `rowWidths` arrays. Those arrays must have lengths equal to the number
5091
- * of columns or rows (respectively) in this table, and each array item must be a Number.
5092
- *
5093
- */
5094
- init(tableOptions) {
5095
- let x = this.x, y = this.y;
5096
- this.widths = tableOptions.colWidths.slice(x, x + this.colSpan), this.heights = tableOptions.rowHeights.slice(y, y + this.rowSpan), this.width = this.widths.reduce(sumPlusOne, -1), this.height = this.heights.reduce(sumPlusOne, -1), this.hAlign = this.options.hAlign || tableOptions.colAligns[x], this.vAlign = this.options.vAlign || tableOptions.rowAligns[y], this.drawRight = x + this.colSpan == tableOptions.colWidths.length;
5097
- }
5098
- /**
5099
- * Draws the given line of the cell.
5100
- * This default implementation defers to methods `drawTop`, `drawBottom`, `drawLine` and `drawEmpty`.
5101
- * @param lineNum - can be `top`, `bottom` or a numerical line number.
5102
- * @param spanningCell - will be a number if being called from a RowSpanCell, and will represent how
5103
- * many rows below it's being called from. Otherwise it's undefined.
5104
- * @returns {String} The representation of this line.
5105
- */
5106
- draw(lineNum, spanningCell) {
5107
- if (lineNum == "top") return this.drawTop(this.drawRight);
5108
- if (lineNum == "bottom") return this.drawBottom(this.drawRight);
5109
- let content = utils.truncate(this.content, 10, this.truncate);
5110
- lineNum || info(`${this.y}-${this.x}: ${this.rowSpan - lineNum}x${this.colSpan} Cell ${content}`);
5111
- let padLen = Math.max(this.height - this.lines.length, 0), padTop;
5112
- switch (this.vAlign) {
5113
- case "center":
5114
- padTop = Math.ceil(padLen / 2);
5115
- break;
5116
- case "bottom":
5117
- padTop = padLen;
5118
- break;
5119
- default:
5120
- padTop = 0;
5121
- }
5122
- if (lineNum < padTop || lineNum >= padTop + this.lines.length)
5123
- return this.drawEmpty(this.drawRight, spanningCell);
5124
- let forceTruncation = this.lines.length > this.height && lineNum + 1 >= this.height;
5125
- return this.drawLine(lineNum - padTop, this.drawRight, forceTruncation, spanningCell);
5126
- }
5127
- /**
5128
- * Renders the top line of the cell.
5129
- * @param drawRight - true if this method should render the right edge of the cell.
5130
- * @returns {String}
5131
- */
5132
- drawTop(drawRight) {
5133
- let content = [];
5134
- return this.cells ? this.widths.forEach(function(width, index) {
5135
- content.push(this._topLeftChar(index)), content.push(utils.repeat(this.chars[this.y == 0 ? "top" : "mid"], width));
5136
- }, this) : (content.push(this._topLeftChar(0)), content.push(utils.repeat(this.chars[this.y == 0 ? "top" : "mid"], this.width))), drawRight && content.push(this.chars[this.y == 0 ? "topRight" : "rightMid"]), this.wrapWithStyleColors("border", content.join(""));
5137
- }
5138
- _topLeftChar(offset) {
5139
- let x = this.x + offset, leftChar;
5140
- if (this.y == 0)
5141
- leftChar = x == 0 ? "topLeft" : offset == 0 ? "topMid" : "top";
5142
- else if (x == 0)
5143
- leftChar = "leftMid";
5144
- else if (leftChar = offset == 0 ? "midMid" : "bottomMid", this.cells && (this.cells[this.y - 1][x] instanceof _Cell.ColSpanCell && (leftChar = offset == 0 ? "topMid" : "mid"), offset == 0)) {
5145
- let i = 1;
5146
- for (; this.cells[this.y][x - i] instanceof _Cell.ColSpanCell; )
5147
- i++;
5148
- this.cells[this.y][x - i] instanceof _Cell.RowSpanCell && (leftChar = "leftMid");
5149
- }
5150
- return this.chars[leftChar];
5151
- }
5152
- wrapWithStyleColors(styleProperty, content) {
5153
- if (this[styleProperty] && this[styleProperty].length)
5154
- try {
5155
- let colors3 = require_safe();
5156
- for (let i = this[styleProperty].length - 1; i >= 0; i--)
5157
- colors3 = colors3[this[styleProperty][i]];
5158
- return colors3(content);
5159
- } catch {
5160
- return content;
5161
- }
5162
- else
5163
- return content;
5164
- }
5165
- /**
5166
- * Renders a line of text.
5167
- * @param lineNum - Which line of text to render. This is not necessarily the line within the cell.
5168
- * There may be top-padding above the first line of text.
5169
- * @param drawRight - true if this method should render the right edge of the cell.
5170
- * @param forceTruncationSymbol - `true` if the rendered text should end with the truncation symbol even
5171
- * if the text fits. This is used when the cell is vertically truncated. If `false` the text should
5172
- * only include the truncation symbol if the text will not fit horizontally within the cell width.
5173
- * @param spanningCell - a number of if being called from a RowSpanCell. (how many rows below). otherwise undefined.
5174
- * @returns {String}
5175
- */
5176
- drawLine(lineNum, drawRight, forceTruncationSymbol, spanningCell) {
5177
- let left = this.chars[this.x == 0 ? "left" : "middle"];
5178
- if (this.x && spanningCell && this.cells) {
5179
- let cellLeft = this.cells[this.y + spanningCell][this.x - 1];
5180
- for (; cellLeft instanceof ColSpanCell; )
5181
- cellLeft = this.cells[cellLeft.y][cellLeft.x - 1];
5182
- cellLeft instanceof RowSpanCell || (left = this.chars.rightMid);
5183
- }
5184
- let leftPadding = utils.repeat(" ", this.paddingLeft), right = drawRight ? this.chars.right : "", rightPadding = utils.repeat(" ", this.paddingRight), line = this.lines[lineNum], len = this.width - (this.paddingLeft + this.paddingRight);
5185
- forceTruncationSymbol && (line += this.truncate || "\u2026");
5186
- let content = utils.truncate(line, len, this.truncate);
5187
- return content = utils.pad(content, len, " ", this.hAlign), content = leftPadding + content + rightPadding, this.stylizeLine(left, content, right);
5188
- }
5189
- stylizeLine(left, content, right) {
5190
- return left = this.wrapWithStyleColors("border", left), right = this.wrapWithStyleColors("border", right), this.y === 0 && (content = this.wrapWithStyleColors("head", content)), left + content + right;
5191
- }
5192
- /**
5193
- * Renders the bottom line of the cell.
5194
- * @param drawRight - true if this method should render the right edge of the cell.
5195
- * @returns {String}
5196
- */
5197
- drawBottom(drawRight) {
5198
- let left = this.chars[this.x == 0 ? "bottomLeft" : "bottomMid"], content = utils.repeat(this.chars.bottom, this.width), right = drawRight ? this.chars.bottomRight : "";
5199
- return this.wrapWithStyleColors("border", left + content + right);
5200
- }
5201
- /**
5202
- * Renders a blank line of text within the cell. Used for top and/or bottom padding.
5203
- * @param drawRight - true if this method should render the right edge of the cell.
5204
- * @param spanningCell - a number of if being called from a RowSpanCell. (how many rows below). otherwise undefined.
5205
- * @returns {String}
5206
- */
5207
- drawEmpty(drawRight, spanningCell) {
5208
- let left = this.chars[this.x == 0 ? "left" : "middle"];
5209
- if (this.x && spanningCell && this.cells) {
5210
- let cellLeft = this.cells[this.y + spanningCell][this.x - 1];
5211
- for (; cellLeft instanceof ColSpanCell; )
5212
- cellLeft = this.cells[cellLeft.y][cellLeft.x - 1];
5213
- cellLeft instanceof RowSpanCell || (left = this.chars.rightMid);
5214
- }
5215
- let right = drawRight ? this.chars.right : "", content = utils.repeat(" ", this.width);
5216
- return this.stylizeLine(left, content, right);
5217
- }
5218
- }, ColSpanCell = class {
5219
- /**
5220
- * A Cell that doesn't do anything. It just draws empty lines.
5221
- * Used as a placeholder in column spanning.
5222
- * @constructor
5223
- */
5224
- constructor() {
5225
- }
5226
- draw(lineNum) {
5227
- return typeof lineNum == "number" && debug(`${this.y}-${this.x}: 1x1 ColSpanCell`), "";
5228
- }
5229
- init() {
5230
- }
5231
- mergeTableOptions() {
5232
- }
5233
- }, RowSpanCell = class {
5234
- /**
5235
- * A placeholder Cell for a Cell that spans multiple rows.
5236
- * It delegates rendering to the original cell, but adds the appropriate offset.
5237
- * @param originalCell
5238
- * @constructor
5239
- */
5240
- constructor(originalCell) {
5241
- this.originalCell = originalCell;
5242
- }
5243
- init(tableOptions) {
5244
- let y = this.y, originalY = this.originalCell.y;
5245
- this.cellOffset = y - originalY, this.offset = findDimension(tableOptions.rowHeights, originalY, this.cellOffset);
5246
- }
5247
- draw(lineNum) {
5248
- return lineNum == "top" ? this.originalCell.draw(this.offset, this.cellOffset) : lineNum == "bottom" ? this.originalCell.draw("bottom") : (debug(`${this.y}-${this.x}: 1x${this.colSpan} RowSpanCell for ${this.originalCell.content}`), this.originalCell.draw(this.offset + 1 + lineNum));
5249
- }
5250
- mergeTableOptions() {
5251
- }
5252
- };
5253
- function firstDefined(...args) {
5254
- return args.filter((v) => v != null).shift();
5255
- }
5256
- function setOption(objA, objB, nameB, targetObj) {
5257
- let nameA = nameB.split("-");
5258
- nameA.length > 1 ? (nameA[1] = nameA[1].charAt(0).toUpperCase() + nameA[1].substr(1), nameA = nameA.join(""), targetObj[nameA] = firstDefined(objA[nameA], objA[nameB], objB[nameA], objB[nameB])) : targetObj[nameB] = firstDefined(objA[nameB], objB[nameB]);
5259
- }
5260
- function findDimension(dimensionTable, startingIndex, span) {
5261
- let ret = dimensionTable[startingIndex];
5262
- for (let i = 1; i < span; i++)
5263
- ret += 1 + dimensionTable[startingIndex + i];
5264
- return ret;
5265
- }
5266
- function sumPlusOne(a, b) {
5267
- return a + b + 1;
5268
- }
5269
- var CHAR_NAMES = [
5270
- "top",
5271
- "top-mid",
5272
- "top-left",
5273
- "top-right",
5274
- "bottom",
5275
- "bottom-mid",
5276
- "bottom-left",
5277
- "bottom-right",
5278
- "left",
5279
- "left-mid",
5280
- "mid",
5281
- "mid-mid",
5282
- "right",
5283
- "right-mid",
5284
- "middle"
5285
- ];
5286
- module.exports = Cell;
5287
- module.exports.ColSpanCell = ColSpanCell;
5288
- module.exports.RowSpanCell = RowSpanCell;
5289
- }
5290
- });
5291
-
5292
- // ../node_modules/cli-table3/src/layout-manager.js
5293
- var require_layout_manager = __commonJS({
5294
- "../node_modules/cli-table3/src/layout-manager.js"(exports, module) {
5295
- var { warn, debug } = require_debug(), Cell = require_cell(), { ColSpanCell, RowSpanCell } = Cell;
5296
- (function() {
5297
- function next(alloc, col) {
5298
- return alloc[col] > 0 ? next(alloc, col + 1) : col;
5299
- }
5300
- function layoutTable(table) {
5301
- let alloc = {};
5302
- table.forEach(function(row, rowIndex) {
5303
- let col = 0;
5304
- row.forEach(function(cell) {
5305
- cell.y = rowIndex, cell.x = rowIndex ? next(alloc, col) : col;
5306
- let rowSpan = cell.rowSpan || 1, colSpan = cell.colSpan || 1;
5307
- if (rowSpan > 1)
5308
- for (let cs = 0; cs < colSpan; cs++)
5309
- alloc[cell.x + cs] = rowSpan;
5310
- col = cell.x + colSpan;
5311
- }), Object.keys(alloc).forEach((idx) => {
5312
- alloc[idx]--, alloc[idx] < 1 && delete alloc[idx];
5313
- });
5314
- });
5315
- }
5316
- function maxWidth(table) {
5317
- let mw = 0;
5318
- return table.forEach(function(row) {
5319
- row.forEach(function(cell) {
5320
- mw = Math.max(mw, cell.x + (cell.colSpan || 1));
5321
- });
5322
- }), mw;
5323
- }
5324
- function maxHeight(table) {
5325
- return table.length;
5326
- }
5327
- function cellsConflict(cell1, cell2) {
5328
- let yMin1 = cell1.y, yMax1 = cell1.y - 1 + (cell1.rowSpan || 1), yMin2 = cell2.y, yMax2 = cell2.y - 1 + (cell2.rowSpan || 1), yConflict = !(yMin1 > yMax2 || yMin2 > yMax1), xMin1 = cell1.x, xMax1 = cell1.x - 1 + (cell1.colSpan || 1), xMin2 = cell2.x, xMax2 = cell2.x - 1 + (cell2.colSpan || 1), xConflict = !(xMin1 > xMax2 || xMin2 > xMax1);
5329
- return yConflict && xConflict;
5330
- }
5331
- function conflictExists(rows, x, y) {
5332
- let i_max = Math.min(rows.length - 1, y), cell = { x, y };
5333
- for (let i = 0; i <= i_max; i++) {
5334
- let row = rows[i];
5335
- for (let j = 0; j < row.length; j++)
5336
- if (cellsConflict(cell, row[j]))
5337
- return !0;
5338
- }
5339
- return !1;
5340
- }
5341
- function allBlank(rows, y, xMin, xMax) {
5342
- for (let x = xMin; x < xMax; x++)
5343
- if (conflictExists(rows, x, y))
5344
- return !1;
5345
- return !0;
5346
- }
5347
- function addRowSpanCells(table) {
5348
- table.forEach(function(row, rowIndex) {
5349
- row.forEach(function(cell) {
5350
- for (let i = 1; i < cell.rowSpan; i++) {
5351
- let rowSpanCell = new RowSpanCell(cell);
5352
- rowSpanCell.x = cell.x, rowSpanCell.y = cell.y + i, rowSpanCell.colSpan = cell.colSpan, insertCell(rowSpanCell, table[rowIndex + i]);
5353
- }
5354
- });
5355
- });
5356
- }
5357
- function addColSpanCells(cellRows) {
5358
- for (let rowIndex = cellRows.length - 1; rowIndex >= 0; rowIndex--) {
5359
- let cellColumns = cellRows[rowIndex];
5360
- for (let columnIndex = 0; columnIndex < cellColumns.length; columnIndex++) {
5361
- let cell = cellColumns[columnIndex];
5362
- for (let k = 1; k < cell.colSpan; k++) {
5363
- let colSpanCell = new ColSpanCell();
5364
- colSpanCell.x = cell.x + k, colSpanCell.y = cell.y, cellColumns.splice(columnIndex + 1, 0, colSpanCell);
5365
- }
5366
- }
5367
- }
5368
- }
5369
- function insertCell(cell, row) {
5370
- let x = 0;
5371
- for (; x < row.length && row[x].x < cell.x; )
5372
- x++;
5373
- row.splice(x, 0, cell);
5374
- }
5375
- function fillInTable(table) {
5376
- let h_max = maxHeight(table), w_max = maxWidth(table);
5377
- debug(`Max rows: ${h_max}; Max cols: ${w_max}`);
5378
- for (let y = 0; y < h_max; y++)
5379
- for (let x = 0; x < w_max; x++)
5380
- if (!conflictExists(table, x, y)) {
5381
- let opts = { x, y, colSpan: 1, rowSpan: 1 };
5382
- for (x++; x < w_max && !conflictExists(table, x, y); )
5383
- opts.colSpan++, x++;
5384
- let y2 = y + 1;
5385
- for (; y2 < h_max && allBlank(table, y2, opts.x, opts.x + opts.colSpan); )
5386
- opts.rowSpan++, y2++;
5387
- let cell = new Cell(opts);
5388
- cell.x = opts.x, cell.y = opts.y, warn(`Missing cell at ${cell.y}-${cell.x}.`), insertCell(cell, table[y]);
5389
- }
5390
- }
5391
- function generateCells(rows) {
5392
- return rows.map(function(row) {
5393
- if (!Array.isArray(row)) {
5394
- let key = Object.keys(row)[0];
5395
- row = row[key], Array.isArray(row) ? (row = row.slice(), row.unshift(key)) : row = [key, row];
5396
- }
5397
- return row.map(function(cell) {
5398
- return new Cell(cell);
5399
- });
5400
- });
5401
- }
5402
- function makeTableLayout(rows) {
5403
- let cellRows = generateCells(rows);
5404
- return layoutTable(cellRows), fillInTable(cellRows), addRowSpanCells(cellRows), addColSpanCells(cellRows), cellRows;
5405
- }
5406
- module.exports = {
5407
- makeTableLayout,
5408
- layoutTable,
5409
- addRowSpanCells,
5410
- maxWidth,
5411
- fillInTable,
5412
- computeWidths: makeComputeWidths("colSpan", "desiredWidth", "x", 1),
5413
- computeHeights: makeComputeWidths("rowSpan", "desiredHeight", "y", 1)
5414
- };
5415
- })();
5416
- function makeComputeWidths(colSpan, desiredWidth, x, forcedMin) {
5417
- return function(vals, table) {
5418
- let result = [], spanners = [], auto = {};
5419
- table.forEach(function(row) {
5420
- row.forEach(function(cell) {
5421
- (cell[colSpan] || 1) > 1 ? spanners.push(cell) : result[cell[x]] = Math.max(result[cell[x]] || 0, cell[desiredWidth] || 0, forcedMin);
5422
- });
5423
- }), vals.forEach(function(val, index) {
5424
- typeof val == "number" && (result[index] = val);
5425
- });
5426
- for (let k = spanners.length - 1; k >= 0; k--) {
5427
- let cell = spanners[k], span = cell[colSpan], col = cell[x], existingWidth = result[col], editableCols = typeof vals[col] == "number" ? 0 : 1;
5428
- if (typeof existingWidth == "number")
5429
- for (let i = 1; i < span; i++)
5430
- existingWidth += 1 + result[col + i], typeof vals[col + i] != "number" && editableCols++;
5431
- else
5432
- existingWidth = desiredWidth === "desiredWidth" ? cell.desiredWidth - 1 : 1, (!auto[col] || auto[col] < existingWidth) && (auto[col] = existingWidth);
5433
- if (cell[desiredWidth] > existingWidth) {
5434
- let i = 0;
5435
- for (; editableCols > 0 && cell[desiredWidth] > existingWidth; ) {
5436
- if (typeof vals[col + i] != "number") {
5437
- let dif = Math.round((cell[desiredWidth] - existingWidth) / editableCols);
5438
- existingWidth += dif, result[col + i] += dif, editableCols--;
5439
- }
5440
- i++;
5441
- }
5442
- }
5443
- }
5444
- Object.assign(vals, result, auto);
5445
- for (let j = 0; j < vals.length; j++)
5446
- vals[j] = Math.max(forcedMin, vals[j] || 0);
5447
- };
5448
- }
5449
- }
5450
- });
5451
-
5452
- // ../node_modules/cli-table3/src/table.js
5453
- var require_table = __commonJS({
5454
- "../node_modules/cli-table3/src/table.js"(exports, module) {
5455
- var debug = require_debug(), utils = require_utils2(), tableLayout = require_layout_manager(), Table2 = class extends Array {
5456
- constructor(opts) {
5457
- super();
5458
- let options = utils.mergeOptions(opts);
5459
- if (Object.defineProperty(this, "options", {
5460
- value: options,
5461
- enumerable: options.debug
5462
- }), options.debug) {
5463
- switch (typeof options.debug) {
5464
- case "boolean":
5465
- debug.setDebugLevel(debug.WARN);
5466
- break;
5467
- case "number":
5468
- debug.setDebugLevel(options.debug);
5469
- break;
5470
- case "string":
5471
- debug.setDebugLevel(parseInt(options.debug, 10));
5472
- break;
5473
- default:
5474
- debug.setDebugLevel(debug.WARN), debug.warn(`Debug option is expected to be boolean, number, or string. Received a ${typeof options.debug}`);
5475
- }
5476
- Object.defineProperty(this, "messages", {
5477
- get() {
5478
- return debug.debugMessages();
5479
- }
5480
- });
5481
- }
5482
- }
5483
- toString() {
5484
- let array = this, headersPresent = this.options.head && this.options.head.length;
5485
- headersPresent ? (array = [this.options.head], this.length && array.push.apply(array, this)) : this.options.style.head = [];
5486
- let cells = tableLayout.makeTableLayout(array);
5487
- cells.forEach(function(row) {
5488
- row.forEach(function(cell) {
5489
- cell.mergeTableOptions(this.options, cells);
5490
- }, this);
5491
- }, this), tableLayout.computeWidths(this.options.colWidths, cells), tableLayout.computeHeights(this.options.rowHeights, cells), cells.forEach(function(row) {
5492
- row.forEach(function(cell) {
5493
- cell.init(this.options);
5494
- }, this);
5495
- }, this);
5496
- let result = [];
5497
- for (let rowIndex = 0; rowIndex < cells.length; rowIndex++) {
5498
- let row = cells[rowIndex], heightOfRow = this.options.rowHeights[rowIndex];
5499
- (rowIndex === 0 || !this.options.style.compact || rowIndex == 1 && headersPresent) && doDraw(row, "top", result);
5500
- for (let lineNum = 0; lineNum < heightOfRow; lineNum++)
5501
- doDraw(row, lineNum, result);
5502
- rowIndex + 1 == cells.length && doDraw(row, "bottom", result);
5503
- }
5504
- return result.join(`
5505
- `);
5506
- }
5507
- get width() {
5508
- return this.toString().split(`
5509
- `)[0].length;
5510
- }
5511
- };
5512
- Table2.reset = () => debug.reset();
5513
- function doDraw(row, lineNum, result) {
5514
- let line = [];
5515
- row.forEach(function(cell) {
5516
- line.push(cell.draw(lineNum));
5517
- });
5518
- let str = line.join("");
5519
- str.length && result.push(str);
5520
- }
5521
- module.exports = Table2;
5522
- }
5523
- });
5524
-
5525
- // ../node_modules/cli-table3/index.js
5526
- var require_cli_table3 = __commonJS({
5527
- "../node_modules/cli-table3/index.js"(exports, module) {
5528
- module.exports = require_table();
5529
- }
5530
- });
5531
-
5532
4242
  // src/core-server/index.ts
5533
4243
  import { getPreviewHeadTemplate, getPreviewBodyTemplate } from "storybook/internal/common";
5534
4244
 
@@ -6295,7 +5005,7 @@ function serializeTsType(tsType) {
6295
5005
  // src/core-server/utils/StoryIndexGenerator.ts
6296
5006
  import { existsSync } from "node:fs";
6297
5007
  import { readFile } from "node:fs/promises";
6298
- import { dirname, extname, join as join2, normalize, relative as relative2, resolve as resolve2, sep } from "node:path";
5008
+ import { dirname as dirname2, extname, join as join2, normalize, relative as relative2, resolve as resolve2, sep } from "node:path";
6299
5009
  import { commonGlobOptions, getProjectRoot, normalizeStoryPath } from "storybook/internal/common";
6300
5010
  import { combineTags, storyNameFromExport, toId } from "storybook/internal/csf";
6301
5011
  import { getStorySortParameter, loadConfig } from "storybook/internal/csf-tools";
@@ -6410,7 +5120,7 @@ var AUTODOCS_TAG = "autodocs", ATTACHED_MDX_TAG = "attached-mdx", UNATTACHED_MDX
6410
5120
  function isMdxEntry({ tags }) {
6411
5121
  return tags?.includes(UNATTACHED_MDX_TAG) || tags?.includes(ATTACHED_MDX_TAG);
6412
5122
  }
6413
- var makeAbsolute = (otherImport, normalizedPath, workingDir) => otherImport.startsWith(".") ? slash(resolve2(workingDir, normalizeStoryPath(join2(dirname(normalizedPath), otherImport)))) : otherImport, StoryIndexGenerator = class _StoryIndexGenerator {
5123
+ var makeAbsolute = (otherImport, normalizedPath, workingDir) => otherImport.startsWith(".") ? slash(resolve2(workingDir, normalizeStoryPath(join2(dirname2(normalizedPath), otherImport)))) : otherImport, StoryIndexGenerator = class _StoryIndexGenerator {
6414
5124
  constructor(specifiers, options) {
6415
5125
  this.specifiers = specifiers;
6416
5126
  this.options = options;
@@ -6437,7 +5147,7 @@ var makeAbsolute = (otherImport, normalizedPath, workingDir) => otherImport.star
6437
5147
  let cacheKey = this.getFindMatchingFilesCacheKey(specifier, workingDir, ignoreWarnings), cached = this.findMatchingFilesCache.get(cacheKey);
6438
5148
  if (cached)
6439
5149
  return cached;
6440
- let pathToSubIndex = {}, globCwd = slash(resolve2(workingDir, specifier.directory)), globPattern = specifier.files, { globby } = await import("../_node-chunks/globby-6THB7HVX.js"), files = await globby(globPattern, {
5150
+ let pathToSubIndex = {}, globCwd = slash(resolve2(workingDir, specifier.directory)), globPattern = specifier.files, { globby } = await import("../_node-chunks/globby-GR24TGSK.js"), files = await globby(globPattern, {
6441
5151
  absolute: !0,
6442
5152
  cwd: globCwd,
6443
5153
  ...commonGlobOptions(globPattern)
@@ -6555,7 +5265,7 @@ var makeAbsolute = (otherImport, normalizedPath, workingDir) => otherImport.star
6555
5265
  resolveComponentPath(rawComponentPath, absolutePath, matchPath) {
6556
5266
  let matchedPath = matchPath?.(rawComponentPath, void 0, void 0, supportedExtensions) ?? rawComponentPath, resolved;
6557
5267
  try {
6558
- resolved = resolveImport(matchedPath, { basedir: dirname(absolutePath) });
5268
+ resolved = resolveImport(matchedPath, { basedir: dirname2(absolutePath) });
6559
5269
  } catch {
6560
5270
  return matchedPath;
6561
5271
  }
@@ -6626,7 +5336,7 @@ var makeAbsolute = (otherImport, normalizedPath, workingDir) => otherImport.star
6626
5336
  async extractDocs(specifier, absolutePath, projectTags = []) {
6627
5337
  let relativePath = relative2(this.options.workingDir, absolutePath);
6628
5338
  try {
6629
- let normalizedPath = normalizeStoryPath(relativePath), importPath = slash(normalizedPath), content = await readFile(absolutePath, { encoding: "utf8" }), { analyze } = await import("../_node-chunks/dist-DS2B5A3J.js"), result = await analyze(content);
5339
+ let normalizedPath = normalizeStoryPath(relativePath), importPath = slash(normalizedPath), content = await readFile(absolutePath, { encoding: "utf8" }), { analyze } = await import("../_node-chunks/dist-22CLJ4BC.js"), result = await analyze(content);
6630
5340
  if (result.isTemplate)
6631
5341
  return !1;
6632
5342
  let absoluteImports = result.imports.map(
@@ -6870,7 +5580,7 @@ async function copyAllStaticFilesRelativeToMain(staticDirs, outputDir, configDir
6870
5580
  })
6871
5581
  ), targetPath = join3(outputDir, to), skipPaths = ["index.html", "iframe.html"].map((f) => join3(outputDir, f));
6872
5582
  from.includes("node_modules") || logger2.info(
6873
- `=> Copying static files: ${import_picocolors2.default.cyan(print(from))} at ${import_picocolors2.default.cyan(print(targetPath))}`
5583
+ `Copying static files: ${import_picocolors2.default.cyan(print(from))} at ${import_picocolors2.default.cyan(print(targetPath))}`
6874
5584
  ), await cp(from, targetPath, {
6875
5585
  dereference: !0,
6876
5586
  preserveTimestamps: !0,
@@ -6886,7 +5596,7 @@ function print(p) {
6886
5596
  // src/core-server/utils/get-builders.ts
6887
5597
  import { MissingBuilderError } from "storybook/internal/server-errors";
6888
5598
  async function getManagerBuilder() {
6889
- return await import("../_node-chunks/builder-manager-YUOHSIUB.js");
5599
+ return await import("../_node-chunks/builder-manager-DWDUVXZM.js");
6890
5600
  }
6891
5601
  async function getPreviewBuilder(resolvedPreviewBuilder) {
6892
5602
  return await importModule(resolvedPreviewBuilder);
@@ -6921,11 +5631,11 @@ import { logger as logger3 } from "storybook/internal/node-logger";
6921
5631
  async function outputStats(directory, previewStats, managerStats) {
6922
5632
  if (previewStats) {
6923
5633
  let filePath = await writeStats(directory, "preview", previewStats);
6924
- logger3.info(`=> preview stats written to ${import_picocolors3.default.cyan(filePath)}`);
5634
+ logger3.info(`Preview stats written to ${import_picocolors3.default.cyan(filePath)}`);
6925
5635
  }
6926
5636
  if (managerStats) {
6927
5637
  let filePath = await writeStats(directory, "manager", managerStats);
6928
- logger3.info(`=> manager stats written to ${import_picocolors3.default.cyan(filePath)}`);
5638
+ logger3.info(`Manager stats written to ${import_picocolors3.default.cyan(filePath)}`);
6929
5639
  }
6930
5640
  }
6931
5641
  var writeStats = async (directory, name, stats) => {
@@ -7043,7 +5753,7 @@ function watchStorySpecifiers(specifiers, options, onInvalidate) {
7043
5753
  // files can be e.g. '**/foo/*/*.js' so we just want the last bit,
7044
5754
  // because the directory could already be within the files part (e.g. './x/foo/bar')
7045
5755
  basename2(specifier.files)
7046
- ), { globby } = await import("../_node-chunks/globby-6THB7HVX.js");
5756
+ ), { globby } = await import("../_node-chunks/globby-GR24TGSK.js");
7047
5757
  (await globby(slash(dirGlob), commonGlobOptions2(dirGlob))).forEach((filePath) => {
7048
5758
  let fileImportPath = toImportPath(filePath);
7049
5759
  specifier.importPathMatcher.exec(fileImportPath) && onInvalidate(specifier, fileImportPath, removed);
@@ -7154,9 +5864,7 @@ function summarizeIndex(storyIndex) {
7154
5864
  async function buildStaticStandalone(options) {
7155
5865
  if (options.configType = "PRODUCTION", options.outputDir === "")
7156
5866
  throw new Error("Won't remove current directory. Check your outputDir!");
7157
- if (options.outputDir = resolve(options.outputDir), options.configDir = resolve(options.configDir), logger4.info(
7158
- `=> Cleaning outputDir: ${import_picocolors4.default.cyan(relative(process.cwd(), options.outputDir))}`
7159
- ), options.outputDir === "/")
5867
+ if (options.outputDir = resolve(options.outputDir), options.configDir = resolve(options.configDir), logger4.step(`Cleaning outputDir: ${import_picocolors4.default.cyan(relative(process.cwd(), options.outputDir))}`), options.outputDir === "/")
7160
5868
  throw new Error("Won't remove directory '/'. Check your outputDir!");
7161
5869
  await rm(options.outputDir, { recursive: !0, force: !0 }).catch(() => {
7162
5870
  }), await mkdir(options.outputDir, { recursive: !0 });
@@ -7168,7 +5876,7 @@ async function buildStaticStandalone(options) {
7168
5876
  ), commonOverridePreset = import.meta.resolve(
7169
5877
  "storybook/internal/core-server/presets/common-override-preset"
7170
5878
  );
7171
- logger4.info("=> Loading presets");
5879
+ logger4.step("Loading presets");
7172
5880
  let presets = await loadAllPresets({
7173
5881
  corePresets: [commonPreset, ...corePresets],
7174
5882
  overridePresets: [commonOverridePreset],
@@ -7248,7 +5956,7 @@ async function buildStaticStandalone(options) {
7248
5956
  }
7249
5957
  core2?.disableProjectJson || effects.push(
7250
5958
  extractStorybookMetadata(join(options.outputDir, "project.json"), options.configDir)
7251
- ), options.debugWebpack && logConfig("Preview webpack config", await previewBuilder.getConfig(fullOptions)), options.ignorePreview ? logger4.info("=> Not building preview") : logger4.info("=> Building preview..");
5959
+ ), options.debugWebpack && logConfig("Preview webpack config", await previewBuilder.getConfig(fullOptions)), options.ignorePreview ? logger4.info("Not building preview") : logger4.info("Building preview..");
7252
5960
  let startTime = process.hrtime();
7253
5961
  await Promise.all([
7254
5962
  ...options.ignorePreview ? [] : [
@@ -7256,14 +5964,14 @@ async function buildStaticStandalone(options) {
7256
5964
  startTime,
7257
5965
  options: fullOptions
7258
5966
  }).then(async (previewStats) => {
7259
- logger4.trace({ message: "=> Preview built", time: process.hrtime(startTime) });
5967
+ logger4.trace({ message: "Preview built", time: process.hrtime(startTime) });
7260
5968
  let statsOption = options.webpackStatsJson || options.statsJson;
7261
5969
  if (statsOption) {
7262
5970
  let target = statsOption === !0 ? options.outputDir : statsOption;
7263
5971
  await outputStats(target, previewStats);
7264
5972
  }
7265
5973
  }).catch((error) => {
7266
- throw logger4.error("=> Failed to build the preview"), process.exitCode = 1, error;
5974
+ throw logger4.error("Failed to build the preview"), process.exitCode = 1, error;
7267
5975
  })
7268
5976
  ],
7269
5977
  ...effects
@@ -7276,7 +5984,7 @@ async function buildStaticStandalone(options) {
7276
5984
  storyIndex: summarizeIndex(storyIndex)
7277
5985
  }), await telemetry2("build", payload, { configDir: options.configDir });
7278
5986
  })
7279
- ), logger4.info(`=> Output directory: ${options.outputDir}`);
5987
+ ), logger4.step(`Output directory: ${options.outputDir}`);
7280
5988
  }
7281
5989
 
7282
5990
  // src/core-server/build-dev.ts
@@ -7293,11 +6001,10 @@ import {
7293
6001
  validateFrameworkName,
7294
6002
  versions
7295
6003
  } from "storybook/internal/common";
7296
- import { deprecate, logger as logger11 } from "storybook/internal/node-logger";
6004
+ import { deprecate, logger as logger12, prompt } from "storybook/internal/node-logger";
7297
6005
  import { MissingBuilderError as MissingBuilderError3, NoStatsForViteDevError } from "storybook/internal/server-errors";
7298
6006
  import { oneWayHash, telemetry as telemetry4 } from "storybook/internal/telemetry";
7299
6007
  import { global as global3 } from "@storybook/global";
7300
- var import_prompts = __toESM(require_prompts(), 1);
7301
6008
  var import_ts_dedent8 = __toESM(require_dist(), 1);
7302
6009
 
7303
6010
  // src/core-server/dev-server.ts
@@ -8525,14 +7232,14 @@ async function storybookDevServer(options) {
8525
7232
  server,
8526
7233
  channel: serverChannel
8527
7234
  }), previewResult = await Promise.resolve();
8528
- options.ignorePreview || (options.quiet || logger8.info("=> Starting preview.."), previewResult = await previewBuilder.start({
7235
+ options.ignorePreview || (logger8.debug("Starting preview.."), previewResult = await previewBuilder.start({
8529
7236
  startTime: process.hrtime(),
8530
7237
  options,
8531
7238
  router: app,
8532
7239
  server,
8533
7240
  channel: serverChannel
8534
7241
  }).catch(async (e) => {
8535
- throw logger8.error("=> Failed to build the preview"), process.exitCode = 1, await managerBuilder?.bail().catch(), await previewBuilder?.bail().catch(), e;
7242
+ throw logger8.error("Failed to build the preview"), process.exitCode = 1, await managerBuilder?.bail().catch(), await previewBuilder?.bail().catch(), e;
8536
7243
  }));
8537
7244
  let listening = new Promise((resolve4, reject) => {
8538
7245
  server.once("error", reject), app.listen({ port, host }, resolve4);
@@ -8596,8 +7303,8 @@ async function storybookDevServer(options) {
8596
7303
  }
8597
7304
 
8598
7305
  // src/core-server/utils/output-startup-information.ts
8599
- import { colors as colors2 } from "storybook/internal/node-logger";
8600
- var import_cli_table3 = __toESM(require_cli_table3(), 1), import_picocolors7 = __toESM(require_picocolors(), 1), import_pretty_hrtime = __toESM(require_pretty_hrtime(), 1), import_ts_dedent6 = __toESM(require_dist(), 1);
7306
+ var import_picocolors7 = __toESM(require_picocolors(), 1), import_pretty_hrtime = __toESM(require_pretty_hrtime(), 1), import_ts_dedent6 = __toESM(require_dist(), 1);
7307
+ import { CLI_COLORS, logger as logger9 } from "storybook/internal/node-logger";
8601
7308
 
8602
7309
  // src/core-server/utils/update-check.ts
8603
7310
  var import_picocolors6 = __toESM(require_picocolors(), 1), import_ts_dedent5 = __toESM(require_dist(), 1);
@@ -8641,62 +7348,39 @@ function createUpdateMessage(updateInfo, version) {
8641
7348
 
8642
7349
  // src/core-server/utils/output-startup-information.ts
8643
7350
  function outputStartupInformation(options) {
8644
- let { updateInfo, version, name, address, networkAddress, managerTotalTime, previewTotalTime } = options, updateMessage = createUpdateMessage(updateInfo, version), serveMessage = new import_cli_table3.default({
8645
- chars: {
8646
- top: "",
8647
- "top-mid": "",
8648
- "top-left": "",
8649
- "top-right": "",
8650
- bottom: "",
8651
- "bottom-mid": "",
8652
- "bottom-left": "",
8653
- "bottom-right": "",
8654
- left: "",
8655
- "left-mid": "",
8656
- mid: "",
8657
- "mid-mid": "",
8658
- right: "",
8659
- "right-mid": "",
8660
- middle: ""
8661
- },
8662
- // @ts-expect-error (Converted from ts-ignore)
8663
- paddingLeft: 0,
8664
- paddingRight: 0,
8665
- paddingTop: 0,
8666
- paddingBottom: 0
8667
- });
8668
- serveMessage.push(
8669
- ["Local:", import_picocolors7.default.cyan(address)],
8670
- ["On your network:", import_picocolors7.default.cyan(networkAddress)]
7351
+ let { updateInfo, version, name, address, networkAddress, managerTotalTime, previewTotalTime } = options, updateMessage = createUpdateMessage(updateInfo, version), serverMessages = [
7352
+ `- Local: ${address}`,
7353
+ `- On your network: ${networkAddress}`
7354
+ ];
7355
+ logger9.logBox(
7356
+ import_ts_dedent6.dedent`
7357
+ Storybook ready!
7358
+
7359
+ ${serverMessages.join(`
7360
+ `)}${updateMessage ? `
7361
+
7362
+ ${updateMessage}` : ""}
7363
+ `,
7364
+ {
7365
+ formatBorder: CLI_COLORS.storybook,
7366
+ contentPadding: 3,
7367
+ rounded: !0
7368
+ }
8671
7369
  );
8672
7370
  let timeStatement = [
8673
7371
  managerTotalTime && `${import_picocolors7.default.underline((0, import_pretty_hrtime.default)(managerTotalTime))} for manager`,
8674
7372
  previewTotalTime && `${import_picocolors7.default.underline((0, import_pretty_hrtime.default)(previewTotalTime))} for preview`
8675
7373
  ].filter(Boolean).join(" and ");
8676
- console.log(
8677
- boxen(
8678
- import_ts_dedent6.dedent`
8679
- ${colors2.green(
8680
- `Storybook ${import_picocolors7.default.bold(version)} for ${import_picocolors7.default.bold(name)} started`
8681
- )}
8682
- ${import_picocolors7.default.gray(timeStatement)}
8683
-
8684
- ${serveMessage.toString()}${updateMessage ? `
8685
-
8686
- ${updateMessage}` : ""}
8687
- `,
8688
- { borderStyle: "round", padding: 1, borderColor: "#F1618C" }
8689
- )
8690
- );
7374
+ logger9.info(timeStatement);
8691
7375
  }
8692
7376
 
8693
7377
  // src/core-server/utils/warnOnIncompatibleAddons.ts
8694
- import { logger as logger10 } from "storybook/internal/node-logger";
7378
+ import { logger as logger11 } from "storybook/internal/node-logger";
8695
7379
 
8696
7380
  // ../lib/cli-storybook/src/doctor/getIncompatibleStorybookPackages.ts
8697
7381
  var import_picocolors8 = __toESM(require_picocolors(), 1);
8698
7382
  import { versions as storybookCorePackages } from "storybook/internal/common";
8699
- import { logger as logger9 } from "storybook/internal/node-logger";
7383
+ import { logger as logger10 } from "storybook/internal/node-logger";
8700
7384
  import semver2 from "semver";
8701
7385
 
8702
7386
  // ../lib/cli-storybook/src/automigrate/helpers/consolidated-packages.ts
@@ -8756,7 +7440,7 @@ var checkPackageCompatibility = async (dependency, context) => {
8756
7440
  availableCoreUpdate
8757
7441
  };
8758
7442
  } catch (err) {
8759
- return skipErrors || logger9.log(
7443
+ return skipErrors || logger10.log(
8760
7444
  `Error checking compatibility for ${dependency}, please report an issue:
8761
7445
  ` + String(err)
8762
7446
  ), { packageName: dependency };
@@ -8826,7 +7510,7 @@ var warnOnIncompatibleAddons = async (currentStorybookVersion, packageManager) =
8826
7510
  incompatiblePackagesList,
8827
7511
  currentStorybookVersion
8828
7512
  );
8829
- incompatiblePackagesMessage && logger10.warn(incompatiblePackagesMessage);
7513
+ incompatiblePackagesMessage && logger11.warn(incompatiblePackagesMessage);
8830
7514
  };
8831
7515
 
8832
7516
  // src/core-server/utils/warnWhenUsingArgTypesRegex.ts
@@ -8877,15 +7561,13 @@ async function buildDevStandalone(options) {
8877
7561
  getServerPort(options.port, { exactPort: options.exactPort }),
8878
7562
  versionUpdates ? updateCheck(storybookVersion) : Promise.resolve({ success: !1, cached: !1, data: {}, time: Date.now() })
8879
7563
  ]);
8880
- if (!options.ci && !options.smokeTest && options.port != null && port !== options.port) {
8881
- let { shouldChangePort } = await (0, import_prompts.default)({
8882
- type: "confirm",
8883
- initial: !0,
8884
- name: "shouldChangePort",
8885
- message: `Port ${options.port} is not available. Would you like to run Storybook on port ${port} instead?`
8886
- });
8887
- shouldChangePort || process.exit(1);
8888
- }
7564
+ !options.ci && !options.smokeTest && options.port != null && port !== options.port && (await prompt.confirm({
7565
+ message: import_ts_dedent8.dedent`
7566
+ Port ${options.port} is not available.
7567
+ Would you like to run Storybook on port ${port} instead?
7568
+ `,
7569
+ initialValue: !0
7570
+ }) || process.exit(1));
8889
7571
  let cacheKey = oneWayHash(relative(getProjectRoot2(), configDir)), cacheOutputDir = resolvePathInStorybookCache("public", cacheKey), outputDir = resolve(options.outputDir || cacheOutputDir);
8890
7572
  options.smokeTest && (outputDir = cacheOutputDir), options.port = port, options.versionCheck = versionCheck, options.configType = "DEVELOPMENT", options.configDir = configDir, options.cacheKey = cacheKey, options.outputDir = outputDir, options.serverChannelUrl = getServerChannelUrl(port, options), options.pnp = await detectPnp(), options.pnp && deprecate(import_ts_dedent8.dedent`
8891
7573
  As of Storybook 10.0, PnP is deprecated.
@@ -8901,7 +7583,7 @@ async function buildDevStandalone(options) {
8901
7583
  try {
8902
7584
  await warnOnIncompatibleAddons(storybookVersion, packageManager);
8903
7585
  } catch (e) {
8904
- logger11.warn("Storybook failed to check addon compatibility"), logger11.debug(`${e instanceof Error ? e.stack : String(e)}`);
7586
+ logger12.warn("Storybook failed to check addon compatibility"), logger12.debug(`${e instanceof Error ? e.stack : String(e)}`);
8905
7587
  }
8906
7588
  try {
8907
7589
  await warnWhenUsingArgTypesRegex(previewConfigPath, config);
@@ -8971,7 +7653,7 @@ async function buildDevStandalone(options) {
8971
7653
  let problems = warnings.filter((warning) => !warning.message.includes("export 'useInsertionEffect'")).filter((warning) => !warning.message.includes("compilation but it's unused")).filter(
8972
7654
  (warning) => !warning.message.includes("Conflicting values for 'process.env.NODE_ENV'")
8973
7655
  );
8974
- logger11.log(problems.map((p) => p.stack).join(`
7656
+ logger12.log(problems.map((p) => p.stack).join(`
8975
7657
  `)), process.exit(problems.length > 0 ? 1 : 0);
8976
7658
  } else {
8977
7659
  let name = frameworkName.split("@storybook/").length > 1 ? frameworkName.split("@storybook/")[1] : frameworkName;
@@ -8991,7 +7673,7 @@ async function buildDevStandalone(options) {
8991
7673
  // src/core-server/build-index.ts
8992
7674
  import { writeFile as writeFile4 } from "node:fs/promises";
8993
7675
  import { normalizeStories as normalizeStories3 } from "storybook/internal/common";
8994
- import { logger as logger12 } from "storybook/internal/node-logger";
7676
+ import { logger as logger13 } from "storybook/internal/node-logger";
8995
7677
 
8996
7678
  // src/core-server/load.ts
8997
7679
  import {
@@ -9015,8 +7697,8 @@ async function loadStorybook(options) {
9015
7697
  ],
9016
7698
  ...options,
9017
7699
  isCritical: !0
9018
- }), { renderer } = await presets.apply("core", {}), resolvedRenderer = renderer && resolveAddonName3(options.configDir, renderer, options);
9019
- presets = await loadAllPresets3({
7700
+ }), { renderer, builder } = await presets.apply("core", {}), resolvedRenderer = renderer && resolveAddonName3(options.configDir, renderer, options), builderName = typeof builder == "string" ? builder : builder?.name;
7701
+ builderName && corePresets.push(join(dirname(builderName), "preset.js")), presets = await loadAllPresets3({
9020
7702
  corePresets: [
9021
7703
  join(resolvePackageDir("storybook"), "dist/core-server/presets/common-preset.js"),
9022
7704
  ...resolvedRenderer ? [resolvedRenderer] : [],
@@ -9053,7 +7735,7 @@ var buildIndex = async (options) => {
9053
7735
  return await generator.initialize(), generator.getIndex();
9054
7736
  }, buildIndexStandalone = async (options) => {
9055
7737
  let index = await buildIndex(options);
9056
- logger12.info(`Writing index to ${options.outputFile}`), await writeFile4(options.outputFile, JSON.stringify(index));
7738
+ logger13.info(`Writing index to ${options.outputFile}`), await writeFile4(options.outputFile, JSON.stringify(index));
9057
7739
  };
9058
7740
 
9059
7741
  // src/core-server/standalone.ts
@@ -9367,6 +8049,7 @@ export {
9367
8049
  fullTestProviderStore as internal_fullTestProviderStore,
9368
8050
  universalStatusStore as internal_universalStatusStore,
9369
8051
  universalTestProviderStore as internal_universalTestProviderStore,
8052
+ isTelemetryEnabled,
9370
8053
  mapStaticDir,
9371
8054
  sendTelemetryError,
9372
8055
  withTelemetry