use std::fmt::{Debug, Formatter};
use serde::{Serialize, Deserialize};
use crate::{ConnectState, FlowState};
use crate::device::device::Connector;
#[derive(Serialize, Deserialize, Clone)]
#[serde(rename_all = "camelCase")]
pub struct WhatsAppFlow {
#[serde(default)]
pub ddis: Vec<String>,
#[serde(default = "crate::device::shared::build_connect_to")]
pub connect_to: String,
}
impl Connector for WhatsAppFlow {
fn get_connect_to(&mut self, _state: &mut FlowState) -> ConnectState {
ConnectState::default(&self.connect_to, None)
}
}
impl Debug for WhatsAppFlow {
fn fmt(&self, f: &mut Formatter<'_>) -> std::fmt::Result {
f.debug_struct("WhatsAppFlow")
.field("ddis", &self.ddis)
.field("connect_to", &self.connect_to)
.finish()
}
}