Module: Testprune::UI::Styles
- Defined in:
- lib/testprune/ui/styles.rb
Overview
Centralized style palette. All UI components pull from here so the visual identity stays consistent and editable in one place.
Colors degrade automatically when NO_COLOR=1 is set (lipgloss strips ANSI).
Constant Summary collapse
- PURPLE =
── Color hex constants ──────────────────────────────────────────────────
'#7D56F4'- GREEN =
brand / borders / interactive
'#22C55E'- AMBER =
HIGH confidence / success / safe
'#F59E0B'- GRAY =
MEDIUM confidence / warnings
'#6B7280'- RED =
LOW confidence
'#EF4444'- EMERALD =
errors / unsafe removals
'#10B981'- META =
scan complete / patch written
'#9CA3AF'- DIM =
subdued meta-text (kept by, covers, timestamps)
'#3D3D5C'- TEXT =
decorators / separators
'#E2E8F0'- HEADER_BOX =
Rounded box with purple border — used for command headers.
Lipgloss::Style.new .border(:rounded) .border_foreground(PURPLE) .padding(0, 1)
- SUCCESS_BOX =
Rounded box with emerald border — used for success summaries.
Lipgloss::Style.new .border(:rounded) .border_foreground(EMERALD) .padding(0, 1)
- REPORT_BOX =
Rounded box with purple border — used for report sections and savings.
Lipgloss::Style.new .border(:rounded) .border_foreground(PURPLE) .padding(0, 1)
- HIGH_BADGE =
Confidence badges
Lipgloss::Style.new.foreground(GREEN).bold(true)
- MEDIUM_BADGE =
Lipgloss::Style.new.foreground(AMBER).bold(true)
- LOW_BADGE =
Lipgloss::Style.new.foreground(GRAY)
- SAFE_LINE =
Inline text styles
Lipgloss::Style.new.foreground(GREEN)
- UNSAFE_LINE =
Lipgloss::Style.new.foreground(RED).bold(true)
- META_TEXT =
Lipgloss::Style.new.foreground(META)
- DIM_TEXT =
Lipgloss::Style.new.foreground(DIM)
- PURPLE_TEXT =
Lipgloss::Style.new.foreground(PURPLE)
- GREEN_TEXT =
Lipgloss::Style.new.foreground(GREEN)
- AMBER_TEXT =
Lipgloss::Style.new.foreground(AMBER)
- ERROR_TEXT =
Lipgloss::Style.new.foreground(RED).bold(true)
- EMERALD_TEXT =
Lipgloss::Style.new.foreground(EMERALD)