1786299019
This commit is contained in:
@@ -183,30 +183,30 @@ fn toggle_action(current_state: &str, on_state: &str) -> &'static str {
|
||||
const REQUEST_TIMEOUT: Duration = Duration::from_secs(12);
|
||||
|
||||
#[derive(Clone)]
|
||||
pub struct HaClient {
|
||||
pub agent: ureq::Agent,
|
||||
pub base_url: String,
|
||||
pub token: String,
|
||||
struct HaClient {
|
||||
agent: ureq::Agent,
|
||||
base_url: String,
|
||||
token: String,
|
||||
}
|
||||
|
||||
#[derive(Deserialize)]
|
||||
pub struct HaCalendar {
|
||||
pub entity_id: String,
|
||||
pub name: String,
|
||||
struct HaCalendar {
|
||||
entity_id: String,
|
||||
name: String,
|
||||
}
|
||||
|
||||
#[derive(Deserialize)]
|
||||
pub struct HaCalendarEvent {
|
||||
pub uid: String,
|
||||
pub summary: String,
|
||||
pub start: HaCalendarTime,
|
||||
struct HaCalendarEvent {
|
||||
uid: String,
|
||||
summary: String,
|
||||
start: HaCalendarTime,
|
||||
}
|
||||
|
||||
#[derive(Deserialize)]
|
||||
pub struct HaCalendarTime {
|
||||
struct HaCalendarTime {
|
||||
#[serde(rename = "dateTime")]
|
||||
pub date_time: Option<String>,
|
||||
pub date: Option<String>,
|
||||
date_time: Option<String>,
|
||||
date: Option<String>,
|
||||
}
|
||||
|
||||
#[derive(Clone, Debug, PartialEq)]
|
||||
@@ -220,7 +220,7 @@ pub struct CalendarEvent {
|
||||
}
|
||||
|
||||
impl HaClient {
|
||||
pub fn from_environment() -> Result<Self, String> {
|
||||
fn from_environment() -> Result<Self, String> {
|
||||
let base_url = std::env::var("HASS_URL")
|
||||
.map_err(|_| "HASS_URL is not configured".to_string())?
|
||||
.trim_end_matches('/')
|
||||
@@ -272,7 +272,7 @@ impl HaClient {
|
||||
.map_err(|error| format!("{entity_id}: invalid response: {error}"))
|
||||
}
|
||||
|
||||
pub fn fetch_calendar_events(&self) -> Result<Vec<CalendarEvent>, String> {
|
||||
fn fetch_calendar_events(&self) -> Result<Vec<CalendarEvent>, String> {
|
||||
let now = Local::now();
|
||||
let start = now.to_rfc3339();
|
||||
let end = (now + chrono::Duration::days(30)).to_rfc3339();
|
||||
@@ -302,7 +302,7 @@ impl HaClient {
|
||||
}
|
||||
}
|
||||
|
||||
pub fn format_calendar_time(value: &HaCalendarTime) -> Option<(i64, String, String)> {
|
||||
fn format_calendar_time(value: &HaCalendarTime) -> Option<(i64, String, String)> {
|
||||
if let Some(date_time) = value.date_time.as_deref() {
|
||||
let parsed = DateTime::parse_from_rfc3339(date_time).ok()?;
|
||||
return Some((
|
||||
|
||||
Reference in New Issue
Block a user