refactor to decouple commands form entrypoint for reusability and centralizing commands.

Increase reusability and composition
This commit is contained in:
Robin Olsen
2026-02-22 19:46:55 +01:00
parent 118e67dbf4
commit 33c8c05ae3
28 changed files with 305 additions and 282 deletions

22
pkg/repl/options.go Normal file
View File

@@ -0,0 +1,22 @@
package repl
import "github.com/c-bata/go-prompt"
const PromptPrefix = "> "
const OptionMaxSuggestions = 5
// promptOptions returns a slice of prompt.Option
// to configure the behavior and appearance of the REPL prompt.
func promptOptions(history []string) []prompt.Option {
return []prompt.Option{
prompt.OptionPrefixTextColor(prompt.Cyan),
prompt.OptionMaxSuggestion(OptionMaxSuggestions),
prompt.OptionSuggestionBGColor(prompt.DefaultColor),
prompt.OptionSelectedSuggestionBGColor(prompt.DefaultColor),
prompt.OptionDescriptionBGColor(prompt.DefaultColor),
prompt.OptionSelectedDescriptionBGColor(prompt.DefaultColor),
prompt.OptionPreviewSuggestionBGColor(prompt.DefaultColor),
prompt.OptionScrollbarBGColor(prompt.DefaultColor),
prompt.OptionHistory(history),
}
}