🚀 Features
- Feature: Refactor config management interface
- Feature: Allow custom language pack for webapp
- Feature: Added spanish language pack
- Feature: Added italian language pack
- Feature: Implement language pack support for display texts
- Feature: Added spanish display translation
- Feature: Added italian display translation
- Feature: Added device info for HMS-700
- Feature: Validate JSON before uploading
🐛 Fixes
- Fix: cpplint errors
- Fix: Take DST into account when recalculating the sunrise sunset time
- Fix: Lint Error
- Fix: skip BOM in JSON files (pin_mapping and config)
- Fix lint errors
🌎 Web Application
- webapp: Use global AlertResponse interface
- webapp: Allow upload of language packs
- webapp: Added global reboot wait screen
- webapp: Rename interface to prevent lint errors
- webapp: Fix: WaitRetstartView showed basic auth dialog
- webapp: Update dependencies
- webapp: right-align labels for inputs on non-sm viewports
- webapp: last table row shall have no bottom border
- webapp: remove table's bottom margin
- webapp: add gap between inverter selectors
- webapp: avoid inline style in inverter channel info card
- webapp: equalize style of cards with tables in live view
- webapp: use reasonable name for radio stats accordion
- webapp: align table headers with card headers
- webapp: apply card-table class to info view cards
- webapp: adjust look of tables in accordions to live view cards
- webapp: beautify radio statistics reset button
- webapp: fix inverter "add" and "save order" button positions
- webapp: optimize spacing on bottom of cards
- webapp: MQTT: use v-if in favor of v-show
- webapp: MQTT: no login with cert if TLS disabled
- webapp: avoid inline style for inverter channel info value
- webapp: properly space alert with hint for hostname
- webapp: optimize look of firmware update cards
- webapp: inverter advanced tab needs space at the top
- webapp: optimize look of login page
- webapp: optimize body bottom padding and length
- webapp: consistently use no colon in form labels
- webapp: optimize placement of device profile doc buttons
- webapp: show pin mapping categories as cards
- webapp: device manager: optimize cards for tab nav
- webapp: always scroll up when navigating to another view
- webapp: fix inverter selection button breaking
- webapp: declare emitted event in FormFooter component
- webapp: Update dependencies
- webapp: add app.js.gz
🛠 Under the hood
- Update UpgradePartition.md
- Update nrf24/RF24 from 1.4.9 to 1.4.10
- Upgrade ESPAsyncWebServer from 3.3.16 to 3.3.17
- Rename config API to file API
- Refactor file handling API and add endpoint to delete files
- Add API endpoint to retrieve custom languages and complete language pack
- Move lookup for translation path to separate method
- Check if language pack metadata are valid
- add and use configuration write guard
- Rewrite display language handling to work with locale strings instead of magic numbers.
- Added README.md to lang folder
- Upgrade ESPAsyncWebServer from 3.3.17 to 3.3.21
- Merge branch 'pr2328' into dev
- keep console.log() when serving webapp
- Remove not required include
- Replace multiline print by printf
- Remove not required include
- Merge branch 'pr2360' into dev
- Upgrade ESPAsyncWebServer from 3.3.21 to 3.3.22
- Build factory.bin in every compile attempt