feat: Replace figlet with @clack/prompts for polished CLI experience
Replaces ASCII art banner and basic readline prompts with @clack/prompts for a modern interactive CLI. Adds animated shimmer progress bars with spinner glyphs during indexing operations. Improves installer UX with structured prompts, better error handling, and cleaner output formatting throughout all CLI commands.
This commit is contained in:
Vendored
+43
@@ -0,0 +1,43 @@
|
||||
/**
|
||||
* Type declarations for @clack/prompts
|
||||
*
|
||||
* The package ships ESM-only (.d.mts) which TypeScript can't resolve
|
||||
* with moduleResolution "node". We declare the subset we use here.
|
||||
*/
|
||||
|
||||
declare module '@clack/prompts' {
|
||||
export function intro(title?: string): void;
|
||||
export function outro(message?: string): void;
|
||||
export function cancel(message?: string): void;
|
||||
export function isCancel(value: unknown): value is symbol;
|
||||
|
||||
export function confirm(opts: {
|
||||
message: string;
|
||||
active?: string;
|
||||
inactive?: string;
|
||||
initialValue?: boolean;
|
||||
}): Promise<boolean | symbol>;
|
||||
|
||||
export function select<Value>(opts: {
|
||||
message: string;
|
||||
options: { value: Value; label: string; hint?: string }[];
|
||||
initialValue?: Value;
|
||||
}): Promise<Value | symbol>;
|
||||
|
||||
export function spinner(): {
|
||||
start(message?: string): void;
|
||||
stop(message?: string): void;
|
||||
message(message?: string): void;
|
||||
};
|
||||
|
||||
export function note(message: string, title?: string): void;
|
||||
|
||||
export const log: {
|
||||
message(message: string): void;
|
||||
info(message: string): void;
|
||||
success(message: string): void;
|
||||
step(message: string): void;
|
||||
warn(message: string): void;
|
||||
error(message: string): void;
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user