package status import ( "fmt" "strings" ) const ( obrimStatusLabelInfo = "INFO" obrimStatusLabelWarning = "WARNING" obrimStatusLabelSuccess = "SUCCESS" obrimStatusLabelError = "ERROR" ) // obrimStatusIndicatorRegistry stores status indicators. var obrimStatusIndicatorRegistry = map[string]string{ obrimStatusLabelInfo: "ℹ", obrimStatusLabelWarning: "⚠", obrimStatusLabelSuccess: "✓", obrimStatusLabelError: "✖", } // ObrimStatus emits a standardized CLI status message. func ObrimStatus(label string, message string) { normalizedLabel := obrimStatusNormalizeLabel(label) formattedLabel := obrimStatusFormatLabel(normalizedLabel) formattedIndicator := obrimStatusFormatIndicator(normalizedLabel) formattedMessage := obrimStatusBuildMessage( formattedLabel, formattedIndicator, message, ) fmt.Println(formattedMessage) } // obrimStatusNormalizeLabel normalizes and validates labels. func obrimStatusNormalizeLabel(label string) string { normalizedLabel := strings.ToUpper(strings.TrimSpace(label)) switch normalizedLabel { case obrimStatusLabelInfo: return obrimStatusLabelInfo case obrimStatusLabelWarning: return obrimStatusLabelWarning case obrimStatusLabelSuccess: return obrimStatusLabelSuccess case obrimStatusLabelError: return obrimStatusLabelError default: return obrimStatusLabelInfo } } // obrimStatusFormatLabel formats semantic labels. func obrimStatusFormatLabel(label string) string { return fmt.Sprintf("[%s]", label) } // obrimStatusFormatIndicator generates visual status indicators. func obrimStatusFormatIndicator(label string) string { indicator, exists := obrimStatusIndicatorRegistry[label] if !exists { return obrimStatusIndicatorRegistry[obrimStatusLabelInfo] } return indicator } // obrimStatusBuildMessage constructs the final terminal message. func obrimStatusBuildMessage( label string, indicator string, message string, ) string { return fmt.Sprintf("%s %s %s", indicator, label, message) }