Compare commits

...

1754 Commits

Author SHA1 Message Date
Paul Bottein 0e3f2dc017 Set climate as toggle domain 2025-02-10 14:59:31 +01:00
Petar Petrov 497c6c35f1 Fix device energy card with max_devices (#24150) 2025-02-10 10:12:42 +01:00
Petar Petrov b0b06a2787 Round log scale limits (#24151) 2025-02-10 10:12:12 +01:00
Paulus Schoutsen f3d55447ca Add support for intent-progress assist events (#24143) 2025-02-09 23:36:56 -05:00
renovate[bot] 1b3d4b77d3 Update dependency ua-parser-js to v2.0.1 (#24125)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-02-08 21:14:11 +02:00
Paulus Schoutsen 6ec4041c4c Navigate to newly created config entry (#24109) 2025-02-07 08:32:21 +02:00
karwosts d919e8d333 Integrate Statistic Card with Energy Date Picker (#23794)
* Support energy-date-selection for statistic card

* reuse period key
2025-02-07 08:29:28 +02:00
karwosts af7bb85667 Stack solar forecasts (#24113) 2025-02-07 06:44:39 +01:00
renovate[bot] 9061e2039b Update dependency @vitest/coverage-v8 to v3.0.5 (#24106)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-02-06 19:40:41 +01:00
renovate[bot] 906e6f4a88 Update dependency @codemirror/state to v6.5.2 (#24105)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-02-06 19:26:48 +01:00
renovate[bot] 73fbe9a69d Update typescript-eslint monorepo to v8.23.0 (#24108)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-02-06 19:26:16 +01:00
Petar Petrov 2a0f69a629 Fix energy dashboard data formatting (#24101) 2025-02-06 12:38:22 +01:00
Petar Petrov 9411a77f14 Set charts font to Roboto (#24097) 2025-02-06 13:16:35 +02:00
Petar Petrov de3bf2e088 Show energy-self-sufficiency-gauge card without grid return (#24098)
Show energy-self-sufficiency-gauge card if solar is defined
2025-02-06 10:07:06 +00:00
Brynley McDonald 16181b48ae Add Mastodon and Bluesky to help tip (#24099)
Add Mastodon and Bluesky to socials tip
2025-02-06 10:59:58 +01:00
Curt Grimes 8682debe61 Fix punctuation in some toast and warning messages (#24093)
There are some toast messages that are comma splices (two independent
clauses joined by a comma), which is not correct grammar. This commit
fixes the punctuation in these messages.
2025-02-06 09:37:54 +01:00
Petar Petrov bdbc9bc1b4 Reduce padding in energy charts and align unit (#24095) 2025-02-06 09:36:58 +01:00
renovate[bot] 79b9f8d083 Update dependency barcode-detector to v3 (#24015)
* Update dependency barcode-detector to v3

* fix breaking changes

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Petar Petrov <MindFreeze@users.noreply.github.com>
2025-02-06 07:53:26 +00:00
Wendelin 3918194d2d Add network adapter translations (#24096) 2025-02-06 09:49:05 +02:00
Charles Garwood e9fef1f873 Update more-info dialog layout for weather entities (#22818)
* Update weather more-info style

* Cleanup unused var

* Use badges for attributes

* Remove unnecessary flex class

* CSS cleanup

* Wrap badges

* Revert "Cleanup unused var"

This reverts commit 89ab0f6ad05e1e669b84e69f4c263e3d302794f2.

* Revert badges for attributes

* Scroll long forecasts

* Use nothing instead of empty strings

* Cleanup
2025-02-06 07:11:30 +01:00
Jan-Philipp Benecke 35face602b Fix area registry dialog field (#24090) 2025-02-05 18:33:00 +01:00
Bram Kragten 803ac496f6 Merge branch 'rc' into dev 2025-02-05 16:32:25 +01:00
Bram Kragten f1173dd84b Bumped version to 20250205.0 2025-02-05 16:27:17 +01:00
Petar Petrov 44dcca9923 Fix chart height (#24028) 2025-02-05 16:25:44 +01:00
Bram Kragten bd74d39dd8 Use max of width and actualBoundingBox to get text width (#24085) 2025-02-05 16:20:22 +01:00
Petar Petrov 172d6c3079 Disable chart update animation (#24084) 2025-02-05 16:20:21 +01:00
Bram Kragten 56539e8065 Charts: set tooltip triggerOn to click on mobile (#24083)
set tooltip triggerOn to click on mobile
2025-02-05 16:20:20 +01:00
Bram Kragten 8f6867f142 Chart: Add tooltip styling to theme (#24082) 2025-02-05 16:20:19 +01:00
Bram Kragten d51f8995dd Charts: add styles for legend page controls (#24081) 2025-02-05 16:20:19 +01:00
Petar Petrov f2e35dc70a Fix chart preview (#24080)
* Fix chart preview

* Revert change to timeline-chart labels
2025-02-05 16:20:18 +01:00
Petar Petrov 6487b9b7ea Fix device energy bar chart (#24079) 2025-02-05 16:20:17 +01:00
Bram Kragten e50b658db7 Set min height for graphs, adjust margins (#24078)
* Set min height for graphs, adjust margins

* stats + header adjustments

* set min to 200
2025-02-05 16:19:29 +01:00
Bram Kragten 6efe237639 Fix label truncated timeline chart (#24077) 2025-02-05 16:15:00 +01:00
Bram Kragten 4a94cfc05b Set list color of update more info to dialog background (#24076) 2025-02-05 16:15:00 +01:00
Bram Kragten 7cbdb1dcfd Fix condition in tracing graph (#24075) 2025-02-05 16:14:59 +01:00
Paul Bottein 553bb61db7 Fix statistic chart tooltip values (#24074) 2025-02-05 16:14:58 +01:00
Petar Petrov 786ff787d1 Fix spacing & colors in statistics-graph chart (#24068)
* Fix statistic chart colors

* Fix spacing in statistics-graph

* set start time based on data
2025-02-05 16:14:57 +01:00
Bram Kragten 28b3f2970a Use max of width and actualBoundingBox to get text width (#24085) 2025-02-05 17:12:48 +02:00
Petar Petrov 7d170a710e Disable chart update animation (#24084) 2025-02-05 15:04:03 +00:00
Bram Kragten cc40b50675 Charts: set tooltip triggerOn to click on mobile (#24083)
set tooltip triggerOn to click on mobile
2025-02-05 15:02:43 +00:00
Bram Kragten b6eaff46e9 Chart: Add tooltip styling to theme (#24082) 2025-02-05 16:37:13 +02:00
Bram Kragten 674bb0d16a Set min height for graphs, adjust margins (#24078)
* Set min height for graphs, adjust margins

* stats + header adjustments

* set min to 200
2025-02-05 15:16:33 +01:00
Petar Petrov 6ff018afc9 Fix chart preview (#24080)
* Fix chart preview

* Revert change to timeline-chart labels
2025-02-05 15:16:16 +01:00
Bram Kragten ad48732bb7 Charts: add styles for legend page controls (#24081) 2025-02-05 16:04:14 +02:00
Bram Kragten fef162346a Set list color of update more info to dialog background (#24076) 2025-02-05 12:48:13 +01:00
Bram Kragten 72d208d1ac Fix label truncated timeline chart (#24077) 2025-02-05 12:47:39 +01:00
Petar Petrov 5a8b1b0fd4 Fix device energy bar chart (#24079) 2025-02-05 12:47:21 +01:00
Bram Kragten 4cfc651799 Fix condition in tracing graph (#24075) 2025-02-05 10:04:39 +00:00
Petar Petrov b4a3f4cb2c Fix spacing & colors in statistics-graph chart (#24068)
* Fix statistic chart colors

* Fix spacing in statistics-graph

* set start time based on data
2025-02-05 11:22:31 +02:00
Paul Bottein f0507a88a6 Fix statistic chart tooltip values (#24074) 2025-02-05 11:18:29 +02:00
renovate[bot] fe041e442d Update dependency vitest to v3.0.5 [SECURITY] (#24066)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-02-04 19:28:01 +01:00
Bram Kragten e5fea98460 Bumped version to 20250204.0 2025-02-04 18:22:43 +01:00
Petar Petrov 31180e3a9e Fix energy charts with leap years (#24059)
* Fix energy charts with leap years

* handle quarters
2025-02-04 18:21:27 +01:00
Paul Bottein ce0f02a45b Display unavailable backups locations (#24058)
Display anavailable backups locations
2025-02-04 18:21:27 +01:00
Paul Bottein 53f090356e Improve value formatting inside backup tooltip (#24057) 2025-02-04 18:21:26 +01:00
Bram Kragten 776c4da688 Add support package download to cloud (#24051) 2025-02-04 18:21:25 +01:00
Bram Kragten 849922f7be Dont show voice wizard for voip (#24050)
dont show voice wizard for voip
2025-02-04 18:21:24 +01:00
Paul Bottein a26701808f Add support for add-on update type for backups in the UI (#24044)
* Add support for add-on update type for backups in the UI

* Add type to backup detail page

* Use new model

* Fix detail page

* Fix type
2025-02-04 18:21:23 +01:00
Bram Kragten 904ee2e418 Add support package download to cloud (#24051) 2025-02-04 18:06:41 +01:00
Paul Bottein 11ae3a77e8 Add support for add-on update type for backups in the UI (#24044)
* Add support for add-on update type for backups in the UI

* Add type to backup detail page

* Use new model

* Fix detail page

* Fix type
2025-02-04 16:04:11 +01:00
Paul Bottein 3a12019b64 Display unavailable backups locations (#24058)
Display anavailable backups locations
2025-02-04 14:45:38 +01:00
Bram Kragten 6c2cf1ff60 Dont show voice wizard for voip (#24050)
dont show voice wizard for voip
2025-02-04 14:38:03 +02:00
Petar Petrov 02ae0b5864 Fix energy charts with leap years (#24059)
* Fix energy charts with leap years

* handle quarters
2025-02-04 12:28:31 +00:00
Jan-Philipp Benecke 85fe2213c1 Align view mount dialog with design guidelines (#24060)
Align view mount dialog with design requirements
2025-02-04 13:25:59 +01:00
Paul Bottein 7dbc78f1d6 Improve value formatting inside backup tooltip (#24057) 2025-02-04 13:47:24 +02:00
Ingolf Becker f965a3504f Improve weather forecast card layout (#23704)
* Improve weather forecast card layout

* fix units and improve naming

Co-authored-by: Petar Petrov <MindFreeze@users.noreply.github.com>

---------

Co-authored-by: Petar Petrov <MindFreeze@users.noreply.github.com>
2025-02-04 06:32:30 +00:00
karwosts 077f5efe7e Fix menus in Todo list for Keyboard (#24054) 2025-02-04 08:30:45 +02:00
Bram Kragten ef3bea71a0 Bumped version to 20250203.0 2025-02-03 18:20:20 +01:00
Petar Petrov fcf655b0ec FIx console errors in charts (#24048)
* FIx console errors in charts

* handle undefined unit_of_measurement
2025-02-03 18:20:17 +01:00
Paul Bottein b263b74916 Increase margin to avoid fab overlap on backup overview page (#24047) 2025-02-03 18:20:16 +01:00
Paul Bottein 0f4b6b423a Improve chart height and narrow option in grid section (#24046)
* Fix chart size in grid

* Set minimal height to 2 for history chart

* Update history chart
2025-02-03 18:20:15 +01:00
Paul Bottein 72df585c5e Fix download unencrypted backup logic (#24045) 2025-02-03 18:20:15 +01:00
Petar Petrov 4698a63642 Show seconds on x axis when chart is zoomed a lot (#24043)
Show seconds on x axis when charts is zoomed a lot
2025-02-03 18:20:14 +01:00
Petar Petrov 6eb43a7d61 Workaround for chart size bug in editor preview (#24040) 2025-02-03 18:20:13 +01:00
Petar Petrov af35b15400 Fix click action for timeline chart labels (#24039)
* Fix click action for timeline chart labels

* Use id in line charts
2025-02-03 18:20:12 +01:00
Petar Petrov 0d50d2664f Fix legend in charts (#24025)
* Fix legend in line charts

* fix statistics graph legend
2025-02-03 18:20:11 +01:00
Philipp ff1159402e Fix browser media player showing more info dialog (#24021) 2025-02-03 18:20:11 +01:00
Jan-Philipp Benecke f8742ae690 Display year conditionally when script was last triggered on script list (#24012)
Display year conditionally when script was last triggered in script list
2025-02-03 18:20:10 +01:00
ildar170975 c786d26542 Fix for "Increase generic entity row touch target (3): climate entities (#24002)
return to max-height + set vertical alignment
2025-02-03 18:20:09 +01:00
Bram Kragten 3f8ff94002 Make date period picker respect timezone settings (#23996) 2025-02-03 18:20:08 +01:00
Petar Petrov 64a968543b FIx console errors in charts (#24048)
* FIx console errors in charts

* handle undefined unit_of_measurement
2025-02-03 18:13:35 +01:00
karwosts aea98f702b Prioritize local image over entity_picture in picture-entity card (#24032)
* Prioritize local image over entity_picture in picture-entity

* Remove the default stub image if we switch to an entity with a picture

* minor cleanup
2025-02-03 16:01:16 +01:00
Paul Bottein 863ff622be Increase margin to avoid fab overlap on backup overview page (#24047) 2025-02-03 16:00:08 +01:00
Petar Petrov 730cea6646 Workaround for chart size bug in editor preview (#24040) 2025-02-03 15:59:43 +01:00
karwosts 7d1f8d618a Fix more keyboard menus (devices/helpers/scenes/scripts) (#24037)
* Fix more keyboard menus (devices/helpers/scenes/scripts)

* Apply suggestions from code review

Co-authored-by: Petar Petrov <MindFreeze@users.noreply.github.com>

* less async

---------

Co-authored-by: Petar Petrov <MindFreeze@users.noreply.github.com>
2025-02-03 16:13:20 +02:00
Paul Bottein 67b970fcaa Improve chart height and narrow option in grid section (#24046)
* Fix chart size in grid

* Set minimal height to 2 for history chart

* Update history chart
2025-02-03 14:12:28 +00:00
Paul Bottein 38bcdaa6f6 Revert "Fix chart size in grid"
This reverts commit 8f1389de66.
2025-02-03 14:55:17 +01:00
Paul Bottein 8f1389de66 Fix chart size in grid 2025-02-03 14:51:19 +01:00
Paul Bottein 37ac796c8f Fix download unencrypted backup logic (#24045) 2025-02-03 14:40:49 +01:00
Petar Petrov 716cd19d41 Show seconds on x axis when chart is zoomed a lot (#24043)
Show seconds on x axis when charts is zoomed a lot
2025-02-03 13:27:33 +01:00
Paul Bottein 173725f011 Use ignoreDiacritics in fuse library (#24041) 2025-02-03 12:53:34 +01:00
Petar Petrov ad561b885b Fix click action for timeline chart labels (#24039)
* Fix click action for timeline chart labels

* Use id in line charts
2025-02-03 10:36:59 +00:00
Philipp d77bdf4ac6 Fix browser media player showing more info dialog (#24021) 2025-02-03 11:36:19 +01:00
Petar Petrov ac3796ec31 Fix chart height (#24028) 2025-02-03 11:21:30 +01:00
Petar Petrov 8c3fdfb6fb Fix legend in charts (#24025)
* Fix legend in line charts

* fix statistics graph legend
2025-02-03 11:09:59 +01:00
karwosts b7c7d0b4b5 Scroll todo list if it overflows grid_layout (#24000) 2025-02-03 09:09:01 +02:00
ildar170975 8b0e6eed3a Fix for "Increase generic entity row touch target (3): climate entities (#24002)
return to max-height + set vertical alignment
2025-02-03 09:07:11 +02:00
renovate[bot] 603f884e8c Update dependency @types/chromecast-caf-receiver to v6.0.21 (#24038)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-02-03 08:09:55 +02:00
Bram Kragten 97dfccf4c7 Make date period picker respect timezone settings (#23996) 2025-02-01 17:32:07 +01:00
Jan-Philipp Benecke fd1e31c0cc Display year conditionally when script was last triggered on script list (#24012)
Display year conditionally when script was last triggered in script list
2025-02-01 17:16:43 +01:00
Bram Kragten 1de740e7b5 Bumped version to 20250131.0 2025-01-31 18:20:12 +01:00
Bram Kragten 5abfb90b16 fix time input width (#23998) 2025-01-31 18:19:45 +01:00
Petar Petrov 6b691063a8 Hide "heating" data from climate charts (#23997) 2025-01-31 18:19:44 +01:00
Paul Bottein d1d746e7e6 Remove name from the chart series when using showNames = false (#23995)
* Remove name from the chart series when using showNames = false

* Remove translations
2025-01-31 18:19:43 +01:00
Petar Petrov 2fcb64d4a1 Echarts: auto scale Y in log charts (#23994)
* Echarts: auto scale Y in log charts

* fix statistics chart log scale
2025-01-31 18:19:42 +01:00
Petar Petrov 3769f8c7c0 Hide irrelevant errors from echarts zoom (#23992) 2025-01-31 18:19:41 +01:00
Paul Bottein f0a56e75f5 Improve encrypted backup dialog (#23991)
* Improve encrypted backup dialog

* Remove unused code
2025-01-31 18:19:40 +01:00
Petar Petrov 15f33e1f19 Echarts: show all series in tooltip (#23989)
* Echarts: show all series in tooltip

* fix typo

* remove duplicate tooltip entries in statistics chart

* take last valid point instead of first
2025-01-31 18:19:40 +01:00
Petar Petrov 181122177b Echarts: fix Y scaling (#23988)
* Echarts: fix scaling of Y axis

* fix fit logic to only extend the limits

* handle invalid min for log scale
2025-01-31 18:19:39 +01:00
Petar Petrov 684cd0f627 Fix legend resetting on zoom (#23985) 2025-01-31 18:19:38 +01:00
Paul Bottein 277202e363 Use smooth line for statistic line chart (#23984)
* Use smooth line for statistic line chart

* Use same smooth options as chartjs
2025-01-31 18:19:37 +01:00
Petar Petrov b388d1fd42 Fix statistics echarts with negative values (#23983)
* Fix statistics echarts with negative values

* fix border-radius of negative bar values

* revert timeline label width to previous max values
2025-01-31 18:19:37 +01:00
Paul Bottein 251e6399f5 Reduce chart height to 300px (#23979) 2025-01-31 18:19:36 +01:00
karwosts f44c5d7a63 Improve statistics graph axis when using energy_date_selection (#23974) 2025-01-31 18:19:35 +01:00
ildar170975 cae1ca52f0 Fix for "Increase generic entity row touch target (2) (#23973)
* Revert "Fix for "Increase generic entity row touch target" (#23953)"

This reverts commit 028472fc7b.

* conditional style
2025-01-31 18:19:34 +01:00
Petar Petrov f8de2c64a5 Hide "heating" data from climate charts (#23997) 2025-01-31 17:13:13 +00:00
Bram Kragten 34ef5be720 fix time input width (#23998) 2025-01-31 17:12:49 +00:00
Petar Petrov 1402802031 Echarts: auto scale Y in log charts (#23994)
* Echarts: auto scale Y in log charts

* fix statistics chart log scale
2025-01-31 17:42:51 +01:00
Paul Bottein 816989ab4d Remove name from the chart series when using showNames = false (#23995)
* Remove name from the chart series when using showNames = false

* Remove translations
2025-01-31 17:38:50 +01:00
Paul Bottein d4497ca39c Improve encrypted backup dialog (#23991)
* Improve encrypted backup dialog

* Remove unused code
2025-01-31 16:10:43 +00:00
Petar Petrov 6e39242ca3 Echarts: fix Y scaling (#23988)
* Echarts: fix scaling of Y axis

* fix fit logic to only extend the limits

* handle invalid min for log scale
2025-01-31 15:44:22 +01:00
Petar Petrov 0197e32783 Echarts: show all series in tooltip (#23989)
* Echarts: show all series in tooltip

* fix typo

* remove duplicate tooltip entries in statistics chart

* take last valid point instead of first
2025-01-31 15:42:46 +01:00
Petar Petrov 87dfed4beb Hide irrelevant errors from echarts zoom (#23992) 2025-01-31 15:37:47 +01:00
Wendelin dae991dc89 Improve develop and serve (#23990) 2025-01-31 15:50:15 +02:00
Paul Bottein 6197e3483b Use smooth line for statistic line chart (#23984)
* Use smooth line for statistic line chart

* Use same smooth options as chartjs
2025-01-31 11:46:01 +01:00
Petar Petrov b2a6c8bd36 Fix legend resetting on zoom (#23985) 2025-01-31 11:13:46 +01:00
Petar Petrov 938855e13c Fix statistics echarts with negative values (#23983)
* Fix statistics echarts with negative values

* fix border-radius of negative bar values

* revert timeline label width to previous max values
2025-01-31 12:02:39 +02:00
renovate[bot] a8712e3b8e Update vaadinWebComponents monorepo to v24.6.3 (#23981)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-01-31 10:31:11 +01:00
Paul Bottein b15b577057 Reduce chart height to 300px (#23979) 2025-01-31 10:42:51 +02:00
karwosts 653aeae3d8 Improve statistics graph axis when using energy_date_selection (#23974) 2025-01-31 08:45:37 +02:00
ildar170975 0aea6141ad Fix for "Increase generic entity row touch target (2) (#23973)
* Revert "Fix for "Increase generic entity row touch target" (#23953)"

This reverts commit 028472fc7b.

* conditional style
2025-01-31 08:41:38 +02:00
renovate[bot] 5243c1d871 Update typescript-eslint monorepo to v8.22.0 (#23972)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-01-31 08:39:18 +02:00
Bram Kragten 9449f5ad0a Bumped version to 20250130.0 2025-01-30 18:08:13 +01:00
Paul Bottein c337bc5f97 Improve backup settings display on mobile (#23967) 2025-01-30 18:07:52 +01:00
Petar Petrov 6aab60cf45 Dynamically reorder energy devices (echarts) (#23966)
* Dynamically reorder energy devices (echarts)

* fix initial sorting in hui-energy-devices-detail-graph-card

* fix dynamic reordering in devices detail
2025-01-30 18:07:51 +01:00
Paul Bottein 52e9bc3213 Fix backup location config not updated (#23965) 2025-01-30 18:07:50 +01:00
Paul Bottein e48b2383cf Fix location icon when many locations in backup datatable (#23964)
* Fix location icon when many locations in backup datatable

* Reuse data

* Don't copy twice

* Improve naming
2025-01-30 18:07:50 +01:00
Petar Petrov 002a249777 Use CSS variables to theme echarts (#23963)
* Use CSS variables to theme echarts

* fix styles
2025-01-30 18:07:49 +01:00
Paul Bottein 10498ce18d Display device name in bluetooth panel (#23960) 2025-01-30 18:07:48 +01:00
Wendelin 6a5936b2b2 Add correct link to backup.create_automatic (#23959) 2025-01-30 18:07:47 +01:00
Norbert Rittel dc68aaa803 Add localizable "Actions" label to OAuth credentials picker (#23958)
* Add localizable "Actions" label to OAuth credentials picker

* Prettier
2025-01-30 18:07:46 +01:00
Paul Bottein e7931ce049 Restore scroll position go back to backup settings page (#23955) 2025-01-30 18:07:46 +01:00
ildar170975 59b2582fe3 Fix for "Increase generic entity row touch target" (#23953)
fix for "touch target"
2025-01-30 18:07:45 +01:00
karwosts 8577b0721c Fix untracked energy in compare (#23949) 2025-01-30 18:07:44 +01:00
J. Nick Koston 91319be855 Reduce size of address column on Bluetooth Advertisement monitor (#23942) 2025-01-30 18:07:43 +01:00
Simon Lamon 0dff538298 Backup location translations improvements (#23940)
* Backup location translations improvements

* Apply better translations
2025-01-30 18:07:42 +01:00
Simon Lamon 6ac6d9c6eb Backup location translations improvements (#23940)
* Backup location translations improvements

* Apply better translations
2025-01-30 18:06:57 +01:00
Norbert Rittel 6ba0071296 Add localizable "Actions" label to OAuth credentials picker (#23958)
* Add localizable "Actions" label to OAuth credentials picker

* Prettier
2025-01-30 18:05:18 +01:00
Paul Bottein fef5dc4232 Fix location icon when many locations in backup datatable (#23964)
* Fix location icon when many locations in backup datatable

* Reuse data

* Don't copy twice

* Improve naming
2025-01-30 17:02:56 +00:00
Paul Bottein ce58962dbb Fix backup location config not updated (#23965) 2025-01-30 17:43:39 +01:00
Petar Petrov 9fb1e1d2ed Dynamically reorder energy devices (echarts) (#23966)
* Dynamically reorder energy devices (echarts)

* fix initial sorting in hui-energy-devices-detail-graph-card

* fix dynamic reordering in devices detail
2025-01-30 17:43:06 +01:00
Paul Bottein a29544c1e6 Improve backup settings display on mobile (#23967) 2025-01-30 17:49:05 +02:00
Petar Petrov b2b71edd04 Use CSS variables to theme echarts (#23963)
* Use CSS variables to theme echarts

* fix styles
2025-01-30 14:39:59 +01:00
ildar170975 028472fc7b Fix for "Increase generic entity row touch target" (#23953)
fix for "touch target"
2025-01-30 13:26:11 +01:00
Paul Bottein b056ce228b Display device name in bluetooth panel (#23960) 2025-01-30 12:36:10 +01:00
Wendelin 0cd4256c0e Add correct link to backup.create_automatic (#23959) 2025-01-30 11:05:33 +00:00
Yosi Levy e274c5b23f Add node memory to allow commit (#23954) 2025-01-30 11:06:50 +02:00
karwosts ea57846465 Fix untracked energy in compare (#23949) 2025-01-30 09:57:54 +01:00
Paul Bottein 3f2e2bc659 Restore scroll position go back to backup settings page (#23955) 2025-01-30 09:56:52 +01:00
J. Nick Koston e3f2f66206 Reduce size of address column on Bluetooth Advertisement monitor (#23942) 2025-01-29 19:01:47 +00:00
Bram Kragten b95e87845f Merge branch 'rc' into dev 2025-01-29 16:46:26 +01:00
Bram Kragten bc49ebc489 Bumped version to 20250129.0 2025-01-29 16:38:25 +01:00
Wendelin c97d0ce68a Add translations for backup agents encryption (#23938)
* Add translations for backup agents encryption

* Update src/translations/en.json

* Split class map

---------

Co-authored-by: Bram Kragten <mail@bramkragten.nl>
Co-authored-by: Paul Bottein <paul.bottein@gmail.com>
2025-01-29 15:31:55 +00:00
renovate[bot] a0e7d6f1c6 Update dependency lint-staged to v15.4.3 (#23937)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-01-29 16:23:04 +01:00
Petar Petrov 25d2a5ddac Open more-info on label click in echarts (#23921)
* Open more-info on label click in echarts

* check isExternalStatistic in energy devices click
2025-01-29 15:44:21 +01:00
Paul Bottein a2f2d64f5c Allow to change encryption for each backup location (#23861)
* Add backup location settings page

* Add encryption settings

* Display unencrypted locations and backups

* Improve cloud detail page

* Fix encryption flag

* Fix restore backup

* Fix lint

* Fix translations

* Add warning

* Use agents in backup locations

* Feedback

* Use updated

* Improve encrypted/unencrypted status

* Improve code quality

* Remove hardcoded failed id

* Extend agent interface

* Use willupdate
2025-01-29 14:23:47 +01:00
Petar Petrov fcdcbbda05 Fix statistics chart stacking and colors (#23922) 2025-01-29 12:46:59 +01:00
Paul Bottein 4b5c7fc2de Only restore config and database for core install (#23935) 2025-01-29 12:46:30 +01:00
Paul Bottein dd64d88afe Use handle icon for drag and drop in energy devices settings (#23933)
* Use handle icon for drag and drop in energy devices settings

* Remove import
2025-01-29 11:04:09 +00:00
Wendelin 5feffd08ff Fix backup time supporting-text (#23931) 2025-01-29 09:08:26 +01:00
karwosts 543c7df3e0 Keyboard accessible menus in hass-tabs-subpage-data-table (#23927) 2025-01-29 08:23:27 +02:00
ildar170975 167f859f2a fix padding for error-log-card (#23923)
make padding similar to system-log-card
2025-01-29 08:22:24 +02:00
J. Nick Koston c7d9699a24 Include addresses of Bluetooth devices in the connection slots tooltip (#23928) 2025-01-29 08:21:34 +02:00
ildar170975 a638cf443d fix overflow for ha-map (#23929) 2025-01-29 08:19:00 +02:00
Patrick Kortendick 438d1c13ef Fix misspelling for humidifier card description (#23924) 2025-01-29 05:20:01 +00:00
J. Nick Koston cc8869b9f9 Show scanner name in the Bluetooth Advertisement Monitor (#23926) 2025-01-28 13:07:16 -10:00
J. Nick Koston cbdb7406ad Add support for showing Bluetooth connection slot allocations (#23899) 2025-01-28 06:52:21 -10:00
Wendelin f8d2560104 Revert "Add shortcut hint to assist dialog" (#23918)
Revert "Add shortcut hint to assist dialog (#23739)"

This reverts commit d121b33263.
2025-01-28 10:53:57 -05:00
Petar Petrov cc48ae82d6 Fixes for echarts (#23906)
* show negative untracked energy again

* fix chart cards height

* fix timeline label width

* fix statistics chart legend

* fix layout of chart cards

* tweak timeline chart labels

* timeline label tweak

* css tweak

* fix legend colors in statistics chart

* dark mode fix

* fix for y axis with a long name

* listen for darkMode changes and update charts

* legend tweak for darkMode

* dark mode tweak

* hide insignificant echarts errors for now
2025-01-28 14:20:34 +00:00
karwosts e1bda9b57d Use fixed positioning for ha-form-multi_select (#23781) 2025-01-28 15:13:19 +01:00
ildar170975 89e9316a40 Fix typo & layout in ha-assist-chip (#23785)
* fix typo fot slot name

* make font-size same as for label

* remove unneeded margin-top
2025-01-28 15:04:12 +01:00
Paul Bottein 85e4975206 Use name property when formatting backup location (#23916) 2025-01-28 13:53:02 +01:00
Ben Randall 142faba04d Update settings button icon on tables to mdi-table-cog. (#23915)
Update settings button icon on tables to mdi-table-cog.

The cog icon is used in a lot of places to indicate settings and it's generally clear what it's intent is.  However, the cog icon used by tables very often appears very close by the triple dots menu or just in the top right corner so it's very easy to mistakenly press that button intending to press the menu button, or to press it when looking for the appropriate settings button.

This changes the icon used by these buttons from mdi-code to mdi-table-cog to help clarify the intent of the button.
2025-01-28 11:24:08 +02:00
karwosts c1c6d71ccf Fix keyboard in automation-picker menus (#23867) 2025-01-28 09:39:03 +02:00
renovate[bot] 5204a565cf Update dependency eslint to v9.19.0 (#23914)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-01-28 09:37:55 +02:00
Petar Petrov 05b8a48ba8 Looser layout limits for graph cards (#23910) 2025-01-28 09:36:20 +02:00
renovate[bot] 41770a89b4 Update dependency element-internals-polyfill to v1.3.13 (#23912)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-01-27 16:46:14 +00:00
renovate[bot] b7d14d7950 Update babel monorepo to v7.26.7 (#23911)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-01-27 17:34:34 +01:00
karwosts 4ccef6f28b Fix millisecond attributes (#23909)
fix millisecond attributes
2025-01-27 17:25:37 +02:00
karwosts d1be441455 Re-remove time picker for Energy (#23891)
* Re-remove time picker for Energy

* flip polarity
2025-01-27 14:11:08 +00:00
Philipp b3391b34e4 Increase generic entity row touch target (#23894) 2025-01-27 15:52:32 +02:00
Abílio Costa 9359e9d475 Reword incompatible media message (#23887) 2025-01-27 09:26:03 +02:00
Paul Bottein 5453da75ea Reintroduce backup switch when updating core and addons (#23814) 2025-01-27 08:25:28 +01:00
dependabot[bot] bc21877008 Bump actions/stale from 9.0.0 to 9.1.0 (#23903)
Bumps [actions/stale](https://github.com/actions/stale) from 9.0.0 to 9.1.0.
- [Release notes](https://github.com/actions/stale/releases)
- [Changelog](https://github.com/actions/stale/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/stale/compare/v9.0.0...v9.1.0)

---
updated-dependencies:
- dependency-name: actions/stale
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-27 09:24:34 +02:00
dependabot[bot] c9956c65e9 Bump actions/setup-node from 4.1.0 to 4.2.0 (#23902)
Bumps [actions/setup-node](https://github.com/actions/setup-node) from 4.1.0 to 4.2.0.
- [Release notes](https://github.com/actions/setup-node/releases)
- [Commits](https://github.com/actions/setup-node/compare/v4.1.0...v4.2.0)

---
updated-dependencies:
- dependency-name: actions/setup-node
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-27 09:24:01 +02:00
renovate[bot] 74814cc305 Update dependency @bundle-stats/plugin-webpack-filter to v4.18.2 (#23898)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-01-26 18:42:16 +00:00
renovate[bot] 8f231d7b3e Update rspack monorepo to v1.2.2 (#23896)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-01-26 19:33:12 +01:00
renovate[bot] 5b6818d72d Update dependency lint-staged to v15.4.2 (#23889)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-01-26 19:32:59 +01:00
renovate[bot] 8c75865a02 Update vitest monorepo to v3.0.4 (#23897)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-01-26 19:32:39 +01:00
J. Nick Koston 99d832ac77 Restore Bluetooth configuration panel (#23877)
* Restore Bluetooth configuration panel

* cleanup copypasta

* Apply suggestions from code review

* Update src/panels/config/integrations/integration-panels/bluetooth/bluetooth-config-dashboard-router.ts

* preen

* trim down updatePageEl
2025-01-26 08:11:21 +01:00
Simon Lamon 240e48f5c1 Include query params in url when default page is added (#23880)
Include query params if exists
2025-01-25 20:02:26 +01:00
Jan-Philipp Benecke 77fc11cda6 Use new improved save dialog when leaving script editor dirty (#23862)
* Use new improved save dialog when leaving script editor dirty

* Fix url
2025-01-25 19:14:47 +01:00
karwosts f8f152f118 Add button filter to energy devices sortable (#23881)
Add filter to energy devices sortable
2025-01-25 18:42:05 +01:00
renovate[bot] 20a67cf73c Update rspack monorepo to v1.2.1 (#23884)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-01-25 17:45:34 +01:00
ocrease dd11b3092e Preheating support in History Chart (#23878)
Use CLIMATE_HVAC_ACTION_TO_MODE to map hvac action to heat or cool so that history chart correctly shows preheating and defrosting as heat
2025-01-25 12:25:08 +01:00
renovate[bot] 7f3363621e Update dependency @bundle-stats/plugin-webpack-filter to v4.18.0 (#23879)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-01-25 12:20:46 +01:00
Jan-Philipp Benecke edce1901d7 Display year when automation was last triggered in automation list (#23864)
* Display year when automation was last triggered in automation list

* Use function
2025-01-24 17:13:01 +00:00
Jan-Philipp Benecke 546087066a Display year in entities list only when last year (#23865)
* Display year in entities list only when last year

* Make function

* Revert hyphen
2025-01-24 18:03:21 +01:00
renovate[bot] a95c589a06 Update vitest monorepo to v3.0.3 (#23870)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-01-24 17:59:35 +01:00
renovate[bot] 5f6da9d959 Update rspack monorepo to v1.2.0 (#23871)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-01-24 17:59:00 +01:00
renovate[bot] bc94ca0a0a Pin dependency tslib to 2.8.1 (#23860)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-01-24 08:32:09 +02:00
Eric Stern dc8d483e8b Logbook card loading fix (#23853)
* the call to unsubscribe will never do anything

* await the subscription when subscribing to logbook

* removed unneeded if
wrapped call to subscribeLogbook in try/catch
remove return values from _subscribeLogbookPeriod
2025-01-24 08:31:30 +02:00
renovate[bot] a329553ce1 Update typescript-eslint monorepo to v8.21.0 (#23863)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-01-23 22:10:20 +01:00
Petar Petrov 1f8cfdd0de Migrate from chart.js to echarts (#23809) 2025-01-23 15:51:48 +00:00
Paul Bottein fd1f966216 20250109.2 (#23859) 2025-01-23 16:18:56 +01:00
Paul Bottein 243a2ce0e2 Bumped version to 20250109.2 2025-01-23 16:16:42 +01:00
Paul Bottein 77c1786171 Fix delete button for state content in iOS and Android (#23847) 2025-01-23 16:15:49 +01:00
Paul Bottein 7a7c204d74 Fix delete button for state content in iOS (#23839) 2025-01-23 16:15:48 +01:00
Paul Bottein dcb74ad2ee Fix backup data picker translations (#23826) 2025-01-23 16:15:47 +01:00
Paul Bottein fd4c62a852 20250109.1 (#23858) 2025-01-23 14:26:04 +01:00
Paul Bottein bf1b0ac949 Bumped version to 20250109.1 2025-01-23 14:17:53 +01:00
Bram Kragten c6f0c62fd6 Prevent race in dialog box (#23758)
Co-authored-by: Petar Petrov <MindFreeze@users.noreply.github.com>
Co-authored-by: Wendelin <12148533+wendevlin@users.noreply.github.com>
2025-01-23 14:15:23 +01:00
Wendelin ac98672cb7 Fix background (#23736) 2025-01-23 14:15:22 +01:00
Bram Kragten 6b471ba6e7 Fix background on cast devices (#23731) 2025-01-23 14:15:21 +01:00
Petar Petrov b28e7d2f06 Fix navigation from stacked dialogs with the same name (#23698)
* Fix navigation from stacked dialogs

* lint fix

* Keep only 1 instance per dialog tag in the stack
2025-01-23 14:15:20 +01:00
Simon Lamon bf471eb8c3 Minor fixes for backup translations (#23691) 2025-01-23 14:15:19 +01:00
Petar Petrov 8c52bc3ffb Fix more-info chart rendering (#23619)
* Fix more-info chart rendering

* lint fix

* remove animation-container & _chartHeight

* don't change height on resize

* handle default height in ha-chart-base

* fix chart height in energy panel

* lint

* lint
2025-01-23 14:12:54 +01:00
Bram Kragten 54b328648a Match UI with core and don't allow restore config without db and vice … (#23553)
Match UI with core and dont allow restore config without db and vice versa
2025-01-23 13:59:37 +01:00
Jan-Philipp Benecke 62a9da2de2 Display year for created_at and modified_at of entities (#23772) 2025-01-23 13:36:23 +02:00
renovate[bot] 25ff96b9bf Update dependency eslint-config-prettier to v10 (#23764)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-01-23 13:31:03 +02:00
Matthias Alphart caeb616dc6 Don't check for promise when processing DataEntryFlowStep (#23759) 2025-01-23 13:27:19 +02:00
karwosts fb79e2cfb2 Fix keyboard for ha-config-entities bulk menus (#23776)
Fix keyboard for ha-config-entities menus
2025-01-23 13:15:23 +02:00
Paul Bottein 666316e44a Use area entities in area card for temperature and humidity (#23842)
Use area entities in area card for temperature and humidity instead of average
2025-01-23 12:26:58 +02:00
karwosts 1532093426 Support offset on input_datetime time trigger (#23855)
* Support offset on input_datetime time trigger

* no time entities
2025-01-23 12:23:27 +02:00
Jan-Philipp Benecke 2effb0935c Add helper text to inputs of time pattern trigger (#23844) 2025-01-23 09:40:13 +02:00
renovate[bot] 06a08bb4f2 Update dependency intl-messageformat to v10.7.14 (#23854)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-01-23 09:04:21 +02:00
Jan-Philipp Benecke 09102d34d6 Improve automation save dialog when leaving editor dirty (#23589)
* Improve automation save dialog when leaving editor dirty

* Make CI happy
2025-01-23 09:03:39 +02:00
Wendelin 27d683f6e8 Add additional backup schedule description (#23843)
* Add additional backup schedule description

* Use ha-icon-button for description

* Remove tip style

---------

Co-authored-by: Paul Bottein <paul.bottein@gmail.com>
2025-01-22 20:17:50 +01:00
Paul Bottein b89bd0be3b Fix delete button for state content in iOS and Android (#23847) 2025-01-22 14:25:06 +00:00
Paul Bottein 51e6e6d230 Fix delete button for state content in iOS (#23839) 2025-01-22 08:16:35 -05:00
Norbert Rittel 9005f8faa9 Update hidden_explanation to include labels (#23473) 2025-01-22 09:52:53 +01:00
Jan-Philipp Benecke 7aa2abc9c2 Make add integration dialog keyboard accessible (#23829)
Make add integration keyboard accessible
2025-01-22 10:06:05 +02:00
dependabot[bot] 898fd51c7d Bump vite from 6.0.7 to 6.0.11 (#23834)
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 6.0.7 to 6.0.11.
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/v6.0.11/packages/vite)

---
updated-dependencies:
- dependency-name: vite
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-22 10:04:27 +02:00
karwosts b3141a0653 Remember selection "Don't Group" in data-tables (#23836) 2025-01-22 10:03:23 +02:00
Jan-Philipp Benecke 1025f73c36 Clear filter in add helper dialog when closing (#23832) 2025-01-21 21:40:52 +01:00
Simon Lamon 1cd44728df Temporarily disable Bluetooth panel to restore access to options flow, additional fixes (#23830) 2025-01-21 09:45:47 -10:00
Sören Beye eaab19fb8c Don't hide location entities that are "home" in the MapViewStrategy (#23462) 2025-01-21 20:14:04 +02:00
Paul Bottein c4b2896fac Add label for add badge button in masonry and sidebar view (#23827)
Add label for add badge button in mansonry and sidebar view
2025-01-21 19:45:06 +02:00
Simon Lamon ca2a9f9171 Initial bluetooth integration panel (#23531)
* Initial bluetooth device page

* Update src/panels/config/integrations/integration-panels/bluetooth/bluetooth-device-page.ts

Co-authored-by: J. Nick Koston <nick@koston.org>

* Update src/panels/config/integrations/integration-panels/bluetooth/bluetooth-device-page.ts

* Apply suggestions from code review

* Apply suggestions and implement dialog

* memoize

* Apply suggestions

* Clean up and fixes

* Adjust store usage

* Implement hassdialog

* Apply comments

---------

Co-authored-by: J. Nick Koston <nick@koston.org>
2025-01-21 19:43:33 +02:00
Paulus Schoutsen 9e868e144d Allow storing temperature/humidity entities on an area (#23822)
* Allow storing temperature/humidity entities on an area

* Update objects after improved types
2025-01-21 17:37:51 +01:00
Bram Kragten fcb6da55d8 Check if we can decrypt backup on download (#23756)
Co-authored-by: Kevin Cathcart <kevincathcart@gmail.com>
Co-authored-by: Wendelin <w@pe8.at>
Co-authored-by: Wendelin <12148533+wendevlin@users.noreply.github.com>
2025-01-21 14:48:38 +01:00
Paul Bottein 87907b98bd Fix backup data picker translations (#23826) 2025-01-21 13:17:33 +01:00
Bram Kragten 7535d66373 Add time option for backup schedule (#23757)
Co-authored-by: Wendelin <w@pe8.at>
2025-01-21 11:58:07 +01:00
Jan-Philipp Benecke e994e3565d Improve add cards dialog user experience (#23773)
Co-authored-by: Wendelin <12148533+wendevlin@users.noreply.github.com>
2025-01-21 09:53:28 +01:00
Jan-Philipp Benecke 562589a6cb Fix flickering media play button (#23778) 2025-01-21 09:09:15 +01:00
renovate[bot] e87f6d6d5e Update vitest monorepo to v3.0.2 (#23812)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-01-21 09:07:51 +01:00
karwosts 3feedb792a Multi textfield helper (#23649)
Co-authored-by: Bram Kragten <mail@bramkragten.nl>
2025-01-20 12:20:36 +01:00
Douwe fc290028c6 Update ha-assist-chat.ts (#23790)
Co-authored-by: Wendelin <12148533+wendevlin@users.noreply.github.com>
2025-01-20 09:20:14 +01:00
Jan-Philipp Benecke 2f5fd6f0c7 Use destructive attribute from ha-button (#23786)
Co-authored-by: Wendelin <12148533+wendevlin@users.noreply.github.com>
2025-01-20 08:54:22 +01:00
ildar170975 9a3ca59d77 Picture glance alignment fix (#23793) 2025-01-20 08:35:29 +01:00
ildar170975 f76c22cb5b system-log-card: make a header & card-content similar to error-log-card (#23799)
Co-authored-by: Wendelin <12148533+wendevlin@users.noreply.github.com>
2025-01-20 08:26:18 +01:00
dependabot[bot] aad94624e2 Bump release-drafter/release-drafter from 6.0.0 to 6.1.0 (#23806) 2025-01-20 08:15:29 +01:00
renovate[bot] 076ab91199 Update dependency intl-messageformat to v10.7.12 (#23807) 2025-01-20 08:12:59 +01:00
Jan-Philipp Benecke d121b33263 Add shortcut hint to assist dialog (#23739)
Co-authored-by: Wendelin <12148533+wendevlin@users.noreply.github.com>
2025-01-20 08:12:52 +01:00
renovate[bot] dbfcf310c3 Update vitest monorepo to v3 (major) (#23803)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-01-20 08:05:24 +01:00
renovate[bot] 25ea6c2c55 Update dependency lint-staged to v15.4.1 (#23802)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-01-19 21:05:58 +01:00
renovate[bot] b2b2c21477 Update dependency fs-extra to v11.3.0 (#23798)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-01-19 16:41:25 +01:00
renovate[bot] 09777db549 Update dependency lint-staged to v15.4.0 (#23800)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-01-19 16:41:13 +01:00
renovate[bot] f108f65e39 Update dependency node-vibrant to v4.0.3 (#23797)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-01-19 16:41:04 +01:00
renovate[bot] 2ee9824bcc Update dependency node-vibrant to v4.0.2 (#23789)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-01-18 10:44:52 +00:00
Norbert Rittel 812461ea00 Add translatable string for "Learn how it works" (#23788)
* Add translatable string for "Learn how it works"

* Update assist-pref.ts adding localizable key
2025-01-18 11:37:22 +01:00
Jan-Philipp Benecke c430c28c2a Add missing localization on info page (#23787) 2025-01-18 11:36:00 +01:00
Jan-Philipp Benecke d67c463b98 Add clear button to Assist debug page (#23774)
* Add clear button to Assist debug page

* Move destructive to ha-button
2025-01-18 09:27:30 +02:00
renovate[bot] 8efaf2b031 Update typescript-eslint monorepo to v8.20.0 (#23771)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-01-17 08:30:15 +01:00
karwosts 5b038a4fef Add missing localize (#23770) 2025-01-17 08:10:53 +01:00
karwosts 2105793355 Don't close 2 dialogs from 1 escape keydown (more-info) (#23702) 2025-01-16 16:44:50 +01:00
Wendelin 21c2351137 Remove unused b64ToBlob (#23763) 2025-01-16 16:25:16 +01:00
renovate[bot] ebd1bdd686 Update vaadinWebComponents monorepo to v24.6.2 (#23762)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-01-16 14:01:44 +01:00
Bram Kragten 05bd70dd64 Prevent race in dialog box (#23758)
Co-authored-by: Petar Petrov <MindFreeze@users.noreply.github.com>
Co-authored-by: Wendelin <12148533+wendevlin@users.noreply.github.com>
2025-01-16 12:46:10 +01:00
Jan-Philipp Benecke e5d2f2d94b Make media play button in media browser more visible when hovering (#23760) 2025-01-16 10:53:16 +01:00
karwosts 57edb86c5c Option to sort todo lists (#23579)
Co-authored-by: Wendelin <12148533+wendevlin@users.noreply.github.com>
2025-01-16 08:40:00 +00:00
Paulus Schoutsen 173d60b913 Externalize ha-assist-chat styling (#23713) 2025-01-16 08:49:34 +01:00
Wendelin c17c1e4217 Use-consume-scene-editor (#23754)
* Add fullDevicesContext provider

* Use consume in ha-scene-editor

* Remove not needed device context and generate category
2025-01-15 17:06:59 +01:00
Paulus Schoutsen d112872eb2 Add more info dialog for conversation agent (#23682)
* Add more info dialog for conversation agent

* Fixes

* Disable speech option for LLM testing

* Address comments

* New style more info

* Also reset errors on loading pipeline
2025-01-15 10:57:49 +01:00
Wendelin e54f178b02 Fix-ha-form-float-validate (#23751)
* Use autoCaseNoun for domainName

* Fix ha-form-float validate

* Revert "Use autoCaseNoun for domainName"

This reverts commit ff6855149b.
2025-01-15 09:54:38 +00:00
Wendelin 7960da1872 Use autoCaseNoun for domainName (#23748) 2025-01-15 10:52:03 +01:00
Simon Lamon 6288154c53 Fix cast views not showing a background (#23724) 2025-01-15 10:48:05 +01:00
Yosi Levy 52d8e98cdb Overflow fix (#23652) 2025-01-15 08:52:20 +01:00
Jan-Philipp Benecke 1043db29be Add search to add helper dialog (#23728)
* Add search to add helper dialog

* Add missing scrollbar style

* Fix string

* Remove virtualizer & add alias
2025-01-15 09:13:08 +02:00
Jan-Philipp Benecke e6cc920781 Use ha-formfield in ha-form-boolean (#23737) 2025-01-14 20:11:55 +00:00
Jan-Philipp Benecke 8bc78ba793 Focus search input on dev tools statistics page when using search shortcut (#23738) 2025-01-14 21:05:01 +01:00
Wendelin e703750136 Add and fix stylistic eslint rules (#23735)
* Fix stylistic eslint rules

* Fix eslint issues
2025-01-14 21:00:14 +01:00
Wendelin 69a93ddb6e Fix background (#23736) 2025-01-14 14:41:43 +00:00
Mimi 630b48218b Make the title fonts consistent across different pages (#23688) 2025-01-14 11:30:41 +01:00
Mimi 54c78ecc4d Fix ERR_REQUIRE_ASYNC_MODULE error when executing gulp (#23687) 2025-01-14 11:29:34 +01:00
Bram Kragten 57a17b8663 Fix background on cast devices (#23731) 2025-01-14 12:28:32 +02:00
Petar Petrov d3e832c09b Fix more-info chart rendering (#23619)
* Fix more-info chart rendering

* lint fix

* remove animation-container & _chartHeight

* don't change height on resize

* handle default height in ha-chart-base

* fix chart height in energy panel

* lint

* lint
2025-01-14 11:24:52 +01:00
Wendelin abe8899f9b Update ts-eslint (#23723)
* Update ts-eslint

* Remove comments

* Remove unused ts-ignore

* Add undefined generic type instead of unknown

* Remove unused undefined type

* Fix type issues

* Use undefined instead of void for subscribed return type
2025-01-14 11:24:02 +01:00
renovate[bot] 922cd72be4 Update dependency eslint to v9.18.0 (#23730)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-01-14 10:50:55 +02:00
renovate[bot] 3f4ee97ede Update dependency @lit-labs/virtualizer to v2.0.15 (#23729)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-01-14 10:50:02 +02:00
Petar Petrov 6f9a385619 Fix navigation from stacked dialogs with the same name (#23698)
* Fix navigation from stacked dialogs

* lint fix

* Keep only 1 instance per dialog tag in the stack
2025-01-14 09:25:01 +01:00
karwosts eda0ea077c Show yaml parsing errors in hui-element-editor (#23690) 2025-01-14 08:49:09 +02:00
Jan Bouwhuis 9934ea4b4f Replace label on refactored MQTT option flow button (#23317) 2025-01-13 20:47:26 +02:00
Wendelin cc42d958ce Update node-vibrant to v4 (#23718) 2025-01-13 14:18:04 +01:00
renovate[bot] 2e1efecdf7 Update dependency ua-parser-js to v2 (#22926)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-01-13 09:25:34 +01:00
dependabot[bot] 5fead1b03a Bump actions/upload-artifact from 4.5.0 to 4.6.0 (#23714)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-13 09:19:48 +01:00
renovate[bot] 730da177ef Update dependency jsdom to v26 (#23697)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-01-13 09:18:36 +01:00
renovate[bot] bd53d1076f Update dependency @codemirror/state to v6.5.1 (#23715)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-01-13 09:12:30 +01:00
renovate[bot] e012a9e929 Update dependency glob to v11.0.1 (#23716)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-01-13 09:12:00 +01:00
Norbert Rittel 95ac8eb5ab Use consistent "More info" for To-do-lists and automations etc. (#23459) 2025-01-13 09:11:11 +01:00
libe.net 6dbc04455f Newline behavior for date-range-picker history and logbook (#23710) 2025-01-13 08:45:38 +01:00
renovate[bot] 2b8fc04fdc Update dependency @codemirror/view to v6.36.2 (#23703)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-01-13 08:54:27 +02:00
ildar170975 3baeb22423 Add outline for ha-color-picker (#23696)
Update ha-color-picker.ts
2025-01-13 08:53:44 +02:00
Simon Lamon aae4ba7341 No matching link found for developer-tools/action (#23700) 2025-01-12 15:37:30 +02:00
Simon Lamon 46d62d55a3 Fix history translation in backup (#23701) 2025-01-12 15:35:38 +02:00
Simon Lamon de027b6d93 Minor fixes for backup translations (#23691) 2025-01-12 09:24:35 +02:00
renovate[bot] f1cc02b40f Update dependency @octokit/rest to v21.1.0 (#23695)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-01-12 09:22:48 +02:00
renovate[bot] 23c6155f9b Update dependency typescript to v5.7.3 (#23692)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-01-12 09:21:05 +02:00
renovate[bot] b0e6c5dbaf Update dependency @codemirror/commands to v6.8.0 (#23689)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-01-11 20:59:37 +01:00
renovate[bot] 8cb4452126 Update dependency @octokit/plugin-retry to v7.1.3 (#23680)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-01-11 11:30:11 +01:00
renovate[bot] 0cd0f65d51 Update dependency core-js to v3.40.0 (#23681)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-01-11 11:30:06 +01:00
dependabot[bot] 3479879bd0 Bump softprops/action-gh-release from 2.1.0 to 2.2.1 (#23679)
Bumps [softprops/action-gh-release](https://github.com/softprops/action-gh-release) from 2.1.0 to 2.2.1.
- [Release notes](https://github.com/softprops/action-gh-release/releases)
- [Changelog](https://github.com/softprops/action-gh-release/blob/master/CHANGELOG.md)
- [Commits](https://github.com/softprops/action-gh-release/compare/v2.1.0...v2.2.1)

---
updated-dependencies:
- dependency-name: softprops/action-gh-release
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-10 21:19:36 +00:00
renovate[bot] 60b9fbced7 Update dependency @types/leaflet to v1.9.16 (#23675)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-01-10 18:21:37 +01:00
renovate[bot] 7496998a69 Update dependency @rsdoctor/rspack-plugin to v0.4.13 (#23672)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-01-10 18:21:32 +01:00
renovate[bot] c9db02ba2e Update vaadinWebComponents monorepo to v24.6.1 (#23673)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-01-10 18:21:26 +01:00
renovate[bot] 08737366fc Update dependency marked to v15.0.6 (#23660)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-01-10 09:20:35 +02:00
Petar Petrov 707192feac Use statistics data in History graph card to fill gaps (#23612)
* Use statistics data in History graph card to fill gaps

* add convertStatisticsToHistory utility
2025-01-10 09:19:33 +02:00
Bram Kragten 4b03caa01a Make timeout for save automation/script longer (#23665) 2025-01-09 16:39:19 -08:00
Bram Kragten 3ffbd435e0 Merge branch 'rc' 2025-01-09 21:02:43 +01:00
Bram Kragten 2e2f39adbd Bumped version to 20250109.0 2025-01-09 21:02:30 +01:00
Paul Bottein 5e7f356707 Fix preferred agent for backup download (#23659) 2025-01-09 21:02:09 +01:00
Gord b02d0e58b1 Backup text changes for the english translation (#23656)
* Update backup text in en.json

* fix missing quote en.json
2025-01-09 21:02:08 +01:00
Wendelin c01d3aee41 Fix backup summary label position (#23655) 2025-01-09 21:02:07 +01:00
Paul Bottein 6dde7d6945 Fix backup translations key issues (#23654)
Co-authored-by: Wendelin <w@pe8.at>
2025-01-09 21:02:06 +01:00
Paul Bottein 14c71f436e Remove ! from backup translation (#23648) 2025-01-09 21:02:06 +01:00
Wendelin 9acdd9f903 Voice assistants config: Filter unavailable assists (#23637)
Filter unavailable assists from num of assist devices.
2025-01-09 21:02:05 +01:00
karwosts 12b2edaa65 Retain event data when moving/resizing schedule item (#23621)
* Retain event data when moving/resizing schedule item

* update from suggestion
2025-01-09 21:02:04 +01:00
Jan-Philipp Benecke d55d388046 Set fixed width for automation save dialog (#23618) 2025-01-09 21:02:03 +01:00
Petar Petrov ec1dedcb6b Fix tooltip scrolling (#23616) 2025-01-09 21:02:02 +01:00
Wendelin d0fbba5063 Improve background-editor background-attachment alignment (#23615) 2025-01-09 21:02:01 +01:00
karwosts 344e083ac6 Restore attributes removed from ha-entity-marker in ha-map (#23603)
* Restore attributes removed from ha-entity-marker in ha-map

* Use Reflect
2025-01-09 21:02:00 +01:00
Wendelin 0ee6548650 Add backup translations (#23365)
* Add translations

* Add summary and progress translations

* Add backups and settings translations

* Add backups page translations

* Add onboarding card translations

* Add settings translations

* Add details translations

* Translate delete

* Add data picker translations

* Use local add-ons

* Add encryption key translations

* Add new, generate and upload translations

* Add translations for restore backup

* Fix ts issue

* Add missing keys

---------

Co-authored-by: Paul Bottein <paul.bottein@gmail.com>
2025-01-09 21:01:03 +01:00
Paul Bottein 166633cfa8 Fix preferred agent for backup download (#23659) 2025-01-09 17:26:42 +01:00
Wendelin 853059ac73 Add tests for common/datetime (#23658) 2025-01-09 15:47:32 +01:00
Wendelin 31ed0f7bea Fix backup summary label position (#23655) 2025-01-09 14:49:49 +01:00
Gord 57388ae429 Backup text changes for the english translation (#23656)
* Update backup text in en.json

* fix missing quote en.json
2025-01-09 11:46:58 +00:00
Paul Bottein 20203a3cef Fix backup translations key issues (#23654)
Co-authored-by: Wendelin <w@pe8.at>
2025-01-09 09:26:34 +01:00
Wendelin 9ec9c7e56b Simplify dashboard background upload (#23633) 2025-01-09 09:25:09 +01:00
Paul Bottein 788441499a Remove ! from backup translation (#23648) 2025-01-08 20:56:06 +00:00
Jan-Philipp Benecke 712817df65 Focus search input on integrations dashboard when using search shotcut (#23647)
Focus search input on integrations dashboard when using search shortcut
2025-01-08 20:29:51 +00:00
Wendelin f8264e4500 Add backup translations (#23365)
* Add translations

* Add summary and progress translations

* Add backups and settings translations

* Add backups page translations

* Add onboarding card translations

* Add settings translations

* Add details translations

* Translate delete

* Add data picker translations

* Use local add-ons

* Add encryption key translations

* Add new, generate and upload translations

* Add translations for restore backup

* Fix ts issue

* Add missing keys

---------

Co-authored-by: Paul Bottein <paul.bottein@gmail.com>
2025-01-08 21:05:28 +01:00
Norbert Rittel 50fa8dd269 Use ICU string for proper countdown via "1 minute" (#23636) 2025-01-08 17:41:02 +01:00
Petar Petrov fc20716ff2 Decrease min_columns to 8 for hui-statistics-graph-card (#23639)
Increase min_columns to 8 for hui-statistics-graph-card
2025-01-08 17:39:19 +01:00
Wendelin c6aec2db7d Voice assistants config: Filter unavailable assists (#23637)
Filter unavailable assists from num of assist devices.
2025-01-08 17:22:43 +02:00
karwosts f75f4b9733 Retain event data when moving/resizing schedule item (#23621)
* Retain event data when moving/resizing schedule item

* update from suggestion
2025-01-08 14:08:16 +00:00
karwosts b1acf9a057 Enable Statistics Graph card to integrate with Energy Dashboard (V2) (#23478)
* Simplify date subtraction

* Enable Statistics Graph card to integrate with Energy Dashboard

Adds boolean option `energy_date_selection` to Statistics Graph card. If
true, the graph will set its time range to that specified by an Energy
Date Picker card on the same dashboard, similar to the plots on the
Energy Dashboard.

* Revert UI addition

PR reviewer suggested it was too confusing, especially without
dynamically hiding the overridden days_to_show option.

* Remove boolean param energy_date_selection

and instead activate when collection_key is specified

* Revert "Remove boolean param energy_date_selection"

This reverts commit 95cebdbbe3.

* Don't assume !20903 has merged

* updates

* refresh when collection_key changes

---------

Co-authored-by: Andrew Reiter <reiterandrew@gmail.com>
2025-01-08 15:36:19 +02:00
Norbert Rittel 221b3932ed Fix typo in "unprovison" key name and string for zwave (#23634)
* Fix typo in "unprovison" key name and string

* Fix "unprovison" in zwave_js-provisioned.ts
2025-01-08 15:35:07 +02:00
libe.net c50f701160 Show logbook component in more info for non-numeric values (#22997)
* if isNumeric ignore CONTINUOUS_DOMAINS

* use isNumeric  logic from history.ts

* removed check for stateObj.attributes.unit_of_measurement

* pass numericDevicesClasses to computeShowLogBookComponent

---------

Co-authored-by: Petar Petrov <MindFreeze@users.noreply.github.com>
2025-01-08 08:17:39 +00:00
Norbert Rittel 85bebfc309 Fix two occurrences of lowercase "id" and two wrong uses of "an" (#23624)
Fix two lowercase "id" and two wrong uses of "an"
2025-01-07 21:04:05 +01:00
Wendelin 6e90afc5bd Improve background-editor background-attachment alignment (#23615) 2025-01-07 14:48:28 +01:00
Jan-Philipp Benecke e137e695ec Set fixed width for automation save dialog (#23618) 2025-01-07 14:13:19 +01:00
Petar Petrov 7133dc5688 Fix tooltip scrolling (#23616) 2025-01-07 13:44:56 +01:00
Yosi Levy 617480472e Minor RTL Fix (#23611)
Fixes
2025-01-07 11:59:25 +01:00
karwosts 6ef799be60 Restore attributes removed from ha-entity-marker in ha-map (#23603)
* Restore attributes removed from ha-entity-marker in ha-map

* Use Reflect
2025-01-07 10:10:26 +02:00
Bram Kragten 9ff1ce3c96 Merge branch 'rc' 2025-01-06 18:13:49 +01:00
Norbert Rittel f53ac94e76 Add missing ui.panel.config.labels.headers.description (#23517)
The header "Description" for the Labels list only shows up as optional in a narrow view like on mobile.

This commit adds the missing string for proper localization.
2025-01-06 18:13:32 +01:00
Norbert Rittel 6d084813d5 Add missing localizations for Voice Assistants > Expose headers (#23452)
* Add missing localizations for Voice Assistants > Expose headers

* Add localizable labels to Icon and Remove columns

* Variant with all changes on a single line

* Prettier?

* Revert

* Line length limited to 80 chars
2025-01-06 18:13:31 +01:00
Bram Kragten 926f5e3cd8 Merge branch 'rc' 2025-01-06 18:10:30 +01:00
Bram Kragten befc650f81 Bumped version to 20250106.0 2025-01-06 18:10:12 +01:00
Bram Kragten 2019b8992e Fix tooltip more info (#23605) 2025-01-06 18:09:56 +01:00
Paul Bottein 4d2e9f203f Improve error handling in backup status banner (#23604)
* Improve error handling in backup status banner

* Fix completion

* Fix loading

* Check attempt and completion date first
2025-01-06 18:09:55 +01:00
Bram Kragten 760d898de7 Remove backup toggle from supervisor addon page when update available (#23602) 2025-01-06 18:09:06 +01:00
Ville Skyttä a755af96a6 Spelling and grammar fixes (#23598) 2025-01-06 18:06:42 +01:00
Norbert Rittel 046b90ae25 Add localizable "Filtering by config entry" for Entities and Devices (#23544)
* Add localizable "Filtering by config entry" to en.json

This commit adds two strings for localizing "Filtering by config entry" to the Entities panel and, referenced from there, to the Devices panel.

* Replace "Filtering by config entry" with localizable key

* Replace "Filtering by config entry" with localizable key

* Add missing comma

* Add missing }

* Add missing }
2025-01-06 18:06:41 +01:00
Norbert Rittel a3e8bcf848 Add ICU strings for proper singular / plural in Search fields (#23530)
It does not happen that often that the lists of devices, entities, helpers etc. are filtered down to a single item.

But in that case the labels currently use incorrect plural which is more irritating in some languages but also wrong in English.

This commit fixes this by adding ICU syntax to all six strings so these work properly in English and all derived translations.

For languages that need a different wording for `zero` this also helps translators in extending the ICU syntax for that case.
2025-01-06 18:05:49 +01:00
renovate[bot] 2cf1b7b6e6 Update dependency @octokit/auth-oauth-device to v7.1.2 (#23601)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-01-06 18:03:13 +01:00
Petar Petrov 4b13dde92e Rename base sankey chart tag so it doesn't conflict with the custom card (#23600) 2025-01-06 18:00:38 +01:00
Bram Kragten ebcee7680a Fix tooltip more info (#23605) 2025-01-06 17:56:38 +01:00
Paul Bottein ffff7970f5 Improve error handling in backup status banner (#23604)
* Improve error handling in backup status banner

* Fix completion

* Fix loading

* Check attempt and completion date first
2025-01-06 17:30:37 +01:00
Bram Kragten 2a2b6d33b8 Update bug_report.yml 2025-01-06 17:15:59 +01:00
Norbert Rittel 61ed889370 Add ICU strings for proper singular / plural in Search fields (#23530)
It does not happen that often that the lists of devices, entities, helpers etc. are filtered down to a single item.

But in that case the labels currently use incorrect plural which is more irritating in some languages but also wrong in English.

This commit fixes this by adding ICU syntax to all six strings so these work properly in English and all derived translations.

For languages that need a different wording for `zero` this also helps translators in extending the ICU syntax for that case.
2025-01-06 16:06:44 +01:00
Bram Kragten 4cc95938c8 Remove backup toggle from supervisor addon page when update available (#23602) 2025-01-06 14:13:07 +01:00
Petar Petrov 63c658e5b9 Rename base sankey chart tag so it doesn't conflict with the custom card (#23600) 2025-01-06 12:42:43 +00:00
Ville Skyttä 3d1817a6b9 Spelling and grammar fixes (#23598) 2025-01-06 12:10:34 +01:00
Simon Lamon 8be2ca5392 Move python 3.12 to python 3.13 (#23585) 2025-01-06 09:31:13 +01:00
Norbert Rittel f043886273 Add localizable "Filtering by config entry" for Entities and Devices (#23544)
* Add localizable "Filtering by config entry" to en.json

This commit adds two strings for localizing "Filtering by config entry" to the Entities panel and, referenced from there, to the Devices panel.

* Replace "Filtering by config entry" with localizable key

* Replace "Filtering by config entry" with localizable key

* Add missing comma

* Add missing }

* Add missing }
2025-01-06 09:54:07 +02:00
Norbert Rittel ff75c89ed4 Add missing localizations for Voice Assistants > Expose headers (#23452)
* Add missing localizations for Voice Assistants > Expose headers

* Add localizable labels to Icon and Remove columns

* Variant with all changes on a single line

* Prettier?

* Revert

* Line length limited to 80 chars
2025-01-06 08:49:22 +02:00
Norbert Rittel a8803de6e3 Add missing ui.panel.config.labels.headers.description (#23517)
The header "Description" for the Labels list only shows up as optional in a narrow view like on mobile.

This commit adds the missing string for proper localization.
2025-01-06 08:47:37 +02:00
karwosts e9f3f71be1 Option to hide create box on todo card (#23571) 2025-01-06 08:45:53 +02:00
renovate[bot] 334c87b194 Update formatjs monorepo (#23592)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-01-05 21:02:31 +01:00
renovate[bot] 8db4a76bb9 Update dependency marked to v15.0.5 (#23591)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-01-05 20:59:42 +01:00
Bram Kragten 7aa2136c21 Merge branch 'rc' 2025-01-03 15:52:04 +01:00
Bram Kragten 47308e7b46 Add change of encryption key warning (#23570) 2025-01-03 15:51:39 +01:00
Bram Kragten 87884ac747 Add change of encryption key warning (#23570) 2025-01-03 15:48:20 +01:00
Bram Kragten ec1fc09140 Bumped version to 20250103.0 2025-01-03 15:42:39 +01:00
Bram Kragten e2ad94469a Fix restoring backup during onboarding (#23569) 2025-01-03 15:41:56 +01:00
Bram Kragten 70541ec966 Fix restore progress check logic (#23568) 2025-01-03 15:41:55 +01:00
Bram Kragten 0bf64ee7f4 Backup onboarding: Show close button when welcome is skipped (#23567) 2025-01-03 15:41:54 +01:00
Bram Kragten 4ea0c83fbe Close restore dialog if done (#23566) 2025-01-03 15:41:53 +01:00
Bram Kragten d126e02747 fix error display upload backup (#23565) 2025-01-03 15:41:53 +01:00
Bram Kragten 102a9eeb61 Fix tabs subpage height on desktop (#23564)
fix tabs subpage height on desktop
2025-01-03 15:41:52 +01:00
Bram Kragten fc3e99e794 Update and add backup my links (#23556)
* Update and add backup my links
2025-01-03 15:41:51 +01:00
Bram Kragten 70953788cc Add back zopfli compression (#23555) 2025-01-03 15:41:50 +01:00
Bram Kragten 4ffec51a5e Fix restoring backup during onboarding (#23569) 2025-01-03 15:26:50 +01:00
Bram Kragten 71e10d5d8e Fix restore progress check logic (#23568) 2025-01-03 15:02:59 +01:00
Bram Kragten cfbcb74ac2 Backup onboarding: Show close button when welcome is skipped (#23567) 2025-01-03 11:29:03 +01:00
Bram Kragten 3ff5b832bc Close restore dialog if done (#23566) 2025-01-03 11:17:40 +01:00
Bram Kragten 1faf024c5b fix error display upload backup (#23565) 2025-01-03 11:17:27 +01:00
Bram Kragten 6d48e725c7 Fix tabs subpage height on desktop (#23564)
fix tabs subpage height on desktop
2025-01-03 11:08:00 +01:00
Bram Kragten 052744e3d1 Update and add backup my links (#23556)
* Update and add backup my links
2025-01-02 16:18:34 +00:00
Bram Kragten 2945a7b701 Add back zopfli compression (#23555) 2025-01-02 16:54:35 +01:00
Bram Kragten 6c9df587e7 Bumped version to 20250102.0 2025-01-02 16:18:11 +01:00
Bram Kragten 8f58681d83 always zoom timeline charts on x axis (#23554) 2025-01-02 16:17:04 +01:00
Bram Kragten 4a16d9bd44 Add show encryption key dialog (#23552) 2025-01-02 16:17:03 +01:00
Bram Kragten fcc9da6d85 Backup with db requires config, disabled next if no data is selected (#23549) 2025-01-02 16:17:02 +01:00
Bram Kragten e03dc2c382 Move local location backup setting (#23548) 2025-01-02 16:17:01 +01:00
Bram Kragten be967940a2 Add warning when no backup location is selected (#23550)
* Add warning when no backup location is selected

* Move to bottom
2025-01-02 16:16:04 +01:00
Bram Kragten 64ad37ed6a Update change encryption key dialog (#23551) 2025-01-02 16:15:35 +01:00
Bram Kragten 01bc45c78b Backup text updates (#23547) 2025-01-02 16:13:39 +01:00
Marcin 2206644c47 Fix copy on button to clear the selected background image (#23546) 2025-01-02 16:13:38 +01:00
Bram Kragten 486038c426 Add space for the fab on datatable without tabs (#23545)
Add space for the fab on backups datatable
2025-01-02 16:13:38 +01:00
Sören Beye 711f721007 Changes to the valueText should also rescale ha-gauge text (#23536)
Changes to the valueText should also recenter ha-gauge text
2025-01-02 16:13:37 +01:00
Philipp 3b8bc242fe Fix media management delete button misalignment (#23534) 2025-01-02 16:13:36 +01:00
karwosts 7e80eed003 Display an error if saving new script times out (#23527)
* Display an error if saving new automation times out

* changes

* update

* string tweak

* Fix save failed for scripts
2025-01-02 16:13:35 +01:00
Bram Kragten a7ef498d75 Handle no cloud subscription better in backups (#23523) 2025-01-02 16:13:34 +01:00
Bram Kragten caf8fdf4c7 Add show encryption key dialog (#23552) 2025-01-02 16:12:31 +01:00
Bram Kragten f19ca78b89 always zoom timeline charts on x axis (#23554) 2025-01-02 16:11:50 +01:00
Bram Kragten 0fba0e2850 Move local location backup setting (#23548) 2025-01-02 16:04:17 +01:00
Philipp 15606a5a90 Fix media management delete button misalignment (#23534) 2025-01-02 15:03:04 +00:00
Sören Beye c7df147908 Changes to the valueText should also rescale ha-gauge text (#23536)
Changes to the valueText should also recenter ha-gauge text
2025-01-02 15:56:03 +01:00
Bram Kragten 031658eef4 Match UI with core and don't allow restore config without db and vice … (#23553)
Match UI with core and dont allow restore config without db and vice versa
2025-01-02 15:53:57 +01:00
Bram Kragten fa672ffbba Backup with db requires config, disabled next if no data is selected (#23549) 2025-01-02 15:38:11 +01:00
Bram Kragten 34bcd5e71c Backup text updates (#23547) 2025-01-02 15:35:22 +01:00
Bram Kragten 73854efa57 Update change encryption key dialog (#23551) 2025-01-02 15:13:53 +01:00
Bram Kragten a371b842da Add warning when no backup location is selected (#23550)
* Add warning when no backup location is selected

* Move to bottom
2025-01-02 15:13:42 +01:00
karwosts b439c5d213 Display an error if saving new script times out (#23527)
* Display an error if saving new automation times out

* changes

* update

* string tweak

* Fix save failed for scripts
2025-01-02 13:46:36 +01:00
Marcin 04a9c67112 Fix copy on button to clear the selected background image (#23546) 2025-01-02 13:44:34 +01:00
Bram Kragten 012bd0714c Add space for the fab on datatable without tabs (#23545)
Add space for the fab on backups datatable
2025-01-02 13:44:04 +01:00
renovate[bot] 4e10d140d9 Update Yarn to v4.6.0 (#23532)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-01-01 15:46:25 +01:00
Norbert Rittel 8df67b8eb1 Device info: Add localizable string for "Set up voice assistant" (#23533)
* Add localizable string for "Set up voice assistant" to en.json

* Replace "Set up voice assistant" with localizable string
2025-01-01 15:45:31 +01:00
Bram Kragten fb09eba831 Handle no cloud subscription better in backups (#23523) 2024-12-31 22:39:50 +01:00
Bram Kragten a5de6ff3af Bumped version to 20241231.0 2024-12-31 20:23:30 +01:00
Bram Kragten 806cc2c608 Fix automation traces (#23524) 2024-12-31 20:21:41 +01:00
Bram Kragten 48a160f057 Use last completed automatic backup time instead of last available ba… (#23522)
* Use last completed automatic backup time instead of last available backup

* Update ha-backup-overview-summary.ts

* Update src/panels/config/backup/components/overview/ha-backup-overview-summary.ts

* Update ha-config-backup-overview.ts
2024-12-31 20:21:40 +01:00
Bram Kragten c697843c34 Update ha-backup-overview-summary.ts 2024-12-31 20:21:06 +01:00
Bram Kragten 317a2f5b21 Fix password incorrect check when restoring backup (#23525) 2024-12-31 20:18:15 +01:00
karwosts 220011f15f Display an error if saving new automation times out (#23518) 2024-12-31 20:16:53 +01:00
karwosts 35faeb651b Display an error if saving new automation times out (#23518) 2024-12-31 19:49:45 +01:00
Bram Kragten 8daea5b565 Use last completed automatic backup time instead of last available ba… (#23522)
* Use last completed automatic backup time instead of last available backup

* Update ha-backup-overview-summary.ts

* Update src/panels/config/backup/components/overview/ha-backup-overview-summary.ts

* Update ha-config-backup-overview.ts
2024-12-31 18:14:16 +01:00
Bram Kragten cd69c4c361 Fix password incorrect check when restoring backup (#23525) 2024-12-31 17:48:34 +01:00
Bram Kragten eaab47a667 Fix automation traces (#23524) 2024-12-31 17:02:57 +01:00
renovate[bot] d08a28ab9e Update dependency lint-staged to v15.3.0 (#23521)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-12-31 14:36:01 +01:00
Bram Kragten e8af454705 Bumped version to 20241230.0 2024-12-30 19:44:56 +01:00
Petar Petrov 713b5c7cf7 Add default border-radius values to .disabled-bar 2024-12-30 19:42:54 +01:00
Petar Petrov 8b17286fb6 Revert "Automation/Script editor border-radius fix (#23267)"
This reverts commit e9b2a83411.
2024-12-30 19:42:40 +01:00
Bram Kragten f3705a7e1d Fix copy encryption key (#23515) 2024-12-30 19:41:01 +01:00
Bram Kragten d0123b2cce Fix overflow of backup agents (#23514) 2024-12-30 19:41:00 +01:00
Bram Kragten 884c22f92b Add fallback for devices without name (#23513) 2024-12-30 19:40:59 +01:00
Simon Lamon 700690474c Add script hide picker again (#23512) 2024-12-30 19:40:58 +01:00
Simon Lamon 4686808e53 Fix manual backup disabled with all backup locations (#23511) 2024-12-30 19:40:57 +01:00
Jan-Philipp Benecke cf1df712e4 Fix dialog header (#23507) 2024-12-30 19:40:56 +01:00
Timothy Kist c338e9cb30 Remove space at end of link from HAOS storage tip (#23492) 2024-12-30 19:40:55 +01:00
Petar Petrov 8e8fd89d56 Fix custom DNS saving (#23477) 2024-12-30 19:40:55 +01:00
Petar Petrov f1c360c550 Add getGridOptions to history and statistics graph cards (#23476) 2024-12-30 19:40:54 +01:00
Simon Lamon b429ecc376 Calendar trigger: Handle optional offset better (#23474)
Calendar empty offset
2024-12-30 19:39:50 +01:00
Petar Petrov 6d8422513a Button to reset chart zoom (#23469) 2024-12-30 19:39:49 +01:00
Petar Petrov cb0a48265a Fix helper dialog close and add failsafe for similar cases (#23468) 2024-12-30 19:39:48 +01:00
Simon Lamon c9082724a8 View background settings: Change transparancy to opacity (#23450) 2024-12-30 19:39:47 +01:00
Bram Kragten 455cd0485e Fix overflow of backup agents (#23514) 2024-12-30 17:43:05 +01:00
Bram Kragten f5ec2dcbe2 Fix copy encryption key (#23515) 2024-12-30 17:42:31 +01:00
Bram Kragten 6b039a1073 Add fallback for devices without name (#23513) 2024-12-30 17:06:26 +01:00
Simon Lamon 94c03be7ae Add script hide picker again (#23512) 2024-12-30 16:21:22 +01:00
Simon Lamon 4bf0a23513 Fix manual backup disabled with all backup locations (#23511) 2024-12-30 11:05:00 +00:00
Bram Kragten f01388473a Revert "Automation/Script editor border-radius fix (#23267)" (#23475) 2024-12-30 11:55:44 +01:00
Petar Petrov 1d0c3da294 Add getGridOptions to history and statistics graph cards (#23476) 2024-12-30 11:54:00 +01:00
Petar Petrov be849887a1 Button to reset chart zoom (#23469) 2024-12-30 11:52:52 +01:00
Petar Petrov e1a6f6f0e3 Fix helper dialog close and add failsafe for similar cases (#23468) 2024-12-30 11:51:21 +01:00
Simon Lamon d0327915db View background settings: Change transparancy to opacity (#23450) 2024-12-30 11:49:08 +01:00
Jan-Philipp Benecke 351d318c89 Fix dialog header (#23507) 2024-12-30 11:12:31 +01:00
Timothy Kist 7d1ca2acf0 Remove space at end of link from HAOS storage tip (#23492) 2024-12-29 19:36:24 +01:00
Paulus Schoutsen fea83c0873 Bumped version to 20241229.0 2024-12-29 18:20:14 +00:00
karwosts d3b4014182 Fix backups fab spacer (#23490) 2024-12-29 18:19:07 +00:00
Jan-Philipp Benecke 5c7fe04562 Fix header of config entry system options dialog (#23455)
Fix config entry system options dialog header
2024-12-29 18:19:06 +00:00
karwosts 44e26c925b Fix dialog-person-detail tracker selection (#23454) 2024-12-29 18:19:05 +00:00
Jan-Philipp Benecke 205dd3f968 Fix chip spacing in automation/script save dialog (#23451) 2024-12-29 18:19:04 +00:00
Paulus Schoutsen 86133a0696 Fix typo in backups overview (#23446) 2024-12-29 18:19:03 +00:00
Bram Kragten 2105db9104 change default of backup actions card feature to no backup (#23444) 2024-12-29 18:19:02 +00:00
karwosts 49c377b1c4 Fix backups fab spacer (#23490) 2024-12-28 17:00:28 +00:00
Norbert Rittel 3fd3c8003a History: Improve explanation of selections by including labels as 4th option (#23479)
Improve explanation of selections by including labels as 4th option

This commit adds labels as the 4th option for data sources in history and the error message when you select 'Add current view as card' in that state from the overflow menu.
2024-12-27 20:03:18 +01:00
Petar Petrov ccbb2704d1 Fix custom DNS saving (#23477) 2024-12-27 13:50:55 +00:00
Norbert Rittel 34218f08ef Replace most occurrences of "click" for touch-friendly wording (#23471)
* Replace most occurrences of "click" for touch-friendly wording

Home Assistant should avoid the term "click" or "clicking" as it can be used on (mobile) touch screen devices or with non-mechanical touch pads as well.

This commit changes most occurrences in en.json to either use "select" or "press" depending on context.

For "when you click on log out" it can be dropped completely.

* Change "select" to "press" for two more
2024-12-27 14:42:38 +01:00
Simon Lamon cf91e6a2a3 Calendar trigger: Handle optional offset better (#23474)
Calendar empty offset
2024-12-27 15:29:02 +02:00
Petar Petrov ab9759c6dd Add default border-radius values to .disabled-bar 2024-12-27 13:47:10 +01:00
Petar Petrov 95adbfcc12 Revert "Automation/Script editor border-radius fix (#23267)"
This reverts commit e9b2a83411.
2024-12-27 13:44:05 +01:00
renovate[bot] 1b9cbe434d Update dependency rspack-manifest-plugin to v5.0.3 (#23472)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-12-27 14:18:50 +02:00
Norbert Rittel 918aa562c5 Improve description of Suspend connection option (#23470)
* Improve description of Suspend connection option

This removes the use of "we" which is kind of off as no person is involved in the process.

It also moves the word "suspend" in the headline and better explains the purpose.

* add comma

---------

Co-authored-by: Petar Petrov <MindFreeze@users.noreply.github.com>
2024-12-27 11:27:06 +00:00
libe.net 2ff0cb58bc Fix Energy-Dashboard unexpected Period Calculation (#23458)
* if not whole month, better use days for the period

* fix Type undefined error

* Update src/data/energy.ts

Co-authored-by: Petar Petrov <MindFreeze@users.noreply.github.com>

---------

Co-authored-by: Petar Petrov <MindFreeze@users.noreply.github.com>
2024-12-27 11:35:00 +02:00
Norbert Rittel a94460a0c7 Replace "Show settings" with just "Settings" for automations (#23466)
For automations / scenes / scripts the menu item to open the settings dialog is currently "Show settings".

The use of "Show" is misleading here as this usually pairs with "Hide". It's also inconsistent as for all other settings in Home Assistant the menu items, buttons or tooltips don't use "show".

Also note that it's just "Information" or "Traces" for similar other items in the same menu.
2024-12-27 10:40:23 +02:00
ildar170975 60e57748f7 developer-tools-template: allow "select all" for "rendered" (#23456)
* Update developer-tools-template.ts

* Update developer-tools-template.ts

* remove extensions
2024-12-27 08:49:31 +02:00
renovate[bot] 0ecb8a6866 Update dependency @codemirror/language to v6.10.8 (#23461)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-12-27 08:41:42 +02:00
Jan-Philipp Benecke d9dfea938e Fix header of config entry system options dialog (#23455)
Fix config entry system options dialog header
2024-12-26 16:18:54 +02:00
Norbert Rittel 6fe4f94d55 Fix misleading use of "hidden" and "not shown" for disabled entities (#23449)
* Fix misleading use of "hidden" for disabled entities

Entities can be either hidden (by turning off "Visible") or disabled (by turning off "Enabled"),

The stings file uses the very misleading key "hidden_entities" for the count of disabled entities plus the words "not shown" which also pair with "hidden" instead of "disabled".

This commit fixes this by using "disabled" for both the key and in the link shown here.

* Replace "hidden_entities" with "disabled_entities"

Entities can be either hidden (by turning off "Visible") or disabled (by turning off "Enabled"),

The strings file uses the very misleading key "hidden_entities" for the count of disabled entities plus the words "not shown" which also pair with "hidden" instead of "disabled".

This commit fixes this by using "disabled" for the key name as well.

* Re-add accidentally deleted comma
2024-12-26 16:16:50 +02:00
Norbert Rittel 01bec32fd6 Improve explanation of passive zones (#23443)
Currently the explanation for passive zones says that they "are not used as location for device trackers" which is misleading and does not fit the second sentence that says: "This is useful if you just want to use it for automations.

This commit clarifies that by changing to "not shown as" and fixes the plural / singular mismatch between the two sentences.
2024-12-26 16:14:53 +02:00
karwosts 5453d6f7f5 Fix dialog-person-detail tracker selection (#23454) 2024-12-25 18:26:57 +00:00
Jan-Philipp Benecke a0799a409b Fix chip spacing in automation/script save dialog (#23451) 2024-12-25 11:56:26 +01:00
Bram Kragten 704e7f279f change default of backup actions card feature to no backup (#23444) 2024-12-25 01:57:05 +01:00
Norbert Rittel 1daaf50773 Add missing localization for "Deselect all" button in (#23448)
* Add missing localization for "Deselect all" button to en.json

* Add code for localizing "Deselect all" to dialog-media-manage.ts
2024-12-25 01:56:26 +01:00
Paulus Schoutsen 54eb7d169c Fix typo in backups overview (#23446) 2024-12-24 19:39:33 +01:00
Bram Kragten 33b410dea0 Update ha-backup-overview-summary.ts 2024-12-24 17:31:02 +01:00
Bram Kragten c05054e4ff Merge branch 'rc' 2024-12-24 16:24:59 +01:00
Bram Kragten f416b1b5da Merge branch 'dev' into rc 2024-12-24 16:23:46 +01:00
Bram Kragten 6a345d86a6 Bumped version to 20241224.0 2024-12-24 16:23:30 +01:00
Bram Kragten a04e9b68bd Fixes for device quick bar (#23441)
Fixes #23432 and Fixes #23431
2024-12-24 17:22:06 +02:00
Bram Kragten f7dbd38c2e Sort addons in backup by name (#23442)
* Sort addons in backup by name

* Update ha-backup-addons-picker.ts
2024-12-24 14:44:27 +00:00
Bram Kragten 7150016375 fix missing credentials step (#23440) 2024-12-24 15:26:43 +01:00
Bram Kragten c3507abd9c Guard for cloud integration not loaded (#23439) 2024-12-24 15:17:40 +01:00
Bram Kragten fc8a8b28c2 await copy clipboard (#23438) 2024-12-24 15:15:17 +01:00
Bram Kragten 637fe37ef4 Change emergency kit format (#23428)
* Change emergency kit format

* Update src/panels/config/backup/ha-config-backup-settings.ts

* review
2024-12-24 13:55:38 +00:00
Bram Kragten 657bfc82ca Backup text updates (#23437)
* Backup text updates

* Update ha-config-backup-backups.ts
2024-12-24 13:50:03 +00:00
Bram Kragten 44423812f4 Set defaults for background settings, restore old behavior (#23436)
Fixes https://github.com/home-assistant/frontend/issues/23421
2024-12-24 14:48:28 +01:00
Bram Kragten a6a76155e5 Fix chart tooltips (#23435) 2024-12-24 08:47:40 -05:00
Bram Kragten 8c18d816b6 Fix banner when first backup was unsuccessful (#23430)
* Fix banner when first backup was unsuccesful

* Update ha-backup-config-agents.ts

* remove fix widths
2024-12-24 08:45:43 -05:00
Bram Kragten 361caafab9 fix saving new automation/script (#23433) 2024-12-24 08:44:23 -05:00
Jan-Philipp Benecke 94f679e387 Add area to automation/script save dialog (#23416)
Add area chip to automation/script save dialog
2024-12-24 11:21:03 +01:00
Bram Kragten 85bd6432a9 Update hui-generic-entity-row.ts 2024-12-24 10:19:38 +01:00
Norbert Rittel 00c1dfa1d2 Add missing localizations to ha-script-trace.ts (#23418)
Co-authored-by: Bram Kragten <mail@bramkragten.nl>
2024-12-24 09:55:09 +01:00
Norbert Rittel fb72e1fb9c Wrong lowercase and adjacent space in dialog-media-manage.ts (#23372) 2024-12-24 09:54:26 +01:00
Yosi Levy 152d2d0bdf Rtl fixes (#23425) 2024-12-24 09:42:26 +01:00
renovate[bot] e06aa52a21 Update dependency ua-parser-js to v1.0.40 (#23427)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-12-24 10:17:47 +02:00
renovate[bot] 49aa935490 Update dependency @braintree/sanitize-url to v7.1.1 (#23417)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-12-24 10:07:34 +02:00
Norbert Rittel cead1e355d Fix missing localization of "Message" field in Cloud > Try text-to-speech dialog (#23422)
* Add missing "Message" string for cloud tts dialog to en.json

The field label for the Message field in the Cloud > Try text-to-speech dialog is missing localization.

This commit adds the necessary localizable string.

* Update dialog-cloud-tts-try.ts to include localizable string
2024-12-24 10:05:31 +02:00
Norbert Rittel edc99b5d6c Lovelace - Resources: Add localizable string for "Delete" column header (#23404) 2024-12-23 21:39:10 +01:00
Simon Lamon b38963b214 Fix allow-svg attribute (#23415) 2024-12-23 21:37:24 +01:00
Charles Garwood 0d99531855 Grammar fix for assign category dialog (#23412) 2024-12-23 21:36:41 +01:00
Simon Lamon 9cde7637ca Weekly backup on tuesday: spelling mistake (#23410) 2024-12-23 21:36:17 +01:00
Paul Bottein edc08994b3 Format scheduled backup time using locale settings (#23407) 2024-12-23 17:40:12 +01:00
Paul Bottein fc0907ef72 Fix skeleton in dark mode (#23406)
* Fix skeleton in dark mode

* Fix
2024-12-23 15:23:44 +00:00
Bram Kragten bdb28246fc Update ha-config-backup-overview.ts 2024-12-23 16:16:22 +01:00
Bram Kragten 0582798cde Fix backup summary content not centered (#23405) 2024-12-23 15:07:07 +00:00
Bram Kragten e7d9032cc4 20241223.1 (#23402) 2024-12-23 15:38:28 +01:00
Simon Lamon 331385794c View background settings: Change radio buttons to dropdowns (#23403) 2024-12-23 15:30:46 +01:00
Simon Lamon 8e71bd7e82 View background settings: Change radio buttons to dropdowns (#23403) 2024-12-23 15:30:17 +01:00
Bram Kragten 664cc9b33d Bumped version to 20241223.1 2024-12-23 15:26:30 +01:00
Bram Kragten 6757cda7f0 Text changes backups (#23397)
* Text changes backups

* Update dialog-change-backup-encryption-key.ts

* Update ha-backup-config-agents.ts

* Update header margin

---------

Co-authored-by: Paul Bottein <paul.bottein@gmail.com>
2024-12-23 14:26:18 +00:00
Bram Kragten 97e6313890 Min height list items backups detail smaller (#23398) 2024-12-23 15:08:00 +01:00
Norbert Rittel 3cfba7b960 Replace "State" with "Status" for consistency with Entity picker (#23399)
The Filters pane for entities contains a "Status" section which gives several options to narrow down the list of entities, including "Disabled".

For devices, however, the matching selector is currently labelled "State", although it has "Disabled" as the only choice.

This conflicts with the device / entity state definition in HA and is inconsistent, getting worse in translations.
2024-12-23 15:06:50 +01:00
Paul Bottein 5fb384ad31 Backup status banner improvement (#23400)
* Improve overdue backups and don't consider backup with failed agents as success

* Improve margin and loader

* Improve margin

* Show agent name if only one off site location is configured
2024-12-23 15:06:36 +01:00
Bram Kragten 76cb9ce807 Change sidebar header color (#23401) 2024-12-23 14:04:19 +00:00
Norbert Rittel 0e61596f5c Replace "Add" button with "Create" in Create floor / area dialogs (#23395) 2024-12-23 14:25:14 +01:00
Bram Kragten 061b6af812 Fix search bar styling (#23396) 2024-12-23 14:23:51 +01:00
Bram Kragten fd95ab5518 Revert "Bump softprops/action-gh-release from 2.1.0 to 2.2.0" (#23393)
Revert "Bump softprops/action-gh-release from 2.1.0 to 2.2.0 (#23300)"

This reverts commit 65458538a7.
2024-12-23 11:59:05 +00:00
Bram Kragten a7cacbbbe6 20241223.0 (#23392) 2024-12-23 12:23:14 +01:00
Bram Kragten 5a0225b86a fix merge 2024-12-23 12:07:28 +01:00
Bram Kragten 8b79fc5848 Merge branch 'master' into dev 2024-12-23 12:00:53 +01:00
Bram Kragten 5513da51a8 Bumped version to 20241223.0 2024-12-23 11:58:57 +01:00
Bram Kragten 56f9165323 Move order of restore around (#23391) 2024-12-23 10:56:54 +00:00
Paul Bottein 6afcd4d770 Add icon and description for network mount locations (#23390)
* Use custom icon and name for network storage

* Add note to local backup location dialog
2024-12-23 11:53:31 +01:00
Bram Kragten 52e1f9315e Fix selection mode backups on mobile (#23389)
* Fix selection mode backups on mobile

* Update ha-config-backup-details.ts

* unselect when deleting
2024-12-23 11:45:23 +01:00
Steve Repsher a00f645921 Revert "Add node_modules cache in ci (#22826)" (#23370)
This reverts commit 4655929fed.
2024-12-23 11:27:04 +01:00
Bram Kragten faf3bb2644 Swap setup python and verfify version (#23388) 2024-12-23 10:09:38 +01:00
Bram Kragten 31d98ec935 Always show HA toggle in backup data settings (#23387) 2024-12-23 09:37:50 +01:00
Mark Steward 7d0a269f1b Use null instead of default, to avoid stomping on netmask (#23382) 2024-12-23 09:22:11 +01:00
karwosts 147098f0fd ha-form-multi_select accessibility improvements (#21023) 2024-12-23 09:21:27 +01:00
dependabot[bot] d4cbfd9583 Bump actions/upload-artifact from 4.4.3 to 4.5.0 (#23386) 2024-12-23 08:33:48 +01:00
Norbert Rittel a35ba38a2d Make quotation marks localizable in Add badge dialog (#23383)
* Add quotation and question marks to en.json for localization

Currently the quotation marks are hard-coded. This commit puts them into the strings file and adds the missing question mark at the end.

* Remove hard-coded quotation marks from hui-dialog-create-badge.ts
2024-12-23 06:38:18 +01:00
Dave T 8fa36c8226 Add stream preview element to generic camera (#21463)
Co-authored-by: Bram Kragten <mail@bramkragten.nl>
2024-12-22 17:14:29 +00:00
karwosts 5ccc3365fe Show all disabled helpers in config/helpers (#23377) 2024-12-22 18:04:16 +01:00
renovate[bot] dcf97d4667 Update dependency @codemirror/view to v6.36.1 (#23381)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-12-22 17:25:32 +01:00
Petar Petrov 4b7acbb766 Energy Sankey chart card (#23002)
* WIP: sankey chart

* basic sankey chart

* dynamic size of last section

* basic energy-sankey card

* add floors, areas & passthrough

* order by floor level, add colors & exess energy nodes

* tweak nodes

* add tooltips and better layout and responsiveness

* WIP vertical layout

* fix height when not in sections

* handle labels in vertical mode

* remove from energy dashboard for now

* lint fix

* PR comments

* use ResizeController instead of ResizeObserver

* look up device area

* code clarity improvement
2024-12-22 17:25:13 +01:00
Simon Lamon 7900eb4054 View background settings (#23133)
Co-authored-by: karwosts <karwosts@gmail.com>
Co-authored-by: Bram Kragten <mail@bramkragten.nl>
2024-12-22 16:19:54 +00:00
Bram Kragten 53caef8f92 Update developer-tools-statistics.ts 2024-12-22 17:06:46 +01:00
Jan-Philipp Benecke 14bebc76b0 Add toggle switch for exposing of new entities to Assist (#23127) 2024-12-22 16:06:13 +00:00
Norbert Rittel 8b6382448f Use "limit" instead of "mode" for Numeric state trigger and condition (#23360) 2024-12-22 17:00:48 +01:00
Jan-Philipp Benecke 5cd6f22e99 Add category and labels to automation/script save and rename dialog (#23240)
Co-authored-by: Bram Kragten <mail@bramkragten.nl>
2024-12-22 16:59:04 +01:00
Wendelin 523c38a83e Add tests for common/config (#23349)
* Add tests for common/config

* Revert version dev hook
2024-12-22 16:05:17 +01:00
Wendelin 0a28bbdd72 Improve picture select crop error handling (#23352)
* Improve crop editor error handling

* Add tests for data/image_upload

* Fix tests imports
2024-12-22 15:45:37 +01:00
renovate[bot] e58bef7795 Update dependency globals to v15.14.0 (#23375)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-12-21 15:36:45 +00:00
Bram Kragten d403532fc1 Fix link on all backups button (#23374) 2024-12-21 16:35:00 +01:00
karwosts 4de8b562bd Ability to show map icons for geolocation sources (#23247) 2024-12-21 16:29:53 +01:00
renovate[bot] 31e85836f0 Update CodeMirror (#23369)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-12-21 16:29:06 +01:00
Franck Nijhof e1359781a5 Add state completion support for Assist Satellite entities (#23371) 2024-12-21 10:17:59 +01:00
Paul Bottein 379bc3a4e3 Add links to backup overview settings (#23368) 2024-12-20 21:12:05 +01:00
Bram Kragten b3b0006ba3 Filter backups by type (#23366)
* filter backups by type

* Add filter pane

* Make sure we show all when you click show all
2024-12-20 20:52:11 +01:00
Bram Kragten cd44b33201 Merge branch 'rc' 2024-12-20 18:50:55 +01:00
Paul Bottein 33df805168 Revert "Add overview settings link to backup settings sections"
This reverts commit fad435ea10.
2024-12-20 18:21:24 +01:00
Paul Bottein fad435ea10 Add overview settings link to backup settings sections 2024-12-20 18:20:20 +01:00
Bram Kragten b35f9944ea Change backup restore flow (#23354)
* Change backup restore flow

* adapt and finish

* Update dialog-restore-backup.ts
2024-12-20 16:39:44 +01:00
Paul Bottein dc799bf691 Don't allow user to choose cloud if ha settings is not set (#23364) 2024-12-20 16:39:35 +01:00
Simon Lamon 1f7929bb3d Rspack v1.1.8 (#23363) 2024-12-20 16:20:25 +01:00
Paul Bottein fb228dc918 Multiple backup adjustments (#23361)
* Always show welcome screen during onboarding

* Fix content overflow in dialog

* Rename copies to backups, drop 7 days

* Remove including new and learn more button

* Some other fixes

* Allow changing default local location from new backup page

* Dont show addon version in settings and onboarding

* Add margin for ios

* Display old encryption key before change

* Refactor descriptipn
2024-12-20 15:52:55 +01:00
Wendelin c66f5e2d8a Fix spacing of markdown textfield helpers (#23359) 2024-12-20 15:41:09 +01:00
ildar170975 d71b29d089 border-radius fixes for state-badge (#23212) 2024-12-20 15:06:03 +01:00
renovate[bot] 6b230b6142 Lock file maintenance (#23337)
* Lock file maintenance

* Resolve codemirror in current version

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Simon Lamon <32477463+silamon@users.noreply.github.com>
2024-12-20 13:16:23 +00:00
Paul Bottein c532a9023a Revert remove hass debug connection in dev (#23356) 2024-12-20 14:05:33 +01:00
Paul Bottein ecc704e6ac Fix duplicate agents ids during onboarding (#23357)
Fix duplicate agents ids during onboardind
2024-12-20 13:04:32 +00:00
Bram Kragten 5470c8f250 Bumped version to 20241127.9 2024-12-20 13:54:18 +01:00
Bram Kragten d21f249aac Only use pipelines that have the default coversation agent (#23320)
only use pipelines that have the default coversation agent
2024-12-20 13:53:31 +01:00
renovate[bot] 907299b139 Update dependency @codemirror/language to v6.10.7 (#23350)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-12-20 13:02:03 +01:00
Wendelin 37aa2bd869 Improve onboarding backup restore (#23340)
* Improve onboarding backup restore

* Fix onboarding backup restore

* Fix restoring value in onboarding-restore-backup
2024-12-20 12:13:16 +01:00
Petar Petrov f1f53b9f24 Set default netmask when parsing an address (#23348) 2024-12-20 11:28:12 +01:00
Paul Bottein 49d9c7f392 Update icons for backups (#23351) 2024-12-20 11:27:49 +01:00
karwosts 65860a3142 Allow selecting previously uploaded image for picture upload (#23072) 2024-12-20 10:55:24 +01:00
ildar170975 3b52d3d302 Fix visibility for shown entities on device card (2) (#23198) 2024-12-20 10:44:57 +01:00
Steve Repsher 2fe6203eae Remove leftover packages from Rollup builds (#23344) 2024-12-19 15:16:08 -05:00
Paul Bottein 92b02e39c9 Add overview summary for backups (#23343) 2024-12-19 19:54:50 +01:00
renovate[bot] b693fd1edc Update dependency @rsdoctor/rspack-plugin to v0.4.12 (#23341)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-12-19 17:21:23 +02:00
libe.net b84e00b312 Unit Test for shiftDateRange (#23324)
Unit Test for Pull 23228

Co-authored-by: Wendelin <12148533+wendevlin@users.noreply.github.com>
2024-12-19 15:42:31 +01:00
karwosts 973fd51639 Sortable energy individual devices (#23330)
* Sortable energy individual devices

* change key fn
2024-12-19 15:51:56 +02:00
Simon Lamon e0494ccb57 Introduce a target picker for the logbook card (#23007)
* target picker logbookcard wip

* migration

* fixes

* change property

* Update src/panels/lovelace/cards/hui-logbook-card.ts

* prettier
2024-12-19 14:41:32 +01:00
Paul Bottein 95559cbc2a Setup backup overview page (#23331)
* Add overview page

* Remove configure button

* Reorganize files

* Add backups summary

* Add settings overview

* Fixes

* Update wording

* Setup onboarding before creating a backup
2024-12-19 13:37:05 +00:00
Paul Bottein 3da13b823a Only show local addons folder settings if at least one addon is local (#23333)
Only show local addons folder settings if an addon is local
2024-12-19 14:29:35 +01:00
Paul Bottein c022871ead Add none option for backup addons (#23335) 2024-12-19 11:26:17 +01:00
Mimi c4fcbf0613 Optimize the style of hui-energy-period-selector (#23332) 2024-12-19 07:29:32 +00:00
renovate[bot] 79921745a8 Update dependency magic-string to v0.30.17 (#23339)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-12-19 09:09:24 +02:00
Paul Bottein 40a4255045 Rename backup strategy (#23329)
* Rename backup strategy

* Feedback
2024-12-18 18:02:42 +01:00
Petar Petrov 2d902a0688 Fix integrations dialog (#23328)
* Fix integrations dialog

* tweak comments
2024-12-18 15:53:30 +01:00
Petar Petrov 8a46ef6168 Improve chart zoom (#23326) 2024-12-18 15:50:34 +01:00
karwosts ba3d37b550 Fix costs in energy csv download (#23322) 2024-12-18 08:46:55 +02:00
renovate[bot] 88d0247217 Update dependency marked to v15.0.4 (#23323)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-12-18 08:33:06 +02:00
Krisjanis Lejejs 1c076d22a6 Add MFA login flow support for cloud component (#23188)
* Add MFA login flow support for cloud component

* Update MFA login in voice assistant setup flow

* Sync errors with core

* Add translations to the TOTP dialog
2024-12-17 20:55:07 +01:00
Julian 0ecdae2551 Fix inconsistency in Thermostat and Humidifier card names (#22416) 2024-12-17 19:15:35 +01:00
libe.net 6f8ba6afac Date-range-picker Design to use Prev and Next Buttons in History and Logbook on mobiles (#23228)
* date-range-picker prev and next design

* correct width and margins

* logbook width correction

* Update src/components/ha-date-range-picker.ts

Co-authored-by: Wendelin <12148533+wendevlin@users.noreply.github.com>

* Update src/components/ha-date-range-picker.ts

Co-authored-by: Wendelin <12148533+wendevlin@users.noreply.github.com>

* Update src/components/ha-date-range-picker.ts

Co-authored-by: Wendelin <12148533+wendevlin@users.noreply.github.com>

* changes from comments

* share date-range logic for energy and history / logbook

* switch to energy-dashboard timespan-function

* changed shiftDateRange to differenceInMilliseconds

* used gap instead margin-right

---------

Co-authored-by: Wendelin <12148533+wendevlin@users.noreply.github.com>
2024-12-17 17:40:32 +01:00
Bram Kragten ad1c32a880 Only use pipelines that have the default coversation agent (#23320)
only use pipelines that have the default coversation agent
2024-12-17 17:50:29 +02:00
Petar Petrov 48819a59e7 Fix new automation dialog in Firefox (#23319) 2024-12-17 15:00:00 +01:00
Bram Kragten 2718801c69 Update light-color-rgb-picker.ts 2024-12-17 14:47:38 +01:00
renovate[bot] 2b43f5f8c8 Update dependency eslint to v9.17.0 (#23316)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-12-17 09:18:31 +02:00
Paul Bottein 0ef23cd712 Remove backup toggle on the update more info dialog (#23314) 2024-12-16 15:47:19 +00:00
Petar Petrov 7370d1e0dd Fix touch control of chart zoom (#23302)
* Fix touch control of chart zoom

* fix
2024-12-16 16:03:32 +01:00
karwosts da7d3e118c Allow for deleting image_upload images in media panel (#23086) 2024-12-16 16:36:50 +02:00
renovate[bot] d4188d9aee Update dependency terser-webpack-plugin to v5.3.11 (#23313)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-12-16 16:27:27 +02:00
Marcin 8722157623 Focus on card search input when adding new card (#23309)
* Focus on card search input when adding new card

* Update src/panels/lovelace/editor/card-editor/hui-card-picker.ts

Co-authored-by: Simon Lamon <32477463+silamon@users.noreply.github.com>

* update and fix

* not on mobile

---------

Co-authored-by: Petar Petrov <MindFreeze@users.noreply.github.com>
Co-authored-by: Simon Lamon <32477463+silamon@users.noreply.github.com>
Co-authored-by: Bram Kragten <mail@bramkragten.nl>
2024-12-16 15:54:29 +02:00
Petar Petrov 6e2f0d8c9b Enable chart animations (#23311) 2024-12-16 14:37:31 +01:00
Paul Bottein 08459394a6 Add backup sync status in detail page (#23312) 2024-12-16 14:36:59 +01:00
Jan-Philipp Benecke ee292f900f For consistency align close button to the left in ha-dialog (#23284) 2024-12-16 15:35:06 +02:00
Steve Repsher 3aaf08ac03 Defer loading of fallback domain icons (#23298) 2024-12-16 15:22:53 +02:00
Paul Bottein d31f4a5f1d Improve backup onboarding (#23282)
* Sort agents, enable cloud and local by default

* Enable cloud by default

* Improve wording

* Hide fab if onboarding is not complete

* Add recommended settings

* Use one step encryption key during onboarding

* Add description for cloud

* Update change encryption key dialog
2024-12-16 14:08:51 +01:00
Bram Kragten 875ab0cb97 Cloud login: Wait with navigate until confirm action is done (#23310)
Wait with navigate until confirm action is done
2024-12-16 13:08:30 +00:00
renovate[bot] 678af025ac Update vaadinWebComponents monorepo to v24.6.0 (#23306)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-12-16 13:41:31 +01:00
renovate[bot] 1fd38d085f Update dependency @lokalise/node-api to v13 (#23299)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-12-16 13:39:35 +01:00
Paul Bottein ec324ab09f Disable backup by default for update more info (#23307) 2024-12-16 12:24:09 +01:00
Paul Bottein efcd57934a Improve backup data-table on mobile (#23283)
* Improve backup data-table on mobile

* Group by default

* Fix top-header slot on mobile
2024-12-16 12:23:17 +01:00
Norbert Rittel 1efe61445f Fix typo "dasboard" and missing hyphen in en.json (#23303)
Add the missing "h" to "Choose a dasboard"
Add the missing hyphen to "auto generated"
2024-12-16 09:44:17 +01:00
Wendelin 6db9bf800a Fix ha-button-menu menuCorner attribute (#23301)
Fix menuCorner attribute
2024-12-16 09:47:36 +02:00
dependabot[bot] 65458538a7 Bump softprops/action-gh-release from 2.1.0 to 2.2.0 (#23300)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-16 08:04:32 +01:00
Norbert Rittel 9ddeb3734f Fix grammar mismatch in OAuth description (#23297) 2024-12-15 21:45:40 +01:00
Steve Repsher c89fc188a5 Remove fixed device class icons (#23291) 2024-12-14 16:15:10 +01:00
Norbert Rittel d366471058 Make Device Condition description consistent with Trigger and Action (#23293)
Make device Condition description consistent with Trigger and Action

The first item in the lists of the triggers, conditions and actions is always the device type:

- When something happens to a device. Great way to start.
- Set of conditions provided by your device. Great way to start
- Do something on a device. Great way to start.

The condition does use "your" instead of "a" which is inconsistent and sounds irritating. As there are usually many different devices in a setup the use of "a" is much preferred as the actual device is picked up at the next step.

This commit makes the condition string consistent by replacing "your" with "a".
2024-12-14 16:14:24 +01:00
renovate[bot] 9951c162a1 Update dependency eslint-import-resolver-webpack to v0.13.10 (#23292)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-12-14 09:23:38 +01:00
renovate[bot] 0c7d689b5a Update dependency lint-staged to v15.2.11 (#23289)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-12-13 20:23:43 +01:00
renovate[bot] 655ce05efe Update dependency magic-string to v0.30.15 (#23287)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-12-13 08:44:33 +01:00
renovate[bot] 2a6e562d37 Update rspack monorepo to v1.1.6 (#23288)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-12-13 08:44:10 +01:00
renovate[bot] 98d1954812 Update formatjs monorepo (#23269)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-12-12 17:49:02 +01:00
renovate[bot] 72a2f54598 Update dependency @codemirror/view to v6.35.3 (#23280)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-12-12 17:47:25 +01:00
Bram Kragten 9364ea060a Merge branch 'rc' 2024-12-12 17:44:28 +01:00
Bram Kragten f8dfdcb090 Bumped version to 20241127.8 2024-12-12 17:43:43 +01:00
Paulus Schoutsen 3d78a7821a Improve piper audio generation (#23281)
* Improve piper audio generation

* update logic

---------

Co-authored-by: Bram Kragten <mail@bramkragten.nl>
2024-12-12 17:43:26 +01:00
Bram Kragten e923d610ce Add missing translations to voice wizard (#23278) 2024-12-12 17:43:25 +01:00
Paul Bottein 8b25fe88a4 Use list item for integration quality scale (#23236) 2024-12-12 17:43:24 +01:00
Wendelin 3768be55ff Fix landingpage, supervisor release permission (#23223) 2024-12-12 17:43:23 +01:00
Paulus Schoutsen 47cf17ab50 Improve piper audio generation (#23281)
* Improve piper audio generation

* update logic

---------

Co-authored-by: Bram Kragten <mail@bramkragten.nl>
2024-12-12 17:41:11 +01:00
Wendelin d2ec24f32a Automation/Script editor add settings,category overflow actions (#23272)
* Add settings, category actions

* Add script category and settings actions

* Correct overflow actions order

* Use consume instead of subscribe
2024-12-12 17:40:52 +01:00
Bram Kragten 69ed736080 Add missing translations to voice wizard (#23278) 2024-12-12 17:38:53 +01:00
Wendelin 7d3c77008d Mobile styles for backup summary (#23276)
* Add mobile backup summary styles

* revert padding
2024-12-12 17:02:51 +01:00
Wendelin 27dbabc6bf Fix create custom backup twice on dialog-new-backup (#23279) 2024-12-12 15:55:07 +00:00
Wendelin 27ce395d68 Common-color-tests (#23258) 2024-12-12 14:44:17 +01:00
Steve Repsher 145a536156 Remove unused polyfills and adjust support for Intl.getCanonicalLocales (#23264) 2024-12-12 15:07:50 +02:00
ildar170975 e9b2a83411 Automation/Script editor border-radius fix (#23267)
* Update ha-automation-action-row.ts

* Update ha-automation-condition-row.ts

* Update ha-automation-trigger-row.ts

* Update ha-script-field-row.ts

* Update ha-script-field-row.ts

* Update ha-automation-condition-row.ts

* Update ha-automation-trigger-row.ts

* Update ha-automation-action-row.ts

* Update ha-automation-trigger-row.ts

* Update ha-automation-condition-row.ts

* Update ha-automation-action-row.ts

* Update ha-script-field-row.ts
2024-12-12 15:03:19 +02:00
Petar Petrov 784b7e4d04 Add zoom & pan to charts (#23183)
Co-authored-by: Bram Kragten <mail@bramkragten.nl>
2024-12-12 13:40:47 +01:00
renovate[bot] f4bf999ae2 Update dependency @codemirror/state to v6.5.0 (#23277)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-12-12 12:37:43 +00:00
Petar Petrov 9c04f57e35 Fix getting custom config parameters for Z-Wave JS (#23244) 2024-12-12 13:37:22 +01:00
Petar Petrov f0ddc408e8 Remove custom TimeLineScale for chartjs (#23270) 2024-12-12 12:43:22 +01:00
Petar Petrov df4d5a4567 Simplify dialog history logic (#23271) 2024-12-12 12:41:57 +01:00
Bram Kragten 0a413cba03 Fix more dialogs (#23273)
* Remove unneeded close dialog calls

* more
2024-12-12 09:00:38 +00:00
Bram Kragten 7e2217b542 Fix navigate timing when dialogs where opened (#23261)
* Fix navigate timing when dialogs where opened

* Revert navigate changes
2024-12-12 08:35:34 +00:00
Petar Petrov 93947d76a2 Fix navigate with replace when there are open dialogs (#23268) 2024-12-12 09:25:33 +01:00
Petar Petrov 18cce45b88 Fix for auto closing dialogs on navigate (#23262) 2024-12-11 22:47:23 +01:00
Paul Bottein 86f1af6682 Merge feature branch with backup changes to dev (#23239)
* Add dialog to upload a backup file (#22405)

* Add dialog to upload a backup file

* Prosess feedback

* Remoe unused definition

* Early pushout of changes to the backup panel (#22321)

* Eary pushout of changes to the backup panel

* Add location icons

* Path is optional

* Set backupSlug from route

* No need for subscription mixin

* update

* Reorder

* init details

* Fix import

* Improve backup screen and navigation (#22827)

* Add location page

* Start dashboard

* Move list to dashboard

* Add mocked config page

* Fix hardcoded boolean

* Add summary card

* Use new format for BackupAgent

* Use new API

* Rename to ha-backup-summary-card

* Use new api

* Fix backup agents

* Rename backup slug to backup id (#22876)

* Add delete backup action to datatable (#22867)

* Create generate backup dialog (#22866)

Co-authored-by: Bram Kragten <mail@bramkragten.nl>

* Add backup details page (#22884)

* Add new backup dialog to choose between automatic and manual (#22895)

Co-authored-by: Simon Lamon <32477463+silamon@users.noreply.github.com>

* Improve download backup (#22905)

* Rename remove to delete in backup websocket type (#22902)

* Use bytes for backup size (#22909)

* Use default backup instead of automatic backup (#22915)

* Update generate backup api (#22943)

Use new backup api for generate backup

* Improve details page for new backup (#22946)

* Add content of backup in detail page

* Add restore button

* Add note

* Use disabled

* Fix backup generate

* Use options to WS command backup/restore (#22950)

* Add addons picker in generate backup dialog (#22951)

* Add addons picker in generate backup dialog

* Change condition

* Fix label

* Fix local addons

* Review

* Add local addon in addon mode is all

* Fix local addon folder

* Use addon picker inside data picker

* Fetch addons info in detail page

* Fetch addon inside component

* Rename agents picker

* Restrict generate backup content for core backup (#22958)

* Fix addon mode all

* Use event to check if a backup is in progress (#22960)

* Use event to check if a backup is in progress

* Update src/panels/config/backup/ha-config-backup-dashboard.ts

Co-authored-by: Bram Kragten <mail@bramkragten.nl>

---------

Co-authored-by: Bram Kragten <mail@bramkragten.nl>

* Force enable home assistant settings when history is selected in backup (#22961)

* Backup default config (#22954)

* WIP default config

* Add addons

* save data

* add icon

* basics of change encryption key

* Update dialog-change-backup-password.ts

* use default config when manually triggering default backup

* limit to hassio

* enforce encryption key, manual use manual one

* Update ha-config-backup-dashboard.ts

* Add suggested password and copy buttons

* Add download emergency kit button

* review

* fix

* Update ha-config-backup-default-config.ts

* Update ha-config-backup-default-config.ts

* Update default backup settings (#23109)

* Only display addons and folder for hassio (#23118)

* Use new backup dashboard page for hassio backup (#23161)

* Add support for copies and days for backup retention (#23128)

* Add upload dialog for backup (#23139)

* Improve generate backup dialog (#23167)

* Propose to use encryption key if available when restoring a backup (#23164)

Co-authored-by: Bram Kragten <mail@bramkragten.nl>

* Add encryption key onboarding (#23180)

* Fix attributes broken by the warning fixes (#23182)

* Don't allow any more eslint warnings (#23181)

* Use dedicated endpoint to generate backup with default settings (#23224)

* Add onboarding dialog for backups (#23225)

* Add onboarding flow for backups

* Add welcome screen

* Add progress and status for backup dashboard (#23222)

* Handle backup state

* Add summary card

* Use difference in days

* Rename local backups and show icon (#23238)

* Improve backup onboarding (#23241)

* Do not navigate to config page after onboarding

* Use casita image and center text

* fix lint

* Rename stored and default to strategy backup

* Update

* Fix icon and add type in datatable

* Use strategy in more places

* Fix list item overflow

---------

Co-authored-by: Joakim Sørensen <ludeeus@ludeeus.dev>
Co-authored-by: Bram Kragten <mail@bramkragten.nl>
Co-authored-by: Simon Lamon <32477463+silamon@users.noreply.github.com>
Co-authored-by: Petar Petrov <MindFreeze@users.noreply.github.com>
2024-12-11 15:52:37 -05:00
Bram Kragten c8f58c7bc9 Prevent leaving the editor if there are unsaved changes (#23170)
* Prevent leaving the editor if there are unsaved changes

* Process code review

* use first composePath target

* fix function calls

* Use query instead

* Remove id on sidebar

* suggestions

---------

Co-authored-by: Bram Kragten <mail@bramkragten.nl>
2024-12-11 16:58:25 +01:00
Wendelin e5e168803a Remove not needed admin checks (#23259) 2024-12-11 16:50:35 +01:00
Bram Kragten 3436a023f6 suggestions 2024-12-11 16:08:03 +01:00
Jan-Philipp Benecke 84322a21fe Remove id on sidebar 2024-12-11 15:59:46 +01:00
Jan-Philipp Benecke ec20f7e2c4 Use query instead 2024-12-11 15:59:46 +01:00
Jan-Philipp Benecke 3579d82e8e fix function calls 2024-12-11 15:59:46 +01:00
Jan-Philipp Benecke 70532ac3bf use first composePath target 2024-12-11 15:59:46 +01:00
Jan-Philipp Benecke 96b9d25bc5 Process code review 2024-12-11 15:59:46 +01:00
Jan-Philipp Benecke 91777d45b0 Prevent leaving the editor if there are unsaved changes 2024-12-11 15:59:46 +01:00
ildar170975 0582b8430d Update developer-tools-template.ts: add independent scrollbars for left & right panels for large screens (#23242)
* Update developer-tools-template.ts

* whitespace in pre

Co-authored-by: Petar Petrov <MindFreeze@users.noreply.github.com>

* prettier

* Update developer-tools-template.ts

* Update developer-tools-template.ts

* prettier

* prettier!!!!

* prettier again

* prettier fight

* prettier

Co-authored-by: Wendelin <12148533+wendevlin@users.noreply.github.com>

* prettier

* prettier

---------

Co-authored-by: Petar Petrov <MindFreeze@users.noreply.github.com>
Co-authored-by: Wendelin <12148533+wendevlin@users.noreply.github.com>
2024-12-11 15:25:39 +02:00
Bram Kragten 63d97398c1 Fix dialog navigation by making navigate() async (#23254)
* Fix dialog navigation by making `navigate()` async

* close all dialogs on `navigate`

* log warning when navigation is blocked

* fix
2024-12-11 14:13:20 +01:00
Steve Repsher 3552417b39 Compress legacy build and shared static files using Brotli (#23233)
* Revert "Remove Zopfli compression (#23157)"

This reverts commit 4092f56ea5.

* Revert "Fix compression of hassio builds (#21869)"

This reverts commit b69f0964c9.

* Compress legacy build and shared static files using Brotli
2024-12-11 15:05:17 +02:00
Petar Petrov a6cbbfe1a4 fix 2024-12-11 13:59:47 +02:00
Petar Petrov 48f5d17060 log warning when navigation is blocked 2024-12-11 13:36:47 +02:00
Petar Petrov c713106948 close all dialogs on navigate 2024-12-11 13:35:09 +02:00
Petar Petrov 142e674020 Fix dialog navigation by making navigate() async 2024-12-11 11:56:32 +02:00
Wendelin e4fc21c991 Move view to another dashboard (#23245)
* Add move view to dashboard

* Remove unneeded return in error flow

* Update src/panels/lovelace/editor/select-dashboard/hui-dialog-select-dashboard.ts

Co-authored-by: Petar Petrov <MindFreeze@users.noreply.github.com>

* Update src/panels/lovelace/editor/select-dashboard/hui-dialog-select-dashboard.ts

Co-authored-by: Petar Petrov <MindFreeze@users.noreply.github.com>

* Use ha-list-item for button-menu

---------

Co-authored-by: Petar Petrov <MindFreeze@users.noreply.github.com>
2024-12-11 10:30:57 +02:00
Simon Lamon f688780677 Combine Edit in yaml and Edit in visual editor (2/2) (#23143)
* yaml / visual part 2

* clean up

* ci
2024-12-11 09:49:15 +02:00
Simon Lamon 0ce98a86e6 Combine Edit in yaml and Edit in visual editor (1/2) (#23142)
* yaml / visual part 1

* clean up

* clean up
2024-12-11 09:48:10 +02:00
Jan-Philipp Benecke bf624f5ca7 Intercept default search shortcut and focus our search input on data table pages (#23209)
Intercept default search shortcut on data table pages
2024-12-11 09:34:27 +02:00
renovate[bot] ce5ce37de7 Update formatjs monorepo (#23250)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-12-11 07:36:33 +01:00
Simon Zumbrunnen da727d3a3a Added "Media player volume slider" card feature. (#23199)
* Added "Media player volume" card feature.

* Make sure the feature is not displayed on unsupported players

Co-authored-by: Petar Petrov <MindFreeze@users.noreply.github.com>

* Renamed to Media player volume *slider*

* Missed one rename.

---------

Co-authored-by: Simon Zumbrunnen <simon-zumbrunnen@users.noreply.github.com>
Co-authored-by: Petar Petrov <MindFreeze@users.noreply.github.com>
2024-12-10 13:36:56 +00:00
Paul Bottein 9d83cc6988 Use list item for integration quality scale (#23236) 2024-12-10 13:33:21 +02:00
Petar Petrov ed625d4e0b Simplify dialog navigation to fix back button (#23220)
* Simplify dialog navigation to fix back btn

* add back comment

* manage dialog stack in the manager instead of history

* handle dialogs that refuse to close
2024-12-10 13:26:57 +02:00
Wendelin 84157c8ea5 Extract assist-chat out of voice-command-dialog (#23184) 2024-12-10 13:23:48 +02:00
Wendelin 8f19c0abb0 Use localStorage with Web Storage API (#23172) 2024-12-10 11:14:15 +01:00
Wendelin 008647aa7a Fix landingpage, supervisor release permission (#23223) 2024-12-10 10:51:25 +01:00
Wendelin b86d6021da Revert "Update developer-tools-template.ts: add independent scrollbars for left & right panels for large screens" (#23237)
Revert "Update developer-tools-template.ts: add independent scrollbars for le…"

This reverts commit d1c981bc19.
2024-12-10 09:47:40 +00:00
Steve Repsher 98af479fd3 Drop support for IE 11 and Samsung 4 (#23234) 2024-12-10 10:35:33 +01:00
ildar170975 d1c981bc19 Update developer-tools-template.ts: add independent scrollbars for left & right panels for large screens (#17765)
* Update developer-tools-template.ts

* Update developer-tools-template.ts

* fix overflow

* Update src/panels/developer-tools/template/developer-tools-template.ts

Co-authored-by: Wendelin <12148533+wendevlin@users.noreply.github.com>

* Update src/panels/developer-tools/template/developer-tools-template.ts

Co-authored-by: Wendelin <12148533+wendevlin@users.noreply.github.com>

* Update developer-tools-template.ts

* Update src/panels/developer-tools/template/developer-tools-template.ts

Co-authored-by: Wendelin <12148533+wendevlin@users.noreply.github.com>

* Update developer-tools-template.ts

* prettier

* Update developer-tools-template.ts

* Update developer-tools-template.ts

* prettier

* Update developer-tools-template.ts

* prettier

* prettier

* Update developer-tools-template.ts

* prettier

* prettier

* prettier

* Update developer-tools-template.ts

---------

Co-authored-by: Wendelin <12148533+wendevlin@users.noreply.github.com>
2024-12-10 10:11:48 +01:00
dependabot[bot] 1b0e53d3d9 Bump nanoid from 3.3.7 to 3.3.8 (#23235)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-10 09:21:23 +01:00
renovate[bot] 0d49927541 Update dependency @codemirror/view to v6.35.2 (#23232)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-12-10 08:30:36 +01:00
Charles Garwood 9e8d452438 Fix typo in translations build script (#23227)
* Fix typo in build script
2024-12-09 18:23:23 +00:00
renovate[bot] ddd646007e Update dependency @codemirror/view to v6.35.1 (#23221)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-12-09 17:18:38 +01:00
Bram Kragten f9844e8e58 Merge branch 'rc' 2024-12-09 15:59:29 +01:00
Bram Kragten 86f9909ac9 Bumped version to 20241127.7 2024-12-09 15:59:07 +01:00
Paulus Schoutsen 629ae3fbf3 Fix voice debug link (#23214) 2024-12-09 15:58:46 +01:00
Christopher Fenner ddd2c177b5 Correct overwriting integration labelling on integrations page (#23206)
* Update ha-config-integration-page.ts

fixes #22776

* update icon color

---------

Co-authored-by: Petar Petrov <MindFreeze@users.noreply.github.com>
2024-12-09 15:58:45 +01:00
ildar170975 829de4a073 Fix "Integration entries" page for yaml-based integrations (#23201)
* Update ha-config-integration-page.ts

* prettier
2024-12-09 15:58:44 +01:00
karwosts 0df8b96133 No script entities in scenes (#23192) 2024-12-09 15:58:43 +01:00
Wendelin 443921a97c Automate supervisor & landing-page release (#22959)
* Automate supervisor & landing-page release

* Add no prerelease condition to supervisor/landing-page release

* Prepare release workflow for testing

* Add release permissions to create PR

* Add supervisor, landingpage release to assets

* Create test draft release to test

* Fix hassio release path

* Fix workflow permission for test reasons

* Revert test settings
2024-12-09 15:58:43 +01:00
Norbert Rittel 787fba82bd Improve "Restore?" option for Timer helpers (#23213)
When creating or editing a Timer helper the option "Restore?" can be ticked by the user.

This should not be a question but rather just the option itself and in addition this should better explain its purpose as there is a full line of text possible.

This commit fixes this by adding a similar explanation as for a Counter helpers, following the explanation in the online docs.
2024-12-09 16:43:48 +02:00
renovate[bot] 1393a3ade8 Update vaadinWebComponents monorepo to v24.5.5 (#23219)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-12-09 11:37:34 +01:00
ildar170975 bf24d67066 Fix "Integration entries" page for yaml-based integrations (#23201)
* Update ha-config-integration-page.ts

* prettier
2024-12-09 09:06:18 +02:00
dependabot[bot] 9774deef6d Bump actions/cache from 4.1.2 to 4.2.0 (#23217)
Bumps [actions/cache](https://github.com/actions/cache) from 4.1.2 to 4.2.0.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](https://github.com/actions/cache/compare/v4.1.2...v4.2.0)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-09 08:52:56 +02:00
Paulus Schoutsen 8390c6e29b Fix voice debug link (#23214) 2024-12-08 22:32:43 +01:00
Christopher Fenner c78d371a9c Correct overwriting integration labelling on integrations page (#23206)
* Update ha-config-integration-page.ts

fixes #22776

* update icon color

---------

Co-authored-by: Petar Petrov <MindFreeze@users.noreply.github.com>
2024-12-08 17:21:34 +00:00
renovate[bot] 7750299a66 Update dependency @types/leaflet to v1.9.15 (#23202)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-12-07 22:33:51 +01:00
renovate[bot] 43f31dd455 Update dependency prettier to v3.4.2 (#23195)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-12-07 09:54:27 +01:00
karwosts df21900341 No script entities in scenes (#23192) 2024-12-07 02:45:25 +01:00
Paul Bottein 6934f0626c Fix boolean attributes (#23189) 2024-12-06 18:39:34 +01:00
Bram Kragten 54bc0525f7 Merge branch 'rc' 2024-12-06 16:18:55 +01:00
Bram Kragten 72f8f020fc Bumped version to 20241127.6 2024-12-06 16:18:37 +01:00
Bram Kragten 7f31acf764 Fix label selector when required (#23186) 2024-12-06 16:18:21 +01:00
Paul Bottein ea5bf17780 Fix has-secondary attribute (#23187) 2024-12-06 15:16:33 +00:00
Bram Kragten 0b7af715a8 Fix label selector when required (#23186) 2024-12-06 15:14:30 +00:00
Petar Petrov 8579bee053 Don't allow any more eslint warnings (#23181) 2024-12-06 14:58:04 +01:00
Petar Petrov 400ddbf625 Fix attributes broken by the warning fixes (#23182) 2024-12-06 14:56:42 +01:00
renovate[bot] 5fdefc0c20 Update dependency @rsdoctor/rspack-plugin to v0.4.11 (#23175)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-12-06 12:57:02 +02:00
renovate[bot] c72c74828e Update rspack monorepo to v1.1.5 (#23176)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-12-06 11:23:31 +01:00
Petar Petrov e0b157d280 Remove @web/dev-server (#23179) 2024-12-06 09:54:28 +00:00
Bram Kragten 8c5862e4ce 20241127.5 (#23178) 2024-12-06 10:45:15 +01:00
Bram Kragten f3e0df93b5 Bumped version to 20241127.5 2024-12-06 10:37:14 +01:00
Paul Bottein c6c5ea34d3 Fix text color in ha-md-select in dark mode (#23174) 2024-12-06 10:36:53 +01:00
Bram Kragten 287a068ada Add localisation to voice wizard (#23169)
* Add localization to voice wizard

* more
2024-12-06 10:36:52 +01:00
karwosts 8ca52820b1 Missing horiz swing mode import (#23168) 2024-12-06 10:36:51 +01:00
Bram Kragten cd8900dd26 Voice addon install: try to find discovered flow (#23146) 2024-12-06 10:36:51 +01:00
Paul Bottein 6d2e7f9fbd Improve trigger and action description for conversation (#23141) 2024-12-06 10:36:50 +01:00
Petar Petrov e02736b4e2 ZwaveJS: Handle S2 inclusion via Inclusion Controller (#23100) 2024-12-06 11:32:45 +02:00
Petar Petrov af049274d9 Cleanup unused WDS deps and config (#23155)
* Cleanup unused WDS deps and config

* fix
2024-12-06 09:57:46 +01:00
Petar Petrov 7a12fd2853 Fix ALL the eslint warnings (#23165)
* Fix many lint warnings

* Fix ALL lint warnings

* small fix

* type fixes
2024-12-06 09:55:07 +01:00
Paul Bottein f724d8e7a9 Fix text color in ha-md-select in dark mode (#23174) 2024-12-06 09:19:56 +01:00
Bram Kragten 0d7e0df194 Add localisation to voice wizard (#23169)
* Add localization to voice wizard

* more
2024-12-06 09:11:17 +02:00
renovate[bot] 7d567bc386 Update vitest monorepo to v2.1.8 (#23166)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-12-05 17:33:14 +01:00
karwosts ad52386ae0 Missing horiz swing mode import (#23168) 2024-12-05 16:02:55 +00:00
Paul Bottein 512fee47b6 Improve trigger and action description for conversation (#23141) 2024-12-05 17:01:04 +01:00
Petar Petrov 4092f56ea5 Remove Zopfli compression (#23157) 2024-12-05 14:01:25 +01:00
renovate[bot] 926972cce6 Update vitest monorepo to v2.1.7 (#23156)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-12-05 12:58:37 +02:00
Bram Kragten d51eea7bb6 Voice addon install: try to find discovered flow (#23146) 2024-12-05 10:14:06 +01:00
karwosts a3ca889ca3 Location selector: Move location on map click (#22198)
* Add button to location-selector to move marker to current view

* move on click

* double-click handling
2024-12-05 08:55:53 +02:00
renovate[bot] a7406b3201 Update dependency globals to v15.13.0 (#23148)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-12-05 08:20:38 +02:00
renovate[bot] b54057cc4b Update dependency chart.js to v4.4.7 (#23145)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-12-05 08:20:09 +02:00
Petar Petrov d77dd5300e Require underscore for private methods (#23138) 2024-12-04 15:05:49 +01:00
Wendelin 9396d5cf8c Automate supervisor & landing-page release (#22959)
* Automate supervisor & landing-page release

* Add no prerelease condition to supervisor/landing-page release

* Prepare release workflow for testing

* Add release permissions to create PR

* Add supervisor, landingpage release to assets

* Create test draft release to test

* Fix hassio release path

* Fix workflow permission for test reasons

* Revert test settings
2024-12-04 14:41:21 +01:00
Wendelin a78ddb50fd Fix time input with helper text width (#23134)
* Fix time input with helper text width

* Make time input help text always newline

* Put helper text out of base-time-input
2024-12-04 13:25:31 +00:00
Bram Kragten 1016c87c60 20241127.4 (#23137) 2024-12-04 14:20:32 +01:00
Bram Kragten dbda1d75f9 Bumped version to 20241127.4 2024-12-04 14:12:49 +01:00
Wendelin a9c25b49b9 Add red delete button to delete zone confirmation dialog (#23136) 2024-12-04 14:12:25 +01:00
Bram Kragten fbff95345c Use action instead of selected for select entity row (#23135) 2024-12-04 14:12:24 +01:00
Paul Bottein 8f4e65d392 Don't use duration formatting for second unit (#23132)
Don't use duration formatting for sec unit
2024-12-04 14:12:23 +01:00
Paul Bottein 3a2cb51f8d Reduce button target zone in media player more info (#23130) 2024-12-04 14:12:22 +01:00
Jan-Philipp Benecke 6c9cfed49f Explicitly set file name for camera snapshot (#23124)
* Explicitly set file name for camera snapshot

* Process code review
2024-12-04 14:12:21 +01:00
Paul Bottein 257cab1061 Fix create section on iOS (#23123) 2024-12-04 14:12:21 +01:00
Wendelin 5f6577a24c Remove static font from ha-badge (#23120) 2024-12-04 14:12:20 +01:00
Jan-Philipp Benecke f8d6f0fae4 Show in assist pipeline debug when intent is preferred and processed locally (#23115) 2024-12-04 14:12:19 +01:00
renovate[bot] 5b7eeb6ac1 Update dependency marked to v15.0.3 (#23088)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-12-04 14:12:18 +01:00
Bram Kragten 64e8b636b9 Use action instead of selected for select entity row (#23135) 2024-12-04 13:57:55 +01:00
Wendelin 2c604ff946 Add red delete button to delete zone confirmation dialog (#23136) 2024-12-04 12:55:12 +00:00
Paul Bottein f8ce7c2ce1 Don't use duration formatting for second unit (#23132)
Don't use duration formatting for sec unit
2024-12-04 13:17:47 +01:00
Abílio Costa af1622e306 Show unit for number domains (#23101)
* Show unit for number domains

* Remove duplicated code

* Allow monetary formatting

Co-authored-by: Petar Petrov <MindFreeze@users.noreply.github.com>

* Update src/common/entity/compute_state_display.ts

---------

Co-authored-by: Petar Petrov <MindFreeze@users.noreply.github.com>
2024-12-04 11:25:29 +00:00
Jan-Philipp Benecke 3c03dfb322 Revert translation change for device quick bar (#23131) 2024-12-04 11:43:50 +01:00
Jan-Philipp Benecke 697a99f913 Show in assist pipeline debug when intent is preferred and processed locally (#23115) 2024-12-04 09:52:48 +01:00
Paul Bottein 06925f0716 Reduce button target zone in media player more info (#23130) 2024-12-04 09:40:41 +01:00
Jan-Philipp Benecke afcfdb5140 Explicitly set file name for camera snapshot (#23124)
* Explicitly set file name for camera snapshot

* Process code review
2024-12-04 08:52:53 +02:00
Jan Čermák 6126280f2d Fix Markdown cards in Grid not taking full height (#23121)
The implementation of show_empty property in #21379 introduced
regression which causes Markdown cards rendered within a Grid card to
not take full height of its space. This is because a visible card is now
forced to have "display: block", while without that it's rendered as
"display: inline".

As the CSSStyleDeclaration.style mandates string type, it's not possible
to delete or null the value. Setting it to an empty string seems to do
the trick as well and the linter is happy too.

Fixes #23119
2024-12-03 17:33:59 +01:00
Paul Bottein 8e6f4886e8 Fix create section on iOS (#23123) 2024-12-03 17:16:52 +02:00
Wendelin 480de9ef03 Remove static font from ha-badge (#23120) 2024-12-03 14:15:59 +00:00
Bram Kragten 191feed920 Merge branch 'rc' 2024-12-03 14:44:05 +01:00
Bram Kragten 13c1763277 Bumped version to 20241127.3 2024-12-03 14:43:51 +01:00
Wendelin ac9085c7a4 Fix ha-target-picker hideTitle (#23116) 2024-12-03 14:43:40 +01:00
Bram Kragten 8beb93b695 Voice local: Small refactor and return when local already exists (#23113) 2024-12-03 14:43:39 +01:00
Marcin 4f76e66cc0 Updated English translations for scene editor. (#23110) 2024-12-03 14:43:38 +01:00
renovate[bot] 614c4ec404 Update dependency @rsdoctor/rspack-plugin to v0.4.10 (#23108)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-12-03 15:07:54 +02:00
Wendelin d43291ae52 Fix ha-target-picker hideTitle (#23116) 2024-12-03 13:05:05 +00:00
Petar Petrov 7c486ec969 ZWaveJS: abort S2 bootstrapping when inclusion is canceled (#23106) 2024-12-03 13:56:17 +01:00
Bram Kragten 19f54b6ba2 Voice local: Small refactor and return when local already exists (#23113) 2024-12-03 12:01:54 +01:00
Wendelin 97cc9f9ab9 Simplify mediaBrowserPreferredLayout @storage (#23107) 2024-12-03 11:37:23 +01:00
Marcin a104d38fc9 Updated English translations for scene editor. (#23110) 2024-12-03 10:25:56 +01:00
renovate[bot] 2582023ab2 Update dependency eslint to v9.16.0 (#23105)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-12-03 08:50:48 +02:00
Jan-Philipp Benecke e731f060f1 Add device search to quick bar (#23095)
* Add device search to quick bar

* Process code review
2024-12-03 08:50:07 +02:00
Bram Kragten 1ebd13027c 20241127.2 (#23104) 2024-12-02 21:39:46 +01:00
Bram Kragten 04beef5e36 Bumped version to 20241127.2 2024-12-02 21:31:47 +01:00
Bram Kragten 0a578c5847 Voice wizard local: Add error message, fix hostname (#23103)
Add error message, fix hostname
2024-12-02 21:31:29 +01:00
Wendelin 41924d8ec6 Add automatic retry to stream logs (#23098) 2024-12-02 21:31:29 +01:00
Paul Bottein 6ff1a6fecc Don't show alert in voice assistant dialog (#23097) 2024-12-02 21:31:28 +01:00
Wendelin 05eb6e15a5 Save scene before switching to live edit (#23094)
Save scene changes before live edit, align delete icons for entities.
2024-12-02 21:31:27 +01:00
Alex Jurkiewicz 6d01728d54 history-graph-card-editor: Correct hours_to_show validation (#23090)
history-graph-card-editor: Correct hours_to_show validation

Allow all floating point numbers from 0 up.

Fixes #15933.
2024-12-02 21:31:26 +01:00
karwosts 2550bff4e9 Init new scenes in live edit mode (#23051)
* Init new scenes in live edit mode

* Update src/panels/config/scene/ha-scene-editor.ts

Co-authored-by: Simon Lamon <32477463+silamon@users.noreply.github.com>

* imports

---------

Co-authored-by: Simon Lamon <32477463+silamon@users.noreply.github.com>
2024-12-02 21:31:25 +01:00
Wendelin c3942d244d Add automatic retry to stream logs (#23098) 2024-12-02 21:30:51 +01:00
Bram Kragten f4ef4c628a Voice wizard local: Add error message, fix hostname (#23103)
Add error message, fix hostname
2024-12-02 14:48:24 -05:00
Simon Lamon a0f3e4f785 Add a label filter (#23081)
* Label filter

* adjust height

* ci

* Update src/components/ha-filter-labels.ts

---------

Co-authored-by: Petar Petrov <MindFreeze@users.noreply.github.com>
2024-12-02 15:41:41 +00:00
Norbert Rittel 2c13c5a18c Change "Low-carbon energy consumed" to "… electricity …" (#23096)
The Energy card allows the user to monitor the "Grid carbon footprint" which is visualized by the "Low-carbon energy consumed" gauge.

But this does not cover the carbon emissions of the gas consumption that might be shown right next to it, just the electrical energy from the grid.

So the labeling is very misleading in that context – not even considering energy consumed by oil or wood burned in addition.

Therefore this needs to be changed to use "electricity" just like the description already does.
2024-12-02 17:32:56 +02:00
Paul Bottein 22cfd40ccc Don't show alert in voice assistant dialog (#23097) 2024-12-02 14:35:41 +01:00
martetassyns 5c7d9b3fa3 Made it easier to test the frontend against an existing core instance. (#23062)
* Made it easier to test the frontend against an existing core instance.

* Ensured that script works regardless of current working dir

* Use consistent quote style

* Also allow using variables in hassUrl override

* Improved the default behavior of the script

* more consistent variable naming

* don't install a global dependency

* documented caching wierdness where if you switch core endpoints the old one remains in use

* Simplified some code

* improved documentation

---------

Co-authored-by: Petar Petrov <MindFreeze@users.noreply.github.com>
2024-12-02 13:27:36 +00:00
Wendelin 55b6aa09d9 Save scene before switching to live edit (#23094)
Save scene changes before live edit, align delete icons for entities.
2024-12-02 15:24:03 +02:00
Robert MacWha 96395dd5e1 Store Media Browser view in localStorage (#23061)
feat: store preferredLayout in localStorage
2024-12-02 14:02:13 +01:00
renovate[bot] 7191edd3c6 Update dependency marked to v15.0.3 (#23088)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-12-02 11:58:59 +01:00
dependabot[bot] 6169379f4c Bump relative-ci/agent-action from 2.1.13 to 2.1.14 (#23089)
Bumps [relative-ci/agent-action](https://github.com/relative-ci/agent-action) from 2.1.13 to 2.1.14.
- [Release notes](https://github.com/relative-ci/agent-action/releases)
- [Commits](https://github.com/relative-ci/agent-action/compare/v2.1.13...v2.1.14)

---
updated-dependencies:
- dependency-name: relative-ci/agent-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-02 11:57:33 +01:00
Alex Jurkiewicz 5500dd1332 history-graph-card-editor: Correct hours_to_show validation (#23090)
history-graph-card-editor: Correct hours_to_show validation

Allow all floating point numbers from 0 up.

Fixes #15933.
2024-12-02 12:48:12 +02:00
renovate[bot] 5c681896f3 Update dependency @codemirror/language to v6.10.6 (#23092)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-12-02 12:45:19 +02:00
Norbert Rittel d826113319 Change "Energy usage" to "Electricity usage" (#23091)
The energy dashboard tracks the total energy of a home, including the gas consumption in a separate graph (if configured).

The topmost graph is currently labeled "Energy usage" but it does only cover the electricity consumption and production. Also note the "Energy distribution" next to it includes gas, too.

Thus the title is misleading and needs to be changed to "Electricity usage" to make this clearer.
2024-12-02 12:30:56 +02:00
karwosts f72b298f97 Init new scenes in live edit mode (#23051)
* Init new scenes in live edit mode

* Update src/panels/config/scene/ha-scene-editor.ts

Co-authored-by: Simon Lamon <32477463+silamon@users.noreply.github.com>

* imports

---------

Co-authored-by: Simon Lamon <32477463+silamon@users.noreply.github.com>
2024-12-02 11:18:03 +01:00
Jan-Philipp Benecke 90b7cad7ac Add shortcut to open the voice assist dialog (#23082)
* Add shortcut to open the voice assist dialog

* Add tip

* Only show dialog when enabled

* Update src/translations/en.json

---------

Co-authored-by: Petar Petrov <MindFreeze@users.noreply.github.com>
2024-12-02 09:26:27 +00:00
renovate[bot] e0239486bc Update dependency element-internals-polyfill to v1.3.12 (#23077)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-12-01 12:13:29 +01:00
Norbert Rittel e10fb3c168 Fix inconsistent "remove" in description of refresh tokens (#23073)
As Refresh tokens are created in HA the corresponding verb is "delete", not "remove".

All buttons and menu items in this context use the correct verb, except for the description which contains "remove", twice.

This commit fixes that.
2024-11-30 22:32:00 +01:00
Norbert Rittel 5ee8bee6dc Remove the misleading word "updates" from system options (#23069)
Remove the misleading word "update" from system options

The second option in the system options dialog for integrations uses the word "updates" in both the headline and the explanation.

This is highly misleading as it sounds like polling for firmware updates for many device integrations.

Therefore the words "(state) changes" should be used instead.
2024-11-30 17:07:37 +01:00
renovate[bot] 4b678ffb41 Update dependency @codemirror/language to v6.10.5 (#23070)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-30 16:44:46 +01:00
Norbert Rittel 82c23026b3 Correctly match "Remove" to "Add" within Energy dashboard (#23068)
In Home Assistant the action "Add" should always pair with "Remove", like "Create" does with "Delete".
This commit addresses all mismatched pairs in the Energy dashboard.

In addition the grammar of device_consumption_energy is fixed by using the consistent "energy consumption" word pair.
2024-11-30 16:44:09 +01:00
renovate[bot] 94b7b60fe0 Update dependency prettier to v3.4.1 (#23053)
* Update dependency prettier to v3.4.1

* Prettier rule

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Simon Lamon <32477463+silamon@users.noreply.github.com>
2024-11-29 16:55:54 +00:00
renovate[bot] e1553a7ccf Update dependency magic-string to v0.30.14 (#23052)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-29 17:40:33 +01:00
renovate[bot] fb0ca49742 Update vitest monorepo to v2.1.6 (#23060)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-29 16:55:18 +02:00
Norbert Rittel 97015788a2 Correctly pair 'remove' with 'add' in description of To-do list card (#23044)
When using 'Add' in HA this should always pair with 'Remove', like 'Create' with 'Delete'.

The To-do list card introduces an inconsistent third word by using 'clear' instead of 'remove'.

This fixes this and also properly capitalizes "To-do list" as it's name like in all other Dashboard card types.
2024-11-29 08:35:45 +02:00
renovate[bot] 0cf05ea2cc Update dependency @types/chromecast-caf-receiver to v6.0.20 (#23049)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-28 21:11:24 +01:00
renovate[bot] acbe77c0d6 Update Yarn to v4.5.3 (#23046)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-28 18:57:25 +01:00
Bram Kragten 6e003907fb 20241127.1 (#23045) 2024-11-28 17:01:24 +01:00
Bram Kragten f6c15dc990 Bumped version to 20241127.1 2024-11-28 16:53:58 +01:00
Wendelin 1061769144 Simplify depends_on_cloud translation (#23042) 2024-11-28 16:52:56 +01:00
Wendelin 1edfec08e1 Add internal, legacy to IQS (#23040) 2024-11-28 16:52:55 +01:00
Wendelin 239cad9b47 Fix iqs naming and docs link anchor (#23036) 2024-11-28 16:52:54 +01:00
Paul Bottein 8d7c175d70 Only use duration poly-fill when necessary (#23030) 2024-11-28 16:52:43 +01:00
Wendelin 795bbefba6 Fix platinum color and spacing of integration logo (#23029) 2024-11-28 16:51:57 +01:00
karwosts e1b34eaa33 Dont floor duration for milliseconds (#23028)
* Dont floor duration for milliseconds

* remove ms
2024-11-28 16:51:22 +01:00
renovate[bot] bede8c66c5 Update dependency @rsdoctor/rspack-plugin to v0.4.9 (#23043)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-28 13:58:28 +01:00
Norbert Rittel de87aee15b Replace add_zone with create_zone in ha-config-zone.ts (#23041)
* Replace add_zone with create_zone in ha-config-zone.ts

The action button is the only inconsistent item here now.

* Remove orphaned "add_zone" string
2024-11-28 14:46:29 +02:00
Wendelin 36312cc273 Simplify depends_on_cloud translation (#23042) 2024-11-28 13:24:44 +02:00
Wendelin 3120184d63 Add internal, legacy to IQS (#23040) 2024-11-28 13:23:53 +02:00
Wendelin a1be9d923e Fix iqs naming and docs link anchor (#23036) 2024-11-28 09:58:34 +02:00
renovate[bot] 7dee34ca75 Update dependency @codemirror/language to v6.10.4 (#23031)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-28 06:19:06 +01:00
karwosts f7c8c6e3e8 Dont floor duration for milliseconds (#23028)
* Dont floor duration for milliseconds

* remove ms
2024-11-27 17:27:03 +00:00
Paul Bottein 3411967fd9 Only use duration poly-fill when necessary (#23030) 2024-11-27 17:13:29 +01:00
Wendelin 125805d6d1 Fix platinum color and spacing of integration logo (#23029) 2024-11-27 16:27:53 +01:00
Bram Kragten 91d5d2f1eb 20241127.0 (#23027) 2024-11-27 15:28:49 +01:00
Bram Kragten e0e158b64c Merge branch 'master' into dev 2024-11-27 15:19:46 +01:00
Bram Kragten 078095db3f Bumped version to 20241127.0 2024-11-27 15:17:35 +01:00
Wendelin 8c7fcc725c Limit iqs indicator to colors only (#23026) 2024-11-27 15:16:52 +01:00
G Johansson 988fa3e4e4 Add horizontal swing to climate (#22043) 2024-11-27 15:10:11 +01:00
Bram Kragten f9118a4b87 Add alt to img, fix styling issue voice (#23024) 2024-11-27 15:04:09 +01:00
Paul Bottein 164944ceff Improve duration formatting (#23025) 2024-11-27 15:00:29 +01:00
Wendelin bc195c61cc Integration Quality Scale indicator (#23015) 2024-11-27 14:45:44 +01:00
Bram Kragten f54bb20fef Fix error on hardware page (#23021)
* fix error on hardware page

* Update ha-config-hardware.ts
2024-11-27 15:44:24 +02:00
Bram Kragten 71214351ca Fix timeout error handling local voice (#23023)
fix timeout error handling local voice
2024-11-27 14:36:30 +01:00
Bram Kragten 0a954cf1c7 Add add-on installation to voice setup flow (#23018) 2024-11-27 14:12:36 +01:00
Simon Lamon 2782b2fb1b Use DurationFormat for calendar trigger (#23020)
duration long
2024-11-27 13:47:14 +01:00
Paul Bottein a532b4461d Use explicit duration format for state formatting (#23017) 2024-11-27 12:49:21 +01:00
Wendelin dd7987e199 Add unit tests for common/array files (#23006)
* add vitest coverage

* Add js doc to functions

* Add tests for common/array
2024-11-27 10:02:24 +02:00
Jan-Philipp Benecke 81cc73ece3 Make missed strings translatable in ha-script-trace and ha-automation-trace (#23013) 2024-11-27 07:49:58 +01:00
Jan-Philipp Benecke f9701b2363 Use "No traces found" automation translation in ha-script-trace (#23010) 2024-11-27 07:26:48 +01:00
Jan-Philipp Benecke adb22abd7d Mark reset addon options dialog as destructive (#23009) 2024-11-26 21:16:13 +01:00
Jan-Philipp Benecke 4df90ebbc3 Mark delete backup dialog as destructive (#23008) 2024-11-26 19:54:10 +00:00
Wendelin 4655929fed Add node_modules cache in ci (#22826)
* Add reusable node_modules to ci

* Use node_modules cache

Co-authored-by: Bram Kragten <mail@bramkragten.nl>

* Add yarn version to cache

---------

Co-authored-by: Bram Kragten <mail@bramkragten.nl>
2024-11-26 19:08:28 +01:00
Mark Bergsma 39b00f1063 Support time entities in automation time conditions/triggers selectors (#21069)
Co-authored-by: Simon Lamon <32477463+silamon@users.noreply.github.com>
2024-11-26 15:41:59 +01:00
Wendelin bd0bfc1fbe Rspack (#22807)
* Add rspack

* Remove TransformAsyncModulesPlugin from rspack

* Migrate all webpack usage to rspack

* Migrate tests to vitest

* Fix test suites

* Remove chai dependency

* Fix compute_state_display tests

* Fix resolveTimeZone

* Reduces test pipeline

* Revert test ci

* optimize chunk filtering

* Migrate landing-page to rspack

* Update rspack dependencies

* Add rsdoctor

* Fix prod build bundle size

* Use rsdoctor for demo stats

* Remove unused webpack configs

* Update build-scripts/rspack.cjs

Co-authored-by: Petar Petrov <MindFreeze@users.noreply.github.com>

* Fix eslint

* Update rspack

* Remove unused code

---------

Co-authored-by: Petar Petrov <MindFreeze@users.noreply.github.com>
2024-11-26 14:49:13 +01:00
Paul Bottein 09c5dab69f Improve tags datatable (#23003)
* Improve tags datatable

* Update translations
2024-11-26 12:19:00 +01:00
ildar170975 25a7f6ebf7 Fix padding top for logbook panel (#22999) 2024-11-26 11:46:06 +01:00
renovate[bot] a5e12cb558 Update dependency typescript to v5.7.2 (#22998)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-26 09:08:42 +01:00
renovate[bot] a2927f281d Update dependency @types/chromecast-caf-receiver to v6.0.19 (#23000)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-26 09:05:33 +01:00
renovate[bot] 3c23c18faf Update dependency @types/chromecast-caf-sender to v1.0.11 (#23001)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-26 08:45:36 +01:00
renovate[bot] 616bd065e0 Update vaadinWebComponents monorepo to v24.5.4 (#22990)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-25 17:17:13 +01:00
Ruben van Dijk a525c44794 Cancels page retry loop with negative intervals. (#22983)
* Cancels page retry loop with negative intervals.
This shouldn't be required, but sometimes, which I can't easily reproduce, it fails to reload.
Fixes #20052

* Clear interval before reload.
2024-11-25 14:43:27 +02:00
Wendelin 2d3579c08a Add workflow_dispatch to release workflow (#22993) 2024-11-25 13:34:25 +01:00
renovate[bot] 6ef36dce3e Update dependency @codemirror/search to v6.5.8 (#22989)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-25 11:07:42 +02:00
Norbert Rittel 74bf1d2a82 Use consistent name "Field key" for entry field (#22985)
Both error messages just refer to the "field key" as such.

Therefore the label in the dialog should be consistent.
2024-11-25 08:21:50 +02:00
renovate[bot] 8ea2e3f471 Update Yarn to v4.5.2 (#22986)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-25 08:19:52 +02:00
arthanoss 1b74e94f14 Remove redundant action handler and wrapper from sensor entity row (#22975) 2024-11-24 17:04:01 +02:00
renovate[bot] 536d2e0ab0 Update dependency @codemirror/view to v6.35.0 (#22982)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-24 16:49:53 +02:00
Norbert Rittel c610778b0f Fix inconsistent capitalization in Device info (#22979) 2024-11-24 11:42:12 +01:00
renovate[bot] 0791b1bc71 Update dependency marked to v15.0.2 (#22974)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-24 11:11:47 +01:00
renovate[bot] c93f6f683a Update dependency @types/mocha to v10.0.10 (#22972)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-24 11:11:06 +01:00
Norbert Rittel 999969b78d Make key_c_hint strings consistent (#22971)
Make ui::dialogs::quick-bar::key_c_hint consistent with ui::tips::key_c_hint
2024-11-23 20:50:49 +02:00
Steven B. 10b8627f51 Webrtc use RTCIceCandidateInit messages with backend (#22667)
* Add sdp m line index to ICE Candidates

* Remove ? from candidate

Co-authored-by: Bram Kragten <mail@bramkragten.nl>

* Send full candidate in message

* Revert launch.json change

* Use RTCIceCandidate for messaging

---------

Co-authored-by: Bram Kragten <mail@bramkragten.nl>
2024-11-23 14:56:19 +02:00
Wendelin 528fcecd16 Ha-alert-narrow-action (#22956)
* Add ha-alert narrow option

* Use ha-alert narrow in ha-scene-editor
2024-11-22 18:37:05 +02:00
Bram Kragten f8fb5d7bf2 Add cloud signup to voice flow (#22941) 2024-11-22 08:55:37 +01:00
renovate[bot] 3e02d95e01 Update dependency magic-string to v0.30.13 (#22949)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-21 20:33:13 +01:00
renovate[bot] 4ef6661532 Update dependency husky to v9.1.7 (#22945)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-21 18:56:28 +01:00
Wendelin 6cc6d9fb45 Tolerant env vars (#22948) 2024-11-21 18:26:51 +01:00
Wendelin 43911ef3be Fix disable ha-progress button (#22939)
* Fix disable ha-progress button

* Simplify ha-progress disabled fix

* Fix ha-progress-button click handler

* fix ha-progress-button pointer-events
2024-11-21 15:30:28 +00:00
Wendelin 6b0afe6ebb Add inline-arrow option to ha-select & ha-language-picker (#22935)
* Add inline-arrow option to ha-select & use it in some language pickers

* Update src/components/ha-language-picker.ts

Co-authored-by: Bram Kragten <mail@bramkragten.nl>

---------

Co-authored-by: Bram Kragten <mail@bramkragten.nl>
2024-11-21 16:44:11 +02:00
Wendelin 811977b366 Fix disable fields in general config (#22938) 2024-11-21 15:58:26 +02:00
Wendelin fc2e3b7bcf Disable devices/entities click in scene review mode (#22940) 2024-11-21 15:57:02 +02:00
Bram Kragten 6b8068a22a Improv external flow (#22878)
* WIP improv external flow

* Update external_messaging.ts

* use name instead, start flow

* make copy

* Update ha-config-integrations-dashboard.ts

* Update

* rename command

* Use a map instead of array for deduping
2024-11-21 14:45:49 +01:00
Norbert Rittel 2899388395 Change "Add" to "Create" for Labels and Zones following HA Design guidelines (#22942) 2024-11-21 14:23:46 +01:00
Bram Kragten 4e63eacb79 Improve message for yaml core settings (#22936) 2024-11-21 11:38:04 +01:00
Wendelin 881ff13832 Fix landing-page dns update request (#22932)
* Fix landing-page dns update request

* clear  _dnsPrimaryInterface
2024-11-21 11:10:20 +01:00
Bram Kragten 79c7cf59ee Add warning for muted voice assistant or when not heard wakeword in 1… (#22934)
Add warning for muted voice assistant or when not heard wakeword in 15 secs
2024-11-21 10:07:56 +00:00
renovate[bot] b82d880bfd Update formatjs monorepo (#22930)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-21 11:54:25 +02:00
Bram Kragten 64374a4fcb Voice wizard: prevent flash of hardware screen when cloud is active (#22933) 2024-11-21 08:59:43 +00:00
Norbert Rittel 0e0be279ea Fix broken grammar in confirm_unsaved_comments alert (#22928) 2024-11-21 09:37:06 +01:00
renovate[bot] 08a8e053d3 Update dependency marked to v15.0.1 (#22929)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-21 09:36:35 +01:00
Norbert Rittel 7d9752abdf Dev Tools: Replace "Current entities" with "Current entity states" (#22924) 2024-11-20 23:09:23 +01:00
Norbert Rittel 0c382f1967 Change "Add script" and "Add scene" to "Create …" (#22922) 2024-11-20 19:39:05 +00:00
Norbert Rittel 7833a31eea Change "Elevation" to "Elevation above sea level" for clarity (#22919) 2024-11-20 20:19:27 +01:00
Norbert Rittel 8e796e013a Change "Find my value" to "Find my ISO Code" for the currency field (#22917)
Under Settings > System > General the user can set the currency for the system.

To enter the correct ISO code there is a link to the respective Wikipedia page.

The link is currently labeled "Find my value" which makes no real sense.
2024-11-20 20:28:14 +02:00
Paulus Schoutsen 757ed2e80c Add local processing option to pipeline for LLM conversation agents (#22561)
* Add local processing field to pipeline

* update

* Update wording

* handle current pipelines

---------

Co-authored-by: Bram Kragten <mail@bramkragten.nl>
2024-11-20 20:24:50 +02:00
Norbert Rittel d2665f1349 Fix two strings for Settings > Tags (#22916)
The explanation for the QR code does not make sense right now.

The 'Create automation with tag' missing a 'this'.
2024-11-20 18:06:38 +00:00
Abílio Costa 84f7c62ee2 Add support for unit_of_measurement translation (#22868) 2024-11-20 18:44:44 +01:00
Norbert Rittel a9d7082218 Add missing words in matter::ping_node::battery_device_warning (#22914) 2024-11-20 18:36:17 +01:00
Norbert Rittel 766de17ea3 Change "Run" command for automation to "Run actions" (#22913) 2024-11-20 18:35:43 +01:00
Norbert Rittel 8988bd519f No longer use "button" when referring to "Edit ID" menu item for triggers (#22892) 2024-11-20 18:34:14 +01:00
Simon Lamon 6ccd4fa431 Handle empty trigger or action in migration path (#22912)
Co-authored-by: Bram Kragten <mail@bramkragten.nl>
2024-11-20 16:24:21 +00:00
Wendelin 5b8e63a213 Landing page (#22598) 2024-11-20 16:20:08 +00:00
Simon Lamon 6a337cc486 Remove activate scene in automation editor (#22258) 2024-11-20 17:02:15 +01:00
Norbert Rittel f7f936cb54 Use consistent name "Entity search" for that part of "Quick Search" (#22907)
Co-authored-by: Bram Kragten <mail@bramkragten.nl>
2024-11-20 16:17:55 +01:00
renovate[bot] 7252169325 Update dependency @lit-labs/observers to v2.0.4 (#21636)
* Update dependency @lit-labs/observers to v2.0.4

* Pin lit-html to 2.8.0

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Simon Lamon <32477463+silamon@users.noreply.github.com>
2024-11-20 15:16:48 +00:00
Bram Kragten b7ef633a3e Voice wizard: Use test message in tts language (#22882)
* Voice wizard: Use test message in tts language

* catch none existing lang
2024-11-20 15:09:48 +00:00
Wendelin 995155696f Improve scene editor UI (#22910) 2024-11-20 14:53:49 +00:00
Yosi Levy 7996f4e0b2 Picture elements card editor: Add title to secondary description for custom cards (#22908) 2024-11-20 15:45:29 +01:00
karwosts ac6e61b9b8 Remove display of 'Current state' in ha-card-condition-state (#22887) 2024-11-20 14:43:21 +00:00
System Tester b7f3e40340 Fixes #17769, #22503: Improved subscription handling (#22889)
* Fixes #17769, #22503: Improved subscription handling

Prevent multiple active subscriptions
Ensure a clean state when the component reconnects
Checking subscription status before processing

* Prettier issue resolved

* async methods referencing _unsubscribe are properly awaited

* Apply suggestions from code review

Thank you

Co-authored-by: Wendelin <12148533+wendevlin@users.noreply.github.com>

---------

Co-authored-by: Wendelin <12148533+wendevlin@users.noreply.github.com>
2024-11-20 15:41:59 +01:00
Norbert Rittel 39b4e85dcd Better explain the "Push notification" option in the browser settings (#22906) 2024-11-20 15:38:10 +01:00
karwosts 37d2c6844a Update Scene Editor (#22847)
* New scene editor design

* bugfixes

* reorder overflow menu, change label

* category support
2024-11-20 15:12:23 +01:00
Norbert Rittel b8e2298cdd Update the explanation for setting up the Google Home integration (#22897) 2024-11-20 12:49:57 +01:00
Norbert Rittel a3ff065c7a Update 'mqtt_device_debug_info' strings to use ICU syntax (#22899) 2024-11-20 12:49:11 +01:00
Norbert Rittel a224d6c61b Fix grammar issue in remove_fabric_confirm_text (#22901) 2024-11-20 12:48:21 +01:00
Norbert Rittel cd0980d13e Clarify 'updates_refreshed' message (#22904) 2024-11-20 12:46:59 +01:00
Norbert Rittel 13cb32a83f Entity settings for helpers: avoid repeating "options" in explanation (#22896) 2024-11-20 12:43:04 +01:00
Norbert Rittel 12a9cf4b32 Replace wrong uses of "energy" with "electricity" in Energy dashboard (#22893) 2024-11-20 12:41:54 +01:00
Norbert Rittel 8cce13163f Make sidebar (app) settings items consistent by replacing 'configuration' (#22890) 2024-11-20 12:39:42 +01:00
Petar Petrov 46a55630fa ZWaveJS: Support for Door Lock in Expert UI (#22775)
* ZWaveJS: Support for Door Lock in Expert UI

* make it dry

* Update src/panels/config/integrations/integration-panels/zwave_js/capability-controls/zwave_js-capability-control-door-lock.ts

Co-authored-by: AlCalzone <dominic.griesel@nabucasa.com>

* add validation

* fix booleans

* Update src/panels/config/integrations/integration-panels/zwave_js/capability-controls/zwave_js-capability-control-door-lock.ts

Co-authored-by: AlCalzone <dominic.griesel@nabucasa.com>

* handle ZWaveErrorCodes.CC_NotSupported for getCapabilities

* get/set mode

---------

Co-authored-by: AlCalzone <dominic.griesel@nabucasa.com>
2024-11-20 12:28:39 +01:00
Petar Petrov c92bee4f1d Show ZwaveJS "Installer settings" based on installer_mode option (#22710)
Show "Installer settings" based on `installer_mode` option
2024-11-20 13:06:15 +02:00
Norbert Rittel 940cbd42c3 Dashboard: Fix description of the Tile card (#22894)
There are currently two grammar issues in the Tile card description: It should be "allows" and "trigger" needs to be added.
2024-11-20 10:31:46 +01:00
Norbert Rittel 39bf7c9ad4 Use ICU string for proper singular vs. plural of "listener(s)" (#22885)
Fix for the permanent plural in ({count}  listeners)
2024-11-20 09:52:30 +01:00
Norbert Rittel 64c260c1c4 Form correct headline for 'Delete backups?' alert, separate "Delete backup" menu item (#22891)
Create correct headline for 'Delete backups?' alert

Change 'Delete backup' to 'Delete backups?' to use correct plural and form a question the user has to confirm.

Separates the 'Delete backup' menu item that is currently referenced from this key.
2024-11-20 09:21:51 +01:00
Norbert Rittel 36f3ef9e86 Update en.json to make all automation conditions use "if", not "when" (#22883)
* Update en.json to make all automation conditions use "if", not "when"

Fixes the remaining inconsistencies in all conditions defined in HA Frontend.

Especially important as these are prefixed with "Test" in the condition building block of automations and scripts, so they currently result in "Test when …" instead of the correct "Test if …".

* Updated en.json to fix the two wrong lowercase if
2024-11-19 16:56:21 +00:00
Bram Kragten 42622fe21e Hide wake word in pipeline settings (#22879)
* hide wake word in pipeline settings

* move logic to pipeline-editor
2024-11-19 16:35:44 +02:00
Wendelin 64f7afd60f Fix lint-staged with eslint v9 (#22880) 2024-11-19 14:03:38 +01:00
Ivan Kara 3282785cf2 Fix media browser (#22875) 2024-11-19 11:24:36 +00:00
DominikBitzer 2c1931adb1 Add Y-Axis limits functionality from history graphs card to statistics graph card (#22771) 2024-11-19 12:19:35 +01:00
Petar Petrov c9cad254d2 Add tone,volume & duration selector to more-info dialog for sirens (#22786)
* Add tone selector to more-info for sirens

* add selected tone to service call

* rework the tone into an advanced controls dialog

* tweaks from PR comments

* fix % conversion

* assume duration is in seconds
2024-11-19 11:56:52 +01:00
Wendelin f4f2cce57e Fix logbook date range alignment (#22877) 2024-11-19 11:32:13 +02:00
renovate[bot] 556315b360 Update dependency eslint to v9.15.0 (#22870)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-19 09:12:20 +01:00
boern99 bed470f79d add previous and next button to History and Logbook (#22802)
* add previous and next button to History and Logbook

* used date-fns and changed media-query-resolution to fit on mobiles

* hide .prev and .next on small screens; optimized dateRange for ranges lower 1 day

* fixed Date type number
2024-11-19 08:57:08 +01:00
renovate[bot] 9acf946097 Update dependency @bundle-stats/plugin-webpack-filter to v4.17.0 (#22869)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-19 08:40:32 +01:00
renovate[bot] 231ef4b5b4 Lock file maintenance (#22873)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-19 06:25:02 +01:00
renovate[bot] f8bcc6dde4 Pin dependency globals to 15.12.0 (#22858)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-18 16:55:18 +00:00
dependabot[bot] 11ed4600fd Bump http-proxy-middleware from 2.0.6 to 2.0.7 (#22865)
Bumps [http-proxy-middleware](https://github.com/chimurai/http-proxy-middleware) from 2.0.6 to 2.0.7.
- [Release notes](https://github.com/chimurai/http-proxy-middleware/releases)
- [Changelog](https://github.com/chimurai/http-proxy-middleware/blob/v2.0.7/CHANGELOG.md)
- [Commits](https://github.com/chimurai/http-proxy-middleware/compare/v2.0.6...v2.0.7)

---
updated-dependencies:
- dependency-name: http-proxy-middleware
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-18 16:42:37 +00:00
dependabot[bot] c0e2d6fa23 Bump cross-spawn from 7.0.3 to 7.0.6 (#22864)
Bumps [cross-spawn](https://github.com/moxystudio/node-cross-spawn) from 7.0.3 to 7.0.6.
- [Changelog](https://github.com/moxystudio/node-cross-spawn/blob/master/CHANGELOG.md)
- [Commits](https://github.com/moxystudio/node-cross-spawn/compare/v7.0.3...v7.0.6)

---
updated-dependencies:
- dependency-name: cross-spawn
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-18 16:41:46 +00:00
renovate[bot] 942562161a Update dependency @codemirror/view to v6.34.3 (#22863)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-18 16:33:20 +00:00
renovate[bot] d35c40b585 Update dependency globals to v15 (#22861)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-18 17:23:13 +01:00
renovate[bot] 8cd0ddceb8 Update dependency eslint to v9.14.0 (#22859)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-18 17:22:09 +01:00
dependabot[bot] c3ee49298a Bump @eslint/plugin-kit from 0.2.0 to 0.2.3 (#22860)
Bumps [@eslint/plugin-kit](https://github.com/eslint/rewrite) from 0.2.0 to 0.2.3.
- [Release notes](https://github.com/eslint/rewrite/releases)
- [Changelog](https://github.com/eslint/rewrite/blob/main/release-please-config.json)
- [Commits](https://github.com/eslint/rewrite/compare/core-v0.2.0...plugin-kit-v0.2.3)

---
updated-dependencies:
- dependency-name: "@eslint/plugin-kit"
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-18 17:21:07 +01:00
Simon Lamon 89dc1a7ebc ESLint Flat Config (#22221)
* Flat config file

* Plugin

* prettier

* Set eslint to latest version (non dev)

* yarn dedupe

* push changes from eslint type pr

* dedupe
2024-11-18 15:49:59 +01:00
Wendelin ced70fd9a1 Fix 2fa login validation, add autofocus to login (#22856) 2024-11-18 15:25:51 +02:00
Simon Lamon 253c8f358b Logbook target picker (#22851)
Logbook picker
2024-11-18 14:19:17 +01:00
Paul Bottein 23b55484c3 Improve grid size editor (#22697)
* Use table instead of grid

* Add animation

* Change size

* Simplify precideMode logic

* Add tooltip and improve slider style

* Improve size

* Back to default instead of min

* Limit number of cells for the grid when more than 24 cells
2024-11-18 09:43:52 +01:00
dependabot[bot] 1990b8fa84 Bump softprops/action-gh-release from 2.0.9 to 2.1.0 (#22854)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-18 08:54:58 +01:00
Paul Bottein 03ea08f98c Create a section when dropping card on the create section button (#22790)
* Create a section when dropping card on the create section button

* Add translations

* Add title by default

* And case when moving a heading card
2024-11-18 08:53:01 +02:00
Matt Way 1f5f6c5f8a Fix back gesture on Android activating buttons (#22852)
Touchcancel event cancels touch regardless of cancelled flag

Co-authored-by: Benjamin Paul <benjamin.ian.paul@gmail.com>
2024-11-17 16:55:43 +00:00
renovate[bot] fa821b1c4f Update dependency @types/chromecast-caf-receiver to v6.0.18 (#22849)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-17 17:47:56 +01:00
karwosts f51bc40203 Catch yaml errors in script editor (#22853) 2024-11-17 15:09:03 +00:00
renovate[bot] c7dae49c42 Update dependency marked to v15 (#22782)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-16 18:23:45 +01:00
Joost Lekkerkerker b056b71557 Only download verified translations (#22844) 2024-11-16 13:20:06 +01:00
dependabot[bot] 0db2b45cc3 Bump cross-spawn from 7.0.3 to 7.0.5 (#22843)
Bumps [cross-spawn](https://github.com/moxystudio/node-cross-spawn) from 7.0.3 to 7.0.5.
- [Changelog](https://github.com/moxystudio/node-cross-spawn/blob/master/CHANGELOG.md)
- [Commits](https://github.com/moxystudio/node-cross-spawn/compare/v7.0.3...v7.0.5)

---
updated-dependencies:
- dependency-name: cross-spawn
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-16 10:16:36 +01:00
renovate[bot] 1be1003549 Update dependency @codemirror/autocomplete to v6.18.3 (#22842)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-16 09:02:45 +01:00
Petar Petrov b8a13dd6eb ZWaveJS: Add names to colors in Installer Settings (#22819) 2024-11-15 17:55:02 +01:00
Petar Petrov cae5540c44 ZWaveJS: Configuration.resetAll is only supported on CC v4+ (#22823) 2024-11-15 17:40:38 +01:00
karwosts d47966cdf7 Allow attaching additional data to schedule in UI (#22798)
* Allow attaching additional data to schedule in UI

* use expandable
2024-11-15 18:13:04 +02:00
renovate[bot] 991cf83ff3 Update dependency @babel/helper-define-polyfill-provider to v0.6.3 (#22829)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-15 12:00:34 +01:00
Simon Lamon b83be38514 Introduce calendar trigger description (#22814) 2024-11-14 09:28:15 +02:00
Simon Lamon 17982e0bdc Fix swapped plural and singular match use in and condition (#22815)
* Fix swapped plural and singular match

* Test if => if
2024-11-14 09:11:20 +02:00
Simon Lamon b918862bb1 Confirm uses to if for clarity (#22816) 2024-11-14 09:08:54 +02:00
ildar170975 6bdc7af09f Add outline to a label (3) - consistency (#22812)
Update ha-config-labels.ts
2024-11-14 09:05:01 +02:00
ildar170975 7cbebfd603 Add outline to a label (2) (#22803)
* Update ha-filter-labels.ts

* Update ha-automation-picker.ts

* Update ha-scene-dashboard.ts

* Update ha-script-picker.ts

* Update ha-config-devices-dashboard.ts

* Update ha-config-entities.ts

* Update ha-config-helpers.ts

* Update ha-filter-labels.ts

* Update ha-automation-picker.ts

* Update ha-config-devices-dashboard.ts

* Update ha-config-helpers.ts

* Update ha-script-picker.ts

* Update ha-scene-dashboard.ts

* Update ha-config-entities.ts

* Update ha-data-table-labels.ts

* Update ha-label.ts

* Update ha-label.ts
2024-11-13 16:05:03 +00:00
Petar Petrov 42b1f938d6 Increase ZwaveJS add device timeout to 5 mins (#22809) 2024-11-13 16:13:29 +01:00
boern99 311f221387 Add describeCondition and entity_ids as additional information to automation step details (#21965)
* Add describeCondition and entity_ids as additional information to automation step details

* Update src/components/trace/ha-trace-path-details.ts

Co-authored-by: Petar Petrov <MindFreeze@users.noreply.github.com>

* tested suggestions

* Update src/components/trace/ha-trace-path-details.ts

Co-authored-by: Petar Petrov <MindFreeze@users.noreply.github.com>

* Update src/components/trace/ha-trace-path-details.ts

Co-authored-by: Petar Petrov <MindFreeze@users.noreply.github.com>

* code style fixes

---------

Co-authored-by: Petar Petrov <MindFreeze@users.noreply.github.com>
2024-11-13 14:30:29 +02:00
ildar170975 3c6be8cf99 Fix visibility for shown entities on device card (#22579)
* Update ha-device-entities-card.ts

* Update ha-device-entities-card.ts

* Update src/panels/config/devices/device-detail/ha-device-entities-card.ts

Co-authored-by: Wendelin <12148533+wendevlin@users.noreply.github.com>

* Update ha-device-entities-card.ts

* Update src/panels/config/devices/device-detail/ha-device-entities-card.ts

Co-authored-by: Wendelin <12148533+wendevlin@users.noreply.github.com>

* Update ha-device-entities-card.ts

* Update src/panels/config/devices/device-detail/ha-device-entities-card.ts

Co-authored-by: Wendelin <12148533+wendevlin@users.noreply.github.com>

* Update ha-device-entities-card.ts

* Update ha-device-entities-card.ts

---------

Co-authored-by: Wendelin <12148533+wendevlin@users.noreply.github.com>
2024-11-13 07:56:58 +01:00
karwosts 28703b39da Allow entities table to delete helpers (#22248)
* Allow deleting helpers in entities table

* Fix calling the right delete on restored legacy helpers
2024-11-12 18:16:24 +00:00
Petar Petrov db03e271f5 ZWaveJS: Color Switch support fot the expert UI (#22722)
* ZWaveJS: Color Switch support fot the expert UI

* remove debug code

* fix stopTransition options

* fix options format
2024-11-12 18:21:45 +01:00
AlCalzone 7c851d4542 Z-Wave JS: Fix validation/parsing for custom config param UI (#22789)
* Z-Wave JS: Fix validation/parsing for custom config param UI

* Apply suggestions from code review

Co-authored-by: Bram Kragten <mail@bramkragten.nl>

---------

Co-authored-by: Petar Petrov <MindFreeze@users.noreply.github.com>
Co-authored-by: Bram Kragten <mail@bramkragten.nl>
2024-11-12 14:57:32 +00:00
Jan-Philipp Benecke 4d107f978c Add download snapshot button to camera more info dialog (#22704)
* Add take snapshot button to camera more info dialog

* Change to download

* Use camera proxy

* Remove filename to have right extension

* Add error handling and process indication

* Update src/dialogs/more-info/controls/more-info-camera.ts

Co-authored-by: Petar Petrov <MindFreeze@users.noreply.github.com>

* Run prettier

---------

Co-authored-by: Petar Petrov <MindFreeze@users.noreply.github.com>
2024-11-12 12:59:29 +02:00
karwosts de57b025e6 Warn on switching to automation UI mode with yaml errors (#22780) 2024-11-12 12:47:12 +02:00
renovate[bot] 3f4351476f Update vaadinWebComponents monorepo to v24.5.3 (#22779)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-11 17:06:31 +01:00
karwosts d763a014ad Show YAML parsing errors in automation editor (#22753)
* Show YAML parsing errors in automation editor

* make dirty on error

* formatting
2024-11-11 15:40:20 +00:00
Petar Petrov 52a91d8403 Allow GET/SET custom config param in Z-Wave device configuration (#22364)
* Allow GET/SET custom config param in Z-Wave device configuration

* update api calls and validation

* update imports

* fix import

* PR review comments

* fix import

* fix merge error

* fix merge
2024-11-11 08:50:13 +01:00
Petar Petrov f6cc435f86 More flexible translation keys for logbook binary sensors (#22696)
* Revert "Revert "More flexible translation keys for logbook binary sensors" (#22687)"

This reverts commit c3b7ce8dc4.

* fix type issue
2024-11-11 08:39:11 +01:00
dependabot[bot] 349b1ccaad Bump home-assistant/wheels from 2024.07.1 to 2024.11.0 (#22774) 2024-11-11 08:17:16 +01:00
Paulus Schoutsen ca921be9d2 CSS Fixes for md-dialog (#22638)
* CSS Fixes for md-dialog

* Update src/components/ha-md-dialog.ts

---------

Co-authored-by: Wendelin <12148533+wendevlin@users.noreply.github.com>
2024-11-11 07:11:58 +00:00
Simon Lamon 919932e414 Improve choose description in automation editor (#22769) 2024-11-10 21:11:48 +01:00
Simon Lamon 97a8b6da34 Fix calendar add/edit event dialogs not saving via keyboard (#22767) 2024-11-10 20:18:59 +01:00
renovate[bot] 1eceaa0d1b Update dependency marked to v14.1.4 (#22768)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-10 20:10:57 +01:00
renovate[bot] ba3fae2577 Update dependency barcode-detector to v2.3.1 (#22763)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-10 15:51:14 +01:00
renovate[bot] 93ed1cae5e Update dependency comlink to v4.4.2 (#22761)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-10 15:34:45 +01:00
Adam Jež d8618b4a25 Fix typo in Czech language for blank before percent (#22760) 2024-11-10 12:30:07 +01:00
Simon Lamon 1f6b0360de Collection of localization issues (2) (#22758)
* Clarify delay action

* Change order

* Add translations for "line" and "bar"
2024-11-10 10:58:04 +00:00
karwosts e1830470b6 Better disabled/error handling on config/helpers page (#22237)
* Add a way to fix/remove broken helpers

* more disabled/sources fixes

* Update src/translations/en.json

Co-authored-by: Simon Lamon <32477463+silamon@users.noreply.github.com>

* Update ha-config-helpers.ts

---------

Co-authored-by: Simon Lamon <32477463+silamon@users.noreply.github.com>
2024-11-10 00:40:49 +01:00
renovate[bot] 9e002f7940 Update dependency webpackbar to v7 (#22752)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-09 16:43:33 +01:00
renovate[bot] a1380e93ea Update dependency barcode-detector to v2.3.0 (#22743)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-08 20:16:20 +01:00
renovate[bot] c511672b0d Update dependency barcode-detector to v2.2.12 (#22741)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-08 17:23:28 +00:00
renovate[bot] d6d6d1d0b5 Update formatjs monorepo (#22728)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-08 18:10:48 +01:00
Wendelin bee629f7ed Improve stream and iOS checks in error-log-card (#22738)
Improve stream and download checks in error-log-card
2024-11-08 12:59:35 +00:00
Bram Kragten 188fe44c2e Bumped version to 20241106.2 2024-11-08 13:01:19 +01:00
Wendelin 25c02b1219 Fix live-logs loading (#22737) 2024-11-08 13:00:40 +01:00
Wendelin e5e84acd07 Fix join-beta text (#22733) 2024-11-08 13:00:40 +01:00
tzagim 722ccc017f Fix for RTL languages in logs (#22727)
Fix for RTL Languages (log)
2024-11-08 13:00:39 +01:00
Wendelin d8df380edc Add reset to default to zwave node config (#21991)
* Add reset to default to zwave node config

* use invoke_cc_api instead of a new API

---------

Co-authored-by: Petar Petrov <MindFreeze@users.noreply.github.com>
2024-11-08 11:53:22 +00:00
Wendelin cbfcad71d5 Fix live-logs loading (#22737) 2024-11-08 12:39:21 +01:00
renovate[bot] 327a9ff836 Update CodeMirror (#22732)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-08 13:05:04 +02:00
dependabot[bot] ae2c389273 Bump http-proxy-middleware from 2.0.6 to 2.0.7 (#22731)
Bumps [http-proxy-middleware](https://github.com/chimurai/http-proxy-middleware) from 2.0.6 to 2.0.7.
- [Release notes](https://github.com/chimurai/http-proxy-middleware/releases)
- [Changelog](https://github.com/chimurai/http-proxy-middleware/blob/v2.0.7/CHANGELOG.md)
- [Commits](https://github.com/chimurai/http-proxy-middleware/compare/v2.0.6...v2.0.7)

---
updated-dependencies:
- dependency-name: http-proxy-middleware
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-08 11:01:31 +01:00
Wendelin 5ce75cea0d Fix join-beta text (#22733) 2024-11-08 11:00:54 +01:00
Simon Lamon ee79c3a983 Remove rollup build configuration (#22181)
Rollup remove
2024-11-08 10:19:52 +02:00
tzagim f396be2ed7 Fix for RTL languages in logs (#22727)
Fix for RTL Languages (log)
2024-11-08 10:16:42 +02:00
Bram Kragten 8a4b96f1ff Bumped version to 20241106.1 2024-11-07 21:40:38 +01:00
Paul Bottein 17b6bf0673 Enable auto-scroll for drag and drop (#22725) 2024-11-07 21:39:45 +01:00
Bram Kragten 387392713c move download logs button, switch between raw and normal logs (#22721) 2024-11-07 21:39:44 +01:00
Wendelin 125ad9c794 Fix logs live-indicator on older boots (#22719) 2024-11-07 21:39:43 +01:00
Bram Kragten ae33b10cb2 Add support for helper text in form boolean (#22711) 2024-11-07 21:39:43 +01:00
Wendelin 1181ddcbbf Fix hassio logs for core < 2024.11 (#22708) 2024-11-07 21:39:42 +01:00
Paul Bottein f7103febdf Fix typo for fixed background attribute (#22707) 2024-11-07 21:39:41 +01:00
Bram Kragten 6e8c1f1a63 Update value of password field on change event (#22706) 2024-11-07 21:39:40 +01:00
Bram Kragten 9f55ef811d move download logs button, switch between raw and normal logs (#22721) 2024-11-07 21:32:28 +01:00
Paul Bottein 4c898a2a5a Enable auto-scroll for drag and drop (#22725) 2024-11-07 17:33:18 +01:00
Wendelin a56e22790d Fix logs live-indicator on older boots (#22719) 2024-11-07 14:50:24 +01:00
renovate[bot] 2d8fbc652f Update vaadinWebComponents monorepo to v24.5.2 (#22709)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-07 14:00:50 +02:00
Bram Kragten 46f0e0212d Add support for helper text in form boolean (#22711) 2024-11-07 09:09:24 +00:00
Bram Kragten 786b9ee8d6 Update value of password field on change event (#22706) 2024-11-07 09:53:34 +01:00
Wendelin 1e73cebda6 Fix hassio logs for core < 2024.11 (#22708) 2024-11-07 09:45:58 +01:00
Paul Bottein 9b9adf3c7a Fix typo for fixed background attribute (#22707) 2024-11-07 08:40:18 +00:00
renovate[bot] a08c7a319f Update formatjs monorepo (#22681)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-07 08:52:53 +02:00
Petar Petrov 5e8868e4b1 Fix import type linter issues (#22702) 2024-11-07 06:39:30 +00:00
Bram Kragten 64285d5155 Add zwave expert UI / Installer settings (#21897)
* Add zwave expert UI / Installer settings

* Fix zwave invoceCC api function name

* Fix function calls of invokeZWaveCCApi

* Add zwave node-installer translations and endpoint separation

* Add zwave capability-control error handling, translations and thermostat setback

* Fix zwave capability thermostat setback

---------

Co-authored-by: Wendelin <w@pe8.at>
2024-11-07 08:00:51 +02:00
Bram Kragten ce39b1a2c8 20241106.0 (#22695) 2024-11-06 14:05:23 +01:00
Bram Kragten 5247b74fd4 Bumped version to 20241106.0 2024-11-06 13:43:57 +01:00
Wendelin 26e914290d Fix hassio logs translations (#22693)
Co-authored-by: Bram Kragten <mail@bramkragten.nl>
2024-11-06 12:33:45 +00:00
Wendelin ed3096157c Fix logs overflow when there are 0 boots (#22694) 2024-11-06 13:19:17 +01:00
Simon Lamon 04a45a4361 Fix action descriptions switch to English when using search (#22689)
* var mistake

* Update src/panels/config/automation/add-automation-element-dialog.ts

* prettier
2024-11-06 11:17:36 +01:00
Paul Bottein 5430040b96 Fix update more info margin (#22691) 2024-11-06 11:17:14 +01:00
Wendelin 4bd70167ad Add overflow menu to error-log-card (#22684)
* Add overflow menu to error-log-card

* Add toggle line wrap icon-button in error-log-card
2024-11-06 09:59:01 +00:00
Wendelin e908fbb48e Check for empty logs (#22675)
* Fix download logs default lines + translations + iOS, add live logs indicator

* Fix rtl in error-log-card

* Fix downloadFileSupported
2024-11-06 09:42:46 +00:00
Paul Bottein 38da01abfa Fix icon click in edit card overflow (#22686) 2024-11-06 09:42:38 +00:00
Paul Bottein c3b7ce8dc4 Revert "More flexible translation keys for logbook binary sensors" (#22687)
Revert "More flexible translation keys for logbook binary sensors (#22257)"

This reverts commit df3e4576db.
2024-11-06 09:30:19 +00:00
Simon Lamon 0488d199ac Localize automation logbook text (#22685)
* localize automation text

* localize domain

* fixup

* split up

* fixup

* prettier
2024-11-06 09:03:41 +00:00
karwosts df3e4576db More flexible translation keys for logbook binary sensors (#22257) 2024-11-06 10:55:17 +02:00
Paul Bottein 6bd7788815 Use grid options instead of layout options for all cards. (#22676)
* Use grid options for all cards

* Improve min columns for some cards

* Fix button and area card
2024-11-05 18:58:19 +01:00
Paul Bottein a6971d61d1 20241105.0 (#22679) 2024-11-05 18:47:04 +01:00
Paul Bottein 9cdae4fea7 Bumped version to 20241105.0 2024-11-05 18:46:16 +01:00
Bram Kragten 7adf9f8526 fix height of header table rows (#22678) 2024-11-05 16:13:52 +00:00
Bram Kragten 35dcb46703 Group stream picking logic (#22674)
* Group stream picking logic

* MJPEG too

* handle errors when 1 stream type

* correct import

* change to array

* Update ha-camera-stream.ts

* Update ha-camera-stream.ts

* Update ha-camera-stream.ts

* rename
2024-11-05 14:33:34 +00:00
Bram Kragten 17db85ebad Migrate select in md-dialog to md-select (#22670)
* Migrate select in md-dialog to md-select

* Fix md-select in es5 md-dialogs

---------

Co-authored-by: Wendelin <w@pe8.at>
2024-11-05 15:24:09 +01:00
Petar Petrov fa39595c37 Fix scanning of small QR codes with JS (#22651)
* Fix scanning of small QR codes with JS

* fix filename

* fix qr error and add device button

* fix yarn.lock
2024-11-05 16:00:05 +02:00
Bram Kragten 4db908171f Restrict webrtc logging to dev (#22671)
restrict webrtc logging to dev
2024-11-05 12:33:36 +01:00
Paulus Schoutsen 7306b8c102 Remove sections blog post link (#22663) 2024-11-05 06:07:27 +01:00
Bram Kragten 452cfee2cd Merge branch 'dev' 2024-11-04 19:04:13 +01:00
Bram Kragten 928bf3465e Bumped version to 20241104.0 2024-11-04 19:03:40 +01:00
Wendelin 0b38143765 Fix load older logs at boot 0 in error-log-card (#22657)
* Fix load older logs at boot 0 in error-log-card

* Refactor fetch boot logs in error-log-card

* Refactor download url boot logs in error-log-card
2024-11-04 16:36:25 +00:00
Bram Kragten 2f974078e0 Only show webrtc if it has video (#22659) 2024-11-04 16:34:08 +00:00
Bram Kragten efe90fcc55 Show error when using wrong username format during onboarding (#22658) 2024-11-04 16:23:32 +00:00
renovate[bot] 01e33f5412 Update dependency webpack to v5.96.1 (#22655)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-04 14:35:51 +01:00
Bram Kragten 51fdc484c3 Update voice wizard animations (#22656) 2024-11-04 13:11:35 +01:00
Paul Bottein 3d9fa462a6 Improve imported card container style (#22653) 2024-11-04 12:31:22 +01:00
Paul Bottein 32b5d67806 Fix create backup toggle ignored (#22652) 2024-11-04 11:27:04 +01:00
Paulus Schoutsen 20d3681da3 Delay loading IndexedDB to when first icon is requested (#22637) 2024-11-04 11:26:45 +01:00
Paulus Schoutsen 9b97274bf6 CSS Fixes for hui-energy-date-selection-card (#22640)
* CSS Fixes for hui-energy-date-selection-card

* Remove unused class

---------

Co-authored-by: Paul Bottein <paul.bottein@gmail.com>
2024-11-04 09:46:21 +00:00
Paulus Schoutsen ede0dff030 CSS Fixes for ha-toast (#22639) 2024-11-04 10:29:58 +01:00
Simon Lamon 4cd4635fa5 Collection of localization issues (#22615)
* Fix wrong use of 'zero' in ICU formatted string for condition headlines

* Matter: Use setup code consistently

* Matter: Share from Google Home dialog

* Remove question format for settings toggles

* Add translation for current add-on version:" in add-on details

* Missing space

* Localize integration name not localized in single_config_entry alert

* Reword start into restart to indicate that the addon restarts when it crashes

* Rephrase rename description

* localize migrate script / automation

* Fixup script translation
2024-11-04 08:00:27 +01:00
renovate[bot] 7832219749 Update dependency @codemirror/search to v6.5.7 (#22647)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-04 08:51:06 +02:00
dependabot[bot] a8d4726caf Bump relative-ci/agent-action from 2.1.12 to 2.1.13 (#22648) 2024-11-04 07:26:16 +01:00
dependabot[bot] 4b3e20c6ca Bump softprops/action-gh-release from 2.0.8 to 2.0.9 (#22649) 2024-11-04 07:25:44 +01:00
karwosts f9a53743ce Make duration input clearable (#22614) 2024-11-04 08:25:09 +02:00
G Johansson 89250c0c01 Render preview based of entity domain (#21926)
* Render preview based of entity domain

* Add some more

* More

* return string

* Final

* Add image

* Sort

* Missing format
2024-11-04 08:07:12 +02:00
karwosts 4ef944ea08 Fix map zone focus issues (#22623) 2024-11-04 07:58:13 +02:00
renovate[bot] 5f58c183f4 Update dependency webpack to v5.96.0 (#22645)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-04 07:44:41 +02:00
renovate[bot] f71feff916 Update dependency core-js to v3.39.0 (#22636)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-03 07:12:27 +01:00
renovate[bot] 50fb3b314b Update dependency mocha to v10.8.2 (#22633)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-02 21:07:53 +01:00
renovate[bot] 06298562cd Update dependency @codemirror/autocomplete to v6.18.2 (#22632)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-02 21:07:25 +01:00
renovate[bot] 89e74f3f07 Update dependency mocha to v10.8.1 (#22629)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-01 22:12:25 +01:00
renovate[bot] da96c27893 Update dependency mocha to v10.8.0 (#22627)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-01 21:41:09 +01:00
renovate[bot] 3321dd4ca7 Update workbox monorepo to v7.3.0 (#22626)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-01 20:21:23 +01:00
Josh McCarty 7106d56b33 Fix NFS proper name (#22620) 2024-11-01 08:53:00 +01:00
ildar170975 25cd8a9d9f Revert height=100% in horizontal-stack-card (#22617)
Update hui-horizontal-stack-card.ts
2024-10-31 20:12:32 +00:00
Paul Bottein deb077b5e9 20241031.0 (#22613) 2024-10-31 15:14:02 +01:00
Paul Bottein a4bb0e04ab Bumped version to 20241031.0 2024-10-31 15:13:21 +01:00
renovate[bot] 1df60056b2 Update dependency chart.js to v4.4.6 (#22612)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-31 13:57:45 +00:00
Paul Bottein c4bc1f627f Remove get layout options warning in console (#22611) 2024-10-31 13:48:21 +00:00
Wendelin f4df5852fb Fix hassio repositories tooltip (#22610) 2024-10-31 13:43:51 +00:00
Wendelin 152b665f2e Fix hassio backups translations (#22609)
* Fix hassio backup styling

* Add missing hassio backups data-table translations
2024-10-31 13:57:40 +01:00
Paul Bottein f1d49aaeb1 Add theme variable for text in heading badge, fix font family (#22606) 2024-10-31 13:45:42 +01:00
Paul Bottein 5db293ce01 Use entity instead of entity_id for more info action (#22603) 2024-10-31 12:59:23 +01:00
Wendelin 744cda3974 Add fallback for missing logs boot result. (#22600)
* Add fallback for missing logs boot result.

* Add fallback for logs full download when boots are missing

* Fix function naming and single boot select in error-log-card
2024-10-31 08:57:27 +01:00
Paul Bottein 79e223cf8e 20241030.0 (#22599) 2024-10-30 16:35:54 +01:00
Paul Bottein eb8d23320a Merge branch 'master' into dev 2024-10-30 16:23:21 +01:00
Bram Kragten 7bfa72e7ac Update voice wizard (#22472) 2024-10-30 16:19:35 +01:00
Wendelin 031548c155 Fix old safari but for relative time (#22457) 2024-10-30 16:18:22 +01:00
Bram Kragten a7d3ab9d17 Fix and update step flow create (#22223)
* Fix and update step flow create

* cleanup
2024-10-30 16:17:48 +01:00
David F. Mulcahey d2e00a0f0a Fix ZHA group dashboard display on mobile (#22279) 2024-10-30 16:16:58 +01:00
Paul Bottein eea9e660ac Bumped version to 20241030.0 2024-10-30 15:58:05 +01:00
Krisjanis Lejejs 5644c78664 Add setting for enableing/disabling cloud ICE servers (#22527)
* Add setting for enable/disable cloud ICE servers

* Fix copytexts, feature URL, refactor variable

* imports

* Use toast instead of alert

---------

Co-authored-by: Bram Kragten <mail@bramkragten.nl>
Co-authored-by: Paul Bottein <paul.bottein@gmail.com>
2024-10-30 14:05:41 +00:00
Bram Kragten 7677471dcc update gifs 2024-10-30 14:51:50 +01:00
Paul Bottein c0ca7e425e Add precise resizing mode for card inside section (#22366)
* Allow to resize card in the grid with more precision

* Use 12 columns grid

* Fix cursor jump when dragging slider

* Remove precision mode

* Add precise mode switch

* Add switch between regular and precise mode

* Fix prettier

---------

Co-authored-by: Simon Lamon <32477463+silamon@users.noreply.github.com>
2024-10-30 13:35:28 +00:00
Paul Bottein 29d9b61319 Allow to convert a view to sections view (#22594)
* Add imported cards in section view

* Add convert logic

* Improve editor

* Fix type

* Use imported container for individual card move

* Fix type import

* Add missing translations

* Feedback
2024-10-30 12:27:12 +00:00
Nicolas Graziano 3c8da03d66 Fix logbook search when live update is disabled (#22284)
When the logbook live update is in pause by scrolling allow to refresh anyway.
2024-10-30 12:19:42 +00:00
karwosts 9a9b2e3900 Don't push a duplicate entry to select selector when filtering (#22578) 2024-10-30 12:34:14 +01:00
Wendelin 830d8d2410 Add type import check to eslint (#22488)
* Add type import check to eslint

* Add type imports with eslint --fix
2024-10-30 11:12:30 +00:00
ildar170975 cda34a6ffd Remove ripple for disabled entities on a device card (#22589)
Update ha-device-entities-card.ts
2024-10-30 11:17:18 +01:00
Bram Kragten 76ee9ce202 update regex for check html (#22596) 2024-10-30 10:08:46 +00:00
Petar Petrov 00bd32acba ZwaveJS: Resume adding a device if the page is refreshed (#22519)
* ZwaveJS: Resume adding a device if the page is refreshed

* tweak code style
2024-10-30 08:59:23 +00:00
Paul Bottein bc11c0b3ac Handle automation and dashboard drag and drop at the element level (#22300)
* Handle drag and drop at action, condition, trigger level

* Clean item path

* Clean item path

* Fix selectors

* Clean selector config

* Remove enhancedSelector

* Add option row component

* Fix DnD inside option sequence or condition

* Add comments

* Remove item path logic from the dashboard too

* Fix floor/area drag and drop

* Avoid UI jump in area dashboard

* Remove unused import

* Add comment
2024-10-30 08:44:38 +00:00
ildar170975 51f89b00c1 Fix height for horizontal-stack-card (#22593)
Update hui-horizontal-stack-card.ts
2024-10-30 09:47:03 +02:00
Bram Kragten 67852125e5 Try both HLS and webRTC and pick best stream (#22585) 2024-10-29 21:38:22 +01:00
karwosts 7a36cf67e3 Restore disabled entities to the statistics table (#22411) 2024-10-29 15:43:02 +01:00
karwosts d175e84623 Fix an uncaught error in ha-config-entities (#22587) 2024-10-29 15:24:27 +01:00
karwosts 9fff3adbfb Fix an infinite loop in automation numeric_state (#22429) 2024-10-29 15:21:41 +01:00
Petar Petrov 5f6396b187 Show local network URL used in Home Assistant URL settings (#22379)
* Show local network URL used in Home Assistant URL settings

* full width alert

* always display both urls and add copy buttons

* remove mask button when editing

* fix typo

* type fix

* update styling based on comments

* fix bad copy/paste

* Update src/components/ha-settings-row.ts

Co-authored-by: Wendelin <12148533+wendevlin@users.noreply.github.com>

* Update src/panels/config/network/ha-config-url-form.ts

Co-authored-by: Wendelin <12148533+wendevlin@users.noreply.github.com>

* Update src/panels/config/network/ha-config-url-form.ts

Co-authored-by: Wendelin <12148533+wendevlin@users.noreply.github.com>

* PR comment

* remove advanced flag

* make the value handling logic clearer

* move obfuscateUrl to a util function

* PR comments

---------

Co-authored-by: Wendelin <12148533+wendevlin@users.noreply.github.com>
2024-10-29 14:07:18 +00:00
karwosts 42f2341e06 Add 'focus' option to geo_location_sources for map card (#22535)
* Add 'focus' option to geo_location_sources for map card

* visual editor compatibility
2024-10-29 15:32:30 +02:00
ildar170975 48dfa1163b Fix text-align in map marker (#22580)
* Update ha-entity-marker.ts

* Update ha-entity-marker.ts

* Update ha-entity-marker.ts
2024-10-29 14:22:05 +01:00
PukNgae Cryolitia 28e12f7fd1 fix(data-range-picker): select element is hard to read in dark mode (#22479) 2024-10-29 12:04:39 +01:00
Paul Bottein 5f58ac4fb6 Shrink title space on mobile if needed (#21878)
* Shrink title space on mobile if needed

* Add multiline ellipsis

* Update src/layouts/hass-subpage.ts

Co-authored-by: Wendelin <12148533+wendevlin@users.noreply.github.com>

---------

Co-authored-by: Wendelin <12148533+wendevlin@users.noreply.github.com>
2024-10-29 09:38:31 +00:00
ildar170975 25e7c4f1b2 Fix a disabled entity row's height on a device card (#22577)
Update ha-device-entities-card.ts
2024-10-29 10:06:01 +01:00
ildar170975 00934f2183 Fix margins for disabled entities on a device card (#22576)
Update ha-device-entities-card.ts
2024-10-29 10:57:02 +02:00
Paul Bottein d302eaffe6 Add fixed background support in iOS and improve the way we set view background (#22531)
* Add fixed background support in iOS and improve the way we set view background

* Fix cast
2024-10-29 09:17:06 +01:00
Paul Bottein 901f736d5f Improve more info update release note display (#22502)
* Fix ha-settings-row

* Improve update more info and update available card

* Set actions at the bottom on mobile

* Use update instead of install

* Improve markdown loaded
2024-10-29 09:16:02 +01:00
Wendelin e55f32ae91 Fallback to formatjs pt for brazilian pt (#22570)
* Fallback to formatjs pt for brazilian pt

* Update build-scripts/gulp/locale-data.js

Co-authored-by: Paul Bottein <paul.bottein@gmail.com>

---------

Co-authored-by: Paul Bottein <paul.bottein@gmail.com>
2024-10-29 08:50:21 +01:00
Jan-Philipp Benecke 3e0c998e74 Show loading spinner when waiting for backups (re)load (#22485) 2024-10-29 09:38:13 +02:00
karwosts 597866ff4e Preserve device elements in automation when device is missing (#22521)
* Preserve device elements in automation when device is missing

* lint
2024-10-29 09:37:46 +02:00
karwosts 64e21e185c Add a geo_location selector to map editor (#22538)
* Add a geo_location selector to map editor

* delete unused
2024-10-29 09:36:58 +02:00
ildar170975 7a1838ee1a Fix misalignment on "create person" page (#22574)
Update ha-config-person.ts
2024-10-28 22:09:35 +01:00
ildar170975 4debac60ae Fix header title padding (#22568)
* Update ha-header-bar.ts

* Update ha-top-app-bar-fixed.ts

* Update ha-two-pane-top-app-bar-fixed.ts
2024-10-28 22:09:09 +01:00
renovate[bot] 4af231e62b Update babel monorepo to v7.26.0 (#22571)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-28 21:45:36 +01:00
ildar170975 432cf4a7ed Add outline to a labels (#22392)
* Update ha-data-table-labels.ts

* Update ha-labels-picker.ts

* Update ha-config-labels.ts

* Update ha-labels-picker.ts
2024-10-28 20:14:05 +02:00
karwosts df064967ca Fix enable checkbox in service field subsections (#22299)
* Fix enable checkbox in service field subsections

* fix bug
2024-10-28 17:54:36 +01:00
Wendelin dc0cab9307 Add select prev boots in error-log-card (#22528)
* Add select prev boots in error-log-card

* Fix boot selector style in error-log-card
2024-10-28 16:41:21 +01:00
Paul Bottein 3180747a0a Show buttons in cover and valve more info if it supports position (#22569)
* Show buttons in cover more info if the cover supports position

* Same for valve

* Refactor
2024-10-28 15:33:12 +00:00
Bram Kragten 1542095138 Make web rtc player ice resolving async (#22312)
* Make web rtc player ice resolving async

* rename getCandidatesUpfront

* dont send empty candidates, catch answer when signalingState is stable

* Update src/components/ha-web-rtc-player.ts

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>

* review

* Update ha-web-rtc-player.ts

---------

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2024-10-28 15:49:43 +01:00
Paul Bottein 6c1937f247 Allow to move card from other view to section view (#22399)
* Allow to move card from other view to section view

* Update src/panels/lovelace/components/hui-card-options.ts

Co-authored-by: Wendelin <12148533+wendevlin@users.noreply.github.com>

* Move to dedicated section

* Feedbacks

* Update src/translations/en.json

Co-authored-by: Wendelin <12148533+wendevlin@users.noreply.github.com>

---------

Co-authored-by: Wendelin <12148533+wendevlin@users.noreply.github.com>
2024-10-28 14:43:47 +00:00
karwosts 9db1e52a55 Add confirmations to some interactive entity-rows (#21453) 2024-10-28 13:09:41 +01:00
renovate[bot] f92c63135c Update formatjs monorepo (#22562)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-28 12:19:45 +01:00
dependabot[bot] a3bf1a014b Bump actions/cache from 4.1.1 to 4.1.2 (#22564)
Bumps [actions/cache](https://github.com/actions/cache) from 4.1.1 to 4.1.2.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](https://github.com/actions/cache/compare/v4.1.1...v4.1.2)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-28 12:19:14 +01:00
dependabot[bot] 31fba48ad5 Bump actions/setup-node from 4.0.4 to 4.1.0 (#22565)
Bumps [actions/setup-node](https://github.com/actions/setup-node) from 4.0.4 to 4.1.0.
- [Release notes](https://github.com/actions/setup-node/releases)
- [Commits](https://github.com/actions/setup-node/compare/v4.0.4...v4.1.0)

---
updated-dependencies:
- dependency-name: actions/setup-node
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-28 12:18:35 +01:00
Gabe Dunn 05dfa1bb1a Add hold_action to Tile card's visual config editor (#22042)
* Add hold_action to tile card's visual config editor

* Set hold_action default action to 'none'
2024-10-28 09:53:47 +01:00
dependabot[bot] f0f47aac3b Bump actions/checkout from 4.2.1 to 4.2.2 (#22563) 2024-10-28 08:32:08 +01:00
karwosts 9b42494667 Fix configStruct for conditional entities row (#22543) 2024-10-28 08:25:03 +01:00
renovate[bot] 42df951f89 Update vaadinWebComponents monorepo to v24.5.1 (#22545)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-26 22:18:30 +02:00
renovate[bot] f4996424a2 Update dependency chai to v5.1.2 (#22544)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-26 22:18:07 +02:00
karwosts fd01302d9a Fix a crash in compute-unused-entities (#22549) 2024-10-26 22:17:20 +02:00
renovate[bot] 2daaa1cb9c Update dependency @types/leaflet to v1.9.14 (#22540)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-26 00:58:27 +02:00
Paul Bottein 9fde175c6b Set "add card" button width to 1 (#22532) 2024-10-25 18:11:51 +02:00
renovate[bot] f1b24e847e Update babel monorepo to v7.25.9 (#22534)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-25 18:02:52 +02:00
Erik Montnemery 7a587de54e Add support for update entity's display_precision state attribute (#22470) 2024-10-25 16:56:31 +02:00
shodhan-rai eb69f95f83 Streamline condition summary messages in automation editor (#22497)
Fix issue #22478: Changed as requested
2024-10-24 18:42:55 +02:00
shodhan-rai 359a3a4af9 Update picture glance card descriptions (#22501) 2024-10-24 18:23:48 +02:00
renovate[bot] a8b75e7814 Update formatjs monorepo (#22520)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-24 17:53:04 +02:00
renovate[bot] 2b898822d1 Update dependency @codemirror/commands to v6.7.1 (#22516)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-24 15:09:51 +02:00
Petar Petrov fc9a0958d4 Improve Wifi configuration UI (#22471)
* Improve Wifi configuration UI

* some UI tweaks based on comments

* change label and remove DNS on reset

* remove mock code
2024-10-24 10:33:56 +02:00
karwosts 5843877cc8 Fix zwave_js provisioned table for narrow (#22507) 2024-10-24 06:40:42 +02:00
shodhan-rai 913837f064 Fix issue #22495: Corrected the broken grammar (#22499) 2024-10-23 20:15:23 +02:00
shodhan-rai 386ac5d779 Fix issue #22473: Fixed the typo (#22500) 2024-10-23 17:31:59 +02:00
shodhan-rai 3a1a4ade68 Fix issue #22450: Corrected two inaccurate messages (#22496) 2024-10-23 14:08:01 +00:00
Bram Kragten dd35112a04 update gifs 2024-10-23 15:46:00 +02:00
Bram Kragten afcb4c56fa Bumped version to 20241002.4 2024-10-23 15:25:07 +02:00
Bram Kragten 58f210f45b Update voice wizard (#22472) 2024-10-23 15:24:11 +02:00
Wendelin f4d9d55ecd Fix old safari but for relative time (#22457) 2024-10-23 15:21:17 +02:00
Paul Bottein 995955491f Place icon next to the text in control button (#22451) 2024-10-23 15:21:16 +02:00
Wendelin 2ab9aed5b4 Fix integration configure on failed setup (#22407)
* Fix integration configure button when setup failed

* Use ha-button instead of mwc-button in ha-config-integration-page
2024-10-23 15:21:15 +02:00
Bram Kragten 1693f5b5c9 Forward change event in password field (#22377) 2024-10-23 15:21:15 +02:00
karwosts f096e1698c Update devtools/statistics for renamed issue type (#22371) 2024-10-23 15:21:14 +02:00
Wendelin 2f46caa806 Fix tooltip firefox bug in persistent-notification-item (#22363) 2024-10-23 15:21:13 +02:00
Paul Bottein 5c9b53ffb7 Use default font for heading card (#22322) 2024-10-23 15:21:12 +02:00
Bram Kragten f6e00e7262 Fix entity id setting on newly created scripts, handle update of enti… (#22272)
Fix entity id setting on newly created scripts, handle update of entity id
2024-10-23 15:21:11 +02:00
Bram Kragten 5d49f4007e Update voice wizard (#22472) 2024-10-23 15:14:11 +02:00
Wendelin ca20c2d292 Config logs streaming (#22172)
* Add logs follow for error-log-card WIP

* Add stream config logs

* Add new logs indicator to error-log-card

* Add number of lines select for error-log-card

* Add improvements and nr of lines to error-log-card

* Fix error-log-card linter issue

* Use error-log-card in addon views

* Remove unused hassio-addon-logs

* Add backwards compatibility for error-log-card

* Remove version test flag in error-log-card

* Add recovery mode support to error-log-card

* Add search highlight for error-log-card

* Add search, add additional lines to ha-ansi-to-html

* Add infinity load older logs in error-log-card

* Fix hassio-supervisor-log using fetchHassioLogs

* Fix colored lines in ha-ansi-to-html

* Fix search and prevent empty parts in ha-ansi-to-html

* Fix load old logs initially in error-log-card

* Add download log lines dialog

* Fix load logs without stream in error-log-card

* Fix ha-ansi-to-html search

* Add debounce scroll for core provider in error-log-card

* Add hass.callApiRaw

* Fix variable naming for dialog-download-logs

* Improve scroll down wording in error-log-card
2024-10-23 13:07:00 +02:00
Erik Montnemery f1ab24da99 Add support for update entity's update_percentage state attribute (#22453)
* Add support for update entity's update_percentage state attribute

* Update voice assistant wizard
2024-10-23 11:40:21 +02:00
Simon Lamon e16e851952 Fix invalid var references (#22482)
* var-fixes

* Prettier
2024-10-23 09:58:32 +02:00
Paulus Schoutsen 0b562a4b16 Migrate assist device count to satellite entity (#22486) 2024-10-23 09:23:27 +02:00
karwosts 7734922059 Fix a crash in energy csv export (#22476) 2024-10-22 20:10:30 +02:00
Petar Petrov 54320c3dbf Add option to delete add-on config on uninstall (#22268) 2024-10-22 18:30:32 +02:00
Simon Lamon 849cfed669 Reintroduce floor context (#22192) 2024-10-22 16:21:47 +02:00
G Johansson 8932dfd504 Fix Venezuela currency (VEF to VED) (#22475) 2024-10-22 15:27:39 +02:00
Paul Bottein b9922b2f8e Use undo notification when deleting a card or badge (#22414)
* Use undo notification instead of confirmation dialog for cards and badges

* Fix notifications

* Improve deletion functions

* Fix errors

* Fix startup notifications

* Add translation and simplify delete method

* Apply suggestions from code review

Co-authored-by: Wendelin <12148533+wendevlin@users.noreply.github.com>

* Prettier

* Update src/panels/lovelace/editor/delete-badge.ts

---------

Co-authored-by: Wendelin <12148533+wendevlin@users.noreply.github.com>
2024-10-22 13:17:01 +00:00
Wendelin 11fc5bc755 Fix old safari but for relative time (#22457) 2024-10-22 12:25:24 +02:00
karwosts 67ac4882f2 Dont attempt to add devices to disabled zwave config (#22461) 2024-10-22 13:02:29 +03:00
Paul Bottein 413171bb3c Use sections view when creating a new view (#22382)
* Use sections view when creating a new view

* Improve default

* Update src/panels/lovelace/views/default-section.ts

Co-authored-by: Wendelin <12148533+wendevlin@users.noreply.github.com>

* Update src/panels/lovelace/views/get-view-type.ts

Co-authored-by: Wendelin <12148533+wendevlin@users.noreply.github.com>

---------

Co-authored-by: Wendelin <12148533+wendevlin@users.noreply.github.com>
2024-10-22 10:57:15 +02:00
renovate[bot] b111eb2316 Update Yarn to v4.5.1 (#22463)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-21 17:08:12 +00:00
renovate[bot] 9bafabe3e9 Update dependency @types/leaflet to v1.9.13 (#22464)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-21 17:03:08 +00:00
Petar Petrov 202bc6440b Improve IP configuration UI (#22320)
* Split netmask from IP address

* handle ipv6 as well

* render fix

* improved UI for IP, mask & DNS

* remove ip detail dialog

* use `nothing`

Co-authored-by: Paul Bottein <paul.bottein@gmail.com>

* use ha-list-item instead of mwc

---------

Co-authored-by: Paul Bottein <paul.bottein@gmail.com>
2024-10-21 18:49:43 +02:00
Paul Bottein e2a89a55b7 Reduce margin between badges and cards (#22458) 2024-10-21 18:18:56 +02:00
Paul Bottein 1e05730ec7 Place icon next to the text in control button (#22451) 2024-10-21 17:01:00 +02:00
Petar Petrov 885a63d3f6 Improve warnings for insecure zwavejs inclusion (#22456)
* Improve warnings for insecure zwavejs inclusion

* is isNaN

Co-authored-by: Wendelin <12148533+wendevlin@users.noreply.github.com>

* use `nothing`

Co-authored-by: Wendelin <12148533+wendevlin@users.noreply.github.com>

---------

Co-authored-by: Wendelin <12148533+wendevlin@users.noreply.github.com>
2024-10-21 14:05:44 +00:00
Wendelin 206fbac618 Fix integration configure on failed setup (#22407)
* Fix integration configure button when setup failed

* Use ha-button instead of mwc-button in ha-config-integration-page
2024-10-21 15:55:17 +02:00
Paul Bottein 4509661652 Center ha-toast (#22412)
* Center ha-toast

* Improve margin
2024-10-21 09:09:31 +02:00
karwosts 4669decfd0 Fix label filters from URL (#22447) 2024-10-21 08:56:46 +02:00
Julian f05c204da3 Remove close_select_mode key from transladtions and corresponding code (#22434)
remove close_select_mode key from transladtions and corresponding code

fixes: #22425
2024-10-20 14:46:34 +02:00
karwosts 338692d2c3 Fix zwave node config toggle switch (#22443) 2024-10-20 09:03:23 +02:00
Simon Lamon 5415690585 Change triggered by service to triggered by action (#22438) 2024-10-19 14:36:37 +02:00
renovate[bot] 418315d20b Update dependency chart.js to v4.4.5 (#22435)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-19 09:27:25 +02:00
renovate[bot] 9bbffb6919 Lock file maintenance (#22436)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-19 09:26:50 +02:00
renovate[bot] e338d63ec5 Update dependency @lokalise/node-api to v12.8.0 (#22433)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-18 19:31:56 +02:00
renovate[bot] 264aedbff3 Update vaadinWebComponents monorepo to v24.5.0 (#22426)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-18 19:18:28 +02:00
renovate[bot] 4103ef362c Update dependency serve-handler to v6.1.6 (#22432)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-18 19:17:58 +02:00
renovate[bot] a04a449eb9 Update dependency marked to v14.1.3 (#22420)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-18 08:49:31 +02:00
Krzysztof Dąbrowski 08633c197b Hide integration logo on device page when load error occurs (#22357) 2024-10-17 16:26:26 +00:00
BlockyPenguin f8b3a429c6 Improve accessibility for people with red-green colourblindness (#22365) 2024-10-17 18:24:26 +02:00
Julian 946c8a59b4 Fix translations for YAML-only alert when adding new integrations (#22383)
Change device to integration in the YAML-only warning

fixes: #22380
2024-10-17 16:17:14 +00:00
Paul Bottein f93c7e1b6e Improve card and badge edit mode (#22413) 2024-10-17 18:16:30 +02:00
Julian 6298534b9c Fix small typographical issues in UI translations (#22402)
Remove dangling "point" in translations

fixes: #22401
2024-10-17 09:44:07 +02:00
renovate[bot] 5175b42069 Update dependency @polymer/polymer to v3.5.2 (#22325)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-16 21:42:17 +02:00
Paul Bottein e01e31341b Revert "Allow to move card from other view to section view"
This reverts commit 203d900d16.
2024-10-16 16:20:41 +02:00
Paul Bottein 203d900d16 Allow to move card from other view to section view 2024-10-16 16:18:22 +02:00
Petar Petrov 4d9e9aaead Updated design for integration icons (#22393)
* Show if a custom integration overwrites a core integration

* use 1 icon and change tooltip and color

* Updated design for integration icons

* add color for `overwrites_built_in`
2024-10-16 10:17:36 +02:00
Petar Petrov 82ec308be0 Show if a custom integration overwrites a core integration (#22295) 2024-10-16 09:28:33 +02:00
renovate[bot] dcafbcb06c Update dependency @bundle-stats/plugin-webpack-filter to v4.16.0 (#22386)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-16 09:16:28 +02:00
ildar170975 aa5f8dc082 Change background for collapsible rows in data tables (#22372)
Update ha-data-table.ts
2024-10-16 09:10:32 +02:00
renovate[bot] 4dcae9c69c Update formatjs monorepo (#22374)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-16 09:08:32 +02:00
ildar170975 13a1af97da box-shadow for stack in panel: fix typo (#22384)
Update hui-stack-card.ts
2024-10-16 09:07:37 +02:00
Julian e3c435fd78 Fix type in matter integration translation "end_device" (#22390)
fixes: #22292
2024-10-16 09:06:46 +02:00
Paulus Schoutsen a32dee7071 Discovered integration: configure -> add (#22387) 2024-10-15 21:35:16 +02:00
Paulus Schoutsen c098858b73 Protocol integrations always link to devices page (#22388) 2024-10-15 21:34:47 +02:00
Paulus Schoutsen 9e509e3bc9 Update Assist config page (#22338) 2024-10-15 21:32:21 +02:00
Paulus Schoutsen 79ac2a72fa Protocol integrations always link to devices page 2024-10-15 18:12:14 +00:00
karwosts b063840f46 Update devtools/statistics for renamed issue type (#22371) 2024-10-15 15:09:07 +02:00
renovate[bot] 4366308b2b Update dependency mocha to v10.7.3 (#21212)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-15 13:51:40 +02:00
renovate[bot] 126826e52c Update dependency instant-mocha to v1.5.3 (#22373)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-15 12:59:00 +02:00
Bram Kragten e31af5d31b Forward change event in password field (#22377) 2024-10-15 12:07:12 +02:00
Stefan Agner fca97cd734 Prefer Thread border router instance name (#22378)
Instead of using the model name (which is the same for all border
routers of the same make and model), use the instance name as the
border router name.

Builds on https://github.com/home-assistant/core/pull/127253.
2024-10-15 11:48:45 +02:00
Wendelin ca94267c44 Fix tooltip firefox bug in persistent-notification-item (#22363) 2024-10-14 15:47:12 +02:00
renovate[bot] df1f26cee7 Update dependency magic-string to v0.30.12 (#22362)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-14 12:00:18 +02:00
renovate[bot] 24a4e075e6 Update babel monorepo to v7.25.8 (#22355)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-14 11:48:23 +02:00
dependabot[bot] 43fcc6238e Bump actions/upload-artifact from 4.4.0 to 4.4.3 (#22359)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-14 09:29:29 +02:00
dependabot[bot] b40b96248b Bump actions/cache from 4.1.0 to 4.1.1 (#22358)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-14 09:17:16 +02:00
dependabot[bot] c7ac4c7490 Bump actions/checkout from 4.2.0 to 4.2.1 (#22360)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-14 09:17:03 +02:00
Abdulrasheed Abdulsalam 6cd8471b91 Fix: correct some typos in translation file (#22353) 2024-10-13 10:11:27 +00:00
Marc Mueller 940eaa26e0 Update build-system (#22348) 2024-10-13 07:41:03 +02:00
renovate[bot] 79e68ce125 Update dependency typescript to v5.6.3 (#22340)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-12 11:13:22 +02:00
renovate[bot] e581d35432 Update formatjs monorepo (#22342)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-12 09:14:19 +02:00
Paul Bottein d3d578e0f4 Hide fields section when all fields inside are filtered (#22277)
Hide field section when all fields inside are filtered
2024-10-11 21:52:44 +02:00
karwosts 79c71cbe48 Add sensor offset to time trigger UI (#21957)
* Add sensor offset to time trigger UI

* refactor long expression

* memoize data

* fix for trigger platform migration
2024-10-11 21:36:44 +02:00
karwosts 82b50a1c5d Refine automation action search with ignoreLocation (#22332) 2024-10-11 21:34:43 +02:00
karwosts 6cfda78aa1 Fix a case where developer-tools/action can get stuck in an error loop (#22334) 2024-10-11 20:37:49 +02:00
renovate[bot] f9ff938775 Update dependency @formatjs/intl-datetimeformat to v6.12.6 (#22335)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-11 20:24:26 +02:00
Bram Kragten 778fcab90d Fix entity id setting on newly created scripts, handle update of enti… (#22272)
Fix entity id setting on newly created scripts, handle update of entity id
2024-10-11 13:13:17 +02:00
Wendelin 07e5aa30c6 Add hide completed option to hui-todo-list-card (#22323) 2024-10-11 08:58:40 +02:00
Paul Bottein 3f0ec03a14 Improve zigbee remove device dialog (#22276)
* Improve zigbee remove device dialog

* Fix translations
2024-10-11 06:40:15 +02:00
Alex Jurkiewicz 1bb871b9ac fix(script/bootstrap): Improve missing Yarn error (#22308) 2024-10-10 18:27:22 +03:00
Paul Bottein 0e8783fb01 Use default font for heading card (#22322) 2024-10-10 15:19:14 +00:00
Bram Kragten 1d88c4465b Bumped version to 20241010.0 2024-10-10 17:14:04 +02:00
Bram Kragten 1f0cfb5fd6 Bumped version to 20241002.3 2024-10-10 17:08:10 +02:00
Adam Kapos a21e17fb23 Disable backdrop filter on Heading Card (#22204) 2024-10-10 17:07:51 +02:00
Paul Bottein 5de888c91a Update heading entity schema to allow empty entity id (#22211) 2024-10-10 17:07:34 +02:00
Paul Bottein 2dd4090db3 Fix potential undefined select element in color picker (#22212) 2024-10-10 17:07:16 +02:00
Bram Kragten 35aafd45dc Fix and update step flow create (#22223)
* Fix and update step flow create

* cleanup
2024-10-10 17:06:55 +02:00
Simon Lamon c778b881ab Fixup service/action when entity is picked in activate scene (#22259)
Fixup service/action when entity is picked
2024-10-10 17:06:38 +02:00
Paul Bottein 04acecc832 Add minimal size for badges and cards in edit mode (#22271) 2024-10-10 17:06:15 +02:00
Wendelin a10a9916be Fix unused entities view (#22274)
Fix compute-unused-entities when using sections
2024-10-10 17:05:52 +02:00
David F. Mulcahey 3604ffa64a Fix ZHA group dashboard display on mobile (#22279) 2024-10-10 17:04:29 +02:00
TJ Horner a0724749d3 Fix erroneous addition of service: key in ha-automation-action-play_media element (#22294)
fix: no longer erroneously set 'service' in ha-automation-action-play_media
2024-10-10 17:04:13 +02:00
Bram Kragten 45a75c3a7c Update statistics issues from dev tools (#22286)
update statistics issues from dev tools
2024-10-10 17:03:52 +02:00
Stefan Agner f0dcfa4aa3 Fix command selection for OTBRs without dataset (#22318)
Typically, the Home Assistant OTBR integration makes sure that we
either setup or read the current dataset. However, in some cases,
e.g. when reinstalling the add-on, deleting the dataset, and starting
the add-on while keeping the OTBR config entry, the dataset is not
available and a new one is not being created (since the config entry
is not recreated).

Just support this particular case as well.

Fixes: #22306
2024-10-10 17:03:31 +02:00
Wendelin 1c4b66cb1e Fix ha-selector-action drag and drop (#22273)
* Fix ha-selector-action with removing memoize-one

* Fix array-move to update parent reference.

* Fix array-move if item is no array
2024-10-10 17:03:15 +02:00
Wendelin af2d575bf0 Fix ha-selector-action drag and drop (#22273)
* Fix ha-selector-action with removing memoize-one

* Fix array-move to update parent reference.

* Fix array-move if item is no array
2024-10-10 16:53:35 +02:00
Stefan Agner 92165d776a Fix command selection for OTBRs without dataset (#22318)
Typically, the Home Assistant OTBR integration makes sure that we
either setup or read the current dataset. However, in some cases,
e.g. when reinstalling the add-on, deleting the dataset, and starting
the add-on while keeping the OTBR config entry, the dataset is not
available and a new one is not being created (since the config entry
is not recreated).

Just support this particular case as well.

Fixes: #22306
2024-10-10 16:50:44 +02:00
renovate[bot] a8bbd8ab90 Update dependency @codemirror/commands to v6.7.0 (#22316)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-10 10:21:29 +00:00
renovate[bot] 43ac9dbea7 Update vaadinWebComponents monorepo to v24.4.11 (#22315)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-10 10:20:33 +00:00
renovate[bot] bba9eca4e9 Update dependency eslint-plugin-wc to v2.2.0 (#22310)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-10 10:04:10 +02:00
renovate[bot] 40f65b1980 Update dependency del to v8 (#22311)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-10 10:03:29 +02:00
karwosts 23a33b10a1 Allow override entity_id in more-info action (#22147) 2024-10-09 14:14:03 +02:00
Simon Lamon 67a93013c7 Revert "Fix drag and drop when using action and trigger selector" (#22296)
Revert "Fix drag and drop when using action and trigger selector (#22291)"

This reverts commit 99035cea8f.
2024-10-09 10:22:40 +00:00
Bram Kragten 1f838d7529 Update statistics issues from dev tools (#22286)
update statistics issues from dev tools
2024-10-09 09:29:30 +02:00
TJ Horner ffc0435144 Fix erroneous addition of service: key in ha-automation-action-play_media element (#22294)
fix: no longer erroneously set 'service' in ha-automation-action-play_media
2024-10-08 21:07:38 +00:00
David F. Mulcahey 5877d69c87 Fix ZHA group dashboard display on mobile (#22279) 2024-10-08 21:20:07 +02:00
Paul Bottein 99035cea8f Fix drag and drop when using action and trigger selector (#22291)
* Fix drag and drop when using action selector

* Fix drag and drop when using trigger selector
2024-10-08 21:04:45 +02:00
__JosephAbbey 1b441a7eec Add support for relative start and end time displays in state-display (#22249)
* Add support for relative start and end time displays in state-display

* Add support for sun attributes as well

* Improve state-display code for relative-time

---------

Co-authored-by: Wendelin <w@pe8.at>
2024-10-08 10:04:16 +02:00
Paul Bottein ad49e9f7b0 Add minimal size for badges and cards in edit mode (#22271) 2024-10-07 17:33:47 +02:00
Petar Petrov e32b15ede2 Hide service dropdown for predefined actions in automations (#22275)
Hide service dropdown for predefined actions
2024-10-07 15:49:44 +02:00
Wendelin a35b4376ea Fix unused entities view (#22274)
Fix compute-unused-entities when using sections
2024-10-07 15:28:14 +02:00
Simon Lamon 619f9f76ee Fixup service/action when entity is picked in activate scene (#22259)
Fixup service/action when entity is picked
2024-10-07 09:23:48 +02:00
dependabot[bot] f771bc10db Bump actions/cache from 4.0.2 to 4.1.0 (#22270)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-07 08:44:00 +02:00
renovate[bot] b8889a1183 Update dependency eslint-plugin-import to v2.31.0 (#22260)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-06 10:47:08 +00:00
renovate[bot] eb6b45eaed Update babel monorepo to v7.25.7 (#22250)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-05 20:11:42 +02:00
renovate[bot] 31a748ed93 Update dependency date-fns-tz to v3.2.0 (#22209)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-04 21:38:25 +02:00
Bram Kragten 0110bdd24a Fix and update step flow create (#22223)
* Fix and update step flow create

* cleanup
2024-10-04 14:13:21 +02:00
Bram Kragten 365b712976 Add temporary logging to webrtc player (#22213)
* add temporary logging to webrtc player

* Update ha-web-rtc-player.ts

* Update ha-web-rtc-player.ts

* Update ha-web-rtc-player.ts
2024-10-03 21:01:21 +02:00
Paul Bottein 7d97dbe15b Fix potential undefined select element in color picker (#22212) 2024-10-03 11:31:36 +02:00
Paul Bottein 8bc0ea5a0b Update heading entity schema to allow empty entity id (#22211) 2024-10-03 11:15:13 +02:00
Adam Kapos 44948a3474 Disable backdrop filter on Heading Card (#22204) 2024-10-03 09:45:29 +02:00
Robert Resch bc51b53b4a Use camera ws endpoint to get WebRTC config (#22009) 2024-10-03 09:19:49 +02:00
Bram Kragten 693dbfd050 20241002.2 (#22197) 2024-10-02 16:43:14 +02:00
Bram Kragten 67217b9dd0 Bumped version to 20241002.2 2024-10-02 16:42:46 +02:00
Bram Kragten 487795b7c4 handle unknown state for update voice assitant (#22196)
* handle unknown state for update voice assitant

* Update voice-assistant-setup-step-update.ts
2024-10-02 16:42:27 +02:00
Petar Petrov a30e0d33f9 Handle exceptions when subscribing from the event dev tool (#22191)
* Handle exceptions when subscribing from the event dev tool

* use ha-alert for the error msg

* import ha-alert element

* use undefined instead of null to align with the rest of the code base
2024-10-02 16:34:28 +02:00
Bram Kragten 0c1b8abe03 Fix hassio entrypoint (#22194) 2024-10-02 14:20:53 +00:00
Paul Bottein ce9c5149d5 Use heading card in demo dashboard (#22193) 2024-10-02 14:13:26 +00:00
Bram Kragten adbcdc62eb Alert user when auto update is enabled instead of hiding the button (#22187) 2024-10-02 15:41:15 +02:00
Paul Bottein faf872bfb8 Simplify create automation from device dialog (#22190)
* Simplify automation dialog

* Fix translations

* Auto expand trigger action and condition

* Improve wording

* Expand all

* Remove unused translations
2024-10-02 13:13:21 +00:00
Stefan Agner fe0fb2382a Allow to transfer all Thread datasets with TLV (#22183)
* Allow to transfer all Thread datasets with TLV

This commit allows to transfer all Thread datasets with TLV. Since
PR #22022 the preferred dataset is transmitted when using Matter
external commissioning. This commit makes the Thread configuration
dialog to have feature parity.

* Drop preferred border agent id as additional metric for default router

We always have the extended address, so use this as primary and only
metric which router is the default. The preferred border agent id gets
updated best effort.

Also use isDefaultRouter consistently in the code.
2024-10-02 15:06:06 +02:00
Bram Kragten e84c3a85db 20241002.1 (#22189) 2024-10-02 13:38:57 +02:00
Bram Kragten cdd29295e5 Bumped version to 20241002.1 2024-10-02 13:37:47 +02:00
karwosts f7532f3476 Devtools statistics - new style, multi-select, & multi-delete (#21813)
* feat: auto-fix statistics

* statistics multi-select and multi-fix

* unused css

* Change multi action to clear, fixes

* Update developer-tools-statistics.ts

* update translations

* Add select all issues option

* Update en.json

* Update developer-tools-statistics.ts

---------

Co-authored-by: Muka Schultze <samuelschultze@gmail.com>
Co-authored-by: Bram Kragten <mail@bramkragten.nl>
2024-10-02 13:21:04 +02:00
Bram Kragten fdf9fab709 20241002.0 (#22185) 2024-10-02 10:01:51 +02:00
Bram Kragten c8930cec87 Bumped version to 20241002.0 2024-10-02 09:50:01 +02:00
Bram Kragten f9c336890d Await removal of statistics when fixing (#22167)
* Await removal of statistics when fixing

* refactor

* translations
2024-10-02 09:24:46 +02:00
Bram Kragten c721de109f Put rename entities in expandable when renaming device (#22182)
* Put rename entities in expandable when renaming device

* Update ha-config-device-page.ts

* Update src/panels/config/devices/ha-config-device-page.ts

Co-authored-by: Simon Lamon <32477463+silamon@users.noreply.github.com>

---------

Co-authored-by: Paul Bottein <paul.bottein@gmail.com>
Co-authored-by: Simon Lamon <32477463+silamon@users.noreply.github.com>
2024-10-02 07:19:05 +00:00
renovate[bot] 1c95e8d6ec Update vaadinWebComponents monorepo to v24.4.10 (#22180)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-01 16:34:51 +00:00
Bram Kragten 57cf2c1341 Update update entity in voice flow (#22178) 2024-10-01 18:34:18 +02:00
renovate[bot] f7d5c5f850 Update dependency @codemirror/view to v6.34.1 (#22179)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-01 16:33:42 +00:00
renovate[bot] 470f5127f4 Update dependency @types/color-name to v2 (#22157)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-01 18:22:13 +02:00
Paul Bottein 34e361601a Fix display elements field in heading badge editor (#22177)
* Fix display elements field in heading badge editor

* Update src/panels/lovelace/editor/heading-badge-editor/hui-entity-heading-badge-editor.ts
2024-10-01 16:58:00 +02:00
Paul Bottein 70d6cce8f8 Add support for custom color display in color picker (#22174)
Add support for custom color in color picker
2024-10-01 15:43:31 +02:00
Paul Bottein f9814f35d1 Don't handle UI editor event when using yaml editor (#22176) 2024-10-01 15:11:54 +02:00
Paul Bottein f30603753e Use radio buttons for heading style (#22173) 2024-10-01 14:26:51 +02:00
karwosts ce9993fd36 Use finishes_at in timer remaining calculation (#22169)
* Use finishes_at in timer remaining calculation

* lint

* fix test
2024-10-01 14:05:01 +02:00
Bram Kragten 268eb4317c 20240930.0 (#22166) 2024-09-30 17:38:30 +02:00
Bram Kragten 4c2044e70a Bumped version to 20240930.0 2024-09-30 17:11:52 +02:00
Darren Griffin 7f96c1fbe1 Add OHF logo to README (#22165) 2024-09-30 17:10:45 +02:00
Paul Bottein 75e24780c1 Use dash for unknown and unavailable state in heading entity (#22163)
* Use dash for unknown and unavailable state in heading entity

* Update src/state-display/state-display.ts

Co-authored-by: Simon Lamon <32477463+silamon@users.noreply.github.com>

---------

Co-authored-by: Simon Lamon <32477463+silamon@users.noreply.github.com>
2024-09-30 15:52:20 +02:00
Bram Kragten 95580bc4c0 Fix min width of checkbox column in data table (#22162)
fix min width of checkbox column in data table
2024-09-30 09:09:08 +00:00
Paul Bottein 175f68e0cf Allow to add name in heading entity badge state content (#22161) 2024-09-30 09:07:25 +00:00
Bart Mesuere b6efedfc8d Improve the accessibility of the default colors used for graphs (#21839)
* Update the first 10 colors to match the Observable10 scheme

* Add darker and lighter variants
2024-09-30 10:59:13 +02:00
Wendelin 23c21a35d8 Fix script rename name placeholder (#22160) 2024-09-30 07:43:59 +00:00
Simon Lamon 9c7324298b Remove floor context (#22143)
* Remove floor context

* Fixup gallery
2024-09-30 09:33:08 +02:00
Matthias Alphart e92be566a0 Handle falsy value in ha-yaml-editor (object selector) (#22142)
* Handle falsy value in ha-yaml-editor (object selector)

* handle explicit `null`
2024-09-30 09:28:17 +02:00
dependabot[bot] 4e96ad5f28 Bump actions/checkout from 4.1.7 to 4.2.0 (#22159)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-30 09:07:50 +02:00
renovate[bot] f64a1500af Update dependency webpack to v5.95.0 (#22150)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-28 21:23:29 +02:00
renovate[bot] c9e8619c04 Update dependency @codemirror/view to v6.34.0 (#22144)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-28 21:23:21 +02:00
Bram Kragten 7ab1133b45 Implement missing function for password field 2024-09-27 23:42:44 +02:00
Bram Kragten 77abfd3e61 voice setup tweaks 2024-09-27 23:42:09 +02:00
Bram Kragten d7aaa41aa4 Add missing voice assistant select action logic (#22139) 2024-09-27 14:40:55 -04:00
Aindriú Mac Giolla Eoin 8223f6b155 Update translationMetadata.json - Added Irish language code (#21898)
Added language code for Irish, native name Gaeilge
2024-09-27 18:12:44 +02:00
renovate[bot] 435eae77fa Update dependency rollup to v2.79.2 [SECURITY] (#22071)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-27 15:29:29 +00:00
Bram Kragten 394d8ddd6c 20240927.0 (#22138) 2024-09-27 17:28:42 +02:00
Paul Bottein ead54e445f Reuse flatten logic for trigger ids condition (#22136) 2024-09-27 17:18:06 +02:00
Bram Kragten 7ee5db2be5 Bumped version to 20240927.0 2024-09-27 17:15:57 +02:00
Bram Kragten fef6f0ac94 migrate nested triggers too (#22135) 2024-09-27 15:13:05 +00:00
Bram Kragten 7a60763786 Voice setup feedback (#22134)
* Voice setup feedback

* Update voice-assistant-setup-step-check.ts
2024-09-27 16:56:38 +02:00
Paul Bottein 94e321a364 Add UI support for trigger list (#22133)
* Add UI support for trigger list

* Update gallery

* Fix gallery
2024-09-27 16:56:22 +02:00
Bram Kragten 1c12c2b714 Fix codemirror fold for empty lines (#22130) 2024-09-27 14:18:48 +02:00
Paul Bottein 442a8f11a7 Improve heading card style and add theme variables (#22129)
improve heading card style and add theme variables
2024-09-27 13:45:18 +02:00
Bram Kragten 4e8b58cd6c Add password field element (#22121)
* Add password field element

* Update ha-password-field.ts
2024-09-27 12:34:28 +02:00
Paul Bottein a92dab46c2 Allow different types of heading badges (#22109)
* Allow different type of heading item

* Update editor

* Migrate entities to items

* Rename support for string entity

* Refactor

* Rename to badges and add error state

* Update font weight

* Feedback

* Feedback
2024-09-27 12:33:15 +02:00
Joakim Sørensen 468660d235 Adjust username handling in the cloud panel register and login flows (#22118)
* Use lowercase when registering

* Fallback to lowercase username if usernotfound is recieved

* Adjust resend

* handle reset password

* limit with else

* return early
2024-09-27 12:31:48 +02:00
Wendelin c721afa137 Fix matter device actions (#22117)
* Fix matter device actions when matter integration loads forever

* Fix matter device-actions types path

* Move getMatterDeviceActions inside getDeviceActions in device page
2024-09-27 09:37:07 +00:00
Paul Bottein ac9654c1de Add heading card when creating a new view (#22123) 2024-09-27 09:19:19 +00:00
Wendelin 570ad38bac Fix automation trigger condition and triggers description (#22122)
* Fix config.triggers in automation-contition-trigger

* Fix config.triggers for automation triggers description
2024-09-27 09:10:33 +00:00
Erik Montnemery e778a9aa1d Improve statistics issues (#22110) 2024-09-27 11:05:30 +02:00
selvalt7 49576189af Use localizeValue in ha-form-expandable and ha-form-grid (#22114)
Pass localizeValue to ha-form-expandable and ha-form-grid
2024-09-27 10:00:36 +02:00
Bram Kragten d4a5115a65 20240926.0 (#22107) 2024-09-26 18:30:57 +02:00
Bram Kragten 5d71d4c0a1 Bumped version to 20240926.0 2024-09-26 18:26:20 +02:00
Bram Kragten d334b1ca7b Update voice-assistant-setup-step-update.ts 2024-09-26 18:25:30 +02:00
Wendelin 5551e98388 Add no IP found message to ping a matter device (#22103) 2024-09-26 18:22:28 +02:00
Bram Kragten 59945cb2f8 Add statistic id to statistic issue fix messages (#22104)
* Add statistic id to fix messages

* revert state class check, as it will be solved in another way
2024-09-26 18:07:54 +02:00
Erik Montnemery 500bc959f0 Improve translation strings for statistic issues (#22100) 2024-09-26 16:46:35 +02:00
Bram Kragten deece20206 Include extended_pan_id when commissioning matter (#22099) 2024-09-26 16:46:15 +02:00
Bram Kragten fc8945be60 Flatten fields in sections in developer tools actions (#22096)
* flatten fields in sections in developer tools actions

* Update src/panels/developer-tools/action/developer-tools-action.ts

---------

Co-authored-by: Paul Bottein <paul.bottein@gmail.com>
2024-09-26 12:31:53 +00:00
Bram Kragten 3fbd5f07a9 Fix dialog box callback order (#22097)
* Fix dialog box callback order

* Update dialog-box.ts
2024-09-26 14:17:28 +02:00
Wendelin ff9af2f980 Fix delete appearance chip (#22098)
* Add filter option to ha-sortable

* Filter chips remove buttons from dragging in ha-entity-state-content-picker
2024-09-26 14:11:34 +02:00
Paul Bottein 62cba99491 Don't use ha-card in card-condition-editor (#22085) 2024-09-26 12:15:58 +02:00
Wendelin 5a5005c09c Fix matter commissioning wording and add prevent misuse alert (#22083)
* Fix matter commissioning wording and add prevent misuse alert

* Update src/translations/en.json

Co-authored-by: Bram Kragten <mail@bramkragten.nl>

* Add small misuese prevent note for matter-commissioning dialog

---------

Co-authored-by: Paul Bottein <paul.bottein@gmail.com>
Co-authored-by: Bram Kragten <mail@bramkragten.nl>
2024-09-26 12:15:03 +02:00
Wendelin dd179e1f4e Add seperator to dialog-repairs-issue-subtitle (#22095) 2024-09-26 12:12:10 +02:00
Paul Bottein 27bdf80168 Fix automation drag and drop (#22093) 2024-09-26 07:59:48 +00:00
renovate[bot] f70ce7491a Update dependency @rollup/plugin-node-resolve to v15.2.4 (#22092)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-26 09:48:41 +02:00
Jan Rieger 9f17f6a8cf Fix typo (#22086) 2024-09-25 18:02:34 +00:00
Bram Kragten 8890c7da17 20240925.0 (#22082) 2024-09-25 17:05:55 +02:00
Paul Bottein 4e51c7cf96 Use callback instead of changing nested config with sub editor (#22081)
Use callback instead of changing nested config
2024-09-25 16:47:38 +02:00
Bram Kragten 291c026da0 Bumped version to 20240925.0 2024-09-25 16:47:19 +02:00
Bram Kragten dd88d8633f Optimize helpers filtering (#22080) 2024-09-25 16:41:12 +02:00
Wendelin 254ee8568b Add integration name information to repairs (#22006)
* Add integration name to repairs

* Improve dialog-repairs-issue aria and translations

* Fix type in dialog-repairs-issue

* Remove unused slots in dialog-repairs-issue

* Fix ha-config-repairs avoid nested css

* Fix ha-config-repairs to use ha-md-list

* Add subtitle slot to ha-dialog-header

* Move close icon to left in dialog-data-entry-flow

* Move severity and reportedBy to dialog subtitle in repair-dialog

* Add md buttons to dialog-repairs-issue

* Revert dialog-repairs-issue to use normal ha-buttons

* Revert dialog-entry-flow close icon position

* Improve buttons for dialog-repairs-issue

* Add subtitle to all show-dialog-repair-flow headers

* Fix integration names for repair dialogs

* Fix subtitle title repair dialogs

---------

Co-authored-by: Bram Kragten <mail@bramkragten.nl>
2024-09-25 16:12:45 +02:00
Paul Bottein cd631e8693 Move sub element editor inside hui-element-editor. (#22079)
* Move sub element editor into hui-element-editor

* Migrate feature editor

* Migrate feature editor

* Simplify context
2024-09-25 16:05:41 +02:00
Bram Kragten 765812331b Allow to fix statistic issue from repairs (#22055)
* Allow to fix statistic issue from repairs

* clean up, add names

* Update src/translations/en.json

Co-authored-by: Paul Bottein <paul.bottein@gmail.com>

* address review

* Update src/translations/en.json

Co-authored-by: Paul Bottein <paul.bottein@gmail.com>

---------

Co-authored-by: Simon Lamon <32477463+silamon@users.noreply.github.com>
Co-authored-by: Paul Bottein <paul.bottein@gmail.com>
2024-09-25 15:55:49 +02:00
Paul Bottein 7462f8fbe3 Fix entity row editor (#22078) 2024-09-25 15:42:29 +02:00
Bram Kragten dc940f248c Migrate trigger platform key to trigger (#22054)
* Migrate trigger platform key to trigger

* fix gallery configs

* Update ha-automation-editor.ts

* migrate device automation triggers
2024-09-25 14:20:27 +02:00
Miguel Palhas 2793ca65cd Adds highlight on current indentation mark to code editor (#21972)
* Adds highlight on current indentation mark to code editor

* code review
2024-09-25 11:35:47 +00:00
Miguel Palhas e687ddab21 Indent-based folds for YAML editor (#21966)
* Indent-based folds for YAML editor

* adding compartment

* code review
2024-09-25 13:15:02 +02:00
karwosts 4bd27e5055 Add detail to the device+entity_id rename dialog (#21952) 2024-09-25 13:08:39 +02:00
Paul Bottein c6e2e07286 Use YAML editor in card/badge editor (#22075) 2024-09-25 10:59:39 +02:00
Paul Bottein e77508b8a8 Create ha-divider and use it inside color picker (#22074)
* Create ha-divider and use it inside color picker

* rename divider
2024-09-25 08:59:00 +00:00
Bram Kragten a5db44a167 Fix initial automation config (#22073) 2024-09-25 08:24:06 +00:00
Bram Kragten 265bbfc95d Triggers doesn't have to be an array, fix flattenTriggers (#22072)
Triggers doesnt have to be an array, fix flattenTriggers
2024-09-25 08:17:37 +00:00
Bram Kragten 305cecb213 Add MVP voice assist flow (#22061)
* Add MVP voice assist flow

* filter on supported features

* check for unavailable

* Update step-flow-create-entry.ts
2024-09-24 20:38:00 +02:00
Paul Bottein 813feff12e Add color option to heading entities (#22068)
* Add uncolored option

* Allow to color icon based on state or custom color

* Use text color for inactive color

* Rename uncolored to none

* Add helper

* Update wording
2024-09-24 20:14:03 +02:00
Bram Kragten cbce6f633f Migrate base automation config to plurals (#22053)
* Migrate base automation config to plurals

* revert

* Update hat-script-graph.ts

* Make traces work with both new and old config

* Adjust validateConfig
2024-09-24 20:03:53 +02:00
Bram Kragten 1bbf45d35e Remove min width from alert dialog (#22069) 2024-09-24 16:16:07 +00:00
Paul Bottein 76e53e9738 Add more config option to heading entity element (#22063)
Add show state and show icon to heading entity
2024-09-24 18:15:36 +02:00
Paul Bottein c30e4a6935 Add visibility option to heading entities (#22064)
* Add visibility option to heading entity

* Fix types
2024-09-24 17:12:04 +02:00
Paul Bottein c4a700a55c Improve element editor and migrate heading-entity editor (#22034)
* Extract load config element

* Improve error by using ha-alert

* Create hui-hase-editor

* Migrate heading entity form to its own editor

* Rename editor

* Rename

* Rename

* Move heading entity to its own component

* Fix default action for heading entity
2024-09-24 11:17:29 +02:00
Raj Laud a759767d79 Update media-player.ts to display artist name as backup secondary title (#22039)
* Update media-player.ts to display artist name for playlist if playlist name unavailable

* Run prettier
2024-09-23 16:08:18 +00:00
renovate[bot] 7f868c8140 Update dependency eslint to v8.57.1 (#22033)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-23 16:04:59 +00:00
Paul Bottein f7f37c24e2 Filter selected entities in entities picker using includeEntities property (#22059)
* Filter selected entities in entities picker using includeEntities property

* Don't ignore other property when using include entities
2024-09-23 15:55:13 +00:00
Simon Lamon be02a8869f Fix lint failures on CI (#21986)
Add ignore
2024-09-23 15:50:43 +00:00
Wendelin 3a9f09cb47 Migrate dialog restart to ha-md-dialog (#22032)
* Fix ha-md-dialog for iOS 12

* Fix ha-md-dialog polyfill loading

* Fix ha-md-dialog open prop

* Fix multiple polyfill loads in ha-md-dialog

* Migrate dialog-restart to ha-md-dialog

* Fix dialog-restart to use ha-md-list

* Fix dialog opens dialog for ha-md-dialog
2024-09-23 15:18:00 +00:00
karwosts 0c2a9d85e0 Better handling of multiple entities in numeric-state condition (#22021)
* Better handling of multiple entities in numeric-state condition

* update translations, fix infinite render loop in form
2024-09-23 15:35:45 +02:00
Simon Lamon e72356033c Handle url error better when invalid blueprint url is provided (#21778)
* Encode spaces again

* Prettier

* Update src/panels/my/ha-panel-my.ts

* Remove the specific contents

* Remove the error keys, assign error immediately

* Revert "Remove the error keys, assign error immediately"

This reverts commit 27381ff250.
2024-09-23 15:28:57 +02:00
Simon Lamon 3c48559df6 Move patches in dependency section (#22050)
* Move patches in dependency section

* yarn lock
2024-09-23 15:27:46 +02:00
Wendelin f36d68c677 Fix delete entity alias (#22058)
Fix aliasChanged to save deleted in entity-voice-settings
2024-09-23 15:18:50 +02:00
Yosi Levy af46b8221e RTL fixes (#22060) 2024-09-23 13:16:58 +02:00
Paul Bottein d25f72524b Migrate title section to heading (#22017)
* Remove title from UI

* Migrate section title to heading card

* Remove title from edit section dialog

* Update src/panels/lovelace/views/hui-sections-view.ts

* Simplify delete section dialog
2024-09-23 09:54:20 +02:00
dependabot[bot] 0840d8a10e Bump actions/setup-node from 4.0.3 to 4.0.4 (#22057)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-23 09:37:25 +02:00
renovate[bot] 597bf5def0 Update dependency @octokit/plugin-retry to v7.1.2 (#22047)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-22 18:35:14 +02:00
renovate[bot] 3478bd309b Update dependency date-fns to v4.1.0 (#22037)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-21 09:28:08 +02:00
renovate[bot] 64b8b7658d Update dependency @codemirror/commands to v6.6.2 (#22038)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-21 09:27:31 +02:00
renovate[bot] a1af8718a0 Update dependency @material/web to v2.2.0 (#22041)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-21 09:25:24 +02:00
renovate[bot] fd9e2b647d Lock file maintenance (#22027)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-19 20:48:19 +02:00
karwosts caee4ba7bc Load defaults in script more-info (#22014) 2024-09-19 20:01:57 +02:00
karwosts 915036006d Fixes for trace viewer for nested triggers feature (#21765) 2024-09-19 19:48:20 +02:00
renovate[bot] 48887f2066 Update dependency sinon to v19 (#21988)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-19 19:27:41 +02:00
renovate[bot] 68d9ce7923 Update vaadinWebComponents monorepo to v24.4.9 (#21970)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-19 19:26:56 +02:00
renovate[bot] a36f3c8fb1 Update dependency date-fns to v4 (#22028)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-19 19:25:15 +02:00
renovate[bot] 4dfadea9e9 Update dependency babel-loader to v9.2.1 (#22031)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-19 19:24:48 +02:00
Wendelin 71dc26edab Migrate dialog-light-color-favorite to ha-md-dialog (#22013)
* Migrate dialog-light-color-favorite to ha-md-dialog

* Add aria-label to dialog-light-color-favorite

* Add mobile dialog from bottom animation to dialog-light-color-favorite
2024-09-19 18:28:13 +02:00
Wendelin f260c95add Add default value to zwave config params (#21990)
* Add default value to zwave config params

* Remove unused ha-switch from zwave node config

* Small fix of duplicate code in zwave node config
2024-09-19 13:17:45 +02:00
Paul Bottein dc6f1efffb Add badges to section demo (#22029) 2024-09-19 12:01:59 +02:00
Paul Bottein b7763882f4 Add Heading card (#22008)
* Add header card

* Rename to heading card

* Add heading entities

* Add editor for entities

* Remove unused property

* Fix margin and gap

* Improve content and entities container

* Fix no entities displayed

* Cache form to not loose state

* Use style

* Fix type

* Add support for string entities

* Add tap action support to entities

* Move expandable outside of entities editor

* Fix double processing
2024-09-19 10:46:20 +02:00
Paul Bottein 7de5c46f14 Improve card features editor (#22023)
* Move expansion panel outside of feature component

* Cache main form and feature form
2024-09-19 09:52:59 +02:00
Bram Kragten 5920efa2b2 Add preferred thread credentials to matter external commission (#22022) 2024-09-19 09:34:03 +02:00
Simon Lamon d2194d55f9 Rename ha-button-menu-new into ha-md-button-menu (#22016)
* ha-button-menu-new => ha-md-button-menu

* linting
2024-09-18 12:02:15 +00:00
Simon Lamon c0043af4c9 Rename ha-list-new into ha-md-list (#22015)
ha-list-new => ha-md-list
2024-09-18 08:28:05 +00:00
Bram Kragten dcf763438b Use issue placeholders in issue repair flow, show break warning in re… (#21959)
Use issue placeholders in issue repair flow, show break warning in repair flow
2024-09-18 10:18:00 +02:00
Wendelin 858a00e28c Migrate dialog-box to ha-md-dialog (#22007)
* Migrate dialog-box to ha-md-dialog

* Add aria-labelby to dialog-box

* Add ids for dialog-box aria content
2024-09-18 09:24:27 +02:00
renovate[bot] ab407e8274 Update Yarn to v4.5.0 (#22012)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-17 18:14:13 +02:00
renovate[bot] 14f96a6262 Update dependency @codemirror/autocomplete to v6.18.1 (#22011)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-17 17:50:01 +02:00
Paulus Schoutsen 2b33c70e04 Ensure device info categories notify, event and assist always show (#21994)
Currently we have the entity category always win. However, we have some functional categories on a device, notify, event, assist. It would be good to always show these togehter.
2024-09-17 09:37:45 +02:00
akloeckner 717443e2d6 Fix typo in ha-selector-color-rgb.ts (#22001) 2024-09-17 04:20:56 +00:00
renovate[bot] 2aba9099a0 Update dependency ua-parser-js to v1.0.39 (#22002)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-17 06:09:54 +02:00
karwosts 3079f126a8 Improve robustness of automation editor description error handling (#21993) 2024-09-16 17:55:16 +02:00
Bram Kragten 1cdfb746bf Optimize entities config performance (#21974)
* Optimize entities config performance

* review
2024-09-16 12:40:52 +00:00
renovate[bot] 39a1844991 Update dependency eslint-plugin-unused-imports to v4.1.4 (#21992)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-16 14:27:50 +02:00
Wendelin 9e4dc0d39e Migrate add/edit resources dialog to @material/web (#21933)
* Remove dashboard resources options from advanced mode

* Add ha-dialog-new, use it for dashboard resources

* Add ha-dialog-new shake; Move resources delete to table

* Improve ha-dialog-new, resource-detail

* Rename ha-dialog-new to ha-md-dialog

* Update src/panels/config/lovelace/resources/dialog-lovelace-resource-detail.ts

Fix dialogClosed method naming

Co-authored-by: Bram Kragten <mail@bramkragten.nl>

* Add ha-md-dialog polyfill

* Fix ha-md-dialog for iOS 12

* Fix ha-md-dialog polyfill loading

* Fix ha-md-dialog open prop

* Fix ha-md-dialog legacy loading

* Improve ha-md-dialog legacy loading

* Fix multiple polyfill loads in ha-md-dialog

* Fix polyfill handleOpen in ha-md-dialog

* Improve polyfill handleOpen in ha-md-dialog

* Improve polyfill handleOpen ordering in ha-md-dialog

---------

Co-authored-by: Bram Kragten <mail@bramkragten.nl>
2024-09-16 12:27:13 +00:00
Wendelin ab91a4b814 Fix onboarding with 0 found integrations (#21977)
* Add onboarding 0 integrations fallback page

* Add translations to onboarding all set

* Migrate mwc to ha-button in onboarding-integrations
2024-09-16 13:19:25 +02:00
renovate[bot] ca66c02fb3 Update dependency husky to v9.1.6 (#21983)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-15 20:18:08 +02:00
renovate[bot] 97bb052d71 Update dependency sinon to v18.0.1 (#21981)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-14 14:55:21 +02:00
Wendelin 137bb473c0 Fix user change password autofill (#21975)
* Fix user change password autofill

* Fix user change password new password input
2024-09-13 17:17:40 +02:00
Miguel Palhas 326b57f91b Fixes text input icons color in dark mode (#21971) 2024-09-13 11:43:59 +00:00
Paul Bottein 32feab6a70 Add floors to hass (#21960) 2024-09-13 11:07:04 +02:00
Martin Dybal 68a0d04f04 Added hold and double tap actions for tile card icon (#21947) 2024-09-13 09:59:04 +02:00
renovate[bot] 9078ab4026 Update dependency @bundle-stats/plugin-webpack-filter to v4.15.1 (#21968)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-13 06:24:57 +02:00
renovate[bot] 8605684906 Update dependency typescript to v5.6.2 (#21963)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-12 18:53:28 +02:00
AlCalzone 9f17d17d6e Z-Wave JS: Mention the ability to select which security keys to grant (#21958) 2024-09-12 18:51:22 +02:00
Reuben ba5f176d52 Capitalise ha-relative-time in state-display (#21949)
This matches the capitalisation applied to hui-timestamp-display, and state-info displays
2024-09-12 18:51:15 +02:00
ildar170975 7115d14699 Add padding to bottom of logbook in device page (#21913)
Update ha-config-device-page.ts
2024-09-12 18:51:06 +02:00
dependabot[bot] 23e37daff3 Bump express from 4.19.2 to 4.20.0 (#21956)
Bumps [express](https://github.com/expressjs/express) from 4.19.2 to 4.20.0.
- [Release notes](https://github.com/expressjs/express/releases)
- [Changelog](https://github.com/expressjs/express/blob/master/History.md)
- [Commits](https://github.com/expressjs/express/compare/4.19.2...4.20.0)

---
updated-dependencies:
- dependency-name: express
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-11 18:39:36 +00:00
renovate[bot] ed6c2dfe39 Update dependency marked to v14.1.2 (#21955)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-11 20:26:42 +02:00
Simon Lamon b48a28f2a6 Fix "unknown" traces in design gallery (#21942) 2024-09-10 22:04:10 +02:00
renovate[bot] 3166fec7db Update dependency eslint-plugin-lit to v1.15.0 (#21940)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-10 17:29:25 +02:00
karwosts 1a67bd0414 Fix script more-info when entity_id != unique_id (#21880)
* Fix script more-info when entity_id != unique_id

* Update src/dialogs/more-info/controls/more-info-script.ts

Co-authored-by: Bram Kragten <mail@bramkragten.nl>

---------

Co-authored-by: Bram Kragten <mail@bramkragten.nl>
2024-09-10 09:35:40 +02:00
Paulus Schoutsen d34c43e292 Add assist_satellite to Assist entities array (#21795) 2024-09-10 06:22:54 +02:00
karwosts c7cfbb5b6c Fix service advanced options UI (#21925) 2024-09-09 17:19:35 +02:00
Paul Bottein 05ad3137f1 20240909.1 (#21935) 2024-09-09 17:17:51 +02:00
Paul Bottein bde2fd8202 Bumped version to 20240909.1 2024-09-09 17:17:04 +02:00
Paul Bottein e5327c0903 Update patch for sortablejs 1.15.3 (#21934)
Update sortablejs patch
2024-09-09 15:15:53 +00:00
Yosi Levy 1a0ca1b78f RTL fixes sep 24 (#21893)
* Fix logs drop down

* Fix history arrow

* Icon direction fix
2024-09-09 17:13:23 +02:00
Paul Bottein ed141b1d12 Bumped version to 20240909.0 2024-09-09 16:35:16 +02:00
Paul Bottein 5a7a71c551 Fix section view crashing on old iPads (#21932) 2024-09-09 10:30:27 +00:00
karwosts f09e0d187b Restore localizeValue to ha-form (fix selector translations) (#21923) 2024-09-09 11:20:08 +02:00
karwosts 7f6325fa5e Fix sections item translation for config flow (#21924) 2024-09-08 15:24:59 +00:00
jonnynch de292a8143 Fix WebRTC for Firefox by ignoring empty ice candidates (#21908)
* handle firefox empty string ice candidate

* use optional chaining as per comment
2024-09-08 17:23:47 +02:00
renovate[bot] 84b2005844 Update dependency marked to v14.1.1 (#21917)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-07 08:27:00 +02:00
renovate[bot] 0d93432a2c Update dependency eslint-import-resolver-webpack to v0.13.9 (#21909)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-06 22:46:05 +00:00
Bram Kragten 8bc9927ee2 Zwave JS display allowed range of config values (#21892)
* Zwave: Display allowed range of config values, catch wrong values

* allow min and max

* Update zwave_js-node-config.ts
2024-09-07 00:38:32 +02:00
Bram Kragten 484bed4dab Fix initial form data for action/condition/trigger selectors (#21899) 2024-09-07 00:34:59 +02:00
renovate[bot] 3d7e243707 Update dependency sortablejs to v1.15.3 (#21885)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-07 00:31:08 +02:00
renovate[bot] f8a432c89e Update dependency eslint-plugin-import to v2.30.0 (#21910)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-07 00:29:53 +02:00
renovate[bot] d484b2f63d Update dependency webpack-dev-server to v5.1.0 (#21914)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-07 00:28:06 +02:00
Paul Bottein ba770f8e50 20240906.0 (#21911) 2024-09-06 13:47:49 +02:00
Paul Bottein 30d9186031 Bumped version to 20240906.0 2024-09-06 13:46:51 +02:00
Paul Bottein cd74367acc Use primary config entry for device (#21903)
* Use primary config entry for device

* Fix types
2024-09-06 13:43:29 +02:00
Bram Kragten 618cd9d9e5 Remove device subscription from zwave node config (#21891)
remove device subscription from zwave node config
2024-09-05 13:40:10 +02:00
Paul Bottein 0ff2f1bf75 Hide top label for number selector using box mode (#21888) 2024-09-05 10:22:39 +02:00
renovate[bot] d28f1f07e7 Update dependency lint-staged to v15.2.10 (#21881)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-05 10:05:06 +02:00
Bram Kragten b457d27c4c 20240904.0 (#21876) 2024-09-04 10:59:24 +02:00
Bram Kragten 6aa5bc2d8b Bumped version to 20240904.0 2024-09-04 10:50:16 +02:00
Bram Kragten 76fc0c7ab1 Change update logic in ha-data-table (#21874)
* Change update logic in ha-data-table

* use time of last request
2024-09-04 10:49:32 +02:00
Paul Bottein 7aa7019386 Move badge styling into ha-badge component to reuse it (#21864)
* Move badge styling into ha-badge component to reuse it

* Fix error badge

* Update src/components/ha-badge.ts

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>

---------

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2024-09-04 10:48:55 +02:00
Joakim Sørensen b69f0964c9 Fix compression of hassio builds (#21869) 2024-09-04 10:01:58 +02:00
renovate[bot] 2f9b6d000b Update dependency @codemirror/commands to v6.6.1 (#21863)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-04 07:48:35 +02:00
Paul Bottein 9c12ab9c6d 20240903.1 (#21867) 2024-09-03 19:02:36 +02:00
Paul Bottein 94f186c436 Bumped version to 20240903.1 2024-09-03 18:51:49 +02:00
Bram Kragten 449f858ac8 Merge branch 'master' into dev 2024-09-03 18:47:42 +02:00
Paul Bottein 91a2f2cf24 Bumped version to 20240903.0 2024-09-03 18:37:42 +02:00
Paul Bottein 2c975d4f41 Add advanced yaml only row_span option for sections (#21833) 2024-09-03 18:20:55 +02:00
renovate[bot] ab534933fc Update dependency @babel/runtime to v7.25.6 (#21847)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-03 11:37:28 -04:00
renovate[bot] e353aaa339 Update vaadinWebComponents monorepo to v24.4.7 (#21854)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-03 11:35:44 -04:00
Paul Bottein 020904f8f6 Hide section title when the section is hidden (#21862) 2024-09-03 10:41:15 +02:00
Wendelin fa8b3f006d Fix autofill for ha-selector-text (#21861) 2024-09-03 09:35:17 +02:00
Paul Bottein d9ce20992c 20240902.0 (#21857)
* Update dependency @bundle-stats/plugin-webpack-filter to v4.15.0 (#21837)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* Update dependency marked to v14.1.0 (#21829)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* Bump actions/upload-artifact from 4.3.6 to 4.4.0 (#21850)

Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 4.3.6 to 4.4.0.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](https://github.com/actions/upload-artifact/compare/v4.3.6...v4.4.0)

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Add padding to no info badge (#21844)

* Add padding to no info badge

* Update src/panels/lovelace/badges/hui-entity-badge.ts

Co-authored-by: Paul Bottein <paul.bottein@gmail.com>

---------

Co-authored-by: Paul Bottein <paul.bottein@gmail.com>

* Fix section not displayed when empty and string config (#21852)

* Move edit mode actions next to section block (#21840)

* Fix rendering of alerts in markdown when not breaking (#21856)

* Perform action on every entity (#21845)

* Bumped version to 20240902.0

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Simon Lamon <32477463+silamon@users.noreply.github.com>
Co-authored-by: Joakim Sørensen <ludeeus@ludeeus.dev>
2024-09-02 17:30:17 +02:00
Paul Bottein a09f44dcd2 Bumped version to 20240902.0 2024-09-02 17:29:27 +02:00
Simon Lamon c709059c00 Perform action on every entity (#21845) 2024-09-02 17:23:46 +02:00
Joakim Sørensen 5613df1d01 Fix rendering of alerts in markdown when not breaking (#21856) 2024-09-02 17:21:58 +02:00
Paul Bottein d8013a4db9 Move edit mode actions next to section block (#21840) 2024-09-02 13:21:24 +02:00
Paul Bottein 216dbc4d41 Fix section not displayed when empty and string config (#21852) 2024-09-02 13:21:13 +02:00
Simon Lamon c40751dadd Add padding to no info badge (#21844)
* Add padding to no info badge

* Update src/panels/lovelace/badges/hui-entity-badge.ts

Co-authored-by: Paul Bottein <paul.bottein@gmail.com>

---------

Co-authored-by: Paul Bottein <paul.bottein@gmail.com>
2024-09-02 12:35:28 +02:00
dependabot[bot] f58d3ad670 Bump actions/upload-artifact from 4.3.6 to 4.4.0 (#21850)
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 4.3.6 to 4.4.0.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](https://github.com/actions/upload-artifact/compare/v4.3.6...v4.4.0)

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-02 12:00:26 +02:00
renovate[bot] 682f5345cc Update dependency marked to v14.1.0 (#21829)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-08-29 22:35:42 -04:00
renovate[bot] a69771c1f8 Update dependency @bundle-stats/plugin-webpack-filter to v4.15.0 (#21837)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-08-29 22:33:57 -04:00
Bram Kragten 22de449dda 20240829.0 (#21836) 2024-08-29 16:40:01 +02:00
Bram Kragten 05a27b9399 Bumped version to 20240829.0 2024-08-29 16:36:32 +02:00
Paul Bottein 32083ea13d Use dense layout for section view (#21830)
* Use dense layout for section view

* Make it an option in view settings

* Add expandable
2024-08-29 16:36:00 +02:00
Paul Bottein 18210f35b5 Put number selector label above the input (#21835) 2024-08-29 16:15:55 +02:00
Paul Bottein 362a6f46fe Don't use the word column in section view (#21834) 2024-08-29 15:30:25 +02:00
Paul Bottein 1c9d411d3a Put boolean selector helper inside field (#21831) 2024-08-29 14:24:59 +02:00
Bram Kragten 6d84523456 Revert "Adds throttler to config pages for state entity updates (#21646)"
This reverts commit 00eb820e36.
2024-08-29 12:18:26 +02:00
Paul Bottein 2a18706a13 Take column span into account to determine the max number of columns (#21827) 2024-08-29 09:58:17 +02:00
karwosts 87b58b0bbd Fix untracked consumption string (#21825) 2024-08-29 09:57:53 +02:00
Simon Lamon 3ebb268b57 Migrate polymer paper tab in badge card editor (#21627)
* paper tab badge

* Remove copy paste from card editor
2024-08-29 09:55:51 +02:00
Simon Lamon 2df097cd1b Add default config automation typings (#21657)
* typings

* fixes

* fixes

* Update more typings
2024-08-29 09:55:23 +02:00
Paul Bottein 8349e47c17 20240828.0 (#21822) 2024-08-28 16:02:54 +02:00
Paul Bottein 4913932c97 Bumped version to 20240828.0 2024-08-28 16:00:16 +02:00
Paul Bottein 19f057a51b Add title and description translation support to expandable form (#21745)
* Add title and description translation support to expandable form

* Fix type

* handle translations in sections

* Rename prefix to path + refactor

* Fix section name and description

---------

Co-authored-by: Bram Kragten <mail@bramkragten.nl>
2024-08-28 13:49:38 +00:00
Paul Bottein c556742ff4 Column span better editor (#21820)
* Add label, unit and max for column span option

* Display the right number of columns in the layout editor

* improve translations
2024-08-28 12:58:46 +00:00
Paul Bottein 8b5f731d0c Use right grid column count inside grid section (#21819) 2024-08-28 12:53:29 +00:00
Bram Kragten 9568677926 Add support for service section icons (#21806)
* Add support for service section icons

* remove backwards compatibility core handles it

* Update icons.ts
2024-08-28 14:44:08 +02:00
karwosts 93ee5de1b4 Plot 'untracked consumption' on devices detail energy graph (#21632)
* Plot 'untracked consumption' on devices detail energy graph

* skip when there are no energy sources

* rename variable
2024-08-28 14:24:19 +02:00
Paul Bottein 2f68ee0efc Allow a card to span the full width of a section (#21758)
* Limit card size with the grid size

* Set full option in YAML

* Export card grid size

* Add editor

* Set full column for map card and iframe by default

* Do not set string variable
2024-08-28 12:01:40 +02:00
Paul Bottein 5a229e3c88 Allow resizing section to span multiple columns (#21742)
* WIP: Allow to resize section

* Use listeners

* Rename variables

* Rename variables

* Remove column min width

* Make column breakpoints optional

* Use old logic to calculate the number of columns

* Remove breakpoints

* Simplify column span
2024-08-28 09:54:03 +02:00
Paul Bottein 7c5f947865 Change entity badge display type to 3 booleans : name, state and icon (#21798)
* Change display type to 3 boolean : name, state and icon for entity badge

* Fix image url

* Fix not found entity

* Update state-label badge migration
2024-08-28 09:53:07 +02:00
Douwe e9cbd54979 Option to change new badge size (#21676)
* Update hui-entity-badge.ts

add option to chsnge badge size

* Update hui-entity-badge.ts

Co-authored-by: Damian Sypniewski <16312757+dsypniewski@users.noreply.github.com>

* Update hui-entity-badge.ts

prettier

* Update hui-entity-badge.ts

Fixed something strange

---------

Co-authored-by: Damian Sypniewski <16312757+dsypniewski@users.noreply.github.com>
2024-08-28 09:02:34 +02:00
karwosts cf55824899 Add more-info click to energy table and detail device graph (#21737)
* feat: more info energy dashboard

* add more info to device details usage

* Add some more-info click to energy

---------

Co-authored-by: Muka Schultze <samuelschultze@gmail.com>
Co-authored-by: Bram Kragten <mail@bramkragten.nl>
2024-08-28 08:43:53 +02:00
karwosts 395586ddeb Adjust schedule helper UI with minute granularity (#21073)
* Adjust schedule helper UI with minute granularity

* Update en.json

* ha-button
2024-08-28 08:41:53 +02:00
karwosts 9c48dbf232 Revert display_precision override for duration format (#21755)
Remove precision override for duration format
2024-08-28 08:35:11 +02:00
Simon Lamon 00eb820e36 Adds throttler to config pages for state entity updates (#21646)
throttler
2024-08-28 08:27:28 +02:00
Bram Kragten 6b99cda982 Hide deprecated stt/tts engines, use name provided by core (#21805)
* Hide deprecated stt/tts engines, use name provided by core

* Update ha-tts-picker.ts
2024-08-27 23:51:01 +02:00
renovate[bot] 9bde0e876d Update Yarn to v4.4.1 (#21809)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-08-27 13:39:32 -04:00
Denis Shulyaka 9482fcb04b Fallback data flow label translation (#21704) 2024-08-27 13:59:44 +02:00
renovate[bot] 883ad58f52 Update dependency @codemirror/view to v6.33.0 (#21804)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-08-27 12:17:41 +02:00
Paulus Schoutsen 11ace6002a Fix Assist pipeline defaults (#21796)
* Fix Assist pipeline defaults

* Always set to NONE if nothing

* Rewrite for readability
2024-08-26 23:51:37 +02:00
puddly c416daeb92 Expand the ZHA channel selection dialog text (#21801)
* Expand the ZHA channel selection dialog text

* Drop unnecessary `It is recommended to`

* Update src/translations/en.json

Co-authored-by: Simon Lamon <32477463+silamon@users.noreply.github.com>

* Replace `hui-warning` with just `ha-alert`

* Avoid creating translations for just channel numbers

---------

Co-authored-by: Simon Lamon <32477463+silamon@users.noreply.github.com>
2024-08-26 20:30:35 +00:00
Eric Shtivelberg 061521a979 Fix duplicate and non lazy loading of hui-calendar-card (#21788)
* fix: hui-calendar-card is not lazy loaded

* reorder imports
2024-08-26 17:42:33 +02:00
renovate[bot] d3f73baa36 Update vaadinWebComponents monorepo to v24.4.6 (#21794)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-08-26 11:06:02 -04:00
Paul Bottein 3037bf494c Add description to service translations (#21759) 2024-08-26 11:33:51 +02:00
Paulus Schoutsen b4dd953128 Hide tag entities from default dashboard (#21793)
Tag integration now creates entities. They need to be hidden from the default dashboard.
2024-08-26 09:44:52 +02:00
renovate[bot] 430a28f350 Update dependency webpack to v5.94.0 (#21791)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-08-25 13:47:03 -04:00
Paul Bottein 0eacf3fdac Show error badge when an unknown entity is used in badges (#21757)
* Show error badge when wrong entity set in badges
2024-08-25 13:48:05 +02:00
karwosts 7f9bf69a08 Fix tile alarm modes when wrong code entered (#21779) 2024-08-25 13:22:19 +02:00
renovate[bot] 32cca9e30c Update babel monorepo to v7.25.4 (#21789)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-08-25 13:11:20 +02:00
renovate[bot] d7d62307b8 Update dependency @material/web to v2.1.0 (#21785)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-08-25 08:13:34 +02:00
renovate[bot] 12bfa5dab2 Update dependency eslint-plugin-wc to v2.1.1 (#21784) 2024-08-24 23:04:00 -04:00
renovate[bot] c0a728bc66 Update dependency tinykeys to v3 (#21773)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-08-24 14:17:27 +02:00
renovate[bot] 19e8667349 Update dependency chart.js to v4.4.4 (#21771)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-08-24 13:23:52 +02:00
dependabot[bot] f3688b95d4 Bump micromatch from 4.0.7 to 4.0.8 (#21770)
Bumps [micromatch](https://github.com/micromatch/micromatch) from 4.0.7 to 4.0.8.
- [Release notes](https://github.com/micromatch/micromatch/releases)
- [Changelog](https://github.com/micromatch/micromatch/blob/4.0.8/CHANGELOG.md)
- [Commits](https://github.com/micromatch/micromatch/compare/4.0.7...4.0.8)

---
updated-dependencies:
- dependency-name: micromatch
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-23 22:07:45 +02:00
karwosts 01f692f05c Render the label on the target selector (#21769)
* Render the label on the target selector

* use label
2024-08-23 20:04:09 +00:00
renovate[bot] d652f6382d Update dependency @bundle-stats/plugin-webpack-filter to v4.14.2 (#21768)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-08-23 21:53:31 +02:00
renovate[bot] c0f96d9473 Update dependency husky to v9.1.5 (#21767)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-08-23 17:54:56 +02:00
renovate[bot] f1a2af24b3 Update dependency core-js to v3.38.1 (#21764)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-08-23 17:54:17 +02:00
renovate[bot] 8501098bd1 Lock file maintenance (#21734)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-08-22 21:18:12 +02:00
Gourav Soni a235f76985 fix: Add destructive styling to delete button in dashboard config rem… (#21729)
* fix: Add destructive styling to delete button in dashboard config removal dialog

* changed translation key 'remove' to 'delete'

* Update src/translations/en.json

---------

Co-authored-by: Paul Bottein <paul.bottein@gmail.com>
2024-08-21 18:25:42 +00:00
Paul Bottein 968c0de141 Fix migration from call-service to perform-action (#21746) 2024-08-21 20:13:09 +02:00
Paul Bottein 77d8aff1f4 Add missing label_id and floor_id key in action struct (#21753)
* Add missing label_id key in action struct

* Add missing floor_id key in action struct
2024-08-21 19:59:02 +02:00
Steve Repsher 5e486d9cf0 Correct serving modern build to macOS companion app (#21724) 2024-08-21 11:51:07 -04:00
Michael Arthur f730761b3f add returning lawn mower state (#21740) 2024-08-21 16:34:33 +02:00
Steve Repsher 46fc9c1a33 Remove old ha-form-style (#21751) 2024-08-21 06:29:13 +02:00
Denis Shulyaka 8ed68bf295 Add check for conversation entity (#21736)
* Add check for conversation entity

* Use true as default
2024-08-20 13:53:07 +02:00
renovate[bot] 5622180d42 Update dependency @octokit/rest to v21.0.2 (#21739) 2024-08-19 20:30:33 -04:00
renovate[bot] ef1f9b371d Update dependency @types/chromecast-caf-receiver to v6.0.17 (#21733)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-08-18 23:08:06 -04:00
renovate[bot] 0b79684cf1 Update dependency @codemirror/legacy-modes to v6.4.1 (#21731)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-08-18 23:07:03 -04:00
renovate[bot] bc68d8df11 Update dependency marked to v14 (#21654)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-08-17 12:59:26 +02:00
renovate[bot] ebbade2fb7 Update dependency @lezer/highlight to v1.2.1 (#21719) 2024-08-16 21:59:36 -04:00
renovate[bot] 2b5f778f2e Update dependency @bundle-stats/plugin-webpack-filter to v4.14.1 (#21718) 2024-08-16 21:58:23 -04:00
Paul Bottein 91fc2383cb Add badges for sidebar view (#21715) 2024-08-16 16:52:52 +02:00
Paul Bottein 1080a8c961 Add missing box shadow theme variable to entity badge (#21714) 2024-08-16 16:18:29 +02:00
renovate[bot] 6144049f8c Update dependency lint-staged to v15.2.9 (#21712)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-08-16 12:42:11 +02:00
renovate[bot] 4ad3ad6e93 Update dependency @codemirror/view to v6.32.0 (#21694)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-08-16 06:41:35 +02:00
karwosts 16e84296da Use defined response_variable for json copy_to_clipboard button (#21705) 2024-08-16 06:40:56 +02:00
karwosts 3e1ea8d236 fix ha-card-condition-state invert selector (#21711) 2024-08-16 06:39:55 +02:00
Martin Vyšňovský 8c9996fc81 Make delete button red when removing todo item (#21466) (#21708) 2024-08-16 06:39:27 +02:00
Charles Garwood 336b5fb547 Update styling on Template dev-tools (#21661)
* Update styling on Template dev-tools

* Remove unnecessary divs
2024-08-15 09:14:27 +02:00
G Johansson 3f0f3affb6 Remove deprecated mailbox (#21689)
Remove mailbox
2024-08-14 12:38:06 +02:00
renovate[bot] 6754b8893b Update dependency eslint-plugin-unused-imports to v4.1.3 (#21669)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-08-13 16:00:05 +00:00
Adam Kapos 6ec4323c76 Enable background transparency & effects on badges (#21667)
Enable background effects on badges
2024-08-13 09:23:09 +02:00
dependabot[bot] 20408392d2 Bump actions/upload-artifact from 4.3.5 to 4.3.6 (#21671)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-12 08:46:05 +02:00
dependabot[bot] b030a5d1f0 Bump relative-ci/agent-action from 2.1.11 to 2.1.12 (#21672)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-12 08:44:59 +02:00
Franck Nijhof a9f8eb5ab1 Merge branch 'dev' 2024-08-09 20:00:53 +02:00
Franck Nijhof e26e6d7c2d Bumped version to 20240809.0 2024-08-09 19:58:41 +02:00
Simon Lamon e0c98e4524 Fix left over "script" in default config when using perform action (#21650) 2024-08-09 19:55:57 +02:00
Simon Lamon 2832f501d1 Fix scripted blueprints (#21649) 2024-08-09 19:38:33 +02:00
renovate[bot] d2f2d682a9 Update CodeMirror (#21628)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-08-09 06:25:41 +00:00
renovate[bot] 54b2121273 Update dependency @lit-labs/virtualizer to v2.0.14 (#21637)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-08-09 08:15:58 +02:00
renovate[bot] c5ca731e05 Update dependency qrcode to v1.5.4 (#21638)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-08-09 08:15:11 +02:00
renovate[bot] fd9c6c5449 Update dependency @bundle-stats/plugin-webpack-filter to v4.14.0 (#21639)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-08-09 08:13:02 +02:00
renovate[bot] 39f4355c1a Update dependency core-js to v3.38.0 (#21617)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-08-08 15:57:47 -04:00
Vaibhav Tank 35fed0b0e2 Fix logout button text color on confirmation dialog (#21595) 2024-08-08 09:18:38 +02:00
Madelena Mak f0f0aefca1 Clean up OHF badge for splash screen (#21593)
* Clean up OHF badge for splash screen

* Fix demo logo size

* Fixed the code to Bram's feedback

* Pixel pushing
2024-08-08 07:56:51 +02:00
karwosts b60864086f Localize some column headers (#21622) 2024-08-08 07:55:15 +02:00
Jesse Hills 6629f372fc Fix typo in assist-render-pipeline-events.ts (#21620) 2024-08-08 07:54:35 +02:00
dependabot[bot] ec9a95dde0 Bump @75lb/deep-merge from 1.1.1 to 1.1.2 (#21616)
Bumps [@75lb/deep-merge](https://github.com/75lb/deep-merge) from 1.1.1 to 1.1.2.
- [Commits](https://github.com/75lb/deep-merge/compare/v1.1.1...v1.1.2)

---
updated-dependencies:
- dependency-name: "@75lb/deep-merge"
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-07 12:16:34 +00:00
renovate[bot] 3cd0c49c78 Update dependency luxon to v3.5.0 (#21609)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-08-07 14:03:12 +02:00
karwosts e1ae95dd9f Fix webhook textfield icon color for dark mode (#21610) 2024-08-07 08:47:26 +02:00
Franck Nijhof ab38dad156 Bumped version to 20240806.1 2024-08-06 16:55:24 +02:00
Franck Nijhof 1ddeca3eeb Merge branch 'dev' 2024-08-06 16:54:59 +02:00
Franck Nijhof 9c6aef033d Add indicator/alert to YAML integrations on integration page (#21607) 2024-08-06 16:48:29 +02:00
Bram Kragten b23aacef84 Condition testing display fix (#21606) 2024-08-06 16:33:54 +02:00
Bram Kragten 7d218c89ae Improve state badge migration (#21603) 2024-08-06 16:13:12 +02:00
Bram Kragten ffa96d789f Update weather card layout options (#21604) 2024-08-06 16:12:36 +02:00
Franck Nijhof f08f455698 Merge branch 'dev' 2024-08-06 12:10:50 +02:00
Franck Nijhof 5eae163796 Bumped version to 20240806.0 2024-08-06 12:09:23 +02:00
Franck Nijhof 9e7f01a009 Only migrate automation actions if there are any (#21599) 2024-08-06 11:39:52 +02:00
Simon Lamon eeffa3561c Add badge label (#21598) 2024-08-06 11:38:08 +02:00
renovate[bot] f096eb2031 Update dependency lint-staged to v15.2.8 (#21597)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-08-06 10:25:36 +02:00
renovate[bot] 3aad7431da Migrate renovate config (#21594)
Migrate config renovate.json

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-08-06 10:08:09 +02:00
renovate[bot] a4f167559c Update Yarn to v4.4.0 (#21592)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-08-05 23:15:32 -04:00
renovate[bot] 44a0582e83 Update vaadinWebComponents monorepo to v24.4.5 (#21585)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-08-05 23:12:45 -04:00
Bram Kragten 735560c552 Merge branch 'dev' 2024-08-05 17:16:34 +02:00
Bram Kragten 94c28ea534 Bumped version to 20240805.1 2024-08-05 17:16:24 +02:00
karwosts 5b7c20af33 fix broken perform-action translation in gauge card editor (#21589) 2024-08-05 15:15:39 +00:00
Paul Bottein 4719775926 Allow name in state content for badges (#21576) 2024-08-05 17:14:10 +02:00
Bram Kragten 5c30c1647c Show name for badges without config (#21588)
* Show name for badges without config

* also for state label type
2024-08-05 15:12:28 +00:00
karwosts 3ba572ee37 Fix pointer cursor issues (#21587)
* Fix pointer cursor issues

* one more
2024-08-05 17:07:03 +02:00
karwosts 0adee7d189 Use getStubConfig for picture-elements (and more fixes) (#21579) 2024-08-05 17:05:31 +02:00
Bram Kragten b5c2b555bc Merge branch 'dev' 2024-08-05 16:37:14 +02:00
Bram Kragten 51b6d7758d Bumped version to 20240805.0 2024-08-05 16:36:50 +02:00
karwosts 0f21dfadf1 Dont load unnecessary translations for helper dialog (#21573) 2024-08-05 16:33:36 +02:00
Robert Resch 54e8a34f21 Change yaml integration icon (#21586) 2024-08-05 16:32:04 +02:00
Steve Repsher dfbf4abd5d Link old service worker to new name (#21581) 2024-08-05 15:52:46 +02:00
dependabot[bot] 62d8434596 Bump actions/upload-artifact from 4.3.4 to 4.3.5 (#21583) 2024-08-05 08:36:50 +02:00
renovate[bot] d6df228e17 Update dependency @babel/preset-env to v7.25.3 (#21572)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-08-03 13:08:44 +00:00
Simon Lamon 00faa16349 Add some other tile cards to design page (#21563) 2024-08-03 15:06:41 +02:00
renovate[bot] 3c92fe4170 Update typescript-eslint monorepo to v7.18.0 (#21546)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-08-02 20:58:26 +02:00
renovate[bot] 02a9d67c7d Update babel monorepo to v7.25.2 (#21548)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-08-02 20:57:20 +02:00
Bram Kragten b368f886f9 20240802.0 (#21562) 2024-08-02 16:11:50 +02:00
Bram Kragten 88718bca23 Bumped version to 20240802.0 2024-08-02 15:56:25 +02:00
Bram Kragten 33931b29a1 Try to force refresh if old service worker is used (#21561)
* Try to force refresh if old service worker is used

* Update register-service-worker.ts
2024-08-02 15:32:21 +02:00
Bram Kragten a9310fdde0 fix hui-action-editor (#21560) 2024-08-02 14:27:05 +02:00
Bram Kragten d634317438 Fix tabs not shown in edit card dialog (#21559) 2024-08-02 13:46:25 +02:00
Bram Kragten a41978f647 Await starting audio recorder (#21557) 2024-08-02 12:57:57 +02:00
Bram Kragten 7e799bf639 migrate script sequence to new format (#21556) 2024-08-02 12:47:41 +02:00
Paulus Schoutsen 73617711ff Show in Assist dialog if assistant is unable to control Home Assistant (#21549)
* Show in Assist dialog if assistant is unable to control Home Assistant

* Update src/translations/en.json
2024-08-02 12:31:06 +02:00
karwosts edbfc22bf8 Add a warning for improper usage of the template selector (#21545)
* Add a warning when adding template yaml in the template selector

* refinement
2024-08-02 12:30:09 +02:00
karwosts 5e75f6a6c2 Add a destructive confirmation when deleting a picture-elements element (#21541) 2024-08-02 12:28:37 +02:00
karwosts 6dc80306e8 Add help links to helper integration config flow forms (#21537) 2024-08-02 12:27:48 +02:00
Simon Lamon acd1b04b0a Fix width of numeric features in tile card (#21543) 2024-08-01 23:57:02 +02:00
renovate[bot] 7e9d09e11c Update dependency magic-string to v0.30.11 (#21540)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-08-01 18:37:07 +02:00
renovate[bot] 038f7ec000 Update dependency husky to v9.1.4 (#21539)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-08-01 18:36:30 +02:00
renovate[bot] 08959cbabf Update dependency @codemirror/view to v6.29.1 (#21532)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-08-01 18:16:37 +02:00
Bram Kragten b611674ebd Minify ohf logo (#21528) 2024-08-01 12:29:16 +02:00
Bram Kragten da75eecfa5 Merge branch 'dev' 2024-08-01 11:15:27 +02:00
Bram Kragten 2f696bd511 Fix demo service worker (#21527)
* fix demo service worker

* cast too
2024-08-01 09:11:27 +00:00
Bram Kragten 9e3284a7db Add ping to mock hass (#21526)
add ping to mock hass
2024-08-01 08:54:43 +00:00
Bram Kragten 0c3471e0b7 Skip database migration check on demo (#21525) 2024-08-01 08:54:14 +00:00
karwosts 1ca0b58aca Picture elements editor minor adjustments (#21512)
* Picture elements editor minor adjustments

* image selector for image element

* revert change to expanded
2024-08-01 10:43:08 +02:00
renovate[bot] adceed689b Update dependency marked to v13.0.3 (#21513)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-07-31 21:32:03 +02:00
Bram Kragten fdf829bc81 20240731.0 (#21510) 2024-07-31 16:21:25 +02:00
Bram Kragten 574fc99889 Rename service button to action button (#21511) 2024-07-31 16:19:32 +02:00
Bram Kragten 3a83cb36a1 Bumped version to 20240731.0 2024-07-31 15:27:19 +02:00
Paulus Schoutsen a458ccf995 Update OHF logo on loading screen (#21509)
* Update OHF logo on loading screen

* tweak

---------

Co-authored-by: Bram Kragten <mail@bramkragten.nl>
2024-07-31 13:24:30 +00:00
Bram Kragten 560e2c9438 Migrate service call element to use action key (#21506)
Migrate service call element
2024-07-31 14:54:01 +02:00
Bram Kragten 78becb5440 Allow and migrate action key in service action (#21503) 2024-07-31 14:36:14 +02:00
Bram Kragten da2e530601 Migrate state label badge to entity badge (#21507) 2024-07-31 14:34:51 +02:00
Bram Kragten a88a7c5236 Change yaml config of UI service call actions (#21508) 2024-07-31 14:34:43 +02:00
karwosts 0a095c6f21 Add enable_millisecond to duration selector (#21498)
Add enable_milliseconds to duration selector
2024-07-31 12:34:57 +02:00
Bram Kragten e8dd835eeb rename actions in UI editors to interactions (#21505) 2024-07-31 11:39:32 +02:00
karwosts e05c66444a Picture Elements Visual editor (#19718)
* preliminary edits

* more functional prototype

* all types implemented

* mostly style and localization updates

* fix empty conditional case

* Move getConfigElement to elements themselves

* drop unneeded imports

* move struct validation to individual element editors

* description for unknown types

* Update src/panels/lovelace/editor/config-elements/elements/hui-service-button-element-editor.ts

Co-authored-by: Simon Lamon <32477463+silamon@users.noreply.github.com>

* Update src/panels/lovelace/editor/config-elements/elements/hui-state-icon-element-editor.ts

Co-authored-by: Simon Lamon <32477463+silamon@users.noreply.github.com>

* Update src/panels/lovelace/editor/config-elements/elements/hui-service-button-element-editor.ts

Co-authored-by: Simon Lamon <32477463+silamon@users.noreply.github.com>

* Update src/panels/lovelace/editor/config-elements/elements/hui-state-badge-element-editor.ts

Co-authored-by: Simon Lamon <32477463+silamon@users.noreply.github.com>

* Update hui-picture-elements-card-row-editor.ts

* Fix merge mistake

* Update src/panels/lovelace/create-element/create-picture-element.ts

remove comment

Co-authored-by: Bram Kragten <mail@bramkragten.nl>

---------

Co-authored-by: Simon Lamon <32477463+silamon@users.noreply.github.com>
Co-authored-by: Bram Kragten <mail@bramkragten.nl>
2024-07-31 11:16:57 +02:00
Paulus Schoutsen d0e61ca31a Show OHF logo on loading and about screen (#21504)
* Show OHF logo on loading screen

* Also add OHF logo to about page
2024-07-31 09:12:11 +00:00
Simon Lamon 1f90a0c2e5 Add translation for unknown entity (#21484)
* unknown entity

* prettier
2024-07-31 11:05:14 +02:00
illuzn dbd84901f8 Implement show_empty functionality for the markdown card (#21379)
* Implement show_empty functionality

* Implement show_empty functionality

* import fireEvent

* Order imports correctly

* Lint with prettier

* Unhide card when appropriate

* only run show code if card is hidden

* Commit coderabbit code cleanup

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* linting

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
2024-07-31 08:58:45 +00:00
Simon Lamon 0aa25dbed9 Don't eat spaces while searching (#21479) 2024-07-31 10:58:39 +02:00
Steve Repsher dd74a35d3f Use Brotli compression for modern build (#17906) 2024-07-31 10:57:52 +02:00
Simon Lamon b1d8ec0fe4 Call a service: Split remaining service_data's into data and target (#21440)
* service_data into data and target

* Add other possible targets
2024-07-31 10:46:00 +02:00
Simon Lamon cd4af674a3 Move some polymer paper-tabs to mwc-tabs (#21390)
* dev-tools

* entity card editor

* edit section dialog

* edit view

* Set the page from the router back in dev tools

* Remove changes to developer tools

* Prettier
2024-07-31 10:44:52 +02:00
renovate[bot] 7a6491a901 Update babel monorepo to v7.25.0 (#21497)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-07-30 16:59:34 +02:00
Bram Kragten 8d20303d54 Show helpers setup in YAML also in the UI (#21500) 2024-07-30 15:13:05 +02:00
Bram Kragten a5786b4761 Fix translation loading and manifest fetching for integration page (#21501) 2024-07-30 12:48:28 +02:00
Bram Kragten 4ade39543d Add created/modified to registry tables (#21494) 2024-07-30 11:18:50 +02:00
renovate[bot] a85dda3365 Update dependency husky to v9.1.3 (#21443)
* Update dependency husky to v9.1.3

* Follow migration guide (options removed in 10.x, but deprecation notice right now)

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Simon Lamon <32477463+silamon@users.noreply.github.com>
2024-07-30 07:44:43 +00:00
renovate[bot] e578904ff7 Update dependency @material/web to v2 (#21489)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-07-29 17:56:22 +02:00
renovate[bot] 09f0da1ead Update dependency @codemirror/view to v6.29.0 (#21488)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-07-29 17:38:14 +02:00
Mike Degatano 2faa8fec17 Music Assistant repository is now built in (#21496) 2024-07-29 15:09:33 +00:00
renovate[bot] 945c4a66b1 Update dependency tar to v7.4.3 (#21491)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-07-29 11:43:43 +02:00
renovate[bot] 5d794e7e88 Update dependency tar to v7.4.2 (#21482)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-07-28 08:02:34 +02:00
renovate[bot] 88a33bee14 Update dependency typescript to v5.5.4 (#21474) 2024-07-26 02:09:07 -04:00
renovate[bot] 35ec9af23f Update typescript-eslint monorepo to v7.17.0 (#21472) 2024-07-26 02:07:16 -04:00
renovate[bot] dd331173ad Update dependency tar to v7.4.1 (#21469)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-07-25 16:22:04 +00:00
renovate[bot] 885ccb84cb Update dependency eslint-plugin-unused-imports to v4.0.1 (#21468)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-07-25 18:06:19 +02:00
schelv 0358fe5614 Clearable time selector (#18590)
* initial attempt at clearable time selector

* only show clear button if there is a value

* use null instead of undefined.

* leave event value undefined

* move clear button into input

Co-authored-by: Bram Kragten <mail@bramkragten.nl>

---------

Co-authored-by: J. Nick Koston <nick@koston.org>
Co-authored-by: Bram Kragten <mail@bramkragten.nl>
2024-07-25 18:05:59 +02:00
renovate[bot] 89d842c2a8 Update dependency @bundle-stats/plugin-webpack-filter to v4.13.4 (#21457)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-07-24 18:44:04 +02:00
Erik Montnemery 8911b55316 Adjust message about offline database migration (#21460)
Tweak message about offline database migration
2024-07-24 13:32:27 +02:00
Paul Bottein 6791e85625 Set 56px row height for new section button and title (#21456) 2024-07-23 13:13:35 +02:00
Erik Montnemery 79618ce114 Fix offline db migration support (#21452)
* Fix offline db migration support

* Add error handling
2024-07-23 11:47:47 +02:00
Quentame 87ba0e73dd picture cards: add person image support (#20593)
* picture cards: add person image support

* fix: person attributes typing

* review: apply comment from @coderabbitai

* fix lint:types

* review: put person domain in image_entity config

* add picture card compatibility & exemple in gallery

* fix lint

* Allow only image or person domains on image_entity editor config

Co-authored-by: Simon Lamon <32477463+silamon@users.noreply.github.com>

* fix domain type

* gracefully use the default config.image if the person don't have an image

* gracefully use the default config.image if the person don't have an image (that works)

---------

Co-authored-by: Simon Lamon <32477463+silamon@users.noreply.github.com>
2024-07-23 09:50:34 +02:00
renovate[bot] 567a2ea019 Update dependency @braintree/sanitize-url to v7.1.0 (#21451)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-07-23 09:23:46 +02:00
karwosts 811c34b489 Button to copy service response as json for templates (#21226)
* Button to copy service response as json for templates
2024-07-22 18:06:48 +02:00
Paul Bottein dd22ae446a Don't show badge container if all badges are hidden (#21449) 2024-07-22 15:45:06 +02:00
Bram Kragten d96ddf968c Show yaml setup integrations in the UI (#21447)
* Show yaml setup integrations in the UI

* Update en.json

* Move config entry logic to memoize function
2024-07-22 15:44:08 +02:00
karwosts bbb64870a1 Leave climate humidity mode if entity stops supporting it (#21423)
* Leave climate humidity mode if entity stops supporting it

* check changedProps
2024-07-22 10:28:51 +02:00
dependabot[bot] f05ddd3fcd Bump softprops/action-gh-release from 2.0.6 to 2.0.8 (#21446)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-22 10:05:35 +02:00
renovate[bot] 0612e25d9f Lock file maintenance (#21430)
* Lock file maintenance

* bump vaadin to 24.4.4

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Steve Repsher <steverep@users.noreply.github.com>
2024-07-20 13:32:20 -04:00
renovate[bot] 559ecf3eae Update dependency @lokalise/node-api to v12.7.0 (#21442)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-07-20 15:57:09 +00:00
renovate[bot] ddb31a8342 Update dependency @codemirror/view to v6.28.6 (#21441)
* Update dependency @codemirror/view to v6.28.5

* Update dependency @codemirror/view to v6.28.6

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-07-20 15:56:25 +00:00
Onne 1c978b7cce Fix last point of line charts. And small other fixes to line charts. (#21235)
* Fixes last point of graphs.

Especially for items that don't often change state, the last state could
be essentially be ignored for quite a while, using the average of the
last series of entries instead.

Also for detailed graphs, the initial values could be off, because the
initial last value would be computed on bad data, resulting in NaN.

And no longer adds a double entry at end if graph has only one point.
2024-07-20 08:20:52 +00:00
renovate[bot] 9d9624c960 Update dependency @octokit/rest to v21.0.1 (#21439)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-07-20 08:08:00 +02:00
Paul Bottein 179245e1aa Add picker for badges (#21436) 2024-07-19 20:56:29 +02:00
Steve Repsher 345000a0e9 Redefine browser requirements for modern (latest) builds (#16506)
* Redefine browser requirements for modern (latest) builds

* Rename babel class properties plugin

* Fix only allowing latest Android

* Add browsers released in last year

* Use at or above for utilization (no change to browsers currently)

* Only use time query (no effective change)

* Add transform for private methods

* Fix some typos in browserslist config

Co-authored-by: Quentame <polletquentin74@me.com>

* bump browserslist-useragent-regex

* Add fallback feature detection for Array.prototype.findLast

---------

Co-authored-by: Quentame <polletquentin74@me.com>
2024-07-19 10:49:19 -04:00
Paul Bottein d94d5f96c3 Fix state content options when opening (#21437) 2024-07-19 16:48:03 +02:00
Bram Kragten 0fa3538db5 Change abi of wheel to cp312 (#21435) 2024-07-19 15:50:50 +02:00
Jan-Philipp Benecke 1749725229 Remember hidden detailed energy device statistics (#21406)
* Remember hidden detailed energy device statistics

* Do not subscribe
2024-07-19 13:56:38 +02:00
Bram Kragten 83e94d32e3 Bumped version to 20240719.0 2024-07-19 12:49:36 +02:00
Bruno Pantaleão Gonçalves 7fed4e6b37 Tell mobile app to scan for Improv devices when 'Add Integration' tap (#21420) 2024-07-19 12:48:51 +02:00
leonardmgh 677cffd650 Fix halfopen websocket (#18934)
* initial suggestion

* Refactored implementation

* Updated implementation

* Cancel existing inverval
2024-07-19 10:07:55 +00:00
Paul Bottein 1faa1480e4 Remove badges configuration from view settings (#21433) 2024-07-19 10:03:18 +00:00
karwosts 8cb63ac36d Fix quirks in URL field in view editor (#21410) 2024-07-19 11:54:35 +02:00
Paul Bottein 6e29b77e94 Use layout property for panel view (#21418) 2024-07-19 11:53:46 +02:00
dougiteixeira 38e7b8c467 Allow use trigger/condition selector in config flows (#21431) 2024-07-19 09:39:06 +00:00
karwosts d078807255 Show a fallback string when repair translation fails (#21400) 2024-07-19 11:05:03 +02:00
Steve Repsher 82d84de426 Enable service worker for legacy build (#21177) 2024-07-19 10:54:27 +02:00
Paul Bottein 729a12af0c Add new badges design with UI editor (#21401)
* Add new entity badge

* Improve badge render

* Add edit mode

* Add editor

* Increase height

* Use hui-badge

* Add editor

* Add drag and drop

* Fix editor translations

* Fix icon

* Fix inactive color

* Add state content

* Add default config

* Fix types

* Add custom badge support to editor

* Fix custom badges

* Add new badges to masonry view

* fix lint

* Fix inactive color

* Fix entity filter card

* Add display type option

* Add support for picture

* Improve focus style

* Add visibility editor

* Fix visibility

* Fix add/delete card inside section

* Fix translations

* Add error badge

* Rename classes

* Fix badge type

* Remove badges from section type

* Add missing types
2024-07-19 10:52:22 +02:00
Paul Bottein ce43774b5f Fix tile card padding in vertical mode (#21409) 2024-07-18 21:03:21 +02:00
karwosts e63d82d291 Fix persistent notification count on server restart (#21405)
* Fix persistent notification count on server restart
2024-07-18 20:53:17 +02:00
Stefan Agner d997cfcef0 Add error handling to device delete (#21403)
Currently, if device delete fails, the frontend stays silent. The
user might get hints in the Core logs, but nothing shown on the
frontend.

This adds error handling similar to other places.
2024-07-18 20:50:46 +02:00
renovate[bot] 219f548261 Update typescript-eslint monorepo to v7.16.1 (#21426)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-07-18 20:34:51 +02:00
karwosts ee2b10912c Stop closed event propagating in automation editor elements (#21424) 2024-07-18 20:34:13 +02:00
renovate[bot] e3b0630797 Update dependency @babel/core to v7.24.9 (#21422)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-07-18 20:15:53 +02:00
Joost Lekkerkerker 30d0293a4b Add model_id to device info card (#21417)
* Add model_id to device info card

* Update src/panels/config/devices/device-detail/ha-device-info-card.ts

Co-authored-by: Paul Bottein <paul.bottein@gmail.com>

* Add model_id to device info card

---------

Co-authored-by: Paul Bottein <paul.bottein@gmail.com>
2024-07-17 18:09:25 +02:00
Stefan Agner 7468ab985a Use Thread BR extended address in WS API calls (#21172)
* Use extended address in WS API calls

This follows the HA Core change and passes the extended address to the
OTBR WS API calls where necessary. It also follows the new OTBR info
format which potentially includes multiple OTBRs.

This allows to support multiple OTBR managed by a single system.

Note: There is one corner case when none of the OTBR is found via
discovery. In this case we offer to reset the OTBR. Currently we simply
offer this for the primary or first one found.

* Fix lint error

* Update src/panels/config/integrations/integration-panels/thread/thread-config-panel.ts

Co-authored-by: Bram Kragten <mail@bramkragten.nl>

* Update src/panels/config/integrations/integration-panels/thread/thread-config-panel.ts

Co-authored-by: Bram Kragten <mail@bramkragten.nl>

* Use Record type to map OBTR data

* Add labels to Thread network operation icons

* Apply suggestions from code review

Co-authored-by: Bram Kragten <mail@bramkragten.nl>

---------

Co-authored-by: Bram Kragten <mail@bramkragten.nl>
2024-07-17 09:06:09 +02:00
renovate[bot] ef3758da55 Update dependency prettier to v3.3.3 (#21408)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Simon Lamon <32477463+silamon@users.noreply.github.com>
2024-07-16 18:32:13 +02:00
renovate[bot] 2a970b8416 Update fullcalendar monorepo to v6.1.15 (#21404)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-07-16 17:54:29 +02:00
Paul Bottein f70126eb62 Adjust row height in grid (#21311)
* Set row height to 56px

* Adjust padding and sizes

* Adjust margin

* Fix pointer-events

* Fix image size

* Clean code
2024-07-15 14:11:03 +02:00
Paul Bottein f87296d978 Add state content component (#21370)
* Move state content into its own component for reusability

* Add entity state content selector

* Use live timer

* Rename live timer to remaining time and remove remaining attribute from state content list

* Move default in state content component

* Fix picker
2024-07-15 14:08:00 +02:00
renovate[bot] 2890d5c8cf Update vaadinWebComponents monorepo to v24.4.3 (#21399)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-07-15 09:45:05 +00:00
Simon Lamon 15a7ace278 Add on primary color to ha-slider (#21389)
add on primary
2024-07-15 11:38:48 +02:00
dependabot[bot] 71a2c40dd7 Bump home-assistant/wheels from 2024.01.0 to 2024.07.1 (#21398)
Bumps [home-assistant/wheels](https://github.com/home-assistant/wheels) from 2024.01.0 to 2024.07.1.
- [Release notes](https://github.com/home-assistant/wheels/releases)
- [Commits](https://github.com/home-assistant/wheels/compare/2024.01.0...2024.07.1)

---
updated-dependencies:
- dependency-name: home-assistant/wheels
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-15 09:00:16 +02:00
dependabot[bot] a08bbcd1b4 Bump actions/setup-node from 4.0.2 to 4.0.3 (#21397)
Bumps [actions/setup-node](https://github.com/actions/setup-node) from 4.0.2 to 4.0.3.
- [Release notes](https://github.com/actions/setup-node/releases)
- [Commits](https://github.com/actions/setup-node/compare/v4.0.2...v4.0.3)

---
updated-dependencies:
- dependency-name: actions/setup-node
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-15 06:59:05 +00:00
renovate[bot] 5ec257fa18 Update dependency webpack to v5.93.0 (#21394)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-07-14 22:30:44 +02:00
renovate[bot] 9b01c0b2f0 Update dependency eslint-plugin-lit-a11y to v4.1.4 (#21392)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-07-14 17:21:05 +02:00
renovate[bot] 7dd860c539 Update babel monorepo to v7.24.8 (#21391)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-07-14 17:20:19 +02:00
karwosts dbc2db2591 Make config flow previews more generic (#21382)
* Make config flow previews more generic
2024-07-14 17:01:21 +02:00
renovate[bot] 29aa57229c Update dependency gulp-zopfli-green to v6.0.2 (#21385) 2024-07-13 20:40:32 -04:00
renovate[bot] 8d74174be1 Update dependency glob to v11 (#21375)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-07-13 11:39:17 +02:00
Paul Bottein a60242f042 Fix state color for locking and unlocking state (#21369) 2024-07-13 11:35:03 +02:00
renovate[bot] db314522d7 Update dependency glob to v10.4.5 (#21374)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-07-13 01:18:34 +02:00
renovate[bot] 7b66ee06eb Update vaadinWebComponents monorepo to v24.4.2 (#21376)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-07-13 01:15:19 +02:00
renovate[bot] 3f34dacec9 Update typescript-eslint monorepo to v7.16.0 (#21372)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-07-11 21:16:54 +02:00
Bram Kragten 277650e1c1 Update en.json 2024-07-11 12:26:23 +02:00
Paul Bottein e59c04c685 Display live remaining time for timer on tile card (#21290)
Display timer by default on tile card
2024-07-11 11:09:14 +02:00
Bram Kragten d9583582e6 Rename service call to action (#21362) 2024-07-11 09:00:15 +02:00
Bram Kragten 5ead5ed058 Fix unhiding default hidden column (#21358)
the first commit is the right commit...
2024-07-10 18:25:57 +02:00
renovate[bot] f2993602f9 Update dependency superstruct to v2 (#21324)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-07-10 17:09:06 +02:00
Simon Lamon 11b490d145 Dev tools events: Add a clear events button (#21353)
Clear events
2024-07-10 15:01:56 +02:00
Bram Kragten cd4937b539 Fix unhiding default hidden columns (#21354)
* Fix unhiding default hidden columns

* Update dialog-data-table-settings.ts
2024-07-10 14:58:26 +02:00
Paul Bottein daa36788e0 Reload the card when changing the configuration in editor (#21351) 2024-07-10 12:39:50 +02:00
Paul Bottein 0447247add 20240710.0 (#21350) 2024-07-10 08:34:04 +02:00
Paul Bottein 7edc4efc95 Bumped version to 20240710.0 2024-07-10 08:21:12 +02:00
Bram Kragten 144d278e4a Don't block interaction on disabled automation selector (#21347) 2024-07-09 17:03:40 +02:00
Paul Bottein 541453c245 Fix hidden conditional card in editor preview (#21344) 2024-07-09 15:37:05 +02:00
G Johansson ca53af5c41 Add turn_on/off to FanEntity (#21339) 2024-07-09 10:26:42 +02:00
renovate[bot] bd54eb40a7 Update dependency glob to v10.4.3 (#21343)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-07-09 09:59:36 +02:00
renovate[bot] 8ff2396a53 Update vaadinWebComponents monorepo to v24.4.1 (#21334)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-07-08 17:42:39 +02:00
Bram Kragten c85e29f2bb Use localize func in table settings dialog (#21335) 2024-07-08 17:41:59 +02:00
karwosts e7a749ef7d Add title to stack editor UI (#21328)
Add title to stack editor UI
2024-07-08 14:13:29 +02:00
dependabot[bot] bef53aef57 Bump actions/upload-artifact from 4.3.3 to 4.3.4 (#21332) 2024-07-08 08:42:44 +02:00
G Johansson 877d0db1bb Add defrosting to HVAC actions for ClimateEntity (#21330) 2024-07-07 18:54:58 +02:00
renovate[bot] aa49d6ef6b Update dependency marked to v13 (#21094)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-07-07 13:32:07 +02:00
renovate[bot] d646ce4995 Update dependency @codemirror/view to v6.28.4 (#21321)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-07-06 17:42:38 +02:00
renovate[bot] d6e6844f23 Update dependency @codemirror/autocomplete to v6.17.0 (#21320)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-07-06 17:23:49 +02:00
renovate[bot] 66e26e1a27 Update dependency @braintree/sanitize-url to v7.0.4 (#21314)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-07-05 21:19:50 +02:00
Paul Bottein b7473b58fb Fix sensor card display (#21313) 2024-07-05 21:01:19 +02:00
2083 changed files with 85722 additions and 45603 deletions
+26 -29
View File
@@ -1,39 +1,36 @@
[modern]
# Support for dynamic import is the main litmus test for serving modern builds.
# Although officially a ES2020 feature, browsers implemented it early, so this
# enables all of ES2017 and some features in ES2018.
supports es6-module-dynamic-import
# Exclude Safari 11-12 because of a bug in tagged template literals
# https://bugs.webkit.org/show_bug.cgi?id=190756
# Note: Dropping version 11 also enables several more ES2018 features
not Safari < 13
not iOS < 13
# Exclude KaiOS, QQ, and UC browsers due to lack of sufficient feature support data
# Babel ignores these automatically, but we need here for Webpack to output ESM with dynamic imports
# Modern builds target recent browsers supporting the latest features to minimize transpilation, polyfills, etc.
# It is served to browsers meeting the following requirements:
# - released in the last year + current alpha/beta versions
# - Firefox extended support release (ESR)
# - with global utilization at or above 0.5%
# - exclude dead browsers (no security maintenance for 2+ years)
# - exclude KaiOS, QQ, and UC browsers due to lack of sufficient feature support data
unreleased versions
last 1 year
Firefox ESR
>= 0.5%
not dead
not KaiOS > 0
not QQAndroid > 0
not UCAndroid > 0
# Exclude unsupported browsers
not dead
[legacy]
# Legacy builds are served when modern requirements are not met and support browsers:
# - released in the last 7 years + current alpha/beta versionss
# - with global utilization above 0.05%
# The lattermost query ensures that support for popular old browsers is not dropped too early
# (e.g. IE 11, Android 4.4, or Samsung 4).
#
# In addition, legacy browsers must support some minimum features that cannot be polyfilled:
# - ES5 (strict mode)
# - web sockets to communicate with backend
# - inline SVG used widely in buttons, widgets, etc.
# - custom events used for most user interactions
# - CSS flexbox used in the majority of the layout
# Nearly all of these are redundant with the above rules.
# As of May 2023, only web sockets must be added to the query.
# - with global utilization at or above 0.05%
# - exclude dead browsers (no security maintenance for 2+ years)
# - exclude Opera Mini which does not support web sockets
unreleased versions
last 7 years
> 0.05% and supports websockets
>= 0.05%
not dead
not op_mini all
[legacy-sw]
# Same as legacy plus supports service workers
unreleased versions
last 7 years
>= 0.05% and supports serviceworkers
not dead
not op_mini all
+1 -2
View File
@@ -1,5 +1,4 @@
# See here for image contents: https://github.com/microsoft/vscode-dev-containers/tree/v0.148.1/containers/python-3/.devcontainer/base.Dockerfile
FROM mcr.microsoft.com/devcontainers/python:3.12
FROM mcr.microsoft.com/devcontainers/python:1-3.13
ENV \
DEBIAN_FRONTEND=noninteractive \
+3
View File
@@ -11,6 +11,9 @@
"DEV_CONTAINER": "1",
"WORKSPACE_DIRECTORY": "${containerWorkspaceFolder}"
},
"remoteEnv": {
"NODE_OPTIONS": "--max_old_space_size=8192"
},
"customizations": {
"vscode": {
"extensions": [
-130
View File
@@ -1,130 +0,0 @@
{
"extends": [
"airbnb-base",
"airbnb-typescript/base",
"plugin:@typescript-eslint/recommended",
"plugin:wc/recommended",
"plugin:lit/all",
"plugin:lit-a11y/recommended",
"prettier"
],
"parser": "@typescript-eslint/parser",
"parserOptions": {
"ecmaVersion": 2020,
"ecmaFeatures": {
"modules": true
},
"sourceType": "module",
"project": "./tsconfig.json"
},
"settings": {
"import/resolver": {
"webpack": {
"config": "./webpack.config.cjs"
}
}
},
"globals": {
"__DEV__": false,
"__DEMO__": false,
"__BUILD__": false,
"__VERSION__": false,
"__STATIC_PATH__": false,
"__SUPERVISOR__": false,
"Polymer": true
},
"env": {
"browser": true,
"es6": true
},
"rules": {
"class-methods-use-this": "off",
"new-cap": "off",
"prefer-template": "off",
"object-shorthand": "off",
"func-names": "off",
"no-underscore-dangle": "off",
"strict": "off",
"no-plusplus": "off",
"no-bitwise": "error",
"comma-dangle": "off",
"vars-on-top": "off",
"no-continue": "off",
"no-param-reassign": "off",
"no-multi-assign": "off",
"no-console": "error",
"radix": "off",
"no-alert": "off",
"no-nested-ternary": "off",
"prefer-destructuring": "off",
"no-restricted-globals": [2, "event"],
"prefer-promise-reject-errors": "off",
"import/prefer-default-export": "off",
"import/no-default-export": "off",
"import/no-unresolved": "off",
"import/no-cycle": "off",
"import/extensions": [
"error",
"ignorePackages",
{
"ts": "never",
"js": "never"
}
],
"no-restricted-syntax": ["error", "LabeledStatement", "WithStatement"],
"object-curly-newline": "off",
"default-case": "off",
"wc/no-self-class": "off",
"no-shadow": "off",
"@typescript-eslint/camelcase": "off",
"@typescript-eslint/ban-ts-comment": "off",
"@typescript-eslint/no-use-before-define": "off",
"@typescript-eslint/no-non-null-assertion": "off",
"@typescript-eslint/no-explicit-any": "off",
"@typescript-eslint/explicit-function-return-type": "off",
"@typescript-eslint/explicit-module-boundary-types": "off",
"@typescript-eslint/no-shadow": ["error"],
"@typescript-eslint/naming-convention": [
"off",
{
"selector": "default",
"format": ["camelCase", "snake_case"],
"leadingUnderscore": "allow",
"trailingUnderscore": "allow"
},
{
"selector": ["variable"],
"format": ["camelCase", "snake_case", "UPPER_CASE"],
"leadingUnderscore": "allow",
"trailingUnderscore": "allow"
},
{
"selector": "typeLike",
"format": ["PascalCase"]
}
],
"@typescript-eslint/no-unused-vars": "off",
"unused-imports/no-unused-vars": [
"error",
{
"vars": "all",
"varsIgnorePattern": "^_",
"args": "after-used",
"argsIgnorePattern": "^_",
"ignoreRestSiblings": true
}
],
"unused-imports/no-unused-imports": "error",
"lit/attribute-names": "warn",
"lit/attribute-value-entities": "off",
"lit/no-template-map": "off",
"lit/no-native-attributes": "warn",
"lit/no-this-assign-in-render": "warn",
"lit-a11y/click-events-have-key-events": ["off"],
"lit-a11y/no-autofocus": "off",
"lit-a11y/alt-text": "warn",
"lit-a11y/anchor-is-valid": "warn",
"lit-a11y/role-has-required-aria-attrs": "warn"
},
"plugins": ["unused-imports"]
}
+2 -2
View File
@@ -7,7 +7,7 @@ body:
value: |
Make sure you are running the [latest version of Home Assistant][releases] before reporting an issue.
If you have a feature or enhancement request for the frontend, please [start an discussion][fr] instead of creating an issue.
If you have a feature or enhancement request for the frontend, please [start a discussion][fr] instead of creating an issue.
**Please do not report issues for custom cards.**
@@ -74,7 +74,7 @@ body:
If known, otherwise leave blank.
- type: input
attributes:
label: In which browser are you experiencing the issue with?
label: In which browser are you experiencing the issue?
placeholder: Google Chrome 88.0.4324.150
description: >
Provide the full name and don't forget to add the version!
+1 -1
View File
@@ -2,7 +2,7 @@ blank_issues_enabled: false
contact_links:
- name: Request a feature for the UI / Dashboards
url: https://github.com/home-assistant/frontend/discussions/category_choices
about: Request an new feature for the Home Assistant frontend.
about: Request a new feature for the Home Assistant frontend.
- name: Report a bug that is NOT related to the UI / Dashboards
url: https://github.com/home-assistant/core/issues
about: This is the issue tracker for our frontend. Please report other issues in the backend ("core") repository.
+4 -4
View File
@@ -21,12 +21,12 @@ jobs:
url: ${{ steps.deploy.outputs.NETLIFY_LIVE_URL || steps.deploy.outputs.NETLIFY_URL }}
steps:
- name: Check out files from GitHub
uses: actions/checkout@v4.1.7
uses: actions/checkout@v4.2.2
with:
ref: dev
- name: Setup Node
uses: actions/setup-node@v4.0.2
uses: actions/setup-node@v4.2.0
with:
node-version-file: ".nvmrc"
cache: yarn
@@ -57,12 +57,12 @@ jobs:
url: ${{ steps.deploy.outputs.NETLIFY_LIVE_URL || steps.deploy.outputs.NETLIFY_URL }}
steps:
- name: Check out files from GitHub
uses: actions/checkout@v4.1.7
uses: actions/checkout@v4.2.2
with:
ref: master
- name: Setup Node
uses: actions/setup-node@v4.0.2
uses: actions/setup-node@v4.2.0
with:
node-version-file: ".nvmrc"
cache: yarn
+11 -11
View File
@@ -24,9 +24,9 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Check out files from GitHub
uses: actions/checkout@v4.1.7
uses: actions/checkout@v4.2.2
- name: Setup Node
uses: actions/setup-node@v4.0.2
uses: actions/setup-node@v4.2.0
with:
node-version-file: ".nvmrc"
cache: yarn
@@ -37,7 +37,7 @@ jobs:
- name: Build resources
run: ./node_modules/.bin/gulp gen-icons-json build-translations build-locale-data gather-gallery-pages
- name: Setup lint cache
uses: actions/cache@v4.0.2
uses: actions/cache@v4.2.0
with:
path: |
node_modules/.cache/prettier
@@ -58,9 +58,9 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Check out files from GitHub
uses: actions/checkout@v4.1.7
uses: actions/checkout@v4.2.2
- name: Setup Node
uses: actions/setup-node@v4.0.2
uses: actions/setup-node@v4.2.0
with:
node-version-file: ".nvmrc"
cache: yarn
@@ -76,9 +76,9 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Check out files from GitHub
uses: actions/checkout@v4.1.7
uses: actions/checkout@v4.2.2
- name: Setup Node
uses: actions/setup-node@v4.0.2
uses: actions/setup-node@v4.2.0
with:
node-version-file: ".nvmrc"
cache: yarn
@@ -89,7 +89,7 @@ jobs:
env:
IS_TEST: "true"
- name: Upload bundle stats
uses: actions/upload-artifact@v4.3.3
uses: actions/upload-artifact@v4.6.0
with:
name: frontend-bundle-stats
path: build/stats/*.json
@@ -100,9 +100,9 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Check out files from GitHub
uses: actions/checkout@v4.1.7
uses: actions/checkout@v4.2.2
- name: Setup Node
uses: actions/setup-node@v4.0.2
uses: actions/setup-node@v4.2.0
with:
node-version-file: ".nvmrc"
cache: yarn
@@ -113,7 +113,7 @@ jobs:
env:
IS_TEST: "true"
- name: Upload bundle stats
uses: actions/upload-artifact@v4.3.3
uses: actions/upload-artifact@v4.6.0
with:
name: supervisor-bundle-stats
path: build/stats/*.json
+1 -1
View File
@@ -23,7 +23,7 @@ jobs:
steps:
- name: Checkout repository
uses: actions/checkout@v4.1.7
uses: actions/checkout@v4.2.2
with:
# We must fetch at least the immediate parents so that if this is
# a pull request then we can checkout the head.
+4 -4
View File
@@ -22,12 +22,12 @@ jobs:
url: ${{ steps.deploy.outputs.NETLIFY_LIVE_URL || steps.deploy.outputs.NETLIFY_URL }}
steps:
- name: Check out files from GitHub
uses: actions/checkout@v4.1.7
uses: actions/checkout@v4.2.2
with:
ref: dev
- name: Setup Node
uses: actions/setup-node@v4.0.2
uses: actions/setup-node@v4.2.0
with:
node-version-file: ".nvmrc"
cache: yarn
@@ -58,12 +58,12 @@ jobs:
url: ${{ steps.deploy.outputs.NETLIFY_LIVE_URL || steps.deploy.outputs.NETLIFY_URL }}
steps:
- name: Check out files from GitHub
uses: actions/checkout@v4.1.7
uses: actions/checkout@v4.2.2
with:
ref: master
- name: Setup Node
uses: actions/setup-node@v4.0.2
uses: actions/setup-node@v4.2.0
with:
node-version-file: ".nvmrc"
cache: yarn
+2 -2
View File
@@ -16,10 +16,10 @@ jobs:
url: ${{ steps.deploy.outputs.NETLIFY_LIVE_URL || steps.deploy.outputs.NETLIFY_URL }}
steps:
- name: Check out files from GitHub
uses: actions/checkout@v4.1.7
uses: actions/checkout@v4.2.2
- name: Setup Node
uses: actions/setup-node@v4.0.2
uses: actions/setup-node@v4.2.0
with:
node-version-file: ".nvmrc"
cache: yarn
+2 -2
View File
@@ -21,10 +21,10 @@ jobs:
if: github.repository == 'home-assistant/frontend' && contains(github.event.pull_request.labels.*.name, 'needs design preview')
steps:
- name: Check out files from GitHub
uses: actions/checkout@v4.1.7
uses: actions/checkout@v4.2.2
- name: Setup Node
uses: actions/setup-node@v4.0.2
uses: actions/setup-node@v4.2.0
with:
node-version-file: ".nvmrc"
cache: yarn
+5 -5
View File
@@ -6,7 +6,7 @@ on:
- cron: "0 1 * * *"
env:
PYTHON_VERSION: "3.12"
PYTHON_VERSION: "3.13"
NODE_OPTIONS: --max_old_space_size=6144
permissions:
@@ -20,7 +20,7 @@ jobs:
contents: write
steps:
- name: Checkout the repository
uses: actions/checkout@v4.1.7
uses: actions/checkout@v4.2.2
- name: Set up Python ${{ env.PYTHON_VERSION }}
uses: actions/setup-python@v5
@@ -28,7 +28,7 @@ jobs:
python-version: ${{ env.PYTHON_VERSION }}
- name: Setup Node
uses: actions/setup-node@v4.0.2
uses: actions/setup-node@v4.2.0
with:
node-version-file: ".nvmrc"
cache: yarn
@@ -57,14 +57,14 @@ jobs:
run: tar -czvf translations.tar.gz translations
- name: Upload build artifacts
uses: actions/upload-artifact@v4.3.3
uses: actions/upload-artifact@v4.6.0
with:
name: wheels
path: dist/home_assistant_frontend*.whl
if-no-files-found: error
- name: Upload translations
uses: actions/upload-artifact@v4.3.3
uses: actions/upload-artifact@v4.6.0
with:
name: translations
path: translations.tar.gz
+1 -1
View File
@@ -17,7 +17,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Send bundle stats and build information to RelativeCI
uses: relative-ci/agent-action@v2.1.11
uses: relative-ci/agent-action@v2.1.14
with:
key: ${{ secrets[format('RELATIVE_CI_KEY_{0}_{1}', matrix.bundle, matrix.build)] }}
token: ${{ github.token }}
+1 -1
View File
@@ -18,6 +18,6 @@ jobs:
pull-requests: read
runs-on: ubuntu-latest
steps:
- uses: release-drafter/release-drafter@v6.0.0
- uses: release-drafter/release-drafter@v6.1.0
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+67 -9
View File
@@ -6,7 +6,7 @@ on:
- published
env:
PYTHON_VERSION: "3.12"
PYTHON_VERSION: "3.13"
NODE_OPTIONS: --max_old_space_size=6144
# Set default workflow permissions
@@ -23,18 +23,18 @@ jobs:
contents: write # Required to upload release assets
steps:
- name: Checkout the repository
uses: actions/checkout@v4.1.7
- name: Verify version
uses: home-assistant/actions/helpers/verify-version@master
uses: actions/checkout@v4.2.2
- name: Set up Python ${{ env.PYTHON_VERSION }}
uses: actions/setup-python@v5
with:
python-version: ${{ env.PYTHON_VERSION }}
- name: Verify version
uses: home-assistant/actions/helpers/verify-version@master
- name: Setup Node
uses: actions/setup-node@v4.0.2
uses: actions/setup-node@v4.2.0
with:
node-version-file: ".nvmrc"
cache: yarn
@@ -55,7 +55,7 @@ jobs:
script/release
- name: Upload release assets
uses: softprops/action-gh-release@v2.0.6
uses: softprops/action-gh-release@v2.2.1
with:
files: |
dist/*.whl
@@ -74,10 +74,68 @@ jobs:
echo "home-assistant-frontend==$version" > ./requirements.txt
- name: Build wheels
uses: home-assistant/wheels@2024.01.0
uses: home-assistant/wheels@2024.11.0
with:
abi: cp311
abi: cp313
tag: musllinux_1_2
arch: amd64
wheels-key: ${{ secrets.WHEELS_KEY }}
requirements: "requirements.txt"
release-landing-page:
name: Release landing-page frontend
if: github.event.release.prerelease == false
runs-on: ubuntu-latest
permissions:
contents: write # Required to upload release assets
steps:
- name: Checkout the repository
uses: actions/checkout@v4.2.2
- name: Setup Node
uses: actions/setup-node@v4.2.0
with:
node-version-file: ".nvmrc"
cache: yarn
- name: Install dependencies
run: yarn install
- name: Download Translations
run: ./script/translations_download
env:
LOKALISE_TOKEN: ${{ secrets.LOKALISE_TOKEN }}
- name: Build landing-page
run: landing-page/script/build_landing_page
- name: Tar folder
run: tar -czf landing-page/home_assistant_frontend_landingpage-${{ github.event.release.tag_name }}.tar.gz -C landing-page/dist .
- name: Upload release asset
uses: softprops/action-gh-release@v2.2.1
with:
files: landing-page/home_assistant_frontend_landingpage-${{ github.event.release.tag_name }}.tar.gz
release-supervisor:
name: Release supervisor frontend
if: github.event.release.prerelease == false
runs-on: ubuntu-latest
permissions:
contents: write # Required to upload release assets
steps:
- name: Checkout the repository
uses: actions/checkout@v4.2.2
- name: Setup Node
uses: actions/setup-node@v4.2.0
with:
node-version-file: ".nvmrc"
cache: yarn
- name: Install dependencies
run: yarn install
- name: Download Translations
run: ./script/translations_download
env:
LOKALISE_TOKEN: ${{ secrets.LOKALISE_TOKEN }}
- name: Build supervisor
run: hassio/script/build_hassio
- name: Tar folder
run: tar -czf hassio/home_assistant_frontend_supervisor-${{ github.event.release.tag_name }}.tar.gz -C hassio/build .
- name: Upload release asset
uses: softprops/action-gh-release@v2.2.1
with:
files: hassio/home_assistant_frontend_supervisor-${{ github.event.release.tag_name }}.tar.gz
+1 -1
View File
@@ -10,7 +10,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: 90 days stale policy
uses: actions/stale@v9.0.0
uses: actions/stale@v9.1.0
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
days-before-stale: 90
+1 -1
View File
@@ -13,7 +13,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout the repository
uses: actions/checkout@v4.1.7
uses: actions/checkout@v4.2.2
- name: Upload Translations
run: |
+3
View File
@@ -50,3 +50,6 @@ src/cast/dev_const.ts
# Jetbrains
/.idea/
# test coverage
test/coverage/
-3
View File
@@ -1,4 +1 @@
#!/usr/bin/env sh
. "$(dirname -- "$0")/_/husky.sh"
yarn run lint-staged --relative --shell "/bin/bash"
+2 -1
View File
@@ -4,6 +4,7 @@
"esbenp.prettier-vscode",
"runem.lit-plugin",
"github.vscode-pull-request-github",
"eamodio.gitlens"
"eamodio.gitlens",
"vitest.explorer"
]
}
+32
View File
@@ -100,6 +100,38 @@
"instanceLimit": 1
}
},
{
"label": "Develop Landing Page",
"type": "gulp",
"task": "develop-landing-page",
"problemMatcher": {
"owner": "ha-build",
"source": "ha-build",
"fileLocation": "absolute",
"severity": "error",
"pattern": [
{
"regexp": "(SyntaxError): (.+): (.+) \\((\\d+):(\\d+)\\)",
"severity": 1,
"file": 2,
"message": 3,
"line": 4,
"column": 5
}
],
"background": {
"activeOnStart": true,
"beginsPattern": "Changes detected. Starting compilation",
"endsPattern": "Build done @"
}
},
"isBackground": true,
"group": "build",
"runOptions": {
"instanceLimit": 1
}
},
{
"label": "Develop Demo",
"type": "gulp",
@@ -1,16 +1,7 @@
diff --git a/modular/sortable.core.esm.js b/modular/sortable.core.esm.js
index 93ba17509e2e8583ab241fea6845fbe714c584a2..de0651ddb5dced30d36f7d764da0dd0b441f523f 100644
index 8b5e49b011713c8859c669069fbe85ce53974e1d..6a0afc92787157b8a31c38cc5f67dfa526090a00 100644
--- a/modular/sortable.core.esm.js
+++ b/modular/sortable.core.esm.js
@@ -1461,7 +1461,7 @@ Sortable.prototype = /** @lends Sortable.prototype */{
}
target = parent; // store last element
}
- /* jshint boss:true */ while (parent = parent.parentNode);
+ /* jshint boss:true */ while (parent = parent.parentNode || parent.getRootNode().host);
}
_unhideGhostForTarget();
}
@@ -1781,11 +1781,16 @@ Sortable.prototype = /** @lends Sortable.prototype */{
}
if (_onMove(rootEl, el, dragEl, dragRect, target, targetRect, evt, !!target) !== false) {
@@ -33,7 +24,7 @@ index 93ba17509e2e8583ab241fea6845fbe714c584a2..de0651ddb5dced30d36f7d764da0dd0b
}
parentEl = el; // actualization
@@ -1802,7 +1807,13 @@ Sortable.prototype = /** @lends Sortable.prototype */{
@@ -1802,7 +1807,12 @@ Sortable.prototype = /** @lends Sortable.prototype */{
targetRect = getRect(target);
if (_onMove(rootEl, el, dragEl, dragRect, target, targetRect, evt, false) !== false) {
capture();
@@ -44,11 +35,10 @@ index 93ba17509e2e8583ab241fea6845fbe714c584a2..de0651ddb5dced30d36f7d764da0dd0b
+ catch(err) {
+ return completed(false);
+ }
+
parentEl = el; // actualization
changed();
@@ -1849,12 +1860,17 @@ Sortable.prototype = /** @lends Sortable.prototype */{
@@ -1849,10 +1859,15 @@ Sortable.prototype = /** @lends Sortable.prototype */{
_silent = true;
setTimeout(_unsilent, 30);
capture();
@@ -56,8 +46,6 @@ index 93ba17509e2e8583ab241fea6845fbe714c584a2..de0651ddb5dced30d36f7d764da0dd0b
- el.appendChild(dragEl);
- } else {
- target.parentNode.insertBefore(dragEl, after ? nextSibling : target);
- }
+ try {
+ if (after && !nextSibling) {
+ el.appendChild(dragEl);
@@ -67,7 +55,6 @@ index 93ba17509e2e8583ab241fea6845fbe714c584a2..de0651ddb5dced30d36f7d764da0dd0b
+ }
+ catch(err) {
+ return completed(false);
+ }
}
// Undo chrome's scroll adjustment (has no effect on other browsers)
if (scrolledPastTop) {
scrollBy(scrolledPastTop, 0, scrollBefore - scrolledPastTop.scrollTop);
@@ -0,0 +1,55 @@
diff --git a/build/inject-manifest.js b/build/inject-manifest.js
index 60e3d2bb51c11a19fbbedbad65e101082ec41c36..fed6026630f43f86e25446383982cf6fb694313b 100644
--- a/build/inject-manifest.js
+++ b/build/inject-manifest.js
@@ -104,7 +104,7 @@ async function injectManifest(config) {
replaceString: manifestString,
searchString: options.injectionPoint,
});
- filesToWrite[options.swDest] = source;
+ filesToWrite[options.swDest] = source.replace(url, encodeURI(upath_1.default.basename(destPath)));
filesToWrite[destPath] = map;
}
else {
diff --git a/build/lib/translate-url-to-sourcemap-paths.js b/build/lib/translate-url-to-sourcemap-paths.js
index 3220c5474eeac6e8a56ca9b2ac2bd9be48529e43..5f003879a904d4840529a42dd056d288fd213771 100644
--- a/build/lib/translate-url-to-sourcemap-paths.js
+++ b/build/lib/translate-url-to-sourcemap-paths.js
@@ -22,7 +22,7 @@ function translateURLToSourcemapPaths(url, swSrc, swDest) {
const possibleSrcPath = upath_1.default.resolve(upath_1.default.dirname(swSrc), url);
if (fs_extra_1.default.existsSync(possibleSrcPath)) {
srcPath = possibleSrcPath;
- destPath = upath_1.default.resolve(upath_1.default.dirname(swDest), url);
+ destPath = `${swDest}.map`;
}
else {
warning = `${errors_1.errors['cant-find-sourcemap']} ${possibleSrcPath}`;
diff --git a/src/inject-manifest.ts b/src/inject-manifest.ts
index 8795ddcaa77aea7b0356417e4bc4b19e2b3f860c..fcdc68342d9ac53936c9ed40a9ccfc2f5070cad3 100644
--- a/src/inject-manifest.ts
+++ b/src/inject-manifest.ts
@@ -129,7 +129,10 @@ export async function injectManifest(
searchString: options.injectionPoint!,
});
- filesToWrite[options.swDest] = source;
+ filesToWrite[options.swDest] = source.replace(
+ url!,
+ encodeURI(upath.basename(destPath)),
+ );
filesToWrite[destPath] = map;
} else {
// If there's no sourcemap associated with swSrc, a simple string
diff --git a/src/lib/translate-url-to-sourcemap-paths.ts b/src/lib/translate-url-to-sourcemap-paths.ts
index 072eac40d4ef5d095a01cb7f7e392a9e034853bd..f0bbe69e88ef3a415de18a7e9cb264daea273d71 100644
--- a/src/lib/translate-url-to-sourcemap-paths.ts
+++ b/src/lib/translate-url-to-sourcemap-paths.ts
@@ -28,7 +28,7 @@ export function translateURLToSourcemapPaths(
const possibleSrcPath = upath.resolve(upath.dirname(swSrc), url);
if (fse.existsSync(possibleSrcPath)) {
srcPath = possibleSrcPath;
- destPath = upath.resolve(upath.dirname(swDest), url);
+ destPath = `${swDest}.map`;
} else {
warning = `${errors['cant-find-sourcemap']} ${possibleSrcPath}`;
}
-894
View File
File diff suppressed because one or more lines are too long
+934
View File
File diff suppressed because one or more lines are too long
+1 -1
View File
@@ -6,4 +6,4 @@ enableGlobalCache: false
nodeLinker: node-modules
yarnPath: .yarn/releases/yarn-4.3.1.cjs
yarnPath: .yarn/releases/yarn-4.6.0.cjs
+2
View File
@@ -27,3 +27,5 @@ A complete guide can be found at the following [link](https://www.home-assistant
Home Assistant is open-source and Apache 2 licensed. Feel free to browse the repository, learn and reuse parts in your own projects.
We use [BrowserStack](https://www.browserstack.com) to test Home Assistant on a large variety of devices.
[![Home Assistant - A project from the Open Home Foundation](https://www.openhomefoundation.org/badges/home-assistant.png)](https://www.openhomefoundation.org/)
-12
View File
@@ -1,12 +0,0 @@
{
"extends": "../.eslintrc.json",
"rules": {
"no-console": "off",
"import/no-extraneous-dependencies": "off",
"import/extensions": "off",
"import/no-dynamic-require": "off",
"global-require": "off",
"@typescript-eslint/no-var-requires": "off",
"prefer-arrow-callback": "off"
}
}
+1 -1
View File
@@ -15,7 +15,7 @@ The Home Assistant build pipeline contains various steps to prepare a build.
Currently in Home Assistant we use a bundler to convert TypeScript, CSS and JSON files to JavaScript files that the browser understands.
We currently rely on Webpack but also have experimental Rollup support. Both of these programs bundle the converted files in both production and development.
We currently rely on Webpack. Both of these programs bundle the converted files in both production and development.
For development, bundling is optional. We just want to get the right files in the browser.
@@ -5,7 +5,7 @@ import paths from "../paths.cjs";
const POLYFILL_DIR = join(paths.polymer_dir, "src/resources/polyfills");
// List of polyfill keys with supported browser targets for the functionality
const PolyfillSupport = {
const polyfillSupport = {
// Note states and shadowRoot properties should be supported.
"element-internals": {
android: 90,
@@ -18,17 +18,6 @@ const PolyfillSupport = {
safari: 17.4,
samsung: 15.0,
},
"element-append": {
android: 54,
chrome: 54,
edge: 17,
firefox: 49,
ios: 10.0,
opera: 41,
opera_mobile: 41,
safari: 10.0,
samsung: 6.0,
},
"element-getattributenames": {
android: 61,
chrome: 61,
@@ -51,27 +40,18 @@ const PolyfillSupport = {
safari: 12.0,
samsung: 10.0,
},
fetch: {
android: 42,
chrome: 42,
edge: 14,
firefox: 39,
ios: 10.3,
opera: 29,
opera_mobile: 29,
safari: 10.1,
samsung: 4.0,
},
// FormatJS polyfill detects fix for https://bugs.chromium.org/p/v8/issues/detail?id=10682,
// so adjusted to several months after that was marked fixed
"intl-getcanonicallocales": {
android: 54,
chrome: 54,
edge: 16,
android: 90,
chrome: 90,
edge: 90,
firefox: 48,
ios: 10.3,
opera: 41,
opera_mobile: 41,
opera: 76,
opera_mobile: 64,
safari: 10.1,
samsung: 6.0,
samsung: 15.0,
},
"intl-locale": {
android: 74,
@@ -87,17 +67,6 @@ const PolyfillSupport = {
"intl-other": {
// Not specified (i.e. always try polyfill) since compatibility depends on supported locales
},
proxy: {
android: 49,
chrome: 49,
edge: 12,
firefox: 18,
ios: 10.0,
opera: 36,
opera_mobile: 36,
safari: 10.0,
samsung: 5.0,
},
"resize-observer": {
android: 64,
chrome: 64,
@@ -115,8 +84,6 @@ const PolyfillSupport = {
// corresponding polyfill key and actual module to import
const polyfillMap = {
global: {
fetch: { key: "fetch", module: "unfetch/polyfill" },
Proxy: { key: "proxy", module: "proxy-polyfill" },
ResizeObserver: {
key: "resize-observer",
module: join(POLYFILL_DIR, "resize-observer.ts"),
@@ -128,7 +95,7 @@ const polyfillMap = {
module: "element-internals-polyfill",
},
...Object.fromEntries(
["append", "getAttributeNames", "toggleAttribute"].map((prop) => {
["getAttributeNames", "toggleAttribute"].map((prop) => {
const key = `element-${prop.toLowerCase()}`;
return [prop, { key, module: join(POLYFILL_DIR, `${key}.ts`) }];
})
@@ -147,6 +114,7 @@ const polyfillMap = {
...Object.fromEntries(
[
"DateTimeFormat",
"DurationFormat",
"DisplayNames",
"ListFormat",
"NumberFormat",
@@ -167,7 +135,7 @@ export default defineProvider(
const resolvePolyfill = createMetaResolver(polyfillMap);
return {
name: "custom-polyfill",
polyfills: PolyfillSupport,
polyfills: polyfillSupport,
usageGlobal(meta, utils) {
const polyfill = resolvePolyfill(meta);
if (polyfill && shouldInjectPolyfill(polyfill.desc.key)) {
+40 -7
View File
@@ -47,12 +47,17 @@ module.exports.emptyPackages = ({ latestBuild, isHassioBuild }) =>
module.exports.definedVars = ({ isProdBuild, latestBuild, defineOverlay }) => ({
__DEV__: !isProdBuild,
__BUILD__: JSON.stringify(latestBuild ? "latest" : "es5"),
__BUILD__: JSON.stringify(latestBuild ? "modern" : "legacy"),
__VERSION__: JSON.stringify(env.version()),
__DEMO__: false,
__SUPERVISOR__: false,
__BACKWARDS_COMPAT__: false,
__STATIC_PATH__: "/static/",
__HASS_URL__: `\`${
"HASS_URL" in process.env
? process.env["HASS_URL"]
: "${location.protocol}//${location.host}"
}\``,
"process.env.NODE_ENV": JSON.stringify(
isProdBuild ? "production" : "development"
),
@@ -79,7 +84,12 @@ module.exports.terserOptions = ({ latestBuild, isTestBuild }) => ({
sourceMap: !isTestBuild,
});
module.exports.babelOptions = ({ latestBuild, isProdBuild, isTestBuild }) => ({
module.exports.babelOptions = ({
latestBuild,
isProdBuild,
isTestBuild,
sw,
}) => ({
babelrc: false,
compact: false,
assumptions: {
@@ -87,7 +97,7 @@ module.exports.babelOptions = ({ latestBuild, isProdBuild, isTestBuild }) => ({
setPublicClassFields: true,
setSpreadProperties: true,
},
browserslistEnv: latestBuild ? "modern" : "legacy",
browserslistEnv: latestBuild ? "modern" : `legacy${sw ? "-sw" : ""}`,
presets: [
[
"@babel/preset-env",
@@ -135,13 +145,18 @@ module.exports.babelOptions = ({ latestBuild, isProdBuild, isTestBuild }) => ({
"@babel/plugin-transform-runtime",
{ version: dependencies["@babel/runtime"] },
],
// Support some proposals still in TC39 process
["@babel/plugin-proposal-decorators", { decoratorsBeforeExport: true }],
// Transpile decorators (still in TC39 process)
// Modern browsers support class fields and private methods, but transform is required with the older decorator version dictated by Lit
[
"@babel/plugin-proposal-decorators",
{ version: "2018-09", decoratorsBeforeExport: true },
],
"@babel/plugin-transform-class-properties",
"@babel/plugin-transform-private-methods",
].filter(Boolean),
exclude: [
// \\ for Windows, / for Mac OS and Linux
/node_modules[\\/]core-js/,
/node_modules[\\/]webpack[\\/]buildin/,
],
sourceMaps: !isTestBuild,
overrides: [
@@ -215,7 +230,12 @@ module.exports.config = {
return {
name: "frontend" + nameSuffix(latestBuild),
entry: {
service_worker: "./src/entrypoints/service_worker.ts",
"service-worker": !latestBuild
? {
import: "./src/entrypoints/service-worker.ts",
layer: "sw",
}
: "./src/entrypoints/service-worker.ts",
app: "./src/entrypoints/app.ts",
authorize: "./src/entrypoints/authorize.ts",
onboarding: "./src/entrypoints/onboarding.ts",
@@ -311,4 +331,17 @@ module.exports.config = {
},
};
},
landingPage({ isProdBuild, latestBuild }) {
return {
name: "landing-page" + nameSuffix(latestBuild),
entry: {
entrypoint: path.resolve(paths.landingPage_dir, "src/entrypoint.js"),
},
outputPath: outputPath(paths.landingPage_output_root, latestBuild),
publicPath: publicPath(latestBuild),
isProdBuild,
latestBuild,
};
},
};
+6 -10
View File
@@ -2,26 +2,22 @@ const fs = require("fs");
const path = require("path");
const paths = require("./paths.cjs");
const isTrue = (value) => value === "1" || value?.toLowerCase() === "true";
module.exports = {
useRollup() {
return process.env.ROLLUP === "1";
},
useWDS() {
return process.env.WDS === "1";
},
isProdBuild() {
return (
process.env.NODE_ENV === "production" || module.exports.isStatsBuild()
);
},
isStatsBuild() {
return process.env.STATS === "1";
return isTrue(process.env.STATS);
},
isTestBuild() {
return process.env.IS_TEST === "true";
return isTrue(process.env.IS_TEST);
},
isNetlify() {
return process.env.NETLIFY === "true";
return isTrue(process.env.NETLIFY);
},
version() {
const version = fs
@@ -33,6 +29,6 @@ module.exports = {
return version[1];
},
isDevContainer() {
return process.env.DEV_CONTAINER === "1";
return isTrue(process.env.DEV_CONTAINER);
},
};
+16
View File
@@ -0,0 +1,16 @@
import rootConfig from "../eslint.config.mjs";
export default [
...rootConfig,
{
rules: {
"no-console": "off",
"import/no-extraneous-dependencies": "off",
"import/extensions": "off",
"import/no-dynamic-require": "off",
"global-require": "off",
"@typescript-eslint/no-require-imports": "off",
"prefer-arrow-callback": "off",
},
},
];
+15 -10
View File
@@ -6,11 +6,9 @@ import "./entry-html.js";
import "./gather-static.js";
import "./gen-icons-json.js";
import "./locale-data.js";
import "./rollup.js";
import "./service-worker.js";
import "./translations.js";
import "./wds.js";
import "./webpack.js";
import "./rspack.js";
gulp.task(
"develop-app",
@@ -27,11 +25,7 @@ gulp.task(
"build-locale-data"
),
"copy-static-app",
env.useWDS()
? "wds-watch-app"
: env.useRollup()
? "rollup-watch-app"
: "webpack-watch-app"
"rspack-watch-app"
)
);
@@ -44,9 +38,20 @@ gulp.task(
"clean",
gulp.parallel("gen-icons-json", "build-translations", "build-locale-data"),
"copy-static-app",
env.useRollup() ? "rollup-prod-app" : "webpack-prod-app",
"rspack-prod-app",
gulp.parallel("gen-pages-app-prod", "gen-service-worker-app-prod"),
// Don't compress running tests
...(env.isTestBuild() ? [] : ["compress-app"])
...(env.isTestBuild() || env.isStatsBuild() ? [] : ["compress-app"])
)
);
gulp.task(
"analyze-app",
gulp.series(
async function setEnv() {
process.env.STATS = "1";
},
"clean",
"rspack-prod-app"
)
);
+3 -5
View File
@@ -1,12 +1,10 @@
import gulp from "gulp";
import env from "../env.cjs";
import "./clean.js";
import "./entry-html.js";
import "./gather-static.js";
import "./rollup.js";
import "./service-worker.js";
import "./translations.js";
import "./webpack.js";
import "./rspack.js";
gulp.task(
"develop-cast",
@@ -19,7 +17,7 @@ gulp.task(
gulp.parallel("gen-icons-json", "build-translations", "build-locale-data"),
"copy-static-cast",
"gen-pages-cast-dev",
env.useRollup() ? "rollup-dev-server-cast" : "webpack-dev-server-cast"
"rspack-dev-server-cast"
)
);
@@ -33,7 +31,7 @@ gulp.task(
"translations-enable-merge-backend",
gulp.parallel("gen-icons-json", "build-translations", "build-locale-data"),
"copy-static-cast",
env.useRollup() ? "rollup-prod-cast" : "webpack-prod-cast",
"rspack-prod-cast",
"gen-pages-cast-prod"
)
);
+11
View File
@@ -38,3 +38,14 @@ gulp.task(
])
)
);
gulp.task(
"clean-landing-page",
gulp.parallel("clean-translations", async () =>
deleteSync([
paths.landingPage_output_root,
paths.landingPage_build,
paths.build_dir,
])
)
);
+75 -8
View File
@@ -1,19 +1,86 @@
// Tasks to compress
import { constants } from "node:zlib";
import gulp from "gulp";
import brotli from "gulp-brotli";
import zopfli from "gulp-zopfli-green";
import paths from "../paths.cjs";
const filesGlob = "*.{js,json,css,svg,xml}";
const brotliOptions = {
skipLarger: true,
params: {
[constants.BROTLI_PARAM_QUALITY]: constants.BROTLI_MAX_QUALITY,
},
};
const zopfliOptions = { threshold: 150 };
const compressDist = (rootDir) =>
const compressModern = (rootDir, modernDir, compress) =>
gulp
.src([
`${rootDir}/**/*.{js,json,css,svg,xml}`,
`${rootDir}/{authorize,onboarding}.html`,
])
.pipe(zopfli(zopfliOptions))
.src([`${modernDir}/**/${filesGlob}`, `${rootDir}/sw-modern.js`], {
base: rootDir,
allowEmpty: true,
})
.pipe(compress === "zopfli" ? zopfli(zopfliOptions) : brotli(brotliOptions))
.pipe(gulp.dest(rootDir));
gulp.task("compress-app", () => compressDist(paths.app_output_root));
gulp.task("compress-hassio", () => compressDist(paths.hassio_output_root));
const compressOther = (rootDir, modernDir, compress) =>
gulp
.src(
[
`${rootDir}/**/${filesGlob}`,
`!${modernDir}/**/${filesGlob}`,
`!${rootDir}/{sw-modern,service_worker}.js`,
`${rootDir}/{authorize,onboarding}.html`,
],
{ base: rootDir, allowEmpty: true }
)
.pipe(compress === "zopfli" ? zopfli(zopfliOptions) : brotli(brotliOptions))
.pipe(gulp.dest(rootDir));
const compressAppModernBrotli = () =>
compressModern(paths.app_output_root, paths.app_output_latest, "brotli");
const compressAppModernZopfli = () =>
compressModern(paths.app_output_root, paths.app_output_latest, "zopfli");
const compressHassioModernBrotli = () =>
compressModern(
paths.hassio_output_root,
paths.hassio_output_latest,
"brotli"
);
const compressHassioModernZopfli = () =>
compressModern(
paths.hassio_output_root,
paths.hassio_output_latest,
"zopfli"
);
const compressAppOtherBrotli = () =>
compressOther(paths.app_output_root, paths.app_output_latest, "brotli");
const compressAppOtherZopfli = () =>
compressOther(paths.app_output_root, paths.app_output_latest, "zopfli");
const compressHassioOtherBrotli = () =>
compressOther(paths.hassio_output_root, paths.hassio_output_latest, "brotli");
const compressHassioOtherZopfli = () =>
compressOther(paths.hassio_output_root, paths.hassio_output_latest, "zopfli");
gulp.task(
"compress-app",
gulp.parallel(
compressAppModernBrotli,
compressAppOtherBrotli,
compressAppModernZopfli,
compressAppOtherZopfli
)
);
gulp.task(
"compress-hassio",
gulp.parallel(
compressHassioModernBrotli,
compressHassioOtherBrotli,
compressHassioModernZopfli,
compressHassioOtherZopfli
)
);
+14 -5
View File
@@ -1,13 +1,11 @@
import gulp from "gulp";
import env from "../env.cjs";
import "./clean.js";
import "./entry-html.js";
import "./gather-static.js";
import "./gen-icons-json.js";
import "./rollup.js";
import "./service-worker.js";
import "./translations.js";
import "./webpack.js";
import "./rspack.js";
gulp.task(
"develop-demo",
@@ -24,7 +22,7 @@ gulp.task(
"build-locale-data"
),
"copy-static-demo",
env.useRollup() ? "rollup-dev-server-demo" : "webpack-dev-server-demo"
"rspack-dev-server-demo"
)
);
@@ -39,7 +37,18 @@ gulp.task(
"translations-enable-merge-backend",
gulp.parallel("gen-icons-json", "build-translations", "build-locale-data"),
"copy-static-demo",
env.useRollup() ? "rollup-prod-demo" : "webpack-prod-demo",
"rspack-prod-demo",
"gen-pages-demo-prod"
)
);
gulp.task(
"analyze-demo",
gulp.series(
async function setEnv() {
process.env.STATS = "1";
},
"clean",
"rspack-prod-demo"
)
);
+2 -1
View File
@@ -13,7 +13,7 @@ const srcMeta = "src/translations/translationMetadata.json";
const encoding = "utf8";
function hasHtml(data) {
return /<[a-z][\s\S]*>/i.test(data);
return /<\S*>/i.test(data);
}
function recursiveCheckHasHtml(file, data, errors, recKey) {
@@ -127,6 +127,7 @@ gulp.task("fetch-lokalise", async function () {
replace_breaks: false,
json_unescaped_slashes: true,
export_empty_as: "skip",
filter_data: ["verified"],
})
.then((download) => fetch(download.bundle_url))
.then((response) => {
+90 -31
View File
@@ -1,28 +1,73 @@
// Tasks to generate entry HTML
import {
applyVersionsToRegexes,
compileRegex,
getPreUserAgentRegexes,
} from "browserslist-useragent-regexp";
import fs from "fs-extra";
import gulp from "gulp";
import { minify } from "html-minifier-terser";
import template from "lodash.template";
import path from "path";
import { dirname, extname, resolve } from "node:path";
import { htmlMinifierOptions, terserOptions } from "../bundle.cjs";
import env from "../env.cjs";
import paths from "../paths.cjs";
// macOS companion app has no way to obtain the Safari version used by WKWebView,
// and it is not in the default user agent string. So we add an additional regex
// to serve modern based on a minimum macOS version. We take the minimum Safari
// major version from browserslist and manually map that to a supported macOS
// version. Note this assumes the user has kept Safari updated.
const HA_MACOS_REGEX =
/Home Assistant\/[\d.]+ \(.+; macOS (\d+)\.(\d+)(?:\.(\d+))?\)/;
const SAFARI_TO_MACOS = {
15: [10, 15, 0],
16: [11, 0, 0],
17: [12, 0, 0],
18: [13, 0, 0],
};
const getCommonTemplateVars = () => {
const browserRegexes = getPreUserAgentRegexes({
env: "modern",
allowHigherVersions: true,
mobileToDesktop: true,
throwOnMissing: true,
});
const minSafariVersion = browserRegexes.find(
(regex) => regex.family === "safari"
)?.matchedVersions[0][0];
const minMacOSVersion = SAFARI_TO_MACOS[minSafariVersion];
if (!minMacOSVersion) {
throw Error(
`Could not find minimum MacOS version for Safari ${minSafariVersion}.`
);
}
const haMacOSRegex = applyVersionsToRegexes(
[
{
family: "ha_macos",
regex: HA_MACOS_REGEX,
matchedVersions: [minMacOSVersion],
requestVersions: [minMacOSVersion],
},
],
{ ignorePatch: true, allowHigherVersions: true }
);
return {
modernRegex: compileRegex(browserRegexes.concat(haMacOSRegex)).toString(),
};
};
const renderTemplate = (templateFile, data = {}) => {
const compiled = template(
fs.readFileSync(templateFile, { encoding: "utf-8" })
);
return compiled({
...data,
useRollup: env.useRollup(),
useWDS: env.useWDS(),
// Resolve any child/nested templates relative to the parent and pass the same data
renderTemplate: (childTemplate) =>
renderTemplate(
path.resolve(path.dirname(templateFile), childTemplate),
data
),
renderTemplate(resolve(dirname(templateFile), childTemplate), data),
});
};
@@ -45,36 +90,32 @@ const minifyHtml = (content, ext) => {
};
// Function to generate a dev task for each project's configuration
// Note Currently WDS paths are hard-coded to only work for app
const genPagesDevTask =
(
pageEntries,
inputRoot,
outputRoot,
useWDS = false,
inputSub = "src/html",
publicRoot = ""
) =>
async () => {
const commonVars = getCommonTemplateVars();
for (const [page, entries] of Object.entries(pageEntries)) {
const content = renderTemplate(
path.resolve(inputRoot, inputSub, `${page}.template`),
resolve(inputRoot, inputSub, `${page}.template`),
{
latestEntryJS: entries.map((entry) =>
useWDS
? `http://localhost:8000/src/entrypoints/${entry}.ts`
: `${publicRoot}/frontend_latest/${entry}.js`
...commonVars,
latestEntryJS: entries.map(
(entry) => `${publicRoot}/frontend_latest/${entry}.js`
),
es5EntryJS: entries.map(
(entry) => `${publicRoot}/frontend_es5/${entry}.js`
),
latestCustomPanelJS: useWDS
? "http://localhost:8000/src/entrypoints/custom-panel.ts"
: `${publicRoot}/frontend_latest/custom-panel.js`,
latestCustomPanelJS: `${publicRoot}/frontend_latest/custom-panel.js`,
es5CustomPanelJS: `${publicRoot}/frontend_es5/custom-panel.js`,
}
);
fs.outputFileSync(path.resolve(outputRoot, page), content);
fs.outputFileSync(resolve(outputRoot, page), content);
}
};
@@ -91,16 +132,18 @@ const genPagesProdTask =
) =>
async () => {
const latestManifest = fs.readJsonSync(
path.resolve(outputLatest, "manifest.json")
resolve(outputLatest, "manifest.json")
);
const es5Manifest = outputES5
? fs.readJsonSync(path.resolve(outputES5, "manifest.json"))
? fs.readJsonSync(resolve(outputES5, "manifest.json"))
: {};
const commonVars = getCommonTemplateVars();
const minifiedHTML = [];
for (const [page, entries] of Object.entries(pageEntries)) {
const content = renderTemplate(
path.resolve(inputRoot, inputSub, `${page}.template`),
resolve(inputRoot, inputSub, `${page}.template`),
{
...commonVars,
latestEntryJS: entries.map((entry) => latestManifest[`${entry}.js`]),
es5EntryJS: entries.map((entry) => es5Manifest[`${entry}.js`]),
latestCustomPanelJS: latestManifest["custom-panel.js"],
@@ -108,8 +151,8 @@ const genPagesProdTask =
}
);
minifiedHTML.push(
minifyHtml(content, path.extname(page)).then((minified) =>
fs.outputFileSync(path.resolve(outputRoot, page), minified)
minifyHtml(content, extname(page)).then((minified) =>
fs.outputFileSync(resolve(outputRoot, page), minified)
)
);
}
@@ -125,12 +168,7 @@ const APP_PAGE_ENTRIES = {
gulp.task(
"gen-pages-app-dev",
genPagesDevTask(
APP_PAGE_ENTRIES,
paths.polymer_dir,
paths.app_output_root,
env.useWDS()
)
genPagesDevTask(APP_PAGE_ENTRIES, paths.polymer_dir, paths.app_output_root)
);
gulp.task(
@@ -206,6 +244,28 @@ gulp.task(
)
);
const LANDING_PAGE_PAGE_ENTRIES = { "index.html": ["entrypoint"] };
gulp.task(
"gen-pages-landing-page-dev",
genPagesDevTask(
LANDING_PAGE_PAGE_ENTRIES,
paths.landingPage_dir,
paths.landingPage_output_root
)
);
gulp.task(
"gen-pages-landing-page-prod",
genPagesProdTask(
LANDING_PAGE_PAGE_ENTRIES,
paths.landingPage_dir,
paths.landingPage_output_root,
paths.landingPage_output_latest,
paths.landingPage_output_es5
)
);
const HASSIO_PAGE_ENTRIES = { "entrypoint.js": ["entrypoint"] };
gulp.task(
@@ -214,7 +274,6 @@ gulp.task(
HASSIO_PAGE_ENTRIES,
paths.hassio_dir,
paths.hassio_output_root,
undefined,
"src",
paths.hassio_publicPath
)
@@ -66,7 +66,7 @@ gulp.task("fetch-nightly-translations", async function () {
tokenAuth = JSON.parse(await readFile(TOKEN_FILE, "utf-8"));
} catch {
if (!allowTokenSetup) {
console.log("No token found so build wil continue with English only");
console.log("No token found so build will continue with English only");
return;
}
const auth = createOAuthDeviceAuth({
+3 -7
View File
@@ -4,16 +4,14 @@ import gulp from "gulp";
import yaml from "js-yaml";
import { marked } from "marked";
import path from "path";
import env from "../env.cjs";
import paths from "../paths.cjs";
import "./clean.js";
import "./entry-html.js";
import "./gather-static.js";
import "./gen-icons-json.js";
import "./rollup.js";
import "./service-worker.js";
import "./translations.js";
import "./webpack.js";
import "./rspack.js";
gulp.task("gather-gallery-pages", async function gatherPages() {
const pageDir = path.resolve(paths.gallery_dir, "src/pages");
@@ -158,9 +156,7 @@ gulp.task(
"copy-static-gallery",
"gen-pages-gallery-dev",
gulp.parallel(
env.useRollup()
? "rollup-dev-server-gallery"
: "webpack-dev-server-gallery",
"rspack-dev-server-gallery",
async function watchMarkdownFiles() {
gulp.watch(
[
@@ -189,7 +185,7 @@ gulp.task(
"gather-gallery-pages"
),
"copy-static-gallery",
env.useRollup() ? "rollup-prod-gallery" : "webpack-prod-gallery",
"rspack-prod-gallery",
"gen-pages-gallery-prod"
)
);
+30 -15
View File
@@ -4,7 +4,6 @@ import fs from "fs-extra";
import gulp from "gulp";
import path from "path";
import paths from "../paths.cjs";
import env from "../env.cjs";
const npmPath = (...parts) =>
path.resolve(paths.polymer_dir, "node_modules", ...parts);
@@ -60,15 +59,12 @@ function copyPolyfills(staticDir) {
npmPath("@webcomponents/webcomponentsjs/webcomponents-bundle.js.map"),
staticPath("polyfills/")
);
}
function copyLoaderJS(staticDir) {
if (!env.useRollup()) {
return;
}
const staticPath = genStaticPath(staticDir);
copyFileDir(npmPath("systemjs/dist/s.min.js"), staticPath("js"));
copyFileDir(npmPath("systemjs/dist/s.min.js.map"), staticPath("js"));
// dialog-polyfill css
copyFileDir(
npmPath("dialog-polyfill/dialog-polyfill.css"),
staticPath("polyfills/")
);
}
function copyFonts(staticDir) {
@@ -100,6 +96,14 @@ function copyMapPanel(staticDir) {
);
}
function copyZXingWasm(staticDir) {
const staticPath = genStaticPath(staticDir);
copyFileDir(
npmPath("zxing-wasm/dist/reader/zxing_reader.wasm"),
staticPath("js")
);
}
gulp.task("copy-locale-data", async () => {
const staticDir = paths.app_output_static;
copyLocaleData(staticDir);
@@ -115,6 +119,11 @@ gulp.task("copy-translations-supervisor", async () => {
copyTranslations(staticDir);
});
gulp.task("copy-translations-landing-page", async () => {
const staticDir = paths.landingPage_output_static;
copyTranslations(staticDir);
});
gulp.task("copy-static-supervisor", async () => {
const staticDir = paths.hassio_output_static;
copyLocaleData(staticDir);
@@ -125,8 +134,6 @@ gulp.task("copy-static-app", async () => {
const staticDir = paths.app_output_static;
// Basic static files
fs.copySync(polyPath("public"), paths.app_output_root);
copyLoaderJS(staticDir);
copyPolyfills(staticDir);
copyFonts(staticDir);
copyTranslations(staticDir);
@@ -137,6 +144,7 @@ gulp.task("copy-static-app", async () => {
copyMapPanel(staticDir);
// Qr Scanner assets
copyZXingWasm(staticDir);
copyQrScannerWorker(staticDir);
});
@@ -148,8 +156,6 @@ gulp.task("copy-static-demo", async () => {
);
// Copy demo static files
fs.copySync(path.resolve(paths.demo_dir, "public"), paths.demo_output_root);
copyLoaderJS(paths.demo_output_static);
copyPolyfills(paths.demo_output_static);
copyMapPanel(paths.demo_output_static);
copyFonts(paths.demo_output_static);
@@ -163,8 +169,6 @@ gulp.task("copy-static-cast", async () => {
fs.copySync(polyPath("public/static"), paths.cast_output_static);
// Copy cast static files
fs.copySync(path.resolve(paths.cast_dir, "public"), paths.cast_output_root);
copyLoaderJS(paths.cast_output_static);
copyPolyfills(paths.cast_output_static);
copyMapPanel(paths.cast_output_static);
copyFonts(paths.cast_output_static);
@@ -188,3 +192,14 @@ gulp.task("copy-static-gallery", async () => {
copyLocaleData(paths.gallery_output_static);
copyMdiIcons(paths.gallery_output_static);
});
gulp.task("copy-static-landing-page", async () => {
// Copy landing-page static files
fs.copySync(
path.resolve(paths.landingPage_dir, "public"),
paths.landingPage_output_root
);
copyFonts(paths.landingPage_output_static);
copyTranslations(paths.landingPage_output_static);
});
+3 -4
View File
@@ -5,9 +5,8 @@ import "./compress.js";
import "./entry-html.js";
import "./gather-static.js";
import "./gen-icons-json.js";
import "./rollup.js";
import "./translations.js";
import "./webpack.js";
import "./rspack.js";
gulp.task(
"develop-hassio",
@@ -22,7 +21,7 @@ gulp.task(
"copy-translations-supervisor",
"build-locale-data",
"copy-static-supervisor",
env.useRollup() ? "rollup-watch-hassio" : "webpack-watch-hassio"
"rspack-watch-hassio"
)
);
@@ -38,7 +37,7 @@ gulp.task(
"copy-translations-supervisor",
"build-locale-data",
"copy-static-supervisor",
env.useRollup() ? "rollup-prod-hassio" : "webpack-prod-hassio",
"rspack-prod-hassio",
"gen-pages-hassio-prod",
...// Don't compress running tests
(env.isTestBuild() ? [] : ["compress-hassio"])
+17
View File
@@ -0,0 +1,17 @@
import "./app.js";
import "./cast.js";
import "./clean.js";
import "./compress.js";
import "./demo.js";
import "./download-translations.js";
import "./entry-html.js";
import "./fetch-nightly-translations.js";
import "./gallery.js";
import "./gather-static.js";
import "./gen-icons-json.js";
import "./hassio.js";
import "./landing-page.js";
import "./locale-data.js";
import "./rspack.js";
import "./service-worker.js";
import "./translations.js";
+41
View File
@@ -0,0 +1,41 @@
import gulp from "gulp";
import "./clean.js";
import "./compress.js";
import "./entry-html.js";
import "./gather-static.js";
import "./gen-icons-json.js";
import "./translations.js";
import "./rspack.js";
gulp.task(
"develop-landing-page",
gulp.series(
async function setEnv() {
process.env.NODE_ENV = "development";
},
"clean-landing-page",
"translations-enable-merge-backend",
"build-landing-page-translations",
"copy-translations-landing-page",
"build-locale-data",
"copy-static-landing-page",
"gen-pages-landing-page-dev",
"rspack-watch-landing-page"
)
);
gulp.task(
"build-landing-page",
gulp.series(
async function setEnv() {
process.env.NODE_ENV = "production";
},
"clean-landing-page",
"build-landing-page-translations",
"copy-translations-landing-page",
"build-locale-data",
"copy-static-landing-page",
"rspack-prod-landing-page",
"gen-pages-landing-page-prod"
)
);
+4 -1
View File
@@ -24,8 +24,11 @@ const convertToJSON = async (
) => {
let localeData;
try {
// use "pt" for "pt-BR", because "pt-BR" is unsupported by @formatjs
const language = lang === "pt-BR" ? "pt" : lang;
localeData = await readFile(
join(formatjsDir, pkg, subDir, `${lang}.js`),
join(formatjsDir, pkg, subDir, `${language}.js`),
"utf-8"
);
} catch (e) {
-147
View File
@@ -1,147 +0,0 @@
// Tasks to run Rollup
import log from "fancy-log";
import gulp from "gulp";
import http from "http";
import open from "open";
import path from "path";
import { rollup } from "rollup";
import handler from "serve-handler";
import paths from "../paths.cjs";
import rollupConfig from "../rollup.cjs";
const bothBuilds = (createConfigFunc, params) =>
gulp.series(
async function buildLatest() {
await buildRollup(
createConfigFunc({
...params,
latestBuild: true,
})
);
},
async function buildES5() {
await buildRollup(
createConfigFunc({
...params,
latestBuild: false,
})
);
}
);
function createServer(serveOptions) {
const server = http.createServer((request, response) =>
handler(request, response, {
public: serveOptions.root,
})
);
server.listen(
serveOptions.port,
serveOptions.networkAccess ? "0.0.0.0" : undefined,
() => {
log.info(`Available at http://localhost:${serveOptions.port}`);
open(`http://localhost:${serveOptions.port}`);
}
);
}
function watchRollup(createConfig, extraWatchSrc = [], serveOptions = null) {
const { inputOptions, outputOptions } = createConfig({
isProdBuild: false,
latestBuild: true,
});
const watcher = rollup.watch({
...inputOptions,
output: [outputOptions],
watch: {
include: ["src/**"] + extraWatchSrc,
},
});
let startedHttp = false;
watcher.on("event", (event) => {
if (event.code === "BUNDLE_END") {
log(`Build done @ ${new Date().toLocaleTimeString()}`);
} else if (event.code === "ERROR") {
log.error(event.error);
} else if (event.code === "END") {
if (startedHttp || !serveOptions) {
return;
}
startedHttp = true;
createServer(serveOptions);
}
});
gulp.watch(
path.join(paths.translations_src, "en.json"),
gulp.series("build-translations", "copy-translations-app")
);
}
async function buildRollup(config) {
const bundle = await rollup.rollup(config.inputOptions);
await bundle.write(config.outputOptions);
}
gulp.task("rollup-watch-app", () => {
watchRollup(rollupConfig.createAppConfig);
});
gulp.task("rollup-watch-hassio", () => {
watchRollup(rollupConfig.createHassioConfig, ["hassio/src/**"]);
});
gulp.task("rollup-dev-server-demo", () => {
watchRollup(rollupConfig.createDemoConfig, ["demo/src/**"], {
root: paths.demo_output_root,
port: 8090,
});
});
gulp.task("rollup-dev-server-cast", () => {
watchRollup(rollupConfig.createCastConfig, ["cast/src/**"], {
root: paths.cast_output_root,
port: 8080,
networkAccess: true,
});
});
gulp.task("rollup-dev-server-gallery", () => {
watchRollup(rollupConfig.createGalleryConfig, ["gallery/src/**"], {
root: paths.gallery_output_root,
port: 8100,
});
});
gulp.task(
"rollup-prod-app",
bothBuilds(rollupConfig.createAppConfig, { isProdBuild: true })
);
gulp.task(
"rollup-prod-demo",
bothBuilds(rollupConfig.createDemoConfig, { isProdBuild: true })
);
gulp.task(
"rollup-prod-cast",
bothBuilds(rollupConfig.createCastConfig, { isProdBuild: true })
);
gulp.task("rollup-prod-hassio", () =>
bothBuilds(rollupConfig.createHassioConfig, { isProdBuild: true })
);
gulp.task("rollup-prod-gallery", () =>
buildRollup(
rollupConfig.createGalleryConfig({
isProdBuild: true,
latestBuild: true,
})
)
);
@@ -1,11 +1,11 @@
// Tasks to run webpack.
// Tasks to run rspack.
import fs from "fs";
import path from "path";
import log from "fancy-log";
import gulp from "gulp";
import webpack from "webpack";
import WebpackDevServer from "webpack-dev-server";
import rspack from "@rspack/core";
import { RspackDevServer } from "@rspack/dev-server";
import env from "../env.cjs";
import paths from "../paths.cjs";
import {
@@ -14,7 +14,8 @@ import {
createDemoConfig,
createGalleryConfig,
createHassioConfig,
} from "../webpack.cjs";
createLandingPageConfig,
} from "../rspack.cjs";
const bothBuilds = (createConfigFunc, params) => [
createConfigFunc({ ...params, latestBuild: true }),
@@ -30,7 +31,7 @@ const isWsl =
/**
* @param {{
* compiler: import("webpack").Compiler,
* compiler: import("@rspack/core").Compiler,
* contentBase: string,
* port: number,
* listenHost?: string
@@ -41,12 +42,13 @@ const runDevServer = async ({
contentBase,
port,
listenHost = undefined,
proxy = undefined,
}) => {
if (listenHost === undefined) {
// For dev container, we need to listen on all hosts
listenHost = env.isDevContainer() ? "0.0.0.0" : "localhost";
}
const server = new WebpackDevServer(
const server = new RspackDevServer(
{
hot: false,
open: true,
@@ -56,13 +58,14 @@ const runDevServer = async ({
directory: contentBase,
watch: true,
},
proxy,
},
compiler
);
await server.start();
// Server listening
log("[webpack-dev-server]", `Project is running at http://localhost:${port}`);
log("[rspack-dev-server]", `Project is running at http://localhost:${port}`);
};
const doneHandler = (done) => (err, stats) => {
@@ -87,16 +90,16 @@ const doneHandler = (done) => (err, stats) => {
const prodBuild = (conf) =>
new Promise((resolve) => {
webpack(
rspack(
conf,
// Resolve promise when done. Because we pass a callback, webpack closes itself
// Resolve promise when done. Because we pass a callback, rspack closes itself
doneHandler(resolve)
);
});
gulp.task("webpack-watch-app", () => {
gulp.task("rspack-watch-app", () => {
// This command will run forever because we don't close compiler
webpack(
rspack(
process.env.ES5
? bothBuilds(createAppConfig, { isProdBuild: false })
: createAppConfig({ isProdBuild: false, latestBuild: true })
@@ -107,7 +110,7 @@ gulp.task("webpack-watch-app", () => {
);
});
gulp.task("webpack-prod-app", () =>
gulp.task("rspack-prod-app", () =>
prodBuild(
bothBuilds(createAppConfig, {
isProdBuild: true,
@@ -117,9 +120,9 @@ gulp.task("webpack-prod-app", () =>
)
);
gulp.task("webpack-dev-server-demo", () =>
gulp.task("rspack-dev-server-demo", () =>
runDevServer({
compiler: webpack(
compiler: rspack(
createDemoConfig({ isProdBuild: false, latestBuild: true })
),
contentBase: paths.demo_output_root,
@@ -127,17 +130,18 @@ gulp.task("webpack-dev-server-demo", () =>
})
);
gulp.task("webpack-prod-demo", () =>
gulp.task("rspack-prod-demo", () =>
prodBuild(
bothBuilds(createDemoConfig, {
isProdBuild: true,
isStatsBuild: env.isStatsBuild(),
})
)
);
gulp.task("webpack-dev-server-cast", () =>
gulp.task("rspack-dev-server-cast", () =>
runDevServer({
compiler: webpack(
compiler: rspack(
createCastConfig({ isProdBuild: false, latestBuild: true })
),
contentBase: paths.cast_output_root,
@@ -147,7 +151,7 @@ gulp.task("webpack-dev-server-cast", () =>
})
);
gulp.task("webpack-prod-cast", () =>
gulp.task("rspack-prod-cast", () =>
prodBuild(
bothBuilds(createCastConfig, {
isProdBuild: true,
@@ -155,9 +159,9 @@ gulp.task("webpack-prod-cast", () =>
)
);
gulp.task("webpack-watch-hassio", () => {
gulp.task("rspack-watch-hassio", () => {
// This command will run forever because we don't close compiler
webpack(
rspack(
createHassioConfig({
isProdBuild: false,
latestBuild: true,
@@ -170,7 +174,7 @@ gulp.task("webpack-watch-hassio", () => {
);
});
gulp.task("webpack-prod-hassio", () =>
gulp.task("rspack-prod-hassio", () =>
prodBuild(
bothBuilds(createHassioConfig, {
isProdBuild: true,
@@ -180,9 +184,9 @@ gulp.task("webpack-prod-hassio", () =>
)
);
gulp.task("webpack-dev-server-gallery", () =>
gulp.task("rspack-dev-server-gallery", () =>
runDevServer({
compiler: webpack(
compiler: rspack(
createGalleryConfig({ isProdBuild: false, latestBuild: true })
),
contentBase: paths.gallery_output_root,
@@ -191,7 +195,7 @@ gulp.task("webpack-dev-server-gallery", () =>
})
);
gulp.task("webpack-prod-gallery", () =>
gulp.task("rspack-prod-gallery", () =>
prodBuild(
createGalleryConfig({
isProdBuild: true,
@@ -199,3 +203,30 @@ gulp.task("webpack-prod-gallery", () =>
})
)
);
gulp.task("rspack-watch-landing-page", () => {
// This command will run forever because we don't close compiler
rspack(
process.env.ES5
? bothBuilds(createLandingPageConfig, { isProdBuild: false })
: createLandingPageConfig({ isProdBuild: false, latestBuild: true })
).watch({ poll: isWsl }, doneHandler());
gulp.watch(
path.join(paths.translations_src, "en.json"),
gulp.series(
"build-landing-page-translations",
"copy-translations-landing-page"
)
);
});
gulp.task("rspack-prod-landing-page", () =>
prodBuild(
bothBuilds(createLandingPageConfig, {
isProdBuild: true,
isStatsBuild: env.isStatsBuild(),
isTestBuild: env.isTestBuild(),
})
)
);
+72 -78
View File
@@ -1,20 +1,19 @@
// Generate service worker.
// Based on manifest, create a file with the content as service_worker.js
// Generate service workers
import fs from "fs-extra";
import { deleteAsync } from "del";
import gulp from "gulp";
import path from "path";
import sourceMapUrl from "source-map-url";
import workboxBuild from "workbox-build";
import { mkdir, readFile, symlink, writeFile } from "node:fs/promises";
import { basename, join, relative } from "node:path";
import { injectManifest } from "workbox-build";
import paths from "../paths.cjs";
const swDest = path.resolve(paths.app_output_root, "service_worker.js");
const SW_MAP = {
[paths.app_output_latest]: "modern",
[paths.app_output_es5]: "legacy",
};
const writeSW = (content) => fs.outputFileSync(swDest, content.trim() + "\n");
gulp.task("gen-service-worker-app-dev", (done) => {
writeSW(
`
const SW_DEV =
`
console.debug('Service worker disabled in development');
self.addEventListener('install', (event) => {
@@ -22,72 +21,67 @@ self.addEventListener('install', (event) => {
// removing any prod service worker the dev might have running
self.skipWaiting();
});
`
`.trim() + "\n";
gulp.task("gen-service-worker-app-dev", async () => {
await mkdir(paths.app_output_root, { recursive: true });
await Promise.all(
Object.values(SW_MAP).map((build) =>
writeFile(join(paths.app_output_root, `sw-${build}.js`), SW_DEV, {
encoding: "utf-8",
})
)
);
done();
});
gulp.task("gen-service-worker-app-prod", async () => {
// Read bundled source file
const bundleManifestLatest = fs.readJsonSync(
path.resolve(paths.app_output_latest, "manifest.json")
);
let serviceWorkerContent = fs.readFileSync(
paths.app_output_root + bundleManifestLatest["service_worker.js"],
"utf-8"
);
// Delete old file from frontend_latest so manifest won't pick it up
fs.removeSync(
paths.app_output_root + bundleManifestLatest["service_worker.js"]
);
fs.removeSync(
paths.app_output_root + bundleManifestLatest["service_worker.js.map"]
);
// Remove ES5
const bundleManifestES5 = fs.readJsonSync(
path.resolve(paths.app_output_es5, "manifest.json")
);
fs.removeSync(paths.app_output_root + bundleManifestES5["service_worker.js"]);
fs.removeSync(
paths.app_output_root + bundleManifestES5["service_worker.js.map"]
);
const workboxManifest = await workboxBuild.getManifest({
// Files that mach this pattern will be considered unique and skip revision check
// ignore JS files + translation files
dontCacheBustURLsMatching: /(frontend_latest\/.+|static\/translations\/.+)/,
globDirectory: paths.app_output_root,
globPatterns: [
"frontend_latest/*.js",
// Cache all English translations because we catch them as fallback
// Using pattern to match hash instead of * to avoid caching en-GB
// 'v' added as valid hash letter because in dev we hash with 'dev'
"static/translations/**/en-+([a-fv0-9]).json",
// Icon shown on splash screen
"static/icons/favicon-192x192.png",
"static/icons/favicon.ico",
// Common fonts
"static/fonts/roboto/Roboto-Light.woff2",
"static/fonts/roboto/Roboto-Medium.woff2",
"static/fonts/roboto/Roboto-Regular.woff2",
"static/fonts/roboto/Roboto-Bold.woff2",
],
});
for (const warning of workboxManifest.warnings) {
console.warn(warning);
}
// remove source map and add WB manifest
serviceWorkerContent = sourceMapUrl.removeFrom(serviceWorkerContent);
serviceWorkerContent = serviceWorkerContent.replace(
"WB_MANIFEST",
JSON.stringify(workboxManifest.manifestEntries)
);
// Write new file to root
fs.writeFileSync(swDest, serviceWorkerContent);
});
gulp.task("gen-service-worker-app-prod", () =>
Promise.all(
Object.entries(SW_MAP).map(async ([outPath, build]) => {
const manifest = JSON.parse(
await readFile(join(outPath, "manifest.json"), "utf-8")
);
const swSrc = join(paths.app_output_root, manifest["service-worker.js"]);
const swDest = join(paths.app_output_root, `sw-${build}.js`);
const buildDir = relative(paths.app_output_root, outPath);
const { warnings } = await injectManifest({
swSrc,
swDest,
injectionPoint: "__WB_MANIFEST__",
// Files that mach this pattern will be considered unique and skip revision check
// ignore JS files + translation files
dontCacheBustURLsMatching: new RegExp(
`(?:${buildDir}/.+|static/translations/.+)`
),
globDirectory: paths.app_output_root,
globPatterns: [
`${buildDir}/*.js`,
// Cache all English translations because we catch them as fallback
// Using pattern to match hash instead of * to avoid caching en-GB
// 'v' added as valid hash letter because in dev we hash with 'dev'
"static/translations/**/en-+([a-fv0-9]).json",
// Icon shown on splash screen
"static/icons/favicon-192x192.png",
"static/icons/favicon.ico",
// Common fonts
"static/fonts/roboto/Roboto-Light.woff2",
"static/fonts/roboto/Roboto-Medium.woff2",
"static/fonts/roboto/Roboto-Regular.woff2",
"static/fonts/roboto/Roboto-Bold.woff2",
],
globIgnores: [`${buildDir}/service-worker*`],
});
if (warnings.length > 0) {
console.warn(
`Problems while injecting ${build} service worker:\n`,
warnings.join("\n")
);
}
await deleteAsync(`${swSrc}?(.map)`);
// Needed to install new SW from a cached HTML
if (build === "modern") {
const swOld = join(paths.app_output_root, "service_worker.js");
await symlink(basename(swDest), swOld);
}
})
)
);
+14 -4
View File
@@ -172,12 +172,14 @@ const createMasterTranslation = () =>
const FRAGMENTS = ["base"];
const toggleSupervisorFragment = async () => {
FRAGMENTS[0] = "supervisor";
const setFragment = (fragment) => async () => {
FRAGMENTS[0] = fragment;
};
const panelFragment = (fragment) =>
fragment !== "base" && fragment !== "supervisor";
fragment !== "base" &&
fragment !== "supervisor" &&
fragment !== "landing-page";
const HASHES = new Map();
@@ -224,6 +226,9 @@ const createTranslations = async () => {
case "supervisor":
// Supervisor key is at the top level
return [flatten(data.supervisor), ""];
case "landing-page":
// landing-page key is at the top level
return [flatten(data["landing-page"]), ""];
default:
// Create a fragment with only the given panel
return [
@@ -322,5 +327,10 @@ gulp.task(
gulp.task(
"build-supervisor-translations",
gulp.series(toggleSupervisorFragment, "build-translations")
gulp.series(setFragment("supervisor"), "build-translations")
);
gulp.task(
"build-landing-page-translations",
gulp.series(setFragment("landing-page"), "build-translations")
);
-10
View File
@@ -1,10 +0,0 @@
import gulp from "gulp";
import { startDevServer } from "@web/dev-server";
gulp.task("wds-watch-app", async () => {
startDevServer({
config: {
watch: true,
},
});
});
+16
View File
@@ -33,6 +33,22 @@ module.exports = {
),
gallery_output_static: path.resolve(__dirname, "../gallery/dist/static"),
landingPage_dir: path.resolve(__dirname, "../landing-page"),
landingPage_build: path.resolve(__dirname, "../landing-page/build"),
landingPage_output_root: path.resolve(__dirname, "../landing-page/dist"),
landingPage_output_latest: path.resolve(
__dirname,
"../landing-page/dist/frontend_latest"
),
landingPage_output_es5: path.resolve(
__dirname,
"../landing-page/dist/frontend_es5"
),
landingPage_output_static: path.resolve(
__dirname,
"../landing-page/dist/static"
),
hassio_dir: path.resolve(__dirname, "../hassio"),
hassio_output_root: path.resolve(__dirname, "../hassio/build"),
hassio_output_static: path.resolve(__dirname, "../hassio/build/static"),
@@ -1,14 +0,0 @@
module.exports = function (opts = {}) {
const dontHash = opts.dontHash || new Set();
return {
name: "dont-hash",
renderChunk(_code, chunk, _options) {
if (!chunk.isEntry || !dontHash.has(chunk.name)) {
return null;
}
chunk.fileName = `${chunk.name}.js`;
return null;
},
};
};
@@ -1,24 +0,0 @@
module.exports = function (userOptions = {}) {
// Files need to be absolute paths.
// This only works if the file has no exports
// and only is imported for its side effects
const files = userOptions.files || [];
if (files.length === 0) {
return {
name: "ignore",
};
}
return {
name: "ignore",
load(id) {
return files.some((toIgnorePath) => id.startsWith(toIgnorePath))
? {
code: "",
}
: null;
},
};
};
@@ -1,34 +0,0 @@
const url = require("url");
const defaultOptions = {
publicPath: "",
};
module.exports = function (userOptions = {}) {
const options = { ...defaultOptions, ...userOptions };
return {
name: "manifest",
generateBundle(outputOptions, bundle) {
const manifest = {};
for (const chunk of Object.values(bundle)) {
if (!chunk.isEntry) {
continue;
}
// Add js extension to mimic Webpack manifest.
manifest[`${chunk.name}.js`] = url.resolve(
options.publicPath,
chunk.fileName
);
}
this.emitFile({
type: "asset",
source: JSON.stringify(manifest, undefined, 2),
name: "manifest.json",
fileName: "manifest.json",
});
},
};
};
@@ -1,152 +0,0 @@
// Worker plugin
// Each worker will include all of its dependencies
// instead of relying on an importer.
// Forked from v.1.4.1
// https://github.com/surma/rollup-plugin-off-main-thread
/**
* Copyright 2018 Google Inc. All Rights Reserved.
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
* http://www.apache.org/licenses/LICENSE-2.0
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
const rollup = require("rollup");
const path = require("path");
const MagicString = require("magic-string");
const defaultOpts = {
// A RegExp to find `new Workers()` calls. The second capture group _must_
// capture the provided file name without the quotes.
workerRegexp: /new Worker\((["'])(.+?)\1(,[^)]+)?\)/g,
plugins: ["node-resolve", "commonjs", "babel", "terser", "ignore"],
};
async function getBundledWorker(workerPath, rollupOptions) {
const bundle = await rollup.rollup({
...rollupOptions,
input: {
worker: workerPath,
},
});
const { output } = await bundle.generate({
// Generates cleanest output, we shouldn't have any imports/exports
// that would be incompatible with ES5.
format: "es",
// We should not export anything. This will fail build if we are.
exports: "none",
});
let code;
for (const chunkOrAsset of output) {
if (chunkOrAsset.name === "worker") {
code = chunkOrAsset.code;
} else if (chunkOrAsset.type !== "asset") {
throw new Error("Unexpected extra output");
}
}
return code;
}
module.exports = function (opts = {}) {
opts = { ...defaultOpts, ...opts };
let rollupOptions;
let refIds;
return {
name: "hass-worker",
async buildStart(options) {
refIds = {};
rollupOptions = {
plugins: options.plugins.filter((plugin) =>
opts.plugins.includes(plugin.name)
),
};
},
async transform(code, id) {
// Copy the regexp as they are stateful and this hook is async.
const workerRegexp = new RegExp(
opts.workerRegexp.source,
opts.workerRegexp.flags
);
if (!workerRegexp.test(code)) {
return undefined;
}
const ms = new MagicString(code);
// Reset the regexp
workerRegexp.lastIndex = 0;
for (;;) {
const match = workerRegexp.exec(code);
if (!match) {
break;
}
const workerFile = match[2];
let optionsObject = {};
// Parse the optional options object
if (match[3] && match[3].length > 0) {
// FIXME: ooooof!
// eslint-disable-next-line @typescript-eslint/no-implied-eval
optionsObject = new Function(`return ${match[3].slice(1)};`)();
}
delete optionsObject.type;
if (!/^.*\//.test(workerFile)) {
this.warn(
`Paths passed to the Worker constructor must be relative or absolute, i.e. start with /, ./ or ../ (just like dynamic import!). Ignoring "${workerFile}".`
);
continue;
}
// Find worker file and store it as a chunk with ID prefixed for our loader
// eslint-disable-next-line no-await-in-loop
const resolvedWorkerFile = (await this.resolve(workerFile, id)).id;
let chunkRefId;
if (resolvedWorkerFile in refIds) {
chunkRefId = refIds[resolvedWorkerFile];
} else {
this.addWatchFile(resolvedWorkerFile);
// eslint-disable-next-line no-await-in-loop
const source = await getBundledWorker(
resolvedWorkerFile,
rollupOptions
);
chunkRefId = refIds[resolvedWorkerFile] = this.emitFile({
name: path.basename(resolvedWorkerFile),
source,
type: "asset",
});
}
const workerParametersStartIndex = match.index + "new Worker(".length;
const workerParametersEndIndex =
match.index + match[0].length - ")".length;
ms.overwrite(
workerParametersStartIndex,
workerParametersEndIndex,
`import.meta.ROLLUP_FILE_URL_${chunkRefId}, ${JSON.stringify(
optionsObject
)}`
);
}
return {
code: ms.toString(),
map: ms.generateMap({ hires: true }),
};
},
};
};
-146
View File
@@ -1,146 +0,0 @@
const path = require("path");
const commonjs = require("@rollup/plugin-commonjs");
const resolve = require("@rollup/plugin-node-resolve");
const json = require("@rollup/plugin-json");
const { babel } = require("@rollup/plugin-babel");
const replace = require("@rollup/plugin-replace");
const visualizer = require("rollup-plugin-visualizer");
const { string } = require("rollup-plugin-string");
const { terser } = require("rollup-plugin-terser");
const manifest = require("./rollup-plugins/manifest-plugin.cjs");
const worker = require("./rollup-plugins/worker-plugin.cjs");
const dontHashPlugin = require("./rollup-plugins/dont-hash-plugin.cjs");
const ignore = require("./rollup-plugins/ignore-plugin.cjs");
const bundle = require("./bundle.cjs");
const paths = require("./paths.cjs");
const extensions = [".js", ".ts"];
/**
* @param {Object} arg
* @param { import("rollup").InputOption } arg.input
*/
const createRollupConfig = ({
entry,
outputPath,
defineOverlay,
isProdBuild,
latestBuild,
isStatsBuild,
publicPath,
dontHash,
isWDS,
}) => ({
/**
* @type { import("rollup").InputOptions }
*/
inputOptions: {
input: entry,
// Some entry points contain no JavaScript. This setting silences a warning about that.
// https://rollupjs.org/configuration-options/#preserveentrysignatures
preserveEntrySignatures: false,
plugins: [
ignore({
files: bundle
.emptyPackages({ latestBuild })
// TEMP HACK: Makes Rollup build work again
.concat(
require.resolve(
"@webcomponents/scoped-custom-element-registry/scoped-custom-element-registry.min"
)
),
}),
resolve({
extensions,
preferBuiltins: false,
browser: true,
rootDir: paths.polymer_dir,
}),
commonjs(),
json(),
babel({
...bundle.babelOptions({ latestBuild, isProdBuild }),
extensions,
babelHelpers: isWDS ? "inline" : "bundled",
}),
string({
// Import certain extensions as strings
include: [path.join(paths.polymer_dir, "node_modules/**/*.css")],
}),
replace(bundle.definedVars({ isProdBuild, latestBuild, defineOverlay })),
!isWDS &&
manifest({
publicPath,
}),
!isWDS && worker(),
!isWDS && dontHashPlugin({ dontHash }),
!isWDS && isProdBuild && terser(bundle.terserOptions({ latestBuild })),
!isWDS &&
isStatsBuild &&
visualizer({
// https://github.com/btd/rollup-plugin-visualizer#options
open: true,
sourcemap: true,
}),
].filter(Boolean),
},
/**
* @type { import("rollup").OutputOptions }
*/
outputOptions: {
// https://rollupjs.org/configuration-options/#output-dir
dir: outputPath,
// https://rollupjs.org/configuration-options/#output-format
format: latestBuild ? "es" : "systemjs",
// https://rollupjs.org/configuration-options/#output-externallivebindings
externalLiveBindings: false,
// https://rollupjs.org/configuration-options/#output-entryfilenames
// https://rollupjs.org/configuration-options/#output-chunkfilenames
// https://rollupjs.org/configuration-options/#output-assetfilenames
entryFileNames:
isProdBuild && !isStatsBuild ? "[name]-[hash].js" : "[name].js",
chunkFileNames: isProdBuild && !isStatsBuild ? "c.[hash].js" : "[name].js",
assetFileNames: isProdBuild && !isStatsBuild ? "a.[hash].js" : "[name].js",
// https://rollupjs.org/configuration-options/#output-sourcemap
sourcemap: isProdBuild ? true : "inline",
},
});
const createAppConfig = ({ isProdBuild, latestBuild, isStatsBuild, isWDS }) =>
createRollupConfig(
bundle.config.app({
isProdBuild,
latestBuild,
isStatsBuild,
isWDS,
})
);
const createDemoConfig = ({ isProdBuild, latestBuild, isStatsBuild }) =>
createRollupConfig(
bundle.config.demo({
isProdBuild,
latestBuild,
isStatsBuild,
})
);
const createCastConfig = ({ isProdBuild, latestBuild }) =>
createRollupConfig(bundle.config.cast({ isProdBuild, latestBuild }));
const createHassioConfig = ({ isProdBuild, latestBuild }) =>
createRollupConfig(bundle.config.hassio({ isProdBuild, latestBuild }));
const createGalleryConfig = ({ isProdBuild, latestBuild }) =>
createRollupConfig(bundle.config.gallery({ isProdBuild, latestBuild }));
module.exports = {
createAppConfig,
createDemoConfig,
createCastConfig,
createHassioConfig,
createGalleryConfig,
createRollupConfig,
};
@@ -1,16 +1,13 @@
const { existsSync } = require("fs");
const path = require("path");
const webpack = require("webpack");
const rspack = require("@rspack/core");
const { RsdoctorRspackPlugin } = require("@rsdoctor/rspack-plugin");
const { StatsWriterPlugin } = require("webpack-stats-plugin");
const filterStats = require("@bundle-stats/plugin-webpack-filter").default;
const TerserPlugin = require("terser-webpack-plugin");
const { WebpackManifestPlugin } = require("webpack-manifest-plugin");
const { WebpackManifestPlugin } = require("rspack-manifest-plugin");
const log = require("fancy-log");
const WebpackBar = require("webpackbar");
const {
TransformAsyncModulesPlugin,
} = require("transform-async-modules-webpack-plugin");
const { dependencies } = require("../package.json");
const WebpackBar = require("webpackbar/rspack");
const paths = require("./paths.cjs");
const bundle = require("./bundle.cjs");
@@ -28,7 +25,7 @@ class LogStartCompilePlugin {
}
}
const createWebpackConfig = ({
const createRspackConfig = ({
name,
entry,
outputPath,
@@ -63,14 +60,19 @@ const createWebpackConfig = ({
rules: [
{
test: /\.m?js$|\.ts$/,
use: {
use: (info) => ({
loader: "babel-loader",
options: {
...bundle.babelOptions({ latestBuild, isProdBuild, isTestBuild }),
...bundle.babelOptions({
latestBuild,
isProdBuild,
isTestBuild,
sw: info.issuerLayer === "sw",
}),
cacheDirectory: !isProdBuild,
cacheCompression: false,
},
},
}),
resolve: {
fullySpecified: false,
},
@@ -97,13 +99,18 @@ const createWebpackConfig = ({
splitChunks: {
// Disable splitting for web workers and worklets because imports of
// external chunks are broken for:
// - ESM output: https://github.com/webpack/webpack/issues/17014
// - Worklets use `importScripts`: https://github.com/webpack/webpack/issues/11543
chunks: (chunk) =>
!chunk.canBeInitial() &&
!new RegExp(`^.+-work${latestBuild ? "(?:let|er)" : "let"}$`).test(
chunk.name
),
chunks: !isProdBuild
? // improve incremental build speed, but blows up bundle size
new RegExp(
`^(?!(${Object.keys(entry).join("|")}|.*work(?:er|let))$)`
)
: // - ESM output: https://github.com/webpack/webpack/issues/17014
// - Worklets use `importScripts`: https://github.com/webpack/webpack/issues/11543
(chunk) =>
!chunk.canBeInitial() &&
!new RegExp(
`^.+-work${latestBuild ? "(?:let|er)" : "let"}$`
).test(chunk.name),
},
},
plugins: [
@@ -112,10 +119,10 @@ const createWebpackConfig = ({
// Only include the JS of entrypoints
filter: (file) => file.isInitial && !file.name.endsWith(".map"),
}),
new webpack.DefinePlugin(
new rspack.DefinePlugin(
bundle.definedVars({ isProdBuild, latestBuild, defineOverlay })
),
new webpack.IgnorePlugin({
new rspack.IgnorePlugin({
checkResource(resource, context) {
// Only use ignore to intercept imports that we don't control
// inside node_module dependencies.
@@ -147,7 +154,7 @@ const createWebpackConfig = ({
);
},
}),
new webpack.NormalModuleReplacementPlugin(
new rspack.NormalModuleReplacementPlugin(
new RegExp(
bundle.emptyPackages({ latestBuild, isHassioBuild }).join("|")
),
@@ -163,10 +170,14 @@ const createWebpackConfig = ({
stats: { assets: true, chunks: true, modules: true },
transform: (stats) => JSON.stringify(filterStats(stats)),
}),
!latestBuild &&
new TransformAsyncModulesPlugin({
browserslistEnv: "legacy",
runtime: { version: dependencies["@babel/runtime"] },
isProdBuild &&
isStatsBuild &&
new RsdoctorRspackPlugin({
reportDir: path.join(paths.build_dir, "rsdoctor"),
features: ["plugins", "bundle"],
supports: {
generateTileGraph: true,
},
}),
].filter(Boolean),
resolve: {
@@ -183,6 +194,7 @@ const createWebpackConfig = ({
"lit/directives/cache$": "lit/directives/cache.js",
"lit/directives/repeat$": "lit/directives/repeat.js",
"lit/directives/live$": "lit/directives/live.js",
"lit/directives/keyed$": "lit/directives/keyed.js",
"lit/polyfill-support$": "lit/polyfill-support.js",
"@lit-labs/virtualizer/layouts/grid":
"@lit-labs/virtualizer/layouts/grid.js",
@@ -204,8 +216,6 @@ const createWebpackConfig = ({
isProdBuild && !isStatsBuild ? "[id].[contenthash][ext]" : "[id][ext]",
crossOriginLoading: "use-credentials",
hashFunction: "xxhash64",
hashDigest: "base64url",
hashDigestLength: 11, // full length of 64 bit base64url
path: outputPath,
publicPath,
// To silence warning in worker plugin
@@ -235,6 +245,7 @@ const createWebpackConfig = ({
),
},
experiments: {
layers: true,
outputModule: true,
},
};
@@ -246,17 +257,17 @@ const createAppConfig = ({
isStatsBuild,
isTestBuild,
}) =>
createWebpackConfig(
createRspackConfig(
bundle.config.app({ isProdBuild, latestBuild, isStatsBuild, isTestBuild })
);
const createDemoConfig = ({ isProdBuild, latestBuild, isStatsBuild }) =>
createWebpackConfig(
createRspackConfig(
bundle.config.demo({ isProdBuild, latestBuild, isStatsBuild })
);
const createCastConfig = ({ isProdBuild, latestBuild }) =>
createWebpackConfig(bundle.config.cast({ isProdBuild, latestBuild }));
createRspackConfig(bundle.config.cast({ isProdBuild, latestBuild }));
const createHassioConfig = ({
isProdBuild,
@@ -264,7 +275,7 @@ const createHassioConfig = ({
isStatsBuild,
isTestBuild,
}) =>
createWebpackConfig(
createRspackConfig(
bundle.config.hassio({
isProdBuild,
latestBuild,
@@ -274,7 +285,10 @@ const createHassioConfig = ({
);
const createGalleryConfig = ({ isProdBuild, latestBuild }) =>
createWebpackConfig(bundle.config.gallery({ isProdBuild, latestBuild }));
createRspackConfig(bundle.config.gallery({ isProdBuild, latestBuild }));
const createLandingPageConfig = ({ isProdBuild, latestBuild }) =>
createRspackConfig(bundle.config.landingPage({ isProdBuild, latestBuild }));
module.exports = {
createAppConfig,
@@ -282,5 +296,6 @@ module.exports = {
createCastConfig,
createHassioConfig,
createGalleryConfig,
createWebpackConfig,
createRspackConfig,
createLandingPageConfig,
};
+1 -1
View File
@@ -25,7 +25,7 @@ Home Assistant Cast is made up of two separate applications:
### Setting dev variables
Open `src/cast/dev_const.ts` and change `CAST_DEV_APP_ID` to the ID of the app you just created. And set the `CAST_DEV_HASS_URL` to the url of you development machine.
Open `src/cast/dev_const.ts` and change `CAST_DEV_APP_ID` to the ID of the app you just created. And set the `CAST_DEV_HASS_URL` to the url of your development machine.
### Changing configuration
+5
View File
@@ -0,0 +1,5 @@
"use strict";
self.addEventListener("fetch", (event) => {
event.respondWith(fetch(event.request));
});
-10
View File
@@ -1,10 +0,0 @@
import rollup from "../build-scripts/rollup.cjs";
import env from "../build-scripts/env.cjs";
const config = rollup.createCastConfig({
isProdBuild: env.isProdBuild(),
latestBuild: true,
isStatsBuild: env.isStatsBuild(),
});
export default { ...config.inputOptions, output: config.outputOptions };
+2 -8
View File
@@ -36,13 +36,7 @@
</head>
<body>
<%= renderTemplate("../../../src/html/_js_base.html.template") %>
<script>
<% for (const entry of latestEntryJS) { %>
import("<%= entry %>");
<% } %>
window.latestJS = true;
</script>
<%= renderTemplate("../../../src/html/_script_load_es5.html.template") %>
<%= renderTemplate("../../../src/html/_script_loader.html.template") %>
<hc-layout subtitle="FAQ">
<style>
a {
@@ -145,7 +139,7 @@
</p>
</div>
<div class="section-header">Wat does Home Assistant Cast do?</div>
<div class="section-header">What does Home Assistant Cast do?</div>
<div class="card-content">
<p>
Home Assistant Cast is a receiver application for the Chromecast. When
+2 -8
View File
@@ -13,15 +13,9 @@
<%= renderTemplate("_social_meta.html.template") %>
</head>
<body>
<%= renderTemplate("../../../src/html/_js_base.html.template") %>
<hc-connect></hc-connect>
<script>
<% for (const entry of latestEntryJS) { %>
import("<%= entry %>");
<% } %>
window.latestJS = true;
</script>
<%= renderTemplate("../../../src/html/_script_load_es5.html.template") %>
<%= renderTemplate("../../../src/html/_js_base.html.template") %>
<%= renderTemplate("../../../src/html/_script_loader.html.template") %>
<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+2 -8
View File
@@ -16,14 +16,8 @@
</style>
</head>
<body>
<%= renderTemplate("../../../src/html/_js_base.html.template") %>
<cast-media-player></cast-media-player>
<script>
<% for (const entry of latestEntryJS) { %>
import("<%= entry %>");
<% } %>
window.latestJS = true;
</script>
<%= renderTemplate("../../../src/html/_script_load_es5.html.template") %>
<%= renderTemplate("../../../src/html/_js_base.html.template") %>
<%= renderTemplate("../../../src/html/_script_loader.html.template") %>
</body>
</html>
-1
View File
@@ -7,7 +7,6 @@
<%= renderTemplate("../../../src/html/_style_base.html.template") %>
<style>
body {
background-color: white;
font-size: initial;
}
</style>
+65 -64
View File
@@ -1,10 +1,12 @@
import "@material/mwc-button/mwc-button";
import { ActionDetail } from "@material/mwc-list/mwc-list";
import "@material/mwc-list/mwc-list";
import type { ActionDetail } from "@material/mwc-list/mwc-list";
import { mdiCast, mdiCastConnected, mdiViewDashboard } from "@mdi/js";
import { Auth, Connection } from "home-assistant-js-websocket";
import { CSSResultGroup, LitElement, TemplateResult, css, html } from "lit";
import type { Auth, Connection } from "home-assistant-js-websocket";
import type { TemplateResult } from "lit";
import { LitElement, css, html } from "lit";
import { customElement, property, state } from "lit/decorators";
import { CastManager } from "../../../../src/cast/cast_manager";
import type { CastManager } from "../../../../src/cast/cast_manager";
import {
castSendShowLovelaceView,
ensureConnectedCastSession,
@@ -23,7 +25,7 @@ import {
getLovelaceCollection,
} from "../../../../src/data/lovelace";
import { isStrategyDashboard } from "../../../../src/data/lovelace/config/types";
import { LovelaceViewConfig } from "../../../../src/data/lovelace/config/view";
import type { LovelaceViewConfig } from "../../../../src/data/lovelace/config/view";
import "../../../../src/layouts/hass-loading-screen";
import { generateDefaultViewConfig } from "../../../../src/panels/lovelace/common/generate-lovelace-config";
import "./hc-layout";
@@ -89,8 +91,8 @@ class HcCast extends LitElement {
generateDefaultViewConfig({}, {}, {}, {}, () => ""),
]
).map(
(view, idx) =>
html`<ha-list-item
(view, idx) => html`
<ha-list-item
graphic="avatar"
.activated=${this.castManager.status?.lovelacePath ===
(view.path ?? idx)}
@@ -108,8 +110,9 @@ class HcCast extends LitElement {
: html`<ha-svg-icon
slot="item-icon"
.path=${mdiViewDashboard}
></ha-svg-icon>`}</ha-list-item
> `
></ha-svg-icon>`}
</ha-list-item>
`
)}</mwc-list
>
`}
@@ -200,74 +203,72 @@ class HcCast extends LitElement {
}
this.connection.close();
location.reload();
} catch (err: any) {
} catch (_err: any) {
alert("Unable to log out!");
}
}
static get styles(): CSSResultGroup {
return css`
.center-item {
display: flex;
justify-content: space-around;
}
static styles = css`
.center-item {
display: flex;
justify-content: space-around;
}
.action-item {
display: flex;
align-items: center;
justify-content: space-between;
}
.action-item {
display: flex;
align-items: center;
justify-content: space-between;
}
.question {
position: relative;
padding: 8px 16px;
}
.question {
position: relative;
padding: 8px 16px;
}
.question:before {
border-radius: 4px;
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
pointer-events: none;
content: "";
background-color: var(--primary-color);
opacity: 0.12;
will-change: opacity;
}
.question:before {
border-radius: 4px;
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
pointer-events: none;
content: "";
background-color: var(--primary-color);
opacity: 0.12;
will-change: opacity;
}
.connection,
.connection a {
color: var(--secondary-text-color);
}
.connection,
.connection a {
color: var(--secondary-text-color);
}
mwc-button ha-svg-icon {
margin-right: 8px;
margin-inline-end: 8px;
margin-inline-start: initial;
height: 18px;
}
mwc-button ha-svg-icon {
margin-right: 8px;
margin-inline-end: 8px;
margin-inline-start: initial;
height: 18px;
}
ha-list-item ha-icon,
ha-list-item ha-svg-icon {
padding: 12px;
color: var(--secondary-text-color);
}
ha-list-item ha-icon,
ha-list-item ha-svg-icon {
padding: 12px;
color: var(--secondary-text-color);
}
:host([hide-icons]) ha-icon {
display: none;
}
:host([hide-icons]) ha-icon {
display: none;
}
.spacer {
flex: 1;
}
.spacer {
flex: 1;
}
.card-content a {
color: var(--primary-color);
}
`;
}
.card-content a {
color: var(--primary-color);
}
`;
}
declare global {
+35 -33
View File
@@ -1,19 +1,23 @@
import "@material/mwc-button";
import { mdiCastConnected, mdiCast } from "@mdi/js";
import {
import type {
Auth,
Connection,
getAuthOptions,
} from "home-assistant-js-websocket";
import {
createConnection,
ERR_CANNOT_CONNECT,
ERR_HASS_HOST_REQUIRED,
ERR_INVALID_AUTH,
ERR_INVALID_HTTPS_TO_HTTP,
getAuth,
getAuthOptions,
} from "home-assistant-js-websocket";
import { css, CSSResultGroup, html, LitElement, TemplateResult } from "lit";
import type { TemplateResult } from "lit";
import { css, html, LitElement } from "lit";
import { customElement, state } from "lit/decorators";
import { CastManager, getCastManager } from "../../../../src/cast/cast_manager";
import type { CastManager } from "../../../../src/cast/cast_manager";
import { getCastManager } from "../../../../src/cast/cast_manager";
import { castSendShowDemo } from "../../../../src/cast/receiver_messages";
import {
loadTokens,
@@ -211,7 +215,7 @@ export class HcConnect extends LitElement {
let url: URL;
try {
url = new URL(value);
} catch (err: any) {
} catch (_err: any) {
this.error = "Invalid URL";
return;
}
@@ -248,7 +252,7 @@ export class HcConnect extends LitElement {
this.loading = false;
return;
} finally {
// Clear url if we have a auth callback in url.
// Clear url if we have an auth callback in url.
if (location.search.includes("auth_callback=1")) {
history.replaceState(null, "", location.pathname);
}
@@ -284,41 +288,39 @@ export class HcConnect extends LitElement {
try {
saveTokens(null);
location.reload();
} catch (err: any) {
} catch (_err: any) {
alert("Unable to log out!");
}
}
static get styles(): CSSResultGroup {
return css`
.card-content a {
color: var(--primary-color);
}
.card-actions a {
text-decoration: none;
}
.error {
color: red;
font-weight: bold;
}
static styles = css`
.card-content a {
color: var(--primary-color);
}
.card-actions a {
text-decoration: none;
}
.error {
color: red;
font-weight: bold;
}
.error a {
color: darkred;
}
.error a {
color: darkred;
}
mwc-button ha-svg-icon {
margin-left: 8px;
}
mwc-button ha-svg-icon {
margin-left: 8px;
}
.spacer {
flex: 1;
}
.spacer {
flex: 1;
}
ha-textfield {
width: 100%;
}
`;
}
ha-textfield {
width: 100%;
}
`;
}
declare global {
+90 -95
View File
@@ -1,10 +1,7 @@
import {
Auth,
Connection,
getUser,
HassUser,
} from "home-assistant-js-websocket";
import { css, CSSResultGroup, html, LitElement, TemplateResult } from "lit";
import type { Auth, Connection, HassUser } from "home-assistant-js-websocket";
import { getUser } from "home-assistant-js-websocket";
import type { TemplateResult } from "lit";
import { css, html, LitElement } from "lit";
import { customElement, property } from "lit/decorators";
import "../../../../src/components/ha-card";
@@ -66,96 +63,94 @@ class HcLayout extends LitElement {
}
}
static get styles(): CSSResultGroup {
return css`
static styles = css`
:host {
display: flex;
min-height: 100%;
align-items: center;
justify-content: center;
flex-direction: column;
}
ha-card {
display: flex;
width: 100%;
max-width: 500px;
}
.layout {
display: flex;
flex-direction: column;
}
.card-header {
color: var(--ha-card-header-color, var(--primary-text-color));
font-family: var(--ha-card-header-font-family, inherit);
font-size: var(--ha-card-header-font-size, 24px);
letter-spacing: -0.012em;
line-height: 32px;
padding: 24px 16px 16px;
display: block;
margin: 0;
}
.hero {
border-radius: 4px 4px 0 0;
}
.subtitle {
font-size: 14px;
color: var(--secondary-text-color);
line-height: initial;
}
.subtitle a {
color: var(--secondary-text-color);
}
:host ::slotted(.card-content:not(:first-child)),
slot:not(:first-child)::slotted(.card-content) {
padding-top: 0px;
margin-top: -8px;
}
:host ::slotted(.section-header) {
font-weight: 500;
padding: 4px 16px;
text-transform: uppercase;
}
:host ::slotted(.card-content) {
padding: 16px;
flex: 1;
}
:host ::slotted(.card-actions) {
border-top: 1px solid #e8e8e8;
padding: 5px 16px;
display: flex;
}
img {
width: 100%;
}
.footer {
text-align: center;
font-size: 12px;
padding: 8px 0 24px;
color: var(--secondary-text-color);
}
.footer a {
color: var(--secondary-text-color);
}
@media all and (max-width: 500px) {
:host {
display: flex;
min-height: 100%;
align-items: center;
justify-content: center;
flex-direction: column;
justify-content: flex-start;
min-height: 90%;
margin-bottom: 30px;
}
ha-card {
display: flex;
width: 100%;
max-width: 500px;
}
.layout {
display: flex;
flex-direction: column;
}
.card-header {
color: var(--ha-card-header-color, --primary-text-color);
font-family: var(--ha-card-header-font-family, inherit);
font-size: var(--ha-card-header-font-size, 24px);
letter-spacing: -0.012em;
line-height: 32px;
padding: 24px 16px 16px;
display: block;
margin: 0;
}
.hero {
border-radius: 4px 4px 0 0;
}
.subtitle {
font-size: 14px;
color: var(--secondary-text-color);
line-height: initial;
}
.subtitle a {
color: var(--secondary-text-color);
}
:host ::slotted(.card-content:not(:first-child)),
slot:not(:first-child)::slotted(.card-content) {
padding-top: 0px;
margin-top: -8px;
}
:host ::slotted(.section-header) {
font-weight: 500;
padding: 4px 16px;
text-transform: uppercase;
}
:host ::slotted(.card-content) {
padding: 16px;
flex: 1;
}
:host ::slotted(.card-actions) {
border-top: 1px solid #e8e8e8;
padding: 5px 16px;
display: flex;
}
img {
width: 100%;
}
.footer {
text-align: center;
font-size: 12px;
padding: 8px 0 24px;
color: var(--secondary-text-color);
}
.footer a {
color: var(--secondary-text-color);
}
@media all and (max-width: 500px) {
:host {
justify-content: flex-start;
min-height: 90%;
margin-bottom: 30px;
}
}
`;
}
}
`;
}
declare global {
+2 -1
View File
@@ -1,4 +1,5 @@
import { convertEntities, Entity } from "../../../../src/fake_data/entity";
import type { Entity } from "../../../../src/fake_data/entity";
import { convertEntities } from "../../../../src/fake_data/entity";
export const castDemoEntities: () => Entity[] = () =>
convertEntities({
+2 -2
View File
@@ -1,5 +1,5 @@
import { LovelaceCardConfig } from "../../../../src/data/lovelace/config/card";
import { LovelaceConfig } from "../../../../src/data/lovelace/config/types";
import type { LovelaceCardConfig } from "../../../../src/data/lovelace/config/card";
import type { LovelaceConfig } from "../../../../src/data/lovelace/config/types";
import { castContext } from "../cast_context";
export const castDemoLovelace: () => LovelaceConfig = () => {
+2 -2
View File
@@ -1,10 +1,10 @@
import { framework } from "./cast_framework";
import { CAST_NS } from "../../../src/cast/const";
import { HassMessage } from "../../../src/cast/receiver_messages";
import type { HassMessage } from "../../../src/cast/receiver_messages";
import "../../../src/resources/custom-card-support";
import { castContext } from "./cast_context";
import { HcMain } from "./layout/hc-main";
import { ReceivedMessage } from "./types";
import type { ReceivedMessage } from "./types";
const lovelaceController = new HcMain();
document.body.append(lovelaceController);
+4 -6
View File
@@ -1,13 +1,11 @@
import { html, nothing } from "lit";
import { customElement, property, state } from "lit/decorators";
import { mockHistory } from "../../../../demo/src/stubs/history";
import { LovelaceConfig } from "../../../../src/data/lovelace/config/types";
import {
MockHomeAssistant,
provideHass,
} from "../../../../src/fake_data/provide_hass";
import type { LovelaceConfig } from "../../../../src/data/lovelace/config/types";
import type { MockHomeAssistant } from "../../../../src/fake_data/provide_hass";
import { provideHass } from "../../../../src/fake_data/provide_hass";
import { HassElement } from "../../../../src/state/hass-element";
import { HomeAssistant } from "../../../../src/types";
import type { HomeAssistant } from "../../../../src/types";
import { castDemoEntities } from "../demo/cast-demo-entities";
import { castDemoLovelace } from "../demo/cast-demo-lovelace";
import "./hc-lovelace";
+26 -27
View File
@@ -1,6 +1,7 @@
import { css, CSSResultGroup, html, LitElement, TemplateResult } from "lit";
import type { TemplateResult } from "lit";
import { css, html, LitElement } from "lit";
import { customElement, property } from "lit/decorators";
import { HomeAssistant } from "../../../../src/types";
import type { HomeAssistant } from "../../../../src/types";
@customElement("hc-launch-screen")
class HcLaunchScreen extends LitElement {
@@ -23,31 +24,29 @@ class HcLaunchScreen extends LitElement {
`;
}
static get styles(): CSSResultGroup {
return css`
:host {
display: block;
height: 100vh;
background-color: #f2f4f9;
font-size: 24px;
}
.container {
display: flex;
flex-direction: column;
text-align: center;
align-items: center;
height: 100%;
justify-content: space-evenly;
}
img {
max-width: 80%;
object-fit: cover;
}
.status {
color: #1d2126;
}
`;
}
static styles = css`
:host {
display: block;
height: 100vh;
background-color: #f2f4f9;
font-size: 24px;
}
.container {
display: flex;
flex-direction: column;
text-align: center;
align-items: center;
height: 100%;
justify-content: space-evenly;
}
img {
max-width: 80%;
object-fit: cover;
}
.status {
color: #1d2126;
}
`;
}
declare global {
+35 -52
View File
@@ -1,12 +1,14 @@
import { css, CSSResultGroup, html, LitElement, TemplateResult } from "lit";
import { customElement, property, query } from "lit/decorators";
import { css, html, LitElement, type TemplateResult } from "lit";
import { customElement, property } from "lit/decorators";
import { fireEvent } from "../../../../src/common/dom/fire_event";
import { LovelaceConfig } from "../../../../src/data/lovelace/config/types";
import type { LovelaceConfig } from "../../../../src/data/lovelace/config/types";
import { getPanelTitleFromUrlPath } from "../../../../src/data/panel";
import { Lovelace } from "../../../../src/panels/lovelace/types";
import type { Lovelace } from "../../../../src/panels/lovelace/types";
import "../../../../src/panels/lovelace/views/hui-view";
import { HomeAssistant } from "../../../../src/types";
import "../../../../src/panels/lovelace/views/hui-view-container";
import type { HomeAssistant } from "../../../../src/types";
import "./hc-launch-screen";
import "../../../../src/panels/lovelace/views/hui-view-background";
(window as any).loadCardHelpers = () =>
import("../../../../src/panels/lovelace/custom-card-helpers");
@@ -18,11 +20,9 @@ class HcLovelace extends LitElement {
@property({ attribute: false })
public lovelaceConfig!: LovelaceConfig;
@property() public viewPath?: string | number | null;
@property({ attribute: false }) public viewPath?: string | number | null;
@property() public urlPath: string | null = null;
@query("hui-view") private _huiView?: HTMLElement;
@property({ attribute: false }) public urlPath: string | null = null;
protected render(): TemplateResult {
const index = this._viewIndex;
@@ -45,13 +45,22 @@ class HcLovelace extends LitElement {
saveConfig: async () => undefined,
deleteConfig: async () => undefined,
setEditMode: () => undefined,
showToast: () => undefined,
};
const viewConfig = this.lovelaceConfig.views[index];
const background = viewConfig.background || this.lovelaceConfig.background;
return html`
<hui-view
.hass=${this.hass}
.lovelace=${lovelace}
.index=${index}
></hui-view>
<hui-view-container .hass=${this.hass} .theme=${viewConfig.theme}>
<hui-view-background .hass=${this.hass} .background=${background}>
</hui-view-background>
<hui-view
.hass=${this.hass}
.lovelace=${lovelace}
.index=${index}
></hui-view>
</hui-view-container>
`;
}
@@ -81,26 +90,6 @@ class HcLovelace extends LitElement {
}${viewTitle || ""}`
: undefined,
});
const configBackground =
this.lovelaceConfig.views[index].background ||
this.lovelaceConfig.background;
const backgroundStyle =
typeof configBackground === "string"
? configBackground
: configBackground?.image
? `center / cover no-repeat url('${configBackground.image}')`
: undefined;
if (backgroundStyle) {
this._huiView!.style.setProperty(
"--lovelace-background",
backgroundStyle
);
} else {
this._huiView!.style.removeProperty("--lovelace-background");
}
}
}
}
@@ -122,24 +111,18 @@ class HcLovelace extends LitElement {
return undefined;
}
static get styles(): CSSResultGroup {
return css`
:host {
min-height: 100vh;
height: 0;
display: flex;
flex-direction: column;
box-sizing: border-box;
background: var(--primary-background-color);
}
:host > * {
flex: 1;
}
hui-view {
background: var(--lovelace-background, var(--primary-background-color));
}
`;
}
static styles = css`
hui-view-container {
display: flex;
position: relative;
min-height: 100vh;
box-sizing: border-box;
}
hui-view-container > * {
flex: 1 1 100%;
max-width: 100%;
}
`;
}
export interface CastViewChanged {
+18 -17
View File
@@ -1,41 +1,40 @@
import {
createConnection,
getAuth,
UnsubscribeFunc,
} from "home-assistant-js-websocket";
import { html, TemplateResult } from "lit";
import type { UnsubscribeFunc } from "home-assistant-js-websocket";
import { createConnection, getAuth } from "home-assistant-js-websocket";
import type { TemplateResult } from "lit";
import { html } from "lit";
import { customElement, state } from "lit/decorators";
import { CAST_NS } from "../../../../src/cast/const";
import {
import type {
ConnectMessage,
GetStatusMessage,
HassMessage,
ShowDemoMessage,
ShowLovelaceViewMessage,
} from "../../../../src/cast/receiver_messages";
import {
ReceiverErrorCode,
import type {
ReceiverErrorMessage,
ReceiverStatusMessage,
} from "../../../../src/cast/sender_messages";
import { ReceiverErrorCode } from "../../../../src/cast/sender_messages";
import { atLeastVersion } from "../../../../src/common/config/version";
import { isNavigationClick } from "../../../../src/common/dom/is-navigation-click";
import {
getLegacyLovelaceCollection,
getLovelaceCollection,
} from "../../../../src/data/lovelace";
import {
isStrategyDashboard,
import type {
LegacyLovelaceConfig,
LovelaceConfig,
LovelaceDashboardStrategyConfig,
} from "../../../../src/data/lovelace/config/types";
import { isStrategyDashboard } from "../../../../src/data/lovelace/config/types";
import { fetchResources } from "../../../../src/data/lovelace/resource";
import { loadLovelaceResources } from "../../../../src/panels/lovelace/common/load-resources";
import { HassElement } from "../../../../src/state/hass-element";
import { castContext } from "../cast_context";
import "./hc-launch-screen";
import { getPanelTitleFromUrlPath } from "../../../../src/data/panel";
import { checkLovelaceConfig } from "../../../../src/panels/lovelace/common/check-lovelace-config";
const DEFAULT_CONFIG: LovelaceDashboardStrategyConfig = {
strategy: {
@@ -145,10 +144,10 @@ export class HcMain extends HassElement {
}
if (senderId) {
this.sendMessage(senderId, status);
this._sendMessage(senderId, status);
} else {
for (const sender of castContext.getSenders()) {
this.sendMessage(sender.id, status);
this._sendMessage(sender.id, status);
}
}
}
@@ -165,10 +164,10 @@ export class HcMain extends HassElement {
};
if (senderId) {
this.sendMessage(senderId, error);
this._sendMessage(senderId, error);
} else {
for (const sender of castContext.getSenders()) {
this.sendMessage(sender.id, error);
this._sendMessage(sender.id, error);
}
}
}
@@ -365,7 +364,9 @@ export class HcMain extends HassElement {
this._urlPath || "lovelace"
);
castContext.setApplicationState(title || "");
this._lovelaceConfig = lovelaceConfig;
this._lovelaceConfig = checkLovelaceConfig(
lovelaceConfig
) as LovelaceConfig;
}
private _handleShowDemo(_msg: ShowDemoMessage) {
@@ -393,7 +394,7 @@ export class HcMain extends HassElement {
}
}
private sendMessage(senderId: string, response: any) {
private _sendMessage(senderId: string, response: any) {
castContext.sendCustomMessage(CAST_NS, senderId, response);
}
}
-8
View File
@@ -1,8 +0,0 @@
import webpack from "../build-scripts/webpack.cjs";
import env from "../build-scripts/env.cjs";
export default webpack.createCastConfig({
isProdBuild: env.isProdBuild(),
isStatsBuild: env.isStatsBuild(),
latestBuild: true,
});
+5
View File
@@ -0,0 +1,5 @@
"use strict";
self.addEventListener("fetch", (event) => {
event.respondWith(fetch(event.request));
});
-10
View File
@@ -1,10 +0,0 @@
import rollup from "../build-scripts/rollup.cjs";
import env from "../build-scripts/env.cjs";
const config = rollup.createDemoConfig({
isProdBuild: env.isProdBuild(),
latestBuild: true,
isStatsBuild: env.isStatsBuild(),
});
export default { ...config.inputOptions, output: config.outputOptions };
+2 -7
View File
@@ -4,11 +4,6 @@
# Stop on errors
set -e
cd "$(dirname "$0")/.."
cd "$(dirname "$0")/../.."
export STATS=1
statsfile="compilation-stats-demo.json"
./node_modules/.bin/webpack-cli --profile --node-env=production --json=$statsfile
npx webpack-bundle-analyzer $statsfile dist/frontend_latest
rm -f $statsfile
./node_modules/.bin/gulp analyze-demo
+1 -1
View File
@@ -1,5 +1,5 @@
import { convertEntities } from "../../../../src/fake_data/entity";
import { DemoConfig } from "../types";
import type { DemoConfig } from "../types";
export const demoEntitiesArsaboo: DemoConfig["entities"] = (localize) =>
convertEntities({
+1 -1
View File
@@ -1,4 +1,4 @@
import { DemoConfig } from "../types";
import type { DemoConfig } from "../types";
import { demoEntitiesArsaboo } from "./entities";
import { demoLovelaceArsaboo } from "./lovelace";
import { demoThemeArsaboo } from "./theme";
+1 -1
View File
@@ -1,4 +1,4 @@
import { DemoConfig } from "../types";
import type { DemoConfig } from "../types";
export const demoLovelaceArsaboo: DemoConfig["lovelace"] = (localize) => ({
title: "Home Assistant",
+4 -4
View File
@@ -1,9 +1,9 @@
import { MockHomeAssistant } from "../../../src/fake_data/provide_hass";
import { Lovelace } from "../../../src/panels/lovelace/types";
import type { MockHomeAssistant } from "../../../src/fake_data/provide_hass";
import type { Lovelace } from "../../../src/panels/lovelace/types";
import { energyEntities } from "../stubs/entities";
import { DemoConfig } from "./types";
import type { DemoConfig } from "./types";
export const demoConfigs: Array<() => Promise<DemoConfig>> = [
export const demoConfigs: (() => Promise<DemoConfig>)[] = [
() => import("./sections").then((mod) => mod.demoSections),
() => import("./arsaboo").then((mod) => mod.demoArsaboo),
() => import("./teachingbirds").then((mod) => mod.demoTeachingbirds),
+1 -1
View File
@@ -1,5 +1,5 @@
import { convertEntities } from "../../../../src/fake_data/entity";
import { DemoConfig } from "../types";
import type { DemoConfig } from "../types";
export const demoEntitiesJimpower: DemoConfig["entities"] = () =>
convertEntities({
+1 -1
View File
@@ -1,4 +1,4 @@
import { DemoConfig } from "../types";
import type { DemoConfig } from "../types";
import { demoEntitiesJimpower } from "./entities";
import { demoLovelaceJimpower } from "./lovelace";
import { demoThemeJimpower } from "./theme";
+1 -1
View File
@@ -1,5 +1,5 @@
import "../../custom-cards/card-modder";
import { DemoConfig } from "../types";
import type { DemoConfig } from "../types";
export const demoLovelaceJimpower: DemoConfig["lovelace"] = () => ({
name: "Kingia Castle",
+1 -1
View File
@@ -1,5 +1,5 @@
import { convertEntities } from "../../../../src/fake_data/entity";
import { DemoConfig } from "../types";
import type { DemoConfig } from "../types";
export const demoEntitiesKernehed: DemoConfig["entities"] = () =>
convertEntities({
+1 -1
View File
@@ -1,4 +1,4 @@
import { DemoConfig } from "../types";
import type { DemoConfig } from "../types";
import { demoEntitiesKernehed } from "./entities";
import { demoLovelaceKernehed } from "./lovelace";
import { demoThemeKernehed } from "./theme";
+1 -1
View File
@@ -1,4 +1,4 @@
import { DemoConfig } from "../types";
import type { DemoConfig } from "../types";
export const demoLovelaceKernehed: DemoConfig["lovelace"] = () => ({
name: "Hem",
-16
View File
@@ -1,16 +0,0 @@
import { html } from "lit";
import { DemoConfig } from "../types";
export const demoLovelaceDescription: DemoConfig["description"] = (
localize
) => html`
<p>
${localize("ui.panel.page-demo.config.sections.description", {
blog_post: html`<a
href="https://www.home-assistant.io/blog/2024/03/04/dashboard-chapter-1/"
target="_blank"
>${localize("ui.panel.page-demo.config.sections.description_blog_post")}
</a>`,
})}
</p>
`;
+56 -2
View File
@@ -1,5 +1,5 @@
import { convertEntities } from "../../../../src/fake_data/entity";
import { DemoConfig } from "../types";
import type { DemoConfig } from "../types";
export const demoEntitiesSections: DemoConfig["entities"] = (localize) =>
convertEntities({
@@ -111,9 +111,47 @@ export const demoEntitiesSections: DemoConfig["entities"] = (localize) =>
friendly_name: "Living room Temperature",
},
},
"sensor.living_room_humidity": {
entity_id: "sensor.living_room_humidity",
state: "57",
attributes: {
state_class: "measurement",
unit_of_measurement: "%",
device_class: "humidity",
friendly_name: "Living room Humidity",
},
},
"sensor.outdoor_temperature": {
entity_id: "sensor.outdoor_temperature",
state: "10.5",
attributes: {
state_class: "measurement",
unit_of_measurement: "°C",
device_class: "temperature",
friendly_name: "Outdoor temperature",
},
},
"sensor.outdoor_humidity": {
entity_id: "sensor.outdoor_humidity",
state: "70.4",
attributes: {
state_class: "measurement",
unit_of_measurement: "%",
device_class: "humidity",
friendly_name: "Outdoor humidity",
},
},
"device_tracker.car": {
entity_id: "sensor.outdoor_humidity",
state: "not_home",
attributes: {
friendly_name: "Car",
icon: "mdi:car",
},
},
"media_player.living_room_nest_mini": {
entity_id: "media_player.living_room_nest_mini",
state: "on",
state: "playing",
attributes: {
device_class: "speaker",
volume_level: 0.18,
@@ -161,6 +199,14 @@ export const demoEntitiesSections: DemoConfig["entities"] = (localize) =>
supported_features: 32,
},
},
"binary_sensor.kitchen_motion": {
entity_id: "light.kitchen_motion",
state: "on",
attributes: {
device_class: "motion",
friendly_name: "Kitchen motion",
},
},
"light.worktop_spotlights": {
entity_id: "light.worktop_spotlights",
state: "off",
@@ -395,6 +441,14 @@ export const demoEntitiesSections: DemoConfig["entities"] = (localize) =>
supported_features: 64063,
},
},
"switch.in_meeting": {
entity_id: "switch.in_meeting",
state: "on",
attributes: {
icon: "mdi:laptop-account",
friendly_name: "In a meeting",
},
},
"sensor.standing_desk_height": {
entity_id: "sensor.standing_desk_height",
state: "72",
+1 -3
View File
@@ -1,5 +1,4 @@
import { DemoConfig } from "../types";
import { demoLovelaceDescription } from "./description";
import type { DemoConfig } from "../types";
import { demoEntitiesSections } from "./entities";
import { demoLovelaceSections } from "./lovelace";
@@ -7,7 +6,6 @@ export const demoSections: DemoConfig = {
authorName: "Home Assistant",
authorUrl: "https://github.com/home-assistant/frontend/",
name: "Home Demo",
description: demoLovelaceDescription,
lovelace: demoLovelaceSections,
entities: demoEntitiesSections,
theme: () => ({}),
+114 -17
View File
@@ -1,5 +1,5 @@
import { isFrontpageEmbed } from "../../util/is_frontpage";
import { DemoConfig } from "../types";
import type { DemoConfig } from "../types";
export const demoLovelaceSections: DemoConfig["lovelace"] = (localize) => ({
title: "Home Assistant Demo",
@@ -9,17 +9,57 @@ export const demoLovelaceSections: DemoConfig["lovelace"] = (localize) => ({
title: isFrontpageEmbed ? "Home Assistant" : "Demo",
path: "home",
icon: "mdi:home-assistant",
badges: [
{
type: "entity",
entity: "sensor.outdoor_temperature",
color: "red",
},
{
type: "entity",
entity: "sensor.outdoor_humidity",
color: "indigo",
},
{
type: "entity",
entity: "device_tracker.car",
},
],
sections: [
...(isFrontpageEmbed
? []
: [
{
title: `${localize("ui.panel.page-demo.config.sections.titles.welcome")} 👋`,
cards: [{ type: "custom:ha-demo-card" }],
cards: [
{
type: "heading",
heading: `${localize("ui.panel.page-demo.config.sections.titles.welcome")} 👋`,
},
{ type: "custom:ha-demo-card" },
],
},
]),
{
cards: [
{
type: "heading",
heading: localize(
"ui.panel.page-demo.config.sections.titles.living_room"
),
icon: "mdi:sofa",
badges: [
{
type: "entity",
entity: "sensor.living_room_temperature",
color: "red",
},
{
type: "entity",
entity: "sensor.living_room_humidity",
color: "indigo",
},
],
},
{
type: "tile",
entity: "light.floor_lamp",
@@ -38,13 +78,6 @@ export const demoLovelaceSections: DemoConfig["lovelace"] = (localize) => ({
type: "tile",
entity: "light.bar_lamp",
},
{
graph: "line",
type: "sensor",
entity: "sensor.living_room_temperature",
detail: 1,
name: "Temperature",
},
{
type: "tile",
entity: "cover.living_room_garden_shutter",
@@ -55,11 +88,25 @@ export const demoLovelaceSections: DemoConfig["lovelace"] = (localize) => ({
entity: "media_player.living_room_nest_mini",
},
],
title: `🛋️ ${localize("ui.panel.page-demo.config.sections.titles.living_room")} `,
},
{
type: "grid",
cards: [
{
type: "heading",
heading: localize(
"ui.panel.page-demo.config.sections.titles.kitchen"
),
icon: "mdi:fridge",
badges: [
{
type: "entity",
entity: "binary_sensor.kitchen_motion",
show_state: false,
color: "blue",
},
],
},
{
type: "tile",
entity: "cover.kitchen_shutter",
@@ -90,11 +137,17 @@ export const demoLovelaceSections: DemoConfig["lovelace"] = (localize) => ({
entity: "media_player.kitchen_nest_audio",
},
],
title: `👩‍🍳 ${localize("ui.panel.page-demo.config.sections.titles.kitchen")}`,
},
{
type: "grid",
cards: [
{
type: "heading",
heading: localize(
"ui.panel.page-demo.config.sections.titles.energy"
),
icon: "mdi:transmission-tower",
},
{
type: "tile",
entity: "binary_sensor.tesla_wall_connector_vehicle_connected",
@@ -132,11 +185,17 @@ export const demoLovelaceSections: DemoConfig["lovelace"] = (localize) => ({
color: "dark-grey",
},
],
title: `⚡️ ${localize("ui.panel.page-demo.config.sections.titles.energy")}`,
},
{
type: "grid",
cards: [
{
type: "heading",
heading: localize(
"ui.panel.page-demo.config.sections.titles.climate"
),
icon: "mdi:thermometer",
},
{
type: "tile",
entity: "sun.sun",
@@ -169,16 +228,38 @@ export const demoLovelaceSections: DemoConfig["lovelace"] = (localize) => ({
state_content: ["preset_mode", "current_temperature"],
},
],
title: `🌤️ ${localize("ui.panel.page-demo.config.sections.titles.climate")}`,
},
{
type: "grid",
cards: [
{
type: "heading",
heading: localize(
"ui.panel.page-demo.config.sections.titles.study"
),
icon: "mdi:desk-lamp",
badges: [
{
type: "entity",
entity: "switch.in_meeting",
state: "on",
state_content: "name",
visibility: [
{
condition: "state",
state: "on",
entity: "switch.in_meeting",
},
],
},
],
},
{
type: "tile",
entity: "cover.study_shutter",
name: "Shutter",
},
{
type: "tile",
entity: "light.study_spotlights",
@@ -195,12 +276,23 @@ export const demoLovelaceSections: DemoConfig["lovelace"] = (localize) => ({
color: "brown",
icon: "mdi:desk",
},
{
type: "tile",
entity: "switch.in_meeting",
name: "Meeting mode",
},
],
title: `🧑‍💻 ${localize("ui.panel.page-demo.config.sections.titles.study")}`,
},
{
type: "grid",
cards: [
{
type: "heading",
heading: localize(
"ui.panel.page-demo.config.sections.titles.outdoor"
),
icon: "mdi:tree",
},
{
type: "tile",
entity: "light.outdoor_light",
@@ -230,11 +322,17 @@ export const demoLovelaceSections: DemoConfig["lovelace"] = (localize) => ({
name: "Illuminance",
},
],
title: `🌳 ${localize("ui.panel.page-demo.config.sections.titles.outdoor")}`,
},
{
type: "grid",
cards: [
{
type: "heading",
heading: localize(
"ui.panel.page-demo.config.sections.titles.updates"
),
icon: "mdi:update",
},
{
type: "tile",
entity: "automation.home_assistant_auto_update",
@@ -260,7 +358,6 @@ export const demoLovelaceSections: DemoConfig["lovelace"] = (localize) => ({
icon: "mdi:home-assistant",
},
],
title: `🎉 ${localize("ui.panel.page-demo.config.sections.titles.updates")}`,
},
],
},
+1 -1
View File
@@ -1,5 +1,5 @@
import { convertEntities } from "../../../../src/fake_data/entity";
import { DemoConfig } from "../types";
import type { DemoConfig } from "../types";
export const demoEntitiesTeachingbirds: DemoConfig["entities"] = () =>
convertEntities({
+1 -1
View File
@@ -1,4 +1,4 @@
import { DemoConfig } from "../types";
import type { DemoConfig } from "../types";
import { demoEntitiesTeachingbirds } from "./entities";
import { demoLovelaceTeachingbirds } from "./lovelace";
import { demoThemeTeachingbirds } from "./theme";
+1 -1
View File
@@ -1,4 +1,4 @@
import { DemoConfig } from "../types";
import type { DemoConfig } from "../types";
export const demoLovelaceTeachingbirds: DemoConfig["lovelace"] = () => ({
title: "Home",

Some files were not shown because too many files have changed in this diff Show More