@@ -5,7 +5,7 @@ import readline from "node:readline";
5
5
import * as TTY from "node:tty" ;
6
6
7
7
// Import Third-party Dependencies
8
- import cliSpinners , { type SpinnerName , type Spinner as CliSpinner } from "cli-spinners" ;
8
+ import * as cliSpinners from "cli-spinners" ;
9
9
import stripAnsi from "strip-ansi" ;
10
10
import ansiRegex from "ansi-regex" ;
11
11
import wcwidth from "@topcli/wcwidth" ;
@@ -15,7 +15,7 @@ import kleur from "kleur";
15
15
let internalSpinnerCount = 0 ;
16
16
17
17
// CONSTANTS
18
- const kDefaultSpinnerName = "dots" satisfies SpinnerName ;
18
+ const kDefaultSpinnerName = "dots" satisfies cliSpinners . SpinnerName ;
19
19
const kLogSymbols = process . platform !== "win32" || process . env . CI || process . env . TERM === "xterm-256color" ?
20
20
{ success : kleur . bold ( ) . green ( "✔" ) , error : kleur . bold ( ) . red ( "✖" ) } :
21
21
{ success : kleur . bold ( ) . green ( "√" ) , error : kleur . bold ( ) . red ( "×" ) } ;
@@ -26,7 +26,7 @@ export interface ISpinnerOptions {
26
26
*
27
27
* @default "dots"
28
28
*/
29
- name ?: SpinnerName ;
29
+ name ?: cliSpinners . SpinnerName ;
30
30
/**
31
31
* Spinner frame color
32
32
*
@@ -54,7 +54,7 @@ export class Spinner extends EventEmitter {
54
54
55
55
#verbose = true ;
56
56
#started = false ;
57
- #spinner: CliSpinner ;
57
+ #spinner: cliSpinners . Spinner ;
58
58
#text = "" ;
59
59
#prefix = "" ;
60
60
#color: ( stdout : string ) => string ;
@@ -124,7 +124,7 @@ export class Spinner extends EventEmitter {
124
124
const terminalCol = this . stream . columns ;
125
125
const defaultRaw = `${ this . #getSpinnerFrame( spinnerSymbol ) } ${ this . #prefix} ${ this . text } ` ;
126
126
127
- let regexArray : any [ ] = [ ] ;
127
+ let regexArray : any [ ] ;
128
128
let count = 0 ;
129
129
while ( 1 ) {
130
130
regexArray = defaultRaw
@@ -135,7 +135,7 @@ export class Spinner extends EventEmitter {
135
135
}
136
136
count = regexArray . length ;
137
137
}
138
- count += regexArray . reduce ( ( prev , curr ) => prev + wcwidth ( curr ) , 0 ) ;
138
+ count += regexArray ! . reduce ( ( prev , curr ) => prev + wcwidth ( curr ) , 0 ) ;
139
139
140
140
return wcwidth ( stripAnsi ( defaultRaw ) ) > terminalCol ?
141
141
`${ defaultRaw . slice ( 0 , terminalCol + count ) } \x1B[0m` :
0 commit comments