Compare commits

...

439 Commits

Author SHA1 Message Date
Bram Kragten
010e25b49e Add support for helper text in form boolean 2024-11-07 09:56:10 +01: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
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
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
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
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
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
1724 changed files with 25806 additions and 16530 deletions

View File

@@ -124,7 +124,9 @@
"lit-a11y/no-autofocus": "off",
"lit-a11y/alt-text": "warn",
"lit-a11y/anchor-is-valid": "warn",
"lit-a11y/role-has-required-aria-attrs": "warn"
"lit-a11y/role-has-required-aria-attrs": "warn",
"@typescript-eslint/consistent-type-imports": "error",
"@typescript-eslint/no-import-type-side-effects": "error"
},
"plugins": ["unused-imports"]
}

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.3
uses: actions/setup-node@v4.1.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.3
uses: actions/setup-node@v4.1.0
with:
node-version-file: ".nvmrc"
cache: yarn

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.3
uses: actions/setup-node@v4.1.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.1.2
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.3
uses: actions/setup-node@v4.1.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.3
uses: actions/setup-node@v4.1.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.4.0
uses: actions/upload-artifact@v4.4.3
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.3
uses: actions/setup-node@v4.1.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.4.0
uses: actions/upload-artifact@v4.4.3
with:
name: supervisor-bundle-stats
path: build/stats/*.json

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.

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.3
uses: actions/setup-node@v4.1.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.3
uses: actions/setup-node@v4.1.0
with:
node-version-file: ".nvmrc"
cache: yarn

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.3
uses: actions/setup-node@v4.1.0
with:
node-version-file: ".nvmrc"
cache: yarn

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.3
uses: actions/setup-node@v4.1.0
with:
node-version-file: ".nvmrc"
cache: yarn

View File

@@ -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.3
uses: actions/setup-node@v4.1.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.4.0
uses: actions/upload-artifact@v4.4.3
with:
name: wheels
path: dist/home_assistant_frontend*.whl
if-no-files-found: error
- name: Upload translations
uses: actions/upload-artifact@v4.4.0
uses: actions/upload-artifact@v4.4.3
with:
name: translations
path: translations.tar.gz

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.12
uses: relative-ci/agent-action@v2.1.13
with:
key: ${{ secrets[format('RELATIVE_CI_KEY_{0}_{1}', matrix.bundle, matrix.build)] }}
token: ${{ github.token }}

View File

@@ -23,7 +23,7 @@ jobs:
contents: write # Required to upload release assets
steps:
- name: Checkout the repository
uses: actions/checkout@v4.1.7
uses: actions/checkout@v4.2.2
- name: Verify version
uses: home-assistant/actions/helpers/verify-version@master
@@ -34,7 +34,7 @@ jobs:
python-version: ${{ env.PYTHON_VERSION }}
- name: Setup Node
uses: actions/setup-node@v4.0.3
uses: actions/setup-node@v4.1.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.8
uses: softprops/action-gh-release@v2.0.9
with:
files: |
dist/*.whl

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: |

View File

@@ -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);

File diff suppressed because one or more lines are too long

View File

@@ -6,4 +6,4 @@ enableGlobalCache: false
nodeLinker: node-modules
yarnPath: .yarn/releases/yarn-4.4.1.cjs
yarnPath: .yarn/releases/yarn-4.5.1.cjs

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/)

View File

@@ -15,23 +15,29 @@ const brotliOptions = {
};
const zopfliOptions = { threshold: 150 };
const compressDistBrotli = (rootDir, modernDir) =>
const compressDistBrotli = (rootDir, modernDir, compressServiceWorker = true) =>
gulp
.src([`${modernDir}/**/${filesGlob}`, `${rootDir}/sw-modern.js`], {
base: rootDir,
})
.src(
[
`${modernDir}/**/${filesGlob}`,
compressServiceWorker ? `${rootDir}/sw-modern.js` : undefined,
].filter(Boolean),
{
base: rootDir,
}
)
.pipe(brotli(brotliOptions))
.pipe(gulp.dest(rootDir));
const compressDistZopfli = (rootDir, modernDir) =>
const compressDistZopfli = (rootDir, modernDir, compressModern = false) =>
gulp
.src(
[
`${rootDir}/**/${filesGlob}`,
`!${modernDir}/**/${filesGlob}`,
compressModern ? undefined : `!${modernDir}/**/${filesGlob}`,
`!${rootDir}/{sw-modern,service_worker}.js`,
`${rootDir}/{authorize,onboarding}.html`,
],
].filter(Boolean),
{ base: rootDir }
)
.pipe(zopfli(zopfliOptions))
@@ -40,12 +46,20 @@ const compressDistZopfli = (rootDir, modernDir) =>
const compressAppBrotli = () =>
compressDistBrotli(paths.app_output_root, paths.app_output_latest);
const compressHassioBrotli = () =>
compressDistBrotli(paths.hassio_output_root, paths.hassio_output_latest);
compressDistBrotli(
paths.hassio_output_root,
paths.hassio_output_latest,
false
);
const compressAppZopfli = () =>
compressDistZopfli(paths.app_output_root, paths.app_output_latest);
const compressHassioZopfli = () =>
compressDistZopfli(paths.hassio_output_root, paths.hassio_output_latest);
compressDistZopfli(
paths.hassio_output_root,
paths.hassio_output_latest,
true
);
gulp.task("compress-app", gulp.parallel(compressAppBrotli, compressAppZopfli));
gulp.task(

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) {

View File

@@ -60,6 +60,12 @@ function copyPolyfills(staticDir) {
npmPath("@webcomponents/webcomponentsjs/webcomponents-bundle.js.map"),
staticPath("polyfills/")
);
// dialog-polyfill css
copyFileDir(
npmPath("dialog-polyfill/dialog-polyfill.css"),
staticPath("polyfills/")
);
}
function copyLoaderJS(staticDir) {
@@ -100,6 +106,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);
@@ -137,6 +151,7 @@ gulp.task("copy-static-app", async () => {
copyMapPanel(staticDir);
// Qr Scanner assets
copyZXingWasm(staticDir);
copyQrScannerWorker(staticDir);
});

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) {

View File

@@ -139,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

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 { CSSResultGroup, 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
>
`}

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 { CSSResultGroup, 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,

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 { CSSResultGroup, TemplateResult } from "lit";
import { css, html, LitElement } from "lit";
import { customElement, property } from "lit/decorators";
import "../../../../src/components/ha-card";
@@ -88,7 +85,7 @@ class HcLayout extends LitElement {
}
.card-header {
color: var(--ha-card-header-color, --primary-text-color);
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;

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({

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 = () => {

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);

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";

View File

@@ -1,6 +1,7 @@
import { css, CSSResultGroup, html, LitElement, TemplateResult } from "lit";
import type { CSSResultGroup, 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 {

View File

@@ -1,11 +1,18 @@
import { css, CSSResultGroup, html, LitElement, TemplateResult } from "lit";
import { customElement, property, query } from "lit/decorators";
import {
css,
type CSSResultGroup,
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";
(window as any).loadCardHelpers = () =>
@@ -22,8 +29,6 @@ class HcLovelace extends LitElement {
@property() public urlPath: string | null = null;
@query("hui-view") private _huiView?: HTMLElement;
protected render(): TemplateResult {
const index = this._viewIndex;
if (index === undefined) {
@@ -45,13 +50,24 @@ 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
<hui-view-container
.hass=${this.hass}
.lovelace=${lovelace}
.index=${index}
></hui-view>
.background=${background}
.theme=${viewConfig.theme}
>
<hui-view
.hass=${this.hass}
.lovelace=${lovelace}
.index=${index}
></hui-view>
</hui-view-container>
`;
}
@@ -81,26 +97,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");
}
}
}
}
@@ -124,19 +120,15 @@ class HcLovelace extends LitElement {
static get styles(): CSSResultGroup {
return css`
:host {
min-height: 100vh;
height: 0;
hui-view-container {
display: flex;
flex-direction: column;
position: relative;
min-height: 100vh;
box-sizing: border-box;
background: var(--primary-background-color);
}
:host > * {
flex: 1;
}
hui-view {
background: var(--lovelace-background, var(--primary-background-color));
flex: 1 1 100%;
max-width: 100%;
}
`;
}

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: {
@@ -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) {

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({

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";

View File

@@ -1,4 +1,4 @@
import { DemoConfig } from "../types";
import type { DemoConfig } from "../types";
export const demoLovelaceArsaboo: DemoConfig["lovelace"] = (localize) => ({
title: "Home Assistant",

View File

@@ -1,7 +1,7 @@
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>> = [
() => import("./sections").then((mod) => mod.demoSections),

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({

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";

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",

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({

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";

View File

@@ -1,4 +1,4 @@
import { DemoConfig } from "../types";
import type { DemoConfig } from "../types";
export const demoLovelaceKernehed: DemoConfig["lovelace"] = () => ({
name: "Hem",

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>
`;

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",

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: () => ({}),

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")}`,
},
],
},

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({

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";

View File

@@ -1,4 +1,4 @@
import { DemoConfig } from "../types";
import type { DemoConfig } from "../types";
export const demoLovelaceTeachingbirds: DemoConfig["lovelace"] = () => ({
title: "Home",

View File

@@ -1,7 +1,7 @@
import { TemplateResult } from "lit";
import { LocalizeFunc } from "../../../src/common/translations/localize";
import { LovelaceConfig } from "../../../src/data/lovelace/config/types";
import { Entity } from "../../../src/fake_data/entity";
import type { TemplateResult } from "lit";
import type { LocalizeFunc } from "../../../src/common/translations/localize";
import type { LovelaceConfig } from "../../../src/data/lovelace/config/types";
import type { Entity } from "../../../src/fake_data/entity";
export interface DemoConfig {
index?: number;

View File

@@ -1,14 +1,15 @@
import { mdiTelevision } from "@mdi/js";
import { css, CSSResultGroup, html, LitElement, nothing } from "lit";
import type { CSSResultGroup } from "lit";
import { css, html, LitElement, nothing } from "lit";
import { customElement, state } from "lit/decorators";
import { CastManager } from "../../../src/cast/cast_manager";
import type { CastManager } from "../../../src/cast/cast_manager";
import { castSendShowDemo } from "../../../src/cast/receiver_messages";
import "../../../src/components/ha-icon";
import {
import type {
CastConfig,
LovelaceRow,
} from "../../../src/panels/lovelace/entity-rows/types";
import { HomeAssistant } from "../../../src/types";
import type { HomeAssistant } from "../../../src/types";
@customElement("cast-demo-row")
class CastDemoRow extends LitElement implements LovelaceRow {

View File

@@ -1,13 +1,17 @@
import { css, CSSResultGroup, html, LitElement, nothing } from "lit";
import type { CSSResultGroup } from "lit";
import { css, html, LitElement, nothing } from "lit";
import { customElement, property, state } from "lit/decorators";
import { until } from "lit/directives/until";
import { fireEvent } from "../../../src/common/dom/fire_event";
import "../../../src/components/ha-card";
import "../../../src/components/ha-button";
import "../../../src/components/ha-circular-progress";
import { LovelaceCardConfig } from "../../../src/data/lovelace/config/card";
import { MockHomeAssistant } from "../../../src/fake_data/provide_hass";
import { Lovelace, LovelaceCard } from "../../../src/panels/lovelace/types";
import type { LovelaceCardConfig } from "../../../src/data/lovelace/config/card";
import type { MockHomeAssistant } from "../../../src/fake_data/provide_hass";
import type {
Lovelace,
LovelaceCard,
} from "../../../src/panels/lovelace/types";
import {
demoConfigs,
selectedDemoConfig,

View File

@@ -3,12 +3,10 @@ import "../../src/resources/compatibility";
import { customElement } from "lit/decorators";
import { isNavigationClick } from "../../src/common/dom/is-navigation-click";
import { navigate } from "../../src/common/navigate";
import {
MockHomeAssistant,
provideHass,
} from "../../src/fake_data/provide_hass";
import type { MockHomeAssistant } from "../../src/fake_data/provide_hass";
import { provideHass } from "../../src/fake_data/provide_hass";
import { HomeAssistantAppEl } from "../../src/layouts/home-assistant";
import { HomeAssistant } from "../../src/types";
import type { HomeAssistant } from "../../src/types";
import { selectedDemoConfig } from "./configs/demo-configs";
import { mockAreaRegistry } from "./stubs/area_registry";
import { mockAuth } from "./stubs/auth";

View File

@@ -1,4 +1,4 @@
import { AreaRegistryEntry } from "../../../src/data/area_registry";
import type { AreaRegistryEntry } from "../../../src/data/area_registry";
import type { MockHomeAssistant } from "../../../src/fake_data/provide_hass";
export const mockAreaRegistry = (

View File

@@ -1,4 +1,4 @@
import { MockHomeAssistant } from "../../../src/fake_data/provide_hass";
import type { MockHomeAssistant } from "../../../src/fake_data/provide_hass";
export const mockAuth = (hass: MockHomeAssistant) => {
hass.mockWS("config/auth/list", () => []);

9
demo/src/stubs/config.ts Normal file
View File

@@ -0,0 +1,9 @@
import type { MockHomeAssistant } from "../../../src/fake_data/provide_hass";
export const mockConfig = (hass: MockHomeAssistant) => {
hass.mockWS("validate_config", () => ({
actions: { valid: true },
conditions: { valid: true },
triggers: { valid: true },
}));
};

View File

@@ -1,4 +1,4 @@
import { MockHomeAssistant } from "../../../src/fake_data/provide_hass";
import type { MockHomeAssistant } from "../../../src/fake_data/provide_hass";
export const mockConfigEntries = (hass: MockHomeAssistant) => {
hass.mockWS("config_entries/get", () => ({

View File

@@ -1,4 +1,4 @@
import { DeviceRegistryEntry } from "../../../src/data/device_registry";
import type { DeviceRegistryEntry } from "../../../src/data/device_registry";
import type { MockHomeAssistant } from "../../../src/fake_data/provide_hass";
export const mockDeviceRegistry = (

View File

@@ -1,11 +1,11 @@
import { format, startOfToday, startOfTomorrow } from "date-fns";
import {
import type {
EnergyInfo,
EnergyPreferences,
EnergySolarForecasts,
FossilEnergyConsumption,
} from "../../../src/data/energy";
import { MockHomeAssistant } from "../../../src/fake_data/provide_hass";
import type { MockHomeAssistant } from "../../../src/fake_data/provide_hass";
export const mockEnergy = (hass: MockHomeAssistant) => {
hass.mockWS(

View File

@@ -1,4 +1,4 @@
import { EntityRegistryEntry } from "../../../src/data/entity_registry";
import type { EntityRegistryEntry } from "../../../src/data/entity_registry";
import type { MockHomeAssistant } from "../../../src/fake_data/provide_hass";
export const mockEntityRegistry = (

View File

@@ -1,4 +1,4 @@
import { MockHomeAssistant } from "../../../src/fake_data/provide_hass";
import type { MockHomeAssistant } from "../../../src/fake_data/provide_hass";
export const mockEvents = (hass: MockHomeAssistant) => {
hass.mockAPI("events", () => []);

View File

@@ -1,4 +1,4 @@
import { FloorRegistryEntry } from "../../../src/data/floor_registry";
import type { FloorRegistryEntry } from "../../../src/data/floor_registry";
import type { MockHomeAssistant } from "../../../src/fake_data/provide_hass";
export const mockFloorRegistry = (

View File

@@ -1,4 +1,4 @@
import { MockHomeAssistant } from "../../../src/fake_data/provide_hass";
import type { MockHomeAssistant } from "../../../src/fake_data/provide_hass";
export const mockFrontend = (hass: MockHomeAssistant) => {
hass.mockWS("frontend/get_user_data", () => ({

View File

@@ -1,4 +1,4 @@
import { HassioSupervisorInfo } from "../../../src/data/hassio/supervisor";
import type { HassioSupervisorInfo } from "../../../src/data/hassio/supervisor";
import type { MockHomeAssistant } from "../../../src/fake_data/provide_hass";
export const mockHassioSupervisor = (hass: MockHomeAssistant) => {

View File

@@ -1,6 +1,6 @@
import { HassEntity } from "home-assistant-js-websocket";
import { HistoryStates } from "../../../src/data/history";
import { MockHomeAssistant } from "../../../src/fake_data/provide_hass";
import type { HassEntity } from "home-assistant-js-websocket";
import type { HistoryStates } from "../../../src/data/history";
import type { MockHomeAssistant } from "../../../src/fake_data/provide_hass";
const generateStateHistory = (
state: HassEntity,

View File

@@ -1,6 +1,6 @@
import { IconCategory } from "../../../src/data/icons";
import type { IconCategory } from "../../../src/data/icons";
import { ENTITY_COMPONENT_ICONS } from "../../../src/fake_data/entity_component_icons";
import { MockHomeAssistant } from "../../../src/fake_data/provide_hass";
import type { MockHomeAssistant } from "../../../src/fake_data/provide_hass";
export const mockIcons = (hass: MockHomeAssistant) => {
hass.mockWS(

View File

@@ -1,4 +1,4 @@
import { LabelRegistryEntry } from "../../../src/data/label_registry";
import type { LabelRegistryEntry } from "../../../src/data/label_registry";
import type { MockHomeAssistant } from "../../../src/fake_data/provide_hass";
export const mockLabelRegistry = (

View File

@@ -1,4 +1,4 @@
import { MockHomeAssistant } from "../../../src/fake_data/provide_hass";
import type { MockHomeAssistant } from "../../../src/fake_data/provide_hass";
export const mockMediaPlayer = (hass: MockHomeAssistant) => {
hass.mockWS("media_player_thumbnail", () => Promise.reject());

View File

@@ -1,5 +1,5 @@
import { PersistentNotificationMessage } from "../../../src/data/persistent_notification";
import { MockHomeAssistant } from "../../../src/fake_data/provide_hass";
import type { PersistentNotificationMessage } from "../../../src/data/persistent_notification";
import type { MockHomeAssistant } from "../../../src/fake_data/provide_hass";
export const mockPersistentNotification = (hass: MockHomeAssistant) => {
hass.mockWS("persistent_notification/subscribe", (_msg, _hass, onChange) => {

View File

@@ -5,12 +5,12 @@ import {
differenceInHours,
endOfDay,
} from "date-fns";
import {
import type {
Statistics,
StatisticsMetaData,
StatisticValue,
} from "../../../src/data/recorder";
import { MockHomeAssistant } from "../../../src/fake_data/provide_hass";
import type { MockHomeAssistant } from "../../../src/fake_data/provide_hass";
const generateMeanStatistics = (
start: Date,

View File

@@ -1,4 +1,4 @@
import { MockHomeAssistant } from "../../../src/fake_data/provide_hass";
import type { MockHomeAssistant } from "../../../src/fake_data/provide_hass";
export const mockSensor = (hass: MockHomeAssistant) => {
hass.mockWS("sensor/numeric_device_classes", () => [

View File

@@ -1,4 +1,4 @@
import { MockHomeAssistant } from "../../../src/fake_data/provide_hass";
import type { MockHomeAssistant } from "../../../src/fake_data/provide_hass";
export const mockSystemLog = (hass: MockHomeAssistant) => {
hass.mockAPI("error/all", () => []);

6
demo/src/stubs/tags.ts Normal file
View File

@@ -0,0 +1,6 @@
import type { Tag } from "../../../src/data/tag";
import type { MockHomeAssistant } from "../../../src/fake_data/provide_hass";
export const mockTags = (hass: MockHomeAssistant) => {
hass.mockWS("tag/list", () => [{ id: "my-tag", name: "My Tag" }] as Tag[]);
};

View File

@@ -1,4 +1,4 @@
import { MockHomeAssistant } from "../../../src/fake_data/provide_hass";
import type { MockHomeAssistant } from "../../../src/fake_data/provide_hass";
export const mockTemplate = (hass: MockHomeAssistant) => {
hass.mockAPI("template", () =>

View File

@@ -1,5 +1,6 @@
import { TodoItem, TodoItemStatus } from "../../../src/data/todo";
import { MockHomeAssistant } from "../../../src/fake_data/provide_hass";
import type { TodoItem } from "../../../src/data/todo";
import { TodoItemStatus } from "../../../src/data/todo";
import type { MockHomeAssistant } from "../../../src/fake_data/provide_hass";
export const mockTodo = (hass: MockHomeAssistant) => {
hass.mockWS("todo/item/list", () => ({

View File

@@ -1,4 +1,4 @@
import { MockHomeAssistant } from "../../../src/fake_data/provide_hass";
import type { MockHomeAssistant } from "../../../src/fake_data/provide_hass";
export const mockTranslations = (hass: MockHomeAssistant) => {
hass.mockWS(

View File

@@ -1,5 +1,7 @@
import { Button } from "@material/mwc-button";
import { html, LitElement, css, TemplateResult, nothing } from "lit";
import "@material/mwc-button/mwc-button";
import type { Button } from "@material/mwc-button";
import type { TemplateResult } from "lit";
import { html, LitElement, css, nothing } from "lit";
import { customElement, property } from "lit/decorators";
import { applyThemesOnElement } from "../../../src/common/dom/apply_themes_on_element";
import { fireEvent } from "../../../src/common/dom/fire_event";

View File

@@ -1,10 +1,11 @@
import { load } from "js-yaml";
import { LitElement, PropertyValueMap, css, html, nothing } from "lit";
import type { PropertyValueMap } from "lit";
import { LitElement, css, html, nothing } from "lit";
import { customElement, property, query, state } from "lit/decorators";
import memoizeOne from "memoize-one";
import "../../../src/panels/lovelace/cards/hui-card";
import type { HuiCard } from "../../../src/panels/lovelace/cards/hui-card";
import { HomeAssistant } from "../../../src/types";
import type { HomeAssistant } from "../../../src/types";
export interface DemoCardConfig {
heading: string;

View File

@@ -3,7 +3,7 @@ import { customElement, property, query, state } from "lit/decorators";
import { applyThemesOnElement } from "../../../src/common/dom/apply_themes_on_element";
import "../../../src/components/ha-formfield";
import "../../../src/components/ha-switch";
import { HomeAssistant } from "../../../src/types";
import type { HomeAssistant } from "../../../src/types";
import "./demo-card";
import type { DemoCardConfig } from "./demo-card";
import "../ha-demo-options";

View File

@@ -4,7 +4,7 @@ import "../../../src/components/ha-card";
import "../../../src/dialogs/more-info/more-info-content";
import "../../../src/state-summary/state-card-content";
import "../ha-demo-options";
import { HomeAssistant } from "../../../src/types";
import type { HomeAssistant } from "../../../src/types";
@customElement("demo-more-info")
class DemoMoreInfo extends LitElement {

View File

@@ -3,7 +3,7 @@ import { customElement, property, state } from "lit/decorators";
import { applyThemesOnElement } from "../../../src/common/dom/apply_themes_on_element";
import "../../../src/components/ha-formfield";
import "../../../src/components/ha-switch";
import { HomeAssistant } from "../../../src/types";
import type { HomeAssistant } from "../../../src/types";
import "../ha-demo-options";
import "./demo-more-info";

View File

@@ -1,4 +1,4 @@
import { DemoTrace } from "./types";
import type { DemoTrace } from "./types";
export const basicTrace: DemoTrace = {
trace: {
@@ -217,22 +217,22 @@ export const basicTrace: DemoTrace = {
id: "1615419646544",
alias: "Ensure Party mode",
description: "",
trigger: [
triggers: [
{
platform: "state",
trigger: "state",
entity_id: "input_boolean.toggle_1",
},
],
condition: [
conditions: [
{
condition: "template",
alias: "Test if Paulus is home",
value_template: "{{ true }}",
},
],
action: [
actions: [
{
service: "input_boolean.toggle",
action: "input_boolean.toggle",
target: {
entity_id: "input_boolean.toggle_4",
},
@@ -268,7 +268,7 @@ export const basicTrace: DemoTrace = {
],
default: [
{
service: "input_boolean.toggle",
action: "input_boolean.toggle",
alias: "Toggle 2",
target: {
entity_id: "input_boolean.toggle_2",
@@ -277,7 +277,7 @@ export const basicTrace: DemoTrace = {
],
},
{
service: "input_boolean.toggle",
action: "input_boolean.toggle",
target: {
entity_id: "input_boolean.toggle_4",
},

View File

@@ -1,6 +1,6 @@
import { LogbookEntry } from "../../../../src/data/logbook";
import { AutomationTraceExtended } from "../../../../src/data/trace";
import { DemoTrace } from "./types";
import type { LogbookEntry } from "../../../../src/data/logbook";
import type { AutomationTraceExtended } from "../../../../src/data/trace";
import type { DemoTrace } from "./types";
export const mockDemoTrace = (
tracePartial: Partial<AutomationTraceExtended>,
@@ -31,8 +31,8 @@ export const mockDemoTrace = (
],
},
config: {
trigger: [],
action: [],
triggers: [],
actions: [],
},
context: {
id: "abcd",

View File

@@ -1,4 +1,4 @@
import { DemoTrace } from "./types";
import type { DemoTrace } from "./types";
export const motionLightTrace: DemoTrace = {
trace: {
@@ -133,17 +133,17 @@ export const motionLightTrace: DemoTrace = {
config: {
mode: "restart",
max_exceeded: "silent",
trigger: [
triggers: [
{
platform: "state",
trigger: "state",
entity_id: "binary_sensor.pauluss_macbook_pro_camera_in_use",
from: "off",
to: "on",
},
],
action: [
actions: [
{
service: "light.turn_on",
action: "light.turn_on",
target: {
entity_id: "light.elgato_key_light_air",
},
@@ -162,7 +162,7 @@ export const motionLightTrace: DemoTrace = {
delay: 0,
},
{
service: "light.turn_off",
action: "light.turn_off",
target: {
entity_id: "light.elgato_key_light_air",
},

View File

@@ -1,5 +1,5 @@
import { AutomationTraceExtended } from "../../../../src/data/trace";
import { LogbookEntry } from "../../../../src/data/logbook";
import type { AutomationTraceExtended } from "../../../../src/data/trace";
import type { LogbookEntry } from "../../../../src/data/logbook";
export interface DemoTrace {
trace: AutomationTraceExtended;

View File

@@ -1,7 +1,8 @@
import "@material/mwc-drawer";
import "@material/mwc-top-app-bar-fixed";
import { mdiMenu } from "@mdi/js";
import { LitElement, PropertyValues, css, html } from "lit";
import type { PropertyValues } from "lit";
import { LitElement, css, html } from "lit";
import { customElement, query, state } from "lit/decorators";
import { dynamicElement } from "../../src/common/dom/dynamic-element-directive";
import { HaExpansionPanel } from "../../src/components/ha-expansion-panel";

View File

@@ -3,11 +3,11 @@ import { css, html, LitElement, nothing } from "lit";
import { customElement, property, state } from "lit/decorators";
import "../../../../src/components/ha-card";
import "../../../../src/components/ha-yaml-editor";
import { Action } from "../../../../src/data/script";
import type { Action } from "../../../../src/data/script";
import { describeAction } from "../../../../src/data/script_i18n";
import { getEntity } from "../../../../src/fake_data/entity";
import { provideHass } from "../../../../src/fake_data/provide_hass";
import { HomeAssistant } from "../../../../src/types";
import type { HomeAssistant } from "../../../../src/types";
const ENTITIES = [
getEntity("scene", "kitchen_morning", "scening", {
@@ -48,7 +48,7 @@ const ACTIONS = [
{
wait_for_trigger: [
{
platform: "state",
trigger: "state",
entity_id: "input_boolean.toggle_1",
},
],
@@ -121,7 +121,7 @@ const ACTIONS = [
];
const initialAction: Action = {
service: "light.turn_on",
action: "light.turn_on",
target: {
entity_id: "light.kitchen",
},
@@ -142,7 +142,7 @@ export class DemoAutomationDescribeAction extends LitElement {
<div class="action">
<span>
${this._action
? describeAction(this.hass, [], [], [], this._action)
? describeAction(this.hass, [], [], {}, this._action)
: "<invalid YAML>"}
</span>
<ha-yaml-editor
@@ -155,7 +155,7 @@ export class DemoAutomationDescribeAction extends LitElement {
${ACTIONS.map(
(conf) => html`
<div class="action">
<span>${describeAction(this.hass, [], [], [], conf as any)}</span>
<span>${describeAction(this.hass, [], [], {}, conf as any)}</span>
<pre>${dump(conf)}</pre>
</div>
`

View File

@@ -3,11 +3,11 @@ import { css, html, LitElement, nothing } from "lit";
import { customElement, property, state } from "lit/decorators";
import "../../../../src/components/ha-card";
import "../../../../src/components/ha-yaml-editor";
import { Condition } from "../../../../src/data/automation";
import type { Condition } from "../../../../src/data/automation";
import { describeCondition } from "../../../../src/data/automation_i18n";
import { getEntity } from "../../../../src/fake_data/entity";
import { provideHass } from "../../../../src/fake_data/provide_hass";
import { HomeAssistant } from "../../../../src/types";
import type { HomeAssistant } from "../../../../src/types";
const ENTITIES = [
getEntity("light", "kitchen", "on", {

View File

@@ -3,11 +3,11 @@ import { css, html, LitElement, nothing } from "lit";
import { customElement, property, state } from "lit/decorators";
import "../../../../src/components/ha-card";
import "../../../../src/components/ha-yaml-editor";
import { Trigger } from "../../../../src/data/automation";
import type { Trigger } from "../../../../src/data/automation";
import { describeTrigger } from "../../../../src/data/automation_i18n";
import { getEntity } from "../../../../src/fake_data/entity";
import { provideHass } from "../../../../src/fake_data/provide_hass";
import { HomeAssistant } from "../../../../src/types";
import type { HomeAssistant } from "../../../../src/types";
const ENTITIES = [
getEntity("light", "kitchen", "on", {
@@ -22,46 +22,52 @@ const ENTITIES = [
];
const triggers = [
{ platform: "state", entity_id: "light.kitchen", from: "off", to: "on" },
{ platform: "mqtt" },
{ trigger: "state", entity_id: "light.kitchen", from: "off", to: "on" },
{ trigger: "mqtt" },
{
platform: "geo_location",
trigger: "geo_location",
source: "test_source",
zone: "zone.home",
event: "enter",
},
{ platform: "homeassistant", event: "start" },
{ trigger: "homeassistant", event: "start" },
{
platform: "numeric_state",
trigger: "numeric_state",
entity_id: "light.kitchen",
attribute: "brightness",
below: 80,
above: 20,
},
{ platform: "sun", event: "sunset" },
{ platform: "time_pattern" },
{ platform: "time_pattern", hours: "*", minutes: "/5", seconds: "10" },
{ platform: "webhook" },
{ platform: "persistent_notification" },
{ trigger: "sun", event: "sunset" },
{ trigger: "time_pattern" },
{ trigger: "time_pattern", hours: "*", minutes: "/5", seconds: "10" },
{ trigger: "webhook" },
{ trigger: "persistent_notification" },
{
platform: "zone",
trigger: "zone",
entity_id: "person.person",
zone: "zone.home",
event: "enter",
},
{ platform: "tag" },
{ platform: "time", at: "15:32" },
{ platform: "template" },
{ platform: "conversation", command: "Turn on the lights" },
{ trigger: "tag" },
{ trigger: "time", at: "15:32" },
{ trigger: "template" },
{ trigger: "conversation", command: "Turn on the lights" },
{
platform: "conversation",
trigger: "conversation",
command: ["Turn on the lights", "Turn the lights on"],
},
{ platform: "event", event_type: "homeassistant_started" },
{ trigger: "event", event_type: "homeassistant_started" },
{
triggers: [
{ trigger: "state", entity_id: "light.kitchen", to: "on" },
{ trigger: "state", entity_id: "light.kitchen", to: "off" },
],
},
];
const initialTrigger: Trigger = {
platform: "state",
trigger: "state",
entity_id: "light.kitchen",
};

View File

@@ -1,5 +1,6 @@
/* eslint-disable lit/no-template-arrow */
import { LitElement, TemplateResult, html, css } from "lit";
import type { TemplateResult } from "lit";
import { LitElement, html, css } from "lit";
import { customElement, state } from "lit/decorators";
import { provideHass } from "../../../../src/fake_data/provide_hass";
import type { HomeAssistant } from "../../../../src/types";
@@ -18,7 +19,7 @@ import { HaSceneAction } from "../../../../src/panels/config/automation/action/t
import { HaServiceAction } from "../../../../src/panels/config/automation/action/types/ha-automation-action-service";
import { HaWaitForTriggerAction } from "../../../../src/panels/config/automation/action/types/ha-automation-action-wait_for_trigger";
import { HaWaitAction } from "../../../../src/panels/config/automation/action/types/ha-automation-action-wait_template";
import { Action } from "../../../../src/data/script";
import type { Action } from "../../../../src/data/script";
import { HaConditionAction } from "../../../../src/panels/config/automation/action/types/ha-automation-action-condition";
import { HaSequenceAction } from "../../../../src/panels/config/automation/action/types/ha-automation-action-sequence";
import { HaParallelAction } from "../../../../src/panels/config/automation/action/types/ha-automation-action-parallel";

View File

@@ -1,5 +1,6 @@
/* eslint-disable lit/no-template-arrow */
import { LitElement, TemplateResult, html, css } from "lit";
import type { TemplateResult } from "lit";
import { LitElement, html, css } from "lit";
import { customElement, state } from "lit/decorators";
import { provideHass } from "../../../../src/fake_data/provide_hass";
import type { HomeAssistant } from "../../../../src/types";

View File

@@ -1,5 +1,6 @@
/* eslint-disable lit/no-template-arrow */
import { LitElement, TemplateResult, html, css } from "lit";
import type { TemplateResult } from "lit";
import { LitElement, html, css } from "lit";
import { customElement, state } from "lit/decorators";
import { provideHass } from "../../../../src/fake_data/provide_hass";
import type { HomeAssistant } from "../../../../src/types";
@@ -8,6 +9,9 @@ import { mockEntityRegistry } from "../../../../demo/src/stubs/entity_registry";
import { mockDeviceRegistry } from "../../../../demo/src/stubs/device_registry";
import { mockAreaRegistry } from "../../../../demo/src/stubs/area_registry";
import { mockHassioSupervisor } from "../../../../demo/src/stubs/hassio_supervisor";
import { mockConfig } from "../../../../demo/src/stubs/config";
import { mockTags } from "../../../../demo/src/stubs/tags";
import { mockAuth } from "../../../../demo/src/stubs/auth";
import type { Trigger } from "../../../../src/data/automation";
import { HaGeolocationTrigger } from "../../../../src/panels/config/automation/trigger/types/ha-automation-trigger-geo_location";
import { HaEventTrigger } from "../../../../src/panels/config/automation/trigger/types/ha-automation-trigger-event";
@@ -26,6 +30,7 @@ import { HaStateTrigger } from "../../../../src/panels/config/automation/trigger
import { HaMQTTTrigger } from "../../../../src/panels/config/automation/trigger/types/ha-automation-trigger-mqtt";
import "../../../../src/panels/config/automation/trigger/ha-automation-trigger";
import { HaConversationTrigger } from "../../../../src/panels/config/automation/trigger/types/ha-automation-trigger-conversation";
import { HaTriggerList } from "../../../../src/panels/config/automation/trigger/types/ha-automation-trigger-list";
const SCHEMAS: { name: string; triggers: Trigger[] }[] = [
{
@@ -111,11 +116,15 @@ const SCHEMAS: { name: string; triggers: Trigger[] }[] = [
triggers: [
{ ...HaConversationTrigger.defaultConfig },
{
platform: "conversation",
trigger: "conversation",
command: ["Turn on the lights", "Turn the lights on"],
},
],
},
{
name: "Trigger list",
triggers: [{ ...HaTriggerList.defaultConfig }],
},
];
@customElement("demo-automation-editor-trigger")
@@ -135,6 +144,9 @@ export class DemoAutomationEditorTrigger extends LitElement {
mockDeviceRegistry(hass);
mockAreaRegistry(hass);
mockHassioSupervisor(hass);
mockConfig(hass);
mockTags(hass);
mockAuth(hass);
}
protected render(): TemplateResult {

View File

@@ -5,9 +5,9 @@ import { customElement, property } from "lit/decorators";
import "../../../../src/components/ha-card";
import "../../../../src/components/trace/hat-trace-timeline";
import { provideHass } from "../../../../src/fake_data/provide_hass";
import { HomeAssistant } from "../../../../src/types";
import type { HomeAssistant } from "../../../../src/types";
import { mockDemoTrace } from "../../data/traces/mock-demo-trace";
import { DemoTrace } from "../../data/traces/types";
import type { DemoTrace } from "../../data/traces/types";
const traces: DemoTrace[] = [
mockDemoTrace({ state: "running" }),

View File

@@ -6,10 +6,10 @@ import "../../../../src/components/ha-card";
import "../../../../src/components/trace/hat-script-graph";
import "../../../../src/components/trace/hat-trace-timeline";
import { provideHass } from "../../../../src/fake_data/provide_hass";
import { HomeAssistant } from "../../../../src/types";
import type { HomeAssistant } from "../../../../src/types";
import { basicTrace } from "../../data/traces/basic_trace";
import { motionLightTrace } from "../../data/traces/motion-light-trace";
import { DemoTrace } from "../../data/traces/types";
import type { DemoTrace } from "../../data/traces/types";
const traces: DemoTrace[] = [basicTrace, motionLightTrace];

View File

@@ -1,5 +1,6 @@
import "@material/mwc-button/mwc-button";
import { css, html, LitElement, TemplateResult } from "lit";
import type { TemplateResult } from "lit";
import { css, html, LitElement } from "lit";
import { customElement } from "lit/decorators";
import { applyThemesOnElement } from "../../../../src/common/dom/apply_themes_on_element";
import "../../../../src/components/ha-alert";

View File

@@ -1,4 +1,5 @@
import { html, css, LitElement, TemplateResult } from "lit";
import type { TemplateResult } from "lit";
import { html, css, LitElement } from "lit";
import { customElement } from "lit/decorators";
import { classMap } from "lit/directives/class-map";
import "../../../../src/components/ha-bar";

View File

@@ -1,4 +1,5 @@
import { css, html, LitElement, TemplateResult, nothing } from "lit";
import type { TemplateResult } from "lit";
import { css, html, LitElement, nothing } from "lit";
import { customElement } from "lit/decorators";
import "../../../../src/components/ha-card";
import "../../../../src/components/chips/ha-chip-set";

View File

@@ -1,10 +1,11 @@
import { html, css, LitElement, TemplateResult } from "lit";
import type { TemplateResult } from "lit";
import { html, css, LitElement } from "lit";
import { customElement, property } from "lit/decorators";
import "../../../../src/components/ha-bar";
import "../../../../src/components/ha-card";
import "../../../../src/components/ha-circular-progress";
import "@material/web/progress/circular-progress";
import { HomeAssistant } from "../../../../src/types";
import type { HomeAssistant } from "../../../../src/types";
@customElement("demo-components-ha-circular-progress")
export class DemoHaCircularProgress extends LitElement {

View File

@@ -4,7 +4,8 @@ import {
mdiFanSpeed3,
mdiLightbulb,
} from "@mdi/js";
import { css, html, LitElement, TemplateResult } from "lit";
import type { TemplateResult } from "lit";
import { css, html, LitElement } from "lit";
import { customElement } from "lit/decorators";
import { ifDefined } from "lit/directives/if-defined";
import { repeat } from "lit/directives/repeat";

View File

@@ -1,4 +1,5 @@
import { css, html, LitElement, TemplateResult } from "lit";
import type { TemplateResult } from "lit";
import { css, html, LitElement } from "lit";
import { customElement, state } from "lit/decorators";
import "../../../../src/components/ha-card";
import "../../../../src/components/ha-control-circular-slider";

View File

@@ -1,4 +1,5 @@
import { LitElement, TemplateResult, css, html } from "lit";
import type { TemplateResult } from "lit";
import { LitElement, css, html } from "lit";
import { customElement, state } from "lit/decorators";
import "../../../../src/components/ha-card";
import "../../../../src/components/ha-control-number-buttons";

View File

@@ -1,5 +1,6 @@
import { mdiFan, mdiFanSpeed1, mdiFanSpeed2, mdiFanSpeed3 } from "@mdi/js";
import { LitElement, TemplateResult, css, html, nothing } from "lit";
import type { TemplateResult } from "lit";
import { LitElement, css, html, nothing } from "lit";
import { customElement } from "lit/decorators";
import { repeat } from "lit/directives/repeat";
import "../../../../src/components/ha-card";

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