UNPKG

iobroker.lovelace

Version:

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

2 lines 10.4 kB
export const __webpack_ids__=["19655"];export const __webpack_modules__={45061:function(e,i,a){a.d(i,{K:()=>t});const t=e=>{switch(e.language){case"cs":case"de":case"fi":case"fr":case"sk":case"sv":return" ";default:return""}}},78951:function(e,i,a){var t=a(44249),o=a(72621),l=(a(9359),a(70104),a(24427),a(57243)),r=a(15093),n=a(35359),s=a(36522),d=(a(59826),a(23334),a(45061)),c=a(95262),u=a(90698);const p="M19,4H15.5L14.5,3H9.5L8.5,4H5V6H19M6,19A2,2 0 0,0 8,21H16A2,2 0 0,0 18,19V7H6V19Z",h="M14,2H6A2,2 0 0,0 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2M13.5,16V19H10.5V16H8L12,12L16,16H13.5M13,9V3.5L18.5,9H13Z";(0,t.Z)([(0,r.Mo)("ha-file-upload")],(function(e,i){class a extends i{constructor(...i){super(...i),e(this)}}return{F:a,d:[{kind:"field",decorators:[(0,r.Cb)({attribute:!1})],key:"hass",value:void 0},{kind:"field",decorators:[(0,r.Cb)({attribute:!1})],key:"localize",value:void 0},{kind:"field",decorators:[(0,r.Cb)()],key:"accept",value:void 0},{kind:"field",decorators:[(0,r.Cb)()],key:"icon",value:void 0},{kind:"field",decorators:[(0,r.Cb)()],key:"label",value:void 0},{kind:"field",decorators:[(0,r.Cb)()],key:"secondary",value:void 0},{kind:"field",decorators:[(0,r.Cb)({attribute:"uploading-label"})],key:"uploadingLabel",value:void 0},{kind:"field",decorators:[(0,r.Cb)({attribute:"delete-label"})],key:"deleteLabel",value:void 0},{kind:"field",decorators:[(0,r.Cb)()],key:"supports",value:void 0},{kind:"field",decorators:[(0,r.Cb)({type:Object})],key:"value",value:void 0},{kind:"field",decorators:[(0,r.Cb)({type:Boolean})],key:"multiple",value:()=>!1},{kind:"field",decorators:[(0,r.Cb)({type:Boolean,reflect:!0})],key:"disabled",value:()=>!1},{kind:"field",decorators:[(0,r.Cb)({type:Boolean})],key:"uploading",value:()=>!1},{kind:"field",decorators:[(0,r.Cb)({type:Number})],key:"progress",value:void 0},{kind:"field",decorators:[(0,r.Cb)({type:Boolean,attribute:"auto-open-file-dialog"})],key:"autoOpenFileDialog",value:()=>!1},{kind:"field",decorators:[(0,r.SB)()],key:"_drag",value:()=>!1},{kind:"field",decorators:[(0,r.IO)("#input")],key:"_input",value:void 0},{kind:"method",key:"firstUpdated",value:function(e){(0,o.Z)(a,"firstUpdated",this,3)([e]),this.autoOpenFileDialog&&this._openFilePicker()}},{kind:"get",key:"_name",value:function(){if(void 0===this.value)return"";if("string"==typeof this.value)return this.value;return(this.value instanceof FileList?Array.from(this.value):(0,c.r)(this.value)).map((e=>e.name)).join(", ")}},{kind:"method",key:"render",value:function(){const e=this.localize||this.hass.localize;return l.dy` ${this.uploading?l.dy`<div class="container"> <div class="uploading"> <span class="header">${this.uploadingLabel||this.value?e("ui.components.file-upload.uploading_name",{name:this._name}):e("ui.components.file-upload.uploading")}</span> ${this.progress?l.dy`<div class="progress"> ${this.progress}${this.hass&&(0,d.K)(this.hass.locale)}% </div>`:l.Ld} </div> <mwc-linear-progress .indeterminate="${!this.progress}" .progress="${this.progress?this.progress/100:void 0}"></mwc-linear-progress> </div>`:l.dy`<label for="${this.value?"":"input"}" class="container ${(0,n.$)({dragged:this._drag,multiple:this.multiple,value:Boolean(this.value)})}" @drop="${this._handleDrop}" @dragenter="${this._handleDragStart}" @dragover="${this._handleDragStart}" @dragleave="${this._handleDragEnd}" @dragend="${this._handleDragEnd}">${this.value?"string"==typeof this.value?l.dy`<div class="row"> <div class="value" @click="${this._openFilePicker}"> <ha-svg-icon .path="${this.icon||h}"></ha-svg-icon> ${this.value} </div> <ha-icon-button @click="${this._clearValue}" .label="${this.deleteLabel||e("ui.common.delete")}" .path="${p}"></ha-icon-button> </div>`:(this.value instanceof FileList?Array.from(this.value):(0,c.r)(this.value)).map((i=>l.dy`<div class="row"> <div class="value" @click="${this._openFilePicker}"> <ha-svg-icon .path="${this.icon||h}"></ha-svg-icon> ${i.name} - ${(0,u.d)(i.size)} </div> <ha-icon-button @click="${this._clearValue}" .label="${this.deleteLabel||e("ui.common.delete")}" .path="${p}"></ha-icon-button> </div>`)):l.dy`<ha-svg-icon class="big-icon" .path="${this.icon||h}"></ha-svg-icon> <ha-button unelevated @click="${this._openFilePicker}"> ${this.label||e("ui.components.file-upload.label")} </ha-button> <span class="secondary">${this.secondary||e("ui.components.file-upload.secondary")}</span> <span class="supports">${this.supports}</span>`} <input id="input" type="file" class="file" .accept="${this.accept}" .multiple="${this.multiple}" @change="${this._handleFilePicked}"></label>`} `}},{kind:"method",key:"_openFilePicker",value:function(){this._input?.click()}},{kind:"method",key:"_handleDrop",value:function(e){e.preventDefault(),e.stopPropagation(),e.dataTransfer?.files&&(0,s.B)(this,"file-picked",{files:this.multiple||1===e.dataTransfer.files.length?Array.from(e.dataTransfer.files):[e.dataTransfer.files[0]]}),this._drag=!1}},{kind:"method",key:"_handleDragStart",value:function(e){e.preventDefault(),e.stopPropagation(),this._drag=!0}},{kind:"method",key:"_handleDragEnd",value:function(e){e.preventDefault(),e.stopPropagation(),this._drag=!1}},{kind:"method",key:"_handleFilePicked",value:function(e){0!==e.target.files.length&&(this.value=e.target.files,(0,s.B)(this,"file-picked",{files:e.target.files}))}},{kind:"method",key:"_clearValue",value:function(e){e.preventDefault(),this._input.value="",this.value=void 0,(0,s.B)(this,"change"),(0,s.B)(this,"files-cleared")}},{kind:"field",static:!0,key:"styles",value:()=>l.iv`:host{display:block;height:240px}:host([disabled]){pointer-events:none;color:var(--disabled-text-color)}.container{position:relative;display:flex;flex-direction:column;justify-content:center;align-items:center;border:solid 1px var(--mdc-text-field-idle-line-color,rgba(0,0,0,.42));border-radius:var(--mdc-shape-small,4px);height:100%}.row{display:flex;align-items:center}label.container{border:dashed 1px var(--mdc-text-field-idle-line-color,rgba(0,0,0,.42));cursor:pointer}.container .uploading{display:flex;flex-direction:column;width:100%;align-items:flex-start;padding:0 32px;box-sizing:border-box}:host([disabled]) .container{border-color:var(--disabled-color)}label.dragged,label:hover{border-style:solid}label.dragged{border-color:var(--primary-color)}.dragged:before{position:absolute;top:0;right:0;bottom:0;left:0;background-color:var(--primary-color);content:"";opacity:var(--dark-divider-opacity);pointer-events:none;border-radius:var(--mdc-shape-small,4px)}label.value{cursor:default}label.value.multiple{justify-content:unset;overflow:auto}.highlight{color:var(--primary-color)}ha-button{margin-bottom:4px}.supports{color:var(--secondary-text-color);font-size:12px}:host([disabled]) .secondary{color:var(--disabled-text-color)}input.file{display:none}.value{cursor:pointer}.value ha-svg-icon{margin-right:8px;margin-inline-end:8px;margin-inline-start:initial}.big-icon{--mdc-icon-size:48px;margin-bottom:8px}ha-button{--mdc-button-outline-color:var(--primary-color);--mdc-icon-button-size:24px}mwc-linear-progress{width:100%;padding:8px 32px;box-sizing:border-box}.header{font-weight:500}.progress{color:var(--secondary-text-color)}button.link{background:0 0;border:none;padding:0;font-size:14px;color:var(--primary-color);text-decoration:underline;cursor:pointer}`}]}}),l.oi)},75547:function(e,i,a){a.a(e,(async function(e,t){try{a.r(i);var o=a(44249),l=a(57243),r=a(15093),n=(a(78951),a(99426),a(54202),a(36522)),s=a(76131),d=a(26779),c=a(71562),u=a(17409),p=a(83523),h=a(58776),v=e([d]);d=(v.then?(await v)():v)[0];const g="M20,6A2,2 0 0,1 22,8V18A2,2 0 0,1 20,20H4A2,2 0 0,1 2,18V6A2,2 0 0,1 4,4H10L12,6H20M10.75,13H14V17H16V13H19.25L15,8.75";(0,o.Z)([(0,r.Mo)("onboarding-restore-backup-upload")],(function(e,i){return{F:class extends i{constructor(...i){super(...i),e(this)}},d:[{kind:"field",decorators:[(0,r.Cb)({type:Boolean})],key:"supervisor",value:()=>!1},{kind:"field",decorators:[(0,r.Cb)({attribute:!1})],key:"localize",value:void 0},{kind:"field",decorators:[(0,r.SB)()],key:"_uploading",value:()=>!1},{kind:"field",decorators:[(0,r.SB)()],key:"_error",value:void 0},{kind:"method",key:"render",value:function(){return l.dy` <ha-icon-button-arrow-prev .label="${this.localize("ui.panel.page-onboarding.restore.back")}" @click="${this._back}"></ha-icon-button-arrow-prev> <h1> ${this.localize("ui.panel.page-onboarding.restore.upload_backup")} </h1> <p> ${this.localize("ui.panel.page-onboarding.restore.upload_backup_subtitle")} </p> ${this._error?l.dy`<ha-alert alert-type="error">${this._error}</ha-alert>`:l.Ld} <ha-file-upload .uploading="${this._uploading}" .icon="${g}" accept="${d.U0}" .localize="${this.localize}" .label="${this.localize("ui.panel.page-onboarding.restore.upload_input_label")}" .secondary="${this.localize("ui.panel.page-onboarding.restore.upload_secondary")}" .supports="${this.localize("ui.panel.page-onboarding.restore.upload_supports_tar")}" .deleteLabel="${this.localize("ui.panel.page-onboarding.restore.delete")}" .uploadingLabel="${this.localize("ui.panel.page-onboarding.restore.uploading")}" @file-picked="${this._filePicked}"></ha-file-upload> `}},{kind:"method",key:"_filePicked",value:async function(e){this._error=void 0;const i=e.detail.files[0];if(!i||i.type!==d.U0)return void(0,s.showAlertDialog)(this,{title:this.localize("ui.panel.page-onboarding.restore.unsupported.title"),text:this.localize("ui.panel.page-onboarding.restore.unsupported.text"),confirmText:this.localize("ui.panel.page-onboarding.restore.ok")});const a=this.supervisor?[d.Kn]:[d.UR];this._uploading=!0;try{const{backup_id:e}=await(0,c.gC)(i,a);(0,n.B)(this,"backup-uploaded",{backupId:e})}catch(e){this._error="string"==typeof e.body?e.body:e.body?.message||e.message||"Unknown error occurred"}}},{kind:"method",key:"_back",value:function(){(0,p.c)(`${location.pathname}?${(0,h.pc)("page")}`)}},{kind:"get",static:!0,key:"styles",value:function(){return[u.I,l.iv`h1,p{text-align:left}.card-actions{display:flex;justify-content:flex-end}`]}}]}}),l.oi);t()}catch(e){t(e)}}))},90698:function(e,i,a){a.d(i,{d:()=>t});const t=(e=0,i=2)=>{if(0===e)return"0 Bytes";i=i<0?0:i;const a=Math.floor(Math.log(e)/Math.log(1024));return`${parseFloat((e/1024**a).toFixed(i))} ${["Bytes","KB","MB","GB","TB","PB","EB","ZB","YB"][a]}`}}}; //# sourceMappingURL=19655.6a59ef8775fd3eb9.js.map