bitwarden_core/auth/api/response/
identity_token_fail_response.rs1use core::fmt;
2
3use serde::{Deserialize, Serialize};
4
5#[derive(Serialize, Deserialize, Debug, PartialEq, Clone)]
6pub struct IdentityTokenFailResponse {
7 pub error: String,
8 pub error_description: String,
9 #[serde(alias = "ErrorModel")]
10 pub error_model: ErrorModel,
11}
12
13impl fmt::Display for IdentityTokenFailResponse {
14 fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
15 let msg = match self.error_model.message.trim().is_empty() {
16 true => format!("{}: {}", self.error, self.error_description),
17 false => self.error_model.message.clone(),
18 };
19
20 write!(f, "{}", msg)
21 }
22}
23
24#[derive(Serialize, Deserialize, Debug, PartialEq, Clone)]
25pub struct ErrorModel {
26 #[serde(alias = "Message")]
27 pub message: String,
28 #[serde(alias = "Object")]
29 object: String,
30}
31
32impl fmt::Display for ErrorModel {
33 fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
34 write!(f, "{}", self.message)
35 }
36}