@kit-data-manager/mapping-service-input
Version:
The mapping-service-input provides a minimalistic user interface for the KIT Data Manager Mapping Service. It allows users to select an existing mapping schema and use it to map their data.
44 lines (43 loc) • 136 kB
JavaScript
(function(Ne){typeof define=="function"&&define.amd?define(Ne):Ne()})((function(){"use strict";const Ne=`<div id="options" class="mapping-options">
<div class="container-wrapper">
<div
id="options-container"
class="options-container"
role="listbox"
aria-label="Available mappings"
aria-describedby="mapping-instructions"
></div>
</div>
</div>
<div
id="message"
class="message-area info"
role="status"
aria-live="polite"
aria-atomic="true"
>
Please select a mapping from the list above.
</div>
<p id="mapping-instructions" class="visually-hidden">
Use Arrow keys to move between mappings. Press Space or Enter to select a mapping.
</p>
<label for="fileUpload" class="visually-hidden">Select a file to be processed by the chosen mapping</label>
<input type="file" id="fileUpload" aria-describedby="file-help" />
<p id="file-help" class="visually-hidden">Only one file up to the configured maximum size is allowed.</p>
<div class="row align-items-center ms-1">
<button
type="submit"
class="btn btn-primary col-auto me-3"
id="submit"
aria-label="Execute mapping"
aria-disabled="true"
>
Execute Mapping
</button>
</div>
`;/*!
* FilePond 4.32.8
* Licensed under MIT, https://opensource.org/licenses/MIT/
* Please visit https://pqina.nl/filepond/ for details.
*/const fi=e=>e instanceof HTMLElement,pi=(e,t=[],n=[])=>{const i={...e},r=[],o=[],s=()=>({...i}),l=()=>{const p=[...r];return r.length=0,p},a=()=>{const p=[...o];o.length=0,p.forEach(({type:m,data:S})=>{d(m,S)})},d=(p,m,S)=>{if(S&&!document.hidden){o.push({type:p,data:m});return}g[p]&&g[p](m),r.push({type:p,data:m})},c=(p,...m)=>u[p]?u[p](...m):null,f={getState:s,processActionQueue:l,processDispatchQueue:a,dispatch:d,query:c};let u={};t.forEach(p=>{u={...p(i),...u}});let g={};return n.forEach(p=>{g={...p(d,c,i),...g}}),f},ui=(e,t,n)=>{if(typeof n=="function"){e[t]=n;return}Object.defineProperty(e,t,{...n})},U=(e,t)=>{for(const n in e)e.hasOwnProperty(n)&&t(n,e[n])},de=e=>{const t={};return U(e,n=>{ui(t,n,e[n])}),t},H=(e,t,n=null)=>{if(n===null)return e.getAttribute(t)||e.hasAttribute(t);e.setAttribute(t,n)},Ei="http://www.w3.org/2000/svg",mi=["svg","path"],Ct=e=>mi.includes(e),Ge=(e,t,n={})=>{typeof t=="object"&&(n=t,t=null);const i=Ct(e)?document.createElementNS(Ei,e):document.createElement(e);return t&&(Ct(e)?H(i,"class",t):i.className=t),U(n,(r,o)=>{H(i,r,o)}),i},gi=e=>(t,n)=>{typeof n<"u"&&e.children[n]?e.insertBefore(t,e.children[n]):e.appendChild(t)},Ii=(e,t)=>(n,i)=>(typeof i<"u"?t.splice(i,0,n):t.push(n),n),_i=(e,t)=>n=>(t.splice(t.indexOf(n),1),n.element.parentNode&&e.removeChild(n.element),n),hi=typeof window<"u"&&typeof window.document<"u",vt=()=>hi,Ti="children"in(vt()?Ge("svg"):{})?e=>e.children.length:e=>e.childNodes.length,Nt=(e,t,n,i)=>{const r=n[0]||e.left,o=n[1]||e.top,s=r+e.width,l=o+e.height*(i[1]||1),a={element:{...e},inner:{left:e.left,top:e.top,right:e.right,bottom:e.bottom},outer:{left:r,top:o,right:s,bottom:l}};return t.filter(d=>!d.isRectIgnored()).map(d=>d.rect).forEach(d=>{Gt(a.inner,{...d.inner}),Gt(a.outer,{...d.outer})}),Ft(a.inner),a.outer.bottom+=a.element.marginBottom,a.outer.right+=a.element.marginRight,Ft(a.outer),a},Gt=(e,t)=>{t.top+=e.top,t.right+=e.left,t.bottom+=e.top,t.left+=e.left,t.bottom>e.bottom&&(e.bottom=t.bottom),t.right>e.right&&(e.right=t.right)},Ft=e=>{e.width=e.right-e.left,e.height=e.bottom-e.top},ue=e=>typeof e=="number",Ri=(e,t,n,i=.001)=>Math.abs(e-t)<i&&Math.abs(n)<i,bi=({stiffness:e=.5,damping:t=.75,mass:n=10}={})=>{let i=null,r=null,o=0,s=!1;const d=de({interpolate:(c,f)=>{if(s)return;if(!(ue(i)&&ue(r))){s=!0,o=0;return}const u=-(r-i)*e;o+=u/n,r+=o,o*=t,Ri(r,i,o)||f?(r=i,o=0,s=!0,d.onupdate(r),d.oncomplete(r)):d.onupdate(r)},target:{set:c=>{if(ue(c)&&!ue(r)&&(r=c),i===null&&(i=c,r=c),i=c,r===i||typeof i>"u"){s=!0,o=0,d.onupdate(r),d.oncomplete(r);return}s=!1},get:()=>i},resting:{get:()=>s},onupdate:c=>{},oncomplete:c=>{}});return d},Si=e=>e<.5?2*e*e:-1+(4-2*e)*e,xt={spring:bi,tween:({duration:e=500,easing:t=Si,delay:n=0}={})=>{let i=null,r,o,s=!0,l=!1,a=null;const c=de({interpolate:(f,u)=>{s||a===null||(i===null&&(i=f),!(f-i<n)&&(r=f-i-n,r>=e||u?(r=1,o=l?0:1,c.onupdate(o*a),c.oncomplete(o*a),s=!0):(o=r/e,c.onupdate((r>=0?t(l?1-o:o):0)*a))))},target:{get:()=>l?0:a,set:f=>{if(a===null){a=f,c.onupdate(f),c.oncomplete(f);return}f<a?(a=1,l=!0):(l=!1,a=f),s=!1,i=null}},resting:{get:()=>s},onupdate:f=>{},oncomplete:f=>{}});return c}},Oi=(e,t,n)=>{const i=e[t]&&typeof e[t][n]=="object"?e[t][n]:e[t]||e,r=typeof i=="string"?i:i.type,o=typeof i=="object"?{...i}:{};return xt[r]?xt[r](o):null},nt=(e,t,n,i=!1)=>{t=Array.isArray(t)?t:[t],t.forEach(r=>{e.forEach(o=>{let s=o,l=()=>n[o],a=d=>n[o]=d;typeof o=="object"&&(s=o.key,l=o.getter||l,a=o.setter||a),!(r[s]&&!i)&&(r[s]={get:l,set:a})})})},Di=({mixinConfig:e,viewProps:t,viewInternalAPI:n,viewExternalAPI:i})=>{const r={...t},o=[];return U(e,(s,l)=>{const a=Oi(l);if(!a)return;a.onupdate=c=>{t[s]=c},a.target=r[s],nt([{key:s,setter:c=>{a.target!==c&&(a.target=c)},getter:()=>t[s]}],[n,i],t,!0),o.push(a)}),{write:s=>{let l=document.hidden,a=!0;return o.forEach(d=>{d.resting||(a=!1),d.interpolate(s,l)}),a},destroy:()=>{}}},yi=e=>(t,n)=>{e.addEventListener(t,n)},Ai=e=>(t,n)=>{e.removeEventListener(t,n)},Li=({mixinConfig:e,viewProps:t,viewInternalAPI:n,viewExternalAPI:i,viewState:r,view:o})=>{const s=[],l=yi(o.element),a=Ai(o.element);return i.on=(d,c)=>{s.push({type:d,fn:c}),l(d,c)},i.off=(d,c)=>{s.splice(s.findIndex(f=>f.type===d&&f.fn===c),1),a(d,c)},{write:()=>!0,destroy:()=>{s.forEach(d=>{a(d.type,d.fn)})}}},wi=({mixinConfig:e,viewProps:t,viewExternalAPI:n})=>{nt(e,n,t)},j=e=>e!=null,Mi={opacity:1,scaleX:1,scaleY:1,translateX:0,translateY:0,rotateX:0,rotateY:0,rotateZ:0,originX:0,originY:0},Pi=({mixinConfig:e,viewProps:t,viewInternalAPI:n,viewExternalAPI:i,view:r})=>{const o={...t},s={};nt(e,[n,i],t);const l=()=>[t.translateX||0,t.translateY||0],a=()=>[t.scaleX||0,t.scaleY||0],d=()=>r.rect?Nt(r.rect,r.childViews,l(),a()):null;return n.rect={get:d},i.rect={get:d},e.forEach(c=>{t[c]=typeof o[c]>"u"?Mi[c]:o[c]}),{write:()=>{if(Ci(s,t))return vi(r.element,t),Object.assign(s,{...t}),!0},destroy:()=>{}}},Ci=(e,t)=>{if(Object.keys(e).length!==Object.keys(t).length)return!0;for(const n in t)if(t[n]!==e[n])return!0;return!1},vi=(e,{opacity:t,perspective:n,translateX:i,translateY:r,scaleX:o,scaleY:s,rotateX:l,rotateY:a,rotateZ:d,originX:c,originY:f,width:u,height:g})=>{let p="",m="";(j(c)||j(f))&&(m+=`transform-origin: ${c||0}px ${f||0}px;`),j(n)&&(p+=`perspective(${n}px) `),(j(i)||j(r))&&(p+=`translate3d(${i||0}px, ${r||0}px, 0) `),(j(o)||j(s))&&(p+=`scale3d(${j(o)?o:1}, ${j(s)?s:1}, 1) `),j(d)&&(p+=`rotateZ(${d}rad) `),j(l)&&(p+=`rotateX(${l}rad) `),j(a)&&(p+=`rotateY(${a}rad) `),p.length&&(m+=`transform:${p};`),j(t)&&(m+=`opacity:${t};`,t===0&&(m+="visibility:hidden;"),t<1&&(m+="pointer-events:none;")),j(g)&&(m+=`height:${g}px;`),j(u)&&(m+=`width:${u}px;`);const S=e.elementCurrentStyle||"";(m.length!==S.length||m!==S)&&(e.style.cssText=m,e.elementCurrentStyle=m)},Ni={styles:Pi,listeners:Li,animations:Di,apis:wi},Bt=(e={},t={},n={})=>(t.layoutCalculated||(e.paddingTop=parseInt(n.paddingTop,10)||0,e.marginTop=parseInt(n.marginTop,10)||0,e.marginRight=parseInt(n.marginRight,10)||0,e.marginBottom=parseInt(n.marginBottom,10)||0,e.marginLeft=parseInt(n.marginLeft,10)||0,t.layoutCalculated=!0),e.left=t.offsetLeft||0,e.top=t.offsetTop||0,e.width=t.offsetWidth||0,e.height=t.offsetHeight||0,e.right=e.left+e.width,e.bottom=e.top+e.height,e.scrollTop=t.scrollTop,e.hidden=t.offsetParent===null,e),k=({tag:e="div",name:t=null,attributes:n={},read:i=()=>{},write:r=()=>{},create:o=()=>{},destroy:s=()=>{},filterFrameActionsForChild:l=(g,p)=>p,didCreateView:a=()=>{},didWriteView:d=()=>{},ignoreRect:c=!1,ignoreRectUpdate:f=!1,mixins:u=[]}={})=>(g,p={})=>{const m=Ge(e,`filepond--${t}`,n),S=window.getComputedStyle(m,null),h=Bt();let b=null,A=!1;const L=[],O=[],C={},B={},R=[r],M=[i],F=[s],D=()=>m,v=()=>L.concat(),W=()=>C,_=G=>(X,ce)=>X(G,ce),x=()=>b||(b=Nt(h,L,[0,0],[1,1]),b),I=()=>S,T=()=>{b=null,L.forEach(ce=>ce._read()),!(f&&h.width&&h.height)&&Bt(h,m,S);const X={root:pe,props:p,rect:h};M.forEach(ce=>ce(X))},y=(G,X,ce)=>{let Ae=X.length===0;return R.forEach(J=>{J({props:p,root:pe,actions:X,timestamp:G,shouldOptimize:ce})===!1&&(Ae=!1)}),O.forEach(J=>{J.write(G)===!1&&(Ae=!1)}),L.filter(J=>!!J.element.parentNode).forEach(J=>{J._write(G,l(J,X),ce)||(Ae=!1)}),L.forEach((J,tt)=>{J.element.parentNode||(pe.appendChild(J.element,tt),J._read(),J._write(G,l(J,X),ce),Ae=!1)}),A=Ae,d({props:p,root:pe,actions:X,timestamp:G}),Ae},w=()=>{O.forEach(G=>G.destroy()),F.forEach(G=>{G({root:pe,props:p})}),L.forEach(G=>G._destroy())},q={element:{get:D},style:{get:I},childViews:{get:v}},N={...q,rect:{get:x},ref:{get:W},is:G=>t===G,appendChild:gi(m),createChildView:_(g),linkView:G=>(L.push(G),G),unlinkView:G=>{L.splice(L.indexOf(G),1)},appendChildView:Ii(m,L),removeChildView:_i(m,L),registerWriter:G=>R.push(G),registerReader:G=>M.push(G),registerDestroyer:G=>F.push(G),invalidateLayout:()=>m.layoutCalculated=!1,dispatch:g.dispatch,query:g.query},et={element:{get:D},childViews:{get:v},rect:{get:x},resting:{get:()=>A},isRectIgnored:()=>c,_read:T,_write:y,_destroy:w},di={...q,rect:{get:()=>h}};Object.keys(u).sort((G,X)=>G==="styles"?1:X==="styles"?-1:0).forEach(G=>{const X=Ni[G]({mixinConfig:u[G],viewProps:p,viewState:B,viewInternalAPI:N,viewExternalAPI:et,view:de(di)});X&&O.push(X)});const pe=de(N);o({root:pe,props:p});const Jo=Ti(m);return L.forEach((G,X)=>{pe.appendChild(G.element,Jo+X)}),a(pe),de(et)},Gi=(e,t,n=60)=>{const i="__framePainter";if(window[i]){window[i].readers.push(e),window[i].writers.push(t);return}window[i]={readers:[e],writers:[t]};const r=window[i],o=1e3/n;let s=null,l=null,a=null,d=null;const c=()=>{document.hidden?(a=()=>window.setTimeout(()=>f(performance.now()),o),d=()=>window.clearTimeout(l)):(a=()=>window.requestAnimationFrame(f),d=()=>window.cancelAnimationFrame(l))};document.addEventListener("visibilitychange",()=>{d&&d(),c(),f(performance.now())});const f=u=>{l=a(f),s||(s=u);const g=u-s;g<=o||(s=u-g%o,r.readers.forEach(p=>p()),r.writers.forEach(p=>p(u)))};return c(),f(performance.now()),{pause:()=>{d(l)}}},Q=(e,t)=>({root:n,props:i,actions:r=[],timestamp:o,shouldOptimize:s})=>{r.filter(l=>e[l.type]).forEach(l=>e[l.type]({root:n,props:i,action:l.data,timestamp:o,shouldOptimize:s})),t&&t({root:n,props:i,actions:r,timestamp:o,shouldOptimize:s})},Ut=(e,t)=>t.parentNode.insertBefore(e,t),Vt=(e,t)=>t.parentNode.insertBefore(e,t.nextSibling),Fe=e=>Array.isArray(e),ae=e=>e==null,Fi=e=>e.trim(),xe=e=>""+e,xi=(e,t=",")=>ae(e)?[]:Fe(e)?e:xe(e).split(t).map(Fi).filter(n=>n.length),zt=e=>typeof e=="boolean",kt=e=>zt(e)?e:e==="true",Z=e=>typeof e=="string",Ht=e=>ue(e)?e:Z(e)?xe(e).replace(/[a-z]+/gi,""):0,Be=e=>parseInt(Ht(e),10),qt=e=>parseFloat(Ht(e)),be=e=>ue(e)&&isFinite(e)&&Math.floor(e)===e,$t=(e,t=1e3)=>{if(be(e))return e;let n=xe(e).trim();return/MB$/i.test(n)?(n=n.replace(/MB$i/,"").trim(),Be(n)*t*t):/KB/i.test(n)?(n=n.replace(/KB$i/,"").trim(),Be(n)*t):Be(n)},Ee=e=>typeof e=="function",Bi=e=>{let t=self,n=e.split("."),i=null;for(;i=n.shift();)if(t=t[i],!t)return null;return t},Yt={process:"POST",patch:"PATCH",revert:"DELETE",fetch:"GET",restore:"GET",load:"GET"},Ui=e=>{const t={};return t.url=Z(e)?e:e.url||"",t.timeout=e.timeout?parseInt(e.timeout,10):0,t.headers=e.headers?e.headers:{},U(Yt,n=>{t[n]=Vi(n,e[n],Yt[n],t.timeout,t.headers)}),t.process=e.process||Z(e)||e.url?t.process:null,t.remove=e.remove||null,delete t.headers,t},Vi=(e,t,n,i,r)=>{if(t===null)return null;if(typeof t=="function")return t;const o={url:n==="GET"||n==="PATCH"?`?${e}=`:"",method:n,headers:r,withCredentials:!1,timeout:i,onload:null,ondata:null,onerror:null};if(Z(t))return o.url=t,o;if(Object.assign(o,t),Z(o.headers)){const s=o.headers.split(/:(.+)/);o.headers={header:s[0],value:s[1]}}return o.withCredentials=kt(o.withCredentials),o},zi=e=>Ui(e),ki=e=>e===null,$=e=>typeof e=="object"&&e!==null,Hi=e=>$(e)&&Z(e.url)&&$(e.process)&&$(e.revert)&&$(e.restore)&&$(e.fetch),it=e=>Fe(e)?"array":ki(e)?"null":be(e)?"int":/^[0-9]+ ?(?:GB|MB|KB)$/gi.test(e)?"bytes":Hi(e)?"api":typeof e,qi=e=>e.replace(/{\s*'/g,'{"').replace(/'\s*}/g,'"}').replace(/'\s*:/g,'":').replace(/:\s*'/g,':"').replace(/,\s*'/g,',"').replace(/'\s*,/g,'",'),$i={array:xi,boolean:kt,int:e=>it(e)==="bytes"?$t(e):Be(e),number:qt,float:qt,bytes:$t,string:e=>Ee(e)?e:xe(e),function:e=>Bi(e),serverapi:zi,object:e=>{try{return JSON.parse(qi(e))}catch{return null}}},Yi=(e,t)=>$i[t](e),Wt=(e,t,n)=>{if(e===t)return e;let i=it(e);if(i!==n){const r=Yi(e,n);if(i=it(r),r===null)throw`Trying to assign value with incorrect type to "${option}", allowed type: "${n}"`;e=r}return e},Wi=(e,t)=>{let n=e;return{enumerable:!0,get:()=>n,set:i=>{n=Wt(i,e,t)}}},Xi=e=>{const t={};return U(e,n=>{const i=e[n];t[n]=Wi(i[0],i[1])}),de(t)},ji=e=>({items:[],listUpdateTimeout:null,itemUpdateTimeout:null,processingQueue:[],options:Xi(e)}),Ue=(e,t="-")=>e.split(/(?=[A-Z])/).map(n=>n.toLowerCase()).join(t),Qi=(e,t)=>{const n={};return U(t,i=>{n[i]={get:()=>e.getState().options[i],set:r=>{e.dispatch(`SET_${Ue(i,"_").toUpperCase()}`,{value:r})}}}),n},Zi=e=>(t,n,i)=>{const r={};return U(e,o=>{const s=Ue(o,"_").toUpperCase();r[`SET_${s}`]=l=>{try{i.options[o]=l.value}catch{}t(`DID_SET_${s}`,{value:i.options[o]})}}),r},Ki=e=>t=>{const n={};return U(e,i=>{n[`GET_${Ue(i,"_").toUpperCase()}`]=r=>t.options[i]}),n},te={API:1,DROP:2,BROWSE:3,PASTE:4,NONE:5},rt=()=>Math.random().toString(36).substring(2,11),st=(e,t)=>e.splice(t,1),Ji=(e,t)=>{t?e():document.hidden?Promise.resolve(1).then(e):setTimeout(e,0)},Ve=()=>{const e=[],t=(i,r)=>{st(e,e.findIndex(o=>o.event===i&&(o.cb===r||!r)))},n=(i,r,o)=>{e.filter(s=>s.event===i).map(s=>s.cb).forEach(s=>Ji(()=>s(...r),o))};return{fireSync:(i,...r)=>{n(i,r,!0)},fire:(i,...r)=>{n(i,r,!1)},on:(i,r)=>{e.push({event:i,cb:r})},onOnce:(i,r)=>{e.push({event:i,cb:(...o)=>{t(i,r),r(...o)}})},off:t}},Xt=(e,t,n)=>{Object.getOwnPropertyNames(e).filter(i=>!n.includes(i)).forEach(i=>Object.defineProperty(t,i,Object.getOwnPropertyDescriptor(e,i)))},er=["fire","process","revert","load","on","off","onOnce","retryLoad","extend","archive","archived","release","released","requestProcessing","freeze"],K=e=>{const t={};return Xt(e,t,er),t},tr=e=>{e.forEach((t,n)=>{t.released&&st(e,n)})},P={INIT:1,IDLE:2,PROCESSING_QUEUED:9,PROCESSING:3,PROCESSING_COMPLETE:5,PROCESSING_ERROR:6,PROCESSING_REVERT_ERROR:10,LOADING:7,LOAD_ERROR:8},Y={INPUT:1,LIMBO:2,LOCAL:3},jt=e=>/[^0-9]+/.exec(e),Qt=()=>jt(1.1.toLocaleString())[0],nr=()=>{const e=Qt(),t=1e3.toLocaleString();return t!=="1000"?jt(t)[0]:e==="."?",":"."},E={BOOLEAN:"boolean",INT:"int",NUMBER:"number",STRING:"string",ARRAY:"array",OBJECT:"object",FUNCTION:"function",ACTION:"action",SERVER_API:"serverapi",REGEX:"regex"},ot=[],re=(e,t,n)=>new Promise((i,r)=>{const o=ot.filter(l=>l.key===e).map(l=>l.cb);if(o.length===0){i(t);return}const s=o.shift();o.reduce((l,a)=>l.then(d=>a(d,n)),s(t,n)).then(l=>i(l)).catch(l=>r(l))}),me=(e,t,n)=>ot.filter(i=>i.key===e).map(i=>i.cb(t,n)),ir=(e,t)=>ot.push({key:e,cb:t}),rr=e=>Object.assign(Se,e),ze=()=>({...Se}),sr=e=>{U(e,(t,n)=>{Se[t]&&(Se[t][0]=Wt(n,Se[t][0],Se[t][1]))})},Se={id:[null,E.STRING],name:["filepond",E.STRING],disabled:[!1,E.BOOLEAN],className:[null,E.STRING],required:[!1,E.BOOLEAN],captureMethod:[null,E.STRING],allowSyncAcceptAttribute:[!0,E.BOOLEAN],allowDrop:[!0,E.BOOLEAN],allowBrowse:[!0,E.BOOLEAN],allowPaste:[!0,E.BOOLEAN],allowMultiple:[!1,E.BOOLEAN],allowReplace:[!0,E.BOOLEAN],allowRevert:[!0,E.BOOLEAN],allowRemove:[!0,E.BOOLEAN],allowProcess:[!0,E.BOOLEAN],allowReorder:[!1,E.BOOLEAN],allowDirectoriesOnly:[!1,E.BOOLEAN],storeAsFile:[!1,E.BOOLEAN],forceRevert:[!1,E.BOOLEAN],maxFiles:[null,E.INT],checkValidity:[!1,E.BOOLEAN],itemInsertLocationFreedom:[!0,E.BOOLEAN],itemInsertLocation:["before",E.STRING],itemInsertInterval:[75,E.INT],dropOnPage:[!1,E.BOOLEAN],dropOnElement:[!0,E.BOOLEAN],dropValidation:[!1,E.BOOLEAN],ignoredFiles:[[".ds_store","thumbs.db","desktop.ini"],E.ARRAY],instantUpload:[!0,E.BOOLEAN],maxParallelUploads:[2,E.INT],allowMinimumUploadDuration:[!0,E.BOOLEAN],chunkUploads:[!1,E.BOOLEAN],chunkForce:[!1,E.BOOLEAN],chunkSize:[5e6,E.INT],chunkRetryDelays:[[500,1e3,3e3],E.ARRAY],server:[null,E.SERVER_API],fileSizeBase:[1e3,E.INT],labelFileSizeBytes:["bytes",E.STRING],labelFileSizeKilobytes:["KB",E.STRING],labelFileSizeMegabytes:["MB",E.STRING],labelFileSizeGigabytes:["GB",E.STRING],labelDecimalSeparator:[Qt(),E.STRING],labelThousandsSeparator:[nr(),E.STRING],labelIdle:['Drag & Drop your files or <span class="filepond--label-action">Browse</span>',E.STRING],labelInvalidField:["Field contains invalid files",E.STRING],labelFileWaitingForSize:["Waiting for size",E.STRING],labelFileSizeNotAvailable:["Size not available",E.STRING],labelFileCountSingular:["file in list",E.STRING],labelFileCountPlural:["files in list",E.STRING],labelFileLoading:["Loading",E.STRING],labelFileAdded:["Added",E.STRING],labelFileLoadError:["Error during load",E.STRING],labelFileRemoved:["Removed",E.STRING],labelFileRemoveError:["Error during remove",E.STRING],labelFileProcessing:["Uploading",E.STRING],labelFileProcessingComplete:["Upload complete",E.STRING],labelFileProcessingAborted:["Upload cancelled",E.STRING],labelFileProcessingError:["Error during upload",E.STRING],labelFileProcessingRevertError:["Error during revert",E.STRING],labelTapToCancel:["tap to cancel",E.STRING],labelTapToRetry:["tap to retry",E.STRING],labelTapToUndo:["tap to undo",E.STRING],labelButtonRemoveItem:["Remove",E.STRING],labelButtonAbortItemLoad:["Abort",E.STRING],labelButtonRetryItemLoad:["Retry",E.STRING],labelButtonAbortItemProcessing:["Cancel",E.STRING],labelButtonUndoItemProcessing:["Undo",E.STRING],labelButtonRetryItemProcessing:["Retry",E.STRING],labelButtonProcessItem:["Upload",E.STRING],iconRemove:['<svg width="26" height="26" viewBox="0 0 26 26" xmlns="http://www.w3.org/2000/svg"><path d="M11.586 13l-2.293 2.293a1 1 0 0 0 1.414 1.414L13 14.414l2.293 2.293a1 1 0 0 0 1.414-1.414L14.414 13l2.293-2.293a1 1 0 0 0-1.414-1.414L13 11.586l-2.293-2.293a1 1 0 0 0-1.414 1.414L11.586 13z" fill="currentColor" fill-rule="nonzero"/></svg>',E.STRING],iconProcess:['<svg width="26" height="26" viewBox="0 0 26 26" xmlns="http://www.w3.org/2000/svg"><path d="M14 10.414v3.585a1 1 0 0 1-2 0v-3.585l-1.293 1.293a1 1 0 0 1-1.414-1.415l3-3a1 1 0 0 1 1.414 0l3 3a1 1 0 0 1-1.414 1.415L14 10.414zM9 18a1 1 0 0 1 0-2h8a1 1 0 0 1 0 2H9z" fill="currentColor" fill-rule="evenodd"/></svg>',E.STRING],iconRetry:['<svg width="26" height="26" viewBox="0 0 26 26" xmlns="http://www.w3.org/2000/svg"><path d="M10.81 9.185l-.038.02A4.997 4.997 0 0 0 8 13.683a5 5 0 0 0 5 5 5 5 0 0 0 5-5 1 1 0 0 1 2 0A7 7 0 1 1 9.722 7.496l-.842-.21a.999.999 0 1 1 .484-1.94l3.23.806c.535.133.86.675.73 1.21l-.804 3.233a.997.997 0 0 1-1.21.73.997.997 0 0 1-.73-1.21l.23-.928v-.002z" fill="currentColor" fill-rule="nonzero"/></svg>',E.STRING],iconUndo:['<svg width="26" height="26" viewBox="0 0 26 26" xmlns="http://www.w3.org/2000/svg"><path d="M9.185 10.81l.02-.038A4.997 4.997 0 0 1 13.683 8a5 5 0 0 1 5 5 5 5 0 0 1-5 5 1 1 0 0 0 0 2A7 7 0 1 0 7.496 9.722l-.21-.842a.999.999 0 1 0-1.94.484l.806 3.23c.133.535.675.86 1.21.73l3.233-.803a.997.997 0 0 0 .73-1.21.997.997 0 0 0-1.21-.73l-.928.23-.002-.001z" fill="currentColor" fill-rule="nonzero"/></svg>',E.STRING],iconDone:['<svg width="26" height="26" viewBox="0 0 26 26" xmlns="http://www.w3.org/2000/svg"><path d="M18.293 9.293a1 1 0 0 1 1.414 1.414l-7.002 7a1 1 0 0 1-1.414 0l-3.998-4a1 1 0 1 1 1.414-1.414L12 15.586l6.294-6.293z" fill="currentColor" fill-rule="nonzero"/></svg>',E.STRING],oninit:[null,E.FUNCTION],onwarning:[null,E.FUNCTION],onerror:[null,E.FUNCTION],onactivatefile:[null,E.FUNCTION],oninitfile:[null,E.FUNCTION],onaddfilestart:[null,E.FUNCTION],onaddfileprogress:[null,E.FUNCTION],onaddfile:[null,E.FUNCTION],onprocessfilestart:[null,E.FUNCTION],onprocessfileprogress:[null,E.FUNCTION],onprocessfileabort:[null,E.FUNCTION],onprocessfilerevert:[null,E.FUNCTION],onprocessfile:[null,E.FUNCTION],onprocessfiles:[null,E.FUNCTION],onremovefile:[null,E.FUNCTION],onpreparefile:[null,E.FUNCTION],onupdatefiles:[null,E.FUNCTION],onreorderfiles:[null,E.FUNCTION],beforeDropFile:[null,E.FUNCTION],beforeAddFile:[null,E.FUNCTION],beforeRemoveFile:[null,E.FUNCTION],beforePrepareFile:[null,E.FUNCTION],stylePanelLayout:[null,E.STRING],stylePanelAspectRatio:[null,E.STRING],styleItemPanelAspectRatio:[null,E.STRING],styleButtonRemoveItemPosition:["left",E.STRING],styleButtonProcessItemPosition:["right",E.STRING],styleLoadIndicatorPosition:["right",E.STRING],styleProgressIndicatorPosition:["right",E.STRING],styleButtonRemoveItemAlign:[!1,E.BOOLEAN],files:[[],E.ARRAY],credits:[["https://pqina.nl/","Powered by PQINA"],E.ARRAY]},ge=(e,t)=>ae(t)?e[0]||null:be(t)?e[t]||null:(typeof t=="object"&&(t=t.id),e.find(n=>n.id===t)||null),Zt=e=>{if(ae(e))return e;if(/:/.test(e)){const t=e.split(":");return t[1]/t[0]}return parseFloat(e)},se=e=>e.filter(t=>!t.archived),or={EMPTY:0,IDLE:1,ERROR:2,BUSY:3,READY:4};let ke=null;const ar=()=>{if(ke===null)try{const e=new DataTransfer;e.items.add(new File(["hello world"],"This_Works.txt"));const t=document.createElement("input");t.setAttribute("type","file"),t.files=e.files,ke=t.files.length===1}catch{ke=!1}return ke},lr=[P.LOAD_ERROR,P.PROCESSING_ERROR,P.PROCESSING_REVERT_ERROR],cr=[P.LOADING,P.PROCESSING,P.PROCESSING_QUEUED,P.INIT],dr=[P.PROCESSING_COMPLETE],fr=e=>lr.includes(e.status),pr=e=>cr.includes(e.status),ur=e=>dr.includes(e.status),Kt=e=>$(e.options.server)&&($(e.options.server.process)||Ee(e.options.server.process)),Er=e=>({GET_STATUS:()=>{const t=se(e.items),{EMPTY:n,ERROR:i,BUSY:r,IDLE:o,READY:s}=or;return t.length===0?n:t.some(fr)?i:t.some(pr)?r:t.some(ur)?s:o},GET_ITEM:t=>ge(e.items,t),GET_ACTIVE_ITEM:t=>ge(se(e.items),t),GET_ACTIVE_ITEMS:()=>se(e.items),GET_ITEMS:()=>e.items,GET_ITEM_NAME:t=>{const n=ge(e.items,t);return n?n.filename:null},GET_ITEM_SIZE:t=>{const n=ge(e.items,t);return n?n.fileSize:null},GET_STYLES:()=>Object.keys(e.options).filter(t=>/^style/.test(t)).map(t=>({name:t,value:e.options[t]})),GET_PANEL_ASPECT_RATIO:()=>/circle/.test(e.options.stylePanelLayout)?1:Zt(e.options.stylePanelAspectRatio),GET_ITEM_PANEL_ASPECT_RATIO:()=>e.options.styleItemPanelAspectRatio,GET_ITEMS_BY_STATUS:t=>se(e.items).filter(n=>n.status===t),GET_TOTAL_ITEMS:()=>se(e.items).length,SHOULD_UPDATE_FILE_INPUT:()=>e.options.storeAsFile&&ar()&&!Kt(e),IS_ASYNC:()=>Kt(e),GET_FILE_SIZE_LABELS:t=>({labelBytes:t("GET_LABEL_FILE_SIZE_BYTES")||void 0,labelKilobytes:t("GET_LABEL_FILE_SIZE_KILOBYTES")||void 0,labelMegabytes:t("GET_LABEL_FILE_SIZE_MEGABYTES")||void 0,labelGigabytes:t("GET_LABEL_FILE_SIZE_GIGABYTES")||void 0})}),mr=e=>{const t=se(e.items).length;if(!e.options.allowMultiple)return t===0;const n=e.options.maxFiles;return n===null||t<n},Jt=(e,t,n)=>Math.max(Math.min(n,e),t),gr=(e,t,n)=>e.splice(t,0,n),Ir=(e,t,n)=>ae(t)?null:typeof n>"u"?(e.push(t),t):(n=Jt(n,0,e.length),gr(e,n,t),t),at=e=>/^\s*data:([a-z]+\/[a-z0-9-+.]+(;[a-z-]+=[a-z0-9-]+)?)?(;base64)?,([a-z0-9!$&',()*+;=\-._~:@\/?%\s]*)\s*$/i.test(e),Le=e=>`${e}`.split("/").pop().split("?").shift(),He=e=>e.split(".").pop(),_r=e=>{if(typeof e!="string")return"";const t=e.split("/").pop();return/svg/.test(t)?"svg":/zip|compressed/.test(t)?"zip":/plain/.test(t)?"txt":/msword/.test(t)?"doc":/[a-z]+/.test(t)?t==="jpeg"?"jpg":t:""},we=(e,t="")=>(t+e).slice(-t.length),en=(e=new Date)=>`${e.getFullYear()}-${we(e.getMonth()+1,"00")}-${we(e.getDate(),"00")}_${we(e.getHours(),"00")}-${we(e.getMinutes(),"00")}-${we(e.getSeconds(),"00")}`,Oe=(e,t,n=null,i=null)=>{const r=typeof n=="string"?e.slice(0,e.size,n):e.slice(0,e.size,e.type);return r.lastModifiedDate=new Date,e._relativePath&&(r._relativePath=e._relativePath),Z(t)||(t=en()),t&&i===null&&He(t)?r.name=t:(i=i||_r(r.type),r.name=t+(i?"."+i:"")),r},hr=()=>window.BlobBuilder=window.BlobBuilder||window.WebKitBlobBuilder||window.MozBlobBuilder||window.MSBlobBuilder,tn=(e,t)=>{const n=hr();if(n){const i=new n;return i.append(e),i.getBlob(t)}return new Blob([e],{type:t})},Tr=(e,t)=>{const n=new ArrayBuffer(e.length),i=new Uint8Array(n);for(let r=0;r<e.length;r++)i[r]=e.charCodeAt(r);return tn(n,t)},nn=e=>(/^data:(.+);/.exec(e)||[])[1]||null,Rr=e=>e.split(",")[1].replace(/\s/g,""),br=e=>atob(Rr(e)),Sr=e=>{const t=nn(e),n=br(e);return Tr(n,t)},Or=(e,t,n)=>Oe(Sr(e),t,null,n),Dr=e=>{if(!/^content-disposition:/i.test(e))return null;const t=e.split(/filename=|filename\*=.+''/).splice(1).map(n=>n.trim().replace(/^["']|[;"']{0,2}$/g,"")).filter(n=>n.length);return t.length?decodeURI(t[t.length-1]):null},yr=e=>{if(/content-length:/i.test(e)){const t=e.match(/[0-9]+/)[0];return t?parseInt(t,10):null}return null},Ar=e=>/x-content-transfer-id:/i.test(e)&&(e.split(":")[1]||"").trim()||null,lt=e=>{const t={source:null,name:null,size:null},n=e.split(`
`);for(let i of n){const r=Dr(i);if(r){t.name=r;continue}const o=yr(i);if(o){t.size=o;continue}const s=Ar(i);if(s){t.source=s;continue}}return t},Lr=e=>{const t={source:null,complete:!1,progress:0,size:null,timestamp:null,duration:0,request:null},n=()=>t.progress,i=()=>{t.request&&t.request.abort&&t.request.abort()},r=()=>{const l=t.source;s.fire("init",l),l instanceof File?s.fire("load",l):l instanceof Blob?s.fire("load",Oe(l,l.name)):at(l)?s.fire("load",Or(l)):o(l)},o=l=>{if(!e){s.fire("error",{type:"error",body:"Can't load URL",code:400});return}t.timestamp=Date.now(),t.request=e(l,a=>{t.duration=Date.now()-t.timestamp,t.complete=!0,a instanceof Blob&&(a=Oe(a,a.name||Le(l))),s.fire("load",a instanceof Blob?a:a?a.body:null)},a=>{s.fire("error",typeof a=="string"?{type:"error",code:0,body:a}:a)},(a,d,c)=>{if(c&&(t.size=c),t.duration=Date.now()-t.timestamp,!a){t.progress=null;return}t.progress=d/c,s.fire("progress",t.progress)},()=>{s.fire("abort")},a=>{const d=lt(typeof a=="string"?a:a.headers);s.fire("meta",{size:t.size||d.size,filename:d.name,source:d.source})})},s={...Ve(),setSource:l=>t.source=l,getProgress:n,abort:i,load:r};return s},rn=e=>/GET|HEAD/.test(e),Ie=(e,t,n)=>{const i={onheaders:()=>{},onprogress:()=>{},onload:()=>{},ontimeout:()=>{},onerror:()=>{},onabort:()=>{},abort:()=>{r=!0,s.abort()}};let r=!1,o=!1;n={method:"POST",headers:{},withCredentials:!1,...n},t=encodeURI(t),rn(n.method)&&e&&(t=`${t}${encodeURIComponent(typeof e=="string"?e:JSON.stringify(e))}`);const s=new XMLHttpRequest,l=rn(n.method)?s:s.upload;return l.onprogress=a=>{r||i.onprogress(a.lengthComputable,a.loaded,a.total)},s.onreadystatechange=()=>{s.readyState<2||s.readyState===4&&s.status===0||o||(o=!0,i.onheaders(s))},s.onload=()=>{s.status>=200&&s.status<300?i.onload(s):i.onerror(s)},s.onerror=()=>i.onerror(s),s.onabort=()=>{r=!0,i.onabort()},s.ontimeout=()=>i.ontimeout(s),s.open(n.method,t,!0),be(n.timeout)&&(s.timeout=n.timeout),Object.keys(n.headers).forEach(a=>{const d=unescape(encodeURIComponent(n.headers[a]));s.setRequestHeader(a,d)}),n.responseType&&(s.responseType=n.responseType),n.withCredentials&&(s.withCredentials=!0),s.send(e),i},V=(e,t,n,i)=>({type:e,code:t,body:n,headers:i}),_e=e=>t=>{e(V("error",0,"Timeout",t.getAllResponseHeaders()))},sn=e=>/\?/.test(e),Me=(...e)=>{let t="";return e.forEach(n=>{t+=sn(t)&&sn(n)?n.replace(/\?/,"&"):n}),t},ct=(e="",t)=>{if(typeof t=="function")return t;if(!t||!Z(t.url))return null;const n=t.onload||(r=>r),i=t.onerror||(r=>null);return(r,o,s,l,a,d)=>{const c=Ie(r,Me(e,t.url),{...t,responseType:"blob"});return c.onload=f=>{const u=f.getAllResponseHeaders(),g=lt(u).name||Le(r);o(V("load",f.status,t.method==="HEAD"?null:Oe(n(f.response),g),u))},c.onerror=f=>{s(V("error",f.status,i(f.response)||f.statusText,f.getAllResponseHeaders()))},c.onheaders=f=>{d(V("headers",f.status,null,f.getAllResponseHeaders()))},c.ontimeout=_e(s),c.onprogress=l,c.onabort=a,c}},ne={QUEUED:0,COMPLETE:1,PROCESSING:2,ERROR:3,WAITING:4},wr=(e,t,n,i,r,o,s,l,a,d,c)=>{const f=[],{chunkTransferId:u,chunkServer:g,chunkSize:p,chunkRetryDelays:m}=c,S={serverId:u,aborted:!1},h=t.ondata||(_=>_),b=t.onload||((_,x)=>x==="HEAD"?_.getResponseHeader("Upload-Offset"):_.response),A=t.onerror||(_=>null),L=_=>{const x=new FormData;$(r)&&x.append(n,JSON.stringify(r));const I=typeof t.headers=="function"?t.headers(i,r):{...t.headers,"Upload-Length":i.size},T={...t,headers:I},y=Ie(h(x),Me(e,t.url),T);y.onload=w=>_(b(w,T.method)),y.onerror=w=>s(V("error",w.status,A(w.response)||w.statusText,w.getAllResponseHeaders())),y.ontimeout=_e(s)},O=_=>{const x=Me(e,g.url,S.serverId),T={headers:typeof t.headers=="function"?t.headers(S.serverId):{...t.headers},method:"HEAD"},y=Ie(null,x,T);y.onload=w=>_(b(w,T.method)),y.onerror=w=>s(V("error",w.status,A(w.response)||w.statusText,w.getAllResponseHeaders())),y.ontimeout=_e(s)},C=Math.floor(i.size/p);for(let _=0;_<=C;_++){const x=_*p,I=i.slice(x,x+p,"application/offset+octet-stream");f[_]={index:_,size:I.size,offset:x,data:I,file:i,progress:0,retries:[...m],status:ne.QUEUED,error:null,request:null,timeout:null}}const B=()=>o(S.serverId),R=_=>_.status===ne.QUEUED||_.status===ne.ERROR,M=_=>{if(S.aborted)return;if(_=_||f.find(R),!_){f.every(N=>N.status===ne.COMPLETE)&&B();return}_.status=ne.PROCESSING,_.progress=null;const x=g.ondata||(N=>N),I=g.onerror||(N=>null),T=g.onload||(()=>{}),y=Me(e,g.url,S.serverId),w=typeof g.headers=="function"?g.headers(_):{...g.headers,"Content-Type":"application/offset+octet-stream","Upload-Offset":_.offset,"Upload-Length":i.size,"Upload-Name":i.name},q=_.request=Ie(x(_.data),y,{...g,headers:w});q.onload=N=>{T(N,_.index,f.length),_.status=ne.COMPLETE,_.request=null,v()},q.onprogress=(N,et,di)=>{_.progress=N?et:null,D()},q.onerror=N=>{_.status=ne.ERROR,_.request=null,_.error=I(N.response)||N.statusText,F(_)||s(V("error",N.status,I(N.response)||N.statusText,N.getAllResponseHeaders()))},q.ontimeout=N=>{_.status=ne.ERROR,_.request=null,F(_)||_e(s)(N)},q.onabort=()=>{_.status=ne.QUEUED,_.request=null,a()}},F=_=>_.retries.length===0?!1:(_.status=ne.WAITING,clearTimeout(_.timeout),_.timeout=setTimeout(()=>{M(_)},_.retries.shift()),!0),D=()=>{const _=f.reduce((I,T)=>I===null||T.progress===null?null:I+T.progress,0);if(_===null)return l(!1,0,0);const x=f.reduce((I,T)=>I+T.size,0);l(!0,_,x)},v=()=>{f.filter(x=>x.status===ne.PROCESSING).length>=1||M()},W=()=>{f.forEach(_=>{clearTimeout(_.timeout),_.request&&_.request.abort()})};return S.serverId?O(_=>{S.aborted||(f.filter(x=>x.offset<_).forEach(x=>{x.status=ne.COMPLETE,x.progress=x.size}),v())}):L(_=>{S.aborted||(d(_),S.serverId=_,v())}),{abort:()=>{S.aborted=!0,W()}}},Mr=(e,t,n,i)=>(r,o,s,l,a,d,c)=>{if(!r)return;const f=i.chunkUploads,u=f&&r.size>i.chunkSize,g=f&&(u||i.chunkForce);if(r instanceof Blob&&g)return wr(e,t,n,r,o,s,l,a,d,c,i);const p=t.ondata||(O=>O),m=t.onload||(O=>O),S=t.onerror||(O=>null),h=typeof t.headers=="function"?t.headers(r,o)||{}:{...t.headers},b={...t,headers:h};var A=new FormData;$(o)&&A.append(n,JSON.stringify(o)),(r instanceof Blob?[{name:null,file:r}]:r).forEach(O=>{A.append(n,O.file,O.name===null?O.file.name:`${O.name}${O.file.name}`)});const L=Ie(p(A),Me(e,t.url),b);return L.onload=O=>{s(V("load",O.status,m(O.response),O.getAllResponseHeaders()))},L.onerror=O=>{l(V("error",O.status,S(O.response)||O.statusText,O.getAllResponseHeaders()))},L.ontimeout=_e(l),L.onprogress=a,L.onabort=d,L},Pr=(e="",t,n,i)=>typeof t=="function"?(...r)=>t(n,...r,i):!t||!Z(t.url)?null:Mr(e,t,n,i),Pe=(e="",t)=>{if(typeof t=="function")return t;if(!t||!Z(t.url))return(r,o)=>o();const n=t.onload||(r=>r),i=t.onerror||(r=>null);return(r,o,s)=>{const l=Ie(r,e+t.url,t);return l.onload=a=>{o(V("load",a.status,n(a.response),a.getAllResponseHeaders()))},l.onerror=a=>{s(V("error",a.status,i(a.response)||a.statusText,a.getAllResponseHeaders()))},l.ontimeout=_e(s),l}},on=(e=0,t=1)=>e+Math.random()*(t-e),Cr=(e,t=1e3,n=0,i=25,r=250)=>{let o=null;const s=Date.now(),l=()=>{let a=Date.now()-s,d=on(i,r);a+d>t&&(d=a+d-t);let c=a/t;if(c>=1||document.hidden){e(1);return}e(c),o=setTimeout(l,d)};return t>0&&l(),{clear:()=>{clearTimeout(o)}}},vr=(e,t)=>{const n={complete:!1,perceivedProgress:0,perceivedPerformanceUpdater:null,progress:null,timestamp:null,perceivedDuration:0,duration:0,request:null,response:null},{allowMinimumUploadDuration:i}=t,r=(c,f)=>{const u=()=>{n.duration===0||n.progress===null||d.fire("progress",d.getProgress())},g=()=>{n.complete=!0,d.fire("load-perceived",n.response.body)};d.fire("start"),n.timestamp=Date.now(),n.perceivedPerformanceUpdater=Cr(p=>{n.perceivedProgress=p,n.perceivedDuration=Date.now()-n.timestamp,u(),n.response&&n.perceivedProgress===1&&!n.complete&&g()},i?on(750,1500):0),n.request=e(c,f,p=>{n.response=$(p)?p:{type:"load",code:200,body:`${p}`,headers:{}},n.duration=Date.now()-n.timestamp,n.progress=1,d.fire("load",n.response.body),(!i||i&&n.perceivedProgress===1)&&g()},p=>{n.perceivedPerformanceUpdater.clear(),d.fire("error",$(p)?p:{type:"error",code:0,body:`${p}`})},(p,m,S)=>{n.duration=Date.now()-n.timestamp,n.progress=p?m/S:null,u()},()=>{n.perceivedPerformanceUpdater.clear(),d.fire("abort",n.response?n.response.body:null)},p=>{d.fire("transfer",p)})},o=()=>{n.request&&(n.perceivedPerformanceUpdater.clear(),n.request.abort&&n.request.abort(),n.complete=!0)},s=()=>{o(),n.complete=!1,n.perceivedProgress=0,n.progress=0,n.timestamp=null,n.perceivedDuration=0,n.duration=0,n.request=null,n.response=null},l=i?()=>n.progress?Math.min(n.progress,n.perceivedProgress):null:()=>n.progress||null,a=i?()=>Math.min(n.duration,n.perceivedDuration):()=>n.duration,d={...Ve(),process:r,abort:o,getProgress:l,getDuration:a,reset:s};return d},an=e=>e.substring(0,e.lastIndexOf("."))||e,Nr=e=>{let t=[e.name,e.size,e.type];return e instanceof Blob||at(e)?t[0]=e.name||en():at(e)?(t[1]=e.length,t[2]=nn(e)):Z(e)&&(t[0]=Le(e),t[1]=0,t[2]="application/octet-stream"),{name:t[0],size:t[1],type:t[2]}},he=e=>!!(e instanceof File||e instanceof Blob&&e.name),ln=e=>{if(!$(e))return e;const t=Fe(e)?[]:{};for(const n in e){if(!e.hasOwnProperty(n))continue;const i=e[n];t[n]=i&&$(i)?ln(i):i}return t},Gr=(e=null,t=null,n=null)=>{const i=rt(),r={archived:!1,frozen:!1,released:!1,source:null,file:n,serverFileReference:t,transferId:null,processingAborted:!1,status:t?P.PROCESSING_COMPLETE:P.INIT,activeLoader:null,activeProcessor:null};let o=null;const s={},l=R=>r.status=R,a=(R,...M)=>{r.released||r.frozen||C.fire(R,...M)},d=()=>He(r.file.name),c=()=>r.file.type,f=()=>r.file.size,u=()=>r.file,g=(R,M,F)=>{if(r.source=R,C.fireSync("init"),r.file){C.fireSync("load-skip");return}r.file=Nr(R),M.on("init",()=>{a("load-init")}),M.on("meta",D=>{r.file.size=D.size,r.file.filename=D.filename,D.source&&(e=Y.LIMBO,r.serverFileReference=D.source,r.status=P.PROCESSING_COMPLETE),a("load-meta")}),M.on("progress",D=>{l(P.LOADING),a("load-progress",D)}),M.on("error",D=>{l(P.LOAD_ERROR),a("load-request-error",D)}),M.on("abort",()=>{l(P.INIT),a("load-abort")}),M.on("load",D=>{r.activeLoader=null;const v=_=>{r.file=he(_)?_:r.file,e===Y.LIMBO&&r.serverFileReference?l(P.PROCESSING_COMPLETE):l(P.IDLE),a("load")},W=_=>{r.file=D,a("load-meta"),l(P.LOAD_ERROR),a("load-file-error",_)};if(r.serverFileReference){v(D);return}F(D,v,W)}),M.setSource(R),r.activeLoader=M,M.load()},p=()=>{r.activeLoader&&r.activeLoader.load()},m=()=>{if(r.activeLoader){r.activeLoader.abort();return}l(P.INIT),a("load-abort")},S=(R,M)=>{if(r.processingAborted){r.processingAborted=!1;return}if(l(P.PROCESSING),o=null,!(r.file instanceof Blob)){C.on("load",()=>{S(R,M)});return}R.on("load",v=>{r.transferId=null,r.serverFileReference=v}),R.on("transfer",v=>{r.transferId=v}),R.on("load-perceived",v=>{r.activeProcessor=null,r.transferId=null,r.serverFileReference=v,l(P.PROCESSING_COMPLETE),a("process-complete",v)}),R.on("start",()=>{a("process-start")}),R.on("error",v=>{r.activeProcessor=null,l(P.PROCESSING_ERROR),a("process-error",v)}),R.on("abort",v=>{r.activeProcessor=null,r.serverFileReference=v,l(P.IDLE),a("process-abort"),o&&o()}),R.on("progress",v=>{a("process-progress",v)});const F=v=>{r.archived||R.process(v,{...s})},D=console.error;M(r.file,F,D),r.activeProcessor=R},h=()=>{r.processingAborted=!1,l(P.PROCESSING_QUEUED)},b=()=>new Promise(R=>{if(!r.activeProcessor){r.processingAborted=!0,l(P.IDLE),a("process-abort"),R();return}o=()=>{R()},r.activeProcessor.abort()}),A=(R,M)=>new Promise((F,D)=>{const v=r.serverFileReference!==null?r.serverFileReference:r.transferId;if(v===null){F();return}R(v,()=>{r.serverFileReference=null,r.transferId=null,F()},W=>{if(!M){F();return}l(P.PROCESSING_REVERT_ERROR),a("process-revert-error"),D(W)}),l(P.IDLE),a("process-revert")}),L=(R,M,F)=>{const D=R.split("."),v=D[0],W=D.pop();let _=s;D.forEach(x=>_=_[x]),JSON.stringify(_[W])!==JSON.stringify(M)&&(_[W]=M,a("metadata-update",{key:v,value:s[v],silent:F}))},C={id:{get:()=>i},origin:{get:()=>e,set:R=>e=R},serverId:{get:()=>r.serverFileReference},transferId:{get:()=>r.transferId},status:{get:()=>r.status},filename:{get:()=>r.file.name},filenameWithoutExtension:{get:()=>an(r.file.name)},fileExtension:{get:d},fileType:{get:c},fileSize:{get:f},file:{get:u},relativePath:{get:()=>r.file._relativePath},source:{get:()=>r.source},getMetadata:R=>ln(R?s[R]:s),setMetadata:(R,M,F)=>{if($(R)){const D=R;return Object.keys(D).forEach(v=>{L(v,D[v],M)}),R}return L(R,M,F),M},extend:(R,M)=>B[R]=M,abortLoad:m,retryLoad:p,requestProcessing:h,abortProcessing:b,load:g,process:S,revert:A,...Ve(),freeze:()=>r.frozen=!0,release:()=>r.released=!0,released:{get:()=>r.released},archive:()=>r.archived=!0,archived:{get:()=>r.archived},setFile:R=>r.file=R},B=de(C);return B},Fr=(e,t)=>ae(t)?0:Z(t)?e.findIndex(n=>n.id===t):-1,cn=(e,t)=>{const n=Fr(e,t);if(!(n<0))return e[n]||null},dn=(e,t,n,i,r,o)=>{const s=Ie(null,e,{method:"GET",responseType:"blob"});return s.onload=l=>{const a=l.getAllResponseHeaders(),d=lt(a).name||Le(e);t(V("load",l.status,Oe(l.response,d),a))},s.onerror=l=>{n(V("error",l.status,l.statusText,l.getAllResponseHeaders()))},s.onheaders=l=>{o(V("headers",l.status,null,l.getAllResponseHeaders()))},s.ontimeout=_e(n),s.onprogress=i,s.onabort=r,s},fn=e=>(e.indexOf("//")===0&&(e=location.protocol+e),e.toLowerCase().replace("blob:","").replace(/([a-z])?:\/\//,"$1").split("/")[0]),xr=e=>(e.indexOf(":")>-1||e.indexOf("//")>-1)&&fn(location.href)!==fn(e),qe=e=>(...t)=>Ee(e)?e(...t):e,Br=e=>!he(e.file),dt=(e,t)=>{clearTimeout(t.listUpdateTimeout),t.listUpdateTimeout=setTimeout(()=>{e("DID_UPDATE_ITEMS",{items:se(t.items)})},0)},pn=(e,...t)=>new Promise(n=>{if(!e)return n(!0);const i=e(...t);if(i==null)return n(!0);if(typeof i=="boolean")return n(i);typeof i.then=="function"&&i.then(n)}),ft=(e,t)=>{e.items.sort((n,i)=>t(K(n),K(i)))},ie=(e,t)=>({query:n,success:i=()=>{},failure:r=()=>{},...o}={})=>{const s=ge(e.items,n);if(!s){r({error:V("error",0,"Item not found"),file:null});return}t(s,i,r,o||{})},Ur=(e,t,n)=>({ABORT_ALL:()=>{se(n.items).forEach(i=>{i.freeze(),i.abortLoad(),i.abortProcessing()})},DID_SET_FILES:({value:i=[]})=>{const r=i.map(s=>({source:s.source?s.source:s,options:s.options}));let o=se(n.items);o.forEach(s=>{r.find(l=>l.source===s.source||l.source===s.file)||e("REMOVE_ITEM",{query:s,remove:!1})}),o=se(n.items),r.forEach((s,l)=>{o.find(a=>a.source===s.source||a.file===s.source)||e("ADD_ITEM",{...s,interactionMethod:te.NONE,index:l})})},DID_UPDATE_ITEM_METADATA:({id:i,action:r,change:o})=>{o.silent||(clearTimeout(n.itemUpdateTimeout),n.itemUpdateTimeout=setTimeout(()=>{const s=cn(n.items,i);if(!t("IS_ASYNC")){re("SHOULD_PREPARE_OUTPUT",!1,{item:s,query:t,action:r,change:o}).then(c=>{const f=t("GET_BEFORE_PREPARE_FILE");f&&(c=f(s,c)),c&&e("REQUEST_PREPARE_OUTPUT",{query:i,item:s,success:u=>{e("DID_PREPARE_OUTPUT",{id:i,file:u})}},!0)});return}s.origin===Y.LOCAL&&e("DID_LOAD_ITEM",{id:s.id,error:null,serverFileReference:s.source});const l=()=>{setTimeout(()=>{e("REQUEST_ITEM_PROCESSING",{query:i})},32)},a=c=>{s.revert(Pe(n.options.server.url,n.options.server.revert),t("GET_FORCE_REVERT")).then(c?l:()=>{}).catch(()=>{})},d=c=>{s.abortProcessing().then(c?l:()=>{})};if(s.status===P.PROCESSING_COMPLETE)return a(n.options.instantUpload);if(s.status===P.PROCESSING)return d(n.options.instantUpload);n.options.instantUpload&&l()},0))},MOVE_ITEM:({query:i,index:r})=>{const o=ge(n.items,i);if(!o)return;const s=n.items.indexOf(o);r=Jt(r,0,n.items.length-1),s!==r&&n.items.splice(r,0,n.items.splice(s,1)[0])},SORT:({compare:i})=>{ft(n,i),e("DID_SORT_ITEMS",{items:t("GET_ACTIVE_ITEMS")})},ADD_ITEMS:({items:i,index:r,interactionMethod:o,success:s=()=>{},failure:l=()=>{}})=>{let a=r;if(r===-1||typeof r>"u"){const g=t("GET_ITEM_INSERT_LOCATION"),p=t("GET_TOTAL_ITEMS");a=g==="before"?0:p}const d=t("GET_IGNORED_FILES"),c=g=>he(g)?!d.includes(g.name.toLowerCase()):!ae(g),u=i.filter(c).map(g=>new Promise((p,m)=>{e("ADD_ITEM",{interactionMethod:o,source:g.source||g,success:p,failure:m,index:a++,options:g.options||{}})}));Promise.all(u).then(s).catch(l)},ADD_ITEM:({source:i,index:r=-1,interactionMethod:o,success:s=()=>{},failure:l=()=>{},options:a={}})=>{if(ae(i)){l({error:V("error",0,"No source"),file:null});return}if(he(i)&&n.options.ignoredFiles.includes(i.name.toLowerCase()))return;if(!mr(n)){if(n.options.allowMultiple||!n.options.allowMultiple&&!n.options.allowReplace){const b=V("warning",0,"Max files");e("DID_THROW_MAX_FILES",{source:i,error:b}),l({error:b,file:null});return}const h=se(n.items)[0];if(h.status===P.PROCESSING_COMPLETE||h.status===P.PROCESSING_REVERT_ERROR){const b=t("GET_FORCE_REVERT");if(h.revert(Pe(n.options.server.url,n.options.server.revert),b).then(()=>{b&&e("ADD_ITEM",{source:i,index:r,interactionMethod:o,success:s,failure:l,options:a})}).catch(()=>{}),b)return}e("REMOVE_ITEM",{query:h.id})}const d=a.type==="local"?Y.LOCAL:a.type==="limbo"?Y.LIMBO:Y.INPUT,c=Gr(d,d===Y.INPUT?null:i,a.file);Object.keys(a.metadata||{}).forEach(h=>{c.setMetadata(h,a.metadata[h])}),me("DID_CREATE_ITEM",c,{query:t,dispatch:e});const f=t("GET_ITEM_INSERT_LOCATION");n.options.itemInsertLocationFreedom||(r=f==="before"?-1:n.items.length),Ir(n.items,c,r),Ee(f)&&i&&ft(n,f);const u=c.id;c.on("init",()=>{e("DID_INIT_ITEM",{id:u})}),c.on("load-init",()=>{e("DID_START_ITEM_LOAD",{id:u})}),c.on("load-meta",()=>{e("DID_UPDATE_ITEM_META",{id:u})}),c.on("load-progress",h=>{e("DID_UPDATE_ITEM_LOAD_PROGRESS",{id:u,progress:h})}),c.on("load-request-error",h=>{const b=qe(n.options.labelFileLoadError)(h);if(h.code>=400&&h.code<500){e("DID_THROW_ITEM_INVALID",{id:u,error:h,status:{main:b,sub:`${h.code} (${h.body})`}}),l({error:h,file:K(c)});return}e("DID_THROW_ITEM_LOAD_ERROR",{id:u,error:h,status:{main:b,sub:n.options.labelTapToRetry}})}),c.on("load-file-error",h=>{e("DID_THROW_ITEM_INVALID",{id:u,error:h.status,status:h.status}),l({error:h.status,file:K(c)})}),c.on("load-abort",()=>{e("REMOVE_ITEM",{query:u})}),c.on("load-skip",()=>{c.on("metadata-update",h=>{he(c.file)&&e("DID_UPDATE_ITEM_METADATA",{id:u,change:h})}),e("COMPLETE_LOAD_ITEM",{query:u,item:c,data:{source:i,success:s}})}),c.on("load",()=>{const h=b=>{if(!b){e("REMOVE_ITEM",{query:u});return}c.on("metadata-update",A=>{e("DID_UPDATE_ITEM_METADATA",{id:u,change:A})}),re("SHOULD_PREPARE_OUTPUT",!1,{item:c,query:t}).then(A=>{const L=t("GET_BEFORE_PREPARE_FILE");L&&(A=L(c,A));const O=()=>{e("COMPLETE_LOAD_ITEM",{query:u,item:c,data:{source:i,success:s}}),dt(e,n)};if(A){e("REQUEST_PREPARE_OUTPUT",{query:u,item:c,success:C=>{e("DID_PREPARE_OUTPUT",{id:u,file:C}),O()}},!0);return}O()})};re("DID_LOAD_ITEM",c,{query:t,dispatch:e}).then(()=>{pn(t("GET_BEFORE_ADD_FILE"),K(c)).then(h)}).catch(b=>{if(!b||!b.error||!b.status)return h(!1);e("DID_THROW_ITEM_INVALID",{id:u,error:b.error,status:b.status})})}),c.on("process-start",()=>{e("DID_START_ITEM_PROCESSING",{id:u})}),c.on("process-progress",h=>{e("DID_UPDATE_ITEM_PROCESS_PROGRESS",{id:u,progress:h})}),c.on("process-error",h=>{e("DID_THROW_ITEM_PROCESSING_ERROR",{id:u,error:h,status:{main:qe(n.options.labelFileProcessingError)(h),sub:n.options.labelTapToRetry}})}),c.on("process-revert-error",h=>{e("DID_THROW_ITEM_PROCESSING_REVERT_ERROR",{id:u,error:h,status:{main:qe(n.options.labelFileProcessingRevertError)(h),sub:n.options.labelTapToRetry}})}),c.on("process-complete",h=>{e("DID_COMPLETE_ITEM_PROCESSING",{id:u,error:null,serverFileReference:h}),e("DID_DEFINE_VALUE",{id:u,value:h})}),c.on("process-abort",()=>{e("DID_ABORT_ITEM_PROCESSING",{id:u})}),c.on("process-revert",()=>{e("DID_REVERT_ITEM_PROCESSING",{id:u}),e("DID_DEFINE_VALUE",{id:u,value:null})}),e("DID_ADD_ITEM",{id:u,index:r,interactionMethod:o}),dt(e,n);const{url:g,load:p,restore:m,fetch:S}=n.options.server||{};c.load(i,Lr(d===Y.INPUT?Z(i)&&xr(i)&&S?ct(g,S):dn:d===Y.LIMBO?ct(g,m):ct(g,p)),(h,b,A)=>{re("LOAD_FILE",h,{query:t}).then(b).catch(A)})},REQUEST_PREPARE_OUTPUT:({item:i,success:r,failure:o=()=>{}})=>{const s={error:V("error",0,"Item not found"),file:null};if(i.archived)return o(s);re("PREPARE_OUTPUT",i.file,{query:t,item:i}).then(l=>{re("COMPLETE_PREPARE_OUTPUT",l,{query:t,item:i}).then(a=>{if(i.archived)return o(s);r(a)})})},COMPLETE_LOAD_ITEM:({item:i,data:r})=>{const{success:o,source:s}=r,l=t("GET_ITEM_INSERT_LOCATION");if(Ee(l)&&s&&ft(n,l),e("DID_LOAD_ITEM",{id:i.id,error:null,serverFileReference:i.origin===Y.INPUT?null:s}),o(K(i)),i.origin===Y.LOCAL){e("DID_LOAD_LOCAL_ITEM",{id:i.id});return}if(i.origin===Y.LIMBO){e("DID_COMPLETE_ITEM_PROCESSING",{id:i.id,error:null,serverFileReference:s}),e("DID_DEFINE_VALUE",{id:i.id,value:i.serverId||s});return}t("IS_ASYNC")&&n.options.instantUpload&&e("REQUEST_ITEM_PROCESSING",{query:i.id})},RETRY_ITEM_LOAD:ie(n,i=>{i.retryLoad()}),REQUEST_ITEM_PREPARE:ie(n,(i,r,o)=>{e("REQUEST_PREPARE_OUTPUT",{query:i.id,item:i,success:s=>{e("DID_PREPARE_OUTPUT",{id:i.id,file:s}),r({file:i,output:s})},failure:o},!0)}),REQUEST_ITEM_PROCESSING:ie(n,(i,r,o)=>{if(!(i.status===P.IDLE||i.status===P.PROCESSING_ERROR)){const l=()=>e("REQUEST_ITEM_PROCESSING",{query:i,success:r,failure:o}),a=()=>document.hidden?l():setTimeout(l,32);i.status===P.PROCESSING_COMPLETE||i.status===P.PROCESSING_REVERT_ERROR?i.revert(Pe(n.options.server.url,n.options.server.revert),t("GET_FORCE_REVERT")).then(a).catch(()=>{}):i.status===P.PROCESSING&&i.abortProcessing().then(a);return}i.status!==P.PROCESSING_QUEUED&&(i.requestProcessing(),e("DID_REQUEST_ITEM_PROCESSING",{id:i.id}),e("PROCESS_ITEM",{query:i,success:r,failure:o},!0))}),PROCESS_ITEM:ie(n,(i,r,o)=>{const s=t("GET_MAX_PARALLEL_UPLOADS");if(t("GET_ITEMS_BY_STATUS",P.PROCESSING).length===s){n.processingQueue.push({id:i.id,success:r,failure:o});return}if(i.status===P.PROCESSING)return;const a=()=>{const c=n.processingQueue.shift();if(!c)return;const{id:f,success:u,failure:g}=c,p=ge(n.items,f);if(!p||p.archived){a();return}e("PROCESS_ITEM",{query:f,success:u,failure:g},!0)};i.onOnce("process-complete",()=>{r(K(i)),a();const c=n.options.server;if(n.options.instantUpload&&i.origin===Y.LOCAL&&Ee(c.remove)){const g=()=>{};i.origin=Y.LIMBO,n.options.server.remove(i.source,g,g)}t("GET_ITEMS_BY_STATUS",P.PROCESSING_COMPLETE).length===n.items.length&&e("DID_COMPLETE_ITEM_PROCESSING_ALL")}),i.onOnce("process-error",c=>{o({error:c,file:K(i)}),a()});const d=n.options;i.process(vr(Pr(d.server.url,d.server.process,d.name,{chunkTransferId:i.transferId,chunkServer:d.server.patch,chunkUploads:d.chunkUploads,chunkForce:d.chunkForce,chunkSize:d.chunkSize,chunkRetryDelays:d.chunkRetryDelays}),{allowMinimumUploadDuration:t("GET_ALLOW_MINIMUM_UPLOAD_DURATION")}),(c,f,u)=>{re("PREPARE_OUTPUT",c,{query:t,item:i}).then(g=>{e("DID_PREPARE_OUTPUT",{id:i.id,file:g}),f(g)}).catch(u)})}),RETRY_ITEM_PROCESSING:ie(n,i=>{e("REQUEST_ITEM_PROCESSING",{query:i})}),REQUEST_REMOVE_ITEM:ie(n,i=>{pn(t("GET_BEFORE_REMOVE_FILE"),K(i)).then(r=>{r&&e("REMOVE_ITEM",{query:i})})}),RELEASE_ITEM:ie(n,i=>{i.release()}),REMOVE_ITEM:ie(n,(i,r,o,s)=>{const l=()=>{const d=i.id;cn(n.items,d).archive(),e("DID_REMOVE_ITEM",{error:null,id:d,item:i}),dt(e,n),r(K(i))},a=n.options.server;i.origin===Y.LOCAL&&a&&Ee(a.remove)&&s.remove!==!1?(e("DID_START_ITEM_REMOVE",{id:i.id}),a.remove(i.source,()=>l(),d=>{e("DID_THROW_ITEM_REMOVE_ERROR",{id:i.id,error:V("error",0,d,null),status:{main:qe(n.options.labelFileRemoveError)(d),sub:n.options.labelTapToRetry}})})):((s.revert&&i.origin!==Y.LOCAL&&i.serverId!==null||n.options.chunkUploads&&i.file.size>n.options.chunkSize||n.options.chunkUploads&&n.options.chunkForce)&&i.revert(Pe(n.options.server.url,n.options.server.revert),t("GET_FORCE_REVERT")),l())}),ABORT_ITEM_LOAD:ie(n,i=>{i.abortLoad()}),ABORT_ITEM_PROCESSING:ie(n,i=>{if(i.serverId){e("REVERT_ITEM_PROCESSING",{id:i.id});return}i.abortProcessing().then(()=>{n.options.instantUpload&&e("REMOVE_ITEM",{query:i.id})})}),REQUEST_REVERT_ITEM_PROCESSING:ie(n,i=>{if(!n.options.instantUpload){e("REVERT_ITEM_PROCESSING",{query:i});return}const r=l=>{l&&e("REVERT_ITEM_PROCESSING",{query:i})},o=t("GET_BEFORE_REMOVE_FILE");if(!o)return r(!0);const s=o(K(i));if(s==null)return r(!0);if(typeof s=="boolean")return r(s);typeof s.then=="function"&&s.then(r)}),REVERT_ITEM_PROCESSING:ie(n,i=>{i.revert(Pe(n.options.server.url,n.options.server.revert),t("GET_FORCE_REVERT")).then(()=>{(n.options.instantUpload||Br(i))&&e("REMOVE_ITEM",{query:i.id})}).catch(()=>{})}),SET_OPTIONS:({options:i})=>{const r=Object.keys(i),o=Vr.filter(l=>r.includes(l));[...o,...Object.keys(i).filter(l=>!o.includes(l))].forEach(l=>{e(`SET_${Ue(l,"_").toUpperCase()}`,{value:i[l]})})}}),Vr=["server"],pt=e=>e,le=e=>document.createElement(e),z=(e,t)=>{let n=e.childNodes[0];n?t!==n.nodeValue&&(n.nodeValue=t):(n=document.createTextNode(t),e.appendChild(n))},un=(e,t,n,i)=>{const r=(i%360-90)*Math.PI/180;return{x:e+n*Math.cos(r),y:t+n*Math.sin(r)}},zr=(e,t,n,i,r,o)=>{const s=un(e,t,n,r),l=un(e,t,n,i);return["M",s.x,s.y,"A",n,n,0,o,0,l.x,l.y].join(" ")},kr=(e,t,n,i,r)=>{let o=1;return r>i&&r-i<=.5&&(o=0),i>r&&i-r>=.5&&(o=0),zr(e,t,n,Math