File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -15,6 +15,7 @@ class Nightlight:
1515 duration : int
1616 fade : bool
1717 on : bool
18+ mode : NightlightMode
1819 target_brightness : int
1920
2021 @staticmethod
@@ -28,9 +29,19 @@ def from_dict(data: dict[str, Any]) -> Nightlight:
2829 A Nightlight object.
2930 """
3031 nightlight = data .get ("nl" , {})
32+
33+ # Handle deprecated fade property for Nightlight
34+ mode = nightlight .get ("mode" )
35+ fade = nightlight .get ("fade" , False )
36+ if mode is not None :
37+ fade = mode != NightlightMode .INSTANT
38+ if mode is None :
39+ mode = NightlightMode .FADE if fade else NightlightMode .INSTANT
40+
3141 return Nightlight (
3242 duration = nightlight .get ("dur" , 1 ),
33- fade = nightlight .get ("fade" , False ),
43+ fade = fade ,
44+ mode = NightlightMode (mode ),
3445 on = nightlight .get ("on" , False ),
3546 target_brightness = nightlight .get ("tbri" , 0 ),
3647 )
@@ -449,3 +460,12 @@ class Live(IntEnum):
449460 OFF = 0
450461 ON = 1
451462 OFF_UNTIL_REBOOT = 2
463+
464+
465+ class NightlightMode (IntEnum ):
466+ """Enumeration representing nightlight mode from WLED."""
467+
468+ INSTANT = 0
469+ FADE = 1
470+ COLOR_FADE = 2
471+ SUNRISE = 3
You can’t perform that action at this time.
0 commit comments