Skip to content

Commit cc83dd2

Browse files
committed
Apply ruff formatting via pre-commit
1 parent 877f66b commit cc83dd2

5 files changed

Lines changed: 7234 additions & 15 deletions

File tree

custom_components/bestway/aws_iot/api.py

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -131,7 +131,9 @@ def normalize_aws_state(device_state: dict[str, Any]) -> dict[str, Any]:
131131
wave_normalized = 50 # Map V02 MEDIUM (40) → V01 Airjet MEDIUM (50)
132132
else:
133133
wave_normalized = wave_state # 0 and 100 are same in both
134-
_LOGGER.debug("🔵 normalize_aws_state: OUTPUT wave_normalized=%s", wave_normalized)
134+
_LOGGER.debug(
135+
"🔵 normalize_aws_state: OUTPUT wave_normalized=%s", wave_normalized
136+
)
135137

136138
# Build normalized dict, only including fields with actual values
137139
# This prevents None values from overwriting existing data during merges
@@ -851,7 +853,7 @@ async def airjet_v01_spa_set_bubbles(
851853
Try sending absolute values first (simplest approach).
852854
"""
853855
_LOGGER.debug("🔵 airjet_v01_spa_set_bubbles: input level=%s", level)
854-
856+
855857
# Map BubblesLevel enum to V02 wave_state values
856858
value_map = {
857859
BubblesLevel.OFF: 0,
@@ -891,7 +893,9 @@ async def airjet_v01_spa_set_bubbles(
891893
pass
892894
# Now send MEDIUM
893895
await self.set_device_state(device_id, {"wave_state": 40})
894-
_LOGGER.debug("🔵 Set bubbles to %s (wave_state=%d after toggle)", level.name, 40)
896+
_LOGGER.debug(
897+
"🔵 Set bubbles to %s (wave_state=%d after toggle)", level.name, 40
898+
)
895899
return
896900

897901
# Default: send the requested absolute value
@@ -905,7 +909,10 @@ async def hydrojet_spa_set_bubbles(
905909
906910
V02 uses same toggle approach as Airjet V02.
907911
"""
908-
_LOGGER.debug("🔵 hydrojet_spa_set_bubbles: delegating to airjet_v01_spa_set_bubbles with level=%s", level)
912+
_LOGGER.debug(
913+
"🔵 hydrojet_spa_set_bubbles: delegating to airjet_v01_spa_set_bubbles with level=%s",
914+
level,
915+
)
909916
# V02 uses toggle approach (same as Airjet V02)
910917
await self.airjet_v01_spa_set_bubbles(device_id, level)
911918

custom_components/bestway/select.py

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -126,10 +126,16 @@ def current_option(self) -> str | None:
126126
if device := self.coordinator.data.devices.get(self.device_id):
127127
wave_value = device.attrs.get("wave")
128128
_LOGGER.debug("🔵 current_option: device.attrs['wave']=%s", wave_value)
129-
130-
bubbles_level = self.entity_description.get_fn(wave_value)
129+
130+
# Ensure we pass an int to the mapping function (mypy-friendly).
131+
try:
132+
wave_int: int = int(wave_value) if wave_value is not None else 0
133+
except Exception:
134+
wave_int = 0
135+
136+
bubbles_level = self.entity_description.get_fn(wave_int)
131137
_LOGGER.debug("🔵 current_option: mapped to BubblesLevel=%s", bubbles_level)
132-
138+
133139
option = _BUBBLES_OPTIONS.get(bubbles_level)
134140
_LOGGER.debug("🔵 current_option: final option=%s", option)
135141
return option
@@ -138,14 +144,16 @@ def current_option(self) -> str | None:
138144
async def async_select_option(self, option: str) -> None:
139145
"""Change the selected option."""
140146
_LOGGER.debug("🔵 async_select_option: user selected option=%s", option)
141-
147+
142148
bubbles_level = BubblesLevel.OFF
143149
if option == _BUBBLES_OPTIONS[BubblesLevel.MEDIUM]:
144150
bubbles_level = BubblesLevel.MEDIUM
145151
elif option == _BUBBLES_OPTIONS[BubblesLevel.MAX]:
146152
bubbles_level = BubblesLevel.MAX
147153

148-
_LOGGER.debug("🔵 async_select_option: mapped to BubblesLevel=%s", bubbles_level)
154+
_LOGGER.debug(
155+
"🔵 async_select_option: mapped to BubblesLevel=%s", bubbles_level
156+
)
149157
await self.entity_description.set_fn(
150158
self.coordinator.api, self.device_id, bubbles_level
151159
)

0 commit comments

Comments
 (0)