@maizzle/framework 6.0.0-rc.0 → 6.0.0-rc.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 (207) hide show
  1. package/bin/maizzle.mjs +1 -1
  2. package/dist/build.mjs +25 -7
  3. package/dist/build.mjs.map +1 -1
  4. package/dist/config/index.mjs +25 -1
  5. package/dist/config/index.mjs.map +1 -1
  6. package/dist/render/createRenderer.d.mts +4 -0
  7. package/dist/render/createRenderer.d.mts.map +1 -1
  8. package/dist/render/createRenderer.mjs +10 -4
  9. package/dist/render/createRenderer.mjs.map +1 -1
  10. package/dist/render/index.mjs +5 -1
  11. package/dist/render/index.mjs.map +1 -1
  12. package/dist/serve.mjs +4 -1
  13. package/dist/serve.mjs.map +1 -1
  14. package/dist/types/config.d.mts +20 -0
  15. package/dist/types/config.d.mts.map +1 -1
  16. package/node_modules/@clack/core/CHANGELOG.md +87 -4
  17. package/node_modules/@clack/core/README.md +1 -1
  18. package/node_modules/@clack/core/dist/index.d.mts +186 -48
  19. package/node_modules/@clack/core/dist/index.mjs +10 -14
  20. package/node_modules/@clack/core/dist/index.mjs.map +1 -1
  21. package/node_modules/@clack/core/package.json +7 -9
  22. package/node_modules/@clack/prompts/CHANGELOG.md +171 -7
  23. package/node_modules/@clack/prompts/README.md +66 -3
  24. package/node_modules/@clack/prompts/dist/index.d.mts +302 -76
  25. package/node_modules/@clack/prompts/dist/index.mjs +134 -84
  26. package/node_modules/@clack/prompts/dist/index.mjs.map +1 -1
  27. package/node_modules/@clack/prompts/package.json +14 -10
  28. package/node_modules/citty/LICENSE +0 -15
  29. package/node_modules/citty/README.md +166 -69
  30. package/node_modules/citty/dist/index.d.mts +88 -56
  31. package/node_modules/citty/dist/index.mjs +399 -437
  32. package/node_modules/citty/package.json +28 -35
  33. package/node_modules/giget/README.md +59 -11
  34. package/node_modules/giget/dist/THIRD-PARTY-LICENSES.md +205 -0
  35. package/node_modules/giget/dist/_chunks/giget.mjs +508 -0
  36. package/node_modules/giget/dist/_chunks/libs/citty.mjs +269 -0
  37. package/node_modules/giget/dist/_chunks/libs/nypm.d.mts +1 -0
  38. package/node_modules/giget/dist/_chunks/libs/nypm.mjs +669 -0
  39. package/node_modules/giget/dist/_chunks/libs/tar.mjs +2931 -0
  40. package/node_modules/giget/dist/_chunks/rolldown-runtime.mjs +14 -0
  41. package/node_modules/giget/dist/cli.d.mts +1 -0
  42. package/node_modules/giget/dist/cli.mjs +89 -111
  43. package/node_modules/giget/dist/index.d.mts +46 -35
  44. package/node_modules/giget/dist/index.mjs +2 -22
  45. package/node_modules/giget/package.json +32 -45
  46. package/node_modules/maizzle/README.md +140 -0
  47. package/node_modules/maizzle/bin/maizzle.mjs +5 -0
  48. package/node_modules/maizzle/dist/commands/new.d.mts +7 -0
  49. package/node_modules/maizzle/dist/commands/new.mjs +278 -0
  50. package/node_modules/{@maizzle/cli → maizzle}/dist/index.d.mts +1 -1
  51. package/node_modules/maizzle/dist/index.mjs +44 -0
  52. package/node_modules/{commander → maizzle/node_modules/commander}/Readme.md +94 -67
  53. package/node_modules/{commander → maizzle/node_modules/commander}/lib/argument.js +5 -4
  54. package/node_modules/{commander → maizzle/node_modules/commander}/lib/command.js +154 -39
  55. package/node_modules/{commander → maizzle/node_modules/commander}/lib/help.js +77 -39
  56. package/node_modules/{commander → maizzle/node_modules/commander}/lib/option.js +16 -3
  57. package/node_modules/{commander → maizzle/node_modules/commander}/package-support.json +4 -1
  58. package/node_modules/{commander → maizzle/node_modules/commander}/package.json +8 -8
  59. package/node_modules/{commander → maizzle/node_modules/commander}/typings/index.d.ts +71 -3
  60. package/node_modules/{@maizzle/cli → maizzle}/package.json +13 -11
  61. package/node_modules/tinyexec/README.md +49 -3
  62. package/node_modules/tinyexec/dist/main.d.mts +25 -14
  63. package/node_modules/tinyexec/dist/main.mjs +148 -100
  64. package/node_modules/tinyexec/package.json +9 -8
  65. package/package.json +3 -3
  66. package/node_modules/@clack/core/dist/index.cjs +0 -15
  67. package/node_modules/@clack/core/dist/index.cjs.map +0 -1
  68. package/node_modules/@clack/core/dist/index.d.cts +0 -211
  69. package/node_modules/@clack/core/dist/index.d.ts +0 -211
  70. package/node_modules/@clack/prompts/dist/index.cjs +0 -87
  71. package/node_modules/@clack/prompts/dist/index.cjs.map +0 -1
  72. package/node_modules/@clack/prompts/dist/index.d.cts +0 -165
  73. package/node_modules/@clack/prompts/dist/index.d.ts +0 -165
  74. package/node_modules/@maizzle/cli/README.md +0 -58
  75. package/node_modules/@maizzle/cli/dist/index.mjs +0 -42
  76. package/node_modules/citty/dist/index.cjs +0 -475
  77. package/node_modules/citty/dist/index.d.cts +0 -80
  78. package/node_modules/citty/dist/index.d.ts +0 -80
  79. package/node_modules/consola/LICENSE +0 -47
  80. package/node_modules/consola/README.md +0 -352
  81. package/node_modules/consola/basic.d.ts +0 -1
  82. package/node_modules/consola/browser.d.ts +0 -1
  83. package/node_modules/consola/core.d.ts +0 -1
  84. package/node_modules/consola/dist/basic.cjs +0 -32
  85. package/node_modules/consola/dist/basic.d.cts +0 -23
  86. package/node_modules/consola/dist/basic.d.mts +0 -21
  87. package/node_modules/consola/dist/basic.d.ts +0 -23
  88. package/node_modules/consola/dist/basic.mjs +0 -24
  89. package/node_modules/consola/dist/browser.cjs +0 -84
  90. package/node_modules/consola/dist/browser.d.cts +0 -23
  91. package/node_modules/consola/dist/browser.d.mts +0 -21
  92. package/node_modules/consola/dist/browser.d.ts +0 -23
  93. package/node_modules/consola/dist/browser.mjs +0 -76
  94. package/node_modules/consola/dist/chunks/prompt.cjs +0 -288
  95. package/node_modules/consola/dist/chunks/prompt.mjs +0 -280
  96. package/node_modules/consola/dist/core.cjs +0 -517
  97. package/node_modules/consola/dist/core.d.cts +0 -459
  98. package/node_modules/consola/dist/core.d.mts +0 -459
  99. package/node_modules/consola/dist/core.d.ts +0 -459
  100. package/node_modules/consola/dist/core.mjs +0 -512
  101. package/node_modules/consola/dist/index.cjs +0 -663
  102. package/node_modules/consola/dist/index.d.cts +0 -24
  103. package/node_modules/consola/dist/index.d.mts +0 -22
  104. package/node_modules/consola/dist/index.d.ts +0 -24
  105. package/node_modules/consola/dist/index.mjs +0 -651
  106. package/node_modules/consola/dist/shared/consola.DCGIlDNP.cjs +0 -75
  107. package/node_modules/consola/dist/shared/consola.DRwqZj3T.mjs +0 -72
  108. package/node_modules/consola/dist/shared/consola.DXBYu-KD.mjs +0 -288
  109. package/node_modules/consola/dist/shared/consola.DwRq1yyg.cjs +0 -312
  110. package/node_modules/consola/dist/utils.cjs +0 -64
  111. package/node_modules/consola/dist/utils.d.cts +0 -286
  112. package/node_modules/consola/dist/utils.d.mts +0 -286
  113. package/node_modules/consola/dist/utils.d.ts +0 -286
  114. package/node_modules/consola/dist/utils.mjs +0 -54
  115. package/node_modules/consola/lib/index.cjs +0 -10
  116. package/node_modules/consola/package.json +0 -136
  117. package/node_modules/consola/utils.d.ts +0 -1
  118. package/node_modules/create-maizzle/README.md +0 -86
  119. package/node_modules/create-maizzle/bin/create-maizzle.mjs +0 -4
  120. package/node_modules/create-maizzle/node_modules/@clack/core/CHANGELOG.md +0 -340
  121. package/node_modules/create-maizzle/node_modules/@clack/core/LICENSE +0 -9
  122. package/node_modules/create-maizzle/node_modules/@clack/core/README.md +0 -22
  123. package/node_modules/create-maizzle/node_modules/@clack/core/dist/index.d.mts +0 -349
  124. package/node_modules/create-maizzle/node_modules/@clack/core/dist/index.mjs +0 -11
  125. package/node_modules/create-maizzle/node_modules/@clack/core/dist/index.mjs.map +0 -1
  126. package/node_modules/create-maizzle/node_modules/@clack/core/package.json +0 -60
  127. package/node_modules/create-maizzle/node_modules/@clack/prompts/CHANGELOG.md +0 -576
  128. package/node_modules/create-maizzle/node_modules/@clack/prompts/LICENSE +0 -9
  129. package/node_modules/create-maizzle/node_modules/@clack/prompts/README.md +0 -270
  130. package/node_modules/create-maizzle/node_modules/@clack/prompts/dist/index.d.mts +0 -391
  131. package/node_modules/create-maizzle/node_modules/@clack/prompts/dist/index.mjs +0 -137
  132. package/node_modules/create-maizzle/node_modules/@clack/prompts/dist/index.mjs.map +0 -1
  133. package/node_modules/create-maizzle/node_modules/@clack/prompts/package.json +0 -65
  134. package/node_modules/create-maizzle/package.json +0 -47
  135. package/node_modules/create-maizzle/src/index.js +0 -242
  136. package/node_modules/defu/LICENSE +0 -21
  137. package/node_modules/defu/README.md +0 -171
  138. package/node_modules/defu/dist/defu.cjs +0 -77
  139. package/node_modules/defu/dist/defu.d.cts +0 -31
  140. package/node_modules/defu/dist/defu.d.mts +0 -29
  141. package/node_modules/defu/dist/defu.d.ts +0 -31
  142. package/node_modules/defu/dist/defu.mjs +0 -69
  143. package/node_modules/defu/lib/defu.cjs +0 -10
  144. package/node_modules/defu/lib/defu.d.cts +0 -12
  145. package/node_modules/defu/package.json +0 -48
  146. package/node_modules/giget/dist/shared/giget.OCaTp9b-.mjs +0 -468
  147. package/node_modules/node-fetch-native/LICENSE +0 -114
  148. package/node_modules/node-fetch-native/README.md +0 -225
  149. package/node_modules/node-fetch-native/dist/chunks/multipart-parser.cjs +0 -2
  150. package/node_modules/node-fetch-native/dist/chunks/multipart-parser.mjs +0 -2
  151. package/node_modules/node-fetch-native/dist/index.cjs +0 -1
  152. package/node_modules/node-fetch-native/dist/index.mjs +0 -1
  153. package/node_modules/node-fetch-native/dist/native.cjs +0 -1
  154. package/node_modules/node-fetch-native/dist/native.mjs +0 -1
  155. package/node_modules/node-fetch-native/dist/node.cjs +0 -19
  156. package/node_modules/node-fetch-native/dist/node.mjs +0 -19
  157. package/node_modules/node-fetch-native/dist/polyfill.cjs +0 -1
  158. package/node_modules/node-fetch-native/dist/polyfill.mjs +0 -1
  159. package/node_modules/node-fetch-native/dist/proxy-stub.cjs +0 -1
  160. package/node_modules/node-fetch-native/dist/proxy-stub.mjs +0 -1
  161. package/node_modules/node-fetch-native/dist/proxy.cjs +0 -58
  162. package/node_modules/node-fetch-native/dist/shared/node-fetch-native.DfbY2q-x.mjs +0 -1
  163. package/node_modules/node-fetch-native/dist/shared/node-fetch-native.DhEqb06g.cjs +0 -1
  164. package/node_modules/node-fetch-native/index.d.ts +0 -1
  165. package/node_modules/node-fetch-native/lib/empty.cjs +0 -0
  166. package/node_modules/node-fetch-native/lib/empty.mjs +0 -0
  167. package/node_modules/node-fetch-native/lib/index.cjs +0 -11
  168. package/node_modules/node-fetch-native/lib/index.d.cts +0 -10
  169. package/node_modules/node-fetch-native/lib/index.d.mts +0 -10
  170. package/node_modules/node-fetch-native/lib/index.d.ts +0 -10
  171. package/node_modules/node-fetch-native/lib/native.cjs +0 -11
  172. package/node_modules/node-fetch-native/lib/polyfill.d.cts +0 -1
  173. package/node_modules/node-fetch-native/lib/polyfill.d.mts +0 -1
  174. package/node_modules/node-fetch-native/lib/polyfill.d.ts +0 -1
  175. package/node_modules/node-fetch-native/lib/proxy.d.ts +0 -32
  176. package/node_modules/node-fetch-native/node.d.ts +0 -1
  177. package/node_modules/node-fetch-native/package.json +0 -138
  178. package/node_modules/node-fetch-native/polyfill.d.ts +0 -1
  179. package/node_modules/node-fetch-native/proxy.d.ts +0 -1
  180. package/node_modules/nypm/node_modules/citty/LICENSE +0 -21
  181. package/node_modules/nypm/node_modules/citty/README.md +0 -231
  182. package/node_modules/nypm/node_modules/citty/dist/index.d.mts +0 -112
  183. package/node_modules/nypm/node_modules/citty/dist/index.mjs +0 -425
  184. package/node_modules/nypm/node_modules/citty/package.json +0 -42
  185. /package/node_modules/{nypm/node_modules/citty → citty}/dist/THIRD-PARTY-LICENSES.md +0 -0
  186. /package/node_modules/{nypm/node_modules/citty → citty}/dist/_chunks/libs/scule.mjs +0 -0
  187. /package/node_modules/{@maizzle/cli → maizzle}/LICENSE +0 -0
  188. /package/node_modules/{@maizzle/cli → maizzle}/dist/commands/make/component.d.mts +0 -0
  189. /package/node_modules/{@maizzle/cli → maizzle}/dist/commands/make/component.mjs +0 -0
  190. /package/node_modules/{@maizzle/cli → maizzle}/dist/commands/make/config.d.mts +0 -0
  191. /package/node_modules/{@maizzle/cli → maizzle}/dist/commands/make/config.mjs +0 -0
  192. /package/node_modules/{@maizzle/cli → maizzle}/dist/commands/make/layout.d.mts +0 -0
  193. /package/node_modules/{@maizzle/cli → maizzle}/dist/commands/make/layout.mjs +0 -0
  194. /package/node_modules/{@maizzle/cli → maizzle}/dist/commands/make/scaffold.d.mts +0 -0
  195. /package/node_modules/{@maizzle/cli → maizzle}/dist/commands/make/scaffold.mjs +0 -0
  196. /package/node_modules/{@maizzle/cli → maizzle}/dist/commands/make/stubs/component.vue +0 -0
  197. /package/node_modules/{@maizzle/cli → maizzle}/dist/commands/make/stubs/config.ts +0 -0
  198. /package/node_modules/{@maizzle/cli → maizzle}/dist/commands/make/stubs/layout.vue +0 -0
  199. /package/node_modules/{@maizzle/cli → maizzle}/dist/commands/make/stubs/template.vue +0 -0
  200. /package/node_modules/{@maizzle/cli → maizzle}/dist/commands/make/template.d.mts +0 -0
  201. /package/node_modules/{@maizzle/cli → maizzle}/dist/commands/make/template.mjs +0 -0
  202. /package/node_modules/{commander → maizzle/node_modules/commander}/LICENSE +0 -0
  203. /package/node_modules/{commander → maizzle/node_modules/commander}/esm.mjs +0 -0
  204. /package/node_modules/{commander → maizzle/node_modules/commander}/index.js +0 -0
  205. /package/node_modules/{commander → maizzle/node_modules/commander}/lib/error.js +0 -0
  206. /package/node_modules/{commander → maizzle/node_modules/commander}/lib/suggestSimilar.js +0 -0
  207. /package/node_modules/{commander → maizzle/node_modules/commander}/typings/esm.d.mts +0 -0
