|
1 | 1 | from enum import Enum |
2 | | -from typing import Mapping, Iterator |
3 | 2 |
|
4 | 3 |
|
5 | 4 | class UserDataRRiotReferenceField(str, Enum): |
@@ -218,37 +217,14 @@ class MultiMapListField(str, Enum): |
218 | 217 | MAP_INFO = "map_info" |
219 | 218 |
|
220 | 219 |
|
221 | | -class RoborockBase(Mapping): |
| 220 | +class RoborockBase(dict): |
222 | 221 | def __init__(self, data: dict[str, any]) -> None: |
223 | | - self._data = data if isinstance(data, dict) else {} |
| 222 | + super().__init__() |
| 223 | + if isinstance(data, dict): |
| 224 | + self.update(data) |
224 | 225 |
|
225 | | - def __getitem__(self, key): |
226 | | - return self._data.__getitem__(key) |
227 | | - |
228 | | - def __setitem__(self, key, value): |
229 | | - return self._data.__setitem__(key, value) |
230 | | - |
231 | | - def __len__(self) -> int: |
232 | | - return self._data.__len__() |
233 | | - |
234 | | - def __iter__(self) -> Iterator: |
235 | | - return self._data.__iter__() |
236 | | - |
237 | | - def keys(self): |
238 | | - return self._data.keys() |
239 | | - |
240 | | - def values(self): |
241 | | - return self._data.values() |
242 | | - |
243 | | - def __repr__(self): |
244 | | - return self._data.__repr__() |
245 | | - |
246 | | - def __str__(self): |
247 | | - return self._data.__str__() |
248 | | - |
249 | | - @property |
250 | | - def __dict__(self): |
251 | | - return self._data |
| 226 | + def as_dict(self): |
| 227 | + return self.__dict__ |
252 | 228 |
|
253 | 229 |
|
254 | 230 | class Reference(RoborockBase): |
|
0 commit comments