UNPKG

@larva.io/webcomponents

Version:

Fentrica SmartUnits WebComponents package

55 lines (51 loc) 3.42 kB
/*! * (C) Fentrica http://fentrica.com - Seee LICENSE.md */ import { r as registerInstance, h } from './index-C4h1muVj.js'; import { s as sortBy, f as forOwn } from './sortBy-CwYoYzqo.js'; import { g as groupBy } from './groupBy-_4PRCRNk.js'; import './_baseMap-kP2T3hT_.js'; import './_getAllKeys-C08dM1uK.js'; import './_isIndex-DgTx77bC.js'; import './isLength-BBM_tGdM.js'; import './isObjectLike-CIR68wtF.js'; import './global-C56buD75.js'; import './isObject-C7eoH3L1.js'; import './isArray-C_HhfJYh.js'; import './_getTag-CFse-dEC.js'; import './_hasPath-BgJxJEDp.js'; import './_setToString-CpaW37bP.js'; import './_defineProperty-CWEcucM9.js'; import './_baseAssignValue-DAaC80vH.js'; const areaCss = "slot-fb[hidden],slot[hidden]{display:initial !important}.details{padding:3rem 0 0 0}.details lar-button-group{-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}.actions{min-height:60px}lar-list-item{background-color:var(--lar-background-color-step-100, rgb(25.5, 25.5, 25.5)) !important;color:var(--lar-text-color, #fff) !important}.spacer{margin-top:1.5rem;margin-bottom:1.5rem}.circle{background-color:var(--lar-background-color-step-200, #333333) !important;border-radius:50%;display:inline-block;padding:0.5rem;width:2rem;height:2rem;margin-right:1rem}.circle lar-icon{display:block;width:100%;height:100%}.zone-list h4{margin:0;padding:0}.zone-list h4 lar-badge{margin-top:0.2rem;margin-right:0.3rem;font-weight:normal}.zone-selectors{text-align:center;margin-bottom:1rem}.zone-selectors lar-button{margin:0.2rem}.zone-list lar-badge{margin-top:0.3rem}lar-button.zone-group{--lar-button-font-size-small:.95rem;--lar-button-padding-top-small:.4rem;--lar-button-padding-bottom-small:.4rem;--lar-button-padding-left-small:.4rem;--lar-button-padding-right-small:.4rem}.center{text-align:center}"; const AreaZones = class { constructor(hostRef) { registerInstance(this, hostRef); } render() { const zones = []; const sortedZones = sortBy(JSON.parse(this.zones), 'group'); const groupedZones = groupBy(sortedZones, 'group'); forOwn(groupedZones, (groupedZonesOwn, group) => { zones.push(h("lar-list-header", null, h("lar-translate", { t: group }))); sortBy(groupedZonesOwn, 'name').forEach(zone => { let color = 'success'; if (zone.state === 'open') { color = 'tertiary'; } if (zone.state === 'short_circuit') { color = 'warning'; } if (zone.state === 'open_circuit') { color = 'danger'; } zones.push(h("lar-list-item", null, h("div", { slot: "start", class: "circle" }, h("lar-icon", { icon: zone.type, color: color })), h("div", null, h("h4", null, h("lar-translate", { t: zone.name })), h("lar-badge", { color: color }, h("lar-translate", { t: 'area.zone_state.' + zone.state })), zone.overridden && h("span", null, "\u00A0", h("lar-badge", { color: "danger" }, h("lar-translate", { t: 'area.zone_state.bypassed' })))))); }); }); return h("div", { key: '42622775d0f8c8a4c589826f8a2456da463d0c91', class: "zone-list" }, zones); } }; AreaZones.style = areaCss; export { AreaZones as lar_area_zones }; //# sourceMappingURL=lar-area-zones.entry.js.map