iobroker.lovelace
Version:
With this adapter you can build visualization for ioBroker with Home Assistant Lovelace UI
1 lines • 1.34 kB
JavaScript
export const __rspack_esm_id=8717;export const __rspack_esm_ids=[8717];export const __webpack_modules__={44124(e,t,i){i.r(t),i.d(t,{CommonControlsSectionStrategy:()=>l});i(74423),i(44114),i(18111),i(22489),i(61701);var n=i(62826),s=i(5124),o=i(22441),a=i(36312);const c=e=>({type:"tile",entity:e,state_content:["state","area_name"],show_entity_picture:!0});class l extends s.mN{static async generate(e,t){const i={type:"grid",cards:[]};e.heading?i.cards?.push(e.heading):e.title&&i.cards?.push({type:"heading",heading:e.title,icon:e.icon,visibility:e.title_visibilty});const n=e.limit??8,s=(e.include_entities||[]).filter(e=>e in t.states);if(s.length>=n)return i.cards.push(...s.slice(0,n).map(c)),i;if(!(0,a.x)(t.config,"usage_prediction"))return i.cards.push({type:"markdown",content:t.localize("ui.panel.lovelace.strategy.common_controls.not_loaded")}),i.disabled=e.hide_empty,i;const o=await(e=>e.callWS({type:"usage_prediction/common_control"}))(t),l=o.entities.filter(i=>i in t.states&&(!t.entities[i]?.hidden&&(!e.exclude_entities?.includes(i)&&!s.includes(i)))),r=[...s,...l].slice(0,n);return 0===r.length?(i.cards.push({type:"markdown",content:t.localize("ui.panel.lovelace.strategy.common_controls.no_data")}),i.disabled=e.hide_empty,i):(i.cards.push(...r.map(c)),i)}}l=(0,n.Cg)([(0,o.EM)("common-controls-section-strategy")],l)}};