Moved progress bar

This commit is contained in:
perp 2024-07-09 17:07:29 +01:00
parent fcd64b3bcf
commit 84615c7f3b

View File

@ -6,13 +6,13 @@ import (
"slices" "slices"
"strings" "strings"
"git.supernets.org/perp/blink/v1/internal/bar"
"git.supernets.org/perp/blink/v1/internal/file" "git.supernets.org/perp/blink/v1/internal/file"
"git.supernets.org/perp/blink/v1/pkg/dns" "git.supernets.org/perp/blink/v1/pkg/dns"
"git.supernets.org/perp/blink/v1/pkg/runner" "git.supernets.org/perp/blink/v1/pkg/runner"
"github.com/fatih/color" "github.com/fatih/color"
"github.com/rs/zerolog" "github.com/rs/zerolog"
"github.com/rs/zerolog/log" "github.com/rs/zerolog/log"
"github.com/schollz/progressbar/v3"
"github.com/spf13/cobra" "github.com/spf13/cobra"
) )
@ -91,45 +91,30 @@ var rootCmd = &cobra.Command{
// Store task count // Store task count
tasks := len(opts.Wordlist) * len(opts.Domains) tasks := len(opts.Wordlist) * len(opts.Domains)
// Create progress bar // Create bar
bar := progressbar.NewOptions(tasks, pb := bar.New(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: "]",
}),
)
// Store shown // Store shown
var shown bool // var shown bool
// Handle results // Handle results
opts.OnResult = func(result *dns.Result) { opts.OnResult = func(result *dns.Result) {
bar.Add(1) defer pb.RenderBlank()
pb.Add(1)
pb.Clear()
if !shown { //if !shown {
if result.Wildcard { // if result.Wildcard {
log.Warn().Str("domain", result.Domain).Msg("Wildcard detected") // log.Warn().Str("domain", result.Domain).Msg("Wildcard detected")
shown = true // shown = true
} // }
} //}
// Error found // Error found
if result.Error != nil { if result.Error != nil {
// Debug mode enabled // Debug mode enabled
if debug { if debug {
bar.Clear()
log.Debug().Msg(result.Error.Error()) log.Debug().Msg(result.Error.Error())
bar.RenderBlank()
} }
return return
} }
@ -154,16 +139,12 @@ var rootCmd = &cobra.Command{
ipv4 := "[" + strings.Join(ipv4s, ", ") + "]" ipv4 := "[" + strings.Join(ipv4s, ", ") + "]"
ipv6 := "[" + strings.Join(ipv6s, ", ") + "]" ipv6 := "[" + strings.Join(ipv6s, ", ") + "]"
bar.Clear()
// Check IPv6 // Check IPv6
if !opts.IPv6 { if !opts.IPv6 {
log.Info().Str("addresses", ipv4).Msgf("%s", result.Subdomain) log.Info().Str("addresses", ipv4).Msgf("%s", result.Subdomain)
} else { } else {
log.Info().Str("addresses", ipv6).Msgf("%s", result.Subdomain) log.Info().Str("addresses", ipv6).Msgf("%s", result.Subdomain)
} }
bar.RenderBlank()
} }
// Create runner // Create runner