first
This commit is contained in:
61
lib/ui.sh
Normal file
61
lib/ui.sh
Normal file
@@ -0,0 +1,61 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
UI_RESET=$'\033[0m'
|
||||
UI_BOLD=$'\033[1m'
|
||||
UI_BLUE=$'\033[34m'
|
||||
UI_GREEN=$'\033[32m'
|
||||
UI_YELLOW=$'\033[33m'
|
||||
UI_RED=$'\033[31m'
|
||||
|
||||
ui_header() {
|
||||
local message="$1"
|
||||
printf '\n%s%s== %s ==%s\n\n' "$UI_BOLD" "$UI_BLUE" "$message" "$UI_RESET"
|
||||
}
|
||||
|
||||
ui_section() {
|
||||
local message="$1"
|
||||
printf '%s[%s]%s\n' "$UI_BLUE" "$message" "$UI_RESET"
|
||||
}
|
||||
|
||||
ui_info() {
|
||||
local message="$1"
|
||||
printf '%s[INFO]%s %s\n' "$UI_BLUE" "$UI_RESET" "$message"
|
||||
}
|
||||
|
||||
ui_success() {
|
||||
local message="$1"
|
||||
printf '%s[OK]%s %s\n' "$UI_GREEN" "$UI_RESET" "$message"
|
||||
}
|
||||
|
||||
ui_warn() {
|
||||
local message="$1"
|
||||
printf '%s[WARN]%s %s\n' "$UI_YELLOW" "$UI_RESET" "$message"
|
||||
}
|
||||
|
||||
ui_error() {
|
||||
local message="$1"
|
||||
printf '%s[ERR]%s %s\n' "$UI_RED" "$UI_RESET" "$message" >&2
|
||||
}
|
||||
|
||||
ui_menu() {
|
||||
local title="$1"
|
||||
shift
|
||||
local option
|
||||
|
||||
ui_section "$title"
|
||||
for option in "$@"; do
|
||||
printf ' - %s\n' "$option"
|
||||
done
|
||||
}
|
||||
|
||||
ui_confirm() {
|
||||
local prompt="$1"
|
||||
local answer=""
|
||||
|
||||
read -r -p "$prompt [y/N] " answer
|
||||
[[ "$answer" =~ ^[Yy]$ ]]
|
||||
}
|
||||
|
||||
ui_pause() {
|
||||
read -r -p "Appuyer sur Entree pour continuer... " _
|
||||
}
|
||||
Reference in New Issue
Block a user