// DragonX Wallet - ImGui Edition
// Copyright 2024-2026 The Hush Developers
// Released under the GPLv3
//
// ConsoleChannel — the semantic classification of a console line. It is the canonical
// key: producers (the command executor, app log forwarders, the result formatter) tag
// each line with a channel, the UI derives both the text color and the left accent-bar
// color from it at draw time, and the output filter keys off it. This replaces the older
// approach of storing an ImU32 color and reverse-engineering the source from color
// equality + a "[daemon] " text prefix.

#pragma once

namespace dragonx {
namespace ui {

enum class ConsoleChannel {
    None = 0,     // plain result / default text
    Command,      // the "> cmd" echo
    Info,         // informational / help text
    Success,      // positive events (connected, accepted, ready)
    Warning,      // non-fatal warnings (amber)
    Error,        // errors
    Rpc,          // RPC trace lines
    Daemon,       // dragonxd log output
    Xmrig,        // miner log output
    App,          // app / wallet / lite-diagnostics log
    JsonKey,      // result JSON: object key
    JsonString,   // result JSON: string value
    JsonNumber,   // result JSON: number / bool / null
    JsonBrace,    // result JSON: braces / brackets
};

} // namespace ui
} // namespace dragonx
