* Use Home Assistant icon selector for icons
Replace all icon selection to Home Assistant native icon selector, improving the user experience.
Note: As not all the MDI icons are available for Nextion, if one of those icons is selected it will be displayed as a question mark `?`.
* Fix button icon when unavailable
Apply fixed from PR#660 into this branch to avoid merging conflicts in the future.
* Supports legacy icon selection
This add the support for legacy icon selection, so icons will still be shown if users install the new version in an environment where icons where previously selected.
This was already implemented on #543 but it was lost later:
As it is now, using minutes: "/1", the time will update every minute, but that could happen when lots of seconds has passed on that minute, making possible the displayed time to be up to 59s late.
By changing that to seconds: 0 if forces the update in the same rate, but always in the first second of a minute, keeping the displayed time always updated.
This reduces the number of parallel instances of the blueprint running. I've done several tests and couldn't see more than 10 instances, so I believe if we should limit the concurrent runs and this will probably be an indication of a problem we want to know about.
This supports users mistyping the NSPanel name in the blueprint settings. One of the most common mistakes is using `-` in the name, instead of `_` and this change will try to replace that when users type the name with this invalid char.
The weather integration is now automatically detected by the Blueprint, based on the attributes provided by the integration itself, so an user selection is not needed anymore.
* Code refactoring - Nextion constants - Colors
No changes in functionalities. Just renaming variables related to colors in order to improve readability.
* Code refactoring - Nextion constants - Icons
* Adding aliases on the first level actions
This will make easier troubleshooting as aliases are shown in the logs.
* Nextion constants - Pages
* Nextion constants - Commands
* Nextion constants - Other pics
* Fixed typo in nextion.pics.hardware.button
* Fixed " 'mui_weekday_today' is undefined"
* Code refactoring/standardization
Refactoring:
- Weather pages
- It might support any weather integration now, including OpenWeather)
- New string for translation (when weather info is not available for a certain day)
- Home page (partial)
* Fix bug "'home_page_values' is undefined"
* Code refactoring - Button pages
Rebuilt button pages in order to improve readability and maintainability.
No changes on functionalities,
* Changed blueprint version to v3.2.2
* Refactoring entities pages
* Reorganizing inputs to improve readability
* Bug fixes: qrcode icon & weather provider
- Fixed bug preventing to detect that QR Code was enabled in order to display the QR code icon on Home page
- Fixed weather integration detection
* Review states(entity_id) to make it more resilient
Reduce the chances of crash if a `states(entity_id)` returns an error.
* Make state_attr(entity_id, attr) more resilitent
To avoid crashes with an invalid return.
* Perf improv: Don't load weather vars unless needed
Performance improvement - don't load weather vars when those are not needed.
* Using alias for delay_value
To make easier to maintain the code.
* Code refactoring: Button press/status
Optimizing code in order to improve readability & maintainability.
* Reorganizing pages variables