@chainlink/external-adapter-framework 2.13.0 → 2.13.2

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 (190) hide show
  1. package/README.md +1 -1
  2. package/adapter/market-status.d.ts +5 -0
  3. package/adapter/market-status.js +5 -0
  4. package/adapter/market-status.js.map +1 -1
  5. package/generator-adapter/generators/app/templates/src/index.ts.ejs +1 -1
  6. package/generator-adapter/node_modules/.yarn-integrity +33 -37
  7. package/generator-adapter/node_modules/@inquirer/ansi/package.json +28 -26
  8. package/generator-adapter/node_modules/@inquirer/checkbox/dist/index.d.ts +6 -1
  9. package/generator-adapter/node_modules/@inquirer/checkbox/dist/index.js +30 -10
  10. package/generator-adapter/node_modules/@inquirer/checkbox/package.json +23 -21
  11. package/generator-adapter/node_modules/@inquirer/confirm/package.json +21 -19
  12. package/generator-adapter/node_modules/@inquirer/core/dist/index.d.ts +1 -1
  13. package/generator-adapter/node_modules/@inquirer/core/dist/index.js +1 -1
  14. package/generator-adapter/node_modules/@inquirer/core/dist/lib/create-prompt.js +51 -25
  15. package/generator-adapter/node_modules/@inquirer/core/dist/lib/key.d.ts +2 -0
  16. package/generator-adapter/node_modules/@inquirer/core/dist/lib/key.js +1 -0
  17. package/generator-adapter/node_modules/@inquirer/core/dist/lib/utils.js +1 -1
  18. package/generator-adapter/node_modules/@inquirer/core/package.json +22 -20
  19. package/generator-adapter/node_modules/@inquirer/editor/dist/index.d.ts +3 -0
  20. package/generator-adapter/node_modules/@inquirer/editor/dist/index.js +5 -5
  21. package/generator-adapter/node_modules/@inquirer/editor/package.json +22 -20
  22. package/generator-adapter/node_modules/@inquirer/expand/package.json +21 -19
  23. package/generator-adapter/node_modules/@inquirer/external-editor/package.json +33 -31
  24. package/generator-adapter/node_modules/@inquirer/figures/package.json +18 -16
  25. package/generator-adapter/node_modules/@inquirer/input/dist/index.js +5 -3
  26. package/generator-adapter/node_modules/@inquirer/input/package.json +21 -19
  27. package/generator-adapter/node_modules/@inquirer/number/package.json +21 -19
  28. package/generator-adapter/node_modules/@inquirer/password/dist/index.d.ts +6 -1
  29. package/generator-adapter/node_modules/@inquirer/password/dist/index.js +7 -2
  30. package/generator-adapter/node_modules/@inquirer/password/package.json +22 -20
  31. package/generator-adapter/node_modules/@inquirer/prompts/README.md +15 -0
  32. package/generator-adapter/node_modules/@inquirer/prompts/package.json +31 -29
  33. package/generator-adapter/node_modules/@inquirer/rawlist/README.md +4 -0
  34. package/generator-adapter/node_modules/@inquirer/rawlist/dist/index.d.ts +9 -2
  35. package/generator-adapter/node_modules/@inquirer/rawlist/dist/index.js +24 -7
  36. package/generator-adapter/node_modules/@inquirer/rawlist/package.json +21 -19
  37. package/generator-adapter/node_modules/@inquirer/search/README.md +2 -1
  38. package/generator-adapter/node_modules/@inquirer/search/dist/index.d.ts +1 -0
  39. package/generator-adapter/node_modules/@inquirer/search/dist/index.js +11 -4
  40. package/generator-adapter/node_modules/@inquirer/search/package.json +22 -20
  41. package/generator-adapter/node_modules/@inquirer/select/dist/index.d.ts +5 -2
  42. package/generator-adapter/node_modules/@inquirer/select/dist/index.js +28 -11
  43. package/generator-adapter/node_modules/@inquirer/select/package.json +23 -21
  44. package/generator-adapter/node_modules/@inquirer/type/package.json +18 -16
  45. package/generator-adapter/node_modules/@types/node/README.md +1 -1
  46. package/generator-adapter/node_modules/@types/node/child_process.d.ts +6 -6
  47. package/generator-adapter/node_modules/@types/node/crypto.d.ts +8 -8
  48. package/generator-adapter/node_modules/@types/node/http.d.ts +31 -11
  49. package/generator-adapter/node_modules/@types/node/https.d.ts +6 -0
  50. package/generator-adapter/node_modules/@types/node/inspector.generated.d.ts +14 -1
  51. package/generator-adapter/node_modules/@types/node/module.d.ts +27 -16
  52. package/generator-adapter/node_modules/@types/node/net.d.ts +21 -2
  53. package/generator-adapter/node_modules/@types/node/package.json +3 -3
  54. package/generator-adapter/node_modules/@types/node/perf_hooks.d.ts +125 -65
  55. package/generator-adapter/node_modules/@types/node/process.d.ts +2 -7
  56. package/generator-adapter/node_modules/@types/node/sqlite.d.ts +31 -10
  57. package/generator-adapter/node_modules/@types/node/stream/web.d.ts +5 -5
  58. package/generator-adapter/node_modules/@types/node/stream.d.ts +27 -4
  59. package/generator-adapter/node_modules/@types/node/tls.d.ts +7 -7
  60. package/generator-adapter/node_modules/@types/node/url.d.ts +2 -2
  61. package/generator-adapter/node_modules/@types/node/util.d.ts +9 -1
  62. package/generator-adapter/node_modules/@types/node/v8.d.ts +26 -0
  63. package/generator-adapter/node_modules/@types/node/vm.d.ts +30 -15
  64. package/generator-adapter/node_modules/@types/node/worker_threads.d.ts +17 -19
  65. package/generator-adapter/node_modules/@types/node/zlib.d.ts +68 -4
  66. package/generator-adapter/node_modules/@yeoman/adapter/dist/adapter.d.ts +0 -3
  67. package/generator-adapter/node_modules/@yeoman/adapter/dist/adapter.js +1 -0
  68. package/generator-adapter/node_modules/@yeoman/adapter/dist/adapter.js.map +1 -1
  69. package/generator-adapter/node_modules/@yeoman/adapter/dist/log.d.ts +0 -2
  70. package/generator-adapter/node_modules/@yeoman/adapter/dist/log.js.map +1 -1
  71. package/generator-adapter/node_modules/@yeoman/adapter/dist/queued-adapter.d.ts +0 -1
  72. package/generator-adapter/node_modules/@yeoman/adapter/dist/queued-adapter.js.map +1 -1
  73. package/generator-adapter/node_modules/@yeoman/adapter/dist/testing/test-adapter.d.ts +0 -1
  74. package/generator-adapter/node_modules/@yeoman/adapter/dist/testing/test-adapter.js.map +1 -1
  75. package/generator-adapter/node_modules/@yeoman/adapter/package.json +11 -11
  76. package/generator-adapter/node_modules/@yeoman/types/package.json +3 -7
  77. package/generator-adapter/node_modules/@yeoman/types/types/environment/environment.d.ts +7 -5
  78. package/generator-adapter/node_modules/ansi-styles/index.d.ts +341 -232
  79. package/generator-adapter/node_modules/ansi-styles/index.js +130 -190
  80. package/generator-adapter/node_modules/ansi-styles/license +1 -1
  81. package/generator-adapter/node_modules/ansi-styles/package.json +10 -8
  82. package/generator-adapter/node_modules/ansi-styles/readme.md +32 -53
  83. package/generator-adapter/node_modules/chalk/package.json +3 -3
  84. package/generator-adapter/node_modules/chalk/readme.md +25 -53
  85. package/generator-adapter/node_modules/chalk/source/index.d.ts +6 -1
  86. package/generator-adapter/node_modules/chalk/source/vendor/supports-color/browser.js +6 -2
  87. package/generator-adapter/node_modules/chalk/source/vendor/supports-color/index.js +10 -2
  88. package/generator-adapter/node_modules/fast-string-truncated-width/dist/index.d.ts +4 -0
  89. package/generator-adapter/node_modules/fast-string-truncated-width/dist/index.js +111 -0
  90. package/generator-adapter/node_modules/fast-string-truncated-width/dist/types.d.ts +19 -0
  91. package/generator-adapter/node_modules/{p-queue/dist/options copy.js → fast-string-truncated-width/dist/types.js} +1 -0
  92. package/generator-adapter/node_modules/fast-string-truncated-width/dist/utils.d.ts +4 -0
  93. package/generator-adapter/node_modules/fast-string-truncated-width/dist/utils.js +20 -0
  94. package/generator-adapter/node_modules/fast-string-truncated-width/license +21 -0
  95. package/generator-adapter/node_modules/fast-string-truncated-width/package.json +35 -0
  96. package/generator-adapter/node_modules/fast-string-truncated-width/readme.md +59 -0
  97. package/generator-adapter/node_modules/fast-string-width/dist/index.d.ts +4 -0
  98. package/generator-adapter/node_modules/fast-string-width/dist/index.js +14 -0
  99. package/generator-adapter/node_modules/fast-string-width/license +21 -0
  100. package/generator-adapter/node_modules/fast-string-width/package.json +34 -0
  101. package/generator-adapter/node_modules/fast-string-width/readme.md +42 -0
  102. package/generator-adapter/node_modules/fast-wrap-ansi/LICENSE +23 -0
  103. package/generator-adapter/node_modules/fast-wrap-ansi/README.md +26 -0
  104. package/generator-adapter/node_modules/fast-wrap-ansi/lib/main.d.ts +6 -0
  105. package/generator-adapter/node_modules/fast-wrap-ansi/lib/main.js +219 -0
  106. package/generator-adapter/node_modules/fast-wrap-ansi/lib/main.js.map +1 -0
  107. package/generator-adapter/node_modules/fast-wrap-ansi/package.json +51 -0
  108. package/generator-adapter/node_modules/iconv-lite/lib/index.d.ts +114 -26
  109. package/generator-adapter/node_modules/iconv-lite/lib/index.js +39 -40
  110. package/generator-adapter/node_modules/iconv-lite/package.json +13 -2
  111. package/generator-adapter/node_modules/iconv-lite/types/encodings.d.ts +423 -0
  112. package/generator-adapter/node_modules/inquirer/dist/types.d.ts +12 -11
  113. package/generator-adapter/node_modules/inquirer/dist/ui/prompt.js +9 -1
  114. package/generator-adapter/node_modules/inquirer/dist/ui/skipped-renderer.d.ts +13 -0
  115. package/generator-adapter/node_modules/inquirer/dist/ui/skipped-renderer.js +57 -0
  116. package/generator-adapter/node_modules/inquirer/package.json +21 -19
  117. package/generator-adapter/node_modules/log-symbols/package.json +1 -1
  118. package/generator-adapter/node_modules/log-symbols/symbols.js +1 -1
  119. package/generator-adapter/node_modules/mem-fs/dist/index.d.ts +0 -2
  120. package/generator-adapter/node_modules/mem-fs/node_modules/vinyl/LICENSE +21 -0
  121. package/generator-adapter/node_modules/mem-fs/node_modules/vinyl/README.md +447 -0
  122. package/generator-adapter/node_modules/mem-fs/node_modules/vinyl/index.js +346 -0
  123. package/generator-adapter/node_modules/mem-fs/node_modules/vinyl/lib/inspect-stream.js +13 -0
  124. package/generator-adapter/node_modules/mem-fs/node_modules/vinyl/lib/is-stream.js +15 -0
  125. package/generator-adapter/node_modules/mem-fs/node_modules/vinyl/lib/normalize.js +9 -0
  126. package/generator-adapter/node_modules/mem-fs/node_modules/vinyl/package.json +59 -0
  127. package/generator-adapter/node_modules/mem-fs/package.json +9 -9
  128. package/generator-adapter/node_modules/ora/index.d.ts +3 -1
  129. package/generator-adapter/node_modules/ora/index.js +299 -109
  130. package/generator-adapter/node_modules/ora/package.json +3 -4
  131. package/generator-adapter/node_modules/ora/readme.md +24 -0
  132. package/generator-adapter/node_modules/p-queue/dist/index.js +145 -22
  133. package/generator-adapter/node_modules/p-queue/dist/options.d.ts +17 -1
  134. package/generator-adapter/node_modules/p-queue/package.json +1 -1
  135. package/generator-adapter/node_modules/p-queue/readme.md +32 -1
  136. package/generator-adapter/node_modules/stdin-discarder/index.js +50 -22
  137. package/generator-adapter/node_modules/stdin-discarder/package.json +1 -1
  138. package/generator-adapter/node_modules/{ora → yeoman-generator}/node_modules/chalk/package.json +3 -3
  139. package/generator-adapter/node_modules/{ora → yeoman-generator}/node_modules/chalk/readme.md +53 -25
  140. package/generator-adapter/node_modules/{ora → yeoman-generator}/node_modules/chalk/source/index.d.ts +1 -6
  141. package/generator-adapter/node_modules/{ora → yeoman-generator}/node_modules/chalk/source/vendor/supports-color/browser.js +2 -6
  142. package/generator-adapter/node_modules/{ora → yeoman-generator}/node_modules/chalk/source/vendor/supports-color/index.js +2 -10
  143. package/generator-adapter/package.json +4 -4
  144. package/package.json +14 -14
  145. package/transports/websocket.d.ts +5 -0
  146. package/transports/websocket.js +25 -13
  147. package/transports/websocket.js.map +1 -1
  148. package/generator-adapter/node_modules/emoji-regex/LICENSE-MIT.txt +0 -20
  149. package/generator-adapter/node_modules/emoji-regex/README.md +0 -107
  150. package/generator-adapter/node_modules/emoji-regex/index.d.ts +0 -3
  151. package/generator-adapter/node_modules/emoji-regex/index.js +0 -4
  152. package/generator-adapter/node_modules/emoji-regex/index.mjs +0 -4
  153. package/generator-adapter/node_modules/emoji-regex/package.json +0 -45
  154. package/generator-adapter/node_modules/iconv-lite/Changelog.md +0 -236
  155. package/generator-adapter/node_modules/jake/node_modules/ansi-styles/index.d.ts +0 -345
  156. package/generator-adapter/node_modules/jake/node_modules/ansi-styles/index.js +0 -163
  157. package/generator-adapter/node_modules/jake/node_modules/ansi-styles/license +0 -9
  158. package/generator-adapter/node_modules/jake/node_modules/ansi-styles/package.json +0 -56
  159. package/generator-adapter/node_modules/jake/node_modules/ansi-styles/readme.md +0 -152
  160. package/generator-adapter/node_modules/ora/node_modules/log-symbols/browser-symbols.js +0 -4
  161. package/generator-adapter/node_modules/ora/node_modules/log-symbols/browser.js +0 -1
  162. package/generator-adapter/node_modules/ora/node_modules/log-symbols/index.d.ts +0 -22
  163. package/generator-adapter/node_modules/ora/node_modules/log-symbols/index.js +0 -1
  164. package/generator-adapter/node_modules/ora/node_modules/log-symbols/license +0 -9
  165. package/generator-adapter/node_modules/ora/node_modules/log-symbols/package.json +0 -60
  166. package/generator-adapter/node_modules/ora/node_modules/log-symbols/readme.md +0 -39
  167. package/generator-adapter/node_modules/ora/node_modules/log-symbols/symbols.js +0 -14
  168. package/generator-adapter/node_modules/ora/node_modules/strip-ansi/index.d.ts +0 -15
  169. package/generator-adapter/node_modules/ora/node_modules/strip-ansi/index.js +0 -14
  170. package/generator-adapter/node_modules/ora/node_modules/strip-ansi/license +0 -9
  171. package/generator-adapter/node_modules/ora/node_modules/strip-ansi/package.json +0 -59
  172. package/generator-adapter/node_modules/ora/node_modules/strip-ansi/readme.md +0 -37
  173. package/generator-adapter/node_modules/p-queue/dist/options copy.d.ts +0 -121
  174. package/generator-adapter/node_modules/wrap-ansi/index.d.ts +0 -41
  175. package/generator-adapter/node_modules/wrap-ansi/index.js +0 -222
  176. package/generator-adapter/node_modules/wrap-ansi/license +0 -9
  177. package/generator-adapter/node_modules/wrap-ansi/node_modules/string-width/index.d.ts +0 -39
  178. package/generator-adapter/node_modules/wrap-ansi/node_modules/string-width/index.js +0 -82
  179. package/generator-adapter/node_modules/wrap-ansi/node_modules/string-width/license +0 -9
  180. package/generator-adapter/node_modules/wrap-ansi/node_modules/string-width/package.json +0 -64
  181. package/generator-adapter/node_modules/wrap-ansi/node_modules/string-width/readme.md +0 -66
  182. package/generator-adapter/node_modules/wrap-ansi/package.json +0 -69
  183. package/generator-adapter/node_modules/wrap-ansi/readme.md +0 -75
  184. /package/generator-adapter/node_modules/{ora → yeoman-generator}/node_modules/chalk/license +0 -0
  185. /package/generator-adapter/node_modules/{ora → yeoman-generator}/node_modules/chalk/source/index.js +0 -0
  186. /package/generator-adapter/node_modules/{ora → yeoman-generator}/node_modules/chalk/source/utilities.js +0 -0
  187. /package/generator-adapter/node_modules/{ora → yeoman-generator}/node_modules/chalk/source/vendor/ansi-styles/index.d.ts +0 -0
  188. /package/generator-adapter/node_modules/{ora → yeoman-generator}/node_modules/chalk/source/vendor/ansi-styles/index.js +0 -0
  189. /package/generator-adapter/node_modules/{ora → yeoman-generator}/node_modules/chalk/source/vendor/supports-color/browser.d.ts +0 -0
  190. /package/generator-adapter/node_modules/{ora → yeoman-generator}/node_modules/chalk/source/vendor/supports-color/index.d.ts +0 -0
