pass_manager/src/state.rs

33 lines
741 B
Rust
Raw Normal View History

2023-05-09 17:27:58 +00:00
//! This module consists of endpoints to handle the state
2023-05-03 18:08:14 +00:00
mod generic;
mod handler;
2023-05-03 18:08:14 +00:00
pub use handler::{Handler, MessageIds, PackagedHandler};
2023-05-27 23:21:50 +00:00
2023-07-29 13:07:53 +00:00
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;
2023-05-27 23:21:50 +00:00
#[derive(Default, Clone)]
pub enum State {
#[default]
Start,
GetNewName(PackagedHandler<String>),
2023-05-27 23:21:50 +00:00
GetMasterPass(PackagedHandler<String>),
GetNewMasterPass(PackagedHandler<String>),
2023-05-27 23:21:50 +00:00
GetLogin(PackagedHandler<String>),
GetPassword(PackagedHandler<String>),
GetUser(PackagedHandler<User>),
}
pub type MainDialogue = Dialogue<State, InMemStorage<State>>;