* Add prettier (in pre-commit and CI)
* Make all file prettier
* Change order
* Add to Azure Pipelines
* Fix a YAML file prettier caught as invalid
* Remove flow mapping using curly braces from all YAML service files
* Fix tankerkoenig with more than 10 stations
There seemed to be a problem, if more than 10 fuel stations were tracked.
Added a warning in this case, and split the calls to the API in chunks of
10, so that the data can be fetched anyway.
* Update homeassistant/components/tankerkoenig/__init__.py
Co-Authored-By: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Validate UUIDs against custom validator
Instead of just validating against strings, use a custom validator,
so that the format can be checked.
* Add tests for custom UUID4 validator
* Initial version
Parse configuration, but return a fixed value
* Add basic functionality
Request real data from the server
Currently the prices are not getting updated, but the petrol station
data is real
* Update values regularly
The tankerkoenig values get updated regularly with real data.
* Move base functionality for the sensor to a base class
And move that to an own file, so that it can be inherited
* Reduce calls to tankerkoenig api
Use a master/slave concept for sensors; one master gets the data and
updates it into the slaves.
* Update requirements files
* Update all gas stations at once
* Remove tests directory
Currently there are no tests for the integration; will be added in
a future commit.
* Fix slaves not being updated
Let the base class regularly poll, so that slaves are also updated
* Refactor entity creation
Create an auxiliary method to add a station to the entity list,
in preparation to allowing extra stations.
* Add possibility to manually add stations
Add a new configuration option "stations" to manually add extra stations
* Fix style issues
Make the code more pythonic
* Remove redundant code
Implement suggestions from the code review
* Change to platform component
Remove the master/slave concept, in favor of a platform with dummy sensors.
The platform takes care of contacting the server and fetching updates
atomically, and updating the data on the sensors.
* Rename ATTR_STATE
Rename the attribute to "IS_OPEN", to avoid confusion with the sensor state.
* Minor updates
Combine two consecutive error logs into a single one.
Update the sensor's icon
* Separate address into different fields
* Style updates
Use "[]" syntax instead of ".get()" for required parameters
Use warning log level for not available fuel types
* Implement review comments
Fix style issues
Improve error messages
Remove redundant options
* Refactor using DataUpdateCoordinator
Use the new DataUpdateCoordinator to fetch the global data from
the API, instead of implementing an own method.
Also fix comments from the PR
* Implement PR comments
Implement suggestions to improve code readability and keep the Home Assistant style.
Also separate fetching data to an async thread