pass_manager/src/state.rs

33 lines
753 B
Rust

//! This module consists of endpoints to handle the state
mod generic;
mod handler;
pub use handler::{Handler, MessageIds, Packaged as PackagedHandler};
crate::export_handlers!(
get_login,
get_master_pass,
get_new_master_pass,
get_new_name,
get_password,
get_user
);
use crate::prelude::*;
use teloxide::dispatching::dialogue::InMemStorage;
#[derive(Default, Clone)]
pub enum State {
#[default]
Start,
GetNewName(PackagedHandler<String>),
GetMasterPass(PackagedHandler<String>),
GetNewMasterPass(PackagedHandler<String>),
GetLogin(PackagedHandler<String>),
GetPassword(PackagedHandler<String>),
GetUser(PackagedHandler<User>),
}
pub type MainDialogue = Dialogue<State, InMemStorage<State>>;