@kevisual/cli 0.0.57 → 0.0.58

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/bin/envision.js CHANGED
@@ -1,4 +1,4 @@
1
1
  #!/usr/bin/env node
2
- import { runParser } from '../dist/envision.mjs';
2
+ import { runParser } from '../dist/envision.js';
3
3
 
4
4
  runParser(process.argv);
package/bun.config.mjs CHANGED
@@ -9,7 +9,7 @@ await Bun.build({
9
9
  entrypoints: ['./src/index.ts'],
10
10
  outdir: './dist',
11
11
  naming: {
12
- entry: 'envision.mjs',
12
+ entry: 'envision.js',
13
13
  },
14
14
 
15
15
  define: {
@@ -22056,7 +22056,7 @@ var require_cjs = __commonJS((exports) => {
22056
22056
  } });
22057
22057
  });
22058
22058
 
22059
- // node_modules/.pnpm/run-async@3.0.0/node_modules/run-async/index.js
22059
+ // node_modules/.pnpm/run-async@4.0.5/node_modules/run-async/index.js
22060
22060
  var require_run_async = __commonJS((exports, module) => {
22061
22061
  function isPromise(obj) {
22062
22062
  return !!obj && (typeof obj === "object" || typeof obj === "function") && typeof obj.then === "function";
@@ -41246,7 +41246,7 @@ var require_es_set_tostringtag = __commonJS((exports, module) => {
41246
41246
  };
41247
41247
  });
41248
41248
 
41249
- // node_modules/.pnpm/form-data@4.0.3/node_modules/form-data/lib/populate.js
41249
+ // node_modules/.pnpm/form-data@4.0.4/node_modules/form-data/lib/populate.js
41250
41250
  var require_populate = __commonJS((exports, module) => {
41251
41251
  module.exports = function(dst, src) {
41252
41252
  Object.keys(src).forEach(function(prop) {
@@ -41256,7 +41256,7 @@ var require_populate = __commonJS((exports, module) => {
41256
41256
  };
41257
41257
  });
41258
41258
 
41259
- // node_modules/.pnpm/form-data@4.0.3/node_modules/form-data/lib/form_data.js
41259
+ // node_modules/.pnpm/form-data@4.0.4/node_modules/form-data/lib/form_data.js
41260
41260
  var require_form_data = __commonJS((exports, module) => {
41261
41261
  var CombinedStream = require_combined_stream();
41262
41262
  var util2 = __require("util");
@@ -41266,6 +41266,7 @@ var require_form_data = __commonJS((exports, module) => {
41266
41266
  var parseUrl = __require("url").parse;
41267
41267
  var fs4 = __require("fs");
41268
41268
  var Stream = __require("stream").Stream;
41269
+ var crypto = __require("crypto");
41269
41270
  var mime = require_mime_types();
41270
41271
  var asynckit = require_asynckit();
41271
41272
  var setToStringTag = require_es_set_tostringtag();
@@ -41470,11 +41471,7 @@ var require_form_data = __commonJS((exports, module) => {
41470
41471
  return Buffer.concat([dataBuffer, Buffer.from(this._lastBoundary())]);
41471
41472
  };
41472
41473
  FormData.prototype._generateBoundary = function() {
41473
- var boundary = "--------------------------";
41474
- for (var i = 0;i < 24; i++) {
41475
- boundary += Math.floor(Math.random() * 10).toString(16);
41476
- }
41477
- this._boundary = boundary;
41474
+ this._boundary = "--------------------------" + crypto.randomBytes(12).toString("hex");
41478
41475
  };
41479
41476
  FormData.prototype.getLengthSync = function() {
41480
41477
  var knownLength = this._overheadLength + this._valueLength;
@@ -41967,14 +41964,14 @@ var writeConfig = (config) => {
41967
41964
  return config;
41968
41965
  };
41969
41966
 
41970
- // node_modules/.pnpm/@inquirer+core@10.1.13_@types+node@24.0.3/node_modules/@inquirer/core/dist/esm/lib/key.js
41967
+ // node_modules/.pnpm/@inquirer+core@10.1.15_@types+node@24.2.0/node_modules/@inquirer/core/dist/esm/lib/key.js
41971
41968
  var isUpKey = (key) => key.name === "up" || key.name === "k" || key.ctrl && key.name === "p";
41972
41969
  var isDownKey = (key) => key.name === "down" || key.name === "j" || key.ctrl && key.name === "n";
41973
41970
  var isSpaceKey = (key) => key.name === "space";
41974
41971
  var isBackspaceKey = (key) => key.name === "backspace";
41975
41972
  var isNumberKey = (key) => "1234567890".includes(key.name);
41976
41973
  var isEnterKey = (key) => key.name === "enter" || key.name === "return";
41977
- // node_modules/.pnpm/@inquirer+core@10.1.13_@types+node@24.0.3/node_modules/@inquirer/core/dist/esm/lib/errors.js
41974
+ // node_modules/.pnpm/@inquirer+core@10.1.15_@types+node@24.2.0/node_modules/@inquirer/core/dist/esm/lib/errors.js
41978
41975
  class AbortPromptError extends Error {
41979
41976
  name = "AbortPromptError";
41980
41977
  message = "Prompt was aborted";
@@ -42000,10 +41997,10 @@ class HookError extends Error {
42000
41997
  class ValidationError extends Error {
42001
41998
  name = "ValidationError";
42002
41999
  }
42003
- // node_modules/.pnpm/@inquirer+core@10.1.13_@types+node@24.0.3/node_modules/@inquirer/core/dist/esm/lib/use-state.js
42000
+ // node_modules/.pnpm/@inquirer+core@10.1.15_@types+node@24.2.0/node_modules/@inquirer/core/dist/esm/lib/use-state.js
42004
42001
  import { AsyncResource as AsyncResource2 } from "node:async_hooks";
42005
42002
 
42006
- // node_modules/.pnpm/@inquirer+core@10.1.13_@types+node@24.0.3/node_modules/@inquirer/core/dist/esm/lib/hook-engine.js
42003
+ // node_modules/.pnpm/@inquirer+core@10.1.15_@types+node@24.2.0/node_modules/@inquirer/core/dist/esm/lib/hook-engine.js
42007
42004
  import { AsyncLocalStorage, AsyncResource } from "node:async_hooks";
42008
42005
  var hookStorage = new AsyncLocalStorage;
42009
42006
  function createStore(rl) {
@@ -42108,7 +42105,7 @@ var effectScheduler = {
42108
42105
  }
42109
42106
  };
42110
42107
 
42111
- // node_modules/.pnpm/@inquirer+core@10.1.13_@types+node@24.0.3/node_modules/@inquirer/core/dist/esm/lib/use-state.js
42108
+ // node_modules/.pnpm/@inquirer+core@10.1.15_@types+node@24.2.0/node_modules/@inquirer/core/dist/esm/lib/use-state.js
42112
42109
  function useState(defaultValue) {
42113
42110
  return withPointer((pointer) => {
42114
42111
  const setState = AsyncResource2.bind(function setState(newValue) {
@@ -42126,7 +42123,7 @@ function useState(defaultValue) {
42126
42123
  });
42127
42124
  }
42128
42125
 
42129
- // node_modules/.pnpm/@inquirer+core@10.1.13_@types+node@24.0.3/node_modules/@inquirer/core/dist/esm/lib/use-effect.js
42126
+ // node_modules/.pnpm/@inquirer+core@10.1.15_@types+node@24.2.0/node_modules/@inquirer/core/dist/esm/lib/use-effect.js
42130
42127
  function useEffect(cb, depArray) {
42131
42128
  withPointer((pointer) => {
42132
42129
  const oldDeps = pointer.get();
@@ -42138,10 +42135,10 @@ function useEffect(cb, depArray) {
42138
42135
  });
42139
42136
  }
42140
42137
 
42141
- // node_modules/.pnpm/@inquirer+core@10.1.13_@types+node@24.0.3/node_modules/@inquirer/core/dist/esm/lib/theme.js
42138
+ // node_modules/.pnpm/@inquirer+core@10.1.15_@types+node@24.2.0/node_modules/@inquirer/core/dist/esm/lib/theme.js
42142
42139
  var import_yoctocolors_cjs = __toESM(require_yoctocolors_cjs(), 1);
42143
42140
 
42144
- // node_modules/.pnpm/@inquirer+figures@1.0.12/node_modules/@inquirer/figures/dist/esm/index.js
42141
+ // node_modules/.pnpm/@inquirer+figures@1.0.13/node_modules/@inquirer/figures/dist/esm/index.js
42145
42142
  import process2 from "node:process";
42146
42143
  function isUnicodeSupported() {
42147
42144
  if (process2.platform !== "win32") {
@@ -42427,7 +42424,7 @@ var figures = shouldUseMain ? mainSymbols : fallbackSymbols;
42427
42424
  var esm_default = figures;
42428
42425
  var replacements = Object.entries(specialMainSymbols);
42429
42426
 
42430
- // node_modules/.pnpm/@inquirer+core@10.1.13_@types+node@24.0.3/node_modules/@inquirer/core/dist/esm/lib/theme.js
42427
+ // node_modules/.pnpm/@inquirer+core@10.1.15_@types+node@24.2.0/node_modules/@inquirer/core/dist/esm/lib/theme.js
42431
42428
  var defaultTheme = {
42432
42429
  prefix: {
42433
42430
  idle: import_yoctocolors_cjs.default.blue("?"),
@@ -42448,7 +42445,7 @@ var defaultTheme = {
42448
42445
  }
42449
42446
  };
42450
42447
 
42451
- // node_modules/.pnpm/@inquirer+core@10.1.13_@types+node@24.0.3/node_modules/@inquirer/core/dist/esm/lib/make-theme.js
42448
+ // node_modules/.pnpm/@inquirer+core@10.1.15_@types+node@24.2.0/node_modules/@inquirer/core/dist/esm/lib/make-theme.js
42452
42449
  function isPlainObject(value) {
42453
42450
  if (typeof value !== "object" || value === null)
42454
42451
  return false;
@@ -42476,7 +42473,7 @@ function makeTheme(...themes) {
42476
42473
  return deepMerge(...themesToMerge);
42477
42474
  }
42478
42475
 
42479
- // node_modules/.pnpm/@inquirer+core@10.1.13_@types+node@24.0.3/node_modules/@inquirer/core/dist/esm/lib/use-prefix.js
42476
+ // node_modules/.pnpm/@inquirer+core@10.1.15_@types+node@24.2.0/node_modules/@inquirer/core/dist/esm/lib/use-prefix.js
42480
42477
  function usePrefix({ status = "idle", theme }) {
42481
42478
  const [showLoader, setShowLoader] = useState(false);
42482
42479
  const [tick, setTick] = useState(0);
@@ -42506,7 +42503,7 @@ function usePrefix({ status = "idle", theme }) {
42506
42503
  const iconName = status === "loading" ? "idle" : status;
42507
42504
  return typeof prefix === "string" ? prefix : prefix[iconName] ?? prefix["idle"];
42508
42505
  }
42509
- // node_modules/.pnpm/@inquirer+core@10.1.13_@types+node@24.0.3/node_modules/@inquirer/core/dist/esm/lib/use-memo.js
42506
+ // node_modules/.pnpm/@inquirer+core@10.1.15_@types+node@24.2.0/node_modules/@inquirer/core/dist/esm/lib/use-memo.js
42510
42507
  function useMemo(fn, dependencies) {
42511
42508
  return withPointer((pointer) => {
42512
42509
  const prev = pointer.get();
@@ -42518,11 +42515,11 @@ function useMemo(fn, dependencies) {
42518
42515
  return prev.value;
42519
42516
  });
42520
42517
  }
42521
- // node_modules/.pnpm/@inquirer+core@10.1.13_@types+node@24.0.3/node_modules/@inquirer/core/dist/esm/lib/use-ref.js
42518
+ // node_modules/.pnpm/@inquirer+core@10.1.15_@types+node@24.2.0/node_modules/@inquirer/core/dist/esm/lib/use-ref.js
42522
42519
  function useRef(val) {
42523
42520
  return useState({ current: val })[0];
42524
42521
  }
42525
- // node_modules/.pnpm/@inquirer+core@10.1.13_@types+node@24.0.3/node_modules/@inquirer/core/dist/esm/lib/use-keypress.js
42522
+ // node_modules/.pnpm/@inquirer+core@10.1.15_@types+node@24.2.0/node_modules/@inquirer/core/dist/esm/lib/use-keypress.js
42526
42523
  function useKeypress(userHandler) {
42527
42524
  const signal = useRef(userHandler);
42528
42525
  signal.current = userHandler;
@@ -42540,7 +42537,7 @@ function useKeypress(userHandler) {
42540
42537
  };
42541
42538
  }, []);
42542
42539
  }
42543
- // node_modules/.pnpm/@inquirer+core@10.1.13_@types+node@24.0.3/node_modules/@inquirer/core/dist/esm/lib/utils.js
42540
+ // node_modules/.pnpm/@inquirer+core@10.1.15_@types+node@24.2.0/node_modules/@inquirer/core/dist/esm/lib/utils.js
42544
42541
  var import_cli_width = __toESM(require_cli_width(), 1);
42545
42542
  var import_wrap_ansi = __toESM(require_wrap_ansi(), 1);
42546
42543
  function breakLines(content, width) {
@@ -42553,7 +42550,7 @@ function readlineWidth() {
42553
42550
  return import_cli_width.default({ defaultWidth: 80, output: readline().output });
42554
42551
  }
42555
42552
 
42556
- // node_modules/.pnpm/@inquirer+core@10.1.13_@types+node@24.0.3/node_modules/@inquirer/core/dist/esm/lib/pagination/use-pagination.js
42553
+ // node_modules/.pnpm/@inquirer+core@10.1.15_@types+node@24.2.0/node_modules/@inquirer/core/dist/esm/lib/pagination/use-pagination.js
42557
42554
  function usePointerPosition({ active, renderedItems, pageSize, loop }) {
42558
42555
  const state = useRef({
42559
42556
  lastPointer: active,
@@ -42619,7 +42616,7 @@ function usePagination({ items, active, renderItem, pageSize, loop = true }) {
42619
42616
  return pageBuffer.filter((line) => typeof line === "string").join(`
42620
42617
  `);
42621
42618
  }
42622
- // node_modules/.pnpm/@inquirer+core@10.1.13_@types+node@24.0.3/node_modules/@inquirer/core/dist/esm/lib/create-prompt.js
42619
+ // node_modules/.pnpm/@inquirer+core@10.1.15_@types+node@24.2.0/node_modules/@inquirer/core/dist/esm/lib/create-prompt.js
42623
42620
  var import_mute_stream = __toESM(require_lib(), 1);
42624
42621
  import * as readline2 from "node:readline";
42625
42622
  import { AsyncResource as AsyncResource3 } from "node:async_hooks";
@@ -42832,7 +42829,7 @@ var {
42832
42829
  unload
42833
42830
  } = signalExitWrap(processOk(process3) ? new SignalExit(process3) : new SignalExitFallback);
42834
42831
 
42835
- // node_modules/.pnpm/@inquirer+core@10.1.13_@types+node@24.0.3/node_modules/@inquirer/core/dist/esm/lib/screen-manager.js
42832
+ // node_modules/.pnpm/@inquirer+core@10.1.15_@types+node@24.2.0/node_modules/@inquirer/core/dist/esm/lib/screen-manager.js
42836
42833
  var import_ansi_escapes = __toESM(require_ansi_escapes(), 1);
42837
42834
  import { stripVTControlCharacters } from "node:util";
42838
42835
  var height = (content) => content.split(`
@@ -42902,7 +42899,7 @@ class ScreenManager {
42902
42899
  }
42903
42900
  }
42904
42901
 
42905
- // node_modules/.pnpm/@inquirer+core@10.1.13_@types+node@24.0.3/node_modules/@inquirer/core/dist/esm/lib/promise-polyfill.js
42902
+ // node_modules/.pnpm/@inquirer+core@10.1.15_@types+node@24.2.0/node_modules/@inquirer/core/dist/esm/lib/promise-polyfill.js
42906
42903
  class PromisePolyfill extends Promise {
42907
42904
  static withResolver() {
42908
42905
  let resolve;
@@ -42915,7 +42912,7 @@ class PromisePolyfill extends Promise {
42915
42912
  }
42916
42913
  }
42917
42914
 
42918
- // node_modules/.pnpm/@inquirer+core@10.1.13_@types+node@24.0.3/node_modules/@inquirer/core/dist/esm/lib/create-prompt.js
42915
+ // node_modules/.pnpm/@inquirer+core@10.1.15_@types+node@24.2.0/node_modules/@inquirer/core/dist/esm/lib/create-prompt.js
42919
42916
  function getCallSites() {
42920
42917
  const _prepareStackTrace = Error.prepareStackTrace;
42921
42918
  let result = [];
@@ -43001,7 +42998,7 @@ function createPrompt(view) {
43001
42998
  };
43002
42999
  return prompt;
43003
43000
  }
43004
- // node_modules/.pnpm/@inquirer+core@10.1.13_@types+node@24.0.3/node_modules/@inquirer/core/dist/esm/lib/Separator.js
43001
+ // node_modules/.pnpm/@inquirer+core@10.1.15_@types+node@24.2.0/node_modules/@inquirer/core/dist/esm/lib/Separator.js
43005
43002
  var import_yoctocolors_cjs2 = __toESM(require_yoctocolors_cjs(), 1);
43006
43003
  class Separator {
43007
43004
  separator = import_yoctocolors_cjs2.default.dim(Array.from({ length: 15 }).join(esm_default.line));
@@ -43015,7 +43012,7 @@ class Separator {
43015
43012
  return Boolean(choice && typeof choice === "object" && "type" in choice && choice.type === "separator");
43016
43013
  }
43017
43014
  }
43018
- // node_modules/.pnpm/@inquirer+checkbox@4.1.8_@types+node@24.0.3/node_modules/@inquirer/checkbox/dist/esm/index.js
43015
+ // node_modules/.pnpm/@inquirer+checkbox@4.2.0_@types+node@24.2.0/node_modules/@inquirer/checkbox/dist/esm/index.js
43019
43016
  var import_yoctocolors_cjs3 = __toESM(require_yoctocolors_cjs(), 1);
43020
43017
  var import_ansi_escapes2 = __toESM(require_ansi_escapes(), 1);
43021
43018
  var checkboxTheme = {
@@ -43122,9 +43119,16 @@ var esm_default2 = createPrompt((config, done) => {
43122
43119
  } else if (key2.name === shortcuts.invert) {
43123
43120
  setItems(items.map(toggle));
43124
43121
  } else if (isNumberKey(key2)) {
43125
- const position = Number(key2.name) - 1;
43126
- const item = items[position];
43127
- if (item != null && isSelectable(item)) {
43122
+ const selectedIndex = Number(key2.name) - 1;
43123
+ let selectableIndex = -1;
43124
+ const position = items.findIndex((item) => {
43125
+ if (Separator.isSeparator(item))
43126
+ return false;
43127
+ selectableIndex++;
43128
+ return selectableIndex === selectedIndex;
43129
+ });
43130
+ const selectedItem = items[position];
43131
+ if (selectedItem && isSelectable(selectedItem)) {
43128
43132
  setActive(position);
43129
43133
  setItems(items.map((choice, i) => i === position ? toggle(choice) : choice));
43130
43134
  }
@@ -43189,7 +43193,7 @@ ${theme.style.error(errorMsg)}`;
43189
43193
  return `${prefix} ${message}${helpTipTop}
43190
43194
  ${page}${helpTipBottom}${choiceDescription}${error}${import_ansi_escapes2.default.cursorHide}`;
43191
43195
  });
43192
- // node_modules/.pnpm/@inquirer+editor@4.2.13_@types+node@24.0.3/node_modules/@inquirer/editor/dist/esm/index.js
43196
+ // node_modules/.pnpm/@inquirer+editor@4.2.15_@types+node@24.2.0/node_modules/@inquirer/editor/dist/esm/index.js
43193
43197
  var import_external_editor = __toESM(require_main(), 1);
43194
43198
  var editorTheme = {
43195
43199
  validationFailureMode: "keep"
@@ -43257,7 +43261,7 @@ var esm_default3 = createPrompt((config, done) => {
43257
43261
  }
43258
43262
  return [[prefix, message, helpTip].filter(Boolean).join(" "), error];
43259
43263
  });
43260
- // node_modules/.pnpm/@inquirer+confirm@5.1.12_@types+node@24.0.3/node_modules/@inquirer/confirm/dist/esm/index.js
43264
+ // node_modules/.pnpm/@inquirer+confirm@5.1.14_@types+node@24.2.0/node_modules/@inquirer/confirm/dist/esm/index.js
43261
43265
  function getBooleanValue(value, defaultValue) {
43262
43266
  let answer = defaultValue !== false;
43263
43267
  if (/^(y|yes)/i.test(value))
@@ -43300,12 +43304,12 @@ var esm_default4 = createPrompt((config, done) => {
43300
43304
  const message = theme.style.message(config.message, status);
43301
43305
  return `${prefix} ${message}${defaultValue} ${formattedValue}`;
43302
43306
  });
43303
- // node_modules/.pnpm/@inquirer+input@4.1.12_@types+node@24.0.3/node_modules/@inquirer/input/dist/esm/index.js
43307
+ // node_modules/.pnpm/@inquirer+input@4.2.1_@types+node@24.2.0/node_modules/@inquirer/input/dist/esm/index.js
43304
43308
  var inputTheme = {
43305
43309
  validationFailureMode: "keep"
43306
43310
  };
43307
43311
  var esm_default5 = createPrompt((config, done) => {
43308
- const { required, validate = () => true } = config;
43312
+ const { required, validate = () => true, prefill = "tab" } = config;
43309
43313
  const theme = makeTheme(inputTheme, config.theme);
43310
43314
  const [status, setStatus] = useState("idle");
43311
43315
  const [defaultValue = "", setDefaultValue] = useState(config.default);
@@ -43345,6 +43349,12 @@ var esm_default5 = createPrompt((config, done) => {
43345
43349
  setError(undefined);
43346
43350
  }
43347
43351
  });
43352
+ useEffect((rl) => {
43353
+ if (prefill === "editable" && defaultValue) {
43354
+ rl.write(defaultValue);
43355
+ setValue(defaultValue);
43356
+ }
43357
+ }, []);
43348
43358
  const message = theme.style.message(config.message, status);
43349
43359
  let formattedValue = value;
43350
43360
  if (typeof config.transformer === "function") {
@@ -43365,7 +43375,7 @@ var esm_default5 = createPrompt((config, done) => {
43365
43375
  error
43366
43376
  ];
43367
43377
  });
43368
- // node_modules/.pnpm/@inquirer+number@3.0.15_@types+node@24.0.3/node_modules/@inquirer/number/dist/esm/index.js
43378
+ // node_modules/.pnpm/@inquirer+number@3.0.17_@types+node@24.2.0/node_modules/@inquirer/number/dist/esm/index.js
43369
43379
  function isStepOf(value, step, min) {
43370
43380
  const valuePow = value * Math.pow(10, 6);
43371
43381
  const stepPow = step * Math.pow(10, 6);
@@ -43445,7 +43455,7 @@ var esm_default6 = createPrompt((config, done) => {
43445
43455
  error
43446
43456
  ];
43447
43457
  });
43448
- // node_modules/.pnpm/@inquirer+expand@4.0.15_@types+node@24.0.3/node_modules/@inquirer/expand/dist/esm/index.js
43458
+ // node_modules/.pnpm/@inquirer+expand@4.0.17_@types+node@24.2.0/node_modules/@inquirer/expand/dist/esm/index.js
43449
43459
  var import_yoctocolors_cjs4 = __toESM(require_yoctocolors_cjs(), 1);
43450
43460
  function normalizeChoices2(choices) {
43451
43461
  return choices.map((choice) => {
@@ -43542,7 +43552,7 @@ var esm_default7 = createPrompt((config, done) => {
43542
43552
  `)
43543
43553
  ];
43544
43554
  });
43545
- // node_modules/.pnpm/@inquirer+rawlist@4.1.3_@types+node@24.0.3/node_modules/@inquirer/rawlist/dist/esm/index.js
43555
+ // node_modules/.pnpm/@inquirer+rawlist@4.1.5_@types+node@24.2.0/node_modules/@inquirer/rawlist/dist/esm/index.js
43546
43556
  var import_yoctocolors_cjs5 = __toESM(require_yoctocolors_cjs(), 1);
43547
43557
  var numberRegex = /\d+/;
43548
43558
  function isSelectableChoice(choice) {
@@ -43654,7 +43664,7 @@ var esm_default8 = createPrompt((config, done) => {
43654
43664
  `)
43655
43665
  ];
43656
43666
  });
43657
- // node_modules/.pnpm/@inquirer+password@4.0.15_@types+node@24.0.3/node_modules/@inquirer/password/dist/esm/index.js
43667
+ // node_modules/.pnpm/@inquirer+password@4.0.17_@types+node@24.2.0/node_modules/@inquirer/password/dist/esm/index.js
43658
43668
  var import_ansi_escapes3 = __toESM(require_ansi_escapes(), 1);
43659
43669
  var esm_default9 = createPrompt((config, done) => {
43660
43670
  const { validate = () => true } = config;
@@ -43703,7 +43713,7 @@ var esm_default9 = createPrompt((config, done) => {
43703
43713
  }
43704
43714
  return [[prefix, message, config.mask ? formattedValue : helpTip].join(" "), error];
43705
43715
  });
43706
- // node_modules/.pnpm/@inquirer+search@3.0.15_@types+node@24.0.3/node_modules/@inquirer/search/dist/esm/index.js
43716
+ // node_modules/.pnpm/@inquirer+search@3.1.0_@types+node@24.2.0/node_modules/@inquirer/search/dist/esm/index.js
43707
43717
  var import_yoctocolors_cjs6 = __toESM(require_yoctocolors_cjs(), 1);
43708
43718
  var searchTheme = {
43709
43719
  icon: { cursor: esm_default.pointer },
@@ -43827,8 +43837,8 @@ var esm_default10 = createPrompt((config, done) => {
43827
43837
  let helpTip = "";
43828
43838
  if (searchResults.length > 1 && (theme.helpMode === "always" || theme.helpMode === "auto" && firstRender.current)) {
43829
43839
  helpTip = searchResults.length > pageSize ? `
43830
- ${theme.style.help("(Use arrow keys to reveal more choices)")}` : `
43831
- ${theme.style.help("(Use arrow keys)")}`;
43840
+ ${theme.style.help(`(${config.instructions?.pager ?? "Use arrow keys to reveal more choices"})`)}` : `
43841
+ ${theme.style.help(`(${config.instructions?.navigation ?? "Use arrow keys"})`)}`;
43832
43842
  }
43833
43843
  const page = usePagination({
43834
43844
  items: searchResults,
@@ -43868,7 +43878,7 @@ ${theme.style.description(selectedChoice.description)}` : ``;
43868
43878
  `${error ?? page}${helpTip}${choiceDescription}`
43869
43879
  ];
43870
43880
  });
43871
- // node_modules/.pnpm/@inquirer+select@4.2.3_@types+node@24.0.3/node_modules/@inquirer/select/dist/esm/index.js
43881
+ // node_modules/.pnpm/@inquirer+select@4.3.1_@types+node@24.2.0/node_modules/@inquirer/select/dist/esm/index.js
43872
43882
  var import_yoctocolors_cjs7 = __toESM(require_yoctocolors_cjs(), 1);
43873
43883
  var import_ansi_escapes4 = __toESM(require_ansi_escapes(), 1);
43874
43884
  var selectTheme = {
@@ -43947,7 +43957,14 @@ var esm_default11 = createPrompt((config, done) => {
43947
43957
  setActive(next);
43948
43958
  }
43949
43959
  } else if (isNumberKey(key2) && !Number.isNaN(Number(rl.line))) {
43950
- const position = Number(rl.line) - 1;
43960
+ const selectedIndex = Number(rl.line) - 1;
43961
+ let selectableIndex = -1;
43962
+ const position = items.findIndex((item2) => {
43963
+ if (Separator.isSeparator(item2))
43964
+ return false;
43965
+ selectableIndex++;
43966
+ return selectableIndex === selectedIndex;
43967
+ });
43951
43968
  const item = items[position];
43952
43969
  if (item != null && isSelectable3(item)) {
43953
43970
  setActive(position);
@@ -43987,14 +44004,16 @@ ${theme.style.help(`(${config.instructions?.pager ?? "Use arrow keys to reveal m
43987
44004
  helpTipTop = theme.style.help(`(${config.instructions?.navigation ?? "Use arrow keys"})`);
43988
44005
  }
43989
44006
  }
44007
+ let separatorCount = 0;
43990
44008
  const page = usePagination({
43991
44009
  items,
43992
44010
  active,
43993
44011
  renderItem({ item, isActive, index }) {
43994
44012
  if (Separator.isSeparator(item)) {
44013
+ separatorCount++;
43995
44014
  return ` ${item.separator}`;
43996
44015
  }
43997
- const indexLabel = theme.indexMode === "number" ? `${index + 1}. ` : "";
44016
+ const indexLabel = theme.indexMode === "number" ? `${index + 1 - separatorCount}. ` : "";
43998
44017
  if (item.disabled) {
43999
44018
  const disabledLabel = typeof item.disabled === "string" ? item.disabled : "(disabled)";
44000
44019
  return theme.style.disabled(`${indexLabel}${item.name} ${disabledLabel}`);
@@ -44014,7 +44033,7 @@ ${theme.style.description(selectedChoice.description)}` : ``;
44014
44033
  return `${[prefix, message, helpTipTop].filter(Boolean).join(" ")}
44015
44034
  ${page}${helpTipBottom}${choiceDescription}${import_ansi_escapes4.default.cursorHide}`;
44016
44035
  });
44017
- // node_modules/.pnpm/inquirer@12.6.3_@types+node@24.0.3/node_modules/inquirer/dist/esm/ui/prompt.js
44036
+ // node_modules/.pnpm/inquirer@12.9.0_@types+node@24.2.0/node_modules/inquirer/dist/esm/ui/prompt.js
44018
44037
  var import_rxjs = __toESM(require_cjs(), 1);
44019
44038
  var import_run_async = __toESM(require_run_async(), 1);
44020
44039
  var import_mute_stream2 = __toESM(require_lib(), 1);
@@ -44226,7 +44245,7 @@ class PromptsRunner {
44226
44245
  };
44227
44246
  }
44228
44247
 
44229
- // node_modules/.pnpm/inquirer@12.6.3_@types+node@24.0.3/node_modules/inquirer/dist/esm/index.js
44248
+ // node_modules/.pnpm/inquirer@12.9.0_@types+node@24.2.0/node_modules/inquirer/dist/esm/index.js
44230
44249
  var builtInPrompts = {
44231
44250
  input: esm_default5,
44232
44251
  select: esm_default11,
@@ -44741,7 +44760,7 @@ class BaseQuery {
44741
44760
  }
44742
44761
  }
44743
44762
 
44744
- // node_modules/.pnpm/@kevisual+query-login@0.0.6_@kevisual+query@0.0.29_ws@8.18.0_/node_modules/@kevisual/query-login/dist/query-login-node.js
44763
+ // node_modules/.pnpm/@kevisual+query-login@0.0.6_@kevisual+query@0.0.29_ws@8.18.0__rollup@4.43.0_tslib@2.8.1_typescript@5.8.2/node_modules/@kevisual/query-login/dist/query-login-node.js
44745
44764
  import { homedir } from "node:os";
44746
44765
  import { join, dirname } from "node:path";
44747
44766
  import fs3 from "node:fs";
@@ -45296,7 +45315,7 @@ var getUrl = (url) => {
45296
45315
  return new URL("/api/router", url).href;
45297
45316
  };
45298
45317
 
45299
- // node_modules/.pnpm/chalk@5.4.1/node_modules/chalk/source/vendor/ansi-styles/index.js
45318
+ // node_modules/.pnpm/chalk@5.5.0/node_modules/chalk/source/vendor/ansi-styles/index.js
45300
45319
  var ANSI_BACKGROUND_OFFSET = 10;
45301
45320
  var wrapAnsi16 = (offset = 0) => (code) => `\x1B[${code + offset}m`;
45302
45321
  var wrapAnsi256 = (offset = 0) => (code) => `\x1B[${38 + offset};5;${code}m`;
@@ -45473,7 +45492,7 @@ function assembleStyles() {
45473
45492
  var ansiStyles = assembleStyles();
45474
45493
  var ansi_styles_default = ansiStyles;
45475
45494
 
45476
- // node_modules/.pnpm/chalk@5.4.1/node_modules/chalk/source/vendor/supports-color/index.js
45495
+ // node_modules/.pnpm/chalk@5.5.0/node_modules/chalk/source/vendor/supports-color/index.js
45477
45496
  import process4 from "node:process";
45478
45497
  import os2 from "node:os";
45479
45498
  import tty from "node:tty";
@@ -45564,6 +45583,9 @@ function _supportsColor(haveStream, { streamIsTTY, sniffFlags = true } = {}) {
45564
45583
  if (env.TERM === "xterm-kitty") {
45565
45584
  return 3;
45566
45585
  }
45586
+ if (env.TERM === "xterm-ghostty") {
45587
+ return 3;
45588
+ }
45567
45589
  if ("TERM_PROGRAM" in env) {
45568
45590
  const version2 = Number.parseInt((env.TERM_PROGRAM_VERSION || "").split(".")[0], 10);
45569
45591
  switch (env.TERM_PROGRAM) {
@@ -45599,7 +45621,7 @@ var supportsColor = {
45599
45621
  };
45600
45622
  var supports_color_default = supportsColor;
45601
45623
 
45602
- // node_modules/.pnpm/chalk@5.4.1/node_modules/chalk/source/utilities.js
45624
+ // node_modules/.pnpm/chalk@5.5.0/node_modules/chalk/source/utilities.js
45603
45625
  function stringReplaceAll(string, substring, replacer) {
45604
45626
  let index = string.indexOf(substring);
45605
45627
  if (index === -1) {
@@ -45632,7 +45654,7 @@ function stringEncaseCRLFWithFirstIndex(string, prefix, postfix, index) {
45632
45654
  return returnValue;
45633
45655
  }
45634
45656
 
45635
- // node_modules/.pnpm/chalk@5.4.1/node_modules/chalk/source/index.js
45657
+ // node_modules/.pnpm/chalk@5.5.0/node_modules/chalk/source/index.js
45636
45658
  var { stdout: stdoutColor, stderr: stderrColor } = supports_color_default;
45637
45659
  var GENERATOR = Symbol("GENERATOR");
45638
45660
  var STYLER = Symbol("STYLER");
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kevisual/cli",
3
- "version": "0.0.57",
3
+ "version": "0.0.58",
4
4
  "description": "envision command tools",
5
5
  "main": "dist/app.mjs",
6
6
  "type": "module",
@@ -50,23 +50,23 @@
50
50
  "@kevisual/logger": "^0.0.4",
51
51
  "@kevisual/query": "0.0.29",
52
52
  "@kevisual/query-login": "0.0.6",
53
- "@types/bun": "^1.2.16",
53
+ "@types/bun": "^1.2.20",
54
54
  "@types/crypto-js": "^4.2.2",
55
55
  "@types/jsonwebtoken": "^9.0.10",
56
56
  "@types/micromatch": "^4.0.9",
57
- "@types/node": "^24.0.3",
58
- "chalk": "^5.4.1",
57
+ "@types/node": "^24.2.1",
58
+ "chalk": "^5.5.0",
59
59
  "commander": "^14.0.0",
60
- "cross-env": "^7.0.3",
60
+ "cross-env": "^10.0.0",
61
61
  "crypto-js": "^4.2.0",
62
62
  "fast-glob": "^3.3.3",
63
- "filesize": "^10.1.6",
64
- "form-data": "^4.0.3",
63
+ "filesize": "^11.0.2",
64
+ "form-data": "^4.0.4",
65
65
  "ignore": "^7.0.5",
66
- "inquirer": "^12.6.3",
66
+ "inquirer": "^12.9.1",
67
67
  "jsonwebtoken": "^9.0.2",
68
68
  "tar": "^7.4.3",
69
- "zustand": "^5.0.5"
69
+ "zustand": "^5.0.7"
70
70
  },
71
71
  "engines": {
72
72
  "node": ">=22.0.0"