authentik_client/models/
notification.rs1use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
16pub struct Notification {
17 #[serde(rename = "pk")]
18 pub pk: uuid::Uuid,
19 #[serde(rename = "severity")]
20 pub severity: models::SeverityEnum,
21 #[serde(rename = "body")]
22 pub body: String,
23 #[serde(
24 rename = "hyperlink",
25 default,
26 with = "::serde_with::rust::double_option",
27 skip_serializing_if = "Option::is_none"
28 )]
29 pub hyperlink: Option<Option<String>>,
30 #[serde(
31 rename = "hyperlink_label",
32 default,
33 with = "::serde_with::rust::double_option",
34 skip_serializing_if = "Option::is_none"
35 )]
36 pub hyperlink_label: Option<Option<String>>,
37 #[serde(rename = "created")]
38 pub created: String,
39 #[serde(rename = "event", skip_serializing_if = "Option::is_none")]
40 pub event: Option<models::Event>,
41 #[serde(rename = "seen", skip_serializing_if = "Option::is_none")]
42 pub seen: Option<bool>,
43}
44
45impl Notification {
46 pub fn new(pk: uuid::Uuid, severity: models::SeverityEnum, body: String, created: String) -> Notification {
48 Notification {
49 pk,
50 severity,
51 body,
52 hyperlink: None,
53 hyperlink_label: None,
54 created,
55 event: None,
56 seen: None,
57 }
58 }
59}