62 lines
1.1 KiB
Bash
62 lines
1.1 KiB
Bash
#!/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... " _
|
|
}
|