* Name unnamed binary sensors by their device class
* Update type annotations
* Fix loading of entity component translations
* Add test
* Update integrations
* Set abode and rfxtrx binary_sensor name to None
* Revert changes in homekit_controller
* Add error handling for all service calls
* Switch siren to use internal function
* Remove failing checks
* Revert change to poll service, add comments, and add additional error handling
* Add error handling for ping and refresh + review comment + add tests
* Add test for statistics entity refresh
* Add proper support for zwave_js Indicator CC
* remove stale test
* Make all indicators diagnostic
* only set entity category if it is specified
* Only set properties from discovery if specified
* Conditionally set assumed state as well
* fix const name
* Don't create task
* Disable property keys 3-5 by default
* add additional dispatcher_connects so we catch all signals
* be consistent about order
* rename new discovery parameter
* comment
* exclude property keys 3-5
* fix remove logic
* add comment so I don't forget
* Switch entity category to config where necessary
* cut line
* less lines
* Update homeassistant/components/zwave_js/switch.py
Co-authored-by: kpine <keith.pine@gmail.com>
* Move async_remove to respond to interview started event
* Set up listener immediately so we don't wait for platform creation
* remove dupe import
* black
* append
---------
Co-authored-by: kpine <keith.pine@gmail.com>
* Refactor zwave_js.sensor and add test coverage
* use walrus
* inherit config parameter class from list class
* use walrus in more places
* improve config parameter test
* Raise when using 'zwave_js.refresh_value' on ping button
* Revert test change
* block till done
* Switch from raising an exception to logging an error for both the ping button and node status sensor
* missed commit
* Handle zwave_js metadata updates when the unit changes
* Use value updated event instead of metadata updated event so we don't get an invalid state value
* update comments and formatting
* simplify
* Update tests/components/zwave_js/test_sensor.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Update tests/components/zwave_js/test_sensor.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Update tests/components/zwave_js/test_sensor.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* fix tests
* add additional assertions
* Add unit checks and simplify logic
* Add unit assertion
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Only replace a node if the mfgr id / prod id / prod type differ
* Prefer original device name for unready node
* move register_node_in_dev_reg into async_setup_entry
* simplify get_device_id_ext
* Don't need hex ids
* Revert "move register_node_in_dev_reg into async_setup_entry"
This reverts commit f900e5fb0c67cc81657a1452b51c313bccb6f9e1.
* Revert Callable change
* Revert device backup name
* Add test fixtures
* Update existing not ready test with new fixture data
* Check device properties after node added event
* Add entity check
* Check for extended device id
* better device info checks
* Use receive_event to properly setup components
* Cleanup tests
* improve test_replace_different_node
* improve test_replace_same_node
* add test test_node_model_change
* Clean up long comments and strings
* Format
* Reload integration to detect node device config changes
* update assertions
* Disable entities on "value removed" event
* Disable node status sensor on node replacement
* Add test for disabling entities on remove value event
* Add test for disabling node status sensor on node replacement
* disable entity -> remove entity
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Use entity descriptions for zwave_js sensors
* reorder
* use new type
* revert typing changes
* switch to using maps
* Get device and state class from discovery instead
* ues constants for keys
* Add meter type attribute and simplify platform data access
* comments
* second refactor
* Add None lookup value
* readability
* Switch base data template to type Any for more flexibility
* Additional changes based on feedback
* rewrite based on new upstream util functions
* Use new combo type
* Handle UnknownValueData in discovery
* bug fixes
* remove redundant comment
* re-add force_update
* fixes and tweaks
* pylint and feedback
* Add energy support for zwave_js meter CC entities
* shrink
* comments
* comments
* comments
* Move attributes
* Add tests
* Apply suggestions from code review
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>