diff --git a/custom_cards/custom_card_imswel_person/README.md b/custom_cards/custom_card_imswel_person/README.md index 1e3d246bb..2562fa6ae 100644 --- a/custom_cards/custom_card_imswel_person/README.md +++ b/custom_cards/custom_card_imswel_person/README.md @@ -98,3 +98,9 @@ This card needs the following to function correctly: If true, shows the entity picture from your user instead of the icon. Default is false + +??? note "Template Code" + + ```yaml title="custom_card_imswel_person.yaml" + --8<-- "custom_cards/custom_card_imswel_person/custom_card_imswel_person.yaml" + ``` diff --git a/custom_components/ui_lovelace_minimalist/lovelace/themefiles/minimalist-desktop/minimalist-desktop.yaml b/custom_components/ui_lovelace_minimalist/lovelace/themefiles/minimalist-desktop/minimalist-desktop.yaml index 58ec9b7ac..0c13e8351 100644 --- a/custom_components/ui_lovelace_minimalist/lovelace/themefiles/minimalist-desktop/minimalist-desktop.yaml +++ b/custom_components/ui_lovelace_minimalist/lovelace/themefiles/minimalist-desktop/minimalist-desktop.yaml @@ -11,6 +11,9 @@ minimalist-desktop: divider-color: "rgba(var(--color-theme),.12)" accent-color: "var(--google-yellow)" ha-dialog-border-radius: "10px" + # fix added border-lines in 2022.11 + ha-card-border-width: "0px" + card-mod-theme: "minimalist-desktop" card-mod-view-yaml: | "*:first-child$": | diff --git a/custom_components/ui_lovelace_minimalist/lovelace/themefiles/minimalist-ios-tapbar/minimalist-ios-tapbar.yaml b/custom_components/ui_lovelace_minimalist/lovelace/themefiles/minimalist-ios-tapbar/minimalist-ios-tapbar.yaml index 16ae640c4..06f3f43ad 100644 --- a/custom_components/ui_lovelace_minimalist/lovelace/themefiles/minimalist-ios-tapbar/minimalist-ios-tapbar.yaml +++ b/custom_components/ui_lovelace_minimalist/lovelace/themefiles/minimalist-ios-tapbar/minimalist-ios-tapbar.yaml @@ -13,6 +13,9 @@ minimalist-ios-tapbar: divider-color: "rgba(var(--color-theme),.12)" accent-color: "var(--google-yellow)" ha-dialog-border-radius: "10px" + # fix added border-lines in 2022.11 + ha-card-border-width: "0px" + card-mod-theme: "minimalist-ios-tapbar" card-mod-root: | app-toolbar { diff --git a/custom_components/ui_lovelace_minimalist/lovelace/themefiles/minimalist-mobile-tapbar/minimalist-mobile-tapbar.yaml b/custom_components/ui_lovelace_minimalist/lovelace/themefiles/minimalist-mobile-tapbar/minimalist-mobile-tapbar.yaml index 99dabe509..35917722c 100644 --- a/custom_components/ui_lovelace_minimalist/lovelace/themefiles/minimalist-mobile-tapbar/minimalist-mobile-tapbar.yaml +++ b/custom_components/ui_lovelace_minimalist/lovelace/themefiles/minimalist-mobile-tapbar/minimalist-mobile-tapbar.yaml @@ -15,6 +15,8 @@ minimalist-mobile-tapbar: header-base-height: "70px" app-header-selection-bar-color: "transparent" ha-dialog-border-radius: "10px" + # fix added border-lines in 2022.11 + ha-card-border-width: "0px" card-mod-view-yaml: | "*:first-child$": | diff --git a/custom_components/ui_lovelace_minimalist/lovelace/themefiles/minimalist-mobile/minimalist-mobile.yaml b/custom_components/ui_lovelace_minimalist/lovelace/themefiles/minimalist-mobile/minimalist-mobile.yaml index 1ab435bb3..a27e7f745 100644 --- a/custom_components/ui_lovelace_minimalist/lovelace/themefiles/minimalist-mobile/minimalist-mobile.yaml +++ b/custom_components/ui_lovelace_minimalist/lovelace/themefiles/minimalist-mobile/minimalist-mobile.yaml @@ -11,6 +11,9 @@ minimalist-mobile: divider-color: "rgba(var(--color-theme),.12)" accent-color: "var(--google-yellow)" ha-dialog-border-radius: "10px" + # fix added border-lines in 2022.11 + ha-card-border-width: "0px" + card-mod-theme: "minimalist-mobile" card-mod-root: | app-toolbar { diff --git a/custom_components/ui_lovelace_minimalist/lovelace/translations/cn.yaml b/custom_components/ui_lovelace_minimalist/lovelace/translations/cn.yaml index 9b3781eb9..713207618 100644 --- a/custom_components/ui_lovelace_minimalist/lovelace/translations/cn.yaml +++ b/custom_components/ui_lovelace_minimalist/lovelace/translations/cn.yaml @@ -11,3 +11,4 @@ ulm_language_variables: ulm_volume: "体积" ulm_popups_color: "顏色" ulm_radar: "雷达" + ulm_popup_total: "Total" diff --git a/custom_components/ui_lovelace_minimalist/lovelace/translations/cs.yaml b/custom_components/ui_lovelace_minimalist/lovelace/translations/cs.yaml index 443813fe2..044e6a0fc 100644 --- a/custom_components/ui_lovelace_minimalist/lovelace/translations/cs.yaml +++ b/custom_components/ui_lovelace_minimalist/lovelace/translations/cs.yaml @@ -11,3 +11,4 @@ ulm_language_variables: ulm_volume: "Hlasitost" ulm_popups_color: "Barva" ulm_radar: "Radar" + ulm_popup_total: "Total" diff --git a/custom_components/ui_lovelace_minimalist/lovelace/translations/da.yaml b/custom_components/ui_lovelace_minimalist/lovelace/translations/da.yaml index 1f16b71f2..89bd27ab5 100644 --- a/custom_components/ui_lovelace_minimalist/lovelace/translations/da.yaml +++ b/custom_components/ui_lovelace_minimalist/lovelace/translations/da.yaml @@ -14,3 +14,4 @@ ulm_language_variables: ulm_volume: "Volumen" ulm_popups_color: "Farve" ulm_radar: "Radar" + ulm_popup_total: "Total" diff --git a/custom_components/ui_lovelace_minimalist/lovelace/translations/de.yaml b/custom_components/ui_lovelace_minimalist/lovelace/translations/de.yaml index 84b40122a..3b34ce4fd 100644 --- a/custom_components/ui_lovelace_minimalist/lovelace/translations/de.yaml +++ b/custom_components/ui_lovelace_minimalist/lovelace/translations/de.yaml @@ -11,3 +11,4 @@ ulm_language_variables: ulm_volume: "Lautstärke" ulm_popups_color: "Farbe" ulm_radar: "Radar" + ulm_popup_total: "Gesamt" diff --git a/custom_components/ui_lovelace_minimalist/lovelace/translations/default.yaml b/custom_components/ui_lovelace_minimalist/lovelace/translations/default.yaml index f201de847..26fbf221f 100644 --- a/custom_components/ui_lovelace_minimalist/lovelace/translations/default.yaml +++ b/custom_components/ui_lovelace_minimalist/lovelace/translations/default.yaml @@ -11,6 +11,7 @@ ulm_translation_engine: ulm_translation_close_cover: "[[[ return hass.resources[hass['language']]['ui.dialogs.more_info_control.cover.close_cover']; ]]]" ulm_translation_stop_cover: "[[[ return hass.resources[hass['language']]['ui.dialogs.more_info_control.cover.stop_cover']; ]]]" ulm_translation_open_cover: "[[[ return hass.resources[hass['language']]['ui.dialogs.more_info_control.cover.open_cover']; ]]]" + ulm_translation_more_options: "[[[ return hass.resources[hass['language']]['ui.panel.lovelace.editor.edit_card.options']; ]]]" ulm_translation_hour: > [[[ var number = hass.resources[hass['language']]["ui.duration.hour"]; diff --git a/custom_components/ui_lovelace_minimalist/lovelace/translations/en.yaml b/custom_components/ui_lovelace_minimalist/lovelace/translations/en.yaml index 93d2c3bfa..8892417c9 100644 --- a/custom_components/ui_lovelace_minimalist/lovelace/translations/en.yaml +++ b/custom_components/ui_lovelace_minimalist/lovelace/translations/en.yaml @@ -14,3 +14,4 @@ ulm_language_variables: ulm_volume: "Volume" ulm_popups_color: "Color" ulm_radar: "Radar" + ulm_popup_total: "Total" diff --git a/custom_components/ui_lovelace_minimalist/lovelace/translations/es.yaml b/custom_components/ui_lovelace_minimalist/lovelace/translations/es.yaml index 84ebd9eeb..72e5d063f 100644 --- a/custom_components/ui_lovelace_minimalist/lovelace/translations/es.yaml +++ b/custom_components/ui_lovelace_minimalist/lovelace/translations/es.yaml @@ -14,3 +14,4 @@ ulm_language_variables: ulm_volume: "Volumen" ulm_popups_color: "Color" ulm_radar: "Radar" + ulm_popup_total: "Total" diff --git a/custom_components/ui_lovelace_minimalist/lovelace/translations/fi.yaml b/custom_components/ui_lovelace_minimalist/lovelace/translations/fi.yaml index d3f78a6ec..ba720925a 100644 --- a/custom_components/ui_lovelace_minimalist/lovelace/translations/fi.yaml +++ b/custom_components/ui_lovelace_minimalist/lovelace/translations/fi.yaml @@ -11,3 +11,4 @@ ulm_language_variables: ulm_volume: "Äänenvoimakkuus" ulm_popups_color: "Väri" ulm_radar: "Tutka" + ulm_popup_total: "Yhteensä" diff --git a/custom_components/ui_lovelace_minimalist/lovelace/translations/fr.yaml b/custom_components/ui_lovelace_minimalist/lovelace/translations/fr.yaml index 966732ccf..4c7597ba1 100644 --- a/custom_components/ui_lovelace_minimalist/lovelace/translations/fr.yaml +++ b/custom_components/ui_lovelace_minimalist/lovelace/translations/fr.yaml @@ -11,3 +11,4 @@ ulm_language_variables: ulm_volume: "Volume" ulm_popups_color: "Couleur" ulm_radar: "Radar" + ulm_popup_total: "Total" diff --git a/custom_components/ui_lovelace_minimalist/lovelace/translations/it.yaml b/custom_components/ui_lovelace_minimalist/lovelace/translations/it.yaml index 89b7327f1..a287730ab 100644 --- a/custom_components/ui_lovelace_minimalist/lovelace/translations/it.yaml +++ b/custom_components/ui_lovelace_minimalist/lovelace/translations/it.yaml @@ -11,3 +11,4 @@ ulm_language_variables: ulm_volume: "Volume" ulm_popups_color: "Colore" ulm_radar: "Radar" + ulm_popup_total: "Totale" diff --git a/custom_components/ui_lovelace_minimalist/lovelace/translations/nl.yaml b/custom_components/ui_lovelace_minimalist/lovelace/translations/nl.yaml index ebd499d7d..0d1694285 100644 --- a/custom_components/ui_lovelace_minimalist/lovelace/translations/nl.yaml +++ b/custom_components/ui_lovelace_minimalist/lovelace/translations/nl.yaml @@ -14,3 +14,4 @@ ulm_language_variables: ulm_volume: "Volume" ulm_popups_color: "Kleur" ulm_radar: "Radar" + ulm_popup_total: "Totaal" diff --git a/custom_components/ui_lovelace_minimalist/lovelace/translations/no.yaml b/custom_components/ui_lovelace_minimalist/lovelace/translations/no.yaml index 47e6451dc..221e31348 100644 --- a/custom_components/ui_lovelace_minimalist/lovelace/translations/no.yaml +++ b/custom_components/ui_lovelace_minimalist/lovelace/translations/no.yaml @@ -11,3 +11,4 @@ ulm_language_variables: ulm_volume: "Volume" ulm_popups_color: "Farge" ulm_radar: "Radar" + ulm_popup_total: "Totalt" diff --git a/custom_components/ui_lovelace_minimalist/lovelace/translations/pl.yaml b/custom_components/ui_lovelace_minimalist/lovelace/translations/pl.yaml index f6b960552..b099c8d01 100644 --- a/custom_components/ui_lovelace_minimalist/lovelace/translations/pl.yaml +++ b/custom_components/ui_lovelace_minimalist/lovelace/translations/pl.yaml @@ -11,3 +11,4 @@ ulm_language_variables: ulm_volume: "Objętość" ulm_popups_color: "Kolor" ulm_radar: "Radar" + ulm_popup_total: "Total" diff --git a/custom_components/ui_lovelace_minimalist/lovelace/translations/pt-BR.yaml b/custom_components/ui_lovelace_minimalist/lovelace/translations/pt-BR.yaml index fc593775b..42b8b89e7 100644 --- a/custom_components/ui_lovelace_minimalist/lovelace/translations/pt-BR.yaml +++ b/custom_components/ui_lovelace_minimalist/lovelace/translations/pt-BR.yaml @@ -11,3 +11,4 @@ ulm_language_variables: ulm_volume: "Volume" ulm_popups_color: "Cor" ulm_radar: "Radar" + ulm_popup_total: "Total" diff --git a/custom_components/ui_lovelace_minimalist/lovelace/translations/pt.yaml b/custom_components/ui_lovelace_minimalist/lovelace/translations/pt.yaml index a6bb80f45..0dce099b8 100644 --- a/custom_components/ui_lovelace_minimalist/lovelace/translations/pt.yaml +++ b/custom_components/ui_lovelace_minimalist/lovelace/translations/pt.yaml @@ -11,3 +11,4 @@ ulm_language_variables: ulm_volume: "Volume" ulm_popups_color: "Cor" ulm_radar: "Radar" + ulm_popup_total: "Total" diff --git a/custom_components/ui_lovelace_minimalist/lovelace/translations/ru.yaml b/custom_components/ui_lovelace_minimalist/lovelace/translations/ru.yaml index fae2fe72b..61f788e1d 100644 --- a/custom_components/ui_lovelace_minimalist/lovelace/translations/ru.yaml +++ b/custom_components/ui_lovelace_minimalist/lovelace/translations/ru.yaml @@ -11,3 +11,4 @@ ulm_language_variables: ulm_volume: "Объем" ulm_popups_color: "Цвет" ulm_radar: "Pадар" + ulm_popup_total: "Total" diff --git a/custom_components/ui_lovelace_minimalist/lovelace/translations/sk.yaml b/custom_components/ui_lovelace_minimalist/lovelace/translations/sk.yaml index 1ec4dcf7f..4fe5afdd0 100644 --- a/custom_components/ui_lovelace_minimalist/lovelace/translations/sk.yaml +++ b/custom_components/ui_lovelace_minimalist/lovelace/translations/sk.yaml @@ -11,3 +11,4 @@ ulm_language_variables: ulm_volume: "Volume" ulm_popups_color: "Farba" ulm_radar: "Radar" + ulm_popup_total: "Total" diff --git a/custom_components/ui_lovelace_minimalist/lovelace/translations/sv.yaml b/custom_components/ui_lovelace_minimalist/lovelace/translations/sv.yaml index 2d93e8fb4..223eb4b48 100644 --- a/custom_components/ui_lovelace_minimalist/lovelace/translations/sv.yaml +++ b/custom_components/ui_lovelace_minimalist/lovelace/translations/sv.yaml @@ -11,3 +11,4 @@ ulm_language_variables: ulm_volume: "Volym" ulm_popups_color: "Färg" ulm_radar: "Radar" + ulm_popup_total: "Total" diff --git a/custom_components/ui_lovelace_minimalist/lovelace/translations/tr.yaml b/custom_components/ui_lovelace_minimalist/lovelace/translations/tr.yaml index 25f8c73b6..0dc826481 100644 --- a/custom_components/ui_lovelace_minimalist/lovelace/translations/tr.yaml +++ b/custom_components/ui_lovelace_minimalist/lovelace/translations/tr.yaml @@ -11,3 +11,4 @@ ulm_language_variables: ulm_volume: "Cilt" ulm_popups_color: "Renk" ulm_radar: "Radar" + ulm_popup_total: "Total" diff --git a/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/card_templates/cards/card_light.yaml b/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/card_templates/cards/card_light.yaml index 3a3db1e2d..198e831cd 100644 --- a/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/card_templates/cards/card_light.yaml +++ b/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/card_templates/cards/card_light.yaml @@ -17,6 +17,7 @@ card_light: ulm_card_light_force_background_color: false ulm_card_light_enable_popup: false ulm_card_light_enable_popup_tap: false + ulm_card_light_color_palette: "" show_icon: false show_name: false show_label: false @@ -108,7 +109,8 @@ card_light: let vars = variables; if(variables.ulm_card_light_enable_popup) { vars.ulm_custom_popup = { - 'template': 'popup_light_brightness' + 'template': 'popup_light_brightness', + 'popup_variables': {'ulm_card_light_color_palette': variables.ulm_card_light_color_palette } }; } return vars; @@ -151,7 +153,8 @@ card_light: let vars = variables; if(variables.ulm_card_light_enable_popup) { vars.ulm_custom_popup = { - 'template': 'popup_light_brightness' + 'template': 'popup_light_brightness', + 'popup_variables': {'ulm_card_light_color_palette': variables.ulm_card_light_color_palette } }; } return vars; diff --git a/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/card_templates/cards/card_media_player.yaml b/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/card_templates/cards/card_media_player.yaml index 66b3a06ec..c711c8711 100644 --- a/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/card_templates/cards/card_media_player.yaml +++ b/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/card_templates/cards/card_media_player.yaml @@ -14,6 +14,7 @@ card_media_player: ulm_card_media_player_player_controls_entity: "[[[ return entity.entity_id ]]]" ulm_card_media_player_enable_popup: false ulm_card_media_player_more_info: false + ulm_card_media_player_power_button: false triggers_update: "all" show_icon: false show_name: false @@ -62,6 +63,11 @@ card_media_player: : '' ]]] custom_fields: + power: + - display: "[[[ return variables.ulm_card_media_player_power_button ? 'block' : 'none']]]" + - position: "absolute" + - top: "12px" + - right: "12px" item2: - display: | [[[ @@ -85,6 +91,32 @@ card_media_player: return "none"; ]]] custom_fields: + power: + card: + type: "custom:button-card" + entity: "[[[ return entity.entity_id ]]]" + template: "widget_icon" + icon: "mdi:power" + tap_action: + action: "toggle" + styles: + img_cell: + - width: "42px" + - heigth: "42px" + card: + - background-color: | + [[[ + return variables.ulm_card_media_player_enable_art && states[entity.entity_id].attributes.entity_picture != null + ? 'rgba(0, 0, 0, 0.2)' + : 'rgba(var(--color-theme),0.05)' + ]]] + icon: + - color: | + [[[ + return variables.ulm_card_media_player_enable_art && states[entity.entity_id].attributes.entity_picture != null + ? 'white' + : 'rgba(var(--color-theme), 0.9)' + ]]] item1: card: type: "custom:button-card" @@ -225,7 +257,7 @@ card_media_player: item2: card: type: "custom:button-card" - template: "list_3_items" + template: "list_4_items" styles: card: - padding: "0px" @@ -293,10 +325,10 @@ card_media_player: entity: "[[[ return entity.entity_id; ]]]" tap_action: action: "call-service" - service: "media_player.media_play_pause" + service: "[[[ return (entity.attributes?.media_duration > 0) ? 'media_player.media_play_pause' : entity.state =='playing' ? 'media_player.media_stop' : 'media_player.media_play']]]" service_data: entity_id: "[[[ return variables.ulm_card_media_player_player_controls_entity ]]]" - icon: "mdi:pause" + icon: "[[[ return (entity.attributes?.media_duration > 0) ? 'mdi:pause' : 'mdi:stop' ]]]" state: - value: "paused" icon: "mdi:play" @@ -304,6 +336,8 @@ card_media_player: icon: "mdi:play" - value: "standby" icon: "mdi:play" + - value: "idle" + icon: "mdi:play" styles: card: - background-color: | @@ -358,6 +392,73 @@ card_media_player: ? 'white' : 'rgba(var(--color-theme), 0.9)' ]]] + item4: + card: + type: "custom:button-card" + template: "widget_icon" + icon: "mdi:playlist-music" + entity: "[[[ return entity.entity_id; ]]]" + styles: + card: + - background-color: | + [[[ + return variables.ulm_card_media_player_enable_art && states[entity.entity_id].attributes.entity_picture != null + ? 'rgba(0, 0, 0, 0.2)' + : 'rgba(var(--color-theme),0.05)' + ]]] + icon: + - color: | + [[[ + return variables.ulm_card_media_player_enable_art && states[entity.entity_id].attributes.entity_picture != null + ? 'white' + : 'rgba(var(--color-theme), 0.9)' + ]]] + hold_action: + action: > + [[[ + return variables.ulm_card_media_player_enable_popup && entity.attributes?.source_list ? "fire-dom-event" : "more-info"; + ]]] + browser_mod: + service: "browser_mod.popup" + data: + large: true + hide_header: true + content: + type: "custom:button-card" + template: "popup_media_player_source_card" + entity: "[[[ return entity.entity_id; ]]]" + tap_action: + action: > + [[[ + return variables.ulm_card_media_player_enable_popup && entity.attributes?.source_list ? "fire-dom-event" : "more-info"; + ]]] + browser_mod: + service: "browser_mod.popup" + data: + large: true + hide_header: true + style: | + --popup-background-color: var(--primary-background-color); + --popup-border-radius: 20px; + --popup-padding-x: 24px; + --popup-padding-y: 20px; + --popup-max-width: auto + --popup-min-width: 800px; + card_mod: + style: + ha-dialog$: | + @media (max-width: 800px){ + div.mdc-dialog__container { + --mdc-dialog-min-width: 100vw; + --mdc-dialog-max-width: 100vw; + --mdc-dialog-min-height: 100%; + --ha-dialog-border-radius: 0px; + } + } + content: + type: "custom:button-card" + template: "popup_media_player_source_card" + entity: "[[[ return entity.entity_id; ]]]" item3: card: type: "custom:my-slider" diff --git a/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/card_templates/cards/card_person.yaml b/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/card_templates/cards/card_person.yaml index 983a4c882..44c240b82 100644 --- a/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/card_templates/cards/card_person.yaml +++ b/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/card_templates/cards/card_person.yaml @@ -74,7 +74,7 @@ card_person: } else { for (let st in states) { if (st.startsWith("zone.")) { - if (states[st]?.attributes?.persons.includes(variables.ulm_card_person_entity)) { + if (states[st]?.attributes?.persons?.includes(variables.ulm_card_person_entity) && !states[st]?.attributes?.passive) { var icon = states[st].attributes.icon !== null ? states[st].attributes.icon : 'mdi:help-circle'; return ''; } diff --git a/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/card_templates/cards/card_room.yaml b/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/card_templates/cards/card_room.yaml index 18ba7b7b0..0cc571673 100644 --- a/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/card_templates/cards/card_room.yaml +++ b/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/card_templates/cards/card_room.yaml @@ -21,7 +21,7 @@ card_room: label: |- [[[ if (variables.label_use_temperature) { - return (entity?.attributes?.current_temperature || entity?.attributes?.temperature || entity?.state || '-') + (entity?.attributes?.unit_of_measurement || '°C'); + return (entity?.attributes?.current_temperature || entity?.attributes?.temperature || entity?.attributes?.device_temperature || entity?.state || '-') + (entity?.attributes?.unit_of_measurement || '°C'); } else if (variables.label_use_brightness && entity?.state == "on" && entity?.attributes?.brightness != null) { let bri = Math.round(entity?.attributes?.brightness / 2.55); return (bri ? bri : "0") + "%"; diff --git a/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/card_templates/cards/card_weather_ulm.yaml b/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/card_templates/cards/card_weather_ulm.yaml new file mode 100644 index 000000000..292a2bfbc --- /dev/null +++ b/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/card_templates/cards/card_weather_ulm.yaml @@ -0,0 +1,205 @@ +--- +### Card Weather ULM ### +card_weather_ulm: + template: + - "icon_more_info_new" + - "ulm_translation_engine" + variables: + ulm_card_weather_ulm_enable_popup: false + ulm_weather_popup_surpress_first_forecast: false + show_icon: false + show_name: false + show_label: false + styles: + grid: + - grid-template-areas: "'item1' 'item2'" + - grid-template-columns: "1fr" + - grid-template-rows: "1fr 1fr" + - row-gap: "12px" + card: + - border-radius: "var(--border-radius)" + - box-shadow: "var(--box-shadow)" + - padding: "12px" + custom_fields: + item1: + card: + type: "custom:button-card" + custom_fields: + item1: + card: + type: "custom:button-card" + entity: "[[[ return entity.entity_id ]]]" + icon: | + [[[ + var state = entity.state; + var icon = { + "clear-night": "mdi:weather-night", + "cloudy": "mdi:weather-cloudy", + "exceptional": "mdi:weather-sunny-alert", + "fog": "mdi:weather-fog", + "hail": "mdi:weather-hail", + "lightning": "mdi:weather-lightning", + "lightning-rainy": "mdi:weather-lightning-rainy", + "partlycloudy": "mdi:weather-partly-cloudy", + "pouring": "mdi:weather-pouring", + "rainy": "mdi:weather-rainy", + "snowy": "mdi:weather-snowy", + "snowy-rainy": "mdi:weather-snowy-rainy", + "sunny": "mdi:weather-sunny", + "windy": "mdi:weather-windy", + "default": "mdi:crosshairs-question" + } + return (icon[state] || icon["default"]); + ]]] + variables: > + [[[ + let vars = variables; + + if(variables.ulm_card_weather_ulm_enable_popup) { + vars.ulm_custom_popup = { + 'template': 'popup_weather_forecast', + 'popup_variables': {'ulm_weather_popup_surpress_first_forecast': variables.ulm_weather_popup_surpress_first_forecast} + }; + } + return vars; + ]]] + styles: + icon: + - color: > + [[[ + var state = entity.state; + var icon = { + "clear-night": "rgba(var(--color-yellow),1)", + "cloudy": "rgba(var(--color-blue),1)", + "exceptional": "rgba(var(--color-red),1)", + "fog": "rgba(var(--color-grey),1)", + "hail": "rgba(var(--color-blue),1)", + "lightning": "rgba(var(--color-blue),1)", + "lightning-rainy": "rgba(var(--color-blue),1)", + "partlycloudy": "rgba(var(--color-yellow),1)", + "pouring": "rgba(var(--color-grey),1)", + "rainy": "rgba(var(--color-blue),1)", + "snowy": "rgba(var(--color-blue),1)", + "snowy-rainy": "rgba(var(--color-blue),1)", + "sunny": "rgba(var(--color-yellow),1)", + "windy": "rgba(var(--color-grey),1)", + "default": "rgba(var(--color-grey),1)", + } + return (icon[state] || icon["default"]); + ]]] + img_cell: + - background-color: > + [[[ + var state = entity.state; + var icon = { + "clear-night": "rgba(var(--color-yellow),0.2)", + "cloudy": "rgba(var(--color-blue),0.2)", + "exceptional": "rgba(var(--color-red),0.2)", + "fog": "rgba(var(--color-grey),0.2)", + "hail": "rgba(var(--color-blue),0.2)", + "lightning": "rgba(var(--color-blue),0.2)", + "lightning-rainy": "rgba(var(--color-blue),0.2)", + "partlycloudy": "rgba(var(--color-yellow),0.2)", + "pouring": "rgba(var(--color-grey),0.2)", + "rainy": "rgba(var(--color-blue),0.2)", + "snowy": "rgba(var(--color-blue),0.2)", + "snowy-rainy": "rgba(var(--color-blue),0.2)", + "sunny": "rgba(var(--color-yellow),0.2)", + "windy": "rgba(var(--color-grey),0.2)", + "default": "rgba(var(--color-grey),0.2)", + } + return (icon[state] || icon["default"]); + ]]] + item2: + card: + type: "custom:button-card" + entity: "[[[ return entity.entity_id ]]]" + show_state: true + styles: + grid: + - grid-template-areas: "'i n' 'i s'" + variables: > + [[[ + let vars = variables; + + if(variables.ulm_card_weather_ulm_enable_popup) { + vars.ulm_custom_popup = { + 'template': 'popup_weather_forecast', + 'popup_variables': {'ulm_weather_popup_surpress_first_forecast': variables.ulm_weather_popup_surpress_first_forecast} + }; + } + return vars; + ]]] + item2: + card: + type: "custom:button-card" + template: "list_2_items" + custom_fields: + item1: + card: + type: "custom:button-card" + entity: "[[[ return entity.entity_id ]]]" + icon: "mdi:water" + tap_action: + action: "none" + layout: "icon_state" + show_state: false + show_units: false + show_name: false + custom_fields: + item: "[[[ return entity.attributes.humidity + '%' ]]]" + styles: + grid: + - grid-template-areas: "'i item'" + - grid-template-columns: "40% 60%" + card: + - box-shadow: "none" + - padding: "0px" + - background-color: "rgba(var(--color-theme),0.05)" + - border-radius: "14px" + - place-self: "center" + - height: "42px" + icon: + - color: "rgba(var(--color-theme),0.9)" + img_cell: + - justify-content: "right" + custom_fields: + item: + - text-align: "left" + - font-size: "1rem" + size: "20px" + color: "var(--google-grey)" + item2: + card: + type: "custom:button-card" + entity: "[[[ return entity.entity_id ]]]" + icon: "mdi:thermometer" + tap_action: + action: "none" + layout: "icon_state" + show_state: false + show_units: false + show_name: false + custom_fields: + item: "[[[ return entity.attributes.temperature + entity.attributes.temperature_unit ]]]" + styles: + grid: + - grid-template-areas: "'i item'" + - grid-template-columns: "45% 55%" + card: + - box-shadow: "none" + - padding: "0px" + - background-color: "rgba(var(--color-theme),0.05)" + - border-radius: "14px" + - place-self: "center" + - height: "42px" + icon: + - color: "rgba(var(--color-theme),0.9)" + img_cell: + - justify-content: "right" + custom_fields: + item: + - text-align: "left" + - font-size: "1rem" + size: "20px" + color: "var(--google-grey)" diff --git a/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/card_templates/chips/chip_short_date_with_day.yaml b/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/card_templates/chips/chip_short_date_with_day.yaml new file mode 100644 index 000000000..cec1a6b0b --- /dev/null +++ b/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/card_templates/chips/chip_short_date_with_day.yaml @@ -0,0 +1,20 @@ +--- +chip_short_date_with_day: + template: "chips" + variables: + ulm_language: > + [[[ + return hass["language"]; + ]]] + triggers_update: "all" + label: | + [[[ + var locale = variables.ulm_language; + let dt = new Intl.DateTimeFormat(locale , { + weekday: "short", + day: "numeric", + month: "short" + }); + let formatted_date = dt.format(Date.now()) + return formatted_date + ]]] diff --git a/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/card_templates/colors/violet_no_state.yaml b/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/card_templates/colors/purple_no_state.yaml similarity index 100% rename from custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/card_templates/colors/violet_no_state.yaml rename to custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/card_templates/colors/purple_no_state.yaml diff --git a/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/card_templates/colors/violet_off.yaml b/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/card_templates/colors/purple_off.yaml similarity index 100% rename from custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/card_templates/colors/violet_off.yaml rename to custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/card_templates/colors/purple_off.yaml diff --git a/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/card_templates/colors/violet_on.yaml b/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/card_templates/colors/purple_on.yaml similarity index 100% rename from custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/card_templates/colors/violet_on.yaml rename to custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/card_templates/colors/purple_on.yaml diff --git a/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/popup_templates/popup_buttons/popup_button_light_more_options.yaml b/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/popup_templates/popup_buttons/popup_button_light_more_options.yaml new file mode 100644 index 000000000..8f799ddc5 --- /dev/null +++ b/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/popup_templates/popup_buttons/popup_button_light_more_options.yaml @@ -0,0 +1,53 @@ +--- +popup_button_light_more_options: + template: + - "popup_button" + - "ulm_translation_engine" + name: "[[[ return variables.ulm_translation_more_options; ]]]" + icon: "mdi:dots-horizontal-circle-outline" + styles: + name: + - text-transform: "uppercase" + - color: "rgba(var(--color-theme),0.5)" + img_cell: + - background: "none" + - box-shadow: "none" + - border: "1px solid rgba(var(--color-theme),0.25)" + tap_action: + action: "fire-dom-event" + browser_mod: + service: "browser_mod.popup" + data: + hide_header: true + style: | + --popup-background-color: var(--primary-background-color); + --popup-border-radius: 20px; + --popup-padding-x: 24px; + --popup-padding-y: 20px; + --popup-max-width: auto + --popup-min-width: 800px; + card_mod: + style: + ha-dialog$: | + @media (max-width: 800px){ + div.mdc-dialog__container { + --mdc-dialog-min-width: 100vw; + --mdc-dialog-max-width: 100vw; + --mdc-dialog-min-height: 100%; + --ha-dialog-border-radius: 0px; + } + } + content: + type: "custom:button-card" + template: > + [[[ + if(entity.attributes?.effect_list){ + return 'popup_light_effect' + } + if(variables?.ulm_card_light_color_palette){ + return 'popup_light_palette' + } + ]]] + entity: "[[[ return entity.entity_id; ]]]" + variables: + ulm_card_light_color_palette: "[[[ return variables?.ulm_card_light_color_palette ]]]" diff --git a/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/popup_templates/popup_buttons/popup_button_source.yaml b/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/popup_templates/popup_buttons/popup_button_source.yaml index 000e25489..9e842ac58 100644 --- a/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/popup_templates/popup_buttons/popup_button_source.yaml +++ b/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/popup_templates/popup_buttons/popup_button_source.yaml @@ -13,3 +13,34 @@ popup_button_source: - background: "none" - box-shadow: "none" - border: "1px solid rgba(var(--color-theme),0.25)" + tap_action: + action: > + [[[ + return entity.attributes?.source_list ? "fire-dom-event" : "more-info"; + ]]] + browser_mod: + service: "browser_mod.popup" + data: + hide_header: true + style: | + --popup-background-color: var(--primary-background-color); + --popup-border-radius: 20px; + --popup-padding-x: 24px; + --popup-padding-y: 20px; + --popup-max-width: auto + --popup-min-width: 800px; + card_mod: + style: + ha-dialog$: | + @media (max-width: 800px){ + div.mdc-dialog__container { + --mdc-dialog-min-width: 100vw; + --mdc-dialog-max-width: 100vw; + --mdc-dialog-min-height: 100%; + --ha-dialog-border-radius: 0px; + } + } + content: + type: "custom:button-card" + template: "popup_media_player_source" + entity: "[[[ return entity.entity_id ]]]" diff --git a/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/popup_templates/popup_layouts/popup_light_effect_row.yaml b/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/popup_templates/popup_layouts/popup_light_effect_row.yaml new file mode 100644 index 000000000..0df7de110 --- /dev/null +++ b/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/popup_templates/popup_layouts/popup_light_effect_row.yaml @@ -0,0 +1,23 @@ +--- +popup_light_effect_row: + template: "popup_row_layout" + name: > + [[[ + var name = entity.attributes.effect_list[variables.ulm_popup_light_effect_entity_idx]; + return name; + ]]] + state: + - operator: "template" + value: "[[[ return entity.attributes.effect == entity.attributes.effect_list[variables.ulm_popup_light_effect_entity_idx]; ]]]" + styles: + card: + - background-color: "rgba(var(--color-blue),0.1)" + - border: "none" + name: + - color: "rgba(var(--color-blue),1)" + tap_action: + action: "call-service" + service: "light.turn_on" + service_data: + entity_id: "[[[ return entity.entity_id; ]]]" + effect: "[[[ return entity.attributes.effect_list[variables.ulm_popup_light_effect_entity_idx]; ]]]" diff --git a/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/popup_templates/popup_layouts/popup_light_palette_row.yaml b/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/popup_templates/popup_layouts/popup_light_palette_row.yaml new file mode 100644 index 000000000..ca4f4cbde --- /dev/null +++ b/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/popup_templates/popup_layouts/popup_light_palette_row.yaml @@ -0,0 +1,23 @@ +--- +popup_light_palette_row: + template: "popup_row_layout" + name: > + [[[ + var name = entity.attributes.options[variables.ulm_popup_light_palette_entity_idx]; + return name; + ]]] + state: + - operator: "template" + value: "[[[ return entity.state == entity.attributes.options[variables.ulm_popup_light_palette_entity_idx]; ]]]" + styles: + card: + - background-color: "rgba(var(--color-blue),0.1)" + - border: "none" + name: + - color: "rgba(var(--color-blue),1)" + tap_action: + action: "call-service" + service: "select.select_option" + service_data: + entity_id: "[[[ return entity.entity_id; ]]]" + option: "[[[ return entity.attributes.options[variables.ulm_popup_light_palette_entity_idx]; ]]]" diff --git a/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/popup_templates/popup_layouts/popup_media_player_row.yaml b/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/popup_templates/popup_layouts/popup_media_player_row.yaml new file mode 100644 index 000000000..3b1f4f478 --- /dev/null +++ b/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/popup_templates/popup_layouts/popup_media_player_row.yaml @@ -0,0 +1,23 @@ +--- +popup_media_player_row: + template: "popup_row_layout" + name: > + [[[ + var name = entity.attributes.source_list[variables.ulm_popup_media_entity_idx]; + return name; + ]]] + state: + - operator: "template" + value: "[[[ return entity.attributes.source == entity.attributes.source_list[variables.ulm_popup_media_entity_idx]; ]]]" + styles: + card: + - background-color: "rgba(var(--color-blue),0.1)" + - border: "none" + name: + - color: "rgba(var(--color-blue),1)" + tap_action: + action: "call-service" + service: "media_player.select_source" + service_data: + entity_id: "[[[ return entity.entity_id; ]]]" + source: "[[[ return entity.attributes.source_list[variables.ulm_popup_media_entity_idx]; ]]]" diff --git a/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/popup_templates/popup_layouts/popup_row_layout.yaml b/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/popup_templates/popup_layouts/popup_row_layout.yaml new file mode 100644 index 000000000..d111d3a94 --- /dev/null +++ b/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/popup_templates/popup_layouts/popup_row_layout.yaml @@ -0,0 +1,25 @@ +--- +popup_row_layout: + show_icon: false + show_name: true + show_label: false + extra_styles: | + ha-card:hover { + background-color: var(--primary-background-color); + } + styles: + grid: + - grid-template-areas: "n" + card: + - padding: "2px 12px" + - height: "42px" + - background: "none" + - border: "1px rgba(var(--color-theme),0.2) solid" + - width: "40vh" + name: + - align-self: "center" + - justify-self: "center" + - font-weight: "bold" + - font-size: "14px" + - text-transform: "capitalize" + - color: "rgba(var(--color-theme),0.5)" diff --git a/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/popup_templates/popups/popup_light_brightness.yaml b/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/popup_templates/popups/popup_light_brightness.yaml index b3c1f9786..7406edc52 100644 --- a/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/popup_templates/popups/popup_light_brightness.yaml +++ b/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/popup_templates/popups/popup_light_brightness.yaml @@ -79,6 +79,10 @@ popup_light_brightness: } return "none"; ]]] + content4: + - display: "none" + content5: + - display: "none" buttons: - display: "none" footer: @@ -93,7 +97,7 @@ popup_light_brightness: } #buttons { display: block !important; - align-self: start !important; + align-self: center !important; } #content2 { display: none !important; @@ -101,6 +105,11 @@ popup_light_brightness: #content3 { display: none !important; } + #content4 { + display: none !important; + } + #content5 { + display: none !important; } custom_fields: header: @@ -365,7 +374,21 @@ popup_light_brightness: footer: card: type: "custom:button-card" - template: "popup_list_items" + template: > + [[[ + if(entity.attributes?.effect_list || variables?.ulm_card_light_color_palette){ + return 'list_3_items'; + } + return 'popup_list_items' + ]]] + styles: + grid: + - align-items: "initial" + card: + - background: "none" + custom_fields: + item3: + - display: "[[[return (entity.attributes?.effect_list || variables?.ulm_card_light_color_palette) ? 'block' : 'none' ]]]" custom_fields: item1: card: @@ -376,6 +399,13 @@ popup_light_brightness: type: "custom:button-card" template: "popup_button_power" entity: "[[[ return entity.entity_id ]]]" + item3: + card: + type: "custom:button-card" + entity: "[[[ return entity.entity_id ]]]" + template: "popup_button_light_more_options" + variables: + ulm_card_light_color_palette: "[[[ return variables?.ulm_card_light_color_palette ]]]" content3: card: type: "custom:light-entity-card" @@ -396,3 +426,68 @@ popup_light_brightness: box-shadow: none !important; padding: 10px 0 10px 0 !important; } + content4: + card: + type: "vertical-stack" + cards: > + [[[ + let rows = []; + function generate_effect_items(index) { + var row = { + 'type': 'custom:button-card', + 'template': 'popup_light_effect_row', + 'entity': entity.entity_id, + 'variables': { + 'ulm_popup_light_effect_entity_idx': index + } + }; + return row; + } + + let effect_list = entity.attributes?.effect_list; + + let length_list = effect_list?.length + let index = 0; + for (let effect in effect_list){ + rows.push(generate_effect_items(index)); + index++ + + if(index >= length_list){ + break; + } + } + return rows; + ]]] + content5: + card: + type: "vertical-stack" + cards: > + [[[ + let rows = []; + + function generate_option_items(index) { + var row = { + 'type': 'custom:button-card', + 'template': 'popup_light_palette_row', + 'entity': variables?.ulm_card_light_color_palette, + 'variables': { + 'ulm_popup_light_palette_entity_idx': index + } + }; + return row; + } + + let option_list = states[variables?.ulm_card_light_color_palette]?.attributes?.options; + + let length_list = option_list?.length + let index = 0; + for (let option in option_list){ + rows.push(generate_option_items(index)); + index++ + + if(index >= length_list){ + break; + } + } + return rows; + ]]] diff --git a/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/popup_templates/popups/popup_light_effect.yaml b/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/popup_templates/popups/popup_light_effect.yaml new file mode 100644 index 000000000..5030f469d --- /dev/null +++ b/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/popup_templates/popups/popup_light_effect.yaml @@ -0,0 +1,250 @@ +--- +popup_light_effect: + template: + - "popup_light_brightness" + - "ulm_language_variables" + styles: + grid: + - grid-template-areas: > + [[[ + if(entity.attributes?.effect_list && variables?.ulm_card_light_color_palette){ + return "'header header' 'title_effect title_palette' 'content4 content5' 'footer footer'" + } + if(entity.attributes?.effect_list){ + return "'header' 'content4' 'footer'" + } + return "'header' 'content5' 'footer'" + ]]] + - grid-template-columns: > + [[[ + if(entity.attributes?.effect_list && variables?.ulm_card_light_color_palette){ + return '1fr 1fr' + } + return '1fr' + ]]] + - grid-template-rows: > + [[[ + if(entity.attributes?.effect_list && variables?.ulm_card_light_color_palette){ + return "16vh min-content calc(56vh - 54px) 14vh" + } + return "16vh 56vh 14vh" + ]]] + - column-gap: "30px" + custom_fields: + content1: + - display: "none" + content2: + - display: "none" + content3: + - display: "none" + content4: + - display: > + [[[ + if(entity.attributes?.effect_list){ + return 'grid' + } + return 'none' + ]]] + - overflow-x: "hidden" + - justify-self: "center" + - align-self: "start" + - height: "[[[ return (entity.attributes?.effect_list && variables?.ulm_card_light_color_palette)? 'calc(56vh - 54px)' : '56vh' ]]]" + - padding-bottom: "12px" + - max-width: "42vh" + content5: + - display: > + [[[ + if(variables?.ulm_card_light_color_palette){ + return 'grid' + } + return 'none' + ]]] + - overflow-x: "hidden" + - justify-self: "center" + - align-self: "start" + - height: "[[[ return (entity.attributes?.effect_list && variables?.ulm_card_light_color_palette)? 'calc(56vh - 54px)' : '56vh' ]]]" + - padding-bottom: "12px" + - max-width: "42vh" + title_effect: + - display: > + [[[ + if(entity.attributes?.effect_list && variables?.ulm_card_light_color_palette){ + return 'block' + } + return 'none' + ]]] + title_palette: + - display: > + [[[ + if(entity.attributes?.effect_list && variables?.ulm_card_light_color_palette){ + return 'block' + } + return 'none' + ]]] + extra_styles: | + @media (max-width: 800px) { + #container { + grid-template-areas: "header" "content4" "buttons" "footer" !important; + grid-template-rows: 16vh 52vh 14vh 14vh !important; + grid-template-columns: 1fr !important; + } + #buttons { + display: block !important; + align-self: center !important; + } + #content1 { + display: none; + } + #content2 { + display: none; + } + #content3 { + display: none; + } + #content4 { + height: 52vh !important; + } + #content5 { + display: none !important; + } + #title_effect { + display: none !important; + } + #title_palette { + display: none !important; + } + custom_fields: + footer: + card: + type: "custom:button-card" + template: "popup_list_items" + styles: + custom_fields: + item3: + - display: "none" + buttons: + card: + type: "custom:button-card" + template: "list_3_items" + variables: + ulm_card_light_color_palette: "[[[ return variables?.ulm_card_light_color_palette ]]]" + styles: + card: + - margin-left: "6px" + custom_fields: + item3: + - display: "none" + grid: + - align-items: "initial" + - grid-template-areas: > + [[[ + var areas = []; + if (entity.attributes.effect_list){ + areas.push("item1"); + } + if (variables?.ulm_card_light_color_palette) { + areas.push("item2"); + } + return "\"" + areas.join(" ") + "\""; + ]]] + - grid-template-columns: > + [[[ + var columns = []; + if (entity.attributes.effect_list) { + columns.push("1fr"); + } + if (variables?.ulm_card_light_color_palette) { + columns.push("1fr"); + } + return columns.join(" "); + ]]] + custom_fields: + item1: + card: + type: "custom:button-card" + template: + - "popup_button" + - "popup_button_selected" + icon: "mdi:auto-fix" + name: "[[[ return hass.resources[hass['language']]['ui.card.light.effect']; ]]]" + item2: + card: + icon: "mdi:palette" + type: "custom:button-card" + template: + - "popup_button" + - "popup_button_color" + styles: + card: + - display: > + [[[; + if (variables?.ulm_card_light_color_palette) { + return "block"; + } + return "none"; + ]]] + tap_action: + action: "fire-dom-event" + browser_mod: + service: "browser_mod.popup" + data: + hide_header: true + style: | + --popup-background-color: var(--primary-background-color); + --popup-border-radius: 20px; + --popup-padding-x: 24px; + --popup-padding-y: 20px; + --popup-max-width: auto + --popup-min-width: 800px; + card_mod: + style: + ha-dialog$: | + @media (max-width: 800px){ + div.mdc-dialog__container { + --mdc-dialog-min-width: 100vw; + --mdc-dialog-max-width: 100vw; + --mdc-dialog-min-height: 100%; + --ha-dialog-border-radius: 0px; + } + } + content: + type: "custom:button-card" + template: "popup_light_palette" + entity: "[[[ return entity.entity_id; ]]]" + variables: + ulm_card_light_color_palette: "[[[ return variables?.ulm_card_light_color_palette ]]]" + title_effect: + card: + type: "custom:button-card" + template: + - "icon_info" + entity: "[[[ return entity.entity_id; ]]]" + icon: "mdi:auto-fix" + name: "[[[ return hass.resources[hass['language']]['ui.card.light.effect']; ]]]" + label: "[[[ return variables.ulm_popup_total + ': ' + entity?.attributes?.effect_list?.length ]]]" + styles: + card: + - margin-bottom: "12px" + - background: "none" + img_cell: + - background: "var(--card-background-color)" + icon: + - color: "var(--primary-text-color)" + custom_fields: + title_palette: + card: + type: "custom:button-card" + template: + - "icon_info" + icon: "mdi:palette" + name: "[[[ return variables.ulm_popups_color; ]]]" + label: "[[[ return variables.ulm_popup_total + ': ' + states[variables?.ulm_card_light_color_palette]?.attributes?.options?.length ]]]" + styles: + card: + - margin-bottom: "12px" + - background: "none" + img_cell: + - background: "var(--card-background-color)" + icon: + - color: "var(--primary-text-color)" + custom_fields: diff --git a/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/popup_templates/popups/popup_light_palette.yaml b/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/popup_templates/popups/popup_light_palette.yaml new file mode 100644 index 000000000..05bd034f1 --- /dev/null +++ b/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/popup_templates/popups/popup_light_palette.yaml @@ -0,0 +1,128 @@ +--- +popup_light_palette: + template: "popup_light_effect" + extra_styles: | + @media (max-width: 800px) { + #container { + grid-template-areas: "header" "content5" "buttons" "footer" !important; + grid-template-rows: 16vh 52vh 14vh 14vh !important; + grid-template-columns: 1fr !important; + } + #buttons { + display: block !important; + align-self: center !important; + } + #content1 { + display: none; + } + #content2 { + display: none; + } + #content3 { + display: none; + } + #content4 { + display: none !important; + } + #content5 { + height: 52vh !important; + } + #title_effect { + display: none !important; + } + #title_palette { + display: none !important; + } + custom_fields: + buttons: + card: + type: "custom:button-card" + template: "list_3_items" + variables: + ulm_card_light_color_palette: "[[[ return variables?.ulm_card_light_color_palette ]]]" + styles: + custom_fields: + item3: + - display: "none" + grid: + - align-items: "initial" + - grid-template-areas: > + [[[ + var areas = []; + if (entity.attributes.effect_list){ + areas.push("item1"); + } + if (variables?.ulm_card_light_color_palette) { + areas.push("item2"); + } + return "\"" + areas.join(" ") + "\""; + ]]] + - grid-template-columns: > + [[[ + var columns = []; + if (entity.attributes.effect_list) { + columns.push("1fr"); + } + if (variables?.ulm_card_light_color_palette) { + columns.push("1fr"); + } + return columns.join(" "); + ]]] + custom_fields: + item1: + card: + type: "custom:button-card" + template: + - "popup_button" + icon: "mdi:auto-fix" + name: "[[[ return hass.resources[hass['language']]['ui.card.light.effect']; ]]]" + styles: + card: + - display: > + [[[; + if (entity.attributes?.effect_list) { + return "block"; + } + return "none"; + ]]] + tap_action: + action: "fire-dom-event" + browser_mod: + service: "browser_mod.popup" + data: + hide_header: true + style: | + --popup-background-color: var(--primary-background-color); + --popup-border-radius: 20px; + --popup-padding-x: 24px; + --popup-padding-y: 20px; + --popup-max-width: auto + --popup-min-width: 800px; + card_mod: + style: + ha-dialog$: | + @media (max-width: 800px){ + div.mdc-dialog__container { + --mdc-dialog-min-width: 100vw; + --mdc-dialog-max-width: 100vw; + --mdc-dialog-min-height: 100%; + --ha-dialog-border-radius: 0px; + } + } + content: + type: "custom:button-card" + template: "popup_light_effect" + entity: "[[[ return entity.entity_id; ]]]" + variables: + ulm_card_light_color_palette: "[[[ return variables?.ulm_card_light_color_palette ]]]" + item2: + card: + icon: "mdi:palette" + type: "custom:button-card" + template: + - "popup_button" + - "popup_button_color" + - "popup_button_selected" + styles: + card: + - display: "block" diff --git a/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/popup_templates/popups/popup_media_player_infos.yaml b/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/popup_templates/popups/popup_media_player_infos.yaml index c44e6147b..78288bee3 100644 --- a/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/popup_templates/popups/popup_media_player_infos.yaml +++ b/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/popup_templates/popups/popup_media_player_infos.yaml @@ -27,10 +27,12 @@ popup_media_player_infos: content2: - align-self: "center" - justify-self: "center" + content3: + - display: "none" footer: - align-self: "start" - - margin-top: "25px" - - padding-bottom: "4%" + - padding-bottom: "2%" + - padding-top: "12px" extra_styles: | @media (max-width: 800px) { #container { @@ -41,6 +43,8 @@ popup_media_player_infos: #content2 { display: none; } + #content3 { + display: none; } custom_fields: header: @@ -297,3 +301,36 @@ popup_media_player_infos: align-items: center; background: none; } + content3: + card: + type: "vertical-stack" + cards: > + [[[ + let rows = []; + + function generate_source_items(index) { + var row = { + 'type': 'custom:button-card', + 'template': 'popup_media_player_row', + 'entity': entity.entity_id, + 'variables': { + 'ulm_popup_media_entity_idx': index + } + }; + return row; + } + + let source_list = entity.attributes?.source_list; + + let length_list = source_list?.length + let index = 0; + for (let source in source_list){ + rows.push(generate_source_items(index)); + index++ + + if(index >= length_list){ + break; + } + } + return rows; + ]]] diff --git a/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/popup_templates/popups/popup_media_player_source.yaml b/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/popup_templates/popups/popup_media_player_source.yaml new file mode 100644 index 000000000..7d894be58 --- /dev/null +++ b/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/popup_templates/popups/popup_media_player_source.yaml @@ -0,0 +1,113 @@ +--- +popup_media_player_source: + template: "popup_media_player_infos" + styles: + grid: + - grid-template-areas: "'header' 'content3' 'footer'" + - grid-template-columns: "1fr" + - grid-template-rows: "16vh 56vh 14vh" + - column-gap: "0px" + custom_fields: + footer: + - align-self: "absolute" + - margin-top: "12px" + content1: + - display: "none" + content2: + - display: "none" + content3: + - display: "grid" + - overflow-x: "hidden" + - justify-self: "center" + - align-self: "start" + - height: "56vh" + - padding-bottom: "12px" + - max-width: "42vh" + extra_styles: | + @media (max-width: 800px) { + #container { + grid-template-areas: "header" "content3" "footer" !important; + grid-template-rows: 16vh 56vh 14vh !important; + grid-template-columns: 1fr !important; + } + #content1 { + display: none; + } + #content2 { + display: none; + } + custom_fields: + footer: + card: + type: "custom:button-card" + template: "popup_list_items" + custom_fields: + item1: + card: + type: "custom:button-card" + template: "popup_button_back" + tap_action: + action: "fire-dom-event" + browser_mod: + service: "browser_mod.popup" + data: + hide_header: true + style: | + --popup-background-color: var(--primary-background-color); + --popup-border-radius: 20px; + --popup-padding-x: 24px; + --popup-padding-y: 20px; + --popup-min-width: 1000px; + card_mod: + style: + ha-dialog$: | + @media (max-width: 800px){ + div.mdc-dialog__container { + --mdc-dialog-min-width: 100vw; + --mdc-dialog-max-width: 100vw; + --mdc-dialog-min-height: 100%; + --ha-dialog-border-radius: 0px; + } + } + content: + type: "custom:button-card" + template: "popup_media_player_infos" + entity: "[[[ return entity.entity_id; ]]]" + item2: + card: + type: "custom:button-card" + template: "popup_button_power" + entity: "[[[ return entity.entity_id; ]]]" + item3: + card: + type: "custom:button-card" + template: "popup_button_volume" + icon: "mdi:volume-high" + entity: "[[[ return entity.entity_id; ]]]" + tap_action: + action: "fire-dom-event" + browser_mod: + service: "browser_mod.popup" + data: + hide_header: true + style: | + --popup-background-color: var(--primary-background-color); + --popup-border-radius: 20px; + --popup-padding-x: 24px; + --popup-padding-y: 20px; + --popup-min-width: 1000px; + card_mod: + style: + ha-dialog$: | + @media (max-width: 800px){ + div.mdc-dialog__container { + --mdc-dialog-min-width: 100vw; + --mdc-dialog-max-width: 100vw; + --mdc-dialog-min-height: 100%; + --ha-dialog-border-radius: 0px; + } + } + content: + type: "custom:button-card" + template: "popup_media_player_volume" + entity: "[[[ return entity.entity_id; ]]]" diff --git a/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/popup_templates/popups/popup_media_player_source_card.yaml b/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/popup_templates/popups/popup_media_player_source_card.yaml new file mode 100644 index 000000000..6bd1d0bc2 --- /dev/null +++ b/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/popup_templates/popups/popup_media_player_source_card.yaml @@ -0,0 +1,18 @@ +--- +popup_media_player_source_card: + template: "popup_media_player_source" + custom_fields: + footer: + card: + type: "custom:button-card" + template: "popup_list_items" + custom_fields: + item1: + card: + type: "custom:button-card" + template: "popup_button_back" + tap_action: + action: "fire-dom-event" + browser_mod: + service: "browser_mod.close_popup" + data: {} diff --git a/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/popup_templates/popups/popup_media_player_volume.yaml b/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/popup_templates/popups/popup_media_player_volume.yaml index 6dbf5fa7e..8bf8a986b 100644 --- a/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/popup_templates/popups/popup_media_player_volume.yaml +++ b/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/popup_templates/popups/popup_media_player_volume.yaml @@ -4,24 +4,28 @@ popup_media_player_volume: styles: grid: - grid-template-areas: "'header' 'content2' 'footer'" - - grid-template-rows: "16vh 52vh 28vh;" + - grid-template-rows: "16vh 56vh 14vh;" - grid-template-columns: "1fr" custom_fields: content1: - display: "none" content2: - - display: "block" + - display: "grid" - align-self: "start" + - height: "56vh" extra_styles: | @media (max-width: 800px) { #container { grid-template-areas: "header" "content2" "footer" !important; - grid-template-rows: 16vh 56vh 28vh !important; + grid-template-rows: 16vh 56vh 14vh !important; grid-template-columns: 1fr !important; } #content1 { display: none; } + #content3 { + display: none; + } custom_fields: footer: card: @@ -43,8 +47,7 @@ popup_media_player_volume: --popup-border-radius: 20px; --popup-padding-x: 24px; --popup-padding-y: 20px; - --popup-max-width: auto - --popup-min-width: 800px; + --popup-min-width: 1000px; card_mod: style: ha-dialog$: | diff --git a/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/popup_templates/popups/popup_thermostat_temperature.yaml b/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/popup_templates/popups/popup_thermostat_temperature.yaml index 12acbe2d9..ac982da84 100644 --- a/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/popup_templates/popups/popup_thermostat_temperature.yaml +++ b/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/popup_templates/popups/popup_thermostat_temperature.yaml @@ -70,42 +70,42 @@ popup_thermostat_temperature: - grid-template-areas: > [[[ var areas = []; - if (variables?.ulm_card_thermostat_preset_mode){ - if (entity.attributes.preset_modes.includes("none")) { + if (variables.ulm_card_thermostat_preset_mode){ + if (entity.attributes.preset_modes.toLowerCase().includes("none")) { areas.push("none"); } - if (entity.attributes.preset_modes.includes("away")) { + if (entity.attributes.preset_modes.toLowerCase().includes("away")) { areas.push("away"); } - if (entity.attributes.preset_modes.includes("comfort")) { + if (entity.attributes.preset_modes.toLowerCase().includes("comfort")) { areas.push("comfort"); } - if (entity.attributes.preset_modes.includes("home")) { + if (entity.attributes.preset_modes.toLowerCase().includes("home")) { areas.push("home"); } - if (entity.attributes.preset_modes.includes("sleep")) { + if (entity.attributes.preset_modes.toLowerCase().includes("sleep")) { areas.push("sleep"); } - if (entity.attributes.preset_modes.includes("activity")) { + if (entity.attributes.preset_modes.toLowerCase().includes("activity")) { areas.push("activity"); } } else { - if (entity.attributes.hvac_modes.includes("auto")) { + if (entity.attributes.hvac_modes.toLowerCase().includes("auto")) { areas.push("auto"); } - if (entity.attributes.hvac_modes.includes("heat")) { + if (entity.attributes.hvac_modes.toLowerCase().includes("heat")) { areas.push("heat"); } - if (entity.attributes.hvac_modes.includes("cool")) { + if (entity.attributes.hvac_modes.toLowerCase().includes("cool")) { areas.push("cool"); } - if (entity.attributes.hvac_modes.includes("dry")) { + if (entity.attributes.hvac_modes.toLowerCase().includes("dry")) { areas.push("dry"); } - if (entity.attributes.hvac_modes.includes("fan_only")) { + if (entity.attributes.hvac_modes.toLowerCase().includes("fan_only")) { areas.push("fan_only"); } - if (entity.attributes.hvac_modes.includes("heat_cool")) { + if (entity.attributes.hvac_modes.toLowerCase().includes("heat_cool")) { areas.push("heat_cool"); } } @@ -114,42 +114,42 @@ popup_thermostat_temperature: - grid-template-columns: > [[[ var columns = []; - if (variables?.ulm_card_thermostat_preset_mode){ - if (entity.attributes.preset_modes.includes("none")) { + if (variables.ulm_card_thermostat_preset_mode){ + if (entity.attributes.preset_modes.toLowerCase().includes("none")) { columns.push("1fr"); } - if (entity.attributes.preset_modes.includes("away")) { + if (entity.attributes.preset_modes.toLowerCase().includes("away")) { columns.push("1fr"); } - if (entity.attributes.preset_modes.includes("comfort")) { + if (entity.attributes.preset_modes.toLowerCase().includes("comfort")) { columns.push("1fr"); } - if (entity.attributes.preset_modes.includes("home")) { + if (entity.attributes.preset_modes.toLowerCase().includes("home")) { columns.push("1fr"); } - if (entity.attributes.preset_modes.includes("sleep")) { + if (entity.attributes.preset_modes.toLowerCase().includes("sleep")) { columns.push("1fr"); } - if (entity.attributes.preset_modes.includes("activity")) { + if (entity.attributes.preset_modes.toLowerCase().includes("activity")) { columns.push("1fr"); } } else { - if (entity.attributes.hvac_modes.includes("auto")) { + if (entity.attributes.hvac_modes.toLowerCase().includes("auto")) { columns.push("1fr"); } - if (entity.attributes.hvac_modes.includes("heat")) { + if (entity.attributes.hvac_modes.toLowerCase().includes("heat")) { columns.push("1fr"); } - if (entity.attributes.hvac_modes.includes("cool")) { + if (entity.attributes.hvac_modes.toLowerCase().includes("cool")) { columns.push("1fr"); } - if (entity.attributes.hvac_modes.includes("dry")) { + if (entity.attributes.hvac_modes.toLowerCase().includes("dry")) { columns.push("1fr"); } - if (entity.attributes.hvac_modes.includes("fan_only")) { + if (entity.attributes.hvac_modes.toLowerCase().includes("fan_only")) { columns.push("1fr"); } - if (entity.attributes.hvac_modes.includes("heat_cool")) { + if (entity.attributes.hvac_modes.toLowerCase().includes("heat_cool")) { columns.push("1fr"); } } @@ -166,7 +166,7 @@ popup_thermostat_temperature: auto: - display: > [[[ - if (!variables?.ulm_card_thermostat_preset_mode && entity.attributes.hvac_modes.includes("auto")) { + if (!variables.ulm_card_thermostat_preset_mode && entity.attributes.hvac_modes.toLowerCase().includes("auto")) { return "block"; } else { return "none"; @@ -175,7 +175,7 @@ popup_thermostat_temperature: heat: - display: > [[[ - if (!variables?.ulm_card_thermostat_preset_mode && entity.attributes.hvac_modes.includes("heat")) { + if (!variables.ulm_card_thermostat_preset_mode && entity.attributes.hvac_modes.toLowerCase().includes("heat")) { return "block"; } else { return "none"; @@ -184,7 +184,7 @@ popup_thermostat_temperature: cool: - display: > [[[ - if (!variables?.ulm_card_thermostat_preset_mode && entity.attributes.hvac_modes.includes("cool") ) { + if (!variables.ulm_card_thermostat_preset_mode && entity.attributes.hvac_modes.toLowerCase().includes("cool") ) { return "block"; } else { return "none"; @@ -193,7 +193,7 @@ popup_thermostat_temperature: dry: - display: > [[[ - if ( !variables?.ulm_card_thermostat_preset_mode && entity.attributes.hvac_modes.includes("dry")) { + if ( !variables.ulm_card_thermostat_preset_mode && entity.attributes.hvac_modes.toLowerCase().includes("dry")) { return "block"; } else { return "none"; @@ -202,7 +202,7 @@ popup_thermostat_temperature: fan_only: - display: > [[[ - if (!variables?.ulm_card_thermostat_preset_mode && entity.attributes.hvac_modes.includes("fan_only")) { + if (!variables.ulm_card_thermostat_preset_mode && entity.attributes.hvac_modes.toLowerCase().includes("fan_only")) { return "block"; } else { return "none"; @@ -211,7 +211,7 @@ popup_thermostat_temperature: heat_cool: - display: > [[[ - if (!variables?.ulm_card_thermostat_preset_mode && entity.attributes.hvac_modes.includes("heat_cool")) { + if (!variables.ulm_card_thermostat_preset_mode && entity.attributes.hvac_modes.toLowerCase().includes("heat_cool")) { return "block"; } else { return "none"; @@ -220,7 +220,7 @@ popup_thermostat_temperature: none: - display: > [[[ - if (variables?.ulm_card_thermostat_preset_mode && entity.attributes.preset_modes.includes("none")) { + if (variables.ulm_card_thermostat_preset_mode && entity.attributes.preset_modes.toLowerCase().includes("none")) { return "block"; } else { return "none"; @@ -229,7 +229,7 @@ popup_thermostat_temperature: away: - display: > [[[ - if (variables?.ulm_card_thermostat_preset_mode && entity.attributes.preset_modes.includes("away")) { + if (variables.ulm_card_thermostat_preset_mode && entity.attributes.preset_modes.toLowerCase().includes("away")) { return "block"; } else { return "none"; @@ -238,7 +238,7 @@ popup_thermostat_temperature: comfort: - display: > [[[ - if (variables?.ulm_card_thermostat_preset_mode && entity.attributes.preset_modes.includes("comfort")) { + if (variables.ulm_card_thermostat_preset_mode && entity.attributes.preset_modes.toLowerCase().includes("comfort")) { return "block"; } else { return "none"; @@ -247,7 +247,7 @@ popup_thermostat_temperature: home: - display: > [[[ - if (variables?.ulm_card_thermostat_preset_mode && entity.attributes.preset_modes.includes("home")) { + if (variables.ulm_card_thermostat_preset_mode && entity.attributes.preset_modes.toLowerCase().includes("home")) { return "block"; } else { return "none"; @@ -256,7 +256,7 @@ popup_thermostat_temperature: sleep: - display: > [[[ - if (variables?.ulm_card_thermostat_preset_mode && entity.attributes.preset_modes.includes("sleep")) { + if (variables.ulm_card_thermostat_preset_mode && entity.attributes.preset_modes.toLowerCase().includes("sleep")) { return "block"; } else { return "none"; @@ -265,7 +265,7 @@ popup_thermostat_temperature: activity: - display: > [[[ - if (variables?.ulm_card_thermostat_preset_mode && entity.attributes.preset_modes.includes("activity")) { + if (variables.ulm_card_thermostat_preset_mode && entity.attributes.preset_modes.toLowerCase().includes("activity")) { return "block"; } else { return "none"; @@ -439,7 +439,7 @@ popup_thermostat_temperature: service: "climate.set_preset_mode" service_data: entity_id: "[[[ return entity.entity_id ]]]" - preset_mode: "none" + preset_mode: "[[[ return entity.attributes.preset_mode.includes('none') ? 'none' : 'None' ]]]" styles: card: - background-color: "transparent" @@ -449,7 +449,7 @@ popup_thermostat_temperature: - box-shadow: "none" state: - operator: "template" - value: "[[[ return entity.attributes.preset_mode == 'none' ]]]" + value: "[[[ return entity.attributes.preset_mode.toLowerCase() == 'none' ]]]" styles: card: - background-color: "var(--card-background-color)" @@ -466,7 +466,7 @@ popup_thermostat_temperature: service: "climate.set_preset_mode" service_data: entity_id: "[[[ return entity.entity_id ]]]" - preset_mode: "away" + preset_mode: "[[[ return entity.attributes.preset_mode.includes('away') ? 'away' : 'Away' ]]]" styles: card: - background-color: "transparent" @@ -476,7 +476,7 @@ popup_thermostat_temperature: - box-shadow: "none" state: - operator: "template" - value: "[[[ return entity.attributes.preset_mode == 'away' ]]]" + value: "[[[ return entity.attributes.preset_mode.toLowerCase() == 'away' ]]]" styles: card: - background-color: "var(--card-background-color)" @@ -493,7 +493,7 @@ popup_thermostat_temperature: service: "climate.set_preset_mode" service_data: entity_id: "[[[ return entity.entity_id ]]]" - preset_mode: "comfort" + preset_mode: "[[[ return entity.attributes.preset_mode.includes('comfort') ? 'comfort' : 'Comfort' ]]]" styles: card: - background-color: "transparent" @@ -503,7 +503,7 @@ popup_thermostat_temperature: - box-shadow: "none" state: - operator: "template" - value: "[[[ return entity.attributes.preset_mode == 'comfort' ]]]" + value: "[[[ return entity.attributes.preset_mode.toLowerCase() == 'comfort' ]]]" styles: card: - background-color: "var(--card-background-color)" @@ -520,7 +520,7 @@ popup_thermostat_temperature: service: "climate.set_preset_mode" service_data: entity_id: "[[[ return entity.entity_id ]]]" - preset_mode: "home" + preset_mode: "[[[ return entity.attributes.preset_mode.includes('home') ? 'home' : 'Home' ]]]" styles: card: - background-color: "transparent" @@ -530,7 +530,7 @@ popup_thermostat_temperature: - box-shadow: "none" state: - operator: "template" - value: "[[[ return entity.attributes.preset_mode == 'home' ]]]" + value: "[[[ return entity.attributes.preset_mode.toLowerCase() == 'home' ]]]" styles: card: - background-color: "var(--card-background-color)" @@ -547,7 +547,7 @@ popup_thermostat_temperature: service: "climate.set_preset_mode" service_data: entity_id: "[[[ return entity.entity_id ]]]" - preset_mode: "sleep" + preset_mode: "[[[ return entity.attributes.preset_mode.includes('sleep') ? 'sleep' : 'Sleep' ]]]" styles: card: - background-color: "transparent" @@ -557,7 +557,7 @@ popup_thermostat_temperature: - box-shadow: "none" state: - operator: "template" - value: "[[[ return entity.attributes.preset_mode == 'sleep' ]]]" + value: "[[[ return entity.attributes.preset_mode.toLowerCase() == 'sleep' ]]]" styles: card: - background-color: "var(--card-background-color)" @@ -574,7 +574,7 @@ popup_thermostat_temperature: service: "climate.set_preset_mode" service_data: entity_id: "[[[ return entity.entity_id ]]]" - preset_mode: "activity" + preset_mode: "[[[ return entity.attributes.preset_mode.includes('activity') ? 'activity' : 'Activity' ]]]" styles: card: - background-color: "transparent" @@ -584,7 +584,7 @@ popup_thermostat_temperature: - box-shadow: "none" state: - operator: "template" - value: "[[[ return entity.attributes.preset_mode == 'activity' ]]]" + value: "[[[ return entity.attributes.preset_mode.toLowerCase() == 'activity' ]]]" styles: card: - background-color: "var(--card-background-color)" diff --git a/custom_components/ui_lovelace_minimalist/translations/es.json b/custom_components/ui_lovelace_minimalist/translations/es.json index e60ffb8aa..78fef41b7 100644 --- a/custom_components/ui_lovelace_minimalist/translations/es.json +++ b/custom_components/ui_lovelace_minimalist/translations/es.json @@ -6,25 +6,25 @@ "title": "Configuración de UI Lovelace Minimalist", "description": "", "data": { - "community_cards_enabled": "Enable the ability to configure community cards with this integrations, Does require github authentication!" + "community_cards_enabled": "Activar la posibilidad de configurar las tarjetas de la comunidad con esta integración. ¡Requiere autenticación en GitHub!" } }, "device": { - "title": "Waiting for device activation" + "title": "Esperando la activación del dispositivo" }, "reauth_confirm": { - "title": "Reauthentication needed", - "description": "You need to reauthenticate with GitHub." + "title": "Se necesita reautenticación", + "description": "Tienes que volver a autentificarte en GitHub." } }, "abort": { - "single_instance_allowed": "Sólo se permite una única configuración de UI Lovelace Minimalist.", + "single_instance_allowed": "Solo se permite una única configuración de UI Lovelace Minimalist.", "not_setup": "UI Lovelace Minimalist no está configurado.", - "github": "Could not authenticate with GitHub, try again later.", - "reauth_successful": "Reauthentication was successful." + "github": "No se ha podido autentificar con GitHub, inténtalo más tarde.", + "reauth_successful": "La reautenticación se ha realizado con éxito." }, "progress": { - "wait_for_device": "1. Open {url} \n2.Paste the following key to authorize ULM: \n```\n{code}\n```\n" + "wait_for_device": "1. Abre {url} \n2.Pega la siguiente clave para autorizar a ULM: \n```\n{code}\n```\n" } }, "options": { @@ -34,27 +34,27 @@ "description": "", "data": { "language": "Idioma", - "sidepanel_enabled": "Habilitar la creación de una entrada en el panel lateral.", + "sidepanel_enabled": "Crear un nuevo panel en el panel lateral.", "sidepanel_icon": "Icono del panel lateral", "sidepanel_title": "Título del panel lateral", - "adaptive_ui_enabled": "Enable adaptive Dashboard with popup splitview", - "adaptive_ui_title": "adaptive panel title", - "adaptive_ui_icon": "adaptive panel icon", + "adaptive_ui_enabled": "Activar panel adaptable con vista dividida emergente", + "adaptive_ui_title": "título del panel adaptable", + "adaptive_ui_icon": "icono del panel adaptable", "theme": "Tema", - "include_other_cards": "Incluir los recursos de la tarjeta personalizada de la que depende.", - "community_cards_enabled": "Enable the ability to configure community cards with this integrations, Does require github authentication!", - "community_cards": "Select Community Cards you want to enable." + "include_other_cards": "Incluir recursos de tarjetas personalizadas necesarias.", + "community_cards_enabled": "Activar la posibilidad de configurar las tarjetas de la comunidad con esta integración. ¡Requiere autenticación en GitHub!", + "community_cards": "Selecciona las tarjetas de la comunidad que quieres activar." } } }, "abort": { - "single_instance_allowed": "Sólo se permite una única configuración de UI Lovelace Minimalist.", + "single_instance_allowed": "Solo se permite una única configuración de UI Lovelace Minimalist.", "not_setup": "UI Lovelace Minimalist no está configurado." }, "error": { - "github_cards": "Something went wrong when fetching cards from Github.", - "ack": "You need to acknowledge all statements.", - "gh_token": "Github Token not set. Please re-install this integration to go throught the setup procedure. (No custom configuration will be lost)" + "github_cards": "Algo ha ido mal al obtener las tarjetas de Github.", + "ack": "Debes aceptar todas las declaraciones.", + "gh_token": "El token de Github no está configurado. Por favor, vuelve a instalar esta integración para pasar por el procedimiento de configuración. (No se perderá ninguna configuración personalizada)" } } } diff --git a/docs/assets/img/ulm_cards/card_weather_ulm.png b/docs/assets/img/ulm_cards/card_weather_ulm.png new file mode 100644 index 000000000..5964e0515 Binary files /dev/null and b/docs/assets/img/ulm_cards/card_weather_ulm.png differ diff --git a/docs/usage/cards/card_media_player.md b/docs/usage/cards/card_media_player.md index 25230a8e5..452f22b57 100644 --- a/docs/usage/cards/card_media_player.md +++ b/docs/usage/cards/card_media_player.md @@ -25,12 +25,13 @@ hide: | ulm_card_media_player_name | | | Name to display for your media-player | | ulm_card_media_player_icon | | | Change the icon displayed | | ulm_card_media_player_enable_art | false | | Enable album picture on background | -| ulm_card_media_player_enable_controls | false | | Enable controls below the title | -| ulm_card_media_player_enable_volume_slider | false | | Enable volume slider below controls | +| ulm_card_media_player_enable_controls | false | | Enable controls below the title | +| ulm_card_media_player_enable_volume_slider | false | | Enable volume slider below controls | | ulm_card_media_player_collapsible | false | | Controls are collapsible when state is off | | ulm_card_media_player_player_controls_entity | entity | | Change the controlled entity | | ulm_card_media_player_enable_popup | false | | Enable pop-up | | ulm_card_media_player_more_info | false | | Displays artist and album info in the sub-label | +| ulm_card_media_player_power_button | false | | Show power button | !!! note To use `popup_media_player` you need to set the variable `ulm_card_media_player_enable_popup` to `true`. This is a different approach as the other `popup_cards` use. diff --git a/docs/usage/cards/card_weather_ulm.md b/docs/usage/cards/card_weather_ulm.md new file mode 100644 index 000000000..bc881defa --- /dev/null +++ b/docs/usage/cards/card_weather_ulm.md @@ -0,0 +1,36 @@ +--- +title: Weather Card ULM +hide: + - toc +--- + + + +## Description + +![example-image](../../assets/img/ulm_cards/card_weather_ulm.png){ width="500" } + +This is a card to show your weather without usage of custom resources. + +## Variables + +| Variable | Default | Required | Notes | +| ----------------------------------- | -------- | ---------------- | ------------------------------------- | +| entity | | :material-check: | your weather entity | +| ulm_card_weather_ulm_enable_popup | `false` | :material-close: | | + +## Usage + +```yaml +- type: "custom:button-card" + template: "card_weather_ulm" + entity: "weather.lieusaint" + variables: + ulm_card_weather_ulm_enable_popup: true +``` + +??? note "Template Code" + + ```yaml title="card_weather.yaml" + --8<-- "custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/card_templates/cards/card_weather_ulm.yaml" + ```