{"version":3,"sources":["App.jsx","reportWebVitals.js","index.jsx"],"names":["text","history","App","useState","historyText","setHistoryText","commandLine","setCommandLine","downHandler","a","key","pop","txt","reduce","acc","cv","length","push","fetch","method","body","JSON","stringify","cmd","resp","json","obj","useEffect","window","addEventListener","removeEventListener","messagesEndRef","useRef","current","scrollIntoView","behavior","scrollToBottom","className","ref","reportWebVitals","onPerfEntry","Function","then","getCLS","getFID","getFCP","getLCP","getTTFB","ReactDOM","render","StrictMode","document","getElementById"],"mappings":"2PAGMA,EAAO,GAEPC,EAAU,GA0EDC,MAxEf,WACE,MAAsCC,mBAAS,IAA/C,mBAAOC,EAAP,KAAoBC,EAApB,KACA,EAAsCF,mBAAS,IAA/C,mBAAOG,EAAP,KAAoBC,EAApB,KAFa,SAGEC,EAHF,8EAGb,mCAAAC,EAAA,yDACc,eADeC,EAA7B,EAA6BA,KAA7B,gBAEIV,EAAKW,MAFT,0BAIqB,UAARD,GAA2B,SAARA,GAA0B,WAARA,GAA4B,YAARA,GAA6B,WAARA,EAJ3F,0CAOqB,YAARA,GAA6B,cAARA,EAPlC,4CAUqB,cAARA,GAA+B,eAARA,EAVpC,4CAYqB,UAARA,EAZb,oBAcuB,KADbE,EAAMZ,EAAKa,QAAO,SAACC,EAAKC,GAAN,OAAaD,EAAMC,IAAI,KACvCC,OAdZ,0DAiBIf,EAAQgB,KAAKL,GACbZ,EAAKgB,OAAS,EACdX,EAAeJ,EAAQY,QAAO,SAACC,EAAKC,GAAN,gBAAgBD,EAAhB,aAAwBC,EAAxB,QAAgC,KAnBlE,oBAqByBG,MAAM,2CAA4C,CACnEC,OAAQ,OACRC,KAAMC,KAAKC,UAAU,CAAEC,IAAKX,MAvBpC,eAqBYY,EArBZ,iBAyBwBA,EAAKC,OAzB7B,QAyBYC,EAzBZ,OA2BMzB,EAAQgB,KAAKS,EAAI1B,MA3BvB,mDA6BMC,EAAQgB,KAAK,gDA7BnB,QA+BIZ,EAAeJ,EAAQY,QAAO,SAACC,EAAKC,GAAN,gBAAgBD,EAAhB,aAAwBC,EAAxB,QAAgC,KA/BlE,wBAiCIf,EAAKiB,KAAKP,GAjCd,QAmCEH,EAAeP,EAAKa,QAAO,SAACC,EAAKC,GAAN,OAAaD,EAAMC,IAAI,KAnCpD,4DAHa,sBAyCbY,qBAAU,WAER,OADAC,OAAOC,iBAAiB,UAAWrB,GAC5B,WACLoB,OAAOE,oBAAoB,UAAWtB,MAEvC,IAEH,IAAMuB,EAAiBC,iBAAO,MAU9B,OAJAL,qBAAU,YAJa,WAAO,IAAD,EAC3B,UAAAI,EAAeE,eAAf,SAAwBC,eAAe,CAAEC,SAAU,WAInDC,KACC,CAAChC,IAGF,sBAAKiC,UAAU,MAAf,UACE,gCACGjC,EADH,IAGG,IACAE,EACD,sBAAM+B,UAAU,QAAhB,uBAEF,qBAAKC,IAAKP,QC5DDQ,EAdS,SAACC,GACnBA,GAAeA,aAAuBC,UACxC,6BAAqBC,MAAK,YAEnB,IADLC,EACI,EADJA,OAAQC,EACJ,EADIA,OAAQC,EACZ,EADYA,OAAQC,EACpB,EADoBA,OAAQC,EAC5B,EAD4BA,QAEhCJ,EAAOH,GACPI,EAAOJ,GACPK,EAAOL,GACPM,EAAON,GACPO,EAAQP,OCHdQ,IAASC,OACP,cAAC,IAAMC,WAAP,UACE,cAAC,EAAD,MAEFC,SAASC,eAAe,SAM1Bb,M","file":"static/js/main.af0a5442.chunk.js","sourcesContent":["import './App.css';\nimport React, { useEffect, useRef, useState } from 'react';\n\nconst text = [];\n\nconst history = [];\n\nfunction App() {\n const [historyText, setHistoryText] = useState('');\n const [commandLine, setCommandLine] = useState([]);\n async function downHandler({ key }) {\n if (key === 'Backspace') {\n text.pop();\n // eslint-disable-next-line no-empty\n } else if (key === 'Shift' || key === 'Meta' || key === 'Escape' || key === 'Control' || key === 'Option') {\n\n // eslint-disable-next-line no-empty\n } else if (key === 'ArrowUp' || key === 'ArrowDown') {\n\n // eslint-disable-next-line no-empty\n } else if (key === 'ArrowLeft' || key === 'ArrowRight') {\n\n } else if (key === 'Enter') {\n const txt = text.reduce((acc, cv) => acc + cv, '');\n if (txt.length === 0) {\n return;\n }\n history.push(txt);\n text.length = 0;\n setHistoryText(history.reduce((acc, cv) => `${acc} ${cv}\\n`, ''));\n try {\n const resp = await fetch('https://www.staticlightlabs.com/terminal', {\n method: 'POST',\n body: JSON.stringify({ cmd: txt }),\n });\n const obj = await resp.json();\n\n history.push(obj.text);\n } catch (e) {\n history.push('Oh no! There was a communciations _ERRRORRR_');\n }\n setHistoryText(history.reduce((acc, cv) => `${acc} ${cv}\\n`, ''));\n } else {\n text.push(key);\n }\n setCommandLine(text.reduce((acc, cv) => acc + cv, ''));\n }\n\n useEffect(() => {\n window.addEventListener('keydown', downHandler);\n return () => {\n window.removeEventListener('keydown', downHandler);\n };\n }, []);\n\n const messagesEndRef = useRef(null);\n\n const scrollToBottom = () => {\n messagesEndRef.current?.scrollIntoView({ behavior: 'smooth' });\n };\n\n useEffect(() => {\n scrollToBottom();\n }, [historyText]);\n\n return (\n
\n {historyText}\n >\n {' '}\n {commandLine}\n █\n
\n \n