* Fix time to arrival
* Update snapshot
* Freeze time for snapshot
* Fix docstring
* Add available_fn
* Update snapshot
* Dont use variance for full charge
* Remove unrelated changes
* Revert snapshot
* Rename hours_to_datetime
* Add time to charge and type checking
* Revert drive_state_shift_state change
* Use original name
* Use function instead of lambda
* Update homeassistant/components/tessie/sensor.py
Co-authored-by: Jan-Philipp Benecke <github@bnck.me>
* Fix callback
* Avoid having to test None
* Go back to if
* Use minutes instead of hours
---------
Co-authored-by: Jan-Philipp Benecke <github@bnck.me>
* keys may be missing at startup
* Add route sensors and tracker location
* Fix keys and add translation
* Allow a sensor to have no value
* Move attribute to sensor
* Remove state attribute string
* Add name back to device tracker and lock
* Add name to media player
* Add name to update
* Update snapshot
* Keep none name on Update
* Re-add update
* Add media platform
* Add more props
* Fix platform filename
* Working
* Add a test
* Update test and fixture
* Refactor media player properties to handle null values
* Add comments
* add more assertions
* Fix test docstring
* Use walrus instead.
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* Test when media player is idle
* Fix tests
* Remove None type from volume_level
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* Return media position only when a media duration is > 0
* Remove impossible None type
* Add snapshot and freezer
---------
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* Add number platform
* Make self.set consistent
* Fix test docstring
* Use entity descriptions
* Add patch_description to tests
* Rename argument to arg
* Make max key mandatory
* Set SOC min to normal value
* Add version platform
* Add strings and test
* Remove potential for None
* Dont show progress when no update is running
* Return None for no update
* Add comment
* Remove future feature
* WIP
* Fix statuses
* update fixture
* Remove entity name
* Remove name correctly
* Use False for in_progress
* Add climate platform
* Other fixes
* Use super native value
* change to _value
* Sentence case strings
* Add some more type definition
* Add return types
* Add some more assertions
* Remove VirtualKey error
* Add type to args
* rename climate to primary
* fix min max
* Use String Enum
* Add PRECISION_HALVES
* Fix string enum
* fix str enum
* Simplify run logic
* Rename enum to TessieClimateKeeper
* First pass at Tessie
* Working POC
* async_step_reauth
* Config Flow tests
* WIP
* Add test requirement
* correctly gen test requirements
* 100% coverage
* Remove remnants of copy paste
* Add TPMS
* Fix docstring
* Remove redundant line
* Fix some more copied docstrings
* Grammar
* Create reusable StrEnum
* Streamline get
* Add a couple more sensors
* Removed need for a model
* Move MODELS
* Remove DOMAIN from config flow
* Add translation strings
* Remove unused parameter
* Simplify error handling
* Refactor coordinator to class
* Add missing types
* Add icon to shift state
* Simplify setdefault
Co-authored-by: J. Nick Koston <nick@koston.org>
* Use walrus for async_unload_platforms
Co-authored-by: J. Nick Koston <nick@koston.org>
* Reformat entity init
Co-authored-by: J. Nick Koston <nick@koston.org>
* Remove Unique ID
* Better Config Flow Tests
* Fix all remaining tests
* Standardise docstring
* Remove redudnant test
* Set TessieDataUpdateCoordinator on entity
* Correct some sensors
* add error types
* Make shift state a ENUM sensor
* Add more sensors
* Fix translation string
* Add precision suggestions
* Move session from init to coordinator
* Add api_key type
* Remove api_key parameter
* Meta changes
* Update TessieEntity and TessieSensor translations
* Goodbye translation keys
* bump tessie-api to 0.0.9
* Fix only_active to be True
* Per vehicle coordinator
* Rework coordinator
* Fix coverage
* WIP
* The grand rework
* Add comments
* Use ENUM more
* Add ENUM translations
* Update homeassistant/components/tessie/sensor.py
Co-authored-by: J. Nick Koston <nick@koston.org>
* Add entity_category
* Remove reauth
* Remove session
* Update homeassistant/components/tessie/__init__.py
Co-authored-by: J. Nick Koston <nick@koston.org>
* Add property tag
* Add error text
* Complete config flow tests
* Fix property and rename
* Fix init test
* Reworked coordinator tests
* Add extra checks
* Update homeassistant/components/tessie/__init__.py
Co-authored-by: J. Nick Koston <nick@koston.org>
* Update homeassistant/components/tessie/coordinator.py
Co-authored-by: J. Nick Koston <nick@koston.org>
* Apply suggestions from code review
Co-authored-by: J. Nick Koston <nick@koston.org>
* Ruff fix
* Update homeassistant/components/tessie/config_flow.py
Co-authored-by: J. Nick Koston <nick@koston.org>
* Remove future ENUMs
Co-authored-by: J. Nick Koston <nick@koston.org>
* Ruff fix
* Update homeassistant/components/tessie/config_flow.py
Co-authored-by: J. Nick Koston <nick@koston.org>
* Remove reauth and already configured strings
* Lowercase sensor values for translation
* Update homeassistant/components/tessie/__init__.py
Co-authored-by: J. Nick Koston <nick@koston.org>
* Fixed, before using lambda
* Add value lambda
* fix lambda
* Fix config flow test
* @bdraco fix for 500 errors
* format
* Add reauth
* Reuse string in reauth
* Ruff
* remove redundant check
* Improve error tests
---------
Co-authored-by: J. Nick Koston <nick@koston.org>