* Define entity attributes as entity class variables
* Example coronavirus integration
* Example verisure
* Cleanup/typing fixes
* Fix Coronavirus
* Revert "Fix Coronavirus"
This reverts commit 060843860f.
* Revert "Cleanup/typing fixes"
This reverts commit 659b79e75a.
* Define entity attributes as entity class variables (attr alternative)
* Example coronavirus
* Example nut
* Example verisure
* Mark private
* Cleanup after all reverting/cherrypicking/merging
* Implement all entity properties
* Update coronavirus example
* Update nut example
* Update verisure example
* Lets not talk about this one...
* Fix multiple class attribute
* Convert nut to a multi step config flow
* Users can now choose the ups they want in
step 2 (or skipped if only one)
* Users can now select the resources they want
to monitor based on what is actually available
on the device
* CONF_NAME has been removed as we now get the
name from NUT
* Device classes have been added which allows
the battery charge state to be seen in the
devices UI
* Remove update_interval as its for a followup PR
* explict
* reduce
* fix bug, add tests for options flow
* Test for dupe import
* Test for dupe import
* Call step directly
* Update homeassistant/components/nut/config_flow.py
Co-Authored-By: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Convert nut to config flow
* Add a test for importing
* lint
* Address review items (part 1)
* Address review items (part 1)
* Cleanup unique id handling
* Update tests for new naming scheme
* No unique id, no device_info
* Remove sensor types
* Update tests to use resources that still exist
* Prevent nut from doing I/O in the event loop
device_state_attributes would call for an update if the
throttle happened to expire.
* _format_display_state no self use
* Add and use time related constants
* Sort time constants and reuse them in data rate constants
* Fix greeneyemonitor import
* Fix greeneyemonitor import V2
* Fix failing here_travel_time test
* Add TIME_MONTHS and TIME_YEARS
* Use TIME_MINUTES in opentherm_gw and isy994
* Add and use TIME_MILLISECONDS
* Change inconsistent ones
* Add TIME_MICROSECONDS and TIME_WEEKS
* Use constants in apcupsd and travisci
* Fix import error in upnp sensor.py
* Fix isy994 sensor.py using TIME_YEARS
* Fix dyson tests
* Use TIME_SECONDS in more places
* Use TIME_DAYS in google wifi
* Consolidate
* Fix tests
* Update imports
* Fix import
* Use importlib because integration and package share name
* Fix more tests
* Update .coveragerc and CODEOWNERS