@@ -1,4 +1,4 @@
1
- import { createPrompt, useState, useKeypress, usePrefix, usePagination, useEffect, useMemo, isDownKey, isEnterKey, isTabKey, isUpKey, Separator, makeTheme, } from '@inquirer/core';
1
+ import { createPrompt, useState, useKeypress, usePrefix, usePagination, useEffect, useMemo, useRef, isDownKey, isEnterKey, isTabKey, isUpKey, Separator, makeTheme, } from '@inquirer/core';
2
2
  import { styleText } from 'node:util';
3
3
  import figures from '@inquirer/figures';
4
4
  const searchTheme = {
@@ -47,6 +47,7 @@ export default createPrompt((config, done) => {
47
47
  const [searchTerm, setSearchTerm] = useState('');
48
48
  const [searchResults, setSearchResults] = useState([]);
49
49
  const [searchError, setSearchError] = useState();
50
+ const defaultApplied = useRef(false);
50
51
  const prefix = usePrefix({ status, theme });
51
52
  const bounds = useMemo(() => {
52
53
  const first = searchResults.findIndex(isSelectable);
@@ -64,10 +65,16 @@ export default createPrompt((config, done) => {
64
65
  signal: controller.signal,
65
66
  });
66
67
  if (!controller.signal.aborted) {
67
- // Reset the pointer
68
- setActive(undefined);
68
+ const normalized = normalizeChoices(results);
69
+ let initialActive;
70
+ if (!defaultApplied.current && 'default' in config) {
71
+ const defaultIndex = normalized.findIndex((item) => isSelectable(item) && item.value === config.default);
72
+ initialActive = defaultIndex === -1 ? undefined : defaultIndex;
73
+ defaultApplied.current = true;
74
+ }
75
+ setActive(initialActive);
69
76
  setSearchError(undefined);
70
- setSearchResults(normalizeChoices(results));
77
+ setSearchResults(normalized);
71
78
  setStatus('idle');
72
79
  }
73
80
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@inquirer/search",
3
- "version": "4.0.1",
3
+ "version": "4.1.4",
4
4
  "description": "Inquirer search prompt",
5
5
  "keywords": [
6
6
  "answer",
@@ -42,42 +42,39 @@
42
42
  "zsh"
43
43
  ],
44
44
  "homepage": "https://github.com/SBoudrias/Inquirer.js/blob/main/packages/search/README.md",
45
+ "license": "MIT",
46
+ "author": "Simon Boudrias <admin@simonboudrias.com>",
45
47
  "repository": {
46
48
  "type": "git",
47
49
  "url": "https://github.com/SBoudrias/Inquirer.js.git"
48
50
  },
49
- "license": "MIT",
50
- "author": "Simon Boudrias <admin@simonboudrias.com>",
51
- "sideEffects": false,
51
+ "files": [
52
+ "dist"
53
+ ],
52
54
  "type": "module",
55
+ "sideEffects": false,
53
56
  "exports": {
54
- "./package.json": "./package.json",
55
57
  ".": {
56
58
  "types": "./dist/index.d.ts",
57
59
  "default": "./dist/index.js"
58
- }
60
+ },
61
+ "./package.json": "./package.json"
62
+ },
63
+ "publishConfig": {
64
+ "access": "public"
59
65
  },
60
- "files": [
61
- "dist"
62
- ],
63
66
  "scripts": {
64
67
  "tsc": "tsc"
65
68
  },
66
69
  "dependencies": {
67
- "@inquirer/core": "^11.0.1",
68
- "@inquirer/figures": "^2.0.1",
69
- "@inquirer/type": "^4.0.1"
70
+ "@inquirer/core": "^11.1.5",
71
+ "@inquirer/figures": "^2.0.3",
72
+ "@inquirer/type": "^4.0.3"
70
73
  },
71
74
  "devDependencies": {
72
- "@inquirer/testing": "^3.0.1",
75
+ "@inquirer/testing": "^3.3.0",
73
76
  "typescript": "^5.9.3"
74
77
  },
75
- "engines": {
76
- "node": ">=23.5.0 || ^22.13.0 || ^21.7.0 || ^20.12.0"
77
- },
78
- "publishConfig": {
79
- "access": "public"
80
- },
81
78
  "peerDependencies": {
82
79
  "@types/node": ">=18"
83
80
  },
@@ -86,5 +83,10 @@
86
83
  "optional": true
87
84
  }
88
85
  },
89
- "gitHead": "cce79ce3b9bbdfb4dbb798078cf3b94b9adc7d1b"
86
+ "engines": {
87
+ "node": ">=23.5.0 || ^22.13.0 || ^21.7.0 || ^20.12.0"
88
+ },
89
+ "main": "./dist/index.js",
90
+ "types": "./dist/index.d.ts",
91
+ "gitHead": "526eca2e64853510821ffd457561840ec0cbfb93"
90
92
  }
@@ -9,6 +9,9 @@ type SelectTheme = {
9
9
  description: (text: string) => string;
10
10
  keysHelpTip: (keys: [key: string, action: string][]) => string | undefined;
11
11
  };
12
+ i18n: {
13
+ disabledError: string;
14
+ };
12
15
  indexMode: 'hidden' | 'number';
13
16
  keybindings: ReadonlyArray<Keybinding>;
14
17
  };
