Commit graph

387 commits

Author SHA1 Message Date
Thibaut
01332a542c
Removing myself from template codeowners (#130617)
* Removing myself as codeowners

* Fix

---------

Co-authored-by: Joostlek <joostlek@outlook.com>
2024-11-14 15:23:55 +01:00
G Johansson
742eca5927
Use TemplateStateFromEntityId in Template trigger entity (#130136) 2024-11-08 22:09:43 +01:00
Paulus Schoutsen
a927312fb5
Ensure all template names are strings (#129921) 2024-11-05 22:36:26 -05:00
epenet
602ec54579
Set config_entry explicitly to None in relevant components (#129427)
Set config_entry explicitly to None in components
2024-10-30 19:32:10 +01:00
epenet
b28fa2a1ad
Use shorthand attribute in template binary sensor (#128966) 2024-10-24 16:16:46 +02:00
G Johansson
cdfec7ebb4
Implement new state property for alarm_control_panel which is using an enum (#126283)
* Alarm state from enum

* Fixes

* Set final

* Fix rebase

* Test const

* Fix breaking version

* Fix other for alarm_control_panel

* Fix integrations

* More

* More

* More

* More

* Fix zha

* Replace _attr_state

* Fix alarm_control_panel

* Fix tests

* Fixes

* Mods

* Change some

* More

* More

* More

* Tests

* Last tests

* Return enum

* Fix zha

* Remove not needed check

* Fix wording

* Fix homekit

* Mod prometheus

* Fix mypy

* Fix homekit

* Fix ifttt
2024-10-21 22:54:27 +02:00
Marc Jay
1739647768
Fix grammar in Template Helper creation dialog (#128174) 2024-10-11 17:51:47 +02:00
G Johansson
1613b3c0df
Use separate constants in template cover (#127853) 2024-10-08 08:06:44 +02:00
Tudor Sandu
d9b077154e
Blueprints for template entities (#126971)
* Template domain blueprints

* Default blueprint for templates

* Some linting

* Template entity updates

* Load and use blueprints in config

* Added missing mapping methods for templates

* Linting

* Added tests

* Wrong schema type

* Hassfest errors

* More linting issues

* Refactor based on desired schema

In the [architecture discussion](https://github.com/home-assistant/architecture/discussions/1027), the template blueprint instance did not specify the platform (e.g. `binary_sensor`), but the initial implementation assumed that schema.

* Create default template blueprints on first run

* Moved TemplateConfig definition

This is to avoid circular references

* Corrected methods to find templates based on blueprints

* Corrected missing entity config information

* Added tests

* Don't use hass.data

Address comments https://github.com/home-assistant/core/pull/126971/#discussion_r1780097187

* Prevent creating blueprints during testing

* Combine 2 ifs

Address comment https://github.com/home-assistant/core/pull/126971/#discussion_r1780160870

* Improve test coverage

* Prevent template component from dirtying test env

* Remove useless hard-coded validation

* Improve code coverage to 100%

* Address review comments

* Moved helpers in helpers.py

As per comment https://github.com/home-assistant/core/pull/126971#discussion_r1786539889

* Fix blueprint source URL

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2024-10-04 16:47:29 +02:00
J. Nick Koston
db494de809
Restore __slots__ to core objects (#127441) 2024-10-03 22:23:47 +02:00
J. Nick Koston
0f29fd3e10
Switch to using fast cached_property implementation in propcache (#127339) 2024-10-03 13:11:02 -05:00
Paul Bottein
c306ebed49
Fix device id support for alarm control panel template (#127340) 2024-10-02 19:04:36 +02:00
epenet
45f92dd981
Improve type hints in template (#126802) 2024-09-26 15:05:46 +02:00
Martin Hjelmare
d5ad35630f
Fix missing template alarm control panel menu string (#126791) 2024-09-26 07:37:49 +02:00
G Johansson
93aade6e8e
Change lock state to an enum (#126379)
* Add new LockState enum for lock states

* Add rest

* Fix insteon tests

* Fix mqtt tests

* Fix tesla_fleet

* Revert back ST_STATE_LOCKED

* Add back constant
2024-09-24 12:30:50 +02:00
epenet
acebf1fb48
Adjust _ENTITY_COMPONENTS in hass-enforce-class-module (#126603) 2024-09-24 12:19:39 +02:00
G Johansson
86d8ddd289
Remove deprecated forecast key from template weather (#126132)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2024-09-23 18:57:32 +02:00
epenet
6bc2d11c5e
Add base Entity class to enforce-class-module pylint plugin (#126026)
* Add base Entity class to enforcé-class-module pylint plugin

* Ignore bluetooth

* Ignore hue

* Ignore dominos

* Ignore ffmpeg

* Ignore mqtt

* Ignore microsoft_face

* Ignore plant

* Ignore point

* Ignore rfxtrx

* Ignore template

* Ignore tag

* Ignore deconz
2024-09-18 20:38:45 +02:00
G Johansson
2080b9a87c
Add config flow to template alarm_control_panel (#125861)
* Add config flow to template alarm_control_panel

* Remove commented code

* Test import
2024-09-13 22:12:16 +02:00
G Johansson
d855f70e3b
Add RestoreEntity to template alarm_control_panel (#125844) 2024-09-13 16:44:48 +02:00
chammp
b3377fe5fb
Add condition to trigger template entities (#119689)
* Add conditions to trigger template entities

* Add tests

* Fix ruff error

* Ruff

* Apply suggestions from code review

* Deduplicate

* Tweak name used in debug message

* Add and improve type annotations of modified code

* Adjust typing

* Adjust typing

* Add typing and remove unused parameter

* Adjust typing

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* Adjust return type

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

---------

Co-authored-by: Erik Montnemery <erik@montnemery.com>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2024-09-11 09:36:49 +02:00
chammp
56dfb2c734
Add unit_of_measurement to template numbers (#122862) 2024-09-11 08:47:17 +02:00
Erik Montnemery
dee4b33c64
Sort and remove duplicates from template/const.py (#125591) 2024-09-09 15:11:18 +02:00
dougiteixeira
926ffe536c
Fix UI config validation for button and switch actions in Template (#121810)
Fix IU config validation for button and switch actions in Template
2024-09-08 13:59:54 +02:00
Erik Montnemery
cf049a07c2
Don't allow templating min, max, step in config entry template number (#125342) 2024-09-06 07:59:22 +02:00
Joost Lekkerkerker
8c2e63807c
Make set_value required in number template (#124917)
* Make set_value required in number template

* Make set_value required in number template

* Fix tests
2024-08-30 22:02:10 +02:00
Erik Montnemery
38ef216894
Update icons.json to new service schema part 4 (#124771) 2024-08-28 13:48:13 +02:00
dougiteixeira
f581066747
Add config flow for platform number in Template (#121849)
* Add config flow to select platform in Template

* Remove device id duplicate in schema

* Add config flow for number platform in Template

* Remove mode
2024-08-15 20:02:51 +02:00
Erik Montnemery
dc462aa529
Remove unnecessary assignment of Template.hass from template (#123773) 2024-08-13 11:54:36 +02:00
epenet
0bb8c4832d
Enable raise-within-try (TRY301) rule in ruff (#123351) 2024-08-12 09:16:33 +02:00
dougiteixeira
de5b5f6d36
Add string for value template description in switch Template (#121865)
Add string for value template descrition in switch Template
2024-07-19 13:58:22 +02:00
G Johansson
ca4c617d4b
Add TURN_OFF/TURN_ON feature flags for fan (#121447) 2024-07-19 11:35:24 +02:00
dougiteixeira
162b734be7
Add config flow for select platform in Template (#121809) 2024-07-12 17:50:02 +02:00
Dave T
62b9b34561
Fix typo in Template switch (#121856) 2024-07-12 16:03:24 +02:00
G Johansson
1acbcf921a
Fix schema and strings in template switch (#121843) 2024-07-12 15:50:21 +02:00
dougiteixeira
52454f5218
Add config flow for platform switch in Template (#121639) 2024-07-11 10:11:31 +02:00
dougiteixeira
e0c7073da1
Add config flow for image platform in Template (#121648) 2024-07-10 23:49:24 +02:00
dougiteixeira
d783813ba0
Add config flow for platform button in Template (#120886) 2024-07-09 21:20:18 +02:00
dougiteixeira
cf4bd7fd1c
Refactor schema generation in Template integration (#120889)
Co-authored-by: Robert Resch <robert@resch.dev>
2024-07-08 09:06:15 +02:00
dougiteixeira
0d48d5a5ec
Remove device ID from config schema via YAML in helper template (#120708) 2024-07-07 16:40:02 +02:00
dougiteixeira
295cfd26aa
Add missing translations for device class in Template (#120893) 2024-07-01 07:55:13 +02:00
epenet
f4fa5b581e
Import PLATFORM_SCHEMA from platform not from helpers (#120565) 2024-06-26 15:43:48 +02:00
epenet
912136be25
Force alias when importing lock PLATFORM_SCHEMA (#120531) 2024-06-26 11:52:57 +02:00
epenet
2c17d84fab
Force alias when importing cover PLATFORM_SCHEMA (#120522) 2024-06-26 11:25:14 +02:00
epenet
399130bc95
Force alias when importing binary sensor PLATFORM_SCHEMA (#120510) 2024-06-26 10:54:19 +02:00
epenet
c96dc00a3a
Force alias when importing alarm control panel PLATFORM_SCHEMA (#120505) 2024-06-26 10:41:46 +02:00
epenet
9b8922a678
Force alias when importing switch PLATFORM_SCHEMA (#120504) 2024-06-26 10:36:54 +02:00
Marc Mueller
3559755aed
Add import aliases for PLATFORM_SCHEMA (#120445) 2024-06-25 19:16:19 +02:00
dougiteixeira
6e32a96ff3
Add the ability to bind the template helper entity to a device (#117753) 2024-06-22 12:45:06 +02:00
chammp
52379ad7cb
Add code_format_template to template locks (#106947)
* Add code_format to template locks

* Replace code_format with code_format_template

* Add test case for template eval to None

* Apply suggestion to not call super()

Co-authored-by: Erik Montnemery <erik@montnemery.com>

* Add more negative tests

* Handle template render errors

* Better error message

* Add custom test lock config for code format

* Add type hints from upstream

---------

Co-authored-by: Erik Montnemery <erik@montnemery.com>
Co-authored-by: Franck Nijhof <git@frenck.dev>
2024-06-10 16:54:17 +02:00