diff --git a/src/lib/seam/devicedb/public-models/device-model-v1.ts b/src/lib/seam/devicedb/public-models/device-model-v1.ts index 4e081789..20b63948 100644 --- a/src/lib/seam/devicedb/public-models/device-model-v1.ts +++ b/src/lib/seam/devicedb/public-models/device-model-v1.ts @@ -14,6 +14,7 @@ const smartlock = z.object({ 'cylinder', 'padlock', 'locker', + 'unknown', ]), has_physical_key: z.boolean(), has_camera: z.boolean(), @@ -52,6 +53,8 @@ const thermostat = z.object({ }), }) +export type ThermostatPropertiesV1 = z.infer + const relay = z.object({ main_category: z.literal('relay'), }) @@ -74,7 +77,7 @@ export const base_device_model_v1 = z.object({ slug: z.string(), display_name: z.string(), primary_color_hex: z.string().optional(), - manufacturer_sku: z.string(), + manufacturer_sku: z.string().optional(), front_image: image_reference.optional(), back_image: image_reference.optional(), }) diff --git a/src/lib/seam/devicedb/route-types.ts b/src/lib/seam/devicedb/route-types.ts index 8e7c4260..1c4be590 100644 --- a/src/lib/seam/devicedb/route-types.ts +++ b/src/lib/seam/devicedb/route-types.ts @@ -28,13 +28,13 @@ export interface Routes { is_device_supported: boolean display_name: string description: string - product_url: string + product_url?: string | undefined main_connection_type: 'wifi' | 'zwave' | 'zigbee' | 'unknown' aesthetic_variants: Array<{ slug: string display_name: string primary_color_hex?: string | undefined - manufacturer_sku: string + manufacturer_sku?: string | undefined front_image?: | { url: string @@ -69,6 +69,7 @@ export interface Routes { | 'cylinder' | 'padlock' | 'locker' + | 'unknown' has_physical_key: boolean has_camera: boolean } @@ -150,13 +151,13 @@ export interface Routes { is_device_supported: boolean display_name: string description: string - product_url: string + product_url?: string | undefined main_connection_type: 'wifi' | 'zwave' | 'zigbee' | 'unknown' aesthetic_variants: Array<{ slug: string display_name: string primary_color_hex?: string | undefined - manufacturer_sku: string + manufacturer_sku?: string | undefined front_image?: | { url: string @@ -191,6 +192,7 @@ export interface Routes { | 'cylinder' | 'padlock' | 'locker' + | 'unknown' has_physical_key: boolean has_camera: boolean }