pub mod grok;
pub mod sa;
pub mod twitter;
use night_fury_core::BrowserSession;
use night_fury_daemon_core::protocol::Response;
use serde_json::Value;
use tail_fin_core::Site;
pub async fn dispatch(
site: &dyn Site,
session: &BrowserSession,
id: &str,
cmd: &str,
params: &Value,
) -> Option<Response> {
match site.id() {
"sa" if cmd.starts_with("sa.") => Some(sa::handle(session, id, cmd, params).await),
"twitter" if cmd.starts_with("twitter.") => {
Some(twitter::handle(session, id, cmd, params).await)
}
"grok" if cmd.starts_with("grok.") => Some(grok::handle(session, id, cmd, params).await),
_ => None,
}
}