var w=0,b,m;function C(e){if(!m||!b){b=Object.assign(document.createElement("a"),{className:"error-count",href:"#errors"});let t=Object.assign(document.createElement("h2"),{className:"error-count-wrapper"});t.append(b);let r=Object.assign(document.createElement("p"),{className:"error-note",textContent:"It could be due to a bug, or your input is not the correct format. If you'd like to report the error, please send me the entire error log below."});m=Object.assign(document.createElement("pre"),{className:"error-log"});let n=Object.assign(document.createElement("div"),{className:"error-wrapper",id:"errors"});n.append(r,m),document.body.append(t,n)}m.append(e,`
`),w++,b.textContent=`${w} error${w===1?"":"s"} occurred`}window.onerror=(e,t,r,n,o)=>{C(o?.stack?`Uncaught ${o.stack}`:`Uncaught ${o?.name??String(o)}: ${e} at ${t}:${r}${n!==void 0?":"+n:""}`)};window.addEventListener("unhandledrejection",e=>{C(e.reason?.stack?`Uncaught (in promise) ${e.reason.stack}`:e.reason instanceof Error?`Uncaught (in promise) ${e.reason.constructor.name}: ${e.reason.message}`:String(e.reason))});function u(e){return e>1e9?`${(e/1e9).toPrecision(3)} GB`:e>1e6?`${(e/1e6).toPrecision(3)} MB`:e>1e3?`${(e/1e3).toPrecision(3)} kB`:e!==1?`${e} bytes`:"1 byte"}function y(e){let t=e.lastIndexOf(".");return t===-1?e:e.slice(0,t)}var S=new TextEncoder;function L(e,t=[]){return e.find(({type:r})=>t.some(n=>r.startsWith(n)))??e[0]}function B(e){return e.kind==="string"?new Promise(t=>e.getAsString(t)):Promise.resolve(e.getAsFile())}function f({fileName:e=null,input:t,dropTarget:r,pasteTarget:n,onFile:o}){let i=t?.accept.replaceAll("*","").split(",")??[];async function d(a){if(a===null||(a instanceof DataTransfer?a.items:a).length===0)return;let c=a instanceof DataTransfer?await B(L(Array.from(a.items),i)):L(Array.from(a),i);if(c===null)return;let p=c instanceof File?`${c.name} \xB7 ${u(c.size)}`:`Plain text \xB7 ${u(S.encode(c).length)}`;try{(await o(c)??!0)&&e&&(e.textContent=p,e.classList.remove("file-error"))}catch(s){throw e&&(e.textContent=p+" \u2014 failed to load",e.classList.add("file-error")),s}}if(t?.addEventListener("change",()=>{d(t.files),t.value=""}),t?.dataset.default){let a=t.dataset.default,c=a.slice(a.lastIndexOf("/")+1);fetch(a).then(p=>p.blob()).catch(p=>{throw e&&(e.textContent=c+" \u2014 failed to load",e.classList.add("file-error")),p}).then(p=>d([new File([p],c,p)]))}r?.addEventListener("drop",async a=>{d(a.dataTransfer),r.classList.remove("drag-over"),a.preventDefault()}),r?.addEventListener("dragover",a=>{r.classList.add("drag-over"),a.preventDefault()}),r?.addEventListener("dragleave",()=>{r.classList.remove("drag-over")}),n&&document.addEventListener("paste",a=>{(a.target instanceof HTMLTextAreaElement||a.target instanceof HTMLInputElement)&&!a.target.readOnly&&!a.target.disabled||d(a.clipboardData)})}function T(e,t){let r=t?.closest(".reform\\:io");t&&!(t instanceof HTMLInputElement)?(console.warn(t,"is not an element"),t=null):t&&(t.dataset.ignore="true");let n=r?.querySelector(".input-controls");f({fileName:t?.parentElement?.querySelector(".file-name"),input:t,dropTarget:n instanceof HTMLElement?n:void 0,pasteTarget:t?.classList.contains("reform:paste-target"),onFile:async o=>{e.handleValue(o instanceof File?o:new File([o],"text.txt",{type:"text/plain"}))}})}function M(e,t){t&&!(t instanceof HTMLInputElement)?(console.warn(t,"is not an element"),t=null):t&&(t.dataset.ignore="true");let r=t?.closest(".reform\\:io"),n=r?.querySelector(".input-content canvas");n&&!(n instanceof HTMLCanvasElement)&&(console.warn(n,"is not a