iobroker.javascript
Version:
Rules Engine for ioBroker
1 lines • 22.1 kB
JavaScript
import{o as e}from"./rolldown-runtime-C0FnF6B9.js";import{$t as t,A as n,Cn as r,Hn as i,Mn as a,R as o,Sn as s,Un as c,Vn as l,Xn as u,Xt as d,Yt as f,Zt as p,bt as m,cr as ee,ct as h,f as g,fr as _,g as te,mr as v,nr as ne,nt as re,or as y,pr as ie,rn as b,ur as ae,x,xt as S,yr as C,zt as w}from"./_virtual_mf___mfe_internal__iobroker_javascript__mf_owner__1__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-CxICLr5Z.js";var oe=a(i(`path`,{d:`M16 1H4c-1.1 0-2 .9-2 2v14h2V3h12zm-1 4 6 6v10c0 1.1-.9 2-2 2H7.99C6.89 23 6 22.1 6 21l.01-14c0-1.1.89-2 1.99-2zm-1 7h5.5L14 6.5z`}),`FileCopy`);C();var T=new Map([[`avif`,`image/avif`],[`bmp`,`image/bmp`],[`css`,`text/css`],[`csv`,`text/csv`],[`doc`,`application/msword`],[`docx`,`application/vnd.openxmlformats-officedocument.wordprocessingml.document`],[`gif`,`image/gif`],[`gz`,`application/gzip`],[`htm`,`text/html`],[`html`,`text/html`],[`ico`,`image/x-icon`],[`jpeg`,`image/jpeg`],[`jpg`,`image/jpeg`],[`js`,`application/javascript`],[`json`,`application/json`],[`md`,`text/markdown`],[`mjs`,`application/javascript`],[`mp3`,`audio/mpeg`],[`mp4`,`video/mp4`],[`ogg`,`audio/ogg`],[`pdf`,`application/pdf`],[`png`,`image/png`],[`ppt`,`application/powerpoint`],[`pptx`,`application/vnd.openxmlformats-officedocument.presentationml.presentation`],[`svg`,`image/svg+xml`],[`tif`,`image/tiff`],[`tiff`,`image/tiff`],[`txt`,`text/plain`],[`wasm`,`application/wasm`],[`wav`,`audio/x-wav`],[`weba`,`audio/webm`],[`webm`,`video/webm`],[`webp`,`image/webp`],[`xls`,`application/vnd.ms-excel`],[`xlsx`,`application/vnd.openxmlformats-officedocument.spreadsheetml.sheet`],[`xml`,`application/xml`],[`zip`,`application/zip`]]),se=class extends Error{constructor(e){super(`DataTransferItem is not a file`),this.item=e,this.name=`UnexpectedObjectError`}};function E(e,t,n){let r=e,{webkitRelativePath:i}=e,a=typeof t==`string`?t:typeof i==`string`&&i.length>0?i:`./${e.name}`;return typeof r.path!=`string`&&D(r,`path`,a),n!==void 0&&Object.defineProperty(r,"handle",{value:n,writable:!1,configurable:!1,enumerable:!0}),D(r,`relativePath`,a),r}function ce(e,t=T){let{name:n}=e;if(n&&n.lastIndexOf(`.`)!==-1&&!e.type){let r=n.split(`.`).pop().toLowerCase(),i=t.get(r);i&&Object.defineProperty(e,"type",{value:i,writable:!1,configurable:!1,enumerable:!0})}return e}function D(e,t,n){Object.defineProperty(e,t,{value:n,writable:!1,configurable:!1,enumerable:!0})}var O=[`.DS_Store`,`Thumbs.db`];async function le(e,{mimeTypes:t=T}={}){return(await k(e)).map(e=>e instanceof File?ce(e,t):e)}async function k(e){return M(e)&&A(e.dataTransfer)?de(e.dataTransfer,e.type):ue(e)?F(e.clipboardData):j(e)?N(e):Array.isArray(e)&&e.every(e=>`getFile`in e&&typeof e.getFile==`function`)?P(e):[]}function A(e){return M(e)}function ue(e){return M(e)&&A(e.clipboardData)}function j(e){return M(e)&&M(e.target)}function M(e){return typeof e==`object`&&!!e}function N(e){return L(e.target.files).map(e=>E(e))}async function P(e){return(await Promise.all(e.map(e=>e.getFile()))).map(e=>E(e))}async function de(e,t){let n=L(e.items).filter(e=>e.kind===`file`);return t===`drop`?I(R(await Promise.all(n.map(fe)))):n}function F(e){let t=L(e.items).filter(e=>e.kind===`file`).map(e=>e.getAsFile()).filter(e=>e!==null);return I((t.length>0?t:L(e.files)).map(e=>E(e)))}function I(e){return e.filter(e=>O.indexOf(e.name)===-1)}function L(e){return e===null?[]:Array.from(e)}async function fe(e){if(typeof e.webkitGetAsEntry!=`function`)return z(e);let t=e.webkitGetAsEntry();if(t!=null&&t.isDirectory){let n=await pe(e);return(n==null?void 0:n.kind)===`directory`?B(n,`/${n.name}`):he(t)}return z(e,t)}function R(e){let t=[];for(let n of e)Array.isArray(n)?t.push(...R(n)):t.push(n);return t}async function z(e,t){let n=e.getAsFile(),r=await pe(e);if(r!=null){let e=n??await r.getFile();return e.handle=r,E(e)}if(!n)throw new se(e);return E(n,(t==null?void 0:t.fullPath)??void 0)}async function pe(e){if(globalThis.isSecureContext&&typeof e.getAsFileSystemHandle==`function`)return e.getAsFileSystemHandle()}async function B(e,t){let n=[];for await(let r of e.values()){let e=`${t}/${r.name}`;if(r.kind===`directory`)n.push(...await B(r,e));else{let t=await r.getFile();n.push(E(t,e,r))}}return n}async function me(e){return e.isDirectory?he(e):ge(e)}function he(e){let t=e.createReader();return new Promise((e,n)=>{let r=[];function i(){t.readEntries(async t=>{if(t.length){let e=Promise.all(t.map(me));r.push(e),i()}else try{e(await Promise.all(r))}catch(e){n(e)}},e=>{n(e)})}i()})}async function ge(e){return new Promise((t,n)=>{e.file(n=>{t(E(n,e.fullPath))},e=>{n(e)})})}var V=e(h(),1),H=typeof V.default==`function`?V.default:V.default.default,_e=`file-invalid-type`,U=`file-too-large`,ve=`file-too-small`,ye=`too-many-files`;function be(e=``){let t=e.split(`,`);return{code:_e,message:`File type must be ${t.length>1?`one of ${t.join(`, `)}`:t[0]}`}}var xe=[`KB`,`MB`,`GB`,`TB`,`PB`];function W(e){if(e<1024)return`${e} ${e===1?`byte`:`bytes`}`;let t=e/1024,n=0;for(;t>=1024&&n<xe.length-1;)t/=1024,n++;return`${Number(t.toFixed(2))} ${xe[n]}`}function G(e){return{code:U,message:`File is larger than ${W(e)}`}}function K(e){return{code:ve,message:`File is smaller than ${W(e)}`}}var Se={code:ye,message:`Too many files`};function Ce(e){return e.type===``&&typeof e.getAsFile==`function`}function we(e,t){let n=e.type===`application/x-moz-file`||H(e,t??``)||Ce(e);return[n,n?null:be(t)]}function Te(e,t,n){if(q(e.size)){if(q(t)&&q(n)){if(e.size>n)return[!1,G(n)];if(e.size<t)return[!1,K(t)]}else if(q(t)&&e.size<t)return[!1,K(t)];else if(q(n)&&e.size>n)return[!1,G(n)]}return[!0,null]}function q(e){return e!=null}function Ee(e){return e!=null&&typeof e.then==`function`}function De({files:e,accept:t,minSize:n,maxSize:r,multiple:i,maxFiles:a=0,validator:o}){return!i&&e.length>1||i&&a>=1&&e.length>a||e.some(e=>{let[i]=we(e,t),[a]=Te(e,n,r);return!i||!a})?`reject`:o?`unknown`:`accept`}function J(e){return typeof e.isPropagationStopped==`function`?e.isPropagationStopped():e.cancelBubble!==void 0&&e.cancelBubble}function Y(e){let t=e.dataTransfer??e.clipboardData;return t?Array.prototype.some.call(t.types,e=>e===`Files`||e===`application/x-moz-file`)||Array.prototype.some.call(t.items??[],Oe):!!e.target&&!!e.target.files}function Oe(e){return typeof e==`object`&&!!e&&e.kind===`file`}function ke(e){e.preventDefault()}function Ae(e){return e.indexOf(`MSIE`)!==-1||e.indexOf(`Trident/`)!==-1}function je(e){return e.indexOf(`Edge/`)!==-1}function Me(e=window.navigator.userAgent){return Ae(e)||je(e)}function X(...e){return(t,...n)=>e.some(e=>(!J(t)&&e&&e(t,...n),J(t)))}function Ne(){return`showOpenFilePicker`in window}function Z(e){return Array.isArray(e)?e:typeof e==`string`?[e]:[]}function Pe(e){if(q(e))return Array.isArray(e)?e.filter(e=>q(e)&&q(e.accept)):[{accept:e}]}function Fe(e){let t=[],n=Object.keys(e);for(let n of Object.values(e))for(let e of Z(n))t.includes(e)||t.push(e);return t.length>0?t.join(`, `):n.length>0?n.join(`, `):`Files`}function Ie(e){let t=Pe(e);if(!q(t))return;let n={};for(let e of t)for(let[t,r]of Object.entries(e.accept)){let e=n[t]??(n[t]=[]);for(let t of Z(r))e.includes(t)||e.push(t)}return n}function Le(e){let t=Pe(e);if(!q(t))return;let n=t.map(e=>{let t=Object.entries(e.accept).filter(([e,t])=>{let n=!0;return He(e)||(console.warn(`Skipped "${e}" because it is not a valid MIME type. Check https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types/Common_types for a list of valid MIME types.`),n=!1),(!(Array.isArray(t)||typeof t==`string`)||!Z(t).every(We))&&(console.warn(`Skipped "${e}" because an invalid file extension was provided.`),n=!1),n}).reduce((e,[t,n])=>(e[t]=Z(n),e),{});return{description:q(e.description)&&e.description!==``?e.description:Fe(t),accept:t}}).filter(e=>Object.keys(e.accept).length>0);return n.length>0?n:void 0}function Re(e,{omitWildcardMimeTypesWithExtensions:t=!1}={}){if(q(e))return Object.entries(e).reduce((e,[n,r])=>{let i=Z(r);return t&&Ue(n)&&i.some(We)?e.push(...i):e.push(n,...i),e},[]).filter(e=>He(e)||We(e)).join(`,`)}function ze(e){return e instanceof DOMException&&(e.name===`AbortError`||e.code===e.ABORT_ERR)}function Be(e){return e instanceof DOMException&&(e.name===`SecurityError`||e.code===e.SECURITY_ERR)}function Ve(e){return e instanceof DOMException&&e.name===`NotAllowedError`}function He(e){return e===`audio/*`||e===`video/*`||e===`image/*`||e===`text/*`||e===`application/*`||/\w+\/[-+.\w]+/g.test(e)}function Ue(e){return e.endsWith(`/*`)}function We(e){return/^.*\.[\w]+$/.test(e)}var Ge=ne(({children:e,...t},n)=>{let{open:r,...a}=qe(t);return ae(n,()=>({open:r}),[r]),i(l,{children:e==null?void 0:e({...a,open:r})})});Ge.displayName=`Dropzone`;var Ke={isFocused:!1,isFileDialogActive:!1,isDragActive:!1,isDragAccept:!1,isDragReject:!1,isDragUnknown:!1,isDragGlobal:!1,isProcessing:!1,acceptedFiles:[],fileRejections:[]};function qe(e={}){let{accept:t,disabled:n=!1,getFilesFromEvent:r=le,maxSize:i=1/0,minSize:a=0,multiple:o=!0,maxFiles:s=0,onDragEnter:c,onDragLeave:l,onDragOver:u,onDrop:d,onDropAccepted:f,onDropRejected:p,onFileDialogCancel:m,onFileDialogOpen:h,useFsAccessApi:g=!1,autoFocus:te=!1,preventDropOnDocument:ne=!0,noClick:re=!1,noKeyboard:b=!1,noDrag:ae=!1,noDragEventsBubbling:x=!1,noPaste:S=!1,onError:C,validator:w,getErrorMessage:oe}=e,T=_(()=>Ie(t),[t]),se=_(()=>Re(T),[T]),E=_(()=>Re(T,{omitWildcardMimeTypesWithExtensions:!0}),[T]),ce=_(()=>Le(t),[t]),D=_(()=>typeof h==`function`?h:Ye,[h]),O=_(()=>typeof m==`function`?m:Ye,[m]),k=v(null),A=v(null),[ue,j]=ie(Je,Ke),{isFocused:M,isFileDialogActive:N}=ue,P=v(N);P.current=N;let de=v(null),F=y(()=>{var e;(e=de.current)==null||e.abort();let t=new AbortController;return de.current=t,j({type:`setProcessing`,isProcessing:!0}),t.signal},[]),I=y(e=>{e.aborted||j({type:`setProcessing`,isProcessing:!1})},[]),L=v(typeof window<`u`&&window.isSecureContext&&g&&Ne()),fe=()=>{!L.current&&N&&setTimeout(()=>{if(A.current){let{files:e}=A.current;e!=null&&e.length||(j({type:`closeDialog`}),O())}},300)};ee(()=>(window.addEventListener(`focus`,fe,!1),()=>{window.removeEventListener(`focus`,fe,!1)}),[A,N,O,L]);let R=v([]),z=v([]),pe=e=>{k.current&&e.target&&k.current.contains(e.target)&&e.defaultPrevented||(e.preventDefault(),R.current=[])};ee(()=>(ne&&(document.addEventListener(`dragover`,ke,!1),document.addEventListener(`drop`,pe,!1)),()=>{ne&&(document.removeEventListener(`dragover`,ke),document.removeEventListener(`drop`,pe))}),[k,ne]),ee(()=>{let e=e=>{e.target&&(z.current=[...z.current,e.target]),Y(e)&&j({isDragGlobal:!0,type:`setDragGlobal`})},t=e=>{z.current=z.current.filter(t=>t!==e.target&&t!==null),!(z.current.length>0)&&j({isDragGlobal:!1,type:`setDragGlobal`})},n=()=>{z.current=[],j({isDragGlobal:!1,type:`setDragGlobal`})},r=()=>{z.current=[],j({isDragGlobal:!1,type:`setDragGlobal`})};return document.addEventListener(`dragenter`,e,!1),document.addEventListener(`dragleave`,t,!1),document.addEventListener(`dragend`,n,!1),document.addEventListener(`drop`,r,!1),()=>{document.removeEventListener(`dragenter`,e),document.removeEventListener(`dragleave`,t),document.removeEventListener(`dragend`,n),document.removeEventListener(`drop`,r)}},[k]),ee(()=>(!n&&te&&k.current&&k.current.focus(),()=>{}),[k,te,n]);let B=y(e=>{C?C(e):console.error(e)},[C]),me=y(e=>{var t;e.preventDefault(),(t=e.persist)==null||t.call(e),q(e),!P.current&&(R.current=[...R.current,e.target],Y(e)&&Promise.resolve(r(e)).then(t=>{if(J(e)&&!x)return;let n=t.length>0?De({files:t,accept:se,minSize:a,maxSize:i,multiple:o,maxFiles:s,validator:w}):null;j({isDragAccept:n===`accept`,isDragReject:n===`reject`,isDragUnknown:n===`unknown`,isDragActive:!0,type:`setDraggedFiles`}),c&&c(e)}).catch(e=>B(e)))},[r,c,B,x,se,a,i,o,s,w]),he=y(e=>{var t;if(e.preventDefault(),(t=e.persist)==null||t.call(e),q(e),P.current)return!1;let n=Y(e);if(n&&e.dataTransfer)try{e.dataTransfer.dropEffect=`copy`}catch{}return n&&u&&u(e),!1},[u,x]),ge=y(e=>{var t;e.preventDefault(),(t=e.persist)==null||t.call(e),q(e);let n=R.current.filter(e=>{var t;return(t=k.current)==null?void 0:t.contains(e)}),r=n.indexOf(e.target);r!==-1&&n.splice(r,1),R.current=n,!(n.length>0)&&(j({type:`setDraggedFiles`,isDragActive:!1,isDragAccept:!1,isDragReject:!1,isDragUnknown:!1}),Y(e)&&l&&l(e))},[k,l,x]),V=y(async(e,t,n)=>{let r=(e,t)=>oe?{...e,message:oe(e,t)}:e,c=e=>{let n=[],i=[];e.forEach(({file:e,accepted:t,acceptError:a,sizeMatch:o,sizeError:s,customErrors:c})=>{if(t&&o&&!c)n.push(e);else{let t=[a,s];c&&(t=t.concat(c)),i.push({file:e,errors:t.filter(e=>e!=null).map(t=>r(t,e))})}});let a=o?s>=1?s:1/0:1;n.length>a&&n.splice(a).forEach(e=>{i.push({file:e,errors:[r(Se,e)]})}),j({acceptedFiles:n,fileRejections:i,type:`setFiles`}),d&&d(n,i,t),i.length>0&&p&&p(i,t),n.length>0&&f&&f(n,t)},l=e.map(e=>{let[t,n]=we(e,E),[r,o]=Te(e,a,i);return{file:e,accepted:t,acceptError:n,sizeMatch:r,sizeError:o,customErrors:w?w(e):null}});if(!l.some(({customErrors:e})=>Ee(e))){c(l);return}let u;try{u=await Promise.all(l.map(async({customErrors:e,...t})=>({...t,customErrors:await e})))}catch(e){n.aborted||(I(n),B(e));return}n.aborted||c(u)},[j,o,E,a,i,s,d,f,p,w,oe,B,I]),H=y(e=>{var t;if(e.preventDefault(),(t=e.persist)==null||t.call(e),q(e),R.current=[],!(P.current&&e.dataTransfer)&&(j({type:`reset`}),Y(e))){let t=F();Promise.resolve(r(e)).then(n=>{if(!t.aborted){if(J(e)&&!x){I(t);return}return V(n,e,t)}}).catch(e=>{t.aborted||(I(t),B(e))})}},[r,V,B,x,F,I]),_e=y(e=>{var t;if(!Y(e))return;e.preventDefault(),(t=e.persist)==null||t.call(e),q(e);let n=F();Promise.resolve(r(e)).then(t=>{if(!n.aborted){if(J(e)&&!x){I(n);return}return V(t,e,n)}}).catch(e=>{n.aborted||(I(n),B(e))})},[r,V,B,x,F,I]),U=y(()=>{if(L.current){j({type:`openDialog`}),D();let e={multiple:o,types:ce},t;window.showOpenFilePicker(e).then(e=>(t=F(),r(e))).then(e=>{if(j({type:`closeDialog`}),!t.aborted)return V(e,null,t)}).catch(e=>{t&&I(t),ze(e)?(O(e),j({type:`closeDialog`})):Be(e)||Ve(e)?(L.current=!1,A.current?(A.current.value=``,A.current.click()):B(Error(`Cannot open the file picker because the https://developer.mozilla.org/en-US/docs/Web/API/File_System_Access_API is not supported and no <input> was provided.`))):B(e)});return}A.current&&(j({type:`openDialog`}),D(),A.current.value=``,A.current.click())},[j,D,O,g,V,B,ce,o,F,I]),ve=y(e=>{var t;(t=k.current)!=null&&t.isEqualNode(e.target)&&(e.key===` `||e.key===`Enter`||e.keyCode===32||e.keyCode===13)&&(e.preventDefault(),U())},[k,U]),ye=y(()=>{j({type:`focus`})},[]),be=y(()=>{j({type:`blur`})},[]),xe=y(()=>{re||(Me()?setTimeout(U,0):U())},[re,U]),W=e=>n?null:e,G=e=>b?null:W(e),K=e=>ae?null:W(e),Ce=e=>S?null:W(e),q=e=>{x&&e.stopPropagation()},Oe=_(()=>({refKey:e=`ref`,role:t,onKeyDown:r,onFocus:i,onBlur:a,onClick:o,onDragEnter:s,onDragOver:c,onDragLeave:l,onDrop:u,onPaste:d,...f}={})=>({onKeyDown:G(X(r,ve)),onFocus:G(X(i,ye)),onBlur:G(X(a,be)),onClick:W(X(o,xe)),onDragEnter:K(X(s,me)),onDragOver:K(X(c,he)),onDragLeave:K(X(l,ge)),onDrop:K(X(u,H)),onPaste:Ce(X(d,_e)),role:typeof t==`string`&&t!==``?t:`presentation`,[e]:k,...!n&&!b?{tabIndex:0}:{},...n?{"aria-disabled":!0}:{},...f}),[k,ve,ye,be,xe,me,he,ge,H,_e,b,ae,S,n]),Ae=y(e=>{e.stopPropagation()},[]),je=_(()=>({refKey:e=`ref`,onChange:t,onClick:n,...r}={})=>({accept:E,multiple:o,type:`file`,"aria-label":`file upload`,style:{border:0,display:`block`,height:0,margin:0,opacity:0,overflow:`hidden`,padding:0,width:0},onChange:W(X(t,H)),onClick:W(X(n,Ae)),tabIndex:-1,[e]:A,...r}),[A,t,o,H,n]);return{...ue,isFocused:M&&!n,getRootProps:Oe,getInputProps:je,rootRef:k,inputRef:A,open:W(U)}}function Je(e,t){switch(t.type){case`focus`:return{...e,isFocused:!0};case`blur`:return{...e,isFocused:!1};case`openDialog`:return{...Ke,isFileDialogActive:!0};case`closeDialog`:return{...e,isFileDialogActive:!1};case`setDraggedFiles`:return{...e,isDragActive:t.isDragActive,isDragAccept:t.isDragAccept,isDragReject:t.isDragReject,isDragUnknown:t.isDragUnknown};case`setProcessing`:return{...e,isProcessing:t.isProcessing};case`setFiles`:return{...e,acceptedFiles:t.acceptedFiles,fileRejections:t.fileRejections,isProcessing:!1,isDragReject:!1,isDragUnknown:!1};case`setDragGlobal`:return{...e,isDragGlobal:t.isDragGlobal};case`reset`:return{...Ke};default:return e}}function Ye(){}C();var Q={textArea:{width:`100%`,height:`100%`,overflow:`auto`},textAreaLight:{background:`lightgray`},dialog:{height:`95%`},typography:{padding:16},overflowY:{overflowY:`hidden`}},Xe=class extends u.Component{constructor(e){super(e),this.state={anchorEl:null,popper:``}}handleCancel(){this.props.onClose()}onCopy(e){te.copyToClipboard(this.props.text);let t=e.currentTarget;setTimeout(()=>{this.setState({popper:g.t(`Copied`),anchorEl:t}),setTimeout(()=>this.setState({popper:``,anchorEl:null}),1e3)},50)}render(){let e=new Blob([this.props.text],{type:`application/xml`}),n=`${this.props.scriptId.substring(10)}.xml`;return c(f,{onClose:()=>!1,maxWidth:`lg`,sx:{"& .MuiDialog-paper":Q.dialog},fullWidth:!0,open:!0,"aria-labelledby":`export-dialog-title`,children:[i(t,{id:`export-dialog-title`,children:g.t(`Export selected blocks`)}),i(p,{style:Q.overflowY,children:i(`pre`,{id:`export-text`,style:{...Q.textArea,...this.props.themeType===`dark`?void 0:Q.textAreaLight},children:this.props.text})}),c(d,{children:[i(w,{variant:`contained`,color:`secondary`,startIcon:i(re,{}),children:i(`a`,{download:n,target:`_blank`,rel:`noreferrer`,href:URL.createObjectURL(e),style:{textDecoration:`inherit`,color:`inherit`},children:g.t(`Download as file`)})}),i(w,{variant:`contained`,onClick:e=>this.onCopy(e),color:`secondary`,startIcon:i(oe,{}),children:g.t(`Copy to clipboard`)}),i(w,{variant:`contained`,onClick:()=>this.handleCancel(),color:`primary`,startIcon:i(S,{}),children:g.t(`Close`)}),i(r,{id:`popper`,style:{zIndex:1e4},open:!!this.state.popper,placement:`top`,anchorEl:this.state.anchorEl,transition:!0,children:({TransitionProps:e})=>i(b,{...e,timeout:350,children:i(s,{children:i(`p`,{style:Q.typography,children:this.state.popper})})})}),i(`textarea`,{id:`copy_input`,readOnly:!0,style:{position:`absolute`,left:-9999},tabIndex:-1,"aria-hidden":!0,value:this.props.text})]})]},`export-dialog`)}};C();var $={textArea:{width:`calc(100% - 10px)`,height:`calc(80% - 20px)`,resize:`none`,fontFamily:`monospace`,fontSize:`1em`,backgroundColor:`transparent`,borderRadius:4,outline:`none`},dropzone:{marginTop:20,width:`100%`,borderWidth:5,borderStyle:`dashed`,borderColor:`#d0cccc`,textAlign:`center`,boxSizing:`border-box`,paddingTop:45,borderRadius:10,height:`calc(100% - 10px)`},dropzoneDiv:{width:`100%`,height:`20%`,position:`relative`},dropzoneRejected:{borderColor:`#970000`},dropzoneAccepted:{borderColor:`#17cd02`},icon:{height:`80%`,width:`80%`,opacity:.3,color:`#eeeeee`,position:`absolute`,top:`50%`,left:`50%`,transform:`translate(-50%,-50%)`,zIndex:0},iconError:{color:`#ffc3c6`},iconOk:{color:`#aaeebc`},text:{top:`50%`,left:`50%`,transform:`translate(-50%,-50%)`,color:`#868686`,position:`absolute`,zIndex:1},dialog:{height:`95%`},fullHeight:{height:`100%`,overflow:`hidden`}},Ze=class e extends u.Component{constructor(e){super(e),this.state={text:``,imageStatus:``,error:``}}componentDidMount(){setTimeout(()=>{try{var e;(e=window.document.getElementById(`import-text-area`))==null||e.focus()}catch{}},100)}static readFileDataUrl(e,t){let n=new FileReader;n.onload=()=>{t(null,{data:n.result,name:e.name})},n.onabort=()=>{console.error(`file reading was aborted`),t(g.t(`file reading was aborted`))},n.onerror=e=>{console.error(`file reading has failed`),t(g.t(`file reading has failed: %s`,e))},n.readAsText(e)}handleDropFile(t){if(!(t!=null&&t.length))return;let n=t[t.length-1];n&&e.readFileDataUrl(n,(e,t)=>{if(e||!t)this.setState({error:e||`No data`});else{var n;this.setState({text:((n=t.data)==null?void 0:n.toString())||``})}})}handleCancel(){this.props.onClose()}handleOk(){this.props.onClose(this.state.text)}onChange(e){this.setState({text:e.target.value})}render(){let e={...$.dropzone,...this.state.imageStatus===`accepted`?$.dropzoneAccepted:this.state.imageStatus===`rejected`?$.dropzoneRejected:void 0};return c(f,{onClose:()=>!1,maxWidth:`lg`,sx:{"& .MuiDialog-paper":$.dialog},fullWidth:!0,open:!0,"aria-labelledby":`import-dialog-title`,children:[i(t,{id:`import-dialog-title`,children:g.t(`Import blocks`)}),c(p,{style:$.fullHeight,children:[i(`textarea`,{autoFocus:!0,id:`import-text-area`,placeholder:g.t(`Paste your blocks here`),style:{...$.textArea,color:this.props.themeType===`dark`?`#ffffff`:`#000000`},onChange:e=>this.onChange(e),value:this.state.text}),i(Ge,{maxSize:5e7,onDrop:(e,t)=>{if(e.length)this.handleDropFile(e);else{var n;window.alert((t==null||(n=t[0])==null||(n=n.errors)==null||(n=n[0])==null?void 0:n.message)||g.t(`ra_Cannot upload`))}},multiple:!1,accept:{"text/plain":[],"text/xml":[],"application/xml":[]},children:({getRootProps:t,getInputProps:r,isDragActive:a,isDragReject:s})=>s?(this.state.imageStatus!==`rejected`&&this.setState({imageStatus:`rejected`}),c(`div`,{style:{...e,...$.dropzoneDiv},...t(),children:[i(`input`,{...r()}),i(`span`,{style:$.text,children:g.t(`Some files will be rejected`)},`text`),i(n,{style:{...$.icon,...$.iconError}},`icon`)]})):a?(this.state.imageStatus!==`accepted`&&this.setState({imageStatus:`accepted`}),c(`div`,{style:{...e,...$.dropzoneDiv},...t(),children:[i(`input`,{...r()}),i(`span`,{style:$.text,children:g.t(`All files will be accepted`)},`text`),i(x,{style:{...$.icon,...$.iconOk}},`icon`)]})):(this.state.imageStatus!==`wait`&&this.setState({imageStatus:`wait`}),c(`div`,{style:{...e,...$.dropzoneDiv},...t(),children:[i(`input`,{...r()}),i(`span`,{style:$.text,children:g.t(`Drop some files here or click...`)},`text`),i(o,{style:$.icon},`icon`)]}))})]}),c(d,{children:[i(w,{variant:`contained`,disabled:!this.state.text,onClick:()=>this.handleOk(),color:`primary`,startIcon:i(m,{}),children:g.t(`Import`)}),i(w,{color:`grey`,variant:`contained`,onClick:()=>this.handleCancel(),startIcon:i(S,{}),children:g.t(`Close`)})]})]})}};export{Xe as n,Ge as r,Ze as t};