diff --git a/hvac_mode_setting.go b/hvac_mode_setting.go new file mode 100644 index 0000000..3360720 --- /dev/null +++ b/hvac_mode_setting.go @@ -0,0 +1,59 @@ +// This file was auto-generated by Fern from our API Definition. + +package api + +import ( + json "encoding/json" + fmt "fmt" + strconv "strconv" +) + +type HvacModeSetting uint8 + +const ( + HvacModeSettingOff HvacModeSetting = iota + 1 + HvacModeSettingHeat + HvacModeSettingCool + HvacModeSettingHeatcool +) + +func (h HvacModeSetting) String() string { + switch h { + default: + return strconv.Itoa(int(h)) + case HvacModeSettingOff: + return "off" + case HvacModeSettingHeat: + return "heat" + case HvacModeSettingCool: + return "cool" + case HvacModeSettingHeatcool: + return "heatcool" + } +} + +func (h HvacModeSetting) MarshalJSON() ([]byte, error) { + return []byte(fmt.Sprintf("%q", h.String())), nil +} + +func (h *HvacModeSetting) UnmarshalJSON(data []byte) error { + var raw string + if err := json.Unmarshal(data, &raw); err != nil { + return err + } + switch raw { + case "off": + value := HvacModeSettingOff + *h = value + case "heat": + value := HvacModeSettingHeat + *h = value + case "cool": + value := HvacModeSettingCool + *h = value + case "heatcool": + value := HvacModeSettingHeatcool + *h = value + } + return nil +} diff --git a/thermostats_update_request_default_climate_setting.go b/thermostats_update_request_default_climate_setting.go index c8716e7..d07215b 100644 --- a/thermostats_update_request_default_climate_setting.go +++ b/thermostats_update_request_default_climate_setting.go @@ -3,12 +3,12 @@ package api type ThermostatsUpdateRequestDefaultClimateSetting struct { - AutomaticHeatingEnabled *bool `json:"automatic_heating_enabled,omitempty"` - AutomaticCoolingEnabled *bool `json:"automatic_cooling_enabled,omitempty"` - HvacModeSetting *ThermostatsUpdateRequestDefaultClimateSettingHvacModeSetting `json:"hvac_mode_setting,omitempty"` - CoolingSetPointCelsius *float64 `json:"cooling_set_point_celsius,omitempty"` - HeatingSetPointCelsius *float64 `json:"heating_set_point_celsius,omitempty"` - CoolingSetPointFahrenheit *float64 `json:"cooling_set_point_fahrenheit,omitempty"` - HeatingSetPointFahrenheit *float64 `json:"heating_set_point_fahrenheit,omitempty"` - ManualOverrideAllowed *bool `json:"manual_override_allowed,omitempty"` + AutomaticHeatingEnabled *bool `json:"automatic_heating_enabled,omitempty"` + AutomaticCoolingEnabled *bool `json:"automatic_cooling_enabled,omitempty"` + HvacModeSetting *HvacModeSetting `json:"hvac_mode_setting,omitempty"` + CoolingSetPointCelsius *float64 `json:"cooling_set_point_celsius,omitempty"` + HeatingSetPointCelsius *float64 `json:"heating_set_point_celsius,omitempty"` + CoolingSetPointFahrenheit *float64 `json:"cooling_set_point_fahrenheit,omitempty"` + HeatingSetPointFahrenheit *float64 `json:"heating_set_point_fahrenheit,omitempty"` + ManualOverrideAllowed *bool `json:"manual_override_allowed,omitempty"` } diff --git a/thermostats_update_request_default_climate_setting_hvac_mode_setting.go b/thermostats_update_request_default_climate_setting_hvac_mode_setting.go deleted file mode 100644 index f6c15fe..0000000 --- a/thermostats_update_request_default_climate_setting_hvac_mode_setting.go +++ /dev/null @@ -1,59 +0,0 @@ -// This file was auto-generated by Fern from our API Definition. - -package api - -import ( - json "encoding/json" - fmt "fmt" - strconv "strconv" -) - -type ThermostatsUpdateRequestDefaultClimateSettingHvacModeSetting uint8 - -const ( - ThermostatsUpdateRequestDefaultClimateSettingHvacModeSettingOff ThermostatsUpdateRequestDefaultClimateSettingHvacModeSetting = iota + 1 - ThermostatsUpdateRequestDefaultClimateSettingHvacModeSettingHeat - ThermostatsUpdateRequestDefaultClimateSettingHvacModeSettingCool - ThermostatsUpdateRequestDefaultClimateSettingHvacModeSettingHeatcool -) - -func (t ThermostatsUpdateRequestDefaultClimateSettingHvacModeSetting) String() string { - switch t { - default: - return strconv.Itoa(int(t)) - case ThermostatsUpdateRequestDefaultClimateSettingHvacModeSettingOff: - return "off" - case ThermostatsUpdateRequestDefaultClimateSettingHvacModeSettingHeat: - return "heat" - case ThermostatsUpdateRequestDefaultClimateSettingHvacModeSettingCool: - return "cool" - case ThermostatsUpdateRequestDefaultClimateSettingHvacModeSettingHeatcool: - return "heatcool" - } -} - -func (t ThermostatsUpdateRequestDefaultClimateSettingHvacModeSetting) MarshalJSON() ([]byte, error) { - return []byte(fmt.Sprintf("%q", t.String())), nil -} - -func (t *ThermostatsUpdateRequestDefaultClimateSettingHvacModeSetting) UnmarshalJSON(data []byte) error { - var raw string - if err := json.Unmarshal(data, &raw); err != nil { - return err - } - switch raw { - case "off": - value := ThermostatsUpdateRequestDefaultClimateSettingHvacModeSettingOff - *t = value - case "heat": - value := ThermostatsUpdateRequestDefaultClimateSettingHvacModeSettingHeat - *t = value - case "cool": - value := ThermostatsUpdateRequestDefaultClimateSettingHvacModeSettingCool - *t = value - case "heatcool": - value := ThermostatsUpdateRequestDefaultClimateSettingHvacModeSettingHeatcool - *t = value - } - return nil -}