From 4c133d774bbd0a1808adc4af1ee1d5a319b795e7 Mon Sep 17 00:00:00 2001 From: Evan Sosenko Date: Thu, 13 Nov 2025 08:52:10 -0800 Subject: [PATCH 1/2] Prefer null checks for capability flags --- src/lib/seam/locks/lock-device.ts | 14 +++++++------- src/lib/seam/noise-sensors/noise-sensor-device.ts | 2 +- src/lib/seam/thermostats/thermostat-device.ts | 2 +- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/src/lib/seam/locks/lock-device.ts b/src/lib/seam/locks/lock-device.ts index ccd759003..30ff4ccd7 100644 --- a/src/lib/seam/locks/lock-device.ts +++ b/src/lib/seam/locks/lock-device.ts @@ -7,12 +7,12 @@ export type LockDevice = Omit & { export const isLockDevice = (device: Device): device is LockDevice => { return ( - 'locked' in device.properties || - 'can_remotely_lock' in device || - 'can_remotely_unlock' in device || - 'can_program_online_access_codes' in device || - 'can_program_offline_access_codes' in device || - device.properties.online_access_codes_enabled === true || - device.properties.offline_access_codes_enabled === true + device.properties.locked != null || + device.can_remotely_lock != null || + device.can_remotely_unlock != null || + device.can_program_online_access_codes != null || + device.can_program_offline_access_codes != null || + device.properties.online_access_codes_enabled != null || + device.properties.offline_access_codes_enabled != null ) } diff --git a/src/lib/seam/noise-sensors/noise-sensor-device.ts b/src/lib/seam/noise-sensors/noise-sensor-device.ts index cd8e58350..cae009978 100644 --- a/src/lib/seam/noise-sensors/noise-sensor-device.ts +++ b/src/lib/seam/noise-sensors/noise-sensor-device.ts @@ -7,4 +7,4 @@ export type NoiseSensorDevice = Omit & { export const isNoiseSensorDevice = ( device: Device -): device is NoiseSensorDevice => 'noise_level_decibels' in device.properties +): device is NoiseSensorDevice => device.properties.noise_level_decibels != null diff --git a/src/lib/seam/thermostats/thermostat-device.ts b/src/lib/seam/thermostats/thermostat-device.ts index e1203aed8..1b29e1797 100644 --- a/src/lib/seam/thermostats/thermostat-device.ts +++ b/src/lib/seam/thermostats/thermostat-device.ts @@ -37,7 +37,7 @@ export interface ClimateSetting { export const isThermostatDevice = ( device: Device ): device is ThermostatDevice => - 'available_climate_presets' in device.properties + device.properties.available_climate_presets != null export type ThermostatClimatePreset = ThermostatDevice['properties']['available_climate_presets'][number] From 06e1def002572edb5fc26dff577c1925c07e99a5 Mon Sep 17 00:00:00 2001 From: Seam Bot Date: Thu, 13 Nov 2025 16:53:46 +0000 Subject: [PATCH 2/2] ci: Format code --- src/lib/seam/noise-sensors/noise-sensor-device.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/lib/seam/noise-sensors/noise-sensor-device.ts b/src/lib/seam/noise-sensors/noise-sensor-device.ts index cae009978..5284e811e 100644 --- a/src/lib/seam/noise-sensors/noise-sensor-device.ts +++ b/src/lib/seam/noise-sensors/noise-sensor-device.ts @@ -7,4 +7,4 @@ export type NoiseSensorDevice = Omit & { export const isNoiseSensorDevice = ( device: Device -): device is NoiseSensorDevice => device.properties.noise_level_decibels != null +): device is NoiseSensorDevice => device.properties.noise_level_decibels != null