UNPKG

iobroker.lovelace

Version:

With this adapter you can build visualization for ioBroker with Home Assistant Lovelace UI

5 lines 19 kB
export const __webpack_ids__=["27232"];export const __webpack_modules__={61791:function(e,t,a){a.a(e,(async function(e,n){try{a.d(t,{K:()=>d,s:()=>s});a(92745);var i=a(16485),r=a(27486),o=e([i]);i=(o.then?(await o)():o)[0];const d=(0,r.Z)(((e,t)=>{const a=[],n=new Intl.DateTimeFormat(e,{weekday:t?"short":"long",timeZone:"UTC"});for(let e=0;e<7;e++){const t=new Date(Date.UTC(1970,0,4+e));a.push(n.format(t))}return a})),s=(0,r.Z)(((e,t)=>{const a=[],n=new Intl.DateTimeFormat(e,{month:t?"short":"long",timeZone:"UTC"});for(let e=0;e<12;e++){const t=new Date(Date.UTC(1970,0+e,1));a.push(n.format(t))}return a}));n()}catch(e){n(e)}}))},6231:function(e,t,a){a.a(e,(async function(e,t){try{var n=a(44249),i=a(41565),r=a(15093),o=a(47990),d=a(8191),s=a.n(d),l=a(11132),c=a(36522),h=a(61791),p=a(5111),u=e([h]);h=(u.then?(await u)():u)[0];const g=o.ZP.extend({mixins:[s()],methods:{selectMonthDate(){const e=this.end||new Date;this.changeLeftMonth({year:e.getFullYear(),month:e.getMonth()+1})},hoverDate(e){if(!this.readonly){if(this.in_selection){const t=this.in_selection,a=e;this.start=this.normalizeDatetime(Math.min(t.valueOf(),a.valueOf()),this.start),this.end=this.normalizeDatetime(Math.max(t.valueOf(),a.valueOf()),this.end)}this.$emit("hover-date",e)}}}}),k=o.ZP.extend({props:{timePicker:{type:Boolean,default:!0},twentyfourHours:{type:Boolean,default:!0},openingDirection:{type:String,default:"right"},disabled:{type:Boolean,default:!1},ranges:{type:Boolean,default:!0},startDate:{type:[String,Date],default:()=>new Date},endDate:{type:[String,Date],default:()=>new Date},firstDay:{type:Number,default:1},autoApply:{type:Boolean,default:!1},language:{type:String,default:"en"}},render(e){return e(g,{props:{"time-picker":this.timePicker,"auto-apply":this.autoApply,opens:this.openingDirection,"show-dropdowns":!1,"time-picker24-hour":this.twentyfourHours,disabled:this.disabled,ranges:!!this.ranges&&{},"locale-data":{firstDay:this.firstDay,daysOfWeek:(0,h.K)(this.language,!0),monthNames:(0,h.s)(this.language,!1)}},model:{value:{startDate:this.startDate,endDate:this.endDate},callback:e=>{(0,c.B)(this.$el,"change",e)},expression:"dateRange"},scopedSlots:{input:()=>e("slot",{domProps:{name:"input"}}),header:()=>e("slot",{domProps:{name:"header"}}),ranges:()=>e("slot",{domProps:{name:"ranges"}}),footer:()=>e("slot",{domProps:{name:"footer"}})}})}}),m=(0,i.Z)(o.ZP,k);(0,n.Z)([(0,r.Mo)("date-range-picker")],(function(e,t){return{F:class extends t{constructor(){super(),e(this);const t=document.createElement("style");t.innerHTML=`\n ${l}\n .calendars {\n display: flex;\n flex-wrap: nowrap !important;\n }\n .daterangepicker {\n top: auto;\n box-shadow: var(--ha-card-box-shadow, none);\n background-color: var(--card-background-color);\n border-radius: var(--ha-card-border-radius, 12px);\n border-width: var(--ha-card-border-width, 1px);\n border-style: solid;\n border-color: var(\n --ha-card-border-color,\n var(--divider-color, #e0e0e0)\n );\n color: var(--primary-text-color);\n min-width: initial !important;\n max-height: var(--date-range-picker-max-height);\n overflow-y: auto;\n }\n .daterangepicker:before {\n display: none;\n }\n .daterangepicker:after {\n border-bottom: 6px solid var(--card-background-color);\n }\n .daterangepicker .calendar-table {\n background-color: var(--card-background-color);\n border: none;\n }\n .daterangepicker .calendar-table td,\n .daterangepicker .calendar-table th {\n background-color: transparent;\n color: var(--secondary-text-color);\n border-radius: 0;\n outline: none;\n min-width: 32px;\n height: 32px;\n }\n .daterangepicker td.off,\n .daterangepicker td.off.end-date,\n .daterangepicker td.off.in-range,\n .daterangepicker td.off.start-date {\n background-color: var(--secondary-background-color);\n color: var(--disabled-text-color);\n }\n .daterangepicker td.in-range {\n background-color: var(--light-primary-color);\n color: var(--text-light-primary-color, var(--primary-text-color));\n }\n .daterangepicker td.active,\n .daterangepicker td.active:hover {\n background-color: var(--primary-color);\n color: var(--text-primary-color);\n }\n .daterangepicker td.start-date.end-date {\n border-radius: 50%;\n }\n .daterangepicker td.start-date {\n border-radius: 50% 0 0 50%;\n }\n .daterangepicker td.end-date {\n border-radius: 0 50% 50% 0;\n }\n .reportrange-text {\n background: none !important;\n padding: 0 !important;\n border: none !important;\n }\n .daterangepicker .calendar-table .next span,\n .daterangepicker .calendar-table .prev span {\n border: solid var(--primary-text-color);\n border-width: 0 2px 2px 0;\n }\n .daterangepicker .ranges li {\n outline: none;\n }\n .daterangepicker .ranges li:hover {\n background-color: var(--secondary-background-color);\n }\n .daterangepicker .ranges li.active {\n background-color: var(--primary-color);\n color: var(--text-primary-color);\n }\n .daterangepicker select.ampmselect,\n .daterangepicker select.hourselect,\n .daterangepicker select.minuteselect,\n .daterangepicker select.secondselect {\n background: var(--card-background-color);\n border: 1px solid var(--divider-color);\n color: var(--primary-color);\n }\n .daterangepicker .drp-buttons .btn {\n border: 1px solid var(--primary-color);\n background-color: transparent;\n color: var(--primary-color);\n border-radius: 4px;\n padding: 8px;\n cursor: pointer;\n }\n .calendars-container {\n flex-direction: column;\n align-items: center;\n }\n .drp-calendar.col.right .calendar-table {\n display: none;\n }\n .daterangepicker.show-ranges .drp-calendar.left {\n border-left: 0px;\n }\n .daterangepicker .drp-calendar.left {\n padding: 8px;\n width: unset;\n max-width: unset;\n min-width: 270px;\n }\n .daterangepicker.show-calendar .ranges {\n margin-top: 0;\n padding-top: 8px;\n border-right: 1px solid var(--divider-color);\n }\n @media only screen and (max-width: 800px) {\n .calendars {\n flex-direction: column;\n }\n }\n .calendar-table {\n padding: 0 !important;\n }\n .calendar-time {\n direction: ltr;\n }\n .daterangepicker.ltr {\n direction: var(--direction);\n text-align: var(--float-start);\n }\n .vue-daterange-picker{\n min-width: unset !important;\n display: block !important;\n }\n `,"rtl"===p.E.document.dir&&(t.innerHTML+="\n .daterangepicker .calendar-table .next span {\n transform: rotate(135deg);\n -webkit-transform: rotate(135deg);\n }\n .daterangepicker .calendar-table .prev span {\n transform: rotate(-45deg);\n -webkit-transform: rotate(-45deg);\n }\n .daterangepicker td.start-date {\n border-radius: 0 50% 50% 0;\n }\n .daterangepicker td.end-date {\n border-radius: 50% 0 0 50%;\n }\n ");const a=this.shadowRoot;a.appendChild(t),a.addEventListener("click",(e=>e.stopPropagation()))}},d:[]}}),m);t()}catch(e){t(e)}}))},12667:function(e,t,a){a.a(e,(async function(e,t){try{var n=a(44249),i=(a(9359),a(31526),a(70104),a(31622),a(2060),a(87319),a(86921)),r=a(35895),o=a(57243),d=a(15093),s=a(20552),l=a(97674),c=a(19631),h=a(64214),p=a(16922),u=a(36522),g=a(20382),k=a(6231),m=(a(23334),a(4635),a(5828),a(40917),a(48719)),f=e([k,m,h,l,r]);[k,m,h,l,r]=f.then?(await f)():f;const b="M19,19H5V8H19M16,1V3H8V1H6V3H5C3.89,3 3,3.89 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5C21,3.89 20.1,3 19,3H18V1M17,12H12V17H17V12Z",v=["today","yesterday","this_week"],y=["this_month","this_year","now-1h","now-12h","now-24h","now-7d","now-30d"];(0,n.Z)([(0,d.Mo)("ha-date-range-picker")],(function(e,t){return{F:class extends t{constructor(...t){super(...t),e(this)}},d:[{kind:"field",decorators:[(0,d.Cb)({attribute:!1})],key:"hass",value:void 0},{kind:"field",decorators:[(0,d.Cb)({attribute:!1})],key:"startDate",value:void 0},{kind:"field",decorators:[(0,d.Cb)({attribute:!1})],key:"endDate",value:void 0},{kind:"field",decorators:[(0,d.Cb)({attribute:!1})],key:"ranges",value:void 0},{kind:"field",decorators:[(0,d.SB)()],key:"_ranges",value:void 0},{kind:"field",decorators:[(0,d.Cb)({attribute:"auto-apply",type:Boolean})],key:"autoApply",value:()=>!1},{kind:"field",decorators:[(0,d.Cb)({attribute:"time-picker",type:Boolean})],key:"timePicker",value:()=>!1},{kind:"field",decorators:[(0,d.Cb)({type:Boolean})],key:"disabled",value:()=>!1},{kind:"field",decorators:[(0,d.Cb)({type:Boolean})],key:"minimal",value:()=>!1},{kind:"field",decorators:[(0,d.SB)()],key:"_hour24format",value:()=>!1},{kind:"field",decorators:[(0,d.Cb)({attribute:"extended-presets",type:Boolean})],key:"extendedPresets",value:()=>!1},{kind:"field",decorators:[(0,d.Cb)({attribute:!1})],key:"openingDirection",value:void 0},{kind:"field",decorators:[(0,d.SB)()],key:"_calcedOpeningDirection",value:void 0},{kind:"method",key:"willUpdate",value:function(e){if(!this.hasUpdated&&void 0===this.ranges||e.has("hass")&&this.hass?.localize!==e.get("hass")?.localize){const e=this.extendedPresets?[...v,...y]:v;this._ranges={},e.forEach((e=>{this._ranges[this.hass.localize(`ui.components.date-range-picker.ranges.${e}`)]=(0,m.p)(this.hass,e)}))}}},{kind:"method",key:"updated",value:function(e){if(e.has("hass")){const t=e.get("hass");t&&t.locale===this.hass.locale||(this._hour24format=!(0,p.y)(this.hass.locale))}}},{kind:"method",key:"render",value:function(){return o.dy` <date-range-picker ?disabled="${this.disabled}" ?auto-apply="${this.autoApply}" time-picker="${this.timePicker}" twentyfour-hours="${this._hour24format}" start-date="${this._formatDate(this.startDate)}" end-date="${this._formatDate(this.endDate)}" ?ranges="${!1!==this.ranges}" opening-direction="${(0,s.o)(this.openingDirection||this._calcedOpeningDirection)}" first-day="${(0,c.Bt)(this.hass.locale)}" language="${this.hass.locale.language}" @change="${this._handleChange}"> <div slot="input" class="date-range-inputs" @click="${this._handleClick}"> ${this.minimal?o.dy`<ha-icon-button .label="${this.hass.localize("ui.components.date-range-picker.select_date_range")}" .path="${b}"></ha-icon-button>`:o.dy`<ha-textarea mobile-multiline .value="${((0,i.X)(this.startDate)?(0,h.yD)(this.startDate,this.hass.locale,this.hass.config):(0,h.DG)(this.startDate,this.hass.locale,this.hass.config))+(window.innerWidth>=459?" - ":" - \n")+((0,i.X)(this.endDate)?(0,h.yD)(this.endDate,this.hass.locale,this.hass.config):(0,h.DG)(this.endDate,this.hass.locale,this.hass.config))}" .label="${this.hass.localize("ui.components.date-range-picker.start_date")+" - "+this.hass.localize("ui.components.date-range-picker.end_date")}" .disabled="${this.disabled}" @click="${this._handleInputClick}" readonly="readonly"></ha-textarea> <ha-icon-button-prev .label="${this.hass.localize("ui.common.previous")}" @click="${this._handlePrev}"> </ha-icon-button-prev> <ha-icon-button-next .label="${this.hass.localize("ui.common.next")}" @click="${this._handleNext}"> </ha-icon-button-next>`} </div> ${!1!==this.ranges&&(this.ranges||this._ranges)?o.dy`<div slot="ranges" class="date-range-ranges"> <mwc-list @action="${this._setDateRange}" activatable> ${Object.keys(this.ranges||this._ranges).map((e=>o.dy`<mwc-list-item>${e}</mwc-list-item>`))} </mwc-list> </div>`:o.Ld} <div slot="footer" class="date-range-footer"> <mwc-button @click="${this._cancelDateRange}">${this.hass.localize("ui.common.cancel")}</mwc-button> <mwc-button @click="${this._applyDateRange}">${this.hass.localize("ui.components.date-range-picker.select")}</mwc-button> </div> </date-range-picker> `}},{kind:"method",key:"_handleNext",value:function(e){e&&e.stopPropagation&&e.stopPropagation(),this._shift(!0)}},{kind:"method",key:"_handlePrev",value:function(e){e&&e.stopPropagation&&e.stopPropagation(),this._shift(!1)}},{kind:"method",key:"_shift",value:function(e){if(!this.startDate)return;const{start:t,end:a}=(0,l.Al)(this.startDate,this.endDate,e,this.hass.locale,this.hass.config);this.startDate=t,this.endDate=a;const n=[t,a],i=this._dateRangePicker;i.clickRange(n),i.clickedApply()}},{kind:"method",key:"_setDateRange",value:function(e){const t=Object.values(this.ranges||this._ranges)[e.detail.index];(0,u.B)(this,"preset-selected",{index:e.detail.index});const a=this._dateRangePicker;a.clickRange(t),a.clickedApply()}},{kind:"method",key:"_cancelDateRange",value:function(){this._dateRangePicker.clickCancel()}},{kind:"method",key:"_applyDateRange",value:function(){if(this.hass.locale.time_zone===g.c_.server){const e=this._dateRangePicker,t=(0,r.Nm)(e.start,this.hass.config.time_zone),a=(0,r.Nm)(e.end,this.hass.config.time_zone);e.clickRange([t,a])}this._dateRangePicker.clickedApply()}},{kind:"method",key:"_formatDate",value:function(e){return this.hass.locale.time_zone===g.c_.server?(0,r.zW)(e,this.hass.config.time_zone).toISOString():e.toISOString()}},{kind:"get",key:"_dateRangePicker",value:function(){return this.shadowRoot.querySelector("date-range-picker").vueComponent.$children[0]}},{kind:"method",key:"_handleInputClick",value:function(){this._dateRangePicker.open&&(this._dateRangePicker.open=!1)}},{kind:"method",key:"_handleClick",value:function(){if(!this._dateRangePicker.open&&!this.openingDirection){const e=this.getBoundingClientRect().x;let t;t=e>2*window.innerWidth/3?"left":e<window.innerWidth/3?"right":"center",this._calcedOpeningDirection=t}}},{kind:"method",key:"_handleChange",value:function(e){e.stopPropagation();const t=e.detail.startDate,a=e.detail.endDate;(0,u.B)(this,"value-changed",{value:{startDate:t,endDate:a}})}},{kind:"field",static:!0,key:"styles",value:()=>o.iv`ha-icon-button{direction:var(--direction)}.date-range-inputs{display:flex;align-items:center;gap:8px}.date-range-ranges{border-right:1px solid var(--divider-color)}.date-range-footer{display:flex;justify-content:flex-end;padding:8px;border-top:1px solid var(--divider-color)}ha-textarea{display:inline-block;width:340px}@media only screen and (max-width:460px){ha-textarea{width:100%}}@media only screen and (max-width:800px){.date-range-ranges{border-right:none;border-bottom:1px solid var(--divider-color)}}@media only screen and (max-height:940px) and (max-width:800px){.date-range-ranges{overflow:auto;max-height:calc(70vh - 330px);min-height:160px}:host([header-position]) .date-range-ranges{max-height:calc(90vh - 430px)}}`}]}}),o.oi);t()}catch(e){t(e)}}))},4635:function(e,t,a){a.r(t),a.d(t,{HaIconButtonNext:()=>d});var n=a(44249),i=a(57243),r=a(15093),o=a(5111);a(23334);let d=(0,n.Z)([(0,r.Mo)("ha-icon-button-next")],(function(e,t){return{F:class extends t{constructor(...t){super(...t),e(this)}},d:[{kind:"field",decorators:[(0,r.Cb)({attribute:!1})],key:"hass",value:void 0},{kind:"field",decorators:[(0,r.Cb)({type:Boolean})],key:"disabled",value:()=>!1},{kind:"field",decorators:[(0,r.Cb)()],key:"label",value:void 0},{kind:"field",decorators:[(0,r.SB)()],key:"_icon",value:()=>"rtl"===o.E.document.dir?"M15.41,16.58L10.83,12L15.41,7.41L14,6L8,12L14,18L15.41,16.58Z":"M8.59,16.58L13.17,12L8.59,7.41L10,6L16,12L10,18L8.59,16.58Z"},{kind:"method",key:"render",value:function(){return i.dy` <ha-icon-button .disabled="${this.disabled}" .label="${this.label||this.hass?.localize("ui.common.next")||"Next"}" .path="${this._icon}"></ha-icon-button> `}}]}}),i.oi)},5828:function(e,t,a){a.r(t),a.d(t,{HaIconButtonPrev:()=>d});var n=a(44249),i=a(57243),r=a(15093),o=a(5111);a(23334);let d=(0,n.Z)([(0,r.Mo)("ha-icon-button-prev")],(function(e,t){return{F:class extends t{constructor(...t){super(...t),e(this)}},d:[{kind:"field",decorators:[(0,r.Cb)({attribute:!1})],key:"hass",value:void 0},{kind:"field",decorators:[(0,r.Cb)({type:Boolean})],key:"disabled",value:()=>!1},{kind:"field",decorators:[(0,r.Cb)()],key:"label",value:void 0},{kind:"field",decorators:[(0,r.SB)()],key:"_icon",value:()=>"rtl"===o.E.document.dir?"M8.59,16.58L13.17,12L8.59,7.41L10,6L16,12L10,18L8.59,16.58Z":"M15.41,16.58L10.83,12L15.41,7.41L14,6L8,12L14,18L15.41,16.58Z"},{kind:"method",key:"render",value:function(){return i.dy` <ha-icon-button .disabled="${this.disabled}" .label="${this.label||this.hass?.localize("ui.common.back")||"Back"}" .path="${this._icon}"></ha-icon-button> `}}]}}),i.oi)},40917:function(e,t,a){var n=a(44249),i=a(72621),r=a(27323),o=a(33990),d=a(88540),s=a(57243),l=a(15093);(0,n.Z)([(0,l.Mo)("ha-textarea")],(function(e,t){class a extends t{constructor(...t){super(...t),e(this)}}return{F:a,d:[{kind:"field",decorators:[(0,l.Cb)({type:Boolean,reflect:!0})],key:"autogrow",value:()=>!1},{kind:"method",key:"updated",value:function(e){(0,i.Z)(a,"updated",this,3)([e]),this.autogrow&&e.has("value")&&(this.mdcRoot.dataset.value=this.value+'=​"')}},{kind:"field",static:!0,key:"styles",value:()=>[o.W,d.W,s.iv`:host([autogrow]) .mdc-text-field{position:relative;min-height:74px;min-width:178px;max-height:200px}:host([autogrow]) .mdc-text-field:after{content:attr(data-value);margin-top:23px;margin-bottom:9px;line-height:1.5rem;min-height:42px;padding:0px 32px 0 16px;letter-spacing:var( --mdc-typography-subtitle1-letter-spacing, .009375em );visibility:hidden;white-space:pre-wrap}:host([autogrow]) .mdc-text-field__input{position:absolute;height:calc(100% - 32px)}:host([autogrow]) .mdc-text-field.mdc-text-field--no-label:after{margin-top:16px;margin-bottom:16px}.mdc-floating-label{inset-inline-start:16px!important;inset-inline-end:initial!important;transform-origin:var(--float-start) top}@media only screen and (min-width:459px){:host([mobile-multiline]) .mdc-text-field__input{white-space:nowrap;max-height:16px}}`]}]}}),r.O)}}; //# sourceMappingURL=27232.cb01fd80180033d0.js.map