${Vt("editor.action_images.description",t,"Configure images that will be displayed when specific entity states are met.")}
${this._t("editor.action_images.priority.description","Priority Based uses the first match from top to bottom. Newest Matching uses the last match found in the list.")}
${this._t("editor.bars.percentage.display_description","Control the visibility and appearance of percentage values shown directly on the bar. These numbers provide a clear visual indicator of the current level.")}
${e.show_percentage?J`${this._t("editor.bars.left_side.section_description","Configure the title and entity value displayed on the left side of the bar. This is useful for showing labels like 'Range' or 'Battery' along with their values.")}
${!1!==e.show_left?J`${this._t("editor.bars.right_side.section_description","Configure the title and entity value displayed on the right side of the bar. This is ideal for complementary information like 'Time to Full' or secondary measurements.")}
${!1!==e.show_right?J`${this._t("editor.bars.gradient.description")}
${(()=>{var i;const n=Object.assign({use_gradient:null!==(i=e.use_gradient)&&void 0!==i&&i},e.use_gradient&&{gradient_display_mode:e.gradient_display_mode||"value_based"}),a=[{name:"use_gradient",selector:{boolean:{}},label:this._t("editor.bars.gradient.toggle"),description:this._t("editor.bars.gradient.toggle_description")},...e.use_gradient?[{name:"gradient_display_mode",selector:{select:{options:[{value:"full",label:this._t("editor.bars.gradient.display_mode_full")},{value:"value_based",label:this._t("editor.bars.gradient.display_mode_value_based")},{value:"cropped",label:this._t("editor.bars.gradient.display_mode_cropped")}],mode:"dropdown"}},label:this._t("editor.bars.gradient.display_mode"),description:this._t("editor.bars.gradient.display_mode_description")}]:[]];return J`${this._t("editor.bars.left_side.condition_description","Control when the left side is shown or hidden based on an entity state")}
${this._t("editor.bars.template.description","Use a template to format the displayed text, convert units, or display calculated values.")}
{{ states('sensor.temperature') | float * 1.8 + 32 }}°F -
${this._t("editor.bars.template.examples.temperature","Convert Celsius to Fahrenheit")}
{{ now().strftime("%b %d, %H:%M") }} -
${this._t("editor.bars.template.examples.datetime","Format current date/time")}
{{ 'Charging at ' + states('sensor.ev_power') + ' kW' }} -
${this._t("editor.bars.template.examples.power","Combine text and sensor value")}
${this._t("editor.bars.right_side.condition_description","Control when the right side is shown or hidden based on an entity state")}
${this._t("editor.bars.template.description","Use a template to format the displayed text, convert units, or display calculated values.")}
{{ states('sensor.temperature') | float * 1.8 + 32 }}°F - Convert
Celsius to Fahrenheit
{{ now().strftime("%b %d, %H:%M") }} - Format current date/time
{{ 'Charging at ' + states('sensor.ev_power') + ' kW' }} -
Combine text and sensor value
${this._t("editor.icons.click_actions.descriptions.toggle")}
`;case"more-info":return J`${this._t("editor.icons.click_actions.descriptions.more-info")}
`;case"navigate":return J`${this._t("editor.icons.click_actions.descriptions.navigate")}
`;case"url":return J`${this._t("editor.icons.click_actions.descriptions.url")}
`;case"call-service":return J`${this._t("editor.icons.click_actions.descriptions.call-service")}
`;case"perform-action":return J`${this._t("editor.icons.click_actions.descriptions.perform-action")}
`;case"location-map":return J`${this._t("editor.icons.click_actions.descriptions.location-map")}
`;case"assist":return J`${this._t("editor.icons.click_actions.descriptions.assist")}
`;case"none":return J`${this._t("editor.icons.click_actions.descriptions.none")}
`;case"trigger":return J`${this._t("editor.icons.click_actions.descriptions.trigger")}
`;default:return""}}_renderIconAppearanceTab(e,t,i){return J`${this._t("editor.icons.animations.active_description","Select an animation to apply when this icon is in the active state.")}
${this._t("editor.icons.template_mode_active_description","Use a template to determine when this icon should be active. Templates allow you to use Home Assistant templating syntax for complex conditions.")}
${this._t("editor.icons.animations.inactive_description","Select an animation to apply when this icon is in the inactive state.")}
${this._t("editor.icons.template_mode_inactive_description","Use a template to determine when this icon should be inactive. Templates allow you to use Home Assistant templating syntax for complex conditions.")}
0?r.section_styles=o:r.section_styles=void 0,this._fireConfigChanged(Object.assign(Object.assign({},this.config),r))}_updateSectionCondition(e){var t,i,n,a,o;if("input"===e.type&&"state"===(null===(i=null===(t=e.target)||void 0===t?void 0:t.dataset)||void 0===i?void 0:i.field))return;const r=e.target;let s=r.dataset.sectionId;const l=r.dataset.field;if(!s||!l)return;const d=s;let c;c="entity"===l||"type"===l?null!==(o=null!==(a=null===(n=e.detail)||void 0===n?void 0:n.value)&&void 0!==a?a:r.value)&&void 0!==o?o:"":r.value;const p=JSON.parse(JSON.stringify(this.config.section_conditions||{}));p[d]||(p[d]={type:"none",entity:"",state:""}),p[d][l]=c,"type"===l&&"none"===c&&(p[d].entity="",p[d].state=""),"none"!==p[d].type||p[d].entity||p[d].state||delete p[d];const g={};Object.keys(p).length>0?g.section_conditions=p:g.section_conditions=void 0,this._fireConfigChanged(Object.assign(Object.assign({},this.config),g)),this.requestUpdate()}_updateSectionBreakConfig(e,t){var i;const n=e.target,a=n.dataset.sectionId;if(!a||!a.startsWith("break_")||!t)return;const o=a;let r;if("break_style"===t)r=n.value;else if("break_thickness"===t)r=parseInt(n.value||"1");else if("break_width_percent"===t)r=parseInt(n.value||"100");else if("break_color"===t){let n=null===(i=e.detail)||void 0===i?void 0:i.value;"object"==typeof n&&null!==n&&void 0!==n[t]&&null!==n[t]&&(n=n[t]),r="string"==typeof n?n:void 0}if(null==r)return;const s=[...this.config.section_breaks||[]],l=s.findIndex((e=>e.id===o));if(-1===l)return;const d=Object.assign({},s[l]);"break_color"===t&&r===gi?delete d.break_color:d[t]=r,s[l]=d,this._fireConfigChanged(Object.assign(Object.assign({},this.config),{section_breaks:s}))}_resetSectionBreakColor(e){if(!e||!e.startsWith("break_"))return;const t=e,i=[...this.config.section_breaks||[]],n=i.findIndex((e=>e.id===t));if(-1===n)return;const a=Object.assign({},i[n]);delete a.break_color,i[n]=a,this._fireConfigChanged(Object.assign(Object.assign({},this.config),{section_breaks:i})),this.requestUpdate()}_handleAddSectionBreak(){const e={id:`break_${Date.now().toString(36)+Math.random().toString(36).substring(2)}`,break_style:"blank",break_thickness:4,break_width_percent:100,break_color:"var(--divider-color)"},t=[...this.config.section_breaks||[],e],i=[...this.config.sections_order||[],e.id],n=Object.assign({},this.config.section_styles||{});n[e.id]={marginTop:16,marginBottom:16},this._fireConfigChanged(Object.assign(Object.assign({},this.config),{section_breaks:t,sections_order:i,section_styles:n}))}_handleDeleteSectionBreak(e){if(!e||!e.startsWith("break_"))return;const t=e,i=(this.config.section_breaks||[]).filter((e=>e.id!==t)),n=(this.config.sections_order||[]).filter((e=>e!==t)),a=Object.assign({},this.config.sections_columns||{});delete a[t];const o=Object.assign({},this.config.section_styles||{});delete o[t];const r=Object.assign({},this.config.section_conditions||{});delete r[t],this._fireConfigChanged(Object.assign(Object.assign({},this.config),{section_breaks:i.length>0?i:void 0,sections_order:n,sections_columns:Object.keys(a).length>0?a:void 0,section_styles:Object.keys(o).length>0?o:void 0,section_conditions:Object.keys(r).length>0?r:void 0})),this._expandedSectionId===e&&(this._expandedSectionId=null)}render(){return this.hass&&this.config?this._renderCustomizeTab():Y}updated(e){var t;if(super.updated(e),e.has("config")&&this.config&&this.config.sections_order&&(null===(t=this.config.info_rows)||void 0===t?void 0:t.length)>0){const e=this._cleanupSectionsOrder([...this.config.sections_order]);e.length!==this.config.sections_order.length&&setTimeout((()=>{this._fireConfigChanged(Object.assign(Object.assign({},this.config),{sections_order:e}))}),0)}}_renderCustomizeTab(){const e=[{name:"layout_type",selector:{select:{options:li.map((e=>({value:e.value,label:this._t(e.key)}))),mode:"dropdown"}},label:this._t("editor.customize.layout.title"),description:this._t("editor.customize.layout.description")}];"double"===this.config.layout_type&&e.push({name:"column_width",selector:{select:{options:di.map((e=>({value:e.value,label:this._t(e.key)}))),mode:"dropdown"}},label:this._t("editor.customize.column_width.title"),description:this._t("editor.customize.column_width.description")});const t=[];"dashboard"===this.config.layout_type&&t.push({name:"top_view_side_margin",selector:{number:{min:0,max:100,step:1,unit_of_measurement:"px"}},label:this._t("editor.customize.top_view.side_margin"),description:this._t("editor.customize.top_view.side_margin_help"),default:0},{name:"top_view_middle_spacing",selector:{number:{min:0,max:100,step:1,unit_of_measurement:"px"}},label:this._t("editor.customize.top_view.middle_spacing"),description:this._t("editor.customize.top_view.middle_spacing_help"),default:16},{name:"top_view_vertical_spacing",selector:{number:{min:0,max:100,step:1,unit_of_measurement:"px"}},label:this._t("editor.customize.top_view.vertical_spacing"),description:this._t("editor.customize.top_view.vertical_spacing_help"),default:16});let i=this._t("editor.customize.sections.arrangement_desc_base");return"double"===this.config.layout_type?i+=" "+this._t("editor.customize.sections.arrangement_desc_double_extra"):"dashboard"===this.config.layout_type?i+=" "+this._t("editor.customize.sections.arrangement_desc_dashboard_extra"):i+=" "+this._t("editor.customize.sections.arrangement_desc_single_extra"),J`
${this._t("editor.customize.top_view.description")}
${i}
${this._getSectionTemplate(e).template_mode?this._t("editor.customize.conditions.template_mode_description","Condition controls are disabled when Template Mode is active. Template Mode takes precedence over basic conditions."):this._t("editor.customize.conditions.description")}
${this._t("editor.customize.template.description","Use a template to control when this section is shown or hidden based on complex logic, calculations, or multiple entity states.")}
{{ states('binary_sensor.charging') == 'on' }} - Show
when charging
{{ states('sensor.battery_level') | int < 20 }} -
Show when battery low
{{ states('device_tracker.car') == 'home' and
states('sensor.battery_level') | int > 80 }}
- Multiple conditions
{{ now().hour >= 6 and now().hour <= 22 }} - Show
during day hours
${this._t("editor.customize.css.description")}
${this._t("editor.about.support_description","Your generous tips fuel the development of amazing features for this card! Without support from users like you, continued innovation wouldn't be possible.")}
${this._t("editor.about.donate_button","LEAVE A TIP (PAYPAL)")}