Skip to content

Commit 14d10d2

Browse files
TizzySaurusdonavanbecker
authored andcommitted
fix: incorrect deviceStatus and botStatus types in openapi.ts (#317)
1 parent 1db1d3b commit 14d10d2

2 files changed

Lines changed: 74 additions & 38 deletions

File tree

package-lock.json

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/types/openapi.ts

Lines changed: 72 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -188,21 +188,57 @@ export interface deviceStatusRequest {
188188
body: deviceStatus
189189
}
190190

191-
export interface deviceStatus extends device {
191+
export type deviceStatus
192+
= | botStatus
193+
| curtainStatus
194+
| meterStatus
195+
| meterPlusStatus
196+
| meterProStatus
197+
| meterProCO2Status
198+
| outdoorMeterStatus
199+
| lockStatus
200+
| lockProStatus
201+
| motionSensorStatus
202+
| presenceSensorStatus
203+
| contactSensorStatus
204+
| waterLeakDetectorStatus
205+
| ceilingLightStatus
206+
| ceilingLightProStatus
207+
| plugStatus
208+
| plugMiniStatus
209+
| stripLightStatus
210+
| colorBulbStatus
211+
| robotVacuumCleanerS1Status
212+
| robotVacuumCleanerS1PlusStatus
213+
| floorCleaningRobotS10Status
214+
| humidifierStatus
215+
| humidifier2Status
216+
| blindTiltStatus
217+
| hub2Status
218+
| batteryCirculatorFanStatus
219+
| circulatorFanStatus
220+
| relaySwitch1Status
221+
| relaySwitch1PMStatus
222+
| airPurifierStatus
223+
| airPurifierTableStatus
224+
| airPurifierVOCStatus
225+
| airPurifierTableVOCStatus
226+
227+
export interface baseDeviceStatus {
192228
// properties on all devices
193229
deviceId: string
194230
deviceType: string
195231
hubDeviceId: string
196232
version: number
197233
};
198234

199-
export type botStatus = deviceStatus & {
235+
export type botStatus = baseDeviceStatus & {
200236
power: string
201237
battery: number
202-
mode: 'pressMode' | 'switchMode' | 'customizeMode'
238+
deviceMode: 'pressMode' | 'switchMode' | 'customizeMode'
203239
}
204240

205-
export type curtainStatus = deviceStatus & {
241+
export type curtainStatus = baseDeviceStatus & {
206242
calibrate: boolean
207243
group: boolean
208244
moving: boolean
@@ -211,137 +247,137 @@ export type curtainStatus = deviceStatus & {
211247
lightLevel?: 'bright' | 'dim'
212248
}
213249

214-
export type meterStatus = deviceStatus & {
250+
export type meterStatus = baseDeviceStatus & {
215251
temperature: number
216252
battery: number
217253
humidity: number
218254
}
219255

220-
export type meterPlusStatus = deviceStatus & {
256+
export type meterPlusStatus = baseDeviceStatus & {
221257
temperature: number
222258
battery: number
223259
humidity: number
224260
}
225261

226-
export type meterProStatus = deviceStatus & {
262+
export type meterProStatus = baseDeviceStatus & {
227263
temperature: number
228264
battery: number
229265
humidity: number
230266
version: string
231267
}
232268

233-
export type meterProCO2Status = deviceStatus & {
269+
export type meterProCO2Status = baseDeviceStatus & {
234270
temperature: number
235271
battery: number
236272
humidity: number
237273
version: string
238274
CO2: number
239275
}
240276

241-
export type outdoorMeterStatus = deviceStatus & {
277+
export type outdoorMeterStatus = baseDeviceStatus & {
242278
battery: number
243279
temperature: number
244280
humidity: number
245281
}
246282

247-
export type lockStatus = deviceStatus & {
283+
export type lockStatus = baseDeviceStatus & {
248284
lockState: string
249285
doorState: string
250286
moveDetected: boolean
251287
battery: number
252288
}
253289

254-
export type lockProStatus = deviceStatus & {
290+
export type lockProStatus = baseDeviceStatus & {
255291
lockState: string
256292
doorState: string
257293
moveDetected: boolean
258294
battery: number
259295
}
260296

261-
export type motionSensorStatus = deviceStatus & {
297+
export type motionSensorStatus = baseDeviceStatus & {
262298
battery: number
263299
moveDetected: boolean
264300
brightness: 'bright' | 'dim'
265301
}
266302

267-
export type presenceSensorStatus = deviceStatus & {
303+
export type presenceSensorStatus = baseDeviceStatus & {
268304
battery: number
269305
version: string
270306
Detected: boolean
271307
lightLevel: number // 1~20
272308
}
273309

274-
export type contactSensorStatus = deviceStatus & {
310+
export type contactSensorStatus = baseDeviceStatus & {
275311
battery: number
276312
moveDetected: boolean
277313
openState: 'open' | 'close' | 'timeOutNotClose'
278314
brightness: 'bright' | 'dim'
279315
}
280316

281-
export type waterLeakDetectorStatus = deviceStatus & {
317+
export type waterLeakDetectorStatus = baseDeviceStatus & {
282318
battery: number
283319
status: 0 /* dry */ | 1 /* leak detected */
284320
}
285321

286-
export type ceilingLightStatus = deviceStatus & {
322+
export type ceilingLightStatus = baseDeviceStatus & {
287323
power: boolean
288324
brightness: number
289325
colorTemperature: number
290326
}
291327

292-
export type ceilingLightProStatus = deviceStatus & {
328+
export type ceilingLightProStatus = baseDeviceStatus & {
293329
power: boolean
294330
brightness: number
295331
colorTemperature: number
296332
}
297333

298-
export type plugStatus = deviceStatus & {
334+
export type plugStatus = baseDeviceStatus & {
299335
power: string
300336
version: string
301337
}
302338

303-
export type plugMiniStatus = deviceStatus & {
339+
export type plugMiniStatus = baseDeviceStatus & {
304340
voltage: Float64Array
305341
weight: Float64Array
306342
electricityOfDay: number
307343
electricCurrent: Float64Array
308344
power: string
309345
}
310346

311-
export type stripLightStatus = deviceStatus & {
347+
export type stripLightStatus = baseDeviceStatus & {
312348
power: string
313349
brightness: number
314350
color: string
315351
}
316352

317-
export type colorBulbStatus = deviceStatus & {
353+
export type colorBulbStatus = baseDeviceStatus & {
318354
power: string
319355
brightness: number
320356
color: string
321357
colorTemperature: number
322358
}
323359

324-
export type robotVacuumCleanerS1Status = deviceStatus & {
360+
export type robotVacuumCleanerS1Status = baseDeviceStatus & {
325361
workingStatus: string
326362
onlineStatus: string
327363
battery: number
328364
}
329365

330-
export type robotVacuumCleanerS1PlusStatus = deviceStatus & {
366+
export type robotVacuumCleanerS1PlusStatus = baseDeviceStatus & {
331367
workingStatus: string
332368
onlineStatus: string
333369
battery: number
334370
}
335371

336-
export type floorCleaningRobotS10Status = deviceStatus & {
372+
export type floorCleaningRobotS10Status = baseDeviceStatus & {
337373
workingStatus: string
338374
onlineStatus: string
339375
battery: number
340376
waterBaseBattery: number
341377
taskType: string
342378
}
343379

344-
export type humidifierStatus = deviceStatus & {
380+
export type humidifierStatus = baseDeviceStatus & {
345381
power: string
346382
humidity: number
347383
temperature: number
@@ -352,7 +388,7 @@ export type humidifierStatus = deviceStatus & {
352388
lackWater: boolean
353389
}
354390

355-
export type humidifier2Status = deviceStatus & {
391+
export type humidifier2Status = baseDeviceStatus & {
356392
power: string
357393
humidity: number
358394
temperature: number
@@ -363,21 +399,21 @@ export type humidifier2Status = deviceStatus & {
363399
lackWater: boolean
364400
}
365401

366-
export type blindTiltStatus = deviceStatus & {
402+
export type blindTiltStatus = baseDeviceStatus & {
367403
calibrate: boolean
368404
battery: number
369405
direction: string
370406
slidePosition: string
371407
lightLevel?: 'bright' | 'dim'
372408
}
373409

374-
export type hub2Status = deviceStatus & {
410+
export type hub2Status = baseDeviceStatus & {
375411
temperature: number
376412
lightLevel: number
377413
humidity: number
378414
}
379415

380-
export type batteryCirculatorFanStatus = deviceStatus & {
416+
export type batteryCirculatorFanStatus = baseDeviceStatus & {
381417
mode: 'direct' | 'natural' | 'sleep' | 'baby'
382418
version: string
383419
battery: number
@@ -389,7 +425,7 @@ export type batteryCirculatorFanStatus = deviceStatus & {
389425
fanSpeed: number
390426
}
391427

392-
export type circulatorFanStatus = deviceStatus & {
428+
export type circulatorFanStatus = baseDeviceStatus & {
393429
mode: 'direct' | 'natural' | 'sleep' | 'baby'
394430
version: string
395431
power: string
@@ -399,12 +435,12 @@ export type circulatorFanStatus = deviceStatus & {
399435
fanSpeed: number
400436
}
401437

402-
export type relaySwitch1Status = deviceStatus & {
438+
export type relaySwitch1Status = baseDeviceStatus & {
403439
switchStatus: 0 | 1
404440
version: string
405441
}
406442

407-
export type relaySwitch1PMStatus = deviceStatus & {
443+
export type relaySwitch1PMStatus = baseDeviceStatus & {
408444
switchStatus: 0 | 1
409445
voltage: number
410446
version: string
@@ -413,28 +449,28 @@ export type relaySwitch1PMStatus = deviceStatus & {
413449
electricCurrent: number
414450
}
415451

416-
export type airPurifierStatus = deviceStatus & {
452+
export type airPurifierStatus = baseDeviceStatus & {
417453
power: string
418454
mode: number
419455
childLock: number
420456
version: string
421457
}
422458

423-
export type airPurifierTableStatus = deviceStatus & {
459+
export type airPurifierTableStatus = baseDeviceStatus & {
424460
power: string
425461
mode: number
426462
childLock: number
427463
version: string
428464
}
429465

430-
export type airPurifierVOCStatus = deviceStatus & {
466+
export type airPurifierVOCStatus = baseDeviceStatus & {
431467
power: string
432468
mode: number
433469
childLock: number
434470
version: string
435471
}
436472

437-
export type airPurifierTableVOCStatus = deviceStatus & {
473+
export type airPurifierTableVOCStatus = baseDeviceStatus & {
438474
power: string
439475
mode: number
440476
childLock: number

0 commit comments

Comments
 (0)