From 91a401e63e499dfc04891c97303f31db7c9cbb0f Mon Sep 17 00:00:00 2001 From: Albin Medoc Date: Mon, 6 Mar 2023 11:49:56 +0000 Subject: [PATCH 1/3] Add custom chip group counter --- .../custom_chip_group_counter/README.md | 90 ++++++++++++++++ .../custom_chip_group_counter.yaml | 100 ++++++++++++++++++ .../languages/en.yaml | 18 ++++ .../languages/sv.yaml | 18 ++++ 4 files changed, 226 insertions(+) create mode 100644 custom_cards/custom_chip_group_counter/README.md create mode 100644 custom_cards/custom_chip_group_counter/custom_chip_group_counter.yaml create mode 100644 custom_cards/custom_chip_group_counter/languages/en.yaml create mode 100644 custom_cards/custom_chip_group_counter/languages/sv.yaml diff --git a/custom_cards/custom_chip_group_counter/README.md b/custom_cards/custom_chip_group_counter/README.md new file mode 100644 index 000000000..9c7b5d7af --- /dev/null +++ b/custom_cards/custom_chip_group_counter/README.md @@ -0,0 +1,90 @@ +--- +title: Custom Chip Group Counter +hide: + - toc +--- + + + +# Custom Card "Group Counter" + +![example-image-light](../../docs/assets/img/custom_card_group_counter_chip_light.png) +![example-image-dark](../../docs/assets/img/custom_card_group_counter_chip_dark.png) + +## Credits + +- Author: Albin Médoc - 2023 + Version: 1.0.0 + +## Changelog + +
+ 1.0.0 + Initial release +
+ +## Description + +This cards show a chip with custom text representing how many entities in a group have a specific state. Pressing on the chip will toggle the entity group, eg turn on/off all lights. + +## Variables + +| Variable | Default | Required | Notes | +| ------------------------------------------- | ------------------------ | -------- | -------------------------------------------------------------------------------------------------- | --- | +| ulm_custom_chip_group_counter_hide_if_zero | false | No | Hide chip if no entities are active. | +| ulm_custom_chip_group_counter_type | light | No | Specify the type of entities, used for translation | +| ulm_custom_chip_group_counter_count_state | on | No | States that should be counted | +| ulm_custom_chip_group_counter_color | yellow | Yes | Color of the icon
Can choose between: `blue`, `red`, `green`, `yellow`, `pink`, `purple`
| | +| ulm_custom_chip_group_counter_icon_zero | mdi:lightbulb-outline | No | Icon when no entity's state is satisfied | +| ulm_custom_chip_group_counter_icon_one | mdi:lightbulb-on-outline | No | Icon when one entity's state is satisfied | +| ulm_custom_chip_group_counter_icon_multiple | mdi:lightbulb-on-outline | No | Icon when multiple entities state is satisfied | + +## Usage + +### Minimal config 1 + +The entities active within the group will only go one level down. If you have a group with a group the subgroup will only be treated as a single entity. + +```yaml +- type: 'custom:button-card' + template: 'custom_card_group_counter_chip' + entity: 'lights.living_room' +``` + +### Minimal config 2 + +This configuration can be used if you have a sensor that should represent the state. This can be good if you have groups within groups and the calculation is happening outside this card. The entity must still be set and should represent all the entities that should be toggled on press. + +```yaml +- type: 'custom:button-card' + template: 'custom_card_group_counter_chip' + entity: 'lights.all' + variables: + ulm_custom_chip_group_counter_entities_active: 'sensor.lights_on' +``` + +### Full config 2 + +```yaml +- type: 'custom:button-card' + template: 'custom_card_group_counter_chip' + entity: 'lights.all' + variables: + ulm_custom_card_group_counter_chip_hide_if_zero: true + ulm_custom_card_group_counter_chip_type: speaker + ulm_custom_card_group_counter_chip_count_state: + - 'playing' + - 'buffering' + ulm_custom_card_group_counter_chip_color: green + ulm_custom_card_group_counter_chip_icon_zero: 'mdi:speaker' + ulm_custom_card_group_counter_chip_icon_one: 'mdi:speaker' + ulm_custom_card_group_counter_chip_icon_multiple: 'mdi:speaker-multiple' +``` + +## Template code + +??? note "Template Code" + + ```yaml title="custom_chip_group_counter.yaml" + --8<-- "custom_cards/custom_chip_group_counter/custom_chip_group_counter.yaml" + ``` diff --git a/custom_cards/custom_chip_group_counter/custom_chip_group_counter.yaml b/custom_cards/custom_chip_group_counter/custom_chip_group_counter.yaml new file mode 100644 index 000000000..d616ed40c --- /dev/null +++ b/custom_cards/custom_chip_group_counter/custom_chip_group_counter.yaml @@ -0,0 +1,100 @@ +--- +### Custom Chip Group Counter ### +custom_chip_group_counter: + template: + - "chips" + - "custom_chip_group_counter_language_variables" + variables: + ulm_custom_chip_group_counter_icon_zero: "mdi:lightbulb-outline" + ulm_custom_chip_group_counter_icon_one: "mdi:lightbulb-on-outline" + ulm_custom_chip_group_counter_icon_multiple: "mdi:lightbulb-on-outline" + ulm_custom_chip_group_counter_color: "yellow" + ulm_custom_chip_group_counter_count_state: "on" + ulm_custom_chip_group_counter_type: "light" + ulm_custom_chip_group_counter_hide_if_zero: false + tap_action: + action: "toggle" + triggers_update: "all" + show_icon: true + icon: | + [[[ + let entities_active = 0; + if(variables.ulm_custom_chip_group_counter_entities_active) { + entities_active = states[variables.ulm_custom_chip_group_counter_entities_active].state; + } else { + entities_active = states[ + entity.entity_id + ].attributes.entity_id.filter((child_entity_id) => { + return variables.ulm_custom_chip_group_counter_count_state.includes(states[child_entity_id]?.state); + }).length; + } + + if (entities_active == 0) { + return variables.ulm_custom_chip_group_counter_icon_zero; + } else if (entities_active == 1) { + return variables.ulm_custom_chip_group_counter_icon_one; + } else { + return variables.ulm_custom_chip_group_counter_icon_multiple; + } + ]]] + label: | + [[[ + let entities_active = 0; + if(variables.ulm_custom_chip_group_counter_entities_active) { + entities_active = states[variables.ulm_custom_chip_group_counter_entities_active].state; + } else { + entities_active = states[ + entity.entity_id + ].attributes.entity_id.filter((child_entity_id) => { + return variables.ulm_custom_chip_group_counter_count_state.includes(states[child_entity_id]?.state); + }).length; + } + + const type = variables.ulm_custom_chip_group_counter_type; + const plural_typ = entities_active == 0 ? "zero" : entities_active == 1 ? "one" : "multiple"; + const translation_path = `custom_chip_group_counter_${type}_${plural_typ}` + return variables[translation_path].replace('{count}', entities_active); + ]]] + styles: + card: + - display: | + [[[ + let entities_active = 0; + if(variables.ulm_custom_chip_group_counter_entities_active) { + entities_active = states[variables.ulm_custom_chip_group_counter_entities_active].state; + } else { + entities_active = states[ + entity.entity_id + ].attributes.entity_id.filter((child_entity_id) => { + return variables.ulm_custom_chip_group_counter_count_state.includes(states[child_entity_id]?.state); + }).length; + } + + if(variables.ulm_custom_chip_group_counter_hide_if_zero && entities_active == 0){ + return "none"; + } + return "block"; + ]]] + grid: + - grid-template-areas: "'i l'" + icon: + - color: | + [[[ + let entities_active = 0; + if(variables.ulm_custom_chip_group_counter_entities_active) { + entities_active = states[variables.ulm_custom_chip_group_counter_entities_active].state; + } else { + entities_active = states[ + entity.entity_id + ].attributes.entity_id.filter((child_entity_id) => { + return variables.ulm_custom_chip_group_counter_count_state.includes(states[child_entity_id]?.state); + }).length; + } + + if (entities_active == 0) { + return 'rgba(var(--color-theme),0.2)'; + } + else { + return 'rgba(var(--color-' + variables.ulm_custom_chip_group_counter_color + '),1)'; + } + ]]] diff --git a/custom_cards/custom_chip_group_counter/languages/en.yaml b/custom_cards/custom_chip_group_counter/languages/en.yaml new file mode 100644 index 000000000..14d638faf --- /dev/null +++ b/custom_cards/custom_chip_group_counter/languages/en.yaml @@ -0,0 +1,18 @@ +--- +custom_chip_group_counter_language_variables: + variables: + custom_chip_group_counter_light_zero: "No lights" + custom_chip_group_counter_light_one: "One light" + custom_chip_group_counter_light_multiple: "{count} lights" + + custom_chip_group_counter_media_player_zero: "No media players" + custom_chip_group_counter_media_player_one: "One media player" + custom_chip_group_counter_media_player_multiple: "{count} media players" + + custom_chip_group_counter_speaker_zero: "No speakers" + custom_chip_group_counter_speaker_one: "One speaker" + custom_chip_group_counter_speaker_multiple: "{count} speakers" + + custom_chip_group_counter_television_zero: "No TVs" + custom_chip_group_counter_television_one: "One TV" + custom_chip_group_counter_television_multiple: "{count} TVs" diff --git a/custom_cards/custom_chip_group_counter/languages/sv.yaml b/custom_cards/custom_chip_group_counter/languages/sv.yaml new file mode 100644 index 000000000..3ada20aba --- /dev/null +++ b/custom_cards/custom_chip_group_counter/languages/sv.yaml @@ -0,0 +1,18 @@ +--- +custom_chip_group_counter_language_variables: + variables: + custom_chip_group_counter_light_zero: "Inga lampor" + custom_chip_group_counter_light_one: "En lampa" + custom_chip_group_counter_light_multiple: "{count} lampor" + + custom_chip_group_counter_media_player_zero: "Inga mediaspelare" + custom_chip_group_counter_media_player_one: "En mediaspelare" + custom_chip_group_counter_media_player_multiple: "{count} mediaspelare" + + custom_chip_group_counter_speaker_zero: "Inga högtalare" + custom_chip_group_counter_speaker_one: "En högtalare" + custom_chip_group_counter_speaker_multiple: "{count} högtalare" + + custom_chip_group_counter_television_zero: "Inga TV:ar" + custom_chip_group_counter_television_one: "En TV" + custom_chip_group_counter_television_multiple: "{count} TV:ar" From b7dd8f8e3d28aa5c3e775bee2bf9cca25c5e9af1 Mon Sep 17 00:00:00 2001 From: Albin Medoc Date: Wed, 8 Mar 2023 09:32:36 +0100 Subject: [PATCH 2/3] Update readme --- custom_cards/custom_chip_group_counter/README.md | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/custom_cards/custom_chip_group_counter/README.md b/custom_cards/custom_chip_group_counter/README.md index 9c7b5d7af..2c2ffe379 100644 --- a/custom_cards/custom_chip_group_counter/README.md +++ b/custom_cards/custom_chip_group_counter/README.md @@ -30,11 +30,12 @@ This cards show a chip with custom text representing how many entities in a grou ## Variables | Variable | Default | Required | Notes | -| ------------------------------------------- | ------------------------ | -------- | -------------------------------------------------------------------------------------------------- | --- | +| ------------------------------------------- | ------------------------ | -------- | -------------------------------------------------------------------------------------------------- | +| entity | | Yes | Hide chip if no entities are active. | | ulm_custom_chip_group_counter_hide_if_zero | false | No | Hide chip if no entities are active. | | ulm_custom_chip_group_counter_type | light | No | Specify the type of entities, used for translation | | ulm_custom_chip_group_counter_count_state | on | No | States that should be counted | -| ulm_custom_chip_group_counter_color | yellow | Yes | Color of the icon
Can choose between: `blue`, `red`, `green`, `yellow`, `pink`, `purple`
| | +| ulm_custom_chip_group_counter_color | yellow | Yes | Color of the icon
Can choose between: `blue`, `red`, `green`, `yellow`, `pink`, `purple`
| | ulm_custom_chip_group_counter_icon_zero | mdi:lightbulb-outline | No | Icon when no entity's state is satisfied | | ulm_custom_chip_group_counter_icon_one | mdi:lightbulb-on-outline | No | Icon when one entity's state is satisfied | | ulm_custom_chip_group_counter_icon_multiple | mdi:lightbulb-on-outline | No | Icon when multiple entities state is satisfied | @@ -58,7 +59,7 @@ This configuration can be used if you have a sensor that should represent the st ```yaml - type: 'custom:button-card' template: 'custom_card_group_counter_chip' - entity: 'lights.all' + entity: 'light.all' variables: ulm_custom_chip_group_counter_entities_active: 'sensor.lights_on' ``` @@ -68,7 +69,7 @@ This configuration can be used if you have a sensor that should represent the st ```yaml - type: 'custom:button-card' template: 'custom_card_group_counter_chip' - entity: 'lights.all' + entity: 'light.all' variables: ulm_custom_card_group_counter_chip_hide_if_zero: true ulm_custom_card_group_counter_chip_type: speaker From 21ddd3806a042a9ebd642ba4cba53eaad8f8e51a Mon Sep 17 00:00:00 2001 From: Albin Medoc Date: Wed, 8 Mar 2023 09:38:20 +0100 Subject: [PATCH 3/3] Add example images --- .../img/custom_card_group_counter_chip_dark.png | Bin 0 -> 14763 bytes .../custom_card_group_counter_chip_light.png | Bin 0 -> 17527 bytes 2 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 docs/assets/img/custom_card_group_counter_chip_dark.png create mode 100644 docs/assets/img/custom_card_group_counter_chip_light.png diff --git a/docs/assets/img/custom_card_group_counter_chip_dark.png b/docs/assets/img/custom_card_group_counter_chip_dark.png new file mode 100644 index 0000000000000000000000000000000000000000..e652c0561f39402e9f503062f3b5ecd1b1e592b0 GIT binary patch literal 14763 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≧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 O0000