@@ -22,10 +25,10 @@ type Choice<Value> = {
22
25
  };
23
26
  declare const _default: <Value>(config: {
24
27
  message: string;
25
- choices: readonly (string | Separator)[] | readonly (Separator | Choice<Value>)[];
28
+ choices: readonly (Separator | Value | Choice<Value>)[];
26
29
  pageSize?: number | undefined;
27
30
  loop?: boolean | undefined;
28
- default?: unknown;
31
+ default?: NoInfer<Value> | undefined;
29
32
  theme?: PartialDeep<Theme<SelectTheme>> | undefined;
30
33
  }, context?: import("@inquirer/type").Context) => Promise<Value>;
31
34
  export default _default;
@@ -5,27 +5,33 @@ import figures from '@inquirer/figures';
5
5
  const selectTheme = {
6
6
  icon: { cursor: figures.pointer },
7
7
  style: {
8
- disabled: (text) => styleText('dim', `- ${text}`),
8
+ disabled: (text) => styleText('dim', text),
9
9
  description: (text) => styleText('cyan', text),
10
10
  keysHelpTip: (keys) => keys
11
11
  .map(([key, action]) => `${styleText('bold', key)} ${styleText('dim', action)}`)
12
12
  .join(styleText('dim', ' • ')),
13
13
  },
14
+ i18n: { disabledError: 'This option is disabled and cannot be selected.' },
14
15
  indexMode: 'hidden',
15
16
  keybindings: [],
16
17
  };
