use mobiler_core::*;
use serde::{Deserialize, Serialize};
#[derive(Serialize, Deserialize, Clone)]
pub enum Msg {
SignedIn(String),
BookingConfirmed,
Noop(PluginResponse),
}
impl MyApp {
fn handle(&self, msg: Msg, _model: &mut Model, cx: &mut Cx<Msg>) {
match msg {
Msg::SignedIn(user_id) => {
cx.plugin("analytics", "setUserId", &user_id, Msg::Noop);
cx.plugin("analytics", "setUserProperty", r#"{"name":"plan","value":"pro"}"#, Msg::Noop);
}
Msg::BookingConfirmed => {
cx.plugin(
"analytics",
"logEvent",
r#"{"name":"booking_confirmed","params":{"service":"fade","value":35}}"#,
Msg::Noop,
);
}
Msg::Noop(_r) => {}
}
}
}