@@ -1,26 +1,45 @@
1
- export { ClackSettings, isCancel, updateSettings } from '@clack/core';
1
+ import { State, AutocompletePrompt, DateFormat } from '@clack/core';
2
+ export { ClackSettings, DateFormat, isCancel, settings, updateSettings } from '@clack/core';
3
+ import { Readable, Writable } from 'node:stream';
2
4
 
3
- interface TextOptions {
4
- message: string;
5
- placeholder?: string;
6
- defaultValue?: string;
7
- initialValue?: string;
8
- validate?: (value: string) => string | Error | undefined;
5
+ declare const unicode: boolean;
6
+ declare const isCI: () => boolean;
7
+ declare const isTTY: (output: Writable) => boolean;
8
+ declare const unicodeOr: (c: string, fallback: string) => string;
9
+ declare const S_STEP_ACTIVE: string;
10
+ declare const S_STEP_CANCEL: string;
11
+ declare const S_STEP_ERROR: string;
12
+ declare const S_STEP_SUBMIT: string;
13
+ declare const S_BAR_START: string;
14
+ declare const S_BAR: string;
15
+ declare const S_BAR_END: string;
16
+ declare const S_BAR_START_RIGHT: string;
17
+ declare const S_BAR_END_RIGHT: string;
18
+ declare const S_RADIO_ACTIVE: string;
19
+ declare const S_RADIO_INACTIVE: string;
20
+ declare const S_CHECKBOX_ACTIVE: string;
21
+ declare const S_CHECKBOX_SELECTED: string;
22
+ declare const S_CHECKBOX_INACTIVE: string;
23
+ declare const S_PASSWORD_MASK: string;
24
+ declare const S_BAR_H: string;
25
+ declare const S_CORNER_TOP_RIGHT: string;
26
+ declare const S_CONNECT_LEFT: string;
27
+ declare const S_CORNER_BOTTOM_RIGHT: string;
28
+ declare const S_CORNER_BOTTOM_LEFT: string;
29
+ declare const S_CORNER_TOP_LEFT: string;
30
+ declare const S_INFO: string;
31
+ declare const S_SUCCESS: string;
32
+ declare const S_WARN: string;
33
+ declare const S_ERROR: string;
34
+ declare const symbol: (state: State) => string;
35
+ declare const symbolBar: (state: State) => string;
36
+ interface CommonOptions {
37
+ input?: Readable;
38
+ output?: Writable;
39
+ signal?: AbortSignal;
40
+ withGuide?: boolean;
9
41
  }
10
- declare const text: (opts: TextOptions) => Promise<string | symbol>;
11
- interface PasswordOptions {
12
- message: string;
13
- mask?: string;
14
- validate?: (value: string) => string | Error | undefined;
15
- }
16
- declare const password: (opts: PasswordOptions) => Promise<string | symbol>;
17
- interface ConfirmOptions {
18
- message: string;
19
- active?: string;
20
- inactive?: string;
21
- initialValue?: boolean;
22
- }
23
- declare const confirm: (opts: ConfirmOptions) => Promise<boolean | symbol>;
42
+
24
43
  type Primitive = Readonly<string | boolean | number>;
25
44
  type Option<Value> = Value extends Primitive ? {
26
45
  /**
@@ -40,6 +59,13 @@ type Option<Value> = Value extends Primitive ? {
40
59
  * By default, no `hint` is displayed.
41
60
  */
42
61
  hint?: string;
62
+ /**
63
+ * Whether this option is disabled.
64
+ * Disabled options are visible but cannot be selected.
65
+ *
66
+ * By default, options are not disabled.
67
+ */
68
+ disabled?: boolean;
43
69
  } : {
44
70
  /**
45
71
  * Internal data for this option.
@@ -56,68 +82,111 @@ type Option<Value> = Value extends Primitive ? {
56
82
  * By default, no `hint` is displayed.
57
83
  */
58
84
  hint?: string;
85
+ /**
86
+ * Whether this option is disabled.
87
+ * Disabled options are visible but cannot be selected.
88
+ *
89
+ * By default, options are not disabled.
90
+ */
91
+ disabled?: boolean;
59
92
  };
60
- interface SelectOptions<Value> {
93
+ interface SelectOptions<Value> extends CommonOptions {
61
94
  message: string;
62
95
  options: Option<Value>[];
63
96
  initialValue?: Value;
64
97
  maxItems?: number;
65
98
  }
66
- declare const select: <Value>(opts: SelectOptions<Value>) => Promise<symbol | Value>;
67
- declare const selectKey: <Value extends string>(opts: SelectOptions<Value>) => Promise<symbol | Value>;
68
- interface MultiSelectOptions<Value> {
99
+ declare const select: <Value>(opts: SelectOptions<Value>) => Promise<Value | symbol>;
100
+
101
+ interface AutocompleteSharedOptions<Value> extends CommonOptions {
102
+ /**
103
+ * The message to display to the user.
104
+ */
69
105
  message: string;
70
- options: Option<Value>[];
71
- initialValues?: Value[];
106
+ /**
107
+ * Available options for the autocomplete prompt.
108
+ */
109
+ options: Option<Value>[] | ((this: AutocompletePrompt<Option<Value>>) => Option<Value>[]);
110
+ /**
111
+ * Maximum number of items to display at once.
112
+ */
72
113
  maxItems?: number;
73
- required?: boolean;
74
- cursorAt?: Value;
114
+ /**
115
+ * Placeholder text to display when no input is provided.
116
+ */
117
+ placeholder?: string;
118
+ /**
119
+ * Validates the value
120
+ */
121
+ validate?: (value: Value | Value[] | undefined) => string | Error | undefined;
122
+ /**
123
+ * Custom filter function to match options against search input.
124
+ * If not provided, a default filter that matches label, hint, and value is used.
125
+ */
126
+ filter?: (search: string, option: Option<Value>) => boolean;
75
127
  }
76
- declare const multiselect: <Value>(opts: MultiSelectOptions<Value>) => Promise<symbol | Value[]>;
77
- interface GroupMultiSelectOptions<Value> {
78
- message: string;
79
- options: Record<string, Option<Value>[]>;
128
+ interface AutocompleteOptions<Value> extends AutocompleteSharedOptions<Value> {
129
+ /**
130
+ * The initial selected value.
131
+ */
132
+ initialValue?: Value;
133
+ /**
134
+ * The initial user input
135
+ */
136
+ initialUserInput?: string;
137
+ }
138
+ declare const autocomplete: <Value>(opts: AutocompleteOptions<Value>) => Promise<Value | symbol>;
139
+ interface AutocompleteMultiSelectOptions<Value> extends AutocompleteSharedOptions<Value> {
140
+ /**
141
+ * The initial selected values
142
+ */
80
143
  initialValues?: Value[];
144
+ /**
145
+ * If true, at least one option must be selected
146
+ */
81
147
  required?: boolean;
82
- cursorAt?: Value;
83
- selectableGroups?: boolean;
84
148
  }
85
- declare const groupMultiselect: <Value>(opts: GroupMultiSelectOptions<Value>) => Promise<symbol | Value[]>;
86
- declare const note: (message?: string, title?: string) => void;
87
- declare const cancel: (message?: string) => void;
88
- declare const intro: (title?: string) => void;
89
- declare const outro: (message?: string) => void;
90
- type LogMessageOptions = {
91
- symbol?: string;
92
- };
93
- declare const log: {
94
- message: (message?: string, { symbol }?: LogMessageOptions) => void;
95
- info: (message: string) => void;
96
- success: (message: string) => void;
97
- step: (message: string) => void;
98
- warn: (message: string) => void;
99
- /** alias for `log.warn()`. */
100
- warning: (message: string) => void;
101
- error: (message: string) => void;
102
- };
103
- declare const stream: {
104
- message: (iterable: Iterable<string> | AsyncIterable<string>, { symbol }?: LogMessageOptions) => Promise<void>;
105
- info: (iterable: Iterable<string> | AsyncIterable<string>) => Promise<void>;
106
- success: (iterable: Iterable<string> | AsyncIterable<string>) => Promise<void>;
107
- step: (iterable: Iterable<string> | AsyncIterable<string>) => Promise<void>;
108
- warn: (iterable: Iterable<string> | AsyncIterable<string>) => Promise<void>;
109
- /** alias for `log.warn()`. */
110
- warning: (iterable: Iterable<string> | AsyncIterable<string>) => Promise<void>;
111
- error: (iterable: Iterable<string> | AsyncIterable<string>) => Promise<void>;
112
- };
113
- interface SpinnerOptions {
114
- indicator?: 'dots' | 'timer';
149
+ /**
150
+ * Integrated autocomplete multiselect - combines type-ahead filtering with multiselect in one UI
151
+ */
152
+ declare const autocompleteMultiselect: <Value>(opts: AutocompleteMultiSelectOptions<Value>) => Promise<Value[] | symbol>;
153
+
154
+ type BoxAlignment = 'left' | 'center' | 'right';
155
+ interface BoxOptions extends CommonOptions {
156
+ contentAlign?: BoxAlignment;
157
+ titleAlign?: BoxAlignment;
158
+ width?: number | 'auto';
159
+ titlePadding?: number;
160
+ contentPadding?: number;
161
+ rounded?: boolean;
162
+ formatBorder?: (text: string) => string;
115
163
  }
116
- declare const spinner: ({ indicator }?: SpinnerOptions) => {
117
- start: (msg?: string) => void;
118
- stop: (msg?: string, code?: number) => void;
119
- message: (msg?: string) => void;
120
- };
164
+ declare const box: (message?: string, title?: string, opts?: BoxOptions) => void;
165
+
166
+ interface ConfirmOptions extends CommonOptions {
167
+ message: string;
168
+ active?: string;
169
+ inactive?: string;
170
+ initialValue?: boolean;
171
+ vertical?: boolean;
172
+ }
173
+ declare const confirm: (opts: ConfirmOptions) => Promise<boolean | symbol>;
174
+
175
+ interface DateOptions extends CommonOptions {
176
+ message: string;
177
+ format?: DateFormat;
178
+ locale?: string;
179
+ defaultValue?: Date;
180
+ initialValue?: Date;
181
+ minDate?: Date;
182
+ maxDate?: Date;
183
+ validate?: (value: Date | undefined) => string | Error | undefined;
184
+ }
185
+ declare const date: (opts: DateOptions) => Promise<Date | symbol>;
186
+
187
+ type Prettify<T> = {
188
+ [P in keyof T]: T[P];
189
+ } & {};
121
190
  type PromptGroupAwaitedReturn<T> = {
122
191
  [P in keyof T]: Exclude<Awaited<T[P]>, symbol>;
123
192
  };
@@ -130,9 +199,6 @@ interface PromptGroupOptions<T> {
130
199
  results: Prettify<Partial<PromptGroupAwaitedReturn<T>>>;
131
200
  }) => void;
132
201
  }
133
- type Prettify<T> = {
134
- [P in keyof T]: T[P];
135
- } & {};
136
202
  type PromptGroup<T> = {
137
203
  [P in keyof T]: (opts: {
138
204
  results: Prettify<Partial<PromptGroupAwaitedReturn<Omit<T, P>>>>;
@@ -142,7 +208,131 @@ type PromptGroup<T> = {
142
208
  * Define a group of prompts to be displayed
143
209
  * and return a results of objects within the group
144
210
  */
145
- declare const group: <T>(prompts: PromptGroup<T>, opts?: PromptGroupOptions<T> | undefined) => Promise<{ [P in keyof PromptGroupAwaitedReturn<T>]: PromptGroupAwaitedReturn<T>[P]; }>;
211
+ declare const group: <T>(prompts: PromptGroup<T>, opts?: PromptGroupOptions<T>) => Promise<Prettify<PromptGroupAwaitedReturn<T>>>;
212
+
213
+ interface GroupMultiSelectOptions<Value> extends CommonOptions {
214
+ message: string;
215
+ options: Record<string, Option<Value>[]>;
216
+ initialValues?: Value[];
217
+ required?: boolean;
218
+ cursorAt?: Value;
219
+ selectableGroups?: boolean;
220
+ groupSpacing?: number;
221
+ }
222
+ declare const groupMultiselect: <Value>(opts: GroupMultiSelectOptions<Value>) => Promise<Value[] | symbol>;
223
+
224
+ interface LimitOptionsParams<TOption> extends CommonOptions {
225
+ options: TOption[];
226
+ cursor: number;
227
+ style: (option: TOption, active: boolean) => string;
228
+ maxItems?: number;
229
+ columnPadding?: number;
230
+ rowPadding?: number;
231
+ }
232
+ declare const limitOptions: <TOption>({ cursor, options, style, output, maxItems, columnPadding, rowPadding, }: LimitOptionsParams<TOption>) => string[];
233
+
234
+ interface LogMessageOptions extends CommonOptions {
235
+ symbol?: string;
236
+ spacing?: number;
237
+ secondarySymbol?: string;
238
+ }
239
+ declare const log: {
240
+ message: (message?: string | string[], { symbol, secondarySymbol, output, spacing, withGuide, }?: LogMessageOptions) => void;
241
+ info: (message: string, opts?: LogMessageOptions) => void;
242
+ success: (message: string, opts?: LogMessageOptions) => void;
243
+ step: (message: string, opts?: LogMessageOptions) => void;
244
+ warn: (message: string, opts?: LogMessageOptions) => void;
245
+ /** alias for `log.warn()`. */
246
+ warning: (message: string, opts?: LogMessageOptions) => void;
247
+ error: (message: string, opts?: LogMessageOptions) => void;
248
+ };
249
+
250
+ declare const cancel: (message?: string, opts?: CommonOptions) => void;
251
+ declare const intro: (title?: string, opts?: CommonOptions) => void;
252
+ declare const outro: (message?: string, opts?: CommonOptions) => void;
253
+
254
+ interface MultiSelectOptions<Value> extends CommonOptions {
255
+ message: string;
256
+ options: Option<Value>[];
257
+ initialValues?: Value[];
258
+ maxItems?: number;
259
+ required?: boolean;
260
+ cursorAt?: Value;
261
+ }
262
+ declare const multiselect: <Value>(opts: MultiSelectOptions<Value>) => Promise<Value[] | symbol>;
263
+
264
+ type FormatFn = (line: string) => string;
265
+ interface NoteOptions extends CommonOptions {
266
+ format?: FormatFn;
267
+ }
268
+ declare const note: (message?: string, title?: string, opts?: NoteOptions) => void;
269
+
270
+ interface PasswordOptions extends CommonOptions {
271
+ message: string;
272
+ mask?: string;
273
+ validate?: (value: string | undefined) => string | Error | undefined;
274
+ clearOnError?: boolean;
275
+ }
276
+ declare const password: (opts: PasswordOptions) => Promise<string | symbol>;
277
+
278
+ interface PathOptions extends CommonOptions {
279
+ root?: string;
280
+ directory?: boolean;
281
+ initialValue?: string;
282
+ message: string;
283
+ validate?: (value: string | undefined) => string | Error | undefined;
284
+ }
285
+ declare const path: (opts: PathOptions) => Promise<string | symbol>;
286
+
287
+ interface SpinnerOptions extends CommonOptions {
288
+ indicator?: 'dots' | 'timer';
289
+ onCancel?: () => void;
290
+ cancelMessage?: string;
291
+ errorMessage?: string;
292
+ frames?: string[];
293
+ delay?: number;
294
+ styleFrame?: (frame: string) => string;
295
+ }
296
+ interface SpinnerResult {
297
+ start(msg?: string): void;
298
+ stop(msg?: string): void;
299
+ cancel(msg?: string): void;
300
+ error(msg?: string): void;
301
+ message(msg?: string): void;
302
+ clear(): void;
303
+ readonly isCancelled: boolean;
304
+ }
305
+ declare const spinner: ({ indicator, onCancel, output, cancelMessage, errorMessage, frames, delay, signal, ...opts }?: SpinnerOptions) => SpinnerResult;
306
+
307
+ interface ProgressOptions extends SpinnerOptions {
308
+ style?: 'light' | 'heavy' | 'block';
309
+ max?: number;
310
+ size?: number;
311
+ }
312
+ interface ProgressResult extends SpinnerResult {
313
+ advance(step?: number, msg?: string): void;
314
+ }
315
+ declare function progress({ style, max: userMax, size: userSize, ...spinnerOptions }?: ProgressOptions): ProgressResult;
316
+
317
+ interface SelectKeyOptions<Value extends string> extends CommonOptions {
318
+ message: string;
319
+ options: Option<Value>[];
320
+ initialValue?: Value;
321
+ caseSensitive?: boolean;
322
+ }
323
+ declare const selectKey: <Value extends string>(opts: SelectKeyOptions<Value>) => Promise<Value | symbol>;
324
+
325
+ declare const stream: {
326
+ message: (iterable: Iterable<string> | AsyncIterable<string>, { symbol }?: LogMessageOptions) => Promise<void>;
327
+ info: (iterable: Iterable<string> | AsyncIterable<string>) => Promise<void>;
328
+ success: (iterable: Iterable<string> | AsyncIterable<string>) => Promise<void>;
329
+ step: (iterable: Iterable<string> | AsyncIterable<string>) => Promise<void>;
330
+ warn: (iterable: Iterable<string> | AsyncIterable<string>) => Promise<void>;
331
+ /** alias for `log.warn()`. */
332
+ warning: (iterable: Iterable<string> | AsyncIterable<string>) => Promise<void>;
333
+ error: (iterable: Iterable<string> | AsyncIterable<string>) => Promise<void>;
334
+ };
335
+
146
336
  type Task = {
147
337
  /**
148
338
  * Task title
@@ -160,6 +350,42 @@ type Task = {
160
350
  /**
161
351
  * Define a group of tasks to be executed
162
352
  */
163
- declare const tasks: (tasks: Task[]) => Promise<void>;
353
+ declare const tasks: (tasks: Task[], opts?: CommonOptions) => Promise<void>;
354
+
355
+ interface TaskLogOptions extends CommonOptions {
356
+ title: string;
357
+ limit?: number;
358
+ spacing?: number;
359
+ retainLog?: boolean;
360
+ }
361
+ interface TaskLogMessageOptions {
362
+ raw?: boolean;
363
+ }
364
+ interface TaskLogCompletionOptions {
365
+ showLog?: boolean;
366
+ }
367
+ /**
368
+ * Renders a log which clears on success and remains on failure
369
+ */
370
+ declare const taskLog: (opts: TaskLogOptions) => {
371
+ message(msg: string, mopts?: TaskLogMessageOptions): void;
372
+ group(name: string): {
373
+ message(msg: string, mopts?: TaskLogMessageOptions): void;
374
+ error(message: string): void;
375
+ success(message: string): void;
376
+ };
377
+ error(message: string, opts?: TaskLogCompletionOptions): void;
378
+ success(message: string, opts?: TaskLogCompletionOptions): void;
379
+ };
380
+
381
+ interface TextOptions extends CommonOptions {
382
+ message: string;
383
+ placeholder?: string;
384
+ defaultValue?: string;
385
+ initialValue?: string;
386
+ validate?: (value: string | undefined) => string | Error | undefined;
387
+ }
388
+ declare const text: (opts: TextOptions) => Promise<string | symbol>;
164
389
 
165
- export { type ConfirmOptions, type GroupMultiSelectOptions, type LogMessageOptions, type MultiSelectOptions, type Option, type PasswordOptions, type PromptGroup, type PromptGroupAwaitedReturn, type PromptGroupOptions, type SelectOptions, type SpinnerOptions, type Task, type TextOptions, cancel, confirm, group, groupMultiselect, intro, log, multiselect, note, outro, password, select, selectKey, spinner, stream, tasks, text };
390
+ export { S_BAR, S_BAR_END, S_BAR_END_RIGHT, S_BAR_H, S_BAR_START, S_BAR_START_RIGHT, S_CHECKBOX_ACTIVE, S_CHECKBOX_INACTIVE, S_CHECKBOX_SELECTED, S_CONNECT_LEFT, S_CORNER_BOTTOM_LEFT, S_CORNER_BOTTOM_RIGHT, S_CORNER_TOP_LEFT, S_CORNER_TOP_RIGHT, S_ERROR, S_INFO, S_PASSWORD_MASK, S_RADIO_ACTIVE, S_RADIO_INACTIVE, S_STEP_ACTIVE, S_STEP_CANCEL, S_STEP_ERROR, S_STEP_SUBMIT, S_SUCCESS, S_WARN, autocomplete, autocompleteMultiselect, box, cancel, confirm, date, group, groupMultiselect, intro, isCI, isTTY, limitOptions, log, multiselect, note, outro, password, path, progress, select, selectKey, spinner, stream, symbol, symbolBar, taskLog, tasks, text, unicode, unicodeOr };
391
+ export type { AutocompleteMultiSelectOptions, AutocompleteOptions, BoxAlignment, BoxOptions, CommonOptions, ConfirmOptions, DateOptions, GroupMultiSelectOptions, LimitOptionsParams, LogMessageOptions, MultiSelectOptions, NoteOptions, Option, PasswordOptions, PathOptions, ProgressOptions, ProgressResult, PromptGroup, PromptGroupAwaitedReturn, PromptGroupOptions, SelectKeyOptions, SelectOptions, SpinnerOptions, SpinnerResult, Task, TaskLogCompletionOptions, TaskLogMessageOptions, TaskLogOptions, TextOptions };