17
18
  function isSelectable(item) {
18
19
  return !Separator.isSeparator(item) && !item.disabled;
19
20
  }
21
+ function isNavigable(item) {
22
+ return !Separator.isSeparator(item);
23
+ }
20
24
  function normalizeChoices(choices) {
21
25
  return choices.map((choice) => {
22
26
  if (Separator.isSeparator(choice))
23
27
  return choice;
24
- if (typeof choice === 'string') {
28
+ if (typeof choice !== 'object' || choice === null || !('value' in choice)) {
29
+ // It's a raw value (string, number, etc.)
30
+ const name = String(choice);
25
31
  return {
26
32
  value: choice,
27
- name: choice,
28
- short: choice,
33
+ name,
34
+ short: name,
29
35
  disabled: false,
30
36
  };
31
37
  }
@@ -54,8 +60,8 @@ export default createPrompt((config, done) => {
54
60
  const searchEnabled = !keybindings.includes('vim');
55
61
  const items = useMemo(() => normalizeChoices(config.choices), [config.choices]);
56
62
  const bounds = useMemo(() => {
57
- const first = items.findIndex(isSelectable);
58
- const last = items.findLastIndex(isSelectable);
63
+ const first = items.findIndex(isNavigable);
64
+ const last = items.findLastIndex(isNavigable);
59
65
  if (first === -1) {
60
66
  throw new ValidationError('[select prompt] No selectable choices. All choices are disabled.');
61
67
  }
@@ -69,11 +75,20 @@ export default createPrompt((config, done) => {
69
75
  const [active, setActive] = useState(defaultItemIndex === -1 ? bounds.first : defaultItemIndex);
70
76
  // Safe to assume the cursor position always point to a Choice.
71
77
  const selectedChoice = items[active];
78
+ const [errorMsg, setError] = useState();
72
79
  useKeypress((key, rl) => {
73
80
  clearTimeout(searchTimeoutRef.current);
81
+ if (errorMsg) {
82
+ setError(undefined);
83
+ }
74
84
  if (isEnterKey(key)) {
75
- setStatus('done');
76
- done(selectedChoice.value);
85
+ if (selectedChoice.disabled) {
86
+ setError(theme.i18n.disabledError);
87
+ }
88
+ else {
89
+ setStatus('done');
90
+ done(selectedChoice.value);
91
+ }
77
92
  }
78
93
  else if (isUpKey(key, keybindings) || isDownKey(key, keybindings)) {
79
94
  rl.clearLine(0);
@@ -84,7 +99,7 @@ export default createPrompt((config, done) => {
84
99
  let next = active;
85
100
  do {
86
101
  next = (next + offset + items.length) % items.length;
87
- } while (!isSelectable(items[next]));
102
+ } while (!isNavigable(items[next]));
88
103
  setActive(next);
89
104
  }
90
105
  }
@@ -141,13 +156,14 @@ export default createPrompt((config, done) => {
141
156
  separatorCount++;
142
157
  return ` ${item.separator}`;
143
158
  }
159
+ const cursor = isActive ? theme.icon.cursor : ' ';
144
160
  const indexLabel = theme.indexMode === 'number' ? `${index + 1 - separatorCount}. ` : '';
145
161
  if (item.disabled) {
146
162
  const disabledLabel = typeof item.disabled === 'string' ? item.disabled : '(disabled)';
147
- return theme.style.disabled(`${indexLabel}${item.name} ${disabledLabel}`);
163
+ const disabledCursor = isActive ? theme.icon.cursor : '-';
164
+ return theme.style.disabled(`${disabledCursor} ${indexLabel}${item.name} ${disabledLabel}`);
148
165
  }
149
166
  const color = isActive ? theme.style.highlight : (x) => x;
150
- const cursor = isActive ? theme.icon.cursor : ` `;
151
167
  return color(`${cursor} ${indexLabel}${item.name}`);
152
168
  },
153
169
  pageSize,
@@ -164,6 +180,7 @@ export default createPrompt((config, done) => {
164
180
  page,
165
181
  ' ',
166
182
  description ? theme.style.description(description) : '',
183
+ errorMsg ? theme.style.error(errorMsg) : '',
167
184
  helpLine,
168
185
  ]
169
186
  .filter(Boolean)
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@inquirer/select",
3
- "version": "5.0.1",
3
+ "version": "5.1.0",
4
4
  "description": "Inquirer select/list prompt",
5
5
  "keywords": [
6
6
  "answer",
@@ -42,43 +42,40 @@
42
42
  "zsh"
43
43
  ],
44
44
  "homepage": "https://github.com/SBoudrias/Inquirer.js/blob/main/packages/select/README.md",
45
+ "license": "MIT",
46
+ "author": "Simon Boudrias <admin@simonboudrias.com>",
45
47
  "repository": {
46
48
  "type": "git",
47
49
  "url": "https://github.com/SBoudrias/Inquirer.js.git"
48
50
  },
49
- "license": "MIT",
50
- "author": "Simon Boudrias <admin@simonboudrias.com>",
51
- "sideEffects": false,
51
+ "files": [
52
+ "dist"
53
+ ],
52
54
  "type": "module",
55
+ "sideEffects": false,
53
56
  "exports": {
54
- "./package.json": "./package.json",
55
57
  ".": {
56
58
  "types": "./dist/index.d.ts",
57
59
  "default": "./dist/index.js"
58
- }
60
+ },
61
+ "./package.json": "./package.json"
62
+ },
63
+ "publishConfig": {
64
+ "access": "public"
59
65
  },
60
- "files": [
61
- "dist"
62
- ],
63
66
  "scripts": {
64
67
  "tsc": "tsc"
65
68
  },
66
69
  "dependencies": {
67
- "@inquirer/ansi": "^2.0.1",
68
- "@inquirer/core": "^11.0.1",
69
- "@inquirer/figures": "^2.0.1",
70
- "@inquirer/type": "^4.0.1"
70
+ "@inquirer/ansi": "^2.0.3",
71
+ "@inquirer/core": "^11.1.5",
72
+ "@inquirer/figures": "^2.0.3",
73
+ "@inquirer/type": "^4.0.3"
71
74
  },
72
75
  "devDependencies": {
73
- "@inquirer/testing": "^3.0.1",
76
+ "@inquirer/testing": "^3.3.0",
74
77
  "typescript": "^5.9.3"
75
78
  },
76
- "engines": {
77
- "node": ">=23.5.0 || ^22.13.0 || ^21.7.0 || ^20.12.0"
78
- },
79
- "publishConfig": {
80
- "access": "public"
81
- },
82
79
  "peerDependencies": {
83
80
  "@types/node": ">=18"
84
81
  },
@@ -87,5 +84,10 @@
87
84
  "optional": true
88
85
  }
89
86
  },
90
- "gitHead": "cce79ce3b9bbdfb4dbb798078cf3b94b9adc7d1b"
87
+ "engines": {
88
+ "node": ">=23.5.0 || ^22.13.0 || ^21.7.0 || ^20.12.0"
89
+ },
90
+ "main": "./dist/index.js",
91
+ "types": "./dist/index.d.ts",
92
+ "gitHead": "526eca2e64853510821ffd457561840ec0cbfb93"
91
93
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@inquirer/type",
3
- "version": "4.0.1",
3
+ "version": "4.0.3",
4
4
  "description": "Inquirer core TS types",
5
5
  "keywords": [
6
6
  "answer",
@@ -36,31 +36,34 @@
36
36
  "stdout",
37
37
  "terminal",
38
38
  "tty",
39
+ "types",
40
+ "typescript",
39
41
  "ui",
40
42
  "yeoman",
41
43
  "yo",
42
- "zsh",
43
- "types",
44
- "typescript"
44
+ "zsh"
45
45
  ],
46
+ "license": "MIT",
47
+ "author": "Simon Boudrias <admin@simonboudrias.com>",
46
48
  "repository": {
47
49
  "type": "git",
48
50
  "url": "https://github.com/SBoudrias/Inquirer.js.git"
49
51
  },
50
- "license": "MIT",
51
- "author": "Simon Boudrias <admin@simonboudrias.com>",
52
- "sideEffects": false,
52
+ "files": [
53
+ "dist"
54
+ ],
53
55
  "type": "module",
56
+ "sideEffects": false,
54
57
  "exports": {
55
- "./package.json": "./package.json",
56
58
  ".": {
57
59
  "types": "./dist/index.d.ts",
58
60
  "default": "./dist/index.js"
59
- }
61
+ },
62
+ "./package.json": "./package.json"
63
+ },
64
+ "publishConfig": {
65
+ "access": "public"
60
66
  },
61
- "files": [
62
- "dist"
63
- ],
64
67
  "scripts": {
65
68
  "tsc": "tsc"
66
69
  },
@@ -78,8 +81,7 @@
78
81
  "engines": {
79
82
  "node": ">=23.5.0 || ^22.13.0 || ^21.7.0 || ^20.12.0"
80
83
  },
81
- "publishConfig": {
82
- "access": "public"
83
- },
84
- "gitHead": "cce79ce3b9bbdfb4dbb798078cf3b94b9adc7d1b"
84
+ "main": "./dist/index.js",
85
+ "types": "./dist/index.d.ts",
86
+ "gitHead": "99d00a9adc53be8b7edf5926b2ec4ba0b792f68f"
85
87
  }
@@ -8,7 +8,7 @@ This package contains type definitions for node (https://nodejs.org/).
8
8
  Files were exported from https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node/v24.
9
9
 
10
10
  ### Additional Details
11
- * Last updated: Tue, 10 Feb 2026 14:48:58 GMT
11
+ * Last updated: Fri, 03 Apr 2026 11:14:41 GMT
12
12
  * Dependencies: [undici-types](https://npmjs.com/package/undici-types)
13
13
 
14
14
  # Credits
@@ -5,6 +5,7 @@
5
5
  *
6
6
  * ```js
7
7
  * import { spawn } from 'node:child_process';
8
+ * import { once } from 'node:events';
8
9
  * const ls = spawn('ls', ['-lh', '/usr']);
9
10
  *
10
11
  * ls.stdout.on('data', (data) => {
@@ -15,9 +16,8 @@
15
16
  * console.error(`stderr: ${data}`);
16
17
  * });
17
18
  *
18
- * ls.on('close', (code) => {
19
- * console.log(`child process exited with code ${code}`);
20
- * });
19
+ * const [code] = await once(ls, 'close');
20
+ * console.log(`child process exited with code ${code}`);
21
21
  * ```
22
22
  *
23
23
  * By default, pipes for `stdin`, `stdout`, and `stderr` are established between
@@ -719,6 +719,7 @@ declare module "child_process" {
719
719
  *
720
720
  * ```js
721
721
  * import { spawn } from 'node:child_process';
722
+ * import { once } from 'node:events';
722
723
  * const ls = spawn('ls', ['-lh', '/usr']);
723
724
  *
724
725
  * ls.stdout.on('data', (data) => {
@@ -729,9 +730,8 @@ declare module "child_process" {
729
730
  * console.error(`stderr: ${data}`);
730
731
  * });
731
732
  *
732
- * ls.on('close', (code) => {
733
- * console.log(`child process exited with code ${code}`);
734
- * });
733
+ * const [code] = await once(ls, 'close');
734
+ * console.log(`child process exited with code ${code}`);
735
735
  * ```
736
736
  *
737
737
  * Example: A very elaborate way to run `ps ax | grep ssh`
@@ -2709,12 +2709,12 @@ declare module "crypto" {
2709
2709
  privateKey: T2;
2710
2710
  }
2711
2711
  /**
2712
- * Generates a new asymmetric key pair of the given `type`. RSA, RSA-PSS, DSA, EC,
2713
- * Ed25519, Ed448, X25519, X448, DH, and ML-DSA are currently supported.
2712
+ * Generates a new asymmetric key pair of the given `type`.
2713
+ * See the supported [asymmetric key types](https://nodejs.org/docs/latest-v24.x/api/crypto.html#asymmetric-key-types).
2714
2714
  *
2715
2715
  * If a `publicKeyEncoding` or `privateKeyEncoding` was specified, this function
2716
- * behaves as if `keyObject.export()` had been called on its result. Otherwise,
2717
- * the respective part of the key is returned as a `KeyObject`.
2716
+ * behaves as if {@link KeyObject.export `keyObject.export()`} had been called on its result. Otherwise,
2717
+ * the respective part of the key is returned as a {@link KeyObject `KeyObject`}.
2718
2718
  *
2719
2719
  * When encoding public keys, it is recommended to use `'spki'`. When encoding
2720
2720
  * private keys, it is recommended to use `'pkcs8'` with a strong passphrase,
@@ -3007,12 +3007,12 @@ declare module "crypto" {
3007
3007
  options?: SLHDSAKeyPairKeyObjectOptions,
3008
3008
  ): KeyPairKeyObjectResult;
3009
3009
  /**
3010
- * Generates a new asymmetric key pair of the given `type`. RSA, RSA-PSS, DSA, EC,
3011
- * Ed25519, Ed448, X25519, X448, and DH are currently supported.
3010
+ * Generates a new asymmetric key pair of the given `type`.
3011
+ * See the supported [asymmetric key types](https://nodejs.org/docs/latest-v24.x/api/crypto.html#asymmetric-key-types).
3012
3012
  *
3013
3013
  * If a `publicKeyEncoding` or `privateKeyEncoding` was specified, this function
3014
- * behaves as if `keyObject.export()` had been called on its result. Otherwise,
3015
- * the respective part of the key is returned as a `KeyObject`.
3014
+ * behaves as if {@link KeyObject.export `keyObject.export()`} had been called on its result. Otherwise,
3015
+ * the respective part of the key is returned as a {@link KeyObject `KeyObject`}.
3016
3016
  *
3017
3017
  * It is recommended to encode public keys as `'spki'` and private keys as `'pkcs8'` with encryption for long-term storage:
3018
3018
  *
@@ -357,6 +357,14 @@ declare module "http" {
357
357
  * @since v18.17.0, v20.2.0
358
358
  */
359
359
  rejectNonStandardBodyWrites?: boolean | undefined;
360
+ /**
361
+ * If set to `true`, requests without `Content-Length` or `Transfer-Encoding` headers (indicating no body)
362
+ * will be initialized with an already-ended body stream, so they will never emit any stream events
363
+ * (like `'data'` or `'end'`). You can use `req.readableEnded` to detect this case.
364
+ * @default false
365
+ * @since v24.12.0
366
+ */
367
+ optimizeEmptyRequests?: boolean | undefined;
360
368
  }
361
369
  type RequestListener<
362
370
  Request extends typeof IncomingMessage = typeof IncomingMessage,
@@ -939,7 +947,7 @@ declare module "http" {
939
947
  * been transmitted are equal or not.
940
948
  *
941
949
  * Attempting to set a header field name or value that contains invalid characters
942
- * will result in a \[`Error`\]\[\] being thrown.
950
+ * will result in a `Error` being thrown.
943
951
  * @since v0.1.30
944
952
  */
945
953
  writeHead(
@@ -1020,6 +1028,7 @@ declare module "http" {
1020
1028
  *
1021
1029
  * ```js
1022
1030
  * import http from 'node:http';
1031
+ * const agent = new http.Agent({ keepAlive: true });
1023
1032
  *
1024
1033
  * // Server has a 5 seconds keep-alive timeout by default
1025
1034
  * http
@@ -1661,20 +1670,31 @@ declare module "http" {
1661
1670
  /**
1662
1671
  * Produces a socket/stream to be used for HTTP requests.
1663
1672
  *
1664
- * By default, this function is the same as `net.createConnection()`. However,
1665
- * custom agents may override this method in case greater flexibility is desired.
1673
+ * By default, this function behaves identically to `net.createConnection()`, synchronously
1674
+ * returning the created socket. The optional `callback` parameter in the signature is not
1675
+ * used by this default implementation.
1666
1676
  *
1667
- * A socket/stream can be supplied in one of two ways: by returning the
1668
- * socket/stream from this function, or by passing the socket/stream to `callback`.
1677
+ * However, custom agents may override this method to provide greater flexibility,
1678
+ * for example, to create sockets asynchronously. When overriding `createConnection`:
1669
1679
  *
1670
- * This method is guaranteed to return an instance of the `net.Socket` class,
1671
- * a subclass of `stream.Duplex`, unless the user specifies a socket
1672
- * type other than `net.Socket`.
1680
+ * 1. **Synchronous socket creation**: The overriding method can return the socket/stream directly.
1681
+ * 2. **Asynchronous socket creation**: The overriding method can accept the `callback` and pass
1682
+ * the created socket/stream to it (e.g., `callback(null, newSocket)`). If an error occurs during
1683
+ * socket creation, it should be passed as the first argument to the `callback` (e.g., `callback(err)`).
1673
1684
  *
1674
- * `callback` has a signature of `(err, stream)`.
1685
+ * The agent will call the provided `createConnection` function with `options` and this internal
1686
+ * `callback`. The `callback` provided by the agent has a signature of `(err, stream)`.
1675
1687
  * @since v0.11.4
1676
- * @param options Options containing connection details. Check `createConnection` for the format of the options
1677
- * @param callback Callback function that receives the created socket
1688
+ * @param options Options containing connection details. Check `net.createConnection()`
1689
+ * for the format of the options. For custom agents, this object is passed
1690
+ * to the custom `createConnection` function.
1691
+ * @param callback (Optional, primarily for custom agents) A function to be called by a custom
1692
+ * `createConnection` implementation when the socket is created, especially for
1693
+ * asynchronous operations.
1694
+ * @returns `stream.Duplex` The created socket. This is returned by the default implementation
1695
+ * or by a custom synchronous `createConnection` implementation. If a
1696
+ * custom `createConnection` uses the `callback` for asynchronous operation,
1697
+ * this return value might not be the primary way to obtain the socket.
1678
1698
  */
1679
1699
  createConnection(
1680
1700
  options: ClientRequestArgs,
@@ -25,6 +25,12 @@ declare module "https" {
25
25
  }
26
26
  /**
27
27
  * An `Agent` object for HTTPS similar to `http.Agent`. See {@link request} for more information.
28
+ *
29
+ * Like `http.Agent`, the `createConnection(options[, callback])` method can be overridden to customize
30
+ * how TLS connections are established.
31
+ *
32
+ * > See [`agent.createConnection()`](https://nodejs.org/docs/latest-v24.x/api/http.html#agentcreateconnectionoptions-callback)
33
+ * for details on overriding this method, including asynchronous socket creation with a callback.
28
34
  * @since v0.4.5
29
35
  */
30
36
  class Agent extends http.Agent {
@@ -1791,6 +1791,18 @@ declare module "inspector" {
1791
1791
  */
1792
1792
  headers: Headers;
1793
1793
  }
1794
+ interface EnableParameterType {
1795
+ /**
1796
+ * Buffer size in bytes to use when preserving network payloads (XHRs, etc).
1797
+ * @experimental
1798
+ */
1799
+ maxTotalBufferSize?: number | undefined;
1800
+ /**
1801
+ * Per-resource buffer size in bytes to use when preserving network payloads (XHRs, etc).
1802
+ * @experimental
1803
+ */
1804
+ maxResourceBufferSize?: number | undefined;
1805
+ }
1794
1806
  interface GetRequestPostDataParameterType {
1795
1807
  /**
1796
1808
  * Identifier of the network request to get content for.
@@ -2379,6 +2391,7 @@ declare module "inspector" {
2379
2391
  /**
2380
2392
  * Enables network tracking, network events will now be delivered to the client.
2381
2393
  */
2394
+ post(method: "Network.enable", params?: Network.EnableParameterType, callback?: (err: Error | null) => void): void;
2382
2395
  post(method: "Network.enable", callback?: (err: Error | null) => void): void;
2383
2396
  /**
2384
2397
  * Returns post data sent with the request. Returns an error when no data was sent with the request.
@@ -3477,7 +3490,7 @@ declare module "inspector/promises" {
3477
3490
  /**
3478
3491
  * Enables network tracking, network events will now be delivered to the client.
3479
3492
  */
3480
- post(method: "Network.enable"): Promise<void>;
3493
+ post(method: "Network.enable", params?: Network.EnableParameterType): Promise<void>;
3481
3494
  /**
3482
3495
  * Returns post data sent with the request. Returns an error when no data was sent with the request.
3483
3496
  */