diff --git a/v1/cmd/blink/main.go b/v1/cmd/blink/main.go index 41e1c0a..752c07d 100644 --- a/v1/cmd/blink/main.go +++ b/v1/cmd/blink/main.go @@ -6,13 +6,13 @@ import ( "slices" "strings" + "git.supernets.org/perp/blink/v1/internal/bar" "git.supernets.org/perp/blink/v1/internal/file" "git.supernets.org/perp/blink/v1/pkg/dns" "git.supernets.org/perp/blink/v1/pkg/runner" "github.com/fatih/color" "github.com/rs/zerolog" "github.com/rs/zerolog/log" - "github.com/schollz/progressbar/v3" "github.com/spf13/cobra" ) @@ -91,45 +91,30 @@ var rootCmd = &cobra.Command{ // Store task count tasks := len(opts.Wordlist) * len(opts.Domains) - // Create progress bar - bar := progressbar.NewOptions(tasks, - progressbar.OptionSetWriter(os.Stderr), - progressbar.OptionShowCount(), - progressbar.OptionShowIts(), - progressbar.OptionSetPredictTime(false), - progressbar.OptionClearOnFinish(), - progressbar.OptionEnableColorCodes(true), - progressbar.OptionSetWidth(40), - progressbar.OptionSetTheme(progressbar.Theme{ - Saucer: "[blue]=[reset]", - SaucerHead: "[blue]>[reset]", - SaucerPadding: " ", - BarStart: "[", - BarEnd: "]", - }), - ) + // Create bar + pb := bar.New(tasks) // Store shown - var shown bool + // var shown bool // Handle results opts.OnResult = func(result *dns.Result) { - bar.Add(1) + defer pb.RenderBlank() + pb.Add(1) + pb.Clear() - if !shown { - if result.Wildcard { - log.Warn().Str("domain", result.Domain).Msg("Wildcard detected") - shown = true - } - } + //if !shown { + // if result.Wildcard { + // log.Warn().Str("domain", result.Domain).Msg("Wildcard detected") + // shown = true + // } + //} // Error found if result.Error != nil { // Debug mode enabled if debug { - bar.Clear() log.Debug().Msg(result.Error.Error()) - bar.RenderBlank() } return } @@ -154,16 +139,12 @@ var rootCmd = &cobra.Command{ ipv4 := "[" + strings.Join(ipv4s, ", ") + "]" ipv6 := "[" + strings.Join(ipv6s, ", ") + "]" - bar.Clear() - // Check IPv6 if !opts.IPv6 { log.Info().Str("addresses", ipv4).Msgf("%s", result.Subdomain) } else { log.Info().Str("addresses", ipv6).Msgf("%s", result.Subdomain) } - - bar.RenderBlank() } // Create runner